@getmicdrop/venue-calendar 4.0.74 → 4.0.76

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 (58) hide show
  1. package/dist/{CarouselView.legacy-bFMNvOxH.js → CarouselView.legacy-B3aCsd4e.js} +3 -3
  2. package/dist/{CarouselView.legacy-bFMNvOxH.js.map → CarouselView.legacy-B3aCsd4e.js.map} +1 -1
  3. package/dist/{CartView-XCE6_waU.js → CartView-Ccpo56hG.js} +3 -3
  4. package/dist/{CartView-XCE6_waU.js.map → CartView-Ccpo56hG.js.map} +1 -1
  5. package/dist/{Checkout-B2e9_d8f.js → Checkout-B2ViMY7v.js} +4 -4
  6. package/dist/{Checkout-B2e9_d8f.js.map → Checkout-B2ViMY7v.js.map} +1 -1
  7. package/dist/Checkout-BsptqQJa.js +1525 -0
  8. package/dist/Checkout-BsptqQJa.js.map +1 -0
  9. package/dist/{Checkout.legacy-CcgODm4S.js → Checkout.legacy-DHDAR3ie.js} +5 -5
  10. package/dist/{Checkout.legacy-CcgODm4S.js.map → Checkout.legacy-DHDAR3ie.js.map} +1 -1
  11. package/dist/{CheckoutTimer-WPqcb7g2.js → CheckoutTimer-fH7Df4ak.js} +2 -2
  12. package/dist/{CheckoutTimer-WPqcb7g2.js.map → CheckoutTimer-fH7Df4ak.js.map} +1 -1
  13. package/dist/{CollectionView-Lnrub2IU.js → CollectionView-CzFdlmJe.js} +5 -5
  14. package/dist/{CollectionView-Lnrub2IU.js.map → CollectionView-CzFdlmJe.js.map} +1 -1
  15. package/dist/{CollectionView.legacy-0V5eWRxK.js → CollectionView.legacy-BijxozWY.js} +3 -3
  16. package/dist/{CollectionView.legacy-0V5eWRxK.js.map → CollectionView.legacy-BijxozWY.js.map} +1 -1
  17. package/dist/{Event-X8Y0VRCr.js → Event-zdLuys74.js} +3 -3
  18. package/dist/{Event-X8Y0VRCr.js.map → Event-zdLuys74.js.map} +1 -1
  19. package/dist/{EventPage-CqbhyBj_.js → EventPage-CEtil1et.js} +5 -5
  20. package/dist/{EventPage-CqbhyBj_.js.map → EventPage-CEtil1et.js.map} +1 -1
  21. package/dist/{EventPage.legacy-Bea0fvpo.js → EventPage.legacy-CcOiN97X.js} +4 -4
  22. package/dist/{EventPage.legacy-Bea0fvpo.js.map → EventPage.legacy-CcOiN97X.js.map} +1 -1
  23. package/dist/{FeaturedView.legacy-r4hSn4Os.js → FeaturedView.legacy-De2tMq2P.js} +2 -2
  24. package/dist/{FeaturedView.legacy-r4hSn4Os.js.map → FeaturedView.legacy-De2tMq2P.js.map} +1 -1
  25. package/dist/{GalleryCard-tPuVFSxE.js → GalleryCard-Cf040AP8.js} +2 -2
  26. package/dist/{GalleryCard-tPuVFSxE.js.map → GalleryCard-Cf040AP8.js.map} +1 -1
  27. package/dist/{GalleryView.legacy-DlfpBFmv.js → GalleryView.legacy-De3hQsFC.js} +3 -3
  28. package/dist/{GalleryView.legacy-DlfpBFmv.js.map → GalleryView.legacy-De3hQsFC.js.map} +1 -1
  29. package/dist/{GroupedListView.legacy-NW4puRMl.js → GroupedListView.legacy-BIpkaIJw.js} +2 -2
  30. package/dist/{GroupedListView.legacy-NW4puRMl.js.map → GroupedListView.legacy-BIpkaIJw.js.map} +1 -1
  31. package/dist/{SeriesPage-83I2ewvU.js → SeriesPage-DL3fu6aS.js} +5 -5
  32. package/dist/{SeriesPage-83I2ewvU.js.map → SeriesPage-DL3fu6aS.js.map} +1 -1
  33. package/dist/{SeriesPage.legacy-D0yAAI-2.js → SeriesPage.legacy-PzYOxlxf.js} +2 -2
  34. package/dist/{SeriesPage.legacy-D0yAAI-2.js.map → SeriesPage.legacy-PzYOxlxf.js.map} +1 -1
  35. package/dist/{Success-TqzTll3b.js → Success-CJQJmg7X.js} +6 -6
  36. package/dist/{Success-TqzTll3b.js.map → Success-CJQJmg7X.js.map} +1 -1
  37. package/dist/{Success.legacy-mwlbZG9E.js → Success.legacy-C9BzjsG7.js} +2 -2
  38. package/dist/{Success.legacy-mwlbZG9E.js.map → Success.legacy-C9BzjsG7.js.map} +1 -1
  39. package/dist/{VenueCalendar-CvFtgW5l.js → VenueCalendar-DtQ7dmMM.js} +19 -18
  40. package/dist/{VenueCalendar-CvFtgW5l.js.map → VenueCalendar-DtQ7dmMM.js.map} +1 -1
  41. package/dist/{ViewTicketsEmbed-DT0u_tqQ.js → ViewTicketsEmbed-BWqE4OwX.js} +2 -2
  42. package/dist/{ViewTicketsEmbed-DT0u_tqQ.js.map → ViewTicketsEmbed-BWqE4OwX.js.map} +1 -1
  43. package/dist/{api-uMMBEANH.js → api-BvXIBqbf.js} +2 -2
  44. package/dist/{api-uMMBEANH.js.map → api-BvXIBqbf.js.map} +1 -1
  45. package/dist/{data-toggle-store.svelte-DJugxPYf.js → data-toggle-store.svelte-RS67lynM.js} +2 -2
  46. package/dist/{data-toggle-store.svelte-DJugxPYf.js.map → data-toggle-store.svelte-RS67lynM.js.map} +1 -1
  47. package/dist/{labels-BCnKUEyK.js → labels-CbRy1A6N.js} +2 -2
  48. package/dist/{labels-BCnKUEyK.js.map → labels-CbRy1A6N.js.map} +1 -1
  49. package/dist/{transform-BVccos7m.js → transform-JrV4SwO2.js} +2 -2
  50. package/dist/{transform-BVccos7m.js.map → transform-JrV4SwO2.js.map} +1 -1
  51. package/dist/venue-calendar.es.js +1 -1
  52. package/dist/venue-calendar.iife.js +49 -49
  53. package/dist/venue-calendar.iife.js.map +1 -1
  54. package/dist/venue-calendar.umd.js +54 -54
  55. package/dist/venue-calendar.umd.js.map +1 -1
  56. package/package.json +1 -1
  57. package/dist/Checkout-DmZR38HF.js +0 -1515
  58. package/dist/Checkout-DmZR38HF.js.map +0 -1
