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