@idmwx/idmui-gl3 3.7.9 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -3926,7 +3926,7 @@ const Ua = {
3926
3926
  }
3927
3927
  this.handleDrawCircle();
3928
3928
  const d = et.interpolate(this.tropicals, 1);
3929
- this.interpolateData = JSON.parse(JSON.stringify(d)), console.log(888, this.interpolateData), this.handleDateChange();
3929
+ this.interpolateData = JSON.parse(JSON.stringify(d)), console.log(888, this.tropicals, this.interpolateData), this.handleDateChange();
3930
3930
  }
3931
3931
  },
3932
3932
  handleClear() {
@@ -4099,7 +4099,7 @@ const Ua = {
4099
4099
  return C.lineToPolygon(i, { properties: a });
4100
4100
  }
4101
4101
  }
4102
- }, Ge = (t) => (U("data-v-edea495b"), t = t(), G(), t), Ga = {
4102
+ }, Ge = (t) => (U("data-v-aec5af09"), t = t(), G(), t), Ga = {
4103
4103
  id: "active-tropical",
4104
4104
  class: "active-tropical"
4105
4105
  }, Ha = { class: "header-box" }, Za = { class: "main" }, Ja = { key: 0 }, Xa = { class: "sub" }, qa = {
@@ -4114,7 +4114,7 @@ const Ua = {
4114
4114
  }, ai = /* @__PURE__ */ Ge(() => /* @__PURE__ */ l("label", null, "Pressure : ", -1)), ii = { class: "row" }, ri = {
4115
4115
  class: "col col-24",
4116
4116
  style: { "justify-content": "flex-start" }
4117
- }, oi = /* @__PURE__ */ Ge(() => /* @__PURE__ */ l("label", { style: { width: "max-content" } }, "Forecast Models : ", -1)), si = { class: "forecast-models" }, ni = ["onClick"], li = /* @__PURE__ */ lt('<div class="row" style="padding:0;height:1px;margin:10px 0;background:var(--idm-black-1);" data-v-edea495b></div><div class="row" style="padding:2px 10px;" data-v-edea495b><div class="legend" data-v-edea495b><div class="icon td" data-v-edea495b></div><div class="label" data-v-edea495b>TD</div></div><div class="legend" data-v-edea495b><div class="icon ts" data-v-edea495b></div><div class="label" data-v-edea495b>TS</div></div><div class="legend" data-v-edea495b><div class="icon sts" data-v-edea495b></div><div class="label" data-v-edea495b>STS</div></div><div class="legend" data-v-edea495b><div class="icon ty" data-v-edea495b></div><div class="label" data-v-edea495b>TY</div></div><div class="legend" data-v-edea495b><div class="icon sty" data-v-edea495b></div><div class="label" data-v-edea495b>STY</div></div><div class="legend" data-v-edea495b><div class="icon supper-ty" data-v-edea495b></div><div class="label" data-v-edea495b>Super TY</div></div></div><div class="row" style="padding:2px 10px;" data-v-edea495b><div class="legend" data-v-edea495b><div class="icon history" data-v-edea495b></div><div class="label" data-v-edea495b>History</div></div><div class="legend" data-v-edea495b><div class="icon r7" data-v-edea495b></div><div class="label" data-v-edea495b>35kts Radii</div></div><div class="legend" data-v-edea495b><div class="icon r10" data-v-edea495b></div><div class="label" data-v-edea495b>50kts Radii</div></div></div>', 3), ci = { class: "more" };
4117
+ }, oi = /* @__PURE__ */ Ge(() => /* @__PURE__ */ l("label", { style: { width: "max-content" } }, "Forecast Models : ", -1)), si = { class: "forecast-models" }, ni = ["onClick"], li = /* @__PURE__ */ lt('<div class="row" style="padding:0;height:1px;margin:10px 0;background:var(--idm-black-1);" data-v-aec5af09></div><div class="row" style="padding:2px 10px;" data-v-aec5af09><div class="legend" data-v-aec5af09><div class="icon td" data-v-aec5af09></div><div class="label" data-v-aec5af09>TD</div></div><div class="legend" data-v-aec5af09><div class="icon ts" data-v-aec5af09></div><div class="label" data-v-aec5af09>TS</div></div><div class="legend" data-v-aec5af09><div class="icon sts" data-v-aec5af09></div><div class="label" data-v-aec5af09>STS</div></div><div class="legend" data-v-aec5af09><div class="icon ty" data-v-aec5af09></div><div class="label" data-v-aec5af09>TY</div></div><div class="legend" data-v-aec5af09><div class="icon sty" data-v-aec5af09></div><div class="label" data-v-aec5af09>STY</div></div><div class="legend" data-v-aec5af09><div class="icon supper-ty" data-v-aec5af09></div><div class="label" data-v-aec5af09>Super TY</div></div></div><div class="row" style="padding:2px 10px;" data-v-aec5af09><div class="legend" data-v-aec5af09><div class="icon history" data-v-aec5af09></div><div class="label" data-v-aec5af09>History</div></div><div class="legend" data-v-aec5af09><div class="icon r7" data-v-aec5af09></div><div class="label" data-v-aec5af09>35kts Radii</div></div><div class="legend" data-v-aec5af09><div class="icon r10" data-v-aec5af09></div><div class="label" data-v-aec5af09>50kts Radii</div></div></div>', 3), ci = { class: "more" };
4118
4118
  function hi(t, e, a, r, i, o) {
4119
4119
  var n, s, c, h, d, p, f, m, g, y, u, v, b, x, k;
4120
4120
  return $e((w(), L("div", Ga, [
@@ -4177,7 +4177,7 @@ function hi(t, e, a, r, i, o) {
4177
4177
  [Be, i.showTropicals && !t.$attrs.hideTropicalsLegend]
4178
4178
  ]);
4179
4179
  }
4180
- const tt = /* @__PURE__ */ T(Ua, [["render", hi], ["__scopeId", "data-v-edea495b"]]);
4180
+ const tt = /* @__PURE__ */ T(Ua, [["render", hi], ["__scopeId", "data-v-aec5af09"]]);
4181
4181
  const di = {
4182
4182
  name: "IdmPrecip3h",
4183
4183
  props: {
@@ -187,7 +187,7 @@
187
187
  fract(pos * 255.0),
188
188
  floor(pos * 255.0) / 255.0);
189
189
  }`);class ze{constructor(e="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNseTVudHJzYzAwNWUwbHBsZHkyaDRqczMiLCJyb2xlIjoxLCJuYW1lIjoiZmFrZUBvcm13eC5jb20iLCJwbGF0SWQiOiJnZDBtdDFkIiwiY29tcGFueSI6eyJpZCI6bnVsbCwiY2hpbGRyZW4iOltdfSwiaWF0IjoxNzIzMDI0MDI0LCJleHAiOjM5MzA1NDQwMjR9.RrKcdcMnq-FxBLJQ-i6lx2FscDE46y8EvHIemPW4HTg"){z(this,"token");z(this,"mapboxCustomer");z(this,"i4");z(this,"hi");z(this,"td");z(this,"windy");this.token=e,this.mapboxCustomer={source:this.initialOnlineStyle().sources.composite,layers:{water:{id:"water",type:"fill",source:"composite","source-layer":"water",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},paint:{"fill-color":"hsl(205, 75%, 70%)"}},waterDeplth:{id:"water-depth",type:"fill",source:"composite","source-layer":"depth",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},maxzoom:8,paint:{"fill-antialias":!1,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0.35)",200,"hsla(205, 75%, 63%, 0.35)",7e3,"hsla(205, 75%, 56%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0)",200,"hsla(205, 75%, 63%, 0)",7e3,"hsla(205, 75%, 53%, 0)"]]}},countryBoundary:{id:"country-boundaries",type:"fill",source:"composite","source-layer":"country_boundaries",layout:{visibility:"visible"},paint:{"fill-color":"#d9d8d8"}},countryAdmin0BoundaryBg:{id:"admin-0-boundary-bg",type:"line",source:"composite","source-layer":"admin",metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],paint:{"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"rgb(193, 190, 190)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]}},countryAdmin0Boundary:{id:"admin-0-boundary",type:"line",source:"composite","source-layer":"admin",metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],paint:{"line-color":"rgb(114, 110, 111)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]]}},countryAdmin0BoundaryDisputed:{id:"admin-0-boundary-disputed",type:"line",source:"composite","source-layer":"admin",metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},minzoom:1,filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],paint:{"line-color":"rgb(95, 93, 94)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]}},countryLabel:{id:"country-label",type:"symbol",source:"composite","source-layer":"place_label",metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},layout:{visibility:"visible","text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["HelveticaNeueThin"],"text-radial-offset":["step",["zoom"],.6,8,0],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],11,4,9,5,8],9,["step",["get","symbolrank"],22,4,19,5,17]]},paint:{"text-color":"rgba(255,255,255,0)"}}}},this.td={source:{type:"raster",tiles:["https://t0.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8","https://t1.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8","https://t2.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8","https://t3.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8","https://t4.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8","https://t5.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8","https://t6.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8","https://t7.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=3b3833b65e3705d5dc51a5e473b41da8"],tileSize:256},layer:{id:"td",type:"raster",source:"td",layout:{visibility:"visible"}}},this.i4={source:{type:"raster",tiles:["https://osshz.idmwx.com/nautical/{z}/{x}/{y}.png","https://osshz1.idmwx.com/nautical/{z}/{x}/{y}.png","https://osshz2.idmwx.com/nautical/{z}/{x}/{y}.png","https://osshz3.idmwx.com/nautical/{z}/{x}/{y}.png","https://osshz4.idmwx.com/nautical/{z}/{x}/{y}.png","https://osshz5.idmwx.com/nautical/{z}/{x}/{y}.png","https://osshz6.idmwx.com/nautical/{z}/{x}/{y}.png","https://osshz7.idmwx.com/nautical/{z}/{x}/{y}.png"],tileSize:256},layer:{id:"i4",type:"raster",source:"i4",layout:{visibility:"none"}}},this.hi={source:{type:"raster",tiles:[`https://assist0.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`,`https://assist1.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`,`https://assist2.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`,`https://assist3.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`,`https://assist4.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`,`https://assist5.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`,`https://assist6.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`,`https://assist7.idmwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${this.token}`],tileSize:256},layer:{id:"hi",type:"raster",source:"hi",layout:{visibility:"none"}}},this.windy={darkmap:{source:{type:"raster",tiles:["https://tiles.windy.com/tiles/v10.0/darkmap/{z}/{x}/{y}.png"],tileSize:256},layer:{id:"darkmap",type:"raster",source:"darkmap",layout:{visibility:"none"}}},grayland:{source:{type:"raster",tiles:["https://tiles.windy.com/tiles/v9.0/grayland/{z}/{x}/{y}.png"],tileSize:256},layer:{id:"grayland",type:"raster",source:"grayland",layout:{visibility:"none"},paint:{"raster-opacity":1}}}}}initialOnlineStyle(){return{version:8,name:"map-weather-v2.0.0",metadata:{"mapbox:print":{width:8.5,height:11,units:"in",format:"png",resolution:300},"mapbox:type":"default","mapbox:trackposition":!0,"mapbox:autocomposite":!0,"mapbox:sdk-support":{android:"11.0.0",ios:"11.0.0",js:"3.0.0"},"mapbox:origin":"outdoors-v12","mapbox:groups":{"Terrain, terrain-labels":{name:"Terrain, terrain-labels",collapsed:!0},"Administrative boundaries, admin":{name:"Administrative boundaries, admin",collapsed:!1},"Land & water, built":{name:"Land & water, built",collapsed:!1},"Terrain, surface":{name:"Terrain, surface",collapsed:!0},"Land & water, land":{name:"Land & water, land",collapsed:!1},"Natural features, natural-labels":{name:"Natural features, natural-labels",collapsed:!0},"Walking, cycling, etc., barriers-bridges":{name:"Walking, cycling, etc., barriers-bridges",collapsed:!0},"Place labels, place-labels":{name:"Place labels, place-labels",collapsed:!1},"Transit, ferries":{name:"Transit, ferries",collapsed:!0},"Transit, elevated":{name:"Transit, elevated",collapsed:!0},"Walking, cycling, etc., tunnels":{name:"Walking, cycling, etc., tunnels",collapsed:!0},"Terrain, land":{name:"Terrain, land",collapsed:!0},"Road network, tunnels-case":{name:"Road network, tunnels-case",collapsed:!0},"Walking, cycling, etc., walking-cycling-labels":{name:"Walking, cycling, etc., walking-cycling-labels",collapsed:!0},"Walking, cycling, etc., surface":{name:"Walking, cycling, etc., surface",collapsed:!0},"Road network, surface-icons":{name:"Road network, surface-icons",collapsed:!0},"Land & water, water":{name:"Land & water, water",collapsed:!1}}},lights:[],fog:{color:"#ffffff",range:[.5,10],"high-color":"#245cdf","space-color":["interpolate",["linear"],["zoom"],4,"#010b19",7,"#367ab9"],"horizon-blend":["interpolate",["linear"],["zoom"],4,.2,7,.1],"star-intensity":["interpolate",["linear"],["zoom"],5,.35,6,0],"vertical-range":[0,0]},center:[80.02170408691855,17.83215724225399],zoom:2.4589703839156347,bearing:0,pitch:1,sprite:"mapbox://sprites/neatchenheng/clxwst0tq00wd01rn0usb2eer/3hcvufdre7i2yn9nbkvi9f9xi",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"equirectangular"},sources:{composite:{type:"vector",url:"mapbox://mapbox.mapbox-streets-v8,mapbox.mapbox-terrain-v2,mapbox.mapbox-bathymetry-v2,mapbox.country-boundaries-v1",data:{attribution:'<a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">&copy; Mapbox</a> <a href="https://www.openstreetmap.org/about/" target="_blank" title="OpenStreetMap" aria-label="OpenStreetMap">&copy; OpenStreetMap</a> <a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">&copy; Mapbox</a> <a href="https://www.openstreetmap.org/about/" target="_blank" title="OpenStreetMap" aria-label="OpenStreetMap">&copy; OpenStreetMap</a> <a class="mapbox-improve-map" href="https://www.mapbox.com/contribute/" target="_blank" title="Improve this map" aria-label="Improve this map">Improve this map</a>',bounds:[-180,-85.051129,180,85],center:[0,-.025564500000001544,0],description:"Global polygon tileset of country boundaries and disputed areas",format:"pbf",language_options:{ar:"Arabic",ca:"Catalan",cs:"Czech",da:"Danish",de:"German",el:"Greek",en:"English",es:"Spanish",fa:"Farsi",fi:"Finnish",fr:"French",he:"Hebrew",hu:"Hungarian",id:"Indonesian",it:"Italian",ja:"Japanese",ka:"Georgian",ko:"Korean",local:"Renderable local language",lv:"Latvian",ms:"Malay",nb:"Norwegian Bokmål",nl:"Dutch",no:"Norwegian",pl:"Polish",pt:"Portuguese",ro:"Romanian",ru:"Russian",sk:"Slovak",sl:"Slovenian",sr:"Serbian",sv:"Swedish",th:"Thai",tl:"Tagalog",tr:"Turkish",uk:"Ukrainian",vi:"Vietnamese","zh-Hans":"Simplified Chinese","zh-Hant":"Traditional Chinese"},mapbox_logo:!0,maskLevel:9,maxzoom:16,minzoom:0,mts:!0,name:"Mapbox Countries v1 + Mapbox Bathymetry v2 + Mapbox Terrain v2 + Mapbox Streets v8",scheme:"xyz",tilejson:"2.2.0",tiles:["https://a.tiles.mapbox.com/v4/mapbox.mapbox-streets-v8,mapbox.mapbox-terrain-v2,mapbox.mapbox-bathymetry-v2,mapbox.country-boundaries-v1/{z}/{x}/{y}.vector.pbf?access_token=pk.eyJ1IjoibmVhdGNoZW5oZW5nIiwiYSI6ImNsdXM3cnBmODBsemgycW1vaXc1bjV6bXMifQ.w6fqHGRbhNhLvm0LnX4ZVw","https://b.tiles.mapbox.com/v4/mapbox.mapbox-streets-v8,mapbox.mapbox-terrain-v2,mapbox.mapbox-bathymetry-v2,mapbox.country-boundaries-v1/{z}/{x}/{y}.vector.pbf?access_token=pk.eyJ1IjoibmVhdGNoZW5oZW5nIiwiYSI6ImNsdXM3cnBmODBsemgycW1vaXc1bjV6bXMifQ.w6fqHGRbhNhLvm0LnX4ZVw"],vector_layers:[{id:"landuse",minzoom:5,source:"mapbox.mapbox-streets-v8"},{id:"waterway",minzoom:7,source:"mapbox.mapbox-streets-v8"},{id:"water",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"aeroway",minzoom:9,source:"mapbox.mapbox-streets-v8"},{id:"structure",minzoom:13,source:"mapbox.mapbox-streets-v8"},{id:"building",minzoom:12,source:"mapbox.mapbox-streets-v8"},{id:"landuse_overlay",minzoom:5,source:"mapbox.mapbox-streets-v8"},{id:"road",minzoom:3,source:"mapbox.mapbox-streets-v8"},{id:"admin",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"place_label",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"airport_label",minzoom:8,source:"mapbox.mapbox-streets-v8"},{id:"transit_stop_label",minzoom:5,source:"mapbox.mapbox-streets-v8"},{id:"natural_label",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"poi_label",minzoom:6,source:"mapbox.mapbox-streets-v8"},{id:"motorway_junction",minzoom:9,source:"mapbox.mapbox-streets-v8"},{id:"housenum_label",minzoom:16,source:"mapbox.mapbox-streets-v8"},{id:"landcover",maxzoom:22,minzoom:0,source:"mapbox.mapbox-terrain-v2"},{id:"hillshade",maxzoom:22,minzoom:0,source:"mapbox.mapbox-terrain-v2"},{id:"contour",maxzoom:22,minzoom:0,source:"mapbox.mapbox-terrain-v2"},{id:"depth",maxzoom:7,minzoom:0,source:"mapbox.mapbox-bathymetry-v2"},{id:"country_boundaries",maxzoom:22,minzoom:0,source:"mapbox.country-boundaries-v1"}],worldview_default:"US",worldview_options:{AR:"Argentina",CN:"China",IN:"India",JP:"Japan",MA:"Morocco",RS:"Serbia",RU:"Russia",TR:"Turkey",US:"United States"}}}},layers:[{id:"land",type:"background",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},paint:{"background-color":"rgb(171, 174, 172)"}},{id:"landcover",type:"fill",source:"composite","source-layer":"landcover",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},maxzoom:12,paint:{"fill-color":["match",["get","class"],"wood","hsl(0, 0%, 69%)","scrub","hsl(0, 0%, 69%)","crop","hsl(0, 0%, 69%)","grass","hsl(0, 0%, 69%)","snow","hsl(0, 0%, 69%)","hsl(0, 0%, 69%)"],"fill-opacity":["interpolate",["exponential",1.5],["zoom"],8,.8,12,0],"fill-antialias":!1}},{id:"national-park",type:"fill",source:"composite","source-layer":"landuse_overlay",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},minzoom:5,filter:["==",["get","class"],"national_park"],paint:{"fill-color":"hsl(98, 38%, 68%)","fill-opacity":["interpolate",["linear"],["zoom"],5,0,6,.6,12,.2]}},{id:"national-park_tint-band",type:"line",source:"composite","source-layer":"landuse_overlay",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},minzoom:9,filter:["==",["get","class"],"national_park"],paint:{"line-color":"hsl(98, 38%, 68%)","line-width":["interpolate",["exponential",1.5],["zoom"],9,1,14,8],"line-blur":["interpolate",["exponential",1.5],["zoom"],9,1,14,8]}},{id:"landuse",type:"fill",source:"composite","source-layer":"landuse",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},minzoom:5,filter:["all",[">=",["to-number",["get","sizerank"]],0],["match",["get","class"],["agriculture","wood","grass","scrub","glacier","pitch","sand"],["step",["zoom"],!1,11,!0],"residential",["step",["zoom"],!0,10,!1],["park","airport"],["step",["zoom"],!1,8,["case",["==",["get","sizerank"],1],!0,!1],10,!0],["facility","industrial"],["step",["zoom"],!1,12,!0],"rock",["step",["zoom"],!1,11,!0],"cemetery",["step",["zoom"],!1,11,!0],"school",["step",["zoom"],!1,11,!0],"hospital",["step",["zoom"],!1,11,!0],"commercial_area",["step",["zoom"],!1,11,!0],!1],["<=",["-",["to-number",["get","sizerank"]],["interpolate",["exponential",1.5],["zoom"],12,0,18,14]],14]],paint:{"fill-color":["interpolate",["linear"],["zoom"],15,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsl(60, 0%, 85%)","school","hsl(40, 45%, 78%)","commercial_area","hsl(55, 45%, 85%)","residential","hsl(60, 7%, 87%)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"],16,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsla(60, 0%, 85%, 0.5)","school","hsl(40, 45%, 78%)","commercial_area","hsla(55, 45%, 85%, 0.5)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"]],"fill-opacity":["interpolate",["linear"],["zoom"],8,["match",["get","class"],"residential",.8,.2],10,["match",["get","class"],"residential",0,1]],"fill-antialias":!1}},{id:"pitch-outline",type:"line",source:"composite","source-layer":"landuse",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},minzoom:15,filter:["==",["get","class"],"pitch"],paint:{"line-color":"hsl(0, 0%, 69%)"}},{id:"waterway-shadow",type:"line",source:"composite","source-layer":"waterway",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},minzoom:10,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"]},paint:{"line-color":"hsl(224, 79%, 69%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"line-translate-anchor":"viewport","line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]}},{id:"water-shadow",type:"fill",source:"composite","source-layer":"water",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},minzoom:10,paint:{"fill-color":"hsl(224, 79%, 69%)","fill-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"fill-translate-anchor":"viewport"}},{id:"waterway",type:"line",source:"composite","source-layer":"waterway",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},minzoom:8,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"]},paint:{"line-color":"hsl(205, 75%, 70%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]}},{id:"water",type:"fill",source:"composite","source-layer":"water",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},paint:{"fill-color":"hsl(205, 75%, 70%)"}},{id:"water-depth",type:"fill",source:"composite","source-layer":"depth",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},maxzoom:8,paint:{"fill-antialias":!1,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0.35)",200,"hsla(205, 75%, 63%, 0.35)",7e3,"hsla(205, 75%, 56%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0)",200,"hsla(205, 75%, 63%, 0)",7e3,"hsla(205, 75%, 53%, 0)"]]}},{id:"wetland",type:"fill",source:"composite","source-layer":"landuse_overlay",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},minzoom:5,filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,.25,10.5,.15]}},{id:"wetland-pattern",type:"fill",source:"composite","source-layer":"landuse_overlay",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},minzoom:5,filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,0,10.5,1],"fill-pattern":"wetland","fill-translate-anchor":"viewport"}},{id:"land-structure-polygon",type:"fill",source:"composite","source-layer":"structure",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},minzoom:13,filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"Polygon"]],paint:{"fill-color":"hsl(0, 0%, 69%)"}},{id:"land-structure-line",type:"line",source:"composite","source-layer":"structure",metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},minzoom:13,filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"LineString"]],layout:{"line-cap":"square"},paint:{"line-width":["interpolate",["exponential",1.99],["zoom"],14,.75,20,40],"line-color":"hsl(60, 20%, 85%)"}},{id:"country-boundaries",type:"fill",source:"composite","source-layer":"country_boundaries",paint:{"fill-color":["interpolate",["linear"],["zoom"],0,"rgb(171, 174, 172)",22,"rgb(171, 174, 172)"]}},{id:"admin-0-boundary-bg",type:"line",source:"composite","source-layer":"admin",metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],paint:{"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"rgb(193, 190, 190)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]}},{id:"admin-0-boundary",type:"line",source:"composite","source-layer":"admin",metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],paint:{"line-color":"rgb(114, 110, 111)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]]}},{id:"admin-0-boundary-disputed",type:"line",source:"composite","source-layer":"admin",metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},minzoom:1,filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],paint:{"line-color":"rgb(95, 93, 94)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]}},{id:"waterway-label",type:"symbol",source:"composite","source-layer":"natural_label",metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},minzoom:13,filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],layout:{"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],visibility:"none"},paint:{"text-color":"hsl(205, 43%, 90%)","text-halo-color":"hsla(60, 17%, 84%, 0.5)"}},{id:"natural-line-label",type:"symbol",source:"composite","source-layer":"natural_label",metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},minzoom:4,filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport",visibility:"none"},paint:{"text-halo-width":.5,"text-halo-color":"hsl(60, 17%, 84%)","text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"}},{id:"natural-point-label",type:"symbol",source:"composite","source-layer":"natural_label",metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},minzoom:4,filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["get","maki_beta"]],["image",["get","maki"]]],["image",["get","maki"]]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.8]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.8]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]],visibility:"none"},paint:{"icon-opacity":["step",["zoom"],["step",["get","sizerank"],0,5,1],17,["step",["get","sizerank"],0,13,1]],"text-halo-color":"hsl(60, 20%, 98%)","text-halo-width":.5,"text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"}},{id:"water-line-label",type:"symbol",source:"composite","source-layer":"natural_label",metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],layout:{"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],visibility:"none"},paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(205, 71%, 90%)","hsl(205, 43%, 90%)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"}},{id:"water-point-label",type:"symbol",source:"composite","source-layer":"natural_label",metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],layout:{"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10],visibility:"none"},paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(205, 71%, 90%)","hsl(205, 43%, 90%)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"}},{id:"settlement-subdivision-label",type:"symbol",source:"composite","source-layer":"place_label",metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},minzoom:10,maxzoom:15,filter:["all",["match",["get","class"],["settlement_subdivision","disputed_settlement_subdivision"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],3],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",11,10.5],15,["match",["get","type"],"suburb",15,14]],visibility:"none"},paint:{"text-halo-color":"hsla(60, 25%, 100%, 0.75)","text-halo-width":1,"text-color":"hsl(230, 29%, 36%)","text-halo-blur":.5}},{id:"settlement-minor-label",type:"symbol",source:"composite","source-layer":"place_label",metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},minzoom:2,maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],11,9,10],6,["step",["get","symbolrank"],14,9,12,12,10],8,["step",["get","symbolrank"],16,9,14,12,12,15,10],13,["step",["get","symbolrank"],22,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-justify":"auto",visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1}},{id:"settlement-major-label",type:"symbol",source:"composite","source-layer":"place_label",metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},minzoom:2,maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],13,6,11],6,["step",["get","symbolrank"],18,6,16,7,14],8,["step",["get","symbolrank"],20,9,16,10,14],15,["step",["get","symbolrank"],24,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1}},{id:"state-label",type:"symbol",source:"composite","source-layer":"place_label",metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},minzoom:3,maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],layout:{"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9,6,8,7,7],9,["step",["get","symbolrank"],21,6,16,7,14]],"text-transform":"uppercase","text-font":["DIN Pro Bold","Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6,visibility:"none"},paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-opacity":.5}},{id:"country-label",type:"symbol",source:"composite","source-layer":"place_label",metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},minzoom:1,maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-radial-offset":["step",["zoom"],.6,8,0],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],11,4,9,5,8],9,["step",["get","symbolrank"],22,4,19,5,17]]},paint:{"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":"hsl(230, 29%, 0%)","text-halo-color":["interpolate",["linear"],["zoom"],2,"hsla(60, 25%, 100%, 0.75)",3,"hsl(60, 25%, 100%)"],"text-halo-width":1.25}},{id:"continent-label",type:"symbol",source:"composite","source-layer":"natural_label",metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},minzoom:.75,maxzoom:3,filter:["==",["get","class"],"continent"],layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-size":["interpolate",["exponential",.5],["zoom"],0,10,2.5,15],"text-transform":"uppercase","text-letter-spacing":.05,visibility:"none"},paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":["interpolate",["linear"],["zoom"],0,"hsla(60, 25%, 100%, 0.75)",3,"hsl(60, 25%, 100%)"],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,.8,1.5,.5,2.5,0]}}]}}}const Bi="",xt={name:"IdmWindParticle",props:{factor:{type:Object},viewport:{type:we},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,wrapper:void 0,animation:void 0,particleContext:void 0,particleTexture:void 0,particleOptions:{fadeOpacity:.9,speedFactor:.25,dropRate:.003,dropRateBump:.01,uvRange:[-25,26],sRange:[0,31.985]},paused:!1,initial:!0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[wind-particle] add elapsed: ",a,", total: ",e+=a)}},handleClear(){var t,e,a,r,i,s,l,n;(t=this.viewport)==null||t.toggle(!1),(e=this.viewport)==null||e.toggleParticle(!1),this.context=void 0,this.particleContext=void 0,this.etime=void 0,this.initial=!0,(r=(a=this.viewport)==null?void 0:a.map)==null||r.off("resize",this.handleResize),(s=(i=this.viewport)==null?void 0:i.map)==null||s.off("movestart",this.handlePause),(n=(l=this.viewport)==null?void 0:l.map)==null||n.off("moveend",this.handlePlay),this.handlePause()},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgb(98, 113, 184, 0.8)"],[12/255,"rgb(98, 113, 184)"],[24/255,"rgb(61, 110, 163)"],[32/255,"rgb(74, 146, 148)"],[40/255,"rgb(77, 142, 124)"],[60/255,"rgb(76, 164, 76)"],[80/255,"rgb(103, 164, 54)"],[100/255,"rgb(162, 135, 64)"],[120/255,"rgb(162, 109, 92)"],[140/255,"rgb(141, 63, 92)"],[160/255,"rgb(151, 75, 145)"],[200/255,"rgb(95, 100, 160)"],[240/255,"rgb(91, 136, 161)"],[1,"rgb(91, 136, 161)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.uvFragmentSchema);this.program=e,this.aPositionBuffer=a}this.handleParticleSetup()},handleParticleSetup(){if(!this.particleContext){this.particleContext=this.viewport.particleCanvas.getContext("webgl");const t=[[0,"rgb(183,224,224)"],[1,"rgb(217,220,220)"]];this.wrapper=this.webgl.bindParticle(this.particleContext,D.vertexSchema,D.fragmentSchema,D.quadVertSchema,D.screenFragmentSchema,D.updateFragmentSchema),this.wrapper.color=this.webgl.setup(this.particleContext,t,!0,16,16),this.wrapper={...this.wrapper,...this.webgl.setupParticle(this.particleContext,9e3),...this.webgl.resize(this.viewport,this.particleContext)},this.viewport.map.on("resize",this.handleResize),this.viewport.map.on("movestart",this.handlePause),this.viewport.map.on("moveend",this.handlePlay)}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t),this.particleTexture=this.webgl.createTexture(this.particleContext,this.particleContext.NEAREST,this.particleContext.LINEAR,this.particleContext.CLAMP_TO_EDGE,t),this.wrapper.image=t}this.initial&&(this.initial=!1,this.handlePlay()),this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer,this.particleOptions),this.viewport.toggle(!0)},handleResize(){this.wrapper={...this.wrapper,...this.webgl.resize(this.viewport,this.particleContext)}},handlePause(){this.paused=!0,this.animation&&(cancelAnimationFrame(this.animation),this.viewport.toggleParticle(!1))},handlePlay(){this.paused=!1,this.animation=requestAnimationFrame(()=>{this.webgl.drawParticle(this.viewport,this.particleContext,this.particleTexture,this.wrapper,this.particleOptions),this.viewport.toggleParticle(!0),this.handlePlay()})}}},X=t=>(o.pushScopeId("data-v-41a686d0"),t=t(),o.popScopeId(),t),Ct={key:0},St=[X(()=>o.createElementVNode("span",null,"kts",-1)),X(()=>o.createElementVNode("span",null,"0",-1)),X(()=>o.createElementVNode("span",null,"5",-1)),X(()=>o.createElementVNode("span",null,"10",-1)),X(()=>o.createElementVNode("span",null,"20",-1)),X(()=>o.createElementVNode("span",null,"30",-1)),X(()=>o.createElementVNode("span",null,"40",-1)),X(()=>o.createElementVNode("span",null,"60",-1))];function kt(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",Ct,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},St,4)])):o.createCommentVNode("",!0)}const Et=S(xt,[["render",kt],["__scopeId","data-v-41a686d0"]]),Gi="",zt={name:"IdmCurrent",props:{map:{type:Object},current:{type:Object},beforeLayer:{type:String},mapProjection:{type:String},showParticle:{type:Boolean,default:!1},marginBottom:{type:String,default:"30px"},toggleVersion:{type:Number},weatherLayers:{type:Object}},emits:["particle"],data(){return{source:"current-source",directionLayer:"current-direction-layer",speedLayer:"current-speed-layer",speedLabelLayer:"current-speed-label-layer",empty:x.featureCollection([]),showJson:!1,right:10,bottom:95}},watch:{"current.version":{handler(){var t;(t=this.current)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},showParticle:{handler(){this.showJson=!this.showParticle},immediate:!0},showJson:{handler(){this.handleToggle()},immediate:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0},weatherLayers:{handler(){var t;this.bottom=(((t=document.getElementsByClassName("active-layers")[0])==null?void 0:t.clientHeight)||0)+105},immediate:!0}},methods:{handleParticle(){this.$emit("particle",{particle:!this.showParticle,key:"current",weight:96})},handleRender(){var t,e;if(!this.map)setTimeout(()=>{this.handleRender()},500);else if(this.current){const a=new Date().valueOf();let r=0,i=0,s=this.empty;this.current.active&&(s=this.current.data),(t=this.map)!=null&&t.getSource(this.source)?((e=this.map)==null||e.getSource(this.source).setData(s),i=new Date().valueOf()-(a+r),console.log("[current] update elapsed: ",i,", total: ",r+=i)):(this.map.addSource(this.source,{type:"geojson",data:s}),this.map.addLayer({id:this.speedLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.5,"fill-color":["step",["get","val"],"#e1ffb3",1,"#ffff00",3,"#ff9500",4,"#f44336",5,"#f44336"]}},this.beforeLayer),this.map.addLayer({id:this.speedLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Polygon"],layout:{"symbol-placement":"line","text-field":"{val} kts","text-allow-overlap":!0,"text-rotation-alignment":"viewport","text-size":12},paint:{"text-color":"rgba(0, 0, 0, 0.8)"}},this.beforeLayer),this.map.addLayer({id:this.directionLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-image":"arrow-red","icon-size":["interpolate",["linear"],["get","spd"],.5,.14,3,.28],"icon-offset":[0,-20],"icon-allow-overlap":!0,"icon-rotation-alignment":"map","icon-rotate":{property:"val",stops:[[0,0],[360,360]]}},paint:{"icon-opacity":.6}},this.beforeLayer),i=new Date().valueOf()-(a+r),console.log("[current] add elapsed: ",i,", total: ",r+=i)),this.handleToggle()}},handleToggle(){this.map.getLayer(this.speedLayer)&&this.map.setLayoutProperty(this.speedLayer,"visibility",this.showJson?"visible":"none"),this.map.getLayer(this.speedLabelLayer)&&this.map.setLayoutProperty(this.speedLabelLayer,"visibility",this.showJson?"visible":"none"),this.map.getLayer(this.directionLayer)&&this.map.setLayoutProperty(this.directionLayer,"visibility",this.showJson?"visible":"none")},handleClear(){this.map.getLayer(this.speedLayer)&&this.map.removeLayer(this.speedLayer),this.map.getLayer(this.speedLabelLayer)&&this.map.removeLayer(this.speedLabelLayer),this.map.getLayer(this.directionLayer)&&this.map.removeLayer(this.directionLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}},Pt={key:0},Nt={key:0,class:"iconfont active"},Tt={key:1,class:"iconfont"},It={key:0,class:"iconfont active"},Dt={key:1,class:"iconfont"};function Vt(t,e,a,r,i,s){var l;return(l=a.current)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",Pt,[o.createElementVNode("div",{class:"flex-center tool-bars",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:i.bottom+"px"}])},[a.mapProjection==="mercator"?(o.openBlock(),o.createElementBlock("div",{key:0,class:"flex-start",onClick:e[0]||(e[0]=(...n)=>s.handleParticle&&s.handleParticle(...n))},[a.showParticle?(o.openBlock(),o.createElementBlock("i",Nt,"")):(o.openBlock(),o.createElementBlock("i",Tt,"")),o.createElementVNode("span",{class:o.normalizeClass(a.showParticle?"active":"")},"Current Particles",2)])):o.createCommentVNode("",!0),a.showParticle?(o.openBlock(),o.createElementBlock("div",{key:1,class:"flex-start",style:{"margin-left":"16px"},onClick:e[1]||(e[1]=n=>i.showJson=!i.showJson)},[i.showJson?(o.openBlock(),o.createElementBlock("i",It,"")):(o.openBlock(),o.createElementBlock("i",Dt,"")),o.createElementVNode("span",{class:o.normalizeClass(i.showJson?"active":"")},"Current",2)])):o.createCommentVNode("",!0)],4)])):o.createCommentVNode("",!0)}const Rt=S(zt,[["render",Vt],["__scopeId","data-v-ae630f43"]]),Zi="",$t={name:"IdmCurrentParticle",props:{factor:{type:Object},viewport:{type:we},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,wrapper:void 0,animation:void 0,particleContext:void 0,particleTexture:void 0,particleOptions:{fadeOpacity:.96,speedFactor:4,dropRate:.005,dropRateBump:.01,uvRange:[-2.5,2.6],sRange:[0,3]},paused:!1,initial:!0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[current-particle] add elapsed: ",a,", total: ",e+=a)}},handleClear(){var t,e,a,r,i,s,l,n;(t=this.viewport)==null||t.toggle(!1),(e=this.viewport)==null||e.toggleParticle(!1),this.context=void 0,this.particleContext=void 0,this.etime=void 0,this.initial=!0,(r=(a=this.viewport)==null?void 0:a.map)==null||r.off("resize",this.handleResize),(s=(i=this.viewport)==null?void 0:i.map)==null||s.off("movestart",this.handlePause),(n=(l=this.viewport)==null?void 0:l.map)==null||n.off("moveend",this.handlePlay),this.handlePause()},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0/255,"rgba(95, 143, 197,1)"],[5/255,"rgba(64,127,115,1)"],[10/255,"rgb(58,164,58)"],[15/255,"rgb(191,182,67)"],[20/255,"rgb(197,154,68)"],[30/255,"rgb(160,70,94)"],[40/255,"rgb(138,84,166)"],[45/255,"rgb(82,113,165)"],[50/255,"rgb(84,142,152)"],[65/255,"rgb(150,181,184)"],[80/255,"rgb(195,194,194)"],[254/255,"rgb(195,194,194)"],[1,"rgb(195,194,194)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.uvFragmentSchema);this.program=e,this.aPositionBuffer=a}this.handleParticleSetup()},handleParticleSetup(){if(!this.particleContext){this.particleContext=this.viewport.particleCanvas.getContext("webgl");const t=[[0,"rgb(183,224,224)"],[1,"rgb(199,202,202)"]];this.wrapper=this.webgl.bindParticle(this.particleContext,D.vertexSchema,D.fragmentSchema,D.quadVertSchema,D.screenFragmentSchema,D.updateFragmentSchema),this.wrapper.color=this.webgl.setup(this.particleContext,t,!0,16,16),this.wrapper={...this.wrapper,...this.webgl.setupParticle(this.particleContext,12e3),...this.webgl.resize(this.viewport,this.particleContext)},this.viewport.map.on("resize",this.handleResize),this.viewport.map.on("movestart",this.handlePause),this.viewport.map.on("moveend",this.handlePlay)}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t),this.particleTexture=this.webgl.createTexture(this.particleContext,this.particleContext.NEAREST,this.particleContext.LINEAR,this.particleContext.CLAMP_TO_EDGE,t),this.wrapper.image=t}this.initial&&(this.initial=!1,this.handlePlay()),this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer,this.particleOptions),this.viewport.toggle(!0)},handleResize(){this.wrapper={...this.wrapper,...this.webgl.resize(this.viewport,this.particleContext)}},handlePause(){this.paused=!0,this.animation&&(cancelAnimationFrame(this.animation),this.viewport.toggleParticle(!1))},handlePlay(){this.paused=!1,this.animation=requestAnimationFrame(()=>{this.webgl.drawParticle(this.viewport,this.particleContext,this.particleTexture,this.wrapper,this.particleOptions),this.viewport.toggleParticle(!0),this.handlePlay()})}}},te=t=>(o.pushScopeId("data-v-9115889b"),t=t(),o.popScopeId(),t),Bt={key:0},At=[te(()=>o.createElementVNode("span",null,"kts",-1)),te(()=>o.createElementVNode("span",null,"0",-1)),te(()=>o.createElementVNode("span",null,"0.4",-1)),te(()=>o.createElementVNode("span",null,"0.8",-1)),te(()=>o.createElementVNode("span",null,"1.6",-1)),te(()=>o.createElementVNode("span",null,"2",-1)),te(()=>o.createElementVNode("span",null,"3.2",-1))];function Mt(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",Bt,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},At,4)])):o.createCommentVNode("",!0)}const Wt=S($t,[["render",Mt],["__scopeId","data-v-9115889b"]]),Ot={name:"IdmSigWave",props:{map:{type:Object},sigWave:{type:Object},beforeLayer:{type:String}},data(){return{source:"sig-wave-source",heightLayer:"sig-wave-height-layer",heightLabelLayer:"sig-wave-height-label-layer",empty:x.featureCollection([])}},watch:{"sigWave.version":{handler(){var t;(t=this.sigWave)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0}},methods:{handleRender(){var t,e;if(!this.map)setTimeout(()=>{this.handleRender()},500);else if(this.sigWave){const a=new Date().valueOf();let r=0,i=0,s=this.empty;this.sigWave.active&&(s=this.sigWave.data),(t=this.map)!=null&&t.getSource(this.source)?((e=this.map)==null||e.getSource(this.source).setData(s),i=new Date().valueOf()-(a+r),console.log("[sig.wave] update elapsed: ",i,", total: ",r+=i)):(this.map.addSource(this.source,{type:"geojson",data:s}),this.map.addLayer({id:this.heightLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],layout:{"fill-sort-key":["get","val"]},paint:{"fill-outline-color":"#888","fill-opacity":.5,"fill-color":["step",["get","val"],"#9af8bf",3,"#84f9ad",4,"#83f981",5,"#c2fb63",6,"#ffff63",7,"#fcd95a",8,"#fca157",9,"#fc5d5d",10,"#f72f7a",11,"#f259f2",12,"#d118b3",13,"#780178"]}},this.beforeLayer),this.map.addLayer({id:this.heightLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Polygon"],layout:{"symbol-placement":"line","symbol-avoid-edges":!0,"symbol-sort-key":["get","val"],"text-field":"{val} m","text-rotation-alignment":"viewport","text-size":10},paint:{"text-opacity":.7}},this.beforeLayer),i=new Date().valueOf()-(a+r),console.log("[sig.wave] add elapsed: ",i,", total: ",r+=i))}},handleClear(){this.map.getLayer(this.heightLayer)&&this.map.removeLayer(this.heightLayer),this.map.getLayer(this.heightLabelLayer)&&this.map.removeLayer(this.heightLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function jt(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Ft=S(Ot,[["render",jt]]),Ut={name:"IdmSwell",props:{map:{type:Object},swell:{type:Object},beforeLayer:{type:String}},data(){return{source:"swell-source",directionLayer:"swell-direction-layer",heightLayer:"swell-height-layer",heightLabelLayer:"swell-height-label-layer",empty:x.featureCollection([])}},watch:{"swell.version":{handler(){var t;(t=this.swell)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0}},methods:{handleRender(){var t,e;if(!this.map)setTimeout(()=>{this.handleRender()},500);else if(this.swell){const a=new Date().valueOf();let r=0,i=0,s=this.empty;this.swell.active&&(s=this.swell.data),(t=this.map)!=null&&t.getSource(this.source)?((e=this.map)==null||e.getSource(this.source).setData(s),i=new Date().valueOf()-(a+r),console.log("[swell] update elapsed: ",i,", total: ",r+=i)):(this.map.addSource(this.source,{type:"geojson",data:s}),this.map.addLayer({id:this.heightLayer,type:"line",source:this.source,filter:["==","$type","LineString"],paint:{"line-opacity":1,"line-width":2,"line-color":["match",["get","val"],2,"rgba(255,255,0,0.9)",3,"rgba(255,149,0,0.9)",4,"rgba(244,67,54,0.9)",5,"rgba(162,2,31,0.9)",6,"rgba(162,2,31,0.9)","rgba(162,2,31,0.9)"]}},this.beforeLayer),this.map.addLayer({id:this.heightLabelLayer,type:"symbol",source:this.source,filter:["==","$type","LineString"],layout:{"symbol-placement":"line","text-rotation-alignment":"viewport","text-field":"{val}M","text-size":12},paint:{"text-color":["step",["get","val"],"black",4,"white",5,"white",6,"white"],"text-halo-color":["match",["get","val"],2,"rgba(255,255,0,0.7)",3,"rgba(255,149,0,0.7)",4,"rgba(244,67,54,0.7)",5,"rgba(162,13,2,0.7)",6,"rgba(162,13,2,0.7)","rgba(162,13,2,0.7)"],"text-halo-width":4}}),this.map.addLayer({id:this.directionLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-image":"arrow-yellow","icon-size":{base:1,stops:[[2,.14],[6,.28]]},"icon-offset":[0,-20],"icon-allow-overlap":!0,"icon-rotation-alignment":"map","icon-rotate":{property:"val",stops:[[0,180],[360,540]]}},paint:{"icon-opacity":.8}},this.beforeLayer),i=new Date().valueOf()-(a+r),console.log("[swell] add elapsed: ",i,", total: ",r+=i))}},handleClear(){this.map.getLayer(this.heightLayer)&&this.map.removeLayer(this.heightLayer),this.map.getLayer(this.heightLabelLayer)&&this.map.removeLayer(this.heightLabelLayer),this.map.getLayer(this.directionLayer)&&this.map.removeLayer(this.directionLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Ht(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Gt=S(Ut,[["render",Ht]]),Zt={name:"IdmPrmsl",props:{map:{type:Object},prmsl:{type:Object},beforeLayer:{type:String},activeWeatherLayers:{type:Array}},data(){return{source:"prmsl-source",layer:"prmsl-layer",labelLayer:"prmsl-label-layer",pointLabelLayer:"prmsl-point-label-layer",empty:x.featureCollection([])}},watch:{"prmsl.version":{handler(){var t;(t=this.prmsl)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0}},methods:{handleRender(){var t,e,a;if(!this.map)setTimeout(()=>{this.handleRender()},500);else{if(this.prmsl){const r=new Date().valueOf();let i=0,s=0,l=this.empty;this.prmsl.active&&(l=this.prmsl.data),(t=this.map)!=null&&t.getSource(this.source)?((e=this.map)==null||e.getSource(this.source).setData(l),s=new Date().valueOf()-(r+i),console.log("[prmsl] update elapsed: ",s,", total: ",i+=s)):(this.map.addSource(this.source,{type:"geojson",data:l}),this.map.addLayer({id:this.layer,type:"line",source:this.source,filter:["==","$type","LineString"],paint:{"line-color":["step",["get","val"],"rgba(162,13,2,1)",920,"rgba(244,67,54,1)",980,"rgba(255,255,0,1)",1100,"rgba(199,171,250,1)"],"line-width":1,"line-opacity":1}},this.beforeLayer),(a=this.map)==null||a.addLayer({id:this.labelLayer,type:"symbol",source:this.source,minzoom:4,filter:["==","$type","LineString"],layout:{"symbol-placement":"line","text-rotation-alignment":"viewport","text-field":"{val}","text-size":12},paint:{"text-color":"black","text-opacity":.9,"text-halo-color":"rgba(255,255,255,1)","text-halo-width":1}},this.beforeLayer),setTimeout(()=>{this.map.addLayer({id:this.pointLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-field":["format",["get","type"],{"font-scale":1.03},`
190
- `,["get","val"],{"font-scale":1}],"text-rotation-alignment":"map","text-line-height":1.3,"text-size":12},paint:{"text-opacity":1,"text-color":["step",["get","val"],"white",980,"black",1100,"black"],"text-halo-color":["step",["get","val"],"rgba(162,13,2,0.9)",920,"rgba(244,67,54,0.9)",980,"rgba(255,255,0,0.9)",1100,"rgba(199,171,250,0.9)"],"text-halo-width":4}},this.beforeLayer),this.handleMove()},1e3),s=new Date().valueOf()-(r+i),console.log("[prmsl] add elapsed: ",s,", total: ",i+=s))}this.handleMove()}},handleMove(){var t,e;(e=(t=this.map)==null?void 0:t.getLayer("country-boundaries"))==null||e.setLayoutProperty("visibility","visible"),this.map.getLayer(this.pointLabelLayer)&&this.map.moveLayer(this.pointLabelLayer,"country-boundaries"),this.map.getLayer(this.labelLayer)&&this.map.moveLayer(this.labelLayer,"country-boundaries"),this.map.getLayer(this.layer)&&this.map.moveLayer(this.layer,"country-boundaries")},handleClear(){var t,e;this.activeWeatherLayers.length===0&&((e=(t=this.map)==null?void 0:t.getLayer("country-boundaries"))==null||e.setLayoutProperty("visibility","none")),this.map.getLayer(this.pointLabelLayer)&&this.map.removeLayer(this.pointLabelLayer),this.map.getLayer(this.labelLayer)&&this.map.removeLayer(this.labelLayer),this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Jt(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Xt=S(Zt,[["render",Jt]]),qt={name:"IdmIceberg",props:{map:{type:Object},iceberg:{type:Object},beforeLayer:{type:String}},data(){return{source:"iceberg-source",layer:"iceberg-layer",empty:x.featureCollection([])}},watch:{"iceberg.version":{handler(){var t;(t=this.iceberg)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0}},methods:{handleRender(){var t,e;if(!this.map)setTimeout(()=>{this.handleRender()},500);else if(this.iceberg){const a=new Date().valueOf();let r=0,i=0,s=this.empty;this.iceberg.active&&(s=this.iceberg.data),(t=this.map)!=null&&t.getSource(this.source)?((e=this.map)==null||e.getSource(this.source).setData(s),i=new Date().valueOf()-(a+r),console.log("[iceberg] update elapsed: ",i,", total: ",r+=i)):(this.map.addSource(this.source,{type:"geojson",data:s}),this.map.addLayer({id:this.layer,type:"line",source:this.source,filter:["==","$type","LineString"],paint:{"line-color":"rgba(255,255,255, 0.8)","line-width":2,"line-opacity":1}}),i=new Date().valueOf()-(a+r),console.log("[iceberg] add elapsed: ",i,", total: ",r+=i))}},handleClear(){this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Yt(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Qt=S(qt,[["render",Yt]]),tr="",Kt={name:"IdmTropicals",props:{map:{type:Object},tropicals:{type:Object},date:{type:String}},emits:["tropical","tropicalProbability"],data(){return{helper:v.CompanyHelper,source:"tropicals-source",clusterSource:"tropicals-cluster-source",historyLayer:"tropicals-history-layer",forecastLayer:"tropicals-forecast-layer",forecastModelLayer:"tropicals-forecast-model-layer",forecastNameLayer:"tropicals-forecast-name-layer",pointCircleLayer:"tropicals-point-circle-layer",pointLabelLayer:"tropicals-point-label-layer",historyPointCircleLayer:"history-tropicals-point-circle-layer",historyPointLabelLayer:"history-tropicals-point-label-layer",interpolateData:[],interpolateMarkers:[],interpolateSource:"tropicals-interpolate-source",interpolateLineLayer:"tropicals-interpolate-line-layer",showTropicals:!1,activeTropicals:void 0,activeTropicalsMarker:void 0,empty:x.featureCollection([]),circleSource:"circle-source",circleSourceData:x.featureCollection([]),circleLayer:"tropical-circle-layer"}},computed:{computeTime(){return function(t){if(t){const e=O(t).utc();return`${e.format("MMM-DD,HHmm[Z]")} (${e==null?void 0:e.fromNow()})`}return"-"}}},watch:{"tropicals.active":{handler(){this.handleInit()},immediate:!0},showTropicals:{handler(){this.$emit("tropical",this.showTropicals)},immediate:!0},"tropicals.version":{handler(){var r,i;const t=((i=(r=this.tropicals)==null?void 0:r.data)==null?void 0:i.features)||[],e=O().utc().hour(),a=[];t.forEach(s=>{var l,n,c;(l=s.properties)!=null&&l.name&&!a.includes((n=s.properties)==null?void 0:n.name)&&a.push((c=s.properties)==null?void 0:c.name)}),a.forEach(s=>{var h;let l=0,n;const c=t.filter(d=>{var p,u;return((u=(p=d.properties)==null?void 0:p.category)==null?void 0:u.split("-")[0])===s});(h=c.filter(d=>{var p,u;return((p=d.geometry)==null?void 0:p.type)==="LineString"&&((u=d.properties)==null?void 0:u.type)==="forecast"})[0])==null||h.properties.model,c.forEach((d,p)=>{var u,m,g,f,y,_;((u=d.geometry)==null?void 0:u.type)==="Point"&&((m=d.properties)==null?void 0:m.type)==="history"&&(l=p,n=n===void 0?p:n),((g=d.geometry)==null?void 0:g.type)==="Point"&&((f=d.properties)==null?void 0:f.type)==="forecast"&&n===void 0&&(n=p),((y=d.geometry)==null?void 0:y.type)==="LineString"&&((_=d.properties)==null||_.type)}),c.map((d,p)=>{var u,m,g,f,y,_,b,w;if(((u=d.geometry)==null?void 0:u.type)==="LineString"&&((m=d.properties)==null||m.type),((g=d.geometry)==null?void 0:g.type)==="Point"&&((f=d.properties)==null?void 0:f.type)==="forecast"&&(d.properties.name=s),((y=d.geometry)==null?void 0:y.type)==="Point"&&((_=d.properties)==null?void 0:_.type)==="history"){const C=((w=(b=d.properties)==null?void 0:b.format)==null?void 0:w.slice(7,12))===O().utc().hour(Math.floor(e/6)*6).minute("00").format("HHmm")+"Z";d.properties.showHistoryLabel=C||p===l,d.properties.showNameLabel=p===l,d.properties.name=s}return d})}),this.handleInit()}}},methods:{handleInit(){var t,e;this.tropicals&&this.tropicals.active?(this.handleRender(),(t=this.map)==null||t.on("click",[this.forecastNameLayer,this.forecastLayer,this.historyLayer,this.forecastModelLayer,this.pointCircleLayer,this.pointLabelLayer,this.historyPointCircleLayer,this.historyPointLabelLayer],this.handleClick)):(this.handleClear(),(e=this.map)==null||e.off("click",[this.forecastNameLayer,this.forecastLayer,this.historyLayer,this.forecastModelLayer,this.pointCircleLayer,this.pointLabelLayer,this.historyPointCircleLayer,this.historyPointLabelLayer],this.handleClick))},handleRender(){var t,e,a,r,i,s,l,n,c,h;if(!this.map)setTimeout(()=>{this.handleRender()},500);else{if(this.tropicals){const p=new Date().valueOf();let u=0,m=0;(t=this.map)!=null&&t.getSource(this.source)?((a=this.map)==null||a.getSource(this.source).setData((e=this.tropicals)!=null&&e.active?this.tropicals.data:this.empty),m=new Date().valueOf()-(p+u),console.log("[tropicals] update elapsed: ",m,", total: ",u+=m)):(this.map.addSource(this.source,{type:"geojson",data:(r=this.tropicals)!=null&&r.active?(i=this.tropicals)==null?void 0:i.data:this.empty}),this.map.addLayer({id:this.historyLayer,type:"line",source:this.source,filter:["all",["==","$type","LineString"],["==","type","history"],["!=","disabled",!0]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#000","line-width":4,"line-opacity":.5}}),this.map.addLayer({id:this.forecastLayer,type:"line",source:this.source,filter:["all",["==","$type","LineString"],["==","type","forecast"],["!=","disabled",!0]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":["match",["get","model"],"cma","#e2ea03","jma","#01d2b7","ecmwf","#f582f2","ukm","#f5bb47","noaa-at","#9758fb","noaa-ep","#9758fb","#fff"],"line-width":3,"line-opacity":.9,"line-dasharray":[1,2]}}),this.map.addLayer({id:this.forecastModelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","LineString"],["==","type","forecast"],["!=","disabled",!0]],layout:{"symbol-placement":"line","text-field":"{model}","text-rotation-alignment":"viewport","text-size":13},paint:{"text-color":["match",["get","model"],"cma","#000","jma","#000","ecmwf","#fff","ukm","#fff","noaa-at","#fff","noaa-ep","#fff","#000"],"text-opacity":1,"text-halo-color":["match",["get","model"],"cma","#e2ea03","jma","#01d2b7","ecmwf","#f582f2","ukm","#f5bb47","noaa-at","#9758fb","noaa-ep","#9758fb","#fff"],"text-halo-width":4}}),m=new Date().valueOf()-(p+u),console.log("[tropical] add elapsed: ",m,", total: ",u+=m)),(s=this.map)!=null&&s.getSource(this.clusterSource)?((n=this.map)==null||n.getSource(this.clusterSource).setData((l=this.tropicals)!=null&&l.active?this.tropicals.data:this.empty),m=new Date().valueOf()-(p+u),console.log("[tropical] update elapsed: ",m,", total: ",u+=m)):(this.map.addSource(this.clusterSource,{type:"geojson",data:(c=this.tropicals)!=null&&c.active?(h=this.tropicals)==null?void 0:h.data:this.empty}),this.map.addLayer({id:this.pointCircleLayer+"-border",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],paint:{"circle-radius":6,"circle-color":"#fff"}}),this.map.addLayer({id:this.pointCircleLayer,type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],paint:{"circle-radius":4,"circle-color":["case",["boolean",["<",["get","spd",["get","wind"]],17.2]],"#03f869",["boolean",["<=",["get","spd",["get","wind"]],24.5]],"#f2f202",["boolean",["<=",["get","spd",["get","wind"]],32.7]],"#ff9100",["boolean",["<=",["get","spd",["get","wind"]],41.5]],"#f44336",["boolean",["<",["get","spd",["get","wind"]],51]],"#c604a4",["boolean",[">=",["get","spd",["get","wind"]],51]],"#6b05bb","#fff"]}}),this.map.addLayer({id:this.pointLabelLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[0,-.5],"text-anchor":"bottom-left","text-size":12},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-color":"#fff","text-halo-width":1}}),this.map.addLayer({id:this.historyPointCircleLayer+"-border",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],paint:{"circle-radius":8,"circle-color":"#fff"}}),this.map.addLayer({id:this.historyPointCircleLayer,type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],paint:{"circle-radius":6,"circle-color":"rgba(0,0,0,0.7)"}}),this.map.addLayer({id:this.historyPointCircleLayer+"-inner",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],paint:{"circle-radius":4,"circle-color":"#fff"}}),this.map.addLayer({id:this.historyPointLabelLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[0,-.5],"text-anchor":"bottom-left","text-size":14},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-color":"#fff","text-halo-width":1}}),this.map.addLayer({id:this.forecastNameLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showNameLabel",!0]],layout:{"text-field":["get","name"],"text-offset":[0,1.5],"text-anchor":"bottom","text-size":16,"text-allow-overlap":!0,"text-ignore-placement":!0},paint:{"text-color":"#fff","text-halo-color":"#146bf5","text-halo-width":4}}),m=new Date().valueOf()-(p+u),console.log("[tropical] add elapsed: ",m,", total: ",u+=m))}this.handleDrawCircle();const d=Ee.TropicalHelper.interpolate(this.tropicals,1);this.interpolateData=JSON.parse(JSON.stringify(d)),console.log(888,this.interpolateData),this.handleDateChange()}},handleClear(){var t;this.map&&(this.map.getLayer(this.historyLayer)&&this.map.removeLayer(this.historyLayer),this.map.getLayer(this.forecastLayer)&&this.map.removeLayer(this.forecastLayer),this.map.getLayer(this.forecastModelLayer)&&this.map.removeLayer(this.forecastModelLayer),this.map.getLayer(this.forecastNameLayer)&&this.map.removeLayer(this.forecastNameLayer),this.map.getLayer(this.pointCircleLayer)&&this.map.removeLayer(this.pointCircleLayer),this.map.getLayer(this.pointCircleLayer+"-border")&&this.map.removeLayer(this.pointCircleLayer+"-border"),this.map.getLayer(this.pointLabelLayer)&&this.map.removeLayer(this.pointLabelLayer),this.map.getLayer(this.historyPointCircleLayer)&&this.map.removeLayer(this.historyPointCircleLayer),this.map.getLayer(this.historyPointCircleLayer+"-border")&&this.map.removeLayer(this.historyPointCircleLayer+"-border"),this.map.getLayer(this.historyPointCircleLayer+"-inner")&&this.map.removeLayer(this.historyPointCircleLayer+"-inner"),this.map.getLayer(this.historyPointLabelLayer)&&this.map.removeLayer(this.historyPointLabelLayer),this.map.getLayer(this.interpolateLineLayer)&&this.map.removeLayer(this.interpolateLineLayer),(t=this.interpolateMarkers)==null||t.forEach(e=>e==null?void 0:e.remove()),this.map.getSource(this.source)&&this.map.removeSource(this.source),this.map.getSource(this.clusterSource)&&this.map.removeSource(this.clusterSource),this.map.getSource(this.interpolateSource)&&this.map.removeSource(this.interpolateSource),this.map.getLayer(this.circleLayer)&&this.map.removeLayer(this.circleLayer),this.map.getSource(this.circleSource)&&this.map.removeSource(this.circleSource))},handleDateChange(){var t,e,a,r,i,s,l,n,c,h,d,p,u,m,g,f,y,_,b,w,C,L,P,N,I,V,R,A,ae,oe,ie,re,se,ne;if((t=this.interpolateMarkers)==null||t.forEach(W=>W==null?void 0:W.remove()),this.circleSourceData.features=[],(e=this.interpolateData)!=null&&e.length&&this.tropicals.active){const W=O(this.date).utc().set({minute:0,second:0,millisecond:0}),j=this.interpolateData.filter(E=>E.properties.date===W.format()&&!E.properties.disabled),le=this.handleComputePolygons(j),F=x.featureCollection([...j]);le.forEach(E=>{F.features.push(E)}),(a=this.map)!=null&&a.getSource(this.interpolateSource)?(r=this.map)==null||r.getSource(this.interpolateSource).setData(F):((i=this.map)==null||i.addSource(this.interpolateSource,{type:"geojson",data:F}),(s=this.map)==null||s.addLayer({id:this.interpolateLineLayer,type:"line",source:this.interpolateSource,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"line-opacity":1,"line-color":["match",["get","level"],7,"#ff9500",10,"#f74468","#ffffff"],"line-width":2}})),this.interpolateMarkers=[];for(const E of j)if(!E.properties.disabled){let $="#f44336";((n=(l=E.properties)==null?void 0:l.wind)==null?void 0:n.spd)<17.2?$="#03f869":((h=(c=E.properties)==null?void 0:c.wind)==null?void 0:h.spd)>=17.2&&((p=(d=E.properties)==null?void 0:d.wind)==null?void 0:p.spd)<24.5?$="#f2f202":((m=(u=E.properties)==null?void 0:u.wind)==null?void 0:m.spd)>=24.5&&((f=(g=E.properties)==null?void 0:g.wind)==null?void 0:f.spd)<32.7?$="#ff9100":((_=(y=E.properties)==null?void 0:y.wind)==null?void 0:_.spd)>=32.7&&((w=(b=E.properties)==null?void 0:b.wind)==null?void 0:w.spd)<41.5?$="#f44336":((L=(C=E.properties)==null?void 0:C.wind)==null?void 0:L.spd)>=41.5&&((N=(P=E.properties)==null?void 0:P.wind)==null?void 0:N.spd)<51?$="#c604a4":((V=(I=E.properties)==null?void 0:I.wind)==null?void 0:V.spd)>=51?$="#6b05bb":$="#f44336";const ce=`<svg t="1719918955501"
190
+ `,["get","val"],{"font-scale":1}],"text-rotation-alignment":"map","text-line-height":1.3,"text-size":12},paint:{"text-opacity":1,"text-color":["step",["get","val"],"white",980,"black",1100,"black"],"text-halo-color":["step",["get","val"],"rgba(162,13,2,0.9)",920,"rgba(244,67,54,0.9)",980,"rgba(255,255,0,0.9)",1100,"rgba(199,171,250,0.9)"],"text-halo-width":4}},this.beforeLayer),this.handleMove()},1e3),s=new Date().valueOf()-(r+i),console.log("[prmsl] add elapsed: ",s,", total: ",i+=s))}this.handleMove()}},handleMove(){var t,e;(e=(t=this.map)==null?void 0:t.getLayer("country-boundaries"))==null||e.setLayoutProperty("visibility","visible"),this.map.getLayer(this.pointLabelLayer)&&this.map.moveLayer(this.pointLabelLayer,"country-boundaries"),this.map.getLayer(this.labelLayer)&&this.map.moveLayer(this.labelLayer,"country-boundaries"),this.map.getLayer(this.layer)&&this.map.moveLayer(this.layer,"country-boundaries")},handleClear(){var t,e;this.activeWeatherLayers.length===0&&((e=(t=this.map)==null?void 0:t.getLayer("country-boundaries"))==null||e.setLayoutProperty("visibility","none")),this.map.getLayer(this.pointLabelLayer)&&this.map.removeLayer(this.pointLabelLayer),this.map.getLayer(this.labelLayer)&&this.map.removeLayer(this.labelLayer),this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Jt(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Xt=S(Zt,[["render",Jt]]),qt={name:"IdmIceberg",props:{map:{type:Object},iceberg:{type:Object},beforeLayer:{type:String}},data(){return{source:"iceberg-source",layer:"iceberg-layer",empty:x.featureCollection([])}},watch:{"iceberg.version":{handler(){var t;(t=this.iceberg)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0}},methods:{handleRender(){var t,e;if(!this.map)setTimeout(()=>{this.handleRender()},500);else if(this.iceberg){const a=new Date().valueOf();let r=0,i=0,s=this.empty;this.iceberg.active&&(s=this.iceberg.data),(t=this.map)!=null&&t.getSource(this.source)?((e=this.map)==null||e.getSource(this.source).setData(s),i=new Date().valueOf()-(a+r),console.log("[iceberg] update elapsed: ",i,", total: ",r+=i)):(this.map.addSource(this.source,{type:"geojson",data:s}),this.map.addLayer({id:this.layer,type:"line",source:this.source,filter:["==","$type","LineString"],paint:{"line-color":"rgba(255,255,255, 0.8)","line-width":2,"line-opacity":1}}),i=new Date().valueOf()-(a+r),console.log("[iceberg] add elapsed: ",i,", total: ",r+=i))}},handleClear(){this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Yt(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Qt=S(qt,[["render",Yt]]),tr="",Kt={name:"IdmTropicals",props:{map:{type:Object},tropicals:{type:Object},date:{type:String}},emits:["tropical","tropicalProbability"],data(){return{helper:v.CompanyHelper,source:"tropicals-source",clusterSource:"tropicals-cluster-source",historyLayer:"tropicals-history-layer",forecastLayer:"tropicals-forecast-layer",forecastModelLayer:"tropicals-forecast-model-layer",forecastNameLayer:"tropicals-forecast-name-layer",pointCircleLayer:"tropicals-point-circle-layer",pointLabelLayer:"tropicals-point-label-layer",historyPointCircleLayer:"history-tropicals-point-circle-layer",historyPointLabelLayer:"history-tropicals-point-label-layer",interpolateData:[],interpolateMarkers:[],interpolateSource:"tropicals-interpolate-source",interpolateLineLayer:"tropicals-interpolate-line-layer",showTropicals:!1,activeTropicals:void 0,activeTropicalsMarker:void 0,empty:x.featureCollection([]),circleSource:"circle-source",circleSourceData:x.featureCollection([]),circleLayer:"tropical-circle-layer"}},computed:{computeTime(){return function(t){if(t){const e=O(t).utc();return`${e.format("MMM-DD,HHmm[Z]")} (${e==null?void 0:e.fromNow()})`}return"-"}}},watch:{"tropicals.active":{handler(){this.handleInit()},immediate:!0},showTropicals:{handler(){this.$emit("tropical",this.showTropicals)},immediate:!0},"tropicals.version":{handler(){var r,i;const t=((i=(r=this.tropicals)==null?void 0:r.data)==null?void 0:i.features)||[],e=O().utc().hour(),a=[];t.forEach(s=>{var l,n,c;(l=s.properties)!=null&&l.name&&!a.includes((n=s.properties)==null?void 0:n.name)&&a.push((c=s.properties)==null?void 0:c.name)}),a.forEach(s=>{var h;let l=0,n;const c=t.filter(d=>{var p,u;return((u=(p=d.properties)==null?void 0:p.category)==null?void 0:u.split("-")[0])===s});(h=c.filter(d=>{var p,u;return((p=d.geometry)==null?void 0:p.type)==="LineString"&&((u=d.properties)==null?void 0:u.type)==="forecast"})[0])==null||h.properties.model,c.forEach((d,p)=>{var u,m,g,f,y,_;((u=d.geometry)==null?void 0:u.type)==="Point"&&((m=d.properties)==null?void 0:m.type)==="history"&&(l=p,n=n===void 0?p:n),((g=d.geometry)==null?void 0:g.type)==="Point"&&((f=d.properties)==null?void 0:f.type)==="forecast"&&n===void 0&&(n=p),((y=d.geometry)==null?void 0:y.type)==="LineString"&&((_=d.properties)==null||_.type)}),c.map((d,p)=>{var u,m,g,f,y,_,b,w;if(((u=d.geometry)==null?void 0:u.type)==="LineString"&&((m=d.properties)==null||m.type),((g=d.geometry)==null?void 0:g.type)==="Point"&&((f=d.properties)==null?void 0:f.type)==="forecast"&&(d.properties.name=s),((y=d.geometry)==null?void 0:y.type)==="Point"&&((_=d.properties)==null?void 0:_.type)==="history"){const C=((w=(b=d.properties)==null?void 0:b.format)==null?void 0:w.slice(7,12))===O().utc().hour(Math.floor(e/6)*6).minute("00").format("HHmm")+"Z";d.properties.showHistoryLabel=C||p===l,d.properties.showNameLabel=p===l,d.properties.name=s}return d})}),this.handleInit()}}},methods:{handleInit(){var t,e;this.tropicals&&this.tropicals.active?(this.handleRender(),(t=this.map)==null||t.on("click",[this.forecastNameLayer,this.forecastLayer,this.historyLayer,this.forecastModelLayer,this.pointCircleLayer,this.pointLabelLayer,this.historyPointCircleLayer,this.historyPointLabelLayer],this.handleClick)):(this.handleClear(),(e=this.map)==null||e.off("click",[this.forecastNameLayer,this.forecastLayer,this.historyLayer,this.forecastModelLayer,this.pointCircleLayer,this.pointLabelLayer,this.historyPointCircleLayer,this.historyPointLabelLayer],this.handleClick))},handleRender(){var t,e,a,r,i,s,l,n,c,h;if(!this.map)setTimeout(()=>{this.handleRender()},500);else{if(this.tropicals){const p=new Date().valueOf();let u=0,m=0;(t=this.map)!=null&&t.getSource(this.source)?((a=this.map)==null||a.getSource(this.source).setData((e=this.tropicals)!=null&&e.active?this.tropicals.data:this.empty),m=new Date().valueOf()-(p+u),console.log("[tropicals] update elapsed: ",m,", total: ",u+=m)):(this.map.addSource(this.source,{type:"geojson",data:(r=this.tropicals)!=null&&r.active?(i=this.tropicals)==null?void 0:i.data:this.empty}),this.map.addLayer({id:this.historyLayer,type:"line",source:this.source,filter:["all",["==","$type","LineString"],["==","type","history"],["!=","disabled",!0]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#000","line-width":4,"line-opacity":.5}}),this.map.addLayer({id:this.forecastLayer,type:"line",source:this.source,filter:["all",["==","$type","LineString"],["==","type","forecast"],["!=","disabled",!0]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":["match",["get","model"],"cma","#e2ea03","jma","#01d2b7","ecmwf","#f582f2","ukm","#f5bb47","noaa-at","#9758fb","noaa-ep","#9758fb","#fff"],"line-width":3,"line-opacity":.9,"line-dasharray":[1,2]}}),this.map.addLayer({id:this.forecastModelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","LineString"],["==","type","forecast"],["!=","disabled",!0]],layout:{"symbol-placement":"line","text-field":"{model}","text-rotation-alignment":"viewport","text-size":13},paint:{"text-color":["match",["get","model"],"cma","#000","jma","#000","ecmwf","#fff","ukm","#fff","noaa-at","#fff","noaa-ep","#fff","#000"],"text-opacity":1,"text-halo-color":["match",["get","model"],"cma","#e2ea03","jma","#01d2b7","ecmwf","#f582f2","ukm","#f5bb47","noaa-at","#9758fb","noaa-ep","#9758fb","#fff"],"text-halo-width":4}}),m=new Date().valueOf()-(p+u),console.log("[tropical] add elapsed: ",m,", total: ",u+=m)),(s=this.map)!=null&&s.getSource(this.clusterSource)?((n=this.map)==null||n.getSource(this.clusterSource).setData((l=this.tropicals)!=null&&l.active?this.tropicals.data:this.empty),m=new Date().valueOf()-(p+u),console.log("[tropical] update elapsed: ",m,", total: ",u+=m)):(this.map.addSource(this.clusterSource,{type:"geojson",data:(c=this.tropicals)!=null&&c.active?(h=this.tropicals)==null?void 0:h.data:this.empty}),this.map.addLayer({id:this.pointCircleLayer+"-border",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],paint:{"circle-radius":6,"circle-color":"#fff"}}),this.map.addLayer({id:this.pointCircleLayer,type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],paint:{"circle-radius":4,"circle-color":["case",["boolean",["<",["get","spd",["get","wind"]],17.2]],"#03f869",["boolean",["<=",["get","spd",["get","wind"]],24.5]],"#f2f202",["boolean",["<=",["get","spd",["get","wind"]],32.7]],"#ff9100",["boolean",["<=",["get","spd",["get","wind"]],41.5]],"#f44336",["boolean",["<",["get","spd",["get","wind"]],51]],"#c604a4",["boolean",[">=",["get","spd",["get","wind"]],51]],"#6b05bb","#fff"]}}),this.map.addLayer({id:this.pointLabelLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[0,-.5],"text-anchor":"bottom-left","text-size":12},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-color":"#fff","text-halo-width":1}}),this.map.addLayer({id:this.historyPointCircleLayer+"-border",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],paint:{"circle-radius":8,"circle-color":"#fff"}}),this.map.addLayer({id:this.historyPointCircleLayer,type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],paint:{"circle-radius":6,"circle-color":"rgba(0,0,0,0.7)"}}),this.map.addLayer({id:this.historyPointCircleLayer+"-inner",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],paint:{"circle-radius":4,"circle-color":"#fff"}}),this.map.addLayer({id:this.historyPointLabelLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showHistoryLabel",!0],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[0,-.5],"text-anchor":"bottom-left","text-size":14},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-color":"#fff","text-halo-width":1}}),this.map.addLayer({id:this.forecastNameLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","showNameLabel",!0]],layout:{"text-field":["get","name"],"text-offset":[0,1.5],"text-anchor":"bottom","text-size":16,"text-allow-overlap":!0,"text-ignore-placement":!0},paint:{"text-color":"#fff","text-halo-color":"#146bf5","text-halo-width":4}}),m=new Date().valueOf()-(p+u),console.log("[tropical] add elapsed: ",m,", total: ",u+=m))}this.handleDrawCircle();const d=Ee.TropicalHelper.interpolate(this.tropicals,1);this.interpolateData=JSON.parse(JSON.stringify(d)),console.log(888,this.tropicals,this.interpolateData),this.handleDateChange()}},handleClear(){var t;this.map&&(this.map.getLayer(this.historyLayer)&&this.map.removeLayer(this.historyLayer),this.map.getLayer(this.forecastLayer)&&this.map.removeLayer(this.forecastLayer),this.map.getLayer(this.forecastModelLayer)&&this.map.removeLayer(this.forecastModelLayer),this.map.getLayer(this.forecastNameLayer)&&this.map.removeLayer(this.forecastNameLayer),this.map.getLayer(this.pointCircleLayer)&&this.map.removeLayer(this.pointCircleLayer),this.map.getLayer(this.pointCircleLayer+"-border")&&this.map.removeLayer(this.pointCircleLayer+"-border"),this.map.getLayer(this.pointLabelLayer)&&this.map.removeLayer(this.pointLabelLayer),this.map.getLayer(this.historyPointCircleLayer)&&this.map.removeLayer(this.historyPointCircleLayer),this.map.getLayer(this.historyPointCircleLayer+"-border")&&this.map.removeLayer(this.historyPointCircleLayer+"-border"),this.map.getLayer(this.historyPointCircleLayer+"-inner")&&this.map.removeLayer(this.historyPointCircleLayer+"-inner"),this.map.getLayer(this.historyPointLabelLayer)&&this.map.removeLayer(this.historyPointLabelLayer),this.map.getLayer(this.interpolateLineLayer)&&this.map.removeLayer(this.interpolateLineLayer),(t=this.interpolateMarkers)==null||t.forEach(e=>e==null?void 0:e.remove()),this.map.getSource(this.source)&&this.map.removeSource(this.source),this.map.getSource(this.clusterSource)&&this.map.removeSource(this.clusterSource),this.map.getSource(this.interpolateSource)&&this.map.removeSource(this.interpolateSource),this.map.getLayer(this.circleLayer)&&this.map.removeLayer(this.circleLayer),this.map.getSource(this.circleSource)&&this.map.removeSource(this.circleSource))},handleDateChange(){var t,e,a,r,i,s,l,n,c,h,d,p,u,m,g,f,y,_,b,w,C,L,P,N,I,V,R,A,ae,oe,ie,re,se,ne;if((t=this.interpolateMarkers)==null||t.forEach(W=>W==null?void 0:W.remove()),this.circleSourceData.features=[],(e=this.interpolateData)!=null&&e.length&&this.tropicals.active){const W=O(this.date).utc().set({minute:0,second:0,millisecond:0}),j=this.interpolateData.filter(E=>E.properties.date===W.format()&&!E.properties.disabled),le=this.handleComputePolygons(j),F=x.featureCollection([...j]);le.forEach(E=>{F.features.push(E)}),(a=this.map)!=null&&a.getSource(this.interpolateSource)?(r=this.map)==null||r.getSource(this.interpolateSource).setData(F):((i=this.map)==null||i.addSource(this.interpolateSource,{type:"geojson",data:F}),(s=this.map)==null||s.addLayer({id:this.interpolateLineLayer,type:"line",source:this.interpolateSource,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"line-opacity":1,"line-color":["match",["get","level"],7,"#ff9500",10,"#f74468","#ffffff"],"line-width":2}})),this.interpolateMarkers=[];for(const E of j)if(!E.properties.disabled){let $="#f44336";((n=(l=E.properties)==null?void 0:l.wind)==null?void 0:n.spd)<17.2?$="#03f869":((h=(c=E.properties)==null?void 0:c.wind)==null?void 0:h.spd)>=17.2&&((p=(d=E.properties)==null?void 0:d.wind)==null?void 0:p.spd)<24.5?$="#f2f202":((m=(u=E.properties)==null?void 0:u.wind)==null?void 0:m.spd)>=24.5&&((f=(g=E.properties)==null?void 0:g.wind)==null?void 0:f.spd)<32.7?$="#ff9100":((_=(y=E.properties)==null?void 0:y.wind)==null?void 0:_.spd)>=32.7&&((w=(b=E.properties)==null?void 0:b.wind)==null?void 0:w.spd)<41.5?$="#f44336":((L=(C=E.properties)==null?void 0:C.wind)==null?void 0:L.spd)>=41.5&&((N=(P=E.properties)==null?void 0:P.wind)==null?void 0:N.spd)<51?$="#c604a4":((V=(I=E.properties)==null?void 0:I.wind)==null?void 0:V.spd)>=51?$="#6b05bb":$="#f44336";const ce=`<svg t="1719918955501"
191
191
  class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" p-id="18382"
192
192
  xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
193
193
  <path
@@ -201,4 +201,4 @@
201
201
  <path
202
202
  d="M420.66666667 959.17a16.08 16.08 0 0 1-15.91-13.49A15.89 15.89 0 0 1 415.50666667 928c1.49-0.55 38.88-14.76 72.79-65.52A354.55 354.55 0 0 1 162.66666667 509.17a450.14 450.14 0 0 1 450.5-450.5 16.07 16.07 0 0 1 15.91 13.48 15.88 15.88 0 0 1-10.75 17.66c-1.58 0.58-39.13 14.9-73.07 65.95A354.22 354.22 0 0 1 871.66666667 509.17a16 16 0 0 1-0.52 4.05A450.14 450.14 0 0 1 420.66666667 959.17zM554.80666667 94.72C351.57666667 123.2 194.66666667 298.21 194.66666667 509.17c0 177.08 144.06 321.74 321.13 322.48a16 16 0 0 1 14.07 23.49c-16.11 30.42-34.27 52.37-50.85 68C682.25666667 894.63 839.16666667 719.63 839.16666667 508.67a15.94 15.94 0 0 1 0.47-3.86C837.30666667 329.33 693.82666667 187 517.80666667 186.67A16 16 0 0 1 503.66666667 163.21c16.21-30.69 34.47-52.79 51.14-68.49z"
203
203
  fill="#ffffff" p-id="18386"></path>
204
- </svg>`,U=document.createElement("div");U.className="hurricane-hourly-marker",U.innerHTML=`<div class="${E.geometry.coordinates[1]>=0?"center north":"center south"}">${ce}</div>`;const he=new G.Marker(U).setLngLat(E.geometry.coordinates).addTo(this.map);if(this.interpolateMarkers.push(he),(R=E.properties)!=null&&R.showCircle){const Q={radius:100,coordinates:E.geometry.coordinates},K={radius:200,coordinates:E.geometry.coordinates},ee={radius:500,coordinates:E.geometry.coordinates};(A=this.circleSourceData)==null||A.features.push(x.circle(Q.coordinates,Q.radius,{steps:100,units:"kilometers",properties:{type:"tropicalCircle"}})),(ae=this.circleSourceData)==null||ae.features.push(x.circle(K.coordinates,K.radius,{steps:100,units:"kilometers",properties:{type:"tropicalCircle"}})),(oe=this.circleSourceData)==null||oe.features.push(x.circle(ee.coordinates,ee.radius,{steps:100,units:"kilometers",properties:{type:"tropicalCircle"}}))}(re=(ie=this.map)==null?void 0:ie.getSource(this.circleSource))==null||re.setData(this.circleSourceData)}}else(se=this.map)!=null&&se.getSource(this.interpolateSource)&&((ne=this.map)==null||ne.getSource(this.interpolateSource).setData(this.empty))},handleClick(t){var s,l,n,c,h,d,p,u;const e=t.features[0],a=(l=(s=this.tropicals)==null?void 0:s.data)==null?void 0:l.features.filter(m=>{var g;return m.geometry.type==="LineString"&&m.properties.type==="forecast"&&m.properties.name===((g=e==null?void 0:e.properties)==null?void 0:g.name)});a.sort((m,g)=>{var f,y,_,b;return((f=m.properties)==null?void 0:f.model)==="cma"?-1:((y=m.properties)==null?void 0:y.model)==="jma"?((_=g.properties)==null?void 0:_.model)==="cma"?1:-1:m.properties.model==="ecmwf"?["jma","cma"].includes((b=g.properties)==null?void 0:b.model)?1:-1:0});const r=(c=(n=this.tropicals)==null?void 0:n.data)==null?void 0:c.features.filter(m=>{var g;return m.geometry.type==="LineString"&&m.properties.type==="history"&&m.properties.name===((g=e==null?void 0:e.properties)==null?void 0:g.name)});this.activeTropicals={name:(h=e==null?void 0:e.properties)==null?void 0:h.name,forecasts:a.map(m=>m.properties),history:(d=r[0])==null?void 0:d.properties,showCircle:(u=(p=a[0])==null?void 0:p.properties)==null?void 0:u.showCircle},this.showTropicals=!0;const i=document.getElementById("active-tropical");this.activeTropicalsMarker?this.activeTropicalsMarker.setLngLat([t.lngLat.lng,t.lngLat.lat]):this.activeTropicalsMarker=new G.Marker(i).setLngLat([t.lngLat.lng,t.lngLat.lat]).setOffset([220,0]).addTo(this.map)},handleForecastToggle(t){var r,i,s,l,n,c;t.disabled=!t.disabled;const e=`${t.name}-${t.model}`,a=(i=(r=this.map)==null?void 0:r.getSource(this.source)._data)==null?void 0:i.features;a.forEach(h=>{h.properties.category===e&&(h.properties.disabled=t.disabled)}),this.interpolateData.forEach(h=>{h.properties.category===e&&(h.properties.disabled=t.disabled)}),(l=(s=this.map)==null?void 0:s.getSource(this.source))==null||l.setData(x.featureCollection(a)),(c=(n=this.map)==null?void 0:n.getSource(this.clusterSource))==null||c.setData(x.featureCollection(a)),this.handleDateChange()},handleStrikeProbability(t){this.$emit("tropicalProbability",t)},handleToggleCircles(t){var e,a;t.showCircle=!t.showCircle,(a=(e=this.tropicals.data)==null?void 0:e.features)==null||a.forEach(r=>{r.properties.name===t.name&&(r.properties.showCircle=t.showCircle)}),this.handleRender()},handleDrawCircle(){var t,e;(t=this.map)!=null&&t.getSource(this.circleSource)?(e=this.map)==null||e.getSource(this.circleSource).setData(this.circleSourceData):(this.map.addSource(this.circleSource,{type:"geojson",data:this.circleSourceData}),this.map.addLayer({id:this.circleLayer,type:"line",source:this.circleSource,filter:["all",["==","$type","Polygon"],["==","type","tropicalCircle"]],paint:{"line-color":"#fff","line-width":2,"line-opacity":1,"line-dasharray":[1,1]}}))},handleComputePolygons(t){const e=[];for(const a of t){const r=a.properties.wind,i={ne:r.r7ne>=0?r.r7ne:void 0,se:r.r7se>=0?r.r7se:void 0,sw:r.r7sw>=0?r.r7sw:void 0,nw:r.r7nw>=0?r.r7nw:void 0},s=this.handleComputeArc(a.geometry.coordinates,i,{...a.properties,level:7});e.push(s);const l={ne:r.r10ne>=0?r.r10ne:void 0,se:r.r10se>=0?r.r10se:void 0,sw:r.r10sw>=0?r.r10sw:void 0,nw:r.r10nw>=0?r.r10nw:void 0},n=this.handleComputeArc(a.geometry.coordinates,l,{...a.properties,level:10});e.push(n)}return e},handleComputeArc(t,e,a){var s;const r=[];for(const l in e){const n=e[l]??0;let c;switch(l){case"ne":c=x.lineArc(t,n*1.852,0,90,{steps:n>0?64:1});break;case"se":c=x.lineArc(t,n*1.852,90,180,{steps:n>0?64:1});break;case"sw":c=x.lineArc(t,n*1.852,180,270,{steps:n>0?64:1});break;case"nw":c=x.lineArc(t,n*1.852,270,360,{steps:n>0?64:1});break}r.push(...(s=c==null?void 0:c.geometry)==null?void 0:s.coordinates)}const i=x.lineString(r);return x.lineToPolygon(i,{properties:a})}}},xe=t=>(o.pushScopeId("data-v-edea495b"),t=t(),o.popScopeId(),t),ea={id:"active-tropical",class:"active-tropical"},ta={class:"header-box"},aa={class:"main"},oa={key:0},ia={class:"sub"},ra={id:"meteoBox",class:"main-box"},sa={class:"content"},na={class:"row"},la={class:"col col-left",style:{"justify-content":"flex-start"}},ca=xe(()=>o.createElementVNode("label",null,"Wind speed : ",-1)),ha={class:"col col-right",style:{"justify-content":"flex-start"}},da=xe(()=>o.createElementVNode("label",null,"Pressure : ",-1)),pa={class:"row"},ma={class:"col col-24",style:{"justify-content":"flex-start"}},ya=xe(()=>o.createElementVNode("label",{style:{width:"max-content"}},"Forecast Models : ",-1)),fa={class:"forecast-models"},ua=["onClick"],ga=o.createStaticVNode('<div class="row" style="padding:0;height:1px;margin:10px 0;background:var(--idm-black-1);" data-v-edea495b></div><div class="row" style="padding:2px 10px;" data-v-edea495b><div class="legend" data-v-edea495b><div class="icon td" data-v-edea495b></div><div class="label" data-v-edea495b>TD</div></div><div class="legend" data-v-edea495b><div class="icon ts" data-v-edea495b></div><div class="label" data-v-edea495b>TS</div></div><div class="legend" data-v-edea495b><div class="icon sts" data-v-edea495b></div><div class="label" data-v-edea495b>STS</div></div><div class="legend" data-v-edea495b><div class="icon ty" data-v-edea495b></div><div class="label" data-v-edea495b>TY</div></div><div class="legend" data-v-edea495b><div class="icon sty" data-v-edea495b></div><div class="label" data-v-edea495b>STY</div></div><div class="legend" data-v-edea495b><div class="icon supper-ty" data-v-edea495b></div><div class="label" data-v-edea495b>Super TY</div></div></div><div class="row" style="padding:2px 10px;" data-v-edea495b><div class="legend" data-v-edea495b><div class="icon history" data-v-edea495b></div><div class="label" data-v-edea495b>History</div></div><div class="legend" data-v-edea495b><div class="icon r7" data-v-edea495b></div><div class="label" data-v-edea495b>35kts Radii</div></div><div class="legend" data-v-edea495b><div class="icon r10" data-v-edea495b></div><div class="label" data-v-edea495b>50kts Radii</div></div></div>',3),ba={class:"more"};function _a(t,e,a,r,i,s){var l,n,c,h,d,p,u,m,g,f,y,_,b,w,C;return o.withDirectives((o.openBlock(),o.createElementBlock("div",ea,[o.createElementVNode("div",ta,[o.createElementVNode("div",{class:"iconfont close-btn",onClick:e[0]||(e[0]=L=>i.showTropicals=!1)},""),o.createElementVNode("div",aa,[(n=(l=i.activeTropicals)==null?void 0:l.history)!=null&&n.level?(o.openBlock(),o.createElementBlock("span",oa,o.toDisplayString((h=(c=i.activeTropicals)==null?void 0:c.history)==null?void 0:h.level)+" , ",1)):o.createCommentVNode("",!0),o.createTextVNode(o.toDisplayString((d=i.activeTropicals)==null?void 0:d.name),1)]),o.createElementVNode("div",ia," Last update: "+o.toDisplayString(s.computeTime(((u=(p=i.activeTropicals)==null?void 0:p.history)==null?void 0:u.updated)||((f=(g=(m=i.activeTropicals)==null?void 0:m.forecasts)==null?void 0:g.filter(L=>!L.disabled)[0])==null?void 0:f.date))),1)]),o.createElementVNode("div",ra,[o.createElementVNode("div",sa,[o.createElementVNode("div",na,[o.createElementVNode("div",la,[ca,o.createElementVNode("span",null,o.toDisplayString(((_=(y=i.activeTropicals)==null?void 0:y.history)==null?void 0:_.kts)||"-")+"[kts]",1)]),o.createElementVNode("div",ha,[da,o.createElementVNode("span",null,o.toDisplayString(((w=(b=i.activeTropicals)==null?void 0:b.history)==null?void 0:w.pressure)||"-")+"[hPa]",1)])]),o.createElementVNode("div",pa,[o.createElementVNode("div",ma,[ya,o.createElementVNode("div",fa,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList((C=i.activeTropicals)==null?void 0:C.forecasts,(L,P)=>{var N,I,V,R;return o.openBlock(),o.createElementBlock("div",{key:P,class:o.normalizeClass(["model",L.disabled?"":"active",P>0&&P<((I=(N=i.activeTropicals)==null?void 0:N.forecasts)==null?void 0:I.length)-1&&((R=(V=i.activeTropicals)==null?void 0:V.forecasts)==null?void 0:R.length)>2?"center-child":""]),onClick:A=>s.handleForecastToggle(L)},[o.createElementVNode("span",{class:o.normalizeClass(L.model)},o.toDisplayString(L.model),3)],10,ua)}),128))])])]),ga]),o.createElementVNode("div",ba,[o.createElementVNode("div",{class:"button",onClick:e[1]||(e[1]=L=>s.handleStrikeProbability(i.activeTropicals))},"Strike Probability >>")])])],512)),[[o.vShow,i.showTropicals&&!t.$attrs.hideTropicalsLegend]])}const Ce=S(Kt,[["render",_a],["__scopeId","data-v-edea495b"]]),ar="",La={name:"IdmPrecip3h",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[precip3h] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(59, 126, 162, 0)"],[14/255,"rgba(84,170,230, 0)"],[15/255,"rgba(172, 210, 255, 0.8)"],[20/255,"rgba(51,202,248,0.8)"],[30/255,"rgba(3,248,103,0.8)"],[49/255,"rgba(14,201,3,0.8)"],[57/255,"rgba(190,226,2,0.8)"],[73/255,"rgba(248,1,1,0.8)"],[82/255,"rgba(197,5,58,0.8)"],[1,"rgba(197,5,58,0.8)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},q=t=>(o.pushScopeId("data-v-dec867b8"),t=t(),o.popScopeId(),t),wa={key:0},va=[q(()=>o.createElementVNode("span",null,"mm",-1)),q(()=>o.createElementVNode("span",null,"1.5",-1)),q(()=>o.createElementVNode("span",null,"2",-1)),q(()=>o.createElementVNode("span",null,"3",-1)),q(()=>o.createElementVNode("span",null,"7",-1)),q(()=>o.createElementVNode("span",null,"10",-1)),q(()=>o.createElementVNode("span",null,"20",-1)),q(()=>o.createElementVNode("span",null,"30",-1))];function xa(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",wa,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},va,4)])):o.createCommentVNode("",!0)}const Ca=S(La,[["render",xa],["__scopeId","data-v-dec867b8"]]),dr="",Sa={name:"IdmVisibility",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[visibility] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(189,50,160,0.8)"],[8/255,"rgba(208,56,56,0.8)"],[27/255,"rgba(190,226,2,0.8)"],[60/255,"rgba(3,236,118,0.8)"],[160/255,"rgba(172, 210,255,0.8)"],[161/255,"rgba(172, 210,255,0)"],[1,"rgba(144,144,144,0)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},de=t=>(o.pushScopeId("data-v-952dee5c"),t=t(),o.popScopeId(),t),ka={key:0},Ea=[de(()=>o.createElementVNode("span",null,"nm",-1)),de(()=>o.createElementVNode("span",null,"0",-1)),de(()=>o.createElementVNode("span",null,"0.5",-1)),de(()=>o.createElementVNode("span",null,"1.5",-1)),de(()=>o.createElementVNode("span",null,"3",-1)),de(()=>o.createElementVNode("span",null,"9",-1))];function za(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",ka,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:t.right+"px",bottom:a.bottom}])},Ea,4)])):o.createCommentVNode("",!0)}const Pa=S(Sa,[["render",za],["__scopeId","data-v-952dee5c"]]),br="",Na={name:"IdmWaterTemp",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[water-temp] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(95, 143, 197)"],[46/255,"rgba(95, 143, 197)"],[69/255,"rgb(80, 140, 62)"],[92/255,"rgb(121, 146, 28)"],[115/255,"rgb(171, 161, 14)"],[138/255,"rgb(223, 177, 69)"],[161/255,"rgb(243, 150, 6)"],[184/255,"rgb(236, 95, 21)"],[207/255,"rgb(190, 65, 18)"],[230/255,"rgb(138, 43, 10)"],[1,"rgb(138, 43, 10)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},pe=t=>(o.pushScopeId("data-v-67e5094b"),t=t(),o.popScopeId(),t),Ta={key:0},Ia=[pe(()=>o.createElementVNode("span",null,"°C",-1)),pe(()=>o.createElementVNode("span",null,"0",-1)),pe(()=>o.createElementVNode("span",null,"10",-1)),pe(()=>o.createElementVNode("span",null,"20",-1)),pe(()=>o.createElementVNode("span",null,"30",-1)),pe(()=>o.createElementVNode("span",null,"40",-1))];function Da(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",Ta,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},Ia,4)])):o.createCommentVNode("",!0)}const Va=S(Na,[["render",Da],["__scopeId","data-v-67e5094b"]]),Sr="",Ra={name:"IdmTemp",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[water-temp] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgb(149, 137, 211)"],[100/255,"rgb(149, 137, 211)"],[110/255,"rgb(150, 209, 216)"],[120/255,"rgb(129, 204, 197)"],[130/255,"rgb(103, 180, 186)"],[140/255,"rgb(95, 143, 197)"],[150/255,"rgb(80, 140, 62)"],[160/255,"rgb(121, 146, 28)"],[170/255,"rgb(171, 161, 14)"],[180/255,"rgb(223, 177, 6)"],[190/255,"rgb(243, 150, 6)"],[200/255,"rgb(236, 95, 21)"],[210/255,"rgb(190, 65, 18)"],[220/255,"rgb(138, 43, 10)"],[1,"rgb(138, 43, 10)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Y=t=>(o.pushScopeId("data-v-389ea886"),t=t(),o.popScopeId(),t),$a={key:0},Ba=[Y(()=>o.createElementVNode("span",null,"°C",-1)),Y(()=>o.createElementVNode("span",null,"-20",-1)),Y(()=>o.createElementVNode("span",null,"-10",-1)),Y(()=>o.createElementVNode("span",null,"0",-1)),Y(()=>o.createElementVNode("span",null,"10",-1)),Y(()=>o.createElementVNode("span",null,"20",-1)),Y(()=>o.createElementVNode("span",null,"30",-1)),Y(()=>o.createElementVNode("span",null,"40",-1))];function Aa(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",$a,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},Ba,4)])):o.createCommentVNode("",!0)}const Ma=S(Ra,[["render",Aa],["__scopeId","data-v-389ea886"]]),Vr="",Wa={name:"IdmArctic",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[water-temp] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(76, 165, 228, 0)"],[50/255,"rgba(76, 165, 228, 0)"],[51/255,"rgb(76, 165, 228)"],[102/255,"rgb(129, 204, 197)"],[153/255,"rgb(150, 209, 216)"],[204/255,"rgb(180, 209, 216)"],[1,"rgb(180, 209, 216)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},me=t=>(o.pushScopeId("data-v-db805141"),t=t(),o.popScopeId(),t),Oa={key:0},ja=[me(()=>o.createElementVNode("span",null,"m",-1)),me(()=>o.createElementVNode("span",null,"0",-1)),me(()=>o.createElementVNode("span",null,"0.5",-1)),me(()=>o.createElementVNode("span",null,"1",-1)),me(()=>o.createElementVNode("span",null,"1.5",-1)),me(()=>o.createElementVNode("span",null,"2",-1))];function Fa(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",Oa,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},ja,4)])):o.createCommentVNode("",!0)}const Ua=S(Wa,[["render",Fa],["__scopeId","data-v-db805141"]]),Or="",Ha={name:"IdmPoint",emits:["point","more"],props:{map:{type:Object},show:{type:Boolean},meteo:{type:Object}},data(){return{showMeteo:!1,meteoMarker:void 0,helper:v.CompanyHelper}},watch:{show:{handler(){this.handleBind()},immediate:!0},map:{handler(){this.map&&this.show&&this.handleBind()}},meteo:{handler(){this.meteo?(this.showMeteo=!0,this.handleRender()):this.showMeteo=!1}}},computed:{computeTime(){return function(t){return t?`${O(t).utc().format("MMM-DD,HHmm[Z]")}`:"-"}},computeLat(){return function(t,e=4){return v.LngLatHelper.lat2pretty(t,e).pretty}},computeLng(){return function(t,e=4){return v.LngLatHelper.lng2pretty(t,e).pretty}},roundPrecision(){return function(t,e=4){return isNaN(t)?"-":v.LngLatHelper.roundPrecision(t,e)}}},methods:{handleBind(){var t,e;this.show?(t=this.map)==null||t.on("click",this.handleClick):((e=this.map)==null||e.off("click",this.handleClick),this.showMeteo=!1)},handleClick(t){t.originalEvent.stopPropagation();const e=t.originalEvent.target.className;e.indexOf("close")>-1?this.showMeteo=!1:e==="more"?this.$emit("more",this.meteo):this.$emit("point",t.lngLat)},handleRender(){var t;if(this.meteo){const e=document.getElementById("point-meteo");this.meteoMarker?(t=this.meteoMarker)==null||t.setLngLat([this.meteo.lng,this.meteo.lat]):this.meteoMarker=new G.Marker(e).setLngLat([this.meteo.lng,this.meteo.lat]).addTo(this.map)}}}},M=t=>(o.pushScopeId("data-v-fb5b12d6"),t=t(),o.popScopeId(),t),Ga={id:"point-meteo",class:"point-meteo"},Za={class:"meteo-box"},Ja={class:"header-box"},Xa={class:"main"},qa={class:"sub"},Ya={class:"main-box"},Qa={class:"flex-space"},Ka=M(()=>o.createElementVNode("label",null,"Wind",-1)),eo={class:"flex-space"},to=M(()=>o.createElementVNode("label",null,"Wind.Wave",-1)),ao={class:"flex-space"},oo=M(()=>o.createElementVNode("label",null,"Swell",-1)),io={class:"flex-space"},ro=M(()=>o.createElementVNode("label",null,"Sig.Wave",-1)),so={class:"flex-space"},no=M(()=>o.createElementVNode("label",null,"Current",-1)),lo={class:"flex-space"},co=M(()=>o.createElementVNode("label",null,"Precip",-1)),ho={class:"flex-space"},po=M(()=>o.createElementVNode("label",null,"Visibility",-1)),mo={class:"flex-space"},yo=M(()=>o.createElementVNode("label",null,"Temp",-1)),fo={class:"flex-space"},uo=M(()=>o.createElementVNode("label",null,"Water Temp",-1)),go={key:0,class:"flex-space",style:{"justify-content":"flex-end"}},bo=[M(()=>o.createElementVNode("span",{class:"more"},"More >>",-1))];function _o(t,e,a,r,i,s){var l,n,c,h,d,p,u,m,g,f,y,_,b,w,C,L,P,N,I,V,R,A,ae,oe,ie,re,se,ne,W,j,le,F,E,$,ce,U,he,Q,K,ee,ye,fe,ue,ge,be,_e,Le;return o.withDirectives((o.openBlock(),o.createElementBlock("div",Ga,[o.createElementVNode("div",Za,[o.createElementVNode("div",Ja,[o.createElementVNode("div",{class:"iconfont close",onClick:e[0]||(e[0]=ke=>i.showMeteo=!1)},""),o.createElementVNode("div",Xa,o.toDisplayString(s.computeLat((l=a.meteo)==null?void 0:l.lat))+","+o.toDisplayString(s.computeLng((n=a.meteo)==null?void 0:n.lng)),1),o.createElementVNode("div",qa,o.toDisplayString(s.computeTime((c=a.meteo)==null?void 0:c.utc)),1)]),o.createElementVNode("div",Ya,[o.createElementVNode("div",Qa,[Ka,o.createElementVNode("span",null,o.toDisplayString(((d=(h=a.meteo)==null?void 0:h.wind)==null?void 0:d.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((u=(p=a.meteo)==null?void 0:p.wind)==null?void 0:u.kts,1))+"[kts]/"+o.toDisplayString((g=(m=a.meteo)==null?void 0:m.wind)==null?void 0:g.scale)+"[BF]/"+o.toDisplayString(s.roundPrecision((y=(f=a.meteo)==null?void 0:f.gusts)==null?void 0:y.kts,1))+"[kts]",1)]),o.createElementVNode("div",eo,[to,o.createElementVNode("span",null,o.toDisplayString(((w=(b=(_=a.meteo)==null?void 0:_.wave)==null?void 0:b.wd)==null?void 0:w.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((P=(L=(C=a.meteo)==null?void 0:C.wave)==null?void 0:L.wd)==null?void 0:P.height,1))+"[m]/"+o.toDisplayString(s.roundPrecision((V=(I=(N=a.meteo)==null?void 0:N.wave)==null?void 0:I.wd)==null?void 0:V.period,1))+"[s]",1)]),o.createElementVNode("div",ao,[oo,o.createElementVNode("span",null,o.toDisplayString(((ae=(A=(R=a.meteo)==null?void 0:R.wave)==null?void 0:A.swell)==null?void 0:ae.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((re=(ie=(oe=a.meteo)==null?void 0:oe.wave)==null?void 0:ie.swell)==null?void 0:re.height,1))+"[m]/"+o.toDisplayString(s.roundPrecision((W=(ne=(se=a.meteo)==null?void 0:se.wave)==null?void 0:ne.swell)==null?void 0:W.period,1))+"[s]",1)]),o.createElementVNode("div",io,[ro,o.createElementVNode("span",null,o.toDisplayString(((F=(le=(j=a.meteo)==null?void 0:j.wave)==null?void 0:le.sig)==null?void 0:F.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((ce=($=(E=a.meteo)==null?void 0:E.wave)==null?void 0:$.sig)==null?void 0:ce.height,1))+"[m]/"+o.toDisplayString(s.roundPrecision((Q=(he=(U=a.meteo)==null?void 0:U.wave)==null?void 0:he.sig)==null?void 0:Q.period,1))+"[s]",1)]),o.createElementVNode("div",so,[no,o.createElementVNode("span",null,o.toDisplayString(((ee=(K=a.meteo)==null?void 0:K.current)==null?void 0:ee.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((fe=(ye=a.meteo)==null?void 0:ye.current)==null?void 0:fe.kts,2))+"[kts]",1)]),o.createElementVNode("div",lo,[co,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision((ge=(ue=a.meteo)==null?void 0:ue.precip)==null?void 0:ge.inter6h,2))+"[mm]",1)]),o.createElementVNode("div",ho,[po,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision(((be=a.meteo)==null?void 0:be.visibility)/1852,0))+"[nm]",1)]),o.createElementVNode("div",mo,[yo,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision((_e=a.meteo)==null?void 0:_e.temp,0))+"[°C]",1)]),o.createElementVNode("div",fo,[uo,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision((Le=a.meteo)==null?void 0:Le.waterTemp,2))+"[°C]",1)])]),t.$attrs.permission&i.helper.LEVEL.Prime?(o.openBlock(),o.createElementBlock("div",go,bo)):o.createCommentVNode("",!0)])],512)),[[o.vShow,i.showMeteo]])}const Lo=S(Ha,[["render",_o],["__scopeId","data-v-fb5b12d6"]]),wo={name:"IdmWarZone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"war-zone-source",zoneLayer:"war-zone-layer",zoneLabelLayer:"war-zone-label-layer"}},watch:{zone:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.zone&&(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.zoneLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-color":"#f44336","fill-opacity":.4}},this.beforeLayer),this.map.addLayer({id:this.zoneLayer+"-border",type:"line",source:this.source,filter:["==","$type","Polygon"],paint:{"line-width":1,"line-opacity":1,"line-color":"#f44336"}},this.beforeLayer),this.map.addLayer({id:this.zoneLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-1]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.zoneLayer)&&this.map.removeLayer(this.zoneLayer),this.map.getLayer(this.zoneLayer+"-border")&&this.map.removeLayer(this.zoneLayer+"-border"),this.map.getLayer(this.zoneLabelLayer)&&this.map.removeLayer(this.zoneLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function vo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const xo=S(wo,[["render",vo]]),Co={name:"IdmGmdssArea",props:{map:{type:Object},area:{type:Object},beforeLayer:{type:String}},data(){return{source:"gmdss-area-source",areaLayer:"gmdss-area-layer",areaLabelLayer:"gmdss-area-label-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.areaLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.5,"fill-color":["match",["get","val"],"AreaI","#EB8996","AreaII","#6F448B","AreaIII","#3E8BD3","AreaIV","#5EBCC4","AreaV","#00AAE7","AreaVI","#9CCE6D","AreaVII","#F4AE00","AreaVIII","#EF9A85","AreaIX","#00AAA7","AreaX","#7AC49F","AreaXI","#DFDFDF","AreaXII","#FFF974","AreaXIII","#EF9A85","AreaXIV","#86A2D1","AreaXV","#EC8972","AreaXVI","#EAC2DA","AreaXVII","#B9C8E7","AreaXVIII","#BBA1C8","AreaXIX","#FAE0BD","AreaXX","#DBECC8","AreaXXI","#D496AF","#ffffff"]}},this.beforeLayer),this.map.addLayer({id:this.areaLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":12,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-opacity":.8,"text-color":"#000"}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.areaLayer)&&this.map.removeLayer(this.areaLayer),this.map.getLayer(this.areaLabelLayer)&&this.map.removeLayer(this.areaLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function So(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const ko=S(Co,[["render",So]]),Eo={name:"IdmEcaZone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"eca-zone-source",zoneLayer:"eca-zone-layer",zoneLabelLayer:"eca-zone-label-layer"}},watch:{zone:{handler(){this.zone?this.handleRender():this.handleClear()}}},methods:{handleRender(){var t;this.map?(this.handleClear(),this.zone&&(this.map.getSource(this.source)?(t=this.map)==null||t.getSource(this.source).setData(this.zone):(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.zoneLayer,type:"fill",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"fill-outline-color":"silver","fill-opacity":.4,"fill-color":"#05f324"}}),this.map.addLayer({id:this.zoneLayer+"-border",type:"line",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"line-color":"#04c021","line-width":1,"line-opacity":1}},this.beforeLayer),this.map.addLayer({id:this.zoneLabelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","Point"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-max-width":16,"text-justify":"left","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}})))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.zoneLayer)&&this.map.removeLayer(this.zoneLayer),this.map.getLayer(this.zoneLayer+"-border")&&this.map.removeLayer(this.zoneLayer+"-border"),this.map.getLayer(this.zoneLabelLayer)&&this.map.removeLayer(this.zoneLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function zo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Po=S(Eo,[["render",zo]]),Fr="",No={name:"IdmAlertZone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"alert-zone-source",polygonLayer:"alert-zone-polygon-layer",polygonLabelLayer:"alert-zone-polygon-label-layer",lineLayer:"alert-zone-line-layer",lineLabelLayer:"alert-zone-line-label-layer",pointLayer:"alert-zone-point-layer",showZone:!1,form:{}}},watch:{zone:{handler(){var t,e;this.zone?(this.handleRender(),(t=this.map)==null||t.on("click",[this.polygonLabelLayer,this.lineLabelLayer,this.pointLayer],this.handleClick)):(this.handleClear(),(e=this.map)==null||e.off("click",[this.polygonLabelLayer,this.lineLabelLayer,this.pointLayer],this.handleClick))}}},methods:{handleClick(t){var r;const e=t.features[0],a=(r=this.zone)==null?void 0:r.features.filter(i=>{var s;return i.properties.id===((s=e==null?void 0:e.properties)==null?void 0:s.id)})[0];a&&(this.showZone=!0,this.form={...a.properties})},handleRender(){var t;this.map?(this.handleClear(),this.zone&&(this.map.getSource(this.source)?(t=this.map)==null||t.getSource(this.source).setData(this.zone):(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.polygonLayer,type:"fill",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"fill-outline-color":"#d57d02","fill-opacity":.4,"fill-color":"#d57d02"}}),this.map.addLayer({id:this.polygonLayer+"-border",type:"line",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"line-width":1,"line-color":"#d57d02"}}),this.map.addLayer({id:this.lineLayer,type:"line",source:this.source,filter:["all",["==","$type","LineString"],["!=","disabled",!0]],paint:{"line-color":"#d57d02","line-width":2}}),this.map.addLayer({id:this.polygonLabelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-image":"alert","icon-size":.1,"icon-allow-overlap":!0,"icon-rotation-alignment":"viewport"},paint:{"icon-opacity":.8}}),this.map.addLayer({id:this.lineLabelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","LineString"],["!=","disabled",!0]],layout:{"symbol-placement":"line-center","icon-image":"alert","icon-size":.1,"icon-allow-overlap":!0,"icon-rotation-alignment":"viewport"},paint:{"icon-opacity":.8}}),this.map.addLayer({id:this.pointLayer,type:"symbol",source:this.source,filter:["all",["==","$type","Point"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-image":"alert","icon-size":.1},paint:{"icon-opacity":.8}})))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.polygonLayer)&&this.map.removeLayer(this.polygonLayer),this.map.getLayer(this.polygonLayer+"-border")&&this.map.removeLayer(this.polygonLayer+"-border"),this.map.getLayer(this.polygonLabelLayer)&&this.map.removeLayer(this.polygonLabelLayer),this.map.getLayer(this.lineLayer)&&this.map.removeLayer(this.lineLayer),this.map.getLayer(this.lineLabelLayer)&&this.map.removeLayer(this.lineLabelLayer),this.map.getLayer(this.pointLayer)&&this.map.removeLayer(this.pointLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}},To={id:"zone-info"},Io=["innerHTML"];function Do(t,e,a,r,i,s){var l;return o.withDirectives((o.openBlock(),o.createElementBlock("div",To,[o.createElementVNode("div",{class:"iconfont close",onClick:e[0]||(e[0]=n=>i.showZone=!1)},""),o.createElementVNode("div",{class:"rich-context",innerHTML:(l=i.form)==null?void 0:l.name},null,8,Io)],512)),[[o.vShow,i.showZone]])}const Vo=S(No,[["render",Do],["__scopeId","data-v-c0864afc"]]),Ur="",Ro={name:"IdmPort",props:{map:{type:Object},port:{type:Object},beforeLayer:{type:String}},emits:["port"],data(){return{source:"port-source",layer:"port-layer",showPort:!1,form:{},marker:void 0}},computed:{computeLat(){return function(t){return v.LngLatHelper.lat2pretty(t,4).pretty}},computeLng(){return function(t){return v.LngLatHelper.lng2pretty(t,4).pretty}}},watch:{port:{handler(){var t,e;this.port?(this.handleRender(),(t=this.map)==null||t.on("click",[this.layer],this.handleClick)):(this.handleClear(),(e=this.map)==null||e.off("click",[this.layer],this.handleClick))}}},methods:{handleClick(t){var r;const e=t.features[0],a=(r=this.port)==null?void 0:r.features.filter(i=>{var s;return i.properties.id===((s=e==null?void 0:e.properties)==null?void 0:s.id)})[0];if(a){this.showPort=!0,this.form={...a.properties},this.form.lng=a.geometry.coordinates[0],this.form.lat=a.geometry.coordinates[1];const i=document.getElementById("port-info");this.marker?this.marker.setLngLat([t.lngLat.lng,t.lngLat.lat]):this.marker=new G.Marker(i).setLngLat([t.lngLat.lng,t.lngLat.lat]).setOffset([0,-85]).addTo(this.map)}},handleEmit(){this.$emit("port",this.form)},handleRender(){var t;this.map?this.port&&(this.map.getSource(this.source)?(t=this.map)==null||t.getSource(this.source).setData(this.port):(this.map.addSource(this.source,{type:"geojson",data:this.port}),this.map.addLayer({id:this.layer,type:"symbol",source:this.source,filter:["all",["==","$type","Point"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"port","text-anchor":"left","text-field":"{name}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[1,0]},paint:{"text-color":"rgba(0, 0, 0, 0.8)","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.showPort=!1,this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}},ve=t=>(o.pushScopeId("data-v-30e545a2"),t=t(),o.popScopeId(),t),$o={id:"port-info"},Bo={class:"port-box"},Ao={class:"flex-start"},Mo=ve(()=>o.createElementVNode("label",null,"Name : ",-1)),Wo={class:"flex-start"},Oo=ve(()=>o.createElementVNode("label",null,"Position : ",-1)),jo={class:"flex-start"},Fo=ve(()=>o.createElementVNode("label",null,"LoCode : ",-1)),Uo={class:"flex-start",style:{"align-items":"flex-start"}},Ho=ve(()=>o.createElementVNode("label",null,"Region : ",-1));function Go(t,e,a,r,i,s){return o.withDirectives((o.openBlock(),o.createElementBlock("div",$o,[o.createElementVNode("div",{class:"close iconfont",onClick:e[0]||(e[0]=l=>i.showPort=!1)},""),o.createElementVNode("div",Bo,[o.createElementVNode("div",Ao,[Mo,o.createElementVNode("span",{onClick:e[1]||(e[1]=(...l)=>s.handleEmit&&s.handleEmit(...l))},o.toDisplayString(i.form.name),1)]),o.createElementVNode("div",Wo,[Oo,o.createElementVNode("span",null,o.toDisplayString(s.computeLat(i.form.lat))+", "+o.toDisplayString(s.computeLng(i.form.lng)),1)]),o.createElementVNode("div",jo,[Fo,o.createElementVNode("span",null,o.toDisplayString(i.form.loCode||"-"),1)]),o.createElementVNode("div",Uo,[Ho,o.createElementVNode("span",null,o.toDisplayString(i.form.city||"-")+", "+o.toDisplayString(i.form.country||"-"),1)])])],512)),[[o.vShow,i.showPort]])}const Zo=S(Ro,[["render",Go],["__scopeId","data-v-30e545a2"]]),Jo={name:"IdmLoadLine",props:{map:{type:Object},line:{type:Object},beforeLayer:{type:String}},data(){return{source:"load-line-source",lineLayer:"load-line-layer",lineLabelLayer:"load-line-label-layer"}},watch:{line:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.line&&(this.map.addSource(this.source,{type:"geojson",data:this.line}),this.map.addLayer({id:this.lineLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.75,"fill-color":["match",["get","val"],"LLGreen","#A0C0C0","LLRed","#F5A39D","LLBlue","#6B94E4","#ffffff"]}},this.beforeLayer),this.map.addLayer({id:this.lineLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-field":"{lbl} (Length < {shipLength}, {start} - {end})","text-rotation-alignment":"viewport","text-offset":[0,1],"text-size":10,"text-allow-overlap":!0},paint:{"text-opacity":.8}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.lineLayer)&&this.map.removeLayer(this.lineLayer),this.map.getLayer(this.lineLabelLayer)&&this.map.removeLayer(this.lineLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Xo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const qo=S(Jo,[["render",Xo]]),Yo={name:"IdmTimezone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"time-zone-source",zoneLayer:"time-zone-layer",zoneLabelLayer:"time-zone-label-layer"}},watch:{zone:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.zone&&(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.zoneLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.5,"fill-color":["match",["get","offSet"],"-11.5","rgba(255,0,0,0.4)","-11","rgba(0,255,0,0.3)","-10.5","rgba(0,255,0,0.3)","-10","rgba(0,0,255,0.3)","-9.5","rgba(0,0,255,0.3)","-9","rgba(255,0,0,0.4)","-8.5","rgba(255,0,0,0.4)","-8","rgba(0,255,0,0.3)","-7.5","rgba(0,255,0,0.3)","-7","rgba(0,0,255,0.3)","-6.5","rgba(0,0,255,0.3)","-6","rgba(255,0,0,0.4)","-5.5","rgba(255,0,0,0.4)","-5","rgba(0,255,0,0.3)","-4.5","rgba(0,255,0,0.3)","-4","rgba(0,0,255,0.3)","-3.5","rgba(0,0,255,0.3)","-3","rgba(255,0,0,0.4)","-2.5","rgba(255,0,0,0.4)","-2","rgba(0,255,0,0.3)","-1.5","rgba(0,255,0,0.3)","-1","rgba(0,0,255,0.3)","-0.5","rgba(0,0,255,0.3)","+0","rgba(255,0,0,0.4)","+0.5","rgba(255,0,0,0.4)","+1","rgba(0,255,0,0.3)","+1.5","rgba(0,255,0,0.3)","+2","rgba(0,0,255,0.3)","+2.5","rgba(0,0,255,0.3)","+3","rgba(255,0,0,0.4)","+3.5","rgba(255,0,0,0.4)","+4","rgba(0,255,0,0.3)","+4.5","rgba(0,255,0,0.3)","+5","rgba(0,0,255,0.3)","+5.5","rgba(0,0,255,0.3)","+6","rgba(255,0,0,0.4)","+6.5","rgba(255,0,0,0.4)","+7","rgba(0,255,0,0.3)","+7.5","rgba(0,255,0,0.3)","+8","rgba(0,0,255,0.3)","+8.5","rgba(0,0,255,0.3)","+9","rgba(255,0,0,0.4)","+9.5","rgba(255,0,0,0.4)","+10","rgba(0,255,0,0.3)","+10.5","rgba(0,255,0,0.3)","+11","rgba(0,0,255,0.3)","+11.5","rgba(0,0,255,0.3)","rgba(255,0,0,0.4)"]}}),this.map.addLayer({id:this.zoneLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-field":"{offSet}","text-rotation-alignment":"viewport","text-size":12,"text-offset":[0,1]},paint:{"text-opacity":.8,"text-color":"#fff"}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.zoneLayer)&&this.map.removeLayer(this.zoneLayer),this.map.getLayer(this.zoneLabelLayer)&&this.map.removeLayer(this.zoneLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Qo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Ko=S(Yo,[["render",Qo]]),ei={name:"IdmVoluntaryReportingArea",props:{map:{type:Object},area:{type:Object},beforeLayer:{type:String}},data(){return{source:"vra-source",areaLayer:"vra-layer",areaLabelLayer:"vra-label-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.areaLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.4,"fill-color":"#9f30f9"}},this.beforeLayer),this.map.addLayer({id:this.areaLayer+"-border",type:"line",source:this.source,filter:["==","$type","Polygon"],paint:{"line-width":1,"line-opacity":1,"line-color":"#9f30f9"}},this.beforeLayer),this.map.addLayer({id:this.areaLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.areaLayer)&&this.map.removeLayer(this.areaLayer),this.map.getLayer(this.areaLayer+"-border")&&this.map.removeLayer(this.areaLayer+"-border"),this.map.getLayer(this.areaLabelLayer)&&this.map.removeLayer(this.areaLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function ti(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const ai=S(ei,[["render",ti]]),oi={name:"IdmSpecialArea",props:{map:{type:Object},area:{type:Object},beforeLayer:{type:String}},data(){return{source:"special-area-source",areaLayer:"special-area-layer",areaLabelLayer:"special-area-label-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.area.features.forEach(t=>{t.geometry.type==="Polygon"&&t.geometry.coordinates.forEach(e=>v.convertToMonotonicLng2(e))}),this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.areaLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.4,"fill-color":["match",["get","val"],"DefaultStyle","rgb(0,0,0)","JWCriskArea","rgb(0,0,0)","rgb(0,0,0)"]}},this.beforeLayer),this.map.addLayer({id:this.areaLayer+"-border",type:"line",source:this.source,filter:["==","$type","Polygon"],paint:{"line-width":1,"line-opacity":.4,"line-color":"rgb(0,0,0)"}},this.beforeLayer),this.map.addLayer({id:this.areaLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.areaLayer)&&this.map.removeLayer(this.areaLayer),this.map.getLayer(this.areaLayer+"-border")&&this.map.removeLayer(this.areaLayer+"-border"),this.map.getLayer(this.areaLabelLayer)&&this.map.removeLayer(this.areaLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function ii(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const ri=S(oi,[["render",ii]]),si={name:"IdmTerminator",props:{map:{type:Object},area:{type:Object}},data(){return{source:"terminator-source",layer:"terminator-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.layer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.5,"fill-color":"rgba(0, 0, 0, 0.4)"}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function ni(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const li=S(si,[["render",ni]]),Hr="",ci={name:"IdmLatLng",props:{map:{type:Object},show:{type:Boolean},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{lngLat:void 0,source:"idm-lat-lng-source",layer:"idm-lat-lng-layer",labelLayer:"idm-lat-lng-label-layer",right:10}},watch:{show:{handler(){this.handleBind()},immediate:!0},map:{handler(){var t;this.map&&((t=this.map)==null||t.on("mousemove",this.handleMouseMove))},immediate:!0},toggleVersion:{handler(){var t,e,a;this.right=(((t=document.getElementsByClassName("legend-bars")[0])==null?void 0:t.clientWidth)||-10)+(((e=document.getElementsByClassName("available-layers-show")[0])==null?void 0:e.clientWidth)||0)+(((a=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:a.clientWidth)||0)+20},immediate:!0}},methods:{handleBind(){var t,e;this.show?((t=this.map)==null||t.on("zoomend",this.handleZoomEnd),this.handleRender()):(this.handleClear(),(e=this.map)==null||e.off("zoomend",this.handleZoomEnd))},handleMouseMove(t){const e=t.lngLat,a=v.LngLatHelper.lng2pretty(e.lng,2),r=v.LngLatHelper.lat2pretty(e.lat,2);this.lngLat={lng:a,lat:r}},handleComputeLatLngs(){var r;const t=(r=this.map)==null?void 0:r.getZoom();console.log(t);let e=30;t>4?e=10:t>3&&(e=15);const a=[];for(let i=-60;i<90;i+=e)a.push({type:"Feature",geometry:{type:"LineString",coordinates:[[-180,i],[180,i]]}});for(let i=-180;i<180;i+=e)a.push({type:"Feature",geometry:{type:"LineString",coordinates:[[i,-90],[i,90]]}});for(let i=180;i>-180;i-=e)for(let s=-60;s<90;s+=e)a.push({type:"Feature",geometry:{type:"Point",coordinates:[i,s]},properties:{val:`${s>0?s+" N":s===0?s:s*-1+" S"}, ${i>0?i+" E":i*-1+" W"}`}});return a},handleZoomEnd(){var e;const t=this.handleComputeLatLngs();(e=this.map)==null||e.getSource(this.source).setData(x.featureCollection(t))},handleRender(){if(this.map){const t=this.handleComputeLatLngs();this.map.addSource(this.source,{type:"geojson",data:{type:"FeatureCollection",features:t}}),this.map.addLayer({id:this.layer,type:"line",source:this.source,filter:["==","$type","LineString"],layout:{"line-join":"round","line-cap":"round"},paint:{"line-color":"rgba(0, 0, 0, 0.3)","line-width":1}}),this.map.addLayer({id:this.labelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-field":"{val}","text-rotation-alignment":"viewport","text-offset":[0,1],"text-size":10,"text-allow-overlap":!0},paint:{"text-opacity":.8}})}},handleClear(){var t,e,a,r,i,s;(t=this.map)!=null&&t.getLayer(this.layer)&&((e=this.map)==null||e.removeLayer(this.layer)),(a=this.map)!=null&&a.getLayer(this.labelLayer)&&((r=this.map)==null||r.removeLayer(this.labelLayer)),(i=this.map)!=null&&i.getSource(this.source)&&((s=this.map)==null||s.removeSource(this.source))}}},hi=(t=>(o.pushScopeId("data-v-51cc4052"),t=t(),o.popScopeId(),t))(()=>o.createElementVNode("span",null,", ",-1));function di(t,e,a,r,i,s){return i.lngLat?(o.openBlock(),o.createElementBlock("div",{key:0,class:"lat-lng-tip",style:o.normalizeStyle({right:i.right+"px",bottom:a.bottom})},[o.createElementVNode("span",null,o.toDisplayString(i.lngLat.lat.pretty),1),hi,o.createElementVNode("span",null,o.toDisplayString(i.lngLat.lng.pretty),1)],4)):o.createCommentVNode("",!0)}const Se=S(ci,[["render",di],["__scopeId","data-v-51cc4052"]]),pi={name:"IdmMeasure",props:{map:{type:Object},show:{type:Boolean}},data(){return{geojson:[],source:"measure-source",layer:"measure-layer",labelLayer:"measure-label-layer",tmpSource:"measure-tmp-source",tmpLayer:"measure-tmp-layer",tmpLabelLayer:"measure-tmp-label-layer",closeMarkers:{},pointMarkers:{},tipMarker:void 0,contextmenu:void 0,navigation:"RL"}},watch:{show:{handler(){this.handleBind()},immediate:!0},map:{handler(){this.map&&this.handleBind()}}},methods:{handleBind(){var t,e,a,r,i,s,l,n,c,h;if(this.show)(t=this.map)==null||t.getCanvas().addEventListener("keydown",this.handleKeydown),(e=this.map)==null||e.on("mousemove",this.handleMove),(a=this.map)==null||a.on("dblclick",this.handleDblClick),(r=this.map)==null||r.on("click",this.handleClick),(i=this.map)==null||i.on("contextmenu",this.handleContextmenu),this.map&&(this.map.getCanvas().style.cursor="crosshair");else{(s=this.map)==null||s.getCanvas().removeEventListener("keydown",this.handleKeydown),(l=this.map)==null||l.off("mousemove",this.handleMove),(n=this.map)==null||n.off("dblclick",this.handleDblClick),(c=this.map)==null||c.off("click",this.handleClick),(h=this.map)==null||h.off("contextmenu",this.handleContextmenu);for(const d of this.geojson)this.handleClear(d,!0);this.geojson=[],this.map&&(this.map.getCanvas().style.cursor="grab")}},handleKeydown(t){if(t.key==="Shift"){this.navigation=this.navigation==="RL"?"GC":"RL";const a=this.geojson.at(-1).features.filter(r=>r.geometry.type==="Point");a.length&&(a.at(-1).properties.mode=this.navigation)}},handleDrag(t){var a,r,i,s,l,n,c,h,d,p;const e=(r=(a=t.target)==null?void 0:a._element)==null?void 0:r.id;if((e==null?void 0:e.split("-").length)===2){const u=this.geojson.filter(y=>y.id===e.split("-")[0])[0];this.pointMarkers[u.id].filter(y=>{var _;return((_=y._element)==null?void 0:_.id)===e})[0].setLngLat([(s=(i=t.target)==null?void 0:i._lngLat)==null?void 0:s.lng,(n=(l=t.target)==null?void 0:l._lngLat)==null?void 0:n.lat]);let g;u.features.forEach((y,_)=>{if(y.geometry.type==="Point"&&y.properties.id==e.split("-")[1]){g=_;return}});const f=u.features.filter(y=>y.geometry.type==="Point");this.handleTmpPointUpdate(u,f[g-1],{lng:(h=(c=t.target)==null?void 0:c._lngLat)==null?void 0:h.lng,lat:(p=(d=t.target)==null?void 0:d._lngLat)==null?void 0:p.lat,properties:f[g].properties},g===f.length-1?void 0:f[g+1])}},handleDragEnd(t){var a,r,i,s,l,n,c,h,d,p;const e=(r=(a=t.target)==null?void 0:a._element)==null?void 0:r.id;if((e==null?void 0:e.split("-").length)===2){const u=this.geojson.filter(f=>f.id===e.split("-")[0])[0];this.pointMarkers[u.id].filter(f=>{var y;return((y=f._element)==null?void 0:y.id)===e})[0].setLngLat([(s=(i=t.target)==null?void 0:i._lngLat)==null?void 0:s.lng,(n=(l=t.target)==null?void 0:l._lngLat)==null?void 0:n.lat]);const g=u.features.filter(f=>f.geometry.type==="Point"&&f.properties.id==e.split("-")[1])[0];g.geometry.coordinates=[(h=(c=t.target)==null?void 0:c._lngLat)==null?void 0:h.lng,(p=(d=t.target)==null?void 0:d._lngLat)==null?void 0:p.lat],u.features=u.features.filter(f=>f.geometry.type==="Point"),this.handlePointUpdate(u)}},handleContextmenu(t){var a,r,i,s;t.preventDefault(),(a=this.contextmenu)==null||a.remove();const e=(s=(i=(r=t.originalEvent)==null?void 0:r.target)==null?void 0:i.parentElement)==null?void 0:s.id;if((e==null?void 0:e.split("-").length)===2){const n=this.geojson.filter(c=>c.id===e.split("-")[0])[0].features.filter(c=>c.geometry.type==="Point");if(n.length>2&&n.filter(h=>h.properties.id===(e==null?void 0:e.split("-")[1]))[0]){const h=document.createElement("div");h.className="point-contextmenu-marker",h.innerHTML=`<span id="del-${e}" class="del-point">Del</span>`,this.contextmenu=new G.Marker(h).setOffset([24,0]).setLngLat([t.lngLat.lng,t.lngLat.lat]).addTo(this.map)}}},handleClick(t){var a,r,i,s,l;(a=this.contextmenu)==null||a.remove();const e=t.originalEvent.target.className;if(e==="marker-close"){const n=(i=(r=t.originalEvent)==null?void 0:r.srcElement)==null?void 0:i.id,c=this.geojson.filter(h=>h.id===n)[0];c&&this.handleClear(c,!0),this.geojson=this.geojson.filter(h=>h.id!==n)}else if(e==="del-point"){const n=(l=(s=t.originalEvent.target.id)==null?void 0:s.replace("del-",""))==null?void 0:l.split("-"),c=this.geojson.filter(h=>h.id===n[0])[0];c.features=c.features.filter(h=>h.geometry.type==="Point"&&h.properties.id!==n[1]),this.handlePointUpdate(c)}else if(e!=="marker-label"){let n=this.geojson.at(-1);n||(n=x.featureCollection([],{id:new Date().getTime().toString()}),this.geojson.push(n)),n.features=n.features.filter(h=>h.geometry.type==="Point");const c=x.feature({type:"Point",coordinates:[t.lngLat.lng,t.lngLat.lat]},{id:new Date().getTime().toString(),mode:this.navigation});n.features.push(c),this.handlePointUpdate(n)}},handlePointUpdate(t){const e=t.features;if(e.length>1){let a=0;const r=[];for(let i=1;i<e.length;i++){const s=e[i-1],l=e[i],n=s.properties,c={lng:s.geometry.coordinates[0],lat:s.geometry.coordinates[1]},h={lng:l.geometry.coordinates[0],lat:l.geometry.coordinates[1]},d=v.calculateDistance(c,h,n.mode==="RL",2),p=v.calculateBearing(c,h,n.mode==="RL",2);a=v.LngLatHelper.roundPrecision(a+d,2);let u;n.mode==="RL"?u=v.convertToMonotonicLng([c,h]):u=v.convertToMonotonicLng(v.interpolateCoordinates(c,h,200));const m=x.lineString(u.map(g=>[g.lng,g.lat]));m.properties.dist=d,m.properties.bearing=p,m.properties.total=a,r.push(m)}e.push(...r),t.total=a}return this.handleRender(t),t},handleTmpPointUpdate(t,e,a,r){const i=x.featureCollection([]);let s,l;if(e){const c=e.properties,h={lng:e.geometry.coordinates[0],lat:e.geometry.coordinates[1]},d={lng:a.lng,lat:a.lat};s=v.calculateDistance(h,d,c.mode==="RL",2),l=v.calculateBearing(h,d,c.mode==="RL",2);let p;c.mode==="RL"?p=v.convertToMonotonicLng([h,d]):p=v.convertToMonotonicLng(v.interpolateCoordinates(h,d,200));const u=x.lineString(p.map(m=>[m.lng,m.lat]));u.properties.dist=s,u.properties.bearing=l,i.features.push(u)}if(r){const c=a.properties,h=a,d={lng:r.geometry.coordinates[0],lat:r.geometry.coordinates[1]};s=v.calculateDistance(h,d,c.mode==="RL",2),l=v.calculateBearing(h,d,c.mode==="RL",2);let p;c.mode==="RL"?p=v.convertToMonotonicLng([h,d]):p=v.convertToMonotonicLng(v.interpolateCoordinates(h,d,200));const u=x.lineString(p.map(m=>[m.lng,m.lat]));u.properties.dist=s,u.properties.bearing=l,i.features.push(u)}this.map.getSource(this.tmpSource)?this.map.getSource(this.tmpSource).setData(i):this.map.addSource(this.tmpSource,{type:"geojson",data:i}),this.map.getLayer(this.tmpLayer)||this.map.addLayer({id:this.tmpLayer,type:"line",source:this.tmpSource,filter:["==","$type","LineString"],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#f56c6c","line-width":2,"line-opacity":.85,"line-dasharray":[3,2]}}),this.map.getLayer(this.tmpLabelLayer)||this.map.addLayer({id:this.tmpLabelLayer,type:"symbol",source:this.tmpSource,filter:["==","$type","LineString"],layout:{"symbol-placement":"line-center","text-field":"{dist} nm","text-rotation-alignment":"map","text-size":12},paint:{"text-opacity":1,"text-color":"#fff","text-halo-color":"#f56c6c","text-halo-width":4,"text-halo-blur":0}});let n;if(r?n='<div class="marker-label">Drag and drop</div>':n=`<div class="marker-label">Tol distance: <b>${v.LngLatHelper.roundPrecision((t.total??0)+s,2)}</b>nm, bearing: <b>${l}</b>°</div><div class="marker-label">${this.navigation==="RL"?"RL":"GC"} mode, using 'Shift' to switch</div><div class="marker-label">Double click to end</div>`,this.tipMarker)this.tipMarker._element.innerHTML=n,this.tipMarker.setLngLat([a.lng,a.lat]);else{const c=document.createElement("div");c.className="tip-marker",c.innerHTML=n,this.tipMarker=new G.Marker(c).setOffset([140,0]).setLngLat([a.lng,a.lat]).addTo(this.map)}},handleMove(t){this.map.getCanvas().style.cursor="crosshair";let e=this.geojson.at(-1);e||(e=x.featureCollection([],{id:new Date().getTime().toString()}),this.geojson.push(e));const a=e.features.filter(r=>r.geometry.type==="Point");a!=null&&a.length&&this.handleTmpPointUpdate(e,a.at(-1),{lng:t.lngLat.lng,lat:t.lngLat.lat})},handleDblClick(t){t.preventDefault();let e=this.geojson.at(-1);e.closed=!0,this.handleRender(e),e=x.featureCollection([],{id:new Date().getTime().toString()}),this.geojson.push(e)},handleRender(t){var e;if((e=t==null?void 0:t.features)!=null&&e.length){const a=`${t.id}-${this.source}`,r=`${t.id}-${this.layer}`,i=`${t.id}-${this.labelLayer}`;this.map.getSource(a)?this.map.getSource(a).setData(t):this.map.addSource(a,{type:"geojson",data:t}),this.handleClear(t,!1),this.map.addLayer({id:r,type:"line",source:a,filter:["==","$type","LineString"],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#f56c6c","line-width":2}}),this.map.addLayer({id:i,type:"symbol",source:a,filter:["==","$type","LineString"],layout:{"symbol-placement":"line-center","text-field":"{dist}nm,{bearing}°","text-rotation-alignment":"map","text-size":12},paint:{"text-opacity":1,"text-color":"#fff","text-halo-color":"#f56c6c","text-halo-width":4,"text-halo-blur":0}});const s=t.features.filter(l=>l.geometry.type==="Point");for(const l of s){const n=document.createElement("div");n.id=`${t.id}-${l.properties.id}`,n.className=`${t.closed?"point-marker closed":"point-marker"}`,n.innerHTML='<div class="marker-circle"></div>';const c=new G.Marker({element:n,draggable:!0,contextmenu:!0}).setLngLat(l.geometry.coordinates).addTo(this.map);c.on("drag",this.handleDrag),c.on("dragend",this.handleDragEnd),this.pointMarkers[t.id]?this.pointMarkers[t.id].push(c):this.pointMarkers[t.id]=[c]}if(t.closed){const l=s.at(-1),c=t.features.filter(d=>d.geometry.type==="LineString").at(-1),h=document.createElement("div");h.className="point-summary-marker",h.innerHTML=`<div id="${t.id}" class="marker-close">×</div><div class="marker-label">Tol: ${c.properties.total}nm</div>`,this.closeMarkers[t.id]=new G.Marker(h).setOffset([60,0]).setLngLat(l.geometry.coordinates).addTo(this.map)}}},handleClear(t,e=!0){var s,l,n,c,h,d,p,u,m;const a=`${t.id}-${this.source}`,r=`${t.id}-${this.layer}`,i=`${t.id}-${this.labelLayer}`;(s=this.map)!=null&&s.getLayer(r)&&this.map.removeLayer(r),(l=this.map)!=null&&l.getLayer(i)&&this.map.removeLayer(i),(n=this.map)!=null&&n.getLayer(this.tmpLayer)&&this.map.removeLayer(this.tmpLayer),(c=this.map)!=null&&c.getLayer(this.tmpLabelLayer)&&this.map.removeLayer(this.tmpLabelLayer),(h=this.closeMarkers[t.id])==null||h.remove(),this.closeMarkers[t.id]=void 0,(d=this.pointMarkers[t.id])==null||d.forEach(g=>{g==null||g.remove()}),this.pointMarkers[t.id]=[],(p=this.tipMarker)==null||p.remove(),this.tipMarker=void 0,e&&((u=this.map)!=null&&u.getSource(a))&&this.map.removeSource(a),e&&((m=this.map)!=null&&m.getSource(this.tmpSource))&&this.map.removeSource(this.tmpSource)}}};function mi(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const yi=S(pi,[["render",mi]]),Zr="",fi={name:"IdmENC",props:{map:{type:Object},enabled:{type:Boolean},beforeLayer:{type:String,default:"grayland"},bottom:{type:String,default:"260px"},token:{type:String,default:""},toggleVersion:{type:Number},permission:{type:Number}},emits:["enc"],data(){return{helper:v.CompanyHelper,vendor:this.$attrs.permission&v.CompanyHelper.LEVEL.Supper?"hi":"i4",right:10}},watch:{vendor:{handler(){this.$emit("enc",this.vendor)},immediate:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{}},Pe=t=>(o.pushScopeId("data-v-ab627b83"),t=t(),o.popScopeId(),t),ui={key:0},gi={class:"bar-item"},bi=[Pe(()=>o.createElementVNode("span",{class:"iconfont"},"HI",-1))],_i=[Pe(()=>o.createElementVNode("span",{class:"iconfont"},"I4",-1))];function Li(t,e,a,r,i,s){return a.enabled&&a.permission&i.helper.LEVEL.Supper?(o.openBlock(),o.createElementBlock("div",ui,[o.createElementVNode("div",{class:"menu-bar-box",style:o.normalizeStyle({position:"absolute",right:i.right+"px",bottom:a.bottom})},[o.createElementVNode("div",gi,[o.createElementVNode("div",{class:o.normalizeClass(i.vendor==="hi"?"menu-icon active":"menu-icon"),onClick:e[0]||(e[0]=l=>i.vendor="hi")},bi,2),o.createElementVNode("div",{class:o.normalizeClass(i.vendor==="i4"?"menu-icon active":"menu-icon"),onClick:e[1]||(e[1]=l=>i.vendor="i4")},_i,2)])],4)])):o.createCommentVNode("",!0)}const wi=S(fi,[["render",Li],["__scopeId","data-v-ab627b83"]]),qr="",vi={name:"IdmGLV2",components:{IdmGlLayer:yt,IdmWindBarb:vt,IdmWindParticle:Et,IdmCurrents:Rt,IdmCurrentParticle:Wt,IdmSigWave:Ft,IdmSwell:Gt,IdmPrmsl:Xt,IdmIceberg:Qt,IdmTropicals:Ce,IdmPrecip3h:Ca,IdmVisibility:Pa,IdmWaterTemp:Va,IdmTemp:Ma,IdmArctic:Ua,IdmWarZone:xo,IdmGmdssArea:ko,IdmEcaZone:Po,IdmAlertZone:Vo,IdmPort:Zo,IdmLoadLine:qo,IdmTimezone:Ko,IdmVRA:ai,IdmSpecialArea:ri,IdmTerminator:li,IdmLatLng:Se,IdmMeasure:yi,IdmPoint:Lo,IdmENC:wi},props:{map:{type:Object,default:void 0},token:{type:String},ts:{type:String},beforeLayer:{type:String,default:""}},data(){return{weatherLayers:{},activeWeatherLayers:[],weatherWeight:0,otherLayers:{},otherWeight:0,showCoord:!1,showMeasure:!1,showPoint:!1,show3d:!1,meteo:void 0,source:"",gateway:"https://cbe.idmwx.com",mapProjection:"mercator",zoom:6,viewport:void 0,particleFactor:void 0,showRampColor:!1,activeWindLayer:!1,showWindParticle:!1,showCurrentParticle:!1,toggleVersion:0,enc:"",defaultMeteoToken:"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNseTVudHJzYzAwNWUwbHBsZHkyaDRqczMiLCJyb2xlIjoxLCJuYW1lIjoiZmFrZUBvcm13eC5jb20iLCJwbGF0SWQiOiJnZDBtdDFkIiwiY29tcGFueSI6eyJpZCI6bnVsbCwiY2hpbGRyZW4iOltdfSwiaWF0IjoxNzIzMDI0MDI0LCJleHAiOjM5MzA1NDQwMjR9.RrKcdcMnq-FxBLJQ-i6lx2FscDE46y8EvHIemPW4HTg",helper:new ze}},watch:{ts:{handler(t,e){t&&e&&O(t).utc().format("yyyy-MM-DD HH")!==O(e).utc().format("yyyy-MM-DD HH")&&this.$nextTick(()=>{this.handleDateChange({tropicals:!1})})},immediate:!0},map:{handler(){this.map&&(this.map.on("zoomend",this.handleDragEndWithZoom4Json),this.map.on("dragend",this.handleDragEndWithZoom4Json),this.map.on("move",this.handleDragEndWithZoom4Image),this.viewport=new we(this.map),this.handleRampColorInitial())},immediate:!0},enc:{handler(t,e){var a,r,i,s,l,n,c,h;t?((r=(a=this.map)==null?void 0:a.getLayer(t))==null||r.setLayoutProperty("visibility","visible"),(s=(i=this.map)==null?void 0:i.getLayer(e))==null||s.setLayoutProperty("visibility","none")):((n=(l=this.map)==null?void 0:l.getLayer("i4"))==null||n.setLayoutProperty("visibility","none"),(h=(c=this.map)==null?void 0:c.getLayer("hi"))==null||h.setLayoutProperty("visibility","none"))}},activeWeatherLayers:{handler(){var t,e,a,r,i,s,l,n,c,h,d,p,u,m,g,f,y,_;if(!this.map)return!1;this.activeWeatherLayers.length>0?(console.log(3333,this.activeWeatherLayers.length),(e=(t=this.map)==null?void 0:t.getLayer(this.enc))==null||e.setLayoutProperty("visibility","none"),(r=(a=this.map)==null?void 0:a.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))==null||r.setLayoutProperty("visibility","visible"),(s=this.map)!=null&&s.getLayer((i=this.viewport)==null?void 0:i.rampColorLayer)&&((l=this.map)!=null&&l.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&this.mapProjection==="mercator"&&((c=this.map)==null||c.moveLayer((n=this.viewport)==null?void 0:n.rampColorLayer,this.helper.mapboxCustomer.layers.countryBoundary.id)),(d=this.map)!=null&&d.getLayer((h=this.viewport)==null?void 0:h.particleLayer)&&((p=this.map)!=null&&p.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&this.mapProjection==="mercator"&&((m=this.map)==null||m.moveLayer((u=this.viewport)==null?void 0:u.particleLayer,this.helper.mapboxCustomer.layers.countryBoundary.id))):(console.log(444,this.activeWeatherLayers.length),(f=(g=this.map)==null?void 0:g.getLayer(this.enc))==null||f.setLayoutProperty("visibility","visible"),(_=(y=this.map)==null?void 0:y.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))==null||_.setLayoutProperty("visibility","none"))},immediate:!0}},methods:{async fetchWeatherLayers(t={tropicals:!1}){var i,s,l,n,c,h,d,p;const e=new Date().valueOf();let a=0,r=0;if(this.map){const u=((i=this.map)==null?void 0:i.getZoom())+1,m=(s=this.map)==null?void 0:s.getBounds(),g=`${m._sw.lng},${m._sw.lat},${m._ne.lng},${m._ne.lat}`;if(this.handleRampColorState(),this.particleFactor){const f=v.LayerHelper.WEATHER_LAYERS.find(y=>{var _;return((_=y.peer)==null?void 0:_.weight)===this.particleFactor.weight});this.particleFactor.particle?this.weatherWeight=this.weatherWeight&f.weight?this.weatherWeight:this.weatherWeight+f.weight:this.weatherWeight=this.weatherWeight&f.weight?this.weatherWeight-f.weight:this.weatherWeight}if(this.weatherWeight>0){let f=this.weatherWeight,y;if(t.tropicals||this.weatherWeight&256&&(y=this.weatherLayers.tropicals,y&&(f-=256,y.version=Math.random()+1)),f>0){const _=await Z.get(`${this.gateway}/api/arc/weather/layers/links?l=${f}&v=${this.source}&z=${u}&bbox=${g}&t=${this.ts}`,{headers:{Authorization:this.token||this.defaultMeteoToken}});if(r=new Date().valueOf()-(e+a),console.log("weather links elapsed: ",r,", total: ",a+=r),((l=_==null?void 0:_.data)==null?void 0:l.code)===0){const b=(n=_==null?void 0:_.data)==null?void 0:n.data,w=[];for(const L in b)L==="ice-edge"&&(b[L]="https://idm-hz.oss-cn-hangzhou.aliyuncs.com/test/sea_ice_contours.geojson"),L!=="tropicals"&&w.push(Z.get(b[L],{headers:{Authorization:this.token||this.defaultMeteoToken,key:L},responseType:/\.(jpg|png)$/.test(b[L])?"blob":"json"}).catch(P=>{console.log(`[${L}] fetch layer error: ${P}`)}));const C=await Promise.all(w);this.weatherLayers={},C.map(L=>{var I,V,R,A;const P=((I=L==null?void 0:L.data)==null?void 0:I.data)||(L==null?void 0:L.data),N=(R=(V=L==null?void 0:L.config)==null?void 0:V.headers)==null?void 0:R.key;N&&P&&(this.weatherLayers[N]={raw:P,type:((A=L==null?void 0:L.config)==null?void 0:A.responseType)==="blob"?"image":"json",etime:this.ts})}),b.tropicals&&Z.get(b.tropicals,{headers:{Authorization:this.token||this.defaultMeteoToken,key:"tropicals"}}).then(L=>{var I,V,R;const P=Ee.TropicalHelper.convert2Geojson(((I=L==null?void 0:L.data)==null?void 0:I.data)||(L==null?void 0:L.data)),N=(R=(V=L==null?void 0:L.config)==null?void 0:V.headers)==null?void 0:R.key;this.weatherLayers[N]={data:P,active:!0,cached:!1,type:"json",etime:this.ts,version:Math.random()+1}})}if(r=new Date().valueOf()-(e+a),console.log("weather layers elapsed: ",r,", total: ",a+=r),this.weatherLayers["swell-direction"]||this.weatherLayers["swell-height"]){const b=(c=this.weatherLayers["swell-direction"])==null?void 0:c.raw,w=(h=this.weatherLayers["swell-height"])==null?void 0:h.raw;delete this.weatherLayers["swell-direction"],delete this.weatherLayers["swell-height"],this.weatherLayers.swell={type:"json",direction:b,height:{raw:w},etime:this.ts}}if(this.weatherLayers["current-direction"]||this.weatherLayers["current-speed"]){const b=(d=this.weatherLayers["current-direction"])==null?void 0:d.raw,w=(p=this.weatherLayers["current-speed"])==null?void 0:p.raw;delete this.weatherLayers["current-direction"],delete this.weatherLayers["current-speed"],this.weatherLayers.current={type:"json",direction:b,speed:{raw:w},etime:this.ts}}}y&&(y.etime=this.ts,y.cached=!0,this.weatherLayers.tropicals=y)}this.handleWeatherLayerToggle(),this.handleDragEndWithZoom4Json()}this.toggleVersion=Math.random()},async fetchOtherLayers(t={all:!1,dayNight:!1,enc:!1}){var e,a,r,i;if(this.map){let s=this.otherWeight;if(s){let l=!1;if(this.otherWeight&2048&&(s=this.otherWeight-2048,l=!0),s){if(t.all){const n=await Z.get(`${this.gateway}/api/arc/other/layers/links?l=${s}&t=${this.ts}`,{headers:{Authorization:this.token||this.defaultMeteoToken}});if(((e=n==null?void 0:n.data)==null?void 0:e.code)===0){const c=(a=n==null?void 0:n.data)==null?void 0:a.data,h=[];for(const p in c)h.push(Z.get(c[p],{headers:{Authorization:this.token||this.defaultMeteoToken,key:p}}));const d=await Promise.all(h);this.otherLayers={enc:l},d.map(p=>{var g,f,y;const u=((g=p==null?void 0:p.data)==null?void 0:g.data)||(p==null?void 0:p.data),m=(y=(f=p==null?void 0:p.config)==null?void 0:f.headers)==null?void 0:y.key;this.otherLayers[m]=u})}}else if(t.dayNight&&s&1024){const n=await Z.get(`${this.gateway}/api/arc/other/layers/links?l=1024&t=${this.ts}`,{headers:{Authorization:this.token||this.defaultMeteoToken}});if(((r=n==null?void 0:n.data)==null?void 0:r.code)===0){const c=(i=n==null?void 0:n.data)==null?void 0:i.data,h=[];for(const p in c)h.push(Z.get(c[p],{headers:{Authorization:this.token||this.defaultMeteoToken,key:p}}));(await Promise.all(h)).map(p=>{var g,f,y;const u=((g=p==null?void 0:p.data)==null?void 0:g.data)||(p==null?void 0:p.data),m=(y=(f=p==null?void 0:p.config)==null?void 0:f.headers)==null?void 0:y.key;this.otherLayers[m]=u})}}}else this.otherLayers={enc:l}}else this.otherLayers={};this.handleBeforeLayerToggle()}},handleRampColorState(){var t;if(this.showRampColor=!1,this.showWindParticle=!1,this.showCurrentParticle=!1,(t=this.particleFactor)!=null&&t.particle)this.showRampColor=!0,this.showWindParticle=this.particleFactor.key==="wind",this.showCurrentParticle=this.particleFactor.key==="current",this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json");else for(const e of this.activeWeatherLayers)["png","jpg"].includes(e.type)&&(this.showRampColor=!0);this.activeWindLayer=!!this.activeWeatherLayers.find(e=>e.key==="wind"),this.$refs.layer&&(this.$refs.layer.activeWeatherLayers=this.activeWeatherLayers)},handleRampColorInitial(){var t,e,a,r,i,s,l,n,c,h,d,p;this.viewport.map.getSource((t=this.viewport)==null?void 0:t.rampColorSource)||this.viewport.map.addSource((e=this.viewport)==null?void 0:e.rampColorSource,{type:"canvas",canvas:(a=this.viewport)==null?void 0:a.rampColorCanvas,animate:!0,coordinates:this.viewport.getBoundLngLat()}),this.viewport.map.getLayer((r=this.viewport)==null?void 0:r.rampColorLayer)||this.viewport.map.addLayer({type:"raster",id:(i=this.viewport)==null?void 0:i.rampColorLayer,source:(s=this.viewport)==null?void 0:s.rampColorSource,layout:{visibility:"none"}},this.beforeLayer),this.viewport.map.getSource((l=this.viewport)==null?void 0:l.particleSource)||this.viewport.map.addSource((n=this.viewport)==null?void 0:n.particleSource,{type:"canvas",canvas:(c=this.viewport)==null?void 0:c.particleCanvas,animate:!0,coordinates:this.viewport.getBoundLngLat()}),this.viewport.map.getLayer((h=this.viewport)==null?void 0:h.particleLayer)||this.viewport.map.addLayer({type:"raster",id:(d=this.viewport)==null?void 0:d.particleLayer,source:(p=this.viewport)==null?void 0:p.particleSource,layout:{visibility:"none"}},this.beforeLayer)},handleDragEndWithZoom4Json(){var h,d,p,u;const t=new Date().valueOf();let e=0,a=0;const r=(h=this.map)==null?void 0:h.getBounds(),i=this.map.getZoom(),s=v.convertToStandardLng(r._sw.lng),l=v.convertToStandardLng(r._ne.lng),n=Math.floor(r._sw.lat),c=Math.ceil(r._ne.lat);for(const m in this.weatherLayers)if(this.weatherLayers[m].active&&this.weatherLayers[m].type==="json"){this.weatherLayers[m].active=!1,this.weatherLayers[m].version=Math.random()+1;let g=[];if(["swell","current"].includes(m)){const f=((d=this.weatherLayers[m])==null?void 0:d.direction)||{};for(const y in f)if(y>n&&y<c&&(!(i<=this.zoom)||y%(i<this.zoom/2?5:3)===0)){const _=f[y].lng;s>l?_.forEach((b,w)=>{var C;if((b>=s&&b<=180||b>=-180&&b<=l)&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const L=x.point([b,y],{val:f[y].val[w],spd:(C=f[y].spd)==null?void 0:C[w]});g.push(L)}}):_.forEach((b,w)=>{var C;if(b>=s&&b<=l&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const L=x.point([b,y],{val:f[y].val[w],spd:(C=f[y].spd)==null?void 0:C[w]});g.push(L)}})}if(a=new Date().valueOf()-(t+e),console.log("direction elapsed: ",a,", total: ",e+=a),m==="swell"){const y=this.weatherLayers[m].height;if(y){if(!y.data){const _=[];for(const b in(p=y.raw)==null?void 0:p.LineString){const w=y.raw.LineString[b];for(const C of w)_.push(x.lineString(C,{val:Number(b)}));y.data=x.featureCollection(_)}}if(y.data){const _=this.handleBboxClip(y.data,r);g=g.concat(_)}a=new Date().valueOf()-(t+e),console.log("height elapsed: ",a,", total: ",e+=a)}}if(m==="current"){const y=this.weatherLayers[m].speed;if(y){if(!y.data){const b=[];for(const w in(u=y.raw)==null?void 0:u.Polygon){const C=y.raw.Polygon[w];for(const L of C)b.push(x.polygon(L,{val:Number(w)}))}y.data=x.featureCollection(b)}const _=i<this.zoom?y.data.features.filter(b=>b.properties.val>.5):y.data.features;g=g.concat(_),a=new Date().valueOf()-(t+e),console.log("speed elapsed: ",a,", total: ",e+=a)}}}else if(m==="wind"){const f=this.weatherLayers.wind.raw;for(const y in f)if(y>n&&y<c&&(!(i<=this.zoom)||y%(i<this.zoom/2?5:3)===0)){const _=f[y].lng;s>l?_.forEach((b,w)=>{if((b>=s&&b<=180||b>=-180&&b<=l)&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const C=x.point([b,y],{val:f[y].val[w],spd:f[y].spd[w]});g.push(C)}}):_.forEach((b,w)=>{if(b>=s&&b<=l&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const C=x.point([b,y],{val:f[y].val[w],spd:f[y].spd[w]});g.push(C)}})}a=new Date().valueOf()-(t+e),console.log("wind barb elapsed: ",a,", total: ",e+=a)}else if(m==="sig-wave-height"){if(this.weatherLayers[m].data)g=this.weatherLayers[m].data;else{const f=this.weatherLayers[m].raw;if(f){const y=[];for(const _ in f.Polygon){const b=f.Polygon[_];for(const w of b)y.push(x.polygon(w,{val:Number(_)}))}g=g.concat(y)}}a=new Date().valueOf()-(t+e),console.log("sigWave elapsed: ",a,", total: ",e+=a)}else if(m==="prmsl"){if(this.weatherLayers[m].data)g=this.weatherLayers[m].data;else{const f=this.weatherLayers[m].raw;if(f){const y=[];for(const _ in f.LineString){const b=f.LineString[_];for(const w of b)y.push(x.lineString(w,{val:Number(_)}))}for(const _ in f.Point)f.Point[_].lng.forEach((b,w)=>{b=v.convertToStandardLng(b),y.push(x.point([b,_],{val:f.Point[_].val[w],type:f.Point[_].type[w]}))});g=g.concat(y)}}a=new Date().valueOf()-(t+e),console.log("prmsl elapsed: ",a,", total: ",e+=a)}else if(m==="arctic"||m==="iceberg"){if(this.weatherLayers[m].data)g=this.weatherLayers[m].data;else{const f=this.weatherLayers[m].raw;if(f){const y=[];for(const _ in f.LineString){const b=f.LineString[_];for(const w of b)y.push(x.lineString(w,{val:Number(_)}))}g=g.concat(y)}}a=new Date().valueOf()-(t+e)}console.log(m," elapsed: ",a,", total: ",e+=a),g.length&&(this.weatherLayers[m].data=x.featureCollection(g)),this.weatherLayers[m].active=!0,this.weatherLayers[m].version=Math.random()+1}},handleDragEndWithZoom4Image(){for(const t in this.weatherLayers)this.weatherLayers[t].active&&this.weatherLayers[t].type==="image"&&(this.weatherLayers[t].active=!0,this.weatherLayers[t].version=Math.random()+1)},handleBboxClip(t,e){const a=[],r=v.convertToStandardLng(e._sw.lng),i=v.convertToStandardLng(e._ne.lng);return t.features.forEach(s=>{if(s.geometry.type!=="Point")if(r>i){let l=[r,e._sw.lat,180,e._ne.lat],n=x.bboxClip(s,l);n.geometry.coordinates.length&&a.push(n),l=[-180,e._sw.lat,i,e._ne.lat],n=x.bboxClip(s,l),n.geometry.coordinates.length&&a.push(n)}else{const l=[r,e._sw.lat,i,e._ne.lat],n=x.bboxClip(s,l);n.geometry.coordinates.length&&a.push(n)}else a.push(s)}),a},handleWeatherLayerToggle(){var t;for(const e in this.weatherLayers)this.weatherLayers[e].active=!1,this.weatherLayers[e].version=Math.random()+1;for(const e of this.activeWeatherLayers){let a=e.key;a.indexOf("swell")>-1?a="swell":a.indexOf("current")>-1&&(a="current"),this.weatherLayers[a]&&(this.weatherLayers[a].active=!0,this.weatherLayers[a].version=Math.random()+1,((t=this.particleFactor)==null?void 0:t.key)===a&&this.weatherLayers[`${a}-particle`]&&(this.weatherLayers[`${a}-particle`].active=this.particleFactor.particle))}this.handleBeforeLayerToggle()},handleBeforeLayerToggle(){var t,e,a,r,i,s,l,n,c,h,d,p,u;(t=this.map)!=null&&t.getLayer(this.beforeLayer)&&((e=this.activeWeatherLayers)!=null&&e.length||(a=this.otherLayers)!=null&&a["war-zones"]||(r=this.otherLayers)!=null&&r["gmdss-areas"]||(i=this.otherLayers)!=null&&i["load-lines"]||(s=this.otherLayers)!=null&&s["high-risk-area"]||(l=this.otherLayers)!=null&&l["time-zones"]||(n=this.otherLayers)!=null&&n.pirates||(c=this.otherLayers)!=null&&c.ports||(h=this.otherLayers)!=null&&h.enc||(d=this.otherLayers)!=null&&d["voluntary-reporting-area"]||(p=this.otherLayers)!=null&&p["eca-zones"]||(u=this.otherLayers)!=null&&u["special-area"])&&this.map.setLayoutProperty(this.beforeLayer,"visibility","visible")},handleDateChange(t={tropicals:!1}){this.fetchWeatherLayers(t),this.fetchOtherLayers({dayNight:!0})},handleWeatherLayerChange(t,e,a){if(!this.map)setTimeout(()=>{this.handleWeatherLayerChange(t,e,a)},500);else{this.activeWeatherLayers=e;const r=this.activeWeatherLayers.some(l=>["wind","current"].includes(l.key)),i=this.activeWeatherLayers.some(l=>["png","jpg"].includes(l.type));r&&!i?(this.particleFactor=this.activeWeatherLayers.find(l=>["wind","current"].includes(l.key)),this.particleFactor.particle=!0):i&&this.particleFactor&&(this.particleFactor.particle=!1);const s=e==null?void 0:e.reduce((l,n)=>l+(l&(n==null?void 0:n.weight)?0:n==null?void 0:n.weight),0);this.weatherWeight!==s||this.source!==a?(this.source=a,this.weatherWeight=s,this.fetchWeatherLayers({tropicals:!1})):this.handleWeatherLayerToggle()}},handleOtherLayerChange(t){if(!this.map)setTimeout(()=>{this.handleOtherLayerChange(t)},500);else{const e=t==null?void 0:t.reduce((a,r)=>a+(r==null?void 0:r.weight),0);t.find(a=>a.key==="enc")?this.enc="i4":this.enc="",this.otherWeight!=e&&(this.otherWeight=e,this.fetchOtherLayers({all:!0}))}},async handlePointChange(t){const e=this.ts?O(this.ts):O(),a={lat:t.lat,lng:t.lng,ts:e.utc().format(),wt:!0,src:this.source},r=await Z.get(`${this.gateway}/api/arc/meteo/query`,{params:a,headers:{Authorization:this.token||this.defaultMeteoToken}});(r==null?void 0:r.status)===200&&(this.meteo={...r==null?void 0:r.data,...t})},handle3dToggle(t){var e,a,r,i,s,l,n,c,h,d,p,u,m,g,f,y,_,b,w,C;t?(this.map.setProjection("globe"),this.mapProjection="globe",(a=this.map)!=null&&a.getLayer((e=this.viewport)==null?void 0:e.rampColorLayer)&&((r=this.map)!=null&&r.getLayer(this.helper.mapboxCustomer.layers.water.id))&&((s=this.map)==null||s.moveLayer((i=this.viewport)==null?void 0:i.rampColorLayer,this.helper.mapboxCustomer.layers.water.id)),(n=this.map)!=null&&n.getLayer((l=this.viewport)==null?void 0:l.particleLayer)&&((c=this.map)!=null&&c.getLayer(this.helper.mapboxCustomer.layers.water.id))&&((d=this.map)==null||d.moveLayer((h=this.viewport)==null?void 0:h.particleLayer,this.helper.mapboxCustomer.layers.water.id)),this.map.off("zoomend",this.handleDragEndWithZoom4Json),this.map.off("dragend",this.handleDragEndWithZoom4Json),this.map.off("move",this.handleDragEndWithZoom4Image)):(this.map.setProjection("mercator"),this.mapProjection="mercator",this.map.on("zoomend",this.handleDragEndWithZoom4Json),this.map.on("dragend",this.handleDragEndWithZoom4Json),this.map.on("move",this.handleDragEndWithZoom4Image),this.handleDragEndWithZoom4Image(),this.handleDragEndWithZoom4Json(),(u=this.map)!=null&&u.getLayer((p=this.viewport)==null?void 0:p.rampColorLayer)&&((m=this.map)!=null&&m.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&((f=this.map)==null||f.moveLayer((g=this.viewport)==null?void 0:g.rampColorLayer,this.helper.mapboxCustomer.layers.countryBoundary.id)),(_=this.map)!=null&&_.getLayer((y=this.viewport)==null?void 0:y.particleLayer)&&((b=this.map)!=null&&b.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&((C=this.map)==null||C.moveLayer((w=this.viewport)==null?void 0:w.particleLayer,this.helper.mapboxCustomer.layers.countryBoundary.id)))},handleParticle(t){this.particleFactor=t,this.fetchWeatherLayers({tropicals:!1})}}},xi={key:0,className:"map-gl-home"};function Ci(t,e,a,r,i,s){var j,le,F,E,$,ce,U,he,Q,K,ee,ye,fe,ue,ge,be,_e,Le,ke,Te,Ie,De,Ve,Re,$e,Be;const l=o.resolveComponent("IdmGlLayer"),n=o.resolveComponent("IdmENC"),c=o.resolveComponent("IdmSigWave"),h=o.resolveComponent("IdmSwell"),d=o.resolveComponent("IdmPrmsl"),p=o.resolveComponent("IdmIceberg"),u=o.resolveComponent("IdmTropicals"),m=o.resolveComponent("IdmCurrents"),g=o.resolveComponent("IdmCurrentParticle"),f=o.resolveComponent("IdmWindBarb"),y=o.resolveComponent("IdmWindParticle"),_=o.resolveComponent("IdmPrecip3h"),b=o.resolveComponent("IdmVisibility"),w=o.resolveComponent("IdmWaterTemp"),C=o.resolveComponent("IdmTemp"),L=o.resolveComponent("IdmArctic"),P=o.resolveComponent("IdmWarZone"),N=o.resolveComponent("IdmGmdssArea"),I=o.resolveComponent("IdmEcaZone"),V=o.resolveComponent("IdmAlertZone"),R=o.resolveComponent("IdmPort"),A=o.resolveComponent("IdmLoadLine"),ae=o.resolveComponent("IdmTimezone"),oe=o.resolveComponent("IdmVRA"),ie=o.resolveComponent("IdmSpecialArea"),re=o.resolveComponent("IdmTerminator"),se=o.resolveComponent("IdmLatLng"),ne=o.resolveComponent("IdmMeasure"),W=o.resolveComponent("IdmPoint");return a.map?(o.openBlock(),o.createElementBlock("div",xi,[o.createVNode(l,o.mergeProps({ref:"layer",map:a.map,"toggle-version":i.toggleVersion,"map-projection":i.mapProjection},t.$attrs,{onWeather:s.handleWeatherLayerChange,onOther:s.handleOtherLayerChange,onCoordinate:e[0]||(e[0]=H=>i.showCoord=H),onMeasure:e[1]||(e[1]=H=>i.showMeasure=H),onPoint:e[2]||(e[2]=H=>i.showPoint=H),on3d:s.handle3dToggle,onToggleVersion:e[3]||(e[3]=H=>i.toggleVersion=H)}),null,16,["map","toggle-version","map-projection","onWeather","onOther","on3d"]),o.createVNode(n,o.mergeProps({map:a.map,token:a.token,enabled:(j=i.otherLayers)==null?void 0:j.enc,"toggle-version":i.toggleVersion},t.$attrs,{onEnc:e[4]||(e[4]=H=>i.enc=H)}),null,16,["map","token","enabled","toggle-version"]),o.createVNode(c,o.mergeProps({map:a.map,"sig-wave":(le=i.weatherLayers)==null?void 0:le["sig-wave-height"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","sig-wave","before-layer"]),o.createVNode(h,o.mergeProps({map:a.map,swell:(F=i.weatherLayers)==null?void 0:F.swell,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","swell","before-layer"]),o.createVNode(d,o.mergeProps({map:a.map,prmsl:(E=i.weatherLayers)==null?void 0:E.prmsl,"before-layer":a.beforeLayer,"active-weather-layers":i.activeWeatherLayers},t.$attrs),null,16,["map","prmsl","before-layer","active-weather-layers"]),o.createVNode(p,o.mergeProps({map:a.map,iceberg:($=i.weatherLayers)==null?void 0:$.iceberg,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","iceberg","before-layer"]),o.createVNode(u,o.mergeProps({map:a.map,date:a.ts,tropicals:(ce=i.weatherLayers)==null?void 0:ce.tropicals,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","date","tropicals","before-layer"]),o.createVNode(m,o.mergeProps({map:a.map,"map-projection":i.mapProjection,current:(U=i.weatherLayers)==null?void 0:U.current,"before-layer":a.beforeLayer,"show-particle":i.showCurrentParticle,"margin-bottom":i.activeWindLayer?i.showRampColor?"84px":"56px":i.showRampColor?"56px":"30px","toggle-version":i.toggleVersion,"weather-layers":i.weatherLayers},t.$attrs,{onParticle:s.handleParticle}),null,16,["map","map-projection","current","before-layer","show-particle","margin-bottom","toggle-version","weather-layers","onParticle"]),o.createVNode(g,o.mergeProps({viewport:i.viewport,factor:(he=i.weatherLayers)==null?void 0:he["current-particle"],"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(f,o.mergeProps({ref:"windBarb",map:a.map,"map-projection":i.mapProjection,wind:(Q=i.weatherLayers)==null?void 0:Q.wind,current:(K=i.weatherLayers)==null?void 0:K.current,"before-layer":a.beforeLayer,"margin-bottom":i.showRampColor?"56px":"30px","show-particle":i.showWindParticle},t.$attrs,{"toggle-version":i.toggleVersion,"weather-layers":i.weatherLayers,onParticle:s.handleParticle}),null,16,["map","map-projection","wind","current","before-layer","margin-bottom","show-particle","toggle-version","weather-layers","onParticle"]),o.createVNode(y,o.mergeProps({viewport:i.viewport,factor:(ee=i.weatherLayers)==null?void 0:ee["wind-particle"],"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(_,o.mergeProps({viewport:i.viewport,factor:(ye=i.weatherLayers)==null?void 0:ye.precip3h,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(b,o.mergeProps({viewport:i.viewport,factor:(fe=i.weatherLayers)==null?void 0:fe.visibility,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(w,o.mergeProps({viewport:i.viewport,factor:(ue=i.weatherLayers)==null?void 0:ue["water-temp"],"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(C,o.mergeProps({viewport:i.viewport,factor:(ge=i.weatherLayers)==null?void 0:ge.temp,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(L,o.mergeProps({viewport:i.viewport,factor:(be=i.weatherLayers)==null?void 0:be.arctic,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(P,o.mergeProps({map:a.map,zone:(_e=i.otherLayers)==null?void 0:_e["war-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(N,o.mergeProps({map:a.map,area:(Le=i.otherLayers)==null?void 0:Le["gmdss-areas"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","area","before-layer"]),o.createVNode(I,o.mergeProps({map:a.map,zone:(ke=i.otherLayers)==null?void 0:ke["eca-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(V,o.mergeProps({map:a.map,zone:(Te=i.otherLayers)==null?void 0:Te["alert-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(R,o.mergeProps({map:a.map,port:(Ie=i.otherLayers)==null?void 0:Ie.ports,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","port","before-layer"]),o.createVNode(A,o.mergeProps({map:a.map,line:(De=i.otherLayers)==null?void 0:De["load-lines"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","line","before-layer"]),o.createVNode(ae,o.mergeProps({map:a.map,zone:(Ve=i.otherLayers)==null?void 0:Ve["time-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(oe,o.mergeProps({map:a.map,area:(Re=i.otherLayers)==null?void 0:Re["voluntary-reporting-area"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","area","before-layer"]),o.createVNode(ie,o.mergeProps({map:a.map,area:($e=i.otherLayers)==null?void 0:$e["special-area"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","area","before-layer"]),o.createVNode(re,o.mergeProps({map:a.map,area:(Be=i.otherLayers)==null?void 0:Be["day-night"]},t.$attrs),null,16,["map","area"]),o.createVNode(se,o.mergeProps({map:a.map,show:i.showCoord,"toggle-version":i.toggleVersion},t.$attrs),null,16,["map","show","toggle-version"]),o.createVNode(ne,o.mergeProps({map:a.map,show:i.showMeasure},t.$attrs),null,16,["map","show"]),o.createVNode(W,o.mergeProps({map:a.map,show:i.showPoint,meteo:i.meteo},t.$attrs,{onPoint:s.handlePointChange}),null,16,["map","show","meteo","onPoint"])])):o.createCommentVNode("",!0)}const Ne=S(vi,[["render",Ci]]),Si={install(t){t.component("MapboxGL",Ne),t.component("TropicalGL",Ce),t.component("LatLngGL",Se)}};k.LatLngGL=Se,k.MapboxGL=Ne,k.MapboxGLPlugin=Si,k.MapboxHelper=ze,k.ParticleSchema=D,k.TropicalGL=Ce,k.Viewport=we,k.WebGL=J,k.WebGLSchema=T,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})});
204
+ </svg>`,U=document.createElement("div");U.className="hurricane-hourly-marker",U.innerHTML=`<div class="${E.geometry.coordinates[1]>=0?"center north":"center south"}">${ce}</div>`;const he=new G.Marker(U).setLngLat(E.geometry.coordinates).addTo(this.map);if(this.interpolateMarkers.push(he),(R=E.properties)!=null&&R.showCircle){const Q={radius:100,coordinates:E.geometry.coordinates},K={radius:200,coordinates:E.geometry.coordinates},ee={radius:500,coordinates:E.geometry.coordinates};(A=this.circleSourceData)==null||A.features.push(x.circle(Q.coordinates,Q.radius,{steps:100,units:"kilometers",properties:{type:"tropicalCircle"}})),(ae=this.circleSourceData)==null||ae.features.push(x.circle(K.coordinates,K.radius,{steps:100,units:"kilometers",properties:{type:"tropicalCircle"}})),(oe=this.circleSourceData)==null||oe.features.push(x.circle(ee.coordinates,ee.radius,{steps:100,units:"kilometers",properties:{type:"tropicalCircle"}}))}(re=(ie=this.map)==null?void 0:ie.getSource(this.circleSource))==null||re.setData(this.circleSourceData)}}else(se=this.map)!=null&&se.getSource(this.interpolateSource)&&((ne=this.map)==null||ne.getSource(this.interpolateSource).setData(this.empty))},handleClick(t){var s,l,n,c,h,d,p,u;const e=t.features[0],a=(l=(s=this.tropicals)==null?void 0:s.data)==null?void 0:l.features.filter(m=>{var g;return m.geometry.type==="LineString"&&m.properties.type==="forecast"&&m.properties.name===((g=e==null?void 0:e.properties)==null?void 0:g.name)});a.sort((m,g)=>{var f,y,_,b;return((f=m.properties)==null?void 0:f.model)==="cma"?-1:((y=m.properties)==null?void 0:y.model)==="jma"?((_=g.properties)==null?void 0:_.model)==="cma"?1:-1:m.properties.model==="ecmwf"?["jma","cma"].includes((b=g.properties)==null?void 0:b.model)?1:-1:0});const r=(c=(n=this.tropicals)==null?void 0:n.data)==null?void 0:c.features.filter(m=>{var g;return m.geometry.type==="LineString"&&m.properties.type==="history"&&m.properties.name===((g=e==null?void 0:e.properties)==null?void 0:g.name)});this.activeTropicals={name:(h=e==null?void 0:e.properties)==null?void 0:h.name,forecasts:a.map(m=>m.properties),history:(d=r[0])==null?void 0:d.properties,showCircle:(u=(p=a[0])==null?void 0:p.properties)==null?void 0:u.showCircle},this.showTropicals=!0;const i=document.getElementById("active-tropical");this.activeTropicalsMarker?this.activeTropicalsMarker.setLngLat([t.lngLat.lng,t.lngLat.lat]):this.activeTropicalsMarker=new G.Marker(i).setLngLat([t.lngLat.lng,t.lngLat.lat]).setOffset([220,0]).addTo(this.map)},handleForecastToggle(t){var r,i,s,l,n,c;t.disabled=!t.disabled;const e=`${t.name}-${t.model}`,a=(i=(r=this.map)==null?void 0:r.getSource(this.source)._data)==null?void 0:i.features;a.forEach(h=>{h.properties.category===e&&(h.properties.disabled=t.disabled)}),this.interpolateData.forEach(h=>{h.properties.category===e&&(h.properties.disabled=t.disabled)}),(l=(s=this.map)==null?void 0:s.getSource(this.source))==null||l.setData(x.featureCollection(a)),(c=(n=this.map)==null?void 0:n.getSource(this.clusterSource))==null||c.setData(x.featureCollection(a)),this.handleDateChange()},handleStrikeProbability(t){this.$emit("tropicalProbability",t)},handleToggleCircles(t){var e,a;t.showCircle=!t.showCircle,(a=(e=this.tropicals.data)==null?void 0:e.features)==null||a.forEach(r=>{r.properties.name===t.name&&(r.properties.showCircle=t.showCircle)}),this.handleRender()},handleDrawCircle(){var t,e;(t=this.map)!=null&&t.getSource(this.circleSource)?(e=this.map)==null||e.getSource(this.circleSource).setData(this.circleSourceData):(this.map.addSource(this.circleSource,{type:"geojson",data:this.circleSourceData}),this.map.addLayer({id:this.circleLayer,type:"line",source:this.circleSource,filter:["all",["==","$type","Polygon"],["==","type","tropicalCircle"]],paint:{"line-color":"#fff","line-width":2,"line-opacity":1,"line-dasharray":[1,1]}}))},handleComputePolygons(t){const e=[];for(const a of t){const r=a.properties.wind,i={ne:r.r7ne>=0?r.r7ne:void 0,se:r.r7se>=0?r.r7se:void 0,sw:r.r7sw>=0?r.r7sw:void 0,nw:r.r7nw>=0?r.r7nw:void 0},s=this.handleComputeArc(a.geometry.coordinates,i,{...a.properties,level:7});e.push(s);const l={ne:r.r10ne>=0?r.r10ne:void 0,se:r.r10se>=0?r.r10se:void 0,sw:r.r10sw>=0?r.r10sw:void 0,nw:r.r10nw>=0?r.r10nw:void 0},n=this.handleComputeArc(a.geometry.coordinates,l,{...a.properties,level:10});e.push(n)}return e},handleComputeArc(t,e,a){var s;const r=[];for(const l in e){const n=e[l]??0;let c;switch(l){case"ne":c=x.lineArc(t,n*1.852,0,90,{steps:n>0?64:1});break;case"se":c=x.lineArc(t,n*1.852,90,180,{steps:n>0?64:1});break;case"sw":c=x.lineArc(t,n*1.852,180,270,{steps:n>0?64:1});break;case"nw":c=x.lineArc(t,n*1.852,270,360,{steps:n>0?64:1});break}r.push(...(s=c==null?void 0:c.geometry)==null?void 0:s.coordinates)}const i=x.lineString(r);return x.lineToPolygon(i,{properties:a})}}},xe=t=>(o.pushScopeId("data-v-aec5af09"),t=t(),o.popScopeId(),t),ea={id:"active-tropical",class:"active-tropical"},ta={class:"header-box"},aa={class:"main"},oa={key:0},ia={class:"sub"},ra={id:"meteoBox",class:"main-box"},sa={class:"content"},na={class:"row"},la={class:"col col-left",style:{"justify-content":"flex-start"}},ca=xe(()=>o.createElementVNode("label",null,"Wind speed : ",-1)),ha={class:"col col-right",style:{"justify-content":"flex-start"}},da=xe(()=>o.createElementVNode("label",null,"Pressure : ",-1)),pa={class:"row"},ma={class:"col col-24",style:{"justify-content":"flex-start"}},ya=xe(()=>o.createElementVNode("label",{style:{width:"max-content"}},"Forecast Models : ",-1)),fa={class:"forecast-models"},ua=["onClick"],ga=o.createStaticVNode('<div class="row" style="padding:0;height:1px;margin:10px 0;background:var(--idm-black-1);" data-v-aec5af09></div><div class="row" style="padding:2px 10px;" data-v-aec5af09><div class="legend" data-v-aec5af09><div class="icon td" data-v-aec5af09></div><div class="label" data-v-aec5af09>TD</div></div><div class="legend" data-v-aec5af09><div class="icon ts" data-v-aec5af09></div><div class="label" data-v-aec5af09>TS</div></div><div class="legend" data-v-aec5af09><div class="icon sts" data-v-aec5af09></div><div class="label" data-v-aec5af09>STS</div></div><div class="legend" data-v-aec5af09><div class="icon ty" data-v-aec5af09></div><div class="label" data-v-aec5af09>TY</div></div><div class="legend" data-v-aec5af09><div class="icon sty" data-v-aec5af09></div><div class="label" data-v-aec5af09>STY</div></div><div class="legend" data-v-aec5af09><div class="icon supper-ty" data-v-aec5af09></div><div class="label" data-v-aec5af09>Super TY</div></div></div><div class="row" style="padding:2px 10px;" data-v-aec5af09><div class="legend" data-v-aec5af09><div class="icon history" data-v-aec5af09></div><div class="label" data-v-aec5af09>History</div></div><div class="legend" data-v-aec5af09><div class="icon r7" data-v-aec5af09></div><div class="label" data-v-aec5af09>35kts Radii</div></div><div class="legend" data-v-aec5af09><div class="icon r10" data-v-aec5af09></div><div class="label" data-v-aec5af09>50kts Radii</div></div></div>',3),ba={class:"more"};function _a(t,e,a,r,i,s){var l,n,c,h,d,p,u,m,g,f,y,_,b,w,C;return o.withDirectives((o.openBlock(),o.createElementBlock("div",ea,[o.createElementVNode("div",ta,[o.createElementVNode("div",{class:"iconfont close-btn",onClick:e[0]||(e[0]=L=>i.showTropicals=!1)},""),o.createElementVNode("div",aa,[(n=(l=i.activeTropicals)==null?void 0:l.history)!=null&&n.level?(o.openBlock(),o.createElementBlock("span",oa,o.toDisplayString((h=(c=i.activeTropicals)==null?void 0:c.history)==null?void 0:h.level)+" , ",1)):o.createCommentVNode("",!0),o.createTextVNode(o.toDisplayString((d=i.activeTropicals)==null?void 0:d.name),1)]),o.createElementVNode("div",ia," Last update: "+o.toDisplayString(s.computeTime(((u=(p=i.activeTropicals)==null?void 0:p.history)==null?void 0:u.updated)||((f=(g=(m=i.activeTropicals)==null?void 0:m.forecasts)==null?void 0:g.filter(L=>!L.disabled)[0])==null?void 0:f.date))),1)]),o.createElementVNode("div",ra,[o.createElementVNode("div",sa,[o.createElementVNode("div",na,[o.createElementVNode("div",la,[ca,o.createElementVNode("span",null,o.toDisplayString(((_=(y=i.activeTropicals)==null?void 0:y.history)==null?void 0:_.kts)||"-")+"[kts]",1)]),o.createElementVNode("div",ha,[da,o.createElementVNode("span",null,o.toDisplayString(((w=(b=i.activeTropicals)==null?void 0:b.history)==null?void 0:w.pressure)||"-")+"[hPa]",1)])]),o.createElementVNode("div",pa,[o.createElementVNode("div",ma,[ya,o.createElementVNode("div",fa,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList((C=i.activeTropicals)==null?void 0:C.forecasts,(L,P)=>{var N,I,V,R;return o.openBlock(),o.createElementBlock("div",{key:P,class:o.normalizeClass(["model",L.disabled?"":"active",P>0&&P<((I=(N=i.activeTropicals)==null?void 0:N.forecasts)==null?void 0:I.length)-1&&((R=(V=i.activeTropicals)==null?void 0:V.forecasts)==null?void 0:R.length)>2?"center-child":""]),onClick:A=>s.handleForecastToggle(L)},[o.createElementVNode("span",{class:o.normalizeClass(L.model)},o.toDisplayString(L.model),3)],10,ua)}),128))])])]),ga]),o.createElementVNode("div",ba,[o.createElementVNode("div",{class:"button",onClick:e[1]||(e[1]=L=>s.handleStrikeProbability(i.activeTropicals))},"Strike Probability >>")])])],512)),[[o.vShow,i.showTropicals&&!t.$attrs.hideTropicalsLegend]])}const Ce=S(Kt,[["render",_a],["__scopeId","data-v-aec5af09"]]),ar="",La={name:"IdmPrecip3h",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[precip3h] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(59, 126, 162, 0)"],[14/255,"rgba(84,170,230, 0)"],[15/255,"rgba(172, 210, 255, 0.8)"],[20/255,"rgba(51,202,248,0.8)"],[30/255,"rgba(3,248,103,0.8)"],[49/255,"rgba(14,201,3,0.8)"],[57/255,"rgba(190,226,2,0.8)"],[73/255,"rgba(248,1,1,0.8)"],[82/255,"rgba(197,5,58,0.8)"],[1,"rgba(197,5,58,0.8)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},q=t=>(o.pushScopeId("data-v-dec867b8"),t=t(),o.popScopeId(),t),wa={key:0},va=[q(()=>o.createElementVNode("span",null,"mm",-1)),q(()=>o.createElementVNode("span",null,"1.5",-1)),q(()=>o.createElementVNode("span",null,"2",-1)),q(()=>o.createElementVNode("span",null,"3",-1)),q(()=>o.createElementVNode("span",null,"7",-1)),q(()=>o.createElementVNode("span",null,"10",-1)),q(()=>o.createElementVNode("span",null,"20",-1)),q(()=>o.createElementVNode("span",null,"30",-1))];function xa(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",wa,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},va,4)])):o.createCommentVNode("",!0)}const Ca=S(La,[["render",xa],["__scopeId","data-v-dec867b8"]]),dr="",Sa={name:"IdmVisibility",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[visibility] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(189,50,160,0.8)"],[8/255,"rgba(208,56,56,0.8)"],[27/255,"rgba(190,226,2,0.8)"],[60/255,"rgba(3,236,118,0.8)"],[160/255,"rgba(172, 210,255,0.8)"],[161/255,"rgba(172, 210,255,0)"],[1,"rgba(144,144,144,0)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},de=t=>(o.pushScopeId("data-v-952dee5c"),t=t(),o.popScopeId(),t),ka={key:0},Ea=[de(()=>o.createElementVNode("span",null,"nm",-1)),de(()=>o.createElementVNode("span",null,"0",-1)),de(()=>o.createElementVNode("span",null,"0.5",-1)),de(()=>o.createElementVNode("span",null,"1.5",-1)),de(()=>o.createElementVNode("span",null,"3",-1)),de(()=>o.createElementVNode("span",null,"9",-1))];function za(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",ka,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:t.right+"px",bottom:a.bottom}])},Ea,4)])):o.createCommentVNode("",!0)}const Pa=S(Sa,[["render",za],["__scopeId","data-v-952dee5c"]]),br="",Na={name:"IdmWaterTemp",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[water-temp] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(95, 143, 197)"],[46/255,"rgba(95, 143, 197)"],[69/255,"rgb(80, 140, 62)"],[92/255,"rgb(121, 146, 28)"],[115/255,"rgb(171, 161, 14)"],[138/255,"rgb(223, 177, 69)"],[161/255,"rgb(243, 150, 6)"],[184/255,"rgb(236, 95, 21)"],[207/255,"rgb(190, 65, 18)"],[230/255,"rgb(138, 43, 10)"],[1,"rgb(138, 43, 10)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},pe=t=>(o.pushScopeId("data-v-67e5094b"),t=t(),o.popScopeId(),t),Ta={key:0},Ia=[pe(()=>o.createElementVNode("span",null,"°C",-1)),pe(()=>o.createElementVNode("span",null,"0",-1)),pe(()=>o.createElementVNode("span",null,"10",-1)),pe(()=>o.createElementVNode("span",null,"20",-1)),pe(()=>o.createElementVNode("span",null,"30",-1)),pe(()=>o.createElementVNode("span",null,"40",-1))];function Da(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",Ta,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},Ia,4)])):o.createCommentVNode("",!0)}const Va=S(Na,[["render",Da],["__scopeId","data-v-67e5094b"]]),Sr="",Ra={name:"IdmTemp",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[water-temp] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgb(149, 137, 211)"],[100/255,"rgb(149, 137, 211)"],[110/255,"rgb(150, 209, 216)"],[120/255,"rgb(129, 204, 197)"],[130/255,"rgb(103, 180, 186)"],[140/255,"rgb(95, 143, 197)"],[150/255,"rgb(80, 140, 62)"],[160/255,"rgb(121, 146, 28)"],[170/255,"rgb(171, 161, 14)"],[180/255,"rgb(223, 177, 6)"],[190/255,"rgb(243, 150, 6)"],[200/255,"rgb(236, 95, 21)"],[210/255,"rgb(190, 65, 18)"],[220/255,"rgb(138, 43, 10)"],[1,"rgb(138, 43, 10)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Y=t=>(o.pushScopeId("data-v-389ea886"),t=t(),o.popScopeId(),t),$a={key:0},Ba=[Y(()=>o.createElementVNode("span",null,"°C",-1)),Y(()=>o.createElementVNode("span",null,"-20",-1)),Y(()=>o.createElementVNode("span",null,"-10",-1)),Y(()=>o.createElementVNode("span",null,"0",-1)),Y(()=>o.createElementVNode("span",null,"10",-1)),Y(()=>o.createElementVNode("span",null,"20",-1)),Y(()=>o.createElementVNode("span",null,"30",-1)),Y(()=>o.createElementVNode("span",null,"40",-1))];function Aa(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",$a,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},Ba,4)])):o.createCommentVNode("",!0)}const Ma=S(Ra,[["render",Aa],["__scopeId","data-v-389ea886"]]),Vr="",Wa={name:"IdmArctic",props:{factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new J,etime:void 0,right:10}},watch:{"factor.version":{handler(){var t;(t=this.factor)!=null&&t.active?this.handleRender():this.handleClear()},deep:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{handleRender(){if(!this.viewport)setTimeout(()=>{this.handleRender()},500);else if(this.factor){const t=new Date().valueOf();let e=0,a=0;this.handleDraw(),a=new Date().valueOf()-(t+e),console.log("[water-temp] add elapsed: ",a,", total: ",e+=a)}},handleClear(){this.context=void 0,this.etime=void 0,this.viewport.toggle(!1)},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const t=[[0,"rgba(76, 165, 228, 0)"],[50/255,"rgba(76, 165, 228, 0)"],[51/255,"rgb(76, 165, 228)"],[102/255,"rgb(129, 204, 197)"],[153/255,"rgb(150, 209, 216)"],[204/255,"rgb(180, 209, 216)"],[1,"rgb(180, 209, 216)"]];this.rampColor=this.webgl.setup(this.context,t);const{program:e,aPositionBuffer:a}=this.webgl.bind(this.context,T.vertexSchema,T.fragmentSchema);this.program=e,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const t=await this.webgl.loadImg(this.factor.raw);this.texture=this.webgl.createTexture(this.context,this.context.NEAREST,this.context.LINEAR,this.context.CLAMP_TO_EDGE,t)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},me=t=>(o.pushScopeId("data-v-db805141"),t=t(),o.popScopeId(),t),Oa={key:0},ja=[me(()=>o.createElementVNode("span",null,"m",-1)),me(()=>o.createElementVNode("span",null,"0",-1)),me(()=>o.createElementVNode("span",null,"0.5",-1)),me(()=>o.createElementVNode("span",null,"1",-1)),me(()=>o.createElementVNode("span",null,"1.5",-1)),me(()=>o.createElementVNode("span",null,"2",-1))];function Fa(t,e,a,r,i,s){var l;return(l=a.factor)!=null&&l.active?(o.openBlock(),o.createElementBlock("div",Oa,[o.createElementVNode("div",{class:"legend-bars flex-center",style:o.normalizeStyle([{position:"absolute"},{right:i.right+"px",bottom:a.bottom}])},ja,4)])):o.createCommentVNode("",!0)}const Ua=S(Wa,[["render",Fa],["__scopeId","data-v-db805141"]]),Or="",Ha={name:"IdmPoint",emits:["point","more"],props:{map:{type:Object},show:{type:Boolean},meteo:{type:Object}},data(){return{showMeteo:!1,meteoMarker:void 0,helper:v.CompanyHelper}},watch:{show:{handler(){this.handleBind()},immediate:!0},map:{handler(){this.map&&this.show&&this.handleBind()}},meteo:{handler(){this.meteo?(this.showMeteo=!0,this.handleRender()):this.showMeteo=!1}}},computed:{computeTime(){return function(t){return t?`${O(t).utc().format("MMM-DD,HHmm[Z]")}`:"-"}},computeLat(){return function(t,e=4){return v.LngLatHelper.lat2pretty(t,e).pretty}},computeLng(){return function(t,e=4){return v.LngLatHelper.lng2pretty(t,e).pretty}},roundPrecision(){return function(t,e=4){return isNaN(t)?"-":v.LngLatHelper.roundPrecision(t,e)}}},methods:{handleBind(){var t,e;this.show?(t=this.map)==null||t.on("click",this.handleClick):((e=this.map)==null||e.off("click",this.handleClick),this.showMeteo=!1)},handleClick(t){t.originalEvent.stopPropagation();const e=t.originalEvent.target.className;e.indexOf("close")>-1?this.showMeteo=!1:e==="more"?this.$emit("more",this.meteo):this.$emit("point",t.lngLat)},handleRender(){var t;if(this.meteo){const e=document.getElementById("point-meteo");this.meteoMarker?(t=this.meteoMarker)==null||t.setLngLat([this.meteo.lng,this.meteo.lat]):this.meteoMarker=new G.Marker(e).setLngLat([this.meteo.lng,this.meteo.lat]).addTo(this.map)}}}},M=t=>(o.pushScopeId("data-v-fb5b12d6"),t=t(),o.popScopeId(),t),Ga={id:"point-meteo",class:"point-meteo"},Za={class:"meteo-box"},Ja={class:"header-box"},Xa={class:"main"},qa={class:"sub"},Ya={class:"main-box"},Qa={class:"flex-space"},Ka=M(()=>o.createElementVNode("label",null,"Wind",-1)),eo={class:"flex-space"},to=M(()=>o.createElementVNode("label",null,"Wind.Wave",-1)),ao={class:"flex-space"},oo=M(()=>o.createElementVNode("label",null,"Swell",-1)),io={class:"flex-space"},ro=M(()=>o.createElementVNode("label",null,"Sig.Wave",-1)),so={class:"flex-space"},no=M(()=>o.createElementVNode("label",null,"Current",-1)),lo={class:"flex-space"},co=M(()=>o.createElementVNode("label",null,"Precip",-1)),ho={class:"flex-space"},po=M(()=>o.createElementVNode("label",null,"Visibility",-1)),mo={class:"flex-space"},yo=M(()=>o.createElementVNode("label",null,"Temp",-1)),fo={class:"flex-space"},uo=M(()=>o.createElementVNode("label",null,"Water Temp",-1)),go={key:0,class:"flex-space",style:{"justify-content":"flex-end"}},bo=[M(()=>o.createElementVNode("span",{class:"more"},"More >>",-1))];function _o(t,e,a,r,i,s){var l,n,c,h,d,p,u,m,g,f,y,_,b,w,C,L,P,N,I,V,R,A,ae,oe,ie,re,se,ne,W,j,le,F,E,$,ce,U,he,Q,K,ee,ye,fe,ue,ge,be,_e,Le;return o.withDirectives((o.openBlock(),o.createElementBlock("div",Ga,[o.createElementVNode("div",Za,[o.createElementVNode("div",Ja,[o.createElementVNode("div",{class:"iconfont close",onClick:e[0]||(e[0]=ke=>i.showMeteo=!1)},""),o.createElementVNode("div",Xa,o.toDisplayString(s.computeLat((l=a.meteo)==null?void 0:l.lat))+","+o.toDisplayString(s.computeLng((n=a.meteo)==null?void 0:n.lng)),1),o.createElementVNode("div",qa,o.toDisplayString(s.computeTime((c=a.meteo)==null?void 0:c.utc)),1)]),o.createElementVNode("div",Ya,[o.createElementVNode("div",Qa,[Ka,o.createElementVNode("span",null,o.toDisplayString(((d=(h=a.meteo)==null?void 0:h.wind)==null?void 0:d.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((u=(p=a.meteo)==null?void 0:p.wind)==null?void 0:u.kts,1))+"[kts]/"+o.toDisplayString((g=(m=a.meteo)==null?void 0:m.wind)==null?void 0:g.scale)+"[BF]/"+o.toDisplayString(s.roundPrecision((y=(f=a.meteo)==null?void 0:f.gusts)==null?void 0:y.kts,1))+"[kts]",1)]),o.createElementVNode("div",eo,[to,o.createElementVNode("span",null,o.toDisplayString(((w=(b=(_=a.meteo)==null?void 0:_.wave)==null?void 0:b.wd)==null?void 0:w.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((P=(L=(C=a.meteo)==null?void 0:C.wave)==null?void 0:L.wd)==null?void 0:P.height,1))+"[m]/"+o.toDisplayString(s.roundPrecision((V=(I=(N=a.meteo)==null?void 0:N.wave)==null?void 0:I.wd)==null?void 0:V.period,1))+"[s]",1)]),o.createElementVNode("div",ao,[oo,o.createElementVNode("span",null,o.toDisplayString(((ae=(A=(R=a.meteo)==null?void 0:R.wave)==null?void 0:A.swell)==null?void 0:ae.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((re=(ie=(oe=a.meteo)==null?void 0:oe.wave)==null?void 0:ie.swell)==null?void 0:re.height,1))+"[m]/"+o.toDisplayString(s.roundPrecision((W=(ne=(se=a.meteo)==null?void 0:se.wave)==null?void 0:ne.swell)==null?void 0:W.period,1))+"[s]",1)]),o.createElementVNode("div",io,[ro,o.createElementVNode("span",null,o.toDisplayString(((F=(le=(j=a.meteo)==null?void 0:j.wave)==null?void 0:le.sig)==null?void 0:F.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((ce=($=(E=a.meteo)==null?void 0:E.wave)==null?void 0:$.sig)==null?void 0:ce.height,1))+"[m]/"+o.toDisplayString(s.roundPrecision((Q=(he=(U=a.meteo)==null?void 0:U.wave)==null?void 0:he.sig)==null?void 0:Q.period,1))+"[s]",1)]),o.createElementVNode("div",so,[no,o.createElementVNode("span",null,o.toDisplayString(((ee=(K=a.meteo)==null?void 0:K.current)==null?void 0:ee.direction)||"-")+"/"+o.toDisplayString(s.roundPrecision((fe=(ye=a.meteo)==null?void 0:ye.current)==null?void 0:fe.kts,2))+"[kts]",1)]),o.createElementVNode("div",lo,[co,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision((ge=(ue=a.meteo)==null?void 0:ue.precip)==null?void 0:ge.inter6h,2))+"[mm]",1)]),o.createElementVNode("div",ho,[po,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision(((be=a.meteo)==null?void 0:be.visibility)/1852,0))+"[nm]",1)]),o.createElementVNode("div",mo,[yo,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision((_e=a.meteo)==null?void 0:_e.temp,0))+"[°C]",1)]),o.createElementVNode("div",fo,[uo,o.createElementVNode("span",null,o.toDisplayString(s.roundPrecision((Le=a.meteo)==null?void 0:Le.waterTemp,2))+"[°C]",1)])]),t.$attrs.permission&i.helper.LEVEL.Prime?(o.openBlock(),o.createElementBlock("div",go,bo)):o.createCommentVNode("",!0)])],512)),[[o.vShow,i.showMeteo]])}const Lo=S(Ha,[["render",_o],["__scopeId","data-v-fb5b12d6"]]),wo={name:"IdmWarZone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"war-zone-source",zoneLayer:"war-zone-layer",zoneLabelLayer:"war-zone-label-layer"}},watch:{zone:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.zone&&(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.zoneLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-color":"#f44336","fill-opacity":.4}},this.beforeLayer),this.map.addLayer({id:this.zoneLayer+"-border",type:"line",source:this.source,filter:["==","$type","Polygon"],paint:{"line-width":1,"line-opacity":1,"line-color":"#f44336"}},this.beforeLayer),this.map.addLayer({id:this.zoneLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-1]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.zoneLayer)&&this.map.removeLayer(this.zoneLayer),this.map.getLayer(this.zoneLayer+"-border")&&this.map.removeLayer(this.zoneLayer+"-border"),this.map.getLayer(this.zoneLabelLayer)&&this.map.removeLayer(this.zoneLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function vo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const xo=S(wo,[["render",vo]]),Co={name:"IdmGmdssArea",props:{map:{type:Object},area:{type:Object},beforeLayer:{type:String}},data(){return{source:"gmdss-area-source",areaLayer:"gmdss-area-layer",areaLabelLayer:"gmdss-area-label-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.areaLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.5,"fill-color":["match",["get","val"],"AreaI","#EB8996","AreaII","#6F448B","AreaIII","#3E8BD3","AreaIV","#5EBCC4","AreaV","#00AAE7","AreaVI","#9CCE6D","AreaVII","#F4AE00","AreaVIII","#EF9A85","AreaIX","#00AAA7","AreaX","#7AC49F","AreaXI","#DFDFDF","AreaXII","#FFF974","AreaXIII","#EF9A85","AreaXIV","#86A2D1","AreaXV","#EC8972","AreaXVI","#EAC2DA","AreaXVII","#B9C8E7","AreaXVIII","#BBA1C8","AreaXIX","#FAE0BD","AreaXX","#DBECC8","AreaXXI","#D496AF","#ffffff"]}},this.beforeLayer),this.map.addLayer({id:this.areaLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":12,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-opacity":.8,"text-color":"#000"}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.areaLayer)&&this.map.removeLayer(this.areaLayer),this.map.getLayer(this.areaLabelLayer)&&this.map.removeLayer(this.areaLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function So(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const ko=S(Co,[["render",So]]),Eo={name:"IdmEcaZone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"eca-zone-source",zoneLayer:"eca-zone-layer",zoneLabelLayer:"eca-zone-label-layer"}},watch:{zone:{handler(){this.zone?this.handleRender():this.handleClear()}}},methods:{handleRender(){var t;this.map?(this.handleClear(),this.zone&&(this.map.getSource(this.source)?(t=this.map)==null||t.getSource(this.source).setData(this.zone):(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.zoneLayer,type:"fill",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"fill-outline-color":"silver","fill-opacity":.4,"fill-color":"#05f324"}}),this.map.addLayer({id:this.zoneLayer+"-border",type:"line",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"line-color":"#04c021","line-width":1,"line-opacity":1}},this.beforeLayer),this.map.addLayer({id:this.zoneLabelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","Point"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-max-width":16,"text-justify":"left","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}})))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.zoneLayer)&&this.map.removeLayer(this.zoneLayer),this.map.getLayer(this.zoneLayer+"-border")&&this.map.removeLayer(this.zoneLayer+"-border"),this.map.getLayer(this.zoneLabelLayer)&&this.map.removeLayer(this.zoneLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function zo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Po=S(Eo,[["render",zo]]),Fr="",No={name:"IdmAlertZone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"alert-zone-source",polygonLayer:"alert-zone-polygon-layer",polygonLabelLayer:"alert-zone-polygon-label-layer",lineLayer:"alert-zone-line-layer",lineLabelLayer:"alert-zone-line-label-layer",pointLayer:"alert-zone-point-layer",showZone:!1,form:{}}},watch:{zone:{handler(){var t,e;this.zone?(this.handleRender(),(t=this.map)==null||t.on("click",[this.polygonLabelLayer,this.lineLabelLayer,this.pointLayer],this.handleClick)):(this.handleClear(),(e=this.map)==null||e.off("click",[this.polygonLabelLayer,this.lineLabelLayer,this.pointLayer],this.handleClick))}}},methods:{handleClick(t){var r;const e=t.features[0],a=(r=this.zone)==null?void 0:r.features.filter(i=>{var s;return i.properties.id===((s=e==null?void 0:e.properties)==null?void 0:s.id)})[0];a&&(this.showZone=!0,this.form={...a.properties})},handleRender(){var t;this.map?(this.handleClear(),this.zone&&(this.map.getSource(this.source)?(t=this.map)==null||t.getSource(this.source).setData(this.zone):(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.polygonLayer,type:"fill",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"fill-outline-color":"#d57d02","fill-opacity":.4,"fill-color":"#d57d02"}}),this.map.addLayer({id:this.polygonLayer+"-border",type:"line",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],paint:{"line-width":1,"line-color":"#d57d02"}}),this.map.addLayer({id:this.lineLayer,type:"line",source:this.source,filter:["all",["==","$type","LineString"],["!=","disabled",!0]],paint:{"line-color":"#d57d02","line-width":2}}),this.map.addLayer({id:this.polygonLabelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","Polygon"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-image":"alert","icon-size":.1,"icon-allow-overlap":!0,"icon-rotation-alignment":"viewport"},paint:{"icon-opacity":.8}}),this.map.addLayer({id:this.lineLabelLayer,type:"symbol",source:this.source,filter:["all",["==","$type","LineString"],["!=","disabled",!0]],layout:{"symbol-placement":"line-center","icon-image":"alert","icon-size":.1,"icon-allow-overlap":!0,"icon-rotation-alignment":"viewport"},paint:{"icon-opacity":.8}}),this.map.addLayer({id:this.pointLayer,type:"symbol",source:this.source,filter:["all",["==","$type","Point"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-image":"alert","icon-size":.1},paint:{"icon-opacity":.8}})))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.polygonLayer)&&this.map.removeLayer(this.polygonLayer),this.map.getLayer(this.polygonLayer+"-border")&&this.map.removeLayer(this.polygonLayer+"-border"),this.map.getLayer(this.polygonLabelLayer)&&this.map.removeLayer(this.polygonLabelLayer),this.map.getLayer(this.lineLayer)&&this.map.removeLayer(this.lineLayer),this.map.getLayer(this.lineLabelLayer)&&this.map.removeLayer(this.lineLabelLayer),this.map.getLayer(this.pointLayer)&&this.map.removeLayer(this.pointLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}},To={id:"zone-info"},Io=["innerHTML"];function Do(t,e,a,r,i,s){var l;return o.withDirectives((o.openBlock(),o.createElementBlock("div",To,[o.createElementVNode("div",{class:"iconfont close",onClick:e[0]||(e[0]=n=>i.showZone=!1)},""),o.createElementVNode("div",{class:"rich-context",innerHTML:(l=i.form)==null?void 0:l.name},null,8,Io)],512)),[[o.vShow,i.showZone]])}const Vo=S(No,[["render",Do],["__scopeId","data-v-c0864afc"]]),Ur="",Ro={name:"IdmPort",props:{map:{type:Object},port:{type:Object},beforeLayer:{type:String}},emits:["port"],data(){return{source:"port-source",layer:"port-layer",showPort:!1,form:{},marker:void 0}},computed:{computeLat(){return function(t){return v.LngLatHelper.lat2pretty(t,4).pretty}},computeLng(){return function(t){return v.LngLatHelper.lng2pretty(t,4).pretty}}},watch:{port:{handler(){var t,e;this.port?(this.handleRender(),(t=this.map)==null||t.on("click",[this.layer],this.handleClick)):(this.handleClear(),(e=this.map)==null||e.off("click",[this.layer],this.handleClick))}}},methods:{handleClick(t){var r;const e=t.features[0],a=(r=this.port)==null?void 0:r.features.filter(i=>{var s;return i.properties.id===((s=e==null?void 0:e.properties)==null?void 0:s.id)})[0];if(a){this.showPort=!0,this.form={...a.properties},this.form.lng=a.geometry.coordinates[0],this.form.lat=a.geometry.coordinates[1];const i=document.getElementById("port-info");this.marker?this.marker.setLngLat([t.lngLat.lng,t.lngLat.lat]):this.marker=new G.Marker(i).setLngLat([t.lngLat.lng,t.lngLat.lat]).setOffset([0,-85]).addTo(this.map)}},handleEmit(){this.$emit("port",this.form)},handleRender(){var t;this.map?this.port&&(this.map.getSource(this.source)?(t=this.map)==null||t.getSource(this.source).setData(this.port):(this.map.addSource(this.source,{type:"geojson",data:this.port}),this.map.addLayer({id:this.layer,type:"symbol",source:this.source,filter:["all",["==","$type","Point"],["!=","disabled",!0]],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"port","text-anchor":"left","text-field":"{name}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[1,0]},paint:{"text-color":"rgba(0, 0, 0, 0.8)","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.showPort=!1,this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}},ve=t=>(o.pushScopeId("data-v-30e545a2"),t=t(),o.popScopeId(),t),$o={id:"port-info"},Bo={class:"port-box"},Ao={class:"flex-start"},Mo=ve(()=>o.createElementVNode("label",null,"Name : ",-1)),Wo={class:"flex-start"},Oo=ve(()=>o.createElementVNode("label",null,"Position : ",-1)),jo={class:"flex-start"},Fo=ve(()=>o.createElementVNode("label",null,"LoCode : ",-1)),Uo={class:"flex-start",style:{"align-items":"flex-start"}},Ho=ve(()=>o.createElementVNode("label",null,"Region : ",-1));function Go(t,e,a,r,i,s){return o.withDirectives((o.openBlock(),o.createElementBlock("div",$o,[o.createElementVNode("div",{class:"close iconfont",onClick:e[0]||(e[0]=l=>i.showPort=!1)},""),o.createElementVNode("div",Bo,[o.createElementVNode("div",Ao,[Mo,o.createElementVNode("span",{onClick:e[1]||(e[1]=(...l)=>s.handleEmit&&s.handleEmit(...l))},o.toDisplayString(i.form.name),1)]),o.createElementVNode("div",Wo,[Oo,o.createElementVNode("span",null,o.toDisplayString(s.computeLat(i.form.lat))+", "+o.toDisplayString(s.computeLng(i.form.lng)),1)]),o.createElementVNode("div",jo,[Fo,o.createElementVNode("span",null,o.toDisplayString(i.form.loCode||"-"),1)]),o.createElementVNode("div",Uo,[Ho,o.createElementVNode("span",null,o.toDisplayString(i.form.city||"-")+", "+o.toDisplayString(i.form.country||"-"),1)])])],512)),[[o.vShow,i.showPort]])}const Zo=S(Ro,[["render",Go],["__scopeId","data-v-30e545a2"]]),Jo={name:"IdmLoadLine",props:{map:{type:Object},line:{type:Object},beforeLayer:{type:String}},data(){return{source:"load-line-source",lineLayer:"load-line-layer",lineLabelLayer:"load-line-label-layer"}},watch:{line:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.line&&(this.map.addSource(this.source,{type:"geojson",data:this.line}),this.map.addLayer({id:this.lineLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.75,"fill-color":["match",["get","val"],"LLGreen","#A0C0C0","LLRed","#F5A39D","LLBlue","#6B94E4","#ffffff"]}},this.beforeLayer),this.map.addLayer({id:this.lineLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-field":"{lbl} (Length < {shipLength}, {start} - {end})","text-rotation-alignment":"viewport","text-offset":[0,1],"text-size":10,"text-allow-overlap":!0},paint:{"text-opacity":.8}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.lineLayer)&&this.map.removeLayer(this.lineLayer),this.map.getLayer(this.lineLabelLayer)&&this.map.removeLayer(this.lineLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Xo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const qo=S(Jo,[["render",Xo]]),Yo={name:"IdmTimezone",props:{map:{type:Object},zone:{type:Object},beforeLayer:{type:String}},data(){return{source:"time-zone-source",zoneLayer:"time-zone-layer",zoneLabelLayer:"time-zone-label-layer"}},watch:{zone:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.zone&&(this.map.addSource(this.source,{type:"geojson",data:this.zone}),this.map.addLayer({id:this.zoneLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.5,"fill-color":["match",["get","offSet"],"-11.5","rgba(255,0,0,0.4)","-11","rgba(0,255,0,0.3)","-10.5","rgba(0,255,0,0.3)","-10","rgba(0,0,255,0.3)","-9.5","rgba(0,0,255,0.3)","-9","rgba(255,0,0,0.4)","-8.5","rgba(255,0,0,0.4)","-8","rgba(0,255,0,0.3)","-7.5","rgba(0,255,0,0.3)","-7","rgba(0,0,255,0.3)","-6.5","rgba(0,0,255,0.3)","-6","rgba(255,0,0,0.4)","-5.5","rgba(255,0,0,0.4)","-5","rgba(0,255,0,0.3)","-4.5","rgba(0,255,0,0.3)","-4","rgba(0,0,255,0.3)","-3.5","rgba(0,0,255,0.3)","-3","rgba(255,0,0,0.4)","-2.5","rgba(255,0,0,0.4)","-2","rgba(0,255,0,0.3)","-1.5","rgba(0,255,0,0.3)","-1","rgba(0,0,255,0.3)","-0.5","rgba(0,0,255,0.3)","+0","rgba(255,0,0,0.4)","+0.5","rgba(255,0,0,0.4)","+1","rgba(0,255,0,0.3)","+1.5","rgba(0,255,0,0.3)","+2","rgba(0,0,255,0.3)","+2.5","rgba(0,0,255,0.3)","+3","rgba(255,0,0,0.4)","+3.5","rgba(255,0,0,0.4)","+4","rgba(0,255,0,0.3)","+4.5","rgba(0,255,0,0.3)","+5","rgba(0,0,255,0.3)","+5.5","rgba(0,0,255,0.3)","+6","rgba(255,0,0,0.4)","+6.5","rgba(255,0,0,0.4)","+7","rgba(0,255,0,0.3)","+7.5","rgba(0,255,0,0.3)","+8","rgba(0,0,255,0.3)","+8.5","rgba(0,0,255,0.3)","+9","rgba(255,0,0,0.4)","+9.5","rgba(255,0,0,0.4)","+10","rgba(0,255,0,0.3)","+10.5","rgba(0,255,0,0.3)","+11","rgba(0,0,255,0.3)","+11.5","rgba(0,0,255,0.3)","rgba(255,0,0,0.4)"]}}),this.map.addLayer({id:this.zoneLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-field":"{offSet}","text-rotation-alignment":"viewport","text-size":12,"text-offset":[0,1]},paint:{"text-opacity":.8,"text-color":"#fff"}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.zoneLayer)&&this.map.removeLayer(this.zoneLayer),this.map.getLayer(this.zoneLabelLayer)&&this.map.removeLayer(this.zoneLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function Qo(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const Ko=S(Yo,[["render",Qo]]),ei={name:"IdmVoluntaryReportingArea",props:{map:{type:Object},area:{type:Object},beforeLayer:{type:String}},data(){return{source:"vra-source",areaLayer:"vra-layer",areaLabelLayer:"vra-label-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.areaLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.4,"fill-color":"#9f30f9"}},this.beforeLayer),this.map.addLayer({id:this.areaLayer+"-border",type:"line",source:this.source,filter:["==","$type","Polygon"],paint:{"line-width":1,"line-opacity":1,"line-color":"#9f30f9"}},this.beforeLayer),this.map.addLayer({id:this.areaLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.areaLayer)&&this.map.removeLayer(this.areaLayer),this.map.getLayer(this.areaLayer+"-border")&&this.map.removeLayer(this.areaLayer+"-border"),this.map.getLayer(this.areaLabelLayer)&&this.map.removeLayer(this.areaLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function ti(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const ai=S(ei,[["render",ti]]),oi={name:"IdmSpecialArea",props:{map:{type:Object},area:{type:Object},beforeLayer:{type:String}},data(){return{source:"special-area-source",areaLayer:"special-area-layer",areaLabelLayer:"special-area-label-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.area.features.forEach(t=>{t.geometry.type==="Polygon"&&t.geometry.coordinates.forEach(e=>v.convertToMonotonicLng2(e))}),this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.areaLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.4,"fill-color":["match",["get","val"],"DefaultStyle","rgb(0,0,0)","JWCriskArea","rgb(0,0,0)","rgb(0,0,0)"]}},this.beforeLayer),this.map.addLayer({id:this.areaLayer+"-border",type:"line",source:this.source,filter:["==","$type","Polygon"],paint:{"line-width":1,"line-opacity":.4,"line-color":"rgb(0,0,0)"}},this.beforeLayer),this.map.addLayer({id:this.areaLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-size":.1,"icon-image":"identify","text-anchor":"top","text-field":"{lbl}","text-rotation-alignment":"viewport","text-size":10,"text-offset":[0,-3.5]},paint:{"icon-opacity":.8,"text-color":"#000","text-halo-color":"#fff","text-halo-width":1}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.areaLayer)&&this.map.removeLayer(this.areaLayer),this.map.getLayer(this.areaLayer+"-border")&&this.map.removeLayer(this.areaLayer+"-border"),this.map.getLayer(this.areaLabelLayer)&&this.map.removeLayer(this.areaLabelLayer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function ii(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const ri=S(oi,[["render",ii]]),si={name:"IdmTerminator",props:{map:{type:Object},area:{type:Object}},data(){return{source:"terminator-source",layer:"terminator-layer"}},watch:{area:{handler(){this.handleRender()}}},methods:{handleRender(){this.map?(this.handleClear(),this.area&&(this.map.addSource(this.source,{type:"geojson",data:this.area}),this.map.addLayer({id:this.layer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-outline-color":"silver","fill-opacity":.5,"fill-color":"rgba(0, 0, 0, 0.4)"}}))):setTimeout(()=>{this.handleRender()},500)},handleClear(){this.map.getLayer(this.layer)&&this.map.removeLayer(this.layer),this.map.getSource(this.source)&&this.map.removeSource(this.source)}}};function ni(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const li=S(si,[["render",ni]]),Hr="",ci={name:"IdmLatLng",props:{map:{type:Object},show:{type:Boolean},bottom:{type:String,default:"70px"},toggleVersion:{type:Number}},data(){return{lngLat:void 0,source:"idm-lat-lng-source",layer:"idm-lat-lng-layer",labelLayer:"idm-lat-lng-label-layer",right:10}},watch:{show:{handler(){this.handleBind()},immediate:!0},map:{handler(){var t;this.map&&((t=this.map)==null||t.on("mousemove",this.handleMouseMove))},immediate:!0},toggleVersion:{handler(){var t,e,a;this.right=(((t=document.getElementsByClassName("legend-bars")[0])==null?void 0:t.clientWidth)||-10)+(((e=document.getElementsByClassName("available-layers-show")[0])==null?void 0:e.clientWidth)||0)+(((a=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:a.clientWidth)||0)+20},immediate:!0}},methods:{handleBind(){var t,e;this.show?((t=this.map)==null||t.on("zoomend",this.handleZoomEnd),this.handleRender()):(this.handleClear(),(e=this.map)==null||e.off("zoomend",this.handleZoomEnd))},handleMouseMove(t){const e=t.lngLat,a=v.LngLatHelper.lng2pretty(e.lng,2),r=v.LngLatHelper.lat2pretty(e.lat,2);this.lngLat={lng:a,lat:r}},handleComputeLatLngs(){var r;const t=(r=this.map)==null?void 0:r.getZoom();console.log(t);let e=30;t>4?e=10:t>3&&(e=15);const a=[];for(let i=-60;i<90;i+=e)a.push({type:"Feature",geometry:{type:"LineString",coordinates:[[-180,i],[180,i]]}});for(let i=-180;i<180;i+=e)a.push({type:"Feature",geometry:{type:"LineString",coordinates:[[i,-90],[i,90]]}});for(let i=180;i>-180;i-=e)for(let s=-60;s<90;s+=e)a.push({type:"Feature",geometry:{type:"Point",coordinates:[i,s]},properties:{val:`${s>0?s+" N":s===0?s:s*-1+" S"}, ${i>0?i+" E":i*-1+" W"}`}});return a},handleZoomEnd(){var e;const t=this.handleComputeLatLngs();(e=this.map)==null||e.getSource(this.source).setData(x.featureCollection(t))},handleRender(){if(this.map){const t=this.handleComputeLatLngs();this.map.addSource(this.source,{type:"geojson",data:{type:"FeatureCollection",features:t}}),this.map.addLayer({id:this.layer,type:"line",source:this.source,filter:["==","$type","LineString"],layout:{"line-join":"round","line-cap":"round"},paint:{"line-color":"rgba(0, 0, 0, 0.3)","line-width":1}}),this.map.addLayer({id:this.labelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-field":"{val}","text-rotation-alignment":"viewport","text-offset":[0,1],"text-size":10,"text-allow-overlap":!0},paint:{"text-opacity":.8}})}},handleClear(){var t,e,a,r,i,s;(t=this.map)!=null&&t.getLayer(this.layer)&&((e=this.map)==null||e.removeLayer(this.layer)),(a=this.map)!=null&&a.getLayer(this.labelLayer)&&((r=this.map)==null||r.removeLayer(this.labelLayer)),(i=this.map)!=null&&i.getSource(this.source)&&((s=this.map)==null||s.removeSource(this.source))}}},hi=(t=>(o.pushScopeId("data-v-51cc4052"),t=t(),o.popScopeId(),t))(()=>o.createElementVNode("span",null,", ",-1));function di(t,e,a,r,i,s){return i.lngLat?(o.openBlock(),o.createElementBlock("div",{key:0,class:"lat-lng-tip",style:o.normalizeStyle({right:i.right+"px",bottom:a.bottom})},[o.createElementVNode("span",null,o.toDisplayString(i.lngLat.lat.pretty),1),hi,o.createElementVNode("span",null,o.toDisplayString(i.lngLat.lng.pretty),1)],4)):o.createCommentVNode("",!0)}const Se=S(ci,[["render",di],["__scopeId","data-v-51cc4052"]]),pi={name:"IdmMeasure",props:{map:{type:Object},show:{type:Boolean}},data(){return{geojson:[],source:"measure-source",layer:"measure-layer",labelLayer:"measure-label-layer",tmpSource:"measure-tmp-source",tmpLayer:"measure-tmp-layer",tmpLabelLayer:"measure-tmp-label-layer",closeMarkers:{},pointMarkers:{},tipMarker:void 0,contextmenu:void 0,navigation:"RL"}},watch:{show:{handler(){this.handleBind()},immediate:!0},map:{handler(){this.map&&this.handleBind()}}},methods:{handleBind(){var t,e,a,r,i,s,l,n,c,h;if(this.show)(t=this.map)==null||t.getCanvas().addEventListener("keydown",this.handleKeydown),(e=this.map)==null||e.on("mousemove",this.handleMove),(a=this.map)==null||a.on("dblclick",this.handleDblClick),(r=this.map)==null||r.on("click",this.handleClick),(i=this.map)==null||i.on("contextmenu",this.handleContextmenu),this.map&&(this.map.getCanvas().style.cursor="crosshair");else{(s=this.map)==null||s.getCanvas().removeEventListener("keydown",this.handleKeydown),(l=this.map)==null||l.off("mousemove",this.handleMove),(n=this.map)==null||n.off("dblclick",this.handleDblClick),(c=this.map)==null||c.off("click",this.handleClick),(h=this.map)==null||h.off("contextmenu",this.handleContextmenu);for(const d of this.geojson)this.handleClear(d,!0);this.geojson=[],this.map&&(this.map.getCanvas().style.cursor="grab")}},handleKeydown(t){if(t.key==="Shift"){this.navigation=this.navigation==="RL"?"GC":"RL";const a=this.geojson.at(-1).features.filter(r=>r.geometry.type==="Point");a.length&&(a.at(-1).properties.mode=this.navigation)}},handleDrag(t){var a,r,i,s,l,n,c,h,d,p;const e=(r=(a=t.target)==null?void 0:a._element)==null?void 0:r.id;if((e==null?void 0:e.split("-").length)===2){const u=this.geojson.filter(y=>y.id===e.split("-")[0])[0];this.pointMarkers[u.id].filter(y=>{var _;return((_=y._element)==null?void 0:_.id)===e})[0].setLngLat([(s=(i=t.target)==null?void 0:i._lngLat)==null?void 0:s.lng,(n=(l=t.target)==null?void 0:l._lngLat)==null?void 0:n.lat]);let g;u.features.forEach((y,_)=>{if(y.geometry.type==="Point"&&y.properties.id==e.split("-")[1]){g=_;return}});const f=u.features.filter(y=>y.geometry.type==="Point");this.handleTmpPointUpdate(u,f[g-1],{lng:(h=(c=t.target)==null?void 0:c._lngLat)==null?void 0:h.lng,lat:(p=(d=t.target)==null?void 0:d._lngLat)==null?void 0:p.lat,properties:f[g].properties},g===f.length-1?void 0:f[g+1])}},handleDragEnd(t){var a,r,i,s,l,n,c,h,d,p;const e=(r=(a=t.target)==null?void 0:a._element)==null?void 0:r.id;if((e==null?void 0:e.split("-").length)===2){const u=this.geojson.filter(f=>f.id===e.split("-")[0])[0];this.pointMarkers[u.id].filter(f=>{var y;return((y=f._element)==null?void 0:y.id)===e})[0].setLngLat([(s=(i=t.target)==null?void 0:i._lngLat)==null?void 0:s.lng,(n=(l=t.target)==null?void 0:l._lngLat)==null?void 0:n.lat]);const g=u.features.filter(f=>f.geometry.type==="Point"&&f.properties.id==e.split("-")[1])[0];g.geometry.coordinates=[(h=(c=t.target)==null?void 0:c._lngLat)==null?void 0:h.lng,(p=(d=t.target)==null?void 0:d._lngLat)==null?void 0:p.lat],u.features=u.features.filter(f=>f.geometry.type==="Point"),this.handlePointUpdate(u)}},handleContextmenu(t){var a,r,i,s;t.preventDefault(),(a=this.contextmenu)==null||a.remove();const e=(s=(i=(r=t.originalEvent)==null?void 0:r.target)==null?void 0:i.parentElement)==null?void 0:s.id;if((e==null?void 0:e.split("-").length)===2){const n=this.geojson.filter(c=>c.id===e.split("-")[0])[0].features.filter(c=>c.geometry.type==="Point");if(n.length>2&&n.filter(h=>h.properties.id===(e==null?void 0:e.split("-")[1]))[0]){const h=document.createElement("div");h.className="point-contextmenu-marker",h.innerHTML=`<span id="del-${e}" class="del-point">Del</span>`,this.contextmenu=new G.Marker(h).setOffset([24,0]).setLngLat([t.lngLat.lng,t.lngLat.lat]).addTo(this.map)}}},handleClick(t){var a,r,i,s,l;(a=this.contextmenu)==null||a.remove();const e=t.originalEvent.target.className;if(e==="marker-close"){const n=(i=(r=t.originalEvent)==null?void 0:r.srcElement)==null?void 0:i.id,c=this.geojson.filter(h=>h.id===n)[0];c&&this.handleClear(c,!0),this.geojson=this.geojson.filter(h=>h.id!==n)}else if(e==="del-point"){const n=(l=(s=t.originalEvent.target.id)==null?void 0:s.replace("del-",""))==null?void 0:l.split("-"),c=this.geojson.filter(h=>h.id===n[0])[0];c.features=c.features.filter(h=>h.geometry.type==="Point"&&h.properties.id!==n[1]),this.handlePointUpdate(c)}else if(e!=="marker-label"){let n=this.geojson.at(-1);n||(n=x.featureCollection([],{id:new Date().getTime().toString()}),this.geojson.push(n)),n.features=n.features.filter(h=>h.geometry.type==="Point");const c=x.feature({type:"Point",coordinates:[t.lngLat.lng,t.lngLat.lat]},{id:new Date().getTime().toString(),mode:this.navigation});n.features.push(c),this.handlePointUpdate(n)}},handlePointUpdate(t){const e=t.features;if(e.length>1){let a=0;const r=[];for(let i=1;i<e.length;i++){const s=e[i-1],l=e[i],n=s.properties,c={lng:s.geometry.coordinates[0],lat:s.geometry.coordinates[1]},h={lng:l.geometry.coordinates[0],lat:l.geometry.coordinates[1]},d=v.calculateDistance(c,h,n.mode==="RL",2),p=v.calculateBearing(c,h,n.mode==="RL",2);a=v.LngLatHelper.roundPrecision(a+d,2);let u;n.mode==="RL"?u=v.convertToMonotonicLng([c,h]):u=v.convertToMonotonicLng(v.interpolateCoordinates(c,h,200));const m=x.lineString(u.map(g=>[g.lng,g.lat]));m.properties.dist=d,m.properties.bearing=p,m.properties.total=a,r.push(m)}e.push(...r),t.total=a}return this.handleRender(t),t},handleTmpPointUpdate(t,e,a,r){const i=x.featureCollection([]);let s,l;if(e){const c=e.properties,h={lng:e.geometry.coordinates[0],lat:e.geometry.coordinates[1]},d={lng:a.lng,lat:a.lat};s=v.calculateDistance(h,d,c.mode==="RL",2),l=v.calculateBearing(h,d,c.mode==="RL",2);let p;c.mode==="RL"?p=v.convertToMonotonicLng([h,d]):p=v.convertToMonotonicLng(v.interpolateCoordinates(h,d,200));const u=x.lineString(p.map(m=>[m.lng,m.lat]));u.properties.dist=s,u.properties.bearing=l,i.features.push(u)}if(r){const c=a.properties,h=a,d={lng:r.geometry.coordinates[0],lat:r.geometry.coordinates[1]};s=v.calculateDistance(h,d,c.mode==="RL",2),l=v.calculateBearing(h,d,c.mode==="RL",2);let p;c.mode==="RL"?p=v.convertToMonotonicLng([h,d]):p=v.convertToMonotonicLng(v.interpolateCoordinates(h,d,200));const u=x.lineString(p.map(m=>[m.lng,m.lat]));u.properties.dist=s,u.properties.bearing=l,i.features.push(u)}this.map.getSource(this.tmpSource)?this.map.getSource(this.tmpSource).setData(i):this.map.addSource(this.tmpSource,{type:"geojson",data:i}),this.map.getLayer(this.tmpLayer)||this.map.addLayer({id:this.tmpLayer,type:"line",source:this.tmpSource,filter:["==","$type","LineString"],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#f56c6c","line-width":2,"line-opacity":.85,"line-dasharray":[3,2]}}),this.map.getLayer(this.tmpLabelLayer)||this.map.addLayer({id:this.tmpLabelLayer,type:"symbol",source:this.tmpSource,filter:["==","$type","LineString"],layout:{"symbol-placement":"line-center","text-field":"{dist} nm","text-rotation-alignment":"map","text-size":12},paint:{"text-opacity":1,"text-color":"#fff","text-halo-color":"#f56c6c","text-halo-width":4,"text-halo-blur":0}});let n;if(r?n='<div class="marker-label">Drag and drop</div>':n=`<div class="marker-label">Tol distance: <b>${v.LngLatHelper.roundPrecision((t.total??0)+s,2)}</b>nm, bearing: <b>${l}</b>°</div><div class="marker-label">${this.navigation==="RL"?"RL":"GC"} mode, using 'Shift' to switch</div><div class="marker-label">Double click to end</div>`,this.tipMarker)this.tipMarker._element.innerHTML=n,this.tipMarker.setLngLat([a.lng,a.lat]);else{const c=document.createElement("div");c.className="tip-marker",c.innerHTML=n,this.tipMarker=new G.Marker(c).setOffset([140,0]).setLngLat([a.lng,a.lat]).addTo(this.map)}},handleMove(t){this.map.getCanvas().style.cursor="crosshair";let e=this.geojson.at(-1);e||(e=x.featureCollection([],{id:new Date().getTime().toString()}),this.geojson.push(e));const a=e.features.filter(r=>r.geometry.type==="Point");a!=null&&a.length&&this.handleTmpPointUpdate(e,a.at(-1),{lng:t.lngLat.lng,lat:t.lngLat.lat})},handleDblClick(t){t.preventDefault();let e=this.geojson.at(-1);e.closed=!0,this.handleRender(e),e=x.featureCollection([],{id:new Date().getTime().toString()}),this.geojson.push(e)},handleRender(t){var e;if((e=t==null?void 0:t.features)!=null&&e.length){const a=`${t.id}-${this.source}`,r=`${t.id}-${this.layer}`,i=`${t.id}-${this.labelLayer}`;this.map.getSource(a)?this.map.getSource(a).setData(t):this.map.addSource(a,{type:"geojson",data:t}),this.handleClear(t,!1),this.map.addLayer({id:r,type:"line",source:a,filter:["==","$type","LineString"],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#f56c6c","line-width":2}}),this.map.addLayer({id:i,type:"symbol",source:a,filter:["==","$type","LineString"],layout:{"symbol-placement":"line-center","text-field":"{dist}nm,{bearing}°","text-rotation-alignment":"map","text-size":12},paint:{"text-opacity":1,"text-color":"#fff","text-halo-color":"#f56c6c","text-halo-width":4,"text-halo-blur":0}});const s=t.features.filter(l=>l.geometry.type==="Point");for(const l of s){const n=document.createElement("div");n.id=`${t.id}-${l.properties.id}`,n.className=`${t.closed?"point-marker closed":"point-marker"}`,n.innerHTML='<div class="marker-circle"></div>';const c=new G.Marker({element:n,draggable:!0,contextmenu:!0}).setLngLat(l.geometry.coordinates).addTo(this.map);c.on("drag",this.handleDrag),c.on("dragend",this.handleDragEnd),this.pointMarkers[t.id]?this.pointMarkers[t.id].push(c):this.pointMarkers[t.id]=[c]}if(t.closed){const l=s.at(-1),c=t.features.filter(d=>d.geometry.type==="LineString").at(-1),h=document.createElement("div");h.className="point-summary-marker",h.innerHTML=`<div id="${t.id}" class="marker-close">×</div><div class="marker-label">Tol: ${c.properties.total}nm</div>`,this.closeMarkers[t.id]=new G.Marker(h).setOffset([60,0]).setLngLat(l.geometry.coordinates).addTo(this.map)}}},handleClear(t,e=!0){var s,l,n,c,h,d,p,u,m;const a=`${t.id}-${this.source}`,r=`${t.id}-${this.layer}`,i=`${t.id}-${this.labelLayer}`;(s=this.map)!=null&&s.getLayer(r)&&this.map.removeLayer(r),(l=this.map)!=null&&l.getLayer(i)&&this.map.removeLayer(i),(n=this.map)!=null&&n.getLayer(this.tmpLayer)&&this.map.removeLayer(this.tmpLayer),(c=this.map)!=null&&c.getLayer(this.tmpLabelLayer)&&this.map.removeLayer(this.tmpLabelLayer),(h=this.closeMarkers[t.id])==null||h.remove(),this.closeMarkers[t.id]=void 0,(d=this.pointMarkers[t.id])==null||d.forEach(g=>{g==null||g.remove()}),this.pointMarkers[t.id]=[],(p=this.tipMarker)==null||p.remove(),this.tipMarker=void 0,e&&((u=this.map)!=null&&u.getSource(a))&&this.map.removeSource(a),e&&((m=this.map)!=null&&m.getSource(this.tmpSource))&&this.map.removeSource(this.tmpSource)}}};function mi(t,e,a,r,i,s){return o.openBlock(),o.createElementBlock("div")}const yi=S(pi,[["render",mi]]),Zr="",fi={name:"IdmENC",props:{map:{type:Object},enabled:{type:Boolean},beforeLayer:{type:String,default:"grayland"},bottom:{type:String,default:"260px"},token:{type:String,default:""},toggleVersion:{type:Number},permission:{type:Number}},emits:["enc"],data(){return{helper:v.CompanyHelper,vendor:this.$attrs.permission&v.CompanyHelper.LEVEL.Supper?"hi":"i4",right:10}},watch:{vendor:{handler(){this.$emit("enc",this.vendor)},immediate:!0},toggleVersion:{handler(){var t,e;this.right=(((t=document.getElementsByClassName("available-layers-show")[0])==null?void 0:t.clientWidth)||0)+(((e=document.getElementsByClassName("fleet-list-container")[0])==null?void 0:e.clientWidth)||0)+10},immediate:!0}},methods:{}},Pe=t=>(o.pushScopeId("data-v-ab627b83"),t=t(),o.popScopeId(),t),ui={key:0},gi={class:"bar-item"},bi=[Pe(()=>o.createElementVNode("span",{class:"iconfont"},"HI",-1))],_i=[Pe(()=>o.createElementVNode("span",{class:"iconfont"},"I4",-1))];function Li(t,e,a,r,i,s){return a.enabled&&a.permission&i.helper.LEVEL.Supper?(o.openBlock(),o.createElementBlock("div",ui,[o.createElementVNode("div",{class:"menu-bar-box",style:o.normalizeStyle({position:"absolute",right:i.right+"px",bottom:a.bottom})},[o.createElementVNode("div",gi,[o.createElementVNode("div",{class:o.normalizeClass(i.vendor==="hi"?"menu-icon active":"menu-icon"),onClick:e[0]||(e[0]=l=>i.vendor="hi")},bi,2),o.createElementVNode("div",{class:o.normalizeClass(i.vendor==="i4"?"menu-icon active":"menu-icon"),onClick:e[1]||(e[1]=l=>i.vendor="i4")},_i,2)])],4)])):o.createCommentVNode("",!0)}const wi=S(fi,[["render",Li],["__scopeId","data-v-ab627b83"]]),qr="",vi={name:"IdmGLV2",components:{IdmGlLayer:yt,IdmWindBarb:vt,IdmWindParticle:Et,IdmCurrents:Rt,IdmCurrentParticle:Wt,IdmSigWave:Ft,IdmSwell:Gt,IdmPrmsl:Xt,IdmIceberg:Qt,IdmTropicals:Ce,IdmPrecip3h:Ca,IdmVisibility:Pa,IdmWaterTemp:Va,IdmTemp:Ma,IdmArctic:Ua,IdmWarZone:xo,IdmGmdssArea:ko,IdmEcaZone:Po,IdmAlertZone:Vo,IdmPort:Zo,IdmLoadLine:qo,IdmTimezone:Ko,IdmVRA:ai,IdmSpecialArea:ri,IdmTerminator:li,IdmLatLng:Se,IdmMeasure:yi,IdmPoint:Lo,IdmENC:wi},props:{map:{type:Object,default:void 0},token:{type:String},ts:{type:String},beforeLayer:{type:String,default:""}},data(){return{weatherLayers:{},activeWeatherLayers:[],weatherWeight:0,otherLayers:{},otherWeight:0,showCoord:!1,showMeasure:!1,showPoint:!1,show3d:!1,meteo:void 0,source:"",gateway:"https://cbe.idmwx.com",mapProjection:"mercator",zoom:6,viewport:void 0,particleFactor:void 0,showRampColor:!1,activeWindLayer:!1,showWindParticle:!1,showCurrentParticle:!1,toggleVersion:0,enc:"",defaultMeteoToken:"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNseTVudHJzYzAwNWUwbHBsZHkyaDRqczMiLCJyb2xlIjoxLCJuYW1lIjoiZmFrZUBvcm13eC5jb20iLCJwbGF0SWQiOiJnZDBtdDFkIiwiY29tcGFueSI6eyJpZCI6bnVsbCwiY2hpbGRyZW4iOltdfSwiaWF0IjoxNzIzMDI0MDI0LCJleHAiOjM5MzA1NDQwMjR9.RrKcdcMnq-FxBLJQ-i6lx2FscDE46y8EvHIemPW4HTg",helper:new ze}},watch:{ts:{handler(t,e){t&&e&&O(t).utc().format("yyyy-MM-DD HH")!==O(e).utc().format("yyyy-MM-DD HH")&&this.$nextTick(()=>{this.handleDateChange({tropicals:!1})})},immediate:!0},map:{handler(){this.map&&(this.map.on("zoomend",this.handleDragEndWithZoom4Json),this.map.on("dragend",this.handleDragEndWithZoom4Json),this.map.on("move",this.handleDragEndWithZoom4Image),this.viewport=new we(this.map),this.handleRampColorInitial())},immediate:!0},enc:{handler(t,e){var a,r,i,s,l,n,c,h;t?((r=(a=this.map)==null?void 0:a.getLayer(t))==null||r.setLayoutProperty("visibility","visible"),(s=(i=this.map)==null?void 0:i.getLayer(e))==null||s.setLayoutProperty("visibility","none")):((n=(l=this.map)==null?void 0:l.getLayer("i4"))==null||n.setLayoutProperty("visibility","none"),(h=(c=this.map)==null?void 0:c.getLayer("hi"))==null||h.setLayoutProperty("visibility","none"))}},activeWeatherLayers:{handler(){var t,e,a,r,i,s,l,n,c,h,d,p,u,m,g,f,y,_;if(!this.map)return!1;this.activeWeatherLayers.length>0?(console.log(3333,this.activeWeatherLayers.length),(e=(t=this.map)==null?void 0:t.getLayer(this.enc))==null||e.setLayoutProperty("visibility","none"),(r=(a=this.map)==null?void 0:a.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))==null||r.setLayoutProperty("visibility","visible"),(s=this.map)!=null&&s.getLayer((i=this.viewport)==null?void 0:i.rampColorLayer)&&((l=this.map)!=null&&l.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&this.mapProjection==="mercator"&&((c=this.map)==null||c.moveLayer((n=this.viewport)==null?void 0:n.rampColorLayer,this.helper.mapboxCustomer.layers.countryBoundary.id)),(d=this.map)!=null&&d.getLayer((h=this.viewport)==null?void 0:h.particleLayer)&&((p=this.map)!=null&&p.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&this.mapProjection==="mercator"&&((m=this.map)==null||m.moveLayer((u=this.viewport)==null?void 0:u.particleLayer,this.helper.mapboxCustomer.layers.countryBoundary.id))):(console.log(444,this.activeWeatherLayers.length),(f=(g=this.map)==null?void 0:g.getLayer(this.enc))==null||f.setLayoutProperty("visibility","visible"),(_=(y=this.map)==null?void 0:y.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))==null||_.setLayoutProperty("visibility","none"))},immediate:!0}},methods:{async fetchWeatherLayers(t={tropicals:!1}){var i,s,l,n,c,h,d,p;const e=new Date().valueOf();let a=0,r=0;if(this.map){const u=((i=this.map)==null?void 0:i.getZoom())+1,m=(s=this.map)==null?void 0:s.getBounds(),g=`${m._sw.lng},${m._sw.lat},${m._ne.lng},${m._ne.lat}`;if(this.handleRampColorState(),this.particleFactor){const f=v.LayerHelper.WEATHER_LAYERS.find(y=>{var _;return((_=y.peer)==null?void 0:_.weight)===this.particleFactor.weight});this.particleFactor.particle?this.weatherWeight=this.weatherWeight&f.weight?this.weatherWeight:this.weatherWeight+f.weight:this.weatherWeight=this.weatherWeight&f.weight?this.weatherWeight-f.weight:this.weatherWeight}if(this.weatherWeight>0){let f=this.weatherWeight,y;if(t.tropicals||this.weatherWeight&256&&(y=this.weatherLayers.tropicals,y&&(f-=256,y.version=Math.random()+1)),f>0){const _=await Z.get(`${this.gateway}/api/arc/weather/layers/links?l=${f}&v=${this.source}&z=${u}&bbox=${g}&t=${this.ts}`,{headers:{Authorization:this.token||this.defaultMeteoToken}});if(r=new Date().valueOf()-(e+a),console.log("weather links elapsed: ",r,", total: ",a+=r),((l=_==null?void 0:_.data)==null?void 0:l.code)===0){const b=(n=_==null?void 0:_.data)==null?void 0:n.data,w=[];for(const L in b)L==="ice-edge"&&(b[L]="https://idm-hz.oss-cn-hangzhou.aliyuncs.com/test/sea_ice_contours.geojson"),L!=="tropicals"&&w.push(Z.get(b[L],{headers:{Authorization:this.token||this.defaultMeteoToken,key:L},responseType:/\.(jpg|png)$/.test(b[L])?"blob":"json"}).catch(P=>{console.log(`[${L}] fetch layer error: ${P}`)}));const C=await Promise.all(w);this.weatherLayers={},C.map(L=>{var I,V,R,A;const P=((I=L==null?void 0:L.data)==null?void 0:I.data)||(L==null?void 0:L.data),N=(R=(V=L==null?void 0:L.config)==null?void 0:V.headers)==null?void 0:R.key;N&&P&&(this.weatherLayers[N]={raw:P,type:((A=L==null?void 0:L.config)==null?void 0:A.responseType)==="blob"?"image":"json",etime:this.ts})}),b.tropicals&&Z.get(b.tropicals,{headers:{Authorization:this.token||this.defaultMeteoToken,key:"tropicals"}}).then(L=>{var I,V,R;const P=Ee.TropicalHelper.convert2Geojson(((I=L==null?void 0:L.data)==null?void 0:I.data)||(L==null?void 0:L.data)),N=(R=(V=L==null?void 0:L.config)==null?void 0:V.headers)==null?void 0:R.key;this.weatherLayers[N]={data:P,active:!0,cached:!1,type:"json",etime:this.ts,version:Math.random()+1}})}if(r=new Date().valueOf()-(e+a),console.log("weather layers elapsed: ",r,", total: ",a+=r),this.weatherLayers["swell-direction"]||this.weatherLayers["swell-height"]){const b=(c=this.weatherLayers["swell-direction"])==null?void 0:c.raw,w=(h=this.weatherLayers["swell-height"])==null?void 0:h.raw;delete this.weatherLayers["swell-direction"],delete this.weatherLayers["swell-height"],this.weatherLayers.swell={type:"json",direction:b,height:{raw:w},etime:this.ts}}if(this.weatherLayers["current-direction"]||this.weatherLayers["current-speed"]){const b=(d=this.weatherLayers["current-direction"])==null?void 0:d.raw,w=(p=this.weatherLayers["current-speed"])==null?void 0:p.raw;delete this.weatherLayers["current-direction"],delete this.weatherLayers["current-speed"],this.weatherLayers.current={type:"json",direction:b,speed:{raw:w},etime:this.ts}}}y&&(y.etime=this.ts,y.cached=!0,this.weatherLayers.tropicals=y)}this.handleWeatherLayerToggle(),this.handleDragEndWithZoom4Json()}this.toggleVersion=Math.random()},async fetchOtherLayers(t={all:!1,dayNight:!1,enc:!1}){var e,a,r,i;if(this.map){let s=this.otherWeight;if(s){let l=!1;if(this.otherWeight&2048&&(s=this.otherWeight-2048,l=!0),s){if(t.all){const n=await Z.get(`${this.gateway}/api/arc/other/layers/links?l=${s}&t=${this.ts}`,{headers:{Authorization:this.token||this.defaultMeteoToken}});if(((e=n==null?void 0:n.data)==null?void 0:e.code)===0){const c=(a=n==null?void 0:n.data)==null?void 0:a.data,h=[];for(const p in c)h.push(Z.get(c[p],{headers:{Authorization:this.token||this.defaultMeteoToken,key:p}}));const d=await Promise.all(h);this.otherLayers={enc:l},d.map(p=>{var g,f,y;const u=((g=p==null?void 0:p.data)==null?void 0:g.data)||(p==null?void 0:p.data),m=(y=(f=p==null?void 0:p.config)==null?void 0:f.headers)==null?void 0:y.key;this.otherLayers[m]=u})}}else if(t.dayNight&&s&1024){const n=await Z.get(`${this.gateway}/api/arc/other/layers/links?l=1024&t=${this.ts}`,{headers:{Authorization:this.token||this.defaultMeteoToken}});if(((r=n==null?void 0:n.data)==null?void 0:r.code)===0){const c=(i=n==null?void 0:n.data)==null?void 0:i.data,h=[];for(const p in c)h.push(Z.get(c[p],{headers:{Authorization:this.token||this.defaultMeteoToken,key:p}}));(await Promise.all(h)).map(p=>{var g,f,y;const u=((g=p==null?void 0:p.data)==null?void 0:g.data)||(p==null?void 0:p.data),m=(y=(f=p==null?void 0:p.config)==null?void 0:f.headers)==null?void 0:y.key;this.otherLayers[m]=u})}}}else this.otherLayers={enc:l}}else this.otherLayers={};this.handleBeforeLayerToggle()}},handleRampColorState(){var t;if(this.showRampColor=!1,this.showWindParticle=!1,this.showCurrentParticle=!1,(t=this.particleFactor)!=null&&t.particle)this.showRampColor=!0,this.showWindParticle=this.particleFactor.key==="wind",this.showCurrentParticle=this.particleFactor.key==="current",this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json");else for(const e of this.activeWeatherLayers)["png","jpg"].includes(e.type)&&(this.showRampColor=!0);this.activeWindLayer=!!this.activeWeatherLayers.find(e=>e.key==="wind"),this.$refs.layer&&(this.$refs.layer.activeWeatherLayers=this.activeWeatherLayers)},handleRampColorInitial(){var t,e,a,r,i,s,l,n,c,h,d,p;this.viewport.map.getSource((t=this.viewport)==null?void 0:t.rampColorSource)||this.viewport.map.addSource((e=this.viewport)==null?void 0:e.rampColorSource,{type:"canvas",canvas:(a=this.viewport)==null?void 0:a.rampColorCanvas,animate:!0,coordinates:this.viewport.getBoundLngLat()}),this.viewport.map.getLayer((r=this.viewport)==null?void 0:r.rampColorLayer)||this.viewport.map.addLayer({type:"raster",id:(i=this.viewport)==null?void 0:i.rampColorLayer,source:(s=this.viewport)==null?void 0:s.rampColorSource,layout:{visibility:"none"}},this.beforeLayer),this.viewport.map.getSource((l=this.viewport)==null?void 0:l.particleSource)||this.viewport.map.addSource((n=this.viewport)==null?void 0:n.particleSource,{type:"canvas",canvas:(c=this.viewport)==null?void 0:c.particleCanvas,animate:!0,coordinates:this.viewport.getBoundLngLat()}),this.viewport.map.getLayer((h=this.viewport)==null?void 0:h.particleLayer)||this.viewport.map.addLayer({type:"raster",id:(d=this.viewport)==null?void 0:d.particleLayer,source:(p=this.viewport)==null?void 0:p.particleSource,layout:{visibility:"none"}},this.beforeLayer)},handleDragEndWithZoom4Json(){var h,d,p,u;const t=new Date().valueOf();let e=0,a=0;const r=(h=this.map)==null?void 0:h.getBounds(),i=this.map.getZoom(),s=v.convertToStandardLng(r._sw.lng),l=v.convertToStandardLng(r._ne.lng),n=Math.floor(r._sw.lat),c=Math.ceil(r._ne.lat);for(const m in this.weatherLayers)if(this.weatherLayers[m].active&&this.weatherLayers[m].type==="json"){this.weatherLayers[m].active=!1,this.weatherLayers[m].version=Math.random()+1;let g=[];if(["swell","current"].includes(m)){const f=((d=this.weatherLayers[m])==null?void 0:d.direction)||{};for(const y in f)if(y>n&&y<c&&(!(i<=this.zoom)||y%(i<this.zoom/2?5:3)===0)){const _=f[y].lng;s>l?_.forEach((b,w)=>{var C;if((b>=s&&b<=180||b>=-180&&b<=l)&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const L=x.point([b,y],{val:f[y].val[w],spd:(C=f[y].spd)==null?void 0:C[w]});g.push(L)}}):_.forEach((b,w)=>{var C;if(b>=s&&b<=l&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const L=x.point([b,y],{val:f[y].val[w],spd:(C=f[y].spd)==null?void 0:C[w]});g.push(L)}})}if(a=new Date().valueOf()-(t+e),console.log("direction elapsed: ",a,", total: ",e+=a),m==="swell"){const y=this.weatherLayers[m].height;if(y){if(!y.data){const _=[];for(const b in(p=y.raw)==null?void 0:p.LineString){const w=y.raw.LineString[b];for(const C of w)_.push(x.lineString(C,{val:Number(b)}));y.data=x.featureCollection(_)}}if(y.data){const _=this.handleBboxClip(y.data,r);g=g.concat(_)}a=new Date().valueOf()-(t+e),console.log("height elapsed: ",a,", total: ",e+=a)}}if(m==="current"){const y=this.weatherLayers[m].speed;if(y){if(!y.data){const b=[];for(const w in(u=y.raw)==null?void 0:u.Polygon){const C=y.raw.Polygon[w];for(const L of C)b.push(x.polygon(L,{val:Number(w)}))}y.data=x.featureCollection(b)}const _=i<this.zoom?y.data.features.filter(b=>b.properties.val>.5):y.data.features;g=g.concat(_),a=new Date().valueOf()-(t+e),console.log("speed elapsed: ",a,", total: ",e+=a)}}}else if(m==="wind"){const f=this.weatherLayers.wind.raw;for(const y in f)if(y>n&&y<c&&(!(i<=this.zoom)||y%(i<this.zoom/2?5:3)===0)){const _=f[y].lng;s>l?_.forEach((b,w)=>{if((b>=s&&b<=180||b>=-180&&b<=l)&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const C=x.point([b,y],{val:f[y].val[w],spd:f[y].spd[w]});g.push(C)}}):_.forEach((b,w)=>{if(b>=s&&b<=l&&(!(i<=this.zoom)||b%(i<this.zoom/2?5:3)===0)){const C=x.point([b,y],{val:f[y].val[w],spd:f[y].spd[w]});g.push(C)}})}a=new Date().valueOf()-(t+e),console.log("wind barb elapsed: ",a,", total: ",e+=a)}else if(m==="sig-wave-height"){if(this.weatherLayers[m].data)g=this.weatherLayers[m].data;else{const f=this.weatherLayers[m].raw;if(f){const y=[];for(const _ in f.Polygon){const b=f.Polygon[_];for(const w of b)y.push(x.polygon(w,{val:Number(_)}))}g=g.concat(y)}}a=new Date().valueOf()-(t+e),console.log("sigWave elapsed: ",a,", total: ",e+=a)}else if(m==="prmsl"){if(this.weatherLayers[m].data)g=this.weatherLayers[m].data;else{const f=this.weatherLayers[m].raw;if(f){const y=[];for(const _ in f.LineString){const b=f.LineString[_];for(const w of b)y.push(x.lineString(w,{val:Number(_)}))}for(const _ in f.Point)f.Point[_].lng.forEach((b,w)=>{b=v.convertToStandardLng(b),y.push(x.point([b,_],{val:f.Point[_].val[w],type:f.Point[_].type[w]}))});g=g.concat(y)}}a=new Date().valueOf()-(t+e),console.log("prmsl elapsed: ",a,", total: ",e+=a)}else if(m==="arctic"||m==="iceberg"){if(this.weatherLayers[m].data)g=this.weatherLayers[m].data;else{const f=this.weatherLayers[m].raw;if(f){const y=[];for(const _ in f.LineString){const b=f.LineString[_];for(const w of b)y.push(x.lineString(w,{val:Number(_)}))}g=g.concat(y)}}a=new Date().valueOf()-(t+e)}console.log(m," elapsed: ",a,", total: ",e+=a),g.length&&(this.weatherLayers[m].data=x.featureCollection(g)),this.weatherLayers[m].active=!0,this.weatherLayers[m].version=Math.random()+1}},handleDragEndWithZoom4Image(){for(const t in this.weatherLayers)this.weatherLayers[t].active&&this.weatherLayers[t].type==="image"&&(this.weatherLayers[t].active=!0,this.weatherLayers[t].version=Math.random()+1)},handleBboxClip(t,e){const a=[],r=v.convertToStandardLng(e._sw.lng),i=v.convertToStandardLng(e._ne.lng);return t.features.forEach(s=>{if(s.geometry.type!=="Point")if(r>i){let l=[r,e._sw.lat,180,e._ne.lat],n=x.bboxClip(s,l);n.geometry.coordinates.length&&a.push(n),l=[-180,e._sw.lat,i,e._ne.lat],n=x.bboxClip(s,l),n.geometry.coordinates.length&&a.push(n)}else{const l=[r,e._sw.lat,i,e._ne.lat],n=x.bboxClip(s,l);n.geometry.coordinates.length&&a.push(n)}else a.push(s)}),a},handleWeatherLayerToggle(){var t;for(const e in this.weatherLayers)this.weatherLayers[e].active=!1,this.weatherLayers[e].version=Math.random()+1;for(const e of this.activeWeatherLayers){let a=e.key;a.indexOf("swell")>-1?a="swell":a.indexOf("current")>-1&&(a="current"),this.weatherLayers[a]&&(this.weatherLayers[a].active=!0,this.weatherLayers[a].version=Math.random()+1,((t=this.particleFactor)==null?void 0:t.key)===a&&this.weatherLayers[`${a}-particle`]&&(this.weatherLayers[`${a}-particle`].active=this.particleFactor.particle))}this.handleBeforeLayerToggle()},handleBeforeLayerToggle(){var t,e,a,r,i,s,l,n,c,h,d,p,u;(t=this.map)!=null&&t.getLayer(this.beforeLayer)&&((e=this.activeWeatherLayers)!=null&&e.length||(a=this.otherLayers)!=null&&a["war-zones"]||(r=this.otherLayers)!=null&&r["gmdss-areas"]||(i=this.otherLayers)!=null&&i["load-lines"]||(s=this.otherLayers)!=null&&s["high-risk-area"]||(l=this.otherLayers)!=null&&l["time-zones"]||(n=this.otherLayers)!=null&&n.pirates||(c=this.otherLayers)!=null&&c.ports||(h=this.otherLayers)!=null&&h.enc||(d=this.otherLayers)!=null&&d["voluntary-reporting-area"]||(p=this.otherLayers)!=null&&p["eca-zones"]||(u=this.otherLayers)!=null&&u["special-area"])&&this.map.setLayoutProperty(this.beforeLayer,"visibility","visible")},handleDateChange(t={tropicals:!1}){this.fetchWeatherLayers(t),this.fetchOtherLayers({dayNight:!0})},handleWeatherLayerChange(t,e,a){if(!this.map)setTimeout(()=>{this.handleWeatherLayerChange(t,e,a)},500);else{this.activeWeatherLayers=e;const r=this.activeWeatherLayers.some(l=>["wind","current"].includes(l.key)),i=this.activeWeatherLayers.some(l=>["png","jpg"].includes(l.type));r&&!i?(this.particleFactor=this.activeWeatherLayers.find(l=>["wind","current"].includes(l.key)),this.particleFactor.particle=!0):i&&this.particleFactor&&(this.particleFactor.particle=!1);const s=e==null?void 0:e.reduce((l,n)=>l+(l&(n==null?void 0:n.weight)?0:n==null?void 0:n.weight),0);this.weatherWeight!==s||this.source!==a?(this.source=a,this.weatherWeight=s,this.fetchWeatherLayers({tropicals:!1})):this.handleWeatherLayerToggle()}},handleOtherLayerChange(t){if(!this.map)setTimeout(()=>{this.handleOtherLayerChange(t)},500);else{const e=t==null?void 0:t.reduce((a,r)=>a+(r==null?void 0:r.weight),0);t.find(a=>a.key==="enc")?this.enc="i4":this.enc="",this.otherWeight!=e&&(this.otherWeight=e,this.fetchOtherLayers({all:!0}))}},async handlePointChange(t){const e=this.ts?O(this.ts):O(),a={lat:t.lat,lng:t.lng,ts:e.utc().format(),wt:!0,src:this.source},r=await Z.get(`${this.gateway}/api/arc/meteo/query`,{params:a,headers:{Authorization:this.token||this.defaultMeteoToken}});(r==null?void 0:r.status)===200&&(this.meteo={...r==null?void 0:r.data,...t})},handle3dToggle(t){var e,a,r,i,s,l,n,c,h,d,p,u,m,g,f,y,_,b,w,C;t?(this.map.setProjection("globe"),this.mapProjection="globe",(a=this.map)!=null&&a.getLayer((e=this.viewport)==null?void 0:e.rampColorLayer)&&((r=this.map)!=null&&r.getLayer(this.helper.mapboxCustomer.layers.water.id))&&((s=this.map)==null||s.moveLayer((i=this.viewport)==null?void 0:i.rampColorLayer,this.helper.mapboxCustomer.layers.water.id)),(n=this.map)!=null&&n.getLayer((l=this.viewport)==null?void 0:l.particleLayer)&&((c=this.map)!=null&&c.getLayer(this.helper.mapboxCustomer.layers.water.id))&&((d=this.map)==null||d.moveLayer((h=this.viewport)==null?void 0:h.particleLayer,this.helper.mapboxCustomer.layers.water.id)),this.map.off("zoomend",this.handleDragEndWithZoom4Json),this.map.off("dragend",this.handleDragEndWithZoom4Json),this.map.off("move",this.handleDragEndWithZoom4Image)):(this.map.setProjection("mercator"),this.mapProjection="mercator",this.map.on("zoomend",this.handleDragEndWithZoom4Json),this.map.on("dragend",this.handleDragEndWithZoom4Json),this.map.on("move",this.handleDragEndWithZoom4Image),this.handleDragEndWithZoom4Image(),this.handleDragEndWithZoom4Json(),(u=this.map)!=null&&u.getLayer((p=this.viewport)==null?void 0:p.rampColorLayer)&&((m=this.map)!=null&&m.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&((f=this.map)==null||f.moveLayer((g=this.viewport)==null?void 0:g.rampColorLayer,this.helper.mapboxCustomer.layers.countryBoundary.id)),(_=this.map)!=null&&_.getLayer((y=this.viewport)==null?void 0:y.particleLayer)&&((b=this.map)!=null&&b.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id))&&((C=this.map)==null||C.moveLayer((w=this.viewport)==null?void 0:w.particleLayer,this.helper.mapboxCustomer.layers.countryBoundary.id)))},handleParticle(t){this.particleFactor=t,this.fetchWeatherLayers({tropicals:!1})}}},xi={key:0,className:"map-gl-home"};function Ci(t,e,a,r,i,s){var j,le,F,E,$,ce,U,he,Q,K,ee,ye,fe,ue,ge,be,_e,Le,ke,Te,Ie,De,Ve,Re,$e,Be;const l=o.resolveComponent("IdmGlLayer"),n=o.resolveComponent("IdmENC"),c=o.resolveComponent("IdmSigWave"),h=o.resolveComponent("IdmSwell"),d=o.resolveComponent("IdmPrmsl"),p=o.resolveComponent("IdmIceberg"),u=o.resolveComponent("IdmTropicals"),m=o.resolveComponent("IdmCurrents"),g=o.resolveComponent("IdmCurrentParticle"),f=o.resolveComponent("IdmWindBarb"),y=o.resolveComponent("IdmWindParticle"),_=o.resolveComponent("IdmPrecip3h"),b=o.resolveComponent("IdmVisibility"),w=o.resolveComponent("IdmWaterTemp"),C=o.resolveComponent("IdmTemp"),L=o.resolveComponent("IdmArctic"),P=o.resolveComponent("IdmWarZone"),N=o.resolveComponent("IdmGmdssArea"),I=o.resolveComponent("IdmEcaZone"),V=o.resolveComponent("IdmAlertZone"),R=o.resolveComponent("IdmPort"),A=o.resolveComponent("IdmLoadLine"),ae=o.resolveComponent("IdmTimezone"),oe=o.resolveComponent("IdmVRA"),ie=o.resolveComponent("IdmSpecialArea"),re=o.resolveComponent("IdmTerminator"),se=o.resolveComponent("IdmLatLng"),ne=o.resolveComponent("IdmMeasure"),W=o.resolveComponent("IdmPoint");return a.map?(o.openBlock(),o.createElementBlock("div",xi,[o.createVNode(l,o.mergeProps({ref:"layer",map:a.map,"toggle-version":i.toggleVersion,"map-projection":i.mapProjection},t.$attrs,{onWeather:s.handleWeatherLayerChange,onOther:s.handleOtherLayerChange,onCoordinate:e[0]||(e[0]=H=>i.showCoord=H),onMeasure:e[1]||(e[1]=H=>i.showMeasure=H),onPoint:e[2]||(e[2]=H=>i.showPoint=H),on3d:s.handle3dToggle,onToggleVersion:e[3]||(e[3]=H=>i.toggleVersion=H)}),null,16,["map","toggle-version","map-projection","onWeather","onOther","on3d"]),o.createVNode(n,o.mergeProps({map:a.map,token:a.token,enabled:(j=i.otherLayers)==null?void 0:j.enc,"toggle-version":i.toggleVersion},t.$attrs,{onEnc:e[4]||(e[4]=H=>i.enc=H)}),null,16,["map","token","enabled","toggle-version"]),o.createVNode(c,o.mergeProps({map:a.map,"sig-wave":(le=i.weatherLayers)==null?void 0:le["sig-wave-height"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","sig-wave","before-layer"]),o.createVNode(h,o.mergeProps({map:a.map,swell:(F=i.weatherLayers)==null?void 0:F.swell,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","swell","before-layer"]),o.createVNode(d,o.mergeProps({map:a.map,prmsl:(E=i.weatherLayers)==null?void 0:E.prmsl,"before-layer":a.beforeLayer,"active-weather-layers":i.activeWeatherLayers},t.$attrs),null,16,["map","prmsl","before-layer","active-weather-layers"]),o.createVNode(p,o.mergeProps({map:a.map,iceberg:($=i.weatherLayers)==null?void 0:$.iceberg,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","iceberg","before-layer"]),o.createVNode(u,o.mergeProps({map:a.map,date:a.ts,tropicals:(ce=i.weatherLayers)==null?void 0:ce.tropicals,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","date","tropicals","before-layer"]),o.createVNode(m,o.mergeProps({map:a.map,"map-projection":i.mapProjection,current:(U=i.weatherLayers)==null?void 0:U.current,"before-layer":a.beforeLayer,"show-particle":i.showCurrentParticle,"margin-bottom":i.activeWindLayer?i.showRampColor?"84px":"56px":i.showRampColor?"56px":"30px","toggle-version":i.toggleVersion,"weather-layers":i.weatherLayers},t.$attrs,{onParticle:s.handleParticle}),null,16,["map","map-projection","current","before-layer","show-particle","margin-bottom","toggle-version","weather-layers","onParticle"]),o.createVNode(g,o.mergeProps({viewport:i.viewport,factor:(he=i.weatherLayers)==null?void 0:he["current-particle"],"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(f,o.mergeProps({ref:"windBarb",map:a.map,"map-projection":i.mapProjection,wind:(Q=i.weatherLayers)==null?void 0:Q.wind,current:(K=i.weatherLayers)==null?void 0:K.current,"before-layer":a.beforeLayer,"margin-bottom":i.showRampColor?"56px":"30px","show-particle":i.showWindParticle},t.$attrs,{"toggle-version":i.toggleVersion,"weather-layers":i.weatherLayers,onParticle:s.handleParticle}),null,16,["map","map-projection","wind","current","before-layer","margin-bottom","show-particle","toggle-version","weather-layers","onParticle"]),o.createVNode(y,o.mergeProps({viewport:i.viewport,factor:(ee=i.weatherLayers)==null?void 0:ee["wind-particle"],"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(_,o.mergeProps({viewport:i.viewport,factor:(ye=i.weatherLayers)==null?void 0:ye.precip3h,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(b,o.mergeProps({viewport:i.viewport,factor:(fe=i.weatherLayers)==null?void 0:fe.visibility,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(w,o.mergeProps({viewport:i.viewport,factor:(ue=i.weatherLayers)==null?void 0:ue["water-temp"],"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(C,o.mergeProps({viewport:i.viewport,factor:(ge=i.weatherLayers)==null?void 0:ge.temp,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(L,o.mergeProps({viewport:i.viewport,factor:(be=i.weatherLayers)==null?void 0:be.arctic,"before-layer":a.beforeLayer,"toggle-version":i.toggleVersion},t.$attrs),null,16,["viewport","factor","before-layer","toggle-version"]),o.createVNode(P,o.mergeProps({map:a.map,zone:(_e=i.otherLayers)==null?void 0:_e["war-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(N,o.mergeProps({map:a.map,area:(Le=i.otherLayers)==null?void 0:Le["gmdss-areas"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","area","before-layer"]),o.createVNode(I,o.mergeProps({map:a.map,zone:(ke=i.otherLayers)==null?void 0:ke["eca-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(V,o.mergeProps({map:a.map,zone:(Te=i.otherLayers)==null?void 0:Te["alert-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(R,o.mergeProps({map:a.map,port:(Ie=i.otherLayers)==null?void 0:Ie.ports,"before-layer":a.beforeLayer},t.$attrs),null,16,["map","port","before-layer"]),o.createVNode(A,o.mergeProps({map:a.map,line:(De=i.otherLayers)==null?void 0:De["load-lines"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","line","before-layer"]),o.createVNode(ae,o.mergeProps({map:a.map,zone:(Ve=i.otherLayers)==null?void 0:Ve["time-zones"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","zone","before-layer"]),o.createVNode(oe,o.mergeProps({map:a.map,area:(Re=i.otherLayers)==null?void 0:Re["voluntary-reporting-area"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","area","before-layer"]),o.createVNode(ie,o.mergeProps({map:a.map,area:($e=i.otherLayers)==null?void 0:$e["special-area"],"before-layer":a.beforeLayer},t.$attrs),null,16,["map","area","before-layer"]),o.createVNode(re,o.mergeProps({map:a.map,area:(Be=i.otherLayers)==null?void 0:Be["day-night"]},t.$attrs),null,16,["map","area"]),o.createVNode(se,o.mergeProps({map:a.map,show:i.showCoord,"toggle-version":i.toggleVersion},t.$attrs),null,16,["map","show","toggle-version"]),o.createVNode(ne,o.mergeProps({map:a.map,show:i.showMeasure},t.$attrs),null,16,["map","show"]),o.createVNode(W,o.mergeProps({map:a.map,show:i.showPoint,meteo:i.meteo},t.$attrs,{onPoint:s.handlePointChange}),null,16,["map","show","meteo","onPoint"])])):o.createCommentVNode("",!0)}const Ne=S(vi,[["render",Ci]]),Si={install(t){t.component("MapboxGL",Ne),t.component("TropicalGL",Ce),t.component("LatLngGL",Se)}};k.LatLngGL=Se,k.MapboxGL=Ne,k.MapboxGLPlugin=Si,k.MapboxHelper=ze,k.ParticleSchema=D,k.TropicalGL=Ce,k.Viewport=we,k.WebGL=J,k.WebGLSchema=T,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})});
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";:root{--idm-white: rgba(255, 255, 255, 1);--idm-white-9: rgba(255, 255, 255, .9);--idm-white-8: rgba(255, 255, 255, .8);--idm-white-7: rgba(255, 255, 255, .7);--idm-white-6: rgba(255, 255, 255, .6);--idm-white-5: rgba(255, 255, 255, .5);--idm-white-4: rgba(255, 255, 255, .4);--idm-white-3: rgba(255, 255, 255, .3);--idm-white-2: rgba(255, 255, 255, .2);--idm-white-1: rgba(255, 255, 255, .1);--idm-black: rgba(0, 0, 0, 1);--idm-black-9: rgba(0, 0, 0, .9);--idm-black-8: rgba(0, 0, 0, .8);--idm-black-7: rgba(0, 0, 0, .7);--idm-black-6: rgba(0, 0, 0, .6);--idm-black-5: rgba(0, 0, 0, .5);--idm-black-4: rgba(0, 0, 0, .4);--idm-black-3: rgba(0, 0, 0, .3);--idm-black-2: rgba(0, 0, 0, .2);--idm-black-1: rgba(0, 0, 0, .1);--idm-gray-light: rgba(239, 239, 239, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1);--idm-success-color: #0ddd9f;--idm-success-color-light: #92f7d9;--idm-success-color-dark: #06a074;--idm-success-color-dark2: #06694c;--idm-warning-color: #ff9500;--idm-warning-color-light: #ffcc00;--idm-warning-color-dark: #c77402;--idm-danger-color: #f44336;--idm-danger-color-light: #fb796e;--idm-danger-color-dark: #ad251b;--idm-info-color: #6e6e6e;--idm-info-color-light: #969696;--idm-info-color-light2: #c0c0c0;--idm-info-color-light3: #e2e2e2;--idm-info-color-dark: #494949;--idm-dangerous: #f44336;--idm-severe: #ff9500;--idm-heavy: #ffff00;--idm-vessel-cargo-color: lightgreen;--idm-vessel-tanker-color: red;--idm-vessel-passenger-color: blue;--idm-vessel-other-color: lightgrey;--idm-perf-cii-a: var(--idm-success-color);--idm-perf-cii-b: var(--idm-success-color-light);--idm-perf-cii-c: var(--idm-warning-color);--idm-perf-cii-d: var(--idm-danger-color-light);--idm-perf-cii-e: var(--idm-danger-color);--idm-tropicals-td: #03f869;--idm-tropicals-ts: #f2f202;--idm-tropicals-sts: #ff9100;--idm-tropicals-ty: #f44336;--idm-tropicals-sty: #c604a4;--idm-tropicals-super-ty: #6b05bb;--idm-tropicals-r7: #ff9100;--idm-tropicals-r10: #f44336;--idm-text-shadow: 0px 0px 4px rgba(0, 0, 0, 1);--idm-dashed-border: 1px dashed var(--idm-white-5);--idm-solid-border: 1px solid var(--idm-white-4);--idm-background-color: var(--idm-primary-color-9);--idm-background-color-dark: var(--idm-primary-color-dark);--idm-background-color-light: var(--idm-primary-color-light);--idm-background-color-light2: #f3f5f8;--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-blink-animation: blink .8s ease-out infinite alternate}:root[colorTheme=black]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, .8) 80%, rgb(0, 0, 0, .8) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-right: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-left: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(117, 117, 117, .93) 30%, rgba(200, 200, 200, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(253, 253, 253), 0 0 21px rgb(226, 226, 226), 0 0 30px rgba(185, 185, 185, .4), 0 0 12px rgba(67, 67, 67, .6), 0 0 22px rgba(27, 27, 27, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(0, 0, 0, .7);--idm-primary-color-light: #757575;--idm-primary-color-light2: #a5a5a5;--idm-primary-color-dark: rgba(0, 0, 0, .8);--idm-primary-color-dark2: rgba(0, 0, 0, 1);--idm-primary-color-9: rgba(0, 0, 0, .9);--idm-primary-color-7: rgba(0, 0, 0, .7);--idm-primary-color-5: rgba(0, 0, 0, .5);--idm-primary-color-3: rgba(0, 0, 0, .3);--idm-primary-color-1: rgba(0, 0, 0, .1)}:root[colorTheme=blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1)}:root[colorTheme=dark-blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(104, 104, 226, .93) 20%, rgba(22, 49, 182, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6266e0;--idm-primary-color-light2: #89b0ff;--idm-primary-color-dark: #00224e;--idm-primary-color-dark2: #021a39;--idm-primary-color-9: rgba(19, 47, 108, .9);--idm-primary-color-7: rgba(19, 47, 108, .7);--idm-primary-color-5: rgba(19, 47, 108, .5);--idm-primary-color-3: rgba(19, 47, 108, .3);--idm-primary-color-1: rgba(19, 47, 108, .1)}@font-face{font-family:iconfont;src:url(https://iconfont.idmwx.com/iconfont.woff2) format("woff2"),url(https://iconfont.idmwx.com/iconfont.woff) format("woff"),url(https://iconfont.idmwx.com/iconfont.ttf) format("truetype"),url(https://iconfont.idmwx.com/iconfont.svg?#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-start{display:flex;align-items:center;justify-content:flex-start}.flex-end{display:flex;align-items:center;justify-content:flex-end}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between,.flex-space{display:flex;align-items:center;justify-content:space-between}.flex-around{display:flex;align-items:center;justify-content:space-around}.flex-evenly{display:flex;align-items:center;justify-content:space-evenly}.flex{flex:1}.dropdown{position:relative;display:inline-block!important}.dropdown .dropdown-content{display:none;position:absolute;z-index:1}.dropdown:hover .dropdown-content{display:block}.loading{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--idm-black-5);z-index:1000;display:flex;justify-content:center;align-items:center;flex-direction:column}.loading i{font-size:30px;color:var(--idm-white);margin-bottom:16px;animation:rotate 2s linear infinite}.loading div{color:var(--idm-white);font-size:16px}@keyframes blink{0%{box-shadow:0 0 20px var(--idm-warning-color-dark) inset}to{box-shadow:0 0 20px var(--idm-success-color) inset}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.idm-gl-layer .fade-enter-active[data-v-bd0ce73c],.idm-gl-layer .fade-leave-active[data-v-bd0ce73c]{transition:opacity .4s}.idm-gl-layer .fade-enter[data-v-bd0ce73c],.idm-gl-layer .fade-leave-to[data-v-bd0ce73c]{opacity:0}.idm-gl-layer .menu-bar-box[data-v-bd0ce73c]{position:absolute;overflow-y:hidden;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out;z-index:2}.idm-gl-layer .menu-bar-box .bar-item[data-v-bd0ce73c]{position:relative;margin-bottom:15px;border-radius:5px;background:var(--idm-white);cursor:pointer;box-shadow:0 2px 12px #0003}.idm-gl-layer .menu-bar-box .bar-item .menu-icon[data-v-bd0ce73c]{padding:8px;display:flex}.idm-gl-layer .menu-bar-box .bar-item .menu-icon[data-v-bd0ce73c]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.idm-gl-layer .menu-bar-box .bar-item .menu-icon[data-v-bd0ce73c]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.idm-gl-layer .menu-bar-box .bar-item .menu-icon span[data-v-bd0ce73c]{font-size:20px;font-weight:600;color:var(--idm-black-8)}.idm-gl-layer .menu-bar-box .bar-item .menu-icon.active[data-v-bd0ce73c]{background:var(--idm-primary-color)}.idm-gl-layer .menu-bar-box .bar-item .menu-icon.active span[data-v-bd0ce73c]{color:var(--idm-white)}.idm-gl-layer .layer[data-v-bd0ce73c]{cursor:pointer;display:inline-flex;align-items:center;padding:5px 0}.idm-gl-layer .layer.disabled[data-v-bd0ce73c]{cursor:not-allowed}.idm-gl-layer .layer.disabled span[data-v-bd0ce73c]{color:var(--idm-black-4)}.idm-gl-layer .layer.disabled .checkbox[data-v-bd0ce73c]{border:1px solid var(--idm-black-2)}.idm-gl-layer .layer.active .checkbox[data-v-bd0ce73c]{border:var(--idm-primary-color);background:var(--idm-primary-color)}.idm-gl-layer .layer.active .checkbox[data-v-bd0ce73c]:after{content:"✔";color:var(--idm-white);font-size:12px;display:flex;align-items:center;justify-content:center}.idm-gl-layer .layer.active span[data-v-bd0ce73c]{color:var(--idm-primary-color)}.idm-gl-layer .layer .checkbox[data-v-bd0ce73c]{width:16px;height:16px;margin-right:4px;border:1px solid var(--idm-black-8)}.idm-gl-layer .layer span[data-v-bd0ce73c]{color:var(--idm-black-8);font-size:14px;width:max-content}.idm-gl-layer .other-bars[data-v-bd0ce73c]{position:absolute;top:36px;border-radius:5px;background:var(--idm-background-linear-gradient-top);box-shadow:0 2px 12px #0003}.idm-gl-layer .active-layers[data-v-bd0ce73c]{position:absolute;max-width:250px;min-width:200px;display:flex;flex-wrap:wrap;align-items:center;background:var(--idm-white);border-radius:5px;box-shadow:0 2px 12px #0003;transition:all .4s ease-in-out}.idm-gl-layer .active-layers .layer[data-v-bd0ce73c]{width:auto;padding:5px}.idm-gl-layer .available-layers[data-v-bd0ce73c]{position:absolute;height:calc(100vh - 120px);box-sizing:border-box;transition:all .4s ease-in-out}.idm-gl-layer .available-layers .side-bar[data-v-bd0ce73c]{margin-right:10px;box-sizing:border-box}.idm-gl-layer .available-layers .side-bar i[data-v-bd0ce73c]{padding:15px 1px;background:var(--idm-white-7);border-radius:5px;cursor:pointer;font-size:18px;font-weight:600;color:var(--idm-black)}.idm-gl-layer .available-layers .list-box[data-v-bd0ce73c]{height:inherit;width:200px;padding:10px 0;overflow-y:auto;color:var(--idm-black-8);background:var(--idm-white);display:flex;flex-direction:column;box-shadow:0 2px 12px #0003;z-index:1}.idm-gl-layer .available-layers .list-box .layers-title[data-v-bd0ce73c]{font-size:16px;font-weight:600;padding:0 10px 10px;color:var(--idm-black-8);border-bottom:var(--idm-dashed-border)}.idm-gl-layer .available-layers .list-box .layers-body[data-v-bd0ce73c]{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding:0 10px;font-size:14px}.idm-gl-layer .available-layers .list-box .layers-body .layer[data-v-bd0ce73c]{width:140px}.idm-gl-layer .available-layers .list-box .model-box[data-v-bd0ce73c]{display:flex;align-items:center;justify-content:flex-start;margin:10px 0;cursor:pointer}.idm-gl-layer .available-layers .list-box .model-box span[data-v-bd0ce73c]{padding:3px 10px;border:1px solid #cecece}.idm-gl-layer .available-layers .list-box .model-box span.active[data-v-bd0ce73c]{color:var(--idm-white);border:1px solid var(--idm-primary-color);background:var(--idm-primary-color)}.idm-gl-layer .available-layers .list-box .model-box span[data-v-bd0ce73c]:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.idm-gl-layer .available-layers .list-box .model-box span[data-v-bd0ce73c]:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px;border-left:none}.tool-bars[data-v-b6fb74d9]{transition:all .4s ease-in-out}.tool-bars i[data-v-b6fb74d9]{cursor:pointer;font-size:30px;color:var(--idm-white-8);text-shadow:var(--idm-text-shadow)}.tool-bars i.active[data-v-b6fb74d9]{color:var(--idm-white)}.tool-bars span[data-v-b6fb74d9]{cursor:pointer;font-size:12px;color:var(--idm-black-8);margin-left:4px;background:var(--idm-white-8);padding:2px 4px;border-radius:5px;box-shadow:0 2px 12px #0003}.tool-bars span.active[data-v-b6fb74d9]{color:var(--idm-white);background:var(--idm-primary-color)}.legend-bars[data-v-41a686d0]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(61,110,163),rgb(74,148,170),rgb(74,146,148),rgb(77,142,124),rgb(76,164,76),rgb(103,164,54),rgb(162,135,64),rgb(162,109,92),rgb(141,63,92),rgb(151,75,145),rgb(95,100,160),rgb(91,136,161),rgb(91,136,161));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-41a686d0]{font-size:12px;text-align:center;color:var(--idm-white-8);width:32px}.tool-bars[data-v-ae630f43]{transition:all .4s ease-in-out}.tool-bars i[data-v-ae630f43]{cursor:pointer;font-size:30px;color:var(--idm-white-8);text-shadow:var(--idm-text-shadow)}.tool-bars i.active[data-v-ae630f43]{color:var(--idm-white)}.tool-bars span[data-v-ae630f43]{cursor:pointer;font-size:12px;color:var(--idm-black-8);margin-left:4px;background:var(--idm-white-8);padding:2px 4px;border-radius:5px;box-shadow:0 2px 12px #0003}.tool-bars span.active[data-v-ae630f43]{color:var(--idm-white);background:var(--idm-primary-color)}.legend-bars[data-v-9115889b]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(64,127,115),rgb(58,164,58),rgb(191,182,67),rgb(197,154,68),rgb(160,70,94),rgb(138,84,166),rgb(82,113,165),rgb(84,142,152),rgb(150,181,184),rgb(195,194,194),rgb(195,194,194));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-9115889b]{font-size:12px;text-align:center;color:var(--idm-white);width:36px}.active-tropical[data-v-edea495b]{bottom:unset;background:var(--idm-white-9);padding:10px;border-radius:5px;z-index:5}.active-tropical .header-box[data-v-edea495b]{min-width:360px;margin-bottom:10px;box-sizing:border-box;color:var(--idm-black-8)}.active-tropical .header-box .close-btn[data-v-edea495b]{position:relative;height:0px;text-align:right;font-size:22px;color:var(--idm-primary-color)}.active-tropical .header-box .main[data-v-edea495b]{font-size:16px}.active-tropical .header-box .sub[data-v-edea495b]{margin:3px 0;font-size:12px;color:var(--idm-info-color)}.active-tropical .main-box[data-v-edea495b]{min-width:360px;color:var(--idm-black-8);overflow-y:auto;box-sizing:border-box;font-size:12px;z-index:4}.active-tropical .main-box .content[data-v-edea495b]{padding:5px 0;border-radius:5px;background:var(--idm-gray-light)}.active-tropical .main-box .row[data-v-edea495b]{width:100%;padding:4px 10px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between}.active-tropical .main-box .row .col[data-v-edea495b]{display:flex;align-items:center;justify-content:space-between}.active-tropical .main-box .row .col label[data-v-edea495b]{width:82px;margin-right:4px;color:var(--idm-info-color)}.active-tropical .main-box .row .col.col-24[data-v-edea495b]{width:100%}.active-tropical .main-box .row .col.col-left[data-v-edea495b]{width:55%}.active-tropical .main-box .row .col.col-right[data-v-edea495b]{width:40%}.active-tropical .main-box .row .col .icon[data-v-edea495b]{font-size:30px;color:var(--idm-black-4)}.active-tropical .main-box .row .col .icon.active[data-v-edea495b]{color:var(--idm-primary-color)}.forecast-models[data-v-edea495b]{display:flex;justify-content:flex-end;flex:1;margin-left:5px;flex-wrap:wrap}.forecast-models .model[data-v-edea495b]{font-size:12px;padding:0 6px 4px;display:flex;border:1px solid var(--idm-primary-color)}.forecast-models .model span[data-v-edea495b]{border-bottom:2px dashed var(--idm-white)}.forecast-models .model span.cma[data-v-edea495b]{border-color:#e2ea03cc}.forecast-models .model span.jma[data-v-edea495b]{border-color:#01d2b7cc}.forecast-models .model span.ecmwf[data-v-edea495b]{border-color:#f582f2cc}.forecast-models .model span.ukm[data-v-edea495b]{border-color:#f5bb47cc}.forecast-models .model span.noaa-at[data-v-edea495b],.forecast-models .model span.noaa-ep[data-v-edea495b]{border-color:#9758fbcc}.forecast-models .model.active[data-v-edea495b]{border:1px solid var(--idm-primary-color);background-color:var(--idm-primary-color);color:var(--idm-white)}.forecast-models .model[data-v-edea495b]:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.forecast-models .model.center-child[data-v-edea495b]{border-left:1px solid var(--idm-primary-color);border-right:1px solid var(--idm-primary-color)}.forecast-models .model[data-v-edea495b]:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.legend[data-v-edea495b]{display:flex;align-items:center;color:var(--idm-info-color)}.legend .icon[data-v-edea495b]{height:14px;width:14px;border-radius:50%;border:3px solid #fff;margin-right:3px}.legend .icon.td[data-v-edea495b]{background-color:var(--idm-tropicals-td)}.legend .icon.ts[data-v-edea495b]{background-color:var(--idm-tropicals-ts)}.legend .icon.sts[data-v-edea495b]{background-color:var(--idm-tropicals-sts)}.legend .icon.ty[data-v-edea495b]{background-color:var(--idm-tropicals-ty)}.legend .icon.sty[data-v-edea495b]{background-color:var(--idm-tropicals-sty)}.legend .icon.supper-ty[data-v-edea495b]{background-color:var(--idm-tropicals-super-ty)}.legend .icon.r7[data-v-edea495b]{border:1.5px solid var(--idm-tropicals-r7)}.legend .icon.r10[data-v-edea495b]{border:1.5px solid var(--idm-tropicals-r10)}.legend .icon.history[data-v-edea495b]{border:none;border-radius:0;height:4px;background:var(--idm-black-5)}.legend .button[data-v-edea495b]{cursor:pointer;padding:0 4px;border-radius:4px;border:1px solid var(--idm-primary-color);color:var(--idm-primary-color)}.more[data-v-edea495b]{display:flex;align-items:center;justify-content:flex-end;color:var(--idm-primary-color);font-weight:700;margin-top:5px}.legend-bars[data-v-dec867b8]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgba(59,126,162,0),rgb(172,210,255),rgb(172,210,255),rgb(3,248,103),rgb(14,201,3),rgb(190,226,2),rgb(248,1,1),rgb(197,5,58),rgb(197,5,58));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-dec867b8]{font-size:12px;text-align:center;color:var(--idm-white);width:35px}.legend-bars[data-v-952dee5c]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(208,56,56),rgb(208,56,56),rgb(190,226,2),rgb(190,226,2),rgb(4,210,64),rgb(4,210,64),rgb(172,210,255),rgb(172,210,255));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-952dee5c]{font-size:12px;text-align:center;color:var(--idm-white);width:40px}.legend-bars[data-v-67e5094b]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-67e5094b]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-389ea886]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(150,209,216),rgb(129,204,197),rgb(103,180,186),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-389ea886]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-db805141]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(76,165,228),rgb(76,165,228),rgb(76,165,228),rgb(76,165,228),rgb(103,180,186),rgb(129,204,197),rgb(150,209,216),rgb(180,209,216));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-db805141]{font-size:12px;text-align:center;color:var(--idm-white);width:40px}.point-meteo[data-v-fb5b12d6]{bottom:unset}.point-meteo .meteo-box[data-v-fb5b12d6]{position:absolute;color:var(--idm-black-8);top:0;left:5px;padding:10px;background-color:var(--idm-white-9);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);width:260px;border-top-right-radius:5px;border-bottom-right-radius:5px;z-index:2}.point-meteo .meteo-box .header-box[data-v-fb5b12d6]{margin-bottom:10px;box-sizing:border-box;color:var(--idm-black-8)}.point-meteo .meteo-box .header-box .close[data-v-fb5b12d6]{position:relative;height:0px;text-align:right;font-size:22px;color:var(--idm-primary-color)}.point-meteo .meteo-box .header-box .main[data-v-fb5b12d6]{font-size:16px}.point-meteo .meteo-box .header-box .sub[data-v-fb5b12d6]{margin:3px 0;font-size:12px;color:var(--idm-info-color)}.point-meteo .meteo-box .main-box[data-v-fb5b12d6]{padding:0 5px;border-radius:5px;background:var(--idm-gray-light)}.point-meteo .meteo-box .main-box .flex-space[data-v-fb5b12d6]{padding:3px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--idm-white);box-sizing:border-box}.point-meteo .meteo-box .main-box .flex-space label[data-v-fb5b12d6]{color:var(--idm-black-8)}.point-meteo .meteo-box .main-box .flex-space label[data-v-fb5b12d6]:after{content:":"}.point-meteo .meteo-box .main-box .flex-space[data-v-fb5b12d6]:last-child{border-bottom:none}.point-meteo .meteo-box .more[data-v-fb5b12d6]{margin-top:5px;color:var(--idm-primary-color);font-weight:700;cursor:pointer}.point-meteo[data-v-fb5b12d6]:after{display:block;width:8px;height:8px;border-radius:50%;content:"";background-color:var(--idm-white-9);margin-bottom:360px}.point-meteo[data-v-fb5b12d6]:before{display:block;content:"";width:2px;height:360px;margin-left:3px;border-left:2px solid var(--idm-white-9)}#zone-info[data-v-c0864afc]{position:absolute;background:var(--idm-white);color:var(--idm-black-8);z-index:10}#zone-info .rich-context[data-v-c0864afc]{width:100vw;height:100vh;padding:10px;font-size:14px;font-weight:400;color:var(--idm-black-8)!important;overflow-y:auto}#zone-info .close[data-v-c0864afc]{position:relative;color:var(--idm-info-color-light2);font-size:24px;height:0;text-align:right;margin:5px 5px 0 0}#port-info[data-v-30e545a2]{position:absolute;background:var(--idm-white);color:var(--idm-black-8);padding:10px;border-radius:6px;cursor:default;z-index:1000;height:fit-content}#port-info .port-box[data-v-30e545a2]{margin-top:10px;max-width:240px}#port-info .port-box .flex-start[data-v-30e545a2]{line-height:2}#port-info .port-box .flex-start label[data-v-30e545a2]{color:var(--idm-info-color);margin-right:10px;width:50px}#port-info .port-box .flex-start span[data-v-30e545a2]{flex:1;flex-wrap:wrap;text-align:justify-all;color:var(--idm-black-8)}#port-info .port-box .flex-start span.link[data-v-30e545a2]{cursor:pointer;text-decoration:underline}#port-info .port-box .flex-start span.link[data-v-30e545a2]:hover{font-weight:600}#port-info .close[data-v-30e545a2]{position:relative;text-align:right;height:0px;color:var(--idm-info-color-light2);font-size:24px}.lat-lng-tip[data-v-51cc4052]{position:absolute;padding:2px 10px;border-radius:5px;color:var(--idm-primary-color);font-size:12px;top:unset;background:var(--idm-white);box-shadow:0 2px 12px #0003;transition:all .4s ease-in-out}.menu-bar-box[data-v-ab627b83]{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out}.menu-bar-box .bar-item[data-v-ab627b83]{position:relative;margin-bottom:15px;border-radius:5px;background:var(--idm-white);cursor:pointer;box-shadow:0 2px 12px #0003}.menu-bar-box .bar-item .menu-icon[data-v-ab627b83]{padding:8px;display:flex}.menu-bar-box .bar-item .menu-icon[data-v-ab627b83]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.menu-bar-box .bar-item .menu-icon[data-v-ab627b83]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.menu-bar-box .bar-item .menu-icon span[data-v-ab627b83]{font-size:18px;font-weight:500;color:var(--idm-black-8)}.menu-bar-box .bar-item .menu-icon.active[data-v-ab627b83]{background:var(--idm-primary-color)}.menu-bar-box .bar-item .menu-icon.active span[data-v-ab627b83]{color:var(--idm-white)}:root{--idm-tropicals-td: #03f869;--idm-tropicals-ts: #f2f202;--idm-tropicals-sts: #ff9100;--idm-tropicals-ty: #f44336;--idm-tropicals-sty: #c604a4;--idm-tropicals-super-ty: #6b05bb;--idm-tropicals-r7: #ff9100;--idm-tropicals-r10: #f44336;--idm-gl-box-shadow-color: rgba(0, 0, 0, .5);--idm-gl-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, .04), 0px 8px 20px rgba(0, 0, 0, .08);--idm-gl-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, .12);--idm-gl-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, .12);--idm-gl-box-shadow-dark: 0px 16px 48px 16px rgba(0, 0, 0, .08), 0px 12px 32px rgba(0, 0, 0, .12), 0px 8px 16px -8px rgba(0, 0, 0, .16)}.point-marker{pointer-events:none!important}.point-marker .marker-circle{pointer-events:inherit;width:12px;height:12px;border-radius:50%;border:2px solid var(--idm-white);background:var(--idm-danger-color)}.point-marker .marker-circle:hover{cursor:pointer}.point-marker.closed{pointer-events:auto!important}.point-summary-marker,.point-contextmenu-marker{color:var(--idm-white);font-size:12px;background:var(--idm-danger-color);border:1px solid var(--idm-white);padding:2px 5px;border-radius:5px;cursor:pointer}.point-summary-marker .marker-close,.point-contextmenu-marker .marker-close{pointer-events:auto;position:absolute;background:var(--idm-danger-color);border:1px dashed var(--idm-white);display:flex;align-items:center;justify-content:center;width:20px;height:20px;right:-17px;top:-17px;cursor:pointer;font-size:20px}.tip-marker{color:var(--idm-white);font-size:12px;text-shadow:var(--idm-text-shadow);background-color:var(--idm-black-6);padding:2px 5px;border-radius:5px;cursor:pointer}.tip-marker .marker-label{border-bottom:var(--idm-dashed-border)}.tip-marker .marker-label:last-child{border-bottom:none}.tip-marker .marker-label b{font-weight:600;color:var(--idm-danger-color)}.hurricane-hourly-marker .iconfont{font-size:34px!important;color:var(--idm-danger-color)}.hurricane-hourly-marker svg{height:34px;width:34px}.hurricane-hourly-marker .center{box-sizing:border-box;display:flex;align-items:center;justify-content:center}.hurricane-hourly-marker .center.north{animation:anticlockwise 2s linear infinite}.hurricane-hourly-marker .center.south{animation:clockwise 2s linear infinite}@keyframes clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes anticlockwise{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}
1
+ @charset "UTF-8";:root{--idm-white: rgba(255, 255, 255, 1);--idm-white-9: rgba(255, 255, 255, .9);--idm-white-8: rgba(255, 255, 255, .8);--idm-white-7: rgba(255, 255, 255, .7);--idm-white-6: rgba(255, 255, 255, .6);--idm-white-5: rgba(255, 255, 255, .5);--idm-white-4: rgba(255, 255, 255, .4);--idm-white-3: rgba(255, 255, 255, .3);--idm-white-2: rgba(255, 255, 255, .2);--idm-white-1: rgba(255, 255, 255, .1);--idm-black: rgba(0, 0, 0, 1);--idm-black-9: rgba(0, 0, 0, .9);--idm-black-8: rgba(0, 0, 0, .8);--idm-black-7: rgba(0, 0, 0, .7);--idm-black-6: rgba(0, 0, 0, .6);--idm-black-5: rgba(0, 0, 0, .5);--idm-black-4: rgba(0, 0, 0, .4);--idm-black-3: rgba(0, 0, 0, .3);--idm-black-2: rgba(0, 0, 0, .2);--idm-black-1: rgba(0, 0, 0, .1);--idm-gray-light: rgba(239, 239, 239, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1);--idm-success-color: #0ddd9f;--idm-success-color-light: #92f7d9;--idm-success-color-dark: #06a074;--idm-success-color-dark2: #06694c;--idm-warning-color: #ff9500;--idm-warning-color-light: #ffcc00;--idm-warning-color-dark: #c77402;--idm-danger-color: #f44336;--idm-danger-color-light: #fb796e;--idm-danger-color-dark: #ad251b;--idm-info-color: #6e6e6e;--idm-info-color-light: #969696;--idm-info-color-light2: #c0c0c0;--idm-info-color-light3: #e2e2e2;--idm-info-color-dark: #494949;--idm-dangerous: #f44336;--idm-severe: #ff9500;--idm-heavy: #ffff00;--idm-vessel-cargo-color: lightgreen;--idm-vessel-tanker-color: red;--idm-vessel-passenger-color: blue;--idm-vessel-other-color: lightgrey;--idm-perf-cii-a: var(--idm-success-color);--idm-perf-cii-b: var(--idm-success-color-light);--idm-perf-cii-c: var(--idm-warning-color);--idm-perf-cii-d: var(--idm-danger-color-light);--idm-perf-cii-e: var(--idm-danger-color);--idm-tropicals-td: #03f869;--idm-tropicals-ts: #f2f202;--idm-tropicals-sts: #ff9100;--idm-tropicals-ty: #f44336;--idm-tropicals-sty: #c604a4;--idm-tropicals-super-ty: #6b05bb;--idm-tropicals-r7: #ff9100;--idm-tropicals-r10: #f44336;--idm-text-shadow: 0px 0px 4px rgba(0, 0, 0, 1);--idm-dashed-border: 1px dashed var(--idm-white-5);--idm-solid-border: 1px solid var(--idm-white-4);--idm-background-color: var(--idm-primary-color-9);--idm-background-color-dark: var(--idm-primary-color-dark);--idm-background-color-light: var(--idm-primary-color-light);--idm-background-color-light2: #f3f5f8;--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-blink-animation: blink .8s ease-out infinite alternate}:root[colorTheme=black]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, .8) 80%, rgb(0, 0, 0, .8) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-right: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-left: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(117, 117, 117, .93) 30%, rgba(200, 200, 200, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(253, 253, 253), 0 0 21px rgb(226, 226, 226), 0 0 30px rgba(185, 185, 185, .4), 0 0 12px rgba(67, 67, 67, .6), 0 0 22px rgba(27, 27, 27, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(0, 0, 0, .7);--idm-primary-color-light: #757575;--idm-primary-color-light2: #a5a5a5;--idm-primary-color-dark: rgba(0, 0, 0, .8);--idm-primary-color-dark2: rgba(0, 0, 0, 1);--idm-primary-color-9: rgba(0, 0, 0, .9);--idm-primary-color-7: rgba(0, 0, 0, .7);--idm-primary-color-5: rgba(0, 0, 0, .5);--idm-primary-color-3: rgba(0, 0, 0, .3);--idm-primary-color-1: rgba(0, 0, 0, .1)}:root[colorTheme=blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1)}:root[colorTheme=dark-blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(104, 104, 226, .93) 20%, rgba(22, 49, 182, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6266e0;--idm-primary-color-light2: #89b0ff;--idm-primary-color-dark: #00224e;--idm-primary-color-dark2: #021a39;--idm-primary-color-9: rgba(19, 47, 108, .9);--idm-primary-color-7: rgba(19, 47, 108, .7);--idm-primary-color-5: rgba(19, 47, 108, .5);--idm-primary-color-3: rgba(19, 47, 108, .3);--idm-primary-color-1: rgba(19, 47, 108, .1)}@font-face{font-family:iconfont;src:url(https://iconfont.idmwx.com/iconfont.woff2) format("woff2"),url(https://iconfont.idmwx.com/iconfont.woff) format("woff"),url(https://iconfont.idmwx.com/iconfont.ttf) format("truetype"),url(https://iconfont.idmwx.com/iconfont.svg?#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-start{display:flex;align-items:center;justify-content:flex-start}.flex-end{display:flex;align-items:center;justify-content:flex-end}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between,.flex-space{display:flex;align-items:center;justify-content:space-between}.flex-around{display:flex;align-items:center;justify-content:space-around}.flex-evenly{display:flex;align-items:center;justify-content:space-evenly}.flex{flex:1}.dropdown{position:relative;display:inline-block!important}.dropdown .dropdown-content{display:none;position:absolute;z-index:1}.dropdown:hover .dropdown-content{display:block}.loading{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--idm-black-5);z-index:1000;display:flex;justify-content:center;align-items:center;flex-direction:column}.loading i{font-size:30px;color:var(--idm-white);margin-bottom:16px;animation:rotate 2s linear infinite}.loading div{color:var(--idm-white);font-size:16px}@keyframes blink{0%{box-shadow:0 0 20px var(--idm-warning-color-dark) inset}to{box-shadow:0 0 20px var(--idm-success-color) inset}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.idm-gl-layer .fade-enter-active[data-v-bd0ce73c],.idm-gl-layer .fade-leave-active[data-v-bd0ce73c]{transition:opacity .4s}.idm-gl-layer .fade-enter[data-v-bd0ce73c],.idm-gl-layer .fade-leave-to[data-v-bd0ce73c]{opacity:0}.idm-gl-layer .menu-bar-box[data-v-bd0ce73c]{position:absolute;overflow-y:hidden;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out;z-index:2}.idm-gl-layer .menu-bar-box .bar-item[data-v-bd0ce73c]{position:relative;margin-bottom:15px;border-radius:5px;background:var(--idm-white);cursor:pointer;box-shadow:0 2px 12px #0003}.idm-gl-layer .menu-bar-box .bar-item .menu-icon[data-v-bd0ce73c]{padding:8px;display:flex}.idm-gl-layer .menu-bar-box .bar-item .menu-icon[data-v-bd0ce73c]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.idm-gl-layer .menu-bar-box .bar-item .menu-icon[data-v-bd0ce73c]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.idm-gl-layer .menu-bar-box .bar-item .menu-icon span[data-v-bd0ce73c]{font-size:20px;font-weight:600;color:var(--idm-black-8)}.idm-gl-layer .menu-bar-box .bar-item .menu-icon.active[data-v-bd0ce73c]{background:var(--idm-primary-color)}.idm-gl-layer .menu-bar-box .bar-item .menu-icon.active span[data-v-bd0ce73c]{color:var(--idm-white)}.idm-gl-layer .layer[data-v-bd0ce73c]{cursor:pointer;display:inline-flex;align-items:center;padding:5px 0}.idm-gl-layer .layer.disabled[data-v-bd0ce73c]{cursor:not-allowed}.idm-gl-layer .layer.disabled span[data-v-bd0ce73c]{color:var(--idm-black-4)}.idm-gl-layer .layer.disabled .checkbox[data-v-bd0ce73c]{border:1px solid var(--idm-black-2)}.idm-gl-layer .layer.active .checkbox[data-v-bd0ce73c]{border:var(--idm-primary-color);background:var(--idm-primary-color)}.idm-gl-layer .layer.active .checkbox[data-v-bd0ce73c]:after{content:"✔";color:var(--idm-white);font-size:12px;display:flex;align-items:center;justify-content:center}.idm-gl-layer .layer.active span[data-v-bd0ce73c]{color:var(--idm-primary-color)}.idm-gl-layer .layer .checkbox[data-v-bd0ce73c]{width:16px;height:16px;margin-right:4px;border:1px solid var(--idm-black-8)}.idm-gl-layer .layer span[data-v-bd0ce73c]{color:var(--idm-black-8);font-size:14px;width:max-content}.idm-gl-layer .other-bars[data-v-bd0ce73c]{position:absolute;top:36px;border-radius:5px;background:var(--idm-background-linear-gradient-top);box-shadow:0 2px 12px #0003}.idm-gl-layer .active-layers[data-v-bd0ce73c]{position:absolute;max-width:250px;min-width:200px;display:flex;flex-wrap:wrap;align-items:center;background:var(--idm-white);border-radius:5px;box-shadow:0 2px 12px #0003;transition:all .4s ease-in-out}.idm-gl-layer .active-layers .layer[data-v-bd0ce73c]{width:auto;padding:5px}.idm-gl-layer .available-layers[data-v-bd0ce73c]{position:absolute;height:calc(100vh - 120px);box-sizing:border-box;transition:all .4s ease-in-out}.idm-gl-layer .available-layers .side-bar[data-v-bd0ce73c]{margin-right:10px;box-sizing:border-box}.idm-gl-layer .available-layers .side-bar i[data-v-bd0ce73c]{padding:15px 1px;background:var(--idm-white-7);border-radius:5px;cursor:pointer;font-size:18px;font-weight:600;color:var(--idm-black)}.idm-gl-layer .available-layers .list-box[data-v-bd0ce73c]{height:inherit;width:200px;padding:10px 0;overflow-y:auto;color:var(--idm-black-8);background:var(--idm-white);display:flex;flex-direction:column;box-shadow:0 2px 12px #0003;z-index:1}.idm-gl-layer .available-layers .list-box .layers-title[data-v-bd0ce73c]{font-size:16px;font-weight:600;padding:0 10px 10px;color:var(--idm-black-8);border-bottom:var(--idm-dashed-border)}.idm-gl-layer .available-layers .list-box .layers-body[data-v-bd0ce73c]{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding:0 10px;font-size:14px}.idm-gl-layer .available-layers .list-box .layers-body .layer[data-v-bd0ce73c]{width:140px}.idm-gl-layer .available-layers .list-box .model-box[data-v-bd0ce73c]{display:flex;align-items:center;justify-content:flex-start;margin:10px 0;cursor:pointer}.idm-gl-layer .available-layers .list-box .model-box span[data-v-bd0ce73c]{padding:3px 10px;border:1px solid #cecece}.idm-gl-layer .available-layers .list-box .model-box span.active[data-v-bd0ce73c]{color:var(--idm-white);border:1px solid var(--idm-primary-color);background:var(--idm-primary-color)}.idm-gl-layer .available-layers .list-box .model-box span[data-v-bd0ce73c]:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.idm-gl-layer .available-layers .list-box .model-box span[data-v-bd0ce73c]:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px;border-left:none}.tool-bars[data-v-b6fb74d9]{transition:all .4s ease-in-out}.tool-bars i[data-v-b6fb74d9]{cursor:pointer;font-size:30px;color:var(--idm-white-8);text-shadow:var(--idm-text-shadow)}.tool-bars i.active[data-v-b6fb74d9]{color:var(--idm-white)}.tool-bars span[data-v-b6fb74d9]{cursor:pointer;font-size:12px;color:var(--idm-black-8);margin-left:4px;background:var(--idm-white-8);padding:2px 4px;border-radius:5px;box-shadow:0 2px 12px #0003}.tool-bars span.active[data-v-b6fb74d9]{color:var(--idm-white);background:var(--idm-primary-color)}.legend-bars[data-v-41a686d0]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(61,110,163),rgb(74,148,170),rgb(74,146,148),rgb(77,142,124),rgb(76,164,76),rgb(103,164,54),rgb(162,135,64),rgb(162,109,92),rgb(141,63,92),rgb(151,75,145),rgb(95,100,160),rgb(91,136,161),rgb(91,136,161));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-41a686d0]{font-size:12px;text-align:center;color:var(--idm-white-8);width:32px}.tool-bars[data-v-ae630f43]{transition:all .4s ease-in-out}.tool-bars i[data-v-ae630f43]{cursor:pointer;font-size:30px;color:var(--idm-white-8);text-shadow:var(--idm-text-shadow)}.tool-bars i.active[data-v-ae630f43]{color:var(--idm-white)}.tool-bars span[data-v-ae630f43]{cursor:pointer;font-size:12px;color:var(--idm-black-8);margin-left:4px;background:var(--idm-white-8);padding:2px 4px;border-radius:5px;box-shadow:0 2px 12px #0003}.tool-bars span.active[data-v-ae630f43]{color:var(--idm-white);background:var(--idm-primary-color)}.legend-bars[data-v-9115889b]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(64,127,115),rgb(58,164,58),rgb(191,182,67),rgb(197,154,68),rgb(160,70,94),rgb(138,84,166),rgb(82,113,165),rgb(84,142,152),rgb(150,181,184),rgb(195,194,194),rgb(195,194,194));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-9115889b]{font-size:12px;text-align:center;color:var(--idm-white);width:36px}.active-tropical[data-v-aec5af09]{bottom:unset;background:var(--idm-white-9);padding:10px;border-radius:5px;z-index:5}.active-tropical .header-box[data-v-aec5af09]{min-width:360px;margin-bottom:10px;box-sizing:border-box;color:var(--idm-black-8)}.active-tropical .header-box .close-btn[data-v-aec5af09]{position:relative;height:0px;text-align:right;font-size:22px;color:var(--idm-primary-color)}.active-tropical .header-box .main[data-v-aec5af09]{font-size:16px}.active-tropical .header-box .sub[data-v-aec5af09]{margin:3px 0;font-size:12px;color:var(--idm-info-color)}.active-tropical .main-box[data-v-aec5af09]{min-width:360px;color:var(--idm-black-8);overflow-y:auto;box-sizing:border-box;font-size:12px;z-index:4}.active-tropical .main-box .content[data-v-aec5af09]{padding:5px 0;border-radius:5px;background:var(--idm-gray-light)}.active-tropical .main-box .row[data-v-aec5af09]{width:100%;padding:4px 10px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between}.active-tropical .main-box .row .col[data-v-aec5af09]{display:flex;align-items:center;justify-content:space-between}.active-tropical .main-box .row .col label[data-v-aec5af09]{width:82px;margin-right:4px;color:var(--idm-info-color)}.active-tropical .main-box .row .col.col-24[data-v-aec5af09]{width:100%}.active-tropical .main-box .row .col.col-left[data-v-aec5af09]{width:55%}.active-tropical .main-box .row .col.col-right[data-v-aec5af09]{width:40%}.active-tropical .main-box .row .col .icon[data-v-aec5af09]{font-size:30px;color:var(--idm-black-4)}.active-tropical .main-box .row .col .icon.active[data-v-aec5af09]{color:var(--idm-primary-color)}.forecast-models[data-v-aec5af09]{display:flex;justify-content:flex-end;flex:1;margin-left:5px;flex-wrap:wrap}.forecast-models .model[data-v-aec5af09]{font-size:12px;padding:0 6px 4px;display:flex;border:1px solid var(--idm-primary-color)}.forecast-models .model span[data-v-aec5af09]{border-bottom:2px dashed var(--idm-white)}.forecast-models .model span.cma[data-v-aec5af09]{border-color:#e2ea03cc}.forecast-models .model span.jma[data-v-aec5af09]{border-color:#01d2b7cc}.forecast-models .model span.ecmwf[data-v-aec5af09]{border-color:#f582f2cc}.forecast-models .model span.ukm[data-v-aec5af09]{border-color:#f5bb47cc}.forecast-models .model span.noaa-at[data-v-aec5af09],.forecast-models .model span.noaa-ep[data-v-aec5af09]{border-color:#9758fbcc}.forecast-models .model.active[data-v-aec5af09]{border:1px solid var(--idm-primary-color);background-color:var(--idm-primary-color);color:var(--idm-white)}.forecast-models .model[data-v-aec5af09]:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.forecast-models .model.center-child[data-v-aec5af09]{border-left:1px solid var(--idm-primary-color);border-right:1px solid var(--idm-primary-color)}.forecast-models .model[data-v-aec5af09]:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.legend[data-v-aec5af09]{display:flex;align-items:center;color:var(--idm-info-color)}.legend .icon[data-v-aec5af09]{height:14px;width:14px;border-radius:50%;border:3px solid #fff;margin-right:3px}.legend .icon.td[data-v-aec5af09]{background-color:var(--idm-tropicals-td)}.legend .icon.ts[data-v-aec5af09]{background-color:var(--idm-tropicals-ts)}.legend .icon.sts[data-v-aec5af09]{background-color:var(--idm-tropicals-sts)}.legend .icon.ty[data-v-aec5af09]{background-color:var(--idm-tropicals-ty)}.legend .icon.sty[data-v-aec5af09]{background-color:var(--idm-tropicals-sty)}.legend .icon.supper-ty[data-v-aec5af09]{background-color:var(--idm-tropicals-super-ty)}.legend .icon.r7[data-v-aec5af09]{border:1.5px solid var(--idm-tropicals-r7)}.legend .icon.r10[data-v-aec5af09]{border:1.5px solid var(--idm-tropicals-r10)}.legend .icon.history[data-v-aec5af09]{border:none;border-radius:0;height:4px;background:var(--idm-black-5)}.legend .button[data-v-aec5af09]{cursor:pointer;padding:0 4px;border-radius:4px;border:1px solid var(--idm-primary-color);color:var(--idm-primary-color)}.more[data-v-aec5af09]{display:flex;align-items:center;justify-content:flex-end;color:var(--idm-primary-color);font-weight:700;margin-top:5px}.legend-bars[data-v-dec867b8]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgba(59,126,162,0),rgb(172,210,255),rgb(172,210,255),rgb(3,248,103),rgb(14,201,3),rgb(190,226,2),rgb(248,1,1),rgb(197,5,58),rgb(197,5,58));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-dec867b8]{font-size:12px;text-align:center;color:var(--idm-white);width:35px}.legend-bars[data-v-952dee5c]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(208,56,56),rgb(208,56,56),rgb(190,226,2),rgb(190,226,2),rgb(4,210,64),rgb(4,210,64),rgb(172,210,255),rgb(172,210,255));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-952dee5c]{font-size:12px;text-align:center;color:var(--idm-white);width:40px}.legend-bars[data-v-67e5094b]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-67e5094b]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-389ea886]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(150,209,216),rgb(129,204,197),rgb(103,180,186),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-389ea886]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-db805141]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(76,165,228),rgb(76,165,228),rgb(76,165,228),rgb(76,165,228),rgb(103,180,186),rgb(129,204,197),rgb(150,209,216),rgb(180,209,216));padding:2px 0;border-radius:10px;box-shadow:var(--idm-gl-box-shadow)}.legend-bars span[data-v-db805141]{font-size:12px;text-align:center;color:var(--idm-white);width:40px}.point-meteo[data-v-fb5b12d6]{bottom:unset}.point-meteo .meteo-box[data-v-fb5b12d6]{position:absolute;color:var(--idm-black-8);top:0;left:5px;padding:10px;background-color:var(--idm-white-9);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);width:260px;border-top-right-radius:5px;border-bottom-right-radius:5px;z-index:2}.point-meteo .meteo-box .header-box[data-v-fb5b12d6]{margin-bottom:10px;box-sizing:border-box;color:var(--idm-black-8)}.point-meteo .meteo-box .header-box .close[data-v-fb5b12d6]{position:relative;height:0px;text-align:right;font-size:22px;color:var(--idm-primary-color)}.point-meteo .meteo-box .header-box .main[data-v-fb5b12d6]{font-size:16px}.point-meteo .meteo-box .header-box .sub[data-v-fb5b12d6]{margin:3px 0;font-size:12px;color:var(--idm-info-color)}.point-meteo .meteo-box .main-box[data-v-fb5b12d6]{padding:0 5px;border-radius:5px;background:var(--idm-gray-light)}.point-meteo .meteo-box .main-box .flex-space[data-v-fb5b12d6]{padding:3px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--idm-white);box-sizing:border-box}.point-meteo .meteo-box .main-box .flex-space label[data-v-fb5b12d6]{color:var(--idm-black-8)}.point-meteo .meteo-box .main-box .flex-space label[data-v-fb5b12d6]:after{content:":"}.point-meteo .meteo-box .main-box .flex-space[data-v-fb5b12d6]:last-child{border-bottom:none}.point-meteo .meteo-box .more[data-v-fb5b12d6]{margin-top:5px;color:var(--idm-primary-color);font-weight:700;cursor:pointer}.point-meteo[data-v-fb5b12d6]:after{display:block;width:8px;height:8px;border-radius:50%;content:"";background-color:var(--idm-white-9);margin-bottom:360px}.point-meteo[data-v-fb5b12d6]:before{display:block;content:"";width:2px;height:360px;margin-left:3px;border-left:2px solid var(--idm-white-9)}#zone-info[data-v-c0864afc]{position:absolute;background:var(--idm-white);color:var(--idm-black-8);z-index:10}#zone-info .rich-context[data-v-c0864afc]{width:100vw;height:100vh;padding:10px;font-size:14px;font-weight:400;color:var(--idm-black-8)!important;overflow-y:auto}#zone-info .close[data-v-c0864afc]{position:relative;color:var(--idm-info-color-light2);font-size:24px;height:0;text-align:right;margin:5px 5px 0 0}#port-info[data-v-30e545a2]{position:absolute;background:var(--idm-white);color:var(--idm-black-8);padding:10px;border-radius:6px;cursor:default;z-index:1000;height:fit-content}#port-info .port-box[data-v-30e545a2]{margin-top:10px;max-width:240px}#port-info .port-box .flex-start[data-v-30e545a2]{line-height:2}#port-info .port-box .flex-start label[data-v-30e545a2]{color:var(--idm-info-color);margin-right:10px;width:50px}#port-info .port-box .flex-start span[data-v-30e545a2]{flex:1;flex-wrap:wrap;text-align:justify-all;color:var(--idm-black-8)}#port-info .port-box .flex-start span.link[data-v-30e545a2]{cursor:pointer;text-decoration:underline}#port-info .port-box .flex-start span.link[data-v-30e545a2]:hover{font-weight:600}#port-info .close[data-v-30e545a2]{position:relative;text-align:right;height:0px;color:var(--idm-info-color-light2);font-size:24px}.lat-lng-tip[data-v-51cc4052]{position:absolute;padding:2px 10px;border-radius:5px;color:var(--idm-primary-color);font-size:12px;top:unset;background:var(--idm-white);box-shadow:0 2px 12px #0003;transition:all .4s ease-in-out}.menu-bar-box[data-v-ab627b83]{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out}.menu-bar-box .bar-item[data-v-ab627b83]{position:relative;margin-bottom:15px;border-radius:5px;background:var(--idm-white);cursor:pointer;box-shadow:0 2px 12px #0003}.menu-bar-box .bar-item .menu-icon[data-v-ab627b83]{padding:8px;display:flex}.menu-bar-box .bar-item .menu-icon[data-v-ab627b83]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.menu-bar-box .bar-item .menu-icon[data-v-ab627b83]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.menu-bar-box .bar-item .menu-icon span[data-v-ab627b83]{font-size:18px;font-weight:500;color:var(--idm-black-8)}.menu-bar-box .bar-item .menu-icon.active[data-v-ab627b83]{background:var(--idm-primary-color)}.menu-bar-box .bar-item .menu-icon.active span[data-v-ab627b83]{color:var(--idm-white)}:root{--idm-tropicals-td: #03f869;--idm-tropicals-ts: #f2f202;--idm-tropicals-sts: #ff9100;--idm-tropicals-ty: #f44336;--idm-tropicals-sty: #c604a4;--idm-tropicals-super-ty: #6b05bb;--idm-tropicals-r7: #ff9100;--idm-tropicals-r10: #f44336;--idm-gl-box-shadow-color: rgba(0, 0, 0, .5);--idm-gl-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, .04), 0px 8px 20px rgba(0, 0, 0, .08);--idm-gl-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, .12);--idm-gl-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, .12);--idm-gl-box-shadow-dark: 0px 16px 48px 16px rgba(0, 0, 0, .08), 0px 12px 32px rgba(0, 0, 0, .12), 0px 8px 16px -8px rgba(0, 0, 0, .16)}.point-marker{pointer-events:none!important}.point-marker .marker-circle{pointer-events:inherit;width:12px;height:12px;border-radius:50%;border:2px solid var(--idm-white);background:var(--idm-danger-color)}.point-marker .marker-circle:hover{cursor:pointer}.point-marker.closed{pointer-events:auto!important}.point-summary-marker,.point-contextmenu-marker{color:var(--idm-white);font-size:12px;background:var(--idm-danger-color);border:1px solid var(--idm-white);padding:2px 5px;border-radius:5px;cursor:pointer}.point-summary-marker .marker-close,.point-contextmenu-marker .marker-close{pointer-events:auto;position:absolute;background:var(--idm-danger-color);border:1px dashed var(--idm-white);display:flex;align-items:center;justify-content:center;width:20px;height:20px;right:-17px;top:-17px;cursor:pointer;font-size:20px}.tip-marker{color:var(--idm-white);font-size:12px;text-shadow:var(--idm-text-shadow);background-color:var(--idm-black-6);padding:2px 5px;border-radius:5px;cursor:pointer}.tip-marker .marker-label{border-bottom:var(--idm-dashed-border)}.tip-marker .marker-label:last-child{border-bottom:none}.tip-marker .marker-label b{font-weight:600;color:var(--idm-danger-color)}.hurricane-hourly-marker .iconfont{font-size:34px!important;color:var(--idm-danger-color)}.hurricane-hourly-marker svg{height:34px;width:34px}.hurricane-hourly-marker .center{box-sizing:border-box;display:flex;align-items:center;justify-content:center}.hurricane-hourly-marker .center.north{animation:anticlockwise 2s linear infinite}.hurricane-hourly-marker .center.south{animation:clockwise 2s linear infinite}@keyframes clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes anticlockwise{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@idmwx/idmui-gl3",
3
3
  "private": false,
4
- "version": "3.7.9",
4
+ "version": "3.8.1",
5
5
  "description": "idm webgl3",
6
6
  "type": "module",
7
7
  "keywords": [
@@ -28,7 +28,7 @@
28
28
  "release": "yarn build && yarn publish --access public"
29
29
  },
30
30
  "dependencies": {
31
- "@idm-plugin/geo": "^1.2.7",
31
+ "@idm-plugin/geo": "^1.3.5",
32
32
  "@idmui/style": "^0.0.7",
33
33
  "@idmwx/idmwx-base": "^2.9.1",
34
34
  "@mapbox/sphericalmercator": "^1.2.0",