@getmicdrop/venue-calendar 4.0.64 → 4.0.65

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 (73) hide show
  1. package/dist/{CarouselView.legacy-CHlVZ-nC.js → CarouselView.legacy-CejJbK0e.js} +3 -3
  2. package/dist/{CarouselView.legacy-CHlVZ-nC.js.map → CarouselView.legacy-CejJbK0e.js.map} +1 -1
  3. package/dist/{CartView-BAeAbkEa.js → CartView-DKpsKj2N.js} +3 -3
  4. package/dist/{CartView-BAeAbkEa.js.map → CartView-DKpsKj2N.js.map} +1 -1
  5. package/dist/{Checkout-2oWblXIZ.js → Checkout-CXfFabtp.js} +5 -5
  6. package/dist/{Checkout-2oWblXIZ.js.map → Checkout-CXfFabtp.js.map} +1 -1
  7. package/dist/{Checkout-BbAroeeC.js → Checkout-zR2LPgmX.js} +62 -62
  8. package/dist/Checkout-zR2LPgmX.js.map +1 -0
  9. package/dist/{Checkout.legacy-Caboro1G.js → Checkout.legacy-CDqjvIxB.js} +5 -5
  10. package/dist/{Checkout.legacy-Caboro1G.js.map → Checkout.legacy-CDqjvIxB.js.map} +1 -1
  11. package/dist/{CheckoutTimer-Cz5G7vxK.js → CheckoutTimer-D1wyacc5.js} +2 -2
  12. package/dist/{CheckoutTimer-Cz5G7vxK.js.map → CheckoutTimer-D1wyacc5.js.map} +1 -1
  13. package/dist/{CollectionView-DEKutvzz.js → CollectionView-DU3Rkjvr.js} +5 -5
  14. package/dist/{CollectionView-DEKutvzz.js.map → CollectionView-DU3Rkjvr.js.map} +1 -1
  15. package/dist/{CollectionView.legacy-BTwbPnx9.js → CollectionView.legacy-DfXDsEqF.js} +3 -3
  16. package/dist/{CollectionView.legacy-BTwbPnx9.js.map → CollectionView.legacy-DfXDsEqF.js.map} +1 -1
  17. package/dist/{Event-CjaJ5o3v.js → Event-DBmvRsu8.js} +4 -4
  18. package/dist/{Event-CjaJ5o3v.js.map → Event-DBmvRsu8.js.map} +1 -1
  19. package/dist/{EventDetailsView-DXnhlk3-.js → EventDetailsView-CIR9vl2Q.js} +6 -6
  20. package/dist/{EventDetailsView-DXnhlk3-.js.map → EventDetailsView-CIR9vl2Q.js.map} +1 -1
  21. package/dist/{EventPage-C0lONi_3.js → EventPage-BEh2QNPL.js} +5 -5
  22. package/dist/{EventPage-C0lONi_3.js.map → EventPage-BEh2QNPL.js.map} +1 -1
  23. package/dist/{EventPage.legacy-BEKcjbI4.js → EventPage.legacy-AeHwkFwN.js} +5 -5
  24. package/dist/{EventPage.legacy-BEKcjbI4.js.map → EventPage.legacy-AeHwkFwN.js.map} +1 -1
  25. package/dist/{FeaturedView.legacy-BkepqGg3.js → FeaturedView.legacy-DKJDwuwQ.js} +2 -2
  26. package/dist/{FeaturedView.legacy-BkepqGg3.js.map → FeaturedView.legacy-DKJDwuwQ.js.map} +1 -1
  27. package/dist/{GalleryCard-DceWAls1.js → GalleryCard-CG3tCBwa.js} +2 -2
  28. package/dist/{GalleryCard-DceWAls1.js.map → GalleryCard-CG3tCBwa.js.map} +1 -1
  29. package/dist/{GalleryView.legacy-CA95oQGJ.js → GalleryView.legacy-BVBblLTv.js} +3 -3
  30. package/dist/{GalleryView.legacy-CA95oQGJ.js.map → GalleryView.legacy-BVBblLTv.js.map} +1 -1
  31. package/dist/{GroupedListView.legacy-oOoTwXPq.js → GroupedListView.legacy-bxfuoVIx.js} +2 -2
  32. package/dist/{GroupedListView.legacy-oOoTwXPq.js.map → GroupedListView.legacy-bxfuoVIx.js.map} +1 -1
  33. package/dist/{OrderSummary-DRXcg2M_.js → OrderSummary-CB03zYc9.js} +2 -2
  34. package/dist/{OrderSummary-DRXcg2M_.js.map → OrderSummary-CB03zYc9.js.map} +1 -1
  35. package/dist/{PromoCodeInput-wPJjGt_v.js → PromoCodeInput-Db6sjP0w.js} +3 -3
  36. package/dist/{PromoCodeInput-wPJjGt_v.js.map → PromoCodeInput-Db6sjP0w.js.map} +1 -1
  37. package/dist/{SeriesPage-BRrpv4-3.js → SeriesPage-BJclJLCZ.js} +5 -5
  38. package/dist/{SeriesPage-BRrpv4-3.js.map → SeriesPage-BJclJLCZ.js.map} +1 -1
  39. package/dist/{SeriesPage.legacy-BIKd6SYo.js → SeriesPage.legacy-DTq4mcUR.js} +2 -2
  40. package/dist/{SeriesPage.legacy-BIKd6SYo.js.map → SeriesPage.legacy-DTq4mcUR.js.map} +1 -1
  41. package/dist/{Success-fMTg0QHe.js → Success-ECRExX_Z.js} +7 -7
  42. package/dist/Success-ECRExX_Z.js.map +1 -0
  43. package/dist/{Success.legacy-DwLdwq_g.js → Success.legacy-P9mcS21c.js} +2 -2
  44. package/dist/{Success.legacy-DwLdwq_g.js.map → Success.legacy-P9mcS21c.js.map} +1 -1
  45. package/dist/{VenueCalendar-ySqncMTn.js → VenueCalendar-DweCc8I9.js} +259 -252
  46. package/dist/{VenueCalendar-ySqncMTn.js.map → VenueCalendar-DweCc8I9.js.map} +1 -1
  47. package/dist/{ViewTicketsEmbed-1X1K2UGI.js → ViewTicketsEmbed-xMyAlSnT.js} +3 -3
  48. package/dist/{ViewTicketsEmbed-1X1K2UGI.js.map → ViewTicketsEmbed-xMyAlSnT.js.map} +1 -1
  49. package/dist/{WaitlistModal-DqPbCdOl.js → WaitlistModal-Cd-3AkNr.js} +107 -107
  50. package/dist/WaitlistModal-Cd-3AkNr.js.map +1 -0
  51. package/dist/{api-ohGBZw0r.js → api-CV_GBl7b.js} +2 -2
  52. package/dist/{api-ohGBZw0r.js.map → api-CV_GBl7b.js.map} +1 -1
  53. package/dist/{data-toggle-store.svelte-CxjHrCmm.js → data-toggle-store.svelte-CqcDkRSv.js} +2 -2
  54. package/dist/{data-toggle-store.svelte-CxjHrCmm.js.map → data-toggle-store.svelte-CqcDkRSv.js.map} +1 -1
  55. package/dist/seo/helpers.d.ts +23 -0
  56. package/dist/seo/index.d.ts +2 -1
  57. package/dist/seo/seo.cjs +1 -1
  58. package/dist/seo/seo.cjs.map +1 -1
  59. package/dist/seo/seo.mjs +185 -177
  60. package/dist/seo/seo.mjs.map +1 -1
  61. package/dist/seo/types.d.ts +13 -0
  62. package/dist/{transform-CmXbkRWL.js → transform-_Mlec4Vr.js} +2 -2
  63. package/dist/{transform-CmXbkRWL.js.map → transform-_Mlec4Vr.js.map} +1 -1
  64. package/dist/venue-calendar.css +1 -1
  65. package/dist/venue-calendar.es.js +2 -2
  66. package/dist/venue-calendar.iife.js +43 -43
  67. package/dist/venue-calendar.iife.js.map +1 -1
  68. package/dist/venue-calendar.umd.js +27 -27
  69. package/dist/venue-calendar.umd.js.map +1 -1
  70. package/package.json +1 -1
  71. package/dist/Checkout-BbAroeeC.js.map +0 -1
  72. package/dist/Success-fMTg0QHe.js.map +0 -1
  73. package/dist/WaitlistModal-DqPbCdOl.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"EventPage-C0lONi_3.js","sources":["../src/lib/navigation.ts","../src/components/Views/EventPage.svelte"],"sourcesContent":["/**\r\n * Public-calendar URL builders. Centralizes the route shapes so call sites\r\n * stop hand-rolling `goto(`/${id}/${slug}`)` template literals\r\n * (Atlas utility-url-builders convergence). One place per route.\r\n */\r\n\r\n/** Event (or occurrence) page: `/<id>/<slug>`. */\r\nexport function buildEventUrl(id: number | string, slug: string): string {\r\n return `/${id}/${slug}`;\r\n}\r\n\r\n/** Event page by slug only: `/<slug>`. */\r\nexport function buildEventBySlugUrl(slug: string): string {\r\n return `/${slug}`;\r\n}\r\n\r\n/** Checkout for an event: `/<id>/<slug>/checkout`. */\r\nexport function buildCheckoutUrl(id: number | string, slug: string): string {\r\n return `/${id}/${slug}/checkout`;\r\n}\r\n\r\n/** Checkout success page: `/<id>/<slug>/checkout/success`. */\r\nexport function buildCheckoutSuccessUrl(\r\n id: number | string,\r\n slug: string\r\n): string {\r\n return `${buildCheckoutUrl(id, slug)}/success`;\r\n}\r\n","<script module>\r\n\timport { createLogger } from '@getmicdrop/svelte-components';\r\n\tconst logger = createLogger('EventPage');\r\n</script>\r\n\r\n<script lang=\"ts\">\r\n\timport { onMount } from 'svelte';\r\n\timport { goto } from '$app/navigation';\r\n\timport { Locked } from 'carbon-icons-svelte';\r\n\timport { InputModal, parseEventId } from '@getmicdrop/svelte-components';\r\n\timport type { EventId } from '@getmicdrop/svelte-components';\r\n\timport { toast } from '@getmicdrop/svelte-components/toast';\r\n\timport AirbnbSplitMain from '$lib/public-calendar-flow/Event.svelte';\r\n\timport { transformApiEvent } from '$lib/public-calendar-flow/transform';\r\n\timport { validatePromoCode } from '$lib/api/promo';\r\n\timport { buildEventUrl, buildEventBySlugUrl, buildCheckoutUrl } from '$lib/navigation';\r\n\timport {\r\n\t\tpersistCheckoutState,\r\n\t\tinitiateOrder,\r\n\t\ttrackUTMSource,\r\n\t} from '$lib/utils/utils.js';\r\n\timport {\r\n\t\tfetchSeriesOccurrences,\r\n\t\tfetchEventDetails,\r\n\t\tcheckEventPassword,\r\n\t} from '$lib/api';\r\n\timport type {\r\n\t\tEventData,\r\n\t\tPromoCodeState,\r\n\t\tOrderTotals,\r\n\t\tSeriesOccurrence,\r\n\t} from '$lib/public-calendar-flow/types';\r\n\r\n\t// --- Legacy fallback ---\r\n\t// RETIREMENT: 2026-08-13 — see docs/LEGACY_RETIREMENT.md.\r\n\tlet useLegacy = $state(false);\r\n\tlet LegacyComponent: any = $state(null);\r\n\r\n\tif (typeof window !== 'undefined') {\r\n\t\tconst params = new URLSearchParams(window.location.search);\r\n\t\tif (params.get('legacy') === '1') {\r\n\t\t\tuseLegacy = true;\r\n\t\t}\r\n\t}\r\n\r\n\t$effect(() => {\r\n\t\tif (useLegacy && !LegacyComponent) {\r\n\t\t\tlogger.warn(\r\n\t\t\t\t'[VC] DEPRECATED: ?legacy=1 fallback for EventPage retires on 2026-08-13. See docs/LEGACY_RETIREMENT.md.'\r\n\t\t\t);\r\n\t\t\timport('./EventPage.legacy.svelte').then((m) => {\r\n\t\t\t\tLegacyComponent = m.default;\r\n\t\t\t}).catch(() => {\r\n\t\t\t\tuseLegacy = false;\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n\r\n\t// --- Props (matches old EventPage external interface) ---\r\n\tinterface Props {\r\n\t\trawEvent?: any;\r\n\t\teventId?: string | number;\r\n\t\tslug?: string;\r\n\t\tcurrentEventId?: number | null;\r\n\t\tonNavigateBack?: () => void;\r\n\t\tonBuyTickets?: (eventId: EventId, slug: string) => void;\r\n\t\t/**\r\n\t\t * Optional checkout hand-off. The standalone get-micdrop.com route lets\r\n\t\t * this default to navigating to /{id}/{slug}/checkout; the embed passes a\r\n\t\t * callback that renders Checkout in-place instead (the cart is already\r\n\t\t * created when this fires). Receives (id, slug, rawEvent).\r\n\t\t */\r\n\t\tonNavigateToCart?: (id: string | number, slug: string, rawEvent: any) => void;\r\n\t\torganizationId?: string;\r\n\t\tlabels?: Record<string, string>;\r\n\t}\r\n\r\n\tlet {\r\n\t\trawEvent: rawEventProp = undefined,\r\n\t\teventId: eventIdProp = undefined,\r\n\t\tslug: slugProp = '',\r\n\t\tcurrentEventId: currentEventIdProp = undefined,\r\n\t\tonNavigateBack = undefined,\r\n\t\tonBuyTickets = undefined,\r\n\t\tonNavigateToCart = undefined,\r\n\t\torganizationId = '',\r\n\t\tlabels = {},\r\n\t}: Props = $props();\r\n\r\n\t// --- Data state ---\r\n\t/* svelte-ignore state_referenced_locally */\r\n\tlet rawEvent = $state<any>(rawEventProp ?? null);\r\n\t/* svelte-ignore state_referenced_locally */\r\n\tlet dataLoading = $state(!rawEventProp && !!eventIdProp);\r\n\r\n\t// Keep rawEvent in sync if rawEventProp changes reactively\r\n\t$effect(() => {\r\n\t\tif (rawEventProp) rawEvent = rawEventProp;\r\n\t});\r\n\tlet dataError = $state<string | null>(null);\r\n\r\n\t// Transform raw API data to EventData\r\n\tlet baseEventData = $derived(rawEvent ? transformApiEvent(rawEvent) : null);\r\n\tlet id = $derived(eventIdProp || baseEventData?.id || '');\r\n\tlet slug = $derived(slugProp || baseEventData?.slug || '');\r\n\r\n\t// Series occurrences (async enrichment)\r\n\tlet seriesOccurrences = $state<SeriesOccurrence[]>([]);\r\n\tlet eventData = $derived<EventData | null>(\r\n\t\tbaseEventData\r\n\t\t\t? {\r\n\t\t\t\t\t...baseEventData,\r\n\t\t\t\t\tseriesOccurrences: seriesOccurrences.length > 0\r\n\t\t\t\t\t\t? seriesOccurrences\r\n\t\t\t\t\t\t: baseEventData.seriesOccurrences || [],\r\n\t\t\t\t}\r\n\t\t\t: null\r\n\t);\r\n\r\n\t// --- Password protection state ---\r\n\tlet showPasswordModal = $state(false);\r\n\tlet isPasswordVerified = $state(false);\r\n\tlet passwordValue = $state('');\r\n\tlet passwordError = $state('');\r\n\tlet passwordLoading = $state(false);\r\n\r\n\tlet requiresPassword = $derived(!!rawEvent?.password && rawEvent.password.trim() !== '');\r\n\tlet isLocked = $derived(requiresPassword && !isPasswordVerified && !isEventAuthenticated(id));\r\n\r\n\tfunction isEventAuthenticated(evtId: string | number): boolean {\r\n\t\tif (typeof window === 'undefined') return false;\r\n\t\tconst authedEvents = JSON.parse(sessionStorage.getItem('authedEvents') || '[]'); // @storage-escape: authedEvents session-auth state (intentional raw sessionStorage)\r\n\t\treturn authedEvents.includes(String(evtId));\r\n\t}\r\n\r\n\tfunction setEventAuthenticated(evtId: string | number): void {\r\n\t\tif (typeof window === 'undefined') return;\r\n\t\tconst authedEvents = JSON.parse(sessionStorage.getItem('authedEvents') || '[]'); // @storage-escape: authedEvents session-auth state (intentional raw sessionStorage)\r\n\t\tconst evtIdStr = String(evtId);\r\n\t\tif (!authedEvents.includes(evtIdStr)) {\r\n\t\t\tauthedEvents.push(evtIdStr);\r\n\t\t\tsessionStorage.setItem('authedEvents', JSON.stringify(authedEvents)); // @storage-escape: authedEvents session-auth state (intentional raw sessionStorage)\r\n\t\t}\r\n\t}\r\n\r\n\tasync function handlePasswordSubmit(e: any): Promise<void> {\r\n\t\tconst password = e.detail?.value || passwordValue;\r\n\t\tif (!password || !id) return;\r\n\t\tpasswordLoading = true;\r\n\t\tpasswordError = '';\r\n\t\ttry {\r\n\t\t\tconst result = await checkEventPassword(String(id), password);\r\n\t\t\tif (result.valid) {\r\n\t\t\t\tsetEventAuthenticated(id);\r\n\t\t\t\tisPasswordVerified = true;\r\n\t\t\t\tshowPasswordModal = false;\r\n\t\t\t\tpasswordValue = '';\r\n\t\t\t} else {\r\n\t\t\t\tpasswordError = labels.incorrectPassword || 'Incorrect password. Please try again.';\r\n\t\t\t}\r\n\t\t} catch {\r\n\t\t\tpasswordError = labels.unableToVerifyPassword || 'Unable to verify password. Please try again.';\r\n\t\t} finally {\r\n\t\t\tpasswordLoading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tfunction handlePasswordCancel(): void {\r\n\t\tshowPasswordModal = false;\r\n\t\tif (onNavigateBack) onNavigateBack();\r\n\t}\r\n\r\n\t// --- Promo state tracking for checkout persistence ---\r\n\tlet lastPromoCode = $state('');\r\n\tlet lastPromoDiscount = $state(0);\r\n\r\n\tasync function handlePromoApply(code: string): Promise<PromoCodeState> {\r\n\t\tconst result = await validatePromoCode(String(id), code);\r\n\t\tif (!result.valid) {\r\n\t\t\treturn {\r\n\t\t\t\tcode,\r\n\t\t\t\tisApplied: false,\r\n\t\t\t\tisValidating: false,\r\n\t\t\t\terror: result.error || 'Invalid promo code',\r\n\t\t\t\thint: '',\r\n\t\t\t\tdiscountAmount: 0,\r\n\t\t\t\tdiscountType: '',\r\n\t\t\t\tdiscountTicketIds: [],\r\n\t\t\t\trevealHiddenTickets: false,\r\n\t\t\t\trevealTicketIds: [],\r\n\t\t\t};\r\n\t\t}\r\n\t\tlastPromoCode = result.code || code;\r\n\t\tlastPromoDiscount = result.amount || 0;\r\n\t\treturn {\r\n\t\t\tcode: result.code || code,\r\n\t\t\tisApplied: true,\r\n\t\t\tisValidating: false,\r\n\t\t\terror: '',\r\n\t\t\thint: `${(result.code || code).toUpperCase()} applied`,\r\n\t\t\tdiscountAmount: result.amount || 0,\r\n\t\t\tdiscountType: result.discountType === 'percentage' ? '%' : result.discountType === 'fixed' ? '$' : '',\r\n\t\t\tdiscountTicketIds: [],\r\n\t\t\trevealHiddenTickets: result.revealHiddenTickets || false,\r\n\t\t\trevealTicketIds: result.revealTicketIds || [],\r\n\t\t};\r\n\t}\r\n\r\n\tfunction handlePromoRemove(): void {\r\n\t\tlastPromoCode = '';\r\n\t\tlastPromoDiscount = 0;\r\n\t}\r\n\r\n\t// --- Checkout callback ---\r\n\tasync function handleCheckout(orderTotals: OrderTotals): Promise<void> {\r\n\t\tif (!eventData) return;\r\n\r\n\t\t// Reconstruct quantities and donation amounts from OrderTotals lines\r\n\t\tconst quantities: Record<number, number> = {};\r\n\t\tconst donationAmounts: Record<number, number> = {};\r\n\r\n\t\tfor (const line of orderTotals.lines) {\r\n\t\t\tquantities[line.ticketId] = line.quantity;\r\n\t\t\tconst ticket = eventData.tickets.find((t) => t.id === line.ticketId);\r\n\t\t\tif (ticket?.isDonation) {\r\n\t\t\t\tdonationAmounts[line.ticketId] = line.unitPrice;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Persist checkout state for downstream checkout page\r\n\t\tpersistCheckoutState({\r\n\t\t\teventID: String(id),\r\n\t\t\tquantities,\r\n\t\t\tdonationAmounts,\r\n\t\t\tpromocode: lastPromoCode,\r\n\t\t\tpromoDiscountAmount: lastPromoDiscount,\r\n\t\t\ttickets: eventData.tickets.map((t) => ({\r\n\t\t\t\tID: t.id,\r\n\t\t\t\tname: t.name,\r\n\t\t\t\tprice: t.price,\r\n\t\t\t\ttype: String(t.ticketType || 0),\r\n\t\t\t\tvisibility: String(t.isHidden ? 1 : 0),\r\n\t\t\t\tsalesChannel: '0',\r\n\t\t\t})),\r\n\t\t});\r\n\r\n\t\t// Create cart (sets checkout-cartid cookie automatically)\r\n\t\tconst result = await initiateOrder({\r\n\t\t\teventID: id,\r\n\t\t\tquantities,\r\n\t\t\tpromoCode: lastPromoCode || undefined,\r\n\t\t});\r\n\t\tif (!result?.success) {\r\n\t\t\ttoast.error(result?.error || labels.failedToCompleteOrder || 'Failed to complete order. Please try again.');\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Embed: render Checkout in-place. Standalone route: navigate to the\r\n\t\t// checkout page. The cart cookie is set either way by initiateOrder().\r\n\t\tif (onNavigateToCart) {\r\n\t\t\tonNavigateToCart(id, slug, rawEvent);\r\n\t\t} else {\r\n\t\t\tgoto(buildCheckoutUrl(id, slug));\r\n\t\t}\r\n\t}\r\n\r\n\t// --- Navigation callbacks ---\r\n\tfunction handleCollectionEventClick(event: { id?: number | string; slug: string }): void {\r\n\t\tif (event.id) {\r\n\t\t\tgoto(buildEventUrl(event.id, event.slug));\r\n\t\t} else {\r\n\t\t\tlogger.warn('Collection event missing id, navigating by slug only');\r\n\t\t\tgoto(buildEventBySlugUrl(event.slug));\r\n\t\t}\r\n\t}\r\n\r\n\tfunction handleShowtimeClick(occurrence: { id: number; slug: string }): void {\r\n\t\tif (onBuyTickets) {\r\n\t\t\tonBuyTickets(parseEventId(occurrence.id), occurrence.slug);\r\n\t\t} else {\r\n\t\t\tgoto(buildEventUrl(occurrence.id, occurrence.slug));\r\n\t\t}\r\n\t}\r\n\r\n\t// --- Lifecycle ---\r\n\tonMount(async () => {\r\n\t\t// Self-fetch mode (widget builder / color preview)\r\n\t\tif (!rawEvent && eventIdProp) {\r\n\t\t\ttry {\r\n\t\t\t\tconst fetched = await fetchEventDetails(eventIdProp);\r\n\t\t\t\trawEvent = fetched;\r\n\t\t\t} catch (err: any) {\r\n\t\t\t\tdataError = err.message || labels.failedToLoadEvent || 'Failed to load event';\r\n\t\t\t\tdataLoading = false;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tdataLoading = false;\r\n\t\t}\r\n\r\n\t\tif (!rawEvent) return;\r\n\r\n\t\t// UTM tracking — use event ID, not venue ID\r\n\t\tconst evtId = rawEvent.ID || rawEvent.id;\r\n\t\tif (evtId) {\r\n\t\t\ttrackUTMSource(evtId);\r\n\t\t}\r\n\r\n\t\t// Fetch series occurrences\r\n\t\tconst seriesId = rawEvent.eventSeriesId || 0;\r\n\t\tconst vId = rawEvent.venueID || rawEvent.venueId || 0;\r\n\r\n\t\tif (seriesId > 0 && vId > 0) {\r\n\t\t\ttry {\r\n\t\t\t\tconst occurrences = await fetchSeriesOccurrences(seriesId, vId);\r\n\t\t\t\tif (Array.isArray(occurrences) && occurrences.length > 0) {\r\n\t\t\t\t\tseriesOccurrences = occurrences.map((occ: any) => ({\r\n\t\t\t\t\t\tid: occ.id,\r\n\t\t\t\t\t\tslug: occ.slug || '',\r\n\t\t\t\t\t\tstartDateTime: occ.startDateTime,\r\n\t\t\t\t\t\tendDateTime: occ.endDateTime || '',\r\n\t\t\t\t\t\tstatus: (occ.ctaState?.reason === 'sold_out' ? 'sold_out' : 'on_sale') as import('$lib/public-calendar-flow/types').EventStatus,\r\n\t\t\t\t\t\tctaText: occ.ctaState?.text || 'Get Tickets',\r\n\t\t\t\t\t\tctaDisabled: occ.ctaState?.disabled || false,\r\n\t\t\t\t\t}));\r\n\t\t\t\t}\r\n\t\t\t} catch {\r\n\t\t\t\t// Non-fatal: event page works without series data\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Password protection check\r\n\t\tif (requiresPassword && !isEventAuthenticated(id)) {\r\n\t\t\tshowPasswordModal = true;\r\n\t\t}\r\n\t});\r\n</script>\r\n\r\n{#if useLegacy && LegacyComponent}\r\n\t<LegacyComponent\r\n\t\trawEvent={rawEventProp}\r\n\t\teventId={eventIdProp}\r\n\t\tslug={slugProp}\r\n\t\tcurrentEventId={currentEventIdProp}\r\n\t\t{onNavigateBack}\r\n\t\t{onBuyTickets}\r\n\t\t{organizationId}\r\n\t\t{labels}\r\n\t/>\r\n{:else}\r\n\t{#if dataLoading}\r\n\t\t<div class=\"flex items-center justify-center py-12 text-center loading-container\">\r\n\t\t\t<p>{labels.loadingEvent || 'Loading event...'}</p>\r\n\t\t</div>\r\n\t{:else if dataError}\r\n\t\t<div class=\"flex flex-col items-center justify-center py-12 text-center gap-4\">\r\n\t\t\t<p class=\"error-text\">{labels.errorPrefix || 'Error:'} {dataError}</p>\r\n\t\t\t{#if onNavigateBack}\r\n\t\t\t\t<button class=\"go-back-btn px-4 py-2 rounded-lg text-white\" onclick={onNavigateBack}>{labels.goBack || 'Go back'}</button>\r\n\t\t\t{/if}\r\n\t\t</div>\r\n\t{:else if eventData}\r\n\t\t{#if isLocked}\r\n\t\t\t<div class=\"locked-wrapper\">\r\n\t\t\t\t<div class=\"locked-overlay absolute inset-0 z-20 flex flex-col items-center justify-center min-h-96\">\r\n\t\t\t\t\t<div class=\"text-center p-8\">\r\n\t\t\t\t\t\t<div class=\"locked-icon-wrapper w-20 h-20 mx-auto mb-4 rounded-full flex items-center justify-center\">\r\n\t\t\t\t\t\t\t<Locked size={32} />\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<h2 class=\"locked-title text-xl font-semibold mb-2\">{labels.passwordProtectedTitle || 'This event is password protected'}</h2>\r\n\t\t\t\t\t\t<p class=\"locked-description text-sm max-w-xs mx-auto mb-6 leading-relaxed\">{labels.passwordProtectedDescription || 'Enter the event password to view details and purchase tickets.'}</p>\r\n\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\tclass=\"unlock-btn py-3 px-6 text-white rounded-lg text-sm font-semibold cursor-pointer\"\r\n\t\t\t\t\t\t\tonclick={() => showPasswordModal = true}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{labels.enterPassword || 'Enter password'}\r\n\t\t\t\t\t\t</button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"blur-content\">\r\n\t\t\t\t\t<AirbnbSplitMain\r\n\t\t\t\t\t\tevent={eventData}\r\n\t\t\t\t\t\tonCheckout={handleCheckout}\r\n\t\t\t\t\t\tonPromoApply={handlePromoApply}\r\n\t\t\t\t\t\tonPromoRemove={handlePromoRemove}\r\n\t\t\t\t\t\tonCollectionEventClick={handleCollectionEventClick}\r\n\t\t\t\t\t\tonShowtimeClick={handleShowtimeClick}\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t{:else}\r\n\t\t\t<AirbnbSplitMain\r\n\t\t\t\tevent={eventData}\r\n\t\t\t\tonCheckout={handleCheckout}\r\n\t\t\t\tonPromoApply={handlePromoApply}\r\n\t\t\t\tonPromoRemove={handlePromoRemove}\r\n\t\t\t\tonCollectionEventClick={handleCollectionEventClick}\r\n\t\t\t\tonShowtimeClick={handleShowtimeClick}\r\n\t\t\t/>\r\n\t\t{/if}\r\n\t{/if}\r\n\r\n\t<InputModal\r\n\t\tbind:open={showPasswordModal}\r\n\t\tsize=\"md\"\r\n\t\ttitle={labels.enterEventPassword || \"Enter event password\"}\r\n\t\tdescription={labels.passwordModalDescription || \"This event requires a password to view. Please enter the password provided by the event organizer.\"}\r\n\t\tinputLabel={labels.passwordLabel || \"Password\"}\r\n\t\tinputType=\"password\"\r\n\t\tbind:inputValue={passwordValue}\r\n\t\tinputRequired={true}\r\n\t\terrorMessage={passwordError}\r\n\t\tshowError={!!passwordError}\r\n\t\tprimaryButtonText={labels.unlockEvent || \"Unlock event\"}\r\n\t\tsecondaryButtonText={labels.goBack || \"Go back\"}\r\n\t\tloading={passwordLoading}\r\n\t\tonconfirm={handlePasswordSubmit}\r\n\t\toncancel={handlePasswordCancel}\r\n\t\tonclose={handlePasswordCancel}\r\n\t/>\r\n{/if}\r\n\r\n<style>\r\n\t.loading-container {\r\n\t\tcolor: hsl(var(--text-secondary, 215 16% 47%));\r\n\t}\r\n\r\n\t.error-text {\r\n\t\tcolor: hsl(var(--status-sold-out, 0 72% 51%));\r\n\t}\r\n\r\n\t.go-back-btn {\r\n\t\tbackground-color: hsl(var(--brand-primary, 224 76% 48%));\r\n\t}\r\n\r\n\t.locked-wrapper {\r\n\t\tposition: relative;\r\n\t}\r\n\r\n\t.blur-content {\r\n\t\tfilter: blur(8px);\r\n\t\tpointer-events: none;\r\n\t\tuser-select: none;\r\n\t}\r\n\r\n\t.locked-overlay {\r\n\t\tbackground-color: hsl(var(--bg-primary, 0 0% 100%) / 95%);\r\n\t}\r\n\r\n\t.locked-icon-wrapper {\r\n\t\tbackground-color: hsl(var(--bg-secondary, 210 20% 98%));\r\n\t\tcolor: hsl(var(--text-tertiary, 220 9% 46%));\r\n\t}\r\n\r\n\t.locked-title {\r\n\t\tcolor: hsl(var(--text-primary, 222 47% 11%));\r\n\t}\r\n\r\n\t.locked-description {\r\n\t\tcolor: hsl(var(--text-secondary, 215 16% 47%));\r\n\t}\r\n\r\n\t.unlock-btn {\r\n\t\tbackground-color: hsl(var(--brand-primary, 224 76% 48%));\r\n\t\tborder: none;\r\n\t\ttransition: background-color 0.2s ease;\r\n\t}\r\n\r\n\t.unlock-btn:hover {\r\n\t\topacity: 0.9;\r\n\t}\r\n</style>\r\n"],"names":["buildEventUrl","id","slug","buildEventBySlugUrl","buildCheckoutUrl","logger","createLogger","useLegacy","$","LegacyComponent","m","rawEventProp","eventIdProp","slugProp","currentEventIdProp","onNavigateBack","onBuyTickets","onNavigateToCart","organizationId","labels","$$props","rawEvent","dataLoading","dataError","baseEventData","transformApiEvent","seriesOccurrences","eventData","showPasswordModal","isPasswordVerified","passwordValue","passwordError","passwordLoading","requiresPassword","isLocked","isEventAuthenticated","evtId","setEventAuthenticated","authedEvents","evtIdStr","handlePasswordSubmit","e","password","checkEventPassword","handlePasswordCancel","lastPromoCode","lastPromoDiscount","handlePromoApply","code","result","validatePromoCode","handlePromoRemove","handleCheckout","orderTotals","quantities","donationAmounts","line","t","persistCheckoutState","initiateOrder","toast","goto","handleCollectionEventClick","event","handleShowtimeClick","occurrence","parseEventId","onMount","fetched","fetchEventDetails","err","trackUTMSource","seriesId","vId","occurrences","fetchSeriesOccurrences","occ","LegacyComponent_1","$$anchor","div","root_3","p","div_1","root_4","p_1","button","root_5","$$args","$$render","consequent_2","text_1","div_2","root_7","div_3","div_4","div_5","Locked","h2","p_2","button_1","div_6","AirbnbSplitMain","node_6","consequent_4","alternate","consequent_1","consequent_3","consequent_5","InputModal","node_7","$$value","consequent","alternate_1"],"mappings":"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"}
