- 后台页头新增月亮/太阳按钮:写回 site.theme 并即时切换,前后台一起变, 忽略未登录与保存中 - AppCard -> EntryRow,CesCard -> EntryTile(PosterCard 本来就用 Cover) - 删除 .app-card / .app-card-* / .ces-card / .ces-body* 手写样式, 两套卡片的点击语义与悬停反馈统一由库提供 视觉变化:头像认证勾回到库默认尺寸(20px,之前应用里压到 10px)
23 lines
558 B
TypeScript
23 lines
558 B
TypeScript
import { EntryTile } from '@stash/ui'
|
|
import type { ArticleItem } from '../../data/types'
|
|
|
|
/**
|
|
* 明细页图文卡:上图下文的白卡。
|
|
* 版式与点击语义都在库里的 EntryTile,这里只做数据映射。
|
|
*/
|
|
type CesCardProps = {
|
|
item: ArticleItem
|
|
onOpen?: (itemId: string) => void
|
|
}
|
|
|
|
export function CesCard({ item, onOpen }: CesCardProps) {
|
|
return (
|
|
<EntryTile
|
|
title={item.title}
|
|
description={item.desc}
|
|
cover={item.cover}
|
|
onOpen={onOpen === undefined ? undefined : () => onOpen(item.id)}
|
|
/>
|
|
)
|
|
}
|