From 2085fd725abfb80f151ed14c04aacbda477b7053 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ho=C3=A0ng=20Minh=20=C4=90=E1=BB=A9c?= Date: Thu, 28 Nov 2024 12:02:44 +0700 Subject: [PATCH] changed --- .github/workflows/deploy.yml | 12 ---- .idea/deploymentTargetSelector.xml | 3 - .idea/misc.xml | 2 +- app/build.gradle.kts | 3 - .../com/example/harmonyhub/MyApplication.kt | 8 --- .../example/harmonyhub/data/SongRepository.kt | 24 ------- .../harmonyhub/ui/components/ArtistCard.kt | 3 - .../harmonyhub/ui/components/ChartCard.kt | 36 ---------- .../harmonyhub/ui/components/SongCard.kt | 7 -- .../ui/components/SuggestionCard.kt | 16 ----- .../example/harmonyhub/ui/home/HomeScreen.kt | 65 +++++-------------- app/src/main/res/values/strings.xml | 3 - 12 files changed, 16 insertions(+), 166 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 4181cea..9676f45 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -27,16 +27,8 @@ jobs: - name: Make gradlew executable run: chmod +x ./gradlew -<<<<<<< HEAD - - name: build release - run: ./gradlew assembleRelease - - - name: list files - run: ls -lrt app/build/outputs/apk/release -======= - name: Execute Gradle command - assembleDebug run: ./gradlew assembleDebug ->>>>>>> minhnhat_branch - name: Upload Artifact to Firebase App Distribution uses: wzieba/Firebase-Distribution-Github-Action@v1 @@ -44,9 +36,5 @@ jobs: appId: ${{ secrets.FIREBASE_APP_ID }} serviceCredentialsFileContent: ${{ secrets.CREDENTIAL_FILE_CONTENT }} groups: testers -<<<<<<< HEAD - file: app/build/outputs/apk/release/app-release-unsigned.apk -======= file: app/build/apk/debug/app-debug.apk ->>>>>>> minhnhat_branch releaseNotes: ${{ inputs.release_notes }} diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml index 9788da0..b268ef3 100644 --- a/.idea/deploymentTargetSelector.xml +++ b/.idea/deploymentTargetSelector.xml @@ -5,9 +5,6 @@ - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index b2c751a..8978d23 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,6 @@ - + diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 9ee6539..b84dcd8 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -91,8 +91,6 @@ dependencies { implementation ("org.json:json:20210307") // org.json để xử lý JSON implementation ("androidx.media3:media3-exoplayer:1.1.0") implementation ("androidx.media3:media3-ui:1.1.0") -<<<<<<< HEAD -======= implementation("io.coil-kt:coil-compose:2.2.2") // Phiên bản mới nhất implementation ("androidx.lifecycle:lifecycle-viewmodel-compose:2.5.1") @@ -100,5 +98,4 @@ dependencies { // Retrofit implementation ("com.squareup.retrofit2:retrofit:2.9.0") implementation ("com.squareup.retrofit2:converter-gson:2.9.0") ->>>>>>> minhnhat_branch } \ No newline at end of file diff --git a/app/src/main/java/com/example/harmonyhub/MyApplication.kt b/app/src/main/java/com/example/harmonyhub/MyApplication.kt index cf4ab08..1449417 100644 --- a/app/src/main/java/com/example/harmonyhub/MyApplication.kt +++ b/app/src/main/java/com/example/harmonyhub/MyApplication.kt @@ -1,23 +1,15 @@ package com.example.harmonyhub import android.app.Application -<<<<<<< HEAD -======= import com.example.harmonyhub.data.repository.DefaultHomeScreenRepo import com.example.harmonyhub.data.repository.HomeScreenRepo ->>>>>>> minhnhat_branch import dagger.hilt.android.HiltAndroidApp @HiltAndroidApp class MyApplication: Application() { -<<<<<<< HEAD - override fun onCreate() { - super.onCreate() -======= lateinit var container: HomeScreenRepo override fun onCreate() { super.onCreate() container = DefaultHomeScreenRepo() ->>>>>>> minhnhat_branch } } \ No newline at end of file diff --git a/app/src/main/java/com/example/harmonyhub/data/SongRepository.kt b/app/src/main/java/com/example/harmonyhub/data/SongRepository.kt index 5ca3202..44b0d76 100644 --- a/app/src/main/java/com/example/harmonyhub/data/SongRepository.kt +++ b/app/src/main/java/com/example/harmonyhub/data/SongRepository.kt @@ -6,29 +6,6 @@ import com.example.harmonyhub.ui.components.Song object SongRepository{ val allSongs = listOf( -<<<<<<< HEAD - Song(id = "1", name = "Inside1 Out", artist = "The Chainsmokers, Charlee", imageResId = R.drawable.v, - "https://p.scdn.co/mp3-preview/6b7763066dd42d94dc893f12bb135d7d5392e386?cid=d8a5ed958d274c2e8ee717e6a4b0971d"), - Song(id = "2", name = "Young", artist = "The Chainsmokers", imageResId = R.drawable.v, - "https://p.scdn.co/mp3-preview/8ede412058d9e95de0b4b3a735fe3c999498336c?cid=d8a5ed958d274c2e8ee717e6a4b0971d"), - Song(id = "3", name = "Beach House", artist = "The Chainsmokers, Sick", imageResId = R.drawable.v, - "https://p.scdn.co/mp3-preview/8bf8384cc1c01bcf22a1b92ef0a2c6290fc596e4?cid=d8a5ed958d274c2e8ee717e6a4b0971d"), - Song(id = "4", name = "Kills You Slowly", artist = "The Chainsmokers", imageResId = R.drawable.v,""), - Song(id = "5", name = "Setting Fires", artist = "The Chainsmokers, XYLO", imageResId = R.drawable.v,""), - Song(id = "6", name = "The Real Slim Shady", artist = "Eminem", imageResId = R.drawable.v,""), - Song(id = "7", name = "Lose Yourself", artist = "Eminem", imageResId = R.drawable.v,""), - Song(id = "8", name = "Bohemian Rhapsody", artist = "Queen", imageResId = R.drawable.v,""), - Song(id = "9", name = "Shape of You", artist = "Ed Sheeran", imageResId = R.drawable.v,""), - Song(id = "10", name = "Perfect", artist = "Ed Sheeran", imageResId = R.drawable.v,""), - Song(id = "11", name = "Thinking Out Loud", artist = "Ed Sheeran", imageResId = R.drawable.v,""), - Song(id = "12", name = "Photograph", artist = "Ed Sheeran", imageResId = R.drawable.v,""), - Song(id = "13", name = "Imagine Dragons", artist = "Imagine Dragons", imageResId = R.drawable.v,""), - Song(id = "14", name = "Believer", artist = "Imagine Dragons", imageResId = R.drawable.v,""), - Song(id = "15", name = "Radioactive", artist = "Imagine Dragons", imageResId = R.drawable.v,""), - Song(id = "16", name = "Thunder", artist = "Imagine Dragons", imageResId = R.drawable.v,""), - Song(id = "17", name = "Demons", artist = "Imagine Dragons", imageResId = R.drawable.v,""), - ) -======= Song(id = "3ztP5O7dJSha2PG429eUCb", name = "Thiên Lý Ơi", artist = "Jack - J97", imageResId = "https://i.scdn.co/image/ab67616d00001e0233a31cc1175e787bfea17a65", url = "https://p.scdn.co/mp3-preview/8ede412058d9e95de0b4b3a735fe3c999498336c?cid=d8a5ed958d274c2e8ee717e6a4b0971d"), @@ -53,6 +30,5 @@ object SongRepository{ ) val currentPLaylist : MutableList = mutableListOf() ->>>>>>> minhnhat_branch } \ No newline at end of file diff --git a/app/src/main/java/com/example/harmonyhub/ui/components/ArtistCard.kt b/app/src/main/java/com/example/harmonyhub/ui/components/ArtistCard.kt index f3ea5bf..a49f629 100644 --- a/app/src/main/java/com/example/harmonyhub/ui/components/ArtistCard.kt +++ b/app/src/main/java/com/example/harmonyhub/ui/components/ArtistCard.kt @@ -20,10 +20,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.ContentScale -<<<<<<< HEAD -======= import androidx.compose.ui.platform.LocalContext ->>>>>>> minhnhat_branch import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.TextStyle diff --git a/app/src/main/java/com/example/harmonyhub/ui/components/ChartCard.kt b/app/src/main/java/com/example/harmonyhub/ui/components/ChartCard.kt index 18e5106..967e2c2 100644 --- a/app/src/main/java/com/example/harmonyhub/ui/components/ChartCard.kt +++ b/app/src/main/java/com/example/harmonyhub/ui/components/ChartCard.kt @@ -1,56 +1,21 @@ package com.example.harmonyhub.ui.components -<<<<<<< HEAD -import androidx.compose.foundation.Image -import androidx.compose.foundation.clickable -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.fillMaxSize -======= import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.height ->>>>>>> minhnhat_branch import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.Surface -<<<<<<< HEAD -import androidx.compose.runtime.Composable -import androidx.compose.ui.Alignment -======= import androidx.compose.material3.Text import androidx.compose.runtime.Composable ->>>>>>> minhnhat_branch import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.ContentScale -<<<<<<< HEAD -import androidx.compose.ui.platform.testTag -import androidx.compose.ui.res.painterResource -import androidx.compose.ui.unit.dp - -@Composable -fun ChartCard(chartImg: Int) { - Surface( - modifier = Modifier - .size(width = 150.dp, height = 150.dp) - .clickable { }, - color = Color.Transparent - ) { - Box(contentAlignment = Alignment.BottomCenter, - modifier = Modifier.padding(4.dp)) { - // Placeholder for the image - Image( - painter = painterResource(id = chartImg), - contentDescription = null, - contentScale = ContentScale.Crop, - modifier = Modifier.fillMaxSize().clip(RoundedCornerShape(12.dp)) - ) -======= import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.TextStyle @@ -99,7 +64,6 @@ fun ChartCard(chartImg: String?, chartName: String, chartId: String) { // maxLines = 1, // overflow = Ellipsis // ) ->>>>>>> minhnhat_branch } } } \ No newline at end of file diff --git a/app/src/main/java/com/example/harmonyhub/ui/components/SongCard.kt b/app/src/main/java/com/example/harmonyhub/ui/components/SongCard.kt index b96edf9..0944266 100644 --- a/app/src/main/java/com/example/harmonyhub/ui/components/SongCard.kt +++ b/app/src/main/java/com/example/harmonyhub/ui/components/SongCard.kt @@ -24,11 +24,8 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.vector.ImageVector -<<<<<<< HEAD -======= import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.platform.LocalContext ->>>>>>> minhnhat_branch import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.font.FontWeight @@ -41,11 +38,7 @@ data class Song( val id: String, val name: String, val artist: String, -<<<<<<< HEAD - val imageResId: Int, -======= val imageResId: String, ->>>>>>> minhnhat_branch val url: String ) diff --git a/app/src/main/java/com/example/harmonyhub/ui/components/SuggestionCard.kt b/app/src/main/java/com/example/harmonyhub/ui/components/SuggestionCard.kt index a2ac99f..4d665e6 100644 --- a/app/src/main/java/com/example/harmonyhub/ui/components/SuggestionCard.kt +++ b/app/src/main/java/com/example/harmonyhub/ui/components/SuggestionCard.kt @@ -17,10 +17,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.ContentScale -<<<<<<< HEAD -======= import androidx.compose.ui.platform.LocalContext ->>>>>>> minhnhat_branch import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.TextStyle @@ -28,20 +25,13 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextOverflow.Companion.Ellipsis import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -<<<<<<< HEAD -======= import coil.compose.AsyncImage import coil.request.ImageRequest ->>>>>>> minhnhat_branch import com.example.harmonyhub.R import com.example.harmonyhub.ui.theme.NotoSans @Composable -<<<<<<< HEAD -fun SuggestionCard(songName: String, artistName: String) { -======= fun SuggestionCard(songName: String, artistName: String, songId: String, songImg: String) { ->>>>>>> minhnhat_branch Surface( modifier = Modifier .size(width = 125.dp, height = 180.dp) @@ -53,11 +43,6 @@ fun SuggestionCard(songName: String, artistName: String, songId: String, songImg Box( modifier = Modifier.size(width = 125.dp, height = 125.dp) ) { -<<<<<<< HEAD - Image( - painter = painterResource(id = R.drawable.v), - contentDescription = null, -======= AsyncImage( model = ImageRequest.Builder(context = LocalContext.current) .data(songImg) @@ -66,7 +51,6 @@ fun SuggestionCard(songName: String, artistName: String, songId: String, songImg error = painterResource(com.example.harmonyhub.R.drawable.ic_broken_image), placeholder = painterResource(id = com.example.harmonyhub.R.drawable.loading_img), contentDescription = "Photo", ->>>>>>> minhnhat_branch contentScale = ContentScale.Crop, modifier = Modifier.fillMaxSize().clip(RoundedCornerShape(12.dp)), ) diff --git a/app/src/main/java/com/example/harmonyhub/ui/home/HomeScreen.kt b/app/src/main/java/com/example/harmonyhub/ui/home/HomeScreen.kt index 89752ce..82aee8f 100644 --- a/app/src/main/java/com/example/harmonyhub/ui/home/HomeScreen.kt +++ b/app/src/main/java/com/example/harmonyhub/ui/home/HomeScreen.kt @@ -2,6 +2,7 @@ package com.example.harmonyhub.ui.home import androidx.compose.foundation.Image import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer @@ -16,11 +17,8 @@ import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.items import androidx.compose.foundation.shape.CircleShape import androidx.compose.material.icons.Icons -<<<<<<< HEAD -======= import androidx.compose.material.icons.filled.Notifications import androidx.compose.material.icons.filled.Refresh ->>>>>>> minhnhat_branch import androidx.compose.material.icons.filled.Settings import androidx.compose.material3.CircularProgressIndicator import androidx.compose.material3.Icon @@ -31,11 +29,7 @@ import androidx.compose.runtime.livedata.observeAsState import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip -<<<<<<< HEAD -import androidx.compose.ui.platform.testTag -======= import androidx.compose.ui.graphics.Color ->>>>>>> minhnhat_branch import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.TextStyle @@ -43,10 +37,6 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.hilt.navigation.compose.hiltViewModel -<<<<<<< HEAD -import com.example.harmonyhub.R -import com.example.harmonyhub.presentation.viewmodel.UserDataViewModel -======= import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.viewmodel.compose.viewModel import com.example.harmonyhub.R @@ -57,7 +47,6 @@ import com.example.harmonyhub.data.network.ChartOut import com.example.harmonyhub.data.network.ResponseHomeScreenData import com.example.harmonyhub.presentation.viewmodel.UserDataViewModel import com.example.harmonyhub.ui.components.AlbumCard ->>>>>>> minhnhat_branch import com.example.harmonyhub.ui.components.AppScaffoldWithDrawer import com.example.harmonyhub.ui.components.ArtistsCard import com.example.harmonyhub.ui.components.ChartCard @@ -65,8 +54,6 @@ import com.example.harmonyhub.ui.components.GenreCard import com.example.harmonyhub.ui.components.SuggestionCard import com.example.harmonyhub.ui.theme.NotoSans -<<<<<<< HEAD -======= @Composable fun LoadingScreen() { Box( @@ -76,7 +63,6 @@ fun LoadingScreen() { CircularProgressIndicator(color = Color.Blue) } } ->>>>>>> minhnhat_branch @Composable fun ErrorScreen( @@ -111,13 +97,6 @@ fun HomeScreen( onProfileButtonClicked: () -> Unit, onLogoutButtonClicked: () -> Unit, onSettingsButtonClicked: () -> Unit, -<<<<<<< HEAD - userDataViewModel: UserDataViewModel = hiltViewModel(), - modifier: Modifier = Modifier -) { - val username = userDataViewModel.userName.observeAsState() - -======= modifier: Modifier = Modifier, viewModel: HomeViewModel = viewModel(factory = HomeViewModel.Factory), userDataViewModel: UserDataViewModel = hiltViewModel(), @@ -167,10 +146,9 @@ fun MainHomeScreen( resPopularItem: ResponseHomeScreenData ) { //Main UI ->>>>>>> minhnhat_branch AppScaffoldWithDrawer( onProfileClicked = onProfileButtonClicked, - onSettingsClicked = onSettingsButtonClicked, + onSettingsClicked = {}, onLogoutClicked = onLogoutButtonClicked ) { onOpenDrawer -> Column( @@ -185,12 +163,10 @@ fun MainHomeScreen( horizontalArrangement = Arrangement.SpaceBetween ) { Row(verticalAlignment = Alignment.CenterVertically) { - IconButton( - onClick = { onOpenDrawer() }, - modifier = Modifier.testTag("DrawerButton")) { + IconButton(onClick = { onOpenDrawer() }) { Image( painter = painterResource(id = R.drawable.hip), - contentDescription = "Avatar", + contentDescription = "Profile", modifier = Modifier .size(50.dp) .clip(CircleShape) @@ -198,12 +174,7 @@ fun MainHomeScreen( } Spacer(modifier = Modifier.width(8.dp)) Text( -<<<<<<< HEAD - text = username.value.toString(), - modifier = Modifier.testTag("Username"), -======= text = nameUser, ->>>>>>> minhnhat_branch style = TextStyle( fontFamily = NotoSans, fontWeight = FontWeight.Bold, @@ -212,10 +183,17 @@ fun MainHomeScreen( ) } Row { - IconButton(onClick = { onSettingsButtonClicked() }) { + IconButton(onClick = { /* Notification */ }) { + Icon( + imageVector = Icons.Default.Notifications, + contentDescription = "Notifications", + modifier = Modifier.size(24.dp) + ) + } + IconButton(onClick = { /* Settings */ }) { Icon( imageVector = Icons.Default.Settings, - contentDescription = "Settings Icon", + contentDescription = "Settings", modifier = Modifier.size(24.dp) ) } @@ -230,6 +208,7 @@ fun MainHomeScreen( item { //Header with avatar, username, and profile button + Spacer(modifier = Modifier.height(16.dp)) //Top Genres Section @@ -246,7 +225,7 @@ fun MainHomeScreen( horizontalArrangement = Arrangement.spacedBy(8.dp) ) { items(listOf("V-Pop", "K-Pop", "R&B", "Hip Hop")) { genre -> - GenreCard(genre, modifier = Modifier.testTag("GenreCard_$genre")) + GenreCard(genre) } } @@ -314,25 +293,12 @@ fun MainHomeScreen( LazyRowChart(resPopularItem.listChart) -<<<<<<< HEAD - ) - ) { chart -> - ChartCard(chart) - } - } -======= Spacer(modifier = Modifier.height(16.dp)) ->>>>>>> minhnhat_branch } } } } } -<<<<<<< HEAD - - - -======= @Composable fun LazyRowArtist(temple: MutableList?) { LazyRow( @@ -397,6 +363,5 @@ fun LazyRowChart(temple: MutableList?) { ->>>>>>> minhnhat_branch diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 48f94ab..0e3977c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -18,10 +18,7 @@ New Password Playlist Song List Add Song To Playlist -<<<<<<< HEAD -======= Connection error Refresh ->>>>>>> minhnhat_branch \ No newline at end of file