diff --git a/lib/vidhide-extractor/build.gradle.kts b/lib/vidhide-extractor/build.gradle.kts new file mode 100644 index 000000000..d31dd9ff6 --- /dev/null +++ b/lib/vidhide-extractor/build.gradle.kts @@ -0,0 +1,7 @@ +plugins { + id("lib-android") +} + +dependencies { + implementation(project(":lib:playlist-utils")) +} diff --git a/lib/vidhide-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidhideextractor/VidHideExtractor.kt b/lib/vidhide-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidhideextractor/VidHideExtractor.kt new file mode 100644 index 000000000..0d106f9aa --- /dev/null +++ b/lib/vidhide-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidhideextractor/VidHideExtractor.kt @@ -0,0 +1,64 @@ +package eu.kanade.tachiyomi.lib.vidhideextractor + +import eu.kanade.tachiyomi.animesource.model.Track +import eu.kanade.tachiyomi.animesource.model.Video +import eu.kanade.tachiyomi.lib.playlistutils.PlaylistUtils +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.util.asJsoup +import kotlinx.serialization.Serializable +import kotlinx.serialization.SerializationException +import kotlinx.serialization.json.Json +import okhttp3.Headers +import okhttp3.OkHttpClient + +class VidHideExtractor(private val client: OkHttpClient, private val headers: Headers) { + + private val playlistUtils by lazy { PlaylistUtils(client, headers) } + + val json = Json { + isLenient = true + ignoreUnknownKeys = true + } + + fun videosFromUrl(url: String, videoNameGen: (String) -> String = { quality -> "VidHide - $quality" }): List