{"version":3,"file":"novo-elements-elements-tooltip.mjs","sources":["../../../projects/novo-elements/src/elements/tooltip/Tooltip.component.ts","../../../projects/novo-elements/src/elements/tooltip/Tooltip.html","../../../projects/novo-elements/src/elements/tooltip/Tooltip.directive.ts","../../../projects/novo-elements/src/elements/tooltip/Tooltip.module.ts","../../../projects/novo-elements/src/elements/tooltip/novo-elements-elements-tooltip.ts"],"sourcesContent":["// NG2\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { Component } from '@angular/core';\n\n@Component({\n    selector: 'novo-tooltip',\n    templateUrl: './Tooltip.html',\n    styleUrls: ['./Tooltip.scss'],\n    animations: [\n        trigger('state', [\n            state('initial, void, hidden', style({ opacity: '0' })),\n            state('visible', style({ opacity: '1' })),\n            transition('* => visible', [\n                style({\n                    opacity: 0,\n                }),\n                animate('0.3s 0.1s ease-in'),\n            ]),\n            transition('* => hidden', [\n                style({\n                    opacity: 1,\n                }),\n                animate('0.3s 0.1s ease-in'),\n            ]),\n        ]),\n    ],\n    standalone: false,\n})\nexport class NovoTooltip {\n  public message: string;\n  public hidden: boolean;\n  public tooltipType: string;\n  public rounded: boolean;\n  public size: string;\n  public positionStrategy: any;\n  public preline: boolean;\n  public noAnimate: boolean;\n  public position: string;\n  public isHTML: boolean;\n  public bounce: boolean;\n}\n","<div *ngIf=\"this.isHTML\" [@state]=\"noAnimate ? 'no-animation' : 'visible'\"\n     [ngClass]=\"[tooltipType, rounded ? 'rounded' : '', size ? size : '', preline? 'preline' : '', bounce ? 'bounce' : '', position]\"\n     [innerHTML]=\"message\"></div>\n<div *ngIf=\"!this.isHTML\" [@state]=\"noAnimate ? 'no-animation' : 'visible'\"\n     [ngClass]=\"[tooltipType, rounded ? 'rounded' : '', size ? size : '', preline? 'preline' : '', bounce ? 'bounce' : '', position]\">{{message}}</div>","// NG\nimport { ConnectedPosition, FlexibleConnectedPositionStrategy, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { AfterViewInit, Directive, ElementRef, HostListener, Input, OnDestroy, OnInit, ViewContainerRef, signal } from '@angular/core';\n// APP\nimport { NovoTooltip } from './Tooltip.component';\nimport { BooleanInput } from 'novo-elements/utils';\n\n@Directive({\n    selector: '[tooltip]',\n    host: {\n        '[attr.data-hint]': 'tooltip',\n    },\n    standalone: false,\n})\nexport class TooltipDirective implements OnDestroy, OnInit, AfterViewInit {\n  @Input()\n  tooltip: string;\n  @Input('tooltipPosition')\n  position: string = 'top';\n  @Input('tooltipType')\n  type: string = 'normal';\n  @Input('tooltipSize')\n  size: string;\n  @Input('tooltipBounce')\n  bounce: boolean;\n  @Input('tooltipNoAnimate')\n  noAnimate: boolean;\n  @Input('tooltipRounded')\n  rounded: boolean;\n  @Input('tooltipAlways')\n  always: boolean;\n  @Input('tooltipPreline')\n  preline: boolean;\n  @Input('removeTooltipArrow')\n  removeArrow: boolean = false;\n  @Input('tooltipAutoPosition')\n  autoPosition: boolean = true;\n  @Input('tooltipIsHTML')\n  isHTML: boolean;\n  @Input('tooltipCloseOnClick')\n  closeOnClick: boolean = false;\n  @BooleanInput()\n  @Input('tooltipOnOverflow')\n  onOverflow: boolean = false;\n\n  private _active = signal<boolean>(true);\n  @Input('tooltipActive')\n  set active(value: boolean) {\n    this._active.set(value);\n  }\n  get active(): boolean {\n    return this._active();\n  }\n\n  private tooltipInstance: NovoTooltip | null;\n  private portal: ComponentPortal<NovoTooltip>;\n  private overlayRef: OverlayRef;\n  private _resizeObserver: ResizeObserver;\n\n  constructor(protected overlay: Overlay, private viewContainerRef: ViewContainerRef, private elementRef: ElementRef) {}\n  isPosition(position: string): boolean {\n    return position.toLowerCase() === (this.position || '').toLowerCase();\n  }\n\n  isType(type: string): boolean {\n    return type.toLowerCase() === (this.type || '').toLowerCase();\n  }\n\n  isSize(size: string): boolean {\n    return size.toLowerCase() === (this.size || '').toLowerCase();\n  }\n\n  @HostListener('mouseenter')\n  onMouseEnter(): void {\n    if (this.tooltip && this._active() && !this.always) {\n      this.show();\n    }\n  }\n\n  @HostListener('mouseleave')\n  onMouseLeave(): void {\n    if (this.overlayRef && !this.always) {\n      this.hide();\n      this.overlayRef.dispose();\n    }\n  }\n\n  @HostListener('click')\n  onclick(): void {\n    if (this.overlayRef && !this.always && this.closeOnClick) {\n      this.hide();\n      this.overlayRef.dispose();\n    }\n  }\n\n  ngOnInit(): void {\n    if (this.tooltip && this.always && this.active) {\n      this.show();\n    }\n  }\n\n  ngAfterViewInit(): void {\n    if (this.onOverflow && this.elementRef?.nativeElement) {\n      this._resizeObserver = new ResizeObserver(() => {\n        const isOverflowing = this.elementRef.nativeElement.scrollWidth > this.elementRef.nativeElement.clientWidth;\n        this._active.set(isOverflowing);\n      });\n      this._resizeObserver?.observe(this.elementRef.nativeElement);\n    }\n  }\n\n  ngOnDestroy(): void {\n    this._resizeObserver?.disconnect();\n    if (this.overlayRef && !this.always) {\n      this.hide();\n      this.overlayRef.dispose();\n    }\n  }\n\n  show(): void {\n    const overlayState = new OverlayConfig();\n    overlayState.positionStrategy = this.getPosition();\n\n    if (this.always) {\n      overlayState.scrollStrategy = this.overlay.scrollStrategies.reposition();\n    } else {\n      overlayState.scrollStrategy = this.overlay.scrollStrategies.close();\n    }\n    overlayState.scrollStrategy.enable();\n\n    this.overlayRef = this.overlay.create(overlayState);\n\n    this.overlayRef.detach();\n    this.portal = this.portal || new ComponentPortal(NovoTooltip, this.viewContainerRef);\n\n    const tooltipInstance = this.overlayRef.attach(this.portal).instance;\n    tooltipInstance.message = this.tooltip;\n    tooltipInstance.tooltipType = this.type;\n    tooltipInstance.rounded = this.rounded;\n    tooltipInstance.size = this.size;\n    tooltipInstance.preline = this.preline;\n    tooltipInstance.noAnimate = this.noAnimate;\n    tooltipInstance.position = this.removeArrow ? 'no-arrow' : this.position;\n    tooltipInstance.isHTML = this.isHTML;\n    tooltipInstance.bounce = this.bounce;\n  }\n\n  @HostListener('blur')\n  hide(): void {\n    if (this.overlayRef) {\n      this.overlayRef.detach();\n    }\n  }\n\n  private getPosition(): FlexibleConnectedPositionStrategy {\n    let defaultPosition: ConnectedPosition;\n    let offsetX: number;\n    let offsetY: number;\n    const autoPositions: ConnectedPosition[] = [\n      { originX: 'center', originY: 'bottom', overlayX: 'center', overlayY: 'top', offsetX: 0, offsetY: 12 },\n      { originX: 'end', originY: 'bottom', overlayX: 'end', overlayY: 'top', offsetX: 0, offsetY: 12 },\n      { originX: 'end', originY: 'center', overlayX: 'start', overlayY: 'center', offsetX: 12, offsetY: 0 },\n      { originX: 'start', originY: 'center', overlayX: 'end', overlayY: 'center', offsetX: -12, offsetY: 0 },\n      { originX: 'center', originY: 'top', overlayX: 'center', overlayY: 'bottom', offsetX: 0, offsetY: -12 },\n      { originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top', offsetX: 0, offsetY: 12 },\n      { originX: 'start', originY: 'top', overlayX: 'start', overlayY: 'bottom', offsetX: 0, offsetY: -12 },\n      { originX: 'end', originY: 'top', overlayX: 'end', overlayY: 'bottom', offsetX: 0, offsetY: -12 },\n      { originX: 'start', originY: 'top', overlayX: 'end', overlayY: 'bottom', offsetX: 12, offsetY: -12 },\n      { originX: 'start', originY: 'bottom', overlayX: 'end', overlayY: 'top', offsetX: 12, offsetY: 12 },\n      { originX: 'end', originY: 'top', overlayX: 'start', overlayY: 'bottom', offsetX: -12, offsetY: -12 },\n      { originX: 'end', originY: 'bottom', overlayX: 'start', overlayY: 'top', offsetX: -12, offsetY: 12 },\n    ];\n\n    switch (this.position) {\n      case 'right':\n        defaultPosition = { originX: 'end', originY: 'center', overlayX: 'start', overlayY: 'center' };\n        offsetX = 12;\n        offsetY = 0;\n        break;\n      case 'bottom':\n        defaultPosition = { originX: 'center', originY: 'bottom', overlayX: 'center', overlayY: 'top' };\n        offsetX = 0;\n        offsetY = 12;\n        break;\n      case 'top':\n        defaultPosition = { originX: 'center', originY: 'top', overlayX: 'center', overlayY: 'bottom' };\n        offsetX = 0;\n        offsetY = -12;\n        break;\n      case 'left':\n        defaultPosition = { originX: 'start', originY: 'center', overlayX: 'end', overlayY: 'center' };\n        offsetX = -12;\n        offsetY = 0;\n        break;\n      case 'top-left':\n        defaultPosition = { originX: 'start', originY: 'top', overlayX: 'end', overlayY: 'bottom' };\n        offsetX = 12;\n        offsetY = -12;\n        break;\n      case 'bottom-left':\n        defaultPosition = { originX: 'start', originY: 'bottom', overlayX: 'end', overlayY: 'top' };\n        offsetX = 12;\n        offsetY = 12;\n        break;\n      case 'top-right':\n        defaultPosition = { originX: 'end', originY: 'top', overlayX: 'start', overlayY: 'bottom' };\n        offsetX = -12;\n        offsetY = -12;\n        break;\n      case 'bottom-right':\n        defaultPosition = { originX: 'end', originY: 'bottom', overlayX: 'start', overlayY: 'top' };\n        offsetX = -12;\n        offsetY = 12;\n        break;\n      default:\n        break;\n    }\n\n    const allPositions = this.autoPosition ? [defaultPosition].concat(autoPositions) : [defaultPosition];\n    const strategy: FlexibleConnectedPositionStrategy = this.overlay\n      .position()\n      .flexibleConnectedTo(this.elementRef)\n      .withFlexibleDimensions(false)\n      .withDefaultOffsetX(offsetX)\n      .withDefaultOffsetY(offsetY)\n      .withPositions(allPositions);\n    return strategy;\n  }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoTooltip } from './Tooltip.component';\n// APP\nimport { TooltipDirective } from './Tooltip.directive';\n\n@NgModule({\n  declarations: [TooltipDirective, NovoTooltip],\n  exports: [TooltipDirective],\n  imports: [CommonModule],\n})\nexport class NovoTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}