UNPKG

@rxdi/ui-kit

Version:

UI Components for building graphql-server website

41 lines 1.57 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Paginator = void 0; __exportStar(require("./pagination.component"), exports); const Paginator = (items, page = 1, per_page = 10) => { const offset = (page - 1) * per_page; const data = items.slice(offset).slice(0, per_page); const total_pages = Math.ceil(items.length / per_page); return { page, per_page, pre_page: page - 1 ? page - 1 : null, next_page: total_pages > page ? page + 1 : null, total: items.length, total_pages: total_pages, data, pages: [ ...Array.from(Array(total_pages).keys()).map((item, index) => { return { active: index + 1 === page, }; }), ], }; }; exports.Paginator = Paginator; //# sourceMappingURL=index.js.map