memos/web
boojack 14a1c9a53b chore(web): icon layout switcher with radio semantics
Replace the layout Select with a lean 28px segmented control: Rows3 /
Columns2 / Columns3 / Infinity icons on a quiet muted track, only the
active option filled. Each option carries a tooltip with a label and an
honest description of the ceiling semantics ("up to N columns when the
width allows").

The control is a proper radiogroup — roving tabindex, arrow-key
movement, aria-checked — restoring the single-choice semantics the
Select used to provide. Options derive from ViewContext's canonical
value list, and one exhaustive record maps each value to its icon and
wording, so a future column option fails to compile until both exist.

The Compact mode row now stays visible in multi-column layouts, shown
as on and locked (multi-column always renders compact tiles); the
stored preference is untouched and resurfaces at a single column.
2026-07-07 09:24:48 +08:00
..
docs refactor(react-query): optimize config, add error boundary, and remove JSDoc 2025-12-25 08:47:36 +08:00
public enhance: polish PWA manifest and meta tags (#5695) 2026-03-07 14:02:13 +08:00
src chore(web): icon layout switcher with radio semantics 2026-07-07 09:24:48 +08:00
tests feat(web): add max-columns memo feed layout 2026-07-06 23:55:36 +08:00
.gitignore chore: update gitignore 2025-04-17 23:11:36 +08:00
biome.json refactor: remove MemoContentContext and integrate MemoViewContext 2025-12-28 12:46:12 +08:00
components.json feat: themes (#4824) 2025-07-07 20:13:22 +08:00
index.html enhance: polish PWA manifest and meta tags (#5695) 2026-03-07 14:02:13 +08:00
package.json refactor: rebuild the editor on CodeMirror as decorated source 2026-06-28 22:59:14 +08:00
pnpm-lock.yaml refactor: rebuild the editor on CodeMirror as decorated source 2026-06-28 22:59:14 +08:00
pnpm-workspace.yaml chore: upgrade pnpm to 11 (#5911) 2026-04-28 22:16:22 +08:00
tsconfig.json chore: upgrade TypeScript to 6.0.2 2026-03-24 08:45:56 +08:00
vite.config.mts perf: lazy load heavy first-screen dependencies (#5947) 2026-05-12 20:11:39 +08:00
vitest.config.mts refactor(web/routing): guard-based auth flow, migrate tests to Vitest (#5848) 2026-04-18 01:06:54 +08:00