Files
myeasycms-v2/apps/nextjs/src/app/api/trpc/edge/[trpc]/route.ts

31 lines
803 B
TypeScript

import type { NextRequest } from "next/server";
import { getAuth } from "@clerk/nextjs/server";
import { fetchRequestHandler } from "@trpc/server/adapters/fetch";
import { createTRPCContext } from "@acme/api";
import { edgeRouter } from "@acme/api/edge";
export const runtime = "edge";
const createContext = async (req: NextRequest) => {
return createTRPCContext({
headers: req.headers,
auth: getAuth(req),
req,
});
};
const handler = (req: NextRequest) =>
fetchRequestHandler({
endpoint: "/api/trpc/edge",
router: edgeRouter,
req: req,
createContext: () => createContext(req),
onError: ({ error, path }) => {
console.log("Error in tRPC handler (edge) on path", path);
console.error(error);
},
});
export { handler as GET, handler as POST };