import type { FC } from '../../lib/teact/teact'; import React, { memo, useRef } from '../../lib/teact/teact'; import type { IconName } from '../../types/icons'; import buildClassName from '../../util/buildClassName'; import { formatIntegerCompact } from '../../util/textFormat'; import useContextMenuHandlers from '../../hooks/useContextMenuHandlers'; import useOldLang from '../../hooks/useOldLang'; import Button from '../ui/Button'; import Menu from '../ui/Menu'; import MenuItem from '../ui/MenuItem'; import styles from './ScrollDownButton.module.scss'; type OwnProps = { icon: IconName; ariaLabelLang: string; unreadCount?: number; onClick: VoidFunction; onReadAll?: VoidFunction; className?: string; }; const ScrollDownButton: FC = ({ icon, ariaLabelLang, unreadCount, onClick, onReadAll, className, }) => { const lang = useOldLang(); // eslint-disable-next-line no-null/no-null const ref = useRef(null); const { isContextMenuOpen, handleContextMenu, handleContextMenuClose, handleContextMenuHide, } = useContextMenuHandlers(ref, !onReadAll); return (
{Boolean(unreadCount) &&
{formatIntegerCompact(unreadCount)}
} {onReadAll && ( {lang('MarkAllAsRead')} )}
); }; export default memo(ScrollDownButton);