From 903424c33444792979990a86be4451856009084b Mon Sep 17 00:00:00 2001 From: Nick Mowen Date: Sun, 31 Dec 2023 14:51:30 -0700 Subject: [PATCH] make preview dates more efficient --- web/src/pages/History.tsx | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/web/src/pages/History.tsx b/web/src/pages/History.tsx index 96f19f520..6062e66b8 100644 --- a/web/src/pages/History.tsx +++ b/web/src/pages/History.tsx @@ -19,7 +19,6 @@ import { import HistoryFilterPopover from "@/components/filter/HistoryFilterPopover"; import useApiFilter from "@/hooks/use-api-filter"; import HistoryCardView from "@/views/history/HistoryCardView"; -import HistoryTimelineView from "@/views/history/HistoryTimelineView"; import { Button } from "@/components/ui/button"; import { IoMdArrowBack } from "react-icons/io"; import useOverlayState from "@/hooks/use-overlay-state"; @@ -78,10 +77,25 @@ function History() { setSize, isValidating, } = useSWRInfinite(getKey, timelineFetcher); + + const previewTimes = useMemo(() => { + if (!timelinePages) { + return undefined; + } + + const startDate = new Date(); + startDate.setMinutes(0, 0, 0); + + const endDate = new Date(timelinePages.at(-1)!!.end); + endDate.setHours(0, 0, 0, 0); + return { + start: startDate.getTime() / 1000, + end: endDate.getTime() / 1000, + }; + }, [timelinePages]); const { data: allPreviews } = useSWR( - timelinePages - ? `preview/all/start/${timelinePages?.at(0) - ?.start}/end/${timelinePages?.at(-1)?.end}` + previewTimes + ? `preview/all/start/${previewTimes.start}/end/${previewTimes.end}` : null, { revalidateOnFocus: false } );