@getmicdrop/venue-calendar 4.0.17 → 4.0.20

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.
Files changed (74) hide show
  1. package/dist/AirbnbSplitMain-Wz79VNen.js +2251 -0
  2. package/dist/AirbnbSplitMain-Wz79VNen.js.map +1 -0
  3. package/dist/{CarouselView.legacy-C0cRJS-3.js → CarouselView.legacy-DLQhvBNY.js} +3 -3
  4. package/dist/CarouselView.legacy-DLQhvBNY.js.map +1 -0
  5. package/dist/CartView-PJvVTSos.js +1698 -0
  6. package/dist/CartView-PJvVTSos.js.map +1 -0
  7. package/dist/{Checkout-5WyBsOUz.js → Checkout-BZOTf4nF.js} +128 -125
  8. package/dist/Checkout-BZOTf4nF.js.map +1 -0
  9. package/dist/{Checkout.legacy-x2UOIEi6.js → Checkout.legacy-CwrYTqT2.js} +196 -196
  10. package/dist/Checkout.legacy-CwrYTqT2.js.map +1 -0
  11. package/dist/{CheckoutMain-DbwF9DJU.js → CheckoutMain-o0AFbrSA.js} +499 -499
  12. package/dist/CheckoutMain-o0AFbrSA.js.map +1 -0
  13. package/dist/{CheckoutTimer-lq9B5TfI.js → CheckoutTimer-BTxuvxKM.js} +2 -2
  14. package/dist/{CheckoutTimer-lq9B5TfI.js.map → CheckoutTimer-BTxuvxKM.js.map} +1 -1
  15. package/dist/{CollectionView-DMp_ShDZ.js → CollectionView-J9OmVdPH.js} +22 -22
  16. package/dist/{CollectionView-DMp_ShDZ.js.map → CollectionView-J9OmVdPH.js.map} +1 -1
  17. package/dist/{CollectionView.legacy-iqREDeXb.js → CollectionView.legacy-Dm1-Myj3.js} +53 -53
  18. package/dist/{CollectionView.legacy-iqREDeXb.js.map → CollectionView.legacy-Dm1-Myj3.js.map} +1 -1
  19. package/dist/{EventDetailsView-Bt4ekqYp.js → EventDetailsView-DumsB2_T.js} +2 -2
  20. package/dist/{EventDetailsView-Bt4ekqYp.js.map → EventDetailsView-DumsB2_T.js.map} +1 -1
  21. package/dist/{FeaturedView.legacy-DN2Abh2g.js → FeaturedView.legacy-CpCOAi81.js} +32 -32
  22. package/dist/{FeaturedView.legacy-DN2Abh2g.js.map → FeaturedView.legacy-CpCOAi81.js.map} +1 -1
  23. package/dist/{GalleryCard-DCxMRHdL.js → GalleryCard-ClOMciuA.js} +18 -18
  24. package/dist/{GalleryCard-DCxMRHdL.js.map → GalleryCard-ClOMciuA.js.map} +1 -1
  25. package/dist/{GalleryView.legacy-fF5jz57f.js → GalleryView.legacy-BBkCpmF1.js} +9 -9
  26. package/dist/{GalleryView.legacy-fF5jz57f.js.map → GalleryView.legacy-BBkCpmF1.js.map} +1 -1
  27. package/dist/{GroupedListView.legacy-oU5NjDaG.js → GroupedListView.legacy-ch0yYGJD.js} +20 -20
  28. package/dist/{GroupedListView.legacy-oU5NjDaG.js.map → GroupedListView.legacy-ch0yYGJD.js.map} +1 -1
  29. package/dist/Heading-AFd3o0xt.js.map +1 -1
  30. package/dist/{SeriesPage-DQftH9yI.js → SeriesPage-Picw22FM.js} +5 -5
  31. package/dist/{SeriesPage-DQftH9yI.js.map → SeriesPage-Picw22FM.js.map} +1 -1
  32. package/dist/{SeriesPage.legacy-DyZXSsXv.js → SeriesPage.legacy-CnVhVfLT.js} +44 -44
  33. package/dist/{SeriesPage.legacy-DyZXSsXv.js.map → SeriesPage.legacy-CnVhVfLT.js.map} +1 -1
  34. package/dist/{Success-BkrSlcZJ.js → Success-ZS8yIPoc.js} +122 -120
  35. package/dist/Success-ZS8yIPoc.js.map +1 -0
  36. package/dist/{Success.legacy-6_EgTF8T.js → Success.legacy-CBtg-aS-.js} +25 -25
  37. package/dist/{Success.legacy-6_EgTF8T.js.map → Success.legacy-CBtg-aS-.js.map} +1 -1
  38. package/dist/Text-CXR2fhx6.js.map +1 -1
  39. package/dist/{VenueCalendar-BjvqDumC.js → VenueCalendar-D-i3taSj.js} +6522 -6062
  40. package/dist/VenueCalendar-D-i3taSj.js.map +1 -0
  41. package/dist/{ViewTicketsEmbed-uzMst6xe.js → ViewTicketsEmbed-CSAwEkBy.js} +97 -97
  42. package/dist/{ViewTicketsEmbed-uzMst6xe.js.map → ViewTicketsEmbed-CSAwEkBy.js.map} +1 -1
  43. package/dist/api/api.cjs +1 -1
  44. package/dist/api/api.cjs.map +1 -1
  45. package/dist/api/api.mjs +622 -563
  46. package/dist/api/api.mjs.map +1 -1
  47. package/dist/api/cta.d.ts +5 -1
  48. package/dist/api/gift-cards.d.ts +0 -5
  49. package/dist/api/index.d.ts +3 -2
  50. package/dist/api/orders.d.ts +30 -0
  51. package/dist/api/types.d.ts +10 -1
  52. package/dist/{labels-CNpTKuG-.js → labels-s8pbx3tn.js} +435 -282
  53. package/dist/labels-s8pbx3tn.js.map +1 -0
  54. package/dist/{transform-CujsjTyt.js → transform-CyWcWnyR.js} +111 -75
  55. package/dist/transform-CyWcWnyR.js.map +1 -0
  56. package/dist/venue-calendar.css +1 -1
  57. package/dist/venue-calendar.es.js +25 -25
  58. package/dist/venue-calendar.iife.js +45 -45
  59. package/dist/venue-calendar.iife.js.map +1 -1
  60. package/dist/venue-calendar.umd.js +45 -45
  61. package/dist/venue-calendar.umd.js.map +1 -1
  62. package/package.json +163 -163
  63. package/dist/AirbnbSplitMain-CR7SsRG2.js +0 -2201
  64. package/dist/AirbnbSplitMain-CR7SsRG2.js.map +0 -1
  65. package/dist/CarouselView.legacy-C0cRJS-3.js.map +0 -1
  66. package/dist/CartView-DaYfGxiQ.js +0 -1708
  67. package/dist/CartView-DaYfGxiQ.js.map +0 -1
  68. package/dist/Checkout-5WyBsOUz.js.map +0 -1
  69. package/dist/Checkout.legacy-x2UOIEi6.js.map +0 -1
  70. package/dist/CheckoutMain-DbwF9DJU.js.map +0 -1
  71. package/dist/Success-BkrSlcZJ.js.map +0 -1
  72. package/dist/VenueCalendar-BjvqDumC.js.map +0 -1
  73. package/dist/labels-CNpTKuG-.js.map +0 -1
  74. package/dist/transform-CujsjTyt.js.map +0 -1
