diff --git a/yup/src/__tests__/yup.ts b/yup/src/__tests__/yup.ts index 12f4b194..bce38468 100644 --- a/yup/src/__tests__/yup.ts +++ b/yup/src/__tests__/yup.ts @@ -121,12 +121,7 @@ describe('yupResolver', () => { foo: [{ loose: null }], }; - const output = await yupResolver(schema)( - // @ts-expect-error - data, - {}, - true, - ); + const output = await yupResolver(schema)(data, {}, true); expect(output).toMatchSnapshot(); expect(output.errors['foo']?.[0]?.['loose']).toBeDefined(); expect(output.errors['foo']?.[0]?.['loose']?.types) @@ -168,7 +163,6 @@ describe('yupResolver', () => { foo: [{ loose: null }], }; - // @ts-expect-error const output = await yupResolver(schema)(data); expect(output).toMatchSnapshot(); expect(output.errors.age?.types).toBeUndefined(); @@ -185,7 +179,6 @@ describe('yupResolver', () => { }; const output = await yupResolver(schema, { abortEarly: true, - // @ts-expect-error })(data, undefined, true); expect(output.errors).toMatchInlineSnapshot(` @@ -208,7 +201,6 @@ describe('yupResolver', () => { inner: [{ path: '', message: 'error1', type: 'required' }], }); - // @ts-expect-error const output = await yupResolver(schemaWithContext)(data); expect(output).toMatchSnapshot(); }); @@ -245,7 +237,6 @@ describe('validateWithSchema', () => { }), }); - // @ts-expect-error expect(await yupResolver(schemaWithContext)(data, { min: true })) .toMatchInlineSnapshot(` Object { diff --git a/yup/src/yup.ts b/yup/src/yup.ts index bec6582a..b1be8fc0 100644 --- a/yup/src/yup.ts +++ b/yup/src/yup.ts @@ -1,10 +1,5 @@ /* eslint-disable @typescript-eslint/ban-ts-comment */ -import { - Resolver, - ResolverError, - ResolverSuccess, - transformToNestObject, -} from 'react-hook-form'; +import { FieldValues, Resolver, transformToNestObject } from 'react-hook-form'; import Yup from 'yup'; /** @@ -62,12 +57,12 @@ type ValidateOptions = Parameters< T['validate'] >[1]; -export const yupResolver = ( - schema: T, - options: ValidateOptions = { +export const yupResolver = ( + schema: Yup.AnyObjectSchema, + options: ValidateOptions = { abortEarly: false, }, -): Resolver> => async ( +): Resolver => async ( values, context, validateAllFieldCriteria = false, @@ -85,12 +80,12 @@ export const yupResolver = ( context, }), errors: {}, - } as ResolverSuccess>; + }; } catch (e) { const parsedErrors = parseErrorSchema(e, validateAllFieldCriteria); return { values: {}, errors: transformToNestObject(parsedErrors), - } as ResolverError>; + }; } };