devextreme
Version:
HTML5 JavaScript Component Suite for Responsive Web Development
56 lines (55 loc) • 1.81 kB
JavaScript
/**
* DevExtreme (esm/__internal/pagination/info.js)
* Version: 24.2.6
* Build date: Mon Mar 17 2025
*
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
import {
createVNode
} from "inferno";
import {
BaseInfernoComponent
} from "@devextreme/runtime/inferno";
import {
createRef as infernoCreateRef
} from "inferno";
import {
format
} from "../../core/utils/string";
import {
PaginationDefaultProps
} from "./common/pagination_props";
import {
getLocalizationMessage
} from "./utils/compatibility_utils";
export const PAGER_INFO_CLASS = "dx-info";
const InfoTextDefaultProps = {
pageCount: PaginationDefaultProps.pageCount,
pageIndex: PaginationDefaultProps.pageIndex,
itemCount: PaginationDefaultProps.itemCount
};
export class InfoText extends BaseInfernoComponent {
constructor() {
super(...arguments);
this.state = {};
this.refs = null;
this.rootElementRef = infernoCreateRef()
}
getInfoText() {
return this.props.infoText ?? getLocalizationMessage(this.context, "dxPagination-infoText")
}
getText() {
const {
pageCount: pageCount,
pageIndex: pageIndex,
itemCount: itemCount
} = this.props;
return format(this.getInfoText(), (pageIndex + 1).toString(), null === pageCount || void 0 === pageCount ? void 0 : pageCount.toString(), null === itemCount || void 0 === itemCount ? void 0 : itemCount.toString())
}
render() {
return createVNode(1, "div", "dx-info", this.getText(), 0, null, null, this.props.rootElementRef)
}
}
InfoText.defaultProps = InfoTextDefaultProps;