fix(app): simplify server status indicators

This commit is contained in:
usrnk1
2026-07-14 10:55:15 +02:00
parent 11d2eb3ec8
commit f69c29b38c
20 changed files with 39 additions and 54 deletions
@@ -4,7 +4,7 @@
[data-slot="server-status-left"],
[data-slot="server-status-right"] {
fill: none;
stroke: var(--server-status-color);
stroke: currentColor;
}
[data-slot="server-status-dot"] {
@@ -13,60 +13,9 @@
&[data-state="reconnecting"] {
--server-status-color: var(--v2-state-fg-warning);
[data-slot="server-status-left"] {
animation: server-status-reconnecting-left 1.2s ease-in-out infinite;
}
[data-slot="server-status-right"] {
animation: server-status-reconnecting-right 1.2s ease-in-out infinite;
}
}
&[data-state="disconnected"] {
--server-status-color: var(--v2-state-fg-danger);
[data-slot="server-status-left"],
[data-slot="server-status-right"] {
animation: server-status-disconnected 1.2s ease-in-out infinite;
}
}
}
@keyframes server-status-reconnecting-left {
0%,
66%,
100% {
opacity: 1;
}
33% {
opacity: 0.5;
}
}
@keyframes server-status-reconnecting-right {
0%,
33%,
100% {
opacity: 1;
}
66% {
opacity: 0.5;
}
}
@keyframes server-status-disconnected {
0%,
100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
@media (prefers-reduced-motion: reduce) {
[data-component="server-status-icon"] [data-slot^="server-status-"] {
animation: none;
}
}
@@ -251,9 +251,9 @@ export function SessionHeader() {
})
const serverStatusLabel = createMemo(() => {
if (serverStatus() === "disconnected") {
return language.t("app.server.unreachable", { server: serverName(serverSDK().server) })
return language.t("app.server.status.disconnected", { server: serverName(serverSDK().server) })
}
return language.t("app.server.retrying")
return language.t("app.server.status.reconnecting", { server: serverName(serverSDK().server) })
})
const v2ActionsState = createMemo<SessionHeaderV2ActionsState>(() => ({
serverStatus: isDesktop() ? serverStatus() : undefined,
+2
View File
@@ -939,6 +939,8 @@ export const dict = {
"app.server.unreachable": "تعذر الوصول إلى {{server}}",
"app.server.retrying": "جاري إعادة المحاولة تلقائيًا...",
"app.server.status.reconnecting": "جارٍ إعادة الاتصال بـ {{server}}...",
"app.server.status.disconnected": "تعذر الاتصال بـ {{server}}",
"app.server.otherServers": "خوادم أخرى",
"dialog.server.add.usernamePlaceholder": "اسم المستخدم",
"dialog.server.add.passwordPlaceholder": "كلمة المرور",
+2
View File
@@ -953,6 +953,8 @@ export const dict = {
"app.server.unreachable": "Não foi possível conectar a {{server}}",
"app.server.retrying": "Tentando novamente automaticamente...",
"app.server.status.reconnecting": "Reconectando a {{server}}...",
"app.server.status.disconnected": "Não foi possível conectar a {{server}}",
"app.server.otherServers": "Outros servidores",
"dialog.server.add.usernamePlaceholder": "nome de usuário",
"dialog.server.add.passwordPlaceholder": "senha",
+2
View File
@@ -1029,6 +1029,8 @@ export const dict = {
"app.server.unreachable": "Nije moguće pristupiti {{server}}",
"app.server.retrying": "Automatski ponovni pokušaj...",
"app.server.status.reconnecting": "Ponovno povezivanje sa {{server}}...",
"app.server.status.disconnected": "Nije moguće povezati se sa {{server}}",
"app.server.otherServers": "Drugi serveri",
"dialog.server.add.usernamePlaceholder": "korisničko ime",
"dialog.server.add.passwordPlaceholder": "lozinka",
+2
View File
@@ -1021,6 +1021,8 @@ export const dict = {
"app.server.unreachable": "Kunne ikke nå {{server}}",
"app.server.retrying": "Prøver igen automatisk...",
"app.server.status.reconnecting": "Opretter forbindelse til {{server}} igen...",
"app.server.status.disconnected": "Kunne ikke oprette forbindelse til {{server}}",
"app.server.otherServers": "Andre servere",
"dialog.server.add.usernamePlaceholder": "brugernavn",
"dialog.server.add.passwordPlaceholder": "adgangskode",
+2
View File
@@ -965,6 +965,8 @@ export const dict = {
"app.server.unreachable": "Konnte {{server}} nicht erreichen",
"app.server.retrying": "Automatische erneute Verbindung...",
"app.server.status.reconnecting": "Verbindung zu {{server}} wird wiederhergestellt...",
"app.server.status.disconnected": "Verbindung zu {{server}} konnte nicht hergestellt werden",
"app.server.otherServers": "Andere Server",
"dialog.server.add.usernamePlaceholder": "Benutzername",
"dialog.server.add.passwordPlaceholder": "Passwort",
+2
View File
@@ -332,6 +332,8 @@ export const dict = {
"app.server.unreachable": "Could not reach {{server}}",
"app.server.retrying": "Retrying automatically...",
"app.server.status.reconnecting": "Reconnecting to {{server}}...",
"app.server.status.disconnected": "Couldn't connect to {{server}}",
"app.server.otherServers": "Other servers",
"dialog.server.title": "Servers",
+2
View File
@@ -1037,6 +1037,8 @@ export const dict = {
"app.server.unreachable": "No se pudo conectar con {{server}}",
"app.server.retrying": "Reintentando automáticamente...",
"app.server.status.reconnecting": "Reconectando con {{server}}...",
"app.server.status.disconnected": "No se pudo conectar con {{server}}",
"app.server.otherServers": "Otros servidores",
"dialog.server.add.usernamePlaceholder": "usuario",
"dialog.server.add.passwordPlaceholder": "contraseña",
+2
View File
@@ -965,6 +965,8 @@ export const dict = {
"app.server.unreachable": "Impossible de joindre {{server}}",
"app.server.retrying": "Nouvelle tentative automatique...",
"app.server.status.reconnecting": "Reconnexion à {{server}}...",
"app.server.status.disconnected": "Impossible de se connecter à {{server}}",
"app.server.otherServers": "Autres serveurs",
"dialog.server.add.usernamePlaceholder": "nom d'utilisateur",
"dialog.server.add.passwordPlaceholder": "mot de passe",
+2
View File
@@ -946,6 +946,8 @@ export const dict = {
"app.server.unreachable": "{{server}} に到達できませんでした",
"app.server.retrying": "自動的に再試行中...",
"app.server.status.reconnecting": "{{server}} に再接続しています...",
"app.server.status.disconnected": "{{server}} に接続できませんでした",
"app.server.otherServers": "その他のサーバー",
"dialog.server.add.usernamePlaceholder": "ユーザー名",
"dialog.server.add.passwordPlaceholder": "パスワード",
+2
View File
@@ -790,6 +790,8 @@ export const dict = {
"app.server.unreachable": "{{server}}에 연결할 수 없습니다",
"app.server.retrying": "자동으로 재시도 중...",
"app.server.status.reconnecting": "{{server}}에 다시 연결하는 중...",
"app.server.status.disconnected": "{{server}}에 연결할 수 없습니다",
"app.server.otherServers": "다른 서버",
"dialog.server.add.usernamePlaceholder": "사용자 이름",
"dialog.server.add.passwordPlaceholder": "비밀번호",
+2
View File
@@ -877,6 +877,8 @@ export const dict = {
"app.server.unreachable": "Kunne ikke nå {{server}}",
"app.server.retrying": "Prøver på nytt automatisk...",
"app.server.status.reconnecting": "Kobler til {{server}} på nytt...",
"app.server.status.disconnected": "Kunne ikke koble til {{server}}",
"app.server.otherServers": "Andre servere",
"dialog.server.add.usernamePlaceholder": "brukernavn",
"dialog.server.add.passwordPlaceholder": "passord",
+2
View File
@@ -952,6 +952,8 @@ export const dict = {
"app.server.unreachable": "Nie można połączyć z {{server}}",
"app.server.retrying": "Ponawianie automatycznie...",
"app.server.status.reconnecting": "Ponowne łączenie z {{server}}...",
"app.server.status.disconnected": "Nie można połączyć z {{server}}",
"app.server.otherServers": "Inne serwery",
"dialog.server.add.usernamePlaceholder": "nazwa użytkownika",
"dialog.server.add.passwordPlaceholder": "hasło",
+2
View File
@@ -1032,6 +1032,8 @@ export const dict = {
"app.server.unreachable": "Не удалось связаться с {{server}}",
"app.server.retrying": "Автоматическая повторная попытка...",
"app.server.status.reconnecting": "Повторное подключение к {{server}}...",
"app.server.status.disconnected": "Не удалось подключиться к {{server}}",
"app.server.otherServers": "Другие серверы",
"dialog.server.add.usernamePlaceholder": "имя пользователя",
"dialog.server.add.passwordPlaceholder": "пароль",
+2
View File
@@ -1016,6 +1016,8 @@ export const dict = {
"app.server.unreachable": "ไม่สามารถติดต่อ {{server}}",
"app.server.retrying": "กำลังลองใหม่โดยอัตโนมัติ...",
"app.server.status.reconnecting": "กำลังเชื่อมต่อกับ {{server}} อีกครั้ง...",
"app.server.status.disconnected": "ไม่สามารถเชื่อมต่อกับ {{server}}",
"app.server.otherServers": "เซิร์ฟเวอร์อื่น ๆ",
"dialog.server.add.usernamePlaceholder": "ชื่อผู้ใช้",
"dialog.server.add.passwordPlaceholder": "รหัสผ่าน",
+2
View File
@@ -1036,6 +1036,8 @@ export const dict = {
"app.server.unreachable": "{{server}} sunucusuna ulaşılamadı",
"app.server.retrying": "Otomatik olarak tekrar deneniyor...",
"app.server.status.reconnecting": "{{server}} sunucusuna yeniden bağlanılıyor...",
"app.server.status.disconnected": "{{server}} sunucusuna bağlanılamadı",
"app.server.otherServers": "Diğer sunucular",
"dialog.server.add.usernamePlaceholder": "kullanıcı adı",
"dialog.server.add.passwordPlaceholder": "parola",
+2
View File
@@ -333,6 +333,8 @@ export const dict = {
"app.server.unreachable": "Не вдалося досягти {{server}}",
"app.server.retrying": "Автоматичне повторення...",
"app.server.status.reconnecting": "Повторне підключення до {{server}}...",
"app.server.status.disconnected": "Не вдалося підключитися до {{server}}",
"app.server.otherServers": "Інші сервери",
"dialog.server.title": "Сервери",
+2
View File
@@ -1009,6 +1009,8 @@ export const dict = {
"app.server.unreachable": "无法连接到 {{server}}",
"app.server.retrying": "正在自动重试...",
"app.server.status.reconnecting": "正在重新连接到 {{server}}...",
"app.server.status.disconnected": "无法连接到 {{server}}",
"app.server.otherServers": "其他服务器",
"dialog.server.add.usernamePlaceholder": "用户名",
"dialog.server.add.passwordPlaceholder": "密码",
+2
View File
@@ -1005,6 +1005,8 @@ export const dict = {
"app.server.unreachable": "無法連線至 {{server}}",
"app.server.retrying": "正在自動重試...",
"app.server.status.reconnecting": "正在重新連線至 {{server}}...",
"app.server.status.disconnected": "無法連線至 {{server}}",
"app.server.otherServers": "其他伺服器",
"dialog.server.add.usernamePlaceholder": "使用者名稱",
"dialog.server.add.passwordPlaceholder": "密碼",