Coder Social home page Coder Social logo

node-paginator's Introduction

Paginator

Paginator library in NodeJS to facilitate REST pagination

Build Status Coverage Status Latest Stable Version Known Vulnerabilities

Table of Contents

Installation

npm install --save @ssense/node-paginator

Usage

import { Paginator } from '@ssense/node-paginator';

const items = ['item1', 'item2', 'item3']; // from your DB returned collection...
const perPage = 1;
const currentPage = 2;
const paginator: Paginator = new Paginator(items, items.length, perPage, currentPage);

// Transform paginator to object, use this as rour REST response
const paginated = paginator.transform();

console.log(paginated);
/*
output
{
    total: 3,
    per_page: 1,
    current_page: 2,
    last_page: 3,
    from: 2,
    to: 4,
    links:{
        previous: '/?page=1&foo=bar#foobar',
        current: '/?page=2&foo=bar#foobar',
        next: '/?page=3&foo=bar#foobar'
    },
    data: [ 'item1', 'item2', 'item3' ]
}
*/

Tips and tricks

Append queries string to URL

// Append one query string to URL
paginator.append('key', 'value');

// Appends multiple queries to URL
paginator.appends({
    foo: 'bar'
});

Add fragment to URL

// Add foobar fragment to URL
paginator.fragment('foobar');

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.