gitextract_awx7pwzw/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yaml │ │ └── config.yml │ └── workflows/ │ └── android.yml ├── .gitignore ├── LICENSE ├── README.md ├── app/ │ ├── .gitignore │ ├── build.gradle.kts │ ├── proguard-rules.pro │ ├── schemas/ │ │ └── it.vfsfitvnm.vimusic.DatabaseInitializer/ │ │ ├── 1.json │ │ ├── 10.json │ │ ├── 11.json │ │ ├── 12.json │ │ ├── 13.json │ │ ├── 14.json │ │ ├── 15.json │ │ ├── 16.json │ │ ├── 17.json │ │ ├── 18.json │ │ ├── 19.json │ │ ├── 2.json │ │ ├── 20.json │ │ ├── 21.json │ │ ├── 22.json │ │ ├── 23.json │ │ ├── 3.json │ │ ├── 4.json │ │ ├── 5.json │ │ ├── 6.json │ │ ├── 7.json │ │ ├── 8.json │ │ └── 9.json │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ ├── kotlin/ │ │ └── it/ │ │ └── vfsfitvnm/ │ │ └── vimusic/ │ │ ├── Database.kt │ │ ├── MainActivity.kt │ │ ├── MainApplication.kt │ │ ├── enums/ │ │ │ ├── AlbumSortBy.kt │ │ │ ├── ArtistSortBy.kt │ │ │ ├── BuiltInPlaylist.kt │ │ │ ├── CoilDiskCacheSize.kt │ │ │ ├── ColorPaletteMode.kt │ │ │ ├── ColorPaletteName.kt │ │ │ ├── ExoPlayerDiskCacheMaxSize.kt │ │ │ ├── PlaylistSortBy.kt │ │ │ ├── SongSortBy.kt │ │ │ ├── SortOrder.kt │ │ │ └── ThumbnailRoundness.kt │ │ ├── models/ │ │ │ ├── Album.kt │ │ │ ├── Artist.kt │ │ │ ├── Event.kt │ │ │ ├── Format.kt │ │ │ ├── Info.kt │ │ │ ├── Lyrics.kt │ │ │ ├── Playlist.kt │ │ │ ├── PlaylistPreview.kt │ │ │ ├── PlaylistWithSongs.kt │ │ │ ├── QueuedMediaItem.kt │ │ │ ├── SearchQuery.kt │ │ │ ├── Song.kt │ │ │ ├── SongAlbumMap.kt │ │ │ ├── SongArtistMap.kt │ │ │ ├── SongPlaylistMap.kt │ │ │ ├── SongWithContentLength.kt │ │ │ └── SortedSongPlaylistMap.kt │ │ ├── service/ │ │ │ ├── BitmapProvider.kt │ │ │ ├── PlaybackExceptions.kt │ │ │ ├── PlayerMediaBrowserService.kt │ │ │ └── PlayerService.kt │ │ ├── ui/ │ │ │ ├── components/ │ │ │ │ ├── BottomSheet.kt │ │ │ │ ├── Menu.kt │ │ │ │ ├── MusicBars.kt │ │ │ │ ├── SeekBar.kt │ │ │ │ ├── ShimmerHost.kt │ │ │ │ └── themed/ │ │ │ │ ├── Dialog.kt │ │ │ │ ├── DialogTextButton.kt │ │ │ │ ├── FloatingActionsContainer.kt │ │ │ │ ├── Header.kt │ │ │ │ ├── IconButton.kt │ │ │ │ ├── LayoutWithAdaptiveThumbnail.kt │ │ │ │ ├── MediaItemMenu.kt │ │ │ │ ├── Menu.kt │ │ │ │ ├── NavigationRail.kt │ │ │ │ ├── PrimaryButton.kt │ │ │ │ ├── Scaffold.kt │ │ │ │ ├── SecondaryButton.kt │ │ │ │ ├── SecondaryTextButton.kt │ │ │ │ ├── Switch.kt │ │ │ │ └── TextPlaceholder.kt │ │ │ ├── items/ │ │ │ │ ├── AlbumItem.kt │ │ │ │ ├── ArtistItem.kt │ │ │ │ ├── ItemContainer.kt │ │ │ │ ├── PlaylistItem.kt │ │ │ │ ├── SongItem.kt │ │ │ │ └── VideoItem.kt │ │ │ ├── screens/ │ │ │ │ ├── Routes.kt │ │ │ │ ├── album/ │ │ │ │ │ ├── AlbumScreen.kt │ │ │ │ │ └── AlbumSongs.kt │ │ │ │ ├── artist/ │ │ │ │ │ ├── ArtistLocalSongs.kt │ │ │ │ │ ├── ArtistOverview.kt │ │ │ │ │ └── ArtistScreen.kt │ │ │ │ ├── builtinplaylist/ │ │ │ │ │ ├── BuiltInPlaylistScreen.kt │ │ │ │ │ └── BuiltInPlaylistSongs.kt │ │ │ │ ├── home/ │ │ │ │ │ ├── HomeAlbums.kt │ │ │ │ │ ├── HomeArtists.kt │ │ │ │ │ ├── HomePlaylists.kt │ │ │ │ │ ├── HomeScreen.kt │ │ │ │ │ ├── HomeSongs.kt │ │ │ │ │ └── QuickPicks.kt │ │ │ │ ├── localplaylist/ │ │ │ │ │ ├── LocalPlaylistScreen.kt │ │ │ │ │ └── LocalPlaylistSongs.kt │ │ │ │ ├── player/ │ │ │ │ │ ├── Controls.kt │ │ │ │ │ ├── Lyrics.kt │ │ │ │ │ ├── PlaybackError.kt │ │ │ │ │ ├── Player.kt │ │ │ │ │ ├── Queue.kt │ │ │ │ │ ├── StatsForNerds.kt │ │ │ │ │ └── Thumbnail.kt │ │ │ │ ├── playlist/ │ │ │ │ │ ├── PlaylistScreen.kt │ │ │ │ │ └── PlaylistSongList.kt │ │ │ │ ├── search/ │ │ │ │ │ ├── LocalSongSearch.kt │ │ │ │ │ ├── OnlineSearch.kt │ │ │ │ │ └── SearchScreen.kt │ │ │ │ ├── searchresult/ │ │ │ │ │ ├── ItemsPage.kt │ │ │ │ │ └── SearchResultScreen.kt │ │ │ │ └── settings/ │ │ │ │ ├── About.kt │ │ │ │ ├── AppearanceSettings.kt │ │ │ │ ├── CacheSettings.kt │ │ │ │ ├── DatabaseSettings.kt │ │ │ │ ├── OtherSettings.kt │ │ │ │ ├── PlayerSettings.kt │ │ │ │ └── SettingsScreen.kt │ │ │ └── styling/ │ │ │ ├── Appearance.kt │ │ │ ├── ColorPalette.kt │ │ │ ├── Dimensions.kt │ │ │ └── Typography.kt │ │ └── utils/ │ │ ├── Configuration.kt │ │ ├── Context.kt │ │ ├── DrawScope.kt │ │ ├── FadingEdge.kt │ │ ├── InvincibleService.kt │ │ ├── LazyGridSnapLayoutInfoProvider.kt │ │ ├── Player.kt │ │ ├── PlayerState.kt │ │ ├── Preferences.kt │ │ ├── RingBuffer.kt │ │ ├── ScrollingInfo.kt │ │ ├── SmoothScrollToTop.kt │ │ ├── SynchronizedLyrics.kt │ │ ├── TextStyle.kt │ │ ├── TimerJob.kt │ │ ├── Utils.kt │ │ └── YoutubeRadio.kt │ └── res/ │ ├── drawable/ │ │ ├── add.xml │ │ ├── airplane.xml │ │ ├── alarm.xml │ │ ├── alert_circle.xml │ │ ├── app_icon.xml │ │ ├── arrow_down.xml │ │ ├── arrow_forward.xml │ │ ├── arrow_up.xml │ │ ├── bookmark.xml │ │ ├── bookmark_outline.xml │ │ ├── calendar.xml │ │ ├── checkmark.xml │ │ ├── chevron_back.xml │ │ ├── chevron_down.xml │ │ ├── chevron_forward.xml │ │ ├── chevron_up.xml │ │ ├── close.xml │ │ ├── color_palette.xml │ │ ├── disc.xml │ │ ├── download.xml │ │ ├── ellipsis_horizontal.xml │ │ ├── ellipsis_vertical.xml │ │ ├── enqueue.xml │ │ ├── equalizer.xml │ │ ├── film.xml │ │ ├── globe.xml │ │ ├── heart.xml │ │ ├── heart_dislike.xml │ │ ├── heart_outline.xml │ │ ├── ic_banner_foreground.xml │ │ ├── ic_launcher_foreground.xml │ │ ├── infinite.xml │ │ ├── information.xml │ │ ├── library.xml │ │ ├── link.xml │ │ ├── medical.xml │ │ ├── musical_notes.xml │ │ ├── notifications.xml │ │ ├── pause.xml │ │ ├── pencil.xml │ │ ├── person.xml │ │ ├── play.xml │ │ ├── play_skip_back.xml │ │ ├── play_skip_forward.xml │ │ ├── playlist.xml │ │ ├── radio.xml │ │ ├── reorder.xml │ │ ├── search.xml │ │ ├── server.xml │ │ ├── shapes.xml │ │ ├── share_social.xml │ │ ├── shuffle.xml │ │ ├── sort.xml │ │ ├── sparkles.xml │ │ ├── star.xml │ │ ├── sync.xml │ │ ├── text.xml │ │ ├── time.xml │ │ ├── trash.xml │ │ └── trending.xml │ ├── mipmap-anydpi-v26/ │ │ ├── ic_banner.xml │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ ├── values/ │ │ ├── colors.xml │ │ └── themes.xml │ ├── values-night/ │ │ └── themes.xml │ └── xml/ │ └── automotive_app_desc.xml ├── build.gradle.kts ├── compose-persist/ │ ├── .gitignore │ ├── build.gradle.kts │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ └── kotlin/ │ └── it/ │ └── vfsfitvnm/ │ └── compose/ │ └── persist/ │ ├── Persist.kt │ ├── PersistMap.kt │ ├── PersistMapCleanup.kt │ ├── PersistMapOwner.kt │ └── Utils.kt ├── compose-reordering/ │ ├── .gitignore │ ├── build.gradle.kts │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ └── kotlin/ │ └── it/ │ └── vfsfitvnm/ │ └── compose/ │ └── reordering/ │ ├── AnimatablesPool.kt │ ├── AnimateItemPlacement.kt │ ├── DraggedItem.kt │ ├── Reorder.kt │ ├── ReorderingLazyColumn.kt │ ├── ReorderingLazyList.kt │ └── ReorderingState.kt ├── compose-routing/ │ ├── .gitignore │ ├── build.gradle.kts │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ └── kotlin/ │ └── it/ │ └── vfsfitvnm/ │ └── compose/ │ └── routing/ │ ├── GlobalRoute.kt │ ├── Route.kt │ ├── RouteHandler.kt │ ├── RouteHandlerScope.kt │ └── Transitions.kt ├── fastlane/ │ └── metadata/ │ └── android/ │ └── en-US/ │ ├── changelogs/ │ │ ├── 10.txt │ │ ├── 11.txt │ │ ├── 12.txt │ │ ├── 13.txt │ │ ├── 14.txt │ │ ├── 15.txt │ │ ├── 16.txt │ │ ├── 17.txt │ │ ├── 18.txt │ │ ├── 19.txt │ │ ├── 20.txt │ │ └── 9.txt │ ├── full_description.txt │ ├── short_description.txt │ └── title.txt ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── innertube/ │ ├── .gitignore │ ├── build.gradle.kts │ └── src/ │ ├── main/ │ │ └── kotlin/ │ │ └── it/ │ │ └── vfsfitvnm/ │ │ └── innertube/ │ │ ├── Innertube.kt │ │ ├── models/ │ │ │ ├── BrowseResponse.kt │ │ │ ├── ButtonRenderer.kt │ │ │ ├── Context.kt │ │ │ ├── Continuation.kt │ │ │ ├── ContinuationResponse.kt │ │ │ ├── GetQueueResponse.kt │ │ │ ├── GridRenderer.kt │ │ │ ├── MusicCarouselShelfRenderer.kt │ │ │ ├── MusicResponsiveListItemRenderer.kt │ │ │ ├── MusicShelfRenderer.kt │ │ │ ├── MusicTwoRowItemRenderer.kt │ │ │ ├── NavigationEndpoint.kt │ │ │ ├── NextResponse.kt │ │ │ ├── PlayerResponse.kt │ │ │ ├── PlaylistPanelVideoRenderer.kt │ │ │ ├── Runs.kt │ │ │ ├── SearchResponse.kt │ │ │ ├── SearchSuggestionsResponse.kt │ │ │ ├── SectionListRenderer.kt │ │ │ ├── Tabs.kt │ │ │ ├── Thumbnail.kt │ │ │ ├── ThumbnailRenderer.kt │ │ │ └── bodies/ │ │ │ ├── BrowseBody.kt │ │ │ ├── ContinuationBody.kt │ │ │ ├── NextBody.kt │ │ │ ├── PlayerBody.kt │ │ │ ├── QueueBody.kt │ │ │ ├── SearchBody.kt │ │ │ └── SearchSuggestionsBody.kt │ │ ├── requests/ │ │ │ ├── AlbumPage.kt │ │ │ ├── ArtistPage.kt │ │ │ ├── ItemsPage.kt │ │ │ ├── Lyrics.kt │ │ │ ├── NextPage.kt │ │ │ ├── Player.kt │ │ │ ├── PlaylistPage.kt │ │ │ ├── Queue.kt │ │ │ ├── RelatedPage.kt │ │ │ ├── SearchPage.kt │ │ │ └── SearchSuggestions.kt │ │ └── utils/ │ │ ├── FromMusicResponsiveListItemRenderer.kt │ │ ├── FromMusicShelfRendererContent.kt │ │ ├── FromMusicTwoRowItemRenderer.kt │ │ ├── FromPlaylistPanelVideoRenderer.kt │ │ └── Utils.kt │ └── test/ │ └── kotlin/ │ └── Test.kt ├── ktor-client-brotli/ │ ├── .gitignore │ ├── build.gradle.kts │ └── src/ │ └── main/ │ └── kotlin/ │ └── io/ │ └── ktor/ │ └── client/ │ └── plugins/ │ └── compression/ │ ├── BrotliEncoder.kt │ └── brotli.kt ├── kugou/ │ ├── .gitignore │ ├── build.gradle.kts │ └── src/ │ ├── main/ │ │ └── kotlin/ │ │ └── it/ │ │ └── vfsfitvnm/ │ │ └── kugou/ │ │ ├── KuGou.kt │ │ ├── Result.kt │ │ └── models/ │ │ ├── DownloadLyricsResponse.kt │ │ ├── SearchLyricsResponse.kt │ │ └── SearchSongResponse.kt │ └── test/ │ └── kotlin/ │ └── Test.kt └── settings.gradle.kts