import "../styles.scss"; import { FC, useCallback, useState } from "react"; import { useAddFileToDataset, useCreateDatasetsDraft } from "@/api/documents/hooks"; import { AddDocumentFormProps } from "./AddDocumentForm.interface"; import Button from "@/components/generics/button/Button"; import { GoFile } from "react-icons/go"; export const AddDocumentForm: FC = ({ datasetId, isDraft, closeModal, setSearchParams }) => { const [file, setFile] = useState(); const { mutate: addFileToDatasetFn } = useAddFileToDataset(); const { mutate: createDatasetsDraftFn } = useCreateDatasetsDraft(); const handleUpload = useCallback(() => { if (file) { if (!isDraft) { createDatasetsDraftFn(datasetId, { onSuccess: (newDatasetData) => { const formData = new FormData(); formData.append("file", file); addFileToDatasetFn( { id: newDatasetData.id, data: formData, }, { onSuccess: () => { closeModal(); setSearchParams({ datasetId: newDatasetData.id.toString() }); }, } ); }, }); } else { const formData = new FormData(); formData.append("file", file); addFileToDatasetFn( { id: datasetId, data: formData, }, { onSuccess: closeModal } ); } } }, [addFileToDatasetFn, closeModal, createDatasetsDraftFn, datasetId, file, isDraft, setSearchParams]); return (
{file && } {file?.name}
); };