import { memo, useMemo } from 'react' import { useTranslation } from 'react-i18next' import { useFormatTimeFromNow } from '@/hooks/use-format-time-from-now' import useTimestamp from '@/hooks/use-timestamp' import { useStore } from '../store' import { WorkflowVersion } from '../types' const RestoringTitle = () => { const { t } = useTranslation() const { formatTimeFromNow } = useFormatTimeFromNow() const { formatTime } = useTimestamp() const currentVersion = useStore(state => state.currentVersion) const isDraft = currentVersion?.version === WorkflowVersion.Draft const publishStatus = isDraft ? t('common.unpublished', { ns: 'workflow' }) : t('common.published', { ns: 'workflow' }) const versionName = useMemo(() => { if (isDraft) return t('versionHistory.currentDraft', { ns: 'workflow' }) return currentVersion?.marked_name || t('versionHistory.defaultName', { ns: 'workflow' }) }, [currentVersion, t, isDraft]) return (
{versionName} {t('common.viewOnly', { ns: 'workflow' })}
{ currentVersion && ( <> {publishStatus} · {`${formatTimeFromNow((isDraft ? currentVersion.updated_at : currentVersion.created_at) * 1000)} ${formatTime(currentVersion.created_at, 'HH:mm:ss')}`} · {currentVersion?.created_by?.name || ''} ) }
) } export default memo(RestoringTitle)