* feat(web): improve session retrieval performance Switch to using `getServerSession` which avoids a HTTP round trip to retrieve session details. Additionally, migrate deprecated `app/lib/auth` calls to to `@calcom/lib` package. * fix: update failing test and lint * Consolidates auth code in features * Update yarn.lock * Update packages/trpc/server/createContext.ts * Oopsie --------- Co-authored-by: zomars <zomars@me.com>
18 lines
748 B
TypeScript
18 lines
748 B
TypeScript
import type { NextApiRequest, NextApiResponse } from "next";
|
|
|
|
import { getServerSession } from "@calcom/features/auth/lib/getServerSession";
|
|
import handleCancelBooking from "@calcom/features/bookings/lib/handleCancelBooking";
|
|
import { defaultResponder, defaultHandler } from "@calcom/lib/server";
|
|
|
|
async function handler(req: NextApiRequest & { userId?: number }, res: NextApiResponse) {
|
|
const session = await getServerSession({ req, res });
|
|
/* To mimic API behavior and comply with types */
|
|
req.userId = session?.user?.id || -1;
|
|
return await handleCancelBooking(req);
|
|
}
|
|
|
|
export default defaultHandler({
|
|
DELETE: Promise.resolve({ default: defaultResponder(handler) }),
|
|
POST: Promise.resolve({ default: defaultResponder(handler) }),
|
|
});
|