feat: type the plugin host record, move plugin strings out of core and add lint checks

This commit is contained in:
LukeGus committed 2026-09-29 13:08:39 -05:00
1 parent bba06f7ff6
commit b8bbcd2196
626 files changed
+23884 -4590

No files matched your search

+11 -1
View File
@@ -112,7 +112,9 @@
"feature_docker_desc": "See containers, read logs and watch stats on any host running Docker."
},
"terminal": {
"retry": "Retry"
"retry": "Retry",
"clipboardReadFailed": "Failed to read from clipboard. Make sure clipboard permissions are granted.",
"clipboardWriteFailed": "Failed to copy to clipboard. Make sure the page is served over HTTPS or localhost."
},
"permissions": {
"use": {
@@ -133,5 +135,13 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Remote server required. Connect a remote server in Settings to use this connection type."
},
"hosts": {
"docsLink": "View docs",
"hostNotFound": "Host not found",
"loadingHost": "Loading host..."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Afstandbediener word benodig. Koppel 'n afstandbediener in Instellings om hierdie verbindingstipe te gebruik."
},
"hosts": {
"docsLink": "Bekyk dokumente",
"hostNotFound": "Gasheer nie gevind nie",
"loadingHost": "Laai gasheer..."
},
"terminal": {
"clipboardReadFailed": "Kon nie vanaf knipbord lees nie. Maak seker dat knipbordtoestemmings toegestaan is.",
"clipboardWriteFailed": "Kon nie na knipbord kopieer nie. Maak seker dat die bladsy oor HTTPS of localhost bedien word."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "يلزم وجود خادم بعيد. قم بتوصيل خادم بعيد في الإعدادات لاستخدام نوع الاتصال هذا."
},
"hosts": {
"docsLink": "عرض المستندات",
"hostNotFound": "المضيف غير موجود",
"loadingHost": "جارٍ تحميل المضيف..."
},
"terminal": {
"clipboardReadFailed": "فشلت القراءة من الحافظة. تأكد من منح أذونات الحافظة.",
"clipboardWriteFailed": "فشل النسخ إلى الحافظة. تأكد من تقديم الصفحة عبر HTTPS أو localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Подман"
}
}
},
"errors": {
"remoteServerRequired": "Изисква се отдалечен сървър. Свържете се с отдалечен сървър в „Настройки“, за да използвате този тип връзка."
},
"hosts": {
"docsLink": "Преглед на документи",
"hostNotFound": "Хостът не е намерен",
"loadingHost": "Зареждане на хоста..."
},
"terminal": {
"clipboardReadFailed": "Четенето от клипборда не бе успешно. Уверете се, че са предоставени разрешения за достъп до клипборда.",
"clipboardWriteFailed": "Копирането в буфера не бе успешно. Уверете се, че страницата се предоставя през HTTPS или localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "পডম্যান"
}
}
},
"errors": {
"remoteServerRequired": "রিমোট সার্ভার প্রয়োজন। এই সংযোগের ধরণটি ব্যবহার করতে সেটিংস-এ একটি রিমোট সার্ভার সংযুক্ত করুন।"
},
"hosts": {
"docsLink": "নথি দেখুন",
"hostNotFound": "হোস্ট খুঁজে পাওয়া যায়নি",
"loadingHost": "হোস্ট লোড হচ্ছে..."
},
"terminal": {
"clipboardReadFailed": "ক্লিপবোর্ড থেকে পড়তে ব্যর্থ হয়েছে। নিশ্চিত করুন যে ক্লিপবোর্ডের অনুমতি দেওয়া আছে।",
"clipboardWriteFailed": "ক্লিপবোর্ডে কপি করা সম্ভব হয়নি। নিশ্চিত করুন যে পৃষ্ঠাটি HTTPS বা লোকালহোস্টের মাধ্যমে পরিবেশিত হচ্ছে।"
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Cal un servidor remot. Connecteu un servidor remot a Configuració per utilitzar aquest tipus de connexió."
},
"hosts": {
"docsLink": "Veure documents",
"hostNotFound": "No s'ha trobat l'amfitrió",
"loadingHost": "S'està carregant l'amfitrió..."
},
"terminal": {
"clipboardReadFailed": "No s'ha pogut llegir del porta-retalls. Assegureu-vos que els permisos del porta-retalls estiguin concedits.",
"clipboardWriteFailed": "No s'ha pogut copiar al porta-retalls. Assegureu-vos que la pàgina es serveix per HTTPS o localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Je vyžadován vzdálený server. Pro použití tohoto typu připojení se připojte ke vzdálenému serveru v Nastavení."
},
"hosts": {
"docsLink": "Zobrazit dokumenty",
"hostNotFound": "Hostitel nenalezen",
"loadingHost": "Načítání hostitele..."
},
"terminal": {
"clipboardReadFailed": "Čtení ze schránky se nezdařilo. Ujistěte se, že máte povolena přístup ke schránce.",
"clipboardWriteFailed": "Kopírování do schránky se nezdařilo. Ujistěte se, že stránka je zobrazována přes HTTPS nebo localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Fjernserver kræves. Opret forbindelse til en fjernserver i Indstillinger for at bruge denne forbindelsestype."
},
"hosts": {
"docsLink": "Se dokumenter",
"hostNotFound": "Værten blev ikke fundet",
"loadingHost": "Indlæser vært..."
},
"terminal": {
"clipboardReadFailed": "Kunne ikke læse fra udklipsholderen. Sørg for, at der er givet tilladelse til udklipsholderen.",
"clipboardWriteFailed": "Kunne ikke kopiere til udklipsholder. Sørg for, at siden serveres via HTTPS eller localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Remote-Server erforderlich. Um diesen Verbindungstyp zu verwenden, verbinden Sie einen Remote-Server in den Einstellungen."
},
"hosts": {
"docsLink": "Dokumentation anzeigen",
"hostNotFound": "Host nicht gefunden",
"loadingHost": "Host wird geladen..."
},
"terminal": {
"clipboardReadFailed": "Lesen aus der Zwischenablage fehlgeschlagen. Stellen Sie sicher, dass die Zwischenablageberechtigungen erteilt wurden.",
"clipboardWriteFailed": "Kopieren in die Zwischenablage fehlgeschlagen. Stellen Sie sicher, dass die Seite über HTTPS oder localhost bereitgestellt wird."
}
}
@@ -114,5 +114,17 @@
"podman": "Πόντμαν"
}
}
},
"errors": {
"remoteServerRequired": "Απαιτείται απομακρυσμένος διακομιστής. Συνδέστε έναν απομακρυσμένο διακομιστή στις Ρυθμίσεις για να χρησιμοποιήσετε αυτόν τον τύπο σύνδεσης."
},
"hosts": {
"docsLink": "Προβολή εγγράφων",
"hostNotFound": "Δεν βρέθηκε κεντρικός υπολογιστής",
"loadingHost": "Φόρτωση κεντρικού υπολογιστή..."
},
"terminal": {
"clipboardReadFailed": "Αποτυχία ανάγνωσης από το πρόχειρο. Βεβαιωθείτε ότι έχουν εκχωρηθεί δικαιώματα στο πρόχειρο.",
"clipboardWriteFailed": "Αποτυχία αντιγραφής στο πρόχειρο. Βεβαιωθείτε ότι η σελίδα προβάλλεται μέσω HTTPS ή localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Se requiere un servidor remoto. Conecte un servidor remoto en Configuración para usar este tipo de conexión."
},
"hosts": {
"docsLink": "Ver documentación",
"hostNotFound": "Host no encontrado",
"loadingHost": "Cargando host..."
},
"terminal": {
"clipboardReadFailed": "No se pudo leer del portapapeles. Asegúrese de que los permisos del portapapeles estén concedidos.",
"clipboardWriteFailed": "Error al copiar al portapapeles. Asegúrese de que la página se sirva a través de HTTPS o en localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Etäpalvelin vaaditaan. Yhdistä etäpalvelin asetuksissa käyttääksesi tätä yhteystyyppiä."
},
"hosts": {
"docsLink": "Näytä dokumentit",
"hostNotFound": "Isäntää ei löydy",
"loadingHost": "Ladataan isäntää..."
},
"terminal": {
"clipboardReadFailed": "Leikepöydän lukeminen epäonnistui. Varmista, että leikepöydän käyttöoikeudet on myönnetty.",
"clipboardWriteFailed": "Kopiointi leikepöydälle epäonnistui. Varmista, että sivua käytetään HTTPS:n tai paikallisen isännän kautta."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Serveur distant requis. Connectez un serveur distant dans les paramètres pour utiliser ce type de connexion."
},
"hosts": {
"docsLink": "Voir la documentation",
"hostNotFound": "Hôte introuvable",
"loadingHost": "Chargement de l'hôte..."
},
"terminal": {
"clipboardReadFailed": "Échec de la lecture du presse-papiers. Assurez-vous que les autorisations du presse-papiers sont accordées.",
"clipboardWriteFailed": "Échec de la copie dans le presse-papiers. Assurez-vous que la page est servie en HTTPS ou localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "פודמן"
}
}
},
"errors": {
"remoteServerRequired": "נדרש שרת מרוחק. יש להתחבר לשרת מרוחק בהגדרות כדי להשתמש בסוג חיבור זה."
},
"hosts": {
"docsLink": "הצג מסמכים",
"hostNotFound": "המארח לא נמצא",
"loadingHost": "טוען מארח..."
},
"terminal": {
"clipboardReadFailed": "הקריאה מהלוח נכשלה. ודא שהרשאות הלוח ניתנות.",
"clipboardWriteFailed": "ההעתקה ללוח נכשלה. ודא שהדף מוגש דרך HTTPS או localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "रिमोट सर्वर आवश्यक है। इस कनेक्शन प्रकार का उपयोग करने के लिए सेटिंग्स में जाकर रिमोट सर्वर कनेक्ट करें।"
},
"hosts": {
"docsLink": "दस्तावेज़ देखें",
"hostNotFound": "होस्ट नहीं मिला",
"loadingHost": "होस्ट लोड हो रहा है..."
},
"terminal": {
"clipboardReadFailed": "क्लिपबोर्ड से पढ़ने में विफल। सुनिश्चित करें कि क्लिपबोर्ड अनुमतियाँ दी गई हैं।",
"clipboardWriteFailed": "क्लिपबोर्ड पर कॉपी करने में विफल। सुनिश्चित करें कि पेज HTTPS या लोकलहोस्ट पर सर्व किया गया है।"
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Távoli szerver szükséges. Csatlakoztasson egy távoli szervert a Beállításokban a kapcsolattípus használatához."
},
"hosts": {
"docsLink": "Dokumentumok megtekintése",
"hostNotFound": "Nem található gazdagép",
"loadingHost": "Gazdagép betöltése..."
},
"terminal": {
"clipboardReadFailed": "Nem sikerült beolvasni a vágólapról. Győződjön meg arról, hogy a vágólapra vonatkozó engedélyek meg vannak adva.",
"clipboardWriteFailed": "Nem sikerült a vágólapra másolni. Győződjön meg arról, hogy az oldal HTTPS vagy localhost protokollon keresztül jelenik meg."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Diperlukan server jarak jauh. Hubungkan server jarak jauh di Pengaturan untuk menggunakan jenis koneksi ini."
},
"hosts": {
"docsLink": "Lihat dokumen",
"hostNotFound": "Host tidak ditemukan",
"loadingHost": "Memuat host..."
},
"terminal": {
"clipboardReadFailed": "Gagal membaca dari clipboard. Pastikan izin clipboard telah diberikan.",
"clipboardWriteFailed": "Gagal menyalin ke papan klip. Pastikan halaman disajikan melalui HTTPS atau localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "È necessario un server remoto. Per utilizzare questo tipo di connessione, collega un server remoto nelle Impostazioni."
},
"hosts": {
"docsLink": "Visualizza documentazione",
"hostNotFound": "Host non trovato",
"loadingHost": "Caricamento host..."
},
"terminal": {
"clipboardReadFailed": "Lettura dagli appunti non riuscita. Assicurati che i permessi degli appunti siano stati concessi.",
"clipboardWriteFailed": "Copia negli appunti non riuscita. Assicurati che la pagina sia servita via HTTPS o localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "リモートサーバーが必要です。この接続タイプを使用するには、設定でリモートサーバーを接続してください。"
},
"hosts": {
"docsLink": "ドキュメントを表示",
"hostNotFound": "ホストが見つかりません",
"loadingHost": "ホストを読み込み中..."
},
"terminal": {
"clipboardReadFailed": "クリップボードからの読み取りに失敗しました。クリップボードのアクセス許可が付与されていることを確認してください。",
"clipboardWriteFailed": "クリップボードへのコピーに失敗しました。ページがHTTPSまたはlocalhostで提供されていることを確認してください。"
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "원격 서버가 필요합니다. 이 연결 유형을 사용하려면 설정에서 원격 서버를 연결하세요."
},
"hosts": {
"docsLink": "문서 보기",
"hostNotFound": "호스트를 찾을 수 없습니다",
"loadingHost": "호스트 로드 중..."
},
"terminal": {
"clipboardReadFailed": "클립보드에서 읽지 못했습니다. 클립보드 권한이 허용되었는지 확인하세요.",
"clipboardWriteFailed": "클립보드에 복사하지 못했습니다. 페이지가 HTTPS 또는 localhost에서 제공되는지 확인하세요."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Externe server vereist. Verbind een externe server in de instellingen om dit verbindingstype te gebruiken."
},
"hosts": {
"docsLink": "Documenten bekijken",
"hostNotFound": "Host niet gevonden",
"loadingHost": "Host wordt geladen..."
},
"terminal": {
"clipboardReadFailed": "Het lezen van het klembord is mislukt. Zorg ervoor dat de juiste klembordrechten zijn verleend.",
"clipboardWriteFailed": "Kopiëren naar klembord mislukt. Zorg ervoor dat de pagina via HTTPS of localhost wordt aangeboden."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Ekstern server kreves. Koble til en ekstern server i Innstillinger for å bruke denne tilkoblingstypen."
},
"hosts": {
"docsLink": "Vis dokumenter",
"hostNotFound": "Verten ble ikke funnet",
"loadingHost": "Laster inn vert ..."
},
"terminal": {
"clipboardReadFailed": "Kunne ikke lese fra utklippstavlen. Sørg for at utklippstavlen har tillatelser.",
"clipboardWriteFailed": "Kunne ikke kopiere til utklippstavlen. Sørg for at siden serveres via HTTPS eller localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Wymagany jest serwer zdalny. Połącz się z serwerem zdalnym w Ustawieniach, aby korzystać z tego typu połączenia."
},
"hosts": {
"docsLink": "Zobacz dokumentację",
"hostNotFound": "Nie znaleziono hosta",
"loadingHost": "Ładowanie hosta..."
},
"terminal": {
"clipboardReadFailed": "Nie udało się odczytać danych ze schowka. Upewnij się, że uprawnienia do schowka zostały przyznane.",
"clipboardWriteFailed": "Nie udało się skopiować do schowka. Upewnij się, że strona jest serwowana przez HTTPS lub localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "É necessário um servidor remoto. Conecte um servidor remoto nas Configurações para usar este tipo de conexão."
},
"hosts": {
"docsLink": "Ver documentos",
"hostNotFound": "Host não encontrado",
"loadingHost": "Carregando host..."
},
"terminal": {
"clipboardReadFailed": "Não foi possível ler o conteúdo da área de transferência. Certifique-se de que as permissões de acesso à área de transferência estejam concedidas.",
"clipboardWriteFailed": "Falha ao copiar para a área de transferência. Certifique-se de que a página esteja sendo servida via HTTPS ou localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "É necessário um servidor remoto. Ligue um servidor remoto nas Definições para utilizar este tipo de ligação."
},
"hosts": {
"docsLink": "Ver documentação",
"hostNotFound": "Host não encontrado",
"loadingHost": "A carregar o host..."
},
"terminal": {
"clipboardReadFailed": "Erro ao ler da área de transferência. Certifique-se de que as permissões da área de transferência foram concedidas.",
"clipboardWriteFailed": "Erro ao copiar para a área de transferência. Certifique-se de que a página é servida via HTTPS ou localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Este necesar un server la distanță. Conectați un server la distanță în Setări pentru a utiliza acest tip de conexiune."
},
"hosts": {
"docsLink": "Vizualizați documentele",
"hostNotFound": "Gazdă negăsită",
"loadingHost": "Se încarcă gazda..."
},
"terminal": {
"clipboardReadFailed": "Citirea din clipboard nu a reușit. Asigurați-vă că permisiunile de acces la clipboard sunt acordate.",
"clipboardWriteFailed": "Copierea în clipboard nu a reușit. Asigurați-vă că pagina este servită prin HTTPS sau localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Требуется удаленный сервер. Для использования этого типа подключения подключите удаленный сервер в настройках."
},
"hosts": {
"docsLink": "Документация",
"hostNotFound": "Хост не найден",
"loadingHost": "Загрузка хоста..."
},
"terminal": {
"clipboardReadFailed": "Не удалось прочитать из буфера обмена. Убедитесь, что предоставлены разрешения на доступ к буферу обмена.",
"clipboardWriteFailed": "Не удалось скопировать в буфер обмена. Убедитесь, что страница загружена по HTTPS или с localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Подман"
}
}
},
"errors": {
"remoteServerRequired": "Потребан је удаљени сервер. Повежите се са удаљеним сервером у Подешавањима да бисте користили овај тип везе."
},
"hosts": {
"docsLink": "Прикажи документе",
"hostNotFound": "Хост није пронађен",
"loadingHost": "Учитавање хоста..."
},
"terminal": {
"clipboardReadFailed": "Читање из међуспремника није успело. Уверите се да су дозволе за међуспремник одобрене.",
"clipboardWriteFailed": "Копирање у међуспремник није успело. Уверите се да се страница приказује преко HTTPS-а или localhost-а."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Fjärrserver krävs. Anslut en fjärrserver i Inställningar för att använda den här anslutningstypen."
},
"hosts": {
"docsLink": "Visa dokument",
"hostNotFound": "Värden hittades inte",
"loadingHost": "Laddar värd..."
},
"terminal": {
"clipboardReadFailed": "Kunde inte läsa från urklipp. Kontrollera att behörigheter för urklipp är beviljade.",
"clipboardWriteFailed": "Kunde inte kopiera till urklipp. Kontrollera att sidan serveras via HTTPS eller localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "พอดแมน"
}
}
},
"errors": {
"remoteServerRequired": "จำเป็นต้องใช้เซิร์ฟเวอร์ระยะไกล เชื่อมต่อเซิร์ฟเวอร์ระยะไกลในการตั้งค่าเพื่อใช้ประเภทการเชื่อมต่อนี้"
},
"hosts": {
"docsLink": "ดูเอกสาร",
"hostNotFound": "ไม่พบโฮสต์",
"loadingHost": "กำลังโหลดโฮสต์..."
},
"terminal": {
"clipboardReadFailed": "ไม่สามารถอ่านข้อมูลจากคลิปบอร์ดได้ โปรดตรวจสอบให้แน่ใจว่าได้ให้สิทธิ์การเข้าถึงคลิปบอร์ดแล้ว",
"clipboardWriteFailed": "ไม่สามารถคัดลอกไปยังคลิปบอร์ดได้ โปรดตรวจสอบให้แน่ใจว่าหน้าเว็บนั้นให้บริการผ่าน HTTPS หรือ localhost"
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Uzak sunucu gereklidir. Bu bağlantı türünü kullanmak için Ayarlar'dan bir uzak sunucu bağlayın."
},
"hosts": {
"docsLink": "Dokümanları görüntüle",
"hostNotFound": "Host bulunamadı",
"loadingHost": "Host yükleniyor..."
},
"terminal": {
"clipboardReadFailed": "Panodan okuma başarısız oldu. Pano izinlerinin verildiğinden emin olun.",
"clipboardWriteFailed": "Panoya kopyalama başarısız oldu. Sayfanın HTTPS veya localhost üzerinden sunulduğundan emin olun."
}
}
@@ -114,5 +114,17 @@
"podman": "Подман"
}
}
},
"errors": {
"remoteServerRequired": "Потрібен віддалений сервер. Підключіться до віддаленого сервера в налаштуваннях, щоб використовувати цей тип підключення."
},
"hosts": {
"docsLink": "Переглянути документи",
"hostNotFound": "Хост не знайдено",
"loadingHost": "Завантаження хоста..."
},
"terminal": {
"clipboardReadFailed": "Не вдалося прочитати з буфера обміну. Переконайтеся, що надано дозволи на доступ до буфера обміну.",
"clipboardWriteFailed": "Не вдалося скопіювати в буфер обміну. Переконайтеся, що сторінка обслуговується через HTTPS або localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "Cần có máy chủ từ xa. Kết nối máy chủ từ xa trong Cài đặt để sử dụng loại kết nối này."
},
"hosts": {
"docsLink": "Xem tài liệu",
"hostNotFound": "Không tìm thấy máy chủ",
"loadingHost": "Đang tải máy chủ..."
},
"terminal": {
"clipboardReadFailed": "Đọc từ clipboard thất bại. Đảm bảo quyền truy cập clipboard đã được cấp.",
"clipboardWriteFailed": "Sao chép vào clipboard thất bại. Đảm bảo trang được phục vụ qua HTTPS hoặc localhost."
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "需要远程服务器。请在“设置”中连接远程服务器以使用此连接类型。"
},
"hosts": {
"docsLink": "查看文档",
"hostNotFound": "未找到主机",
"loadingHost": "正在加载主机..."
},
"terminal": {
"clipboardReadFailed": "从剪贴板读取失败。请确保已授予剪贴板权限。",
"clipboardWriteFailed": "复制到剪贴板失败。请确保页面通过 HTTPS 或 localhost 提供服务。"
}
}
@@ -114,5 +114,17 @@
"podman": "Podman"
}
}
},
"errors": {
"remoteServerRequired": "需要遠端伺服器。請在「設定」中連接遠端伺服器以使用此連線類型。"
},
"hosts": {
"docsLink": "檢視文件",
"hostNotFound": "找不到主機",
"loadingHost": "正在載入主機..."
},
"terminal": {
"clipboardReadFailed": "從剪貼簿讀取失敗。請確認已授予剪貼簿權限。",
"clipboardWriteFailed": "複製到剪貼簿失敗。請確認頁面是透過 HTTPS 或 localhost 提供。"
}
}
+2 -4
View File
@@ -2,7 +2,7 @@ import { ConnectionScreen, FullScreenAppWrapper } from "@termix/plugin-sdk/ui";
import React from "react";
import { useTranslation } from "@termix/plugin-sdk/frontend";
import { DockerManager } from "./DockerManager.tsx";
import { toDockerHost } from "./types";
import { toDockerHost, type DockerHostSource } from "./types";
interface DockerAppProps {
hostId?: string;
@@ -37,9 +37,7 @@ const DockerApp: React.FC<DockerAppProps> = ({ hostId }) => {
return (
<DockerManager
host={toDockerHost(
hostConfig as unknown as Record<string, unknown>,
)}
host={toDockerHost(hostConfig as unknown as DockerHostSource)}
title={hostConfig.name || `${hostConfig.username}@${hostConfig.ip}`}
isVisible={true}
isTopbarOpen={false}
@@ -90,10 +90,7 @@ function DockerManagerInner({
// standalone window has no shell, so it keeps the host it was given.
const liveRecord = useHost(host?.id);
const currentHost = React.useMemo(
() =>
liveRecord
? toDockerHost(liveRecord as unknown as Record<string, unknown>)
: host,
() => (liveRecord ? toDockerHost(liveRecord) : host),
[liveRecord, host],
);
const enabled = dockerEnabled(currentHost);
+1 -1
View File
@@ -27,7 +27,7 @@ function DockerWidget({
);
}
const host = toDockerHost(record as unknown as Record<string, unknown>);
const host = toDockerHost(record);
return (
<div className="flex flex-col w-full h-full overflow-hidden">
<WidgetTitle title={widget.title} icon={<Box size={11} />} />
+2 -2
View File
@@ -9,10 +9,10 @@ import type {
import { DockerManager } from "./DockerManager";
import DockerApp from "./DockerApp";
import { dockerWidget } from "./DockerWidget";
import { dockerEnabled, toDockerHost } from "./types";
import { dockerEnabled, toDockerHost, type DockerHostSource } from "./types";
function DockerTab({ host, sshHost, label, isVisible }: TabProps) {
const record = (host ?? sshHost) as Record<string, unknown> | undefined;
const record = host ?? (sshHost as DockerHostSource | undefined);
return (
<DockerManager
host={record ? toDockerHost(record) : undefined}
+14 -2
View File
@@ -59,11 +59,23 @@ export interface DockerHost {
pluginSettings?: Record<string, Record<string, unknown> | undefined>;
}
/** The fields toDockerHost reads from a shell or API host. */
export type DockerHostSource = Omit<DockerHost, "id" | "name"> & {
id: string | number;
name?: string | null;
};
/** Any host record the shell or an API hands over, as a DockerHost. */
export function toDockerHost(record: Record<string, unknown>): DockerHost {
export function toDockerHost(record: DockerHostSource): DockerHost {
return {
...(record as unknown as DockerHost),
id: Number(record.id),
name: record.name ?? undefined,
ip: record.ip,
port: record.port,
username: record.username,
syncId: record.syncId ?? null,
connectionOrigin: record.connectionOrigin ?? null,
pluginSettings: record.pluginSettings,
};
}