@getmicdrop/venue-calendar 4.0.125 → 4.0.126

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