feat(ui): enhance model select modal UX and modal traffic lights (#1111)
* feat(model-select-modal): highlight added models and support bulk selection - Add addedModelValues prop to highlight already-added models with primary color - Sort models alphabetically per provider, with added models floated to top - Replace green highlight with primary brand color (orange #E56A4A) - Use check icon (10px) inline with model name instead of check_circle - Replace Done button with info bar explaining click-to-toggle behavior - Add ProviderIcon to provider group headers replacing colored dot - Import ProviderIcon, remove unused Button import * feat(cli-tools): wire addedModelValues, onDeselect, and auto-save to model select modals - Pass selectedModels as addedModelValues to ModelSelectModal in OpenCode and Copilot cards - Add onDeselect handler to remove model from list on second click - Set closeOnSelect=false to allow bulk model selection - Remove manual setModalOpen(false) from onSelect callbacks - Add saveModels() silent auto-save triggered on modal close (OpenCodeToolCard) - Use useRef to track latest selectedModels in closure-safe way * feat(modal): functional traffic light close button with hover icon and tooltip - Make red dot a clickable button that closes the modal - Show ✕ icon inside red dot on hover via group-hover opacity transition - Gray out yellow and green dots (cursor-not-allowed, no tooltip) - Increase dot size from w-3 h-3 to w-4 h-4 - Add Tooltip with brand-matched color #FF5F56 on red dot - Remove X close button from modal header * feat(tooltip): add color prop for themed tooltip backgrounds * feat(i18n): add translations for model select info bar and close tooltip - Add 'Click to add, click again to remove. Changes are saved automatically.' to all 32 locales - Add 'Close' translation to all 32 locales * fix(ui): address code review feedback on modal UX and auto-save - Modal: remove showCloseButton prop, use showTrafficLights for header condition, hide traffic lights on mobile (hidden md:flex), add mobile X button (md:hidden) with aria-label, add aria-label and title on traffic light close button - OpenCodeToolCard: validate activeModel membership before saving — fallback to models[0] or empty string; clear/reassign activeModel on deselect when removed model was the active one - CopilotToolCard: add useRef + selectedModelsRef, add saveModels() using /api/cli-tools/copilot-settings, wire auto-save on modal close - ModelSelectModal: fix JSX formatting — separate info bar closing div from Search comment onto its own line
This commit is contained in:
committed by
GitHub
parent
4098f91ac5
commit
1fd3132647
@@ -12,7 +12,7 @@
|
||||
"Logout": "تسجيل الخروج",
|
||||
"Login": "تسجيل الدخول",
|
||||
"Providers": "الموفرون",
|
||||
"Usage": "الاستخدام",
|
||||
"Usage": "الإحصائيات",
|
||||
"API Key": "مفتاح API",
|
||||
"Connected": "متصل",
|
||||
"Disconnected": "غير متصل",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "داكن",
|
||||
"Auto": "تلقائي",
|
||||
"Endpoint": "نقطة نهاية",
|
||||
"Providers": "الموفرون",
|
||||
"Combos": "تراكيب",
|
||||
"Usage": "الإحصائيات",
|
||||
"Quota Tracker": "متتبع الحصة",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "أدوات CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "لا يوجد وكيل",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "أسماء المضيفين/النطاقات المفصولة بفواصل لتجاوز الوكيل.",
|
||||
"Test proxy URL": "اختبر عنوان URL الوكيل",
|
||||
"Apply": "تطبيق",
|
||||
"Proxy settings applied": "تم تطبيق إعدادات الوكيل",
|
||||
"Proxy enabled": "الوكيل مفعل",
|
||||
"Proxy disabled": "الوكيل معطل",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "استخدم Antigravity IDE و GitHub Copilot → مع أي موفر/نموذج من 9Router",
|
||||
"How it works:": "كيف يعمل:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "طلب Antigravity/Copilot IDE → إعادة توجيه DNS إلى localhost:443 → يعترض وكيل MITM → 9Router → الرد إلى Antigravity/Copilot",
|
||||
"API Key": "مفتاح API",
|
||||
"No API keys — create one in Keys page": "لا توجد مفاتيح API — قم بإنشاء واحدة في صفحة المفاتيح",
|
||||
"sk_9router (default)": "sk_9router (افتراضي)",
|
||||
"Server started": "تم بدء الخادم",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "كلمة مرور Sudo مطلوبة",
|
||||
"Enter your sudo password to start/stop MITM server": "أدخل كلمة مرور sudo للبدء/الإيقاف من خادم MITM",
|
||||
"Sudo Password": "كلمة مرور Sudo",
|
||||
"Confirm": "تأكيد"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "انقر للإضافة، انقر مرة أخرى للإزالة. يتم حفظ التغييرات تلقائيًا."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "লগ আউট",
|
||||
"Login": "লগ ইন",
|
||||
"Providers": "সরবরাহকারী",
|
||||
"Usage": "ব্যবহার",
|
||||
"Usage": "ব্যবহারের পরিসংখ্যান",
|
||||
"API Key": "API কী",
|
||||
"Connected": "সংযুক্ত",
|
||||
"Disconnected": "বিচ্ছিন্ন",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "গাঢ়",
|
||||
"Auto": "স্বয়ংক্রিয়",
|
||||
"Endpoint": "এন্ডপয়েন্ট",
|
||||
"Providers": "সরবরাহকারী",
|
||||
"Combos": "কম্বো",
|
||||
"Usage": "ব্যবহারের পরিসংখ্যান",
|
||||
"Quota Tracker": "কোটা ট্র্যাকার",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "সরঞ্জাম",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "কোন প্রক্সি নেই",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "প্রক্সি বাইপাস করার জন্য কমা-পৃথক হোস্টনাম/ডোমেইন।",
|
||||
"Test proxy URL": "প্রক্সি URL পরীক্ষা করুন",
|
||||
"Apply": "প্রয়োগ করুন",
|
||||
"Proxy settings applied": "প্রক্সি সেটিংস প্রয়োগ করা হয়েছে",
|
||||
"Proxy enabled": "প্রক্সি সক্ষম",
|
||||
"Proxy disabled": "প্রক্সি অক্ষম",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Antigravity IDE এবং GitHub Copilot ব্যবহার করুন → 9Router থেকে যেকোনো সরবরাহকারী/মডেলের সাথে",
|
||||
"How it works:": "এটি কীভাবে কাজ করে:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE অনুরোধ → DNS কে localhost:443 তে রিডিরেক্ট করুন → MITM প্রক্সি ইন্টারসেপ্ট করে → 9Router → Antigravity/Copilot এ প্রতিক্রিয়া",
|
||||
"API Key": "API কী",
|
||||
"No API keys — create one in Keys page": "কোন API কী নেই — Keys পৃষ্ঠায় একটি তৈরি করুন",
|
||||
"sk_9router (default)": "sk_9router (ডিফল্ট)",
|
||||
"Server started": "সার্ভার শুরু হয়েছে",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo পাসওয়ার্ড প্রয়োজন",
|
||||
"Enter your sudo password to start/stop MITM server": "MITM সার্ভার শুরু/বন্ধ করতে আপনার sudo পাসওয়ার্ড প্রবেশ করুন",
|
||||
"Sudo Password": "Sudo পাসওয়ার্ড",
|
||||
"Confirm": "নিশ্চিত করুন"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "যোগ করতে ক্লিক করুন, সরাতে আবার ক্লিক করুন। পরিবর্তনগুলি স্বয়ংক্রিয়ভাবে সংরক্ষিত হয়।"
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Odhlásit se",
|
||||
"Login": "Přihlásit se",
|
||||
"Providers": "Poskytovatelé",
|
||||
"Usage": "Použití",
|
||||
"Usage": "Statistika",
|
||||
"API Key": "Klíč API",
|
||||
"Connected": "Připojeno",
|
||||
"Disconnected": "Odpojeno",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Tmavý",
|
||||
"Auto": "Automaticky",
|
||||
"Endpoint": "Koncový bod",
|
||||
"Providers": "Poskytovatelé",
|
||||
"Combos": "Kombinace",
|
||||
"Usage": "Statistika",
|
||||
"Quota Tracker": "Sledování kvót",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Nástroje CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Bez proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Čárkou oddělené názvy hostitelů/domény pro obejití proxy.",
|
||||
"Test proxy URL": "Testovat URL proxy",
|
||||
"Apply": "Aplikovat",
|
||||
"Proxy settings applied": "Nastavení proxy aplikováno",
|
||||
"Proxy enabled": "Proxy povolena",
|
||||
"Proxy disabled": "Proxy zakázána",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Použijte Antigravity IDE a GitHub Copilot → s JAKÝMKOLIV poskytovatelem/modelem z 9Router",
|
||||
"How it works:": "Jak to funguje:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Požadavek Antigravity/Copilot IDE → Přesměrování DNS na localhost:443 → Proxy MITM zachycuje → 9Router → odpověď na Antigravity/Copilot",
|
||||
"API Key": "Klíč API",
|
||||
"No API keys — create one in Keys page": "Žádné klíče API — vytvořte jeden na stránce Klíče",
|
||||
"sk_9router (default)": "sk_9router (výchozí)",
|
||||
"Server started": "Server spuštěn",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Je vyžadováno heslo Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "Zadejte heslo sudo pro spuštění/zastavení serveru MITM",
|
||||
"Sudo Password": "Heslo sudo",
|
||||
"Confirm": "Potvrdit"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Kliknutím přidáte, dalším kliknutím odeberete. Změny se ukládají automaticky."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Log ud",
|
||||
"Login": "Log ind",
|
||||
"Providers": "Udbydere",
|
||||
"Usage": "Forbrug",
|
||||
"Usage": "Forbrugsstatistik",
|
||||
"API Key": "API-nøgle",
|
||||
"Connected": "Forbundet",
|
||||
"Disconnected": "Afbrudt",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Mørk",
|
||||
"Auto": "Automatisk",
|
||||
"Endpoint": "Slutpunkt",
|
||||
"Providers": "Udbydere",
|
||||
"Combos": "Kombinationer",
|
||||
"Usage": "Forbrugsstatistik",
|
||||
"Quota Tracker": "Kvotetracker",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Værktøjer",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Ingen proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Kommaseparerede værtsnavne/domæner for at omgå proxyen.",
|
||||
"Test proxy URL": "Test proxy-URL",
|
||||
"Apply": "Anvend",
|
||||
"Proxy settings applied": "Proxyindstillinger anvendt",
|
||||
"Proxy enabled": "Proxy aktiveret",
|
||||
"Proxy disabled": "Proxy deaktiveret",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Brug Antigravity IDE & GitHub Copilot → med ENHVER udbyder/model fra 9Router",
|
||||
"How it works:": "Sådan virker det:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE-anmodning → DNS-omdirigering til localhost:443 → MITM-proxy aflytter → 9Router → svar til Antigravity/Copilot",
|
||||
"API Key": "API-nøgle",
|
||||
"No API keys — create one in Keys page": "Ingen API-nøgler — opret en på Keys-siden",
|
||||
"sk_9router (default)": "sk_9router (standard)",
|
||||
"Server started": "Server startet",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo-adgangskode påkrævet",
|
||||
"Enter your sudo password to start/stop MITM server": "Indtast din sudo-adgangskode for at starte/stoppe MITM-server",
|
||||
"Sudo Password": "Sudo-adgangskode",
|
||||
"Confirm": "Bekræft"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Klik for at tilføje, klik igen for at fjerne. Ændringer gemmes automatisk."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Abmelden",
|
||||
"Login": "Anmelden",
|
||||
"Providers": "Anbieter",
|
||||
"Usage": "Verwendung",
|
||||
"Usage": "Statistiken",
|
||||
"API Key": "API-Schlüssel",
|
||||
"Connected": "Verbunden",
|
||||
"Disconnected": "Getrennt",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Dunkel",
|
||||
"Auto": "Automatisch",
|
||||
"Endpoint": "Endpunkt",
|
||||
"Providers": "Anbieter",
|
||||
"Combos": "Kombinationen",
|
||||
"Usage": "Statistiken",
|
||||
"Quota Tracker": "Kontingenttracker",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "CLI-Tools",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Kein Proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Kommagetrennte Hostnamen/Domänen zum Umgehen des Proxys.",
|
||||
"Test proxy URL": "Proxy-URL testen",
|
||||
"Apply": "Anwenden",
|
||||
"Proxy settings applied": "Proxy-Einstellungen angewendet",
|
||||
"Proxy enabled": "Proxy aktiviert",
|
||||
"Proxy disabled": "Proxy deaktiviert",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Verwenden Sie Antigravity IDE und GitHub Copilot → mit JEDEM Anbieter/Modell von 9Router",
|
||||
"How it works:": "So funktioniert es:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE-Anforderung → DNS-Umleitung auf localhost:443 → MITM-Proxy abfangen → 9Router → Antwort auf Antigravity/Copilot",
|
||||
"API Key": "API-Schlüssel",
|
||||
"No API keys — create one in Keys page": "Keine API-Schlüssel — erstellen Sie einen auf der Seite Schlüssel",
|
||||
"sk_9router (default)": "sk_9router (Standard)",
|
||||
"Server started": "Server gestartet",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo-Passwort erforderlich",
|
||||
"Enter your sudo password to start/stop MITM server": "Geben Sie Ihr Sudo-Passwort ein, um den MITM-Server zu starten/stoppen",
|
||||
"Sudo Password": "Sudo-Passwort",
|
||||
"Confirm": "Bestätigen"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Klicken zum Hinzufügen, erneut klicken zum Entfernen. Änderungen werden automatisch gespeichert."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Έξοδος",
|
||||
"Login": "Σύνδεση",
|
||||
"Providers": "Παρόχοι",
|
||||
"Usage": "Χρήση",
|
||||
"Usage": "Στατιστικά χρήσης",
|
||||
"API Key": "Κλειδί API",
|
||||
"Connected": "Συνδεδεμένο",
|
||||
"Disconnected": "Αποσυνδεδεμένο",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Σκοτεινό",
|
||||
"Auto": "Αυτόματο",
|
||||
"Endpoint": "Τελικό σημείο",
|
||||
"Providers": "Παρόχοι",
|
||||
"Combos": "Συνδυασμοί",
|
||||
"Usage": "Στατιστικά χρήσης",
|
||||
"Quota Tracker": "Παρακολούθηση ποσόστωσης",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Εργαλεία",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Χωρίς διακομιστή μεσολάβησης",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Ονόματα κεντρικών υπολογιστών/τομείς χωρισμένοι με κόμμα για να παραστούν τον διακομιστή μεσολάβησης.",
|
||||
"Test proxy URL": "Δοκιμή URL διακομιστή μεσολάβησης",
|
||||
"Apply": "Εφαρμογή",
|
||||
"Proxy settings applied": "Ρυθμίσεις διακομιστή μεσολάβησης εφαρμόστηκαν",
|
||||
"Proxy enabled": "Διακομιστής μεσολάβησης ενεργοποιημένος",
|
||||
"Proxy disabled": "Διακομιστής μεσολάβησης απενεργοποιημένος",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Χρησιμοποιήστε Antigravity IDE & GitHub Copilot → με ΟΠΟΙΟΝΔΗΠΟΤΕ πάροχο/μοντέλο από 9Router",
|
||||
"How it works:": "Πώς λειτουργεί:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Αίτημα Antigravity/Copilot IDE → Ανακατεύθυνση DNS στο localhost:443 → Ο διακομιστής μεσολάβησης MITM παρεμβαίνει → 9Router → απάντηση στο Antigravity/Copilot",
|
||||
"API Key": "Κλειδί API",
|
||||
"No API keys — create one in Keys page": "Δεν υπάρχουν κλειδιά API — δημιουργήστε ένα στη σελίδα Keys",
|
||||
"sk_9router (default)": "sk_9router (προεπιλεγμένο)",
|
||||
"Server started": "Ο διακομιστής ξεκίνησε",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Απαιτείται κωδικός πρόσβασης Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "Εισαγάγετε τον κωδικό πρόσβασης sudo για να ξεκινήσετε/διακόψετε τον διακομιστή MITM",
|
||||
"Sudo Password": "Κωδικός πρόσβασης Sudo",
|
||||
"Confirm": "Επιβεβαίωση"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Κάντε κλικ για προσθήκη, κάντε ξανά κλικ για αφαίρεση. Οι αλλαγές αποθηκεύονται αυτόματα."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Cerrar sesión",
|
||||
"Login": "Iniciar sesión",
|
||||
"Providers": "Proveedores",
|
||||
"Usage": "Uso",
|
||||
"Usage": "Estadísticas",
|
||||
"API Key": "Clave API",
|
||||
"Connected": "Conectado",
|
||||
"Disconnected": "Desconectado",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Oscuro",
|
||||
"Auto": "Automático",
|
||||
"Endpoint": "Punto final",
|
||||
"Providers": "Proveedores",
|
||||
"Combos": "Combinaciones",
|
||||
"Usage": "Estadísticas",
|
||||
"Quota Tracker": "Rastreador de cuota",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Herramientas CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Sin proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Nombres de host/dominios separados por comas para omitir el proxy.",
|
||||
"Test proxy URL": "Prueba URL del proxy",
|
||||
"Apply": "Aplicar",
|
||||
"Proxy settings applied": "Configuración de proxy aplicada",
|
||||
"Proxy enabled": "Proxy habilitado",
|
||||
"Proxy disabled": "Proxy deshabilitado",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Use Antigravity IDE y GitHub Copilot → con CUALQUIER proveedor/modelo de 9Router",
|
||||
"How it works:": "Cómo funciona:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Solicitud de Antigravity/Copilot IDE → Redireccionamiento DNS a localhost:443 → El proxy MITM intercepta → 9Router → respuesta a Antigravity/Copilot",
|
||||
"API Key": "Clave API",
|
||||
"No API keys — create one in Keys page": "Sin claves API — cree una en la página Claves",
|
||||
"sk_9router (default)": "sk_9router (predeterminado)",
|
||||
"Server started": "Servidor iniciado",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Contraseña de Sudo requerida",
|
||||
"Enter your sudo password to start/stop MITM server": "Ingrese su contraseña de sudo para iniciar/detener el servidor MITM",
|
||||
"Sudo Password": "Contraseña de sudo",
|
||||
"Confirm": "Confirmar"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Haz clic para agregar, haz clic de nuevo para eliminar. Los cambios se guardan automáticamente."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Kirjaudu ulos",
|
||||
"Login": "Kirjaudu sisään",
|
||||
"Providers": "Palveluntarjoajat",
|
||||
"Usage": "Käyttö",
|
||||
"Usage": "Käyttötilastot",
|
||||
"API Key": "API-avain",
|
||||
"Connected": "Yhdistetty",
|
||||
"Disconnected": "Yhteys katkaistu",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Tumma",
|
||||
"Auto": "Automaattinen",
|
||||
"Endpoint": "Pääteeksi",
|
||||
"Providers": "Palveluntarjoajat",
|
||||
"Combos": "Yhdistelmät",
|
||||
"Usage": "Käyttötilastot",
|
||||
"Quota Tracker": "Kiintiyden seuranta",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Työkalut",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Ei välityspalvelinta",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Pilkulla erotetut isäntänimet/etäisyydet välityspalvelimen ohittamiseksi.",
|
||||
"Test proxy URL": "Testaa välityspalvelimen URL",
|
||||
"Apply": "Käytä",
|
||||
"Proxy settings applied": "Välityspalvelimen asetukset käytössä",
|
||||
"Proxy enabled": "Välityspalvelin otettu käyttöön",
|
||||
"Proxy disabled": "Välityspalvelin poistettu käytöstä",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Käytä Antigravity IDE:tä ja GitHub Copilot:ia → minkä tahansa palveluntarjoajan/mallin kanssa 9Routerista",
|
||||
"How it works:": "Kuinka se toimii:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE-pyyntö → DNS-uudelleenohjaus localhost:443:iin → MITM-välityspalvelin sieppaa → 9Router → vastaus Antigravity/Copilot:ille",
|
||||
"API Key": "API-avain",
|
||||
"No API keys — create one in Keys page": "Ei API-avaimia — luo yksi Keys-sivulla",
|
||||
"sk_9router (default)": "sk_9router (oletus)",
|
||||
"Server started": "Palvelin käynnistetty",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo-salasana vaaditaan",
|
||||
"Enter your sudo password to start/stop MITM server": "Kirjoita sudo-salasanasi MITM-palvelimen käynnistämiseksi/pysäyttämiseksi",
|
||||
"Sudo Password": "Sudo-salasana",
|
||||
"Confirm": "Vahvista"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Napsauta lisätäksesi, napsauta uudelleen poistaaksesi. Muutokset tallennetaan automaattisesti."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Déconnexion",
|
||||
"Login": "Connexion",
|
||||
"Providers": "Fournisseurs",
|
||||
"Usage": "Utilisation",
|
||||
"Usage": "Statistiques",
|
||||
"API Key": "Clé API",
|
||||
"Connected": "Connecté",
|
||||
"Disconnected": "Déconnecté",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Sombre",
|
||||
"Auto": "Automatique",
|
||||
"Endpoint": "Point final",
|
||||
"Providers": "Fournisseurs",
|
||||
"Combos": "Combinaisons",
|
||||
"Usage": "Statistiques",
|
||||
"Quota Tracker": "Suivi des quotas",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Outils CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Pas de proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Noms d'hôtes/domaines séparés par des virgules pour contourner le proxy.",
|
||||
"Test proxy URL": "Tester l'URL du proxy",
|
||||
"Apply": "Appliquer",
|
||||
"Proxy settings applied": "Paramètres de proxy appliqués",
|
||||
"Proxy enabled": "Proxy activé",
|
||||
"Proxy disabled": "Proxy désactivé",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Utilisez Antigravity IDE et GitHub Copilot → avec N'IMPORTE QUEL fournisseur/modèle de 9Router",
|
||||
"How it works:": "Comment ça marche :",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Demande Antigravity/Copilot IDE → Redirection DNS vers localhost:443 → Le proxy MITM intercepte → 9Router → réponse à Antigravity/Copilot",
|
||||
"API Key": "Clé API",
|
||||
"No API keys — create one in Keys page": "Aucune clé API — créez-en une dans la page Clés",
|
||||
"sk_9router (default)": "sk_9router (par défaut)",
|
||||
"Server started": "Serveur démarré",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Mot de passe Sudo requis",
|
||||
"Enter your sudo password to start/stop MITM server": "Entrez votre mot de passe sudo pour démarrer/arrêter le serveur MITM",
|
||||
"Sudo Password": "Mot de passe sudo",
|
||||
"Confirm": "Confirmer"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Cliquez pour ajouter, cliquez à nouveau pour supprimer. Les modifications sont enregistrées automatiquement."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "התנתקות",
|
||||
"Login": "כניסה",
|
||||
"Providers": "ספקים",
|
||||
"Usage": "שימוש",
|
||||
"Usage": "סטטיסטיקה",
|
||||
"API Key": "מפתח API",
|
||||
"Connected": "מחובר",
|
||||
"Disconnected": "מנותק",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "אפל",
|
||||
"Auto": "אוטומטי",
|
||||
"Endpoint": "נקודת קצה",
|
||||
"Providers": "ספקים",
|
||||
"Combos": "שילובים",
|
||||
"Usage": "סטטיסטיקה",
|
||||
"Quota Tracker": "עוקב הקצאה",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "כלים CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "ללא פרוקסי",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "שמות משדר/תחומים מופרדים בפסיקים לעקיפת הפרוקסי.",
|
||||
"Test proxy URL": "בדוק URL פרוקסי",
|
||||
"Apply": "החל",
|
||||
"Proxy settings applied": "הגדרות פרוקסי הופעלו",
|
||||
"Proxy enabled": "פרוקסי הופעל",
|
||||
"Proxy disabled": "פרוקסי מבוטל",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "השתמש ב-Antigravity IDE ו-GitHub Copilot → עם כל ספק/מודל מ-9Router",
|
||||
"How it works:": "איך זה עובד:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "בקשת Antigravity/Copilot IDE → הפניה DNS ל-localhost:443 → פרוקסי MITM חוטף → 9Router → תגובה ל-Antigravity/Copilot",
|
||||
"API Key": "מפתח API",
|
||||
"No API keys — create one in Keys page": "אין מפתחות API — צור אחד בעמוד Keys",
|
||||
"sk_9router (default)": "sk_9router (ברירת מחדל)",
|
||||
"Server started": "השרת התחיל",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "סיסמת Sudo נדרשת",
|
||||
"Enter your sudo password to start/stop MITM server": "הזן את סיסמת sudo שלך כדי להתחיל/עצור שרת MITM",
|
||||
"Sudo Password": "סיסמת Sudo",
|
||||
"Confirm": "אישור"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "לחץ להוספה, לחץ שוב להסרה. השינויים נשמרים אוטומטית."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "लॉग आउट",
|
||||
"Login": "लॉगिन",
|
||||
"Providers": "प्रदाता",
|
||||
"Usage": "उपयोग",
|
||||
"Usage": "उपयोग के आंकड़े",
|
||||
"API Key": "API कुंजी",
|
||||
"Connected": "जुड़ा हुआ",
|
||||
"Disconnected": "डिस्कनेक्ट किया गया",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "अंधेरा",
|
||||
"Auto": "स्वचालित",
|
||||
"Endpoint": "एंडपॉइंट",
|
||||
"Providers": "प्रदाता",
|
||||
"Combos": "कॉम्बो",
|
||||
"Usage": "उपयोग के आंकड़े",
|
||||
"Quota Tracker": "कोटा ट्रैकर",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "उपकरण",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "कोई प्रॉक्सी नहीं",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "प्रॉक्सी को बायपास करने के लिए अल्पविराम से अलग की गई होस्टनाम/डोमेन।",
|
||||
"Test proxy URL": "प्रॉक्सी URL का परीक्षण करें",
|
||||
"Apply": "लागू करें",
|
||||
"Proxy settings applied": "प्रॉक्सी सेटिंग्स लागू की गई",
|
||||
"Proxy enabled": "प्रॉक्सी सक्षम",
|
||||
"Proxy disabled": "प्रॉक्सी अक्षम",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Antigravity IDE और GitHub Copilot का उपयोग करें → 9Router से किसी भी प्रदाता/मॉडल के साथ",
|
||||
"How it works:": "यह कैसे काम करता है:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE अनुरोध → DNS को localhost:443 में पुनर्निर्देशित करें → MITM प्रॉक्सी इंटरसेप्ट करता है → 9Router → Antigravity/Copilot को प्रतिक्रिया",
|
||||
"API Key": "API कुंजी",
|
||||
"No API keys — create one in Keys page": "कोई API कुंजी नहीं — Keys पृष्ठ में एक बनाएं",
|
||||
"sk_9router (default)": "sk_9router (डिफ़ॉल्ट)",
|
||||
"Server started": "सर्वर शुरू किया गया",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo पासवर्ड आवश्यक है",
|
||||
"Enter your sudo password to start/stop MITM server": "MITM सर्वर शुरू/रोकने के लिए अपना sudo पासवर्ड दर्ज करें",
|
||||
"Sudo Password": "Sudo पासवर्ड",
|
||||
"Confirm": "पुष्टि करें"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "जोड़ने के लिए क्लिक करें, हटाने के लिए फिर से क्लिक करें। परिवर्तन स्वचालित रूप से सहेजे जाते हैं।"
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Kijelentkezés",
|
||||
"Login": "Bejelentkezés",
|
||||
"Providers": "Szolgáltatók",
|
||||
"Usage": "Használat",
|
||||
"Usage": "Használati statisztika",
|
||||
"API Key": "API-kulcs",
|
||||
"Connected": "Csatlakoztatva",
|
||||
"Disconnected": "Leválasztva",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Sötét",
|
||||
"Auto": "Automatikus",
|
||||
"Endpoint": "Végpont",
|
||||
"Providers": "Szolgáltatók",
|
||||
"Combos": "Kombinációk",
|
||||
"Usage": "Használati statisztika",
|
||||
"Quota Tracker": "Kvóta nyomkövetés",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Eszközök",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Nincs proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Vesszővel elválasztott gazdanév/tartomány a proxy megkerüléséhez.",
|
||||
"Test proxy URL": "Proxy URL-cím tesztelése",
|
||||
"Apply": "Alkalmazás",
|
||||
"Proxy settings applied": "Proxy beállítások alkalmazva",
|
||||
"Proxy enabled": "Proxy engedélyezve",
|
||||
"Proxy disabled": "Proxy letiltva",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Antigravity IDE és GitHub Copilot használata → az 9Router bármelyik szolgáltatójával/modelljével",
|
||||
"How it works:": "Hogyan működik:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE kérés → DNS átirányítás a localhost:443-ra → MITM proxy elfogja → 9Router → válasz Antigravity/Copilot-nak",
|
||||
"API Key": "API-kulcs",
|
||||
"No API keys — create one in Keys page": "Nincsenek API-kulcsok — hozzon létre egyet a Keys oldalon",
|
||||
"sk_9router (default)": "sk_9router (alapértelmezett)",
|
||||
"Server started": "Szerver elindult",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo jelszó szükséges",
|
||||
"Enter your sudo password to start/stop MITM server": "Adja meg sudo jelszavát a MITM szerver indításához/leállításához",
|
||||
"Sudo Password": "Sudo jelszó",
|
||||
"Confirm": "Megerősítés"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Kattintson a hozzáadáshoz, kattintson újra az eltávolításhoz. A változtatások automatikusan mentésre kerülnek."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Keluar",
|
||||
"Login": "Masuk",
|
||||
"Providers": "Penyedia",
|
||||
"Usage": "Penggunaan",
|
||||
"Usage": "Statistik Penggunaan",
|
||||
"API Key": "Kunci API",
|
||||
"Connected": "Terhubung",
|
||||
"Disconnected": "Terputus",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Gelap",
|
||||
"Auto": "Otomatis",
|
||||
"Endpoint": "Titik Akhir",
|
||||
"Providers": "Penyedia",
|
||||
"Combos": "Kombinasi",
|
||||
"Usage": "Statistik Penggunaan",
|
||||
"Quota Tracker": "Pelacak Kuota",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Alat",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Tidak Ada Proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Nama host/domain yang dipisahkan koma untuk melewati proxy.",
|
||||
"Test proxy URL": "Uji URL Proxy",
|
||||
"Apply": "Terapkan",
|
||||
"Proxy settings applied": "Pengaturan proxy diterapkan",
|
||||
"Proxy enabled": "Proxy diaktifkan",
|
||||
"Proxy disabled": "Proxy dinonaktifkan",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Gunakan Antigravity IDE & GitHub Copilot → dengan PENYEDIA/model APA PUN dari 9Router",
|
||||
"How it works:": "Cara kerjanya:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Permintaan Antigravity/Copilot IDE → Pengalihan DNS ke localhost:443 → Proxy MITM mengintersep → 9Router → respons ke Antigravity/Copilot",
|
||||
"API Key": "Kunci API",
|
||||
"No API keys — create one in Keys page": "Tidak ada kunci API — buat satu di halaman Keys",
|
||||
"sk_9router (default)": "sk_9router (bawaan)",
|
||||
"Server started": "Server dimulai",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Kata Sandi Sudo Diperlukan",
|
||||
"Enter your sudo password to start/stop MITM server": "Masukkan kata sandi sudo Anda untuk memulai/menghentikan server MITM",
|
||||
"Sudo Password": "Kata Sandi Sudo",
|
||||
"Confirm": "Konfirmasi"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Klik untuk menambah, klik lagi untuk menghapus. Perubahan disimpan secara otomatis."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Esci",
|
||||
"Login": "Accedi",
|
||||
"Providers": "Provider",
|
||||
"Usage": "Utilizzo",
|
||||
"Usage": "Statistiche di utilizzo",
|
||||
"API Key": "Chiave API",
|
||||
"Connected": "Connesso",
|
||||
"Disconnected": "Disconnesso",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Scuro",
|
||||
"Auto": "Automatico",
|
||||
"Endpoint": "Endpoint",
|
||||
"Providers": "Provider",
|
||||
"Combos": "Combinazioni",
|
||||
"Usage": "Statistiche di utilizzo",
|
||||
"Quota Tracker": "Tracker quota",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Strumenti",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Nessun proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Nomi host/domini separati da virgole per ignorare il proxy.",
|
||||
"Test proxy URL": "Test URL proxy",
|
||||
"Apply": "Applica",
|
||||
"Proxy settings applied": "Impostazioni proxy applicate",
|
||||
"Proxy enabled": "Proxy abilitato",
|
||||
"Proxy disabled": "Proxy disabilitato",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Usa Antigravity IDE & GitHub Copilot → con QUALSIASI provider/modello da 9Router",
|
||||
"How it works:": "Come funziona:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Richiesta Antigravity/Copilot IDE → Reindirizzamento DNS a localhost:443 → Il proxy MITM intercetta → 9Router → Risposta a Antigravity/Copilot",
|
||||
"API Key": "Chiave API",
|
||||
"No API keys — create one in Keys page": "Nessuna chiave API — crearne una nella pagina Chiavi",
|
||||
"sk_9router (default)": "sk_9router (predefinito)",
|
||||
"Server started": "Server avviato",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Password Sudo richiesta",
|
||||
"Enter your sudo password to start/stop MITM server": "Inserisci la tua password sudo per avviare/arrestare il server MITM",
|
||||
"Sudo Password": "Password Sudo",
|
||||
"Confirm": "Conferma"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Clicca per aggiungere, clicca di nuovo per rimuovere. Le modifiche vengono salvate automaticamente."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "ログアウト",
|
||||
"Login": "ログイン",
|
||||
"Providers": "プロバイダー",
|
||||
"Usage": "使用状況",
|
||||
"Usage": "統計",
|
||||
"API Key": "APIキー",
|
||||
"Connected": "接続済み",
|
||||
"Disconnected": "未接続",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "ダーク",
|
||||
"Auto": "自動",
|
||||
"Endpoint": "エンドポイント",
|
||||
"Providers": "プロバイダー",
|
||||
"Combos": "コンボ",
|
||||
"Usage": "統計",
|
||||
"Quota Tracker": "クォータトラッカー",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "CLIツール",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "プロキシなし",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "プロキシをバイパスするためのコンマ区切りのホスト名/ドメイン。",
|
||||
"Test proxy URL": "プロキシURLをテスト",
|
||||
"Apply": "適用",
|
||||
"Proxy settings applied": "プロキシ設定が適用されました",
|
||||
"Proxy enabled": "プロキシが有効になりました",
|
||||
"Proxy disabled": "プロキシが無効になりました",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Antigravity IDE & GitHub Copilot → 9Router の任意のプロバイダー/モデルを使用",
|
||||
"How it works:": "しくみ:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE リクエスト → localhost:443 への DNS リダイレクト → MITM プロキシが傍受 → 9Router → Antigravity/Copilot への応答",
|
||||
"API Key": "APIキー",
|
||||
"No API keys — create one in Keys page": "APIキーがありません — キーページで1つ作成してください",
|
||||
"sk_9router (default)": "sk_9router(デフォルト)",
|
||||
"Server started": "サーバーが開始されました",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudoパスワードが必要です",
|
||||
"Enter your sudo password to start/stop MITM server": "MITMサーバーを開始/停止するには、sudoパスワードを入力してください",
|
||||
"Sudo Password": "Sudoパスワード",
|
||||
"Confirm": "確認"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "クリックで追加、もう一度クリックで削除。変更は自動的に保存されます。"
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "로그아웃",
|
||||
"Login": "로그인",
|
||||
"Providers": "제공자",
|
||||
"Usage": "사용 현황",
|
||||
"Usage": "통계",
|
||||
"API Key": "API 키",
|
||||
"Connected": "연결됨",
|
||||
"Disconnected": "연결 해제됨",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "어두움",
|
||||
"Auto": "자동",
|
||||
"Endpoint": "엔드포인트",
|
||||
"Providers": "제공자",
|
||||
"Combos": "조합",
|
||||
"Usage": "통계",
|
||||
"Quota Tracker": "할당량 추적",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "CLI 도구",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "프록시 없음",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "프록시를 우회하기 위한 쉼표로 구분된 호스트명/도메인입니다.",
|
||||
"Test proxy URL": "프록시 URL 테스트",
|
||||
"Apply": "적용",
|
||||
"Proxy settings applied": "프록시 설정이 적용되었습니다",
|
||||
"Proxy enabled": "프록시 활성화됨",
|
||||
"Proxy disabled": "프록시 비활성화됨",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Antigravity IDE 및 GitHub Copilot 사용 → 9Router의 모든 제공자/모델과 함께",
|
||||
"How it works:": "작동 방식:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE 요청 → localhost:443로 DNS 리디렉션 → MITM 프록시가 가로챔 → 9Router → Antigravity/Copilot으로 응답",
|
||||
"API Key": "API 키",
|
||||
"No API keys — create one in Keys page": "API 키 없음 — 키 페이지에서 만들기",
|
||||
"sk_9router (default)": "sk_9router (기본값)",
|
||||
"Server started": "서버 시작됨",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo 암호 필요",
|
||||
"Enter your sudo password to start/stop MITM server": "MITM 서버를 시작/중지하려면 sudo 암호를 입력하세요",
|
||||
"Sudo Password": "Sudo 암호",
|
||||
"Confirm": "확인"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "클릭하여 추가, 다시 클릭하여 제거. 변경 사항은 자동으로 저장됩니다."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Afmelden",
|
||||
"Login": "Aanmelden",
|
||||
"Providers": "Providers",
|
||||
"Usage": "Gebruik",
|
||||
"Usage": "Statistieken",
|
||||
"API Key": "API-sleutel",
|
||||
"Connected": "Verbonden",
|
||||
"Disconnected": "Verbroken",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Donker",
|
||||
"Auto": "Automatisch",
|
||||
"Endpoint": "Eindpunt",
|
||||
"Providers": "Providers",
|
||||
"Combos": "Combinaties",
|
||||
"Usage": "Statistieken",
|
||||
"Quota Tracker": "Quotabijhouder",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "CLI-tools",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Geen proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Door komma's gescheiden hostnamen/domeinen om de proxy te omzeilen.",
|
||||
"Test proxy URL": "Proxy-URL testen",
|
||||
"Apply": "Toepassen",
|
||||
"Proxy settings applied": "Proxy-instellingen toegepast",
|
||||
"Proxy enabled": "Proxy ingeschakeld",
|
||||
"Proxy disabled": "Proxy uitgeschakeld",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Gebruik Antigravity IDE en GitHub Copilot → met ELKE provider/model van 9Router",
|
||||
"How it works:": "Hoe het werkt:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE-aanvraag → DNS-omleiding naar localhost:443 → MITM-proxy onderschept → 9Router → antwoord naar Antigravity/Copilot",
|
||||
"API Key": "API-sleutel",
|
||||
"No API keys — create one in Keys page": "Geen API-sleutels — maak er één aan op de pagina Sleutels",
|
||||
"sk_9router (default)": "sk_9router (standaard)",
|
||||
"Server started": "Server gestart",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo-wachtwoord vereist",
|
||||
"Enter your sudo password to start/stop MITM server": "Voer uw sudo-wachtwoord in om de MITM-server te starten/stoppen",
|
||||
"Sudo Password": "Sudo-wachtwoord",
|
||||
"Confirm": "Bevestigen"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Klik om toe te voegen, klik opnieuw om te verwijderen. Wijzigingen worden automatisch opgeslagen."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Logg ut",
|
||||
"Login": "Logg inn",
|
||||
"Providers": "Leverandører",
|
||||
"Usage": "Bruk",
|
||||
"Usage": "Bruksstatistikk",
|
||||
"API Key": "API-nøkkel",
|
||||
"Connected": "Tilkoblet",
|
||||
"Disconnected": "Frakoblet",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Mørk",
|
||||
"Auto": "Automatisk",
|
||||
"Endpoint": "Endepunkt",
|
||||
"Providers": "Leverandører",
|
||||
"Combos": "Kombinasjoner",
|
||||
"Usage": "Bruksstatistikk",
|
||||
"Quota Tracker": "Kvotasporer",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Verktøy",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Ingen proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Kommaseparerte vertsnavner/domener for å omgå proxyen.",
|
||||
"Test proxy URL": "Test proxy-URL",
|
||||
"Apply": "Bruk",
|
||||
"Proxy settings applied": "Proxyinnstillinger brukt",
|
||||
"Proxy enabled": "Proxy aktivert",
|
||||
"Proxy disabled": "Proxy deaktivert",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Bruk Antigravity IDE & GitHub Copilot → med ENHVER leverandør/modell fra 9Router",
|
||||
"How it works:": "Slik fungerer det:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE-forespørsel → DNS-omdirigering til localhost:443 → MITM-proxy avlytt → 9Router → svar til Antigravity/Copilot",
|
||||
"API Key": "API-nøkkel",
|
||||
"No API keys — create one in Keys page": "Ingen API-nøkler — lag en på Keys-siden",
|
||||
"sk_9router (default)": "sk_9router (standard)",
|
||||
"Server started": "Server startet",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo-passord påkrevd",
|
||||
"Enter your sudo password to start/stop MITM server": "Skriv inn sudo-passordet ditt for å starte/stoppe MITM-server",
|
||||
"Sudo Password": "Sudo-passord",
|
||||
"Confirm": "Bekreft"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Klikk for å legge til, klikk igjen for å fjerne. Endringer lagres automatisk."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Wyloguj się",
|
||||
"Login": "Zaloguj się",
|
||||
"Providers": "Dostawcy",
|
||||
"Usage": "Użycie",
|
||||
"Usage": "Statystyka",
|
||||
"API Key": "Klucz API",
|
||||
"Connected": "Połączony",
|
||||
"Disconnected": "Rozłączony",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Ciemny",
|
||||
"Auto": "Automatycznie",
|
||||
"Endpoint": "Punkt końcowy",
|
||||
"Providers": "Dostawcy",
|
||||
"Combos": "Kombinacje",
|
||||
"Usage": "Statystyka",
|
||||
"Quota Tracker": "Śledzenie limitów",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Narzędzia CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Bez serwera proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Nazwy hostów/domeny oddzielone przecinkami do pominięcia serwera proxy.",
|
||||
"Test proxy URL": "Przetestuj URL serwera proxy",
|
||||
"Apply": "Zastosuj",
|
||||
"Proxy settings applied": "Ustawienia serwera proxy zastosowane",
|
||||
"Proxy enabled": "Serwer proxy włączony",
|
||||
"Proxy disabled": "Serwer proxy wyłączony",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Użyj Antigravity IDE i GitHub Copilot → z DOWOLNYM dostawcą/modelem z 9Router",
|
||||
"How it works:": "Jak to działa:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Żądanie Antigravity/Copilot IDE → Przekierowanie DNS na localhost:443 → Serwer proxy MITM przechwytuje → 9Router → odpowiedź do Antigravity/Copilot",
|
||||
"API Key": "Klucz API",
|
||||
"No API keys — create one in Keys page": "Brak kluczy API — utwórz jeden na stronie Klucze",
|
||||
"sk_9router (default)": "sk_9router (domyślnie)",
|
||||
"Server started": "Serwer uruchomiony",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Wymagane hasło Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "Wprowadź hasło sudo, aby uruchomić/zatrzymać serwer MITM",
|
||||
"Sudo Password": "Hasło sudo",
|
||||
"Confirm": "Potwierdź"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Kliknij, aby dodać, kliknij ponownie, aby usunąć. Zmiany są zapisywane automatycznie."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Sair",
|
||||
"Login": "Conectar",
|
||||
"Providers": "Provedores",
|
||||
"Usage": "Uso",
|
||||
"Usage": "Estatísticas",
|
||||
"API Key": "Chave API",
|
||||
"Connected": "Conectado",
|
||||
"Disconnected": "Desconectado",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Escuro",
|
||||
"Auto": "Automático",
|
||||
"Endpoint": "Ponto de extremidade",
|
||||
"Providers": "Provedores",
|
||||
"Combos": "Combinações",
|
||||
"Usage": "Estatísticas",
|
||||
"Quota Tracker": "Rastreador de cota",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Ferramentas CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Sem proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Nomes de host/domínios separados por vírgula para contornar o proxy.",
|
||||
"Test proxy URL": "Testar URL do proxy",
|
||||
"Apply": "Aplicar",
|
||||
"Proxy settings applied": "Configurações de proxy aplicadas",
|
||||
"Proxy enabled": "Proxy ativado",
|
||||
"Proxy disabled": "Proxy desativado",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Use Antigravity IDE e GitHub Copilot → com QUALQUER provedor/modelo do 9Router",
|
||||
"How it works:": "Como funciona:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Solicitação do Antigravity/Copilot IDE → Redirecionamento DNS para localhost:443 → Proxy MITM intercepta → 9Router → resposta para Antigravity/Copilot",
|
||||
"API Key": "Chave API",
|
||||
"No API keys — create one in Keys page": "Sem chaves de API — crie uma na página Chaves",
|
||||
"sk_9router (default)": "sk_9router (padrão)",
|
||||
"Server started": "Servidor iniciado",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Senha Sudo necessária",
|
||||
"Enter your sudo password to start/stop MITM server": "Digite sua senha sudo para iniciar/parar o servidor MITM",
|
||||
"Sudo Password": "Senha sudo",
|
||||
"Confirm": "Confirmar"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Clique para adicionar, clique novamente para remover. As alterações são salvas automaticamente."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Terminar sessão",
|
||||
"Login": "Iniciar sessão",
|
||||
"Providers": "Fornecedores",
|
||||
"Usage": "Utilização",
|
||||
"Usage": "Estatísticas",
|
||||
"API Key": "Chave API",
|
||||
"Connected": "Ligado",
|
||||
"Disconnected": "Desligado",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Escuro",
|
||||
"Auto": "Automático",
|
||||
"Endpoint": "Ponto final",
|
||||
"Providers": "Fornecedores",
|
||||
"Combos": "Combinações",
|
||||
"Usage": "Estatísticas",
|
||||
"Quota Tracker": "Rastreador de quota",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Ferramentas CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Sem proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Nomes de host/domínios separados por vírgulas para contornar o proxy.",
|
||||
"Test proxy URL": "Testar URL do proxy",
|
||||
"Apply": "Aplicar",
|
||||
"Proxy settings applied": "Definições de proxy aplicadas",
|
||||
"Proxy enabled": "Proxy ativado",
|
||||
"Proxy disabled": "Proxy desativado",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Utilize o Antigravity IDE e GitHub Copilot → com QUALQUER fornecedor/modelo do 9Router",
|
||||
"How it works:": "Como funciona:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Pedido do Antigravity/Copilot IDE → Redirecionamento DNS para localhost:443 → Proxy MITM interceta → 9Router → resposta para Antigravity/Copilot",
|
||||
"API Key": "Chave API",
|
||||
"No API keys — create one in Keys page": "Sem chaves de API — crie uma na página Chaves",
|
||||
"sk_9router (default)": "sk_9router (predefinição)",
|
||||
"Server started": "Servidor iniciado",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Palavra-passe Sudo necessária",
|
||||
"Enter your sudo password to start/stop MITM server": "Introduza a sua palavra-passe sudo para iniciar/parar o servidor MITM",
|
||||
"Sudo Password": "Palavra-passe sudo",
|
||||
"Confirm": "Confirmar"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Clique para adicionar, clique novamente para remover. As alterações são guardadas automaticamente."
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"Delete": "Ștergere",
|
||||
"Edit": "Editare",
|
||||
"Save": "Salvare",
|
||||
"Close": "Închidere",
|
||||
"Close": "Închide",
|
||||
"Add": "Adăugare",
|
||||
"Remove": "Eliminare",
|
||||
"Settings": "Setări",
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Ieșire",
|
||||
"Login": "Conectare",
|
||||
"Providers": "Furnizori",
|
||||
"Usage": "Utilizare",
|
||||
"Usage": "Statistici de utilizare",
|
||||
"API Key": "Cheie API",
|
||||
"Connected": "Conectat",
|
||||
"Disconnected": "Deconectat",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Întunecat",
|
||||
"Auto": "Automat",
|
||||
"Endpoint": "Punct final",
|
||||
"Providers": "Furnizori",
|
||||
"Combos": "Combinații",
|
||||
"Usage": "Statistici de utilizare",
|
||||
"Quota Tracker": "Urmăritor cote",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Instrumente",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Nicio delegare",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Nume de gazdă/domenii separate prin virgulă pentru a ocoli proxy-ul.",
|
||||
"Test proxy URL": "Testare URL proxy",
|
||||
"Apply": "Aplicare",
|
||||
"Proxy settings applied": "Setările proxy au fost aplicate",
|
||||
"Proxy enabled": "Proxy activat",
|
||||
"Proxy disabled": "Proxy dezactivat",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Folosiți Antigravity IDE & GitHub Copilot → cu ORICE furnizor/model din 9Router",
|
||||
"How it works:": "Cum funcționează:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Solicitare Antigravity/Copilot IDE → Redirecționare DNS la localhost:443 → Proxy MITM interceptează → 9Router → răspuns la Antigravity/Copilot",
|
||||
"API Key": "Cheie API",
|
||||
"No API keys — create one in Keys page": "Nicio cheie API — creați una în pagina Chei",
|
||||
"sk_9router (default)": "sk_9router (implicit)",
|
||||
"Server started": "Server pornit",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Parola Sudo este necesară",
|
||||
"Enter your sudo password to start/stop MITM server": "Introduceți parola sudo pentru a porni/opri serverul MITM",
|
||||
"Sudo Password": "Parola Sudo",
|
||||
"Confirm": "Confirmare"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Faceți clic pentru a adăuga, faceți clic din nou pentru a elimina. Modificările sunt salvate automat."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Выход",
|
||||
"Login": "Вход",
|
||||
"Providers": "Провайдеры",
|
||||
"Usage": "Использование",
|
||||
"Usage": "Статистика",
|
||||
"API Key": "Ключ API",
|
||||
"Connected": "Подключено",
|
||||
"Disconnected": "Отключено",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Темная",
|
||||
"Auto": "Автоматически",
|
||||
"Endpoint": "Конечная точка",
|
||||
"Providers": "Провайдеры",
|
||||
"Combos": "Комбинации",
|
||||
"Usage": "Статистика",
|
||||
"Quota Tracker": "Отслеживание квоты",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Инструменты CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Без прокси",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Разделенные запятыми имена хостов/домены для обхода прокси.",
|
||||
"Test proxy URL": "Протестировать URL прокси",
|
||||
"Apply": "Применить",
|
||||
"Proxy settings applied": "Параметры прокси применены",
|
||||
"Proxy enabled": "Прокси включен",
|
||||
"Proxy disabled": "Прокси отключен",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Используйте Antigravity IDE и GitHub Copilot → с ЛЮБЫМ провайдером/моделью от 9Router",
|
||||
"How it works:": "Как это работает:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Запрос Antigravity/Copilot IDE → Перенаправление DNS на localhost:443 → Прокси MITM перехватывает → 9Router → ответ для Antigravity/Copilot",
|
||||
"API Key": "Ключ API",
|
||||
"No API keys — create one in Keys page": "Нет ключей API — создайте один на странице ключей",
|
||||
"sk_9router (default)": "sk_9router (по умолчанию)",
|
||||
"Server started": "Сервер запущен",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Требуется пароль Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "Введите пароль sudo для запуска/остановки сервера MITM",
|
||||
"Sudo Password": "Пароль sudo",
|
||||
"Confirm": "Подтвердить"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Нажмите, чтобы добавить, нажмите ещё раз, чтобы удалить. Изменения сохраняются автоматически."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Logga ut",
|
||||
"Login": "Logga in",
|
||||
"Providers": "Leverantörer",
|
||||
"Usage": "Användning",
|
||||
"Usage": "Användarstatistik",
|
||||
"API Key": "API-nyckel",
|
||||
"Connected": "Ansluten",
|
||||
"Disconnected": "Frånkopplad",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Mörk",
|
||||
"Auto": "Automatisk",
|
||||
"Endpoint": "Slutpunkt",
|
||||
"Providers": "Leverantörer",
|
||||
"Combos": "Kombinationer",
|
||||
"Usage": "Användarstatistik",
|
||||
"Quota Tracker": "Kvotspårare",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Verktyg",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Ingen proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Kommaseparerade värdnamn/domäner för att kringgå proxyn.",
|
||||
"Test proxy URL": "Testa proxy-URL",
|
||||
"Apply": "Verkställ",
|
||||
"Proxy settings applied": "Proxyinställningar tillämpade",
|
||||
"Proxy enabled": "Proxy aktiverad",
|
||||
"Proxy disabled": "Proxy inaktiverad",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Använd Antigravity IDE & GitHub Copilot → med VALFRI leverantör/modell från 9Router",
|
||||
"How it works:": "Hur det fungerar:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE-begäran → DNS-omdirigering till localhost:443 → MITM-proxy avlyssnar → 9Router → svar till Antigravity/Copilot",
|
||||
"API Key": "API-nyckel",
|
||||
"No API keys — create one in Keys page": "Inga API-nycklar — skapa en på nyckelsidan",
|
||||
"sk_9router (default)": "sk_9router (standard)",
|
||||
"Server started": "Servern startad",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo-lösenord krävs",
|
||||
"Enter your sudo password to start/stop MITM server": "Ange ditt sudo-lösenord för att starta/stoppa MITM-servern",
|
||||
"Sudo Password": "Sudo-lösenord",
|
||||
"Confirm": "Bekräfta"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Klicka för att lägga till, klicka igen för att ta bort. Ändringar sparas automatiskt."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "ออกจากระบบ",
|
||||
"Login": "เข้าสู่ระบบ",
|
||||
"Providers": "ผู้ให้บริการ",
|
||||
"Usage": "การใช้งาน",
|
||||
"Usage": "สถิติการใช้งาน",
|
||||
"API Key": "คีย์ API",
|
||||
"Connected": "เชื่อมต่อแล้ว",
|
||||
"Disconnected": "ตัดการเชื่อมต่อ",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "มืด",
|
||||
"Auto": "อัตโนมัติ",
|
||||
"Endpoint": "จุดสิ้นสุด",
|
||||
"Providers": "ผู้ให้บริการ",
|
||||
"Combos": "ชุดรวม",
|
||||
"Usage": "สถิติการใช้งาน",
|
||||
"Quota Tracker": "ตัวติดตามโควต้า",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "เครื่องมือ",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "ไม่มี Proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "ชื่อโฮสต์/โดเมนคั่นด้วยเครื่องหมายจุลภาค เพื่อข้าม proxy",
|
||||
"Test proxy URL": "ทดสอบ URL Proxy",
|
||||
"Apply": "ใช้",
|
||||
"Proxy settings applied": "ใช้การตั้งค่า proxy แล้ว",
|
||||
"Proxy enabled": "เปิดใช้งาน proxy",
|
||||
"Proxy disabled": "ปิดใช้งาน proxy",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "ใช้ Antigravity IDE & GitHub Copilot → ที่มีผู้ให้บริการ/โมเดลใด ๆ จาก 9Router",
|
||||
"How it works:": "วิธีการทำงาน:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "คำขอ Antigravity/Copilot IDE → เปลี่ยนเส้นทาง DNS เป็น localhost:443 → MITM proxy สกัดปะท่อ → 9Router → ตอบสนอง Antigravity/Copilot",
|
||||
"API Key": "คีย์ API",
|
||||
"No API keys — create one in Keys page": "ไม่มีคีย์ API — สร้างคีย์ในหน้า Keys",
|
||||
"sk_9router (default)": "sk_9router (ค่าเริ่มต้น)",
|
||||
"Server started": "เซิร์ฟเวอร์เริ่มต้นแล้ว",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "ต้องการรหัสผ่าน Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "ป้อนรหัสผ่าน sudo ของคุณเพื่อเริ่ม/หยุดเซิร์ฟเวอร์ MITM",
|
||||
"Sudo Password": "รหัสผ่าน Sudo",
|
||||
"Confirm": "ยืนยัน"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "คลิกเพื่อเพิ่ม คลิกอีกครั้งเพื่อลบ การเปลี่ยนแปลงจะถูกบันทึกโดยอัตโนมัติ"
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Maglog out",
|
||||
"Login": "Magsimula ng sesyon",
|
||||
"Providers": "Mga Provider",
|
||||
"Usage": "Paggamit",
|
||||
"Usage": "Mga Istatistika ng Paggamit",
|
||||
"API Key": "Susi ng API",
|
||||
"Connected": "Konektado",
|
||||
"Disconnected": "Hindi Konektado",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Madilim",
|
||||
"Auto": "Awtomatiko",
|
||||
"Endpoint": "Endpoint",
|
||||
"Providers": "Mga Provider",
|
||||
"Combos": "Mga Combo",
|
||||
"Usage": "Mga Istatistika ng Paggamit",
|
||||
"Quota Tracker": "Quota Tracker",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Mga Tool",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Walang Proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Mga hostname/domain na pinagseparang komma upang lampasan ang proxy.",
|
||||
"Test proxy URL": "Subukan ang Proxy URL",
|
||||
"Apply": "Ilapat",
|
||||
"Proxy settings applied": "Ang mga setting ng proxy ay inilapat",
|
||||
"Proxy enabled": "Ang proxy ay pinagana",
|
||||
"Proxy disabled": "Ang proxy ay hindi pinagana",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Gamitin ang Antigravity IDE & GitHub Copilot → sa ANUMANG provider/model mula sa 9Router",
|
||||
"How it works:": "Paano ito gumagana:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE request → DNS redirect sa localhost:443 → MITM proxy intercepts → 9Router → response sa Antigravity/Copilot",
|
||||
"API Key": "Susi ng API",
|
||||
"No API keys — create one in Keys page": "Walang API keys — lumikha ng isa sa Keys page",
|
||||
"sk_9router (default)": "sk_9router (default)",
|
||||
"Server started": "Ang server ay nagsimula",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Kailangan ng Sudo Password",
|
||||
"Enter your sudo password to start/stop MITM server": "Ipasok ang iyong sudo password upang simulan/ihinto ang MITM server",
|
||||
"Sudo Password": "Sudo Password",
|
||||
"Confirm": "Kumpirmahin"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "I-click para idagdag, i-click muli para alisin. Ang mga pagbabago ay awtomatikong nase-save."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Çıkış Yap",
|
||||
"Login": "Giriş Yap",
|
||||
"Providers": "Sağlayıcılar",
|
||||
"Usage": "Kullanım",
|
||||
"Usage": "Kullanım İstatistikleri",
|
||||
"API Key": "API Anahtarı",
|
||||
"Connected": "Bağlı",
|
||||
"Disconnected": "Bağlantısı Kesildi",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Koyu",
|
||||
"Auto": "Otomatik",
|
||||
"Endpoint": "Uç Nokta",
|
||||
"Providers": "Sağlayıcılar",
|
||||
"Combos": "Kombinasyonlar",
|
||||
"Usage": "Kullanım İstatistikleri",
|
||||
"Quota Tracker": "Kota İzleyici",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Araçlar",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Proxy Yok",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Proxy'yi atlamak için virgülle ayrılmış ana bilgisayar adları/etki alanları.",
|
||||
"Test proxy URL": "Test Proxy URL'si",
|
||||
"Apply": "Uygula",
|
||||
"Proxy settings applied": "Proxy ayarları uygulandı",
|
||||
"Proxy enabled": "Proxy etkinleştirildi",
|
||||
"Proxy disabled": "Proxy devre dışı bırakıldı",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Antigravity IDE & GitHub Copilot kullanın → 9Router'dan HERHANGİ bir sağlayıcı/model ile",
|
||||
"How it works:": "Nasıl çalışır:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE isteği → DNS'i localhost:443'e yönlendir → MITM proxy yakalar → 9Router → Antigravity/Copilot'a yanıt",
|
||||
"API Key": "API Anahtarı",
|
||||
"No API keys — create one in Keys page": "API anahtarı yok — Keys sayfasında bir tane oluşturun",
|
||||
"sk_9router (default)": "sk_9router (varsayılan)",
|
||||
"Server started": "Sunucu başlatıldı",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo Parolası Gerekli",
|
||||
"Enter your sudo password to start/stop MITM server": "MITM sunucusunu başlatmak/durdurmak için sudo parolanızı girin",
|
||||
"Sudo Password": "Sudo Parolası",
|
||||
"Confirm": "Onayla"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Eklemek için tıklayın, kaldırmak için tekrar tıklayın. Değişiklikler otomatik olarak kaydedilir."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Вийти",
|
||||
"Login": "Увійти",
|
||||
"Providers": "Постачальники",
|
||||
"Usage": "Використання",
|
||||
"Usage": "Статистика використання",
|
||||
"API Key": "Ключ API",
|
||||
"Connected": "Підключено",
|
||||
"Disconnected": "Відключено",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Темна",
|
||||
"Auto": "Авто",
|
||||
"Endpoint": "Кінцева точка",
|
||||
"Providers": "Постачальники",
|
||||
"Combos": "Комбо",
|
||||
"Usage": "Статистика використання",
|
||||
"Quota Tracker": "Відстеження квоти",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Інструменти",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Без проксі",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Розділені комами імена хостів/домени для обходу проксі.",
|
||||
"Test proxy URL": "Протестувати URL проксі",
|
||||
"Apply": "Застосувати",
|
||||
"Proxy settings applied": "Параметри проксі застосовані",
|
||||
"Proxy enabled": "Проксі увімкнено",
|
||||
"Proxy disabled": "Проксі вимкнено",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Використовуйте Antigravity IDE & GitHub Copilot → з БУДЬ-ЯКИМ постачальником/моделлю від 9Router",
|
||||
"How it works:": "Як це працює:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Запит Antigravity/Copilot IDE → Перенаправлення DNS на localhost:443 → MITM проксі перехопити → 9Router → відповідь на Antigravity/Copilot",
|
||||
"API Key": "Ключ API",
|
||||
"No API keys — create one in Keys page": "Немає ключів API — створіть один на сторінці ключів",
|
||||
"sk_9router (default)": "sk_9router (за замовчуванням)",
|
||||
"Server started": "Сервер запущено",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Потрібен пароль Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "Введіть пароль sudo для запуску/зупинення MITM сервера",
|
||||
"Sudo Password": "Пароль Sudo",
|
||||
"Confirm": "Підтвердити"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Натисніть, щоб додати, натисніть ще раз, щоб видалити. Зміни зберігаються автоматично."
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "لاگ آؤٹ",
|
||||
"Login": "لاگ ان",
|
||||
"Providers": "فراہم کنندگان",
|
||||
"Usage": "استعمال",
|
||||
"Usage": "استعمال کے اعدادوشمار",
|
||||
"API Key": "API کلید",
|
||||
"Connected": "منسلک",
|
||||
"Disconnected": "منقطع",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "تاریک",
|
||||
"Auto": "خودکار",
|
||||
"Endpoint": "اختتام نقطہ",
|
||||
"Providers": "فراہم کنندگان",
|
||||
"Combos": "امتزاجات",
|
||||
"Usage": "استعمال کے اعدادوشمار",
|
||||
"Quota Tracker": "کوٹہ ٹریکر",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "آلات",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "کوئی پروکسی نہیں",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "پروکسی کو نظر انداز کرنے کے لیے کوما سے الگ شدہ ہوسٹ ناموں/ڈومین۔",
|
||||
"Test proxy URL": "پروکسی URL کو ٹیسٹ کریں",
|
||||
"Apply": "لاگو کریں",
|
||||
"Proxy settings applied": "پروکسی ترتیبات لاگو کی گئیں",
|
||||
"Proxy enabled": "پروکسی فعال",
|
||||
"Proxy disabled": "پروکسی غیر فعال",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Antigravity IDE اور GitHub Copilot استعمال کریں → 9Router سے کسی بھی فراہم کنندہ/ماڈل کے ساتھ",
|
||||
"How it works:": "یہ کیسے کام کرتا ہے:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE درخواست → DNS کو localhost:443 کی طرف ری ڈائریکٹ کریں → MITM پروکسی روکے → 9Router → Antigravity/Copilot کو جواب",
|
||||
"API Key": "API کلید",
|
||||
"No API keys — create one in Keys page": "کوئی API کلید نہیں — Keys صفحہ میں ایک بنائیں",
|
||||
"sk_9router (default)": "sk_9router (ڈیفالٹ)",
|
||||
"Server started": "سرور شروع ہوگیا",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Sudo پاس ورڈ درکار ہے",
|
||||
"Enter your sudo password to start/stop MITM server": "MITM سرور شروع/بند کرنے کے لیے اپنا sudo پاس ورڈ داخل کریں",
|
||||
"Sudo Password": "Sudo پاس ورڈ",
|
||||
"Confirm": "تصدیق کریں"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "شامل کرنے کے لیے کلک کریں، ہٹانے کے لیے دوبارہ کلک کریں۔ تبدیلیاں خودکار طور پر محفوظ ہو جاتی ہیں۔"
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "Đăng xuất",
|
||||
"Login": "Đăng nhập",
|
||||
"Providers": "Nhà cung cấp",
|
||||
"Usage": "Sử dụng",
|
||||
"Usage": "Thống kê",
|
||||
"API Key": "Khóa API",
|
||||
"Connected": " Đã kết nối",
|
||||
"Disconnected": "Chưa kết nối",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Tối",
|
||||
"Auto": "Tự động",
|
||||
"Endpoint": "Điểm cuối",
|
||||
"Providers": "Nhà cung cấp",
|
||||
"Combos": "Kết hợp",
|
||||
"Usage": "Thống kê",
|
||||
"Quota Tracker": "Theo dõi hạn mức",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Công cụ",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Không có Proxy",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Tên máy chủ/tên miền được phân tách bằng dấu phẩy để bỏ qua proxy.",
|
||||
"Test proxy URL": "Kiểm tra URL proxy",
|
||||
"Apply": "Áp dụng",
|
||||
"Proxy settings applied": "Đã áp dụng cài đặt proxy",
|
||||
"Proxy enabled": "Đã bật proxy",
|
||||
"Proxy disabled": "Đã tắt proxy",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Sử dụng Antigravity IDE & GitHub Copilot → với BẤT KỲ nhà cung cấp/mô hình nào từ 9Router",
|
||||
"How it works:": "Cách hoạt động:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Yêu cầu Antigravity/Copilot IDE → Chuyển hướng DNS đến localhost:443 → MITM proxy chặn → 9Router → phản hồi đến Antigravity/Copilot",
|
||||
"API Key": "Khóa API",
|
||||
"No API keys — create one in Keys page": "Không có khóa API — tạo một khóa trong trang Keys",
|
||||
"sk_9router (default)": "sk_9router (mặc định)",
|
||||
"Server started": "Đã khởi động máy chủ",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Yêu cầu mật khẩu Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "Nhập mật khẩu sudo của bạn để khởi động/dừng máy chủ MITM",
|
||||
"Sudo Password": "Mật khẩu Sudo",
|
||||
"Confirm": "Xác nhận"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Nhấp để thêm, nhấp lại để xóa. Thay đổi được lưu tự động."
|
||||
}
|
||||
|
||||
@@ -512,13 +512,11 @@
|
||||
"The proxy server has been stopped.": "代理服务器已停止。",
|
||||
"Reload Page": "重新加载页面",
|
||||
"Service is running in terminal. You can close this web page. Shutdown will stop the service.": "服务正在终端中运行。您可以关闭此网页。关闭将停止服务。",
|
||||
|
||||
"One Endpoint for": "统一端点,接入",
|
||||
"All AI Providers": "所有 AI 提供商",
|
||||
"Route AI requests through subscription, cheap, and free tiers with auto-fallback. One endpoint for Claude, GPT, Gemini, and more.": "通过订阅、低价和免费层级路由 AI 请求并自动回退。一个端点接入 Claude、GPT、Gemini 等。",
|
||||
"Get Started": "开始使用",
|
||||
"View on GitHub": "在 GitHub 上查看",
|
||||
|
||||
"How 9Router Works": "9Router 工作原理",
|
||||
"Data flows seamlessly through our intelligent routing system": "数据通过我们的智能路由系统无缝流转",
|
||||
"1. CLI & SDKs": "1. CLI 和 SDK",
|
||||
@@ -527,7 +525,6 @@
|
||||
"Our engine analyzes the prompt and routes through your subscription, cheap, and free provider tiers with automatic fallback.": "我们的引擎分析提示词并通过您的订阅、低价和免费提供商层级路由,自动回退。",
|
||||
"3. AI Providers": "3. AI 提供商",
|
||||
"The request is fulfilled by OpenAI, Anthropic, Gemini, or others instantly.": "请求由 OpenAI、Anthropic、Gemini 或其他提供商即时响应。",
|
||||
|
||||
"Powerful Features": "强大功能",
|
||||
"Everything you need to manage your AI infrastructure efficiently.": "高效管理 AI 基础设施所需的一切。",
|
||||
"Unified Endpoint": "统一端点",
|
||||
@@ -546,7 +543,6 @@
|
||||
"Native CLI tool support for Cursor, Claude, Copilot, and more.": "原生支持 Cursor、Claude、Copilot 等 CLI 工具。",
|
||||
"Dashboard": "仪表盘",
|
||||
"Beautiful web dashboard for managing providers and monitoring usage.": "精美的 Web 仪表盘,用于管理提供商和监控使用情况。",
|
||||
|
||||
"Get Started in 30 Seconds": "30 秒快速上手",
|
||||
"Install 9Router": "安装 9Router",
|
||||
"Open Dashboard": "打开仪表盘",
|
||||
@@ -554,13 +550,10 @@
|
||||
"npm install -g 9router": "npm install -g 9router",
|
||||
"open http://localhost:9099": "open http://localhost:9099",
|
||||
"Ready! Requests route automatically through your configured providers.": "就绪!请求将自动通过您配置的提供商路由。",
|
||||
|
||||
"How it Works": "工作原理",
|
||||
"Docs": "文档",
|
||||
"GitHub": "GitHub",
|
||||
|
||||
"Legal": "法律",
|
||||
|
||||
"Manage your AI provider connections": "管理您的 AI 提供商连接",
|
||||
"Model combos with fallback": "模型组合及回退",
|
||||
"Monitor your API usage, token consumption, and request logs": "监控您的 API 使用量、Token 消耗和请求日志",
|
||||
@@ -575,15 +568,12 @@
|
||||
"MITM Proxy": "MITM 代理",
|
||||
"Translator": "翻译器",
|
||||
"Media Providers": "媒体提供商",
|
||||
|
||||
"Theme": "主题",
|
||||
"Remote": "远程",
|
||||
"Logout": "退出登录",
|
||||
"Change Log": "更新日志",
|
||||
|
||||
"Proxy Pools": "代理池",
|
||||
"MITM": "MITM",
|
||||
|
||||
"Loading...": "加载中...",
|
||||
"Enter your password to access the dashboard": "输入密码以访问仪表盘",
|
||||
"Password": "密码",
|
||||
@@ -592,7 +582,6 @@
|
||||
"Default password is 123456": "默认密码为 123456",
|
||||
"Invalid password": "密码错误",
|
||||
"An error occurred. Please try again.": "发生错误,请重试。",
|
||||
|
||||
"light": "浅色",
|
||||
"dark": "深色",
|
||||
"system": "跟随系统",
|
||||
@@ -602,11 +591,9 @@
|
||||
"Record request details for inspection in the logs view": "记录请求详情以在日志视图中查看",
|
||||
"Update Password": "修改密码",
|
||||
"Set Password": "设置密码",
|
||||
|
||||
"Overview": "概览",
|
||||
"Details": "详情",
|
||||
"Search...": "搜索...",
|
||||
|
||||
"Saving...": "保存中...",
|
||||
"Save": "保存",
|
||||
"Save Changes": "保存更改",
|
||||
@@ -615,27 +602,22 @@
|
||||
"Import": "导入",
|
||||
"Deploying... (may take ~1 min)": "部署中...(可能需要约 1 分钟)",
|
||||
"Deploy": "部署",
|
||||
|
||||
"Enable": "启用",
|
||||
"Disable": "禁用",
|
||||
"Token Saver": "Token 节省器",
|
||||
"Experimental": "实验性",
|
||||
"Compress tool output to reduce token usage.": "压缩工具输出以减少 Token 使用量。",
|
||||
"sk_9router (default)": "sk_9router(默认)",
|
||||
|
||||
"Install Tailscale": "安装 Tailscale",
|
||||
"Installing Tailscale...": "正在安装 Tailscale...",
|
||||
"Tailscale installed": "Tailscale 已安装",
|
||||
"Tailscale Funnel": "Tailscale Funnel",
|
||||
"Allow dashboard access via tunnel": "允许通过隧道访问仪表盘",
|
||||
|
||||
"Disconnected from server": "与服务器断开连接",
|
||||
"Attempting to reconnect...": "正在尝试重新连接...",
|
||||
"Click to retry": "点击重试",
|
||||
|
||||
"Failed to load changelog:": "加载更新日志失败:",
|
||||
"Copied!": "已复制!",
|
||||
|
||||
"Manage reusable per-connection proxies and bind them to provider connections.": "管理可复用的连接代理并绑定到提供商连接。",
|
||||
"Vercel Relay": "Vercel Relay",
|
||||
"Batch Import": "批量导入",
|
||||
@@ -665,7 +647,6 @@
|
||||
"Proxy pool deleted": "代理池已删除",
|
||||
"Proxy test passed": "代理测试通过",
|
||||
"Proxy test failed": "代理测试失败",
|
||||
|
||||
"Replay request flow — matches log files": "重放请求流程——匹配日志文件",
|
||||
"Client Request": "客户端请求",
|
||||
"Source Body": "源请求体",
|
||||
@@ -678,7 +659,6 @@
|
||||
"Send": "发送",
|
||||
"→ OpenAI": "→ OpenAI",
|
||||
"→ Target": "→ 目标",
|
||||
|
||||
"Terminal": "终端",
|
||||
"Full shell access": "完整 Shell 访问",
|
||||
"Desktop": "桌面",
|
||||
@@ -690,7 +670,6 @@
|
||||
"Works on any device": "适用于任何设备",
|
||||
"Access your terminal, desktop & files from anywhere": "从任何地方访问您的终端、桌面和文件",
|
||||
"Get 9Remote": "获取 9Remote",
|
||||
|
||||
"Manual configuration is still available if 9router is deployed on a remote server.": "如果 9router 部署在远程服务器上,仍可使用手动配置。",
|
||||
"How to Install": "如何安装",
|
||||
"Hide": "隐藏",
|
||||
@@ -714,9 +693,7 @@
|
||||
"Trust Cert": "信任证书",
|
||||
"Trusted": "已信任",
|
||||
"not detected locally": "未在本地检测到",
|
||||
|
||||
"Select to pre-fill, then edit model ID in the input": "选择以预填充,然后在输入框中编辑模型 ID",
|
||||
|
||||
"Free & Free Tier Providers": "免费及免费额度提供商",
|
||||
"Testing...": "测试中...",
|
||||
"Test All": "全部测试",
|
||||
@@ -740,13 +717,11 @@
|
||||
"Model ID (optional)": "模型 ID(可选)",
|
||||
"If provider lacks /models endpoint, enter a model ID to validate via chat/completions instead.": "如果提供商不支持 /models 端点,请输入模型 ID 通过 chat/completions 进行验证。",
|
||||
"(via inference test)": "(通过推理测试)",
|
||||
|
||||
"Delete this combo?": "删除此组合?",
|
||||
"Name is required": "名称为必填项",
|
||||
"Failed to create combo": "创建组合失败",
|
||||
"Failed to update combo": "更新组合失败",
|
||||
"Only letters, numbers, -, _ and . allowed": "仅允许使用字母、数字、-、_ 和 .",
|
||||
|
||||
"Input Cost": "输入成本",
|
||||
"Output Cost": "输出成本",
|
||||
"Total Cost": "总成本",
|
||||
@@ -755,18 +730,15 @@
|
||||
"Just now": "刚刚",
|
||||
"m ago": "分钟前",
|
||||
"h ago": "小时前",
|
||||
|
||||
"None": "无",
|
||||
"disabled": "已禁用",
|
||||
"OAuth Account": "OAuth 账号",
|
||||
"no_proxy:": "无代理:",
|
||||
"Pool:": "代理池:",
|
||||
"Legacy:": "旧版:",
|
||||
|
||||
"Error": "错误",
|
||||
"more": "更多",
|
||||
"Proxy": "代理",
|
||||
|
||||
"No authentication required": "无需身份验证",
|
||||
"This provider is ready to use.": "此提供商已准备就绪。",
|
||||
"Available Models": "可用模型",
|
||||
@@ -788,5 +760,7 @@
|
||||
"connections": "个连接",
|
||||
"Suggested free models (≥200k context):": "推荐的免费模型(≥200k 上下文):",
|
||||
"Get API Key →": "获取 API 密钥 →",
|
||||
"OAuth": "OAuth"
|
||||
"OAuth": "OAuth",
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "点击添加,再次点击删除。更改将自动保存。",
|
||||
"Close": "关闭"
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"Logout": "登出",
|
||||
"Login": "登錄",
|
||||
"Providers": "提供者",
|
||||
"Usage": "使用情況",
|
||||
"Usage": "統計",
|
||||
"API Key": "API 金鑰",
|
||||
"Connected": "已連接",
|
||||
"Disconnected": "未連接",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "深色",
|
||||
"Auto": "自動",
|
||||
"Endpoint": "端點",
|
||||
"Providers": "提供者",
|
||||
"Combos": "組合",
|
||||
"Usage": "統計",
|
||||
"Quota Tracker": "配額跟蹤",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "CLI 工具",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "無代理",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "逗號分隔的主機名/域以繞過代理。",
|
||||
"Test proxy URL": "測試代理 URL",
|
||||
"Apply": "應用",
|
||||
"Proxy settings applied": "已應用代理設置",
|
||||
"Proxy enabled": "已啟用代理",
|
||||
"Proxy disabled": "已禁用代理",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "使用 Antigravity IDE 和 GitHub Copilot → 與 9Router 中的任何提供者/模型一起",
|
||||
"How it works:": "工作原理:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Antigravity/Copilot IDE 請求 → DNS 重定向到 localhost:443 → MITM 代理攔截 → 9Router → 响應到 Antigravity/Copilot",
|
||||
"API Key": "API 金鑰",
|
||||
"No API keys — create one in Keys page": "沒有 API 金鑰 — 在金鑰頁面中創建一個",
|
||||
"sk_9router (default)": "sk_9router(默認)",
|
||||
"Server started": "服務器已啟動",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "需要 Sudo 密碼",
|
||||
"Enter your sudo password to start/stop MITM server": "輸入您的 Sudo 密碼以啟動/停止 MITM 服務器",
|
||||
"Sudo Password": "Sudo 密碼",
|
||||
"Confirm": "確認"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "點擊新增,再次點擊移除。變更將自動儲存。"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use client";
|
||||
|
||||
import { useState, useEffect } from "react";
|
||||
import { useState, useEffect, useRef } from "react";
|
||||
import { Card, Button, ModelSelectModal, ManualConfigModal } from "@/shared/components";
|
||||
import Image from "next/image";
|
||||
import BaseUrlSelect from "./BaseUrlSelect";
|
||||
@@ -19,6 +19,11 @@ export default function CopilotToolCard({ tool, isExpanded, onToggle, baseUrl, a
|
||||
const [showManualConfigModal, setShowManualConfigModal] = useState(false);
|
||||
const [selectedModels, setSelectedModels] = useState([]);
|
||||
const [modalOpen, setModalOpen] = useState(false);
|
||||
const selectedModelsRef = useRef([]);
|
||||
|
||||
useEffect(() => {
|
||||
selectedModelsRef.current = selectedModels;
|
||||
}, [selectedModels]);
|
||||
|
||||
useEffect(() => {
|
||||
if (apiKeys?.length > 0 && !selectedApiKey) {
|
||||
@@ -58,6 +63,21 @@ export default function CopilotToolCard({ tool, isExpanded, onToggle, baseUrl, a
|
||||
}
|
||||
};
|
||||
|
||||
const saveModels = async (models) => {
|
||||
try {
|
||||
const keyToUse = (selectedApiKey && selectedApiKey.trim())
|
||||
? selectedApiKey
|
||||
: (!cloudEnabled ? "sk_9router" : selectedApiKey);
|
||||
await fetch("/api/cli-tools/copilot-settings", {
|
||||
method: "POST",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
body: JSON.stringify({ baseUrl: getEffectiveBaseUrl(), apiKey: keyToUse, models }),
|
||||
});
|
||||
} catch (error) {
|
||||
console.log("Error saving models:", error);
|
||||
}
|
||||
};
|
||||
|
||||
const getConfigStatus = () => {
|
||||
if (!status) return null;
|
||||
if (!status.has9Router) return "not_configured";
|
||||
@@ -272,16 +292,23 @@ export default function CopilotToolCard({ tool, isExpanded, onToggle, baseUrl, a
|
||||
|
||||
<ModelSelectModal
|
||||
isOpen={modalOpen}
|
||||
onClose={() => setModalOpen(false)}
|
||||
onClose={() => {
|
||||
setModalOpen(false);
|
||||
saveModels(selectedModelsRef.current);
|
||||
}}
|
||||
onSelect={(model) => {
|
||||
if (!selectedModels.includes(model.value)) {
|
||||
setSelectedModels([...selectedModels, model.value]);
|
||||
}
|
||||
setModalOpen(false);
|
||||
}}
|
||||
onDeselect={(model) => {
|
||||
setSelectedModels(selectedModels.filter(m => m !== model.value));
|
||||
}}
|
||||
selectedModel={null}
|
||||
activeProviders={activeProviders}
|
||||
modelAliases={modelAliases}
|
||||
addedModelValues={selectedModels}
|
||||
closeOnSelect={false}
|
||||
title="Add Model for GitHub Copilot"
|
||||
/>
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use client";
|
||||
|
||||
import { useState, useEffect } from "react";
|
||||
import { useState, useEffect, useRef } from "react";
|
||||
import { Card, Button, ModelSelectModal, ManualConfigModal } from "@/shared/components";
|
||||
import Image from "next/image";
|
||||
import BaseUrlSelect from "./BaseUrlSelect";
|
||||
@@ -24,6 +24,11 @@ export default function OpenCodeToolCard({ tool, isExpanded, onToggle, baseUrl,
|
||||
const [customBaseUrl, setCustomBaseUrl] = useState("");
|
||||
const [selectedModels, setSelectedModels] = useState([]);
|
||||
const [activeModel, setActiveModel] = useState("");
|
||||
const selectedModelsRef = useRef([]);
|
||||
|
||||
useEffect(() => {
|
||||
selectedModelsRef.current = selectedModels;
|
||||
}, [selectedModels]);
|
||||
|
||||
useEffect(() => {
|
||||
if (apiKeys?.length > 0 && !selectedApiKey) {
|
||||
@@ -68,6 +73,28 @@ export default function OpenCodeToolCard({ tool, isExpanded, onToggle, baseUrl,
|
||||
}
|
||||
};
|
||||
|
||||
const saveModels = async (models) => {
|
||||
try {
|
||||
const keyToUse = (selectedApiKey && selectedApiKey.trim())
|
||||
? selectedApiKey
|
||||
: (!cloudEnabled ? "sk_9router" : selectedApiKey);
|
||||
const validActiveModel = models.includes(activeModel) ? activeModel : (models[0] || "");
|
||||
await fetch("/api/cli-tools/opencode-settings", {
|
||||
method: "POST",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
body: JSON.stringify({
|
||||
baseUrl: getEffectiveBaseUrl(),
|
||||
apiKey: keyToUse,
|
||||
models,
|
||||
activeModel: validActiveModel,
|
||||
subagentModel,
|
||||
}),
|
||||
});
|
||||
} catch (error) {
|
||||
console.log("Error saving models:", error);
|
||||
}
|
||||
};
|
||||
|
||||
const getConfigStatus = () => {
|
||||
if (!status?.installed) return null;
|
||||
if (!status.config) return "not_configured";
|
||||
@@ -427,17 +454,28 @@ export default function OpenCodeToolCard({ tool, isExpanded, onToggle, baseUrl,
|
||||
|
||||
<ModelSelectModal
|
||||
isOpen={modalOpen}
|
||||
onClose={() => setModalOpen(false)}
|
||||
onClose={() => {
|
||||
setModalOpen(false);
|
||||
saveModels(selectedModelsRef.current);
|
||||
}}
|
||||
onSelect={(model) => {
|
||||
if (!selectedModels.includes(model.value)) {
|
||||
setSelectedModels([...selectedModels, model.value]);
|
||||
if (!activeModel) setActiveModel(model.value);
|
||||
}
|
||||
setModalOpen(false);
|
||||
}}
|
||||
onDeselect={(model) => {
|
||||
const remaining = selectedModels.filter(m => m !== model.value);
|
||||
setSelectedModels(remaining);
|
||||
if (activeModel === model.value) {
|
||||
setActiveModel(remaining[0] || "");
|
||||
}
|
||||
}}
|
||||
selectedModel={null}
|
||||
activeProviders={activeProviders}
|
||||
modelAliases={modelAliases}
|
||||
addedModelValues={selectedModels}
|
||||
closeOnSelect={false}
|
||||
title="Add Model for OpenCode"
|
||||
/>
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
import { useEffect } from "react";
|
||||
import { cn } from "@/shared/utils/cn";
|
||||
import Button from "./Button";
|
||||
import Tooltip from "./Tooltip";
|
||||
|
||||
export default function Modal({
|
||||
isOpen,
|
||||
@@ -12,7 +13,6 @@ export default function Modal({
|
||||
footer,
|
||||
size = "md",
|
||||
closeOnOverlay = true,
|
||||
showCloseButton = true,
|
||||
showTrafficLights = true,
|
||||
className,
|
||||
}) {
|
||||
@@ -63,28 +63,38 @@ export default function Modal({
|
||||
)}
|
||||
>
|
||||
{/* Header */}
|
||||
{(title || showCloseButton) && (
|
||||
{(title || showTrafficLights) && (
|
||||
<div className="flex items-center justify-between p-2 border-b border-border-subtle">
|
||||
<div className="flex items-center">
|
||||
{/* Traffic lights — desktop only */}
|
||||
{showTrafficLights && (
|
||||
<div className="flex items-center gap-2 mr-4 ml-2">
|
||||
<div className="w-3 h-3 rounded-full bg-[#FF5F56]" />
|
||||
<div className="w-3 h-3 rounded-full bg-[#FFBD2E]" />
|
||||
<div className="w-3 h-3 rounded-full bg-[#27C93F]" />
|
||||
<div className="hidden md:flex items-center gap-2 mr-4 ml-2">
|
||||
<Tooltip text="Close" position="top" color="#FF5F56">
|
||||
<button
|
||||
onClick={onClose}
|
||||
aria-label="Close"
|
||||
title="Close"
|
||||
className="w-4 h-4 rounded-full bg-[#FF5F56] hover:brightness-90 transition-all cursor-pointer flex items-center justify-center group/dot"
|
||||
>
|
||||
<span className="text-[9px] font-bold text-white opacity-0 group-hover/dot:opacity-100 transition-opacity leading-none">✕</span>
|
||||
</button>
|
||||
</Tooltip>
|
||||
<div className="w-4 h-4 rounded-full bg-[#3a3a3a]/20 dark:bg-white/15 cursor-not-allowed" />
|
||||
<div className="w-4 h-4 rounded-full bg-[#3a3a3a]/20 dark:bg-white/15 cursor-not-allowed" />
|
||||
</div>
|
||||
)}
|
||||
{title && (
|
||||
<h2 className="text-lg font-semibold text-text-main">{title}</h2>
|
||||
)}
|
||||
</div>
|
||||
{showCloseButton && (
|
||||
<button
|
||||
onClick={onClose}
|
||||
className="p-1.5 rounded-[10px] text-text-muted hover:bg-surface-2 hover:text-text-main transition-colors"
|
||||
>
|
||||
<span className="material-symbols-outlined text-[20px]">close</span>
|
||||
</button>
|
||||
)}
|
||||
{/* X button — mobile only */}
|
||||
<button
|
||||
onClick={onClose}
|
||||
aria-label="Close"
|
||||
className="md:hidden p-1.5 rounded-[10px] text-text-muted hover:bg-surface-2 hover:text-text-main transition-colors"
|
||||
>
|
||||
<span className="material-symbols-outlined text-[20px]">close</span>
|
||||
</button>
|
||||
</div>
|
||||
)}
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
import { useState, useMemo, useEffect } from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import Modal from "./Modal";
|
||||
import Button from "./Button";
|
||||
import ProviderIcon from "./ProviderIcon";
|
||||
import { getModelsByProviderId } from "@/shared/constants/models";
|
||||
import { OAUTH_PROVIDERS, APIKEY_PROVIDERS, FREE_PROVIDERS, FREE_TIER_PROVIDERS, AI_PROVIDERS, isOpenAICompatibleProvider, isAnthropicCompatibleProvider, getProviderAlias } from "@/shared/constants/providers";
|
||||
|
||||
@@ -318,32 +318,37 @@ export default function ModelSelectModal({
|
||||
return combos.filter(c => c.name.toLowerCase().includes(query));
|
||||
}, [combos, searchQuery, kindFilter]);
|
||||
|
||||
// Sort models alphabetically, with added models floated to top
|
||||
const sortModels = (models) => {
|
||||
const added = models.filter(m => addedModelValues.includes(m.value)).sort((a, b) => a.name.localeCompare(b.name));
|
||||
const rest = models.filter(m => !addedModelValues.includes(m.value)).sort((a, b) => a.name.localeCompare(b.name));
|
||||
return [...added, ...rest];
|
||||
};
|
||||
|
||||
// Filter models by search query
|
||||
const filteredGroups = useMemo(() => {
|
||||
if (!searchQuery.trim()) return groupedModels;
|
||||
const query = searchQuery.trim().toLowerCase();
|
||||
|
||||
const query = searchQuery.toLowerCase();
|
||||
const filtered = {};
|
||||
|
||||
Object.entries(groupedModels).forEach(([providerId, group]) => {
|
||||
const matchedModels = group.models.filter(
|
||||
(m) =>
|
||||
m.name.toLowerCase().includes(query) ||
|
||||
m.id.toLowerCase().includes(query)
|
||||
);
|
||||
|
||||
const providerNameMatches = group.name.toLowerCase().includes(query);
|
||||
|
||||
if (matchedModels.length > 0 || providerNameMatches) {
|
||||
filtered[providerId] = {
|
||||
...group,
|
||||
models: matchedModels,
|
||||
};
|
||||
let models = group.models;
|
||||
if (query) {
|
||||
const providerNameMatches = group.name.toLowerCase().includes(query);
|
||||
models = models.filter(
|
||||
(m) =>
|
||||
m.name.toLowerCase().includes(query) ||
|
||||
m.id.toLowerCase().includes(query)
|
||||
);
|
||||
if (models.length === 0 && !providerNameMatches) return;
|
||||
}
|
||||
filtered[providerId] = {
|
||||
...group,
|
||||
models: sortModels(models),
|
||||
};
|
||||
});
|
||||
|
||||
return filtered;
|
||||
}, [groupedModels, searchQuery]);
|
||||
}, [groupedModels, searchQuery, addedModelValues]);
|
||||
|
||||
const handleSelect = (model) => {
|
||||
const value = model?.value || model?.name || model;
|
||||
@@ -371,20 +376,14 @@ export default function ModelSelectModal({
|
||||
title={title}
|
||||
size="md"
|
||||
className="p-4!"
|
||||
footer={
|
||||
!closeOnSelect ? (
|
||||
<Button
|
||||
onClick={() => {
|
||||
onClose();
|
||||
setSearchQuery("");
|
||||
}}
|
||||
fullWidth
|
||||
>
|
||||
Done
|
||||
</Button>
|
||||
) : null
|
||||
}
|
||||
footer={null}
|
||||
>
|
||||
{/* Info bar */}
|
||||
<div className="flex items-center gap-2 mb-3 px-2.5 py-2 bg-primary/8 border border-primary/20 rounded-lg text-xs text-text-muted">
|
||||
<span className="material-symbols-outlined text-primary shrink-0" style={{ fontSize: "14px" }}>info</span>
|
||||
<span>Click to add, click again to remove. Changes are saved automatically.</span>
|
||||
</div>
|
||||
|
||||
{/* Search - compact */}
|
||||
<div className="mb-3">
|
||||
<div className="relative">
|
||||
@@ -423,13 +422,13 @@ export default function ModelSelectModal({
|
||||
${isSelected
|
||||
? "bg-primary text-white border-primary"
|
||||
: addedModelValues.includes(combo.name)
|
||||
? "bg-green-500/10 border-green-500/30 text-green-700 dark:text-green-400 hover:border-green-500/50"
|
||||
? "bg-primary border-primary text-white hover:bg-primary-hover"
|
||||
: "bg-surface border-border text-text-main hover:border-primary/50 hover:bg-primary/5"
|
||||
}
|
||||
`}
|
||||
>
|
||||
{addedModelValues.includes(combo.name) && (
|
||||
<span className="material-symbols-outlined text-[12px]">check_circle</span>
|
||||
<span className="material-symbols-outlined leading-none" style={{ fontSize: "10px" }}>check</span>
|
||||
)}
|
||||
{combo.name}
|
||||
</button>
|
||||
@@ -444,9 +443,12 @@ export default function ModelSelectModal({
|
||||
<div key={providerId}>
|
||||
{/* Provider header */}
|
||||
<div className="flex items-center gap-1.5 mb-1.5 sticky top-0 bg-surface py-0.5">
|
||||
<div
|
||||
className="w-2 h-2 rounded-full"
|
||||
style={{ backgroundColor: group.color }}
|
||||
<ProviderIcon
|
||||
src={`/providers/${providerId}.png`}
|
||||
alt={group.name}
|
||||
size={14}
|
||||
fallbackText={(group.name || providerId).slice(0, 2).toUpperCase()}
|
||||
fallbackColor={group.color}
|
||||
/>
|
||||
<span className="text-xs font-medium text-primary">
|
||||
{group.name}
|
||||
@@ -472,14 +474,14 @@ export default function ModelSelectModal({
|
||||
: isSelected
|
||||
? "bg-primary text-white border-primary"
|
||||
: addedModelValues.includes(model.value)
|
||||
? "bg-green-500/10 border-green-500/30 text-green-700 dark:text-green-400 hover:border-green-500/50"
|
||||
? "bg-primary border-primary text-white hover:bg-primary-hover"
|
||||
: "bg-surface border-border text-text-main hover:border-primary/50 hover:bg-primary/5"
|
||||
}
|
||||
`}
|
||||
>
|
||||
<span className="flex items-center gap-1">
|
||||
{addedModelValues.includes(model.value) && !isPlaceholder && (
|
||||
<span className="material-symbols-outlined text-[12px]">check_circle</span>
|
||||
<span className="material-symbols-outlined leading-none" style={{ fontSize: "10px" }}>check</span>
|
||||
)}
|
||||
{isPlaceholder ? (
|
||||
<>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use client";
|
||||
|
||||
export default function Tooltip({ text, children, position = "top" }) {
|
||||
export default function Tooltip({ text, children, position = "top", color }) {
|
||||
const posClass = {
|
||||
top: "bottom-full left-1/2 -translate-x-1/2 mb-1.5",
|
||||
bottom: "top-full left-1/2 -translate-x-1/2 mt-1.5",
|
||||
@@ -8,10 +8,16 @@ export default function Tooltip({ text, children, position = "top" }) {
|
||||
right: "left-full top-1/2 -translate-y-1/2 ml-1.5",
|
||||
}[position];
|
||||
|
||||
const bgStyle = color ? { backgroundColor: color } : {};
|
||||
const bgClass = color ? "" : "bg-gray-900";
|
||||
|
||||
return (
|
||||
<div className="relative inline-flex group">
|
||||
{children}
|
||||
<div className={`pointer-events-none absolute ${posClass} z-50 w-max max-w-56 rounded px-2 py-1 text-[11px] leading-snug bg-gray-900 text-white opacity-0 group-hover:opacity-100 transition-opacity duration-150 whitespace-normal`}>
|
||||
<div
|
||||
className={`pointer-events-none absolute ${posClass} z-50 w-max max-w-56 rounded px-2 py-1 text-[11px] leading-snug ${bgClass} text-white opacity-0 group-hover:opacity-100 transition-opacity duration-150 whitespace-normal`}
|
||||
style={bgStyle}
|
||||
>
|
||||
{text}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user