@getmicdrop/venue-calendar 3.5.3 → 3.6.0
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.
- package/README.md +661 -661
- package/dist/CarouselView.legacy-DeWfW7JT.js +64 -0
- package/dist/CarouselView.legacy-DeWfW7JT.js.map +1 -0
- package/dist/{Checkout.legacy-Btt0uT61.js → Checkout.legacy-CJPThT4I.js} +180 -183
- package/dist/Checkout.legacy-CJPThT4I.js.map +1 -0
- package/dist/{CollectionView.legacy-Bxih-dA-.js → CollectionView.legacy-BG3g7XbI.js} +128 -127
- package/dist/CollectionView.legacy-BG3g7XbI.js.map +1 -0
- package/dist/FeaturedView.legacy-CALzP8EW.js +128 -0
- package/dist/FeaturedView.legacy-CALzP8EW.js.map +1 -0
- package/dist/GalleryView.legacy-DIhYvOQU.js +51 -0
- package/dist/GalleryView.legacy-DIhYvOQU.js.map +1 -0
- package/dist/GroupedListView.legacy-C9dQ_v_d.js +144 -0
- package/dist/GroupedListView.legacy-C9dQ_v_d.js.map +1 -0
- package/dist/{SeriesPage.legacy-Ka81Mn73.js → SeriesPage.legacy-hSI5Sm8W.js} +2 -2
- package/dist/SeriesPage.legacy-hSI5Sm8W.js.map +1 -0
- package/dist/Success.legacy-DEjngxhO.js +191 -0
- package/dist/Success.legacy-DEjngxhO.js.map +1 -0
- package/dist/{VenueCalendar-B5Y29ZJD.js → VenueCalendar-DvT1UOq-.js} +13786 -13474
- package/dist/VenueCalendar-DvT1UOq-.js.map +1 -0
- package/dist/api/api.cjs +1 -1
- package/dist/api/api.cjs.map +1 -1
- package/dist/api/api.mjs +278 -266
- package/dist/api/api.mjs.map +1 -1
- package/dist/api/types.d.ts +349 -349
- package/dist/colors-BZoMuXdh.js.map +1 -1
- package/dist/seo/seo.cjs +1 -1
- package/dist/seo/seo.cjs.map +1 -1
- package/dist/seo/seo.mjs +52 -40
- package/dist/seo/seo.mjs.map +1 -1
- package/dist/seo/types.d.ts +136 -135
- package/dist/types/index.d.ts +387 -387
- package/dist/venue-calendar.css +1 -1
- package/dist/venue-calendar.es.js +2 -2
- package/dist/venue-calendar.iife.js +42 -42
- package/dist/venue-calendar.iife.js.map +1 -1
- package/dist/venue-calendar.umd.js +42 -42
- package/dist/venue-calendar.umd.js.map +1 -1
- package/package.json +121 -112
- package/src/lib/theme.js +213 -209
- package/dist/CarouselView.legacy-CRHakGOL.js +0 -64
- package/dist/CarouselView.legacy-CRHakGOL.js.map +0 -1
- package/dist/Checkout.legacy-Btt0uT61.js.map +0 -1
- package/dist/CollectionView.legacy-Bxih-dA-.js.map +0 -1
- package/dist/FeaturedView.legacy-CVEXHJBx.js +0 -128
- package/dist/FeaturedView.legacy-CVEXHJBx.js.map +0 -1
- package/dist/GalleryView.legacy-Ci-IHtAe.js +0 -51
- package/dist/GalleryView.legacy-Ci-IHtAe.js.map +0 -1
- package/dist/GroupedListView.legacy-qisy7BOS.js +0 -144
- package/dist/GroupedListView.legacy-qisy7BOS.js.map +0 -1
- package/dist/SeriesPage.legacy-Ka81Mn73.js.map +0 -1
- package/dist/Success.legacy-D72O08IB.js +0 -191
- package/dist/Success.legacy-D72O08IB.js.map +0 -1
- package/dist/VenueCalendar-B5Y29ZJD.js.map +0 -1
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import "svelte/internal/disclose-version";
|
|
2
|
+
import * as e from "svelte/internal/client";
|
|
3
|
+
import { onMount as ne } from "svelte";
|
|
4
|
+
import { t as ce, r as H, s as me, w as ge } from "./VenueCalendar-DvT1UOq-.js";
|
|
5
|
+
import { A as r } from "./colors-BZoMuXdh.js";
|
|
6
|
+
var pe = e.from_html('<div class="confetti svelte-g1e40p"></div>'), fe = e.from_html('<div class="confetti-container svelte-g1e40p" aria-hidden="true"></div>'), ue = e.from_html('<div class="detail-row svelte-g1e40p"><dt class="detail-label svelte-g1e40p">Order ID</dt> <dd class="detail-value order-id svelte-g1e40p"> </dd></div>'), _e = e.from_html('<div class="detail-row svelte-g1e40p"><dt class="detail-label svelte-g1e40p">Event</dt> <dd class="detail-value event-name svelte-g1e40p"> </dd></div>'), he = e.from_html('<div class="detail-row svelte-g1e40p"><dt class="detail-label svelte-g1e40p">When</dt> <dd class="detail-value svelte-g1e40p"><time class="svelte-g1e40p"> </time></dd></div>'), be = e.from_html('<div class="detail-row svelte-g1e40p"><dt class="detail-label svelte-g1e40p">Where</dt> <dd class="detail-value svelte-g1e40p"> </dd></div>'), ke = e.from_html('<a class="nav-link secondary svelte-g1e40p">Back to event</a>'), ye = e.from_html('<a class="nav-link primary svelte-g1e40p">Browse more events</a>'), we = e.from_html('<nav aria-label="Next steps"><!> <!></nav>'), xe = e.from_html(`<div class="success-container svelte-g1e40p" role="main" aria-labelledby="success-title"><!> <div class="content-wrapper svelte-g1e40p"><div><div class="machine-slot svelte-g1e40p"><div class="slot-inner svelte-g1e40p"></div></div> <div><div class="ticket-content svelte-g1e40p"><div class="ticket-header svelte-g1e40p"><div class="success-badge svelte-g1e40p" aria-hidden="true"><!></div> <h1 id="success-title" class="success-title svelte-g1e40p">You're all set!</h1> <p class="success-subtitle svelte-g1e40p">Your tickets have been confirmed</p></div> <div class="ticket-divider svelte-g1e40p"><div class="divider-notch left svelte-g1e40p"></div> <div class="divider-line svelte-g1e40p"></div> <div class="divider-notch right svelte-g1e40p"></div></div> <dl aria-label="Order details"><div class="detail-row svelte-g1e40p"><dt class="detail-label svelte-g1e40p">Email</dt> <dd class="detail-value svelte-g1e40p"> </dd></div> <!> <!> <!> <!></dl> <div class="ticket-footer svelte-g1e40p"><p class="footer-text svelte-g1e40p">Check your email for your tickets</p></div></div> <div class="ticket-stub svelte-g1e40p"></div></div></div> <!></div></div>`);
|
|
7
|
+
function Le(J, f) {
|
|
8
|
+
e.push(f, !0);
|
|
9
|
+
let O = e.prop(f, "data", 19, () => ({})), h = e.prop(f, "eventUrl", 3, ""), b = e.prop(f, "browseUrl", 3, "/");
|
|
10
|
+
const {
|
|
11
|
+
organizationID: Ee,
|
|
12
|
+
orgSlug: Te,
|
|
13
|
+
slug: De,
|
|
14
|
+
event: k,
|
|
15
|
+
orderId: K,
|
|
16
|
+
customerEmail: y,
|
|
17
|
+
eventName: w,
|
|
18
|
+
eventDateTime: x,
|
|
19
|
+
eventLocation: E
|
|
20
|
+
} = O() || {};
|
|
21
|
+
let i = null;
|
|
22
|
+
if (k)
|
|
23
|
+
try {
|
|
24
|
+
i = ce(k);
|
|
25
|
+
} catch (t) {
|
|
26
|
+
console.warn("transformEvent failed in Success component:", t), i = k;
|
|
27
|
+
}
|
|
28
|
+
let Q = null, u = e.state(""), o = e.state(""), n = e.state(""), c = e.state(""), m = e.state(""), g = K || O()?.orderId || "", U = e.state(!1), T = e.state(!1), D = e.state(!1);
|
|
29
|
+
function C(t) {
|
|
30
|
+
if (!t) return "";
|
|
31
|
+
const a = i?.timeZone || "UTC";
|
|
32
|
+
return ge(t, a);
|
|
33
|
+
}
|
|
34
|
+
const A = [
|
|
35
|
+
r.coral,
|
|
36
|
+
r.sky.light,
|
|
37
|
+
r.sky[400],
|
|
38
|
+
r.mint[600],
|
|
39
|
+
r.yellow[300],
|
|
40
|
+
r.plum,
|
|
41
|
+
r.mint[500],
|
|
42
|
+
r.yellow[500]
|
|
43
|
+
], R = Array.from({ length: 50 }, (t, a) => ({
|
|
44
|
+
id: a,
|
|
45
|
+
color: A[Math.floor(Math.random() * A.length)],
|
|
46
|
+
left: Math.random() * 100,
|
|
47
|
+
delay: Math.random() * 0.5,
|
|
48
|
+
duration: 2 + Math.random() * 2,
|
|
49
|
+
size: 6 + Math.random() * 8,
|
|
50
|
+
rotation: Math.random() * 360
|
|
51
|
+
}));
|
|
52
|
+
ne(async () => {
|
|
53
|
+
setTimeout(
|
|
54
|
+
() => {
|
|
55
|
+
e.set(U, !0);
|
|
56
|
+
},
|
|
57
|
+
100
|
|
58
|
+
), setTimeout(
|
|
59
|
+
() => {
|
|
60
|
+
e.set(T, !0);
|
|
61
|
+
},
|
|
62
|
+
300
|
|
63
|
+
), setTimeout(
|
|
64
|
+
() => {
|
|
65
|
+
e.set(D, !0);
|
|
66
|
+
},
|
|
67
|
+
800
|
|
68
|
+
);
|
|
69
|
+
try {
|
|
70
|
+
let t = null;
|
|
71
|
+
try {
|
|
72
|
+
typeof H == "function" && g && (t = await H(g));
|
|
73
|
+
} catch (a) {
|
|
74
|
+
console.warn("getOrder failed in Success component, falling back to provided data:", a);
|
|
75
|
+
}
|
|
76
|
+
t ? (Q = t, e.set(u, t.customerEmail || y || "", !0), e.set(o, t.id || g, !0), e.set(n, t.eventName || i?.name || w || "", !0), e.set(c, C(t.eventDateTime || i?.startDateTime || x), !0), e.set(m, t.eventLocation || i?.location || E || "", !0)) : (e.set(u, y || "", !0), e.set(o, g, !0), e.set(n, w || i?.name || "", !0), e.set(c, C(x || i?.startDateTime), !0), e.set(m, E || i?.location || "", !0));
|
|
77
|
+
} catch (t) {
|
|
78
|
+
console.error("Error fetching order data:", t), t.message, e.set(u, y || "your-email@example.com", !0), e.set(o, g, !0), e.set(n, i?.name || w || "", !0), e.set(c, C(i?.startDateTime || x), !0), e.set(m, i?.location || E || "", !0);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
var M = xe(), S = e.child(M);
|
|
82
|
+
{
|
|
83
|
+
var V = (t) => {
|
|
84
|
+
var a = fe();
|
|
85
|
+
e.each(a, 21, () => R, (l) => l.id, (l, s) => {
|
|
86
|
+
var v = pe();
|
|
87
|
+
e.template_effect(() => e.set_style(v, `
|
|
88
|
+
left: ${e.get(s).left ?? ""}%;
|
|
89
|
+
background-color: ${e.get(s).color ?? ""};
|
|
90
|
+
animation-delay: ${e.get(s).delay ?? ""}s;
|
|
91
|
+
animation-duration: ${e.get(s).duration ?? ""}s;
|
|
92
|
+
width: ${e.get(s).size ?? ""}px;
|
|
93
|
+
height: ${e.get(s).size ?? ""}px;
|
|
94
|
+
transform: rotate(${e.get(s).rotation ?? ""}deg);
|
|
95
|
+
`)), e.append(l, v);
|
|
96
|
+
}), e.reset(a), e.append(t, a);
|
|
97
|
+
};
|
|
98
|
+
e.if(S, (t) => {
|
|
99
|
+
e.get(U) && t(V);
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
var $ = e.sibling(S, 2), _ = e.child($);
|
|
103
|
+
let B;
|
|
104
|
+
var I = e.sibling(e.child(_), 2);
|
|
105
|
+
let W;
|
|
106
|
+
var Y = e.child(I), z = e.child(Y), F = e.child(z), X = e.child(F);
|
|
107
|
+
me(X, { class: "check-icon" }), e.reset(F), e.next(4), e.reset(z);
|
|
108
|
+
var L = e.sibling(z, 4);
|
|
109
|
+
let P;
|
|
110
|
+
var N = e.child(L), Z = e.sibling(e.child(N), 2), ee = e.child(Z, !0);
|
|
111
|
+
e.reset(Z), e.reset(N);
|
|
112
|
+
var j = e.sibling(N, 2);
|
|
113
|
+
{
|
|
114
|
+
var te = (t) => {
|
|
115
|
+
var a = ue(), l = e.sibling(e.child(a), 2), s = e.child(l);
|
|
116
|
+
e.reset(l), e.reset(a), e.template_effect(() => e.set_text(s, `#${e.get(o) ?? ""}`)), e.append(t, a);
|
|
117
|
+
};
|
|
118
|
+
e.if(j, (t) => {
|
|
119
|
+
e.get(o) && t(te);
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
var q = e.sibling(j, 2);
|
|
123
|
+
{
|
|
124
|
+
var ae = (t) => {
|
|
125
|
+
var a = _e(), l = e.sibling(e.child(a), 2), s = e.child(l, !0);
|
|
126
|
+
e.reset(l), e.reset(a), e.template_effect(() => e.set_text(s, e.get(n))), e.append(t, a);
|
|
127
|
+
};
|
|
128
|
+
e.if(q, (t) => {
|
|
129
|
+
e.get(n) && t(ae);
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
var G = e.sibling(q, 2);
|
|
133
|
+
{
|
|
134
|
+
var se = (t) => {
|
|
135
|
+
var a = he(), l = e.sibling(e.child(a), 2), s = e.child(l), v = e.child(s, !0);
|
|
136
|
+
e.reset(s), e.reset(l), e.reset(a), e.template_effect(() => e.set_text(v, e.get(c))), e.append(t, a);
|
|
137
|
+
};
|
|
138
|
+
e.if(G, (t) => {
|
|
139
|
+
e.get(c) && t(se);
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
var le = e.sibling(G, 2);
|
|
143
|
+
{
|
|
144
|
+
var ie = (t) => {
|
|
145
|
+
var a = be(), l = e.sibling(e.child(a), 2), s = e.child(l, !0);
|
|
146
|
+
e.reset(l), e.reset(a), e.template_effect(() => e.set_text(s, e.get(m))), e.append(t, a);
|
|
147
|
+
};
|
|
148
|
+
e.if(le, (t) => {
|
|
149
|
+
e.get(m) && t(ie);
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
e.reset(L), e.next(2), e.reset(Y), e.next(2), e.reset(I), e.reset(_);
|
|
153
|
+
var re = e.sibling(_, 2);
|
|
154
|
+
{
|
|
155
|
+
var de = (t) => {
|
|
156
|
+
var a = we();
|
|
157
|
+
let l;
|
|
158
|
+
var s = e.child(a);
|
|
159
|
+
{
|
|
160
|
+
var v = (d) => {
|
|
161
|
+
var p = ke();
|
|
162
|
+
e.template_effect(() => e.set_attribute(p, "href", h())), e.append(d, p);
|
|
163
|
+
};
|
|
164
|
+
e.if(s, (d) => {
|
|
165
|
+
h() && d(v);
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
var ve = e.sibling(s, 2);
|
|
169
|
+
{
|
|
170
|
+
var oe = (d) => {
|
|
171
|
+
var p = ye();
|
|
172
|
+
e.template_effect(() => e.set_attribute(p, "href", b())), e.append(d, p);
|
|
173
|
+
};
|
|
174
|
+
e.if(ve, (d) => {
|
|
175
|
+
b() && d(oe);
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
e.reset(a), e.template_effect(() => l = e.set_class(a, 1, "nav-ctas svelte-g1e40p", null, l, { "fade-in": e.get(D) })), e.append(t, a);
|
|
179
|
+
};
|
|
180
|
+
e.if(re, (t) => {
|
|
181
|
+
(h() || b()) && t(de);
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
e.reset($), e.reset(M), e.template_effect(() => {
|
|
185
|
+
B = e.set_class(_, 1, "ticket-machine svelte-g1e40p", null, B, { animate: e.get(T) }), W = e.set_class(I, 1, "ticket svelte-g1e40p", null, W, { "slide-out": e.get(T) }), P = e.set_class(L, 1, "ticket-details svelte-g1e40p", null, P, { "fade-in": e.get(D) }), e.set_text(ee, e.get(u) || "Loading...");
|
|
186
|
+
}), e.append(J, M), e.pop();
|
|
187
|
+
}
|
|
188
|
+
export {
|
|
189
|
+
Le as default
|
|
190
|
+
};
|
|
191
|
+
//# sourceMappingURL=Success.legacy-DEjngxhO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Success.legacy-DEjngxhO.js","sources":["../src/components/Views/Success.legacy.svelte"],"sourcesContent":["<script>\n import { onMount } from \"svelte\";\n import { transformEvent, getOrder } from \"$lib/utils/utils.js\";\n import { formatConfirmationDateTime } from \"$lib/utils/datetime.js\";\n import { CheckmarkFilled } from \"carbon-icons-svelte\";\n import { ACCENT, DARK } from \"$lib/constants/colors.ts\";\n\n let {\n data = {},\n eventUrl = '',\n browseUrl = '/',\n } = $props();\n\n const {\n organizationID,\n orgSlug,\n slug,\n event: rawEvent,\n orderId: providedOrderId,\n customerEmail: providedCustomerEmail,\n eventName: providedEventName,\n eventDateTime: providedEventDateTime,\n eventLocation: providedEventLocation,\n } = data || {};\n\n let event = null;\n if (rawEvent) {\n try {\n event = transformEvent(rawEvent);\n } catch (e) {\n console.warn(\"transformEvent failed in Success component:\", e);\n event = rawEvent;\n }\n }\n\n let order = null;\n let error = null;\n let Email = $state(\"\");\n let id = $state(\"\");\n let name = $state(\"\");\n let time = $state(\"\");\n let Location = $state(\"\");\n let orderId = providedOrderId || data?.orderId || \"\";\n\n // Animation states\n let showConfetti = $state(false);\n let showTicket = $state(false);\n let showDetails = $state(false);\n\n function formatDateTime(dateTimeString) {\n if (!dateTimeString) return \"\";\n // Use event timezone if available, otherwise fall back to UTC\n const tz = event?.timeZone || 'UTC';\n return formatConfirmationDateTime(dateTimeString, tz);\n }\n\n // Generate confetti particles\n const confettiColors = [\n ACCENT.coral,\n ACCENT.sky.light,\n ACCENT.sky[400],\n ACCENT.mint[600],\n ACCENT.yellow[300],\n ACCENT.plum,\n ACCENT.mint[500],\n ACCENT.yellow[500]\n ];\n const confettiParticles = Array.from({ length: 50 }, (_, i) => ({\n id: i,\n color: confettiColors[Math.floor(Math.random() * confettiColors.length)],\n left: Math.random() * 100,\n delay: Math.random() * 0.5,\n duration: 2 + Math.random() * 2,\n size: 6 + Math.random() * 8,\n rotation: Math.random() * 360\n }));\n\n onMount(async () => {\n // Start animations\n setTimeout(() => {\n showConfetti = true;\n }, 100);\n\n setTimeout(() => {\n showTicket = true;\n }, 300);\n\n setTimeout(() => {\n showDetails = true;\n }, 800);\n\n try {\n let orderData = null;\n try {\n if (typeof getOrder === \"function\" && orderId) {\n orderData = await getOrder(orderId);\n }\n } catch (e) {\n console.warn(\n \"getOrder failed in Success component, falling back to provided data:\",\n e\n );\n }\n\n if (orderData) {\n order = orderData;\n Email = orderData.customerEmail || providedCustomerEmail || \"\";\n id = orderData.id || orderId;\n name = orderData.eventName || event?.name || providedEventName || \"\";\n time = formatDateTime(\n orderData.eventDateTime ||\n event?.startDateTime ||\n providedEventDateTime\n );\n Location =\n orderData.eventLocation ||\n event?.location ||\n providedEventLocation ||\n \"\";\n } else {\n Email = providedCustomerEmail || \"\";\n id = orderId;\n name = providedEventName || event?.name || \"\";\n time = formatDateTime(providedEventDateTime || event?.startDateTime);\n Location = providedEventLocation || event?.location || \"\";\n }\n } catch (err) {\n console.error(\"Error fetching order data:\", err);\n error = err.message;\n Email = providedCustomerEmail || \"your-email@example.com\";\n id = orderId;\n name = event?.name || providedEventName || \"\";\n time = formatDateTime(event?.startDateTime || providedEventDateTime);\n Location = event?.location || providedEventLocation || \"\";\n }\n });\n</script>\n\n<div class=\"success-container\" role=\"main\" aria-labelledby=\"success-title\">\n <!-- Confetti -->\n {#if showConfetti}\n <div class=\"confetti-container\" aria-hidden=\"true\">\n {#each confettiParticles as particle (particle.id)}\n <div\n class=\"confetti\"\n style=\"\n left: {particle.left}%;\n background-color: {particle.color};\n animation-delay: {particle.delay}s;\n animation-duration: {particle.duration}s;\n width: {particle.size}px;\n height: {particle.size}px;\n transform: rotate({particle.rotation}deg);\n \"\n ></div>\n {/each}\n </div>\n {/if}\n\n <div class=\"content-wrapper\">\n <!-- Ticket Machine Animation -->\n <div class=\"ticket-machine\" class:animate={showTicket}>\n <!-- Machine slot -->\n <div class=\"machine-slot\">\n <div class=\"slot-inner\"></div>\n </div>\n\n <!-- Ticket coming out -->\n <div class=\"ticket\" class:slide-out={showTicket}>\n <div class=\"ticket-content\">\n <div class=\"ticket-header\">\n <div class=\"success-badge\" aria-hidden=\"true\">\n <CheckmarkFilled class=\"check-icon\" />\n </div>\n <h1 id=\"success-title\" class=\"success-title\">You're all set!</h1>\n <p class=\"success-subtitle\">Your tickets have been confirmed</p>\n </div>\n\n <div class=\"ticket-divider\">\n <div class=\"divider-notch left\"></div>\n <div class=\"divider-line\"></div>\n <div class=\"divider-notch right\"></div>\n </div>\n\n <dl class=\"ticket-details\" class:fade-in={showDetails} aria-label=\"Order details\">\n <div class=\"detail-row\">\n <dt class=\"detail-label\">Email</dt>\n <dd class=\"detail-value\">{Email || 'Loading...'}</dd>\n </div>\n\n {#if id}\n <div class=\"detail-row\">\n <dt class=\"detail-label\">Order ID</dt>\n <dd class=\"detail-value order-id\">#{id}</dd>\n </div>\n {/if}\n\n {#if name}\n <div class=\"detail-row\">\n <dt class=\"detail-label\">Event</dt>\n <dd class=\"detail-value event-name\">{name}</dd>\n </div>\n {/if}\n\n {#if time}\n <div class=\"detail-row\">\n <dt class=\"detail-label\">When</dt>\n <dd class=\"detail-value\"><time>{time}</time></dd>\n </div>\n {/if}\n\n {#if Location}\n <div class=\"detail-row\">\n <dt class=\"detail-label\">Where</dt>\n <dd class=\"detail-value\">{Location}</dd>\n </div>\n {/if}\n </dl>\n\n <div class=\"ticket-footer\">\n <p class=\"footer-text\">Check your email for your tickets</p>\n </div>\n </div>\n\n <!-- Ticket stub pattern -->\n <div class=\"ticket-stub\"></div>\n </div>\n </div>\n\n <!-- Navigation CTAs -->\n {#if eventUrl || browseUrl}\n <nav class=\"nav-ctas\" class:fade-in={showDetails} aria-label=\"Next steps\">\n {#if eventUrl}\n <a href={eventUrl} class=\"nav-link secondary\">Back to event</a>\n {/if}\n {#if browseUrl}\n <a href={browseUrl} class=\"nav-link primary\">Browse more events</a>\n {/if}\n </nav>\n {/if}\n </div>\n</div>\n\n<style>\n .success-container {\n position: relative;\n min-height: 100vh;\n overflow: hidden;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.25rem;\n background: linear-gradient(180deg, hsl(var(--bg-primary)) 0%, hsl(var(--bg-secondary)) 100%);\n \n &:where(.dark, .dark *) {\n background: linear-gradient(180deg, hsl(var(--bg-primary)) 0%, hsl(var(--bg-primary)) 100%);\n }\n }\n\n /* Confetti */\n .confetti-container {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n pointer-events: none;\n overflow: hidden;\n }\n\n .confetti {\n position: absolute;\n top: -20px;\n border-radius: 2px;\n animation: confetti-fall linear forwards;\n }\n\n @keyframes confetti-fall {\n 0% {\n transform: translateY(0) rotate(0deg);\n opacity: 1;\n }\n 100% {\n transform: translateY(100vh) rotate(720deg);\n opacity: 0;\n }\n }\n\n /* Content wrapper */\n .content-wrapper {\n position: relative;\n z-index: 10;\n width: 100%;\n max-width: 380px;\n }\n\n /* Ticket machine */\n .ticket-machine {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n\n .machine-slot {\n width: 100%;\n height: 16px;\n background: linear-gradient(180deg, hsl(var(--muted)) 0%, hsl(var(--bg-primary)) 100%);\n border-radius: 8px 8px 0 0;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 4px 12px color-mix(in srgb, black 20%, transparent);\n position: relative;\n z-index: 5;\n }\n\n .slot-inner {\n width: 80%;\n height: 4px;\n background: hsl(var(--bg-primary));\n border-radius: 2px;\n }\n\n /* Ticket */\n .ticket {\n width: 100%;\n background: hsl(var(--bg-primary));\n border-radius: 0 0 16px 16px;\n box-shadow: 0 8px 32px color-mix(in srgb, black 12%, transparent);\n overflow: hidden;\n transform: translateY(-100%);\n opacity: 0;\n transition: transform 0.8s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s ease;\n }\n\n .ticket.slide-out {\n transform: translateY(0);\n opacity: 1;\n }\n\n .ticket-content {\n padding: 32px 24px 24px;\n }\n\n .ticket-header {\n text-align: center;\n margin-bottom: 24px;\n }\n\n .success-badge {\n width: 64px;\n height: 64px;\n background: linear-gradient(135deg, hsl(var(--accent-success)) 0%, hsl(var(--accent-success)) 100%);\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0 auto 16px;\n animation: badge-pop 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.5s both;\n }\n\n @keyframes badge-pop {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n }\n\n .success-badge :global(.check-icon) {\n width: 32px;\n height: 32px;\n color: hsl(var(--bg-primary));\n }\n\n .success-title {\n font-size: 1.5rem;\n line-height: 2rem;\n font-weight: 600;\n color: hsl(var(--text-primary));\n margin-bottom: 0.5rem;\n }\n\n .success-subtitle {\n font-size: 0.875rem;\n line-height: 1.25rem;\n color: hsl(var(--text-secondary));\n margin: 0;\n }\n\n /* Ticket divider */\n .ticket-divider {\n position: relative;\n display: flex;\n align-items: center;\n margin: 0 -24px 24px;\n padding: 0 24px;\n }\n\n .divider-notch {\n width: 1rem;\n height: 1rem;\n border-radius: 9999px;\n position: absolute;\n background-color: hsl(var(--bg-primary));\n }\n\n .divider-notch.left {\n left: -8px;\n }\n\n .divider-notch.right {\n right: -8px;\n }\n\n .divider-line {\n flex: 1 1 0%;\n height: 0.125rem;\n background: repeating-linear-gradient(\n 90deg,\n hsl(var(--stroke-primary)) 0,\n hsl(var(--stroke-primary)) 8px,\n transparent 8px,\n transparent 16px\n );\n \n &:where(.dark, .dark *) {\n background: repeating-linear-gradient(\n 90deg,\n hsl(var(--text-secondary)) 0,\n hsl(var(--text-secondary)) 8px,\n transparent 8px,\n transparent 16px\n );\n }\n }\n\n /* Ticket details */\n .ticket-details {\n opacity: 0;\n transform: translateY(10px);\n transition: opacity 0.4s ease, transform 0.4s ease;\n }\n\n .ticket-details.fade-in {\n opacity: 1;\n transform: translateY(0);\n }\n\n .detail-row {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n border-bottom: 1px solid hsl(var(--stroke-primary) / 0.5);\n }\n\n .detail-row:last-child {\n border-bottom: 0;\n }\n\n .detail-label {\n font-size: 0.75rem;\n line-height: 1rem;\n font-weight: 600;\n color: hsl(var(--text-tertiary));\n text-transform: uppercase;\n letter-spacing: 0.025em;\n }\n\n .detail-value {\n font-size: 0.875rem;\n line-height: 1.25rem;\n font-weight: 500;\n color: hsl(var(--text-primary));\n overflow-wrap: break-word;\n }\n\n .detail-value.order-id {\n color: hsl(var(--brand-primary));\n font-family: 'SF Mono', 'Consolas', monospace;\n }\n\n .detail-value.event-name {\n font-size: 1rem;\n line-height: 1.5rem;\n font-weight: 600;\n }\n\n /* Ticket footer */\n .ticket-footer {\n margin-top: 1.5rem;\n padding: 1rem;\n border-radius: 0.5rem;\n text-align: center;\n background-color: hsl(var(--bg-secondary) / 0.5);\n }\n\n .footer-text {\n font-size: 0.875rem;\n line-height: 1.25rem;\n color: hsl(var(--text-secondary));\n margin: 0;\n }\n\n /* Ticket stub pattern */\n .ticket-stub {\n height: 1.5rem;\n background: linear-gradient(\n 90deg,\n transparent 0,\n transparent 8px,\n hsl(var(--stroke-primary) / 0.3) 8px,\n hsl(var(--stroke-primary) / 0.3) 16px\n );\n background-size: 16px 100%;\n }\n\n /* Navigation CTAs */\n .nav-ctas {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n margin-top: 1.5rem;\n opacity: 0;\n transform: translateY(10px);\n transition: opacity 0.4s ease 0.2s, transform 0.4s ease 0.2s;\n }\n\n .nav-ctas.fade-in {\n opacity: 1;\n transform: translateY(0);\n }\n\n .nav-link {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0.75rem 1rem;\n border-radius: 0.5rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n font-weight: 600;\n text-decoration: none;\n transition: background-color 0.15s, color 0.15s;\n }\n\n .nav-link.primary {\n background: hsl(var(--brand-primary, 220 90% 56%));\n color: hsl(var(--text-on-primary, 0 0% 100%));\n }\n\n .nav-link.primary:hover {\n filter: brightness(0.95);\n }\n\n .nav-link.secondary {\n background-color: hsl(var(--bg-tertiary));\n color: hsl(var(--text-secondary));\n }\n\n .nav-link.secondary:hover {\n background-color: hsl(var(--bg-quaternary));\n }\n\n /* Responsive */\n @media (max-width: 480px) {\n .success-container {\n padding: 16px;\n }\n\n .ticket-content {\n padding: 24px 20px 20px;\n }\n\n .success-title {\n font-size: 20px;\n }\n\n .success-badge {\n width: 56px;\n height: 56px;\n }\n\n .success-badge :global(.check-icon) {\n width: 28px;\n height: 28px;\n }\n }\n</style>\n"],"names":["data","$","$$props","eventUrl","browseUrl","organizationID","orgSlug","slug","rawEvent","providedOrderId","providedCustomerEmail","providedEventName","providedEventDateTime","providedEventLocation","event","transformEvent","e","order","Email","id","name","time","Location","orderId","showConfetti","showTicket","showDetails","formatDateTime","dateTimeString","tz","formatConfirmationDateTime","confettiColors","ACCENT","confettiParticles","_","i","onMount","orderData","getOrder","err","div","root","div_1","root_1","particle","$$anchor","div_2","root_2","$$render","consequent","div_3","node","div_4","div_5","div_6","div_7","div_8","CheckmarkFilled","node_1","dl","div_9","dd","div_10","root_3","dd_1","consequent_1","div_11","root_4","dd_2","consequent_2","div_12","root_5","dd_3","time_1","consequent_3","div_13","root_6","dd_4","consequent_4","nav","root_7","a","root_8","consequent_5","a_1","root_9","consequent_6","classes_3","consequent_7","classes","classes_1","classes_2","text"],"mappings":"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"}
|