@keycloakify/keycloak-account-ui
Version:
Repackaged Keycloak Account UI
27 lines • 2.48 kB
JavaScript
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
import { Pagination, ToolbarItem, } from "@patternfly/react-core";
import { useTranslation } from "react-i18next";
import { TableToolbar } from "../../../ui-shared/controls/table/TableToolbar";
const KeycloakPagination = ({ id, variant = "top", count, first, max, onNextClick, onPreviousClick, onPerPageSelect, }) => {
const { t } = useTranslation();
const page = Math.round(first / max);
return (_jsx(Pagination, { widgetId: id, titles: {
paginationAriaLabel: `${t("pagination")} ${variant} `,
}, isCompact: true, toggleTemplate: ({ firstIndex, lastIndex, }) => (_jsxs("b", { children: [firstIndex, " - ", lastIndex] })), itemCount: count + page * max, page: page + 1, perPage: max, onNextClick: (_, p) => onNextClick((p - 1) * max), onPreviousClick: (_, p) => onPreviousClick((p - 1) * max), onPerPageSelect: (_, m, f) => onPerPageSelect(f - 1, m), variant: variant }));
};
export const PaginatingTableToolbar = (_a) => {
var { count, searchTypeComponent, toolbarItem, subToolbar, children, inputGroupName, inputGroupPlaceholder, inputGroupOnEnter } = _a, rest = __rest(_a, ["count", "searchTypeComponent", "toolbarItem", "subToolbar", "children", "inputGroupName", "inputGroupPlaceholder", "inputGroupOnEnter"]);
return (_jsx(TableToolbar, { searchTypeComponent: searchTypeComponent, toolbarItem: _jsxs(_Fragment, { children: [toolbarItem, _jsx(ToolbarItem, { variant: "pagination", children: _jsx(KeycloakPagination, Object.assign({ count: count }, rest)) })] }), subToolbar: subToolbar, toolbarItemFooter: count !== 0 ? (_jsx(ToolbarItem, { variant: "pagination", children: _jsx(KeycloakPagination, Object.assign({ count: count, variant: "bottom" }, rest)) })) : null, inputGroupName: inputGroupName, inputGroupPlaceholder: inputGroupPlaceholder, inputGroupOnEnter: inputGroupOnEnter, children: children }));
};
//# sourceMappingURL=PaginatingTableToolbar.js.map