main #2

Merged
tdpeuter merged 129 commits from open-webui/open-webui:main into main 2024-03-20 21:29:12 +01:00
9 changed files with 382 additions and 367 deletions
Showing only changes of commit ccc1c81256 - Show all commits

View file

@ -45,7 +45,8 @@
<div> <div>
<div class=" mb-2.5 text-sm font-medium flex space-x-2 items-center"> <div class=" mb-2.5 text-sm font-medium flex space-x-2 items-center">
<div> <div>
{$WEBUI_NAME} Version {$WEBUI_NAME}
{$i18n.t('Version')}
</div> </div>
</div> </div>
<div class="flex w-full justify-between items-center"> <div class="flex w-full justify-between items-center">

View file

@ -49,7 +49,7 @@
type="button" type="button"
on:click={() => { on:click={() => {
show = !show; show = !show;
}}>{show ? 'Hide' : 'Show'}</button }}>{show ? $i18n.t('Hide') : $i18n.t('Show')}</button
> >
</div> </div>
@ -102,7 +102,7 @@
<button <button
class=" px-4 py-2 text-xs bg-gray-800 hover:bg-gray-900 dark:bg-gray-700 dark:hover:bg-gray-800 text-gray-100 transition rounded-md font-medium" class=" px-4 py-2 text-xs bg-gray-800 hover:bg-gray-900 dark:bg-gray-700 dark:hover:bg-gray-800 text-gray-100 transition rounded-md font-medium"
> >
Update password {$i18n.t('Update password')}
</button> </button>
</div> </div>
{/if} {/if}

View file

@ -145,7 +145,8 @@
</div> </div>
</div> </div>
<div class=" mb-1 text-xs text-gray-400 dark:text-gray-500"> <div class=" mb-1 text-xs text-gray-400 dark:text-gray-500">
WebUI will make requests to <span class=" text-gray-200">'{url}/models'</span> {$i18n.t('WebUI will make requests to')}
<span class=" text-gray-200">'{url}/models'</span>
</div> </div>
{/each} {/each}
</div> </div>

View file

@ -329,7 +329,7 @@
{getModels} {getModels}
{saveSettings} {saveSettings}
on:save={() => { on:save={() => {
toast.success('Settings saved successfully!'); toast.success($i18n.t('Settings saved successfully!'));
}} }}
/> />
{:else if selectedTab === 'models'} {:else if selectedTab === 'models'}
@ -338,28 +338,28 @@
<Connections <Connections
{getModels} {getModels}
on:save={() => { on:save={() => {
toast.success('Settings saved successfully!'); toast.success($i18n.t('Settings saved successfully!'));
}} }}
/> />
{:else if selectedTab === 'interface'} {:else if selectedTab === 'interface'}
<Interface <Interface
{saveSettings} {saveSettings}
on:save={() => { on:save={() => {
toast.success('Settings saved successfully!'); toast.success($i18n.t('Settings saved successfully!'));
}} }}
/> />
{:else if selectedTab === 'audio'} {:else if selectedTab === 'audio'}
<Audio <Audio
{saveSettings} {saveSettings}
on:save={() => { on:save={() => {
toast.success('Settings saved successfully!'); toast.success($i18n.t('Settings saved successfully!'));
}} }}
/> />
{:else if selectedTab === 'images'} {:else if selectedTab === 'images'}
<Images <Images
{saveSettings} {saveSettings}
on:save={() => { on:save={() => {
toast.success('Settings saved successfully!'); toast.success($i18n.t('Settings saved successfully!'));
}} }}
/> />
{:else if selectedTab === 'chats'} {:else if selectedTab === 'chats'}
@ -367,7 +367,7 @@
{:else if selectedTab === 'account'} {:else if selectedTab === 'account'}
<Account <Account
saveHandler={() => { saveHandler={() => {
toast.success('Settings saved successfully!'); toast.success($i18n.t('Settings saved successfully!'));
}} }}
/> />
{:else if selectedTab === 'about'} {:else if selectedTab === 'about'}

View file

