- Try filterdata endpoint first (like genres)
- Fall back to series endpoint if needed
- Make SimpleSeries.fromJson more robust with multiple field name attempts
- Add extensive logging to debug series loading issues
- Fix genres error by parsing JSON manually to avoid Series deserialization
- Fix series blank screen by using SimpleSeries class instead of full Series
- Add alphabetical sorting to authors page
- Work around shelfsdk Series variant detection issues
The Audiobookshelf API returns Series objects that don't match any of the
variant detection patterns in the shelfsdk SeriesConverter. Since we can't
modify the external shelfsdk, we parse the API responses manually to extract
only the data we need for display.
This commit implements a comprehensive library browsing feature:
- Add LibraryBrowserProvider with providers for authors, genres, and series data
- Create LibraryAuthorsPage with grid view of authors including images and book counts
- Create LibraryGenresPage with list view of all genres
- Create LibrarySeriesPage with list view of series and book counts
- Update LibraryBrowserPage navigation to route to the new views
- Add routes for /browser/authors, /browser/genres, and /browser/series
- Replace "Not Implemented" toasts with functional navigation
The implementation uses the Audiobookshelf API via shelfsdk to fetch:
- Authors list with metadata (getAuthors)
- Genres from library filter data (getFilterData)
- Series with pagination support (getSeries)
All views follow Material Design 3 patterns and include proper loading/error states.
* feat: add fadeSlideTransitionBuilder for smoother transitions in user login
* fix: reuse onboarding components on server manager page
* fix: gaining focus rebuilt the widget
using memoized fixes this issue
* feat: add AbsIcons font and update pubspec.yaml for font integration
* feat: implement library selection in YouPage
* fix: optimize authenticatedApi provider to not rebuild unnecessarily
* feat: add LibrarySwitchChip widget and integrate it into YouPage and ScaffoldWithNavBar
* feat: enhance library selection UI with refresh functionality and error handling
* fix: change library switcher activation from long press to double tap
* feat: show current library on nav bar
* feat: refactor LibraryBrowserPage to use CustomScrollView and enhance app bar with dynamic library icon and title
* feat: add ability to get logs file from ui
* test: add unit test for log line parsing in logs_provider
* refactor: update all logs to obfuscate sensitive information
* feat: generate dynamic zip file name for logs export
* feat: enhance logging in audiobook player and provider for better debugging
* refactor: extract user display logic into UserBar widget for offline access of settings and logs
* feat: add About section with app metadata and source code link in YouPage