UNPKG

@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
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; } }