playtpus_ui
Version:
React Component Libary
24 lines • 923 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var react_1 = require("react");
var usePagination = function (len, max) {
var _a = react_1.useState(len), length = _a[0], setLength = _a[1];
var _b = react_1.useState(0), page = _b[0], setPage = _b[1];
var maxPage = Math.ceil(length / max);
var canGoBack = page > 0;
var canGoForward = page < (maxPage - 1);
var backward = function () { return canGoBack && setPage(page - 1); };
var forward = function () { return canGoForward && setPage(page + 1); };
react_1.useEffect(function () { return setLength(len); }, [len]);
return {
page: page,
needsPagination: maxPage > 1,
canGoBack: canGoBack,
canGoForward: canGoForward,
actions: {
forward: forward, backward: backward
}
};
};
exports.default = usePagination;
//# sourceMappingURL=pagination.js.map