diff --git a/src/main/services/cloud-sync.ts b/src/main/services/cloud-sync.ts index c75cf278..aa0f5ff7 100644 --- a/src/main/services/cloud-sync.ts +++ b/src/main/services/cloud-sync.ts @@ -13,7 +13,6 @@ import { logger } from "./logger"; import { WindowManager } from "./window-manager"; import axios from "axios"; import { Ludusavi } from "./ludusavi"; -import { isFuture, isToday } from "date-fns"; import { SubscriptionRequiredError } from "@shared"; export class CloudSync { @@ -54,8 +53,8 @@ export class CloudSync { const hasActiveSubscription = await db .get(levelKeys.user, { valueEncoding: "json" }) .then((user) => { - const expiresAt = user?.subscription?.expiresAt; - return expiresAt && (isFuture(expiresAt) || isToday(expiresAt)); + const expiresAt = new Date(user?.subscription?.expiresAt ?? 0); + return expiresAt > new Date(); }); if (!hasActiveSubscription) { diff --git a/src/main/services/hydra-api.ts b/src/main/services/hydra-api.ts index 9c71d57d..32beff38 100644 --- a/src/main/services/hydra-api.ts +++ b/src/main/services/hydra-api.ts @@ -8,7 +8,6 @@ import { UserNotLoggedInError, SubscriptionRequiredError } from "@shared"; import { omit } from "lodash-es"; import { appVersion } from "@main/constants"; import { getUserData } from "./user/get-user-data"; -import { isFuture, isToday } from "date-fns"; import { db } from "@main/level"; import { levelKeys } from "@main/level/sublevels"; import type { Auth, User } from "@types"; @@ -47,8 +46,8 @@ export class HydraApi { } private static hasActiveSubscription() { - const expiresAt = this.userAuth.subscription?.expiresAt; - return expiresAt && (isFuture(expiresAt) || isToday(expiresAt)); + const expiresAt = new Date(this.userAuth.subscription?.expiresAt ?? 0); + return expiresAt > new Date(); } static async handleExternalAuth(uri: string) { diff --git a/src/renderer/src/hooks/use-user-details.ts b/src/renderer/src/hooks/use-user-details.ts index 2fdac382..2fb8e50d 100644 --- a/src/renderer/src/hooks/use-user-details.ts +++ b/src/renderer/src/hooks/use-user-details.ts @@ -15,7 +15,6 @@ import type { } from "@types"; import * as Sentry from "@sentry/react"; import { UserFriendModalTab } from "@renderer/pages/shared-modals/user-friend-modal"; -import { isFuture, isToday } from "date-fns"; export function useUserDetails() { const dispatch = useAppDispatch(); @@ -146,8 +145,8 @@ export function useUserDetails() { const unblockUser = (userId: string) => window.electron.unblockUser(userId); const hasActiveSubscription = useMemo(() => { - const expiresAt = userDetails?.subscription?.expiresAt; - return expiresAt && (isFuture(expiresAt) || isToday(expiresAt)); + const expiresAt = new Date(userDetails?.subscription?.expiresAt ?? 0); + return expiresAt > new Date(); }, [userDetails]); return {