@getmicdrop/venue-calendar 3.5.1 → 3.5.2
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-Cl3xu_XU.js → CarouselView.legacy-CRHakGOL.js} +2 -2
- package/dist/CarouselView.legacy-CRHakGOL.js.map +1 -0
- package/dist/{Checkout.legacy-DlbPyhUV.js → Checkout.legacy-Btt0uT61.js} +2 -2
- package/dist/Checkout.legacy-Btt0uT61.js.map +1 -0
- package/dist/{CollectionView.legacy-Bfp-WKvt.js → CollectionView.legacy-Bxih-dA-.js} +2 -2
- package/dist/CollectionView.legacy-Bxih-dA-.js.map +1 -0
- package/dist/{FeaturedView.legacy-Bxh7UmRc.js → FeaturedView.legacy-CVEXHJBx.js} +2 -2
- package/dist/FeaturedView.legacy-CVEXHJBx.js.map +1 -0
- package/dist/{GalleryView.legacy-BJZHlxYV.js → GalleryView.legacy-Ci-IHtAe.js} +2 -2
- package/dist/GalleryView.legacy-Ci-IHtAe.js.map +1 -0
- package/dist/{GroupedListView.legacy-Db4vuzE3.js → GroupedListView.legacy-qisy7BOS.js} +2 -2
- package/dist/GroupedListView.legacy-qisy7BOS.js.map +1 -0
- package/dist/{SeriesPage.legacy-CEJrQrKV.js → SeriesPage.legacy-Ka81Mn73.js} +2 -2
- package/dist/SeriesPage.legacy-Ka81Mn73.js.map +1 -0
- package/dist/{Success.legacy-yuCk2lyi.js → Success.legacy-D72O08IB.js} +2 -2
- package/dist/Success.legacy-D72O08IB.js.map +1 -0
- package/dist/{VenueCalendar-B419EPE7.js → VenueCalendar-B5Y29ZJD.js} +10460 -10385
- package/dist/VenueCalendar-B5Y29ZJD.js.map +1 -0
- package/dist/api/api.cjs +1 -1
- package/dist/api/api.cjs.map +1 -1
- package/dist/api/api.mjs +117 -120
- package/dist/api/api.mjs.map +1 -1
- package/dist/api/client.d.ts +1 -0
- package/dist/api/orders.d.ts +2 -1
- package/dist/api/types.d.ts +349 -349
- package/dist/colors-BZoMuXdh.js.map +1 -1
- package/dist/seo/seo.cjs.map +1 -1
- package/dist/seo/seo.mjs.map +1 -1
- package/dist/seo/types.d.ts +135 -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 +38 -38
- package/dist/venue-calendar.iife.js.map +1 -1
- package/dist/venue-calendar.umd.js +38 -38
- package/dist/venue-calendar.umd.js.map +1 -1
- package/package.json +112 -112
- package/src/lib/theme.js +209 -209
- package/dist/CarouselView.legacy-Cl3xu_XU.js.map +0 -1
- package/dist/Checkout.legacy-DlbPyhUV.js.map +0 -1
- package/dist/CollectionView.legacy-Bfp-WKvt.js.map +0 -1
- package/dist/FeaturedView.legacy-Bxh7UmRc.js.map +0 -1
- package/dist/GalleryView.legacy-BJZHlxYV.js.map +0 -1
- package/dist/GroupedListView.legacy-Db4vuzE3.js.map +0 -1
- package/dist/SeriesPage.legacy-CEJrQrKV.js.map +0 -1
- package/dist/Success.legacy-yuCk2lyi.js.map +0 -1
- package/dist/VenueCalendar-B419EPE7.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SeriesPage.legacy-Ka81Mn73.js","sources":["../src/components/Views/SeriesPage.legacy.svelte"],"sourcesContent":["<script>\n import { getImageUrl } from '$lib/utils/utils.js';\n import { formatEventDate, formatEventTime, formatTimeRange } from '$lib/utils/datetime.js';\n import { PLACEHOLDER_IMAGE } from '$lib/utils/constants.js';\n\n let {\n series,\n onNavigateToOccurrence,\n } = $props();\n\n let imageLoaded = $state(false);\n\n let seriesImage = $derived(\n series?.image\n ? getImageUrl(series.image)\n : PLACEHOLDER_IMAGE\n );\n\n let tz = $derived(series?.timeZone || 'America/Los_Angeles');\n\n function formatDate(iso) {\n return formatEventDate(iso, tz);\n }\n\n function formatTime(iso) {\n return formatEventTime(iso, tz);\n }\n\n function handleOccurrenceClick(occurrence) {\n if (!occurrence.ctaState?.disabled && onNavigateToOccurrence) {\n onNavigateToOccurrence(occurrence.id, occurrence.slug || '', occurrence.name || '');\n }\n }\n</script>\n\n{#if series}\n <div class=\"series-page\">\n <!-- Hero Image -->\n <div class=\"hero\">\n <div class=\"hero-skeleton\" class:hidden={imageLoaded}></div>\n <img\n src={seriesImage}\n alt={series.title}\n class=\"hero-image\"\n onload={() => (imageLoaded = true)}\n />\n <div class=\"hero-overlay\">\n <div class=\"hero-content\">\n <span class=\"series-badge\">Recurring Event</span>\n <h1 class=\"series-title\">{series.title}</h1>\n <div class=\"series-venue\">\n <span>{series.venue?.name}</span>\n {#if series.venue?.googleLocationNameCache}\n <span class=\"venue-separator\">·</span>\n <span class=\"venue-location\">{series.venue.googleLocationNameCache}</span>\n {/if}\n </div>\n </div>\n </div>\n </div>\n\n <!-- Content Grid -->\n <div class=\"content-grid\">\n <!-- Main Column -->\n <div class=\"main-column\">\n <!-- About Section -->\n <section class=\"section\">\n <h2 class=\"section-heading\">About this Series</h2>\n {#if series.eventSummary}\n <p class=\"series-summary\">{series.eventSummary}</p>\n {/if}\n {#if series.description}\n <div class=\"series-description\">{series.description}</div>\n {/if}\n </section>\n\n <!-- Upcoming Dates -->\n <section class=\"section\">\n <div class=\"dates-header\">\n <h2 class=\"section-heading\">Upcoming Dates</h2>\n <span class=\"dates-count\">{series.occurrences?.length || 0} events</span>\n </div>\n\n {#if !series.occurrences?.length}\n <div class=\"empty-dates\">\n <p class=\"empty-text\">No upcoming dates scheduled at this time.</p>\n <p class=\"empty-subtext\">Check back soon for new announcements.</p>\n </div>\n {:else}\n <div class=\"dates-list\">\n {#each series.occurrences as occurrence}\n <div class=\"occurrence-card\">\n <div class=\"occurrence-info\">\n <div class=\"occurrence-date\">{formatDate(occurrence.startDateTime)}</div>\n <div class=\"occurrence-time\">\n {formatTime(occurrence.startDateTime)} - {formatTime(occurrence.endDateTime)}\n </div>\n </div>\n <div class=\"occurrence-action\">\n <button\n class=\"cta-button\"\n class:cta-disabled={occurrence.ctaState?.disabled}\n disabled={occurrence.ctaState?.disabled}\n onclick={() => handleOccurrenceClick(occurrence)}\n >\n {occurrence.ctaState?.text || 'Get tickets'}\n </button>\n </div>\n </div>\n {/each}\n </div>\n {/if}\n </section>\n\n <!-- Performers -->\n {#if series.performers?.length}\n <section class=\"section\">\n <h2 class=\"section-heading\">Performers</h2>\n <div class=\"performers-grid\">\n {#each series.performers as performer}\n <div class=\"performer-card\">\n <div class=\"performer-avatar\">\n {#if performer.profileImage}\n <img\n src={getImageUrl(performer.profileImage)}\n alt={performer.displayName || `${performer.firstName} ${performer.lastName}`}\n class=\"performer-image\"\n />\n {:else}\n <div class=\"performer-placeholder\">\n <svg class=\"placeholder-icon\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z\" />\n </svg>\n </div>\n {/if}\n </div>\n <h3 class=\"performer-name\">\n {performer.displayName || `${performer.firstName} ${performer.lastName}`}\n </h3>\n </div>\n {/each}\n </div>\n </section>\n {/if}\n </div>\n\n <!-- Sidebar -->\n <div class=\"sidebar\">\n <div class=\"sidebar-sticky\">\n {#if series.venue?.faq || series.venue?.disclaimer}\n <div class=\"sidebar-card\">\n {#if series.venue.faq}\n <div class=\"sidebar-section\">\n <h3 class=\"sidebar-heading\">FAQ</h3>\n <div class=\"faq-content\">\n {#if Array.isArray(series.venue.faq)}\n {#each series.venue.faq as item}\n <div class=\"faq-item\">\n <p class=\"faq-question\">{item.question}</p>\n <p class=\"faq-answer\">{item.answer}</p>\n </div>\n {/each}\n {:else}\n <p>{series.venue.faq}</p>\n {/if}\n </div>\n </div>\n {/if}\n\n {#if series.venue.disclaimer}\n <div class=\"sidebar-section\">\n <h3 class=\"sidebar-heading\">Important Info</h3>\n <div class=\"disclaimer-text\">{series.venue.disclaimer}</div>\n </div>\n {/if}\n </div>\n {/if}\n </div>\n </div>\n </div>\n </div>\n{/if}\n\n<style>\n .series-page {\n min-height: 100vh;\n padding-bottom: 5rem;\n background: hsl(var(--surface-primary, 0 0% 100%));\n color: hsl(var(--text-primary, 0 0% 10%));\n }\n\n /* Hero */\n .hero {\n position: relative;\n width: 100%;\n overflow: hidden;\n height: 500px;\n }\n\n @media (max-width: 768px) {\n .hero {\n height: 256px;\n }\n }\n\n .hero-skeleton {\n position: absolute;\n inset: 0;\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n background: hsl(var(--surface-secondary, 0 0% 96%));\n }\n\n @keyframes pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.5; }\n }\n\n .hero-image {\n width: 100%;\n height: 100%;\n object-fit: cover;\n transition: transform 0.7s ease;\n }\n\n .hero:hover .hero-image {\n transform: scale(1.05);\n }\n\n .hero-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n padding: 1.5rem;\n background: linear-gradient(to top, color-mix(in srgb, black 90%, transparent), color-mix(in srgb, black 50%, transparent), transparent);\n }\n\n @media (min-width: 768px) {\n .hero-overlay {\n padding: 3rem;\n }\n }\n\n .hero-content {\n max-width: 64rem;\n margin-left: auto;\n margin-right: auto;\n width: 100%;\n }\n\n .series-badge {\n display: inline-flex;\n align-items: center;\n padding: 0.25rem 0.75rem;\n margin-bottom: 1rem;\n font-size: 0.75rem;\n line-height: 1rem;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n border-radius: 9999px;\n box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n background: hsl(var(--brand-primary, 224 76% 48%));\n color: hsl(var(--text-on-primary, 0 0% 100%));\n }\n\n .series-title {\n font-size: 2.25rem;\n line-height: 1.1;\n font-weight: 700;\n margin-bottom: 0.75rem;\n letter-spacing: -0.025em;\n color: white;\n text-shadow: 0 2px 8px color-mix(in srgb, black 30%, transparent);\n }\n\n @media (min-width: 768px) {\n .series-title {\n font-size: 3.75rem;\n line-height: 1;\n }\n }\n\n .series-venue {\n font-size: 1.125rem;\n line-height: 1.75rem;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 0.5rem;\n font-weight: 500;\n color: color-mix(in srgb, white 90%, transparent);\n }\n\n @media (min-width: 768px) {\n .series-venue {\n font-size: 1.25rem;\n line-height: 1.75rem;\n }\n }\n\n .venue-separator {\n display: none;\n opacity: 0.6;\n }\n\n @media (min-width: 768px) {\n .venue-separator {\n display: inline;\n }\n }\n\n .venue-location {\n opacity: 0.75;\n }\n\n /* Content Grid */\n .content-grid {\n max-width: 64rem;\n margin-left: auto;\n margin-right: auto;\n padding: 3rem 1.5rem;\n display: grid;\n grid-template-columns: 1fr;\n gap: 3rem;\n }\n\n @media (min-width: 768px) {\n .content-grid {\n padding-top: 5rem;\n padding-bottom: 5rem;\n }\n }\n\n @media (min-width: 1024px) {\n .content-grid {\n grid-template-columns: repeat(3, 1fr);\n }\n }\n\n .main-column {\n display: flex;\n flex-direction: column;\n gap: 4rem;\n }\n\n @media (min-width: 1024px) {\n .main-column {\n grid-column: span 2 / span 2;\n }\n }\n\n .section {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n }\n\n .section-heading {\n font-size: 1.875rem;\n line-height: 2.25rem;\n font-weight: 700;\n letter-spacing: -0.025em;\n padding-bottom: 1rem;\n color: hsl(var(--text-primary, 0 0% 10%));\n border-bottom: 1px solid hsl(var(--stroke-secondary, 0 0% 90%));\n }\n\n .series-summary {\n font-size: 1.25rem;\n line-height: 1.75rem;\n font-weight: 500;\n line-height: 1.625;\n color: hsl(var(--text-primary, 0 0% 20%));\n }\n\n .series-description {\n max-width: none;\n white-space: pre-line;\n line-height: 1.625;\n color: hsl(var(--text-secondary, 0 0% 40%));\n }\n\n /* Upcoming Dates */\n .dates-header {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n padding-bottom: 1rem;\n border-bottom: 1px solid hsl(var(--stroke-secondary, 0 0% 90%));\n }\n\n .dates-count {\n font-size: 0.875rem;\n line-height: 1.25rem;\n font-weight: 500;\n color: hsl(var(--text-secondary, 0 0% 45%));\n }\n\n .empty-dates {\n padding: 3rem;\n border-radius: 1rem;\n text-align: center;\n background: hsl(var(--surface-secondary, 0 0% 96%));\n border: 2px dashed hsl(var(--stroke-secondary, 0 0% 85%));\n }\n\n .empty-text {\n font-size: 1.125rem;\n line-height: 1.75rem;\n font-weight: 500;\n color: hsl(var(--text-secondary, 0 0% 45%));\n }\n\n .empty-subtext {\n margin-top: 0.5rem;\n color: hsl(var(--text-secondary, 0 0% 55%));\n }\n\n .dates-list {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n }\n\n .occurrence-card {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 1.5rem;\n border-radius: 1rem;\n transition: all 0.2s;\n background: hsl(var(--surface-primary, 0 0% 100%));\n border: 1px solid hsl(var(--stroke-secondary, 0 0% 90%));\n }\n\n @media (min-width: 640px) {\n .occurrence-card {\n flex-direction: row;\n align-items: center;\n }\n }\n\n .occurrence-card:hover {\n border-color: hsl(var(--brand-primary, 224 76% 48%));\n box-shadow: 0 4px 12px color-mix(in srgb, black 8%, transparent);\n }\n\n .occurrence-info {\n margin-bottom: 1rem;\n }\n\n @media (min-width: 640px) {\n .occurrence-info {\n margin-bottom: 0;\n }\n }\n\n .occurrence-date {\n font-size: 1.25rem;\n line-height: 1.75rem;\n font-weight: 700;\n margin-bottom: 0.25rem;\n color: hsl(var(--text-primary, 0 0% 10%));\n }\n\n .occurrence-time {\n font-weight: 500;\n color: hsl(var(--text-secondary, 0 0% 45%));\n }\n\n .occurrence-action {\n padding-left: 0;\n }\n\n @media (min-width: 640px) {\n .occurrence-action {\n padding-left: 1.5rem;\n }\n }\n\n .cta-button {\n width: 100%;\n padding: 0.75rem 1.5rem;\n border-radius: 0.5rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n font-weight: 600;\n transition: transform 0.15s;\n background: hsl(var(--brand-primary, 224 76% 48%));\n color: hsl(var(--text-on-primary, 0 0% 100%));\n }\n\n @media (min-width: 640px) {\n .cta-button {\n width: auto;\n }\n }\n\n .cta-button:hover:not(:disabled) {\n transform: scale(1.05);\n }\n\n .cta-disabled {\n cursor: not-allowed;\n background: hsl(var(--surface-secondary, 0 0% 90%));\n color: hsl(var(--text-secondary, 0 0% 55%));\n }\n\n /* Performers */\n .performers-grid {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n gap: 2rem;\n }\n\n @media (min-width: 640px) {\n .performers-grid {\n grid-template-columns: repeat(3, 1fr);\n }\n }\n\n .performer-card {\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n padding: 1rem;\n border-radius: 0.75rem;\n transition: background-color 0.15s;\n }\n\n .performer-card:hover {\n background: hsl(var(--surface-secondary, 0 0% 96%));\n }\n\n .performer-avatar {\n width: 7rem;\n height: 7rem;\n margin-bottom: 1rem;\n border-radius: 9999px;\n overflow: hidden;\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n background: hsl(var(--surface-secondary, 0 0% 92%));\n }\n\n .performer-image {\n width: 100%;\n height: 100%;\n object-fit: cover;\n transition: transform 0.5s ease;\n }\n\n .performer-card:hover .performer-image {\n transform: scale(1.1);\n }\n\n .performer-placeholder {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n color: hsl(var(--text-secondary, 0 0% 60%));\n }\n\n .placeholder-icon {\n width: 3rem;\n height: 3rem;\n opacity: 0.5;\n }\n\n .performer-name {\n font-size: 1.125rem;\n line-height: 1.75rem;\n font-weight: 600;\n color: hsl(var(--text-primary, 0 0% 10%));\n }\n\n /* Sidebar */\n .sidebar {\n display: flex;\n flex-direction: column;\n gap: 2rem;\n }\n\n @media (min-width: 1024px) {\n .sidebar {\n grid-column: span 1 / span 1;\n }\n }\n\n .sidebar-sticky {\n position: sticky;\n top: 6rem;\n display: flex;\n flex-direction: column;\n gap: 2rem;\n }\n\n .sidebar-card {\n border-radius: 1rem;\n padding: 2rem;\n background: hsl(var(--surface-secondary, 0 0% 96%));\n border: 1px solid hsl(var(--stroke-secondary, 0 0% 92%));\n }\n\n .sidebar-section {\n margin-bottom: 2rem;\n }\n\n .sidebar-section:last-child {\n margin-bottom: 0;\n }\n\n .sidebar-heading {\n font-size: 0.875rem;\n line-height: 1.25rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.1em;\n margin-bottom: 1rem;\n color: hsl(var(--text-primary, 0 0% 10%));\n }\n\n .faq-content {\n color: hsl(var(--text-secondary, 0 0% 40%));\n }\n\n .faq-item {\n margin-bottom: 0.75rem;\n }\n\n .faq-question {\n font-weight: 700;\n color: hsl(var(--text-primary, 0 0% 20%));\n }\n\n .faq-answer {\n font-size: 0.875rem;\n line-height: 1.25rem;\n }\n\n .disclaimer-text {\n font-size: 0.875rem;\n line-height: 1.625;\n padding: 1rem;\n border-radius: 0.5rem;\n background: hsl(var(--surface-primary, 0 0% 100%));\n color: hsl(var(--text-secondary, 0 0% 40%));\n border: 1px solid hsl(var(--stroke-secondary, 0 0% 90%));\n }\n</style>\n"],"names":["imageLoaded","$","seriesImage","getImageUrl","$$props","PLACEHOLDER_IMAGE","tz","formatDate","iso","formatEventDate","formatTime","formatEventTime","handleOccurrenceClick","occurrence","div","root_1","div_1","div_2","img","div_3","div_4","h1","div_5","span","span_1","fragment_1","text_2","$$render","consequent","div_6","div_7","section","p","root_3","consequent_1","div_8","root_4","consequent_2","section_1","div_9","span_2","div_10","root_5","div_11","root_6","$$anchor","div_12","root_7","div_13","div_14","div_15","div_16","button","classes_1","text_8","alternate","consequent_3","section_2","root_8","div_17","performer","div_18","root_9","div_19","img_1","root_10","$0","div_20","root_11","consequent_4","alternate_1","h3","consequent_5","div_21","div_22","div_23","root_12","div_24","root_13","div_25","item","div_26","root_15","p_1","p_2","text_10","text_11","d","p_3","root_16","text_12","consequent_7","div_27","root_17","div_28","text_13","consequent_8","consequent_9","classes","text_1"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "svelte/internal/disclose-version";
|
|
2
2
|
import * as e from "svelte/internal/client";
|
|
3
3
|
import { onMount as ne } from "svelte";
|
|
4
|
-
import { t as ce, r as H, s as ge, w as me } from "./VenueCalendar-
|
|
4
|
+
import { t as ce, r as H, s as ge, w as me } from "./VenueCalendar-B5Y29ZJD.js";
|
|
5
5
|
import { A as i } from "./colors-BZoMuXdh.js";
|
|
6
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 dark:border-b-gray-600/50 svelte-g1e40p"><dt class="detail-label dark:text-gray-400 svelte-g1e40p">Order ID</dt> <dd class="detail-value order-id dark:text-white dark:text-blue-500 svelte-g1e40p"> </dd></div>'), he = e.from_html('<div class="detail-row dark:border-b-gray-600/50 svelte-g1e40p"><dt class="detail-label dark:text-gray-400 svelte-g1e40p">Event</dt> <dd class="detail-value event-name dark:text-white dark:text-blue-500 svelte-g1e40p"> </dd></div>'), _e = e.from_html('<div class="detail-row dark:border-b-gray-600/50 svelte-g1e40p"><dt class="detail-label dark:text-gray-400 svelte-g1e40p">When</dt> <dd class="detail-value dark:text-white dark:text-blue-500 svelte-g1e40p"><time class="svelte-g1e40p"> </time></dd></div>'), be = e.from_html('<div class="detail-row dark:border-b-gray-600/50 svelte-g1e40p"><dt class="detail-label dark:text-gray-400 svelte-g1e40p">Where</dt> <dd class="detail-value dark:text-white dark:text-blue-500 svelte-g1e40p"> </dd></div>'), ke = e.from_html('<a class="nav-link secondary dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 svelte-g1e40p">Back to event</a>'), ye = e.from_html('<a class="nav-link primary dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700 svelte-g1e40p">Browse more events</a>'), xe = e.from_html('<nav aria-label="Next steps"><!> <!></nav>'), we = 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 dark:text-white svelte-g1e40p">You're all set!</h1> <p class="success-subtitle dark:text-gray-300 svelte-g1e40p">Your tickets have been confirmed</p></div> <div class="ticket-divider svelte-g1e40p"><div class="divider-notch left dark:bg-gray-900 svelte-g1e40p"></div> <div class="divider-line svelte-g1e40p"></div> <div class="divider-notch right dark:bg-gray-900 svelte-g1e40p"></div></div> <dl aria-label="Order details"><div class="detail-row dark:border-b-gray-600/50 svelte-g1e40p"><dt class="detail-label dark:text-gray-400 svelte-g1e40p">Email</dt> <dd class="detail-value dark:text-white dark:text-blue-500 svelte-g1e40p"> </dd></div> <!> <!> <!> <!></dl> <div class="ticket-footer dark:bg-gray-800/50 svelte-g1e40p"><p class="footer-text dark:text-gray-300 svelte-g1e40p">Check your email for your tickets</p></div></div> <div class="ticket-stub svelte-g1e40p"></div></div></div> <!></div></div>`);
|
|
7
7
|
function Le(J, f) {
|
|
@@ -188,4 +188,4 @@ function Le(J, f) {
|
|
|
188
188
|
export {
|
|
189
189
|
Le as default
|
|
190
190
|
};
|
|
191
|
-
//# sourceMappingURL=Success.legacy-
|
|
191
|
+
//# sourceMappingURL=Success.legacy-D72O08IB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Success.legacy-D72O08IB.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 dark:text-white\">You're all set!</h1>\n <p class=\"success-subtitle dark:text-gray-300\">Your tickets have been confirmed</p>\n </div>\n\n <div class=\"ticket-divider\">\n <div class=\"divider-notch left dark:bg-gray-900\"></div>\n <div class=\"divider-line\"></div>\n <div class=\"divider-notch right dark:bg-gray-900\"></div>\n </div>\n\n <dl class=\"ticket-details\" class:fade-in={showDetails} aria-label=\"Order details\">\n <div class=\"detail-row dark:border-b-gray-600/50\">\n <dt class=\"detail-label dark:text-gray-400\">Email</dt>\n <dd class=\"detail-value dark:text-white dark:text-blue-500\">{Email || 'Loading...'}</dd>\n </div>\n\n {#if id}\n <div class=\"detail-row dark:border-b-gray-600/50\">\n <dt class=\"detail-label dark:text-gray-400\">Order ID</dt>\n <dd class=\"detail-value order-id dark:text-white dark:text-blue-500\">#{id}</dd>\n </div>\n {/if}\n\n {#if name}\n <div class=\"detail-row dark:border-b-gray-600/50\">\n <dt class=\"detail-label dark:text-gray-400\">Event</dt>\n <dd class=\"detail-value event-name dark:text-white dark:text-blue-500\">{name}</dd>\n </div>\n {/if}\n\n {#if time}\n <div class=\"detail-row dark:border-b-gray-600/50\">\n <dt class=\"detail-label dark:text-gray-400\">When</dt>\n <dd class=\"detail-value dark:text-white dark:text-blue-500\"><time>{time}</time></dd>\n </div>\n {/if}\n\n {#if Location}\n <div class=\"detail-row dark:border-b-gray-600/50\">\n <dt class=\"detail-label dark:text-gray-400\">Where</dt>\n <dd class=\"detail-value dark:text-white dark:text-blue-500\">{Location}</dd>\n </div>\n {/if}\n </dl>\n\n <div class=\"ticket-footer dark:bg-gray-800/50\">\n <p class=\"footer-text dark:text-gray-300\">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 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700\">Back to event</a>\n {/if}\n {#if browseUrl}\n <a href={browseUrl} class=\"nav-link primary dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700\">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, rgb(255 255 255) 0%, rgb(249 250 251) 100%);\n \n &:where(.dark, .dark *) {\n background: linear-gradient(180deg, rgb(17 24 39) 0%, rgb(31 41 55) 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, rgb(55 65 81) 0%, rgb(31 41 55) 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: rgb(17 24 39);\n border-radius: 2px;\n }\n\n /* Ticket */\n .ticket {\n width: 100%;\n background: white;\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, rgb(22 163 74) 0%, rgb(22 163 74) 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: white;\n }\n\n .success-title {\n font-size: 1.5rem;\n line-height: 2rem;\n font-weight: 600;\n color: rgb(17 24 39);\n margin-bottom: 0.5rem;\n }\n\n .success-subtitle {\n font-size: 0.875rem;\n line-height: 1.25rem;\n color: rgb(75 85 99);\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: rgb(255 255 255);\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 rgb(209 213 219) 0,\n rgb(209 213 219) 8px,\n transparent 8px,\n transparent 16px\n );\n \n &:where(.dark, .dark *) {\n background: repeating-linear-gradient(\n 90deg,\n rgb(75 85 99) 0,\n rgb(75 85 99) 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 rgb(209 213 219 / 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: rgb(107 114 128);\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: rgb(17 24 39);\n overflow-wrap: break-word;\n }\n\n .detail-value.order-id {\n color: rgb(29 78 216);\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: rgb(249 250 251 / 0.5);\n }\n\n .footer-text {\n font-size: 0.875rem;\n line-height: 1.25rem;\n color: rgb(75 85 99);\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 rgb(209 213 219 / 0.3) 8px,\n rgb(209 213 219 / 0.3) 16px\n );\n background-size: 16px 100%;\n \n &:where(.dark, .dark *) {\n background: linear-gradient(\n 90deg,\n transparent 0,\n transparent 8px,\n rgb(75 85 99 / 0.3) 8px,\n rgb(75 85 99 / 0.3) 16px\n );\n background-size: 16px 100%;\n }\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: rgb(243 244 246);\n color: rgb(55 65 81);\n }\n\n .nav-link.secondary:hover {\n background-color: rgb(229 231 235);\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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"}
|