'use client'; import { useState } from 'react'; type Comment = { id: number; author: string; text: string; }; type Props = { comments: Comment[]; onClose: () => void; }; // πŸ” Simulierter eingeloggter User const CURRENT_USER_NAME = 'Du'; // 😊 Kleine, sinnvolle Emoji-Auswahl (Start) const EMOJIS = ['😍', 'πŸ˜‚', 'πŸ₯°', '🐢', '🐱', '❀️', 'πŸ”₯', 'πŸ‘', 'πŸ₯Ή', '😎']; export default function CommentModal({ comments, onClose }: Props) { const [localComments, setLocalComments] = useState(comments); const [newComment, setNewComment] = useState(''); const [showEmojis, setShowEmojis] = useState(false); function handleSubmit(e: React.FormEvent) { e.preventDefault(); if (!newComment.trim()) return; const optimisticComment: Comment = { id: Date.now(), author: CURRENT_USER_NAME, text: newComment.trim(), }; setLocalComments((prev) => [...prev, optimisticComment]); setNewComment(''); setShowEmojis(false); console.log('NEW COMMENT (mock):', optimisticComment); } function addEmoji(emoji: string) { setNewComment((prev) => prev + emoji); } return (
{/* HEADER */}
Kommentare
{/* LISTE */}
{localComments.length === 0 && (

Noch keine Kommentare.

)} {localComments.map((comment) => (
{comment.author}
{comment.text}
))}
{/* EINGABE */}
{/* Emoji Picker */} {showEmojis && (
{EMOJIS.map((emoji) => ( ))}
)} {/* Input Row */}
setNewComment(e.target.value)} placeholder="Kommentar schreiben …" style={{ flex: 1, padding: '0.6rem 0.8rem', borderRadius: '12px', border: '1px solid #ccc', }} />
); }