feat(accounts): show current account check status

This commit is contained in:
Sucukdeluxe
2026-08-21 00:41:40 +02:00
parent 9ceea828ec
commit 18fa58002c
8 changed files with 101 additions and 23 deletions
+9 -1
View File
@@ -117,7 +117,8 @@ export function resolveAccountUsername(storedUsername: string, checkedEmail?: st
export function resolveAccountStatusState(
disabled: boolean,
checkedStatus?: { valid: boolean; isPremium: boolean }
checkedStatus?: { valid: boolean; isPremium: boolean; premiumUntilMs?: number | null },
nowMs: number = Date.now()
): "disabled" | "unchecked" | "invalid" | "free" | "premium" {
if (checkedStatus && !checkedStatus.valid) {
return "invalid";
@@ -128,6 +129,13 @@ export function resolveAccountStatusState(
if (!checkedStatus) {
return "unchecked";
}
if (checkedStatus.isPremium
&& typeof checkedStatus.premiumUntilMs === "number"
&& Number.isFinite(checkedStatus.premiumUntilMs)
&& checkedStatus.premiumUntilMs > 0
&& checkedStatus.premiumUntilMs <= nowMs) {
return "free";
}
return checkedStatus.isPremium ? "premium" : "free";
}