@asi-ngtools/lib
Version:
This project is a little components library, simple to use, which will help you to simplify your project.
89 lines (88 loc) • 6.05 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Directive, Output, HostListener, EventEmitter } from '@angular/core';
var MouseWheelDirective = /** @class */ (function () {
function MouseWheelDirective() {
this.mouseWheelUp = new EventEmitter();
this.mouseWheelDown = new EventEmitter();
}
/**
* @param {?} event
* @return {?}
*/
MouseWheelDirective.prototype.onMouseWheelChrome = /**
* @param {?} event
* @return {?}
*/
function (event) {
this.mouseWheelFunc(event);
};
/**
* @param {?} event
* @return {?}
*/
MouseWheelDirective.prototype.onMouseWheelFirefox = /**
* @param {?} event
* @return {?}
*/
function (event) {
this.mouseWheelFunc(event);
};
/**
* @param {?} event
* @return {?}
*/
MouseWheelDirective.prototype.onMouseWheelIE = /**
* @param {?} event
* @return {?}
*/
function (event) {
this.mouseWheelFunc(event);
};
/**
* @param {?} event
* @return {?}
*/
MouseWheelDirective.prototype.mouseWheelFunc = /**
* @param {?} event
* @return {?}
*/
function (event) {
event = window.event || event;
/** @type {?} */
var delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));
if (delta > 0) {
this.mouseWheelUp.emit(event);
}
else if (delta < 0) {
this.mouseWheelDown.emit(event);
}
// for IE
event.returnValue = false;
// for Chrome and Firefox
if (event.preventDefault) {
event.preventDefault();
}
};
MouseWheelDirective.decorators = [
{ type: Directive, args: [{ selector: '[mouseWheel]' },] }
];
MouseWheelDirective.propDecorators = {
mouseWheelUp: [{ type: Output }],
mouseWheelDown: [{ type: Output }],
onMouseWheelChrome: [{ type: HostListener, args: ['mousewheel', ['$event'],] }],
onMouseWheelFirefox: [{ type: HostListener, args: ['DOMMouseScroll', ['$event'],] }],
onMouseWheelIE: [{ type: HostListener, args: ['onmousewheel', ['$event'],] }]
};
return MouseWheelDirective;
}());
export { MouseWheelDirective };
if (false) {
/** @type {?} */
MouseWheelDirective.prototype.mouseWheelUp;
/** @type {?} */
MouseWheelDirective.prototype.mouseWheelDown;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW91c2VXaGVlbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYXNpLW5ndG9vbHMvbGliLyIsInNvdXJjZXMiOlsibGliL2RpcmVjdGl2ZXMvbW91c2VXaGVlbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs0QkFNbkQsSUFBSSxZQUFZLEVBQUU7OEJBQ2hCLElBQUksWUFBWSxFQUFFOzs7Ozs7SUFFTCxnREFBa0I7Ozs7SUFBMUQsVUFBMkQsS0FBVTtRQUNuRSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQzVCOzs7OztJQUUyQyxpREFBbUI7Ozs7SUFBL0QsVUFBZ0UsS0FBVTtRQUN4RSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQzVCOzs7OztJQUV5Qyw0Q0FBYzs7OztJQUF4RCxVQUF5RCxLQUFVO1FBQ2pFLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDNUI7Ozs7O0lBRUQsNENBQWM7Ozs7SUFBZCxVQUFlLEtBQVU7UUFDdkIsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDOztRQUM5QixJQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0UsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDWixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNqQztRQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNuQzs7UUFFRCxLQUFLLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQzs7UUFFMUIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQzFCO0tBQ0Y7O2dCQS9CRixTQUFTLFNBQUMsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFOzs7K0JBRXBDLE1BQU07aUNBQ04sTUFBTTtxQ0FFTixZQUFZLFNBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO3NDQUlyQyxZQUFZLFNBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUM7aUNBSXpDLFlBQVksU0FBQyxjQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUM7OzhCQWpCMUM7O1NBS2EsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPdXRwdXQsIEhvc3RMaXN0ZW5lciwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vLyBDcmVkaXQgdG8gOiBodHRwOi8vYmxvZy5zb2RoYW5hbGlicmFyeS5jb20vMjAxNi8xMC9hbmd1bGFyLTItZGlyZWN0aXZlLWZvci1tb3VzZS13aGVlbC5odG1sIy5XYUZnWmNpclNIc1xyXG5cclxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW21vdXNlV2hlZWxdJyB9KVxyXG5leHBvcnQgY2xhc3MgTW91c2VXaGVlbERpcmVjdGl2ZSB7XHJcbiAgQE91dHB1dCgpIG1vdXNlV2hlZWxVcCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgbW91c2VXaGVlbERvd24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNld2hlZWwnLCBbJyRldmVudCddKSBvbk1vdXNlV2hlZWxDaHJvbWUoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5tb3VzZVdoZWVsRnVuYyhldmVudCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdET01Nb3VzZVNjcm9sbCcsIFsnJGV2ZW50J10pIG9uTW91c2VXaGVlbEZpcmVmb3goZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5tb3VzZVdoZWVsRnVuYyhldmVudCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdvbm1vdXNld2hlZWwnLCBbJyRldmVudCddKSBvbk1vdXNlV2hlZWxJRShldmVudDogYW55KSB7XHJcbiAgICB0aGlzLm1vdXNlV2hlZWxGdW5jKGV2ZW50KTtcclxuICB9XHJcblxyXG4gIG1vdXNlV2hlZWxGdW5jKGV2ZW50OiBhbnkpIHtcclxuICAgIGV2ZW50ID0gd2luZG93LmV2ZW50IHx8IGV2ZW50OyAvLyBvbGQgSUUgc3VwcG9ydFxyXG4gICAgY29uc3QgZGVsdGEgPSBNYXRoLm1heCgtMSwgTWF0aC5taW4oMSwgKGV2ZW50LndoZWVsRGVsdGEgfHwgLWV2ZW50LmRldGFpbCkpKTtcclxuICAgIGlmIChkZWx0YSA+IDApIHtcclxuICAgICAgICB0aGlzLm1vdXNlV2hlZWxVcC5lbWl0KGV2ZW50KTtcclxuICAgIH0gZWxzZSBpZiAoZGVsdGEgPCAwKSB7XHJcbiAgICAgICAgdGhpcy5tb3VzZVdoZWVsRG93bi5lbWl0KGV2ZW50KTtcclxuICAgIH1cclxuICAgIC8vIGZvciBJRVxyXG4gICAgZXZlbnQucmV0dXJuVmFsdWUgPSBmYWxzZTtcclxuICAgIC8vIGZvciBDaHJvbWUgYW5kIEZpcmVmb3hcclxuICAgIGlmIChldmVudC5wcmV2ZW50RGVmYXVsdCkge1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==