diff --git a/packages/web/src/javascripts/Components/NoteView/NoteStatusIndicator.tsx b/packages/web/src/javascripts/Components/NoteView/NoteStatusIndicator.tsx new file mode 100644 index 000000000..44cef026f --- /dev/null +++ b/packages/web/src/javascripts/Components/NoteView/NoteStatusIndicator.tsx @@ -0,0 +1,67 @@ +import { ElementIds } from '@/Constants/ElementIDs' +import { classNames } from '@/Utils/ConcatenateClassNames' +import { useState } from 'react' +import Icon from '../Icon/Icon' + +export type NoteStatus = { + type: 'saving' | 'saved' | 'error' + message: string + desc?: string +} + +type Props = { + status: NoteStatus | undefined + syncTakingTooLong: boolean +} + +const NoteStatusIndicator = ({ status, syncTakingTooLong }: Props) => { + const [shouldShowTooltip, setShouldShowTooltip] = useState(false) + + if (!status) { + return null + } + + return ( +