@hookform/resolvers 2.9.0 → 2.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ajv/dist/ajv.js +1 -1
- package/ajv/dist/ajv.js.map +1 -1
- package/ajv/dist/ajv.mjs +1 -1
- package/ajv/dist/ajv.modern.js +1 -1
- package/ajv/dist/ajv.modern.js.map +1 -1
- package/ajv/dist/ajv.module.js +1 -1
- package/ajv/dist/ajv.module.js.map +1 -1
- package/ajv/dist/ajv.umd.js +1 -1
- package/ajv/dist/ajv.umd.js.map +1 -1
- package/ajv/dist/types.d.ts +2 -2
- package/ajv/src/__tests__/__fixtures__/data.ts +12 -2
- package/ajv/src/__tests__/__snapshots__/ajv.ts.snap +34 -0
- package/ajv/src/ajv.ts +1 -1
- package/ajv/src/types.ts +1 -2
- package/class-validator/dist/types.d.ts +2 -2
- package/class-validator/src/types.ts +1 -2
- package/computed-types/dist/types.d.ts +2 -2
- package/computed-types/src/types.ts +1 -2
- package/dist/resolvers.js.map +1 -1
- package/dist/resolvers.mjs.map +1 -1
- package/dist/resolvers.module.js.map +1 -1
- package/dist/resolvers.umd.js.map +1 -1
- package/dist/toNestError.d.ts +2 -2
- package/dist/validateFieldsNatively.d.ts +2 -2
- package/io-ts/dist/io-ts.js +1 -1
- package/io-ts/dist/io-ts.js.map +1 -1
- package/io-ts/dist/io-ts.mjs +1 -1
- package/io-ts/dist/io-ts.modern.js +1 -1
- package/io-ts/dist/io-ts.modern.js.map +1 -1
- package/io-ts/dist/io-ts.module.js +1 -1
- package/io-ts/dist/io-ts.module.js.map +1 -1
- package/io-ts/dist/io-ts.umd.js +1 -1
- package/io-ts/dist/io-ts.umd.js.map +1 -1
- package/io-ts/dist/types.d.ts +2 -2
- package/io-ts/src/io-ts.ts +1 -1
- package/io-ts/src/types.ts +1 -2
- package/joi/dist/types.d.ts +2 -2
- package/joi/src/types.ts +1 -2
- package/nope/dist/nope.js.map +1 -1
- package/nope/dist/nope.modern.js.map +1 -1
- package/nope/dist/nope.module.js.map +1 -1
- package/nope/dist/nope.umd.js.map +1 -1
- package/nope/dist/types.d.ts +2 -2
- package/nope/src/nope.ts +2 -2
- package/nope/src/types.ts +1 -2
- package/package.json +2 -2
- package/superstruct/dist/types.d.ts +2 -2
- package/superstruct/src/types.ts +2 -3
- package/typanion/dist/typanion.js.map +1 -1
- package/typanion/dist/typanion.modern.js.map +1 -1
- package/typanion/dist/typanion.module.js.map +1 -1
- package/typanion/dist/typanion.umd.js.map +1 -1
- package/typanion/dist/types.d.ts +2 -2
- package/typanion/src/typanion.ts +2 -2
- package/typanion/src/types.ts +1 -2
- package/vest/src/types.ts +1 -2
- package/yup/dist/types.d.ts +2 -2
- package/yup/src/types.ts +1 -2
- package/zod/dist/types.d.ts +2 -2
- package/zod/src/types.ts +1 -2
package/io-ts/src/types.ts
CHANGED
|
@@ -4,13 +4,12 @@ import {
|
|
|
4
4
|
FieldValues,
|
|
5
5
|
ResolverOptions,
|
|
6
6
|
ResolverResult,
|
|
7
|
-
UnpackNestedValue,
|
|
8
7
|
} from 'react-hook-form';
|
|
9
8
|
|
|
10
9
|
export type Resolver = <T, TFieldValues, TContext>(
|
|
11
10
|
codec: t.Decoder<FieldValues, T>,
|
|
12
11
|
) => (
|
|
13
|
-
values:
|
|
12
|
+
values: TFieldValues,
|
|
14
13
|
_context: TContext | undefined,
|
|
15
14
|
options: ResolverOptions<TFieldValues>,
|
|
16
15
|
) => ResolverResult<TFieldValues>;
|
package/joi/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FieldValues, ResolverOptions, ResolverResult
|
|
1
|
+
import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form';
|
|
2
2
|
import type { AsyncValidationOptions, Schema } from 'joi';
|
|
3
3
|
export declare type Resolver = <T extends Schema>(schema: T, schemaOptions?: AsyncValidationOptions, factoryOptions?: {
|
|
4
4
|
mode?: 'async' | 'sync';
|
|
5
|
-
}) => <TFieldValues extends FieldValues, TContext>(values:
|
|
5
|
+
}) => <TFieldValues extends FieldValues, TContext>(values: TFieldValues, context: TContext | undefined, options: ResolverOptions<TFieldValues>) => Promise<ResolverResult<TFieldValues>>;
|
package/joi/src/types.ts
CHANGED
|
@@ -2,7 +2,6 @@ import {
|
|
|
2
2
|
FieldValues,
|
|
3
3
|
ResolverOptions,
|
|
4
4
|
ResolverResult,
|
|
5
|
-
UnpackNestedValue,
|
|
6
5
|
} from 'react-hook-form';
|
|
7
6
|
import type { AsyncValidationOptions, Schema } from 'joi';
|
|
8
7
|
|
|
@@ -11,7 +10,7 @@ export type Resolver = <T extends Schema>(
|
|
|
11
10
|
schemaOptions?: AsyncValidationOptions,
|
|
12
11
|
factoryOptions?: { mode?: 'async' | 'sync' },
|
|
13
12
|
) => <TFieldValues extends FieldValues, TContext>(
|
|
14
|
-
values:
|
|
13
|
+
values: TFieldValues,
|
|
15
14
|
context: TContext | undefined,
|
|
16
15
|
options: ResolverOptions<TFieldValues>,
|
|
17
16
|
) => Promise<ResolverResult<TFieldValues>>;
|
package/nope/dist/nope.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nope.js","sources":["../src/nope.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"nope.js","sources":["../src/nope.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { ShapeErrors } from 'nope-validator/lib/cjs/types';\nimport type { Resolver } from './types';\n\nconst parseErrors = (\n errors: ShapeErrors,\n parsedErrors: FieldErrors = {},\n path = '',\n) => {\n return Object.keys(errors).reduce((acc, key) => {\n const _path = path ? `${path}.${key}` : key;\n const error = errors[key];\n\n if (typeof error === 'string') {\n acc[_path] = {\n message: error,\n } as FieldError;\n } else {\n parseErrors(error, acc, _path);\n }\n\n return acc;\n }, parsedErrors);\n};\n\nexport const nopeResolver: Resolver =\n (\n schema,\n schemaOptions = {\n abortEarly: false,\n },\n ) =>\n (values, context, options) => {\n const result = schema.validate(values, context, schemaOptions) as\n | ShapeErrors\n | undefined;\n\n if (result) {\n return { values: {}, errors: toNestError(parseErrors(result), options) };\n }\n\n options.shouldUseNativeValidation && validateFieldsNatively({}, options);\n\n return { values, errors: {} };\n };\n"],"names":["parseErrors","errors","parsedErrors","path","Object","keys","reduce","acc","key","_path","error","message","schema","schemaOptions","abortEarly","values","context","options","result","validate","toNestError","shouldUseNativeValidation","validateFieldsNatively"],"mappings":"qCAKMA,EAAc,SAAdA,EACJC,EACAC,EACAC,GAEA,gBAHAD,IAAAA,EAA4B,aAC5BC,IAAAA,EAAO,IAEAC,OAAOC,KAAKJ,GAAQK,OAAO,SAACC,EAAKC,GACtC,IAAMC,EAAQN,EAAUA,MAAQK,EAAQA,EAClCE,EAAQT,EAAOO,GAUrB,MARqB,iBAAVE,EACTH,EAAIE,GAAS,CACXE,QAASD,GAGXV,EAAYU,EAAOH,EAAKE,GAGnBF,GACNL,yBAIH,SACEU,EACAC,mBAAAA,IAAAA,EAAgB,CACdC,YAAY,aAGfC,EAAQC,EAASC,GAChB,IAAMC,EAASN,EAAOO,SAASJ,EAAQC,EAASH,GAIhD,OAAIK,EACK,CAAEH,OAAQ,GAAId,OAAQmB,cAAYpB,EAAYkB,GAASD,KAGhEA,EAAQI,2BAA6BC,yBAAuB,GAAIL,GAEzD,CAAEF,OAAAA,EAAQd,OAAQ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nope.modern.js","sources":["../src/nope.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"nope.modern.js","sources":["../src/nope.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { ShapeErrors } from 'nope-validator/lib/cjs/types';\nimport type { Resolver } from './types';\n\nconst parseErrors = (\n errors: ShapeErrors,\n parsedErrors: FieldErrors = {},\n path = '',\n) => {\n return Object.keys(errors).reduce((acc, key) => {\n const _path = path ? `${path}.${key}` : key;\n const error = errors[key];\n\n if (typeof error === 'string') {\n acc[_path] = {\n message: error,\n } as FieldError;\n } else {\n parseErrors(error, acc, _path);\n }\n\n return acc;\n }, parsedErrors);\n};\n\nexport const nopeResolver: Resolver =\n (\n schema,\n schemaOptions = {\n abortEarly: false,\n },\n ) =>\n (values, context, options) => {\n const result = schema.validate(values, context, schemaOptions) as\n | ShapeErrors\n | undefined;\n\n if (result) {\n return { values: {}, errors: toNestError(parseErrors(result), options) };\n }\n\n options.shouldUseNativeValidation && validateFieldsNatively({}, options);\n\n return { values, errors: {} };\n };\n"],"names":["parseErrors","errors","parsedErrors","path","Object","keys","reduce","acc","key","_path","error","message","nopeResolver","schema","schemaOptions","abortEarly","values","context","options","result","validate","toNestError","shouldUseNativeValidation","validateFieldsNatively"],"mappings":"8EAKA,MAAMA,EAAc,CAClBC,EACAC,EAA4B,GAC5BC,EAAO,KAEAC,OAAOC,KAAKJ,GAAQK,OAAO,CAACC,EAAKC,KACtC,MAAMC,EAAQN,KAAUA,KAAQK,IAAQA,EAClCE,EAAQT,EAAOO,GAUrB,MARqB,iBAAVE,EACTH,EAAIE,GAAS,CACXE,QAASD,GAGXV,EAAYU,EAAOH,EAAKE,GAGnBF,GACNL,GAGQU,EACX,CACEC,EACAC,EAAgB,CACdC,YAAY,KAGhB,CAACC,EAAQC,EAASC,KAChB,MAAMC,EAASN,EAAOO,SAASJ,EAAQC,EAASH,GAIhD,OAAIK,EACK,CAAEH,OAAQ,GAAIf,OAAQoB,EAAYrB,EAAYmB,GAASD,KAGhEA,EAAQI,2BAA6BC,EAAuB,GAAIL,GAEzD,CAAEF,OAAAA,EAAQf,OAAQ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nope.module.js","sources":["../src/nope.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"nope.module.js","sources":["../src/nope.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { ShapeErrors } from 'nope-validator/lib/cjs/types';\nimport type { Resolver } from './types';\n\nconst parseErrors = (\n errors: ShapeErrors,\n parsedErrors: FieldErrors = {},\n path = '',\n) => {\n return Object.keys(errors).reduce((acc, key) => {\n const _path = path ? `${path}.${key}` : key;\n const error = errors[key];\n\n if (typeof error === 'string') {\n acc[_path] = {\n message: error,\n } as FieldError;\n } else {\n parseErrors(error, acc, _path);\n }\n\n return acc;\n }, parsedErrors);\n};\n\nexport const nopeResolver: Resolver =\n (\n schema,\n schemaOptions = {\n abortEarly: false,\n },\n ) =>\n (values, context, options) => {\n const result = schema.validate(values, context, schemaOptions) as\n | ShapeErrors\n | undefined;\n\n if (result) {\n return { values: {}, errors: toNestError(parseErrors(result), options) };\n }\n\n options.shouldUseNativeValidation && validateFieldsNatively({}, options);\n\n return { values, errors: {} };\n };\n"],"names":["parseErrors","errors","parsedErrors","path","Object","keys","reduce","acc","key","_path","error","message","nopeResolver","schema","schemaOptions","abortEarly","values","context","options","result","validate","toNestError","shouldUseNativeValidation","validateFieldsNatively"],"mappings":"8EAKA,IAAMA,EAAc,SAAdA,EACJC,EACAC,EACAC,GAEA,gBAHAD,IAAAA,EAA4B,aAC5BC,IAAAA,EAAO,IAEAC,OAAOC,KAAKJ,GAAQK,OAAO,SAACC,EAAKC,GACtC,IAAMC,EAAQN,EAAUA,MAAQK,EAAQA,EAClCE,EAAQT,EAAOO,GAUrB,MARqB,iBAAVE,EACTH,EAAIE,GAAS,CACXE,QAASD,GAGXV,EAAYU,EAAOH,EAAKE,GAGnBF,GACNL,IAGQU,EACX,SACEC,EACAC,mBAAAA,IAAAA,EAAgB,CACdC,YAAY,aAGfC,EAAQC,EAASC,GAChB,IAAMC,EAASN,EAAOO,SAASJ,EAAQC,EAASH,GAIhD,OAAIK,EACK,CAAEH,OAAQ,GAAIf,OAAQoB,EAAYrB,EAAYmB,GAASD,KAGhEA,EAAQI,2BAA6BC,EAAuB,GAAIL,GAEzD,CAAEF,OAAAA,EAAQf,OAAQ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nope.umd.js","sources":["../src/nope.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"nope.umd.js","sources":["../src/nope.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { ShapeErrors } from 'nope-validator/lib/cjs/types';\nimport type { Resolver } from './types';\n\nconst parseErrors = (\n errors: ShapeErrors,\n parsedErrors: FieldErrors = {},\n path = '',\n) => {\n return Object.keys(errors).reduce((acc, key) => {\n const _path = path ? `${path}.${key}` : key;\n const error = errors[key];\n\n if (typeof error === 'string') {\n acc[_path] = {\n message: error,\n } as FieldError;\n } else {\n parseErrors(error, acc, _path);\n }\n\n return acc;\n }, parsedErrors);\n};\n\nexport const nopeResolver: Resolver =\n (\n schema,\n schemaOptions = {\n abortEarly: false,\n },\n ) =>\n (values, context, options) => {\n const result = schema.validate(values, context, schemaOptions) as\n | ShapeErrors\n | undefined;\n\n if (result) {\n return { values: {}, errors: toNestError(parseErrors(result), options) };\n }\n\n options.shouldUseNativeValidation && validateFieldsNatively({}, options);\n\n return { values, errors: {} };\n };\n"],"names":["parseErrors","errors","parsedErrors","path","Object","keys","reduce","acc","key","_path","error","message","schema","schemaOptions","abortEarly","values","context","options","result","validate","toNestError","shouldUseNativeValidation","validateFieldsNatively"],"mappings":"0TAKA,IAAMA,EAAc,SAAdA,EACJC,EACAC,EACAC,GAEA,gBAHAD,IAAAA,EAA4B,aAC5BC,IAAAA,EAAO,IAEAC,OAAOC,KAAKJ,GAAQK,OAAO,SAACC,EAAKC,GACtC,IAAMC,EAAQN,EAAUA,MAAQK,EAAQA,EAClCE,EAAQT,EAAOO,GAUrB,MARqB,iBAAVE,EACTH,EAAIE,GAAS,CACXE,QAASD,GAGXV,EAAYU,EAAOH,EAAKE,GAGnBF,GACNL,mBAIH,SACEU,EACAC,mBAAAA,IAAAA,EAAgB,CACdC,YAAY,aAGfC,EAAQC,EAASC,GAChB,IAAMC,EAASN,EAAOO,SAASJ,EAAQC,EAASH,GAIhD,OAAIK,EACK,CAAEH,OAAQ,GAAId,OAAQmB,cAAYpB,EAAYkB,GAASD,KAGhEA,EAAQI,2BAA6BC,yBAAuB,GAAIL,GAEzD,CAAEF,OAAAA,EAAQd,OAAQ"}
|
package/nope/dist/types.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { FieldValues, ResolverOptions, ResolverResult
|
|
1
|
+
import type { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form';
|
|
2
2
|
import type { NopeObject } from 'nope-validator/lib/cjs/NopeObject';
|
|
3
3
|
declare type ValidateOptions = Parameters<NopeObject['validate']>[2];
|
|
4
4
|
declare type Context = Parameters<NopeObject['validate']>[1];
|
|
5
5
|
export declare type Resolver = <T extends NopeObject>(schema: T, schemaOptions?: ValidateOptions, resolverOptions?: {
|
|
6
6
|
mode?: 'async' | 'sync';
|
|
7
7
|
rawValues?: boolean;
|
|
8
|
-
}) => <TFieldValues extends FieldValues, TContext extends Context>(values:
|
|
8
|
+
}) => <TFieldValues extends FieldValues, TContext extends Context>(values: TFieldValues, context: TContext | undefined, options: ResolverOptions<TFieldValues>) => ResolverResult<TFieldValues>;
|
|
9
9
|
export {};
|
package/nope/src/nope.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FieldErrors
|
|
1
|
+
import type {FieldError, FieldErrors} from 'react-hook-form';
|
|
2
2
|
import { toNestError, validateFieldsNatively } from '@hookform/resolvers';
|
|
3
3
|
import type { ShapeErrors } from 'nope-validator/lib/cjs/types';
|
|
4
4
|
import type { Resolver } from './types';
|
|
@@ -15,7 +15,7 @@ const parseErrors = (
|
|
|
15
15
|
if (typeof error === 'string') {
|
|
16
16
|
acc[_path] = {
|
|
17
17
|
message: error,
|
|
18
|
-
};
|
|
18
|
+
} as FieldError;
|
|
19
19
|
} else {
|
|
20
20
|
parseErrors(error, acc, _path);
|
|
21
21
|
}
|
package/nope/src/types.ts
CHANGED
|
@@ -2,7 +2,6 @@ import type {
|
|
|
2
2
|
FieldValues,
|
|
3
3
|
ResolverOptions,
|
|
4
4
|
ResolverResult,
|
|
5
|
-
UnpackNestedValue,
|
|
6
5
|
} from 'react-hook-form';
|
|
7
6
|
import type { NopeObject } from 'nope-validator/lib/cjs/NopeObject';
|
|
8
7
|
|
|
@@ -14,7 +13,7 @@ export type Resolver = <T extends NopeObject>(
|
|
|
14
13
|
schemaOptions?: ValidateOptions,
|
|
15
14
|
resolverOptions?: { mode?: 'async' | 'sync', rawValues?: boolean; },
|
|
16
15
|
) => <TFieldValues extends FieldValues, TContext extends Context>(
|
|
17
|
-
values:
|
|
16
|
+
values: TFieldValues,
|
|
18
17
|
context: TContext | undefined,
|
|
19
18
|
options: ResolverOptions<TFieldValues>,
|
|
20
19
|
) => ResolverResult<TFieldValues>;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hookform/resolvers",
|
|
3
3
|
"amdName": "hookformResolvers",
|
|
4
|
-
"version": "2.9.
|
|
4
|
+
"version": "2.9.3",
|
|
5
5
|
"description": "React Hook Form validation resolvers: Yup, Joi, Superstruct, Zod, Vest, Class Validator, io-ts, Nope, computed-types and Typanion",
|
|
6
6
|
"main": "dist/resolvers.js",
|
|
7
7
|
"module": "dist/resolvers.module.js",
|
|
@@ -205,7 +205,7 @@
|
|
|
205
205
|
"prettier": "^2.5.1",
|
|
206
206
|
"react": "^17.0.2",
|
|
207
207
|
"react-dom": "^17.0.2",
|
|
208
|
-
"react-hook-form": "7.
|
|
208
|
+
"react-hook-form": "^7.33.0",
|
|
209
209
|
"reflect-metadata": "^0.1.13",
|
|
210
210
|
"superstruct": "^0.15.3",
|
|
211
211
|
"ts-jest": "^27.1.3",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FieldValues, ResolverOptions, ResolverResult
|
|
1
|
+
import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form';
|
|
2
2
|
import { validate, Struct } from 'superstruct';
|
|
3
3
|
declare type Options = Parameters<typeof validate>[2];
|
|
4
|
-
export declare type Resolver = <T extends Struct<any, any>>(schema: T,
|
|
4
|
+
export declare type Resolver = <T extends Struct<any, any>>(schema: T, options?: Options) => <TFieldValues extends FieldValues, TContext>(values: TFieldValues, context: TContext | undefined, options: ResolverOptions<TFieldValues>) => ResolverResult<TFieldValues>;
|
|
5
5
|
export {};
|
package/superstruct/src/types.ts
CHANGED
|
@@ -2,7 +2,6 @@ import {
|
|
|
2
2
|
FieldValues,
|
|
3
3
|
ResolverOptions,
|
|
4
4
|
ResolverResult,
|
|
5
|
-
UnpackNestedValue,
|
|
6
5
|
} from 'react-hook-form';
|
|
7
6
|
import { validate, Struct } from 'superstruct';
|
|
8
7
|
|
|
@@ -10,9 +9,9 @@ type Options = Parameters<typeof validate>[2];
|
|
|
10
9
|
|
|
11
10
|
export type Resolver = <T extends Struct<any, any>>(
|
|
12
11
|
schema: T,
|
|
13
|
-
|
|
12
|
+
options?: Options,
|
|
14
13
|
) => <TFieldValues extends FieldValues, TContext>(
|
|
15
|
-
values:
|
|
14
|
+
values: TFieldValues,
|
|
16
15
|
context: TContext | undefined,
|
|
17
16
|
options: ResolverOptions<TFieldValues>,
|
|
18
17
|
) => ResolverResult<TFieldValues>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typanion.js","sources":["../src/typanion.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"typanion.js","sources":["../src/typanion.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { Resolver } from './types';\n\nconst parseErrors = (errors: string[], parsedErrors: FieldErrors = {}) => {\n return errors.reduce((acc, error) => {\n const e = error.split(':');\n\n acc[e[0].slice(1)] = {\n message: e[1].trim(),\n } as FieldError;\n\n return acc;\n }, parsedErrors);\n};\n\nexport const typanionResolver: Resolver =\n (validator, validatorOptions = {}) =>\n (values, _, options) => {\n const rawErrors: string[] = [];\n const isValid = validator(\n values,\n Object.assign(\n {},\n {\n errors: rawErrors,\n },\n validatorOptions,\n ),\n );\n const parsedErrors = parseErrors(rawErrors);\n\n if (isValid) {\n options.shouldUseNativeValidation &&\n validateFieldsNatively(parsedErrors, options);\n\n return { values, errors: {} };\n }\n\n return { values: {}, errors: toNestError(parsedErrors, options) };\n };\n"],"names":["validator","validatorOptions","values","_","options","rawErrors","isValid","Object","assign","errors","parsedErrors","reduce","acc","error","e","split","slice","message","trim","parseErrors","shouldUseNativeValidation","validateFieldsNatively","toNestError"],"mappings":"8DAiBE,SAACA,EAAWC,mBAAAA,IAAAA,EAAmB,aAC9BC,EAAQC,EAAGC,GACV,IAAMC,EAAsB,GACtBC,EAAUN,EACdE,EACAK,OAAOC,OACL,GACA,CACEC,OAAQJ,GAEVJ,IAGES,EA1BU,SAACD,EAAkBC,GACrC,gBADqCA,IAAAA,EAA4B,IAC1DD,EAAOE,OAAO,SAACC,EAAKC,GACzB,IAAMC,EAAID,EAAME,MAAM,KAMtB,OAJAH,EAAIE,EAAE,GAAGE,MAAM,IAAM,CACnBC,QAASH,EAAE,GAAGI,QAGTN,GACNF,GAiBoBS,CAAYd,GAEjC,OAAIC,GACFF,EAAQgB,2BACNC,yBAAuBX,EAAcN,GAEhC,CAAEF,OAAAA,EAAQO,OAAQ,KAGpB,CAAEP,OAAQ,GAAIO,OAAQa,cAAYZ,EAAcN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typanion.modern.js","sources":["../src/typanion.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"typanion.modern.js","sources":["../src/typanion.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { Resolver } from './types';\n\nconst parseErrors = (errors: string[], parsedErrors: FieldErrors = {}) => {\n return errors.reduce((acc, error) => {\n const e = error.split(':');\n\n acc[e[0].slice(1)] = {\n message: e[1].trim(),\n } as FieldError;\n\n return acc;\n }, parsedErrors);\n};\n\nexport const typanionResolver: Resolver =\n (validator, validatorOptions = {}) =>\n (values, _, options) => {\n const rawErrors: string[] = [];\n const isValid = validator(\n values,\n Object.assign(\n {},\n {\n errors: rawErrors,\n },\n validatorOptions,\n ),\n );\n const parsedErrors = parseErrors(rawErrors);\n\n if (isValid) {\n options.shouldUseNativeValidation &&\n validateFieldsNatively(parsedErrors, options);\n\n return { values, errors: {} };\n }\n\n return { values: {}, errors: toNestError(parsedErrors, options) };\n };\n"],"names":["typanionResolver","validator","validatorOptions","values","_","options","rawErrors","isValid","Object","assign","errors","parsedErrors","reduce","acc","error","e","split","slice","message","trim","parseErrors","shouldUseNativeValidation","validateFieldsNatively","toNestError"],"mappings":"8EAIA,MAYaA,EACX,CAACC,EAAWC,EAAmB,KAC/B,CAACC,EAAQC,EAAGC,KACV,MAAMC,EAAsB,GACtBC,EAAUN,EACdE,EACAK,OAAOC,OACL,GACA,CACEC,OAAQJ,GAEVJ,IAGES,EA1BU,EAACD,EAAkBC,EAA4B,KAC1DD,EAAOE,OAAO,CAACC,EAAKC,KACzB,MAAMC,EAAID,EAAME,MAAM,KAMtB,OAJAH,EAAIE,EAAE,GAAGE,MAAM,IAAM,CACnBC,QAASH,EAAE,GAAGI,QAGTN,GACNF,GAiBoBS,CAAYd,GAEjC,OAAIC,GACFF,EAAQgB,2BACNC,EAAuBX,EAAcN,GAEhC,CAAEF,OAAAA,EAAQO,OAAQ,KAGpB,CAAEP,OAAQ,GAAIO,OAAQa,EAAYZ,EAAcN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typanion.module.js","sources":["../src/typanion.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"typanion.module.js","sources":["../src/typanion.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { Resolver } from './types';\n\nconst parseErrors = (errors: string[], parsedErrors: FieldErrors = {}) => {\n return errors.reduce((acc, error) => {\n const e = error.split(':');\n\n acc[e[0].slice(1)] = {\n message: e[1].trim(),\n } as FieldError;\n\n return acc;\n }, parsedErrors);\n};\n\nexport const typanionResolver: Resolver =\n (validator, validatorOptions = {}) =>\n (values, _, options) => {\n const rawErrors: string[] = [];\n const isValid = validator(\n values,\n Object.assign(\n {},\n {\n errors: rawErrors,\n },\n validatorOptions,\n ),\n );\n const parsedErrors = parseErrors(rawErrors);\n\n if (isValid) {\n options.shouldUseNativeValidation &&\n validateFieldsNatively(parsedErrors, options);\n\n return { values, errors: {} };\n }\n\n return { values: {}, errors: toNestError(parsedErrors, options) };\n };\n"],"names":["typanionResolver","validator","validatorOptions","values","_","options","rawErrors","isValid","Object","assign","errors","parsedErrors","reduce","acc","error","e","split","slice","message","trim","parseErrors","shouldUseNativeValidation","validateFieldsNatively","toNestError"],"mappings":"8EAIA,IAYaA,EACX,SAACC,EAAWC,mBAAAA,IAAAA,EAAmB,aAC9BC,EAAQC,EAAGC,GACV,IAAMC,EAAsB,GACtBC,EAAUN,EACdE,EACAK,OAAOC,OACL,GACA,CACEC,OAAQJ,GAEVJ,IAGES,EA1BU,SAACD,EAAkBC,GACrC,gBADqCA,IAAAA,EAA4B,IAC1DD,EAAOE,OAAO,SAACC,EAAKC,GACzB,IAAMC,EAAID,EAAME,MAAM,KAMtB,OAJAH,EAAIE,EAAE,GAAGE,MAAM,IAAM,CACnBC,QAASH,EAAE,GAAGI,QAGTN,GACNF,GAiBoBS,CAAYd,GAEjC,OAAIC,GACFF,EAAQgB,2BACNC,EAAuBX,EAAcN,GAEhC,CAAEF,OAAAA,EAAQO,OAAQ,KAGpB,CAAEP,OAAQ,GAAIO,OAAQa,EAAYZ,EAAcN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typanion.umd.js","sources":["../src/typanion.ts"],"sourcesContent":["import type { FieldErrors
|
|
1
|
+
{"version":3,"file":"typanion.umd.js","sources":["../src/typanion.ts"],"sourcesContent":["import type {FieldError, FieldErrors} from 'react-hook-form';\nimport { toNestError, validateFieldsNatively } from '@hookform/resolvers';\nimport type { Resolver } from './types';\n\nconst parseErrors = (errors: string[], parsedErrors: FieldErrors = {}) => {\n return errors.reduce((acc, error) => {\n const e = error.split(':');\n\n acc[e[0].slice(1)] = {\n message: e[1].trim(),\n } as FieldError;\n\n return acc;\n }, parsedErrors);\n};\n\nexport const typanionResolver: Resolver =\n (validator, validatorOptions = {}) =>\n (values, _, options) => {\n const rawErrors: string[] = [];\n const isValid = validator(\n values,\n Object.assign(\n {},\n {\n errors: rawErrors,\n },\n validatorOptions,\n ),\n );\n const parsedErrors = parseErrors(rawErrors);\n\n if (isValid) {\n options.shouldUseNativeValidation &&\n validateFieldsNatively(parsedErrors, options);\n\n return { values, errors: {} };\n }\n\n return { values: {}, errors: toNestError(parsedErrors, options) };\n };\n"],"names":["validator","validatorOptions","values","_","options","rawErrors","isValid","Object","assign","errors","parsedErrors","reduce","acc","error","e","split","slice","message","trim","parseErrors","shouldUseNativeValidation","validateFieldsNatively","toNestError"],"mappings":"iVAiBE,SAACA,EAAWC,mBAAAA,IAAAA,EAAmB,aAC9BC,EAAQC,EAAGC,GACV,IAAMC,EAAsB,GACtBC,EAAUN,EACdE,EACAK,OAAOC,OACL,GACA,CACEC,OAAQJ,GAEVJ,IAGES,EA1BU,SAACD,EAAkBC,GACrC,gBADqCA,IAAAA,EAA4B,IAC1DD,EAAOE,OAAO,SAACC,EAAKC,GACzB,IAAMC,EAAID,EAAME,MAAM,KAMtB,OAJAH,EAAIE,EAAE,GAAGE,MAAM,IAAM,CACnBC,QAASH,EAAE,GAAGI,QAGTN,GACNF,GAiBoBS,CAAYd,GAEjC,OAAIC,GACFF,EAAQgB,2BACNC,yBAAuBX,EAAcN,GAEhC,CAAEF,OAAAA,EAAQO,OAAQ,KAGpB,CAAEP,OAAQ,GAAIO,OAAQa,cAAYZ,EAAcN"}
|
package/typanion/dist/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { FieldValues, ResolverOptions, ResolverResult
|
|
1
|
+
import type { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form';
|
|
2
2
|
import { ValidationState, AnyStrictValidator } from 'typanion';
|
|
3
3
|
declare type ValidateOptions = Pick<ValidationState, 'coercions' | 'coercion'>;
|
|
4
|
-
declare type RHFResolver = <TFieldValues extends FieldValues, TContext>(values:
|
|
4
|
+
declare type RHFResolver = <TFieldValues extends FieldValues, TContext>(values: TFieldValues, context: TContext | undefined, options: ResolverOptions<TFieldValues>) => ResolverResult<TFieldValues>;
|
|
5
5
|
export declare type Resolver = <UnknownValidator extends AnyStrictValidator>(validator: UnknownValidator, validatorOptions?: ValidateOptions, resolverOptions?: {
|
|
6
6
|
mode?: 'async' | 'sync';
|
|
7
7
|
rawValues?: boolean;
|
package/typanion/src/typanion.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FieldErrors
|
|
1
|
+
import type {FieldError, FieldErrors} from 'react-hook-form';
|
|
2
2
|
import { toNestError, validateFieldsNatively } from '@hookform/resolvers';
|
|
3
3
|
import type { Resolver } from './types';
|
|
4
4
|
|
|
@@ -8,7 +8,7 @@ const parseErrors = (errors: string[], parsedErrors: FieldErrors = {}) => {
|
|
|
8
8
|
|
|
9
9
|
acc[e[0].slice(1)] = {
|
|
10
10
|
message: e[1].trim(),
|
|
11
|
-
};
|
|
11
|
+
} as FieldError;
|
|
12
12
|
|
|
13
13
|
return acc;
|
|
14
14
|
}, parsedErrors);
|
package/typanion/src/types.ts
CHANGED
|
@@ -2,14 +2,13 @@ import type {
|
|
|
2
2
|
FieldValues,
|
|
3
3
|
ResolverOptions,
|
|
4
4
|
ResolverResult,
|
|
5
|
-
UnpackNestedValue,
|
|
6
5
|
} from 'react-hook-form';
|
|
7
6
|
import { ValidationState, AnyStrictValidator} from 'typanion'
|
|
8
7
|
|
|
9
8
|
type ValidateOptions = Pick<ValidationState, 'coercions' | 'coercion'>
|
|
10
9
|
|
|
11
10
|
type RHFResolver = <TFieldValues extends FieldValues, TContext>(
|
|
12
|
-
values:
|
|
11
|
+
values: TFieldValues,
|
|
13
12
|
context: TContext | undefined,
|
|
14
13
|
options: ResolverOptions<TFieldValues>,
|
|
15
14
|
) => ResolverResult<TFieldValues>;
|
package/vest/src/types.ts
CHANGED
|
@@ -2,7 +2,6 @@ import {
|
|
|
2
2
|
FieldValues,
|
|
3
3
|
ResolverOptions,
|
|
4
4
|
ResolverResult,
|
|
5
|
-
UnpackNestedValue,
|
|
6
5
|
} from 'react-hook-form';
|
|
7
6
|
import * as Vest from 'vest';
|
|
8
7
|
|
|
@@ -13,7 +12,7 @@ export type Resolver = (
|
|
|
13
12
|
schemaOptions?: never,
|
|
14
13
|
factoryOptions?: { mode?: 'async' | 'sync', rawValues?: boolean; },
|
|
15
14
|
) => <TFieldValues extends FieldValues, TContext>(
|
|
16
|
-
values:
|
|
15
|
+
values: TFieldValues,
|
|
17
16
|
context: TContext | undefined,
|
|
18
17
|
options: ResolverOptions<TFieldValues>,
|
|
19
18
|
) => Promise<ResolverResult<TFieldValues>>;
|
package/yup/dist/types.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { FieldValues, ResolverOptions, ResolverResult
|
|
1
|
+
import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form';
|
|
2
2
|
import * as Yup from 'yup';
|
|
3
3
|
import type Lazy from 'yup/lib/Lazy';
|
|
4
4
|
declare type Options<T extends Yup.AnyObjectSchema | Lazy<any>> = Parameters<T['validate']>[1];
|
|
5
5
|
export declare type Resolver = <T extends Yup.AnyObjectSchema | Lazy<any>>(schema: T, schemaOptions?: Options<T>, factoryOptions?: {
|
|
6
6
|
mode?: 'async' | 'sync';
|
|
7
7
|
rawValues?: boolean;
|
|
8
|
-
}) => <TFieldValues extends FieldValues, TContext>(values:
|
|
8
|
+
}) => <TFieldValues extends FieldValues, TContext>(values: TFieldValues, context: TContext | undefined, options: ResolverOptions<TFieldValues>) => Promise<ResolverResult<TFieldValues>>;
|
|
9
9
|
export {};
|
package/yup/src/types.ts
CHANGED
|
@@ -2,7 +2,6 @@ import {
|
|
|
2
2
|
FieldValues,
|
|
3
3
|
ResolverOptions,
|
|
4
4
|
ResolverResult,
|
|
5
|
-
UnpackNestedValue,
|
|
6
5
|
} from 'react-hook-form';
|
|
7
6
|
import * as Yup from 'yup';
|
|
8
7
|
import type Lazy from 'yup/lib/Lazy';
|
|
@@ -16,7 +15,7 @@ export type Resolver = <T extends Yup.AnyObjectSchema | Lazy<any>>(
|
|
|
16
15
|
schemaOptions?: Options<T>,
|
|
17
16
|
factoryOptions?: { mode?: 'async' | 'sync', rawValues?: boolean; },
|
|
18
17
|
) => <TFieldValues extends FieldValues, TContext>(
|
|
19
|
-
values:
|
|
18
|
+
values: TFieldValues,
|
|
20
19
|
context: TContext | undefined,
|
|
21
20
|
options: ResolverOptions<TFieldValues>,
|
|
22
21
|
) => Promise<ResolverResult<TFieldValues>>;
|
package/zod/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FieldValues, ResolverResult,
|
|
1
|
+
import { FieldValues, ResolverResult, ResolverOptions } from 'react-hook-form';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
export declare type Resolver = <T extends z.Schema<any, any>>(schema: T, schemaOptions?: Partial<z.ParseParams>, factoryOptions?: {
|
|
4
4
|
/**
|
|
@@ -10,4 +10,4 @@ export declare type Resolver = <T extends z.Schema<any, any>>(schema: T, schemaO
|
|
|
10
10
|
* @default false
|
|
11
11
|
*/
|
|
12
12
|
rawValues?: boolean;
|
|
13
|
-
}) => <TFieldValues extends FieldValues, TContext>(values:
|
|
13
|
+
}) => <TFieldValues extends FieldValues, TContext>(values: TFieldValues, context: TContext | undefined, options: ResolverOptions<TFieldValues>) => Promise<ResolverResult<TFieldValues>>;
|
package/zod/src/types.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
FieldValues,
|
|
3
3
|
ResolverResult,
|
|
4
|
-
UnpackNestedValue,
|
|
5
4
|
ResolverOptions,
|
|
6
5
|
} from 'react-hook-form';
|
|
7
6
|
import { z } from 'zod';
|
|
@@ -21,7 +20,7 @@ export type Resolver = <T extends z.Schema<any, any>>(
|
|
|
21
20
|
rawValues?: boolean;
|
|
22
21
|
},
|
|
23
22
|
) => <TFieldValues extends FieldValues, TContext>(
|
|
24
|
-
values:
|
|
23
|
+
values: TFieldValues,
|
|
25
24
|
context: TContext | undefined,
|
|
26
25
|
options: ResolverOptions<TFieldValues>,
|
|
27
26
|
) => Promise<ResolverResult<TFieldValues>>;
|