feat(desktop): support remote runtime headers

This commit is contained in:
Bohdan Triapitsyn
2026-06-30 00:30:48 +03:00
parent 9c1eb755f9
commit 359c73fcf3
23 changed files with 458 additions and 45 deletions
@@ -258,6 +258,12 @@ export const settingsDict = {
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://host:port',
'settings.remoteInstances.direct.field.tokenPlaceholder': 'Connection token (optional for trusted local servers)',
'settings.remoteInstances.direct.note': 'Connection tokens are saved on this device and used only when this app connects to that server.',
'settings.remoteInstances.direct.headers.title': 'Additional headers',
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
'settings.remoteInstances.direct.actions.add': 'Add Server',
'settings.remoteInstances.direct.import.description': 'Paste a connection link from another OpenChamber server.',
'settings.remoteInstances.direct.import.placeholder': 'openchamber://connect?...',
@@ -225,6 +225,12 @@ export const settingsDict = {
"settings.remoteInstances.direct.field.urlPlaceholder": "https://host:port",
"settings.remoteInstances.direct.field.tokenPlaceholder": "Token de conexión (opcional para servidores locales de confianza)",
"settings.remoteInstances.direct.note": "Los tokens de conexión se guardan en este dispositivo y solo se usan cuando esta app se conecta a ese servidor.",
"settings.remoteInstances.direct.headers.title": "Additional headers",
"settings.remoteInstances.direct.headers.description": "Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.",
"settings.remoteInstances.direct.headers.field.namePlaceholder": "Header name",
"settings.remoteInstances.direct.headers.field.valuePlaceholder": "Header value",
"settings.remoteInstances.direct.headers.actions.add": "Add header",
"settings.remoteInstances.direct.headers.removeAria": "Remove header",
"settings.remoteInstances.direct.actions.add": "Añadir servidor",
"settings.remoteInstances.direct.import.description": "Pega un enlace de conexión de otro servidor de OpenChamber.",
"settings.remoteInstances.direct.import.placeholder": "openchamber://connect?...",
@@ -1729,6 +1729,12 @@ export const settingsDict = {
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://hôte:port',
'settings.remoteInstances.direct.field.tokenPlaceholder': 'Token de connexion (facultatif pour les serveurs locaux de confiance)',
'settings.remoteInstances.direct.note': 'Les tokens de connexion sont enregistrés sur cet appareil et utilisés uniquement lorsque cette application se connecte à ce serveur.',
'settings.remoteInstances.direct.headers.title': 'Additional headers',
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
'settings.remoteInstances.direct.actions.add': 'Ajouter le serveur',
'settings.remoteInstances.direct.import.description': 'Collez un lien de connexion provenant d’un autre serveur OpenChamber.',
'settings.remoteInstances.direct.import.placeholder': 'openchamber://connect?...',
@@ -258,6 +258,12 @@ export const settingsDict = {
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://host:port',
'settings.remoteInstances.direct.field.tokenPlaceholder': '接続 Token(信頼できるローカルサーバーでは任意)',
'settings.remoteInstances.direct.note': '接続 Token はこのデバイスに保存され、このアプリがそのサーバーに接続するときにのみ使用されます。',
'settings.remoteInstances.direct.headers.title': 'Additional headers',
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
'settings.remoteInstances.direct.actions.add': 'サーバーを追加',
'settings.remoteInstances.direct.import.description': '別の OpenChamber サーバーからの接続リンクを貼り付けてください。',
'settings.remoteInstances.direct.import.placeholder': 'openchamber://connect?...',
@@ -225,6 +225,12 @@ export const settingsDict = {
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://host:port',
'settings.remoteInstances.direct.field.tokenPlaceholder': '연결 토큰(신뢰할 수 있는 로컬 서버는 선택 사항)',
'settings.remoteInstances.direct.note': '연결 토큰은 이 기기에 저장되며 이 앱이 해당 서버에 연결할 때만 사용됩니다.',
'settings.remoteInstances.direct.headers.title': 'Additional headers',
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
'settings.remoteInstances.direct.actions.add': '서버 추가',
'settings.remoteInstances.direct.import.description': '다른 OpenChamber 서버에서 만든 연결 링크를 붙여넣으세요.',
'settings.remoteInstances.direct.import.placeholder': 'openchamber://connect?...',
@@ -1434,6 +1434,12 @@ export const settingsDict = {
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://host:port',
'settings.remoteInstances.direct.field.tokenPlaceholder': 'Token połączenia (opcjonalny dla zaufanych serwerów lokalnych)',
'settings.remoteInstances.direct.note': 'Tokeny połączenia są zapisywane na tym urządzeniu i używane tylko wtedy, gdy ta aplikacja łączy się z danym serwerem.',
'settings.remoteInstances.direct.headers.title': 'Additional headers',
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
'settings.remoteInstances.direct.actions.add': 'Dodaj serwer',
'settings.remoteInstances.direct.import.description': 'Wklej link połączenia z innego serwera OpenChamber.',
'settings.remoteInstances.direct.import.placeholder': 'openchamber://connect?...',
@@ -225,6 +225,12 @@ export const settingsDict = {
"settings.remoteInstances.direct.field.urlPlaceholder": "https://host:port",
"settings.remoteInstances.direct.field.tokenPlaceholder": "Token de conexão (opcional para servidores locais confiáveis)",
"settings.remoteInstances.direct.note": "Os tokens de conexão ficam salvos neste dispositivo e são usados apenas quando este app se conecta a esse servidor.",
"settings.remoteInstances.direct.headers.title": "Additional headers",
"settings.remoteInstances.direct.headers.description": "Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.",
"settings.remoteInstances.direct.headers.field.namePlaceholder": "Header name",
"settings.remoteInstances.direct.headers.field.valuePlaceholder": "Header value",
"settings.remoteInstances.direct.headers.actions.add": "Add header",
"settings.remoteInstances.direct.headers.removeAria": "Remove header",
"settings.remoteInstances.direct.actions.add": "Adicionar servidor",
"settings.remoteInstances.direct.import.description": "Cole um link de conexão de outro servidor OpenChamber.",
"settings.remoteInstances.direct.import.placeholder": "openchamber://connect?...",
@@ -225,6 +225,12 @@ export const settingsDict = {
"settings.remoteInstances.direct.field.urlPlaceholder": "https://host:port",
"settings.remoteInstances.direct.field.tokenPlaceholder": "Токен підключення (необов’язково для довірених локальних серверів)",
"settings.remoteInstances.direct.note": "Токени підключення зберігаються на цьому пристрої й використовуються лише коли цей застосунок підключається до відповідного сервера.",
"settings.remoteInstances.direct.headers.title": "Additional headers",
"settings.remoteInstances.direct.headers.description": "Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.",
"settings.remoteInstances.direct.headers.field.namePlaceholder": "Header name",
"settings.remoteInstances.direct.headers.field.valuePlaceholder": "Header value",
"settings.remoteInstances.direct.headers.actions.add": "Add header",
"settings.remoteInstances.direct.headers.removeAria": "Remove header",
"settings.remoteInstances.direct.actions.add": "Додати сервер",
"settings.remoteInstances.direct.import.description": "Вставте посилання для підключення з іншого сервера OpenChamber.",
"settings.remoteInstances.direct.import.placeholder": "openchamber://connect?...",
@@ -225,6 +225,12 @@ export const settingsDict = {
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://host:port',
'settings.remoteInstances.direct.field.tokenPlaceholder': '连接令牌(受信任的本地服务器可选)',
'settings.remoteInstances.direct.note': '连接令牌会保存在此设备上,并且只在此应用连接到该服务器时使用。',
'settings.remoteInstances.direct.headers.title': 'Additional headers',
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
'settings.remoteInstances.direct.actions.add': '添加服务器',
'settings.remoteInstances.direct.import.description': '粘贴来自另一个 OpenChamber 服务器的连接链接。',
'settings.remoteInstances.direct.import.placeholder': 'openchamber://connect?...',
@@ -231,6 +231,12 @@
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://openchamber.example.com',
'settings.remoteInstances.direct.field.tokenPlaceholder': '用戶端 token(可選)',
'settings.remoteInstances.direct.note': '直接連線假設遠端伺服器已在執行並可從此裝置存取。',
'settings.remoteInstances.direct.headers.title': 'Additional headers',
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
'settings.remoteInstances.direct.actions.add': '新增直接連線',
'settings.remoteInstances.direct.import.description': '貼上 connect-url 輸出或 openchamber://connect 連結來匯入。',
'settings.remoteInstances.direct.import.placeholder': '貼上連線連結',