diff --git a/src/ar/arabseed/build.gradle b/src/ar/arabseed/build.gradle index 2df3891730..01173e95d5 100644 --- a/src/ar/arabseed/build.gradle +++ b/src/ar/arabseed/build.gradle @@ -7,8 +7,14 @@ ext { extName = 'عرب سيد' pkgNameSuffix = 'ar.arabseed' extClass = '.ArabSeed' - extVersionCode = 7 + extVersionCode = 8 libVersion = '13' } +dependencies { + implementation(project(":lib-dood-extractor")) + implementation(project(":lib-voe-extractor")) + implementation(project(":lib-streamwish-extractor")) +} + apply from: "$rootDir/common.gradle" diff --git a/src/ar/arabseed/src/eu/kanade/tachiyomi/animeextension/ar/arabseed/ArabSeed.kt b/src/ar/arabseed/src/eu/kanade/tachiyomi/animeextension/ar/arabseed/ArabSeed.kt index 2d3de36af7..59e012bdc0 100644 --- a/src/ar/arabseed/src/eu/kanade/tachiyomi/animeextension/ar/arabseed/ArabSeed.kt +++ b/src/ar/arabseed/src/eu/kanade/tachiyomi/animeextension/ar/arabseed/ArabSeed.kt @@ -1,11 +1,11 @@ package eu.kanade.tachiyomi.animeextension.ar.arabseed import android.app.Application -import android.content.SharedPreferences import android.widget.Toast import androidx.preference.EditTextPreference import androidx.preference.ListPreference import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.animeextension.BuildConfig import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource import eu.kanade.tachiyomi.animesource.model.AnimeFilter import eu.kanade.tachiyomi.animesource.model.AnimeFilterList @@ -13,9 +13,15 @@ import eu.kanade.tachiyomi.animesource.model.SAnime import eu.kanade.tachiyomi.animesource.model.SEpisode import eu.kanade.tachiyomi.animesource.model.Video import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource +import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor +import eu.kanade.tachiyomi.lib.streamwishextractor.StreamWishExtractor +import eu.kanade.tachiyomi.lib.voeextractor.VoeExtractor import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.util.asJsoup -import okhttp3.OkHttpClient +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.async +import kotlinx.coroutines.awaitAll +import kotlinx.coroutines.runBlocking import okhttp3.Request import okhttp3.Response import org.jsoup.nodes.Document @@ -36,11 +42,11 @@ class ArabSeed : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override val supportsLatest = false - override val client: OkHttpClient = network.cloudflareClient + override val client = network.cloudflareClient override fun headersBuilder() = super.headersBuilder().add("Referer", baseUrl) - private val preferences: SharedPreferences by lazy { + private val preferences by lazy { Injekt.get().getSharedPreferences("source_$id", 0x0000) } @@ -91,18 +97,30 @@ class ArabSeed : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override fun videoListSelector() = "div.containerServers ul li" private fun videosFromElement(document: Document): List