@open-e/oe-coordinator
Version:
This module is used to detect mouse movement on the border of HTMLElement. Useful usecase is to enable resize event in `div` element when mouse is on the border of it.
61 lines (60 loc) • 1.76 kB
TypeScript
import { PublicInterface } from "../model";
import { ClickEvent } from "./utilities/click.component";
import { ClassEvent } from "./utilities/class.component";
export declare namespace PublicAPI {
var ClassBehavior: typeof ClassEvent;
var ClickBehavior: typeof ClickEvent;
class CoordinateComponent {
element: HTMLElement;
private _element;
private _coordinates;
private _onBorder;
private _isDrag;
private _variation;
constructor(element: HTMLElement);
/**
* Return coordinates
*/
getCoordinates(): PublicInterface.Coordinate;
/**
* Detect when module is on border of element
*/
onBorder(): PublicInterface.OnBorder;
/**
* Detect hen drag starts
*/
onDragStart(): PublicInterface.isDrag;
/**
* addEventListener to detect when on border
*
* @param name 'mousedown' | 'mouseup' | 'mouseover'
*/
addListener(name: string): void;
/**
* Set variation to detect mouse on border
*
* @param value
*/
setVariation(value: number): void;
/**
* calculate current coordinate of HTMlelement
*
* @param element
*/
private setCoordinates;
/**
* Private method to assign drag start
*
* @param name
* @param mouse
*/
private detectOnDragStart;
/**
* detect when mouse click is on border
*
* @param mouse
*/
private detectOnborder;
private detectMouseUpOutSide;
}
}