import invariant from "invariant"; import { observer } from "mobx-react"; import * as React from "react"; import { useTranslation, Trans } from "react-i18next"; import { useHistory } from "react-router-dom"; import ConfirmationDialog from "~/components/ConfirmationDialog"; import useStores from "~/hooks/useStores"; import useToasts from "~/hooks/useToasts"; import { documentPath } from "~/utils/routeHelpers"; type Props = { documentId: string; }; function DocumentTemplatizeDialog({ documentId }: Props) { const history = useHistory(); const { showToast } = useToasts(); const { t } = useTranslation(); const { documents } = useStores(); const document = documents.get(documentId); invariant(document, "Document must exist"); const handleSubmit = React.useCallback(async () => { const template = await document?.templatize(); if (template) { history.push(documentPath(template)); showToast(t("Template created, go ahead and customize it"), { type: "info", }); } }, [document, showToast, history, t]); return ( , }} /> ); } export default observer(DocumentTemplatizeDialog);