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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | 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 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 1x 1x 1x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x | /**
* @file FooterMetaInfo.tsx
* @module app/footer/FooterMetaInfo
*
* @summary
* Footer metadata information component.
* Displays version, build ID, environment, language, and region information.
*
* @enterprise
* - Version and build tracking display
* - Environment identification
* - Language and region display
* - i18n support for all labels
* - Compact metadata presentation
* - Full TypeDoc coverage for meta information
*/
import { Typography, Stack } from '@mui/material';
import { useTranslation } from 'react-i18next';
interface FooterMetaInfoProps {
/** Application version number */
appVersion: string;
/** Build ID or commit hash */
buildId: string;
/** Environment name (e.g., "Production (Koyeb)") */
environment: string;
/** Current language code (e.g., "EN", "DE") */
currentLanguage: string;
/** Current region code (e.g., "DE") */
region: string;
}
/**
* Footer metadata information component.
*
* Displays version, build, environment, language, and region.
* Compact display suitable for footer status bar.
*
* @param props - Component props
* @returns JSX element rendering metadata information
*
* @example
* ```tsx
* <FooterMetaInfo
* appVersion="1.0.0"
* buildId="4a9c12f"
* environment="Production (Koyeb)"
* currentLanguage="EN"
* region="DE"
* />
* ```
*/
export default function FooterMetaInfo({
appVersion,
buildId,
environment,
currentLanguage,
region,
}: FooterMetaInfoProps) {
const { t } = useTranslation(['footer']);
return (
<Stack
direction="row"
spacing={1}
alignItems="center"
sx={{ flexShrink: 0 }}
>
{/* Compact meta string for status bar */}
<Typography
variant="caption"
color="text.secondary"
noWrap
sx={{ maxWidth: { xs: '100%', sm: '60%' } }}
>
© 2025 Smart Supply Pro • v{appVersion} • {t('footer:meta.build', 'Build')} {buildId} •{' '}
{environment} • {t('footer:meta.demoData', 'Demo data only')}
</Typography>
{/* Language and Region */}
<Typography variant="caption" color="text.secondary">
{currentLanguage}-{region}
</Typography>
</Stack>
);
}
|