Commit Graph
100 Commits
Author SHA1 Message Date
schroda 3b276f9f58 Keep downloaded thumbnails when clearing server cache 2024-04-27 00:03:37 +02:00
schroda b90f84ee11 Prevent triggering load more requests while loading 2024-04-26 22:19:29 +02:00
schroda 09bf1163fa Remove logging of image request failures 2024-04-26 17:29:58 +02:00
schroda f7e95b6660 Update dependencies 2024-04-26 17:10:53 +02:00
schroda 950d240c8a Set "location origin" as default "server base url" 2024-04-26 13:04:21 +02:00
schroda 741489ad49 Adjust missed styling for rtl direction 2024-04-26 13:00:45 +02:00
schroda 1626771e92 Apply rtl styling for rtl languages 2024-04-25 19:27:59 +02:00
schroda 6788e284e9 Prevent selecting an unsupported language
In case no language had been selected yet and the detected browser language is not supported, the selection was set to undefined instead of showing the default language
2024-04-25 00:27:00 +02:00
schroda bbb655c448 [Tool] Add script to generate i18n resource array 2024-04-25 00:06:07 +02:00
schroda 082f923e10 Improve i18n resource typing 2024-04-24 23:56:06 +02:00
schroda a7cafb59a4 Fix missing translations for language selection setting 2024-04-24 23:53:43 +02:00
schroda 7ceb1af23e Prevent webUI update available dialog when auto update is enabled
The automatic webUI update checks were not triggered in case the auto update setting was disabled but it was still possible for the update info dialog to be shown
2024-04-23 18:19:20 +02:00
schroda fd2946d1ae Mark duplicated chapters as read
In case the "skip duplicated chapters" setting was enabled the duplicated chapters of the just read chapter did not get marked as read
2024-04-23 18:08:34 +02:00
schroda 0c4ce2c9c5 Use cache to query chapters with state
There is a potential that the cached chapters state is outdated, but this is a marginal issue and is preferred over sending a request to the server everytime for data that is most likely already known.
The triggered downloads will also reflect what is currently shown in the UI, so it will most likely never be known if some chapter state was outdated.
2024-04-23 13:54:04 +02:00
schroda 23e639a4e9 Ignore duplicated chapters for download limits
In case the next 5 chapters should get downloaded and they are all the same chapter from different scanlators, then the download actually only included 1 chapter.
To fix this duplicated chapters are counted as 1 chapter
2024-04-23 13:46:59 +02:00
schroda 640cc1bf49 Fix chapters download "all" option 2024-04-23 12:49:39 +02:00
schroda 6e4596c649 Include manga chapter fields in update subscription
In case a manga was fully read and a new chapter was found during a library update, the resume button was not correctly updated and pointed to the first chapter.
This regression was introduced with fe2cb682b6
2024-04-22 22:22:18 +02:00
schroda c76fc9c865 [ESLint] Remove "cache" flag from "lint-staged" linting 2024-04-22 22:19:40 +02:00
schroda ebd84d5b20 Disable webUI update check when auto update is enabled 2024-04-21 16:17:04 +02:00
schroda d5241009b6 Optionally ignore available server update
Makes it possible to never show the info dialog again for the available version update
2024-04-21 15:06:47 +02:00
schroda 9954341434 Remind about server update later on dialog close
Stop opening server update info dialog for one hour after the dialog was closed
2024-04-21 15:06:23 +02:00
schroda f61ed31bd5 Globally inform about available webUI updates
In case the automatic webUI updates setting was disabled the user was never informed about available webUI updates
2024-04-21 15:03:25 +02:00
schroda ad4f59f324 Extract automated update check into hook 2024-04-21 15:03:25 +02:00
schroda c4d77d2325 Globally inform about successful webUI updates
In case automatic webUI updates are disabled, the user gets informed about available updates
2024-04-21 15:03:24 +02:00
schroda 7725673dd7 Move ServerUpdateChecker to "util" folder 2024-04-21 12:52:31 +02:00
schroda 4ae0f65f6c Change order of WebUI "about" info 2024-04-21 12:51:08 +02:00
schroda 6f90eea762 Require manga library removal confirmation only in source browse 2024-04-21 03:50:41 +02:00
schroda c877ea23d3 Update tracker progress on mark all as read in ChapterList button 2024-04-21 03:44:02 +02:00
schroda 18365a26c1 Update image when src url changes
When e.g. switching between 2 different manga pages, the thumbnail did not update because the img fetch was not triggered in case the src url changed
2024-04-21 00:04:00 +02:00
schroda 2066851793 Optionally migrate track bindings 2024-04-21 00:02:43 +02:00
schroda 0d8bb789a0 Rename metadata migration setting flags 2024-04-20 23:26:34 +02:00
schroda a6bdf1b10a Fix typo in translation key usage 2024-04-20 23:19:03 +02:00
schroda 1a16dba7bd Add option to update tracking on manual mark as read 2024-04-20 23:15:02 +02:00
schroda d35ef4fa7f Remove incorrect "change_categories" options type from Chapters::performAction 2024-04-20 22:56:45 +02:00
schroda 7325212b8e Simplify chapter action id selection 2024-04-20 22:49:47 +02:00
schroda a1c0ec82b8 Add setting to disable tracking update while reading 2024-04-20 22:25:40 +02:00
schroda 6f12ae7e4a Correctly download ahead for batch download action 2024-04-20 21:52:18 +02:00
schroda 65992bbcdb [SKIP CI][ESLint] Fix linting issue 2024-04-20 14:45:42 +02:00
schroda b1f97fdf69 Chapters download menu download ahead only if required
Instead of checking if download ahead is required because not enough unread downloaded chapters existed, it just downloaded the next n unread undownloaded chapters
2024-04-20 02:40:10 +02:00
schroda 52e077ff19 Add chapters download menu 2024-04-20 01:43:06 +02:00
schroda 6b066fe8ca Extract Mangas action option types 2024-04-20 01:42:05 +02:00
schroda 8ebd028d25 Update to node v21.7.3
Use "Object::groupBy"
2024-04-20 01:31:19 +02:00
schroda db65082a09 Version lock dependencies 2024-04-20 00:57:30 +02:00
schroda ff508b0972 Move dependencies to dev dependencies 2024-04-17 20:02:03 +02:00
schroda dcc90e3e2f Do not emit storage event when changing grid snapshot
To prevent unnecessary re-renders.
The current grid state was stored in the session storage which then triggered an immediate re-render because the just saved snapshot got restored again
2024-04-16 02:52:15 +02:00
schroda 1f227ce886 Scroll to top when changing shown data in source browse
The current scroll position was preserved when changing the shown content type (browse, latest, filters) or when changing the filters.

