openreader/src/contexts
Richard R ff5a6b834d fix(epub): unify TTS word highlight mapping and normalization
Refactor EPUB and HTML word highlighting to use a shared, position-preserving
text normalization pipeline for mapping TTS alignment offsets to DOM positions.
Replace the previous fuzzy token-matching logic with a direct char→DOM map
based on the canonical "audio" text form, ensuring highlights stay in sync
across languages and with Unicode-aware hyphenation handling.

- Add `highlight-char-map.ts` for shared normalization logic
- Update normalization to handle Unicode hyphenation consistently across
  compute, client, and shared layers
- Remove unused fuzzy token mapping and cache logic from EPUB highlighting
- Update tests for new highlight mapping and normalization behavior

BREAKING CHANGE: Removes legacy fuzzy token-based word highlight mapping in favor of direct char offset mapping; highlight cache and tokenization APIs are removed.
2026-06-09 08:20:53 -06:00
..
AuthRateLimitContext.tsx refactor(auth): remove redundant authEnabled flag from contexts and components 2026-05-31 13:10:01 -06:00
ConfigContext.tsx fix(config): prevent arrays from being treated as records in preference normalization 2026-06-06 15:55:54 -06:00
DocumentContext.tsx refactor(upload): unify docx-to-pdf conversion into finalize handler and remove legacy route 2026-06-04 13:00:05 -06:00
OnboardingFlowContext.tsx Refactor user data cleanup and TTS storage flows (#105) 2026-06-07 13:33:20 -06:00
RuntimeConfigContext.tsx refactor(settings): remove enableDestructiveDeleteActions runtime flag and related UI 2026-06-01 20:38:54 -06:00
ThemeContext.tsx feat(theme): add persistent custom theme with live color editing 2026-04-07 01:09:08 -06:00
TTSContext.tsx fix(epub): unify TTS word highlight mapping and normalization 2026-06-09 08:20:53 -06:00