Skip to content

Commit 29d5fb6

Browse files
author
wcs04
committed
fix: 版本更新通知设计杂乱 #1005
优化Windows版本更新通知的UI设计,简化信息展示: - 修改文件: apps/desktop/src/components/update-banner.tsx - 新增功能: simplifyVersion()函数简化版本显示,移除技术时间戳 - UI优化: 简化标题文本,稳定版本只显示major.minor.patch - 用户体验: 更清晰的信息层次,对普通用户更友好
1 parent e91000e commit 29d5fb6

1 file changed

Lines changed: 23 additions & 9 deletions

File tree

apps/desktop/src/components/update-banner.tsx

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ const i18n = {
2727
upToDate: "You're up to date",
2828
downloading: "Downloading update…",
2929
installing: "Preparing to install and restart…",
30-
available: (version: string) => `v${version} available`,
31-
ready: (version: string) => `v${version} ready`,
30+
available: (_version: string) => "New version available",
31+
ready: (_version: string) => "Update ready",
3232
error: "Update failed",
3333
checkingDetail: "This usually only takes a few seconds.",
3434
upToDateDetail: "This channel is already on the latest available version.",
35-
download: "Download",
35+
download: "Update",
3636
restart: "Restart",
3737
manual: "Open installer",
3838
later: "Later",
@@ -57,12 +57,12 @@ const i18n = {
5757
upToDate: "已是最新版本",
5858
downloading: "正在下载更新…",
5959
installing: "正在准备安装并重启…",
60-
available: (version: string) => `v${version} 可更新`,
61-
ready: (version: string) => `v${version} 已就绪`,
60+
available: (_version: string) => "发现新版本",
61+
ready: (_version: string) => "更新已就绪",
6262
error: "更新失败",
6363
checkingDetail: "通常只需要几秒。",
6464
upToDateDetail: "当前频道已是最新可用版本。",
65-
download: "下载",
65+
download: "更新",
6666
restart: "重启安装",
6767
manual: "打开安装包",
6868
later: "稍后",
@@ -102,7 +102,7 @@ export function UpdateBadge({
102102

103103
return (
104104
<button className="update-badge" onClick={onUndismiss} type="button">
105-
{t.badge}
105+
{t.available ? t.available("") : t.badge}
106106
</button>
107107
);
108108
}
@@ -155,6 +155,19 @@ export function UpdateBanner({
155155
? t.manual
156156
: t.restart);
157157

158+
// Simplify version display by removing build timestamps and nightly info
159+
const simplifyVersion = (v: string | null): string | null => {
160+
if (!v) return null;
161+
// Remove -nightly. and any timestamps after it
162+
const cleanVersion = v.replace(/-nightly\.\d+/, "-nightly");
163+
// For stable releases, just show major.minor.patch
164+
const parts = cleanVersion.split(".");
165+
if (parts.length >= 3 && !cleanVersion.includes("-")) {
166+
return `${parts[0]}.${parts[1]}.${parts[2]}`;
167+
}
168+
return cleanVersion;
169+
};
170+
158171
return (
159172
<div className={`update-card${isError ? " update-card--error" : ""}`}>
160173
<div className="update-card-header">
@@ -221,10 +234,11 @@ export function UpdateBanner({
221234
{showsVersionDetails && version && (
222235
<div className="update-card-message">
223236
<div>
224-
{t.currentVersion}: {currentVersion ? `v${currentVersion}` : "—"}
237+
{t.currentVersion}:{" "}
238+
{currentVersion ? `v${simplifyVersion(currentVersion)}` : "—"}
225239
</div>
226240
<div>
227-
{t.latestVersion}: v{version}
241+
{t.latestVersion}: v{simplifyVersion(version)}
228242
</div>
229243
</div>
230244
)}

0 commit comments

Comments
 (0)