Regression introduced with aab3e25031
2024-04-16 02:49:08 +02:00
schroda 80ad5e06be Optionally don't fire storage event
In case a value should be updated without informing subscribes about the change.
E.g. to prevent unnecessary re-renders when using a storage hook
2024-04-16 02:45:25 +02:00
schroda 1352f636ba [SKIP CI][IssueModerator] Fix "acknowledgment section" detection for "Meta" issues 2024-04-16 01:50:06 +02:00
schroda 4c3b1c1560 [SKIP CI][IssueModerator] Allow "Meta" issues 2024-04-16 01:40:47 +02:00
schroda 8178574815 Fix/remove deprecated routes (#747)
* Route to "/" in case path is unknown

* Remove deprecated routes

"sources" and "extensions" were merged into "browse" but the routes were never removed, thus, the paths still matched and opened the components
2024-04-14 18:08:15 +02:00
schroda 6276da42cf Feature/i18n load resources from backend (#746)
* Load i18n resources from backend

* Move locales to public folder
2024-04-14 17:32:25 +02:00
schroda 43597e8428 Add new languages to resources 2024-04-14 17:28:19 +02:00
schroda 473e85a8ed Feature/use second level mui imports (#743)
* Require "Theme" to be passed to "SxProps"

Decreases typescript performance otherwise

* Disallow "top" and "third-level" MUI imports

* Exclude "node_modules" in tsconfig
2024-04-14 15:50:12 +02:00
schroda 418da46c62 Restore previous content type when clearing search (#742)
After clearing the current search the initial content type was always restored instead of the previous selected content type
2024-04-14 15:22:35 +02:00
schroda 1df4b4b311 Fix/source mangas applied filters lost when triggering search (#741)
* Delete storage item when setting "undefined"

* Preserve source browse filters on search

The set filters were lost in case a search was triggered
2024-04-14 15:18:51 +02:00
schroda d0d21b00d5 Fix/server side UI settings saved per device instead of global (#740)
* Make last used migration dialog flags global settings

Were saved per device

* Make "hide library entries" a global setting

Was saved per device
2024-04-14 15:12:17 +02:00
schroda 44ddf19d18 Prevent MUI Popper TypeError (#739)
Vite chunking can cause "Uncaught TypeError: styled_default is not a function at Popper.js:14:20"
2024-04-14 15:11:13 +02:00
schroda 76125a7617 Feature/update dependencies (#738)
* [Tooling] Create script to update dependencies

* Lock dependency versions

* Update dependencies

Wait for eslint related dependencies to be compatible with v9
2024-04-14 15:10:34 +02:00
schroda 79a9d1f246 Pass manga title into location state for migration search (#731)
In case the migration search was started by clicking on a manga card from the migration page the manga title was not passed to the search and thus was missing from the page title
2024-04-11 02:02:40 +02:00
schroda 9d280577be Remove add/remove library button in migration mode from manga cards (#730) 2024-04-11 02:02:31 +02:00
schroda 37224122e6 Enable add/remove manga from library in source global search on long press (#729)
Was supposed to be added with 29860482a6
2024-04-11 02:02:25 +02:00
schroda 9a738775f1 Fix/search bar search disappearing after submit (#728)
* Correctly update search string on location change

Regression introduced with aab3e25031

* Remove unnecessary usage of "useSessionStorage"

This did not add anything and made no sense
2024-04-10 23:46:08 +02:00
schroda f036f01f70 Fix/properly reset cache and queues on server url change and backup import (#725)
* Reset cache on server url change

* Reset image queue

* Completely reset apollo store
2024-04-10 01:23:08 +02:00
schroda d74bd2f80d Allow editing SOCKS and basic auth settings while disabled (#726)
In case these settings were disabled, the other dependent settings were not editable.
This prevented them from being set up as needed before enabling them
2024-04-10 01:22:58 +02:00
schroda 6c43e974e2 Fetch images via html img elements (#727) 2024-04-10 01:22:47 +02:00
schroda 00f5e8d76f Remove track record total chapter as max value for number input (#723)
In case the tracker does not have a total chapter number, it was impossible to manually change the last read chapter
2024-04-09 23:37:52 +02:00
schroda 53de29f263 Unregister existing service workers (#722)
In case some other app was served on the same domain which registered a service worker, this service worker was incorrectly used and never unregistered
2024-04-09 23:37:41 +02:00
schroda 0490851deb [VersionMapping] Require server version "r1514" for preview (#718)
Forgotten in 5edb14aefcda2f54b89975c36f327d7fe84e3c86...
2024-04-07 21:49:04 +02:00
schroda 5edb14aefc Feature/settings auto downlaod add new exclude reuploads setting (#717)
* [Codegen] Update generated files

* [Tooling] Run ts-node with transpile only option

* Add new ignore re-uploads from auto download setting
2024-04-07 21:47:07 +02:00
schroda 1b28ae27fa Feature/cleanup manga card (#716)
* Extract manga badge components

* Extract list/grid manga card

* Disable default promise error handler in production
2024-04-07 21:30:47 +02:00
schroda ca8daab0da Change manga in library state on long press in list mode (#715)
Was forgotten in 29860482a6
2024-04-07 21:19:12 +02:00
schroda 29860482a6 Feature/browse source manga long press remove add manga from library (#710)
* Extract CategorySelect usage into hook

* Extract logic to change manga in library state into hook

* Change manga in library state on long press when browsing source
2024-04-07 15:33:08 +02:00
schroda aab3e25031 Feature/improve restoring grid snapshots (#713)
* Update local storage functions

* Update local storage hooks

* Add session storage

* Improve storing virtuoso grid snapshot

* Use "useSyncExternalStore" for browser storage access

* Get rid of location replacements in "AppbarSearch"

Use session storage instead to prevent reloading the page all the time due to changing the location

* Get rid of location replacements in "SourceMangas"

Use session storage instead to prevent reloading the page all the time due to changing the location
2024-04-07 15:22:03 +02:00
schroda ea2f9dc5a4 Prevent TypeError (#712)
Somehow the grid ref was undefined after the resize observer was already connected.
This should not be possible, so just disconnect the observer in case this still happens
2024-04-07 15:21:46 +02:00
schroda d68d9b7ed2 Remove usage of z-index for manga badges (#711)
Caused the badges to be over some components which they were not intended to be
2024-04-07 15:21:36 +02:00
schroda 41d876e156 Feature/utilize long press (#709)
* Open manga action menu on long press

* Open chapter action menu on long press
2024-04-07 15:21:25 +02:00
schroda ecd9b7478b Add range selection (#707) 2024-04-05 02:03:00 +02:00
schroda 568aaebc3e Trigger refresh only when initially open the track component (#704)
Due to triggering the refresh in the TrackerActiveCard it was triggered everytime this component got rendered, which was also the case when closing the track search
2024-04-03 22:34:48 +02:00
schroda 26cbe15964 [SKIP CI] Fix/issue moderator workflow (#703)
* [IssueModerator] Disable unused options

* [IssueModerator] Fix regexes of rules
2024-04-03 22:32:20 +02:00
schroda 827fa5a171 [SKIP CI] Feature/improve issue moderator workflow (#701)
* [IssueModerator] Improve un-removed "acknowledgment" section detection

* [IssueModerator] Check for invalid issue types in title

* [IssueModerator] Try to ensure short descriptive title

* [IssueModerator] Try to prevent questions in the title
2024-04-03 16:30:25 +02:00
schroda b1ce977dcd Wait for initial page to be rendered before scrolling it into view (#696)
The ResizeObserver triggers the first time when the element has a height of 0, which apparently did not work with scrolling it into view.

Due to immediately disconnecting the observer, the next resize event, which would successfully scroll the page into view, was never handled

Regression introduced with 0c1abebaf4
2024-04-01 13:17:50 +02:00
schroda c4139b5d51 Only trigger track progress on last page read (#693) 2024-04-01 02:30:58 +02:00
schroda 0d0cd54249 Fetch latest track data from tracker (#692) 2024-04-01 02:06:35 +02:00
schroda 46fc7f6bdc Use correct translation key for remote track deletion (#691) 2024-04-01 01:23:04 +02:00
schroda 5a2f77d124 Trigger track progress on last page read of chapter (#690) 2024-04-01 01:22:49 +02:00
schroda 4f7a05f6fe Add bookmarked filter in library (#687) 2024-04-01 01:12:26 +02:00
schroda fe2cb682b6 Use first unread chapter for continue read buttons (#689) 2024-04-01 00:57:47 +02:00
schroda 9674b18d28 Feature/tracking unbind use new mutation (#688)
* [Codegen] Update generated files

* Use new "unbindTrack" mutation

* Add option to delete remote track on unbind

* [VersionMapping] Require server version "r1510" for preview
2024-04-01 00:45:44 +02:00
schroda 8d265f1ddf Install dependencies from lock file in github actions (#686) 2024-03-31 23:36:39 +02:00
schroda dc1a6cbd16 Feature/update dependencies (#685)
* Update dependencies

* Add missing "graphql" peer dependency
2024-03-31 23:34:40 +02:00
schroda 25b7d149ba Refetch GET_MANGAS query on track unbind mutation (#684)
GET_CATEGORY_MANGAS is only used for the default category
2024-03-31 17:23:52 +02:00
schroda d59f90f787 Consider track filters for library filtered out message (#683) 2024-03-30 16:07:29 +01:00
schroda 21acbd5f48 Fix/tracking updating score (#682)
* Use SelectSetting for updating track score

* Create custom Select component
2024-03-29 18:57:52 +01:00
schroda 374e71f521 Highlight library filter icon as active for tracker filter (#681) 2024-03-29 16:55:07 +01:00
schroda fa1169337f Fix/manga track binding card styling (#680)
* Fix missing box shadow of active tracker card

Due to missing side paddings the box shadow wasn't visible

* Extract tracker card styling

* Prevent breaking title when selecting manga

* Limit max lines of titles
2024-03-29 16:54:53 +01:00
schroda 74f945dd59 Use correct translation key (#679) 2024-03-29 00:51:14 +01:00
schroda 74cf4b7c50 Add option to use img tag to fetch images
MangaUpdates covers could not be fetched via the fetch api because there were cors issues
2024-03-29 00:45:38 +01:00
schroda 816cbee145 Add library filter for trackers 2024-03-29 00:45:38 +01:00
schroda 511b1f7c5e Specify type of custom scalars 2024-03-29 00:45:38 +01:00
schroda 7990ffda71 Add track action to manga action menu in library 2024-03-29 00:45:38 +01:00