Fix feed pagination logic

This commit is contained in:
Jon Staab
2026-04-10 12:40:28 -07:00
parent e33beee17d
commit a42e1df1a7
+5 -5
View File
@@ -60,7 +60,7 @@ export const makeFeed = ({
const insertIntoBuffer = (event: TrustedEvent) => { const insertIntoBuffer = (event: TrustedEvent) => {
for (let i = 0; i < buffer.length; i++) { for (let i = 0; i < buffer.length; i++) {
if (buffer[i].created_at > event.created_at) { if (buffer[i].created_at < event.created_at) {
buffer.splice(i, 0, event) buffer.splice(i, 0, event)
return return
} }
@@ -152,7 +152,7 @@ export const makeFeed = ({
element, element,
delay: 300, delay: 300,
threshold: 5000, threshold: 5000,
onScroll: () => { onScroll: async () => {
const [since, until] = backwardWindow const [since, until] = backwardWindow
backwardWindow = [since - interval, since] backwardWindow = [since - interval, since]
@@ -160,7 +160,7 @@ export const makeFeed = ({
insertEvents(buffer.splice(0, 30)) insertEvents(buffer.splice(0, 30))
if (until > now() - int(2, YEAR)) { if (until > now() - int(2, YEAR)) {
loadTimeframe(since, until) await loadTimeframe(since, until)
} else if (!buffer.some(e => e.created_at < at)) { } else if (!buffer.some(e => e.created_at < at)) {
backwardScroller.stop() backwardScroller.stop()
onBackwardExhausted?.() onBackwardExhausted?.()
@@ -173,7 +173,7 @@ export const makeFeed = ({
reverse: true, reverse: true,
delay: 300, delay: 300,
threshold: 5000, threshold: 5000,
onScroll: () => { onScroll: async () => {
const [since, until] = forwardWindow const [since, until] = forwardWindow
forwardWindow = [until, until + interval] forwardWindow = [until, until + interval]
@@ -181,7 +181,7 @@ export const makeFeed = ({
insertEvents(buffer.splice(0, 30)) insertEvents(buffer.splice(0, 30))
if (until < now()) { if (until < now()) {
loadTimeframe(since, until) await loadTimeframe(since, until)
} else if (!buffer.some(e => e.created_at > at)) { } else if (!buffer.some(e => e.created_at > at)) {
forwardScroller.stop() forwardScroller.stop()
onForwardExhausted?.() onForwardExhausted?.()