@true-directive/grid
Version:
Angular Data Grid from Yopsilon.
57 lines • 6.08 kB
JavaScript
import * as tslib_1 from "tslib";
/**
* Copyright (c) 2018-2019 Aleksey Melnikov, True Directive Company.
* @link https://truedirective.com/
* @license MIT
*/
import { Directive, Input, ElementRef } from '@angular/core';
import { MenuComponent } from './menu.component';
var MenuShowDirective = /** @class */ (function () {
function MenuShowDirective(_elementRef) {
this._elementRef = _elementRef;
this.isMenuItem = false;
}
MenuShowDirective.prototype.click = function (e) {
if (!this.isMenuItem) {
this.menu.showByTarget(e.target);
}
e.preventDefault();
};
MenuShowDirective.prototype.closePopup = function () {
this._elementRef.nativeElement.classList.remove('true-submenu-visible');
this.menu.closeSubMenus(null);
this.menu.closePopup(false);
};
MenuShowDirective.prototype.itemMouseEnter = function (e) {
if (this.isMenuItem) {
this.menu.showByTarget(e.target, 'right', e.parent);
this._elementRef.nativeElement.classList.add('true-submenu-visible');
}
};
MenuShowDirective.prototype.needClose = function (e) {
this.closePopup();
};
MenuShowDirective.prototype.ngOnInit = function () {
if (this._elementRef.nativeElement.classList.contains('true-menu-item')) {
this.isMenuItem = true;
}
};
tslib_1.__decorate([
Input('true-menu-show'),
tslib_1.__metadata("design:type", MenuComponent)
], MenuShowDirective.prototype, "menu", void 0);
MenuShowDirective = tslib_1.__decorate([
Directive({
selector: '[true-menu-show]',
host: {
'(click)': 'click($event)',
'(itemMouseEnter)': 'itemMouseEnter($event)',
'(needClose)': 'needClose($event)',
}
}),
tslib_1.__metadata("design:paramtypes", [ElementRef])
], MenuShowDirective);
return MenuShowDirective;
}());
export { MenuShowDirective };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1zaG93LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0cnVlLWRpcmVjdGl2ZS9ncmlkLyIsInNvdXJjZXMiOlsic3JjL2NvbnRyb2xzL21lbnUtc2hvdy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7O0VBSUU7QUFDRixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQXNCLE1BQU0sZUFBZSxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQVVqRDtJQXFDRSwyQkFBb0IsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFoQzNDLGVBQVUsR0FBWSxLQUFLLENBQUM7SUFnQ21CLENBQUM7SUE5QmhELGlDQUFLLEdBQUwsVUFBTSxDQUFNO1FBQ1YsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxzQ0FBVSxHQUFWO1FBQ0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO1FBQ3ZFLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCwwQ0FBYyxHQUFkLFVBQWUsQ0FBTTtRQUNuQixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3BELElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztTQUN0RTtJQUNILENBQUM7SUFFRCxxQ0FBUyxHQUFULFVBQVUsQ0FBTTtRQUNkLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsb0NBQVEsR0FBUjtRQUNFLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQWhDRDtRQURDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQzswQ0FDbEIsYUFBYTttREFBQztJQUhULGlCQUFpQjtRQVI3QixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsa0JBQWtCO1lBQzVCLElBQUksRUFBRTtnQkFDSixTQUFTLEVBQUUsZUFBZTtnQkFDMUIsa0JBQWtCLEVBQUUsd0JBQXdCO2dCQUM1QyxhQUFhLEVBQUUsbUJBQW1CO2FBQ25DO1NBQ0osQ0FBQztpREFzQ2lDLFVBQVU7T0FyQ2hDLGlCQUFpQixDQXNDN0I7SUFBRCx3QkFBQztDQUFBLEFBdENELElBc0NDO1NBdENZLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAxOSBBbGVrc2V5IE1lbG5pa292LCBUcnVlIERpcmVjdGl2ZSBDb21wYW55LlxyXG4gKiBAbGluayBodHRwczovL3RydWVkaXJlY3RpdmUuY29tL1xyXG4gKiBAbGljZW5zZSBNSVRcclxuKi9cclxuaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgRWxlbWVudFJlZiwgSW5qZWN0LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1lbnVDb21wb25lbnQgfSBmcm9tICcuL21lbnUuY29tcG9uZW50JztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbdHJ1ZS1tZW51LXNob3ddJyxcclxuICAgIGhvc3Q6IHtcclxuICAgICAgJyhjbGljayknOiAnY2xpY2soJGV2ZW50KScsXHJcbiAgICAgICcoaXRlbU1vdXNlRW50ZXIpJzogJ2l0ZW1Nb3VzZUVudGVyKCRldmVudCknLFxyXG4gICAgICAnKG5lZWRDbG9zZSknOiAnbmVlZENsb3NlKCRldmVudCknLFxyXG4gICAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVudVNob3dEaXJlY3RpdmUge1xyXG5cclxuICBASW5wdXQoJ3RydWUtbWVudS1zaG93JylcclxuICBtZW51OiBNZW51Q29tcG9uZW50O1xyXG5cclxuICBpc01lbnVJdGVtOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNsaWNrKGU6IGFueSkge1xyXG4gICAgaWYgKCF0aGlzLmlzTWVudUl0ZW0pIHtcclxuICAgICAgdGhpcy5tZW51LnNob3dCeVRhcmdldChlLnRhcmdldCk7XHJcbiAgICB9XHJcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVBvcHVwKCkge1xyXG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ3RydWUtc3VibWVudS12aXNpYmxlJylcclxuICAgIHRoaXMubWVudS5jbG9zZVN1Yk1lbnVzKG51bGwpO1xyXG4gICAgdGhpcy5tZW51LmNsb3NlUG9wdXAoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgaXRlbU1vdXNlRW50ZXIoZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5pc01lbnVJdGVtKSB7XHJcbiAgICAgIHRoaXMubWVudS5zaG93QnlUYXJnZXQoZS50YXJnZXQsICdyaWdodCcsIGUucGFyZW50KTtcclxuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ3RydWUtc3VibWVudS12aXNpYmxlJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZWVkQ2xvc2UoZTogYW55KSB7XHJcbiAgICB0aGlzLmNsb3NlUG9wdXAoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ3RydWUtbWVudS1pdGVtJykpIHtcclxuICAgICAgdGhpcy5pc01lbnVJdGVtID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHsgfVxyXG59XHJcbiJdfQ==