- $shelves = $this->shelfRepo->getAllPaginated(18, $listOptions->getSort(), $listOptions->getOrder());
- $recents = $this->isSignedIn() ? $this->shelfRepo->getRecentlyViewed(4) : false;
- $popular = $this->shelfRepo->getPopular(4);
- $new = $this->shelfRepo->getRecentlyCreated(4);
+ $shelves = $this->queries->visibleForListWithCover()
+ ->orderBy($listOptions->getSort(), $listOptions->getOrder())
+ ->paginate(18);
+ $recents = $this->isSignedIn() ? $this->queries->recentlyViewedForCurrentUser()->get() : false;
+ $popular = $this->queries->popularForList()->get();
+ $new = $this->queries->visibleForList()
+ ->orderBy('created_at', 'desc')
+ ->take(4)
+ ->get();