AbstractCursorPaginator
abstract class AbstractCursorPaginator implements Htmlable mixin Collection (View source)
Traits
Properties
protected Collection | $items | All of the items being paginated. |
|
protected int | $perPage | The number of items to be shown per page. |
|
protected string | $path | The base path to assign to all URLs. |
|
protected array | $query | The query parameters to add to all URLs. |
|
protected string|null | $fragment | The URL fragment to add to all URLs. |
|
protected string | $cursorName | The cursor string variable used to store the page. |
|
protected Cursor|null | $cursor | The current cursor. |
|
protected array | $parameters | The paginator parameters for the cursor. |
|
protected array | $options | The paginator options. |
|
static protected Closure | $currentCursorResolver | The current cursor resolver callback. |
Methods
Forward a method call to the given object.
Forward a method call to the given object, returning $this if the forwarded call returned itself.
Throw a bad method call exception for the given method.
Call the given Closure with this instance then return the instance.
Get the URL for the previous page.
The URL for the next page, or null.
Get the "cursor" that points to the previous set of items.
Get the "cursor" that points to the next set of items.
Get a cursor instance for the given item.
Get the cursor parameter value from a pivot model if applicable.
Ensure the parameter is a primitive type.
Get / set the URL fragment to be appended to URLs.
Add a set of query string values to the paginator.
Add an array of query string values.
Add all current query string values to the paginator.
Add a query string value to the paginator.
Build the full fragment portion of a URL.
Load a set of relationships onto the mixed relationship collection.
Load a set of relationship counts onto the mixed relationship collection.
Get the slice of items being paginated.
Transform each item in the slice of items using a callback.
Get the number of items shown per page.
Get the query string variable used to store the cursor.
Set the query string variable used to store the cursor.
Set the base path to assign to all URLs.
Set the base path to assign to all URLs.
Get the base path for paginator generated URLs.
Resolve the current cursor or return the default value.
Get an instance of the view factory from the resolver.
Get an iterator for the items.
Determine if the list of items is empty.
Determine if the list of items is not empty.
Get the number of items for the current page.
Get the paginator's underlying collection.
Get the paginator options.
Determine if the given item exists.
Get the item at the given offset.
Set the item at the given offset.
Unset the item at the given key.
Render the contents of the paginator to HTML.
Make dynamic calls into the collection.
Render the contents of the paginator when casting to a string.
Details
protected mixed
forwardCallTo(mixed $object, string $method, array $parameters)
Forward a method call to the given object.
protected mixed
forwardDecoratedCallTo(mixed $object, string $method, array $parameters)
Forward a method call to the given object, returning $this if the forwarded call returned itself.
static protected void
throwBadMethodCallException(string $method)
Throw a bad method call exception for the given method.
$this|HigherOrderTapProxy
tap(callable|null $callback = null)
Call the given Closure with this instance then return the instance.
string
url(Cursor|null $cursor)
Get the URL for a given cursor.
string|null
previousPageUrl()
Get the URL for the previous page.
string|null
nextPageUrl()
The URL for the next page, or null.
Cursor|null
previousCursor()
Get the "cursor" that points to the previous set of items.
Cursor|null
nextCursor()
Get the "cursor" that points to the next set of items.
Cursor
getCursorForItem(ArrayAccess|stdClass $item, bool $isNext = true)
Get a cursor instance for the given item.
array
getParametersForItem(ArrayAccess|stdClass $item)
Get the cursor parameters for a given object.
protected string|null
getPivotParameterForItem(ArrayAccess|stdClass $item, string $parameterName)
Get the cursor parameter value from a pivot model if applicable.
protected mixed
ensureParameterIsPrimitive(mixed $parameter)
Ensure the parameter is a primitive type.
This can resolve issues that arise the developer uses a value object for an attribute.
$this|string|null
fragment(string|null $fragment = null)
Get / set the URL fragment to be appended to URLs.
$this
appends(array|string|null $key, string|null $value = null)
Add a set of query string values to the paginator.
protected $this
appendArray(array $keys)
Add an array of query string values.
$this
withQueryString()
Add all current query string values to the paginator.
protected $this
addQuery(string $key, string $value)
Add a query string value to the paginator.
protected string
buildFragment()
Build the full fragment portion of a URL.
$this
loadMorph(string $relation, array $relations)
Load a set of relationships onto the mixed relationship collection.
$this
loadMorphCount(string $relation, array $relations)
Load a set of relationship counts onto the mixed relationship collection.
array
items()
Get the slice of items being paginated.
$this
through(callable $callback)
Transform each item in the slice of items using a callback.
int
perPage()
Get the number of items shown per page.
Cursor|null
cursor()
Get the current cursor being paginated.
string
getCursorName()
Get the query string variable used to store the cursor.
$this
setCursorName(string $name)
Set the query string variable used to store the cursor.
$this
withPath(string $path)
Set the base path to assign to all URLs.
$this
setPath(string $path)
Set the base path to assign to all URLs.
string|null
path()
Get the base path for paginator generated URLs.
static Cursor|null
resolveCurrentCursor(string $cursorName = 'cursor', $default = null)
Resolve the current cursor or return the default value.
static void
currentCursorResolver(Closure $resolver)
Set the current cursor resolver callback.
static Factory
viewFactory()
Get an instance of the view factory from the resolver.
ArrayIterator
getIterator()
Get an iterator for the items.
bool
isEmpty()
Determine if the list of items is empty.
bool
isNotEmpty()
Determine if the list of items is not empty.
int
count()
Get the number of items for the current page.
Collection
getCollection()
Get the paginator's underlying collection.
$this
setCollection(Collection $collection)
Set the paginator's underlying collection.
array
getOptions()
Get the paginator options.
bool
offsetExists(mixed $key)
Determine if the given item exists.
mixed
offsetGet(mixed $key)
Get the item at the given offset.
void
offsetSet(mixed $key, mixed $value)
Set the item at the given offset.
void
offsetUnset(mixed $key)
Unset the item at the given key.
string
toHtml()
Render the contents of the paginator to HTML.
mixed
__call(string $method, array $parameters)
Make dynamic calls into the collection.
string
__toString()
Render the contents of the paginator when casting to a string.