@getmicdrop/venue-calendar 4.0.80 → 4.0.81

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