'use client' import { Dialog } from '@headlessui/react' import { useEffect, useState, useRef } from 'react' import Button from './Button' export type CookieEntry = { name: string; value: string } type CookieModalProps = { open: boolean onClose: () => void onApply: (cookies: CookieEntry[]) => void initialCookies: CookieEntry[] } export default function CookieModal({ open, onClose, onApply, initialCookies, }: CookieModalProps) { const [name, setName] = useState('') const [value, setValue] = useState('') const [cookies, setCookies] = useState([]) const wasOpen = useRef(false) // ✅ Beim Öffnen: Inputs resetten UND Cookies aus Props übernehmen useEffect(() => { if (open && !wasOpen.current) { setName('') setValue('') setCookies(initialCookies ?? []) } wasOpen.current = open }, [open, initialCookies]) function addCookie() { const n = name.trim() const v = value.trim() if (!n || !v) return setCookies((prev) => { const filtered = prev.filter((c) => c.name !== n) return [...filtered, { name: n, value: v }] }) setName('') setValue('') } function removeCookie(n: string) { setCookies((prev) => prev.filter((c) => c.name !== n)) } function applyAndClose() { onApply(cookies) onClose() } return ( ) }