"use client" import type React from "react" import { useState } from "react" import { Mail, ArrowRight, Check } from "lucide-react" import { cn } from "@/lib/utils" import { Input } from "@/components/ui/input" import { Button } from "@/components/ui/button" interface SubscriptionEmailProps { className?: string headline?: string subheadline?: string buttonText?: string successMessage?: string } export default function SubscriptionEmail({ className, headline = "Exclusive Early Access", subheadline = "Be the first to shop our limited collections and receive personalized style recommendations", buttonText = "Subscribe", successMessage = "You're on the list", }: SubscriptionEmailProps) { const [email, setEmail] = useState("") const [isSubmitting, setIsSubmitting] = useState(false) const [isSubmitted, setIsSubmitted] = useState(false) const [isValid, setIsValid] = useState(true) const handleSubmit = async (e: React.FormEvent) => { e.preventDefault() // Basic email validation const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/ if (!emailRegex.test(email)) { setIsValid(false) return } setIsSubmitting(true) // Simulate API call await new Promise((resolve) => setTimeout(resolve, 1000)) setIsSubmitting(false) setIsSubmitted(true) } return (
{subheadline}
{!isSubmitted ? ( ) : (By subscribing, you agree to our Privacy Policy and consent to receive updates from our company.