'use client'; import { Button } from '@/components/ui/Button'; import { Label, Text } from '@/components/ui/Typography'; import { useTranslation } from '@/lib/hooks/useTranslation'; import { AlertCircle, CheckCircle } from 'lucide-react'; import { FormEvent, useState, useTransition } from 'react'; import { validateDiscountCode } from './actions'; export function CartDiscountForm() { const { t } = useTranslation(); const [isPending, startTransition] = useTransition(); const [couponCode, setCouponCode] = useState(''); const [couponMessage, setCouponMessage] = useState<{ text: string; isValid: boolean } | null>(null); // Handle coupon validation const handleCouponSubmit = (e: FormEvent) => { e.preventDefault(); if (!couponCode.trim()) { setCouponMessage({ text: 'Please enter a discount code', isValid: false }); return; } setCouponMessage(null); startTransition(async () => { try { const result = await validateDiscountCode({}, couponCode); setCouponMessage({ text: result.message, isValid: result.isValid }); } catch (error) { setCouponMessage({ text: 'Error validating coupon code', isValid: false }); } }); }; return (