import moment from 'moment'; import { useCallback } from 'react'; import { useSetting } from '../contexts/SettingsContext'; import { useUserPreference } from '../contexts/UserContext'; const dayFormat = ['h:mm A', 'H:mm'] as const; export const useFormatTime = (): ((input: moment.MomentInput) => string) => { const clockMode = useUserPreference<1 | 2>('clockMode'); const format = useSetting('Message_TimeFormat') as string; const sameDay = clockMode !== undefined ? dayFormat[clockMode - 1] : format; return useCallback( (time) => { switch (clockMode) { case 1: case 2: return moment(time).format(sameDay); default: return moment(time).format(format); } }, [clockMode, format, sameDay], ); };