@idares-ui/react
Version:
41 lines • 1.56 kB
JavaScript
;
exports.__esModule = true;
exports.FullMode = void 0;
var tslib_1 = require("tslib");
var React = tslib_1.__importStar(require("react"));
var react_1 = require("react");
var context_1 = require("../../utils/context");
var fragments_1 = require("./fragments");
var states_1 = require("./states");
/**
* Pagination full mode
*
* STATES (Page Position)
*
* - AtFirstThree => 1 | 2 | 3
* - AtWithin => FirstThree < PAGE < LastThree
* - AtLastThree => numberOfPages - 2 | numberOfPages - 1 | numberOfPages
*
* @returns Full Pagination Component
*/
var FullMode = function () {
var _a = (0, react_1.useContext)(context_1.MainContext), numberOfPages = _a.numberOfPages, page = _a.page;
var AtFirstThree = page <= 3;
var AtWithin = page >= 4 && page < numberOfPages - 2;
var AtLastThree = page >= numberOfPages - 2;
var renderState = function () {
if (AtFirstThree)
return React.createElement(states_1.AtFirstThreeComponent, null);
if (AtWithin)
return React.createElement(states_1.AtWithinComponent, null);
if (AtLastThree)
return React.createElement(states_1.AtLastThreeComponent, null);
return React.createElement(React.Fragment, null);
};
return (React.createElement(React.Fragment, null,
React.createElement(fragments_1.PreviousButton, null),
renderState(),
React.createElement(fragments_1.NextButton, null)));
};
exports.FullMode = FullMode;
//# sourceMappingURL=index.js.map