UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

72 lines (71 loc) 2.87 kB
import React, { ReactNode } from 'react'; import DataSetComponent, { DataSetComponentProps } from '../data-set/DataSetComponent'; import { QuickJumperPosition, SizeChangerPosition } from './enum'; import { Renderer } from '../field/FormField'; export declare type PagerType = 'page' | 'prev' | 'next' | 'first' | 'last' | 'jump-prev' | 'jump-next'; export interface PaginationProps extends DataSetComponentProps { total?: number; page?: number; pageSize?: number; maxPageSize?: number; onChange?: (page: number, pageSize: number) => void; beforeChange?: (page: number, pageSize: number) => Promise<boolean | undefined> | boolean | undefined | void; itemRender?: (page: number, type: PagerType) => ReactNode; pageSizeOptions?: string[]; pageSizeEditable?: boolean; sizeChangerPosition?: SizeChangerPosition; sizeChangerOptionRenderer?: Renderer; showSizeChanger?: boolean; showQuickJumper?: boolean | { goButton?: React.ReactNode; }; showSizeChangerLabel?: boolean; showTotal?: boolean | ((total: number, range: [number, number], counting?: boolean) => React.ReactNode); showPager?: boolean; hideOnSinglePage?: boolean; simple?: boolean; quickJumperPosition?: QuickJumperPosition; } export default class Pagination extends DataSetComponent<PaginationProps> { static displayName: string; static defaultProps: { suffixCls: string; sizeChangerPosition: SizeChangerPosition; quickJumperPosition: QuickJumperPosition; sizeChangerOptionRenderer: ({ text }: { text: any; }) => any; hideOnSinglePage: boolean; showSizeChanger: boolean; showQuickJumper: boolean; showSizeChangerLabel: boolean; showTotal: boolean; simple: boolean; }; pageInput?: number | ''; get pageSize(): number; get page(): number; get total(): number | undefined; get totalPage(): number; get next(): boolean; getObservableProps(props: any, context: any): any; handlePageSizeBeforeChange(value: any): boolean | Promise<boolean>; handlePageSizeChange(value: number): void; handleChange(page: number, pageSize: number): Promise<void>; handlePagerClick(page: any): void; getValidValue(value: any): any; jumpPage(page: any): Promise<void>; handleJumpChange(value: any): void; handleJumpGo(e: any): void; getOmitPropsKeys(): string[]; getOptions(): ReactNode; getPager(page: number, type: PagerType, active?: boolean, disabledSender?: boolean): JSX.Element; renderPagers(page: number): ReactNode; renderSizeChange(pageSize: number): ReactNode; renderTotal(pageSize: number, page: number, total: number): ReactNode; /** * 渲染快速跳至 */ renderQuickGo(): ReactNode; render(): JSX.Element | null; }