{"version":3,"file":"mdb-angular-ui-kit-popover.mjs","sources":["../../../projects/mdb-angular-ui-kit/popover/popover.component.ts","../../../projects/mdb-angular-ui-kit/popover/popover.component.html","../../../projects/mdb-angular-ui-kit/popover/popover.directive.ts","../../../projects/mdb-angular-ui-kit/popover/popover.module.ts","../../../projects/mdb-angular-ui-kit/popover/mdb-angular-ui-kit-popover.ts"],"sourcesContent":["import {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  Input,\n  TemplateRef,\n  booleanAttribute,\n} from '@angular/core';\nimport { trigger, style, animate, transition, state, AnimationEvent } from '@angular/animations';\nimport { Subject } from 'rxjs';\n@Component({\n  selector: 'mdb-popover',\n  templateUrl: 'popover.component.html',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  animations: [\n    trigger('fade', [\n      state('visible', style({ opacity: 1 })),\n      state('hidden', style({ opacity: 0 })),\n      transition('visible <=> hidden', animate('150ms linear')),\n      transition(':enter', animate('150ms linear')),\n    ]),\n  ],\n  standalone: false,\n})\nexport class MdbPopoverComponent {\n  @Input({ transform: booleanAttribute }) animation: boolean;\n  @Input() content: string | TemplateRef<any>;\n  @Input() context: any;\n  @Input() title: string;\n\n  get isContentTemplate(): boolean {\n    return this.content instanceof TemplateRef;\n  }\n\n  readonly _hidden: Subject<void> = new Subject();\n\n  animationState = 'hidden';\n\n  constructor(private _cdRef: ChangeDetectorRef) {}\n\n  markForCheck(): void {\n    this._cdRef.markForCheck();\n  }\n\n  onAnimationEnd(event: AnimationEvent): void {\n    if (event.toState === 'hidden') {\n      this._hidden.next();\n    }\n  }\n}\n","<div\n  class=\"popover\"\n  [@fade]=\"animationState\"\n  (@fade.done)=\"onAnimationEnd($event)\"\n  [@.disabled]=\"!animation\"\n>\n  @if (title) {\n  <h3 class=\"popover-header\">\n    {{ title }}\n  </h3>\n  } @if (isContentTemplate) {\n  <div class=\"popover-body\">\n    <ng-container\n      [ngTemplateOutlet]=\"$any(content)\"\n      [ngTemplateOutletContext]=\"context\"\n    ></ng-container>\n  </div>\n  } @if (!isContentTemplate) {\n  <div class=\"popover-body\">\n    {{ content }}\n  </div>\n  }\n</div>\n","import {\n  ComponentRef,\n  Directive,\n  ElementRef,\n  EventEmitter,\n  Input,\n  OnDestroy,\n  OnInit,\n  Output,\n  TemplateRef,\n  booleanAttribute,\n  numberAttribute,\n} from '@angular/core';\nimport {\n  ConnectedPosition,\n  Overlay,\n  OverlayConfig,\n  OverlayPositionBuilder,\n  OverlayRef,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { MdbPopoverComponent } from './popover.component';\nimport { fromEvent, Subject } from 'rxjs';\nimport { first, takeUntil } from 'rxjs/operators';\nimport { MdbPopoverPosition } from './popover.types';\n\n@Directive({\n  // eslint-disable-next-line @angular-eslint/directive-selector\n  selector: '[mdbPopover]',\n  exportAs: 'mdbPopover',\n  standalone: false,\n})\n// eslint-disable-next-line @angular-eslint/component-class-suffix\nexport class MdbPopoverDirective implements OnInit, OnDestroy {\n  @Input({ transform: booleanAttribute }) animation = true;\n  @Input({ transform: numberAttribute }) delayHide = 0;\n  @Input({ transform: numberAttribute }) delayShow = 0;\n  @Input() mdbPopover: TemplateRef<any> | string = '';\n  @Input() mdbPopoverData: any;\n  @Input() mdbPopoverTitle = '';\n  @Input({ transform: numberAttribute }) offset = 4;\n  @Input() placement: MdbPopoverPosition = 'top';\n  @Input({ transform: booleanAttribute }) popoverDisabled = false;\n  @Input() trigger = 'click';\n\n  @Output() popoverShow = new EventEmitter<MdbPopoverDirective>();\n  @Output() popoverShown = new EventEmitter<MdbPopoverDirective>();\n  @Output() popoverHide = new EventEmitter<MdbPopoverDirective>();\n  @Output() popoverHidden = new EventEmitter<MdbPopoverDirective>();\n\n  private _overlayRef: OverlayRef;\n  private _tooltipRef: ComponentRef<MdbPopoverComponent>;\n  private _open = false;\n  private _showTimeout: any = 0;\n  private _hideTimeout: any = 0;\n\n  readonly _destroy$: Subject<void> = new Subject<void>();\n\n  constructor(\n    private _overlay: Overlay,\n    private _overlayPositionBuilder: OverlayPositionBuilder,\n    private _elementRef: ElementRef\n  ) {}\n\n  ngOnInit(): void {\n    if (this.popoverDisabled || (this.mdbPopover === '' && this.mdbPopoverTitle === '')) {\n      return;\n    }\n\n    this._bindTriggerEvents();\n  }\n\n  ngOnDestroy(): void {\n    if (this._open) {\n      this.hide();\n    }\n\n    this._destroy$.next();\n    this._destroy$.complete();\n  }\n\n  private _bindTriggerEvents(): void {\n    const triggers = this.trigger.split(' ');\n\n    triggers.forEach((trigger) => {\n      if (trigger === 'click') {\n        fromEvent(this._elementRef.nativeElement, trigger)\n          .pipe(takeUntil(this._destroy$))\n          .subscribe(() => this.toggle());\n      } else if (trigger !== 'manual') {\n        const evIn = trigger === 'hover' ? 'mouseenter' : 'focusin';\n        const evOut = trigger === 'hover' ? 'mouseleave' : 'focusout';\n\n        fromEvent(this._elementRef.nativeElement, evIn)\n          .pipe(takeUntil(this._destroy$))\n          .subscribe(() => this.show());\n        fromEvent(this._elementRef.nativeElement, evOut)\n          .pipe(takeUntil(this._destroy$))\n          .subscribe(() => this.hide());\n      }\n    });\n  }\n\n  private _createOverlayConfig(): OverlayConfig {\n    const positionStrategy = this._overlayPositionBuilder\n      .flexibleConnectedTo(this._elementRef)\n      .withPositions(this._getPosition())\n      .withPush(false);\n    const overlayConfig = new OverlayConfig({\n      hasBackdrop: false,\n      scrollStrategy: this._overlay.scrollStrategies.reposition(),\n      positionStrategy,\n    });\n\n    return overlayConfig;\n  }\n\n  private _createOverlay(): void {\n    this._overlayRef = this._overlay.create(this._createOverlayConfig());\n  }\n\n  private _getPosition(): ConnectedPosition[] {\n    let position;\n\n    const positionTop = {\n      originX: 'center',\n      originY: 'top',\n      overlayX: 'center',\n      overlayY: 'bottom',\n      offsetY: -this.offset,\n    };\n\n    const positionBottom = {\n      originX: 'center',\n      originY: 'bottom',\n      overlayX: 'center',\n      overlayY: 'top',\n      offsetY: this.offset,\n    };\n\n    const positionRight = {\n      originX: 'end',\n      originY: 'center',\n      overlayX: 'start',\n      overlayY: 'center',\n      offsetX: this.offset,\n    };\n\n    const positionLeft = {\n      originX: 'start',\n      originY: 'center',\n      overlayX: 'end',\n      overlayY: 'center',\n      offsetX: -this.offset,\n    };\n\n    switch (this.placement) {\n      case 'top':\n        position = [positionTop, positionBottom];\n        break;\n      case 'bottom':\n        position = [positionBottom, positionTop];\n        break;\n      case 'left':\n        position = [positionLeft, positionRight, positionTop, positionBottom];\n        break;\n      case 'right':\n        position = [positionRight, positionLeft, positionTop, positionBottom];\n        break;\n      default:\n        break;\n    }\n\n    return position;\n  }\n\n  show(): void {\n    if (this._hideTimeout) {\n      this._overlayRef.detach();\n      clearTimeout(this._hideTimeout);\n      this._hideTimeout = null;\n    }\n\n    this._createOverlay();\n\n    if (this._hideTimeout) {\n      clearTimeout(this._hideTimeout);\n      this._hideTimeout = null;\n    }\n\n    this._showTimeout = setTimeout(() => {\n      const tooltipPortal = new ComponentPortal(MdbPopoverComponent);\n\n      this.popoverShow.emit(this);\n      this._open = true;\n\n      this._tooltipRef = this._overlayRef.attach(tooltipPortal);\n\n      this._tooltipRef.instance.content = this.mdbPopover;\n      this._tooltipRef.instance.title = this.mdbPopoverTitle;\n      this._tooltipRef.instance.animation = this.animation;\n      this._tooltipRef.instance.context = this.mdbPopoverData;\n      this._tooltipRef.instance.animationState = 'visible';\n      this._tooltipRef.instance.markForCheck();\n\n      this.popoverShown.emit(this);\n    }, this.delayShow);\n  }\n\n  hide(): void {\n    if (this._showTimeout) {\n      clearTimeout(this._showTimeout);\n      this._showTimeout = null;\n    } else {\n      return;\n    }\n\n    this._hideTimeout = setTimeout(() => {\n      this.popoverHide.emit(this);\n      if (!this._tooltipRef) {\n        this._overlayRef.detach();\n        this._open = false;\n        this.popoverHidden.emit(this);\n      } else {\n        this._tooltipRef.instance._hidden.pipe(first()).subscribe(() => {\n          this._overlayRef.detach();\n          this._open = false;\n          this.popoverHidden.emit(this);\n        });\n        this._tooltipRef.instance.animationState = 'hidden';\n        this._tooltipRef.instance.markForCheck();\n      }\n    }, this.delayHide);\n  }\n\n  toggle(): void {\n    if (this._open) {\n      this.hide();\n    } else {\n      this.show();\n    }\n  }\n}\n","import { MdbPopoverDirective } from './popover.directive';\nimport { NgModule } from '@angular/core';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { MdbPopoverComponent } from './popover.component';\n\n@NgModule({\n  imports: [CommonModule, OverlayModule],\n  declarations: [MdbPopoverDirective, MdbPopoverComponent],\n  exports: [MdbPopoverDirective, MdbPopoverComponent],\n})\nexport class MdbPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}