@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
@@ -1,91 +1,129 @@
1
- import { ag as C, u as O, v as $, f as _ } from "./VenueCalendar-BjvqDumC.js";
1
+ import { ak as A, v as E, w as F, f as _ } from "./VenueCalendar-D-i3taSj.js";
2
2
  import "svelte/internal/disclose-version";
3
3
  import * as e from "svelte/internal/client";
4
4
  import "svelte/internal/flags/legacy";
5
5
  import "svelte/transition";
6
6
  import "svelte/easing";
7
- import { T as b } from "./Text-CXR2fhx6.js";
8
- function N(i, t, n = {}) {
7
+ import { T as k } from "./Text-CXR2fhx6.js";
8
+ function I(t) {
9
+ if (!t || !(t.isHidden === !0 || typeof t.visibility == "number" && t.visibility >= 2) || t.salesChannel === 2) return !1;
10
+ const n = /* @__PURE__ */ new Date(), r = t.salesBegin || t.salesStart || t.saleBegin || t.onSaleStart, p = t.salesEnd || t.saleEnd || t.onSaleEnd;
11
+ if (r && new Date(r) > n || p && new Date(p) < n) return !1;
12
+ const h = t.remainingCapacity ?? t.quantityRemaining ?? t.quantity;
13
+ return !(t.soldOut || h != null && h <= 0);
14
+ }
15
+ function N(t, a, n = {}) {
9
16
  const {
10
- cancelled: d = !1,
11
- isRegistration: T = !1,
12
- waitlistEnabled: y = !1
13
- } = n, p = /* @__PURE__ */ new Date();
14
- if (d)
17
+ cancelled: r = !1,
18
+ isRegistration: p = !1,
19
+ waitlistEnabled: h = !1
20
+ } = n, m = /* @__PURE__ */ new Date();
21
+ if (r)
15
22
  return { text: "Cancelled", disabled: !0, reason: "cancelled" };
16
- const l = i.endDateTime || i.startDateTime;
17
- if (l && new Date(l) < p)
23
+ const c = t.endDateTime || t.startDateTime;
24
+ if (c && new Date(c) < m)
18
25
  return { text: "Sales ended", disabled: !0, reason: "event_past" };
19
- const P = (t || []).filter((c) => c.salesChannel !== 2);
20
- if (P.length === 0)
21
- return {
26
+ const x = t?.hasPurchasableHiddenTickets === !0 || Array.isArray(a) && a.some(I), y = (a || []).filter(
27
+ (u) => u.salesChannel !== 2 && !u.isHidden && !(typeof u.visibility == "number" && u.visibility >= 2)
28
+ );
29
+ if (y.length === 0)
30
+ return x ? {
31
+ text: p ? "Reserve a spot" : "Get tickets",
32
+ disabled: !1,
33
+ reason: "hidden_only"
34
+ } : {
22
35
  text: "No tickets available",
23
36
  disabled: !0,
24
37
  reason: "no_tickets"
25
38
  };
26
- let f = !1, x = !0, D = !0, w = null;
27
- for (const c of P) {
28
- const k = c.salesBegin || c.salesStart || c.saleBegin || c.onSaleStart, S = c.salesEnd || c.saleEnd || c.onSaleEnd, a = c.remainingCapacity ?? c.quantityRemaining ?? c.quantity, s = c.soldOut || a != null && a <= 0, o = k ? new Date(k) > p : !1, m = S ? new Date(S) < p : !1;
29
- if (!s && !o && !m && (f = !0), s || (x = !1), o || (D = !1), o && k && !s && !m) {
30
- const h = new Date(k);
31
- (!w || h < w) && (w = h);
39
+ let D = !1, P = !0, q = !0, b = null;
40
+ for (const u of y) {
41
+ const S = u.salesBegin || u.salesStart || u.saleBegin || u.onSaleStart, o = u.salesEnd || u.saleEnd || u.onSaleEnd, s = u.remainingCapacity ?? u.quantityRemaining ?? u.quantity, d = u.soldOut || s != null && s <= 0, g = S ? new Date(S) > m : !1, f = o ? new Date(o) < m : !1;
42
+ if (!d && !g && !f && (D = !0), d || (P = !1), g || (q = !1), g && S && !d && !f) {
43
+ const l = new Date(S);
44
+ (!b || l < b) && (b = l);
32
45
  }
33
46
  }
34
- if (f)
47
+ if (D)
35
48
  return {
36
- text: T ? "Reserve a spot" : "Get tickets",
49
+ text: p ? "Reserve a spot" : "Get tickets",
37
50
  disabled: !1,
38
51
  reason: "available"
39
52
  };
40
- if (D && w) {
41
- const c = w.getTime() - p.getTime(), k = c / (1e3 * 60 * 60), S = c / (1e3 * 60 * 60 * 24);
42
- let a;
43
- if (k < 24)
44
- a = w.toLocaleTimeString("en-US", {
53
+ if (q && b) {
54
+ if (x)
55
+ return {
56
+ text: p ? "Reserve a spot" : "Get tickets",
57
+ disabled: !1,
58
+ reason: "hidden_only"
59
+ };
60
+ const u = b.getTime() - m.getTime(), S = u / (1e3 * 60 * 60), o = u / (1e3 * 60 * 60 * 24);
61
+ let s;
62
+ if (S < 24)
63
+ s = b.toLocaleTimeString("en-US", {
45
64
  hour: "numeric",
46
65
  minute: "2-digit",
47
66
  hour12: !0
48
67
  });
49
- else if (S <= 7)
50
- a = C(
51
- w,
68
+ else if (o <= 7)
69
+ s = A(
70
+ b,
52
71
  { weekday: "short", hour: "numeric", minute: "2-digit", hour12: !0 },
53
72
  "en-US"
54
73
  );
55
74
  else {
56
- const s = C(
57
- w,
75
+ const d = A(
76
+ b,
58
77
  { month: "short", day: "numeric" },
59
78
  "en-US"
60
- ), o = w.toLocaleTimeString("en-US", {
79
+ ), g = b.toLocaleTimeString("en-US", {
61
80
  hour: "numeric",
62
81
  minute: "2-digit",
63
82
  hour12: !0
64
83
  });
65
- a = `${s} ${o}`;
84
+ s = `${d} ${g}`;
66
85
  }
67
86
  return {
68
- text: `On sale ${a}`,
87
+ text: `On sale ${s}`,
69
88
  disabled: !0,
70
89
  reason: "coming_soon"
71
90
  };
72
91
  }
73
- return x ? y ? {
92
+ return P ? x ? {
93
+ text: p ? "Reserve a spot" : "Get tickets",
94
+ disabled: !1,
95
+ reason: "hidden_only"
96
+ } : h ? {
74
97
  text: "Join Waitlist",
75
98
  disabled: !1,
76
99
  reason: "sold_out_waitlist"
77
- } : { text: "Sold out", disabled: !0, reason: "sold_out" } : { text: "Sales ended", disabled: !0, reason: "sales_ended" };
100
+ } : { text: "Sold out", disabled: !0, reason: "sold_out" } : x ? {
101
+ text: p ? "Reserve a spot" : "Get tickets",
102
+ disabled: !1,
103
+ reason: "hidden_only"
104
+ } : { text: "Sales ended", disabled: !0, reason: "sales_ended" };
78
105
  }
79
- const F = {
106
+ function i(t, a, n = 0) {
107
+ const r = /* @__PURE__ */ new Date(), h = (5 - r.getUTCDay() + 7) % 7 || 7, m = new Date(
108
+ Date.UTC(r.getUTCFullYear(), r.getUTCMonth(), r.getUTCDate())
109
+ );
110
+ m.setUTCDate(m.getUTCDate() + h + t);
111
+ const c = m.getUTCFullYear(), x = String(m.getUTCMonth() + 1).padStart(2, "0"), y = String(m.getUTCDate()).padStart(2, "0"), D = String(a).padStart(2, "0"), P = String(n).padStart(2, "0");
112
+ return `${c}-${x}-${y}T${D}:${P}:00-08:00`;
113
+ }
114
+ function C(t) {
115
+ return i(t, 0).slice(0, 10);
116
+ }
117
+ const U = {
80
118
  id: 101,
81
119
  name: "The Laugh Factory",
82
120
  address: "8001 Sunset Blvd, Los Angeles, CA 90046",
83
- timezone: O(),
121
+ timezone: E(),
84
122
  serviceFeePercentage: 10,
85
123
  serviceFeeCents: 0,
86
124
  taxPercentage: 9.5,
87
125
  contactEmail: "help@thelaughfactory.com"
88
- }, A = [
126
+ }, R = [
89
127
  {
90
128
  id: 1,
91
129
  displayName: "Dave Martinez",
@@ -101,7 +139,7 @@ const F = {
101
139
  displayName: "Mike Thompson",
102
140
  profileImage: "https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=200&h=200&fit=crop"
103
141
  }
104
- ], H = [
142
+ ], M = [
105
143
  {
106
144
  question: "What time do doors open?",
107
145
  answer: "Doors open at 7:00 PM, one hour before showtime. We recommend arriving early to get the best seats."
@@ -118,7 +156,7 @@ const F = {
118
156
  question: "Is the venue accessible?",
119
157
  answer: "Yes, the venue is fully wheelchair accessible with ADA-compliant seating available. Please contact us to reserve accessible seating."
120
158
  }
121
- ], E = [
159
+ ], H = [
122
160
  {
123
161
  id: 101,
124
162
  name: "General Admission",
@@ -130,7 +168,7 @@ const F = {
130
168
  minPerOrder: 1,
131
169
  maxPerOrder: 8,
132
170
  status: "on_sale",
133
- salesEndDate: "2026-02-20T20:00:00-08:00",
171
+ salesEndDate: i(0, 20),
134
172
  isDonation: !1,
135
173
  isHidden: !1
136
174
  },
@@ -145,7 +183,7 @@ const F = {
145
183
  minPerOrder: 1,
146
184
  maxPerOrder: 4,
147
185
  status: "on_sale",
148
- salesEndDate: "2026-02-20T20:00:00-08:00",
186
+ salesEndDate: i(0, 20),
149
187
  isDonation: !1,
150
188
  isHidden: !1
151
189
  },
@@ -190,8 +228,78 @@ const F = {
190
228
  status: "sold_out",
191
229
  isDonation: !1,
192
230
  isHidden: !1
231
+ },
232
+ {
233
+ id: 106,
234
+ name: "Senior (65+)",
235
+ description: "Senior discount with valid ID at the door",
236
+ price: 18,
237
+ fee: 1.8,
238
+ quantityAvailable: 30,
239
+ quantityTotal: 40,
240
+ minPerOrder: 1,
241
+ maxPerOrder: 4,
242
+ status: "on_sale",
243
+ isDonation: !1,
244
+ isHidden: !1
245
+ },
246
+ {
247
+ id: 107,
248
+ name: "Industry Comp",
249
+ description: "Discount for industry professionals — credentials required",
250
+ price: 12,
251
+ fee: 1.2,
252
+ quantityAvailable: 25,
253
+ quantityTotal: 30,
254
+ minPerOrder: 1,
255
+ maxPerOrder: 2,
256
+ status: "on_sale",
257
+ isDonation: !1,
258
+ isHidden: !1
259
+ },
260
+ {
261
+ id: 108,
262
+ name: "Group of 6",
263
+ description: "Reserved booth for six guests with priority seating",
264
+ price: 240,
265
+ fee: 24,
266
+ quantityAvailable: 5,
267
+ quantityTotal: 8,
268
+ minPerOrder: 1,
269
+ maxPerOrder: 2,
270
+ status: "on_sale",
271
+ isDonation: !1,
272
+ isHidden: !1
273
+ },
274
+ {
275
+ id: 109,
276
+ name: "Standing Room",
277
+ description: "Standing room only at the back of the venue",
278
+ price: 12,
279
+ fee: 1.2,
280
+ quantityAvailable: 50,
281
+ quantityTotal: 60,
282
+ minPerOrder: 1,
283
+ maxPerOrder: 6,
284
+ status: "on_sale",
285
+ isDonation: !1,
286
+ isHidden: !1
287
+ },
288
+ {
289
+ id: 110,
290
+ name: "Day-of Door",
291
+ description: "Day-of pricing for walk-ins — limited availability",
292
+ price: 35,
293
+ fee: 3.5,
294
+ quantityAvailable: 20,
295
+ quantityTotal: 25,
296
+ minPerOrder: 1,
297
+ maxPerOrder: 4,
298
+ status: "on_sale",
299
+ isDonation: !1,
300
+ isHidden: !1
193
301
  }
194
- ], g = {
302
+ ], v = {
195
303
  id: 2405,
196
304
  title: "Friday Night Comedy Throwdown",
197
305
  slug: "friday-night-comedy-throwdown",
@@ -200,17 +308,17 @@ const F = {
200
308
  Headliner Dave Martinez (as seen on Netflix's "Comedy Knockout") brings his signature high-energy style, while Sarah Chen delivers her razor-sharp observational humor that's earned her a devoted following. Host Mike Thompson keeps the energy up between sets with crowd work that'll have you crying laughing.
201
309
 
202
310
  Whether you're a comedy regular or a first-timer, this show delivers. Grab your crew, grab some drinks, and prepare to laugh until your abs hurt.`,
203
- date: "2026-02-20",
204
- startDateTime: "2026-02-20T20:00:00-08:00",
205
- endDateTime: "2026-02-20T22:00:00-08:00",
206
- doorsOpenTime: "2026-02-20T19:00:00-08:00",
207
- timezone: O(),
311
+ date: C(0),
312
+ startDateTime: i(0, 20),
313
+ endDateTime: i(0, 22),
314
+ doorsOpenTime: i(0, 19),
315
+ timezone: E(),
208
316
  imageUrl: "/posters/Friday Night Showdown.jpg",
209
317
  // wide landscape 800×400
210
- venue: F,
211
- performers: A,
212
- tickets: E,
213
- faqs: H,
318
+ venue: U,
319
+ performers: R,
320
+ tickets: H,
321
+ faqs: M,
214
322
  disclaimer: "",
215
323
  status: "on_sale",
216
324
  isPasswordProtected: !1,
@@ -220,30 +328,34 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
220
328
  displayStartTime: !0,
221
329
  displayEndTime: !0,
222
330
  displayDoorsTime: !0
223
- }, Q = {
224
- ...g,
331
+ }, te = {
332
+ ...v,
225
333
  id: 2406,
226
334
  title: "Saturday Night Special",
227
335
  slug: "saturday-night-special",
228
336
  imageUrl: "/posters/the-duel-square.webp",
229
337
  // square 3000×3000
230
- date: "2026-02-21",
231
- startDateTime: "2026-02-21T21:00:00-08:00",
232
- endDateTime: "2026-02-21T23:00:00-08:00",
338
+ date: C(1),
339
+ startDateTime: i(1, 21),
340
+ endDateTime: i(1, 23),
233
341
  displayEndTime: !1,
234
342
  status: "sold_out",
235
343
  totalTicketsRemaining: 0,
236
- tickets: E.map((i) => ({ ...i, quantityAvailable: 0, status: "sold_out" }))
237
- }, Z = {
238
- ...g,
344
+ tickets: H.map((t) => ({
345
+ ...t,
346
+ quantityAvailable: 0,
347
+ status: "sold_out"
348
+ }))
349
+ }, ae = {
350
+ ...v,
239
351
  id: 2407,
240
352
  title: "Open Mic Night",
241
353
  slug: "open-mic-night",
242
354
  imageUrl: "/posters/OpenMic-Twitter.jpg",
243
355
  // wide landscape 2127×1075
244
- date: "2026-02-18",
245
- startDateTime: "2026-02-18T19:00:00-08:00",
246
- endDateTime: "2026-02-18T21:00:00-08:00",
356
+ date: C(-2),
357
+ startDateTime: i(-2, 19),
358
+ endDateTime: i(-2, 21),
247
359
  displayDoorsTime: !1,
248
360
  description: "Free open mic night! Sign up at the door. All skill levels welcome.",
249
361
  status: "on_sale",
@@ -265,8 +377,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
265
377
  ],
266
378
  totalTicketsRemaining: 40,
267
379
  totalTicketsCapacity: 50
268
- }, ee = {
269
- ...g,
380
+ }, ie = {
381
+ ...v,
270
382
  id: 2410,
271
383
  title: "Improv Throwdown",
272
384
  slug: "improv-throwdown",
@@ -279,8 +391,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
279
391
  {
280
392
  id: 2410,
281
393
  slug: "improv-throwdown-feb-20-7pm",
282
- startDateTime: "2026-02-20T19:00:00-08:00",
283
- endDateTime: "2026-02-20T20:30:00-08:00",
394
+ startDateTime: i(0, 19),
395
+ endDateTime: i(0, 20, 30),
284
396
  status: "sold_out",
285
397
  ctaText: "Sold out",
286
398
  ctaDisabled: !0
@@ -288,8 +400,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
288
400
  {
289
401
  id: 2414,
290
402
  slug: "improv-throwdown-feb-20-8pm",
291
- startDateTime: "2026-02-20T20:00:00-08:00",
292
- endDateTime: "2026-02-20T21:30:00-08:00",
403
+ startDateTime: i(0, 20),
404
+ endDateTime: i(0, 21, 30),
293
405
  status: "on_sale",
294
406
  ctaText: "Get tickets",
295
407
  ctaDisabled: !1
@@ -297,8 +409,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
297
409
  {
298
410
  id: 2415,
299
411
  slug: "improv-throwdown-feb-20-930pm",
300
- startDateTime: "2026-02-20T21:30:00-08:00",
301
- endDateTime: "2026-02-20T23:00:00-08:00",
412
+ startDateTime: i(0, 21, 30),
413
+ endDateTime: i(0, 23),
302
414
  status: "on_sale",
303
415
  ctaText: "Get tickets",
304
416
  ctaDisabled: !1
@@ -307,8 +419,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
307
419
  {
308
420
  id: 2411,
309
421
  slug: "improv-throwdown-feb-27",
310
- startDateTime: "2026-02-27T20:00:00-08:00",
311
- endDateTime: "2026-02-27T22:00:00-08:00",
422
+ startDateTime: i(7, 20),
423
+ endDateTime: i(7, 22),
312
424
  status: "sold_out",
313
425
  ctaText: "Sold out",
314
426
  ctaDisabled: !0
@@ -316,8 +428,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
316
428
  {
317
429
  id: 2412,
318
430
  slug: "improv-throwdown-mar-06",
319
- startDateTime: "2026-03-06T20:00:00-08:00",
320
- endDateTime: "2026-03-06T22:00:00-08:00",
431
+ startDateTime: i(14, 20),
432
+ endDateTime: i(14, 22),
321
433
  status: "on_sale",
322
434
  ctaText: "Get tickets",
323
435
  ctaDisabled: !1
@@ -325,26 +437,26 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
325
437
  {
326
438
  id: 2413,
327
439
  slug: "improv-throwdown-mar-13",
328
- startDateTime: "2026-03-13T20:00:00-08:00",
329
- endDateTime: "2026-03-13T22:00:00-08:00",
440
+ startDateTime: i(21, 20),
441
+ endDateTime: i(21, 22),
330
442
  status: "coming_soon",
331
443
  ctaText: "Coming soon",
332
444
  ctaDisabled: !0
333
445
  }
334
446
  ]
335
- }, te = {
336
- ...g,
447
+ }, se = {
448
+ ...v,
337
449
  id: 2414,
338
450
  title: "Improv Throwdown",
339
451
  slug: "improv-throwdown-feb-20-8pm",
340
452
  imageUrl: "/posters/laughlab-tall.webp",
341
453
  eventSeriesId: 42,
342
- startDateTime: "2026-02-20T20:00:00-08:00",
343
- endDateTime: "2026-02-20T21:30:00-08:00",
454
+ startDateTime: i(0, 20),
455
+ endDateTime: i(0, 21, 30),
344
456
  description: "Weekly improv comedy show featuring rotating guest performers and audience participation games."
345
457
  // No seriesOccurrences — this is a single instance, not the series home
346
- }, ae = {
347
- ...g,
458
+ }, re = {
459
+ ...v,
348
460
  id: 3e3,
349
461
  title: "February Comedy Festival",
350
462
  slug: "february-comedy-festival",
@@ -357,7 +469,7 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
357
469
  name: "Friday Night Comedy Throwdown",
358
470
  slug: "friday-night-comedy-throwdown",
359
471
  image: "/posters/Friday Night Showdown.jpg",
360
- startDateTime: "2026-02-20T20:00:00-08:00",
472
+ startDateTime: i(0, 20),
361
473
  status: "on_sale",
362
474
  ticketsRemaining: 42,
363
475
  ticketsTotal: 200
@@ -367,7 +479,7 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
367
479
  name: "Saturday Night Special",
368
480
  slug: "saturday-night-special",
369
481
  image: "/posters/the-duel-square.webp",
370
- startDateTime: "2026-02-21T21:00:00-08:00",
482
+ startDateTime: i(1, 21),
371
483
  status: "on_sale",
372
484
  ticketsRemaining: 8,
373
485
  ticketsTotal: 150
@@ -377,7 +489,7 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
377
489
  name: "Stand-Up Comedy Workshop",
378
490
  slug: "standup-comedy-workshop",
379
491
  image: "/posters/stand up 101.png",
380
- startDateTime: "2026-02-22T14:00:00-08:00",
492
+ startDateTime: i(2, 14),
381
493
  status: "on_sale",
382
494
  ticketsRemaining: 15,
383
495
  ticketsTotal: 30
@@ -387,7 +499,7 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
387
499
  name: "Improv Throwdown",
388
500
  slug: "improv-throwdown",
389
501
  image: "/posters/laughlab-tall.webp",
390
- startDateTime: "2026-02-27T20:00:00-08:00",
502
+ startDateTime: i(7, 20),
391
503
  status: "on_sale",
392
504
  ticketsRemaining: 65,
393
505
  ticketsTotal: 200
@@ -397,7 +509,7 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
397
509
  name: "Open Mic Night",
398
510
  slug: "open-mic-night",
399
511
  image: "/posters/OpenMic-Twitter.jpg",
400
- startDateTime: "2026-02-28T19:00:00-08:00",
512
+ startDateTime: i(8, 19),
401
513
  status: "on_sale",
402
514
  ticketsRemaining: 100,
403
515
  ticketsTotal: 100
@@ -407,14 +519,14 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
407
519
  name: "Late Night Comedy Underground",
408
520
  slug: "late-night-comedy-underground",
409
521
  image: "/posters/standup-portrait.webp",
410
- startDateTime: "2026-02-28T22:00:00-08:00",
522
+ startDateTime: i(8, 22),
411
523
  status: "sold_out",
412
524
  ticketsRemaining: 0,
413
525
  ticketsTotal: 80
414
526
  }
415
527
  ]
416
- }, ie = {
417
- ...g,
528
+ }, ne = {
529
+ ...v,
418
530
  id: 2408,
419
531
  title: "Stand-Up Comedy Workshop",
420
532
  slug: "standup-comedy-workshop",
@@ -443,8 +555,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
443
555
  ],
444
556
  totalTicketsRemaining: 8,
445
557
  totalTicketsCapacity: 12
446
- }, se = {
447
- ...g,
558
+ }, oe = {
559
+ ...v,
448
560
  id: 2414,
449
561
  title: "Charity Comedy Benefit",
450
562
  slug: "charity-comedy-benefit",
@@ -484,8 +596,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
484
596
  ],
485
597
  totalTicketsRemaining: 280,
486
598
  totalTicketsCapacity: 300
487
- }, oe = {
488
- ...g,
599
+ }, le = {
600
+ ...v,
489
601
  id: 2415,
490
602
  title: "The Everything Show",
491
603
  slug: "the-everything-show",
@@ -559,7 +671,7 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
559
671
  minPerOrder: 1,
560
672
  maxPerOrder: 2,
561
673
  status: "coming_soon",
562
- salesStartDate: "2026-03-01T10:00:00-08:00",
674
+ salesStartDate: i(9, 10),
563
675
  isDonation: !1,
564
676
  isHidden: !1
565
677
  },
@@ -574,7 +686,7 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
574
686
  minPerOrder: 1,
575
687
  maxPerOrder: 4,
576
688
  status: "sales_ended",
577
- salesEndDate: "2026-02-10T23:59:00-08:00",
689
+ salesEndDate: i(-10, 23, 59),
578
690
  isDonation: !1,
579
691
  isHidden: !1
580
692
  },
@@ -624,8 +736,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
624
736
  ],
625
737
  totalTicketsRemaining: 287,
626
738
  totalTicketsCapacity: 485
627
- }, re = {
628
- ...g,
739
+ }, de = {
740
+ ...v,
629
741
  id: 2416,
630
742
  title: "Multi-Stage Festival",
631
743
  slug: "multi-stage-festival",
@@ -711,8 +823,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
711
823
  ],
712
824
  totalTicketsRemaining: 188,
713
825
  totalTicketsCapacity: 368
714
- }, ne = {
715
- ...g,
826
+ }, ce = {
827
+ ...v,
716
828
  id: 2417,
717
829
  title: "Secret Show",
718
830
  slug: "secret-show",
@@ -778,8 +890,47 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
778
890
  ],
779
891
  totalTicketsRemaining: 73,
780
892
  totalTicketsCapacity: 110
781
- }, le = {
782
- ...g,
893
+ }, ue = {
894
+ ...v,
895
+ id: 2419,
896
+ title: "Industry Showcase",
897
+ slug: "industry-showcase",
898
+ description: "A private comedy showcase. Tickets are only available with a promo code.",
899
+ status: "on_sale",
900
+ tickets: [
901
+ {
902
+ id: 902,
903
+ name: "Industry Comp",
904
+ description: "Complimentary entry for industry professionals — promo code required",
905
+ price: 0,
906
+ fee: 0,
907
+ quantityAvailable: 15,
908
+ quantityTotal: 20,
909
+ minPerOrder: 1,
910
+ maxPerOrder: 2,
911
+ status: "on_sale",
912
+ isDonation: !1,
913
+ isHidden: !0
914
+ },
915
+ {
916
+ id: 903,
917
+ name: "Artist Hold",
918
+ description: "Held for artist guests — promo code required",
919
+ price: 50,
920
+ fee: 5,
921
+ quantityAvailable: 5,
922
+ quantityTotal: 10,
923
+ minPerOrder: 1,
924
+ maxPerOrder: 4,
925
+ status: "on_sale",
926
+ isDonation: !1,
927
+ isHidden: !0
928
+ }
929
+ ],
930
+ totalTicketsRemaining: 0,
931
+ totalTicketsCapacity: 0
932
+ }, me = {
933
+ ...v,
783
934
  id: 2418,
784
935
  title: "Late Night Comedy Underground",
785
936
  slug: "late-night-comedy-underground",
@@ -820,8 +971,8 @@ Whether you're a comedy regular or a first-timer, this show delivers. Grab your
820
971
  ],
821
972
  totalTicketsRemaining: 29,
822
973
  totalTicketsCapacity: 46
823
- }, de = {
824
- ...g,
974
+ }, pe = {
975
+ ...v,
825
976
  id: 2420,
826
977
  title: "The Friday Night All-Star Comedy Throwdown featuring Dave Martinez, Sarah Chen, Mike Thompson, Bobby Lee, Andrew Santino, Hasan Minhaj, and Very Special Guests from Netflix, Comedy Central, HBO, and Amazon Prime",
827
978
  slug: "the-friday-night-all-star-comedy-throwdown",
@@ -837,7 +988,7 @@ Two-drink minimum. No photography or recording. Arrive early — seating is firs
837
988
  displayEndTime: !0,
838
989
  displayDoorsTime: !0,
839
990
  performers: [
840
- ...A,
991
+ ...R,
841
992
  {
842
993
  id: 4,
843
994
  displayName: "Bobby Lee",
@@ -854,8 +1005,8 @@ Two-drink minimum. No photography or recording. Arrive early — seating is firs
854
1005
  profileImage: "https://images.unsplash.com/photo-1519085360753-af0119f7cbe7?w=200&h=200&fit=crop"
855
1006
  }
856
1007
  ]
857
- }, ce = {
858
- ...g,
1008
+ }, fe = {
1009
+ ...v,
859
1010
  id: 2421,
860
1011
  title: "Sunset Sessions: Rooftop Jazz & Cocktails",
861
1012
  slug: "sunset-sessions-rooftop-jazz",
@@ -868,9 +1019,9 @@ Full bar available with specialty cocktails curated for the evening. Light bites
868
1019
  displayDoorsTime: !0
869
1020
  };
870
1021
  ({
871
- ...g
1022
+ ...v
872
1023
  });
873
- const q = {
1024
+ const O = {
874
1025
  URGENT: 0.1,
875
1026
  // ≤10% remaining → urgent ("Only X left")
876
1027
  LOW: 0.2,
@@ -878,43 +1029,44 @@ const q = {
878
1029
  MAX_EXACT_COUNT: 20
879
1030
  // Don't show exact count above 20
880
1031
  };
881
- function ue(i, t) {
882
- if (t === 0) return "none";
883
- if (i <= 0) return "sold_out";
884
- const n = i / t;
885
- return n <= q.URGENT ? "urgent" : n <= q.LOW ? "low" : "none";
1032
+ function he(t, a) {
1033
+ if (a === 0) return "none";
1034
+ if (t <= 0) return "sold_out";
1035
+ const n = t / a;
1036
+ return n <= O.URGENT ? "urgent" : n <= O.LOW ? "low" : "none";
886
1037
  }
887
- function me(i, t, n, d) {
888
- return i === "none" ? null : i === "sold_out" ? "Sold out" : i === "urgent" && n !== "browse" && t <= q.MAX_EXACT_COUNT ? `Only ${t} left` : i === "low" || i === "urgent" ? "Selling fast" : null;
1038
+ function ge(t, a, n, r) {
1039
+ return t === "none" ? null : t === "sold_out" ? "Sold out" : t === "urgent" && n !== "browse" && a <= O.MAX_EXACT_COUNT ? `Only ${a} left` : t === "low" || t === "urgent" ? "Selling fast" : null;
889
1040
  }
890
- function pe(i) {
891
- const t = i.tickets.map((d) => ({
892
- salesBegin: d.salesStartDate,
893
- salesEnd: d.salesEndDate,
894
- remainingCapacity: d.quantityAvailable,
895
- totalCapacity: d.quantityTotal,
896
- soldOut: d.status === "sold_out",
897
- salesChannel: 1
1041
+ function ye(t) {
1042
+ const a = t.tickets.map((r) => ({
1043
+ salesBegin: r.salesStartDate,
1044
+ salesEnd: r.salesEndDate,
1045
+ remainingCapacity: r.quantityAvailable,
1046
+ totalCapacity: r.quantityTotal,
1047
+ soldOut: r.status === "sold_out",
1048
+ salesChannel: 1,
898
1049
  // All our tickets are online (not "at the door only")
1050
+ isHidden: r.isHidden
899
1051
  }));
900
- if (i.status === "cancelled")
1052
+ if (t.status === "cancelled")
901
1053
  return {
902
1054
  text: "Cancelled",
903
1055
  disabled: !0,
904
1056
  reason: "This event has been cancelled"
905
1057
  };
906
- if (i.status === "past")
1058
+ if (t.status === "past")
907
1059
  return {
908
1060
  text: "Event ended",
909
1061
  disabled: !0,
910
1062
  reason: "This event has ended"
911
1063
  };
912
1064
  const n = N(
913
- { startDateTime: i.startDateTime, endDateTime: i.endDateTime },
914
- t,
1065
+ { startDateTime: t.startDateTime, endDateTime: t.endDateTime },
1066
+ a,
915
1067
  {
916
1068
  cancelled: !1,
917
- isRegistration: i.isRegistrationEvent,
1069
+ isRegistration: t.isRegistrationEvent,
918
1070
  waitlistEnabled: !1
919
1071
  }
920
1072
  );
@@ -924,60 +1076,60 @@ function pe(i) {
924
1076
  reason: n.disabled ? n.reason : void 0
925
1077
  };
926
1078
  }
927
- function fe(i) {
928
- const t = i.tickets.filter(
929
- (l) => l.status === "on_sale" && !l.isHidden
1079
+ function ve(t) {
1080
+ const a = t.tickets.filter(
1081
+ (c) => c.status === "on_sale" && !c.isHidden
930
1082
  );
931
- if (t.length === 0) return null;
932
- const n = t.some(
933
- (l) => l.isDonation || l.ticketType === 2
934
- ), d = t.filter(
935
- (l) => !l.isDonation && l.ticketType !== 2
936
- ), T = d.some((l) => l.price === 0), y = d.filter((l) => l.price > 0);
937
- if (y.length === 0 && !T && n) return "Donation";
938
- if (y.length === 0 && T) return null;
939
- const p = Math.min(...y.map((l) => l.price));
940
- return T ? null : n ? `From $${p}` : y.length === 1 ? `$${p}` : `From $${p}`;
1083
+ if (a.length === 0) return null;
1084
+ const n = a.some(
1085
+ (c) => c.isDonation || c.ticketType === 2
1086
+ ), r = a.filter(
1087
+ (c) => !c.isDonation && c.ticketType !== 2
1088
+ ), p = r.some((c) => c.price === 0), h = r.filter((c) => c.price > 0);
1089
+ if (h.length === 0 && !p && n) return "Donation";
1090
+ if (h.length === 0 && p) return null;
1091
+ const m = Math.min(...h.map((c) => c.price));
1092
+ return p ? null : n ? `From $${m}` : h.length === 1 ? `$${m}` : `From $${m}`;
941
1093
  }
942
- function he(i, t) {
943
- return $(i * (t / 100));
1094
+ function Te(t, a) {
1095
+ return F(t * (a / 100));
944
1096
  }
945
- const I = {
1097
+ const L = {
946
1098
  normal: 300
947
1099
  };
948
- function ge(i) {
949
- if (!i) return "";
950
- const t = new Date(i), n = /* @__PURE__ */ new Date(), d = t.getTime() - n.getTime(), T = Math.round(d / (1e3 * 60)), y = d / (1e3 * 60 * 60);
951
- if (T > 0 && T < 60) {
952
- const f = Math.max(1, T);
953
- return `in ${f} minute${f !== 1 ? "s" : ""}`;
1100
+ function be(t) {
1101
+ if (!t) return "";
1102
+ const a = new Date(t), n = /* @__PURE__ */ new Date(), r = a.getTime() - n.getTime(), p = Math.round(r / (1e3 * 60)), h = r / (1e3 * 60 * 60);
1103
+ if (p > 0 && p < 60) {
1104
+ const y = Math.max(1, p);
1105
+ return `in ${y} minute${y !== 1 ? "s" : ""}`;
954
1106
  }
955
- if (y > 0 && y < 24) {
956
- const f = Math.max(1, Math.round(y));
957
- return `in ${f} hour${f !== 1 ? "s" : ""}`;
1107
+ if (h > 0 && h < 24) {
1108
+ const y = Math.max(1, Math.round(h));
1109
+ return `in ${y} hour${y !== 1 ? "s" : ""}`;
958
1110
  }
959
- const p = new Date(n);
960
- if (p.setDate(p.getDate() + 1), t.toDateString() === p.toDateString())
961
- return `tomorrow at ${t.toLocaleTimeString("en-US", {
1111
+ const m = new Date(n);
1112
+ if (m.setDate(m.getDate() + 1), a.toDateString() === m.toDateString())
1113
+ return `tomorrow at ${a.toLocaleTimeString("en-US", {
962
1114
  hour: "numeric",
963
1115
  minute: "2-digit"
964
1116
  })}`;
965
- const l = d / (1e3 * 60 * 60 * 24);
966
- if (l > 0 && l <= 7) {
967
- const f = new Intl.DateTimeFormat("en-US", {
1117
+ const c = r / (1e3 * 60 * 60 * 24);
1118
+ if (c > 0 && c <= 7) {
1119
+ const y = new Intl.DateTimeFormat("en-US", {
968
1120
  weekday: "long"
969
- }).format(t), x = t.toLocaleTimeString("en-US", {
1121
+ }).format(a), D = a.toLocaleTimeString("en-US", {
970
1122
  hour: "numeric",
971
1123
  minute: "2-digit"
972
1124
  });
973
- return `on ${f} at ${x}`;
1125
+ return `on ${y} at ${D}`;
974
1126
  }
975
1127
  return `on ${new Intl.DateTimeFormat("en-US", {
976
1128
  month: "short",
977
1129
  day: "numeric"
978
- }).format(t)}`;
1130
+ }).format(a)}`;
979
1131
  }
980
- function ye() {
1132
+ function we() {
981
1133
  return {
982
1134
  code: "",
983
1135
  isApplied: !1,
@@ -991,179 +1143,179 @@ function ye() {
991
1143
  revealTicketIds: []
992
1144
  };
993
1145
  }
994
- var M = e.from_html('<div class="flex justify-between"><!> <!></div>'), L = e.from_html('<div class="flex justify-between pt-1 border-t border-default"><!> <!></div>'), U = e.from_html('<div class="flex justify-between"><!> <!></div>'), z = e.from_html('<div class="flex justify-between"><!> <!></div>'), B = e.from_html('<div class="flex justify-between"><!> <!></div>'), j = e.from_html('<div class="space-y-2"><!> <!> <!> <!> <!> <div class="flex justify-between pt-2 border-t border-default"><!> <!></div></div>');
995
- function ve(i, t) {
996
- e.push(t, !0);
997
- let n = e.prop(t, "labels", 19, () => ({}));
998
- var d = j(), T = e.child(d);
999
- e.each(T, 17, () => t.orderTotals.lines, (a) => a.ticketId, (a, s) => {
1000
- var o = M(), m = e.child(o);
1001
- b(m, {
1146
+ var z = e.from_html('<div class="flex justify-between"><!> <!></div>'), B = e.from_html('<div class="flex justify-between pt-1 border-t border-default"><!> <!></div>'), G = e.from_html('<div class="flex justify-between"><!> <!></div>'), j = e.from_html('<div class="flex justify-between"><!> <!></div>'), W = e.from_html('<div class="flex justify-between"><!> <!></div>'), V = e.from_html('<div class="space-y-2"><!> <!> <!> <!> <!> <div class="flex justify-between pt-2 border-t border-default"><!> <!></div></div>');
1147
+ function ke(t, a) {
1148
+ e.push(a, !0);
1149
+ let n = e.prop(a, "labels", 19, () => ({}));
1150
+ var r = V(), p = e.child(r);
1151
+ e.each(p, 17, () => a.orderTotals.lines, (o) => o.ticketId, (o, s) => {
1152
+ var d = z(), g = e.child(d);
1153
+ k(g, {
1002
1154
  size: "xs",
1003
1155
  color: "muted",
1004
- children: (h, r) => {
1156
+ children: (w, l) => {
1005
1157
  e.next();
1006
- var v = e.text();
1007
- e.template_effect(() => e.set_text(v, `${e.get(s).quantity ?? ""}x ${e.get(s).ticketName ?? ""}`)), e.append(h, v);
1158
+ var T = e.text();
1159
+ e.template_effect(() => e.set_text(T, `${e.get(s).quantity ?? ""}x ${e.get(s).ticketName ?? ""}`)), e.append(w, T);
1008
1160
  },
1009
1161
  $$slots: { default: !0 }
1010
1162
  });
1011
- var u = e.sibling(m, 2);
1012
- b(u, {
1163
+ var f = e.sibling(g, 2);
1164
+ k(f, {
1013
1165
  size: "xs",
1014
1166
  color: "muted",
1015
- children: (h, r) => {
1167
+ children: (w, l) => {
1016
1168
  e.next();
1017
- var v = e.text();
1018
- e.template_effect((R) => e.set_text(v, R), [() => _(e.get(s).subtotal)]), e.append(h, v);
1169
+ var T = e.text();
1170
+ e.template_effect(($) => e.set_text(T, $), [() => _(e.get(s).subtotal)]), e.append(w, T);
1019
1171
  },
1020
1172
  $$slots: { default: !0 }
1021
- }), e.reset(o), e.append(a, o);
1173
+ }), e.reset(d), e.append(o, d);
1022
1174
  });
1023
- var y = e.sibling(T, 2);
1175
+ var h = e.sibling(p, 2);
1024
1176
  {
1025
- var p = (a) => {
1026
- var s = L(), o = e.child(s);
1027
- b(o, {
1177
+ var m = (o) => {
1178
+ var s = B(), d = e.child(s);
1179
+ k(d, {
1028
1180
  size: "xs",
1029
1181
  color: "muted",
1030
- children: (u, h) => {
1182
+ children: (f, w) => {
1031
1183
  e.next();
1032
- var r = e.text();
1033
- e.template_effect(() => e.set_text(r, n().subtotal || "Subtotal")), e.append(u, r);
1184
+ var l = e.text();
1185
+ e.template_effect(() => e.set_text(l, n().subtotal || "Subtotal")), e.append(f, l);
1034
1186
  },
1035
1187
  $$slots: { default: !0 }
1036
1188
  });
1037
- var m = e.sibling(o, 2);
1038
- b(m, {
1189
+ var g = e.sibling(d, 2);
1190
+ k(g, {
1039
1191
  size: "xs",
1040
1192
  color: "muted",
1041
- children: (u, h) => {
1193
+ children: (f, w) => {
1042
1194
  e.next();
1043
- var r = e.text();
1044
- e.template_effect((v) => e.set_text(r, v), [() => _(t.orderTotals.subtotal)]), e.append(u, r);
1195
+ var l = e.text();
1196
+ e.template_effect((T) => e.set_text(l, T), [() => _(a.orderTotals.subtotal)]), e.append(f, l);
1045
1197
  },
1046
1198
  $$slots: { default: !0 }
1047
- }), e.reset(s), e.append(a, s);
1199
+ }), e.reset(s), e.append(o, s);
1048
1200
  };
1049
- e.if(y, (a) => {
1050
- t.orderTotals.lines.length > 1 && a(p);
1201
+ e.if(h, (o) => {
1202
+ a.orderTotals.lines.length > 1 && o(m);
1051
1203
  });
1052
1204
  }
1053
- var l = e.sibling(y, 2);
1205
+ var c = e.sibling(h, 2);
1054
1206
  {
1055
- var P = (a) => {
1056
- var s = U(), o = e.child(s);
1057
- b(o, {
1207
+ var x = (o) => {
1208
+ var s = G(), d = e.child(s);
1209
+ k(d, {
1058
1210
  size: "xs",
1059
1211
  color: "muted",
1060
- children: (u, h) => {
1212
+ children: (f, w) => {
1061
1213
  e.next();
1062
- var r = e.text();
1063
- e.template_effect(() => e.set_text(r, n().serviceFees || "Service fees")), e.append(u, r);
1214
+ var l = e.text();
1215
+ e.template_effect(() => e.set_text(l, n().serviceFees || "Service fees")), e.append(f, l);
1064
1216
  },
1065
1217
  $$slots: { default: !0 }
1066
1218
  });
1067
- var m = e.sibling(o, 2);
1068
- b(m, {
1219
+ var g = e.sibling(d, 2);
1220
+ k(g, {
1069
1221
  size: "xs",
1070
1222
  color: "muted",
1071
- children: (u, h) => {
1223
+ children: (f, w) => {
1072
1224
  e.next();
1073
- var r = e.text();
1074
- e.template_effect((v) => e.set_text(r, v), [() => _(t.orderTotals.fees)]), e.append(u, r);
1225
+ var l = e.text();
1226
+ e.template_effect((T) => e.set_text(l, T), [() => _(a.orderTotals.fees)]), e.append(f, l);
1075
1227
  },
1076
1228
  $$slots: { default: !0 }
1077
- }), e.reset(s), e.append(a, s);
1229
+ }), e.reset(s), e.append(o, s);
1078
1230
  };
1079
- e.if(l, (a) => {
1080
- t.orderTotals.fees > 0 && a(P);
1231
+ e.if(c, (o) => {
1232
+ a.orderTotals.fees > 0 && o(x);
1081
1233
  });
1082
1234
  }
1083
- var f = e.sibling(l, 2);
1235
+ var y = e.sibling(c, 2);
1084
1236
  {
1085
- var x = (a) => {
1086
- var s = z(), o = e.child(s);
1087
- b(o, {
1237
+ var D = (o) => {
1238
+ var s = j(), d = e.child(s);
1239
+ k(d, {
1088
1240
  size: "xs",
1089
1241
  color: "muted",
1090
- children: (u, h) => {
1242
+ children: (f, w) => {
1091
1243
  e.next();
1092
- var r = e.text();
1093
- e.template_effect(() => e.set_text(r, n().taxes || "Taxes")), e.append(u, r);
1244
+ var l = e.text();
1245
+ e.template_effect(() => e.set_text(l, n().taxes || "Taxes")), e.append(f, l);
1094
1246
  },
1095
1247
  $$slots: { default: !0 }
1096
1248
  });
1097
- var m = e.sibling(o, 2);
1098
- b(m, {
1249
+ var g = e.sibling(d, 2);
1250
+ k(g, {
1099
1251
  size: "xs",
1100
1252
  color: "muted",
1101
- children: (u, h) => {
1253
+ children: (f, w) => {
1102
1254
  e.next();
1103
- var r = e.text();
1104
- e.template_effect((v) => e.set_text(r, v), [() => _(t.orderTotals.taxes)]), e.append(u, r);
1255
+ var l = e.text();
1256
+ e.template_effect((T) => e.set_text(l, T), [() => _(a.orderTotals.taxes)]), e.append(f, l);
1105
1257
  },
1106
1258
  $$slots: { default: !0 }
1107
- }), e.reset(s), e.append(a, s);
1259
+ }), e.reset(s), e.append(o, s);
1108
1260
  };
1109
- e.if(f, (a) => {
1110
- t.orderTotals.taxes > 0 && a(x);
1261
+ e.if(y, (o) => {
1262
+ a.orderTotals.taxes > 0 && o(D);
1111
1263
  });
1112
1264
  }
1113
- var D = e.sibling(f, 2);
1265
+ var P = e.sibling(y, 2);
1114
1266
  {
1115
- var w = (a) => {
1116
- var s = B(), o = e.child(s);
1117
- b(o, {
1267
+ var q = (o) => {
1268
+ var s = W(), d = e.child(s);
1269
+ k(d, {
1118
1270
  size: "xs",
1119
1271
  color: "success",
1120
- children: (u, h) => {
1272
+ children: (f, w) => {
1121
1273
  e.next();
1122
- var r = e.text();
1123
- e.template_effect(() => e.set_text(r, n().promoDiscount || "Promo discount")), e.append(u, r);
1274
+ var l = e.text();
1275
+ e.template_effect(() => e.set_text(l, n().promoDiscount || "Promo discount")), e.append(f, l);
1124
1276
  },
1125
1277
  $$slots: { default: !0 }
1126
1278
  });
1127
- var m = e.sibling(o, 2);
1128
- b(m, {
1279
+ var g = e.sibling(d, 2);
1280
+ k(g, {
1129
1281
  size: "xs",
1130
1282
  color: "success",
1131
- children: (u, h) => {
1283
+ children: (f, w) => {
1132
1284
  e.next();
1133
- var r = e.text();
1134
- e.template_effect((v) => e.set_text(r, `-${v ?? ""}`), [() => _(t.orderTotals.promoDiscount)]), e.append(u, r);
1285
+ var l = e.text();
1286
+ e.template_effect((T) => e.set_text(l, `-${T ?? ""}`), [() => _(a.orderTotals.promoDiscount)]), e.append(f, l);
1135
1287
  },
1136
1288
  $$slots: { default: !0 }
1137
- }), e.reset(s), e.append(a, s);
1289
+ }), e.reset(s), e.append(o, s);
1138
1290
  };
1139
- e.if(D, (a) => {
1140
- t.orderTotals.promoDiscount > 0 && a(w);
1291
+ e.if(P, (o) => {
1292
+ a.orderTotals.promoDiscount > 0 && o(q);
1141
1293
  });
1142
1294
  }
1143
- var c = e.sibling(D, 2), k = e.child(c);
1144
- b(k, {
1295
+ var b = e.sibling(P, 2), u = e.child(b);
1296
+ k(u, {
1145
1297
  size: "sm",
1146
1298
  class: "font-semibold",
1147
- children: (a, s) => {
1299
+ children: (o, s) => {
1148
1300
  e.next();
1149
- var o = e.text();
1150
- e.template_effect(() => e.set_text(o, n().total || "Total")), e.append(a, o);
1301
+ var d = e.text();
1302
+ e.template_effect(() => e.set_text(d, n().total || "Total")), e.append(o, d);
1151
1303
  },
1152
1304
  $$slots: { default: !0 }
1153
1305
  });
1154
- var S = e.sibling(k, 2);
1155
- b(S, {
1306
+ var S = e.sibling(u, 2);
1307
+ k(S, {
1156
1308
  size: "sm",
1157
1309
  class: "font-semibold",
1158
- children: (a, s) => {
1310
+ children: (o, s) => {
1159
1311
  e.next();
1160
- var o = e.text();
1161
- e.template_effect((m) => e.set_text(o, m), [() => _(t.orderTotals.total)]), e.append(a, o);
1312
+ var d = e.text();
1313
+ e.template_effect((g) => e.set_text(d, g), [() => _(a.orderTotals.total)]), e.append(o, d);
1162
1314
  },
1163
1315
  $$slots: { default: !0 }
1164
- }), e.reset(c), e.reset(d), e.template_effect(() => e.set_style(d, `transition-duration: ${I.normal}ms;`)), e.append(i, d), e.pop();
1316
+ }), e.reset(b), e.reset(r), e.template_effect(() => e.set_style(r, `transition-duration: ${L.normal}ms;`)), e.append(t, r), e.pop();
1165
1317
  }
1166
- const G = {
1318
+ const Y = {
1167
1319
  // ── Ticket quantity controls ──────────────────────────────────────
1168
1320
  decrease: "Decrease",
1169
1321
  increase: "Increase",
@@ -1319,33 +1471,34 @@ const G = {
1319
1471
  // ── MobileCta ─────────────────────────────────────────────────────
1320
1472
  selectTicketsLabel: "Select Tickets"
1321
1473
  };
1322
- function Te(i = {}) {
1323
- return { ...G, ...i };
1474
+ function xe(t = {}) {
1475
+ return { ...Y, ...t };
1324
1476
  }
1325
1477
  export {
1326
- I as D,
1327
- ve as O,
1328
- se as a,
1329
- ie as b,
1330
- Z as c,
1331
- g as d,
1332
- he as e,
1333
- me as f,
1334
- ue as g,
1335
- ge as h,
1336
- pe as i,
1337
- fe as j,
1338
- ye as k,
1339
- ce as l,
1340
- Te as m,
1341
- de as n,
1342
- le as o,
1343
- ne as p,
1344
- re as q,
1345
- oe as r,
1346
- ae as s,
1347
- te as t,
1348
- ee as u,
1349
- Q as v
1478
+ L as D,
1479
+ ke as O,
1480
+ oe as a,
1481
+ ne as b,
1482
+ ae as c,
1483
+ v as d,
1484
+ Te as e,
1485
+ ge as f,
1486
+ he as g,
1487
+ be as h,
1488
+ ye as i,
1489
+ ve as j,
1490
+ we as k,
1491
+ fe as l,
1492
+ xe as m,
1493
+ pe as n,
1494
+ me as o,
1495
+ ue as p,
1496
+ ce as q,
1497
+ de as r,
1498
+ le as s,
1499
+ re as t,
1500
+ se as u,
1501
+ ie as v,
1502
+ te as w
1350
1503
  };
1351
- //# sourceMappingURL=labels-CNpTKuG-.js.map
1504
+ //# sourceMappingURL=labels-s8pbx3tn.js.map