package com.h.pixeldroid.fragments.feeds.uncachedFeeds.accountLists import androidx.paging.ExperimentalPagingApi import androidx.paging.Pager import androidx.paging.PagingConfig import androidx.paging.PagingData import com.h.pixeldroid.api.PixelfedAPI import com.h.pixeldroid.fragments.feeds.uncachedFeeds.UncachedContentRepository import com.h.pixeldroid.objects.Account import kotlinx.coroutines.flow.Flow import javax.inject.Inject class FollowersContentRepository @ExperimentalPagingApi @Inject constructor( private val api: PixelfedAPI, private val accessToken: String, private val accountId: String, private val following: Boolean, ): UncachedContentRepository { override fun getStream(): Flow> { return Pager( config = PagingConfig( initialLoadSize = NETWORK_PAGE_SIZE, pageSize = NETWORK_PAGE_SIZE, enablePlaceholders = false), pagingSourceFactory = { FollowersPagingSource(api, accessToken, accountId, following) } ).flow } companion object { private const val NETWORK_PAGE_SIZE = 20 } }