You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

LanguageDetector.web.js 773B

12345678910111213141516171819202122232425262728293031323334
  1. /* global interfaceConfig */
  2. import Browser from 'i18next-browser-languagedetector';
  3. import ConfigLanguageDetector from './ConfigLanguageDetector';
  4. /**
  5. * List of detectors to use in their order.
  6. *
  7. * @type {[*]}
  8. */
  9. const detectors = [ 'querystring', 'localStorage', 'configLanguageDetector' ];
  10. /**
  11. * Allow i18n to detect the system language from the browser.
  12. */
  13. if (interfaceConfig.LANG_DETECTION) {
  14. detectors.push('navigator');
  15. }
  16. /**
  17. * The language detectors.
  18. */
  19. const browser = new Browser(null, {
  20. order: detectors,
  21. lookupQuerystring: 'lang',
  22. lookupLocalStorage: 'language',
  23. caches: [ 'localStorage' ]
  24. });
  25. /**
  26. * adds a language detector that just checks the config
  27. */
  28. browser.addDetector(ConfigLanguageDetector);
  29. export default browser;