@getmicdrop/venue-calendar 4.0.105 → 4.0.106

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 (61) hide show
  1. package/dist/CartView-CIfnfmZj.js +2348 -0
  2. package/dist/CartView-CIfnfmZj.js.map +1 -0
  3. package/dist/Checkout-BEauxCmt.js +1059 -0
  4. package/dist/Checkout-BEauxCmt.js.map +1 -0
  5. package/dist/{Checkout-C2CDej2G.js → Checkout-DO-U-jI4.js} +86 -86
  6. package/dist/Checkout-DO-U-jI4.js.map +1 -0
  7. package/dist/{CheckoutTimer-BI6UpTic.js → CheckoutTimer-BNket1Fg.js} +5 -5
  8. package/dist/{CheckoutTimer-BI6UpTic.js.map → CheckoutTimer-BNket1Fg.js.map} +1 -1
  9. package/dist/{ClockIcon-BTuA4Ut3.js → ClockIcon-Cqo9retG.js} +2 -2
  10. package/dist/{ClockIcon-BTuA4Ut3.js.map → ClockIcon-Cqo9retG.js.map} +1 -1
  11. package/dist/{CollectionView-BmXUlrOH.js → CollectionView-Dq2SqpzE.js} +7 -7
  12. package/dist/{CollectionView-BmXUlrOH.js.map → CollectionView-Dq2SqpzE.js.map} +1 -1
  13. package/dist/{Event-BV-RACl5.js → Event-DoBDfGr-.js} +8 -8
  14. package/dist/{Event-BV-RACl5.js.map → Event-DoBDfGr-.js.map} +1 -1
  15. package/dist/{EventPage-B5tAYG9L.js → EventPage-Dbw2JTn6.js} +376 -370
  16. package/dist/EventPage-Dbw2JTn6.js.map +1 -0
  17. package/dist/{Heading-C6F-scpj.js → Heading-CezkoB7-.js} +2 -2
  18. package/dist/{Heading-C6F-scpj.js.map → Heading-CezkoB7-.js.map} +1 -1
  19. package/dist/{ScarcityBadge-DcWu5t7T.js → ScarcityBadge-DdBiJx4s.js} +18 -18
  20. package/dist/{ScarcityBadge-DcWu5t7T.js.map → ScarcityBadge-DdBiJx4s.js.map} +1 -1
  21. package/dist/{SeriesPage-C-vCBhmv.js → SeriesPage-xrz2-uAc.js} +5 -5
  22. package/dist/{SeriesPage-C-vCBhmv.js.map → SeriesPage-xrz2-uAc.js.map} +1 -1
  23. package/dist/{Spinner-Cn6Xoq6K.js → Spinner-C_CcLVlr.js} +2 -2
  24. package/dist/{Spinner-Cn6Xoq6K.js.map → Spinner-C_CcLVlr.js.map} +1 -1
  25. package/dist/{Success-hYNbEwqe.js → Success-D63NKAXD.js} +7 -7
  26. package/dist/{Success-hYNbEwqe.js.map → Success-D63NKAXD.js.map} +1 -1
  27. package/dist/{Text-DghJWX63.js → Text-CkjZ082Q.js} +6 -6
  28. package/dist/{Text-DghJWX63.js.map → Text-CkjZ082Q.js.map} +1 -1
  29. package/dist/{VenueCalendar-Y94fp6kO.js → VenueCalendar-CNQZD54v.js} +3572 -3466
  30. package/dist/VenueCalendar-CNQZD54v.js.map +1 -0
  31. package/dist/{ViewTicketsEmbed-CnrArq0j.js → ViewTicketsEmbed-XLGxE6AE.js} +5 -5
  32. package/dist/{ViewTicketsEmbed-CnrArq0j.js.map → ViewTicketsEmbed-XLGxE6AE.js.map} +1 -1
  33. package/dist/api/api.cjs +1 -1
  34. package/dist/api/api.cjs.map +1 -1
  35. package/dist/api/api.mjs +333 -327
  36. package/dist/api/api.mjs.map +1 -1
  37. package/dist/api/types.d.ts +37 -1
  38. package/dist/{data-toggle-store.svelte-klyle8-d.js → data-toggle-store.svelte-9Zfr1xPH.js} +2 -2
  39. package/dist/{data-toggle-store.svelte-klyle8-d.js.map → data-toggle-store.svelte-9Zfr1xPH.js.map} +1 -1
  40. package/dist/{labels-BTtStaIW.js → labels-qYCu0gWu.js} +9 -9
  41. package/dist/{labels-BTtStaIW.js.map → labels-qYCu0gWu.js.map} +1 -1
  42. package/dist/{modalManager.svelte-Fn8lihrx.js → modalManager.svelte-CQfHFG2s.js} +2 -2
  43. package/dist/{modalManager.svelte-Fn8lihrx.js.map → modalManager.svelte-CQfHFG2s.js.map} +1 -1
  44. package/dist/promo-WWbp2OWI.js +12 -0
  45. package/dist/promo-WWbp2OWI.js.map +1 -0
  46. package/dist/{transform-KJbS4n7p.js → transform-DKQtPuXk.js} +6 -6
  47. package/dist/{transform-KJbS4n7p.js.map → transform-DKQtPuXk.js.map} +1 -1
  48. package/dist/venue-calendar.css +1 -1
  49. package/dist/venue-calendar.es.js +4 -4
  50. package/dist/venue-calendar.iife.js +45 -45
  51. package/dist/venue-calendar.iife.js.map +1 -1
  52. package/dist/venue-calendar.umd.js +40 -40
  53. package/dist/venue-calendar.umd.js.map +1 -1
  54. package/package.json +187 -180
  55. package/dist/CartView-DcKPVj5T.js +0 -2360
  56. package/dist/CartView-DcKPVj5T.js.map +0 -1
  57. package/dist/Checkout-BoFIUhR2.js +0 -1048
  58. package/dist/Checkout-BoFIUhR2.js.map +0 -1
  59. package/dist/Checkout-C2CDej2G.js.map +0 -1
  60. package/dist/EventPage-B5tAYG9L.js.map +0 -1
  61. package/dist/VenueCalendar-Y94fp6kO.js.map +0 -1
