All files / src/app/HamburgerMenu/ProfileSettings ProfileNameDisplay.tsx

100% Statements 42/42
100% Branches 2/2
100% Functions 1/1
100% Lines 42/42

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 431x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x  
/**
 * @file ProfileNameDisplay.tsx
 * @module app/HamburgerMenu/ProfileSettings/ProfileNameDisplay
 *
 * @summary
 * Displays user's full name in the profile section.
 * Read-only display component with label.
 *
 * @example
 * ```tsx
 * <ProfileNameDisplay fullName="John Doe" />
 * ```
 */
 
import { Box, Typography } from '@mui/material';
import { useTranslation } from 'react-i18next';
 
interface ProfileNameDisplayProps {
  /** User's full name to display */
  fullName?: string;
}
 
/**
 * Profile name display component.
 *
 * @param props - Component props
 * @returns JSX element displaying user's name
 */
export default function ProfileNameDisplay({ fullName }: ProfileNameDisplayProps) {
  const { t } = useTranslation(['common']);
 
  return (
    <Box>
      <Typography variant="caption" color="text.secondary" sx={{ fontWeight: 600 }}>
        {t('common:name', 'Name')}
      </Typography>
      <Typography variant="body2">
        {fullName || '—'}
      </Typography>
    </Box>
  );
}