mirror of
https://github.com/bendtherules/chart-builder-demo.git
synced 2026-08-18 13:42:05 +00:00
33 lines
1.1 KiB
JavaScript
33 lines
1.1 KiB
JavaScript
(function(){
|
|
var ngDragEventDirectives = {};
|
|
|
|
angular.forEach(
|
|
'drag dragend dragenter dragexit dragleave dragover dragstart drop'.split(' '),
|
|
function(eventName) {
|
|
var directiveName = 'ng' + eventName.charAt(0).toUpperCase() + eventName.slice(1);
|
|
|
|
ngDragEventDirectives[directiveName] = ['$parse', '$rootScope', function($parse, $rootScope) {
|
|
return {
|
|
restrict: 'A',
|
|
compile: function($element, attr) {
|
|
var fn = $parse(attr[directiveName], null, true);
|
|
|
|
return function ngDragEventHandler(scope, element) {
|
|
element.on(eventName, function(event) {
|
|
var callback = function() {
|
|
fn(scope, {$event: event});
|
|
};
|
|
|
|
scope.$apply(callback);
|
|
});
|
|
};
|
|
}
|
|
};
|
|
}];
|
|
}
|
|
);
|
|
|
|
angular
|
|
.module('ngDrag', [])
|
|
.directive(ngDragEventDirectives);
|
|
}()); |