'use client'; import { useState, useEffect } from 'react'; import Link from 'next/link'; import FilmStripSlider from '@/components/FilmStripSlider'; import PromoPreference from '@/components/PromoPreference'; import { HeroBanner, HeroBannerSettings } from '@/types'; import { heroBannersApi } from '@/lib/api'; import { useTranslation } from '@/lib/i18n'; export default function Home() { const { t, language } = useTranslation(); const [banners, setBanners] = useState([]); const [bannerSettings, setBannerSettings] = useState(); const [bannerLoaded, setBannerLoaded] = useState(false); const [showFallback, setShowFallback] = useState(false); useEffect(() => { setBannerLoaded(false); setShowFallback(false); // 3초 후에도 로딩 안 되면 샘플 배너 표시 const fallbackTimer = setTimeout(() => { setShowFallback(true); }, 3000); const loadBanners = async () => { try { const [bannersData, settingsData] = await Promise.all([ heroBannersApi.getList(language), heroBannersApi.getSettings(), ]); setBanners(bannersData); setBannerSettings(settingsData); } catch (error) { console.error('Failed to load banners:', error); setShowFallback(true); } finally { setBannerLoaded(true); clearTimeout(fallbackTimer); } }; loadBanners(); return () => clearTimeout(fallbackTimer); }, [language]); return (
{/* Hero Section with Film Strip Slider */}

{t.premiumKoreanUsedCars}

{t.qualityVehiclesExported}

{/* Film Strip Slider */}
{/* Spacer for centering Request Vehicle */}
{/* Request Vehicle Button - Centered */} {t.requestVehicle} {/* Divider */}
{/* Promo Preference - Right side */}
{/* Features */}

{t.whyChooseUs}

{t.qualityAssured}

{t.qualityAssuredDesc}

{t.bestPrices}

{t.bestPricesDesc}

{t.fullSupport}

{t.fullSupportDesc}

{/* CTA */}

{t.readyToFindYourCar}

{t.browseOurCollection}

{t.browseCars} {t.contactUs}
); }