gentics-ui-core
Version:
This is the common core framework for the Gentics CMS and Mesh UI, and other Angular applications.
26 lines (25 loc) • 1.02 kB
TypeScript
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
/**
* A factory that creates a tracker instance that listens for dragenter/dragleave/drop events
* on a DOM element and tracks the event state.
* When the target element contains child elements, DOM events are fired in a confusing order.
*
* For example, when the user drags into the div, the into the <a>, then out:
* <div><a><span></span></a></div>
* These events are triggered:
* type=dragenter target=<div>
* type=dragenter target=<a>
* type=dragleave target=<div>
* type=dragleave target=<div>
*
* This service wraps the browser-specific oddities into an rxjs Observable that emits on changes.
*/
export declare class DragStateTrackerFactory {
trackElement(target: EventTarget): Observable<FileDragState>;
static ɵfac: i0.ɵɵFactoryDeclaration<DragStateTrackerFactory, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<DragStateTrackerFactory>;
}
export declare type FileDragState = {
type: string;
}[];