{"version":3,"file":"nitro-popup.mjs","sources":["../../../projects/popup/src/lib/popup.service.ts","../../../projects/popup/src/lib/popup.component.ts","../../../projects/popup/src/lib/popup.component.html","../../../projects/popup/src/lib/popup.module.ts","../../../projects/popup/src/public-api.ts","../../../projects/popup/src/nitro-popup.ts"],"sourcesContent":["import {\r\n  merge,\r\n  fromEvent,\r\n  Observable,\r\n  ReplaySubject,\r\n  BehaviorSubject\r\n} from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { NitroPopupConfig } from './NitroPopupConfig';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class PopupService {\r\n  private popupCustomId = 'popup_' + Math.random().toString(36).substr(2, 8);\r\n  private defaultConfig = {\r\n    css: {},\r\n    delay: 0,\r\n    level: 0,\r\n    width: '50%',\r\n    height: '50%',\r\n    dismiss: true,\r\n    overlay: true,\r\n    menu: undefined,\r\n    position: 'center',\r\n    id: this.popupCustomId,\r\n    class: this.popupCustomId\r\n  };\r\n\r\n  public isPopupOpen: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\r\n  public nitroPopupConfig: BehaviorSubject<NitroPopupConfig> = new BehaviorSubject<NitroPopupConfig>(this.defaultConfig);\r\n  popup: BehaviorSubject<any> = new BehaviorSubject<any>(null);\r\n  overlay: BehaviorSubject<any> = new BehaviorSubject<any>(null);\r\n  private nitroPopupCSS: BehaviorSubject<any> = new BehaviorSubject<any>({\r\n    width: '100%',\r\n    height: '100%'\r\n  });\r\n\r\n  overlayClick: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\r\n\r\n  popupEl: any;\r\n  overlayEl: any;\r\n  private config!: NitroPopupConfig;\r\n\r\n  constructor(\r\n  ) {\r\n  }\r\n\r\n  private getAnimationEndEvents(): Observable<unknown> {\r\n    // merge all observables into one single stream\r\n    const animationendEvents = merge(\r\n      fromEvent(this.popupEl, 'webkitAnimationEnd'),\r\n      fromEvent(this.popupEl, 'mozAnimationEnd'),\r\n      fromEvent(this.popupEl, 'MSAnimationEnd'),\r\n      fromEvent(this.popupEl, 'oanimationend'),\r\n      fromEvent(this.popupEl, 'animationend'),\r\n      // webkitAnimationEnd$,\r\n      // mozAnimationEnd$,\r\n      // MSAnimationEnd$,\r\n      // oanimationend$,\r\n      // animationend$\r\n    );\r\n    return animationendEvents;\r\n  }\r\n\r\n  buildCSS(arg0: any, arg1: any): any {\r\n    return {\r\n      ...arg0,\r\n      ...arg1\r\n    };\r\n  }\r\n  //Returns true if it is a DOM node\r\n  isNode(o: { nodeType: any; nodeName: any; }) {\r\n    return (\r\n      typeof Node === \"object\" ? o instanceof Node :\r\n        o && typeof o === \"object\" && typeof o.nodeType === \"number\" && typeof o.nodeName === \"string\"\r\n    );\r\n  }\r\n\r\n  //Returns true if it is a DOM element    \r\n  isElement(o: { nodeType: number; nodeName: any; } | null) {\r\n    return (\r\n      typeof HTMLElement === \"object\" ? o instanceof HTMLElement : //DOM2\r\n        o && typeof o === \"object\" && o !== null && o.nodeType === 1 && typeof o.nodeName === \"string\"\r\n    );\r\n  }\r\n\r\n  private addClass(ref: any, cssClass: string = ''): void {\r\n    if (cssClass === '') { return; }\r\n    if (this.isNode(ref) || this.isElement(ref)) {\r\n      cssClass.split(' ').forEach(multiClass => {\r\n        ref.classList.add(multiClass);\r\n      });\r\n    } else {\r\n      if (typeof ref === 'object') {\r\n        ref.forEach((element: any) => {\r\n          // console.log('el', element, cssClass);\r\n          this.addClass(element, cssClass);\r\n        });\r\n      } else if (ref === 'string') {\r\n        this.addClass(document.querySelectorAll(ref), cssClass);\r\n      }\r\n    }\r\n  }\r\n\r\n  private removeClass(ref: any, cssClass: string = ''): void {\r\n    if (cssClass === '') { return; }\r\n    if (this.isNode(ref) || this.isElement(ref)) {\r\n      cssClass.split(' ').forEach(multiClass => {\r\n        ref.classList.remove(multiClass);\r\n      });\r\n    } else {\r\n      if (typeof ref === 'object') {\r\n        ref.forEach((element: any) => {\r\n          // console.log('el', element, cssClass);\r\n          this.removeClass(element, cssClass);\r\n        });\r\n      } else if (ref === 'string') {\r\n        this.removeClass(document.querySelectorAll(ref), cssClass);\r\n      }\r\n    }\r\n  }\r\n\r\n  private applyCss(ref: any, cssProps: any): any {\r\n    // console.log(ref, typeof ref.innerHTML);\r\n    if (typeof ref.innerHTML !== \"string\") {\r\n      // console.log('!==string');\r\n      ref.forEach((element: any) => {\r\n        // console.log('el', element, cssProps);\r\n        element.removeAttribute('style');\r\n        this.applyCss(element, cssProps);\r\n      });\r\n    }\r\n    if (typeof ref === 'object') {\r\n      // console.log('===object');\r\n      if (ref.innerHTML === undefined) {\r\n        ref.forEach((element: any) => {\r\n          element.removeAttribute('style');\r\n          // console.log('el', element, cssProps);\r\n          this.applyCss(element, cssProps);\r\n        });\r\n        return;\r\n      }\r\n    } else if (ref === 'string') {\r\n      this.applyCss(document.querySelectorAll(ref), cssProps);\r\n      return\r\n    }\r\n\r\n    ref.removeAttribute('style');\r\n    // console.log(ref, ref.style);\r\n    if (cssProps !== undefined) {\r\n      Object.keys(cssProps).forEach((key: string) => {\r\n        ref.style.setProperty(key, cssProps[key]);\r\n      });\r\n      // console.log(ref.style);\r\n    }\r\n  }\r\n\r\n  private removeCSS(ref: any): void {\r\n    ref.removeAttribute('style');\r\n  }\r\n\r\n  private getUnit(unit: string): { value: number, unit: string } {\r\n    return {\r\n      value: parseFloat(unit),\r\n      unit: unit.replace(/^[\\-\\d\\.]+/, '')\r\n    };\r\n  }\r\n\r\n  private parseCenToPx(val: number, parentH: number): string {\r\n    return (parentH * val / 100) + 'px';\r\n  }\r\n\r\n  private getXY(el: any) {\r\n    let x = 0;\r\n    let y = 0;\r\n    while (el && !isNaN(el.offsetLeft) && !isNaN(el.offsetTop)) {\r\n      x += el.offsetLeft - el.scrollLeft;\r\n      y += el.offsetTop - el.scrollTop;\r\n      el = el.offsetParent;\r\n    }\r\n    return { x, y };\r\n  }\r\n\r\n  private getCenterX(parentW: number, popupW: string, castToUnit = 'px', negative = false): string {\r\n    const width = this.getUnit(popupW);\r\n    if (\r\n      (width.unit === '%' || width.unit === 'vw' || width.unit === 'vh' || width.unit === 'vimin')\r\n      && castToUnit === 'px'\r\n    ) {\r\n      width.value = Math.abs(parseFloat(this.parseCenToPx(width.value, parentW)));\r\n    }\r\n    // else {\r\n    //   return ((parentW / 2) - (width.value / 2)) + castToUnit;\r\n    // }\r\n    let x = (parentW - width.value) / 2;\r\n    if (!negative) {\r\n      x = this.getLimits(x);\r\n    }\r\n    return x + castToUnit;\r\n  }\r\n\r\n  private getCenterY(parentH: number, popupH: string, castToUnit = 'px', negative = false): string {\r\n    const height = this.getUnit(popupH);\r\n    // console.log(parentH, height);\r\n    if (\r\n      (height.unit === '%' || height.unit === 'vw' || height.unit === 'vh' || height.unit === 'vimin')\r\n      && castToUnit === 'px'\r\n    ) {\r\n      height.value = Math.abs(parseFloat(this.parseCenToPx(height.value, parentH)));\r\n    }\r\n    // console.log('h:', height.value);\r\n\r\n    let y = (parentH - height.value) / 2;\r\n    // console.log(y);\r\n    if (!negative) {\r\n      y = this.getLimits(y);\r\n    }\r\n    return y + castToUnit;\r\n  }\r\n\r\n  private getLimits(n: number): number {\r\n    n = (n >= 0) ? n : 0;\r\n    return n;\r\n  }\r\n\r\n  private getConfig(): NitroPopupConfig {\r\n    return this.nitroPopupConfig.getValue();\r\n  }\r\n  private setConfig(override: any): void {\r\n    this.nitroPopupConfig.next({ ...this.defaultConfig, ...override });\r\n  }\r\n\r\n  managePopup(type?: string, override?: NitroPopupConfig): void {\r\n    if (override) {\r\n      this.setConfig({ ...this.getConfig(), ...override });\r\n    }\r\n    this.config = this.getConfig();\r\n\r\n    // console.log({\r\n    //   relate: this.config.relate,\r\n    //   origin: this.config.origin,\r\n    //   clone: this.config.clone\r\n    // });\r\n\r\n    if (type === 'menu') {\r\n      // console.log(this.config.menu);\r\n      this.contextMenu();\r\n    } else {\r\n      if (this.config.clone) {\r\n        this.clonePopup(this.config.clone);\r\n        return;\r\n      } else if (this.config.relate) {\r\n        this.relatePopup(this.config.relate);\r\n      } else if (this.config.origin) {\r\n        this.originPopup(this.config.origin);\r\n      } else {\r\n        this.nitroPopupCSS.next({\r\n          ...{\r\n            top: 'auto',\r\n            left: 'auto',\r\n            width: this.config.width,\r\n            height: this.config.height\r\n          },\r\n          ...this.config.css\r\n        });\r\n\r\n        this.applyCss(this.popupEl, this.nitroPopupCSS.getValue());\r\n      }\r\n    }\r\n  }\r\n\r\n  // --------------\r\n  // TYPES OF POPUP\r\n  // --------------\r\n  private clonePopup(clone: any) {\r\n    const coord = this.getXY(clone);\r\n    // clone.getBoundingClientRect();\r\n    this.addClass(this.overlayEl, 'inlineMock');\r\n    this.applyCss(this.overlayEl, {\r\n      'min-height': `${document.body.scrollHeight}px`,\r\n      'z-index': 1050 + (this.config.level? this.config.level: 0)\r\n    });\r\n    this.nitroPopupCSS.next({\r\n      ...this.config.css,\r\n      width: `${clone.offsetWidth}px`,\r\n      height: `${clone.offsetHeight}px`,\r\n      top: `${coord.y + document.body.scrollTop}px`,\r\n      left: `${coord.x + document.body.scrollLeft}px`\r\n    });\r\n  }\r\n\r\n  private originPopup(origin: any) {\r\n    const coord = origin.getBoundingClientRect();\r\n    this.nitroPopupCSS.next({\r\n      ...this.config.css,\r\n      top: coord.top + 'px',\r\n      left: coord.left + 'px',\r\n      width: origin.offsetWidth + 'px',\r\n      height: origin.offsetHeight + 'px'\r\n    });\r\n\r\n    setTimeout(() => {\r\n      this.nitroPopupCSS.next({\r\n        ...{\r\n          width: this.config.width,\r\n          height: this.config.height,\r\n          left: this.getCenterX(window.innerWidth, '' + this.config.width),\r\n          top: this.getCenterY(window.innerHeight, '' + this.config.height)\r\n        },\r\n        ...this.config.css\r\n      });\r\n\r\n      this.applyCss(this.popupEl, this.nitroPopupCSS.getValue());\r\n    }, this.config.delay);\r\n  }\r\n\r\n  private relatePopup(relate: any) {\r\n    const coord = relate.getBoundingClientRect();\r\n    this.nitroPopupCSS.next({\r\n      ...{\r\n        top: coord.top + 'px',\r\n        left: coord.left + 'px'\r\n      },\r\n      ...this.config.css\r\n    });\r\n    // console.log(this.nitroPopupCSS.getValue());\r\n    if (this.config.origin) {\r\n      // const c = this.getXY(this.config.origin);\r\n      this.nitroPopupCSS.next({\r\n        ...this.nitroPopupCSS.getValue(),\r\n        width: this.config.origin.offsetWidth + 'px',\r\n        height: this.config.origin.offsetHeight + 'px'\r\n      });\r\n\r\n      setTimeout(() => {\r\n        this.nitroPopupCSS.next({\r\n          ...this.nitroPopupCSS.getValue(),\r\n          ...{\r\n            width: this.config.width,\r\n            height: this.config.height\r\n          },\r\n        });\r\n\r\n        this.applyCss(this.popupEl, this.nitroPopupCSS.getValue());\r\n      }, this.config.delay);\r\n    }\r\n  }\r\n\r\n  private contextMenu() {\r\n    this.nitroPopupCSS.next({\r\n      ...{\r\n        width: '1px',\r\n        height: '1px',\r\n        'max-width': '1px',\r\n        'max-height': '1px',\r\n        top: (this.config.menu?.y || 0) + 'px',\r\n        left: (this.config.menu?.x || 0) + 'px'\r\n      },\r\n      ...this.config.css\r\n    });\r\n    // console.log(this.nitroPopupCSS.getValue());\r\n    setTimeout(() => {\r\n      this.nitroPopupCSS.next({\r\n        ...this.nitroPopupCSS.getValue(),\r\n        width: '320px',\r\n        height: 'auto',\r\n        'max-width': '100vw',\r\n        'max-height': '100vh',\r\n      });\r\n      this.applyCss(this.popupEl, this.nitroPopupCSS.getValue());\r\n    }, 300);\r\n  }\r\n\r\n  open(opt?: any, override?: NitroPopupConfig): Observable<any> {\r\n    const ev = opt.event || new Event('nitro.popup.opening');\r\n    const nitroSubject = new ReplaySubject(1);\r\n    this.addClass(document.querySelectorAll('body'), 'modalOpen');\r\n    if (override) {\r\n      this.setConfig({\r\n        ...this.getConfig(),\r\n        ...opt.template.config,\r\n        ...override\r\n      });\r\n    }\r\n    this.config = this.getConfig();\r\n\r\n    // console.log(this.config);\r\n    this.popup.next(opt.template.popupID);\r\n    this.overlay.next(opt.template.overlay);\r\n    this.popupEl = this.popup.getValue().nativeElement;\r\n    this.overlayEl = this.overlay.getValue().nativeElement;\r\n\r\n    switch (this.config.overlay) {\r\n      case 'transparent_none':\r\n        this.addClass(this.overlayEl, 'transparent none');\r\n        break;\r\n      case 'transparent':\r\n        this.addClass(this.overlayEl, 'transparent');\r\n        break;\r\n      case 'none':\r\n        this.addClass(this.overlayEl, 'none');\r\n        break;\r\n      case false:\r\n        this.addClass(this.overlayEl, 'transparent');\r\n        break;\r\n      default:\r\n        this.removeClass(this.overlayEl, 'transparent none');\r\n        break;\r\n    }\r\n\r\n    this.applyCss(this.overlayEl, {\r\n      'z-index': 1050 + (this.config.level ? this.config.level : 0)\r\n    });\r\n\r\n    if (ev.type === 'contextmenu') {\r\n      // console.log(ev);\r\n      ev.preventDefault();\r\n      this.setConfig({\r\n        menu: {\r\n          x: ev.clientX,\r\n          y: ev.clientY,\r\n          trigger: ev.target\r\n        }\r\n      });\r\n      this.managePopup('menu', override);\r\n      this.overlayClick.next(true);\r\n    } else {\r\n      this.managePopup('popup', override);\r\n      this.overlayClick.next(false);\r\n    }\r\n\r\n    this.applyCss(this.popupEl, this.nitroPopupCSS.getValue());\r\n\r\n    this.addClass(this.popupEl, 'open');\r\n    this.addClass(this.overlayEl, 'active');\r\n    this.addClass(this.popupEl, this.config.animateIn);\r\n    this.isPopupOpen.next(true);\r\n\r\n    if (this.config.animateIn) {\r\n      const animationendEvents = this.getAnimationEndEvents().subscribe(() => {\r\n        this.removeClass(this.popupEl, this.config.animateIn);\r\n        animationendEvents.unsubscribe();\r\n      });\r\n      nitroSubject.next({\r\n        target: this,\r\n        event: new Event('nitro.popup.opened')\r\n      });\r\n      return nitroSubject;\r\n    } else {\r\n      nitroSubject.next({\r\n        target: this,\r\n        event: new Event('nitro.popup.opened')\r\n      });\r\n      return nitroSubject;\r\n    }\r\n  }\r\n\r\n  close(opt?: any): Observable<any> {\r\n    const nitroSubject = new ReplaySubject(1);\r\n    const ev = opt.event || new Event('nitro.popup.closing');\r\n    this.config = this.getConfig();\r\n    this.addClass(this.popupEl, this.config.animateOut);\r\n\r\n    // console.log(this.getAnimationEndEvents(), this.overlayEl, this.config.animateOut);\r\n\r\n    if (this.config.animateOut) {\r\n      const animationendEvents = this.getAnimationEndEvents().subscribe(() => {\r\n        // console.log('Animation Ends');\r\n        this.removeClass(this.popupEl, this.config.animateOut);\r\n        this.closePopup();\r\n\r\n        animationendEvents.unsubscribe();\r\n      });\r\n    } else {\r\n      this.closePopup();\r\n    }\r\n\r\n    this.setConfig(this.defaultConfig);\r\n\r\n    nitroSubject.next({\r\n      target: this,\r\n      event: new Event('nitro.popup.closed')\r\n    });\r\n\r\n    return nitroSubject;\r\n  }\r\n\r\n  private closePopup() {\r\n    // console.log(this.config.relate);\r\n    // this.relatePopup(this.config.relate);\r\n    this.removeClass(this.popupEl, 'open');\r\n    this.removeClass(this.overlayEl, 'active inlineMock');\r\n    this.removeCSS(this.popupEl);\r\n    this.removeCSS(this.overlayEl);\r\n    this.removeClass(document.querySelectorAll('body'), 'modalOpen');\r\n    this.isPopupOpen.next(false);\r\n  }\r\n}\r\n","import {\r\n  Input,\r\n  OnInit,\r\n  Component,\r\n  OnDestroy,\r\n  ViewChild,\r\n  ElementRef,\r\n  AfterViewInit\r\n} from '@angular/core';\r\nimport { PopupService } from './popup.service';\r\nimport { NitroPopupConfig } from './NitroPopupConfig';\r\n\r\n@Component({\r\n  selector: 'nitro-popup',\r\n  templateUrl: './popup.component.html',\r\n  styleUrls: ['./popup.component.scss']\r\n})\r\nexport class PopupComponent implements OnInit, AfterViewInit, OnDestroy {\r\n  @Input()\r\n  config!: NitroPopupConfig;\r\n\r\n  @ViewChild('popupID', { static: false })\r\n  public popupID!: ElementRef;\r\n\r\n  @ViewChild('overlay', { static: false })\r\n  public overlay!: ElementRef;\r\n\r\n  constructor(\r\n    public popupService: PopupService\r\n  ) {\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    // this.config.css = this.config.css ? this.config.css : {};\r\n    // this.config.delay = this.config.delay ? this.config.delay : 0;\r\n    const popupCustomId = 'popup_' + Math.random().toString(36).substr(2, 8);\r\n    this.config = {\r\n      ...{\r\n        css: {},\r\n        delay: 0,\r\n        width: '50%',\r\n        height: '50%',\r\n        dismiss: true,\r\n        menu: undefined,\r\n        id: popupCustomId,\r\n        position: 'center',\r\n        class: popupCustomId\r\n      }, ...this.config\r\n    };\r\n    this.popupService.nitroPopupConfig.next(this.config);\r\n  }\r\n\r\n  ngAfterViewInit(): void {\r\n    this.popupService.popup.next(this.popupID);\r\n    this.popupService.overlay.next(this.overlay);\r\n    this.popupService.popupEl = this.popupService.popup.getValue().nativeElement;\r\n    this.popupService.overlayEl = this.popupService.overlay.getValue().nativeElement;\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    // alert('Destroyed');\r\n  }\r\n\r\n  disableClick(ev: any): void {\r\n    ev.preventDefault();\r\n  }\r\n\r\n  enableNativeMenu(ev: any): void {\r\n    // console.log('nativeMenu')\r\n  }\r\n\r\n  dismissWithOverlay(ev: any): void {\r\n    if (!this.config.dismiss) {\r\n      ev.preventDefault();\r\n      return;\r\n    } else {\r\n      if (ev.target.classList.contains('nitroOverlay')) {\r\n        this.popupService.close({ event: ev });\r\n      } else {\r\n        ev.preventDefault();\r\n        return;\r\n      }\r\n    }\r\n  }\r\n}\r\n","<div class=\"nitroOverlay {{config.overlayClass}}\" (click)=\"dismissWithOverlay($event)\"\r\n  (contextmenu)=\"popupService.nitroPopupConfig.getValue().menu ? disableClick($event): enableNativeMenu($event)\"\r\n  #overlay>\r\n  <div #popupID [id]=\"config.id\" class=\"nitroPopup {{config.id}} {{config.class}}\">\r\n    <ng-container *ngTemplateOutlet=\"config.customLayout ? config.customLayout: defaultLayout\"></ng-container>\r\n\r\n    <ng-template #defaultLayout>\r\n      <aside *ngIf=\"config.sideLayout && config.customLayout === undefined\">\r\n        <ng-container *ngTemplateOutlet=\"config.sideLayout ? config.sideLayout: defaultSideLayout\"></ng-container>\r\n      </aside>\r\n      <main class=\"nitroPopMain\">\r\n        <div class=\"nitroPopHeader\" *ngIf=\"config.headerLayout && config.customLayout === undefined\">\r\n          <ng-container *ngTemplateOutlet=\"config.headerLayout ? config.headerLayout: defaultHeaderLayout\">\r\n          </ng-container>\r\n        </div>\r\n        <div class=\"nitroPopContent\" *ngIf=\"config.contentLayout && config.customLayout === undefined\">\r\n          <ng-container *ngTemplateOutlet=\"config.contentLayout ? config.contentLayout: defaultContentLayout\">\r\n          </ng-container>\r\n        </div>\r\n        <div class=\"nitroPopFooter\" *ngIf=\"config.footerLayout && config.customLayout === undefined\">\r\n          <ng-container *ngTemplateOutlet=\"config.footerLayout ? config.footerLayout: defaultFooterLayout\">\r\n          </ng-container>\r\n        </div>\r\n      </main>\r\n    </ng-template>\r\n    <ng-template #defaultHeaderLayout>\r\n      <span class=\"title\">Header</span>\r\n      <button class=\"btn close\" (click)=\"popupService.close({event: $event})\">&times;</button>\r\n    </ng-template>\r\n    <ng-template #defaultFooterLayout></ng-template>\r\n    <ng-template #defaultContentLayout></ng-template>\r\n    <ng-template #defaultSideLayout></ng-template>\r\n  </div>\r\n</div>\r\n\r\n<div *ngIf=\"popupService.nitroPopupConfig.getValue().menu\" [ngStyle]=\"{\r\n  'top.px': popupService.nitroPopupConfig.getValue().menu?.y,\r\n  'left.px': popupService.nitroPopupConfig.getValue().menu?.x\r\n}\" class=\"menuWrapper\"></div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopupService } from './popup.service';\r\nimport { PopupComponent } from './popup.component';\r\n\r\n\r\n\r\n@NgModule({\r\n  declarations: [\r\n    PopupComponent\r\n  ],\r\n  imports: [\r\n    CommonModule\r\n  ],\r\n  exports: [\r\n    PopupComponent\r\n  ],\r\n  providers: [\r\n    PopupService\r\n  ]\r\n})\r\nexport class PopupModule { }\r\n","/*\r\n * Public API Surface of popup\r\n */\r\n\r\nexport * from './lib/popup.service';\r\nexport * from './lib/popup.component';\r\nexport * from './lib/popup.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.PopupService"],"mappings":"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"}