{"version":3,"file":"ymaps3-angular.mjs","sources":["../../../projects/ymaps3-angular/src/lib/tokens.ts","../../../projects/ymaps3-angular/src/lib/loader.service.ts","../../../projects/ymaps3-angular/src/lib/map-ref.ts","../../../projects/ymaps3-angular/src/lib/provide-ymaps3.ts","../../../projects/ymaps3-angular/src/lib/ymap.component.ts","../../../projects/ymaps3-angular/src/lib/layers/default-scheme-layer.component.ts","../../../projects/ymaps3-angular/src/lib/layers/default-features-layer.component.ts","../../../projects/ymaps3-angular/src/lib/marker/ymap-marker.component.ts","../../../projects/ymaps3-angular/src/lib/feature/ymap-polyline.component.ts","../../../projects/ymaps3-angular/src/lib/feature/ymap-polygon.component.ts","../../../projects/ymaps3-angular/src/lib/feature/ymap-feature-source.component.ts","../../../projects/ymaps3-angular/src/lib/feature/ymap-polyline-animated.component.ts","../../../projects/ymaps3-angular/src/lib/clusterer/ymap-clusterer.component.ts","../../../projects/ymaps3-angular/src/lib/controls/ymap-zoom-control.component.ts","../../../projects/ymaps3-angular/src/ymaps3-angular.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport interface YMaps3LoaderOptions {\r\n  apiKey?: string;           // If omitted, you must provide a custom cdnUrl or skipCdn=true\r\n  lang?: string;             // 'ru_RU' | 'en_US' | 'uz_UZ' | etc.\r\n  query?: string;            // extra query string\r\n  skipCdn?: boolean;         // do not inject <script>; expect global ymaps3\r\n  cdnUrl?: string;           // custom URL for the loader\r\n}\r\n\r\nexport const YMAPS3_LOADER_OPTIONS = new InjectionToken<YMaps3LoaderOptions>('YMAPS3_LOADER_OPTIONS');\r\n","import { Inject, Injectable, Optional, PLATFORM_ID, inject } from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { YMAPS3_LOADER_OPTIONS, YMaps3LoaderOptions } from './tokens';\r\n\r\ndeclare global {\r\n  // eslint-disable-next-line @typescript-eslint/no-namespace\r\n  namespace ymaps3 {\r\n    const ready: Promise<void>;\r\n    class YMap {\r\n      constructor(container: HTMLElement, options: any);\r\n      addChild(child: any): void; removeChild(child: any): void; destroy(): void;\r\n    }\r\n    class YMapDefaultSchemeLayer { constructor(opts?: any); }\r\n    class YMapDefaultFeaturesLayer { constructor(opts?: any); }\r\n    class YMapMarker {\r\n      constructor(opts: { coordinates: [number, number]; draggable?: boolean }, element?: HTMLElement);\r\n      setCoordinates(c: [number, number]): void;\r\n    }\r\n    class YMapFeature { constructor(opts: { geometry: any; style?: any; properties?: any }); }\r\n  }\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class YMaps3LoaderService {\r\n  private _loading?: Promise<typeof ymaps3>;\r\n  private platformId = inject(PLATFORM_ID);\r\n\r\n  constructor(@Optional() @Inject(YMAPS3_LOADER_OPTIONS) private opts: YMaps3LoaderOptions | null) {}\r\n\r\n  load(): Promise<typeof ymaps3> {\r\n    if (!isPlatformBrowser(this.platformId)) {\r\n      return Promise.reject(new Error('[ymaps3-angular] Loader can only run in browser.'));\r\n    }\r\n    const g: any = (globalThis as any);\r\n    if (g.ymaps3) return g.ymaps3.ready.then(() => g.ymaps3);\r\n    if (this._loading) return this._loading;\r\n\r\n    const { apiKey, lang = 'en_US', query = '', skipCdn = false, cdnUrl } = this.opts ?? {};\r\n\r\n    if (skipCdn) {\r\n      this._loading = new Promise((resolve, reject) => {\r\n        const g2: any = (globalThis as any);\r\n        if (g2.ymaps3) g2.ymaps3.ready.then(() => resolve(g2.ymaps3));\r\n        else reject(new Error('[ymaps3-angular] skipCdn=true but global ymaps3 not found'));\r\n      });\r\n      return this._loading;\r\n    }\r\n\r\n    if (!apiKey && !cdnUrl) {\r\n      return Promise.reject(new Error('[ymaps3-angular] Provide apiKey or cdnUrl in YMAPS3_LOADER_OPTIONS.'));\r\n    }\r\n\r\n    const src = cdnUrl ?? `https://api-maps.yandex.ru/v3/?apikey=${encodeURIComponent(apiKey!)}&lang=${encodeURIComponent(lang)}${query||''}`;\r\n\r\n    this._loading = new Promise<typeof ymaps3>((resolve, reject) => {\r\n      const s = document.createElement('script');\r\n      s.async = true; s.src = src;\r\n      s.onload = async () => { try { const g3:any = (globalThis as any); await g3.ymaps3.ready; resolve(g3.ymaps3); } catch(e){ reject(e);} };\r\n      s.onerror = () => reject(new Error('[ymaps3-angular] Failed to load Yandex Maps v3 script.'));\r\n      document.head.appendChild(s);\r\n    });\r\n    return this._loading;\r\n  }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport interface YMapRef { map: ymaps3.YMap; addChild(node: any): void; removeChild(node: any): void; }\r\nexport const YMAP_REF = new InjectionToken<YMapRef>('YMAP_REF');\r\n","import { Provider } from '@angular/core';\r\nimport { YMAPS3_LOADER_OPTIONS, YMaps3LoaderOptions } from './tokens';\r\nexport function provideYMaps3(opts: YMaps3LoaderOptions): Provider { return { provide: YMAPS3_LOADER_OPTIONS, useValue: opts }; }\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, EventEmitter, Input, OnChanges, Output, Provider, SimpleChanges, inject } from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { PLATFORM_ID } from '@angular/core';\r\nimport { YMaps3LoaderService } from './loader.service';\r\nimport { YMAP_REF } from './map-ref';\r\n\r\nexport type YMapLocation = { center: [number, number]; zoom: number; rotation?: number; tilt?: number };\r\n\r\n@Component({\r\n  selector: 'ymap',\r\n  standalone: true,\r\n  template: `<div class=\"ymap__host\" style=\"width:100%;height:100%\"></div><ng-content />`,\r\n  styles: [`.ymap__host{display:block;position:relative;width:100%;height:100%}`],\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  providers: [{\r\n    provide: YMAP_REF,\r\n    useFactory: () => {\r\n      const self = inject(YMapComponent);\r\n      return { get map(){ return self._map!; }, addChild: (n:any)=> self._map?.addChild(n), removeChild: (n:any)=> self._map?.removeChild(n) } satisfies import('./map-ref').YMapRef;\r\n    }\r\n  } as Provider]\r\n})\r\nexport class YMapComponent implements AfterViewInit, OnChanges {\r\n  private el = inject(ElementRef<HTMLElement>);\r\n  private platformId = inject(PLATFORM_ID);\r\n  private loader = inject(YMaps3LoaderService);\r\n  private destroyRef = inject(DestroyRef);\r\n\r\n  @Input({ required: true }) location!: YMapLocation;\r\n  @Output() ready = new EventEmitter<ymaps3.YMap>();\r\n\r\n  _map?: ymaps3.YMap;\r\n\r\n  async ngAfterViewInit() {\r\n    if (!isPlatformBrowser(this.platformId)) return;\r\n    const ym = await this.loader.load();\r\n    const host = this.el.nativeElement.querySelector('.ymap__host') as HTMLElement;\r\n    const m = new ym.YMap(host, { location: this.location });\r\n    this._map = m; this.ready.emit(m);\r\n    this.destroyRef.onDestroy(()=>{ try{ m.destroy(); }catch{} this._map=undefined; });\r\n  }\r\n\r\n  // (Optional) controlled camera updates could be handled here when YMap exposes setters.\r\n  ngOnChanges(_: SimpleChanges) {}\r\n}\r\n","import { Component, DestroyRef, OnInit, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\n\r\n@Component({ selector: 'ymap-default-scheme-layer', standalone: true, template: `` })\r\nexport class YMapDefaultSchemeLayerComponent implements OnInit {\r\n  private mapRef = inject(YMAP_REF); private loader = inject(YMaps3LoaderService); private destroyRef = inject(DestroyRef);\r\n  private node?: ymaps3.YMapDefaultSchemeLayer;\r\n  async ngOnInit(){ await this.loader.load(); this.node = new (globalThis as any).ymaps3.YMapDefaultSchemeLayer(); this.mapRef.addChild(this.node);\r\n    this.destroyRef.onDestroy(()=>{ if(this.node) this.mapRef.removeChild(this.node); }); }\r\n}\r\n","import { Component, DestroyRef, OnInit, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\n\r\n@Component({ selector: 'ymap-default-features-layer', standalone: true, template: `` })\r\nexport class YMapDefaultFeaturesLayerComponent implements OnInit {\r\n  private mapRef = inject(YMAP_REF); private loader = inject(YMaps3LoaderService); private destroyRef = inject(DestroyRef);\r\n  private node?: ymaps3.YMapDefaultFeaturesLayer;\r\n  async ngOnInit(){ await this.loader.load(); this.node = new (globalThis as any).ymaps3.YMapDefaultFeaturesLayer(); this.mapRef.addChild(this.node);\r\n    this.destroyRef.onDestroy(()=>{ if(this.node) this.mapRef.removeChild(this.node); }); }\r\n}\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, Input, OnChanges, SimpleChanges, ViewEncapsulation, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\n\r\n@Component({\r\n  selector: 'ymap-marker', standalone: true,\r\n  template: `<div class=\"ymap-marker\"><ng-content /></div>`,\r\n  styles: [`.ymap-marker{position:relative;transform:translate(-50%,-100%)}`],\r\n  encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class YMapMarkerComponent implements AfterViewInit, OnChanges {\r\n  private mapRef = inject(YMAP_REF); private loader = inject(YMaps3LoaderService); private destroyRef = inject(DestroyRef); private host = inject(ElementRef<HTMLElement>);\r\n  @Input({required:true}) coordinates!: [number, number]; @Input() draggable=false;\r\n  private node?: ymaps3.YMapMarker;\r\n  async ngAfterViewInit(){ await this.loader.load(); this.node = new (globalThis as any).ymaps3.YMapMarker({coordinates:this.coordinates, draggable:this.draggable}, this.host.nativeElement.firstElementChild as HTMLElement); this.mapRef.addChild(this.node);\r\n    this.destroyRef.onDestroy(()=>{ if(this.node) this.mapRef.removeChild(this.node); this.node=undefined; }); }\r\n  ngOnChanges(ch: SimpleChanges){ if(this.node && ch['coordinates'] && !ch['coordinates'].firstChange){ this.node.setCoordinates(this.coordinates);} }\r\n}\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, Input, OnChanges, SimpleChanges, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\nexport type PolylineCoordinates = [number, number][];\r\n@Component({ selector:'ymap-polyline', standalone:true, template:``, changeDetection:ChangeDetectionStrategy.OnPush })\r\nexport class YMapPolylineComponent implements AfterViewInit, OnChanges {\r\n  private mapRef = inject(YMAP_REF); private loader = inject(YMaps3LoaderService); private destroyRef = inject(DestroyRef);\r\n  @Input({required:true}) coordinates!: PolylineCoordinates; @Input() strokeColor='#2563eb'; @Input() strokeWidth=4; @Input() strokeOpacity=1; @Input() zIndex?: number;\r\n  private node?: ymaps3.YMapFeature;\r\n  private build(){ const geometry={ type:'LineString', coordinates:this.coordinates } as const; const style:any={ strokeColor:this.strokeColor, strokeWidth:this.strokeWidth, strokeOpacity:this.strokeOpacity, zIndex:this.zIndex}; return new (globalThis as any).ymaps3.YMapFeature({ geometry, style }); }\r\n  async ngAfterViewInit(){ await this.loader.load(); this.node=this.build(); this.mapRef.addChild(this.node); this.destroyRef.onDestroy(()=>{ if(this.node) this.mapRef.removeChild(this.node); this.node=undefined;}); }\r\n  ngOnChanges(ch: SimpleChanges){ if(!this.node) return; if(ch['coordinates']||ch['strokeColor']||ch['strokeWidth']||ch['strokeOpacity']||ch['zIndex']){ this.mapRef.removeChild(this.node); this.node=this.build(); this.mapRef.addChild(this.node);} }\r\n}\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, Input, OnChanges, SimpleChanges, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\nexport type LinearRing = [number, number][];\r\n@Component({ selector:'ymap-polygon', standalone:true, template:``, changeDetection:ChangeDetectionStrategy.OnPush })\r\nexport class YMapPolygonComponent implements AfterViewInit, OnChanges {\r\n  private mapRef = inject(YMAP_REF); private loader = inject(YMaps3LoaderService); private destroyRef = inject(DestroyRef);\r\n  @Input({required:true}) outer!: LinearRing; @Input() holes: LinearRing[] = [];\r\n  @Input() fillColor='rgba(37,99,235,.15)'; @Input() fillOpacity=1; @Input() strokeColor='#2563eb'; @Input() strokeWidth=2; @Input() strokeOpacity=1; @Input() zIndex?: number;\r\n  private node?: ymaps3.YMapFeature;\r\n  private build(){ const geometry={ type:'Polygon', coordinates:[this.outer, ...this.holes] } as const; const style:any={ fillColor:this.fillColor, fillOpacity:this.fillOpacity, strokeColor:this.strokeColor, strokeWidth:this.strokeWidth, strokeOpacity:this.strokeOpacity, zIndex:this.zIndex}; return new (globalThis as any).ymaps3.YMapFeature({ geometry, style }); }\r\n  async ngAfterViewInit(){ await this.loader.load(); this.node=this.build(); this.mapRef.addChild(this.node); this.destroyRef.onDestroy(()=>{ if(this.node) this.mapRef.removeChild(this.node); this.node=undefined;}); }\r\n  ngOnChanges(_: SimpleChanges){ if(!this.node) return; this.mapRef.removeChild(this.node); this.node=this.build(); this.mapRef.addChild(this.node);} }\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, Input, OnChanges, SimpleChanges, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\nexport interface FeatureCollection { type:'FeatureCollection'; features: Array<{ geometry:any; style?:any; properties?:any }>; }\r\n@Component({ selector:'ymap-feature-source', standalone:true, template:``, changeDetection:ChangeDetectionStrategy.OnPush })\r\nexport class YMapFeatureSourceComponent implements AfterViewInit, OnChanges {\r\n  private mapRef=inject(YMAP_REF); private loader=inject(YMaps3LoaderService); private destroyRef=inject(DestroyRef);\r\n  @Input({required:true}) collection!: FeatureCollection;\r\n  private nodes: ymaps3.YMapFeature[] = [];\r\n  async ngAfterViewInit(){ await this.loader.load(); this.render(); this.destroyRef.onDestroy(()=>{ this.clear(); }); }\r\n  ngOnChanges(ch: SimpleChanges){ if(!this.nodes.length) return; if(ch['collection']){ this.clear(); this.render(); } }\r\n  private render(){ const ym=(globalThis as any).ymaps3 as typeof ymaps3; for(const f of this.collection.features){ const node = new ym.YMapFeature({ geometry:f.geometry, style:f.style, properties:f.properties }); this.nodes.push(node); this.mapRef.addChild(node);} }\r\n  private clear(){ for(const n of this.nodes){ this.mapRef.removeChild(n);} this.nodes=[]; }\r\n}\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, Input, OnDestroy, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\n\r\n@Component({ selector:'ymap-polyline-animated', standalone:true, template:``, changeDetection:ChangeDetectionStrategy.OnPush })\r\nexport class YMapPolylineAnimatedComponent implements AfterViewInit, OnDestroy {\r\n  private mapRef=inject(YMAP_REF); private loader=inject(YMaps3LoaderService); private destroyRef=inject(DestroyRef);\r\n  @Input({required:true}) coordinates!: [number,number][]; // route points in order\r\n  @Input() speed = 50; // meters per second (approx – linear lon/lat)\r\n  @Input() loop = false;\r\n  private marker?: ymaps3.YMapMarker; private frame?: number; private t=0; private total=0; private segLens: number[]=[];\r\n\r\n  async ngAfterViewInit(){ await this.loader.load(); if(!this.coordinates || this.coordinates.length<2) return;\r\n    const ym=(globalThis as any).ymaps3 as typeof ymaps3;\r\n    // Precompute total pseudo-length (simple haversine approximation could be added; here linear)\r\n    this.segLens=[]; this.total=0; for(let i=0;i<this.coordinates.length-1;i++){ const a=this.coordinates[i], b=this.coordinates[i+1]; const d=Math.hypot(b[0]-a[0], b[1]-a[1]); this.segLens.push(d); this.total+=d; }\r\n    this.marker = new ym.YMapMarker({ coordinates: this.coordinates[0] }, (()=>{ const el=document.createElement('div'); el.textContent='▶'; el.style.transform='translate(-50%,-50%)'; el.style.fontSize='16px'; return el; })());\r\n    this.mapRef.addChild(this.marker);\r\n    let last = performance.now();\r\n    const tick = (now:number)=>{\r\n      const dt = (now-last)/1000; last=now; this.t += (this.speed/1000) * dt; // \"speed\" scaled down because coords are degrees\r\n      const pos = this.sample(Math.min(this.t, 1)); if(this.marker) this.marker.setCoordinates(pos);\r\n      if(this.t<1){ this.frame = requestAnimationFrame(tick); } else if(this.loop){ this.t=0; this.frame=requestAnimationFrame(tick); }\r\n    };\r\n    this.frame = requestAnimationFrame(tick);\r\n    this.destroyRef.onDestroy(()=>this.cleanup());\r\n  }\r\n\r\n  private sample(t:number): [number,number]{ // map t∈[0,1] to polyline\r\n    if(this.coordinates.length===2){ const a=this.coordinates[0], b=this.coordinates[1]; return [a[0]+(b[0]-a[0])*t, a[1]+(b[1]-a[1])*t]; }\r\n    let acc=0; const target=t*this.total;\r\n    for(let i=0;i<this.segLens.length;i++){ const L=this.segLens[i]; if(acc+L>=target){ const a=this.coordinates[i], b=this.coordinates[i+1]; const r=(target-acc)/L; return [a[0]+(b[0]-a[0])*r, a[1]+(b[1]-a[1])*r]; } acc+=L; }\r\n    return this.coordinates[this.coordinates.length-1];\r\n  }\r\n\r\n  ngOnDestroy(){ this.cleanup(); }\r\n  private cleanup(){ if(this.frame) cancelAnimationFrame(this.frame); if(this.marker){ this.mapRef.removeChild(this.marker); this.marker=undefined; } }\r\n}\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, Input, OnChanges, SimpleChanges, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\nexport interface ClusterFeature { id?: string|number; geometry:{ type:'Point'; coordinates:[number,number] }; properties?: Record<string,any> }\r\n@Component({ selector:'ymap-clusterer', standalone:true, template:``, changeDetection:ChangeDetectionStrategy.OnPush })\r\nexport class YMapClustererComponent implements AfterViewInit, OnChanges {\r\n  private mapRef=inject(YMAP_REF); private loader=inject(YMaps3LoaderService); private destroyRef=inject(DestroyRef);\r\n  @Input({required:true}) features!: ClusterFeature[]; @Input() gridSize=64;\r\n  @Input() markerRenderer?: (f: ClusterFeature)=> any; @Input() clusterRenderer?: (center:[number,number], list: ClusterFeature[])=> any;\r\n  private node?: any; // YMapClusterer\r\n  private async build(ym: typeof ymaps3){ const { YMapClusterer, clusterByGrid } = await (globalThis as any).ymaps3.import('@yandex/ymaps3-clusterer');\r\n    const method = clusterByGrid({ gridSize: this.gridSize });\r\n    const marker = this.markerRenderer ? (f:any)=>this.markerRenderer!(f) : (f:any)=> new ym.YMapMarker({coordinates:f.geometry.coordinates}, (()=>{ const el=document.createElement('div'); el.textContent='•'; el.style.fontSize='18px'; el.style.transform='translate(-50%,-50%)'; return el; })());\r\n    const cluster = this.clusterRenderer ? (c:any,l:any[])=>this.clusterRenderer!(c,l) : (c:[number,number], l:any[])=> new ym.YMapMarker({coordinates:c}, (()=>{ const el=document.createElement('div'); el.textContent=String(l.length); el.style.fontSize='12px'; el.style.padding='6px 8px'; el.style.borderRadius='999px'; el.style.background='#2563eb'; el.style.color='#fff'; el.style.transform='translate(-50%,-50%)'; el.style.boxShadow='0 2px 8px rgba(0,0,0,.2)'; return el; })());\r\n    return new YMapClusterer({ method, features: this.features as any, marker, cluster }); }\r\n  async ngAfterViewInit(){ const ym=await this.loader.load(); this.node=await this.build(ym); this.mapRef.addChild(this.node); this.destroyRef.onDestroy(()=>{ if(this.node) this.mapRef.removeChild(this.node); this.node=undefined;}); }\r\n  async ngOnChanges(ch: SimpleChanges){ if(!this.node) return; if(ch['features']||ch['gridSize']){ this.mapRef.removeChild(this.node); const ym=(globalThis as any).ymaps3 as typeof ymaps3; this.node=await this.build(ym); this.mapRef.addChild(this.node);} }\r\n}\r\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, Input, inject } from '@angular/core';\r\nimport { YMAP_REF } from '../map-ref';\r\nimport { YMaps3LoaderService } from '../loader.service';\r\nexport type ControlPosition = 'left'|'right';\r\n@Component({ selector:'ymap-zoom-control', standalone:true, template:``, changeDetection:ChangeDetectionStrategy.OnPush })\r\nexport class YMapZoomControlComponent implements AfterViewInit {\r\n  private mapRef=inject(YMAP_REF); private loader=inject(YMaps3LoaderService); private destroyRef=inject(DestroyRef);\r\n  @Input() position: ControlPosition='right'; @Input() margin: number | [number,number] | [number,number,number,number]=16;\r\n  private node?: any;\r\n  async ngAfterViewInit(){ await this.loader.load(); const { YMapZoomControl }=await (globalThis as any).ymaps3.import('@yandex/ymaps3-default-ui-theme'); this.node=new YMapZoomControl({ position:this.position, margin:this.margin as any }); this.mapRef.addChild(this.node); this.destroyRef.onDestroy(()=>{ if(this.node) this.mapRef.removeChild(this.node); }); }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}