@getmicdrop/venue-calendar 4.2.16 → 4.2.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +809 -809
- package/dist/{CartView-DP5TuBgM.js → CartView-cHL2n0fE.js} +5 -5
- package/dist/{Checkout-Dch9xOAn.js → Checkout-Blc7IuZ2.js} +4 -4
- package/dist/{Checkout-C7S--vSV.js → Checkout-DNVyBcrm.js} +4 -4
- package/dist/{CheckoutTimer-C9tJJZC8.js → CheckoutTimer-D5i2F8al.js} +1 -1
- package/dist/{CollectionView-D9utYlT8.js → CollectionView-DzoCBduF.js} +2 -2
- package/dist/{Event-CYWGeRe-.js → Event-D5u7y0w3.js} +223 -217
- package/dist/EventPage-Ddslq4xC.js +931 -0
- package/dist/{SeriesPage-mjiTHFQ6.js → SeriesPage-BPm7CNzY.js} +1 -1
- package/dist/{Success-DgUD_STB.js → Success-CXI2Xtdz.js} +4 -4
- package/dist/api/api.cjs +1 -1
- package/dist/api/api.mjs +2 -1
- package/dist/api/types.d.ts +545 -545
- package/dist/api/waitlist.d.ts +6 -0
- package/dist/{colors-Dk53YuNz.js → colors-5g6cmoXX.js} +2 -1
- package/dist/{event-transform-DUqXNcXz.js → event-transform-0VCBk_zn.js} +1 -1
- package/dist/{i18n-nPKgIP_8.js → i18n-D7pvVga7.js} +2 -2
- package/dist/{labels-YAwDbsF8.js → labels-7f_yKBtq.js} +1 -1
- package/dist/seo/types.d.ts +156 -156
- package/dist/types/index.d.ts +509 -509
- package/dist/{utils-CcxQIxOO.js → utils-DLfxcnPk.js} +1 -1
- package/dist/venue-calendar.css +1 -1
- package/dist/venue-calendar.es.js +14 -14
- package/dist/venue-calendar.iife.js +34 -34
- package/dist/venue-calendar.umd.js +31 -31
- package/package.json +1 -1
- package/src/lib/theme.js +222 -222
- package/dist/EventPage-it5cJwjg.js +0 -880
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/de.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/es.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/fr.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/id.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/it.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/ja.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/ko.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/nl.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/pl.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/pt-br.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/tr.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/flow/zh.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/de.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/es.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/fr.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/id.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/it.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/ja.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/ko.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/nl.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/pl.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/pt-br.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/tr.js +0 -0
- /package/dist/locales/{4.2.16 → 4.2.19}/main/zh.js +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { x as e } from "./Button-C4uFgl7L.js";
|
|
2
|
-
import { t } from "./Event-
|
|
2
|
+
import { t } from "./Event-D5u7y0w3.js";
|
|
3
3
|
import { i as n } from "./shareCopyFeedback.svelte-DZMLGA3y.js";
|
|
4
4
|
import { n as r } from "./ScarcityBadge-R32tzjFi.js";
|
|
5
5
|
import { t as i } from "./__SKIP_PATHS__-DmdRxELE.js";
|
|
@@ -12,11 +12,11 @@ import { G as v, L as y, Y as b, p as x, q as S, s as C } from "./orders-xGH8-IQ
|
|
|
12
12
|
import { a as w, l as T, o as E, t as D } from "./__SKIP_PATHS__-DmdRxELE.js";
|
|
13
13
|
import { n as O, t as k } from "./Heading-Dfo3bjyn.js";
|
|
14
14
|
import { t as A } from "./Text-CqjLjIF8.js";
|
|
15
|
-
import "./colors-
|
|
15
|
+
import "./colors-5g6cmoXX.js";
|
|
16
16
|
import { c as ee, r as j } from "./pixels-Hb-kLRzV.js";
|
|
17
|
-
import { i as M, n as N, t as P } from "./i18n-
|
|
18
|
-
import { a as te, h as F, n as I, s as L } from "./utils-
|
|
19
|
-
import { t as R } from "./labels-
|
|
17
|
+
import { i as M, n as N, t as P } from "./i18n-D7pvVga7.js";
|
|
18
|
+
import { a as te, h as F, n as I, s as L } from "./utils-DLfxcnPk.js";
|
|
19
|
+
import { t as R } from "./labels-7f_yKBtq.js";
|
|
20
20
|
import { a as z, i as B, n as V, o as ne, r as H, s as re } from "./showcase-state-options-BoJxiEsg.js";
|
|
21
21
|
import { n as U, t as W } from "./buyerEmail-BfCq-gDt.js";
|
|
22
22
|
import "svelte/internal/disclose-version";
|
package/dist/api/api.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@getmicdrop/svelte-components/utils/logger"),t=require("@getmicdrop/svelte-components/errors"),n=require("@getmicdrop/svelte-components"),r=require("@getmicdrop/svelte-components/datetime"),i=require("@getmicdrop/svelte-components/transforms");require("@getmicdrop/svelte-components/utils/timezones"),require("@getmicdrop/svelte-components/utils/formatters"),(0,e.createLogger)(`VC:config`,{enabled:!0});var a=(0,e.createLogger)(`VC`),o=new Set;function s(e){if(e)for(let t of o)try{t(e)}catch{}}var c=`ABORTED`;function l(e,t){let n=t||void 0;return n?{...e,"X-Widget-Key":n}:e}function u(e,t){let n=`HTTP ${t}`;if(!e||typeof e!=`object`)return{message:n};let r=e,i=r.error&&typeof r.error==`object`?r.error:null,a=typeof r.code==`string`?r.code:typeof i?.code==`string`?i.code:void 0;return{message:typeof r.error==`string`?r.error:typeof i?.message==`string`?i.message:typeof r.message==`string`?r.message:n,code:a}}var d=class extends Error{code;statusCode;constructor(e,t,n){super(e),this.name=`ApiRequestError`,this.code=t,this.statusCode=n}},f={baseUrl:`https://get-micdrop.com`,timeout:3e4,retries:2,retryDelay:500,onError:e=>a.error(`API Error:`,e)};function p(e){f={...f,...e}}function m(){return{...f}}function h(){return`${f.baseUrl}/api/v2/public`}function g(){return`${f.baseUrl}/api/public`}function _(){return`${f.baseUrl}/api/orders/v2/public`}async function ee(){return``}var te=e=>new Promise(t=>setTimeout(t,e));async function v(e,t,n){let r=(t.method||`GET`).toUpperCase(),i=r===`GET`||r===`HEAD`?n.retries+1:1,a;for(let r=1;r<=i;r++){let o=new AbortController,s=setTimeout(()=>o.abort(),n.timeout),c=t.signal,l;c&&(c.aborted?o.abort():(l=()=>o.abort(),c.addEventListener(`abort`,l,{once:!0})));try{let n=await fetch(e,{...t,signal:o.signal});if(n.status>=500&&r<i)a=Error(`HTTP ${n.status}`);else return n}catch(e){if(a=e,c?.aborted)throw e}finally{clearTimeout(s),c&&l&&c.removeEventListener(`abort`,l)}r<i&&await te(n.retryDelay*2**(r-1))}throw a}async function y(e,t){return S(`GET`,e,void 0,t)}async function b(e,t,n){return S(`POST`,e,t,n)}async function ne(e,t,n){return S(`PUT`,e,t,n)}async function x(e,t){return S(`DELETE`,e,void 0,t)}async function S(e,t,n,r){let i=t.startsWith(`http`)||t.startsWith(`/api/`)?t:`${h()}${t}`,{widgetKey:a,suppressOnError:o,headers:p,...m}=r??{},g=e=>{o||f.onError(e)};try{let t=await v(i,{method:e,headers:l({"Content-Type":`application/json`,...p},a),body:n===void 0?void 0:JSON.stringify(n),...m},f);if(!t.ok){let{message:e,code:n}=u(await t.json().catch(()=>({})),t.status);return g(new d(e,n,t.status)),s(n),{success:!1,error:e,errorCode:n,statusCode:t.status}}return{success:!0,data:await t.json(),statusCode:t.status}}catch(e){if(r?.signal?.aborted)return{success:!1,error:`Request aborted`,errorCode:c,aborted:!0};let t=e instanceof Error?e.name===`AbortError`?`Request timed out`:e.message:`Unknown error`;return g(e instanceof Error?e:Error(t)),{success:!1,error:t}}}async function C(e,t){try{let n=e.startsWith(f.baseUrl),{widgetKey:r,...i}=t??{},o=await v(e,{...i,...n?{headers:l(i.headers,r)}:{}},f);if(!o.ok){let e=await o.json().catch(()=>({}));return a.error(`API request failed: ${o.status}`,e),null}return o.json()}catch(e){return a.error(`API request error:`,e),null}}function re(e){let t=e??{};return{ticketID:Number(t.TicketID??t.ticketID??0),quantity:Number(t.Quantity??t.quantity??0),priceAtReservation:Number(t.PriceAtReservation??t.priceAtReservation??0),status:String(t.Status??t.status??``)}}function ie(e){let t=e??{},r=t.Amount??t.amount,i=Number(r);return{giftCardId:Number(t.GiftCardID??t.giftCardId??0),maskedCode:String(t.MaskedCode??t.maskedCode??``),amount:r==null||!Number.isFinite(i)?null:(0,n.centsToDollars)((0,n.toCents)(i))}}function ae(e){let t=e??{};return{uuid:t.UUID??t.uuid??``,eventID:Number(t.EventID??t.eventID??0),status:t.Status??t.status??``,expiresAt:t.ExpiresAt??t.expiresAt??``,reservations:(t.Reservations??t.reservations??[]).map(re),giftCards:(t.GiftCards??t.giftCards??[]).map(ie)}}var oe=[`utmSource`,`utmMedium`,`utmCampaign`,`utmContent`,`utmTerm`],se={utmSource:`utm_source`,utmMedium:`utm_medium`,utmCampaign:`utm_campaign`,utmContent:`utm_content`,utmTerm:`utm_term`},ce=`direct`;function le(e){return e?e.trim().toLowerCase().replace(/\s+/g,`_`):``}function ue(e){let t={};for(let n of oe)t[n]=le(e[n]);return t.utmSource||=ce,t}function de(e){let t={};for(let n of oe)t[n]=e.get(se[n]);return ue(t)}var w={search:null,referrer:null,pageUrl:null};function fe(){if(typeof window>`u`)return!0;try{return window.self===window.top}catch{return!1}}function pe(){let e=typeof window<`u`,t=fe(),n=w.search??(e?window.location.search:``),r=w.referrer??(typeof document<`u`?document.referrer:``)??``,i=w.pageUrl??(e&&t?window.location.href:``);return{utm:de(new URLSearchParams(n)),referrer:r||``,pageUrl:i||``}}var me=null,he=!1;function ge(){return typeof window<`u`&&typeof window.__tcfapi==`function`}function _e(){return typeof navigator<`u`&&navigator.globalPrivacyControl===!0}function ve(){return me===null?ge()||_e():me}function ye(){return!ve()||he}var be=`micdrop_session_id`,T=`micdrop_visitor_id`,xe=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function E(e){return typeof e==`string`&&xe.test(e)}function D(){let e=typeof crypto<`u`?crypto:void 0;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)e.getRandomValues(t);else for(let e=0;e<16;e++)t[e]=Math.floor(Math.random()*256);t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=[];for(let e=0;e<16;e++)n.push(t[e].toString(16).padStart(2,`0`));return`${n[0]}${n[1]}${n[2]}${n[3]}-${n[4]}${n[5]}-${n[6]}${n[7]}-${n[8]}${n[9]}-${n[10]}${n[11]}${n[12]}${n[13]}${n[14]}${n[15]}`}function Se(){let e=(0,n.getSessionStorage)(be);return e||(e=D(),(0,n.setSessionStorage)(be,e)),e}function Ce(e){let t=(0,n.getLocalStorage)(T);if(E(t))return{id:t,createdAt:e,migrated:!0};if(t&&typeof t==`object`){let{id:n,createdAt:r}=t;if(!E(n))return null;let i=typeof r==`number`&&Number.isFinite(r),a=i?Math.min(r,e):e;return{id:n,createdAt:a,migrated:!i||a!==r}}return null}function we(){if(!ye())return null;let e=Date.now(),t=Ce(e);if(t&&e-t.createdAt<34128e6){if(t.migrated){let e={id:t.id,createdAt:t.createdAt};(0,n.setLocalStorage)(T,e)}return t.id}let r=D();return(0,n.setLocalStorage)(T,{id:r,createdAt:e}),r}var Te=`micdrop_attribution`;function Ee(){let e=(0,n.getSessionStorage)(Te);return!e||!e.utm||typeof e.utm.utmSource!=`string`?null:e}function O(){let e=Ee()??pe();return{sessionId:Se(),visitorId:we(),utmSource:e.utm.utmSource,utmMedium:e.utm.utmMedium,utmCampaign:e.utm.utmCampaign,utmContent:e.utm.utmContent,utmTerm:e.utm.utmTerm,referrer:e.referrer||``}}(0,n.createLogger)(`tracking`);var k=(0,e.createLogger)(`VC`);async function De(e,n,r,i){try{let a=await b(`${_()}/cart/${e}/payment-intent`,{productQuantities:n,...r&&Object.keys(r).length>0?{donationAmounts:r}:{},...i?{firstName:i.firstName,lastName:i.lastName,email:i.email,mailingList:i.mailingList??!1}:{},attribution:O()});if(!a.success)throw k.error(`Payment intent creation failed:`,a.error),new t.ApiError(a.error||`Failed to create payment intent`,a.statusCode??0,{endpoint:`${_()}/cart/${e}/payment-intent`,method:`POST`});return k.debug(`Payment intent created:`,a.data),a.data}catch(e){return k.error(`createPaymentIntent error:`,e),null}}async function Oe(e,t){if(!e)return null;try{let n=await y(`${_()}/cart/${e}`);if(!n.success)return null;let{uuid:r,eventID:i,status:a,expiresAt:o,reservations:s,giftCards:c}=ae(n.data);return a!==`reserved`&&a!==`active`||t!==void 0&&i!==Number(t)?null:{uuid:r,eventID:i,status:a,expiresAt:o,reservations:s,giftCards:c}}catch(e){return k.error(`getCartByUUID error:`,e),null}}async function ke(e,t,n){try{let r={};for(let[e,n]of Object.entries(t)){let t=typeof e==`number`?e:parseInt(e,10);!Number.isNaN(t)&&n>0&&(r[t]=n)}let i={};if(n)for(let[e,t]of Object.entries(n)){let n=typeof e==`number`?e:parseInt(e,10);!Number.isNaN(n)&&t>0&&(i[n]=t)}let a=await fetch(`${_()}/cart/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({quantities:r,...Object.keys(i).length>0?{donationAmounts:i}:{}})});if(!a.ok){let e=await a.json().catch(()=>({}));return k.error(`Cart update failed:`,e),!1}return!0}catch(e){return k.error(`updateCartQuantities error:`,e),!1}}async function Ae(e){try{let t=await b(`${h()}/orders/complete/${e}`);return t.success?{success:!0,message:t.data?.message}:{success:!1,error:t.error||`Failed to complete reservation`}}catch(e){return k.error(`Error completing reservation:`,e),{success:!1,error:`Network error completing reservation`}}}async function je(e){try{let t=await b(`${h()}/orders/cancel/${e}`);return t.success?{success:!0,message:t.data?.message}:{success:!1,error:t.error||`Failed to cancel reservation`}}catch(e){return k.error(`Error cancelling reservation:`,e),{success:!1,error:`Network error cancelling reservation`}}}async function Me(e,t){try{let n=await b(`${h()}/orders/create`,{eventID:e,promoCode:t,attribution:O()});return n.success?n.data:(k.error(`Create order failed:`,n.error),null)}catch(e){return k.error(`createOrder error:`,e),null}}async function Ne(e){return C(`${h()}/orders/${e}`)}async function Pe(e,t){try{let n=await b(`${_()}/validatePaymentIntent/${e}`,{...t,attribution:O()});if(!n.success)return k.error(`Payment validation failed:`,n.error),{success:!1,status:`failed`,error:n.error||`Payment validation failed`};let r=n.data;return r.eventCanceled||r.eventPostponed?{success:!1,status:`failed`,eventCanceled:r.eventCanceled,eventPostponed:r.eventPostponed}:{success:!0,status:r.status||`Payment succeeded`,orderUUID:r.orderUUID||r.uuid}}catch(e){return k.error(`validatePaymentIntent error:`,e),null}}async function Fe(e){try{let t=await b(`${h()}/orders/extend-session`,{orderUuid:e});if(!t.success)return{success:!1,error:t.error||`Failed to extend session`,statusCode:t.statusCode};let n=t.data;return{success:!0,newExpiryTime:n.newExpiryTime,remainingExtensions:n.remainingExtensions}}catch(e){return k.error(`Error extending checkout session:`,e),{success:!1,error:`Network error extending session`}}}async function Ie(e){try{let t=await y(`${h()}/orders/session/${e}`);if(!t.success)return{error:t.error||`No active session found`,notFound:t.statusCode===404};let n=t.data;return{expiresAt:n.expiresAt,extensionCount:n.extensionCount,remainingExtensions:n.remainingExtensions,canExtend:n.canExtend,reservationCount:n.reservationCount,eventStatus:n.eventStatus}}catch(e){return k.error(`Error getting session status:`,e),{error:`Network error getting session status`}}}async function Le(e={eventID:``}){try{let t=await b(`${h()}/orders/create`,{...e,attribution:O()});return t.success?t.data?.uuid??null:(k.error(`Order initiation failed:`,t.error),null)}catch(e){return k.error(`initiateOrder error:`,e),null}}async function Re(e){if(typeof window>`u`)return;let t=le(new URLSearchParams(window.location.search).get(`utm_source`))||`direct`;try{await fetch(`${h()}/utm/${e}/${encodeURIComponent(t)}`)}catch(e){k.error(`UTM tracking failed:`,e)}}var A=(0,e.createLogger)(`VC`);async function ze(e,t){try{if(!t||!t.trim())return{valid:!1,error:`Promo code is required`};let n=await y(`/promo-codes/validate/${e}/${encodeURIComponent(t.trim())}`);if(!n.success)return n.statusCode===404?{valid:!1,error:`Invalid promo code`}:{valid:!1,error:`Failed to validate code`};let r=n.data;return{valid:r.valid??!0,revealHiddenTickets:r.revealHiddenTickets,revealTicketIds:r.revealTicketIds,provideDiscount:r.provideDiscount,discountType:r.discountType,amount:r.discount??r.amount,code:r.name||r.code||t,appliesToAllTickets:r.appliesToAllTickets,applyToTicketIds:r.applyToTicketIds}}catch(e){return A.error(`Error validating promo code:`,e),{valid:!1,error:`Network error validating code`}}}async function Be(e){try{let t=await y(`/promo-codes/check/${e}`);return!t.success||t.data.hasPromoCodes===!0}catch(e){return A.error(`Error checking promo codes availability:`,e),!0}}async function Ve(e,t,n){try{let r={promoCode:t};n&&Object.keys(n).length>0&&(r.productQuantities=n);let i=await b(`${_()}/cart/${e}/apply-promo`,r);return i.success?{success:!0}:{success:!1,error:i.error||`Failed to apply promo code`}}catch(e){return A.error(`Error applying promo code:`,e),{success:!1,error:`Network error applying code`}}}async function He(e){try{let t=await b(`/orders/${e}/remove-promo`);return t.success?{success:!0}:{success:!1,error:t.error||`Failed to remove promo code`}}catch(e){return A.error(`Error removing promo code:`,e),{success:!1,error:`Network error removing code`}}}function Ue(e){let t=e??{};return{performers:Array.isArray(t.performers)?t.performers:[],showPerformers:t.showPerformers===!0}}function j(e){return{ok:!0,data:e}}function M(e){return{ok:!1,error:e}}function N(e){return{ok:!1,error:e,notFound:!0}}function We(e){return e.ok}function Ge(e){return!e.ok}function P(e,t){return e.ok?e.data:t}var F=`/api/v2/public`,I=`/api/orders/v2/public`,Ke=`/api/orders/v2`,qe=`00000000-0000-0000-0000-000000000000`,L=qe;`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${I}`,`${I}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${Ke}`,`${Ke}`,`${I}`,`${I}`,`${I}`,`${I}`,`${F}`,`${F}${L}`,`${F}`,`${F}`;var R=(0,e.createLogger)(`VC`),z=new Map;async function B(e,t=fetch,n){let r=n?`${e}:pw`:String(e);if(t===fetch){let e=z.get(r);if(e)return e}let i=(async()=>{try{let r=await t(n?`${h()}/events/${e}?password=${encodeURIComponent(n)}`:`${h()}/events/${e}`);if(!r.ok)return r.status===404?N(`event_not_found`):(R.error(`Failed to fetch event details: ${r.status}`),M(`event_fetch_failed`));let i=await r.json();return i?j(i):N(`event_not_found`)}catch(e){return R.error(`Error fetching event details:`,e),M(`event_fetch_failed`)}})();return t===fetch&&(z.set(r,i),i.finally(()=>{z.get(r)===i&&z.delete(r)})),i}async function Je(e,t=fetch,n){let r=await B(e,t,n);return r.ok?r.data:null}async function V(e,t,n=e=>e){try{let r=await C(e);return r?j(n(r)):(R.error(`Failed to load (${t}): network or server error`),M(t))}catch(e){return R.error(`Error loading (${t}):`,e),M(t)}}function H(e){return Array.isArray(e)?e:[]}async function U(e,t){let n=t?.trim(),r=n?`?promoCode=${encodeURIComponent(n)}`:``;return V(`${h()}/tickets/event/${e}${r}`,`tickets_fetch_failed`,H)}async function Ye(e,t){return P(await U(e,t),[])}async function W(e){return e?V(`${h()}/events/${e}/performers`,`performers_fetch_failed`,e=>Ue(e)):(R.warn(`fetchEventPerformers called without eventId`),M(`performers_missing_event_id`))}async function Xe(e){return P(await W(e),{performers:[],showPerformers:!1})}async function G(e){return e?V(`${h()}/venues/organization/${e}`,`venues_fetch_failed`,H):(R.warn(`fetchAllVenues called without orgId`),M(`venues_missing_org_id`))}async function Ze(e){return P(await G(e),[])}async function K(e){return e?V(`${h()}/events/venue/${e}`,`venue_events_fetch_failed`,H):(R.warn(`fetchVenueEvents called without venueId`),M(`venue_events_missing_venue_id`))}async function Qe(e){return P(await K(e),[])}function $e(e){return Array.isArray(e)?e:Array.isArray(e.events)?e.events:[]}var q=new Map;function et(e,t,n){if(!n?.fresh){let t=q.get(e);if(t)return t}let r=V(e,t,e=>$e(e));return q.set(e,r),r.finally(()=>{q.get(e)===r&&q.delete(e)}),r}async function tt(e,t,n,r){return et(`${h()}/events/venue/${e}/month/${t}/${n}`,`month_events_fetch_failed`,r)}async function nt(e,t,n){return P(await tt(e,t,n),[])}async function rt(e,t,n,r){return et(`${h()}/events/organization/${e}/month/${t}/${n}`,`org_month_events_fetch_failed`,r)}async function it(e,t,n){return P(await rt(e,t,n),[])}async function at(e){return V(`${h()}/series/${e}/occurrences`,`series_occurrences_fetch_failed`)}async function ot(e){let t=await at(e);return t.ok?t.data:null}async function st(e,t){return V(`${h()}/series/${e}/occurrences?venueId=${t}`,`series_cta_fetch_failed`)}async function ct(e,t){let n=await st(e,t);return n.ok?n.data:null}async function lt(e,n){try{let r=n?`?slug=${encodeURIComponent(n)}`:``,i=await C(`${h()}/resolve/${encodeURIComponent(String(e))}${r}`);if(!i||!i.type)throw new t.NotFoundError(`entity`,String(e));return i}catch(e){return R.error(`Error resolving public entity:`,e),null}}async function ut(e,n){try{let r=await C(n?`${h()}/collections/${e}?password=${encodeURIComponent(n)}`:`${h()}/collections/${e}`);if(!r)throw new t.NotFoundError(`collection`,String(e));return r}catch(e){return R.error(`Error fetching collection:`,e),null}}async function dt(e,t){try{return(await C(`${h()}/collections/${e}/check-password`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({password:t})}))?.valid===!0}catch(e){return R.error(`Error checking collection password:`,e),!1}}async function ft(e,t){try{let n=await C(`${h()}/events/${e}/check-password`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({password:t})});return typeof n==`boolean`?{valid:n}:{valid:n?.valid===!0}}catch(e){return R.error(`Error checking event password:`,e),{valid:!1}}}async function pt(e,t){try{let n=t?`${h()}/events/venue/${t}`:e?`${h()}/venues/organization/${e}`:`${h()}/venues/${qe}`;return(await fetch(n,{method:`HEAD`})).status<500}catch(e){return R.error(`Network connection test failed:`,e),!1}}var J=(0,e.createLogger)(`VC`);async function mt(e){try{if(!e)return J.warn(`getVenue called without venueId`),null;let t=await y(`/venues/${e}`);return t.success?t.data??null:(J.error(`Failed to fetch venue: ${t.statusCode}`),null)}catch(e){return J.error(`Error fetching venue:`,e),null}}async function ht(e){let t=await mt(e);return t?{serviceFeePercentage:t.serviceFeePercentage??0,serviceFeeCents:t.serviceFeeCents==null?0:t.serviceFeeCents,taxPercentage:t.taxPercentage??0}:null}async function gt(e){try{if(!e)return J.warn(`getVenueBySlug called without slug`),null;let t=await y(`/venues/slug/${encodeURIComponent(e)}`);return t.success?t.data??null:(J.error(`Failed to fetch venue by slug: ${t.statusCode}`),null)}catch(e){return J.error(`Error fetching venue by slug:`,e),null}}function Y(e,t){return e==null||t(e)}function _t(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.valid===!0&&Number.isInteger(t.appliedAmount)&&typeof t.remainingTotal==`number`&&Number.isFinite(t.remainingTotal)&&Y(t.giftCardCode,e=>typeof e==`string`)&&Y(t.giftCardBalance,e=>typeof e==`number`&&Number.isFinite(e))&&Y(t.fullyCoveredByCard,e=>typeof e==`boolean`)}var vt=`We couldn't apply that gift card. Please try again.`;function yt(e){if(!_t(e))return{valid:!1,error:vt};let t=e,r=(0,n.centsToDollars)((0,n.toCents)(t.appliedAmount)),i=t.remainingTotal,a=t.fullyCoveredByCard??i<=0,o=!a;return{valid:!0,giftCardCode:t.giftCardCode??void 0,giftCardAmount:r,giftCardBalance:t.giftCardBalance??void 0,paymentType:a?`gift_card_only`:`split`,stripeAmount:i,orderTotal:r+i,requiresStripe:o}}var X=(0,e.createLogger)(`VC`);async function bt(e){try{let n=await b(`${_()}/gift-cards/purchase/create`,e);if(!n.success)throw X.error(`Gift card purchase creation failed:`,n.error),new t.ApiError(n.error||`Failed to create gift card purchase`,n.statusCode??0,{endpoint:`${_()}/gift-cards/purchase/create`,method:`POST`});return X.debug(`Gift card purchase created:`,n.data),n.data}catch(e){return X.error(`Gift card purchase creation error:`,e),null}}async function xt(e,t){try{let n=await b(`${_()}/cart/${e}/apply-gift-card`,{giftCardCode:t});if(!n.success)return n.statusCode===429?{valid:!1,error:`Too many attempts. Please wait a moment and try again.`}:(X.error(`Apply gift card failed:`,n.error),{valid:!1,error:n.error||`Invalid gift card code`});let r=yt(n.data);return r.valid||X.error(`Apply gift card returned an unusable payload:`,n.data),r}catch(e){return X.error(`applyGiftCard error:`,e),{valid:!1,error:`Network error. Please check your connection and try again.`}}}async function St(e,t){try{let n=t?.giftCardId?{giftCardId:t.giftCardId}:t?.code?{giftCardCode:t.code}:null,r=await x(`${_()}/cart/${e}/gift-card`,n?{body:JSON.stringify(n)}:void 0);if(!r.success)return X.error(`Remove gift card failed:`,r.error),{success:!1,error:r.error||`Failed to remove gift card`};let i=r.data??{},a=i.newTotal??i.NewTotal;return{success:!0,...typeof a==`number`?{remainingTotal:a}:{}}}catch(e){return X.error(`removeGiftCard error:`,e),{success:!1,error:`Network error. Please check your connection and try again.`}}}async function Ct(e,t){try{let r=await b(`${_()}/cart/${e}/complete-gift-card-payment`,{customerName:(0,n.formatFullName)(t.firstName,t.lastName),customerEmail:t.email,firstName:t.firstName,lastName:t.lastName,email:t.email,phoneNumber:t.phoneNumber||null,mailingList:t.mailingList||!1,attribution:O()});return r.success?{success:!0,orderId:r.data?.orderId,confirmationNumber:r.data?.confirmationNumber}:(X.error(`Complete gift card payment failed:`,r.error),{success:!1,error:r.error||`Failed to complete payment`})}catch(e){return X.error(`completeGiftCardPayment error:`,e),{success:!1,error:`Network error. Please check your connection and try again.`}}}var Z=(0,e.createLogger)(`VC`),wt={waitlist_not_enabled:`Waitlist is not available for this event`,event_not_found:`Event not found`,invalid_phone:`Please enter a valid phone number`,already_purchased:`You have already purchased tickets for this event`,phone_already_registered:`This phone number is already on the waitlist`};async function Tt(e,t,n=null,r=!1){try{let i={email:t};n&&r&&(i.phone=n,i.smsOptIn=!0);let a=await b(`/events/${e}/waitlist`,i);return a.success?{success:!0,updated:a.data?.updated}:(Z.error(`Join waitlist failed:`,a.error),{success:!1,error:wt[a.error??``]||`Failed to join waitlist. Please try again.`})}catch(e){return Z.error(`joinWaitlist error:`,e),{success:!1,error:`Network error. Please check your connection and try again.`}}}async function Et(e,t){try{let n=await b(`/checkout/validate-token/${e}`,{email:t});return n.success?{valid:!0,eventId:n.data?.eventId??0}:{valid:!1,eventId:0,errorCode:n.error}}catch(e){return Z.error(`validateWaitlistToken error:`,e),{valid:!1,eventId:0,errorCode:`invalid_token`}}}async function Dt(e){let t={waitlistEnabled:!1,soldOut:!1,gated:!1};try{let n=await y(`/events/${e}/waitlist/status`);return n.success?{waitlistEnabled:!!n.data?.waitlistEnabled,soldOut:!!n.data?.soldOut,gated:!!n.data?.gated}:t}catch(e){return Z.error(`getWaitlistStatus error:`,e),t}}function Ot(e,t,n={}){let{cancelled:a=!1,isRegistration:o=!1,waitlistEnabled:s=!1}=n,c=(0,r.browserNow)();if(a)return{text:`Cancelled`,disabled:!0,reason:`cancelled`};if((e?.status||``).trim().toLowerCase()===`postponed`)return{text:`Postponed`,disabled:!0,reason:`postponed`};let l=(0,r.toInstantOrNull)(e.endDateTime||e.startDateTime);if(l&&(0,r.compareInstants)(l,c)<0)return{text:`Sales ended`,disabled:!0,reason:`event_past`};let u=(e?.salesStatus||``).trim().toLowerCase();if(u===`paused`)return{text:`Sales paused`,disabled:!0,reason:`sales_paused`};if(u===`ended`)return{text:`Sales ended`,disabled:!0,reason:`sales_ended`};let d=e?.hasPurchasableHiddenTickets===!0||Array.isArray(t)&&t.some(i.isHiddenTicketPurchasable),f=()=>d?{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`}:s?{text:`Join Waitlist`,disabled:!1,reason:`sold_out_waitlist`}:{text:`Sold out`,disabled:!0,reason:`sold_out`};if(u===`sold_out`)return f();let p=(t||[]).filter(e=>e.salesChannel!==2&&!e.isHidden&&!(typeof e.visibility==`number`&&e.visibility>=2));if(p.length===0)return d?{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`}:{text:`No tickets available`,disabled:!0,reason:`no_tickets`};let m=!1,h=!0,g=!0,_=null;for(let e of p){let t=(0,r.toInstantOrNull)(e.salesBegin||e.salesStart||e.saleBegin||e.onSaleStart),n=(0,r.toInstantOrNull)(e.salesEnd||e.saleEnd||e.onSaleEnd),i=e.remainingCapacity??e.quantityRemaining??e.quantity,a=e.soldOut||i!=null&&i<=0,o=t?(0,r.compareInstants)(t,c)>0:!1,s=n?(0,r.compareInstants)(n,c)<0:!1;!a&&!o&&!s&&(m=!0),a||(h=!1),o||(g=!1),o&&t&&!a&&!s&&(!_||(0,r.compareInstants)(t,_)<0)&&(_=t)}if(m)return{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`available`};if(g&&_){if(d)return{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`};let e=(0,r.compareInstants)(_,c),t=e/36e5,n=e/864e5,i=e=>(0,r.formatLocal)(e,{hour:`numeric`,minute:`2-digit`,hour12:!0},`en-US`),a;return a=t<24?i(_):n<=7?(0,r.formatLocal)(_,{weekday:`short`,hour:`numeric`,minute:`2-digit`,hour12:!0},`en-US`):`${(0,r.formatLocal)(_,{month:`short`,day:`numeric`},`en-US`)} ${i(_)}`,{text:`On sale ${a}`,disabled:!0,reason:`coming_soon`}}return h?f():d?{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`}:{text:`Sales ended`,disabled:!0,reason:`sales_ended`}}function kt(e){let t=e;return{uuid:t.uuid||String(t.id||t.ID||``),id:t.id||t.ID,ticketNumber:t.ticketNumber||t.ticket_number,orderId:t.orderId||t.order_id,attendeeFirstName:t.attendeeFirstName||t.attendee_first_name||t.firstName,attendeeLastName:t.attendeeLastName||t.attendee_last_name||t.lastName,attendeeEmail:t.attendeeEmail||t.attendee_email||t.email,ticketName:t.ticketName||t.ticket_name||t.name||``,ticketTypeId:t.ticketTypeId||t.ticket_type_id,purchasePrice:t.purchasePrice||t.purchase_price||t.price||0,status:t.status,checkedIn:t.checkedIn||t.checked_in,checkedInAt:t.checkedInAt||t.checked_in_at}}function At(e){let t=e,n=t.purchasedTickets||t.tickets||t.purchased_tickets||[];return{uuid:t.uuid||String(t.id||t.ID||``),id:t.id||t.ID,customerEmail:t.customerEmail||t.email||t.customer_email||``,customerFirstName:t.customerFirstName||t.firstName||t.first_name,customerLastName:t.customerLastName||t.lastName||t.last_name,status:t.status||`unknown`,totalAmount:t.totalAmount||t.total||t.total_amount||0,subtotal:t.subtotal,serviceFeesAmount:t.serviceFeesAmount||t.serviceFee||t.service_fee||t.service_fees_amount||0,taxAmount:t.taxAmount||t.tax||t.tax_amount||0,discount:t.discount==null?0:t.discount,paymentIntentId:t.paymentIntentId||t.payment_intent_id,paymentMethod:t.paymentMethod||t.payment_method,purchasedTickets:n.map(kt),createdAt:t.createdAt||t.created_at,updatedAt:t.updatedAt||t.updated_at}}var jt=kt,Mt=At;function Nt(e){let t=At(e),r=t.uuid.split(`-`)[0]||t.uuid,i=Number(t.totalAmount);return{orderId:t.uuid,displayOrderId:r,email:t.customerEmail,customerName:[t.customerFirstName,t.customerLastName].filter(Boolean).join(` `),total:t.totalAmount,formattedTotal:`${(0,n.formatCurrency)((0,n.asUSD)(Number.isFinite(i)?i/100:0))}`,ticketCount:t.purchasedTickets.length,status:t.status}}function Pt(e){return(0,n.resolveImageUrl)(e,{cdn:!0})}function Q(e){return Pt(e.imageUrl||e.imageURL||e.image_url||e.image||``)}function Ft(e){switch(e){case`available`:case`sold_out`:case`coming_soon`:case`ended`:return e;default:return null}}function It(e){let t=e.ctaState||e.cta_state;if(t){let e=Ft(t);if(e)return e}if(e.isCancelled||e.is_cancelled)return`ended`;let n=(0,r.toInstantOrNull)(e.startDateTime||e.start_date_time||e.date);if(n){let e=Date.now();if(n.getTime()<e)return`ended`}let i=e.ticketsAvailable??e.tickets_available;if(i!==void 0)return i<=0?`sold_out`:`available`;let a=e.availableTickets||e.available_tickets||e.tickets||[];return a.length===0?`coming_soon`:a.reduce((e,t)=>{let n=t.quantityAvailable??t.quantity_available??t.quantity??0,r=t.quantitySold??t.quantity_sold??0;return e+Math.max(0,n-r)},0)<=0?`sold_out`:`available`}function Lt(e){let t=e;return{id:t.id||t.ID,name:t.name||t.ticketName||``,description:t.description,price:t.price==null?0:t.price,quantity:t.quantity||t.totalQuantity||0,quantitySold:t.quantitySold||t.quantity_sold||0,quantityAvailable:t.quantityAvailable||t.quantity_available||(t.quantity||0)-(t.quantitySold||0),minPerOrder:t.minPerOrder||t.min_per_order||1,maxPerOrder:t.maxPerOrder||t.max_per_order||10,saleStartDate:t.saleStartDate||t.sale_start_date,saleEndDate:t.saleEndDate||t.sale_end_date,isHidden:t.isHidden||t.is_hidden||!1,revealWithPromoCode:t.revealWithPromoCode||t.reveal_with_promo_code,ticketType:t.ticketType||t.ticket_type||0,sectionId:t.sectionId||t.section_id,sortOrder:t.sortOrder||t.sort_order||0}}function $(e){let t=e,n=(t.availableTickets||t.available_tickets||t.tickets||[]).map(Lt),r=n.map(e=>e.price).filter(e=>e>0),i=r.length>0?Math.min(...r):void 0,a=r.length>0?Math.max(...r):void 0;return{eventID:t.eventID||t.id||t.ID||0,id:t.id||t.ID,name:t.name||t.title||``,title:t.title||t.name,slug:t.slug,description:t.description,date:t.date||t.startDateTime||t.start_date_time||``,startDateTime:t.startDateTime||t.start_date_time,endDateTime:t.endDateTime||t.end_date_time,doorsOpenTime:t.doorsOpenTime||t.doors_open_time,timezone:t.timezone||t.time_zone,venueId:t.venueId||t.venue_id,venueName:t.venueName||t.venue_name,venueAddress:t.venueAddress||t.venue_address,location:t.location||t.venueAddress||t.venue_address,imageUrl:Q(t),imageURL:Q(t),status:t.status,isPublished:t.isPublished??t.is_published,isCancelled:t.isCancelled??t.is_cancelled,availableTickets:n,ticketsAvailable:t.ticketsAvailable??t.tickets_available??n.reduce((e,t)=>e+(t.quantityAvailable||0),0),ticketsSold:t.ticketsSold??t.tickets_sold,minPrice:t.minPrice??t.min_price??i,maxPrice:t.maxPrice??t.max_price??a,ctaText:t.ctaText||t.cta_text,ctaState:It(t),showPerformers:t.showPerformers??t.show_performers,eventSeriesId:t.eventSeriesId||t.event_series_id,seriesInstanceNumber:t.seriesInstanceNumber||t.series_instance_number,timeZone:t.timeZone,salesStatus:t.salesStatus||t.sales_status,eventSummary:t.eventSummary,password:t.password,hasPassword:t.hasPassword,disclaimer:t.disclaimer,ticketType:t.ticketType,eventTicketingType:t.eventTicketingType,ageRestriction:t.ageRestriction,displayAgeRestriction:t.displayAgeRestriction,displayStartTime:t.displayStartTime,displayEndTime:t.displayEndTime,displayDoorsTime:t.displayDoorsTime,collectionId:t.collectionId||t.collection_id,ticketsRemaining:t.ticketsRemaining,ticketsTotal:t.ticketsTotal,hasHiddenTickets:t.hasHiddenTickets,stage:t.stage,stageName:t.stageName,stageId:t.stageId,eventCategoryTypes:t.eventCategoryTypes,publicPerformers:t.publicPerformers,collectionIds:t.collectionIds,venue:t.venue,performers:t.performers,faqs:t.faqs,showtimes:t.showtimes,purchasedTickets:t.purchasedTickets}}var Rt=Lt,zt=$,Bt=$;function Vt(e){return(0,n.resolveImageUrl)(e,{cdn:!0})}function Ht(e){let t=e,n=t.logoUrl||t.logo_url||t.logo;return{id:t.id||t.ID||0,name:t.name||``,slug:t.slug,address:t.address,googleLocationNameCache:t.googleLocationNameCache||t.google_location_name_cache,city:t.city,state:t.state,zipCode:t.zipCode||t.zip_code,country:t.country,timezone:t.timezone||t.time_zone,logoUrl:Vt(n),serviceFeePercentage:t.serviceFeePercentage??t.service_fee_percentage??0,serviceFeeCents:t.serviceFeeCents??t.service_fee_cents??0,absorbServiceFee:(t.absorbServiceFee??t.absorb_service_fee)===!0,taxPercentage:t.taxPercentage??t.tax_percentage??0,organizationId:t.organizationId||t.organization_id}}var Ut=Ht;function Wt(e){let t=e;return{serviceFeePercentage:t.serviceFeePercentage??t.service_fee_percentage??0,serviceFeeCents:t.serviceFeeCents??t.service_fee_cents??0,taxPercentage:t.taxPercentage??t.tax_percentage??0}}function Gt(e){return[e.address,e.city,e.state,e.zipCode].filter(Boolean).join(`, `)}exports.apiDelete=x,exports.apiGet=y,exports.apiPost=b,exports.apiPut=ne,exports.applyGiftCard=xt,exports.applyPromoCode=Ve,exports.calculateCtaState=It,exports.cancelReservation=je,exports.checkCollectionPassword=dt,exports.checkEventPassword=ft,exports.completeGiftCardPayment=Ct,exports.completeReservation=Ae,exports.computeCtaState=Ot,exports.configureApi=p,exports.createGiftCardPurchase=bt,exports.createOrder=Me,exports.createPaymentIntent=De,exports.err=M,exports.errNotFound=N,exports.extendCheckoutSession=Fe,exports.extractVenueFees=Wt,exports.fetchAllVenues=Ze,exports.fetchAllVenuesResult=G,exports.fetchEventDetails=Je,exports.fetchEventDetailsResult=B,exports.fetchEventPerformers=Xe,exports.fetchEventPerformersResult=W,exports.fetchEventTickets=Ye,exports.fetchEventTicketsResult=U,exports.fetchPublicCollection=ut,exports.fetchSeriesOccurrences=ct,exports.fetchSeriesOccurrencesResult=st,exports.fetchVenueEvents=Qe,exports.fetchVenueEventsResult=K,exports.formatVenueAddress=Gt,exports.getApiConfig=m,exports.getCDNImageUrl=Pt,exports.getCartByUUID=Oe,exports.getClientIP=ee,exports.getEventImageUrl=Q,exports.getLegacyPublicUrl=g,exports.getMonthEvents=nt,exports.getMonthEventsResult=tt,exports.getOrder=Ne,exports.getOrdersV2Url=_,exports.getOrgMonthEvents=it,exports.getOrgMonthEventsResult=rt,exports.getPublicBaseUrl=h,exports.getSeriesOccurrences=ot,exports.getSeriesOccurrencesResult=at,exports.getSessionStatus=Ie,exports.getVenue=mt,exports.getVenueBySlug=gt,exports.getVenueFees=ht,exports.getWaitlistStatus=Dt,exports.hasPromoCodes=Be,exports.initiateOrder=Le,exports.isErr=Ge,exports.isOk=We,exports.joinWaitlist=Tt,exports.ok=j,exports.removeGiftCard=St,exports.removePromoCode=He,exports.resolvePublicEntity=lt,exports.testNetworkConnection=pt,exports.trackUTMSource=Re,exports.transformAvailableTicket=Rt,exports.transformEvent=zt,exports.transformEventData=Bt,exports.transformOrder=Mt,exports.transformOrderForDisplay=Nt,exports.transformTicket=jt,exports.transformVenue=Ut,exports.unwrapOr=P,exports.updateCartQuantities=ke,exports.validatePaymentIntent=Pe,exports.validatePromoCode=ze,exports.validateWaitlistToken=Et;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@getmicdrop/svelte-components/utils/logger"),t=require("@getmicdrop/svelte-components/errors"),n=require("@getmicdrop/svelte-components"),r=require("@getmicdrop/svelte-components/datetime"),i=require("@getmicdrop/svelte-components/transforms");require("@getmicdrop/svelte-components/utils/timezones"),require("@getmicdrop/svelte-components/utils/formatters"),(0,e.createLogger)(`VC:config`,{enabled:!0});var a=(0,e.createLogger)(`VC`),o=new Set;function s(e){if(e)for(let t of o)try{t(e)}catch{}}var c=`ABORTED`;function l(e,t){let n=t||void 0;return n?{...e,"X-Widget-Key":n}:e}function u(e,t){let n=`HTTP ${t}`;if(!e||typeof e!=`object`)return{message:n};let r=e,i=r.error&&typeof r.error==`object`?r.error:null,a=typeof r.code==`string`?r.code:typeof i?.code==`string`?i.code:void 0;return{message:typeof r.error==`string`?r.error:typeof i?.message==`string`?i.message:typeof r.message==`string`?r.message:n,code:a}}var d=class extends Error{code;statusCode;constructor(e,t,n){super(e),this.name=`ApiRequestError`,this.code=t,this.statusCode=n}},f={baseUrl:`https://get-micdrop.com`,timeout:3e4,retries:2,retryDelay:500,onError:e=>a.error(`API Error:`,e)};function p(e){f={...f,...e}}function m(){return{...f}}function h(){return`${f.baseUrl}/api/v2/public`}function g(){return`${f.baseUrl}/api/public`}function _(){return`${f.baseUrl}/api/orders/v2/public`}async function ee(){return``}var te=e=>new Promise(t=>setTimeout(t,e));async function v(e,t,n){let r=(t.method||`GET`).toUpperCase(),i=r===`GET`||r===`HEAD`?n.retries+1:1,a;for(let r=1;r<=i;r++){let o=new AbortController,s=setTimeout(()=>o.abort(),n.timeout),c=t.signal,l;c&&(c.aborted?o.abort():(l=()=>o.abort(),c.addEventListener(`abort`,l,{once:!0})));try{let n=await fetch(e,{...t,signal:o.signal});if(n.status>=500&&r<i)a=Error(`HTTP ${n.status}`);else return n}catch(e){if(a=e,c?.aborted)throw e}finally{clearTimeout(s),c&&l&&c.removeEventListener(`abort`,l)}r<i&&await te(n.retryDelay*2**(r-1))}throw a}async function y(e,t){return S(`GET`,e,void 0,t)}async function b(e,t,n){return S(`POST`,e,t,n)}async function ne(e,t,n){return S(`PUT`,e,t,n)}async function x(e,t){return S(`DELETE`,e,void 0,t)}async function S(e,t,n,r){let i=t.startsWith(`http`)||t.startsWith(`/api/`)?t:`${h()}${t}`,{widgetKey:a,suppressOnError:o,headers:p,...m}=r??{},g=e=>{o||f.onError(e)};try{let t=await v(i,{method:e,headers:l({"Content-Type":`application/json`,...p},a),body:n===void 0?void 0:JSON.stringify(n),...m},f);if(!t.ok){let{message:e,code:n}=u(await t.json().catch(()=>({})),t.status);return g(new d(e,n,t.status)),s(n),{success:!1,error:e,errorCode:n,statusCode:t.status}}return{success:!0,data:await t.json(),statusCode:t.status}}catch(e){if(r?.signal?.aborted)return{success:!1,error:`Request aborted`,errorCode:c,aborted:!0};let t=e instanceof Error?e.name===`AbortError`?`Request timed out`:e.message:`Unknown error`;return g(e instanceof Error?e:Error(t)),{success:!1,error:t}}}async function C(e,t){try{let n=e.startsWith(f.baseUrl),{widgetKey:r,...i}=t??{},o=await v(e,{...i,...n?{headers:l(i.headers,r)}:{}},f);if(!o.ok){let e=await o.json().catch(()=>({}));return a.error(`API request failed: ${o.status}`,e),null}return o.json()}catch(e){return a.error(`API request error:`,e),null}}function re(e){let t=e??{};return{ticketID:Number(t.TicketID??t.ticketID??0),quantity:Number(t.Quantity??t.quantity??0),priceAtReservation:Number(t.PriceAtReservation??t.priceAtReservation??0),status:String(t.Status??t.status??``)}}function ie(e){let t=e??{},r=t.Amount??t.amount,i=Number(r);return{giftCardId:Number(t.GiftCardID??t.giftCardId??0),maskedCode:String(t.MaskedCode??t.maskedCode??``),amount:r==null||!Number.isFinite(i)?null:(0,n.centsToDollars)((0,n.toCents)(i))}}function ae(e){let t=e??{};return{uuid:t.UUID??t.uuid??``,eventID:Number(t.EventID??t.eventID??0),status:t.Status??t.status??``,expiresAt:t.ExpiresAt??t.expiresAt??``,reservations:(t.Reservations??t.reservations??[]).map(re),giftCards:(t.GiftCards??t.giftCards??[]).map(ie)}}var oe=[`utmSource`,`utmMedium`,`utmCampaign`,`utmContent`,`utmTerm`],se={utmSource:`utm_source`,utmMedium:`utm_medium`,utmCampaign:`utm_campaign`,utmContent:`utm_content`,utmTerm:`utm_term`},ce=`direct`;function le(e){return e?e.trim().toLowerCase().replace(/\s+/g,`_`):``}function ue(e){let t={};for(let n of oe)t[n]=le(e[n]);return t.utmSource||=ce,t}function de(e){let t={};for(let n of oe)t[n]=e.get(se[n]);return ue(t)}var w={search:null,referrer:null,pageUrl:null};function fe(){if(typeof window>`u`)return!0;try{return window.self===window.top}catch{return!1}}function pe(){let e=typeof window<`u`,t=fe(),n=w.search??(e?window.location.search:``),r=w.referrer??(typeof document<`u`?document.referrer:``)??``,i=w.pageUrl??(e&&t?window.location.href:``);return{utm:de(new URLSearchParams(n)),referrer:r||``,pageUrl:i||``}}var me=null,he=!1;function ge(){return typeof window<`u`&&typeof window.__tcfapi==`function`}function _e(){return typeof navigator<`u`&&navigator.globalPrivacyControl===!0}function ve(){return me===null?ge()||_e():me}function ye(){return!ve()||he}var be=`micdrop_session_id`,T=`micdrop_visitor_id`,xe=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function E(e){return typeof e==`string`&&xe.test(e)}function D(){let e=typeof crypto<`u`?crypto:void 0;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)e.getRandomValues(t);else for(let e=0;e<16;e++)t[e]=Math.floor(Math.random()*256);t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=[];for(let e=0;e<16;e++)n.push(t[e].toString(16).padStart(2,`0`));return`${n[0]}${n[1]}${n[2]}${n[3]}-${n[4]}${n[5]}-${n[6]}${n[7]}-${n[8]}${n[9]}-${n[10]}${n[11]}${n[12]}${n[13]}${n[14]}${n[15]}`}function Se(){let e=(0,n.getSessionStorage)(be);return e||(e=D(),(0,n.setSessionStorage)(be,e)),e}function Ce(e){let t=(0,n.getLocalStorage)(T);if(E(t))return{id:t,createdAt:e,migrated:!0};if(t&&typeof t==`object`){let{id:n,createdAt:r}=t;if(!E(n))return null;let i=typeof r==`number`&&Number.isFinite(r),a=i?Math.min(r,e):e;return{id:n,createdAt:a,migrated:!i||a!==r}}return null}function we(){if(!ye())return null;let e=Date.now(),t=Ce(e);if(t&&e-t.createdAt<34128e6){if(t.migrated){let e={id:t.id,createdAt:t.createdAt};(0,n.setLocalStorage)(T,e)}return t.id}let r=D();return(0,n.setLocalStorage)(T,{id:r,createdAt:e}),r}var Te=`micdrop_attribution`;function Ee(){let e=(0,n.getSessionStorage)(Te);return!e||!e.utm||typeof e.utm.utmSource!=`string`?null:e}function O(){let e=Ee()??pe();return{sessionId:Se(),visitorId:we(),utmSource:e.utm.utmSource,utmMedium:e.utm.utmMedium,utmCampaign:e.utm.utmCampaign,utmContent:e.utm.utmContent,utmTerm:e.utm.utmTerm,referrer:e.referrer||``}}(0,n.createLogger)(`tracking`);var k=(0,e.createLogger)(`VC`);async function De(e,n,r,i){try{let a=await b(`${_()}/cart/${e}/payment-intent`,{productQuantities:n,...r&&Object.keys(r).length>0?{donationAmounts:r}:{},...i?{firstName:i.firstName,lastName:i.lastName,email:i.email,mailingList:i.mailingList??!1}:{},attribution:O()});if(!a.success)throw k.error(`Payment intent creation failed:`,a.error),new t.ApiError(a.error||`Failed to create payment intent`,a.statusCode??0,{endpoint:`${_()}/cart/${e}/payment-intent`,method:`POST`});return k.debug(`Payment intent created:`,a.data),a.data}catch(e){return k.error(`createPaymentIntent error:`,e),null}}async function Oe(e,t){if(!e)return null;try{let n=await y(`${_()}/cart/${e}`);if(!n.success)return null;let{uuid:r,eventID:i,status:a,expiresAt:o,reservations:s,giftCards:c}=ae(n.data);return a!==`reserved`&&a!==`active`||t!==void 0&&i!==Number(t)?null:{uuid:r,eventID:i,status:a,expiresAt:o,reservations:s,giftCards:c}}catch(e){return k.error(`getCartByUUID error:`,e),null}}async function ke(e,t,n){try{let r={};for(let[e,n]of Object.entries(t)){let t=typeof e==`number`?e:parseInt(e,10);!Number.isNaN(t)&&n>0&&(r[t]=n)}let i={};if(n)for(let[e,t]of Object.entries(n)){let n=typeof e==`number`?e:parseInt(e,10);!Number.isNaN(n)&&t>0&&(i[n]=t)}let a=await fetch(`${_()}/cart/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({quantities:r,...Object.keys(i).length>0?{donationAmounts:i}:{}})});if(!a.ok){let e=await a.json().catch(()=>({}));return k.error(`Cart update failed:`,e),!1}return!0}catch(e){return k.error(`updateCartQuantities error:`,e),!1}}async function Ae(e){try{let t=await b(`${h()}/orders/complete/${e}`);return t.success?{success:!0,message:t.data?.message}:{success:!1,error:t.error||`Failed to complete reservation`}}catch(e){return k.error(`Error completing reservation:`,e),{success:!1,error:`Network error completing reservation`}}}async function je(e){try{let t=await b(`${h()}/orders/cancel/${e}`);return t.success?{success:!0,message:t.data?.message}:{success:!1,error:t.error||`Failed to cancel reservation`}}catch(e){return k.error(`Error cancelling reservation:`,e),{success:!1,error:`Network error cancelling reservation`}}}async function Me(e,t){try{let n=await b(`${h()}/orders/create`,{eventID:e,promoCode:t,attribution:O()});return n.success?n.data:(k.error(`Create order failed:`,n.error),null)}catch(e){return k.error(`createOrder error:`,e),null}}async function Ne(e){return C(`${h()}/orders/${e}`)}async function Pe(e,t){try{let n=await b(`${_()}/validatePaymentIntent/${e}`,{...t,attribution:O()});if(!n.success)return k.error(`Payment validation failed:`,n.error),{success:!1,status:`failed`,error:n.error||`Payment validation failed`};let r=n.data;return r.eventCanceled||r.eventPostponed?{success:!1,status:`failed`,eventCanceled:r.eventCanceled,eventPostponed:r.eventPostponed}:{success:!0,status:r.status||`Payment succeeded`,orderUUID:r.orderUUID||r.uuid}}catch(e){return k.error(`validatePaymentIntent error:`,e),null}}async function Fe(e){try{let t=await b(`${h()}/orders/extend-session`,{orderUuid:e});if(!t.success)return{success:!1,error:t.error||`Failed to extend session`,statusCode:t.statusCode};let n=t.data;return{success:!0,newExpiryTime:n.newExpiryTime,remainingExtensions:n.remainingExtensions}}catch(e){return k.error(`Error extending checkout session:`,e),{success:!1,error:`Network error extending session`}}}async function Ie(e){try{let t=await y(`${h()}/orders/session/${e}`);if(!t.success)return{error:t.error||`No active session found`,notFound:t.statusCode===404};let n=t.data;return{expiresAt:n.expiresAt,extensionCount:n.extensionCount,remainingExtensions:n.remainingExtensions,canExtend:n.canExtend,reservationCount:n.reservationCount,eventStatus:n.eventStatus}}catch(e){return k.error(`Error getting session status:`,e),{error:`Network error getting session status`}}}async function Le(e={eventID:``}){try{let t=await b(`${h()}/orders/create`,{...e,attribution:O()});return t.success?t.data?.uuid??null:(k.error(`Order initiation failed:`,t.error),null)}catch(e){return k.error(`initiateOrder error:`,e),null}}async function Re(e){if(typeof window>`u`)return;let t=le(new URLSearchParams(window.location.search).get(`utm_source`))||`direct`;try{await fetch(`${h()}/utm/${e}/${encodeURIComponent(t)}`)}catch(e){k.error(`UTM tracking failed:`,e)}}var A=(0,e.createLogger)(`VC`);async function ze(e,t){try{if(!t||!t.trim())return{valid:!1,error:`Promo code is required`};let n=await y(`/promo-codes/validate/${e}/${encodeURIComponent(t.trim())}`);if(!n.success)return n.statusCode===404?{valid:!1,error:`Invalid promo code`}:{valid:!1,error:`Failed to validate code`};let r=n.data;return{valid:r.valid??!0,revealHiddenTickets:r.revealHiddenTickets,revealTicketIds:r.revealTicketIds,provideDiscount:r.provideDiscount,discountType:r.discountType,amount:r.discount??r.amount,code:r.name||r.code||t,appliesToAllTickets:r.appliesToAllTickets,applyToTicketIds:r.applyToTicketIds}}catch(e){return A.error(`Error validating promo code:`,e),{valid:!1,error:`Network error validating code`}}}async function Be(e){try{let t=await y(`/promo-codes/check/${e}`);return!t.success||t.data.hasPromoCodes===!0}catch(e){return A.error(`Error checking promo codes availability:`,e),!0}}async function Ve(e,t,n){try{let r={promoCode:t};n&&Object.keys(n).length>0&&(r.productQuantities=n);let i=await b(`${_()}/cart/${e}/apply-promo`,r);return i.success?{success:!0}:{success:!1,error:i.error||`Failed to apply promo code`}}catch(e){return A.error(`Error applying promo code:`,e),{success:!1,error:`Network error applying code`}}}async function He(e){try{let t=await b(`/orders/${e}/remove-promo`);return t.success?{success:!0}:{success:!1,error:t.error||`Failed to remove promo code`}}catch(e){return A.error(`Error removing promo code:`,e),{success:!1,error:`Network error removing code`}}}function Ue(e){let t=e??{};return{performers:Array.isArray(t.performers)?t.performers:[],showPerformers:t.showPerformers===!0}}function j(e){return{ok:!0,data:e}}function M(e){return{ok:!1,error:e}}function N(e){return{ok:!1,error:e,notFound:!0}}function We(e){return e.ok}function Ge(e){return!e.ok}function P(e,t){return e.ok?e.data:t}var F=`/api/v2/public`,I=`/api/orders/v2/public`,Ke=`/api/orders/v2`,qe=`00000000-0000-0000-0000-000000000000`,L=qe;`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}${L}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}`,`${F}${L}`,`${I}`,`${I}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${I}`,`${I}${L}`,`${Ke}`,`${Ke}`,`${I}`,`${I}`,`${I}`,`${I}`,`${F}`,`${F}${L}`,`${F}`,`${F}`;var R=(0,e.createLogger)(`VC`),z=new Map;async function B(e,t=fetch,n){let r=n?`${e}:pw`:String(e);if(t===fetch){let e=z.get(r);if(e)return e}let i=(async()=>{try{let r=await t(n?`${h()}/events/${e}?password=${encodeURIComponent(n)}`:`${h()}/events/${e}`);if(!r.ok)return r.status===404?N(`event_not_found`):(R.error(`Failed to fetch event details: ${r.status}`),M(`event_fetch_failed`));let i=await r.json();return i?j(i):N(`event_not_found`)}catch(e){return R.error(`Error fetching event details:`,e),M(`event_fetch_failed`)}})();return t===fetch&&(z.set(r,i),i.finally(()=>{z.get(r)===i&&z.delete(r)})),i}async function Je(e,t=fetch,n){let r=await B(e,t,n);return r.ok?r.data:null}async function V(e,t,n=e=>e){try{let r=await C(e);return r?j(n(r)):(R.error(`Failed to load (${t}): network or server error`),M(t))}catch(e){return R.error(`Error loading (${t}):`,e),M(t)}}function H(e){return Array.isArray(e)?e:[]}async function U(e,t){let n=t?.trim(),r=n?`?promoCode=${encodeURIComponent(n)}`:``;return V(`${h()}/tickets/event/${e}${r}`,`tickets_fetch_failed`,H)}async function Ye(e,t){return P(await U(e,t),[])}async function W(e){return e?V(`${h()}/events/${e}/performers`,`performers_fetch_failed`,e=>Ue(e)):(R.warn(`fetchEventPerformers called without eventId`),M(`performers_missing_event_id`))}async function Xe(e){return P(await W(e),{performers:[],showPerformers:!1})}async function G(e){return e?V(`${h()}/venues/organization/${e}`,`venues_fetch_failed`,H):(R.warn(`fetchAllVenues called without orgId`),M(`venues_missing_org_id`))}async function Ze(e){return P(await G(e),[])}async function K(e){return e?V(`${h()}/events/venue/${e}`,`venue_events_fetch_failed`,H):(R.warn(`fetchVenueEvents called without venueId`),M(`venue_events_missing_venue_id`))}async function Qe(e){return P(await K(e),[])}function $e(e){return Array.isArray(e)?e:Array.isArray(e.events)?e.events:[]}var q=new Map;function et(e,t,n){if(!n?.fresh){let t=q.get(e);if(t)return t}let r=V(e,t,e=>$e(e));return q.set(e,r),r.finally(()=>{q.get(e)===r&&q.delete(e)}),r}async function tt(e,t,n,r){return et(`${h()}/events/venue/${e}/month/${t}/${n}`,`month_events_fetch_failed`,r)}async function nt(e,t,n){return P(await tt(e,t,n),[])}async function rt(e,t,n,r){return et(`${h()}/events/organization/${e}/month/${t}/${n}`,`org_month_events_fetch_failed`,r)}async function it(e,t,n){return P(await rt(e,t,n),[])}async function at(e){return V(`${h()}/series/${e}/occurrences`,`series_occurrences_fetch_failed`)}async function ot(e){let t=await at(e);return t.ok?t.data:null}async function st(e,t){return V(`${h()}/series/${e}/occurrences?venueId=${t}`,`series_cta_fetch_failed`)}async function ct(e,t){let n=await st(e,t);return n.ok?n.data:null}async function lt(e,n){try{let r=n?`?slug=${encodeURIComponent(n)}`:``,i=await C(`${h()}/resolve/${encodeURIComponent(String(e))}${r}`);if(!i||!i.type)throw new t.NotFoundError(`entity`,String(e));return i}catch(e){return R.error(`Error resolving public entity:`,e),null}}async function ut(e,n){try{let r=await C(n?`${h()}/collections/${e}?password=${encodeURIComponent(n)}`:`${h()}/collections/${e}`);if(!r)throw new t.NotFoundError(`collection`,String(e));return r}catch(e){return R.error(`Error fetching collection:`,e),null}}async function dt(e,t){try{return(await C(`${h()}/collections/${e}/check-password`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({password:t})}))?.valid===!0}catch(e){return R.error(`Error checking collection password:`,e),!1}}async function ft(e,t){try{let n=await C(`${h()}/events/${e}/check-password`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({password:t})});return typeof n==`boolean`?{valid:n}:{valid:n?.valid===!0}}catch(e){return R.error(`Error checking event password:`,e),{valid:!1}}}async function pt(e,t){try{let n=t?`${h()}/events/venue/${t}`:e?`${h()}/venues/organization/${e}`:`${h()}/venues/${qe}`;return(await fetch(n,{method:`HEAD`})).status<500}catch(e){return R.error(`Network connection test failed:`,e),!1}}var J=(0,e.createLogger)(`VC`);async function mt(e){try{if(!e)return J.warn(`getVenue called without venueId`),null;let t=await y(`/venues/${e}`);return t.success?t.data??null:(J.error(`Failed to fetch venue: ${t.statusCode}`),null)}catch(e){return J.error(`Error fetching venue:`,e),null}}async function ht(e){let t=await mt(e);return t?{serviceFeePercentage:t.serviceFeePercentage??0,serviceFeeCents:t.serviceFeeCents==null?0:t.serviceFeeCents,taxPercentage:t.taxPercentage??0}:null}async function gt(e){try{if(!e)return J.warn(`getVenueBySlug called without slug`),null;let t=await y(`/venues/slug/${encodeURIComponent(e)}`);return t.success?t.data??null:(J.error(`Failed to fetch venue by slug: ${t.statusCode}`),null)}catch(e){return J.error(`Error fetching venue by slug:`,e),null}}function Y(e,t){return e==null||t(e)}function _t(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.valid===!0&&Number.isInteger(t.appliedAmount)&&typeof t.remainingTotal==`number`&&Number.isFinite(t.remainingTotal)&&Y(t.giftCardCode,e=>typeof e==`string`)&&Y(t.giftCardBalance,e=>typeof e==`number`&&Number.isFinite(e))&&Y(t.fullyCoveredByCard,e=>typeof e==`boolean`)}var vt=`We couldn't apply that gift card. Please try again.`;function yt(e){if(!_t(e))return{valid:!1,error:vt};let t=e,r=(0,n.centsToDollars)((0,n.toCents)(t.appliedAmount)),i=t.remainingTotal,a=t.fullyCoveredByCard??i<=0,o=!a;return{valid:!0,giftCardCode:t.giftCardCode??void 0,giftCardAmount:r,giftCardBalance:t.giftCardBalance??void 0,paymentType:a?`gift_card_only`:`split`,stripeAmount:i,orderTotal:r+i,requiresStripe:o}}var X=(0,e.createLogger)(`VC`);async function bt(e){try{let n=await b(`${_()}/gift-cards/purchase/create`,e);if(!n.success)throw X.error(`Gift card purchase creation failed:`,n.error),new t.ApiError(n.error||`Failed to create gift card purchase`,n.statusCode??0,{endpoint:`${_()}/gift-cards/purchase/create`,method:`POST`});return X.debug(`Gift card purchase created:`,n.data),n.data}catch(e){return X.error(`Gift card purchase creation error:`,e),null}}async function xt(e,t){try{let n=await b(`${_()}/cart/${e}/apply-gift-card`,{giftCardCode:t});if(!n.success)return n.statusCode===429?{valid:!1,error:`Too many attempts. Please wait a moment and try again.`}:(X.error(`Apply gift card failed:`,n.error),{valid:!1,error:n.error||`Invalid gift card code`});let r=yt(n.data);return r.valid||X.error(`Apply gift card returned an unusable payload:`,n.data),r}catch(e){return X.error(`applyGiftCard error:`,e),{valid:!1,error:`Network error. Please check your connection and try again.`}}}async function St(e,t){try{let n=t?.giftCardId?{giftCardId:t.giftCardId}:t?.code?{giftCardCode:t.code}:null,r=await x(`${_()}/cart/${e}/gift-card`,n?{body:JSON.stringify(n)}:void 0);if(!r.success)return X.error(`Remove gift card failed:`,r.error),{success:!1,error:r.error||`Failed to remove gift card`};let i=r.data??{},a=i.newTotal??i.NewTotal;return{success:!0,...typeof a==`number`?{remainingTotal:a}:{}}}catch(e){return X.error(`removeGiftCard error:`,e),{success:!1,error:`Network error. Please check your connection and try again.`}}}async function Ct(e,t){try{let r=await b(`${_()}/cart/${e}/complete-gift-card-payment`,{customerName:(0,n.formatFullName)(t.firstName,t.lastName),customerEmail:t.email,firstName:t.firstName,lastName:t.lastName,email:t.email,phoneNumber:t.phoneNumber||null,mailingList:t.mailingList||!1,attribution:O()});return r.success?{success:!0,orderId:r.data?.orderId,confirmationNumber:r.data?.confirmationNumber}:(X.error(`Complete gift card payment failed:`,r.error),{success:!1,error:r.error||`Failed to complete payment`})}catch(e){return X.error(`completeGiftCardPayment error:`,e),{success:!1,error:`Network error. Please check your connection and try again.`}}}var Z=(0,e.createLogger)(`VC`),wt={waitlist_not_enabled:`Waitlist is not available for this event`,event_not_found:`Event not found`,invalid_phone:`Please enter a valid phone number`,already_purchased:`You have already purchased tickets for this event`,phone_already_registered:`This phone number is already on the waitlist`};async function Tt(e,t,n=null,r=!1){try{let i={email:t};n&&r&&(i.phone=n,i.smsOptIn=!0);let a=await b(`/events/${e}/waitlist`,i);return a.success?{success:!0,updated:a.data?.updated}:(Z.error(`Join waitlist failed:`,a.error),{success:!1,error:wt[a.error??``]||`Failed to join waitlist. Please try again.`})}catch(e){return Z.error(`joinWaitlist error:`,e),{success:!1,error:`Network error. Please check your connection and try again.`}}}async function Et(e,t){try{let n=await b(`/checkout/validate-token/${e}`,{email:t});return n.success?{valid:!0,eventId:n.data?.eventId??0,expiresAt:n.data?.expiresAt}:{valid:!1,eventId:0,errorCode:n.error}}catch(e){return Z.error(`validateWaitlistToken error:`,e),{valid:!1,eventId:0,errorCode:`invalid_token`}}}async function Dt(e){let t={waitlistEnabled:!1,soldOut:!1,gated:!1};try{let n=await y(`/events/${e}/waitlist/status`);return n.success?{waitlistEnabled:!!n.data?.waitlistEnabled,soldOut:!!n.data?.soldOut,gated:!!n.data?.gated}:t}catch(e){return Z.error(`getWaitlistStatus error:`,e),t}}function Ot(e,t,n={}){let{cancelled:a=!1,isRegistration:o=!1,waitlistEnabled:s=!1}=n,c=(0,r.browserNow)();if(a)return{text:`Cancelled`,disabled:!0,reason:`cancelled`};if((e?.status||``).trim().toLowerCase()===`postponed`)return{text:`Postponed`,disabled:!0,reason:`postponed`};let l=(0,r.toInstantOrNull)(e.endDateTime||e.startDateTime);if(l&&(0,r.compareInstants)(l,c)<0)return{text:`Sales ended`,disabled:!0,reason:`event_past`};let u=(e?.salesStatus||``).trim().toLowerCase();if(u===`paused`)return{text:`Sales paused`,disabled:!0,reason:`sales_paused`};if(u===`ended`)return{text:`Sales ended`,disabled:!0,reason:`sales_ended`};let d=e?.hasPurchasableHiddenTickets===!0||Array.isArray(t)&&t.some(i.isHiddenTicketPurchasable),f=()=>d?{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`}:s?{text:`Join Waitlist`,disabled:!1,reason:`sold_out_waitlist`}:{text:`Sold out`,disabled:!0,reason:`sold_out`};if(u===`sold_out`)return f();let p=(t||[]).filter(e=>e.salesChannel!==2&&!e.isHidden&&!(typeof e.visibility==`number`&&e.visibility>=2));if(p.length===0)return d?{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`}:{text:`No tickets available`,disabled:!0,reason:`no_tickets`};let m=!1,h=!0,g=!0,_=null;for(let e of p){let t=(0,r.toInstantOrNull)(e.salesBegin||e.salesStart||e.saleBegin||e.onSaleStart),n=(0,r.toInstantOrNull)(e.salesEnd||e.saleEnd||e.onSaleEnd),i=e.remainingCapacity??e.quantityRemaining??e.quantity,a=e.soldOut||i!=null&&i<=0,o=t?(0,r.compareInstants)(t,c)>0:!1,s=n?(0,r.compareInstants)(n,c)<0:!1;!a&&!o&&!s&&(m=!0),a||(h=!1),o||(g=!1),o&&t&&!a&&!s&&(!_||(0,r.compareInstants)(t,_)<0)&&(_=t)}if(m)return{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`available`};if(g&&_){if(d)return{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`};let e=(0,r.compareInstants)(_,c),t=e/36e5,n=e/864e5,i=e=>(0,r.formatLocal)(e,{hour:`numeric`,minute:`2-digit`,hour12:!0},`en-US`),a;return a=t<24?i(_):n<=7?(0,r.formatLocal)(_,{weekday:`short`,hour:`numeric`,minute:`2-digit`,hour12:!0},`en-US`):`${(0,r.formatLocal)(_,{month:`short`,day:`numeric`},`en-US`)} ${i(_)}`,{text:`On sale ${a}`,disabled:!0,reason:`coming_soon`}}return h?f():d?{text:o?`Reserve a spot`:`Get tickets`,disabled:!1,reason:`hidden_only`}:{text:`Sales ended`,disabled:!0,reason:`sales_ended`}}function kt(e){let t=e;return{uuid:t.uuid||String(t.id||t.ID||``),id:t.id||t.ID,ticketNumber:t.ticketNumber||t.ticket_number,orderId:t.orderId||t.order_id,attendeeFirstName:t.attendeeFirstName||t.attendee_first_name||t.firstName,attendeeLastName:t.attendeeLastName||t.attendee_last_name||t.lastName,attendeeEmail:t.attendeeEmail||t.attendee_email||t.email,ticketName:t.ticketName||t.ticket_name||t.name||``,ticketTypeId:t.ticketTypeId||t.ticket_type_id,purchasePrice:t.purchasePrice||t.purchase_price||t.price||0,status:t.status,checkedIn:t.checkedIn||t.checked_in,checkedInAt:t.checkedInAt||t.checked_in_at}}function At(e){let t=e,n=t.purchasedTickets||t.tickets||t.purchased_tickets||[];return{uuid:t.uuid||String(t.id||t.ID||``),id:t.id||t.ID,customerEmail:t.customerEmail||t.email||t.customer_email||``,customerFirstName:t.customerFirstName||t.firstName||t.first_name,customerLastName:t.customerLastName||t.lastName||t.last_name,status:t.status||`unknown`,totalAmount:t.totalAmount||t.total||t.total_amount||0,subtotal:t.subtotal,serviceFeesAmount:t.serviceFeesAmount||t.serviceFee||t.service_fee||t.service_fees_amount||0,taxAmount:t.taxAmount||t.tax||t.tax_amount||0,discount:t.discount==null?0:t.discount,paymentIntentId:t.paymentIntentId||t.payment_intent_id,paymentMethod:t.paymentMethod||t.payment_method,purchasedTickets:n.map(kt),createdAt:t.createdAt||t.created_at,updatedAt:t.updatedAt||t.updated_at}}var jt=kt,Mt=At;function Nt(e){let t=At(e),r=t.uuid.split(`-`)[0]||t.uuid,i=Number(t.totalAmount);return{orderId:t.uuid,displayOrderId:r,email:t.customerEmail,customerName:[t.customerFirstName,t.customerLastName].filter(Boolean).join(` `),total:t.totalAmount,formattedTotal:`${(0,n.formatCurrency)((0,n.asUSD)(Number.isFinite(i)?i/100:0))}`,ticketCount:t.purchasedTickets.length,status:t.status}}function Pt(e){return(0,n.resolveImageUrl)(e,{cdn:!0})}function Q(e){return Pt(e.imageUrl||e.imageURL||e.image_url||e.image||``)}function Ft(e){switch(e){case`available`:case`sold_out`:case`coming_soon`:case`ended`:return e;default:return null}}function It(e){let t=e.ctaState||e.cta_state;if(t){let e=Ft(t);if(e)return e}if(e.isCancelled||e.is_cancelled)return`ended`;let n=(0,r.toInstantOrNull)(e.startDateTime||e.start_date_time||e.date);if(n){let e=Date.now();if(n.getTime()<e)return`ended`}let i=e.ticketsAvailable??e.tickets_available;if(i!==void 0)return i<=0?`sold_out`:`available`;let a=e.availableTickets||e.available_tickets||e.tickets||[];return a.length===0?`coming_soon`:a.reduce((e,t)=>{let n=t.quantityAvailable??t.quantity_available??t.quantity??0,r=t.quantitySold??t.quantity_sold??0;return e+Math.max(0,n-r)},0)<=0?`sold_out`:`available`}function Lt(e){let t=e;return{id:t.id||t.ID,name:t.name||t.ticketName||``,description:t.description,price:t.price==null?0:t.price,quantity:t.quantity||t.totalQuantity||0,quantitySold:t.quantitySold||t.quantity_sold||0,quantityAvailable:t.quantityAvailable||t.quantity_available||(t.quantity||0)-(t.quantitySold||0),minPerOrder:t.minPerOrder||t.min_per_order||1,maxPerOrder:t.maxPerOrder||t.max_per_order||10,saleStartDate:t.saleStartDate||t.sale_start_date,saleEndDate:t.saleEndDate||t.sale_end_date,isHidden:t.isHidden||t.is_hidden||!1,revealWithPromoCode:t.revealWithPromoCode||t.reveal_with_promo_code,ticketType:t.ticketType||t.ticket_type||0,sectionId:t.sectionId||t.section_id,sortOrder:t.sortOrder||t.sort_order||0}}function $(e){let t=e,n=(t.availableTickets||t.available_tickets||t.tickets||[]).map(Lt),r=n.map(e=>e.price).filter(e=>e>0),i=r.length>0?Math.min(...r):void 0,a=r.length>0?Math.max(...r):void 0;return{eventID:t.eventID||t.id||t.ID||0,id:t.id||t.ID,name:t.name||t.title||``,title:t.title||t.name,slug:t.slug,description:t.description,date:t.date||t.startDateTime||t.start_date_time||``,startDateTime:t.startDateTime||t.start_date_time,endDateTime:t.endDateTime||t.end_date_time,doorsOpenTime:t.doorsOpenTime||t.doors_open_time,timezone:t.timezone||t.time_zone,venueId:t.venueId||t.venue_id,venueName:t.venueName||t.venue_name,venueAddress:t.venueAddress||t.venue_address,location:t.location||t.venueAddress||t.venue_address,imageUrl:Q(t),imageURL:Q(t),status:t.status,isPublished:t.isPublished??t.is_published,isCancelled:t.isCancelled??t.is_cancelled,availableTickets:n,ticketsAvailable:t.ticketsAvailable??t.tickets_available??n.reduce((e,t)=>e+(t.quantityAvailable||0),0),ticketsSold:t.ticketsSold??t.tickets_sold,minPrice:t.minPrice??t.min_price??i,maxPrice:t.maxPrice??t.max_price??a,ctaText:t.ctaText||t.cta_text,ctaState:It(t),showPerformers:t.showPerformers??t.show_performers,eventSeriesId:t.eventSeriesId||t.event_series_id,seriesInstanceNumber:t.seriesInstanceNumber||t.series_instance_number,timeZone:t.timeZone,salesStatus:t.salesStatus||t.sales_status,eventSummary:t.eventSummary,password:t.password,hasPassword:t.hasPassword,disclaimer:t.disclaimer,ticketType:t.ticketType,eventTicketingType:t.eventTicketingType,ageRestriction:t.ageRestriction,displayAgeRestriction:t.displayAgeRestriction,displayStartTime:t.displayStartTime,displayEndTime:t.displayEndTime,displayDoorsTime:t.displayDoorsTime,collectionId:t.collectionId||t.collection_id,ticketsRemaining:t.ticketsRemaining,ticketsTotal:t.ticketsTotal,hasHiddenTickets:t.hasHiddenTickets,stage:t.stage,stageName:t.stageName,stageId:t.stageId,eventCategoryTypes:t.eventCategoryTypes,publicPerformers:t.publicPerformers,collectionIds:t.collectionIds,venue:t.venue,performers:t.performers,faqs:t.faqs,showtimes:t.showtimes,purchasedTickets:t.purchasedTickets}}var Rt=Lt,zt=$,Bt=$;function Vt(e){return(0,n.resolveImageUrl)(e,{cdn:!0})}function Ht(e){let t=e,n=t.logoUrl||t.logo_url||t.logo;return{id:t.id||t.ID||0,name:t.name||``,slug:t.slug,address:t.address,googleLocationNameCache:t.googleLocationNameCache||t.google_location_name_cache,city:t.city,state:t.state,zipCode:t.zipCode||t.zip_code,country:t.country,timezone:t.timezone||t.time_zone,logoUrl:Vt(n),serviceFeePercentage:t.serviceFeePercentage??t.service_fee_percentage??0,serviceFeeCents:t.serviceFeeCents??t.service_fee_cents??0,absorbServiceFee:(t.absorbServiceFee??t.absorb_service_fee)===!0,taxPercentage:t.taxPercentage??t.tax_percentage??0,organizationId:t.organizationId||t.organization_id}}var Ut=Ht;function Wt(e){let t=e;return{serviceFeePercentage:t.serviceFeePercentage??t.service_fee_percentage??0,serviceFeeCents:t.serviceFeeCents??t.service_fee_cents??0,taxPercentage:t.taxPercentage??t.tax_percentage??0}}function Gt(e){return[e.address,e.city,e.state,e.zipCode].filter(Boolean).join(`, `)}exports.apiDelete=x,exports.apiGet=y,exports.apiPost=b,exports.apiPut=ne,exports.applyGiftCard=xt,exports.applyPromoCode=Ve,exports.calculateCtaState=It,exports.cancelReservation=je,exports.checkCollectionPassword=dt,exports.checkEventPassword=ft,exports.completeGiftCardPayment=Ct,exports.completeReservation=Ae,exports.computeCtaState=Ot,exports.configureApi=p,exports.createGiftCardPurchase=bt,exports.createOrder=Me,exports.createPaymentIntent=De,exports.err=M,exports.errNotFound=N,exports.extendCheckoutSession=Fe,exports.extractVenueFees=Wt,exports.fetchAllVenues=Ze,exports.fetchAllVenuesResult=G,exports.fetchEventDetails=Je,exports.fetchEventDetailsResult=B,exports.fetchEventPerformers=Xe,exports.fetchEventPerformersResult=W,exports.fetchEventTickets=Ye,exports.fetchEventTicketsResult=U,exports.fetchPublicCollection=ut,exports.fetchSeriesOccurrences=ct,exports.fetchSeriesOccurrencesResult=st,exports.fetchVenueEvents=Qe,exports.fetchVenueEventsResult=K,exports.formatVenueAddress=Gt,exports.getApiConfig=m,exports.getCDNImageUrl=Pt,exports.getCartByUUID=Oe,exports.getClientIP=ee,exports.getEventImageUrl=Q,exports.getLegacyPublicUrl=g,exports.getMonthEvents=nt,exports.getMonthEventsResult=tt,exports.getOrder=Ne,exports.getOrdersV2Url=_,exports.getOrgMonthEvents=it,exports.getOrgMonthEventsResult=rt,exports.getPublicBaseUrl=h,exports.getSeriesOccurrences=ot,exports.getSeriesOccurrencesResult=at,exports.getSessionStatus=Ie,exports.getVenue=mt,exports.getVenueBySlug=gt,exports.getVenueFees=ht,exports.getWaitlistStatus=Dt,exports.hasPromoCodes=Be,exports.initiateOrder=Le,exports.isErr=Ge,exports.isOk=We,exports.joinWaitlist=Tt,exports.ok=j,exports.removeGiftCard=St,exports.removePromoCode=He,exports.resolvePublicEntity=lt,exports.testNetworkConnection=pt,exports.trackUTMSource=Re,exports.transformAvailableTicket=Rt,exports.transformEvent=zt,exports.transformEventData=Bt,exports.transformOrder=Mt,exports.transformOrderForDisplay=Nt,exports.transformTicket=jt,exports.transformVenue=Ut,exports.unwrapOr=P,exports.updateCartQuantities=ke,exports.validatePaymentIntent=Pe,exports.validatePromoCode=ze,exports.validateWaitlistToken=Et;
|
package/dist/api/api.mjs
CHANGED
|
@@ -982,7 +982,8 @@ async function zt(e, t) {
|
|
|
982
982
|
let n = await C(`/checkout/validate-token/${e}`, { email: t });
|
|
983
983
|
return n.success ? {
|
|
984
984
|
valid: !0,
|
|
985
|
-
eventId: n.data?.eventId ?? 0
|
|
985
|
+
eventId: n.data?.eventId ?? 0,
|
|
986
|
+
expiresAt: n.data?.expiresAt
|
|
986
987
|
} : {
|
|
987
988
|
valid: !1,
|
|
988
989
|
eventId: 0,
|