'use client'; import { BarChart3, Check } from 'lucide-react'; import { useTranslations } from 'next-intl'; import { Button, type ButtonProps } from '@/components/ui/button'; import { useComparisonStore } from '@/lib/comparison-store'; interface AddToCompareButtonProps extends Omit { listingId: string; compact?: boolean; } export function AddToCompareButton({ listingId, compact, ...props }: AddToCompareButtonProps) { const t = useTranslations('compare'); const isSelected = useComparisonStore((s) => s.isSelected(listingId)); const addToCompare = useComparisonStore((s) => s.addToCompare); const removeFromCompare = useComparisonStore((s) => s.removeFromCompare); const canAdd = useComparisonStore((s) => s.canAdd()); const handleClick = (e: React.MouseEvent) => { e.preventDefault(); e.stopPropagation(); if (isSelected) { removeFromCompare(listingId); } else { addToCompare(listingId); } }; if (compact) { return ( ); } return ( ); }