primeng
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primeng) [{"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("primeng/dom")):"function"==typeof define&&define.amd?define("primeng/dragdrop",["exports","@angular/core","@angular/common","primeng/dom"],t):t(((e=e||self).primeng=e.primeng||{},e.primeng.dragdrop={}),e.ng.core,e.ng.common,e.primeng.dom)}(this,(function(e,t,n,r){"use strict";var o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,s=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(i<3?o(s):i>3?o(t,n,s):o(t,n))||s);return i>3&&s&&Object.defineProperty(t,n,s),s},i=function(){function e(e,n){this.el=e,this.zone=n,this.onDragStart=new t.EventEmitter,this.onDragEnd=new t.EventEmitter,this.onDrag=new t.EventEmitter}return Object.defineProperty(e.prototype,"pDraggableDisabled",{get:function(){return this._pDraggableDisabled},set:function(e){this._pDraggableDisabled=e,this._pDraggableDisabled?this.unbindMouseListeners():(this.el.nativeElement.draggable=!0,this.bindMouseListeners())},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){this.pDraggableDisabled||(this.el.nativeElement.draggable=!0,this.bindMouseListeners())},e.prototype.bindDragListener=function(){var e=this;this.dragListener||this.zone.runOutsideAngular((function(){e.dragListener=e.drag.bind(e),e.el.nativeElement.addEventListener("drag",e.dragListener)}))},e.prototype.unbindDragListener=function(){var e=this;this.dragListener&&this.zone.runOutsideAngular((function(){e.el.nativeElement.removeEventListener("drag",e.dragListener),e.dragListener=null}))},e.prototype.bindMouseListeners=function(){var e=this;this.mouseDownListener||this.mouseUpListener||this.zone.runOutsideAngular((function(){e.mouseDownListener=e.mousedown.bind(e),e.mouseUpListener=e.mouseup.bind(e),e.el.nativeElement.addEventListener("mousedown",e.mouseDownListener),e.el.nativeElement.addEventListener("mouseup",e.mouseUpListener)}))},e.prototype.unbindMouseListeners=function(){var e=this;this.mouseDownListener&&this.mouseUpListener&&this.zone.runOutsideAngular((function(){e.el.nativeElement.removeEventListener("mousedown",e.mouseDownListener),e.el.nativeElement.removeEventListener("mouseup",e.mouseUpListener),e.mouseDownListener=null,e.mouseUpListener=null}))},e.prototype.drag=function(e){this.onDrag.emit(e)},e.prototype.dragStart=function(e){this.allowDrag()&&!this.pDraggableDisabled?(this.dragEffect&&(e.dataTransfer.effectAllowed=this.dragEffect),e.dataTransfer.setData("text",this.scope),this.onDragStart.emit(e),this.bindDragListener()):e.preventDefault()},e.prototype.dragEnd=function(e){this.onDragEnd.emit(e),this.unbindDragListener()},e.prototype.mousedown=function(e){this.handle=e.target},e.prototype.mouseup=function(e){this.handle=null},e.prototype.allowDrag=function(){return!this.dragHandle||!this.handle||r.DomHandler.matches(this.handle,this.dragHandle)},e.prototype.ngOnDestroy=function(){this.unbindDragListener(),this.unbindMouseListeners()},e.ctorParameters=function(){return[{type:t.ElementRef},{type:t.NgZone}]},o([t.Input("pDraggable")],e.prototype,"scope",void 0),o([t.Input()],e.prototype,"dragEffect",void 0),o([t.Input()],e.prototype,"dragHandle",void 0),o([t.Output()],e.prototype,"onDragStart",void 0),o([t.Output()],e.prototype,"onDragEnd",void 0),o([t.Output()],e.prototype,"onDrag",void 0),o([t.Input()],e.prototype,"pDraggableDisabled",null),o([t.HostListener("dragstart",["$event"])],e.prototype,"dragStart",null),o([t.HostListener("dragend",["$event"])],e.prototype,"dragEnd",null),e=o([t.Directive({selector:"[pDraggable]"})],e)}(),s=function(){function e(e,n){this.el=e,this.zone=n,this.onDragEnter=new t.EventEmitter,this.onDragLeave=new t.EventEmitter,this.onDrop=new t.EventEmitter}return e.prototype.ngAfterViewInit=function(){this.pDroppableDisabled||this.bindDragOverListener()},e.prototype.bindDragOverListener=function(){var e=this;this.dragOverListener||this.zone.runOutsideAngular((function(){e.dragOverListener=e.dragOver.bind(e),e.el.nativeElement.addEventListener("dragover",e.dragOverListener)}))},e.prototype.unbindDragOverListener=function(){var e=this;this.dragOverListener&&this.zone.runOutsideAngular((function(){e.el.nativeElement.removeEventListener("dragover",e.dragOverListener),e.dragOverListener=null}))},e.prototype.dragOver=function(e){e.preventDefault()},e.prototype.drop=function(e){this.allowDrop(e)&&(e.preventDefault(),this.onDrop.emit(e))},e.prototype.dragEnter=function(e){e.preventDefault(),this.dropEffect&&(e.dataTransfer.dropEffect=this.dropEffect),this.onDragEnter.emit(e)},e.prototype.dragLeave=function(e){e.preventDefault(),this.onDragLeave.emit(e)},e.prototype.allowDrop=function(e){var t=e.dataTransfer.getData("text");if("string"==typeof this.scope&&t==this.scope)return!0;if(this.scope instanceof Array)for(var n=0;n<this.scope.length;n++)if(t==this.scope[n])return!0;return!1},e.prototype.ngOnDestroy=function(){this.unbindDragOverListener()},e.ctorParameters=function(){return[{type:t.ElementRef},{type:t.NgZone}]},o([t.Input("pDroppable")],e.prototype,"scope",void 0),o([t.Input()],e.prototype,"pDroppableDisabled",void 0),o([t.Input()],e.prototype,"dropEffect",void 0),o([t.Output()],e.prototype,"onDragEnter",void 0),o([t.Output()],e.prototype,"onDragLeave",void 0),o([t.Output()],e.prototype,"onDrop",void 0),o([t.HostListener("drop",["$event"])],e.prototype,"drop",null),o([t.HostListener("dragenter",["$event"])],e.prototype,"dragEnter",null),o([t.HostListener("dragleave",["$event"])],e.prototype,"dragLeave",null),e=o([t.Directive({selector:"[pDroppable]"})],e)}(),a=function(){function e(){}return e=o([t.NgModule({imports:[n.CommonModule],exports:[i,s],declarations:[i,s]})],e)}();e.DragDropModule=a,e.Draggable=i,e.Droppable=s,Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=primeng-dragdrop.umd.min.js.map