1import{d as U,i as J,r as w,c as p,S as Q,o as h,l as C,w as T,u as t,bR as X,p as I,g as c,V as N,e as n,b as M,F as q,f as B,L as d,n as m,t as u,j as Y,_ as Z}from"./B1HgvGcc.js";import{V as ee}from"./BoR5jcI3.js";import"./hsM9y0aY.js";const te={class:"marquee-track"},ae={class:"marquee-track"},oe=U({inheritAttrs:!1,__name:"WeatherWidgetRow",props:{color:{},variant:{default:"single"}},setup(P){const F=P,z=J("siteTheme",w({})),L=p(()=>{var e,a;return((a=(e=z.value)==null?void 0:e.siteTema)==null?void 0:a.corPrimaria)||"#2196f3"}),R=p(()=>{var e,a;return((a=(e=z.value)==null?void 0:e.siteTema)==null?void 0:a.corSecundaria)||"#03a9f4"}),_=p(()=>{var e,a;return((a=(e=z.value)==null?void 0:e.siteCustomizacao)==null?void 0:a.weatherLocation.city)||""}),k=p(()=>{var e,a;return((a=(e=z.value)==null?void 0:e.siteCustomizacao)==null?void 0:a.weatherLocation.state)||""}),o=p(()=>F.color==="primary"?R.value:L.value),G=p(()=>F.color==="primary"?L.value:R.value),f={Clear:"mdi-weather-sunny",Clouds:"mdi-weather-cloudy",Rain:"mdi-weather-pouring",Snow:"mdi-weather-snowy",Thunderstorm:"mdi-weather-lightning",Mist:"mdi-weather-fog",Fog:"mdi-weather-fog",Drizzle:"mdi-weather-rainy",Haze:"mdi-weather-hazy",default:"mdi-weather-cloudy-alert"},l=w(null),b=w(null),V=w(!0),W=w(!0);Q(async()=>{if(!(!_.value||!k.value)){V.value=!0,W.value=!0;try{l.value=await $fetch("/api/getWeather",{method:"GET",query:{city:_.value,state:k.value,type:"current"}})}catch{l.value=null}finally{V.value=!1}try{b.value=await $fetch("/api/getWeather",{method:"GET",query:{city:_.value,state:k.value,type:"forecast"}})}catch{b.value=null}finally{W.value=!1}}});const y=p(()=>{const e=b.value;return e?Array.isArray(e)?e:Array.isArray(e.list)?e.list:[]:[]}),x=p(()=>{if(!y.value.length)return[];const e={};for(const a of y.value){const i=a.timestamp?a.timestamp*1e3:Date.now(),r=new Date(i).toISOString().split("T")[0],v=a.min_temp??a.temp,S=a.max_temp??a.temp;e[r]?(e[r].minTemp=Math.min(e[r].minTemp,v),e[r].maxTemp=Math.max(e[r].maxTemp,S),e[r].icons.push(a.weather)):e[r]={minTemp:v,maxTemp:S,icons:[a.weather],date:r}}return Object.values(e).sort((a,i)=>new Date(a.date).getTime()-new Date(i.date).getTime()).slice(0,7).map(a=>({...a,minTemp:Math.round(a.minTemp),maxTemp:Math.round(a.maxTemp),icon:f[a.icons[Math.floor(a.icons.length/2)]]||f.default}))}),D=p(()=>{var j,E;if(!y.value.length||!l.value)return null;const e=x.value;if(!e.length)return null;const a=e[0],s=e.slice(1).map(g=>g.minTemp).filter(g=>typeof g=="number"),r=(a==null?void 0:a.maxTemp)??l.value.max_temp??0;let v=l.value.min_temp??l.value.temp??0;s.length>0&&(v=Math.round(s.reduce((g,K)=>g+K,0)/s.length));const S=f[((E=(j=y.value)==null?void 0:j[0])==null?void 0:E.weather)??"default"]||f.default;return{date:a.date,minTemp:v,maxTemp:r,icon:S}}),A=p(()=>{if(!x.value.length||!D.value)return x.value;const e=[...x.value];return e[0]={...e[0],...D.value},e}),H=p(()=>{var a,i;const e=(i=(a=y.value)==null?void 0:a[0])==null?void 0:i.weather;return e&&f[e]||f.default}),$=e=>e?new Date(e*1e3).toLocaleTimeString("pt-BR",{hour:"2-digit",minute:"2-digit"}):"--:--",O=e=>{const a=new Date(e+"T00:00:00"),i=a.toLocaleDateString("pt-BR",{weekday:"long"}),s=String(a.getDate()).padStart(2,"0"),r=String(a.getMonth()+1).padStart(2,"0");return`${s}/${r} ${i}`};return(e,a)=>(h(),C(ee,{class:"overflow-hidden w-100",elevation:0,style:m({backgroundColor:t(G)}),rounded:"0"},{default:T(()=>[t(V)||t(W)?(h(),C(X,{key:0,indeterminate:"","aria-label":"Carregando",height:"2",class:"my-2",color:t(o)},null,8,["color"])):e.variant==="single"&&t(l)?(h(),C(I,{key:1,"no-gutters":"",class:"py-2 marquee"},{default:T(()=>[c(N,{class:"d-flex align-center"},{default:T(()=>[n("div",te,[(h(),M(q,null,B(3,i=>{var s,r;return n("div",{key:i,class:"d-flex align-center marquee-block"},[c(d,{icon:"mdi-map-marker",color:t(o),size:"var(--theme-font-size-medium)",class:"mr-1"},null,8,["color"]),n("span",{class:"font-weight-bold mr-4",style:m({color:t(o),fontSize:"var(--theme-font-size-medium)"})},u(t(_))+", "+u(t(k)),5),c(d,{icon:t(H),color:t(o),size:"var(--theme-font-size-medium)",class:"mr-1"},null,8,["icon","color"]),n("span",{class:"mr-4",style:m({color:t(o),fontSize:"var(--theme-font-size-medium)"})},u(Math.round(t(l).temp??0))+"°C ",5),c(d,{icon:"mdi-thermometer",color:t(o),size:"18",class:"mr-1"},null,8,["color"]),n("span",{class:"mr-4",style:m({color:t(o)})}," Sensação: "+u(Math.round(t(l).feels_like??t(l).temp??0))+"°C ",5),c(d,{icon:"mdi-menu-up",color:t(o),size:"18",class:"mr-1"},null,8,["color"]),n("span",{style:m({color:t(o)})},u(((s=t(D))==null?void 0:s.maxTemp)??"â")+"°",5),c(d,{icon:"mdi-menu-down",color:t(o),size:"18",class:"mx-1"},null,8,["color"]),n("span",{style:m({color:t(o)})},u(((r=t(D))==null?void 0:r.minTemp)??"â")+"°",5),c(d,{icon:"mdi-water-percent",color:t(o),size:"18",class:"ml-4 mr-1"},null,8,["color"]),n("span",{style:m({color:t(o)})}," Umidade: "+u(t(l).humidity??"â")+"% ",5),c(d,{icon:"mdi-weather-windy",color:t(o),size:"18",class:"ml-4 mr-1"},null,8,["color"]),n("span",{style:m({color:t(o)})}," Vento: "+u(Math.round(t(l).wind_speed??0))+" km/h ",5),c(d,{icon:"mdi-weather-sunset-up",color:t(o),size:"18",class:"ml-4 mr-1"},null,8,["color"]),n("span",{style:m({color:t(o)})}," Nascer: "+u($(t(l).sunrise)),5),c(d,{icon:"mdi-weather-sunset-down",color:t(o),size:"18",class:"ml-4 mr-1"},null,8,["color"]),n("span",{style:m({color:t(o)})}," Pôr: "+u($(t(l).sunset)),5)])}),64))])]),_:1})]),_:1})):e.variant==="multiple"&&t(A).length?(h(),C(I,{key:2,"no-gutters":"",class:"py-2 marquee"},{default:T(()=>[c(N,{class:"d-flex align-center"},{default:T(()=>[n("div",ae,[(h(),M(q,null,B(3,i=>n("div",{key:i,class:"d-flex align-center marquee-block"},[(h(!0),M(q,null,B(t(A),(s,r)=>(h(),M("div",{key:r,class:"d-flex align-center mr-8"},[c(d,{icon:s.icon,color:t(o),size:"var(--theme-font-size-medium)",class:"mr-1"},null,8,["icon","color"]),n("span",{class:"font-weight-bold mr-2",style:m({color:t(o),fontSize:"var(--theme-font-size-medium)"})},u(r===0?"Hoje":O(s.date)),5),c(d,{icon:"mdi-menu-up",color:t(o),size:"18"},null,8,["color"]),n("span",{style:m({color:t(o)})},u(s.maxTemp)+"°",5),c(d,{icon:"mdi-menu-down",color:t(o),size:"18",class:"ml-2"},null,8,["color"]),n("span",{style:m({color:t(o)})},u(s.minTemp)+"°",5)]))),128))])),64))])]),_:1})]),_:1})):Y("",!0)]),_:1},8,["style"]))}}),se=Z(oe,[["__scopeId","data-v-a8243dc2"]]);export{se as default};
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.