choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
38 lines (37 loc) • 1.67 kB
TypeScript
import React, { Component, ReactElement, ReactNode } from 'react';
import DataSet from '../../data-set/DataSet';
import { ElementProps } from '../../core/ViewComponent';
import { ButtonProps } from '../../button/Button';
import { PaginationProps } from '../../pagination/Pagination';
import TableContext, { TableContextValue } from '../TableContext';
export interface TableToolBarProps extends ElementProps {
dataSet: DataSet;
queryDataSet?: DataSet;
queryFields: ReactElement<any>[];
queryFieldsLimit?: number;
buttons: ReactElement<ButtonProps>[];
pagination?: ReactElement<PaginationProps>;
onQuery?: () => void;
onReset?: () => void;
}
export default class TableToolBar extends Component<TableToolBarProps, any> {
static get contextType(): typeof TableContext;
static displayName: string;
static defaultProps: {
queryFieldsLimit: number;
pagination: null;
};
context: TableContextValue;
modal: any;
get prefixCls(): string;
handleFieldEnter(): void;
handleQueryReset(): void;
handleQuery(collapse?: boolean): Promise<void>;
componentWillUnmount(): void;
getQueryBar(): ReactNode;
getDirtyInfo(dataSet: DataSet | undefined, moreFields: ReactElement<any>[]): JSX.Element | undefined;
getMoreButton(moreFields: ReactElement<any>[]): JSX.Element;
createFields(elements: ReactElement<any>[], dataSet: DataSet, isMore: boolean): React.ReactElement<any, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)>[];
openMore(children: ReactNode): void;
render(): (JSX.Element | undefined)[];
}