refactor(web): 前端改用 @stash/ui 组件库
- 新增本地依赖 @stash/ui(file:../../stash-ui),引入其 style.css 与设计令牌 - 页面骨架改用 Layout(contained + header/sider),搜索框改为吸顶 - 卡片/菜单/按钮/标签/头像/分页/空态/提示全部换成组件库组件 - 删除本地 iconfont 与 1400 行手写组件样式,App.css 只保留页面级样式 - 数据层、路由、过滤逻辑未改动;33 个 Rust 测试通过
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import { Paragraph, Title } from '@stash/ui'
|
||||
import type { ReactNode } from 'react'
|
||||
|
||||
/**
|
||||
@@ -10,7 +11,6 @@ import type { ReactNode } from 'react'
|
||||
* - 行内 `**粗体**`、`` `代码` ``、`[文字](链接)`
|
||||
*
|
||||
* 不支持列表、表格、引用块——这里渲染的是文章正文,不是通用 Markdown 编辑器。
|
||||
* 需要完整语法时再换 react-markdown,渲染层已经隔离在这个组件里。
|
||||
*/
|
||||
|
||||
type Block =
|
||||
@@ -104,9 +104,9 @@ export function ArticleBody({ markdown }: ArticleBodyProps) {
|
||||
{parseBlocks(markdown).map((block, index) => {
|
||||
if (block.kind === 'heading') {
|
||||
return (
|
||||
<h3 className="article-body-heading" key={index}>
|
||||
<Title level={2} as="h3" key={index}>
|
||||
{renderInline(block.text)}
|
||||
</h3>
|
||||
</Title>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -123,9 +123,9 @@ export function ArticleBody({ markdown }: ArticleBodyProps) {
|
||||
}
|
||||
|
||||
return (
|
||||
<p className="article-body-text" key={index}>
|
||||
<Paragraph tone="main" key={index}>
|
||||
{renderInline(block.text)}
|
||||
</p>
|
||||
</Paragraph>
|
||||
)
|
||||
})}
|
||||
</>
|
||||
|
||||
Reference in New Issue
Block a user