ra-core
Version:
Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React
35 lines • 1.08 kB
JavaScript
import { useMemo } from 'react';
import { useI18nProvider } from './useI18nProvider';
import { useStore } from '../store/useStore';
/**
* Get the current locale and the ability to change it
*
* @example
*
* import { useLocaleState } from 'react-admin';
*
* const availableLanguages = {
* en: 'English',
* fr: 'Français',
* }
* const LocaleSwitcher = () => {
* const [locale, setLocale] = useLocaleState();
* return (
* <div>
* <div>Language</div>
* <Button disabled={locale === 'fr'} onClick={() => setLocale('fr')}>
* English
* </Button>
* <Button disabled={locale === 'en'} onClick={() => setLocale('en')}>
* French
* </Button>
* </div>
* );
* };
*/
export var useLocaleState = function () {
var i18nProvider = useI18nProvider();
var defaultLocale = useMemo(function () { return i18nProvider.getLocale(); }, [i18nProvider]);
return useStore('locale', defaultLocale);
};
//# sourceMappingURL=useLocaleState.js.map