Migrate TED dashboard chart to summary API
continuous-integration/drone/push Build is passing

This commit is contained in:
AmirReza Jamali
2026-07-04 12:51:28 +03:30
parent 6b6dd7d2d1
commit fc0d45e909
6 changed files with 38 additions and 16 deletions
@@ -15,7 +15,10 @@ import { toLabeledPoints } from "./to-labeled-points";
export type DashboardMetrics = ReturnType<typeof useDashboardData>;
export function useDashboardData() {
const summaryQuery = useDashboardSummaryQuery();
const summaryQuery = useDashboardSummaryQuery({
closing_window: 168,
days: 14,
});
const trendQuery = useDashboardTrendQuery({ days: 14, metric: "created" });
const countriesQuery = useDashboardCountriesQuery({ limit: 6 });
const noticeTypesQuery = useDashboardNoticeTypesQuery();
@@ -1,6 +1,9 @@
"use client";
import { useDashboardStatisticsQuery } from "@/hooks/queries";
import {
useDashboardStatisticsQuery,
useDashboardSummaryQuery,
} from "@/hooks/queries";
import { useMemo, useState } from "react";
import { toLabeledPoints } from "./to-labeled-points";
@@ -11,14 +14,16 @@ export type StatisticsDays = (typeof STATISTICS_DAY_OPTIONS)[number];
export function useStatistics() {
const [days, setDays] = useState<StatisticsDays>(14);
const summaryQuery = useDashboardSummaryQuery({ closing_window: 168, days });
const query = useDashboardStatisticsQuery({ days });
const summary = summaryQuery.data?.data;
const stats = query.data?.data;
const daily = stats?.daily;
const scrapedTed = useMemo(
() => toLabeledPoints(daily?.scraped_ted ?? []),
[daily],
() => toLabeledPoints(summary?.scraped_ted ?? []),
[summary],
);
const scrapedDocuments = useMemo(
() => toLabeledPoints(daily?.scraped_documents ?? []),
@@ -32,9 +37,12 @@ export function useStatistics() {
return {
days,
setDays,
isLoading: query.isPending,
isError: query.isError,
refetch: query.refetch,
isLoading: query.isPending || summaryQuery.isPending,
isError: query.isError || summaryQuery.isError,
refetch: () => {
summaryQuery.refetch();
query.refetch();
},
scrapedTed,
scrapedDocuments,
translatedNotices,