import React, { useState } from "react"; import { useTranslation } from "react-i18next"; import { useSpacing } from "@/styles"; import { Field, Form, Formik } from "formik"; import { Button, Dialog, DialogActions, DialogContent, DialogProps, DialogTitle, Typography } from "@material-ui/core"; import { CKEditorField } from "@/field/ckeditor"; import { Actions } from "@/components/actions"; import { Cancel, Send } from "mdi-material-ui"; import { createPortal } from "react-dom"; import { capitalize } from "@/helpers"; export type ContactFormValues = { content: string; } const initialContactFormValues: ContactFormValues = { content: "", } export type ContactDialogProps = { onSend: (values: ContactFormValues) => void; } & DialogProps; export function ContactForm() { const { t } = useTranslation(); const spacing = useSpacing(2); return
} export function ContactDialog({ onSend, ...props }: ContactDialogProps) { const spacing = useSpacing(2); const { t } = useTranslation(); return
{ capitalize(t("forms.contact.title")) }
} export type ContactActionProps = { children: (props: { action: () => void }) => React.ReactNode }; export function ContactAction({ children }: ContactActionProps) { const [open, setOpen] = useState(false); const handleClose = () => { setOpen(false) }; const handleSubmit = (values: ContactFormValues) => { setOpen(false); } return <> { children({ action: () => setOpen(true) }) } { createPortal( , document.getElementById("modals") as HTMLElement ) } }