mirror of
https://github.com/hectorqin/reader.git
synced 2026-11-12 05:50:54 +08:00
An import graph from main.tsx shows a previous reader still in the tree:
render/{reader,paged,pdf,text,container,theme}.ts with lib/{events,locator}.ts,
ui/settings.ts and bridge.ts — superseded by ReaderScreen/ReaderView and
never imported. Also unreachable: render/paginator.ts, render/window.ts and
ui/shelf-order.ts (only their own tests used them; the shelf sorts on the
server), formats/remote-zip.ts (re-exported, never called; chapters are
fetched per section), ui/source-capabilities.tsx and the sources pages barrel.
Inside live modules: PrefetchCache (only shouldPrefetch is used),
textToParagraphs / paragraphElement / endsAtParagraphBreak (the streaming
TXT reader's carry), txt.ts's textToHtml alias, and ChunkCursor. Their tests
go with them; the node:test list, the Vitest excludes and the docs that
named these files are updated.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
47 lines
1.5 KiB
JSON
47 lines
1.5 KiB
JSON
{
|
|
"name": "reader-client",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"description": "Reader client: shared rendering layer for the H5 build and the Android WebView shell.",
|
|
"license": "AGPL-3.0-or-later",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "tsc -p tsconfig.json --noEmit && vite build",
|
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
"test": "vitest run && tsx --test test/api.test.ts test/asset-url.test.ts test/windowed-toc.test.ts",
|
|
"test:watch": "vitest",
|
|
"ui:review": "npm run build && node tools/ui-review/react-app.mjs",
|
|
"ui:review:only": "node tools/ui-review/react-app.mjs",
|
|
"ui:review:reader": "node tools/ui-review/run.mjs",
|
|
"ui:sources": "npm run build && node --import ../server/node_modules/tsx/dist/loader.mjs tools/ui-review/host-source-flow.mjs"
|
|
},
|
|
"dependencies": {
|
|
"@tanstack/query-core": "^5.104.0",
|
|
"@tanstack/react-query": "^5.90.5",
|
|
"dplayer": "^1.27.1",
|
|
"fast-xml-parser": "^4.5.1",
|
|
"jszip": "^3.10.1",
|
|
"lucide-react": "^0.468.0",
|
|
"notyf": "^3.10.0",
|
|
"react": "^19.1.0",
|
|
"react-dom": "^19.1.0",
|
|
"react-router-dom": "^7.9.4",
|
|
"zustand": "^5.0.8"
|
|
},
|
|
"devDependencies": {
|
|
"@types/jsdom": "^30.0.0",
|
|
"@types/node": "^22.20.3",
|
|
"@types/react": "^19.0.0",
|
|
"@types/react-dom": "^19.0.0",
|
|
"@vitejs/plugin-react": "^4.3.4",
|
|
"clipper-lib": "^6.4.2",
|
|
"jsdom": "^30.0.1",
|
|
"playwright": "^1.63.0",
|
|
"tsx": "^4.19.2",
|
|
"typescript": "^5.7.3",
|
|
"vite": "^6.0.7",
|
|
"vitest": "^3.2.4"
|
|
}
|
|
}
|