diff --git a/server/routers/supporterKey/isSupporterKeyVisible.ts b/server/routers/supporterKey/isSupporterKeyVisible.ts index 0247aca6..dca4535d 100644 --- a/server/routers/supporterKey/isSupporterKeyVisible.ts +++ b/server/routers/supporterKey/isSupporterKeyVisible.ts @@ -10,6 +10,7 @@ import { users } from "@server/db/schema"; export type IsSupporterKeyVisibleResponse = { visible: boolean; + tier?: string; }; const USER_LIMIT = 5; @@ -29,16 +30,17 @@ export async function isSupporterKeyVisible( const [numUsers] = await db.select({ count: count() }).from(users); if (numUsers.count > USER_LIMIT) { + logger.debug( + `User count ${numUsers.count} exceeds limit ${USER_LIMIT}` + ); visible = true; } } - logger.debug(`Supporter key visible: ${visible}`); - logger.debug(JSON.stringify(key)); - return sendResponse(res, { data: { - visible + visible, + tier: key?.tier || undefined }, success: true, error: false, diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 225588c1..bc322572 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -32,12 +32,13 @@ export default async function RootLayout({ let supporterData = { visible: true - }; + } as any; const res = await priv.get< AxiosResponse >("supporter-key/visible"); supporterData.visible = res.data.data.visible; + supporterData.tier = res.data.data.tier; const version = env.app.version; diff --git a/src/components/SupporterStatus.tsx b/src/components/SupporterStatus.tsx index 125c6522..b5f94371 100644 --- a/src/components/SupporterStatus.tsx +++ b/src/components/SupporterStatus.tsx @@ -218,7 +218,9 @@ export default function SupporterStatus() { - + Limited Supporter @@ -246,14 +248,29 @@ export default function SupporterStatus() { - - - + {supporterStatus?.tier !== + "Limited Supporter" ? ( + + + + ) : ( + + )} diff --git a/src/contexts/supporterStatusContext.ts b/src/contexts/supporterStatusContext.ts index 9ce88d6b..c5c84546 100644 --- a/src/contexts/supporterStatusContext.ts +++ b/src/contexts/supporterStatusContext.ts @@ -2,6 +2,7 @@ import { createContext } from "react"; export type SupporterStatus = { visible: boolean; + tier?: string; }; type SupporterStatusContextType = {