diff --git a/core/src/main/java/org/futo/circles/core/feature/circles/filter/FilterTimelinesViewModel.kt b/core/src/main/java/org/futo/circles/core/feature/circles/filter/FilterTimelinesViewModel.kt
index 77beb3bd365655e4769b7e3ef0111d15415ef7bc..c5c29b9ef1dd4bed6602498fe658bf026aed4c54 100644
--- a/core/src/main/java/org/futo/circles/core/feature/circles/filter/FilterTimelinesViewModel.kt
+++ b/core/src/main/java/org/futo/circles/core/feature/circles/filter/FilterTimelinesViewModel.kt
@@ -2,14 +2,29 @@ package org.futo.circles.core.feature.circles.filter
 
 import androidx.lifecycle.ViewModel
 import dagger.hilt.android.lifecycle.HiltViewModel
+import org.futo.circles.core.base.SingleEventLiveData
+import org.futo.circles.core.extensions.Response
+import org.futo.circles.core.extensions.launchBg
 import javax.inject.Inject
 
 @HiltViewModel
 class FilterTimelinesViewModel @Inject constructor(
-    dataSource: FilterTimelinesDataSource
+    private val dataSource: FilterTimelinesDataSource
 ) : ViewModel() {
 
     val circleInfoLiveData = dataSource.circleSummaryLiveData
+    val timelinesLiveData = dataSource.timelinesLiveData
+    val updateFilterResultLiveData = SingleEventLiveData<Response<Unit?>>()
 
+    fun saveFilter() {
+        launchBg {
+            val result = dataSource.applyFilter()
+            updateFilterResultLiveData.postValue(result)
+        }
+    }
+
+    fun toggleItemSelected(id: String) {
+        dataSource.toggleItemSelected(id)
+    }
 
 }
\ No newline at end of file