Files
everyone-can-use-english/enjoy/src/renderer/components/preferences/native-language-settings.tsx
an-lee d8231ca97c Feat: Settings for learning lang (#641)
* refactor settings

* refactor constants

* add settings for native/learning language

* setup langugage for transcribe

* use 2 letter code for echogarden

* AI commands support multiple language

* update languages constant

* fix sentry error

* fix context menu

* show camdict when only learning English

* add en-GB

* recording assess support multiple languages

* fix ai command

* refactor
2024-05-29 15:13:52 +08:00

57 lines
1.6 KiB
TypeScript

import { t } from "i18next";
import {
Select,
SelectTrigger,
SelectItem,
SelectValue,
SelectContent,
} from "@renderer/components/ui";
import { AppSettingsProviderContext } from "@renderer/context";
import { useContext } from "react";
import { LANGUAGES } from "@/constants";
export const NativeLanguageSettings = () => {
const { nativeLanguage, switchNativeLanguage } = useContext(
AppSettingsProviderContext
);
return (
<div className="flex items-start justify-between py-4">
<div className="">
<div className="mb-2">{t("nativeLanguage")}</div>
<div className="text-sm text-muted-foreground mb-2">
{LANGUAGES.find((lang) => lang.code === nativeLanguage)?.name}
</div>
</div>
<div className="">
<div className="flex items-center justify-end space-x-2 mb-2">
<Select
value={nativeLanguage}
onValueChange={(value) => {
switchNativeLanguage(value);
}}
>
<SelectTrigger className="text-xs">
<SelectValue>
{LANGUAGES.find((lang) => lang.code === nativeLanguage)?.name}
</SelectValue>
</SelectTrigger>
<SelectContent>
{LANGUAGES.map((lang) => (
<SelectItem
className="text-xs"
value={lang.code}
key={lang.code}
>
{lang.name}
</SelectItem>
))}
</SelectContent>
</Select>
</div>
</div>
</div>
);
};