@idmwx/idmui-gl4 2.2.0 → 2.2.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 +3 -1
- package/dist/index.umd.cjs +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -9307,7 +9307,9 @@ function ic(t, e, o, i, a, r) {
|
|
|
9307
9307
|
}, [
|
|
9308
9308
|
p(c, {
|
|
9309
9309
|
text: t.$t("weather.weatherLayers"),
|
|
9310
|
-
location: "left"
|
|
9310
|
+
location: "left",
|
|
9311
|
+
touch: "hover",
|
|
9312
|
+
"auto-hide": 2e3
|
|
9311
9313
|
}, {
|
|
9312
9314
|
activator: u(({ props: H }) => [
|
|
9313
9315
|
p(l, j(H, {
|
package/dist/index.umd.cjs
CHANGED
|
@@ -200,7 +200,7 @@
|
|
|
200
200
|
<path d="M10 2.5V17.5" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
201
201
|
<path d="M5 7.5L10 2.5L15 7.5" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
202
202
|
</svg>`;c.src="data:image/svg+xml;base64,"+window.btoa(h);const d=[c];let g=0;d.forEach(f=>{f.onload=()=>{g++,this.map.hasImage("currentDirIcon")||this.map.addImage("currentDirIcon",c),g===1&&this.map.addLayer({id:this.directionLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","icon-image":"currentDirIcon","icon-size":["interpolate",["linear"],["get","spd"],.5,.3,1,.5,1.5,.7,2,.8,3.5,1],"icon-offset":[0,-20],"icon-allow-overlap":!0,"icon-rotation-alignment":"map","icon-rotate":{property:"val",stops:[[0,0],[360,360]]}},paint:{"icon-opacity":this.opacity}},this.beforeLayer)}}),i=new Date().valueOf()-(a+r),console.log("[current] add elapsed: ",i,", total: ",r+=i)}}},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)}}};function ls(o,t,a,r,i,l){return null}const ss=j(rs,[["render",ls]]),qd="",ns={name:"IdmCurrentParticle",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:uo},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,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],scale:.3},paused:!1,initial:!0,right:10}},watch:{"factor.version":{async handler(){var o,t;(o=this.factor)!=null&&o.active?await this.handleRender():this.handleClear(),(t=this.factor)!=null&&t.particle||this.handleClearParticle()},immediate:!0},"factor.particle":{async handler(o,t){o!==t&&t!==void 0&&(o?(this.handleClear(),await this.handleRender()):this.handleClearParticle())}},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{async handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;await this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[current-particle] add elapsed: ",a,", total: ",t+=a)}},handleSetup(){if(!this.context){this.context=this.viewport.rampColorCanvas.getContext("webgl");const o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.uvFragmentSchema);this.program=t,this.aPositionBuffer=a}this.handleParticleSetup()},handleParticleSetup(){if(!this.particleContext){this.particleContext=this.viewport.particleCanvas.getContext("webgl");const o=[[0,"rgb(183,224,224)"],[1,"rgb(199,202,202)"],[.6,"rgb(199,202,202)"]];this.wrapper=this.webgl.bindParticle(this.particleContext,ue.vertexSchema,ue.fragmentSchema,ue.quadVertSchema,ue.screenFragmentSchema,ue.updateFragmentSchema),this.wrapper.color=this.webgl.setup(this.particleContext,o,!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 o=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,o),this.particleTexture=this.webgl.createTexture(this.particleContext,this.particleContext.NEAREST,this.particleContext.LINEAR,this.particleContext.CLAMP_TO_EDGE,o),this.wrapper.image=o}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()})},handleClearParticle(){var o,t,a,r,i,l,s;(o=this.viewport)==null||o.toggleParticle(!1),this.particleContext=void 0,this.initial=!0,(a=(t=this.viewport)==null?void 0:t.map)==null||a.off("resize",this.handleResize),(i=(r=this.viewport)==null?void 0:r.map)==null||i.off("movestart",this.handlePause),(s=(l=this.viewport)==null?void 0:l.map)==null||s.off("moveend",this.handlePlay),this.handlePause()},handleClear(){var o;(o=this.viewport)==null||o.toggle(!1),this.context=void 0,this.etime=void 0,this.handleClearParticle()}}},cs={key:0};function ms(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",cs,[e.createElementVNode("div",{class:"legend-bars-gl4 current",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"kts",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"0.4",-1),e.createElementVNode("span",null,"0.8",-1),e.createElementVNode("span",null,"1.6",-1),e.createElementVNode("span",null,"2",-1),e.createElementVNode("span",null,"3.2",-1)]),4)])):e.createCommentVNode("",!0)}const ds=j(ns,[["render",ms]]),Xd="",hs={name:"IdmSigWave",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[sig-wave] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgb(50, 158, 186)"],[10/255,"rgb(50, 158, 186)"],[20/255,"rgb(48, 128, 164)"],[30/255,"rgb(48, 99, 142)"],[40/255,"rgb(57, 61, 143)"],[50/255,"rgb(179, 86, 189)"],[60/255,"rgb(154, 45, 123)"],[80/255,"rgb(134, 48, 48)"],[120/255,"rgb(194, 77, 91)"],[150/255,"rgb(192, 118, 105)"],[180/255,"rgb(192, 163, 157)"],[1,"rgb(192, 163, 157)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},ps={key:0};function gs(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",ps,[e.createElementVNode("div",{class:"legend-bars-gl4 sig-wave",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"m",-1),e.createElementVNode("span",null,"0.5",-1),e.createElementVNode("span",null,"1",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"2",-1),e.createElementVNode("span",null,"6",-1),e.createElementVNode("span",null,"9",-1)]),4)])):e.createCommentVNode("",!0)}const us=j(hs,[["render",gs],["__scopeId","data-v-c6137292"]]),fs={name:"IdmSigWaveHeight",props:{map:{type:Object},sigWaveHeight:{type:Object},beforeLayer:{type:String},menuToggle:{type:Object}},data(){return{right:10,toggle:!1,showCaption:!1,source:"sig-wave-height-source",heightLayer:"sig-wave-height-layer",heightLabelLayer:"sig-wave-height-label-layer",empty:V.featureCollection([])}},watch:{"sigWaveHeight.version":{handler(){var o;(o=this.sigWaveHeight)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0}},methods:{handleMenuToggle(){this.toggle=!this.toggle,this.showCaption=!this.showCaption},handleRender(){var o,t;if(this.sigWaveHeight){const a=new Date().valueOf();let r=0,i=0,l=this.empty;this.sigWaveHeight.active&&(l=this.sigWaveHeight.data),(o=this.map)!=null&&o.getSource(this.source)?((t=this.map)==null||t.getSource(this.source).setData(l),i=new Date().valueOf()-(a+r),console.log("[sig-wave-height] update elapsed: ",i,", total: ",r+=i)):(this.map.addSource(this.source,{type:"geojson",data:l}),this.map.addLayer({id:this.heightLayer,type:"fill",source:this.source,filter:["==","$type","Polygon"],paint:{"fill-opacity":.8,"fill-color":["step",["get","val"],"rgba(0,235,156,0)",2,"rgba(0,235,156,0.4)",3,"#ffed00",4,"#ff9800",5,"#f77800",6,"#e4711e",7,"#e06128",8,"#dc5132",9,"#d5453c",10,"#cd3a46",12,"#be2c50",14,"#b41a5a"]}},this.beforeLayer),this.map.addLayer({id:this.heightLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","symbol-spacing":100,"text-field":["format",["get","val"],{"font-scale":1}],"text-rotation-alignment":"map","text-line-height":1.3,"text-size":10},paint:{"text-color":["step",["get","val"],"rgba(0, 0, 0, 0.7)",9,"rgba(255,255,255,0.8)"]}},this.beforeLayer),i=new Date().valueOf()-(a+r),console.log("[sig-wave-height] 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 ys(o,t,a,r,i,l){return null}const bs=j(fs,[["render",ys]]),Kd="",ws={name:"IdmSwell",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[sig-wave] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgb(50, 158, 186)"],[10/255,"rgb(50, 158, 186)"],[20/255,"rgb(48, 128, 164)"],[30/255,"rgb(48, 99, 142)"],[40/255,"rgb(57, 61, 143)"],[50/255,"rgb(179, 86, 189)"],[60/255,"rgb(154, 45, 123)"],[80/255,"rgb(134, 48, 48)"],[120/255,"rgb(194, 77, 91)"],[150/255,"rgb(192, 118, 105)"],[180/255,"rgb(192, 163, 157)"],[1,"rgb(192, 163, 157)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},xs={key:0};function _s(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",xs,[e.createElementVNode("div",{class:"legend-bars-gl4 swell",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"m",-1),e.createElementVNode("span",null,"0.5",-1),e.createElementVNode("span",null,"1",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"2",-1),e.createElementVNode("span",null,"6",-1),e.createElementVNode("span",null,"9",-1)]),4)])):e.createCommentVNode("",!0)}const ks=j(ws,[["render",_s],["__scopeId","data-v-3c94b068"]]),zs={name:"IdmPrmsl",props:{map:{type:Object},prmsl:{type:Object},beforeLayer:{type:String},showRampColor:{type:Boolean},activeWeatherLayers:{type:Array},theme:{type:String}},data(){return{right:10,toggle:!1,source:"prmsl-source",layer:"prmsl-layer",labelLayer:"prmsl-label-layer",pointLabelLayer:"prmsl-point-label-layer",empty:V.featureCollection([])}},watch:{"prmsl.version":{handler(){var o;(o=this.prmsl)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0}},methods:{handleMenuToggle(){this.toggle=!this.toggle},handleRender(){var o,t,a;if(this.prmsl){const r=new Date().valueOf();let i=0,l=0,s=this.empty;this.prmsl.active&&(s=this.prmsl.data),(o=this.map)!=null&&o.getSource(this.source)?((t=this.map)==null||t.getSource(this.source).setData(s),l=new Date().valueOf()-(r+i),console.log("[prmsl] update elapsed: ",l,", total: ",i+=l)):(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":["step",["get","val"],"rgba(162,13,2,1)",920,"rgba(255, 96, 98, 1)",980,"rgba(255, 246, 184, 1)",1100,"rgba(199,171,250,1)"],"line-width":1,"line-opacity":this.theme==="light"?1:.3}},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":10},paint:{"text-color":"black","text-halo-color":"rgba(255,255,255,1)","text-opacity":.7,"text-halo-width":1}},this.beforeLayer),this.map.addLayer({id:this.pointLabelLayer,type:"symbol",source:this.source,filter:["==","$type","Point"],layout:{"symbol-placement":"point","text-allow-overlap":!0,"text-field":["format",["get","type"],{"font-scale":1.03},`
|
|
203
|
-
`,["get","val"],{"font-scale":1}],"text-rotation-alignment":"map","text-line-height":1.3,"text-size":12,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},paint:{"text-color":this.theme==="light"?["step",["get","val"],"rgba(0, 0, 0, 0.5)",920,"rgba(0, 0, 0, 0.5)",980,"rgba(0, 0, 0, 0.7)",1100,"rgba(0, 0, 0, 0.7)"]:["step",["get","val"],"rgba(162,13,2,1)",920,"rgba(255, 96, 98, 1)",980,"rgba(255, 246, 184, 1)",1100,"rgba(199,171,250,1)"],"text-halo-color":["step",["get","val"],"rgba(162,13,2,1)",920,"rgba(255, 96, 98, 1)",980,"rgba(255, 246, 184, 1)",1100,"rgba(199,171,250,1)"],"text-halo-width":this.theme==="light"?1:0}},this.beforeLayer),l=new Date().valueOf()-(r+i),console.log("[prmsl] add elapsed: ",l,", total: ",i+=l))}},handleClear(){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 vs(o,t,a,r,i,l){return null}const Ls=j(zs,[["render",vs]]),Jd="",Cs={name:"IdmIceEdge",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[ice-edge] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgba(86, 169, 230, 0)"],[1/255,"rgba(86, 169, 230, 0)"],[25/255,"rgba(86, 169, 230, 1)"],[25/255,"rgba(47, 226, 155, 1)"],[100/255,"rgba(47, 226, 155, 1)"],[100/255,"rgba(213, 253, 37, 1)"],[175/255,"rgba(213, 253, 37, 1)"],[175/255,"rgba(230, 176, 39, 1)"],[225/255,"rgba(230, 176, 39, 1)"],[225/255,"rgba(230, 84, 39, 1)"],[250/255,"rgba(230, 84, 39, 1)"],[1,"rgba(230, 84, 39, 1)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Ps={key:0};function Ss(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Ps,[e.createElementVNode("div",{class:"legend-bars-gl4 ice-edge",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",{style:{color:"rgba(var(--v-theme-black), 0.7)"}},"%",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"40",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"70",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"90",-1),e.createElementVNode("span",null,null,-1)]),4)])):e.createCommentVNode("",!0)}const Ns=j(Cs,[["render",Ss]]),Qd="",Ts={name:"IdmCover",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[ice-cover] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgba(68, 1, 84, 0)"],[1/255,"rgba(63, 72, 137, 0)"],[50/255,"rgba(53, 125, 177, 1)"],[100/255,"rgba(33, 145, 140, 1)"],[150/255,"rgba(45, 178, 125, 1)"],[200/255,"rgba(112, 207, 87, 1)"],[250/255,"rgba(253, 231, 37, 0.8)"],[1,"rgba(253, 231, 37, 1)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Ds={key:0};function Es(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Ds,[e.createElementVNode("div",{class:"legend-bars-gl4 ice-cover",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"%",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"40",-1),e.createElementVNode("span",null,"60",-1),e.createElementVNode("span",null,"80",-1),e.createElementVNode("span",null,"100",-1)]),4)])):e.createCommentVNode("",!0)}const Ms=j(Ts,[["render",Es],["__scopeId","data-v-916b01eb"]]),$d="",Vs={name:"IdmThickness",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},menuToggle:{type:Object},bottom:{type:String,default:"70px"}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[ice-thickness] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgba(4, 6, 19, 0)"],[1/255,"rgba(4, 6, 19, 0)"],[20/255,"rgba(51, 50, 102, 1)"],[40/255,"rgba(63, 82, 158, 1)"],[50/255,"rgba(66, 123, 183, 1)"],[60/255,"rgba(92, 161, 197, 1)"],[80/255,"rgba(134, 199, 212, 0.7)"],[100/255,"rgba(134, 199, 212, 1)"],[150/255,"rgba(234, 253, 2536, 0.8)"],[250/255,"rgba(234, 253, 2536, 0.9)"],[1,"rgba(234, 253, 2536, 1)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Bs={key:0};function Is(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Bs,[e.createElementVNode("div",{class:"legend-bars-gl4 ice-thickness",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"m",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"0.6",-1),e.createElementVNode("span",null,"1",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"2",-1),e.createElementVNode("span",null,"3",-1)]),4)])):e.createCommentVNode("",!0)}const Rs=j(Vs,[["render",Is]]),eh="",As={name:"IdmPrecip3h",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},deeimmediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[precip3h] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Os={key:0};function js(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Os,[e.createElementVNode("div",{class:"legend-bars-gl4 precip3h",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"mm",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"2",-1),e.createElementVNode("span",null,"3",-1),e.createElementVNode("span",null,"7",-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"30",-1)]),4)])):e.createCommentVNode("",!0)}const Fs=j(As,[["render",js]]),th="",Hs={name:"IdmVisibility",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{right:10,program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[visibility] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Gs={key:0};function Ws(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Gs,[e.createElementVNode("div",{class:"legend-bars-gl4 visibility",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"nm",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"0.5",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"3",-1),e.createElementVNode("span",null,"9",-1)]),4)])):e.createCommentVNode("",!0)}const Us=j(Hs,[["render",Ws]]),oh="",Ys={name:"IdmWaterTemp",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[water-temp] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Zs={key:0};function qs(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Zs,[e.createElementVNode("div",{class:"legend-bars-gl4 water-temp",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"°C",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"30",-1),e.createElementVNode("span",null,"40",-1)]),4)])):e.createCommentVNode("",!0)}const Xs=j(Ys,[["render",qs]]),ah="",Ks={name:"IdmTemp",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[temp] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Js={key:0};function Qs(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Js,[e.createElementVNode("div",{class:"legend-bars-gl4 temp",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"°C",-1),e.createElementVNode("span",null,"-20",-1),e.createElementVNode("span",null,"-10",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"30",-1),e.createElementVNode("span",null,"40",-1)]),4)])):e.createCommentVNode("",!0)}const $s=j(Ks,[["render",Qs]]),ih="",en={name:"IdmGlLayer",components:{IdmWindBarb:es,IdmWindParticle:is,IdmCurrentDirection:ss,IdmCurrentParticle:ds,IdmWave:us,IdmSigWaveHeight:bs,IdmSwell:ks,IdmPrmsl:Ls,IdmIceEdge:Ns,IdmIceCover:Ms,IdmIceThickness:Rs,IdmPrecip3h:Fs,IdmVisibility:Us,IdmWaterTemp:Xs,IdmTemp:$s},props:{simple:{type:Boolean,default:!1},isLogin:{type:Boolean,default:!1},theme:{type:String},map:{type:Object},mapFeather:{type:String},gateway:{type:String},assistGateway:{type:Array,default:[]},defaultMeteoToken:{type:String},top:{type:Number,default:60},paddingTop:{type:Number,default:48},menuToggle:{type:Object,default:{}},realTime:{type:String},forecastModel:{type:String},beforeLayer:{type:String}},emits:["forecastModel","menuToggle","weatherCheckList","autoActive"],data(){return{right:10,toggle:!1,autoActive:!0,weatherWeight:0,allLayers:[...Be.LayerHelper.WEATHER_LAYERS],tagLayers:[...Be.LayerHelper.WEATHER_LAYERS.filter(o=>!o.hide)],checkList:[],renderKey:"",iceToggleValue:void 0,waveToggleValue:void 0,weatherLayers:{},activeWeatherLayers:[],cache:{v:"0.0.1",versionKey:"weatherLayerCacheVersionGL4",autoActiveKey:"autoActiveCacheGL4",checkListKey:"weatherCheckListCacheGL4"},models:{},currentModel:localStorage.getItem("forecastModelCacheGL4")==="GFS"?"GFS":"ECMWF",zoom:6,viewport:void 0,particleFactor:void 0,showWindParticle:!0,showCurrentParticle:!0,legendToggle:!1,legend:{barbs:[2,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100,105,0],current:[{label:"0-0.5 kts",size:.3,color:"rgb(58, 164, 58)"},{label:"0.5-1 kts",size:.4,color:"#ffff00"},{label:"1-1.5 kts",size:.6,color:"#ff9500"},{label:"1.5-2 kts",size:.8,color:"#f44336"},{label:">= 2 kts",size:1,color:"#e4711e"}],sigWaveHeight:[{label:"< 2 m",color:"rgba(0,235,156,0)"},{label:"2-3 m",color:"rgba(0,235,156,0.4)"},{label:"3-4 m",color:"#ffed00"},{label:"4-5 m",color:"#ff9800"},{label:"5-6 m",color:"#f77800"},{label:"6-7 m",color:"#e4711e"},{label:"7-8 m",color:"#e06128"},{label:"8-9 m",color:"#dc5132"},{label:"9-10 m",color:"#d5453c"},{label:"10-12 m",color:"#cd3a46"},{label:"12-14 m",color:"#be2c50"},{label:"> 14 m",color:"#aa1a5a"}]}}},computed:{listStyle(){return this.simple?{top:this.top+"px",left:this.toggle?"0px":"-280px"}:{top:this.top+"px",right:this.toggle?"0px":"-280px"}},computeDateZ(){return function(o){var t;if(o){const a=v(o);return`${(t=a==null?void 0:a.utc())==null?void 0:t.format("MMM-DD/HHmm")}Z`}return"-"}},computeDateUpdate(){return function(o){return o?v(o).fromNow():"-"}},overlaysKeys(){return this.tagLayers.filter(o=>o.overlays).map(o=>o.key)},rendersKeys(){return this.allLayers.filter(o=>!o.overlays&&o.enabled).map(o=>o.key)},showTipMenu(){return this.checkList.includes("wind")||this.checkList.includes("current-direction")||this.checkList.includes("sig-wave-height")},barbsIconName(){var t,a,r;const o=[];for(let i=0;i<((a=(t=this.legend)==null?void 0:t.barbs)==null?void 0:a.length);i++){const l=((r=this.legend)==null?void 0:r.barbs[i])||0,s=l<10?`00${l}kts`:l<100?`0${l}kts`:`${l}kts`;o.push("icon-a-"+s)}return o}},watch:{"menuToggle.v":{handler(){this.toggle=this.menuToggle.weatherLayers,this.$nextTick(()=>{var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)})}},currentModel:{handler(o,t){this.$emit("forecastModel",o),localStorage.setItem("forecastModelCacheGL4",o)},immediate:!0},forecastModel:{handler(o,t){o&&o!==t&&this.handleWeatherLayerChange({sourceChanged:!0})}},map:{handler(){this.map&&(this.fetchCache(),this.map.on("move",this.handleMove4Weather),this.viewport=new uo(this.map),this.handleRampColorInitial())},immediate:!0},realTime:{handler(o,t){o&&t&&v(o).utc().format("yyyy-MM-DD HH")!==v(t).utc().format("yyyy-MM-DD HH")&&this.$nextTick(()=>{this.fetchWeatherLayers()})},immediate:!0},renderKey:{handler(o,t){o&&o!==t?o==="wave-group"?this.checkList=["wave-group",this.waveToggleValue||"sig-wave"]:o==="ice-forecast"?this.checkList=["ice-forecast",this.iceToggleValue||"ice-cover"]:this.checkList=[o]:!o&&t&&(this.checkList=this.checkList.filter(a=>a!==t))}},checkList:{handler(o,t){var a,r,i,l,s,n;this.handleCheckListChange(o,t),this.$emit("weatherCheckList",o),this.autoActive&&this.checkList.length?(i=(r=(a=this.$parent)==null?void 0:a.$refs)==null?void 0:r.idmBottomBar)==null||i.handleToggle("weather",!0):(n=(s=(l=this.$parent)==null?void 0:l.$refs)==null?void 0:s.idmBottomBar)==null||n.handleToggle("weather",!1)}},autoActive:{handler(o){var t,a,r,i,l,s;localStorage.setItem(this.cache.autoActiveKey,this.autoActive),this.activeWeatherLayers=this.autoActive?this.allLayers.filter(n=>this.checkList.includes(n.key)):[],this.handleWeatherLayerChange(),this.autoActive&&this.checkList.length?(r=(a=(t=this.$parent)==null?void 0:t.$refs)==null?void 0:a.idmBottomBar)==null||r.handleToggle("weather",!0):(s=(l=(i=this.$parent)==null?void 0:i.$refs)==null?void 0:l.idmBottomBar)==null||s.handleToggle("weather",!1),this.$emit("autoActive",this.autoActive)}},iceToggleValue:{handler(o){o&&(this.checkList=["ice-forecast",this.iceToggleValue])}},waveToggleValue:{handler(o){o&&(this.checkList=["wave-group",this.waveToggleValue])}},showWindParticle:{handler(o){let t="wind-particle";this.weatherLayers[t].particle=o,this.weatherLayers[t].version=Math.random()+1}},showCurrentParticle:{handler(o){let t="current-particle";this.weatherLayers[t].particle=o,this.weatherLayers[t].version=Math.random()+1}},isLogin:{handler(o){o?this.fetchModels():this.models={}},immediate:!0}},mounted(){this.fetchModels()},methods:{arraysEqual(o,t){if((o==null?void 0:o.length)!==(t==null?void 0:t.length))return!1;for(let a=0;a<(o==null?void 0:o.length);a++)if((o==null?void 0:o[a])!==(t==null?void 0:t[a]))return!1;return!0},fetchCache(){var a,r;const o=localStorage.getItem(this.cache.versionKey);this.cache.v!==o&&(localStorage.removeItem(this.cache.autoActiveKey),localStorage.removeItem(this.cache.checkListKey),localStorage.setItem(this.cache.versionKey,this.cache.v));let t=localStorage.getItem(this.cache.autoActiveKey);this.autoActive=t!=="false",localStorage.setItem(this.cache.autoActiveKey,this.autoActive),t=localStorage.getItem(this.cache.checkListKey),this.waveToggleValue=(a=JSON.parse(t))!=null&&a.some(i=>i==="swell")?"swell":void 0,this.iceToggleValue=(r=JSON.parse(t))!=null&&r.some(i=>i==="ice-thickness")?"ice-thickness":void 0,this.checkList=JSON.parse(t||JSON.stringify(["wind","sig-wave-height"])),this.checkList.find(i=>this.rendersKeys.includes(i))&&(this.renderKey=this.checkList.find(i=>this.rendersKeys.includes(i))),localStorage.setItem(this.cache.checkListKey,JSON.stringify(this.checkList))},handleMenuToggle(){this.$emit("menuToggle","weatherLayers")},handleFastWeatherToggle(o){let t=[];this.checkList.includes(o)?t=this.checkList.filter(a=>a!==o):t=[...this.checkList,o],this.handleCheckListChange(t,this.checkList)},handleCheckListChange(o,t){if(this.arraysEqual(o,t))return!1;const a=[...new Set(o)],r=a==null?void 0:a.filter(l=>!(t!=null&&t.includes(l)))[0],i=t==null?void 0:t.filter(l=>!(a!=null&&a.includes(l)))[0];r&&(r==="ice-cover"||r==="ice-thickness"||r==="ice-forecast"?(this.checkList=["ice-forecast",this.iceToggleValue||"ice-cover"],this.iceToggleValue=this.iceToggleValue||"ice-cover"):r==="sig-wave"||r==="swell"||r==="wave-group"?(this.checkList=["wave-group",this.waveToggleValue||"sig-wave"],this.waveToggleValue=this.waveToggleValue||"sig-wave"):this.rendersKeys.includes(r)?this.checkList=[r]:(this.checkList=a.filter(l=>!this.rendersKeys.includes(l)),this.renderKey=void 0)),i&&(i==="ice-forecast"?(this.checkList=a.filter(l=>!["ice-cover","ice-thickness","ice-forecast"].includes(l)),this.iceToggleValue=void 0):i==="wave-group"?(this.checkList=a.filter(l=>!["wave-group","sig-wave","swell"].includes(l)),this.waveToggleValue=void 0):this.checkList=a),this.checkList.includes("wind-particle")&&(this.showWindParticle=!0),this.checkList.includes("current-particle")&&(this.showCurrentParticle=!0),localStorage.setItem(this.cache.checkListKey,JSON.stringify(a)),this.activeWeatherLayers=this.autoActive?this.allLayers.filter(l=>a.includes(l.key)):[],this.handleWeatherLayerChange()},async fetchModels(){this.models={};const o=await Q.get(`${this.gateway}/api/arc/meteo2/models2`,{headers:{Authorization:this.defaultMeteoToken}});(o==null?void 0:o.data.code)===0&&(this.models=o==null?void 0:o.data.data)},async fetchWeatherLayers(o={}){var i,l,s,n,c,h,d,g,f;const t=new Date().valueOf();let a=0,r=0;if(this.map){const w=((i=this.map)==null?void 0:i.getZoom())+1,z=(l=this.map)==null?void 0:l.getBounds(),x=`${z._sw.lng},${z._sw.lat},${z._ne.lng},${z._ne.lat}`;if(this.particleFactor&&((s=this.$refs.layer)!=null&&s.autoActive)){const p=Be.LayerHelper.WEATHER_LAYERS.find(S=>{var L;return((L=S.peer)==null?void 0:L.weight)===this.particleFactor.weight});this.particleFactor.particle&&(this.showWindParticle||this.showCurrentParticle)?this.weatherWeight=this.weatherWeight&p.weight?this.weatherWeight:this.weatherWeight+p.weight:this.weatherWeight=this.weatherWeight&p.weight?this.weatherWeight-p.weight:this.weatherWeight}if(this.weatherWeight>0){let p=this.weatherWeight;if(p>0){const S=this.assistGateway[Math.round(Math.random()*(this.assistGateway.length-1))],L=await Q.get(`${S}/api/arc/weather/layers2/links?l=${p}&v=${this.forecastModel}&z=${w}&bbox=${x}&t=${this.realTime}`,{headers:{Authorization:this.defaultMeteoToken}});if(r=new Date().valueOf()-(t+a),console.log("weather links elapsed: ",r,", total: ",a+=r),((n=L==null?void 0:L.data)==null?void 0:n.code)===0){const _=(c=L==null?void 0:L.data)==null?void 0:c.data,b=[];for(const k in _)b.push(Q.get(_[k],{headers:{Authorization:this.defaultMeteoToken,key:k},responseType:/\.(jpg|png)$/.test(_[k])?"blob":"json"}).catch(y=>{console.log(`[${k}] fetch layer error: ${y}`)}));const u=await Promise.all(b);this.weatherLayers={},u.map(k=>{var E,B,A,O;const y=((E=k==null?void 0:k.data)==null?void 0:E.data)||(k==null?void 0:k.data);let C=(A=(B=k==null?void 0:k.config)==null?void 0:B.headers)==null?void 0:A.key;C&&y&&(this.weatherLayers[C]={raw:y,type:((O=k==null?void 0:k.config)==null?void 0:O.responseType)==="blob"?"image":"json",etime:L.data.etime})})}if(r=new Date().valueOf()-(t+a),console.log("weather layers elapsed: ",r,", total: ",a+=r),this.weatherLayers["swell-direction"]||this.weatherLayers["swell-height"]){const _=(h=this.weatherLayers["swell-direction"])==null?void 0:h.raw,b=(d=this.weatherLayers["swell-height"])==null?void 0:d.raw;delete this.weatherLayers["swell-direction"],delete this.weatherLayers["swell-height"],this.weatherLayers.swell={type:"json",direction:_,height:{raw:b},etime:L.data.etime}}if(this.weatherLayers["current-direction"]||this.weatherLayers["current-speed"]){const _=(g=this.weatherLayers["current-direction"])==null?void 0:g.raw,b=(f=this.weatherLayers["current-speed"])==null?void 0:f.raw;delete this.weatherLayers["current-direction"],delete this.weatherLayers["current-speed"],this.weatherLayers.current={type:"json",direction:_,speed:{raw:b},etime:L.data.etime}}}}this.handleWeatherLayerToggle(),this.handleDrawWeather4Json()}},handleWeatherLayerToggle(){for(const o in this.weatherLayers)this.weatherLayers[o].active=!1,this.weatherLayers[o].version=Math.random()+1;for(const o of this.activeWeatherLayers){let t=o.key;t==="current-direction"&&(t="current"),this.weatherLayers[t]&&(this.weatherLayers[t].active=!0,this.weatherLayers[t].version=Math.random()+1,t==="wind-particle"&&(this.weatherLayers[t].particle=this.showWindParticle),t==="current-particle"&&(this.weatherLayers[t].particle=this.showCurrentParticle))}},handleWeatherLayerChange(o={sourceChanged:!1}){var a;const t=(a=this.activeWeatherLayers)==null?void 0:a.reduce((r,i)=>r+(r&(i==null?void 0:i.weight)?0:i==null?void 0:i.weight),0);o!=null&&o.sourceChanged||this.weatherWeight!==t?(this.weatherWeight=t,this.fetchWeatherLayers()):this.handleWeatherLayerToggle()},handleRampColorInitial(){var o,t,a,r,i,l,s,n,c,h,d,g;this.viewport.map.getSource((o=this.viewport)==null?void 0:o.rampColorSource)||this.viewport.map.addSource((t=this.viewport)==null?void 0:t.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:(l=this.viewport)==null?void 0:l.rampColorSource,layout:{visibility:"none"}},this.beforeLayer),this.viewport.map.getSource((s=this.viewport)==null?void 0:s.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:(g=this.viewport)==null?void 0:g.particleSource,layout:{visibility:"none"}},this.beforeLayer)},handleDrawWeather4Json(){var l,s,n,c,h,d,g;const o=new Date().valueOf();let t=0,a=0;const r=(l=this.map)==null?void 0:l.getBounds(),i=(s=this.map)==null?void 0:s.getZoom();if(r&&i){const f=T.LngLatHelper.convertToStdLng(r._sw.lng),w=T.LngLatHelper.convertToStdLng(r._ne.lng),z=Math.floor(r._sw.lat),x=Math.ceil(r._ne.lat);for(const p in this.weatherLayers){let S=!1;if(this.weatherLayers[p].active&&this.weatherLayers[p].type==="json"){let L=[];if(p==="swell"){S=!0;const _=((n=this.weatherLayers[p])==null?void 0:n.direction)||{};for(const u in _)if(u>z&&u<x&&(!(i<=this.zoom)||u%(i<2?10:i<4?5:3)===0)){const k=_[u].lng;f>w?k.forEach((y,C)=>{var E,B,A,O,G,W;if(i<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if((y>=f&&y<=180||y>=-180&&y<=w)&&(!(i<=this.zoom)||y%(i<2?10:i<4?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}}):k.forEach((y,C)=>{var E,B,A,O,G,W;if(f<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if(y>=f&&y<=w&&(!(i<=this.zoom)||y%(i<2?10:i<4?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}})}a=new Date().valueOf()-(o+t),console.log("swell direction elapsed: ",a,", total: ",t+=a);const b=this.weatherLayers[p].height;if(b){if(!b.data){const u=[];for(const k in(c=b.raw)==null?void 0:c.LineString){const y=b.raw.LineString[k];for(const C of y)u.push(V.lineString(C,{val:Number(k)}));b.data=V.featureCollection(u)}}if(b.data){const u=this.handleBboxClip(b.data,r);L=L.concat(u)}a=new Date().valueOf()-(o+t),console.log("swell height elapsed: ",a,", total: ",t+=a)}}else if(p==="current"){S=!0;const _=((h=this.weatherLayers[p])==null?void 0:h.direction)||{};for(const u in _)if(u>z&&u<x&&(!(i<=this.zoom)||u%(i<2?10:i<4?5:3)===0)){const k=_[u].lng;f>w?k.forEach((y,C)=>{var E,B,A,O,G,W;if(i<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if((y>=f&&y<=180||y>=-180&&y<=w)&&(!(i<=this.zoom)||y%(i<2?10:i<4?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}}):k.forEach((y,C)=>{var E,B,A,O,G,W;if(f<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if(y>=f&&y<=w&&(!(i<=this.zoom)||y%(i<this.zoom/2?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}})}a=new Date().valueOf()-(o+t),console.log("current direction elapsed: ",a,", total: ",t+=a);const b=this.weatherLayers[p].speed;if(b){if(!b.data){const k=[];for(const y in(d=b.raw)==null?void 0:d.Polygon){const C=b.raw.Polygon[y];for(const E of C)k.push(V.polygon(E,{val:Number(y)}))}b.data=V.featureCollection(k)}const u=i<this.zoom?b.data.features.filter(k=>k.properties.val>.5):b.data.features;L=L.concat(u),a=new Date().valueOf()-(o+t),console.log("current speed elapsed: ",a,", total: ",t+=a)}}else if(p==="wind"){S=!0;const _=this.weatherLayers.wind.raw;for(const b in _)if(b>z&&b<x&&(!(i<=this.zoom)||b%(i<2?10:i<4?5:3)===0)){const u=_[b].lng;f>w?u.forEach((k,y)=>{var C,E,B,A;if(i<2){if((k>=0&&k<=360||k>=-360&&k<=0)&&k%10===0){const O=V.point([k,b],{dir:((C=_[b].val)==null?void 0:C[y])||((E=_[b].dir)==null?void 0:E[y]),spd:_[b].spd[y]});L.push(O)}}else if((k>=f&&k<=180||k>=-180&&k<=w)&&(!(i<=this.zoom)||k%(i<2?10:i<4?5:3)===0)){const O=V.point([k,b],{dir:((B=_[b].val)==null?void 0:B[y])||((A=_[b].dir)==null?void 0:A[y]),spd:_[b].spd[y]});L.push(O)}}):u.forEach((k,y)=>{var C,E,B,A;if(i<2){if((k>=0&&k<=360||k>=-360&&k<=0)&&k%10===0){const O=V.point([k,b],{dir:((C=_[b].val)==null?void 0:C[y])||((E=_[b].dir)==null?void 0:E[y]),spd:_[b].spd[y]});L.push(O)}}else if(k>=f&&k<=w&&(!(i<=this.zoom)||k%(i<2?10:i<4?5:3)===0)){const O=V.point([k,b],{dir:((B=_[b].val)==null?void 0:B[y])||((A=_[b].dir)==null?void 0:A[y]),spd:_[b].spd[y]});L.push(O)}})}a=new Date().valueOf()-(o+t),console.log("wind barb elapsed: ",a,", total: ",t+=a)}else if(p==="sig-wave-height"){if(this.weatherLayers[p].data)L=this.weatherLayers[p].data;else{S=!0;const _=this.weatherLayers[p].raw;if(_){const b=[];for(const u in _.Polygon){const k=_.Polygon[u];for(const y of k)b.push(V.polygon(y,{val:Number(u)}))}for(const u in _.MultiPolygon){const k=_.MultiPolygon[u];for(const y of k)b.push(V.multiPolygon(y,{val:Number(u)}))}for(const u in _.Point){const k=_.Point[u];for(let y=0;y<((g=k.lng)==null?void 0:g.length);y++)b.push(V.point([k.lng[y],u],{val:Number(k.val[y])}))}L=L.concat(b)}}a=new Date().valueOf()-(o+t),console.log("sig-wave-height elapsed: ",a,", total: ",t+=a)}else if(p==="prmsl"){if(this.weatherLayers[p].data)L=this.weatherLayers[p].data;else{S=!0;const _=this.weatherLayers[p].raw;if(_){const b=[];for(const u in _.LineString){const k=_.LineString[u];for(const y of k)b.push(V.lineString(y,{val:Number(u)}))}for(const u in _.Point)_.Point[u].lng.forEach((k,y)=>{k=T.LngLatHelper.convertToStdLng(k),b.push(V.point([k,u],{val:_.Point[u].val[y],type:_.Point[u].type[y]}))});L=L.concat(b)}}a=new Date().valueOf()-(o+t),console.log("prmsl elapsed: ",a,", total: ",t+=a)}L.length&&(this.weatherLayers[p].data=V.featureCollection(L)),S&&(this.weatherLayers[p].version=Math.random()+1)}}}},handleMove4Weather(){for(const o in this.weatherLayers)this.weatherLayers[o].active&&this.weatherLayers[o].type==="image"&&(this.weatherLayers[o].active=!0,this.weatherLayers[o].version=Math.random()+1);this.handleDrawWeather4Json()},handleBboxClip(o,t){const a=[],r=T.LngLatHelper.convertToStdLng(t._sw.lng),i=T.LngLatHelper.convertToStdLng(t._ne.lng);return o.features.forEach(l=>{if(l.geometry.type!=="Point")if(r>i){let s=[r,t._sw.lat,180,t._ne.lat],n=V.bboxClip(l,s);n.geometry.coordinates.length&&a.push(n),s=[-180,t._sw.lat,i,t._ne.lat],n=V.bboxClip(l,s),n.geometry.coordinates.length&&a.push(n)}else{const s=[r,t._sw.lat,i,t._ne.lat],n=V.bboxClip(l,s);n.geometry.coordinates.length&&a.push(n)}else a.push(l)}),a}}},tn={class:"idm-gl4-meteo-layers"},on={key:0,class:"legend-tip-btn-gl4"},an={class:"d-flex flex-row justify-center align-center"},rn={class:"text-caption"},ln={class:"d-flex flex-row justify-center align-center"},sn={key:0,style:{width:"24px",height:"12px",border:"1px solid rgba(var(--v-border-color), var(--v-border-opacity))"}},nn={class:"text-caption px-2"},cn={class:"d-flex flex-row justify-start align-center"},mn={class:"d-flex flex-row justify-center align-center",style:{width:"40px"}},dn={class:"text-caption"},hn={class:"header-box d-flex justify-space-between align-center px-4"},pn={class:"d-flex justify-start align-center ga-3"},gn={class:"text-h5 font-weight-medium"},un={key:0,class:"w-100 d-flex justify-space-between align-center ga-1 mb-1 px-4"},fn={key:0,class:"d-flex justify-start align-center ga-4 pl-6"},yn={key:1,class:"d-flex justify-start align-center ga-4 pl-6"},bn={class:"text-body-1 py-2"},wn={class:"text-body-1 font-weight-medium"},xn={class:"text-body-2 text-label"},_n={class:"text-body-2 text-label"},kn={class:"text-body-2 text-label mb-3"},zn={class:"text-body-1 font-weight-medium"},vn={class:"text-body-2 text-label"},Ln={class:"text-body-2 text-label"},Cn={class:"text-body-2 text-label mb-3"},Pn={class:"text-body-1 py-2"},Sn={class:"text-body-1 font-weight-medium"},Nn={class:"text-body-2 text-label"},Tn={class:"text-body-2 text-label"},Dn={class:"text-body-2 text-label mb-3"},En={class:"text-body-1 font-weight-medium"},Mn={class:"text-body-2 text-label"},Vn={class:"text-body-2 text-label"},Bn={class:"text-body-2 text-label mb-3"},In={class:"text-body-1 py-2"},Rn={class:"text-body-1 font-weight-medium"},An={class:"text-body-2 text-label"},On={class:"text-body-2 text-label"},jn={class:"text-body-2 text-label mb-3"};function Fn(o,t,a,r,i,l){var J,q,te,re,oe,ae,P,U,ce,he,fe,ye,pe,we,be;const s=e.resolveComponent("VBtn"),n=e.resolveComponent("VTooltip"),c=e.resolveComponent("VCol"),h=e.resolveComponent("VRow"),d=e.resolveComponent("VCardText"),g=e.resolveComponent("VDivider"),f=e.resolveComponent("VCard"),w=e.resolveComponent("VSwitch"),z=e.resolveComponent("VBtnToggle"),x=e.resolveComponent("VCardTitle"),p=e.resolveComponent("VCardItem"),S=e.resolveComponent("VCheckbox"),L=e.resolveComponent("VRadio"),_=e.resolveComponent("IdmWindBarb"),b=e.resolveComponent("IdmSigWaveHeight"),u=e.resolveComponent("IdmCurrentDirection"),k=e.resolveComponent("IdmPrmsl"),y=e.resolveComponent("IdmWindParticle"),C=e.resolveComponent("IdmCurrentParticle"),E=e.resolveComponent("IdmWave"),B=e.resolveComponent("IdmSwell"),A=e.resolveComponent("IdmIceEdge"),O=e.resolveComponent("IdmIceCover"),G=e.resolveComponent("IdmIceThickness"),W=e.resolveComponent("IdmPrecip3h"),F=e.resolveComponent("IdmVisibility"),$=e.resolveComponent("IdmWaterTemp"),ee=e.resolveComponent("IdmTemp");return e.openBlock(),e.createElementBlock("div",tn,[e.createElementVNode("div",{class:"menu-bar-box transition pa-1",style:e.normalizeStyle({top:this.top+this.paddingTop+46+"px",right:this.right+"px"})},[e.createVNode(n,{text:o.$t("weather.weatherLayers"),location:"left"},{activator:e.withCtx(({props:M})=>[e.createVNode(s,e.mergeProps(M,{"min-width":"32",width:"32",height:"32",class:["text-none pa-0",i.toggle?"bg-primary active-border":""],onClick:l.handleMenuToggle}),{default:e.withCtx(()=>t[9]||(t[9]=[e.createElementVNode("i",{class:"iconfont icon-Weather text-h4"},null,-1)])),_:2,__:[9]},1040,["class","onClick"])]),_:1},8,["text"])],4),l.showTipMenu?(e.openBlock(),e.createElementBlock("div",on,[e.createElementVNode("div",{class:"menu-bar-box pa-1 rounded",style:e.normalizeStyle({right:i.right+"px"})},[e.createVNode(n,{text:"Legend",location:"left"},{activator:e.withCtx(({props:M})=>[e.createVNode(s,e.mergeProps(M,{"min-width":"32",width:"32",height:"32",class:["text-none pa-0",i.legendToggle?"bg-primary active-border":""],onClick:t[0]||(t[0]=Y=>i.legendToggle=!i.legendToggle)}),{default:e.withCtx(()=>t[10]||(t[10]=[e.createElementVNode("i",{class:"iconfont icon-Legend text-h4"},null,-1)])),_:2,__:[10]},1040,["class"])]),_:1})],4),i.legendToggle?(e.openBlock(),e.createBlock(f,{key:0,elevation:"16",class:"card-info d-flex justify-center align-start",style:e.normalizeStyle({position:"absolute",top:"340px",right:i.right+50+"px"})},{default:e.withCtx(()=>[e.createVNode(d,{class:"d-flex flex-column justify-center align-start text-label px-2",style:{width:"110px"}},{default:e.withCtx(()=>[t[11]||(t[11]=e.createElementVNode("div",{class:"text-body-2 font-weight-600 mb-2"},"Wind Level",-1)),e.createVNode(h,{class:"ma-0 ml-n1 text-body-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.legend.barbs,(M,Y)=>(e.openBlock(),e.createBlock(c,{key:M,cols:"6",class:"d-flex flex-row justify-start align-center py-1 px-0 ma-0"},{default:e.withCtx(()=>[e.createElementVNode("div",an,[e.createElementVNode("i",{class:e.normalizeClass(["iconfont",l.barbsIconName[Y]]),style:e.normalizeStyle({color:a.theme==="dark"?"#fff":"#000"})},null,6),e.createElementVNode("span",rn,e.toDisplayString(Number(M)<10?`00${M}kts`:Number(M)<100?`0${M}kts`:`${M}kts`),1)])]),_:2},1024))),128))]),_:1})]),_:1,__:[11]}),e.createVNode(g,{vertical:""}),e.createVNode(d,{class:"d-flex flex-column justify-center align-start text-label px-2",style:{width:"100px"}},{default:e.withCtx(()=>[t[12]||(t[12]=e.createElementVNode("div",{class:"text-body-2 font-weight-600 mb-2"},"Wave Height",-1)),e.createVNode(h,{class:"ma-0"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.legend.sigWaveHeight,(M,Y)=>(e.openBlock(),e.createBlock(c,{key:Y,cols:"12",class:"d-flex flex-row justify-start align-center py-1 px-0 ma-0"},{default:e.withCtx(()=>[e.createElementVNode("div",ln,[Y===0?(e.openBlock(),e.createElementBlock("div",sn)):(e.openBlock(),e.createElementBlock("div",{key:1,style:e.normalizeStyle({width:"24px",height:"12px",background:M.color})},null,4)),e.createElementVNode("div",nn,e.toDisplayString(M.label),1)])]),_:2},1024))),128))]),_:1})]),_:1,__:[12]}),e.createVNode(g,{vertical:""}),e.createVNode(d,{class:"d-flex flex-column justify-center align-start text-label px-2",style:{width:"90px"}},{default:e.withCtx(()=>[t[13]||(t[13]=e.createElementVNode("div",{class:"text-body-2 font-weight-600 mb-2"},"Current",-1)),e.createVNode(h,{class:"ma-0 ml-n4"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.legend.current,(M,Y)=>(e.openBlock(),e.createBlock(c,{key:Y,cols:"12",class:"d-flex flex-row justify-center align-center py-1 px-0 ma-0"},{default:e.withCtx(()=>[e.createElementVNode("div",cn,[e.createElementVNode("div",mn,[e.createElementVNode("i",{class:"iconfont icon-a-direction-arrow text-label",style:e.normalizeStyle({fontSize:40*M.size+"px"})},null,4)]),e.createElementVNode("div",dn,e.toDisplayString(M.label),1)])]),_:2},1024))),128))]),_:1})]),_:1,__:[13]})]),_:1},8,["style"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["available-layers transition flex-center",i.toggle?"right-bar":""]),style:e.normalizeStyle(l.listStyle)},[e.createElementVNode("div",hn,[e.createElementVNode("div",pn,[e.createElementVNode("div",gn,e.toDisplayString(o.$t("weather.weather")),1),e.createVNode(w,{modelValue:i.autoActive,"onUpdate:modelValue":t[1]||(t[1]=M=>i.autoActive=M),class:"small-switch",color:"primary","base-color":"disabled",inset:"","hide-details":""},null,8,["modelValue"])]),e.createVNode(s,{icon:"",density:"compact",variant:"plain",class:"mr-n2",onClick:l.handleMenuToggle},{default:e.withCtx(()=>t[14]||(t[14]=[e.createElementVNode("i",{class:"iconfont icon-close text-label text-h4"},null,-1)])),_:1,__:[14]},8,["onClick"])]),a.simple?(e.openBlock(),e.createElementBlock("div",un,[e.createElementVNode("div",null,e.toDisplayString(o.$t("weather.forecastModel")),1),e.createVNode(z,{modelValue:i.currentModel,"onUpdate:modelValue":t[2]||(t[2]=M=>i.currentModel=M),rounded:"",height:"30",density:"compact",group:""},{default:e.withCtx(()=>[e.createVNode(s,{density:"compact",height:"30",value:"GFS",class:"text-none btn-bg-2 px-1 text-body-1",color:i.currentModel==="GFS"?"primary":"","base-color":""},{default:e.withCtx(()=>t[15]||(t[15]=[e.createTextVNode("NOAA",-1)])),_:1,__:[15]},8,["color"]),e.createVNode(s,{density:"compact",height:"30",class:"text-none btn-bg-2 px-1 text-body-1",color:i.currentModel==="ECMWF"?"primary":"","base-color":"",value:"ECMWF"},{default:e.withCtx(()=>t[16]||(t[16]=[e.createTextVNode("ECMWF",-1)])),_:1,__:[16]},8,["color"])]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["list-box scroll pl-4 pr-2 overflow-y-auto",i.autoActive?"":"cursor-not-allowed"])},[e.createVNode(f,{class:"block-bg mx-auto mb-3",elevation:"0"},{default:e.withCtx(()=>[e.createVNode(p,{class:"border-b-thin"},{default:e.withCtx(()=>[e.createVNode(x,{class:"text-subtitle-1 font-weight-medium",style:{"font-size":"16px !important"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.overlays")),1)]),_:1})]),_:1}),e.createVNode(d,{class:"py-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.tagLayers.filter(M=>M.overlays),M=>(e.openBlock(),e.createBlock(S,{key:M.key,modelValue:i.checkList,"onUpdate:modelValue":t[3]||(t[3]=Y=>i.checkList=Y),value:M.key,label:o.$t(`weather.${M.locale}`),disabled:!i.autoActive,color:"primary",density:"compact",style:{height:"36px"},class:"flex-1-0-100 text-body-2","hide-details":""},null,8,["modelValue","value","label","disabled"]))),128))]),_:1})]),_:1}),e.createVNode(f,{class:"block-bg mx-auto mb-3",elevation:"0"},{default:e.withCtx(()=>[e.createVNode(p,{class:"border-b-thin"},{default:e.withCtx(()=>[e.createVNode(x,{class:"text-subtitle-1 font-weight-medium",style:{"font-size":"16px !important"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.renders")),1)]),_:1})]),_:1}),e.createVNode(d,{class:"py-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.tagLayers.filter(M=>!M.overlays),M=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:M.key},[e.createVNode(L,{modelValue:i.renderKey,"onUpdate:modelValue":t[4]||(t[4]=Y=>i.renderKey=Y),label:o.$t(`weather.${M.locale}`),value:M.key,disabled:!i.autoActive,color:"primary",density:"compact",style:{height:"36px"},class:"text-body-2 py-1","hide-details":"",onClick:Y=>i.renderKey=i.renderKey===M.key?"":M.key},null,8,["modelValue","label","value","disabled","onClick"]),i.renderKey==="wind-particle"&&M.key==="wind-particle"?(e.openBlock(),e.createElementBlock("div",fn,[e.createElementVNode("span",null,e.toDisplayString(o.$t("weather.particleAnimatiom")),1),e.createVNode(w,{modelValue:i.showWindParticle,"onUpdate:modelValue":t[5]||(t[5]=Y=>i.showWindParticle=Y),label:"",class:"small-switch",color:"primary","base-color":"disabled",density:"compact",inset:"",style:{"font-size":"14px"},"hide-details":""},null,8,["modelValue"])])):e.createCommentVNode("",!0),i.renderKey==="current-particle"&&M.key==="current-particle"?(e.openBlock(),e.createElementBlock("div",yn,[e.createElementVNode("span",null,e.toDisplayString(o.$t("weather.particleAnimatiom")),1),e.createVNode(w,{modelValue:i.showCurrentParticle,"onUpdate:modelValue":t[6]||(t[6]=Y=>i.showCurrentParticle=Y),label:"",class:"small-switch",color:"primary","base-color":"disabled",inset:"",density:"compact",height:"20","hide-details":""},null,8,["modelValue"])])):e.createCommentVNode("",!0),i.renderKey==="wave-group"&&M.key==="wave-group"?(e.openBlock(),e.createBlock(z,{key:2,modelValue:i.waveToggleValue,"onUpdate:modelValue":t[7]||(t[7]=Y=>i.waveToggleValue=Y),class:"w-100 pl-7 rounded",rounded:"0",height:"30",density:"compact",group:"",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createVNode(s,{density:"compact",height:"30",value:"sig-wave",class:"w-50 text-none px-2 text-body-1",color:i.waveToggleValue==="sig-wave"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.significant")),1)]),_:1},8,["color","disabled"]),e.createVNode(s,{density:"compact",height:"30",class:"w-50 text-none px-2 text-body-1",color:i.waveToggleValue==="swell"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive,value:"swell"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.swell")),1)]),_:1},8,["color","disabled"])]),_:1},8,["modelValue","disabled"])):e.createCommentVNode("",!0),i.renderKey==="ice-forecast"&&M.key==="ice-forecast"?(e.openBlock(),e.createBlock(z,{key:3,modelValue:i.iceToggleValue,"onUpdate:modelValue":t[8]||(t[8]=Y=>i.iceToggleValue=Y),class:"w-100 pl-7 rounded",rounded:"0",height:"30",density:"compact",group:"",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createVNode(s,{density:"compact",height:"30",value:"ice-cover",class:"w-50 text-none px-2 text-body-1",color:i.iceToggleValue==="ice-cover"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.coverage")),1)]),_:1},8,["color","disabled"]),e.createVNode(s,{density:"compact",height:"30",class:"w-50 text-none px-2 text-body-1",color:i.iceToggleValue==="ice-thickness"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive,value:"ice-thickness"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.thickness")),1)]),_:1},8,["color","disabled"])]),_:1},8,["modelValue","disabled"])):e.createCommentVNode("",!0)],64))),128))]),_:1})]),_:1}),e.createVNode(f,{class:"block-bg mx-auto mb-3",elevation:"0"},{default:e.withCtx(()=>[e.createVNode(p,{class:"border-b-thin"},{default:e.withCtx(()=>[e.createVNode(x,{class:"text-subtitle-1 font-weight-medium",style:{"font-size":"16px !important"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.forecastModel")),1)]),_:1})]),_:1}),e.createVNode(d,{class:""},{default:e.withCtx(()=>{var M,Y,Pe,ke,se,xe,I,ne,Z,X,ve,Se,Ne,N,me,ze,Le,Ce,D,Te,R,Ee,Me,Ve,ge,Oe,je,Fe,He,Ge,We,Ue,Ye,Ze,qe,Xe,Ke,Je,Qe,$e,et,tt,ot,at,it,rt,lt,st,nt,ct,mt,dt,ht,pt,gt,ut,ft,yt,bt,wt,xt,_t,kt,zt,vt,Lt,Ct,Pt,St,Nt,Tt,Dt,Et,Mt,Vt,Bt,It,Rt,At,Ot,jt,Ft,Ht,Gt,Wt,Ut,Yt,Zt,qt,Xt,Kt,Jt,Qt,eo,to,oo,ao,io,ro,lo,so,no,co,mo,ho;return[e.createElementVNode("div",bn,e.toDisplayString(o.$t("weather.atmospheric")),1),e.createElementVNode("div",wn,e.toDisplayString((Pe=(Y=(M=i.models)==null?void 0:M.weather)==null?void 0:Y.NOAA)==null?void 0:Pe.source)+" "+e.toDisplayString((xe=(se=(ke=i.models)==null?void 0:ke.weather)==null?void 0:se.NOAA)==null?void 0:xe.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((X=(Z=(ne=(I=i.models)==null?void 0:I.weather)==null?void 0:ne.NOAA)==null?void 0:Z.meta)==null?void 0:X.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",xn,e.toDisplayString(o.$t("weather.source"))+": NOAA",1),e.createElementVNode("div",_n,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((N=(Ne=(Se=(ve=i.models)==null?void 0:ve.weather)==null?void 0:Se.NOAA)==null?void 0:Ne.meta)==null?void 0:N.availabilityTime)),1),e.createElementVNode("div",kn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((Ce=(Le=(ze=(me=i.models)==null?void 0:me.weather)==null?void 0:ze.NOAA)==null?void 0:Le.meta)==null?void 0:Ce.initialisationTime)),1),e.createElementVNode("div",zn,e.toDisplayString((R=(Te=(D=i.models)==null?void 0:D.weather)==null?void 0:Te.ECMWF)==null?void 0:R.source)+" "+e.toDisplayString((Ve=(Me=(Ee=i.models)==null?void 0:Ee.weather)==null?void 0:Me.ECMWF)==null?void 0:Ve.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((Fe=(je=(Oe=(ge=i.models)==null?void 0:ge.weather)==null?void 0:Oe.ECMWF)==null?void 0:je.meta)==null?void 0:Fe.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",vn,e.toDisplayString(o.$t("weather.source"))+": ECMWF",1),e.createElementVNode("div",Ln,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((Ue=(We=(Ge=(He=i.models)==null?void 0:He.weather)==null?void 0:Ge.ECMWF)==null?void 0:We.meta)==null?void 0:Ue.availabilityTime)),1),e.createElementVNode("div",Cn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((Xe=(qe=(Ze=(Ye=i.models)==null?void 0:Ye.weather)==null?void 0:Ze.ECMWF)==null?void 0:qe.meta)==null?void 0:Xe.initialisationTime)),1),e.createVNode(g),e.createElementVNode("div",Pn,e.toDisplayString(o.$t("weather.wave")),1),e.createElementVNode("div",Sn,e.toDisplayString(($e=(Qe=(Je=(Ke=i.models)==null?void 0:Ke.marine)==null?void 0:Je.wave)==null?void 0:Qe.NOAA)==null?void 0:$e.source)+" "+e.toDisplayString((at=(ot=(tt=(et=i.models)==null?void 0:et.marine)==null?void 0:tt.wave)==null?void 0:ot.NOAA)==null?void 0:at.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((nt=(st=(lt=(rt=(it=i.models)==null?void 0:it.marine)==null?void 0:rt.wave)==null?void 0:lt.NOAA)==null?void 0:st.meta)==null?void 0:nt.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",Nn,e.toDisplayString(o.$t("weather.source"))+": NOAA",1),e.createElementVNode("div",Tn,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((pt=(ht=(dt=(mt=(ct=i.models)==null?void 0:ct.marine)==null?void 0:mt.wave)==null?void 0:dt.NOAA)==null?void 0:ht.meta)==null?void 0:pt.availabilityTime)),1),e.createElementVNode("div",Dn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((bt=(yt=(ft=(ut=(gt=i.models)==null?void 0:gt.marine)==null?void 0:ut.wave)==null?void 0:ft.NOAA)==null?void 0:yt.meta)==null?void 0:bt.initialisationTime)),1),e.createElementVNode("div",En,e.toDisplayString((kt=(_t=(xt=(wt=i.models)==null?void 0:wt.marine)==null?void 0:xt.wave)==null?void 0:_t.ECMWF)==null?void 0:kt.source)+" "+e.toDisplayString((Ct=(Lt=(vt=(zt=i.models)==null?void 0:zt.marine)==null?void 0:vt.wave)==null?void 0:Lt.ECMWF)==null?void 0:Ct.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((Dt=(Tt=(Nt=(St=(Pt=i.models)==null?void 0:Pt.marine)==null?void 0:St.wave)==null?void 0:Nt.ECMWF)==null?void 0:Tt.meta)==null?void 0:Dt.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",Mn,e.toDisplayString(o.$t("weather.source"))+": ECMWF",1),e.createElementVNode("div",Vn,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((It=(Bt=(Vt=(Mt=(Et=i.models)==null?void 0:Et.marine)==null?void 0:Mt.wave)==null?void 0:Vt.ECMWF)==null?void 0:Bt.meta)==null?void 0:It.availabilityTime)),1),e.createElementVNode("div",Bn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((Ft=(jt=(Ot=(At=(Rt=i.models)==null?void 0:Rt.marine)==null?void 0:At.wave)==null?void 0:Ot.ECMWF)==null?void 0:jt.meta)==null?void 0:Ft.initialisationTime)),1),e.createVNode(g),e.createElementVNode("div",In,e.toDisplayString(o.$t("weather.currents")),1),e.createElementVNode("div",Rn,e.toDisplayString((Ut=(Wt=(Gt=(Ht=i.models)==null?void 0:Ht.marine)==null?void 0:Gt.current)==null?void 0:Wt.ECMWF)==null?void 0:Ut.source)+" "+e.toDisplayString((Xt=(qt=(Zt=(Yt=i.models)==null?void 0:Yt.marine)==null?void 0:Zt.current)==null?void 0:qt.ECMWF)==null?void 0:Xt.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((to=(eo=(Qt=(Jt=(Kt=i.models)==null?void 0:Kt.marine)==null?void 0:Jt.current)==null?void 0:Qt.ECMWF)==null?void 0:eo.meta)==null?void 0:to.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",An,e.toDisplayString(o.$t("weather.source"))+": ECMWF",1),e.createElementVNode("div",On,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((lo=(ro=(io=(ao=(oo=i.models)==null?void 0:oo.marine)==null?void 0:ao.current)==null?void 0:io.ECMWF)==null?void 0:ro.meta)==null?void 0:lo.availabilityTime)),1),e.createElementVNode("div",jn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((ho=(mo=(co=(no=(so=i.models)==null?void 0:so.marine)==null?void 0:no.current)==null?void 0:co.ECMWF)==null?void 0:mo.meta)==null?void 0:ho.initialisationTime)),1)]}),_:1})]),_:1})],2)],6),a.map?(e.openBlock(),e.createBlock(_,e.mergeProps({key:1,ref:"windBarb",map:a.map,"map-feather":a.mapFeather,"before-layer":"empty-layer-3",wind:(J=i.weatherLayers)==null?void 0:J.wind,"menu-toggle":a.menuToggle},o.$attrs),null,16,["map","map-feather","wind","menu-toggle"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(b,e.mergeProps({key:2,map:a.map,"before-layer":"empty-layer-2","sig-wave-height":(q=i.weatherLayers)==null?void 0:q["sig-wave-height"],"menu-toggle":a.menuToggle,"active-weather-layers":i.activeWeatherLayers},o.$attrs),null,16,["map","sig-wave-height","menu-toggle","active-weather-layers"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(u,e.mergeProps({key:3,map:a.map,"map-feather":a.mapFeather,"before-layer":"empty-layer-2",current:(te=i.weatherLayers)==null?void 0:te.current,"menu-toggle":a.menuToggle},o.$attrs),null,16,["map","map-feather","current","menu-toggle"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(k,e.mergeProps({key:4,map:a.map,"before-layer":"empty-layer-2",prmsl:(re=i.weatherLayers)==null?void 0:re.prmsl,"menu-toggle":a.menuToggle,"active-weather-layers":i.activeWeatherLayers},o.$attrs,{theme:a.theme}),null,16,["map","prmsl","menu-toggle","active-weather-layers","theme"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(y,e.mergeProps({key:5,viewport:i.viewport,factor:(oe=i.weatherLayers)==null?void 0:oe["wind-particle"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(C,e.mergeProps({key:6,viewport:i.viewport,factor:(ae=i.weatherLayers)==null?void 0:ae["current-particle"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(E,e.mergeProps({key:7,viewport:i.viewport,factor:(P=i.weatherLayers)==null?void 0:P["sig-wave"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(B,e.mergeProps({key:8,map:a.map,viewport:i.viewport,factor:(U=i.weatherLayers)==null?void 0:U.swell,"menu-toggle":a.menuToggle,"active-weather-layers":i.activeWeatherLayers,simple:a.simple},o.$attrs),null,16,["map","viewport","factor","menu-toggle","active-weather-layers","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(A,e.mergeProps({key:9,viewport:i.viewport,factor:(ce=i.weatherLayers)==null?void 0:ce["ice-edge"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(O,e.mergeProps({key:10,viewport:i.viewport,factor:(he=i.weatherLayers)==null?void 0:he["ice-cover"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(G,e.mergeProps({key:11,viewport:i.viewport,factor:(fe=i.weatherLayers)==null?void 0:fe["ice-thickness"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(W,e.mergeProps({key:12,viewport:i.viewport,factor:(ye=i.weatherLayers)==null?void 0:ye.precip3h,"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(F,e.mergeProps({key:13,viewport:i.viewport,factor:(pe=i.weatherLayers)==null?void 0:pe.visibility,"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock($,e.mergeProps({key:14,viewport:i.viewport,factor:(we=i.weatherLayers)==null?void 0:we["water-temp"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(ee,e.mergeProps({key:15,viewport:i.viewport,factor:(be=i.weatherLayers)==null?void 0:be.temp,"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0)])}const Hn=j(en,[["render",Fn]]),Ie=[{rank:0,name:"Best Match",alias:"BEST MATCH",model:"best_match",models:["best_match"]},{rank:1,name:"GFS",alias:"GFS",model:"gfs_seamless",provider:"NOAA",country:"United States",resolution:25,tips:"3-25km",length:16,frequency:1,models:["gfs_seamless"],categories:"ncep_gfs013,ncep_gfs025,ncep_gfs_graphcast025,ncep_hrrr_conus,ncep_nbm_conus",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:2,name:"ECMWF",alias:"ECMWF",model:"ecmwf_ifs025",provider:"ECMWF",country:"European Union",resolution:25,tips:"25km",length:15,frequency:6,models:["ecmwf_ifs025","ecmwf_aifs025_single"],categories:"ecmwf_ifs025,ecmwf_aifs025_single",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:3,disabled:!0,name:"ICON",alias:"ECMWF",model:"icon_seamless",provider:"Deutscher Wetterdienst (DWD)",country:"Germany",resolution:13,tips:"2-13km",length:7.5,frequency:3,models:["icon_seamless","icon_global","icon_eu","icon_d2"],categories:"dwd_icon,dwd_icon_eps,dwd_icon_d2,dwd_icon_d2_eps,dwd_icon_eu,dwd_icon_eu_eps",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:4,name:"ARPEGE",disabled:!0,alias:"ECMWF",model:"arpege_seamless",provider:"Météo-France",country:"France",resolution:25,tips:"1-25km",length:4,frequency:1,models:["arpege_seamless","arpege_world","arpege_europe"],categories:"meteofrance_arpege_europe,meteofrance_arpege_europe_probabilities,meteofrance_arpege_world025",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:5,name:"UKMO",disabled:!0,alias:"ECMWF",model:"ukmo_seamless",provider:"UK Met Office",country:"United Kingdom",resolution:10,tips:"2-10km",length:7,frequency:1,models:["ukmo_seamless","ukmo_global_deterministic_10km","ukmo_uk_deterministic_2km"],categories:"ukmo_global_deterministic_10km,ukmo_uk_deterministic_2km",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:6,name:"JMA",disabled:!0,alias:"GFS",model:"jma_seamless",provider:"JMA",country:"Japan",resolution:55,tips:"5-55km",length:11,frequency:3,models:["jma_seamless","jma_msm","jma_gsm"],categories:"jma_gsm,jma_msm",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:7,name:"GEM",disabled:!0,alias:"GFS",model:"gem_seamless",provider:"Canadian Weather Service",country:"Canada",resolution:2.5,tips:"2.5km",length:10,frequency:6,models:["gem_seamless","gem_global","gem_regional"],categories:"cmc_gem_gdps,cmc_gem_hrdps,cmc_gem_rdps",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:8,name:"GRAPES",disabled:!0,alias:"GFS",model:"cma_grapes_global",provider:"China Meteorological Administration (CMA)",country:"China",resolution:15,tips:"15km",length:10,frequency:6,models:["cma_grapes_global"],categories:"cma_grapes_global",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:9,name:"ACCESS-G",disabled:!0,alias:"GFS",model:"bom_access_global",provider:"Australian Bureau of Meteorology (BOM)",country:"Australia",resolution:15,tips:"15km",length:10,frequency:6,models:["bom_access_global"],categories:"bom_access_global",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"}],Re=[{rank:0,name:"Best Match",alias:"BEST MATCH",model:"best_match",models:["best_match"]},{rank:1,name:"MFWAM",alias:"ECMWF",model:"meteofrance_wave",provider:"MeteoFrance",country:"France",resolution:8,tips:"8km",length:10,frequency:12,models:["meteofrance_wave"],categories:"meteofrance_wave",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:2,disabled:!0,name:"SMOC",alias:"ECMWF",model:"meteofrance_currents",provider:"MeteoFrance",country:"France",resolution:8,tips:"8km",length:10,frequency:24,models:["meteofrance_currents"],categories:"meteofrance_currents, meteofrance_sea_surface_temperature",variables:"ocean_u_current,ocean_v_current,invert_barometer_height,sea_level_height_msl,sea_surface_temperature"},{rank:3,disabled:!0,name:"EWAM",alias:"ECMWF",model:"ewam",provider:"DWD",country:"Germany",resolution:5,tips:"5km",length:8,frequency:2,models:["ewam"],categories:"dwd_ewam",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:4,disabled:!0,name:"GWAM",alias:"ECMWF",model:"gwam",provider:"DWD",country:"Germany",resolution:5,tips:"5km",length:4,frequency:2,models:["gwam"],categories:"dwd_gwam",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:5,disabled:!0,name:"ECWAM",alias:"ECMWF",model:"ecmwf_wam025",provider:"ECMWF",country:"Europe",resolution:25,tips:"25km",length:10,frequency:6,models:["ecmwf_wam025"],categories:"ecmwf_wam025",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:6,name:"GFSWave",alias:"GFS",model:"ncep_gfswave025",provider:"NCEP",country:"USA",resolution:25,tips:"25km",length:10,frequency:6,models:["ncep_gfswave025","ncep_gfswave016"],categories:"ncep_gfswave025,ncep_gfswave016",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:7,disabled:!0,name:"ERA5-Ocean",alias:"ECMWF",model:"era5_ocean",provider:"Copernicus",country:"Europe",resolution:50,tips:"50km",length:-5,frequency:1,models:["era5_ocean"],categories:"copernicus_era5_ocean",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"}];class _o{static standardWeatherModels(){return Ie.filter(t=>!t.disabled&&t.alias)}static standardMarineModels(){return Re.filter(t=>!t.disabled&&t.alias)}static autoPickLayerModel(t,a="copernicus"){return a=a||"copernicus",a=a==null?void 0:a.toLowerCase(),a=["gfs","ecmwf","copernicus"].includes(a)?a:"copernicus",t=t==null?void 0:t.toLowerCase(),t==="gfs"?"gfs":["ec","ecmwf"].includes(t)?"ecmwf":["copernicus","cmems"].includes(t)?"copernicus":a}static autoPickPeerModel(t,a,r="copernicus"){if(a=this.autoPickLayerModel(a,r),ja.LayerHelper.WEATHER_LAYERS.reduce((i,l)=>l.atmos?i+l.weight:i,0)&t.weight){if(a==="copernicus")return"ecmwf"}else if(a==="ecmwf")return"copernicus";return a}static autoPickMeteoModel(t="best_match"){var a,r;t=t==null?void 0:t.toLowerCase(),t=t==="ec"?"ecmwf":t;const i=t.toLowerCase().split(","),l=[],s=[];for(const n of i){let c=Ie.find(d=>{var g,f,w;return((g=d.models)==null?void 0:g.includes(n))||((f=d.alias)==null?void 0:f.toLowerCase())===n||((w=d.name)==null?void 0:w.toLowerCase())===n}),h=Re.find(d=>{var g,f,w;return((g=d.models)==null?void 0:g.includes(n))||((f=d.alias)==null?void 0:f.toLowerCase())===n||((w=d.name)==null?void 0:w.toLowerCase())===n});c=c||Ie.find(d=>{var g,f;return((g=d.alias)==null?void 0:g.toLowerCase())===((f=h==null?void 0:h.alias)==null?void 0:f.toLowerCase())}),h=h||Re.find(d=>{var g,f;return((g=d.alias)==null?void 0:g.toLowerCase())===((f=c==null?void 0:c.alias)==null?void 0:f.toLowerCase())}),c=c||Ie[0],h=h||Re[0],l.push((a=c.models)!=null&&a.includes(n)?n:c.model),s.push((r=h.models)!=null&&r.includes(n)?n:h.model)}return{weatherModels:l.join(","),marineModels:s.join(",")}}static autoPickSubCategories(t){t=t.toUpperCase();const a=Ie.filter(l=>l.alias===t),r=Re.filter(l=>l.alias===t),i=[];return a.forEach(l=>{l.categories&&i.push(...l.categories.split(","))}),r.forEach(l=>{l.categories&&i.push(...l.categories.split(","))}),i}static pickHourly(t,a){var r,i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y,C,E,B,A,O,G,W,F,$,ee,J,q,te,re,oe,ae,P,U,ce,he,fe,ye,pe,we,be,M,Y,Pe,ke,se,xe;const I=typeof a=="string"?v(a):a,ne=t==null?void 0:t.weather,Z=t==null?void 0:t.marine,X=v((i=(r=ne==null?void 0:ne[0])==null?void 0:r.hourly)==null?void 0:i.date).utc(),ve=X.clone().add((n=(s=(l=ne==null?void 0:ne[0])==null?void 0:l.hourly)==null?void 0:s.time)==null?void 0:n.at(0),"h"),Se=X.clone().add((d=(h=(c=ne==null?void 0:ne[0])==null?void 0:c.hourly)==null?void 0:h.time)==null?void 0:d.at(-1),"h"),Ne=[];if(I.isBetween(ve,Se,"millisecond","[]")){const N=I.utc().diff(ve,"h",!1);let me,ze;if(ne){let Le=0,Ce=0,D=0;for(const Te of ne){const R=Te==null?void 0:Te.hourly;for(let ge=N-(N-1)%3;ge<=N;ge++)Le+=(g=R==null?void 0:R.precipitation)==null?void 0:g.at(ge);for(let ge=N-(N-1)%6;ge<=N;ge++)Ce+=(f=R==null?void 0:R.precipitation)==null?void 0:f.at(ge);for(let ge=N-(N-1)%12;ge<=N;ge++)D+=(w=R==null?void 0:R.precipitation)==null?void 0:w.at(ge);me={temp:(z=R==null?void 0:R.temperature_2m)==null?void 0:z.at(N),apparentTemp:(x=R==null?void 0:R.apparent_temperature)==null?void 0:x.at(N),rh:(p=R==null?void 0:R.relative_humidity_2m)==null?void 0:p.at(N),dp:(S=R==null?void 0:R.dew_point_2m)==null?void 0:S.at(N),precip:{probability:(L=R==null?void 0:R.precipitation_probability)==null?void 0:L.at(N),sum:(_=R==null?void 0:R.precipitation)==null?void 0:_.at(N),sum1Hours:(b=R==null?void 0:R.precipitation)==null?void 0:b.at(N),sum3Hours:Math.round(Le*100)/100,sum6Hours:Math.round(Ce*100)/100,sum12Hours:Math.round(D*100)/100},pmsl:(u=R==null?void 0:R.pressure_msl)==null?void 0:u.at(N),psurf:(k=R==null?void 0:R.surface_pressure)==null?void 0:k.at(N),code:(y=R==null?void 0:R.weather_code)==null?void 0:y.at(N),visibility:this.m2nm((C=R==null?void 0:R.visibility)==null?void 0:C.at(N)),wind:{speed:(E=R==null?void 0:R.wind_speed_10m)==null?void 0:E.at(N),kts:(B=R==null?void 0:R.wind_speed_10m)==null?void 0:B.at(N),degree:(A=R==null?void 0:R.wind_direction_10m)==null?void 0:A.at(N),bearing:((O=R==null?void 0:R.wind_direction_10m)==null?void 0:O.at(N))!==null?(((G=R==null?void 0:R.wind_direction_10m)==null?void 0:G.at(N))+180)%360:null,gusts:(W=R==null?void 0:R.wind_gusts_10m)==null?void 0:W.at(N)},isDay:(F=R==null?void 0:R.is_day)==null?void 0:F.at(N)};const{name:Ee,url:Me,bg:Ve}=this.parseWeatherCode(me.code,me.isDay);me.name=Ee,me.url=Me,me.bg=Ve,me.wind.scale=this.beaufort(this.kts2ms(me.wind.kts)),me.wind.direction=this.degree2Direction(me.wind.degree),Ne.push({utc:ve.add(N,"h").format(),model:Te.model,weather:{...me}})}}if(Z){let Le=0;for(const Ce of Z){const D=Ce==null?void 0:Ce.hourly;ze={wave:{sig:{height:($=D==null?void 0:D.wave_height)==null?void 0:$.at(N),degree:(ee=D==null?void 0:D.wave_direction)==null?void 0:ee.at(N),bearing:((J=D==null?void 0:D.wave_direction)==null?void 0:J.at(N))!==null?(((q=D==null?void 0:D.wave_direction)==null?void 0:q.at(N))+180)%360:null,period:(te=D==null?void 0:D.wave_period)==null?void 0:te.at(N)},swell:{height:(re=D==null?void 0:D.swell_wave_height)==null?void 0:re.at(N),degree:(oe=D==null?void 0:D.swell_wave_direction)==null?void 0:oe.at(N),bearing:((ae=D==null?void 0:D.swell_wave_direction)==null?void 0:ae.at(N))!==null?(((P=D==null?void 0:D.swell_wave_direction)==null?void 0:P.at(N))+180)%360:null,period:(U=D==null?void 0:D.swell_wave_period)==null?void 0:U.at(N),peakPeriod:(ce=D==null?void 0:D.swell_wave_peak_period)==null?void 0:ce.at(N)},wd:{height:(he=D==null?void 0:D.wind_wave_height)==null?void 0:he.at(N),degree:(fe=D==null?void 0:D.wind_wave_direction)==null?void 0:fe.at(N),bearing:((ye=D==null?void 0:D.wind_wave_direction)==null?void 0:ye.at(N))!==null?(((pe=D==null?void 0:D.wind_wave_direction)==null?void 0:pe.at(N))+180)%360:null,period:(we=D==null?void 0:D.wind_wave_period)==null?void 0:we.at(N),peakPeriod:(be=D==null?void 0:D.wind_wave_peak_period)==null?void 0:be.at(N)}},current:{speed:(M=D==null?void 0:D.ocean_current_velocity)==null?void 0:M.at(N),kts:(Y=D==null?void 0:D.ocean_current_velocity)==null?void 0:Y.at(N),degree:(Pe=D==null?void 0:D.ocean_current_direction)==null?void 0:Pe.at(N),bearing:((ke=D==null?void 0:D.ocean_current_direction)==null?void 0:ke.at(N))??null},sst:(se=D==null?void 0:D.sea_surface_temperature)==null?void 0:se.at(N),height:(xe=D==null?void 0:D.sea_level_height_msl)==null?void 0:xe.at(N)},ze.wave=this.parseWave(ze.wave,me==null?void 0:me.wind),ze.current.direction=this.degree2Direction(ze.current.degree),Object.assign(Ne[Le],ze),Le++}}}return Ne}static toLegacy(t){var a,r,i,l,s,n,c,h,d,g;return{wind:(a=t==null?void 0:t.weather)==null?void 0:a.wind,visibility:(r=t==null?void 0:t.weather)==null?void 0:r.visibility,temp:(i=t==null?void 0:t.weather)==null?void 0:i.temp,prmsl:(l=t==null?void 0:t.weather)==null?void 0:l.pmsl,gusts:{kts:(n=(s=t==null?void 0:t.weather)==null?void 0:s.wind)==null?void 0:n.gusts},precip:(c=t==null?void 0:t.weather)==null?void 0:c.precip,code:(h=t==null?void 0:t.weather)==null?void 0:h.code,name:(d=t==null?void 0:t.weather)==null?void 0:d.name,url:(g=t==null?void 0:t.weather)==null?void 0:g.url,wave:t==null?void 0:t.wave,current:t==null?void 0:t.current,sst:t==null?void 0:t.sst,height:t==null?void 0:t.height,utc:t==null?void 0:t.utc,source:t==null?void 0:t.model}}static pickDaily(t,a){var r,i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y,C,E,B,A,O,G,W,F,$,ee,J,q,te,re,oe,ae,P,U,ce,he,fe,ye,pe;const we=typeof a=="string"?v(a):a,be=t==null?void 0:t.weather,M=t==null?void 0:t.marine,Y=v((l=(i=(r=be==null?void 0:be[0])==null?void 0:r.daily)==null?void 0:i.time)==null?void 0:l.at(0)),Pe=v((c=(n=(s=be==null?void 0:be[0])==null?void 0:s.daily)==null?void 0:n.time)==null?void 0:c.at(-1)),ke=[];if(we.isBetween(Y,Pe,"millisecond","[]")){let se,xe;const I=we.diff(Y,"d",!1);if(be)for(const ne of be){const Z=ne.daily;se={code:(h=Z.weather_code)==null?void 0:h.at(I),temp:{max:(d=Z.temperature_2m_max)==null?void 0:d.at(I),min:(g=Z.temperature_2m_min)==null?void 0:g.at(I),mean:(f=Z.temperature_2m_mean)==null?void 0:f.at(I)},apparentTemp:{max:(w=Z.apparent_temperature_max)==null?void 0:w.at(I),min:(z=Z.apparent_temperature_min)==null?void 0:z.at(I)},precip:{sum:(x=Z.precipitation_sum)==null?void 0:x.at(I),rainSum:(p=Z.rain_sum)==null?void 0:p.at(I),snowfallSum:(S=Z.snowfall_sum)==null?void 0:S.at(I),showersSum:(L=Z.showers_sum)==null?void 0:L.at(I),hours:(_=Z.precipitation_hours)==null?void 0:_.at(I),probability:(b=Z.precipitation_probability_max)==null?void 0:b.at(I)},rh:{max:(u=Z.relative_humidity_2m_max)==null?void 0:u.at(I),min:(k=Z.relative_humidity_2m_min)==null?void 0:k.at(I),mean:(y=Z.relative_humidity_2m_mean)==null?void 0:y.at(I)},wind:{speed:(C=Z.wind_speed_10m_max)==null?void 0:C.at(I),kts:(E=Z.wind_speed_10m_max)==null?void 0:E.at(I),degree:(B=Z.wind_direction_10m_dominant)==null?void 0:B.at(I),gusts:(A=Z.wind_gusts_10m_max)==null?void 0:A.at(I),bearing:((O=Z.wind_direction_10m_dominant)==null?void 0:O.at(I))!==null?(((G=Z.wind_direction_10m_dominant)==null?void 0:G.at(I))+180)%360:null}};const{name:X,url:ve,bg:Se}=this.parseWeatherCode(se.code,!0);se.name=X,se.url=ve,se.bg=Se,se.wind.scale=this.beaufort(this.kts2ms(se.wind.kts)),se.wind.direction=this.degree2Direction(se.wind.degree),ke.push({utc:Y.add(I,"d").utc().format(),model:ne.model,weather:{...se}})}if(M){let ne=0;for(const Z of M){const X=Z.daily;xe={wave:{sig:{height:(W=X.wave_height_max)==null?void 0:W.at(I),degree:(F=X.wave_direction_dominant)==null?void 0:F.at(I),period:($=X.wave_period_max)==null?void 0:$.at(I),bearing:((ee=X.wave_direction_dominant)==null?void 0:ee.at(I))!==null?(((J=X.wave_direction_dominant)==null?void 0:J.at(I))+180)%360:null},swell:{height:(q=X.swell_wave_height_max)==null?void 0:q.at(I),degree:(te=X.swell_wave_direction_dominant)==null?void 0:te.at(I),period:(re=X.swell_wave_period_max)==null?void 0:re.at(I),peakPeriod:(oe=X.swell_wave_peak_period_max)==null?void 0:oe.at(I),bearing:((ae=X.swell_wave_direction_dominant)==null?void 0:ae.at(I))!==null?((P=X.swell_wave_direction_dominant)==null?void 0:P.at(I))%360:null},wd:{height:(U=X.wind_wave_height_max)==null?void 0:U.at(I),degree:(ce=X.wind_wave_direction_dominant)==null?void 0:ce.at(I),period:(he=X.wind_wave_period_max)==null?void 0:he.at(I),peakPeriod:(fe=X.wind_wave_peak_period_max)==null?void 0:fe.at(I),bearing:((ye=X.wind_wave_direction_dominant)==null?void 0:ye.at(I))!==null?(((pe=X.wind_wave_direction_dominant)==null?void 0:pe.at(I))+180)%360:null}}},xe.wave=this.parseWave(xe.wave,se==null?void 0:se.wind),Object.assign(ke[ne],xe),ne++}}}return ke}static parseWave(t,a){if(t.sig.direction=this.degree2Direction(t.sig.degree),t.swell.direction=this.degree2Direction(t.swell.degree),t.wd.direction=this.degree2Direction(t.wd.degree),t.sig.scale=this.douglas(t.sig.height),t.swell.scale=this.douglas(t.swell.height),t.wd.scale=this.douglas(t.wd.height),t.sig.height===0){const r=Math.sqrt(Math.pow(t.swell.height||0,2)+Math.pow(t.wd.height||0,2));t.sig.height=Math.round(r*100)/100}if(t.swell.height===0)if(t.sig.height>t.wd.height){const r=Math.sqrt(Math.abs(Math.pow(t.sig.height||0,2)-Math.pow(t.wd.height||0,2)));t.swell.height=Math.round(r*100)/100}else{const r=Math.round(.12*this.kts2ms((a==null?void 0:a.kts)||0)*100)/100,i=r>1?r/10:r>.5?r/5:r>.3?r/2:r;t.swell.height=Math.round(i*100)/100}if(t.wd.height===0||t.wd.height>t.sig.height)if(t.sig.height>t.swell.height){const r=Math.sqrt(Math.abs(Math.pow(t.sig.height||0,2)-Math.pow(t.swell.height||0,2))),i=.24*this.kts2ms((a==null?void 0:a.kts)||0);t.wd.height=Math.round(Math.min(r,i)*100)/100}else{const r=.24*this.kts2ms((a==null?void 0:a.kts)||0);t.wd.height=Math.round(r*100)/100}return t.swell.height>t.sig.height&&(t.swell.height=Math.round(t.sig.height*.76*100)/100),t.sig.period||(t.sig.period=Math.round(5*Math.sqrt(t.sig.height))),t.swell.period||(t.swell.period=Math.round(5*Math.sqrt(t.swell.height))),t.wd.period||(t.wd.period=Math.round(5*Math.sqrt(t.wd.height))),t}static parseWeatherCode(t,a){const r=this.weatherCode(t);return(a?r.day:r.night)||{}}static weatherCode(t){const a={code:t};switch(t){case 0:a.day={name:"Sunny",url:"https://osshz.idmwx.com/asset/weather/01d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"},a.night={name:"Clear",url:"https://osshz.idmwx.com/asset/weather/01n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"};break;case 1:a.day={name:"Mainly Sunny",url:"https://osshz.idmwx.com/asset/weather/01d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"},a.night={name:"Mainly Clear",url:"https://osshz.idmwx.com/asset/weather/01n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"};break;case 2:a.day={name:"Partly Cloudy",url:"https://osshz.idmwx.com/asset/weather/02d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg2.png"},a.night={name:"Partly Cloudy",url:"https://osshz.idmwx.com/asset/weather/02n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg2.png"};break;case 3:a.day={name:"Overcast",url:"https://osshz.idmwx.com/asset/weather/04d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg3.png"},a.night={name:"Overcast",url:"https://osshz.idmwx.com/asset/weather/04n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg3.png"};break;case 45:a.day={name:"Foggy",url:"https://osshz.idmwx.com/asset/weather/50d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"},a.night={name:"Foggy",url:"https://osshz.idmwx.com/asset/weather/50n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"};break;case 48:a.day={name:"Rime Fog",url:"https://osshz.idmwx.com/asset/weather/50d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"},a.night={name:"Rime Fog",url:"https://osshz.idmwx.com/asset/weather/50n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"};break;case 51:a.day={name:"Light Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 53:a.day={name:"Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 55:a.day={name:"Heavy Drizzle",url:"https://osshz.idmwx.com/asset/weather/15d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Heavy Drizzle",url:"https://osshz.idmwx.com/asset/weather/15n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 56:a.day={name:"Light Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 57:a.day={name:"Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 61:a.day={name:"Light Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 63:a.day={name:"Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 65:a.day={name:"Heavy Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Heavy Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 66:a.day={name:"Light Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 67:a.day={name:"Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 71:a.day={name:"Light Snow",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Light Snow",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 73:a.day={name:"Snow",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Snow",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 75:a.day={name:"Heavy Snow",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Heavy Snow",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 77:a.day={name:"Snow Grains",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Snow Grains",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 80:a.day={name:"Light Showers",url:"https://osshz.idmwx.com/asset/weather/09d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Showers",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 81:a.day={name:"Showers",url:"https://osshz.idmwx.com/asset/weather/09d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Showers",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 82:a.day={name:"Heavy Showers",url:"https://osshz.idmwx.com/asset/weather/09d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Heavy Showers",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 85:a.day={name:"Light Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Light Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 86:a.day={name:"Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 95:a.day={name:"Thunderstorm",url:"https://osshz.idmwx.com/asset/weather/11d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Thunderstorm",url:"https://osshz.idmwx.com/asset/weather/11n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 96:a.day={name:"Light Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 99:a.day={name:"Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break}return a}static kts2ms(t){return isNaN(t)||t===null?t:Math.round(t*1852/3600*1e4)/1e4}static kts2kmh(t){return isNaN(t)||t===null?t:t*1.852}static m2nm(t){return isNaN(t)||t===null?t:Math.round(t/1e3/1.852*1e4)/1e4}static kmh2kts(t){return isNaN(t)||t===null?t:this.ms2kts(t*1e3/3600)}static ms2kts(t){return isNaN(t)||t===null?t:Math.round(t*3600/1852*1e4)/1e4}static degree2Radian(t){if(isNaN(t)||t===null)return t;let a=t%360/360*2*Math.PI;return a=a<0?a+2*Math.PI:a,a}static degree2Direction(t){const a=this.degree2Radian(t);if(isNaN(a)||a===null)return null;let r="N/A";const i=Math.PI/16;return a<i?r="N":a>=i&&a<3*i?r="NNE":a>=3*i&&a<5*i?r="NE":a>=5*i&&a<7*i?r="ENE":a>=7*i&&a<9*i?r="E":a>=9*i&&a<11*i?r="ESE":a>=11*i&&a<13*i?r="SE":a>=13*i&&a<15*i?r="SSE":a>=15*i&&a<17*i?r="S":a>=17*i&&a<19*i?r="SSW":a>=19*i&&a<21*i?r="SW":a>=21*i&&a<23*i?r="WSW":a>=23*i&&a<25*i?r="W":a>=25*i&&a<27*i?r="WNW":a>=27*i&&a<29*i?r="NW":a>=29*i&&a<31*i?r="NNW":a>=31*i&&a<32*i&&(r="N"),r}static beaufort(t){let a=0;return isNaN(t)||(t=Math.round(t*10)/10,t<=.2?a=0:t<=1.5?a=1:t<=3.3?a=2:t<=5.4?a=3:t<=7.9?a=4:t<=10.7?a=5:t<=13.8?a=6:t<=17.1?a=7:t<=20.7?a=8:t<=22.4?a=9:t<=28.4?a=10:t<=32.6?a=11:t<=36.9?a=12:t<=41.4?a=13:t<=46.1?a=14:t<=50.9?a=15:t<=55.9?a=16:t<=61.2?a=17:t>61.2&&(a=18)),a}static douglas(t){let a="Calm";return isNaN(t)||t<=.1?a="Calm":t<=.5?a="Smooth":t<=1.25?a="Slight":t<=2.5?a="Moderate":t<=4?a="Rough":t<=6?a="VeryRough":t<=9?a="High":t<=14?a="VeryHigh":a="Precipitous",a}}const rh="",Gn={name:"IdmTropicals",props:{simple:{type:Boolean,default:!1},permission:{type:Number},locale:{type:String},map:{type:Object},top:{type:Number,default:60},paddingTop:{type:Number,default:48},menuToggle:{type:Object,default:{}},timeZone:{type:Number},token:{type:String},defaultMeteoToken:{type:String},gateway:{type:String,default:"aa"},assistGateway:{type:Array,default:[]},forecastModel:{type:String},realTime:{type:String},beforeLayer:{type:String}},emits:["tropical","tropicalCenterPoints","tropicalProbability","tropicalNotification"],setup(){return{Theme:le.useTheme()}},data(){return{right:10,toggle:!1,helper:Be.CompanyHelper,tropicals:void 0,tropicalCacheKey:"tropicalCacheGL4",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",showTropicalsInfo:!1,activeTropicals:void 0,activeTropicalsMarker:void 0,empty:V.featureCollection([]),showLegend:!1,showHoverPoint:!1,hoverPoint:void 0,hoverMarker:void 0}},computed:{hoverLayers(){return[this.forecastNameLayer,this.forecastLayer,this.historyLayer,this.pointCircleLayer,this.pointCircleLayer+"-border",this.historyPointCircleLayer,this.historyPointCircleLayer+"-border",this.historyPointCircleLayer+"-inner"]},clickLayers(){return[this.forecastNameLayer,this.historyLayer]},computeTime(){return(o,t)=>{if(o){const a=v(o).utcOffset(t),r=t<0?t:"+"+t;return`${a==null?void 0:a.format("MMM-DD/HHmm")} (UTC${r}) ${a==null?void 0:a.fromNow()} `}return"-"}},computeTzTime(){return(o,t,a="MM-DD HH:mm")=>{var r,i;if(o){const l=t||0,s=(i=(r=v(o))==null?void 0:r.utcOffset(l))==null?void 0:i.format(a),n=`(UTC ${l>=0?"+":""}${l})`;return s+" "+n}return"-"}},computeTimezone(){return this.timeZone<0?this.timeZone:"+"+this.timeZone},computeBF(){return function(o){const t=_o.kts2ms(o);return _o.beaufort(t)}},computeMovement(){return function(o){var t,a;return(a=(t=o==null?void 0:o.forecasts)==null?void 0:t.find(r=>!r.disabled))==null?void 0:a.movement}},computePosition(){return o=>!o||o.lng===null||o.lng===void 0||isNaN(o.lng)||o.lat===null||o.lat===void 0||isNaN(o.lat)?"-":T.LngLatHelper.lat2pretty(o==null?void 0:o.lat,2).pretty+" / "+T.LngLatHelper.lng2pretty(o==null?void 0:o.lng,2).pretty}},watch:{"menuToggle.v":{handler(){this.$nextTick(()=>{var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)})},immediate:!0},map:{handler(){this.map?(this.toggle=localStorage.getItem(this.tropicalCacheKey)==="true"||!1,localStorage.setItem(this.tropicalCacheKey,this.toggle),this.toggle&&this.fetchTropicals()):this.handleClear()}},showTropicalsInfo:{handler(){this.$emit("tropical",this.showTropicalsInfo)},immediate:!0},"tropicals.version":{handler(){this.handleRefresh()}},timeZone:{handler(o,t){o!==t&&this.handleRefresh()}},realTime:{handler(o){this.map&&o&&this.toggle&&this.handleRender()}},locale:{handler(o){this.map&&this.toggle&&this.handleRefresh()}}},mounted(){},methods:{handleMenuToggle(){var o,t,a;this.toggle=!this.toggle,localStorage.setItem(this.tropicalCacheKey,this.toggle),this.toggle?this.fetchTropicals():(this.handleClear(),(a=(t=(o=this.$parent)==null?void 0:o.$refs)==null?void 0:t.idmBottomBar)==null||a.handleToggle("tropical",!1))},async fetchTropicals(){var i,l,s;const o=new Date().valueOf();let t=0,a=0,r=(i=Be.LayerHelper.WEATHER_LAYERS.find(n=>n.key==="tropicals"))==null?void 0:i.weight;if(r>0){const n=this.assistGateway[Math.round(Math.random()*(this.assistGateway.length-1))],c=await Q.get(`${n}/api/arc/weather/layers2/links?l=${r}&v=${this.forecastModel}&t=${this.realTime}`,{headers:{Authorization:this.defaultMeteoToken}});if(a=new Date().valueOf()-(o+t),console.log("weather links elapsed: ",a,", total: ",t+=a),((l=c==null?void 0:c.data)==null?void 0:l.code)===0){const h=(s=c==null?void 0:c.data)==null?void 0:s.data;await Q.get(h.tropicals,{headers:{Authorization:this.defaultMeteoToken,key:"tropicals"},responseType:/\.(jpg|png)$/.test(h.tropicals)?"blob":"json"}).then(d=>{var w,z,x;const g=T.TropicalHelper.convert2Geojson(((w=d==null?void 0:d.data)==null?void 0:w.data)||(d==null?void 0:d.data));((x=(z=d==null?void 0:d.config)==null?void 0:z.headers)==null?void 0:x.key)&&g&&(this.tropicals={data:g,active:!0,cached:!0,type:"json",etime:c.data.etime,version:Math.random()+1})}).catch(d=>{console.log(`[${key}] fetch layer error: ${d}`)})}a=new Date().valueOf()-(o+t),console.log("tropicals elapsed: ",a,", total: ",t+=a)}},handleRefresh(){var t,a;(((a=(t=this.tropicals)==null?void 0:t.data)==null?void 0:a.features)||[]).forEach(r=>{var i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y;if(((i=r.geometry)==null?void 0:i.type)==="Point"){let C="";switch(!0){case(((l=r.properties.wind)==null?void 0:l.kts)<32||((s=r.properties)==null?void 0:s.kts)<32):C="TD";break;case(((n=r.properties.wind)==null?void 0:n.kts)<47||((c=r.properties)==null?void 0:c.kts)<47):C="TS";break;case(((h=r.properties.wind)==null?void 0:h.kts)<63||((d=r.properties)==null?void 0:d.kts)<63):C="STS";break;case(((g=r.properties.wind)==null?void 0:g.kts)<79||((f=r.properties)==null?void 0:f.kts)<79):C="TY";break;case(((w=r.properties.wind)==null?void 0:w.kts)<94||((z=r.properties)==null?void 0:z.kts)<94):C="STY";break;case(((x=r.properties.wind)==null?void 0:x.kts)>=94||((p=r.properties)==null?void 0:p.kts)>=94):C="Super TY";break;default:C="Super TY";break}r.properties.level=C}((S=r.geometry)==null?void 0:S.type)==="Point"&&((L=r.properties)!=null&&L.important)&&(r.properties.format=(b=(_=v(r.properties.date))==null?void 0:_.utcOffset(this.timeZone))==null?void 0:b.format(`MMM-DD/HHmm [(utc${this.computeTimezone})]`)),((u=r.geometry)==null?void 0:u.type)==="Point"&&(r.properties.Name=((y=(k=r.properties.name)==null?void 0:k.trim())==null?void 0:y.replace(/^./,C=>C.toUpperCase()))||r.properties.nameCn,r.properties.nameCn=r.properties.nameCn||r.properties.Name||"-")}),this.handleInit()},handleInit(){var o,t,a,r,i,l,s,n,c,h,d,g;this.handleClear(),this.tropicals&&this.map&&(this.handleRender(),(o=this.map)==null||o.on("click",this.clickLayers,this.handleClick),(t=this.map)==null||t.on("mousemove",this.hoverLayers,this.handleHover),(a=this.map)==null||a.on("mouseleave",this.hoverLayers,this.handleLeave)),((l=(i=(r=this.tropicals)==null?void 0:r.data)==null?void 0:i.features)==null?void 0:l.length)>0?(c=(n=(s=this.$parent)==null?void 0:s.$refs)==null?void 0:n.idmBottomBar)==null||c.handleToggle("tropical",!0):(g=(d=(h=this.$parent)==null?void 0:h.$refs)==null?void 0:d.idmBottomBar)==null||g.handleToggle("tropical",!1)},handleRender(){var o,t,a,r,i,l,s,n,c,h;if(this.tropicals&&this.map){const d=new Date().valueOf();let g=0,f=0;(o=this.map)!=null&&o.getSource(this.source)?((a=this.map)==null||a.getSource(this.source).setData((t=this.tropicals)!=null&&t.active?this.tropicals.data:this.empty),f=new Date().valueOf()-(d+g),console.log("[tropicals] update elapsed: ",f,", total: ",g+=f)):(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":this.Theme.current.value.colors["on-surface"],"line-width":3,"line-opacity":.7}},this.beforeLayer),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",this.Theme.current.value.colors["tropicals-cma"],"jma",this.Theme.current.value.colors["tropicals-jma"],"ecmwf",this.Theme.current.value.colors["tropicals-ecmwf"],"ukm",this.Theme.current.value.colors["tropicals-ukm"],"noaa-at",this.Theme.current.value.colors["tropicals-noaa-at"],"noaa-ep",this.Theme.current.value.colors["tropicals-noaa-ep"],this.Theme.current.value.colors["tropicals-noaa-other"]],"line-width":2,"line-opacity":1,"line-dasharray":[1,2]}},this.beforeLayer),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":12},paint:{"text-color":this.Theme.current.value.dark?"#333":"#fff","text-opacity":1,"text-halo-color":["match",["get","model"],"cma",this.Theme.current.value.colors["tropicals-cma"],"jma",this.Theme.current.value.colors["tropicals-jma"],"ecmwf",this.Theme.current.value.colors["tropicals-ecmwf"],"ukm",this.Theme.current.value.colors["tropicals-ukm"],"noaa-at",this.Theme.current.value.colors["tropicals-noaa-at"],"noaa-ep",this.Theme.current.value.colors["tropicals-noaa-ep"],this.Theme.current.value.colors["tropicals-noaa-other"]],"text-halo-width":4}},this.beforeLayer),f=new Date().valueOf()-(d+g),console.log("[tropical] add elapsed: ",f,", total: ",g+=f)),(l=this.map)!=null&&l.getSource(this.clusterSource)?((n=this.map)==null||n.getSource(this.clusterSource).setData((s=this.tropicals)!=null&&s.active?this.tropicals.data:this.empty),f=new Date().valueOf()-(d+g),console.log("[tropical] update elapsed: ",f,", total: ",g+=f)):(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":5,"circle-color":this.Theme.current.value.colors["on-surface"]}},this.beforeLayer),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","kts",["get","wind"]],null]],this.Theme.current.value.colors["tropicals-td"],["boolean",["<",["get","kts",["get","wind"]],32]],this.Theme.current.value.colors["tropicals-td"],["boolean",["<",["get","kts",["get","wind"]],47]],this.Theme.current.value.colors["tropicals-ts"],["boolean",["<",["get","kts",["get","wind"]],63]],this.Theme.current.value.colors["tropicals-sts"],["boolean",["<",["get","kts",["get","wind"]],79]],this.Theme.current.value.colors["tropicals-ty"],["boolean",["<",["get","kts",["get","wind"]],94]],this.Theme.current.value.colors["tropicals-sty"],["boolean",[">=",["get","kts",["get","wind"]],94]],this.Theme.current.value.colors["tropicals-super-ty"],"#fff"]}},this.beforeLayer),this.map.addLayer({id:this.pointLabelLayer,type:"symbol",source:this.clusterSource,minzoom:5,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[1,0],"text-anchor":"left","text-size":10},paint:{"text-color":this.Theme.current.value.colors["on-surface"]}},this.beforeLayer),this.map.addLayer({id:this.historyPointCircleLayer+"-border",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],paint:{"circle-radius":6,"circle-color":"#fff"}},this.beforeLayer),this.map.addLayer({id:this.historyPointCircleLayer,type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],paint:{"circle-radius":5,"circle-color":"rgba(0,0,0,0.7)"}},this.beforeLayer),this.map.addLayer({id:this.historyPointCircleLayer+"-inner",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],paint:{"circle-radius":3,"circle-color":"#fff"}},this.beforeLayer),this.map.addLayer({id:this.historyPointLabelLayer,type:"symbol",source:this.clusterSource,minzoom:5,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[1,0],"text-anchor":"left","text-size":10},paint:{"text-color":this.Theme.current.value.colors["on-surface"]}},this.beforeLayer),this.map.addLayer({id:this.forecastNameLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["==","important",!0]],layout:{"text-field":["get",this.locale==="en"?"Name":"nameCn"],"text-anchor":"bottom","text-size":16,"text-allow-overlap":!0,"text-ignore-placement":!0,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-offset":[0,2]},paint:{"text-color":this.Theme.current.value.colors["map-blue"],"text-halo-color":"#ffffff","text-halo-width":2}},this.beforeLayer),f=new Date().valueOf()-(d+g),console.log("[tropical] add elapsed: ",f,", total: ",g+=f));const w=T.TropicalHelper.interpolate(this.tropicals,1);this.interpolateData=JSON.parse(JSON.stringify(w)),this.handleDateChange()}},handleClear(){var o,t,a,r;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),(o=this.interpolateMarkers)==null||o.forEach(i=>i==null?void 0:i.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)),(t=this.map)==null||t.off("click",this.clickLayers,this.handleClick),(a=this.map)==null||a.off("mousemove",this.hoverLayers,this.handleHover),(r=this.map)==null||r.off("mouseleave",this.hoverLayers,this.handleLeave),this.handleCloseInfoMarker()},handleDateChange(){var o,t,a,r,i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y,C,E,B,A,O,G,W,F,$,ee,J;if((o=this.interpolateMarkers)==null||o.forEach(q=>q==null?void 0:q.remove()),(t=this.interpolateData)!=null&&t.length&&this.tropicals.active){const q=v(this.realTime).utc().set({minute:0,second:0,millisecond:0}),te=this.interpolateData.filter(P=>P.properties.date===(q==null?void 0:q.format())&&!P.properties.disabled),re=this.handleComputePolygons(te),oe=V.featureCollection([...te]);re.forEach(P=>{oe.features.push(P)}),(a=this.map)!=null&&a.getSource(this.interpolateSource)?(r=this.map)==null||r.getSource(this.interpolateSource).setData(oe):((i=this.map)==null||i.addSource(this.interpolateSource,{type:"geojson",data:oe}),(l=this.map)==null||l.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,this.Theme.current.value.colors["tropicals-r7"],10,this.Theme.current.value.colors["tropicals-r10"],this.Theme.current.value.colors["tropicals-r10"]],"line-width":1}},"empty-layer-3")),this.interpolateMarkers=[];const ae=[];for(const P of te)if(!P.properties.disabled){if(!ae.some(ye=>{var pe;return ye.properties.name===((pe=P.properties)==null?void 0:pe.name)})){const ye=((n=(s=this.tropicals.data.features.find(pe=>{var we;return pe.properties.name===((we=P.properties)==null?void 0:we.name)}))==null?void 0:s.properties)==null?void 0:n.nameCn)||((c=P.properties)==null?void 0:c.Name)||"-";P.properties.nameCn=ye,P.properties.Name=((d=(h=P.properties.name)==null?void 0:h.trim())==null?void 0:d.replace(/^./,pe=>pe.toUpperCase()))||P.properties.nameCn,ae.push(P)}let U=this.Theme.current.value.colors["tropicals-ty"];((f=(g=P.properties)==null?void 0:g.wind)==null?void 0:f.kts)<32||!((z=(w=P.properties)==null?void 0:w.wind)!=null&&z.kts)?U=this.Theme.current.value.colors["tropicals-td"]:((p=(x=P.properties)==null?void 0:x.wind)==null?void 0:p.kts)>=32&&((L=(S=P.properties)==null?void 0:S.wind)==null?void 0:L.kts)<47?U=this.Theme.current.value.colors["tropicals-ts"]:((b=(_=P.properties)==null?void 0:_.wind)==null?void 0:b.kts)>=47&&((k=(u=P.properties)==null?void 0:u.wind)==null?void 0:k.kts)<63?U=this.Theme.current.value.colors["tropicals-sts"]:((C=(y=P.properties)==null?void 0:y.wind)==null?void 0:C.kts)>=63&&((B=(E=P.properties)==null?void 0:E.wind)==null?void 0:B.kts)<79?U=this.Theme.current.value.colors["tropicals-ty"]:((O=(A=P.properties)==null?void 0:A.wind)==null?void 0:O.kts)>=79&&((W=(G=P.properties)==null?void 0:G.wind)==null?void 0:W.kts)<94?U=this.Theme.current.value.colors["tropicals-sty"]:(($=(F=P.properties)==null?void 0:F.wind)==null?void 0:$.kts)>=94?U=this.Theme.current.value.colors["tropicals-super-ty"]:U=this.Theme.current.value.colors["tropicals-ty"];const ce=`<svg t="1719918955501"
|
|
203
|
+
`,["get","val"],{"font-scale":1}],"text-rotation-alignment":"map","text-line-height":1.3,"text-size":12,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},paint:{"text-color":this.theme==="light"?["step",["get","val"],"rgba(0, 0, 0, 0.5)",920,"rgba(0, 0, 0, 0.5)",980,"rgba(0, 0, 0, 0.7)",1100,"rgba(0, 0, 0, 0.7)"]:["step",["get","val"],"rgba(162,13,2,1)",920,"rgba(255, 96, 98, 1)",980,"rgba(255, 246, 184, 1)",1100,"rgba(199,171,250,1)"],"text-halo-color":["step",["get","val"],"rgba(162,13,2,1)",920,"rgba(255, 96, 98, 1)",980,"rgba(255, 246, 184, 1)",1100,"rgba(199,171,250,1)"],"text-halo-width":this.theme==="light"?1:0}},this.beforeLayer),l=new Date().valueOf()-(r+i),console.log("[prmsl] add elapsed: ",l,", total: ",i+=l))}},handleClear(){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 vs(o,t,a,r,i,l){return null}const Ls=j(zs,[["render",vs]]),Jd="",Cs={name:"IdmIceEdge",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[ice-edge] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgba(86, 169, 230, 0)"],[1/255,"rgba(86, 169, 230, 0)"],[25/255,"rgba(86, 169, 230, 1)"],[25/255,"rgba(47, 226, 155, 1)"],[100/255,"rgba(47, 226, 155, 1)"],[100/255,"rgba(213, 253, 37, 1)"],[175/255,"rgba(213, 253, 37, 1)"],[175/255,"rgba(230, 176, 39, 1)"],[225/255,"rgba(230, 176, 39, 1)"],[225/255,"rgba(230, 84, 39, 1)"],[250/255,"rgba(230, 84, 39, 1)"],[1,"rgba(230, 84, 39, 1)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Ps={key:0};function Ss(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Ps,[e.createElementVNode("div",{class:"legend-bars-gl4 ice-edge",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",{style:{color:"rgba(var(--v-theme-black), 0.7)"}},"%",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"40",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"70",-1),e.createElementVNode("span",null,null,-1),e.createElementVNode("span",null,"90",-1),e.createElementVNode("span",null,null,-1)]),4)])):e.createCommentVNode("",!0)}const Ns=j(Cs,[["render",Ss]]),Qd="",Ts={name:"IdmCover",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[ice-cover] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgba(68, 1, 84, 0)"],[1/255,"rgba(63, 72, 137, 0)"],[50/255,"rgba(53, 125, 177, 1)"],[100/255,"rgba(33, 145, 140, 1)"],[150/255,"rgba(45, 178, 125, 1)"],[200/255,"rgba(112, 207, 87, 1)"],[250/255,"rgba(253, 231, 37, 0.8)"],[1,"rgba(253, 231, 37, 1)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Ds={key:0};function Es(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Ds,[e.createElementVNode("div",{class:"legend-bars-gl4 ice-cover",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"%",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"40",-1),e.createElementVNode("span",null,"60",-1),e.createElementVNode("span",null,"80",-1),e.createElementVNode("span",null,"100",-1)]),4)])):e.createCommentVNode("",!0)}const Ms=j(Ts,[["render",Es],["__scopeId","data-v-916b01eb"]]),$d="",Vs={name:"IdmThickness",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},menuToggle:{type:Object},bottom:{type:String,default:"70px"}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[ice-thickness] add elapsed: ",a,", total: ",t+=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 o=[[0,"rgba(4, 6, 19, 0)"],[1/255,"rgba(4, 6, 19, 0)"],[20/255,"rgba(51, 50, 102, 1)"],[40/255,"rgba(63, 82, 158, 1)"],[50/255,"rgba(66, 123, 183, 1)"],[60/255,"rgba(92, 161, 197, 1)"],[80/255,"rgba(134, 199, 212, 0.7)"],[100/255,"rgba(134, 199, 212, 1)"],[150/255,"rgba(234, 253, 2536, 0.8)"],[250/255,"rgba(234, 253, 2536, 0.9)"],[1,"rgba(234, 253, 2536, 1)"]];this.rampColor=this.webgl.setup(this.context,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Bs={key:0};function Is(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Bs,[e.createElementVNode("div",{class:"legend-bars-gl4 ice-thickness",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"m",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"0.6",-1),e.createElementVNode("span",null,"1",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"2",-1),e.createElementVNode("span",null,"3",-1)]),4)])):e.createCommentVNode("",!0)}const Rs=j(Vs,[["render",Is]]),eh="",As={name:"IdmPrecip3h",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},deeimmediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[precip3h] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Os={key:0};function js(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Os,[e.createElementVNode("div",{class:"legend-bars-gl4 precip3h",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"mm",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"2",-1),e.createElementVNode("span",null,"3",-1),e.createElementVNode("span",null,"7",-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"30",-1)]),4)])):e.createCommentVNode("",!0)}const Fs=j(As,[["render",js]]),th="",Hs={name:"IdmVisibility",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{right:10,program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[visibility] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Gs={key:0};function Ws(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Gs,[e.createElementVNode("div",{class:"legend-bars-gl4 visibility",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"nm",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"0.5",-1),e.createElementVNode("span",null,"1.5",-1),e.createElementVNode("span",null,"3",-1),e.createElementVNode("span",null,"9",-1)]),4)])):e.createCommentVNode("",!0)}const Us=j(Hs,[["render",Ws]]),oh="",Ys={name:"IdmWaterTemp",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[water-temp] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Zs={key:0};function qs(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Zs,[e.createElementVNode("div",{class:"legend-bars-gl4 water-temp",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"°C",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"30",-1),e.createElementVNode("span",null,"40",-1)]),4)])):e.createCommentVNode("",!0)}const Xs=j(Ys,[["render",qs]]),ah="",Ks={name:"IdmTemp",props:{simple:{type:Boolean,default:!1},factor:{type:Object},viewport:{type:Object},bottom:{type:String,default:"70px"},menuToggle:{type:Object}},data(){return{program:void 0,context:void 0,texture:void 0,rampColor:void 0,aPositionBuffer:void 0,webgl:new _e,etime:void 0,right:10}},watch:{"factor.version":{handler(){var o;(o=this.factor)!=null&&o.active?this.handleRender():this.handleClear()},immediate:!0},"menuToggle.v":{handler(){var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)},immediate:!0}},methods:{handleRender(){if(this.factor){const o=new Date().valueOf();let t=0,a=0;this.handleDraw(),a=new Date().valueOf()-(o+t),console.log("[temp] add elapsed: ",a,", total: ",t+=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 o=[[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,o);const{program:t,aPositionBuffer:a}=this.webgl.bind(this.context,K.vertexSchema,K.fragmentSchema);this.program=t,this.aPositionBuffer=a}},async handleDraw(){if(this.handleSetup(),this.etime!==this.factor.etime){this.etime=this.factor.etime;const o=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,o)}this.webgl.draw(this.viewport,this.context,this.program,this.texture,this.rampColor.texture,this.aPositionBuffer),this.viewport.toggle(!0)}}},Js={key:0};function Qs(o,t,a,r,i,l){var s;return(s=a.factor)!=null&&s.active?(e.openBlock(),e.createElementBlock("div",Js,[e.createElementVNode("div",{class:"legend-bars-gl4 temp",style:e.normalizeStyle({right:i.right+"px"})},t[0]||(t[0]=[e.createElementVNode("span",null,"°C",-1),e.createElementVNode("span",null,"-20",-1),e.createElementVNode("span",null,"-10",-1),e.createElementVNode("span",null,"0",-1),e.createElementVNode("span",null,"10",-1),e.createElementVNode("span",null,"20",-1),e.createElementVNode("span",null,"30",-1),e.createElementVNode("span",null,"40",-1)]),4)])):e.createCommentVNode("",!0)}const $s=j(Ks,[["render",Qs]]),ih="",en={name:"IdmGlLayer",components:{IdmWindBarb:es,IdmWindParticle:is,IdmCurrentDirection:ss,IdmCurrentParticle:ds,IdmWave:us,IdmSigWaveHeight:bs,IdmSwell:ks,IdmPrmsl:Ls,IdmIceEdge:Ns,IdmIceCover:Ms,IdmIceThickness:Rs,IdmPrecip3h:Fs,IdmVisibility:Us,IdmWaterTemp:Xs,IdmTemp:$s},props:{simple:{type:Boolean,default:!1},isLogin:{type:Boolean,default:!1},theme:{type:String},map:{type:Object},mapFeather:{type:String},gateway:{type:String},assistGateway:{type:Array,default:[]},defaultMeteoToken:{type:String},top:{type:Number,default:60},paddingTop:{type:Number,default:48},menuToggle:{type:Object,default:{}},realTime:{type:String},forecastModel:{type:String},beforeLayer:{type:String}},emits:["forecastModel","menuToggle","weatherCheckList","autoActive"],data(){return{right:10,toggle:!1,autoActive:!0,weatherWeight:0,allLayers:[...Be.LayerHelper.WEATHER_LAYERS],tagLayers:[...Be.LayerHelper.WEATHER_LAYERS.filter(o=>!o.hide)],checkList:[],renderKey:"",iceToggleValue:void 0,waveToggleValue:void 0,weatherLayers:{},activeWeatherLayers:[],cache:{v:"0.0.1",versionKey:"weatherLayerCacheVersionGL4",autoActiveKey:"autoActiveCacheGL4",checkListKey:"weatherCheckListCacheGL4"},models:{},currentModel:localStorage.getItem("forecastModelCacheGL4")==="GFS"?"GFS":"ECMWF",zoom:6,viewport:void 0,particleFactor:void 0,showWindParticle:!0,showCurrentParticle:!0,legendToggle:!1,legend:{barbs:[2,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100,105,0],current:[{label:"0-0.5 kts",size:.3,color:"rgb(58, 164, 58)"},{label:"0.5-1 kts",size:.4,color:"#ffff00"},{label:"1-1.5 kts",size:.6,color:"#ff9500"},{label:"1.5-2 kts",size:.8,color:"#f44336"},{label:">= 2 kts",size:1,color:"#e4711e"}],sigWaveHeight:[{label:"< 2 m",color:"rgba(0,235,156,0)"},{label:"2-3 m",color:"rgba(0,235,156,0.4)"},{label:"3-4 m",color:"#ffed00"},{label:"4-5 m",color:"#ff9800"},{label:"5-6 m",color:"#f77800"},{label:"6-7 m",color:"#e4711e"},{label:"7-8 m",color:"#e06128"},{label:"8-9 m",color:"#dc5132"},{label:"9-10 m",color:"#d5453c"},{label:"10-12 m",color:"#cd3a46"},{label:"12-14 m",color:"#be2c50"},{label:"> 14 m",color:"#aa1a5a"}]}}},computed:{listStyle(){return this.simple?{top:this.top+"px",left:this.toggle?"0px":"-280px"}:{top:this.top+"px",right:this.toggle?"0px":"-280px"}},computeDateZ(){return function(o){var t;if(o){const a=v(o);return`${(t=a==null?void 0:a.utc())==null?void 0:t.format("MMM-DD/HHmm")}Z`}return"-"}},computeDateUpdate(){return function(o){return o?v(o).fromNow():"-"}},overlaysKeys(){return this.tagLayers.filter(o=>o.overlays).map(o=>o.key)},rendersKeys(){return this.allLayers.filter(o=>!o.overlays&&o.enabled).map(o=>o.key)},showTipMenu(){return this.checkList.includes("wind")||this.checkList.includes("current-direction")||this.checkList.includes("sig-wave-height")},barbsIconName(){var t,a,r;const o=[];for(let i=0;i<((a=(t=this.legend)==null?void 0:t.barbs)==null?void 0:a.length);i++){const l=((r=this.legend)==null?void 0:r.barbs[i])||0,s=l<10?`00${l}kts`:l<100?`0${l}kts`:`${l}kts`;o.push("icon-a-"+s)}return o}},watch:{"menuToggle.v":{handler(){this.toggle=this.menuToggle.weatherLayers,this.$nextTick(()=>{var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)})}},currentModel:{handler(o,t){this.$emit("forecastModel",o),localStorage.setItem("forecastModelCacheGL4",o)},immediate:!0},forecastModel:{handler(o,t){o&&o!==t&&this.handleWeatherLayerChange({sourceChanged:!0})}},map:{handler(){this.map&&(this.fetchCache(),this.map.on("move",this.handleMove4Weather),this.viewport=new uo(this.map),this.handleRampColorInitial())},immediate:!0},realTime:{handler(o,t){o&&t&&v(o).utc().format("yyyy-MM-DD HH")!==v(t).utc().format("yyyy-MM-DD HH")&&this.$nextTick(()=>{this.fetchWeatherLayers()})},immediate:!0},renderKey:{handler(o,t){o&&o!==t?o==="wave-group"?this.checkList=["wave-group",this.waveToggleValue||"sig-wave"]:o==="ice-forecast"?this.checkList=["ice-forecast",this.iceToggleValue||"ice-cover"]:this.checkList=[o]:!o&&t&&(this.checkList=this.checkList.filter(a=>a!==t))}},checkList:{handler(o,t){var a,r,i,l,s,n;this.handleCheckListChange(o,t),this.$emit("weatherCheckList",o),this.autoActive&&this.checkList.length?(i=(r=(a=this.$parent)==null?void 0:a.$refs)==null?void 0:r.idmBottomBar)==null||i.handleToggle("weather",!0):(n=(s=(l=this.$parent)==null?void 0:l.$refs)==null?void 0:s.idmBottomBar)==null||n.handleToggle("weather",!1)}},autoActive:{handler(o){var t,a,r,i,l,s;localStorage.setItem(this.cache.autoActiveKey,this.autoActive),this.activeWeatherLayers=this.autoActive?this.allLayers.filter(n=>this.checkList.includes(n.key)):[],this.handleWeatherLayerChange(),this.autoActive&&this.checkList.length?(r=(a=(t=this.$parent)==null?void 0:t.$refs)==null?void 0:a.idmBottomBar)==null||r.handleToggle("weather",!0):(s=(l=(i=this.$parent)==null?void 0:i.$refs)==null?void 0:l.idmBottomBar)==null||s.handleToggle("weather",!1),this.$emit("autoActive",this.autoActive)}},iceToggleValue:{handler(o){o&&(this.checkList=["ice-forecast",this.iceToggleValue])}},waveToggleValue:{handler(o){o&&(this.checkList=["wave-group",this.waveToggleValue])}},showWindParticle:{handler(o){let t="wind-particle";this.weatherLayers[t].particle=o,this.weatherLayers[t].version=Math.random()+1}},showCurrentParticle:{handler(o){let t="current-particle";this.weatherLayers[t].particle=o,this.weatherLayers[t].version=Math.random()+1}},isLogin:{handler(o){o?this.fetchModels():this.models={}},immediate:!0}},mounted(){this.fetchModels()},methods:{arraysEqual(o,t){if((o==null?void 0:o.length)!==(t==null?void 0:t.length))return!1;for(let a=0;a<(o==null?void 0:o.length);a++)if((o==null?void 0:o[a])!==(t==null?void 0:t[a]))return!1;return!0},fetchCache(){var a,r;const o=localStorage.getItem(this.cache.versionKey);this.cache.v!==o&&(localStorage.removeItem(this.cache.autoActiveKey),localStorage.removeItem(this.cache.checkListKey),localStorage.setItem(this.cache.versionKey,this.cache.v));let t=localStorage.getItem(this.cache.autoActiveKey);this.autoActive=t!=="false",localStorage.setItem(this.cache.autoActiveKey,this.autoActive),t=localStorage.getItem(this.cache.checkListKey),this.waveToggleValue=(a=JSON.parse(t))!=null&&a.some(i=>i==="swell")?"swell":void 0,this.iceToggleValue=(r=JSON.parse(t))!=null&&r.some(i=>i==="ice-thickness")?"ice-thickness":void 0,this.checkList=JSON.parse(t||JSON.stringify(["wind","sig-wave-height"])),this.checkList.find(i=>this.rendersKeys.includes(i))&&(this.renderKey=this.checkList.find(i=>this.rendersKeys.includes(i))),localStorage.setItem(this.cache.checkListKey,JSON.stringify(this.checkList))},handleMenuToggle(){this.$emit("menuToggle","weatherLayers")},handleFastWeatherToggle(o){let t=[];this.checkList.includes(o)?t=this.checkList.filter(a=>a!==o):t=[...this.checkList,o],this.handleCheckListChange(t,this.checkList)},handleCheckListChange(o,t){if(this.arraysEqual(o,t))return!1;const a=[...new Set(o)],r=a==null?void 0:a.filter(l=>!(t!=null&&t.includes(l)))[0],i=t==null?void 0:t.filter(l=>!(a!=null&&a.includes(l)))[0];r&&(r==="ice-cover"||r==="ice-thickness"||r==="ice-forecast"?(this.checkList=["ice-forecast",this.iceToggleValue||"ice-cover"],this.iceToggleValue=this.iceToggleValue||"ice-cover"):r==="sig-wave"||r==="swell"||r==="wave-group"?(this.checkList=["wave-group",this.waveToggleValue||"sig-wave"],this.waveToggleValue=this.waveToggleValue||"sig-wave"):this.rendersKeys.includes(r)?this.checkList=[r]:(this.checkList=a.filter(l=>!this.rendersKeys.includes(l)),this.renderKey=void 0)),i&&(i==="ice-forecast"?(this.checkList=a.filter(l=>!["ice-cover","ice-thickness","ice-forecast"].includes(l)),this.iceToggleValue=void 0):i==="wave-group"?(this.checkList=a.filter(l=>!["wave-group","sig-wave","swell"].includes(l)),this.waveToggleValue=void 0):this.checkList=a),this.checkList.includes("wind-particle")&&(this.showWindParticle=!0),this.checkList.includes("current-particle")&&(this.showCurrentParticle=!0),localStorage.setItem(this.cache.checkListKey,JSON.stringify(a)),this.activeWeatherLayers=this.autoActive?this.allLayers.filter(l=>a.includes(l.key)):[],this.handleWeatherLayerChange()},async fetchModels(){this.models={};const o=await Q.get(`${this.gateway}/api/arc/meteo2/models2`,{headers:{Authorization:this.defaultMeteoToken}});(o==null?void 0:o.data.code)===0&&(this.models=o==null?void 0:o.data.data)},async fetchWeatherLayers(o={}){var i,l,s,n,c,h,d,g,f;const t=new Date().valueOf();let a=0,r=0;if(this.map){const w=((i=this.map)==null?void 0:i.getZoom())+1,z=(l=this.map)==null?void 0:l.getBounds(),x=`${z._sw.lng},${z._sw.lat},${z._ne.lng},${z._ne.lat}`;if(this.particleFactor&&((s=this.$refs.layer)!=null&&s.autoActive)){const p=Be.LayerHelper.WEATHER_LAYERS.find(S=>{var L;return((L=S.peer)==null?void 0:L.weight)===this.particleFactor.weight});this.particleFactor.particle&&(this.showWindParticle||this.showCurrentParticle)?this.weatherWeight=this.weatherWeight&p.weight?this.weatherWeight:this.weatherWeight+p.weight:this.weatherWeight=this.weatherWeight&p.weight?this.weatherWeight-p.weight:this.weatherWeight}if(this.weatherWeight>0){let p=this.weatherWeight;if(p>0){const S=this.assistGateway[Math.round(Math.random()*(this.assistGateway.length-1))],L=await Q.get(`${S}/api/arc/weather/layers2/links?l=${p}&v=${this.forecastModel}&z=${w}&bbox=${x}&t=${this.realTime}`,{headers:{Authorization:this.defaultMeteoToken}});if(r=new Date().valueOf()-(t+a),console.log("weather links elapsed: ",r,", total: ",a+=r),((n=L==null?void 0:L.data)==null?void 0:n.code)===0){const _=(c=L==null?void 0:L.data)==null?void 0:c.data,b=[];for(const k in _)b.push(Q.get(_[k],{headers:{Authorization:this.defaultMeteoToken,key:k},responseType:/\.(jpg|png)$/.test(_[k])?"blob":"json"}).catch(y=>{console.log(`[${k}] fetch layer error: ${y}`)}));const u=await Promise.all(b);this.weatherLayers={},u.map(k=>{var E,B,A,O;const y=((E=k==null?void 0:k.data)==null?void 0:E.data)||(k==null?void 0:k.data);let C=(A=(B=k==null?void 0:k.config)==null?void 0:B.headers)==null?void 0:A.key;C&&y&&(this.weatherLayers[C]={raw:y,type:((O=k==null?void 0:k.config)==null?void 0:O.responseType)==="blob"?"image":"json",etime:L.data.etime})})}if(r=new Date().valueOf()-(t+a),console.log("weather layers elapsed: ",r,", total: ",a+=r),this.weatherLayers["swell-direction"]||this.weatherLayers["swell-height"]){const _=(h=this.weatherLayers["swell-direction"])==null?void 0:h.raw,b=(d=this.weatherLayers["swell-height"])==null?void 0:d.raw;delete this.weatherLayers["swell-direction"],delete this.weatherLayers["swell-height"],this.weatherLayers.swell={type:"json",direction:_,height:{raw:b},etime:L.data.etime}}if(this.weatherLayers["current-direction"]||this.weatherLayers["current-speed"]){const _=(g=this.weatherLayers["current-direction"])==null?void 0:g.raw,b=(f=this.weatherLayers["current-speed"])==null?void 0:f.raw;delete this.weatherLayers["current-direction"],delete this.weatherLayers["current-speed"],this.weatherLayers.current={type:"json",direction:_,speed:{raw:b},etime:L.data.etime}}}}this.handleWeatherLayerToggle(),this.handleDrawWeather4Json()}},handleWeatherLayerToggle(){for(const o in this.weatherLayers)this.weatherLayers[o].active=!1,this.weatherLayers[o].version=Math.random()+1;for(const o of this.activeWeatherLayers){let t=o.key;t==="current-direction"&&(t="current"),this.weatherLayers[t]&&(this.weatherLayers[t].active=!0,this.weatherLayers[t].version=Math.random()+1,t==="wind-particle"&&(this.weatherLayers[t].particle=this.showWindParticle),t==="current-particle"&&(this.weatherLayers[t].particle=this.showCurrentParticle))}},handleWeatherLayerChange(o={sourceChanged:!1}){var a;const t=(a=this.activeWeatherLayers)==null?void 0:a.reduce((r,i)=>r+(r&(i==null?void 0:i.weight)?0:i==null?void 0:i.weight),0);o!=null&&o.sourceChanged||this.weatherWeight!==t?(this.weatherWeight=t,this.fetchWeatherLayers()):this.handleWeatherLayerToggle()},handleRampColorInitial(){var o,t,a,r,i,l,s,n,c,h,d,g;this.viewport.map.getSource((o=this.viewport)==null?void 0:o.rampColorSource)||this.viewport.map.addSource((t=this.viewport)==null?void 0:t.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:(l=this.viewport)==null?void 0:l.rampColorSource,layout:{visibility:"none"}},this.beforeLayer),this.viewport.map.getSource((s=this.viewport)==null?void 0:s.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:(g=this.viewport)==null?void 0:g.particleSource,layout:{visibility:"none"}},this.beforeLayer)},handleDrawWeather4Json(){var l,s,n,c,h,d,g;const o=new Date().valueOf();let t=0,a=0;const r=(l=this.map)==null?void 0:l.getBounds(),i=(s=this.map)==null?void 0:s.getZoom();if(r&&i){const f=T.LngLatHelper.convertToStdLng(r._sw.lng),w=T.LngLatHelper.convertToStdLng(r._ne.lng),z=Math.floor(r._sw.lat),x=Math.ceil(r._ne.lat);for(const p in this.weatherLayers){let S=!1;if(this.weatherLayers[p].active&&this.weatherLayers[p].type==="json"){let L=[];if(p==="swell"){S=!0;const _=((n=this.weatherLayers[p])==null?void 0:n.direction)||{};for(const u in _)if(u>z&&u<x&&(!(i<=this.zoom)||u%(i<2?10:i<4?5:3)===0)){const k=_[u].lng;f>w?k.forEach((y,C)=>{var E,B,A,O,G,W;if(i<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if((y>=f&&y<=180||y>=-180&&y<=w)&&(!(i<=this.zoom)||y%(i<2?10:i<4?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}}):k.forEach((y,C)=>{var E,B,A,O,G,W;if(f<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if(y>=f&&y<=w&&(!(i<=this.zoom)||y%(i<2?10:i<4?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}})}a=new Date().valueOf()-(o+t),console.log("swell direction elapsed: ",a,", total: ",t+=a);const b=this.weatherLayers[p].height;if(b){if(!b.data){const u=[];for(const k in(c=b.raw)==null?void 0:c.LineString){const y=b.raw.LineString[k];for(const C of y)u.push(V.lineString(C,{val:Number(k)}));b.data=V.featureCollection(u)}}if(b.data){const u=this.handleBboxClip(b.data,r);L=L.concat(u)}a=new Date().valueOf()-(o+t),console.log("swell height elapsed: ",a,", total: ",t+=a)}}else if(p==="current"){S=!0;const _=((h=this.weatherLayers[p])==null?void 0:h.direction)||{};for(const u in _)if(u>z&&u<x&&(!(i<=this.zoom)||u%(i<2?10:i<4?5:3)===0)){const k=_[u].lng;f>w?k.forEach((y,C)=>{var E,B,A,O,G,W;if(i<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if((y>=f&&y<=180||y>=-180&&y<=w)&&(!(i<=this.zoom)||y%(i<2?10:i<4?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}}):k.forEach((y,C)=>{var E,B,A,O,G,W;if(f<2){if((y>=0&&y<=360||y>=-360&&y<=0)&&y%10===0){const F=V.point([y,u],{val:((E=_[u].val)==null?void 0:E[C])||((B=_[u].dir)==null?void 0:B[C]),spd:(A=_[u].spd)==null?void 0:A[C]});L.push(F)}}else if(y>=f&&y<=w&&(!(i<=this.zoom)||y%(i<this.zoom/2?5:3)===0)){const F=V.point([y,u],{val:((O=_[u].val)==null?void 0:O[C])||((G=_[u].dir)==null?void 0:G[C]),spd:(W=_[u].spd)==null?void 0:W[C]});L.push(F)}})}a=new Date().valueOf()-(o+t),console.log("current direction elapsed: ",a,", total: ",t+=a);const b=this.weatherLayers[p].speed;if(b){if(!b.data){const k=[];for(const y in(d=b.raw)==null?void 0:d.Polygon){const C=b.raw.Polygon[y];for(const E of C)k.push(V.polygon(E,{val:Number(y)}))}b.data=V.featureCollection(k)}const u=i<this.zoom?b.data.features.filter(k=>k.properties.val>.5):b.data.features;L=L.concat(u),a=new Date().valueOf()-(o+t),console.log("current speed elapsed: ",a,", total: ",t+=a)}}else if(p==="wind"){S=!0;const _=this.weatherLayers.wind.raw;for(const b in _)if(b>z&&b<x&&(!(i<=this.zoom)||b%(i<2?10:i<4?5:3)===0)){const u=_[b].lng;f>w?u.forEach((k,y)=>{var C,E,B,A;if(i<2){if((k>=0&&k<=360||k>=-360&&k<=0)&&k%10===0){const O=V.point([k,b],{dir:((C=_[b].val)==null?void 0:C[y])||((E=_[b].dir)==null?void 0:E[y]),spd:_[b].spd[y]});L.push(O)}}else if((k>=f&&k<=180||k>=-180&&k<=w)&&(!(i<=this.zoom)||k%(i<2?10:i<4?5:3)===0)){const O=V.point([k,b],{dir:((B=_[b].val)==null?void 0:B[y])||((A=_[b].dir)==null?void 0:A[y]),spd:_[b].spd[y]});L.push(O)}}):u.forEach((k,y)=>{var C,E,B,A;if(i<2){if((k>=0&&k<=360||k>=-360&&k<=0)&&k%10===0){const O=V.point([k,b],{dir:((C=_[b].val)==null?void 0:C[y])||((E=_[b].dir)==null?void 0:E[y]),spd:_[b].spd[y]});L.push(O)}}else if(k>=f&&k<=w&&(!(i<=this.zoom)||k%(i<2?10:i<4?5:3)===0)){const O=V.point([k,b],{dir:((B=_[b].val)==null?void 0:B[y])||((A=_[b].dir)==null?void 0:A[y]),spd:_[b].spd[y]});L.push(O)}})}a=new Date().valueOf()-(o+t),console.log("wind barb elapsed: ",a,", total: ",t+=a)}else if(p==="sig-wave-height"){if(this.weatherLayers[p].data)L=this.weatherLayers[p].data;else{S=!0;const _=this.weatherLayers[p].raw;if(_){const b=[];for(const u in _.Polygon){const k=_.Polygon[u];for(const y of k)b.push(V.polygon(y,{val:Number(u)}))}for(const u in _.MultiPolygon){const k=_.MultiPolygon[u];for(const y of k)b.push(V.multiPolygon(y,{val:Number(u)}))}for(const u in _.Point){const k=_.Point[u];for(let y=0;y<((g=k.lng)==null?void 0:g.length);y++)b.push(V.point([k.lng[y],u],{val:Number(k.val[y])}))}L=L.concat(b)}}a=new Date().valueOf()-(o+t),console.log("sig-wave-height elapsed: ",a,", total: ",t+=a)}else if(p==="prmsl"){if(this.weatherLayers[p].data)L=this.weatherLayers[p].data;else{S=!0;const _=this.weatherLayers[p].raw;if(_){const b=[];for(const u in _.LineString){const k=_.LineString[u];for(const y of k)b.push(V.lineString(y,{val:Number(u)}))}for(const u in _.Point)_.Point[u].lng.forEach((k,y)=>{k=T.LngLatHelper.convertToStdLng(k),b.push(V.point([k,u],{val:_.Point[u].val[y],type:_.Point[u].type[y]}))});L=L.concat(b)}}a=new Date().valueOf()-(o+t),console.log("prmsl elapsed: ",a,", total: ",t+=a)}L.length&&(this.weatherLayers[p].data=V.featureCollection(L)),S&&(this.weatherLayers[p].version=Math.random()+1)}}}},handleMove4Weather(){for(const o in this.weatherLayers)this.weatherLayers[o].active&&this.weatherLayers[o].type==="image"&&(this.weatherLayers[o].active=!0,this.weatherLayers[o].version=Math.random()+1);this.handleDrawWeather4Json()},handleBboxClip(o,t){const a=[],r=T.LngLatHelper.convertToStdLng(t._sw.lng),i=T.LngLatHelper.convertToStdLng(t._ne.lng);return o.features.forEach(l=>{if(l.geometry.type!=="Point")if(r>i){let s=[r,t._sw.lat,180,t._ne.lat],n=V.bboxClip(l,s);n.geometry.coordinates.length&&a.push(n),s=[-180,t._sw.lat,i,t._ne.lat],n=V.bboxClip(l,s),n.geometry.coordinates.length&&a.push(n)}else{const s=[r,t._sw.lat,i,t._ne.lat],n=V.bboxClip(l,s);n.geometry.coordinates.length&&a.push(n)}else a.push(l)}),a}}},tn={class:"idm-gl4-meteo-layers"},on={key:0,class:"legend-tip-btn-gl4"},an={class:"d-flex flex-row justify-center align-center"},rn={class:"text-caption"},ln={class:"d-flex flex-row justify-center align-center"},sn={key:0,style:{width:"24px",height:"12px",border:"1px solid rgba(var(--v-border-color), var(--v-border-opacity))"}},nn={class:"text-caption px-2"},cn={class:"d-flex flex-row justify-start align-center"},mn={class:"d-flex flex-row justify-center align-center",style:{width:"40px"}},dn={class:"text-caption"},hn={class:"header-box d-flex justify-space-between align-center px-4"},pn={class:"d-flex justify-start align-center ga-3"},gn={class:"text-h5 font-weight-medium"},un={key:0,class:"w-100 d-flex justify-space-between align-center ga-1 mb-1 px-4"},fn={key:0,class:"d-flex justify-start align-center ga-4 pl-6"},yn={key:1,class:"d-flex justify-start align-center ga-4 pl-6"},bn={class:"text-body-1 py-2"},wn={class:"text-body-1 font-weight-medium"},xn={class:"text-body-2 text-label"},_n={class:"text-body-2 text-label"},kn={class:"text-body-2 text-label mb-3"},zn={class:"text-body-1 font-weight-medium"},vn={class:"text-body-2 text-label"},Ln={class:"text-body-2 text-label"},Cn={class:"text-body-2 text-label mb-3"},Pn={class:"text-body-1 py-2"},Sn={class:"text-body-1 font-weight-medium"},Nn={class:"text-body-2 text-label"},Tn={class:"text-body-2 text-label"},Dn={class:"text-body-2 text-label mb-3"},En={class:"text-body-1 font-weight-medium"},Mn={class:"text-body-2 text-label"},Vn={class:"text-body-2 text-label"},Bn={class:"text-body-2 text-label mb-3"},In={class:"text-body-1 py-2"},Rn={class:"text-body-1 font-weight-medium"},An={class:"text-body-2 text-label"},On={class:"text-body-2 text-label"},jn={class:"text-body-2 text-label mb-3"};function Fn(o,t,a,r,i,l){var J,q,te,re,oe,ae,P,U,ce,he,fe,ye,pe,we,be;const s=e.resolveComponent("VBtn"),n=e.resolveComponent("VTooltip"),c=e.resolveComponent("VCol"),h=e.resolveComponent("VRow"),d=e.resolveComponent("VCardText"),g=e.resolveComponent("VDivider"),f=e.resolveComponent("VCard"),w=e.resolveComponent("VSwitch"),z=e.resolveComponent("VBtnToggle"),x=e.resolveComponent("VCardTitle"),p=e.resolveComponent("VCardItem"),S=e.resolveComponent("VCheckbox"),L=e.resolveComponent("VRadio"),_=e.resolveComponent("IdmWindBarb"),b=e.resolveComponent("IdmSigWaveHeight"),u=e.resolveComponent("IdmCurrentDirection"),k=e.resolveComponent("IdmPrmsl"),y=e.resolveComponent("IdmWindParticle"),C=e.resolveComponent("IdmCurrentParticle"),E=e.resolveComponent("IdmWave"),B=e.resolveComponent("IdmSwell"),A=e.resolveComponent("IdmIceEdge"),O=e.resolveComponent("IdmIceCover"),G=e.resolveComponent("IdmIceThickness"),W=e.resolveComponent("IdmPrecip3h"),F=e.resolveComponent("IdmVisibility"),$=e.resolveComponent("IdmWaterTemp"),ee=e.resolveComponent("IdmTemp");return e.openBlock(),e.createElementBlock("div",tn,[e.createElementVNode("div",{class:"menu-bar-box transition pa-1",style:e.normalizeStyle({top:this.top+this.paddingTop+46+"px",right:this.right+"px"})},[e.createVNode(n,{text:o.$t("weather.weatherLayers"),location:"left",touch:"hover","auto-hide":2e3},{activator:e.withCtx(({props:M})=>[e.createVNode(s,e.mergeProps(M,{"min-width":"32",width:"32",height:"32",class:["text-none pa-0",i.toggle?"bg-primary active-border":""],onClick:l.handleMenuToggle}),{default:e.withCtx(()=>t[9]||(t[9]=[e.createElementVNode("i",{class:"iconfont icon-Weather text-h4"},null,-1)])),_:2,__:[9]},1040,["class","onClick"])]),_:1},8,["text"])],4),l.showTipMenu?(e.openBlock(),e.createElementBlock("div",on,[e.createElementVNode("div",{class:"menu-bar-box pa-1 rounded",style:e.normalizeStyle({right:i.right+"px"})},[e.createVNode(n,{text:"Legend",location:"left"},{activator:e.withCtx(({props:M})=>[e.createVNode(s,e.mergeProps(M,{"min-width":"32",width:"32",height:"32",class:["text-none pa-0",i.legendToggle?"bg-primary active-border":""],onClick:t[0]||(t[0]=Y=>i.legendToggle=!i.legendToggle)}),{default:e.withCtx(()=>t[10]||(t[10]=[e.createElementVNode("i",{class:"iconfont icon-Legend text-h4"},null,-1)])),_:2,__:[10]},1040,["class"])]),_:1})],4),i.legendToggle?(e.openBlock(),e.createBlock(f,{key:0,elevation:"16",class:"card-info d-flex justify-center align-start",style:e.normalizeStyle({position:"absolute",top:"340px",right:i.right+50+"px"})},{default:e.withCtx(()=>[e.createVNode(d,{class:"d-flex flex-column justify-center align-start text-label px-2",style:{width:"110px"}},{default:e.withCtx(()=>[t[11]||(t[11]=e.createElementVNode("div",{class:"text-body-2 font-weight-600 mb-2"},"Wind Level",-1)),e.createVNode(h,{class:"ma-0 ml-n1 text-body-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.legend.barbs,(M,Y)=>(e.openBlock(),e.createBlock(c,{key:M,cols:"6",class:"d-flex flex-row justify-start align-center py-1 px-0 ma-0"},{default:e.withCtx(()=>[e.createElementVNode("div",an,[e.createElementVNode("i",{class:e.normalizeClass(["iconfont",l.barbsIconName[Y]]),style:e.normalizeStyle({color:a.theme==="dark"?"#fff":"#000"})},null,6),e.createElementVNode("span",rn,e.toDisplayString(Number(M)<10?`00${M}kts`:Number(M)<100?`0${M}kts`:`${M}kts`),1)])]),_:2},1024))),128))]),_:1})]),_:1,__:[11]}),e.createVNode(g,{vertical:""}),e.createVNode(d,{class:"d-flex flex-column justify-center align-start text-label px-2",style:{width:"100px"}},{default:e.withCtx(()=>[t[12]||(t[12]=e.createElementVNode("div",{class:"text-body-2 font-weight-600 mb-2"},"Wave Height",-1)),e.createVNode(h,{class:"ma-0"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.legend.sigWaveHeight,(M,Y)=>(e.openBlock(),e.createBlock(c,{key:Y,cols:"12",class:"d-flex flex-row justify-start align-center py-1 px-0 ma-0"},{default:e.withCtx(()=>[e.createElementVNode("div",ln,[Y===0?(e.openBlock(),e.createElementBlock("div",sn)):(e.openBlock(),e.createElementBlock("div",{key:1,style:e.normalizeStyle({width:"24px",height:"12px",background:M.color})},null,4)),e.createElementVNode("div",nn,e.toDisplayString(M.label),1)])]),_:2},1024))),128))]),_:1})]),_:1,__:[12]}),e.createVNode(g,{vertical:""}),e.createVNode(d,{class:"d-flex flex-column justify-center align-start text-label px-2",style:{width:"90px"}},{default:e.withCtx(()=>[t[13]||(t[13]=e.createElementVNode("div",{class:"text-body-2 font-weight-600 mb-2"},"Current",-1)),e.createVNode(h,{class:"ma-0 ml-n4"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.legend.current,(M,Y)=>(e.openBlock(),e.createBlock(c,{key:Y,cols:"12",class:"d-flex flex-row justify-center align-center py-1 px-0 ma-0"},{default:e.withCtx(()=>[e.createElementVNode("div",cn,[e.createElementVNode("div",mn,[e.createElementVNode("i",{class:"iconfont icon-a-direction-arrow text-label",style:e.normalizeStyle({fontSize:40*M.size+"px"})},null,4)]),e.createElementVNode("div",dn,e.toDisplayString(M.label),1)])]),_:2},1024))),128))]),_:1})]),_:1,__:[13]})]),_:1},8,["style"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["available-layers transition flex-center",i.toggle?"right-bar":""]),style:e.normalizeStyle(l.listStyle)},[e.createElementVNode("div",hn,[e.createElementVNode("div",pn,[e.createElementVNode("div",gn,e.toDisplayString(o.$t("weather.weather")),1),e.createVNode(w,{modelValue:i.autoActive,"onUpdate:modelValue":t[1]||(t[1]=M=>i.autoActive=M),class:"small-switch",color:"primary","base-color":"disabled",inset:"","hide-details":""},null,8,["modelValue"])]),e.createVNode(s,{icon:"",density:"compact",variant:"plain",class:"mr-n2",onClick:l.handleMenuToggle},{default:e.withCtx(()=>t[14]||(t[14]=[e.createElementVNode("i",{class:"iconfont icon-close text-label text-h4"},null,-1)])),_:1,__:[14]},8,["onClick"])]),a.simple?(e.openBlock(),e.createElementBlock("div",un,[e.createElementVNode("div",null,e.toDisplayString(o.$t("weather.forecastModel")),1),e.createVNode(z,{modelValue:i.currentModel,"onUpdate:modelValue":t[2]||(t[2]=M=>i.currentModel=M),rounded:"",height:"30",density:"compact",group:""},{default:e.withCtx(()=>[e.createVNode(s,{density:"compact",height:"30",value:"GFS",class:"text-none btn-bg-2 px-1 text-body-1",color:i.currentModel==="GFS"?"primary":"","base-color":""},{default:e.withCtx(()=>t[15]||(t[15]=[e.createTextVNode("NOAA",-1)])),_:1,__:[15]},8,["color"]),e.createVNode(s,{density:"compact",height:"30",class:"text-none btn-bg-2 px-1 text-body-1",color:i.currentModel==="ECMWF"?"primary":"","base-color":"",value:"ECMWF"},{default:e.withCtx(()=>t[16]||(t[16]=[e.createTextVNode("ECMWF",-1)])),_:1,__:[16]},8,["color"])]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["list-box scroll pl-4 pr-2 overflow-y-auto",i.autoActive?"":"cursor-not-allowed"])},[e.createVNode(f,{class:"block-bg mx-auto mb-3",elevation:"0"},{default:e.withCtx(()=>[e.createVNode(p,{class:"border-b-thin"},{default:e.withCtx(()=>[e.createVNode(x,{class:"text-subtitle-1 font-weight-medium",style:{"font-size":"16px !important"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.overlays")),1)]),_:1})]),_:1}),e.createVNode(d,{class:"py-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.tagLayers.filter(M=>M.overlays),M=>(e.openBlock(),e.createBlock(S,{key:M.key,modelValue:i.checkList,"onUpdate:modelValue":t[3]||(t[3]=Y=>i.checkList=Y),value:M.key,label:o.$t(`weather.${M.locale}`),disabled:!i.autoActive,color:"primary",density:"compact",style:{height:"36px"},class:"flex-1-0-100 text-body-2","hide-details":""},null,8,["modelValue","value","label","disabled"]))),128))]),_:1})]),_:1}),e.createVNode(f,{class:"block-bg mx-auto mb-3",elevation:"0"},{default:e.withCtx(()=>[e.createVNode(p,{class:"border-b-thin"},{default:e.withCtx(()=>[e.createVNode(x,{class:"text-subtitle-1 font-weight-medium",style:{"font-size":"16px !important"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.renders")),1)]),_:1})]),_:1}),e.createVNode(d,{class:"py-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.tagLayers.filter(M=>!M.overlays),M=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:M.key},[e.createVNode(L,{modelValue:i.renderKey,"onUpdate:modelValue":t[4]||(t[4]=Y=>i.renderKey=Y),label:o.$t(`weather.${M.locale}`),value:M.key,disabled:!i.autoActive,color:"primary",density:"compact",style:{height:"36px"},class:"text-body-2 py-1","hide-details":"",onClick:Y=>i.renderKey=i.renderKey===M.key?"":M.key},null,8,["modelValue","label","value","disabled","onClick"]),i.renderKey==="wind-particle"&&M.key==="wind-particle"?(e.openBlock(),e.createElementBlock("div",fn,[e.createElementVNode("span",null,e.toDisplayString(o.$t("weather.particleAnimatiom")),1),e.createVNode(w,{modelValue:i.showWindParticle,"onUpdate:modelValue":t[5]||(t[5]=Y=>i.showWindParticle=Y),label:"",class:"small-switch",color:"primary","base-color":"disabled",density:"compact",inset:"",style:{"font-size":"14px"},"hide-details":""},null,8,["modelValue"])])):e.createCommentVNode("",!0),i.renderKey==="current-particle"&&M.key==="current-particle"?(e.openBlock(),e.createElementBlock("div",yn,[e.createElementVNode("span",null,e.toDisplayString(o.$t("weather.particleAnimatiom")),1),e.createVNode(w,{modelValue:i.showCurrentParticle,"onUpdate:modelValue":t[6]||(t[6]=Y=>i.showCurrentParticle=Y),label:"",class:"small-switch",color:"primary","base-color":"disabled",inset:"",density:"compact",height:"20","hide-details":""},null,8,["modelValue"])])):e.createCommentVNode("",!0),i.renderKey==="wave-group"&&M.key==="wave-group"?(e.openBlock(),e.createBlock(z,{key:2,modelValue:i.waveToggleValue,"onUpdate:modelValue":t[7]||(t[7]=Y=>i.waveToggleValue=Y),class:"w-100 pl-7 rounded",rounded:"0",height:"30",density:"compact",group:"",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createVNode(s,{density:"compact",height:"30",value:"sig-wave",class:"w-50 text-none px-2 text-body-1",color:i.waveToggleValue==="sig-wave"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.significant")),1)]),_:1},8,["color","disabled"]),e.createVNode(s,{density:"compact",height:"30",class:"w-50 text-none px-2 text-body-1",color:i.waveToggleValue==="swell"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive,value:"swell"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.swell")),1)]),_:1},8,["color","disabled"])]),_:1},8,["modelValue","disabled"])):e.createCommentVNode("",!0),i.renderKey==="ice-forecast"&&M.key==="ice-forecast"?(e.openBlock(),e.createBlock(z,{key:3,modelValue:i.iceToggleValue,"onUpdate:modelValue":t[8]||(t[8]=Y=>i.iceToggleValue=Y),class:"w-100 pl-7 rounded",rounded:"0",height:"30",density:"compact",group:"",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createVNode(s,{density:"compact",height:"30",value:"ice-cover",class:"w-50 text-none px-2 text-body-1",color:i.iceToggleValue==="ice-cover"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.coverage")),1)]),_:1},8,["color","disabled"]),e.createVNode(s,{density:"compact",height:"30",class:"w-50 text-none px-2 text-body-1",color:i.iceToggleValue==="ice-thickness"?"primary":"","base-color":"grey-lighten-1",disabled:!i.autoActive,value:"ice-thickness"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.thickness")),1)]),_:1},8,["color","disabled"])]),_:1},8,["modelValue","disabled"])):e.createCommentVNode("",!0)],64))),128))]),_:1})]),_:1}),e.createVNode(f,{class:"block-bg mx-auto mb-3",elevation:"0"},{default:e.withCtx(()=>[e.createVNode(p,{class:"border-b-thin"},{default:e.withCtx(()=>[e.createVNode(x,{class:"text-subtitle-1 font-weight-medium",style:{"font-size":"16px !important"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$t("weather.forecastModel")),1)]),_:1})]),_:1}),e.createVNode(d,{class:""},{default:e.withCtx(()=>{var M,Y,Pe,ke,se,xe,I,ne,Z,X,ve,Se,Ne,N,me,ze,Le,Ce,D,Te,R,Ee,Me,Ve,ge,Oe,je,Fe,He,Ge,We,Ue,Ye,Ze,qe,Xe,Ke,Je,Qe,$e,et,tt,ot,at,it,rt,lt,st,nt,ct,mt,dt,ht,pt,gt,ut,ft,yt,bt,wt,xt,_t,kt,zt,vt,Lt,Ct,Pt,St,Nt,Tt,Dt,Et,Mt,Vt,Bt,It,Rt,At,Ot,jt,Ft,Ht,Gt,Wt,Ut,Yt,Zt,qt,Xt,Kt,Jt,Qt,eo,to,oo,ao,io,ro,lo,so,no,co,mo,ho;return[e.createElementVNode("div",bn,e.toDisplayString(o.$t("weather.atmospheric")),1),e.createElementVNode("div",wn,e.toDisplayString((Pe=(Y=(M=i.models)==null?void 0:M.weather)==null?void 0:Y.NOAA)==null?void 0:Pe.source)+" "+e.toDisplayString((xe=(se=(ke=i.models)==null?void 0:ke.weather)==null?void 0:se.NOAA)==null?void 0:xe.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((X=(Z=(ne=(I=i.models)==null?void 0:I.weather)==null?void 0:ne.NOAA)==null?void 0:Z.meta)==null?void 0:X.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",xn,e.toDisplayString(o.$t("weather.source"))+": NOAA",1),e.createElementVNode("div",_n,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((N=(Ne=(Se=(ve=i.models)==null?void 0:ve.weather)==null?void 0:Se.NOAA)==null?void 0:Ne.meta)==null?void 0:N.availabilityTime)),1),e.createElementVNode("div",kn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((Ce=(Le=(ze=(me=i.models)==null?void 0:me.weather)==null?void 0:ze.NOAA)==null?void 0:Le.meta)==null?void 0:Ce.initialisationTime)),1),e.createElementVNode("div",zn,e.toDisplayString((R=(Te=(D=i.models)==null?void 0:D.weather)==null?void 0:Te.ECMWF)==null?void 0:R.source)+" "+e.toDisplayString((Ve=(Me=(Ee=i.models)==null?void 0:Ee.weather)==null?void 0:Me.ECMWF)==null?void 0:Ve.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((Fe=(je=(Oe=(ge=i.models)==null?void 0:ge.weather)==null?void 0:Oe.ECMWF)==null?void 0:je.meta)==null?void 0:Fe.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",vn,e.toDisplayString(o.$t("weather.source"))+": ECMWF",1),e.createElementVNode("div",Ln,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((Ue=(We=(Ge=(He=i.models)==null?void 0:He.weather)==null?void 0:Ge.ECMWF)==null?void 0:We.meta)==null?void 0:Ue.availabilityTime)),1),e.createElementVNode("div",Cn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((Xe=(qe=(Ze=(Ye=i.models)==null?void 0:Ye.weather)==null?void 0:Ze.ECMWF)==null?void 0:qe.meta)==null?void 0:Xe.initialisationTime)),1),e.createVNode(g),e.createElementVNode("div",Pn,e.toDisplayString(o.$t("weather.wave")),1),e.createElementVNode("div",Sn,e.toDisplayString(($e=(Qe=(Je=(Ke=i.models)==null?void 0:Ke.marine)==null?void 0:Je.wave)==null?void 0:Qe.NOAA)==null?void 0:$e.source)+" "+e.toDisplayString((at=(ot=(tt=(et=i.models)==null?void 0:et.marine)==null?void 0:tt.wave)==null?void 0:ot.NOAA)==null?void 0:at.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((nt=(st=(lt=(rt=(it=i.models)==null?void 0:it.marine)==null?void 0:rt.wave)==null?void 0:lt.NOAA)==null?void 0:st.meta)==null?void 0:nt.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",Nn,e.toDisplayString(o.$t("weather.source"))+": NOAA",1),e.createElementVNode("div",Tn,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((pt=(ht=(dt=(mt=(ct=i.models)==null?void 0:ct.marine)==null?void 0:mt.wave)==null?void 0:dt.NOAA)==null?void 0:ht.meta)==null?void 0:pt.availabilityTime)),1),e.createElementVNode("div",Dn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((bt=(yt=(ft=(ut=(gt=i.models)==null?void 0:gt.marine)==null?void 0:ut.wave)==null?void 0:ft.NOAA)==null?void 0:yt.meta)==null?void 0:bt.initialisationTime)),1),e.createElementVNode("div",En,e.toDisplayString((kt=(_t=(xt=(wt=i.models)==null?void 0:wt.marine)==null?void 0:xt.wave)==null?void 0:_t.ECMWF)==null?void 0:kt.source)+" "+e.toDisplayString((Ct=(Lt=(vt=(zt=i.models)==null?void 0:zt.marine)==null?void 0:vt.wave)==null?void 0:Lt.ECMWF)==null?void 0:Ct.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((Dt=(Tt=(Nt=(St=(Pt=i.models)==null?void 0:Pt.marine)==null?void 0:St.wave)==null?void 0:Nt.ECMWF)==null?void 0:Tt.meta)==null?void 0:Dt.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",Mn,e.toDisplayString(o.$t("weather.source"))+": ECMWF",1),e.createElementVNode("div",Vn,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((It=(Bt=(Vt=(Mt=(Et=i.models)==null?void 0:Et.marine)==null?void 0:Mt.wave)==null?void 0:Vt.ECMWF)==null?void 0:Bt.meta)==null?void 0:It.availabilityTime)),1),e.createElementVNode("div",Bn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((Ft=(jt=(Ot=(At=(Rt=i.models)==null?void 0:Rt.marine)==null?void 0:At.wave)==null?void 0:Ot.ECMWF)==null?void 0:jt.meta)==null?void 0:Ft.initialisationTime)),1),e.createVNode(g),e.createElementVNode("div",In,e.toDisplayString(o.$t("weather.currents")),1),e.createElementVNode("div",Rn,e.toDisplayString((Ut=(Wt=(Gt=(Ht=i.models)==null?void 0:Ht.marine)==null?void 0:Gt.current)==null?void 0:Wt.ECMWF)==null?void 0:Ut.source)+" "+e.toDisplayString((Xt=(qt=(Zt=(Yt=i.models)==null?void 0:Yt.marine)==null?void 0:Zt.current)==null?void 0:qt.ECMWF)==null?void 0:Xt.spatialResolution)+e.toDisplayString(o.$t("units.km"))+" "+e.toDisplayString((to=(eo=(Qt=(Jt=(Kt=i.models)==null?void 0:Kt.marine)==null?void 0:Jt.current)==null?void 0:Qt.ECMWF)==null?void 0:eo.meta)==null?void 0:to.days)+e.toDisplayString(o.$t("units.days")),1),e.createElementVNode("div",An,e.toDisplayString(o.$t("weather.source"))+": ECMWF",1),e.createElementVNode("div",On,e.toDisplayString(o.$t("weather.lastUpdate"))+": "+e.toDisplayString(l.computeDateUpdate((lo=(ro=(io=(ao=(oo=i.models)==null?void 0:oo.marine)==null?void 0:ao.current)==null?void 0:io.ECMWF)==null?void 0:ro.meta)==null?void 0:lo.availabilityTime)),1),e.createElementVNode("div",jn,e.toDisplayString(o.$t("weather.referenceTime"))+": "+e.toDisplayString(l.computeDateZ((ho=(mo=(co=(no=(so=i.models)==null?void 0:so.marine)==null?void 0:no.current)==null?void 0:co.ECMWF)==null?void 0:mo.meta)==null?void 0:ho.initialisationTime)),1)]}),_:1})]),_:1})],2)],6),a.map?(e.openBlock(),e.createBlock(_,e.mergeProps({key:1,ref:"windBarb",map:a.map,"map-feather":a.mapFeather,"before-layer":"empty-layer-3",wind:(J=i.weatherLayers)==null?void 0:J.wind,"menu-toggle":a.menuToggle},o.$attrs),null,16,["map","map-feather","wind","menu-toggle"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(b,e.mergeProps({key:2,map:a.map,"before-layer":"empty-layer-2","sig-wave-height":(q=i.weatherLayers)==null?void 0:q["sig-wave-height"],"menu-toggle":a.menuToggle,"active-weather-layers":i.activeWeatherLayers},o.$attrs),null,16,["map","sig-wave-height","menu-toggle","active-weather-layers"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(u,e.mergeProps({key:3,map:a.map,"map-feather":a.mapFeather,"before-layer":"empty-layer-2",current:(te=i.weatherLayers)==null?void 0:te.current,"menu-toggle":a.menuToggle},o.$attrs),null,16,["map","map-feather","current","menu-toggle"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(k,e.mergeProps({key:4,map:a.map,"before-layer":"empty-layer-2",prmsl:(re=i.weatherLayers)==null?void 0:re.prmsl,"menu-toggle":a.menuToggle,"active-weather-layers":i.activeWeatherLayers},o.$attrs,{theme:a.theme}),null,16,["map","prmsl","menu-toggle","active-weather-layers","theme"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(y,e.mergeProps({key:5,viewport:i.viewport,factor:(oe=i.weatherLayers)==null?void 0:oe["wind-particle"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(C,e.mergeProps({key:6,viewport:i.viewport,factor:(ae=i.weatherLayers)==null?void 0:ae["current-particle"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(E,e.mergeProps({key:7,viewport:i.viewport,factor:(P=i.weatherLayers)==null?void 0:P["sig-wave"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(B,e.mergeProps({key:8,map:a.map,viewport:i.viewport,factor:(U=i.weatherLayers)==null?void 0:U.swell,"menu-toggle":a.menuToggle,"active-weather-layers":i.activeWeatherLayers,simple:a.simple},o.$attrs),null,16,["map","viewport","factor","menu-toggle","active-weather-layers","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(A,e.mergeProps({key:9,viewport:i.viewport,factor:(ce=i.weatherLayers)==null?void 0:ce["ice-edge"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(O,e.mergeProps({key:10,viewport:i.viewport,factor:(he=i.weatherLayers)==null?void 0:he["ice-cover"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(G,e.mergeProps({key:11,viewport:i.viewport,factor:(fe=i.weatherLayers)==null?void 0:fe["ice-thickness"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(W,e.mergeProps({key:12,viewport:i.viewport,factor:(ye=i.weatherLayers)==null?void 0:ye.precip3h,"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(F,e.mergeProps({key:13,viewport:i.viewport,factor:(pe=i.weatherLayers)==null?void 0:pe.visibility,"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock($,e.mergeProps({key:14,viewport:i.viewport,factor:(we=i.weatherLayers)==null?void 0:we["water-temp"],"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0),a.map?(e.openBlock(),e.createBlock(ee,e.mergeProps({key:15,viewport:i.viewport,factor:(be=i.weatherLayers)==null?void 0:be.temp,"menu-toggle":a.menuToggle,simple:a.simple},o.$attrs),null,16,["viewport","factor","menu-toggle","simple"])):e.createCommentVNode("",!0)])}const Hn=j(en,[["render",Fn]]),Ie=[{rank:0,name:"Best Match",alias:"BEST MATCH",model:"best_match",models:["best_match"]},{rank:1,name:"GFS",alias:"GFS",model:"gfs_seamless",provider:"NOAA",country:"United States",resolution:25,tips:"3-25km",length:16,frequency:1,models:["gfs_seamless"],categories:"ncep_gfs013,ncep_gfs025,ncep_gfs_graphcast025,ncep_hrrr_conus,ncep_nbm_conus",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:2,name:"ECMWF",alias:"ECMWF",model:"ecmwf_ifs025",provider:"ECMWF",country:"European Union",resolution:25,tips:"25km",length:15,frequency:6,models:["ecmwf_ifs025","ecmwf_aifs025_single"],categories:"ecmwf_ifs025,ecmwf_aifs025_single",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:3,disabled:!0,name:"ICON",alias:"ECMWF",model:"icon_seamless",provider:"Deutscher Wetterdienst (DWD)",country:"Germany",resolution:13,tips:"2-13km",length:7.5,frequency:3,models:["icon_seamless","icon_global","icon_eu","icon_d2"],categories:"dwd_icon,dwd_icon_eps,dwd_icon_d2,dwd_icon_d2_eps,dwd_icon_eu,dwd_icon_eu_eps",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:4,name:"ARPEGE",disabled:!0,alias:"ECMWF",model:"arpege_seamless",provider:"Météo-France",country:"France",resolution:25,tips:"1-25km",length:4,frequency:1,models:["arpege_seamless","arpege_world","arpege_europe"],categories:"meteofrance_arpege_europe,meteofrance_arpege_europe_probabilities,meteofrance_arpege_world025",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:5,name:"UKMO",disabled:!0,alias:"ECMWF",model:"ukmo_seamless",provider:"UK Met Office",country:"United Kingdom",resolution:10,tips:"2-10km",length:7,frequency:1,models:["ukmo_seamless","ukmo_global_deterministic_10km","ukmo_uk_deterministic_2km"],categories:"ukmo_global_deterministic_10km,ukmo_uk_deterministic_2km",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:6,name:"JMA",disabled:!0,alias:"GFS",model:"jma_seamless",provider:"JMA",country:"Japan",resolution:55,tips:"5-55km",length:11,frequency:3,models:["jma_seamless","jma_msm","jma_gsm"],categories:"jma_gsm,jma_msm",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:7,name:"GEM",disabled:!0,alias:"GFS",model:"gem_seamless",provider:"Canadian Weather Service",country:"Canada",resolution:2.5,tips:"2.5km",length:10,frequency:6,models:["gem_seamless","gem_global","gem_regional"],categories:"cmc_gem_gdps,cmc_gem_hrdps,cmc_gem_rdps",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:8,name:"GRAPES",disabled:!0,alias:"GFS",model:"cma_grapes_global",provider:"China Meteorological Administration (CMA)",country:"China",resolution:15,tips:"15km",length:10,frequency:6,models:["cma_grapes_global"],categories:"cma_grapes_global",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"},{rank:9,name:"ACCESS-G",disabled:!0,alias:"GFS",model:"bom_access_global",provider:"Australian Bureau of Meteorology (BOM)",country:"Australia",resolution:15,tips:"15km",length:10,frequency:6,models:["bom_access_global"],categories:"bom_access_global",variables:"temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall_water_equivalent,snowfall,frozen_precipitation_percent,pressure_msl,cloud_cover,visibility,wind_speed_10m,wind_u_component_10m,wind_v_component_10m,wind_direction_10m,wind_gusts_10m,cape,lifted_index,weather_code"}],Re=[{rank:0,name:"Best Match",alias:"BEST MATCH",model:"best_match",models:["best_match"]},{rank:1,name:"MFWAM",alias:"ECMWF",model:"meteofrance_wave",provider:"MeteoFrance",country:"France",resolution:8,tips:"8km",length:10,frequency:12,models:["meteofrance_wave"],categories:"meteofrance_wave",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:2,disabled:!0,name:"SMOC",alias:"ECMWF",model:"meteofrance_currents",provider:"MeteoFrance",country:"France",resolution:8,tips:"8km",length:10,frequency:24,models:["meteofrance_currents"],categories:"meteofrance_currents, meteofrance_sea_surface_temperature",variables:"ocean_u_current,ocean_v_current,invert_barometer_height,sea_level_height_msl,sea_surface_temperature"},{rank:3,disabled:!0,name:"EWAM",alias:"ECMWF",model:"ewam",provider:"DWD",country:"Germany",resolution:5,tips:"5km",length:8,frequency:2,models:["ewam"],categories:"dwd_ewam",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:4,disabled:!0,name:"GWAM",alias:"ECMWF",model:"gwam",provider:"DWD",country:"Germany",resolution:5,tips:"5km",length:4,frequency:2,models:["gwam"],categories:"dwd_gwam",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:5,disabled:!0,name:"ECWAM",alias:"ECMWF",model:"ecmwf_wam025",provider:"ECMWF",country:"Europe",resolution:25,tips:"25km",length:10,frequency:6,models:["ecmwf_wam025"],categories:"ecmwf_wam025",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:6,name:"GFSWave",alias:"GFS",model:"ncep_gfswave025",provider:"NCEP",country:"USA",resolution:25,tips:"25km",length:10,frequency:6,models:["ncep_gfswave025","ncep_gfswave016"],categories:"ncep_gfswave025,ncep_gfswave016",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"},{rank:7,disabled:!0,name:"ERA5-Ocean",alias:"ECMWF",model:"era5_ocean",provider:"Copernicus",country:"Europe",resolution:50,tips:"50km",length:-5,frequency:1,models:["era5_ocean"],categories:"copernicus_era5_ocean",variables:"swell_wave_direction,swell_wave_height,swell_wave_period,swell_wave_peak_period,wave_direction,wave_height,wave_period,wind_wave_direction,wind_wave_height,wind_wave_period,wind_wave_peak_period"}];class _o{static standardWeatherModels(){return Ie.filter(t=>!t.disabled&&t.alias)}static standardMarineModels(){return Re.filter(t=>!t.disabled&&t.alias)}static autoPickLayerModel(t,a="copernicus"){return a=a||"copernicus",a=a==null?void 0:a.toLowerCase(),a=["gfs","ecmwf","copernicus"].includes(a)?a:"copernicus",t=t==null?void 0:t.toLowerCase(),t==="gfs"?"gfs":["ec","ecmwf"].includes(t)?"ecmwf":["copernicus","cmems"].includes(t)?"copernicus":a}static autoPickPeerModel(t,a,r="copernicus"){if(a=this.autoPickLayerModel(a,r),ja.LayerHelper.WEATHER_LAYERS.reduce((i,l)=>l.atmos?i+l.weight:i,0)&t.weight){if(a==="copernicus")return"ecmwf"}else if(a==="ecmwf")return"copernicus";return a}static autoPickMeteoModel(t="best_match"){var a,r;t=t==null?void 0:t.toLowerCase(),t=t==="ec"?"ecmwf":t;const i=t.toLowerCase().split(","),l=[],s=[];for(const n of i){let c=Ie.find(d=>{var g,f,w;return((g=d.models)==null?void 0:g.includes(n))||((f=d.alias)==null?void 0:f.toLowerCase())===n||((w=d.name)==null?void 0:w.toLowerCase())===n}),h=Re.find(d=>{var g,f,w;return((g=d.models)==null?void 0:g.includes(n))||((f=d.alias)==null?void 0:f.toLowerCase())===n||((w=d.name)==null?void 0:w.toLowerCase())===n});c=c||Ie.find(d=>{var g,f;return((g=d.alias)==null?void 0:g.toLowerCase())===((f=h==null?void 0:h.alias)==null?void 0:f.toLowerCase())}),h=h||Re.find(d=>{var g,f;return((g=d.alias)==null?void 0:g.toLowerCase())===((f=c==null?void 0:c.alias)==null?void 0:f.toLowerCase())}),c=c||Ie[0],h=h||Re[0],l.push((a=c.models)!=null&&a.includes(n)?n:c.model),s.push((r=h.models)!=null&&r.includes(n)?n:h.model)}return{weatherModels:l.join(","),marineModels:s.join(",")}}static autoPickSubCategories(t){t=t.toUpperCase();const a=Ie.filter(l=>l.alias===t),r=Re.filter(l=>l.alias===t),i=[];return a.forEach(l=>{l.categories&&i.push(...l.categories.split(","))}),r.forEach(l=>{l.categories&&i.push(...l.categories.split(","))}),i}static pickHourly(t,a){var r,i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y,C,E,B,A,O,G,W,F,$,ee,J,q,te,re,oe,ae,P,U,ce,he,fe,ye,pe,we,be,M,Y,Pe,ke,se,xe;const I=typeof a=="string"?v(a):a,ne=t==null?void 0:t.weather,Z=t==null?void 0:t.marine,X=v((i=(r=ne==null?void 0:ne[0])==null?void 0:r.hourly)==null?void 0:i.date).utc(),ve=X.clone().add((n=(s=(l=ne==null?void 0:ne[0])==null?void 0:l.hourly)==null?void 0:s.time)==null?void 0:n.at(0),"h"),Se=X.clone().add((d=(h=(c=ne==null?void 0:ne[0])==null?void 0:c.hourly)==null?void 0:h.time)==null?void 0:d.at(-1),"h"),Ne=[];if(I.isBetween(ve,Se,"millisecond","[]")){const N=I.utc().diff(ve,"h",!1);let me,ze;if(ne){let Le=0,Ce=0,D=0;for(const Te of ne){const R=Te==null?void 0:Te.hourly;for(let ge=N-(N-1)%3;ge<=N;ge++)Le+=(g=R==null?void 0:R.precipitation)==null?void 0:g.at(ge);for(let ge=N-(N-1)%6;ge<=N;ge++)Ce+=(f=R==null?void 0:R.precipitation)==null?void 0:f.at(ge);for(let ge=N-(N-1)%12;ge<=N;ge++)D+=(w=R==null?void 0:R.precipitation)==null?void 0:w.at(ge);me={temp:(z=R==null?void 0:R.temperature_2m)==null?void 0:z.at(N),apparentTemp:(x=R==null?void 0:R.apparent_temperature)==null?void 0:x.at(N),rh:(p=R==null?void 0:R.relative_humidity_2m)==null?void 0:p.at(N),dp:(S=R==null?void 0:R.dew_point_2m)==null?void 0:S.at(N),precip:{probability:(L=R==null?void 0:R.precipitation_probability)==null?void 0:L.at(N),sum:(_=R==null?void 0:R.precipitation)==null?void 0:_.at(N),sum1Hours:(b=R==null?void 0:R.precipitation)==null?void 0:b.at(N),sum3Hours:Math.round(Le*100)/100,sum6Hours:Math.round(Ce*100)/100,sum12Hours:Math.round(D*100)/100},pmsl:(u=R==null?void 0:R.pressure_msl)==null?void 0:u.at(N),psurf:(k=R==null?void 0:R.surface_pressure)==null?void 0:k.at(N),code:(y=R==null?void 0:R.weather_code)==null?void 0:y.at(N),visibility:this.m2nm((C=R==null?void 0:R.visibility)==null?void 0:C.at(N)),wind:{speed:(E=R==null?void 0:R.wind_speed_10m)==null?void 0:E.at(N),kts:(B=R==null?void 0:R.wind_speed_10m)==null?void 0:B.at(N),degree:(A=R==null?void 0:R.wind_direction_10m)==null?void 0:A.at(N),bearing:((O=R==null?void 0:R.wind_direction_10m)==null?void 0:O.at(N))!==null?(((G=R==null?void 0:R.wind_direction_10m)==null?void 0:G.at(N))+180)%360:null,gusts:(W=R==null?void 0:R.wind_gusts_10m)==null?void 0:W.at(N)},isDay:(F=R==null?void 0:R.is_day)==null?void 0:F.at(N)};const{name:Ee,url:Me,bg:Ve}=this.parseWeatherCode(me.code,me.isDay);me.name=Ee,me.url=Me,me.bg=Ve,me.wind.scale=this.beaufort(this.kts2ms(me.wind.kts)),me.wind.direction=this.degree2Direction(me.wind.degree),Ne.push({utc:ve.add(N,"h").format(),model:Te.model,weather:{...me}})}}if(Z){let Le=0;for(const Ce of Z){const D=Ce==null?void 0:Ce.hourly;ze={wave:{sig:{height:($=D==null?void 0:D.wave_height)==null?void 0:$.at(N),degree:(ee=D==null?void 0:D.wave_direction)==null?void 0:ee.at(N),bearing:((J=D==null?void 0:D.wave_direction)==null?void 0:J.at(N))!==null?(((q=D==null?void 0:D.wave_direction)==null?void 0:q.at(N))+180)%360:null,period:(te=D==null?void 0:D.wave_period)==null?void 0:te.at(N)},swell:{height:(re=D==null?void 0:D.swell_wave_height)==null?void 0:re.at(N),degree:(oe=D==null?void 0:D.swell_wave_direction)==null?void 0:oe.at(N),bearing:((ae=D==null?void 0:D.swell_wave_direction)==null?void 0:ae.at(N))!==null?(((P=D==null?void 0:D.swell_wave_direction)==null?void 0:P.at(N))+180)%360:null,period:(U=D==null?void 0:D.swell_wave_period)==null?void 0:U.at(N),peakPeriod:(ce=D==null?void 0:D.swell_wave_peak_period)==null?void 0:ce.at(N)},wd:{height:(he=D==null?void 0:D.wind_wave_height)==null?void 0:he.at(N),degree:(fe=D==null?void 0:D.wind_wave_direction)==null?void 0:fe.at(N),bearing:((ye=D==null?void 0:D.wind_wave_direction)==null?void 0:ye.at(N))!==null?(((pe=D==null?void 0:D.wind_wave_direction)==null?void 0:pe.at(N))+180)%360:null,period:(we=D==null?void 0:D.wind_wave_period)==null?void 0:we.at(N),peakPeriod:(be=D==null?void 0:D.wind_wave_peak_period)==null?void 0:be.at(N)}},current:{speed:(M=D==null?void 0:D.ocean_current_velocity)==null?void 0:M.at(N),kts:(Y=D==null?void 0:D.ocean_current_velocity)==null?void 0:Y.at(N),degree:(Pe=D==null?void 0:D.ocean_current_direction)==null?void 0:Pe.at(N),bearing:((ke=D==null?void 0:D.ocean_current_direction)==null?void 0:ke.at(N))??null},sst:(se=D==null?void 0:D.sea_surface_temperature)==null?void 0:se.at(N),height:(xe=D==null?void 0:D.sea_level_height_msl)==null?void 0:xe.at(N)},ze.wave=this.parseWave(ze.wave,me==null?void 0:me.wind),ze.current.direction=this.degree2Direction(ze.current.degree),Object.assign(Ne[Le],ze),Le++}}}return Ne}static toLegacy(t){var a,r,i,l,s,n,c,h,d,g;return{wind:(a=t==null?void 0:t.weather)==null?void 0:a.wind,visibility:(r=t==null?void 0:t.weather)==null?void 0:r.visibility,temp:(i=t==null?void 0:t.weather)==null?void 0:i.temp,prmsl:(l=t==null?void 0:t.weather)==null?void 0:l.pmsl,gusts:{kts:(n=(s=t==null?void 0:t.weather)==null?void 0:s.wind)==null?void 0:n.gusts},precip:(c=t==null?void 0:t.weather)==null?void 0:c.precip,code:(h=t==null?void 0:t.weather)==null?void 0:h.code,name:(d=t==null?void 0:t.weather)==null?void 0:d.name,url:(g=t==null?void 0:t.weather)==null?void 0:g.url,wave:t==null?void 0:t.wave,current:t==null?void 0:t.current,sst:t==null?void 0:t.sst,height:t==null?void 0:t.height,utc:t==null?void 0:t.utc,source:t==null?void 0:t.model}}static pickDaily(t,a){var r,i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y,C,E,B,A,O,G,W,F,$,ee,J,q,te,re,oe,ae,P,U,ce,he,fe,ye,pe;const we=typeof a=="string"?v(a):a,be=t==null?void 0:t.weather,M=t==null?void 0:t.marine,Y=v((l=(i=(r=be==null?void 0:be[0])==null?void 0:r.daily)==null?void 0:i.time)==null?void 0:l.at(0)),Pe=v((c=(n=(s=be==null?void 0:be[0])==null?void 0:s.daily)==null?void 0:n.time)==null?void 0:c.at(-1)),ke=[];if(we.isBetween(Y,Pe,"millisecond","[]")){let se,xe;const I=we.diff(Y,"d",!1);if(be)for(const ne of be){const Z=ne.daily;se={code:(h=Z.weather_code)==null?void 0:h.at(I),temp:{max:(d=Z.temperature_2m_max)==null?void 0:d.at(I),min:(g=Z.temperature_2m_min)==null?void 0:g.at(I),mean:(f=Z.temperature_2m_mean)==null?void 0:f.at(I)},apparentTemp:{max:(w=Z.apparent_temperature_max)==null?void 0:w.at(I),min:(z=Z.apparent_temperature_min)==null?void 0:z.at(I)},precip:{sum:(x=Z.precipitation_sum)==null?void 0:x.at(I),rainSum:(p=Z.rain_sum)==null?void 0:p.at(I),snowfallSum:(S=Z.snowfall_sum)==null?void 0:S.at(I),showersSum:(L=Z.showers_sum)==null?void 0:L.at(I),hours:(_=Z.precipitation_hours)==null?void 0:_.at(I),probability:(b=Z.precipitation_probability_max)==null?void 0:b.at(I)},rh:{max:(u=Z.relative_humidity_2m_max)==null?void 0:u.at(I),min:(k=Z.relative_humidity_2m_min)==null?void 0:k.at(I),mean:(y=Z.relative_humidity_2m_mean)==null?void 0:y.at(I)},wind:{speed:(C=Z.wind_speed_10m_max)==null?void 0:C.at(I),kts:(E=Z.wind_speed_10m_max)==null?void 0:E.at(I),degree:(B=Z.wind_direction_10m_dominant)==null?void 0:B.at(I),gusts:(A=Z.wind_gusts_10m_max)==null?void 0:A.at(I),bearing:((O=Z.wind_direction_10m_dominant)==null?void 0:O.at(I))!==null?(((G=Z.wind_direction_10m_dominant)==null?void 0:G.at(I))+180)%360:null}};const{name:X,url:ve,bg:Se}=this.parseWeatherCode(se.code,!0);se.name=X,se.url=ve,se.bg=Se,se.wind.scale=this.beaufort(this.kts2ms(se.wind.kts)),se.wind.direction=this.degree2Direction(se.wind.degree),ke.push({utc:Y.add(I,"d").utc().format(),model:ne.model,weather:{...se}})}if(M){let ne=0;for(const Z of M){const X=Z.daily;xe={wave:{sig:{height:(W=X.wave_height_max)==null?void 0:W.at(I),degree:(F=X.wave_direction_dominant)==null?void 0:F.at(I),period:($=X.wave_period_max)==null?void 0:$.at(I),bearing:((ee=X.wave_direction_dominant)==null?void 0:ee.at(I))!==null?(((J=X.wave_direction_dominant)==null?void 0:J.at(I))+180)%360:null},swell:{height:(q=X.swell_wave_height_max)==null?void 0:q.at(I),degree:(te=X.swell_wave_direction_dominant)==null?void 0:te.at(I),period:(re=X.swell_wave_period_max)==null?void 0:re.at(I),peakPeriod:(oe=X.swell_wave_peak_period_max)==null?void 0:oe.at(I),bearing:((ae=X.swell_wave_direction_dominant)==null?void 0:ae.at(I))!==null?((P=X.swell_wave_direction_dominant)==null?void 0:P.at(I))%360:null},wd:{height:(U=X.wind_wave_height_max)==null?void 0:U.at(I),degree:(ce=X.wind_wave_direction_dominant)==null?void 0:ce.at(I),period:(he=X.wind_wave_period_max)==null?void 0:he.at(I),peakPeriod:(fe=X.wind_wave_peak_period_max)==null?void 0:fe.at(I),bearing:((ye=X.wind_wave_direction_dominant)==null?void 0:ye.at(I))!==null?(((pe=X.wind_wave_direction_dominant)==null?void 0:pe.at(I))+180)%360:null}}},xe.wave=this.parseWave(xe.wave,se==null?void 0:se.wind),Object.assign(ke[ne],xe),ne++}}}return ke}static parseWave(t,a){if(t.sig.direction=this.degree2Direction(t.sig.degree),t.swell.direction=this.degree2Direction(t.swell.degree),t.wd.direction=this.degree2Direction(t.wd.degree),t.sig.scale=this.douglas(t.sig.height),t.swell.scale=this.douglas(t.swell.height),t.wd.scale=this.douglas(t.wd.height),t.sig.height===0){const r=Math.sqrt(Math.pow(t.swell.height||0,2)+Math.pow(t.wd.height||0,2));t.sig.height=Math.round(r*100)/100}if(t.swell.height===0)if(t.sig.height>t.wd.height){const r=Math.sqrt(Math.abs(Math.pow(t.sig.height||0,2)-Math.pow(t.wd.height||0,2)));t.swell.height=Math.round(r*100)/100}else{const r=Math.round(.12*this.kts2ms((a==null?void 0:a.kts)||0)*100)/100,i=r>1?r/10:r>.5?r/5:r>.3?r/2:r;t.swell.height=Math.round(i*100)/100}if(t.wd.height===0||t.wd.height>t.sig.height)if(t.sig.height>t.swell.height){const r=Math.sqrt(Math.abs(Math.pow(t.sig.height||0,2)-Math.pow(t.swell.height||0,2))),i=.24*this.kts2ms((a==null?void 0:a.kts)||0);t.wd.height=Math.round(Math.min(r,i)*100)/100}else{const r=.24*this.kts2ms((a==null?void 0:a.kts)||0);t.wd.height=Math.round(r*100)/100}return t.swell.height>t.sig.height&&(t.swell.height=Math.round(t.sig.height*.76*100)/100),t.sig.period||(t.sig.period=Math.round(5*Math.sqrt(t.sig.height))),t.swell.period||(t.swell.period=Math.round(5*Math.sqrt(t.swell.height))),t.wd.period||(t.wd.period=Math.round(5*Math.sqrt(t.wd.height))),t}static parseWeatherCode(t,a){const r=this.weatherCode(t);return(a?r.day:r.night)||{}}static weatherCode(t){const a={code:t};switch(t){case 0:a.day={name:"Sunny",url:"https://osshz.idmwx.com/asset/weather/01d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"},a.night={name:"Clear",url:"https://osshz.idmwx.com/asset/weather/01n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"};break;case 1:a.day={name:"Mainly Sunny",url:"https://osshz.idmwx.com/asset/weather/01d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"},a.night={name:"Mainly Clear",url:"https://osshz.idmwx.com/asset/weather/01n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg1.png"};break;case 2:a.day={name:"Partly Cloudy",url:"https://osshz.idmwx.com/asset/weather/02d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg2.png"},a.night={name:"Partly Cloudy",url:"https://osshz.idmwx.com/asset/weather/02n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg2.png"};break;case 3:a.day={name:"Overcast",url:"https://osshz.idmwx.com/asset/weather/04d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg3.png"},a.night={name:"Overcast",url:"https://osshz.idmwx.com/asset/weather/04n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg3.png"};break;case 45:a.day={name:"Foggy",url:"https://osshz.idmwx.com/asset/weather/50d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"},a.night={name:"Foggy",url:"https://osshz.idmwx.com/asset/weather/50n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"};break;case 48:a.day={name:"Rime Fog",url:"https://osshz.idmwx.com/asset/weather/50d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"},a.night={name:"Rime Fog",url:"https://osshz.idmwx.com/asset/weather/50n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg4.png"};break;case 51:a.day={name:"Light Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 53:a.day={name:"Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 55:a.day={name:"Heavy Drizzle",url:"https://osshz.idmwx.com/asset/weather/15d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Heavy Drizzle",url:"https://osshz.idmwx.com/asset/weather/15n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 56:a.day={name:"Light Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 57:a.day={name:"Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/14d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Freezing Drizzle",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 61:a.day={name:"Light Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 63:a.day={name:"Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 65:a.day={name:"Heavy Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Heavy Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 66:a.day={name:"Light Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 67:a.day={name:"Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/16d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Freezing Rain",url:"https://osshz.idmwx.com/asset/weather/10n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 71:a.day={name:"Light Snow",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Light Snow",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 73:a.day={name:"Snow",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Snow",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 75:a.day={name:"Heavy Snow",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Heavy Snow",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 77:a.day={name:"Snow Grains",url:"https://osshz.idmwx.com/asset/weather/17d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Snow Grains",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 80:a.day={name:"Light Showers",url:"https://osshz.idmwx.com/asset/weather/09d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Showers",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 81:a.day={name:"Showers",url:"https://osshz.idmwx.com/asset/weather/09d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Showers",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 82:a.day={name:"Heavy Showers",url:"https://osshz.idmwx.com/asset/weather/09d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Heavy Showers",url:"https://osshz.idmwx.com/asset/weather/09n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 85:a.day={name:"Light Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Light Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 86:a.day={name:"Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"},a.night={name:"Snow Showers",url:"https://osshz.idmwx.com/asset/weather/13n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg6.png"};break;case 95:a.day={name:"Thunderstorm",url:"https://osshz.idmwx.com/asset/weather/11d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Thunderstorm",url:"https://osshz.idmwx.com/asset/weather/11n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 96:a.day={name:"Light Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Light Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break;case 99:a.day={name:"Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11d.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"},a.night={name:"Thunderstorms With Hail",url:"https://osshz.idmwx.com/asset/weather/11n.svg",bg:"https://osshz.idmwx.com/asset/weather/bg5.png"};break}return a}static kts2ms(t){return isNaN(t)||t===null?t:Math.round(t*1852/3600*1e4)/1e4}static kts2kmh(t){return isNaN(t)||t===null?t:t*1.852}static m2nm(t){return isNaN(t)||t===null?t:Math.round(t/1e3/1.852*1e4)/1e4}static kmh2kts(t){return isNaN(t)||t===null?t:this.ms2kts(t*1e3/3600)}static ms2kts(t){return isNaN(t)||t===null?t:Math.round(t*3600/1852*1e4)/1e4}static degree2Radian(t){if(isNaN(t)||t===null)return t;let a=t%360/360*2*Math.PI;return a=a<0?a+2*Math.PI:a,a}static degree2Direction(t){const a=this.degree2Radian(t);if(isNaN(a)||a===null)return null;let r="N/A";const i=Math.PI/16;return a<i?r="N":a>=i&&a<3*i?r="NNE":a>=3*i&&a<5*i?r="NE":a>=5*i&&a<7*i?r="ENE":a>=7*i&&a<9*i?r="E":a>=9*i&&a<11*i?r="ESE":a>=11*i&&a<13*i?r="SE":a>=13*i&&a<15*i?r="SSE":a>=15*i&&a<17*i?r="S":a>=17*i&&a<19*i?r="SSW":a>=19*i&&a<21*i?r="SW":a>=21*i&&a<23*i?r="WSW":a>=23*i&&a<25*i?r="W":a>=25*i&&a<27*i?r="WNW":a>=27*i&&a<29*i?r="NW":a>=29*i&&a<31*i?r="NNW":a>=31*i&&a<32*i&&(r="N"),r}static beaufort(t){let a=0;return isNaN(t)||(t=Math.round(t*10)/10,t<=.2?a=0:t<=1.5?a=1:t<=3.3?a=2:t<=5.4?a=3:t<=7.9?a=4:t<=10.7?a=5:t<=13.8?a=6:t<=17.1?a=7:t<=20.7?a=8:t<=22.4?a=9:t<=28.4?a=10:t<=32.6?a=11:t<=36.9?a=12:t<=41.4?a=13:t<=46.1?a=14:t<=50.9?a=15:t<=55.9?a=16:t<=61.2?a=17:t>61.2&&(a=18)),a}static douglas(t){let a="Calm";return isNaN(t)||t<=.1?a="Calm":t<=.5?a="Smooth":t<=1.25?a="Slight":t<=2.5?a="Moderate":t<=4?a="Rough":t<=6?a="VeryRough":t<=9?a="High":t<=14?a="VeryHigh":a="Precipitous",a}}const rh="",Gn={name:"IdmTropicals",props:{simple:{type:Boolean,default:!1},permission:{type:Number},locale:{type:String},map:{type:Object},top:{type:Number,default:60},paddingTop:{type:Number,default:48},menuToggle:{type:Object,default:{}},timeZone:{type:Number},token:{type:String},defaultMeteoToken:{type:String},gateway:{type:String,default:"aa"},assistGateway:{type:Array,default:[]},forecastModel:{type:String},realTime:{type:String},beforeLayer:{type:String}},emits:["tropical","tropicalCenterPoints","tropicalProbability","tropicalNotification"],setup(){return{Theme:le.useTheme()}},data(){return{right:10,toggle:!1,helper:Be.CompanyHelper,tropicals:void 0,tropicalCacheKey:"tropicalCacheGL4",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",showTropicalsInfo:!1,activeTropicals:void 0,activeTropicalsMarker:void 0,empty:V.featureCollection([]),showLegend:!1,showHoverPoint:!1,hoverPoint:void 0,hoverMarker:void 0}},computed:{hoverLayers(){return[this.forecastNameLayer,this.forecastLayer,this.historyLayer,this.pointCircleLayer,this.pointCircleLayer+"-border",this.historyPointCircleLayer,this.historyPointCircleLayer+"-border",this.historyPointCircleLayer+"-inner"]},clickLayers(){return[this.forecastNameLayer,this.historyLayer]},computeTime(){return(o,t)=>{if(o){const a=v(o).utcOffset(t),r=t<0?t:"+"+t;return`${a==null?void 0:a.format("MMM-DD/HHmm")} (UTC${r}) ${a==null?void 0:a.fromNow()} `}return"-"}},computeTzTime(){return(o,t,a="MM-DD HH:mm")=>{var r,i;if(o){const l=t||0,s=(i=(r=v(o))==null?void 0:r.utcOffset(l))==null?void 0:i.format(a),n=`(UTC ${l>=0?"+":""}${l})`;return s+" "+n}return"-"}},computeTimezone(){return this.timeZone<0?this.timeZone:"+"+this.timeZone},computeBF(){return function(o){const t=_o.kts2ms(o);return _o.beaufort(t)}},computeMovement(){return function(o){var t,a;return(a=(t=o==null?void 0:o.forecasts)==null?void 0:t.find(r=>!r.disabled))==null?void 0:a.movement}},computePosition(){return o=>!o||o.lng===null||o.lng===void 0||isNaN(o.lng)||o.lat===null||o.lat===void 0||isNaN(o.lat)?"-":T.LngLatHelper.lat2pretty(o==null?void 0:o.lat,2).pretty+" / "+T.LngLatHelper.lng2pretty(o==null?void 0:o.lng,2).pretty}},watch:{"menuToggle.v":{handler(){this.$nextTick(()=>{var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)})},immediate:!0},map:{handler(){this.map?(this.toggle=localStorage.getItem(this.tropicalCacheKey)==="true"||!1,localStorage.setItem(this.tropicalCacheKey,this.toggle),this.toggle&&this.fetchTropicals()):this.handleClear()}},showTropicalsInfo:{handler(){this.$emit("tropical",this.showTropicalsInfo)},immediate:!0},"tropicals.version":{handler(){this.handleRefresh()}},timeZone:{handler(o,t){o!==t&&this.handleRefresh()}},realTime:{handler(o){this.map&&o&&this.toggle&&this.handleRender()}},locale:{handler(o){this.map&&this.toggle&&this.handleRefresh()}}},mounted(){},methods:{handleMenuToggle(){var o,t,a;this.toggle=!this.toggle,localStorage.setItem(this.tropicalCacheKey,this.toggle),this.toggle?this.fetchTropicals():(this.handleClear(),(a=(t=(o=this.$parent)==null?void 0:o.$refs)==null?void 0:t.idmBottomBar)==null||a.handleToggle("tropical",!1))},async fetchTropicals(){var i,l,s;const o=new Date().valueOf();let t=0,a=0,r=(i=Be.LayerHelper.WEATHER_LAYERS.find(n=>n.key==="tropicals"))==null?void 0:i.weight;if(r>0){const n=this.assistGateway[Math.round(Math.random()*(this.assistGateway.length-1))],c=await Q.get(`${n}/api/arc/weather/layers2/links?l=${r}&v=${this.forecastModel}&t=${this.realTime}`,{headers:{Authorization:this.defaultMeteoToken}});if(a=new Date().valueOf()-(o+t),console.log("weather links elapsed: ",a,", total: ",t+=a),((l=c==null?void 0:c.data)==null?void 0:l.code)===0){const h=(s=c==null?void 0:c.data)==null?void 0:s.data;await Q.get(h.tropicals,{headers:{Authorization:this.defaultMeteoToken,key:"tropicals"},responseType:/\.(jpg|png)$/.test(h.tropicals)?"blob":"json"}).then(d=>{var w,z,x;const g=T.TropicalHelper.convert2Geojson(((w=d==null?void 0:d.data)==null?void 0:w.data)||(d==null?void 0:d.data));((x=(z=d==null?void 0:d.config)==null?void 0:z.headers)==null?void 0:x.key)&&g&&(this.tropicals={data:g,active:!0,cached:!0,type:"json",etime:c.data.etime,version:Math.random()+1})}).catch(d=>{console.log(`[${key}] fetch layer error: ${d}`)})}a=new Date().valueOf()-(o+t),console.log("tropicals elapsed: ",a,", total: ",t+=a)}},handleRefresh(){var t,a;(((a=(t=this.tropicals)==null?void 0:t.data)==null?void 0:a.features)||[]).forEach(r=>{var i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y;if(((i=r.geometry)==null?void 0:i.type)==="Point"){let C="";switch(!0){case(((l=r.properties.wind)==null?void 0:l.kts)<32||((s=r.properties)==null?void 0:s.kts)<32):C="TD";break;case(((n=r.properties.wind)==null?void 0:n.kts)<47||((c=r.properties)==null?void 0:c.kts)<47):C="TS";break;case(((h=r.properties.wind)==null?void 0:h.kts)<63||((d=r.properties)==null?void 0:d.kts)<63):C="STS";break;case(((g=r.properties.wind)==null?void 0:g.kts)<79||((f=r.properties)==null?void 0:f.kts)<79):C="TY";break;case(((w=r.properties.wind)==null?void 0:w.kts)<94||((z=r.properties)==null?void 0:z.kts)<94):C="STY";break;case(((x=r.properties.wind)==null?void 0:x.kts)>=94||((p=r.properties)==null?void 0:p.kts)>=94):C="Super TY";break;default:C="Super TY";break}r.properties.level=C}((S=r.geometry)==null?void 0:S.type)==="Point"&&((L=r.properties)!=null&&L.important)&&(r.properties.format=(b=(_=v(r.properties.date))==null?void 0:_.utcOffset(this.timeZone))==null?void 0:b.format(`MMM-DD/HHmm [(utc${this.computeTimezone})]`)),((u=r.geometry)==null?void 0:u.type)==="Point"&&(r.properties.Name=((y=(k=r.properties.name)==null?void 0:k.trim())==null?void 0:y.replace(/^./,C=>C.toUpperCase()))||r.properties.nameCn,r.properties.nameCn=r.properties.nameCn||r.properties.Name||"-")}),this.handleInit()},handleInit(){var o,t,a,r,i,l,s,n,c,h,d,g;this.handleClear(),this.tropicals&&this.map&&(this.handleRender(),(o=this.map)==null||o.on("click",this.clickLayers,this.handleClick),(t=this.map)==null||t.on("mousemove",this.hoverLayers,this.handleHover),(a=this.map)==null||a.on("mouseleave",this.hoverLayers,this.handleLeave)),((l=(i=(r=this.tropicals)==null?void 0:r.data)==null?void 0:i.features)==null?void 0:l.length)>0?(c=(n=(s=this.$parent)==null?void 0:s.$refs)==null?void 0:n.idmBottomBar)==null||c.handleToggle("tropical",!0):(g=(d=(h=this.$parent)==null?void 0:h.$refs)==null?void 0:d.idmBottomBar)==null||g.handleToggle("tropical",!1)},handleRender(){var o,t,a,r,i,l,s,n,c,h;if(this.tropicals&&this.map){const d=new Date().valueOf();let g=0,f=0;(o=this.map)!=null&&o.getSource(this.source)?((a=this.map)==null||a.getSource(this.source).setData((t=this.tropicals)!=null&&t.active?this.tropicals.data:this.empty),f=new Date().valueOf()-(d+g),console.log("[tropicals] update elapsed: ",f,", total: ",g+=f)):(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":this.Theme.current.value.colors["on-surface"],"line-width":3,"line-opacity":.7}},this.beforeLayer),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",this.Theme.current.value.colors["tropicals-cma"],"jma",this.Theme.current.value.colors["tropicals-jma"],"ecmwf",this.Theme.current.value.colors["tropicals-ecmwf"],"ukm",this.Theme.current.value.colors["tropicals-ukm"],"noaa-at",this.Theme.current.value.colors["tropicals-noaa-at"],"noaa-ep",this.Theme.current.value.colors["tropicals-noaa-ep"],this.Theme.current.value.colors["tropicals-noaa-other"]],"line-width":2,"line-opacity":1,"line-dasharray":[1,2]}},this.beforeLayer),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":12},paint:{"text-color":this.Theme.current.value.dark?"#333":"#fff","text-opacity":1,"text-halo-color":["match",["get","model"],"cma",this.Theme.current.value.colors["tropicals-cma"],"jma",this.Theme.current.value.colors["tropicals-jma"],"ecmwf",this.Theme.current.value.colors["tropicals-ecmwf"],"ukm",this.Theme.current.value.colors["tropicals-ukm"],"noaa-at",this.Theme.current.value.colors["tropicals-noaa-at"],"noaa-ep",this.Theme.current.value.colors["tropicals-noaa-ep"],this.Theme.current.value.colors["tropicals-noaa-other"]],"text-halo-width":4}},this.beforeLayer),f=new Date().valueOf()-(d+g),console.log("[tropical] add elapsed: ",f,", total: ",g+=f)),(l=this.map)!=null&&l.getSource(this.clusterSource)?((n=this.map)==null||n.getSource(this.clusterSource).setData((s=this.tropicals)!=null&&s.active?this.tropicals.data:this.empty),f=new Date().valueOf()-(d+g),console.log("[tropical] update elapsed: ",f,", total: ",g+=f)):(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":5,"circle-color":this.Theme.current.value.colors["on-surface"]}},this.beforeLayer),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","kts",["get","wind"]],null]],this.Theme.current.value.colors["tropicals-td"],["boolean",["<",["get","kts",["get","wind"]],32]],this.Theme.current.value.colors["tropicals-td"],["boolean",["<",["get","kts",["get","wind"]],47]],this.Theme.current.value.colors["tropicals-ts"],["boolean",["<",["get","kts",["get","wind"]],63]],this.Theme.current.value.colors["tropicals-sts"],["boolean",["<",["get","kts",["get","wind"]],79]],this.Theme.current.value.colors["tropicals-ty"],["boolean",["<",["get","kts",["get","wind"]],94]],this.Theme.current.value.colors["tropicals-sty"],["boolean",[">=",["get","kts",["get","wind"]],94]],this.Theme.current.value.colors["tropicals-super-ty"],"#fff"]}},this.beforeLayer),this.map.addLayer({id:this.pointLabelLayer,type:"symbol",source:this.clusterSource,minzoom:5,filter:["all",["==","$type","Point"],["==","type","forecast"],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[1,0],"text-anchor":"left","text-size":10},paint:{"text-color":this.Theme.current.value.colors["on-surface"]}},this.beforeLayer),this.map.addLayer({id:this.historyPointCircleLayer+"-border",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],paint:{"circle-radius":6,"circle-color":"#fff"}},this.beforeLayer),this.map.addLayer({id:this.historyPointCircleLayer,type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],paint:{"circle-radius":5,"circle-color":"rgba(0,0,0,0.7)"}},this.beforeLayer),this.map.addLayer({id:this.historyPointCircleLayer+"-inner",type:"circle",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],paint:{"circle-radius":3,"circle-color":"#fff"}},this.beforeLayer),this.map.addLayer({id:this.historyPointLabelLayer,type:"symbol",source:this.clusterSource,minzoom:5,filter:["all",["==","$type","Point"],["==","type","history"],["==","important",!0],["!=","disabled",!0]],layout:{"text-field":["get","format"],"text-offset":[1,0],"text-anchor":"left","text-size":10},paint:{"text-color":this.Theme.current.value.colors["on-surface"]}},this.beforeLayer),this.map.addLayer({id:this.forecastNameLayer,type:"symbol",source:this.clusterSource,filter:["all",["==","$type","Point"],["==","type","forecast"],["==","important",!0]],layout:{"text-field":["get",this.locale==="en"?"Name":"nameCn"],"text-anchor":"bottom","text-size":16,"text-allow-overlap":!0,"text-ignore-placement":!0,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-offset":[0,2]},paint:{"text-color":this.Theme.current.value.colors["map-blue"],"text-halo-color":"#ffffff","text-halo-width":2}},this.beforeLayer),f=new Date().valueOf()-(d+g),console.log("[tropical] add elapsed: ",f,", total: ",g+=f));const w=T.TropicalHelper.interpolate(this.tropicals,1);this.interpolateData=JSON.parse(JSON.stringify(w)),this.handleDateChange()}},handleClear(){var o,t,a,r;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),(o=this.interpolateMarkers)==null||o.forEach(i=>i==null?void 0:i.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)),(t=this.map)==null||t.off("click",this.clickLayers,this.handleClick),(a=this.map)==null||a.off("mousemove",this.hoverLayers,this.handleHover),(r=this.map)==null||r.off("mouseleave",this.hoverLayers,this.handleLeave),this.handleCloseInfoMarker()},handleDateChange(){var o,t,a,r,i,l,s,n,c,h,d,g,f,w,z,x,p,S,L,_,b,u,k,y,C,E,B,A,O,G,W,F,$,ee,J;if((o=this.interpolateMarkers)==null||o.forEach(q=>q==null?void 0:q.remove()),(t=this.interpolateData)!=null&&t.length&&this.tropicals.active){const q=v(this.realTime).utc().set({minute:0,second:0,millisecond:0}),te=this.interpolateData.filter(P=>P.properties.date===(q==null?void 0:q.format())&&!P.properties.disabled),re=this.handleComputePolygons(te),oe=V.featureCollection([...te]);re.forEach(P=>{oe.features.push(P)}),(a=this.map)!=null&&a.getSource(this.interpolateSource)?(r=this.map)==null||r.getSource(this.interpolateSource).setData(oe):((i=this.map)==null||i.addSource(this.interpolateSource,{type:"geojson",data:oe}),(l=this.map)==null||l.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,this.Theme.current.value.colors["tropicals-r7"],10,this.Theme.current.value.colors["tropicals-r10"],this.Theme.current.value.colors["tropicals-r10"]],"line-width":1}},"empty-layer-3")),this.interpolateMarkers=[];const ae=[];for(const P of te)if(!P.properties.disabled){if(!ae.some(ye=>{var pe;return ye.properties.name===((pe=P.properties)==null?void 0:pe.name)})){const ye=((n=(s=this.tropicals.data.features.find(pe=>{var we;return pe.properties.name===((we=P.properties)==null?void 0:we.name)}))==null?void 0:s.properties)==null?void 0:n.nameCn)||((c=P.properties)==null?void 0:c.Name)||"-";P.properties.nameCn=ye,P.properties.Name=((d=(h=P.properties.name)==null?void 0:h.trim())==null?void 0:d.replace(/^./,pe=>pe.toUpperCase()))||P.properties.nameCn,ae.push(P)}let U=this.Theme.current.value.colors["tropicals-ty"];((f=(g=P.properties)==null?void 0:g.wind)==null?void 0:f.kts)<32||!((z=(w=P.properties)==null?void 0:w.wind)!=null&&z.kts)?U=this.Theme.current.value.colors["tropicals-td"]:((p=(x=P.properties)==null?void 0:x.wind)==null?void 0:p.kts)>=32&&((L=(S=P.properties)==null?void 0:S.wind)==null?void 0:L.kts)<47?U=this.Theme.current.value.colors["tropicals-ts"]:((b=(_=P.properties)==null?void 0:_.wind)==null?void 0:b.kts)>=47&&((k=(u=P.properties)==null?void 0:u.wind)==null?void 0:k.kts)<63?U=this.Theme.current.value.colors["tropicals-sts"]:((C=(y=P.properties)==null?void 0:y.wind)==null?void 0:C.kts)>=63&&((B=(E=P.properties)==null?void 0:E.wind)==null?void 0:B.kts)<79?U=this.Theme.current.value.colors["tropicals-ty"]:((O=(A=P.properties)==null?void 0:A.wind)==null?void 0:O.kts)>=79&&((W=(G=P.properties)==null?void 0:G.wind)==null?void 0:W.kts)<94?U=this.Theme.current.value.colors["tropicals-sty"]:(($=(F=P.properties)==null?void 0:F.wind)==null?void 0:$.kts)>=94?U=this.Theme.current.value.colors["tropicals-super-ty"]:U=this.Theme.current.value.colors["tropicals-ty"];const ce=`<svg t="1719918955501"
|
|
204
204
|
class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" p-id="18382"
|
|
205
205
|
xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
|
|
206
206
|
<path
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";.idm-gl4-zone-info.page{position:absolute;bottom:0;left:0;width:100vw;height:100vh;z-index:1001}.idm-gl4-zone-info.dialog{min-width:300px;max-width:400px;max-height:500px;z-index:9}.idm-gl4-zone-info .rich-context span{font-size:14px!important;color:rgba(var(--v-theme-on-surface),.8)!important}.idm-gl4-zone-info .rich-context hr{border:none;border-top:1px solid rgba(var(--v-theme-on-surface),.2)!important;margin:8px 0}.idm-gl4-zone-info .close{position:absolute;top:4px;right:10px;color:rgba(var(--v-theme-on-surface),1)!important}.port-detail-container[data-v-b9dbfa4f]{transition:all .4s ease-in-out;z-index:1001}.port-detail-container.page[data-v-b9dbfa4f]{position:absolute;left:0;top:0;height:100vh;width:100vw}.port-detail-container.dialog[data-v-b9dbfa4f]{height:calc(100% - 100px);max-height:750px;width:480px;position:absolute;left:10px;top:80px}.forecast-table{border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse}.forecast-table th,.forecast-table td{height:28px;border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse;text-overflow:ellipsis}#idmPortInfo[data-v-0c0f27d3]{width:max-content;max-width:300px;height:max-content}.idm-gl2-enc-legend-bars-gl4-gl4{margin-bottom:150px;border-radius:5px;background:var(--idm-background-linear-gradient-top)}.idm-gl2-enc-legend-bars-gl4-gl4 div{padding:4px 8px;cursor:pointer;color:rgba(var(--v-theme-white),.9)}.idm-gl2-enc-legend-bars-gl4-gl4 div.active{color:var(--idm-success-color)}.tide-detail-container[data-v-957c64c7]{transition:all .4s ease-in-out;z-index:1001}.tide-detail-container.page[data-v-957c64c7]{position:absolute;left:0;top:0;height:100vh;width:100vw}.tide-detail-container.dialog[data-v-957c64c7]{max-height:800px;width:480px;position:absolute;left:10px;top:80px}.tide-table{border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse}.tide-table th,.tide-table td{height:30px;border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse;text-overflow:ellipsis}#idmTidalInfo[data-v-7f9e02c0]{width:max-content;max-width:300px;height:max-content;z-index:9}.idm-lat-lng-tip-gl4{position:absolute;bottom:10px;min-width:134px;height:68px;background:rgba(var(--v-theme-background),var(--v-background-opacity));-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);transition:all .4s ease-in-out;z-index:2}#idmFollowPortInfo[data-v-95e70a1f],#idmFollowPositionInfo[data-v-82405c68]{width:max-content;max-width:300px;height:max-content;z-index:9}.idm-gl4-other-layer .menu-bar-box{position:absolute;overflow-y:hidden;box-sizing:border-box;background:var(--v-icon-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:2}.idm-gl4-other-layer .available-layers{position:absolute;top:60px;width:280px;height:calc(100vh - 60px);box-sizing:border-box;background:var(--v-drawer-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:101}.idm-gl4-other-layer .available-layers .header-box{height:56px}.idm-gl4-other-layer .available-layers .list-box{height:calc(100% - 56px)}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item{width:47%;border-radius:4px;box-sizing:border-box;cursor:pointer}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item:nth-child(odd){margin-right:6%}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item .img-box{width:100%;height:60px;padding:2px;border-radius:4px;border:var(--v-layer-img-border)}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item .img-box.active{border:2px solid rgba(var(--v-theme-primary),1)!important}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item .img-box img{width:100%;height:100%;border-radius:4dvh}.legend-bars-gl4.wind{background:linear-gradient(to bottom,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))}.legend-bars-gl4.current{background:linear-gradient(to bottom,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))}.legend-bars-gl4.sig-wave[data-v-c6137292],.legend-bars-gl4.swell[data-v-3c94b068]{background:linear-gradient(to bottom,rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(48,128,164),rgb(48,99,142),rgb(52,101,166),rgb(56,104,192),rgb(56,82,169),rgb(57,61,143),rgb(134,48,48),rgb(194,77,91),rgb(192,118,105),rgb(192,163,157),rgb(192,163,157))}.legend-bars-gl4.ice-edge{background:linear-gradient(to bottom,rgb(220,243,252),rgb(220,243,252),rgb(86,169,230),rgb(47,226,155),rgb(47,226,155),rgb(47,226,155),rgb(213,253,37),rgb(213,253,37),rgb(213,253,37),rgb(230,176,39),rgb(230,176,39),rgb(230,84,39),rgb(230,84,39))}.legend-bars-gl4.ice-cover[data-v-916b01eb]{background:linear-gradient(to bottom,rgb(255,255,255),rgb(53,125,177),rgb(33,145,140),rgb(45,178,125),rgb(112,207,87),rgb(253,231,37))}.legend-bars-gl4.ice-thickness{background:linear-gradient(to bottom,rgb(4,6,19),rgb(51,50,102),rgb(51,50,102),rgb(63,82,158),rgb(63,82,158),rgb(66,123,183),rgb(66,123,183),rgb(92,161,197),rgb(92,161,197),rgb(134,199,212),rgb(134,199,212),rgb(234,253,253))}.legend-bars-gl4.precip3h{background:linear-gradient(to bottom,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))}.legend-bars-gl4.visibility{background:linear-gradient(to bottom,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))}.legend-bars-gl4.water-temp{background:linear-gradient(to bottom,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))}.legend-bars-gl4.temp{background:linear-gradient(to bottom,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))}.idm-gl4-meteo-layers .menu-bar-box{position:absolute;box-sizing:border-box;z-index:2}.idm-gl4-meteo-layers .available-layers{position:absolute;top:60px;width:280px;height:calc(100vh - 60px);box-sizing:border-box;background:var(--v-drawer-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:101}.idm-gl4-meteo-layers .available-layers .header-box{height:56px}.idm-gl4-meteo-layers .available-layers .list-box{height:calc(100% - 56px)}.idm-tropical-gl4 .menu-bar-box{position:absolute;box-sizing:border-box;z-index:2}.idm-tropical-gl4-info.page{position:absolute;bottom:0;left:0;width:100vw;z-index:1001;border-radius:16px 16px 0 0;background:rgb(var(--v-theme-surface))!important}.idm-tropical-gl4-info.dialog{z-index:10;width:400px}.idm-tropical-gl4-info .close{position:absolute;font-size:12px;right:10px;top:10px;color:rgba(var(--v-theme-on-surface),.8)!important}.idm-tropical-gl4-info .model-box{background:var(--v-gray-bg-2);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light)}.idm-tropical-gl4-info .model-box .model{font-size:12px}.idm-tropical-gl4-info .legend .icon{height:10px;width:10px;border-radius:50%;border:1px solid rgba(var(--v-theme-on-surface),1);margin-right:4px;box-sizing:border-box}.idm-tropical-gl4-info .legend .icon.td{background-color:rgba(var(--v-theme-tropicals-td),1)}.idm-tropical-gl4-info .legend .icon.ts{background-color:rgba(var(--v-theme-tropicals-ts),1)}.idm-tropical-gl4-info .legend .icon.sts{background-color:rgba(var(--v-theme-tropicals-sts),1)}.idm-tropical-gl4-info .legend .icon.ty{background-color:rgba(var(--v-theme-tropicals-ty),1)}.idm-tropical-gl4-info .legend .icon.sty{background-color:rgba(var(--v-theme-tropicals-sty),1)}.idm-tropical-gl4-info .legend .icon.supper-ty{background-color:rgba(var(--v-theme-tropicals-super-ty),1)}.idm-tropical-gl4-info .legend .icon.r7{height:14px;width:14px;border:2px solid rgba(var(--v-theme-tropicals-r7),1)}.idm-tropical-gl4-info .legend .icon.r10{height:14px;width:14px;border:2px solid rgba(var(--v-theme-tropicals-r10),1)}.idm-tropical-gl4-info .legend .icon.history{border:2px solid rgba(var(--v-theme-on-surface),.7);border-radius:0;width:20px;height:2px}.idm-tropical-gl4-info .legend .icon.forecast{border:2px dashed rgba(var(--v-theme-on-surface),.7);border-radius:0;width:20px;height:2px}.idm-tropical-gl4-info .legend .button{cursor:pointer;padding:0 4px;border-radius:4px;border:1px solid rgba(var(--v-theme-primary));color:rgba(var(--v-theme-primary))}.idm-tropical-gl4-hourly-marker .iconfont{font-size:34px!important;color:rgba(var(--v-theme-error))}.idm-tropical-gl4-hourly-marker svg{height:34px;width:34px}.idm-tropical-gl4-hourly-marker .center{box-sizing:border-box;display:flex;align-items:center;justify-content:center}.idm-tropical-gl4-hourly-marker .center.north{animation:anticlockwise 2s linear infinite}.idm-tropical-gl4-hourly-marker .center.south{animation:clockwise 2s linear infinite}.idm-gl4-time-picker{position:relative}.idm-gl4-time-picker .card-box{position:absolute;width:350px;height:320px;z-index:10}.idm-gl4-date-picker{position:relative}.idm-gl4-date-picker .card-box{position:absolute;width:260px;height:320px;z-index:10}.v-date-picker .v-picker-title{display:none}.v-date-picker .v-date-picker-controls{padding:0 8px}.v-date-picker .v-date-picker-controls .v-date-picker-controls__month-btn{padding:0 8px;border-radius:4px!important;font-weight:500!important;border:thin solid rgba(var(--v-theme-on-surface),.12);margin-right:8px}.v-date-picker .v-date-picker-controls .v-date-picker-controls__month-btn:hover{background-color:rgba(var(--v-theme-on-background),var(--v-hover-opacity))!important;border-radius:inherit}.v-date-picker .v-date-picker-controls .v-date-picker-controls__mode-btn{width:52px!important;border-radius:4px!important;transform:rotate(0)!important;border:thin solid rgba(var(--v-theme-on-surface),.12)}.v-date-picker .v-date-picker-controls .v-date-picker-controls__mode-btn i{font-size:12px!important;font-style:normal!important}.v-date-picker .v-date-picker-month{padding:0!important}.v-date-picker .v-date-picker-month__day{height:30px!important;width:30px!important}.v-date-picker .v-date-picker-month__day .v-date-picker-month__day-btn{--v-btn-height: 18px !important;border-radius:4px!important;border:none!important}.v-date-picker .v-date-picker-months{height:200px!important}.v-date-picker .v-date-picker-months .v-date-picker-months__content{grid-template-columns:repeat(3,1fr)!important}.v-date-picker .v-date-picker-months .v-date-picker-months__content .v-btn--rounded{border-radius:4px!important}.v-date-picker .v-date-picker-years{height:200px!important;overflow:hidden}.v-date-picker .v-date-picker-years .v-date-picker-years__content{grid-template-columns:repeat(2,1fr)!important}.v-date-picker .v-date-picker-years .v-date-picker-years__content .v-btn--rounded{border-radius:4px!important}.idm-gl4-spot .menu-bar-box{position:absolute;box-sizing:border-box;z-index:2}.idm-gl4-spot .spot-form-card{position:absolute;width:254px;overflow:visible;z-index:5;transition:all .4s ease-in-out}.idm-gl4-spot .spot-form-card .v-field,.idm-gl4-spot .spot-form-card .v-field__field,.idm-gl4-spot .spot-form-card .v-field__input{height:32px!important;min-height:32px!important;line-height:32px!important;padding:0 4px!important;font-size:14px!important}.idm-gl4-spot .spot-form-card .v-input__details{padding:0!important;height:14px!important;min-height:14px!important;line-height:14px!important;font-size:12px!important}.idm-gl4-measure .menu-bar-box{position:absolute;box-sizing:border-box;z-index:2}.idm-gl4-measure-marker{pointer-events:none!important}.idm-gl4-measure-marker .marker-circle{pointer-events:inherit;width:10px;height:10px;border-radius:50%;border:2px solid rgba(var(--v-theme-map-orange));background:#fff}.idm-gl4-measure-marker .marker-circle:hover{cursor:pointer}.idm-gl4-measure-marker.closed{pointer-events:auto!important}.idm-gl4-measure-summary-marker{color:#fff;font-size:12px;background:rgba(var(--v-theme-map-orange));border:2px solid #fff;padding:0 30px 0 5px;border-radius:4px;cursor:pointer}.idm-gl4-measure-summary-marker .marker-close{pointer-events:auto;position:absolute;background:rgba(var(--v-theme-map-orange));border-left:2px solid #fff;display:flex;align-items:center;justify-content:center;width:20px;height:100%;right:0;cursor:pointer;font-size:20px}.idm-gl4-measure-contextmenu-marker{color:#fff;font-size:12px;background:rgba(var(--v-theme-map-orange));border:2px solid #fff;padding:2px 5px;border-radius:5px;cursor:pointer}.idm-gl4-measure-tip-marker{font-size:12px;padding:2px 5px;border-radius:5px;background-color:rgba(var(--v-theme-surface),.7);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);cursor:pointer}.idm-gl4-measure-tip-marker .marker-label{border-bottom:var(--idm-dashed-border)}.idm-gl4-measure-tip-marker .marker-label:last-child{border-bottom:none}.idm-gl4-measure-tip-marker .marker-label b{font-weight:600;color:rgba(var(--v-theme-map-orange))}.idm-bottom-bar-gl4 .timeline-box{position:absolute;height:40px;box-sizing:border-box;background:rgba(var(--v-theme-background),var(--v-background-opacity));-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);transition:all .4s ease-in-out;z-index:12}.idm-bottom-bar-gl4 .timeline-box i{font-size:20px}.idm-bottom-bar-gl4 .timezone-box{position:absolute;bottom:88px;transition:all .4s ease-in-out}.idm-bottom-bar-gl4 .timezone-box .btn-box{width:134px;background:rgba(var(--v-theme-background),var(--v-background-opacity))}.idm-bottom-bar-gl4 .timezone-box .list{width:288px;height:180px;margin-bottom:10px;box-shadow:var(--v-box-shadow-light);background:rgba(var(--v-theme-background),1);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);z-index:3}.idm-bottom-bar-gl4 .timezone-box .list .item{width:48px;height:24px;line-height:24px;text-align:center;border:1px solid rgba(var(--v-theme-on-surface),.3);cursor:pointer}.idm-time-player-gl4{position:absolute;width:100%}.idm-time-player-gl4 .timeline-box{box-sizing:border-box;transition:all .4s ease-in-out;z-index:12}.idm-time-player-gl4 .timeline-box i{font-size:20px}.idm-time-player-gl4 .timezone-box{position:absolute;bottom:88px;transition:all .4s ease-in-out}.idm-time-player-gl4 .timezone-box .btn-box{width:134px;background:rgba(var(--v-theme-background),var(--v-background-opacity))}.idm-time-player-gl4 .timezone-box .list{width:288px;height:180px;margin-bottom:10px;box-shadow:var(--v-box-shadow-light);background:rgba(var(--v-theme-background),1);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);z-index:3}.idm-time-player-gl4 .timezone-box .list .item{width:48px;height:24px;line-height:24px;text-align:center;border:1px solid rgba(var(--v-theme-on-surface),.3);cursor:pointer}.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:rgba(0,0,0,.7);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapbox-initial-gl4{box-sizing:border-box;overflow:hidden}.mapbox-initial-gl4 #map{width:100%;height:100%;cursor:pointer}.mapbox-initial-gl4 .menu-bar-box{position:absolute;overflow-y:hidden;box-sizing:border-box;height:112px;padding-top:8px;background:var(--v-icon-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:2}.mapbox-initial-gl4 .menu-bar-box .zoom{width:32px;height:32px;line-height:32px;text-align:center;font-size:14px;font-weight:500;border-top:1px solid rgba(var(--v-border-color),var(--v-border-opacity));border-bottom:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.mapbox-initial-gl4 .mapboxgl-ctrl-top-right,.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-right{display:none}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left{bottom:20px}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-logo{display:none}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-scale{border:none;box-sizing:border-box;font-size:10px;padding:0 5px;margin-left:10px;white-space:nowrap;text-align:center;color:rgba(var(--v-theme-on-surface),1);background:rgba(var(--v-theme-background),.3);border-bottom:2px solid rgba(var(--v-theme-on-surface),.7);box-shadow:var(--v-box-shadow-light);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter)}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-scale:before{content:"";position:absolute;top:60%;left:0;width:2px;height:40%;background:rgba(var(--v-theme-on-surface),.7)}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-scale:after{content:"";position:absolute;top:60%;right:0;width:2px;height:40%;background:rgba(var(--v-theme-on-surface),.7)}
|
|
1
|
+
@charset "UTF-8";.idm-gl4-zone-info.page{position:absolute;bottom:0;left:0;width:100vw;height:100vh;z-index:1001}.idm-gl4-zone-info.dialog{min-width:300px;max-width:400px;max-height:500px;z-index:9}.idm-gl4-zone-info .rich-context span{font-size:14px!important;color:rgba(var(--v-theme-on-surface),.8)!important}.idm-gl4-zone-info .rich-context hr{border:none;border-top:1px solid rgba(var(--v-theme-on-surface),.2)!important;margin:8px 0}.idm-gl4-zone-info .close{position:absolute;top:4px;right:10px;color:rgba(var(--v-theme-on-surface),1)!important}.port-detail-container[data-v-b9dbfa4f]{transition:all .4s ease-in-out;z-index:1001}.port-detail-container.page[data-v-b9dbfa4f]{position:absolute;left:0;top:0;height:100vh;width:100vw}.port-detail-container.dialog[data-v-b9dbfa4f]{height:calc(100% - 100px);max-height:750px;width:480px;position:absolute;left:10px;top:80px}.forecast-table{border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse}.forecast-table th,.forecast-table td{height:28px;border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse;text-overflow:ellipsis}#idmPortInfo[data-v-0c0f27d3]{width:max-content;max-width:300px;height:max-content}.idm-gl2-enc-legend-bars-gl4-gl4{margin-bottom:150px;border-radius:5px;background:var(--idm-background-linear-gradient-top)}.idm-gl2-enc-legend-bars-gl4-gl4 div{padding:4px 8px;cursor:pointer;color:rgba(var(--v-theme-white),.9)}.idm-gl2-enc-legend-bars-gl4-gl4 div.active{color:var(--idm-success-color)}.tide-detail-container[data-v-957c64c7]{transition:all .4s ease-in-out;z-index:1001}.tide-detail-container.page[data-v-957c64c7]{position:absolute;left:0;top:0;height:100vh;width:100vw}.tide-detail-container.dialog[data-v-957c64c7]{max-height:800px;width:480px;position:absolute;left:10px;top:80px}.tide-table{border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse}.tide-table th,.tide-table td{height:30px;border:thin solid rgba(var(--v-border-color),var(--v-border-opacity));border-collapse:collapse;text-overflow:ellipsis}#idmTidalInfo[data-v-7f9e02c0]{width:max-content;max-width:300px;height:max-content;z-index:9}.idm-lat-lng-tip-gl4{position:absolute;bottom:10px;min-width:134px;height:68px;background:rgba(var(--v-theme-background),var(--v-background-opacity));-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);transition:all .4s ease-in-out;z-index:2}#idmFollowPortInfo[data-v-95e70a1f],#idmFollowPositionInfo[data-v-82405c68]{width:max-content;max-width:300px;height:max-content;z-index:9}.idm-gl4-other-layer .menu-bar-box{position:absolute;overflow-y:hidden;box-sizing:border-box;background:var(--v-icon-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:2}.idm-gl4-other-layer .available-layers{position:absolute;top:60px;width:280px;height:calc(100vh - 60px);box-sizing:border-box;background:var(--v-drawer-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:101}.idm-gl4-other-layer .available-layers .header-box{height:56px}.idm-gl4-other-layer .available-layers .list-box{height:calc(100% - 56px)}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item{width:47%;border-radius:4px;box-sizing:border-box;cursor:pointer}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item:nth-child(odd){margin-right:6%}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item .img-box{width:100%;height:60px;padding:2px;border-radius:4px;border:var(--v-layer-img-border)}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item .img-box.active{border:2px solid rgba(var(--v-theme-primary),1)!important}.idm-gl4-other-layer .available-layers .list-box .layers-body .feather-item .img-box img{width:100%;height:100%;border-radius:4dvh}.legend-bars-gl4.wind{background:linear-gradient(to bottom,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))}.legend-bars-gl4.current{background:linear-gradient(to bottom,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))}.legend-bars-gl4.sig-wave[data-v-c6137292],.legend-bars-gl4.swell[data-v-3c94b068]{background:linear-gradient(to bottom,rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(48,128,164),rgb(48,99,142),rgb(52,101,166),rgb(56,104,192),rgb(56,82,169),rgb(57,61,143),rgb(134,48,48),rgb(194,77,91),rgb(192,118,105),rgb(192,163,157),rgb(192,163,157))}.legend-bars-gl4.ice-edge{background:linear-gradient(to bottom,rgb(220,243,252),rgb(220,243,252),rgb(86,169,230),rgb(47,226,155),rgb(47,226,155),rgb(47,226,155),rgb(213,253,37),rgb(213,253,37),rgb(213,253,37),rgb(230,176,39),rgb(230,176,39),rgb(230,84,39),rgb(230,84,39))}.legend-bars-gl4.ice-cover[data-v-916b01eb]{background:linear-gradient(to bottom,rgb(255,255,255),rgb(53,125,177),rgb(33,145,140),rgb(45,178,125),rgb(112,207,87),rgb(253,231,37))}.legend-bars-gl4.ice-thickness{background:linear-gradient(to bottom,rgb(4,6,19),rgb(51,50,102),rgb(51,50,102),rgb(63,82,158),rgb(63,82,158),rgb(66,123,183),rgb(66,123,183),rgb(92,161,197),rgb(92,161,197),rgb(134,199,212),rgb(134,199,212),rgb(234,253,253))}.legend-bars-gl4.precip3h{background:linear-gradient(to bottom,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))}.legend-bars-gl4.visibility{background:linear-gradient(to bottom,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))}.legend-bars-gl4.water-temp{background:linear-gradient(to bottom,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))}.legend-bars-gl4.temp{background:linear-gradient(to bottom,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))}.idm-gl4-meteo-layers .menu-bar-box{position:absolute;box-sizing:border-box;z-index:102}.idm-gl4-meteo-layers .available-layers{position:absolute;top:60px;width:280px;height:calc(100vh - 60px);box-sizing:border-box;background:var(--v-drawer-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:101}.idm-gl4-meteo-layers .available-layers .header-box{height:56px}.idm-gl4-meteo-layers .available-layers .list-box{height:calc(100% - 56px)}.idm-tropical-gl4 .menu-bar-box{position:absolute;box-sizing:border-box;z-index:2}.idm-tropical-gl4-info.page{position:absolute;bottom:0;left:0;width:100vw;z-index:1001;border-radius:16px 16px 0 0;background:rgb(var(--v-theme-surface))!important}.idm-tropical-gl4-info.dialog{z-index:10;width:400px}.idm-tropical-gl4-info .close{position:absolute;font-size:12px;right:10px;top:10px;color:rgba(var(--v-theme-on-surface),.8)!important}.idm-tropical-gl4-info .model-box{background:var(--v-gray-bg-2);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light)}.idm-tropical-gl4-info .model-box .model{font-size:12px}.idm-tropical-gl4-info .legend .icon{height:10px;width:10px;border-radius:50%;border:1px solid rgba(var(--v-theme-on-surface),1);margin-right:4px;box-sizing:border-box}.idm-tropical-gl4-info .legend .icon.td{background-color:rgba(var(--v-theme-tropicals-td),1)}.idm-tropical-gl4-info .legend .icon.ts{background-color:rgba(var(--v-theme-tropicals-ts),1)}.idm-tropical-gl4-info .legend .icon.sts{background-color:rgba(var(--v-theme-tropicals-sts),1)}.idm-tropical-gl4-info .legend .icon.ty{background-color:rgba(var(--v-theme-tropicals-ty),1)}.idm-tropical-gl4-info .legend .icon.sty{background-color:rgba(var(--v-theme-tropicals-sty),1)}.idm-tropical-gl4-info .legend .icon.supper-ty{background-color:rgba(var(--v-theme-tropicals-super-ty),1)}.idm-tropical-gl4-info .legend .icon.r7{height:14px;width:14px;border:2px solid rgba(var(--v-theme-tropicals-r7),1)}.idm-tropical-gl4-info .legend .icon.r10{height:14px;width:14px;border:2px solid rgba(var(--v-theme-tropicals-r10),1)}.idm-tropical-gl4-info .legend .icon.history{border:2px solid rgba(var(--v-theme-on-surface),.7);border-radius:0;width:20px;height:2px}.idm-tropical-gl4-info .legend .icon.forecast{border:2px dashed rgba(var(--v-theme-on-surface),.7);border-radius:0;width:20px;height:2px}.idm-tropical-gl4-info .legend .button{cursor:pointer;padding:0 4px;border-radius:4px;border:1px solid rgba(var(--v-theme-primary));color:rgba(var(--v-theme-primary))}.idm-tropical-gl4-hourly-marker .iconfont{font-size:34px!important;color:rgba(var(--v-theme-error))}.idm-tropical-gl4-hourly-marker svg{height:34px;width:34px}.idm-tropical-gl4-hourly-marker .center{box-sizing:border-box;display:flex;align-items:center;justify-content:center}.idm-tropical-gl4-hourly-marker .center.north{animation:anticlockwise 2s linear infinite}.idm-tropical-gl4-hourly-marker .center.south{animation:clockwise 2s linear infinite}.idm-gl4-time-picker{position:relative}.idm-gl4-time-picker .card-box{position:absolute;width:350px;height:320px;z-index:10}.idm-gl4-date-picker{position:relative}.idm-gl4-date-picker .card-box{position:absolute;width:260px;height:320px;z-index:10}.v-date-picker .v-picker-title{display:none}.v-date-picker .v-date-picker-controls{padding:0 8px}.v-date-picker .v-date-picker-controls .v-date-picker-controls__month-btn{padding:0 8px;border-radius:4px!important;font-weight:500!important;border:thin solid rgba(var(--v-theme-on-surface),.12);margin-right:8px}.v-date-picker .v-date-picker-controls .v-date-picker-controls__month-btn:hover{background-color:rgba(var(--v-theme-on-background),var(--v-hover-opacity))!important;border-radius:inherit}.v-date-picker .v-date-picker-controls .v-date-picker-controls__mode-btn{width:52px!important;border-radius:4px!important;transform:rotate(0)!important;border:thin solid rgba(var(--v-theme-on-surface),.12)}.v-date-picker .v-date-picker-controls .v-date-picker-controls__mode-btn i{font-size:12px!important;font-style:normal!important}.v-date-picker .v-date-picker-month{padding:0!important}.v-date-picker .v-date-picker-month__day{height:30px!important;width:30px!important}.v-date-picker .v-date-picker-month__day .v-date-picker-month__day-btn{--v-btn-height: 18px !important;border-radius:4px!important;border:none!important}.v-date-picker .v-date-picker-months{height:200px!important}.v-date-picker .v-date-picker-months .v-date-picker-months__content{grid-template-columns:repeat(3,1fr)!important}.v-date-picker .v-date-picker-months .v-date-picker-months__content .v-btn--rounded{border-radius:4px!important}.v-date-picker .v-date-picker-years{height:200px!important;overflow:hidden}.v-date-picker .v-date-picker-years .v-date-picker-years__content{grid-template-columns:repeat(2,1fr)!important}.v-date-picker .v-date-picker-years .v-date-picker-years__content .v-btn--rounded{border-radius:4px!important}.idm-gl4-spot .menu-bar-box{position:absolute;box-sizing:border-box;z-index:2}.idm-gl4-spot .spot-form-card{position:absolute;width:254px;overflow:visible;z-index:5;transition:all .4s ease-in-out}.idm-gl4-spot .spot-form-card .v-field,.idm-gl4-spot .spot-form-card .v-field__field,.idm-gl4-spot .spot-form-card .v-field__input{height:32px!important;min-height:32px!important;line-height:32px!important;padding:0 4px!important;font-size:14px!important}.idm-gl4-spot .spot-form-card .v-input__details{padding:0!important;height:14px!important;min-height:14px!important;line-height:14px!important;font-size:12px!important}.idm-gl4-measure .menu-bar-box{position:absolute;box-sizing:border-box;z-index:2}.idm-gl4-measure-marker{pointer-events:none!important}.idm-gl4-measure-marker .marker-circle{pointer-events:inherit;width:10px;height:10px;border-radius:50%;border:2px solid rgba(var(--v-theme-map-orange));background:#fff}.idm-gl4-measure-marker .marker-circle:hover{cursor:pointer}.idm-gl4-measure-marker.closed{pointer-events:auto!important}.idm-gl4-measure-summary-marker{color:#fff;font-size:12px;background:rgba(var(--v-theme-map-orange));border:2px solid #fff;padding:0 30px 0 5px;border-radius:4px;cursor:pointer}.idm-gl4-measure-summary-marker .marker-close{pointer-events:auto;position:absolute;background:rgba(var(--v-theme-map-orange));border-left:2px solid #fff;display:flex;align-items:center;justify-content:center;width:20px;height:100%;right:0;cursor:pointer;font-size:20px}.idm-gl4-measure-contextmenu-marker{color:#fff;font-size:12px;background:rgba(var(--v-theme-map-orange));border:2px solid #fff;padding:2px 5px;border-radius:5px;cursor:pointer}.idm-gl4-measure-tip-marker{font-size:12px;padding:2px 5px;border-radius:5px;background-color:rgba(var(--v-theme-surface),.7);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);cursor:pointer}.idm-gl4-measure-tip-marker .marker-label{border-bottom:var(--idm-dashed-border)}.idm-gl4-measure-tip-marker .marker-label:last-child{border-bottom:none}.idm-gl4-measure-tip-marker .marker-label b{font-weight:600;color:rgba(var(--v-theme-map-orange))}.idm-bottom-bar-gl4 .timeline-box{position:absolute;height:40px;box-sizing:border-box;background:rgba(var(--v-theme-background),var(--v-background-opacity));-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);transition:all .4s ease-in-out;z-index:12}.idm-bottom-bar-gl4 .timeline-box i{font-size:20px}.idm-bottom-bar-gl4 .timezone-box{position:absolute;bottom:88px;transition:all .4s ease-in-out}.idm-bottom-bar-gl4 .timezone-box .btn-box{width:134px;background:rgba(var(--v-theme-background),var(--v-background-opacity))}.idm-bottom-bar-gl4 .timezone-box .list{width:288px;height:180px;margin-bottom:10px;box-shadow:var(--v-box-shadow-light);background:rgba(var(--v-theme-background),1);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);z-index:3}.idm-bottom-bar-gl4 .timezone-box .list .item{width:48px;height:24px;line-height:24px;text-align:center;border:1px solid rgba(var(--v-theme-on-surface),.3);cursor:pointer}.idm-time-player-gl4{position:absolute;width:100%}.idm-time-player-gl4 .timeline-box{box-sizing:border-box;transition:all .4s ease-in-out;z-index:12}.idm-time-player-gl4 .timeline-box i{font-size:20px}.idm-time-player-gl4 .timezone-box{position:absolute;bottom:88px;transition:all .4s ease-in-out}.idm-time-player-gl4 .timezone-box .btn-box{width:134px;background:rgba(var(--v-theme-background),var(--v-background-opacity))}.idm-time-player-gl4 .timezone-box .list{width:288px;height:180px;margin-bottom:10px;box-shadow:var(--v-box-shadow-light);background:rgba(var(--v-theme-background),1);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);z-index:3}.idm-time-player-gl4 .timezone-box .list .item{width:48px;height:24px;line-height:24px;text-align:center;border:1px solid rgba(var(--v-theme-on-surface),.3);cursor:pointer}.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:rgba(0,0,0,.7);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapbox-initial-gl4{box-sizing:border-box;overflow:hidden}.mapbox-initial-gl4 #map{width:100%;height:100%;cursor:pointer}.mapbox-initial-gl4 .menu-bar-box{position:absolute;overflow-y:hidden;box-sizing:border-box;height:112px;padding-top:8px;background:var(--v-icon-bg);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter);box-shadow:var(--v-box-shadow-light);z-index:2}.mapbox-initial-gl4 .menu-bar-box .zoom{width:32px;height:32px;line-height:32px;text-align:center;font-size:14px;font-weight:500;border-top:1px solid rgba(var(--v-border-color),var(--v-border-opacity));border-bottom:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.mapbox-initial-gl4 .mapboxgl-ctrl-top-right,.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-right{display:none}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left{bottom:20px}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-logo{display:none}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-scale{border:none;box-sizing:border-box;font-size:10px;padding:0 5px;margin-left:10px;white-space:nowrap;text-align:center;color:rgba(var(--v-theme-on-surface),1);background:rgba(var(--v-theme-background),.3);border-bottom:2px solid rgba(var(--v-theme-on-surface),.7);box-shadow:var(--v-box-shadow-light);-webkit-backdrop-filter:var(--v-backdrop-filter);backdrop-filter:var(--v-backdrop-filter)}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-scale:before{content:"";position:absolute;top:60%;left:0;width:2px;height:40%;background:rgba(var(--v-theme-on-surface),.7)}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-scale:after{content:"";position:absolute;top:60%;right:0;width:2px;height:40%;background:rgba(var(--v-theme-on-surface),.7)}
|