chore: format

This commit is contained in:
Timothy Jaeryang Baek 2026-02-12 16:13:48 -06:00
parent 3238d94a0e
commit 2a11175f22
65 changed files with 204 additions and 92 deletions

View file

@ -355,4 +355,3 @@ async def chat_completed(request: Request, form_data: dict, user: Any):
return result
except Exception as e:
raise Exception(f"Error: {e}")

View file

@ -4125,8 +4125,7 @@ async def streaming_chat_response_handler(response, ctx):
code = sanitize_code(code)
if CODE_INTERPRETER_BLOCKED_MODULES:
blocking_code = textwrap.dedent(
f"""
blocking_code = textwrap.dedent(f"""
import builtins
BLOCKED_MODULES = {CODE_INTERPRETER_BLOCKED_MODULES}
@ -4142,8 +4141,7 @@ async def streaming_chat_response_handler(response, ctx):
return _real_import(name, globals, locals, fromlist, level)
builtins.__import__ = restricted_import
"""
)
""")
code = blocking_code + "\n" + code
if (

View file

@ -782,7 +782,6 @@ def extract_urls(text: str) -> list[str]:
return url_pattern.findall(text)
async def cleanup_response(
response: Optional[aiohttp.ClientResponse],
session: Optional[aiohttp.ClientSession],
@ -799,7 +798,9 @@ async def stream_wrapper(response, session, content_handler=None):
This is more reliable than BackgroundTask which may not run if client disconnects.
"""
try:
stream = content_handler(response.content) if content_handler else response.content
stream = (
content_handler(response.content) if content_handler else response.content
)
async for chunk in stream:
yield chunk
finally:

View file

@ -353,12 +353,12 @@ async def get_tools(
headers = include_user_info_headers(headers, user)
metadata = extra_params.get("__metadata__", {})
if metadata and metadata.get("chat_id"):
headers[FORWARD_SESSION_INFO_HEADER_CHAT_ID] = metadata.get(
"chat_id"
headers[FORWARD_SESSION_INFO_HEADER_CHAT_ID] = (
metadata.get("chat_id")
)
if metadata and metadata.get("message_id"):
headers[FORWARD_SESSION_INFO_HEADER_MESSAGE_ID] = metadata.get(
"message_id"
headers[FORWARD_SESSION_INFO_HEADER_MESSAGE_ID] = (
metadata.get("message_id")
)
def make_tool_function(

View file

@ -1679,7 +1679,7 @@ export interface ModelMeta {
profile_image_url?: string;
}
export interface ModelParams { }
export interface ModelParams {}
export type GlobalModelConfig = ModelConfig[];

View file

@ -508,82 +508,80 @@
{/if}
<div class="flex {model.is_active ? '' : 'text-gray-500'}">
<div class="flex items-center gap-0.5">
{#if shiftKey && model.write_access}
<Tooltip
content={model?.meta?.hidden
? $i18n.t('Show')
: $i18n.t('Hide')}
>
<button
class="self-center w-fit text-sm p-1.5 dark:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
type="button"
on:click={(e) => {
e.stopPropagation();
hideModelHandler(model);
}}
>
{#if model?.meta?.hidden}
<EyeSlash />
{:else}
<Eye />
{/if}
</button>
</Tooltip>
<Tooltip content={$i18n.t('Delete')}>
<button
class="self-center w-fit text-sm p-1.5 dark:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
type="button"
on:click={(e) => {
e.stopPropagation();
deleteModelHandler(model);
}}
>
<GarbageBin />
</button>
</Tooltip>
{:else}
<ModelMenu
user={$user}
{model}
writeAccess={model.write_access}
editHandler={() => {
goto(
`/workspace/models/edit?id=${encodeURIComponent(model.id)}`
);
}}
shareHandler={() => {
shareModelHandler(model);
}}
cloneHandler={() => {
cloneModelHandler(model);
}}
exportHandler={() => {
exportModelHandler(model);
}}
hideHandler={() => {
<div class="flex items-center gap-0.5">
{#if shiftKey && model.write_access}
<Tooltip
content={model?.meta?.hidden ? $i18n.t('Show') : $i18n.t('Hide')}
>
<button
class="self-center w-fit text-sm p-1.5 dark:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
type="button"
on:click={(e) => {
e.stopPropagation();
hideModelHandler(model);
}}
pinModelHandler={() => {
pinModelHandler(model.id);
}}
copyLinkHandler={() => {
copyLinkHandler(model);
}}
deleteHandler={() => {
selectedModel = model;
showModelDeleteConfirm = true;
}}
onClose={() => {}}
>
<div
class="self-center w-fit p-1 text-sm dark:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
>
<EllipsisHorizontal className="size-5" />
</div>
</ModelMenu>
{/if}
{#if model?.meta?.hidden}
<EyeSlash />
{:else}
<Eye />
{/if}
</button>
</Tooltip>
<Tooltip content={$i18n.t('Delete')}>
<button
class="self-center w-fit text-sm p-1.5 dark:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
type="button"
on:click={(e) => {
e.stopPropagation();
deleteModelHandler(model);
}}
>
<GarbageBin />
</button>
</Tooltip>
{:else}
<ModelMenu
user={$user}
{model}
writeAccess={model.write_access}
editHandler={() => {
goto(
`/workspace/models/edit?id=${encodeURIComponent(model.id)}`
);
}}
shareHandler={() => {
shareModelHandler(model);
}}
cloneHandler={() => {
cloneModelHandler(model);
}}
exportHandler={() => {
exportModelHandler(model);
}}
hideHandler={() => {
hideModelHandler(model);
}}
pinModelHandler={() => {
pinModelHandler(model.id);
}}
copyLinkHandler={() => {
copyLinkHandler(model);
}}
deleteHandler={() => {
selectedModel = model;
showModelDeleteConfirm = true;
}}
onClose={() => {}}
>
<div
class="self-center w-fit p-1 text-sm dark:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
>
<EllipsisHorizontal className="size-5" />
</div>
</ModelMenu>
{/if}
</div>
</div>

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "المحادثات",
"Check Again": "تحقق مرة اخرى",
"Check for updates": "تحقق من التحديثات",
@ -1820,6 +1821,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "أذونات المحادثة",
"Chat Tags Auto-Generation": "الإنشاء التلقائي لطاچ المحادثة",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "المحادثات",
"Check Again": "تحقق مرة أخرى",
"Check for updates": "تحقق من التحديثات",
@ -1820,6 +1821,7 @@
"Toggle whether current connection is active.": "",
"Token": "رمز",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "مفرط في التفاصيل",
"Tool created successfully": "تم إنشاء الأداة بنجاح",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Разрешения за чат",
"Chat Tags Auto-Generation": "Автоматично генериране на тагове за чат",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Чатове",
"Check Again": "Проверете Още Веднъж",
"Check for updates": "Проверка за актуализации",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Токен",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Прекалено многословно",
"Tool created successfully": "Инструментът е създаден успешно",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "চ্যাটসমূহ",
"Check Again": "আবার চেক করুন",
"Check for updates": "নতুন আপডেট আছে কিনা চেক করুন",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "ཁ་བརྡའི་དབང་ཚད།",
"Chat Tags Auto-Generation": "ཁ་བརྡའི་རྟགས་རང་འགུལ་བཟོ་སྐྲུན།",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "ཁ་བརྡ།",
"Check Again": "ཡང་བསྐྱར་ཞིབ་དཔྱད།",
"Check for updates": "གསར་སྒྱུར་འཚོལ་ཞིབ།",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "",
"Token": "ཊོཀ་ཀེན།",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "རིང་དྲགས།",
"Tool created successfully": "ལག་ཆ་ལེགས་པར་བཟོས་ཟིན།",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Razgovori",
"Check Again": "Provjeri ponovo",
"Check for updates": "Provjeri za ažuriranja",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Permisos del xat",
"Chat Tags Auto-Generation": "Generació automàtica d'etiquetes del xat",
"Chat unshared successfully.": "El xat s'ha deixat de compartir correctament",
"chats": "",
"Chats": "Xats",
"Check Again": "Comprovar-ho de nou",
"Check for updates": "Comprovar si hi ha actualitzacions",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "Alterna si la connexió actual està activa.",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "El nombre de tokens és estimat i pot no reflectir l'ús real de l'API.",
"tokens": "",
"Tokens": "Tokens",
"Too verbose": "Massa explicit",
"Tool created successfully": "Eina creada correctament",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Mga panaghisgot",
"Check Again": "Susiha pag-usab",
"Check for updates": "Susiha ang mga update",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Oprávnění konverzace",
"Chat Tags Auto-Generation": "Automatické generování štítků konverzace",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Konverzace",
"Check Again": "Zkontrolovat znovu",
"Check for updates": "Zkontrolovat aktualizace",
@ -1818,6 +1819,7 @@
"Toggle whether current connection is active.": "Přepnout, zda je aktuální připojení aktivní.",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Příliš rozvláčné",
"Tool created successfully": "Nástroj byl úspěšně vytvořen.",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Chat tilladelser",
"Chat Tags Auto-Generation": "Chat tags automatisk generering",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chats",
"Check Again": "Tjek igen",
"Check for updates": "Søg efter opdateringer",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "Skift om nuværende forbindelse er aktiv.",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "For ordrigt",
"Tool created successfully": "Værktøj oprettet.",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Chat-Berechtigungen",
"Chat Tags Auto-Generation": "Automatische Chat-Tag-Generierung",
"Chat unshared successfully.": "Chat-Freigabe erfolgreich aufgehoben",
"chats": "",
"Chats": "Chats",
"Check Again": "Erneut prüfen",
"Check for updates": "Nach Updates suchen",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "Umschalten, ob die aktuelle Verbindung aktiv ist.",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "Token-Anzahlen sind Schätzwerte und entsprechen möglicherweise nicht der tatsächlichen API-Nutzung.",
"tokens": "",
"Tokens": "Token",
"Too verbose": "Zu ausführlich",
"Tool created successfully": "Werkzeug erfolgreich erstellt",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chats",
"Check Again": "Check Again",
"Check for updates": "Check for updates",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Δικαιώματα Συνομιλίας",
"Chat Tags Auto-Generation": "Αυτόματη Γενιά Ετικετών Συνομιλίας",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Συνομιλίες",
"Check Again": "Ελέγξτε ξανά",
"Check for updates": "Έλεγχος για ενημερώσεις",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Πολύ λεπτομερές",
"Tool created successfully": "Το εργαλείο δημιουργήθηκε με επιτυχία",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "",
"Check Again": "",
"Check for updates": "",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "",
"Check Again": "",
"Check for updates": "",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Permisos del Chat",
"Chat Tags Auto-Generation": "AutoGeneración de Etiquetas de Chat",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chats",
"Check Again": "Verifica de nuevo",
"Check for updates": "Buscar actualizaciones",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "Alternar si la conexión actual está activa",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Demasiado detallado",
"Tool created successfully": "Herramienta creada correctamente",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Vestluse õigused",
"Chat Tags Auto-Generation": "Vestluse siltide automaatnegeneerimine",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Vestlused",
"Check Again": "Kontrolli uuesti",
"Check for updates": "Kontrolli uuendusi",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "Toggle whether current connection is aktiivne.",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Liiga paljusõnaline",
"Tool created successfully": "Tööriist edukalt loodud",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Txat Baimenak",
"Chat Tags Auto-Generation": "Txat Etiketen Auto-Sorkuntza",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Txatak",
"Check Again": "Egiaztatu Berriro",
"Check for updates": "Bilatu eguneraketak",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Tokena",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Luzeegia",
"Tool created successfully": "Tresna ongi sortu da",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "مجوزهای گفتگو",
"Chat Tags Auto-Generation": "تولید خودکار برچسب\u200cهای گفتگو",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "گفتگو\u200cها",
"Check Again": "بررسی دوباره",
"Check for updates": "بررسی به\u200cروزرسانی",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "تغییر وضعیت فعال بودن اتصال فعلی.",
"Token": "توکن",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "خیلی طولانی",
"Tool created successfully": "ابزار با موفقیت ایجاد شد",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Keskustelun käyttöoikeudet",
"Chat Tags Auto-Generation": "Keskustelutunnisteiden automaattinen luonti",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Keskustelut",
"Check Again": "Tarkista uudelleen",
"Check for updates": "Tarkista päivitykset",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "Vaihda, onko nykyinen yhteys aktiivinen",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Liian puhelias",
"Tool created successfully": "Työkalu luotu onnistuneesti",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Autorisations de la conversation",
"Chat Tags Auto-Generation": "Génération automatique des tags",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Conversations",
"Check Again": "Vérifiez à nouveau.",
"Check for updates": "Vérifier les mises à jour disponibles",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "Afficher/masquer si la connection courante est active",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Trop détaillé",
"Tool created successfully": "L'outil a été créé avec succès",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Autorisations de la conversation",
"Chat Tags Auto-Generation": "Génération automatique des tags",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Conversations",
"Check Again": "Vérifiez à nouveau.",
"Check for updates": "Vérifier les mises à jour disponibles",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "Afficher/masquer si la connection courante est active",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Trop détaillé",
"Tool created successfully": "L'outil a été créé avec succès",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Permisos do Chat",
"Chat Tags Auto-Generation": "Auto-xeneración das Etiquetas para o Chat",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chats",
"Check Again": "Verifica de novo",
"Check for updates": "Verificar actualizacions",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Demasiado detalliado",
"Tool created successfully": "ferramenta creada con éxito",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "צ'אטים",
"Check Again": "בדוק שוב",
"Check for updates": "בדוק עדכונים",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "सभी चैट",
"Check Again": "फिर से जाँचो",
"Check for updates": "अपडेट के लिए जाँच",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Razgovori",
"Check Again": "Provjeri ponovo",
"Check for updates": "Provjeri za ažuriranja",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Beszélgetési engedélyek",
"Chat Tags Auto-Generation": "Beszélgetés címkék automatikus generálása",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Beszélgetések",
"Check Again": "Ellenőrzés újra",
"Check for updates": "Frissítések keresése",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Túl bőbeszédű",
"Tool created successfully": "Eszköz sikeresen létrehozva",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Obrolan",
"Check Again": "Periksa Lagi",
"Check for updates": "Memeriksa pembaruan",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "Alat berhasil dibuat",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Ceadanna Comhrá",
"Chat Tags Auto-Generation": "Clibeanna Comhrá Auto-Giniúint",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Comhráite",
"Check Again": "Seiceáil Arís",
"Check for updates": "Seiceáil nuashonruithe",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "Athraigh an bhfuil an nasc reatha gníomhach.",
"Token": "Comhartha",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Ró-fhocal",
"Tool created successfully": "Uirlis cruthaithe go rathúil",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Permessi chat",
"Chat Tags Auto-Generation": "Generazione automatica dei tag chat",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chat",
"Check Again": "Controlla di nuovo",
"Check for updates": "Controlla aggiornamenti",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "Attiva/disattiva la connessione attuale quando è attiva",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Troppo prolisso",
"Tool created successfully": "Strumento creato con successo",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "チャットの許可",
"Chat Tags Auto-Generation": "チャットタグの自動生成",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "チャット",
"Check Again": "再確認",
"Check for updates": "アップデートを確認",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "この接続の有効性を切り替える",
"Token": "トークン",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "冗長すぎる",
"Tool created successfully": "ツールが正常に作成されました",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "ჩატის ნებართვები",
"Chat Tags Auto-Generation": "ჩატის ჭდეების ავტოგენერაცია",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "საუბრები",
"Check Again": "თავიდან შემოწმება",
"Check for updates": "განახლებების შემოწმება",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "გადართვა, აქტიურია, თუ არა მიმდინარე კავშირი.",
"Token": "კოდი",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "მეტისმეტად ბევრი სეტყობინება",
"Tool created successfully": "ხელსაწყო წარმატებით შეიქმნა",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Isumar n yidiwenniyen",
"Chat Tags Auto-Generation": "Asirew awurman n tebzimin",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Idiwenniyen",
"Check Again": "Senqed tikelt nniḍen",
"Check for updates": "Nadi ileqman",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "Sken ma yella tuqqna tamirant d turmidt.",
"Token": "Ajiṭun",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "Yettwarna ufecku akken iwata",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "채팅 권한",
"Chat Tags Auto-Generation": "채팅 태그 자동생성",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "채팅",
"Check Again": "다시 확인",
"Check for updates": "업데이트 확인",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "현재 연결 활성화 여부 설정",
"Token": "토큰",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "너무 장황합니다",
"Tool created successfully": "성공적으로 도구가 생성되었습니다.",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Pokalbiai",
"Check Again": "Patikrinti iš naujo",
"Check for updates": "Patikrinti atnaujinimus",
@ -1818,6 +1819,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "Įrankis sukurtas sėkmingai",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Tērzēšanas atļaujas",
"Chat Tags Auto-Generation": "Tērzēšanas tagu automātiska ģenerēšana",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Tērzēšanas",
"Check Again": "Pārbaudīt vēlreiz",
"Check for updates": "Pārbaudīt atjauninājumus",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "Pārslēgt, vai pašreizējais savienojums ir aktīvs.",
"Token": "Tokens",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Pārāk gari",
"Tool created successfully": "Rīks veiksmīgi izveidots",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Perbualan",
"Check Again": "Semak Kembali",
"Check for updates": "Semak kemas kini",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "Alat berjaya dibuat",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Tillatelser for chat",
"Chat Tags Auto-Generation": "Auto-generering av chatetiketter",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chatter",
"Check Again": "Sjekk på nytt",
"Check for updates": "Sjekk for oppdateringer",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "For omfattende",
"Tool created successfully": "Verktøy opprettet",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Chattoestemmingen",
"Chat Tags Auto-Generation": "Chatlabels automatisch genereren",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chats",
"Check Again": "Controleer Opnieuw",
"Check for updates": "Controleer op updates",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Te langdradig",
"Tool created successfully": "Gereedschap succesvol aangemaakt",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "ਗੱਲਾਂ",
"Check Again": "ਮੁੜ ਜਾਂਚ ਕਰੋ",
"Check for updates": "ਅੱਪਡੇਟ ਲਈ ਜਾਂਚ ਕਰੋ",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Uprawnienia czatu",
"Chat Tags Auto-Generation": "Automatyczne generowanie tagów czatu",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Czaty",
"Check Again": "Sprawdź ponownie",
"Check for updates": "Sprawdź dostępność aktualizacji",
@ -1818,6 +1819,7 @@
"Toggle whether current connection is active.": "Przełącz aktywność połączenia.",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Zbyt gadatliwy",
"Tool created successfully": "Narzędzie utworzone pomyślnie",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Permissões de Chat",
"Chat Tags Auto-Generation": "Tags de Chat Geradas Automaticamente",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chats",
"Check Again": "Verificar Novamente",
"Check for updates": "Verificar atualizações",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "Alterna se a conexão atual está ativa.",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Muito detalhado",
"Tool created successfully": "Ferramenta criada com sucesso",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Conversas",
"Check Again": "Verifique novamente",
"Check for updates": "Verificar atualizações",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "",
"Token": "",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "Generare automată a etichetelor de conversație",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Conversații",
"Check Again": "Verifică din Nou",
"Check for updates": "Verifică actualizări",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Prea detaliat",
"Tool created successfully": "Instrumentul a fost creat cu succes",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Разрешения для чата",
"Chat Tags Auto-Generation": "Автогенерация тегов чата",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Чаты",
"Check Again": "Перепроверьте ещё раз",
"Check for updates": "Проверить обновления",
@ -1818,6 +1819,7 @@
"Toggle whether current connection is active.": "Переключить, активно ли текущее соединение.",
"Token": "Токен",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Слишком многословно",
"Tool created successfully": "Инструмент успешно создан",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "Automatické generovanie značiek chatu",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chaty",
"Check Again": "Skontroluj znovu",
"Check for updates": "Skontrolovať aktualizácie",
@ -1818,6 +1819,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Príliš rozvláčne",
"Tool created successfully": "Nástroj bol úspešne vytvorený.",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Дозволе ћаскања",
"Chat Tags Auto-Generation": "Самостварање ознака ћаскања",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Ћаскања",
"Check Again": "Провери поново",
"Check for updates": "Потражи ажурирања",
@ -1817,6 +1818,7 @@
"Toggle whether current connection is active.": "",
"Token": "Жетон",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Преопширно",
"Tool created successfully": "Алат направљен успешно",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Chattbehörigheter",
"Chat Tags Auto-Generation": "Automatisk generering av chatt-taggar",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chattar",
"Check Again": "Kontrollera igen",
"Check for updates": "Sök efter uppdateringar",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "Växla om aktuell anslutning är aktiv.",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "För utförlig",
"Tool created successfully": "Verktyget skapades framgångsrikt",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "สิทธิ์การแชท",
"Chat Tags Auto-Generation": "การสร้างแท็กแชทอัตโนมัติ",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "แชท",
"Check Again": "ตรวจสอบอีกครั้ง",
"Check for updates": "ตรวจสอบการอัปเดต",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "สลับการเปิดใช้งานการเชื่อมต่อปัจจุบัน",
"Token": "โทเค็น",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "ละเอียดเกินไป",
"Tool created successfully": "สร้างเครื่องมือเรียบร้อยแล้ว",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Çatlar",
"Check Again": "Ýene Barla",
"Check for updates": "Täzelenmeleri barla",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "",
"Tool created successfully": "",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Sohbet İzinleri",
"Chat Tags Auto-Generation": "Sohbet Etiketleri Otomatik Oluşturma",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Sohbetler",
"Check Again": "Tekrar Kontrol Et",
"Check for updates": "Güncellemeleri kontrol et",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Birim",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Çok ayrıntılı",
"Tool created successfully": "Araç başarıyla oluşturuldu",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "سۆھبەت ھوقۇقلىرى",
"Chat Tags Auto-Generation": "سۆھبەت تەغلىرىنى ئاپتوماتىك ھاسىل قىلىش",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "سۆھبەتلەر",
"Check Again": "قايتا تەكشۈرۈش",
"Check for updates": "يېڭىلاشنى تەكشۈرۈش",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "ھازىرقى ئۇلىنىشنىڭ ئاكتىپ ياكى ئەمەسلىكىنى ئالماشتۇرۇش.",
"Token": "ئىم",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "بەك ئۇزۇن",
"Tool created successfully": "قورال مۇۋەپپەقىيەتلىك قۇرۇلدى",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Дозволи чату",
"Chat Tags Auto-Generation": "Автоматична генерація тегів чату",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Чати",
"Check Again": "Перевірити ще раз",
"Check for updates": "Перевірити оновлення",
@ -1818,6 +1819,7 @@
"Toggle whether current connection is active.": "",
"Token": "Токен",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Занадто докладно",
"Tool created successfully": "Інструмент успішно створено",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "",
"Chat Tags Auto-Generation": "چیٹ ٹیگز خودکار تخلیق",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "بات چیت",
"Check Again": "دوبارہ چیک کریں",
"Check for updates": "تازہ ترین معلومات کے لیے چیک کریں",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "ٹوکَن",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "بہت زیادہ طویل",
"Tool created successfully": "اوزار کامیابی کے ساتھ تخلیق کیا گیا",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Чат рухсатномалари",
"Chat Tags Auto-Generation": "Чат тегларини автоматик яратиш",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Суҳбатлар",
"Check Again": "Яна текширинг",
"Check for updates": "Янгиланишларни текширинг",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Токен",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Жуда батафсил",
"Tool created successfully": "Асбоб муваффақиятли яратилди",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Chat ruxsatnomalari",
"Chat Tags Auto-Generation": "Chat teglarini avtomatik yaratish",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Suhbatlar",
"Check Again": "Yana tekshiring",
"Check for updates": "Yangilanishlarni tekshiring",
@ -1816,6 +1817,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Juda batafsil",
"Tool created successfully": "Asbob muvaffaqiyatli yaratildi",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "Quyền Chat",
"Chat Tags Auto-Generation": "Tự động tạo Thẻ Chat",
"Chat unshared successfully.": "",
"chats": "",
"Chats": "Chat",
"Check Again": "Kiểm tra Lại",
"Check for updates": "Kiểm tra cập nhật",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "",
"tokens": "",
"Tokens": "",
"Too verbose": "Quá dài dòng",
"Tool created successfully": "Tool đã được tạo thành công",

View file

@ -273,6 +273,7 @@
"Chat Permissions": "對話權限",
"Chat Tags Auto-Generation": "自動產生對話標籤",
"Chat unshared successfully.": "已成功取消分享對話。",
"chats": "",
"Chats": "對話",
"Check Again": "再次檢查",
"Check for updates": "檢查更新",
@ -1815,6 +1816,7 @@
"Toggle whether current connection is active.": "切換目前連線的啟用狀態",
"Token": "Token",
"Token counts are estimates and may not reflect actual API usage": "Token 數為估算值,可能與實際 API 用量不一致",
"tokens": "",
"Tokens": "Token 數",
"Too verbose": "太過冗長",
"Tool created successfully": "成功建立工具",

View file

@ -361,9 +361,9 @@ export const generateInitialsImage = (name) => {
const initials =
sanitizedName.length > 0
? sanitizedName[0] +
(sanitizedName.split(' ').length > 1
? sanitizedName[sanitizedName.lastIndexOf(' ') + 1]
: '')
(sanitizedName.split(' ').length > 1
? sanitizedName[sanitizedName.lastIndexOf(' ') + 1]
: '')
: '';
ctx.fillText(initials.toUpperCase(), canvas.width / 2, canvas.height / 2);
@ -519,10 +519,10 @@ export const compareVersion = (latest, current) => {
return current === '0.0.0'
? false
: current.localeCompare(latest, undefined, {
numeric: true,
sensitivity: 'case',
caseFirst: 'upper'
}) < 0;
numeric: true,
sensitivity: 'case',
caseFirst: 'upper'
}) < 0;
};
export const extractCurlyBraceWords = (text) => {