From 9eb91b4452ddda04c0b45690ddbb719643659a4c Mon Sep 17 00:00:00 2001 From: Anup Cowkur Date: Fri, 1 Nov 2024 20:34:01 +0530 Subject: [PATCH] chore(frontend): standardise paginator UI closes #1471 --- .../dashboard/app/[teamId]/sessions/page.tsx | 21 +++++-------------- .../app/components/exceptions_details.tsx | 1 - .../app/components/exceptions_overview.tsx | 21 +++++-------------- 3 files changed, 10 insertions(+), 33 deletions(-) diff --git a/frontend/dashboard/app/[teamId]/sessions/page.tsx b/frontend/dashboard/app/[teamId]/sessions/page.tsx index 9f32743ad..b96bae91a 100644 --- a/frontend/dashboard/app/[teamId]/sessions/page.tsx +++ b/frontend/dashboard/app/[teamId]/sessions/page.tsx @@ -18,7 +18,7 @@ export default function SessionsOverview({ params }: { params: { teamId: string const [sessionsOverview, setSessionsOverview] = useState(emptySessionsOverviewResponse); const paginationOffset = 5 - const [paginationRange, setPaginationRange] = useState({ start: 1, end: paginationOffset }) + const [paginationIndex, setPaginationIndex] = useState(0) const [paginationDirection, setPaginationDirection] = useState(PaginationDirection.None) const getSessionsOverview = async () => { @@ -61,18 +61,7 @@ export default function SessionsOverview({ params }: { params: { teamId: string } getSessionsOverview() - }, [paginationRange, filters]); - - // Reset pagination range if not in default if any filters change - useEffect(() => { - // If we reset pagination range even if values haven't changed, we will trigger - // an unnecessary getSessionsOverview effect - if (paginationRange.start === 1 && paginationRange.end === paginationOffset) { - return - } - - setPaginationRange({ start: 1, end: paginationOffset }) - }, [filters]); + }, [paginationIndex, filters]); return (
@@ -118,14 +107,14 @@ export default function SessionsOverview({ params }: { params: { teamId: string filters={filters} />
- { - setPaginationRange({ start: paginationRange.start + paginationOffset, end: paginationRange.end + paginationOffset }) setPaginationDirection(PaginationDirection.Forward) + setPaginationIndex(paginationIndex + 1) }} onPrev={() => { - setPaginationRange({ start: paginationRange.start - paginationOffset, end: paginationRange.end - paginationOffset }) setPaginationDirection(PaginationDirection.Backward) + setPaginationIndex(paginationIndex - 1) }} />
diff --git a/frontend/dashboard/app/components/exceptions_details.tsx b/frontend/dashboard/app/components/exceptions_details.tsx index 909c57916..ca2d933a3 100644 --- a/frontend/dashboard/app/components/exceptions_details.tsx +++ b/frontend/dashboard/app/components/exceptions_details.tsx @@ -9,7 +9,6 @@ import Paginator, { PaginationDirection } from '@/app/components/paginator'; import { formatDateToHumanReadableDateTime } from '../utils/time_utils'; import ExceptionspDetailsPlot from './exceptions_details_plot'; import Filters, { AppVersionsInitialSelectionType, defaultFilters } from './filters'; -import Journey, { JourneyType } from './journey_sankey'; import Image from 'next/image'; import CopyAiContext from './copy_ai_context'; import LoadingSpinner from './loading_spinner'; diff --git a/frontend/dashboard/app/components/exceptions_overview.tsx b/frontend/dashboard/app/components/exceptions_overview.tsx index 925bd8444..bb029de45 100644 --- a/frontend/dashboard/app/components/exceptions_overview.tsx +++ b/frontend/dashboard/app/components/exceptions_overview.tsx @@ -22,7 +22,7 @@ export const ExceptionsOverview: React.FC = ({ exceptio const [exceptionsOverview, setExceptionsOverview] = useState(emptyExceptionsOverviewResponse); const paginationOffset = 10 - const [paginationRange, setPaginationRange] = useState({ start: 1, end: paginationOffset }) + const [paginationIndex, setPaginationIndex] = useState(0) const [paginationDirection, setPaginationDirection] = useState(PaginationDirection.None) @@ -66,18 +66,7 @@ export const ExceptionsOverview: React.FC = ({ exceptio } getExceptionsOverview() - }, [paginationRange, filters]); - - // Reset pagination range if not in default if any filters change - useEffect(() => { - // If we reset pagination range even if values haven't change, we will trigger - // and unnecessary getExceptionsOverview effect - if (paginationRange.start === 1 && paginationRange.end === paginationOffset) { - return - } - - setPaginationRange({ start: 1, end: paginationOffset }) - }, [filters]); + }, [paginationIndex, filters]); return (
@@ -123,13 +112,13 @@ export const ExceptionsOverview: React.FC = ({ exceptio filters={filters} />
- { - setPaginationRange({ start: paginationRange.start + paginationOffset, end: paginationRange.end + paginationOffset }) + setPaginationIndex(paginationIndex + 1) setPaginationDirection(PaginationDirection.Forward) }} onPrev={() => { - setPaginationRange({ start: paginationRange.start - paginationOffset, end: paginationRange.end - paginationOffset }) + setPaginationIndex(paginationIndex - 1) setPaginationDirection(PaginationDirection.Backward) }} />