'use client' import { useState } from 'react' import { StepHeader, STEP_EXPLANATIONS } from '@/components/sdk/StepHeader' import { History } from 'lucide-react' import { ConsentRecord } from './_types' import { useConsents } from './_hooks/useConsents' import { EinwilligungenNavTabs } from './_components/EinwilligungenNavTabs' import { StatsGrid } from './_components/StatsGrid' import { SearchAndFilter } from './_components/SearchAndFilter' import { RecordsTable } from './_components/RecordsTable' import { Pagination } from './_components/Pagination' import { ConsentDetailModal } from './_components/ConsentDetailModal' export default function EinwilligungenPage() { const { records, currentPage, setCurrentPage, totalRecords, globalStats, handleRevoke, } = useConsents() const [filter, setFilter] = useState('all') const [searchQuery, setSearchQuery] = useState('') const [selectedRecord, setSelectedRecord] = useState(null) const filteredRecords = records.filter(record => { const matchesFilter = filter === 'all' || record.consentType === filter || record.status === filter const matchesSearch = searchQuery === '' || record.email.toLowerCase().includes(searchQuery.toLowerCase()) || record.identifier.toLowerCase().includes(searchQuery.toLowerCase()) return matchesFilter && matchesSearch }) const versionUpdates = records.reduce( (acc, r) => acc + r.history.filter(h => h.action === 'version_update').length, 0, ) const stepInfo = STEP_EXPLANATIONS['einwilligungen'] return (
{/* Step Header */} {/* Navigation Tabs */} {/* Stats */} {/* Info Banner */}
Consent-Historie aktiviert
Alle Änderungen an Einwilligungen werden protokolliert, inkl. Zustimmungen zu neuen Versionen von AGB, DSI und anderen Dokumenten. Klicken Sie auf "Details" um die vollständige Historie eines Nutzers einzusehen.
{/* Search and Filter */} {/* Records Table */} {/* Pagination */} {/* Detail Modal */} {selectedRecord && ( setSelectedRecord(null)} onRevoke={handleRevoke} /> )}
) }