Skip to content

Commit 7138eb5

Browse files
committed
images list
1 parent be63611 commit 7138eb5

File tree

5 files changed

+27
-8
lines changed

5 files changed

+27
-8
lines changed

app/src/main/java/com/hoc081098/firestore_coroutinesflow/data/entity/ImageEntity.kt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,14 @@ data class ImageEntity(
2121
@get:PropertyName("categoryId")
2222
@set:PropertyName("categoryId")
2323
var categoryId: String,
24-
)
24+
) {
25+
@Suppress("unused")
26+
constructor() : this(
27+
name = "",
28+
imageUrl = "",
29+
thumbnailUrl = "",
30+
viewCount = 0,
31+
downloadCount = 0,
32+
categoryId = ""
33+
)
34+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
11
package com.hoc081098.firestore_coroutinesflow.koin
22

33
import com.hoc081098.firestore_coroutinesflow.data.CategoryRepoImpl
4+
import com.hoc081098.firestore_coroutinesflow.data.ImageRepoImpl
45
import com.hoc081098.firestore_coroutinesflow.domain.repo.CategoryRepo
6+
import com.hoc081098.firestore_coroutinesflow.domain.repo.ImageRepo
57
import kotlinx.coroutines.ExperimentalCoroutinesApi
68
import org.koin.dsl.module
79

810
@ExperimentalCoroutinesApi
911
val domainModule = module {
1012
single<CategoryRepo> { CategoryRepoImpl(get()) }
13+
14+
single<ImageRepo> { ImageRepoImpl(get()) }
1115
}

app/src/main/java/com/hoc081098/firestore_coroutinesflow/koin/viewModel.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.hoc081098.firestore_coroutinesflow.koin
22

3+
import com.hoc081098.firestore_coroutinesflow.domain.entity.Category
4+
import com.hoc081098.firestore_coroutinesflow.ui.category_detail.CategoryDetailViewModel
35
import com.hoc081098.firestore_coroutinesflow.ui.main.MainViewModel
46
import kotlinx.coroutines.ExperimentalCoroutinesApi
57
import org.koin.androidx.viewmodel.dsl.viewModel
@@ -8,4 +10,6 @@ import org.koin.dsl.module
810
@ExperimentalCoroutinesApi
911
val viewModelModule = module {
1012
viewModel { MainViewModel(get()) }
13+
14+
viewModel { (category: Category) -> CategoryDetailViewModel(category, get()) }
1115
}

app/src/main/java/com/hoc081098/firestore_coroutinesflow/ui/category_detail/CategoryDetailFragment.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,23 @@ import android.os.Bundle
44
import android.util.Log
55
import android.view.View
66
import androidx.fragment.app.Fragment
7-
import androidx.lifecycle.lifecycleScope
7+
import androidx.lifecycle.observe
88
import androidx.navigation.fragment.navArgs
9-
import com.google.firebase.firestore.FirebaseFirestore
109
import com.hoc081098.firestore_coroutinesflow.R
11-
import com.hoc081098.firestore_coroutinesflow.data.snapshots
12-
import kotlinx.coroutines.flow.launchIn
13-
import kotlinx.coroutines.flow.onEach
14-
import org.json.JSONArray
10+
import kotlinx.coroutines.ExperimentalCoroutinesApi
1511
import org.koin.androidx.viewmodel.ext.android.viewModel
1612
import org.koin.core.parameter.parametersOf
1713

14+
@ExperimentalCoroutinesApi
1815
class CategoryDetailFragment : Fragment(R.layout.category_detail_fragment) {
1916
private val args by navArgs<CategoryDetailFragmentArgs>()
2017
private val vm by viewModel<CategoryDetailViewModel> { parametersOf(args.category) }
2118

2219
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
2320
super.onViewCreated(view, savedInstanceState)
2421

22+
vm.categoriesData.observe(owner = viewLifecycleOwner) {
23+
Log.d("@@@", "Lce $it")
24+
}
2525
}
2626
}

app/src/main/java/com/hoc081098/firestore_coroutinesflow/ui/main/MainFragment.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import android.view.View
55
import androidx.core.view.isGone
66
import androidx.core.view.isVisible
77
import androidx.fragment.app.Fragment
8+
import androidx.lifecycle.observe
89
import androidx.navigation.fragment.findNavController
910
import androidx.recyclerview.widget.GridLayoutManager
1011
import com.hoc081098.firestore_coroutinesflow.GlideApp
@@ -35,7 +36,7 @@ class MainFragment : Fragment(R.layout.main_fragment) {
3536
adapter = categoryAdapter
3637
}
3738

38-
vm.categoriesData.observe(viewLifecycleOwner) { state ->
39+
vm.categoriesData.observe(owner = viewLifecycleOwner) { state ->
3940
when (state) {
4041
Lce.Loading -> {
4142
binding.progressBar.isVisible = true

0 commit comments

Comments
 (0)