mirror of
https://github.com/revanced/revanced-manager-compose-old.git
synced 2025-05-03 16:04:25 +02:00
fix: allow unknown json fields
This commit is contained in:
parent
a1052bff3e
commit
796dde1e3c
@ -6,6 +6,7 @@ import com.vk.knet.cornet.CronetKnetEngine
|
|||||||
import com.vk.knet.cornet.config.CronetCache
|
import com.vk.knet.cornet.config.CronetCache
|
||||||
import com.vk.knet.cornet.config.CronetQuic
|
import com.vk.knet.cornet.config.CronetQuic
|
||||||
import com.vk.knet.cornet.pool.buffer.CronetNativeByteBufferPool
|
import com.vk.knet.cornet.pool.buffer.CronetNativeByteBufferPool
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
import org.koin.android.ext.koin.androidContext
|
import org.koin.android.ext.koin.androidContext
|
||||||
import org.koin.dsl.module
|
import org.koin.dsl.module
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
@ -36,7 +37,16 @@ val httpModule = module {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun json() = Json {
|
||||||
|
encodeDefaults = true
|
||||||
|
isLenient = true
|
||||||
|
ignoreUnknownKeys = true
|
||||||
|
}
|
||||||
|
|
||||||
single {
|
single {
|
||||||
client(androidContext())
|
client(androidContext())
|
||||||
}
|
}
|
||||||
|
single {
|
||||||
|
json()
|
||||||
|
}
|
||||||
}
|
}
|
@ -11,18 +11,18 @@ import kotlinx.coroutines.withContext
|
|||||||
import kotlinx.serialization.decodeFromString
|
import kotlinx.serialization.decodeFromString
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
|
|
||||||
class GitHubRepository(cronet: CronetKnetEngine) {
|
class GitHubRepository(cronet: CronetKnetEngine, private val json: Json) {
|
||||||
|
|
||||||
val client = Knet.Build(cronet)
|
private val client = Knet.Build(cronet)
|
||||||
|
|
||||||
suspend fun fetchAssets() = withContext(Dispatchers.Default) {
|
suspend fun fetchAssets() = withContext(Dispatchers.Default) {
|
||||||
val stream = client.execute(HttpRequest(HttpMethod.GET, "$apiUrl/tools")).body!!.asString()
|
val stream = client.execute(HttpRequest(HttpMethod.GET, "$apiUrl/tools")).body!!.asString()
|
||||||
Json.decodeFromString(stream) as Tools
|
json.decodeFromString(stream) as Tools
|
||||||
}
|
}
|
||||||
|
|
||||||
suspend fun fetchContributors() = withContext(Dispatchers.Default) {
|
suspend fun fetchContributors() = withContext(Dispatchers.Default) {
|
||||||
val stream = client.execute(HttpRequest(HttpMethod.GET,"$apiUrl/contributors")).body!!.asString()
|
val stream = client.execute(HttpRequest(HttpMethod.GET,"$apiUrl/contributors")).body!!.asString()
|
||||||
Json.decodeFromString(stream) as Repositories
|
json.decodeFromString(stream) as Repositories
|
||||||
}
|
}
|
||||||
|
|
||||||
private companion object {
|
private companion object {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user