You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.5 KiB
49 lines
1.5 KiB
/**
|
|
* Handle virtual list of the TreeNodes.
|
|
*/
|
|
import * as React from 'react';
|
|
import { FlattenNode, Key, DataEntity, ScrollTo } from './interface';
|
|
export declare const MOTION_KEY: string;
|
|
export declare const MotionEntity: DataEntity;
|
|
export interface NodeListRef {
|
|
scrollTo: ScrollTo;
|
|
}
|
|
interface NodeListProps {
|
|
prefixCls: string;
|
|
style: React.CSSProperties;
|
|
data: FlattenNode[];
|
|
motion: any;
|
|
focusable?: boolean;
|
|
activeItem: FlattenNode;
|
|
focused?: boolean;
|
|
tabIndex: number;
|
|
checkable?: boolean;
|
|
selectable?: boolean;
|
|
disabled?: boolean;
|
|
expandedKeys: Key[];
|
|
selectedKeys: Key[];
|
|
checkedKeys: Key[];
|
|
loadedKeys: Key[];
|
|
loadingKeys: Key[];
|
|
halfCheckedKeys: Key[];
|
|
keyEntities: Record<Key, DataEntity>;
|
|
dragging: boolean;
|
|
dragOverNodeKey: Key;
|
|
dropPosition: number;
|
|
height: number;
|
|
itemHeight: number;
|
|
virtual?: boolean;
|
|
onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;
|
|
onFocus?: React.FocusEventHandler<HTMLDivElement>;
|
|
onBlur?: React.FocusEventHandler<HTMLDivElement>;
|
|
onActiveChange: (key: Key) => void;
|
|
onListChangeStart: () => void;
|
|
onListChangeEnd: () => void;
|
|
}
|
|
/**
|
|
* We only need get visible content items to play the animation.
|
|
*/
|
|
export declare function getMinimumRangeTransitionRange(list: FlattenNode[], virtual: boolean, height: number, itemHeight: number): FlattenNode[];
|
|
declare const NodeList: React.ForwardRefExoticComponent<NodeListProps & React.RefAttributes<NodeListRef>>;
|
|
export default NodeList;
|