Huang Xin
411f9e236d
feat(metadata): support parsing series info from calibre exported EPUBs, closes #3259 ( #3267 )
2026-02-11 15:39:48 +01:00
Huang Xin
0be828fd66
feat(l10n): format sync date time with current locale, closes #3219 ( #3230 )
2026-02-09 03:09:52 +01:00
Mohammed Efaz
bf72ab86cd
fix: status button eink compatible ( #3223 )
2026-02-08 12:28:31 +01:00
Huang Xin
fe9603ffb8
fix(a11y): updating progress info when navigating with screen readers ( #3182 )
...
Also add some missing button labels for screen readers
2026-02-06 08:43:03 +01:00
Huang Xin
a9a1dc8e70
fix(layout): fixed regression of vertical alignment, closes #3012 ( #3178 )
2026-02-05 17:46:47 +01:00
Huang Xin
b1a1e35790
fix(layout): move sync options inside of account section in settings menu ( #3176 )
2026-02-05 10:08:17 +01:00
Huang Xin
3c538c3746
feat(sync): add manual books sync in the main menu ( #3175 )
2026-02-05 08:26:33 +01:00
Huang Xin
92116e7455
fix(bookshelf): merge groups and ungrouped books then sort them together ( #3169 )
2026-02-04 12:32:29 +01:00
Huang Xin
3b350d6945
fix(layout): responsive select mode actions on smaller screens ( #3164 )
2026-02-04 07:04:29 +01:00
Adam Charron
52c49ddef1
Add enhanced grouping and sorting functionality to the library view ( #3146 )
...
* feat(library): implement grouping of books by series or author
- Added functionality to group books in the library by series or author.
- Introduced new utility functions for creating book groups and parsing author strings.
- Updated the LibraryPageContent to track the current group for navigation.
- Created a new GroupHeader component to display the current group context.
- Enhanced the Bookshelf component to support displaying grouped books.
- Updated settings to include grouping options in the view menu.
New files:
- src/__tests__/utils/libraryUtils.test.ts - Unit tests for new utility functions.
- src/app/library/components/GroupHeader.tsx - Component for displaying group context.
- src/app/library/utils/libraryUtils.ts - Utility functions for grouping and parsing authors.
* Use group by and sort by constants, and split sort/group by menus into their own elements
* Format code with autoformatter
* Remove any casting from tests
* Translate missing strings
* refactor: cleaner layout with collapsible view menu options
---------
Co-authored-by: Huang Xin <chrox.huang@gmail.com >
2026-02-03 14:51:50 +01:00
Huang Xin
e3d52891fb
fix(a11y): add missing aria labels and fix iOS safe insets ( #3149 )
2026-02-03 12:50:24 +01:00
Huang Xin
c848a319ff
fix(layout): fix centered dropdown menu ( #3133 )
2026-02-01 15:52:51 +01:00
Huang Xin
570598520f
fix(a11y): fix accessibility in dropdown menus for TalkBack, closes #3035 ( #3126 )
2026-01-31 19:05:56 +01:00
Huang Xin
fb387c2384
fix(layout): fixed layout of book reading progress and reader footer bar ( #3117 )
2026-01-30 06:54:20 +01:00
Huang Xin
bc94f3f790
refactor: responsive SetStatusAlert on smaller screens ( #3110 )
2026-01-29 15:53:20 +01:00
Huang Xin
c58e172a54
fix(bookshelf): don't show badge or progress for unread book, closes #3103 ( #3107 )
2026-01-29 12:48:21 +01:00
Mohammed Efaz
01b4e3530d
feat: toggle finished manually ( #3091 )
2026-01-28 06:26:57 +01:00
Huang Xin
64a1ea531a
fix(bookshelf): fixed conflicts of group names with common prefix ( #3084 )
2026-01-26 13:38:01 +01:00
Huang Xin
e592f40429
layout: don't show upload icon if auto upload is disabled for cleaner UI ( #3068 )
2026-01-25 09:22:30 +01:00
Huang Xin
48920a87bf
chore(opds): disable popular online opds catalogs in certain regions on App Store ( #3031 )
2026-01-22 11:42:16 +01:00
Huang Xin
038eca4267
fix(eink): resolved an issue where the dropdown menu would occasionally fail to expand on some Eink devices ( #2991 )
2026-01-18 19:57:09 +01:00
Huang Xin
f0722ec0fe
feat(bookshelf): show one line of book description in list view of the bookshelf, closes #2955 ( #2990 )
2026-01-18 17:16:54 +01:00
Huang Xin
7f26e45ae7
feat(sync): cloud deletion in transfer queue ( #2964 )
2026-01-15 13:50:24 +01:00
Huang Xin
9c9c79176d
feat(bookshelf): add an option to sort books by publish date, closes #2925 ( #2949 )
2026-01-14 13:40:07 +01:00
Huang Xin
7cb523eefc
fix(metadata): no need to download book to display book details, closes #2857 ( #2897 )
2026-01-09 15:58:01 +01:00
Huang Xin
462ca46fee
feat(eink): optimize color and layout for e-ink mode ( #2887 )
2026-01-08 17:29:33 +01:00
Huang Xin
eed84a059a
fix(search): should be able to terminate search when sidebar is invisible ( #2863 )
2026-01-04 17:10:49 +01:00
Huang Xin
d3752dadc6
fix(library): upload files also for open with import and opds import, closes #2826 ( #2827 )
2026-01-02 13:32:52 +01:00
Huang Xin
71e97998b6
feat(transfer): add a background transfer queue system for book uploads/downloads ( #2821 )
2025-12-31 08:40:28 +01:00
Huang Xin
9358a06839
compat(layout): grid layout with fit covers on older browsers, closes #2745 ( #2756 )
2025-12-21 08:52:57 +01:00
Huang Xin
b7df294d78
feat(bookshelf): add group books button in context menu, closes #2698 ( #2718 )
2025-12-15 05:02:52 +01:00
Huang Xin
ba3f060cc4
feat: add support for importing from a directory recursively, closes #179 ( #2642 )
2025-12-08 07:16:57 +01:00
Huang Xin
11bc7497e8
feat: add support for renaming bookshelf groups ( #2639 )
2025-12-07 10:04:23 +01:00
Huang Xin
70158a7f15
refactor(opds): use catalog id instead of credentials in url params, closes #2599 ( #2606 )
2025-12-03 08:50:55 +01:00
Huang Xin
cef444d374
fix: disable saving last book cover with playstore variant, closes #2600 ( #2602 )
2025-12-03 05:41:44 +01:00
Huang Xin
d2b3c165c7
fix(opds): use custom header for content length when streaming content ( #2584 )
2025-12-01 17:28:36 +01:00
Huang Xin
2ca3561093
feat(opds): support downloading ebooks from OPDS catalogs ( #2571 )
2025-11-30 21:22:54 +01:00
Huang Xin
0bad380a50
fix(layout): fixed navigation parameters not synced with settings ( #2559 )
2025-11-27 08:06:43 +01:00
Huang Xin
d5c813fac1
fix(layout): avoid cascading refresh when cleaning up query parameters ( #2555 )
2025-11-26 15:52:29 +01:00
Huang Xin
d9b3757b1c
fix(layout): fix layout for import book item in grid fit mode ( #2554 )
2025-11-26 14:49:07 +01:00
Huang Xin
df9d21393d
fix(layout): layout of the grid columns setting ( #2552 )
2025-11-26 10:19:29 +01:00
Huang Xin
1f73f15ad8
feat: add view option to set cover image size in grid mode, closes #2545 ( #2551 )
2025-11-26 07:49:51 +01:00
Huang Xin
6f8b2d1dc4
fix(android): support back action for grouping modal ( #2542 )
2025-11-25 10:10:56 +01:00
Huang Xin
37d56b3205
fix(android): support back key in menu, dialog and alert widgets, closes #2454 ( #2539 )
2025-11-25 08:01:17 +01:00
Huang Xin
8f22a5c570
feat: select directory to save last book cover image ( #2521 )
2025-11-23 17:00:49 +01:00
Huang Xin
c86af457e7
chore: bump Next.js to 16.0.3 ( #2496 )
2025-11-21 12:49:36 +01:00
Huang Xin
b8e979be55
fix(layout): fixed some rendering problems on Next 16 ( #2495 )
2025-11-21 08:23:42 +01:00
Huang Xin
93a71a0fd0
fix(bookshelf): ensure 'select all' only targets books in the active group ( #2468 )
2025-11-18 14:34:32 +01:00
Huang Xin
6d5b16ea8b
fix(iap): open external app for payment ( #2465 )
2025-11-18 12:07:43 +01:00
Huang Xin
6fde157047
feat(bookshelf): support nested groups in the bookshelf, closes #568 ( #2449 )
2025-11-16 13:59:37 +01:00