@@ -0,0 +1,2348 @@
1
+ import "svelte/internal/disclose-version";
2
+ import * as e from "svelte/internal/client";
3
+ import { onMount as ea, onDestroy as la } from "svelte";
4
+ import { C as oa, S as da, A as ca, a as va, g as Lt } from "./ScarcityBadge-DdBiJx4s.js";
5
+ import { u as ua, N as et, a9 as Bt, aa as Mt, t as xe, ab as pa, z as ee, ac as fa, ad as Ot, ae as ga, af as _a, f as Je, I as ta, ag as ma, p as aa, ah as $e, r as ha, ai as Dt, aj as gt, a8 as tt, Q as ba, $ as xa, ak as ya, al as ka, Z as wa, am as Ta, an as Ia, a7 as Ca, G as zt, g as Da, ao as Qt, J as Sa, h as Aa, ap as Pa, L as Ea, s as qt, aq as Oa, w as Nt, x as Rt, y as Gt, ar as Fa } from "./VenueCalendar-CNQZD54v.js";
6
+ import { r as ja } from "./promo-WWbp2OWI.js";
7
+ import { M as Ft, C as La } from "./CheckoutTimer-BNket1Fg.js";
8
+ import { I as Ba } from "./Text-CkjZ082Q.js";
9
+ import { c as jt } from "./modalManager.svelte-CQfHFG2s.js";
10
+ import { cubicOut as Ht } from "svelte/easing";
11
+ import { S as It } from "./Spinner-C_CcLVlr.js";
12
+ var Ma = e.from_svg('<svg aria-hidden="true" fill="none" stroke-width="2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"></path></svg>');
13
+ function za(de, t) {
14
+ let R = e.prop(t, "size", 3, "24"), T = e.prop(t, "color", 3, "currentColor"), m = e.prop(t, "class", 3, "");
15
+ var s = Ma();
16
+ e.template_effect(() => {
17
+ e.set_class(s, 0, e.clsx(m())), e.set_attribute(s, "width", R()), e.set_attribute(s, "height", R()), e.set_attribute(s, "stroke", T());
18
+ }), e.append(de, s);
19
+ }
20
+ var Qa = e.from_svg('<path d="M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm-4,48a12,12,0,1,1-12,12A12,12,0,0,1,124,72Zm12,112a16,16,0,0,1-16-16V128a8,8,0,0,1,0-16,16,16,0,0,1,16,16v40a8,8,0,0,1,0,16Z"></path>'), qa = e.from_svg('<circle cx="128" cy="128" r="96" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="16"></circle><path d="M120,120a8,8,0,0,1,8,8v40a8,8,0,0,0,8,8" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="16"></path><circle cx="124" cy="84" r="12"></circle>', 1), Na = e.from_svg('<svg aria-hidden="true" viewBox="0 0 256 256" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><!></svg>');
21
+ function Ra(de, t) {
22
+ e.push(t, !0);
23
+ let R = e.prop(t, "size", 3, "24"), T = e.prop(t, "color", 3, "currentColor"), m = e.prop(t, "class", 3, "");
24
+ const s = ua();
25
+ let D = e.derived(() => t.weight ?? s?.weight ?? "regular");
26
+ var r = Na();
27
+ let z;
28
+ var te = e.child(r);
29
+ {
30
+ var J = (Y) => {
31
+ var j = Qa();
32
+ e.append(Y, j);
33
+ }, me = (Y) => {
34
+ var j = qa();
35
+ e.next(2), e.append(Y, j);
36
+ };
37
+ e.if(te, (Y) => {
38
+ e.get(D) === "fill" ? Y(J) : Y(me, -1);
39
+ });
40
+ }
41
+ e.reset(r), e.template_effect(() => {
42
+ e.set_class(r, 0, e.clsx(m())), e.set_attribute(r, "width", R()), e.set_attribute(r, "height", R()), z = e.set_style(r, "", z, { color: T() });
43
+ }), e.append(de, r), e.pop();
44
+ }
45
+ var Ga = e.from_html('<div class="py-8 text-center"><p> </p></div>'), Ha = e.from_html('<div class="flex justify-between py-3 border-b border-border/50"><div><p> </p> <p><!></p></div> <div><!></div></div>'), Va = e.from_html('<div class="flex justify-between tone-secondary"><span> </span><span> </span></div>'), Ct = e.from_html('<div class="flex justify-between text-accent-success"><span> </span><span> </span></div>'), Vt = e.from_html('<span class="inline-flex items-center gap-1"><!> Calculating...</span>'), Ut = e.from_html('<div class="flex justify-between tone-muted type-caption"><span> </span> <span> </span></div>'), Wt = e.from_html('<div class="flex justify-between text-accent-success"><span> </span> <span> </span></div> <!>', 1), Ua = e.from_html('<div class="flex justify-between py-4 type-subheading border-t border-border"><span class="font-semibold tone-primary"> </span> <span class="font-bold text-accent-success">$0.00</span></div> <p class="type-caption tone-muted text-center -mt-2 mb-2"> </p>', 1), Zt = e.from_html("<div><span> </span><span> </span></div>"), Wa = e.from_html('<!> <div><!> <!> <div class="flex justify-between tone-secondary"><span> </span><span> </span></div> <div class="flex justify-between tone-secondary"><span> </span><span> </span></div> <div class="flex justify-between tone-secondary"><span> </span> <span><!></span></div> <!></div> <!>', 1), Za = e.from_html('<p> <a href="https://get-micdrop.com/tos" class="text-brand-primary underline hover:opacity-80" target="_blank" rel="noopener noreferrer"> </a></p>'), Jt = e.from_html('<span translate="no"> </span>'), Ja = e.from_html('<div class="flex justify-between py-4 border-b border-border"><div><p> </p> <p><!></p></div> <div><!></div></div>'), Ya = e.from_html('<div class="flex justify-between"><span> </span><span> </span></div>'), Ka = e.from_html('<div class="flex justify-between py-5 border-t border-border"><span class="font-semibold tone-primary"> </span> <span class="font-bold text-accent-success">$0.00</span></div> <p class="type-caption tone-muted text-center -mt-2 mb-2"> </p>', 1), Xa = e.from_html('<button class="md:hidden fixed inset-0 bg-overlay-bg z-40 border-none cursor-pointer"></button> <div class="md:hidden fixed bottom-0 left-0 w-full overflow-x-hidden overflow-y-auto z-50 max-h-[80vh] rounded-t-lg shadow-xl bg-card"><div class="flex flex-row justify-between items-center px-5 py-4 border-b border-border"><h2> </h2> <button class="transition-colors p-2 rounded-lg tone-muted hover:tone-primary hover:bg-bg-secondary"><!></button></div> <div class="px-5 pb-5"><!> <div class="flex flex-col py-4 gap-3 tone-secondary"><!> <!> <div class="flex justify-between"><span> </span><span> </span></div> <div class="flex justify-between"><span> </span><span> </span></div> <div class="flex justify-between"><span> </span> <span><!></span></div> <!></div> <!></div></div>', 1), $a = e.from_html('<div class="md:hidden fixed bottom-0 left-0 right-0 z-40 bg-card border-t border-border shadow-xl p-4 pb-[max(16px,calc(env(safe-area-inset-bottom)+8px))] select-none touch-manipulation"><div class="flex items-stretch gap-3"><button class="flex flex-col justify-between items-start shrink-0 whitespace-nowrap bg-transparent border-none p-0 cursor-pointer touch-manipulation"><span> <!></span> <span> </span></button> <button><!></button></div></div>'), er = e.from_html('<div id="orderSummary" class="hidden md:block h-fit rounded-lg bg-card border border-border"><div class="px-5 py-4 border-b border-border"><h3> </h3></div> <div class="px-5 pb-5"><!> <!> <button><!></button></div></div> <!> <!>', 1);
46
+ function tr(de, t) {
47
+ e.push(t, !0);
48
+ const R = {
49
+ orderSummary: "Order summary",
50
+ selectTickets: "Select tickets to continue",
51
+ free: "Free",
52
+ fullPrice: "Full Price",
53
+ discount: "Discount",
54
+ subtotal: "Subtotal",
55
+ fees: "Fees",
56
+ taxes: "Taxes",
57
+ giftCardAppliedLabel: "Gift Card Applied",
58
+ giftCardBalanceAfterOrder: "Gift card balance after order",
59
+ amountDue: "Amount Due",
60
+ fullyCoveredByGiftCard: "Fully covered by gift card",
61
+ total: "Total",
62
+ checkoutButtonText: "Checkout",
63
+ placeOrderButtonText: "Place order",
64
+ placeOrderTos: "By selecting Place order, I agree to the",
65
+ termsOfService: "terms of service",
66
+ checkout: "Checkout",
67
+ ticketSingular: "ticket",
68
+ ticketPlural: "tickets",
69
+ closeOrderSummary: "Close order summary"
70
+ };
71
+ let T = e.prop(t, "loading", 3, !1), m = e.prop(t, "quantities", 19, () => ({})), s = e.prop(t, "donationAmounts", 19, () => ({})), D = e.prop(t, "eventTickets", 19, () => []), r = e.prop(t, "checkoutTicket", 3, null), z = e.prop(t, "isAgreed", 3, !0), te = e.prop(t, "btnText", 3, void 0), J = e.prop(t, "showTerms", 3, !1), me = e.prop(t, "promoApplied", 3, !1), Y = e.prop(t, "promoDiscount", 3, 0), j = e.prop(t, "currentPromoRule", 3, null), we = e.prop(t, "executePurchase", 3, null), fe = e.prop(t, "elements", 3, null), Ce = e.prop(t, "venueServiceCharge", 19, () => ({
72
+ serviceFeeCents: 0,
73
+ serviceFeePercentage: 0,
74
+ serviceFeeChargeType: "both",
75
+ maxServiceFeeCents: 0,
76
+ taxPercentage: 0
77
+ })), _ = e.prop(
78
+ t,
79
+ "giftCardApplied",
80
+ 3,
81
+ null
82
+ // { code, giftCardAmount, giftCardBalance, stripeAmount, paymentType, requiresStripe }
83
+ ), ne = e.prop(
84
+ t,
85
+ "taxAmount",
86
+ 3,
87
+ null
88
+ // Server-provided tax amount in dollars (from Stripe Tax API), null means not yet loaded
89
+ ), L = e.prop(
90
+ t,
91
+ "taxLoading",
92
+ 3,
93
+ !1
94
+ // Whether tax is being loaded from server
95
+ ), ce = e.prop(t, "labels", 19, () => ({})), k = e.derived(() => ({ ...R, ...ce() }));
96
+ function ve(f) {
97
+ if (I(f)) {
98
+ const w = s()[f.ID];
99
+ return parseFloat(w) || 0;
100
+ }
101
+ return parseFloat(f.price) || 0;
102
+ }
103
+ function I(f) {
104
+ const w = f.type ?? f.ticketType ?? 0;
105
+ return Number(w) === 2;
106
+ }
107
+ function B(f) {
108
+ return f == null ? !1 : Number(f) === 0;
109
+ }
110
+ function E(f) {
111
+ return B(f?.price);
112
+ }
113
+ let O = e.state(!1);
114
+ function b(f) {
115
+ const w = pa(Ce().serviceFeeChargeType || "both");
116
+ let C = 0;
117
+ (w === "fixed" || w === "both") && (C += (Ce().serviceFeeCents || 0) / 100), (w === "percentage" || w === "both") && (C += (Ce().serviceFeePercentage || 0) / 100 * f);
118
+ const M = Ce().maxServiceFeeCents || 0;
119
+ return M > 0 && C > M / 100 && (C = M / 100), et(C);
120
+ }
121
+ function p() {
122
+ e.set(O, !e.get(O));
123
+ }
124
+ function G(f) {
125
+ if (!j()?.provideDiscount) return null;
126
+ const w = j().discountTicketIds || [];
127
+ if (w.length > 0 && !w.includes(f.ID))
128
+ return null;
129
+ const C = parseFloat(f.price) || 0, M = parseFloat(j()?.amount || "0") || 0;
130
+ return j().discountType === "%" ? (C * (1 - M / 100)).toFixed(2) : j().discountType === "$" ? Math.max(0, C - M).toFixed(2) : null;
131
+ }
132
+ let h = e.derived(() => Object.values(m()).reduce((f, w) => f + w, 0)), Q = e.derived(() => e.get(h) > 0), K = e.derived(() => et(Object.keys(m()).reduce(
133
+ (f, w) => {
134
+ const C = D().find((le) => le.ID == w);
135
+ if (!C) return f;
136
+ const M = ve(C);
137
+ return f + m()[w] * M;
138
+ },
139
+ 0
140
+ ))), X = e.derived(() => et(Object.keys(m()).reduce(
141
+ (f, w) => {
142
+ const C = D().find((ke) => ke.ID == w);
143
+ if (!C) return f;
144
+ if (I(C)) {
145
+ const ke = ve(C);
146
+ return f + m()[w] * ke;
147
+ }
148
+ const M = G(C), le = M !== null ? parseFloat(M) : C.price;
149
+ return f + m()[w] * le;
150
+ },
151
+ 0
152
+ ))), ue = e.derived(() => j()?.provideDiscount ? e.get(K) - e.get(X) : 0), Te = e.derived(() => et(Object.keys(m()).reduce(
153
+ (f, w) => {
154
+ const C = D().find((ke) => ke.ID == w);
155
+ if (!C || I(C)) return f;
156
+ const M = G(C), le = M !== null ? parseFloat(M) : C.price;
157
+ return B(le) ? f : f + m()[w] * b(le);
158
+ },
159
+ 0
160
+ ))), he = e.derived(() => ne() !== null && ne() !== void 0 ? et(ne()) : 0), pe = e.derived(() => _() ? Bt(Mt(_().giftCardAmount)) : null), be = e.derived(() => _() ? Bt(Mt(_().giftCardBalance - _().giftCardAmount)) : null), ye = e.derived(() => et(Math.max(0, e.get(X) + e.get(Te) + e.get(he) - (me() && !j()?.provideDiscount ? Y() : 0) - (_() ? _().giftCardAmount / 100 : 0))));
161
+ e.user_effect(() => {
162
+ t.onPriceUpdate?.({
163
+ subtotal: e.get(X),
164
+ fees: e.get(Te),
165
+ taxes: e.get(he),
166
+ total: e.get(ye),
167
+ promoSavings: e.get(ue)
168
+ });
169
+ });
170
+ var je = er(), F = e.first_child(je), De = e.child(F), Le = e.child(De), Me = e.child(Le, !0);
171
+ e.reset(Le), e.reset(De);
172
+ var Ye = e.sibling(De, 2), Qe = e.child(Ye);
173
+ {
174
+ var at = (f) => {
175
+ var w = Ga(), C = e.child(w), M = e.child(C, !0);
176
+ e.reset(C), e.reset(w), e.template_effect(() => {
177
+ e.set_class(C, 1, xe.smMuted), e.set_text(M, e.get(k).selectTickets);
178
+ }), e.append(f, w);
179
+ }, qe = (f) => {
180
+ var w = Wa(), C = e.first_child(w);
181
+ e.each(C, 16, () => Object.keys(m()), (n) => n, (n, a) => {
182
+ var c = e.comment(), S = e.first_child(c);
183
+ {
184
+ var N = (A) => {
185
+ var P = e.comment(), se = e.first_child(P);
186
+ e.each(se, 17, D, (x) => x.ID, (x, d) => {
187
+ var v = e.comment(), V = e.first_child(v);
188
+ {
189
+ var U = ($) => {
190
+ const ge = e.derived(() => ve(e.get(d))), He = e.derived(() => I(e.get(d)));
191
+ var W = Ha(), Z = e.child(W), _e = e.child(Z), ze = e.child(_e, !0);
192
+ e.reset(_e);
193
+ var pt = e.sibling(_e, 2), ot = e.child(pt);
194
+ {
195
+ var mt = (Ie) => {
196
+ var Oe = e.text();
197
+ e.template_effect(() => e.set_text(Oe, `${e.get(k).free ?? ""} x ${m()[a] ?? ""}`)), e.append(Ie, Oe);
198
+ }, xt = e.derived(() => E(e.get(d)) && !e.get(He)), yt = (Ie) => {
199
+ var Oe = e.text();
200
+ e.template_effect((ft) => e.set_text(Oe, `${ft ?? ""} x ${m()[a] ?? ""}`), [() => ee(e.get(ge))]), e.append(Ie, Oe);
201
+ }, kt = (Ie) => {
202
+ var Oe = e.text();
203
+ e.template_effect((ft) => e.set_text(Oe, `${ft ?? ""} x ${m()[a] ?? ""}`), [() => ee(e.get(d).price)]), e.append(Ie, Oe);
204
+ };
205
+ e.if(ot, (Ie) => {
206
+ e.get(xt) ? Ie(mt) : e.get(He) ? Ie(yt, 1) : Ie(kt, -1);
207
+ });
208
+ }
209
+ e.reset(pt), e.reset(Z);
210
+ var dt = e.sibling(Z, 2), St = e.child(dt);
211
+ {
212
+ var wt = (Ie) => {
213
+ var Oe = e.text();
214
+ e.template_effect(() => e.set_text(Oe, e.get(k).free)), e.append(Ie, Oe);
215
+ }, At = e.derived(() => E(e.get(d)) && !e.get(He)), Pt = (Ie) => {
216
+ var Oe = e.text();
217
+ e.template_effect((ft) => e.set_text(Oe, ft), [
218
+ () => ee(e.get(ge) * m()[a])
219
+ ]), e.append(Ie, Oe);
220
+ };
221
+ e.if(St, (Ie) => {
222
+ e.get(At) ? Ie(wt) : Ie(Pt, -1);
223
+ });
224
+ }
225
+ e.reset(dt), e.reset(W), e.template_effect(() => {
226
+ e.set_class(_e, 1, xe.label), e.set_text(ze, e.get(d).name), e.set_class(pt, 1, xe.smMuted), e.set_class(dt, 1, xe.label);
227
+ }), e.append($, W);
228
+ };
229
+ e.if(V, ($) => {
230
+ e.get(d).ID == a && $(U);
231
+ });
232
+ }
233
+ e.append(x, v);
234
+ }), e.append(A, P);
235
+ };
236
+ e.if(S, (A) => {
237
+ m()[a] > 0 && A(N);
238
+ });
239
+ }
240
+ e.append(n, c);
241
+ });
242
+ var M = e.sibling(C, 2), le = e.child(M);
243
+ {
244
+ var ke = (n) => {
245
+ var a = Va(), c = e.child(a), S = e.child(c, !0);
246
+ e.reset(c);
247
+ var N = e.sibling(c), A = e.child(N, !0);
248
+ e.reset(N), e.reset(a), e.template_effect(
249
+ (P) => {
250
+ e.set_text(S, e.get(k).fullPrice), e.set_text(A, P);
251
+ },
252
+ [() => ee(e.get(K))]
253
+ ), e.append(n, a);
254
+ };
255
+ e.if(le, (n) => {
256
+ (e.get(ue) > 0 || Y() > 0 && !j()?.provideDiscount) && n(ke);
257
+ });
258
+ }
259
+ var Se = e.sibling(le, 2);
260
+ {
261
+ var l = (n) => {
262
+ var a = Ct(), c = e.child(a), S = e.child(c, !0);
263
+ e.reset(c);
264
+ var N = e.sibling(c), A = e.child(N);
265
+ e.reset(N), e.reset(a), e.template_effect(
266
+ (P) => {
267
+ e.set_text(S, e.get(k).discount), e.set_text(A, `-${P ?? ""}`);
268
+ },
269
+ [() => ee(e.get(ue))]
270
+ ), e.append(n, a);
271
+ }, g = (n) => {
272
+ var a = Ct(), c = e.child(a), S = e.child(c, !0);
273
+ e.reset(c);
274
+ var N = e.sibling(c), A = e.child(N);
275
+ e.reset(N), e.reset(a), e.template_effect(
276
+ (P) => {
277
+ e.set_text(S, e.get(k).discount), e.set_text(A, `-${P ?? ""}`);
278
+ },
279
+ [() => ee(Y())]
280
+ ), e.append(n, a);
281
+ };
282
+ e.if(Se, (n) => {
283
+ e.get(ue) > 0 ? n(l) : Y() > 0 && !j()?.provideDiscount && n(g, 1);
284
+ });
285
+ }
286
+ var y = e.sibling(Se, 2), oe = e.child(y), re = e.child(oe, !0);
287
+ e.reset(oe);
288
+ var ae = e.sibling(oe), q = e.child(ae, !0);
289
+ e.reset(ae), e.reset(y);
290
+ var H = e.sibling(y, 2), ie = e.child(H), Ae = e.child(ie, !0);
291
+ e.reset(ie);
292
+ var Pe = e.sibling(ie), Ee = e.child(Pe, !0);
293
+ e.reset(Pe), e.reset(H);
294
+ var Ge = e.sibling(H, 2), Ze = e.child(Ge), ht = e.child(Ze, !0);
295
+ e.reset(Ze);
296
+ var lt = e.sibling(Ze, 2), ct = e.child(lt);
297
+ {
298
+ var bt = (n) => {
299
+ var a = Vt(), c = e.child(a);
300
+ It(c, { size: "xs" }), e.next(), e.reset(a), e.append(n, a);
301
+ }, vt = (n) => {
302
+ var a = e.text();
303
+ e.template_effect((c) => e.set_text(a, c), [() => ee(e.get(he))]), e.append(n, a);
304
+ };
305
+ e.if(ct, (n) => {
306
+ L() ? n(bt) : n(vt, -1);
307
+ });
308
+ }
309
+ e.reset(lt), e.reset(Ge);
310
+ var _t = e.sibling(Ge, 2);
311
+ {
312
+ var ut = (n) => {
313
+ var a = Wt(), c = e.first_child(a), S = e.child(c), N = e.child(S, !0);
314
+ e.reset(S);
315
+ var A = e.sibling(S, 2), P = e.child(A);
316
+ e.reset(A), e.reset(c);
317
+ var se = e.sibling(c, 2);
318
+ {
319
+ var x = (d) => {
320
+ var v = Ut(), V = e.child(v), U = e.child(V, !0);
321
+ e.reset(V);
322
+ var $ = e.sibling(V, 2), ge = e.child($, !0);
323
+ e.reset($), e.reset(v), e.template_effect(() => {
324
+ e.set_text(U, e.get(k).giftCardBalanceAfterOrder), e.set_text(ge, e.get(be));
325
+ }), e.append(d, v);
326
+ };
327
+ e.if(se, (d) => {
328
+ e.get(be) && _().giftCardBalance - _().giftCardAmount > 0 && d(x);
329
+ });
330
+ }
331
+ e.template_effect(() => {
332
+ e.set_text(N, e.get(k).giftCardAppliedLabel), e.set_text(P, `-${e.get(pe) ?? ""}`);
333
+ }), e.append(n, a);
334
+ };
335
+ e.if(_t, (n) => {
336
+ _() && n(ut);
337
+ });
338
+ }
339
+ e.reset(M);
340
+ var o = e.sibling(M, 2);
341
+ {
342
+ var i = (n) => {
343
+ var a = Ua(), c = e.first_child(a), S = e.child(c), N = e.child(S, !0);
344
+ e.reset(S), e.next(2), e.reset(c);
345
+ var A = e.sibling(c, 2), P = e.child(A, !0);
346
+ e.reset(A), e.template_effect(() => {
347
+ e.set_text(N, e.get(k).amountDue), e.set_text(P, e.get(k).fullyCoveredByGiftCard);
348
+ }), e.append(n, a);
349
+ }, u = (n) => {
350
+ var a = Zt(), c = e.child(a), S = e.child(c, !0);
351
+ e.reset(c);
352
+ var N = e.sibling(c), A = e.child(N, !0);
353
+ e.reset(N), e.reset(a), e.template_effect(
354
+ (P) => {
355
+ e.set_class(a, 1, `flex justify-between ${xe.h3} py-4 type-subheading border-t border-border`), e.set_text(S, e.get(k).total), e.set_text(A, P);
356
+ },
357
+ [() => ee(e.get(ye))]
358
+ ), e.append(n, a);
359
+ };
360
+ e.if(o, (n) => {
361
+ _()?.paymentType === "gift_card_only" ? n(i) : n(u, -1);
362
+ });
363
+ }
364
+ e.template_effect(
365
+ (n, a) => {
366
+ e.set_class(M, 1, `${xe.sm} flex flex-col py-3 gap-2`), e.set_text(re, e.get(k).subtotal), e.set_text(q, n), e.set_text(Ae, e.get(k).fees), e.set_text(Ee, a), e.set_text(ht, e.get(k).taxes);
367
+ },
368
+ [
369
+ () => ee(e.get(X)),
370
+ () => ee(e.get(Te))
371
+ ]
372
+ ), e.append(f, w);
373
+ };
374
+ e.if(Qe, (f) => {
375
+ e.get(h) === 0 ? f(at) : f(qe, -1);
376
+ });
377
+ }
378
+ var Ne = e.sibling(Qe, 2);
379
+ {
380
+ var Ke = (f) => {
381
+ var w = Za(), C = e.child(w), M = e.sibling(C), le = e.child(M, !0);
382
+ e.reset(M), e.reset(w), e.template_effect(() => {
383
+ e.set_class(w, 1, `${xe.xsMuted} text-center mb-3`), e.set_text(C, `${e.get(k).placeOrderTos ?? ""} `), e.set_text(le, e.get(k).termsOfService);
384
+ }), e.append(f, w);
385
+ };
386
+ e.if(Ne, (f) => {
387
+ e.get(h) > 0 && J() && f(Ke);
388
+ });
389
+ }
390
+ var Re = e.sibling(Ne, 2), rt = e.child(Re);
391
+ {
392
+ var Ue = (f) => {
393
+ It(f, { size: "sm", color: "white" });
394
+ }, We = (f) => {
395
+ var w = Jt(), C = e.child(w, !0);
396
+ e.reset(w), e.template_effect(() => e.set_text(C, te() ?? (J() ? e.get(k).placeOrderButtonText : e.get(k).checkoutButtonText))), e.append(f, w);
397
+ };
398
+ e.if(rt, (f) => {
399
+ T() ? f(Ue) : f(We, -1);
400
+ });
401
+ }
402
+ e.reset(Re), e.reset(Ye), e.reset(F);
403
+ var Xe = e.sibling(F, 2);
404
+ {
405
+ var it = (f) => {
406
+ var w = Xa(), C = e.first_child(w), M = e.sibling(C, 2), le = e.child(M), ke = e.child(le), Se = e.child(ke, !0);
407
+ e.reset(ke);
408
+ var l = e.sibling(ke, 2), g = e.child(l);
409
+ za(g, { class: "w-7 h-7" }), e.reset(l), e.reset(le);
410
+ var y = e.sibling(le, 2), oe = e.child(y);
411
+ e.each(oe, 16, () => Object.keys(m()), (x) => x, (x, d) => {
412
+ var v = e.comment(), V = e.first_child(v);
413
+ {
414
+ var U = ($) => {
415
+ var ge = e.comment(), He = e.first_child(ge);
416
+ e.each(He, 17, D, (W) => W.ID, (W, Z) => {
417
+ var _e = e.comment(), ze = e.first_child(_e);
418
+ {
419
+ var pt = (ot) => {
420
+ const mt = e.derived(() => ve(e.get(Z))), xt = e.derived(() => I(e.get(Z)));
421
+ var yt = Ja(), kt = e.child(yt), dt = e.child(kt), St = e.child(dt, !0);
422
+ e.reset(dt);
423
+ var wt = e.sibling(dt, 2), At = e.child(wt);
424
+ {
425
+ var Pt = (Fe) => {
426
+ var Be = e.text();
427
+ e.template_effect(() => e.set_text(Be, `${e.get(k).free ?? ""} x ${m()[d] ?? ""}`)), e.append(Fe, Be);
428
+ }, Ie = e.derived(() => E(e.get(Z)) && !e.get(xt)), Oe = (Fe) => {
429
+ var Be = e.text();
430
+ e.template_effect((Tt) => e.set_text(Be, `${Tt ?? ""} x ${m()[d] ?? ""}`), [() => ee(e.get(mt))]), e.append(Fe, Be);
431
+ }, ft = (Fe) => {
432
+ var Be = e.text();
433
+ e.template_effect((Tt) => e.set_text(Be, `${Tt ?? ""} x ${m()[d] ?? ""}`), [() => ee(e.get(Z).price)]), e.append(Fe, Be);
434
+ };
435
+ e.if(At, (Fe) => {
436
+ e.get(Ie) ? Fe(Pt) : e.get(xt) ? Fe(Oe, 1) : Fe(ft, -1);
437
+ });
438
+ }
439
+ e.reset(wt), e.reset(kt);
440
+ var Et = e.sibling(kt, 2), ra = e.child(Et);
441
+ {
442
+ var ia = (Fe) => {
443
+ var Be = e.text();
444
+ e.template_effect(() => e.set_text(Be, e.get(k).free)), e.append(Fe, Be);
445
+ }, sa = e.derived(() => E(e.get(Z)) && !e.get(xt)), na = (Fe) => {
446
+ var Be = e.text();
447
+ e.template_effect((Tt) => e.set_text(Be, Tt), [
448
+ () => ee(e.get(mt) * m()[d])
449
+ ]), e.append(Fe, Be);
450
+ };
451
+ e.if(ra, (Fe) => {
452
+ e.get(sa) ? Fe(ia) : Fe(na, -1);
453
+ });
454
+ }
455
+ e.reset(Et), e.reset(yt), e.template_effect(() => {
456
+ e.set_class(dt, 1, xe.h5), e.set_text(St, e.get(Z).name), e.set_class(wt, 1, xe.smMuted), e.set_class(Et, 1, xe.h5);
457
+ }), e.append(ot, yt);
458
+ };
459
+ e.if(ze, (ot) => {
460
+ e.get(Z).ID == d && ot(pt);
461
+ });
462
+ }
463
+ e.append(W, _e);
464
+ }), e.append($, ge);
465
+ };
466
+ e.if(V, ($) => {
467
+ m()[d] > 0 && $(U);
468
+ });
469
+ }
470
+ e.append(x, v);
471
+ });
472
+ var re = e.sibling(oe, 2), ae = e.child(re);
473
+ {
474
+ var q = (x) => {
475
+ var d = Ya(), v = e.child(d), V = e.child(v, !0);
476
+ e.reset(v);
477
+ var U = e.sibling(v), $ = e.child(U, !0);
478
+ e.reset(U), e.reset(d), e.template_effect(
479
+ (ge) => {
480
+ e.set_text(V, e.get(k).fullPrice), e.set_text($, ge);
481
+ },
482
+ [() => ee(e.get(K))]
483
+ ), e.append(x, d);
484
+ };
485
+ e.if(ae, (x) => {
486
+ (e.get(ue) > 0 || Y() > 0 && !j()?.provideDiscount) && x(q);
487
+ });
488
+ }
489
+ var H = e.sibling(ae, 2);
490
+ {
491
+ var ie = (x) => {
492
+ var d = Ct(), v = e.child(d), V = e.child(v, !0);
493
+ e.reset(v);
494
+ var U = e.sibling(v), $ = e.child(U);
495
+ e.reset(U), e.reset(d), e.template_effect(
496
+ (ge) => {
497
+ e.set_text(V, e.get(k).discount), e.set_text($, `-${ge ?? ""}`);
498
+ },
499
+ [() => ee(e.get(ue))]
500
+ ), e.append(x, d);
501
+ }, Ae = (x) => {
502
+ var d = Ct(), v = e.child(d), V = e.child(v, !0);
503
+ e.reset(v);
504
+ var U = e.sibling(v), $ = e.child(U);
505
+ e.reset(U), e.reset(d), e.template_effect(
506
+ (ge) => {
507
+ e.set_text(V, e.get(k).discount), e.set_text($, `-${ge ?? ""}`);
508
+ },
509
+ [() => ee(Y())]
510
+ ), e.append(x, d);
511
+ };
512
+ e.if(H, (x) => {
513
+ e.get(ue) > 0 ? x(ie) : Y() > 0 && !j()?.provideDiscount && x(Ae, 1);
514
+ });
515
+ }
516
+ var Pe = e.sibling(H, 2), Ee = e.child(Pe), Ge = e.child(Ee, !0);
517
+ e.reset(Ee);
518
+ var Ze = e.sibling(Ee), ht = e.child(Ze, !0);
519
+ e.reset(Ze), e.reset(Pe);
520
+ var lt = e.sibling(Pe, 2), ct = e.child(lt), bt = e.child(ct, !0);
521
+ e.reset(ct);
522
+ var vt = e.sibling(ct), _t = e.child(vt, !0);
523
+ e.reset(vt), e.reset(lt);
524
+ var ut = e.sibling(lt, 2), o = e.child(ut), i = e.child(o, !0);
525
+ e.reset(o);
526
+ var u = e.sibling(o, 2), n = e.child(u);
527
+ {
528
+ var a = (x) => {
529
+ var d = Vt(), v = e.child(d);
530
+ It(v, { size: "xs" }), e.next(), e.reset(d), e.append(x, d);
531
+ }, c = (x) => {
532
+ var d = e.text();
533
+ e.template_effect((v) => e.set_text(d, v), [() => ee(e.get(he))]), e.append(x, d);
534
+ };
535
+ e.if(n, (x) => {
536
+ L() ? x(a) : x(c, -1);
537
+ });
538
+ }
539
+ e.reset(u), e.reset(ut);
540
+ var S = e.sibling(ut, 2);
541
+ {
542
+ var N = (x) => {
543
+ var d = Wt(), v = e.first_child(d), V = e.child(v), U = e.child(V, !0);
544
+ e.reset(V);
545
+ var $ = e.sibling(V, 2), ge = e.child($);
546
+ e.reset($), e.reset(v);
547
+ var He = e.sibling(v, 2);
548
+ {
549
+ var W = (Z) => {
550
+ var _e = Ut(), ze = e.child(_e), pt = e.child(ze, !0);
551
+ e.reset(ze);
552
+ var ot = e.sibling(ze, 2), mt = e.child(ot, !0);
553
+ e.reset(ot), e.reset(_e), e.template_effect(() => {
554
+ e.set_text(pt, e.get(k).giftCardBalanceAfterOrder), e.set_text(mt, e.get(be));
555
+ }), e.append(Z, _e);
556
+ };
557
+ e.if(He, (Z) => {
558
+ e.get(be) && _().giftCardBalance - _().giftCardAmount > 0 && Z(W);
559
+ });
560
+ }
561
+ e.template_effect(() => {
562
+ e.set_text(U, e.get(k).giftCardAppliedLabel), e.set_text(ge, `-${e.get(pe) ?? ""}`);
563
+ }), e.append(x, d);
564
+ };
565
+ e.if(S, (x) => {
566
+ _() && x(N);
567
+ });
568
+ }
569
+ e.reset(re);
570
+ var A = e.sibling(re, 2);
571
+ {
572
+ var P = (x) => {
573
+ var d = Ka(), v = e.first_child(d), V = e.child(v), U = e.child(V, !0);
574
+ e.reset(V), e.next(2), e.reset(v);
575
+ var $ = e.sibling(v, 2), ge = e.child($, !0);
576
+ e.reset($), e.template_effect(() => {
577
+ e.set_text(U, e.get(k).amountDue), e.set_text(ge, e.get(k).fullyCoveredByGiftCard);
578
+ }), e.append(x, d);
579
+ }, se = (x) => {
580
+ var d = Zt(), v = e.child(d), V = e.child(v, !0);
581
+ e.reset(v);
582
+ var U = e.sibling(v), $ = e.child(U, !0);
583
+ e.reset(U), e.reset(d), e.template_effect(
584
+ (ge) => {
585
+ e.set_class(d, 1, `flex justify-between ${xe.h3} py-5 border-t border-border`), e.set_text(V, e.get(k).total), e.set_text($, ge);
586
+ },
587
+ [() => ee(e.get(ye))]
588
+ ), e.append(x, d);
589
+ };
590
+ e.if(A, (x) => {
591
+ _()?.paymentType === "gift_card_only" ? x(P) : x(se, -1);
592
+ });
593
+ }
594
+ e.reset(y), e.reset(M), e.template_effect(
595
+ (x, d) => {
596
+ e.set_attribute(C, "aria-label", e.get(k).closeOrderSummary), e.set_class(ke, 1, `${xe.h2} type-heading`), e.set_text(Se, e.get(k).orderSummary), e.set_attribute(l, "aria-label", e.get(k).closeOrderSummary), e.set_text(Ge, e.get(k).subtotal), e.set_text(ht, x), e.set_text(bt, e.get(k).fees), e.set_text(_t, d), e.set_text(i, e.get(k).taxes);
597
+ },
598
+ [
599
+ () => ee(e.get(X)),
600
+ () => ee(e.get(Te))
601
+ ]
602
+ ), e.delegated("click", C, () => e.set(O, !1)), e.transition(3, C, () => fa, () => ({ duration: 200 })), e.delegated("click", l, () => e.set(O, !1)), e.transition(1, M, () => Ot, () => ({ y: 800, duration: 300, easing: Ht })), e.transition(2, M, () => Ot, () => ({ y: 800, duration: 300, easing: Ht })), e.append(f, w);
603
+ };
604
+ e.if(Xe, (f) => {
605
+ e.get(O) && f(it);
606
+ });
607
+ }
608
+ var st = e.sibling(Xe, 2);
609
+ {
610
+ var nt = (f) => {
611
+ var w = $a(), C = e.child(w), M = e.child(C), le = e.child(M), ke = e.child(le), Se = e.sibling(ke);
612
+ {
613
+ let q = e.derived(() => `w-4 h-4 ${xe.iconMuted} transition-transform duration-200 ${e.get(O) ? "rotate-180" : ""}`);
614
+ oa(Se, {
615
+ get class() {
616
+ return e.get(q);
617
+ }
618
+ });
619
+ }
620
+ e.reset(le);
621
+ var l = e.sibling(le, 2), g = e.child(l, !0);
622
+ e.reset(l), e.reset(M);
623
+ var y = e.sibling(M, 2), oe = e.child(y);
624
+ {
625
+ var re = (q) => {
626
+ It(q, { size: "sm", color: "white" });
627
+ }, ae = (q) => {
628
+ var H = Jt(), ie = e.child(H, !0);
629
+ e.reset(H), e.template_effect(() => e.set_text(ie, e.get(k).checkout)), e.append(q, H);
630
+ };
631
+ e.if(oe, (q) => {
632
+ T() ? q(re) : q(ae, -1);
633
+ });
634
+ }
635
+ e.reset(y), e.reset(C), e.reset(w), e.template_effect(
636
+ (q) => {
637
+ e.set_class(le, 1, `${xe.sm} flex items-center gap-1 tone-secondary`), e.set_text(ke, `${e.get(h) ?? ""} ${(e.get(h) > 1 ? e.get(k).ticketPlural : e.get(k).ticketSingular) ?? ""} `), e.set_class(l, 1, `${xe.h2} type-heading`), e.set_text(g, q), e.set_class(y, 1, `${xe.label} flex-1 min-w-36 h-12 rounded-lg touch-manipulation flex items-center justify-center ${e.get(h) === 0 || !z() || L() ? "bg-bg-tertiary tone-muted cursor-not-allowed" : "bg-brand-primary text-white hover:bg-brand-primary/90"}`), y.disabled = e.get(h) === 0 || !z() || L();
638
+ },
639
+ [() => ee(e.get(ye))]
640
+ ), e.delegated("click", M, p), e.delegated("click", y, () => {
641
+ L() || (we() ? we()(fe()) : r() && r()());
642
+ }), e.transition(3, w, () => Ot, () => ({ y: 100, duration: 200 })), e.append(f, w);
643
+ };
644
+ e.if(st, (f) => {
645
+ e.get(Q) && f(nt);
646
+ });
647
+ }
648
+ e.template_effect(() => {
649
+ e.set_class(Le, 1, e.clsx(xe.h3)), e.set_text(Me, e.get(k).orderSummary), e.set_class(Re, 1, `w-full h-12 font-semibold rounded-lg flex items-center justify-center transition-colors select-none touch-manipulation ${e.get(h) === 0 || !z() || L() ? "bg-bg-tertiary tone-muted cursor-not-allowed" : "bg-brand-primary text-white hover:bg-brand-primary/90"}`), Re.disabled = e.get(h) === 0 || !z() || L();
650
+ }), e.delegated("click", Re, () => {
651
+ e.get(h) === 0 || !z() || L() || (we() ? we()(fe()) : r() && r()());
652
+ }), e.append(de, je), e.pop();
653
+ }
654
+ e.delegate(["click"]);
655
+ function ar(de, t) {
656
+ if (!de || typeof de != "object") return {};
657
+ if (!Array.isArray(t) || t.length === 0) {
658
+ const m = {};
659
+ for (const [s, D] of Object.entries(de))
660
+ typeof D == "number" && D > 0 && (m[s] = D);
661
+ return m;
662
+ }
663
+ const R = /* @__PURE__ */ new Map();
664
+ for (const m of t)
665
+ m && m.ID !== void 0 && m.ID !== null && R.set(String(m.ID), m);
666
+ const T = {};
667
+ for (const [m, s] of Object.entries(de)) {
668
+ if (typeof s != "number" || !Number.isFinite(s) || s <= 0) continue;
669
+ const D = R.get(String(m));
670
+ let r = s;
671
+ if (D) {
672
+ const z = D.remainingCapacity;
673
+ typeof z == "number" && Number.isFinite(z) && (r = Math.min(r, Math.max(0, z)));
674
+ const te = D.maxQuantity;
675
+ typeof te == "number" && Number.isFinite(te) && te > 0 && (r = Math.min(r, te));
676
+ }
677
+ r > 0 && (T[m] = r);
678
+ }
679
+ return T;
680
+ }
681
+ var rr = e.from_html('<div role="group"><!> <span class="qty-display svelte-12zmutv" aria-live="polite" aria-atomic="true" role="status"><span class="sr-only"> </span> </span> <!></div>'), ir = e.from_html('<span class="sold-out-pill type-caption whitespace-nowrap svelte-12zmutv" role="status"> </span>'), sr = e.from_html('<span class="sales-start-badge type-caption text-secondary whitespace-nowrap svelte-12zmutv" role="status"> </span>'), nr = e.from_html('<span class="sr-only" role="alert"> </span>'), lr = e.from_html('<div class="donation-input-wrapper svelte-12zmutv"><!> <!></div>'), or = e.from_html('<span class="price-lg text-primary svelte-12zmutv"> </span> <span class="price-strikethrough"><span class="sr-only"> </span> </span> <span class="price-fee" aria-hidden="true"> </span> <span class="sr-only"> </span>', 1), dr = e.from_html('<span class="price-lg text-primary svelte-12zmutv"> </span>'), cr = e.from_html('<span class="price-lg text-primary svelte-12zmutv"> </span> <span class="price-fee" aria-hidden="true"> </span> <span class="sr-only"> </span>', 1), vr = e.from_html('<span class="badge badge-discount"> </span>'), ur = e.from_html('<span class="badge badge-unlocked"> </span>'), pr = e.from_html('<div class="flex-row-2 mb-2 flex-wrap" role="status" aria-live="polite"><!> <!></div>'), fr = e.from_html('<p class="type-body text-secondary mb-3 svelte-12zmutv"> </p>'), gr = e.from_html("<span> </span>"), _r = e.from_html('<p class="sales-end-text type-caption svelte-12zmutv" role="status"> </p>'), mr = e.from_html('<article><div class="p-4 pb-0"><div class="vc-flex-between-start gap-4"><div class="flex-1 min-w-0"><h3 class="type-subheading text-primary svelte-12zmutv"> </h3></div> <!></div></div> <hr class="divider-line my-3 svelte-12zmutv" aria-hidden="true"/> <div class="p-4 pt-0"><div class="flex-row-2 mb-2"><!></div> <!> <!> <div class="flex-row-2 mb-2 flex-wrap" role="status"><!> <!></div> <!></div></article>');
682
+ function hr(de, t) {
683
+ e.push(t, !0);
684
+ let R = e.prop(t, "fee", 3, "0.00"), T = e.prop(t, "quantity", 3, 0), m = e.prop(t, "soldOut", 3, !1), s = e.prop(t, "status", 3, null), D = e.prop(t, "salesBegin", 3, null), r = e.prop(t, "salesEnd", 3, null), z = e.prop(t, "remainingCapacity", 3, null), te = e.prop(
685
+ t,
686
+ "totalCapacity",
687
+ 3,
688
+ null
689
+ // Total ticket capacity for percentage calculation
690
+ );
691
+ e.prop(
692
+ t,
693
+ "minQuantity",
694
+ 3,
695
+ 1
696
+ // Minimum quantity per order (default 1)
697
+ );
698
+ let J = e.prop(
699
+ t,
700
+ "maxQuantity",
701
+ 3,
702
+ null
703
+ // Maximum quantity per order (null = unlimited)
704
+ ), me = e.prop(
705
+ t,
706
+ "discountedPrice",
707
+ 3,
708
+ null
709
+ // Discounted price when promo applied
710
+ ), Y = e.prop(
711
+ t,
712
+ "isRevealed",
713
+ 3,
714
+ !1
715
+ // Badge: Unlocked via promo
716
+ ), j = e.prop(
717
+ t,
718
+ "isDiscounted",
719
+ 3,
720
+ !1
721
+ // Badge: Discount applied
722
+ ), we = e.prop(
723
+ t,
724
+ "ticketType",
725
+ 3,
726
+ 0
727
+ // 0 = paid/standard, 1 = registration/free, 2 = donation
728
+ ), fe = e.prop(
729
+ t,
730
+ "donationAmount",
731
+ 3,
732
+ ""
733
+ // User-entered donation amount (string for input binding)
734
+ ), Ce = e.prop(t, "syncing", 3, !1), _ = e.prop(t, "labels", 19, () => ({}));
735
+ const ne = e.derived(() => we() === 2), L = e.derived(() => parseFloat(fe()) || 0), ce = e.derived(() => e.get(ne) && fe() !== "" && e.get(L) < 1 ? _().minimumDonation || "Minimum $1.00" : ""), k = e.derived(() => !e.get(ne) || fe() !== "" && e.get(L) >= 1), ve = e.derived(() => parseFloat(t.price) || 0), I = e.derived(() => e.get(ve) === 0 ? 0 : parseFloat(R()) || 0), B = e.derived(() => ee(e.get(ve) + e.get(I))), E = e.derived(() => ee(e.get(I))), O = e.derived(() => me() ? parseFloat(me()) : null), b = e.derived(() => e.get(O) === null || e.get(O) === 0 ? 0 : parseFloat(R()) || 0), p = e.derived(() => e.get(O) !== null ? ee(e.get(O) + e.get(b)) : null), G = e.derived(() => te() ?? z() ?? 0), h = e.derived(() => {
736
+ const l = z() ?? 0, g = e.get(G);
737
+ if (g === 0 || s() === "scheduled" || s() === "sales_ended" || e.get(
738
+ ve
739
+ // no scarcity on free tickets
740
+ ) === 0) return null;
741
+ const y = ga(l, g);
742
+ return y === "sold-out" ? { text: "Sold out", type: "sold-out" } : y === "urgent" ? {
743
+ text: `Only ${l} left`,
744
+ type: "scarcity",
745
+ showFlame: !0
746
+ } : y === "low" ? { text: "Few tickets left", type: "scarcity", showFlame: !0 } : null;
747
+ }), Q = e.derived(() => e.get(h) != null && e.get(h).type === "scarcity");
748
+ function K(l) {
749
+ return _a(l, "UTC");
750
+ }
751
+ function X(l) {
752
+ return {
753
+ text: ma(l, _()),
754
+ preposition: ""
755
+ };
756
+ }
757
+ function ue(l) {
758
+ const { text: g } = X(l);
759
+ return g;
760
+ }
761
+ function Te(l) {
762
+ return X(l);
763
+ }
764
+ const he = e.derived(() => (() => {
765
+ if (!s()) return null;
766
+ switch (s()) {
767
+ case "scheduled":
768
+ return {
769
+ showAsMessage: !0,
770
+ // Display as inline message instead of badge
771
+ message: (_().salesStart || "Sales start {salesStart}").replace("{salesStart}", ue(D()))
772
+ };
773
+ case "on_sale":
774
+ return null;
775
+ case // Don't show badge for normal on-sale status
776
+ "sales_ended":
777
+ return {
778
+ badge: _().statusSalesEnded || "Sales ended",
779
+ badgeClass: "badge-ended",
780
+ label: "Ended",
781
+ date: K(r())
782
+ };
783
+ default:
784
+ return null;
785
+ }
786
+ })());
787
+ var pe = mr();
788
+ let be;
789
+ var ye = e.child(pe), je = e.child(ye), F = e.child(je), De = e.child(F), Le = e.child(De, !0);
790
+ e.reset(De), e.reset(F);
791
+ var Me = e.sibling(F, 2);
792
+ {
793
+ var Ye = (l) => {
794
+ var g = rr();
795
+ let y;
796
+ var oe = e.child(g);
797
+ {
798
+ let Ae = e.derived(() => T() === 0 || Ce()), Pe = e.derived(() => (_().decreaseQuantity || "Decrease quantity for {title}").replace("{title}", t.title));
799
+ Je(oe, {
800
+ variant: "icon-brand",
801
+ size: "icon-sm",
802
+ onclick: () => t.ondecrement?.(),
803
+ get disabled() {
804
+ return e.get(Ae);
805
+ },
806
+ get "aria-label"() {
807
+ return e.get(Pe);
808
+ },
809
+ children: (Ee, Ge) => {
810
+ da(Ee, { size: "20" });
811
+ },
812
+ $$slots: { default: !0 }
813
+ });
814
+ }
815
+ var re = e.sibling(oe, 2), ae = e.child(re), q = e.child(ae, !0);
816
+ e.reset(ae);
817
+ var H = e.sibling(ae);
818
+ e.reset(re);
819
+ var ie = e.sibling(re, 2);
820
+ {
821
+ let Ae = e.derived(() => J() !== null && T() >= J() || z() !== null && T() >= z() || !e.get(k) || Ce()), Pe = e.derived(() => (_().increaseQuantity || "Increase quantity for {title}").replace("{title}", t.title));
822
+ Je(ie, {
823
+ variant: "icon-brand",
824
+ size: "icon-sm",
825
+ onclick: () => t.onincrement?.(),
826
+ get disabled() {
827
+ return e.get(Ae);
828
+ },
829
+ get "aria-label"() {
830
+ return e.get(Pe);
831
+ },
832
+ children: (Ee, Ge) => {
833
+ ca(Ee, { size: "20" });
834
+ },
835
+ $$slots: { default: !0 }
836
+ });
837
+ }
838
+ e.reset(g), e.template_effect(
839
+ (Ae) => {
840
+ y = e.set_class(g, 1, "flex items-center quantity-selector svelte-12zmutv", null, y, { active: T() > 0 }), e.set_attribute(g, "aria-label", Ae), e.set_text(q, _().quantity || "Quantity:"), e.set_text(H, ` ${T() ?? ""}`);
841
+ },
842
+ [
843
+ () => (_().quantitySelector || "Quantity selector for {title}").replace("{title}", t.title)
844
+ ]
845
+ ), e.append(l, g);
846
+ }, Qe = (l) => {
847
+ var g = ir(), y = e.child(g, !0);
848
+ e.reset(g), e.template_effect(() => {
849
+ e.set_attribute(g, "aria-label", _().statusSoldOut || "Sold out"), e.set_text(y, _().statusSoldOut || "Sold out");
850
+ }), e.append(l, g);
851
+ }, at = (l) => {
852
+ var g = sr(), y = e.child(g, !0);
853
+ e.reset(g), e.template_effect(() => e.set_text(y, e.get(he).message)), e.append(l, g);
854
+ };
855
+ e.if(Me, (l) => {
856
+ !m() && s() !== "scheduled" && s() !== "sales_ended" ? l(Ye) : m() ? l(Qe, 1) : s() === "scheduled" && e.get(he)?.message && l(at, 2);
857
+ });
858
+ }
859
+ e.reset(je), e.reset(ye);
860
+ var qe = e.sibling(ye, 4), Ne = e.child(qe), Ke = e.child(Ne);
861
+ {
862
+ var Re = (l) => {
863
+ var g = lr(), y = e.child(g);
864
+ {
865
+ let ae = e.derived(() => _().donationAmountLabel || "Donation amount in dollars"), q = e.derived(() => m() || s() === "scheduled" || s() === "sales_ended"), H = e.derived(() => e.get(ce) ? "donation-error-" + t.title?.replace(/\s+/g, "-").toLowerCase() : void 0);
866
+ ta(y, {
867
+ get label() {
868
+ return e.get(ae);
869
+ },
870
+ size: "lg",
871
+ type: "text",
872
+ inputmode: "decimal",
873
+ placeholder: "0.00",
874
+ get value() {
875
+ return fe();
876
+ },
877
+ oninputchange: (ie) => t.ondonationchange?.(ie),
878
+ get disabled() {
879
+ return e.get(q);
880
+ },
881
+ get errorText() {
882
+ return e.get(ce);
883
+ },
884
+ get "aria-describedby"() {
885
+ return e.get(H);
886
+ }
887
+ });
888
+ }
889
+ var oe = e.sibling(y, 2);
890
+ {
891
+ var re = (ae) => {
892
+ var q = nr(), H = e.child(q, !0);
893
+ e.reset(q), e.template_effect(
894
+ (ie) => {
895
+ e.set_attribute(q, "id", `donation-error-${ie ?? ""}`), e.set_text(H, e.get(ce));
896
+ },
897
+ [() => t.title?.replace(/\s+/g, "-").toLowerCase()]
898
+ ), e.append(ae, q);
899
+ };
900
+ e.if(oe, (ae) => {
901
+ e.get(ce) && ae(re);
902
+ });
903
+ }
904
+ e.reset(g), e.append(l, g);
905
+ }, rt = (l) => {
906
+ var g = or(), y = e.first_child(g), oe = e.child(y, !0);
907
+ e.reset(y);
908
+ var re = e.sibling(y, 2), ae = e.child(re), q = e.child(ae, !0);
909
+ e.reset(ae);
910
+ var H = e.sibling(ae, 1, !0);
911
+ e.reset(re);
912
+ var ie = e.sibling(re, 2), Ae = e.child(ie, !0);
913
+ e.reset(ie);
914
+ var Pe = e.sibling(ie, 2), Ee = e.child(Pe, !0);
915
+ e.reset(Pe), e.template_effect(
916
+ (Ge, Ze) => {
917
+ e.set_attribute(y, "aria-label", `Discounted price ${e.get(p) ?? ""}`), e.set_text(oe, e.get(p)), e.set_attribute(re, "aria-label", `Original price ${e.get(B) ?? ""}`), e.set_text(q, _().originalPrice || "Original price:"), e.set_text(H, e.get(B)), e.set_text(Ae, Ge), e.set_text(Ee, Ze);
918
+ },
919
+ [
920
+ () => (_().inclFee || "incl. {fee} fee").replace("{fee}", e.get(E)),
921
+ () => (_().includingFee || "including {fee} service fee").replace("{fee}", e.get(E))
922
+ ]
923
+ ), e.append(l, g);
924
+ }, Ue = (l) => {
925
+ var g = dr(), y = e.child(g, !0);
926
+ e.reset(g), e.template_effect(() => e.set_text(y, _().free || "Free")), e.append(l, g);
927
+ }, We = (l) => {
928
+ var g = cr(), y = e.first_child(g), oe = e.child(y, !0);
929
+ e.reset(y);
930
+ var re = e.sibling(y, 2), ae = e.child(re, !0);
931
+ e.reset(re);
932
+ var q = e.sibling(re, 2), H = e.child(q, !0);
933
+ e.reset(q), e.template_effect(
934
+ (ie, Ae) => {
935
+ e.set_attribute(y, "aria-label", `Price ${e.get(B) ?? ""}`), e.set_text(oe, e.get(B)), e.set_text(ae, ie), e.set_text(H, Ae);
936
+ },
937
+ [
938
+ () => (_().inclFee || "incl. {fee} fee").replace("{fee}", e.get(E)),
939
+ () => (_().includingFee || "including {fee} service fee").replace("{fee}", e.get(E))
940
+ ]
941
+ ), e.append(l, g);
942
+ };
943
+ e.if(Ke, (l) => {
944
+ e.get(ne) ? l(Re) : e.get(p) !== null ? l(rt, 1) : e.get(ve) === 0 ? l(Ue, 2) : l(We, -1);
945
+ });
946
+ }
947
+ e.reset(Ne);
948
+ var Xe = e.sibling(Ne, 2);
949
+ {
950
+ var it = (l) => {
951
+ var g = pr(), y = e.child(g);
952
+ {
953
+ var oe = (q) => {
954
+ var H = vr(), ie = e.child(H, !0);
955
+ e.reset(H), e.template_effect(() => e.set_text(ie, _().discountApplied || "Discount applied")), e.append(q, H);
956
+ };
957
+ e.if(y, (q) => {
958
+ j() && q(oe);
959
+ });
960
+ }
961
+ var re = e.sibling(y, 2);
962
+ {
963
+ var ae = (q) => {
964
+ var H = ur(), ie = e.child(H, !0);
965
+ e.reset(H), e.template_effect(() => e.set_text(ie, _().unlocked || "Unlocked")), e.append(q, H);
966
+ };
967
+ e.if(re, (q) => {
968
+ Y() && q(ae);
969
+ });
970
+ }
971
+ e.reset(g), e.append(l, g);
972
+ };
973
+ e.if(Xe, (l) => {
974
+ (j() || Y()) && l(it);
975
+ });
976
+ }
977
+ var st = e.sibling(Xe, 2);
978
+ {
979
+ var nt = (l) => {
980
+ var g = fr(), y = e.child(g, !0);
981
+ e.reset(g), e.template_effect(
982
+ (oe) => {
983
+ e.set_attribute(g, "id", `ticket-desc-${oe ?? ""}`), e.set_text(y, t.description);
984
+ },
985
+ [
986
+ () => t.title?.replace(/\s+/g, "-").toLowerCase() || "ticket"
987
+ ]
988
+ ), e.append(l, g);
989
+ };
990
+ e.if(st, (l) => {
991
+ t.description && l(nt);
992
+ });
993
+ }
994
+ var f = e.sibling(st, 2), w = e.child(f);
995
+ {
996
+ var C = (l) => {
997
+ var g = gr(), y = e.child(g, !0);
998
+ e.reset(g), e.template_effect(() => {
999
+ e.set_class(g, 1, `badge ${e.get(he).badgeClass ?? ""}`, "svelte-12zmutv"), e.set_attribute(g, "aria-label", `${(_().statusLabel || "Status:") ?? ""} ${e.get(he).badge ?? ""}`), e.set_text(y, e.get(he).badge);
1000
+ }), e.append(l, g);
1001
+ };
1002
+ e.if(w, (l) => {
1003
+ e.get(he) && e.get(he).badge && l(C);
1004
+ });
1005
+ }
1006
+ var M = e.sibling(w, 2);
1007
+ {
1008
+ var le = (l) => {
1009
+ {
1010
+ let g = e.derived(() => z() ?? 0);
1011
+ va(l, {
1012
+ get remaining() {
1013
+ return e.get(g);
1014
+ },
1015
+ get total() {
1016
+ return e.get(G);
1017
+ },
1018
+ context: "ticket",
1019
+ get labels() {
1020
+ return _();
1021
+ }
1022
+ });
1023
+ }
1024
+ };
1025
+ e.if(M, (l) => {
1026
+ e.get(Q) && l(le);
1027
+ });
1028
+ }
1029
+ e.reset(f);
1030
+ var ke = e.sibling(f, 2);
1031
+ {
1032
+ var Se = (l) => {
1033
+ const g = e.derived(() => Te(r()));
1034
+ var y = _r(), oe = e.child(y);
1035
+ e.reset(y), e.template_effect(() => e.set_text(oe, `${(_().salesEndPrefix || "Sales end") ?? ""}
1036
+ ${e.get(g).text ?? ""}`)), e.append(l, y);
1037
+ };
1038
+ e.if(ke, (l) => {
1039
+ r() && s() !== "sales_ended" && s() !== "scheduled" && l(Se);
1040
+ });
1041
+ }
1042
+ e.reset(qe), e.reset(pe), e.template_effect(
1043
+ (l, g, y) => {
1044
+ be = e.set_class(pe, 1, `ticket-block rounded-lg border transition-all ${T() > 0 ? "shadow-sm" : ""}`, "svelte-12zmutv", be, {
1045
+ selected: T() > 0,
1046
+ "disabled-ticket": m() || s() === "scheduled" || s() === "sales_ended"
1047
+ }), e.set_attribute(pe, "aria-label", `${l ?? ""}${(m() ? _().ticketSoldOutSuffix || ", sold out" : "") ?? ""}${(s() === "scheduled" ? _().ticketSalesNotStartedSuffix || ", sales not yet started" : "") ?? ""}${(s() === "sales_ended" ? _().ticketSalesEndedSuffix || ", sales ended" : "") ?? ""}`), e.set_attribute(De, "id", `ticket-title-${g ?? ""}`), e.set_text(Le, t.title), e.set_attribute(Ne, "id", `ticket-price-${y ?? ""}`);
1048
+ },
1049
+ [
1050
+ () => (_().ticketAriaLabel || "{title} ticket").replace("{title}", t.title),
1051
+ () => t.title?.replace(/\s+/g, "-").toLowerCase() || "ticket",
1052
+ () => t.title?.replace(/\s+/g, "-").toLowerCase() || "ticket"
1053
+ ]
1054
+ ), e.append(de, pe), e.pop();
1055
+ }
1056
+ var br = e.from_html('<div class="rounded-lg overflow-hidden animate-pulse bg-surface-primary border-default" role="status" aria-busy="true"><span class="sr-only svelte-1hpsukj">Loading ticket...</span> <div class="px-3 py-2.5 rounded-t-lg border-t border-l border-r border-border" aria-hidden="true"><div class="skeleton h-4 w-2/3 mb-2"></div> <div class="skeleton h-3 w-1/2"></div></div> <div class="flex items-center gap-2" aria-hidden="true"><div class="border w-6 rounded-full h-6 -ml-3 -mt-0.5 bg-card border-border"></div> <hr class="skeleton-divider w-full my-3 svelte-1hpsukj"/> <div class="border w-6 rounded-full h-6 -mr-3 -mt-0.5 bg-card border-border"></div></div> <div class="flex justify-between items-center px-3 py-2.5 rounded-b-lg -mt-0.5 border-b border-l border-r border-border" aria-hidden="true"><div class="space-y-1"><div class="h-4 rounded w-16 bg-bg-tertiary"></div> <div class="h-3 rounded w-20 bg-muted"></div></div> <div class="flex items-center gap-2"><div class="w-10 h-10 rounded-md bg-bg-tertiary"></div> <div class="w-10 h-10 rounded-md bg-muted"></div> <div class="w-10 h-10 rounded-md bg-bg-tertiary"></div></div></div></div>');
1057
+ function xr(de, t) {
1058
+ e.push(t, !0);
1059
+ let R = e.prop(t, "labels", 19, () => ({}));
1060
+ var T = br();
1061
+ e.template_effect(() => e.set_attribute(T, "aria-label", R().loadingTicketInfo || "Loading ticket information")), e.append(de, T), e.pop();
1062
+ }
1063
+ var yr = e.from_html('<div class="empty-state flex flex-col items-center justify-center py-12 px-6 text-center" role="status"><div class="empty-state-icon tone-muted mb-4" aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z"></path><path d="M13 5v2"></path><path d="M13 17v2"></path><path d="M13 11v2"></path></svg></div> <h3> </h3> <p class="type-body tone-secondary max-w-72"> </p></div>'), kr = e.from_html('<div class="section-header bg-bg-secondary px-5 py-3"><h2 class="type-subheading tone-primary"> </h2></div>'), wr = e.from_html('<div role="group"><!> <div role="list"><!></div></div>'), Tr = e.from_html("<section></section>");
1064
+ function Ir(de, t) {
1065
+ e.push(t, !0);
1066
+ let R = e.prop(t, "venueFeesReady", 3, !1), T = e.prop(t, "tickets", 19, () => []), m = e.prop(t, "quantities", 19, () => ({})), s = e.prop(t, "donationAmounts", 19, () => ({})), D = e.prop(t, "revealHiddenTickets", 3, !1), r = e.prop(t, "revealTicketIds", 19, () => []), z = e.prop(
1067
+ t,
1068
+ "currentPromoRule",
1069
+ 3,
1070
+ null
1071
+ // Current applied promo code rule
1072
+ ), te = e.prop(
1073
+ t,
1074
+ "syncing",
1075
+ 3,
1076
+ !1
1077
+ // True while a cart-sync network call is in flight
1078
+ ), J = e.prop(t, "labels", 19, () => ({}));
1079
+ function me(I) {
1080
+ const B = /* @__PURE__ */ new Date(), E = I.salesBegin || I.salesStart || I.saleBegin || I.saleStart || I.onSaleStart, O = I.salesEnd || I.saleEnd || I.onSaleEnd;
1081
+ return E && new Date(E) > B ? "scheduled" : O && new Date(O) < B ? "sales_ended" : "on_sale";
1082
+ }
1083
+ function Y(I) {
1084
+ return I.salesBegin || I.salesStart || I.saleBegin || I.saleStart || I.onSaleStart || null;
1085
+ }
1086
+ const j = e.derived(() => T().filter((I) => I.visibility === 0 || D() ? !0 : r()?.includes(I.ID)));
1087
+ function we(I) {
1088
+ const B = [], E = [];
1089
+ for (const O of I) {
1090
+ const b = me(O), p = O.minQuantity ?? 1, G = O.remainingCapacity, h = O.soldOut || G != null && p > G;
1091
+ b === "on_sale" && !h ? B.push(O) : E.push(O);
1092
+ }
1093
+ return [...B, ...E];
1094
+ }
1095
+ function fe(I) {
1096
+ const B = {};
1097
+ for (const E of I) {
1098
+ const O = E.TicketSection?.name || J().other || "Other";
1099
+ B[O] || (B[O] = []), B[O].push(E);
1100
+ }
1101
+ for (const E of Object.keys(B))
1102
+ B[E] = we(B[E]);
1103
+ return B;
1104
+ }
1105
+ const Ce = e.derived(() => fe(e.get(j))), _ = e.derived(() => J().other || "Other"), ne = e.derived(() => Object.keys(e.get(Ce)).filter((I) => I !== e.get(_)).length > 0);
1106
+ var L = e.comment(), ce = e.first_child(L);
1107
+ {
1108
+ var k = (I) => {
1109
+ var B = yr(), E = e.sibling(e.child(B), 2), O = e.child(E, !0);
1110
+ e.reset(E);
1111
+ var b = e.sibling(E, 2), p = e.child(b, !0);
1112
+ e.reset(b), e.reset(B), e.template_effect(() => {
1113
+ e.set_attribute(B, "aria-label", J().noTicketsAvailable || "No tickets available"), e.set_class(E, 1, `mb-2 ${xe.h3}`), e.set_text(O, J().noTicketsAvailable || "No tickets available"), e.set_text(p, J().noTicketsAvailableDescription || "There are currently no tickets available for this event.");
1114
+ }), e.append(I, B);
1115
+ }, ve = (I) => {
1116
+ var B = Tr();
1117
+ e.each(B, 21, () => Object.entries(e.get(Ce)), ([E, O]) => E, (E, O) => {
1118
+ var b = e.derived(() => e.to_array(e.get(O), 2));
1119
+ let p = () => e.get(b)[0], G = () => e.get(b)[1];
1120
+ var h = wr(), Q = e.child(h);
1121
+ {
1122
+ var K = (pe) => {
1123
+ var be = kr(), ye = e.child(be), je = e.child(ye, !0);
1124
+ e.reset(ye), e.reset(be), e.template_effect(
1125
+ (F) => {
1126
+ e.set_attribute(ye, "id", `section-${F ?? ""}`), e.set_text(je, p());
1127
+ },
1128
+ [() => p().replace(/\s+/g, "-").toLowerCase()]
1129
+ ), e.append(pe, be);
1130
+ };
1131
+ e.if(Q, (pe) => {
1132
+ e.get(ne) && p() !== e.get(_) && pe(K);
1133
+ });
1134
+ }
1135
+ var X = e.sibling(Q, 2), ue = e.child(X);
1136
+ {
1137
+ var Te = (pe) => {
1138
+ var be = e.comment(), ye = e.first_child(be);
1139
+ e.each(ye, 17, G, (je) => je.ID, (je, F) => {
1140
+ const De = e.derived(() => e.get(F).visibility >= 2 && D() || r().includes(e.get(F).ID)), Le = e.derived(() => z()?.discountTicketIds || []), Me = e.derived(() => e.get(Le).length === 0 || e.get(Le).includes(e.get(F).ID)), Ye = e.derived(() => z()?.provideDiscount && e.get(Me) && (z()?.discountType === "%" || z()?.discountType === "$")), Qe = e.derived(() => (() => {
1141
+ if (!e.get(Ye)) return null;
1142
+ const Ue = parseFloat(e.get(F).price) || 0, We = parseFloat(z()?.amount || "0") || 0;
1143
+ return z().discountType === "%" ? (Ue * (1 - We / 100)).toFixed(2) : z().discountType === "$" ? Math.max(0, Ue - We).toFixed(2) : null;
1144
+ })()), at = e.derived(() => me(e.get(F))), qe = e.derived(() => Y(e.get(F))), Ne = e.derived(() => e.get(F).minQuantity ?? 1), Ke = e.derived(() => e.get(F).remainingCapacity), Re = e.derived(() => e.get(F).soldOut || e.get(Ke) !== null && e.get(Ke) !== void 0 && e.get(Ne) > e.get(Ke)), rt = e.derived(() => e.get(F).type ?? 0);
1145
+ e.derived(() => e.get(rt) === 2);
1146
+ {
1147
+ let Ue = e.derived(() => m()[e.get(F).ID] ?? 0), We = e.derived(() => e.get(F).totalCapacity ?? e.get(F).quantity ?? e.get(F).remainingCapacity), Xe = e.derived(() => e.get(F).minQuantity ?? 1), it = e.derived(() => e.get(F).maxQuantity ?? null), st = e.derived(() => s()[e.get(F).ID] ?? "");
1148
+ hr(je, {
1149
+ get labels() {
1150
+ return J();
1151
+ },
1152
+ get title() {
1153
+ return e.get(F).name;
1154
+ },
1155
+ get description() {
1156
+ return e.get(F).description;
1157
+ },
1158
+ get price() {
1159
+ return e.get(F).price;
1160
+ },
1161
+ get discountedPrice() {
1162
+ return e.get(Qe);
1163
+ },
1164
+ get quantity() {
1165
+ return e.get(Ue);
1166
+ },
1167
+ get soldOut() {
1168
+ return e.get(Re);
1169
+ },
1170
+ get status() {
1171
+ return e.get(at);
1172
+ },
1173
+ get salesBegin() {
1174
+ return e.get(qe);
1175
+ },
1176
+ get salesEnd() {
1177
+ return e.get(F).salesEnd;
1178
+ },
1179
+ get remainingCapacity() {
1180
+ return e.get(F).remainingCapacity;
1181
+ },
1182
+ get totalCapacity() {
1183
+ return e.get(We);
1184
+ },
1185
+ get minQuantity() {
1186
+ return e.get(Xe);
1187
+ },
1188
+ get maxQuantity() {
1189
+ return e.get(it);
1190
+ },
1191
+ get isRevealed() {
1192
+ return e.get(De);
1193
+ },
1194
+ get isDiscounted() {
1195
+ return e.get(Ye);
1196
+ },
1197
+ get ticketType() {
1198
+ return e.get(rt);
1199
+ },
1200
+ get donationAmount() {
1201
+ return e.get(st);
1202
+ },
1203
+ onincrement: () => t.handleQuantityChange(e.get(F).ID, 1),
1204
+ ondecrement: () => t.handleQuantityChange(e.get(F).ID, -1),
1205
+ ondonationchange: (nt) => t.handleDonationChange?.(e.get(F).ID, nt),
1206
+ get syncing() {
1207
+ return te();
1208
+ }
1209
+ });
1210
+ }
1211
+ }), e.append(pe, be);
1212
+ }, he = (pe) => {
1213
+ var be = e.comment(), ye = e.first_child(be);
1214
+ e.each(ye, 16, () => Array(2), e.index, (je, F) => {
1215
+ xr(je, {});
1216
+ }), e.append(pe, be);
1217
+ };
1218
+ e.if(ue, (pe) => {
1219
+ R() ? pe(Te) : pe(he, -1);
1220
+ });
1221
+ }
1222
+ e.reset(X), e.reset(h), e.template_effect(
1223
+ (pe, be) => {
1224
+ e.set_class(h, 1, e.clsx(e.get(ne) && p() !== e.get(_) ? "ticket-section-group border border-border rounded-lg overflow-hidden" : "")), e.set_attribute(h, "aria-labelledby", pe), e.set_class(X, 1, `space-y-4 ${e.get(ne) && p() !== e.get(_) ? "p-4" : ""}`), e.set_attribute(X, "aria-label", be);
1225
+ },
1226
+ [
1227
+ () => e.get(ne) && p() !== e.get(_) ? `section-${p().replace(/\s+/g, "-").toLowerCase()}` : void 0,
1228
+ () => (J().ticketsInSection || "Tickets in {section}").replace("{section}", p())
1229
+ ]
1230
+ ), e.append(E, h);
1231
+ }), e.reset(B), e.template_effect(() => e.set_attribute(B, "aria-label", J().availableTickets || "Available tickets")), e.append(I, B);
1232
+ };
1233
+ e.if(ce, (I) => {
1234
+ R() && e.get(j).length === 0 ? I(k) : I(ve, -1);
1235
+ });
1236
+ }
1237
+ e.append(de, L), e.pop();
1238
+ }
1239
+ const Cr = aa("PromocodeInput");
1240
+ var Yt = e.from_html('<div class="self-start mt-5"><!></div>'), Dr = e.from_html('<p id="promo-hint" class="promo-message success mt-2 body-sm text-accent-success" role="status" aria-live="polite"> </p>'), Sr = e.from_html('<p id="promo-error" class="sr-only svelte-ztoygy" role="alert"> </p>'), Ar = e.from_html('<div class="promo-section p-4 md:p-5" role="group" aria-labelledby="promo-label"><span id="promo-label" class="sr-only svelte-ztoygy"> </span> <div class="promo-input-wrapper flex gap-2 items-start"><div class="flex-1"><!></div> <!></div> <!> <!></div>');
1241
+ function Pr(de, t) {
1242
+ e.push(t, !0);
1243
+ let R = e.prop(t, "eventID", 3, ""), T = e.prop(t, "labels", 19, () => ({})), m = e.state(""), s = e.state(!1), D = e.state(""), r = e.state(""), z = e.state(!1), te = e.state(!1);
1244
+ const J = async () => {
1245
+ const b = e.get(m).trim().toUpperCase();
1246
+ if (e.set(D, ""), e.set(r, ""), e.set(z, !1), !b) {
1247
+ e.set(D, T().pleaseEnterPromoCode || "Please enter a promo code.", !0), e.set(s, !0);
1248
+ return;
1249
+ }
1250
+ e.set(te, !0);
1251
+ try {
1252
+ const p = await ha(R(), b);
1253
+ if (p.valid) {
1254
+ e.set(z, !0);
1255
+ let G = 0;
1256
+ const h = [];
1257
+ if (p.revealHiddenTickets && h.push(T().hiddenTicketsVisible || "Hidden tickets are now visible."), p.provideDiscount) {
1258
+ const K = parseFloat(String(p.amount || "0")), X = Number.isFinite(K) ? K : 0;
1259
+ G = X, p.discountType === "fixed" ? h.push((T().dollarDiscountAvailable || "A {amount} discount is available.").replace("{amount}", ee(Dt(X)))) : p.discountType === "percentage" && h.push((T().percentDiscountAvailable || "A {amount}% discount is available.").replace("{amount}", String(X)));
1260
+ }
1261
+ e.set(
1262
+ r,
1263
+ h.length > 0 ? `${(T().promoApplied || "{code} applied.").replace("{code}", b)} ${h.join(" ")}` : (T().promoApplied || "{code} applied.").replace("{code}", b),
1264
+ !0
1265
+ );
1266
+ const Q = { expires: 1, secure: !0, sameSite: "none", path: "/" };
1267
+ gt(`checkout-promocode-${R()}`, b, Q), gt(`checkout-promo-discount-${R()}`, G.toString(), Q), gt(`checkout-promo-reveal-${R()}`, p.revealHiddenTickets ? "1" : "0", Q), gt(`checkout-promo-reveal-ids-${R()}`, JSON.stringify(p.revealTicketIds || []), Q), gt(`checkout-promo-discount-type-${R()}`, p.discountType || "", Q), t.onpromoChange?.({
1268
+ code: b,
1269
+ error: "",
1270
+ hint: e.get(r),
1271
+ discount: G,
1272
+ provideDiscount: p.provideDiscount || !1,
1273
+ discountType: p.discountType || "",
1274
+ discountTicketIds: (
1275
+ /** @type {any} */
1276
+ p.discountTicketIds || []
1277
+ ),
1278
+ // Which tickets the discount applies to
1279
+ revealHiddenTickets: p.revealHiddenTickets || !1,
1280
+ revealTicketIds: p.revealTicketIds || [],
1281
+ isApplied: !0
1282
+ });
1283
+ } else
1284
+ e.set(D, T().invalidOrExpiredPromoCode || "Invalid or expired promo code.", !0), e.set(s, !0), t.onpromoChange?.({
1285
+ code: b,
1286
+ error: e.get(D),
1287
+ hint: "",
1288
+ discount: 0,
1289
+ provideDiscount: !1,
1290
+ discountType: "",
1291
+ discountTicketIds: [],
1292
+ revealHiddenTickets: !1,
1293
+ revealTicketIds: [],
1294
+ isApplied: !1
1295
+ });
1296
+ } catch (p) {
1297
+ Cr.error("Error validating promo code:", p), e.set(D, T().unableToValidatePromoCode || "Unable to validate promo code. Please try again.", !0), e.set(s, !0);
1298
+ } finally {
1299
+ e.set(te, !1);
1300
+ }
1301
+ }, me = () => {
1302
+ e.set(m, ""), e.set(D, ""), e.set(r, ""), e.set(z, !1), e.set(s, !1), tt(`checkout-promocode-${R()}`), tt(`checkout-promo-discount-${R()}`), tt(`checkout-promo-reveal-${R()}`), tt(`checkout-promo-reveal-ids-${R()}`), tt(`checkout-promo-discount-type-${R()}`), t.onpromoChange?.({
1303
+ code: "",
1304
+ error: "",
1305
+ hint: "",
1306
+ discount: 0,
1307
+ provideDiscount: !1,
1308
+ discountType: "",
1309
+ discountTicketIds: [],
1310
+ revealHiddenTickets: !1,
1311
+ revealTicketIds: [],
1312
+ isApplied: !1
1313
+ });
1314
+ }, Y = (b) => {
1315
+ e.set(m, b.target.value, !0), e.get(D) && e.set(D, "");
1316
+ }, j = (b) => {
1317
+ b.key === "Enter" && (b.preventDefault(), J());
1318
+ };
1319
+ ea(() => {
1320
+ const b = $e(`checkout-promocode-${R()}`);
1321
+ b && (e.set(m, b, !0), J());
1322
+ });
1323
+ var we = Ar(), fe = e.child(we), Ce = e.child(fe, !0);
1324
+ e.reset(fe);
1325
+ var _ = e.sibling(fe, 2), ne = e.child(_), L = e.child(ne);
1326
+ {
1327
+ let b = e.derived(() => T().promoCode || "Promo code"), p = e.derived(() => e.get(z) || e.get(te)), G = e.derived(() => e.get(s) ? e.get(D) : ""), h = e.derived(() => e.get(r) ? "promo-hint" : e.get(D) ? "promo-error" : void 0);
1328
+ ta(L, {
1329
+ get label() {
1330
+ return e.get(b);
1331
+ },
1332
+ size: "lg",
1333
+ type: "text",
1334
+ oninputchange: Y,
1335
+ onkeydown: j,
1336
+ onblur: () => e.set(s, !0),
1337
+ get disabled() {
1338
+ return e.get(p);
1339
+ },
1340
+ get errorText() {
1341
+ return e.get(G);
1342
+ },
1343
+ get "aria-describedby"() {
1344
+ return e.get(h);
1345
+ },
1346
+ get value() {
1347
+ return e.get(m);
1348
+ },
1349
+ set value(Q) {
1350
+ e.set(m, Q, !0);
1351
+ }
1352
+ });
1353
+ }
1354
+ e.reset(ne);
1355
+ var ce = e.sibling(ne, 2);
1356
+ {
1357
+ var k = (b) => {
1358
+ var p = Yt(), G = e.child(p);
1359
+ {
1360
+ let h = e.derived(() => T().removePromoCode || "Remove promo code"), Q = e.derived(() => e.get(m));
1361
+ Je(G, {
1362
+ variant: "outline",
1363
+ onclick: me,
1364
+ class: "h-10",
1365
+ get "aria-label"() {
1366
+ return `${e.get(h) ?? ""} ${e.get(Q) ?? ""}`;
1367
+ },
1368
+ children: (K, X) => {
1369
+ e.next();
1370
+ var ue = e.text();
1371
+ e.template_effect(() => e.set_text(ue, T().remove || "Remove")), e.append(K, ue);
1372
+ },
1373
+ $$slots: { default: !0 }
1374
+ });
1375
+ }
1376
+ e.reset(p), e.append(b, p);
1377
+ }, ve = (b) => {
1378
+ var p = Yt(), G = e.child(p);
1379
+ {
1380
+ let h = e.derived(() => e.get(te) ? T().checkingPromoCode || "Checking promo code" : T().applyPromoCode || "Apply promo code");
1381
+ Je(G, {
1382
+ onclick: J,
1383
+ get disabled() {
1384
+ return e.get(te);
1385
+ },
1386
+ class: "h-10",
1387
+ get "aria-label"() {
1388
+ return e.get(h);
1389
+ },
1390
+ children: (Q, K) => {
1391
+ e.next();
1392
+ var X = e.text();
1393
+ e.template_effect(() => e.set_text(X, e.get(te) ? T().checking || "Checking..." : T().apply || "Apply")), e.append(Q, X);
1394
+ },
1395
+ $$slots: { default: !0 }
1396
+ });
1397
+ }
1398
+ e.reset(p), e.append(b, p);
1399
+ };
1400
+ e.if(ce, (b) => {
1401
+ e.get(z) ? b(k) : b(ve, -1);
1402
+ });
1403
+ }
1404
+ e.reset(_);
1405
+ var I = e.sibling(_, 2);
1406
+ {
1407
+ var B = (b) => {
1408
+ var p = Dr(), G = e.child(p, !0);
1409
+ e.reset(p), e.template_effect(() => e.set_text(G, e.get(r))), e.append(b, p);
1410
+ };
1411
+ e.if(I, (b) => {
1412
+ e.get(r) && b(B);
1413
+ });
1414
+ }
1415
+ var E = e.sibling(I, 2);
1416
+ {
1417
+ var O = (b) => {
1418
+ var p = Sr(), G = e.child(p, !0);
1419
+ e.reset(p), e.template_effect(() => e.set_text(G, e.get(D))), e.append(b, p);
1420
+ };
1421
+ e.if(E, (b) => {
1422
+ e.get(D) && e.get(s) && b(O);
1423
+ });
1424
+ }
1425
+ e.reset(we), e.template_effect(() => e.set_text(Ce, T().promoCodeEntry || "Promo code entry")), e.append(de, we), e.pop();
1426
+ }
1427
+ var Er = e.from_html('<div class="flex justify-between items-center pb-4 border-b border-border" aria-hidden="true"><div><div class="h-4 rounded w-24 mb-2 bg-bg-tertiary"></div> <div class="h-3 rounded w-16 bg-bg-tertiary"></div></div> <div class="h-4 rounded w-12 bg-bg-tertiary"></div></div>'), Or = e.from_html('<div class="hidden md:block h-fit rounded-lg p-5 space-y-5 animate-pulse bg-card border border-border" role="status" aria-busy="true"><span class="sr-only svelte-19v1kvb">Loading order summary...</span> <div class="h-6 rounded w-2/3 bg-bg-tertiary" aria-hidden="true"></div> <!> <div class="space-y-3 pt-4" aria-hidden="true"><div class="flex justify-between"><div class="h-4 rounded w-20 bg-bg-tertiary"></div> <div class="h-4 rounded w-12 bg-bg-tertiary"></div></div> <div class="flex justify-between"><div class="h-4 rounded w-16 bg-bg-tertiary"></div> <div class="h-4 rounded w-12 bg-bg-tertiary"></div></div> <div class="flex justify-between"><div class="h-4 rounded w-12 bg-bg-tertiary"></div> <div class="h-4 rounded w-12 bg-bg-tertiary"></div></div></div> <div class="h-10 rounded mt-5 bg-muted" aria-hidden="true"></div></div>');
1428
+ function Fr(de, t) {
1429
+ e.push(t, !0);
1430
+ let R = e.prop(t, "labels", 19, () => ({}));
1431
+ var T = Or(), m = e.sibling(e.child(T), 4);
1432
+ e.each(m, 16, () => Array(2), e.index, (s, D) => {
1433
+ var r = Er();
1434
+ e.append(s, r);
1435
+ }), e.next(4), e.reset(T), e.template_effect(() => e.set_attribute(T, "aria-label", R().loadingOrderSummary || "Loading order summary")), e.append(de, T), e.pop();
1436
+ }
1437
+ var jr = e.from_html('<div class="w-14 h-14 shrink-0 rounded-md overflow-hidden bg-bg-secondary" aria-hidden="true"><!></div>'), Lr = e.from_html("<p> </p>"), Br = e.from_html('<div class="flex-row-2 shrink-0"><span class="price-md"> </span> <button type="button" class="sc-btn-icon btn-icon-ghost w-7 h-7"><!></button></div>'), Mr = e.from_html('<header class="flex items-center gap-3 px-4 md:px-5 py-4 border-b border-border"><button type="button" class="p-2 -ml-2 rounded-full transition-colors shrink-0 tone-secondary hover:bg-bg-secondary"><!></button> <!> <div class="flex-1 min-w-0"><h1 class="heading-lg break-words"> </h1> <div class="body-sm tone-secondary"><p><time> </time></p> <p> </p> <!></div></div> <!></header>');
1438
+ function zr(de, t) {
1439
+ e.push(t, !0);
1440
+ let R = e.prop(t, "variant", 3, "tickets"), T = e.prop(t, "total", 3, 0), m = e.prop(t, "onCancel", 3, () => {
1441
+ }), s = e.prop(t, "onInfoClick", 3, () => {
1442
+ }), D = e.prop(t, "labels", 19, () => ({})), r = e.derived(() => t.event.timeZone || t.event.timezone || ba()), z = e.derived(() => t.event.displayEndTime === !0), te = e.derived(() => t.event.displayDoorsTime === !0), J = e.derived(() => R() === "checkout"), me = e.derived(() => T() > 0 ? `${ee(Dt(Number.isFinite(T()) ? T() : 0))}` : D().free || "Free");
1443
+ var Y = Mr(), j = e.child(Y), we = e.child(j);
1444
+ xa(we, { size: "20" }), e.reset(j);
1445
+ var fe = e.sibling(j, 2);
1446
+ {
1447
+ var Ce = (h) => {
1448
+ var Q = jr(), K = e.child(Q);
1449
+ Ba(K, {
1450
+ get src() {
1451
+ return t.event.image;
1452
+ },
1453
+ alt: "",
1454
+ class: "w-full h-full"
1455
+ }), e.reset(Q), e.append(h, Q);
1456
+ };
1457
+ e.if(fe, (h) => {
1458
+ t.event.image && h(Ce);
1459
+ });
1460
+ }
1461
+ var _ = e.sibling(fe, 2), ne = e.child(_), L = e.child(ne, !0);
1462
+ e.reset(ne);
1463
+ var ce = e.sibling(ne, 2), k = e.child(ce), ve = e.child(k), I = e.child(ve, !0);
1464
+ e.reset(ve), e.reset(k);
1465
+ var B = e.sibling(k, 2), E = e.child(B, !0);
1466
+ e.reset(B);
1467
+ var O = e.sibling(B, 2);
1468
+ {
1469
+ var b = (h) => {
1470
+ var Q = Lr(), K = e.child(Q, !0);
1471
+ e.reset(Q), e.template_effect((X) => e.set_text(K, X), [
1472
+ () => (D().doorsOpen || "Doors open {time}").replace("{time}", Ta(t.event.doorsOpenTime, e.get(r)))
1473
+ ]), e.append(h, Q);
1474
+ };
1475
+ e.if(O, (h) => {
1476
+ e.get(te) && t.event.doorsOpenTime && h(b);
1477
+ });
1478
+ }
1479
+ e.reset(ce), e.reset(_);
1480
+ var p = e.sibling(_, 2);
1481
+ {
1482
+ var G = (h) => {
1483
+ var Q = Br(), K = e.child(Q), X = e.child(K, !0);
1484
+ e.reset(K);
1485
+ var ue = e.sibling(K, 2), Te = e.child(ue);
1486
+ Ra(Te, { size: "20" }), e.reset(ue), e.reset(Q), e.template_effect(
1487
+ (he) => {
1488
+ e.set_attribute(K, "aria-label", he), e.set_text(X, e.get(me)), e.set_attribute(ue, "aria-label", D().viewOrderDetails || "View order details");
1489
+ },
1490
+ [
1491
+ () => (D().ariaOrderTotal || "Order total: {total}").replace("{total}", e.get(me))
1492
+ ]
1493
+ ), e.delegated("click", ue, function(...he) {
1494
+ s()?.apply(this, he);
1495
+ }), e.append(h, Q);
1496
+ };
1497
+ e.if(p, (h) => {
1498
+ e.get(J) && h(G);
1499
+ });
1500
+ }
1501
+ e.reset(Y), e.template_effect(
1502
+ (h, Q) => {
1503
+ e.set_attribute(j, "aria-label", e.get(J) ? D().goBackToTicketSelection || "Go back to ticket selection" : D().goBackToEventDetails || "Go back to event details"), e.set_text(L, t.event.name), e.set_attribute(ce, "aria-label", D().ariaEventDateTime || "Event date and time"), e.set_attribute(ve, "datetime", t.event.startDateTime), e.set_text(I, h), e.set_text(E, Q);
1504
+ },
1505
+ [
1506
+ () => ya(t.event.startDateTime, e.get(r)),
1507
+ () => e.get(z) && t.event.endDateTime ? ka(t.event.startDateTime, t.event.endDateTime, e.get(r)) : wa(t.event.startDateTime, e.get(r))
1508
+ ]
1509
+ ), e.delegated("click", j, function(...h) {
1510
+ m()?.apply(this, h);
1511
+ }), e.append(de, Y), e.pop();
1512
+ }
1513
+ e.delegate(["click"]);
1514
+ const Ve = aa("CartView");
1515
+ var Qr = e.from_html('<div class="flex items-center justify-center py-12" aria-live="polite"><p class="tone-secondary"> </p></div>'), qr = e.from_html('<div class="text-center py-8" role="alert"><p class="text-accent-danger mb-2"> </p> <button class="go-back-btn text-white mt-4 px-4 py-2 rounded-lg svelte-19g9ni4"> </button></div>'), Nr = e.from_html('<div class="text-center py-12" role="alert"><p> </p> <p class="tone-secondary mb-6"> </p> <button class="go-back-btn text-white px-4 py-2 rounded-lg svelte-19g9ni4"> </button></div>'), Rr = e.from_html('<div class="text-center py-12" role="alert"><p>This event has ended</p> <p class="tone-secondary mb-6">Tickets are no longer available for this event.</p> <button class="go-back-btn px-4 py-2 rounded-lg svelte-19g9ni4" aria-label="Go back to event details">Go back</button></div>'), Kt = e.from_html('<div class="px-4 md:px-5 pt-3"><!></div>'), Gr = e.from_html('<div class="hidden md:block w-80 h-[calc(100vh-40px)]"></div>'), Hr = e.from_html('<div class="w-full flex md:gap-5 flex-wrap"><div class="flex-1 pb-16 md:pb-0"><div class="bg-card border-border rounded-lg md:shadow md:border py-3"><!> <!> <!> <div class="space-y-4 md:px-5"><!></div></div></div> <!> <div><!></div></div>'), Vr = e.from_html('<h3 id="error-modal-title" class="heading-lg"><!></h3>'), Xt = e.from_html('<p class="body-sm"> </p> <p class="tone-secondary mt-2"> </p>', 1), Ur = e.from_html('<div id="error-modal-description"><!></div>'), Wr = e.from_html("<!> <!>", 1), Zr = e.from_html('<div role="group" aria-label="Error modal actions"><!></div>'), Jr = e.from_html('<h3 id="expired-modal-title" class="heading-lg"> </h3>'), Yr = e.from_html('<p id="expired-modal-description" class="body-sm tone-secondary"> </p>'), Kr = e.from_html('<h3 id="availability-modal-title" class="heading-lg"> </h3>'), Xr = e.from_html('<li class="tone-secondary type-body"><span class="type-label"> </span> <!></li>'), $t = e.from_html('<p class="tone-secondary mt-4"> </p>'), $r = e.from_html('<div id="availability-modal-description"><p class="tone-secondary mb-4"> </p> <ul class="space-y-2"></ul> <!></div>'), ei = e.from_html('<div role="group" aria-label="Availability modal actions"><!> <!></div>'), ti = e.from_html('<div class="px-5 md:px-10 py-12 bg-card"><!></div> <!> <!> <!>', 1);
1516
+ function ui(de, t) {
1517
+ e.push(t, !0);
1518
+ let R = e.prop(t, "organizationId", 3, ""), T = e.prop(t, "venueId", 3, ""), m = e.prop(t, "initialEventData", 3, null), s = e.prop(t, "labels", 19, () => ({})), D = e.state(!1), r = e.state(null), z = e.state(null), te = e.state(e.proxy([])), J = e.state(!1), me = e.state(!0), Y = e.state(null), j = e.state(!1), we = e.state(!1), fe = e.state(!1), Ce = e.state(0), _ = e.state(void 0), ne = e.state(void 0), L = e.state(e.proxy({})), ce = e.state(""), k = e.state(""), ve = e.state(0), I = e.state(""), B = e.state(!1), E = e.state(0), O = e.state(!1), b = null, p = null, G = null;
1519
+ const h = jt(), Q = jt();
1520
+ let K = e.state(
1521
+ "cart_failed"
1522
+ // 'cart_failed' | 'cart_success_network_error'
1523
+ ), X = e.state(!1);
1524
+ const ue = jt();
1525
+ let Te = e.state(e.proxy(
1526
+ []
1527
+ // Array of {ticketId, ticketName, requestedQty, availableQty}
1528
+ )), he = e.state(0), pe = e.state(0), be = e.derived(() => e.get(r)?.availableTickets?.filter(
1529
+ /** @param {any} t */
1530
+ (o) => o.visibility === 0
1531
+ )?.every(
1532
+ /** @param {any} t */
1533
+ (o) => o.price === 0
1534
+ )), ye = e.derived(() => e.get(be) ? 0 : et(Object.entries(e.get(L)).reduce(
1535
+ (o, [i, u]) => {
1536
+ const n = e.get(r)?.availableTickets?.find((a) => a.id == i);
1537
+ return n ? o + et(u * n.price) : o;
1538
+ },
1539
+ 0
1540
+ ))), je = 0, F = e.state(0), De = e.state(0), Le = e.state(!1), Me = null;
1541
+ e.derived(() => et(e.get(ye) + je + e.get(F)));
1542
+ let Ye = e.derived(() => ja(e.get(ye), e.get(ve), e.get(I))), Qe = e.state(!1), at = !1, qe = e.state(!1);
1543
+ async function Ne(o, i) {
1544
+ if (e.get(qe) || e.get(Qe))
1545
+ return;
1546
+ const u = {
1547
+ ...e.get(L),
1548
+ [o]: Math.max(0, (e.get(L)[o] ?? 0) + i)
1549
+ }, n = Object.values(u).reduce((a, c) => a + c, 0);
1550
+ if (e.set(L, u, !0), e.get(r) && qt({
1551
+ eventID: e.get(r).eventID,
1552
+ quantities: e.get(L),
1553
+ promocode: e.get(ce),
1554
+ promoDiscountAmount: e.get(ve),
1555
+ tickets: e.get(r).availableTickets
1556
+ }), n > 0 && !e.get(O))
1557
+ await Ke();
1558
+ else if (e.get(O)) {
1559
+ const a = typeof document < "u" ? $e("checkout-cartid") ?? null : null;
1560
+ if (!a) return;
1561
+ e.set(qe, !0);
1562
+ try {
1563
+ await Oa(a, e.get(L)) || Ve.warn("Cart quantity sync failed; UI may not match server");
1564
+ } finally {
1565
+ e.set(qe, !1);
1566
+ }
1567
+ }
1568
+ }
1569
+ async function Ke() {
1570
+ if (!(e.get(Qe) || e.get(O))) {
1571
+ e.set(Qe, !0);
1572
+ try {
1573
+ const o = await Nt({
1574
+ eventID: e.get(r).eventID,
1575
+ quantities: e.get(L),
1576
+ promoCode: e.get(ce) || void 0,
1577
+ // Attribution (MISSION-TRUTH C2) rides additively on cart-create.
1578
+ attribution: Rt()
1579
+ });
1580
+ o?.success && o.uuid && (at = !0, y(), Gt(e.get(r).eventID, null, e.get(r).venueID || e.get(r).venueId || null));
1581
+ } catch (o) {
1582
+ Ve.error("Error creating cart on ticket select:", o);
1583
+ } finally {
1584
+ e.set(Qe, !1);
1585
+ }
1586
+ }
1587
+ }
1588
+ function Re() {
1589
+ if (!e.get(r)?.availableTickets) return;
1590
+ const i = e.get(r).availableTickets.filter((u) => u.visibility === 0).map((u) => {
1591
+ const n = Number(u.price);
1592
+ return Number.isFinite(n) ? n : 0;
1593
+ });
1594
+ if (i.length === 0) {
1595
+ e.set(he, e.set(pe, 0), !0);
1596
+ return;
1597
+ }
1598
+ e.set(he, ee(Dt(Math.min(...i))), !0), e.set(pe, ee(Dt(Math.max(...i))), !0);
1599
+ }
1600
+ async function rt() {
1601
+ const o = [];
1602
+ for (const [i, u] of Object.entries(e.get(L))) {
1603
+ if (u <= 0) continue;
1604
+ const n = e.get(r)?.availableTickets?.find((a) => a.ID == i);
1605
+ !n || n.price === 0 || o.push({
1606
+ amountCents: Math.round(n.price * 100) * u,
1607
+ reference: `ticket-${i}`,
1608
+ quantity: u
1609
+ });
1610
+ }
1611
+ if (o.length === 0) {
1612
+ e.set(De, 0), e.set(F, 0), e.set(Le, !1);
1613
+ return;
1614
+ }
1615
+ Me && Me.abort(), Me = new AbortController(), e.set(Le, !0);
1616
+ try {
1617
+ const i = await fetch("https://get-micdrop.com/api/v2/public/tax-preview", {
1618
+ method: "POST",
1619
+ headers: { "Content-Type": "application/json" },
1620
+ signal: Me.signal,
1621
+ body: JSON.stringify({ venueId: Number(e.get(r).venueID), lineItems: o })
1622
+ });
1623
+ if (!i.ok) {
1624
+ i.status === 422 ? Ve.debug("Tax preview: venue has no tax address, falling back to 0") : Ve.error("Tax preview failed:", i.status), e.set(De, 0), e.set(F, 0), e.set(Le, !1);
1625
+ return;
1626
+ }
1627
+ const u = await i.json();
1628
+ e.set(De, (u.taxTotal ?? 0) / 100), e.set(F, e.get(De), !0);
1629
+ } catch (i) {
1630
+ if (i.name === "AbortError") return;
1631
+ Ve.error("Tax preview error:", i), e.set(De, 0), e.set(F, 0);
1632
+ } finally {
1633
+ Me?.signal?.aborted || e.set(Le, !1);
1634
+ }
1635
+ }
1636
+ function Ue() {
1637
+ if (!e.get(r)) return;
1638
+ e.set(ce, $e(`checkout-promocode-${e.get(r).eventID}`) || "", !0);
1639
+ const o = parseFloat($e(`checkout-promo-discount-${e.get(r).eventID}`) || "0");
1640
+ e.set(k, e.get(ce) ? `${e.get(ce)} applied.` : "", !0), e.set(ve, o, !0), e.set(I, $e(`checkout-promo-discount-type-${e.get(r).eventID}`) || "", !0);
1641
+ }
1642
+ async function We() {
1643
+ try {
1644
+ const o = await Fa(t.eventId), i = [];
1645
+ for (const [u, n] of Object.entries(e.get(L))) {
1646
+ if (n <= 0) continue;
1647
+ const a = (
1648
+ /** @type {any} */
1649
+ o.find((S) => String(S.id) === String(u))
1650
+ );
1651
+ if (!a) continue;
1652
+ const c = a.remainingCapacity ?? a.quantity ?? 1 / 0;
1653
+ if (c < n) {
1654
+ const S = e.get(r)?.availableTickets?.find((N) => String(N.id) === String(u));
1655
+ i.push({
1656
+ ticketId: u,
1657
+ ticketName: S?.name || a?.name || "Ticket",
1658
+ requestedQty: n,
1659
+ availableQty: Math.max(0, c)
1660
+ });
1661
+ }
1662
+ }
1663
+ return i;
1664
+ } catch (o) {
1665
+ return Ve.error("Error checking ticket availability:", o), [];
1666
+ }
1667
+ }
1668
+ async function Xe() {
1669
+ if (!e.get(r)) return;
1670
+ e.set(J, !0), e.set(X, !1);
1671
+ const o = await We();
1672
+ if (o.length > 0) {
1673
+ e.set(J, !1), e.set(Te, o, !0), ue.open();
1674
+ return;
1675
+ }
1676
+ await it();
1677
+ }
1678
+ async function it() {
1679
+ if (e.set(J, !0), qt({
1680
+ eventID: e.get(r).eventID,
1681
+ quantities: e.get(L),
1682
+ promocode: e.get(ce),
1683
+ promoDiscountAmount: e.get(ve),
1684
+ tickets: e.get(r).availableTickets
1685
+ }), typeof document < "u" ? $e("checkout-cartid") ?? null : null)
1686
+ e.set(X, !0);
1687
+ else
1688
+ try {
1689
+ const i = await Nt({
1690
+ eventID: e.get(r).eventID,
1691
+ quantities: e.get(L),
1692
+ promoCode: e.get(ce) || void 0,
1693
+ // Attribution (MISSION-TRUTH C2) rides additively on cart-create.
1694
+ attribution: Rt()
1695
+ });
1696
+ if (!i) {
1697
+ e.set(J, !1), e.set(K, "cart_failed"), Q.open();
1698
+ return;
1699
+ }
1700
+ e.set(X, !0), i.success && Gt(e.get(r).eventID, null, e.get(r).venueID || e.get(r).venueId || null);
1701
+ } catch (i) {
1702
+ Ve.error("Order initiation failed:", i), e.set(J, !1), e.set(K, "cart_failed"), Q.open();
1703
+ return;
1704
+ }
1705
+ try {
1706
+ if (t.onNavigateToCheckout) {
1707
+ t.onNavigateToCheckout(t.eventId, e.get(r)), e.set(J, !1);
1708
+ return;
1709
+ }
1710
+ const i = new URLSearchParams();
1711
+ R() && i.set("orgId", R()), T() && i.set("venueId", T()), i.set("event_id", t.eventId), i.set("subroute", "checkout");
1712
+ const u = `/?${i.toString()}`;
1713
+ Lt(u, { noScroll: !1 }), e.set(J, !1);
1714
+ } catch (i) {
1715
+ Ve.error("Navigation failed after cart creation:", i), e.set(J, !1), e.set(K, "cart_success_network_error"), Q.open();
1716
+ }
1717
+ }
1718
+ function st() {
1719
+ for (const i of e.get(Te))
1720
+ i.availableQty > 0 ? e.get(L)[i.ticketId] = i.availableQty : delete e.get(L)[i.ticketId];
1721
+ e.set(L, { ...e.get(
1722
+ L
1723
+ // Trigger reactivity
1724
+ ) }, !0), ue.close(), e.set(Te, [], !0), Object.values(e.get(L)).reduce((i, u) => i + u, 0) > 0 ? it() : Se();
1725
+ }
1726
+ function nt() {
1727
+ ue.close(), e.set(Te, [], !0), Se();
1728
+ }
1729
+ function f() {
1730
+ Q.close(), e.get(K) === "cart_failed" && Se();
1731
+ }
1732
+ function w() {
1733
+ Q.close(), window.location.reload();
1734
+ }
1735
+ function C() {
1736
+ e.set(we, window.innerWidth < 767);
1737
+ }
1738
+ let M = !1;
1739
+ function le() {
1740
+ M || (window.requestAnimationFrame(() => {
1741
+ ke(), M = !1;
1742
+ }), M = !0);
1743
+ }
1744
+ function ke() {
1745
+ if (e.get(we) || !e.get(ne) || !e.get(_)) {
1746
+ e.set(fe, !1);
1747
+ return;
1748
+ }
1749
+ const o = e.get(ne).getBoundingClientRect();
1750
+ if (e.set(fe, o.top <= 20), e.get(fe)) {
1751
+ const i = e.get(_).getBoundingClientRect();
1752
+ e.set(Ce, i.left + i.width - 340 - 40);
1753
+ }
1754
+ }
1755
+ function Se() {
1756
+ if (e.get(r) && Ca(e.get(r).eventID), t.onNavigateBack)
1757
+ t.onNavigateBack();
1758
+ else {
1759
+ const o = new URLSearchParams(window.location.search);
1760
+ o.set("subroute", "details");
1761
+ const i = `/?${o.toString()}`;
1762
+ Lt(i, {});
1763
+ }
1764
+ }
1765
+ let l = null;
1766
+ async function g() {
1767
+ l && localStorage.removeItem(`checkout-expiry-${l}`), tt("checkout-cartid"), l = null, e.set(O, !1), e.set(E, 0), h.open();
1768
+ }
1769
+ async function y() {
1770
+ if (e.get(O)) return;
1771
+ if (b && clearInterval(b), p && clearInterval(p), e.set(O, !0), l = typeof document < "u" ? $e("checkout-cartid") ?? null : null, e.set(E, 900), l) {
1772
+ const i = localStorage.getItem(
1773
+ // @storage-escape: cart checkout-expiry persistence (intentional raw localStorage)
1774
+ `checkout-expiry-${l}`
1775
+ );
1776
+ if (i) {
1777
+ const u = Math.max(0, Math.floor((parseInt(i, 10) - Date.now()) / 1e3));
1778
+ if (u > 0)
1779
+ e.set(E, u, !0);
1780
+ else {
1781
+ await g();
1782
+ return;
1783
+ }
1784
+ } else if (at)
1785
+ e.set(E, 900), localStorage.setItem(
1786
+ // @storage-escape: cart checkout-expiry persistence (intentional raw localStorage)
1787
+ `checkout-expiry-${l}`,
1788
+ String(Date.now() + 900 * 1e3)
1789
+ );
1790
+ else {
1791
+ await g();
1792
+ return;
1793
+ }
1794
+ }
1795
+ const o = () => {
1796
+ if (!l) return;
1797
+ const i = parseInt(
1798
+ localStorage.getItem(`checkout-expiry-${l}`) || "0",
1799
+ // @storage-escape: cart checkout-expiry persistence (intentional raw localStorage)
1800
+ 10
1801
+ );
1802
+ i && e.set(E, Math.max(0, Math.floor((i - Date.now()) / 1e3)), !0);
1803
+ };
1804
+ b = setInterval(
1805
+ () => {
1806
+ o(), e.get(E) <= 0 && (clearInterval(b), e.set(O, !1), h.open(), l && localStorage.removeItem(`checkout-expiry-${l}`));
1807
+ },
1808
+ 1e3
1809
+ ), G = () => {
1810
+ typeof document < "u" && document.visibilityState === "visible" && o();
1811
+ }, typeof document < "u" && document.addEventListener("visibilitychange", G), typeof window < "u" && window.addEventListener("pageshow", G), p = setInterval(
1812
+ async () => {
1813
+ if (!e.get(O) || !l) {
1814
+ clearInterval(p);
1815
+ return;
1816
+ }
1817
+ try {
1818
+ const i = await Ea(l);
1819
+ if (i.notFound) {
1820
+ clearInterval(p);
1821
+ const u = l;
1822
+ e.set(O, !1), h.open(), localStorage.removeItem(`checkout-expiry-${u}`), tt("checkout-cartid"), l = null;
1823
+ return;
1824
+ }
1825
+ if (!i.error && i.expiresAt) {
1826
+ const u = Math.max(0, Math.floor(
1827
+ (new Date(i.expiresAt).getTime() - Date.now()) / 1e3
1828
+ // @datetime-escape: cart-hold countdown — buyer's own wall clock, tz-independent
1829
+ ));
1830
+ e.set(E, u, !0), localStorage.setItem(
1831
+ // @storage-escape: cart checkout-expiry persistence (intentional raw localStorage)
1832
+ `checkout-expiry-${l}`,
1833
+ String(new Date(i.expiresAt).getTime())
1834
+ // @datetime-escape: persist hold-expiry epoch (ms) — wall-clock timer
1835
+ );
1836
+ }
1837
+ } catch {
1838
+ }
1839
+ },
1840
+ 6e4
1841
+ );
1842
+ }
1843
+ async function oe(o) {
1844
+ const i = o?.detail ?? o, { code: u, discount: n, discountType: a } = i;
1845
+ if (e.set(ce, u || "", !0), e.set(ve, n || 0, !0), e.set(I, a || "", !0), e.set(k, u ? `${u} applied.` : "", !0), i.revealHiddenTickets !== void 0 && e.get(r) && (gt(`checkout-promo-reveal-${e.get(r).eventID}`, i.revealHiddenTickets ? "1" : "0", { path: "/" }), i.revealTicketIds?.length && gt(`checkout-promo-reveal-ids-${e.get(r).eventID}`, JSON.stringify(i.revealTicketIds), { path: "/" }), u && i.revealHiddenTickets)) {
1846
+ const c = ++H, S = await Qt(t.eventId);
1847
+ S.ok && c === H && S.data.length > 0 && e.get(r) && e.set(r, { ...e.get(r), availableTickets: S.data }, !0);
1848
+ }
1849
+ }
1850
+ let re = e.derived(() => e.get(r) ? $e(`checkout-promo-reveal-${e.get(r).eventID}`) === "1" : !1), ae = e.derived(() => {
1851
+ if (!e.get(r)) return [];
1852
+ try {
1853
+ const o = $e(`checkout-promo-reveal-ids-${e.get(r).eventID}`);
1854
+ return o ? JSON.parse(o) : [];
1855
+ } catch {
1856
+ return [];
1857
+ }
1858
+ }), q = e.derived(() => {
1859
+ if (!e.get(r)) return !1;
1860
+ const o = e.get(r).endDateTime || e.get(r).startDateTime;
1861
+ return o ? new Date(o) < /* @__PURE__ */ new Date() : !1;
1862
+ }), H = 0;
1863
+ async function ie() {
1864
+ if (!e.get(j))
1865
+ return;
1866
+ const o = ++H;
1867
+ if (!t.eventId) {
1868
+ e.set(Y, s().noEventIdProvided || "No event ID provided", !0), e.set(me, !1);
1869
+ return;
1870
+ }
1871
+ e.set(me, !0), e.set(Y, null);
1872
+ try {
1873
+ if (m()) {
1874
+ if (e.set(z, m()), !e.get(j)) return;
1875
+ e.set(r, zt(e.get(z)), !0), e.set(te, e.get(r).availableTickets || [], !0);
1876
+ } else {
1877
+ try {
1878
+ const a = await Da(t.eventId);
1879
+ if (!e.get(j) || o !== H) return;
1880
+ e.set(z, a, !0), e.set(r, zt(e.get(z)), !0);
1881
+ } catch (a) {
1882
+ if (Ve.error("Event fetch failed:", a), !e.get(j) || o !== H) return;
1883
+ e.set(Y, s().failedToLoadEvent || "Failed to load event", !0), e.set(me, !1);
1884
+ return;
1885
+ }
1886
+ const n = await Qt(t.eventId);
1887
+ if (!e.get(j) || o !== H) return;
1888
+ if (n.ok)
1889
+ e.set(te, n.data, !0), e.get(r).availableTickets = e.get(te);
1890
+ else if (Ve.error("Ticket loader returned a failure Result"), e.set(te, e.get(r).availableTickets || [], !0), e.get(te).length === 0) {
1891
+ e.set(Y, s().failedToLoadTickets || s().failedToLoadEvent || "Failed to load tickets", !0), e.set(me, !1);
1892
+ return;
1893
+ }
1894
+ }
1895
+ e.get(r).availableTickets && e.get(r).availableTickets.forEach((n) => e.get(L)[n.ID] = 0);
1896
+ const i = Sa(e.get(r).eventID);
1897
+ if (e.set(L, ar(i.quantities || {}, e.get(r).availableTickets), !0), e.set(ce, i.promocode || "", !0), e.set(ve, i.promoDiscountAmount || 0, !0), e.get(r).eventID && (await Aa(e.get(r).eventID), !e.get(j)))
1898
+ return;
1899
+ e.set(D, !0), Re(), Object.values(e.get(L)).reduce((n, a) => n + a, 0) > 0 && y(), Ue(), await Pa(String(e.get(r).eventID));
1900
+ } catch (i) {
1901
+ e.get(j) && (Ve.error("Error loading event:", i), e.set(Y, i.message || s().failedToLoadEvent || "Failed to load event", !0));
1902
+ } finally {
1903
+ e.get(j) && e.set(me, !1);
1904
+ }
1905
+ }
1906
+ ea(async () => {
1907
+ e.set(j, !0), C(), window.addEventListener("resize", C), window.addEventListener("scroll", le), await ie(), Ia(t.eventId).then((o) => {
1908
+ e.set(B, o, !0);
1909
+ }).catch(() => {
1910
+ e.set(B, !0);
1911
+ });
1912
+ }), la(() => {
1913
+ e.set(j, !1), window.removeEventListener("resize", C), window.removeEventListener("scroll", le), b && clearInterval(b), p && clearInterval(p), G && (typeof document < "u" && document.removeEventListener("visibilitychange", G), typeof window < "u" && window.removeEventListener("pageshow", G), G = null), Me && Me.abort();
1914
+ });
1915
+ let Ae = null;
1916
+ e.user_effect(() => {
1917
+ e.get(j) && t.eventId && t.eventId !== Ae && (Ae = t.eventId, ie());
1918
+ }), e.user_effect(() => {
1919
+ const o = Object.values(e.get(L)).reduce((i, u) => i + u, 0);
1920
+ e.get(D) && e.get(r) && o > 0 ? rt() : o === 0 && (e.set(De, 0), e.set(F, 0), e.set(Le, !1));
1921
+ });
1922
+ var Pe = ti(), Ee = e.first_child(Pe), Ge = e.child(Ee);
1923
+ {
1924
+ var Ze = (o) => {
1925
+ var i = Qr(), u = e.child(i), n = e.child(u, !0);
1926
+ e.reset(u), e.reset(i), e.template_effect(() => e.set_text(n, s().loadingEvent || "Loading event...")), e.append(o, i);
1927
+ }, ht = (o) => {
1928
+ var i = qr(), u = e.child(i), n = e.child(u);
1929
+ e.reset(u);
1930
+ var a = e.sibling(u, 2), c = e.child(a, !0);
1931
+ e.reset(a), e.reset(i), e.template_effect(() => {
1932
+ e.set_text(n, `${(s().errorPrefix || "Error:") ?? ""}
1933
+ ${e.get(Y) ?? ""}`), e.set_attribute(a, "aria-label", s().goBackToEventDetails || "Go back to event details"), e.set_text(c, s().goBack || "Go back");
1934
+ }), e.delegated("click", a, Se), e.append(o, i);
1935
+ }, lt = (o) => {
1936
+ var i = Nr(), u = e.child(i), n = e.child(u, !0);
1937
+ e.reset(u);
1938
+ var a = e.sibling(u, 2), c = e.child(a, !0);
1939
+ e.reset(a);
1940
+ var S = e.sibling(a, 2), N = e.child(S, !0);
1941
+ e.reset(S), e.reset(i), e.template_effect(() => {
1942
+ e.set_class(u, 1, `mb-2 ${xe.h2}`, "svelte-19g9ni4"), e.set_text(n, s().thisEventHasEnded || "This event has ended"), e.set_text(c, s().ticketsNoLongerAvailable || "Tickets are no longer available for this event."), e.set_attribute(S, "aria-label", s().goBackToEventDetails || "Go back to event details"), e.set_text(N, s().goBack || "Go back");
1943
+ }), e.delegated("click", S, Se), e.append(o, i);
1944
+ }, ct = (o) => {
1945
+ var i = Rr(), u = e.child(i), n = e.sibling(u, 4);
1946
+ e.reset(i), e.template_effect(() => e.set_class(u, 1, `mb-2 ${xe.h2}`, "svelte-19g9ni4")), e.delegated("click", n, Se), e.append(o, i);
1947
+ }, bt = (o) => {
1948
+ var i = Hr(), u = e.child(i), n = e.child(u), a = e.child(n);
1949
+ zr(a, {
1950
+ get event() {
1951
+ return e.get(r);
1952
+ },
1953
+ onCancel: Se,
1954
+ get labels() {
1955
+ return s();
1956
+ }
1957
+ });
1958
+ var c = e.sibling(a, 2);
1959
+ {
1960
+ var S = (W) => {
1961
+ var Z = Kt(), _e = e.child(Z);
1962
+ {
1963
+ let ze = e.derived(() => e.get(E) <= 300);
1964
+ La(_e, {
1965
+ get seconds() {
1966
+ return e.get(E);
1967
+ },
1968
+ get isUrgent() {
1969
+ return e.get(ze);
1970
+ },
1971
+ get labels() {
1972
+ return s();
1973
+ }
1974
+ });
1975
+ }
1976
+ e.reset(Z), e.append(W, Z);
1977
+ };
1978
+ e.if(c, (W) => {
1979
+ e.get(O) && e.get(E) > 0 && W(S);
1980
+ });
1981
+ }
1982
+ var N = e.sibling(c, 2);
1983
+ {
1984
+ var A = (W) => {
1985
+ var Z = Kt(), _e = e.child(Z);
1986
+ Pr(_e, {
1987
+ get eventID() {
1988
+ return t.eventId;
1989
+ },
1990
+ onpromoChange: oe,
1991
+ get labels() {
1992
+ return s();
1993
+ }
1994
+ }), e.reset(Z), e.append(W, Z);
1995
+ };
1996
+ e.if(N, (W) => {
1997
+ e.get(B) && W(A);
1998
+ });
1999
+ }
2000
+ var P = e.sibling(N, 2), se = e.child(P);
2001
+ {
2002
+ let W = e.derived(() => e.get(qe) || e.get(Qe));
2003
+ Ir(se, {
2004
+ get tickets() {
2005
+ return e.get(r).availableTickets;
2006
+ },
2007
+ get quantities() {
2008
+ return e.get(L);
2009
+ },
2010
+ handleQuantityChange: Ne,
2011
+ handleDonationChange: () => {
2012
+ },
2013
+ get revealHiddenTickets() {
2014
+ return e.get(re);
2015
+ },
2016
+ get revealTicketIds() {
2017
+ return e.get(ae);
2018
+ },
2019
+ get venueFeesReady() {
2020
+ return e.get(D);
2021
+ },
2022
+ get syncing() {
2023
+ return e.get(W);
2024
+ },
2025
+ get labels() {
2026
+ return s();
2027
+ }
2028
+ });
2029
+ }
2030
+ e.reset(P), e.reset(n), e.reset(u);
2031
+ var x = e.sibling(u, 2);
2032
+ {
2033
+ var d = (W) => {
2034
+ var Z = Gr();
2035
+ e.append(W, Z);
2036
+ };
2037
+ e.if(x, (W) => {
2038
+ e.get(fe) && !e.get(we) && W(d);
2039
+ });
2040
+ }
2041
+ var v = e.sibling(x, 2);
2042
+ let V, U;
2043
+ var $ = e.child(v);
2044
+ {
2045
+ var ge = (W) => {
2046
+ Fr(W, {});
2047
+ }, He = (W) => {
2048
+ {
2049
+ let Z = e.derived(() => s().checkout || "Checkout"), _e = e.derived(() => !!e.get(k));
2050
+ tr(W, {
2051
+ get btnText() {
2052
+ return e.get(Z);
2053
+ },
2054
+ get loading() {
2055
+ return e.get(J);
2056
+ },
2057
+ checkoutTicket: Xe,
2058
+ get quantities() {
2059
+ return e.get(L);
2060
+ },
2061
+ get eventTickets() {
2062
+ return e.get(r).availableTickets;
2063
+ },
2064
+ get promoApplied() {
2065
+ return e.get(_e);
2066
+ },
2067
+ get promoDiscount() {
2068
+ return e.get(Ye);
2069
+ },
2070
+ get taxAmount() {
2071
+ return e.get(De);
2072
+ },
2073
+ get taxLoading() {
2074
+ return e.get(Le);
2075
+ },
2076
+ onPriceUpdate: () => {
2077
+ }
2078
+ });
2079
+ }
2080
+ };
2081
+ e.if($, (W) => {
2082
+ e.get(D) ? e.get(r) && e.get(r).availableTickets?.length && W(He, 1) : W(ge);
2083
+ });
2084
+ }
2085
+ e.reset(v), e.reset(i), e.bind_this(i, (W) => e.set(ne, W), () => e.get(ne)), e.template_effect(() => {
2086
+ V = e.set_class(v, 1, "w-full md:w-80 flex flex-col transition-all will-change-[left] svelte-19g9ni4", null, V, { "is-sticky": e.get(fe) }), U = e.set_style(v, "", U, { left: e.get(fe) ? `${e.get(Ce)}px` : "auto" });
2087
+ }), e.append(o, i);
2088
+ };
2089
+ e.if(Ge, (o) => {
2090
+ e.get(me) ? o(Ze) : e.get(Y) ? o(ht, 1) : e.get(r) && e.get(q) ? o(lt, 2) : e.get(r) && e.get(q) ? o(ct, 3) : e.get(r) && o(bt, 4);
2091
+ });
2092
+ }
2093
+ e.reset(Ee), e.bind_this(Ee, (o) => e.set(_, o), () => e.get(_));
2094
+ var vt = e.sibling(Ee, 2);
2095
+ Ft(vt, {
2096
+ get open() {
2097
+ return Q.isOpen;
2098
+ },
2099
+ size: "sm",
2100
+ oncancel: f,
2101
+ "aria-labelledby": "error-modal-title",
2102
+ header: (n) => {
2103
+ var a = Vr(), c = e.child(a);
2104
+ {
2105
+ var S = (A) => {
2106
+ var P = e.text();
2107
+ e.template_effect(() => e.set_text(P, s().unableToReserveTickets || "Unable to Reserve Tickets")), e.append(A, P);
2108
+ }, N = (A) => {
2109
+ var P = e.text();
2110
+ e.template_effect(() => e.set_text(P, s().connectionIssue || "Connection Issue")), e.append(A, P);
2111
+ };
2112
+ e.if(c, (A) => {
2113
+ e.get(K) === "cart_failed" ? A(S) : A(N, -1);
2114
+ });
2115
+ }
2116
+ e.reset(a), e.append(n, a);
2117
+ },
2118
+ body: (n) => {
2119
+ var a = Ur(), c = e.child(a);
2120
+ {
2121
+ var S = (A) => {
2122
+ var P = Xt(), se = e.first_child(P), x = e.child(se, !0);
2123
+ e.reset(se);
2124
+ var d = e.sibling(se, 2), v = e.child(d, !0);
2125
+ e.reset(d), e.template_effect(() => {
2126
+ e.set_text(x, s().cartFailedMessage || "We couldn't reserve your tickets. This may be due to a network issue or the tickets may no longer be available."), e.set_text(v, s().pleaseGoBackAndTryAgain || "Please go back and try again.");
2127
+ }), e.append(A, P);
2128
+ }, N = (A) => {
2129
+ var P = Xt(), se = e.first_child(P), x = e.child(se, !0);
2130
+ e.reset(se);
2131
+ var d = e.sibling(se, 2), v = e.child(d, !0);
2132
+ e.reset(d), e.template_effect(() => {
2133
+ e.set_text(x, s().cartSuccessMessage || "Good news! Your tickets have been reserved and are being held for you."), e.set_text(v, s().cartSuccessNetworkError || "However, we encountered a connection issue. Please refresh the page to continue to checkout.");
2134
+ }), e.append(A, P);
2135
+ };
2136
+ e.if(c, (A) => {
2137
+ e.get(K) === "cart_failed" ? A(S) : A(N, -1);
2138
+ });
2139
+ }
2140
+ e.reset(a), e.append(n, a);
2141
+ },
2142
+ footer: (n) => {
2143
+ var a = Zr(), c = e.child(a);
2144
+ {
2145
+ var S = (A) => {
2146
+ {
2147
+ let P = e.derived(() => s().goBack || "Go back");
2148
+ Je(A, {
2149
+ variant: "default",
2150
+ onclick: f,
2151
+ get "aria-label"() {
2152
+ return e.get(P);
2153
+ },
2154
+ children: (se, x) => {
2155
+ e.next();
2156
+ var d = e.text();
2157
+ e.template_effect(() => e.set_text(d, s().goBack || "Go back")), e.append(se, d);
2158
+ },
2159
+ $$slots: { default: !0 }
2160
+ });
2161
+ }
2162
+ }, N = (A) => {
2163
+ var P = Wr(), se = e.first_child(P);
2164
+ {
2165
+ let d = e.derived(() => s().cancel || "Cancel");
2166
+ Je(se, {
2167
+ variant: "alternative",
2168
+ onclick: f,
2169
+ get "aria-label"() {
2170
+ return e.get(d);
2171
+ },
2172
+ children: (v, V) => {
2173
+ e.next();
2174
+ var U = e.text();
2175
+ e.template_effect(() => e.set_text(U, s().cancel || "Cancel")), e.append(v, U);
2176
+ },
2177
+ $$slots: { default: !0 }
2178
+ });
2179
+ }
2180
+ var x = e.sibling(se, 2);
2181
+ {
2182
+ let d = e.derived(() => s().refreshPage || "Refresh Page");
2183
+ Je(x, {
2184
+ variant: "default",
2185
+ onclick: w,
2186
+ get "aria-label"() {
2187
+ return e.get(d);
2188
+ },
2189
+ children: (v, V) => {
2190
+ e.next();
2191
+ var U = e.text();
2192
+ e.template_effect(() => e.set_text(U, s().refreshPage || "Refresh Page")), e.append(v, U);
2193
+ },
2194
+ $$slots: { default: !0 }
2195
+ });
2196
+ }
2197
+ e.append(A, P);
2198
+ };
2199
+ e.if(c, (A) => {
2200
+ e.get(K) === "cart_failed" ? A(S) : A(N, -1);
2201
+ });
2202
+ }
2203
+ e.reset(a), e.append(n, a);
2204
+ },
2205
+ $$slots: { header: !0, body: !0, footer: !0 }
2206
+ });
2207
+ var _t = e.sibling(vt, 2);
2208
+ Ft(_t, {
2209
+ get open() {
2210
+ return h.isOpen;
2211
+ },
2212
+ size: "sm",
2213
+ persistent: !0,
2214
+ oncancel: () => {
2215
+ h.close(), tt("checkout-cartid"), window.location.reload();
2216
+ },
2217
+ "aria-labelledby": "expired-modal-title",
2218
+ header: (n) => {
2219
+ var a = Jr(), c = e.child(a, !0);
2220
+ e.reset(a), e.template_effect(() => e.set_text(c, s().cartExpiredTitle || "Your cart has expired")), e.append(n, a);
2221
+ },
2222
+ body: (n) => {
2223
+ var a = Yr(), c = e.child(a, !0);
2224
+ e.reset(a), e.template_effect(() => e.set_text(c, s().cartExpiredMessage || "Your cart has expired. Please start your purchase again.")), e.append(n, a);
2225
+ },
2226
+ footer: (n) => {
2227
+ Je(n, {
2228
+ variant: "default",
2229
+ onclick: () => {
2230
+ h.close(), tt("checkout-cartid"), window.location.reload();
2231
+ },
2232
+ children: (a, c) => {
2233
+ e.next();
2234
+ var S = e.text();
2235
+ e.template_effect(() => e.set_text(S, s().startOver || "Start over")), e.append(a, S);
2236
+ },
2237
+ $$slots: { default: !0 }
2238
+ });
2239
+ },
2240
+ $$slots: { header: !0, body: !0, footer: !0 }
2241
+ });
2242
+ var ut = e.sibling(_t, 2);
2243
+ Ft(ut, {
2244
+ get open() {
2245
+ return ue.isOpen;
2246
+ },
2247
+ size: "sm",
2248
+ oncancel: nt,
2249
+ "aria-labelledby": "availability-modal-title",
2250
+ header: (n) => {
2251
+ var a = Kr(), c = e.child(a, !0);
2252
+ e.reset(a), e.template_effect(() => e.set_text(c, s().limitedAvailability || "Limited Availability")), e.append(n, a);
2253
+ },
2254
+ body: (n) => {
2255
+ var a = $r(), c = e.child(a), S = e.child(c, !0);
2256
+ e.reset(c);
2257
+ var N = e.sibling(c, 2);
2258
+ e.each(N, 21, () => e.get(Te), (d) => d.ticketId, (d, v) => {
2259
+ var V = Xr(), U = e.child(V), $ = e.child(U);
2260
+ e.reset(U);
2261
+ var ge = e.sibling(U, 2);
2262
+ {
2263
+ var He = (Z) => {
2264
+ var _e = e.text();
2265
+ e.template_effect((ze) => e.set_text(_e, ze), [
2266
+ () => (s().onlyNAvailable || "Only {available} available (you selected {requested})").replace("{available}", String(e.get(v).availableQty)).replace("{requested}", String(e.get(v).requestedQty))
2267
+ ]), e.append(Z, _e);
2268
+ }, W = (Z) => {
2269
+ var _e = e.text();
2270
+ e.template_effect((ze) => e.set_text(_e, ze), [
2271
+ () => (s().soldOutYouSelected || "Sold out (you selected {requested})").replace("{requested}", String(e.get(v).requestedQty))
2272
+ ]), e.append(Z, _e);
2273
+ };
2274
+ e.if(ge, (Z) => {
2275
+ e.get(v).availableQty > 0 ? Z(He) : Z(W, -1);
2276
+ });
2277
+ }
2278
+ e.reset(V), e.template_effect(() => e.set_text($, `${e.get(v).ticketName ?? ""}:`)), e.append(d, V);
2279
+ }), e.reset(N);
2280
+ var A = e.sibling(N, 2);
2281
+ {
2282
+ var P = (d) => {
2283
+ var v = $t(), V = e.child(v, !0);
2284
+ e.reset(v), e.template_effect(() => e.set_text(V, s().partialAvailabilityContinue || "Would you like to continue with the available tickets?")), e.append(d, v);
2285
+ }, se = e.derived(() => e.get(Te).some((d) => d.availableQty > 0)), x = (d) => {
2286
+ var v = $t(), V = e.child(v, !0);
2287
+ e.reset(v), e.template_effect(() => e.set_text(V, s().allTicketsSoldOut || "Unfortunately, all the tickets you selected have sold out.")), e.append(d, v);
2288
+ };
2289
+ e.if(A, (d) => {
2290
+ e.get(se) ? d(P) : d(x, -1);
2291
+ });
2292
+ }
2293
+ e.reset(a), e.template_effect(() => {
2294
+ e.set_text(S, s().ticketsNoLongerAvailableMessage || "Some tickets you selected are no longer available in the requested quantities:"), e.set_attribute(N, "aria-label", s().ticketAvailabilityChanges || "Ticket availability changes");
2295
+ }), e.append(n, a);
2296
+ },
2297
+ footer: (n) => {
2298
+ var a = ei(), c = e.child(a);
2299
+ {
2300
+ let P = e.derived(() => s().goBack || "Go back");
2301
+ Je(c, {
2302
+ variant: "alternative",
2303
+ onclick: nt,
2304
+ get "aria-label"() {
2305
+ return e.get(P);
2306
+ },
2307
+ children: (se, x) => {
2308
+ e.next();
2309
+ var d = e.text();
2310
+ e.template_effect(() => e.set_text(d, s().goBack || "Go back")), e.append(se, d);
2311
+ },
2312
+ $$slots: { default: !0 }
2313
+ });
2314
+ }
2315
+ var S = e.sibling(c, 2);
2316
+ {
2317
+ var N = (P) => {
2318
+ {
2319
+ let se = e.derived(() => s().continueWithAvailable || "Continue with available");
2320
+ Je(P, {
2321
+ variant: "default",
2322
+ onclick: st,
2323
+ get "aria-label"() {
2324
+ return e.get(se);
2325
+ },
2326
+ children: (x, d) => {
2327
+ e.next();
2328
+ var v = e.text();
2329
+ e.template_effect(() => e.set_text(v, s().continueWithAvailable || "Continue with available")), e.append(x, v);
2330
+ },
2331
+ $$slots: { default: !0 }
2332
+ });
2333
+ }
2334
+ }, A = e.derived(() => e.get(Te).some((P) => P.availableQty > 0));
2335
+ e.if(S, (P) => {
2336
+ e.get(A) && P(N);
2337
+ });
2338
+ }
2339
+ e.reset(a), e.append(n, a);
2340
+ },
2341
+ $$slots: { header: !0, body: !0, footer: !0 }
2342
+ }), e.append(de, Pe), e.pop();
2343
+ }
2344
+ e.delegate(["click"]);
2345
+ export {
2346
+ ui as default
2347
+ };
2348
+ //# sourceMappingURL=CartView-CIfnfmZj.js.map