package/dist/api/api.mjs CHANGED
@@ -1,116 +1,117 @@
1
- import { createLogger as v } from "@getmicdrop/svelte-components/utils/logger";
2
- import { formatDateRaw as U, formatCurrency as q } from "@getmicdrop/svelte-components/utils/formatters";
3
- const A = v("VC"), E = {
1
+ import { createLogger as p } from "@getmicdrop/svelte-components/utils/logger";
2
+ import { AppError as C } from "@getmicdrop/svelte-components";
3
+ import { formatDateRaw as q, formatCurrency as O } from "@getmicdrop/svelte-components/utils/formatters";
4
+ const x = p("VC"), G = {
4
5
  baseUrl: "https://get-micdrop.com",
5
6
  timeout: 3e4,
6
7
  retries: 2,
7
8
  retryDelay: 500,
8
- onError: (e) => A.error("API Error:", e)
9
+ onError: (e) => x.error("API Error:", e)
9
10
  };
10
- let h = { ...E };
11
- function ne(e) {
12
- h = { ...h, ...e };
11
+ let y = { ...G };
12
+ function ie(e) {
13
+ y = { ...y, ...e };
13
14
  }
14
- function se() {
15
- return { ...h };
15
+ function ue() {
16
+ return { ...y };
16
17
  }
17
- function a() {
18
- return `${h.baseUrl}/api/v2/public`;
18
+ function c() {
19
+ return `${y.baseUrl}/api/v2/public`;
19
20
  }
20
- function ae() {
21
- return `${h.baseUrl}/api/public`;
21
+ function le() {
22
+ return `${y.baseUrl}/api/public`;
22
23
  }
23
- function D() {
24
- return `${h.baseUrl}/api/orders/v2/public`;
24
+ function A() {
25
+ return `${y.baseUrl}/api/orders/v2/public`;
25
26
  }
26
- async function ce() {
27
+ async function de() {
27
28
  return "";
28
29
  }
29
- const O = (e) => new Promise((r) => setTimeout(r, e));
30
- async function L(e, r, t) {
31
- const o = (r.method || "GET").toUpperCase(), c = o === "GET" || o === "HEAD" ? t.retries + 1 : 1;
30
+ const B = (e) => new Promise((t) => setTimeout(t, e));
31
+ async function L(e, t, r) {
32
+ const n = (t.method || "GET").toUpperCase(), a = n === "GET" || n === "HEAD" ? r.retries + 1 : 1;
32
33
  let s;
33
- for (let i = 1; i <= c; i++) {
34
- const l = new AbortController(), $ = setTimeout(() => l.abort(), t.timeout), y = r.signal;
35
- let _;
36
- y && (y.aborted ? l.abort() : (_ = () => l.abort(), y.addEventListener("abort", _, { once: !0 })));
34
+ for (let i = 1; i <= a; i++) {
35
+ const l = new AbortController(), _ = setTimeout(() => l.abort(), r.timeout), h = t.signal;
36
+ let m;
37
+ h && (h.aborted ? l.abort() : (m = () => l.abort(), h.addEventListener("abort", m, { once: !0 })));
37
38
  try {
38
- const d = await fetch(e, { ...r, signal: l.signal });
39
- if (d.status >= 500 && i < c)
40
- s = new Error(`HTTP ${d.status}`);
39
+ const g = await fetch(e, { ...t, signal: l.signal });
40
+ if (g.status >= 500 && i < a)
41
+ s = new Error(`HTTP ${g.status}`);
41
42
  else
42
- return d;
43
- } catch (d) {
44
- if (s = d, y?.aborted) throw d;
43
+ return g;
44
+ } catch (g) {
45
+ if (s = g, h?.aborted) throw g;
45
46
  } finally {
46
- clearTimeout($), y && _ && y.removeEventListener("abort", _);
47
+ clearTimeout(_), h && m && h.removeEventListener("abort", m);
47
48
  }
48
- i < c && await O(t.retryDelay * Math.pow(2, i - 1));
49
+ i < a && await B(r.retryDelay * Math.pow(2, i - 1));
49
50
  }
50
51
  throw s;
51
52
  }
52
- async function ie(e, r) {
53
- return j("GET", e, void 0, r);
53
+ async function fe(e, t) {
54
+ return N("GET", e, void 0, t);
54
55
  }
55
- async function ue(e, r, t) {
56
- return j("POST", e, r, t);
56
+ async function me(e, t, r) {
57
+ return N("POST", e, t, r);
57
58
  }
58
- async function le(e, r, t) {
59
- return j("PUT", e, r, t);
59
+ async function he(e, t, r) {
60
+ return N("PUT", e, t, r);
60
61
  }
61
- async function de(e, r) {
62
- return j("DELETE", e, void 0, r);
62
+ async function ye(e, t) {
63
+ return N("DELETE", e, void 0, t);
63
64
  }
64
- async function j(e, r, t, o) {
65
- const n = r.startsWith("http") ? r : `${a()}${r}`;
65
+ async function N(e, t, r, n) {
66
+ const o = t.startsWith("http") ? t : `${c()}${t}`;
66
67
  try {
67
- const c = await L(
68
- n,
68
+ const a = await L(
69
+ o,
69
70
  {
70
71
  method: e,
71
72
  headers: {
72
73
  "Content-Type": "application/json",
73
- ...o?.headers
74
+ ...n?.headers
74
75
  },
75
- body: t !== void 0 ? JSON.stringify(t) : void 0,
76
+ body: r !== void 0 ? JSON.stringify(r) : void 0,
76
77
  credentials: "include",
77
- ...o
78
+ ...n
78
79
  },
79
- h
80
+ y
80
81
  );
81
- if (!c.ok) {
82
- const i = await c.json().catch(() => ({})), l = i.error || i.message || `HTTP ${c.status}`;
83
- return h.onError(new Error(l)), { success: !1, error: l, statusCode: c.status };
82
+ if (!a.ok) {
83
+ const i = await a.json().catch(() => ({})), l = i.error || i.message || `HTTP ${a.status}`;
84
+ return y.onError(new Error(l)), { success: !1, error: l, statusCode: a.status };
84
85
  }
85
- return { success: !0, data: await c.json(), statusCode: c.status };
86
- } catch (c) {
87
- const s = c instanceof Error ? c.name === "AbortError" ? "Request timed out" : c.message : "Unknown error";
88
- return h.onError(
89
- c instanceof Error ? c : new Error(s)
86
+ return { success: !0, data: await a.json(), statusCode: a.status };
87
+ } catch (a) {
88
+ const s = a instanceof Error ? a.name === "AbortError" ? "Request timed out" : a.message : "Unknown error";
89
+ return y.onError(
90
+ a instanceof Error ? a : new Error(s)
90
91
  ), { success: !1, error: s };
91
92
  }
92
93
  }
93
- async function G(e, r) {
94
+ async function z(e, t) {
94
95
  try {
95
- const t = await L(
96
+ const r = await L(
96
97
  e,
97
- { credentials: "include", ...r },
98
- h
98
+ { credentials: "include", ...t },
99
+ y
99
100
  );
100
- if (!t.ok) {
101
- const o = await t.json().catch(() => ({}));
102
- return A.error(`API request failed: ${t.status}`, o), null;
101
+ if (!r.ok) {
102
+ const n = await r.json().catch(() => ({}));
103
+ return x.error(`API request failed: ${r.status}`, n), null;
103
104
  }
104
- return t.json();
105
- } catch (t) {
106
- return A.error("API request error:", t), null;
105
+ return r.json();
106
+ } catch (r) {
107
+ return x.error("API request error:", r), null;
107
108
  }
108
109
  }
109
- const m = v("VC");
110
- async function fe(e, r, t) {
110
+ const f = p("VC");
111
+ async function ge(e, t, r) {
111
112
  try {
112
- const o = await fetch(
113
- `${D()}/cart/${e}/payment-intent`,
113
+ const n = await fetch(
114
+ `${A()}/cart/${e}/payment-intent`,
114
115
  {
115
116
  method: "POST",
116
117
  headers: {
@@ -118,56 +119,82 @@ async function fe(e, r, t) {
118
119
  },
119
120
  credentials: "include",
120
121
  body: JSON.stringify({
121
- productQuantities: r,
122
- ...t && Object.keys(t).length > 0 ? { donationAmounts: t } : {}
122
+ productQuantities: t,
123
+ ...r && Object.keys(r).length > 0 ? { donationAmounts: r } : {}
123
124
  })
124
125
  }
125
126
  );
126
- if (!o.ok) {
127
- const c = await o.json().catch(() => ({}));
128
- throw m.error("Payment intent creation failed:", c), new Error(c.error || "Failed to create payment intent");
127
+ if (!n.ok) {
128
+ const a = await n.json().catch(() => ({}));
129
+ throw f.error("Payment intent creation failed:", a), new C(a.error || "Failed to create payment intent", "lib/api/orders/createPaymentIntent");
129
130
  }
130
- const n = await o.json();
131
- return m.debug("Payment intent created:", n), n;
132
- } catch (o) {
133
- return m.error("createPaymentIntent error:", o), null;
131
+ const o = await n.json();
132
+ return f.debug("Payment intent created:", o), o;
133
+ } catch (n) {
134
+ return f.error("createPaymentIntent error:", n), null;
134
135
  }
135
136
  }
136
- async function me(e, r, t) {
137
+ async function we(e, t) {
138
+ if (!e) return null;
137
139
  try {
138
- const o = {};
139
- for (const [s, i] of Object.entries(r)) {
140
+ const r = await fetch(`${A()}/cart/${e}`, {
141
+ method: "GET",
142
+ headers: { "Content-Type": "application/json" },
143
+ credentials: "include"
144
+ });
145
+ if (!r.ok)
146
+ return null;
147
+ const n = await r.json(), o = n.UUID ?? n.uuid ?? "", a = Number(n.EventID ?? n.eventID ?? 0), s = n.Status ?? n.status ?? "", i = n.ExpiresAt ?? n.expiresAt ?? "", _ = (n.Reservations ?? n.reservations ?? []).map((h) => {
148
+ const m = h;
149
+ return {
150
+ ticketID: Number(m.TicketID ?? m.ticketID ?? 0),
151
+ quantity: Number(m.Quantity ?? m.quantity ?? 0),
152
+ priceAtReservation: Number(
153
+ m.PriceAtReservation ?? m.priceAtReservation ?? 0
154
+ ),
155
+ status: String(m.Status ?? m.status ?? "")
156
+ };
157
+ });
158
+ return s !== "reserved" && s !== "active" || t !== void 0 && a !== Number(t) ? null : { uuid: o, eventID: a, status: s, expiresAt: i, reservations: _ };
159
+ } catch (r) {
160
+ return f.error("getCartByUUID error:", r), null;
161
+ }
162
+ }
163
+ async function ve(e, t, r) {
164
+ try {
165
+ const n = {};
166
+ for (const [s, i] of Object.entries(t)) {
140
167
  const l = typeof s == "number" ? s : parseInt(s, 10);
141
- !Number.isNaN(l) && i > 0 && (o[l] = i);
168
+ !Number.isNaN(l) && i > 0 && (n[l] = i);
142
169
  }
143
- const n = {};
144
- if (t)
145
- for (const [s, i] of Object.entries(t)) {
170
+ const o = {};
171
+ if (r)
172
+ for (const [s, i] of Object.entries(r)) {
146
173
  const l = typeof s == "number" ? s : parseInt(s, 10);
147
- !Number.isNaN(l) && i > 0 && (n[l] = i);
174
+ !Number.isNaN(l) && i > 0 && (o[l] = i);
148
175
  }
149
- const c = await fetch(`${D()}/cart/${e}`, {
176
+ const a = await fetch(`${A()}/cart/${e}`, {
150
177
  method: "PUT",
151
178
  headers: { "Content-Type": "application/json" },
152
179
  credentials: "include",
153
180
  body: JSON.stringify({
154
- quantities: o,
155
- ...Object.keys(n).length > 0 ? { donationAmounts: n } : {}
181
+ quantities: n,
182
+ ...Object.keys(o).length > 0 ? { donationAmounts: o } : {}
156
183
  })
157
184
  });
158
- if (!c.ok) {
159
- const s = await c.json().catch(() => ({}));
160
- return m.error("Cart update failed:", s), !1;
185
+ if (!a.ok) {
186
+ const s = await a.json().catch(() => ({}));
187
+ return f.error("Cart update failed:", s), !1;
161
188
  }
162
189
  return !0;
163
- } catch (o) {
164
- return m.error("updateCartQuantities error:", o), !1;
190
+ } catch (n) {
191
+ return f.error("updateCartQuantities error:", n), !1;
165
192
  }
166
193
  }
167
- async function he(e) {
194
+ async function _e(e) {
168
195
  try {
169
- const r = await fetch(
170
- `${a()}/orders/complete/${e}`,
196
+ const t = await fetch(
197
+ `${c()}/orders/complete/${e}`,
171
198
  {
172
199
  method: "POST",
173
200
  headers: {
@@ -175,21 +202,21 @@ async function he(e) {
175
202
  }
176
203
  }
177
204
  );
178
- return r.ok ? {
205
+ return t.ok ? {
179
206
  success: !0,
180
- message: (await r.json()).message
207
+ message: (await t.json()).message
181
208
  } : {
182
209
  success: !1,
183
- error: (await r.json().catch(() => ({}))).error || "Failed to complete reservation"
210
+ error: (await t.json().catch(() => ({}))).error || "Failed to complete reservation"
184
211
  };
185
- } catch (r) {
186
- return m.error("Error completing reservation:", r), { success: !1, error: "Network error completing reservation" };
212
+ } catch (t) {
213
+ return f.error("Error completing reservation:", t), { success: !1, error: "Network error completing reservation" };
187
214
  }
188
215
  }
189
- async function ye(e) {
216
+ async function be(e) {
190
217
  try {
191
- const r = await fetch(
192
- `${a()}/orders/cancel/${e}`,
218
+ const t = await fetch(
219
+ `${c()}/orders/cancel/${e}`,
193
220
  {
194
221
  method: "POST",
195
222
  headers: {
@@ -197,204 +224,208 @@ async function ye(e) {
197
224
  }
198
225
  }
199
226
  );
200
- return r.ok ? {
227
+ return t.ok ? {
201
228
  success: !0,
202
- message: (await r.json()).message
229
+ message: (await t.json()).message
203
230
  } : {
204
231
  success: !1,
205
- error: (await r.json().catch(() => ({}))).error || "Failed to cancel reservation"
232
+ error: (await t.json().catch(() => ({}))).error || "Failed to cancel reservation"
206
233
  };
207
- } catch (r) {
208
- return m.error("Error cancelling reservation:", r), { success: !1, error: "Network error cancelling reservation" };
234
+ } catch (t) {
235
+ return f.error("Error cancelling reservation:", t), { success: !1, error: "Network error cancelling reservation" };
209
236
  }
210
237
  }
211
- async function ge(e, r) {
238
+ async function pe(e, t) {
212
239
  try {
213
- const t = await fetch(`${a()}/orders/create`, {
240
+ const r = await fetch(`${c()}/orders/create`, {
214
241
  method: "POST",
215
242
  headers: {
216
243
  "Content-Type": "application/json"
217
244
  },
218
245
  body: JSON.stringify({
219
246
  eventID: e,
220
- promoCode: r
247
+ promoCode: t
221
248
  })
222
249
  });
223
- if (!t.ok) {
224
- const o = await t.json().catch(() => ({}));
225
- return m.error("Create order failed:", o), null;
250
+ if (!r.ok) {
251
+ const n = await r.json().catch(() => ({}));
252
+ return f.error("Create order failed:", n), null;
226
253
  }
227
- return t.json();
228
- } catch (t) {
229
- return m.error("createOrder error:", t), null;
254
+ return r.json();
255
+ } catch (r) {
256
+ return f.error("createOrder error:", r), null;
230
257
  }
231
258
  }
232
- async function we(e) {
233
- return G(`${a()}/orders/${e}`);
259
+ async function $e(e) {
260
+ return z(`${c()}/orders/${e}`);
234
261
  }
235
- async function _e(e, r) {
262
+ async function Pe(e, t) {
236
263
  try {
237
- const t = await fetch(
238
- `${D()}/validatePaymentIntent/${e}`,
264
+ const r = await fetch(
265
+ `${A()}/validatePaymentIntent/${e}`,
239
266
  {
240
267
  method: "POST",
241
268
  headers: {
242
269
  "Content-Type": "application/json"
243
270
  },
244
- body: JSON.stringify(r)
271
+ body: JSON.stringify(t)
245
272
  }
246
273
  );
247
- if (!t.ok) {
248
- const n = await t.json().catch(() => ({}));
249
- return m.error("Payment validation failed:", n), {
274
+ if (!r.ok) {
275
+ const o = await r.json().catch(() => ({}));
276
+ return f.error("Payment validation failed:", o), {
250
277
  success: !1,
251
278
  status: "failed",
252
- error: n.error || "Payment validation failed"
279
+ error: o.error || "Payment validation failed"
253
280
  };
254
281
  }
255
- const o = await t.json();
282
+ const n = await r.json();
256
283
  return {
257
284
  success: !0,
258
- status: o.status || "Payment succeeded",
259
- orderUUID: o.orderUUID || o.uuid
285
+ status: n.status || "Payment succeeded",
286
+ orderUUID: n.orderUUID || n.uuid
260
287
  };
261
- } catch (t) {
262
- return m.error("validatePaymentIntent error:", t), null;
288
+ } catch (r) {
289
+ return f.error("validatePaymentIntent error:", r), null;
263
290
  }
264
291
  }
265
- async function ve(e) {
292
+ async function Ce(e) {
266
293
  try {
267
- const r = await fetch(`${a()}/orders/extend-session`, {
268
- method: "POST",
269
- headers: {
270
- "Content-Type": "application/json"
271
- },
272
- body: JSON.stringify({ orderUuid: e })
273
- });
274
- if (!r.ok)
294
+ const t = await fetch(
295
+ `${c()}/orders/extend-session`,
296
+ {
297
+ method: "POST",
298
+ headers: {
299
+ "Content-Type": "application/json"
300
+ },
301
+ body: JSON.stringify({ orderUuid: e })
302
+ }
303
+ );
304
+ if (!t.ok)
275
305
  return {
276
306
  success: !1,
277
- error: (await r.json().catch(() => ({}))).error || "Failed to extend session"
307
+ error: (await t.json().catch(() => ({}))).error || "Failed to extend session",
308
+ statusCode: t.status
278
309
  };
279
- const t = await r.json();
310
+ const r = await t.json();
280
311
  return {
281
312
  success: !0,
282
- newExpiryTime: t.newExpiryTime,
283
- remainingExtensions: t.remainingExtensions
313
+ newExpiryTime: r.newExpiryTime,
314
+ remainingExtensions: r.remainingExtensions
284
315
  };
285
- } catch (r) {
286
- return m.error("Error extending checkout session:", r), { success: !1, error: "Network error extending session" };
316
+ } catch (t) {
317
+ return f.error("Error extending checkout session:", t), { success: !1, error: "Network error extending session" };
287
318
  }
288
319
  }
289
- async function $e(e) {
320
+ async function Se(e) {
290
321
  try {
291
- const r = await fetch(
292
- `${a()}/orders/session/${e}`
322
+ const t = await fetch(
323
+ `${c()}/orders/session/${e}`
293
324
  );
294
- if (!r.ok)
325
+ if (!t.ok)
295
326
  return {
296
- error: (await r.json().catch(() => ({}))).error || "No active session found",
297
- notFound: r.status === 404
327
+ error: (await t.json().catch(() => ({}))).error || "No active session found",
328
+ notFound: t.status === 404
298
329
  };
299
- const t = await r.json();
330
+ const r = await t.json();
300
331
  return {
301
- expiresAt: t.expiresAt,
302
- extensionCount: t.extensionCount,
303
- remainingExtensions: t.remainingExtensions,
304
- canExtend: t.canExtend,
305
- reservationCount: t.reservationCount
332
+ expiresAt: r.expiresAt,
333
+ extensionCount: r.extensionCount,
334
+ remainingExtensions: r.remainingExtensions,
335
+ canExtend: r.canExtend,
336
+ reservationCount: r.reservationCount
306
337
  };
307
- } catch (r) {
308
- return m.error("Error getting session status:", r), { error: "Network error getting session status" };
338
+ } catch (t) {
339
+ return f.error("Error getting session status:", t), { error: "Network error getting session status" };
309
340
  }
310
341
  }
311
- async function Pe(e = {}) {
342
+ async function De(e = {}) {
312
343
  try {
313
- const r = await fetch(`${a()}/orders/create`, {
344
+ const t = await fetch(`${c()}/orders/create`, {
314
345
  method: "POST",
315
346
  headers: {
316
347
  "Content-Type": "application/json"
317
348
  },
318
349
  body: JSON.stringify(e)
319
350
  });
320
- if (!r.ok) {
321
- const o = await r.json().catch(() => ({}));
322
- return m.error("Order initiation failed:", o), null;
351
+ if (!t.ok) {
352
+ const n = await t.json().catch(() => ({}));
353
+ return f.error("Order initiation failed:", n), null;
323
354
  }
324
- return (await r.json()).uuid;
325
- } catch (r) {
326
- return m.error("initiateOrder error:", r), null;
355
+ return (await t.json()).uuid;
356
+ } catch (t) {
357
+ return f.error("initiateOrder error:", t), null;
327
358
  }
328
359
  }
329
- async function be(e) {
360
+ async function Ae(e) {
330
361
  if (typeof window > "u") return;
331
- const t = new URLSearchParams(window.location.search).get("utm_source") || "Direct";
362
+ const r = new URLSearchParams(window.location.search).get("utm_source") || "Direct";
332
363
  try {
333
364
  await fetch(
334
- `${a()}/utm/${e}/${encodeURIComponent(t)}`
365
+ `${c()}/utm/${e}/${encodeURIComponent(r)}`
335
366
  );
336
- } catch (o) {
337
- m.error("UTM tracking failed:", o);
367
+ } catch (n) {
368
+ f.error("UTM tracking failed:", n);
338
369
  }
339
370
  }
340
- const N = v("VC");
341
- async function Ce(e, r) {
371
+ const k = p("VC");
372
+ async function je(e, t) {
342
373
  try {
343
- if (!r || !r.trim())
374
+ if (!t || !t.trim())
344
375
  return { valid: !1, error: "Promo code is required" };
345
- const t = encodeURIComponent(r.trim()), o = await fetch(
346
- `${a()}/promo-codes/validate/${e}/${t}`
376
+ const r = encodeURIComponent(t.trim()), n = await fetch(
377
+ `${c()}/promo-codes/validate/${e}/${r}`
347
378
  );
348
- if (!o.ok)
349
- return o.status === 404 ? { valid: !1, error: "Invalid promo code" } : { valid: !1, error: (await o.json().catch(() => ({}))).error || "Failed to validate code" };
350
- const n = await o.json();
379
+ if (!n.ok)
380
+ return n.status === 404 ? { valid: !1, error: "Invalid promo code" } : { valid: !1, error: (await n.json().catch(() => ({}))).error || "Failed to validate code" };
381
+ const o = await n.json();
351
382
  return {
352
- valid: n.valid ?? !0,
353
- revealHiddenTickets: n.revealHiddenTickets,
354
- revealTicketIds: n.revealTicketIds,
355
- provideDiscount: n.provideDiscount,
356
- discountType: n.discountType,
357
- amount: n.amount,
358
- code: n.code || r
383
+ valid: o.valid ?? !0,
384
+ revealHiddenTickets: o.revealHiddenTickets,
385
+ revealTicketIds: o.revealTicketIds,
386
+ provideDiscount: o.provideDiscount,
387
+ discountType: o.discountType,
388
+ amount: o.amount,
389
+ code: o.code || t
359
390
  };
360
- } catch (t) {
361
- return N.error("Error validating promo code:", t), { valid: !1, error: "Network error validating code" };
391
+ } catch (r) {
392
+ return k.error("Error validating promo code:", r), { valid: !1, error: "Network error validating code" };
362
393
  }
363
394
  }
364
- async function pe(e) {
395
+ async function Ie(e) {
365
396
  try {
366
- const r = await fetch(
367
- `${a()}/promo-codes/check/${e}`
397
+ const t = await fetch(
398
+ `${c()}/promo-codes/check/${e}`
368
399
  );
369
- return r.ok ? (await r.json()).hasPromoCodes === !0 : !0;
370
- } catch (r) {
371
- return N.error("Error checking promo codes availability:", r), !0;
400
+ return t.ok ? (await t.json()).hasPromoCodes === !0 : !0;
401
+ } catch (t) {
402
+ return k.error("Error checking promo codes availability:", t), !0;
372
403
  }
373
404
  }
374
- async function Se(e, r) {
405
+ async function Ne(e, t) {
375
406
  try {
376
- const t = await fetch(
377
- `${a()}/orders/${e}/apply-promo`,
407
+ const r = await fetch(
408
+ `${c()}/orders/${e}/apply-promo`,
378
409
  {
379
410
  method: "POST",
380
411
  headers: {
381
412
  "Content-Type": "application/json"
382
413
  },
383
- body: JSON.stringify({ code: r })
414
+ body: JSON.stringify({ code: t })
384
415
  }
385
416
  );
386
- return t.ok ? { success: !0 } : {
417
+ return r.ok ? { success: !0 } : {
387
418
  success: !1,
388
- error: (await t.json().catch(() => ({}))).error || "Failed to apply promo code"
419
+ error: (await r.json().catch(() => ({}))).error || "Failed to apply promo code"
389
420
  };
390
- } catch (t) {
391
- return N.error("Error applying promo code:", t), { success: !1, error: "Network error applying code" };
421
+ } catch (r) {
422
+ return k.error("Error applying promo code:", r), { success: !1, error: "Network error applying code" };
392
423
  }
393
424
  }
394
425
  async function ke(e) {
395
426
  try {
396
- const r = await fetch(
397
- `${a()}/orders/${e}/remove-promo`,
427
+ const t = await fetch(
428
+ `${c()}/orders/${e}/remove-promo`,
398
429
  {
399
430
  method: "POST",
400
431
  headers: {
@@ -402,460 +433,487 @@ async function ke(e) {
402
433
  }
403
434
  }
404
435
  );
405
- return r.ok ? { success: !0 } : {
436
+ return t.ok ? { success: !0 } : {
406
437
  success: !1,
407
- error: (await r.json().catch(() => ({}))).error || "Failed to remove promo code"
438
+ error: (await t.json().catch(() => ({}))).error || "Failed to remove promo code"
408
439
  };
409
- } catch (r) {
410
- return N.error("Error removing promo code:", r), { success: !1, error: "Network error removing code" };
440
+ } catch (t) {
441
+ return k.error("Error removing promo code:", t), { success: !1, error: "Network error removing code" };
411
442
  }
412
443
  }
413
- const u = v("VC"), k = /* @__PURE__ */ new Map();
414
- async function De(e, r = fetch) {
415
- const t = String(e);
416
- if (r === fetch) {
417
- const n = k.get(t);
418
- if (n) return n;
444
+ const u = p("VC"), I = /* @__PURE__ */ new Map();
445
+ async function xe(e, t = fetch) {
446
+ const r = String(e);
447
+ if (t === fetch) {
448
+ const o = I.get(r);
449
+ if (o) return o;
419
450
  }
420
- const o = (async () => {
451
+ const n = (async () => {
421
452
  try {
422
- const n = await r(`${a()}/events/${e}`);
423
- if (!n.ok)
424
- throw new Error(`Failed to fetch event details: ${n.status}`);
425
- return await n.json();
426
- } catch (n) {
427
- return u.error("Error fetching event details:", n), null;
453
+ const o = await t(`${c()}/events/${e}`);
454
+ if (!o.ok)
455
+ throw new C(`Failed to fetch event details: ${o.status}`, "lib/api/events/fetchEventDetails");
456
+ return await o.json();
457
+ } catch (o) {
458
+ return u.error("Error fetching event details:", o), null;
428
459
  }
429
460
  })();
430
- return r === fetch && (k.set(t, o), o.finally(() => {
431
- k.get(t) === o && k.delete(t);
432
- })), o;
461
+ return t === fetch && (I.set(r, n), n.finally(() => {
462
+ I.get(r) === n && I.delete(r);
463
+ })), n;
433
464
  }
434
- async function je(e) {
465
+ async function Te(e) {
435
466
  try {
436
- const r = await fetch(
437
- `${a()}/tickets/event/${e}`
467
+ const t = await fetch(
468
+ `${c()}/tickets/event/${e}`
438
469
  );
439
- if (!r.ok)
440
- throw new Error(`Failed to fetch tickets: ${r.status}`);
441
- const t = await r.json();
442
- return Array.isArray(t) ? t : [];
443
- } catch (r) {
444
- return u.error("Error fetching tickets:", r), [];
470
+ if (!t.ok)
471
+ throw new C(`Failed to fetch tickets: ${t.status}`, "lib/api/events/fetchEventTickets");
472
+ const r = await t.json();
473
+ return Array.isArray(r) ? r : [];
474
+ } catch (t) {
475
+ return u.error("Error fetching tickets:", t), [];
445
476
  }
446
477
  }
447
- async function Ne(e) {
478
+ async function Fe(e) {
448
479
  try {
449
480
  if (!e)
450
481
  return u.warn("fetchEventPerformers called without eventId"), { performers: [], showPerformers: !1 };
451
- const r = await fetch(
452
- `${a()}/events/${e}/performers`
482
+ const t = await fetch(
483
+ `${c()}/events/${e}/performers`
453
484
  );
454
- if (!r.ok)
485
+ if (!t.ok)
455
486
  return u.error(
456
- `Failed to fetch performers: ${r.status} ${r.statusText}`
487
+ `Failed to fetch performers: ${t.status} ${t.statusText}`
457
488
  ), { performers: [], showPerformers: !1 };
458
- const t = await r.json();
489
+ const r = await t.json();
459
490
  return {
460
- performers: Array.isArray(t.performers) ? t.performers : [],
461
- showPerformers: t.showPerformers === !0
491
+ performers: Array.isArray(r.performers) ? r.performers : [],
492
+ showPerformers: r.showPerformers === !0
462
493
  };
463
- } catch (r) {
464
- return u.error("Error fetching event performers:", r), { performers: [], showPerformers: !1 };
494
+ } catch (t) {
495
+ return u.error("Error fetching event performers:", t), { performers: [], showPerformers: !1 };
465
496
  }
466
497
  }
467
- async function Ae(e) {
498
+ async function Ue(e) {
468
499
  try {
469
500
  if (!e)
470
501
  return u.warn("fetchAllVenues called without orgId"), [];
471
- const r = await fetch(
472
- `${a()}/venues/organization/${e}`
502
+ const t = await fetch(
503
+ `${c()}/venues/organization/${e}`
473
504
  );
474
- if (!r.ok)
505
+ if (!t.ok)
475
506
  return u.error(
476
- `Failed to fetch venues: ${r.status} ${r.statusText}`
507
+ `Failed to fetch venues: ${t.status} ${t.statusText}`
477
508
  ), [];
478
- const t = await r.json();
479
- return Array.isArray(t) ? t : [];
480
- } catch (r) {
481
- return u.error("Error fetching venues:", r), [];
509
+ const r = await t.json();
510
+ return Array.isArray(r) ? r : [];
511
+ } catch (t) {
512
+ return u.error("Error fetching venues:", t), [];
482
513
  }
483
514
  }
484
- async function Ie(e) {
515
+ async function Re(e) {
485
516
  try {
486
517
  if (!e)
487
518
  return u.warn("fetchVenueEvents called without venueId"), [];
488
- const r = await fetch(
489
- `${a()}/events/venue/${e}`
519
+ const t = await fetch(
520
+ `${c()}/events/venue/${e}`
490
521
  );
491
- if (!r.ok)
522
+ if (!t.ok)
492
523
  return u.error(
493
- `Failed to fetch venue events: ${r.status} ${r.statusText}`
524
+ `Failed to fetch venue events: ${t.status} ${t.statusText}`
494
525
  ), [];
495
- const t = await r.json();
496
- return Array.isArray(t) ? t : [];
497
- } catch (r) {
498
- return u.error("Error fetching venue events:", r), [];
499
- }
500
- }
501
- async function xe(e, r, t) {
502
- try {
503
- const o = await fetch(
504
- `${a()}/events/venue/${e}/month/${r}/${t}`
505
- );
506
- if (!o.ok)
507
- return u.error(`Failed to fetch month events: ${o.status}`), [];
508
- const n = await o.json();
509
- return Array.isArray(n.events) ? n.events : Array.isArray(n) ? n : [];
510
- } catch (o) {
511
- return u.error("Error fetching month events:", o), [];
526
+ const r = await t.json();
527
+ return Array.isArray(r) ? r : [];
528
+ } catch (t) {
529
+ return u.error("Error fetching venue events:", t), [];
512
530
  }
513
531
  }
514
- async function Fe(e, r, t) {
532
+ async function qe(e, t, r) {
515
533
  try {
516
- const o = await fetch(
517
- `${a()}/events/organization/${e}/month/${r}/${t}`
534
+ const n = await fetch(
535
+ `${c()}/events/venue/${e}/month/${t}/${r}`
518
536
  );
519
- if (!o.ok)
520
- return u.error(`Failed to fetch org month events: ${o.status}`), [];
521
- const n = await o.json();
522
- return Array.isArray(n.events) ? n.events : Array.isArray(n) ? n : [];
523
- } catch (o) {
524
- return u.error("Error fetching org month events:", o), [];
537
+ if (!n.ok)
538
+ return u.error(`Failed to fetch month events: ${n.status}`), [];
539
+ const o = await n.json();
540
+ return Array.isArray(o.events) ? o.events : Array.isArray(o) ? o : [];
541
+ } catch (n) {
542
+ return u.error("Error fetching month events:", n), [];
525
543
  }
526
544
  }
527
- async function Te(e) {
545
+ async function Ee(e, t, r) {
528
546
  try {
529
- const r = await fetch(
530
- `${a()}/series/${e}/occurrences`
547
+ const n = await fetch(
548
+ `${c()}/events/organization/${e}/month/${t}/${r}`
531
549
  );
532
- return r.ok ? r.json() : (u.error(`Failed to fetch series occurrences: ${r.status}`), null);
533
- } catch (r) {
534
- return u.error("Error fetching series occurrences:", r), null;
550
+ if (!n.ok)
551
+ return u.error(`Failed to fetch org month events: ${n.status}`), [];
552
+ const o = await n.json();
553
+ return Array.isArray(o.events) ? o.events : Array.isArray(o) ? o : [];
554
+ } catch (n) {
555
+ return u.error("Error fetching org month events:", n), [];
535
556
  }
536
557
  }
537
- async function Ue(e, r) {
558
+ async function Le(e) {
538
559
  try {
539
560
  const t = await fetch(
540
- `${a()}/series/${e}/occurrences?venueId=${r}`
561
+ `${c()}/series/${e}/occurrences`
541
562
  );
542
- return t.ok ? t.json() : (u.error(`Failed to fetch series with CTA: ${t.status}`), null);
563
+ return t.ok ? t.json() : (u.error(`Failed to fetch series occurrences: ${t.status}`), null);
543
564
  } catch (t) {
544
565
  return u.error("Error fetching series occurrences:", t), null;
545
566
  }
546
567
  }
547
- async function Re(e) {
568
+ async function Oe(e, t) {
548
569
  try {
549
570
  const r = await fetch(
550
- `${a()}/series/${e}/page`
571
+ `${c()}/series/${e}/occurrences?venueId=${t}`
551
572
  );
552
- if (!r.ok)
553
- throw new Error(`Failed to fetch series page: ${r.status}`);
554
- return r.json();
573
+ return r.ok ? r.json() : (u.error(`Failed to fetch series with CTA: ${r.status}`), null);
555
574
  } catch (r) {
556
- return u.error("Error fetching series page:", r), null;
575
+ return u.error("Error fetching series occurrences:", r), null;
557
576
  }
558
577
  }
559
- async function Le(e, r) {
578
+ async function Ge(e) {
560
579
  try {
561
- const t = r ? `${a()}/collections/${e}/public?password=${encodeURIComponent(r)}` : `${a()}/collections/${e}/public`, o = await fetch(t);
562
- if (!o.ok)
563
- throw new Error(`Failed to fetch collection: ${o.status}`);
564
- return o.json();
580
+ const t = await fetch(
581
+ `${c()}/series/${e}/page`
582
+ );
583
+ if (!t.ok)
584
+ throw new C(`Failed to fetch series page: ${t.status}`, "lib/api/events/fetchSeriesPage");
585
+ return t.json();
565
586
  } catch (t) {
566
- return u.error("Error fetching collection:", t), null;
587
+ return u.error("Error fetching series page:", t), null;
588
+ }
589
+ }
590
+ async function Be(e, t) {
591
+ try {
592
+ const r = t ? `${c()}/collections/${e}/public?password=${encodeURIComponent(t)}` : `${c()}/collections/${e}/public`, n = await fetch(r);
593
+ if (!n.ok)
594
+ throw new C(`Failed to fetch collection: ${n.status}`, "lib/api/events/fetchPublicCollection");
595
+ return n.json();
596
+ } catch (r) {
597
+ return u.error("Error fetching collection:", r), null;
567
598
  }
568
599
  }
569
- async function qe(e, r) {
600
+ async function ze(e, t) {
570
601
  try {
571
- const t = encodeURIComponent(r), o = await fetch(
572
- `${a()}/collections/${e}/check-password/${t}`
602
+ const r = encodeURIComponent(t), n = await fetch(
603
+ `${c()}/collections/${e}/check-password/${r}`
573
604
  );
574
- return o.ok ? (await o.json()).valid === !0 : !1;
575
- } catch (t) {
576
- return u.error("Error checking collection password:", t), !1;
605
+ return n.ok ? (await n.json()).valid === !0 : !1;
606
+ } catch (r) {
607
+ return u.error("Error checking collection password:", r), !1;
577
608
  }
578
609
  }
579
- async function Ee(e, r) {
610
+ async function He(e, t) {
580
611
  try {
581
- const t = await fetch(
582
- `${a()}/events/${e}/check-password`,
612
+ const r = await fetch(
613
+ `${c()}/events/${e}/check-password`,
583
614
  {
584
615
  method: "POST",
585
616
  headers: { "Content-Type": "application/json" },
586
- body: JSON.stringify({ password: r })
617
+ body: JSON.stringify({ password: t })
587
618
  }
588
619
  );
589
- if (!t.ok) return { valid: !1 };
590
- const o = await t.json();
591
- return typeof o == "boolean" ? { valid: o } : { valid: o.valid === !0 || o === !0 };
592
- } catch (t) {
593
- return u.error("Error checking event password:", t), { valid: !1 };
620
+ if (!r.ok) return { valid: !1 };
621
+ const n = await r.json();
622
+ return typeof n == "boolean" ? { valid: n } : { valid: n.valid === !0 || n === !0 };
623
+ } catch (r) {
624
+ return u.error("Error checking event password:", r), { valid: !1 };
594
625
  }
595
626
  }
596
- async function Oe(e, r) {
627
+ async function Je(e, t) {
597
628
  try {
598
- const t = r ? `${a()}/events/venue/${r}` : e ? `${a()}/venues/organization/${e}` : `${a()}/health`;
599
- return (await fetch(t, {
629
+ const r = t ? `${c()}/events/venue/${t}` : e ? `${c()}/venues/organization/${e}` : `${c()}/health`;
630
+ return (await fetch(r, {
600
631
  method: "HEAD"
601
632
  })).ok;
602
- } catch (t) {
603
- return u.error("Network connection test failed:", t), !1;
633
+ } catch (r) {
634
+ return u.error("Network connection test failed:", r), !1;
604
635
  }
605
636
  }
606
- const b = v("VC");
607
- async function z(e) {
637
+ const P = p("VC");
638
+ async function H(e) {
608
639
  try {
609
640
  if (!e)
610
- return b.warn("getVenue called without venueId"), null;
611
- const r = await fetch(`${a()}/venues/${e}`);
612
- return r.ok ? r.json() : (b.error(`Failed to fetch venue: ${r.status}`), null);
613
- } catch (r) {
614
- return b.error("Error fetching venue:", r), null;
641
+ return P.warn("getVenue called without venueId"), null;
642
+ const t = await fetch(`${c()}/venues/${e}`);
643
+ return t.ok ? t.json() : (P.error(`Failed to fetch venue: ${t.status}`), null);
644
+ } catch (t) {
645
+ return P.error("Error fetching venue:", t), null;
615
646
  }
616
647
  }
617
- async function Ge(e) {
618
- const r = await z(e);
619
- return r ? {
620
- serviceFeePercentage: r.serviceFeePercentage ?? 0,
621
- serviceFeeCents: r.serviceFeeCents ?? 0,
622
- taxPercentage: r.taxPercentage ?? 0
648
+ async function Me(e) {
649
+ const t = await H(e);
650
+ return t ? {
651
+ serviceFeePercentage: t.serviceFeePercentage ?? 0,
652
+ serviceFeeCents: t.serviceFeeCents ?? 0,
653
+ taxPercentage: t.taxPercentage ?? 0
623
654
  } : null;
624
655
  }
625
- async function ze(e) {
656
+ async function We(e) {
626
657
  try {
627
658
  if (!e)
628
- return b.warn("getVenueBySlug called without slug"), null;
629
- const r = encodeURIComponent(e), t = await fetch(`${a()}/venues/slug/${r}`);
630
- return t.ok ? t.json() : (b.error(`Failed to fetch venue by slug: ${t.status}`), null);
631
- } catch (r) {
632
- return b.error("Error fetching venue by slug:", r), null;
659
+ return P.warn("getVenueBySlug called without slug"), null;
660
+ const t = encodeURIComponent(e), r = await fetch(`${c()}/venues/slug/${t}`);
661
+ return r.ok ? r.json() : (P.error(`Failed to fetch venue by slug: ${r.status}`), null);
662
+ } catch (t) {
663
+ return P.error("Error fetching venue by slug:", t), null;
633
664
  }
634
665
  }
635
- const g = v("VC"), J = "https://get-micdrop.com", B = `${J}/api/orders/v2`, x = () => D();
636
- async function Je(e) {
666
+ const v = p("VC"), J = "https://get-micdrop.com", M = `${J}/api/orders/v2`, F = () => A();
667
+ async function Qe(e) {
637
668
  try {
638
- const r = await fetch(
639
- `${B}/gift-cards`,
669
+ const t = await fetch(
670
+ `${M}/gift-cards`,
640
671
  {
641
672
  method: "POST",
642
673
  headers: { "Content-Type": "application/json" },
643
674
  body: JSON.stringify(e)
644
675
  }
645
676
  );
646
- if (!r.ok) {
647
- const o = await r.json().catch(() => ({}));
648
- throw g.error("Gift card purchase creation failed:", o), new Error(o.error || "Failed to create gift card purchase");
677
+ if (!t.ok) {
678
+ const n = await t.json().catch(() => ({}));
679
+ throw v.error("Gift card purchase creation failed:", n), new C(n.error || "Failed to create gift card purchase", "lib/api/gift-cards/createGiftCardPurchase");
649
680
  }
650
- const t = await r.json();
651
- return g.debug("Gift card purchase created:", t), t;
652
- } catch (r) {
653
- return g.error("Gift card purchase creation error:", r), null;
681
+ const r = await t.json();
682
+ return v.debug("Gift card purchase created:", r), r;
683
+ } catch (t) {
684
+ return v.error("Gift card purchase creation error:", t), null;
654
685
  }
655
686
  }
656
- async function Be(e, r) {
687
+ async function Ye(e, t) {
657
688
  try {
658
- const t = await fetch(`${x()}/cart/${e}/apply-gift-card`, {
689
+ const r = await fetch(`${F()}/cart/${e}/apply-gift-card`, {
659
690
  method: "POST",
660
691
  headers: { "Content-Type": "application/json" },
661
- body: JSON.stringify({ giftCardCode: r })
692
+ body: JSON.stringify({ giftCardCode: t })
662
693
  });
663
- if (!t.ok) {
664
- if (t.status === 429)
694
+ if (!r.ok) {
695
+ if (r.status === 429)
665
696
  return {
666
697
  valid: !1,
667
698
  error: "Too many attempts. Please wait a moment and try again."
668
699
  };
669
- const n = await t.json().catch(() => ({}));
670
- return g.error("Apply gift card failed:", n), { valid: !1, error: n.error || "Invalid gift card code" };
700
+ const o = await r.json().catch(() => ({}));
701
+ return v.error("Apply gift card failed:", o), { valid: !1, error: o.error || "Invalid gift card code" };
671
702
  }
672
- const o = await t.json();
703
+ const n = await r.json();
673
704
  return {
674
705
  valid: !0,
675
- giftCardCode: o.giftCardCode,
676
- giftCardAmount: o.giftCardAmount,
677
- giftCardBalance: o.giftCardBalance,
678
- paymentType: o.paymentType,
679
- stripeAmount: o.stripeAmount,
680
- orderTotal: o.orderTotal,
681
- requiresStripe: o.requiresStripe
706
+ giftCardCode: n.giftCardCode,
707
+ giftCardAmount: n.giftCardAmount,
708
+ giftCardBalance: n.giftCardBalance,
709
+ paymentType: n.paymentType,
710
+ stripeAmount: n.stripeAmount,
711
+ orderTotal: n.orderTotal,
712
+ requiresStripe: n.requiresStripe
682
713
  };
683
- } catch (t) {
684
- return g.error("applyGiftCard error:", t), {
714
+ } catch (r) {
715
+ return v.error("applyGiftCard error:", r), {
685
716
  valid: !1,
686
717
  error: "Network error. Please check your connection and try again."
687
718
  };
688
719
  }
689
720
  }
690
- async function Me(e) {
721
+ async function Ke(e) {
691
722
  try {
692
- const r = await fetch(`${x()}/cart/${e}/gift-card`, {
723
+ const t = await fetch(`${F()}/cart/${e}/gift-card`, {
693
724
  method: "DELETE",
694
725
  headers: { "Content-Type": "application/json" }
695
726
  });
696
- if (!r.ok) {
697
- const t = await r.json().catch(() => ({}));
698
- return g.error("Remove gift card failed:", t), { success: !1, error: t.error || "Failed to remove gift card" };
727
+ if (!t.ok) {
728
+ const r = await t.json().catch(() => ({}));
729
+ return v.error("Remove gift card failed:", r), { success: !1, error: r.error || "Failed to remove gift card" };
699
730
  }
700
731
  return { success: !0 };
701
- } catch (r) {
702
- return g.error("removeGiftCard error:", r), {
732
+ } catch (t) {
733
+ return v.error("removeGiftCard error:", t), {
703
734
  success: !1,
704
735
  error: "Network error. Please check your connection and try again."
705
736
  };
706
737
  }
707
738
  }
708
- async function We(e, r) {
739
+ async function Xe(e, t) {
709
740
  try {
710
- const t = await fetch(
711
- `${x()}/cart/${e}/complete-gift-card-payment`,
741
+ const r = await fetch(
742
+ `${F()}/cart/${e}/complete-gift-card-payment`,
712
743
  {
713
744
  method: "POST",
714
745
  headers: { "Content-Type": "application/json" },
715
746
  body: JSON.stringify({
716
- firstName: r.firstName,
717
- lastName: r.lastName,
718
- email: r.email,
719
- phoneNumber: r.phoneNumber || null,
720
- mailingList: r.mailingList || !1
747
+ firstName: t.firstName,
748
+ lastName: t.lastName,
749
+ email: t.email,
750
+ phoneNumber: t.phoneNumber || null,
751
+ mailingList: t.mailingList || !1
721
752
  })
722
753
  }
723
754
  );
724
- if (!t.ok) {
725
- const n = await t.json().catch(() => ({}));
726
- return g.error("Complete gift card payment failed:", n), { success: !1, error: n.error || "Failed to complete payment" };
755
+ if (!r.ok) {
756
+ const o = await r.json().catch(() => ({}));
757
+ return v.error("Complete gift card payment failed:", o), { success: !1, error: o.error || "Failed to complete payment" };
727
758
  }
728
- const o = await t.json();
759
+ const n = await r.json();
729
760
  return {
730
761
  success: !0,
731
- orderId: o.orderId,
732
- confirmationNumber: o.confirmationNumber
762
+ orderId: n.orderId,
763
+ confirmationNumber: n.confirmationNumber
733
764
  };
734
- } catch (t) {
735
- return g.error("completeGiftCardPayment error:", t), {
765
+ } catch (r) {
766
+ return v.error("completeGiftCardPayment error:", r), {
736
767
  success: !1,
737
768
  error: "Network error. Please check your connection and try again."
738
769
  };
739
770
  }
740
771
  }
741
- const I = v("VC"), M = {
772
+ const T = p("VC"), W = {
742
773
  waitlist_not_enabled: "Waitlist is not available for this event",
743
774
  event_not_found: "Event not found",
744
775
  invalid_phone: "Please enter a valid phone number",
745
776
  already_purchased: "You have already purchased tickets for this event",
746
777
  phone_already_registered: "This phone number is already on the waitlist"
747
778
  };
748
- async function He(e, r, t = null, o = !1) {
779
+ async function Ze(e, t, r = null, n = !1) {
749
780
  try {
750
- const n = { email: r };
751
- t && o && (n.phone = t, n.smsOptIn = !0);
752
- const c = await fetch(`${a()}/events/${e}/waitlist`, {
781
+ const o = { email: t };
782
+ r && n && (o.phone = r, o.smsOptIn = !0);
783
+ const a = await fetch(`${c()}/events/${e}/waitlist`, {
753
784
  method: "POST",
754
785
  headers: { "Content-Type": "application/json" },
755
- body: JSON.stringify(n)
786
+ body: JSON.stringify(o)
756
787
  });
757
- if (!c.ok) {
758
- const i = await c.json().catch(() => ({}));
759
- return I.error("Join waitlist failed:", i), {
788
+ if (!a.ok) {
789
+ const i = await a.json().catch(() => ({}));
790
+ return T.error("Join waitlist failed:", i), {
760
791
  success: !1,
761
- error: M[i.error] || "Failed to join waitlist. Please try again."
792
+ error: W[i.error] || "Failed to join waitlist. Please try again."
762
793
  };
763
794
  }
764
- const s = await c.json();
795
+ const s = await a.json();
765
796
  return {
766
797
  success: !0,
767
798
  position: s.position,
768
799
  updated: s.updated
769
800
  };
770
- } catch (n) {
771
- return I.error("joinWaitlist error:", n), {
801
+ } catch (o) {
802
+ return T.error("joinWaitlist error:", o), {
772
803
  success: !1,
773
804
  error: "Network error. Please check your connection and try again."
774
805
  };
775
806
  }
776
807
  }
777
- async function Qe(e, r) {
808
+ async function Ve(e, t) {
778
809
  try {
779
- const t = await fetch(
780
- `${a()}/events/${e}/waitlist/position?email=${encodeURIComponent(r)}`
810
+ const r = await fetch(
811
+ `${c()}/events/${e}/waitlist/position?email=${encodeURIComponent(t)}`
781
812
  );
782
- return t.ok ? { position: (await t.json()).position } : t.status === 404 ? { position: null } : { position: null, error: "Failed to check position" };
783
- } catch (t) {
784
- return I.error("getWaitlistPosition error:", t), { position: null, error: "Network error" };
813
+ return r.ok ? { position: (await r.json()).position } : r.status === 404 ? { position: null } : { position: null, error: "Failed to check position" };
814
+ } catch (r) {
815
+ return T.error("getWaitlistPosition error:", r), { position: null, error: "Network error" };
785
816
  }
786
817
  }
787
- function Ye(e, r, t = {}) {
818
+ function Q(e) {
819
+ if (!e || !(e.isHidden === !0 || typeof e.visibility == "number" && e.visibility >= 2) || e.salesChannel === 2) return !1;
820
+ const r = /* @__PURE__ */ new Date(), n = e.salesBegin || e.salesStart || e.saleBegin || e.onSaleStart, o = e.salesEnd || e.saleEnd || e.onSaleEnd;
821
+ if (n && new Date(n) > r || o && new Date(o) < r) return !1;
822
+ const a = e.remainingCapacity ?? e.quantityRemaining ?? e.quantity;
823
+ return !(e.soldOut || a != null && a <= 0);
824
+ }
825
+ function et(e, t, r = {}) {
788
826
  const {
789
- cancelled: o = !1,
790
- isRegistration: n = !1,
791
- waitlistEnabled: c = !1
792
- } = t, s = /* @__PURE__ */ new Date();
793
- if (o)
827
+ cancelled: n = !1,
828
+ isRegistration: o = !1,
829
+ waitlistEnabled: a = !1
830
+ } = r, s = /* @__PURE__ */ new Date();
831
+ if (n)
794
832
  return { text: "Cancelled", disabled: !0, reason: "cancelled" };
795
833
  const i = e.endDateTime || e.startDateTime;
796
834
  if (i && new Date(i) < s)
797
835
  return { text: "Sales ended", disabled: !0, reason: "event_past" };
798
- const l = (r || []).filter((f) => f.salesChannel !== 2);
799
- if (l.length === 0)
800
- return {
836
+ const l = e?.hasPurchasableHiddenTickets === !0 || Array.isArray(t) && t.some(Q), _ = (t || []).filter(
837
+ (d) => d.salesChannel !== 2 && !d.isHidden && !(typeof d.visibility == "number" && d.visibility >= 2)
838
+ );
839
+ if (_.length === 0)
840
+ return l ? {
841
+ text: o ? "Reserve a spot" : "Get tickets",
842
+ disabled: !1,
843
+ reason: "hidden_only"
844
+ } : {
801
845
  text: "No tickets available",
802
846
  disabled: !0,
803
847
  reason: "no_tickets"
804
848
  };
805
- let $ = !1, y = !0, _ = !0, d = null;
806
- for (const f of l) {
807
- const P = f.salesBegin || f.salesStart || f.saleBegin || f.onSaleStart, S = f.salesEnd || f.saleEnd || f.onSaleEnd, w = f.remainingCapacity ?? f.quantityRemaining ?? f.quantity, C = f.soldOut || w != null && w <= 0, p = P ? new Date(P) > s : !1, F = S ? new Date(S) < s : !1;
808
- if (!C && !p && !F && ($ = !0), C || (y = !1), p || (_ = !1), p && P && !C && !F) {
809
- const T = new Date(P);
810
- (!d || T < d) && (d = T);
849
+ let h = !1, m = !0, g = !0, w = null;
850
+ for (const d of _) {
851
+ const $ = d.salesBegin || d.salesStart || d.saleBegin || d.onSaleStart, j = d.salesEnd || d.saleEnd || d.onSaleEnd, b = d.remainingCapacity ?? d.quantityRemaining ?? d.quantity, S = d.soldOut || b != null && b <= 0, D = $ ? new Date($) > s : !1, U = j ? new Date(j) < s : !1;
852
+ if (!S && !D && !U && (h = !0), S || (m = !1), D || (g = !1), D && $ && !S && !U) {
853
+ const R = new Date($);
854
+ (!w || R < w) && (w = R);
811
855
  }
812
856
  }
813
- if ($)
857
+ if (h)
814
858
  return {
815
- text: n ? "Reserve a spot" : "Get tickets",
859
+ text: o ? "Reserve a spot" : "Get tickets",
816
860
  disabled: !1,
817
861
  reason: "available"
818
862
  };
819
- if (_ && d) {
820
- const f = d.getTime() - s.getTime(), P = f / (1e3 * 60 * 60), S = f / (1e3 * 60 * 60 * 24);
821
- let w;
822
- if (P < 24)
823
- w = d.toLocaleTimeString("en-US", {
863
+ if (g && w) {
864
+ if (l)
865
+ return {
866
+ text: o ? "Reserve a spot" : "Get tickets",
867
+ disabled: !1,
868
+ reason: "hidden_only"
869
+ };
870
+ const d = w.getTime() - s.getTime(), $ = d / (1e3 * 60 * 60), j = d / (1e3 * 60 * 60 * 24);
871
+ let b;
872
+ if ($ < 24)
873
+ b = w.toLocaleTimeString("en-US", {
824
874
  hour: "numeric",
825
875
  minute: "2-digit",
826
876
  hour12: !0
827
877
  });
828
- else if (S <= 7)
829
- w = U(
830
- d,
878
+ else if (j <= 7)
879
+ b = q(
880
+ w,
831
881
  { weekday: "short", hour: "numeric", minute: "2-digit", hour12: !0 },
832
882
  "en-US"
833
883
  );
834
884
  else {
835
- const C = U(
836
- d,
885
+ const S = q(
886
+ w,
837
887
  { month: "short", day: "numeric" },
838
888
  "en-US"
839
- ), p = d.toLocaleTimeString("en-US", {
889
+ ), D = w.toLocaleTimeString("en-US", {
840
890
  hour: "numeric",
841
891
  minute: "2-digit",
842
892
  hour12: !0
843
893
  });
844
- w = `${C} ${p}`;
894
+ b = `${S} ${D}`;
845
895
  }
846
896
  return {
847
- text: `On sale ${w}`,
897
+ text: `On sale ${b}`,
848
898
  disabled: !0,
849
899
  reason: "coming_soon"
850
900
  };
851
901
  }
852
- return y ? c ? {
902
+ return m ? l ? {
903
+ text: o ? "Reserve a spot" : "Get tickets",
904
+ disabled: !1,
905
+ reason: "hidden_only"
906
+ } : a ? {
853
907
  text: "Join Waitlist",
854
908
  disabled: !1,
855
909
  reason: "sold_out_waitlist"
856
- } : { text: "Sold out", disabled: !0, reason: "sold_out" } : { text: "Sales ended", disabled: !0, reason: "sales_ended" };
910
+ } : { text: "Sold out", disabled: !0, reason: "sold_out" } : l ? {
911
+ text: o ? "Reserve a spot" : "Get tickets",
912
+ disabled: !1,
913
+ reason: "hidden_only"
914
+ } : { text: "Sales ended", disabled: !0, reason: "sales_ended" };
857
915
  }
858
- function W(e) {
916
+ function Y(e) {
859
917
  return {
860
918
  uuid: e.uuid || String(e.id || e.ID || ""),
861
919
  id: e.id || e.ID,
@@ -872,8 +930,8 @@ function W(e) {
872
930
  checkedInAt: e.checkedInAt || e.checked_in_at
873
931
  };
874
932
  }
875
- function H(e) {
876
- const r = e.purchasedTickets || e.tickets || e.purchased_tickets || [];
933
+ function K(e) {
934
+ const t = e.purchasedTickets || e.tickets || e.purchased_tickets || [];
877
935
  return {
878
936
  uuid: e.uuid || String(e.id || e.ID || ""),
879
937
  id: e.id || e.ID,
@@ -888,57 +946,57 @@ function H(e) {
888
946
  discount: e.discount || 0,
889
947
  paymentIntentId: e.paymentIntentId || e.payment_intent_id,
890
948
  paymentMethod: e.paymentMethod || e.payment_method,
891
- purchasedTickets: r.map(W),
949
+ purchasedTickets: t.map(Y),
892
950
  createdAt: e.createdAt || e.created_at,
893
951
  updatedAt: e.updatedAt || e.updated_at
894
952
  };
895
953
  }
896
- function Ke(e) {
897
- const r = H(e), t = r.uuid.split("-")[0] || r.uuid;
954
+ function tt(e) {
955
+ const t = K(e), r = t.uuid.split("-")[0] || t.uuid;
898
956
  return {
899
- orderId: r.uuid,
900
- displayOrderId: t,
901
- email: r.customerEmail,
902
- customerName: [r.customerFirstName, r.customerLastName].filter(Boolean).join(" "),
903
- total: r.totalAmount,
904
- formattedTotal: `${q(
905
- r.totalAmount / 100
957
+ orderId: t.uuid,
958
+ displayOrderId: r,
959
+ email: t.customerEmail,
960
+ customerName: [t.customerFirstName, t.customerLastName].filter(Boolean).join(" "),
961
+ total: t.totalAmount,
962
+ formattedTotal: `${O(
963
+ t.totalAmount / 100
906
964
  /* FIXME(canonical-cleanup:toFixed): this cast bypasses the brand boundary; replace with toCents/toUSD at the API-response-transform layer. */
907
965
  )}`,
908
- ticketCount: r.purchasedTickets.length,
909
- status: r.status
966
+ ticketCount: t.purchasedTickets.length,
967
+ status: t.status
910
968
  };
911
969
  }
912
- const Q = "https://micdrop-images.sfo3.digitaloceanspaces.com";
913
- function Y(e) {
914
- return e ? e.startsWith("http") ? e : `${Q}/${e.replace(/^\//, "")}` : "";
970
+ const X = "https://micdrop-images.sfo3.digitaloceanspaces.com";
971
+ function Z(e) {
972
+ return e ? e.startsWith("http") ? e : `${X}/${e.replace(/^\//, "")}` : "";
915
973
  }
916
- function R(e) {
917
- const r = e.imageUrl || e.imageURL || e.image_url || e.image || "";
918
- return Y(r);
974
+ function E(e) {
975
+ const t = e.imageUrl || e.imageURL || e.image_url || e.image || "";
976
+ return Z(t);
919
977
  }
920
- function K(e) {
921
- const r = e.ctaState || e.cta_state;
922
- if (r)
923
- return r;
978
+ function V(e) {
979
+ const t = e.ctaState || e.cta_state;
980
+ if (t)
981
+ return t;
924
982
  if (e.isCancelled || e.is_cancelled)
925
983
  return "ended";
926
- const t = e.startDateTime || e.start_date_time || e.date;
927
- if (t) {
928
- const s = new Date(t).getTime(), i = Date.now();
984
+ const r = e.startDateTime || e.start_date_time || e.date;
985
+ if (r) {
986
+ const s = new Date(r).getTime(), i = Date.now();
929
987
  if (s < i)
930
988
  return "ended";
931
989
  }
932
- const o = e.ticketsAvailable ?? e.tickets_available;
933
- if (o !== void 0)
934
- return o <= 0 ? "sold_out" : "available";
935
- const n = e.availableTickets || e.available_tickets || e.tickets || [];
936
- return n.length === 0 ? "coming_soon" : n.reduce((s, i) => {
937
- const l = i.quantityAvailable ?? i.quantity_available ?? i.quantity ?? 0, $ = i.quantitySold ?? i.quantity_sold ?? 0;
938
- return s + Math.max(0, l - $);
990
+ const n = e.ticketsAvailable ?? e.tickets_available;
991
+ if (n !== void 0)
992
+ return n <= 0 ? "sold_out" : "available";
993
+ const o = e.availableTickets || e.available_tickets || e.tickets || [];
994
+ return o.length === 0 ? "coming_soon" : o.reduce((s, i) => {
995
+ const l = i.quantityAvailable ?? i.quantity_available ?? i.quantity ?? 0, _ = i.quantitySold ?? i.quantity_sold ?? 0;
996
+ return s + Math.max(0, l - _);
939
997
  }, 0) <= 0 ? "sold_out" : "available";
940
998
  }
941
- function X(e) {
999
+ function ee(e) {
942
1000
  return {
943
1001
  id: e.id || e.ID,
944
1002
  name: e.name || e.ticketName || "",
@@ -958,8 +1016,8 @@ function X(e) {
958
1016
  sortOrder: e.sortOrder || e.sort_order || 0
959
1017
  };
960
1018
  }
961
- function Z(e) {
962
- const t = (e.availableTickets || e.available_tickets || e.tickets || []).map(X), o = t.map((s) => s.price).filter((s) => s > 0), n = o.length > 0 ? Math.min(...o) : void 0, c = o.length > 0 ? Math.max(...o) : void 0;
1019
+ function te(e) {
1020
+ const r = (e.availableTickets || e.available_tickets || e.tickets || []).map(ee), n = r.map((s) => s.price).filter((s) => s > 0), o = n.length > 0 ? Math.min(...n) : void 0, a = n.length > 0 ? Math.max(...n) : void 0;
963
1021
  return {
964
1022
  eventID: e.eventID || e.id || e.ID || 0,
965
1023
  id: e.id || e.ID,
@@ -976,29 +1034,29 @@ function Z(e) {
976
1034
  venueName: e.venueName || e.venue_name,
977
1035
  venueAddress: e.venueAddress || e.venue_address,
978
1036
  location: e.location || e.venueAddress || e.venue_address,
979
- imageUrl: R(e),
980
- imageURL: R(e),
1037
+ imageUrl: E(e),
1038
+ imageURL: E(e),
981
1039
  status: e.status,
982
1040
  isPublished: e.isPublished ?? e.is_published,
983
1041
  isCancelled: e.isCancelled ?? e.is_cancelled,
984
- availableTickets: t,
985
- ticketsAvailable: e.ticketsAvailable ?? e.tickets_available ?? t.reduce((s, i) => s + (i.quantityAvailable || 0), 0),
1042
+ availableTickets: r,
1043
+ ticketsAvailable: e.ticketsAvailable ?? e.tickets_available ?? r.reduce((s, i) => s + (i.quantityAvailable || 0), 0),
986
1044
  ticketsSold: e.ticketsSold ?? e.tickets_sold,
987
- minPrice: e.minPrice ?? e.min_price ?? n,
988
- maxPrice: e.maxPrice ?? e.max_price ?? c,
1045
+ minPrice: e.minPrice ?? e.min_price ?? o,
1046
+ maxPrice: e.maxPrice ?? e.max_price ?? a,
989
1047
  ctaText: e.ctaText || e.cta_text,
990
- ctaState: K(e),
1048
+ ctaState: V(e),
991
1049
  showPerformers: e.showPerformers ?? e.show_performers,
992
1050
  eventSeriesId: e.eventSeriesId || e.event_series_id,
993
1051
  seriesInstanceNumber: e.seriesInstanceNumber || e.series_instance_number
994
1052
  };
995
1053
  }
996
- const Xe = Z, V = "https://micdrop-images.sfo3.digitaloceanspaces.com";
997
- function ee(e) {
998
- return e ? e.startsWith("http") ? e : `${V}/${e.replace(/^\//, "")}` : "";
1054
+ const rt = te, re = "https://micdrop-images.sfo3.digitaloceanspaces.com";
1055
+ function ne(e) {
1056
+ return e ? e.startsWith("http") ? e : `${re}/${e.replace(/^\//, "")}` : "";
999
1057
  }
1000
- function Ze(e) {
1001
- const r = e.logoUrl || e.logo_url || e.logo;
1058
+ function nt(e) {
1059
+ const t = e.logoUrl || e.logo_url || e.logo;
1002
1060
  return {
1003
1061
  id: e.id || e.ID || 0,
1004
1062
  name: e.name || "",
@@ -1010,21 +1068,21 @@ function Ze(e) {
1010
1068
  zipCode: e.zipCode || e.zip_code,
1011
1069
  country: e.country,
1012
1070
  timezone: e.timezone || e.time_zone,
1013
- logoUrl: ee(r),
1071
+ logoUrl: ne(t),
1014
1072
  serviceFeePercentage: e.serviceFeePercentage ?? e.service_fee_percentage ?? 0,
1015
1073
  serviceFeeCents: e.serviceFeeCents ?? e.service_fee_cents ?? 0,
1016
1074
  taxPercentage: e.taxPercentage ?? e.tax_percentage ?? 0,
1017
1075
  organizationId: e.organizationId || e.organization_id
1018
1076
  };
1019
1077
  }
1020
- function Ve(e) {
1078
+ function ot(e) {
1021
1079
  return {
1022
1080
  serviceFeePercentage: e.serviceFeePercentage ?? e.service_fee_percentage ?? 0,
1023
1081
  serviceFeeCents: e.serviceFeeCents ?? e.service_fee_cents ?? 0,
1024
1082
  taxPercentage: e.taxPercentage ?? e.tax_percentage ?? 0
1025
1083
  };
1026
1084
  }
1027
- function er(e) {
1085
+ function st(e) {
1028
1086
  return [
1029
1087
  e.address,
1030
1088
  e.city,
@@ -1033,66 +1091,67 @@ function er(e) {
1033
1091
  ].filter(Boolean).join(", ");
1034
1092
  }
1035
1093
  export {
1036
- de as apiDelete,
1037
- ie as apiGet,
1038
- ue as apiPost,
1039
- le as apiPut,
1040
- Be as applyGiftCard,
1041
- Se as applyPromoCode,
1042
- K as calculateCtaState,
1043
- ye as cancelReservation,
1044
- qe as checkCollectionPassword,
1045
- Ee as checkEventPassword,
1046
- We as completeGiftCardPayment,
1047
- he as completeReservation,
1048
- Ye as computeCtaState,
1049
- ne as configureApi,
1050
- Je as createGiftCardPurchase,
1051
- ge as createOrder,
1052
- fe as createPaymentIntent,
1053
- ve as extendCheckoutSession,
1054
- Ve as extractVenueFees,
1055
- Ae as fetchAllVenues,
1056
- De as fetchEventDetails,
1057
- Ne as fetchEventPerformers,
1058
- je as fetchEventTickets,
1059
- Le as fetchPublicCollection,
1060
- Ue as fetchSeriesOccurrences,
1061
- Re as fetchSeriesPage,
1062
- Ie as fetchVenueEvents,
1063
- er as formatVenueAddress,
1064
- se as getApiConfig,
1065
- Y as getCDNImageUrl,
1066
- ce as getClientIP,
1067
- R as getEventImageUrl,
1068
- ae as getLegacyPublicUrl,
1069
- xe as getMonthEvents,
1070
- we as getOrder,
1071
- D as getOrdersV2Url,
1072
- Fe as getOrgMonthEvents,
1073
- a as getPublicBaseUrl,
1074
- Te as getSeriesOccurrences,
1075
- $e as getSessionStatus,
1076
- z as getVenue,
1077
- ze as getVenueBySlug,
1078
- Ge as getVenueFees,
1079
- Qe as getWaitlistPosition,
1080
- pe as hasPromoCodes,
1081
- Pe as initiateOrder,
1082
- He as joinWaitlist,
1083
- Me as removeGiftCard,
1094
+ ye as apiDelete,
1095
+ fe as apiGet,
1096
+ me as apiPost,
1097
+ he as apiPut,
1098
+ Ye as applyGiftCard,
1099
+ Ne as applyPromoCode,
1100
+ V as calculateCtaState,
1101
+ be as cancelReservation,
1102
+ ze as checkCollectionPassword,
1103
+ He as checkEventPassword,
1104
+ Xe as completeGiftCardPayment,
1105
+ _e as completeReservation,
1106
+ et as computeCtaState,
1107
+ ie as configureApi,
1108
+ Qe as createGiftCardPurchase,
1109
+ pe as createOrder,
1110
+ ge as createPaymentIntent,
1111
+ Ce as extendCheckoutSession,
1112
+ ot as extractVenueFees,
1113
+ Ue as fetchAllVenues,
1114
+ xe as fetchEventDetails,
1115
+ Fe as fetchEventPerformers,
1116
+ Te as fetchEventTickets,
1117
+ Be as fetchPublicCollection,
1118
+ Oe as fetchSeriesOccurrences,
1119
+ Ge as fetchSeriesPage,
1120
+ Re as fetchVenueEvents,
1121
+ st as formatVenueAddress,
1122
+ ue as getApiConfig,
1123
+ Z as getCDNImageUrl,
1124
+ we as getCartByUUID,
1125
+ de as getClientIP,
1126
+ E as getEventImageUrl,
1127
+ le as getLegacyPublicUrl,
1128
+ qe as getMonthEvents,
1129
+ $e as getOrder,
1130
+ A as getOrdersV2Url,
1131
+ Ee as getOrgMonthEvents,
1132
+ c as getPublicBaseUrl,
1133
+ Le as getSeriesOccurrences,
1134
+ Se as getSessionStatus,
1135
+ H as getVenue,
1136
+ We as getVenueBySlug,
1137
+ Me as getVenueFees,
1138
+ Ve as getWaitlistPosition,
1139
+ Ie as hasPromoCodes,
1140
+ De as initiateOrder,
1141
+ Ze as joinWaitlist,
1142
+ Ke as removeGiftCard,
1084
1143
  ke as removePromoCode,
1085
- Oe as testNetworkConnection,
1086
- be as trackUTMSource,
1087
- X as transformAvailableTicket,
1088
- Z as transformEvent,
1089
- Xe as transformEventData,
1090
- H as transformOrder,
1091
- Ke as transformOrderForDisplay,
1092
- W as transformTicket,
1093
- Ze as transformVenue,
1094
- me as updateCartQuantities,
1095
- _e as validatePaymentIntent,
1096
- Ce as validatePromoCode
1144
+ Je as testNetworkConnection,
1145
+ Ae as trackUTMSource,
1146
+ ee as transformAvailableTicket,
1147
+ te as transformEvent,
1148
+ rt as transformEventData,
1149
+ K as transformOrder,
1150
+ tt as transformOrderForDisplay,
1151
+ Y as transformTicket,
1152
+ nt as transformVenue,
1153
+ ve as updateCartQuantities,
1154
+ Pe as validatePaymentIntent,
1155
+ je as validatePromoCode
1097
1156
  };
1098
1157
  //# sourceMappingURL=api.mjs.map