feat: Use extensions-lib v14 (#2752)

This commit is contained in:
Claudemirovsky
2024-01-15 06:26:05 -03:00
committed by GitHub
parent 1497304210
commit 2511b7e8e7
5 changed files with 10 additions and 9 deletions

View File

@ -23,7 +23,7 @@ android {
targetSdkVersion AndroidConfig.targetSdk targetSdkVersion AndroidConfig.targetSdk
applicationIdSuffix pkgNameSuffix applicationIdSuffix pkgNameSuffix
versionCode extVersionCode versionCode extVersionCode
versionName project.ext.properties.getOrDefault("libVersion", "13") + ".$extVersionCode" versionName project.ext.properties.getOrDefault("libVersion", "14") + ".$extVersionCode"
base { base {
archivesName = "aniyomi-$pkgNameSuffix-v$versionName" archivesName = "aniyomi-$pkgNameSuffix-v$versionName"
} }

View File

@ -5,7 +5,7 @@ kotlin_version = "1.8.22"
serialization_version = "1.5.1" serialization_version = "1.5.1"
[libraries] [libraries]
aniyomi-lib = { module = "com.github.jmir1:extensions-lib", version = "a2f1874" } aniyomi-lib = { module = "com.github.aniyomiorg:extensions-lib", version = "14" }
kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk8", version.ref = "kotlin_version" } kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk8", version.ref = "kotlin_version" }
kotlin-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-serialization-protobuf", version.ref = "serialization_version" } kotlin-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-serialization-protobuf", version.ref = "serialization_version" }

View File

@ -419,8 +419,9 @@ class Yomiroll : ConfigurableAnimeSource, AnimeHttpSource() {
?.joinToString { gen -> gen.replaceFirstChar { it.uppercase() } } ?.joinToString { gen -> gen.replaceFirstChar { it.uppercase() } }
status = anime?.let { status = anime?.let {
val media = json.decodeFromString<LinkData>(anime.url) val media = json.decodeFromString<LinkData>(anime.url)
if (media.media_type == "series") fetchStatusByTitle(this@toSAnime.title) if (media.media_type == "series") {
else SAnime.COMPLETED fetchStatusByTitle(this@toSAnime.title)
} else SAnime.COMPLETED
} ?: SAnime.UNKNOWN } ?: SAnime.UNKNOWN
author = content_provider author = content_provider
description = anime?.description ?: StringBuilder().apply { description = anime?.description ?: StringBuilder().apply {

View File

@ -6,6 +6,7 @@ import android.widget.Toast
import androidx.preference.EditTextPreference import androidx.preference.EditTextPreference
import androidx.preference.ListPreference import androidx.preference.ListPreference
import androidx.preference.PreferenceScreen import androidx.preference.PreferenceScreen
import dev.datlag.jsunpacker.JsUnpacker
import eu.kanade.tachiyomi.animeextension.BuildConfig import eu.kanade.tachiyomi.animeextension.BuildConfig
import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource
import eu.kanade.tachiyomi.animesource.model.AnimeFilter import eu.kanade.tachiyomi.animesource.model.AnimeFilter
@ -16,11 +17,10 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource
import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor
import eu.kanade.tachiyomi.lib.okruextractor.OkruExtractor import eu.kanade.tachiyomi.lib.okruextractor.OkruExtractor
import eu.kanade.tachiyomi.lib.playlistutils.PlaylistUtils
import eu.kanade.tachiyomi.lib.streamtapeextractor.StreamTapeExtractor import eu.kanade.tachiyomi.lib.streamtapeextractor.StreamTapeExtractor
import eu.kanade.tachiyomi.lib.uqloadextractor.UqloadExtractor import eu.kanade.tachiyomi.lib.uqloadextractor.UqloadExtractor
import eu.kanade.tachiyomi.lib.vidbomextractor.VidBomExtractor import eu.kanade.tachiyomi.lib.vidbomextractor.VidBomExtractor
import eu.kanade.tachiyomi.lib.playlistutils.PlaylistUtils
import dev.datlag.jsunpacker.JsUnpacker
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup import eu.kanade.tachiyomi.util.asJsoup
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
@ -162,7 +162,7 @@ class Tuktukcinema : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
val url = element.attr("data-link") val url = element.attr("data-link")
val txt = element.text() val txt = element.text()
return when { return when {
"Main" in txt -> { "Main" in txt -> {
videosFromMain(url) videosFromMain(url)
} }
url.contains("ok") -> { url.contains("ok") -> {
@ -208,7 +208,7 @@ class Tuktukcinema : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
private fun videosFromOthers(url: String, prefix: String): List<Video> { private fun videosFromOthers(url: String, prefix: String): List<Video> {
val jsE = client.newCall(GET(url)).execute().asJsoup().selectFirst("script:containsData(source)")!!.data() val jsE = client.newCall(GET(url)).execute().asJsoup().selectFirst("script:containsData(source)")!!.data()
val masterUrl = JsUnpacker.unpackAndCombine(jsE)!!.substringAfter("file").substringAfter("\"").substringBefore("\"") val masterUrl = JsUnpacker.unpackAndCombine(jsE)!!.substringAfter("file").substringAfter("\"").substringBefore("\"")
return PlaylistUtils(client).extractFromHls(masterUrl, url, videoNameGen = { "$prefix - $it" } ) return PlaylistUtils(client).extractFromHls(masterUrl, url, videoNameGen = { "$prefix - $it" })
} }
// ============================ search ============================ // ============================ search ============================

View File

@ -12,7 +12,7 @@ class MediaFireExtractor(
val document = client.newCall(GET(url)).execute() val document = client.newCall(GET(url)).execute()
val downloadUrl = document.asJsoup().selectFirst("a#downloadButton")?.attr("href") val downloadUrl = document.asJsoup().selectFirst("a#downloadButton")?.attr("href")
if (!downloadUrl.isNullOrBlank()) { if (!downloadUrl.isNullOrBlank()) {
return Video(downloadUrl, "${prefix}-MediaFire", downloadUrl) return Video(downloadUrl, "$prefix-MediaFire", downloadUrl)
} }
return null return null
} }