Commit Graph

2402 Commits

Author SHA1 Message Date
schroda
180b975063 Add missing error message to create/update category mutation 2025-03-16 23:25:06 +01:00
schroda
a2acddab5f Show tooltip for metadata on ChapterCards
Text that was too long got cut of, but it was never shown as the tooltip, which caused the information about the full text to get lost
2025-03-10 23:31:50 +01:00
schroda
efd9a45912 Properly resume chapter from "Updates" page 2025-03-10 23:24:29 +01:00
schroda
003e77ade2 Extract "retry chapter download" button into component 2025-03-10 23:24:26 +01:00
schroda
6f6994a433 Extract "add chapter download" button into component 2025-03-10 23:24:06 +01:00
schroda
35c2172355 Extract "chapter metadata" into component 2025-03-10 22:59:21 +01:00
schroda
ac4bdebb61 Extract "chapter thumbnail" into component 2025-03-10 22:20:46 +01:00
schroda
50493af71c Use correct error message for download retry failure 2025-03-10 22:01:30 +01:00
schroda
61eec0cd0e Add "last read timestamp" to history chapter card 2025-03-10 22:01:29 +01:00
schroda
c7611e4ae1 Remove unnecessary virtuoso "group item counts" mapping 2025-03-10 21:58:13 +01:00
schroda
e9b42db10f Add "groupByDate" to "Chapters" 2025-03-10 21:58:11 +01:00
schroda
86525ec2a2 Fix library category tabs after re-ordering categories 2025-03-10 21:57:36 +01:00
Jack
9e5fa7d81a Add history page (#897)
* Add History module and integrate it into the app

Introduce the History module with components for displaying chapter updates, including UI for grouped updates by date. Update routing and constants to incorporate the new /history path.

* Replace "Updates" and "History" with unified "Recent" module

Merged the "Updates" and "History" screens into a single unified "Recent" module with corresponding navigation updates. Adjusted GraphQL types and localization files to reflect the changes. This simplifies navigation and improves user experience.

* Refactor History screen to remove unused components.

Removed unused states, layout effects, and props related to last update timestamp. Renamed variables for better clarity and updated labels and error messages to align with the history context. Simplified component structure for improved maintainability.

* ```
Refactor tab handling and integrate dynamic height adjustments.

Renamed enums for better clarity and consistency. Implemented a `tabsMenuHeight` prop to dynamically adjust component layouts based on observed height changes using `useResizeObserver`. Updated the `Updates` component to consider the calculated heights for improved rendering.
```

* Refactor `groupByDate` parameter and add `lastReadAt` field

Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.

* Refactor `groupByDate` parameter and add `lastReadAt` field

Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.

* Refactor `groupByDate` parameter and add `lastReadAt` field

Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.

* Refactor `groupByDate` parameter and add `lastReadAt` field

Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.

* "Optimize GraphQL type definition formatting in generated file

Condensed the formatting of the GetChaptersHistoryQuery type to a single line for improved readability and consistency. This change does not affect functionality but enhances maintainability of the generated code."

* Remove UpdateChecker component from History screen

The UpdateChecker component and its related navbar action have been removed from the History screen. This simplifies the navbar setup and eliminates unused functionality in this context.

* Refactor chapter fragment and type references

Updated `ChapterRecentListFieldsFragment` to `ChapterUpdateListFieldsFragment` for better alignment with naming conventions. Adjusted type imports and query structures to maintain consistency across files. No functional changes introduced.

* Refactor padding calculation logic in Updates screen.

Renamed state variable and refactored its logic for clarity and consistency. The updated logic now uses a more descriptive name, `listPadding`, to enhance code readability and maintainability.

* Pass `tabsMenuHeight` prop to History component

Added `tabsMenuHeight` prop to the `History` component to properly calculate the height for the `StyledGroupedVirtuoso` element. This ensures consistency with other components and improves layout rendering.

* Revert package.json

* Add last page read tracking to chapter history

Introduced "lastPageRead" and "pageCount" fields to track progress in chapter history. Updated UI to display the last page read along with total pages for chapters. Adjusted localization files to support the new "page" label.

* Remove last page read display from ChapterHistoryCard

The "last page read" information was removed from the ChapterHistoryCard component for a cleaner UI. This change simplifies the card's design by showing only the chapter name and relevant download state.

* Forcing an empty commit.

* Replace "Recent" screen with separate "Updates" and "History".

The "Recent" feature has been split into two distinct screens, "Updates" and "History", for improved clarity and functionality. Routes, icons, and components have been updated accordingly, and redundant code related to "Recent" has been removed.

* Clean

* Revert vi.json

* Remove unnecessary `useLocation` hook and update state logic.

The `useLocation` hook was removed as it was not used elsewhere in the component. The state property for the routing logic was updated to use `Chapters.getReaderOpenChapterLocationState` for better encapsulation and clarity.

* Update history localization by removing unused "page" key

Removed the "page" key from the "history" section in the localization file as it is no longer in use. This cleanup helps keep the translation file consistent and easier to maintain.

---------

Co-authored-by: NamNH <namitonguyen@gmail.com>
2025-03-10 21:53:40 +01:00
schroda
c4ba483efe Add new languages to resources 2025-03-09 16:26:23 +01:00
schroda
cf348db5b8 Rename "Downloads" to "Download queue" 2025-03-09 16:26:22 +01:00
schroda
2ba0aea679 Move "category settings" to "LibrarySettings" 2025-03-09 16:26:21 +01:00
schroda
95ac4832bd Fix "main route" detection
There was a possibility that routes were incorrectly detected as main routes which caused the back button to not get shown.

E.g. a route that is only visible on desktop was still considered a main route on mobile devices
2025-03-09 16:19:33 +01:00
schroda
df719df666 Show "Download" page only on desktop in nav bar 2025-03-09 16:19:32 +01:00
schroda
6afc9f22b6 Introduce "more" page
- moves "Settings" into "more" page
2025-03-09 16:19:31 +01:00
Hosted Weblate
f350aa8c41 Translations update from Hosted Weblate
Co-authored-by: David <david@parejarodriguez.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Infy's Tagalog Translations <ced.paltep10@gmail.com>
Co-authored-by: Kaleb <kalebcarvalho1@gmail.com>
Co-authored-by: plum7x <plumgift@hotmail.com>
Co-authored-by: தமிழ்நேரம் <anishprabu.t@gmail.com>
Co-authored-by: 张锡铎 <Duoduo12138@outlook.com>
Co-authored-by: 清水汐音 <chenzhongjie19940725@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/es/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/fil/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/pt/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/ta/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/zh_Hant/
Translation: Suwayomi/Suwayomi-WebUI
2025-03-09 16:18:44 +01:00
schroda
f7b6006cc0 Delete chapters on migration again
Regression a29c113b5f
2025-03-06 21:09:07 +01:00
schroda
6ebf13d328 Properly log errors 2025-03-03 23:59:58 +01:00
schroda
1d9c3738fd [skip ci] Remove unnecessary prop source
Should have been removed with 52c8734c59
2025-02-25 18:00:08 +01:00
schroda
537ab5850d Fix TypeError
Forgot to remove prop in 52c8734c59
2025-02-25 17:59:28 +01:00
CrystailX
ae204b2a06 Support non-Latin characters in library search function (#885)
* support multilingual library search

* prevent multiple spaces
2025-02-25 17:56:00 +01:00
schroda
52c8734c59 Fix opening chapter via chapter selection in reader
Guard should have been removed with 4a9d2903b8
2025-02-23 13:21:32 +01:00
schroda
ba3f0f6574 Fix closing transition pages in first/last chapter
In case the first/last chapter of a manga was opened, clicking the previous/next tap-zone caused the last/first page to get opened
2025-02-23 13:06:12 +01:00
schroda
ce2281a8b9 Fix resuming last read page
Regression 856e928c44
2025-02-20 13:16:39 +01:00
schroda
e3fc8f4195 Fix typing after "apollo-client" update to v3.13.1
Introduced due to the apollo-client dependency update in f39c902b5f
2025-02-19 17:38:58 +01:00
schroda
5e10e1629f Fix intersection detection for horizontal pager 2025-02-19 16:44:01 +01:00
schroda
a85e5584c8 Preserve scroll position continuous pager on previous chapter load
In the horizontal pager loading the previous chapter caused the scroll position to get lost and instead of starting at the end of the previous chapter, the scroll position was at the very start.
This happened everytime no matter if the scroll position was at the x 0 or not before the previous chapter got visible.

Same issue can be observed in the vertical pager in case the scroll position is at y 0 before the previous chapter has been rendered.
2025-02-19 16:43:58 +01:00
schroda
811b17361c Fix intersection root margin for horizontal pager 2025-02-19 16:39:55 +01:00
schroda
eba3cadb8b Properly detect previous chapter load state
Regression from 174d850093
2025-02-18 02:06:13 +01:00
schroda
e28c603112 Streamline tap zone click handling 2025-02-18 02:06:12 +01:00
schroda
5eb442e760 Remove duplicated state setter calls 2025-02-18 02:06:11 +01:00
schroda
d3c6acbbfb Fix going to previous/next page from first/last 2025-02-18 02:01:16 +01:00
schroda
0b79f1f82a Extract reader exit button 2025-02-17 03:56:40 +01:00
schroda
95fa09a94a Extract reader bookmark button 2025-02-17 03:51:07 +01:00
schroda
ca7fba0757 Add library button to "ReaderOverlayHeaderMobile" 2025-02-17 03:45:50 +01:00
schroda
c52a822a23 Increase allowed issue title length 2025-02-17 03:30:07 +01:00
schroda
419181efa9 Add add/remove to/from library button to reader desktop quick actions 2025-02-17 03:26:44 +01:00
schroda
09ff0f3ca0 Set i18n supported languages 2025-02-17 03:07:20 +01:00
schroda
1ae98afa34 Move scripts into separate folders 2025-02-17 02:57:17 +01:00
schroda
0a34ae01ba Require languages to be at least 75% translated 2025-02-17 02:57:16 +01:00
schroda
5dcbf6c168 Extract weblate types, constants, logic 2025-02-17 02:10:14 +01:00
schroda
f39c902b5f Update dependencies 2025-02-17 01:12:56 +01:00
schroda
10ad7ce5d7 Fix marking chapter as read for single page chapters in paged pagers
Regression from 174d850093
2025-02-17 01:12:56 +01:00
schroda
cc7eca08d7 Handle closing transition pages in paged pagers for single page chapters
In case a chapter only has a single page and the previous/next transition page was visible, it was not possible to go back to the chapters page, since it just opened the previous/next chapter instead
2025-02-17 01:12:55 +01:00
Hosted Weblate
68603cf59e Translations update from Hosted Weblate
Co-authored-by: Ayoub <rahaliayoub28@gmail.com>
Co-authored-by: Demax TV <max0965053649@gmail.com>
Co-authored-by: Fordas <fordas15@gmail.com>
Co-authored-by: Henrique <heluis110@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Infy's Tagalog Translations <ced.paltep10@gmail.com>
Co-authored-by: Nguyễn Trung Đức <vaicato16@gmail.com>
Co-authored-by: lengzero <lengansong@gmail.com>
Co-authored-by: plum7x <plumgift@hotmail.com>
Co-authored-by: tizio04 <dp2104@gmail.com>
Co-authored-by: zeedif <carlos_antonio-rl@hotmail.com>
Co-authored-by: 清水汐音 <chenzhongjie19940725@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/ar/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/es/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/it/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/pt/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/th/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/vi/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/zh_Hant/
Translation: Suwayomi/Suwayomi-WebUI
2025-02-16 23:13:28 +01:00
schroda
c5b7e89fb4 Ensure to always have one page in reader
Reapplies if from 2c4a17b32f

Regression from 4a9d2903b8
2025-02-12 20:43:45 +01:00