- {props.posts?.map((p) =>
)}
+
+ {allPosts.map((p) => (
+
+ ))}
+ {/* Trigger element for loading more posts */}
+
+ {isValidating && (
+
+ Loading more posts...
+
+ )}
);
};
@@ -69,11 +136,11 @@ const Post = (props: Post) => {
`}
>
- {props.publications?.map((p) =>
)}
+ {props.publications?.map((p) =>
)}
);
};
diff --git a/app/reader/getReaderFeed.ts b/app/reader/getReaderFeed.ts
index 75d18dbe..8aad4ecf 100644
--- a/app/reader/getReaderFeed.ts
+++ b/app/reader/getReaderFeed.ts
@@ -86,7 +86,7 @@ const idResolver = new IdResolver({
});
export async function getReaderFeed(
- cursor?: string,
+ cursor?: string | null,
): Promise<{ posts: Post[]; nextCursor: string | null }> {
let auth_res = await getIdentityData();
if (!auth_res?.atp_did) return { posts: [], nextCursor: null };
diff --git a/app/reader/page.tsx b/app/reader/page.tsx
index c757f4c9..68bc5f70 100644
--- a/app/reader/page.tsx
+++ b/app/reader/page.tsx
@@ -79,6 +79,7 @@ export default async function Reader(props: {}) {
content: (
),