Tweak Database class

This commit is contained in:
vfsfitvnm
2022-07-01 12:54:22 +02:00
parent 9b67586dd6
commit 7c165b5c3a
15 changed files with 192 additions and 220 deletions

View File

@@ -37,7 +37,6 @@ import it.vfsfitvnm.vimusic.enums.ThumbnailRoundness
import it.vfsfitvnm.vimusic.models.Album
import it.vfsfitvnm.vimusic.models.DetailedSong
import it.vfsfitvnm.vimusic.models.SongAlbumMap
import it.vfsfitvnm.vimusic.query
import it.vfsfitvnm.vimusic.ui.components.LocalMenuState
import it.vfsfitvnm.vimusic.ui.components.TopAppBar
import it.vfsfitvnm.vimusic.ui.components.themed.*
@@ -73,10 +72,11 @@ fun AlbumScreen(
shareUrl = youtubeAlbum.url
).also(Database::upsert).also {
youtubeAlbum.items?.forEachIndexed { position, albumItem ->
albumItem.toMediaItem(browseId, youtubeAlbum)?.let(Database::insert)?.let { song ->
albumItem.toMediaItem(browseId, youtubeAlbum)?.let { mediaItem ->
Database.insert(mediaItem)
Database.upsert(
SongAlbumMap(
songId = song.id,
songId = mediaItem.mediaId,
albumId = browseId,
position = position
)

View File

@@ -24,7 +24,7 @@ import it.vfsfitvnm.vimusic.Database
import it.vfsfitvnm.vimusic.LocalPlayerServiceBinder
import it.vfsfitvnm.vimusic.R
import it.vfsfitvnm.vimusic.models.Playlist
import it.vfsfitvnm.vimusic.models.SongInPlaylist
import it.vfsfitvnm.vimusic.models.SongPlaylistMap
import it.vfsfitvnm.vimusic.transaction
import it.vfsfitvnm.vimusic.ui.components.Error
import it.vfsfitvnm.vimusic.ui.components.LocalMenuState
@@ -109,7 +109,7 @@ fun IntentUriScreen(uri: Uri) {
Database.insert(mediaItem)
Database.insert(
SongInPlaylist(
SongPlaylistMap(
songId = mediaItem.mediaId,
playlistId = playlistId,
position = index

View File

@@ -27,7 +27,7 @@ import it.vfsfitvnm.route.RouteHandler
import it.vfsfitvnm.vimusic.*
import it.vfsfitvnm.vimusic.R
import it.vfsfitvnm.vimusic.models.PlaylistWithSongs
import it.vfsfitvnm.vimusic.models.SongInPlaylist
import it.vfsfitvnm.vimusic.models.SongPlaylistMap
import it.vfsfitvnm.vimusic.models.DetailedSong
import it.vfsfitvnm.vimusic.ui.components.LocalMenuState
import it.vfsfitvnm.vimusic.ui.components.TopAppBar
@@ -302,7 +302,7 @@ fun LocalPlaylistScreen(
}
Database.update(
SongInPlaylist(
SongPlaylistMap(
songId = playlistWithSongs.songs[index].song.id,
playlistId = playlistWithSongs.playlist.id,
position = reachedIndex

View File

@@ -32,7 +32,7 @@ import it.vfsfitvnm.vimusic.LocalPlayerServiceBinder
import it.vfsfitvnm.vimusic.R
import it.vfsfitvnm.vimusic.enums.ThumbnailRoundness
import it.vfsfitvnm.vimusic.models.Playlist
import it.vfsfitvnm.vimusic.models.SongInPlaylist
import it.vfsfitvnm.vimusic.models.SongPlaylistMap
import it.vfsfitvnm.vimusic.transaction
import it.vfsfitvnm.vimusic.ui.components.LocalMenuState
import it.vfsfitvnm.vimusic.ui.components.OutcomeItem
@@ -177,7 +177,7 @@ fun PlaylistScreen(
Database.insert(mediaItem)
Database.insert(
SongInPlaylist(
SongPlaylistMap(
songId = mediaItem.mediaId,
playlistId = playlistId,
position = index

View File

@@ -82,7 +82,7 @@ fun SearchScreen(
}
val history by remember(textFieldValue.text) {
Database.getRecentQueries("%${textFieldValue.text}%").distinctUntilChanged { old, new ->
Database.queries("%${textFieldValue.text}%").distinctUntilChanged { old, new ->
old.size == new.size
}
}.collectAsState(initial = null, context = Dispatchers.IO)