{"version":3,"file":"ngx-dynamic-tooltip.mjs","sources":["../../../projects/ngx-dynamic-tooltip/src/lib/ngx-dynamic-tooltip.service.ts","../../../projects/ngx-dynamic-tooltip/src/lib/ngx-dynamic-tooltip.component.ts","../../../projects/ngx-dynamic-tooltip/src/lib/ngx-dynamic-tooltip.component.html","../../../projects/ngx-dynamic-tooltip/src/lib/tooltip.directive.ts","../../../projects/ngx-dynamic-tooltip/src/lib/ngx-dynamic-tooltip.module.ts","../../../projects/ngx-dynamic-tooltip/src/public-api.ts","../../../projects/ngx-dynamic-tooltip/src/ngx-dynamic-tooltip.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class NgxDynamicTooltipService {\n\n  constructor() { }\n}\n","import {\n  Component,\n  ElementRef,\n  HostListener,\n  Inject,\n  Renderer2,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n  selector: 'ngx-dynamic-tooltip',\n  templateUrl: './ngx-dynamic-tooltip.component.html',\n  styleUrls: ['../../style.scss'],\n})\nexport class NgxDynamicTooltipComponent {\n  showTooltip = true;\n  constructor(\n    private el: ElementRef,\n    @Inject(DOCUMENT) private doc: Document,\n    @Inject('tooltipHost')\n    private renderer: Renderer2\n  ) {}\n  @HostListener('mouseenter', ['$event'])\n  onMouseEnter(event: MouseEvent) {}\n  @HostListener('mouseleave', ['$event'])\n  onMouseLeave(event: MouseEvent) {\n    this.doc.body.removeChild(this.el.nativeElement);\n  }\n}\n","<div>\r\n  <ng-content></ng-content>\r\n</div>\r\n","import { NgxDynamicTooltipComponent } from './ngx-dynamic-tooltip.component';\nimport { DOCUMENT } from '@angular/common';\nimport {\n  ApplicationRef,\n  ComponentRef,\n  Directive,\n  ElementRef,\n  HostListener,\n  Inject,\n  Injector,\n  Input,\n  NgZone,\n  Renderer2,\n  TemplateRef,\n  Type,\n  ViewContainerRef,\n} from '@angular/core';\n\n@Directive({\n  selector: '[tooltip]',\n})\nexport class TooltipDirective {\n  tooltipContainer: HTMLElement;\n  docBody: HTMLElement;\n  @Input() tooltip: string | TemplateRef<any> | Type<any>;\n  @Input() content: any;\n  @Input() placement: 'top' | 'bottom' | 'right' | 'left' = 'left';\n  selectedTooltip: any;\n  tooltipCompRef: ComponentRef<NgxDynamicTooltipComponent>;\n  elementRect: DOMRect;\n  constructor(\n    @Inject(DOCUMENT) private doc: Document,\n    private renderer: Renderer2,\n    private vc: ViewContainerRef,\n    private el: ElementRef,\n    private appRef: ApplicationRef,\n    private ngZone: NgZone\n  ) {}\n\n  @HostListener('mouseenter', ['$event'])\n  onMouseEnter(e: MouseEvent) {\n    this.renderer.setAttribute(this.el.nativeElement, 'hovered', '');\n    if (this.tooltipContainer) {\n      this.appRef.detachView(this.tooltipCompRef.hostView);\n    }\n    this.showTooltip(e);\n  }\n\n  @HostListener('mouseleave', ['$event'])\n  onMouseLeave(e: MouseEvent) {\n    this.hideTooltip(e);\n  }\n  showTooltip(e: MouseEvent) {\n    this.generateContent();\n\n    const injector = Injector.create([\n      { provide: 'tooltipHost', useValue: { host: this.el }, deps: [] },\n    ]);\n    let target = <HTMLElement>e.target;\n    this.elementRect = <DOMRect>target.getBoundingClientRect();\n\n    this.tooltipCompRef = this.vc.createComponent(NgxDynamicTooltipComponent, {\n      injector: injector,\n      projectableNodes: this.generateContent(),\n    });\n    this.tooltipContainer =\n      this.tooltipCompRef.location.nativeElement.firstElementChild;\n    this.place(this.placement);\n    this.doc.body.appendChild(this.tooltipCompRef.location.nativeElement);\n  }\n  place(placement: string) {\n    this.updateClass(placement);\n    switch (placement) {\n      case 'left': {\n        let top =\n          this.elementRect.top - this.tooltipContainer.offsetHeight / 2 + 10;\n        let left =\n          this.elementRect.left - this.tooltipContainer.clientWidth - 10;\n        this.setStyle(top, left);\n        break;\n      }\n      case 'right': {\n        let top =\n          this.elementRect.top - this.tooltipContainer.offsetHeight / 2 + 10;\n        let left =\n          this.elementRect.left +\n          this.vc.element.nativeElement.clientWidth +\n          10;\n        this.setStyle(top, left);\n        break;\n      }\n      case 'top': {\n        let top =\n          this.elementRect.top - this.tooltipContainer.offsetHeight - 10;\n        let left =\n          this.elementRect.left - this.tooltipContainer.clientWidth / 2 + 10;\n        this.setStyle(top, left);\n        break;\n      }\n      case 'bottom': {\n        let top =\n          this.elementRect.top +\n          this.vc.element.nativeElement.offsetHeight +\n          10;\n        let left =\n          this.elementRect.left - this.tooltipContainer.clientWidth / 2 + 10;\n        this.setStyle(top, left);\n        break;\n      }\n    }\n  }\n  updateClass(placement: string) {\n    this.renderer.addClass(\n      this.tooltipContainer,\n      `tooltip-container--${placement}`\n    );\n  }\n  setStyle(top: number, left: number) {\n    this.renderer.setStyle(this.tooltipContainer, 'top', top + 'px');\n    this.renderer.setStyle(this.tooltipContainer, 'left', left + 'px');\n  }\n  generateContent() {\n    if (typeof this.tooltip == 'string') {\n      let txt = this.renderer.createText(this.tooltip);\n      return [[txt]];\n    }\n\n    if (this.tooltip instanceof TemplateRef<any>) {\n      const viewRef = this.tooltip.createEmbeddedView({\n        $implicit: this.content,\n      });\n      this.ngZone.run(() => {\n        viewRef.detectChanges();\n      });\n      return [viewRef.rootNodes];\n    }\n\n    let compRef = this.vc.createComponent(this.tooltip);\n    let tooltipContainer = compRef.location.nativeElement;\n    return [[tooltipContainer]];\n  }\n  hideTooltip(e: MouseEvent) {\n    switch (this.placement) {\n      case 'left': {\n        if (e.offsetX > 0) this.tooltipCompRef && this.tooltipCompRef.destroy();\n        break;\n      }\n      case 'bottom': {\n        if (e.offsetY > 0) this.tooltipCompRef && this.tooltipCompRef.destroy();\n        break;\n      }\n      case 'right': {\n        if (e.offsetX < 0 || e.offsetY < 0)\n          this.tooltipCompRef && this.tooltipCompRef.destroy();\n        break;\n      }\n      default: {\n        if (e.offsetY > 0) this.tooltipCompRef && this.tooltipCompRef.destroy();\n        break;\n      }\n    }\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { NgxDynamicTooltipComponent } from './ngx-dynamic-tooltip.component';\nimport { TooltipDirective } from './tooltip.directive';\n\n@NgModule({\n  declarations: [NgxDynamicTooltipComponent, TooltipDirective],\n  imports: [CommonModule, RouterModule],\n  exports: [NgxDynamicTooltipComponent, TooltipDirective],\n})\nexport class NgxDynamicTooltipModule {}\n","/*\n * Public API Surface of ngx-dynamic-tooltip\n */\n\nexport * from './lib/ngx-dynamic-tooltip.service';\nexport * from './lib/ngx-dynamic-tooltip.component';\nexport * from './lib/ngx-dynamic-tooltip.module';\nexport * from './lib/tooltip.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}