@hookform/resolvers
Version:
React Hook Form validation resolvers: Yup, Joi, Superstruct, Zod, Vest, Class Validator, io-ts, Nope, computed-types, TypeBox, arktype, Typanion and Effect-TS
3 lines (2 loc) • 817 B
JavaScript
import{toNestErrors as o}from"@hookform/resolvers";import{parse as t,parseAsync as a,ValiError as r}from"valibot";import{appendErrors as e}from"react-hook-form";const s=(o,t)=>{const a={};for(const r of o.issues){if(!r.path)continue;const o=r.path.map(({key:o})=>o).join(".");if(a[o]||(a[o]={message:r.message,type:r.validation}),t){const s=a[o].types,i=s&&s[r.validation];a[o]=e(o,t,a,r.validation,i?[].concat(i,r.message):r.message)}}return a},i=(e,i,n={})=>async(c,m,l)=>{try{const o=Object.assign({},{abortEarly:!1,abortPipeEarly:!1},i),r="sync"===n.mode?t(e,c,o):await a(e,c,o);return{values:n.raw?c:r,errors:{}}}catch(t){if(t instanceof r)return{values:{},errors:o(s(t,!l.shouldUseNativeValidation&&"all"===l.criteriaMode),l)};throw t}};export{i as valibotResolver};
//# sourceMappingURL=valibot.modern.mjs.map