diff --git a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt index aecda1f6..c6cf9db4 100644 --- a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt +++ b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt @@ -1,18 +1,19 @@ package eu.kanade.tachiyomi.lib.vidsrcextractor import android.util.Base64 -import app.cash.quickjs.QuickJs 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.lib.vidsrcextractor.MediaResponseBody.Result import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.util.parseAs import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.Serializable -import okhttp3.CacheControl +import kotlinx.serialization.json.Json import okhttp3.Headers import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.OkHttpClient +import uy.kohesive.injekt.injectLazy import java.net.URLDecoder import javax.crypto.Cipher import javax.crypto.spec.SecretKeySpec @@ -21,54 +22,32 @@ import javax.crypto.spec.SecretKeySpec class VidsrcExtractor(private val client: OkHttpClient, private val headers: Headers) { private val playlistUtils by lazy { PlaylistUtils(client, headers) } + private val json: Json by injectLazy() - private val cacheControl = CacheControl.Builder().noStore().build() - private val noCacheClient = client.newBuilder() - .cache(null) - .build() - - private val keys by lazy { - noCacheClient.newCall( - GET("https://raw.githubusercontent.com/KillerDogeEmpire/vidplay-keys/keys/keys.json", cache = cacheControl), - ).execute().parseAs>() - } - - fun videosFromUrl(embedLink: String, hosterName: String, type: String = "", subtitleList: List = emptyList()): List