diff --git a/src/fr/franime/src/eu/kanade/tachiyomi/animeextension/fr/franime/dto/FrAnimeDto.kt b/src/fr/franime/src/eu/kanade/tachiyomi/animeextension/fr/franime/dto/FrAnimeDto.kt index 10ec2238..4356e2a7 100644 --- a/src/fr/franime/src/eu/kanade/tachiyomi/animeextension/fr/franime/dto/FrAnimeDto.kt +++ b/src/fr/franime/src/eu/kanade/tachiyomi/animeextension/fr/franime/dto/FrAnimeDto.kt @@ -1,5 +1,4 @@ package eu.kanade.tachiyomi.animeextension.fr.franime.dto - import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.KSerializer import kotlinx.serialization.SerialName @@ -13,29 +12,23 @@ import kotlinx.serialization.json.JsonEncoder import kotlinx.serialization.json.JsonUnquotedLiteral import kotlinx.serialization.json.jsonPrimitive import java.math.BigInteger - typealias BigIntegerJson = @Serializable(with = BigIntegerSerializer::class) BigInteger - @OptIn(ExperimentalSerializationApi::class) private object BigIntegerSerializer : KSerializer { - override val descriptor = PrimitiveSerialDescriptor("java.math.BigInteger", PrimitiveKind.LONG) - override fun deserialize(decoder: Decoder): BigInteger = when (decoder) { is JsonDecoder -> decoder.decodeJsonElement().jsonPrimitive.content.toBigInteger() else -> decoder.decodeString().toBigInteger() } - override fun serialize(encoder: Encoder, value: BigInteger) = when (encoder) { is JsonEncoder -> encoder.encodeJsonElement(JsonUnquotedLiteral(value.toString())) else -> encoder.encodeString(value.toString()) } } - @Serializable data class Anime( @SerialName("themes") val genres: List, @@ -59,31 +52,25 @@ data class Anime( @SerialName("affiche_small") val posterSmall: String?, @SerialName("updatedDate") val updateTime: Long?, // deserialize as timestamp ) - @Serializable data class Season( @SerialName("title") val title: String, @SerialName("episodes") val episodes: List, ) - @Serializable data class Episode( @SerialName("title") val title: String?, @SerialName("lang") val languages: EpisodeLanguages, ) - - @Serializable data class EpisodeLanguages( @SerialName("vf") val vf: EpisodeLanguage, @SerialName("vo") val vo: EpisodeLanguage, ) - @Serializable data class EpisodeLanguage( @SerialName("lecteurs") val players: List, ) - @Serializable data class TitlesAlt( @SerialName("en") val en: String?,