{"version":3,"file":"FullScreenSymbol.mjs","sources":["../../../../../../../packages/sdk/plugins/weather/util/FullScreenSymbol.ts"],"sourcesContent":["import * as L from 'leaflet'\nimport { WeatherSymbolHandler } from '@map-sdk/sdk/plugins/weather/util/WeatherSymbolHandler'\nimport { showWeatherTipMessage } from './ShowWeatherTipMessage'\nimport type { MyMap } from '@map-sdk/sdk/ShipxyAPISDK'\nimport type { ShowFullScreenTitleLayer } from '@map-sdk/sdk/plugins/weather/util/ShowFullScreenTitleLayer'\nexport class FullScreenSymbol {\n  private _map: MyMap\n  private _symbolLayer: L.LayerGroup\n  private types: number\n  private data: any\n  private fullScreenTitleLayer?: ShowFullScreenTitleLayer // 假设 L.ShowFullScreenTitleLayer 是一个有效的 Leaflet 扩展\n\n  private weatherMsg: any\n\n  constructor(map: MyMap, type: number, data?: any) {\n    this._map = map\n    this._symbolLayer = L.layerGroup().addTo(map)\n    this.types = type\n    this.data = data\n  }\n\n  // TODO: 暂未请求接口\n  private loadData(reload = false): void {\n    const { types } = this\n    const zoom = this._map.getZoom()\n    if (!(zoom < 2 || zoom > 7)) {\n      // let data = types === 15 ? (hl as any).data : (test as any).data\n      if (this.data && !reload) {\n        this._displayData(this.data, types)\n      } else {\n        this.data = this.adjustData(this.data)\n        this._displayData(this.data, types)\n      }\n    }\n  }\n\n  _displayData(data: any[], dataType: number) {\n    const weatherSymbolHandler = new WeatherSymbolHandler(\n      this._map,\n      this._symbolLayer\n    )\n    weatherSymbolHandler.displayWeatherData(data, dataType)\n  }\n  adjustData(rawData: any[]) {\n    const adjustedData = JSON.parse(JSON.stringify(rawData))\n    for (const point of adjustedData) {\n      if (point.x > 0) {\n        point.x -= 360000\n      } else if (point.x < 0) {\n        point.x += 360000\n      }\n    }\n\n    return rawData.concat(adjustedData)\n  }\n  private _Event = {\n    moveend: () => this.moveHandle(),\n  }\n  public show(data?: any, QBBeginTime?: Record<string, any>): void {\n    console.log(data, QBBeginTime)\n    this.remove()\n    // this._forecasttime = `${CanvasShipUtils.dataFormat(new Date(), 'YYYY-MM-DD')} 20:00:00`\n    // data && data.length > 0 && (this._forecasttime = data)\n    // this._QBBeginTime = QBBeginTime\n    this.loadData(true)\n    this._map.on('moveend ', this._Event.moveend)\n    this.weatherMsg = showWeatherTipMessage(\n      this._map,\n      this.types === 13 ? 'showWind' : 'showHL'\n    )\n  }\n  private moveHandle() {\n    this._symbolLayer.clearLayers()\n    this.loadData()\n  }\n\n  public remove(): void {\n    this.fullScreenTitleLayer &&\n      this.fullScreenTitleLayer.hideFullScreenTileLayer()\n    this._symbolLayer.clearLayers()\n    this._map.off('moveend', this._Event.moveend)\n    this.weatherMsg && this.weatherMsg.offRegisterEvent()\n  }\n}\n"],"names":["FullScreenSymbol","constructor","e","t","a","this","_Event","moveend","moveHandle","_map","_symbolLayer","s","layerGroup","addTo","types","data","loadData","getZoom","adjustData","_displayData","i","displayWeatherData","JSON","parse","stringify","x","concat","show","remove","on","weatherMsg","r","clearLayers","fullScreenTitleLayer","hideFullScreenTileLayer","off","offRegisterEvent"],"mappings":"gKAA+L,MAAMA,EAAiB,WAAAC,CAAYC,EAAEC,EAAEC,GAAGC,KAAKC,OAAO,CAACC,QAAQ,IAAIF,KAAKG,cAAcH,KAAKI,KAAKP,EAAEG,KAAKK,aAAaC,EAAEC,aAAaC,MAAMX,GAAGG,KAAKS,MAAMX,EAAEE,KAAKU,KAAKX,CAAC,CAAC,QAAAY,CAASd,GAAE,GAAI,MAAMY,MAAMX,GAAGE,KAAKD,EAAEC,KAAKI,KAAKQ,UAAUb,EAAE,GAAGA,EAAE,IAAIC,KAAKU,OAAOb,IAAkCG,KAAKU,KAAKV,KAAKa,WAAWb,KAAKU,OAA/DV,KAAKc,aAAad,KAAKU,KAAKZ,GAAyE,CAAC,YAAAgB,CAAajB,EAAEC,GAAG,IAAIiB,EAAEf,KAAKI,KAAKJ,KAAKK,cAAcW,mBAAmBnB,EAAEC,EAAE,CAAC,UAAAe,CAAWhB,GAAG,MAAMC,EAAEmB,KAAKC,MAAMD,KAAKE,UAAUtB,IAAI,IAAI,MAAME,KAAKD,EAAEC,EAAEqB,EAAE,EAAErB,EAAEqB,GAAG,KAAKrB,EAAEqB,EAAE,IAAIrB,EAAEqB,GAAG,MAAM,OAAOvB,EAAEwB,OAAOvB,EAAE,CAAC,IAAAwB,CAAKzB,EAAEC,GAAoBE,KAAKuB,SAASvB,KAAKW,UAAS,GAAIX,KAAKI,KAAKoB,GAAG,WAAWxB,KAAKC,OAAOC,SAASF,KAAKyB,WAAWC,EAAE1B,KAAKI,KAAkB,KAAbJ,KAAKS,MAAW,WAAW,SAAS,CAAC,UAAAN,GAAaH,KAAKK,aAAasB,cAAc3B,KAAKW,UAAU,CAAC,MAAAY,GAASvB,KAAK4B,sBAAsB5B,KAAK4B,qBAAqBC,0BAA0B7B,KAAKK,aAAasB,cAAc3B,KAAKI,KAAK0B,IAAI,UAAU9B,KAAKC,OAAOC,SAASF,KAAKyB,YAAYzB,KAAKyB,WAAWM,kBAAkB"}