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.

94 lines (74 loc) 2.4 kB
# Open Editor - Coordinator 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. ## How to use ``` Step 1: npm install @open-e/oe-coordinator Step 2: import package Step 3: Setting border css property to targeted HTMLElement ``` ### 1. Detect on border of HTMLElement __Example__ ```javascript import { Component, ElementRef, OnInit } from "@angular/core"; import { Observable, of } from "rxjs"; import { PublicAPI } from "@open-e/oe-coordinator"; @Component({ selector: "app-root", templateUrl: "./app.component.html", styleUrls: ["./app.component.scss"] }) export class AppComponent implements OnInit { title = "border-tester"; private _coordinateService: PublicAPI.CoordinateComponent; constructor(private _ref: ElementRef) {} ngOnInit() { this._coordinateService = new PublicAPI.CoordinateComponent( document.querySelector('.container') ); } onBorder($event) { console.log("on Border", $event.target, 'onBorder', this._coordinateService.onBorder()); console.log ("onDragStartTest", this._coordinateService.onDragStart()); } onMouseOver($event) { console.log("on Border", $event.target, 'onBorder', this._coordinateService.onBorder()); console.log ("onDragStartTest", this._coordinateService.onDragStart()); } } ``` ### 2. Trigger Dragging Menu __Step 1: Import Module__ ```javascript import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; import { EngineModule as EventEffectModule } from "@open-e/oe-coordinator"; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, EventEffectModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } ``` __Step 2: Using in your component__ ```javascript import { Component} from "@angular/core"; @Component({ selector: "app-root", template: `<div horizonDrag min="-200" max="500" class="container"></div>`, styleUrls: ["./app.component.scss"] }) export class AppComponent{ } ``` ### Trigger Zoom Effects ```javascript <div zoom-editor maxScale='4' minScale='0.5' accumulativeVal='0.1'></div> ```