Commit Graph
100 Commits
Author SHA1 Message Date
schroda 403f657945 Enable ripple effect for nav buttons 2024-06-07 14:48:23 +02:00
schroda 29d54384f5 Remove most "useSetDefaultBackTo" usage
In case the "depth" of the initial opened app page was greater than 2 it was possible to get stuck in a loop of using the back button twice from the initial page to the previous page and back to the initial page...

Instead, in case a page with a greater depth than 0 is opened, the library should just be opened when using the back button.

This way the back button actually behaves like it's intended, as an app back button and not like the browsers back button
2024-06-06 00:00:38 +02:00
schroda 4bb458778e Exclude initial page form history stack
In case the initial opened page had a "depth" of 2 or more, using the back button twice lead to the initial page to get opened again instead of decreasing the depth of the url.

E.g. in case the reader was opened as the initial app page, closing the reader and then clicking the back button caused the reader to get opened again instead of going "back" to the library.
2024-06-05 22:48:00 +02:00
schroda 19e326c8ad Allow partial response for Reader chapter update
It's possible that the "trackProgress" mutation of the "updateChapters" mutation fails, which then would lead to the "mark as read" and "delete chapter" mutation data to be omitted, thus, preventing the cache from being updated with the received mutation data response
2024-06-03 03:09:59 +02:00
schroda fdf78145f0 [VersionMapping] Update to latest server gql schema changes
Server now supports partial mutation responses.
2024-06-03 03:09:58 +02:00
schroda 44166acb4b [Tooling] Improve typing 2024-05-28 14:24:13 +02:00
schroda f815d1e1b0 [Tooling] Add requirements for translation contributors as options to script 2024-05-28 14:04:15 +02:00
schroda 74c7bfdfac Update dependencies 2024-05-25 23:27:46 +02:00
schroda 230acc23d5 Prevent scrollbar from shortly disappearing on library category change
Due to the MangaGrid getting unmounted when changing the category, the "y overflow" value got reset to "auto" which caused the scrollbar from disappearing and immediately reappearing again.
This caused the site content to slightly "jump" due to the increase and immediate decrease in is width.

Related commit 871908eba9
2024-05-24 17:31:49 +02:00
schroda 3492c103a7 Fix tsc issue of incorrect translation key 2024-05-24 14:04:19 +02:00
schroda fee93c22eb Reduce padding of DownloadQueue items 2024-05-23 14:03:59 +02:00
schroda bbe8a56779 Cleanup rendering of bookmark icon of ChapterCards
Gets rid of "position" and "top" usage
2024-05-23 13:54:32 +02:00
schroda af9e77524b Prevent ChapterCard height change on selection
Due to the Checkbox being smaller than the vertical menu icon the ChapterCard was reduced in height, which caused the chapters in the list to jump up sightly.

This issue was introduced by 0ab6549a20 due to changing the line height of the chapter name
2024-05-23 13:52:45 +02:00
schroda 1b408c8065 Remove margin from virtuoso list item
margin breaks virtuosos height calculation
2024-05-23 13:50:54 +02:00
schroda cf996d67bb Add "isMobileWidth" util function 2024-05-23 02:37:40 +02:00
schroda 809e8a32bd Remove "react-device-detect" dependency 2024-05-23 02:31:59 +02:00
schroda 297ec2580b Copy manga title on long press 2024-05-23 02:28:43 +02:00
schroda f64320ad05 Remove missed static string 2024-05-23 01:22:13 +02:00
schroda 64c1ad6de3 Fix i18n type checking 2024-05-23 01:22:12 +02:00
schroda 43d05df78e Set Metadata title color to "secondary text"
The important information is the "value" instead of the "title", thus, the "value" should stand out more
2024-05-23 01:22:10 +02:00
schroda c9cf516473 Use Typography in MangaDetails 2024-05-23 00:40:20 +02:00
schroda 0ab6549a20 Limit lines of chapter names of ChapterCard 2024-05-22 23:28:56 +02:00
schroda 5cfa6d8445 Limit lines of chapter name of update cards 2024-05-22 23:28:56 +02:00
schroda 857b0204d3 Limit lines of manga title of update cards 2024-05-22 23:28:54 +02:00
schroda ea6eac5066 Consider tracker logged out if token is expired
Server returns logged in state for a tracker even while the token has expired
2024-05-22 23:24:05 +02:00
schroda 871908eba9 Always show vertical scrollbar on "body" instead of "html" element
Due to setting the html elements "y overflow" to "auto" after a manga grid got unmounted (d21521625b), MUIs "scroll lock" of "modals" was broken in the reader.

