UNPKG

react-moveable

Version:

A React Component that create Moveable, Draggable, Resizable, Scalable, Rotatable, Warpable, Pinchable, Groupable.

61 lines (60 loc) 2.55 kB
import * as React from "react"; import Dragger from "@daybrush/drag"; import { MoveableManagerProps, MoveableManagerState, Able } from "./types"; import CustomDragger from "./CustomDragger"; declare const ControlBoxElement: { new (props: any): { element: HTMLDivElement; render(): React.DOMElement<{ children?: React.ReactNode; className: string; }, Element>; componentDidMount(): void; componentWillUnmount(): void; getElement(): HTMLDivElement; context: any; setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{ [key: string]: any; }>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void; forceUpdate(callBack?: (() => void) | undefined): void; readonly props: Readonly<{ [key: string]: any; }> & Readonly<{ children?: React.ReactNode; }>; state: Readonly<{}>; refs: { [key: string]: React.ReactInstance; }; }; contextType?: React.Context<any> | undefined; }; export default class MoveableManager<T = {}, U = {}> extends React.PureComponent<MoveableManagerProps<T>, MoveableManagerState<U>> { static defaultProps: Required<MoveableManagerProps>; state: MoveableManagerState<U>; targetAbles: Array<Able<T>>; controlAbles: Array<Able<T>>; controlBox: typeof ControlBoxElement extends new (...args: any[]) => infer K ? K : never; areaElement: HTMLElement; targetDragger: Dragger; controlDragger: Dragger; customDragger: CustomDragger; render(): JSX.Element; componentDidMount(): void; componentDidUpdate(prevProps: MoveableManagerProps<T>, prevState: MoveableManagerState<U>): void; componentWillUnmount(): void; getContainer(): HTMLElement | SVGElement; isMoveableElement(target: HTMLElement): boolean; dragStart(e: MouseEvent | TouchEvent): void; isInside(clientX: number, clientY: number): boolean; updateRect(type?: "Start" | "" | "End", isTarget?: boolean, isSetState?: boolean): void; updateEvent(prevProps: MoveableManagerProps<T>): void; updateTarget(type?: "Start" | "" | "End"): void; checkUpdate(): void; triggerEvent(name: string, e: any): any; protected unsetAbles(): void; protected updateAbles(ables?: Able[], eventAffix?: string): void; protected updateState(nextState: any, isSetState?: boolean): void; protected renderAbles(): any[]; } export {};