11import type { NextApiRequest , NextApiResponse } from "next" ;
22
33import { throwIfNotHaveAdminAccessToTeam } from "@calcom/app-store/_utils/throwIfNotHaveAdminAccessToTeam" ;
4+ import { getServerErrorFromUnknown } from "@calcom/lib/server/getServerErrorFromUnknown" ;
45import prisma from "@calcom/prisma" ;
56
67import config from "../config.json" ;
@@ -12,7 +13,11 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
1213
1314 const { teamId } = req . query ;
1415
15- await throwIfNotHaveAdminAccessToTeam ( { teamId : Number ( teamId ) ?? null , userId : req . session . user . id } ) ;
16+ await throwIfNotHaveAdminAccessToTeam ( {
17+ teamId : teamId ? Number ( teamId ) : null ,
18+ userId : req . session . user . id ,
19+ } ) ;
20+
1621 const installForObject = teamId ? { teamId : Number ( teamId ) } : { userId : req . session . user . id } ;
1722
1823 const appType = config . type ;
@@ -39,10 +44,8 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
3944 throw new Error ( "Unable to create user credential for Paypal" ) ;
4045 }
4146 } catch ( error : unknown ) {
42- if ( error instanceof Error ) {
43- return res . status ( 500 ) . json ( { message : error . message } ) ;
44- }
45- return res . status ( 500 ) ;
47+ const httpError = getServerErrorFromUnknown ( error ) ;
48+ return res . status ( httpError . statusCode ) . json ( { message : httpError . message } ) ;
4649 }
4750
4851 return res . status ( 200 ) . json ( { url : "/apps/paypal/setup" } ) ;
0 commit comments