import React from "react"; import clsx from "clsx"; import { useTranslation } from "react-i18next"; import { UiLogicError } from "@/common"; export type TimelineSyncStatus = "syncing" | "synced" | "offline"; const SyncStatusBadge: React.FC<{ status: TimelineSyncStatus; style?: React.CSSProperties; className?: string; }> = ({ status, style, className }) => { const { t } = useTranslation(); return (
{(() => { switch (status) { case "syncing": { return ( <> {t("timeline.postSyncState.syncing")} ); } case "synced": { return ( <> {t("timeline.postSyncState.synced")} ); } case "offline": { return ( <> {t("timeline.postSyncState.offline")} ); } default: throw new UiLogicError("Unknown sync state."); } })()}
); }; export default SyncStatusBadge;