Rename youtubemusic package to innertube
This commit is contained in:
parent
e1f85b1d6a
commit
58720f8cb9
83 changed files with 222 additions and 222 deletions
|
@ -84,10 +84,10 @@ import it.vfsfitvnm.vimusic.utils.intent
|
|||
import it.vfsfitvnm.vimusic.utils.listener
|
||||
import it.vfsfitvnm.vimusic.utils.preferences
|
||||
import it.vfsfitvnm.vimusic.utils.thumbnailRoundnessKey
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.playlistPage
|
||||
import it.vfsfitvnm.youtubemusic.requests.song
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.requests.playlistPage
|
||||
import it.vfsfitvnm.innertube.requests.song
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.Job
|
||||
import kotlinx.coroutines.flow.filterNotNull
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubeAlbumItemSaver : Saver<Innertube.AlbumItem, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.AlbumItem): List<Any?> = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubeArtistItemSaver : Saver<Innertube.ArtistItem, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.ArtistItem): List<Any?> = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubeArtistPageSaver : Saver<Innertube.ArtistPage, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.ArtistPage) = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
|
||||
object InnertubeBrowseEndpointSaver : Saver<NavigationEndpoint.Endpoint.Browse, List<Any?>> {
|
||||
override fun SaverScope.save(value: NavigationEndpoint.Endpoint.Browse) = listOf(
|
||||
|
|
|
@ -2,8 +2,8 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
|
||||
object InnertubeBrowseInfoSaver : Saver<Innertube.Info<NavigationEndpoint.Endpoint.Browse>, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.Info<NavigationEndpoint.Endpoint.Browse>) = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubePlaylistItemSaver : Saver<Innertube.PlaylistItem, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.PlaylistItem): List<Any?> = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubePlaylistOrAlbumPageSaver : Saver<Innertube.PlaylistOrAlbumPage, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.PlaylistOrAlbumPage): List<Any?> = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubeRelatedPageSaver : Saver<Innertube.RelatedPage, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.RelatedPage): List<Any?> = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubeSongItemSaver : Saver<Innertube.SongItem, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.SongItem): List<Any?> = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.models.Thumbnail
|
||||
import it.vfsfitvnm.innertube.models.Thumbnail
|
||||
|
||||
object InnertubeThumbnailSaver : Saver<Thumbnail, List<Any?>> {
|
||||
override fun SaverScope.save(value: Thumbnail) = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
object InnertubeVideoItemSaver : Saver<Innertube.VideoItem, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.VideoItem): List<Any?> = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
|
||||
object InnertubeWatchEndpointSaver : Saver<NavigationEndpoint.Endpoint.Watch, List<Any?>> {
|
||||
override fun SaverScope.save(value: NavigationEndpoint.Endpoint.Watch) = listOf(
|
||||
|
|
|
@ -2,8 +2,8 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
|
||||
object InnertubeWatchInfoSaver : Saver<Innertube.Info<NavigationEndpoint.Endpoint.Watch>, List<Any?>> {
|
||||
override fun SaverScope.save(value: Innertube.Info<NavigationEndpoint.Endpoint.Watch>) = listOf(
|
||||
|
|
|
@ -2,7 +2,7 @@ package it.vfsfitvnm.vimusic.savers
|
|||
|
||||
import androidx.compose.runtime.saveable.Saver
|
||||
import androidx.compose.runtime.saveable.SaverScope
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
interface ListSaver<Original, Saveable : Any> : Saver<List<Original>, List<Saveable>> {
|
||||
override fun SaverScope.save(value: List<Original>): List<Saveable>
|
||||
|
|
|
@ -93,10 +93,10 @@ import it.vfsfitvnm.vimusic.utils.shouldBePlaying
|
|||
import it.vfsfitvnm.vimusic.utils.skipSilenceKey
|
||||
import it.vfsfitvnm.vimusic.utils.timer
|
||||
import it.vfsfitvnm.vimusic.utils.volumeNormalizationKey
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.PlayerBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.player
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.bodies.PlayerBody
|
||||
import it.vfsfitvnm.innertube.requests.player
|
||||
import kotlin.math.roundToInt
|
||||
import kotlin.system.exitProcess
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
|
|
|
@ -65,7 +65,7 @@ import it.vfsfitvnm.vimusic.utils.enqueue
|
|||
import it.vfsfitvnm.vimusic.utils.forcePlay
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.vimusic.utils.thumbnail
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
import kotlinx.coroutines.flow.flowOf
|
||||
|
|
|
@ -20,7 +20,7 @@ import it.vfsfitvnm.vimusic.ui.styling.shimmer
|
|||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.vimusic.utils.thumbnail
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
@Composable
|
||||
fun AlbumItem(
|
||||
|
|
|
@ -22,7 +22,7 @@ import it.vfsfitvnm.vimusic.ui.styling.shimmer
|
|||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.vimusic.utils.thumbnail
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
@Composable
|
||||
fun ArtistItem(
|
||||
|
|
|
@ -39,7 +39,7 @@ import it.vfsfitvnm.vimusic.utils.medium
|
|||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.vimusic.utils.thumbnail
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
import kotlinx.coroutines.flow.map
|
||||
|
|
|
@ -27,7 +27,7 @@ import it.vfsfitvnm.vimusic.utils.medium
|
|||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.vimusic.utils.thumbnail
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
@Composable
|
||||
fun SongItem(
|
||||
|
|
|
@ -25,7 +25,7 @@ import it.vfsfitvnm.vimusic.utils.color
|
|||
import it.vfsfitvnm.vimusic.utils.medium
|
||||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
|
||||
@Composable
|
||||
fun VideoItem(
|
||||
|
|
|
@ -41,9 +41,9 @@ import it.vfsfitvnm.vimusic.ui.screens.searchresult.ItemsPage
|
|||
import it.vfsfitvnm.vimusic.ui.styling.LocalAppearance
|
||||
import it.vfsfitvnm.vimusic.ui.styling.px
|
||||
import it.vfsfitvnm.vimusic.utils.asMediaItem
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.albumPage
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.requests.albumPage
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.combine
|
||||
import kotlinx.coroutines.withContext
|
||||
|
|
|
@ -49,8 +49,8 @@ import it.vfsfitvnm.vimusic.utils.color
|
|||
import it.vfsfitvnm.vimusic.utils.forcePlay
|
||||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
|
||||
@ExperimentalFoundationApi
|
||||
@ExperimentalAnimationApi
|
||||
|
|
|
@ -51,12 +51,12 @@ import it.vfsfitvnm.vimusic.utils.artistScreenTabIndexKey
|
|||
import it.vfsfitvnm.vimusic.utils.asMediaItem
|
||||
import it.vfsfitvnm.vimusic.utils.forcePlay
|
||||
import it.vfsfitvnm.vimusic.utils.rememberPreference
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.artistPage
|
||||
import it.vfsfitvnm.youtubemusic.requests.itemsPage
|
||||
import it.vfsfitvnm.youtubemusic.utils.from
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.requests.artistPage
|
||||
import it.vfsfitvnm.innertube.requests.itemsPage
|
||||
import it.vfsfitvnm.innertube.utils.from
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.combine
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
|
|
|
@ -72,10 +72,10 @@ import it.vfsfitvnm.vimusic.utils.center
|
|||
import it.vfsfitvnm.vimusic.utils.forcePlay
|
||||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.NextBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.relatedPage
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.bodies.NextBody
|
||||
import it.vfsfitvnm.innertube.requests.relatedPage
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
import kotlinx.coroutines.flow.flowOn
|
||||
|
|
|
@ -58,9 +58,9 @@ import it.vfsfitvnm.vimusic.utils.enqueue
|
|||
import it.vfsfitvnm.vimusic.utils.forcePlayAtIndex
|
||||
import it.vfsfitvnm.vimusic.utils.forcePlayFromBeginning
|
||||
import it.vfsfitvnm.vimusic.utils.produceSaveableState
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.playlistPage
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.requests.playlistPage
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.filterNotNull
|
||||
import kotlinx.coroutines.runBlocking
|
||||
|
|
|
@ -68,9 +68,9 @@ import it.vfsfitvnm.vimusic.utils.medium
|
|||
import it.vfsfitvnm.vimusic.utils.produceSaveableState
|
||||
import it.vfsfitvnm.vimusic.utils.rememberPreference
|
||||
import it.vfsfitvnm.vimusic.utils.verticalFadingEdge
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.NextBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.lyrics
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.NextBody
|
||||
import it.vfsfitvnm.innertube.requests.lyrics
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
|
|
|
@ -67,7 +67,7 @@ import it.vfsfitvnm.vimusic.utils.seamlessPlay
|
|||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.vimusic.utils.semiBold
|
||||
import it.vfsfitvnm.vimusic.utils.thumbnail
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import kotlin.math.absoluteValue
|
||||
|
||||
@ExperimentalFoundationApi
|
||||
|
|
|
@ -38,9 +38,9 @@ import it.vfsfitvnm.vimusic.ui.styling.overlay
|
|||
import it.vfsfitvnm.vimusic.utils.color
|
||||
import it.vfsfitvnm.vimusic.utils.medium
|
||||
import it.vfsfitvnm.vimusic.utils.rememberVolume
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.PlayerBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.player
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.PlayerBody
|
||||
import it.vfsfitvnm.innertube.requests.player
|
||||
import kotlin.math.roundToInt
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
|
|
|
@ -57,9 +57,9 @@ import it.vfsfitvnm.vimusic.utils.forcePlayAtIndex
|
|||
import it.vfsfitvnm.vimusic.utils.forcePlayFromBeginning
|
||||
import it.vfsfitvnm.vimusic.utils.isLandscape
|
||||
import it.vfsfitvnm.vimusic.utils.produceSaveableState
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.playlistPage
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.requests.playlistPage
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@ import it.vfsfitvnm.vimusic.utils.asMediaItem
|
|||
import it.vfsfitvnm.vimusic.utils.forcePlay
|
||||
import it.vfsfitvnm.vimusic.utils.medium
|
||||
import it.vfsfitvnm.vimusic.utils.produceSaveableState
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.flowOn
|
||||
|
||||
|
|
|
@ -62,9 +62,9 @@ import it.vfsfitvnm.vimusic.utils.center
|
|||
import it.vfsfitvnm.vimusic.utils.medium
|
||||
import it.vfsfitvnm.vimusic.utils.produceSaveableState
|
||||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.SearchSuggestionsBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.searchSuggestions
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.SearchSuggestionsBody
|
||||
import it.vfsfitvnm.innertube.requests.searchSuggestions
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
|
|
|
@ -28,8 +28,8 @@ import it.vfsfitvnm.vimusic.ui.styling.LocalAppearance
|
|||
import it.vfsfitvnm.vimusic.utils.center
|
||||
import it.vfsfitvnm.vimusic.utils.produceSaveableState
|
||||
import it.vfsfitvnm.vimusic.utils.secondary
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.utils.plus
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.utils.plus
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
|
||||
|
|
|
@ -43,11 +43,11 @@ import it.vfsfitvnm.vimusic.utils.asMediaItem
|
|||
import it.vfsfitvnm.vimusic.utils.forcePlay
|
||||
import it.vfsfitvnm.vimusic.utils.rememberPreference
|
||||
import it.vfsfitvnm.vimusic.utils.searchResultScreenTabIndexKey
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.SearchBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.searchPage
|
||||
import it.vfsfitvnm.youtubemusic.utils.from
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.SearchBody
|
||||
import it.vfsfitvnm.innertube.requests.searchPage
|
||||
import it.vfsfitvnm.innertube.utils.from
|
||||
|
||||
@ExperimentalFoundationApi
|
||||
@ExperimentalAnimationApi
|
||||
|
|
|
@ -6,10 +6,10 @@ import androidx.core.os.bundleOf
|
|||
import androidx.media3.common.MediaItem
|
||||
import androidx.media3.common.MediaMetadata
|
||||
import it.vfsfitvnm.vimusic.models.DetailedSong
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.playlistPage
|
||||
import it.vfsfitvnm.youtubemusic.utils.plus
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.requests.playlistPage
|
||||
import it.vfsfitvnm.innertube.utils.plus
|
||||
|
||||
val Innertube.SongItem.asMediaItem: MediaItem
|
||||
get() = MediaItem.Builder()
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
package it.vfsfitvnm.vimusic.utils
|
||||
|
||||
import androidx.media3.common.MediaItem
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.NextBody
|
||||
import it.vfsfitvnm.youtubemusic.requests.nextPage
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.NextBody
|
||||
import it.vfsfitvnm.innertube.requests.nextPage
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic
|
||||
package it.vfsfitvnm.innertube
|
||||
|
||||
import io.ktor.client.HttpClient
|
||||
import io.ktor.client.engine.okhttp.OkHttp
|
||||
|
@ -12,9 +12,9 @@ import io.ktor.client.request.header
|
|||
import io.ktor.http.ContentType
|
||||
import io.ktor.http.HttpHeaders
|
||||
import io.ktor.serialization.kotlinx.json.json
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.youtubemusic.models.Runs
|
||||
import it.vfsfitvnm.youtubemusic.models.Thumbnail
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.Runs
|
||||
import it.vfsfitvnm.innertube.models.Thumbnail
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.json.Json
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.models
|
||||
package it.vfsfitvnm.innertube.models
|
||||
|
||||
import kotlinx.serialization.ExperimentalSerializationApi
|
||||
import kotlinx.serialization.Serializable
|
||||
|
@ -16,7 +16,7 @@ data class ThumbnailRenderer(
|
|||
) {
|
||||
@Serializable
|
||||
data class Thumbnail(
|
||||
val thumbnails: List<it.vfsfitvnm.youtubemusic.models.Thumbnail>?
|
||||
val thumbnails: List<it.vfsfitvnm.innertube.models.Thumbnail>?
|
||||
)
|
||||
}
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
package it.vfsfitvnm.youtubemusic.models.bodies
|
||||
package it.vfsfitvnm.innertube.models.bodies
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
|
@ -1,6 +1,6 @@
|
|||
package it.vfsfitvnm.youtubemusic.models.bodies
|
||||
package it.vfsfitvnm.innertube.models.bodies
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
|
@ -1,6 +1,6 @@
|
|||
package it.vfsfitvnm.youtubemusic.models.bodies
|
||||
package it.vfsfitvnm.innertube.models.bodies
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
|
@ -1,6 +1,6 @@
|
|||
package it.vfsfitvnm.youtubemusic.models.bodies
|
||||
package it.vfsfitvnm.innertube.models.bodies
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
|
@ -1,6 +1,6 @@
|
|||
package it.vfsfitvnm.youtubemusic.models.bodies
|
||||
package it.vfsfitvnm.innertube.models.bodies
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
|
@ -1,6 +1,6 @@
|
|||
package it.vfsfitvnm.youtubemusic.models.bodies
|
||||
package it.vfsfitvnm.innertube.models.bodies
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
|
@ -1,6 +1,6 @@
|
|||
package it.vfsfitvnm.youtubemusic.models.bodies
|
||||
package it.vfsfitvnm.innertube.models.bodies
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
|
@ -1,9 +1,9 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.http.Url
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
|
||||
suspend fun Innertube.albumPage(body: BrowseBody): Result<Innertube.PlaylistOrAlbumPage>? {
|
||||
return playlistPage(body)?.map { album ->
|
|
@ -1,17 +1,17 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.BrowseResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicCarouselShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.SectionListRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.findSectionByTitle
|
||||
import it.vfsfitvnm.youtubemusic.utils.from
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.BrowseResponse
|
||||
import it.vfsfitvnm.innertube.models.MusicCarouselShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.SectionListRenderer
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.utils.findSectionByTitle
|
||||
import it.vfsfitvnm.innertube.utils.from
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun Innertube.artistPage(body: BrowseBody): Result<Innertube.ArtistPage>? =
|
||||
runCatchingNonCancellable {
|
|
@ -1,18 +1,18 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.BrowseResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.ContinuationResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.GridRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicResponsiveListItemRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicTwoRowItemRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.BrowseResponse
|
||||
import it.vfsfitvnm.innertube.models.ContinuationResponse
|
||||
import it.vfsfitvnm.innertube.models.GridRenderer
|
||||
import it.vfsfitvnm.innertube.models.MusicResponsiveListItemRenderer
|
||||
import it.vfsfitvnm.innertube.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.MusicTwoRowItemRenderer
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun <T : Innertube.Item> Innertube.itemsPage(
|
||||
body: BrowseBody,
|
|
@ -1,14 +1,14 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.BrowseResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.NextResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.NextBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.BrowseResponse
|
||||
import it.vfsfitvnm.innertube.models.NextResponse
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.NextBody
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun Innertube.lyrics(body: NextBody): Result<String?>? = runCatchingNonCancellable {
|
||||
val nextResponse = client.post(next) {
|
|
@ -1,15 +1,15 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.ContinuationResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.NextResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.NextBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.from
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.ContinuationResponse
|
||||
import it.vfsfitvnm.innertube.models.NextResponse
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.NextBody
|
||||
import it.vfsfitvnm.innertube.utils.from
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.get
|
||||
|
@ -6,11 +6,11 @@ import io.ktor.client.request.post
|
|||
import io.ktor.client.request.setBody
|
||||
import io.ktor.http.ContentType
|
||||
import io.ktor.http.contentType
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.Context
|
||||
import it.vfsfitvnm.youtubemusic.models.PlayerResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.PlayerBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.Context
|
||||
import it.vfsfitvnm.innertube.models.PlayerResponse
|
||||
import it.vfsfitvnm.innertube.models.bodies.PlayerBody
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
suspend fun Innertube.player(body: PlayerBody) = runCatchingNonCancellable {
|
|
@ -1,17 +1,17 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.BrowseResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.ContinuationResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicCarouselShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.from
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.BrowseResponse
|
||||
import it.vfsfitvnm.innertube.models.ContinuationResponse
|
||||
import it.vfsfitvnm.innertube.models.MusicCarouselShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.utils.from
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun Innertube.playlistPage(body: BrowseBody) = runCatchingNonCancellable {
|
||||
val response = client.post(browse) {
|
|
@ -1,13 +1,13 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.GetQueueResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.QueueBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.from
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.GetQueueResponse
|
||||
import it.vfsfitvnm.innertube.models.bodies.QueueBody
|
||||
import it.vfsfitvnm.innertube.utils.from
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun Innertube.queue(body: QueueBody) = runCatchingNonCancellable {
|
||||
val response = client.post(queue) {
|
|
@ -1,18 +1,18 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.BrowseResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicCarouselShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.NextResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.NextBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.findSectionByStrapline
|
||||
import it.vfsfitvnm.youtubemusic.utils.findSectionByTitle
|
||||
import it.vfsfitvnm.youtubemusic.utils.from
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.BrowseResponse
|
||||
import it.vfsfitvnm.innertube.models.MusicCarouselShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.NextResponse
|
||||
import it.vfsfitvnm.innertube.models.bodies.BrowseBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.NextBody
|
||||
import it.vfsfitvnm.innertube.utils.findSectionByStrapline
|
||||
import it.vfsfitvnm.innertube.utils.findSectionByTitle
|
||||
import it.vfsfitvnm.innertube.utils.from
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun Innertube.relatedPage(body: NextBody) = runCatchingNonCancellable {
|
||||
val nextResponse = client.post(next) {
|
|
@ -1,15 +1,15 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.ContinuationResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.SearchResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.SearchBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.ContinuationResponse
|
||||
import it.vfsfitvnm.innertube.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.SearchResponse
|
||||
import it.vfsfitvnm.innertube.models.bodies.ContinuationBody
|
||||
import it.vfsfitvnm.innertube.models.bodies.SearchBody
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun <T : Innertube.Item> Innertube.searchPage(
|
||||
body: SearchBody,
|
|
@ -1,12 +1,12 @@
|
|||
package it.vfsfitvnm.youtubemusic.requests
|
||||
package it.vfsfitvnm.innertube.requests
|
||||
|
||||
import io.ktor.client.call.body
|
||||
import io.ktor.client.request.post
|
||||
import io.ktor.client.request.setBody
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.SearchSuggestionsResponse
|
||||
import it.vfsfitvnm.youtubemusic.models.bodies.SearchSuggestionsBody
|
||||
import it.vfsfitvnm.youtubemusic.utils.runCatchingNonCancellable
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.SearchSuggestionsResponse
|
||||
import it.vfsfitvnm.innertube.models.bodies.SearchSuggestionsBody
|
||||
import it.vfsfitvnm.innertube.utils.runCatchingNonCancellable
|
||||
|
||||
suspend fun Innertube.searchSuggestions(body: SearchSuggestionsBody) = runCatchingNonCancellable {
|
||||
val response = client.post(searchSuggestions) {
|
|
@ -1,9 +1,9 @@
|
|||
package it.vfsfitvnm.youtubemusic.utils
|
||||
package it.vfsfitvnm.innertube.utils
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicResponsiveListItemRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.youtubemusic.models.Runs
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.MusicResponsiveListItemRenderer
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.models.Runs
|
||||
|
||||
fun Innertube.SongItem.Companion.from(renderer: MusicResponsiveListItemRenderer): Innertube.SongItem? {
|
||||
return Innertube.SongItem(
|
|
@ -1,8 +1,8 @@
|
|||
package it.vfsfitvnm.youtubemusic.utils
|
||||
package it.vfsfitvnm.innertube.utils
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.youtubemusic.models.NavigationEndpoint
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.MusicShelfRenderer
|
||||
import it.vfsfitvnm.innertube.models.NavigationEndpoint
|
||||
|
||||
fun Innertube.SongItem.Companion.from(content: MusicShelfRenderer.Content): Innertube.SongItem? {
|
||||
val (mainRuns, otherRuns) = content.runs
|
|
@ -1,7 +1,7 @@
|
|||
package it.vfsfitvnm.youtubemusic.utils
|
||||
package it.vfsfitvnm.innertube.utils
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.MusicTwoRowItemRenderer
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.MusicTwoRowItemRenderer
|
||||
|
||||
fun Innertube.AlbumItem.Companion.from(renderer: MusicTwoRowItemRenderer): Innertube.AlbumItem? {
|
||||
return Innertube.AlbumItem(
|
|
@ -1,7 +1,7 @@
|
|||
package it.vfsfitvnm.youtubemusic.utils
|
||||
package it.vfsfitvnm.innertube.utils
|
||||
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.PlaylistPanelVideoRenderer
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.PlaylistPanelVideoRenderer
|
||||
|
||||
fun Innertube.SongItem.Companion.from(renderer: PlaylistPanelVideoRenderer): Innertube.SongItem? {
|
||||
return Innertube.SongItem(
|
|
@ -1,8 +1,8 @@
|
|||
package it.vfsfitvnm.youtubemusic.utils
|
||||
package it.vfsfitvnm.innertube.utils
|
||||
|
||||
import io.ktor.utils.io.CancellationException
|
||||
import it.vfsfitvnm.youtubemusic.Innertube
|
||||
import it.vfsfitvnm.youtubemusic.models.SectionListRenderer
|
||||
import it.vfsfitvnm.innertube.Innertube
|
||||
import it.vfsfitvnm.innertube.models.SectionListRenderer
|
||||
|
||||
internal fun SectionListRenderer.findSectionByTitle(text: String): SectionListRenderer.Content? {
|
||||
return contents?.find { content ->
|
Loading…
Reference in a new issue