import { useFormState } from "react-use-form-state"; import React, { FC, useState } from "react"; import getConfig from "next/config"; import Router from "next/router"; import axios from "axios"; import { getAxiosConfig } from "../../utils"; import { Col, RowCenterV, RowCenterH } from "../Layout"; import Text, { H2, Span } from "../Text"; import { useMessage } from "../../hooks"; import { TextInput } from "../Input"; import { APIv2, Colors } from "../../consts"; import { Button } from "../Button"; import Icon from "../Icon"; import Modal from "../Modal"; const { publicRuntimeConfig } = getConfig(); const SettingsDeleteAccount: FC = () => { const [message, setMessage] = useMessage(1500); const [loading, setLoading] = useState(false); const [modal, setModal] = useState(false); const [formState, { password, label }] = useFormState<{ accpass: string }>( null, { withIds: true } ); const onSubmit = async e => { e.preventDefault(); if (loading) return; setModal(true); }; const onDelete = async e => { e.preventDefault(); if (loading) return; setLoading(true); try { await axios.post( `${APIv2.Users}/delete`, { password: formState.values.accpass }, getAxiosConfig() ); Router.push("/logout"); } catch (error) { setMessage(error.response.data.error); } setLoading(false); }; return (