"use client" import dynamic from 'next/dynamic' import { useState, useRef, useEffect } from 'react' import { Button } from '@/components/ui/button' import { Smile } from 'lucide-react' // Динамически импортируем EmojiPicker чтобы избежать проблем с SSR const EmojiPicker = dynamic( () => import('emoji-picker-react'), { ssr: false } ) interface EmojiPickerComponentProps { onEmojiSelect: (emoji: string) => void } export function EmojiPickerComponent({ onEmojiSelect }: EmojiPickerComponentProps) { const [showPicker, setShowPicker] = useState(false) const pickerRef = useRef(null) useEffect(() => { const handleClickOutside = (event: MouseEvent) => { if (pickerRef.current && !pickerRef.current.contains(event.target as Node)) { setShowPicker(false) } } if (showPicker) { document.addEventListener('mousedown', handleClickOutside) } return () => { document.removeEventListener('mousedown', handleClickOutside) } }, [showPicker]) const handleEmojiClick = (emojiData: { emoji: string }) => { onEmojiSelect(emojiData.emoji) setShowPicker(false) } return (
{showPicker && (
)}
) }