diff --git a/frontend-modern/src/features/docker/DockerContainersTable.tsx b/frontend-modern/src/features/docker/DockerContainersTable.tsx index 64067d31cd..98b67f76db 100644 --- a/frontend-modern/src/features/docker/DockerContainersTable.tsx +++ b/frontend-modern/src/features/docker/DockerContainersTable.tsx @@ -2,6 +2,8 @@ import { For, Show, createMemo, type Component } from 'solid-js'; import { useSearchParams } from '@solidjs/router'; import type { FilterDef } from '@/components/shared/FilterBar'; import { UpdateButton } from '@/components/shared/ContainerUpdateBadge'; +import { ResponsiveMetricCell } from '@/components/shared/responsive'; +import { StackedMemoryBar } from '@/components/Workloads/StackedMemoryBar'; import { TableCard } from '@/components/shared/TableCard'; import { TableCardHeader } from '@/components/shared/TableCardHeader'; import { @@ -13,6 +15,7 @@ import { TableRow, } from '@/components/shared/Table'; import { asTrimmedString } from '@/utils/stringUtils'; +import { buildMetricKeyForUnifiedResource } from '@/utils/metricsKeys'; import { PLATFORM_HEALTH_FILTER_OPTIONS, PLATFORM_TABLE_BODY_CLASS, @@ -34,7 +37,6 @@ import { DockerResourceNameCell, dockerHostName, dockerJoinValues, - dockerNumberValue, dockerTextValue, type DockerNativeTableProps, } from './DockerNativeTableShared'; @@ -88,6 +90,25 @@ const runtimeSummary = (resource: Resource): string => { const containerState = (resource: Resource): string => dockerTextValue(resource.docker?.containerState || resource.status); +const isContainerRunning = (resource: Resource): boolean => + (asTrimmedString(resource.docker?.containerState || resource.status) ?? '').toLowerCase() === + 'running'; + +const finiteMetric = (value: number | undefined): number | undefined => + typeof value === 'number' && Number.isFinite(value) ? value : undefined; + +const metricFallback = () => ( +