@vlsergey/react-bootstrap-pagetable
Version:
Complex solution to work with pageable data, including sorting, filtering, actions, changing displayed columns, etc.
14 lines (13 loc) • 818 B
JavaScript
import { __assign } from "tslib";
import Pagination from '@vlsergey/react-bootstrap-pagination';
import React, { useCallback } from 'react';
import { useControlledContext } from './ControlledContext';
var PageIndexSelector = function () {
var _a = useControlledContext(), fetchArgs = _a.fetchArgs, onFetchArgsChange = _a.onFetchArgsChange, page = _a.page, size = _a.size;
var handlePageChange = useCallback(function (_a) {
var value = _a.target.value;
return onFetchArgsChange(__assign(__assign({}, fetchArgs), { page: value }));
}, [fetchArgs, onFetchArgsChange]);
return React.createElement(Pagination, { onChange: handlePageChange, size: size, style: { margin: 0 }, totalPages: page.totalPages, value: fetchArgs.page });
};
export default React.memo(PageIndexSelector);