From 6a9d48383b583fb74cce7dca24ddb2ac7376bb28 Mon Sep 17 00:00:00 2001 From: unnoq Date: Sun, 30 Mar 2025 09:09:59 +0700 Subject: [PATCH] fix(server)!: remove input type in client interceptors Type input in interceptors is not safe since this input is not validated and may diff as expected type in remote call like server action envs --- packages/react/src/action-form.ts | 1 - packages/server/src/adapters/standard/handler.ts | 2 +- packages/server/src/implementer-procedure.ts | 2 -- packages/server/src/procedure-client.test-d.ts | 2 +- packages/server/src/procedure-client.ts | 7 ++----- packages/server/src/procedure-decorated.ts | 2 -- packages/server/src/procedure-utils.ts | 1 - packages/server/src/router-client.ts | 1 - 8 files changed, 4 insertions(+), 14 deletions(-) diff --git a/packages/react/src/action-form.ts b/packages/react/src/action-form.ts index 864d5dfbd..ed205fd25 100644 --- a/packages/react/src/action-form.ts +++ b/packages/react/src/action-form.ts @@ -32,7 +32,6 @@ export function createFormAction< ...rest: MaybeOptionalOptions< CreateProcedureClientOptions< TInitialContext, - TInputSchema, TOutputSchema, TErrorMap, TMeta, diff --git a/packages/server/src/adapters/standard/handler.ts b/packages/server/src/adapters/standard/handler.ts index 7f2392f3a..202a1ebf5 100644 --- a/packages/server/src/adapters/standard/handler.ts +++ b/packages/server/src/adapters/standard/handler.ts @@ -43,7 +43,7 @@ export interface StandardHandlerOptions { * Interceptors for procedure client. */ clientInterceptors?: Interceptor< - ProcedureClientInterceptorOptions, Meta>, + ProcedureClientInterceptorOptions, Meta>, InferSchemaOutput, ErrorFromErrorMap> >[] diff --git a/packages/server/src/implementer-procedure.ts b/packages/server/src/implementer-procedure.ts index 2a87c484e..e89212350 100644 --- a/packages/server/src/implementer-procedure.ts +++ b/packages/server/src/implementer-procedure.ts @@ -64,7 +64,6 @@ export interface ImplementedProcedure< ...rest: MaybeOptionalOptions< CreateProcedureClientOptions< TInitialContext, - TInputSchema, TOutputSchema, TErrorMap, TMeta, @@ -81,7 +80,6 @@ export interface ImplementedProcedure< ...rest: MaybeOptionalOptions< CreateProcedureClientOptions< TInitialContext, - TInputSchema, TOutputSchema, TErrorMap, TMeta, diff --git a/packages/server/src/procedure-client.test-d.ts b/packages/server/src/procedure-client.test-d.ts index a845692ea..c102fa87e 100644 --- a/packages/server/src/procedure-client.test-d.ts +++ b/packages/server/src/procedure-client.test-d.ts @@ -96,7 +96,7 @@ describe('createProcedureClient', () => { expectTypeOf(path).toEqualTypeOf() expectTypeOf(errors).toEqualTypeOf>() expectTypeOf(context).toEqualTypeOf<{ db: string }>() - expectTypeOf(input).toEqualTypeOf<{ input: number }>() + expectTypeOf(input).toEqualTypeOf() const output = await next() diff --git a/packages/server/src/procedure-client.ts b/packages/server/src/procedure-client.ts index 87e77e9b1..e03305e00 100644 --- a/packages/server/src/procedure-client.ts +++ b/packages/server/src/procedure-client.ts @@ -25,12 +25,11 @@ export type ProcedureClient< export interface ProcedureClientInterceptorOptions< TInitialContext extends Context, - TInputSchema extends AnySchema, TErrorMap extends ErrorMap, TMeta extends Meta, > { context: TInitialContext - input: InferSchemaInput + input: unknown errors: ORPCErrorConstructorMap path: readonly string[] procedure: Procedure @@ -43,7 +42,6 @@ export interface ProcedureClientInterceptorOptions< */ export type CreateProcedureClientOptions< TInitialContext extends Context, - TInputSchema extends AnySchema, TOutputSchema extends AnySchema, TErrorMap extends ErrorMap, TMeta extends Meta, @@ -56,7 +54,7 @@ export type CreateProcedureClientOptions< path?: readonly string[] interceptors?: Interceptor< - ProcedureClientInterceptorOptions, + ProcedureClientInterceptorOptions, InferSchemaOutput, ErrorFromErrorMap >[] @@ -79,7 +77,6 @@ export function createProcedureClient< ...[options]: MaybeOptionalOptions< CreateProcedureClientOptions< TInitialContext, - TInputSchema, TOutputSchema, TErrorMap, TMeta, diff --git a/packages/server/src/procedure-decorated.ts b/packages/server/src/procedure-decorated.ts index 99b699571..a2ae69f48 100644 --- a/packages/server/src/procedure-decorated.ts +++ b/packages/server/src/procedure-decorated.ts @@ -118,7 +118,6 @@ export class DecoratedProcedure< ...rest: MaybeOptionalOptions< CreateProcedureClientOptions< TInitialContext, - TInputSchema, TOutputSchema, TErrorMap, TMeta, @@ -147,7 +146,6 @@ export class DecoratedProcedure< ...rest: MaybeOptionalOptions< CreateProcedureClientOptions< TInitialContext, - TInputSchema, TOutputSchema, TErrorMap, TMeta, diff --git a/packages/server/src/procedure-utils.ts b/packages/server/src/procedure-utils.ts index 796b80d02..617106a09 100644 --- a/packages/server/src/procedure-utils.ts +++ b/packages/server/src/procedure-utils.ts @@ -60,7 +60,6 @@ export function call< ...rest: MaybeOptionalOptions< CreateProcedureClientOptions< TInitialContext, - TInputSchema, TOutputSchema, TErrorMap, TMeta, diff --git a/packages/server/src/router-client.ts b/packages/server/src/router-client.ts index f0e8897b0..bf48f0b86 100644 --- a/packages/server/src/router-client.ts +++ b/packages/server/src/router-client.ts @@ -24,7 +24,6 @@ export function createRouterClient, Schema, - Schema, ErrorMap, Meta, TClientContext