PageSourceSearch

https://www.ilmatieteenlaitos.fi/v3.0.0/_nuxt/CbS40ASU.js

js ilmatieteenlaitos.fi collected 2026-09-24 08:38:09 UTC 71,988 bytes, 1 lines download raw bytes

1import{E as e,aU as t,c0 as a,c1 as l,D as n,c2 as o,d as i,H as r,am as s,o as u,g as d,w as p,K as c,f as v,Q as m,c3 as y,c4 as f,y as h,aN as g,I as b,c5 as w,G as x,W as q,c6 as S,h as k,c7 as T,c8 as O,L as _,c9 as B,$ as C,ca as M,O as P,bp as A,U as I,bj as D,bk as $,cb as E,A as F,P as N,cc as W,au as V,a as H,cd as L,T as R,aP as K,aO as z,J as j,R as U,c as G,b as Y,F as X,r as J,ce as Q,cf as Z,cg as ee,ap as te,ch as ae,e as le,ci as ne,an as oe,ay as ie,t as re,Y as se,n as ue,aV as de,u as pe,a1 as ce,s as ve,at as me,v as ye,as as fe,ar as he,k as ge,bg as be,_ as we,i as xe,cj as qe,ck as Se,cl as ke,cm as Te,cn as Oe,co as _e}from"./D8veu8-2.js";import{v as Be,j as Ce,k as Me,m as Pe,h as Ae,i as Ie}from"./DvNt3GwZ.js";import{t as De,k as $e,G as Ee,n as Fe,b as Ne,w as We,c as Ve,H as He,I as Le,J as Re}from"./gMNtHMDg.js";import{i as Ke}from"./AMe2r3hX.js";import{C as ze}from"./BKETKPKp.js";const je=e("CheckIcon",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]),Ue=e("ChevronUpIcon",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]),Ge=e("LoaderCircleIcon",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);function Ye(e,t=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY){return Math.min(a,Math.max(t,e))}let Xe=0;function Je(){t((e=>{var t,l;if(!a)return;const n=document.querySelectorAll("[data-reka-focus-guard]");document.body.insertAdjacentElement("afterbegin",null!=(t=n[0])?t:Qe()),document.body.insertAdjacentElement("beforeend",null!=(l=n[1])?l:Qe()),Xe++,e((()=>{1===Xe&&document.querySelectorAll("[data-reka-focus-guard]").forEach((e=>e.remove())),Xe--}))}))}function Qe(){const e=document.createElement("span");return e.setAttribute("data-reka-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}const Ze=l((()=>n([])));function et(e,t){const a=[...e],l=a.indexOf(t);return-1!==l&&a.splice(l,1),a}const tt="focusScope.autoFocusOnMount",at="focusScope.autoFocusOnUnmount",lt={bubbles:!1,cancelable:!0};function nt(e){const t=[],a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{const t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;a.nextNode();)t.push(a.currentNode);return t}function ot(e,t){for(const a of e)if(!it(a,{upTo:t}))return a}function it(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e;){if(void 0!==t&&e===t)return!1;if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}function rt(e,{select:t=!1}={}){if(e&&e.focus){const a=o();e.focus({preventScroll:!0}),e!==a&&function(e){return e instanceof HTMLInputElement&&"select"in e}(e)&&t&&e.select()}}var st=i({__name:"FocusScope",props:{loop:{type:Boolean,required:!1,default:!1},trapped:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["mountAutoFocus","unmountAutoFocus"],setup(e,{emit:l}){const i=e,f=l,{currentRef:h,currentElement:g}=r(),b=n(null),w=function(){const e=Ze();return{add(t){const a=e.value[0];t!==a&&(null==a||a.pause()),e.value=et(e.value,t),e.value.unshift(t)},remove(t){var a;e.value=et(e.value,t),null==(a=e.value[0])||a.resume()}}}(),x=y({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});function q(e){if(!i.loop&&!i.trapped)return;if(x.paused)return;const t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,a=o();if(t&&a){const t=e.currentTarget,[l,n]=function(e){const t=nt(e);return[ot(t,e),ot(t.reverse(),e)]}(t);l&&n?e.shiftKey||a!==n?e.shiftKey&&a===l&&(e.preventDefault(),i.loop&&rt(n,{select:!0})):(e.preventDefault(),i.loop&&rt(l,{select:!0})):a===t&&e.preventDefault()}}return t((e=>{if(!a)return;const t=g.value;if(!i.trapped)return;function l(e){if(x.paused||!t)return;const a=e.target;t.contains(a)?b.value=a:rt(b.value,{select:!0})}function n(e){if(x.paused||!t)return;const a=e.relatedTarget;null!==a&&(t.contains(a)||rt(b.value,{select:!0}))}document.addEventListener("focusin",l),document.addEventListener("focusout",n);const o=new MutationObserver((function(e){t.contains(b.value)||rt(t)}));t&&o.observe(t,{childList:!0,subtree:!0}),e((()=>{document.removeEventListener("focusin",l),document.removeEventListener("focusout",n),o.disconnect()}))})),t((async e=>{const t=g.value;if(await s(),!t)return;w.add(x);const a=o();if(!t.contains(a)){const e=new CustomEvent(tt,lt);t.addEventListener(tt,(e=>
1f("mountAutoFocus",e))),t.dispatchEvent(e),e.defaultPrevented||(!function(e,{select:t=!1}={}){const a=o();for(const l of e)if(rt(l,{select:t}),o()!==a)return!0}((l=nt(t),l.filter((e=>"A"!==e.tagName))),{select:!0}),o()===a&&rt(t))}var l;e((()=>{t.removeEventListener(tt,(e=>f("mountAutoFocus",e)));const e=new CustomEvent(at,lt),l=e=>{f("unmountAutoFocus",e)};t.addEventListener(at,l),t.dispatchEvent(e),setTimeout((()=>{e.defaultPrevented||rt(null!=a?a:document.body,{select:!0}),t.removeEventListener(at,l),w.remove(x)}),0)}))})),(e,t)=>(u(),d(v(m),{ref_key:"currentRef",ref:h,tabindex:"-1","as-child":e.asChild,as:e.as,onKeydown:q},{default:p((()=>[c(e.$slots,"default")])),_:3},8,["as-child","as"]))}});function ut(e){const t=o();for(const a of e){if(a===t)return;if(a.focus(),o()!==t)return}}const[dt,pt]=x("PopoverRoot");var ct=i({__name:"PopoverRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},modal:{type:Boolean,required:!1,default:!1}},emits:["update:open"],setup(e,{emit:t}){const a=e,l=t,{modal:o}=g(a),i=b(a,"open",l,{defaultValue:a.defaultOpen,passive:void 0===a.open}),r=n(),s=n(!1);return pt({contentId:"",triggerId:"",modal:o,open:i,onOpenChange:e=>{i.value=e},onOpenToggle:()=>{i.value=!i.value},triggerElement:r,hasCustomAnchor:s}),(e,t)=>(u(),d(v(w),null,{default:p((()=>[c(e.$slots,"default",{open:v(i),close:()=>i.value=!1})])),_:3}))}}),vt=i({__name:"PopoverContentImpl",props:{trapFocus:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const a=t,l=q(S(e,"trapFocus","disableOutsidePointerEvents")),{forwardRef:n}=r(),o=dt();return Je(),(e,t)=>(u(),d(v(st),{"as-child":"",loop:"",trapped:e.trapFocus,onMountAutoFocus:t[5]||(t[5]=e=>a("openAutoFocus",e)),onUnmountAutoFocus:t[6]||(t[6]=e=>a("closeAutoFocus",e))},{default:p((()=>[k(v(T),{"as-child":"","disable-outside-pointer-events":e.disableOutsidePointerEvents,onPointerDownOutside:t[0]||(t[0]=e=>a("pointerDownOutside",e)),onInteractOutside:t[1]||(t[1]=e=>a("interactOutside",e)),onEscapeKeyDown:t[2]||(t[2]=e=>a("escapeKeyDown",e)),onFocusOutside:t[3]||(t[3]=e=>a("focusOutside",e)),onDismiss:t[4]||(t[4]=e=>v(o).onOpenChange(!1))},{default:p((()=>[k(v(O),_(v(l),{id:v(o).contentId,ref:v(n),"data-state":v(o).open.value?"open":"closed","aria-labelledby":v(o).triggerId,style:{"--reka-popover-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-popover-content-available-width":"var(--reka-popper-available-width)","--reka-popover-content-available-height":"var(--reka-popper-available-height)","--reka-popover-trigger-width":"var(--reka-popper-anchor-width)","--reka-popover-trigger-height":"var(--reka-popper-anchor-height)"},role:"dialog"}),{default:p((()=>[c(e.$slots,"default")])),_:3},16,["id","data-state","aria-labelledby"])])),_:3},8,["disable-outside-pointer-events"])])),_:3},8,["trapped"]))}}),mt=i({__name:"PopoverContentModal",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const a=e,l=t,o=dt(),i=n(!1);B(!0);const s=C(a,l),{forwardRef:m,currentElement:y}=r();return M(y),(e,t)=>(u(),d(vt,_(v(s),{ref:v(m),"trap-focus":v(o).open.value,"disable-outside-pointer-events":"",onCloseAutoFocus:t[0]||(t[0]=P((e=>{var t;l("closeAutoFocus",e),i.value||null==(t=v(o).triggerElement.value)||t.focu
1s()}),["prevent"])),onPointerDownOutside:t[1]||(t[1]=e=>{l("pointerDownOutside",e);const t=e.detail.originalEvent,a=0===t.button&&!0===t.ctrlKey,n=2===t.button||a;i.value=n}),onFocusOutside:t[2]||(t[2]=P((()=>{}),["prevent"]))}),{default:p((()=>[c(e.$slots,"default")])),_:3},16,["trap-focus"]))}}),yt=i({__name:"PopoverContentNonModal",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const a=e,l=t,o=dt(),i=n(!1),r=n(!1),s=C(a,l);return(e,t)=>(u(),d(vt,_(v(s),{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||(t[0]=e=>{var t;l("closeAutoFocus",e),e.defaultPrevented||(i.value||null==(t=v(o).triggerElement.value)||t.focus(),e.preventDefault()),i.value=!1,r.value=!1}),onInteractOutside:t[1]||(t[1]=async e=>{var t;l("interactOutside",e),e.defaultPrevented||(i.value=!0,"pointerdown"===e.detail.originalEvent.type&&(r.value=!0));const a=e.target;(null==(t=v(o).triggerElement.value)?void 0:t.contains(a))&&e.preventDefault(),"focusin"===e.detail.originalEvent.type&&r.value&&e.preventDefault()})}),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}}),ft=i({__name:"PopoverContent",props:{forceMount:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const a=e,l=t,n=dt(),o=C(a,l),{forwardRef:i}=r();return n.contentId||(n.contentId=A(void 0,"reka-popover-content")),(e,t)=>(u(),d(v(I),{present:e.forceMount||v(n).open.value},{default:p((()=>[v(n).modal.value?(u(),d(mt,_({key:0},v(o),{ref:v(i)}),{default:p((()=>[c(e.$slots,"default")])),_:3},16)):(u(),d(yt,_({key:1},v(o),{ref:v(i)}),{default:p((()=>[c(e.$slots,"default")])),_:3},16))])),_:3},8,["present"]))}}),ht=i({__name:"PopoverPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(e,a)=>(u(),d(v(E),D($(t)),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}}),gt=i({__name:"PopoverTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,a=dt(),{forwardRef:l,currentElement:n}=r();return a.triggerId||(a.triggerId=A(void 0,"reka-popover-trigger")),F((()=>{a.triggerElement.value=n.value})),(e,n)=>(u(),d(N(v(a).hasCustomAnchor.value?v(m):v(W)),{"as-child":""},{default:p((()=>[k(v(m),{id:v(a).triggerId,ref:v(l),type:"button"===e.as?"button":void 0,"aria-haspopup":"dialog","aria-expanded":v(a).open.value,"aria-controls":v(a).contentId,"data-state":v(a).open.value?"open":"closed",as:e.as,"as-child":t.asChild,onClick:v(a).onOpenToggle},{default:p((()=>[c(e.$slots,"default")])),_:3},8,["id","type","aria-expanded","aria-controls","data-state","as","as-child","onClick"])])),_:3}))}}),bt=i({__name:"BubbleSelect",props:{autocomplete:{type:String,required:!1},autofocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},form:{type:String,required:!1},multiple:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},size:{type:Number,required:!1},value:{type:null,required:!1}},setup(e){const t=e,a=n();return V((()=>t.value),((e,t)=>{const l=window.HTMLSelectElement.prototype,n=Object.getOwnPropertyDescriptor(l,"value").set;if(e!==t&&n&&a.value){const t=new Event("change",{bubbles:!0});n.call(a.value,e),a.value.dispatchEvent(t)}})),(e,l)=>(u(),d(v(L),{"as-child":""},{default:p((()=>[H("select",_({ref_key:"selectElement",ref:a}
1,t),[c(e.$slots,"default")],16)])),_:3}))}});const wt=[" ","Enter","ArrowUp","ArrowDown"],xt=[" ","Enter"],qt=10;function St(e,t,a){return void 0!==e&&(Array.isArray(e)?e.some((e=>kt(e,t,a))):kt(e,t,a))}function kt(e,t,a){return void 0!==e&&void 0!==t&&("string"==typeof e?e===t:"function"==typeof a?a(e,t):"string"==typeof a?(null==e?void 0:e[a])===(null==t?void 0:t[a]):R(e,t))}function Tt(e){return null==e||""===e||Array.isArray(e)&&0===e.length}const Ot={key:0,value:""},[_t,Bt]=x("SelectRoot");var Ct=i({inheritAttrs:!1,__name:"SelectRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},by:{type:[String,Function],required:!1},dir:{type:String,required:!1},multiple:{type:Boolean,required:!1},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","update:open"],setup(e,{emit:t}){var a;const l=e,o=t,{required:i,disabled:r,multiple:s,dir:m}=g(l),y=b(l,"modelValue",o,{defaultValue:null!=(a=l.defaultValue)?a:s.value?[]:void 0,passive:void 0===l.modelValue,deep:!0}),f=b(l,"open",o,{defaultValue:l.defaultOpen,passive:void 0===l.open}),x=n(),q=n(),S=n({x:0,y:0}),k=h((()=>{var e;return s.value&&Array.isArray(y.value)?0===(null==(e=y.value)?void 0:e.length):U(y.value)}));K({isProvider:!0});const T=z(m),O=j(x),B=n(new Set),C=h((()=>Array.from(B.value).map((e=>e.value)).join(";")));return Bt({triggerElement:x,onTriggerChange:e=>{x.value=e},valueElement:q,onValueElementChange:e=>{q.value=e},contentId:"",modelValue:y,onValueChange:function(e){if(s.value){const t=Array.isArray(y.value)?[...y.value]:[],a=t.findIndex((t=>kt(t,e,l.by)));-1===a?t.push(e):t.splice(a,1),y.value=[...t]}else y.value=e},by:l.by,open:f,multiple:s,required:i,onOpenChange:e=>{f.value=e},dir:T,triggerPointerDownPosRef:S,disabled:r,isEmptyModelValue:k,optionsSet:B,onOptionAdd:e=>B.value.add(e),onOptionRemove:e=>B.value.delete(e)}),(e,t)=>(u(),d(v(w),null,{default:p((()=>[c(e.$slots,"default",{modelValue:v(y),open:v(f)}),v(O)?(u(),d(bt,{key:C.value,"aria-hidden":"true",tabindex:"-1",multiple:v(s),required:v(i),name:e.name,autocomplete:e.autocomplete,disabled:v(r),value:v(y)},{default:p((()=>[v(U)(v(y))?(u(),G("option",Ot)):Y("v-if",!0),(u(!0),G(X,null,J(Array.from(B.value),(e=>{var t;return u(),G("option",_({key:null!=(t=e.value)?t:""},{ref_for:!0},e),null,16)})),128))])),_:1},8,["multiple","required","name","autocomplete","disabled","value"])):Y("v-if",!0)])),_:3}))}}),Mt=i({__name:"SelectPopperPosition",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1,default:qt},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=q(e);return(e,a)=>(u(),d(v(O),_(v(t),{style:{boxSizing:"border-box","--reka-select-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-select-content-available-width":"var(--reka-popper-available-width)","--reka-select-content-available-height":"var(--reka-popper-available-height)","--reka-select-trigger-width":"var(--reka-popper-anchor-width)","--reka-select-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}});const Pt={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[At,It]=x("SelectContent");var Dt=i({__name:"SelectContentImpl",props:{position:{type:String,required:!1,default:"item-aligned"},bodyLock:{type:Boolean,required:!1,default:!0},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:"start"},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(e,{emit:a}){const l=e,o=a,i=_t();Je(),B(l.bodyLock);const{CollectionSlot:r,getItems:s}=K(),m=n();M(m);const{search:y,handleTypeaheadSearch:f}=Q(),g=n(),b=n(),w=n(),x=n(!1),S=n(!1),O=n(!1);function C(){b.value&&m.value&&ut([b.value,m.value])}V(x,(()=>{C()}));const{onOpenChange:A,triggerPointerDownPosRef:I}=i;function D(e){const t=e.ctrlKey||e.altKey||e.metaKey;
1if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||f(e.key,s()),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=[...s().map((e=>e.ref))];if(["ArrowUp","End"].includes(e.key)&&(t=t.slice().reverse()),["ArrowUp","ArrowDown"].includes(e.key)){const a=e.target,l=t.indexOf(a);t=t.slice(l+1)}setTimeout((()=>ut(t))),e.preventDefault()}}t((e=>{if(!m.value)return;let t={x:0,y:0};const a=e=>{var a,l,n,o;t={x:Math.abs(Math.round(e.pageX)-(null!=(l=null==(a=I.value)?void 0:a.x)?l:0)),y:Math.abs(Math.round(e.pageY)-(null!=(o=null==(n=I.value)?void 0:n.y)?o:0))}},l=e=>{var l;"touch"!==e.pointerType&&(t.x<=10&&t.y<=10?e.preventDefault():(null==(l=m.value)?void 0:l.contains(e.target))||A(!1),document.removeEventListener("pointermove",a),I.value=null)};null!==I.value&&(document.addEventListener("pointermove",a),document.addEventListener("pointerup",l,{capture:!0,once:!0})),e((()=>{document.removeEventListener("pointermove",a),document.removeEventListener("pointerup",l,{capture:!0})}))}));const $=h((()=>"popper"===l.position?l:{})),E=q($.value);return It({content:m,viewport:g,onViewportChange:e=>{g.value=e},itemRefCallback:(e,t,a)=>{const l=!S.value&&!a,n=St(i.modelValue.value,t,i.by);if(i.multiple.value){if(O.value)return;(n||l)&&(b.value=e,n&&(O.value=!0))}else(n||l)&&(b.value=e);l&&(S.value=!0)},selectedItem:b,selectedItemText:w,onItemLeave:()=>{var e;null==(e=m.value)||e.focus()},itemTextRefCallback:(e,t,a)=>{const l=!S.value&&!a;(St(i.modelValue.value,t,i.by)||l)&&(w.value=e)},focusSelectedItem:C,position:l.position,isPositioned:x,searchRef:y}),(e,t)=>(u(),d(v(r),null,{default:p((()=>[k(v(st),{"as-child":"",onMountAutoFocus:t[6]||(t[6]=P((()=>{}),["prevent"])),onUnmountAutoFocus:t[7]||(t[7]=e=>{var t;o("closeAutoFocus",e),e.defaultPrevented||(null==(t=v(i).triggerElement.value)||t.focus({preventScroll:!0}),e.preventDefault())})},{default:p((()=>[k(v(T),{"as-child":"","disable-outside-pointer-events":"",onFocusOutside:t[2]||(t[2]=P((()=>{}),["prevent"])),onDismiss:t[3]||(t[3]=e=>v(i).onOpenChange(!1)),onEscapeKeyDown:t[4]||(t[4]=e=>o("escapeKeyDown",e)),onPointerDownOutside:t[5]||(t[5]=e=>o("pointerDownOutside",e))},{default:p((()=>[(u(),d(N("popper"===e.position?Mt:Ft),_({...e.$attrs,...v(E)},{id:v(i).contentId,ref:e=>{m.value=v(Z)(e)},role:"listbox","data-state":v(i).open.value?"open":"closed",dir:v(i).dir.value,style:{display:"flex",flexDirection:"column",outline:"none"},onContextmenu:t[0]||(t[0]=P((()=>{}),["prevent"])),onPlaced:t[1]||(t[1]=e=>x.value=!0),onKeydown:D}),{default:p((()=>[c(e.$slots,"default")])),_:3},16,["id","data-state","dir","onKeydown"]))])),_:3})])),_:3})])),_:3}))}});const[$t,Et]=x("SelectItemAlignedPosition");var Ft=i({inheritAttrs:!1,__name:"SelectItemAlignedPosition",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["placed"],setup(e,{emit:t}){const a=e,l=t,{getItems:o}=K(),i=_t(),d=At(),y=n(!1),f=n(!0),h=n(),{forwardRef:g,currentElement:b}=r(),{viewport:w,selectedItem:x,selectedItemText:q,focusSelectedItem:S}=d;function T(){if(i.triggerElement.value&&i.valueElement.value&&h.value&&b.value&&(null==w?void 0:w.value)&&(null==x?void 0:x.value)&&(null==q?void 0:q.value)){const e=i.triggerElement.value.getBoundingClientRect(),t=b.value.getBoundingClientRect(),a=i.valueElement.value.getBoundingClientRect(),n=q.value.getBoundingClientRect();if("rtl"!==i.dir.value){const l=n.left-t.left,o=a.left-l,i=e.left-o,r=e.width+i,s=Math.max(r,t.width),u=window.innerWidth-qt,d=Ye(o,qt,Math.max(qt,u-s));h.value.style.minWidth=`${r}px`,h.value.style.left=`${d}px`}else{const l=t.right-n.right,o=window.innerWidth-a.right-l,i=window.innerWidth-e.right-o,r=e.width+i,s=Math.max(r,t.width),u=window.innerWidth-qt,d=Ye(o,qt,Math.max(qt,u-s));h.value.style.minWidth=`${r}px`,h.value.style.right=`${d}px`}const r=o().map((e=>e.ref)),s=window.innerHeight-20,u=w.value.scrollHeight,d=window.getComputedStyle(b.value),p=Number.parseInt(d.borderTopWidth,10),c=Number.parseInt(d.paddingTop,10),v=Number.parseInt(d.borderBottomWidth,10),m=p+c+u+Number.parseInt(d.paddingBottom,10)+v,f=Math.min(5*x.value.offsetHeight,m),g=window.getComputedStyle(w.value),S=Number.parseInt(g.paddingTop,10),
1k=Number.parseInt(g.paddingBottom,10),T=e.top+e.height/2-qt,O=s-T,_=x.value.offsetHeight/2,B=p+c+(x.value.offsetTop+_),C=m-B;if(B<=T){const e=x.value===r[r.length-1];h.value.style.bottom="0px";const t=b.value.clientHeight-w.value.offsetTop-w.value.offsetHeight,a=B+Math.max(O,_+(e?k:0)+t+v);h.value.style.height=`${a}px`}else{const e=x.value===r[0];h.value.style.top="0px";const t=Math.max(T,p+w.value.offsetTop+(e?S:0)+_)+C;h.value.style.height=`${t}px`,w.value.scrollTop=B-T+w.value.offsetTop}h.value.style.margin="10px 0",h.value.style.minHeight=`${f}px`,h.value.style.maxHeight=`${s}px`,l("placed"),requestAnimationFrame((()=>y.value=!0))}}const O=n("");return F((async()=>{await s(),T(),b.value&&(O.value=window.getComputedStyle(b.value).zIndex)})),ee(i.triggerElement,(()=>{T()})),Et({contentWrapper:h,shouldExpandOnScrollRef:y,onScrollButtonChange:function(e){e&&!0===f.value&&(T(),null==S||S(),f.value=!1)}}),(e,t)=>(u(),G("div",{ref_key:"contentWrapperElement",ref:h,style:te({display:"flex",flexDirection:"column",position:"fixed",zIndex:O.value})},[k(v(m),_({ref:v(g),style:{boxSizing:"border-box",maxHeight:"100%"}},{...e.$attrs,...a}),{default:p((()=>[c(e.$slots,"default")])),_:3},16)],4))}}),Nt=i({inheritAttrs:!1,__name:"SelectProvider",props:{context:{type:Object,required:!0}},setup:e=>(Bt(e.context),It(Pt),(e,t)=>c(e.$slots,"default"))});const Wt={key:1};var Vt=i({inheritAttrs:!1,__name:"SelectContent",props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(e,{emit:t}){const a=e,l=C(a,t),o=_t(),i=n();F((()=>{i.value=new DocumentFragment}));const r=n(),s=h((()=>a.forceMount||o.open.value)),m=n(s.value);return V(s,(()=>{setTimeout((()=>m.value=s.value))})),(e,t)=>{var a;return s.value||m.value||(null==(a=r.value)?void 0:a.present)?(u(),d(v(I),{key:0,ref_key:"presenceRef",ref:r,present:s.value},{default:p((()=>[k(Dt,D($({...v(l),...e.$attrs})),{default:p((()=>[c(e.$slots,"default")])),_:3},16)])),_:3},8,["present"])):i.value?(u(),G("div",Wt,[(u(),d(ae,{to:i.value},[k(Nt,{context:v(o)},{default:p((()=>[c(e.$slots,"default")])),_:3},8,["context"])],8,["to"]))])):Y("v-if",!0)}}});const[Ht,Lt]=x("SelectGroup");var Rt=i({__name:"SelectGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,a=A(void 0,"reka-select-group");return Lt({id:a}),(e,l)=>(u(),d(v(m),_({role:"group"},t,{"aria-labelledby":v(a)}),{default:p((()=>[c(e.$slots,"default")])),_:3},16,["aria-labelledby"]))}}),Kt=i({__name:"SelectIcon",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup:e=>(e,t)=>(u(),d(v(m),{"aria-hidden":"true",as:e.as,"as-child":e.asChild},{default:p((()=>[c(e.$slots,"default",{},(()=>[t[0]||(t[0]=le("▼"))]))])),_:3},8,["as","as-child"]))});const[zt,jt]=x("SelectItem");var Ut=i({__name:"SelectItem",props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(e,{emit:t}){var a;const l=e,i=t,{disabled:y}=g(l),f=_t(),b=At(),{forwardRef:w,currentElement:x}=r(),{CollectionItem:q}=K(),S=h((()=>{var e;return St(null==(e=f.modelValue)?void 0:e.value,l.value,f.by)})),T=n(!1),O=n(null!=(a=l.textValue)?a:""),_=A(void 0,"reka-select-item-text");async function B(e){if(e.defaultPrevented)return;const t={originalEvent:e,value:l.value};ne("select.select",C,t)}async function C(e){await s(),i("select",e),e.defaultPrevented||y.value||(f.onValueChange(l.value),f.multiple.value||f.onOpenChange(!1))}async function M(e){var t,a;await s(),e.defaultPrevented||(y.value?null==(t=b.onItemLeave)||t.call(b):null==(a=e.currentTarget)||a.focus({preventScroll:!0}))}async function I(e){var t;await s(),e.defaultPrevented||e.currentTarget===o()&&(null==(t=b.onItemLeave)||t.call(b))}async function D(e){var t;if(await s(),e.defaultPrevented)return;""!==(null==(t=b.searchRef)?void 0:t.value)&&" "===e.key||(xt.includes(e.ke
1y)&&B(e)," "===e.key&&e.preventDefault())}if(""===l.value)throw new Error("A <SelectItem /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return F((()=>{x.value&&b.itemRefCallback(x.value,l.value,l.disabled)})),jt({value:l.value,disabled:y,textId:_,isSelected:S,onItemTextChange:e=>{var t;O.value=(null!=(t=O.value||(null==e?void 0:e.textContent))?t:"").trim()}}),(e,t)=>(u(),d(v(q),{value:{textValue:O.value}},{default:p((()=>[k(v(m),{ref:v(w),role:"option","aria-labelledby":v(_),"data-highlighted":T.value?"":void 0,"aria-selected":S.value,"data-state":S.value?"checked":"unchecked","aria-disabled":v(y)||void 0,"data-disabled":v(y)?"":void 0,tabindex:v(y)?void 0:-1,as:e.as,"as-child":e.asChild,onFocus:t[0]||(t[0]=e=>T.value=!0),onBlur:t[1]||(t[1]=e=>T.value=!1),onPointerup:B,onPointerdown:t[2]||(t[2]=e=>{e.currentTarget.focus({preventScroll:!0})}),onTouchend:t[3]||(t[3]=P((()=>{}),["prevent","stop"])),onPointermove:M,onPointerleave:I,onKeydown:D},{default:p((()=>[c(e.$slots,"default")])),_:3},8,["aria-labelledby","data-highlighted","aria-selected","data-state","aria-disabled","data-disabled","tabindex","as","as-child"])])),_:3},8,["value"]))}}),Gt=i({__name:"SelectItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(e){const t=e,a=zt();return(e,l)=>v(a).isSelected.value?(u(),d(v(m),_({key:0,"aria-hidden":"true"},t),{default:p((()=>[c(e.$slots,"default")])),_:3},16)):Y("v-if",!0)}}),Yt=i({inheritAttrs:!1,__name:"SelectItemText",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(e){const t=e,a=_t(),l=At(),n=zt(),{forwardRef:o,currentElement:i}=r(),s=h((()=>{var e,t,a,l;return{value:n.value,disabled:n.disabled.value,textContent:null!=(l=null!=(a=null==(e=i.value)?void 0:e.textContent)?a:null==(t=n.value)?void 0:t.toString())?l:""}}));return F((()=>{i.value&&(n.onItemTextChange(i.value),l.itemTextRefCallback(i.value,n.value,n.disabled.value),a.onOptionAdd(s.value))})),oe((()=>{a.onOptionRemove(s.value)})),(e,a)=>(u(),d(v(m),_({id:v(n).textId,ref:v(o)},{...t,...e.$attrs}),{default:p((()=>[c(e.$slots,"default")])),_:3},16,["id"]))}}),Xt=i({__name:"SelectPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(e,a)=>(u(),d(v(E),D($(t)),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}}),Jt=i({__name:"SelectScrollButtonImpl",emits:["autoScroll"],setup(e,{emit:a}){const l=a,{getItems:i}=K(),r=At(),s=n(null);function y(){null!==s.value&&(window.clearInterval(s.value),s.value=null)}function f(){null===s.value&&(s.value=window.setInterval((()=>{l("autoScroll")}),50))}function h(){var e;null==(e=r.onItemLeave)||e.call(r),null===s.value&&(s.value=window.setInterval((()=>{l("autoScroll")}),50))}return t((()=>{const e=i().map((e=>e.ref)).find((e=>e===o()));null==e||e.scrollIntoView({block:"nearest"})})),ie((()=>y())),(e,t)=>{var a;return u(),d(v(m),_({"aria-hidden":"true",style:{flexShrink:0}},null==(a=e.$parent)?void 0:a.$props,{onPointerdown:f,onPointermove:h,onPointerleave:t[0]||(t[0]=()=>{y()})}),{default:p((()=>[c(e.$slots,"default")])),_:3},16)}}}),Qt=i({__name:"SelectScrollDownButton",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const a=At(),l="item-aligned"===a.position?$t():void 0,{forwardRef:o,currentElement:i}=r(),s=n(!1);return t((e=>{var t,l;if((null==(t=a.viewport)?void 0:t.value)&&(null==(l=a.isPositioned)?void 0:l.value)){let t=function(){const e=l.scrollHeight-l.clientHeight;s.value=Math.ceil(l.scrollTop)<e};const l=a.viewport.value;t(),l.addEventListener("scroll",t),e((()=>l.removeEventListener("scroll",t)))}})),V(i,(()=>{i.value&&(null==l||l.onScrollButtonChange(i.value))})),(e,t)=>s.value?(u(),d(Jt,{key:0,ref:v(o),onAutoScroll:t[0]||(t[0]=()=>{const{viewport:e,selectedItem:t}=v(a);(null==e?void 0:e.value)&&(null==t?void 0:t.value)&&(e.value.scrollTop=e.value.scrollTop+t.value.offsetHeight)})},{default:p((()=>[c(e.$slots,"default")])),_:3},512)):Y("v-if",!0)}}),Zt=i({__name:"SelectScrollUpButton",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const a=At(),l="item-aligned"===a.position?$t():void 0,{forwardRef:o,currentElement:i}=r(),s=n(!1);return t((e=>{var t,l;if((null==(t=a.viewport)?void 0:t.value)&&(null==(l=a.isPositioned)?void 0:l.value)){let t=function(){s.value=l.scrollTop>0};const l=a.viewport.value;t(),l.addEventListener("scroll",t),e((()=>l.removeEventListener("scroll",t)))}})),V(i,(()=>{i.value&&(null==l||l.onScrollButtonChange(i.value))})),(e,t)=>s.value?(u(),d(Jt,{key:0,ref:v(o),onAutoScroll:t[0]||(t[0]=()=>{const{viewport:e,selectedItem:t}=v(a);(null==e?void 0:e.value)&&(null==t?void 0:t.value)&&(e.value.scrollTop=e.value.scrollTop-t.value.offsetHeight)})},{default:p((()=>[c(e.$slots,"default")])),_:3},512)):Y("v-if",!0)}}),ea=i({__name:"SelectTrigger",props:{disabled:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,a=_t(),{forwardRef:l,currentElement:n}=r(),o=h((()=>{var e;return(null==(e=a.disabled)?void 0:e.value)||t.disabled}));a.contentId||(a.contentId=A(void 0,"reka-select-content")),F((()=>{a.onTriggerChange(n.value)}));const{getItems:i}=K(),{search:s,handleTypeaheadSearch:y,resetTypeahead:f}=Q();function g(){o.value||(a.onOpenChange(!0),f())}function b(e){g(),a.triggerPointerDownPosRef.value={x:Math.round(e.pageX),y:Math.round(e.pageY)}}return(e,t)=>(u(),d(v(W),{"as-child":"",reference:e.reference},{default:p((()=>{var n,r,u,d;return[k(v(m),{ref:v(l),role:"combobox",type:"button"===e.as?"button":void 0,"aria-controls":v(a).contentId,"aria-expanded":v(a).open.value||!1,"aria-required":null==(n=v(a).required)?void 0:n.value,"aria-autocomplete":"none",disabled:o.value,dir:null==(r=v(a))?void 0:r.dir.value,"data-state":(null==(u=v(a))?void 0:u.open.value)?"open":"closed","data-disabled":o.value?"":void 0,"data-placeholder":v(Tt)(null==(d=v(a).modelValue)?void 0:d.value)?"":void 0,"as-child":e.asChild,as:e.as,onClick:t[0]||(t[0]=e=>{var t;
1null==(t=null==e?void 0:e.currentTarget)||t.focus()}),onPointerdown:t[1]||(t[1]=e=>{if("touch"===e.pointerType)return e.preventDefault();const t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&(b(e),e.preventDefault())}),onPointerup:t[2]||(t[2]=P((e=>{"touch"===e.pointerType&&b(e)}),["prevent"])),onKeydown:t[3]||(t[3]=e=>{const t=""!==v(s);!(e.ctrlKey||e.altKey||e.metaKey)&&1===e.key.length&&t&&" "===e.key||(v(y)(e.key,v(i)()),v(wt).includes(e.key)&&(g(),e.preventDefault()))})},{default:p((()=>[c(e.$slots,"default")])),_:3},8,["type","aria-controls","aria-expanded","aria-required","disabled","dir","data-state","data-disabled","data-placeholder","as-child","as"])]})),_:3},8,["reference"]))}}),ta=i({__name:"SelectValue",props:{placeholder:{type:String,required:!1,default:""},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(e){const t=e,{forwardRef:a,currentElement:l}=r(),n=_t();F((()=>{n.valueElement=l}));const o=h((()=>{var e,t;let a=[];const l=Array.from(n.optionsSet.value),o=e=>l.find((t=>St(e,t.value,n.by)));return a=Array.isArray(n.modelValue.value)?n.modelValue.value.map((e=>{var t,a;return null!=(a=null==(t=o(e))?void 0:t.textContent)?a:""})):[null!=(t=null==(e=o(n.modelValue.value))?void 0:e.textContent)?t:""],a.filter(Boolean)})),i=h((()=>o.value.length?o.value.join(", "):t.placeholder));return(e,l)=>(u(),d(v(m),{ref:v(a),as:e.as,"as-child":e.asChild,style:{pointerEvents:"none"},"data-placeholder":o.value.length?void 0:t.placeholder},{default:p((()=>[c(e.$slots,"default",{selectedLabel:o.value,modelValue:v(n).modelValue.value},(()=>[le(re(i.value),1)]))])),_:3}
1,8,["as","as-child","data-placeholder"]))}}),aa=i({__name:"SelectViewport",props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,{nonce:a}=g(t),l=function(e){const t=f({nonce:n()});return h((()=>{var a;return(null==e?void 0:e.value)||(null==(a=t.nonce)?void 0:a.value)}))}(a),o=At(),i="item-aligned"===o.position?$t():void 0,{forwardRef:s,currentElement:d}=r();F((()=>{null==o||o.onViewportChange(d.value)}));const y=n(0);function b(e){const t=e.currentTarget,{shouldExpandOnScrollRef:a,contentWrapper:l}=null!=i?i:{};if((null==a?void 0:a.value)&&(null==l?void 0:l.value)){const e=Math.abs(y.value-t.scrollTop);if(e>0){const a=window.innerHeight-20,n=Number.parseFloat(l.value.style.minHeight),o=Number.parseFloat(l.value.style.height),i=Math.max(n,o);if(i<a){const n=i+e,o=Math.min(a,n),r=n-o;l.value.style.height=`${o}px`,"0px"===l.value.style.bottom&&(t.scrollTop=r>0?r:0,l.value.style.justifyContent="flex-end")}}}y.value=t.scrollTop}return(e,a)=>(u(),G(X,null,[k(v(m),_({ref:v(s),"data-reka-select-viewport":"",role:"presentation"},{...e.$attrs,...t},{style:{position:"relative",flex:1,overflow:"hidden auto"},onScroll:b}),{default:p((()=>[c(e.$slots,"default")])),_:3},16),k(v(m),{as:"style",nonce:v(l)},{default:p((()=>a[0]||(a[0]=[le(" /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-select-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-select-viewport]::-webkit-scrollbar { display: none; } ")]))),_:1,__:[0]},8,["nonce"])],64))}});function la(e){return De(e).getHours()}function na(e,t){const a=De(e),l=De(t);return a.getTime()>l.getTime()}function oa(e,t){return Be(e,-t)}const ia=i({__name:"Select",props:{open:{type:Boolean},defaultOpen:{type:Boolean},defaultValue:{},modelValue:{},by:{type:[String,Function]},dir:{},multiple:{type:Boolean},autocomplete:{},disabled:{type:Boolean},name:{},required:{type:Boolean}},emits:["update:modelValue","update:open"],setup(e,{emit:t}){const a=C(e,t);return(e,t)=>(u(),d(v(Ct),D($(v(a))),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}}),ra=i({inheritAttrs:!1,__name:"SelectContent",props:{forceMount:{type:Boolean},position:{default:"popper"},bodyLock:{type:Boolean},side:{},sideOffset:{},sideFlip:{type:Boolean},align:{},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},emits:["closeAutoFocus","escapeKeyDown","pointerDownOutside"],setup(e,{emit:t}){const a=e,l=t,n=h((()=>{const{class:e,...t}=a;return t})),o=C(n,l);return(t,l)=>(u(),d(v(Xt),null,{default:p((()=>[k(v(Vt),_({...v(o),...t.$attrs},{class:v(se)("relative z-50 max-h-96 min-w-32 overflow-hidden rounded-md border bg-white shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===e.position&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a.class)}),{default:p((()=>[k(v(ca)),k(v(aa),{class:ue(v(se)("p-1","popper"===e.position&&"h-[--reka-select-trigger-height] w-full min-w-[--reka-select-trigger-width]"))},{default:p((()=>[c(t.$slots,"default")])),_:3},8,["class"]),k(v(pa))])),_:3},16,["class"])])),_:3}))}}),sa=i({__name:"SelectGroup",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){const t=e,a=h((()=>{const{class:e,...a}=t;return a}));return(e,l)=>(u(),d(v(Rt),_({class:v(se)("p-1 w-full",t.class)},a.value),{default:p((()=>[c(e.$slots,"default")])),_:3},16,["class"]))}}),ua={class:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center"},da=i({__name:"SelectItem",props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){const t=e,a=h((()=>{const{class:e,...a}=t;return a})),l=q(a);return(e,a)=>(u(),d(v(Ut),_(v(l),{class:v(se)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-icebluetwo data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t.class)}),{default:p((()=>[H("span",ua,[k(v(Gt),null,{default:p((()=>[k(v(je),{class:"h-4 w-4"})])),_:1})]),k(v(Yt),null,{default:p((()=>[c(e.$slots,"default")])),_:3})])),_:3},16,["class"]))}}),pa=i({__name:"SelectScrollDownButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){const t=e,a=h((()=>{const{class:e,...a}=t;return a})),l=q(a);return(e,a)=>(u(),d(v(Qt),_(v(l),{class:v(se)("flex cursor-default items-center justify-center py-1",t.class)}),{default:p((()=>[c(e.$slots,"default",{},(()=>[k(v(de),{class:"h-4 w-4"})]))])),_:3},16,["class"]))}}),ca=i({__name:"SelectScrollUpButton",props:{asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){const t=e,a=h((()=>{const{class:e,...a}=t;return a})),l=q(a);return(e,a)=>(u(),d(v(Zt),_(v(l),{class:v(se)("flex cursor-default items-center justify-center py-1",t.class)}),{default:p((()=>[c(e.$slots,"default",{},(()=>[k(v(Ue),{class:"h-4 w-4"})]))])),_:3},16,["class"]))}}),va=i({__name:"SelectTrigger",props:{disabled:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){const t=e,a=h((()=>{const{class:e,...a}=t;return a})),l=q(a);return(e,a)=>(u(),d(v(ea),_(v(l),{class:v(se)("flex h-10 w-full items-center justify-between rounded-md border border-paleBlue bg-white text-black px-3 py-2 data-[placeholder]:text-black/30 focus:outline-none focus-within:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:truncate text-start",t.class)}),{default:p((()=>[c(e.$slots,"default"),k(v(Kt),{"as-child":""},{default:p((()=>[k(v(de),{class:"w-4 h-4 shrink-0 text-blueberry"})])),_:1})])),_:3},16,["class"]))}}),ma=i({__name:"SelectValue",props:{placeholder:{},asChild:{type:Boolean},as:{}},setup(e){const t=e;return(e,a)=>(u(),d(v(ta),D($(t)),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}}),ya=i({__name:"Popover",props:{defaultOpen:{type:Boolean},open:{type:Boolean},modal:{type:Boolean}},emits:["update:open"],setup(e,{emit:t}){const a=C(e,t);return(e,t)=>(u(),d(v(ct),D($(v(a))),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}}),fa=i({inheritAttrs:!1,__name:"PopoverContent",props:{forceMount:{type:Boolean},side:{},sideOffset:{default:4},sideFlip:{type:Boolean},align:{default:"center"},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean},class:{type:[Boolean,null,String,Object,Array]}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const a=e,l=t,n=h((()=>{const{class:e,...t}=a;return t})),o=C(n,l);return(e,t)=>(u(),d(v(ht),null,{default:p((()=>[k(v(ft),_({...v(o),...e.$attrs},{class:v(se)("z-50 w-72 rounded-md border bg-white p-4 shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
1de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a.class)}),{default:p((()=>[c(e.$slots,"default")])),_:3},16,["class"])])),_:3}))}}),ha=i({__name:"PopoverTrigger",props:{asChild:{type:Boolean},as:{}},setup(e){const t=e;return(e,a)=>(u(),d(v(gt),D($(t)),{default:p((()=>[c(e.$slots,"default")])),_:3},16))}}),ga="16px",ba=({min:e,max:t})=>({title:{text:""},chart:{height:"550px",marginTop:50,marginBottom:120,marginRight:40,plotBorderWidth:1,style:{fontFamily:"Roboto, sans-serif"}},credits:{enabled:!1},exporting:{enabled:!1},legend:{itemStyle:{fontWeight:"normal",fontSize:ga}},plotOptions:{series:{animation:!1,connectNulls:!1,states:{inactive:{opacity:1}},marker:{enabled:!0,radius:1}}},tooltip:{shared:!0,style:{fontSize:ga},backgroundColor:"#e7f0fa",borderColor:"#303193"},xAxis:{type:"datetime",min:e,max:t,labels:{autoRotation:!1,style:{textOverflow:"none",fontSize:ga}},crosshair:!0,tickWidth:0,tickInterval:36e5},responsive:{rules:[{condition:{maxWidth:568},chartOptions:{legend:{width:"50%"}}}]}}),wa=(e,t)=>{const a={};if(t.minMax){const{keys:l,rounding:n}=t.minMax,o=e.flatMap((e=>Array.isArray(l)?l.map((t=>e[t])):[e[l]])).filter((e=>null!==e)),i=Math.min(...o),r=Math.max(...o);let s=Math.floor(i/n)*n,u=Math.ceil(r/n)*n;i%n<-(n-1)&&(s-=n),u-r<n/2&&(u+=n),a.tickAmount=(u-s)/n+1,a.tickInterval=n,a.min=s,a.max=u}else t.tick&&(a.tickAmount=t.tick.amount,a.tickInterval=t.tick.interval,a.min=t.tick.min,a.max=t.tick.max);return{settings:{yAxis:t.yAxis.map((e=>{var t,l,n,o,i,r,s,u,d,p,c;return{labels:{format:`{value}${null!=(t=e.suffix)?t:""}`,formatter:e.labelFormatter,style:{fontSize:"16px"}},title:{align:"high",offset:null!=(l=e.offset)?l:-5,text:null!=(n=e.title)?n:"",rotation:0,y:-20,style:{fontSize:"16px"}},opposite:null!=(o=e.opposite)&&o,min:null!=(i=e.min)?i:a.min,max:null!=(r=e.max)?r:a.max,tickAmount:null!=(s=e.tickAmount)?s:a.tickAmount,tickInterval:null!=(u=e.tickInterval)?u:a.tickInterval,visible:null==(d=e.visible)||d,endOnTick:null==(p=e.endOnTick)||p,alignTicks:null==(c=e.alignTicks)||c}})),series:t.series.map((t=>{var a,l;return{...t,data:t.dataKey?e.map((e=>({x:e.timestamp,y:e[t.dataKey]}))):[],turboThreshold:1500,enableMouseTracking:null==(a=t.enableMouseTracking)||a,yOffset:null!=(l=t.yOffset)?l:0}}))},tickSettings:a}};function xa({weatherStations:e,graph:t,originCoords:a}){var l;const{locale:o,t:i}=pe(),r=ce(),s=n(null!=(l=r.query.station)?l:e[0].id.toString()),u=n({min:null,max:null}),d=n("desktop"),p=h((()=>({fmisid:s.value,observations:!0,radar:!0,daily:!0}))),c=e=>!(null!==e.DewPoint||null!==e.Humidity||null!==e.Pressure||null!==e.SnowDepth||null!==e.TotalCloudCover||null!==e.Visibility||null!==e.WindDirection||null!==e.WindGust||null!==e.WindSpeedMS||null!==e.t2m),v=e=>{const t=Fe(e.localtime,"yyyyMMdd'T'HHmmss",new Date);return Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds())},{data:m,isFetching:y,dataUpdatedAt:f,suspense:g}=ve({queryKey:["observations",p],queryFn:()=>ye.get("weather/observations",{params:p.value}),placeholderData:e=>e,refetchInterval:3e5,staleTime:3e5,refetchIntervalInBackground:!1}),b=h((()=>{var e;const t={};let a=null;return null==(e=m.value)||e.observations.forEach((e=>{if(!c(e)){if(a){const l=v(e)-v(a);let n=t[l];n||(n=0),n++,t[l]=n}a=e}})),t})),w=h((()=>{var e,t;const a=Object.entries(b.value).reduce(((e,[t,a])=>a>e.count?{timestep:parseInt(t),count:a}:e),{timestep:0,count:0}).timestep,l=null!=(t=null==(e=m.value)?void 0:e.observations)?t:[];if(!a)return l;const n=l.find((e=>!c(e)));if(!n)return l;const o=v(n);return l.filter((e=>(v(e)-o)%a==0))})),x=h((()=>{var e,t;return null!=(t=null==(e=w.value)?void 0:e.map((e=>({...e,timestamp:Fe(e.localtime,"yyyyMMdd'T'HHmmss",new Date).valueOf()}))))?t:[]})),q=h((()=>{var e,t;const a={};for(const l of null!=(t=null==(e=m.value)?void 0:e.dailyObservations)?t:[]){const e=Fe(l.localtime,"yyyyMMdd'T'HHmmss",new Date),t=Ne(e,"yyyyMMdd");a[t]||(a[t]={...l,localtime:t});for(const n in l){const e=n;null!==l[e]&&(a[t][e]=l[e])}}return Object.values(a)})),S=h((()=>e.map((e=>{var t,a;let l="";if("name"in e.names&&e.names.name.text)l=e.names.name.text;else if(Array.isArray(e.names)){for(const t of e.names)t.lang===o.value&&(l=t.text);""===l&&(l=null!=(a=null==(t=e.names.find((e=>"fi"===e.lang)))?void 0:t.text)?a:"")}return{...e,name:l}})))),k=h((()=>x.value.filter((e=>{if(null===e.t2m&&null===e.WindDirection&&null===e.WindSpeedMS&&null===e.WindGust&&null===e.TotalCloudCover&&null===e.DewPoint&&null===e.Pressure&&null===e.Humidity&&null===e.SnowDepth&&null===e.Visibility)return!1;const t=oa(We(new Date,"Europe/Helsinki"),2),a=Fe(e.localtime,"yyyyMMdd'T'HHmmss",new Date);return l=t,+De(a)==+De(l)||na(a,t);var l}
1)))),T=h((()=>{var e,t;const a=[];return null==(t=null==(e=m.value)?void 0:e.dailyObservations)||t.forEach((e=>{const t=Ne(Fe(e.localtime,"yyyyMMdd'T'HHmmss",new Date),"yyyyMMdd");a.includes(t)||a.push(t)})),a.length>30?a.slice(a.length-30):a})),O=h((()=>T.value.reduce(((e,t,a)=>(a%2==1&&e.push({from:a-.5,to:a+.5,color:"#f7f7f7"}),e)),[]))),_=h((()=>T.value.filter((e=>e.endsWith("01"))).map((e=>({width:1,value:T.value.indexOf(e)-.5,color:"#999999",dashStyle:"shortdash",zIndex:4}))))),B=h((()=>{var e;return null!=(e=x.value.map((e=>e.timestamp)).slice().sort(((e,t)=>e-t)))?e:[]})),C=h((()=>{const e=B.value.filter((e=>0===De(e).getMinutes()));return e.reduce(((t,a,l)=>(l%2==1&&t.push({from:e[l-1],to:a,color:"rgba(170,170,170,0.1)",id:`plot-band-${new Date(a).toISOString()}`}),t)),[])})),M=h((()=>B.value.filter((e=>{const t=new Date(e);return 0===t.getHours()&&0===t.getMinutes()})).map((e=>({width:1,value:e,color:"#999999",dashStyle:"shortdash",zIndex:4}))))),P=h((()=>S.value.find((e=>e.id.toString()===s.value)))),A=h((()=>{var e;const t=[...null!=(e=null==k?void 0:k.value)?e:[]].reverse();if(!t)return[];const a=e=>{const a=t.find((t=>null!==t[e]));if(!a)return null;const l="string"==typeof a[e]?"":W(a[e],e,!0);return"Precipitation1h"===e?`${l} (${Ne(oa(a.timestamp,1),"HH:mm")}-${Ne(a.timestamp,"HH:mm")})`:l};return[{type:i("temperature"),value:a("t2m")},{type:i("dewpoint"),value:a("DewPoint")},{type:i("humidity"),value:a("Humidity")},{type:i("wind"),value:a("WindSpeedMS")},{type:i("winddirection"),value:a("WindDirection")},{type:i("windgust"),value:a("WindGust")},{type:i("precipitation"),value:a("Precipitation1h")},{type:i("visibility"),value:a("Visibility")},{type:i("cloudcover"),value:a("TotalCloudCover")},{type:i("pressure"),value:a("Pressure")},{type:i("snowdepth"),value:a("SnowDepth")}].filter((e=>null!==e.value))})),I=h((()=>{var e;const t=null==(e=k.value)?void 0:e.at(-1);if(!t)return null;const a=Fe(t.localtime,"yyyyMMdd'T'HHmmss",new Date),l=Ve(a,{locale:o.value,shortFormat:!0});return{weekday:l.charAt(0).toUpperCase()+l.slice(1),time:Ee(a,o.value)}})),D=h((()=>
1{if(!m.value)return!0;const{observations:e,dailyObservations:t}=m.value;return(!e||!e.length)&&!(t&&Array.isArray(t)&&t.length)})),$=h((()=>{var e,t;return(!(null==(e=m.value)?void 0:e.observations)||!m.value.observations.length)&&Array.isArray(null==(t=m.value)?void 0:t.dailyObservations)&&m.value.dailyObservations.length>0})),E=h((()=>S.value.map((e=>{let t;return(null==a?void 0:a.longitude)&&(null==a?void 0:a.latitude)&&(t=function(e,t,a,l){const n=Math.PI*t/180,o=Math.PI*l/180,i=e-a,r=Math.PI*i/180;let s=Math.sin(n)*Math.sin(o)+Math.cos(n)*Math.cos(o)*Math.cos(r);s>1&&(s=1);return s=Math.acos(s),s=180*s/Math.PI,s=60*s*1.1515,s*=1.609344,s=Math.round(10*s)/10,s}(a.longitude,a.latitude,e.coordinates.longitude.text,e.coordinates.latitude.text)),{label:e.name,value:e.id.toString(),distance:t}}))));const N=h((()=>{var e;const t=null==(e=P.value)?void 0:e["visibility-maximum"];return void 0===t?2e4:"m"===t.unit?t.text:"km"===t.unit?1e3*t.text:2e4})),W=(e,t,a=!1)=>{if(null===e)return null;switch(t){case"t2m":case"DewPoint":case"MinimumGroundTemperature06":return`${He(e,o.value)} °C`;case"WindSpeedMS":case"WindGust":return a&&(e=Math.round(e)),`${He(e,o.value,a?0:1)} m/s`;case"WindDirection":{const t=10*Math.round(e/10);return`${Re(t)} (${t}°)`}case"rrday":case"Precipitation1h":return`${He(Math.max(e,0),o.value)} mm`;case"TotalCloudCover":return`${Le(e)} (${e}/8)`;case"Pressure":return`${He(e,o.value)} hPa`;case"Humidity":return`${e} %`;case"SnowDepth06":case"SnowDepth":return`${Math.max(e,0)} cm`;case"Visibility":return(e=>{if(e>=N.value)return i("visOverXkm",{distance:N.value/1e3});if(e>=1e4)return`${Math.round(e/1e3)} km`;if(e>=1e3){const t=100*Math.round(e/100)/1e3,a=t-Math.floor(t)!=0;return`${He(t,o.value,a?1:0)} km`}return 100*Math.round(e/100)+" m"})(e)}},H=(e,t,a,l)=>{var n;const r="string"==typeof t?Fe(t,"yyyyMMdd",new Date):t,s=Ve(r,{shortFormat:!0,locale:o.value});let u=`<b>${s.charAt(0).toUpperCase()+s.slice(1)} ${Ee(r,o.value,a)}</b><br>`;for(const d of null!=e?e:[]){const{dataType:e,dataKey:t}=d.series.options;switch(e){case"gust":case"winddirection":break;case"windspeed":{u+=`${d.series.name}: ${W(d.y,t)}<br>`;const e=x.value.find((e=>e.timestamp===d.x));(null==e?void 0:e.WindGust)&&(u+=`${i("windgust")}: ${W(e.WindGust,"WindGust")}<br>`),(null==e?void 0:e.WindDirection)&&(u+=`${i("winddirection")}: ${W(e.WindDirection,"WindDirection")}<br>`);break}case"temp":u+=`${d.series.name}: ${He(d.y,o.value)} °C<br>`;break;case"minmaxTemp":u+=`${d.series.name}: ${He(d.point.low,o.value)} °C...${He(d.point.high,o.value)} °C<br>`;break;default:{const e=W(d.y,t);e&&(u+=`${d.series.name}: ${e}<br>`);break}}}if(l){const e=new Date(t);e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0);const a=Be(e,1),l=null==(n=x.value.find((e=>e.timestamp===a.getTime())))?void 0:n.Precipitation1h;if(null!=l&&l>=0){const t=Ne(a,"H:00"),n=Ne(new Date(e),"H:00");u+=`${i("precipitationAmount")}: ${He(l,o.value)} mm (${n}-${t})`}}return u},L=h((()=>{const e=ba(Z.value),t=e.xAxis.labels;return{...e,xAxis:{...e.xAxis,categories:B.value,plotBands:C.value,plotLines:M.value,labels:{...t,formatter:function(){var e,t;return((e,t,a)=>{const l=new Date(e);return 0===la(l)?`<b>${$e(e,t)}<br/>${Ee(e,t,"d.M.")}</b>`:a<576&&(la(l)>=22||la(l)<=2)?"":la(l)%2!=0?Ee(e,t,a>1e3?"H:mm":"H"):""})(this.value,o.value,null!=(t=null==(e=document.getElementById("observation-tabs"))?void 0:e.clientWidth)?t:0)}}},tooltip:{...e.tooltip,formatter:function(){return H(this.points,this.x,"d.M. H:mm",!1)}}}})),R=h((()=>{const e=ba(Z.value),t=e.xAxis.labels;return{...e,xAxis:{...e.xAxis,categories:T.value,plotBands:O.value,plotLines:_.value,min:0,max:T.value.length-1,tickInterval:1,labels:{...t,formatter:function(){var e,t;return((e,t,a,l)=>{if(parseInt(e)>1e10)return"";if(l<768&&t%7!=0||l>=768&&t%2!=0)return"";const n=Fe(e,"yyyyMMdd",new Date);return`<b>${$e(n,a)}<br/>${Ee(n,a,"d.M.")}</b>`})(this.value.toString(),this.pos,o.value,null!=(t=null==(e=document.getElementById("observation-tabs"))?void 0:e.clientWidth)?t:0)}}},tooltip:{...e.tooltip,formatter:function(){return H(this.points,this.x,"d.M.",!1)}}}})),K=h((()=>{var e,t,a,l;const{settings:n,tickSettings:o}=wa(x.value,{minMax:{keys:["t2m","DewPoint"],rounding:5},yAxis:[{title:"°C"},{title:"mm",opposite:!0}],series:[{name:i("temperature"),dataKey:"t2m",color:"#910000",dataType:"temp",zIndex:3},{name:i("dewpoint"),dataKey:"DewPoint",color:"#339900",dashStyle:"shortdot",dataType:"temp",zIndex:2},{name:i("precipitationAmount"),dataKey:"Precipitation1h",type:"column",color:"#1e6ed6",yAxis:1,dataType:"rain1h",enableMouseTracking:!1,zIndex:1}]}),r={...L.value,...n,tooltip:{...L.value.tooltip,formatter:function(){return H(this.points,this.x,"d.M. H:mm",!0)}}},s=Math.max(...null!=(a=null==(t=null==(e=m.value)?void 0:e.observations)?void 0:t.map((e=>{var t;return null!=(t=e.Precipitation1h)?t:0})))?a:[0]);let u=1,d=(Math.max(null!=(l=o.tickAmount)?l:1,1)-1)/u;for(;s>d-1;
1)d<=1&&(d=1),d*=2,u*=2;return r.yAxis[1].min=0,r.yAxis[1].max=d,r.yAxis[1].tickInterval=u,r.yAxis[0].plotLines=[{value:0,width:1,color:"#333333",zIndex:3}],{...r,plotOptions:{...r.plotOptions,column:{pointRange:72e5,pointPlacement:-.25}}}})),z=h((()=>{const{settings:e}=wa(x.value,{minMax:{keys:["WindSpeedMS","WindGust"],rounding:2},yAxis:[{title:"m/s",offset:-20}],series:[{name:i("windspeed"),dataKey:"WindSpeedMS",color:"#910000",dataType:"windspeed"},{name:i("windgust"),dataKey:"WindGust",color:"#deb2b2",dashStyle:"shortdot",dataType:"gust"},{name:i("winddirection"),type:"windbarb",color:"#02b8ce",dataType:"winddirection",yOffset:-360}]}),t={...L.value,...e},a=x.value.reduce(((e,t,a)=>{const l=a%6!=2||!t.WindDirection;return e.push([t.timestamp,l?-1:t.WindSpeedMS>=1?1:0,t.WindDirection]),e}),[]),l=x.value.reduce(((e,t,a)=>{const l=a%12!=5||!t.WindDirection;return e.push([t.timestamp,l?-1:t.WindSpeedMS>=1?1:0,t.WindDirection]),e}),[]);return t.series[2].keys=["x","value","direction"],t.series[2].data=a,{...t,chart:{...t.chart,events:{redraw:function(){this.chartWidth<768&&"desktop"===d.value?(d.value="mobile",this.series.forEach((e=>{"winddirection"===e.options.dataType&&e.setData(l)}))):this.chartWidth>=768&&"mobile"===d.value&&(d.value="desktop",this.series.forEach((e=>{"winddirection"===e.options.dataType&&e.setData(a)})))}}}}})),j=h((()=>{const{settings:e}=wa(x.value,{tick:{min:0,max:100,interval:10},yAxis:[{title:"%"}],series:[{name:i("humidity"),dataKey:"Humidity",color:"#910000",dataType:"humidity"}]});return{...L.value,...e}})),U=h((()=>{const{settings:e}=wa(x.value,{minMax:{keys:"Pressure",rounding:5},yAxis:[{title:"hPa"}],series:[{name:i("pressure"),dataKey:"Pressure",color:"#910000",dataType:"pressure"}]});return{...L.value,...e}})),G=h((()=>{var e,t,a,l,n,o,r;const s=null!=(a=null==(t=null==(e=P.value)?void 0:e["visibility-maximum"])?void 0:t.text)?a:0;let u=2e4;s>=75e3?u=8e4:s>=5e4&&(u=6e4);const d=null==(n=null==(l=m.value)?void 0:l.observations)?void 0:n.some((e=>null!==e.TotalCloudCover)),p=null==(r=null==(o=m.value)?void 0:o.observations)?void 0:r.some((e=>null!==e.Visibility)),{settings:c}=wa(x.value,{tick:{min:0,max:u,interval:u/4},yAxis:[{title:"km",labelFormatter:function(){return(this.pos/1e3).toString()},offset:-15,visible:p,endOnTick:!1,alignTicks:!1},{suffix:"/8",opposite:p,visible:d,max:8,tickInterval:2,endOnTick:!1,alignTicks:!1}],series:[{name:i("visibility"),dataKey:"Visibility",color:"#910000",dataType:"visibility",zIndex:1},{name:i("cloudcover"),dataKey:"TotalCloudCover",color:"#6dc1dc",type:"column",dataType:"cloudCover",yAxis:1}]});return{...L.value,...c,plotOptions:{...L.value.plotOptions,column:{pointRange:6e5,pointPadding:0,groupPadding:0,borderWidth:0}}}})),Y=h((()=>{var e;const{settings:t}=wa(null!=(e=q.value)?e:[],{tick:{min:1e-6},yAxis:[{title:"cm",offset:-15}],series:[{name:i("snowdepthGraphDescription"),dataKey:"SnowDepth06",color:"#1e6ed6",dataType:"snowdepth",type:"column"}]});return{...R.value,...t}})),X=h((()=>{var e,t,a,l,n,o,r;let s=!1,u=!1,d=!1;const p={};null==(e=m.value)||e.dailyObservations.forEach((e=>{const t=Ne(Fe(e.localtime,"yyyyMMdd'T'HHmmss",new Date),"yyyyMMdd");let a=p[t];a||(a={minMax:[null,null],groundTemp:null,precipitation:null}),null!==e.MinimumTemperature&&null!==e.MaximumTemperature&&(a.minMax=[e.MinimumTemperature,e.MaximumTemperature],s=!0),null!==e.MinimumGroundTemperature06&&(a.groundTemp=e.MinimumGroundTemperature06,u=!0),null!==e.rrday&&(a.precipitation=e.rrday,d=!0),p[t]=a}));const c=[],v=[],y=[];T.value.forEach((e=>{const t=p[e];void 0!==t.minMax?c.push(t.minMax):c.push([null,null]),void 0!==t.groundTemp?v.push(t.groundTemp):v.push(null),void 0!==t.precipitation?y.push(t.precipitation):y.push(null)}));const f=s||u,{settings:h,tickSettings:g}=wa(null!=(t=q.value)?t:[],{minMax:{keys:["MaximumTemperature","MinimumTemperature","MinimumGroundTemperature06"],rounding:5},yAxis:[{title:"°C",offset:-20,visible:f},{title:"mm",offset:-20,opposite:f,visible:d}],series:[{name:i("dailyMinMaxTemp"),color:"#910000",dataType:"minmaxTemp",type:"columnrange",pointPlacement:0,zIndex:11,yAxis:0,showInLegend:s},{name:i("dailyMinGroundTemp"),color:"#b0b000",dataType:"temp",pointPlacement:0,marker:{enabled:!0,symbol:"circle",radius:5},lineWidth:0,states:{hover:{lineWidthPlus:0}},zIndex:12,yAxis:0,showInLegend:u},{name:i("dailyPrecipitation"),dataKey:"rrday",type:"column",color:"#1e6ed6",dataType:"dailyPrecipitation",pointPlacement:f?.2:0,yAxis:1,zIndex:10,showInLegend:d}]}),b={...R.value,...h,tooltip:{...R.value.tooltip,formatter:function(){return H(this.points,this.x,"d.M.",!0)}}},w=Math.max(...null!=(n=null==(l=null==(a=m.value)?void 0:a.dailyObservations)?void 0:l.map((e=>{var t;return null!=(t=e.rrday)?t:0})))?n:[0]),x=Math.max(2*((null!=(o=g.tickAmount)?o:0)-1),20,w+1);return b.yAxis[1].min=0,b.yAxis[1].max=x,b.yAxis[1].tickInterval=2,b.yAxis[1].tickAmount=(null!=(r=g.tickAmount)?r:0)<0?void 0:g.tickAmount,b.yAxis[0].plotLines=[{value:0,width:1,color:"#333333",zIndex:3}],b.series[0].data=c,b.series[1].data=v,b.series[2].data=y,b})),J=h((()=>{var e,t,a,l;const n=null==(t=null==(e=m.value)?void 0:e.observations)?void 0:t.reduce(((e,t)=>{for(const a in t)null!==t[a]&&(e[a]=!0);return e}),{}),o=(null==n?void 0:n.Visibility)&&(null==n?void 0:n.TotalCloudCover)?i("visAndCloudcover"):(null==n?void 0:n.Visibility)?i("onlyVis"):i("onlyCloudcover");return[{id:"weather",tabTitle:i("weather"),graphOptions:K.value,visible:null==n?void 0:n.t2m},{id:"wind",tabTitle:i("wind"),graphOptions:z.value,visible:null==n?void 0:n.WindSpeedMS},{id:"humidity",tabTitle:i("humidity"),graphOptions:j.value,visible:null==n?void 0:n.Humidity},{id:"pressure",tabTitle:i("pressure"),graphOptions:U.value,visible:null==n?void 0:n.Pressure},{id:"visibility",tabTitle:o,graphOptions:G.value,visible:(null==n?void 0:n.Visibility)||(null==n?void 0:n.TotalCloudCover)},{id:"snowdepth",tabTitle:i("snowdepth"),graphOptions:Y.value,visible:null==(l=null==(a=m.value)?void 0:a.dailyObservations)?void 0:l.some((e=>null!==e.SnowDepth06&&e.SnowDepth06>=0))},{id:"daily",tabTitle:i("dailyValues"),graphOptions:X.value,visible:!0}]})),Q=h((()=>{const e=B.value;if(!e.length)return null;const t=e.at(-1);return{min:Math.max(oa(t,24).valueOf(),e[0]),max:t}}
1)),Z=h((()=>{var e,t,a,l,n,o;return{min:null!=(a=null!=(t=u.value.min)?t:null==(e=Q.value)?void 0:e.min)?a:null,max:null!=(o=null!=(n=u.value.max)?n:null==(l=Q.value)?void 0:l.max)?o:null}})),ee=()=>{var e;null!==u.value.max&&null!==u.value.min&&(null==(e=t.value)||e.xAxis[0].setExtremes(u.value.min,u.value.max,!0,!1))},te=h((()=>{var e;return na(null!=(e=Z.value.min)?e:0,B.value[0])})),ae=h((()=>{var e,t;return Ke(null!=(e=Z.value.max)?e:0,null!=(t=B.value.at(-1))?t:0)})),le=()=>{var e;const t=Z.value;null!==t.max&&null!==t.min&&ae.value&&(u.value.max=Math.min(Be(t.max,24).valueOf(),null!=(e=B.value.at(-1))?e:t.max),u.value.min=Math.max(oa(u.value.max,24).valueOf(),B.value[0]),ee())},ne=()=>{var e,t,a;let l="";if(r.query.parameter){const t=null==(e=J.value.find((e=>e.id===r.query.parameter)))?void 0:e.id;t&&(l=t)}return(null==(t=J.value.find((e=>e.id===l)))?void 0:t.visible)?l:null==(a=J.value.find((e=>e.visible)))?void 0:a.id},oe=n(ne());V((()=>m.value),(()=>{oe.value=ne()})),V((()=>B.value),((e,t)=>{var a,l;!Ke(null!=(a=u.value.max)?a:0,null!=(l=t.at(-1))?l:0)&&ae.value&&le()}));const{get:ie}=me("locationStation");return F((()=>{var e;if(!r.query.station){const t=null!=(e=ie())?e:{},a=decodeURIComponent(r.path);t[a]&&(s.value=t[a])}})),{ariaUpdateTime:h((()=>Ne(f.value,"H:mm"))),selectedStationId:s,dropdownItems:E,hasMissingData:D,isFetching:y,onlyDailyValues:$,latestObservations:k,latestObservationTime:I,selectedStation:P,stationData:A,selectedTab:oe,visibleTabs:h((()=>J.value.filter((e=>e.visible)))),canShowPreviousTimespan:te,canShowNextTimespan:ae,showPreviousTimespan:()=>{var e;const t=Z.value;null!==t.max&&null!==t.min&&te.value&&(u.value.min=Math.max(oa(t.min,24).valueOf(),B.value[0]),u.value.max=Math.min(Be(u.value.min,24).valueOf(),null!=(e=B.value.at(-1))?e:Be(u.value.min,24).valueOf()),ee())},showNextTimespan:le}}const qa={key:0,class:"error-panel"},Sa={key:1},ka={class:"flex justify-between items-center"},Ta={class:"mt-0"},Oa={class:"hidden lg:block"},_a={"aria-live":"polite","aria-atomic":"true",class:"sr-only"},Ba={class:"flex w-full mb-2"},Ca={for:"stationSelector",class:"flex flex-col sm:flex-row w-full"},Ma={class:"bg-blueberry text-white w-full flex sm:w-auto sm:items-center px-3 py-2 rounded-t-2xl sm:px-3 sm:rounded-l-2xl sm:rounded-r-none sm:whitespace-nowrap"},Pa={class:"relative"},Aa={key:0,class:"notification-panel"},Ia=["aria-label"],Da={key:0,class:"notification-panel"},$a={key:1,class:"notification-panel"},Ea={key:2},Fa={class:"flex w-full items-center justify-between mb-4"},Na={class:"flex flex-col sm:flex-row"},Wa={class:"font-bold mr-1"},Va={class:"font-bold text-lg mb-2"},Ha={class:"flex flex-col sm:flex-row sm:flex-wrap"},La={class:"font-bold w-1/3 sm:w-5/12"},Ra={class:"w-2/3 sm:w-5/12"},Ka=["aria-label"],za={key:0,class:"w-full flex justify-between px-8 -mt-12 relative"},ja={class:"mt-8"},Ua={class:"block lg:hidden mt-4"},Ga={key:2,class:"absolute w-full h-full top-0 bg-black/5 flex items-center justify-center"},Ya=i({__name:"Observations",props:{weatherStations:{},originCoordinates:{},pageType:{}},emits:["stationChange"],setup(e,{emit:a}){const l=a,o=e,i=n(),r=n(!1);(()=>{if(o.weatherStations&&0!==o.weatherStations.length||(r.value=!0),o.originCoordinates&&"object"==typeof o.originCoordinates){const e=o.originCoordinates.latitude,t=o.originCoordinates.longitude;(isNaN(e)||isNaN(t))&&(r.value=!0)}})();const{ariaUpdateTime:s,selectedStationId:c,dropdownItems:m,hasMissingData:y,isFetching:f,onlyDailyValues:g,latestObservations:b,latestObservationTime:w,selectedStation:x,stationData:q,selectedTab:S,visibleTabs:T,canShowPreviousTimespan:O,canShowNextTimespan:_,showPreviousTimespan:B,showNextTimespan:C}=xa({weatherStations:o.weatherStations,graph:h((()=>{var e;return null==(e=i.value)?void 0:e[0].chartRef})),originCoords:o.originCoordinates}),{get:M,set:P}=me("locationStation"),{locale:A,t:I}=pe(),D=ce(),$=fe(),E=e=>{var t;$.replace({path:decodeURIComponent(D.path),query:{...D.query,station:e}});const a=decodeURIComponent(D.path),l=null!=(t=M())?t:{};l[a]=e,P(l)},N=e=>{$.replace({path:decodeURIComponent(D.path),query:{...D.query,parameter:e}})},W=e=>{let t="";return t="fi"===A.value||"sv"===A.value?(""+e).replace(".",","):""+e,t};t((()=>{x.value&&l("stationChange",x.value)}));const V=n(!1);return F((()=>{V.value=!0})),(e,t)=>{var a,l,n,h;const M=we,P=ma,D=va,$=da,F=sa,L=ra,R=ia,K=ge,z=ha,j=fa,U=ya,Q=Me,Z=Ce,ee=Ae,te=Pe,ae=Ie;return v(r)?(u(),G("div",qa,re(v(I)("missingObservationDataMessage")),1)):(u(),G("div",Sa,[H("div",ka,[H("h2",Ta,re(v(I)("nearestObservations")),1),H("div",Oa,["fi"===v(A)?(u(),d(M,{key:0,to:v(I)("urlToHoxInObsStations")},{default:p((()=>[le(re(v(I)("errorsAtStations")),1)])),_:1},8,["to"])):Y("",!0)])]),H("span",_a,re(v(I)("ariaComponentHasBeenUpdated",{component:v(I)("ariaComponentLocalWxObservations"),time:v(s)})),1),H("div",Ba,[H("label",Ca,[H("span",Ma,re(v(I)("obsStation"))+":",1),k(R,{id:"stationSelector",modelValue:v(c),"onUpdate:modelValue":[t[0]||(t[0]=e=>he(c)?c.value=e:null),E],"aria-label":v(I)("ariaObservationSelector")},{default:p((()=>[k(D,{class:"bg-lightIcebluetwo text-blueberry rounded-b-2xl rounded-t-none sm:rounded-l-none sm:rounded-r-2xl"},{default:p((()=>[k(P)])),_:1}),k(L,null,{default:p((()=>[k(F,null,{default:p((()=>[(u(!0),G(X,null,J(v(m),(e=>(u(),d($,{key:e.value,value:e.value.toString()},{default:p((()=>[le(re(e.label),1),e.distance?(u(),G(X,{key:0},[le(re(v(I)("distanceFromForecastLocation",{distance:W(e.distance)})),1)],64)):Y("",!0)])),_:2},1032,["value"])))),128))])),_:1})])),_:1})])),_:1},8,["modelValue","aria-label"])])]),H("div",Pa,[v(y)?(u(),G("div",Aa,re(v(I)("missingObservationDataMessage")),1)):(u(),G("div",{key:1,class:ue(("cn"in e?e.cn:v(se))(v(f)&&"opacity-50"))},[H("div",{"aria-label":v(I)("landmark_localwx_obs_latestvalues")},[v(g)?(u(),G("div",Da,re(v(I)("observationsOnlyDailyValues")),1)):v(b).length?(u(),G("div",Ea,[H("div",Fa,[H("div",Na,[H("span",Wa,re(v(I)("latestObservation"))+":",1),H("span",null,re(null==(a=v(w))?void 0:a.weekday)+" "+re(null==(l=v(w))?void 0:l.time),1)]),"fi"===v(A)&&null!==(null==(h=null==(n=v(x))?void 0:n.descriptions)?void 0:h.description.text)?(u(),d(U,{key:0},{default:p((()=>[k(z,{"as-child":""},{default:p((()=>[k(K,{class:"fmi-info-icon size-8 rounded-full ml-auto","aria-label":v(I)("ariaObsStationInfoBtn")},null,8,["aria-label"])])),_:1}),k(j,{side:"bottom",class:"mr-[1rem] sm:mr-[4rem] sm:mt-[-2.5rem] lg:mr-[6rem]"},{default:p((()=>{var e,t,a;return[H("div",Va,re(null==(e=v(x))?void 0:e.name),1),H("p",null,re(null==(a=null==(t=v(x))?void 0:t.descriptions)?void 0:a.description.text),1)]})),_:1})])),_:1})):Y("",!0)]),H("div",Ha,[(u(!0),G(X,null,J(v(q),((e,t)=>(u(),G("div",{key:t,class:"flex sm:w-1/2 sm:mb-2"},[H("span",La,re(e.type),1),H("span",Ra,re(e.value),1)])))),128))])])):(u(),G("div",$a,re(v(I)("observationsTooOld")),1))],8,Ia),H("div",{class:"w-full","aria-label":v(I)("landmark_localwx_obs_tabs")},[k(ae,{id:"observation-tabs",modelValue:v(S),"onUpdate:modelValue":[t[1]||(t[1]=e=>he(S)?S.value=e:null),N]},{default:p((()=>[v(T).length>1?(u(),d(Z,{key:0,class:"flex justify-start"},{default:p((()=>[(u(!0),G(X,null,J(v(T),(e=>(u(),d(Q,{key:e.tabTitle,value:e.id,onClick:t=>(e=>{let t,a;"local"===o.pageType?(t=qe,a=Se):"coastal"===o.pageType?(t=ke,a=Te):"fin_obs"===o.pageType&&(t=Oe,a=_e),t&&a&&xe(t,a,e)})(e.tabTitle)},{default:p((()=>[le(re(e.tabTitle),1)])),_:2},1032,["value","onClick"])))),128))])),_:1})):Y("",!0),(u(!0),G(X,null,J(v(T),(e=>(u(),d(te,{key:`${e.tabTitle}-${v(c)}${v(f)?"-fetching":""}${v(V)?"":"-mounting"}`,value:e.id},{default:p((()=>[k(ee,{ref_for:!0,ref_key:"graph",ref:i,fields:{chartOptions:e.graphOptions},"observation-graph":""},null,8,["fields"]),e.tabTitle!==v(I)("snowdepth")&&e.tabTitle!==v(I)("dailyValues")?(u(),G("div",za,[k(K,{class:"rounded-full size-10",variant:"outline","aria-label":v(I)("ariaObsStationGraphPrevTimespan"),disabled:!v(O),onClick:v(B)},{default:p((()=>[k(v(ze))])),_:1},8,["aria-label","disabled","onClick"]),k(K,{class:"rounded-full size-10",variant:"outline","aria-label":v(I)("ariaObsStationGraphNextTimespan"),disabled:!v(_),onClick:v(C)},{default:p((()=>[k(v(be))])),_:1},8,["aria-label","disabled","onClick"])])):Y("",!0)])),_:2},1032,["value"])))),128))])),_:1},8,["modelValue"])],8,Ka),H("div",ja,[k(M,{to:v(I)("urlToDownloadObsData")},{default:p((()=>[le(re(v(I)("linkToObsDownloadPage")),1)])),_:1},8,["to"])]),H("div",Ua,["fi"===v(A)?(u(),d(M,{key:0,to:v(I)("urlToHoxInObsStations")},{default:p((()=>[le(re(v(I)("errorsAtStations")),1)])),_:1},8,["to"])):Y("",!0)])],2)),v(f)?(u(),G("div",Ga,[k(v(Ge),{class:"animate-spin size-10"})])):Y("",!0)])]))}}});
1export{je as C,Ge as L,va as _,Ue as a,ma as b,Ye as c,ra as d,sa as e,da as f,ia as g,Ya as h};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.