Next.js 15 App Router mit öffentlicher Übersicht und geschütztem Admin-Bereich zur Pflege von Datenschutzerklärungen nach Art. 12ff. DSGVO. - Oberfläche auf Basis von shadcn/ui, Inter lokal eingebunden - Prisma/SQLite, Auth.js mit Credentials-Provider und Rollen - Massenimport der Merkblätter des Amtes Leezen aus PDF - Docker-Image (standalone) und Gitea-Workflow zur Veröffentlichung Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
30 lines
957 B
TypeScript
30 lines
957 B
TypeScript
"use client"
|
|
|
|
import { Toaster as Sonner, type ToasterProps } from "sonner"
|
|
|
|
import { useTheme } from "@/hooks/use-theme"
|
|
|
|
function Toaster(props: ToasterProps) {
|
|
const { resolvedTheme } = useTheme()
|
|
|
|
return (
|
|
<Sonner
|
|
theme={resolvedTheme}
|
|
className="toaster group"
|
|
position="bottom-right"
|
|
toastOptions={{
|
|
classNames: {
|
|
toast:
|
|
"group toast group-[.toaster]:!rounded-lg group-[.toaster]:!border group-[.toaster]:!border-border group-[.toaster]:!bg-popover group-[.toaster]:!text-sm group-[.toaster]:!text-popover-foreground group-[.toaster]:!shadow-lg",
|
|
description: "group-[.toast]:!text-sm group-[.toast]:!text-muted-foreground",
|
|
actionButton: "group-[.toast]:!bg-primary group-[.toast]:!text-primary-foreground",
|
|
cancelButton: "group-[.toast]:!bg-muted group-[.toast]:!text-muted-foreground",
|
|
},
|
|
}}
|
|
{...props}
|
|
/>
|
|
)
|
|
}
|
|
|
|
export { Toaster }
|