diff --git a/apps/web/app/components/sites/site-accounts-tab.tsx b/apps/web/app/components/sites/site-accounts-tab.tsx
index 91394541..f1af41f0 100644
--- a/apps/web/app/components/sites/site-accounts-tab.tsx
+++ b/apps/web/app/components/sites/site-accounts-tab.tsx
@@ -118,7 +118,7 @@ function AccountBlock({
onConfirm={async () => {
try {
await del.mutateAsync(a.id);
- toast.success(`已删除账号 ${a.label}`);
+ toast.success(`已删除账号「${a.label}」`);
} catch (err) {
toast.error(errorMessage(err, "删除失败"));
throw err;
@@ -260,7 +260,7 @@ function PasskeyForm({ site, label, has }: { site: SiteListItem; label: string;
}
}}
>
-
站点 Passkey(RSS 与下载链接用)
+ 站点 Passkey
用于 RSS 和下载链接,不参与登录。{has ? "填写新值保存会替换。" : "还没有保存。"}
diff --git a/apps/web/app/components/sites/site-add-dialog.tsx b/apps/web/app/components/sites/site-add-dialog.tsx
index 0ce87978..6048fe94 100644
--- a/apps/web/app/components/sites/site-add-dialog.tsx
+++ b/apps/web/app/components/sites/site-add-dialog.tsx
@@ -375,7 +375,7 @@ export function SiteAddDialog({ onClose, initialKind }: { onClose: () => void; i
)}
- "未实测"的定义没有在真实站点上验证过,列表和登录可能失败。
+ 标「未实测」的站点定义没有在真实站点上验证过,列表和登录可能失败。
) : step === 2 ? (
diff --git a/apps/web/app/components/sites/site-card.tsx b/apps/web/app/components/sites/site-card.tsx
index 1d00e5f3..5a421bf7 100644
--- a/apps/web/app/components/sites/site-card.tsx
+++ b/apps/web/app/components/sites/site-card.tsx
@@ -183,7 +183,7 @@ function CheckButtons({ site, checks, compact }: Omit & { com
size={compact ? "icon-sm" : "sm"}
disabled={h || !site.enabled}
aria-label="检测健康"
- title={site.enabled ? "检测健康:首页连通 + 登录态,走站点限流" : "站点已停用"}
+ title={site.enabled ? "检测健康:首页能否打开、登录态是否有效,计入站点限流" : "站点已停用"}
onClick={() => void checks.checkHealth(site)}
>
{h ? : }
@@ -194,7 +194,7 @@ function CheckButtons({ site, checks, compact }: Omit & { com
size={compact ? "icon-sm" : "sm"}
disabled={l || !hasAccount}
aria-label="刷新登录"
- title={hasAccount ? "刷新登录:用凭证刷新登录状态并拉取用户数据" : "先填写凭证"}
+ title={hasAccount ? "刷新登录:用凭证重新登录并拉取用户数据" : "先填写凭证"}
onClick={() => void checks.refreshLogin(site)}
>
{l ? : }
@@ -289,7 +289,7 @@ function FeedSiteCard({ site, onDialog }: Omit) {
diff --git a/apps/web/app/components/sites/site-dialogs.tsx b/apps/web/app/components/sites/site-dialogs.tsx
index b3d4b527..b02c3982 100644
--- a/apps/web/app/components/sites/site-dialogs.tsx
+++ b/apps/web/app/components/sites/site-dialogs.tsx
@@ -507,7 +507,7 @@ export function SiteEditSheet({ site, onClose }: { site: SiteListItem; onClose:
- User-Agent 随凭证保存,在"更新凭证"里填写。
+ User-Agent 随凭证保存,在「更新凭证」里填写。
);
@@ -544,9 +544,9 @@ export function DeleteSiteDialog({
}}
>
- - 站点、{site.accounts?.length ?? 0} 个账号和全部凭证删除
- - 已抓到的资源保留,标为"站点已关闭",不再产生新候选
- - 该站 RSS 停用;已有下载任务按原策略继续
+ - 站点、{site.accounts?.length ?? 0} 个账号和全部凭证都会删除
+ - 已抓到的资源保留,标为「站点已关闭」,不再进入收录评估
+ - 这个站点的 RSS 停用;已有下载任务继续
- 同一站点以后可以重新添加
diff --git a/apps/web/app/components/sites/site-failure-samples.tsx b/apps/web/app/components/sites/site-failure-samples.tsx
index eec8592f..fb86a0ce 100644
--- a/apps/web/app/components/sites/site-failure-samples.tsx
+++ b/apps/web/app/components/sites/site-failure-samples.tsx
@@ -70,7 +70,7 @@ export function SiteFailureSamples({ siteId, items }: { siteId: string; items: S
if (!items.length) return null;
return (
- 最近的失败页面(已脱敏,留最近 5 份)
+ 最近的失败页面(已脱敏,最多保留 5 份)
{items.map((s) => (
diff --git a/apps/web/app/components/sites/site-feed-dialog.tsx b/apps/web/app/components/sites/site-feed-dialog.tsx
index 79f2b7be..12d0dc6c 100644
--- a/apps/web/app/components/sites/site-feed-dialog.tsx
+++ b/apps/web/app/components/sites/site-feed-dialog.tsx
@@ -23,7 +23,7 @@ import { cn } from "~/lib/utils.ts";
const PURPOSES: { value: FeedPurpose; label: string; hint: string }[] = [
{ value: "generic", label: "发现", hint: "全站新种,进入识别和收录评估" },
{ value: "search", label: "追踪", hint: "按关键词、分类或收藏筛过的 RSS" },
- { value: "promotion", label: "促销", hint: "只含免费 / 促销种子的 RSS" },
+ { value: "promotion", label: "促销", hint: "只含免费 / 促销资源的 RSS" },
];
/** 首抓最多等 90 秒(站点限流排队);超时后提示去列表看 */
@@ -106,7 +106,7 @@ export function SiteFeedDialog({