// @flow import { observer } from "mobx-react"; import * as React from "react"; import { useTranslation, Trans } from "react-i18next"; import Collection from "models/Collection"; import Button from "components/Button"; import Flex from "components/Flex"; import HelpText from "components/HelpText"; import useToasts from "hooks/useToasts"; type Props = { collection: Collection, onSubmit: () => void, }; function CollectionExport({ collection, onSubmit }: Props) { const [isLoading, setIsLoading] = React.useState(); const { t } = useTranslation(); const { showToast } = useToasts(); const handleSubmit = React.useCallback( async (ev: SyntheticEvent<>) => { ev.preventDefault(); setIsLoading(true); await collection.export(); setIsLoading(false); showToast( t("Export started, you will receive an email when it’s complete.") ); onSubmit(); }, [collection, onSubmit, showToast, t] ); return (
}} />
); } export default observer(CollectionExport);