"use client"; import { useEffect } from "react"; import { useFormState } from "react-dom"; import { useRouter } from "next/navigation"; import { updateDefaultConfirmationTargetAction, type DefaultConfirmationTargetState, } from "../app/(app)/dashboard/actions"; const buildInitialState = (value: number): DefaultConfirmationTargetState => ({ value, error: null, success: null, }); export default function DefaultConfirmationTargetSection({ initialValue, }: { initialValue: number; }) { const router = useRouter(); const [state, formAction] = useFormState( updateDefaultConfirmationTargetAction, buildInitialState(initialValue) ); useEffect(() => { if (state.success) { router.refresh(); } }, [router, state.success]); return (

Default confirmations

Used as the default confirmation target for new invoices.

{state.error ? (

{state.error}

) : null} {state.success ? (

{state.success}

) : null}
); }