diff --git a/valibot/src/valibot.ts b/valibot/src/valibot.ts index f98095f1..44332a7e 100644 --- a/valibot/src/valibot.ts +++ b/valibot/src/valibot.ts @@ -129,9 +129,7 @@ export function valibotResolver( // Otherwise, return resolver result with values return { - values: resolverOptions.raw - ? Object.assign({}, values) - : (result.output as FieldValues), + values: resolverOptions.raw ? Object.assign({}, values) : result.output, errors: {}, }; }; diff --git a/vine/src/vine.ts b/vine/src/vine.ts index a3e7906f..a47ce16f 100644 --- a/vine/src/vine.ts +++ b/vine/src/vine.ts @@ -6,7 +6,6 @@ import { } from '@vinejs/vine/build/src/types'; import { FieldError, - FieldErrors, FieldValues, Resolver, appendErrors, @@ -94,7 +93,7 @@ export function vineResolver( options.shouldUseNativeValidation && validateFieldsNatively({}, options); return { - errors: {} as FieldErrors, + errors: {}, values: resolverOptions.raw ? Object.assign({}, values) : data, }; } catch (error: any) { diff --git a/zod/src/zod.ts b/zod/src/zod.ts index 461d6a8a..9093c813 100644 --- a/zod/src/zod.ts +++ b/zod/src/zod.ts @@ -1,7 +1,6 @@ import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import { FieldError, - FieldErrors, FieldValues, Resolver, ResolverError, @@ -105,7 +104,9 @@ function parseZod4Issues( if (error.code === 'invalid_union') { error.errors.forEach((unionError) => - unionError.forEach((e) => zodErrors.push(e)), + unionError.forEach((e) => + zodErrors.push({ ...e, path: [...error.path, ...e.path] }), + ), ); } @@ -254,7 +255,7 @@ export function zodResolver( validateFieldsNatively({}, options); return { - errors: {} as FieldErrors, + errors: {}, values: resolverOptions.raw ? Object.assign({}, values) : data, } satisfies ResolverSuccess; } catch (error) { @@ -288,7 +289,7 @@ export function zodResolver( validateFieldsNatively({}, options); return { - errors: {} as FieldErrors, + errors: {}, values: resolverOptions.raw ? Object.assign({}, values) : data, } satisfies ResolverSuccess; } catch (error) {