From 99378b694188af9257aecbae69896289f943493a Mon Sep 17 00:00:00 2001 From: hzrd149 Date: Tue, 16 Jan 2024 10:01:23 +0000 Subject: [PATCH] fix initial load issue --- .../timeline-page/generic-note-timeline/index.tsx | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/components/timeline-page/generic-note-timeline/index.tsx b/src/components/timeline-page/generic-note-timeline/index.tsx index c2fe5190d..3e9e4eed4 100644 --- a/src/components/timeline-page/generic-note-timeline/index.tsx +++ b/src/components/timeline-page/generic-note-timeline/index.tsx @@ -46,18 +46,22 @@ function GenericNoteTimeline({ timeline }: { timeline: TimelineLoader }) { [cachedLocationKey, timeline], ); - const [pinDate, setPinDate] = useState(getCachedNumber("pin") ?? events[NOTE_BUFFER]?.created_at ?? 0); + const [pinDate, setPinDate] = useState(getCachedNumber("pin") ?? events[NOTE_BUFFER]?.created_at ?? Infinity); const [maxDate, setMaxDate] = useState(getCachedNumber("max") ?? Infinity); - const [minDate, setMinDate] = useState(getCachedNumber("min") ?? events[NOTE_BUFFER]?.created_at ?? 0); + const [minDate, setMinDate] = useState(getCachedNumber("min") ?? events[NOTE_BUFFER]?.created_at ?? Infinity); + + if (pinDate === Infinity && events.length > 0) setPinDate(events[NOTE_BUFFER]?.created_at); + if (minDate === Infinity && events.length > 0) setMinDate(events[NOTE_BUFFER]?.created_at); // reset the latest and minDate when timeline changes useEffect(() => { setLatest(dayjs().unix()); + setPinDate(getCachedNumber("pin") ?? timeline.timeline.value[NOTE_BUFFER]?.created_at ?? Infinity); + setMaxDate(getCachedNumber("max") ?? Infinity); - setPinDate(getCachedNumber("min") ?? timeline.timeline.value[NOTE_BUFFER]?.created_at ?? 0); - setPinDate(getCachedNumber("pin") ?? timeline.timeline.value[NOTE_BUFFER]?.created_at ?? 0); - }, [timeline, setPinDate, setLatest, getCachedNumber]); + setMinDate(getCachedNumber("min") ?? timeline.timeline.value[NOTE_BUFFER]?.created_at ?? Infinity); + }, [timeline, setPinDate, setMinDate, setMaxDate, setLatest, getCachedNumber]); const updateNoteMinHeight = useCallback( (id: string, element: Element) => {