diff --git a/.changeset/great-peaches-yell.md b/.changeset/great-peaches-yell.md new file mode 100644 index 00000000000..f95f3e9e066 --- /dev/null +++ b/.changeset/great-peaches-yell.md @@ -0,0 +1,5 @@ +--- +"@clerk/tanstack-start": patch +--- + +Fix type mismatch between TanStack Start and Clerk event handlers diff --git a/packages/tanstack-start/package.json b/packages/tanstack-start/package.json index 9e1176c5fe7..f74ffcad7f3 100644 --- a/packages/tanstack-start/package.json +++ b/packages/tanstack-start/package.json @@ -69,7 +69,8 @@ "devDependencies": { "@tanstack/react-router": "^1.97.25", "@tanstack/start": "^1.97.25", - "esbuild-plugin-file-path-extensions": "^2.1.2" + "esbuild-plugin-file-path-extensions": "^2.1.2", + "h3": "^1.13.0" }, "peerDependencies": { "@tanstack/react-router": ">=1.85.9", diff --git a/packages/tanstack-start/src/server/middlewareHandler.ts b/packages/tanstack-start/src/server/middlewareHandler.ts index 3faa31b9eae..ec56e4711a9 100644 --- a/packages/tanstack-start/src/server/middlewareHandler.ts +++ b/packages/tanstack-start/src/server/middlewareHandler.ts @@ -1,5 +1,5 @@ import type { AnyRouter } from '@tanstack/react-router'; -import type { EventHandler } from 'vinxi/http'; +import type { eventHandler } from 'h3'; import { authenticateRequest } from './authenticateRequest'; import { loadOptions } from './loadOptions'; @@ -11,13 +11,16 @@ export type HandlerCallback = (ctx: { router: TRouter; responseHeaders: Headers; }) => Response | Promise; -export type CustomizeStartHandler = (cb: HandlerCallback) => EventHandler; + +export type CustomizeStartHandler = ( + cb: HandlerCallback, +) => ReturnType; export function createClerkHandler( eventHandler: CustomizeStartHandler, clerkOptions: LoaderOptions = {}, ) { - return (cb: HandlerCallback): EventHandler => { + return (cb: HandlerCallback) => { return eventHandler(async ({ request, router, responseHeaders }) => { try { const loadedOptions = loadOptions(request, clerkOptions); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0907dfefcd3..a51a16dd604 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -963,6 +963,9 @@ importers: esbuild-plugin-file-path-extensions: specifier: ^2.1.2 version: 2.1.4 + h3: + specifier: ^1.13.0 + version: 1.14.0 packages/testing: dependencies: