UNPKG

truly-ui

Version:

Web Components for Desktop Applications.

43 lines 5.23 kB
import { Directive, HostListener, Input } from '@angular/core'; import { TlToolTipContainer } from '../parts/tooltip-container'; import * as i0 from "@angular/core"; export class TooltipDirective { constructor(view, compiler) { this.view = view; this.compiler = compiler; } onMouseEnter() { this.show(); } onMouseLeave() { this.hide(); } show() { if ((this.tooltip.text !== '') && (this.tooltip.text !== null)) { const componentFactory = this.compiler.resolveComponentFactory(TlToolTipContainer); const componentRef = this.view.createComponent(componentFactory); componentRef.instance.setOptions(this.tooltip); componentRef.instance.setElement(this.view.element); } } hide() { this.view.clear(); } } /** @nocollapse */ TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive }); /** @nocollapse */ TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TooltipDirective, selector: "[tooltip]", inputs: { tooltip: "tooltip" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" } }, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipDirective, decorators: [{ type: Directive, args: [{ selector: '[tooltip]' }] }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { tooltip: [{ type: Input }], onMouseEnter: [{ type: HostListener, args: ['mouseenter'] }], onMouseLeave: [{ type: HostListener, args: ['mouseleave'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnVseS11aS9zcmMvY29tcG9uZW50cy90b29sdGlwL2RpcmVjdGl2ZXMvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFDekQsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBTWhFLE1BQU0sT0FBTyxnQkFBZ0I7SUFJM0IsWUFBcUIsSUFBc0IsRUFBVSxRQUFrQztRQUFsRSxTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQTBCO0lBQUksQ0FBQztJQUc1RixZQUFZO1FBQ1YsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUdELFlBQVk7UUFDVixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRU8sSUFBSTtRQUNWLElBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFHO1lBQ2hFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBRSxrQkFBa0IsQ0FBRSxDQUFDO1lBQ3JGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFFLGdCQUFnQixDQUFFLENBQUM7WUFDOUMsWUFBWSxDQUFDLFFBQVMsQ0FBQyxVQUFVLENBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBRSxDQUFDO1lBQ2xELFlBQVksQ0FBQyxRQUFTLENBQUMsVUFBVSxDQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFFLENBQUM7U0FDN0U7SUFDSCxDQUFDO0lBRU8sSUFBSTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7aUlBM0JVLGdCQUFnQjtxSEFBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBSDVCLFNBQVM7bUJBQUU7b0JBQ1YsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCOzhJQUdVLE9BQU87c0JBQWYsS0FBSztnQkFLTixZQUFZO3NCQURYLFlBQVk7dUJBQUUsWUFBWTtnQkFNM0IsWUFBWTtzQkFEWCxZQUFZO3VCQUFFLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCwgVmlld0NvbnRhaW5lclJlZiwgUmVuZGVyZXIyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGxUb29sVGlwIH0gZnJvbSAnLi4vdG9vbHRpcCc7XG5pbXBvcnQgeyBUb29sdGlwT3B0aW9ucyB9IGZyb20gJy4uL3Rvb2x0aXBPcHRpb25zJztcbmltcG9ydCB7IFRsVG9vbFRpcENvbnRhaW5lciB9IGZyb20gJy4uL3BhcnRzL3Rvb2x0aXAtY29udGFpbmVyJztcblxuXG5ARGlyZWN0aXZlKCB7XG4gIHNlbGVjdG9yOiAnW3Rvb2x0aXBdJ1xufSApXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSAge1xuXG4gIEBJbnB1dCgpIHRvb2x0aXA6IFRvb2x0aXBPcHRpb25zO1xuXG4gIGNvbnN0cnVjdG9yKCBwcml2YXRlIHZpZXc6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgY29tcGlsZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciApIHt9XG5cbiAgQEhvc3RMaXN0ZW5lciggJ21vdXNlZW50ZXInIClcbiAgb25Nb3VzZUVudGVyKCkge1xuICAgIHRoaXMuc2hvdygpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lciggJ21vdXNlbGVhdmUnIClcbiAgb25Nb3VzZUxlYXZlKCkge1xuICAgIHRoaXMuaGlkZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG93KCkge1xuICAgIGlmICggKHRoaXMudG9vbHRpcC50ZXh0ICE9PSAnJykgJiYgKHRoaXMudG9vbHRpcC50ZXh0ICE9PSBudWxsKSApIHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNvbXBpbGVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KCBUbFRvb2xUaXBDb250YWluZXIgKTtcbiAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMudmlldy5jcmVhdGVDb21wb25lbnQoIGNvbXBvbmVudEZhY3RvcnkgKTtcbiAgICAgICg8VGxUb29sVGlwQ29udGFpbmVyPmNvbXBvbmVudFJlZi5pbnN0YW5jZSkuc2V0T3B0aW9ucyggdGhpcy50b29sdGlwICk7XG4gICAgICAoPFRsVG9vbFRpcENvbnRhaW5lcj5jb21wb25lbnRSZWYuaW5zdGFuY2UpLnNldEVsZW1lbnQoIHRoaXMudmlldy5lbGVtZW50ICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoaWRlKCkge1xuICAgIHRoaXMudmlldy5jbGVhcigpO1xuICB9XG5cbn1cbiJdfQ==