@hookform/resolvers
Advanced tools
Comparing version 2.5.2 to 2.6.0
@@ -1,2 +0,2 @@ | ||
var r=require("@hookform/resolvers"),e=require("class-transformer"),t=require("class-validator"),s=function r(e,t,s,n){return void 0===s&&(s={}),void 0===n&&(n=""),e.reduce(function(e,s){var o=n?n+"."+s.property:s.property;if(s.constraints){var i=Object.keys(s.constraints)[0];e[o]={type:i,message:s.constraints[i]},t&&e[o]&&Object.assign(e[o],{types:s.constraints})}return s.children&&s.children.length&&r(s.children,t,e,o),e},s)};exports.classValidatorResolver=function(n,o,i){return void 0===o&&(o={}),void 0===i&&(i={}),function(a,c,l){try{var u=e.plainToClass(n,a);return Promise.resolve(("sync"===i.mode?t.validateSync:t.validate)(u,o)).then(function(e){return e.length?{values:{},errors:r.toNestError(s(e,"all"===l.criteriaMode),l.fields)}:{values:a,errors:{}}})}catch(r){return Promise.reject(r)}}}; | ||
var r=require("@hookform/resolvers"),e=require("class-transformer"),t=require("class-validator"),s=function r(e,t,s,n){return void 0===s&&(s={}),void 0===n&&(n=""),e.reduce(function(e,s){var o=n?n+"."+s.property:s.property;if(s.constraints){var i=Object.keys(s.constraints)[0];e[o]={type:i,message:s.constraints[i]},t&&e[o]&&Object.assign(e[o],{types:s.constraints})}return s.children&&s.children.length&&r(s.children,t,e,o),e},s)};exports.classValidatorResolver=function(n,o,i){return void 0===o&&(o={}),void 0===i&&(i={}),function(a,c,l){try{var u=e.plainToClass(n,a);return Promise.resolve(("sync"===i.mode?t.validateSync:t.validate)(u,o)).then(function(e){return e.length?{values:{},errors:r.toNestError(s(e,!l.shouldUseNativeValidation&&"all"===l.criteriaMode),l)}:{values:a,errors:{}}})}catch(r){return Promise.reject(r)}}}; | ||
//# sourceMappingURL=class-validator.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";import{plainToClass as s}from"class-transformer";import{validateSync as e,validate as t}from"class-validator";const o=(r,s,e={},t="")=>r.reduce((r,e)=>{const n=t?`${t}.${e.property}`:e.property;if(e.constraints){const t=Object.keys(e.constraints)[0];r[n]={type:t,message:e.constraints[t]},s&&r[n]&&Object.assign(r[n],{types:e.constraints})}return e.children&&e.children.length&&o(e.children,s,r,n),r},e),n=(n,c={},a={})=>async(i,l,m)=>{const p=s(n,i),d=await("sync"===a.mode?e:t)(p,c);return d.length?{values:{},errors:r(o(d,"all"===m.criteriaMode),m.fields)}:{values:i,errors:{}}};export{n as classValidatorResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";import{plainToClass as s}from"class-transformer";import{validateSync as t,validate as e}from"class-validator";const o=(r,s,t={},e="")=>r.reduce((r,t)=>{const n=e?`${e}.${t.property}`:t.property;if(t.constraints){const e=Object.keys(t.constraints)[0];r[n]={type:e,message:t.constraints[e]},s&&r[n]&&Object.assign(r[n],{types:t.constraints})}return t.children&&t.children.length&&o(t.children,s,r,n),r},t),n=(n,a={},c={})=>async(i,l,m)=>{const p=s(n,i),d=await("sync"===c.mode?t:e)(p,a);return d.length?{values:{},errors:r(o(d,!m.shouldUseNativeValidation&&"all"===m.criteriaMode),m)}:{values:i,errors:{}}};export{n as classValidatorResolver}; | ||
//# sourceMappingURL=class-validator.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";import{plainToClass as e}from"class-transformer";import{validateSync as t,validate as o}from"class-validator";var n=function r(e,t,o,n){return void 0===o&&(o={}),void 0===n&&(n=""),e.reduce(function(e,o){var s=n?n+"."+o.property:o.property;if(o.constraints){var i=Object.keys(o.constraints)[0];e[s]={type:i,message:o.constraints[i]},t&&e[s]&&Object.assign(e[s],{types:o.constraints})}return o.children&&o.children.length&&r(o.children,t,e,s),e},o)},s=function(s,i,c){return void 0===i&&(i={}),void 0===c&&(c={}),function(a,l,u){try{var v=e(s,a);return Promise.resolve(("sync"===c.mode?t:o)(v,i)).then(function(e){return e.length?{values:{},errors:r(n(e,"all"===u.criteriaMode),u.fields)}:{values:a,errors:{}}})}catch(r){return Promise.reject(r)}}};export{s as classValidatorResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";import{plainToClass as e}from"class-transformer";import{validateSync as t,validate as o}from"class-validator";var n=function r(e,t,o,n){return void 0===o&&(o={}),void 0===n&&(n=""),e.reduce(function(e,o){var s=n?n+"."+o.property:o.property;if(o.constraints){var i=Object.keys(o.constraints)[0];e[s]={type:i,message:o.constraints[i]},t&&e[s]&&Object.assign(e[s],{types:o.constraints})}return o.children&&o.children.length&&r(o.children,t,e,s),e},o)},s=function(s,i,a){return void 0===i&&(i={}),void 0===a&&(a={}),function(c,l,u){try{var v=e(s,c);return Promise.resolve(("sync"===a.mode?t:o)(v,i)).then(function(e){return e.length?{values:{},errors:r(n(e,!u.shouldUseNativeValidation&&"all"===u.criteriaMode),u)}:{values:c,errors:{}}})}catch(r){return Promise.reject(r)}}};export{s as classValidatorResolver}; | ||
//# sourceMappingURL=class-validator.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers"),require("class-transformer"),require("class-validator")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","class-transformer","class-validator"],r):r((e||self).hookformResolversClassValidator={},e.hookformResolvers,e.classTransformer,e.classValidator)}(this,function(e,r,o,s){var t=function e(r,o,s,t){return void 0===s&&(s={}),void 0===t&&(t=""),r.reduce(function(r,s){var n=t?t+"."+s.property:s.property;if(s.constraints){var a=Object.keys(s.constraints)[0];r[n]={type:a,message:s.constraints[a]},o&&r[n]&&Object.assign(r[n],{types:s.constraints})}return s.children&&s.children.length&&e(s.children,o,r,n),r},s)};e.classValidatorResolver=function(e,n,a){return void 0===n&&(n={}),void 0===a&&(a={}),function(i,l,c){try{var d=o.plainToClass(e,i);return Promise.resolve(("sync"===a.mode?s.validateSync:s.validate)(d,n)).then(function(e){return e.length?{values:{},errors:r.toNestError(t(e,"all"===c.criteriaMode),c.fields)}:{values:i,errors:{}}})}catch(e){return Promise.reject(e)}}}}); | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers"),require("class-transformer"),require("class-validator")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","class-transformer","class-validator"],r):r((e||self).hookformResolversClassValidator={},e.hookformResolvers,e.classTransformer,e.classValidator)}(this,function(e,r,o,s){var t=function e(r,o,s,t){return void 0===s&&(s={}),void 0===t&&(t=""),r.reduce(function(r,s){var n=t?t+"."+s.property:s.property;if(s.constraints){var a=Object.keys(s.constraints)[0];r[n]={type:a,message:s.constraints[a]},o&&r[n]&&Object.assign(r[n],{types:s.constraints})}return s.children&&s.children.length&&e(s.children,o,r,n),r},s)};e.classValidatorResolver=function(e,n,a){return void 0===n&&(n={}),void 0===a&&(a={}),function(i,l,c){try{var d=o.plainToClass(e,i);return Promise.resolve(("sync"===a.mode?s.validateSync:s.validate)(d,n)).then(function(e){return e.length?{values:{},errors:r.toNestError(t(e,!c.shouldUseNativeValidation&&"all"===c.criteriaMode),c)}:{values:i,errors:{}}})}catch(e){return Promise.reject(e)}}}}); | ||
//# sourceMappingURL=class-validator.umd.js.map |
@@ -6,2 +6,4 @@ /* eslint-disable no-console, @typescript-eslint/ban-ts-comment */ | ||
const shouldUseNativeValidation = false; | ||
describe('classValidatorResolver', () => { | ||
@@ -14,2 +16,3 @@ it('should return values from classValidatorResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -28,3 +31,3 @@ | ||
mode: 'sync', | ||
})(validData, undefined, { fields }); | ||
})(validData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -42,2 +45,3 @@ expect(validateSyncSpy).toHaveBeenCalledTimes(1); | ||
fields, | ||
shouldUseNativeValidation, | ||
}, | ||
@@ -55,3 +59,3 @@ ); | ||
mode: 'sync', | ||
})(invalidData, undefined, { fields }); | ||
})(invalidData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -70,2 +74,3 @@ expect(validateSyncSpy).toHaveBeenCalledTimes(1); | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}, | ||
@@ -83,2 +88,3 @@ ); | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -85,0 +91,0 @@ |
@@ -49,4 +49,8 @@ import { FieldErrors } from 'react-hook-form'; | ||
errors: toNestError( | ||
parseErrors(rawErrors, options.criteriaMode === 'all'), | ||
options.fields, | ||
parseErrors( | ||
rawErrors, | ||
!options.shouldUseNativeValidation && | ||
options.criteriaMode === 'all', | ||
), | ||
options, | ||
), | ||
@@ -53,0 +57,0 @@ } |
@@ -1,2 +0,2 @@ | ||
var r=require("@hookform/resolvers"),e=function r(e,t,o){return void 0===t&&(t={}),void 0===o&&(o=""),(e.errors||[]).reduce(function(e,t){var n=String(t.path[0]),s=o?o+"."+n:n;return e[s]={type:t.error.name,message:t.error.message},r(t.error,e,s),e},t)};exports.computedTypesResolver=function(t){return function(o,n,s){try{return Promise.resolve(function(r,e){try{var n=Promise.resolve(t(o)).then(function(r){return{errors:{},values:r}})}catch(r){return e(r)}return n&&n.then?n.then(void 0,e):n}(0,function(t){return{values:{},errors:r.toNestError(e(t),s.fields)}}))}catch(r){return Promise.reject(r)}}}; | ||
var r=require("@hookform/resolvers"),e=function r(e,t,o){return void 0===t&&(t={}),void 0===o&&(o=""),(e.errors||[]).reduce(function(e,t){var n=String(t.path[0]),u=o?o+"."+n:n;return e[u]={type:t.error.name,message:t.error.message},r(t.error,e,u),e},t)};exports.computedTypesResolver=function(t){return function(o,n,u){try{return Promise.resolve(function(r,e){try{var n=Promise.resolve(t(o)).then(function(r){return{errors:{},values:r}})}catch(r){return e(r)}return n&&n.then?n.then(void 0,e):n}(0,function(t){return{values:{},errors:r.toNestError(e(t),u)}}))}catch(r){return Promise.reject(r)}}}; | ||
//# sourceMappingURL=computed-types.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";const e=(r,o={},s="")=>(r.errors||[]).reduce((r,o)=>{const t=String(o.path[0]),a=s?`${s}.${t}`:t;return r[a]={type:o.error.name,message:o.error.message},e(o.error,r,a),r},o),o=o=>async(s,t,a)=>{try{return{errors:{},values:await o(s)}}catch(o){return{values:{},errors:r(e(o),a.fields)}}};export{o as computedTypesResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";const e=(r,o={},s="")=>(r.errors||[]).reduce((r,o)=>{const t=String(o.path[0]),a=s?`${s}.${t}`:t;return r[a]={type:o.error.name,message:o.error.message},e(o.error,r,a),r},o),o=o=>async(s,t,a)=>{try{return{errors:{},values:await o(s)}}catch(o){return{values:{},errors:r(e(o),a)}}};export{o as computedTypesResolver}; | ||
//# sourceMappingURL=computed-types.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";var e=function r(e,t,n){return void 0===t&&(t={}),void 0===n&&(n=""),(e.errors||[]).reduce(function(e,t){var o=String(t.path[0]),u=n?n+"."+o:o;return e[u]={type:t.error.name,message:t.error.message},r(t.error,e,u),e},t)},t=function(t){return function(n,o,u){try{return Promise.resolve(function(r,e){try{var o=Promise.resolve(t(n)).then(function(r){return{errors:{},values:r}})}catch(r){return e(r)}return o&&o.then?o.then(void 0,e):o}(0,function(t){return{values:{},errors:r(e(t),u.fields)}}))}catch(r){return Promise.reject(r)}}};export{t as computedTypesResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";var e=function r(e,t,n){return void 0===t&&(t={}),void 0===n&&(n=""),(e.errors||[]).reduce(function(e,t){var o=String(t.path[0]),u=n?n+"."+o:o;return e[u]={type:t.error.name,message:t.error.message},r(t.error,e,u),e},t)},t=function(t){return function(n,o,u){try{return Promise.resolve(function(r,e){try{var o=Promise.resolve(t(n)).then(function(r){return{errors:{},values:r}})}catch(r){return e(r)}return o&&o.then?o.then(void 0,e):o}(0,function(t){return{values:{},errors:r(e(t),u)}}))}catch(r){return Promise.reject(r)}}};export{t as computedTypesResolver}; | ||
//# sourceMappingURL=computed-types.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers"],r):r((e||self).hookformResolversComputedTypes={},e.hookformResolvers)}(this,function(e,r){var o=function e(r,o,t){return void 0===o&&(o={}),void 0===t&&(t=""),(r.errors||[]).reduce(function(r,o){var n=String(o.path[0]),s=t?t+"."+n:n;return r[s]={type:o.error.name,message:o.error.message},e(o.error,r,s),r},o)};e.computedTypesResolver=function(e){return function(t,n,s){try{return Promise.resolve(function(r,o){try{var n=Promise.resolve(e(t)).then(function(e){return{errors:{},values:e}})}catch(e){return o(e)}return n&&n.then?n.then(void 0,o):n}(0,function(e){return{values:{},errors:r.toNestError(o(e),s.fields)}}))}catch(e){return Promise.reject(e)}}}}); | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers"],r):r((e||self).hookformResolversComputedTypes={},e.hookformResolvers)}(this,function(e,r){var o=function e(r,o,t){return void 0===o&&(o={}),void 0===t&&(t=""),(r.errors||[]).reduce(function(r,o){var n=String(o.path[0]),s=t?t+"."+n:n;return r[s]={type:o.error.name,message:o.error.message},e(o.error,r,s),r},o)};e.computedTypesResolver=function(e){return function(t,n,s){try{return Promise.resolve(function(r,o){try{var n=Promise.resolve(e(t)).then(function(e){return{errors:{},values:e}})}catch(e){return o(e)}return n&&n.then?n.then(void 0,o):n}(0,function(e){return{values:{},errors:r.toNestError(o(e),s)}}))}catch(e){return Promise.reject(e)}}}}); | ||
//# sourceMappingURL=computed-types.umd.js.map |
import { computedTypesResolver } from '..'; | ||
import { schema, validData, invalidData, fields } from './__fixtures__/data'; | ||
const shouldUseNativeValidation = false; | ||
describe('computedTypesResolver', () => { | ||
@@ -8,2 +10,3 @@ it('should return values from computedTypesResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -14,5 +17,6 @@ | ||
it.only('should return a single error from computedTypesResolver when validation fails', async () => { | ||
it('should return a single error from computedTypesResolver when validation fails', async () => { | ||
const result = await computedTypesResolver(schema)(invalidData, undefined, { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -19,0 +23,0 @@ |
@@ -36,5 +36,5 @@ import type { FieldErrors } from 'react-hook-form'; | ||
values: {}, | ||
errors: toNestError(parseErrorSchema(error), options.fields), | ||
errors: toNestError(parseErrorSchema(error), options), | ||
}; | ||
} | ||
}; |
@@ -1,2 +0,2 @@ | ||
var r=require("react-hook-form");exports.toNestError=function(e,t){var o={};for(var a in e){var f=r.get(t,a);r.set(o,a,Object.assign(e[a],{ref:f&&f.ref}))}return o}; | ||
var r=require("react-hook-form");exports.toNestError=function(e,t){var i={};for(var a in e){var o=r.get(t.fields,a);t.shouldUseNativeValidation&&o&&"reportValidity"in o.ref&&(o.ref.setCustomValidity(e[a].message||""),o.ref.reportValidity()),r.set(i,a,Object.assign(e[a],{ref:o&&o.ref}))}return i}; | ||
//# sourceMappingURL=resolvers.js.map |
@@ -1,2 +0,2 @@ | ||
import{get as o,set as r}from"react-hook-form";const t=(t,n)=>{const c={};for(const e in t){const s=o(n,e);r(c,e,Object.assign(t[e],{ref:s&&s.ref}))}return c};export{t as toNestError}; | ||
import{get as t,set as e}from"react-hook-form";const r=(r,o)=>{const i={};for(const s in r){const a=t(o.fields,s);o.shouldUseNativeValidation&&a&&"reportValidity"in a.ref&&(a.ref.setCustomValidity(r[s].message||""),a.ref.reportValidity()),e(i,s,Object.assign(r[s],{ref:a&&a.ref}))}return i};export{r as toNestError}; | ||
//# sourceMappingURL=resolvers.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{get as r,set as o}from"react-hook-form";var a=function(a,e){var f={};for(var t in a){var n=r(e,t);o(f,t,Object.assign(a[t],{ref:n&&n.ref}))}return f};export{a as toNestError}; | ||
import{get as r,set as e}from"react-hook-form";var i=function(i,t){var a={};for(var o in i){var f=r(t.fields,o);t.shouldUseNativeValidation&&f&&"reportValidity"in f.ref&&(f.ref.setCustomValidity(i[o].message||""),f.ref.reportValidity()),e(a,o,Object.assign(i[o],{ref:f&&f.ref}))}return a};export{i as toNestError}; | ||
//# sourceMappingURL=resolvers.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("react-hook-form")):"function"==typeof define&&define.amd?define(["exports","react-hook-form"],o):o((e||self).hookformResolvers={},e.reactHookForm)}(this,function(e,o){e.toNestError=function(e,r){var t={};for(var f in e){var n=o.get(r,f);o.set(t,f,Object.assign(e[f],{ref:n&&n.ref}))}return t}}); | ||
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("react-hook-form")):"function"==typeof define&&define.amd?define(["exports","react-hook-form"],o):o((e||self).hookformResolvers={},e.reactHookForm)}(this,function(e,o){e.toNestError=function(e,r){var t={};for(var i in e){var f=o.get(r.fields,i);r.shouldUseNativeValidation&&f&&"reportValidity"in f.ref&&(f.ref.setCustomValidity(e[i].message||""),f.ref.reportValidity()),o.set(t,i,Object.assign(e[i],{ref:f&&f.ref}))}return t}}); | ||
//# sourceMappingURL=resolvers.umd.js.map |
@@ -1,2 +0,2 @@ | ||
import { FieldError, FieldErrors, Field, InternalFieldName } from 'react-hook-form'; | ||
export declare const toNestError: <TFieldValues>(errors: Record<string, FieldError>, fields: Record<InternalFieldName, Field['_f']>) => import("react-hook-form").DeepMap<TFieldValues, FieldError>; | ||
import { FieldError, FieldErrors, ResolverOptions } from 'react-hook-form'; | ||
export declare const toNestError: <TFieldValues>(errors: Record<string, FieldError>, options: ResolverOptions<TFieldValues>) => import("react-hook-form").DeepMap<TFieldValues, FieldError>; |
@@ -1,2 +0,2 @@ | ||
var e=require("fp-ts/lib/Either"),r=require("fp-ts/function"),t=require("@hookform/resolvers"),n=require("io-ts"),o=require("fp-ts/ReadonlyArray"),u=require("fp-ts/Option"),i=require("fp-ts/Either"),a=require("fp-ts/Semigroup"),p=require("fp-ts/ReadonlyRecord");function f(){return(f=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(this,arguments)}var c=function(e){return e.reduce(function(e,t,n){return r.pipe(t,i.fold(function(e){return(n>0?".":"")+e},function(e){return"["+e+"]"}),function(r){return""+e+r})},"")},s=function(e){var t,a=r.pipe(t=e.context,o.filterMapWithIndex(function(e,r){var o=e-1;return void 0===t[o]||t[o].type instanceof n.TaggedUnionType||t[o].type instanceof n.UnionType||t[o].type instanceof n.IntersectionType?u.none:u.some(r)}),o.map(function(e){return e.key}),o.map(function(e){return r.pipe(e,function(e){return parseInt(e,10)},i.fromPredicate(r.not(Number.isNaN),function(){return e}))}),o.toArray,c);return{message:r.pipe(e.message,i.fromNullable(e.context),i.mapLeft(r.flow(o.last,u.map(function(e){return"expected "+e.type.name+" but got "+JSON.stringify(e.actual)}),u.getOrElseW(function(){return r.absurd("Error context is missing name")}))),i.getOrElseW(r.identity)),type:r.pipe(e.context,o.last,u.map(function(e){return e.type.name}),u.getOrElse(function(){return"unknown"})),path:a}},l=function(e){return r.pipe(e,o.map(function(e){var r;return(r={})[e.path]={type:e.type,message:e.message},r}),function(e){return a.fold({concat:function(e,r){return Object.assign({},r,e)}})({},e)})},m={concat:function(e,r){var t;return f({},r,{types:f({},e.types,(t={},t[e.type]=e.message,t[r.type]=r.message,t))})}},y=function(e){return r.pipe(p.fromFoldableMap(m,o.Foldable)(e,function(e){return[e.path,e]}),p.map(function(e){return function(e,r){if(null==e)return{};var t,n,o={},u=Object.keys(e);for(n=0;n<u.length;n++)r.indexOf(t=u[n])>=0||(o[t]=e[t]);return o}(e,["path"])}))};exports.ioTsResolver=function(n){return function(u,i,a){return r.pipe(u,n.decode,e.mapLeft((p="all"===a.criteriaMode,function(e){var t=p?y:l;return r.pipe(e,o.map(s),t)})),e.mapLeft(function(e){return t.toNestError(e,a.fields)}),e.fold(function(e){return{values:{},errors:e}},function(e){return{values:e,errors:{}}}));var p}}; | ||
var e=require("fp-ts/lib/Either"),t=require("fp-ts/function"),n=require("@hookform/resolvers"),r=require("io-ts"),o=require("fp-ts/ReadonlyArray"),i=require("fp-ts/Option"),u=require("fp-ts/Either"),a=require("fp-ts/Semigroup"),p=require("fp-ts/ReadonlyRecord");function f(){return(f=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var s=function(e){return e.reduce(function(e,n,r){return t.pipe(n,u.fold(function(e){return(r>0?".":"")+e},function(e){return"["+e+"]"}),function(t){return""+e+t})},"")},c=function(e){var n,a=t.pipe(n=e.context,o.filterMapWithIndex(function(e,t){var o=e-1;return void 0===n[o]||n[o].type instanceof r.TaggedUnionType||n[o].type instanceof r.UnionType||n[o].type instanceof r.IntersectionType?i.none:i.some(t)}),o.map(function(e){return e.key}),o.map(function(e){return t.pipe(e,function(e){return parseInt(e,10)},u.fromPredicate(t.not(Number.isNaN),function(){return e}))}),o.toArray,s);return{message:t.pipe(e.message,u.fromNullable(e.context),u.mapLeft(t.flow(o.last,i.map(function(e){return"expected "+e.type.name+" but got "+JSON.stringify(e.actual)}),i.getOrElseW(function(){return t.absurd("Error context is missing name")}))),u.getOrElseW(t.identity)),type:t.pipe(e.context,o.last,i.map(function(e){return e.type.name}),i.getOrElse(function(){return"unknown"})),path:a}},l=function(e){return t.pipe(e,o.map(function(e){var t;return(t={})[e.path]={type:e.type,message:e.message},t}),function(e){return a.fold({concat:function(e,t){return Object.assign({},t,e)}})({},e)})},m={concat:function(e,t){var n;return f({},t,{types:f({},e.types,(n={},n[e.type]=e.message,n[t.type]=t.message,n))})}},y=function(e){return t.pipe(p.fromFoldableMap(m,o.Foldable)(e,function(e){return[e.path,e]}),p.map(function(e){return function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)t.indexOf(n=i[r])>=0||(o[n]=e[n]);return o}(e,["path"])}))};exports.ioTsResolver=function(r){return function(i,u,a){return t.pipe(i,r.decode,e.mapLeft((p=!a.shouldUseNativeValidation&&"all"===a.criteriaMode,function(e){var n=p?y:l;return t.pipe(e,o.map(c),n)})),e.mapLeft(function(e){return n.toNestError(e,a)}),e.fold(function(e){return{values:{},errors:e}},function(e){return{values:e,errors:{}}}));var p}}; | ||
//# sourceMappingURL=io-ts.js.map |
@@ -1,2 +0,2 @@ | ||
import{mapLeft as t,fold as e}from"fp-ts/lib/Either";import{pipe as r,not as o,flow as s,absurd as n,identity as a}from"fp-ts/function";import{toNestError as p}from"@hookform/resolvers";import{TaggedUnionType as i,UnionType as f,IntersectionType as m}from"io-ts";import{map as c,filterMapWithIndex as u,toArray as y,last as l,Foldable as g}from"fp-ts/ReadonlyArray";import{none as d,some as h,map as v,getOrElseW as O,getOrElse as b}from"fp-ts/Option";import{fold as x,fromPredicate as $,fromNullable as j,mapLeft as k,getOrElseW as E}from"fp-ts/Either";import{fold as N}from"fp-ts/Semigroup";import{fromFoldableMap as R,map as w}from"fp-ts/ReadonlyRecord";function S(){return(S=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(t[o]=r[o])}return t}).apply(this,arguments)}const A=t=>t.reduce((t,e,o)=>r(e,x(t=>`${o>0?".":""}${t}`,t=>`[${t}]`),e=>`${t}${e}`),""),I=t=>{const e=r(p=t.context,u((t,e)=>{const r=t-1;return void 0===p[r]||p[r].type instanceof i||p[r].type instanceof f||p[r].type instanceof m?d:h(e)}),c(({key:t})=>t),c(t=>r(t,t=>parseInt(t,10),$(o(Number.isNaN),()=>t))),y,A);var p;return{message:r(t.message,j(t.context),k(s(l,v(t=>`expected ${t.type.name} but got ${JSON.stringify(t.actual)}`),O(()=>n("Error context is missing name")))),E(a)),type:r(t.context,l,v(t=>t.type.name),b(()=>"unknown")),path:e}},J=t=>r(t,c(t=>({[t.path]:{type:t.type,message:t.message}})),t=>N({concat:(t,e)=>Object.assign({},e,t)})({},t)),L={concat:(t,e)=>S({},e,{types:S({},t.types,{[t.type]:t.message,[e.type]:e.message})})},M=t=>r(R(L,g)(t,t=>[t.path,t]),w(t=>function(t,e){if(null==t)return{};var r,o,s={},n=Object.keys(t);for(o=0;o<n.length;o++)e.indexOf(r=n[o])>=0||(s[r]=t[r]);return s}(t,["path"]))),P=o=>(s,n,a)=>{return r(s,o.decode,t((i="all"===a.criteriaMode,t=>{const e=i?M:J;return r(t,c(I),e)})),t(t=>p(t,a.fields)),e(t=>({values:{},errors:t}),t=>({values:t,errors:{}})));var i};export{P as ioTsResolver}; | ||
import{mapLeft as t,fold as e}from"fp-ts/lib/Either";import{pipe as r,not as o,flow as s,absurd as n,identity as a}from"fp-ts/function";import{toNestError as p}from"@hookform/resolvers";import{TaggedUnionType as i,UnionType as m,IntersectionType as f}from"io-ts";import{map as c,filterMapWithIndex as u,toArray as l,last as y,Foldable as g}from"fp-ts/ReadonlyArray";import{none as d,some as h,map as v,getOrElseW as O,getOrElse as b}from"fp-ts/Option";import{fold as x,fromPredicate as $,fromNullable as N,mapLeft as j,getOrElseW as k}from"fp-ts/Either";import{fold as E}from"fp-ts/Semigroup";import{fromFoldableMap as R,map as w}from"fp-ts/ReadonlyRecord";function S(){return(S=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(t[o]=r[o])}return t}).apply(this,arguments)}const A=t=>t.reduce((t,e,o)=>r(e,x(t=>`${o>0?".":""}${t}`,t=>`[${t}]`),e=>`${t}${e}`),""),I=t=>{const e=r(p=t.context,u((t,e)=>{const r=t-1;return void 0===p[r]||p[r].type instanceof i||p[r].type instanceof m||p[r].type instanceof f?d:h(e)}),c(({key:t})=>t),c(t=>r(t,t=>parseInt(t,10),$(o(Number.isNaN),()=>t))),l,A);var p;return{message:r(t.message,N(t.context),j(s(y,v(t=>`expected ${t.type.name} but got ${JSON.stringify(t.actual)}`),O(()=>n("Error context is missing name")))),k(a)),type:r(t.context,y,v(t=>t.type.name),b(()=>"unknown")),path:e}},J=t=>r(t,c(t=>({[t.path]:{type:t.type,message:t.message}})),t=>E({concat:(t,e)=>Object.assign({},e,t)})({},t)),L={concat:(t,e)=>S({},e,{types:S({},t.types,{[t.type]:t.message,[e.type]:e.message})})},M=t=>r(R(L,g)(t,t=>[t.path,t]),w(t=>function(t,e){if(null==t)return{};var r,o,s={},n=Object.keys(t);for(o=0;o<n.length;o++)e.indexOf(r=n[o])>=0||(s[r]=t[r]);return s}(t,["path"]))),P=o=>(s,n,a)=>{return r(s,o.decode,t((i=!a.shouldUseNativeValidation&&"all"===a.criteriaMode,t=>{const e=i?M:J;return r(t,c(I),e)})),t(t=>p(t,a)),e(t=>({values:{},errors:t}),t=>({values:t,errors:{}})));var i};export{P as ioTsResolver}; | ||
//# sourceMappingURL=io-ts.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{mapLeft as t,fold as n}from"fp-ts/lib/Either";import{pipe as r,not as e,flow as o,absurd as u,identity as i}from"fp-ts/function";import{toNestError as f}from"@hookform/resolvers";import{TaggedUnionType as c,UnionType as a,IntersectionType as s}from"io-ts";import{map as p,filterMapWithIndex as m,toArray as y,last as l,Foldable as g}from"fp-ts/ReadonlyArray";import{none as v,some as d,map as h,getOrElseW as O,getOrElse as b}from"fp-ts/Option";import{fold as x,fromPredicate as j,fromNullable as k,mapLeft as E,getOrElseW as N}from"fp-ts/Either";import{fold as R}from"fp-ts/Semigroup";import{fromFoldableMap as w,map as S}from"fp-ts/ReadonlyRecord";function A(){return(A=Object.assign||function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&(t[e]=r[e])}return t}).apply(this,arguments)}var I=function(t){return t.reduce(function(t,n,e){return r(n,x(function(t){return(e>0?".":"")+t},function(t){return"["+t+"]"}),function(n){return""+t+n})},"")},J=function(t){var n,f=r(n=t.context,m(function(t,r){var e=t-1;return void 0===n[e]||n[e].type instanceof c||n[e].type instanceof a||n[e].type instanceof s?v:d(r)}),p(function(t){return t.key}),p(function(t){return r(t,function(t){return parseInt(t,10)},j(e(Number.isNaN),function(){return t}))}),y,I);return{message:r(t.message,k(t.context),E(o(l,h(function(t){return"expected "+t.type.name+" but got "+JSON.stringify(t.actual)}),O(function(){return u("Error context is missing name")}))),N(i)),type:r(t.context,l,h(function(t){return t.type.name}),b(function(){return"unknown"})),path:f}},L=function(t){return r(t,p(function(t){var n;return(n={})[t.path]={type:t.type,message:t.message},n}),function(t){return R({concat:function(t,n){return Object.assign({},n,t)}})({},t)})},M={concat:function(t,n){var r;return A({},n,{types:A({},t.types,(r={},r[t.type]=t.message,r[n.type]=n.message,r))})}},P=function(t){return r(w(M,g)(t,function(t){return[t.path,t]}),S(function(t){return function(t,n){if(null==t)return{};var r,e,o={},u=Object.keys(t);for(e=0;e<u.length;e++)n.indexOf(r=u[e])>=0||(o[r]=t[r]);return o}(t,["path"])}))},W=function(e){return function(o,u,i){return r(o,e.decode,t((c="all"===i.criteriaMode,function(t){var n=c?P:L;return r(t,p(J),n)})),t(function(t){return f(t,i.fields)}),n(function(t){return{values:{},errors:t}},function(t){return{values:t,errors:{}}}));var c}};export{W as ioTsResolver}; | ||
import{mapLeft as t,fold as n}from"fp-ts/lib/Either";import{pipe as r,not as e,flow as o,absurd as u,identity as i}from"fp-ts/function";import{toNestError as f}from"@hookform/resolvers";import{TaggedUnionType as a,UnionType as c,IntersectionType as s}from"io-ts";import{map as p,filterMapWithIndex as m,toArray as l,last as y,Foldable as v}from"fp-ts/ReadonlyArray";import{none as g,some as d,map as h,getOrElseW as O,getOrElse as b}from"fp-ts/Option";import{fold as x,fromPredicate as N,fromNullable as j,mapLeft as k,getOrElseW as E}from"fp-ts/Either";import{fold as R}from"fp-ts/Semigroup";import{fromFoldableMap as w,map as S}from"fp-ts/ReadonlyRecord";function A(){return(A=Object.assign||function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&(t[e]=r[e])}return t}).apply(this,arguments)}var I=function(t){return t.reduce(function(t,n,e){return r(n,x(function(t){return(e>0?".":"")+t},function(t){return"["+t+"]"}),function(n){return""+t+n})},"")},J=function(t){var n,f=r(n=t.context,m(function(t,r){var e=t-1;return void 0===n[e]||n[e].type instanceof a||n[e].type instanceof c||n[e].type instanceof s?g:d(r)}),p(function(t){return t.key}),p(function(t){return r(t,function(t){return parseInt(t,10)},N(e(Number.isNaN),function(){return t}))}),l,I);return{message:r(t.message,j(t.context),k(o(y,h(function(t){return"expected "+t.type.name+" but got "+JSON.stringify(t.actual)}),O(function(){return u("Error context is missing name")}))),E(i)),type:r(t.context,y,h(function(t){return t.type.name}),b(function(){return"unknown"})),path:f}},L=function(t){return r(t,p(function(t){var n;return(n={})[t.path]={type:t.type,message:t.message},n}),function(t){return R({concat:function(t,n){return Object.assign({},n,t)}})({},t)})},M={concat:function(t,n){var r;return A({},n,{types:A({},t.types,(r={},r[t.type]=t.message,r[n.type]=n.message,r))})}},P=function(t){return r(w(M,v)(t,function(t){return[t.path,t]}),S(function(t){return function(t,n){if(null==t)return{};var r,e,o={},u=Object.keys(t);for(e=0;e<u.length;e++)n.indexOf(r=u[e])>=0||(o[r]=t[r]);return o}(t,["path"])}))},U=function(e){return function(o,u,i){return r(o,e.decode,t((a=!i.shouldUseNativeValidation&&"all"===i.criteriaMode,function(t){var n=a?P:L;return r(t,p(J),n)})),t(function(t){return f(t,i)}),n(function(t){return{values:{},errors:t}},function(t){return{values:t,errors:{}}}));var a}};export{U as ioTsResolver}; | ||
//# sourceMappingURL=io-ts.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fp-ts/lib/Either"),require("fp-ts/function"),require("@hookform/resolvers"),require("io-ts"),require("fp-ts/ReadonlyArray"),require("fp-ts/Option"),require("fp-ts/Either"),require("fp-ts/Semigroup"),require("fp-ts/ReadonlyRecord")):"function"==typeof define&&define.amd?define(["exports","fp-ts/lib/Either","fp-ts/function","@hookform/resolvers","io-ts","fp-ts/ReadonlyArray","fp-ts/Option","fp-ts/Either","fp-ts/Semigroup","fp-ts/ReadonlyRecord"],t):t((e||self).hookformResolversIoTs={},e.Either$1,e._function,e.hookformResolvers,e.ioTs,e.ReadonlyArray,e.Option,e.Either,e.SemiGroup,e.ReadonlyRecord)}(this,function(e,t,n,r,o,i,u,f,p,s){function a(){return(a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var c=function(e){return e.reduce(function(e,t,r){return n.pipe(t,f.fold(function(e){return(r>0?".":"")+e},function(e){return"["+e+"]"}),function(t){return""+e+t})},"")},l=function(e){var t,r=n.pipe(t=e.context,i.filterMapWithIndex(function(e,n){var r=e-1;return void 0===t[r]||t[r].type instanceof o.TaggedUnionType||t[r].type instanceof o.UnionType||t[r].type instanceof o.IntersectionType?u.none:u.some(n)}),i.map(function(e){return e.key}),i.map(function(e){return n.pipe(e,function(e){return parseInt(e,10)},f.fromPredicate(n.not(Number.isNaN),function(){return e}))}),i.toArray,c);return{message:n.pipe(e.message,f.fromNullable(e.context),f.mapLeft(n.flow(i.last,u.map(function(e){return"expected "+e.type.name+" but got "+JSON.stringify(e.actual)}),u.getOrElseW(function(){return n.absurd("Error context is missing name")}))),f.getOrElseW(n.identity)),type:n.pipe(e.context,i.last,u.map(function(e){return e.type.name}),u.getOrElse(function(){return"unknown"})),path:r}},d=function(e){return n.pipe(e,i.map(function(e){var t;return(t={})[e.path]={type:e.type,message:e.message},t}),function(e){return p.fold({concat:function(e,t){return Object.assign({},t,e)}})({},e)})},y={concat:function(e,t){var n;return a({},t,{types:a({},e.types,(n={},n[e.type]=e.message,n[t.type]=t.message,n))})}},m=function(e){return n.pipe(s.fromFoldableMap(y,i.Foldable)(e,function(e){return[e.path,e]}),s.map(function(e){return function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)t.indexOf(n=i[r])>=0||(o[n]=e[n]);return o}(e,["path"])}))};e.ioTsResolver=function(e){return function(o,u,f){return n.pipe(o,e.decode,t.mapLeft((p="all"===f.criteriaMode,function(e){var t=p?m:d;return n.pipe(e,i.map(l),t)})),t.mapLeft(function(e){return r.toNestError(e,f.fields)}),t.fold(function(e){return{values:{},errors:e}},function(e){return{values:e,errors:{}}}));var p}}}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fp-ts/lib/Either"),require("fp-ts/function"),require("@hookform/resolvers"),require("io-ts"),require("fp-ts/ReadonlyArray"),require("fp-ts/Option"),require("fp-ts/Either"),require("fp-ts/Semigroup"),require("fp-ts/ReadonlyRecord")):"function"==typeof define&&define.amd?define(["exports","fp-ts/lib/Either","fp-ts/function","@hookform/resolvers","io-ts","fp-ts/ReadonlyArray","fp-ts/Option","fp-ts/Either","fp-ts/Semigroup","fp-ts/ReadonlyRecord"],t):t((e||self).hookformResolversIoTs={},e.Either$1,e._function,e.hookformResolvers,e.ioTs,e.ReadonlyArray,e.Option,e.Either,e.SemiGroup,e.ReadonlyRecord)}(this,function(e,t,n,r,o,i,u,f,p,s){function a(){return(a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var c=function(e){return e.reduce(function(e,t,r){return n.pipe(t,f.fold(function(e){return(r>0?".":"")+e},function(e){return"["+e+"]"}),function(t){return""+e+t})},"")},l=function(e){var t,r=n.pipe(t=e.context,i.filterMapWithIndex(function(e,n){var r=e-1;return void 0===t[r]||t[r].type instanceof o.TaggedUnionType||t[r].type instanceof o.UnionType||t[r].type instanceof o.IntersectionType?u.none:u.some(n)}),i.map(function(e){return e.key}),i.map(function(e){return n.pipe(e,function(e){return parseInt(e,10)},f.fromPredicate(n.not(Number.isNaN),function(){return e}))}),i.toArray,c);return{message:n.pipe(e.message,f.fromNullable(e.context),f.mapLeft(n.flow(i.last,u.map(function(e){return"expected "+e.type.name+" but got "+JSON.stringify(e.actual)}),u.getOrElseW(function(){return n.absurd("Error context is missing name")}))),f.getOrElseW(n.identity)),type:n.pipe(e.context,i.last,u.map(function(e){return e.type.name}),u.getOrElse(function(){return"unknown"})),path:r}},d=function(e){return n.pipe(e,i.map(function(e){var t;return(t={})[e.path]={type:e.type,message:e.message},t}),function(e){return p.fold({concat:function(e,t){return Object.assign({},t,e)}})({},e)})},y={concat:function(e,t){var n;return a({},t,{types:a({},e.types,(n={},n[e.type]=e.message,n[t.type]=t.message,n))})}},m=function(e){return n.pipe(s.fromFoldableMap(y,i.Foldable)(e,function(e){return[e.path,e]}),s.map(function(e){return function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)t.indexOf(n=i[r])>=0||(o[n]=e[n]);return o}(e,["path"])}))};e.ioTsResolver=function(e){return function(o,u,f){return n.pipe(o,e.decode,t.mapLeft((p=!f.shouldUseNativeValidation&&"all"===f.criteriaMode,function(e){var t=p?m:d;return n.pipe(e,i.map(l),t)})),t.mapLeft(function(e){return r.toNestError(e,f)}),t.fold(function(e){return{values:{},errors:e}},function(e){return{values:e,errors:{}}}));var p}}}); | ||
//# sourceMappingURL=io-ts.umd.js.map |
import { ioTsResolver } from '..'; | ||
import { schema, validData, fields, invalidData } from './__fixtures__/data'; | ||
const shouldUseNativeValidation = false; | ||
describe('ioTsResolver', () => { | ||
@@ -10,2 +12,3 @@ it('should return values from ioTsResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -20,2 +23,3 @@ | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -30,2 +34,3 @@ | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -32,0 +37,0 @@ |
@@ -11,4 +11,8 @@ import * as Either from 'fp-ts/lib/Either'; | ||
codec.decode, | ||
Either.mapLeft(errorsToRecord(options.criteriaMode === 'all')), | ||
Either.mapLeft((errors) => toNestError(errors, options.fields)), | ||
Either.mapLeft( | ||
errorsToRecord( | ||
!options.shouldUseNativeValidation && options.criteriaMode === 'all', | ||
), | ||
), | ||
Either.mapLeft((errors) => toNestError(errors, options)), | ||
Either.fold( | ||
@@ -15,0 +19,0 @@ (errors) => ({ |
@@ -1,2 +0,2 @@ | ||
var e=require("react-hook-form"),r=require("@hookform/resolvers");exports.joiResolver=function(t,n,o){return void 0===n&&(n={abortEarly:!1}),void 0===o&&(o={}),function(a,i,s){try{var u=function(){return{values:v.error?{}:v.value,errors:v.error?r.toNestError((t=v.error,n="all"===s.criteriaMode,t.details.length?t.details.reduce(function(r,t){var o=t.path.join(".");if(r[o]||(r[o]={message:t.message,type:t.type}),n){var a=r[o].types,i=a&&a[t.type];r[o]=e.appendErrors(o,n,r,t.type,i?[].concat(i,t.message):t.message)}return r},{}):{}),s.fields):{}};var t,n},c=Object.assign({},n,{context:i}),v={},l=function(){if("sync"===o.mode)v=t.validate(a,c);else{var e=function(e,r){try{var t=e()}catch(e){return r(e)}return t&&t.then?t.then(void 0,r):t}(function(){return Promise.resolve(t.validateAsync(a,c)).then(function(e){v.value=e})},function(e){v.error=e});if(e&&e.then)return e.then(function(){})}}();return Promise.resolve(l&&l.then?l.then(u):u())}catch(e){return Promise.reject(e)}}}; | ||
var e=require("react-hook-form"),r=require("@hookform/resolvers");exports.joiResolver=function(t,n,o){return void 0===n&&(n={abortEarly:!1}),void 0===o&&(o={}),function(a,i,s){try{var u=function(){return{values:v.error?{}:v.value,errors:v.error?r.toNestError((t=v.error,n=!s.shouldUseNativeValidation&&"all"===s.criteriaMode,t.details.length?t.details.reduce(function(r,t){var o=t.path.join(".");if(r[o]||(r[o]={message:t.message,type:t.type}),n){var a=r[o].types,i=a&&a[t.type];r[o]=e.appendErrors(o,n,r,t.type,i?[].concat(i,t.message):t.message)}return r},{}):{}),s):{}};var t,n},c=Object.assign({},n,{context:i}),v={},l=function(){if("sync"===o.mode)v=t.validate(a,c);else{var e=function(e,r){try{var t=e()}catch(e){return r(e)}return t&&t.then?t.then(void 0,r):t}(function(){return Promise.resolve(t.validateAsync(a,c)).then(function(e){v.value=e})},function(e){v.error=e});if(e&&e.then)return e.then(function(){})}}();return Promise.resolve(l&&l.then?l.then(u):u())}catch(e){return Promise.reject(e)}}}; | ||
//# sourceMappingURL=joi.js.map |
@@ -1,2 +0,2 @@ | ||
import{appendErrors as e}from"react-hook-form";import{toNestError as r}from"@hookform/resolvers";const t=(t,o={abortEarly:!1},a={})=>async(s,c,l)=>{const i=Object.assign({},o,{context:c});let n={};if("sync"===a.mode)n=t.validate(s,i);else try{n.value=await t.validateAsync(s,i)}catch(e){n.error=e}return{values:n.error?{}:n.value,errors:n.error?r((m=n.error,y="all"===l.criteriaMode,m.details.length?m.details.reduce((r,t)=>{const o=t.path.join(".");if(r[o]||(r[o]={message:t.message,type:t.type}),y){const a=r[o].types,s=a&&a[t.type];r[o]=e(o,y,r,t.type,s?[].concat(s,t.message):t.message)}return r},{}):{}),l.fields):{}};var m,y};export{t as joiResolver}; | ||
import{appendErrors as e}from"react-hook-form";import{toNestError as r}from"@hookform/resolvers";const t=(t,a={abortEarly:!1},o={})=>async(s,c,i)=>{const l=Object.assign({},a,{context:c});let n={};if("sync"===o.mode)n=t.validate(s,l);else try{n.value=await t.validateAsync(s,l)}catch(e){n.error=e}return{values:n.error?{}:n.value,errors:n.error?r((m=n.error,y=!i.shouldUseNativeValidation&&"all"===i.criteriaMode,m.details.length?m.details.reduce((r,t)=>{const a=t.path.join(".");if(r[a]||(r[a]={message:t.message,type:t.type}),y){const o=r[a].types,s=o&&o[t.type];r[a]=e(a,y,r,t.type,s?[].concat(s,t.message):t.message)}return r},{}):{}),i):{}};var m,y};export{t as joiResolver}; | ||
//# sourceMappingURL=joi.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{appendErrors as e}from"react-hook-form";import{toNestError as r}from"@hookform/resolvers";var t=function(t,n,o){return void 0===n&&(n={abortEarly:!1}),void 0===o&&(o={}),function(a,i,s){try{var c=function(){return{values:f.error?{}:f.value,errors:f.error?r((t=f.error,n="all"===s.criteriaMode,t.details.length?t.details.reduce(function(r,t){var o=t.path.join(".");if(r[o]||(r[o]={message:t.message,type:t.type}),n){var a=r[o].types,i=a&&a[t.type];r[o]=e(o,n,r,t.type,i?[].concat(i,t.message):t.message)}return r},{}):{}),s.fields):{}};var t,n},u=Object.assign({},n,{context:i}),f={},v=function(){if("sync"===o.mode)f=t.validate(a,u);else{var e=function(e,r){try{var t=e()}catch(e){return r(e)}return t&&t.then?t.then(void 0,r):t}(function(){return Promise.resolve(t.validateAsync(a,u)).then(function(e){f.value=e})},function(e){f.error=e});if(e&&e.then)return e.then(function(){})}}();return Promise.resolve(v&&v.then?v.then(c):c())}catch(e){return Promise.reject(e)}}};export{t as joiResolver}; | ||
import{appendErrors as e}from"react-hook-form";import{toNestError as r}from"@hookform/resolvers";var t=function(t,n,o){return void 0===n&&(n={abortEarly:!1}),void 0===o&&(o={}),function(a,i,s){try{var c=function(){return{values:v.error?{}:v.value,errors:v.error?r((t=v.error,n=!s.shouldUseNativeValidation&&"all"===s.criteriaMode,t.details.length?t.details.reduce(function(r,t){var o=t.path.join(".");if(r[o]||(r[o]={message:t.message,type:t.type}),n){var a=r[o].types,i=a&&a[t.type];r[o]=e(o,n,r,t.type,i?[].concat(i,t.message):t.message)}return r},{}):{}),s):{}};var t,n},u=Object.assign({},n,{context:i}),v={},f=function(){if("sync"===o.mode)v=t.validate(a,u);else{var e=function(e,r){try{var t=e()}catch(e){return r(e)}return t&&t.then?t.then(void 0,r):t}(function(){return Promise.resolve(t.validateAsync(a,u)).then(function(e){v.value=e})},function(e){v.error=e});if(e&&e.then)return e.then(function(){})}}();return Promise.resolve(f&&f.then?f.then(c):c())}catch(e){return Promise.reject(e)}}};export{t as joiResolver}; | ||
//# sourceMappingURL=joi.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("react-hook-form"),require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","react-hook-form","@hookform/resolvers"],r):r((e||self).hookformResolversJoi={},e.reactHookForm,e.hookformResolvers)}(this,function(e,r,o){e.joiResolver=function(e,t,n){return void 0===t&&(t={abortEarly:!1}),void 0===n&&(n={}),function(i,s,a){try{var f=function(){return{values:c.error?{}:c.value,errors:c.error?o.toNestError((e=c.error,t="all"===a.criteriaMode,e.details.length?e.details.reduce(function(e,o){var n=o.path.join(".");if(e[n]||(e[n]={message:o.message,type:o.type}),t){var i=e[n].types,s=i&&i[o.type];e[n]=r.appendErrors(n,t,e,o.type,s?[].concat(s,o.message):o.message)}return e},{}):{}),a.fields):{}};var e,t},u=Object.assign({},t,{context:s}),c={},l=function(){if("sync"===n.mode)c=e.validate(i,u);else{var r=function(e,r){try{var o=e()}catch(e){return r(e)}return o&&o.then?o.then(void 0,r):o}(function(){return Promise.resolve(e.validateAsync(i,u)).then(function(e){c.value=e})},function(e){c.error=e});if(r&&r.then)return r.then(function(){})}}();return Promise.resolve(l&&l.then?l.then(f):f())}catch(e){return Promise.reject(e)}}}}); | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("react-hook-form"),require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","react-hook-form","@hookform/resolvers"],r):r((e||self).hookformResolversJoi={},e.reactHookForm,e.hookformResolvers)}(this,function(e,r,o){e.joiResolver=function(e,t,n){return void 0===t&&(t={abortEarly:!1}),void 0===n&&(n={}),function(i,s,a){try{var f=function(){return{values:c.error?{}:c.value,errors:c.error?o.toNestError((e=c.error,t=!a.shouldUseNativeValidation&&"all"===a.criteriaMode,e.details.length?e.details.reduce(function(e,o){var n=o.path.join(".");if(e[n]||(e[n]={message:o.message,type:o.type}),t){var i=e[n].types,s=i&&i[o.type];e[n]=r.appendErrors(n,t,e,o.type,s?[].concat(s,o.message):o.message)}return e},{}):{}),a):{}};var e,t},u=Object.assign({},t,{context:s}),c={},l=function(){if("sync"===n.mode)c=e.validate(i,u);else{var r=function(e,r){try{var o=e()}catch(e){return r(e)}return o&&o.then?o.then(void 0,r):o}(function(){return Promise.resolve(e.validateAsync(i,u)).then(function(e){c.value=e})},function(e){c.error=e});if(r&&r.then)return r.then(function(){})}}();return Promise.resolve(l&&l.then?l.then(f):f())}catch(e){return Promise.reject(e)}}}}); | ||
//# sourceMappingURL=joi.umd.js.map |
import { joiResolver } from '..'; | ||
import { schema, validData, fields, invalidData } from './__fixtures__/data'; | ||
const shouldUseNativeValidation = false; | ||
describe('joiResolver', () => { | ||
@@ -11,2 +13,3 @@ it('should return values from joiResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -25,3 +28,3 @@ | ||
mode: 'sync', | ||
})(validData, undefined, { fields }); | ||
})(validData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -36,2 +39,3 @@ expect(validateAsyncSpy).not.toHaveBeenCalled(); | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -48,3 +52,3 @@ | ||
mode: 'sync', | ||
})(invalidData, undefined, { fields }); | ||
})(invalidData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -60,2 +64,3 @@ expect(validateAsyncSpy).not.toHaveBeenCalled(); | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -73,2 +78,3 @@ | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}, | ||
@@ -85,3 +91,6 @@ ); | ||
const result = await joiResolver(schema)(validData, context, { fields }); | ||
const result = await joiResolver(schema)(validData, context, { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -88,0 +97,0 @@ expect(validateSpy).not.toHaveBeenCalled(); |
@@ -65,4 +65,8 @@ import { appendErrors, FieldError } from 'react-hook-form'; | ||
? toNestError( | ||
parseErrorSchema(result.error, options.criteriaMode === 'all'), | ||
options.fields, | ||
parseErrorSchema( | ||
result.error, | ||
!options.shouldUseNativeValidation && | ||
options.criteriaMode === 'all', | ||
), | ||
options, | ||
) | ||
@@ -69,0 +73,0 @@ : {}, |
@@ -1,2 +0,2 @@ | ||
var r=require("@hookform/resolvers"),e=function r(e,o,t){return void 0===o&&(o={}),void 0===t&&(t=""),Object.keys(e).reduce(function(o,n){var s=t?t+"."+n:n,u=e[n];return"string"==typeof u?o[s]={message:u}:r(u,o,s),o},o)};exports.nopeResolver=function(o,t){return void 0===t&&(t={abortEarly:!1}),function(n,s,u){var i=o.validate(n,s,t);return i?{values:{},errors:r.toNestError(e(i),u.fields)}:{values:n,errors:{}}}}; | ||
var r=require("@hookform/resolvers"),e=function r(e,o,t){return void 0===o&&(o={}),void 0===t&&(t=""),Object.keys(e).reduce(function(o,n){var s=t?t+"."+n:n,u=e[n];return"string"==typeof u?o[s]={message:u}:r(u,o,s),o},o)};exports.nopeResolver=function(o,t){return void 0===t&&(t={abortEarly:!1}),function(n,s,u){var v=o.validate(n,s,t);return v?{values:{},errors:r.toNestError(e(v),u)}:{values:n,errors:{}}}}; | ||
//# sourceMappingURL=nope.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";const e=(r,o={},s="")=>Object.keys(r).reduce((o,t)=>{const a=s?`${s}.${t}`:t,l=r[t];return"string"==typeof l?o[a]={message:l}:e(l,o,a),o},o),o=(o,s={abortEarly:!1})=>(t,a,l)=>{const n=o.validate(t,a,s);return n?{values:{},errors:r(e(n),l.fields)}:{values:t,errors:{}}};export{o as nopeResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";const e=(r,o={},s="")=>Object.keys(r).reduce((o,t)=>{const a=s?`${s}.${t}`:t,n=r[t];return"string"==typeof n?o[a]={message:n}:e(n,o,a),o},o),o=(o,s={abortEarly:!1})=>(t,a,n)=>{const c=o.validate(t,a,s);return c?{values:{},errors:r(e(c),n)}:{values:t,errors:{}}};export{o as nopeResolver}; | ||
//# sourceMappingURL=nope.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";var e=function r(e,o,t){return void 0===o&&(o={}),void 0===t&&(t=""),Object.keys(e).reduce(function(o,n){var i=t?t+"."+n:n,s=e[n];return"string"==typeof s?o[i]={message:s}:r(s,o,i),o},o)},o=function(o,t){return void 0===t&&(t={abortEarly:!1}),function(n,i,s){var u=o.validate(n,i,t);return u?{values:{},errors:r(e(u),s.fields)}:{values:n,errors:{}}}};export{o as nopeResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";var e=function r(e,o,t){return void 0===o&&(o={}),void 0===t&&(t=""),Object.keys(e).reduce(function(o,n){var u=t?t+"."+n:n,a=e[n];return"string"==typeof a?o[u]={message:a}:r(a,o,u),o},o)},o=function(o,t){return void 0===t&&(t={abortEarly:!1}),function(n,u,a){var i=o.validate(n,u,t);return i?{values:{},errors:r(e(i),a)}:{values:n,errors:{}}}};export{o as nopeResolver}; | ||
//# sourceMappingURL=nope.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers"],o):o((e||self).hookformResolversNope={},e.hookformResolvers)}(this,function(e,o){var r=function e(o,r,n){return void 0===r&&(r={}),void 0===n&&(n=""),Object.keys(o).reduce(function(r,t){var s=n?n+"."+t:t,f=o[t];return"string"==typeof f?r[s]={message:f}:e(f,r,s),r},r)};e.nopeResolver=function(e,n){return void 0===n&&(n={abortEarly:!1}),function(t,s,f){var i=e.validate(t,s,n);return i?{values:{},errors:o.toNestError(r(i),f.fields)}:{values:t,errors:{}}}}}); | ||
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers"],o):o((e||self).hookformResolversNope={},e.hookformResolvers)}(this,function(e,o){var r=function e(o,r,n){return void 0===r&&(r={}),void 0===n&&(n=""),Object.keys(o).reduce(function(r,t){var s=n?n+"."+t:t,f=o[t];return"string"==typeof f?r[s]={message:f}:e(f,r,s),r},r)};e.nopeResolver=function(e,n){return void 0===n&&(n={abortEarly:!1}),function(t,s,f){var i=e.validate(t,s,n);return i?{values:{},errors:o.toNestError(r(i),f)}:{values:t,errors:{}}}}}); | ||
//# sourceMappingURL=nope.umd.js.map |
@@ -5,2 +5,4 @@ /* eslint-disable no-console, @typescript-eslint/ban-ts-comment */ | ||
const shouldUseNativeValidation = false; | ||
describe('nopeResolver', () => { | ||
@@ -12,2 +14,3 @@ it('should return values from nopeResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -22,2 +25,3 @@ | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -24,0 +28,0 @@ |
@@ -40,4 +40,4 @@ import type { FieldErrors } from 'react-hook-form'; | ||
return result | ||
? { values: {}, errors: toNestError(parseErrors(result), options.fields) } | ||
? { values: {}, errors: toNestError(parseErrors(result), options) } | ||
: { values, errors: {} }; | ||
}; |
{ | ||
"name": "@hookform/resolvers", | ||
"amdName": "hookformResolvers", | ||
"version": "2.5.2", | ||
"version": "2.6.0", | ||
"description": "React Hook Form validation resolvers: Yup, Joi, Superstruct, Zod, Vest, Class Validator, io-ts, Nope and computed-types", | ||
@@ -184,3 +184,3 @@ "main": "dist/resolvers.js", | ||
"react-dom": "^17.0.2", | ||
"react-hook-form": "7.7.1", | ||
"react-hook-form": "7.8.4-beta.0", | ||
"reflect-metadata": "^0.1.13", | ||
@@ -187,0 +187,0 @@ "superstruct": "^0.15.2", |
@@ -136,3 +136,3 @@ <div align="center"> | ||
<input {...register('name')} /> | ||
<input type="number" ref={register('age', { valueAsNumber: true })} /> | ||
<input type="number" {...register('age', { valueAsNumber: true })} /> | ||
<input type="submit" /> | ||
@@ -318,3 +318,3 @@ </form> | ||
<form onSubmit={handleSubmit((d) => console.log(d))}> | ||
<input name="username" ref={register} /> | ||
<input {...register('username')} /> | ||
<input type="number" {...register('age')} /> | ||
@@ -321,0 +321,0 @@ <input type="submit" /> |
@@ -1,2 +0,2 @@ | ||
var r=require("@hookform/resolvers"),e=require("superstruct");exports.superstructResolver=function(s,t){return function(u,o,n){var a,i=e.validate(u,s,t);return{values:i[1]||{},errors:i[0]?r.toNestError((a=i[0],a.failures().reduce(function(r,e){return(r[e.path.join(".")]={message:e.message,type:e.type})&&r},{})),n.fields):{}}}}; | ||
var r=require("@hookform/resolvers"),e=require("superstruct");exports.superstructResolver=function(t,s){return function(u,o,n){var a,i=e.validate(u,t,s);return{values:i[1]||{},errors:i[0]?r.toNestError((a=i[0],a.failures().reduce(function(r,e){return(r[e.path.join(".")]={message:e.message,type:e.type})&&r},{})),n):{}}}}; | ||
//# sourceMappingURL=superstruct.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";import{validate as e}from"superstruct";const s=(s,o)=>(t,m,p)=>{const a=e(t,s,o);return{values:a[1]||{},errors:a[0]?r((u=a[0],u.failures().reduce((r,e)=>(r[e.path.join(".")]={message:e.message,type:e.type})&&r,{})),p.fields):{}};var u};export{s as superstructResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";import{validate as e}from"superstruct";const o=(o,s)=>(t,m,p)=>{const a=e(t,o,s);return{values:a[1]||{},errors:a[0]?r((u=a[0],u.failures().reduce((r,e)=>(r[e.path.join(".")]={message:e.message,type:e.type})&&r,{})),p):{}};var u};export{o as superstructResolver}; | ||
//# sourceMappingURL=superstruct.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";import{validate as e}from"superstruct";var o=function(o,t){return function(s,u,n){var f,i=e(s,o,t);return{values:i[1]||{},errors:i[0]?r((f=i[0],f.failures().reduce(function(r,e){return(r[e.path.join(".")]={message:e.message,type:e.type})&&r},{})),n.fields):{}}}};export{o as superstructResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";import{validate as e}from"superstruct";var o=function(o,t){return function(s,u,n){var a,f=e(s,o,t);return{values:f[1]||{},errors:f[0]?r((a=f[0],a.failures().reduce(function(r,e){return(r[e.path.join(".")]={message:e.message,type:e.type})&&r},{})),n):{}}}};export{o as superstructResolver}; | ||
//# sourceMappingURL=superstruct.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers"),require("superstruct")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","superstruct"],r):r((e||self).hookformResolversSuperstruct={},e.hookformResolvers,e.superstruct)}(this,function(e,r,o){e.superstructResolver=function(e,s){return function(t,u,n){var f,i=o.validate(t,e,s);return{values:i[1]||{},errors:i[0]?r.toNestError((f=i[0],f.failures().reduce(function(e,r){return(e[r.path.join(".")]={message:r.message,type:r.type})&&e},{})),n.fields):{}}}}}); | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers"),require("superstruct")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","superstruct"],r):r((e||self).hookformResolversSuperstruct={},e.hookformResolvers,e.superstruct)}(this,function(e,r,o){e.superstructResolver=function(e,t){return function(s,u,n){var f,i=o.validate(s,e,t);return{values:i[1]||{},errors:i[0]?r.toNestError((f=i[0],f.failures().reduce(function(e,r){return(e[r.path.join(".")]={message:r.message,type:r.type})&&e},{})),n):{}}}}}); | ||
//# sourceMappingURL=superstruct.umd.js.map |
import { superstructResolver } from '..'; | ||
import { invalidData, schema, validData, fields } from './__fixtures__/data'; | ||
const shouldUseNativeValidation = false; | ||
describe('superstructResolver', () => { | ||
@@ -8,2 +10,3 @@ it('should return values from superstructResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -17,2 +20,3 @@ | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -19,0 +23,0 @@ |
@@ -24,5 +24,5 @@ import { FieldError } from 'react-hook-form'; | ||
errors: result[0] | ||
? toNestError(parseErrorSchema(result[0]), options.fields) | ||
? toNestError(parseErrorSchema(result[0]), options) | ||
: {}, | ||
}; | ||
}; |
@@ -1,2 +0,2 @@ | ||
var r=require("@hookform/resolvers");function e(r){return r&&"object"==typeof r&&"default"in r?r:{default:r}}var t=e(require("vest/promisify")),o=function(r,e){var t={};for(var o in r)t[o]||(t[o]={message:r[o][0],type:""}),e&&(t[o].types=r[o].reduce(function(r,e,t){return(r[t]=e)&&r},{}));return t};exports.vestResolver=function(e,s,n){return void 0===n&&(n={}),function(s,u,i){try{var a=function(e){return e.hasErrors()?{values:{},errors:r.toNestError(o(e.getErrors(),"all"===i.criteriaMode),i.fields)}:{values:s,errors:{}}};return Promise.resolve("sync"===n.mode?a(e(s)):Promise.resolve(t.default(e)(s)).then(a))}catch(r){return Promise.reject(r)}}}; | ||
var r=require("@hookform/resolvers");function e(r){return r&&"object"==typeof r&&"default"in r?r:{default:r}}var t=e(require("vest/promisify")),o=function(r,e){var t={};for(var o in r)t[o]||(t[o]={message:r[o][0],type:""}),e&&(t[o].types=r[o].reduce(function(r,e,t){return(r[t]=e)&&r},{}));return t};exports.vestResolver=function(e,s,n){return void 0===n&&(n={}),function(s,u,i){try{var a=function(e){return e.hasErrors()?{values:{},errors:r.toNestError(o(e.getErrors(),!i.shouldUseNativeValidation&&"all"===i.criteriaMode),i)}:{values:s,errors:{}}};return Promise.resolve("sync"===n.mode?a(e(s)):Promise.resolve(t.default(e)(s)).then(a))}catch(r){return Promise.reject(r)}}}; | ||
//# sourceMappingURL=vest.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";import e from"vest/promisify";const o=(r,e)=>{const o={};for(const s in r)o[s]||(o[s]={message:r[s][0],type:""}),e&&(o[s].types=r[s].reduce((r,e,o)=>(r[o]=e)&&r,{}));return o},s=(s,t,a={})=>async(t,i,n)=>{const c="sync"===a.mode?s(t):await e(s)(t);return c.hasErrors()?{values:{},errors:r(o(c.getErrors(),"all"===n.criteriaMode),n.fields)}:{values:t,errors:{}}};export{s as vestResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";import o from"vest/promisify";const e=(r,o)=>{const e={};for(const s in r)e[s]||(e[s]={message:r[s][0],type:""}),o&&(e[s].types=r[s].reduce((r,o,e)=>(r[e]=o)&&r,{}));return e},s=(s,t,a={})=>async(t,i,n)=>{const c="sync"===a.mode?s(t):await o(s)(t);return c.hasErrors()?{values:{},errors:r(e(c.getErrors(),!n.shouldUseNativeValidation&&"all"===n.criteriaMode),n)}:{values:t,errors:{}}};export{s as vestResolver}; | ||
//# sourceMappingURL=vest.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as r}from"@hookform/resolvers";import e from"vest/promisify";var o=function(r,e){var o={};for(var t in r)o[t]||(o[t]={message:r[t][0],type:""}),e&&(o[t].types=r[t].reduce(function(r,e,o){return(r[o]=e)&&r},{}));return o},t=function(t,s,n){return void 0===n&&(n={}),function(s,i,u){try{var a=function(e){return e.hasErrors()?{values:{},errors:r(o(e.getErrors(),"all"===u.criteriaMode),u.fields)}:{values:s,errors:{}}};return Promise.resolve("sync"===n.mode?a(t(s)):Promise.resolve(e(t)(s)).then(a))}catch(r){return Promise.reject(r)}}};export{t as vestResolver}; | ||
import{toNestError as r}from"@hookform/resolvers";import e from"vest/promisify";var o=function(r,e){var o={};for(var t in r)o[t]||(o[t]={message:r[t][0],type:""}),e&&(o[t].types=r[t].reduce(function(r,e,o){return(r[o]=e)&&r},{}));return o},t=function(t,s,n){return void 0===n&&(n={}),function(s,i,u){try{var a=function(e){return e.hasErrors()?{values:{},errors:r(o(e.getErrors(),!u.shouldUseNativeValidation&&"all"===u.criteriaMode),u)}:{values:s,errors:{}}};return Promise.resolve("sync"===n.mode?a(t(s)):Promise.resolve(e(t)(s)).then(a))}catch(r){return Promise.reject(r)}}};export{t as vestResolver}; | ||
//# sourceMappingURL=vest.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers"),require("vest/promisify")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","vest/promisify"],r):r((e||self).hookformResolversVest={},e.hookformResolvers,e.promisify)}(this,function(e,r,o){function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=t(o),n=function(e,r){var o={};for(var t in e)o[t]||(o[t]={message:e[t][0],type:""}),r&&(o[t].types=e[t].reduce(function(e,r,o){return(e[o]=r)&&e},{}));return o};e.vestResolver=function(e,o,t){return void 0===t&&(t={}),function(o,i,f){try{var u=function(e){return e.hasErrors()?{values:{},errors:r.toNestError(n(e.getErrors(),"all"===f.criteriaMode),f.fields)}:{values:o,errors:{}}};return Promise.resolve("sync"===t.mode?u(e(o)):Promise.resolve(s.default(e)(o)).then(u))}catch(e){return Promise.reject(e)}}}}); | ||
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@hookform/resolvers"),require("vest/promisify")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","vest/promisify"],r):r((e||self).hookformResolversVest={},e.hookformResolvers,e.promisify)}(this,function(e,r,o){function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=t(o),n=function(e,r){var o={};for(var t in e)o[t]||(o[t]={message:e[t][0],type:""}),r&&(o[t].types=e[t].reduce(function(e,r,o){return(e[o]=r)&&e},{}));return o};e.vestResolver=function(e,o,t){return void 0===t&&(t={}),function(o,i,f){try{var u=function(e){return e.hasErrors()?{values:{},errors:r.toNestError(n(e.getErrors(),!f.shouldUseNativeValidation&&"all"===f.criteriaMode),f)}:{values:o,errors:{}}};return Promise.resolve("sync"===t.mode?u(e(o)):Promise.resolve(s.default(e)(o)).then(u))}catch(e){return Promise.reject(e)}}}}); | ||
//# sourceMappingURL=vest.umd.js.map |
@@ -9,6 +9,11 @@ import { vestResolver } from '..'; | ||
const shouldUseNativeValidation = false; | ||
describe('vestResolver', () => { | ||
it('should return values from vestResolver when validation pass', async () => { | ||
expect( | ||
await vestResolver(validationSuite)(validData, undefined, { fields }), | ||
await vestResolver(validationSuite)(validData, undefined, { | ||
fields, | ||
shouldUseNativeValidation, | ||
}), | ||
).toEqual({ | ||
@@ -24,3 +29,3 @@ values: validData, | ||
mode: 'sync', | ||
})(validData, undefined, { fields }), | ||
})(validData, undefined, { fields, shouldUseNativeValidation }), | ||
).toEqual({ | ||
@@ -36,2 +41,3 @@ values: validData, | ||
fields, | ||
shouldUseNativeValidation, | ||
}), | ||
@@ -45,3 +51,3 @@ ).toMatchSnapshot(); | ||
mode: 'sync', | ||
})(invalidData, undefined, { fields }), | ||
})(invalidData, undefined, { fields, shouldUseNativeValidation }), | ||
).toMatchSnapshot(); | ||
@@ -55,3 +61,3 @@ }); | ||
{}, | ||
{ fields, criteriaMode: 'all' }, | ||
{ fields, criteriaMode: 'all', shouldUseNativeValidation }, | ||
), | ||
@@ -66,3 +72,3 @@ ).toMatchSnapshot(); | ||
{}, | ||
{ fields, criteriaMode: 'all' }, | ||
{ fields, criteriaMode: 'all', shouldUseNativeValidation }, | ||
), | ||
@@ -69,0 +75,0 @@ ).toMatchSnapshot(); |
@@ -40,5 +40,6 @@ import { toNestError } from '@hookform/resolvers'; | ||
result.getErrors(), | ||
options.criteriaMode === 'all', | ||
!options.shouldUseNativeValidation && | ||
options.criteriaMode === 'all', | ||
), | ||
options.fields, | ||
options, | ||
), | ||
@@ -45,0 +46,0 @@ } |
@@ -1,2 +0,2 @@ | ||
var e=require("@hookform/resolvers"),r=require("react-hook-form");exports.yupResolver=function(t,o,n){return void 0===o&&(o={}),void 0===n&&(n={}),function(s,a,c){try{return Promise.resolve(function(e,r){try{var c=(o.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(t["sync"===n.mode?"validateSync":"validate"](s,Object.assign({abortEarly:!1},o,{context:a}))).then(function(e){return{values:e,errors:{}}}))}catch(e){return r(e)}return c&&c.then?c.then(void 0,r):c}(0,function(t){return{values:{},errors:e.toNestError((o=t,n="all"===c.criteriaMode,o.inner.reduce(function(e,t){if(e[t.path]||(e[t.path]={message:t.message,type:t.type}),n){var o=e[t.path].types,s=o&&o[t.type];e[t.path]=r.appendErrors(t.path,n,e,t.type,s?[].concat(s,t.message):t.message)}return e},{})),c.fields)};var o,n}))}catch(e){return Promise.reject(e)}}}; | ||
var e=require("@hookform/resolvers"),r=require("react-hook-form");exports.yupResolver=function(t,o,n){return void 0===o&&(o={}),void 0===n&&(n={}),function(s,a,u){try{return Promise.resolve(function(e,r){try{var u=(o.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(t["sync"===n.mode?"validateSync":"validate"](s,Object.assign({abortEarly:!1},o,{context:a}))).then(function(e){return{values:e,errors:{}}}))}catch(e){return r(e)}return u&&u.then?u.then(void 0,r):u}(0,function(t){return{values:{},errors:e.toNestError((o=t,n=!u.shouldUseNativeValidation&&"all"===u.criteriaMode,o.inner.reduce(function(e,t){if(e[t.path]||(e[t.path]={message:t.message,type:t.type}),n){var o=e[t.path].types,s=o&&o[t.type];e[t.path]=r.appendErrors(t.path,n,e,t.type,s?[].concat(s,t.message):t.message)}return e},{})),u)};var o,n}))}catch(e){return Promise.reject(e)}}}; | ||
//# sourceMappingURL=yup.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as e}from"@hookform/resolvers";import{appendErrors as t}from"react-hook-form";const o=(o,r={},s={})=>async(a,n,c)=>{try{return r.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),{values:await o["sync"===s.mode?"validateSync":"validate"](a,Object.assign({abortEarly:!1},r,{context:n})),errors:{}}}catch(o){return{values:{},errors:e((p=o,i="all"===c.criteriaMode,p.inner.reduce((e,o)=>{if(e[o.path]||(e[o.path]={message:o.message,type:o.type}),i){const r=e[o.path].types,s=r&&r[o.type];e[o.path]=t(o.path,i,e,o.type,s?[].concat(s,o.message):o.message)}return e},{})),c.fields)}}var p,i};export{o as yupResolver}; | ||
import{toNestError as e}from"@hookform/resolvers";import{appendErrors as t}from"react-hook-form";const o=(o,a={},r={})=>async(s,n,c)=>{try{return a.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),{values:await o["sync"===r.mode?"validateSync":"validate"](s,Object.assign({abortEarly:!1},a,{context:n})),errors:{}}}catch(o){return{values:{},errors:e((p=o,i=!c.shouldUseNativeValidation&&"all"===c.criteriaMode,p.inner.reduce((e,o)=>{if(e[o.path]||(e[o.path]={message:o.message,type:o.type}),i){const a=e[o.path].types,r=a&&a[o.type];e[o.path]=t(o.path,i,e,o.type,r?[].concat(r,o.message):o.message)}return e},{})),c)}}var p,i};export{o as yupResolver}; | ||
//# sourceMappingURL=yup.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{toNestError as e}from"@hookform/resolvers";import{appendErrors as t}from"react-hook-form";var r=function(r,o,n){return void 0===o&&(o={}),void 0===n&&(n={}),function(s,a,c){try{return Promise.resolve(function(e,t){try{var c=(o.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(r["sync"===n.mode?"validateSync":"validate"](s,Object.assign({abortEarly:!1},o,{context:a}))).then(function(e){return{values:e,errors:{}}}))}catch(e){return t(e)}return c&&c.then?c.then(void 0,t):c}(0,function(r){return{values:{},errors:e((o=r,n="all"===c.criteriaMode,o.inner.reduce(function(e,r){if(e[r.path]||(e[r.path]={message:r.message,type:r.type}),n){var o=e[r.path].types,s=o&&o[r.type];e[r.path]=t(r.path,n,e,r.type,s?[].concat(s,r.message):r.message)}return e},{})),c.fields)};var o,n}))}catch(e){return Promise.reject(e)}}};export{r as yupResolver}; | ||
import{toNestError as e}from"@hookform/resolvers";import{appendErrors as t}from"react-hook-form";var r=function(r,o,n){return void 0===o&&(o={}),void 0===n&&(n={}),function(s,a,c){try{return Promise.resolve(function(e,t){try{var c=(o.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(r["sync"===n.mode?"validateSync":"validate"](s,Object.assign({abortEarly:!1},o,{context:a}))).then(function(e){return{values:e,errors:{}}}))}catch(e){return t(e)}return c&&c.then?c.then(void 0,t):c}(0,function(r){return{values:{},errors:e((o=r,n=!c.shouldUseNativeValidation&&"all"===c.criteriaMode,o.inner.reduce(function(e,r){if(e[r.path]||(e[r.path]={message:r.message,type:r.type}),n){var o=e[r.path].types,s=o&&o[r.type];e[r.path]=t(r.path,n,e,r.type,s?[].concat(s,r.message):r.message)}return e},{})),c)};var o,n}))}catch(e){return Promise.reject(e)}}};export{r as yupResolver}; | ||
//# sourceMappingURL=yup.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@hookform/resolvers"),require("react-hook-form")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","react-hook-form"],o):o((e||self).hookformResolversYup={},e.hookformResolvers,e.reactHookForm)}(this,function(e,o,r){e.yupResolver=function(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),function(s,a,i){try{return Promise.resolve(function(o,r){try{var i=(t.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(e["sync"===n.mode?"validateSync":"validate"](s,Object.assign({abortEarly:!1},t,{context:a}))).then(function(e){return{values:e,errors:{}}}))}catch(e){return r(e)}return i&&i.then?i.then(void 0,r):i}(0,function(e){return{values:{},errors:o.toNestError((t=e,n="all"===i.criteriaMode,t.inner.reduce(function(e,o){if(e[o.path]||(e[o.path]={message:o.message,type:o.type}),n){var t=e[o.path].types,s=t&&t[o.type];e[o.path]=r.appendErrors(o.path,n,e,o.type,s?[].concat(s,o.message):o.message)}return e},{})),i.fields)};var t,n}))}catch(e){return Promise.reject(e)}}}}); | ||
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@hookform/resolvers"),require("react-hook-form")):"function"==typeof define&&define.amd?define(["exports","@hookform/resolvers","react-hook-form"],o):o((e||self).hookformResolversYup={},e.hookformResolvers,e.reactHookForm)}(this,function(e,o,r){e.yupResolver=function(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),function(s,a,i){try{return Promise.resolve(function(o,r){try{var i=(t.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(e["sync"===n.mode?"validateSync":"validate"](s,Object.assign({abortEarly:!1},t,{context:a}))).then(function(e){return{values:e,errors:{}}}))}catch(e){return r(e)}return i&&i.then?i.then(void 0,r):i}(0,function(e){return{values:{},errors:o.toNestError((t=e,n=!i.shouldUseNativeValidation&&"all"===i.criteriaMode,t.inner.reduce(function(e,o){if(e[o.path]||(e[o.path]={message:o.message,type:o.type}),n){var t=e[o.path].types,s=t&&t[o.type];e[o.path]=r.appendErrors(o.path,n,e,o.type,s?[].concat(s,o.message):o.message)}return e},{})),i)};var t,n}))}catch(e){return Promise.reject(e)}}}}); | ||
//# sourceMappingURL=yup.umd.js.map |
@@ -6,2 +6,4 @@ /* eslint-disable no-console, @typescript-eslint/ban-ts-comment */ | ||
const shouldUseNativeValidation = false; | ||
describe('yupResolver', () => { | ||
@@ -14,2 +16,3 @@ it('should return values from yupResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -28,3 +31,3 @@ | ||
mode: 'sync', | ||
})(validData, undefined, { fields }); | ||
})(validData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -39,2 +42,3 @@ expect(validateSyncSpy).toHaveBeenCalledTimes(1); | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -51,3 +55,3 @@ | ||
mode: 'sync', | ||
})(invalidData, undefined, { fields }); | ||
})(invalidData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -63,2 +67,3 @@ expect(validateSyncSpy).toHaveBeenCalledTimes(1); | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -76,2 +81,3 @@ | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}, | ||
@@ -99,2 +105,3 @@ ); | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -121,2 +128,3 @@ expect(validateSpy).toHaveBeenCalledTimes(1); | ||
fields, | ||
shouldUseNativeValidation, | ||
}, | ||
@@ -137,3 +145,3 @@ ); | ||
undefined, | ||
{ fields }, | ||
{ fields, shouldUseNativeValidation }, | ||
); | ||
@@ -156,3 +164,6 @@ expect(console.warn).not.toHaveBeenCalled(); | ||
), | ||
)({ name: '', email: '' }, undefined, { fields }); | ||
)({ name: '', email: '' }, undefined, { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -167,2 +178,3 @@ expect(result).toMatchSnapshot(); | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -169,0 +181,0 @@ |
@@ -64,4 +64,8 @@ import Yup from 'yup'; | ||
errors: toNestError( | ||
parseErrorSchema(e, options.criteriaMode === 'all'), | ||
options.fields, | ||
parseErrorSchema( | ||
e, | ||
!options.shouldUseNativeValidation && | ||
options.criteriaMode === 'all', | ||
), | ||
options, | ||
), | ||
@@ -68,0 +72,0 @@ }; |
@@ -1,2 +0,2 @@ | ||
var r=require("react-hook-form"),e=require("@hookform/resolvers"),o=function(e,o){for(var n={};e.length;){var s=e[0],t=s.code,i=s.message,u=s.path.join(".");if(!n[u])if("unionErrors"in s){var a=s.unionErrors[0].errors[0];n[u]={message:a.message,type:a.code}}else n[u]={message:i,type:t};if("unionErrors"in s&&s.unionErrors.forEach(function(r){return r.errors.forEach(function(r){return e.push(r)})}),o){var c=n[u].types,f=c&&c[s.code];n[u]=r.appendErrors(u,o,n,t,f?[].concat(f,s.message):s.message)}e.shift()}return n};exports.zodResolver=function(r,n,s){return void 0===s&&(s={}),function(t,i,u){try{return Promise.resolve(function(e,o){try{var i=Promise.resolve(r["sync"===s.mode?"parse":"parseAsync"](t,n)).then(function(r){return{errors:{},values:r}})}catch(r){return o(r)}return i&&i.then?i.then(void 0,o):i}(0,function(r){return{values:{},errors:r.isEmpty?{}:e.toNestError(o(r.errors,"all"===u.criteriaMode),u.fields)}}))}catch(r){return Promise.reject(r)}}}; | ||
var r=require("react-hook-form"),e=require("@hookform/resolvers"),o=function(e,o){for(var n={};e.length;){var s=e[0],t=s.code,i=s.message,a=s.path.join(".");if(!n[a])if("unionErrors"in s){var u=s.unionErrors[0].errors[0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:t};if("unionErrors"in s&&s.unionErrors.forEach(function(r){return r.errors.forEach(function(r){return e.push(r)})}),o){var c=n[a].types,f=c&&c[s.code];n[a]=r.appendErrors(a,o,n,t,f?[].concat(f,s.message):s.message)}e.shift()}return n};exports.zodResolver=function(r,n,s){return void 0===s&&(s={}),function(t,i,a){try{return Promise.resolve(function(e,o){try{var i=Promise.resolve(r["sync"===s.mode?"parse":"parseAsync"](t,n)).then(function(r){return{errors:{},values:r}})}catch(r){return o(r)}return i&&i.then?i.then(void 0,o):i}(0,function(r){return{values:{},errors:r.isEmpty?{}:e.toNestError(o(r.errors,!a.shouldUseNativeValidation&&"all"===a.criteriaMode),a)}}))}catch(r){return Promise.reject(r)}}}; | ||
//# sourceMappingURL=zod.js.map |
@@ -1,2 +0,2 @@ | ||
import{appendErrors as r}from"react-hook-form";import{toNestError as e}from"@hookform/resolvers";const s=(e,s)=>{const o={};for(;e.length;){const n=e[0],{code:t,message:a,path:c}=n,i=c.join(".");if(!o[i])if("unionErrors"in n){const r=n.unionErrors[0].errors[0];o[i]={message:r.message,type:r.code}}else o[i]={message:a,type:t};if("unionErrors"in n&&n.unionErrors.forEach(r=>r.errors.forEach(r=>e.push(r))),s){const e=o[i].types,a=e&&e[n.code];o[i]=r(i,s,o,t,a?[].concat(a,n.message):n.message)}e.shift()}return o},o=(r,o,n={})=>async(t,a,c)=>{try{return{errors:{},values:await r["sync"===n.mode?"parse":"parseAsync"](t,o)}}catch(r){return{values:{},errors:r.isEmpty?{}:e(s(r.errors,"all"===c.criteriaMode),c.fields)}}};export{o as zodResolver}; | ||
import{appendErrors as r}from"react-hook-form";import{toNestError as e}from"@hookform/resolvers";const o=(e,o)=>{const s={};for(;e.length;){const t=e[0],{code:n,message:a,path:i}=t,c=i.join(".");if(!s[c])if("unionErrors"in t){const r=t.unionErrors[0].errors[0];s[c]={message:r.message,type:r.code}}else s[c]={message:a,type:n};if("unionErrors"in t&&t.unionErrors.forEach(r=>r.errors.forEach(r=>e.push(r))),o){const e=s[c].types,a=e&&e[t.code];s[c]=r(c,o,s,n,a?[].concat(a,t.message):t.message)}e.shift()}return s},s=(r,s,t={})=>async(n,a,i)=>{try{return{errors:{},values:await r["sync"===t.mode?"parse":"parseAsync"](n,s)}}catch(r){return{values:{},errors:r.isEmpty?{}:e(o(r.errors,!i.shouldUseNativeValidation&&"all"===i.criteriaMode),i)}}};export{s as zodResolver}; | ||
//# sourceMappingURL=zod.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import{appendErrors as r}from"react-hook-form";import{toNestError as e}from"@hookform/resolvers";var o=function(e,o){for(var n={};e.length;){var s=e[0],t=s.code,i=s.message,a=s.path.join(".");if(!n[a])if("unionErrors"in s){var u=s.unionErrors[0].errors[0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:t};if("unionErrors"in s&&s.unionErrors.forEach(function(r){return r.errors.forEach(function(r){return e.push(r)})}),o){var c=n[a].types,f=c&&c[s.code];n[a]=r(a,o,n,t,f?[].concat(f,s.message):s.message)}e.shift()}return n},n=function(r,n,s){return void 0===s&&(s={}),function(t,i,a){try{return Promise.resolve(function(e,o){try{var i=Promise.resolve(r["sync"===s.mode?"parse":"parseAsync"](t,n)).then(function(r){return{errors:{},values:r}})}catch(r){return o(r)}return i&&i.then?i.then(void 0,o):i}(0,function(r){return{values:{},errors:r.isEmpty?{}:e(o(r.errors,"all"===a.criteriaMode),a.fields)}}))}catch(r){return Promise.reject(r)}}};export{n as zodResolver}; | ||
import{appendErrors as r}from"react-hook-form";import{toNestError as e}from"@hookform/resolvers";var o=function(e,o){for(var n={};e.length;){var s=e[0],t=s.code,i=s.message,a=s.path.join(".");if(!n[a])if("unionErrors"in s){var u=s.unionErrors[0].errors[0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:t};if("unionErrors"in s&&s.unionErrors.forEach(function(r){return r.errors.forEach(function(r){return e.push(r)})}),o){var c=n[a].types,f=c&&c[s.code];n[a]=r(a,o,n,t,f?[].concat(f,s.message):s.message)}e.shift()}return n},n=function(r,n,s){return void 0===s&&(s={}),function(t,i,a){try{return Promise.resolve(function(e,o){try{var i=Promise.resolve(r["sync"===s.mode?"parse":"parseAsync"](t,n)).then(function(r){return{errors:{},values:r}})}catch(r){return o(r)}return i&&i.then?i.then(void 0,o):i}(0,function(r){return{values:{},errors:r.isEmpty?{}:e(o(r.errors,!a.shouldUseNativeValidation&&"all"===a.criteriaMode),a)}}))}catch(r){return Promise.reject(r)}}};export{n as zodResolver}; | ||
//# sourceMappingURL=zod.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(r,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("react-hook-form"),require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","react-hook-form","@hookform/resolvers"],e):e((r||self).hookformResolversZod={},r.reactHookForm,r.hookformResolvers)}(this,function(r,e,o){var n=function(r,o){for(var n={};r.length;){var s=r[0],t=s.code,i=s.message,f=s.path.join(".");if(!n[f])if("unionErrors"in s){var u=s.unionErrors[0].errors[0];n[f]={message:u.message,type:u.code}}else n[f]={message:i,type:t};if("unionErrors"in s&&s.unionErrors.forEach(function(e){return e.errors.forEach(function(e){return r.push(e)})}),o){var a=n[f].types,c=a&&a[s.code];n[f]=e.appendErrors(f,o,n,t,c?[].concat(c,s.message):s.message)}r.shift()}return n};r.zodResolver=function(r,e,s){return void 0===s&&(s={}),function(t,i,f){try{return Promise.resolve(function(o,n){try{var i=Promise.resolve(r["sync"===s.mode?"parse":"parseAsync"](t,e)).then(function(r){return{errors:{},values:r}})}catch(r){return n(r)}return i&&i.then?i.then(void 0,n):i}(0,function(r){return{values:{},errors:r.isEmpty?{}:o.toNestError(n(r.errors,"all"===f.criteriaMode),f.fields)}}))}catch(r){return Promise.reject(r)}}}}); | ||
!function(r,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("react-hook-form"),require("@hookform/resolvers")):"function"==typeof define&&define.amd?define(["exports","react-hook-form","@hookform/resolvers"],e):e((r||self).hookformResolversZod={},r.reactHookForm,r.hookformResolvers)}(this,function(r,e,o){var n=function(r,o){for(var n={};r.length;){var s=r[0],t=s.code,i=s.message,a=s.path.join(".");if(!n[a])if("unionErrors"in s){var f=s.unionErrors[0].errors[0];n[a]={message:f.message,type:f.code}}else n[a]={message:i,type:t};if("unionErrors"in s&&s.unionErrors.forEach(function(e){return e.errors.forEach(function(e){return r.push(e)})}),o){var u=n[a].types,c=u&&u[s.code];n[a]=e.appendErrors(a,o,n,t,c?[].concat(c,s.message):s.message)}r.shift()}return n};r.zodResolver=function(r,e,s){return void 0===s&&(s={}),function(t,i,a){try{return Promise.resolve(function(o,n){try{var i=Promise.resolve(r["sync"===s.mode?"parse":"parseAsync"](t,e)).then(function(r){return{errors:{},values:r}})}catch(r){return n(r)}return i&&i.then?i.then(void 0,n):i}(0,function(r){return{values:{},errors:r.isEmpty?{}:o.toNestError(n(r.errors,!a.shouldUseNativeValidation&&"all"===a.criteriaMode),a)}}))}catch(r){return Promise.reject(r)}}}}); | ||
//# sourceMappingURL=zod.umd.js.map |
import { zodResolver } from '..'; | ||
import { schema, validData, invalidData, fields } from './__fixtures__/data'; | ||
const shouldUseNativeValidation = false; | ||
describe('zodResolver', () => { | ||
@@ -10,2 +12,3 @@ it('should return values from zodResolver when validation pass', async () => { | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -23,3 +26,3 @@ | ||
mode: 'sync', | ||
})(validData, undefined, { fields }); | ||
})(validData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -34,2 +37,3 @@ expect(parseSpy).toHaveBeenCalledTimes(1); | ||
fields, | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -46,3 +50,3 @@ | ||
mode: 'sync', | ||
})(invalidData, undefined, { fields }); | ||
})(invalidData, undefined, { fields, shouldUseNativeValidation }); | ||
@@ -58,2 +62,3 @@ expect(parseSpy).toHaveBeenCalledTimes(1); | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}); | ||
@@ -71,2 +76,3 @@ | ||
criteriaMode: 'all', | ||
shouldUseNativeValidation, | ||
}, | ||
@@ -73,0 +79,0 @@ ); |
@@ -72,4 +72,8 @@ import { appendErrors, FieldError } from 'react-hook-form'; | ||
: toNestError( | ||
parseErrorSchema(error.errors, options.criteriaMode === 'all'), | ||
options.fields, | ||
parseErrorSchema( | ||
error.errors, | ||
!options.shouldUseNativeValidation && | ||
options.criteriaMode === 'all', | ||
), | ||
options, | ||
), | ||
@@ -76,0 +80,0 @@ }; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
330007
206
3197