import { useTranslation } from 'react-i18next'; import { Card, Tooltip } from 'antd'; import { ClockCircleOutlined, DatabaseOutlined, EyeInvisibleOutlined, EyeOutlined, GlobalOutlined, } from '@ant-design/icons'; import { SizeFormatter, TimeFormatter } from '@/utils'; import { activateOnKey } from '@/utils/a11y'; import type { Status } from '@/models/status'; interface SystemStripProps { status: Status; showIp: boolean; onToggleIp: () => void; } export default function SystemStrip({ status, showIp, onToggleIp }: SystemStripProps) { const { t } = useTranslation(); return (
{t('pages.index.uptime')}
Xray
{TimeFormatter.formatSecond(status.appStats.uptime)}
OS
{TimeFormatter.formatSecond(status.uptime)}
{t('pages.index.panel')}
{t('pages.index.memory')}
{SizeFormatter.sizeFormat(status.appStats.mem)}
{t('pages.index.threads')}
{status.appStats.threads}
{t('pages.index.ipAddresses')} {showIp ? ( ) : ( )}
{status.publicIP.ipv4}
{status.publicIP.ipv6}
); }