feat: follow button
This commit is contained in:
parent
5279b0cd65
commit
9b408e7520
6 changed files with 66 additions and 4 deletions
|
@ -31,6 +31,14 @@ import java.io.Serializable
|
|||
import kotlin.system.measureTimeMillis
|
||||
|
||||
class AnilistQueries {
|
||||
|
||||
suspend fun toggleFollow(id: Int): Query.ToggleFollow? {
|
||||
val response = executeQuery<Query.ToggleFollow>(
|
||||
"""mutation{ToggleFollow(userId:$id){id, isFollowing, isFollower}}"""
|
||||
)
|
||||
return response
|
||||
}
|
||||
|
||||
suspend fun getUserData(): Boolean {
|
||||
val response: Query.Viewer?
|
||||
measureTimeMillis {
|
||||
|
@ -40,7 +48,6 @@ class AnilistQueries {
|
|||
val user = response?.data?.user ?: return false
|
||||
|
||||
PrefManager.setVal(PrefName.AnilistUserName, user.name)
|
||||
|
||||
Anilist.userid = user.id
|
||||
PrefManager.setVal(PrefName.AnilistUserId, user.id.toString())
|
||||
Anilist.username = user.name
|
||||
|
|
|
@ -139,6 +139,19 @@ class Query {
|
|||
)
|
||||
}
|
||||
|
||||
@Serializable
|
||||
data class ToggleFollow(
|
||||
@SerialName("data")
|
||||
val data: Data?
|
||||
) {
|
||||
@Serializable
|
||||
data class Data(
|
||||
@SerialName("ToggleFollow")
|
||||
val toggleFollow: FollowData
|
||||
|
||||
)
|
||||
}
|
||||
|
||||
@Serializable
|
||||
data class GenreCollection(
|
||||
@SerialName("data")
|
||||
|
@ -200,7 +213,7 @@ class Query {
|
|||
@SerialName("bannerImage")
|
||||
val bannerImage: String?,
|
||||
@SerialName("isFollowing")
|
||||
val isFollowing: Boolean,
|
||||
var isFollowing: Boolean,
|
||||
@SerialName("isFollower")
|
||||
val isFollower: Boolean,
|
||||
@SerialName("isBlocked")
|
||||
|
|
|
@ -514,6 +514,12 @@ data class MediaListCollection(
|
|||
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class FollowData(
|
||||
@SerialName("id") var id: Int,
|
||||
@SerialName("isFollowing") var isFollowing: Boolean,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class MediaListGroup(
|
||||
// Media list entries
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue