diff --git a/ui/src/i18n/locales/en-US.ts b/ui/src/i18n/locales/en-US.ts
index 3d400f27e..88a75b138 100644
--- a/ui/src/i18n/locales/en-US.ts
+++ b/ui/src/i18n/locales/en-US.ts
@@ -234,19 +234,35 @@ export const enUS = {
// Slack
slack: {
title: "Slack",
- desc: "Slack app via Bolt framework.",
+ desc: "Socket mode status and channel configuration.",
+ lastStart: "Last start",
+ lastProbe: "Last probe",
+ probe: "Probe",
+ probeOk: "ok",
+ probeFailed: "failed",
},
// Signal
signal: {
title: "Signal",
- desc: "Signal via signal-cli or linked device.",
+ desc: "signal-cli status and channel configuration.",
+ baseUrl: "Base URL",
+ lastStart: "Last start",
+ lastProbe: "Last probe",
+ probe: "Probe",
+ probeOk: "ok",
+ probeFailed: "failed",
},
// iMessage
imessage: {
title: "iMessage",
- desc: "iMessage via BlueBubbles server.",
+ desc: "macOS bridge status and channel configuration.",
+ lastStart: "Last start",
+ lastProbe: "Last probe",
+ probe: "Probe",
+ probeOk: "ok",
+ probeFailed: "failed",
},
// Google Chat
diff --git a/ui/src/i18n/locales/zh-TW.ts b/ui/src/i18n/locales/zh-TW.ts
index 0296d5629..5d331c5ac 100644
--- a/ui/src/i18n/locales/zh-TW.ts
+++ b/ui/src/i18n/locales/zh-TW.ts
@@ -241,19 +241,35 @@ export const zhTW = {
// Slack
slack: {
title: "Slack",
- desc: "透過 Bolt 框架連接 Slack 應用程式。",
+ desc: "Socket 模式狀態與頻道設定。",
+ lastStart: "上次啟動",
+ lastProbe: "上次探測",
+ probe: "探測",
+ probeOk: "正常",
+ probeFailed: "失敗",
},
// Signal
signal: {
title: "Signal",
- desc: "透過 signal-cli 或已連結裝置連接 Signal。",
+ desc: "signal-cli 狀態與頻道設定。",
+ baseUrl: "Base URL",
+ lastStart: "上次啟動",
+ lastProbe: "上次探測",
+ probe: "探測",
+ probeOk: "正常",
+ probeFailed: "失敗",
},
// iMessage
imessage: {
title: "iMessage",
- desc: "透過 BlueBubbles 伺服器連接 iMessage。",
+ desc: "macOS 橋接器狀態與頻道設定。",
+ lastStart: "上次啟動",
+ lastProbe: "上次探測",
+ probe: "探測",
+ probeOk: "正常",
+ probeFailed: "失敗",
},
// Google Chat
diff --git a/ui/src/ui/views/channels.imessage.ts b/ui/src/ui/views/channels.imessage.ts
index 85fd90d03..417a94733 100644
--- a/ui/src/ui/views/channels.imessage.ts
+++ b/ui/src/ui/views/channels.imessage.ts
@@ -1,5 +1,6 @@
import { html, nothing } from "lit";
+import { t } from "../../i18n";
import { formatAgo } from "../format";
import type { IMessageStatus } from "../types";
import type { ChannelsProps } from "./channels.types";
@@ -15,25 +16,25 @@ export function renderIMessageCard(params: {
return html`
iMessage
-
macOS bridge status and channel configuration.
+
${t("channels.imessage.desc")}
${accountCountLabel}
- Configured
- ${imessage?.configured ? "Yes" : "No"}
+ ${t("channels.labels.configured")}
+ ${imessage?.configured ? t("common.yes") : t("common.no")}
- Running
- ${imessage?.running ? "Yes" : "No"}
+ ${t("channels.labels.running")}
+ ${imessage?.running ? t("common.yes") : t("common.no")}
- Last start
- ${imessage?.lastStartAt ? formatAgo(imessage.lastStartAt) : "n/a"}
+ ${t("channels.imessage.lastStart")}
+ ${imessage?.lastStartAt ? formatAgo(imessage.lastStartAt) : t("common.na")}
- Last probe
- ${imessage?.lastProbeAt ? formatAgo(imessage.lastProbeAt) : "n/a"}
+ ${t("channels.imessage.lastProbe")}
+ ${imessage?.lastProbeAt ? formatAgo(imessage.lastProbeAt) : t("common.na")}
@@ -45,7 +46,7 @@ export function renderIMessageCard(params: {
${imessage?.probe
? html`
- Probe ${imessage.probe.ok ? "ok" : "failed"} ·
+ ${t("channels.imessage.probe")} ${imessage.probe.ok ? t("channels.imessage.probeOk") : t("channels.imessage.probeFailed")} ·
${imessage.probe.error ?? ""}
`
: nothing}
@@ -54,7 +55,7 @@ export function renderIMessageCard(params: {
diff --git a/ui/src/ui/views/channels.signal.ts b/ui/src/ui/views/channels.signal.ts
index 9d4f6c147..71122c42a 100644
--- a/ui/src/ui/views/channels.signal.ts
+++ b/ui/src/ui/views/channels.signal.ts
@@ -1,5 +1,6 @@
import { html, nothing } from "lit";
+import { t } from "../../i18n";
import { formatAgo } from "../format";
import type { SignalStatus } from "../types";
import type { ChannelsProps } from "./channels.types";
@@ -15,29 +16,29 @@ export function renderSignalCard(params: {
return html`
Signal
-
signal-cli status and channel configuration.
+
${t("channels.signal.desc")}
${accountCountLabel}
- Configured
- ${signal?.configured ? "Yes" : "No"}
+ ${t("channels.labels.configured")}
+ ${signal?.configured ? t("common.yes") : t("common.no")}
- Running
- ${signal?.running ? "Yes" : "No"}
+ ${t("channels.labels.running")}
+ ${signal?.running ? t("common.yes") : t("common.no")}
- Base URL
- ${signal?.baseUrl ?? "n/a"}
+ ${t("channels.signal.baseUrl")}
+ ${signal?.baseUrl ?? t("common.na")}
- Last start
- ${signal?.lastStartAt ? formatAgo(signal.lastStartAt) : "n/a"}
+ ${t("channels.signal.lastStart")}
+ ${signal?.lastStartAt ? formatAgo(signal.lastStartAt) : t("common.na")}
- Last probe
- ${signal?.lastProbeAt ? formatAgo(signal.lastProbeAt) : "n/a"}
+ ${t("channels.signal.lastProbe")}
+ ${signal?.lastProbeAt ? formatAgo(signal.lastProbeAt) : t("common.na")}
@@ -49,7 +50,7 @@ export function renderSignalCard(params: {
${signal?.probe
? html`
- Probe ${signal.probe.ok ? "ok" : "failed"} ·
+ ${t("channels.signal.probe")} ${signal.probe.ok ? t("channels.signal.probeOk") : t("channels.signal.probeFailed")} ·
${signal.probe.status ?? ""} ${signal.probe.error ?? ""}
`
: nothing}
@@ -58,7 +59,7 @@ export function renderSignalCard(params: {
diff --git a/ui/src/ui/views/channels.slack.ts b/ui/src/ui/views/channels.slack.ts
index eb93ac4c3..a47be7fe6 100644
--- a/ui/src/ui/views/channels.slack.ts
+++ b/ui/src/ui/views/channels.slack.ts
@@ -1,5 +1,6 @@
import { html, nothing } from "lit";
+import { t } from "../../i18n";
import { formatAgo } from "../format";
import type { SlackStatus } from "../types";
import type { ChannelsProps } from "./channels.types";
@@ -15,25 +16,25 @@ export function renderSlackCard(params: {
return html`
Slack
-
Socket mode status and channel configuration.
+
${t("channels.slack.desc")}
${accountCountLabel}
- Configured
- ${slack?.configured ? "Yes" : "No"}
+ ${t("channels.labels.configured")}
+ ${slack?.configured ? t("common.yes") : t("common.no")}
- Running
- ${slack?.running ? "Yes" : "No"}
+ ${t("channels.labels.running")}
+ ${slack?.running ? t("common.yes") : t("common.no")}
- Last start
- ${slack?.lastStartAt ? formatAgo(slack.lastStartAt) : "n/a"}
+ ${t("channels.slack.lastStart")}
+ ${slack?.lastStartAt ? formatAgo(slack.lastStartAt) : t("common.na")}
- Last probe
- ${slack?.lastProbeAt ? formatAgo(slack.lastProbeAt) : "n/a"}
+ ${t("channels.slack.lastProbe")}
+ ${slack?.lastProbeAt ? formatAgo(slack.lastProbeAt) : t("common.na")}
@@ -45,7 +46,7 @@ export function renderSlackCard(params: {
${slack?.probe
? html`
- Probe ${slack.probe.ok ? "ok" : "failed"} ·
+ ${t("channels.slack.probe")} ${slack.probe.ok ? t("channels.slack.probeOk") : t("channels.slack.probeFailed")} ·
${slack.probe.status ?? ""} ${slack.probe.error ?? ""}
`
: nothing}
@@ -54,7 +55,7 @@ export function renderSlackCard(params: {