Spaces:
Running
Running
File size: 1,002 Bytes
f2bee8a |
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 |
import PropTypes from 'prop-types';
import React from 'react';
import locales from '@turbowarp/scratch-l10n';
import styles from './language-selector.css';
// supported languages to exclude from the menu, but allow as a URL option
const ignore = [];
const LanguageSelector = ({currentLocale, label, onChange}) => (
<select
aria-label={label}
className={styles.languageSelect}
value={currentLocale}
onChange={onChange}
>
{
Object.keys(locales)
.filter(l => !ignore.includes(l))
.map(locale => (
<option
key={locale}
value={locale}
>
{locales[locale].name}
</option>
))
}
</select>
);
LanguageSelector.propTypes = {
currentLocale: PropTypes.string,
label: PropTypes.string,
onChange: PropTypes.func
};
export default LanguageSelector;
|