UNPKG

@kubit-ui-web/react-components

Version:

Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience

36 lines 1.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.calcFirstLastVisiblePosition = exports.getPositionWithIn = void 0; const pageControlStates_1 = require("../types/pageControlStates"); const getPositionWithIn = (currentPosition, pages) => { return Math.max(0, Math.min(currentPosition, pages - 1)); }; exports.getPositionWithIn = getPositionWithIn; const calcFirstLastVisiblePosition = ({ isBullet, direction, currentPosition, pages, dots, }) => { let firstVisiblePosition = 0; let lastVisiblePosition = firstVisiblePosition + dots - 1; // On lines pagination (!isBullet), we do not use forth and back logic if (!isBullet || direction === pageControlStates_1.PageControlDirectionType.FORTH) { if (currentPosition - dots < 0) { firstVisiblePosition = 0; lastVisiblePosition = firstVisiblePosition + dots - 1; } else { lastVisiblePosition = currentPosition; firstVisiblePosition = lastVisiblePosition - (dots - 1); } } else { if (pages - dots <= currentPosition) { lastVisiblePosition = pages - 1; firstVisiblePosition = lastVisiblePosition - (dots - 1); } else { firstVisiblePosition = currentPosition; lastVisiblePosition = firstVisiblePosition + dots - 1; } } return { firstVisiblePosition, lastVisiblePosition }; }; exports.calcFirstLastVisiblePosition = calcFirstLastVisiblePosition; //# sourceMappingURL=positions.js.map