import { NextRequest, NextResponse } from "next/server"; import { createUserServiceClient } from "@/client/client"; import { RequestBody, ResponseBody } from "./types"; import { getSession, withApiAuthRequired } from "@auth0/nextjs-auth0"; export const PUT = withApiAuthRequired(async function(req: NextRequest) { const res = new NextResponse(); const session = await getSession(req, res); if (!session || !session.user["sub"]) { return res; } const { username, password } = RequestBody.parse(await req.json()); const client = createUserServiceClient(); await client.updateUser({ user: { subject: session.user.sub, ibdUsername: username, ibdPassword: password, }, updateMask: { paths: ["ibd_username", "ibd_password"], }, }); const ret: ResponseBody = {}; return NextResponse.json(ret, { status: 200 }); });