diff --git a/app/src/main/java/com/sopt/peekabookaos/presentation/recommend/RecommendViewModel.kt b/app/src/main/java/com/sopt/peekabookaos/presentation/recommend/RecommendViewModel.kt index 26bac7e8..ea0abb19 100644 --- a/app/src/main/java/com/sopt/peekabookaos/presentation/recommend/RecommendViewModel.kt +++ b/app/src/main/java/com/sopt/peekabookaos/presentation/recommend/RecommendViewModel.kt @@ -36,11 +36,11 @@ class RecommendViewModel @Inject constructor( private val _isEditMode = MediatorLiveData().apply { value = false - addSource(_recommendedBook) { - value = checkEditMode(it, requireNotNull(_recommendingBook.value)) + addSource(_recommendedBook) { recommendedBooks -> + value = checkEditMode(recommendedBooks, _recommendingBook.value ?: emptyList()) } - addSource(_recommendingBook) { - value = checkEditMode(requireNotNull(_recommendedBook.value), it) + addSource(_recommendingBook) { recommendingBooks -> + value = checkEditMode(_recommendedBook.value ?: emptyList(), recommendingBooks) } } val isEditMode: LiveData = _isEditMode @@ -57,14 +57,14 @@ class RecommendViewModel @Inject constructor( } fun toggleEditMode() { - _isEditMode.value = requireNotNull(_isEditMode.value).not() + _isEditMode.value = _isEditMode.value?.not() ?: false val updatedRecommendedBooks = - _recommendedBook.value?.map { it.copy(isEditMode = requireNotNull(_isEditMode.value)) } - _recommendedBook.value = requireNotNull(updatedRecommendedBooks) + _recommendedBook.value?.map { it.copy(isEditMode = _isEditMode.value ?: false) } + _recommendedBook.value = updatedRecommendedBooks ?: emptyList() val updatedRecommendingBooks = - _recommendingBook.value?.map { it.copy(isEditMode = requireNotNull(_isEditMode.value)) } - _recommendingBook.value = requireNotNull(updatedRecommendingBooks) + _recommendingBook.value?.map { it.copy(isEditMode = _isEditMode.value ?: false) } + _recommendingBook.value = updatedRecommendingBooks ?: emptyList() } fun deleteRecommend() {