Safe Haskell | None |
---|---|
Language | Haskell2010 |
Provides pagination API combinator.
Synopsis
- data PaginationParams (settings :: PaginationPageSize)
- data PaginationPageSize
- class KnownPaginationPageSize (settings :: PaginationPageSize)
- data PaginationSpec = PaginationSpec {}
- defPageSize :: PaginationSpec
- itemsOnPage :: HasCallStack => Natural -> PaginationSpec
- skipping :: Natural -> PaginationSpec -> PaginationSpec
- fullContent :: PaginationSpec
Documentation
data PaginationParams (settings :: PaginationPageSize) Source #
API combinator which enables pagination.
Pagination parameters are specified via offset
and limit
query parameters.
Both fields are optional; offset
defaults to 0
and default value of limit
is defined in settings
argument.
Your endpoint implementation will be provided with PaginationSpec
variable
which will contain parameters provided by the user.
Instances
data PaginationPageSize Source #
Determines the page size used when client leaves it unspecified.
DefPageSize Nat | Use specified default. |
DefUnlimitedPageSize | Display all contents. |
class KnownPaginationPageSize (settings :: PaginationPageSize) Source #
settingDefPageSize
Instances
KnownPaginationPageSize 'DefUnlimitedPageSize Source # | |
Defined in Servant.Util.Combinators.Pagination | |
KnownPositive pageSize => KnownPaginationPageSize ('DefPageSize pageSize) Source # | |
Defined in Servant.Util.Combinators.Pagination |
data PaginationSpec Source #
Contains pagination parameters provided by the user.
Instances
Default PaginationSpec Source # | Retains full content. |
Defined in Servant.Util.Combinators.Pagination def :: PaginationSpec # |
defPageSize :: PaginationSpec Source #
Do not paginate anything, use default page size.
itemsOnPage :: HasCallStack => Natural -> PaginationSpec Source #
Conveient builder for PaginationRequest
, creates pagination
with zero offset and given limit.
skipping :: Natural -> PaginationSpec -> PaginationSpec Source #
Convenient builder for PaginationRequest
, modifies offset.
fullContent :: PaginationSpec Source #
Deprecated: Use defPageSize
instead
Do not paginate anything.