@ -1,7 +1,9 @@
<script lang="ts"> <script lang="ts">
import { createEventDispatcher } from 'svelte'; import { createEventDispatcher, getContext } from 'svelte';
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
const i18n = getContext('i18n');
let showTagInput = false; let showTagInput = false;
let tagName = ''; let tagName = '';
</script> </script>
@ -9,12 +11,6 @@
<div class="flex space-x-1 pl-1.5"> <div class="flex space-x-1 pl-1.5">
{#if showTagInput} {#if showTagInput}
<div class="flex items-center"> <div class="flex items-center">
<input
bind:value={tagName}
class=" cursor-pointer self-center text-xs h-fit bg-transparent outline-none line-clamp-1 w-[4rem]"
placeholder="Add a tag"
/>
<button <button
type="button" type="button"
on:click={() => { on:click={() => {
@ -36,6 +32,11 @@
/> />
</svg> </svg>
</button> </button>
<input
bind:value={tagName}
class=" pl-2 cursor-pointer self-center text-xs h-fit bg-transparent outline-none line-clamp-1 w-[8rem]"
placeholder={$i18n.t('Add a tag')}
/>
</div> </div>
<!-- TODO: Tag Suggestions --> <!-- TODO: Tag Suggestions -->

View file

@ -347,5 +347,12 @@
"You": "Du", "You": "Du",
"You're a helpful assistant.": "Du bist ein hilfreicher Assistent.", "You're a helpful assistant.": "Du bist ein hilfreicher Assistent.",
"You're now logged in.": "Du bist nun eingeloggt.", "You're now logged in.": "Du bist nun eingeloggt.",
"PDF Extract Images (OCR)": "Text von Bilder aus PDFs extrahieren (OCR)" "PDF Extract Images (OCR)": "Text von Bilder aus PDFs extrahieren (OCR)",
"Update password": "Passwort aktualisieren",
"Settings saved successfully!": "Einstellungen erfolgreich gespeichert!",
"WebUI will make requests to": "Wenn aktiviert sendet WebUI externe Anfragen an",
"Add a tag": "Tag hinzugügen",
"Version": "Version",
"Enter a user message here": "Gib hier eine Benutzernachricht ein",
"Enter an assistant message here": "Gib hier eine Assistentennachricht ein"
} }

View file

@ -347,5 +347,12 @@
"You": "You", "You": "You",
"You're a helpful assistant.": "You're a helpful assistant.", "You're a helpful assistant.": "You're a helpful assistant.",
"You're now logged in.": "You're now logged in.", "You're now logged in.": "You're now logged in.",
"PDF Extract Images (OCR)": "PDF Extract Images (OCR)" "PDF Extract Images (OCR)": "PDF Extract Images (OCR)",
"Update password": "Update password",
"Settings saved successfully!": "Settings saved successfully!",
"WebUI will make requests to": "WebUI will make requests to",
"Add a tag": "Add a tag",
"Version": "Version",
"Enter a user message here": "Enter a user message here",
"Enter an assistant message here": "Enter an assistant message here"
} }

View file

@ -309,7 +309,6 @@
"Text-to-Speech Engine": "Система синтезу мови", "Text-to-Speech Engine": "Система синтезу мови",
"Tfs Z": "Tfs Z", "Tfs Z": "Tfs Z",
"Theme": "Тема", "Theme": "Тема",
"The requested action has been restricted as a security measure.": "Ця дія була обмежена з метою забезпечення безпеки.",
"This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Це забезпечує збереження ваших цінних розмов у безпечному бекенд-сховищі. Дякуємо!", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Це забезпечує збереження ваших цінних розмов у безпечному бекенд-сховищі. Дякуємо!",
"This setting does not sync across browsers or devices.": "Це налаштування не синхронізується між браузерами або пристроями.", "This setting does not sync across browsers or devices.": "Це налаштування не синхронізується між браузерами або пристроями.",
"Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "Порада: Оновіть кілька слотів змінних послідовно, натискаючи клавішу табуляції у вікні чату після кожної заміни.", "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "Порада: Оновіть кілька слотів змінних послідовно, натискаючи клавішу табуляції у вікні чату після кожної заміни.",

View file

@ -305,7 +305,6 @@
"Text-to-Speech Engine": "文本轉語音引擎", "Text-to-Speech Engine": "文本轉語音引擎",
"Tfs Z": "Tfs Z", "Tfs Z": "Tfs Z",
"Theme": "主題", "Theme": "主題",
"The requested action has been restricted as a security measure.": "出於安全考慮,請求的操作已被限制。",
"This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "這確保了您寶貴的對話安全地保存到您的後端數據庫。謝謝您!", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "這確保了您寶貴的對話安全地保存到您的後端數據庫。謝謝您!",
"This setting does not sync across browsers or devices.": "此設置不會在瀏覽器或設備之間同步。", "This setting does not sync across browsers or devices.": "此設置不會在瀏覽器或設備之間同步。",
"Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "提示:通過在每次替換後在聊天輸入中按 Tab 鍵連續更新多個變量槽。", "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "提示:通過在每次替換後在聊天輸入中按 Tab 鍵連續更新多個變量槽。",