aboutsummaryrefslogtreecommitdiffstats
path: root/apps/web/app/invite
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-07-10 19:34:31 +0000
committerMohamed Bassem <me@mbassem.com>2025-07-10 20:45:45 +0000
commit333d1610fad10e70759545f223959503288a02c6 (patch)
tree3354a21d4fa3b4dc75d03ba5f940bd3c213078fd /apps/web/app/invite
parent93049e864ae6d281b60c23dee868bca3f585dd4a (diff)
downloadkarakeep-333d1610fad10e70759545f223959503288a02c6.tar.zst
feat: Add invite user support
Diffstat (limited to 'apps/web/app/invite')
-rw-r--r--apps/web/app/invite/[token]/page.tsx28
1 files changed, 28 insertions, 0 deletions
diff --git a/apps/web/app/invite/[token]/page.tsx b/apps/web/app/invite/[token]/page.tsx
new file mode 100644
index 00000000..874146fc
--- /dev/null
+++ b/apps/web/app/invite/[token]/page.tsx
@@ -0,0 +1,28 @@
+import { redirect } from "next/navigation";
+import InviteAcceptForm from "@/components/invite/InviteAcceptForm";
+import KarakeepLogo from "@/components/KarakeepIcon";
+import { getServerAuthSession } from "@/server/auth";
+
+interface InvitePageProps {
+ params: {
+ token: string;
+ };
+}
+
+export default async function InvitePage({ params }: InvitePageProps) {
+ const session = await getServerAuthSession();
+ if (session) {
+ redirect("/");
+ }
+
+ return (
+ <div className="flex min-h-screen items-center justify-center bg-gray-50 px-4 py-12 sm:px-6 lg:px-8">
+ <div className="w-full max-w-md space-y-8">
+ <div className="flex items-center justify-center">
+ <KarakeepLogo height={80} />
+ </div>
+ <InviteAcceptForm token={params.token} />
+ </div>
+ </div>
+ );
+}