feat(web): add merge hint to CLI and MCP user credentials dialogs

Both dialogs now show an amber callout explaining that chat users
(Telegram, Discord, etc.) must be merged into a tenant user via
Contacts page before they can have per-user credentials.
i18n: en/vi/zh for both cli-credentials and mcp namespaces.
This commit is contained in:
viettranx committed 2026-04-02 15:18:06 +07:00
1 parent 5bad031908
commit bfd65828a6
8 files changed
+15 -7

No files matched your search

@@ -81,6 +81,7 @@
"saveFailed": "Failed to save user credentials",
"deleted": "User credentials deleted",
"deleteFailed": "Failed to delete user credentials",
"envRequired": "At least one environment variable is required"
"envRequired": "At least one environment variable is required",
"mergeHint": "Chat users (Telegram, Discord, etc.) must be merged into a tenant user first via Contacts page before they can have per-user credentials."
}
}
+2 -1
View File
@@ -127,6 +127,7 @@
"addHeader": "Add Header",
"addEnv": "Add Variable",
"saveFailed": "Failed to save credentials",
"deleteFailed": "Failed to delete credentials"
"deleteFailed": "Failed to delete credentials",
"mergeHint": "Chat users (Telegram, Discord, etc.) must be merged into a tenant user first via Contacts page before they can have per-user credentials."
}
}
@@ -81,6 +81,7 @@
"saveFailed": "Không thể lưu thông tin người dùng",
"deleted": "Đã xóa thông tin người dùng",
"deleteFailed": "Không thể xóa thông tin người dùng",
"envRequired": "Cần ít nhất một biến môi trường"
"envRequired": "Cần ít nhất một biến môi trường",
"mergeHint": "Người dùng chat (Telegram, Discord...) cần được gộp vào tenant user qua trang Contacts trước khi có thể thiết lập credentials riêng."
}
}
+2 -1
View File
@@ -127,6 +127,7 @@
"addHeader": "Thêm Header",
"addEnv": "Thêm biến",
"saveFailed": "Lưu credentials thất bại",
"deleteFailed": "Xóa credentials thất bại"
"deleteFailed": "Xóa credentials thất bại",
"mergeHint": "Người dùng chat (Telegram, Discord...) cần được gộp vào tenant user qua trang Contacts trước khi có thể thiết lập credentials riêng."
}
}
@@ -81,6 +81,7 @@
"saveFailed": "保存用户凭证失败",
"deleted": "用户凭证已删除",
"deleteFailed": "删除用户凭证失败",
"envRequired": "至少需要一个环境变量"
"envRequired": "至少需要一个环境变量",
"mergeHint": "聊天用户(Telegram、Discord 等)需要先通过联系人页面合并为租户用户,才能设置独立凭证。"
}
}
+2 -1
View File
@@ -127,6 +127,7 @@
"addHeader": "添加 Header",
"addEnv": "添加变量",
"saveFailed": "保存凭据失败",
"deleteFailed": "删除凭据失败"
"deleteFailed": "删除凭据失败",
"mergeHint": "聊天用户(Telegram、Discord 等)需要先通过联系人页面合并为租户用户,才能设置独立凭证。"
}
}
@@ -240,6 +240,7 @@ export function CLIUserCredentialsDialog({ open, onOpenChange, binary }: CLIUser
source="tenant_user"
allowCustom
/>
<p className="text-xs text-amber-600 dark:text-amber-400 bg-amber-50 dark:bg-amber-950/30 rounded-md px-2.5 py-1.5 border border-amber-200 dark:border-amber-800">{t("userCredentials.mergeHint")}</p>
</div>
<div className="flex flex-col gap-1.5">
@@ -147,7 +147,8 @@ export function MCPUserCredentialsDialog({
onChange={setSelectedUserId}
placeholder={t("userCredentials.selectUser")}
source="tenant_user"
/>
/>
<p className="text-xs text-amber-600 dark:text-amber-400 bg-amber-50 dark:bg-amber-950/30 rounded-md px-2.5 py-1.5 border border-amber-200 dark:border-amber-800">{t("userCredentials.mergeHint")}</p>
</div>
)}