From 8a02139c85de5b14c7eee49a79fe0dea743e6e8b Mon Sep 17 00:00:00 2001 From: ittoview Date: Sun, 8 Mar 2026 03:13:33 +0000 Subject: [PATCH] =?UTF-8?q?feat(=E6=95=B4=E5=90=88):=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=B6=E9=97=B4=E8=BD=B4=E6=B5=8F=E8=A7=88?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E4=B8=8E=E9=A1=B6=E9=83=A8=E5=BF=AB=E6=8D=B7?= =?UTF-8?q?=E5=85=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建 src/data/changelog.json 数据文件 - 添加 ChangelogType 和 ChangelogEntry 类型定义 - 实现更新时间轴页面组件,支持按时间倒序展示 - 添加 /changelog 主路由和 /updates 别名路由 - 在顶部导航右侧添加 History 图标入口,支持激活态高亮 - 使用 Framer Motion 实现渐进式动画效果 - 支持深色模式和响应式布局 via [HAPI](https://hapi.run) Co-Authored-By: HAPI --- src/App.tsx | 5 +- src/components/layout/Header.tsx | 20 ++++- src/data/changelog.json | 11 +++ src/data/index.ts | 5 ++ src/pages/ChangelogPage.tsx | 131 +++++++++++++++++++++++++++++++ src/pages/index.ts | 1 + src/types/itto.ts | 20 +++++ 7 files changed, 190 insertions(+), 3 deletions(-) create mode 100644 src/data/changelog.json create mode 100644 src/pages/ChangelogPage.tsx diff --git a/src/App.tsx b/src/App.tsx index 6f29766..807a18c 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,4 +1,4 @@ -import { Routes, Route } from 'react-router-dom' +import { Routes, Route, Navigate } from 'react-router-dom' import { Layout } from './components/layout/Layout' import { HomePage } from './pages/HomePage' import { KnowledgeAreasPage } from './pages/KnowledgeAreasPage' @@ -8,6 +8,7 @@ import { ProcessMatrixPage } from './pages/ProcessMatrixPage' import { ProcessGraphPage } from './pages/ProcessGraphPage' import { ArtifactDetailPage } from './pages/ArtifactDetailPage' import { ToolDetailPage } from './pages/ToolDetailPage' +import { ChangelogPage } from './pages/ChangelogPage' import { SettingsPage } from './pages/SettingsPage' import ProcessPracticePage from './pages/ProcessPracticePage' @@ -26,6 +27,8 @@ function App() { } /> } /> } /> + } /> + } /> } /> diff --git a/src/components/layout/Header.tsx b/src/components/layout/Header.tsx index 72f5c39..33c0af9 100644 --- a/src/components/layout/Header.tsx +++ b/src/components/layout/Header.tsx @@ -1,7 +1,7 @@ import { useAppStore } from '@/stores/useAppStore' -import { Menu, Search, Sun, Moon, X } from 'lucide-react' +import { Menu, Search, Sun, Moon, X, History } from 'lucide-react' import { useState, useMemo, useRef, useEffect } from 'react' -import { useNavigate } from 'react-router-dom' +import { useNavigate, useLocation } from 'react-router-dom' import { processes, artifacts, tools, knowledgeAreaMap } from '@/data' interface SearchResult { @@ -24,6 +24,8 @@ export function Header() { const searchRef = useRef(null) const inputRef = useRef(null) const navigate = useNavigate() + const location = useLocation() + const isChangelogPage = location.pathname === '/changelog' || location.pathname === '/updates' // 搜索结果 const searchResults = useMemo(() => { @@ -240,6 +242,20 @@ export function Header() { {/* 右侧:操作按钮 */}
+ {/* 更新日志 */} + + {/* 主题切换 */}