import { Skeleton } from '@rocket.chat/fuselage'; import { UserPresenceContext, useTooltipClose, useTooltipOpen, useUserPresence } from '@rocket.chat/ui-contexts'; import type { MouseEvent } from 'react'; import { useCallback, useContext, useMemo } from 'react'; import { UserStatusText } from '../components/UserStatusText'; export type UserStatusTooltipContentProps = { uid: string }; const UserStatusTooltipContent = ({ uid }: UserStatusTooltipContentProps) => { const presence = useUserPresence(uid); if (!presence) { return ; } return ; }; export function useUserStatusTooltip(uid: string | undefined, title?: string) { const userPresence = useContext(UserPresenceContext); const openTooltip = useTooltipOpen(); const closeTooltip = useTooltipClose(); const onMouseEnter = useCallback( (e: MouseEvent) => { const target = e.currentTarget; if (!uid) { return openTooltip(title, target); } openTooltip( , target, ); }, [uid, openTooltip, title, userPresence], ); return useMemo(() => ({ 'data-tooltip': '', onMouseEnter, 'onMouseLeave': closeTooltip }), [onMouseEnter, closeTooltip]); }