From fc9a3639342a8c940eb7f0a75128bdf6ecf00b00 Mon Sep 17 00:00:00 2001 From: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com> Date: Tue, 8 Aug 2023 00:32:07 +0500 Subject: [PATCH] 999Hentai (#17425) * 999Hentai Coomer brain * 999Hentai: small changes * 999Hentai: refactor * 999Hentai: put dates in preference * 999Hentai: page number filter * 999Hentai: image quality setting * 999Hentai: fix null medium images... * 999Hentai: remove useless helper file * 999Hentai: small changes * 999Hentai: fix deep link * format filter * exclude tags filter * move around filters * remove non-functional filter option --- .../ninenineninehentai/AndroidManifest.xml | 22 ++ src/all/ninenineninehentai/build.gradle | 13 + .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 4649 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2418 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 6525 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 12137 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 17926 bytes .../ninenineninehentai/res/web_hi_res_512.png | Bin 0 -> 90197 bytes .../NineNineHentaiFilters.kt | 69 ++++ .../ninenineninehentai/NineNineNineHentai.kt | 305 ++++++++++++++++++ .../NineNineNineHentaiDto.kt | 159 +++++++++ .../NineNineNineHentaiFactory.kt | 13 + .../NineNineNineHentaiPayloadDto.kt | 39 +++ .../NineNineNineHentaiQueries.kt | 102 ++++++ .../NineNineNineHentaiUrlActivity.kt | 34 ++ 15 files changed, 756 insertions(+) create mode 100644 src/all/ninenineninehentai/AndroidManifest.xml create mode 100644 src/all/ninenineninehentai/build.gradle create mode 100644 src/all/ninenineninehentai/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/all/ninenineninehentai/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/all/ninenineninehentai/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/all/ninenineninehentai/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/all/ninenineninehentai/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/all/ninenineninehentai/res/web_hi_res_512.png create mode 100644 src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineHentaiFilters.kt create mode 100644 src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentai.kt create mode 100644 src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiDto.kt create mode 100644 src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiFactory.kt create mode 100644 src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiPayloadDto.kt create mode 100644 src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiQueries.kt create mode 100644 src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiUrlActivity.kt diff --git a/src/all/ninenineninehentai/AndroidManifest.xml b/src/all/ninenineninehentai/AndroidManifest.xml new file mode 100644 index 000000000..733320219 --- /dev/null +++ b/src/all/ninenineninehentai/AndroidManifest.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/all/ninenineninehentai/build.gradle b/src/all/ninenineninehentai/build.gradle new file mode 100644 index 000000000..5f7f2d5e3 --- /dev/null +++ b/src/all/ninenineninehentai/build.gradle @@ -0,0 +1,13 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply plugin: 'kotlinx-serialization' + +ext { + extName = '999Hentai' + pkgNameSuffix = 'all.ninenineninehentai' + extClass = '.NineNineNineHentaiFactory' + extVersionCode = 1 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" \ No newline at end of file diff --git a/src/all/ninenineninehentai/res/mipmap-hdpi/ic_launcher.png b/src/all/ninenineninehentai/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..f5d448ee4f33dffd239760780a9eaec462274687 GIT binary patch literal 4649 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 literal 0 HcmV?d00001 diff --git a/src/all/ninenineninehentai/res/mipmap-xhdpi/ic_launcher.png b/src/all/ninenineninehentai/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..2a76504d503d6e6661446b1d87e3f691697f0dd9 GIT binary patch literal 6525 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 I;wHiW2XmEa4*&oF literal 0 HcmV?d00001 diff --git a/src/all/ninenineninehentai/res/mipmap-xxxhdpi/ic_launcher.png b/src/all/ninenineninehentai/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..0f3523c57024daca040bac0c157f8c759d121415 GIT binary patch literal 17926 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 u@HO&s))BYj&?|=Y;|E_I3D>tv65?cJ}bKP~3 z*uHBc>wnzmX02ng8yd_r@c^bZ6!T6jg1Kd)CDyI_$J`_5A-67({tUW|GS15P>P~W& zH?~V|*G5s%n0pWEJ5nsoo|sQ|D2aVIqv z10RA&tZaX+JnDzO?(xB$M&o2MEhc?x?z0%jJsX=ZmFmolqeO`sLk{9o0V#?$=Q%7t z(}T;L`>QUy(vPHjZgdNa)?Do?rOS4_$(HAOb#zh_fPsDo%%!c|cb}@`D&BL@l|VM} zg5{)X{N0yXkN5DVuSL0g2`1b=A{%#^iPtX5j)+fWJ9Bv&N!hv|n2sWmd zPU^vndLqaeZ20tisR?(W$R@bS(~EL9(a@JWOgIB9B*#b;5f|~EtaWcJ)Tf87hR4Q0 zlQYvN`c?uVHb6x)a!gEnvV_ml{!M>lz69s)i(<;n|Hgs1k6JnG0s;?Jak z{JtdVBHO$4p$9yhC0IaeI{F^3NB$YOLu2gG$^Gh(OTv*~fZwJoRnp;$B9eWd^mTmf!0aE;zXOZz9dw*dK@>Riy%3Vl&{Q&@IuGgiK>%_w(t<^_DExq zgOZnemnqW5eLtCNIV3?Cl8`x<-8rhtYD%4R3A)xI|3tXr*+qSu8f8?9U~#{93rEZM zp#uK;_Pu|@>G1Da7Lu=eHwe-#&<`G|-Udzw$K?-@gJqV9V&eDi-S6xngm?ChP-b7F zsJrkqbr)iIEp{eUMaClPtm!yGjQZ7BNk zQSjr+hdH!6tA|V=+~G%V*Aj=&i*DHVe0OYQBwc5E)^xbFY?>cC;w6=@%&Q=<#*b{E zHB+!Wsb~Fc{Q`;Z zZ0N6nKjij#_cpp??Y4hhNJx6F#Ui-U5h@rqeZgdsU^;y-1pkgIz_Hq1Jad;a7A*Yx zePsDs!Fq8jR2_A_9l)vbN*>jD%;>hbUdi9==cx;6or|S0KVsCTd%up+B_51adM(WM z%*}Ki(0Ua3cX(^*Xy#rCbmK1?d2c*Pkq%eRrs96^5%&k$o{FjJG#@yPGk)~ti0y{| z(~B52roj#|^&+r1$REiPqEE9!0mi+g>j#;xA`CgY6v_ ztSAE#G-AjKfCPc0&k4S`gtu0or zsy}=@g=p1?M?rxTdsd>j`m1yu+_ zONVM)b75>NzAgJZ)$cF~a9usUb@wMSeg8bJJb;QhHU{=jFxYiMxaBsPbB4#I4b^M} z1bT0{p+@D{&_7$4;cV0elQhVu= zelo?-@OeK`P5+I_3yjc2>DRvzh%!xGxH1 zTS2=%1s}Zgv&i-J!CbUstaZ$~jpJimv>4JC4@R5G;_J|xB?IVli+IaWrR0P-k`>}lKf zoDTKTTO?M_aXW*w99G0JxFv`?A--4Upm1;~mt(9$)OPyP2=$;_5u#L`BWD+d{eyv!R2B|1c=Nbl33LykMZ>!G&-(6X_df5 zQ*W_^r0NkCrO{#@^p*ABxOAsQK$l2Z^f9nkAVN~x9HJl(RDyeI{df8M(+vNoY?_^~ zBAC9*0;AwPt@U4t2&m<&`U5E(OO#D_c0I-zGkp;Z0eDCg&||TxU5mb$nT06w_OTaV zNPl}4$`}OvG@`^9hEnaltwTKSxk?pLJ4Od9K{g2hH-nZ13FOi)-4S`5uzVjp3M--^ z2(Ntt;xlRZfKc(!yCj`c-wEvG)W=k12$JH1)Gbu)BOCi-UNo*+IxIW>S0@^;q8#4P z>?&=w%*~Bt4dUirw^O(LTSf#g?LOCz8VMQj5l_8y2;QH%0{Q=NAm>WJmF#A}hyC{u zuc`a?>({~?8Io|Njg(Y*>Px2!G69o;Xp)kL-s(gipo0m{HhKk%Jsgd((d}-4O6HsYm?OHKdX;wFc7+9z!+GdcaFRlM(HeBk?`zU zh#~t(LOB9+@Y0dfMIlfoM)q1&AG1F6@3PQp+wuEma0F8Od^V*0Fs0*m!=v#DlV}JA zpMo=x_~}n>#d9{WBamnl5EdyjMsA=WJe4$wpj-)*2QjITxg#8KFwnvxXwZ8tpiX3# zCPE#J#S=;TFj@_94 z+bIZk_wdXGJ!< literal 0 HcmV?d00001 diff --git a/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineHentaiFilters.kt b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineHentaiFilters.kt new file mode 100644 index 000000000..0526b14ff --- /dev/null +++ b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineHentaiFilters.kt @@ -0,0 +1,69 @@ +package eu.kanade.tachiyomi.extension.all.ninenineninehentai + +import eu.kanade.tachiyomi.source.model.Filter +import eu.kanade.tachiyomi.source.model.FilterList + +abstract class SelectFilter( + displayName: String, + private val options: Array>, +) : Filter.Select( + displayName, + options.map { it.first }.toTypedArray(), +) { + val selected get() = options[state].second.takeUnless { it.isEmpty() } +} + +abstract class TextFilter(name: String) : Filter.Text(name) + +abstract class TagFilter(name: String) : TextFilter(name) { + val tags get() = state.split(",") + .map { it.trim().lowercase() } + .filter { it.isNotEmpty() } + .takeUnless { it.isEmpty() } +} + +abstract class PageFilter(name: String) : TextFilter(name) { + val value get() = state.trim().toIntOrNull() +} + +class SortFilter : SelectFilter( + "Sort By", + arrayOf( + Pair("Update", ""), + Pair("Popular", "Popular"), + Pair("Top", "Top"), + Pair("Name Ascending", "Name_ASC"), + Pair("Name Descending", "Name_DESC"), + ), +) + +class FormatFilter : SelectFilter( + "Format", + arrayOf( + Pair("", ""), + Pair("Manga", "manga"), + Pair("Doujinshi", "doujinshi"), + Pair("ArtistCG", "artistcg"), + Pair("GameCG", "gamecg"), + ), +) + +class MinPageFilter : PageFilter("Minimum Pages") + +class MaxPageFilter : PageFilter("Maximum Pages") + +class IncludedTagFilter : TagFilter("Include Tags") + +class ExcludedTagFilter : TagFilter("Exclude Tags") + +fun getFilters() = FilterList( + SortFilter(), + FormatFilter(), + Filter.Separator(), + MinPageFilter(), + MaxPageFilter(), + Filter.Separator(), + IncludedTagFilter(), + ExcludedTagFilter(), + Filter.Header("comma (,) separated tag/parody/character/artist/group"), +) diff --git a/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentai.kt b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentai.kt new file mode 100644 index 000000000..230091d6d --- /dev/null +++ b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentai.kt @@ -0,0 +1,305 @@ +package eu.kanade.tachiyomi.extension.all.ninenineninehentai + +import android.annotation.SuppressLint +import android.app.Application +import android.content.SharedPreferences +import androidx.preference.ListPreference +import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.extension.all.ninenineninehentai.Url.Companion.toAbsUrl +import eu.kanade.tachiyomi.network.POST +import eu.kanade.tachiyomi.network.asObservableSuccess +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import eu.kanade.tachiyomi.source.ConfigurableSource +import eu.kanade.tachiyomi.source.model.FilterList +import eu.kanade.tachiyomi.source.model.MangasPage +import eu.kanade.tachiyomi.source.model.Page +import eu.kanade.tachiyomi.source.model.SChapter +import eu.kanade.tachiyomi.source.model.SManga +import eu.kanade.tachiyomi.source.online.HttpSource +import kotlinx.serialization.decodeFromString +import kotlinx.serialization.encodeToString +import kotlinx.serialization.json.Json +import okhttp3.Headers +import okhttp3.MediaType.Companion.toMediaTypeOrNull +import okhttp3.Request +import okhttp3.RequestBody +import okhttp3.RequestBody.Companion.toRequestBody +import okhttp3.Response +import rx.Observable +import uy.kohesive.injekt.Injekt +import uy.kohesive.injekt.api.get +import uy.kohesive.injekt.injectLazy +import java.text.SimpleDateFormat +import java.util.Locale + +open class NineNineNineHentai( + final override val lang: String, + private val siteLang: String = lang, +) : HttpSource(), ConfigurableSource { + + override val name = "999Hentai" + + override val baseUrl = "https://999hentai.to" + + private val apiUrl = "https://api.999hentai.to/api" + + override val supportsLatest = true + + private val json: Json by injectLazy() + + override val client = network.cloudflareClient.newBuilder() + .rateLimit(1) + .build() + + private val preference by lazy { + Injekt.get().getSharedPreferences("source_$id", 0x0000) + } + + override fun popularMangaRequest(page: Int): Request { + val payload = GraphQL( + PopularVariables(size, page, 1, siteLang), + POPULAR_QUERY, + ) + + val requestBody = payload.toJsonRequestBody() + + val apiHeaders = headersBuilder().buildApiHeaders(requestBody) + + return POST(apiUrl, apiHeaders, requestBody) + } + + override fun popularMangaParse(response: Response): MangasPage { + val res = response.parseAs() + val mangas = res.data.popular.edges + val dateMap = preference.dateMap + val entries = mangas.map { manga -> + manga.uploadDate?.let { dateMap[manga.id] = it } + manga.toSManga() + } + preference.dateMap = dateMap + val hasNextPage = mangas.size == size + + return MangasPage(entries, hasNextPage) + } + + override fun latestUpdatesRequest(page: Int) = searchMangaRequest(page, "", FilterList()) + + override fun latestUpdatesParse(response: Response) = searchMangaParse(response) + + override fun fetchSearchManga(page: Int, query: String, filters: FilterList): Observable { + return if (query.startsWith(SEARCH_PREFIX)) { + val mangaId = query.substringAfter(SEARCH_PREFIX) + client.newCall(mangaFromIDRequest(mangaId)) + .asObservableSuccess() + .map(::searchMangaFromIDParse) + } else { + super.fetchSearchManga(page, query, filters) + } + } + + override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { + val payload = GraphQL( + SearchVariables( + size = size, + page = page, + search = SearchPayload( + query = query.trim().takeUnless { it.isEmpty() }, + language = siteLang, + sortBy = filters.firstInstanceOrNull()?.selected, + format = filters.firstInstanceOrNull()?.selected, + tags = filters.firstInstanceOrNull()?.tags, + excludeTags = filters.firstInstanceOrNull()?.tags, + pagesRangeStart = filters.firstInstanceOrNull()?.value, + pagesRangeEnd = filters.firstInstanceOrNull()?.value, + ), + ), + SEARCH_QUERY, + ) + + val requestBody = payload.toJsonRequestBody() + + val apiHeaders = headersBuilder().buildApiHeaders(requestBody) + + return POST(apiUrl, apiHeaders, requestBody) + } + + override fun searchMangaParse(response: Response): MangasPage { + val res = response.parseAs() + val mangas = res.data.search.edges + val dateMap = preference.dateMap + val entries = mangas.map { manga -> + manga.uploadDate?.let { dateMap[manga.id] = it } + manga.toSManga() + } + preference.dateMap = dateMap + val hasNextPage = mangas.size == size + + return MangasPage(entries, hasNextPage) + } + + override fun getFilterList() = getFilters() + + private fun mangaFromIDRequest(id: String): Request { + val payload = GraphQL( + IdVariables(id), + DETAILS_QUERY, + ) + + val requestBody = payload.toJsonRequestBody() + + val apiHeaders = headersBuilder().buildApiHeaders(requestBody) + + return POST(apiUrl, apiHeaders, requestBody) + } + + private fun searchMangaFromIDParse(response: Response): MangasPage { + val res = response.parseAs() + + val manga = res.data.details + .takeIf { it.language == siteLang || lang == "all" } + ?.let { manga -> + preference.dateMap = preference.dateMap.also { dateMap -> + manga.uploadDate?.let { dateMap[manga.id] = it } + } + manga.toSManga() + } + + return MangasPage(listOfNotNull(manga), false) + } + + override fun mangaDetailsRequest(manga: SManga): Request { + return mangaFromIDRequest(manga.url) + } + + override fun mangaDetailsParse(response: Response): SManga { + val res = response.parseAs() + val manga = res.data.details + + preference.dateMap = preference.dateMap.also { dateMap -> + manga.uploadDate?.let { dateMap[manga.id] = it } + } + + return manga.toSManga() + } + + override fun getMangaUrl(manga: SManga) = "$baseUrl/hchapter/${manga.url}" + + override fun fetchChapterList(manga: SManga): Observable> { + val group = manga.description + ?.substringAfter("Group:", "") + ?.substringBefore("\n") + ?.trim() + ?.takeUnless { it.isEmpty() } + + return Observable.just( + listOf( + SChapter.create().apply { + name = "Chapter" + url = manga.url + date_upload = preference.dateMap[manga.url].parseDate() + scanlator = group + }, + ), + ) + } + + override fun getChapterUrl(chapter: SChapter) = "$baseUrl/hchapter/${chapter.url}" + + override fun pageListRequest(chapter: SChapter): Request { + val payload = GraphQL( + IdVariables(chapter.url), + PAGES_QUERY, + ) + + val requestBody = payload.toJsonRequestBody() + + val apiHeaders = headersBuilder().buildApiHeaders(requestBody) + + return POST(apiUrl, apiHeaders, requestBody) + } + + override fun pageListParse(response: Response): List { + val res = response.parseAs() + + val pages = res.data.chapter.pages?.firstOrNull() + ?: return emptyList() + + val cdn = pages.urlPart.toAbsUrl() + + val selectedImages = when (preference.getString(PREF_IMG_QUALITY_KEY, "original")) { + "medium" -> pages.qualityMedium?.mapIndexed { i, it -> + it ?: pages.qualityOriginal[i] + } + else -> pages.qualityOriginal + } ?: pages.qualityOriginal + + return selectedImages.mapIndexed { index, image -> + Page(index, "", "$cdn/${image.url}") + } + } + + private inline fun String.parseAs(): T = + json.decodeFromString(this) + + private inline fun Response.parseAs(): T = + use { body.string() }.parseAs() + + private inline fun List<*>.firstInstanceOrNull(): T? = + filterIsInstance().firstOrNull() + + private inline fun T.toJsonRequestBody(): RequestBody = + json.encodeToString(this) + .toRequestBody(JSON_MEDIA_TYPE) + + private fun Headers.Builder.buildApiHeaders(requestBody: RequestBody) = this + .add("Content-Length", requestBody.contentLength().toString()) + .add("Content-Type", requestBody.contentType().toString()) + .build() + + private fun String?.parseDate(): Long { + return runCatching { + dateFormat.parse(this!!.trim())!!.time + }.getOrDefault(0L) + } + + override fun setupPreferenceScreen(screen: PreferenceScreen) { + ListPreference(screen.context).apply { + key = PREF_IMG_QUALITY_KEY + title = "Default Image Quality" + entries = arrayOf("Original", "Medium") + entryValues = arrayOf("original", "medium") + setDefaultValue("original") + summary = "%s" + }.also(screen::addPreference) + } + + private var SharedPreferences.dateMap: MutableMap + get() { + val jsonMap = getString(PREF_DATE_MAP_KEY, "{}")!! + val dateMap = runCatching { jsonMap.parseAs>() } + return dateMap.getOrDefault(mutableMapOf()) + } + + @SuppressLint("ApplySharedPref") + set(dateMap) { + edit() + .putString(PREF_DATE_MAP_KEY, json.encodeToString(dateMap)) + .commit() + } + + override fun chapterListParse(response: Response) = throw UnsupportedOperationException("Not Used") + override fun imageUrlParse(response: Response) = throw UnsupportedOperationException("Not Used") + + companion object { + private const val size = 20 + const val SEARCH_PREFIX = "id:" + + private val JSON_MEDIA_TYPE = "application/json; charset=utf-8".toMediaTypeOrNull() + private val dateFormat by lazy { + SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.ENGLISH) + } + + private const val PREF_DATE_MAP_KEY = "pref_date_map" + private const val PREF_IMG_QUALITY_KEY = "pref_image_quality" + } +} diff --git a/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiDto.kt b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiDto.kt new file mode 100644 index 000000000..48a66577a --- /dev/null +++ b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiDto.kt @@ -0,0 +1,159 @@ +package eu.kanade.tachiyomi.extension.all.ninenineninehentai + +import eu.kanade.tachiyomi.source.model.SManga +import eu.kanade.tachiyomi.source.model.UpdateStrategy +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import java.util.Locale + +typealias ApiPopularResponse = Data + +typealias ApiSearchResponse = Data + +typealias ApiDetailsResponse = Data + +typealias ApiPageListResponse = Data + +@Serializable +data class Data(val data: T) + +@Serializable +data class Edges(val edges: List) + +@Serializable +data class PopularResponse( + @SerialName("queryPopularChapters") val popular: Edges, +) + +@Serializable +data class SearchResponse( + @SerialName("queryChapters") val search: Edges, +) + +@Serializable +data class DetailsResponse( + @SerialName("queryChapter") val details: ChapterResponse, +) + +@Serializable +data class ChapterResponse( + @SerialName("_id") val id: String, + val name: String, + val uploadDate: String? = null, + val format: String? = null, + val language: String? = null, + val pages: Int? = null, + @SerialName("firstPics") val cover: List? = emptyList(), + val tags: List? = emptyList(), +) { + fun toSManga() = SManga.create().apply { + url = id + title = name + thumbnail_url = cover?.firstOrNull()?.absUrl + author = this@ChapterResponse.author + artist = author + genre = genres + description = buildString { + if (formatParsed != null) append("Format: ${formatParsed}\n") + if (languageParsed != null) append("Language: $languageParsed\n") + if (group != null) append("Group: $group\n") + if (characters != null) append("Character(s): $characters\n") + if (parody != null) append("Parody: $parody\n") + if (pages != null) append("Pages: $pages\n") + } + status = SManga.COMPLETED + update_strategy = UpdateStrategy.ONLY_FETCH_ONCE + initialized = true + } + + private val formatParsed = when (format) { + "artistcg" -> "ArtistCG" + "gamecg" -> "GameCG" + else -> format?.capitalize() + } + + private val languageParsed = when (language) { + "en" -> "English" + "jp" -> "Japanese" + "cn" -> "Chinese" + "es" -> "Spanish" + else -> language + } + + private val author = tags?.firstOrNull { it.tagType == "artist" }?.tagName?.capitalize() + + private val group = tags?.filter { it.tagType == "group" } + ?.joinToString { it.tagName.capitalize() } + ?.takeUnless { it.isEmpty() } + + private val characters = tags?.filter { it.tagType == "character" } + ?.joinToString { it.tagName.capitalize() } + ?.takeUnless { it.isEmpty() } + + private val parody = tags?.filter { it.tagType == "parody" } + ?.joinToString { it.tagName.capitalize() } + ?.takeUnless { it.isEmpty() } + + private val genres = tags?.filterNot { it.tagType in filterTags } + ?.joinToString { it.tagName.capitalize() } + ?.takeUnless { it.isEmpty() } + + companion object { + private val filterTags = listOf("artist", "group", "character", "parody") + + private fun String.capitalize(): String { + return this.trim().split(" ").joinToString(" ") { word -> + word.replaceFirstChar { + if (it.isLowerCase()) { + it.titlecase( + Locale.getDefault(), + ) + } else { + it.toString() + } + } + } + } + } +} + +@Serializable +data class Url(val url: String) { + val absUrl get() = url.toAbsUrl() + + companion object { + fun String.toAbsUrl(): String { + return if (this.matches(urlRegex)) { + this + } else { + cdnUrl + this + } + } + + private const val cdnUrl = "https://edge.timmm111.online/" + private val urlRegex = Regex("^https?://.*") + } +} + +@Serializable +data class Tag( + val tagName: String, + val tagType: String? = "genre", +) + +@Serializable +data class PageList( + @SerialName("queryChapter") val chapter: PageUrl, +) + +@Serializable +data class PageUrl( + @SerialName("pictureUrls") val pages: List? = emptyList(), +) + +@Serializable +data class Pages( + @SerialName("picCdn") val urlPart: String, + @SerialName("pics") val qualityOriginal: List, + @SerialName("picsM") val qualityMedium: List? = emptyList(), +) diff --git a/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiFactory.kt b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiFactory.kt new file mode 100644 index 000000000..eb3d6ba7b --- /dev/null +++ b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiFactory.kt @@ -0,0 +1,13 @@ +package eu.kanade.tachiyomi.extension.all.ninenineninehentai + +import eu.kanade.tachiyomi.source.SourceFactory + +class NineNineNineHentaiFactory : SourceFactory { + override fun createSources() = listOf( + NineNineNineHentai("all"), + NineNineNineHentai("en"), + NineNineNineHentai("ja", "jp"), + NineNineNineHentai("zh", "cn"), + NineNineNineHentai("es"), + ) +} diff --git a/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiPayloadDto.kt b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiPayloadDto.kt new file mode 100644 index 000000000..e7ebc3b3f --- /dev/null +++ b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiPayloadDto.kt @@ -0,0 +1,39 @@ +package eu.kanade.tachiyomi.extension.all.ninenineninehentai + +import kotlinx.serialization.Serializable + +@Serializable +data class GraphQL( + val variables: T, + val query: String, +) + +@Serializable +data class PopularVariables( + val size: Int, + val page: Int, + val dateRange: Int, + val language: String, +) + +@Serializable +data class SearchVariables( + val size: Int, + val page: Int, + val search: SearchPayload, +) + +@Serializable +data class SearchPayload( + val query: String?, + val language: String, + val sortBy: String?, + val format: String?, + val tags: List?, + val excludeTags: List?, + val pagesRangeStart: Int?, + val pagesRangeEnd: Int?, +) + +@Serializable +data class IdVariables(val id: String) diff --git a/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiQueries.kt b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiQueries.kt new file mode 100644 index 000000000..26759bb53 --- /dev/null +++ b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiQueries.kt @@ -0,0 +1,102 @@ +package eu.kanade.tachiyomi.extension.all.ninenineninehentai + +private fun buildQuery(queryAction: () -> String): String { + return queryAction() + .trimIndent() + .replace("%", "$") +} + +val POPULAR_QUERY: String = buildQuery { + """ + query( + %size: Int + %language: String + %dateRange: Int + %page: Int + ) { + queryPopularChapters( + size: %size + language: %language + dateRange: %dateRange + page: %page + ) { + edges { + _id + name + uploadDate + format + language + pages + firstPics + tags + } + } + } + """ +} + +val SEARCH_QUERY: String = buildQuery { + """ + query( + %search: SearchInput + %size: Int + %page: Int + ) { + queryChapters( + limit: %size + search: %search + page: %page + ) { + edges { + _id + name + uploadDate + format + language + pages + firstPics + tags + } + } + } + """ +} + +val DETAILS_QUERY: String = buildQuery { + """ + query( + %id: String + ) { + queryChapter( + chapterId: %id + ) { + _id + name + uploadDate + format + language + pages + firstPics + tags + } + } + """ +} + +val PAGES_QUERY: String = buildQuery { + """ + query( + %id: String + ) { + queryChapter( + chapterId: %id + ) { + pictureUrls { + picCdn + pics + picsM + } + } + } + """ +} diff --git a/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiUrlActivity.kt b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiUrlActivity.kt new file mode 100644 index 000000000..d598b5fba --- /dev/null +++ b/src/all/ninenineninehentai/src/eu/kanade/tachiyomi/extension/all/ninenineninehentai/NineNineNineHentaiUrlActivity.kt @@ -0,0 +1,34 @@ +package eu.kanade.tachiyomi.extension.all.ninenineninehentai + +import android.app.Activity +import android.content.ActivityNotFoundException +import android.content.Intent +import android.os.Bundle +import android.util.Log +import kotlin.system.exitProcess + +class NineNineNineHentaiUrlActivity : Activity() { + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + val pathSegments = intent?.data?.pathSegments + if (pathSegments != null && pathSegments.size > 1) { + val id = pathSegments[1] + val mainIntent = Intent().apply { + action = "eu.kanade.tachiyomi.SEARCH" + putExtra("query", "${NineNineNineHentai.SEARCH_PREFIX}$id") + putExtra("filter", packageName) + } + + try { + startActivity(mainIntent) + } catch (e: ActivityNotFoundException) { + Log.e("999HentaiUrlActivity", e.toString()) + } + } else { + Log.e("999HentaiUrlActivity", "could not parse uri from intent $intent") + } + + finish() + exitProcess(0) + } +}