Liberar Fundos

O esquema ideal para este endpoint.

Esquema

Isso valida um formulário de escrow usando Zod, incluindo endereços de carteira.

import { isValidWallet } from "@/helpers/valid-data.helper";
import { z } from "zod";

export const formSchema = z.object({
  contractId: z.string().min(1, "ID do contrato é obrigatório"),
  releaseSigner: z
    .string()
    .min(1, {
      message: "Assinante de liberação é obrigatório.",
    })
    .refine((value) => isValidWallet(value), {
      message: "O assinante de liberação deve ser uma carteira válida.",
    }),
  signer: z.string().min(1, "Endereço do signatário é obrigatório"),
});

Hook Personalizado

Isso contém toda a lógica do formulário, incluindo validação de esquema, função onSubmit e outros estados e funcionalidades.

Formulário

Este formulário é construído com react hook form. Usamos o hook personalizado e o esquema Zod mencionados anteriormente.

Atualizado