UNPKG

@asi-ngtools/lib

Version:

This project is a little components library, simple to use, which will help you to simplify your project.

43 lines (42 loc) 3.39 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; export class AsiPaginationService { constructor() { } /** * @param {?} datas * @param {?} nbElementParPage * @return {?} */ getNbPages(datas, nbElementParPage) { return Math.ceil(datas.length / nbElementParPage); } /** * @param {?} datas * @param {?} nbElementParPage * @param {?} pageIndex * @return {?} */ getPage(datas, nbElementParPage, pageIndex) { /** @type {?} */ let results = new Array(); if (datas != null) { if (pageIndex < this.getNbPages(datas, nbElementParPage)) { results = datas.slice((pageIndex - 1) * nbElementParPage, (pageIndex) * nbElementParPage); } else { results = datas.slice((pageIndex - 1) * nbElementParPage); } } return results; } } AsiPaginationService.decorators = [ { type: Injectable } ]; /** @nocollapse */ AsiPaginationService.ctorParameters = () => []; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpLXBhZ2luYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bhc2ktbmd0b29scy9saWIvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvYXNpLXBhZ2luYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxNQUFNO0lBRUo7S0FFQzs7Ozs7O0lBRUQsVUFBVSxDQUFDLEtBQWlCLEVBQUUsZ0JBQXdCO1FBQ3BELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQztLQUNuRDs7Ozs7OztJQUVELE9BQU8sQ0FBQyxLQUFpQixFQUFFLGdCQUF3QixFQUFFLFNBQWlCOztRQUNwRSxJQUFJLE9BQU8sR0FBRyxJQUFJLEtBQUssRUFBTyxDQUFDO1FBRS9CLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ2xCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekQsT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEdBQUUsQ0FBQyxDQUFDLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO2FBQzFGO1lBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ04sT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEdBQUUsQ0FBQyxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQzthQUMxRDtTQUNGO1FBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQztLQUNoQjs7O1lBdkJGLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBc2lQYWdpbmF0aW9uU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG5cclxuICB9XHJcblxyXG4gIGdldE5iUGFnZXMoZGF0YXM6IEFycmF5PGFueT4sIG5iRWxlbWVudFBhclBhZ2U6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICByZXR1cm4gTWF0aC5jZWlsKGRhdGFzLmxlbmd0aCAvIG5iRWxlbWVudFBhclBhZ2UpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGFnZShkYXRhczogQXJyYXk8YW55PiwgbmJFbGVtZW50UGFyUGFnZTogbnVtYmVyLCBwYWdlSW5kZXg6IG51bWJlcik6IEFycmF5PGFueT4ge1xyXG4gICAgbGV0IHJlc3VsdHMgPSBuZXcgQXJyYXk8YW55PigpO1xyXG5cclxuICAgIGlmIChkYXRhcyAhPSBudWxsKSB7XHJcbiAgICAgIGlmIChwYWdlSW5kZXggPCB0aGlzLmdldE5iUGFnZXMoZGF0YXMsIG5iRWxlbWVudFBhclBhZ2UpKSB7XHJcbiAgICAgICAgcmVzdWx0cyA9IGRhdGFzLnNsaWNlKChwYWdlSW5kZXggLTEpICogbmJFbGVtZW50UGFyUGFnZSwgKHBhZ2VJbmRleCkgKiBuYkVsZW1lbnRQYXJQYWdlKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXN1bHRzID0gZGF0YXMuc2xpY2UoKHBhZ2VJbmRleCAtMSkgKiBuYkVsZW1lbnRQYXJQYWdlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXN1bHRzO1xyXG4gIH1cclxuXHJcbn0iXX0=