Language switcher
LanguageSwitcher renders language options and reports the selected value. It is a
controlled component: your localization layer remains responsible for loading
translations, changing the active locale, and persisting the preference.
import { LanguageSwitcher } from "@ovok/native/language-switcher";
function LanguageSettings({ language, changeLanguage }) {
return (
<LanguageSwitcher
selectedLanguage={language}
onLanguageChange={changeLanguage}
>
<LanguageSwitcher.Option value="en_US">
<LanguageSwitcher.Option.RadioButton />
<LanguageSwitcher.Option.Label>English</LanguageSwitcher.Option.Label>
</LanguageSwitcher.Option>
<LanguageSwitcher.Option value="de_DE">
<LanguageSwitcher.Option.RadioButton />
<LanguageSwitcher.Option.Label>Deutsch</LanguageSwitcher.Option.Label>
</LanguageSwitcher.Option>
</LanguageSwitcher>
);
}
Use the same locale identifiers your translation system expects. Update the
controlled language value after the localization change succeeds, and present
loading or failure feedback in the surrounding screen. The SDK does not provide a
language catalog or translation files.