For some reason the scrollbar does not get locked and instead, due to the added padding, the pages jumped slightly upward.

MUI uses the "body" element to lock the scrollbar, and thus, using this element as well instead of "html" fixes this problem, since the manually set "overflow" value gets overwritten by MUI and thus, won't mess with its logic.
2024-05-22 23:06:17 +02:00
schroda e9ee43b9b4 Use "DayJs" instead of "Date" 2024-05-21 22:22:12 +02:00
schroda 09ee5e6862 Extract dayjs setup into file 2024-05-21 20:45:13 +02:00
schroda d889be558e Remove unnecessary "??" operator usage 2024-05-20 17:44:27 +02:00
schroda d21521625b Always show vertical scrollbar while manga grid is rendered
To prevent jittering (https://github.com/Suwayomi/Suwayomi-WebUI/issues/758) caused by react-virtuoso
2024-05-20 17:44:27 +02:00
schroda b207639445 Change scrollbar styling 2024-05-20 16:59:10 +02:00
schroda 37a371863f Set css color scheme via MUI 2024-05-20 16:23:11 +02:00
schroda c6b99478f3 Fix missing flaresolverr link
The spaces are important so that i18n correctly converts the translation to the actual text.

Regression introduced with 3a7c93ea06
2024-05-20 15:00:04 +02:00
schroda 2b2686d323 Always include scanlator in case multiple scanlators exist
Makes more sense compared to the previous logic - to only show the scanlator in case "skip dupe chapters" setting was disabled and duplicated chapters existed - which was also not properly implemented, to be always able to tell if chapters of different scanlators might be viewed
2024-05-14 23:06:36 +02:00
schroda a65ca228fe Keep initial opened chapter as duplicate reference
In case "skip duplicated chapters" is enabled and the next chapter is from a different scanlator, the initial opened chapter should still be used to remove duplicated chapters.

Otherwise, the original scanlator would get lost and the scanlator of the next chapter would get used, which was only a fallback chapter, because the initial chapters scanlator did not have a next chapter.
2024-05-13 04:04:41 +02:00
schroda ca747b383e Show chapter title in Reader chapter select 2024-05-13 03:40:45 +02:00
schroda d726793e3d Sanitize tracker summaries
The summaries can include invalid html tags which caused issues when trying to render them since these tags do not exist.

Known issue:
The invalid tags will get escaped, however, when they include a space (e.g. "<Author's Notes>" everything after the space is missing (e.g. will be "<Author's>")
2024-05-13 03:28:46 +02:00
schroda c5d8b20528 Always allow clearing download queue
It's possible that the queue only contains a failed invalid (does not exist anymore in the database) chapter which then causes graphql errors.
In this case the queue was considered empty which prevented it from getting cleared.
Without being able to clear it, the error could not be fixed.
2024-05-13 01:38:29 +02:00
schroda 760de9e791 Fetch "chapters with state" sorted by asc "source order"
It was possible that the chapters were out of order which e.g. could cause issues with selecting the next chapters to download
2024-05-13 01:24:13 +02:00
schroda 3bc6777043 [SKIP CI][Tooling] Add script to create translation changelog 2024-05-11 16:25:32 +02:00
schroda 1325fe6baf Update CHANGELOG formatting 2024-05-11 01:53:21 +02:00
schroda b581c0d896 Add new languages to resources 2024-05-11 01:28:25 +02:00
schroda 6b690cfd8d Handle error during manga refresh
The error of the refresh mutation was never catched and shown
2024-05-11 01:12:10 +02:00
schroda eb72c78acc Update dependencies 2024-05-11 00:42:06 +02:00
schroda 6a11b58d4d Update "openNextChapter" function in "ReaderNavBar" on change 2024-05-09 13:13:55 +02:00
schroda 9baa04803d Always show unread and download badges in library duplicates page 2024-05-08 19:16:41 +02:00
schroda 23ea896524 Show "ContinueReadButton" on in library 2024-05-08 19:16:41 +02:00
schroda 4d3889532e Group duplicated mangas by title 2024-05-08 19:16:40 +02:00
schroda b785e633fa Optionally check description to find library duplicates
The description contains the alternative titles of the entry, thus, potentially finding a duplicate even if the title itself are different
2024-05-08 19:09:01 +02:00
schroda d094d9c9a3 Check for library duplicates via lowercase entry title 2024-05-08 15:06:02 +02:00
schroda 06817e3478 Prevent updated version info dialog on initial open 2024-05-08 13:50:27 +02:00
schroda 5cb541b684 Add functionality to save source browse searches 2024-05-08 13:45:56 +02:00
schroda 93f76d6b7e Reduce active apollo queries 2024-05-08 13:45:42 +02:00
schroda e39989f906 Fix translation text 2024-05-08 13:04:51 +02:00
schroda f2be29ea3a Show search tips for MyAnimeList 2024-05-07 14:42:02 +02:00
schroda f994d32e91 Open "browse" page for missing sources in backup validation
Path of page was changed, but it was never updated in the backup validation dialog
2024-05-07 02:28:09 +02:00
schroda 86ec83a2ef Handle missing trackers in backup validation result 2024-05-07 02:28:08 +02:00
schroda 4f92a0130e Inform about server version updates 2024-05-07 01:35:19 +02:00
schroda eb0ba0b6a8 Improve detection of updated webUI version
In case the webUI update status was reset from another device, other devices would not show an info that the webUI got updated
2024-05-07 01:34:10 +02:00
schroda 63543a48e3 Add option to disable server update checks 2024-05-07 01:08:08 +02:00
schroda 51a0173927 Add option to disable webUI update checks 2024-05-07 01:06:33 +02:00
schroda 819d9bad66 Ignore available webUI update in case auto update is enabled
The available update info is only supposed to be shown in case the auto update is disabled, but instead, it was only shown in case auto update was enabled
2024-05-07 00:28:33 +02:00
schroda 4d04b9cecd Only abort pending image requests
In case images are requested of a slow source, aborting image requests that are already in progress will cause the server to take forever for new source image requests because it's still processing the aborted image requests.
Thus, aborting ongoing image request might cause more harm than good, since the server will basically become "unresponsive" for new images requests of this source.

By only aborting pending requests, that have not been sent to the server yet, new image requests will only be handled once the active requests are done, preventing the server from getting spammed with image requests that potentially are just getting aborted immediately again (e.g. due to scrolling quickly in the source browse page), but still will be handled by the server, blocking new requests
2024-05-06 02:37:00 +02:00
schroda 3aa156b2c9 Prevent duplicated mangas in source browse
Regression introduced with 6186cb0ea3
2024-05-05 23:27:52 +02:00
schroda 6b955ef705 Fix lint issue 2024-05-05 02:32:24 +02:00
schroda cfde1371fc Add missing changelog button in webUI update info 2024-05-05 01:22:52 +02:00
schroda 64adf991d1 Handle request error in SearchAll 2024-05-05 01:17:18 +02:00
schroda 742dff3698 Always show local server settings
The local server settings were not shown in case the actual server settings were loading or the request failed.
E.g. in case the "server url" was set to an invalid url, it was not possible to correct it again
2024-05-05 01:01:08 +02:00
schroda 648ac49354 Move "retry" button below error message 2024-05-05 00:51:41 +02:00
schroda 129e6171a5 Handle request error in Updates 2024-05-05 00:50:15 +02:00
schroda 7e414202f1 Prevent incorrect missing repo info in Extensions
Server settings request loading and error state were never handled, thus, in case this request was still loading or failed, instead of showing the proper page state, the missing repo info was shown
2024-05-05 00:47:00 +02:00
schroda 395a4cc5b9 Properly handle requests in TrackingSettings 2024-05-05 00:41:02 +02:00
schroda b90395ef12 Prevent infinite loading in About 2024-05-05 00:36:21 +02:00
schroda 3a7c93ea06 Remove referrers from links 2024-05-04 23:54:33 +02:00
schroda b892c93d7a Disable buttons while webUI updating 2024-05-04 22:48:06 +02:00
schroda c731d08547 Fix lint issue 2024-05-04 22:45:01 +02:00
schroda 6df1159728 Use unique local storage key 2024-05-04 15:52:16 +02:00
schroda df66e180d8 Add setting to show duplicated library entries 2024-05-04 15:41:21 +02:00
schroda 297ecd8b52 Add option to highlight specific button in ConfirmDialog 2024-05-04 14:50:27 +02:00
schroda f66051d398 Check for duplicated library manga on add to library 2024-05-04 14:43:41 +02:00
schroda c29173681f Reduce code duplication for Library filtering and sorting 2024-05-03 17:01:04 +02:00
schroda 3efb2662de Correctly sort library by latest uploaded chapter 2024-05-03 16:40:13 +02:00
schroda d3999123ab Extract "Date" functions into "date.ts" util 2024-05-03 16:19:20 +02:00
schroda 29ade85f7f Use "Intl.DateTimeFormat" instead of Date locale functions
It's recommended to use "Intl.DateTimeFormat" instead of using Date locale functions which get called often with the same options (e.g. https://developer.mozilla.org/en-US/docs/web/javascript/reference/global_objects/date/tolocaletimestring)
2024-05-03 15:57:38 +02:00
schroda 940949f832 Fix double page styling for rtl languages 2024-05-03 14:46:28 +02:00
schroda bbafe893de Extract version update info dialog into component 2024-05-03 14:46:05 +02:00
schroda 61b43b80af Merge version update close buttons into one 2024-05-03 01:48:12 +02:00
schroda e54a98001a Use browser language as dayjs locale 2024-05-02 22:14:34 +02:00
schroda fc9a849c1b Use "custom parse format" dayjs plugin
Without this plugin the formatted date was shown as "Invalid date"
2024-05-02 22:14:08 +02:00
schroda dc9d9dfa3f Prevent TypeError in Reader chapter update
In case the manga wasn't loaded immediately, trying to access the trackRecords totalCount caused a TypeError because the initial manga object did not specify it
2024-04-30 20:18:00 +02:00
schroda 5a97f11703 Add missing requests to loading and error handling of Reader 2024-04-30 20:16:02 +02:00
schroda ba3aefc854 Lazy load app routes 2024-04-30 00:39:47 +02:00
schroda 5ab921aba7 Fix TypeError in Mangas::downloadChapters
In case a manga was completely downloaded, the grouped chapters did not contain a list for the specific manga id, resulting in an TypeError due to trying to use the array as if it was not undefined
2024-04-30 00:39:47 +02:00
schroda 0f16429c14 Fix EmptyView styling 2024-04-29 16:22:46 +02:00
schroda 93e95c0a8f Show "no mangas found" message by default
The non-null assertion operator was incorrectly used since "message" could be potentially undefined
2024-04-29 15:39:43 +02:00
schroda bcccbda00c Add retry option to SearchAll error message 2024-04-29 15:37:01 +02:00
schroda c19df43e4a Fix styling of SearchAll error messages 2024-04-29 15:37:01 +02:00
schroda 054585f488 Rename "EmptyView" 2024-04-29 15:29:33 +02:00
schroda 7866fdb9f1 Never use cache for manga chapters with state query
Changed with 0c4ce2c9c5, but it does not work because the chapters state could have changed in the meantime, changing the chapters included in the query response, which is not represented by the cached query
2024-04-29 14:54:18 +02:00
schroda 3f507e0a30 Keep order of chapters when removing duplicates 2024-04-29 12:37:11 +02:00