mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-09-29 22:06:38 +08:00
fe3c6312f9
- Removed active alerts and lagging nodes from DashboardSummary and related types. - Updated DashboardOverview component to reflect changes in data structure. - Adjusted tests to align with the new dashboard overview structure, ensuring no active alerts are displayed. - Simplified the dashboard metrics and risk signals, focusing on essential health and capacity metrics. - Enhanced the WorldStage component to present updated traffic and capacity information. - Removed unused alert-related functions and components to streamline the codebase.
39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
import { apiRequest } from '@/lib/api/client';
|
|
|
|
import type { DashboardOverview } from '@/features/dashboard/types';
|
|
|
|
function arrayOrEmpty<T>(value: T[] | null | undefined) {
|
|
return Array.isArray(value) ? value : [];
|
|
}
|
|
|
|
function normalizeDashboardOverview(
|
|
overview: DashboardOverview | null | undefined,
|
|
): DashboardOverview | null {
|
|
if (!overview) {
|
|
return null;
|
|
}
|
|
|
|
return {
|
|
...overview,
|
|
nodes: arrayOrEmpty(overview.nodes),
|
|
distributions: {
|
|
...overview.distributions,
|
|
source_countries: arrayOrEmpty(overview.distributions?.source_countries),
|
|
status_codes: arrayOrEmpty(overview.distributions?.status_codes),
|
|
top_domains: arrayOrEmpty(overview.distributions?.top_domains),
|
|
},
|
|
trends: {
|
|
...overview.trends,
|
|
traffic_24h: arrayOrEmpty(overview.trends?.traffic_24h),
|
|
capacity_24h: arrayOrEmpty(overview.trends?.capacity_24h),
|
|
network_24h: arrayOrEmpty(overview.trends?.network_24h),
|
|
disk_io_24h: arrayOrEmpty(overview.trends?.disk_io_24h),
|
|
},
|
|
};
|
|
}
|
|
|
|
export async function getDashboardOverview() {
|
|
const overview = await apiRequest<DashboardOverview>('/dashboard/overview');
|
|
return normalizeDashboardOverview(overview);
|
|
}
|