diff options
| author | Mohamed Bassem <me@mbassem.com> | 2025-07-10 19:34:31 +0000 |
|---|---|---|
| committer | Mohamed Bassem <me@mbassem.com> | 2025-07-10 20:45:45 +0000 |
| commit | 333d1610fad10e70759545f223959503288a02c6 (patch) | |
| tree | 3354a21d4fa3b4dc75d03ba5f940bd3c213078fd /apps/web/app | |
| parent | 93049e864ae6d281b60c23dee868bca3f585dd4a (diff) | |
| download | karakeep-333d1610fad10e70759545f223959503288a02c6.tar.zst | |
feat: Add invite user support
Diffstat (limited to 'apps/web/app')
| -rw-r--r-- | apps/web/app/admin/background_jobs/page.tsx | 7 | ||||
| -rw-r--r-- | apps/web/app/admin/layout.tsx | 3 | ||||
| -rw-r--r-- | apps/web/app/admin/overview/page.tsx | 7 | ||||
| -rw-r--r-- | apps/web/app/invite/[token]/page.tsx | 28 |
4 files changed, 41 insertions, 4 deletions
diff --git a/apps/web/app/admin/background_jobs/page.tsx b/apps/web/app/admin/background_jobs/page.tsx index 6a13dd64..92b9e370 100644 --- a/apps/web/app/admin/background_jobs/page.tsx +++ b/apps/web/app/admin/background_jobs/page.tsx @@ -1,5 +1,10 @@ +import { AdminCard } from "@/components/admin/AdminCard"; import BackgroundJobs from "@/components/admin/BackgroundJobs"; export default function BackgroundJobsPage() { - return <BackgroundJobs />; + return ( + <AdminCard> + <BackgroundJobs /> + </AdminCard> + ); } diff --git a/apps/web/app/admin/layout.tsx b/apps/web/app/admin/layout.tsx index 20bd38bb..62a6932a 100644 --- a/apps/web/app/admin/layout.tsx +++ b/apps/web/app/admin/layout.tsx @@ -1,5 +1,4 @@ import { redirect } from "next/navigation"; -import { AdminCard } from "@/components/admin/AdminCard"; import { AdminNotices } from "@/components/admin/AdminNotices"; import MobileSidebar from "@/components/shared/sidebar/MobileSidebar"; import Sidebar from "@/components/shared/sidebar/Sidebar"; @@ -54,7 +53,7 @@ export default async function AdminLayout({ > <div className="flex flex-col gap-1"> <AdminNotices /> - <AdminCard>{children}</AdminCard> + {children} </div> </SidebarLayout> ); diff --git a/apps/web/app/admin/overview/page.tsx b/apps/web/app/admin/overview/page.tsx index 226fb9d5..fe463058 100644 --- a/apps/web/app/admin/overview/page.tsx +++ b/apps/web/app/admin/overview/page.tsx @@ -1,5 +1,10 @@ +import { AdminCard } from "@/components/admin/AdminCard"; import ServerStats from "@/components/admin/ServerStats"; export default function AdminOverviewPage() { - return <ServerStats />; + return ( + <AdminCard> + <ServerStats /> + </AdminCard> + ); } 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> + ); +} |
