public function respondWithPaginatedCollection(AbstractPaginator $paginator, $callback) { $resource = new Collection($paginator->getCollection(), $callback); $resource->setPaginator(new IlluminatePaginatorAdapter($paginator)); $rootScope = $this->fractal->createData($resource); return $rootScope; }
/** * Convert rows to \Data\Row\Row && return Paginator * * @param $perPage * @param null $page * @return AbstractPaginator */ public function paginate($perPage, $page = null) { $this->paginator = $this->createPaginator($perPage, $page); $this->paginator->setCollection($this->paginator->getCollection()->map(function ($row) { return lego_row($row); })); $this->paginator->appends(Request::input()); return $this->paginator; }
/** * @param AbstractPaginator|LengthAwarePaginator|Paginator $paginator * @return \League\Fractal\Resource\Collection */ protected function transformPaginator($paginator) { $collection = $paginator->getCollection(); $resource = new Collection($collection, $this->getTransformer(), $this->resourceKeyCollection); $resource->setPaginator(new IlluminatePaginatorAdapter($paginator)); return $resource; }
/** * @param AbstractPaginator $data * * @return Collection */ private function transformPaginator(AbstractPaginator $data) { $collection = $data->getCollection(); $resource = new Collection($collection, $this->getTransformer()); $resource->setPaginator(new IlluminatePaginatorAdapter($data)); return $resource; }
/** * @param AbstractPaginator $paginator * @param TransformerAbstract $transformer * @return mixed */ public function respondWithPagination(AbstractPaginator $paginator, TransformerAbstract $transformer = null) { return $this->respondWithCollection($paginator->getCollection(), $transformer); }