@lifi/widget
Version:
LI.FI Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.
26 lines • 1.16 kB
JavaScript
import { useTranslation } from 'react-i18next';
import { useWidgetConfig } from '../providers/WidgetProvider/WidgetProvider.js';
import { useSettings } from '../stores/settings/useSettings.js';
import { useSettingsActions } from '../stores/settings/useSettingsActions.js';
export const useLanguages = () => {
const { t, i18n } = useTranslation();
const { languages } = useWidgetConfig();
const { language } = useSettings(['language']);
const { setValue } = useSettingsActions();
const sortedLanguages = Object.keys(i18n.store.data).sort();
const selectedLanguageCode = sortedLanguages.includes(language || i18n.resolvedLanguage || '')
? language || i18n.resolvedLanguage
: languages?.default || languages?.allow?.[0];
return {
availableLanguages: sortedLanguages,
selectedLanguageCode: selectedLanguageCode,
selectedLanguageDisplayName: t('language.name', {
lng: selectedLanguageCode,
}),
setLanguageWithCode: (code) => {
setValue('language', code);
i18n.changeLanguage(code);
},
};
};
//# sourceMappingURL=useLanguages.js.map