'use client' import React, { useState } from 'react' import { ArrowRight, Check } from 'lucide-react' export interface NavigationLink { label: string href: string } export interface LettersFromTheGardenProps { brandName?: string title?: string description?: string newsletterPlaceholder?: string copyrightText?: string artworkSrc?: string onSubscribe?: (email: string) => Promise | void navigation?: NavigationLink[] socials?: NavigationLink[] legal?: NavigationLink[] className?: string } export function LettersFromTheGarden({ brandName = 'Kashmir', title = 'Letters from the garden', description = 'Occasional notes from the garden, seasonal stories, and quiet things worth sharing.', newsletterPlaceholder = 'Your email address', copyrightText = '© 2026 Kashmir', artworkSrc = '/garden-scene@2x.png', onSubscribe, navigation = [ { label: 'About', href: '#about' }, { label: 'Retreat', href: '#retreat' }, { label: 'Journal', href: '#journal' }, { label: 'Visit', href: '#visit' }, ], socials = [ { label: 'TikTok', href: 'https://tiktok.com' }, { label: 'Instagram', href: 'https://instagram.com' }, { label: 'Twitter', href: 'https://twitter.com' }, { label: 'Contact', href: '#contact' }, ], legal = [ { label: 'Privacy', href: '#privacy' }, { label: 'Terms', href: '#terms' }, { label: 'Cookie', href: '#cookie' }, ], className = '', }: LettersFromTheGardenProps) { const [email, setEmail] = useState('') const [subscribed, setSubscribed] = useState(false) const [isSubmitting, setIsSubmitting] = useState(false) const handleSubmit = async (e: React.FormEvent) => { e.preventDefault() if (!email || isSubmitting) return setIsSubmitting(true) if (onSubscribe) { await onSubscribe(email) } else { await new Promise((resolve) => setTimeout(resolve, 500)) } setIsSubmitting(false) setSubscribed(true) } return ( ) } export default LettersFromTheGarden