import filesize from 'filesize'; import React, { useState } from 'react'; import { createTextField, ListTable, useAsync, useTranslation, Typography, styled, Checkbox, } from 'tushan'; import { fileFields } from '../fields'; import { request } from '../request'; const Row = styled.div` display: flex; gap: 20px; justify-content: end; `; export const FileList: React.FC = React.memo(() => { const { t } = useTranslation(); const [isOnlyChatFiles, setIsOnlyChatFiles] = useState(false); const { value: totalSize = 0 } = useAsync(async () => { const { data } = await request.get('/file/filesizeSum'); return data.totalSize ?? 0; }, []); return ( <> { setIsOnlyChatFiles(!isOnlyChatFiles); }} > Only show chat files {t('custom.file.fileTotalSize')}: {filesize(totalSize)} ); }); FileList.displayName = 'FileList';