Skip to content

Commit 93ea2ee

Browse files
committed
feat(zod): support zod v4 and v3 ZodSmartCoercionPlugin use in parallel
1 parent d954836 commit 93ea2ee

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

packages/zod/src/coercer.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export class ZodSmartCoercionPlugin<TContext extends Context> implements Standar
3535
options.clientInterceptors.unshift((options) => {
3636
const inputSchema = options.procedure['~orpc'].inputSchema
3737

38-
if (!inputSchema || inputSchema['~standard'].vendor !== 'zod') {
38+
if (!inputSchema || inputSchema['~standard'].vendor !== 'zod' || '_zod' in inputSchema /** < zod4 */) {
3939
return options.next()
4040
}
4141

packages/zod/src/zod4/coercer.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ export class experimental_ZodSmartCoercionPlugin<TContext extends Context> imple
3434
options.clientInterceptors.unshift((options) => {
3535
const inputSchema = options.procedure['~orpc'].inputSchema
3636

37-
if (!inputSchema || inputSchema['~standard'].vendor !== 'zod') {
37+
if (!inputSchema || inputSchema['~standard'].vendor !== 'zod' || !('_zod' in inputSchema) /** >= zod4 */) {
3838
return options.next()
3939
}
4040

0 commit comments

Comments
 (0)