package com.ustadmobile.util.ext import app.cash.paging.PagingSourceLoadResult import app.cash.paging.PagingSourceLoadResultPage import com.ustadmobile.hooks.DoorRemoteMediatorResult import com.ustadmobile.view.components.virtuallist.pages import tanstack.react.query.UseInfiniteQueryResult fun UseInfiniteQueryResult, Throwable>.isSettledEmpty( mediatorResult: DoorRemoteMediatorResult<*> ): Boolean { return !isLoading && mediatorResult.mediatorState.loadingStarted && !pages().any { (it as? PagingSourceLoadResultPage<*, *>)?.data?.isNotEmpty() == true } && mediatorResult.mediatorState.loadingRangesInProgress.isEmpty() }