'use client';
import type { HTMLAttributes } from 'react';
import { useState } from 'react';
import { Download } from 'lucide-react';
import { downloadFile } from '@documenso/lib/client-only/download-pdf';
import type { DocumentData } from '@documenso/prisma/client';
import { Button } from '../../primitives/button';
export type DownloadButtonProps = HTMLAttributes & {
disabled?: boolean;
fileName?: string;
documentData?: DocumentData;
};
export const DocumentDownloadButton = ({
className,
fileName,
documentData,
disabled,
...props
}: DownloadButtonProps) => {
const [isLoading, setIsLoading] = useState(false);
const onDownloadClick = async () => {
setIsLoading(true);
if (!documentData) {
return;
}
await downloadFile({ documentData, fileName }).then(() => {
setIsLoading(false);
});
};
return (
);
};