kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
55 lines (54 loc) • 1.93 kB
TypeScript
/**
* Copied from https://github.com/sarink/react-file-drop
* For React 16.8 compatibility
*/
import React, { ReactNode } from 'react';
import window from 'global/window';
export declare type FileDropProps = {
dropEffect?: 'copy' | 'move' | 'link' | 'none';
frame?: typeof document | typeof window | HTMLElement;
className?: string;
targetClassName?: string;
draggingOverFrameClassName?: string;
draggingOverTargetClassName?: string;
onDragOver?: (event: any) => void;
onDragLeave?: (event: any) => void;
onDrop?: (fileList: FileList, event: any) => void;
onFrameDragEnter?: (event: any) => void;
onFrameDragLeave?: (event: any) => void;
onFrameDrop?: (event: any) => void;
children?: ReactNode;
};
/** @typedef {import('./file-drop').FileDropProps} FileDropProps */
/** @augments React.PureComponent<FileDropProps> */
declare class FileDrop extends React.PureComponent<FileDropProps> {
static isIE: () => any;
static eventHasFiles: (event: any) => boolean;
static defaultProps: {
dropEffect: string;
frame: any;
className: string;
targetClassName: string;
draggingOverFrameClassName: string;
draggingOverTargetClassName: string;
};
frameDragCounter: number;
state: {
draggingOverFrame: boolean;
draggingOverTarget: boolean;
};
componentDidMount(): void;
componentDidUpdate(prevProps: any): void;
componentWillUnmount(): void;
resetDragging: () => void;
handleWindowDragOverOrDrop: (event: any) => void;
handleFrameDrag: (event: any) => void;
handleFrameDrop: (event: any) => void;
handleDragOver: (event: any) => void;
handleDragLeave: (event: any) => void;
handleDrop: (event: any) => void;
stopFrameListeners: (frame: any) => void;
startFrameListeners: (frame: any) => void;
render(): React.JSX.Element;
}
export default FileDrop;