UNPKG

@nanostores/i18n

Version:

A tiny (≈600 bytes) i18n library for React/Preact/Vue/Svelte

24 lines (18 loc) 506 B
import { atom, onStart } from 'nanostores' export function browser(opts) { let fallback = opts.fallback || 'en' let store = atom(fallback) onStart(store, () => { if (typeof navigator !== 'undefined') { let languages = navigator.languages if (!navigator.languages) languages = [navigator.language] for (let language of languages) { if (opts.available.includes(language)) { store.set(language) return } } } }) return store }