Files
reader/web/package.json
T
hectorqinandClaude Opus 5.5 12fbe0cbcd chore(web): remove the icon font toolchain and unused icon names
The UI draws Lucide SVGs through ui/icon.tsx and has not loaded the icon
font for a while; the font, its code-point table and the generator only fed
their own tests. Removed: tools/icons (generator, glyph paths, stroker),
src/styles/reader-icons.ttf, src/ui/icon-names.ts, the `icons` npm script and
the font/metrics tests. icons.test.ts keeps the contracts that still apply:
no borrowed names (now checked against ICONS), only icon.tsx imports
lucide-react, the .icon rule and icon buttons. The .icon rule drops its
font-era declarations.

ICONS loses the names nothing draws (the Font Awesome spellings kept as
aliases, add-circle, film, line-height, indent, sign-out); the reader's 朗读
button is `read-aloud` rather than `volume`. Docs and CLAUDE.md describe
adding an icon in icon.tsx.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 09:48:04 +00:00

47 lines
1.6 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/paginator.test.ts test/window.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"
}
}