"use client" import { useEffect, useState } from "react" import { Eye, Pencil } from "lucide-react" import { Label } from "@/components/ui/label" import { Textarea } from "@/components/ui/textarea" import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs" import { MarkdownRenderer } from "@/components/markdown-renderer" import { cn } from "@/lib/utils" interface MarkdownInputProps { id: string label: string value: string onChange: (value: string) => void placeholder?: string required?: boolean rows?: number className?: string invalid?: boolean } export function MarkdownInput({ id, label, value, onChange, placeholder, required = false, rows = 6, className, invalid = false, }: MarkdownInputProps) { const [tab, setTab] = useState<"edit" | "preview">("edit") useEffect(() => { if (invalid) setTab("edit") }, [invalid]) return ( setTab(next as "edit" | "preview")} className={cn("gap-2", className)} >
Bearbeiten Vorschau