1"use strict"; 2!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="d218eaf7-a88d-59d8-9689-f3ef50a8b121")}catch(e){}}(); 3(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2564],{2183:(t,e,n)=>{n.d(e,{L6:()=>a,MG:()=>l,sy:()=>u});let r="pv_fan_guest_token";function i(t){return`pv_event_going_${t}`}function a(){try{let t=window.localStorage.getItem(r);if(t&&t.length>=8)return t;let e="undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID().replace(/-/g,""):`${Date.now().toString(36)}${Math.random().toString(36).slice(2,12)}`;return window.localStorage.setItem(r,e),e}catch{return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,12)}`}}function o(t){return`pv_event_rsvp_${t}`}function l(t){try{let e=window.localStorage.getItem(o(t));if("going"===e||"interested"===e||"maybe"===e)return e;return!function(t){try{return"1"===window.localStorage.getItem(i(t))}catch{return!1}}(t)?null:"going"}catch{return null}}function u(t,e){try{e?window.localStorage.setItem(o(t),e):window.localStorage.removeItem(o(t))}catch{}var n="going"===e;try{n?window.localStorage.setItem(i(t),"1"):window.localStorage.removeItem(i(t))}catch{}}},5103:(t,e,n)=>{n.d(e,{Xn:()=>i,ii:()=>l,rv:()=>o});var r=n(32949);let i="en-US",a=!1;function o(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"unknown",n=function(t){if(!t)return null;let e=t.trim();if(!e||"*"===e)return null;try{let[t]=Intl.getCanonicalLocales(e);return t??null}catch{return null}}(t);return n?n:(a||(a=!0,r.vF.debug("[locale] falling back to DEFAULT_LOCALE",{where:e,fallback:i})),i)}function l(t){let e=o(t,"usesHour12");try{let t=new Intl.DateTimeFormat(e,{hour:"numeric"}).resolvedOptions();if(t.hourCycle)return t.hourCycle.startsWith("h1");return!1!==t.hour12}catch{return!0}}},8309:(t,e,n)=>{n.d(e,{F8:()=>u,Ht:()=>s,OS:()=>a,Qn:()=>g,Ro:()=>c,Vj:()=>d,Wh:()=>o,up:()=>l});var r=n(5103),i=n(61537);let a="USD";function o(t){if(!t)return a;let e=t.trim().toUpperCase();return/^[A-Z]{3}$/.test(e)?e:a}function l(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a,n=arguments.length>2?arguments[2]:void 0,l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},u="number"==typeof t&&Number.isFinite(t)?t:0,s=o(e),c=(0,r.rv)(n,"formatMoney"),d=l.decimals??"auto",g={style:"currency",currency:s,...l.signDisplay?{signDisplay:l.signDisplay}:{},...!1===l.useGrouping?{useGrouping:!1}:{}};"never"===d?(g.minimumFractionDigits=0,g.maximumFractionDigits=0):"auto"===d&&Math.round(100*u)%100==0&&(g.minimumFractionDigits=0,g.maximumFractionDigits=0);try{return(0,i.jq)(c,g).format(u)}catch{return(0,i.jq)(r.Xn,{style:"currency",currency:a}).format(u)}}function u(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a,n=arguments.length>2?arguments[2]:void 0;return l(t,e,n,{decimals:"always"})}function s(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a,n=arguments.length>2?arguments[2]:void 0;return l(t,e,n,{decimals:"never"})}function c(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a,n=arguments.length>2?arguments[2]:void 0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return l(("number"==typeof t&&Number.isFinite(t)?t:0)/100,e,n,r)}function d(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a,r=arguments.length>3?arguments[3]:void 0,i="number"==typeof t&&Number.isFinite(t),o="number"==typeof e&&Number.isFinite(e);return i||o?i&&!o?l(t,n,r):!i&&o?l(e,n,r):t===e?l(t,n,r):`${l(t,n,r)} - ${l(e,n,r)}`:null}function g(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,e=arguments.length>1?arguments[1]:void 0,n=o(t),l=(0,r.rv)(e,"getCurrencySymbol");try{let t=(0,i.jq)(l,{style:"currency",currency:n,minimumFractionDigits:0,maximumFractionDigits:0}).formatToParts(0).find(t=>"currency"===t.type);return t?.value??"$"}catch{return"$"}}},23192:(t,e,n)=>{n.d(e,{I:()=>r});function r(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;if(!t)return"?";
3let n=t.trim().split(/\s+/).filter(Boolean);return 0===n.length?"?":n.slice(0,Math.max(1,e)).map(t=>Array.from(t)[0]??"").join("").toUpperCase()||"?"}},61537:(t,e,n)=>{n.d(e,{Mx:()=>o,jq:()=>l});let r=new Map,i=new Map;function a(t,e){return t+"\0"+JSON.stringify(e)}function o(t,e,n){return(function(t,e){let n=a(t,e),i=r.get(n);if(i)return i;let o=new Intl.DateTimeFormat(t,e);return r.size>=128&&r.clear(),r.set(n,o),o})(e,void 0!==n.dateStyle||void 0!==n.timeStyle||void 0!==n.weekday||void 0!==n.year||void 0!==n.month||void 0!==n.day?n:{...n,year:"numeric",month:"numeric",day:"numeric"}).format(t)}function l(t,e){let n=a(t,e),r=i.get(n);if(r)return r;let o=new Intl.NumberFormat(t,e);return i.size>=128&&i.clear(),i.set(n,o),o}},71144:(t,e,n)=>{n.d(e,{EventAttendanceProvider:()=>s,dt:()=>c,iw:()=>d});var r=n(33670),i=n(74617),a=n(64764),o=n(2183);function l(t){let{user:e}=(0,a.As)(),[n,l]=(0,r.useState)(null),[u,s]=(0,r.useState)(!0),[c,d]=(0,r.useState)(null),[g,f]=(0,r.useState)(null),[h,m]=(0,r.useState)(!1);(0,r.useEffect)(()=>{if(!t)return;let e=!1;return async function(){try{let n=await (0,i.Ud)(`/api/events/${t}/attendance`);if(!n.ok)throw Error("fetch failed");let r=await n.json();e||l(r.data)}catch{e||l({going:0,interested:0,maybe:0,userStatus:void 0})}finally{e||s(!1)}}(),()=>{e=!0}},[t]),(0,r.useEffect)(()=>{t&&!e&&f((0,o.MG)(t))},[t,e]);let y=(0,r.useCallback)(async e=>{if(!n||c)return"ignored";let r=n.userStatus===e;d(e);let a={going:n.going,interested:n.interested,maybe:n.maybe,userStatus:r?void 0:e};n.userStatus&&(a[n.userStatus]=Math.max(0,a[n.userStatus]-1)),r||(a[e]=a[e]+1),l(a);try{if(r){if(!(await (0,i.Ud)(`/api/events/${t}/attendance`,{method:"DELETE"})).ok)throw Error("delete failed");return"cleared"}let a=await (0,i.Ud)(`/api/events/${t}/attendance`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:e})});if(!a.ok){if(l(n),409===a.status){let t=await a.json().then(t=>t?.error?.message??t?.error??t?.message).catch(()=>null);if("string"==typeof t&&t&&!/capacity/i.test(t))return{refused:t};return"capacity"}return null}return"set"}catch{return l(n),null}finally{d(null)}},[n,c,t]),p=(0,r.useCallback)(async(e,n)=>{if(!t||h)return"ignored";m(!0);let r=g===e?null:e,i=(t,e)=>l(n=>{if(!n)return n;let r={...n};return t&&(r[t]=Math.max(0,r[t]-1)),e&&(r[e]=r[e]+1),r});f(r),i(g,r);try{let e=(0,o.L6)(),a=await fetch(`/api/public/events/${t}/attendance`,{method:r?"POST":"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify(r?{guestToken:e,status:r,plusone:n}:{guestToken:e})});if(!a.ok)return f(g),i(r,g),409===a.status?"capacity":null;return(0,o.sy)(t,r),r?"set":"cleared"}catch{return f(g),i(r,g),null}finally{m(!1)}},[t,h,g]);return{eventId:t,attendance:n,loading:u,busyStatus:c,toggle:y,guestStatus:g,guestBu
3sy:h,toggleGuest:p}}let u=(0,r.createContext)(null);function s(t){let{eventId:e,children:n}=t,i=l(e);return(0,r.createElement)(u.Provider,{value:i},n)}function c(t){let e=(0,r.useContext)(u);return e&&e.eventId===t?e:null}function d(t){let e=(0,r.useContext)(u),n=e?.eventId===t,i=l(n?null:t);return n&&e?e:i}},74617:(t,e,n)=>{n.d(e,{$H:()=>d,SP:()=>c,Ud:()=>l,i_:()=>f,m3:()=>s,qy:()=>a,uR:()=>u,vo:()=>g,zf:()=>o});let r=["/","/login","/signup","/forgot-password","/reset-password","/onboarding","/auth/verify-email","/auth/create-password","/auth/setup-profile","/discover","/book","/about","/pricing","/terms","/privacy","/contact","/invite","/pulse","/tools","/gig-invite","/venue-invite","/agent-invite","/unsubscribe","/walk-up","/scan","/waitlist","/events","/setlist","/brand-signup","/roster","/.well-known/oauth-protected-resource","/.well-known/oauth-authorization-server","/oauth/authorize","/t","/tickets","/sell","/tonight","/a","/v","/o","/f","/g","/c","/scene","/featured","/paid","/d","/room","/booked","/quote","/record","/team-invite","/w","/band"],i=null;async function a(){return/(?:^|;\s*)sb-[^=;]*auth-token(?:\.\d+)?=/.test(document.cookie)}function o(t){return"object"==typeof t&&null!==t&&"name"in t&&"AbortError"===t.name}async function l(t,e){let n={...e,credentials:"include"};try{let e=await fetch(t,n);if(401===e.status){var a;if(a=window.location.pathname,"/"===a||r.some(t=>"/"!==t&&(a===t||a.startsWith(`${t}/`)))||await (i||(i=fetch("/api/auth/session",{credentials:"include"}).then(async t=>{if(401===t.status)return!1;if(!t.ok)return!0;let e=await t.json().catch(()=>null);return!!e?.data?.user}).catch(()=>!0).finally(()=>{i=null}))))return e;await fetch("/api/auth/logout",{method:"POST",credentials:"include"}).catch(()=>{});let t=!1;try{let e=Number(sessionStorage.getItem("pv-intentional-logout"));sessionStorage.removeItem("pv-intentional-logout"),t=Number.isFinite(e)&&e>0&&Date.now()-e<15e3}catch{}if(t)return window.location.href="/login",e;let n=encodeURIComponent(window.location.pathname+window.location.search);window.location.href=`/login?redirect=${n}&error=session_expired&message=${encodeURIComponent("Your session ended, so that last action may not have saved. Please log back in and try again.")}`}return e}catch(t){throw t}}async function u(t,e){let n=await l(t,e);if(!n.ok){let t=await n.text().catch(()=>"Unknown error");throw Error(`HTTP ${n.status}: ${t}`)}return n.json()}async function s(t,e,n){return u(t,{method:"POST",headers:{"Content-Type":"application/json",...n},body:JSON.stringify(e)})}async function c(t,e){return u(t,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function d(t,e){return u(t,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function g(t){return u(t,{method:"DELETE"})}async function f(t,e){return u(t,{method:"GET",...e?{headers:e}:{}})}},84892:(t,e,n)=>{n.d(e,{A:()=>i});let r="plusone";function i(t,e){if(!t)return t;let n=function(t){if(!t)return null;let e=t.replace(/[^a-z0-9]/gi,"").toLowerCase();return e.length<4?null:e.slice(0,8)}(e);if(!n)return t;let[i,a=""]=t.split("#");if(!i||RegExp(`[?&]${r}=`,"i").test(i))return t;let o=i.includes("?")?"&":"?",l=`${i}${o}${r}=${encodeURIComponent(n)}`;return a?`${l}#${a}`:l}},92015:(t,e,n)=>{n.d(e,{$:()=>g});var r=n(22342),i=n(33670),a=n(43564),o=n(64764),l=n(73959),u=n(74617),s=n(84892),c=n(71144),d=n(2183);function g(t){let{eventId:e,eventTitle:n,initialGoing:g=!1,plusoneRef:f,className:h}=t,{user:m}=(0,o.As)(),{toast:y}=(0,l.dj)(),p=(0,c.dt)(e),[v,w]=(0,i.useState)(g),[b,S]=(0,i.useState)(!1),[$,T]=(0,i.useState)(!1);(0,i.useEffect)(()=>{p||m||g||"going"===(0,d.MG)(e)&&w(!0)},[p,m,g,e]);let x=p?m?p.attendance?.userStatus==="going":"going"===p.guestStatus:v,E=async t=>{if(t.preventDefault(),t.stopPropagation(),p){"capacity"===(m?await p.toggle("going"):await p.toggleGuest("going",f))&&y({title:"At capacity",description:"This event is full."});return}if(b)return;S(!0);let n=!v;if(w(n),!m){let t=(0,d.L6)();try{let r=await fetch(`/api/public/events/${e}/attendance`,{method:n?"POST":"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify(n?{guestToken:t,status:"going",plusone:f}:{guestToken:t})});r.ok?(0,d.sy)(e,n?"going":null):(w(!n),409===r.status&&y({title:"At capacity",description:"This event is full."}))}catch{w(!n)}finally{S(!1)}return}try{let t=n?await (0,u.Ud)(`/api/events/${e}/attendance`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:"going"})}):await (0,u.Ud)(`/api/events/${e}/attendance`,{method:"DELETE"});t.ok||(w(!n),409===t.status&&y({title:"At capacity",description:"This event is full."}))}catch{w(!n)}finally{S(!1)}},k=async t=>{t.preventDefault(),t.stopPropagation();let r=(0,s.A)(`${window.location.origin}/events/${e}`,m?.id),i=`Come with me${n?` to ${n}`:""}. You can RSVP without an account.`;if("undefined"!=typeof navigator&&navigator.share)try{await navigator.share({title:n,text:i,url:r});return}catch(t){if(t instanceof Error&&"AbortError"===t.name)return}try{await navigator.clipboard.writeText(r),T(!0),setTimeout(()=>T(!1),2e3)}catch{}};return(0,r.jsxs)("span",{className:(0,a.cn)("relative z-10 inline-flex items-center gap-1.5",h),children:[(0,r.jsx)("button",{type:"button",onClick:E,"aria-pressed":x,className:(0,a.cn)("inline-flex min-h-10 items-center rounded-lg border px-3 py-1.5 text-xs font-medium transition-colors",x?"border-hairline-loud bg-glass-active text-white":"border-hairline-strong bg-glass-hover text-neutral-300 hover:border-hairline-loud hover:text-white"),children:x?"Going":"I'm going"}),x&&(0,r.jsx)("button",{type:"button",onClick:k,title:"Bring a +1. They can RSVP without an account",className:"inline-flex items-center rounded-lg border border-hairline-strong bg-glass-hover px-3 py-1.5 text-xs font-medium text-neutral-300 transition-colors hover:border-hairline-loud hover:text-white",children:$?"Copied":"Bring a +1"})]})}}}]); 4//# sourceMappingURL=2564-5241a58836781e43.js.map 5//# debugId=d218eaf7-a88d-59d8-9689-f3ef50a8b121
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.