From 74a25b6b5c7af800c3ca55b4cc93b545848982d0 Mon Sep 17 00:00:00 2001 From: Jared Pereira Date: Thu, 12 Feb 2026 15:49:21 +0400 Subject: [PATCH] render what's hot for logged out users and don't render subs --- app/(home-pages)/reader/layout.tsx | 12 ++++++++---- app/(home-pages)/reader/page.tsx | 9 +++++++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/app/(home-pages)/reader/layout.tsx b/app/(home-pages)/reader/layout.tsx index 287bc9b3..2d163f52 100644 --- a/app/(home-pages)/reader/layout.tsx +++ b/app/(home-pages)/reader/layout.tsx @@ -8,11 +8,12 @@ import { DesktopNavigation } from "components/ActionBar/DesktopNavigation"; import { MobileNavigation } from "components/ActionBar/MobileNavigation"; import { MediaContents } from "components/Media"; import { DashboardIdContext } from "components/PageLayouts/DashboardLayout"; +import { useIdentityData } from "components/IdentityProvider"; -const tabs = [ - { name: "Subs", href: "/reader" }, - { name: "What's Hot", href: "/reader/hot" }, - { name: "New", href: "/reader/new" }, +const allTabs = [ + { name: "Subs", href: "/reader", requiresAuth: true }, + { name: "What's Hot", href: "/reader/hot", requiresAuth: false }, + { name: "New", href: "/reader/new", requiresAuth: false }, ]; export default function ReaderLayout({ @@ -21,6 +22,9 @@ export default function ReaderLayout({ children: React.ReactNode; }) { const pathname = usePathname(); + const { identity } = useIdentityData(); + const isLoggedIn = !!identity?.atp_did; + const tabs = allTabs.filter((tab) => !tab.requiresAuth || isLoggedIn); const isActive = (href: string) => { if (href === "/reader") return pathname === "/reader"; diff --git a/app/(home-pages)/reader/page.tsx b/app/(home-pages)/reader/page.tsx index 67a95a0c..3e5349fe 100644 --- a/app/(home-pages)/reader/page.tsx +++ b/app/(home-pages)/reader/page.tsx @@ -1,7 +1,16 @@ +import { getIdentityData } from "actions/getIdentityData"; import { getReaderFeed } from "./getReaderFeed"; +import { getHotFeed } from "./getHotFeed"; import { InboxContent } from "./InboxContent"; +import { GlobalContent } from "./GlobalContent"; export default async function Reader() { + let identityData = await getIdentityData(); + if (!identityData?.atp_did) { + const feedPromise = getHotFeed(); + return ; + } + const feedPromise = getReaderFeed(); return ; } -- 2.51.2