@@ -0,0 +1,1525 @@
1
+ import "svelte/internal/disclose-version";
2
+ import { an as je, N as me, ao as tt, a0 as de, ap as Be, W as Ke, E as rt, H as Ge, J as Qe, K as Je, M as Xe, g as Ye, x as Re, U as Z, o as at, e as Ue, aa as He, l as st, B as it, aq as lt, c as nt, ar as ot } from "./VenueCalendar-DtQ7dmMM.js";
3
+ import * as e from "svelte/internal/client";
4
+ import { T as ae } from "./Text-CXR2fhx6.js";
5
+ import "svelte/transition";
6
+ import "svelte/easing";
7
+ import { O as We, m as dt, c as ct } from "./labels-CbRy1A6N.js";
8
+ import { d as be, c as Fe, a as ut, m as gt, b as mt } from "./data-toggle-store.svelte-RS67lynM.js";
9
+ import { onMount as vt, onDestroy as Ze } from "svelte";
10
+ import { H as Me } from "./Heading-AFd3o0xt.js";
11
+ import { C as ft } from "./CheckoutTimer-fH7Df4ak.js";
12
+ const Ve = typeof window < "u";
13
+ function pt(j) {
14
+ if (typeof window > "u") return !1;
15
+ try {
16
+ const t = localStorage.getItem("theme");
17
+ if (t === "dark") return !0;
18
+ if (t === "light") return !1;
19
+ const v = j || '[data-theme="dark"], [data-theme="light"], .micdrop, [data-theme]', $ = document.querySelectorAll(v);
20
+ for (const O of $)
21
+ if (O.getAttribute("data-theme") === "dark") return !0;
22
+ return document.documentElement.getAttribute("data-theme") === "dark" ? !0 : window.matchMedia?.("(prefers-color-scheme: dark)")?.matches ?? !1;
23
+ } catch {
24
+ return !1;
25
+ }
26
+ }
27
+ function _t(j) {
28
+ return j ? "night" : "stripe";
29
+ }
30
+ function ht(j = {}) {
31
+ const {
32
+ containerSelector: t = '[data-theme="dark"], [data-theme="light"], .micdrop, [data-theme]',
33
+ watchChanges: v = !0,
34
+ fallback: $ = "stripe"
35
+ } = j;
36
+ let O = e.state(e.proxy($)), C = null;
37
+ function s() {
38
+ e.set(O, _t(pt(t)), !0);
39
+ }
40
+ return vt(() => {
41
+ if (s(), v && typeof MutationObserver < "u") {
42
+ const H = document.querySelectorAll(t), R = document.documentElement;
43
+ C = new MutationObserver(() => {
44
+ s();
45
+ }), C.observe(R, { attributes: !0, attributeFilter: ["class", "data-theme"] }), H.forEach((I) => {
46
+ C?.observe(I, { attributes: !0, attributeFilter: ["class", "data-theme"] });
47
+ }), window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", s);
48
+ }
49
+ }), Ze(() => {
50
+ C && (C.disconnect(), C = null);
51
+ }), {
52
+ get current() {
53
+ return e.get(O);
54
+ },
55
+ /** Force refresh the theme detection */
56
+ refresh: s
57
+ };
58
+ }
59
+ var xt = e.from_html('<div class="attendee-card border-default bg-surface-secondary svelte-12l1urf"><div class="flex items-center justify-between mb-3"><!> <!></div> <div class="space-y-3"><div class="grid grid-cols-1 sm:grid-cols-2 gap-3"><!> <!></div> <!></div></div>'), bt = e.from_html('<section class="space-y-5"><!> <!></section>'), yt = e.from_html('<div class="free-order-notice border-default bg-surface-secondary svelte-12l1urf"><!> <!></div>'), kt = e.from_html('<p class="text-sm text-color-muted py-2"> </p>'), Pt = e.from_html("<div></div> <!>", 1), wt = e.from_html('<p class="text-sm text-color-muted py-2"> </p>'), Et = e.from_html('<p class="text-sm text-accent-danger mt-2"> </p>'), Tt = e.from_html("<!> <!> <!>", 1), St = e.from_html('<!> <!> <div class="grid grid-cols-2 gap-4"><!> <!></div>', 1), Nt = e.from_html('<div class="flex items-center gap-1.5"><!> <!></div>'), At = e.from_html('<div class="space-y-6"><div class="timer-header border-default bg-surface-secondary svelte-12l1urf"><!> <!></div> <section class="space-y-4"><!> <div class="grid grid-cols-1 sm:grid-cols-2 gap-4"><!> <!></div> <!> <!></section> <!> <section class="space-y-4"><!></section> <section class="space-y-2"><!> <!></section></div>');
60
+ function qt(j, t) {
61
+ e.push(t, !0);
62
+ let v = e.prop(t, "stripe", 3, void 0), $ = e.prop(t, "paymentIntent", 3, void 0), O = e.prop(t, "elements", 15, void 0), C = e.prop(t, "paymentError", 3, ""), s = e.prop(t, "labels", 19, () => ({}));
63
+ const H = Ve ? ht() : { current: "stripe" };
64
+ let R = e.state(null), P = null, I = e.state(null);
65
+ function K() {
66
+ if (!(!Ve || !v() || !$() || !e.get(R))) {
67
+ if (P) {
68
+ try {
69
+ P.destroy();
70
+ } catch {
71
+ }
72
+ P = null;
73
+ }
74
+ O(v().elements({
75
+ clientSecret: $(),
76
+ appearance: { theme: H.current }
77
+ })), P = O().create("payment"), P.mount(e.get(R)), e.set(I, $());
78
+ }
79
+ }
80
+ function ee() {
81
+ if (P) {
82
+ try {
83
+ P.destroy();
84
+ } catch {
85
+ }
86
+ P = null;
87
+ }
88
+ e.set(I, null);
89
+ }
90
+ e.user_effect(() => {
91
+ v() && $() && e.get(R) && $() !== e.get(I) ? K() : (!v() || !$()) && e.get(I) && ee();
92
+ }), e.user_effect(() => {
93
+ if (e.get(I) && O() && H.current)
94
+ try {
95
+ O().update({ appearance: { theme: H.current } });
96
+ } catch {
97
+ }
98
+ }), Ze(() => {
99
+ P && (P.destroy(), P = null), e.set(I, null);
100
+ });
101
+ let B = e.state(""), d = e.state(""), E = e.state(""), f = e.state(!1), n = e.state(!1), D = e.state(""), T = e.state(""), U = e.state(""), m = e.state(e.proxy([])), te = e.derived(() => t.isFreeOrder || t.orderTotals.total === 0), _ = e.state(!1), o = e.derived(() => (() => {
102
+ if (!e.get(_)) return {};
103
+ const r = {};
104
+ if (e.get(B).trim() || (r.firstName = s().firstNameRequired || "First name is required"), e.get(d).trim() || (r.lastName = s().lastNameRequired || "Last name is required"), e.get(E).trim() ? je(e.get(E)) || (r.email = s().emailInvalid || "Enter a valid email address") : r.email = s().emailRequired || "Email is required", !e.get(te) && !v() && (e.get(D).trim() || (r.cardNumber = s().cardNumberRequired || "Card number is required"), e.get(T).trim() || (r.cardExpiry = s().expiryRequired || "Expiry date is required"), e.get(U).trim() || (r.cardCvc = s().cvcRequired || "CVC is required")), e.get(n) || (r.agreeTerms = s().mustAgreeTerms || "You must agree to the terms"), t.isRegistration)
105
+ for (let i = 0; i < e.get(m).length; i++) {
106
+ const l = e.get(m)[i];
107
+ l.sameAsPurchaser || (l.firstName.trim() || (r[`attendee_${i}_firstName`] = "First name is required"), l.lastName.trim() || (r[`attendee_${i}_lastName`] = "Last name is required"), l.email.trim() ? je(l.email) || (r[`attendee_${i}_email`] = s().emailInvalidShort || "Enter a valid email") : r[`attendee_${i}_email`] = s().emailRequired || "Email is required");
108
+ }
109
+ return r;
110
+ })()), le = e.derived(() => Object.keys(e.get(o)).length > 0), V = e.derived(() => t.timerSeconds > 0 && t.timerSeconds <= 120);
111
+ e.user_effect(() => {
112
+ if (t.isRegistration) {
113
+ const r = t.orderTotals.lines.reduce((i, l) => i + l.quantity, 0);
114
+ e.get(m).length !== r && e.set(
115
+ m,
116
+ Array.from({ length: r }, (i, l) => ({
117
+ firstName: "",
118
+ lastName: "",
119
+ email: "",
120
+ sameAsPurchaser: l === 0
121
+ })),
122
+ !0
123
+ );
124
+ }
125
+ });
126
+ let F = e.state(0);
127
+ e.user_effect(() => {
128
+ t.submitRequested > e.get(F) && (e.set(F, t.submitRequested, !0), Y());
129
+ });
130
+ function b(r, i) {
131
+ e.set(
132
+ m,
133
+ e.get(m).map((l, w) => w !== r ? l : {
134
+ ...l,
135
+ sameAsPurchaser: i,
136
+ firstName: i ? e.get(B) : l.firstName,
137
+ lastName: i ? e.get(d) : l.lastName,
138
+ email: i ? e.get(E) : l.email
139
+ }),
140
+ !0
141
+ );
142
+ }
143
+ function Y() {
144
+ e.set(_, !0), !e.get(le) && t.onPlaceOrder({
145
+ firstName: e.get(B),
146
+ lastName: e.get(d),
147
+ email: e.get(E),
148
+ keepMeUpdated: e.get(f),
149
+ attendees: t.isRegistration ? e.get(m).map((r) => ({
150
+ firstName: r.sameAsPurchaser ? e.get(B) : r.firstName,
151
+ lastName: r.sameAsPurchaser ? e.get(d) : r.lastName,
152
+ email: r.sameAsPurchaser ? e.get(E) : r.email,
153
+ sameAsPurchaser: r.sameAsPurchaser
154
+ })) : void 0
155
+ });
156
+ }
157
+ var ve = At(), Q = e.child(ve), ye = e.child(Q);
158
+ {
159
+ let r = e.derived(() => s().goBack || "Go back");
160
+ me(ye, {
161
+ variant: "icon",
162
+ size: "icon-sm",
163
+ get onclick() {
164
+ return t.onBack;
165
+ },
166
+ get "aria-label"() {
167
+ return e.get(r);
168
+ },
169
+ children: (i, l) => {
170
+ tt(i, { size: 20 });
171
+ },
172
+ $$slots: { default: !0 }
173
+ });
174
+ }
175
+ var fe = e.sibling(ye, 2);
176
+ ft(fe, {
177
+ get seconds() {
178
+ return t.timerSeconds;
179
+ },
180
+ get isUrgent() {
181
+ return e.get(V);
182
+ }
183
+ }), e.reset(Q);
184
+ var ke = e.sibling(Q, 2), Pe = e.child(ke);
185
+ Me(Pe, {
186
+ level: 2,
187
+ size: "lg",
188
+ weight: "semibold",
189
+ children: (r, i) => {
190
+ e.next();
191
+ var l = e.text();
192
+ e.template_effect(() => e.set_text(l, s().yourDetails || "Your details")), e.append(r, l);
193
+ },
194
+ $$slots: { default: !0 }
195
+ });
196
+ var _e = e.sibling(Pe, 2), ce = e.child(_e);
197
+ {
198
+ let r = e.derived(() => s().firstName || "First name"), i = e.derived(() => s().firstName || "First name"), l = e.derived(() => e.get(o).firstName ?? ""), w = e.derived(() => e.get(o).firstName ? "red" : "base");
199
+ de(ce, {
200
+ get label() {
201
+ return e.get(r);
202
+ },
203
+ get placeholder() {
204
+ return e.get(i);
205
+ },
206
+ required: !0,
207
+ get errorText() {
208
+ return e.get(l);
209
+ },
210
+ get color() {
211
+ return e.get(w);
212
+ },
213
+ get value() {
214
+ return e.get(B);
215
+ },
216
+ set value(y) {
217
+ e.set(B, y, !0);
218
+ }
219
+ });
220
+ }
221
+ var Ae = e.sibling(ce, 2);
222
+ {
223
+ let r = e.derived(() => s().lastName || "Last name"), i = e.derived(() => s().lastName || "Last name"), l = e.derived(() => e.get(o).lastName ?? ""), w = e.derived(() => e.get(o).lastName ? "red" : "base");
224
+ de(Ae, {
225
+ get label() {
226
+ return e.get(r);
227
+ },
228
+ get placeholder() {
229
+ return e.get(i);
230
+ },
231
+ required: !0,
232
+ get errorText() {
233
+ return e.get(l);
234
+ },
235
+ get color() {
236
+ return e.get(w);
237
+ },
238
+ get value() {
239
+ return e.get(d);
240
+ },
241
+ set value(y) {
242
+ e.set(d, y, !0);
243
+ }
244
+ });
245
+ }
246
+ e.reset(_e);
247
+ var qe = e.sibling(_e, 2);
248
+ {
249
+ let r = e.derived(() => s().emailAddress || "Email address"), i = e.derived(() => s().emailPlaceholder || "you@example.com"), l = e.derived(() => e.get(o).email ?? ""), w = e.derived(() => e.get(o).email ? "red" : "base");
250
+ de(qe, {
251
+ get label() {
252
+ return e.get(r);
253
+ },
254
+ type: "email",
255
+ get placeholder() {
256
+ return e.get(i);
257
+ },
258
+ required: !0,
259
+ get errorText() {
260
+ return e.get(l);
261
+ },
262
+ get color() {
263
+ return e.get(w);
264
+ },
265
+ get value() {
266
+ return e.get(E);
267
+ },
268
+ set value(y) {
269
+ e.set(E, y, !0);
270
+ }
271
+ });
272
+ }
273
+ var $e = e.sibling(qe, 2);
274
+ Be($e, {
275
+ get checked() {
276
+ return e.get(f);
277
+ },
278
+ set checked(r) {
279
+ e.set(f, r, !0);
280
+ },
281
+ children: (r, i) => {
282
+ e.next();
283
+ var l = e.text();
284
+ e.template_effect(() => e.set_text(l, s().keepMeUpdated || "Keep me updated about this event and similar events")), e.append(r, l);
285
+ },
286
+ $$slots: { default: !0 }
287
+ }), e.reset(ke);
288
+ var Ce = e.sibling(ke, 2);
289
+ {
290
+ var Ie = (r) => {
291
+ var i = bt(), l = e.child(i);
292
+ Me(l, {
293
+ level: 2,
294
+ size: "lg",
295
+ weight: "semibold",
296
+ children: (y, c) => {
297
+ e.next();
298
+ var u = e.text();
299
+ e.template_effect(() => e.set_text(u, s().attendeeDetails || "Attendee details")), e.append(y, u);
300
+ },
301
+ $$slots: { default: !0 }
302
+ });
303
+ var w = e.sibling(l, 2);
304
+ e.each(w, 17, () => e.get(m), e.index, (y, c, u) => {
305
+ var W = xt(), p = e.child(W), h = e.child(p);
306
+ ae(h, {
307
+ size: "sm",
308
+ class: "font-semibold",
309
+ children: (G, ne) => {
310
+ e.next();
311
+ var a = e.text();
312
+ e.template_effect(() => e.set_text(a, `${(s().attendee || "Attendee") ?? ""}
313
+ ${u + 1}`)), e.append(G, a);
314
+ },
315
+ $$slots: { default: !0 }
316
+ });
317
+ var N = e.sibling(h, 2);
318
+ Be(N, {
319
+ get checked() {
320
+ return e.get(c).sameAsPurchaser;
321
+ },
322
+ onchange: ({ checked: G }) => b(u, G),
323
+ children: (G, ne) => {
324
+ e.next();
325
+ var a = e.text();
326
+ e.template_effect(() => e.set_text(a, s().sameAsPurchaser || "Same as purchaser")), e.append(G, a);
327
+ },
328
+ $$slots: { default: !0 }
329
+ }), e.reset(p);
330
+ var J = e.sibling(p, 2), ue = e.child(J), se = e.child(ue);
331
+ {
332
+ let G = e.derived(() => s().firstName || "First name"), ne = e.derived(() => s().firstName || "First name"), a = e.derived(() => e.get(c).sameAsPurchaser ? "" : e.get(o)[`attendee_${u}_firstName`] ?? ""), x = e.derived(() => !e.get(c).sameAsPurchaser && e.get(o)[`attendee_${u}_firstName`] ? "red" : "base");
333
+ de(se, {
334
+ get label() {
335
+ return e.get(G);
336
+ },
337
+ get placeholder() {
338
+ return e.get(ne);
339
+ },
340
+ required: !0,
341
+ get disabled() {
342
+ return e.get(c).sameAsPurchaser;
343
+ },
344
+ get errorText() {
345
+ return e.get(a);
346
+ },
347
+ get color() {
348
+ return e.get(x);
349
+ },
350
+ get value() {
351
+ return e.get(c).firstName;
352
+ },
353
+ set value(g) {
354
+ e.get(c).firstName = g;
355
+ }
356
+ });
357
+ }
358
+ var ge = e.sibling(se, 2);
359
+ {
360
+ let G = e.derived(() => s().lastName || "Last name"), ne = e.derived(() => s().lastName || "Last name"), a = e.derived(() => e.get(c).sameAsPurchaser ? "" : e.get(o)[`attendee_${u}_lastName`] ?? ""), x = e.derived(() => !e.get(c).sameAsPurchaser && e.get(o)[`attendee_${u}_lastName`] ? "red" : "base");
361
+ de(ge, {
362
+ get label() {
363
+ return e.get(G);
364
+ },
365
+ get placeholder() {
366
+ return e.get(ne);
367
+ },
368
+ required: !0,
369
+ get disabled() {
370
+ return e.get(c).sameAsPurchaser;
371
+ },
372
+ get errorText() {
373
+ return e.get(a);
374
+ },
375
+ get color() {
376
+ return e.get(x);
377
+ },
378
+ get value() {
379
+ return e.get(c).lastName;
380
+ },
381
+ set value(g) {
382
+ e.get(c).lastName = g;
383
+ }
384
+ });
385
+ }
386
+ e.reset(ue);
387
+ var Ne = e.sibling(ue, 2);
388
+ {
389
+ let G = e.derived(() => s().email || "Email"), ne = e.derived(() => s().attendeeEmailPlaceholder || "attendee@example.com"), a = e.derived(() => e.get(c).sameAsPurchaser ? "" : e.get(o)[`attendee_${u}_email`] ?? ""), x = e.derived(() => !e.get(c).sameAsPurchaser && e.get(o)[`attendee_${u}_email`] ? "red" : "base");
390
+ de(Ne, {
391
+ get label() {
392
+ return e.get(G);
393
+ },
394
+ type: "email",
395
+ get placeholder() {
396
+ return e.get(ne);
397
+ },
398
+ required: !0,
399
+ get disabled() {
400
+ return e.get(c).sameAsPurchaser;
401
+ },
402
+ get errorText() {
403
+ return e.get(a);
404
+ },
405
+ get color() {
406
+ return e.get(x);
407
+ },
408
+ get value() {
409
+ return e.get(c).email;
410
+ },
411
+ set value(g) {
412
+ e.get(c).email = g;
413
+ }
414
+ });
415
+ }
416
+ e.reset(J), e.reset(W), e.append(y, W);
417
+ }), e.reset(i), e.append(r, i);
418
+ };
419
+ e.if(Ce, (r) => {
420
+ t.isRegistration && e.get(m).length > 0 && r(Ie);
421
+ });
422
+ }
423
+ var he = e.sibling(Ce, 2), Le = e.child(he);
424
+ {
425
+ var we = (r) => {
426
+ var i = yt(), l = e.child(i);
427
+ ae(l, {
428
+ size: "sm",
429
+ color: "secondary",
430
+ class: "font-medium block",
431
+ children: (y, c) => {
432
+ e.next();
433
+ var u = e.text();
434
+ e.template_effect(() => e.set_text(u, s().noPaymentRequired || "No payment required")), e.append(y, u);
435
+ },
436
+ $$slots: { default: !0 }
437
+ });
438
+ var w = e.sibling(l, 2);
439
+ ae(w, {
440
+ size: "xs",
441
+ color: "muted",
442
+ class: "block mt-1",
443
+ children: (y, c) => {
444
+ e.next();
445
+ var u = e.text();
446
+ e.template_effect(() => e.set_text(u, s().freeEventMessage || "This is a free event. Complete the form above to reserve your spot.")), e.append(y, u);
447
+ },
448
+ $$slots: { default: !0 }
449
+ }), e.reset(i), e.append(r, i);
450
+ }, Ee = (r) => {
451
+ var i = Tt(), l = e.first_child(i);
452
+ Me(l, {
453
+ level: 2,
454
+ size: "lg",
455
+ weight: "semibold",
456
+ children: (p, h) => {
457
+ e.next();
458
+ var N = e.text("Payment");
459
+ e.append(p, N);
460
+ },
461
+ $$slots: { default: !0 }
462
+ });
463
+ var w = e.sibling(l, 2);
464
+ {
465
+ var y = (p) => {
466
+ var h = Pt(), N = e.first_child(h);
467
+ e.bind_this(N, (se) => e.set(R, se), () => e.get(R));
468
+ var J = e.sibling(N, 2);
469
+ {
470
+ var ue = (se) => {
471
+ var ge = kt(), Ne = e.child(ge, !0);
472
+ e.reset(ge), e.template_effect(() => e.set_text(Ne, s().loadingPaymentForm || "Loading secure payment form...")), e.append(se, ge);
473
+ };
474
+ e.if(J, (se) => {
475
+ e.get(I) || se(ue);
476
+ });
477
+ }
478
+ e.append(p, h);
479
+ }, c = (p) => {
480
+ var h = wt(), N = e.child(h, !0);
481
+ e.reset(h), e.template_effect(() => e.set_text(N, s().loadingPaymentForm || "Loading secure payment form...")), e.append(p, h);
482
+ };
483
+ e.if(w, (p) => {
484
+ Ve ? p(y) : p(c, !1);
485
+ });
486
+ }
487
+ var u = e.sibling(w, 2);
488
+ {
489
+ var W = (p) => {
490
+ var h = Et(), N = e.child(h, !0);
491
+ e.reset(h), e.template_effect(() => e.set_text(N, C())), e.append(p, h);
492
+ };
493
+ e.if(u, (p) => {
494
+ C() && p(W);
495
+ });
496
+ }
497
+ e.append(r, i);
498
+ }, Te = (r) => {
499
+ var i = St(), l = e.first_child(i);
500
+ Me(l, {
501
+ level: 2,
502
+ size: "lg",
503
+ weight: "semibold",
504
+ children: (W, p) => {
505
+ e.next();
506
+ var h = e.text("Payment");
507
+ e.append(W, h);
508
+ },
509
+ $$slots: { default: !0 }
510
+ });
511
+ var w = e.sibling(l, 2);
512
+ {
513
+ let W = e.derived(() => s().cardNumber || "Card number"), p = e.derived(() => s().cardPlaceholder || "4242 4242 4242 4242"), h = e.derived(() => e.get(o).cardNumber ?? ""), N = e.derived(() => e.get(o).cardNumber ? "red" : "base");
514
+ de(w, {
515
+ get label() {
516
+ return e.get(W);
517
+ },
518
+ get placeholder() {
519
+ return e.get(p);
520
+ },
521
+ type: "creditCardNumber",
522
+ required: !0,
523
+ get errorText() {
524
+ return e.get(h);
525
+ },
526
+ get color() {
527
+ return e.get(N);
528
+ },
529
+ get value() {
530
+ return e.get(D);
531
+ },
532
+ set value(J) {
533
+ e.set(D, J, !0);
534
+ }
535
+ });
536
+ }
537
+ var y = e.sibling(w, 2), c = e.child(y);
538
+ {
539
+ let W = e.derived(() => s().expiryDate || "Expiry date"), p = e.derived(() => s().expiryPlaceholder || "MM / YY"), h = e.derived(() => e.get(o).cardExpiry ?? ""), N = e.derived(() => e.get(o).cardExpiry ? "red" : "base");
540
+ de(c, {
541
+ get label() {
542
+ return e.get(W);
543
+ },
544
+ get placeholder() {
545
+ return e.get(p);
546
+ },
547
+ required: !0,
548
+ get errorText() {
549
+ return e.get(h);
550
+ },
551
+ get color() {
552
+ return e.get(N);
553
+ },
554
+ get value() {
555
+ return e.get(T);
556
+ },
557
+ set value(J) {
558
+ e.set(T, J, !0);
559
+ }
560
+ });
561
+ }
562
+ var u = e.sibling(c, 2);
563
+ {
564
+ let W = e.derived(() => s().cvc || "CVC"), p = e.derived(() => s().cvcPlaceholder || "123"), h = e.derived(() => e.get(o).cardCvc ?? ""), N = e.derived(() => e.get(o).cardCvc ? "red" : "base");
565
+ de(u, {
566
+ get label() {
567
+ return e.get(W);
568
+ },
569
+ get placeholder() {
570
+ return e.get(p);
571
+ },
572
+ required: !0,
573
+ maxlength: 4,
574
+ get errorText() {
575
+ return e.get(h);
576
+ },
577
+ get color() {
578
+ return e.get(N);
579
+ },
580
+ get value() {
581
+ return e.get(U);
582
+ },
583
+ set value(J) {
584
+ e.set(U, J, !0);
585
+ }
586
+ });
587
+ }
588
+ e.reset(y), e.append(r, i);
589
+ };
590
+ e.if(Le, (r) => {
591
+ e.get(te) ? r(we) : v() && $() ? r(Ee, 1) : r(Te, !1);
592
+ });
593
+ }
594
+ e.reset(he);
595
+ var Se = e.sibling(he, 2), xe = e.child(Se);
596
+ Be(xe, {
597
+ get checked() {
598
+ return e.get(n);
599
+ },
600
+ set checked(r) {
601
+ e.set(n, r, !0);
602
+ },
603
+ children: (r, i) => {
604
+ e.next();
605
+ var l = e.text();
606
+ e.template_effect(() => e.set_text(l, s().agreeToTerms || "I agree to the terms and conditions")), e.append(r, l);
607
+ },
608
+ $$slots: { default: !0 }
609
+ });
610
+ var De = e.sibling(xe, 2);
611
+ {
612
+ var Oe = (r) => {
613
+ var i = Nt(), l = e.child(i);
614
+ Ke(l, { size: 16, class: "text-accent-danger shrink-0" });
615
+ var w = e.sibling(l, 2);
616
+ ae(w, {
617
+ size: "xs",
618
+ class: "text-accent-danger",
619
+ children: (y, c) => {
620
+ e.next();
621
+ var u = e.text();
622
+ e.template_effect(() => e.set_text(u, e.get(o).agreeTerms)), e.append(y, u);
623
+ },
624
+ $$slots: { default: !0 }
625
+ }), e.reset(i), e.append(r, i);
626
+ };
627
+ e.if(De, (r) => {
628
+ e.get(o).agreeTerms && r(Oe);
629
+ });
630
+ }
631
+ e.reset(Se), e.reset(ve), e.append(j, ve), e.pop();
632
+ }
633
+ var $t = e.from_html(" <!>", 1), Ct = e.from_html('<div class="p-5 shrink-0"><div class="flex gap-3"><div class="shrink-0 w-20 h-14 rounded-lg overflow-hidden bg-surface-tertiary"><!></div> <div class="flex-1 min-w-0"><!> <div class="flex items-center gap-1.5 mt-1"><!> <!></div> <!></div></div></div> <div class="px-5 pb-3 flex-1 overflow-y-auto min-h-0 border-t border-default pt-3"><!></div> <div class="px-5 pt-3 pb-5 shrink-0 border-t border-default space-y-3"><!> <!></div>', 1);
634
+ function It(j, t) {
635
+ e.push(t, !0);
636
+ let v = e.prop(t, "labels", 19, () => ({}));
637
+ rt(j, {
638
+ border: !0,
639
+ padding: !1,
640
+ class: "flex flex-col max-h-[calc(100vh-1.5rem)] rounded-xl shadow-lg overflow-hidden bg-surface-secondary",
641
+ children: ($, O) => {
642
+ var C = Ct(), s = e.first_child(C), H = e.child(s), R = e.child(H), P = e.child(R);
643
+ Ge(P, {
644
+ get src() {
645
+ return t.event.imageUrl;
646
+ },
647
+ get alt() {
648
+ return t.event.title;
649
+ },
650
+ class: "w-full h-full"
651
+ }), e.reset(R);
652
+ var I = e.sibling(R, 2), K = e.child(I);
653
+ ae(K, {
654
+ size: "sm",
655
+ class: "font-semibold block leading-tight line-clamp-2",
656
+ children: (m, te) => {
657
+ e.next();
658
+ var _ = e.text();
659
+ e.template_effect(() => e.set_text(_, t.event.title)), e.append(m, _);
660
+ },
661
+ $$slots: { default: !0 }
662
+ });
663
+ var ee = e.sibling(K, 2), B = e.child(ee);
664
+ Qe(B, { size: 16, class: "shrink-0 icon-muted" });
665
+ var d = e.sibling(B, 2);
666
+ ae(d, {
667
+ size: "xs",
668
+ color: "muted",
669
+ children: (m, te) => {
670
+ e.next();
671
+ var _ = $t(), o = e.first_child(_), le = e.sibling(o);
672
+ {
673
+ var V = (F) => {
674
+ var b = e.text();
675
+ e.template_effect((Y) => e.set_text(b, `· ${Y ?? ""}`), [
676
+ () => Xe(t.event.startDateTime, t.event.timezone)
677
+ ]), e.append(F, b);
678
+ };
679
+ e.if(le, (F) => {
680
+ t.event.displayStartTime !== !1 && F(V);
681
+ });
682
+ }
683
+ e.template_effect((F) => e.set_text(o, `${F ?? ""} `), [
684
+ () => Je(t.event.startDateTime, t.event.timezone)
685
+ ]), e.append(m, _);
686
+ },
687
+ $$slots: { default: !0 }
688
+ }), e.reset(ee);
689
+ var E = e.sibling(ee, 2);
690
+ ae(E, {
691
+ size: "xs",
692
+ color: "muted",
693
+ class: "block mt-0.5",
694
+ children: (m, te) => {
695
+ e.next();
696
+ var _ = e.text();
697
+ e.template_effect(() => e.set_text(_, t.event.venue.name)), e.append(m, _);
698
+ },
699
+ $$slots: { default: !0 }
700
+ }), e.reset(I), e.reset(H), e.reset(s);
701
+ var f = e.sibling(s, 2), n = e.child(f);
702
+ We(n, {
703
+ get orderTotals() {
704
+ return t.orderTotals;
705
+ },
706
+ mode: "lines",
707
+ get labels() {
708
+ return v();
709
+ }
710
+ }), e.reset(f);
711
+ var D = e.sibling(f, 2), T = e.child(D);
712
+ We(T, {
713
+ get orderTotals() {
714
+ return t.orderTotals;
715
+ },
716
+ mode: "totals",
717
+ get labels() {
718
+ return v();
719
+ }
720
+ });
721
+ var U = e.sibling(T, 2);
722
+ me(U, {
723
+ variant: "default",
724
+ size: "lg",
725
+ class: "w-full",
726
+ get disabled() {
727
+ return t.processing;
728
+ },
729
+ get loading() {
730
+ return t.processing;
731
+ },
732
+ get onclick() {
733
+ return t.onPlaceOrder;
734
+ },
735
+ children: (m, te) => {
736
+ var _ = e.comment(), o = e.first_child(_);
737
+ {
738
+ var le = (b) => {
739
+ var Y = e.text();
740
+ e.template_effect(() => e.set_text(Y, v().placingOrder || "Placing order...")), e.append(b, Y);
741
+ }, V = (b) => {
742
+ var Y = e.text();
743
+ e.template_effect(() => e.set_text(Y, `${(v().completeOrder || "Complete order") ?? ""} · ${(v().free || "Free") ?? ""}`)), e.append(b, Y);
744
+ }, F = (b) => {
745
+ var Y = e.text();
746
+ e.template_effect((ve) => e.set_text(Y, `${(v().placeOrder || "Place order") ?? ""} · ${ve ?? ""}`), [() => Ye(t.orderTotals.total)]), e.append(b, Y);
747
+ };
748
+ e.if(o, (b) => {
749
+ t.processing ? b(le) : t.isFreeOrder ? b(V, 1) : b(F, !1);
750
+ });
751
+ }
752
+ e.append(m, _);
753
+ },
754
+ $$slots: { default: !0 }
755
+ }), e.reset(D), e.append($, C);
756
+ },
757
+ $$slots: { default: !0 }
758
+ }), e.pop();
759
+ }
760
+ var Dt = e.from_html('<div class="fixed bottom-0 left-0 right-0 z-40 md:hidden bg-surface-primary border-t border-default shadow-lg" style="padding-bottom: env(safe-area-inset-bottom, 0);"><div class="flex items-center justify-between gap-3 px-4 py-3"><div class="flex-1 min-w-0"><!></div> <!></div></div>');
761
+ function Ot(j, t) {
762
+ e.push(t, !0);
763
+ let v = e.prop(t, "labels", 19, () => ({})), $ = e.derived(() => t.orderTotals.lines.reduce((P, I) => P + I.quantity, 0));
764
+ var O = Dt(), C = e.child(O), s = e.child(C), H = e.child(s);
765
+ ae(H, {
766
+ size: "sm",
767
+ class: "font-semibold tabular-nums block",
768
+ children: (P, I) => {
769
+ var K = e.comment(), ee = e.first_child(K);
770
+ {
771
+ var B = (E) => {
772
+ var f = e.text();
773
+ e.template_effect(() => e.set_text(f, `${e.get($) ?? ""} ${(e.get($) === 1 ? v().ticket || "ticket" : v().tickets || "tickets") ?? ""} · Free`)), e.append(E, f);
774
+ }, d = (E) => {
775
+ var f = e.text();
776
+ e.template_effect((n) => e.set_text(f, n), [() => Ye(t.orderTotals.total)]), e.append(E, f);
777
+ };
778
+ e.if(ee, (E) => {
779
+ t.isFreeOrder ? E(B) : E(d, !1);
780
+ });
781
+ }
782
+ e.append(P, K);
783
+ },
784
+ $$slots: { default: !0 }
785
+ }), e.reset(s);
786
+ var R = e.sibling(s, 2);
787
+ me(R, {
788
+ variant: "default",
789
+ size: "lg",
790
+ get disabled() {
791
+ return t.processing;
792
+ },
793
+ get loading() {
794
+ return t.processing;
795
+ },
796
+ get onclick() {
797
+ return t.onPlaceOrder;
798
+ },
799
+ class: "shrink-0 min-w-36",
800
+ children: (P, I) => {
801
+ var K = e.comment(), ee = e.first_child(K);
802
+ {
803
+ var B = (f) => {
804
+ var n = e.text();
805
+ e.template_effect(() => e.set_text(n, v().placingOrder || "Placing order...")), e.append(f, n);
806
+ }, d = (f) => {
807
+ var n = e.text();
808
+ e.template_effect(() => e.set_text(n, v().completeOrder || "Complete order")), e.append(f, n);
809
+ }, E = (f) => {
810
+ var n = e.text();
811
+ e.template_effect(() => e.set_text(n, v().placeOrder || "Place order")), e.append(f, n);
812
+ };
813
+ e.if(ee, (f) => {
814
+ t.processing ? f(B) : t.isFreeOrder ? f(d, 1) : f(E, !1);
815
+ });
816
+ }
817
+ e.append(P, K);
818
+ },
819
+ $$slots: { default: !0 }
820
+ }), e.reset(C), e.reset(O), e.append(j, O), e.pop();
821
+ }
822
+ const zt = nt("CheckoutMain");
823
+ var Rt = e.from_html(" <!>", 1), Ft = e.from_html('<p class="timer-modal-hint svelte-1opgb11"> </p>'), Mt = e.from_html('<div class="timer-modal svelte-1opgb11" id="warning-modal-description"><div class="timer-modal-icon warning svelte-1opgb11"><!></div> <h3 id="warning-modal-title" class="timer-modal-title svelte-1opgb11"> </h3> <p class="timer-modal-text svelte-1opgb11"> </p> <!></div>'), Lt = e.from_html('<!> <p class="timer-modal-hint svelte-1opgb11"> </p>', 1), Bt = e.from_html('<div class="timer-modal-actions svelte-1opgb11"><!></div>'), Ut = e.from_html('<div class="timer-modal svelte-1opgb11" id="expired-modal-description"><div class="timer-modal-icon expired svelte-1opgb11"><!></div> <h3 id="expired-modal-title" class="timer-modal-title svelte-1opgb11"> </h3> <p class="timer-modal-text svelte-1opgb11"> </p></div>'), Vt = e.from_html("<!> <!>", 1), Wt = e.from_html('<div class="timer-modal-actions svelte-1opgb11"><!></div>'), Yt = e.from_html('<div class="w-full min-h-screen bg-surface-primary text-color-primary"><div class="max-w-6xl mx-auto px-4 py-6 md:px-6 md:py-8"><div class="max-w-6xl"><div class="md:grid md:grid-cols-booking-split gap-8 items-start"><div class="pb-24 md:pb-0"><!> <section class="md:hidden mobile-order-summary border-default bg-surface-secondary mt-6 svelte-1opgb11"><div class="flex gap-3 pb-3 mb-3 border-b border-default"><div class="shrink-0 w-20 h-14 rounded-lg overflow-hidden bg-surface-tertiary"><!></div> <div class="flex-1 min-w-0"><!> <div class="flex items-center gap-1.5 mt-1"><!> <!></div> <!></div></div> <!></section></div> <div class="hidden md:block sticky top-6"><!></div></div></div> <div class="md:hidden"><!></div></div> <!> <!></div>');
824
+ function jt(j, t) {
825
+ e.push(t, !0);
826
+ const v = [
827
+ {
828
+ value: "default",
829
+ label: "Standard",
830
+ color: "bg-accent-success"
831
+ },
832
+ { value: "free", label: "Free", color: "bg-sky-500" },
833
+ {
834
+ value: "donation",
835
+ label: "Donation",
836
+ color: "bg-accent-danger"
837
+ },
838
+ {
839
+ value: "registration",
840
+ label: "Registration",
841
+ color: "bg-brand-primary"
842
+ },
843
+ {
844
+ value: "timer_warning",
845
+ label: "Timer warning",
846
+ color: "bg-status-warning-bg0"
847
+ },
848
+ {
849
+ value: "expired",
850
+ label: "Expired",
851
+ color: "bg-accent-danger"
852
+ },
853
+ {
854
+ value: "promo",
855
+ label: "Promo discount",
856
+ color: "bg-accent-success"
857
+ }
858
+ ];
859
+ let $ = e.derived(() => be.current), O = e.prop(t, "config", 3, void 0), C = e.prop(t, "onPlaceOrder", 3, void 0), s = e.prop(t, "onBack", 3, void 0), H = e.prop(t, "onRetryExpired", 3, void 0), R = e.prop(t, "onExtendSession", 3, void 0), P = e.prop(t, "stripe", 3, void 0), I = e.prop(t, "paymentIntent", 3, void 0), K = e.prop(t, "elements", 15, void 0), ee = e.prop(t, "paymentError", 3, ""), B = e.prop(t, "labels", 19, () => ({}));
860
+ const d = e.derived(() => dt(B()));
861
+ let E = e.derived(() => !O());
862
+ e.user_effect(() => {
863
+ if (e.get(E))
864
+ return be.options = v, be.current = "default", be.isActive = !0, () => {
865
+ be.isActive = !1, be.options = [];
866
+ };
867
+ });
868
+ function f(a) {
869
+ switch (a) {
870
+ case "free":
871
+ return {
872
+ event: mt,
873
+ lines: [
874
+ {
875
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
876
+ ticketId: Z(201),
877
+ ticketName: "Free Entry",
878
+ quantity: 2,
879
+ unitPrice: 0,
880
+ fee: 0,
881
+ subtotal: 0
882
+ }
883
+ ],
884
+ timerStart: 900,
885
+ promoApplied: !1,
886
+ promoDiscount: 0,
887
+ forceExpired: !1
888
+ };
889
+ case "donation":
890
+ return {
891
+ event: gt,
892
+ lines: [
893
+ {
894
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
895
+ ticketId: Z(401),
896
+ ticketName: "Donation",
897
+ quantity: 1,
898
+ unitPrice: 25,
899
+ fee: 0,
900
+ subtotal: 25
901
+ },
902
+ {
903
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
904
+ ticketId: Z(402),
905
+ ticketName: "Standard Admission",
906
+ quantity: 1,
907
+ unitPrice: 30,
908
+ fee: 3,
909
+ subtotal: 30
910
+ }
911
+ ],
912
+ timerStart: 900,
913
+ promoApplied: !1,
914
+ promoDiscount: 0,
915
+ forceExpired: !1
916
+ };
917
+ case "registration":
918
+ return {
919
+ event: ut,
920
+ lines: [
921
+ {
922
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
923
+ ticketId: Z(301),
924
+ ticketName: "Workshop Seat",
925
+ quantity: 1,
926
+ unitPrice: 75,
927
+ fee: 7.5,
928
+ subtotal: 75
929
+ }
930
+ ],
931
+ timerStart: 900,
932
+ promoApplied: !1,
933
+ promoDiscount: 0,
934
+ forceExpired: !1
935
+ };
936
+ case "timer_warning":
937
+ return {
938
+ event: Fe,
939
+ lines: [
940
+ {
941
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
942
+ ticketId: Z(101),
943
+ ticketName: "General Admission",
944
+ quantity: 2,
945
+ unitPrice: 25,
946
+ fee: 2.5,
947
+ subtotal: 50
948
+ },
949
+ {
950
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
951
+ ticketId: Z(102),
952
+ ticketName: "VIP Front Row",
953
+ quantity: 1,
954
+ unitPrice: 55,
955
+ fee: 5.5,
956
+ subtotal: 55
957
+ }
958
+ ],
959
+ timerStart: 33,
960
+ // Just over 30s — warning modal triggers at 30s
961
+ promoApplied: !1,
962
+ promoDiscount: 0,
963
+ forceExpired: !1
964
+ };
965
+ case "expired":
966
+ return {
967
+ event: Fe,
968
+ lines: [
969
+ {
970
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
971
+ ticketId: Z(101),
972
+ ticketName: "General Admission",
973
+ quantity: 2,
974
+ unitPrice: 25,
975
+ fee: 2.5,
976
+ subtotal: 50
977
+ },
978
+ {
979
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
980
+ ticketId: Z(102),
981
+ ticketName: "VIP Front Row",
982
+ quantity: 1,
983
+ unitPrice: 55,
984
+ fee: 5.5,
985
+ subtotal: 55
986
+ }
987
+ ],
988
+ timerStart: 0,
989
+ promoApplied: !1,
990
+ promoDiscount: 0,
991
+ forceExpired: !0
992
+ };
993
+ case "promo":
994
+ return {
995
+ event: Fe,
996
+ lines: [
997
+ {
998
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
999
+ ticketId: Z(101),
1000
+ ticketName: "General Admission",
1001
+ quantity: 2,
1002
+ unitPrice: 25,
1003
+ fee: 2.5,
1004
+ subtotal: 50
1005
+ },
1006
+ {
1007
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
1008
+ ticketId: Z(102),
1009
+ ticketName: "VIP Front Row",
1010
+ quantity: 1,
1011
+ unitPrice: 55,
1012
+ fee: 5.5,
1013
+ subtotal: 55
1014
+ }
1015
+ ],
1016
+ timerStart: 900,
1017
+ promoApplied: !0,
1018
+ promoDiscount: 10,
1019
+ forceExpired: !1
1020
+ };
1021
+ default:
1022
+ return {
1023
+ event: Fe,
1024
+ lines: [
1025
+ {
1026
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
1027
+ ticketId: Z(101),
1028
+ ticketName: "General Admission",
1029
+ quantity: 2,
1030
+ unitPrice: 25,
1031
+ fee: 2.5,
1032
+ subtotal: 50
1033
+ },
1034
+ {
1035
+ // eslint-disable-next-line micdrop/boundary-only-as-cast -- mock data: static showcase ticketIds
1036
+ ticketId: Z(102),
1037
+ ticketName: "VIP Front Row",
1038
+ quantity: 1,
1039
+ unitPrice: 55,
1040
+ fee: 5.5,
1041
+ subtotal: 55
1042
+ }
1043
+ ],
1044
+ timerStart: 900,
1045
+ promoApplied: !1,
1046
+ promoDiscount: 0,
1047
+ forceExpired: !1
1048
+ };
1049
+ }
1050
+ }
1051
+ let n = e.derived(() => e.get(E) ? f(e.get($)) : O()), D = e.state(null), T = e.state(900), U = e.state(!1), m = e.state(!1), te = e.state(0), _ = e.state(!1), o = e.state(!1), le = e.state(!1), V = e.state(!1), F = e.state(3), b = e.state(!0);
1052
+ const Y = 30;
1053
+ let ve = e.derived(() => (() => {
1054
+ const a = Math.floor(e.get(T) / 60), x = e.get(T) % 60;
1055
+ return `${a.toString().padStart(2, "0")}:${x.toString().padStart(2, "0")}`;
1056
+ })()), Q = e.derived(() => (() => {
1057
+ const a = e.get(n).lines;
1058
+ if (e.get(n).serverTotals)
1059
+ return {
1060
+ lines: a,
1061
+ subtotal: e.get(n).serverTotals.subtotal,
1062
+ fees: e.get(n).serverTotals.fees,
1063
+ taxes: e.get(n).serverTotals.taxes,
1064
+ total: e.get(n).serverTotals.total,
1065
+ promoDiscount: e.get(n).serverTotals.promoDiscount,
1066
+ giftCardAmount: e.get(n).serverTotals.giftCardAmount
1067
+ };
1068
+ const x = Re(a.reduce((z, A) => z + A.subtotal, 0)), g = Re(a.reduce((z, A) => z + A.fee * A.quantity, 0)), S = e.get(n).promoApplied ? e.get(n).promoDiscount : 0, k = Re(Math.max(0, x - S)), M = ct(k + g, e.get(n).event.venue.taxPercentage);
1069
+ return {
1070
+ lines: a,
1071
+ subtotal: x,
1072
+ fees: g,
1073
+ taxes: M,
1074
+ total: Re(k + g + M),
1075
+ promoDiscount: S,
1076
+ giftCardAmount: 0
1077
+ };
1078
+ })()), ye = e.derived(() => !!e.get(n).serverTotals), fe = e.derived(() => e.get(Q).total === 0 && e.get(Q).subtotal === 0), ke = e.derived(() => e.get(n).event.isRegistrationEvent), Pe = !1;
1079
+ e.user_effect(() => {
1080
+ const a = e.get(n);
1081
+ Pe || (Pe = !0, e.set(D, Date.now() + a.timerStart * 1e3), e.set(T, a.timerStart, !0), e.set(U, a.forceExpired, !0)), e.set(m, !1), e.set(te, 0);
1082
+ });
1083
+ function _e() {
1084
+ return typeof document > "u" ? null : st(it.CHECKOUT_CARTID);
1085
+ }
1086
+ function ce() {
1087
+ return e.get(D) == null ? e.get(T) : Math.max(0, Math.floor((e.get(D) - Date.now()) / 1e3));
1088
+ }
1089
+ async function Ae() {
1090
+ const a = _e();
1091
+ if (a)
1092
+ try {
1093
+ const x = await at(a);
1094
+ if (x.notFound) {
1095
+ e.set(D, Date.now(), !0), e.set(T, 0), e.set(U, !0), e.set(_, !1), e.set(o, !0);
1096
+ return;
1097
+ }
1098
+ x.expiresAt && (e.set(D, new Date(x.expiresAt).getTime(), !0), e.set(T, ce(), !0));
1099
+ } catch {
1100
+ }
1101
+ }
1102
+ e.user_effect(() => {
1103
+ if (e.get(U) || e.get(T) <= 0) {
1104
+ e.get(T) <= 0 && !e.get(U) && (e.set(U, !0), e.set(_, !1), e.set(o, !0));
1105
+ return;
1106
+ }
1107
+ const a = () => {
1108
+ const S = ce();
1109
+ if (e.set(T, S, !0), S % 10 === 0 && e.get(D) != null && typeof localStorage < "u")
1110
+ try {
1111
+ const k = _e();
1112
+ k && localStorage.setItem(
1113
+ // @storage-escape: checkout-deadline timer persistence (intentional raw localStorage)
1114
+ `checkout-expiry-${k}`,
1115
+ String(e.get(D))
1116
+ );
1117
+ } catch {
1118
+ }
1119
+ S <= Y && S > 0 && !e.get(le) && (e.set(_, !0), e.set(le, !0)), S <= 0 && (e.set(U, !0), e.set(_, !1), e.set(o, !0), clearInterval(x));
1120
+ }, x = setInterval(a, 1e3), g = () => {
1121
+ typeof document < "u" && document.visibilityState === "visible" && (a(), Ae());
1122
+ };
1123
+ return typeof document < "u" && document.addEventListener("visibilitychange", g), typeof window < "u" && window.addEventListener("pageshow", g), Ae(), () => {
1124
+ clearInterval(x), typeof document < "u" && document.removeEventListener("visibilitychange", g), typeof window < "u" && window.removeEventListener("pageshow", g);
1125
+ };
1126
+ });
1127
+ function qe() {
1128
+ s() ? s()() : Ue.info("Back button pressed — would navigate to ticket selection");
1129
+ }
1130
+ function $e() {
1131
+ e.set(te, e.get(te) + 1);
1132
+ }
1133
+ function Ce(a) {
1134
+ if (!e.get(m)) {
1135
+ if (e.set(m, !0), C()) {
1136
+ C()(a).catch(() => {
1137
+ }).finally(() => {
1138
+ e.set(m, !1);
1139
+ });
1140
+ return;
1141
+ }
1142
+ setTimeout(
1143
+ () => {
1144
+ e.set(m, !1);
1145
+ const x = e.get(Q).lines.reduce((g, S) => g + S.quantity, 0);
1146
+ Ue.success(`Order placed! ${x} ticket(s) for ${Ye(e.get(
1147
+ Q
1148
+ /* FIXME(canonical-cleanup:toFixed): this cast bypasses the brand boundary; replace with toCents/toUSD at the API-response-transform layer. */
1149
+ ).total)}`);
1150
+ },
1151
+ 1500
1152
+ );
1153
+ }
1154
+ }
1155
+ function Ie() {
1156
+ e.set(o, !1), H() ? H()() : Ue.info("Would navigate back to ticket selection to start over");
1157
+ }
1158
+ async function he() {
1159
+ if (!(!e.get(b) || e.get(V))) {
1160
+ e.set(V, !0);
1161
+ try {
1162
+ if (R()) {
1163
+ const a = await R()();
1164
+ if (a == null)
1165
+ throw new ot("Extension request returned no result", "lib/premium-ticket-experience/variants/v3-airbnb-split/CheckoutMain/handleExtendSession");
1166
+ typeof a == "object" ? (a.newExpiryTime ? e.set(D, new Date(a.newExpiryTime).getTime(), !0) : e.set(D, Date.now() + 900 * 1e3), e.set(T, ce(), !0), a.remainingExtensions !== void 0 && (e.set(F, a.remainingExtensions, !0), e.set(b, e.get(F) > 0))) : (e.set(D, Date.now() + 900 * 1e3), e.set(T, ce(), !0));
1167
+ } else
1168
+ e.set(D, Date.now() + 900 * 1e3), e.set(T, ce(), !0);
1169
+ e.set(U, !1), e.set(le, !1), e.set(_, !1), e.set(o, !1);
1170
+ } catch (a) {
1171
+ zt.error("Failed to extend session:", a), e.set(_, !1), e.set(b, !1), e.get(T) <= 0 && (e.set(U, !0), e.set(o, !0));
1172
+ } finally {
1173
+ e.set(V, !1);
1174
+ }
1175
+ }
1176
+ }
1177
+ function Le() {
1178
+ e.set(_, !1);
1179
+ }
1180
+ var we = Yt(), Ee = e.child(we), Te = e.child(Ee), Se = e.child(Te), xe = e.child(Se), De = e.child(xe);
1181
+ qt(De, {
1182
+ get event() {
1183
+ return e.get(n).event;
1184
+ },
1185
+ get orderTotals() {
1186
+ return e.get(Q);
1187
+ },
1188
+ get timerSeconds() {
1189
+ return e.get(T);
1190
+ },
1191
+ get isExpired() {
1192
+ return e.get(U);
1193
+ },
1194
+ get isRegistration() {
1195
+ return e.get(ke);
1196
+ },
1197
+ get isFreeOrder() {
1198
+ return e.get(fe);
1199
+ },
1200
+ get promoApplied() {
1201
+ return e.get(n).promoApplied;
1202
+ },
1203
+ get promoDiscount() {
1204
+ return e.get(n).promoDiscount;
1205
+ },
1206
+ onBack: qe,
1207
+ onPlaceOrder: Ce,
1208
+ get processing() {
1209
+ return e.get(m);
1210
+ },
1211
+ get submitRequested() {
1212
+ return e.get(te);
1213
+ },
1214
+ get stripe() {
1215
+ return P();
1216
+ },
1217
+ get paymentIntent() {
1218
+ return I();
1219
+ },
1220
+ get paymentError() {
1221
+ return ee();
1222
+ },
1223
+ get labels() {
1224
+ return e.get(d);
1225
+ },
1226
+ get elements() {
1227
+ return K();
1228
+ },
1229
+ set elements(a) {
1230
+ K(a);
1231
+ }
1232
+ });
1233
+ var Oe = e.sibling(De, 2), r = e.child(Oe), i = e.child(r), l = e.child(i);
1234
+ Ge(l, {
1235
+ get src() {
1236
+ return e.get(n).event.imageUrl;
1237
+ },
1238
+ get alt() {
1239
+ return e.get(n).event.title;
1240
+ },
1241
+ class: "w-full h-full"
1242
+ }), e.reset(i);
1243
+ var w = e.sibling(i, 2), y = e.child(w);
1244
+ ae(y, {
1245
+ size: "sm",
1246
+ class: "font-semibold block leading-tight line-clamp-2",
1247
+ children: (a, x) => {
1248
+ e.next();
1249
+ var g = e.text();
1250
+ e.template_effect(() => e.set_text(g, e.get(n).event.title)), e.append(a, g);
1251
+ },
1252
+ $$slots: { default: !0 }
1253
+ });
1254
+ var c = e.sibling(y, 2), u = e.child(c);
1255
+ Qe(u, { size: 16, class: "shrink-0 icon-muted" });
1256
+ var W = e.sibling(u, 2);
1257
+ ae(W, {
1258
+ size: "xs",
1259
+ color: "muted",
1260
+ children: (a, x) => {
1261
+ e.next();
1262
+ var g = Rt(), S = e.first_child(g), k = e.sibling(S);
1263
+ {
1264
+ var M = (z) => {
1265
+ var A = e.text();
1266
+ e.template_effect((q) => e.set_text(A, `· ${q ?? ""}`), [
1267
+ () => Xe(e.get(n).event.startDateTime, e.get(n).event.timezone)
1268
+ ]), e.append(z, A);
1269
+ };
1270
+ e.if(k, (z) => {
1271
+ e.get(n).event.displayStartTime !== !1 && z(M);
1272
+ });
1273
+ }
1274
+ e.template_effect((z) => e.set_text(S, `${z ?? ""} `), [
1275
+ () => Je(e.get(n).event.startDateTime, e.get(n).event.timezone)
1276
+ ]), e.append(a, g);
1277
+ },
1278
+ $$slots: { default: !0 }
1279
+ }), e.reset(c);
1280
+ var p = e.sibling(c, 2);
1281
+ ae(p, {
1282
+ size: "xs",
1283
+ color: "muted",
1284
+ class: "block mt-0.5",
1285
+ children: (a, x) => {
1286
+ e.next();
1287
+ var g = e.text();
1288
+ e.template_effect(() => e.set_text(g, e.get(n).event.venue.name)), e.append(a, g);
1289
+ },
1290
+ $$slots: { default: !0 }
1291
+ }), e.reset(w), e.reset(r);
1292
+ var h = e.sibling(r, 2);
1293
+ We(h, {
1294
+ get orderTotals() {
1295
+ return e.get(Q);
1296
+ },
1297
+ get labels() {
1298
+ return e.get(d);
1299
+ }
1300
+ }), e.reset(Oe), e.reset(xe);
1301
+ var N = e.sibling(xe, 2), J = e.child(N);
1302
+ {
1303
+ let a = e.derived(() => e.get(m) || !e.get(fe) && !e.get(ye));
1304
+ It(J, {
1305
+ get event() {
1306
+ return e.get(n).event;
1307
+ },
1308
+ get orderTotals() {
1309
+ return e.get(Q);
1310
+ },
1311
+ get isFreeOrder() {
1312
+ return e.get(fe);
1313
+ },
1314
+ onPlaceOrder: $e,
1315
+ get processing() {
1316
+ return e.get(a);
1317
+ },
1318
+ get labels() {
1319
+ return e.get(d);
1320
+ }
1321
+ });
1322
+ }
1323
+ e.reset(N), e.reset(Se), e.reset(Te);
1324
+ var ue = e.sibling(Te, 2), se = e.child(ue);
1325
+ {
1326
+ let a = e.derived(() => e.get(m) || !e.get(fe) && !e.get(ye));
1327
+ Ot(se, {
1328
+ get orderTotals() {
1329
+ return e.get(Q);
1330
+ },
1331
+ get isFreeOrder() {
1332
+ return e.get(fe);
1333
+ },
1334
+ onPlaceOrder: $e,
1335
+ get processing() {
1336
+ return e.get(a);
1337
+ },
1338
+ get labels() {
1339
+ return e.get(d);
1340
+ }
1341
+ });
1342
+ }
1343
+ e.reset(ue), e.reset(Ee);
1344
+ var ge = e.sibling(Ee, 2);
1345
+ {
1346
+ var Ne = (a) => {
1347
+ He(a, {
1348
+ open: !0,
1349
+ oncancel: () => e.set(_, !1),
1350
+ size: "sm",
1351
+ "aria-labelledby": "warning-modal-title",
1352
+ body: (S) => {
1353
+ var k = Mt(), M = e.child(k), z = e.child(M);
1354
+ Ke(z, { size: 32 }), e.reset(M);
1355
+ var A = e.sibling(M, 2), q = e.child(A, !0);
1356
+ e.reset(A);
1357
+ var L = e.sibling(A, 2), re = e.child(L, !0);
1358
+ e.reset(L);
1359
+ var X = e.sibling(L, 2);
1360
+ {
1361
+ var pe = (oe) => {
1362
+ var ie = Ft(), ze = e.child(ie, !0);
1363
+ e.reset(ie), e.template_effect((et) => e.set_text(ze, et), [
1364
+ () => (e.get(d).extensionsRemaining || "{count} extension{plural} remaining").replace("{count}", String(e.get(F))).replace("{plural}", e.get(F) === 1 ? "" : "s")
1365
+ ]), e.append(oe, ie);
1366
+ };
1367
+ e.if(X, (oe) => {
1368
+ e.get(b) && e.get(F) > 0 && oe(pe);
1369
+ });
1370
+ }
1371
+ e.reset(k), e.template_effect(
1372
+ (oe) => {
1373
+ e.set_text(q, e.get(d).sessionExpiringSoon || "Session expiring soon"), e.set_text(re, oe);
1374
+ },
1375
+ [
1376
+ () => (e.get(d).sessionExpiringSoonMessage || "Your checkout session will expire in {time}. Your selected tickets will be released back to inventory.").replace("{time}", e.get(ve))
1377
+ ]
1378
+ ), e.append(S, k);
1379
+ },
1380
+ footer: (S) => {
1381
+ var k = Bt(), M = e.child(k);
1382
+ {
1383
+ var z = (q) => {
1384
+ me(q, {
1385
+ variant: "default",
1386
+ size: "lg",
1387
+ class: "w-full",
1388
+ onclick: he,
1389
+ get disabled() {
1390
+ return e.get(V);
1391
+ },
1392
+ get loading() {
1393
+ return e.get(V);
1394
+ },
1395
+ children: (L, re) => {
1396
+ e.next();
1397
+ var X = e.text();
1398
+ e.template_effect(() => e.set_text(X, e.get(V) ? e.get(d).extendingSession || "Extending..." : e.get(d).continueCheckout || "Continue checkout")), e.append(L, X);
1399
+ },
1400
+ $$slots: { default: !0 }
1401
+ });
1402
+ }, A = (q) => {
1403
+ var L = Lt(), re = e.first_child(L);
1404
+ me(re, {
1405
+ variant: "default",
1406
+ size: "lg",
1407
+ class: "w-full",
1408
+ onclick: Le,
1409
+ children: (oe, ie) => {
1410
+ e.next();
1411
+ var ze = e.text();
1412
+ e.template_effect(() => e.set_text(ze, e.get(d).okIllHurry || "OK, I'll hurry")), e.append(oe, ze);
1413
+ },
1414
+ $$slots: { default: !0 }
1415
+ });
1416
+ var X = e.sibling(re, 2), pe = e.child(X, !0);
1417
+ e.reset(X), e.template_effect(() => e.set_text(pe, e.get(d).maxExtensionsReached || "Maximum extensions reached")), e.append(q, L);
1418
+ };
1419
+ e.if(M, (q) => {
1420
+ e.get(b) ? q(z) : q(A, !1);
1421
+ });
1422
+ }
1423
+ e.reset(k), e.append(S, k);
1424
+ },
1425
+ $$slots: { body: !0, footer: !0 }
1426
+ });
1427
+ };
1428
+ e.if(ge, (a) => {
1429
+ e.get(_) && a(Ne);
1430
+ });
1431
+ }
1432
+ var G = e.sibling(ge, 2);
1433
+ {
1434
+ var ne = (a) => {
1435
+ He(a, {
1436
+ open: !0,
1437
+ oncancel: () => e.set(o, !1),
1438
+ size: "sm",
1439
+ "aria-labelledby": "expired-modal-title",
1440
+ body: (S) => {
1441
+ var k = Ut(), M = e.child(k), z = e.child(M);
1442
+ lt(z, { size: 32 }), e.reset(M);
1443
+ var A = e.sibling(M, 2), q = e.child(A, !0);
1444
+ e.reset(A);
1445
+ var L = e.sibling(A, 2), re = e.child(L, !0);
1446
+ e.reset(L), e.reset(k), e.template_effect(() => {
1447
+ e.set_text(q, e.get(b) ? e.get(d).wantToKeepTickets || "Want to keep your tickets?" : e.get(d).sessionExpired || "Session expired"), e.set_text(re, e.get(b) ? e.get(d).sessionExpiredMessage || "Your checkout session has expired and your selected tickets have been released." : e.get(d).reservationTimedOut || "Your reservation has timed out. Please select your tickets again to continue.");
1448
+ }), e.append(S, k);
1449
+ },
1450
+ footer: (S) => {
1451
+ var k = Wt(), M = e.child(k);
1452
+ {
1453
+ var z = (q) => {
1454
+ var L = Vt(), re = e.first_child(L);
1455
+ me(re, {
1456
+ variant: "default",
1457
+ size: "lg",
1458
+ class: "w-full",
1459
+ onclick: he,
1460
+ get disabled() {
1461
+ return e.get(V);
1462
+ },
1463
+ get loading() {
1464
+ return e.get(V);
1465
+ },
1466
+ children: (pe, oe) => {
1467
+ e.next();
1468
+ var ie = e.text();
1469
+ e.template_effect(() => e.set_text(ie, e.get(V) ? e.get(d).extendingSession || "Extending..." : e.get(d).keepMyTickets || "Keep my tickets")), e.append(pe, ie);
1470
+ },
1471
+ $$slots: { default: !0 }
1472
+ });
1473
+ var X = e.sibling(re, 2);
1474
+ me(X, {
1475
+ variant: "alternative",
1476
+ size: "lg",
1477
+ class: "w-full",
1478
+ onclick: Ie,
1479
+ children: (pe, oe) => {
1480
+ e.next();
1481
+ var ie = e.text();
1482
+ e.template_effect(() => e.set_text(ie, e.get(d).selectTicketsAgain || "Select tickets again")), e.append(pe, ie);
1483
+ },
1484
+ $$slots: { default: !0 }
1485
+ }), e.append(q, L);
1486
+ }, A = (q) => {
1487
+ me(q, {
1488
+ variant: "default",
1489
+ size: "lg",
1490
+ class: "w-full",
1491
+ onclick: Ie,
1492
+ children: (L, re) => {
1493
+ e.next();
1494
+ var X = e.text();
1495
+ e.template_effect(() => e.set_text(X, e.get(d).selectTicketsAgain || "Select tickets again")), e.append(L, X);
1496
+ },
1497
+ $$slots: { default: !0 }
1498
+ });
1499
+ };
1500
+ e.if(M, (q) => {
1501
+ e.get(b) ? q(z) : q(A, !1);
1502
+ });
1503
+ }
1504
+ e.reset(k), e.append(S, k);
1505
+ },
1506
+ $$slots: { body: !0, footer: !0 }
1507
+ });
1508
+ };
1509
+ e.if(G, (a) => {
1510
+ e.get(o) && a(ne);
1511
+ });
1512
+ }
1513
+ e.reset(we), e.append(j, we), e.pop();
1514
+ }
1515
+ const ar = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1516
+ __proto__: null,
1517
+ default: jt
1518
+ }, Symbol.toStringTag, { value: "Module" }));
1519
+ export {
1520
+ jt as C,
1521
+ ar as a,
1522
+ Ve as b,
1523
+ ht as u
1524
+ };
1525
+ //# sourceMappingURL=Checkout-BsptqQJa.js.map