import { FormTextAreaField } from "@/components"; import { Alert, AlertDescription, AlertTitle, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Form, } from "@/ui"; import { t } from "i18next"; import { AlertCircleIcon } from "lucide-react"; import { useState } from "react"; import { SubmitHandler, useForm } from "react-hook-form"; import { Trans } from "react-i18next"; import { Link } from "react-router-dom"; import { useSettings } from "./hooks"; type SettingsDataForm = { contact_information: string; default_payment_method: string; default_notes: string; default_legal_terms: string; default_quote_validity: string; }; export const SettingsEditor = () => { const [loading, setLoading] = useState(false); const { useQuery, useMutation } = useSettings(); const { data } = useQuery; const { mutate } = useMutation; const form = useForm({ mode: "onBlur", values: data, defaultValues: { contact_information: "", default_payment_method: "", default_notes: "", default_legal_terms: "", default_quote_validity: "", }, /*resolver: joiResolver( Joi.object({ email: Joi.string() .email({ tlds: { allow: false } }) .required(), password: Joi.string().min(4).alphanum().required(), }), { messages: SpanishJoiMessages, } ),*/ }); const onSubmit: SubmitHandler = async (data) => { try { setLoading(true); console.log(data); mutate(data); } finally { setLoading(false); } }; return (
{form.formState.errors.root?.message && ( {form.formState.errors.root?.message} )}
); };