feat: scroll to post bubble from recommended card + back-to-top button
Some checks failed
Deploy to Frontend Servers / deploy (push) Failing after 14s

Recommended cards already routed to /browse#post-<id>, but the stream had
no logic to scroll to the target bubble — and the post might not be paged
in yet. MessageStream now resolves the #post-<id> hash, auto-loads more
pages until the bubble renders, scrolls to it, and gives it a brief gold
highlight. Bubbles get scroll-mt so they clear the sticky header.

Also adds a global floating back-to-top button (BackToTop) mounted in
PublicLayout, shown after scrolling past 400px.

Bundles related staging UI work already present in the working tree.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
TerryM
2026-05-29 11:50:27 +08:00
parent 8e36894851
commit 88a25b6ad4
27 changed files with 748 additions and 139 deletions

View File

@@ -32,6 +32,7 @@ const zhDict: Dict = {
tagPostsTitle: "#{{tag}} 相关资料",
noTagPosts: "暂时找不到带有此标签的资料。",
viewAll: "查看全部",
backToTop: "回到顶部",
heroTitle: "ARK 官方数据库",
heroSub:
"集中、分类、管理 ARK 数据库,让你快速找到所需资源,推动社群共识与成长。",
@@ -42,6 +43,8 @@ const zhDict: Dict = {
preview: "预览",
download: "下载",
downloading: "下载中…",
downloadOk: "下载完成",
downloadFail: "下载失败,请重试",
share: "分享",
langLabel: "语言",
admin: "后台",
@@ -159,6 +162,7 @@ const enDict: Dict = {
tagPostsTitle: "#{{tag}} related posts",
noTagPosts: "No posts with this tag yet.",
viewAll: "View all",
backToTop: "Back to top",
heroTitle: "ARK Official Library",
heroSub:
"Centralize, organize, and manage the ARK library so you can find what you need fast and help the community grow together.",
@@ -169,6 +173,8 @@ const enDict: Dict = {
preview: "Preview",
download: "Download",
downloading: "Downloading…",
downloadOk: "Download complete",
downloadFail: "Download failed, please retry",
share: "Share",
langLabel: "Language",
admin: "Admin",