import { useState } from 'react'; import type { DocumentData } from '@prisma/client'; import * as DialogPrimitive from '@radix-ui/react-dialog'; import { X } from 'lucide-react'; import { cn } from '../../lib/utils'; import { Dialog, DialogOverlay, DialogPortal, DialogTrigger } from '../../primitives/dialog'; import PDFViewer from '../../primitives/pdf-viewer'; export type DocumentDialogProps = { trigger?: React.ReactNode; documentData: DocumentData; } & Omit; /** * A dialog which renders the provided document. */ export default function DocumentDialog({ trigger, documentData, ...props }: DocumentDialogProps) { const [documentLoaded, setDocumentLoaded] = useState(false); const onDocumentLoad = () => { setDocumentLoaded(true); }; return ( {trigger && ( e.stopPropagation()} asChild={true}> {trigger} )} props.onOpenChange?.(false)} > e.stopPropagation()} onDocumentLoad={onDocumentLoad} /> Close ); }