From f38fc78ee2a246078de004666f628b305a8d365a Mon Sep 17 00:00:00 2001 From: istudyatuni Date: Sun, 15 Oct 2023 09:04:05 +0000 Subject: [PATCH] deploy: a6a1cd0e2240abcd1439c8d548b2a416823fd68c --- .nojekyll | 0 assets/index-4f24f8e1.css | 1 + assets/index-56bb79ff.js | 3 + assets/index-56bb79ff.js.map | 1 + assets/vendor-dd66dfbe.js | 6 ++ assets/vendor-dd66dfbe.js.map | 1 + favicon.png | Bin 0 -> 1281 bytes .../32/clouds_sun_sunny_weather.svg | 1 + .../32/cloudy_weather_clouds_cloud.svg | 1 + .../cloudy_weather_forecast_rain_clouds.svg | 1 + .../32/foggy_weather_fog_clouds_cloudy.svg | 1 + .../32/hail_weather_hailstone_clouds_snow.svg | 1 + .../32/hurricane_weather_tornado_storm.svg | 1 + .../32/moon_night_weather_foggy_fog.svg | 1 + .../32/moon_weather_clouds_cloudy.svg | 1 + .../32/moon_weather_snow_night.svg | 1 + .../32/morning_sunrise_sun_weather.svg | 1 + .../night_weather_clouds_storm_rain_moon.svg | 1 + .../32/rain_cloud_drizzel_weather.svg | 1 + .../32/rain_storm_shower_weather.svg | 1 + icons/weather-icons/32/readme.txt | 4 + .../32/sand_weather_sandstorm_sun_day.svg | 1 + .../32/sand_weather_storm_sandstorm.svg | 1 + .../32/storm_weather_night_clouds.svg | 1 + .../32/storm_weather_sandstorm_sand_cloud.svg | 1 + .../32/storm_weather_thunder_clouds_rain.svg | 1 + .../32/sunny_rain_cloudy_weather_clouds.svg | 1 + .../32/sunny_weather_clouds_storm.svg | 1 + .../32/weather_clouds_fog_foggy.svg | 1 + ...ather_forecast_temperature_thermometer.svg | 1 + .../32/weather_moon_moonrise_night.svg | 1 + .../32/weather_moonset_moon_morning.svg | 1 + .../32/weather_night_moon_moonlight.svg | 1 + .../32/weather_rain_storm_night.svg | 1 + .../32/weather_sun_sunny_temperature.svg | 1 + .../32/weather_sunset_sun_evening.svg | 1 + .../32/wind_weather_cloudy_storm.svg | 1 + .../32/windy_cloudy_storm_wind_weather.svg | 1 + .../32/winter_snow_clouds_weather.svg | 1 + ..._snowflake_christmas_xmas_weather_snow.svg | 1 + icons/weather-icons/tiny/cloud_flash.svg | 1 + icons/weather-icons/tiny/cloudy.svg | 1 + icons/weather-icons/tiny/night_moon.svg | 1 + icons/weather-icons/tiny/rainbow.svg | 1 + icons/weather-icons/tiny/readme.txt | 4 + icons/weather-icons/tiny/snow_cloud.svg | 1 + icons/weather-icons/tiny/snowflake.svg | 1 + .../weather-icons/tiny/storm_flash_light.svg | 1 + icons/weather-icons/tiny/sun_cloudy.svg | 1 + icons/weather-icons/tiny/sunny.svg | 1 + icons/weather-icons/tiny/water_rain_cloud.svg | 1 + icons/weather-icons/tiny/water_rain_drop.svg | 1 + index.html | 27 ++++++ key.txt | 2 + locales/en.json | 86 ++++++++++++++++++ locales/ru.json | 86 ++++++++++++++++++ 56 files changed, 264 insertions(+) create mode 100644 .nojekyll create mode 100644 assets/index-4f24f8e1.css create mode 100644 assets/index-56bb79ff.js create mode 100644 assets/index-56bb79ff.js.map create mode 100644 assets/vendor-dd66dfbe.js create mode 100644 assets/vendor-dd66dfbe.js.map create mode 100644 favicon.png create mode 100644 icons/weather-icons/32/clouds_sun_sunny_weather.svg create mode 100644 icons/weather-icons/32/cloudy_weather_clouds_cloud.svg create mode 100644 icons/weather-icons/32/cloudy_weather_forecast_rain_clouds.svg create mode 100644 icons/weather-icons/32/foggy_weather_fog_clouds_cloudy.svg create mode 100644 icons/weather-icons/32/hail_weather_hailstone_clouds_snow.svg create mode 100644 icons/weather-icons/32/hurricane_weather_tornado_storm.svg create mode 100644 icons/weather-icons/32/moon_night_weather_foggy_fog.svg create mode 100644 icons/weather-icons/32/moon_weather_clouds_cloudy.svg create mode 100644 icons/weather-icons/32/moon_weather_snow_night.svg create mode 100644 icons/weather-icons/32/morning_sunrise_sun_weather.svg create mode 100644 icons/weather-icons/32/night_weather_clouds_storm_rain_moon.svg create mode 100644 icons/weather-icons/32/rain_cloud_drizzel_weather.svg create mode 100644 icons/weather-icons/32/rain_storm_shower_weather.svg create mode 100644 icons/weather-icons/32/readme.txt create mode 100644 icons/weather-icons/32/sand_weather_sandstorm_sun_day.svg create mode 100644 icons/weather-icons/32/sand_weather_storm_sandstorm.svg create mode 100644 icons/weather-icons/32/storm_weather_night_clouds.svg create mode 100644 icons/weather-icons/32/storm_weather_sandstorm_sand_cloud.svg create mode 100644 icons/weather-icons/32/storm_weather_thunder_clouds_rain.svg create mode 100644 icons/weather-icons/32/sunny_rain_cloudy_weather_clouds.svg create mode 100644 icons/weather-icons/32/sunny_weather_clouds_storm.svg create mode 100644 icons/weather-icons/32/weather_clouds_fog_foggy.svg create mode 100644 icons/weather-icons/32/weather_forecast_temperature_thermometer.svg create mode 100644 icons/weather-icons/32/weather_moon_moonrise_night.svg create mode 100644 icons/weather-icons/32/weather_moonset_moon_morning.svg create mode 100644 icons/weather-icons/32/weather_night_moon_moonlight.svg create mode 100644 icons/weather-icons/32/weather_rain_storm_night.svg create mode 100644 icons/weather-icons/32/weather_sun_sunny_temperature.svg create mode 100644 icons/weather-icons/32/weather_sunset_sun_evening.svg create mode 100644 icons/weather-icons/32/wind_weather_cloudy_storm.svg create mode 100644 icons/weather-icons/32/windy_cloudy_storm_wind_weather.svg create mode 100644 icons/weather-icons/32/winter_snow_clouds_weather.svg create mode 100644 icons/weather-icons/32/winter_snowflake_christmas_xmas_weather_snow.svg create mode 100644 icons/weather-icons/tiny/cloud_flash.svg create mode 100644 icons/weather-icons/tiny/cloudy.svg create mode 100644 icons/weather-icons/tiny/night_moon.svg create mode 100644 icons/weather-icons/tiny/rainbow.svg create mode 100644 icons/weather-icons/tiny/readme.txt create mode 100644 icons/weather-icons/tiny/snow_cloud.svg create mode 100644 icons/weather-icons/tiny/snowflake.svg create mode 100644 icons/weather-icons/tiny/storm_flash_light.svg create mode 100644 icons/weather-icons/tiny/sun_cloudy.svg create mode 100644 icons/weather-icons/tiny/sunny.svg create mode 100644 icons/weather-icons/tiny/water_rain_cloud.svg create mode 100644 icons/weather-icons/tiny/water_rain_drop.svg create mode 100644 index.html create mode 100644 key.txt create mode 100644 locales/en.json create mode 100644 locales/ru.json diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/assets/index-4f24f8e1.css b/assets/index-4f24f8e1.css new file mode 100644 index 0000000..22341bb --- /dev/null +++ b/assets/index-4f24f8e1.css @@ -0,0 +1 @@ +body{--main-bg-color:#fff;--second-bg-color:#f2f2f2;--main-fg-color:#000;--second-fg-color:gray;--tooltip-fg-color:var(--second-bg-color);--tooltip-bg-color:#696969;--uv-bar-color:#000}body.dark{--main-bg-color:#26282b;--second-bg-color:#353941;--main-fg-color:#90b8f8;--second-fg-color:#a9a9a9;--tooltip-fg-color:#b7b9be;--tooltip-bg-color:#4f4e51;--uv-bar-color:#fff}body{background-color:var(--main-bg-color);color:var(--main-fg-color)}body,html{height:100%;position:relative;width:100%}body{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;margin:0;padding:0}a{color:#0064c8;text-decoration:none}a:hover{text-decoration:underline}a:visited{color:#0050a0}label{display:block}button,input,select,textarea{border:1px solid #ccc;border-radius:2px;box-sizing:border-box;font-family:inherit;font-size:inherit;margin:0 0 .5em;-webkit-padding:.4em 0;padding:.4em}button{outline:none}select.svelte-c2avyo{background-color:var(--main-bg-color);color:var(--second-fg-color)}.title.svelte-c2avyo{color:var(--second-fg-color);margin-right:.5em}.reload-required.svelte-ma3q3m{color:var(--second-fg-color);font-style:italic;margin-bottom:.7em}.grid-item.svelte-11xorlr.svelte-11xorlr{background-color:var(--second-bg-color);padding:1.5em}.city.svelte-11xorlr.svelte-11xorlr{margin-top:0}.inline.svelte-11xorlr.svelte-11xorlr{align-items:center;display:flex;justify-content:space-between}.inline.svelte-11xorlr>a.svelte-11xorlr{margin:0 .4em}.github.svelte-11xorlr.svelte-11xorlr,.settings.svelte-11xorlr.svelte-11xorlr{color:var(--second-fg-color)}p.svelte-10d2z8p{background-color:var(--main-bg-color);color:var(--second-fg-color);margin:0;padding:3px 0;position:absolute;top:0;width:100%}.tooltip.svelte-1s5o2o4.svelte-1s5o2o4{display:inline-block;position:relative}.tooltip.svelte-1s5o2o4 .text.svelte-1s5o2o4{background-color:var(--tooltip-bg-color);border-radius:6px;bottom:125%;color:var(--tooltip-fg-color);left:50%;margin-left:-60px;opacity:0;padding:5px 7px;position:absolute;text-align:center;transition:opacity .3s;visibility:hidden;width:120px;z-index:1}.tooltip.svelte-1s5o2o4 .text.svelte-1s5o2o4:after{content:"";height:30%;left:0;opacity:0;position:absolute;top:100%;width:100%}.tooltip.svelte-1s5o2o4:hover .text.svelte-1s5o2o4{opacity:1;visibility:visible}.wrapper.svelte-1ur4628.svelte-1ur4628{background-color:var(--main-bg-color);border-radius:15px;padding:1em}.data.svelte-1ur4628.svelte-1ur4628{align-items:center;display:flex;justify-content:space-between;padding-left:.5em;padding-right:1em}.title.svelte-1ur4628.svelte-1ur4628{align-items:stretch;color:var(--second-fg-color);display:flex;margin:0}.title.svelte-1ur4628>.help.svelte-1ur4628{margin-left:10px}.title.svelte-1ur4628>.help.svelte-1ur4628:hover{color:var(--main-fg-color)}.value.svelte-1ur4628.svelte-1ur4628{font-size:2.5em;margin:20px 0}.value.svelte-1ur4628 .top{margin:6px auto auto 5px;position:absolute}.value.svelte-1ur4628 .measure{color:var(--second-fg-color);font-size:.4em}.value.svelte-1ur4628.svelte-1ur4628:empty{display:none}.dir-wrapper.svelte-ks2vty{align-items:center;display:flex;margin-right:2em}.wind-dir.svelte-ks2vty{color:var(--second-fg-color);font-size:1.4em;margin-left:15px}.wrapper.svelte-1lgdxtc.svelte-1lgdxtc{margin:1em .5em;width:100%}.icon.svelte-1lgdxtc.svelte-1lgdxtc{color:var(--main-fg-color);position:absolute}.icon.svelte-1lgdxtc>.value.svelte-1lgdxtc{font-size:2em;margin-bottom:6px;margin-left:-1.9em;text-align:center;width:4em}.icon.svelte-1lgdxtc>.pointer.svelte-1lgdxtc{background-color:var(--uv-bar-color);border-radius:.2em;height:3em;width:6px}.bar.svelte-1lgdxtc.svelte-1lgdxtc{background:linear-gradient(90deg,#28ff27,#fffc21 18.2%,#f90 45.5%,#ff5b03 63.7%,#ff1400 90.9%,#c0f);border-radius:5px;height:2em;margin-top:3.2em;width:100%}.time.svelte-2f7yy4.svelte-2f7yy4{font-size:1.3em;font-weight:600;margin:.5em 0}.time.svelte-2f7yy4>span.svelte-2f7yy4{color:var(--second-fg-color)}@media screen and (max-width:550px){.grid.svelte-1y0h5cp{grid-template-columns:repeat(1,1fr)}}@media screen and (max-width:1300px) and (min-width:550px){.grid.svelte-1y0h5cp{grid-template-columns:repeat(2,1fr)}}@media screen and (min-width:1300px){.grid.svelte-1y0h5cp{grid-template-columns:repeat(3,1fr)}}.grid.svelte-1y0h5cp{display:grid;gap:1em}.wrapper.svelte-9yr7a.svelte-9yr7a{padding:1em}code.svelte-9yr7a.svelte-9yr7a{height:1em;margin:0}ul.svelte-9yr7a.svelte-9yr7a{list-style-type:"- "}ul.svelte-9yr7a li.svelte-9yr7a{line-height:1}.outer.svelte-7wu9tj{background-color:var(--second-bg-color);border-radius:10px;cursor:pointer;margin-bottom:4px;padding:5px 10px}.details.svelte-7wu9tj{color:var(--second-fg-color)}.flex.svelte-7wu9tj{display:flex;justify-content:space-between}.hidden.svelte-7wu9tj{display:none}input.svelte-194tzog{background-color:var(--second-bg-color);border:none;border-radius:1em;color:var(--second-fg-color);padding-left:1em;width:100%}.cities-list.svelte-194tzog{display:flex;flex-direction:column}.no-cities-found.svelte-194tzog{color:var(--second-fg-color)}@media screen and (max-width:980px){.big-icon.svelte-1wr2kcu{min-width:120px;width:20%}.line.svelte-1wr2kcu{display:flex}}@media screen and (min-width:980px){.big-icon.svelte-1wr2kcu{width:100%}}.container.svelte-1wr2kcu{padding:1.5em}.description.svelte-1wr2kcu{align-items:center;display:flex}.temperature.svelte-1wr2kcu{font-size:3em;margin:0}.measure.svelte-1wr2kcu{color:var(--second-fg-color);font-size:.6em;margin:8px 5px;position:absolute}.title-case.svelte-1wr2kcu:first-letter{text-transform:uppercase}.time.svelte-1wr2kcu{color:var(--second-fg-color)}.separator.svelte-1wr2kcu{color:var(--second-bg-color)}@media screen and (min-width:980px){main.svelte-1986ubt{display:grid;grid-template-columns:20em auto;height:100%}} diff --git a/assets/index-56bb79ff.js b/assets/index-56bb79ff.js new file mode 100644 index 0000000..b738c0a --- /dev/null +++ b/assets/index-56bb79ff.js @@ -0,0 +1,3 @@ +import{g as ee,l as Ie,s as Tt,w as Me,a as jt,i as zt,r as At,S as N,b as R,c as U,e as X,d as p,t as j,f as M,h as d,j as ht,k as $,m as _,n as Be,o as Z,p as H,q as P,u as w,v as It,x as qe,y as $e,z as qt,A as Dt,B as je,C as Ne,D as I,E as q,F as Re,G as y,H as S,I as D,J as B,$ as Y,K as Q,L as Ce,M as ne,N as Te,O as se,P as we,Q as ye,R as ke,T as be,U as ae,V as mt,W as le,X as ie,Y as ze,Z as Ht,_ as Se,a0 as Ue,a1 as Ee,a2 as Pe,a3 as Ot,a4 as pt,a5 as ge,a6 as de,a7 as pe}from"./vendor-dd66dfbe.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const l of i)if(l.type==="childList")for(const o of l.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function t(i){const l={};return i.integrity&&(l.integrity=i.integrity),i.referrerPolicy&&(l.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?l.credentials="include":i.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function n(i){if(i.ep)return;i.ep=!0;const l=t(i);fetch(i.href,l)}})();function vt(s,e){let t=ee(s);if((t.version??0)===e.version)return;let n={version:e.version};$t(n,e,t);for(let[i,l]of Object.entries(n))s.set(i,l)}function $t(s,e,t){for(let[n,i]of Object.entries(e))typeof i>"u"||(typeof t[n]>"u"?s[n]=i:typeof i=="object"?i!==null&&(s[n]={},$t(s[n],i,t[n])):typeof i!=typeof s[n]&&(s[n]=i))}const wt={version:1,searches:[]},ve=Ie("cache",wt);function Bt(){vt(ve,wt)}const yt={version:1,theme:"system",locale:void 0,current_city:{lat:51.50853,lon:-.12574,name:"London, United Kingdom"},tz:Intl.DateTimeFormat().resolvedOptions().timeZone},F=Ie("settings",yt);function Nt(){vt(F,yt)}const Le=Me(!1),Ae=Me(!1),kt=Me([]),De=Me(""),re=Tt("weather"),Ve=Ie("w",{w:0});function Rt(){Bt(),Nt()}function _e(s){s instanceof Date||(s=new Date(s));const e=s.getHours(),t=s.getMinutes();return`${e}:${t<10?"0"+t:t}`}function bt(){return _e(new Date)}function We(){De.set(bt())}function Ut(){De.set(bt()),setTimeout(()=>{We(),setInterval(We,60*1e3)},(60-new Date().getSeconds())*1e3)}const St={en:"en","en-US":"en",ru:"ru","ru-RU":"ru"},Fe="en",Et=[...new Set(Object.values(St))];function Pt(s){return St[s]}const Vt={en:"English",ru:"Русский"};async function Wt(s){return(await fetch(s)).json()}function Ft(s){At(s,()=>Wt(`locales/${s}.json`))}function Jt(s){for(let e of s)Ft(e)}function Kt(){ee(F).locale===void 0&&F.set("locale",Pt(jt())||Fe),Jt(Et),zt({fallbackLocale:Fe,initialLocale:ee(F).locale})}function Je(s,e,t){const n=s.slice();return n[5]=e[t],n}function Ke(s){let e,t=s[5].name+"",n,i;return{c(){e=p("option"),n=j(t),e.__value=i=s[5].value,$e(e,e.__value)},m(l,o){$(l,e,o),_(e,n)},p(l,o){o&4&&t!==(t=l[5].name+"")&&H(n,t),o&4&&i!==(i=l[5].value)&&(e.__value=i,$e(e,e.__value))},d(l){l&&w(e)}}}function Qt(s){let e,t,n,i,l,o,r,a=X(s[2]),u=[];for(let c=0;cs[4].call(l))},m(c,f){$(c,e,f),_(e,t),_(e,n),$(c,i,f),$(c,l,f);for(let h=0;h{"title"in a&&t(1,n=a.title),"options"in a&&t(2,i=a.options),"value"in a&&t(0,l=a.value)},[l,n,i,o,r]}class Qe extends N{constructor(e){super(),R(this,e,Gt,Qt,U,{title:1,options:2,value:0})}}function Ge(s){let e,t=s[1]("settings.reload_required",{locale:s[2].locale})+"",n;return{c(){e=p("div"),n=j(t),d(e,"class","reload-required svelte-ma3q3m")},m(i,l){$(i,e,l),_(e,n)},p(i,l){l&6&&t!==(t=i[1]("settings.reload_required",{locale:i[2].locale})+"")&&H(n,t)},d(i){i&&w(e)}}}function Zt(s){let e,t=s[1]("settings.title")+"",n,i,l,o,r,a,u,c,f,h,m,k=s[0]&&Ge(s);function L(g){s[5](g)}let b={title:s[1]("settings.theme.title"),options:s[3]};s[2].theme!==void 0&&(b.value=s[2].theme),r=new Qe({props:b}),je.push(()=>Ne(r,"value",L));function T(g){s[6](g)}let O={title:s[1]("settings.language.title"),options:s[4]};return s[2].locale!==void 0&&(O.value=s[2].locale),f=new Qe({props:O}),je.push(()=>Ne(f,"value",T)),f.$on("change",s[7]),{c(){e=p("h3"),n=j(t),i=M(),k&&k.c(),l=M(),o=p("div"),I(r.$$.fragment),u=M(),c=p("div"),I(f.$$.fragment)},m(g,v){$(g,e,v),_(e,n),$(g,i,v),k&&k.m(g,v),$(g,l,v),$(g,o,v),q(r,o,null),$(g,u,v),$(g,c,v),q(f,c,null),m=!0},p(g,[v]){(!m||v&2)&&t!==(t=g[1]("settings.title")+"")&&H(n,t),g[0]?k?k.p(g,v):(k=Ge(g),k.c(),k.m(l.parentNode,l)):k&&(k.d(1),k=null);const z={};v&2&&(z.title=g[1]("settings.theme.title")),!a&&v&4&&(a=!0,z.value=g[2].theme,Re(()=>a=!1)),r.$set(z);const W={};v&2&&(W.title=g[1]("settings.language.title")),!h&&v&4&&(h=!0,W.value=g[2].locale,Re(()=>h=!1)),f.$set(W)},i(g){m||(y(r.$$.fragment,g),y(f.$$.fragment,g),m=!0)},o(g){S(r.$$.fragment,g),S(f.$$.fragment,g),m=!1},d(g){g&&(w(e),w(i),w(l),w(o),w(u),w(c)),k&&k.d(g),D(r),D(f)}}}function Xt(s,e,t){let n,i;B(s,Y,f=>t(1,n=f)),B(s,F,f=>t(2,i=f));let l=!1,o=["light","dark","system"].map(f=>({value:f,name:n("settings.theme."+f)})),r=Object.entries(Vt).map(f=>({value:f[0],name:f[1]}));function a(f){s.$$.not_equal(i.theme,f)&&(i.theme=f,F.set(i))}function u(f){s.$$.not_equal(i.locale,f)&&(i.locale=f,F.set(i))}return[l,n,i,o,r,a,u,()=>t(0,l=!0)]}let Yt=class extends N{constructor(e){super(),R(this,e,Xt,Zt,U,{})}};function xt(s){let e,t='',n=[{viewBox:"0 0 24 24"},{width:"1.2em"},{height:"1.2em"},s[0]],i={};for(let l=0;l{t(0,e=Q(Q({},e),se(n)))},e=se(e),[e]}class tn extends N{constructor(e){super(),R(this,e,en,xt,U,{})}}function nn(s){let e,t='',n=[{viewBox:"0 0 24 24"},{width:"1.2em"},{height:"1.2em"},s[0]],i={};for(let l=0;l{t(0,e=Q(Q({},e),se(n)))},e=se(e),[e]}class ln extends N{constructor(e){super(),R(this,e,sn,nn,U,{})}}function rn(s){let e,t,n,i=s[1].current_city.name+"",l,o,r,a,u,c,f,h,m,k,L,b,T;u=new tn({props:{width:"30",height:"30"}}),m=new ln({props:{width:"30",height:"30"}});const O=s[3].default,g=we(O,s,s[2],null);return{c(){e=p("div"),t=p("div"),n=p("h4"),l=j(i),o=M(),r=p("div"),a=p("a"),I(u.$$.fragment),f=M(),h=p("a"),I(m.$$.fragment),k=M(),g&&g.c(),d(n,"class","city svelte-11xorlr"),d(a,"href",c=s[0]?"/":"/settings"),d(a,"class","settings svelte-11xorlr"),d(a,"alt","settings toggle"),d(h,"href","https://github.com/istudyatuni/weather-site"),d(h,"alt","github"),d(h,"class","github svelte-11xorlr"),d(r,"class","inline svelte-11xorlr"),d(t,"class","inline svelte-11xorlr"),d(e,"class","grid-item svelte-11xorlr")},m(v,z){$(v,e,z),_(e,t),_(t,n),_(n,l),_(t,o),_(t,r),_(r,a),q(u,a,null),_(r,f),_(r,h),q(m,h,null),_(e,k),g&&g.m(e,null),L=!0,b||(T=Z(a,"click",s[4]),b=!0)},p(v,[z]){(!L||z&2)&&i!==(i=v[1].current_city.name+"")&&H(l,i),(!L||z&1&&c!==(c=v[0]?"/":"/settings"))&&d(a,"href",c),g&&g.p&&(!L||z&4)&&ye(g,O,v,v[2],L?be(O,v[2],z,null):ke(v[2]),null)},i(v){L||(y(u.$$.fragment,v),y(m.$$.fragment,v),y(g,v),L=!0)},o(v){S(u.$$.fragment,v),S(m.$$.fragment,v),S(g,v),L=!1},d(v){v&&w(e),D(u),D(m),g&&g.d(v),b=!1,T()}}}function on(s,e,t){let n;B(s,F,a=>t(1,n=a));let{$$slots:i={},$$scope:l}=e,o=!0;const r=()=>t(0,o=!o);return s.$$set=a=>{"$$scope"in a&&t(2,l=a.$$scope)},[o,n,l,i,r]}class an extends N{constructor(e){super(),R(this,e,on,rn,U,{})}}function Ze(s){let e;return{c(){e=p("center"),e.innerHTML='

Loading...

'},m(t,n){$(t,e,n)},d(t){t&&w(e)}}}function un(s){let e,t=(s[0]||s[1])&&Ze();return{c(){t&&t.c(),e=ae()},m(n,i){t&&t.m(n,i),$(n,e,i)},p(n,[i]){n[0]||n[1]?t||(t=Ze(),t.c(),t.m(e.parentNode,e)):t&&(t.d(1),t=null)},i:P,o:P,d(n){n&&w(e),t&&t.d(n)}}}function cn(s,e,t){let n,i;return B(s,mt,l=>t(0,n=l)),B(s,Ae,l=>t(1,i=l)),[n,i]}class fn extends N{constructor(e){super(),R(this,e,cn,un,U,{})}}const _n=["n","ne","e","se","s","sw","w","nw"];function Xe(s){return _n[Math.round(s/45)%8]}const gn=s=>({}),Ye=s=>({});function dn(s){let e,t,n,i,l;const o=s[2].under,r=we(o,s,s[1],Ye);return{c(){e=p("div"),r&&r.c(),t=M(),n=p("div"),i=j(s[0]),d(n,"class","text svelte-1s5o2o4"),d(e,"class","tooltip svelte-1s5o2o4")},m(a,u){$(a,e,u),r&&r.m(e,null),_(e,t),_(e,n),_(n,i),l=!0},p(a,[u]){r&&r.p&&(!l||u&2)&&ye(r,o,a,a[1],l?be(o,a[1],u,gn):ke(a[1]),Ye),(!l||u&1)&&H(i,a[0])},i(a){l||(y(r,a),l=!0)},o(a){S(r,a),l=!1},d(a){a&&w(e),r&&r.d(a)}}}function hn(s,e,t){let{$$slots:n={},$$scope:i}=e,{text:l=""}=e;return s.$$set=o=>{"text"in o&&t(0,l=o.text),"$$scope"in o&&t(1,i=o.$$scope)},[l,i,n]}class mn extends N{constructor(e){super(),R(this,e,hn,dn,U,{text:0})}}function pn(s){let e,t='',n=[{viewBox:"0 0 24 24"},{width:"1.2em"},{height:"1.2em"},s[0]],i={};for(let l=0;l{t(0,e=Q(Q({},e),se(n)))},e=se(e),[e]}class $n extends N{constructor(e){super(),R(this,e,vn,pn,U,{})}}const wn=s=>({}),xe=s=>({}),yn=s=>({}),et=s=>({});function tt(s){let e,t,n;return t=new mn({props:{text:s[1],$$slots:{under:[kn]},$$scope:{ctx:s}}}),{c(){e=p("span"),I(t.$$.fragment),d(e,"class","help svelte-1ur4628")},m(i,l){$(i,e,l),q(t,e,null),n=!0},p(i,l){const o={};l&2&&(o.text=i[1]),l&8&&(o.$$scope={dirty:l,ctx:i}),t.$set(o)},i(i){n||(y(t.$$.fragment,i),n=!0)},o(i){S(t.$$.fragment,i),n=!1},d(i){i&&w(e),D(t)}}}function kn(s){let e,t;return e=new $n({props:{slot:"under",width:"20",height:"20"}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p:P,i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function bn(s){let e,t,n,i,l,o,r,a,u,c,f=s[1]&&tt(s);const h=s[2].value,m=we(h,s,s[3],et),k=s[2].content,L=we(k,s,s[3],xe);return{c(){e=p("div"),t=p("p"),n=p("span"),i=j(s[0]),l=M(),f&&f.c(),o=M(),r=p("div"),a=p("p"),m&&m.c(),u=M(),L&&L.c(),d(t,"class","title svelte-1ur4628"),d(a,"class","value svelte-1ur4628"),d(r,"class","data svelte-1ur4628"),d(e,"class","wrapper svelte-1ur4628")},m(b,T){$(b,e,T),_(e,t),_(t,n),_(n,i),_(t,l),f&&f.m(t,null),_(e,o),_(e,r),_(r,a),m&&m.m(a,null),_(r,u),L&&L.m(r,null),c=!0},p(b,[T]){(!c||T&1)&&H(i,b[0]),b[1]?f?(f.p(b,T),T&2&&y(f,1)):(f=tt(b),f.c(),y(f,1),f.m(t,null)):f&&(le(),S(f,1,1,()=>{f=null}),ie()),m&&m.p&&(!c||T&8)&&ye(m,h,b,b[3],c?be(h,b[3],T,yn):ke(b[3]),et),L&&L.p&&(!c||T&8)&&ye(L,k,b,b[3],c?be(k,b[3],T,wn):ke(b[3]),xe)},i(b){c||(y(f),y(m,b),y(L,b),c=!0)},o(b){S(f),S(m,b),S(L,b),c=!1},d(b){b&&w(e),f&&f.d(),m&&m.d(b),L&&L.d(b)}}}function Sn(s,e,t){let{$$slots:n={},$$scope:i}=e,{title:l,help:o}=e;return s.$$set=r=>{"title"in r&&t(0,l=r.title),"help"in r&&t(1,o=r.help),"$$scope"in r&&t(3,i=r.$$scope)},[l,o,n,i]}class ue extends N{constructor(e){super(),R(this,e,Sn,bn,U,{title:0,help:1})}}function Ln(s){let e,t='',n=[{viewBox:"0 0 24 24"},{width:"1.2em"},{height:"1.2em"},s[0]],i={};for(let l=0;l{t(0,e=Q(Q({},e),se(n)))},e=se(e),[e]}class Cn extends N{constructor(e){super(),R(this,e,Mn,Ln,U,{})}}function Tn(s){let e,t=(s[0]??"-.-")+"",n,i,l,o=s[3]("highlights.measure.m_in_s")+"",r;return{c(){e=p("div"),n=j(t),i=M(),l=p("span"),r=j(o),d(l,"class","measure"),d(e,"slot","value")},m(a,u){$(a,e,u),_(e,n),_(e,i),_(e,l),_(l,r)},p(a,u){u&1&&t!==(t=(a[0]??"-.-")+"")&&H(n,t),u&8&&o!==(o=a[3]("highlights.measure.m_in_s")+"")&&H(r,o)},d(a){a&&w(e)}}}function jn(s){let e;return{c(){e=j("--")},m(t,n){$(t,e,n)},p:P,d(t){t&&w(e)}}}function zn(s){let e=s[3]("highlights.compass_directions."+Xe(s[1]))+"",t;return{c(){t=j(e)},m(n,i){$(n,t,i)},p(n,i){i&10&&e!==(e=n[3]("highlights.compass_directions."+Xe(n[1]))+"")&&H(t,e)},d(n){n&&w(t)}}}function An(s){let e,t,n,i,l;t=new Cn({props:{style:`transform: rotate(${s[2]}deg);`,alt:"",width:"30",height:"30"}});function o(u,c){return u[1]!==void 0?zn:jn}let r=o(s),a=r(s);return{c(){e=p("div"),I(t.$$.fragment),n=M(),i=p("span"),a.c(),d(i,"class","wind-dir svelte-ks2vty"),d(e,"class","dir-wrapper svelte-ks2vty"),d(e,"slot","content")},m(u,c){$(u,e,c),q(t,e,null),_(e,n),_(e,i),a.m(i,null),l=!0},p(u,c){const f={};c&4&&(f.style=`transform: rotate(${u[2]}deg);`),t.$set(f),r===(r=o(u))&&a?a.p(u,c):(a.d(1),a=r(u),a&&(a.c(),a.m(i,null)))},i(u){l||(y(t.$$.fragment,u),l=!0)},o(u){S(t.$$.fragment,u),l=!1},d(u){u&&w(e),D(t),a.d()}}}function In(s){let e,t;return e=new ue({props:{title:s[3]("highlights.wind_status"),$$slots:{content:[An],value:[Tn]},$$scope:{ctx:s}}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p(n,[i]){const l={};i&8&&(l.title=n[3]("highlights.wind_status")),i&31&&(l.$$scope={dirty:i,ctx:n}),e.$set(l)},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function qn(s,e,t){let n,i;B(s,Y,r=>t(3,i=r));let{speed:l,deg:o}=e;return s.$$set=r=>{"speed"in r&&t(0,l=r.speed),"deg"in r&&t(1,o=r.deg)},s.$$.update=()=>{s.$$.dirty&2&&t(2,n=135+o)},[l,o,n,i]}class Dn extends N{constructor(e){super(),R(this,e,qn,In,U,{speed:0,deg:1})}}function Hn(s){let e=(s[0]??"-.-")+"",t,n,i,l=s[2](`highlights.measure.${s[1]}`)+"",o;return{c(){t=j(e),n=M(),i=p("span"),o=j(l),d(i,"class","measure")},m(r,a){$(r,t,a),$(r,n,a),$(r,i,a),_(i,o)},p(r,a){a&1&&e!==(e=(r[0]??"-.-")+"")&&H(t,e),a&6&&l!==(l=r[2](`highlights.measure.${r[1]}`)+"")&&H(o,l)},d(r){r&&(w(t),w(n),w(i))}}}function On(s){let e,t;return e=new ue({props:{title:s[2]("highlights.visibility"),$$slots:{value:[Hn]},$$scope:{ctx:s}}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p(n,[i]){const l={};i&4&&(l.title=n[2]("highlights.visibility")),i&39&&(l.$$scope={dirty:i,ctx:n}),e.$set(l)},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Bn(s,e,t){let n,i,l,o;B(s,Y,a=>t(2,o=a));let{meters:r}=e;return s.$$set=a=>{"meters"in a&&t(3,r=a.meters)},s.$$.update=()=>{s.$$.dirty&8&&t(4,n=(r??0)>=1e3),s.$$.dirty&16&&t(1,i=n?"km":"m"),s.$$.dirty&24&&t(0,l=n?r/1e3:r)},[l,i,o,r,n]}class Nn extends N{constructor(e){super(),R(this,e,Bn,On,U,{meters:3})}}function Rn(s){let e,t,n,i,l,o,r,a,u;return{c(){e=p("div"),t=p("div"),n=p("div"),i=j(s[0]),l=M(),o=p("div"),r=M(),a=p("div"),d(n,"class","value svelte-1lgdxtc"),d(o,"class","pointer svelte-1lgdxtc"),d(t,"class","icon svelte-1lgdxtc"),ze(t,"margin-left",s[0]*s[2]+"px"),d(a,"class","bar svelte-1lgdxtc"),d(e,"slot","content"),d(e,"class","wrapper svelte-1lgdxtc"),ht(()=>s[4].call(e))},m(c,f){$(c,e,f),_(e,t),_(t,n),_(n,i),_(t,l),_(t,o),_(e,r),_(e,a),u=Ht(e,s[4].bind(e))},p(c,f){f&1&&H(i,c[0]),f&5&&ze(t,"margin-left",c[0]*c[2]+"px")},d(c){c&&w(e),u()}}}function Un(s){let e,t;return e=new ue({props:{title:s[3]("highlights.uv_index.title"),help:s[3]("highlights.uv_index.help"),$$slots:{content:[Rn]},$$scope:{ctx:s}}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p(n,[i]){const l={};i&8&&(l.title=n[3]("highlights.uv_index.title")),i&8&&(l.help=n[3]("highlights.uv_index.help")),i&39&&(l.$$scope={dirty:i,ctx:n}),e.$set(l)},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function En(s,e,t){let n,i;B(s,Y,a=>t(3,i=a));let{uv:l=0}=e,o=0;function r(){o=this.clientWidth,t(1,o)}return s.$$set=a=>{"uv"in a&&t(0,l=a.uv)},s.$$.update=()=>{s.$$.dirty&2&&t(2,n=(o-6)/11)},[l,o,n,i,r]}class Pn extends N{constructor(e){super(),R(this,e,En,Un,U,{uv:0})}}function Vn(s){let e,t,n,i=s[2]("highlights.sun.sunrise")+"",l,o,r,a=(s[0]?_e(s[0]):"--:--")+"",u,c,f,h,m=s[2]("highlights.sun.sunset")+"",k,L,b,T=(s[1]?_e(s[1]):"--:--")+"",O;return{c(){e=p("div"),t=p("p"),n=p("span"),l=j(i),o=j(":"),r=M(),u=j(a),c=M(),f=p("p"),h=p("span"),k=j(m),L=j(":"),b=M(),O=j(T),d(n,"class","svelte-2f7yy4"),d(t,"class","time svelte-2f7yy4"),d(h,"class","svelte-2f7yy4"),d(f,"class","time svelte-2f7yy4"),d(e,"slot","content")},m(g,v){$(g,e,v),_(e,t),_(t,n),_(n,l),_(n,o),_(t,r),_(t,u),_(e,c),_(e,f),_(f,h),_(h,k),_(h,L),_(f,b),_(f,O)},p(g,v){v&4&&i!==(i=g[2]("highlights.sun.sunrise")+"")&&H(l,i),v&1&&a!==(a=(g[0]?_e(g[0]):"--:--")+"")&&H(u,a),v&4&&m!==(m=g[2]("highlights.sun.sunset")+"")&&H(k,m),v&2&&T!==(T=(g[1]?_e(g[1]):"--:--")+"")&&H(O,T)},d(g){g&&w(e)}}}function Wn(s){let e,t;return e=new ue({props:{title:s[2]("highlights.sun.title"),$$slots:{content:[Vn]},$$scope:{ctx:s}}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p(n,[i]){const l={};i&4&&(l.title=n[2]("highlights.sun.title")),i&15&&(l.$$scope={dirty:i,ctx:n}),e.$set(l)},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Fn(s,e,t){let n;B(s,Y,o=>t(2,n=o));let{sunrise:i,sunset:l}=e;return s.$$set=o=>{"sunrise"in o&&t(0,i=o.sunrise),"sunset"in o&&t(1,l=o.sunset)},[i,l,n]}class Jn extends N{constructor(e){super(),R(this,e,Fn,Wn,U,{sunrise:0,sunset:1})}}function Kn(s){let e=(s[0]??"--")+"",t,n,i;return{c(){t=j(e),n=M(),i=p("span"),i.textContent="%",d(i,"class","measure top")},m(l,o){$(l,t,o),$(l,n,o),$(l,i,o)},p(l,o){o&1&&e!==(e=(l[0]??"--")+"")&&H(t,e)},d(l){l&&(w(t),w(n),w(i))}}}function Qn(s){let e,t;return e=new ue({props:{title:s[1]("highlights.humidity.title"),help:s[1]("highlights.humidity.help"),$$slots:{value:[Kn]},$$scope:{ctx:s}}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p(n,[i]){const l={};i&2&&(l.title=n[1]("highlights.humidity.title")),i&2&&(l.help=n[1]("highlights.humidity.help")),i&5&&(l.$$scope={dirty:i,ctx:n}),e.$set(l)},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Gn(s,e,t){let n;B(s,Y,l=>t(1,n=l));let{percentage:i}=e;return s.$$set=l=>{"percentage"in l&&t(0,i=l.percentage)},[i,n]}class Zn extends N{constructor(e){super(),R(this,e,Gn,Qn,U,{percentage:0})}}function Xn(s){let e,t;return e=new ue({props:{title:s[0]("highlights.air_quality")}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p(n,[i]){const l={};i&1&&(l.title=n[0]("highlights.air_quality")),e.$set(l)},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Yn(s,e,t){let n;return B(s,Y,i=>t(0,n=i)),[n]}class xn extends N{constructor(e){super(),R(this,e,Yn,Xn,U,{})}}function es(s){var O,g,v,z,W;let e,t=s[1]("highlights.title")+"",n,i,l,o,r,a,u,c,f,h,m,k,L,b,T;return o=new Dn({props:{speed:(O=s[0].wind)==null?void 0:O.speed,deg:(g=s[0].wind)==null?void 0:g.deg}}),a=new Pn({props:{uv:s[0].uv_index}}),c=new Jn({props:{sunrise:(v=s[0])==null?void 0:v.sunrise,sunset:(z=s[0])==null?void 0:z.sunset}}),h=new Zn({props:{percentage:(W=s[0].main)==null?void 0:W.humidity}}),k=new Nn({props:{meters:s[0].visibility}}),b=new xn({}),{c(){e=p("h3"),n=j(t),i=M(),l=p("div"),I(o.$$.fragment),r=M(),I(a.$$.fragment),u=M(),I(c.$$.fragment),f=M(),I(h.$$.fragment),m=M(),I(k.$$.fragment),L=M(),I(b.$$.fragment),d(l,"class","grid svelte-1y0h5cp")},m(A,E){$(A,e,E),_(e,n),$(A,i,E),$(A,l,E),q(o,l,null),_(l,r),q(a,l,null),_(l,u),q(c,l,null),_(l,f),q(h,l,null),_(l,m),q(k,l,null),_(l,L),q(b,l,null),T=!0},p(A,[E]){var K,ce,fe,V,G;(!T||E&2)&&t!==(t=A[1]("highlights.title")+"")&&H(n,t);const C={};E&1&&(C.speed=(K=A[0].wind)==null?void 0:K.speed),E&1&&(C.deg=(ce=A[0].wind)==null?void 0:ce.deg),o.$set(C);const J={};E&1&&(J.uv=A[0].uv_index),a.$set(J);const te={};E&1&&(te.sunrise=(fe=A[0])==null?void 0:fe.sunrise),E&1&&(te.sunset=(V=A[0])==null?void 0:V.sunset),c.$set(te);const x={};E&1&&(x.percentage=(G=A[0].main)==null?void 0:G.humidity),h.$set(x);const oe={};E&1&&(oe.meters=A[0].visibility),k.$set(oe)},i(A){T||(y(o.$$.fragment,A),y(a.$$.fragment,A),y(c.$$.fragment,A),y(h.$$.fragment,A),y(k.$$.fragment,A),y(b.$$.fragment,A),T=!0)},o(A){S(o.$$.fragment,A),S(a.$$.fragment,A),S(c.$$.fragment,A),S(h.$$.fragment,A),S(k.$$.fragment,A),S(b.$$.fragment,A),T=!1},d(A){A&&(w(e),w(i),w(l)),D(o),D(a),D(c),D(h),D(k),D(b)}}}function ts(s,e,t){let n,i,l;return B(s,re,o=>t(2,i=o)),B(s,Y,o=>t(1,l=o)),s.$$.update=()=>{var o;s.$$.dirty&4&&t(0,n=((o=i==null?void 0:i.current)==null?void 0:o.content)||{})},[n,l,i]}class ns extends N{constructor(e){super(),R(this,e,ts,es,U,{})}}function nt(s,e,t){const n=s.slice();return n[3]=e[t],n[5]=t,n}function st(s,e,t){const n=s.slice();return n[6]=e[t][0],n[7]=e[t][1],n}function lt(s,e){let t,n,i=e[6]+"",l,o,r=JSON.stringify(e[7])+"",a,u;return{key:s,first:null,c(){t=p("li"),n=p("code"),l=j(i),o=j(": "),a=j(r),u=M(),d(n,"class","svelte-9yr7a"),d(t,"class","svelte-9yr7a"),this.first=t},m(c,f){$(c,t,f),_(t,n),_(n,l),_(n,o),_(n,a),_(t,u)},p(c,f){e=c,f&1&&i!==(i=e[6]+"")&&H(l,i),f&1&&r!==(r=JSON.stringify(e[7])+"")&&H(a,r)},d(c){c&&w(t)}}}function it(s,e){let t,n,i=decodeURI(e[3])+"",l,o;return{key:s,first:null,c(){t=p("li"),n=p("code"),l=j(i),o=M(),d(n,"class","svelte-9yr7a"),d(t,"class","svelte-9yr7a"),this.first=t},m(r,a){$(r,t,a),_(t,n),_(n,l),_(t,o)},p(r,a){e=r,a&2&&i!==(i=decodeURI(e[3])+"")&&H(l,i)},d(r){r&&w(t)}}}function ss(s){let e,t,n,i,l,o,r=[],a=new Map,u,c,f,h,m=[],k=new Map,L=X(s[0]);const b=g=>g[6];for(let g=0;gg[5];for(let g=0;gLocalStorage.settings:",l=M(),o=p("ul");for(let g=0;gLog:",f=M(),h=p("ul");for(let g=0;gt(2,i=o)),B(s,kt,o=>t(1,l=o)),s.$$.update=()=>{s.$$.dirty&4&&t(0,n=Object.entries(i))},[n,l,i]}class is extends N{constructor(e){super(),R(this,e,ls,ss,U,{})}}function rs(){return ee(F).locale}function os(){return new Date().toLocaleDateString(rs(),{weekday:"long"})}const as={"01d":"weather_sun_sunny_temperature","01n":"weather_night_moon_moonlight","02d":"clouds_sun_sunny_weather","02n":"moon_weather_clouds_cloudy","03d":"clouds_sun_sunny_weather","03n":"moon_weather_clouds_cloudy","04d":"cloudy_weather_clouds_cloud","04n":"cloudy_weather_clouds_cloud","09d":"rain_cloud_drizzel_weather","09n":"rain_cloud_drizzel_weather","10d":"rain_storm_shower_weather","10n":"rain_storm_shower_weather","11d":"storm_weather_night_clouds","11n":"storm_weather_night_clouds","13d":"winter_snowflake_christmas_xmas_weather_snow","13n":"moon_weather_snow_night","50d":"foggy_weather_fog_clouds_cloudy","50n":"foggy_weather_fog_clouds_cloudy"},us={0:"01",1:"02",2:"03",3:"04",45:"50",48:"50",51:"50",53:"50",55:"50",56:"50",57:"50",61:"09",63:"09",65:"10",66:"09",67:"10",71:"13",73:"13",75:"13",77:"13",80:"10",81:"10",82:"10",85:"13",86:"13",95:"11",96:"11",99:"11"};function rt(s){return`icons/weather-icons/32/${as[s]}.svg`}function cs(s,e){let t=e?"d":"n";return us[s]+t}function fs(s){let e,t,n,i=s[0].name+"",l,o,r,a,u,c=(s[0].admin||"")+"",f,h,m;return{c(){e=p("div"),t=p("div"),n=p("span"),l=j(i),o=M(),r=p("span"),r.textContent="×",a=M(),u=p("div"),f=j(c),d(r,"role","button"),d(r,"tabindex","0"),d(r,"class","svelte-7wu9tj"),Ee(r,"hidden",!s[1]),d(t,"class","flex svelte-7wu9tj"),d(u,"class","details svelte-7wu9tj"),d(e,"class","outer svelte-7wu9tj"),d(e,"role","button"),d(e,"tabindex","0")},m(k,L){$(k,e,L),_(e,t),_(t,n),_(n,l),_(t,o),_(t,r),_(e,a),_(e,u),_(u,f),h||(m=[Z(r,"click",Pe(s[3])),Z(r,"keypress",Pe(s[3])),Z(e,"click",s[2]),Z(e,"keypress",s[2])],h=!0)},p(k,[L]){L&1&&i!==(i=k[0].name+"")&&H(l,i),L&2&&Ee(r,"hidden",!k[1]),L&1&&c!==(c=(k[0].admin||"")+"")&&H(f,c)},i:P,o:P,d(k){k&&w(e),h=!1,qe(m)}}}function _s(s,e,t){let{city:n={},allow_delete:i=!1}=e;const l=Ot();function o(u){return c=>{c.type==="keypress"&&c.code!=="Enter"||l(u,n)}}let r=o("select"),a=o("deletion");return s.$$set=u=>{"city"in u&&t(0,n=u.city),"allow_delete"in u&&t(1,i=u.allow_delete)},[n,i,r,a]}class Lt extends N{constructor(e){super(),R(this,e,_s,fs,U,{city:0,allow_delete:1})}}function Mt(s){ee(Le)&&kt.update(e=>[...e,s])}const gs="https://geocoding-api.open-meteo.com/v1/search",ds=5;async function hs(s,e=ds){const t=new URLSearchParams;t.set("count",e),t.set("language",ee(F).locale),t.set("name",s);const n=await fetch(gs+"?"+t.toString());Mt(n.url);const i=await n.json();n.ok?i.results!==void 0&&re.set("geocoding",ms(i.results)):(i.error===!0&&console.error("error quering geocoding api:",i.reason),console.error("error quering geocoding api"))}function ms(s){return s.map(e=>{let t={id:e.id,name:[e.name,e.country].filter(n=>(n??"")!=="").join(", "),lat:e.latitude,lon:e.longitude};return e.admin1!==void 0&&e.admin1!==e.name&&(t.admin=e.admin1),t})}const ps="https://api.open-meteo.com/v1/forecast",vs=20,$s={current:["temperature_2m","relativehumidity_2m","is_day","weathercode","windspeed_10m","winddirection_10m"],hourly:["visibility"],daily:["sunrise","sunset","uv_index_max"],windspeed_unit:"ms",forecast_days:1};async function Ct(s=!1){var o,r;const e=new Date;if(!s&&((r=(o=ee(re))==null?void 0:o.current)==null?void 0:r.until)>e.getTime())return;const t=ee(F),n=new URLSearchParams;n.set("latitude",t.current_city.lat),n.set("longitude",t.current_city.lon),n.set("timezone",t.tz);for(let[a,u]of Object.entries($s))n.set(a,u);const i=await fetch(ps+"?"+n.toString());Mt(i.url);const l=await i.json();i.ok?(e.setMinutes(e.getMinutes()+vs),re.set("current",{content:ws(l),until:e.getTime()})):(alert(l.message),l.message==="city not found"&&F.delete("current_city"))}function ws(s){let e=new Date().getHours();return{weather:{weathercode:s.current.weathercode,icon:cs(s.current.weathercode,s.current.is_day)},main:{temp:s.current.temperature_2m,humidity:s.current.relativehumidity_2m},visibility:s.hourly.visibility[e],wind:{speed:s.current.windspeed_10m,deg:s.current.winddirection_10m},sunrise:s.daily.sunrise[0],sunset:s.daily.sunset[0],uv_index:s.daily.uv_index_max[0]}}function ot(s,e,t){const n=s.slice();return n[22]=e[t],n[24]=t,n}function at(s,e,t){const n=s.slice();return n[22]=e[t],n[24]=t,n}function ut(s){let e,t,n,i,l;const o=[ks,ys],r=[];function a(u,c){return c&128&&(e=null),e==null&&(e=!!Array.isArray(u[7].geocoding)),e?0:1}return t=a(s,-1),n=r[t]=o[t](s),{c(){n.c(),i=ae()},m(u,c){r[t].m(u,c),$(u,i,c),l=!0},p(u,c){let f=t;t=a(u,c),t===f?r[t].p(u,c):(le(),S(r[f],1,1,()=>{r[f]=null}),ie(),n=r[t],n?n.p(u,c):(n=r[t]=o[t](u),n.c()),y(n,1),n.m(i.parentNode,i))},i(u){l||(y(n),l=!0)},o(u){S(n),l=!1},d(u){u&&w(i),r[t].d(u)}}}function ys(s){let e,t=s[6]("search_city.no_cities_found")+"",n;return{c(){e=p("div"),n=j(t),d(e,"class","no-cities-found svelte-194tzog")},m(i,l){$(i,e,l),_(e,n)},p(i,l){l&64&&t!==(t=i[6]("search_city.no_cities_found")+"")&&H(n,t)},i:P,o:P,d(i){i&&w(e)}}}function ks(s){let e,t=[],n=new Map,i,l=X(s[7].geocoding);const o=r=>r[24];for(let r=0;rr[24];for(let r=0;r{c=null}),ie()),m&14&&(l=h[3]&&!h[2]&&Array.isArray(h[1].searches)),l?f?(f.p(h,m),m&14&&y(f,1)):(f=ft(h),f.c(),y(f,1),f.m(o.parentNode,o)):f&&(le(),S(f,1,1,()=>{f=null}),ie())},i(h){r||(y(c),y(f),r=!0)},o(h){S(c),S(f),r=!1},d(h){h&&(w(e),w(n),w(i),w(o)),s[12](null),c&&c.d(h),f&&f.d(h),a=!1,qe(u)}}}const gt=5;function Ss(s,e,t){let n,i,l,o,r;B(s,ve,C=>t(1,i=C)),B(s,Le,C=>t(17,l=C)),B(s,Y,C=>t(6,o=C)),B(s,re,C=>t(7,r=C));let a="",u=!1,c=!1,f=null;function h(){f.focus()}async function m(){re.set("geocoding",{}),await hs(a.trim()),t(2,u=!0)}function k(C){if(!((C.code===""?C.key:C.code)!=="Enter"||a.trim()==="")){if(a==="debug"){Le.set(!l);return}m()}}function L(C){let{lat:J,lon:te,name:x}=C.detail;F.set("current_city",{lat:J,lon:te,name:x}),Ct(!0),g(),T(a),t(0,a="")}function b(C){t(0,a=C.detail.name),h(),g(),m()}function T(C){i.searches.find(J=>J.name===C)===void 0&&(i.searches.unshift({name:C}),ve.set("searches",i.searches))}function O(C){ve.set("searches",i.searches.filter(J=>J.name!==C))}function g(){t(2,u=!1),t(3,c=!1)}function v(C){je[C?"unshift":"push"](()=>{f=C,t(4,f)})}function z(){a=this.value,t(0,a)}const W=()=>t(3,c=!0),A=()=>t(3,c=!0),E=C=>O(C.detail.name);return s.$$.update=()=>{s.$$.dirty&3&&t(5,n=i.searches.filter(({name:C})=>C.startsWith(a)))},[a,i,u,c,f,n,o,r,k,L,b,O,v,z,W,A,E]}class Ls extends N{constructor(e){super(),R(this,e,Ss,bs,U,{})}}function Ms(s){var ce,fe;let e,t,n,i,l,o,r,a,u,c=(((fe=(ce=s[0])==null?void 0:ce.main)==null?void 0:fe.temp)??"-.-")+"",f,h,m,k,L,b=os()+"",T,O,g,v,z,W,A,E,C,J,te,x,oe,K;return t=new Ls({}),{c(){e=p("div"),I(t.$$.fragment),n=M(),i=p("div"),l=p("img"),r=M(),a=p("div"),u=p("p"),f=j(c),h=M(),m=p("span"),m.textContent="°C",k=M(),L=p("p"),T=j(b),O=p("span"),g=j(", "),v=j(s[3]),z=M(),W=p("hr"),A=M(),E=p("div"),C=p("img"),te=M(),x=p("p"),oe=j(s[2]),d(l,"class","big-icon svelte-1wr2kcu"),ge(l.src,o=rt(s[0].weather.icon))||d(l,"src",o),d(l,"alt",""),d(m,"class","measure svelte-1wr2kcu"),d(u,"class","temperature svelte-1wr2kcu"),d(O,"class","time svelte-1wr2kcu"),d(L,"class","title-case svelte-1wr2kcu"),ze(a,"margin","auto"),d(i,"class","line svelte-1wr2kcu"),d(W,"class","separator svelte-1wr2kcu"),d(W,"noshade",""),d(W,"size","1"),d(W,"width","100%"),ge(C.src,J=s[1])||d(C,"src",J),d(C,"width","60"),d(C,"height","60"),d(C,"alt",s[2]),d(x,"class","title-case svelte-1wr2kcu"),d(E,"class","description svelte-1wr2kcu"),d(e,"class","container svelte-1wr2kcu")},m(V,G){$(V,e,G),q(t,e,null),_(e,n),_(e,i),_(i,l),_(i,r),_(i,a),_(a,u),_(u,f),_(u,h),_(u,m),_(a,k),_(a,L),_(L,T),_(L,O),_(O,g),_(O,v),_(e,z),_(e,W),_(e,A),_(e,E),_(E,C),_(E,te),_(E,x),_(x,oe),K=!0},p(V,[G]){var He,Oe;(!K||G&1&&!ge(l.src,o=rt(V[0].weather.icon)))&&d(l,"src",o),(!K||G&1)&&c!==(c=(((Oe=(He=V[0])==null?void 0:He.main)==null?void 0:Oe.temp)??"-.-")+"")&&H(f,c),(!K||G&8)&&H(v,V[3]),(!K||G&2&&!ge(C.src,J=V[1]))&&d(C,"src",J),(!K||G&4)&&d(C,"alt",V[2]),(!K||G&4)&&H(oe,V[2])},i(V){K||(y(t.$$.fragment,V),K=!0)},o(V){S(t.$$.fragment,V),K=!1},d(V){V&&w(e),D(t)}}}const Cs={weather:{icon:"01d",weathercode:1}};function Ts(s,e,t){let n,i,l,o,r,a;return B(s,Y,u=>t(4,o=u)),B(s,re,u=>t(5,r=u)),B(s,De,u=>t(3,a=u)),s.$$.update=()=>{var u;s.$$.dirty&32&&t(0,n=((u=r==null?void 0:r.current)==null?void 0:u.content)||Cs),s.$$.dirty&17&&t(2,i=o(`weather.wmo_description.${n.weather.weathercode}`)),s.$$.dirty&1&&t(1,l=`https://openweathermap.org/img/wn/${n.weather.icon}@2x.png`)},[n,l,i,a,o,r]}class js extends N{constructor(e){super(),R(this,e,Ts,Ms,U,{})}}async function zs(){return(await(await fetch("key.txt")).text()).slice(33,79)}const he=s=>"`"+s+"`";async function As(){const s=["*Visit*","System: "+he(navigator.platform),"Lang: "+he(navigator.language),"UserAgent: "+he(navigator.userAgent),"Referrer: "+he(document.referrer)].join(` +`),e=new URLSearchParams({chat_id:"-1001738728136",text:s,parse_mode:"markdown"});return(await fetch(`https://api.telegram.org/bot${await zs()}/sendMessage?${e.toString()}`)).ok}async function Is(){ee(Ve).w!==1&&(document.cookie="",await As()&&Ve.set("w",1))}async function qs(){try{await Is()}catch(s){console.error(s)}}function dt(s){let e,t,n,i,l;return t=new js({}),i=new an({props:{$$slots:{default:[Ns]},$$scope:{ctx:s}}}),{c(){e=p("main"),I(t.$$.fragment),n=M(),I(i.$$.fragment),d(e,"class","svelte-1986ubt")},m(o,r){$(o,e,r),q(t,e,null),_(e,n),q(i,e,null),l=!0},i(o){l||(y(t.$$.fragment,o),y(i.$$.fragment,o),l=!0)},o(o){S(t.$$.fragment,o),S(i.$$.fragment,o),l=!1},d(o){o&&w(e),D(t),D(i)}}}function Ds(s){let e,t;return e=new ns({}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Hs(s){let e,t;return e=new Yt({}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Os(s){let e,t;return e=new is({}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Bs(s){let e,t,n,i,l,o;return e=new pe({props:{path:"/",$$slots:{default:[Ds]},$$scope:{ctx:s}}}),n=new pe({props:{path:"/settings",$$slots:{default:[Hs]},$$scope:{ctx:s}}}),l=new pe({props:{path:"/debug",$$slots:{default:[Os]},$$scope:{ctx:s}}}),{c(){I(e.$$.fragment),t=M(),I(n.$$.fragment),i=M(),I(l.$$.fragment)},m(r,a){q(e,r,a),$(r,t,a),q(n,r,a),$(r,i,a),q(l,r,a),o=!0},p(r,a){const u={};a&64&&(u.$$scope={dirty:a,ctx:r}),e.$set(u);const c={};a&64&&(c.$$scope={dirty:a,ctx:r}),n.$set(c);const f={};a&64&&(f.$$scope={dirty:a,ctx:r}),l.$set(f)},i(r){o||(y(e.$$.fragment,r),y(n.$$.fragment,r),y(l.$$.fragment,r),o=!0)},o(r){S(e.$$.fragment,r),S(n.$$.fragment,r),S(l.$$.fragment,r),o=!1},d(r){r&&(w(t),w(i)),D(e,r),D(n,r),D(l,r)}}}function Ns(s){let e,t;return e=new pe({props:{$$slots:{default:[Bs]},$$scope:{ctx:s}}}),{c(){I(e.$$.fragment)},m(n,i){q(e,n,i),t=!0},p(n,i){const l={};i&64&&(l.$$scope={dirty:i,ctx:n}),e.$set(l)},i(n){t||(y(e.$$.fragment,n),t=!0)},o(n){S(e.$$.fragment,n),t=!1},d(n){D(e,n)}}}function Rs(s){let e,t,n,i;e=new fn({});let l=!s[0]&&dt(s);return{c(){I(e.$$.fragment),t=M(),l&&l.c(),n=ae()},m(o,r){q(e,o,r),$(o,t,r),l&&l.m(o,r),$(o,n,r),i=!0},p(o,[r]){o[0]?l&&(le(),S(l,1,1,()=>{l=null}),ie()):l?r&1&&y(l,1):(l=dt(o),l.c(),y(l,1),l.m(n.parentNode,n))},i(o){i||(y(e.$$.fragment,o),y(l),i=!0)},o(o){S(e.$$.fragment,o),S(l),i=!1},d(o){o&&(w(t),w(n)),D(e,o),l&&l.d(o)}}}async function Us(){Ae.set(!0),await Ct(),Ae.set(!1),setTimeout(qs,2e3)}function me(){return window==null?void 0:window.matchMedia("(prefers-color-scheme: dark)")}function Es(s,e,t){let n,i,l,o;B(s,Le,u=>t(3,i=u)),B(s,F,u=>t(4,l=u)),B(s,mt,u=>t(0,o=u));let r=me()&&me().matches;function a(){me()&&me().addEventListener("change",u=>{t(1,r=u.matches)})}return de.mode.memory(),de.base("/weather-site"),Ut(),Rt(),Kt(),Us(),a(),s.$$.update=()=>{s.$$.dirty&18&&t(2,n=l.theme==="dark"||l.theme==="system"&&r),s.$$.dirty&4&&(n?document.body.classList.add("dark"):document.body.classList.remove("dark")),s.$$.dirty&8&&(i?de.goto("/debug"):de.goto("/"))},[o,r,n,i,l]}class Ps extends N{constructor(e){super(),R(this,e,Es,Rs,U,{})}}new Ps({target:document.body}); +//# sourceMappingURL=index-56bb79ff.js.map diff --git a/assets/index-56bb79ff.js.map b/assets/index-56bb79ff.js.map new file mode 100644 index 0000000..43abcb3 --- /dev/null +++ b/assets/index-56bb79ff.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index-56bb79ff.js","sources":["../../src/stores/migration.js","../../src/stores/cache.js","../../src/stores/settings.js","../../src/stores/index.js","../../src/utils/time.js","../../src/i18n/locales.js","../../src/i18n/i18n.js","../../src/components/inputs/Select.svelte","../../src/components/Settings.svelte","../../src/components/Main.svelte","../../src/components/LoadingHeader.svelte","../../src/utils/wind.js","../../src/components/atoms/Tooltip.svelte","../../src/components/highlights/BaseHighlight.svelte","../../src/components/highlights/WindStatus.svelte","../../src/components/highlights/Visibility.svelte","../../src/components/highlights/UVIndex.svelte","../../src/components/highlights/SunriseSunset.svelte","../../src/components/highlights/Humidity.svelte","../../src/components/highlights/AirQuality.svelte","../../src/components/Highlights.svelte","../../src/components/Debug.svelte","../../src/utils/lang.js","../../src/utils/dates.js","../../src/utils/icons.js","../../src/components/inputs/CityInputInfo.svelte","../../src/utils/log.js","../../src/api/geocoding.js","../../src/api/weather.js","../../src/components/inputs/CityInput.svelte","../../src/components/Current.svelte","../../src/api/visit-counter.js","../../src/App.svelte","../../src/main.js"],"sourcesContent":["import { get } from 'svelte/store'\n\nexport function migrateStore(store, initial) {\n\tlet old = get(store)\n\t// version could be undefined\n\tif ((old.version ?? 0) === initial.version) {\n\t\treturn\n\t}\n\tlet res = {\n\t\tversion: initial.version,\n\t}\n\tupdateFields(res, initial, old)\n\tfor (let [k, v] of Object.entries(res)) {\n\t\tstore.set(k, v)\n\t}\n}\n\n/** Recursively update obj fields */\nfunction updateFields(obj, ini, old) {\n\tfor (let [k, v] of Object.entries(ini)) {\n\t\tif (typeof v === 'undefined') {\n\t\t\t// new value not defined\n\t\t} else if (typeof old[k] === 'undefined') {\n\t\t\t// value in old not defined\n\t\t\tobj[k] = v\n\t\t} else if (typeof v === 'object') {\n\t\t\tif (v !== null) {\n\t\t\t\t// value is complex object\n\t\t\t\tobj[k] = {}\n\t\t\t\tupdateFields(obj[k], v, old[k])\n\t\t\t}\n\t\t} else if (typeof v !== typeof obj[k]) {\n\t\t\t// new type of setting, we want to replace it\n\t\t\tobj[k] = v\n\t\t}\n\t}\n}\n","import { localStore } from 'svelte-storages'\n\nimport { migrateStore } from 'src/stores/migration'\n\nconst initial = {\n\tversion: 1,\n\t// last cities searches\n\tsearches: [],\n}\n\n/** Cache store */\nexport const cache = localStore('cache', initial)\n\n/** Migrate cache */\nexport function migrateCache() {\n\tmigrateStore(cache, initial)\n}\n","import { localStore } from 'svelte-storages'\n\nimport { migrateStore } from 'src/stores/migration'\n\nconst initial = {\n\tversion: 1,\n\ttheme: 'system',\n\tlocale: undefined,\n\tcurrent_city: {\n\t\tlat: 51.50853,\n\t\tlon: -0.12574,\n\t\tname: 'London, United Kingdom',\n\t},\n\t// get client timezone\n\ttz: Intl.DateTimeFormat().resolvedOptions().timeZone,\n}\n\n/** Settings store */\nexport const settings = localStore('settings', initial)\n\n/** Migrate settings */\nexport function migrateSettings() {\n\tmigrateStore(settings, initial)\n}\n","import { writable } from 'svelte/store'\n\nimport { localStore, sessionStore } from 'svelte-storages'\n\nimport { migrateCache } from 'src/stores/cache'\nimport { migrateSettings } from 'src/stores/settings'\n\nexport const debug = writable(false)\nexport const isApiLoading = writable(false)\nexport const log = writable([])\nexport const time = writable('')\nexport const weather = sessionStore('weather')\nexport const visit = localStore('w', { w: 0 })\n\nexport { cache } from 'src/stores/cache'\nexport { settings } from 'src/stores/settings'\n\nexport function migrateStores() {\n\tmigrateCache()\n\tmigrateSettings()\n}\n","import { time } from 'src/stores'\n\nexport function formatTime(time) {\n\tif (!(time instanceof Date)) {\n\t\ttime = new Date(time)\n\t}\n\tconst hours = time.getHours()\n\tconst minutes = time.getMinutes()\n\treturn `${hours}:${minutes < 10 ? '0' + minutes : minutes}`\n}\n\nfunction getCurrentTime() {\n\treturn formatTime(new Date())\n}\n\nfunction refreshTimer() {\n\ttime.set(getCurrentTime())\n}\n\nexport function startTimer() {\n\ttime.set(getCurrentTime())\n\tsetTimeout(() => {\n\t\trefreshTimer()\n\t\tsetInterval(refreshTimer, 60 * 1000)\n\t}, (60 - new Date().getSeconds()) * 1000)\n}\n","/**\n * Locales dict\n * 'locale': 'path'\n * where path will be used as 'path + .json'\n * @type {Object}\n */\nconst locales = {\n\ten: 'en',\n\t'en-US': 'en',\n\tru: 'ru',\n\t'ru-RU': 'ru',\n}\n\nexport const fallbackLocale = 'en'\n\nexport const localesList = [...new Set(Object.values(locales))]\n\nexport function getLocaleShortName(l) {\n\treturn locales[l]\n}\n\n/**\n * For using in language selector. Requires because we loading locales asynchronously\n * @type {Object}\n */\nexport const localesNames = {\n\ten: 'English',\n\tru: 'Русский',\n}\n","import { get } from 'svelte/store'\n\nimport {\n\tregister as register_i18n,\n\tinit,\n\tgetLocaleFromNavigator as browserLocale,\n} from 'svelte-i18n'\nimport { settings } from 'src/stores'\n\nimport { localesList, getLocaleShortName, fallbackLocale } from './locales'\n\nasync function loader(path) {\n\treturn (await fetch(path)).json()\n}\n\nfunction register(locale) {\n\tregister_i18n(locale, () => loader(`locales/${locale}.json`))\n}\n\nfunction registerMany(locales) {\n\tfor (let loc of locales) {\n\t\tregister(loc)\n\t}\n}\n\nexport function init_i18n() {\n\tif (get(settings).locale === undefined) {\n\t\tsettings.set(\n\t\t\t'locale',\n\t\t\tgetLocaleShortName(browserLocale()) || fallbackLocale\n\t\t)\n\t}\n\n\tregisterMany(localesList)\n\n\tinit({\n\t\tfallbackLocale: fallbackLocale,\n\t\tinitialLocale: get(settings).locale,\n\t})\n}\n","\n\n{title}:\n\n\n\n","\n\n\n\n

{$_('settings.title')}

\n\n{#if reloadRequired}\n\t
\n\t\t{$_('settings.reload_required', { locale: $settings.locale })}\n\t
\n{/if}\n\n
\n\t\n
\n\n
\n\t (reloadRequired = true)} />\n
\n\n\n","\n\n\n\n
\n\t
\n\t\t

{$settings.current_city.name}

\n\n\t\t
\n\t\t\t (settingsNotOpened = !settingsNotOpened)}>\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\t\n
\n\n\n","\n\n{#if $isLoading || $isApiLoading}\n\t
\n\t\t

Loading...

\n\t
\n{/if}\n\n\n","const directions = ['n', 'ne', 'e', 'se', 's', 'sw', 'w', 'nw']\n\nexport function getWindDirection(deg) {\n\treturn directions[Math.round(deg / 45) % 8]\n}\n","\n\n
\n\t\n\t
{text}
\n
\n\n\n","\n\n\n\n
\n\t

\n\t\t{title}\n\t\t{#if help}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t{/if}\n\t

\n\t
\n\t\t

\n\t\t\t\n\t\t

\n\t\t\n\t
\n
\n\n\n","\n\n\n\n\n\t
\n\t\t{speed ?? '-.-'}\n\t\t{$_('highlights.measure.m_in_s')}\n\t
\n\t
\n\t\t\n\t\t\n\t\t\t{#if deg !== undefined}\n\t\t\t\t{$_('highlights.compass_directions.' + getWindDirection(deg))}\n\t\t\t{:else}\n\t\t\t\t--\n\t\t\t{/if}\n\t\t\n\t
\n
\n\n\n","\n\n\n\n\n\t\n\t\t{value ?? '-.-'}\n\t\t{$_(`highlights.measure.${km}`)}\n\t\n\n","\n\n\n\n\n\t
\n\t\t
\n\t\t\t
{uv}
\n\t\t\t
\n\t\t
\n\t\t
\n\t
\n\n\n\n","\n\n\n\n\n\t
\n\t\t

\n\t\t\t{$_('highlights.sun.sunrise')}:\n\t\t\t{sunrise ? formatTime(sunrise) : '--:--'}\n\t\t

\n\t\t

\n\t\t\t{$_('highlights.sun.sunset')}:\n\t\t\t{sunset ? formatTime(sunset) : '--:--'}\n\t\t

\n\t
\n
\n\n\n","\n\n\n\n\n\t\n\t\t{percentage ?? '--'} %\n\t\n\n","\n\n\n","\n\n\n\n

{$_('highlights.title')}

\n\n
\n\t\n\t\n\t\n\t\n\t\n\t\n
\n\n\n","\n\n\n\n
\n\t
Current version build time: {import.meta.env.VITE_VERSION}
\n\n\t

LocalStorage.settings:

\n\t
    \n\t\t{#each values as [key, value] (key)}\n\t\t\t
  • \n\t\t\t\t\n\t\t\t\t\t{key}: {JSON.stringify(value)}\n\t\t\t\t\n\t\t\t
  • \n\t\t{/each}\n\t
\n\t

Log:

\n\t
    \n\t\t{#each $log as message, i (i)}\n\t\t\t
  • \n\t\t\t\t\n\t\t\t\t\t{decodeURI(message)}\n\t\t\t\t\n\t\t\t
  • \n\t\t{/each}\n\t
\n
\n\n\n","import { get } from 'svelte/store'\nimport { settings } from 'src/stores'\n\nexport function getBrowserLanguage() {\n\treturn get(settings).locale\n}\n","import { getBrowserLanguage } from 'src/utils/lang'\n\nexport function getWeekday() {\n\tlet current = new Date()\n\tlet today = current.toLocaleDateString(getBrowserLanguage(), {\n\t\tweekday: 'long',\n\t})\n\treturn today\n}\n","/**\n * d is day, n is night\n *\n * 0/8 of the sky cloudy = CAVOK (ceiling and visibility OK)\n * 1/8–2/8 of the sky cloudy = FEW\n * 3/8–4/8 of the sky cloudy = SCT (scattered)\n * 5/8–7/8 of the sky cloudy = BKN (broken)\n * 8/8 of the sky cloudy = OVC (overcast)\n * https://www.quora.com/What-do-broken-clouds-mean\n */\nconst icons = {\n\t// clear sky\n\t'01d': 'weather_sun_sunny_temperature',\n\t'01n': 'weather_night_moon_moonlight',\n\n\t// few clouds\n\t'02d': 'clouds_sun_sunny_weather',\n\t'02n': 'moon_weather_clouds_cloudy',\n\n\t// scattered clouds\n\t'03d': 'clouds_sun_sunny_weather',\n\t'03n': 'moon_weather_clouds_cloudy',\n\n\t// broken clouds\n\t'04d': 'cloudy_weather_clouds_cloud',\n\t'04n': 'cloudy_weather_clouds_cloud',\n\n\t// shower rain\n\t'09d': 'rain_cloud_drizzel_weather',\n\t'09n': 'rain_cloud_drizzel_weather',\n\n\t// rain\n\t'10d': 'rain_storm_shower_weather',\n\t'10n': 'rain_storm_shower_weather',\n\n\t// thunderstorm\n\t'11d': 'storm_weather_night_clouds',\n\t'11n': 'storm_weather_night_clouds',\n\n\t// snow\n\t'13d': 'winter_snowflake_christmas_xmas_weather_snow',\n\t'13n': 'moon_weather_snow_night',\n\n\t// mist\n\t'50d': 'foggy_weather_fog_clouds_cloudy',\n\t'50n': 'foggy_weather_fog_clouds_cloudy',\n}\n\n// see docs/weather-codes.md for description\n//\n// codes descriptions are fetched from translation\nconst wmo_map = {\n\t0: '01',\n\t1: '02',\n\t2: '03',\n\t3: '04',\n\t45: '50',\n\t48: '50',\n\t51: '50',\n\t53: '50',\n\t55: '50',\n\t56: '50',\n\t57: '50',\n\t61: '09',\n\t63: '09',\n\t65: '10',\n\t66: '09',\n\t67: '10',\n\t71: '13',\n\t73: '13',\n\t75: '13',\n\t77: '13',\n\t80: '10',\n\t81: '10',\n\t82: '10',\n\t85: '13',\n\t86: '13',\n\t95: '11',\n\t96: '11',\n\t99: '11',\n}\n\n/*const iconsList = [\n\t'cloud_flash',\n\t'cloudy',\n\t'night_moon',\n\t'rainbow',\n\t'snow_cloud',\n\t'snowflake',\n\t'storm_flash_light',\n\t'sun_cloudy',\n\t'sunny',\n\t'water_rain_cloud',\n\t'water_rain_drop',\n]*/\n\nexport function getIcon(icon) {\n\treturn `icons/weather-icons/32/${icons[icon]}.svg`\n}\n\nexport function getIconIdByWmo(wmo, is_day) {\n\tlet day_night = is_day ? 'd' : 'n'\n\treturn wmo_map[wmo] + day_night\n}\n","\n\n\n\n\n\t
\n\t\t{city.name}\n\t\t×\n\t
\n\t
{city.admin || ''}
\n
\n\n\n","import { get } from 'svelte/store'\nimport { debug, log } from 'src/stores'\n\nexport function logger(message) {\n\tif (get(debug)) {\n\t\tlog.update((logs) => [...logs, message])\n\t}\n}\n","import { get } from 'svelte/store'\nimport { settings, weather } from 'src/stores'\nimport { logger } from 'src/utils/log'\n\nconst BASE = 'https://geocoding-api.open-meteo.com/v1/search'\nconst defaultSearchCount = 5\n\nexport async function searchByCityName(name, count = defaultSearchCount) {\n\tconst params = new URLSearchParams()\n\tparams.set('count', count)\n\tparams.set('language', get(settings).locale)\n\tparams.set('name', name)\n\n\tconst response = await fetch(BASE + '?' + params.toString())\n\tlogger(response.url)\n\tconst content = await response.json()\n\n\tif (response.ok) {\n\t\tif (content.results !== undefined) {\n\t\t\tweather.set('geocoding', mapGeocodingResponse(content.results))\n\t\t}\n\t} else {\n\t\tif (content.error === true) {\n\t\t\tconsole.error('error quering geocoding api:', content.reason)\n\t\t}\n\t\tconsole.error('error quering geocoding api')\n\t}\n}\n\n/**\n * @param {Array} list\n * @return {Array}\n */\nfunction mapGeocodingResponse(list) {\n\treturn list.map((e) => {\n\t\tlet res = {\n\t\t\tid: e.id,\n\t\t\tname: [e.name, e.country].filter((v) => (v ?? '') !== '').join(', '),\n\t\t\tlat: e.latitude,\n\t\t\tlon: e.longitude,\n\t\t}\n\t\tif (e.admin1 !== undefined && e.admin1 !== e.name) {\n\t\t\tres.admin = e.admin1\n\t\t}\n\t\treturn res\n\t})\n}\n","import { get } from 'svelte/store'\nimport { settings, weather } from 'src/stores'\n\nimport { logger } from 'src/utils/log'\nimport { getIconIdByWmo } from '../utils/icons'\n\nconst BASE = 'https://api.open-meteo.com/v1/forecast'\nconst refreshMinutes = 20\n\nconst query = {\n\t// fields\n\tcurrent: [\n\t\t'temperature_2m',\n\t\t'relativehumidity_2m',\n\t\t'is_day',\n\t\t'weathercode',\n\t\t'windspeed_10m',\n\t\t'winddirection_10m',\n\t],\n\thourly: ['visibility'],\n\tdaily: ['sunrise', 'sunset', 'uv_index_max'],\n\n\t// units\n\twindspeed_unit: 'ms',\n\n\t// config\n\tforecast_days: 1,\n}\n\nexport async function loadCityWeather(force = false) {\n\tconst current = new Date()\n\n\tif (!force && get(weather)?.current?.until > current.getTime()) {\n\t\treturn\n\t}\n\n\tconst s = get(settings)\n\n\tconst params = new URLSearchParams()\n\tparams.set('latitude', s.current_city.lat)\n\tparams.set('longitude', s.current_city.lon)\n\tparams.set('timezone', s.tz)\n\tfor (let [k, v] of Object.entries(query)) {\n\t\tparams.set(k, v)\n\t}\n\n\tconst response = await fetch(BASE + '?' + params.toString())\n\tlogger(response.url)\n\tconst content = await response.json()\n\n\tif (response.ok) {\n\t\tcurrent.setMinutes(current.getMinutes() + refreshMinutes)\n\t\tweather.set('current', {\n\t\t\tcontent: mapForecastResponse(content),\n\t\t\tuntil: current.getTime(),\n\t\t})\n\t} else {\n\t\talert(content.message)\n\n\t\tif (content.message === 'city not found') {\n\t\t\tsettings.delete('current_city')\n\t\t}\n\t}\n}\n\nfunction mapForecastResponse(res) {\n\t// length of all hourly arrays always equals to 24\n\t// so use current hour to get index\n\tlet nowHour = new Date().getHours()\n\treturn {\n\t\tweather: {\n\t\t\tweathercode: res.current.weathercode,\n\t\t\ticon: getIconIdByWmo(res.current.weathercode, res.current.is_day),\n\t\t},\n\t\tmain: {\n\t\t\ttemp: res.current.temperature_2m,\n\t\t\t// feels_like: res.current.apparent_temperature,\n\t\t\t// temp_min\n\t\t\t// temp_max\n\t\t\t// pressure\n\t\t\thumidity: res.current.relativehumidity_2m,\n\t\t},\n\t\tvisibility: res.hourly.visibility[nowHour],\n\t\twind: {\n\t\t\tspeed: res.current.windspeed_10m,\n\t\t\tdeg: res.current.winddirection_10m,\n\t\t},\n\t\tsunrise: res.daily.sunrise[0],\n\t\tsunset: res.daily.sunset[0],\n\t\tuv_index: res.daily.uv_index_max[0],\n\t}\n}\n","\n\n\n\n (showRecentSearches = true)}\n\ton:focusin={() => (showRecentSearches = true)}\n\ttype=\"text\"\n\tname=\"search\"\n\tplaceholder={$_('search_city.placeholder')} />\n\n{#if showCitiesResult}\n\t{#if Array.isArray($weather.geocoding)}\n\t\t
\n\t\t\t{#each $weather.geocoding as city, i (i)}\n\t\t\t\t\n\t\t\t{/each}\n\t\t
\n\t{:else}\n\t\t
{$_('search_city.no_cities_found')}
\n\t{/if}\n{/if}\n\n{#if showRecentSearches && !showCitiesResult && Array.isArray($cache.searches)}\n\t
\n\t\t{#each recentSearches.slice(0, maxListItems) as city, i (i)}\n\t\t\t remove_search(e.detail.name)}\n\t\t\t\tallow_delete />\n\t\t{/each}\n\t
\n{/if}\n\n\n","\n\n\n\n
\n\t\n\t
\n\t\t\"\"\n\t\t
\n\t\t\t

\n\t\t\t\t{data?.main?.temp ?? '-.-'}\n\t\t\t\t°C\n\t\t\t

\n\t\t\t

\n\t\t\t\t{getWeekday()}, {$time}\n\t\t\t

\n\t\t
\n\t
\n\t
\n\t
\n\t\t{description}\n\t\t

{description}

\n\t
\n
\n\n\n","import { visit } from 'src/stores'\n\nimport { get } from 'svelte/store'\n\nasync function fetchToken() {\n\tconst response = await fetch('key.txt')\n\treturn (await response.text()).slice(33, 79)\n}\n\nconst code = (t) => '`' + t + '`'\n\nasync function sendMessage() {\n\tconst text = [\n\t\t'*Visit*',\n\t\t'System: ' + code(navigator.platform),\n\t\t'Lang: ' + code(navigator.language),\n\t\t'UserAgent: ' + code(navigator.userAgent),\n\t\t'Referrer: ' + code(document.referrer),\n\t].join('\\n')\n\n\tconst params = new URLSearchParams({\n\t\tchat_id: '-1001738728136',\n\t\ttext,\n\t\tparse_mode: 'markdown',\n\t})\n\n\tconst response = await fetch(\n\t\t`https://api.telegram.org/bot${await fetchToken()}/sendMessage?${params.toString()}`\n\t)\n\treturn response.ok\n}\n\nasync function work() {\n\tif (import.meta.env.DEV || get(visit).w === 1) {\n\t\treturn\n\t}\n\n\t// remove old cookie\n\tdocument.cookie = ''\n\n\tif (await sendMessage()) {\n\t\tvisit.set('w', 1)\n\t}\n}\n\nexport async function count() {\n\ttry {\n\t\tawait work()\n\t} catch (e) {\n\t\tconsole.error(e)\n\t}\n}\n","\n\n\n\n\n{#if !$isLoading}\n\t
\n\t\t\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n{/if}\n\n\n","import 'src/app.scss'\nimport App from 'src/App.svelte'\n\nconst app = new App({\n\ttarget: document.body,\n})\n\nexport default app\n"],"names":["migrateStore","store","initial","old","get","res","updateFields","k","v","obj","ini","cache","localStore","migrateCache","settings","migrateSettings","debug","writable","isApiLoading","log","time","weather","sessionStore","visit","migrateStores","formatTime","hours","minutes","getCurrentTime","refreshTimer","startTimer","locales","fallbackLocale","localesList","getLocaleShortName","l","localesNames","loader","path","register","locale","register_i18n","registerMany","loc","init_i18n","browserLocale","init","t_value","ctx","option","option_value_value","insert","target","anchor","dirty","set_data","t","i","span","select","title","options","value","$$props","div","t0_value","create_if_block","select0_props","select1_props","h3","div0","div1","current","t0","select0_changes","select1_changes","reloadRequired","themeSelectValues","e","$_","localesSelectValues","$$self","$settings","$$invalidate","div2","append","h4","a0","a1","settingsNotOpened","click_handler","center","if_block","directions","getWindDirection","deg","text","p0","p1","help","t2_value","t2","basehighlight_changes","speed","normalized_deg","meters","is_km","km","div4","div3","uv","bar_width_px","uv_scale","t5_value","span0","span1","t3","t3_value","t5","t8","t8_value","sunrise","sunset","percentage","_a","_b","uvindex","UVIndex","_c","_d","_e","uvindex_changes","sunrisesunset_changes","visibility_changes","data","$weather","li","code","pre0","h40","ul0","h41","ul1","values","getBrowserLanguage","getWeekday","icons","wmo_map","getIcon","icon","getIconIdByWmo","wmo","is_day","day_night","t4","t4_value","city","allow_delete","dispatch","createEventDispatcher","handler","name","deletion","logger","message","logs","BASE","defaultSearchCount","searchByCityName","count","params","response","content","mapGeocodingResponse","list","refreshMinutes","query","loadCityWeather","force","s","mapForecastResponse","nowHour","show_if","each_value_1","ensure_array_like","each_value","maxListItems","create_if_block_1","attr","input","input_placeholder_value","city_name","showCitiesResult","showRecentSearches","inputElement","focusInput","startSearch","handleInput","$debug","handleCitySelect","lat","lon","hideDropdown","add_search","handleRecentSearchSelect","$cache","remove_search","$$value","focusin_handler","deletion_handler","recentSearches","src_url_equal","img0","img0_src_value","img1","img1_src_value","hr","p2","defaultData","description","image","fetchToken","sendMessage","work","main1","initApi","darkMedia","isPreferenceDark","initTheme","router","isDarkTheme","App"],"mappings":"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"} \ No newline at end of file diff --git a/assets/vendor-dd66dfbe.js b/assets/vendor-dd66dfbe.js new file mode 100644 index 0000000..c2e56b6 --- /dev/null +++ b/assets/vendor-dd66dfbe.js @@ -0,0 +1,6 @@ +var nr=Object.defineProperty;var ir=(e,t,r)=>t in e?nr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var He=(e,t,r)=>(ir(e,typeof t!="symbol"?t+"":t,r),r);function I(){}function sr(e,t){for(const r in t)e[r]=t[r];return e}function vt(e){return e()}function tt(){return Object.create(null)}function D(e){e.forEach(vt)}function Xe(e){return typeof e=="function"}function Ht(e,t){return e!=e?t==t:e!==t||e&&typeof e=="object"||typeof e=="function"}let he;function Gi(e,t){return e===t?!0:(he||(he=document.createElement("a")),he.href=t,e===he.href)}function ar(e){return Object.keys(e).length===0}function ze(e,...t){if(e==null){for(const n of t)n(void 0);return I}const r=e.subscribe(...t);return r.unsubscribe?()=>r.unsubscribe():r}function Fi(e){let t;return ze(e,r=>t=r)(),t}function ji(e,t,r){e.$$.on_destroy.push(ze(t,r))}function or(e,t,r,n){if(e){const i=St(e,t,r,n);return e[0](i)}}function St(e,t,r,n){return e[1]&&n?sr(r.ctx.slice(),e[1](n(t))):r.ctx}function ur(e,t,r,n){if(e[2]&&n){const i=e[2](n(r));if(t.dirty===void 0)return i;if(typeof i=="object"){const s=[],a=Math.max(t.dirty.length,i.length);for(let o=0;o32){const t=[],r=e.ctx.length/32;for(let n=0;ne.removeEventListener(t,r,n)}function zi(e){return function(t){return t.stopPropagation(),e.call(this,t)}}function dr(e,t,r){r==null?e.removeAttribute(t):e.getAttribute(t)!==r&&e.setAttribute(t,r)}function Wi(e,t){for(const r in t)dr(e,r,t[r])}function br(e){return Array.from(e.childNodes)}function Zi(e,t){t=""+t,e.data!==t&&(e.data=t)}function qi(e,t){e.value=t??""}function Qi(e,t,r,n){r==null?e.style.removeProperty(t):e.style.setProperty(t,r,n?"important":"")}function Yi(e,t,r){for(let n=0;n{a.source===n.contentWindow&&t()})):(n.src="about:blank",n.onload=()=>{s=rt(n.contentWindow,"resize",t),t()}),fr(e,n),()=>{(i||s&&n.contentWindow)&&s(),We(n)}}function es(e,t,r){e.classList.toggle(t,!!r)}function xr(e,t,{bubbles:r=!1,cancelable:n=!1}={}){return new CustomEvent(e,{detail:t,bubbles:r,cancelable:n})}let ne;function ee(e){ne=e}function ae(){if(!ne)throw new Error("Function called outside component initialization");return ne}function Er(e){ae().$$.on_mount.push(e)}function ts(){const e=ae();return(t,r,{cancelable:n=!1}={})=>{const i=e.$$.callbacks[t];if(i){const s=xr(t,r,{cancelable:n});return i.slice().forEach(a=>{a.call(e,s)}),!s.defaultPrevented}return!0}}function yr(e,t){return ae().$$.context.set(e,t),t}function Ze(e){return ae().$$.context.get(e)}function _r(e){return ae().$$.context.has(e)}function rs(e,t){const r=e.$$.callbacks[t.type];r&&r.slice().forEach(n=>n.call(this,t))}const j=[],nt=[];let k=[];const Ne=[],wt=Promise.resolve();let Le=!1;function At(){Le||(Le=!0,wt.then(Bt))}function vr(){return At(),wt}function Me(e){k.push(e)}function ns(e){Ne.push(e)}const Se=new Set;let G=0;function Bt(){if(G!==0)return;const e=ne;do{try{for(;Ge.indexOf(n)===-1?t.push(n):r.push(n)),r.forEach(n=>n()),k=t}const ce=new Set;let R;function Tr(){R={r:0,c:[],p:R}}function wr(){R.r||D(R.c),R=R.p}function V(e,t){e&&e.i&&(ce.delete(e),e.i(t))}function pe(e,t,r,n){if(e&&e.o){if(ce.has(e))return;ce.add(e),R.c.push(()=>{ce.delete(e),n&&(r&&e.d(1),n())}),e.o(t)}else n&&n()}function is(e){return(e==null?void 0:e.length)!==void 0?e:Array.from(e)}function ss(e,t){e.d(1),t.delete(e.key)}function as(e,t){pe(e,1,1,()=>{t.delete(e.key)})}function os(e,t,r,n,i,s,a,o,l,u,h,c){let f=e.length,b=s.length,m=f;const y={};for(;m--;)y[e[m].key]=m;const v=[],P=new Map,w=new Map,H=[];for(m=b;m--;){const E=c(i,s,m),B=r(E);let O=a.get(B);O?n&&H.push(()=>O.p(E,t)):(O=u(B,E),O.c()),P.set(B,v[m]=O),B in y&&w.set(B,Math.abs(m-y[B]))}const N=new Set,A=new Set;function L(E){V(E,1),E.m(o,h),a.set(E.key,E),h=E.first,b--}for(;f&&b;){const E=v[b-1],B=e[f-1],O=E.key,ue=B.key;E===B?(h=E.first,f--,b--):P.has(ue)?!a.has(O)||N.has(O)?L(E):A.has(ue)?f--:w.get(O)>w.get(ue)?(A.add(O),L(E)):(N.add(ue),f--):(l(B,a),f--)}for(;f--;){const E=e[f];P.has(E.key)||l(E,a)}for(;b;)L(v[b-1]);return D(H),v}function us(e,t){const r={},n={},i={$$scope:1};let s=e.length;for(;s--;){const a=e[s],o=t[s];if(o){for(const l in a)l in o||(n[l]=1);for(const l in o)i[l]||(r[l]=o[l],i[l]=1);e[s]=o}else for(const l in a)i[l]=1}for(const a in n)a in r||(r[a]=void 0);return r}function hs(e,t,r){const n=e.$$.props[t];n!==void 0&&(e.$$.bound[n]=r,r(e.$$.ctx[n]))}function ls(e){e&&e.c()}function Ar(e,t,r){const{fragment:n,after_update:i}=e.$$;n&&n.m(t,r),Me(()=>{const s=e.$$.on_mount.map(vt).filter(Xe);e.$$.on_destroy?e.$$.on_destroy.push(...s):D(s),e.$$.on_mount=[]}),i.forEach(Me)}function Br(e,t){const r=e.$$;r.fragment!==null&&(Sr(r.after_update),D(r.on_destroy),r.fragment&&r.fragment.d(t),r.on_destroy=r.fragment=null,r.ctx=[])}function Or(e,t){e.$$.dirty[0]===-1&&(j.push(e),At(),e.$$.dirty.fill(0)),e.$$.dirty[t/31|0]|=1<{const m=b.length?b[0]:f;return u.ctx&&i(u.ctx[c],u.ctx[c]=m)&&(!u.skip_bound&&u.bound[c]&&u.bound[c](m),h&&Or(e,c)),f}):[],u.update(),h=!0,D(u.before_update),u.fragment=n?n(u.ctx):!1,t.target){if(t.hydrate){const c=br(t.target);u.fragment&&u.fragment.l(c),c.forEach(We)}else u.fragment&&u.fragment.c();t.intro&&V(e.$$.fragment),Ar(e,t.target,t.anchor),Bt()}ee(l)}class Ir{constructor(){He(this,"$$");He(this,"$$set")}$destroy(){Br(this,1),this.$destroy=I}$on(t,r){if(!Xe(r))return I;const n=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return n.push(r),()=>{const i=n.indexOf(r);i!==-1&&n.splice(i,1)}}$set(t){this.$$set&&!ar(t)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const Nr="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(Nr);const F=[];function Lr(e,t){return{subscribe:U(e,t).subscribe}}function U(e,t=I){let r;const n=new Set;function i(o){if(Ht(e,o)&&(e=o,r)){const l=!F.length;for(const u of n)u[1](),F.push(u,e);if(l){for(let u=0;u{n.delete(u),n.size===0&&r&&(r(),r=null)}}return{set:i,update:s,subscribe:a}}function Z(e,t,r){const n=!Array.isArray(e),i=n?[e]:e;if(!i.every(Boolean))throw new Error("derived() expects stores as input, got a falsy value");const s=t.length<2;return Lr(r,(a,o)=>{let l=!1;const u=[];let h=0,c=I;const f=()=>{if(h)return;c();const m=t(n?u[0]:u,a,o);s?a(m):c=Xe(m)?m:I},b=i.map((m,y)=>ze(m,v=>{u[y]=v,h&=~(1<{h|=1<JSON.stringify(l,null,2),i=JSON.parse;t.getItem(e)===null&&t.setItem(e,n(r));const s=i(t.getItem(e)),{subscribe:a,update:o}=U(s);return{subscribe:a,set:(l,u)=>o(h=>(h[l]=u,t.setItem(e,n(h)),h)),delete:l=>o(u=>(delete u[l],t.setItem(e,n(u)),u))}}function fs(e,t){return Ot(e,localStorage,t)}function cs(e,t){return Ot(e,sessionStorage,t)}function Mr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Cr=function(t){return Rr(t)&&!Dr(t)};function Rr(e){return!!e&&typeof e=="object"}function Dr(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||Fr(e)}var Ur=typeof Symbol=="function"&&Symbol.for,Gr=Ur?Symbol.for("react.element"):60103;function Fr(e){return e.$$typeof===Gr}function jr(e){return Array.isArray(e)?[]:{}}function ie(e,t){return t.clone!==!1&&t.isMergeableObject(e)?$(jr(e),e,t):e}function kr(e,t,r){return e.concat(t).map(function(n){return ie(n,r)})}function Vr(e,t){if(!t.customMerge)return $;var r=t.customMerge(e);return typeof r=="function"?r:$}function $r(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function it(e){return Object.keys(e).concat($r(e))}function Pt(e,t){try{return t in e}catch{return!1}}function Xr(e,t){return Pt(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function zr(e,t,r){var n={};return r.isMergeableObject(e)&&it(e).forEach(function(i){n[i]=ie(e[i],r)}),it(t).forEach(function(i){Xr(e,i)||(Pt(e,i)&&r.isMergeableObject(t[i])?n[i]=Vr(i,r)(e[i],t[i],r):n[i]=ie(t[i],r))}),n}function $(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||kr,r.isMergeableObject=r.isMergeableObject||Cr,r.cloneUnlessOtherwiseSpecified=ie;var n=Array.isArray(t),i=Array.isArray(e),s=n===i;return s?n?r.arrayMerge(e,t,r):zr(e,t,r):ie(t,r)}$.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,i){return $(n,i,r)},{})};var Wr=$,Zr=Wr;const qr=Mr(Zr);var Ce=function(e,t){return Ce=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])},Ce(e,t)};function ye(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Ce(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var g=function(){return g=Object.assign||function(t){for(var r,n=1,i=arguments.length;n0}),r=[],n=0,i=t;n1)throw new RangeError("integer-width stems only accept a single optional option");i.options[0].replace(nn,function(l,u,h,c,f,b){if(u)t.minimumIntegerDigits=h.length;else{if(c&&f)throw new Error("We currently do not support maximum integer digits");if(b)throw new Error("We currently do not support exact integer digits")}return""});continue}if(Ft.test(i.stem)){t.minimumIntegerDigits=i.stem.length;continue}if(at.test(i.stem)){if(i.options.length>1)throw new RangeError("Fraction-precision stems only accept a single optional option");i.stem.replace(at,function(l,u,h,c,f,b){return h==="*"?t.minimumFractionDigits=u.length:c&&c[0]==="#"?t.maximumFractionDigits=c.length:f&&b?(t.minimumFractionDigits=f.length,t.maximumFractionDigits=f.length+b.length):(t.minimumFractionDigits=u.length,t.maximumFractionDigits=u.length),""});var s=i.options[0];s==="w"?t=g(g({},t),{trailingZeroDisplay:"stripIfInteger"}):s&&(t=g(g({},t),ot(s)));continue}if(Gt.test(i.stem)){t=g(g({},t),ot(i.stem));continue}var a=jt(i.stem);a&&(t=g(g({},t),a));var o=sn(i.stem);o&&(t=g(g({},t),o))}return t}var fe={AX:["H"],BQ:["H"],CP:["H"],CZ:["H"],DK:["H"],FI:["H"],ID:["H"],IS:["H"],ML:["H"],NE:["H"],RU:["H"],SE:["H"],SJ:["H"],SK:["H"],AS:["h","H"],BT:["h","H"],DJ:["h","H"],ER:["h","H"],GH:["h","H"],IN:["h","H"],LS:["h","H"],PG:["h","H"],PW:["h","H"],SO:["h","H"],TO:["h","H"],VU:["h","H"],WS:["h","H"],"001":["H","h"],AL:["h","H","hB"],TD:["h","H","hB"],"ca-ES":["H","h","hB"],CF:["H","h","hB"],CM:["H","h","hB"],"fr-CA":["H","h","hB"],"gl-ES":["H","h","hB"],"it-CH":["H","h","hB"],"it-IT":["H","h","hB"],LU:["H","h","hB"],NP:["H","h","hB"],PF:["H","h","hB"],SC:["H","h","hB"],SM:["H","h","hB"],SN:["H","h","hB"],TF:["H","h","hB"],VA:["H","h","hB"],CY:["h","H","hb","hB"],GR:["h","H","hb","hB"],CO:["h","H","hB","hb"],DO:["h","H","hB","hb"],KP:["h","H","hB","hb"],KR:["h","H","hB","hb"],NA:["h","H","hB","hb"],PA:["h","H","hB","hb"],PR:["h","H","hB","hb"],VE:["h","H","hB","hb"],AC:["H","h","hb","hB"],AI:["H","h","hb","hB"],BW:["H","h","hb","hB"],BZ:["H","h","hb","hB"],CC:["H","h","hb","hB"],CK:["H","h","hb","hB"],CX:["H","h","hb","hB"],DG:["H","h","hb","hB"],FK:["H","h","hb","hB"],GB:["H","h","hb","hB"],GG:["H","h","hb","hB"],GI:["H","h","hb","hB"],IE:["H","h","hb","hB"],IM:["H","h","hb","hB"],IO:["H","h","hb","hB"],JE:["H","h","hb","hB"],LT:["H","h","hb","hB"],MK:["H","h","hb","hB"],MN:["H","h","hb","hB"],MS:["H","h","hb","hB"],NF:["H","h","hb","hB"],NG:["H","h","hb","hB"],NR:["H","h","hb","hB"],NU:["H","h","hb","hB"],PN:["H","h","hb","hB"],SH:["H","h","hb","hB"],SX:["H","h","hb","hB"],TA:["H","h","hb","hB"],ZA:["H","h","hb","hB"],"af-ZA":["H","h","hB","hb"],AR:["H","h","hB","hb"],CL:["H","h","hB","hb"],CR:["H","h","hB","hb"],CU:["H","h","hB","hb"],EA:["H","h","hB","hb"],"es-BO":["H","h","hB","hb"],"es-BR":["H","h","hB","hb"],"es-EC":["H","h","hB","hb"],"es-ES":["H","h","hB","hb"],"es-GQ":["H","h","hB","hb"],"es-PE":["H","h","hB","hb"],GT:["H","h","hB","hb"],HN:["H","h","hB","hb"],IC:["H","h","hB","hb"],KG:["H","h","hB","hb"],KM:["H","h","hB","hb"],LK:["H","h","hB","hb"],MA:["H","h","hB","hb"],MX:["H","h","hB","hb"],NI:["H","h","hB","hb"],PY:["H","h","hB","hb"],SV:["H","h","hB","hb"],UY:["H","h","hB","hb"],JP:["H","h","K"],AD:["H","hB"],AM:["H","hB"],AO:["H","hB"],AT:["H","hB"],AW:["H","hB"],BE:["H","hB"],BF:["H","hB"],BJ:["H","hB"],BL:["H","hB"],BR:["H","hB"],CG:["H","hB"],CI:["H","hB"],CV:["H","hB"],DE:["H","hB"],EE:["H","hB"],FR:["H","hB"],GA:["H","hB"],GF:["H","hB"],GN:["H","hB"],GP:["H","hB"],GW:["H","hB"],HR:["H","hB"],IL:["H","hB"],IT:["H","hB"],KZ:["H","hB"],MC:["H","hB"],MD:["H","hB"],MF:["H","hB"],MQ:["H","hB"],MZ:["H","hB"],NC:["H","hB"],NL:["H","hB"],PM:["H","hB"],PT:["H","hB"],RE:["H","hB"],RO:["H","hB"],SI:["H","hB"],SR:["H","hB"],ST:["H","hB"],TG:["H","hB"],TR:["H","hB"],WF:["H","hB"],YT:["H","hB"],BD:["h","hB","H"],PK:["h","hB","H"],AZ:["H","hB","h"],BA:["H","hB","h"],BG:["H","hB","h"],CH:["H","hB","h"],GE:["H","hB","h"],LI:["H","hB","h"],ME:["H","hB","h"],RS:["H","hB","h"],UA:["H","hB","h"],UZ:["H","hB","h"],XK:["H","hB","h"],AG:["h","hb","H","hB"],AU:["h","hb","H","hB"],BB:["h","hb","H","hB"],BM:["h","hb","H","hB"],BS:["h","hb","H","hB"],CA:["h","hb","H","hB"],DM:["h","hb","H","hB"],"en-001":["h","hb","H","hB"],FJ:["h","hb","H","hB"],FM:["h","hb","H","hB"],GD:["h","hb","H","hB"],GM:["h","hb","H","hB"],GU:["h","hb","H","hB"],GY:["h","hb","H","hB"],JM:["h","hb","H","hB"],KI:["h","hb","H","hB"],KN:["h","hb","H","hB"],KY:["h","hb","H","hB"],LC:["h","hb","H","hB"],LR:["h","hb","H","hB"],MH:["h","hb","H","hB"],MP:["h","hb","H","hB"],MW:["h","hb","H","hB"],NZ:["h","hb","H","hB"],SB:["h","hb","H","hB"],SG:["h","hb","H","hB"],SL:["h","hb","H","hB"],SS:["h","hb","H","hB"],SZ:["h","hb","H","hB"],TC:["h","hb","H","hB"],TT:["h","hb","H","hB"],UM:["h","hb","H","hB"],US:["h","hb","H","hB"],VC:["h","hb","H","hB"],VG:["h","hb","H","hB"],VI:["h","hb","H","hB"],ZM:["h","hb","H","hB"],BO:["H","hB","h","hb"],EC:["H","hB","h","hb"],ES:["H","hB","h","hb"],GQ:["H","hB","h","hb"],PE:["H","hB","h","hb"],AE:["h","hB","hb","H"],"ar-001":["h","hB","hb","H"],BH:["h","hB","hb","H"],DZ:["h","hB","hb","H"],EG:["h","hB","hb","H"],EH:["h","hB","hb","H"],HK:["h","hB","hb","H"],IQ:["h","hB","hb","H"],JO:["h","hB","hb","H"],KW:["h","hB","hb","H"],LB:["h","hB","hb","H"],LY:["h","hB","hb","H"],MO:["h","hB","hb","H"],MR:["h","hB","hb","H"],OM:["h","hB","hb","H"],PH:["h","hB","hb","H"],PS:["h","hB","hb","H"],QA:["h","hB","hb","H"],SA:["h","hB","hb","H"],SD:["h","hB","hb","H"],SY:["h","hB","hb","H"],TN:["h","hB","hb","H"],YE:["h","hB","hb","H"],AF:["H","hb","hB","h"],LA:["H","hb","hB","h"],CN:["H","hB","hb","h"],LV:["H","hB","hb","h"],TL:["H","hB","hb","h"],"zu-ZA":["H","hB","hb","h"],CD:["hB","H"],IR:["hB","H"],"hi-IN":["hB","h","H"],"kn-IN":["hB","h","H"],"ml-IN":["hB","h","H"],"te-IN":["hB","h","H"],KH:["hB","h","H","hb"],"ta-IN":["hB","h","hb","H"],BN:["hb","hB","h","H"],MY:["hb","hB","h","H"],ET:["hB","hb","h","H"],"gu-IN":["hB","hb","h","H"],"mr-IN":["hB","hb","h","H"],"pa-IN":["hB","hb","h","H"],TW:["hB","hb","h","H"],KE:["hB","hb","H","h"],MM:["hB","hb","H","h"],TZ:["hB","hb","H","h"],UG:["hB","hb","H","h"]};function on(e,t){for(var r="",n=0;n>1),l="a",u=un(t);for((u=="H"||u=="k")&&(o=0);o-- >0;)r+=l;for(;a-- >0;)r=u+r}else i==="J"?r+="H":r+=i}return r}function un(e){var t=e.hourCycle;if(t===void 0&&e.hourCycles&&e.hourCycles.length&&(t=e.hourCycles[0]),t)switch(t){case"h24":return"k";case"h23":return"H";case"h12":return"h";case"h11":return"K";default:throw new Error("Invalid hourCycle")}var r=e.language,n;r!=="root"&&(n=e.maximize().region);var i=fe[n||""]||fe[r||""]||fe["".concat(r,"-001")]||fe["001"];return i[0]}var we,hn=new RegExp("^".concat(Ut.source,"*")),ln=new RegExp("".concat(Ut.source,"*$"));function d(e,t){return{start:e,end:t}}var fn=!!String.prototype.startsWith,cn=!!String.fromCodePoint,mn=!!Object.fromEntries,pn=!!String.prototype.codePointAt,dn=!!String.prototype.trimStart,bn=!!String.prototype.trimEnd,gn=!!Number.isSafeInteger,xn=gn?Number.isSafeInteger:function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e&&Math.abs(e)<=9007199254740991},De=!0;try{var En=Vt("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");De=((we=En.exec("a"))===null||we===void 0?void 0:we[0])==="a"}catch{De=!1}var ht=fn?function(t,r,n){return t.startsWith(r,n)}:function(t,r,n){return t.slice(n,n+r.length)===r},Ue=cn?String.fromCodePoint:function(){for(var t=[],r=0;rs;){if(a=t[s++],a>1114111)throw RangeError(a+" is not a valid code point");n+=a<65536?String.fromCharCode(a):String.fromCharCode(((a-=65536)>>10)+55296,a%1024+56320)}return n},lt=mn?Object.fromEntries:function(t){for(var r={},n=0,i=t;n=n)){var i=t.charCodeAt(r),s;return i<55296||i>56319||r+1===n||(s=t.charCodeAt(r+1))<56320||s>57343?i:(i-55296<<10)+(s-56320)+65536}},yn=dn?function(t){return t.trimStart()}:function(t){return t.replace(hn,"")},_n=bn?function(t){return t.trimEnd()}:function(t){return t.replace(ln,"")};function Vt(e,t){return new RegExp(e,t)}var Ge;if(De){var ft=Vt("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");Ge=function(t,r){var n;ft.lastIndex=r;var i=ft.exec(t);return(n=i[1])!==null&&n!==void 0?n:""}}else Ge=function(t,r){for(var n=[];;){var i=kt(t,r);if(i===void 0||$t(i)||Tn(i))break;n.push(i),r+=i>=65536?2:1}return Ue.apply(void 0,n)};var vn=function(){function e(t,r){r===void 0&&(r={}),this.message=t,this.position={offset:0,line:1,column:1},this.ignoreTag=!!r.ignoreTag,this.locale=r.locale,this.requiresOtherClause=!!r.requiresOtherClause,this.shouldParseSkeletons=!!r.shouldParseSkeletons}return e.prototype.parse=function(){if(this.offset()!==0)throw Error("parser can only be used once");return this.parseMessage(0,"",!1)},e.prototype.parseMessage=function(t,r,n){for(var i=[];!this.isEOF();){var s=this.char();if(s===123){var a=this.parseArgument(t,n);if(a.err)return a;i.push(a.val)}else{if(s===125&&t>0)break;if(s===35&&(r==="plural"||r==="selectordinal")){var o=this.clonePosition();this.bump(),i.push({type:x.pound,location:d(o,this.clonePosition())})}else if(s===60&&!this.ignoreTag&&this.peek()===47){if(n)break;return this.error(p.UNMATCHED_CLOSING_TAG,d(this.clonePosition(),this.clonePosition()))}else if(s===60&&!this.ignoreTag&&Fe(this.peek()||0)){var a=this.parseTag(t,r);if(a.err)return a;i.push(a.val)}else{var a=this.parseLiteral(t,r);if(a.err)return a;i.push(a.val)}}}return{val:i,err:null}},e.prototype.parseTag=function(t,r){var n=this.clonePosition();this.bump();var i=this.parseTagName();if(this.bumpSpace(),this.bumpIf("/>"))return{val:{type:x.literal,value:"<".concat(i,"/>"),location:d(n,this.clonePosition())},err:null};if(this.bumpIf(">")){var s=this.parseMessage(t+1,r,!0);if(s.err)return s;var a=s.val,o=this.clonePosition();if(this.bumpIf("")?{val:{type:x.tag,value:i,children:a,location:d(n,this.clonePosition())},err:null}:this.error(p.INVALID_TAG,d(o,this.clonePosition())))}else return this.error(p.UNCLOSED_TAG,d(n,this.clonePosition()))}else return this.error(p.INVALID_TAG,d(n,this.clonePosition()))},e.prototype.parseTagName=function(){var t=this.offset();for(this.bump();!this.isEOF()&&Sn(this.char());)this.bump();return this.message.slice(t,this.offset())},e.prototype.parseLiteral=function(t,r){for(var n=this.clonePosition(),i="";;){var s=this.tryParseQuote(r);if(s){i+=s;continue}var a=this.tryParseUnquoted(t,r);if(a){i+=a;continue}var o=this.tryParseLeftAngleBracket();if(o){i+=o;continue}break}var l=d(n,this.clonePosition());return{val:{type:x.literal,value:i,location:l},err:null}},e.prototype.tryParseLeftAngleBracket=function(){return!this.isEOF()&&this.char()===60&&(this.ignoreTag||!Hn(this.peek()||0))?(this.bump(),"<"):null},e.prototype.tryParseQuote=function(t){if(this.isEOF()||this.char()!==39)return null;switch(this.peek()){case 39:return this.bump(),this.bump(),"'";case 123:case 60:case 62:case 125:break;case 35:if(t==="plural"||t==="selectordinal")break;return null;default:return null}this.bump();var r=[this.char()];for(this.bump();!this.isEOF();){var n=this.char();if(n===39)if(this.peek()===39)r.push(39),this.bump();else{this.bump();break}else r.push(n);this.bump()}return Ue.apply(void 0,r)},e.prototype.tryParseUnquoted=function(t,r){if(this.isEOF())return null;var n=this.char();return n===60||n===123||n===35&&(r==="plural"||r==="selectordinal")||n===125&&t>0?null:(this.bump(),Ue(n))},e.prototype.parseArgument=function(t,r){var n=this.clonePosition();if(this.bump(),this.bumpSpace(),this.isEOF())return this.error(p.EXPECT_ARGUMENT_CLOSING_BRACE,d(n,this.clonePosition()));if(this.char()===125)return this.bump(),this.error(p.EMPTY_ARGUMENT,d(n,this.clonePosition()));var i=this.parseIdentifierIfPossible().value;if(!i)return this.error(p.MALFORMED_ARGUMENT,d(n,this.clonePosition()));if(this.bumpSpace(),this.isEOF())return this.error(p.EXPECT_ARGUMENT_CLOSING_BRACE,d(n,this.clonePosition()));switch(this.char()){case 125:return this.bump(),{val:{type:x.argument,value:i,location:d(n,this.clonePosition())},err:null};case 44:return this.bump(),this.bumpSpace(),this.isEOF()?this.error(p.EXPECT_ARGUMENT_CLOSING_BRACE,d(n,this.clonePosition())):this.parseArgumentOptions(t,r,i,n);default:return this.error(p.MALFORMED_ARGUMENT,d(n,this.clonePosition()))}},e.prototype.parseIdentifierIfPossible=function(){var t=this.clonePosition(),r=this.offset(),n=Ge(this.message,r),i=r+n.length;this.bumpTo(i);var s=this.clonePosition(),a=d(t,s);return{value:n,location:a}},e.prototype.parseArgumentOptions=function(t,r,n,i){var s,a=this.clonePosition(),o=this.parseIdentifierIfPossible().value,l=this.clonePosition();switch(o){case"":return this.error(p.EXPECT_ARGUMENT_TYPE,d(a,l));case"number":case"date":case"time":{this.bumpSpace();var u=null;if(this.bumpIf(",")){this.bumpSpace();var h=this.clonePosition(),c=this.parseSimpleArgStyleIfPossible();if(c.err)return c;var f=_n(c.val);if(f.length===0)return this.error(p.EXPECT_ARGUMENT_STYLE,d(this.clonePosition(),this.clonePosition()));var b=d(h,this.clonePosition());u={style:f,styleLocation:b}}var m=this.tryParseArgumentClose(i);if(m.err)return m;var y=d(i,this.clonePosition());if(u&&ht(u==null?void 0:u.style,"::",0)){var v=yn(u.style.slice(2));if(o==="number"){var c=this.parseNumberSkeletonFromString(v,u.styleLocation);return c.err?c:{val:{type:x.number,value:n,location:y,style:c.val},err:null}}else{if(v.length===0)return this.error(p.EXPECT_DATE_TIME_SKELETON,y);var P=v;this.locale&&(P=on(v,this.locale));var f={type:X.dateTime,pattern:P,location:u.styleLocation,parsedOptions:this.shouldParseSkeletons?Kr(P):{}},w=o==="date"?x.date:x.time;return{val:{type:w,value:n,location:y,style:f},err:null}}}return{val:{type:o==="number"?x.number:o==="date"?x.date:x.time,value:n,location:y,style:(s=u==null?void 0:u.style)!==null&&s!==void 0?s:null},err:null}}case"plural":case"selectordinal":case"select":{var H=this.clonePosition();if(this.bumpSpace(),!this.bumpIf(","))return this.error(p.EXPECT_SELECT_ARGUMENT_OPTIONS,d(H,g({},H)));this.bumpSpace();var N=this.parseIdentifierIfPossible(),A=0;if(o!=="select"&&N.value==="offset"){if(!this.bumpIf(":"))return this.error(p.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,d(this.clonePosition(),this.clonePosition()));this.bumpSpace();var c=this.tryParseDecimalInteger(p.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,p.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);if(c.err)return c;this.bumpSpace(),N=this.parseIdentifierIfPossible(),A=c.val}var L=this.tryParsePluralOrSelectOptions(t,o,r,N);if(L.err)return L;var m=this.tryParseArgumentClose(i);if(m.err)return m;var E=d(i,this.clonePosition());return o==="select"?{val:{type:x.select,value:n,options:lt(L.val),location:E},err:null}:{val:{type:x.plural,value:n,options:lt(L.val),offset:A,pluralType:o==="plural"?"cardinal":"ordinal",location:E},err:null}}default:return this.error(p.INVALID_ARGUMENT_TYPE,d(a,l))}},e.prototype.tryParseArgumentClose=function(t){return this.isEOF()||this.char()!==125?this.error(p.EXPECT_ARGUMENT_CLOSING_BRACE,d(t,this.clonePosition())):(this.bump(),{val:!0,err:null})},e.prototype.parseSimpleArgStyleIfPossible=function(){for(var t=0,r=this.clonePosition();!this.isEOF();){var n=this.char();switch(n){case 39:{this.bump();var i=this.clonePosition();if(!this.bumpUntil("'"))return this.error(p.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE,d(i,this.clonePosition()));this.bump();break}case 123:{t+=1,this.bump();break}case 125:{if(t>0)t-=1;else return{val:this.message.slice(r.offset,this.offset()),err:null};break}default:this.bump();break}}return{val:this.message.slice(r.offset,this.offset()),err:null}},e.prototype.parseNumberSkeletonFromString=function(t,r){var n=[];try{n=tn(t)}catch{return this.error(p.INVALID_NUMBER_SKELETON,r)}return{val:{type:X.number,tokens:n,location:r,parsedOptions:this.shouldParseSkeletons?an(n):{}},err:null}},e.prototype.tryParsePluralOrSelectOptions=function(t,r,n,i){for(var s,a=!1,o=[],l=new Set,u=i.value,h=i.location;;){if(u.length===0){var c=this.clonePosition();if(r!=="select"&&this.bumpIf("=")){var f=this.tryParseDecimalInteger(p.EXPECT_PLURAL_ARGUMENT_SELECTOR,p.INVALID_PLURAL_ARGUMENT_SELECTOR);if(f.err)return f;h=d(c,this.clonePosition()),u=this.message.slice(c.offset,this.offset())}else break}if(l.has(u))return this.error(r==="select"?p.DUPLICATE_SELECT_ARGUMENT_SELECTOR:p.DUPLICATE_PLURAL_ARGUMENT_SELECTOR,h);u==="other"&&(a=!0),this.bumpSpace();var b=this.clonePosition();if(!this.bumpIf("{"))return this.error(r==="select"?p.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT:p.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT,d(this.clonePosition(),this.clonePosition()));var m=this.parseMessage(t+1,r,n);if(m.err)return m;var y=this.tryParseArgumentClose(b);if(y.err)return y;o.push([u,{value:m.val,location:d(b,this.clonePosition())}]),l.add(u),this.bumpSpace(),s=this.parseIdentifierIfPossible(),u=s.value,h=s.location}return o.length===0?this.error(r==="select"?p.EXPECT_SELECT_ARGUMENT_SELECTOR:p.EXPECT_PLURAL_ARGUMENT_SELECTOR,d(this.clonePosition(),this.clonePosition())):this.requiresOtherClause&&!a?this.error(p.MISSING_OTHER_CLAUSE,d(this.clonePosition(),this.clonePosition())):{val:o,err:null}},e.prototype.tryParseDecimalInteger=function(t,r){var n=1,i=this.clonePosition();this.bumpIf("+")||this.bumpIf("-")&&(n=-1);for(var s=!1,a=0;!this.isEOF();){var o=this.char();if(o>=48&&o<=57)s=!0,a=a*10+(o-48),this.bump();else break}var l=d(i,this.clonePosition());return s?(a*=n,xn(a)?{val:a,err:null}:this.error(r,l)):this.error(t,l)},e.prototype.offset=function(){return this.position.offset},e.prototype.isEOF=function(){return this.offset()===this.message.length},e.prototype.clonePosition=function(){return{offset:this.position.offset,line:this.position.line,column:this.position.column}},e.prototype.char=function(){var t=this.position.offset;if(t>=this.message.length)throw Error("out of bound");var r=kt(this.message,t);if(r===void 0)throw Error("Offset ".concat(t," is at invalid UTF-16 code unit boundary"));return r},e.prototype.error=function(t,r){return{val:null,err:{kind:t,message:this.message,location:r}}},e.prototype.bump=function(){if(!this.isEOF()){var t=this.char();t===10?(this.position.line+=1,this.position.column=1,this.position.offset+=1):(this.position.column+=1,this.position.offset+=t<65536?1:2)}},e.prototype.bumpIf=function(t){if(ht(this.message,t,this.offset())){for(var r=0;r=0?(this.bumpTo(n),!0):(this.bumpTo(this.message.length),!1)},e.prototype.bumpTo=function(t){if(this.offset()>t)throw Error("targetOffset ".concat(t," must be greater than or equal to the current offset ").concat(this.offset()));for(t=Math.min(t,this.message.length);;){var r=this.offset();if(r===t)break;if(r>t)throw Error("targetOffset ".concat(t," is at invalid UTF-16 code unit boundary"));if(this.bump(),this.isEOF())break}},e.prototype.bumpSpace=function(){for(;!this.isEOF()&&$t(this.char());)this.bump()},e.prototype.peek=function(){if(this.isEOF())return null;var t=this.char(),r=this.offset(),n=this.message.charCodeAt(r+(t>=65536?2:1));return n??null},e}();function Fe(e){return e>=97&&e<=122||e>=65&&e<=90}function Hn(e){return Fe(e)||e===47}function Sn(e){return e===45||e===46||e>=48&&e<=57||e===95||e>=97&&e<=122||e>=65&&e<=90||e==183||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8255&&e<=8256||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function $t(e){return e>=9&&e<=13||e===32||e===133||e>=8206&&e<=8207||e===8232||e===8233}function Tn(e){return e>=33&&e<=35||e===36||e>=37&&e<=39||e===40||e===41||e===42||e===43||e===44||e===45||e>=46&&e<=47||e>=58&&e<=59||e>=60&&e<=62||e>=63&&e<=64||e===91||e===92||e===93||e===94||e===96||e===123||e===124||e===125||e===126||e===161||e>=162&&e<=165||e===166||e===167||e===169||e===171||e===172||e===174||e===176||e===177||e===182||e===187||e===191||e===215||e===247||e>=8208&&e<=8213||e>=8214&&e<=8215||e===8216||e===8217||e===8218||e>=8219&&e<=8220||e===8221||e===8222||e===8223||e>=8224&&e<=8231||e>=8240&&e<=8248||e===8249||e===8250||e>=8251&&e<=8254||e>=8257&&e<=8259||e===8260||e===8261||e===8262||e>=8263&&e<=8273||e===8274||e===8275||e>=8277&&e<=8286||e>=8592&&e<=8596||e>=8597&&e<=8601||e>=8602&&e<=8603||e>=8604&&e<=8607||e===8608||e>=8609&&e<=8610||e===8611||e>=8612&&e<=8613||e===8614||e>=8615&&e<=8621||e===8622||e>=8623&&e<=8653||e>=8654&&e<=8655||e>=8656&&e<=8657||e===8658||e===8659||e===8660||e>=8661&&e<=8691||e>=8692&&e<=8959||e>=8960&&e<=8967||e===8968||e===8969||e===8970||e===8971||e>=8972&&e<=8991||e>=8992&&e<=8993||e>=8994&&e<=9e3||e===9001||e===9002||e>=9003&&e<=9083||e===9084||e>=9085&&e<=9114||e>=9115&&e<=9139||e>=9140&&e<=9179||e>=9180&&e<=9185||e>=9186&&e<=9254||e>=9255&&e<=9279||e>=9280&&e<=9290||e>=9291&&e<=9311||e>=9472&&e<=9654||e===9655||e>=9656&&e<=9664||e===9665||e>=9666&&e<=9719||e>=9720&&e<=9727||e>=9728&&e<=9838||e===9839||e>=9840&&e<=10087||e===10088||e===10089||e===10090||e===10091||e===10092||e===10093||e===10094||e===10095||e===10096||e===10097||e===10098||e===10099||e===10100||e===10101||e>=10132&&e<=10175||e>=10176&&e<=10180||e===10181||e===10182||e>=10183&&e<=10213||e===10214||e===10215||e===10216||e===10217||e===10218||e===10219||e===10220||e===10221||e===10222||e===10223||e>=10224&&e<=10239||e>=10240&&e<=10495||e>=10496&&e<=10626||e===10627||e===10628||e===10629||e===10630||e===10631||e===10632||e===10633||e===10634||e===10635||e===10636||e===10637||e===10638||e===10639||e===10640||e===10641||e===10642||e===10643||e===10644||e===10645||e===10646||e===10647||e===10648||e>=10649&&e<=10711||e===10712||e===10713||e===10714||e===10715||e>=10716&&e<=10747||e===10748||e===10749||e>=10750&&e<=11007||e>=11008&&e<=11055||e>=11056&&e<=11076||e>=11077&&e<=11078||e>=11079&&e<=11084||e>=11085&&e<=11123||e>=11124&&e<=11125||e>=11126&&e<=11157||e===11158||e>=11159&&e<=11263||e>=11776&&e<=11777||e===11778||e===11779||e===11780||e===11781||e>=11782&&e<=11784||e===11785||e===11786||e===11787||e===11788||e===11789||e>=11790&&e<=11798||e===11799||e>=11800&&e<=11801||e===11802||e===11803||e===11804||e===11805||e>=11806&&e<=11807||e===11808||e===11809||e===11810||e===11811||e===11812||e===11813||e===11814||e===11815||e===11816||e===11817||e>=11818&&e<=11822||e===11823||e>=11824&&e<=11833||e>=11834&&e<=11835||e>=11836&&e<=11839||e===11840||e===11841||e===11842||e>=11843&&e<=11855||e>=11856&&e<=11857||e===11858||e>=11859&&e<=11903||e>=12289&&e<=12291||e===12296||e===12297||e===12298||e===12299||e===12300||e===12301||e===12302||e===12303||e===12304||e===12305||e>=12306&&e<=12307||e===12308||e===12309||e===12310||e===12311||e===12312||e===12313||e===12314||e===12315||e===12316||e===12317||e>=12318&&e<=12319||e===12320||e===12336||e===64830||e===64831||e>=65093&&e<=65094}function je(e){e.forEach(function(t){if(delete t.location,Mt(t)||Ct(t))for(var r in t.options)delete t.options[r].location,je(t.options[r].value);else It(t)&&Dt(t.style)||(Nt(t)||Lt(t))&&Re(t.style)?delete t.style.location:Rt(t)&&je(t.children)})}function wn(e,t){t===void 0&&(t={}),t=g({shouldParseSkeletons:!0,requiresOtherClause:!0},t);var r=new vn(e,t).parse();if(r.err){var n=SyntaxError(p[r.err.kind]);throw n.location=r.err.location,n.originalMessage=r.err.message,n}return t!=null&&t.captureLocation||je(r.val),r.val}function Ae(e,t){var r=t&&t.cache?t.cache:Nn,n=t&&t.serializer?t.serializer:In,i=t&&t.strategy?t.strategy:Bn;return i(e,{cache:r,serializer:n})}function An(e){return e==null||typeof e=="number"||typeof e=="boolean"}function Xt(e,t,r,n){var i=An(n)?n:r(n),s=t.get(i);return typeof s>"u"&&(s=e.call(this,n),t.set(i,s)),s}function zt(e,t,r){var n=Array.prototype.slice.call(arguments,3),i=r(n),s=t.get(i);return typeof s>"u"&&(s=e.apply(this,n),t.set(i,s)),s}function qe(e,t,r,n,i){return r.bind(t,e,n,i)}function Bn(e,t){var r=e.length===1?Xt:zt;return qe(e,this,r,t.cache.create(),t.serializer)}function On(e,t){return qe(e,this,zt,t.cache.create(),t.serializer)}function Pn(e,t){return qe(e,this,Xt,t.cache.create(),t.serializer)}var In=function(){return JSON.stringify(arguments)};function Qe(){this.cache=Object.create(null)}Qe.prototype.get=function(e){return this.cache[e]};Qe.prototype.set=function(e,t){this.cache[e]=t};var Nn={create:function(){return new Qe}},Be={variadic:On,monadic:Pn},z;(function(e){e.MISSING_VALUE="MISSING_VALUE",e.INVALID_VALUE="INVALID_VALUE",e.MISSING_INTL_API="MISSING_INTL_API"})(z||(z={}));var _e=function(e){ye(t,e);function t(r,n,i){var s=e.call(this,r)||this;return s.code=n,s.originalMessage=i,s}return t.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},t}(Error),ct=function(e){ye(t,e);function t(r,n,i,s){return e.call(this,'Invalid values for "'.concat(r,'": "').concat(n,'". Options are "').concat(Object.keys(i).join('", "'),'"'),z.INVALID_VALUE,s)||this}return t}(_e),Ln=function(e){ye(t,e);function t(r,n,i){return e.call(this,'Value for "'.concat(r,'" must be of type ').concat(n),z.INVALID_VALUE,i)||this}return t}(_e),Mn=function(e){ye(t,e);function t(r,n){return e.call(this,'The intl string context variable "'.concat(r,'" was not provided to the string "').concat(n,'"'),z.MISSING_VALUE,n)||this}return t}(_e),_;(function(e){e[e.literal=0]="literal",e[e.object=1]="object"})(_||(_={}));function Cn(e){return e.length<2?e:e.reduce(function(t,r){var n=t[t.length-1];return!n||n.type!==_.literal||r.type!==_.literal?t.push(r):n.value+=r.value,t},[])}function Rn(e){return typeof e=="function"}function me(e,t,r,n,i,s,a){if(e.length===1&&st(e[0]))return[{type:_.literal,value:e[0].value}];for(var o=[],l=0,u=e;l0?new Intl.Locale(r[0]):new Intl.Locale(typeof t=="string"?t:t[0])},e.__parse=wn,e.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},e}();function Fn(e,t){if(t==null)return;if(t in e)return e[t];const r=t.split(".");let n=e;for(let i=0;i0){const s=r.slice(i,r.length).join(".");if(s in n){n=n[s];break}}n=n[r[i]]}else n=void 0;return n}const M={},jn=(e,t,r)=>r&&(t in M||(M[t]={}),e in M[t]||(M[t][e]=r),r),Zt=(e,t)=>{if(t==null)return;if(t in M&&e in M[t])return M[t][e];const r=oe(t);for(let n=0;n(r[e]=qr.all([r[e]||{},...t]),r))}Z([q],([e])=>Object.keys(e));q.subscribe(e=>Ye=e);const te={};function zn(e){te[e]=new Set}function Wn(e,t){te[e].delete(t),te[e].size===0&&delete te[e]}function re(e){return te[e]}function Zn(e){return oe(e).map(t=>{const r=re(t);return[t,r?[...r]:[]]}).filter(([,t])=>t.length>0)}function de(e){return e==null?!1:oe(e).some(t=>{var r;return(r=re(t))==null?void 0:r.size})}function qn(e,t){return Promise.all(t.map(n=>(Wn(e,n),n().then(i=>i.default||i)))).then(n=>Xn(e,...n))}const J={};function qt(e){if(!de(e))return e in J?J[e]:Promise.resolve();const t=Zn(e);return J[e]=Promise.all(t.map(([r,n])=>qn(r,n))).then(()=>{if(de(e))return qt(e);delete J[e]}),J[e]}function ms(e,t){re(e)||zn(e);const r=re(e);re(e).has(t)||(Je(e)||q.update(n=>(n[e]={},n)),r.add(t))}var mt=Object.getOwnPropertySymbols,Qn=Object.prototype.hasOwnProperty,Yn=Object.prototype.propertyIsEnumerable,Jn=(e,t)=>{var r={};for(var n in e)Qn.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&mt)for(var n of mt(e))t.indexOf(n)<0&&Yn.call(e,n)&&(r[n]=e[n]);return r};const Kn={number:{scientific:{notation:"scientific"},engineering:{notation:"engineering"},compactLong:{notation:"compact",compactDisplay:"long"},compactShort:{notation:"compact",compactDisplay:"short"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}};function ei({locale:e,id:t}){console.warn(`[svelte-i18n] The message "${t}" was not found in "${oe(e).join('", "')}".${de(C())?` + +Note: there are at least one loader still registered to this locale that wasn't executed.`:""}`)}const ti={fallbackLocale:null,loadingDelay:200,formats:Kn,warnOnMissingMessages:!0,handleMissingMessage:void 0,ignoreTag:!0},K=ti;function W(){return K}function ps(e){const t=e,{formats:r}=t,n=Jn(t,["formats"]);let i=e.fallbackLocale;if(e.initialLocale)try{Wt.resolveLocale(e.initialLocale)&&(i=e.initialLocale)}catch{console.warn(`[svelte-i18n] The initial locale "${e.initialLocale}" is not a valid locale.`)}return n.warnOnMissingMessages&&(delete n.warnOnMissingMessages,n.handleMissingMessage==null?n.handleMissingMessage=ei:console.warn('[svelte-i18n] The "warnOnMissingMessages" option is deprecated. Please use the "handleMissingMessage" option instead.')),Object.assign(K,n,{initialLocale:i}),r&&("number"in r&&Object.assign(K.formats.number,r.number),"date"in r&&Object.assign(K.formats.date,r.date),"time"in r&&Object.assign(K.formats.time,r.time)),Q.set(i)}const Pe=U(!1);var ri=Object.defineProperty,ni=Object.defineProperties,ii=Object.getOwnPropertyDescriptors,pt=Object.getOwnPropertySymbols,si=Object.prototype.hasOwnProperty,ai=Object.prototype.propertyIsEnumerable,dt=(e,t,r)=>t in e?ri(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,oi=(e,t)=>{for(var r in t||(t={}))si.call(t,r)&&dt(e,r,t[r]);if(pt)for(var r of pt(t))ai.call(t,r)&&dt(e,r,t[r]);return e},ui=(e,t)=>ni(e,ii(t));let ke;const be=U(null);function bt(e){return e.split("-").map((t,r,n)=>n.slice(0,r+1).join("-")).reverse()}function oe(e,t=W().fallbackLocale){const r=bt(e);return t?[...new Set([...r,...bt(t)])]:r}function C(){return ke??void 0}be.subscribe(e=>{ke=e??void 0,typeof window<"u"&&e!=null&&document.documentElement.setAttribute("lang",e)});const hi=e=>{if(e&&$n(e)&&de(e)){const{loadingDelay:t}=W();let r;return typeof window<"u"&&C()!=null&&t?r=window.setTimeout(()=>Pe.set(!0),t):Pe.set(!0),qt(e).then(()=>{be.set(e)}).finally(()=>{clearTimeout(r),Pe.set(!1)})}return be.set(e)},Q=ui(oi({},be),{set:hi}),ds=()=>typeof window>"u"?null:window.navigator.language||window.navigator.languages[0],ve=e=>{const t=Object.create(null);return n=>{const i=JSON.stringify(n);return i in t?t[i]:t[i]=e(n)}};var li=Object.defineProperty,ge=Object.getOwnPropertySymbols,Qt=Object.prototype.hasOwnProperty,Yt=Object.prototype.propertyIsEnumerable,gt=(e,t,r)=>t in e?li(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Ke=(e,t)=>{for(var r in t||(t={}))Qt.call(t,r)&>(e,r,t[r]);if(ge)for(var r of ge(t))Yt.call(t,r)&>(e,r,t[r]);return e},Y=(e,t)=>{var r={};for(var n in e)Qt.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&ge)for(var n of ge(e))t.indexOf(n)<0&&Yt.call(e,n)&&(r[n]=e[n]);return r};const se=(e,t)=>{const{formats:r}=W();if(e in r&&t in r[e])return r[e][t];throw new Error(`[svelte-i18n] Unknown "${t}" ${e} format.`)},fi=ve(e=>{var t=e,{locale:r,format:n}=t,i=Y(t,["locale","format"]);if(r==null)throw new Error('[svelte-i18n] A "locale" must be set to format numbers');return n&&(i=se("number",n)),new Intl.NumberFormat(r,i)}),ci=ve(e=>{var t=e,{locale:r,format:n}=t,i=Y(t,["locale","format"]);if(r==null)throw new Error('[svelte-i18n] A "locale" must be set to format dates');return n?i=se("date",n):Object.keys(i).length===0&&(i=se("date","short")),new Intl.DateTimeFormat(r,i)}),mi=ve(e=>{var t=e,{locale:r,format:n}=t,i=Y(t,["locale","format"]);if(r==null)throw new Error('[svelte-i18n] A "locale" must be set to format time values');return n?i=se("time",n):Object.keys(i).length===0&&(i=se("time","short")),new Intl.DateTimeFormat(r,i)}),pi=(e={})=>{var t=e,{locale:r=C()}=t,n=Y(t,["locale"]);return fi(Ke({locale:r},n))},di=(e={})=>{var t=e,{locale:r=C()}=t,n=Y(t,["locale"]);return ci(Ke({locale:r},n))},bi=(e={})=>{var t=e,{locale:r=C()}=t,n=Y(t,["locale"]);return mi(Ke({locale:r},n))},gi=ve((e,t=C())=>new Wt(e,t,W().formats,{ignoreTag:W().ignoreTag})),xi=(e,t={})=>{var r,n,i,s;let a=t;typeof e=="object"&&(a=e,e=a.id);const{values:o,locale:l=C(),default:u}=a;if(l==null)throw new Error("[svelte-i18n] Cannot format a message without first setting the initial locale.");let h=Zt(e,l);if(!h)h=(s=(i=(n=(r=W()).handleMissingMessage)==null?void 0:n.call(r,{locale:l,id:e,defaultValue:u}))!=null?i:u)!=null?s:e;else if(typeof h!="string")return console.warn(`[svelte-i18n] Message with id "${e}" must be of type "string", found: "${typeof h}". Gettin its value through the "$format" method is deprecated; use the "json" method instead.`),h;if(!o)return h;let c=h;try{c=gi(h,l).format(o)}catch(f){f instanceof Error&&console.warn(`[svelte-i18n] Message "${e}" has syntax error:`,f.message)}return c},Ei=(e,t)=>bi(t).format(e),yi=(e,t)=>di(t).format(e),_i=(e,t)=>pi(t).format(e),vi=(e,t=C())=>Zt(e,t),bs=Z([Q,q],()=>xi);Z([Q],()=>Ei);Z([Q],()=>yi);Z([Q],()=>_i);Z([Q,q],()=>vi);function Ve(e,t=!1){return e=e.slice(e.startsWith("/#")?2:0,e.endsWith("/*")?-2:void 0),e.startsWith("/")||(e="/"+e),e==="/"&&(e=""),t&&!e.endsWith("/")&&(e+="/"),e}function Hi(e,t){e=Ve(e,!0),t=Ve(t,!0);let r=[],n={},i=!0,s=e.split("/").map(o=>o.startsWith(":")?(r.push(o.slice(1)),"([^\\/]+)"):o).join("\\/"),a=t.match(new RegExp(`^${s}$`));return a||(i=!1,a=t.match(new RegExp(`^${s}`))),a?(r.forEach((o,l)=>n[o]=a[l+1]),{exact:i,params:n,part:a[0].slice(0,-1)}):null}function Jt(e,t,r){if(r==="")return e;if(r[0]==="/")return r;let n=a=>a.split("/").filter(o=>o!==""),i=n(e);return"/"+(t?n(t):[]).map((a,o)=>i[o]).join("/")+"/"+r}function xt(e,t,r,n){let i=[t,"data-"+t].reduce((s,a)=>{let o=e.getAttribute(a);return r&&e.removeAttribute(a),o===null?s:o},!1);return!n&&i===""?!0:i||n||!1}function Si(e){let t=e.split("&").map(r=>r.split("=")).reduce((r,n)=>{let i=n[0];if(!i)return r;let s=n.length>1?n[n.length-1]:!0;return typeof s=="string"&&s.includes(",")&&(s=s.split(",")),r[i]===void 0?r[i]=[s]:r[i].push(s),r},{});return Object.entries(t).reduce((r,n)=>(r[n[0]]=n[1].length>1?n[1]:n[1][0],r),{})}function Ti(e){return Object.entries(e).map(([t,r])=>r?r===!0?t:`${t}=${Array.isArray(r)?r.join(","):r}`:null).filter(t=>t).join("&")}function Et(e,t){return e?t+e:""}function Kt(e){throw new Error("[Tinro] "+e)}var T={HISTORY:1,HASH:2,MEMORY:3,OFF:4,run(e,t,r,n){return e===this.HISTORY?t&&t():e===this.HASH?r&&r():n&&n()},getDefault(){return!window||window.location.pathname==="srcdoc"?this.MEMORY:this.HISTORY}},et,er,tr,xe="",S=wi();function wi(){let e=T.getDefault(),t,r=a=>window.onhashchange=window.onpopstate=et=null,n=a=>t&&t(Ie(e)),i=a=>{a&&(e=a),r(),e!==T.OFF&&T.run(e,o=>window.onpopstate=n,o=>window.onhashchange=n)&&n()},s=a=>{let o=Object.assign(Ie(e),a);return o.path+Et(Ti(o.query),"?")+Et(o.hash,"#")};return{mode:i,get:a=>Ie(e),go(a,o){Ai(e,a,o),n()},start(a){t=a,i()},stop(){t=null,i(T.OFF)},set(a){this.go(s(a),!a.path)},methods(){return Bi(this)},base:a=>xe=a}}function Ai(e,t,r){!r&&(er=tr);let n=i=>history[`${r?"replace":"push"}State`]({},"",i);T.run(e,i=>n(xe+t),i=>n(`#${t}`),i=>et=t)}function Ie(e){let t=window.location,r=T.run(e,i=>(xe?t.pathname.replace(xe,""):t.pathname)+t.search+t.hash,i=>String(t.hash.slice(1)||"/"),i=>et||"/"),n=r.match(/^([^?#]+)(?:\?([^#]+))?(?:\#(.+))?$/);return tr=r,{url:r,from:er,path:n[1]||"",query:Si(n[2]||""),hash:n[3]||""}}function Bi(e){let t=()=>e.get().query,r=a=>e.set({query:a}),n=a=>r(a(t())),i=()=>e.get().hash,s=a=>e.set({hash:a});return{hash:{get:i,set:s,clear:()=>s("")},query:{replace:r,clear:()=>r(""),get(a){return a?t()[a]:t()},set(a,o){n(l=>(l[a]=o,l))},delete(a){n(o=>(o[a]&&delete o[a],o))}}}}var $e=Oi();function Oi(){let{subscribe:e}=U(S.get(),t=>{S.start(t);let r=Pi(S.go);return()=>{S.stop(),r()}});return{subscribe:e,goto:S.go,params:Ii,meta:Mi,useHashNavigation:t=>S.mode(t?T.HASH:T.HISTORY),mode:{hash:()=>S.mode(T.HASH),history:()=>S.mode(T.HISTORY),memory:()=>S.mode(T.MEMORY)},base:S.base,location:S.methods()}}function Pi(e){let t=r=>{let n=r.target.closest("a[href]"),i=n&&xt(n,"target",!1,"_self"),s=n&&xt(n,"tinro-ignore"),a=r.ctrlKey||r.metaKey||r.altKey||r.shiftKey;if(i=="_self"&&!s&&!a&&n){let o=n.getAttribute("href").replace(/^\/#/,"");/^\/\/|^#|^[a-zA-Z]+:/.test(o)||(r.preventDefault(),e(o.startsWith("/")?o:n.href.replace(window.location.origin,"")))}};return addEventListener("click",t),()=>removeEventListener("click",t)}function Ii(){return Ze("tinro").meta.params}var Ee="tinro",Ni=rr({pattern:"",matched:!0});function Li(e){let t=Ze(Ee)||Ni;(t.exact||t.fallback)&&Kt(`${e.fallback?"":``} can't be inside ${t.fallback?"":` with exact path`}`);let r=e.fallback?"fallbacks":"childs",n=U({}),i=rr({fallback:e.fallback,parent:t,update(s){i.exact=!s.path.endsWith("/*"),i.pattern=Ve(`${i.parent.pattern||""}${s.path}`),i.redirect=s.redirect,i.firstmatch=s.firstmatch,i.breadcrumb=s.breadcrumb,i.match()},register:()=>(i.parent[r].add(i),async()=>{i.parent[r].delete(i),i.parent.activeChilds.delete(i),i.router.un&&i.router.un(),i.parent.match()}),show:()=>{e.onShow(),!i.fallback&&i.parent.activeChilds.add(i)},hide:()=>{e.onHide(),i.parent.activeChilds.delete(i)},match:async()=>{i.matched=!1;let{path:s,url:a,from:o,query:l}=i.router.location,u=Hi(i.pattern,s);if(!i.fallback&&u&&i.redirect&&(!i.exact||i.exact&&u.exact)){let h=Jt(s,i.parent.pattern,i.redirect);return $e.goto(h,!0)}i.meta=u&&{from:o,url:a,query:l,match:u.part,pattern:i.pattern,breadcrumbs:i.parent.meta&&i.parent.meta.breadcrumbs.slice()||[],params:u.params,subscribe:n.subscribe},i.breadcrumb&&i.meta&&i.meta.breadcrumbs.push({name:i.breadcrumb,path:u.part}),n.set(i.meta),u&&!i.fallback&&(!i.exact||i.exact&&u.exact)&&(!i.parent.firstmatch||!i.parent.matched)?(e.onMeta(i.meta),i.parent.matched=!0,i.show()):i.hide(),u&&i.showFallbacks()}});return yr(Ee,i),Er(()=>i.register()),i}function Mi(){return _r(Ee)?Ze(Ee).meta:Kt("meta() function must be run inside any `` child component only")}function rr(e){let t={router:{},exact:!1,pattern:null,meta:null,parent:null,fallback:!1,redirect:!1,firstmatch:!1,breadcrumb:null,matched:!1,childs:new Set,activeChilds:new Set,fallbacks:new Set,async showFallbacks(){if(!this.fallback&&(await vr(),this.childs.size>0&&this.activeChilds.size==0||this.childs.size==0&&this.fallbacks.size>0)){let r=this;for(;r.fallbacks.size==0;)if(r=r.parent,!r)return;r&&r.fallbacks.forEach(n=>{if(n.redirect){let i=Jt("/",n.parent.pattern,n.redirect);$e.goto(i,!0)}else n.show()})}},start(){this.router.un||(this.router.un=$e.subscribe(r=>{this.router.location=r,this.pattern!==null&&this.match()}))},match(){this.showFallbacks()}};return Object.assign(t,e),t.start(),t}const Ci=e=>({params:e&2,meta:e&4}),yt=e=>({params:e[1],meta:e[2]});function _t(e){let t;const r=e[9].default,n=or(r,e,e[8],yt);return{c(){n&&n.c()},m(i,s){n&&n.m(i,s),t=!0},p(i,s){n&&n.p&&(!t||s&262)&&hr(n,r,i,i[8],t?ur(r,i[8],s,Ci):lr(i[8]),yt)},i(i){t||(V(n,i),t=!0)},o(i){pe(n,i),t=!1},d(i){n&&n.d(i)}}}function Ri(e){let t,r,n=e[0]&&_t(e);return{c(){n&&n.c(),t=pr()},m(i,s){n&&n.m(i,s),cr(i,t,s),r=!0},p(i,[s]){i[0]?n?(n.p(i,s),s&1&&V(n,1)):(n=_t(i),n.c(),V(n,1),n.m(t.parentNode,t)):n&&(Tr(),pe(n,1,1,()=>{n=null}),wr())},i(i){r||(V(n),r=!0)},o(i){pe(n),r=!1},d(i){i&&We(t),n&&n.d(i)}}}function Di(e,t,r){let{$$slots:n={},$$scope:i}=t,{path:s="/*"}=t,{fallback:a=!1}=t,{redirect:o=!1}=t,{firstmatch:l=!1}=t,{breadcrumb:u=null}=t,h=!1,c={},f={};const b=Li({fallback:a,onShow(){r(0,h=!0)},onHide(){r(0,h=!1)},onMeta(m){r(2,f=m),r(1,c=f.params)}});return e.$$set=m=>{"path"in m&&r(3,s=m.path),"fallback"in m&&r(4,a=m.fallback),"redirect"in m&&r(5,o=m.redirect),"firstmatch"in m&&r(6,l=m.firstmatch),"breadcrumb"in m&&r(7,u=m.breadcrumb),"$$scope"in m&&r(8,i=m.$$scope)},e.$$.update=()=>{e.$$.dirty&232&&b.update({path:s,redirect:o,firstmatch:l,breadcrumb:u})},[h,c,f,s,a,o,l,u,i,n]}class gs extends Ir{constructor(t){super(),Pr(this,t,Di,Ri,Ht,{path:3,fallback:4,redirect:5,firstmatch:6,breadcrumb:7})}}export{bs as $,Ji as A,nt as B,hs as C,ls as D,Ar as E,ns as F,V as G,pe as H,Br as I,ji as J,sr as K,$i as L,Wi as M,us as N,ki as O,or as P,hr as Q,lr as R,Ir as S,ur as T,pr as U,Pe as V,Tr as W,wr as X,Qi as Y,Ki as Z,os as _,ds as a,ss as a0,es as a1,zi as a2,ts as a3,as as a4,Gi as a5,$e as a6,gs as a7,Pr as b,Ht as c,mr as d,is as e,Xi as f,Fi as g,dr as h,ps as i,Me as j,cr as k,fs as l,fr as m,Yi as n,rt as o,Zi as p,I as q,ms as r,cs as s,Tt as t,We as u,Vi as v,U as w,D as x,qi as y,rs as z}; +//# sourceMappingURL=vendor-dd66dfbe.js.map diff --git a/assets/vendor-dd66dfbe.js.map b/assets/vendor-dd66dfbe.js.map new file mode 100644 index 0000000..ebd754e --- /dev/null +++ b/assets/vendor-dd66dfbe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"vendor-dd66dfbe.js","sources":["../../node_modules/svelte/src/runtime/internal/utils.js","../../node_modules/svelte/src/runtime/internal/dom.js","../../node_modules/svelte/src/runtime/internal/lifecycle.js","../../node_modules/svelte/src/runtime/internal/scheduler.js","../../node_modules/svelte/src/runtime/internal/transitions.js","../../node_modules/svelte/src/runtime/internal/each.js","../../node_modules/svelte/src/runtime/internal/spread.js","../../node_modules/svelte/src/runtime/internal/Component.js","../../node_modules/svelte/src/shared/version.js","../../node_modules/svelte/src/runtime/internal/disclose-version/index.js","../../node_modules/svelte/src/runtime/store/index.js","../../node_modules/svelte-storages/stores/storageKeyValue.js","../../node_modules/svelte-storages/stores/localStore.js","../../node_modules/svelte-storages/stores/sessionStore.js","../../node_modules/deepmerge/dist/cjs.js","../../node_modules/tslib/tslib.es6.mjs","../../node_modules/@formatjs/icu-messageformat-parser/lib/error.js","../../node_modules/@formatjs/icu-messageformat-parser/lib/types.js","../../node_modules/@formatjs/icu-messageformat-parser/lib/regex.generated.js","../../node_modules/@formatjs/icu-skeleton-parser/lib/date-time.js","../../node_modules/@formatjs/icu-skeleton-parser/lib/regex.generated.js","../../node_modules/@formatjs/icu-skeleton-parser/lib/number.js","../../node_modules/@formatjs/icu-messageformat-parser/lib/time-data.generated.js","../../node_modules/@formatjs/icu-messageformat-parser/lib/date-time-pattern-generator.js","../../node_modules/@formatjs/icu-messageformat-parser/lib/parser.js","../../node_modules/@formatjs/icu-messageformat-parser/lib/index.js","../../node_modules/@formatjs/fast-memoize/lib/index.js","../../node_modules/intl-messageformat/lib/src/error.js","../../node_modules/intl-messageformat/lib/src/formatters.js","../../node_modules/intl-messageformat/lib/src/core.js","../../node_modules/svelte-i18n/dist/runtime.esm.js","../../node_modules/tinro/dist/tinro_lib.js","../../node_modules/tinro/cmp/Route.svelte"],"sourcesContent":["/** @returns {void} */\nexport function noop() {}\n\nexport const identity = (x) => x;\n\n/**\n * @template T\n * @template S\n * @param {T} tar\n * @param {S} src\n * @returns {T & S}\n */\nexport function assign(tar, src) {\n\t// @ts-ignore\n\tfor (const k in src) tar[k] = src[k];\n\treturn /** @type {T & S} */ (tar);\n}\n\n// Adapted from https://github.com/then/is-promise/blob/master/index.js\n// Distributed under MIT License https://github.com/then/is-promise/blob/master/LICENSE\n/**\n * @param {any} value\n * @returns {value is PromiseLike}\n */\nexport function is_promise(value) {\n\treturn (\n\t\t!!value &&\n\t\t(typeof value === 'object' || typeof value === 'function') &&\n\t\ttypeof (/** @type {any} */ (value).then) === 'function'\n\t);\n}\n\n/** @returns {void} */\nexport function add_location(element, file, line, column, char) {\n\telement.__svelte_meta = {\n\t\tloc: { file, line, column, char }\n\t};\n}\n\nexport function run(fn) {\n\treturn fn();\n}\n\nexport function blank_object() {\n\treturn Object.create(null);\n}\n\n/**\n * @param {Function[]} fns\n * @returns {void}\n */\nexport function run_all(fns) {\n\tfns.forEach(run);\n}\n\n/**\n * @param {any} thing\n * @returns {thing is Function}\n */\nexport function is_function(thing) {\n\treturn typeof thing === 'function';\n}\n\n/** @returns {boolean} */\nexport function safe_not_equal(a, b) {\n\treturn a != a ? b == b : a !== b || (a && typeof a === 'object') || typeof a === 'function';\n}\n\nlet src_url_equal_anchor;\n\n/**\n * @param {string} element_src\n * @param {string} url\n * @returns {boolean}\n */\nexport function src_url_equal(element_src, url) {\n\tif (element_src === url) return true;\n\tif (!src_url_equal_anchor) {\n\t\tsrc_url_equal_anchor = document.createElement('a');\n\t}\n\t// This is actually faster than doing URL(..).href\n\tsrc_url_equal_anchor.href = url;\n\treturn element_src === src_url_equal_anchor.href;\n}\n\n/** @param {string} srcset */\nfunction split_srcset(srcset) {\n\treturn srcset.split(',').map((src) => src.trim().split(' ').filter(Boolean));\n}\n\n/**\n * @param {HTMLSourceElement | HTMLImageElement} element_srcset\n * @param {string | undefined | null} srcset\n * @returns {boolean}\n */\nexport function srcset_url_equal(element_srcset, srcset) {\n\tconst element_urls = split_srcset(element_srcset.srcset);\n\tconst urls = split_srcset(srcset || '');\n\n\treturn (\n\t\turls.length === element_urls.length &&\n\t\turls.every(\n\t\t\t([url, width], i) =>\n\t\t\t\twidth === element_urls[i][1] &&\n\t\t\t\t// We need to test both ways because Vite will create an a full URL with\n\t\t\t\t// `new URL(asset, import.meta.url).href` for the client when `base: './'`, and the\n\t\t\t\t// relative URLs inside srcset are not automatically resolved to absolute URLs by\n\t\t\t\t// browsers (in contrast to img.src). This means both SSR and DOM code could\n\t\t\t\t// contain relative or absolute URLs.\n\t\t\t\t(src_url_equal(element_urls[i][0], url) || src_url_equal(url, element_urls[i][0]))\n\t\t)\n\t);\n}\n\n/** @returns {boolean} */\nexport function not_equal(a, b) {\n\treturn a != a ? b == b : a !== b;\n}\n\n/** @returns {boolean} */\nexport function is_empty(obj) {\n\treturn Object.keys(obj).length === 0;\n}\n\n/** @returns {void} */\nexport function validate_store(store, name) {\n\tif (store != null && typeof store.subscribe !== 'function') {\n\t\tthrow new Error(`'${name}' is not a store with a 'subscribe' method`);\n\t}\n}\n\nexport function subscribe(store, ...callbacks) {\n\tif (store == null) {\n\t\tfor (const callback of callbacks) {\n\t\t\tcallback(undefined);\n\t\t}\n\t\treturn noop;\n\t}\n\tconst unsub = store.subscribe(...callbacks);\n\treturn unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\n\n/**\n * Get the current value from a store by subscribing and immediately unsubscribing.\n *\n * https://svelte.dev/docs/svelte-store#get\n * @template T\n * @param {import('../store/public.js').Readable} store\n * @returns {T}\n */\nexport function get_store_value(store) {\n\tlet value;\n\tsubscribe(store, (_) => (value = _))();\n\treturn value;\n}\n\n/** @returns {void} */\nexport function component_subscribe(component, store, callback) {\n\tcomponent.$$.on_destroy.push(subscribe(store, callback));\n}\n\nexport function create_slot(definition, ctx, $$scope, fn) {\n\tif (definition) {\n\t\tconst slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n\t\treturn definition[0](slot_ctx);\n\t}\n}\n\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n\treturn definition[1] && fn ? assign($$scope.ctx.slice(), definition[1](fn(ctx))) : $$scope.ctx;\n}\n\nexport function get_slot_changes(definition, $$scope, dirty, fn) {\n\tif (definition[2] && fn) {\n\t\tconst lets = definition[2](fn(dirty));\n\t\tif ($$scope.dirty === undefined) {\n\t\t\treturn lets;\n\t\t}\n\t\tif (typeof lets === 'object') {\n\t\t\tconst merged = [];\n\t\t\tconst len = Math.max($$scope.dirty.length, lets.length);\n\t\t\tfor (let i = 0; i < len; i += 1) {\n\t\t\t\tmerged[i] = $$scope.dirty[i] | lets[i];\n\t\t\t}\n\t\t\treturn merged;\n\t\t}\n\t\treturn $$scope.dirty | lets;\n\t}\n\treturn $$scope.dirty;\n}\n\n/** @returns {void} */\nexport function update_slot_base(\n\tslot,\n\tslot_definition,\n\tctx,\n\t$$scope,\n\tslot_changes,\n\tget_slot_context_fn\n) {\n\tif (slot_changes) {\n\t\tconst slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n\t\tslot.p(slot_context, slot_changes);\n\t}\n}\n\n/** @returns {void} */\nexport function update_slot(\n\tslot,\n\tslot_definition,\n\tctx,\n\t$$scope,\n\tdirty,\n\tget_slot_changes_fn,\n\tget_slot_context_fn\n) {\n\tconst slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n\tupdate_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn);\n}\n\n/** @returns {any[] | -1} */\nexport function get_all_dirty_from_scope($$scope) {\n\tif ($$scope.ctx.length > 32) {\n\t\tconst dirty = [];\n\t\tconst length = $$scope.ctx.length / 32;\n\t\tfor (let i = 0; i < length; i++) {\n\t\t\tdirty[i] = -1;\n\t\t}\n\t\treturn dirty;\n\t}\n\treturn -1;\n}\n\n/** @returns {{}} */\nexport function exclude_internal_props(props) {\n\tconst result = {};\n\tfor (const k in props) if (k[0] !== '$') result[k] = props[k];\n\treturn result;\n}\n\n/** @returns {{}} */\nexport function compute_rest_props(props, keys) {\n\tconst rest = {};\n\tkeys = new Set(keys);\n\tfor (const k in props) if (!keys.has(k) && k[0] !== '$') rest[k] = props[k];\n\treturn rest;\n}\n\n/** @returns {{}} */\nexport function compute_slots(slots) {\n\tconst result = {};\n\tfor (const key in slots) {\n\t\tresult[key] = true;\n\t}\n\treturn result;\n}\n\n/** @returns {(this: any, ...args: any[]) => void} */\nexport function once(fn) {\n\tlet ran = false;\n\treturn function (...args) {\n\t\tif (ran) return;\n\t\tran = true;\n\t\tfn.call(this, ...args);\n\t};\n}\n\nexport function null_to_empty(value) {\n\treturn value == null ? '' : value;\n}\n\nexport function set_store_value(store, ret, value) {\n\tstore.set(value);\n\treturn ret;\n}\n\nexport const has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\n\nexport function action_destroyer(action_result) {\n\treturn action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\n/** @param {number | string} value\n * @returns {[number, string]}\n */\nexport function split_css_unit(value) {\n\tconst split = typeof value === 'string' && value.match(/^\\s*(-?[\\d.]+)([^\\s]*)\\s*$/);\n\treturn split ? [parseFloat(split[1]), split[2] || 'px'] : [/** @type {number} */ (value), 'px'];\n}\n\nexport const contenteditable_truthy_values = ['', true, 1, 'true', 'contenteditable'];\n","import { contenteditable_truthy_values, has_prop } from './utils.js';\n\nimport { ResizeObserverSingleton } from './ResizeObserverSingleton.js';\n\n// Track which nodes are claimed during hydration. Unclaimed nodes can then be removed from the DOM\n// at the end of hydration without touching the remaining nodes.\nlet is_hydrating = false;\n\n/**\n * @returns {void}\n */\nexport function start_hydrating() {\n\tis_hydrating = true;\n}\n\n/**\n * @returns {void}\n */\nexport function end_hydrating() {\n\tis_hydrating = false;\n}\n\n/**\n * @param {number} low\n * @param {number} high\n * @param {(index: number) => number} key\n * @param {number} value\n * @returns {number}\n */\nfunction upper_bound(low, high, key, value) {\n\t// Return first index of value larger than input value in the range [low, high)\n\twhile (low < high) {\n\t\tconst mid = low + ((high - low) >> 1);\n\t\tif (key(mid) <= value) {\n\t\t\tlow = mid + 1;\n\t\t} else {\n\t\t\thigh = mid;\n\t\t}\n\t}\n\treturn low;\n}\n\n/**\n * @param {NodeEx} target\n * @returns {void}\n */\nfunction init_hydrate(target) {\n\tif (target.hydrate_init) return;\n\ttarget.hydrate_init = true;\n\t// We know that all children have claim_order values since the unclaimed have been detached if target is not \n\n\tlet children = /** @type {ArrayLike} */ (target.childNodes);\n\t// If target is , there may be children without claim_order\n\tif (target.nodeName === 'HEAD') {\n\t\tconst my_children = [];\n\t\tfor (let i = 0; i < children.length; i++) {\n\t\t\tconst node = children[i];\n\t\t\tif (node.claim_order !== undefined) {\n\t\t\t\tmy_children.push(node);\n\t\t\t}\n\t\t}\n\t\tchildren = my_children;\n\t}\n\t/*\n\t * Reorder claimed children optimally.\n\t * We can reorder claimed children optimally by finding the longest subsequence of\n\t * nodes that are already claimed in order and only moving the rest. The longest\n\t * subsequence of nodes that are claimed in order can be found by\n\t * computing the longest increasing subsequence of .claim_order values.\n\t *\n\t * This algorithm is optimal in generating the least amount of reorder operations\n\t * possible.\n\t *\n\t * Proof:\n\t * We know that, given a set of reordering operations, the nodes that do not move\n\t * always form an increasing subsequence, since they do not move among each other\n\t * meaning that they must be already ordered among each other. Thus, the maximal\n\t * set of nodes that do not move form a longest increasing subsequence.\n\t */\n\t// Compute longest increasing subsequence\n\t// m: subsequence length j => index k of smallest value that ends an increasing subsequence of length j\n\tconst m = new Int32Array(children.length + 1);\n\t// Predecessor indices + 1\n\tconst p = new Int32Array(children.length);\n\tm[0] = -1;\n\tlet longest = 0;\n\tfor (let i = 0; i < children.length; i++) {\n\t\tconst current = children[i].claim_order;\n\t\t// Find the largest subsequence length such that it ends in a value less than our current value\n\t\t// upper_bound returns first greater value, so we subtract one\n\t\t// with fast path for when we are on the current longest subsequence\n\t\tconst seq_len =\n\t\t\t(longest > 0 && children[m[longest]].claim_order <= current\n\t\t\t\t? longest + 1\n\t\t\t\t: upper_bound(1, longest, (idx) => children[m[idx]].claim_order, current)) - 1;\n\t\tp[i] = m[seq_len] + 1;\n\t\tconst new_len = seq_len + 1;\n\t\t// We can guarantee that current is the smallest value. Otherwise, we would have generated a longer sequence.\n\t\tm[new_len] = i;\n\t\tlongest = Math.max(new_len, longest);\n\t}\n\t// The longest increasing subsequence of nodes (initially reversed)\n\n\t/**\n\t * @type {NodeEx2[]}\n\t */\n\tconst lis = [];\n\t// The rest of the nodes, nodes that will be moved\n\n\t/**\n\t * @type {NodeEx2[]}\n\t */\n\tconst to_move = [];\n\tlet last = children.length - 1;\n\tfor (let cur = m[longest] + 1; cur != 0; cur = p[cur - 1]) {\n\t\tlis.push(children[cur - 1]);\n\t\tfor (; last >= cur; last--) {\n\t\t\tto_move.push(children[last]);\n\t\t}\n\t\tlast--;\n\t}\n\tfor (; last >= 0; last--) {\n\t\tto_move.push(children[last]);\n\t}\n\tlis.reverse();\n\t// We sort the nodes being moved to guarantee that their insertion order matches the claim order\n\tto_move.sort((a, b) => a.claim_order - b.claim_order);\n\t// Finally, we move the nodes\n\tfor (let i = 0, j = 0; i < to_move.length; i++) {\n\t\twhile (j < lis.length && to_move[i].claim_order >= lis[j].claim_order) {\n\t\t\tj++;\n\t\t}\n\t\tconst anchor = j < lis.length ? lis[j] : null;\n\t\ttarget.insertBefore(to_move[i], anchor);\n\t}\n}\n\n/**\n * @param {Node} target\n * @param {Node} node\n * @returns {void}\n */\nexport function append(target, node) {\n\ttarget.appendChild(node);\n}\n\n/**\n * @param {Node} target\n * @param {string} style_sheet_id\n * @param {string} styles\n * @returns {void}\n */\nexport function append_styles(target, style_sheet_id, styles) {\n\tconst append_styles_to = get_root_for_style(target);\n\tif (!append_styles_to.getElementById(style_sheet_id)) {\n\t\tconst style = element('style');\n\t\tstyle.id = style_sheet_id;\n\t\tstyle.textContent = styles;\n\t\tappend_stylesheet(append_styles_to, style);\n\t}\n}\n\n/**\n * @param {Node} node\n * @returns {ShadowRoot | Document}\n */\nexport function get_root_for_style(node) {\n\tif (!node) return document;\n\tconst root = node.getRootNode ? node.getRootNode() : node.ownerDocument;\n\tif (root && /** @type {ShadowRoot} */ (root).host) {\n\t\treturn /** @type {ShadowRoot} */ (root);\n\t}\n\treturn node.ownerDocument;\n}\n\n/**\n * @param {Node} node\n * @returns {CSSStyleSheet}\n */\nexport function append_empty_stylesheet(node) {\n\tconst style_element = element('style');\n\t// For transitions to work without 'style-src: unsafe-inline' Content Security Policy,\n\t// these empty tags need to be allowed with a hash as a workaround until we move to the Web Animations API.\n\t// Using the hash for the empty string (for an empty tag) works in all browsers except Safari.\n\t// So as a workaround for the workaround, when we append empty style tags we set their content to /* empty */.\n\t// The hash 'sha256-9OlNO0DNEeaVzHL4RZwCLsBHA8WBQ8toBp/4F5XV2nc=' will then work even in Safari.\n\tstyle_element.textContent = '/* empty */';\n\tappend_stylesheet(get_root_for_style(node), style_element);\n\treturn style_element.sheet;\n}\n\n/**\n * @param {ShadowRoot | Document} node\n * @param {HTMLStyleElement} style\n * @returns {CSSStyleSheet}\n */\nfunction append_stylesheet(node, style) {\n\tappend(/** @type {Document} */ (node).head || node, style);\n\treturn style.sheet;\n}\n\n/**\n * @param {NodeEx} target\n * @param {NodeEx} node\n * @returns {void}\n */\nexport function append_hydration(target, node) {\n\tif (is_hydrating) {\n\t\tinit_hydrate(target);\n\t\tif (\n\t\t\ttarget.actual_end_child === undefined ||\n\t\t\t(target.actual_end_child !== null && target.actual_end_child.parentNode !== target)\n\t\t) {\n\t\t\ttarget.actual_end_child = target.firstChild;\n\t\t}\n\t\t// Skip nodes of undefined ordering\n\t\twhile (target.actual_end_child !== null && target.actual_end_child.claim_order === undefined) {\n\t\t\ttarget.actual_end_child = target.actual_end_child.nextSibling;\n\t\t}\n\t\tif (node !== target.actual_end_child) {\n\t\t\t// We only insert if the ordering of this node should be modified or the parent node is not target\n\t\t\tif (node.claim_order !== undefined || node.parentNode !== target) {\n\t\t\t\ttarget.insertBefore(node, target.actual_end_child);\n\t\t\t}\n\t\t} else {\n\t\t\ttarget.actual_end_child = node.nextSibling;\n\t\t}\n\t} else if (node.parentNode !== target || node.nextSibling !== null) {\n\t\ttarget.appendChild(node);\n\t}\n}\n\n/**\n * @param {Node} target\n * @param {Node} node\n * @param {Node} [anchor]\n * @returns {void}\n */\nexport function insert(target, node, anchor) {\n\ttarget.insertBefore(node, anchor || null);\n}\n\n/**\n * @param {NodeEx} target\n * @param {NodeEx} node\n * @param {NodeEx} [anchor]\n * @returns {void}\n */\nexport function insert_hydration(target, node, anchor) {\n\tif (is_hydrating && !anchor) {\n\t\tappend_hydration(target, node);\n\t} else if (node.parentNode !== target || node.nextSibling != anchor) {\n\t\ttarget.insertBefore(node, anchor || null);\n\t}\n}\n\n/**\n * @param {Node} node\n * @returns {void}\n */\nexport function detach(node) {\n\tif (node.parentNode) {\n\t\tnode.parentNode.removeChild(node);\n\t}\n}\n\n/**\n * @returns {void} */\nexport function destroy_each(iterations, detaching) {\n\tfor (let i = 0; i < iterations.length; i += 1) {\n\t\tif (iterations[i]) iterations[i].d(detaching);\n\t}\n}\n\n/**\n * @template {keyof HTMLElementTagNameMap} K\n * @param {K} name\n * @returns {HTMLElementTagNameMap[K]}\n */\nexport function element(name) {\n\treturn document.createElement(name);\n}\n\n/**\n * @template {keyof HTMLElementTagNameMap} K\n * @param {K} name\n * @param {string} is\n * @returns {HTMLElementTagNameMap[K]}\n */\nexport function element_is(name, is) {\n\treturn document.createElement(name, { is });\n}\n\n/**\n * @template T\n * @template {keyof T} K\n * @param {T} obj\n * @param {K[]} exclude\n * @returns {Pick>}\n */\nexport function object_without_properties(obj, exclude) {\n\tconst target = /** @type {Pick>} */ ({});\n\tfor (const k in obj) {\n\t\tif (\n\t\t\thas_prop(obj, k) &&\n\t\t\t// @ts-ignore\n\t\t\texclude.indexOf(k) === -1\n\t\t) {\n\t\t\t// @ts-ignore\n\t\t\ttarget[k] = obj[k];\n\t\t}\n\t}\n\treturn target;\n}\n\n/**\n * @template {keyof SVGElementTagNameMap} K\n * @param {K} name\n * @returns {SVGElement}\n */\nexport function svg_element(name) {\n\treturn document.createElementNS('http://www.w3.org/2000/svg', name);\n}\n\n/**\n * @param {string} data\n * @returns {Text}\n */\nexport function text(data) {\n\treturn document.createTextNode(data);\n}\n\n/**\n * @returns {Text} */\nexport function space() {\n\treturn text(' ');\n}\n\n/**\n * @returns {Text} */\nexport function empty() {\n\treturn text('');\n}\n\n/**\n * @param {string} content\n * @returns {Comment}\n */\nexport function comment(content) {\n\treturn document.createComment(content);\n}\n\n/**\n * @param {EventTarget} node\n * @param {string} event\n * @param {EventListenerOrEventListenerObject} handler\n * @param {boolean | AddEventListenerOptions | EventListenerOptions} [options]\n * @returns {() => void}\n */\nexport function listen(node, event, handler, options) {\n\tnode.addEventListener(event, handler, options);\n\treturn () => node.removeEventListener(event, handler, options);\n}\n\n/**\n * @returns {(event: any) => any} */\nexport function prevent_default(fn) {\n\treturn function (event) {\n\t\tevent.preventDefault();\n\t\t// @ts-ignore\n\t\treturn fn.call(this, event);\n\t};\n}\n\n/**\n * @returns {(event: any) => any} */\nexport function stop_propagation(fn) {\n\treturn function (event) {\n\t\tevent.stopPropagation();\n\t\t// @ts-ignore\n\t\treturn fn.call(this, event);\n\t};\n}\n\n/**\n * @returns {(event: any) => any} */\nexport function stop_immediate_propagation(fn) {\n\treturn function (event) {\n\t\tevent.stopImmediatePropagation();\n\t\t// @ts-ignore\n\t\treturn fn.call(this, event);\n\t};\n}\n\n/**\n * @returns {(event: any) => void} */\nexport function self(fn) {\n\treturn function (event) {\n\t\t// @ts-ignore\n\t\tif (event.target === this) fn.call(this, event);\n\t};\n}\n\n/**\n * @returns {(event: any) => void} */\nexport function trusted(fn) {\n\treturn function (event) {\n\t\t// @ts-ignore\n\t\tif (event.isTrusted) fn.call(this, event);\n\t};\n}\n\n/**\n * @param {Element} node\n * @param {string} attribute\n * @param {string} [value]\n * @returns {void}\n */\nexport function attr(node, attribute, value) {\n\tif (value == null) node.removeAttribute(attribute);\n\telse if (node.getAttribute(attribute) !== value) node.setAttribute(attribute, value);\n}\n/**\n * List of attributes that should always be set through the attr method,\n * because updating them through the property setter doesn't work reliably.\n * In the example of `width`/`height`, the problem is that the setter only\n * accepts numeric values, but the attribute can also be set to a string like `50%`.\n * If this list becomes too big, rethink this approach.\n */\nconst always_set_through_set_attribute = ['width', 'height'];\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {{ [x: string]: string }} attributes\n * @returns {void}\n */\nexport function set_attributes(node, attributes) {\n\t// @ts-ignore\n\tconst descriptors = Object.getOwnPropertyDescriptors(node.__proto__);\n\tfor (const key in attributes) {\n\t\tif (attributes[key] == null) {\n\t\t\tnode.removeAttribute(key);\n\t\t} else if (key === 'style') {\n\t\t\tnode.style.cssText = attributes[key];\n\t\t} else if (key === '__value') {\n\t\t\t/** @type {any} */ (node).value = node[key] = attributes[key];\n\t\t} else if (\n\t\t\tdescriptors[key] &&\n\t\t\tdescriptors[key].set &&\n\t\t\talways_set_through_set_attribute.indexOf(key) === -1\n\t\t) {\n\t\t\tnode[key] = attributes[key];\n\t\t} else {\n\t\t\tattr(node, key, attributes[key]);\n\t\t}\n\t}\n}\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {{ [x: string]: string }} attributes\n * @returns {void}\n */\nexport function set_svg_attributes(node, attributes) {\n\tfor (const key in attributes) {\n\t\tattr(node, key, attributes[key]);\n\t}\n}\n\n/**\n * @param {Record} data_map\n * @returns {void}\n */\nexport function set_custom_element_data_map(node, data_map) {\n\tObject.keys(data_map).forEach((key) => {\n\t\tset_custom_element_data(node, key, data_map[key]);\n\t});\n}\n\n/**\n * @returns {void} */\nexport function set_custom_element_data(node, prop, value) {\n\tif (prop in node) {\n\t\tnode[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;\n\t} else {\n\t\tattr(node, prop, value);\n\t}\n}\n\n/**\n * @param {string} tag\n */\nexport function set_dynamic_element_data(tag) {\n\treturn /-/.test(tag) ? set_custom_element_data_map : set_attributes;\n}\n\n/**\n * @returns {void}\n */\nexport function xlink_attr(node, attribute, value) {\n\tnode.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\n\n/**\n * @param {HTMLElement} node\n * @returns {string}\n */\nexport function get_svelte_dataset(node) {\n\treturn node.dataset.svelteH;\n}\n\n/**\n * @returns {unknown[]} */\nexport function get_binding_group_value(group, __value, checked) {\n\tconst value = new Set();\n\tfor (let i = 0; i < group.length; i += 1) {\n\t\tif (group[i].checked) value.add(group[i].__value);\n\t}\n\tif (!checked) {\n\t\tvalue.delete(__value);\n\t}\n\treturn Array.from(value);\n}\n\n/**\n * @param {HTMLInputElement[]} group\n * @returns {{ p(...inputs: HTMLInputElement[]): void; r(): void; }}\n */\nexport function init_binding_group(group) {\n\t/**\n\t * @type {HTMLInputElement[]} */\n\tlet _inputs;\n\treturn {\n\t\t/* push */ p(...inputs) {\n\t\t\t_inputs = inputs;\n\t\t\t_inputs.forEach((input) => group.push(input));\n\t\t},\n\t\t/* remove */ r() {\n\t\t\t_inputs.forEach((input) => group.splice(group.indexOf(input), 1));\n\t\t}\n\t};\n}\n\n/**\n * @param {number[]} indexes\n * @returns {{ u(new_indexes: number[]): void; p(...inputs: HTMLInputElement[]): void; r: () => void; }}\n */\nexport function init_binding_group_dynamic(group, indexes) {\n\t/**\n\t * @type {HTMLInputElement[]} */\n\tlet _group = get_binding_group(group);\n\n\t/**\n\t * @type {HTMLInputElement[]} */\n\tlet _inputs;\n\n\tfunction get_binding_group(group) {\n\t\tfor (let i = 0; i < indexes.length; i++) {\n\t\t\tgroup = group[indexes[i]] = group[indexes[i]] || [];\n\t\t}\n\t\treturn group;\n\t}\n\n\t/**\n\t * @returns {void} */\n\tfunction push() {\n\t\t_inputs.forEach((input) => _group.push(input));\n\t}\n\n\t/**\n\t * @returns {void} */\n\tfunction remove() {\n\t\t_inputs.forEach((input) => _group.splice(_group.indexOf(input), 1));\n\t}\n\treturn {\n\t\t/* update */ u(new_indexes) {\n\t\t\tindexes = new_indexes;\n\t\t\tconst new_group = get_binding_group(group);\n\t\t\tif (new_group !== _group) {\n\t\t\t\tremove();\n\t\t\t\t_group = new_group;\n\t\t\t\tpush();\n\t\t\t}\n\t\t},\n\t\t/* push */ p(...inputs) {\n\t\t\t_inputs = inputs;\n\t\t\tpush();\n\t\t},\n\t\t/* remove */ r: remove\n\t};\n}\n\n/** @returns {number} */\nexport function to_number(value) {\n\treturn value === '' ? null : +value;\n}\n\n/** @returns {any[]} */\nexport function time_ranges_to_array(ranges) {\n\tconst array = [];\n\tfor (let i = 0; i < ranges.length; i += 1) {\n\t\tarray.push({ start: ranges.start(i), end: ranges.end(i) });\n\t}\n\treturn array;\n}\n\n/**\n * @param {Element} element\n * @returns {ChildNode[]}\n */\nexport function children(element) {\n\treturn Array.from(element.childNodes);\n}\n\n/**\n * @param {ChildNodeArray} nodes\n * @returns {void}\n */\nfunction init_claim_info(nodes) {\n\tif (nodes.claim_info === undefined) {\n\t\tnodes.claim_info = { last_index: 0, total_claimed: 0 };\n\t}\n}\n\n/**\n * @template {ChildNodeEx} R\n * @param {ChildNodeArray} nodes\n * @param {(node: ChildNodeEx) => node is R} predicate\n * @param {(node: ChildNodeEx) => ChildNodeEx | undefined} process_node\n * @param {() => R} create_node\n * @param {boolean} dont_update_last_index\n * @returns {R}\n */\nfunction claim_node(nodes, predicate, process_node, create_node, dont_update_last_index = false) {\n\t// Try to find nodes in an order such that we lengthen the longest increasing subsequence\n\tinit_claim_info(nodes);\n\tconst result_node = (() => {\n\t\t// We first try to find an element after the previous one\n\t\tfor (let i = nodes.claim_info.last_index; i < nodes.length; i++) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (predicate(node)) {\n\t\t\t\tconst replacement = process_node(node);\n\t\t\t\tif (replacement === undefined) {\n\t\t\t\t\tnodes.splice(i, 1);\n\t\t\t\t} else {\n\t\t\t\t\tnodes[i] = replacement;\n\t\t\t\t}\n\t\t\t\tif (!dont_update_last_index) {\n\t\t\t\t\tnodes.claim_info.last_index = i;\n\t\t\t\t}\n\t\t\t\treturn node;\n\t\t\t}\n\t\t}\n\t\t// Otherwise, we try to find one before\n\t\t// We iterate in reverse so that we don't go too far back\n\t\tfor (let i = nodes.claim_info.last_index - 1; i >= 0; i--) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (predicate(node)) {\n\t\t\t\tconst replacement = process_node(node);\n\t\t\t\tif (replacement === undefined) {\n\t\t\t\t\tnodes.splice(i, 1);\n\t\t\t\t} else {\n\t\t\t\t\tnodes[i] = replacement;\n\t\t\t\t}\n\t\t\t\tif (!dont_update_last_index) {\n\t\t\t\t\tnodes.claim_info.last_index = i;\n\t\t\t\t} else if (replacement === undefined) {\n\t\t\t\t\t// Since we spliced before the last_index, we decrease it\n\t\t\t\t\tnodes.claim_info.last_index--;\n\t\t\t\t}\n\t\t\t\treturn node;\n\t\t\t}\n\t\t}\n\t\t// If we can't find any matching node, we create a new one\n\t\treturn create_node();\n\t})();\n\tresult_node.claim_order = nodes.claim_info.total_claimed;\n\tnodes.claim_info.total_claimed += 1;\n\treturn result_node;\n}\n\n/**\n * @param {ChildNodeArray} nodes\n * @param {string} name\n * @param {{ [key: string]: boolean }} attributes\n * @param {(name: string) => Element | SVGElement} create_element\n * @returns {Element | SVGElement}\n */\nfunction claim_element_base(nodes, name, attributes, create_element) {\n\treturn claim_node(\n\t\tnodes,\n\t\t/** @returns {node is Element | SVGElement} */\n\t\t(node) => node.nodeName === name,\n\t\t/** @param {Element} node */\n\t\t(node) => {\n\t\t\tconst remove = [];\n\t\t\tfor (let j = 0; j < node.attributes.length; j++) {\n\t\t\t\tconst attribute = node.attributes[j];\n\t\t\t\tif (!attributes[attribute.name]) {\n\t\t\t\t\tremove.push(attribute.name);\n\t\t\t\t}\n\t\t\t}\n\t\t\tremove.forEach((v) => node.removeAttribute(v));\n\t\t\treturn undefined;\n\t\t},\n\t\t() => create_element(name)\n\t);\n}\n\n/**\n * @param {ChildNodeArray} nodes\n * @param {string} name\n * @param {{ [key: string]: boolean }} attributes\n * @returns {Element | SVGElement}\n */\nexport function claim_element(nodes, name, attributes) {\n\treturn claim_element_base(nodes, name, attributes, element);\n}\n\n/**\n * @param {ChildNodeArray} nodes\n * @param {string} name\n * @param {{ [key: string]: boolean }} attributes\n * @returns {Element | SVGElement}\n */\nexport function claim_svg_element(nodes, name, attributes) {\n\treturn claim_element_base(nodes, name, attributes, svg_element);\n}\n\n/**\n * @param {ChildNodeArray} nodes\n * @returns {Text}\n */\nexport function claim_text(nodes, data) {\n\treturn claim_node(\n\t\tnodes,\n\t\t/** @returns {node is Text} */\n\t\t(node) => node.nodeType === 3,\n\t\t/** @param {Text} node */\n\t\t(node) => {\n\t\t\tconst data_str = '' + data;\n\t\t\tif (node.data.startsWith(data_str)) {\n\t\t\t\tif (node.data.length !== data_str.length) {\n\t\t\t\t\treturn node.splitText(data_str.length);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnode.data = data_str;\n\t\t\t}\n\t\t},\n\t\t() => text(data),\n\t\ttrue // Text nodes should not update last index since it is likely not worth it to eliminate an increasing subsequence of actual elements\n\t);\n}\n\n/**\n * @returns {Text} */\nexport function claim_space(nodes) {\n\treturn claim_text(nodes, ' ');\n}\n\n/**\n * @param {ChildNodeArray} nodes\n * @returns {Comment}\n */\nexport function claim_comment(nodes, data) {\n\treturn claim_node(\n\t\tnodes,\n\t\t/** @returns {node is Comment} */\n\t\t(node) => node.nodeType === 8,\n\t\t/** @param {Comment} node */\n\t\t(node) => {\n\t\t\tnode.data = '' + data;\n\t\t\treturn undefined;\n\t\t},\n\t\t() => comment(data),\n\t\ttrue\n\t);\n}\n\nfunction get_comment_idx(nodes, text, start) {\n\tfor (let i = start; i < nodes.length; i += 1) {\n\t\tconst node = nodes[i];\n\t\tif (node.nodeType === 8 /* comment node */ && node.textContent.trim() === text) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n}\n\n/**\n * @param {boolean} is_svg\n * @returns {HtmlTagHydration}\n */\nexport function claim_html_tag(nodes, is_svg) {\n\t// find html opening tag\n\tconst start_index = get_comment_idx(nodes, 'HTML_TAG_START', 0);\n\tconst end_index = get_comment_idx(nodes, 'HTML_TAG_END', start_index + 1);\n\tif (start_index === -1 || end_index === -1) {\n\t\treturn new HtmlTagHydration(is_svg);\n\t}\n\n\tinit_claim_info(nodes);\n\tconst html_tag_nodes = nodes.splice(start_index, end_index - start_index + 1);\n\tdetach(html_tag_nodes[0]);\n\tdetach(html_tag_nodes[html_tag_nodes.length - 1]);\n\tconst claimed_nodes = html_tag_nodes.slice(1, html_tag_nodes.length - 1);\n\tfor (const n of claimed_nodes) {\n\t\tn.claim_order = nodes.claim_info.total_claimed;\n\t\tnodes.claim_info.total_claimed += 1;\n\t}\n\treturn new HtmlTagHydration(is_svg, claimed_nodes);\n}\n\n/**\n * @param {Text} text\n * @param {unknown} data\n * @returns {void}\n */\nexport function set_data(text, data) {\n\tdata = '' + data;\n\tif (text.data === data) return;\n\ttext.data = /** @type {string} */ (data);\n}\n\n/**\n * @param {Text} text\n * @param {unknown} data\n * @returns {void}\n */\nexport function set_data_contenteditable(text, data) {\n\tdata = '' + data;\n\tif (text.wholeText === data) return;\n\ttext.data = /** @type {string} */ (data);\n}\n\n/**\n * @param {Text} text\n * @param {unknown} data\n * @param {string} attr_value\n * @returns {void}\n */\nexport function set_data_maybe_contenteditable(text, data, attr_value) {\n\tif (~contenteditable_truthy_values.indexOf(attr_value)) {\n\t\tset_data_contenteditable(text, data);\n\t} else {\n\t\tset_data(text, data);\n\t}\n}\n\n/**\n * @returns {void} */\nexport function set_input_value(input, value) {\n\tinput.value = value == null ? '' : value;\n}\n\n/**\n * @returns {void} */\nexport function set_input_type(input, type) {\n\ttry {\n\t\tinput.type = type;\n\t} catch (e) {\n\t\t// do nothing\n\t}\n}\n\n/**\n * @returns {void} */\nexport function set_style(node, key, value, important) {\n\tif (value == null) {\n\t\tnode.style.removeProperty(key);\n\t} else {\n\t\tnode.style.setProperty(key, value, important ? 'important' : '');\n\t}\n}\n\n/**\n * @returns {void} */\nexport function select_option(select, value, mounting) {\n\tfor (let i = 0; i < select.options.length; i += 1) {\n\t\tconst option = select.options[i];\n\t\tif (option.__value === value) {\n\t\t\toption.selected = true;\n\t\t\treturn;\n\t\t}\n\t}\n\tif (!mounting || value !== undefined) {\n\t\tselect.selectedIndex = -1; // no option should be selected\n\t}\n}\n\n/**\n * @returns {void} */\nexport function select_options(select, value) {\n\tfor (let i = 0; i < select.options.length; i += 1) {\n\t\tconst option = select.options[i];\n\t\toption.selected = ~value.indexOf(option.__value);\n\t}\n}\n\nexport function select_value(select) {\n\tconst selected_option = select.querySelector(':checked');\n\treturn selected_option && selected_option.__value;\n}\n\nexport function select_multiple_value(select) {\n\treturn [].map.call(select.querySelectorAll(':checked'), (option) => option.__value);\n}\n// unfortunately this can't be a constant as that wouldn't be tree-shakeable\n// so we cache the result instead\n\n/**\n * @type {boolean} */\nlet crossorigin;\n\n/**\n * @returns {boolean} */\nexport function is_crossorigin() {\n\tif (crossorigin === undefined) {\n\t\tcrossorigin = false;\n\t\ttry {\n\t\t\tif (typeof window !== 'undefined' && window.parent) {\n\t\t\t\tvoid window.parent.document;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tcrossorigin = true;\n\t\t}\n\t}\n\treturn crossorigin;\n}\n\n/**\n * @param {HTMLElement} node\n * @param {() => void} fn\n * @returns {() => void}\n */\nexport function add_iframe_resize_listener(node, fn) {\n\tconst computed_style = getComputedStyle(node);\n\tif (computed_style.position === 'static') {\n\t\tnode.style.position = 'relative';\n\t}\n\tconst iframe = element('iframe');\n\tiframe.setAttribute(\n\t\t'style',\n\t\t'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ' +\n\t\t\t'overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;'\n\t);\n\tiframe.setAttribute('aria-hidden', 'true');\n\tiframe.tabIndex = -1;\n\tconst crossorigin = is_crossorigin();\n\n\t/**\n\t * @type {() => void}\n\t */\n\tlet unsubscribe;\n\tif (crossorigin) {\n\t\tiframe.src = \"data:text/html,\";\n\t\tunsubscribe = listen(\n\t\t\twindow,\n\t\t\t'message',\n\t\t\t/** @param {MessageEvent} event */ (event) => {\n\t\t\t\tif (event.source === iframe.contentWindow) fn();\n\t\t\t}\n\t\t);\n\t} else {\n\t\tiframe.src = 'about:blank';\n\t\tiframe.onload = () => {\n\t\t\tunsubscribe = listen(iframe.contentWindow, 'resize', fn);\n\t\t\t// make sure an initial resize event is fired _after_ the iframe is loaded (which is asynchronous)\n\t\t\t// see https://github.com/sveltejs/svelte/issues/4233\n\t\t\tfn();\n\t\t};\n\t}\n\tappend(node, iframe);\n\treturn () => {\n\t\tif (crossorigin) {\n\t\t\tunsubscribe();\n\t\t} else if (unsubscribe && iframe.contentWindow) {\n\t\t\tunsubscribe();\n\t\t}\n\t\tdetach(iframe);\n\t};\n}\nexport const resize_observer_content_box = /* @__PURE__ */ new ResizeObserverSingleton({\n\tbox: 'content-box'\n});\nexport const resize_observer_border_box = /* @__PURE__ */ new ResizeObserverSingleton({\n\tbox: 'border-box'\n});\nexport const resize_observer_device_pixel_content_box = /* @__PURE__ */ new ResizeObserverSingleton(\n\t{ box: 'device-pixel-content-box' }\n);\nexport { ResizeObserverSingleton };\n\n/**\n * @returns {void} */\nexport function toggle_class(element, name, toggle) {\n\t// The `!!` is required because an `undefined` flag means flipping the current state.\n\telement.classList.toggle(name, !!toggle);\n}\n\n/**\n * @template T\n * @param {string} type\n * @param {T} [detail]\n * @param {{ bubbles?: boolean, cancelable?: boolean }} [options]\n * @returns {CustomEvent}\n */\nexport function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {\n\treturn new CustomEvent(type, { detail, bubbles, cancelable });\n}\n\n/**\n * @param {string} selector\n * @param {HTMLElement} parent\n * @returns {ChildNodeArray}\n */\nexport function query_selector_all(selector, parent = document.body) {\n\treturn Array.from(parent.querySelectorAll(selector));\n}\n\n/**\n * @param {string} nodeId\n * @param {HTMLElement} head\n * @returns {any[]}\n */\nexport function head_selector(nodeId, head) {\n\tconst result = [];\n\tlet started = 0;\n\tfor (const node of head.childNodes) {\n\t\tif (node.nodeType === 8 /* comment node */) {\n\t\t\tconst comment = node.textContent.trim();\n\t\t\tif (comment === `HEAD_${nodeId}_END`) {\n\t\t\t\tstarted -= 1;\n\t\t\t\tresult.push(node);\n\t\t\t} else if (comment === `HEAD_${nodeId}_START`) {\n\t\t\t\tstarted += 1;\n\t\t\t\tresult.push(node);\n\t\t\t}\n\t\t} else if (started > 0) {\n\t\t\tresult.push(node);\n\t\t}\n\t}\n\treturn result;\n}\n/** */\nexport class HtmlTag {\n\t/**\n\t * @private\n\t * @default false\n\t */\n\tis_svg = false;\n\t/** parent for creating node */\n\te = undefined;\n\t/** html tag nodes */\n\tn = undefined;\n\t/** target */\n\tt = undefined;\n\t/** anchor */\n\ta = undefined;\n\tconstructor(is_svg = false) {\n\t\tthis.is_svg = is_svg;\n\t\tthis.e = this.n = null;\n\t}\n\n\t/**\n\t * @param {string} html\n\t * @returns {void}\n\t */\n\tc(html) {\n\t\tthis.h(html);\n\t}\n\n\t/**\n\t * @param {string} html\n\t * @param {HTMLElement | SVGElement} target\n\t * @param {HTMLElement | SVGElement} anchor\n\t * @returns {void}\n\t */\n\tm(html, target, anchor = null) {\n\t\tif (!this.e) {\n\t\t\tif (this.is_svg)\n\t\t\t\tthis.e = svg_element(/** @type {keyof SVGElementTagNameMap} */ (target.nodeName));\n\t\t\t/** #7364 target for