forked from open-webui/open-webui
		
	main #2
					 9 changed files with 382 additions and 367 deletions
				
			
		|  | @ -45,7 +45,8 @@ | |||
| 		<div> | ||||
| 			<div class=" mb-2.5 text-sm font-medium flex space-x-2 items-center"> | ||||
| 				<div> | ||||
| 					{$WEBUI_NAME} Version | ||||
| 					{$WEBUI_NAME} | ||||
| 					{$i18n.t('Version')} | ||||
| 				</div> | ||||
| 			</div> | ||||
| 			<div class="flex w-full justify-between items-center"> | ||||
|  |  | |||
|  | @ -49,7 +49,7 @@ | |||
| 			type="button" | ||||
| 			on:click={() => { | ||||
| 				show = !show; | ||||
| 			}}>{show ? 'Hide' : 'Show'}</button | ||||
| 			}}>{show ? $i18n.t('Hide') : $i18n.t('Show')}</button | ||||
| 		> | ||||
| 	</div> | ||||
| 
 | ||||
|  | @ -102,7 +102,7 @@ | |||
| 			<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" | ||||
| 			> | ||||
| 				Update password | ||||
| 				{$i18n.t('Update password')} | ||||
| 			</button> | ||||
| 		</div> | ||||
| 	{/if} | ||||
|  |  | |||
|  | @ -145,7 +145,8 @@ | |||
| 								</div> | ||||
| 							</div> | ||||
| 							<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> | ||||
| 						{/each} | ||||
| 					</div> | ||||
|  |  | |||
|  | @ -329,7 +329,7 @@ | |||
| 						{getModels} | ||||
| 						{saveSettings} | ||||
| 						on:save={() => { | ||||
| 							toast.success('Settings saved successfully!'); | ||||
| 							toast.success($i18n.t('Settings saved successfully!')); | ||||
| 						}} | ||||
| 					/> | ||||
| 				{:else if selectedTab === 'models'} | ||||
|  | @ -338,28 +338,28 @@ | |||
| 					<Connections | ||||
| 						{getModels} | ||||
| 						on:save={() => { | ||||
| 							toast.success('Settings saved successfully!'); | ||||
| 							toast.success($i18n.t('Settings saved successfully!')); | ||||
| 						}} | ||||
| 					/> | ||||
| 				{:else if selectedTab === 'interface'} | ||||
| 					<Interface | ||||
| 						{saveSettings} | ||||
| 						on:save={() => { | ||||
| 							toast.success('Settings saved successfully!'); | ||||
| 							toast.success($i18n.t('Settings saved successfully!')); | ||||
| 						}} | ||||
| 					/> | ||||
| 				{:else if selectedTab === 'audio'} | ||||
| 					<Audio | ||||
| 						{saveSettings} | ||||
| 						on:save={() => { | ||||
| 							toast.success('Settings saved successfully!'); | ||||
| 							toast.success($i18n.t('Settings saved successfully!')); | ||||
| 						}} | ||||
| 					/> | ||||
| 				{:else if selectedTab === 'images'} | ||||
| 					<Images | ||||
| 						{saveSettings} | ||||
| 						on:save={() => { | ||||
| 							toast.success('Settings saved successfully!'); | ||||
| 							toast.success($i18n.t('Settings saved successfully!')); | ||||
| 						}} | ||||
| 					/> | ||||
| 				{:else if selectedTab === 'chats'} | ||||
|  | @ -367,7 +367,7 @@ | |||
| 				{:else if selectedTab === 'account'} | ||||
| 					<Account | ||||
| 						saveHandler={() => { | ||||
| 							toast.success('Settings saved successfully!'); | ||||
| 							toast.success($i18n.t('Settings saved successfully!')); | ||||
| 						}} | ||||
| 					/> | ||||
| 				{:else if selectedTab === 'about'} | ||||
|  |  | |||
|  | @ -1,7 +1,9 @@ | |||
| <script lang="ts"> | ||||
| 	import { createEventDispatcher } from 'svelte'; | ||||
| 	import { createEventDispatcher, getContext } from 'svelte'; | ||||
| 	const dispatch = createEventDispatcher(); | ||||
| 
 | ||||
| 	const i18n = getContext('i18n'); | ||||
| 
 | ||||
| 	let showTagInput = false; | ||||
| 	let tagName = ''; | ||||
| </script> | ||||
|  | @ -9,12 +11,6 @@ | |||
| <div class="flex space-x-1 pl-1.5"> | ||||
| 	{#if showTagInput} | ||||
| 		<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 | ||||
| 				type="button" | ||||
| 				on:click={() => { | ||||
|  | @ -36,6 +32,11 @@ | |||
| 					/> | ||||
| 				</svg> | ||||
| 			</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> | ||||
| 
 | ||||
| 		<!-- TODO: Tag Suggestions --> | ||||
|  |  | |||
|  | @ -347,5 +347,12 @@ | |||
| 	"You": "Du", | ||||
| 	"You're a helpful assistant.": "Du bist ein hilfreicher Assistent.", | ||||
| 	"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" | ||||
| } | ||||
|  |  | |||
|  | @ -347,5 +347,12 @@ | |||
| 	"You": "You", | ||||
| 	"You're a helpful assistant.": "You're a helpful assistant.", | ||||
| 	"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" | ||||
| } | ||||
|  |  | |||
|  | @ -309,7 +309,6 @@ | |||
| 	"Text-to-Speech Engine": "Система синтезу мови", | ||||
| 	"Tfs Z": "Tfs Z", | ||||
| 	"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 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.": "Порада: Оновіть кілька слотів змінних послідовно, натискаючи клавішу табуляції у вікні чату після кожної заміни.", | ||||
|  |  | |||
|  | @ -305,7 +305,6 @@ | |||
| 	"Text-to-Speech Engine": "文本轉語音引擎", | ||||
| 	"Tfs Z": "Tfs Z", | ||||
| 	"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 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 鍵連續更新多個變量槽。", | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue