Updates

Version history and recent changes to the Legacy Vineyards website.

v1.5.0

Added

  • Updates page at `/updates` displaying the full version history parsed from CHANGELOG.md
  • Footer version number now links to the updates page

v1.4.3

Fixed

  • Fix color contrast accessibility violation in PageNotConfigured fallback component (text-yellow-600 on bg-yellow-50 had 2.84 contrast ratio, changed to text-yellow-800 for WCAG 2 AA compliance)

v1.4.2

Fixed

  • Fix e2e smoke tests for vineyard and accommodations pages to accept either CMS content or the "Page Not Set Up Yet" fallback when Sanity data is unavailable in CI

v1.4.1

Fixed

  • Fix CI build failure when `NEXT_PUBLIC_SANITY_PROJECT_ID` secret is missing or empty
  • Guard Sanity client creation in `sanity.fetch.ts` so `sanityFetch` returns `null` when no project ID is available
  • Remove throwing `assertValue` in `sanity/env.ts` in favor of safe defaults
  • Add null guard in `TestimonialsSection` for when Sanity data is unavailable

Added

  • Add `lint` and `typecheck` jobs to CI workflow to match documented pipeline

v1.4.0

Added

  • Content Editor Guide page at `/content-guide` for Sanity Studio editors

v1.3.0

Changed

  • Replaced fragile system font fallbacks with self-hosted Prata and Raleway via `next/font/google`
  • Extracted shared `backgroundClasses` and `isDarkBackground` to `src/lib/section-styles.ts` (DRY)
  • Extracted shared `navItems` to `src/lib/navigation.ts`, eliminating triple-duplicated nav links
  • Split monolithic `queries.ts` (572 lines) into per-page modules under `queries/`
  • Moved Google Analytics measurement ID from hardcoded value to `NEXT_PUBLIC_GA_MEASUREMENT_ID` env var
  • Removed `container` from root layout; sections now own their own widths, eliminating full-bleed breakout hacks
  • Extracted shared `PageNotConfigured` component for empty Sanity page fallback

Removed

  • Removed unused `styled-components` and `vite` from dependencies
  • Removed duplicate entries in `tsconfig.json` include array

v1.2.4

Changed

  • Enabled Sanity CDN and tag-based caching (was bypassing CDN and cache entirely)
  • Moved dynamic import of LegacySectionAnimationWrapper to module scope to prevent remounts
  • Debounced MutationObserver in AnimateOnScroll to reduce DOM query overhead
  • Added dns-prefetch and preconnect hints for cdn.sanity.io and Google Analytics
  • Removed unused dark mode CSS that caused flash-of-wrong-theme on dark-mode devices
  • Removed unused CSS keyframes (fadeIn, slideInLeft, slideInRight, slideInUp) and classes
  • Removed unused Geist font theme variables from CSS
  • Removed unused Next.js starter template SVGs from public/
  • Set client-side Router Cache staleTimes.dynamic to 30s (was 0, refetching on every navigation)

v1.2.3

Changed

  • Updated dependencies: @playwright/test, @sanity/vision, @tailwindcss/postcss, @types/node, @types/react, eslint (patch), framer-motion, lucide-react, next-sanity, sanity, styled-components, tailwindcss

v1.2.2

Fixed

  • Footer version text color contrast now meets WCAG 2 AA standards (changed from gray-400 to gray-500)

v1.2.1

Added

  • Implemented semantic versioning (SemVer)
  • Added CHANGELOG.md to track version history

Fixed

  • Fixed content not loading on client-side navigation (animation observer not re-running)
  • AnimateOnScroll now uses MutationObserver to detect dynamically added elements

Changed

  • Footer version now pulls directly from package.json
  • Moved version display inline with copyright (left/right layout)

v1.2.0

Changed

  • Increased mobile menu logo size for better visibility (responsive: h-52/h-64/h-80)
  • Increased mobile menu close button (X) size to size-12
  • Increased mobile menu text size to text-3xl for better accessibility
  • Aligned close button to top of menu panel with items-start

Added

  • Loading states for vineyard and accommodations pages
  • Version display in footer

v1.1.0

Added

  • Sanity CMS integration for dynamic content management
  • PageBuilder component for flexible page layouts
  • Revalidation webhook for instant content updates
  • Multiple section types (Hero, Content, Gallery, Testimonials, etc.)

v1.0.0

Added

  • Initial release with static pages
  • Home page with hero, experience, and legacy sections
  • Vineyard page
  • Accommodations page
  • Contact page with inquiry form
  • Responsive navigation with sticky header
  • Scroll-triggered animations