UNPKG

choerodon-ui

Version:

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

110 lines (109 loc) 3.68 kB
import React, { Component, ReactNode, ReactText } from 'react'; import DataSet from '../../pro/lib/data-set/DataSet'; import DsRecord from '../../pro/lib/data-set/Record'; import { TablePaginationConfig } from '../../pro/lib/table/interface'; import { PaginationProps } from '../../pro/lib/pagination/interface'; import { SpinProps } from '../spin'; import { Size } from '../_util/enum'; import Item from './Item'; import ConfigContext, { ConfigContextValue } from '../config-provider/ConfigContext'; export { ListItemProps, ListItemMetaProps } from './Item'; export declare type ColumnCount = 1 | 2 | 3 | 4 | 6 | 8 | 12 | 24; export declare type ColumnType = 'gutter' | 'column' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'; export interface ListGridType { gutter?: number; column?: ColumnCount; xs?: ColumnCount; sm?: ColumnCount; md?: ColumnCount; lg?: ColumnCount; xl?: ColumnCount; xxl?: ColumnCount; } export interface RowSelection { selectedRowKeys?: ReactText[]; defaultSelectedRowKeys?: ReactText[]; onChange?: (keys: ReactText[]) => void; } export interface ListProps { bordered?: boolean; className?: string; children?: ReactNode; dataSource?: any; extra?: ReactNode; grid?: ListGridType; id?: string; itemLayout?: string; loading?: boolean | SpinProps; loadMore?: ReactNode; paginationProps?: PaginationProps & { current?: number; defaultCurrent?: number; defaultPageSize?: number; tiny?: boolean; size?: string; onShowSizeChange?: Function; }; pagination?: TablePaginationConfig | boolean; prefixCls?: string; rowPrefixCls?: string; spinPrefixCls?: string; rowKey?: any; renderItem: any; size?: Size; split?: boolean; header?: ReactNode; footer?: ReactNode; empty?: ReactNode; locale?: Record<string, any>; dataSet?: DataSet; rowSelection?: RowSelection | boolean; } export interface ListLocale { emptyText: string; } export default class List extends Component<ListProps> { static displayName: string; static Item: typeof Item; static get contextType(): typeof ConfigContext; static defaultProps: { dataSource: never[]; bordered: boolean; split: boolean; loading: boolean; pagination: boolean; }; context: ConfigContextValue; stateCheckedKeys: ReactText[]; paginationCurrent: number; defaultPaginationProps: { page: number; pageSize: number; onChange: (page: number, pageSize: number) => void; total: number; }; private keys; get rowSelectionKeys(): ReactText[] | undefined; get checkedKeys(): ReactText[]; get paginationProps(): any; componentWillMount(): void; componentWillUnmount(): void; handleDataSetLoad(): void; processDataSetListener(flag: boolean): void; initDefaultCheckRows(): void; getContextValue(): { grid: ListGridType | undefined; getPrefixCls: typeof import("../configure").getPrefixCls; }; renderItem: (item: React.ReactElement<any, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)> | DsRecord, index: number) => any; isSomethingAfterLastItem(): boolean; renderEmpty: (contextLocale: ListLocale) => JSX.Element; getPrefixCls(): string; updateStateKey(value: any, key: any): (string | number)[]; handleChange(value: any, key: any): void; renderCheckBox(key: any): { element: () => JSX.Element; isChecked: boolean; } | undefined; render(): JSX.Element; }