UNPKG

ng-image-drag-drop

Version:

Drag & Drop for Angular - based on HTML5 with no external dependencies.

100 lines (99 loc) 3.73 kB
import { ElementRef, EventEmitter, OnInit, Renderer2, NgZone, OnDestroy } from '@angular/core'; import { NgDragDropService } from '../services/ng-drag-drop.service'; import * as i0 from "@angular/core"; export declare class Draggable implements OnInit, OnDestroy { protected el: ElementRef; private renderer; private ng2DragDropService; private zone; /** * The data that will be avaliable to the droppable directive on its `onDrop()` event. */ dragData: any; /** * The selector that defines the drag Handle. * If defined drag will only be allowed if dragged from the selector element. */ dragHandle: string; /** * Currently not used */ dragEffect: string; /** * Defines compatible drag drop pairs. Values must match both in draggable and droppable.dropScope. */ dragScope: string | Array<string>; /** * The CSS class applied to a draggable element. If a dragHandle is defined then its applied to that handle * element only. By default it is used to change the mouse over pointer. */ dragHandleClass: string; /** * CSS class applied on the source draggable element while being dragged. */ dragClass: string; /** * CSS class applied on the drag ghost when being dragged. */ dragTransitClass: string; /** * The url to image that will be used as custom drag image when the draggable is being dragged. */ set dragImage(value: string); get dragImage(): string; /** * Defines if drag is enabled. `true` by default. */ set dragEnabled(value: boolean); get dragEnabled(): boolean; /** * Event fired when Drag is started */ onDragStart: EventEmitter<any>; /** * Event fired while the element is being dragged */ onDrag: EventEmitter<any>; /** * Event fired when drag ends */ onDragEnd: EventEmitter<any>; /** * @private * Keeps track of mouse over element that is used to determine drag handles */ mouseDownElement: any; /** * @private * Backing field for the dragEnabled property */ _dragEnabled: boolean; /** * @private * Backing field for the dragImage property */ _dragImage: string; /** * @private * Image element for the dragImage */ dragImageElement: HTMLImageElement; /** * @private * Function for unbinding the drag listener */ unbindDragListener: Function; constructor(el: ElementRef, renderer: Renderer2, ng2DragDropService: NgDragDropService, zone: NgZone); ngOnInit(): void; ngOnDestroy(): void; dragStart(e: any): void; drag(e: any): void; dragEnd(e: any): void; mousedown(e: any): void; private allowDrag; private applyDragHandleClass; private getDragHandleElement; unbindDragListeners(): void; static ɵfac: i0.ɵɵFactoryDeclaration<Draggable, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<Draggable, "[draggable]", never, { "dragData": { "alias": "dragData"; "required": false; }; "dragHandle": { "alias": "dragHandle"; "required": false; }; "dragEffect": { "alias": "dragEffect"; "required": false; }; "dragScope": { "alias": "dragScope"; "required": false; }; "dragHandleClass": { "alias": "dragHandleClass"; "required": false; }; "dragClass": { "alias": "dragClass"; "required": false; }; "dragTransitClass": { "alias": "dragTransitClass"; "required": false; }; "dragImage": { "alias": "dragImage"; "required": false; }; "dragEnabled": { "alias": "dragEnabled"; "required": false; }; }, { "onDragStart": "onDragStart"; "onDrag": "onDrag"; "onDragEnd": "onDragEnd"; }, never, never, false, never>; }