import { ButtonAction } from "@/components/ButtonActionLoader"; import { Button } from "@/components/ui/button"; import { createAuthRequest } from "@/server/curdApiKeys"; import { auth } from "@clerk/nextjs"; import { redirect } from "next/navigation"; import { getOrgOrUserDisplayName } from "../../../../server/getOrgOrUserDisplayName"; import { db } from "@/db/db"; import { eq } from "drizzle-orm"; import { authRequestsTable } from "@/db/schema"; export default async function Home({ params, }: { params: { request_id: string }; }) { const { userId, orgId } = await auth(); if (!userId) redirect("/"); if (!params.request_id) return (
No valid request_id
); const existingResult = await db.query.authRequestsTable.findFirst({ where: eq(authRequestsTable.request_id, params.request_id), }); if (existingResult?.api_hash) { return (
Request already consumed.
); } const userName = await getOrgOrUserDisplayName(orgId, userId); return (
Grant API Access to {userName}
); }