UNPKG

choerodon-ui

Version:

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

197 lines (196 loc) 7.57 kB
/// <reference types="lodash" /> import { ReactNode } from 'react'; import { ColumnProps } from './Column'; import DataSet from '../data-set/DataSet'; import Record from '../data-set/Record'; import { DragColumnAlign, TableAutoHeightType, TableColumnTooltip, TableHeightType, TableQueryBarType } from './enum'; import ColumnGroups from './ColumnGroups'; import ColumnGroup from './ColumnGroup'; import { Customized, expandIconProps, TablePaginationConfig } from './Table'; import TableEditor from './TableEditor'; export declare const SELECTION_KEY = "__selection-column__"; export declare const ROW_NUMBER_KEY = "__row-number-column__"; export declare const DRAG_KEY = "__drag-column__"; export declare const EXPAND_KEY = "__expand-column__"; export declare const CUSTOMIZED_KEY = "__customized-column__"; export declare type HeaderText = { name: string; label: string; }; export declare const getIdList: (startId: number, endId: number) => any[]; export declare function mergeDefaultProps(originalColumns: ColumnProps[], customizedColumns?: object, parent?: ColumnProps | null, defaultKey?: number[]): ColumnProps[]; export declare function normalizeColumns(elements: ReactNode, customizedColumns?: object, parent?: ColumnProps | null, defaultKey?: number[]): any[]; export default class TableStore { node: any; editors: Map<string, TableEditor>; props: any; customized: Customized; tempCustomized: Customized; loading?: boolean; originalColumns: ColumnProps[]; bodyHeight: number; width?: number; height?: number; totalHeight?: number; lastScrollTop: number; lockColumnsBodyRowsHeight: any; lockColumnsFootRowsHeight: any; lockColumnsHeadRowsHeight: any; expandedRows: (string | number)[]; isHeaderHover?: boolean; hoverRow?: Record; clickRow?: Record; currentEditorName?: string; styledHidden?: boolean; rowHighLight: boolean; customizedActiveKey: string[]; mouseBatchChooseStartId: number; mouseBatchChooseEndId: number; mouseBatchChooseState: boolean; mouseBatchChooseIdList?: number[]; multiLineHeight: number[]; columnResizing?: boolean; inBatchExpansion: boolean; get dataSet(): DataSet; get prefixCls(): string; get customizable(): boolean; get autoHeight(): { type: TableAutoHeightType; diff: number; } | undefined; get heightType(): TableHeightType; get originalHeightType(): TableHeightType; /** * number 矫正虚拟滚动由于样式问题导致的高度不符问题 */ get virtualRowHeight(): number; get virtual(): boolean; get virtualHeight(): number; get virtualStartIndex(): number; get virtualTop(): number; get virtualData(): Record[]; get hidden(): boolean; get alwaysShowRowBox(): boolean; get keyboard(): boolean; get columnResizable(): boolean; get columnHideable(): boolean; /** * 表头支持编辑 */ get columnTitleEditable(): boolean; get pagination(): TablePaginationConfig | false | undefined; get dragColumnAlign(): DragColumnAlign | undefined; get columnDraggable(): boolean; get rowDraggable(): boolean; get rowHeight(): 'auto' | number; get autoFootHeight(): boolean; get emptyText(): ReactNode; get highLightRow(): boolean | string; get parityRow(): boolean; get autoFocus(): boolean; get selectedHighLightRow(): boolean; get editorNextKeyEnterDown(): boolean; get border(): boolean; get queryBar(): TableQueryBarType; get expandIcon(): (props: expandIconProps) => ReactNode; get pristine(): boolean; get currentEditRecord(): Record | undefined; set currentEditRecord(record: Record | undefined); showCachedSelection?: boolean; get isTree(): boolean; get editing(): boolean; get hasRowBox(): boolean; get useMouseBatchChoose(): boolean; get showSelectionTips(): boolean; get overflowX(): boolean; get overflowY(): boolean; customizedColumnHeader(): JSX.Element; get customizedColumn(): ColumnProps | undefined; get expandColumn(): ColumnProps | undefined; get rowNumberColumn(): ColumnProps | undefined; get selectionColumn(): ColumnProps | undefined; get draggableColumn(): ColumnProps | undefined; get columns(): ColumnProps[]; get leftColumns(): ColumnProps[]; get centerColumns(): ColumnProps[]; get rightColumns(): ColumnProps[]; get columnGroups(): ColumnGroups; get groupedColumns(): ColumnGroup[]; get leftGroupedColumns(): ColumnGroup[]; get centerGroupedColumns(): ColumnGroup[]; get rightGroupedColumns(): ColumnGroup[]; get leafColumns(): ColumnProps[]; get leftLeafColumns(): ColumnProps[]; get centerLeafColumns(): ColumnProps[]; get rightLeafColumns(): ColumnProps[]; get leafNamedColumns(): ColumnProps[]; get totalLeafColumnsWidth(): number; get leftLeafColumnsWidth(): number; get rightLeafColumnsWidth(): number; get hasCheckFieldColumn(): boolean; get hasFooter(): boolean; get isAnyColumnsResizable(): boolean; get isAnyColumnsLock(): boolean; get isAnyColumnsLeftLock(): boolean; get isAnyColumnsRightLock(): boolean; get data(): Record[]; get indeterminate(): boolean; get allChecked(): boolean; get expandIconAsCell(): boolean; get expandIconColumnIndex(): number; get inlineEdit(): boolean; private handleSelectAllChange; constructor(node: any); getColumnTooltip(column: ColumnProps): TableColumnTooltip; getColumnHeaders(): Promise<HeaderText[]>; showEditor(name: string): void; setLastScrollTop(lastScrollTop: number): void; hideEditor(): void; changeMouseBatchChooseIdList(idList: number[]): void; showNextEditor(name: string, reserve: boolean): void; setProps(props: any): void; updateProps(props: any): void; initColumns(): void; isRowExpanded(record: Record): boolean; /** * * @param record 想修改的record * @param expanded 设置是否展开 * @param disHandler 设置是否需要触发展开事件 */ setRowExpanded(record: Record, expanded: boolean, disHandler?: boolean): void; isRowPending(record: Record): boolean; setRowPending(record: Record, pending: boolean): void; isRowLoaded(record: Record): boolean; setRowLoaded(record: Record, loaded: boolean): void; isRowHover(record: Record): boolean; isRowClick(record: Record): boolean; setRowClicked(record: Record, click: boolean): void; get canTreeLoadData(): boolean; get isRowHighLight(): boolean; setRowHighLight(highLight: boolean): void; setRowHover(record: Record, hover: boolean): void; setMultiLineHeight(multiLineHeight: number): void; expandAll(): void; collapseAll(): void; onTreeNodeLoad({ record }: { record: Record; }): Promise<any>; private getLeafColumns; renderSelectionBox({ record }: { record: any; }): ReactNode; renderRowNumber({ record, dataSet }: { record: any; dataSet: any; }): ReactNode; renderDragBox({ record }: { record: any; }): any; changeCustomizedColumnValue(column: ColumnProps, value: object): void; saveCustomized(customized?: Customized | null): void; saveCustomizedDebounce: ((customized?: Customized | null | undefined) => void) & import("lodash").Cancelable; openCustomizationModal(modal: any): void; loadCustomized(): Promise<void>; private multipleSelectionRenderer; }