UNPKG

@herlinus/coloquent

Version:

Library for retrieving model objects from a JSON-API, with a fluent syntax inspired by Laravel Eloquent.

27 lines 1.04 kB
import { PaginationSpec } from "./PaginationSpec"; import { QueryParam } from "../QueryParam"; export class OffsetBasedPaginationSpec extends PaginationSpec { constructor(pageOffsetParamName, pageLimitParamName, limit) { super(); this.queryParams = []; this.pageOffsetParamName = pageOffsetParamName; this.pageLimitParamName = pageLimitParamName; this.pageLimit = limit; } getPaginationParameters() { this.queryParams = []; if (this.pageOffset !== undefined) { this.queryParams.push(new QueryParam(`${this.pageOffsetParamName}`, this.pageOffset)); this.queryParams.push(new QueryParam(`${this.pageLimitParamName}`, this.pageLimit)); } return this.queryParams; } setPage(page) { page = Math.max(page, 1); this.pageOffset = (page - 1) * this.pageLimit; } setPageLimit(pageLimit) { this.pageLimit = pageLimit; } } //# sourceMappingURL=OffsetBasedPaginationSpec.js.map