149 lines
5.1 KiB
TypeScript
149 lines
5.1 KiB
TypeScript
import Link from "next/link";
|
||
import type { Metadata } from "next";
|
||
import SiteShell from "@/components/SiteShell";
|
||
|
||
export const metadata: Metadata = {
|
||
title: "更新日志 · nomadro",
|
||
description: "nomadro 产品更新与功能迭代记录",
|
||
};
|
||
|
||
const LOGS = [
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "性能优化",
|
||
items: [
|
||
"首页行程/计算器等中屏板块改为视口内按需加载;匹配弹窗与对比弹窗按需拆包",
|
||
"闲时再挂载引导/反馈等 chrome;去掉全局 MutationObserver 开销",
|
||
"粒子画布延后启动、去掉连线计算;Loader 更快退出",
|
||
"Outfit 自托管 + 系统中文字体,去掉阻塞的 Google Fonts 外链",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "计划深化",
|
||
items: [
|
||
"修复停留签证提醒(中英文国家名对齐),超期站点醒目提示",
|
||
"计划页接入签证目录:按行程国家展示游民签证方案与收入/审批信息",
|
||
"导出日历(.ics):设出发月后可导入手机 / Google Calendar",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "账号同步",
|
||
items: [
|
||
"登录后旅居计划(城市+预算+清单)云端同步,本地与账号自动合并",
|
||
"账号与收藏/计划落盘持久化,服务重启不丢演示数据",
|
||
"个人中心升级为计划仪表盘:就绪度、预算、收藏写入计划、行程对比",
|
||
"目的地详情:停留月数、签证提醒、预算对照、同区对比",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "决策闭环",
|
||
items: [
|
||
"智能匹配:偏好本地保存;Top 3 一键写入旅居计划;单城「+ 计划」;对比 Top 结果",
|
||
"全新「城市对比台」/compare:可分享 URL、并排指标、推荐城/全部写入计划",
|
||
"首页对比条与计划中心可跳转完整对比页",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "核心功能",
|
||
items: [
|
||
"全新「旅居计划中心」/plan:多城时间轴、出发月推算、站内备注、停留签证提醒",
|
||
"月预算上限对照、出发就绪清单、行程内城市对比、分享/导出 Markdown",
|
||
"导航与目的地「加入计划」、个人中心、全局搜索统一指向计划中心",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "大更新",
|
||
items: [
|
||
"一次上新 14 个工具:周末灵感、雨天备选、远程日规划、睡眠周期、心情签到、饮水打卡",
|
||
"聚餐分账、收款汇率、小费速查、洗衣预算、机场接驳、合租看房问题、押金退还清单、当地防坑",
|
||
"工具箱推荐位与快捷条同步更新,可搜索全部新工具",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "新工具",
|
||
items: [
|
||
"落地首月成本、流量预算、签证停留倒计时、办公点成本对比",
|
||
"日照办公窗、行李重量、旅居跑道、会议黄金时段",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "体验优化",
|
||
items: [
|
||
"首页视口内按需挂载;粒子减负;Loader 更快;原生 systemd 部署",
|
||
"全局搜索覆盖工具与页面;行程 Markdown 导出",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "工具箱",
|
||
items: [
|
||
"新增 /tools 工具聚合页,按分类快速跳转",
|
||
"精简首页章节导航,核心入口更清晰",
|
||
"新增 ATM 取现避坑指南",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-29",
|
||
tag: "实用工具",
|
||
items: [
|
||
"电源插座、紧急联系、城市笔记、专注时钟",
|
||
"税居天数、到站清单、咖啡馆推荐、新手引导",
|
||
"保险指南、支出账本、SIM/eSIM 方案",
|
||
],
|
||
},
|
||
{
|
||
date: "2026-08-28",
|
||
tag: "品牌",
|
||
items: [
|
||
"品牌统一为 nomadro",
|
||
"命运转盘、机票估算、活动日历、隐私政策",
|
||
"签证智能匹配、联合办公、行李清单",
|
||
],
|
||
},
|
||
];
|
||
|
||
export default function ChangelogPage() {
|
||
return (
|
||
<SiteShell showFooter>
|
||
<div className="legal-page">
|
||
<nav className="detail-nav">
|
||
<Link href="/">← 返回首页</Link>
|
||
</nav>
|
||
<article className="legal-content">
|
||
<span className="section-tag">📜 CHANGELOG</span>
|
||
<h1>更新日志</h1>
|
||
<p className="legal-updated">记录 nomadro 的每一次出发</p>
|
||
|
||
<div className="changelog-list">
|
||
{LOGS.map((log) => (
|
||
<section key={log.date + log.tag} className="changelog-item">
|
||
<div className="changelog-meta">
|
||
<time>{log.date}</time>
|
||
<span className="changelog-tag">{log.tag}</span>
|
||
</div>
|
||
<ul>
|
||
{log.items.map((item) => (
|
||
<li key={item}>{item}</li>
|
||
))}
|
||
</ul>
|
||
</section>
|
||
))}
|
||
</div>
|
||
|
||
<div className="about-actions">
|
||
<Link href="/tools" className="btn btn-primary">打开工具箱 🛠️</Link>
|
||
<Link href="/about" className="btn btn-ghost">关于 nomadro</Link>
|
||
</div>
|
||
</article>
|
||
</div>
|
||
</SiteShell>
|
||
);
|
||
}
|