ra-core
Version:
Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React
25 lines • 1.44 kB
JavaScript
import * as React from 'react';
import { Link } from 'react-router-dom';
import { useTranslate } from "../i18n/useTranslate.js";
import { usePrevNextController, } from "../controller/usePrevNextController.js";
export var PrevNextButtons = function (props) {
var _a = usePrevNextController(props), hasPrev = _a.hasPrev, hasNext = _a.hasNext, prevPath = _a.prevPath, nextPath = _a.nextPath, index = _a.index, total = _a.total, error = _a.error, isPending = _a.isPending;
var translate = useTranslate();
if (isPending) {
return React.createElement("p", null, "Loading...");
}
if (error) {
return React.createElement("p", null, error.message);
}
if (!hasPrev && !hasNext) {
return null;
}
return (React.createElement("div", { style: { display: 'flex', alignItems: 'center', gap: 8 } },
hasPrev && prevPath ? (React.createElement(Link, { to: prevPath }, translate('ra.navigation.previous'))) : (React.createElement("span", { style: { opacity: 0.5 } }, translate('ra.navigation.previous'))),
typeof index === 'number' && (React.createElement("span", null,
index + 1,
" / ",
total)),
hasNext && nextPath ? (React.createElement(Link, { to: nextPath }, translate('ra.navigation.next'))) : (React.createElement("span", { style: { opacity: 0.5 } }, translate('ra.navigation.next')))));
};
//# sourceMappingURL=PrevNextButtons.js.map