import { useDeviceId } from "@/shared/hooks/use-device-id" import { useEffect, useState } from "react" import { useLegislation } from "../hooks/use-legislation" import { useUserVote } from "../hooks/use-user-vote" import { fetchLegislationResults } from "../lib/legislation-api" import { VoteResult } from "./vote-result" import { VoteWidget } from "./vote-widget" interface LegislationDetailProps { legislationId: number } export function LegislationDetail({ legislationId }: LegislationDetailProps) { const { legislation, loading, error } = useLegislation(legislationId) const { vote, castVote } = useUserVote(legislationId) const [showFullText, setShowFullText] = useState(false) const deviceId = useDeviceId() const [results, setResults] = useState<{ pollId: number votes: { politicianId: number name: string fraction: string | null vote: string }[] } | null>(null) useEffect(() => { if (!deviceId) return fetchLegislationResults(legislationId, deviceId) .then(setResults) .catch(() => null) }, [legislationId, deviceId]) if (loading) { return
{legislation.summary}
) : legislation.abstract ? ({legislation.abstract}
) : (Keine Zusammenfassung verfügbar
)}
{legislation.fullText}
)}
Du hast mit{" "} {vote === "ja" ? "Ja" : vote === "nein" ? "Nein" : "Enthaltung"} {" "} gestimmt. Du kannst deine Stimme jederzeit ändern.
)}