Update linter
(cherry picked from commit f0eb42e72d)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupRestore.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/Backup.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/legacy/models/Backup.kt
# app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
# app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/base/changehandler/OneWayFadeChangeHandler.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/SelectionHeader.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceItem.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterSheet.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryListHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPageSheet.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/model/ReaderPage.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/util/view/ViewExtensions.kt
This commit is contained in:
@@ -46,8 +46,8 @@ class MangaDexFabHeaderAdapter(val controller: BaseController<*>, val source: Ca
|
||||
controller.router.replaceTopController(
|
||||
BrowseSourceController(
|
||||
source,
|
||||
"id:$randomMangaUrl"
|
||||
).withFadeTransaction()
|
||||
"id:$randomMangaUrl",
|
||||
).withFadeTransaction(),
|
||||
)
|
||||
onClick()
|
||||
}.launchIn(controller.viewScope)
|
||||
|
||||
@@ -8,7 +8,7 @@ data class MangaListDto(
|
||||
override val limit: Int,
|
||||
override val offset: Int,
|
||||
override val total: Int,
|
||||
override val data: List<MangaDataDto>
|
||||
override val data: List<MangaDataDto>,
|
||||
) : ListCallDto<MangaDataDto>
|
||||
|
||||
@Serializable
|
||||
@@ -44,12 +44,12 @@ data class MangaAttributesDto(
|
||||
@Serializable
|
||||
data class TagDto(
|
||||
val id: String,
|
||||
val attributes: TagAttributesDto
|
||||
val attributes: TagAttributesDto,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class TagAttributesDto(
|
||||
val name: Map<String, String>
|
||||
val name: Map<String, String>,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
|
||||
@@ -10,7 +10,7 @@ data class MangaPlusResponse(
|
||||
|
||||
@Serializable
|
||||
data class SuccessResult(
|
||||
@ProtoNumber(10) val mangaViewer: MangaViewer? = null
|
||||
@ProtoNumber(10) val mangaViewer: MangaViewer? = null,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@@ -24,5 +24,5 @@ data class MangaPage(
|
||||
@ProtoNumber(1) val imageUrl: String,
|
||||
@ProtoNumber(2) val width: Int,
|
||||
@ProtoNumber(3) val height: Int,
|
||||
@ProtoNumber(5) val encryptionKey: String? = null
|
||||
@ProtoNumber(5) val encryptionKey: String? = null,
|
||||
)
|
||||
|
||||
@@ -5,13 +5,13 @@ import kotlinx.serialization.json.JsonElement
|
||||
|
||||
@Serializable
|
||||
data class RatingResponseDto(
|
||||
val ratings: JsonElement
|
||||
val ratings: JsonElement,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class PersonalRatingDto(
|
||||
val rating: Int,
|
||||
val createdAt: String
|
||||
val createdAt: String,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
|
||||
@@ -33,7 +33,7 @@ data class RelationDto(
|
||||
|
||||
@Serializable
|
||||
data class RelationMangaDto(
|
||||
val id: String
|
||||
val id: String,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
|
||||
@@ -4,15 +4,15 @@ import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
data class StatisticsDto(
|
||||
val statistics: Map<String, StatisticsMangaDto>
|
||||
val statistics: Map<String, StatisticsMangaDto>,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class StatisticsMangaDto(
|
||||
val rating: StatisticsMangaRatingDto
|
||||
val rating: StatisticsMangaRatingDto,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class StatisticsMangaRatingDto(
|
||||
val average: Double?
|
||||
val average: Double?,
|
||||
)
|
||||
|
||||
@@ -15,8 +15,8 @@ class MangaDexFollowsController(bundle: Bundle) : BrowseSourceController(bundle)
|
||||
|
||||
constructor(source: CatalogueSource) : this(
|
||||
bundleOf(
|
||||
SOURCE_ID_KEY to source.id
|
||||
)
|
||||
SOURCE_ID_KEY to source.id,
|
||||
),
|
||||
)
|
||||
|
||||
override fun getTitle(): String? {
|
||||
|
||||
@@ -23,7 +23,7 @@ import uy.kohesive.injekt.injectLazy
|
||||
import java.util.Locale
|
||||
|
||||
class ApiMangaParser(
|
||||
private val lang: String
|
||||
private val lang: String,
|
||||
) {
|
||||
val db: DatabaseHelper by injectLazy()
|
||||
|
||||
@@ -42,7 +42,7 @@ class ApiMangaParser(
|
||||
sourceId: Long,
|
||||
input: MangaDto,
|
||||
simpleChapters: List<String>,
|
||||
statistics: StatisticsMangaDto?
|
||||
statistics: StatisticsMangaDto?,
|
||||
): MangaInfo {
|
||||
val mangaId = db.getManga(manga.key, sourceId).executeAsBlocking()?.id
|
||||
val metadata = if (mangaId != null) {
|
||||
@@ -63,13 +63,13 @@ class ApiMangaParser(
|
||||
metadata: MangaDexSearchMetadata,
|
||||
mangaDto: MangaDto,
|
||||
simpleChapters: List<String>,
|
||||
statistics: StatisticsMangaDto?
|
||||
statistics: StatisticsMangaDto?,
|
||||
) {
|
||||
with(metadata) {
|
||||
try {
|
||||
val mangaAttributesDto = mangaDto.data.attributes
|
||||
mdUuid = mangaDto.data.id
|
||||
title = MdUtil.cleanString(MdUtil.getTitleFromManga(mangaAttributesDto, lang,))
|
||||
title = MdUtil.cleanString(MdUtil.getTitleFromManga(mangaAttributesDto, lang))
|
||||
altTitles = mangaAttributesDto.altTitles.mapNotNull { it[lang] }.nullIfEmpty()
|
||||
|
||||
val mangaRelationshipsDto = mangaDto.data.relationships
|
||||
@@ -85,8 +85,8 @@ class ApiMangaParser(
|
||||
MdUtil.getFromLangMap(
|
||||
langMap = mangaAttributesDto.description.asMdMap(),
|
||||
currentLang = lang,
|
||||
originalLanguage = mangaAttributesDto.originalLanguage
|
||||
).orEmpty()
|
||||
originalLanguage = mangaAttributesDto.originalLanguage,
|
||||
).orEmpty(),
|
||||
)
|
||||
|
||||
authors = mangaRelationshipsDto.filter { relationshipDto ->
|
||||
|
||||
@@ -87,7 +87,7 @@ class BilibiliHandler(currentClient: OkHttpClient) {
|
||||
return POST(
|
||||
"$baseUrl/$BASE_API_ENDPOINT/ComicDetail?device=pc&platform=web",
|
||||
headers = newHeaders,
|
||||
body = requestBody
|
||||
body = requestBody,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -136,7 +136,7 @@ class BilibiliHandler(currentClient: OkHttpClient) {
|
||||
return POST(
|
||||
"$baseUrl/$BASE_API_ENDPOINT/GetImageIndex?device=pc&platform=web",
|
||||
headers = newHeaders,
|
||||
body = requestBody
|
||||
body = requestBody,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ class BilibiliHandler(currentClient: OkHttpClient) {
|
||||
return POST(
|
||||
"$baseUrl/$BASE_API_ENDPOINT/ImageToken?device=pc&platform=web",
|
||||
headers = newHeaders,
|
||||
body = requestBody
|
||||
body = requestBody,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -187,24 +187,24 @@ class BilibiliHandler(currentClient: OkHttpClient) {
|
||||
@Serializable
|
||||
data class BilibiliPageDto(
|
||||
val token: String,
|
||||
val url: String
|
||||
val url: String,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class BilibiliResultDto<T>(
|
||||
val code: Int = 0,
|
||||
val data: T? = null,
|
||||
@SerialName("msg") val message: String = ""
|
||||
@SerialName("msg") val message: String = "",
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class BilibiliReader(
|
||||
val images: List<BilibiliImageDto> = emptyList()
|
||||
val images: List<BilibiliImageDto> = emptyList(),
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class BilibiliImageDto(
|
||||
val path: String
|
||||
val path: String,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@@ -218,7 +218,7 @@ class BilibiliHandler(currentClient: OkHttpClient) {
|
||||
@SerialName("season_id") val seasonId: Int = 0,
|
||||
val styles: List<String> = emptyList(),
|
||||
val title: String,
|
||||
@SerialName("vertical_cover") val verticalCover: String = ""
|
||||
@SerialName("vertical_cover") val verticalCover: String = "",
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@@ -227,7 +227,7 @@ class BilibiliHandler(currentClient: OkHttpClient) {
|
||||
@SerialName("is_locked") val isLocked: Boolean,
|
||||
@SerialName("ord") val order: Float,
|
||||
@SerialName("pub_time") val publicationTime: String,
|
||||
val title: String
|
||||
val title: String,
|
||||
)
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -13,7 +13,7 @@ class FilterHandler {
|
||||
SortFilter(sortableList.map { it.first }.toTypedArray()),
|
||||
TagList(getTags()),
|
||||
TagInclusionMode(),
|
||||
TagExclusionMode()
|
||||
TagExclusionMode(),
|
||||
).toMutableList()
|
||||
|
||||
if (true) { // preferencesHelper.showR18Filter()) {
|
||||
@@ -32,7 +32,7 @@ class FilterHandler {
|
||||
Demographic("Shounen"),
|
||||
Demographic("Shoujo"),
|
||||
Demographic("Seinen"),
|
||||
Demographic("Josei")
|
||||
Demographic("Josei"),
|
||||
)
|
||||
|
||||
private class Status(name: String) : Filter.CheckBox(name)
|
||||
@@ -54,7 +54,7 @@ class FilterHandler {
|
||||
ContentRating("Safe"),
|
||||
ContentRating("Suggestive"),
|
||||
ContentRating("Erotica"),
|
||||
ContentRating("Pornographic")
|
||||
ContentRating("Pornographic"),
|
||||
)
|
||||
|
||||
private class OriginalLanguage(name: String, val isoCode: String) : Filter.CheckBox(name)
|
||||
@@ -147,7 +147,7 @@ class FilterHandler {
|
||||
Tag("8c86611e-fab7-4986-9dec-d1a2f44acdd5", "Virtual Reality"),
|
||||
Tag("e197df38-d0e7-43b5-9b09-2842d0c326dd", "Web Comic"),
|
||||
Tag("acc803a4-c95a-4c22-86fc-eb6b582d82a2", "Wuxia"),
|
||||
Tag("631ef465-9aba-4afb-b0fc-ea10efe274a8", "Zombies")
|
||||
Tag("631ef465-9aba-4afb-b0fc-ea10efe274a8", "Zombies"),
|
||||
)
|
||||
|
||||
private class TagInclusionMode :
|
||||
|
||||
@@ -20,7 +20,7 @@ import kotlinx.coroutines.async
|
||||
|
||||
class FollowsHandler(
|
||||
private val lang: String,
|
||||
private val service: MangaDexAuthService
|
||||
private val service: MangaDexAuthService,
|
||||
) {
|
||||
|
||||
/**
|
||||
@@ -48,7 +48,7 @@ class FollowsHandler(
|
||||
*/
|
||||
private fun followsParseMangaPage(
|
||||
response: List<MangaDataDto>,
|
||||
statuses: Map<String, String?>
|
||||
statuses: Map<String, String?>,
|
||||
): List<Pair<SManga, MangaDexSearchMetadata>> {
|
||||
val comparator = compareBy<Pair<SManga, MangaDexSearchMetadata>> { it.second.followStatus }
|
||||
.thenBy { it.first.title }
|
||||
@@ -56,7 +56,7 @@ class FollowsHandler(
|
||||
return response.map {
|
||||
MdUtil.createMangaEntry(
|
||||
it,
|
||||
lang
|
||||
lang,
|
||||
).toSManga() to MangaDexSearchMetadata().apply {
|
||||
followStatus = FollowStatus.fromDex(statuses[it.id]).int
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ class MangaHandler(
|
||||
private val lang: String,
|
||||
private val service: MangaDexService,
|
||||
private val apiMangaParser: ApiMangaParser,
|
||||
private val followsHandler: FollowsHandler
|
||||
private val followsHandler: FollowsHandler,
|
||||
) {
|
||||
suspend fun getMangaDetails(manga: MangaInfo, sourceId: Long): MangaInfo {
|
||||
return coroutineScope {
|
||||
@@ -39,7 +39,7 @@ class MangaHandler(
|
||||
sourceId,
|
||||
response.await(),
|
||||
simpleChapters.await(),
|
||||
statistics.await()
|
||||
statistics.await(),
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -62,7 +62,7 @@ class MangaHandler(
|
||||
lang,
|
||||
it,
|
||||
blockedGroups,
|
||||
blockedUploaders
|
||||
blockedUploaders,
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ class MangaPlusHandler(currentClient: OkHttpClient) {
|
||||
private fun pageListRequest(chapterId: String): Request {
|
||||
return GET(
|
||||
"$baseUrl/manga_viewer?chapter_id=$chapterId&split=yes&img_quality=super_high",
|
||||
headers
|
||||
headers,
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -38,20 +38,20 @@ class PageHandler(
|
||||
if (chapterResponse.data.attributes.externalUrl != null && chapterResponse.data.attributes.pages == 0) {
|
||||
when {
|
||||
chapter.scanlator.equals("mangaplus", true) -> mangaPlusHandler.fetchPageList(
|
||||
chapterResponse.data.attributes.externalUrl
|
||||
chapterResponse.data.attributes.externalUrl,
|
||||
)
|
||||
/*chapter.scanlator.equals("comikey", true) -> comikeyHandler.fetchPageList(
|
||||
chapterResponse.data.attributes.externalUrl
|
||||
)*/
|
||||
chapter.scanlator.equals("bilibili comics", true) -> bilibiliHandler.fetchPageList(
|
||||
chapterResponse.data.attributes.externalUrl,
|
||||
chapterResponse.data.attributes.chapter.toString()
|
||||
chapterResponse.data.attributes.chapter.toString(),
|
||||
)
|
||||
chapter.scanlator.equals("azuki manga", true) -> azukiHandler.fetchPageList(
|
||||
chapterResponse.data.attributes.externalUrl
|
||||
chapterResponse.data.attributes.externalUrl,
|
||||
)
|
||||
chapter.scanlator.equals("mangahot", true) -> mangaHotHandler.fetchPageList(
|
||||
chapterResponse.data.attributes.externalUrl
|
||||
chapterResponse.data.attributes.externalUrl,
|
||||
)
|
||||
else -> throw Exception("${chapter.scanlator} not supported")
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ import tachiyomi.source.model.MangaInfo
|
||||
class SimilarHandler(
|
||||
private val lang: String,
|
||||
private val service: MangaDexService,
|
||||
private val similarService: SimilarService
|
||||
private val similarService: SimilarService,
|
||||
) {
|
||||
|
||||
suspend fun getSimilar(manga: MangaInfo): MetadataMangasPage {
|
||||
@@ -61,7 +61,7 @@ class SimilarHandler(
|
||||
it.relation = relatedListDto.data.firstOrNull { it.relationships.any { it.id == MdUtil.getMangaId(manga.url) } }
|
||||
?.attributes?.relation?.let(MangaDexRelation::fromDex)
|
||||
}
|
||||
}
|
||||
},
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ class MangaDexLoginHelper(val authServiceLazy: Lazy<MangaDexAuthService>, val pr
|
||||
MdUtil.updateLoginToken(
|
||||
loginResponseDto.token,
|
||||
preferences,
|
||||
mdList
|
||||
mdList,
|
||||
)
|
||||
true
|
||||
} else {
|
||||
|
||||
@@ -32,7 +32,7 @@ class MangaDexAuthService(
|
||||
private val client: OkHttpClient,
|
||||
private val headers: Headers,
|
||||
private val preferences: PreferencesHelper,
|
||||
private val mdList: MdList
|
||||
private val mdList: MdList,
|
||||
) {
|
||||
private val noAuthenticatorClient = client.newBuilder()
|
||||
.authenticator(Authenticator.NONE)
|
||||
@@ -41,7 +41,7 @@ class MangaDexAuthService(
|
||||
fun getHeaders() = MdUtil.getAuthHeaders(
|
||||
headers,
|
||||
preferences,
|
||||
mdList
|
||||
mdList,
|
||||
)
|
||||
|
||||
suspend fun login(request: LoginRequestDto): LoginResponseDto {
|
||||
@@ -49,8 +49,8 @@ class MangaDexAuthService(
|
||||
POST(
|
||||
MdApi.login,
|
||||
body = MdUtil.encodeToBody(request),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -59,8 +59,8 @@ class MangaDexAuthService(
|
||||
POST(
|
||||
MdApi.logout,
|
||||
getHeaders(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -69,8 +69,8 @@ class MangaDexAuthService(
|
||||
GET(
|
||||
MdApi.checkToken,
|
||||
getHeaders(),
|
||||
CacheControl.FORCE_NETWORK
|
||||
)
|
||||
CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -80,8 +80,8 @@ class MangaDexAuthService(
|
||||
MdApi.refreshToken,
|
||||
getHeaders(),
|
||||
body = MdUtil.encodeToBody(request),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -90,8 +90,8 @@ class MangaDexAuthService(
|
||||
GET(
|
||||
"${MdApi.userFollows}?limit=100&offset=$offset&includes[]=${MdConstants.Types.coverArt}",
|
||||
getHeaders(),
|
||||
CacheControl.FORCE_NETWORK
|
||||
)
|
||||
CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -100,8 +100,8 @@ class MangaDexAuthService(
|
||||
GET(
|
||||
"${MdApi.manga}/$mangaId/status",
|
||||
getHeaders(),
|
||||
CacheControl.FORCE_NETWORK
|
||||
)
|
||||
CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -110,8 +110,8 @@ class MangaDexAuthService(
|
||||
GET(
|
||||
"${MdApi.manga}/$mangaId/read",
|
||||
getHeaders(),
|
||||
CacheControl.FORCE_NETWORK
|
||||
)
|
||||
CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -124,8 +124,8 @@ class MangaDexAuthService(
|
||||
"${MdApi.manga}/$mangaId/status",
|
||||
getHeaders(),
|
||||
body = MdUtil.encodeToBody(readingStatusDto),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -134,8 +134,8 @@ class MangaDexAuthService(
|
||||
GET(
|
||||
MdApi.readingStatusForAllManga,
|
||||
getHeaders(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -144,8 +144,8 @@ class MangaDexAuthService(
|
||||
GET(
|
||||
"${MdApi.readingStatusForAllManga}?status=$status",
|
||||
getHeaders(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -154,8 +154,8 @@ class MangaDexAuthService(
|
||||
POST(
|
||||
"${MdApi.chapter}/$chapterId/read",
|
||||
getHeaders(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -166,7 +166,7 @@ class MangaDexAuthService(
|
||||
.delete()
|
||||
.headers(getHeaders())
|
||||
.cacheControl(CacheControl.FORCE_NETWORK)
|
||||
.build()
|
||||
.build(),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -175,8 +175,8 @@ class MangaDexAuthService(
|
||||
POST(
|
||||
"${MdApi.manga}/$mangaId/follow",
|
||||
getHeaders(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -187,7 +187,7 @@ class MangaDexAuthService(
|
||||
.delete()
|
||||
.headers(getHeaders())
|
||||
.cacheControl(CacheControl.FORCE_NETWORK)
|
||||
.build()
|
||||
.build(),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -197,8 +197,8 @@ class MangaDexAuthService(
|
||||
"${MdApi.rating}/$mangaId",
|
||||
getHeaders(),
|
||||
body = MdUtil.encodeToBody(RatingDto(rating)),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -209,7 +209,7 @@ class MangaDexAuthService(
|
||||
.url("${MdApi.rating}/$mangaId")
|
||||
.headers(getHeaders())
|
||||
.cacheControl(CacheControl.FORCE_NETWORK)
|
||||
.build()
|
||||
.build(),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -226,8 +226,8 @@ class MangaDexAuthService(
|
||||
.build()
|
||||
.toString(),
|
||||
getHeaders(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,11 +25,11 @@ import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||
import okhttp3.OkHttpClient
|
||||
|
||||
class MangaDexService(
|
||||
private val client: OkHttpClient
|
||||
private val client: OkHttpClient,
|
||||
) {
|
||||
|
||||
suspend fun viewMangas(
|
||||
ids: List<String>
|
||||
ids: List<String>,
|
||||
): MangaListDto {
|
||||
return client.newCall(
|
||||
GET(
|
||||
@@ -44,13 +44,13 @@ class MangaDexService(
|
||||
}
|
||||
.build()
|
||||
.toString(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
suspend fun viewManga(
|
||||
id: String
|
||||
id: String,
|
||||
): MangaDto {
|
||||
return client.newCall(
|
||||
GET(
|
||||
@@ -64,13 +64,13 @@ class MangaDexService(
|
||||
}
|
||||
.build()
|
||||
.toString(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
suspend fun mangasRating(
|
||||
vararg ids: String
|
||||
vararg ids: String,
|
||||
): StatisticsDto {
|
||||
return client.newCall(
|
||||
GET(
|
||||
@@ -83,14 +83,14 @@ class MangaDexService(
|
||||
}
|
||||
.build()
|
||||
.toString(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
suspend fun aggregateChapters(
|
||||
id: String,
|
||||
translatedLanguage: String
|
||||
translatedLanguage: String,
|
||||
): AggregateDto {
|
||||
return client.newCall(
|
||||
GET(
|
||||
@@ -103,8 +103,8 @@ class MangaDexService(
|
||||
}
|
||||
.build()
|
||||
.toString(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -115,7 +115,7 @@ class MangaDexService(
|
||||
translatedLanguage: String,
|
||||
offset: Int,
|
||||
blockedGroups: String,
|
||||
blockedUploaders: String
|
||||
blockedUploaders: String,
|
||||
): ChapterListDto {
|
||||
val url = MdApi.manga.toHttpUrl()
|
||||
.newBuilder()
|
||||
@@ -145,8 +145,8 @@ class MangaDexService(
|
||||
return client.newCall(
|
||||
GET(
|
||||
url,
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
@@ -167,14 +167,14 @@ class MangaDexService(
|
||||
POST(
|
||||
MdConstants.atHomeReportUrl,
|
||||
body = MdUtil.encodeToBody(atHomeImageReportDto),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
|
||||
suspend fun getAtHomeServer(
|
||||
atHomeRequestUrl: String,
|
||||
headers: Headers
|
||||
headers: Headers,
|
||||
): AtHomeDto {
|
||||
return client.newCall(GET(atHomeRequestUrl, headers, CacheControl.FORCE_NETWORK))
|
||||
.await()
|
||||
@@ -191,8 +191,8 @@ class MangaDexService(
|
||||
}
|
||||
.build()
|
||||
.toString(),
|
||||
cache = CacheControl.FORCE_NETWORK
|
||||
)
|
||||
cache = CacheControl.FORCE_NETWORK,
|
||||
),
|
||||
).await().parseAs(MdUtil.jsonParser)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,13 +8,13 @@ import exh.md.utils.MdUtil
|
||||
import okhttp3.OkHttpClient
|
||||
|
||||
class SimilarService(
|
||||
private val client: OkHttpClient
|
||||
private val client: OkHttpClient,
|
||||
) {
|
||||
suspend fun getSimilarManga(mangaId: String): SimilarMangaDto {
|
||||
return client.newCall(
|
||||
GET(
|
||||
"${MdUtil.similarBaseApi}$mangaId.json"
|
||||
)
|
||||
"${MdUtil.similarBaseApi}$mangaId.json",
|
||||
),
|
||||
).await().parseAs()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,8 +18,8 @@ class MangaDexSimilarController(bundle: Bundle) : BrowseSourceController(bundle)
|
||||
bundleOf(
|
||||
MANGA_ID to manga.id!!,
|
||||
MANGA_TITLE to manga.title,
|
||||
SOURCE_ID_KEY to source.id
|
||||
)
|
||||
SOURCE_ID_KEY to source.id,
|
||||
),
|
||||
)
|
||||
|
||||
private val mangaTitle = args.getString(MANGA_TITLE)
|
||||
|
||||
@@ -24,7 +24,7 @@ class MangaDexSimilarPager(val manga: Manga, val source: MangaDex) : Pager() {
|
||||
MetadataMangasPage(
|
||||
relatedPage.mangas + similarPage.mangas,
|
||||
false,
|
||||
relatedPage.mangasMetadata + similarPage.mangasMetadata
|
||||
relatedPage.mangasMetadata + similarPage.mangasMetadata,
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -79,11 +79,11 @@ class MdUtil {
|
||||
"English :",
|
||||
"[English]:",
|
||||
"English Translaton:",
|
||||
"[B][ENG][/B]"
|
||||
"[B][ENG][/B]",
|
||||
)
|
||||
|
||||
val bbCodeToRemove = listOf(
|
||||
"list", "*", "hr", "u", "b", "i", "s", "center", "spoiler="
|
||||
"list", "*", "hr", "u", "b", "i", "s", "center", "spoiler=",
|
||||
)
|
||||
val descriptionLanguages = listOf(
|
||||
"=FRANCAIS=",
|
||||
@@ -274,7 +274,7 @@ class MdUtil {
|
||||
?.fileName
|
||||
?.let { coverFileName ->
|
||||
cdnCoverUrl(json.id, coverFileName)
|
||||
}.orEmpty()
|
||||
}.orEmpty(),
|
||||
)
|
||||
}
|
||||
|
||||
@@ -331,7 +331,7 @@ class MdUtil {
|
||||
fun getAuthHeaders(headers: Headers, preferences: PreferencesHelper, mdList: MdList) =
|
||||
headers.newBuilder().add(
|
||||
"Authorization",
|
||||
"Bearer " + (sessionToken(preferences, mdList) ?: throw NoSessionException())
|
||||
"Bearer " + (sessionToken(preferences, mdList) ?: throw NoSessionException()),
|
||||
).build()
|
||||
|
||||
fun getEnabledMangaDex(preferences: PreferencesHelper, sourceManager: SourceManager = Injekt.get()): MangaDex? {
|
||||
|
||||
Reference in New Issue
Block a user