@alifd/next
Version:
A configurable component library for web built on React.
45 lines (44 loc) • 2.19 kB
TypeScript
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import type { DragGapType, TransferItemProps, TransferItemState } from '../types';
declare const Item: typeof import("../../menu/view/selectable-item").default, CheckboxItem: typeof import("../../menu/view/checkbox-item").default;
type ItemRef = React.ComponentRef<typeof CheckboxItem> | React.ComponentRef<typeof Item> | null;
export default class TransferItem extends Component<TransferItemProps, TransferItemState> {
static menuChildType: string;
static propTypes: {
prefix: PropTypes.Requireable<string>;
mode: PropTypes.Requireable<string>;
value: PropTypes.Requireable<any[]>;
disabled: PropTypes.Requireable<boolean>;
item: PropTypes.Requireable<object>;
onCheck: PropTypes.Requireable<(...args: any[]) => any>;
onClick: PropTypes.Requireable<(...args: any[]) => any>;
needHighlight: PropTypes.Requireable<boolean>;
itemRender: PropTypes.Requireable<(...args: any[]) => any>;
draggable: PropTypes.Requireable<boolean>;
onDragStart: PropTypes.Requireable<(...args: any[]) => any>;
onDragOver: PropTypes.Requireable<(...args: any[]) => any>;
onDragEnd: PropTypes.Requireable<(...args: any[]) => any>;
onDrop: PropTypes.Requireable<(...args: any[]) => any>;
dragPosition: PropTypes.Requireable<string>;
dragValue: PropTypes.Requireable<string>;
dragOverValue: PropTypes.Requireable<string>;
panelPosition: PropTypes.Requireable<string>;
};
addHighlightTimer: ReturnType<typeof setTimeout>;
removeHighlightTimer: ReturnType<typeof setTimeout>;
item: ItemRef;
dragGap: DragGapType;
constructor(props: TransferItemProps);
componentDidMount(): void;
componentWillUnmount(): void;
getItemDOM(ref: ItemRef): void;
handleClick(): void;
handleDragStart(ev: React.DragEvent): void;
getDragGap(e: React.DragEvent<HTMLElement>): "after" | "before";
handleDragOver(e: React.DragEvent<HTMLElement>): void;
handleDragEnd(): void;
handleDrop(e: React.DragEvent): void;
render(): React.JSX.Element;
}
export {};