parent
a49cc06aa3
commit
59fc4422d3
@ -0,0 +1,26 @@
|
|||||||
|
import React from 'react';
|
||||||
|
|
||||||
|
import { NavDropdown } from 'react-bootstrap';
|
||||||
|
import LanguageNavItem from './LangNavItem';
|
||||||
|
import { HiLanguage } from 'react-icons/hi2';
|
||||||
|
|
||||||
|
// @ts-ignore
|
||||||
|
const LangDropdown = ({ changeLocale }) => {
|
||||||
|
return (
|
||||||
|
<NavDropdown title={<HiLanguage/>} id="language-dropdown" align='end' drop='down-centered'>
|
||||||
|
<LanguageNavItem
|
||||||
|
countryCode="FR"
|
||||||
|
languageKey="languageSelector.french"
|
||||||
|
onClick={() => changeLocale('fr')}
|
||||||
|
/>
|
||||||
|
<LanguageNavItem
|
||||||
|
countryCode="GB"
|
||||||
|
languageKey="languageSelector.english"
|
||||||
|
onClick={() => changeLocale('en')}
|
||||||
|
/>
|
||||||
|
{/* Ajoutez d'autres langues selon vos besoins */}
|
||||||
|
</NavDropdown>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default LangDropdown;
|
@ -0,0 +1,21 @@
|
|||||||
|
import React from 'react';
|
||||||
|
import { NavDropdown } from 'react-bootstrap';
|
||||||
|
import { FormattedMessage } from 'react-intl';
|
||||||
|
import ReactCountryFlag from 'react-country-flag';
|
||||||
|
|
||||||
|
/*@ts-ignore*/
|
||||||
|
const LanguageNavItem = ({ countryCode, languageKey, onClick }) => {
|
||||||
|
return (
|
||||||
|
<NavDropdown.Item onClick={onClick}>
|
||||||
|
<ReactCountryFlag
|
||||||
|
className="custom-flag"
|
||||||
|
countryCode={countryCode}
|
||||||
|
svg
|
||||||
|
style={{ margin: 'auto 10px 3px auto' }}
|
||||||
|
/>
|
||||||
|
<FormattedMessage id={languageKey} />
|
||||||
|
</NavDropdown.Item>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default LanguageNavItem;
|
Loading…
Reference in new issue