feat(books): remember a default read-aloud narration language

Resolve book languages stated as names ("English") to a code, so the
dialog and the server's fallback stop calling English unsupported. The
dialog groups the ebook and audiobook in a Sources card, shows
Highlighting without the Advanced disclosure, and saves a per-user
default under /user-preferences/read-aloud for books it cannot match.
This commit is contained in:
neon
2026-10-22 00:42:06 +00:00
parent 0320210767
commit 8810d47658
16 changed files with 599 additions and 178 deletions
@@ -1,7 +1,7 @@
{
"totalRoutes": 677,
"totalRoutes": 679,
"byPermission": {
"(none)": 287,
"(none)": 289,
"Permission.ManageMetadataConfig": 41,
"Permission.EmailSend": 34,
"Permission.LibraryEditMetadata": 37,