40 Commits

Author SHA1 Message Date
Cuong-Tran
2400ecb1d5 chore: Avoid crash & remove unnecessary libs 2026-05-26 12:28:19 +07:00
manti
e26c465875 utils: update preference util (keiyoushi/extensions-source#16028)
* update preference util

* context

* remove comment

---------

Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>
(cherry picked from commit fb2f248bcbfdd8df838a3522ada1746483a69a24)
(cherry picked from commit 2e5ab31f0da2a828da6d4b1a6e8cef806f6e49c7)
2026-05-26 09:08:23 +07:00
manti
6da7c85003 utils: add GraphQL utils (keiyoushi/extensions-source#16018)
* kts

* UNext: graphql util

* Ganma: graphql util

* ComicEarthStar: graphql util

* VoyceMe: graphql util

* graphql util

* KDoc

documentation... *sigh*

* util

* cleanup

* json

(cherry picked from commit 3142aa48c633cfb9b0faa02ddd57b662cb8a2a26)
(cherry picked from commit 953e3ae90af8d7ad8ca2897a24f61d4a9d69c193)
2026-05-26 09:08:23 +07:00
AwkwardPeak7
0f460f7684 utils: update util functions (keiyoushi/extensions-source#15922)
- remove `inline` where not needed
- use `decodeFromBufferedSource` for okio based streaming

(cherry picked from commit 2cb50a43d9599aa7372fe19036f4530a13611b30)
(cherry picked from commit 5c0b1d30598831a33909dd18de722aee88b99639)
(cherry picked from commit 084ecb06edc9576e753b9f62fb10af5eaf8b0ce6)
2026-05-26 09:08:23 +07:00
FourTOne5
ce1d6466bf Rework Gradle build logic (keiyoushi/extensions-source#15657)
* Add new gradle build logic

* rework ko.wolfdotcom

* rework all other extensions

(cherry picked from commit 153fbece55832e8a76f32e26199bb6f8f4252fcb)

---------

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit b030eeff0bc2e68fff2f070a86c851d950f82145)
(cherry picked from commit d7ba3e81a5a0af9c91d96bee014592e991c4efd9)
2026-05-26 09:08:16 +07:00
manti
f3738c7486 utils: add crypto utils (keiyoushi/extensions-source#15640)
* crypto utils

* Gmanga (multi): decodeHex util

* Madara (multi): decodeHex util

* MangaUp: decodeHex util

* J-Novel: decodeHex util

* Mangago: decodeHex util

* MangasIn: decodeHex util

* ComicFuz: decodeHex util

* Corocoro: decodeHex util

* FlowerComics: decodeHex util

* GorakuWeb: decodeHex util

* KadoComi: decodeHex util

* MangaMee: decodeHex util

* MangaOne: decodeHex util

* Mokuro: decodeHex util

* MeDamTruyen: decodeHex util

* Panomic: decodeHex util

* SoaiCaComic: decodeHex util

* TeamLanhLung: decodeHex util

* TuSachXinhXinh: decodeHex util

* Creativecomic: decodeHex util

* rc4 util

* Comix: rc4 util

* J-Novel: rc4 util

* Revert "Comix: rc4 util"

This reverts commit caff68187c20b119207b9b404ff2d462b87c54c0.

¯\_(ツ)_/¯

(cherry picked from commit 7094076183674480221fa55669e04572145f9d30)
(cherry picked from commit a96c552e11b22ef6bedb34b097de4a101e9455cf)
(cherry picked from commit 3407702c02af5470587c1e311c0c5be40caa9428)
2026-05-26 08:59:31 +07:00
Romain
5154bfee1d feat: resolve Next.js RSC special values (keiyoushi/extensions-source#14335)
* feat: new nextJs serializer

* feat: use specific NextJSDate over Date

* test: add resources

* feat: add undefined, map, list

Also rename non-nextjs specific to react flight specific

* test: make sure it works

* feat: adapt

* refactor: drop dead $-prefixed branches in ReactFlightNumber

$ is already stripped by resolveNextJsRefs before deserialize runs,
so the "$Infinity"/etc cases were unreachable.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* refactor: remove no-op nextJsJsonInstance wrapper

It added no serializers module over jsonInstance. Use jsonInstance
directly. Also revert unrelated formatting reflow in
inferredNextJsPredicate.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* test: drop synthetic Map/Set tests covered by real fixtures

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* chore(fr/poseidonscans): bump extVersionCode for ReactFlight rename

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* refactor: replace ReactFlight wrappers with typealiases

The serialization plugin honors @Serializable(with=) on a typealias
(verified), so Date/BigInteger/Double no longer need wrapper classes.
Fields are now the real JDK types: no .toDouble()/.time indirection,
no Android toByte/toShort override, Double holds Infinity/NaN natively.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(fr/poseidonscans): handle null isPremiumUser from RSC $undefined

isPremiumUser can be $undefined in the flight payload; make it
nullable and treat null/false as not-premium.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* revert(fr/poseidonscans): restore upstream/main state

Extension-specific changes split out of the core ReactFlight PR per
review. Work preserved on branch poseidonscans-rsc-wip.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: no lock

* feat: add package-lock.json to .gitignore

---------

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
(cherry picked from commit 2ce6a053bf7c4e63534e9383f30f84c23527bedb)
(cherry picked from commit 9704e2be1192bc9c3315b150a9dc37b05d0f70bc)
2026-05-26 08:38:26 +07:00
AwkwardPeak7
373430f9b5 add more helpers to json utils (keiyoushi/extensions-source#15072)
(cherry picked from commit 68aa08b01f90542869f2af6b16c1680732b934f5)
(cherry picked from commit 21e10bd9c46c1e563e2ceaaa805d3f61a6a440a1)
2026-05-26 08:38:01 +07:00
manti
51879c8532 utils: Add Protobuf helper (keiyoushi/extensions-source#14969)
* utils: Add Protobuf helper

* rm use

* proto

* type

* stream

* Revert "stream"

This reverts commit a41ef48e37dc8217909176b2e3c42036dd2a4d15.

(cherry picked from commit 73de2b7928a3c230b8f777871619cb3a3c3a349c)
(cherry picked from commit d0b08f3d909144f1f1170bf989c610ff8a6d26e7)
2026-05-26 08:37:55 +07:00
AwkwardPeak7
cf0dee8252 Refactor :lib:randomua to set header in headersBuilder (keiyoushi/extensions-source#14060)
* randomua: set in headers and lint rule

* update randomua usage in sources

* adjust lint rule

* lint errors

* doesn't have randomua in it

* cache useragent response & network on main thread

(cherry picked from commit 3143828aed609f176597ca4ff94d8dce2cf52a0f)
(cherry picked from commit 92643f80e31cea62e4921c2fbbf8b19360e25bc5)
2026-05-26 08:37:17 +07:00
AwkwardPeak7
e9eb30ffc1 utils: add NextJs helper (keiyoushi/extensions-source#13508)
* utils: add NextJs helper

* support for json hydration format (Pages Router) and raw rsc

* newline

* infer

* go to array depth to parse

* infer for list

* update kdoc

* update kdoc and function name

(cherry picked from commit 405ed5a653173e41a3218be06d8e4468dd4660c5)
2026-05-26 08:37:08 +07:00
Cuong-Tran
55def65cdf refactor(UrlUtils): Refactor UrlUtils.fixUrl and migrate other places to use it
* Refactor `UrlUtils.fixUrl` to handle relative paths using `okhttp3.HttpUrl`.
* Replace local `getAbsoluteUrl` in `PlaylistUtils` with `UrlUtils.fixUrl`.
* Update return types to nullable `String` for better empty URL handling.
* Add unit test
2026-03-12 21:49:39 +07:00
Cuong-Tran
579c917230 Add new extension functions:
* Add `Network` Response extensions
* Add `Coroutines` catching-flatMap extensions
2026-03-12 21:49:11 +07:00
Cuong-Tran
3f1fdbedcb chore(keiyoushi.utils): Migrate CoroutinesExtensions and JsonExtensions utils from extensions-lib to keiyoushi.utils 2026-03-01 21:30:51 +07:00
Cuong-Tran
8b1799403a lint 2026-02-07 00:36:32 +07:00
AwkwardPeak7
3f02702849 add spotless with ktlint (#13170)
* spotless with ktlint

* disable spotless on generated newtoki and wolfdotcom files

* fetch depth

(cherry picked from commit bec7c8d6a32528758873a8345ec685105fedbb69)
2026-02-07 00:36:32 +07:00
Cuong-Tran
2a183f83f7 sync code 2026-02-07 00:36:25 +07:00
AwkwardPeak7
00e71313ab Bump AGP, Kotlin and other project dependencies (#12962)
* bump dependencies: gradle, kotlin

first gradle sync passes

* fix sourceset and manifest generation

built some extensions

* bundle kotlin related deps

* cleanup & deprecated gradle features

* align kgp version

* use serialization 1.7.3

* gradle 9.3.1

* review changes

* review changes

* spelling mistake

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
(cherry picked from commit 464acfa1d07627da060a6251629e6d353d5912a7)
(cherry picked from commit 49b76d11cacbfbf672f66c198f4ecc51bf0c6006)
2026-02-07 00:06:00 +07:00
Cuong-Tran
9cf2fe32aa Move extensions.utils to keiyoushi.utils 2026-02-07 00:05:41 +07:00
stevenyomi
2d3fed798c Update buildFeatures in build scripts (#730)
(cherry picked from commit 1e7e3f4ab2c62e36b6f78730b14d2f6b87ae3615)
2026-02-06 23:55:10 +07:00
Secozzi
e005f20bf6 JellyFin/Stremio: Fix minor bugs and update version codes (#382)
* Fix some minor bugs and code/project cleanup (Secozzi/aniyomi-extensions#25)

* Update prefs and fix some minor issues in stremio and jellyfin

* Update README.md and minor cleanup

(cherry picked from commit cd514921fac1be62c557ccb7d961d1cf4662a791)

* Improve a bit

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
2025-08-24 11:42:26 +07:00
Cuong-Tran
8b3653f4b9 fix(KissKh): Fix video URL handling (#374)
* Fix non-complete video URL

* Bump version

* Normalize URL
2025-08-18 02:37:43 +07:00
Cuong-Tran
9463c7dd56 fix(preferences): Fix handling of null default values in preferences (#350)
* Fix preferences

* Handle null default value for LazyMutablePreference

* handle getting incorrect stored type

* handle exception more carefully

* Narrow the exception

* comment for Set<String> as well
2025-08-11 11:27:35 +07:00
Cuong-Tran
860a41366a feat(preferences): Add onChange/onComplete callback to preference change listeners (#338)
* feat(preferences): Add onChange/onComplete callback to preference change listeners

* Validate preference changes before updating values and showing messages

* Swap onChange/onComplete

* Fix Restart message after logout & bump version Stremio/Jellyfin
2025-08-11 11:25:35 +07:00
Cuong-Tran
61574c9731 fix(jellyfin): Fix JSON parsing (#325)
* Disable Library prefs if login failed
* Make private where possible
* Fix core/res
* Bump commons-text lib used by Jellyfin/Stremio
2025-08-04 20:53:42 +07:00
Secozzi
af9d748236 Some fixes (Secozzi/aniyomi-extensions#22)
* Move common stuff to `utils` module

* Move more stuff to utils & make stremio not require restart if possible

* Bump versions & small cleanup in build files

* Use context parameters for json utils

* Add spotless

* Simplify build process

* bump versions

(cherry picked from commit cf53bcf647296aaaa793acd2e1aac0a486418665)

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
2025-08-04 20:53:42 +07:00
Cuong-Tran
74698996ad refactor keiyoushi's utils to extensions (#323) 2025-08-04 20:53:42 +07:00
Cuong-Tran
0492dc8a41 chore(gradle): update Android SDK versions and clean up (sync with Keiyoushi) 2025-08-04 20:53:37 +07:00
Claudemirovsky
5068d25516 refactor: Use python scripts and remove unnessecary manifests (#2876)
Co-authored-by: jmir1 <jhmiramon@gmail.com>
2024-02-05 23:31:21 +01:00
Claudemirovsky
632b626f35 chore(build): Reduce global warnings (#1684) 2023-06-07 10:28:34 +02:00
Claudemirovsky
933138fa6a [skip ci] Remove useless files and solve AGP warnings (#1575)
* chore: Remove useless files

* [skip ci] refactor: Solve deprecation warnings from AGP
2023-05-02 20:01:30 +02:00
jmir1
8fb4f30b31 add hasReadme and hasChangelog 2022-11-06 23:39:29 +01:00
jmir1
9156585f9e fix build error from manifest 2022-08-06 21:07:27 +02:00
jmir1
0f7df7a71c merge upstream 2022-08-06 20:59:16 +02:00
jmir1
4237b8d70e update some dependencies etc 2021-05-27 16:04:37 +02:00
jmir1
0125a32d74 change package name everywhere 2021-04-25 00:32:20 +02:00
arkon
2004ad5d6e Include generator name in APK metadata 2021-02-11 17:34:38 -05:00
Aria Moradi
0ce4416f09 Multisrc bugfix and genkan refactor (#5707)
* themesource bugfix, refactor genkan

* revert 3da46570aa
2021-02-08 16:37:48 -05:00
arkon
3da46570aa Move annotations and Duktape stub into core module 2021-02-06 18:16:04 -05:00
arkon
3b3695f97b Rename defaultRes module to core 2020-12-20 13:17:10 -05:00