@vlsergey/react-bootstrap-pagetable
Version:
Complex solution to work with pageable data, including sorting, filtering, actions, changing displayed columns, etc.
16 lines (15 loc) • 1.04 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_bootstrap_pagination_1 = tslib_1.__importDefault(require("@vlsergey/react-bootstrap-pagination"));
var react_1 = tslib_1.__importStar(require("react"));
var ControlledContext_1 = require("./ControlledContext");
var PageIndexSelector = function () {
var _a = ControlledContext_1.useControlledContext(), fetchArgs = _a.fetchArgs, onFetchArgsChange = _a.onFetchArgsChange, page = _a.page, size = _a.size;
var handlePageChange = react_1.useCallback(function (_a) {
var value = _a.target.value;
return onFetchArgsChange(tslib_1.__assign(tslib_1.__assign({}, fetchArgs), { page: value }));
}, [fetchArgs, onFetchArgsChange]);
return react_1.default.createElement(react_bootstrap_pagination_1.default, { onChange: handlePageChange, size: size, style: { margin: 0 }, totalPages: page.totalPages, value: fetchArgs.page });
};
exports.default = react_1.default.memo(PageIndexSelector);
;