From 928a3815edebf4864126948abe134d8031ef01ec Mon Sep 17 00:00:00 2001
From: ToxicCrzay270 <185776014+ToxicCrzay270@users.noreply.github.com>
Date: Thu, 11 Jun 2026 22:42:35 +0200
Subject: [PATCH] Improve invite handling
---
src/app/admin/page.tsx | 38 ++++++++++++++++++++-------------
src/app/register/page.tsx | 6 +++---
src/app/rooms/[slug]/page.tsx | 18 ++++++++++------
src/components/room-console.tsx | 18 ++++++++++++++++
src/lib/admin-actions.ts | 4 ++--
src/lib/invites.ts | 12 +++++++++++
src/lib/room-actions.ts | 4 ++--
src/lib/user-actions.ts | 7 +++++-
tests/invites.test.ts | 28 ++++++++++++++++++++++++
9 files changed, 105 insertions(+), 30 deletions(-)
create mode 100644 src/lib/invites.ts
create mode 100644 tests/invites.test.ts
diff --git a/src/app/admin/page.tsx b/src/app/admin/page.tsx
index 1aefcd9..df78617 100644
--- a/src/app/admin/page.tsx
+++ b/src/app/admin/page.tsx
@@ -14,6 +14,7 @@ import { getAppSettings, type AppSettings } from "@/lib/settings";
import { updateInstanceSettings, updateSecuritySettings } from "@/lib/settings-actions";
import { banUser, createInstanceInvite, disableUser, enableUser, grantAdminRole, removeUserFriendships, revokeAdminRole, revokeInvite } from "@/lib/admin-actions";
import { deleteRoom } from "@/lib/room-actions";
+import { isInviteExpired } from "@/lib/invites";
export const dynamic = "force-dynamic";
@@ -364,21 +365,28 @@ function InvitesPanel({