{"version":3,"file":"yunzai-iframe-page.mjs","sources":["../../../../packages/bcs/yunzai-iframe-page/yunzai-iframe-page.component.ts","../../../../packages/bcs/yunzai-iframe-page/yunzai-iframe-page.module.ts","../../../../packages/bcs/yunzai-iframe-page/yunzai-iframe-page.ts"],"sourcesContent":["import { Component, inject, OnDestroy, OnInit } from '@angular/core';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\n\nimport { MenuService } from '@yelon/theme';\nimport { LayoutDefaultService } from '@yelon/theme/layout-default';\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\n\n@Component({\n  selector: `yunzai-iframe-page`,\n  template: `\n    @if (hasIframe && iframePageHeight) {\n      <div class=\"yunzai-iframe-page\" [style.height]=\"iframePageHeight\">\n        <iframe [src]=\"iframeSafeSrc\">\n          <p>您的浏览器不支持 iframe 标签。</p>\n        </iframe>\n      </div>\n    } @else {\n      <nz-spin nzSpinning=\"true\" />\n    }\n  `,\n\n  imports: [NzSpinModule]\n})\nexport class YunzaiIframePageComponent implements OnInit, OnDestroy {\n  private readonly sanitizer: DomSanitizer = inject(DomSanitizer);\n  private readonly menuService: MenuService = inject(MenuService);\n  private readonly layoutService: LayoutDefaultService = inject(LayoutDefaultService);\n\n  iframeSafeSrc?: SafeResourceUrl;\n  iframePageHeight?: string;\n  hasIframe: boolean = false;\n  resizeHandle: any;\n\n  ngOnInit(): void {\n    this.iframePageHeight = this.layoutService.options.hideHeader\n      ? `${window.innerHeight - 55}px`\n      : `${window.innerHeight - 64 - 55}px`;\n\n    this.resizeHandle = () => {\n      this.iframePageHeight = this.layoutService.options.hideHeader\n        ? `${window.innerHeight - 55}px`\n        : `${window.innerHeight - 64 - 55}px`;\n    };\n    window.addEventListener('resize', this.resizeHandle);\n    this.getIframeUrl();\n  }\n\n  ngOnDestroy(): void {\n    window.removeEventListener('resize', this.resizeHandle);\n  }\n\n  getIframeUrl(): void {\n    this.menuService.getRouterLink().subscribe((url: any) => {\n      if (url) {\n        this.hasIframe = true;\n        this.iframeSafeSrc = this.sanitizer.bypassSecurityTrustResourceUrl(url);\n      } else {\n        if (localStorage.getItem('iframeSrc')) {\n          this.hasIframe = true;\n          const url: string = localStorage.getItem('iframeSrc') as string;\n          this.iframeSafeSrc = this.sanitizer.bypassSecurityTrustResourceUrl(url);\n        } else {\n          this.hasIframe = false;\n        }\n      }\n    });\n  }\n}\n","import { NgModule } from '@angular/core';\n\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\n\nimport { YunzaiIframePageComponent } from './yunzai-iframe-page.component';\n\nexport const COMPONENTS = [YunzaiIframePageComponent];\n\n@NgModule({\n  imports: [NzSpinModule, ...COMPONENTS],\n  exports: COMPONENTS\n})\nexport class YunzaiIframePageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}