"use client";
import { Form, TextareaField, TextField } from "@/ui/form";
import FormDebug from "@/ui/form/debug";
import { Button, HStack, VStack } from "@yamada-ui/react";
import { type FC, useActionState } from "react";
import { inquiryFormSchema } from "../schema";
import { inquiryAction } from "./actions";
export const InquiryForm: FC = () => {
const [state, dispatch, isPending] = useActionState(inquiryAction, {
status: "idle",
});
return (
<Form
schema={inquiryFormSchema}
action={dispatch}
options={{ lastResult: state.submissionResult }}
>
{({ field }) => (
<VStack>
<TextField name={field.name.name} label="お名前" autoComplete="name" />
<TextField name={field.email.name} label="メールアドレス" autoComplete="email" />
<TextareaField name={field.message.name} label="お問い合わせ内容" />
<HStack alignSelf="end">
<Button type="submit" loading={isPending}>
送信
</Button>
</HStack>
<FormDebug />
</VStack>
)}
</Form>
);
};