paginationator

Paginate an array into pages of items.

Stats

StarsIssuesVersionUpdatedCreatedSize
paginationator
1530.1.46 years ago7 years agoMinified + gzip package size for paginationator in KB

Readme

paginationator NPM version NPM downloads Build Status

Paginate an array into pages of items.

Install

Install with npm:

$ npm install --save paginationator

image

Usage

var paginationator = require('paginationator');

API

paginationator

Paginate an array with given options and return a Page object containing an array of pages with pagination information.

Params

  • arr {Array}: Array of items to paginate
  • options {Object}: Additional options to control pagination
  • options.limit {Number}: Number of items per page (defaults to 10)
  • returns {Object}: paginated pages

Example

var pages = paginationator([1, 2, 3, 4, 5], {limit: 2});
//=> { pages: [
//=>   { idx: 0, total: 3, current: 1, items: [1, 2], first: 1, last: 3, next: 2 },
//=>   { idx: 1, total: 3, current: 2, items: [3, 4], first: 1, last: 3, prev: 1, next: 3 },
//=>   { idx: 2, total: 3, current: 3, items: [5], first: 1, last: 3, prev: 2 }
//=> ]}

Page

Page constructor

Params

  • page {Object}: optional page object to populate initial values.

Example

var page = new Page();

Pages

Pages constructor

Params

  • pages {Array}: Optional array of pages to initialize the pages array.

Example

var pages = new Pages();

.addPage

Add a page to the list.

Params

  • page {Object}: Plain object or instance of a Page
  • returns {Object}: Returns the instance for chaining

Example

pages.addPage({items: [1, 2, 3]});

.addPages

Add an array of pages to the list.

Params

  • pages {Object}: Array of page objects
  • returns {Object}: Returns the instance for chaining

Example

pages.addPages([...]);

About

Related projects

  • assemble: Get the rocks out of your socks! Assemble makes you fast at creating web projects… more | homepage
  • templates: System for creating and managing template collections, and rendering templates with any node.js template engine… more | homepage
  • verb: Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used… more | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Building docs

(This document was generated by verb-generate-readme (a verb generator), please don't edit the readme directly. Any changes to the readme must be made in .verb.md.)

To generate the readme and API documentation with verb:

$ npm install -g verb verb-generate-readme && verb

Running tests

Install dev dependencies:

$ npm install -d && npm test

Author

Brian Woodward

License

Copyright © 2016, Brian Woodward. Released under the MIT license.


This file was generated by verb, v0.9.0, on July 19, 2016.

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.