react-lang-selecta
v1.3.0
Published
Language selector component with flag emojies
Downloads
67
Maintainers
Readme
React Lang Selecta
⚠ Warning! ⚠ This lib is satirical, inspired by my personal experiences dealing with i18n and with front-end code.
Language selector component with random flag emojies.
You just give it a list of language codes and it gives you a select
element with each language as an option along with the flag of the language.
How to use
Like this:
<label>
Select a language please:
<LangSelecta langs={['es', 'zh', 'en', 'fr', 'ar']} />
</label>
Which should return something like this:
<label>
Select a language please:
<select>
<option value="fr">🇨🇦 Francese</option>
<option value="ar">🇱🇧 Arabe</option>
<option value="es">🇵🇪 Espaniol</option>
<option value="en">🇨🇦 Anglese</option>
<option value="zh">🇲🇴 Chinese</option>
</select>
</label>
You could also control the component, style it and use more props. Check out the storybook for more examples.
Features included
- Not knowing the difference between a language and a locale.
- Language names are all written in the international language so you don't get confused with foreign fonts.
- Random language flags, ensuring that all Nations are treated equally... as long as they're recognized by the ~~USA~~ Unicode Consortium.
- Leverages the power of popular dependencies such as
left-pad
to avoid reinventing the wheel. - Tests mocked component that calls a mocked hook to ensure that empty
div
equals emptydiv
snapshot. - Every file is called
index
to turn your code editor into a fun maze for the entire family to enjoy.
How to contribute
- Don't.
License
This library is distributed under the terms of the Licence Libre du Québec – Réciprocité (LiLiQ-R) 🄯⚜. A copy of the license can be found in the LICENCE.txt file or at https://forge.gouv.qc.ca/licence/liliq-r/.
Frequently Unasked Questions
Where did you get the data about the locales and the regions from?
- The data mainly comes from the Unicode CLDR v45, specifically through the Python Babel library.
- For locales not supported in Python's Babel, the data was obtained from Ethnologue. 🌞📖🙏
The data is wrong and I'm offended!
- Fix it upstream in the Unicode CLDR so that ~~I don't have to deal with it~~ the entire World can benefit from your contribution.
Why do you use the LiLiQ license if you're not in Québec?
- Why do you use the MIT license if you're not in Massachusetts?