diff --git a/packages/web/app/src/pages/target-checks.tsx b/packages/web/app/src/pages/target-checks.tsx index b7e0c4cc0d..10ed66dcd2 100644 --- a/packages/web/app/src/pages/target-checks.tsx +++ b/packages/web/app/src/pages/target-checks.tsx @@ -1,4 +1,4 @@ -import { useEffect, useRef, useState } from 'react'; +import { ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react'; import { useQuery } from 'urql'; import { Page, TargetLayout } from '@/components/layouts/target'; import { BadgeRounded } from '@/components/ui/badge'; @@ -13,6 +13,7 @@ import { Spinner } from '@/components/ui/spinner'; import { Switch } from '@/components/ui/switch'; import { TimeAgo } from '@/components/ui/time-ago'; import { graphql } from '@/gql'; +import { ProjectType } from '@/gql/graphql'; import { cn } from '@/lib/utils'; import { ExternalLinkIcon } from '@radix-ui/react-icons'; import { @@ -81,6 +82,12 @@ const Navigation = ( schemaCheckId?: string; } & SchemaCheckFilters, ) => { + const search = useMemo(() => { + return { + filter_changed: props.showOnlyChanged, + filter_failed: props.showOnlyFailed, + }; + }, [props.showOnlyChanged, props.showOnlyFailed]); const [query] = useQuery({ query: SchemaChecks_NavigationQuery, variables: { @@ -95,83 +102,87 @@ const Navigation = ( }, }); + const onLoadMore = useCallback(() => { + props.onLoadMore(query.data?.target?.schemaChecks.pageInfo.endCursor ?? ''); + }, [query.data?.target?.schemaChecks.pageInfo.endCursor, props.onLoadMore]); + + if (query.fetching) { + return ( +