1
+ {"version":3,"file":"EventPage-BEh2QNPL.js","sources":["../src/lib/navigation.ts","../src/components/Views/EventPage.svelte"],"sourcesContent":["/**\r\n * Public-calendar URL builders. Centralizes the route shapes so call sites\r\n * stop hand-rolling `goto(`/${id}/${slug}`)` template literals\r\n * (Atlas utility-url-builders convergence). One place per route.\r\n */\r\n\r\n/** Event (or occurrence) page: `/<id>/<slug>`. */\r\nexport function buildEventUrl(id: number | string, slug: string): string {\r\n return `/${id}/${slug}`;\r\n}\r\n\r\n/** Event page by slug only: `/<slug>`. */\r\nexport function buildEventBySlugUrl(slug: string): string {\r\n return `/${slug}`;\r\n}\r\n\r\n/** Checkout for an event: `/<id>/<slug>/checkout`. */\r\nexport function buildCheckoutUrl(id: number | string, slug: string): string {\r\n return `/${id}/${slug}/checkout`;\r\n}\r\n\r\n/** Checkout success page: `/<id>/<slug>/checkout/success`. */\r\nexport function buildCheckoutSuccessUrl(\r\n id: number | string,\r\n slug: string\r\n): string {\r\n return `${buildCheckoutUrl(id, slug)}/success`;\r\n}\r\n","<script module>\r\n\timport { createLogger } from '@getmicdrop/svelte-components';\r\n\tconst logger = createLogger('EventPage');\r\n</script>\r\n\r\n<script lang=\"ts\">\r\n\timport { onMount } from 'svelte';\r\n\timport { goto } from '$app/navigation';\r\n\timport { Locked } from 'carbon-icons-svelte';\r\n\timport { InputModal, parseEventId } from '@getmicdrop/svelte-components';\r\n\timport type { EventId } from '@getmicdrop/svelte-components';\r\n\timport { toast } from '@getmicdrop/svelte-components/toast';\r\n\timport AirbnbSplitMain from '$lib/public-calendar-flow/Event.svelte';\r\n\timport { transformApiEvent } from '$lib/public-calendar-flow/transform';\r\n\timport { validatePromoCode } from '$lib/api/promo';\r\n\timport { buildEventUrl, buildEventBySlugUrl, buildCheckoutUrl } from '$lib/navigation';\r\n\timport {\r\n\t\tpersistCheckoutState,\r\n\t\tinitiateOrder,\r\n\t\ttrackUTMSource,\r\n\t} from '$lib/utils/utils.js';\r\n\timport {\r\n\t\tfetchSeriesOccurrences,\r\n\t\tfetchEventDetails,\r\n\t\tcheckEventPassword,\r\n\t} from '$lib/api';\r\n\timport type {\r\n\t\tEventData,\r\n\t\tPromoCodeState,\r\n\t\tOrderTotals,\r\n\t\tSeriesOccurrence,\r\n\t} from '$lib/public-calendar-flow/types';\r\n\r\n\t// --- Legacy fallback ---\r\n\t// RETIREMENT: 2026-08-13 — see docs/LEGACY_RETIREMENT.md.\r\n\tlet useLegacy = $state(false);\r\n\tlet LegacyComponent: any = $state(null);\r\n\r\n\tif (typeof window !== 'undefined') {\r\n\t\tconst params = new URLSearchParams(window.location.search);\r\n\t\tif (params.get('legacy') === '1') {\r\n\t\t\tuseLegacy = true;\r\n\t\t}\r\n\t}\r\n\r\n\t$effect(() => {\r\n\t\tif (useLegacy && !LegacyComponent) {\r\n\t\t\tlogger.warn(\r\n\t\t\t\t'[VC] DEPRECATED: ?legacy=1 fallback for EventPage retires on 2026-08-13. See docs/LEGACY_RETIREMENT.md.'\r\n\t\t\t);\r\n\t\t\timport('./EventPage.legacy.svelte').then((m) => {\r\n\t\t\t\tLegacyComponent = m.default;\r\n\t\t\t}).catch(() => {\r\n\t\t\t\tuseLegacy = false;\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n\r\n\t// --- Props (matches old EventPage external interface) ---\r\n\tinterface Props {\r\n\t\trawEvent?: any;\r\n\t\teventId?: string | number;\r\n\t\tslug?: string;\r\n\t\tcurrentEventId?: number | null;\r\n\t\tonNavigateBack?: () => void;\r\n\t\tonBuyTickets?: (eventId: EventId, slug: string) => void;\r\n\t\t/**\r\n\t\t * Optional checkout hand-off. The standalone get-micdrop.com route lets\r\n\t\t * this default to navigating to /{id}/{slug}/checkout; the embed passes a\r\n\t\t * callback that renders Checkout in-place instead (the cart is already\r\n\t\t * created when this fires). Receives (id, slug, rawEvent).\r\n\t\t */\r\n\t\tonNavigateToCart?: (id: string | number, slug: string, rawEvent: any) => void;\r\n\t\torganizationId?: string;\r\n\t\tlabels?: Record<string, string>;\r\n\t}\r\n\r\n\tlet {\r\n\t\trawEvent: rawEventProp = undefined,\r\n\t\teventId: eventIdProp = undefined,\r\n\t\tslug: slugProp = '',\r\n\t\tcurrentEventId: currentEventIdProp = undefined,\r\n\t\tonNavigateBack = undefined,\r\n\t\tonBuyTickets = undefined,\r\n\t\tonNavigateToCart = undefined,\r\n\t\torganizationId = '',\r\n\t\tlabels = {},\r\n\t}: Props = $props();\r\n\r\n\t// --- Data state ---\r\n\t/* svelte-ignore state_referenced_locally */\r\n\tlet rawEvent = $state<any>(rawEventProp ?? null);\r\n\t/* svelte-ignore state_referenced_locally */\r\n\tlet dataLoading = $state(!rawEventProp && !!eventIdProp);\r\n\r\n\t// Keep rawEvent in sync if rawEventProp changes reactively\r\n\t$effect(() => {\r\n\t\tif (rawEventProp) rawEvent = rawEventProp;\r\n\t});\r\n\tlet dataError = $state<string | null>(null);\r\n\r\n\t// Transform raw API data to EventData\r\n\tlet baseEventData = $derived(rawEvent ? transformApiEvent(rawEvent) : null);\r\n\tlet id = $derived(eventIdProp || baseEventData?.id || '');\r\n\tlet slug = $derived(slugProp || baseEventData?.slug || '');\r\n\r\n\t// Series occurrences (async enrichment)\r\n\tlet seriesOccurrences = $state<SeriesOccurrence[]>([]);\r\n\tlet eventData = $derived<EventData | null>(\r\n\t\tbaseEventData\r\n\t\t\t? {\r\n\t\t\t\t\t...baseEventData,\r\n\t\t\t\t\tseriesOccurrences: seriesOccurrences.length > 0\r\n\t\t\t\t\t\t? seriesOccurrences\r\n\t\t\t\t\t\t: baseEventData.seriesOccurrences || [],\r\n\t\t\t\t}\r\n\t\t\t: null\r\n\t);\r\n\r\n\t// --- Password protection state ---\r\n\tlet showPasswordModal = $state(false);\r\n\tlet isPasswordVerified = $state(false);\r\n\tlet passwordValue = $state('');\r\n\tlet passwordError = $state('');\r\n\tlet passwordLoading = $state(false);\r\n\r\n\tlet requiresPassword = $derived(!!rawEvent?.password && rawEvent.password.trim() !== '');\r\n\tlet isLocked = $derived(requiresPassword && !isPasswordVerified && !isEventAuthenticated(id));\r\n\r\n\tfunction isEventAuthenticated(evtId: string | number): boolean {\r\n\t\tif (typeof window === 'undefined') return false;\r\n\t\tconst authedEvents = JSON.parse(sessionStorage.getItem('authedEvents') || '[]'); // @storage-escape: authedEvents session-auth state (intentional raw sessionStorage)\r\n\t\treturn authedEvents.includes(String(evtId));\r\n\t}\r\n\r\n\tfunction setEventAuthenticated(evtId: string | number): void {\r\n\t\tif (typeof window === 'undefined') return;\r\n\t\tconst authedEvents = JSON.parse(sessionStorage.getItem('authedEvents') || '[]'); // @storage-escape: authedEvents session-auth state (intentional raw sessionStorage)\r\n\t\tconst evtIdStr = String(evtId);\r\n\t\tif (!authedEvents.includes(evtIdStr)) {\r\n\t\t\tauthedEvents.push(evtIdStr);\r\n\t\t\tsessionStorage.setItem('authedEvents', JSON.stringify(authedEvents)); // @storage-escape: authedEvents session-auth state (intentional raw sessionStorage)\r\n\t\t}\r\n\t}\r\n\r\n\tasync function handlePasswordSubmit(e: any): Promise<void> {\r\n\t\tconst password = e.detail?.value || passwordValue;\r\n\t\tif (!password || !id) return;\r\n\t\tpasswordLoading = true;\r\n\t\tpasswordError = '';\r\n\t\ttry {\r\n\t\t\tconst result = await checkEventPassword(String(id), password);\r\n\t\t\tif (result.valid) {\r\n\t\t\t\tsetEventAuthenticated(id);\r\n\t\t\t\tisPasswordVerified = true;\r\n\t\t\t\tshowPasswordModal = false;\r\n\t\t\t\tpasswordValue = '';\r\n\t\t\t} else {\r\n\t\t\t\tpasswordError = labels.incorrectPassword || 'Incorrect password. Please try again.';\r\n\t\t\t}\r\n\t\t} catch {\r\n\t\t\tpasswordError = labels.unableToVerifyPassword || 'Unable to verify password. Please try again.';\r\n\t\t} finally {\r\n\t\t\tpasswordLoading = false;\r\n\t\t}\r\n\t}\r\n\r\n\tfunction handlePasswordCancel(): void {\r\n\t\tshowPasswordModal = false;\r\n\t\tif (onNavigateBack) onNavigateBack();\r\n\t}\r\n\r\n\t// --- Promo state tracking for checkout persistence ---\r\n\tlet lastPromoCode = $state('');\r\n\tlet lastPromoDiscount = $state(0);\r\n\r\n\tasync function handlePromoApply(code: string): Promise<PromoCodeState> {\r\n\t\tconst result = await validatePromoCode(String(id), code);\r\n\t\tif (!result.valid) {\r\n\t\t\treturn {\r\n\t\t\t\tcode,\r\n\t\t\t\tisApplied: false,\r\n\t\t\t\tisValidating: false,\r\n\t\t\t\terror: result.error || 'Invalid promo code',\r\n\t\t\t\thint: '',\r\n\t\t\t\tdiscountAmount: 0,\r\n\t\t\t\tdiscountType: '',\r\n\t\t\t\tdiscountTicketIds: [],\r\n\t\t\t\trevealHiddenTickets: false,\r\n\t\t\t\trevealTicketIds: [],\r\n\t\t\t};\r\n\t\t}\r\n\t\tlastPromoCode = result.code || code;\r\n\t\tlastPromoDiscount = result.amount || 0;\r\n\t\treturn {\r\n\t\t\tcode: result.code || code,\r\n\t\t\tisApplied: true,\r\n\t\t\tisValidating: false,\r\n\t\t\terror: '',\r\n\t\t\thint: `${(result.code || code).toUpperCase()} applied`,\r\n\t\t\tdiscountAmount: result.amount || 0,\r\n\t\t\tdiscountType: result.discountType === 'percentage' ? '%' : result.discountType === 'fixed' ? '$' : '',\r\n\t\t\tdiscountTicketIds: [],\r\n\t\t\trevealHiddenTickets: result.revealHiddenTickets || false,\r\n\t\t\trevealTicketIds: result.revealTicketIds || [],\r\n\t\t};\r\n\t}\r\n\r\n\tfunction handlePromoRemove(): void {\r\n\t\tlastPromoCode = '';\r\n\t\tlastPromoDiscount = 0;\r\n\t}\r\n\r\n\t// --- Checkout callback ---\r\n\tasync function handleCheckout(orderTotals: OrderTotals): Promise<void> {\r\n\t\tif (!eventData) return;\r\n\r\n\t\t// Reconstruct quantities and donation amounts from OrderTotals lines\r\n\t\tconst quantities: Record<number, number> = {};\r\n\t\tconst donationAmounts: Record<number, number> = {};\r\n\r\n\t\tfor (const line of orderTotals.lines) {\r\n\t\t\tquantities[line.ticketId] = line.quantity;\r\n\t\t\tconst ticket = eventData.tickets.find((t) => t.id === line.ticketId);\r\n\t\t\tif (ticket?.isDonation) {\r\n\t\t\t\tdonationAmounts[line.ticketId] = line.unitPrice;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Persist checkout state for downstream checkout page\r\n\t\tpersistCheckoutState({\r\n\t\t\teventID: String(id),\r\n\t\t\tquantities,\r\n\t\t\tdonationAmounts,\r\n\t\t\tpromocode: lastPromoCode,\r\n\t\t\tpromoDiscountAmount: lastPromoDiscount,\r\n\t\t\ttickets: eventData.tickets.map((t) => ({\r\n\t\t\t\tID: t.id,\r\n\t\t\t\tname: t.name,\r\n\t\t\t\tprice: t.price,\r\n\t\t\t\ttype: String(t.ticketType || 0),\r\n\t\t\t\tvisibility: String(t.isHidden ? 1 : 0),\r\n\t\t\t\tsalesChannel: '0',\r\n\t\t\t})),\r\n\t\t});\r\n\r\n\t\t// Create cart (sets checkout-cartid cookie automatically)\r\n\t\tconst result = await initiateOrder({\r\n\t\t\teventID: id,\r\n\t\t\tquantities,\r\n\t\t\tpromoCode: lastPromoCode || undefined,\r\n\t\t});\r\n\t\tif (!result?.success) {\r\n\t\t\ttoast.error(result?.error || labels.failedToCompleteOrder || 'Failed to complete order. Please try again.');\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Embed: render Checkout in-place. Standalone route: navigate to the\r\n\t\t// checkout page. The cart cookie is set either way by initiateOrder().\r\n\t\tif (onNavigateToCart) {\r\n\t\t\tonNavigateToCart(id, slug, rawEvent);\r\n\t\t} else {\r\n\t\t\tgoto(buildCheckoutUrl(id, slug));\r\n\t\t}\r\n\t}\r\n\r\n\t// --- Navigation callbacks ---\r\n\tfunction handleCollectionEventClick(event: { id?: number | string; slug: string }): void {\r\n\t\tif (event.id) {\r\n\t\t\tgoto(buildEventUrl(event.id, event.slug));\r\n\t\t} else {\r\n\t\t\tlogger.warn('Collection event missing id, navigating by slug only');\r\n\t\t\tgoto(buildEventBySlugUrl(event.slug));\r\n\t\t}\r\n\t}\r\n\r\n\tfunction handleShowtimeClick(occurrence: { id: number; slug: string }): void {\r\n\t\tif (onBuyTickets) {\r\n\t\t\tonBuyTickets(parseEventId(occurrence.id), occurrence.slug);\r\n\t\t} else {\r\n\t\t\tgoto(buildEventUrl(occurrence.id, occurrence.slug));\r\n\t\t}\r\n\t}\r\n\r\n\t// --- Lifecycle ---\r\n\tonMount(async () => {\r\n\t\t// Self-fetch mode (widget builder / color preview)\r\n\t\tif (!rawEvent && eventIdProp) {\r\n\t\t\ttry {\r\n\t\t\t\tconst fetched = await fetchEventDetails(eventIdProp);\r\n\t\t\t\trawEvent = fetched;\r\n\t\t\t} catch (err: any) {\r\n\t\t\t\tdataError = err.message || labels.failedToLoadEvent || 'Failed to load event';\r\n\t\t\t\tdataLoading = false;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tdataLoading = false;\r\n\t\t}\r\n\r\n\t\tif (!rawEvent) return;\r\n\r\n\t\t// UTM tracking — use event ID, not venue ID\r\n\t\tconst evtId = rawEvent.ID || rawEvent.id;\r\n\t\tif (evtId) {\r\n\t\t\ttrackUTMSource(evtId);\r\n\t\t}\r\n\r\n\t\t// Fetch series occurrences\r\n\t\tconst seriesId = rawEvent.eventSeriesId || 0;\r\n\t\tconst vId = rawEvent.venueID || rawEvent.venueId || 0;\r\n\r\n\t\tif (seriesId > 0 && vId > 0) {\r\n\t\t\ttry {\r\n\t\t\t\tconst occurrences = await fetchSeriesOccurrences(seriesId, vId);\r\n\t\t\t\tif (Array.isArray(occurrences) && occurrences.length > 0) {\r\n\t\t\t\t\tseriesOccurrences = occurrences.map((occ: any) => ({\r\n\t\t\t\t\t\tid: occ.id,\r\n\t\t\t\t\t\tslug: occ.slug || '',\r\n\t\t\t\t\t\tstartDateTime: occ.startDateTime,\r\n\t\t\t\t\t\tendDateTime: occ.endDateTime || '',\r\n\t\t\t\t\t\tstatus: (occ.ctaState?.reason === 'sold_out' ? 'sold_out' : 'on_sale') as import('$lib/public-calendar-flow/types').EventStatus,\r\n\t\t\t\t\t\tctaText: occ.ctaState?.text || 'Get Tickets',\r\n\t\t\t\t\t\tctaDisabled: occ.ctaState?.disabled || false,\r\n\t\t\t\t\t}));\r\n\t\t\t\t}\r\n\t\t\t} catch {\r\n\t\t\t\t// Non-fatal: event page works without series data\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Password protection check\r\n\t\tif (requiresPassword && !isEventAuthenticated(id)) {\r\n\t\t\tshowPasswordModal = true;\r\n\t\t}\r\n\t});\r\n</script>\r\n\r\n{#if useLegacy && LegacyComponent}\r\n\t<LegacyComponent\r\n\t\trawEvent={rawEventProp}\r\n\t\teventId={eventIdProp}\r\n\t\tslug={slugProp}\r\n\t\tcurrentEventId={currentEventIdProp}\r\n\t\t{onNavigateBack}\r\n\t\t{onBuyTickets}\r\n\t\t{organizationId}\r\n\t\t{labels}\r\n\t/>\r\n{:else}\r\n\t{#if dataLoading}\r\n\t\t<div class=\"flex items-center justify-center py-12 text-center loading-container\">\r\n\t\t\t<p>{labels.loadingEvent || 'Loading event...'}</p>\r\n\t\t</div>\r\n\t{:else if dataError}\r\n\t\t<div class=\"flex flex-col items-center justify-center py-12 text-center gap-4\">\r\n\t\t\t<p class=\"error-text\">{labels.errorPrefix || 'Error:'} {dataError}</p>\r\n\t\t\t{#if onNavigateBack}\r\n\t\t\t\t<button class=\"go-back-btn px-4 py-2 rounded-lg text-white\" onclick={onNavigateBack}>{labels.goBack || 'Go back'}</button>\r\n\t\t\t{/if}\r\n\t\t</div>\r\n\t{:else if eventData}\r\n\t\t{#if isLocked}\r\n\t\t\t<div class=\"locked-wrapper\">\r\n\t\t\t\t<div class=\"locked-overlay absolute inset-0 z-20 flex flex-col items-center justify-center min-h-96\">\r\n\t\t\t\t\t<div class=\"text-center p-8\">\r\n\t\t\t\t\t\t<div class=\"locked-icon-wrapper w-20 h-20 mx-auto mb-4 rounded-full flex items-center justify-center\">\r\n\t\t\t\t\t\t\t<Locked size={32} />\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<h2 class=\"locked-title text-xl font-semibold mb-2\">{labels.passwordProtectedTitle || 'This event is password protected'}</h2>\r\n\t\t\t\t\t\t<p class=\"locked-description text-sm max-w-xs mx-auto mb-6 leading-relaxed\">{labels.passwordProtectedDescription || 'Enter the event password to view details and purchase tickets.'}</p>\r\n\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\tclass=\"unlock-btn py-3 px-6 text-white rounded-lg text-sm font-semibold cursor-pointer\"\r\n\t\t\t\t\t\t\tonclick={() => showPasswordModal = true}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{labels.enterPassword || 'Enter password'}\r\n\t\t\t\t\t\t</button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"blur-content\">\r\n\t\t\t\t\t<AirbnbSplitMain\r\n\t\t\t\t\t\tevent={eventData}\r\n\t\t\t\t\t\tonCheckout={handleCheckout}\r\n\t\t\t\t\t\tonPromoApply={handlePromoApply}\r\n\t\t\t\t\t\tonPromoRemove={handlePromoRemove}\r\n\t\t\t\t\t\tonCollectionEventClick={handleCollectionEventClick}\r\n\t\t\t\t\t\tonShowtimeClick={handleShowtimeClick}\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t{:else}\r\n\t\t\t<AirbnbSplitMain\r\n\t\t\t\tevent={eventData}\r\n\t\t\t\tonCheckout={handleCheckout}\r\n\t\t\t\tonPromoApply={handlePromoApply}\r\n\t\t\t\tonPromoRemove={handlePromoRemove}\r\n\t\t\t\tonCollectionEventClick={handleCollectionEventClick}\r\n\t\t\t\tonShowtimeClick={handleShowtimeClick}\r\n\t\t\t/>\r\n\t\t{/if}\r\n\t{/if}\r\n\r\n\t<InputModal\r\n\t\tbind:open={showPasswordModal}\r\n\t\tsize=\"md\"\r\n\t\ttitle={labels.enterEventPassword || \"Enter event password\"}\r\n\t\tdescription={labels.passwordModalDescription || \"This event requires a password to view. Please enter the password provided by the event organizer.\"}\r\n\t\tinputLabel={labels.passwordLabel || \"Password\"}\r\n\t\tinputType=\"password\"\r\n\t\tbind:inputValue={passwordValue}\r\n\t\tinputRequired={true}\r\n\t\terrorMessage={passwordError}\r\n\t\tshowError={!!passwordError}\r\n\t\tprimaryButtonText={labels.unlockEvent || \"Unlock event\"}\r\n\t\tsecondaryButtonText={labels.goBack || \"Go back\"}\r\n\t\tloading={passwordLoading}\r\n\t\tonconfirm={handlePasswordSubmit}\r\n\t\toncancel={handlePasswordCancel}\r\n\t\tonclose={handlePasswordCancel}\r\n\t/>\r\n{/if}\r\n\r\n<style>\r\n\t.loading-container {\r\n\t\tcolor: hsl(var(--text-secondary, 215 16% 47%));\r\n\t}\r\n\r\n\t.error-text {\r\n\t\tcolor: hsl(var(--status-sold-out, 0 72% 51%));\r\n\t}\r\n\r\n\t.go-back-btn {\r\n\t\tbackground-color: hsl(var(--brand-primary, 224 76% 48%));\r\n\t}\r\n\r\n\t.locked-wrapper {\r\n\t\tposition: relative;\r\n\t}\r\n\r\n\t.blur-content {\r\n\t\tfilter: blur(8px);\r\n\t\tpointer-events: none;\r\n\t\tuser-select: none;\r\n\t}\r\n\r\n\t.locked-overlay {\r\n\t\tbackground-color: hsl(var(--bg-primary, 0 0% 100%) / 95%);\r\n\t}\r\n\r\n\t.locked-icon-wrapper {\r\n\t\tbackground-color: hsl(var(--bg-secondary, 210 20% 98%));\r\n\t\tcolor: hsl(var(--text-tertiary, 220 9% 46%));\r\n\t}\r\n\r\n\t.locked-title {\r\n\t\tcolor: hsl(var(--text-primary, 222 47% 11%));\r\n\t}\r\n\r\n\t.locked-description {\r\n\t\tcolor: hsl(var(--text-secondary, 215 16% 47%));\r\n\t}\r\n\r\n\t.unlock-btn {\r\n\t\tbackground-color: hsl(var(--brand-primary, 224 76% 48%));\r\n\t\tborder: none;\r\n\t\ttransition: background-color 0.2s ease;\r\n\t}\r\n\r\n\t.unlock-btn:hover {\r\n\t\topacity: 0.9;\r\n\t}\r\n</style>\r\n"],"names":["buildEventUrl","id","slug","buildEventBySlugUrl","buildCheckoutUrl","logger","createLogger","useLegacy","$","LegacyComponent","m","rawEventProp","eventIdProp","slugProp","currentEventIdProp","onNavigateBack","onBuyTickets","onNavigateToCart","organizationId","labels","$$props","rawEvent","dataLoading","dataError","baseEventData","transformApiEvent","seriesOccurrences","eventData","showPasswordModal","isPasswordVerified","passwordValue","passwordError","passwordLoading","requiresPassword","isLocked","isEventAuthenticated","evtId","setEventAuthenticated","authedEvents","evtIdStr","handlePasswordSubmit","e","password","checkEventPassword","handlePasswordCancel","lastPromoCode","lastPromoDiscount","handlePromoApply","code","result","validatePromoCode","handlePromoRemove","handleCheckout","orderTotals","quantities","donationAmounts","line","t","persistCheckoutState","initiateOrder","toast","goto","handleCollectionEventClick","event","handleShowtimeClick","occurrence","parseEventId","onMount","fetched","fetchEventDetails","err","trackUTMSource","seriesId","vId","occurrences","fetchSeriesOccurrences","occ","LegacyComponent_1","$$anchor","div","root_3","p","div_1","root_4","p_1","button","root_5","$$args","$$render","consequent_2","text_1","div_2","root_7","div_3","div_4","div_5","Locked","h2","p_2","button_1","div_6","AirbnbSplitMain","node_6","consequent_4","alternate","consequent_1","consequent_3","consequent_5","InputModal","node_7","$$value","consequent","alternate_1"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import "svelte/internal/disclose-version";
2
2
  import * as e from "svelte/internal/client";
3
3
  import { onMount as ba } from "svelte";
4
- import { aZ as xa, a_ as ya, u as rt, O as st, ah as Bt, a0 as Nt, aF as wa, _ as Aa, aG as Ta, T as Sa, aH as ka, aI as ja, ai as Ea, aj as Da, c as Pa, q as Ia, f as Ca, a as La, r as Ba, g as Na, I as Ma, b as Ra, as as at, a$ as Dt, b0 as Fa, L as Qa, A as Ua, b1 as Pt, ad as Oa, a1 as It } from "./VenueCalendar-ySqncMTn.js";
4
+ import { aZ as xa, a_ as ya, u as rt, O as st, ah as Bt, a0 as Nt, aF as wa, _ as Aa, aG as Ta, T as Sa, aH as ka, aI as ja, ai as Ea, aj as Da, c as Pa, q as Ia, f as Ca, a as La, r as Ba, g as Na, I as Ma, b as Ra, as as at, a$ as Dt, b0 as Fa, L as Qa, A as Ua, b1 as Pt, ad as Oa, a1 as It } from "./VenueCalendar-DweCc8I9.js";
5
5
  import "svelte/transition";
6
6
  import "svelte/easing";
7
- import "./api-ohGBZw0r.js";
8
- import { W as qa } from "./WaitlistModal-DqPbCdOl.js";
9
- import { h as Za } from "./OrderSummary-DRXcg2M_.js";
7
+ import "./api-CV_GBl7b.js";
8
+ import { W as qa } from "./WaitlistModal-Cd-3AkNr.js";
9
+ import { h as Za } from "./OrderSummary-CB03zYc9.js";
10
10
  function Wa(_) {
11
11
  if (!_) return "";
12
12
  switch (_.profileImageSource || "1") {
@@ -1041,4 +1041,4 @@ e.delegate(["click"]);
1041
1041
  export {
1042
1042
  Gr as default
1043
1043
  };
1044
- //# sourceMappingURL=EventPage.legacy-BEKcjbI4.js.map
1044
+ //# sourceMappingURL=EventPage.legacy-AeHwkFwN.js.map