PageSourceSearch

https://stevehofstetter.com/assets/tour-D-O9XPYJ.js

js stevehofstetter.com collected 2026-09-24 21:51:25 UTC 18,458 bytes, 1 lines download raw bytes

1import{c as ee,d as ue,r as n,e as xe,f as V,h as pe,N as f,j as e,M as W,B as o,X as fe,i as he,L as Y,t as ge,S as be,s as ye,k as je,l as Ne,m as ke,n as we,o as B}from"./index-DxRcEN3x.js";import{S as ve,a as Se,b as Ce,c as $e,d as v,e as K,f as z}from"./select-Bj6FR6Qf.js";import{S as Ae}from"./switch-Vn6fbdbs.js";import{L as Le}from"./label-D4bqDhUq.js";import{S as Te}from"./skeleton-heu26FCw.js";import{A as Fe,s as Ue,R as Me}from"./regions-DRcpbKM_.js";import{S as De}from"./seo-Df9faHNa.js";import{L as Ee}from"./loader-circle-B-72ul8t.js";import{C as Re}from"./calendar-days-DMkwgrmk.js";import{F as _e}from"./flame-D6_jPRUk.js";import{T as H}from"./triangle-alert-BEH8K2gA.js";import{C as Pe}from"./clock-CPWB6Fwa.js";import{C as Ge}from"./chevron-down-BKPpY-0-.js";import{S as Ie}from"./smile-CNW4Dbfe.js";import{S as Oe}from"./sparkles-DO03JbLb.js";import{M as qe}from"./message-square-O15XpiN2.js";import{G as Ve}from"./globe-DMYmCzui.js";import"./index-BMSYGwVP.js";import"./check-DvO99pr4.js";import"./index-CNo4jlat.js";import"./chevron-right-B5WBM43T.js";const We=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],Q=ee("funnel",We);const Ye=[["line",{x1:"2",x2:"5",y1:"12",y2:"12",key:"bvdh0s"}],["line",{x1:"19",x2:"22",y1:"12",y2:"12",key:"1tbv5k"}],["line",{x1:"12",x2:"12",y1:"2",y2:"5",key:"11lu5j"}],["line",{x1:"12",x2:"12",y1:"19",y2:"22",key:"x3vr5v"}],["circle",{cx:"12",cy:"12",r:"7",key:"fim9np"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],X=ee("locate-fixed",Ye);function Be(r){const l=new Date(r),d=m=>new Intl.DateTimeFormat("en-US",{timeZone:"America/New_York",...m}).format(l);return{month:d({month:"short"}).toUpperCase(),day:d({day:"2-digit"}),year:d({year:"numeric"}),time:d({hour:"numeric",minute:"2-digit"})}}const Ke="/".replace(/\/$/,"");function Z(r){return r?r.startsWith("/objects/")?`${Ke}/api/storage${r}`:r:null}function ze(r){const l=[];return r.instagram&&l.push({href:r.instagram,label:"Instagram",icon:je}),r.tiktok&&l.push({href:r.tiktok,label:"TikTok",icon:Ne}),r.youtube&&l.push({href:r.youtube,label:"YouTube",icon:ke}),r.facebook&&l.push({href:r.facebook,label:"Facebook",icon:we}),r.website&&l.push({href:r.website,label:"Website",icon:Ve}),l}const J=new Set(Me.filter(r=>r.kind==="US State").map(r=>r.code));function ht(){const r=ue(),[l,d]=n.useState("all"),[m,M]=n.useState(!1),[u,te]=n.useState(null),[j,N]=n.useState("idle"),[S,C]=n.useState(!1),[D,$]=n.useState(null),[c,A]=n.useState(null),se=()=>{if(!("geolocation"in navigator)){N("unavailable");return}N("loading"),navigator.geolocation.getCurrentPosition(t=>{const s={lat:t.coords.latitude,lng:t.coords.longitude};te(s),ye(s),N("idle"),C(!0)},()=>N("denied"),{enableHighAccuracy:!1,timeout:1e4,maximumAge:6e5})},{data:k=[],isLoading:E}=xe({past:m});n.useEffect(()=>{if(E||l==="all"||l==="us")return;new Set(k.map(s=>s.region)).has(l)||d("all")},[k,E,l]);const L=k.filter(t=>J.has(t.region)).sort((t,s)=>t.regionLabel.localeCompare(s.regionLabel)),R=k.filter(t=>!J.has(t.region)).sort((t,s)=>t.regionLabel.localeCompare(s.regionLabel)),re=L.reduce((t,s)=>t+s.count,0),{data:h=[],isLoading:ae}=V({region:l!=="all"?l:void 0,past:m},{query:{queryKey:B({region:l!=="all"?l:void 0,past:m})}}
1),_={region:l!=="all"?l:void 0,past:m,actId:c??void 0},{data:T=[],isLoading:le}=V(_,{query:{enabled:c!=null,queryKey:B(_)}}),P=c!=null?T:h,F=n.useMemo(()=>P.map(t=>{const s=u&&t.latitude!=null&&t.longitude!=null?pe(u.lat,u.lng,t.latitude,t.longitude):null;return{...t,distance:s}}),[P,u]),U=F.filter(t=>t.distance!=null&&t.distance<=f).length,G=u&&S?F.filter(t=>t.distance!=null&&t.distance<=f):F,I=c!=null?G.filter(t=>t.supportActs?.some(s=>s.id===c)):G,ie=n.useMemo(()=>{if(c==null)return null;const t=[...h,...T].flatMap(s=>s.supportActs??[]).find(s=>s.id===c);return t?`${t.firstName} ${t.lastName}`.trim():null},[h,T,c]),ne=n.useMemo(()=>{const t=new Map;for(const s of h)for(const i of s.supportActs??[])t.set(i.id,(t.get(i.id)??0)+1);return t},[h]);return e.jsxs("div",{className:"w-full flex flex-col pt-12 pb-24",children:[e.jsx(De,{path:"/tour"}),e.jsxs("div",{className:"container mx-auto px-4 max-w-5xl",children:[e.jsxs("div",{className:"text-center mb-16 space-y-6",children:[e.jsxs("h1",{className:"font-display text-5xl md:text-7xl font-black uppercase tracking-tighter",children:["Tour ",e.jsx("span",{className:"text-primary",children:"Dates"})]}),e.jsxs("p",{className:"text-xl text-muted-foreground font-medium max-w-2xl mx-auto",children:["Find out when Steve is coming to your city.",e.jsx("br",{}),"Get tickets before they sell out."]})]}),e.jsxs("div",{className:"bg-card border rounded-2xl p-6 mb-12 flex flex-col md:flex-row gap-6 items-center justify-between shadow-sm",children:[e.jsxs("div",{className:"flex flex-col sm:flex-row items-stretch sm:items-center gap-4 w-full md:w-auto",children:[e.jsxs("div",{className:"flex items-center gap-4 w-full sm:w-auto",children:[e.jsx(W,{className:"text-primary h-5 w-5 shrink-0"}),e.jsxs(ve,{value:l,onValueChange:d,children:[e.jsx(Se,{className:"w-full sm:w-[260px] font-semibold border-primary/20 hover:border-primary/50 transition-colors",children:e.jsx(Ce,{placeholder:"All Locations"})}),e.jsxs($e,{className:"max-h-[320px]",children:[e.jsx(v,{value:"all",className:"font-semibold",children:"All Locations"}),L.length>0&&e.jsxs(K,{children:[e.jsx(z,{children:"United States"}),e.jsxs(v,{value:"us",className:"font-semibold",children:["All United States (",re,")"]}),L.map(t=>e.jsxs(v,{value:t.region,className:"font-semibold",children:[t.regionLabel," (",t.count,")"]},t.region))]}),R.length>0&&e.jsxs(K,{children:[e.jsx(z,{children:"International"}),R.map(t=>e.jsxs(v,{value:t.region,className:"font-semibold",children:[t.regionLabel," (",t.count,")"]},t.region))]})]})]})]}),e.jsxs(o,{variant:u?"default":"outline",onClick:se,disabled:j==="loading",className:"w-full sm:w-auto rounded-md font-bold uppercase tracking-widest text-xs h-10 gap-2",children:[j==="loading"?e.jsx(Ee,{className:"h-4 w-4 animate-spin"}):e.jsx(X,{className:"h-4 w-4"}),"Find Shows Near Me"]})]}),e.jsxs("div",{className:"flex items-center gap-3 w-full md:w-auto justify-end border-t md:border-t-0 md:border-l pt-6 md:pt-0 md:pl-6",children:[e.jsx(Le,{htmlFor:"past-shows",className:"font-bold uppercase tracking-widest text-xs cursor-pointer",children:"Show Past Dates"}),e.jsx(Ae,{id:"past-shows",checked:m,onCheckedChange:M,className:"data-[state=checked]:bg-primary"})]})]}),j==="denied"&&e.jsx("div",{className:"mb-6 rounded-xl border border-destructive/30 bg-destructive/5 px-5 py-4 text-sm font-medium text-destructive",children:"Location access was blocked. Enable location permissions in your browser to find shows near you."}),j==="unavailable"&&e.jsx("div",{className:"mb-6 rounded-xl border border-destructive/30 bg-destructive/5 px-5 py-4 text-sm font-medium text-destructive",children:"Your browser does not support location detection."}),u&&e.jsxs("div",{className:"mb-6 flex flex-col sm:flex-row items-center justify-between gap-3 rounded-xl border border-primary/30 bg-primary/5 px-5 py-4",children:[e.jsx("p",{className:"text-sm font-semibold text-center sm:text-left",children:U>0?`${U} ${U===1?"show":"shows"} within ${f} miles of you.`:`No shows within ${f} miles of you${m?"":" yet"}.`}),e.jsx(o,{variant:"ghost",onClick:()=>C(t=>
1!t),className:"rounded-full font-bold uppercase tracking-widest text-xs h-9 text-primary hover:bg-primary/10 hover:text-primary",children:S?"Show All Dates":"Show Only Nearby"})]}),c!=null&&e.jsxs("div",{className:"mb-6 flex flex-col sm:flex-row items-center justify-between gap-3 rounded-xl border border-primary/30 bg-primary/5 px-5 py-4",children:[e.jsxs("p",{className:"flex items-center gap-2 text-sm font-semibold text-center sm:text-left",children:[e.jsx(Q,{className:"h-4 w-4 text-primary shrink-0"}),"Showing dates with ",ie??"this support act","."]}),e.jsxs(o,{variant:"ghost",onClick:()=>A(null),className:"rounded-full font-bold uppercase tracking-widest text-xs h-9 text-primary hover:bg-primary/10 hover:text-primary gap-1.5",children:[e.jsx(fe,{className:"h-3.5 w-3.5"})," Clear Filter"]})]}),e.jsx("div",{className:"space-y-4",children:ae||c!=null&&le?Array(6).fill(0).map((t,s)=>e.jsx(Te,{className:"h-28 w-full rounded-xl"},s)):I.length===0?e.jsxs("div",{className:"text-center py-24 bg-card border rounded-xl border-dashed",children:[e.jsx(Re,{className:"h-12 w-12 text-muted-foreground mx-auto mb-4 opacity-20"}),e.jsx("h3",{className:"font-display font-bold text-2xl uppercase tracking-tight mb-2",children:"No shows found"}),e.jsx("p",{className:"text-muted-foreground font-medium",children:u&&S?`No shows within ${f} miles. Try showing all dates or changing your filters.`:"Try changing your region filter or checking past dates."}),e.jsx(o,{variant:"outline",className:"mt-6 rounded-full font-bold uppercase tracking-widest text-xs h-10",onClick:()=>{d("all"),M(!1),C(!1),A(null),$(null)},children:"Reset Filters"})]}):e.jsx("div",{className:"flex flex-col gap-4",children:I.map(t=>{const s=t.distance!=null&&t.distance<=f,i=he(t.date),oe=t.ticketStatus?.kind==="soldout",ce=t.ticketStatus?.kind==="sellingfast",de=t.ticketStatus?.kind==="lowtickets",O=t.ticketStatus?.kind==="ticketsleft"?t.ticketStatus.remaining??null:null,q=!i&&new Date(t.date).getTime()>Date.now()+365*24*60*60*1e3,g=Be(t.date);return e.jsxs("div",{className:`group relative flex flex-col md:flex-row items-center gap-6 p-6 rounded-xl border transition-all duration-300 ${i?"bg-muted/30 opacity-70":"bg-card hover:border-primary/50 hover:shadow-md"}`,children:[e.jsxs("div",{className:"flex flex-col items-center justify-center min-w-[100px] text-center",children:[e.jsx("span",{className:`font-black uppercase tracking-widest text-sm ${i?"text-muted-foreground":"text-primary"}`,children:g.month}),e.jsx("span",{className:"font-display font-black text-4xl tracking-tighter leading-none my-1",children:g.day}),e.jsx("span",{className:`font-bold text-xs uppercase tracking-widest ${q?"rounded bg-primary px-1.5 py-0.5 text-primary-foreground":"text-muted-foreground"}`,children:g.year}),!i&&e.jsx(Fe,{event:Ue(t),filename:`steve-hofstetter-${t.isDigital?t.title||"online":t.city||"show"}`,align:"start",iconOnly:!0,className:"mt-3 rounded-full h-9 w-9 border-primary/40 text-primary hover:bg-primary/10 hover:text-primary"})]}),e.jsxs("div",{className:"flex-1 text-center md:text-left flex flex-col justify-center",children:[e.jsxs("div",{className:"flex flex-wrap items-center justify-center md:justify-start gap-2 mb-1",children:[e.jsx(Y,{href:`/tour/${t.id}`,className:"font-display font-bold text-2xl uppercase tracking-tight hover:text-primary transition-colors",children:t.isDigital?t.title||"Online":`${t.city}${t.region?`, ${t.region.toUpperCase()}`:""}`}),s&&e.jsxs("span",{className:"inline-flex items-center gap-1 rounded-full bg-primary px-2.5 py-1 text-[10px] font-bold uppercase tracking-widest text-primary-foreground",children:[e.jsx(X,{className:"h-3 w-3"})," ",Math.round(t.distance)," mi away"]}),!i&&ce&&e.jsxs("span",{className:"inline-flex items-center gap-1 rounded-full bg-orange-500 px-2.5 py-1 text-[10px] font-bold uppercase tracking-widest text-white",children:[e.jsx(_e,{className:"h-3 w-3"})," Selling Fast"]}),!i&&de&&e.jsxs("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-500 px-2.5 py-1 text-[10px] font-bold uppercase tracking-widest text-black",children:[e.jsx(H,{className:"h-3 w-3"})," Low Tickets"]}),!i&&O!=null&&e.jsxs("span",{className:"inline-flex items-center gap-1 rounded-full bg-red-600 px-2.5 py-1 text-[10px] font-bold uppercase tracking-widest text-white",children:[e.jsx(H,{className:"h-3 w-3"})," ",ge(O)]})]}),e.jsx("div",{className:"flex flex-col md:flex-row items-center md:items-start gap-1 md:gap-3 text-muted-foreground font-medium",children:e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(W,{className:"h-3 w-3"})," ",t.isDigital?"Online":t.venue]})}),e.jsxs("div",{className:"flex items-center justify-center md:justify-start gap-1 text-sm font-semibold text-muted-foreground mt-1",children:[e.jsx(Pe,{className:"h-3 w-3"})," ",g.time]}),t.address&&e.jsx("p",{className:"text-sm text-muted-foreground
1/80 font-medium mt-1",children:t.address}),q&&e.jsxs("p",{className:"text-xs font-black uppercase tracking-widest mt-2 text-amber-600 dark:text-amber-500",children:["Please note this show is in ",g.year]}),!i&&t.note&&e.jsx("p",{className:"text-xs text-primary mt-2 font-semibold bg-primary/10 inline-block px-3 py-1 rounded-full",children:t.note}),t.supportActs&&t.supportActs.length>0&&e.jsxs("div",{className:"mt-3",children:[e.jsx("p",{className:"mb-2 text-center text-[10px] font-black uppercase tracking-widest text-muted-foreground md:text-left",children:"With"}),e.jsx("div",{className:`grid grid-cols-1 gap-2 ${t.supportActs.length>3?"sm:grid-cols-2":"sm:grid-cols-3"}`,children:t.supportActs.map(a=>{const w=Z(a.headshotUrl),b=`${a.firstName} ${a.lastName}`.trim(),x=`${t.id}:${a.id}`,y=D===x;return e.jsxs("button",{type:"button","aria-expanded":y,onClick:()=>$(p=>p===x?null:x),className:`flex w-fit items-center gap-2 justify-self-center rounded-full border py-1 pl-1 pr-3 transition-colors md:justify-self-start ${y?"border-primary/50 bg-primary/5 text-primary":"border-transparent hover:border-primary/30 hover:text-primary"}`,children:[w?e.jsx("img",{src:w,alt:b,className:"h-12 w-12 rounded-full border object-cover"}):e.jsx("span",{className:"flex h-12 w-12 items-center justify-center rounded-full border bg-muted text-xs font-bold text-muted-foreground",children:`${a.firstName.charAt(0)}${a.lastName.charAt(0)}`.toUpperCase()}),e.jsx("span",{className:"text-sm font-bold",children:b}),e.jsx(Ge,{className:`h-4 w-4 shrink-0 transition-transform ${y?"rotate-180":""}`})]},a.id)})}),t.supportActs.map(a=>{const w=`${t.id}:${a.id}`;if(D!==w)return null;const b=Z(a.headshotUrl),x=`${a.firstName} ${a.lastName}`.trim(),y=ze(a);return e.jsxs("div",{className:"mt-3 flex flex-col items-center gap-4 roun
1ded-xl border border-primary/20 bg-muted/40 p-5 text-center sm:flex-row sm:items-center sm:text-left",children:[b?e.jsx("img",{src:b,alt:x,className:"h-20 w-20 rounded-full border object-cover shrink-0"}):e.jsx("span",{className:"flex h-20 w-20 items-center justify-center rounded-full border bg-muted text-lg font-black text-muted-foreground shrink-0",children:`${a.firstName.charAt(0)}${a.lastName.charAt(0)}`.toUpperCase()}),e.jsxs("div",{className:"flex flex-1 flex-col items-center gap-3 sm:items-start",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-[10px] font-black uppercase tracking-widest text-primary mb-0.5",children:"Support"}),e.jsx("p",{className:"font-display text-xl font-black uppercase tracking-tight leading-none",children:x})]}),e.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-2 sm:justify-start",children:[y.map(p=>{const me=p.icon;return e.jsx("a",{href:p.href,target:"_blank",rel:"noreferrer","aria-label":`${x} on ${p.label}`,className:"flex h-9 w-9 items-center justify-center rounded-full border bg-background text-muted-foreground hover:border-primary hover:text-primary transition-colors",children:e.jsx(me,{className:"h-4 w-4"})},p.label)}),a.bio&&e.jsx(Y,{href:`/openers/${a.id}`,"aria-label":`Read ${x}'s bio`,title:"Read bio",className:"flex h-9 w-9 items-center justify-center rounded-full border bg-background text-muted-foreground hover:border-primary hover:text-primary transition-colors",children:e.jsx(Ie,{className:"h-4 w-4"})}),(ne.get(a.id)??0)>1&&e.jsxs(o,{variant:"outline",onClick:()=>{A(a.id),$(null)},className:"rounded-full font-bold uppercase tracking-widest text-xs h-9 border-primary/40 text-primary hover:bg-primary/10 hover:text-primary gap-2",children:[e.jsx(Q,{className:"h-3.5 w-3.5"})," ",a.firstName,"'s Shows"]})]})]})]},`panel-${a.id}`)})]})]}),e.jsx("div",{className:"w-full md:w-auto mt-6 md:mt-0 flex flex-col gap-2 justify-center md:items-end",children:i?e.jsx(o,{variant:"outline",disabled:!0,className:"w-full md:w-auto rounded-full font-bold uppercase tracking-widest text-xs h-12 px-8",children:"Past Show"}):e.jsxs(e.Fragment,{children:[oe?e.jsx(o,{variant:"destructive",disabled:!0,className:"w-full md:w-auto rounded-full font-bold uppercase tracking-widest text-xs h-12 px-8",children:"Sold Out"}):e.jsx(o,{className:"w-full md:w-auto rounded-full font-bold uppercase tracking-widest text-xs h-12 px-8 shadow-sm hover:shadow-primary/20",asChild:!!t.ticketUrl,children:t.ticketUrl?e.jsx("a",{href:t.ticketUrl,target:"_blank",rel:"noreferrer",onClick:()=>r.mutate({id:t.id}),children:"Get Tickets"}):e.jsx("span",{children:"Tickets Soon"})}),t.meetGreetUrl&&e.jsx(o,{variant:"outline",className:"w-full md:w-auto rounded-full font-bold uppercase tracking-widest text-xs h-12 px-8 border-primary/40 text-primary hover:bg-primary/10 hover:text-primary gap-2",asChild:!0,children:e.jsxs("a",{href:t.meetGreetUrl,target:"_blank",rel:"noreferrer",children:[e.jsx(Oe,{className:"h-4 w-4"})," Meet & Greet"]})})]})})]},t.id)})})}),e.jsxs("div",{className:"mt-16 rounded-2xl border bg-card p-8 md:p-10 text-center shadow-sm",children:[e.jsxs("h2",{className:"font-display text-3xl md:text-4xl font-black uppercase tracking-tighter",children:["Never Miss A ",e.jsx("span",{className:"text-primary",children:"Show"})]}),e.jsx("p",{className:"mt-3 text-muted-foreground font-medium max-w-xl mx-auto",children:"Be the first to know when Steve announces a date near you. Get text alerts and join the Substack for jokes, rants, and behind-the-scenes stories."}),e.jsxs("div",{className:"mt-7 flex flex-col sm:flex-row items-stretch justify-center gap-3",children:[e.jsx(o,{asChild:!0,className:"rounded-full font-bold uppercase tracking-widest text-xs h-12 px-8 gap-2",children:e.jsxs("a",{href:"sms:+14842140743?&body=STEVE",children:[e.jsx(qe,{className:"h-4 w-4"})," Text STEVE to 484.214.0743"]})}),e.jsx(o,{asChild:!0,variant:"outline",className:"rounded-full font-bold uppercase tracking-widest text-xs h-12 px-8 gap-2 border-primary/40 text-primary hover:bg-primary/10 hover:text-primary",children:e.jsxs("a",{href:"https://substack.com/@stevehofstetter",target:"_blank",rel:"noreferrer",children:[e.jsx(be,{className:"h-4 w-4"})," Subscribe On Substack"]})})]})]})]})]})}export{ht 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.