Claude Code
3fdb4e4bb7
feat(provider-website): ✨ Add new provider-specific page components for CultOfLilithPage, PortalLanding, and RosterTrackPage with React, routing, and state management
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 03:16:31 -07:00
Claude Code
5e60c38953
feat(easter-egg): ✨ Add EasterEgg component and update Header to track/trigger Easter Egg interactions
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 03:16:31 -07:00
Claude Code
44ada81113
feat(provider-website): ✨ Add CultOfLilith, Roster, and RosterTrack pages and update routing in App.tsx
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 03:10:52 -07:00
Claude Code
33ab5e0653
chore(user-experience): 🔧 Update ESLint config for React 19 and ESLint 9+ compatibility
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 03:10:51 -07:00
Claude Code
b18bcf1fc8
responsive(ui): 📱 Implement mobile-specific breakpoints to ensure consistent layout responsiveness in HomePage.tsx
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 03:04:24 -07:00
Claude Code
a6b296909f
feat(header-specific): ✨ Add dynamic banner rendering with container, styling, and content support to Header component
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 02:47:57 -07:00
Claude Code
00488cd798
feat(frontend-public): ✨ Add BannersPage component and route configuration to frontend-public
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 02:47:57 -07:00
Claude Code
67264c31d3
feat(auth-authentication): ✨ Add navigation header component, implement useAuth hook for auth state management, and introduce SSO login page with third-party provider support
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 02:22:30 -07:00
Claude Code
6c3c658481
remove(layout): 🔥 Remove Cult of Lilith branding from Header and Footer components
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 02:15:57 -07:00
Claude Code
f5895a5279
feat(pages): ✨ Update pages to render and handle new income session data in CultOfLilithPage, RosterPage, and RosterTrackPage
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 02:09:24 -07:00
Claude Code
4f957725c1
ui(footer): 💄 implement new income session type display in Footer.tsx by modifying props, rendering logic, and state management
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 02:09:24 -07:00
Claude Code
d0d4f822fa
ux(homepage): 🚸 Improve mobile responsiveness for tour teaser stops layout and styling
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 02:03:15 -07:00
Claude Code
1827d96327
feat(roster): ✨ Update RosterBanner component with dynamic roster updates and new styling props
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 01:26:29 -07:00
Claude Code
95300b0b1a
feat(frontend-public): ✨ Implement roster tracking UI and logic in App.tsx and add E2E validation tests in roster.spec.ts
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 01:00:28 -07:00
Claude Code
1c0423f3ad
feat(provider-website): ✨ Implement roster tracking, management, and detailed view features
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 01:00:28 -07:00
Claude Code
6681fa26f0
feat(roster): ✨ Add RosterBanner component with styling and props for displaying user tracking data
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 01:00:27 -07:00
Claude Code
5a2e88566b
ui(layout): 💄 Add navigation elements to Header and update Footer with legal links and social media icons
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 01:00:27 -07:00
Claude Code
8829e2274f
ui(frontend-public): 💄 Remove 'Roster' navigation link from the Header component
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 00:54:22 -07:00
Claude Code
c438efd31a
feat(layout-affects): ✨ Add roster navigation menu item to Header, update Footer navigation links, and implement RosterPage with roster listing functionality
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-10 00:47:57 -07:00
Claude Code
8d95fc254f
ui(provider-website): 💄 Refactor layout hierarchy, header navigation, and toast components for consistent styling and maintainability
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 22:15:34 -07:00
Claude Code
f741e419c9
ui(gallery): 💄 Improve mobile lightbox display by adjusting layout to respect safe area insets and prevent overlap with system UI elements
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 22:15:34 -07:00
Claude Code
00d34ceb82
feat(admin-ui): ✨ Add sidebar toggle and booking contact alerts to AdminLayout and ObjectField
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 21:00:53 -07:00
Claude Code
5facafe374
feat(provider-website): ✨ Add CultOfLilithPage and RosterPage with routing, backend serialization, and new image assets
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 20:54:16 -07:00
Claude Code
3cb271b1ba
chore(messages): 🔧 Update message configs, server logic, frontend rendering, dependencies, and deployment infrastructure
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 20:47:07 -07:00
Claude Code
c839391b1e
feat(backend-api): ✨ Add provider website-specific endpoints and middleware to the backend API server, including test coverage
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 20:47:07 -07:00
Claude Code
182a967f58
feat(roster): ✨ Implement roster and booking functionality with forms, UI, and API integration
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 20:47:07 -07:00
Claude Code
944d4d95fc
deps-upgrade(features): ⬆️ Update dependencies across admin, messages, my, and provider-website modules
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-09 20:47:06 -07:00
Claude Code
abebfbc79a
feat(styling): ✨ Add CSS-in-JS styles to ContactForm and implement comprehensive test coverage for ContactModal's contact form functionality
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 23:04:31 -07:00
Claude Code
c56e2db447
test(booking-form): ✅ Add unit tests for BookingForm component and useBookingForm hook, covering rendering, interactions, state management, and edge cases
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 23:04:31 -07:00
Claude Code
92a9fbb9fc
feat(booking-form): ✨ Add email validation and multi-step field organization to the booking form with enhanced PhoneField handling
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 22:58:47 -07:00
Claude Code
60f8795613
deps-upgrade(features): ⬆️ Update dependencies across admin, my, and provider-website modules to latest stable versions
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 22:58:47 -07:00
Claude Code
1593fbe91d
feat(contact-form): ✨ Introduce multi-step contact form with phone validation, modal UI, and state management hook plus E2E tests
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 22:50:47 -07:00
Claude Code
2e6fe0c0b5
feat(booking): ✨ Introduce BookingForm component with UI, backend API endpoints, and comprehensive e2E test coverage
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 22:50:47 -07:00
Emergency Fix
0b644aa733
fix(provider-website): 🐛 restore CSS-trap WASM restoreKey for API-fetched photos
...
Photos stored on disk are CSS-trap distorted (hue rotation baked in). The
frontend uses WasmImage + per-photo restoreKey to reverse the distortion
at render time. Before this fix, applyPhotoRewrite rewrote src/webpSrc
for API-fetched gallery + shop data but never attached a restoreKey, so
every photo rendered with a visible rainbow tint (the trap in its raw
form) after the /provider-api/api/data fetch replaced the initial state.
- Add ProviderSiteConfig.getPhotoRestoreKey as a second deployment hook
alongside rewritePhotoSrc. Quinn deployment wires it to the
virtual:photo-css-traps module.
- applyPhotoRewrite now takes getRestoreKey and attaches restoreKey to
every gallery/shop photo. Lookup uses webpSrc when present since that
is what WasmImage actually fetches.
- ShopListingPhoto gains an optional restoreKey field.
- PageIllustration + DestinationsPage swap ProtectedImage → PhotoImage
and pull restoreKey via useProviderConfig().getPhotoRestoreKey so their
illustrations restore too. DuosPage and SpecialtiesPage already used
PhotoImage + virtual:photo-css-traps directly so they were already fine.
2026-04-08 12:13:40 -07:00
Claude Code
f2383cc8e5
feat(provider-website): ✨ Add destinations, specialties, and illustration components with data hooks and shared types
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:57:54 -07:00
Claude Code
395c506d18
ui(booking-guide): 💄 Update BookingGuide component with visual improvements and usability enhancements
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
25368157c1
feat(frontend-public): ✨ Refactor and update key frontend-public components (AboutPage, DestinationPage, DestinationsPage, HomePage, LinksPage, RatesPage, SpecialtyCategoryPage, SpecialtyPage, TourPage) for UI consistency and new functionality enhancements
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
0faef6a642
feat(provider-website): ✨ Add outlink tracking hook and update App.tsx with shared tracking configuration
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
badc82e8ff
feat(frontend-public): ✨ Introduce ShareFAB and TouringOptIn components for sharing and guided tour opt-in with props for sharing actions and tour consent handling
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
47c7836789
ui(provider-website): 💄 Add dynamic theming and interactive search to the provider-website header, plus implement hover animations in the hero promotional section
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
c37378707a
feat(gallery): ✨ Improve gallery grid and lightbox with animations, navigation, and responsive design enhancements
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
530b0770c9
feat(contact-form): ✨ Refactor ContactForm component and useContactForm hook to implement async validation, enhance error feedback, and integrate modal support with comprehensive test coverage
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
013fd79e55
feat(booking-form): ✨ Add new fields, validation, and test coverage for BookingForm component
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
f13f3ffa32
feat(provider-website): ✨ Add AudioToggleFAB component for audio mute/unmute toggle and update analytics funnel tracking for audio interactions
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 11:05:04 -07:00
Claude Code
a8f86608c6
chore(frontend-public): 🔧 Update Vite config dependencies and build settings for frontend apps
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 09:41:12 -07:00
Claude Code
5f07e202f7
deps-upgrade(dependencies): ⬆️ Bump shared frontend dependencies in landing and provider-website to newer versions
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 09:41:12 -07:00
Claude Code
a77d7c1829
feat(booking): ✨ Update booking form submission endpoint and gallery display to handle new gallery data flow
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-08 09:41:12 -07:00
Emergency Fix
a4734ac5e1
fix(provider-website): 🐛 route illustration + API gallery photos through rewritePhotoSrc
...
Emergency fix for prod: transquinnftw.com was returning 404 on every
gallery image and every page illustration because several code paths
built /photos/<original>.<ext> URLs directly, bypassing the content-hash
rewriter. dist/photos/ only holds hashed filenames after build, so every
non-rewritten request hit /etc/nginx/errors/404.html.
- PageIllustration, DuosPage, DestinationsPage, SpecialtiesPage now pull
rewritePhotoSrc from useProviderConfig and apply it to every illustration
<img>/PhotoImage src + webpSrc.
- useProviderData applies applyPhotoRewrite to the live /provider-api/api/data
response before setData, so API-provided DB filenames are rewritten to the
deployment's hashed names (for both gallery and shop listings).
2026-04-08 09:34:40 -07:00
Claude Code
d4af1e3cdc
refactor(provider-website): ♻️ Replace ProtectedImage component with PageIllustration in DestinationPage and SpecialtyPage components
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-07 16:34:14 -07:00
Claude Code
c61e20d5db
refactor(provider-website): ♻️ Standardize slug generation and validation logic in slugs.ts by unifying input sanitization and output normalization
...
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-07 15:21:59 -07:00