chore: Add advanced Ollama settings to the Settings page

This commit is contained in:
n4ze3m 2024-05-18 21:08:04 +05:30
parent c4a249afc0
commit b87e91bd1f

View File

@ -14,15 +14,16 @@ import {
saveForRag saveForRag
} from "~/services/ollama" } from "~/services/ollama"
import { Skeleton, Radio, Select, Form, InputNumber } from "antd" import { Skeleton, Radio, Select, Form, InputNumber, Collapse } from "antd"
import { useDarkMode } from "~/hooks/useDarkmode" import { useDarkMode } from "~/hooks/useDarkmode"
import { SaveButton } from "~/components/Common/SaveButton" import { SaveButton } from "~/components/Common/SaveButton"
import { SUPPORTED_LANGUAGES } from "~/utils/supporetd-languages" import { SUPPORTED_LANGUAGES } from "~/utils/supporetd-languages"
import { useMessage } from "~/hooks/useMessage" import { useMessage } from "~/hooks/useMessage"
import { MoonIcon, SunIcon } from "lucide-react" import { MoonIcon, SunIcon } from "lucide-react"
import { useTranslation } from "react-i18next" import { Trans, useTranslation } from "react-i18next"
import { useI18n } from "@/hooks/useI18n" import { useI18n } from "@/hooks/useI18n"
import { TTSModeSettings } from "@/components/Option/Settings/tts-mode" import { TTSModeSettings } from "@/components/Option/Settings/tts-mode"
import { AdvanceOllamaSettings } from "@/components/Common/AdvanceOllamaSettings"
export const SettingsBody = () => { export const SettingsBody = () => {
const { t } = useTranslation("settings") const { t } = useTranslation("settings")
@ -180,8 +181,8 @@ export const SettingsBody = () => {
)} )}
</div> </div>
<div className="border border-gray-300 dark:border-gray-700 rounded p-4 bg-white dark:bg-[#171717]"> <div className="border flex flex-col gap-4 border-gray-300 dark:border-gray-700 rounded p-4 bg-white dark:bg-[#171717]">
<h2 className="text-md mb-4 font-semibold dark:text-white"> <h2 className="text-md font-semibold dark:text-white">
{t("ollamaSettings.heading")} {t("ollamaSettings.heading")}
</h2> </h2>
<input <input
@ -191,6 +192,37 @@ export const SettingsBody = () => {
onChange={(e) => setOllamaURL(e.target.value)} onChange={(e) => setOllamaURL(e.target.value)}
placeholder={t("ollamaSettings.settings.ollamaUrl.placeholder")} placeholder={t("ollamaSettings.settings.ollamaUrl.placeholder")}
/> />
<Collapse
size="small"
items={[
{
key: "1",
label: (
<div>
<h2 className="text-base font-semibold leading-7 text-gray-900 dark:text-white">
{t("ollamaSettings.settings.advanced.label")}
</h2>
<p className="text-xs text-gray-500 dark:text-gray-400 mb-4">
<Trans
i18nKey="settings:ollamaSettings.settings.advanced.help"
components={{
anchor: (
<a
href="https://github.com/n4ze3m/page-assist/blob/main/docs/connection-issue.md#solutions"
target="__blank"
className="text-blue-600 dark:text-blue-400"></a>
)
}}
/>
</p>
</div>
),
children: <AdvanceOllamaSettings />
}
]}
/>
<div className="flex justify-end"> <div className="flex justify-end">
<SaveButton <SaveButton
onClick={() => { onClick={() => {