@thehappycoder/react-responsive-pagination
Version:
React component for responsive pagination
27 lines (26 loc) • 1.15 kB
JavaScript
;
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
var react_1 = __importStar(require("react"));
var viewItemToSkinItem_1 = require("./viewItemToSkinItem");
function useView(skin, handlePageChange) {
var handlePageChangeRef = react_1.useRef(null);
handlePageChangeRef.current = handlePageChange;
return react_1.useMemo(function () { return createView(skin, handlePageChangeRef); }, [skin]);
}
exports.useView = useView;
function createView(Skin, handlePageChangeRef) {
var View = react_1.forwardRef(function (_a, ref) {
var viewItems = _a.items;
var handlePageChange = handlePageChangeRef.current;
var skinItems = viewItems.map(viewItemToSkinItem_1.viewItemToSkinItem(handlePageChange));
return react_1.default.createElement(Skin, { ref: ref, items: skinItems });
});
return View;
}