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