Commit Graph

40 Commits

Author SHA1 Message Date
schroda
ee0bf3c1e0 Make "value" prop of setting components required 2024-04-28 02:58:38 +02:00
schroda
f1ec97b0e6 Extract fetch logic into parent setting components 2024-04-28 02:58:38 +02:00
schroda
773d2b1026 Add missing error handling 2024-04-28 02:58:24 +02:00
schroda
626c4ba6e6 Show missing loading placeholders 2024-04-27 22:04:44 +02:00
schroda
7725673dd7 Move ServerUpdateChecker to "util" folder 2024-04-21 12:52:31 +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
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
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
5dbf1ce30c Implement showing/updating/removing tracker bindings 2024-03-29 00:45:38 +01:00
schroda
daa3426754 Add "PasswordTextField" 2024-03-29 00:45:38 +01:00
Chance Zibolski
0bf88d3fd1 Update reader width live when updating in reader view (#581)
Basically, instead of updating the width of the image after clicking
`ok`, the width is adjusted live, which makes it easier to figure out
the right value for the manga being viewed.

While implementing this, I realized we can't update the backend every
time we re-render when `liveUpdate` is true, so I've updated the logic
for persisting settings to support skipping the API call to save the
settings in the backend, and only perform the API it when the user
clicks ok on the number setting.

Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
2024-03-18 18:35:35 +01:00
schroda
0c22a9012e Feature/cleanup metadata related logic (#657)
* Remove unnecessary parameter from "requestUpdateServerMetadata"

* Streamline updating metadata server settings

* Move metadata related logic
2024-03-16 16:21:15 +01:00
schroda
535cb1b359 Fix/save active device only in local storage (#643)
* Save "activeDevice" in the local storage

* Set default back to for "DeviceSetting"
2024-03-07 01:12:35 +01:00
schroda
c0c30163c3 Validate device name (#642)
allow only
 - 16 chars
 - letters
 - numbers
 - "-"
 - "_"
2024-03-06 23:44:05 +01:00
schroda
4aec3c94ef Feature/support settings per device (#640)
* Optionally prevent deletion and mutation of "MutableListSetting" items

* Save server metadata per device

This makes it possible to e.g. have different settings on a desktop and a smartphone.
2024-03-06 23:07:48 +01:00
schroda
629b742140 Feature/settings add new socks proxy settings (#617)
* Add new socks settings

* [VersionMapping] Require server version "r1493" for preview
2024-02-22 00:25:12 +01:00
schroda
e383cc9ea8 Add info text to download ahead setting (#599)
Show info that current and next chapter have to be downloaded for this setting to work
2024-02-16 19:38:31 +01:00
schroda
2acf2b6d33 Feature/download ahead trigger chapter downloads client side (#597)
* Trigger download ahead while reading client side

* Trigger download ahead while reading earlier

Download ahead was only triggered once the chapter got marked as read

* Optionally ignore dupe chapters for download ahead

* Consider current chapters scanlator for dupe check

* Update download ahead related settings

- add new metadata setting for download ahead limit
- previous setting
  - rename
  - update usage (auto download new chapters limit)

* Select chapter to auto delete while reading depending on ignore dupe setting

Currently, the n-th to last chapter always got deleted ignoring if "ignore dupes" setting was enabled or not.

* Only auto delete chapter while reading if it is read

In case not the last read but the n-th to last read chapter should get auto deleted while reading, it currently just got deleted ignoring if it has been read or not.
2024-02-16 19:16:18 +01:00
schroda
18ca66cb40 Feature/settings add flaresolverr (#568)
* [Codegen] Update to server changes

* Set "dialogTitle" by default to "settingTitle" for "NumberSetting"

* Add FlareSolverr to settings

* [VersionMapping] Require server version "r1477" for preview

* Replace static strings with translation keys
2024-01-26 21:20:06 +01:00
schroda
e0c5e0521d Feature/manga migration (#536)
* Add "migration" tab to "Browse" screen

* Add missing useEffect cleanup for navbar title and actions

* Make "SourceGridLayout" reusable

* Add migration tab to "Browse"

* Add migration logic
2024-01-26 20:50:51 +01:00
Chance Zibolski
5032a0ae94 Make reader width configurable (#565)
Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
2024-01-21 22:33:13 +01:00
Chance Zibolski
05f57730db Support configuring automatic downloads by category (#562)
Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
2024-01-21 22:31:04 +01:00
schroda
89e8472ebc Add disclaimer to custom repositories setting (#544) 2024-01-09 22:09:43 +01:00
schroda
8faa756ab5 Feature/improve custom extension repos support (#540)
* Move "TextSetting" to new folder

* Extract dialog of "TextSetting"

* Immediately show dialog when adding a list item

* Reuse "TextSettingProps" for "MutableListSetting"

* Add "placeholder" prop to "MutableListSetting"

* Prevent duplicates by default

* Clear dialog values on save

* Validate repo url
2024-01-07 16:30:40 +01:00
schroda
39b79c6ebe Feature/settings support custom extension repos (#539)
* [Codegen] Support custom extension repos

* [VersionMapping] Require server version "r1444" for preview
2024-01-06 18:38:16 +01:00
schroda
6c46c56252 Handle showing disabled state of automatic chapter deletion (#533)
The disabled state (0) was incorrectly handled as the downloading state
2024-01-02 16:14:19 +01:00
schroda
37ce494fda Log promise failures instead of ignoring them (#531)
In case the failure does not get handled, it should at least get logged, to prevent silently ignoring it
2023-12-31 01:42:54 +01:00
schroda
7d574a29f6 Correctly calculate the remaining time till the next update check (#491) 2023-12-10 00:08:33 +01:00
schroda
9cb72243d6 Automatically check for server updates (#489) 2023-12-09 23:20:52 +01:00
schroda
2caf88ce51 Remove incorrect "ListItemSecondaryAction" usage (#486) 2023-12-09 14:16:59 +01:00
schroda
ad0f072651 Feature/automatic chapter deletion more options (#484)
* Add missing translations keys

* [Codegen] Update to latest server schema changes

* [VersionMapping] Require server version "r1431" for preview

* Rename "deleteChaptersAutoMarkedRead" metadata setting

* Add more options to auto delete chapters while reading

Makes it possible to delete the last to fifth to last read chapter instead of only being able to delete the last read chapter
2023-12-05 22:20:13 +01:00
schroda
2006ca9109 Feature/handle disabled download ahead limit by default (#475)
* Add a description to the dialog

* Set the default limit to the lowest possible value
2023-11-25 17:15:07 +01:00
schroda
3766540ce5 Add WebUI settings (#460)
* Add WebUI settings

* [VersionMapping] Require server version "r1427" for preview
2023-11-20 22:14:24 +01:00
schroda
197ee5c94b Persist server settings when disabling them (#462)
Some settings use 0 as the disabled state.
In this case, the previous enabled value was lost.
To prevent this, the last value now gets saved and set again when enabling the setting again
2023-11-19 00:13:49 +01:00
schroda
1fd9b4e744 Disable disallowed settings (#461) 2023-11-19 00:10:30 +01:00
schroda
cac60fed2c Feature/server settings (#458)
* Move "Server Address" setting to server settings

* Rename "ServerDirSetting" to "TextSetting"

* Use "TextSetting" for server address

* Reset value when closing the dialog

* Support passwords in "TextSetting"

* Add server settings
2023-11-18 19:55:44 +01:00
schroda
9b96560a17 Feature/settings backup (#453)
* Show loading indicator for "NumberSetting"

* [i18n] Add lowercase interpolation format

* Add required dependencies for time settings

* Dynamically import dayjs locales for languages

* Add backup settings
2023-11-12 01:41:10 +01:00
schroda
a6cc757d50 Feature/global update settings update manga metadata (#441)
* Add "updateMangas" setting to global update settings

* Sort "en.json" alphabetically
2023-11-04 14:55:25 +01:00
schroda
14e7af9a4a Feature/modify download settings (#429)
* [Codegen] Update settings fragment

* Extract logic to change a number setting

* Show slider for global update interval setting

* Add download settings
2023-11-04 14:40:43 +01:00
schroda
678df88068 Feature/modify global update settings (#432)
* Move setting components in "settings" folder

* Add setting to change global update automation
2023-10-29 02:01:59 +02:00