195 Commits

Author SHA1 Message Date
nicki
1c8478fcca
Don't think of mangadex chapter names as markdown (#18434)
* fix an edge case on chapter name cleaner

maybe closes https://github.com/tachiyomiorg/tachiyomi-extensions/issues/18407

* forgot about alt titles

* update javadoc to match the function usage
2023-10-08 18:47:05 -03:00
Alessandro Jean
9579b5f145
Minor improvements to the MangaDex code (#17573)
* Some minor improvements to the MangaDex code.

* Change capitalization of some other tags.
2023-08-19 11:56:14 -03:00
nicki
d19e67ed2d
MangaDex: Add filtering to list search (#17460)
* increment extVersionCode

closes https://github.com/tachiyomiorg/tachiyomi-extensions/issues/17456

* add filtering to `list:`

* prefer using the constant instead

* revert to fallback url if MD@H node fails

* handle edge case in accessing list entries

mostly just to ensure the Retry message doesn't happen

* finish off TODO as manga redirects work fine nowadays

* linting

* add missing headers

this helps add the necessary tachiyomi ua and other stuff

* fix getMangaUrl
2023-08-11 14:59:21 -03:00
Alessandro Jean
7b48737ba8
Fix original language filter in MangaDex (#17369)
* Fix original language filter in MangaDex.

* Add new languages.
2023-08-05 10:30:45 -03:00
beerpsi
c367e3b126
Add a new lib-i18n to make message translation easier (#17336)
* Add support to better internationalization with a new lib.

* Add info about `lib-i18n` in the contributing guide.

* Use lib-i18n in M+ as well.

* Change properties files to UTF-8.

* use the assets/ folder instead of the res/ folder

files under assets/ are addressible by name

* mangadex: add string invalid_manga_id

* M+: Add translations for Vietnamese

* m+: Add Vietnamese to list of available languages

* mangadex: remove duplicate declarations

---------

Co-authored-by: Alessandro Jean <14254807+alessandrojean@users.noreply.github.com>
2023-08-02 14:52:00 -03:00
Alessandro Jean
a59ef3a817
Refactor the MangaDex code a bit (#17267)
* Refactor the MangaDex code a bit.

* Bump the extension version.
2023-07-26 16:18:12 -03:00
Alessandro Jean
dd0a128de0
Revert lib-i18n addition (#16990)
* Revert "Add a new `lib-i18n` to make message translation easier (#16942)"

This reverts commit 4e17c228cad1e789ca74ad592924d8bed6d925ea.

* Bump the versions.
2023-07-02 18:42:03 -03:00
Alessandro Jean
4e17c228ca
Add a new lib-i18n to make message translation easier (#16942)
* Add support to better internationalization with a new lib.

* Add info about `lib-i18n` in the contributing guide.

* Use lib-i18n in M+ as well.

* Change properties files to UTF-8.
2023-07-02 17:38:41 -03:00
Alessandro Jean
c0e01e8dac
Translate some missing strings on MangaDex (#16841)
* Translate some missing strings on MangaDex.

* Use bullet points in the list.
2023-06-23 17:36:03 -03:00
FlaminSarge
0e8aad3b9f
[Mangadex] Call removeEntitiesAndMarkdown on desc before appending altTitles to it (#16711)
* [Mangadex] Call removeEntitiesAndMarkdown on desc before appending altTitles to it

* Bump extVersionCode
2023-06-11 08:14:00 -04:00
FlaminSarge
812d904979
[Mangadex] Add setting to show alternative titles in manga description (#16607)
* [Mangadex] Add setting to show alternative titles in manga description

Uses same-language and romanized titles only

* [Mangadex] Bump build.gradle for previous

* Only include romanized version of originalLanguage
2023-06-07 05:17:23 -04:00
Ivan Iskandar
ceedb73104
MangaDex: Fix popular-latest (#16435) 2023-05-14 09:00:12 -04:00
Alessandro Jean
ecdaaf98d0
Refactor the MangaDex code a bit. (#14902) 2023-01-11 16:59:30 -03:00
nicki
9aa3d12aff
Support canary.mangadex.dev/* links to open in extension (#14631)
because mangadex beta testers can also be using tachi
2022-12-23 17:08:18 -05:00
Alessandro Jean
bd4faa01d9
Update MangaDex to use API v5.7.5 (#14087)
* Update MangaDex to use API v5.7.5.

* Remove unused line.

* Fix list type string.

* Make usage of `authorOrArtist` in deeplink.

* Use proper custom serializer for `LocalizedString`.

* Use actual enums for manga properties.

* Fix list search not working.

Co-authored-by: nicki <72807749+curche@users.noreply.github.com>

Co-authored-by: nicki <72807749+curche@users.noreply.github.com>
2022-11-03 11:32:36 -03:00
Alessandro Jean
b8d7a9dd6e
Add INKR to default blocked groups on MangaDex (#14065)
* Add Inkr to default blocked groups on MangaDex.

* Update MangaDex Readme file.
2022-10-31 18:43:11 -03:00
Alessandro Jean
c3a716a2b4
Temporary fix for empty filter list in MangaDex. (#14046) 2022-10-30 12:47:41 -03:00
Alessandro Jean
9a0c04c679
Fix first volume cover preference in MangaDex. (#14044) 2022-10-30 10:35:12 -03:00
Alessandro Jean
eaa7b15bae
Add option to attempt to use first volume cover on MangaDex (#14031)
* Add option to attempt to use first volume cover on MangaDex.

* Fix missing first volume covers and remove logical symbols.

* Reinforce isOneShot check and reword preference.
2022-10-29 22:59:22 -03:00
nicki
0c6ff5bab9
MangaDex i18n: Add Russian and Spanish translations (#13733)
* Mangadex Spanish translations start

* MangaDex Spanish translations: Settings done

* MangaDex Spanish translation: Content, Format, Genre, Theme done

* MangaDex Spanish translation: rest of setting done

includes Tag Mode, Sort, hasAvailableChapters, unable to process chapter
request, uploaded by $users, and no group

* Android Studio: replace deprecated `capitalize`

uses `replaceFirstChar` as a replacement (honestly suprising how Android
Studio managed that refactor all by itself)

* Add template to fill in Russian translations

* Added MangaDex Russian Translation

* Adding missing Spanish translation for Sort by Rating

and also co-author credit for all the other Spanish translations as well
Co-authored-by: kouyo <46226504+kouyo-quotient@users.noreply.github.com>

* Add missing Russian translation for `intl.sortRating`

Also, add co-author credit for all Russian translations
Co-authored-by: Grannix1337 <115176186+Grannix1337@users.noreply.github.com>

* increment MangaDex.extVersionCode

Co-authored-by: kouyo <46226504+kouyo-quotient@users.noreply.github.com>
Co-authored-by: Grannix1337 <115176186+Grannix1337@users.noreply.github.com>

Co-authored-by: kouyo <46226504+kouyo-quotient@users.noreply.github.com>
Co-authored-by: Grannix1337 <115176186+Grannix1337@users.noreply.github.com>
2022-10-07 09:33:55 -04:00
Alessandro Jean
c8adaa2f2a
Refactor the MangaDex code a bit. (#13703) 2022-10-03 18:35:21 -03:00
Alessandro Jean
c5bd48adc5
Validate UUID preferences and fix images loading on MangaDex (#13597)
* Validate UUIDs on preferences.

* Make the MD@H report call asynchronous.
2022-09-26 22:15:52 -03:00
stevenyomi
024b8c6667
Remove all custom rate limit interceptors (#13394) 2022-09-08 07:50:23 -04:00
nicki
269cc90c89
Add Tamil and Kazakh chapter language support (#12756) 2022-07-27 14:12:19 -03:00
nicki
a552234fd3
MangaDex: Add Sort by Rating (#12204)
* Add Sort by Rating to MangaDex Browse

* Increment mangadex.extVersionCode

* Add Portuguese translations for "Rating"

Co-authored-by: Alessandro Jean
<14254807+alessandrojean@users.noreply.github.com>
2022-06-15 11:12:11 -03:00
nicki
a07efca470
MangaDex: Readme update, Add Latin, and Search sort (#12144)
* Arrange code as used in FilterList

just to improve readability
also kept related things together (like OriginalLanguage related methods)

* Match default Sort with what frontend uses

Searching on the website uses /manga?order[relevance]=desc
This commit matches to that

* Arrange lang sources alphabetically

atleast makes it a bit easy to see if a language exists

* Remove MangaDex (Other)

its been throwing HTTP Forbidden Error since locale checks were added
for translatedLanguages. There are no plans to actually support them in
the future nor are there users using it (since there were no reports)

* Add MangaDex (Latin)

newly created chapter language
has only two (April Fools) translated chapters for now

* Add a section on Manga Status in MangaDex Readme

* Increment mangadex.extVersionCode
2022-06-09 19:21:22 -03:00
Alessandro Jean
b197d624f9
Tweak MangaDex status handling to match Neko and SY behavior. (#12123) 2022-06-07 21:47:10 -03:00
arkon
26e64a36fe
Fix URL handler activities (#12093) 2022-06-06 18:45:48 -04:00
FlaminSarge
d74e4708d7
[Mangadex] Fix uploader username handling (#12096) 2022-06-06 13:25:31 -03:00
arkon
93e6774da0
Refactor to use app-provided rate limiting interceptors (#12088) 2022-06-05 17:24:05 -04:00
Alessandro Jean
cb9a898787
Add support to i18n in MangaDex (#11901)
* Add support to i18n in MangaDex.

* Update the filters and lint some stuff.

* Reword 'tags' into 'tags mode' in the filter
2022-05-21 19:47:24 -03:00
arkon
5db3e03d15
Stop using internal OkHttp APIs (#11172) 2022-03-18 22:27:30 -04:00
jopejoe1
2b5359ca26
Mangadex: Add support for MDLists url intent (#11024)
* Update build.gradle

* Added list support

* Add error message for empty list

* Update AndroidManifest.xml
2022-03-06 09:48:27 -05:00
jopejoe1
41a1d83cd0
Added url intent for author and uploader to managadex (#11015)
* Update build.gradle

* Added Support for author and uploader url intended
2022-03-05 04:50:16 -05:00
nicki
a60274e18b
MangaDex: Remove wildcard deeplinking (#10688)
* move more regexes into companion object

* Remove wildcard domain intent

too many issues. Might as well have the extension only support
mangadex.org links

* Increment mangadex.extVersionCode
2022-02-04 18:13:01 -05:00
Andreas
ca9645288f
Add extension fields for hasReadme and hasChangelog (#10469)
* Add extension fields for hasReadme and hasChangelog

* Dump Komga extVersionCode
2022-01-22 09:48:52 -05:00
nicki
a84a3e275f
MangaDex: Add Slug to Share url, Prefer jp-ro titles and Verify host link intents (#10539)
* Add slug to Share URL

cleans up the title and adds it as a slug to the end of the url that can
then be shared without any issues

Co-authored-by: Henrik <22085664+henrik9999@users.noreply.github.com>

* Check for Japanese Romanized titles

ko-ro and zh-ro also exist but arent that readable compared to ja-ro
personally. And those have a confirmed en title (or fallbacks) anyways

* Increment mangadex.extversioncode

* Linting by Android Studio build process

* Actually use the correct lang code

it's `ja-ro` not `jp-ro`

* Support verified deeplinks (A12+)

* Replace intent host to wildcard hosts

helps with A12 link verify
Ref https://github.com/tachiyomiorg/tachiyomi-extensions/pull/9993

Co-authored-by: funkyhippo <52957110+funkyhippo@users.noreply.github.com>

* Make `titleToSlug` more idiomatic

perhaps java.text.Normalizer could have helped but didnt want to add an
import just for that :d

Co-authored-by: Henrik <22085664+henrik9999@users.noreply.github.com>
Co-authored-by: funkyhippo <52957110+funkyhippo@users.noreply.github.com>
2022-01-21 14:13:43 -05:00
nicki
60751ea39a
MangaDex: Group Blocking improvements (#10481)
* Replace "Abandoned" with "Cancelled"

was replaced in the Api few months back as well

* Refactor externalURL filtering to use pages attr

* Add mangahot to list of external linked groups

* Refactor group blocking

- Block external linked groups separately
  This block is now only done in Latest section (uses /chapter) since
  filtering them out in /manga/ID/feed is done by `createChapter` helper
  already
- No default UUIDs set in groupBlock setting - external linked groups
  and their UUIDs arent exposed to Users

* Increment mangadex.extversioncode

* Remove unneeded empty string check for ch.attr.externalUrl

Co-authored-by: Mitchell Syer <Mitchellptbo@gmail.com>

Co-authored-by: Mitchell Syer <Mitchellptbo@gmail.com>
2022-01-17 10:07:02 -05:00
nicki
b38bcd4f0b
MangaDex: Block Uploaders (#10433)
* Add uploader block to Dex extension

* Sort the list to aid Varnish Caching

"For sake of caching, sort User configurable input query params.
Varnish caching cannot know that it's a list that's safe to re-sort etc.
Use like alphabetical UUID sorting"

* Bump MangaDex.extVersionCode
2022-01-12 13:02:04 -05:00
nicki
97458d6998
MangaDex: Scanlation Group blocking (#10376)
* Add (somewhat) working group blocking

blocks an input scanlator group
doesn't seem to block official/external-link groups

* Fine tuning adjustments*

 - sanitise inputs as much as possible
 - add to summary a bit more
 - `setDefaultValue` looks to set once and never again. So even if
   EditText receives an empty String, it is still valid...
   Not sure if I could do it better

* Increment mangadex.extversioncode
2022-01-06 13:59:49 -05:00
Alessandro Jean
aa98af8907
Add a new filter and fix missing Bilibili chapters in MD. (#10253) 2021-12-27 14:17:14 -05:00
nicki
1f9be45238
Mangadex: Use updated /at-home/server/ endpoint for pages (#10221)
* Move chapter images data to atHome Response

Updates ChapterDto and AtHomeDto as per Deprecation notice

* Use new atHome response to fetch chapter pages

this commit does the following:
 - updates the Dtos as per deprecation notice
 - creates a call to `/at-home/server/` in `pageListRequest`
 - made sure to track of how old chapter token is as was previous
   practice
 - `pageListParse` no longer has the 204 response. Instead we get a 404
   response (not sure about the 504 response for /at-home/server too but
   have to check again. If its not used now, then it could be removed
 - since `atHomeRequestUrl` was necessary for `getValidImageUrlForPage`,
   tried to fetch it from the response. As per their docs and our
   usecase, it should be fine hopefully
   Ref:
   https://square.github.io/okhttp/4.x/okhttp/okhttp3/-response/request/
 - since /chapter/ no longer has `data` attribute, the additional
   check for external chapters was removed
 - tested on 0.12.3 (on Mi A2, running Android12): read few
   chapter/oneshots without issues

* Increment mangadex.extVersionCode

essentially a Christmas present from MD (for its servers :d)

* remove redundant isSuccessful check

essentially dead code since the check is done by `fetchPageList` before
it calls `pageListParse`
2021-12-25 10:52:17 -05:00
nicki
b210902b2c
Mangadex: View all Manga by a Group (+handle group links) (#10060)
* search Manga from a group using their id

* add group deeplink support

* linting

* increment mangadex.extVersionCode

* respect `dexLang`

eg: MangaDex (EN) needn't show a group's non-EN releases

* you cannot use filters on chapter endpoint

fixes HTTP 400 while trying to filter on chapter endpoint

* rewrite to use /manga endpoint instead of /chapter

ends up removing a lot of stuff I had previously but that's a good thing

* add check for valid UUID

if a UUID wasn't being provided, then the group queryParameter wouldn't
work and end up throwing Error 400. Might as well prevent that
2021-12-13 14:08:33 -05:00
FlaminSarge
bc39d9ae8f
[Mangadex] Fallback to uploader name for uploads that are missing group info entirely (#10023)
This also filters out the legacy MDv3 'no group' entity
2021-12-09 06:59:52 -05:00
nicki
3f884c8248
Mangadex: Filter Popular to show only Manga TLd in that particular lang (#10033)
* show only manga TLd in `dexLang` in Popular

* increment mangadex.versioncode
2021-12-08 05:55:20 -05:00
nicki
8f22b785d6
Mangadex: Add nepali and forgotten Other (#10002)
* add the forgotten `Other`

* add nepali to mangadex factory

* bump mangadex.extVersionCode
2021-12-05 12:20:54 -05:00
FlaminSarge
55b2eac827
[Mangadex] Update originalLanguage pref to use MultiSelectListPreference (#9671)
The zh-hk workaround is done during query param building rather than being stored in the preference value
2021-10-30 12:29:30 -04:00
FlaminSarge
f3b3995174
[Mangadex] Update content rating to use MultiSelectListPref (#9670) 2021-10-30 09:56:35 -04:00
Alessandro Jean
31e563c9ab
Fix wrong language in originalLanguage tag. (#9600) 2021-10-24 13:39:21 -04:00
FlaminSarge
b143713590
[Mangadex] Handle empty title case, where title is romaji-only (ja) or otherwise missing, by picking whatever value is in title field as a last resort (#9598) 2021-10-23 07:37:24 -04:00