From cea241437182ae37ab5f4cbd2ea87b60ee8bd205 Mon Sep 17 00:00:00 2001 From: XingfenD Date: Wed, 16 Sep 2026 15:46:07 +0800 Subject: [PATCH] refactor(frontend): shared reader chrome to shadcn/radix (header, nav Sheet, bookmarks) --- frontend/e2e/auth-shelf.spec.ts | 2 +- frontend/src/components/Bookmarks.tsx | 58 +++++++++++------- frontend/src/components/format-badge.tsx | 19 ++++++ frontend/src/components/rd-slider.tsx | 37 ------------ frontend/src/components/reader-nav.tsx | 77 ++++++++++-------------- frontend/src/components/ui/sheet.tsx | 2 +- frontend/src/pages/Reader.tsx | 27 +++++---- frontend/src/readers/CbzReader.tsx | 22 ++++--- 8 files changed, 115 insertions(+), 129 deletions(-) create mode 100644 frontend/src/components/format-badge.tsx delete mode 100644 frontend/src/components/rd-slider.tsx diff --git a/frontend/e2e/auth-shelf.spec.ts b/frontend/e2e/auth-shelf.spec.ts index 6064b24..6cc8556 100644 --- a/frontend/e2e/auth-shelf.spec.ts +++ b/frontend/e2e/auth-shelf.spec.ts @@ -57,7 +57,7 @@ test("登录 → 书架 → CBZ 阅读翻页 → 书签 → 退出", async ({ pa await expect(nav).toBeVisible(); await nav.getByRole("button", { name: "加书签" }).click(); await expect(page.getByText("已加书签")).toBeVisible(); - await page.getByRole("button", { name: "关闭导航" }).click(); + await page.getByRole("button", { name: "关闭" }).click(); // 回书架 → 退出登录 await page.getByRole("link", { name: "书架" }).click(); diff --git a/frontend/src/components/Bookmarks.tsx b/frontend/src/components/Bookmarks.tsx index 3a87ecd..c0328ae 100644 --- a/frontend/src/components/Bookmarks.tsx +++ b/frontend/src/components/Bookmarks.tsx @@ -3,6 +3,8 @@ import { Check, Pencil, Plus, X } from "lucide-react"; import { useState } from "react"; import { api } from "../api/client"; import type { Book } from "../api/types"; +import { Button } from "@/components/ui/button"; +import { Input } from "@/components/ui/input"; import { toast } from "./Toaster"; type Locator = Record; @@ -55,8 +57,8 @@ export function BookmarksTab({ return ( <>
- - + +