diff --git a/.changeset/loud-poems-retire.md b/.changeset/loud-poems-retire.md new file mode 100644 index 00000000..16319cfc --- /dev/null +++ b/.changeset/loud-poems-retire.md @@ -0,0 +1,5 @@ +--- +'@hono/trpc-server': patch +--- + +`trpcServer` options extends FetchHandlerRequestOptions diff --git a/packages/trpc-server/src/index.ts b/packages/trpc-server/src/index.ts index 45af0f88..c52efd60 100644 --- a/packages/trpc-server/src/index.ts +++ b/packages/trpc-server/src/index.ts @@ -1,18 +1,20 @@ import type { AnyRouter } from '@trpc/server' +import type { FetchHandlerRequestOptions} from '@trpc/server/adapters/fetch' import { fetchRequestHandler } from '@trpc/server/adapters/fetch' import type { MiddlewareHandler } from 'hono' -type tRPCOptions = { - endpoint?: string - router: AnyRouter -} +type tRPCOptions = + Omit< + FetchHandlerRequestOptions, + 'req' | 'endpoint' + > & Partial, 'endpoint'>> -export const trpcServer = ({ router, endpoint = '/trpc' }: tRPCOptions): MiddlewareHandler => { +export const trpcServer = ({ endpoint = '/trpc', ...rest }: tRPCOptions): MiddlewareHandler => { return async (c) => { const res = fetchRequestHandler({ - endpoint: endpoint, + ...rest, + endpoint, req: c.req, - router: router, }) return res }