Commit Graph

21 Commits

Author SHA1 Message Date
b2664cce08 fix: reset zoom on orientation change in reader to prevent iOS auto-zoom
Temporarily inject maximum-scale=1 into viewport meta tag on orientation
change to cancel the automatic zoom iOS Safari applies, then restore
it to keep pinch-zoom available.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 21:29:54 +01:00
d535f9f28e fix: respect RTL direction for reader arrow buttons and swipe navigation
Arrow buttons now swap next/previous in RTL mode. Swipe navigation
receives isRTL from parent state instead of creating its own independent
copy, so toggling direction takes effect immediately without reload.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 21:24:11 +01:00
7e4c48469a feat: enhance Stripstream configuration handling
- Introduced a new resolver function to streamline fetching Stripstream configuration from the database or environment variables.
- Updated various components and API routes to utilize the new configuration resolver, improving code maintainability and reducing direct database calls.
- Added optional environment variables for Stripstream URL and token in the .env.example file.
- Refactored image loading logic in the reader components to improve performance and error handling.
2026-03-11 21:25:58 +01:00
7d0f1c4457 feat: add multi-provider support (Komga + Stripstream Librarian)
Some checks failed
Deploy with Docker Compose / deploy (push) Has been cancelled
- Introduce provider abstraction layer (IMediaProvider, KomgaProvider, StripstreamProvider)
- Add Stripstream Librarian as second media provider with full feature parity
- Migrate all pages and components from direct Komga services to provider factory
- Remove dead service code (BaseApiService, HomeService, LibraryService, SearchService, TestService)
- Fix library/series page-based pagination for both providers (Komga 0-indexed, Stripstream 1-indexed)
- Fix unread filter and search on library page for both providers
- Fix read progress display for Stripstream (reading_status mapping)
- Fix series read status (books_read_count) for Stripstream
- Add global search with series results for Stripstream (series_hits from Meilisearch)
- Fix thumbnail proxy to return 404 gracefully instead of JSON on upstream error
- Replace duration-based cache debug detection with x-nextjs-cache header

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-11 11:48:17 +01:00
23fa884af7 fix: restore reader direction and double-page navigation UI
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 3m6s
2026-03-04 06:49:40 +01:00
4441c59584 fix: close reader immediately while cancelling prefetches
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 2m21s
2026-03-01 21:36:40 +01:00
612a70ffbe chore: resolve lint warnings with targeted type and rule fixes 2026-02-28 11:59:30 +01:00
Julien Froidefond
512e9a480f refactor: remove caching-related API endpoints and configurations, update preferences structure, and clean up unused services
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 7m22s
2026-01-03 18:55:12 +01:00
Julien Froidefond
39e3328123 chore: update various components and services for improved functionality and consistency, including formatting adjustments and minor refactors 2025-12-07 09:54:05 +01:00
Julien Froidefond
349448ef69 feat: implement request deduplication and concurrency management in image loading for improved performance 2025-10-31 13:07:37 +01:00
Julien Froidefond
7cc72dc13d feat: implement advanced settings for user preferences, allowing configuration of max concurrent requests, reader prefetch count, and circuit breaker settings 2025-10-24 17:50:58 +02:00
Julien Froidefond
07c6bae2c4 feat: enhance image loading in PhotoswipeReader with prefetching capabilities for current and next book pages 2025-10-22 21:25:34 +02:00
Julien Froidefond
0ba027b625 feat: refactor PhotoswipeReader to enhance modularity with new components and hooks for improved navigation, image loading, and touch handling 2025-10-22 21:05:10 +02:00
Julien Froidefond
3704a8d88b fix: refine touch handling in PhotoswipeReader to improve swipe detection and pinch gesture management 2025-10-19 09:38:07 +02:00
Julien Froidefond
8c88c4f1a7 feat: implement double-click zoom and click handling in PhotoswipeReader for improved user interaction 2025-10-19 09:30:51 +02:00
Julien Froidefond
626d73ad2f fix: reduce sync timeout duration in PhotoswipeReader for quicker read progress updates 2025-10-19 09:26:42 +02:00
Julien Froidefond
0c0456aade feat: enable zoom functionality in PhotoswipeReader and adjust global styles to manage pinch-zoom behavior 2025-10-18 21:35:16 +02:00
Julien Froidefond
f5e1332e21 feat: add force reload functionality to PhotoswipeReader for refreshing images and improve memory management by revoking blob URLs 2025-10-17 22:53:58 +02:00
Julien Froidefond
45a5aed886 feat: enhance PhotoswipeReader with loading states for images and add fade-in animation for improved user experience 2025-10-17 22:27:50 +02:00
Julien Froidefond
adddac83b0 feat: update PhotoswipeReader to maintain current page reference and sync read progress on cleanup 2025-10-17 22:22:55 +02:00
Julien Froidefond
4672532a3a feat: integrate PhotoswipeReader component and remove BookReader for enhanced reading experience; add zoom functionality to control buttons 2025-10-17 17:04:37 +02:00