Product updates

Changelog

Recent additions and removals for the primary site (some entries are curated in the platform hub).

  1. Added

    • fix: harden checkout against duplicate ticket purchases
    • fix: close ticket sales 1h before doors using venue timezone
  2. Added

    • feat: ads analytics on Home, campaigns on Marketing Ads; mailing setup and block editor
    • Split venue timezone: shared Luxon resolver vs server-only geo-tz for builds.
    • Email builder UX (merge catalog, previews, presets, autosave); venue timezone; ticketing updates.
    • Denser show editor sidebar via field density context; assorted admin/locale/auth updates
  3. Added

    • Fix show editor: restore blockOrder state in useShowEditorState
    • Graceful errors: AdminErrorBoundary, business route error.tsx, wrap show editor and flow
    • Shows list: single layout mount at md breakpoint to fix duplicate overflow menus
    • Fix platform /es as home: stop [slug] redirect; hero title br tags for next-intl rich text
    • Fix locale: pass x-locale on request headers in middleware
    • Marketing flag locale picker in nav/footer, locale flags routing, translations
    • feat(ticketing): visible page language indicator on event and embed
    • fix(admin): portal show row overflow menu to fix dead clicks
    • feat: workspace show language default with per-show override
    • External shows use live venue capacity for totals; merge show editor save status in header
  4. Added

    • Demo venue seed ownership; agency roster/links resilience; dashboard expense wrap scope
    • Move Representation from sidebar to Settings for performers
    • Agency workspace representation links (schema, APIs, roster, representation UI, nav)
    • Wire next-intl plugin to src/i18n/request.ts for App Router config
    • Fix i18n message loading: static imports for Vercel bundle, validate locale header
    • Demo seed rollout dates and lively extras; i18n messages and locale UI; pending app and workflow updates
    • feat(admin): demo workspace switcher labels and performer/promoter/venue order
    • fix(demo): only upsert workspace members for seeded demo workspaces (avoids P2003)
    • feat(demo): multi-persona workspaces, seeded data, block demo workspace creation
    • Show external ticket sales on attendees tab for internal ticketing (co-sells)
  5. Added

    • Add platform waitlist with public join flow and superadmin hub
    • feat(whatsapp): friendly placeholder legend for starter templates; split pack definitions
  6. Added

    • chore: trigger redeploy
    • fix(whatsapp): Zernio template component types; tabs in admin top bar
    • feat(whatsapp): Zernio webhooks, cancel UI, templates, inbox hints, user-facing errors
    • Move ads and social account linking into Settings hub
    • Treat WhatsApp campaigns as marketing nav (tabs, sidebar, launcher)
    • WhatsApp: template pack install, transactional mirrors, settings hub move
    • Align WhatsApp hub with email-style campaigns (drafts, APIs, SSR routes).
    • Meta EU DSA fields for ads create; simplify Ads date range UI
    • fix(ads): use Zernio GET .../facebook-page for Meta Page picker
    • fix(deps): add direct packages for pnpm (react-resizable, @craftjs/utils, @tiptap/core)
    • fix(social): forward connect_token and userProfile for Zernio Facebook headless flow
    • perf: faster builds via font split, pnpm, and lazy heavy deps
    • Help: topics in admin sidebar; settings sidebar distinct icons
    • Platform hub tabs in top bar; fix dashboard social reconnect alerts (account id + timeout)
    • Help center: use AdminShell when signed in; keep public shell otherwise
    • Settings: dedicated layout with sidebar hidden; Help only from settings nav
    • Ads APIs, campaign flow, dashboard and ad libs
    • Orders overflow menu, expenses filters and chart fixes
    • Align admin directory lists with shows-style UI
    • Refresh Ads manager UI; add Audience hub for contacts and memberships
    • Add WhatsApp ticket standard template toggle, migration, and event marketing wiring
    • Align Ads Manager with Zernio tree API, PUT mutations, and detail hierarchy

    Removed

    • Fix Vercel build: remove marketing/whatsapp page.tsx conflicting with optional catch-all.
    • Move WhatsApp campaigns under Marketing, redirect old URLs, and drop Settings sidebar icons.
    • Settings: restore full admin chrome; settings nav in sidebar; drop duplicate top tabs
  7. Added

    • fix(whatsapp): client-safe whatsapp-shared to avoid pulling server deps in composer
    • fix(whatsapp): resolve send composer import path for new broadcast page
    • WhatsApp hub overhaul: routes, ledger, broadcasts composer, APIs
    • Event marketing: channel checklist UX, KPI strip layout, deeplinks
    • Event dashboard: Marketing first tab and default landing tab
    • Rename Fan geography tab to Demographics; hide upcoming table on mobile
    • Hide automations DM prompts behind flag; polish dashboard KPIs and contacts
    • Shows UI: mobile card footer revenue, status row, optional bar percent; unified filter bar heights
    • Fix show promotion wizard: preview platforms bug, safe JSON parse, POST error handling
    • Fix shows status dropdown clipping with body portal + fixed positioning
    • Shows toolbar: status multi-select dropdown, single row layout, white controls
    • Redesign event Money tab to match marketing layout.
    • Merge workspace home and analytics on dashboard with unified overview layout.
    • Treat INCOMPLETE like open checkout everywhere (filters, dash count, abandoned links)
    • Show event dashboard tabs in desktop top bar; keep hub tabs on mobile in page
    • Fix per-event abandoned-checkout stats: join logs by order.eventId and count INCOMPLETE
    • Clarify abandoned-cart card: snapshot carts vs cumulative email sends
    • Fix email-campaigns 500 by avoiding nested designJson hydration (SQL text scan)
    • Fix marketing tab crash: conversionChannels optional chaining, harden email-campaigns API
    • Harden marketing-performance API against partial query failures
    • Align event dashboard header with marketing mock (breadcrumbs, pills, meta, actions, tabs)
    • fix(marketing): email campaigns card safe JSON and no empty-state on error
    • feat(events): redesign marketing tab with performance API, channels grid, sidebar QR

    Removed

    • Remove Twitter/X from admin; dashboard social reconnect alerts; ads and health refactor
    • Shows list: single-row delete, white table and gradient header, 5x3 thumbs; tighter page spacing; dashboard stats and event nav updates
    • Tidy merged dashboard overview: drop date header, widen sidebar without column divider.
    • Remove event dashboard breadcrumb row
    • fix(marketing): drop tab outer chrome, parse JSON safely
  8. Added

    • feat(shows): simplify mobile toolbar, always grid cards below md
    • style(shows): transparent list/grid toggle track
    • chore: empty commit
    • fix(events-list): add missing return before root fragment for build
    • Polish shows list: top-bar layout switch, combined status badges and AND filters, fixed sort order, trim header.
    • Redesign business shows list with filters, status tabs, grid view, and pagination.
    • Backfill contact city/country from event when joining waitlist
    • Include SHARED collaborator expenses in wrap bottom-line PnL
    • Show city and show date in expenses list Show/Tour column
    • Simplify shared expense list UX; scope wrap PnL to show-only expenses
    • feat(expenses): collapsible filters accordion and Show labels with date/city
    • fix(wrapped-image): restore node JSX assignment for OG route
    • fix(analytics): attribute tour expenses to stops; wrap PnL in ticket currency
    • fix(wrapup): import prisma in load-event-wrapup-data
    • feat(wrapped): show new contacts slide and image line
    • feat(wrapped): add revenue/expenses/profit slide and OG export
    • Backfill Ticket rows for legacy orders before attendees list/export
    • Admin sold totals include archived public tiers; capacity unchanged

    Removed

    • refactor(shows): remove Manage link, ellipsis overflow trigger
    • style(shows): drop card wrapper around filter toolbar
    • fix(events-list): define thumb src from url (remove undefined thumbnailSrc)
  9. Added

    • Waitlist: notify encore dates by tour, venue, and city match
    • Align admin capacity with public checkout pool; hero and preview tweaks
    • Show editor and ticketing: unified media with carousel when 2+ items, title falls back to event name, preview hides guest/crew and uses event currency, 16:9 hero; plus promotions, domains, comment automation, and test updates.
    • Show pending domain purchases on buy page with cancel
    • Add attendees CSV export from event dashboard Attendees tab

    Removed

    • Events: external sold-out/waitlist parity, past zero-sales delete, UTC ticket delta; waitlist copy and UI; Order.refundedAt
  10. Added

    • fix: treat external ticket sales as part of public inventory pool
    • Craft builder: pick nodes from breakpoint previews to switch edit viewport; trim loader props; Nav responsive tweaks.
    • Craft builder: draft/live UX, SEO, versions, templates, Card, site styles
    • fix(builder): persist Nav color clears and stop responsive overrides from resurrecting
    • feat(builder): duplicate pages via API and selected layers in Craft
    • Fix builder side previews on responsive custom; nav hamburger off at 0
    • Builder: 1440 desktop, sandbox fixed nav previews; optional button width (Button + Nav)
    • fix(builder): trackpad two-finger scroll pans infinite canvas
    • feat(builder): responsive prop overrides, Framer-style canvas, nav fixes
    • feat(builder): scaled canvas viewport + nav alignment, link variants, hover controls

    Removed

    • feat: waitlist layout, drop party size question, IP-based phone dial default
    • Craft builder: sidebar Blocks/Layers/Pages, drop zoom bar hint text

Back home