1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,19050,e=>{"use strict";var t=e.i(843476),s=e.i(271645),a=e.i(647163);let n=["bg-rose-500/15 text-rose-700 dark:text-rose-300","bg-amber-500/15 text-amber-700 dark:text-amber-300","bg-emerald-500/15 text-emerald-700 dark:text-emerald-300","bg-sky-500/15 text-sky-700 dark:text-sky-300","bg-violet-500/15 text-violet-700 dark:text-violet-300","bg-fuchsia-500/15 text-fuchsia-700 dark:text-fuchsia-300","bg-indigo-500/15 text-indigo-700 dark:text-indigo-300","bg-teal-500/15 text-teal-700 dark:text-teal-300","bg-pink-500/15 text-pink-700 dark:text-pink-300","bg-lime-500/15 text-lime-700 dark:text-lime-300"],l={xs:"size-4 text-[8px]",sm:"size-5 text-[9px]",md:"size-9 text-[11px]",lg:"size-10 text-xs",xl:"size-14 text-sm",fill:"h-full w-full text-base"};e.s(["PageAvatar",0,function({src:e,name:i,shape:r="round",size:d="md",className:o}){let c=e&&e.length>0?e:null,[u,m]=(0,s.useState)(!c),x=l[d],p="round"===r?"rounded-full":"rounded-md";if(u||!c){let e,s=n[function(e){let t=0;for(let s=0;s<e.length;s++)t=(t<<5)-t+e.charCodeAt(s);return Math.abs(t)}(i)%n.length];return(0,t.jsx)("div",{className:(0,a.cn)("flex shrink-0 items-center justify-center font-semibold leading-none",x,p,s,o),"aria-hidden":!0,children:0===(e=i.trim().split(/\s+/).filter(Boolean)).length?"?":1===e.length?e[0].slice(0,2).toUpperCase():(e[0][0]+e[e.length-1][0]).toUpperCase()})}return(0,t.jsx)("img",{src:c,alt:"",loading:"lazy",className:(0,a.cn)("shrink-0 bg-muted object-cover",x,p,o),onError:()=>m(!0)})}])},946258,e=>{"use strict";function t(e,s="9:16"){let a=e.media;if(!a)return e.cover_image_url?{url:e.cover_image_url,type:"IMAGE"}:null;for(let[e,t]of"main_asset"===s?[[a.hero_video,"VIDEO"],[a.hero,"IMAGE"]]:[[a.hero,"IMAGE"],[a.hero_video,"VIDEO"]])if(e?.url)return{url:e.url,type:t,poster_url:e.poster_url??null};let n=a.gallery?.find(e=>"image"===e.kind);return n?.url?{url:n.url,type:"IMAGE"}:e.cover_image_url?{url:e.cover_image_url,type:"IMAGE"}:null}e.s(["getAssetForEvent",0,t,"getEventImageUrl",0,function(e,s="9:16"){return t(e,s)?.url??null}])},346897,e=>{"use strict";let t=(0,e.i(475254).default)("map-pin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);e.s(["MapPin",0,t],346897)},210407,e=>{"use strict";let t=(0,e.i(475254).default)("music-2",[["circle",{cx:"8",cy:"18",r:"4",key:"1fc0mg"}],["path",{d:"M12 18V2l7 4",key:"g04rme"}]]);e.s(["Music2",0,t],210407)},115057,e=>{"use strict";let t=(0,e.i(475254).default)("arrow-up-right",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);e.s(["ArrowUpRight",0,t],115057)},963032,e=>{"use strict";let t=(0,e.i(475254).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],963032)},394908,e=>{"use strict";let t=(0,e.i(475254).default)("compass",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z",key:"9ktpf1"}]]);e.s(["Compass",0,t],394908)},341240,e=>{"use strict";let t=(0,e.i(475254).default)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]);e.s(["Lightbulb",0,t],341240)},25652,e=>{"use strict";let t=(0,e.i(475254).default)("trending-up",[["path",{d:"M16 7h6v6",key:"box55l"}],["path",{d:"m22 7-8.5 8.5-5-5L2 17",key:"1t1m79"}]]);e.s(["TrendingUp",0,t],25652)},336258,e=>{"use strict";var t=e.i(843476),s=e.i(271645),a=e.i(475254);let n=(0,a.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);var l=e.i(283086);let i=(0,a.default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);var r=e.i(963032),d=e.i(25652),o=e.i(555436),c=e.i(531278),u=e.i(643531),m=e.i(394908);let x=(0,a.default)("at-sign",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]]);var p=e.i(217923),h=e.i(115057),b=e.i(857844),g=e.i(43181),y=e.i(647163);async function f(e,t,s){let a=await fetch("/api/assistant/ask",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),signal:s});if(!a.ok||!a.body){let e="The assistant could not answer. Try again.";try{let t=await a.json();t?.error&&(e=t.error)}catch{}t({type:"error",message:e});return}let n=a.body.getReader(),l=new TextDecoder,i="",r=e=>{let s=e.split("\n").filter(e=>e.startsWith("data:")).map(e=>e.slice(5).trimStart());if(0===s.length)return;let a=s.join("\n");try{t(JSON.parse(a))}catch{}};for(;;){let e,{done:t,value:s}=await n.read();if(t)break;for(i+=l.decode(s,{stream:!0});-1!==(e=i.indexOf("\n\n"));
1)r(i.slice(0,e)),i=i.slice(e+2)}i.trim()&&r(i)}var v=e.i(522016),k=e.i(346897),j=e.i(246514),N=e.i(607486),w=e.i(931091);let _=(0,a.default)("repeat",[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]]);var M=e.i(19050),z=e.i(946258);function $({date:e}){return(0,t.jsxs)("div",{className:"flex w-12 shrink-0 flex-col items-center justify-center rounded-lg border border-divider bg-shell py-1",children:[(0,t.jsx)("span",{className:"text-[10px] font-semibold uppercase text-ink-muted",children:e.toLocaleDateString(void 0,{month:"short"})}),(0,t.jsx)("span",{className:"text-lg font-bold leading-none text-ink",children:e.getDate()})]})}function C({event:e}){let s=function(e){if(!e)return null;let t=new Date(/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00`:e);return Number.isNaN(t.getTime())?null:t}(e.date??e.starts_at),a=(0,z.getEventImageUrl)({media:e.media??null,cover_image_url:null},"1:1"),n=e.slug?`/events/${e.slug}`:null,l=(e.series_match_count??1)>1,i=s?s.toLocaleDateString(void 0,{weekday:"short"}):null,r=(0,t.jsxs)("div",{className:"flex items-center gap-3 rounded-xl border border-divider bg-card p-3 transition-all hover:-translate-y-px hover:border-ink/20",children:[s?(0,t.jsx)($,{date:s}):null,(0,t.jsx)(M.PageAvatar,{src:a,name:e.name,size:"md",shape:"square",className:"shrink-0"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("span",{className:"block truncate font-medium text-ink",children:e.name}),(0,t.jsxs)("span",{className:"flex items-center gap-1 truncate text-xs text-ink-muted",children:[(0,t.jsx)(k.MapPin,{className:"size-3 shrink-0"}),(0,t.jsxs)("span",{className:"truncate",children:[i?(0,t.jsxs)("span",{className:"font-semibold text-ink",children:[i," · "]}):null,[e.venue_name,e.city].filter(Boolean).join(" · ")||"Venue TBA"]})]})]}),l?(0,t.jsxs)("span",{className:"ml-1 inline-flex shrink-0 items-center gap-1 rounded-full bg-shell px-2 py-0.5 text-[10px] font-medium text-ink-muted",children:[(0,t.jsx)(_,{className:"size-2.5"})," Series"]}):null]});return n?(0,t.jsx)(v.default,{href:n,className:"block",children:r}):(0,t.jsx)("div",{children:r})}let S={artist:{cta:"View artist",shape:"round",Icon:j.Mic2},venue:{cta:"View venue",shape:"square",Icon:N.Building2},organizer:{cta:"View organizer",shape:"round",Icon:w.Megaphone}};function T({page:e}){let s=S[e.type]??S.venue,a=function(e,t){if(!t)return null;switch(e){case"artist":return`/artists/${t}`;case"venue":return`/venues/${t}`;case"organizer":return`/organizers/${t}`;default:return null}}(e.type,e.slug),n=(0,t.jsxs)("div",{className:"flex items-center gap-3 rounded-xl border border-divider bg-card p-3 transition-all hover:-translate-y-px hover:border-ink/20",children:[(0,t.jsx)(M.PageAvatar,{src:e.image_url,name:e.name,size:"md",shape:s.shape,className:"shrink-0"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("span",{className:"block truncate font-medium text-ink",children:e.name}),(0,t.jsxs)("span",{className:"flex items-center gap-1 truncate text-xs text-ink-muted",children:[(0,t.jsx)(s.Icon,{className:"size-3 shrink-0"}
1),(0,t.jsx)("span",{className:"truncate",children:e.subtitle??[e.type,e.city].filter(Boolean).join(" · ")})]})]}),(0,t.jsx)("span",{className:(0,y.cn)("ml-1 shrink-0 rounded-full bg-shell px-2 py-0.5 text-[10px] font-semibold uppercase text-ink-muted"),children:e.type})]});return a?(0,t.jsx)(v.default,{href:a,className:"block",children:n}):(0,t.jsx)("div",{children:n})}function A({label:e}){return(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-ink-muted",children:[(0,t.jsxs)("span",{className:"inline-flex gap-1",children:[(0,t.jsx)("span",{className:"size-1.5 animate-bounce rounded-full bg-ink-muted [animation-delay:-0.3s]"}),(0,t.jsx)("span",{className:"size-1.5 animate-bounce rounded-full bg-ink-muted [animation-delay:-0.15s]"}),(0,t.jsx)("span",{className:"size-1.5 animate-bounce rounded-full bg-ink-muted"})]}),(0,t.jsx)("span",{children:e})]})}let I=(0,a.default)("calendar-range",[["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M17 14h-6",key:"bkmgh3"}],["path",{d:"M13 18H7",key:"bb0bb7"}],["path",{d:"M7 14h.01",key:"1qa3f1"}],["path",{d:"M17 18h.01",key:"1bdyru"}]]);var E=e.i(210407),P=e.i(341240),D=e.i(463059);let U=(0,a.default)("git-compare-arrows",[["circle",{cx:"5",cy:"6",r:"3",key:"1qnov2"}],["path",{d:"M12 6h5a2 2 0 0 1 2 2v7",key:"1yj91y"}],["path",{d:"m15 9-3-3 3-3",key:"1lwv8l"}],["circle",{cx:"19",cy:"18",r:"3",key:"1qljk2"}],["path",{d:"M12 18H7a2 2 0 0 1-2-2V9",key:"16sdep"}],["path",{d:"m9 15 3 3-3 3",key:"1m3kbl"}]]),W=e=>e?e[0].toUpperCase()+e.slice(1):e,B=[1,2,3,4,5,6,0],O=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];function q(e){let t=new Date(/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00`:e);return Number.isNaN(t.getTime())?e:t.toLocaleDateString(void 0,{day:"numeric",month:"short"})}function L({label:e,value:s,max:a,muted:n,onClick:l,disabled:i}){let r=a>0?Math.max(2,Math.round(s/a*100)):0,d=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"w-24 shrink-0 truncate text-xs text-ink-muted",title:e,children:e}),(0,t.jsx)("div",{className:"h-2 flex-1 overflow-hidden rounded-full bg-shell",children:(0,t.jsx)("div",{className:(0,y.cn)("h-full rounded-full transition-[width] duration-500",n?"bg-ink/25":"bg-primary"),style:{width:`${r}%`}})}),(0,t.jsx)("span",{className:"w-8 shrink-0 text-right text-xs font-medium tabular-nums text-ink",children:s})]});return l?(0,t.jsxs)("button",{type:"button",onClick:l,disabled:i,className:"group/bar -mx-1.5 flex w-full items-center gap-2 rounded-lg px-1.5 py-1 text-left transition-colors hover:bg-shell disabled:pointer-events-none disabled:opacity-60",children:[d,(0,t.jsx)(D.ChevronRight,{className:"size-3 shrink-0 text-ink-muted opacity-0 transition-opacity group-hover/bar:opacity-100"})]}):(0,t.jsx)("div",{className:"flex items-center gap-2",children:d})}function V({icon:e,title:s,children:a}){return(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"mb-1.5 flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wide text-ink-muted",children:[(0,t.jsx)(e,{className:"size-3.5"}),s]}),(0,t.jsx)("div",{className:"space-y-1.5",children:a})]})}function R({stats:e,onAsk:s,disabled:a}){let n=B.map(t=>e.by_weekday.find(e=>e.dow===t)).filter(e=>!!e),l=Math.max(1,...n.map(e=>e.events)),i=Math.min(...n.map(e=>e.events)),r=e.by_genre.slice(0,6),o=Math.max(1,...r.map(e=>e.events)),c=e.by_venue.slice(0,6),u=Math.max(1,...c.map(e=>e.events)),m=e.genre_focus,x=m?.genre??e.by_genre[0]?.genre??"nightlife",p=e.city,h=l!==i?n.find(e=>e.events===i):void 0;return(0,t.jsxs)("div",{className:"space-y-4 rounded-2xl border border-divider bg-card p-4",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-sm font-semibold text-ink",children:[(0,t.jsx)(d.TrendingUp,{className:"size-4 text-primary"}),p," scene"]}),(0,t.jsxs)("div",{className:"mt-0.5 flex items-center gap-1 text-xs text-ink-muted",children:[(0,t.jsx)(I,{className:"size-3"}),q(e.window.from)," â ",q(e.window.to)," ·"," ",e.total_events.toLocaleStr
1ing()," events"]})]}),m?(0,t.jsxs)("div",{className:"shrink-0 rounded-xl bg-primary/10 px-3 py-1.5 text-right",children:[(0,t.jsxs)("div",{className:"text-xl font-bold leading-none text-primary",children:[Math.round(100*m.share),"%"]}),(0,t.jsx)("div",{className:"mt-0.5 text-[10px] uppercase tracking-wide text-ink-muted",children:m.genre})]}):null]}),h?(0,t.jsxs)("button",{type:"button",disabled:a||!s,onClick:()=>s?.(`What ${x} events are on ${O[h.dow]}s in ${p}?`),className:"flex w-full items-center gap-2.5 rounded-xl bg-lime/10 px-3 py-2.5 text-left transition-colors hover:bg-lime/15 disabled:pointer-events-none",children:[(0,t.jsx)(P.Lightbulb,{className:"size-4 shrink-0 text-primary"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 text-xs leading-snug text-ink",children:[(0,t.jsxs)("span",{className:"font-semibold",children:[O[h.dow],"s"]})," are the quietest night â just ",h.events," ",x," event",1===h.events?"":"s","."," ",s?(0,t.jsx)("span",{className:"font-medium text-primary",children:"See what's on â"}):null]})]}):null,n.length?(0,t.jsx)(V,{icon:I,title:"By night",children:n.map(e=>(0,t.jsx)(L,{label:e.label,value:e.events,max:l,muted:e.events===i&&l!==i,disabled:a,onClick:s?()=>s(`What ${x} events are on ${O[e.dow]}s in ${p}?`):void 0},e.dow))}):null,r.length?(0,t.jsx)(V,{icon:E.Music2,title:"Top genres",children:r.map(e=>(0,t.jsx)(L,{label:e.genre,value:e.events,max:o,disabled:a,onClick:s?()=>s(`How saturated is ${e.genre} in ${p}?`):void 0},e.slug))}):null,c.length?(0,t.jsx)(V,{icon:k.MapPin,title:"Busiest venues",children:c.map(e=>(0,t.jsx)(L,{label:e.venue,value:e.events,max:u,disabled:a,onClick:s?()=>s(`Tell me about ${e.venue} in ${p}`):void 0},e.venue))}):null]})}function H({panels:e,onAsk:s,disabled:a}){let n=e.map(e=>e.city),l=new Set(n.map(e=>e.toLowerCase())).size===n.length,i=e.map(e=>e.genre_focus?.genre??null),r=i.every(Boolean),d=e=>l?n[e]:W(i[e]??n[e]),o=l?n.join(" vs "):r?`${i.map(e=>W(e)).join(" vs ")} \xb7 ${n[0]}`:`${n[0]} scene`,c=e=>e?`${e.label.slice(0,3)} \xb7 ${e.events}`:"â",u=e=>{let t=Math.max(...e);return 1===e.filter(e=>e===t).length?e.indexOf(t):null},m=[{label:"Events",values:e.map(e=>e.total_events.toLocaleString()),lead:u(e.map(e=>e.total_events))},...r?[{label:"Share",values:e.map(e=>`${Math.round((e.genre_focus.share??0)*100)}%`),lead:u(e.map(e=>e.genre_focus.share??0))}]:[],{label:"Peak night",values:e.map(e=>c(function(e){if(!e.by_weekday.length)return null;let t=e.by_weekday.reduce((e,t)=>t.events>e.events?t:e);return{label:O[t.dow],events:t.events}}(e))),lead:null},{label:"Open night",values:e.map(e=>c(function(e){if(!e.by_weekday.length)return null;let t=Math.max(...e.by_weekday.map(e=>e.events)),s=Math.min(...e.by_weekday.map(e=>e.events));if(t===s)return null;let a=e.by_weekday.find(e=>e.events===s);return{label:O[a.dow],events:a.events}}(e))),lead:null},{label:"Top genre",values:e.map(e=>e.by_genre[0]?.genre??"â"),lead:null}],x=`7rem repeat(${e.length}, minmax(0, 1fr))`;return(0,t.jsxs)("div",{className:"space-y-3 rounded-2xl border border-divider bg-card p-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-sm font-semibold text-ink",children:[(0,t.jsx)(U,{className:"size-4 text-primary"}),o]}),(0,t.jsxs)("div",{className:"grid gap-x-2 gap-y-1.5 text-xs",style:{gridTemplateColumns:x},children:[(0,t.jsx)("div",{}),e.map((e,l)=>(0,t.jsx)("button",{type:"button",disabled:a||!s,onClick:()=>s?.(i[l]?`How saturated is ${i[l]} in ${n[l]}?`:`What dominates the scene in ${n[l]}?`),className:"truncate rounded-md px-1.5 py-1 text-center font-semibold text-ink transition-colors enabled:hover:bg-shell disabled:cursor-default",title:d(l),children:d(l)},l)),m.map(e=>(0,t.jsxs)("div",{className:"contents",children:[(0,t.jsx)("div",{className:"flex items-center text-ink-muted",children:e.label}),e.values.map((s,a)=>(0,t.jsx)("div",{className:(0,y.cn)("rounded-md px-1.5 py-1 text-center tabular-nums",e.lead===a?"bg-primary/10 font-bold text-primary":"text-ink"),children:s},a))]},e.label))]})]})}let F={consumer:["What's good techno in Hamburg this weekend?","Melodic house with a sunset view in Ibiza","Find me underground clubs like Berghain","Rooftop parties in Miami this Saturday","Any Keinemusik shows coming up?"],pro:["How saturated is house in Ibiza this summer?","Compare techno demand in Ibiza vs Mykonos","Which weeknights are open for techno in Hamburg?","Who owns the nightlife calendar in Miami?","Where is Keinemusik playing, and how busy are those markets?"]}
1,K={consumer:{title:"Ask PartyMate",blurb:"Describe the night you want â a vibe, a city, an artist â and I'll find the events, venues and people that fit."},pro:{title:"PartyMate Pro",blurb:"Market intelligence for venues & promoters â scene saturation, demand gaps, who owns the calendar, and the best open nights."}};function G({persona:e,onChange:s,disabled:a}){let n=[{value:"consumer",label:"Discover",Icon:l.Sparkles},{value:"pro",label:"Pro",Icon:d.TrendingUp}];return(0,t.jsx)("div",{role:"tablist","aria-label":"Assistant mode",className:"inline-flex items-center gap-1 rounded-full border border-divider bg-card p-1",children:n.map(({value:n,label:l,Icon:i})=>{let r=e===n;return(0,t.jsxs)("button",{role:"tab",type:"button","aria-selected":r,disabled:a,onClick:()=>s(n),className:(0,y.cn)("inline-flex items-center gap-1.5 rounded-full px-3.5 py-1.5 text-xs font-medium transition-colors disabled:opacity-50",r?"bg-lime text-lime-text":"text-ink-muted hover:text-ink"),children:[(0,t.jsx)(i,{className:"size-3.5"}),l]},n)})})}function J({persona:e,onPick:s,disabled:a}){let n=K[e];return(0,t.jsxs)("div",{className:"flex flex-col items-center pt-10 text-center",children:[(0,t.jsx)("div",{className:"grid size-14 place-items-center rounded-2xl bg-lime/15 text-lime-text",children:"pro"===e?(0,t.jsx)(d.TrendingUp,{className:"size-7"}):(0,t.jsx)(l.Sparkles,{className:"size-7"})}),(0,t.jsx)("h1",{className:"mt-4 text-2xl font-bold tracking-tight text-ink",children:n.title}),(0,t.jsx)("p",{className:"mt-1.5 max-w-sm text-sm text-ink-muted",children:n.blurb}),(0,t.jsx)("div",{className:"mt-8 grid w-full max-w-md gap-2",children:F[e].map(e=>(0,t.jsx)("button",{type:"button",disabled:a,onClick:()=>s(e),className:"rounded-xl border border-divider bg-card px-4 py-3 text-left text-sm text-ink transition-all hover:-translate-y-px hover:border-ink/20 disabled:opacity-50",children:e},e))})]})}function Q({turn:e,onAsk:s,disabled:a,showFollowUps:n}){let l=n?function(e){let t=[...e].reverse(),s=t.find(e=>"stats"===e.type),a=t.find(e=>"events"===e.type),n=t.find(e=>"pages"===e.type),l=[];if(s){let e=s.data,t=e.genre_focus?.genre??e.by_genre[0]?.genre??"events",a=Math.max(...e.by_weekday.map(e=>e.events)),n=Math.min(...e.by_weekday.map(e=>e.events)),i=a!==n?e.by_weekday.find(e=>e.events===n):void 0;i&&l.push({label:`Open ${X[i.dow]}s`,prompt:`What ${t} events are on ${X[i.dow]}s in ${e.city}?`});let r=e.by_venue[0];r&&l.push({label:`Inside ${r.venue}`,prompt:`Tell me about ${r.venue} in ${e.city}`}),l.push({label:"Compare a city",prompt:`Compare ${t} demand in ${e.city} vs Mykonos`})}if(a&&a.data.events.length&&l.push({label:"More like these",prompt:"Show me more events like these"}),n&&n.data.pages.length){let e=n.data.pages[0];"artist"===e.type?l.push({label:`Where ${e.name} plays`,prompt:`Where is ${e.name} playing?`}):l.push({label:`Events at ${e.name}`,prompt:`What's coming up at ${e.name}?`})}let i=new Set;return l.filter(e=>!i.has(e.prompt)&&i.add(e.prompt)).slice(0,4)}(e.blocks):[],i=e.blocks.filter(e=>"stats"===e.type).map(e=>e.data),r=i.length>=2,d=r?e.blocks.findIndex(e=>"stats"===e.type):-1;return(0,t.jsxs)("div",{className:"flex gap-3",children:[(0,t.jsx)("div",{className:"grid size-7 shrink-0 place-items-center rounded-lg bg-lime/15 text-lime-text",children:(0,t.jsx)(g.PartymateIcon,{className:"size-4"})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 space-y-3 pt-0.5",children:[e.blocks.map((e,n)=>{let l="animate-in fade-in slide-in-from-bottom-2 duration-300";return"stats"===e.type&&r?n!==d?null:(0,t.jsx)("div",{className:l,children:(0,t.jsx)(H,{panels:i,onAsk:s,disabled:a})},n):(0,t.jsx)("div",{className:l,children:(0,t.jsx)(Z,{block:e,onAsk:s,disabled:a})},n)}),e.status?(0,t.jsx)(A,{label:e.status}):null,l.length?(0,t.jsx)(Y,{items:l,onAsk:s,disabled:a}):null]})]})}let X=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];function Y({items:e,onAsk:s,disabled:a}){return(0,t.jsx)("div",{className:"flex flex-wrap gap-2 pt-1",children:e.map(e=>(0,t.jsxs)("button",{type:"button",disabled:a,onClick:()=>s(e.prompt),className:"inline-flex items-center gap-1 rounded-full border border-divider bg-card px-3 py-1.5 text-xs font-medium text-ink transition-all hover:-translate-y-
1px hover:border-ink/20 hover:bg-shell disabled:pointer-events-none disabled:opacity-50",children:[e.label,(0,t.jsx)(h.ArrowUpRight,{className:"size-3 text-ink-muted"})]},e.prompt))})}function Z({block:e,onAsk:s,disabled:a}){switch(e.type){case"text":return(0,t.jsx)(b.C,{className:(0,y.cn)("text-[15px] leading-relaxed text-ink","[&_p]:my-0 [&_ul]:my-1 [&_ol]:my-1 [&_li]:my-0.5","[&_h1]:mt-1 [&_h2]:mt-1 [&_h3]:mt-1","[&_a]:font-medium [&_a]:text-primary [&_a]:underline [&_a]:underline-offset-2","[&_code]:rounded [&_code]:bg-shell [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-[13px]"),children:e.text});case"events":return e.data.events.length?(0,t.jsx)("div",{className:"space-y-2",children:e.data.events.map(e=>(0,t.jsx)(C,{event:e},e.id))}):null;case"pages":return e.data.pages.length?(0,t.jsx)("div",{className:"space-y-2",children:e.data.pages.map(e=>(0,t.jsx)(T,{page:e},`${e.type}-${e.id}`))}):null;case"stats":return(0,t.jsx)(R,{stats:e.data,onAsk:s,disabled:a});case"tool":return(0,t.jsx)(et,{block:e});case"error":return(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-xl border border-divider bg-shell px-3 py-2 text-sm text-ink-muted",children:[(0,t.jsx)(r.AlertCircle,{className:"size-4 shrink-0"}),e.message]});default:return null}}let ee={search_events:o.Search,lookup_page:x,find_pages:m.Compass,scene_stats:p.BarChart3};function et({block:e}){let a=ee[e.name]??l.Sparkles,[n,i]=s.useState(!1);s.useEffect(()=>{let e=setTimeout(()=>i(!0),550);return()=>clearTimeout(e)},[]);let r=!(n&&"done"===e.phase);return(0,t.jsxs)("div",{className:(0,y.cn)("flex items-center gap-2 rounded-xl border border-divider bg-card px-3 py-2 text-xs transition-colors",r&&"border-lime/40"),children:[(0,t.jsx)(a,{className:"size-3.5 shrink-0 text-ink-muted"}),(0,t.jsx)("span",{className:"shrink-0 font-medium text-ink",children:e.label}),e.detail?(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-ink-muted",children:e.detail}):(0,t.jsx)("span",{className:"flex-1"}),r?(0,t.jsx)(c.Loader2,{className:"size-3.5 shrink-0 animate-spin text-ink-muted"}):(0,t.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1 rounded-full bg-shell px-2 py-0.5 font-medium text-ink",children:[(0,t.jsx)(u.Check,{className:"size-3 text-primary"}),e.summary??"done"]})]})}e.s(["AssistantChat",0,function({persona:e="consumer"}){let[a,l]=s.useState(e),[r,d]=s.useState([]),[o,c]=s.useState(""),[u,m]=s.useState(!1),x=s.useRef(null),p=s.useRef(null),h=s.useCallback(e=>{e!==a&&(x.current?.abort(),x.current=null,m(!1),d([]),c(""),l(e))},[a]);s.useEffect(()=>{p.current?.scrollIntoView({behavior:"smooth",block:"end"})},[r]),s.useEffect(()=>()=>x.current?.abort(),[]);let b=s.useCallback(async e=>{let t=e.trim();if(!t||u)return;let s=[];for(let e of r){let t="user"===e.role?e.text:e.blocks.filter(e=>"text"===e.type).map(e=>e.text).join("\n\n").trim();t&&s.push({role:e.role,text:t})}c(""),m(!0),d(e=>[...e,{role:"user",text:t},{role:"assistant",blocks:[],status:"Thinkingâ¦"}]);let n=new AbortController;x.current=n;let l=e=>d(t=>{let s=[...t],a=s[s.length-1];if(a?.role==="assistant"){let t={...a,blocks:[...a.blocks]};e(t),s[s.length-1]=t}return s});try{await f({message:t,history:s,persona:a},e=>{switch(e.type){case"status":l(t=>{t.status=e.label});break;case"tool":l(t=>{let s=t.blocks.findIndex(t=>"tool"===t.type&&t.id===e.id);s>=0?t.blocks[s]=e:t.blocks.push(e),t.status=null});break;case"text_delta":l(t=>{let s=t.blocks[t.blocks.length-1];s?.type==="text"?t.blocks[t.blocks.length-1]={type:"text",text:s.text+e.text}:t.blocks.push({type:"text",text:e.text}),t.status=null});break;case"text":case"events":case"pages":case"stats":case"error":l(t=>{t.blocks.push(e),t.status=null});break;case"done":l(e=>{e.status=null})}},n.signal)}catch(e){e instanceof DOMException&&"AbortError"===e.name||l(e=>{e.status=null,e.blocks.push({type:"error",message:"Something went wrong. Try again."})})}finally{l(e=>{e.status=null}),m(!1),x.current=null}},[u,r,a]),g=s.useCallback(e=>void b(e),[b]),v=0===r.length;return(0,t.jsxs)("div",{className:"mx-auto flex h-full min-h-0 w-full max-w-2xl flex-col px-4",children:[(0,t.jsx)("div",{className:"flex justify-center pt-4",children:(0,t.jsx)(G,{persona:a,onChange:h,disabled:u})}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto pb-4 pt-6",children:v?(0,t.jsx)(J,{persona:a,onPick:e=>void b(e),disabled:u}):(0,t.jsxs)("div",{className:"space-y-6",children:[r.map((e,s)=>"user"===e.role?(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)("div",{className:"max-w-[85%] rounded-2xl rounded-br-sm bg-lime px-4 py-2.5 text-lime-text",children:e.text})},s):(0,t.jsx)(Q,{turn:e,onAsk:g,disabled:u,showFollowUps:s===r.length-1&&!u},s)),(0,t.jsx)("div",{ref:p})]})}),(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),b(o)},className:"sticky bottom-0 pb-4 pt-2",children:[(0,t.jsxs)("div",{className:"flex items-end gap-2 rounded-2xl border border-divider bg-card p-2 focus-within:border-ink/30",children:[(0,t.jsx)("textarea",{value:o,onChange:e=>c(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),b(o))},rows:1,placeholder:"Ask about events, venues, artistsâ¦",className:"max-h-32 flex-1 resize-none bg-transparent px-2 py-1.5 text-ink outline-none placeholder:text-ink-muted"}),u?(0,t.jsx)("button",{type:"button",onClick:()=>{x.current?.abort(),m(!1)},"aria-label":"Stop",className:"grid size-9 shrink-0 place-items-center rounded-xl bg-shell text-ink transition-colors hover:bg-shell/70",children:(0,t.jsx)(i,{className:"size-4 fill-current"})}):(0,t.jsx)("button",{type:"submit",disabled:!o.trim(),"aria-label":"Send",className:(0,y.cn)("grid size-9 shrink-0 place-items-center rounded-xl transition-colors",o.trim()?"bg-lime text-lime-text":"bg-shell text-ink-muted"),children:(0,t.jsx)(n,{className:"size-5"})})]}),(0,t.jsx)("p",{className:"mt-1.5 text-center text-[11px] text-ink-muted",children:"PartyMate can make mistakes. Check event details before you go."})]})]})}],336258)},769781,e=>{e.v(t=>Promise.all(["static/chunks/06huuay3x3z07.js"].map(t=>e.l(t))).then(()=>t(347442)))},321591,e=>{e.v(t=>Promise.all(["static/chunks/01.9x7hzkgv7j.js"].map(t=>e.l(t))).then(()=>t(236863)))}]);
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.