import {Flex, Text} from '@gravity-ui/uikit';
import type {StorageUsageSection} from '../../../../store/reducers/storageUsage/StorageUsage';
import {cn} from '../../../../utils/cn';
import {UNKNOWN_MEDIA_TYPE} from '../../../../utils/disks/normalizeMediaType';
import i18n from '../i18n';
import {MediaSectionSummary} from './MediaSectionSummary';
import './StorageUsageSections.scss';
const b = cn('ydb-storage-usage-sections');
interface StorageUsageSectionsProps {
hasMultipleMediaTypes: boolean;
sections: StorageUsageSection[];
isStorageUsageFetching: boolean;
}
function getMediaSectionLabel(mediaLabel: string) {
if (mediaLabel === UNKNOWN_MEDIA_TYPE) {
return i18n('value_storage-usage-media-unknown');
}
return mediaLabel;
}
export function StorageUsageSections({
hasMultipleMediaTypes,
sections,
isStorageUsageFetching,
}: StorageUsageSectionsProps) {
if (sections.length === 0 && !isStorageUsageFetching) {
return (
{i18n('context_storage-usage-empty')}
);
}
return sections.map((section) => (
{hasMultipleMediaTypes ? (
{getMediaSectionLabel(section.mediaLabel)}
) : null}
));
}