27 lines
991 B
TypeScript
27 lines
991 B
TypeScript
import * as React from "react";
|
|
|
|
import { redirect } from "next/navigation";
|
|
import { cookies } from "next/headers";
|
|
|
|
import { AuthorizeContainer } from "@/components/core/authorize";
|
|
|
|
export default async function AuthorizePage({ searchParams }: { searchParams: Promise<{ [key: string]: string | string[] | undefined }> }) {
|
|
const params = await searchParams;
|
|
|
|
const cookieStore = await cookies();
|
|
const token = cookieStore.get("token");
|
|
if (!token) {
|
|
redirect("/");
|
|
}
|
|
|
|
const client_id = params.client_id as string;
|
|
const redirect_uri = params.redirect_uri as string;
|
|
const response_type = params.response_type as string || "code";
|
|
const scope = params.scope as string || "profile email";
|
|
|
|
return (
|
|
<div className="flex justify-center items-center h-screen">
|
|
<AuthorizeContainer applicationName="SecNex" applicationUrl="https://secnex.io" client_id={client_id} redirect_uri={redirect_uri} response_type={response_type} scope={scope} />
|
|
</div>
|
|
)
|
|
} |