mirador
Version:
An open-source, web-based 'multi-up' viewer that supports zoom-pan-rotate functionality, ability to display/compare simple images, and images with annotations.
40 lines (37 loc) • 1.15 kB
JSX
import ListItemIcon from '@mui/material/ListItemIcon';
import ListItemText from '@mui/material/ListItemText';
import MenuItem from '@mui/material/MenuItem';
import CheckIcon from '@mui/icons-material/CheckSharp';
import PropTypes from 'prop-types';
/**
* LanguageSettings ~ the workspace sub menu to change the language
* of the application
*/
export function LanguageSettings({ handleClick, languages }) {
return (
<>
{languages.map((language) => (
<MenuItem
key={language.locale}
lang={language.locale}
onClick={() => {
handleClick(language.locale);
}}
>
<ListItemIcon>{language.current && <CheckIcon />}</ListItemIcon>
<ListItemText primaryTypographyProps={{ variant: 'body1' }}>{language.label}</ListItemText>
</MenuItem>
))}
</>
);
}
LanguageSettings.propTypes = {
handleClick: PropTypes.func.isRequired,
languages: PropTypes.arrayOf(
PropTypes.shape({
current: PropTypes.bool.isRequired,
label: PropTypes.string.isRequired,
locale: PropTypes.string.isRequired,
}),
).isRequired,
};