import React from 'react'; import { ChevronLeft, ChevronRight } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Message } from "@/types/chat"; interface MessageVariationControlsProps { message: Message; onSelectVariation?: (messageId: string, variationId: string) => void; } export const MessageVariationControls: React.FC = ({ message, onSelectVariation }) => { if (!message.variations || message.variations.length <= 1 || !onSelectVariation) { return null; } // Function to get the current variation index and navigate through variations const navigateVariations = (direction: 'prev' | 'next') => { const currentIndex = message.activeVariation ? message.variations!.findIndex(v => v.id === message.activeVariation) : 0; let newIndex; if (direction === 'prev') { newIndex = (currentIndex - 1 + message.variations!.length) % message.variations!.length; } else { newIndex = (currentIndex + 1) % message.variations!.length; } onSelectVariation(message.id, message.variations![newIndex].id); }; // Get current variation index for display const getCurrentVariationIndex = () => { return message.activeVariation ? message.variations!.findIndex(v => v.id === message.activeVariation) + 1 : 1; }; return (
{getCurrentVariationIndex()}/{message.variations.length}
); };