{"version":3,"file":"verben-ng-ui-src-lib-components-pop-up.mjs","sources":["../../../projects/verben-ng-ui/src/lib/components/pop-up/pop-up.component.ts","../../../projects/verben-ng-ui/src/lib/components/pop-up/pop-up.component.html","../../../projects/verben-ng-ui/src/lib/components/pop-up/pop-up.module.ts","../../../projects/verben-ng-ui/src/lib/components/pop-up/verben-ng-ui-src-lib-components-pop-up.ts"],"sourcesContent":["import { Overlay, ScrollStrategy } from '@angular/cdk/overlay';\nimport {\n  Component,\n  EventEmitter,\n  Input,\n  Output,\n  HostListener,\n  ElementRef,\n  Renderer2,\n  AfterViewChecked,\n  ViewChild,\n} from '@angular/core';\n\n@Component({\n  selector: 'verben-pop-Up',\n  templateUrl: './pop-up.component.html',\n  styleUrls: ['./pop-up.component.css'],\n})\nexport class VerbenPopUpComponent implements AfterViewChecked {\n  @Input() dropdownOpen: boolean = false;\n  @Output() dropdownOpenChange: EventEmitter<boolean> =\n    new EventEmitter<boolean>();\n  @Input() dropdownWidth: string = '';\n  @Input() color: string = 'black';\n  @Input() customStyles: { [key: string]: string } = {};\n  @Input() popUpClass: string = '';\n  @Input() border: string = '';\n  @Input() borderRadius: string = '';\n  @Input() enableMouseLeave: boolean = true;\n  @Input() cdkPosition: any[] | null = null;\n  @Output() close: EventEmitter<Event> = new EventEmitter();\n  @ViewChild('expansion', { static: false })\n  expansion!: ElementRef;\n  scrollStrategy: ScrollStrategy;\n  defaultPositions = [\n    {\n      originX: 'start',\n      originY: 'bottom',\n      overlayX: 'start',\n      overlayY: 'top',\n    },\n    {\n      originX: 'end',\n      originY: 'bottom',\n      overlayX: 'end',\n      overlayY: 'top',\n    },\n    {\n      originX: 'start',\n      originY: 'top',\n      overlayX: 'start',\n      overlayY: 'bottom',\n    },\n    {\n      originX: 'end',\n      originY: 'top',\n      overlayX: 'end',\n      overlayY: 'bottom',\n    },\n  ];\n\n  constructor(\n    private elementRef: ElementRef,\n    private renderer: Renderer2,\n    private overlay: Overlay\n  ) {\n    this.scrollStrategy = this.overlay.scrollStrategies.reposition();\n  }\n\n  toggleDropdown() {\n    this.dropdownOpen = !this.dropdownOpen;\n    this.dropdownOpenChange.emit(this.dropdownOpen);\n\n    // if (this.dropdownOpen) {\n    //   this.setDropdownPosition();\n    // }\n  }\n\n  onMouseOut() {\n    if (this.enableMouseLeave) {\n      this.close.emit();\n      this.dropdownOpen = false;\n      this.dropdownOpenChange.emit(this.dropdownOpen);\n    }\n  }\n\n  onClose() {\n    this.close.emit();\n  }\n\n  get dropdownStyles() {\n    return {\n      width: this.dropdownWidth,\n      border: this.border,\n      borderRadius: this.borderRadius,\n    };\n  }\n\n  get yourStyles() {\n    return {\n      ...this.customStyles,\n    };\n  }\n\n  @HostListener('document:click', ['$event.target'])\n  onClickOutside(targetElement: any) {\n    const clickedInside = this.elementRef.nativeElement.contains(targetElement);\n    const isInsidePane = targetElement.closest('.cdk-overlay-pane') !== null;\n    if (\n      !clickedInside &&\n      this.dropdownOpen &&\n      this.expansion &&\n      !this.expansion.nativeElement.contains(targetElement) &&\n      !isInsidePane\n    ) {\n      this.dropdownOpen = false;\n      this.dropdownOpenChange.emit(this.dropdownOpen);\n    }\n  }\n\n  // private setDropdownPosition(): void {\n  //   const dropdown = this.elementRef.nativeElement.querySelector('.dropdown-menu');\n  //   const dropdownRect = dropdown.getBoundingClientRect();\n  //   const parentRect = this.elementRef.nativeElement.getBoundingClientRect();\n  //   const viewportHeight = window.innerHeight;\n  //   const viewportWidth = window.innerWidth;\n\n  //   console.log('Dropdown Rect:', dropdownRect);\n  //   console.log('Parent Rect:', parentRect);\n  //   console.log('Viewport:', { width: viewportWidth, height: viewportHeight });\n\n  //   // Check vertical space\n  //   if (viewportHeight - parentRect.bottom < dropdownRect.height) {\n  //     // Position above\n  //     this.renderer.setStyle(dropdown, 'top', 'auto');\n  //     this.renderer.setStyle(dropdown, 'bottom', `${parentRect.height}px`);\n  //   } else {\n  //     // Position below\n  //     this.renderer.setStyle(dropdown, 'top', `${parentRect.height}px`);\n  //     this.renderer.setStyle(dropdown, 'bottom', 'auto');\n  //   }\n\n  //   // Check horizontal space\n  //   if (parentRect.left + dropdownRect.width > viewportWidth) {\n  //     // Position to the left\n  //     this.renderer.setStyle(dropdown, 'left', 'auto');\n  //     this.renderer.setStyle(dropdown, 'right', '0');\n  //   } else if (parentRect.right - dropdownRect.width < 0) {\n  //     // Position to the right\n  //     this.renderer.setStyle(dropdown, 'left', '0');\n  //     this.renderer.setStyle(dropdown, 'right', 'auto');\n  //   } else {\n  //     // Default alignment\n  //     this.renderer.setStyle(dropdown, 'left', '0');\n  //     this.renderer.setStyle(dropdown, 'right', 'auto');\n  //   }\n  // }\n\n  ngAfterViewChecked() {\n    // if (this.dropdownOpen) {\n    //   this.setDropdownPosition();\n    // }\n  }\n\n  private setDropdownPosition(): void {\n    const dropdown = this.elementRef.nativeElement.querySelector(\n      '.dropdown-container > div'\n    );\n    // const triggerElement = this.elementRef.nativeElement.querySelector('dropdown-menu')\n\n    if (!dropdown) {\n      console.warn('Dropdown element not found.');\n      return;\n    }\n\n    const dropdownRect = dropdown.getBoundingClientRect();\n    const parentRect = this.elementRef.nativeElement.getBoundingClientRect();\n    const viewportHeight = window.innerHeight;\n    const viewportWidth = window.innerWidth;\n\n    console.log('Dropdown Rect:', dropdownRect);\n    console.log('Parent Rect:', parentRect);\n    console.log('Viewport:', { width: viewportWidth, height: viewportHeight });\n\n    // Vertical Positioning\n    if (viewportHeight - parentRect.bottom < dropdownRect.height) {\n      // Not enough space below, position above\n      console.log('not enough space below');\n      const topPosition = parentRect.top - dropdownRect.height;\n      console.log('top pos:', topPosition);\n      this.renderer.setStyle(dropdown, 'top', `auto`);\n      this.renderer.setStyle(dropdown, 'bottom', '15px');\n    } else {\n      // Enough space below, position below\n      console.log('Enough space below');\n      const topPosition = parentRect.bottom;\n      this.renderer.setStyle(dropdown, 'top', `20px`);\n      this.renderer.setStyle(dropdown, 'bottom', 'auto');\n    }\n\n    // Horizontal Positioning\n    if (parentRect.left + dropdownRect.width > viewportWidth) {\n      console.log('not Enough space right');\n      const leftPosition = viewportWidth - dropdownRect.width - 10;\n      this.renderer.setStyle(dropdown, 'left', `auto`);\n      // this.renderer.setStyle(dropdown, 'left', `${Math.max(leftPosition, 0)}px`);\n      this.renderer.setStyle(dropdown, 'right', '10px');\n    } else {\n      console.log('Enough space right');\n      const leftPosition = parentRect.left;\n      this.renderer.setStyle(dropdown, 'left', `${10}px`);\n      this.renderer.setStyle(dropdown, 'right', 'auto');\n    }\n  }\n}\n","<span class=\"relative dropdown-container\" [ngStyle]=\"dropdownStyles\">\n  <span\n    (click)=\"toggleDropdown()\"\n    cdkOverlayOrigin\n    #trigger=\"cdkOverlayOrigin\"\n    class=\"dropdown-menu\"\n  >\n    <ng-content select=\"[dropdown-trigger]\"></ng-content>\n  </span>\n\n  <ng-template\n    cdkConnectedOverlay\n    [cdkConnectedOverlayLockPosition]=\"false\"\n    [cdkConnectedOverlayOrigin]=\"trigger\"\n    [cdkConnectedOverlayPositions]=\"\n      cdkPosition ? cdkPosition : defaultPositions\n    \"\n    [cdkConnectedOverlayOpen]=\"dropdownOpen\"\n    (detach)=\"dropdownOpen = false\"\n  >\n    <div\n      #expansion\n      (mouseleave)=\"onMouseOut()\"\n      [attr.aria-hidden]=\"!dropdownOpen\"\n      class=\"{{ popUpClass }}\"\n      [ngStyle]=\"yourStyles\"\n    >\n      <ng-content select=\"[dropdown-content]\"></ng-content>\n    </div>\n  </ng-template>\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VerbenPopUpComponent } from './pop-up.component';\nimport { SharedModule } from 'verben-ng-ui/src/lib/components/shared';\n\n@NgModule({\n  declarations: [VerbenPopUpComponent],\n  imports: [CommonModule, SharedModule],\n  exports: [VerbenPopUpComponent],\n})\nexport class VerbenPopUpModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}