You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
884 B
TypeScript
21 lines
884 B
TypeScript
import { appRouter } from "../trpc/server";
|
|
// TODO: stop using universal-middleware and directly integrate server middlewares instead and/or use vike-server https://vike.dev/server. (Bati generates boilerplates that use universal-middleware https://github.com/magne4000/universal-middleware to make Bati's internal logic easier. This is temporary and will be removed soon.)
|
|
import type { Get, UniversalHandler } from "@universal-middleware/core";
|
|
import { fetchRequestHandler } from "@trpc/server/adapters/fetch";
|
|
|
|
export const trpcHandler = ((endpoint) => (request, context, runtime) => {
|
|
return fetchRequestHandler({
|
|
endpoint,
|
|
req: request,
|
|
router: appRouter,
|
|
createContext({ req, resHeaders }) {
|
|
return {
|
|
...context,
|
|
...runtime,
|
|
req,
|
|
resHeaders,
|
|
};
|
|
},
|
|
});
|
|
}) satisfies Get<[endpoint: string], UniversalHandler>;
|