mirror of
https://github.com/libre-tube/LibreTube.git
synced 2025-04-29 16:30:31 +05:30
Merge pull request #5529 from Isira-Seneviratne/Simplify_DeArrow
refactor: Simplify dearrow process
This commit is contained in:
commit
81d3e32582
@ -1,23 +1,6 @@
|
|||||||
package com.github.libretube.api
|
package com.github.libretube.api
|
||||||
|
|
||||||
import com.github.libretube.api.obj.Channel
|
import com.github.libretube.api.obj.*
|
||||||
import com.github.libretube.api.obj.ChannelTabResponse
|
|
||||||
import com.github.libretube.api.obj.CommentsPage
|
|
||||||
import com.github.libretube.api.obj.DeleteUserRequest
|
|
||||||
import com.github.libretube.api.obj.EditPlaylistBody
|
|
||||||
import com.github.libretube.api.obj.Login
|
|
||||||
import com.github.libretube.api.obj.Message
|
|
||||||
import com.github.libretube.api.obj.PipedConfig
|
|
||||||
import com.github.libretube.api.obj.Playlist
|
|
||||||
import com.github.libretube.api.obj.Playlists
|
|
||||||
import com.github.libretube.api.obj.SearchResult
|
|
||||||
import com.github.libretube.api.obj.SegmentData
|
|
||||||
import com.github.libretube.api.obj.StreamItem
|
|
||||||
import com.github.libretube.api.obj.Streams
|
|
||||||
import com.github.libretube.api.obj.Subscribe
|
|
||||||
import com.github.libretube.api.obj.Subscribed
|
|
||||||
import com.github.libretube.api.obj.Subscription
|
|
||||||
import com.github.libretube.api.obj.Token
|
|
||||||
import kotlinx.serialization.json.JsonObject
|
import kotlinx.serialization.json.JsonObject
|
||||||
import retrofit2.http.Body
|
import retrofit2.http.Body
|
||||||
import retrofit2.http.GET
|
import retrofit2.http.GET
|
||||||
@ -47,7 +30,7 @@ interface PipedApi {
|
|||||||
): SegmentData
|
): SegmentData
|
||||||
|
|
||||||
@GET("dearrow")
|
@GET("dearrow")
|
||||||
suspend fun getDeArrowContent(@Query("videoIds") videoIds: String): JsonObject
|
suspend fun getDeArrowContent(@Query("videoIds") videoIds: String): Map<String, DeArrowContent>
|
||||||
|
|
||||||
@GET("nextpage/comments/{videoId}")
|
@GET("nextpage/comments/{videoId}")
|
||||||
suspend fun getCommentsNextPage(
|
suspend fun getCommentsNextPage(
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.util
|
||||||
|
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import com.github.libretube.api.JsonHelper
|
|
||||||
import com.github.libretube.api.RetrofitInstance
|
import com.github.libretube.api.RetrofitInstance
|
||||||
import com.github.libretube.api.obj.ContentItem
|
import com.github.libretube.api.obj.ContentItem
|
||||||
import com.github.libretube.api.obj.DeArrowContent
|
import com.github.libretube.api.obj.DeArrowContent
|
||||||
@ -9,17 +8,10 @@ import com.github.libretube.api.obj.StreamItem
|
|||||||
import com.github.libretube.constants.PreferenceKeys
|
import com.github.libretube.constants.PreferenceKeys
|
||||||
import com.github.libretube.extensions.toID
|
import com.github.libretube.extensions.toID
|
||||||
import com.github.libretube.helpers.PreferenceHelper
|
import com.github.libretube.helpers.PreferenceHelper
|
||||||
import kotlinx.serialization.json.JsonElement
|
|
||||||
import kotlinx.serialization.json.decodeFromJsonElement
|
|
||||||
import java.util.TreeSet
|
import java.util.TreeSet
|
||||||
|
|
||||||
object DeArrowUtil {
|
object DeArrowUtil {
|
||||||
private fun extractTitleAndThumbnail(data: JsonElement): Pair<String?, String?> {
|
private fun extractTitleAndThumbnail(content: DeArrowContent): Pair<String?, String?> {
|
||||||
val content = try {
|
|
||||||
JsonHelper.json.decodeFromJsonElement<DeArrowContent>(data)
|
|
||||||
} catch (e: Exception) {
|
|
||||||
return null to null
|
|
||||||
}
|
|
||||||
val newTitle = content.titles.firstOrNull { it.votes >= 0 || it.locked }?.title
|
val newTitle = content.titles.firstOrNull { it.votes >= 0 || it.locked }?.title
|
||||||
val newThumbnail = content.thumbnails.firstOrNull {
|
val newThumbnail = content.thumbnails.firstOrNull {
|
||||||
it.thumbnail != null && !it.original && (it.votes >= 0 || it.locked)
|
it.thumbnail != null && !it.original && (it.votes >= 0 || it.locked)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user