sh3-server 0.6.0 → 0.7.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,12 @@
1
+ (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const a of s)if(a.type==="childList")for(const i of a.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&r(i)}).observe(document,{childList:!0,subtree:!0});function n(s){const a={};return s.integrity&&(a.integrity=s.integrity),s.referrerPolicy&&(a.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?a.credentials="include":s.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(s){if(s.ep)return;s.ep=!0;const a=n(s);fetch(s.href,a)}})();const _u=1,gu=2,_o=4,mu=8,bu=16,yu=1,go=4,wu=8,ku=16,Su=1,Eu=2,xu=4,pa=1,mo=2,Au=4,Tu=8,ts="[",ns="[!",pi="[?",rs="]",fn={},me=Symbol(),rt=Symbol("filename"),Sn=Symbol("hmr"),bo="http://www.w3.org/1999/xhtml",_r="http://www.w3.org/2000/svg",_a="http://www.w3.org/1998/Math/MathML",yo="@attach",wo=!1;var qn=Array.isArray,Iu=Array.prototype.indexOf,Rn=Array.prototype.includes,ss=Array.from,Vr=Object.keys,dn=Object.defineProperty,wt=Object.getOwnPropertyDescriptor,ko=Object.getOwnPropertyDescriptors,So=Object.prototype,$u=Array.prototype,as=Object.getPrototypeOf,_i=Object.isExtensible,Cu=Object.prototype.hasOwnProperty;function En(e){return typeof e=="function"}const st=()=>{};function gi(e){return typeof e?.then=="function"}function Ru(e){return e()}function Hs(e){for(var t=0;t<e.length;t++)e[t]()}function Eo(){var e,t,n=new Promise((r,s)=>{e=r,t=s});return{promise:n,resolve:e,reject:t}}function Pu(e,t,n=!1){return e===void 0?n?t():t:e}function xo(e,t){if(Array.isArray(e))return e;if(t===void 0||!(Symbol.iterator in e))return Array.from(e);const n=[];for(const r of e)if(n.push(r),n.length===t)break;return n}function Lu(e,t){var n={};for(var r in e)t.includes(r)||(n[r]=e[r]);for(var s of Object.getOwnPropertySymbols(e))Object.propertyIsEnumerable.call(e,s)&&!t.includes(s)&&(n[s]=e[s]);return n}const Ne=2,vn=4,gr=8,ga=1<<24,kt=16,St=32,Xt=64,Ks=128,ht=512,$e=1024,Oe=2048,Et=4096,Fe=8192,Xe=16384,Ut=32768,Ys=1<<25,xt=65536,ar=1<<17,Ao=1<<18,Qt=1<<19,To=1<<20,Ct=1<<25,hn=65536,Ws=1<<21,Pn=1<<22,Yt=1<<23,qe=Symbol("$state"),is=Symbol("legacy props"),Du=Symbol(""),Ou=Symbol("proxy path"),Nu=Symbol("hmr anchor"),Tt=new class extends Error{name="StaleReactionError";message="The reaction that called `getAbortSignal()` was re-run or destroyed"},bn=!!globalThis.document?.contentType&&globalThis.document.contentType.includes("xml"),Io=1,mr=3,Bt=8,$o=11;function Co(e){throw new Error("https://svelte.dev/e/experimental_async_required")}function zu(){throw new Error("https://svelte.dev/e/invalid_default_snippet")}function mi(){throw new Error("https://svelte.dev/e/invalid_snippet_arguments")}function Vn(e){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function Mu(){throw new Error("https://svelte.dev/e/missing_context")}function ju(){throw new Error("https://svelte.dev/e/snippet_without_render_tag")}function qu(e){throw new Error("https://svelte.dev/e/store_invalid_shape")}function Vu(){throw new Error("https://svelte.dev/e/svelte_element_invalid_this_value")}function Uu(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Bu(e,t){throw new Error("https://svelte.dev/e/component_api_changed")}function Fu(e,t){throw new Error("https://svelte.dev/e/component_api_invalid_new")}function Hu(e,t,n){throw new Error("https://svelte.dev/e/each_key_duplicate")}function Ku(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Yu(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Wu(e){throw new Error("https://svelte.dev/e/effect_orphan")}function Gu(){throw new Error("https://svelte.dev/e/effect_pending_outside_reaction")}function Xu(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Ju(){throw new Error("https://svelte.dev/e/fork_discarded")}function Zu(){throw new Error("https://svelte.dev/e/fork_timing")}function Qu(){throw new Error("https://svelte.dev/e/get_abort_signal_outside_reaction")}function ef(){throw new Error("https://svelte.dev/e/hydration_failed")}function Ro(e){throw new Error("https://svelte.dev/e/lifecycle_legacy_only")}function tf(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function nf(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function rf(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function sf(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function af(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}function of(e,t){console.warn("https://svelte.dev/e/assignment_value_stale")}function lf(e,t){console.warn("https://svelte.dev/e/binding_property_non_reactive")}function cf(e){console.warn("https://svelte.dev/e/console_log_state")}function uf(){console.warn("https://svelte.dev/e/derived_inert")}function ff(e,t){console.warn("https://svelte.dev/e/event_handler_invalid")}function df(e){console.warn("https://svelte.dev/e/hydratable_missing_but_expected")}function br(e){console.warn("https://svelte.dev/e/hydration_mismatch")}function vf(e,t,n,r){console.warn("https://svelte.dev/e/ownership_invalid_binding")}function hf(e,t,n,r){console.warn("https://svelte.dev/e/ownership_invalid_mutation")}function pf(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function Po(e){console.warn("https://svelte.dev/e/state_proxy_equality_mismatch")}function _f(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}let V=!1;function pe(e){V=e}let K;function de(e){if(e===null)throw br(),fn;return K=e}function Ke(){return de(lt(K))}function p(e){if(V){if(lt(K)!==null)throw br(),fn;K=e}}function gf(e){V&&(K=e.content)}function Wt(e=1){if(V){for(var t=e,n=K;t--;)n=lt(n);K=n}}function pn(e=!0){for(var t=0,n=K;;){if(n.nodeType===Bt){var r=n.data;if(r===rs){if(t===0)return n;t-=1}else(r===ts||r===ns||r[0]==="["&&!isNaN(Number(r.slice(1))))&&(t+=1)}var s=lt(n);e&&n.remove(),n=s}}function ma(e){if(!e||e.nodeType!==Bt)throw br(),fn;return e.data}function Lo(e){return e===this.v}function Do(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function Oo(e){return!Do(e,this.v)}let mf=!1;function bf(e){console.warn("https://svelte.dev/e/dynamic_void_element_content")}const yf=[];function _n(e,t=!1,n=!1){return Rr(e,new Map,"",yf,null,n)}function Rr(e,t,n,r,s=null,a=!1){if(typeof e=="object"&&e!==null){var i=t.get(e);if(i!==void 0)return i;if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);if(qn(e)){var o=Array(e.length);t.set(e,o),s!==null&&t.set(s,o);for(var l=0;l<e.length;l+=1){var u=e[l];l in e&&(o[l]=Rr(u,t,n,r,null,a))}return o}if(as(e)===So){o={},t.set(e,o),s!==null&&t.set(s,o);for(var f of Object.keys(e))o[f]=Rr(e[f],t,n,r,null,a);return o}if(e instanceof Date)return structuredClone(e);if(typeof e.toJSON=="function"&&!a)return Rr(e.toJSON(),t,n,r,e)}if(e instanceof EventTarget)return e;try{return structuredClone(e)}catch{return e}}let wn=null;function No(e,t){const n=e.v;if(n===me)return;const r=wf(e),s=Q,a=e.wv>s.wv||s.wv===0,i=a?"color: CornflowerBlue; font-weight: bold":"color: grey; font-weight: normal";if(console.groupCollapsed(e.label?`%c${r}%c ${e.label}`:`%c${r}%c`,i,a?"font-weight: normal":i,typeof n=="object"&&n!==null&&qe in n?_n(n,!0):n),r==="$derived"){const l=new Set(e.deps);for(const u of l)No(u)}if(e.created&&console.log(e.created),a&&e.updated)for(const l of e.updated.values())l.error&&console.log(l.error);if(t)for(var o of t.traces)console.log(o);console.groupEnd()}function wf(e){return e.f&(Ne|Pn)?"$derived":e.label?.startsWith("$")?"store":"$state"}function kf(e,t){var n=wn;try{wn={entries:new Map,reaction:Q};var r=performance.now(),s=t(),a=(performance.now()-r).toFixed(2),i=ye(e);if(!Er())console.log(`${i} %cran outside of an effect (${a}ms)`,"color: grey");else if(wn.entries.size===0)console.log(`${i} %cno reactive dependencies (${a}ms)`,"color: grey");else{console.group(`${i} %c(${a}ms)`,"color: grey");var o=wn.entries;ye(()=>{for(const[l,u]of o)No(l,u)}),wn=null,console.groupEnd()}return s}finally{wn=n}}function Sf(e,t){return e.label=t,zo(e.v,t),e}function zo(e,t){return e?.[Ou]?.(t),e}function Ef(e){const t=new Error,n=xf();return n.length===0?null:(n.unshift(`
2
+ `),dn(t,"stack",{value:n.join(`
3
+ `)}),dn(t,"name",{value:e}),t)}function xf(){const e=Error.stackTraceLimit;Error.stackTraceLimit=1/0;const t=new Error().stack;if(Error.stackTraceLimit=e,!t)return[];const n=t.split(`
4
+ `),r=[];for(let s=0;s<n.length;s++){const a=n[s],i=a.replaceAll("\\","/");if(a.trim()!=="Error"){if(a.includes("validate_each_keys"))return[];i.includes("svelte/src/internal")||i.includes("node_modules/.vite")||r.push(a)}}return r}let le=null;function Ln(e){le=e}let Pr=null;function Af(e,t,n,r,s,a){const i=Pr;Pr={type:t,file:n[rt],line:r,column:s,parent:i,...a};try{return e()}finally{Pr=i}}let ba=null;function bi(e){ba=e}function Tf(){const e={};return[()=>(qo(e)||Mu(),Mo(e)),t=>jo(e,t)]}function Mo(e){return os().get(e)}function jo(e,t){return os().set(e,t),t}function qo(e){return os().has(e)}function If(){return os()}function ne(e,t=!1,n){le={p:le,i:!1,c:null,e:null,s:e,x:null,r:Y,l:null}}function re(e){var t=le,n=t.e;if(n!==null){t.e=null;for(var r of n)pl(r)}return e!==void 0&&(t.x=e),t.i=!0,le=t.p,e??{}}function Vo(){return!0}function os(e){return le===null&&Vn(),le.c??=new Map($f(le)||void 0)}function $f(e){let t=e.p;for(;t!==null;){const n=t.c;if(n!==null)return n;t=t.p}return null}let sn=[];function Uo(){var e=sn;sn=[],Hs(e)}function He(e){if(sn.length===0&&!Cn){var t=sn;queueMicrotask(()=>{t===sn&&Uo()})}sn.push(e)}function Cf(){for(;sn.length>0;)Uo()}function Bo(e){var t=Y;if(t===null)return Q.f|=Yt,e;if(!(t.f&Ut)&&!(t.f&vn))throw e;Rt(e,t)}function Rt(e,t){for(;t!==null;){if(t.f&Ks){if(!(t.f&Ut))throw e;try{t.b.error(e);return}catch(n){e=n}}t=t.parent}throw e}const Rf=-7169;function ke(e,t){e.f=e.f&Rf|t}function ya(e){e.f&ht||e.deps===null?ke(e,$e):ke(e,Et)}function Fo(e){if(e!==null)for(const t of e)!(t.f&Ne)||!(t.f&hn)||(t.f^=hn,Fo(t.deps))}function Ho(e,t,n){e.f&Oe?t.add(e):e.f&Et&&n.add(e),Fo(e.deps),ke(e,$e)}function Ko(e,t,n){if(e==null)return t(void 0),st;const r=ye(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}function Pf(e){let t;return Ko(e,n=>t=n)(),t}let Gs=!1,Jn=!1,Xs=Symbol();function Lf(e,t,n){const r=n[t]??={store:null,source:us(void 0),unsubscribe:st};if(r.store!==e&&!(Xs in n))if(r.unsubscribe(),r.store=e??null,e==null)r.source.v=void 0,r.unsubscribe=st;else{var s=!0;r.unsubscribe=Ko(e,a=>{s?r.source.v=a:w(r.source,a)}),s=!1}return e&&Xs in n?Pf(e):c(r.source)}function Df(e,t,n){let r=n[t];return r&&r.store!==e&&(r.unsubscribe(),r.unsubscribe=st),e}function Yo(e,t){return ls(e,t),t}function Of(e,t){var n=e[t];n.store!==null&&Yo(n.store,n.source.v)}function Nf(){const e={};function t(){ut(()=>{for(var n in e)e[n].unsubscribe();dn(e,Xs,{enumerable:!1,value:!0})})}return[e,t]}function ls(e,t){Gs=!0;try{e.set(t)}finally{Gs=!1}}function zf(e,t,n){return ls(e,n),t}function Mf(e,t,n=1){return ls(e,t+n),t}function jf(e,t,n=1){const r=t+n;return ls(e,r),r}function qf(){Jn=!0}function Wo(e){var t=Jn;try{return Jn=!1,[e(),Jn]}finally{Jn=t}}const Mt=new Set;let X=null,Be=null,Js=null,Cn=!1,Ds=!1,In=null,Lr=null;var yi=0;let Vf=1;class gt{id=Vf++;current=new Map;previous=new Map;#e=new Set;#n=new Set;#t=new Set;#a=new Map;#s=new Map;#i=null;#r=[];#o=[];#l=new Set;#u=new Set;#c=new Map;#d=new Set;is_fork=!1;#h=!1;#v=new Set;#f(){return this.is_fork||this.#s.size>0}#m(){for(const r of this.#v)for(const s of r.#s.keys()){for(var t=!1,n=s;n.parent!==null;){if(this.#c.has(n)){t=!0;break}n=n.parent}if(!t)return!0}return!1}skip_effect(t){this.#c.has(t)||this.#c.set(t,{d:[],m:[]}),this.#d.delete(t)}unskip_effect(t,n=r=>this.schedule(r)){var r=this.#c.get(t);if(r){this.#c.delete(t);for(var s of r.d)ke(s,Oe),n(s);for(s of r.m)ke(s,Et),n(s)}this.#d.add(t)}#p(){if(yi++>1e3&&(Mt.delete(this),Uf()),!this.#f()){for(const o of this.#l)this.#u.delete(o),ke(o,Oe),this.schedule(o);for(const o of this.#u)ke(o,Et),this.schedule(o)}const t=this.#r;this.#r=[],this.apply();var n=In=[],r=[],s=Lr=[];for(const o of t)try{this.#g(o,n,r)}catch(l){throw Zo(o),l}if(X=null,s.length>0){var a=gt.ensure();for(const o of s)a.schedule(o)}if(In=null,Lr=null,this.#f()||this.#m()){this.#_(r),this.#_(n);for(const[o,l]of this.#c)Jo(o,l)}else{this.#a.size===0&&Mt.delete(this),this.#l.clear(),this.#u.clear();for(const o of this.#e)o(this);this.#e.clear(),wi(r),wi(n),this.#i?.resolve()}var i=X;if(this.#r.length>0){const o=i??=this;o.#r.push(...this.#r.filter(l=>!o.#r.includes(l)))}i!==null&&(Mt.add(i),i.#p())}#g(t,n,r){t.f^=$e;for(var s=t.first;s!==null;){var a=s.f,i=(a&(St|Xt))!==0,o=i&&(a&$e)!==0,l=o||(a&Fe)!==0||this.#c.has(s);if(!l&&s.fn!==null){i?s.f^=$e:a&vn?n.push(s):Un(s)&&(a&kt&&this.#u.add(s),mn(s));var u=s.first;if(u!==null){s=u;continue}}for(;s!==null;){var f=s.next;if(f!==null){s=f;break}s=s.parent}}}#_(t){for(var n=0;n<t.length;n+=1)Ho(t[n],this.#l,this.#u)}capture(t,n,r=!1){t.v!==me&&!this.previous.has(t)&&this.previous.set(t,t.v),t.f&Yt||(this.current.set(t,[n,r]),Be?.set(t,n)),this.is_fork||(t.v=n)}activate(){X=this}deactivate(){X=null,Be=null}flush(){try{Ds=!0,X=this,this.#p()}finally{yi=0,Js=null,In=null,Lr=null,Ds=!1,X=null,Be=null,on.clear()}}discard(){for(const t of this.#n)t(this);this.#n.clear(),this.#t.clear(),Mt.delete(this)}register_created_effect(t){this.#o.push(t)}#b(){for(const f of Mt){var t=f.id<this.id,n=[];for(const[v,[d,m]]of this.current){if(f.current.has(v)){var r=f.current.get(v)[0];if(t&&d!==r)f.current.set(v,[d,m]);else continue}n.push(v)}var s=[...f.current.keys()].filter(v=>!this.current.has(v));if(s.length===0)t&&f.discard();else if(n.length>0){if(t)for(const v of this.#d)f.unskip_effect(v,d=>{d.f&(kt|Pn)?f.schedule(d):f.#_([d])});f.activate();var a=new Set,i=new Map;for(var o of n)Go(o,s,a,i);i=new Map;var l=[...f.current.keys()].filter(v=>this.current.has(v)?this.current.get(v)[0]!==v:!0);for(const v of this.#o)!(v.f&(Xe|Fe|ar))&&wa(v,l,i)&&(v.f&(Pn|kt)?(ke(v,Oe),f.schedule(v)):f.#l.add(v));if(f.#r.length>0){f.apply();for(var u of f.#r)f.#g(u,[],[]);f.#r=[]}f.deactivate()}}for(const f of Mt)f.#v.has(this)&&(f.#v.delete(this),f.#v.size===0&&!f.#f()&&(f.activate(),f.#p()))}increment(t,n){let r=this.#a.get(n)??0;if(this.#a.set(n,r+1),t){let s=this.#s.get(n)??0;this.#s.set(n,s+1)}}decrement(t,n,r){let s=this.#a.get(n)??0;if(s===1?this.#a.delete(n):this.#a.set(n,s-1),t){let a=this.#s.get(n)??0;a===1?this.#s.delete(n):this.#s.set(n,a-1)}this.#h||r||(this.#h=!0,He(()=>{this.#h=!1,this.flush()}))}transfer_effects(t,n){for(const r of t)this.#l.add(r);for(const r of n)this.#u.add(r);t.clear(),n.clear()}oncommit(t){this.#e.add(t)}ondiscard(t){this.#n.add(t)}on_fork_commit(t){this.#t.add(t)}run_fork_commit_callbacks(){for(const t of this.#t)t(this);this.#t.clear()}settled(){return(this.#i??=Eo()).promise}static ensure(){if(X===null){const t=X=new gt;Ds||(Mt.add(X),Cn||He(()=>{X===t&&t.flush()}))}return X}apply(){{Be=null;return}}schedule(t){if(Js=t,t.b?.is_pending&&t.f&(vn|gr|ga)&&!(t.f&Ut)){t.b.defer_effect(t);return}for(var n=t;n.parent!==null;){n=n.parent;var r=n.f;if(In!==null&&n===Y&&(Q===null||!(Q.f&Ne))&&!Gs)return;if(r&(Xt|St)){if(!(r&$e))return;n.f^=$e}}this.#r.push(n)}}function Jt(e){var t=Cn;Cn=!0;try{var n;for(e&&(X!==null&&!X.is_fork&&X.flush(),n=e());;){if(Cf(),X===null)return n;X.flush()}}finally{Cn=t}}function Uf(){try{Xu()}catch(e){Rt(e,Js)}}let jt=null;function wi(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if(!(r.f&(Xe|Fe))&&Un(r)&&(jt=new Set,mn(r),r.deps===null&&r.first===null&&r.nodes===null&&r.teardown===null&&r.ac===null&&wl(r),jt?.size>0)){on.clear();for(const s of jt){if(s.f&(Xe|Fe))continue;const a=[s];let i=s.parent;for(;i!==null;)jt.has(i)&&(jt.delete(i),a.push(i)),i=i.parent;for(let o=a.length-1;o>=0;o--){const l=a[o];l.f&(Xe|Fe)||mn(l)}}jt.clear()}}jt=null}}function Go(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(const s of e.reactions){const a=s.f;a&Ne?Go(s,t,n,r):a&(Pn|kt)&&!(a&Oe)&&wa(s,t,r)&&(ke(s,Oe),ka(s))}}function Xo(e,t){if(e.reactions!==null)for(const n of e.reactions){const r=n.f;r&Ne?Xo(n,t):r&ar&&(ke(n,Oe),t.add(n))}}function wa(e,t,n){const r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(const s of e.deps){if(Rn.call(t,s))return!0;if(s.f&Ne&&wa(s,t,n))return n.set(s,!0),!0}return n.set(e,!1),!1}function ka(e){X.schedule(e)}let Ur=[];function Bf(){try{Jt(()=>{for(const e of Ur)Dn(e)})}finally{Ur=[]}}function Ff(e){var t=ot(0),n=!0,r=void 0;return c(t),gl(()=>{if(n){var s=Be;try{Be=null,r=e()}finally{Be=s}return}Ur.length===0&&He(Bf),Ur.push(t)}),n=!1,r}function Jo(e,t){if(!(e.f&St&&e.f&$e)){e.f&Oe?t.d.push(e):e.f&Et&&t.m.push(e),ke(e,$e);for(var n=e.first;n!==null;)Jo(n,t),n=n.next}}function Zo(e){ke(e,$e);for(var t=e.first;t!==null;)Zo(t),t=t.next}function Hf(e){Co(),X!==null&&Zu();var t=gt.ensure();t.is_fork=!0,Be=new Map;var n=!1,r=t.settled();return Jt(e),{commit:async()=>{if(n){await r;return}Mt.has(t)||Ju(),n=!0,t.is_fork=!1;for(var[s,[a]]of t.current)s.v=a,s.wv=Fr();t.activate(),t.run_fork_commit_callbacks(),t.deactivate(),Jt(()=>{var i=new Set;for(var o of t.current.keys())Xo(o,i);nd(i),al()}),t.flush(),await r},discard:()=>{for(var s of t.current.keys())s.wv=Fr();!n&&Mt.has(t)&&t.discard()}}}function Kf(e){let t=0,n=ot(0),r;return()=>{Er()&&(c(n),Ae(()=>(t===0&&(r=ye(()=>e(()=>nr(n)))),t+=1,()=>{He(()=>{t-=1,t===0&&(r?.(),r=void 0,nr(n))})})))}}var Yf=xt|Qt;function Qo(e,t,n,r){new Wf(e,t,n,r)}class Wf{parent;is_pending=!1;transform_error;#e;#n=V?K:null;#t;#a;#s;#i=null;#r=null;#o=null;#l=null;#u=0;#c=0;#d=!1;#h=new Set;#v=new Set;#f=null;#m=Kf(()=>(this.#f=ot(this.#u),()=>{this.#f=null}));constructor(t,n,r,s){this.#e=t,this.#t=n,this.#a=a=>{var i=Y;i.b=this,i.f|=Ks,r(a)},this.parent=Y.b,this.transform_error=s??this.parent?.transform_error??(a=>a),this.#s=Ot(()=>{if(V){const a=this.#n;Ke();const i=a.data===ns;if(a.data.startsWith(pi)){const l=JSON.parse(a.data.slice(pi.length));this.#g(l)}else i?this.#_():this.#p()}else this.#b()},Yf),V&&(this.#e=K)}#p(){try{this.#i=Ue(()=>this.#a(this.#e))}catch(t){this.error(t)}}#g(t){const n=this.#t.failed;n&&(this.#o=Ue(()=>{n(this.#e,()=>t,()=>()=>{})}))}#_(){const t=this.#t.pending;t&&(this.is_pending=!0,this.#r=Ue(()=>t(this.#e)),He(()=>{var n=this.#l=document.createDocumentFragment(),r=Me();n.append(r),this.#i=this.#w(()=>Ue(()=>this.#a(r))),this.#c===0&&(this.#e.before(n),this.#l=null,ln(this.#r,()=>{this.#r=null}),this.#y(X))}))}#b(){try{if(this.is_pending=this.has_pending_snippet(),this.#c=0,this.#u=0,this.#i=Ue(()=>{this.#a(this.#e)}),this.#c>0){var t=this.#l=document.createDocumentFragment();Ra(this.#i,t);const n=this.#t.pending;this.#r=Ue(()=>n(this.#e))}else this.#y(X)}catch(n){this.error(n)}}#y(t){this.is_pending=!1,t.transfer_effects(this.#h,this.#v)}defer_effect(t){Ho(t,this.#h,this.#v)}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!this.#t.pending}#w(t){var n=Y,r=Q,s=le;Ve(this.#s),Ze(this.#s),Ln(this.#s.ctx);try{return gt.ensure(),t()}catch(a){return Bo(a),null}finally{Ve(n),Ze(r),Ln(s)}}#k(t,n){if(!this.has_pending_snippet()){this.parent&&this.parent.#k(t,n);return}this.#c+=t,this.#c===0&&(this.#y(n),this.#r&&ln(this.#r,()=>{this.#r=null}),this.#l&&(this.#e.before(this.#l),this.#l=null))}update_pending_count(t,n){this.#k(t,n),this.#u+=t,!(!this.#f||this.#d)&&(this.#d=!0,He(()=>{this.#d=!1,this.#f&&Pt(this.#f,this.#u)}))}get_effect_pending(){return this.#m(),c(this.#f)}error(t){if(!this.#t.onerror&&!this.#t.failed)throw t;X?.is_fork?(this.#i&&X.skip_effect(this.#i),this.#r&&X.skip_effect(this.#r),this.#o&&X.skip_effect(this.#o),X.on_fork_commit(()=>{this.#S(t)})):this.#S(t)}#S(t){this.#i&&(Re(this.#i),this.#i=null),this.#r&&(Re(this.#r),this.#r=null),this.#o&&(Re(this.#o),this.#o=null),V&&(de(this.#n),Wt(),de(pn()));var n=this.#t.onerror;let r=this.#t.failed;var s=!1,a=!1;const i=()=>{if(s){_f();return}s=!0,a&&af(),this.#o!==null&&ln(this.#o,()=>{this.#o=null}),this.#w(()=>{this.#b()})},o=l=>{try{a=!0,n?.(l,i),a=!1}catch(u){Rt(u,this.#s&&this.#s.parent)}r&&(this.#o=this.#w(()=>{try{return Ue(()=>{var u=Y;u.b=this,u.f|=Ks,r(this.#e,()=>l,()=>i)})}catch(u){return Rt(u,this.#s.parent),null}}))};He(()=>{var l;try{l=this.transform_error(t)}catch(u){Rt(u,this.#s&&this.#s.parent);return}l!==null&&typeof l=="object"&&typeof l.then=="function"?l.then(o,u=>Rt(u,this.#s&&this.#s.parent)):o(l)})}}function Gf(){Y===null&&Gu();var e=Y.b;return e===null?0:e.get_effect_pending()}function yr(e,t,n,r){const s=kr;var a=e.filter(d=>!d.settled);if(n.length===0&&a.length===0){r(t.map(s));return}var i=Y,o=cs(),l=a.length===1?a[0].promise:a.length>1?Promise.all(a.map(d=>d.promise)):null;function u(d){o();try{r(d)}catch(m){i.f&Xe||Rt(m,i)}gn()}if(n.length===0){l.then(()=>u(t.map(s)));return}var f=wr();function v(){Promise.all(n.map(d=>tl(d))).then(d=>u([...t.map(s),...d])).catch(d=>Rt(d,i)).finally(()=>f())}l?l.then(()=>{o(),v(),gn()}):v()}function el(e,t){yr(e,[],[],t)}function cs(){var e=Y,t=Q,n=le,r=X;return function(a=!0){Ve(e),Ze(t),Ln(n),a&&!(e.f&Xe)&&(r?.activate(),r?.apply())}}async function Xf(e){var t=cs(),n=await e;return()=>(t(),n)}async function Zs(e){var t=tr;queueMicrotask(()=>{tr===t&&Dr(null)});var n=await e;return()=>(Dr(t),queueMicrotask(()=>{tr===t&&Dr(null)}),n)}async function*Jf(e){const t=e[Symbol.asyncIterator]?.()??e[Symbol.iterator]?.();if(t===void 0)throw new TypeError("value is not async iterable");let n=!1;try{for(;;){const{done:s,value:a}=(await Zs(t.next()))();if(s){n=!0;break}var r=tr;yield a,Dr(r)}}finally{if(!n&&t.return!==void 0)return(await Zs(t.return()))().value}}function gn(e=!0){Ve(null),Ze(null),Ln(null),e&&X?.deactivate()}function Zf(e){const t=cs(),n=wr();var r=Y,s=null;const a=u=>{s={error:u},ta(r)||Rt(u,r)};var i=Promise.resolve(e[0]()).catch(a),o={promise:i,settled:!1},l=[o];i.finally(()=>{o.settled=!0,gn()});for(const u of e.slice(1)){i=i.then(()=>{if(t(),s)throw s.error;if(ta(r))throw Tt;return u()}).catch(a);const f={promise:i,settled:!1};l.push(f),i.finally(()=>{f.settled=!0,gn()})}return i.then(()=>Promise.resolve()).finally(()=>n()),l}function Qf(e){return Promise.all(e.map(t=>t.promise))}function wr(){var e=Y,t=e.b,n=X,r=t.is_rendered();return t.update_pending_count(1,n),n.increment(r,e),(s=!1)=>{t.update_pending_count(-1,n),n.decrement(r,e,s)}}let tr=null;function Dr(e){tr=e}function kr(e){var t=Ne|Oe;return Y!==null&&(Y.f|=Qt),{ctx:le,deps:null,effects:null,equals:Lo,f:t,fn:e,reactions:null,rv:0,v:me,wv:0,parent:Y,ac:null}}function tl(e,t,n){let r=Y;r===null&&Uu();var s=void 0,a=ot(me),i=!Q,o=new Map;return hd(()=>{var l=Y,u=Eo();s=u.promise;try{Promise.resolve(e()).then(u.resolve,u.reject).finally(gn)}catch(m){u.reject(m),gn()}var f=X;if(i){if(l.f&Ut)var v=wr();if(r.b.is_rendered())o.get(f)?.reject(Tt),o.delete(f);else{for(const m of o.values())m.reject(Tt);o.clear()}o.set(f,u)}const d=(m,b=void 0)=>{if(v){var k=b===Tt;v(k)}if(!(b===Tt||l.f&Xe)){if(f.activate(),b)a.f|=Yt,Pt(a,b);else{a.f&Yt&&(a.f^=Yt),Pt(a,m);for(const[y,E]of o){if(o.delete(y),y===f)break;E.reject(Tt)}}f.deactivate()}};u.promise.then(d,m=>d(null,m||"unknown"))}),ut(()=>{for(const l of o.values())l.reject(Tt)}),new Promise(l=>{function u(f){function v(){f===s?l(a):u(s)}f.then(v,v)}u(s)})}function G(e){const t=kr(e);return El(t),t}function Sa(e){const t=kr(e);return t.equals=Oo,t}function ed(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)Re(t[n])}}function Ea(e){var t,n=Y,r=e.parent;if(!Vt&&r!==null&&r.f&(Xe|Fe))return uf(),e.v;Ve(r);try{e.f&=~hn,ed(e),t=Tl(e)}finally{Ve(n)}return t}function nl(e){var t=Ea(e);if(!e.equals(t)&&(e.wv=Fr(),(!X?.is_fork||e.deps===null)&&(X!==null?X.capture(e,t,!0):e.v=t,e.deps===null))){ke(e,$e);return}Vt||(Be!==null?(Er()||X?.is_fork)&&Be.set(e,t):ya(e))}function td(e){if(e.effects!==null)for(const t of e.effects)(t.teardown||t.ac)&&(t.teardown?.(),t.ac?.abort(Tt),t.teardown=st,t.ac=null,ir(t,0),$a(t))}function rl(e){if(e.effects!==null)for(const t of e.effects)t.teardown&&mn(t)}let Br=new Set;const on=new Map;function nd(e){Br=e}let sl=!1;function ot(e,t){var n={f:0,v:e,reactions:null,equals:Lo,rv:0,wv:0};return n}function z(e,t){const n=ot(e);return El(n),n}function us(e,t=!1,n=!0){const r=ot(e);return t||(r.equals=Oo),r}function rd(e,t){return w(e,ye(()=>c(e))),t}function w(e,t,n=!1){Q!==null&&(!yt||Q.f&ar)&&Vo()&&Q.f&(Ne|kt|Pn|ar)&&(pt===null||!Rn.call(pt,e))&&sf();let r=n?fe(t):t;return Pt(e,r,Lr)}function Pt(e,t,n=null){if(!e.equals(t)){on.set(e,Vt?t:e.v);var r=gt.ensure();if(r.capture(e,t),e.f&Ne){const s=e;e.f&Oe&&Ea(s),Be===null&&ya(s)}e.wv=Fr(),il(e,Oe,n),Y!==null&&Y.f&$e&&!(Y.f&(St|Xt))&&(dt===null?bd([e]):dt.push(e)),!r.is_fork&&Br.size>0&&!sl&&al()}return t}function al(){sl=!1;for(const e of Br)e.f&$e&&ke(e,Et),Un(e)&&mn(e);Br.clear()}function Dn(e,t=1){var n=c(e),r=t===1?n++:n--;return w(e,n),r}function sd(e,t=1){var n=c(e);return w(e,t===1?++n:--n)}function nr(e){w(e,e.v+1)}function il(e,t,n){var r=e.reactions;if(r!==null)for(var s=r.length,a=0;a<s;a++){var i=r[a],o=i.f,l=(o&Oe)===0;if(l&&ke(i,t),o&Ne){var u=i;Be?.delete(u),o&hn||(o&ht&&(i.f|=hn),il(u,Et,n))}else if(l){var f=i;o&kt&&jt!==null&&jt.add(f),n!==null?n.push(f):ka(f)}}}function fe(e){if(typeof e!="object"||e===null||qe in e)return e;const t=as(e);if(t!==So&&t!==$u)return e;var n=new Map,r=qn(e),s=z(0),a=cn,i=o=>{if(cn===a)return o();var l=Q,u=cn;Ze(null),Ei(a);var f=o();return Ze(l),Ei(u),f};return r&&n.set("length",z(e.length)),new Proxy(e,{defineProperty(o,l,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&nf();var f=n.get(l);return f===void 0?i(()=>{var v=z(u.value);return n.set(l,v),v}):w(f,u.value,!0),!0},deleteProperty(o,l){var u=n.get(l);if(u===void 0){if(l in o){const f=i(()=>z(me));n.set(l,f),nr(s)}}else w(u,me),nr(s);return!0},get(o,l,u){if(l===qe)return e;var f=n.get(l),v=l in o;if(f===void 0&&(!v||wt(o,l)?.writable)&&(f=i(()=>{var m=fe(v?o[l]:me),b=z(m);return b}),n.set(l,f)),f!==void 0){var d=c(f);return d===me?void 0:d}return Reflect.get(o,l,u)},getOwnPropertyDescriptor(o,l){var u=Reflect.getOwnPropertyDescriptor(o,l);if(u&&"value"in u){var f=n.get(l);f&&(u.value=c(f))}else if(u===void 0){var v=n.get(l),d=v?.v;if(v!==void 0&&d!==me)return{enumerable:!0,configurable:!0,value:d,writable:!0}}return u},has(o,l){if(l===qe)return!0;var u=n.get(l),f=u!==void 0&&u.v!==me||Reflect.has(o,l);if(u!==void 0||Y!==null&&(!f||wt(o,l)?.writable)){u===void 0&&(u=i(()=>{var d=f?fe(o[l]):me,m=z(d);return m}),n.set(l,u));var v=c(u);if(v===me)return!1}return f},set(o,l,u,f){var v=n.get(l),d=l in o;if(r&&l==="length")for(var m=u;m<v.v;m+=1){var b=n.get(m+"");b!==void 0?w(b,me):m in o&&(b=i(()=>z(me)),n.set(m+"",b))}if(v===void 0)(!d||wt(o,l)?.writable)&&(v=i(()=>z(void 0)),w(v,fe(u)),n.set(l,v));else{d=v.v!==me;var k=i(()=>fe(u));w(v,k)}var y=Reflect.getOwnPropertyDescriptor(o,l);if(y?.set&&y.set.call(f,u),!d){if(r&&typeof l=="string"){var E=n.get("length"),h=Number(l);Number.isInteger(h)&&h>=E.v&&w(E,h+1)}nr(s)}return!0},ownKeys(o){c(s);var l=Reflect.ownKeys(o).filter(v=>{var d=n.get(v);return d===void 0||d.v!==me});for(var[u,f]of n)f.v!==me&&!(u in o)&&l.push(u);return l},setPrototypeOf(){rf()}})}function On(e){try{if(e!==null&&typeof e=="object"&&qe in e)return e[qe]}catch{}return e}function ol(e,t){return Object.is(On(e),On(t))}function ad(e,t,n=!0){try{e===t!=(On(e)===On(t))&&Po(n?"===":"!==")}catch{}return e===t===n}function id(e,t,n=!0){return e==t!=(On(e)==On(t))&&Po(),e==t===n}var Qs,ll,xa,cl,ul;function ea(){if(Qs===void 0){Qs=window,ll=document,xa=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;cl=wt(t,"firstChild").get,ul=wt(t,"nextSibling").get,_i(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),_i(n)&&(n.__t=void 0)}}function Me(e=""){return document.createTextNode(e)}function be(e){return cl.call(e)}function lt(e){return ul.call(e)}function g(e,t){if(!V)return be(e);var n=be(K);if(n===null)n=K.appendChild(Me());else if(t&&n.nodeType!==mr){var r=Me();return n?.before(r),de(r),r}return t&&fs(n),de(n),n}function Ce(e,t=!1){if(!V){var n=be(e);return n instanceof Comment&&n.data===""?lt(n):n}if(t){if(K?.nodeType!==mr){var r=Me();return K?.before(r),de(r),r}fs(K)}return K}function A(e,t=1,n=!1){let r=V?K:e;for(var s;t--;)s=r,r=lt(r);if(!V)return r;if(n){if(r?.nodeType!==mr){var a=Me();return r===null?s?.after(a):r.before(a),de(a),a}fs(r)}return de(r),r}function Aa(e){e.textContent=""}function fl(){return!1}function en(e,t,n){let r=n?{is:n}:void 0;return document.createElementNS(t??bo,e,r)}function od(){return document.createDocumentFragment()}function dl(e=""){return document.createComment(e)}function ld(e,t,n=""){if(t.startsWith("xlink:")){e.setAttributeNS("http://www.w3.org/1999/xlink",t,n);return}return e.setAttribute(t,n)}function fs(e){if(e.nodeValue.length<65536)return;let t=e.nextSibling;for(;t!==null&&t.nodeType===mr;)t.remove(),e.nodeValue+=t.nodeValue,t=e.nextSibling}function vl(e,t){if(t){const n=document.body;e.autofocus=!0,He(()=>{document.activeElement===n&&e.focus()})}}function cd(e){V&&be(e)!==null&&Aa(e)}let ki=!1;function hl(){ki||(ki=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{if(!e.defaultPrevented)for(const t of e.target.elements)t.__on_r?.()})},{capture:!0}))}function et(e,t,n,r=!0){r&&n();for(var s of t)e.addEventListener(s,n);ut(()=>{for(var a of t)e.removeEventListener(a,n)})}function tn(e){var t=Q,n=Y;Ze(null),Ve(null);try{return e()}finally{Ze(t),Ve(n)}}function Sr(e,t,n,r=n){e.addEventListener(t,()=>tn(n));const s=e.__on_r;s?e.__on_r=()=>{s(),r(!0)}:e.__on_r=()=>r(!0),hl()}function Ta(e){Y===null&&(Q===null&&Wu(),Yu()),Vt&&Ku()}function ud(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function tt(e,t){var n=Y;n!==null&&n.f&Fe&&(e|=Fe);var r={ctx:le,deps:null,nodes:null,f:e|Oe|ht,first:null,fn:t,last:null,next:null,parent:n,b:n&&n.b,prev:null,teardown:null,wv:0,ac:null};X?.register_created_effect(r);var s=r;if(e&vn)In!==null?In.push(r):gt.ensure().schedule(r);else if(t!==null){try{mn(r)}catch(i){throw Re(r),i}s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&!(s.f&Qt)&&(s=s.first,e&kt&&e&xt&&s!==null&&(s.f|=xt))}if(s!==null&&(s.parent=n,n!==null&&ud(s,n),Q!==null&&Q.f&Ne&&!(e&Xt))){var a=Q;(a.effects??=[]).push(s)}return r}function Er(){return Q!==null&&!yt}function ut(e){const t=tt(gr,null);return ke(t,$e),t.teardown=e,t}function Je(e){Ta();var t=Y.f,n=!Q&&(t&St)!==0&&(t&Ut)===0;if(n){var r=le;(r.e??=[]).push(e)}else return pl(e)}function pl(e){return tt(vn|To,e)}function _l(e){return Ta(),tt(gr|To,e)}function gl(e){return tt(ar,e)}function Ia(e){gt.ensure();const t=tt(Xt|Qt,e);return()=>{Re(t)}}function fd(e){gt.ensure();const t=tt(Xt|Qt,e);return(n={})=>new Promise(r=>{n.outro?ln(t,()=>{Re(t),r(void 0)}):(Re(t),r(void 0))})}function ct(e){return tt(vn,e)}function dd(e,t){var n=le,r={effect:null,ran:!1,deps:e};n.l.$.push(r),r.effect=Ae(()=>{if(e(),!r.ran){r.ran=!0;var s=Y;try{Ve(s.parent),ye(t)}finally{Ve(s)}}})}function vd(){var e=le;Ae(()=>{for(var t of e.l.$){t.deps();var n=t.effect;n.f&$e&&n.deps!==null&&ke(n,Et),Un(n)&&mn(n),t.ran=!1}})}function hd(e){return tt(Pn|Qt,e)}function Ae(e,t=0){return tt(gr|t,e)}function U(e,t=[],n=[],r=[]){yr(r,t,n,s=>{tt(gr,()=>e(...s.map(c)))})}function pd(e,t=[],n=[],r=[]){if(n.length>0||r.length>0)var s=wr();yr(r,t,n,a=>{tt(vn,()=>e(...a.map(c))),s&&s()})}function Ot(e,t=0){var n=tt(kt|t,e);return n}function ml(e,t=0){var n=tt(ga|t,e);return n}function Ue(e){return tt(St|Qt,e)}function bl(e){var t=e.teardown;if(t!==null){const n=Vt,r=Q;Si(!0),Ze(null);try{t.call(null)}finally{Si(n),Ze(r)}}}function $a(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){const s=n.ac;s!==null&&tn(()=>{s.abort(Tt)});var r=n.next;n.f&Xt?n.parent=null:Re(n,t),n=r}}function _d(e){for(var t=e.first;t!==null;){var n=t.next;t.f&St||Re(t),t=n}}function Re(e,t=!0){var n=!1;(t||e.f&Ao)&&e.nodes!==null&&e.nodes.end!==null&&(yl(e.nodes.start,e.nodes.end),n=!0),ke(e,Ys),$a(e,t&&!n),ir(e,0);var r=e.nodes&&e.nodes.t;if(r!==null)for(const a of r)a.stop();bl(e),e.f^=Ys,e.f|=Xe;var s=e.parent;s!==null&&s.first!==null&&wl(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=e.b=null}function yl(e,t){for(;e!==null;){var n=e===t?null:lt(e);e.remove(),e=n}}function wl(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function ln(e,t,n=!0){var r=[];kl(e,r,!0);var s=()=>{n&&Re(e),t&&t()},a=r.length;if(a>0){var i=()=>--a||s();for(var o of r)o.out(i)}else s()}function kl(e,t,n){if(!(e.f&Fe)){e.f^=Fe;var r=e.nodes&&e.nodes.t;if(r!==null)for(const o of r)(o.is_global||n)&&t.push(o);for(var s=e.first;s!==null;){var a=s.next,i=(s.f&xt)!==0||(s.f&St)!==0&&(e.f&kt)!==0;kl(s,t,i?n:!1),s=a}}}function Ca(e){Sl(e,!0)}function Sl(e,t){if(e.f&Fe){e.f^=Fe,e.f&$e||(ke(e,Oe),gt.ensure().schedule(e));for(var n=e.first;n!==null;){var r=n.next,s=(n.f&xt)!==0||(n.f&St)!==0;Sl(n,s?t:!1),n=r}var a=e.nodes&&e.nodes.t;if(a!==null)for(const i of a)(i.is_global||t)&&i.in()}}function ta(e=Y){return(e.f&Xe)!==0}function Ra(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var s=n===r?null:lt(n);t.append(n),n=s}}let xn=null;function gd(e){var t=xn;try{if(xn=new Set,ye(e),t!==null)for(var n of xn)t.add(n);return xn}finally{xn=t}}function md(e){for(var t of gd(e))Pt(t,t.v)}let Or=!1,Vt=!1;function Si(e){Vt=e}let Q=null,yt=!1;function Ze(e){Q=e}let Y=null;function Ve(e){Y=e}let pt=null;function El(e){Q!==null&&(pt===null?pt=[e]:pt.push(e))}let We=null,nt=0,dt=null;function bd(e){dt=e}let xl=1,an=0,cn=an;function Ei(e){cn=e}function Fr(){return++xl}function Un(e){var t=e.f;if(t&Oe)return!0;if(t&Ne&&(e.f&=~hn),t&Et){for(var n=e.deps,r=n.length,s=0;s<r;s++){var a=n[s];if(Un(a)&&nl(a),a.wv>e.wv)return!0}t&ht&&Be===null&&ke(e,$e)}return!1}function Al(e,t,n=!0){var r=e.reactions;if(r!==null&&!(pt!==null&&Rn.call(pt,e)))for(var s=0;s<r.length;s++){var a=r[s];a.f&Ne?Al(a,t,!1):t===a&&(n?ke(a,Oe):a.f&$e&&ke(a,Et),ka(a))}}function Tl(e){var t=We,n=nt,r=dt,s=Q,a=pt,i=le,o=yt,l=cn,u=e.f;We=null,nt=0,dt=null,Q=u&(St|Xt)?null:e,pt=null,Ln(e.ctx),yt=!1,cn=++an,e.ac!==null&&(tn(()=>{e.ac.abort(Tt)}),e.ac=null);try{e.f|=Ws;var f=e.fn,v=f();e.f|=Ut;var d=e.deps,m=X?.is_fork;if(We!==null){var b;if(m||ir(e,nt),d!==null&&nt>0)for(d.length=nt+We.length,b=0;b<We.length;b++)d[nt+b]=We[b];else e.deps=d=We;if(Er()&&e.f&ht)for(b=nt;b<d.length;b++)(d[b].reactions??=[]).push(e)}else!m&&d!==null&&nt<d.length&&(ir(e,nt),d.length=nt);if(Vo()&&dt!==null&&!yt&&d!==null&&!(e.f&(Ne|Et|Oe)))for(b=0;b<dt.length;b++)Al(dt[b],e);if(s!==null&&s!==e){if(an++,s.deps!==null)for(let k=0;k<n;k+=1)s.deps[k].rv=an;if(t!==null)for(const k of t)k.rv=an;dt!==null&&(r===null?r=dt:r.push(...dt))}return e.f&Yt&&(e.f^=Yt),v}catch(k){return Bo(k)}finally{e.f^=Ws,We=t,nt=n,dt=r,Q=s,pt=a,Ln(i),yt=o,cn=l}}function yd(e,t){let n=t.reactions;if(n!==null){var r=Iu.call(n,e);if(r!==-1){var s=n.length-1;s===0?n=t.reactions=null:(n[r]=n[s],n.pop())}}if(n===null&&t.f&Ne&&(We===null||!Rn.call(We,t))){var a=t;a.f&ht&&(a.f^=ht,a.f&=~hn),a.v!==me&&ya(a),td(a),ir(a,0)}}function ir(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)yd(e,n[r])}function mn(e){var t=e.f;if(!(t&Xe)){ke(e,$e);var n=Y,r=Or;Y=e,Or=!0;try{t&(kt|ga)?_d(e):$a(e),bl(e);var s=Tl(e);e.teardown=typeof s=="function"?s:null,e.wv=xl;var a;wo&&mf&&e.f&Oe&&e.deps}finally{Or=r,Y=n}}}async function Pa(){await Promise.resolve(),Jt()}function wd(){return gt.ensure().settled()}function c(e){var t=e.f,n=(t&Ne)!==0;if(xn?.add(e),Q!==null&&!yt){var r=Y!==null&&(Y.f&Xe)!==0;if(!r&&(pt===null||!Rn.call(pt,e))){var s=Q.deps;if(Q.f&Ws)e.rv<an&&(e.rv=an,We===null&&s!==null&&s[nt]===e?nt++:We===null?We=[e]:We.push(e));else{(Q.deps??=[]).push(e);var a=e.reactions;a===null?e.reactions=[Q]:Rn.call(a,Q)||a.push(Q)}}}if(Vt&&on.has(e))return on.get(e);if(n){var i=e;if(Vt){var o=i.v;return(!(i.f&$e)&&i.reactions!==null||$l(i))&&(o=Ea(i)),on.set(i,o),o}var l=(i.f&ht)===0&&!yt&&Q!==null&&(Or||(Q.f&ht)!==0),u=(i.f&Ut)===0;Un(i)&&(l&&(i.f|=ht),nl(i)),l&&!u&&(rl(i),Il(i))}if(Be?.has(e))return Be.get(e);if(e.f&Yt)throw e.v;return e.v}function Il(e){if(e.f|=ht,e.deps!==null)for(const t of e.deps)(t.reactions??=[]).push(e),t.f&Ne&&!(t.f&ht)&&(rl(t),Il(t))}function $l(e){if(e.v===me)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(on.has(t)||t.f&Ne&&$l(t))return!0;return!1}function kd(e){return e&&c(e)}function ye(e){var t=yt;try{return yt=!0,e()}finally{yt=t}}function La(e){if(!(typeof e!="object"||!e||e instanceof EventTarget)){if(qe in e)Hr(e);else if(!Array.isArray(e))for(let t in e){const n=e[t];typeof n=="object"&&n&&qe in n&&Hr(n)}}}function Hr(e,t=new Set){if(typeof e=="object"&&e!==null&&!(e instanceof EventTarget)&&!t.has(e)){t.add(e),e instanceof Date&&e.getTime();for(let r in e)try{Hr(e[r],t)}catch{}const n=as(e);if(n!==Object.prototype&&n!==Array.prototype&&n!==Map.prototype&&n!==Set.prototype&&n!==Date.prototype){const r=ko(n);for(let s in r){const a=r[s].get;if(a)try{a.call(e)}catch{}}}}}function Sd(e,t){if(Co(),V){const n=window.__svelte?.h;if(n?.has(e))return n.get(e);df()}return t()}const Zn=Symbol("events"),Cl=new Set,na=new Set;function Ed(e){if(!V)return;e.removeAttribute("onload"),e.removeAttribute("onerror");const t=e.__e;t!==void 0&&(e.__e=void 0,queueMicrotask(()=>{e.isConnected&&e.dispatchEvent(t)}))}function Rl(e,t,n,r={}){function s(a){if(r.capture||ra.call(t,a),!a.cancelBubble)return tn(()=>n?.call(this,a))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?He(()=>{t.addEventListener(e,s,r)}):t.addEventListener(e,s,r),s}function Qe(e,t,n,r,s){var a={capture:r,passive:s},i=Rl(e,t,n,a);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&ut(()=>{t.removeEventListener(e,i,a)})}function H(e,t,n){(t[Zn]??={})[e]=n}function Se(e){for(var t=0;t<e.length;t++)Cl.add(e[t]);for(var n of na)n(e)}let xi=null;function ra(e){var t=this,n=t.ownerDocument,r=e.type,s=e.composedPath?.()||[],a=s[0]||e.target;xi=e;var i=0,o=xi===e&&e[Zn];if(o){var l=s.indexOf(o);if(l!==-1&&(t===document||t===window)){e[Zn]=t;return}var u=s.indexOf(t);if(u===-1)return;l<=u&&(i=l)}if(a=s[i]||e.target,a!==t){dn(e,"currentTarget",{configurable:!0,get(){return a||n}});var f=Q,v=Y;Ze(null),Ve(null);try{for(var d,m=[];a!==null;){var b=a.assignedSlot||a.parentNode||a.host||null;try{var k=a[Zn]?.[r];k!=null&&(!a.disabled||e.target===a)&&k.call(a,e)}catch(y){d?m.push(y):d=y}if(e.cancelBubble||b===t||b===null)break;a=b}if(d){for(let y of m)queueMicrotask(()=>{throw y});throw d}}finally{e[Zn]=t,delete e.currentTarget,Ze(f),Ve(v)}}}function xd(e,t,n,r,s,a=!1,i=!1){let o,l;try{o=e()}catch(u){l=u}if(typeof o!="function"&&(a||o!=null||l)){const u=r?.[rt];s?`${u}${s[0]}${s[1]}`:`${u}`;const f=n[0]?.eventPhase<Event.BUBBLING_PHASE?"capture":"";if(n[0]?.type+f,ff(),l)throw l}o?.apply(t,n)}const Ad=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:e=>e});function Pl(e){return Ad?.createHTML(e)??e}function Da(e){var t=en("template");return t.innerHTML=Pl(e.replaceAll("<!>","<!---->")),t.content}const Td=bn?"template":"TEMPLATE",Id=bn?"script":"SCRIPT";function Pe(e,t){var n=Y;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function $(e,t){var n=(t&pa)!==0,r=(t&mo)!==0,s,a=!e.startsWith("<!>");return()=>{if(V)return Pe(K,null),K;s===void 0&&(s=Da(a?e:"<!>"+e),n||(s=be(s)));var i=r||xa?document.importNode(s,!0):s.cloneNode(!0);if(n){var o=be(i),l=i.lastChild;Pe(o,l)}else Pe(i,i);return i}}function Ll(e,t,n="svg"){var r=!e.startsWith("<!>"),s=(t&pa)!==0,a=`<${n}>${r?e:"<!>"+e}</${n}>`,i;return()=>{if(V)return Pe(K,null),K;if(!i){var o=Da(a),l=be(o);if(s)for(i=document.createDocumentFragment();be(l);)i.appendChild(be(l));else i=be(l)}var u=i.cloneNode(!0);if(s){var f=be(u),v=u.lastChild;Pe(f,v)}else Pe(u,u);return u}}function $d(e,t){return Ll(e,t,"svg")}function Cd(e,t){return Ll(e,t,"math")}function Dl(e,t){var n=od();for(var r of e){if(typeof r=="string"){n.append(Me(r));continue}if(r===void 0||r[0][0]==="/"){n.append(dl(r?r[0].slice(3):""));continue}const[o,l,...u]=r,f=o==="svg"?_r:o==="math"?_a:t;var s=en(o,f,l?.is);for(var a in l)ld(s,a,l[a]);if(u.length>0){var i=s.nodeName===Td?s.content:s;i.append(Dl(u,s.nodeName==="foreignObject"?void 0:f))}n.append(s)}return n}function Rd(e,t){var n=(t&pa)!==0,r=(t&mo)!==0,s;return()=>{if(V)return Pe(K,null),K;if(s===void 0){const l=t&Au?_r:t&Tu?_a:void 0;s=Dl(e,l),n||(s=be(s))}var a=r||xa?document.importNode(s,!0):s.cloneNode(!0);if(n){var i=be(a),o=a.lastChild;Pe(i,o)}else Pe(a,a);return a}}function Pd(e){return()=>Ld(e())}function Ld(e){if(V)return e;const t=e.nodeType===$o,n=e.nodeName===Id?[e]:e.querySelectorAll("script"),r=Y;for(const a of n){const i=en("script");for(var s of a.attributes)i.setAttribute(s.name,s.value);i.textContent=a.textContent,(t?e.firstChild===a:e===a)&&(r.nodes.start=i),(t?e.lastChild===a:e===a)&&(r.nodes.end=i),a.replaceWith(i)}return e}function Nr(e=""){if(!V){var t=Me(e+"");return Pe(t,t),t}var n=K;return n.nodeType!==mr?(n.before(n=Me()),de(n)):fs(n),Pe(n,n),n}function qt(){if(V)return Pe(K,null),K;var e=document.createDocumentFragment(),t=document.createComment(""),n=Me();return e.append(t,n),Pe(t,n),e}function T(e,t){if(V){var n=Y;(!(n.f&Ut)||n.nodes.end===null)&&(n.nodes.end=K),Ke();return}e!==null&&e.before(t)}function Dd(){if(V&&K&&K.nodeType===Bt&&K.textContent?.startsWith("$")){const e=K.textContent.substring(1);return Ke(),e}return(window.__svelte??={}).uid??=1,`c${window.__svelte.uid++}`}const Od=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function Nd(e){return Od.includes(e)||e.toLowerCase()==="!doctype"}function zd(e){return e.endsWith("capture")&&e!=="gotpointercapture"&&e!=="lostpointercapture"}const Md=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function jd(e){return Md.includes(e)}const qd={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function Vd(e){return e=e.toLowerCase(),qd[e]??e}const Ud=["touchstart","touchmove"];function Bd(e){return Ud.includes(e)}const Fd=["textarea","script","style","title"];function Hd(e){return Fd.includes(e)}function Ol(e){return e?.replace(/\//g,"/​")}let Kr=!0;function $n(e){Kr=e}function N(e,t){var n=t==null?"":typeof t=="object"?`${t}`:t;n!==(e.__t??=e.nodeValue)&&(e.__t=n,e.nodeValue=`${n}`)}function je(e,t){return zl(e,t)}function Nl(e,t){ea(),t.intro=t.intro??!1;const n=t.target,r=V,s=K;try{for(var a=be(n);a&&(a.nodeType!==Bt||a.data!==ts);)a=lt(a);if(!a)throw fn;pe(!0),de(a);const i=zl(e,{...t,anchor:a});return pe(!1),i}catch(i){if(i instanceof Error&&i.message.split(`
5
+ `).some(o=>o.startsWith("https://svelte.dev/e/")))throw i;return i!==fn&&console.warn("Failed to hydrate: ",i),t.recover===!1&&ef(),ea(),Aa(n),pe(!1),je(e,t)}finally{pe(r),de(s)}}const Ir=new Map;function zl(e,{target:t,anchor:n,props:r={},events:s,context:a,intro:i=!0,transformError:o}){ea();var l=void 0,u=fd(()=>{var f=n??t.appendChild(Me());Qo(f,{pending:()=>{}},m=>{ne({});var b=le;if(a&&(b.c=a),s&&(r.$$events=s),V&&Pe(m,null),Kr=i,l=e(m,r)||{},Kr=!0,V&&(Y.nodes.end=K,K===null||K.nodeType!==Bt||K.data!==rs))throw br(),fn;re()},o);var v=new Set,d=m=>{for(var b=0;b<m.length;b++){var k=m[b];if(!v.has(k)){v.add(k);var y=Bd(k);for(const _ of[t,document]){var E=Ir.get(_);E===void 0&&(E=new Map,Ir.set(_,E));var h=E.get(k);h===void 0?(_.addEventListener(k,ra,{passive:y}),E.set(k,1)):E.set(k,h+1)}}}};return d(ss(Cl)),na.add(d),()=>{for(var m of v)for(const y of[t,document]){var b=Ir.get(y),k=b.get(m);--k==0?(y.removeEventListener(m,ra),b.delete(m),b.size===0&&Ir.delete(y)):b.set(m,k)}na.delete(d),f!==n&&f.parentNode?.removeChild(f)}});return sa.set(l,u),l}let sa=new WeakMap;function Ge(e,t){const n=sa.get(e);return n?(sa.delete(e),n(t)):Promise.resolve()}function Kd(e){const t=e();t&&Nd(t)&&bf()}function Yd(e){const t=e();t&&!(typeof t=="string")&&Vu()}function Wd(e,t){e!=null&&typeof e.subscribe!="function"&&qu()}function Ml(e){return e.toString=()=>(ju(),""),e}class Bn{anchor;#e=new Map;#n=new Map;#t=new Map;#a=new Set;#s=!0;constructor(t,n=!0){this.anchor=t,this.#s=n}#i=t=>{if(this.#e.has(t)){var n=this.#e.get(t),r=this.#n.get(n);if(r)Ca(r),this.#a.delete(n);else{var s=this.#t.get(n);s&&(this.#n.set(n,s.effect),this.#t.delete(n),s.fragment.lastChild.remove(),this.anchor.before(s.fragment),r=s.effect)}for(const[a,i]of this.#e){if(this.#e.delete(a),a===t)break;const o=this.#t.get(i);o&&(Re(o.effect),this.#t.delete(i))}for(const[a,i]of this.#n){if(a===n||this.#a.has(a))continue;const o=()=>{if(Array.from(this.#e.values()).includes(a)){var u=document.createDocumentFragment();Ra(i,u),u.append(Me()),this.#t.set(a,{effect:i,fragment:u})}else Re(i);this.#a.delete(a),this.#n.delete(a)};this.#s||!r?(this.#a.add(a),ln(i,o,!1)):o()}}};#r=t=>{this.#e.delete(t);const n=Array.from(this.#e.values());for(const[r,s]of this.#t)n.includes(r)||(Re(s.effect),this.#t.delete(r))};ensure(t,n){var r=X,s=fl();if(n&&!this.#n.has(t)&&!this.#t.has(t))if(s){var a=document.createDocumentFragment(),i=Me();a.append(i),this.#t.set(t,{effect:Ue(()=>n(i)),fragment:a})}else this.#n.set(t,Ue(()=>n(this.anchor)));if(this.#e.set(r,t),s){for(const[o,l]of this.#n)o===t?r.unskip_effect(l):r.skip_effect(l);for(const[o,l]of this.#t)o===t?r.unskip_effect(l.effect):r.skip_effect(l.effect);r.oncommit(this.#i),r.ondiscard(this.#r)}else V&&(this.anchor=K),this.#i(r)}}function Oa(e,t,...n){var r=new Bn(e);Ot(()=>{const s=t()??null;r.ensure(s,s&&(a=>s(a,...n)))},xt)}function Gd(e,t){const n=(r,...s)=>{var a=ba;bi(e);try{return t(r,...s)}finally{bi(a)}};return Ml(n),n}function Xd(e){return(t,...n)=>{var r=e(...n),s;if(V)s=K,Ke();else{var a=r.render().trim(),i=Da(a);s=be(i),t.before(s)}const o=r.setup?.(s);Pe(s,s),typeof o=="function"&&ut(o)}}function Jd(){return Q===null&&Qu(),(Q.ac??=new AbortController).signal}function Na(e){le===null&&Vn(),Je(()=>{const t=ye(e);if(typeof t=="function")return t})}function jl(e){le===null&&Vn(),Na(()=>()=>ye(e))}function Zd(e,t,{bubbles:n=!1,cancelable:r=!1}={}){return new CustomEvent(e,{detail:t,bubbles:n,cancelable:r})}function Qd(){const e=le;return e===null&&Vn(),(t,n,r)=>{const s=e.s.$$events?.[t];if(s){const a=qn(s)?s.slice():[s],i=Zd(t,n,r);for(const o of a)o.call(e.x,i);return!i.defaultPrevented}return!0}}function ev(e){le===null&&Vn(),le.l===null&&Ro(),ql(le).b.push(e)}function tv(e){le===null&&Vn(),le.l===null&&Ro(),ql(le).a.push(e)}function ql(e){var t=e.l;return t.u??={a:[],b:[],m:[]}}const Vl=Object.freeze(Object.defineProperty({__proto__:null,afterUpdate:tv,beforeUpdate:ev,createContext:Tf,createEventDispatcher:Qd,createRawSnippet:Xd,flushSync:Jt,fork:Hf,getAbortSignal:Jd,getAllContexts:If,getContext:Mo,hasContext:qo,hydratable:Sd,hydrate:Nl,mount:je,onDestroy:jl,onMount:Na,setContext:jo,settled:wd,tick:Pa,unmount:Ge,untrack:ye},Symbol.toStringTag,{value:"Module"}));function nv(){return Symbol(yo)}function Ul(e,t,n,r){return e!==t&&typeof t=="object"&&qe in t&&of(n,Ol(r)),e}function rv(e,t,n,r,s){return Ul(n==="="?e[t]=r:n==="&&="?e[t]&&=r():n==="||="?e[t]||=r():n==="??="?e[t]??=r():null,ye(()=>e[t]),t,s)}async function sv(e,t,n,r,s){return Ul(n==="="?e[t]=await r:n==="&&="?e[t]&&=await r():n==="||="?e[t]||=await r():n==="??="?e[t]??=await r():null,ye(()=>e[t]),t,s)}var Ai=new Map;function av(e){var t=Ai.get(e);if(t){for(const n of t)n.remove();Ai.delete(e)}}function iv(e,t,n){return(...r)=>{const s=e(...r);var a=V?s:s.nodeType===$o?s.firstChild:s;return Bl(a,t,n),s}}function ov(e,t,n){e.__svelte_meta={parent:Pr,loc:{file:t,line:n[0],column:n[1]}},n[2]&&Bl(e.firstChild,t,n[2])}function Bl(e,t,n){for(var r=0,s=0;e&&r<n.length;){if(V&&e.nodeType===Bt){var a=e;a.data[0]===ts?s+=1:a.data[0]===rs&&(s-=1)}s===0&&e.nodeType===Io&&ov(e,t,n[r++]),e=e.nextSibling}}function lv(e){const t=ot(e);function n(r,s){let a={},i={},o,l=!1,u=r;return Ot(()=>{if(a!==(a=c(t))){if(o){for(var f in i)delete i[f];Re(o)}o=Ue(()=>{u=u[Nu]??u,l&&$n(!1);var v=new.target?new a(u,s):a(u,s);v&&Object.defineProperties(i,Object.getOwnPropertyDescriptors(v)),l&&$n(!0)}),Y.nodes=o.nodes}},xt),l=!0,V&&(u=K),i}return n[rt]=e[rt],n[Sn]={fn:e,current:t,update:r=>{w(n[Sn].current,r[Sn].fn),r[Sn].current=n[Sn].current}},n}function cv(e){const t=le?.function,n=le?.p?.function;return{mutation:(r,s,a,i,o)=>{const l=s[0];if(Ti(e,l)||!n)return a;let u=e;for(let v=0;v<s.length-1;v++)if(u=u[s[v]],!u?.[qe])return a;const f=Ol(`${t[rt]}:${i}:${o}`);return hf(l,f,r,n[rt]),a},binding:(r,s,a)=>{!Ti(e,r)&&n&&a()?.[qe]&&vf(t[rt],r,s[rt],n[rt])}}}function Ti(e,t){const n=qe in e||is in e;return!!wt(e,t)?.set||n&&t in e||!(t in e)}function uv(e){e&&Fu(e[rt]??"a component",e.name)}function fv(){const e=le?.function;function t(n){Bu(n,e[rt])}return{$destroy:()=>t("$destroy()"),$on:()=>t("$on(...)"),$set:()=>t("$set(...)")}}function dv(e,t,n=!1){Ta();let r=!0,s=me;gl(()=>{try{var a=e()}catch(o){s=o;return}var i=_n(a,!0,!0);ye(()=>{if(n){if(t(...i),!r){const o=Ef("$inspect(...)");o&&(console.groupCollapsed("stack trace"),console.log(o),console.groupEnd())}}else t(r?"init":"update",...i)}),r=!1}),Ae(()=>{try{e()}catch{}s!==me&&(console.error(s),s=me)})}function vv(e,t=[],n=[],r){var s=V,a=null;if(s&&(Ke(),a=pn(!1)),n.length===0&&t.every(l=>l.settled)){r(e),s&&de(a);return}const i=wr();if(s){var o=K;de(a)}yr(t,[],n,l=>{s&&(pe(!0),de(o));try{for(const u of l)c(u);r(e,...l)}finally{s&&pe(!1),i()}})}function hv(e,...t){(typeof e!="object"||!(e instanceof Node))&&mi();for(let n of t)typeof n!="function"&&mi()}const Ii=0,$i=1,pv=2;function _v(e,t,n,r,s){V&&Ke();var a=me,i=ot(a),o=ot(a),l=new Bn(e);Ot(()=>{var u=X;u.deactivate();var f=t();u.activate();var v=!1;let d=V&&gi(f)===(e.data===ns);if(d&&(de(pn()),pe(!1)),gi(f)){var m=cs(),b=!1;const k=y=>{if(!v){b=!0,m(!1),gt.ensure(),V&&pe(!1);try{y()}finally{gn(!1),Cn||Jt()}}};f.then(y=>{k(()=>{Pt(i,y),l.ensure($i,r&&(E=>r(E,i)))})},y=>{k(()=>{if(Pt(o,y),l.ensure(pv,s&&(E=>s(E,o))),!s)throw o.v})}),V?l.ensure(Ii,n):He(()=>{b||k(()=>{l.ensure(Ii,n)})})}else Pt(i,f),l.ensure($i,r&&(k=>r(k,i)));return d&&pe(!0),()=>{v=!0}})}function F(e,t,n=!1){var r;V&&(r=K,Ke());var s=new Bn(e),a=n?xt:0;function i(o,l){if(V){var u=ma(r);if(o!==parseInt(u.substring(1))){var f=pn();de(f),s.anchor=f,pe(!1),s.ensure(o,l),pe(!0);return}}s.ensure(o,l)}Ot(()=>{var o=!1;t((l,u=0)=>{o=!0,i(u,l)}),o||i(-1,null)},a)}const gv=Symbol("NaN");function mv(e,t,n){V&&Ke();var r=new Bn(e);Ot(()=>{var s=t();s!==s&&(s=gv),r.ensure(s,n)})}function bv(e,t){V&&de(be(e)),Ae(()=>{var n=t();for(var r in n){var s=n[r];s?e.style.setProperty(r,s):e.style.removeProperty(r)}})}function Nn(e,t){return t}function yv(e,t,n){for(var r=[],s=t.length,a,i=t.length,o=0;o<s;o++){let v=t[o];ln(v,()=>{if(a){if(a.pending.delete(v),a.done.add(v),a.pending.size===0){var d=e.outrogroups;aa(e,ss(a.done)),d.delete(a),d.size===0&&(e.outrogroups=null)}}else i-=1},!1)}if(i===0){var l=r.length===0&&n!==null;if(l){var u=n,f=u.parentNode;Aa(f),f.append(u),e.items.clear()}aa(e,t,!l)}else a={pending:new Set(t),done:new Set},(e.outrogroups??=new Set).add(a)}function aa(e,t,n=!0){var r;if(e.pending.size>0){r=new Set;for(const i of e.pending.values())for(const o of i)r.add(e.items.get(o).e)}for(var s=0;s<t.length;s++){var a=t[s];if(r?.has(a)){a.f|=Ct;const i=document.createDocumentFragment();Ra(a,i)}else Re(t[s],n)}}var Ci;function Te(e,t,n,r,s,a=null){var i=e,o=new Map,l=(t&_o)!==0;if(l){var u=e;i=V?de(be(u)):u.appendChild(Me())}V&&Ke();var f=null,v=Sa(()=>{var _=n();return qn(_)?_:_==null?[]:ss(_)}),d,m=new Map,b=!0;function k(_){h.effect.f&Xe||(h.pending.delete(_),h.fallback=f,wv(h,d,i,t,r),f!==null&&(d.length===0?f.f&Ct?(f.f^=Ct,Qn(f,null,i)):Ca(f):ln(f,()=>{f=null})))}function y(_){h.pending.delete(_)}var E=Ot(()=>{d=c(v);var _=d.length;let x=!1;if(V){var R=ma(i)===ns;R!==(_===0)&&(i=pn(),de(i),pe(!1),x=!0)}for(var I=new Set,C=X,j=fl(),D=0;D<_;D+=1){V&&K.nodeType===Bt&&K.data===rs&&(i=K,x=!0,pe(!1));var P=d[D],S=r(P,D),M=b?null:o.get(S);M?(M.v&&Pt(M.v,P),M.i&&Pt(M.i,D),j&&C.unskip_effect(M.e)):(M=kv(o,b?i:Ci??=Me(),P,S,D,s,t,n),b||(M.e.f|=Ct),o.set(S,M)),I.add(S)}if(_===0&&a&&!f&&(b?f=Ue(()=>a(i)):(f=Ue(()=>a(Ci??=Me())),f.f|=Ct)),_>I.size&&Hu(),V&&_>0&&de(pn()),!b)if(m.set(C,I),j){for(const[B,O]of o)I.has(B)||C.skip_effect(O.e);C.oncommit(k),C.ondiscard(y)}else k(C);x&&pe(!0),c(v)}),h={effect:E,items:o,pending:m,outrogroups:null,fallback:f};b=!1,V&&(i=K)}function Gn(e){for(;e!==null&&!(e.f&St);)e=e.next;return e}function wv(e,t,n,r,s){var a=(r&mu)!==0,i=t.length,o=e.items,l=Gn(e.effect.first),u,f=null,v,d=[],m=[],b,k,y,E;if(a)for(E=0;E<i;E+=1)b=t[E],k=s(b,E),y=o.get(k).e,y.f&Ct||(y.nodes?.a?.measure(),(v??=new Set).add(y));for(E=0;E<i;E+=1){if(b=t[E],k=s(b,E),y=o.get(k).e,e.outrogroups!==null)for(const P of e.outrogroups)P.pending.delete(y),P.done.delete(y);if(y.f&Fe&&(Ca(y),a&&(y.nodes?.a?.unfix(),(v??=new Set).delete(y))),y.f&Ct)if(y.f^=Ct,y===l)Qn(y,null,n);else{var h=f?f.next:l;y===e.effect.last&&(e.effect.last=y.prev),y.prev&&(y.prev.next=y.next),y.next&&(y.next.prev=y.prev),Kt(e,f,y),Kt(e,y,h),Qn(y,h,n),f=y,d=[],m=[],l=Gn(f.next);continue}if(y!==l){if(u!==void 0&&u.has(y)){if(d.length<m.length){var _=m[0],x;f=_.prev;var R=d[0],I=d[d.length-1];for(x=0;x<d.length;x+=1)Qn(d[x],_,n);for(x=0;x<m.length;x+=1)u.delete(m[x]);Kt(e,R.prev,I.next),Kt(e,f,R),Kt(e,I,_),l=_,f=I,E-=1,d=[],m=[]}else u.delete(y),Qn(y,l,n),Kt(e,y.prev,y.next),Kt(e,y,f===null?e.effect.first:f.next),Kt(e,f,y),f=y;continue}for(d=[],m=[];l!==null&&l!==y;)(u??=new Set).add(l),m.push(l),l=Gn(l.next);if(l===null)continue}y.f&Ct||d.push(y),f=y,l=Gn(y.next)}if(e.outrogroups!==null){for(const P of e.outrogroups)P.pending.size===0&&(aa(e,ss(P.done)),e.outrogroups?.delete(P));e.outrogroups.size===0&&(e.outrogroups=null)}if(l!==null||u!==void 0){var C=[];if(u!==void 0)for(y of u)y.f&Fe||C.push(y);for(;l!==null;)!(l.f&Fe)&&l!==e.fallback&&C.push(l),l=Gn(l.next);var j=C.length;if(j>0){var D=r&_o&&i===0?n:null;if(a){for(E=0;E<j;E+=1)C[E].nodes?.a?.measure();for(E=0;E<j;E+=1)C[E].nodes?.a?.fix()}yv(e,C,D)}}a&&He(()=>{if(v!==void 0)for(y of v)y.nodes?.a?.apply()})}function kv(e,t,n,r,s,a,i,o){var l=i&_u?i&bu?ot(n):us(n,!1,!1):null,u=i&gu?ot(s):null;return{v:l,i:u,e:Ue(()=>(a(t,l??n,u??s,o),()=>{e.delete(r)}))}}function Qn(e,t,n){if(e.nodes)for(var r=e.nodes.start,s=e.nodes.end,a=t&&!(t.f&Ct)?t.nodes.start:n;r!==null;){var i=lt(r);if(a.before(r),r===s)return;r=i}}function Kt(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}function Sv(e,t,n=!1,r=!1,s=!1,a=!1){var i=e,o="";if(n){var l=e;V&&(i=de(be(l)))}U(()=>{var u=Y;if(o===(o=t()??"")){V&&Ke();return}if(n&&!V){u.nodes=null,l.innerHTML=o,o!==""&&Pe(be(l),l.lastChild);return}if(u.nodes!==null&&(yl(u.nodes.start,u.nodes.end),u.nodes=null),o!==""){if(V){K.data;for(var f=Ke(),v=f;f!==null&&(f.nodeType!==Bt||f.data!=="");)v=f,f=lt(f);if(f===null)throw br(),fn;Pe(K,v),i=de(f);return}var d=r?_r:s?_a:void 0,m=en(r?"svg":s?"math":"template",d);m.innerHTML=o;var b=r||s?m:m.content;if(Pe(be(b),b.lastChild),r||s)for(;be(b);)i.before(be(b));else i.before(b)}})}function Ev(e,t,n,r,s){V&&Ke();var a=t.$$slots?.[n],i=!1;a===!0&&(a=t[n==="default"?"children":n],i=!0),a===void 0?s!==null&&s(e):a(e,i?()=>r:r)}function xv(e){const t={};e.children&&(t.default=!0);for(const n in e.$$slots)t[n]=!0;return t}function ds(e,t,n){var r;V&&(r=K,Ke());var s=new Bn(e);Ot(()=>{var a=t()??null;if(V){var i=ma(r),o=i===ts,l=a!==null;if(o!==l){var u=pn();de(u),s.anchor=u,pe(!1),s.ensure(a,a&&(f=>n(f,a))),pe(!0);return}}s.ensure(a,a&&(f=>n(f,a)))},xt)}const Av=()=>performance.now(),It={tick:e=>requestAnimationFrame(e),now:()=>Av(),tasks:new Set};function Fl(){const e=It.now();It.tasks.forEach(t=>{t.c(e)||(It.tasks.delete(t),t.f())}),It.tasks.size!==0&&It.tick(Fl)}function Tv(e){let t;return It.tasks.size===0&&It.tick(Fl),{promise:new Promise(n=>{It.tasks.add(t={c:e,f:n})}),abort(){It.tasks.delete(t)}}}function Yr(e,t){tn(()=>{e.dispatchEvent(new CustomEvent(t))})}function Iv(e){if(e==="float")return"cssFloat";if(e==="offset")return"cssOffset";if(e.startsWith("--"))return e;const t=e.split("-");return t.length===1?t[0]:t[0]+t.slice(1).map(n=>n[0].toUpperCase()+n.slice(1)).join("")}function Ri(e){const t={},n=e.split(";");for(const r of n){const[s,a]=r.split(":");if(!s||a===void 0)break;const i=Iv(s.trim());t[i]=a.trim()}return t}const $v=e=>e;let Hl=null;function Pi(e){Hl=e}function Cv(e,t,n){var r=Hl??Y,s=r.nodes,a,i,o,l=null;s.a??={element:e,measure(){a=this.element.getBoundingClientRect()},apply(){if(o?.abort(),i=this.element.getBoundingClientRect(),a.left!==i.left||a.right!==i.right||a.top!==i.top||a.bottom!==i.bottom){const u=t()(this.element,{from:a,to:i},n?.());o=Wr(this.element,u,void 0,1,()=>{o?.abort(),o=void 0})}},fix(){if(!e.getAnimations().length){var{position:u,width:f,height:v}=getComputedStyle(e);if(u!=="absolute"&&u!=="fixed"){var d=e.style;l={position:d.position,width:d.width,height:d.height,transform:d.transform},d.position="absolute",d.width=f,d.height=v;var m=e.getBoundingClientRect();if(a.left!==m.left||a.top!==m.top){var b=`translate(${a.left-m.left}px, ${a.top-m.top}px)`;d.transform=d.transform?`${d.transform} ${b}`:b}}}},unfix(){if(l){var u=e.style;u.position=l.position,u.width=l.width,u.height=l.height,u.transform=l.transform}}},s.a.element=e}function Rv(e,t,n,r){var s=(e&Su)!==0,a=(e&Eu)!==0,i=s&&a,o=(e&xu)!==0,l=i?"both":s?"in":"out",u,f=t.inert,v=t.style.overflow,d,m;function b(){return tn(()=>u??=n()(t,r?.()??{},{direction:l}))}var k={is_global:o,in(){if(t.inert=f,!s){m?.abort(),m?.reset?.();return}a||d?.abort(),d=Wr(t,b(),m,1,()=>{Yr(t,"introend"),d?.abort(),d=u=void 0,t.style.overflow=v})},out(_){if(!a){_?.(),u=void 0;return}t.inert=!0,m=Wr(t,b(),d,0,()=>{Yr(t,"outroend"),_?.()})},stop:()=>{d?.abort(),m?.abort()}},y=Y;if((y.nodes.t??=[]).push(k),s&&Kr){var E=o;if(!E){for(var h=y.parent;h&&h.f&xt;)for(;(h=h.parent)&&!(h.f&kt););E=!h||(h.f&Ut)!==0}E&&ct(()=>{ye(()=>k.in())})}}function Wr(e,t,n,r,s){var a=r===1;if(En(t)){var i,o=!1;return He(()=>{if(!o){var y=t({direction:a?"in":"out"});i=Wr(e,y,n,r,s)}}),{abort:()=>{o=!0,i?.abort()},deactivate:()=>i.deactivate(),reset:()=>i.reset(),t:()=>i.t()}}if(n?.deactivate(),!t?.duration&&!t?.delay)return Yr(e,a?"introstart":"outrostart"),s(),{abort:st,deactivate:st,reset:st,t:()=>r};const{delay:l=0,css:u,tick:f,easing:v=$v}=t;var d=[];if(a&&n===void 0&&(f&&f(0,1),u)){var m=Ri(u(0,1));d.push(m,m)}var b=()=>1-r,k=e.animate(d,{duration:l,fill:"forwards"});return k.onfinish=()=>{k.cancel(),Yr(e,a?"introstart":"outrostart");var y=n?.t()??1-r;n?.abort();var E=r-y,h=t.duration*Math.abs(E),_=[];if(h>0){var x=!1;if(u)for(var R=Math.ceil(h/16.666666666666668),I=0;I<=R;I+=1){var C=y+E*v(I/R),j=Ri(u(C,1-C));_.push(j),x||=j.overflow==="hidden"}x&&(e.style.overflow="hidden"),b=()=>{var D=k.currentTime;return y+E*v(D/h)},f&&Tv(()=>{if(k.playState!=="running")return!1;var D=b();return f(D,1-D),!0})}k=e.animate(_,{duration:h,fill:"forwards"}),k.onfinish=()=>{b=()=>r,f?.(r,1-r),s()}},{abort:()=>{k&&(k.cancel(),k.effect=null,k.onfinish=st)},deactivate:()=>{s=st},reset:()=>{r===0&&f?.(1,0)},t:()=>b()}}function Pv(e,t,n,r,s,a){let i=V;V&&Ke();var o=null;V&&K.nodeType===Io&&(o=K,Ke());var l=V?K:e,u=Y,f=new Bn(l,!1);Ot(()=>{const v=t()||null;var d=s?s():n||v==="svg"?_r:void 0;if(v===null){f.ensure(null,null),$n(!0);return}return f.ensure(v,m=>{if(v){if(o=V?o:en(v,d),Pe(o,o),r){V&&Hd(v)&&o.append(document.createComment(""));var b=V?be(o):o.appendChild(Me());V&&(b===null?pe(!1):de(b)),Pi(u),r(o,b),Pi(null)}Y.nodes.end=o,m.before(o)}V&&de(m)}),$n(!0),()=>{v&&$n(!1)}},xt),ut(()=>{$n(!0)}),i&&(pe(!0),de(l))}function Lv(e,t){let n=null,r=V;var s;if(V){n=K;for(var a=be(document.head);a!==null&&(a.nodeType!==Bt||a.data!==e);)a=lt(a);if(a===null)pe(!1);else{var i=lt(a);a.remove(),de(i)}}V||(s=document.head.appendChild(Me()));try{Ot(()=>t(s),Ao|Qt)}finally{r&&(pe(!0),de(n))}}function Dv(e,t){ct(()=>{var n=e.getRootNode(),r=n.host?n:n.head??n.ownerDocument.head;if(!r.querySelector("#"+t.hash)){const s=en("style");s.id=t.hash,s.textContent=t.code,r.appendChild(s)}})}function Kl(e,t,n){ct(()=>{var r=ye(()=>t(e,n?.())||{});if(n&&r?.update){var s=!1,a={};Ae(()=>{var i=n();La(i),s&&Do(a,i)&&(a=i,r.update(i))}),s=!0}if(r?.destroy)return()=>r.destroy()})}function za(e,t){var n=void 0,r;ml(()=>{n!==(n=t())&&(r&&(Re(r),r=null),n&&(r=Ue(()=>{ct(()=>n(e))})))})}const Ov=/[&"<]/g;function Nv(e,t){const n=String(e??""),r=Ov;r.lastIndex=0;let s="",a=0;for(;r.test(n);){const i=r.lastIndex-1,o=n[i];s+=n.substring(a,i)+(o==="&"?"&amp;":o==='"'?"&quot;":"&lt;"),a=i+1}return s+n.substring(a)}function Yl(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(t=0;t<s;t++)e[t]&&(n=Yl(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function zv(){for(var e,t,n=0,r="",s=arguments.length;n<s;n++)(e=arguments[n])&&(t=Yl(e))&&(r&&(r+=" "),r+=t);return r}const Li={translate:new Map([[!0,"yes"],[!1,"no"]])};function Mv(e,t,n=!1){if(e==="hidden"&&t!=="until-found"&&(n=!0),t==null||!t&&n)return"";const r=Cu.call(Li,e)&&Li[e].get(t)||t,s=n?'=""':`="${Nv(r)}"`;return` ${e}${s}`}function Wl(e){return typeof e=="object"?zv(e):e??""}const Di=[...`
6
+ \r\f \v\uFEFF`];function jv(e,t,n){var r=e==null?"":""+e;if(t&&(r=r?r+" "+t:t),n){for(var s of Object.keys(n))if(n[s])r=r?r+" "+s:s;else if(r.length)for(var a=s.length,i=0;(i=r.indexOf(s,i))>=0;){var o=i+a;(i===0||Di.includes(r[i-1]))&&(o===r.length||Di.includes(r[o]))?r=(i===0?"":r.substring(0,i))+r.substring(o+1):i=o}}return r===""?null:r}function Oi(e,t=!1){var n=t?" !important;":";",r="";for(var s of Object.keys(e)){var a=e[s];a!=null&&a!==""&&(r+=" "+s+": "+a+n)}return r}function Os(e){return e[0]!=="-"||e[1]!=="-"?e.toLowerCase():e}function qv(e,t){if(t){var n="",r,s;if(Array.isArray(t)?(r=t[0],s=t[1]):r=t,e){e=String(e).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var a=!1,i=0,o=!1,l=[];r&&l.push(...Object.keys(r).map(Os)),s&&l.push(...Object.keys(s).map(Os));var u=0,f=-1;const k=e.length;for(var v=0;v<k;v++){var d=e[v];if(o?d==="/"&&e[v-1]==="*"&&(o=!1):a?a===d&&(a=!1):d==="/"&&e[v+1]==="*"?o=!0:d==='"'||d==="'"?a=d:d==="("?i++:d===")"&&i--,!o&&a===!1&&i===0){if(d===":"&&f===-1)f=v;else if(d===";"||v===k-1){if(f!==-1){var m=Os(e.substring(u,f).trim());if(!l.includes(m)){d!==";"&&v++;var b=e.substring(u,v).trim();n+=" "+b+";"}}u=v+1,f=-1}}}}return r&&(n+=Oi(r)),s&&(n+=Oi(s,!0)),n=n.trim(),n===""?null:n}return e==null?null:String(e)}function ze(e,t,n,r,s,a){var i=e.__className;if(V||i!==n||i===void 0){var o=jv(n,r,a);(!V||o!==e.getAttribute("class"))&&(o==null?e.removeAttribute("class"):t?e.className=o:e.setAttribute("class",o)),e.__className=n}else if(a&&s!==a)for(var l in a){var u=!!a[l];(s==null||u!==!!s[l])&&e.classList.toggle(l,u)}return a}function Ns(e,t={},n,r){for(var s in n){var a=n[s];t[s]!==a&&(n[s]==null?e.style.removeProperty(s):e.style.setProperty(s,a,r))}}function Nt(e,t,n,r){var s=e.__style;if(V||s!==t){var a=qv(t,r);(!V||a!==e.getAttribute("style"))&&(a==null?e.removeAttribute("style"):e.style.cssText=a),e.__style=t}else r&&(Array.isArray(r)?(Ns(e,n?.[0],r[0]),Ns(e,n?.[1],r[1],"important")):Ns(e,n,r));return r}function or(e,t,n=!1){if(e.multiple){if(t==null)return;if(!qn(t))return pf();for(var r of e.options)r.selected=t.includes(rr(r));return}for(r of e.options){var s=rr(r);if(ol(s,t)){r.selected=!0;return}}(!n||t!==void 0)&&(e.selectedIndex=-1)}function Ma(e){var t=new MutationObserver(()=>{or(e,e.__value)});t.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),ut(()=>{t.disconnect()})}function Gr(e,t,n=t){var r=new WeakSet,s=!0;Sr(e,"change",a=>{var i=a?"[selected]":":checked",o;if(e.multiple)o=[].map.call(e.querySelectorAll(i),rr);else{var l=e.querySelector(i)??e.querySelector("option:not([disabled])");o=l&&rr(l)}n(o),e.__value=o,X!==null&&r.add(X)}),ct(()=>{var a=t();if(e===document.activeElement){var i=X;if(r.has(i))return}if(or(e,a,s),s&&a===void 0){var o=e.querySelector(":checked");o!==null&&(a=rr(o),n(a))}e.__value=a,s=!1}),Ma(e)}function rr(e){return"__value"in e?e.__value:e.value}const An=Symbol("class"),Tn=Symbol("style"),Gl=Symbol("is custom element"),Xl=Symbol("is html"),Vv=bn?"link":"LINK",Uv=bn?"input":"INPUT",Bv=bn?"option":"OPTION",Fv=bn?"select":"SELECT",Hv=bn?"progress":"PROGRESS";function Ee(e){if(V){var t=!1,n=()=>{if(!t){if(t=!0,e.hasAttribute("value")){var r=e.value;De(e,"value",null),e.value=r}if(e.hasAttribute("checked")){var s=e.checked;De(e,"checked",null),e.checked=s}}};e.__on_r=n,He(n),hl()}}function Kv(e,t){var n=vs(e);n.value===(n.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!==Hv)||(e.value=t??"")}function Yv(e,t){var n=vs(e);n.checked!==(n.checked=t??void 0)&&(e.checked=t)}function Jl(e,t){t?e.hasAttribute("selected")||e.setAttribute("selected",""):e.removeAttribute("selected")}function Wv(e,t){const n=e.checked;e.defaultChecked=t,e.checked=n}function Gv(e,t){const n=e.value;e.defaultValue=t,e.value=n}function De(e,t,n,r){var s=vs(e);V&&(s[t]=e.getAttribute(t),t==="src"||t==="srcset"||t==="href"&&e.nodeName===Vv)||s[t]!==(s[t]=n)&&(t==="loading"&&(e[Du]=n),n==null?e.removeAttribute(t):typeof n!="string"&&ja(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function Xv(e,t,n){e.setAttributeNS("http://www.w3.org/1999/xlink",t,n)}function Jv(e,t,n){var r=Q,s=Y;let a=V;V&&pe(!1),Ze(null),Ve(null);try{t!=="style"&&(ia.has(e.getAttribute("is")||e.nodeName)||!customElements||customElements.get(e.getAttribute("is")||e.nodeName.toLowerCase())?ja(e).includes(t):n&&typeof n=="object")?e[t]=n:De(e,t,n==null?n:String(n))}finally{Ze(r),Ve(s),a&&pe(!0)}}function Zv(e,t,n,r,s=!1,a=!1){if(V&&s&&e.nodeName===Uv){var i=e,o=i.type==="checkbox"?"defaultChecked":"defaultValue";o in n||Ee(i)}var l=vs(e),u=l[Gl],f=!l[Xl];let v=V&&u;v&&pe(!1);var d=t||{},m=e.nodeName===Bv;for(var b in t)b in n||(n[b]=null);n.class?n.class=Wl(n.class):(r||n[An])&&(n.class=null),n[Tn]&&(n.style??=null);var k=ja(e);for(const I in n){let C=n[I];if(m&&I==="value"&&C==null){e.value=e.__value="",d[I]=C;continue}if(I==="class"){var y=e.namespaceURI==="http://www.w3.org/1999/xhtml";ze(e,y,C,r,t?.[An],n[An]),d[I]=C,d[An]=n[An];continue}if(I==="style"){Nt(e,C,t?.[Tn],n[Tn]),d[I]=C,d[Tn]=n[Tn];continue}var E=d[I];if(!(C===E&&!(C===void 0&&e.hasAttribute(I)))){d[I]=C;var h=I[0]+I[1];if(h!=="$$")if(h==="on"){const j={},D="$$"+I;let P=I.slice(2);var _=jd(P);if(zd(P)&&(P=P.slice(0,-7),j.capture=!0),!_&&E){if(C!=null)continue;e.removeEventListener(P,d[D],j),d[D]=null}if(_)H(P,e,C),Se([P]);else if(C!=null){let S=function(M){d[I].call(this,M)};d[D]=Rl(P,e,S,j)}}else if(I==="style")De(e,I,C);else if(I==="autofocus")vl(e,!!C);else if(!u&&(I==="__value"||I==="value"&&C!=null))e.value=e.__value=C;else if(I==="selected"&&m)Jl(e,C);else{var x=I;f||(x=Vd(x));var R=x==="defaultValue"||x==="defaultChecked";if(C==null&&!u&&!R)if(l[I]=null,x==="value"||x==="checked"){let j=e;const D=t===void 0;if(x==="value"){let P=j.defaultValue;j.removeAttribute(x),j.defaultValue=P,j.value=j.__value=D?P:null}else{let P=j.defaultChecked;j.removeAttribute(x),j.defaultChecked=P,j.checked=D?P:!1}}else e.removeAttribute(I);else R||k.includes(x)&&(u||typeof C!="string")?(e[x]=C,x in l&&(l[x]=me)):typeof C!="function"&&De(e,x,C)}}}return v&&pe(!0),d}function Qv(e,t,n=[],r=[],s=[],a,i=!1,o=!1){yr(s,n,r,l=>{var u=void 0,f={},v=e.nodeName===Fv,d=!1;if(ml(()=>{var b=t(...l.map(c)),k=Zv(e,u,b,a,i,o);d&&v&&"value"in b&&or(e,b.value);for(let E of Object.getOwnPropertySymbols(f))b[E]||Re(f[E]);for(let E of Object.getOwnPropertySymbols(b)){var y=b[E];E.description===yo&&(!u||y!==u[E])&&(f[E]&&Re(f[E]),f[E]=Ue(()=>za(e,()=>y))),k[E]=y}u=k}),v){var m=e;ct(()=>{or(m,u.value,!0),Ma(m)})}d=!0})}function vs(e){return e.__attributes??={[Gl]:e.nodeName.includes("-"),[Xl]:e.namespaceURI===bo}}var ia=new Map;function ja(e){var t=e.getAttribute("is")||e.nodeName,n=ia.get(t);if(n)return n;ia.set(t,n=[]);for(var r,s=e,a=Element.prototype;a!==s;){r=ko(s);for(var i in r)r[i].set&&n.push(i);s=as(s)}return n}let zs=null;function Zl(){if(zs===null){var e=en("select");e.innerHTML=Pl("<option><span>t</span></option>"),zs=e.firstChild?.firstChild?.nodeType===1}return zs}function eh(e,t){Zl()&&za(e,()=>()=>{const n=e.closest("select");if(!n)return;const r=new MutationObserver(s=>{var a=!1;for(const i of s){if(i.target===e)return;a||=!!i.target.parentElement?.closest("option")?.selected}a&&(e.replaceWith(e=e.cloneNode(!0)),t(e))});return r.observe(n,{childList:!0,characterData:!0,subtree:!0}),()=>{r.disconnect()}})}function th(e,t){var n=V;Zl()||(pe(!1),e.textContent="",e.append(dl("")));try{t()}finally{n&&(V?p(e):(pe(!0),de(e)))}}function nh(e){et(document,["focusin","focusout"],t=>{t&&t.type==="focusout"&&t.relatedTarget||e(document.activeElement)})}function Le(e,t,n=t){var r=new WeakSet;Sr(e,"input",async s=>{var a=s?e.defaultValue:e.value;if(a=js(e)?qs(a):a,n(a),X!==null&&r.add(X),await Pa(),a!==(a=t())){var i=e.selectionStart,o=e.selectionEnd,l=e.value.length;if(e.value=a??"",o!==null){var u=e.value.length;i===o&&o===l&&u>l?(e.selectionStart=u,e.selectionEnd=u):(e.selectionStart=i,e.selectionEnd=Math.min(o,u))}}}),(V&&e.defaultValue!==e.value||ye(t)==null&&e.value)&&(n(js(e)?qs(e.value):e.value),X!==null&&r.add(X)),Ae(()=>{var s=t();if(e===document.activeElement){var a=X;if(r.has(a))return}js(e)&&s===qs(e.value)||e.type==="date"&&!s&&!e.value||s!==e.value&&(e.value=s??"")})}const Ms=new Set;function rh(e,t,n,r,s=r){var a=n.getAttribute("type")==="checkbox",i=e;let o=!1;if(t!==null)for(var l of t)i=i[l]??=[];i.push(n),Sr(n,"change",()=>{var u=n.__value;a&&(u=Ni(i,u,n.checked)),s(u)},()=>s(a?[]:null)),Ae(()=>{var u=r();if(V&&n.defaultChecked!==n.checked){o=!0;return}a?(u=u||[],n.checked=u.includes(n.__value)):n.checked=ol(n.__value,u)}),ut(()=>{var u=i.indexOf(n);u!==-1&&i.splice(u,1)}),Ms.has(i)||(Ms.add(i),He(()=>{i.sort((u,f)=>u.compareDocumentPosition(f)===4?-1:1),Ms.delete(i)})),He(()=>{if(o){var u;if(a)u=Ni(i,u,n.checked);else{var f=i.find(v=>v.checked);u=f?.__value}s(u)}})}function zr(e,t,n=t){Sr(e,"change",r=>{var s=r?e.defaultChecked:e.checked;n(s)}),(V&&e.defaultChecked!==e.checked||ye(t)==null)&&n(e.checked),Ae(()=>{var r=t();e.checked=!!r})}function Ni(e,t,n){for(var r=new Set,s=0;s<e.length;s+=1)e[s].checked&&r.add(e[s].__value);return n||r.delete(t),Array.from(r)}function js(e){var t=e.type;return t==="number"||t==="range"}function qs(e){return e===""?null:+e}function sh(e,t,n=t){Sr(e,"change",()=>{n(e.files)}),V&&e.files&&n(e.files),Ae(()=>{e.files=t()})}function qa(e){for(var t=[],n=0;n<e.length;n+=1)t.push({start:e.start(n),end:e.end(n)});return t}function ah(e,t,n=t){var r,s,a=()=>{cancelAnimationFrame(r),e.paused||(r=requestAnimationFrame(a));var i=e.currentTime;s!==i&&n(s=i)};r=requestAnimationFrame(a),e.addEventListener("timeupdate",a),Ae(()=>{var i=Number(t());s!==i&&!isNaN(i)&&(e.currentTime=s=i)}),ut(()=>{cancelAnimationFrame(r),e.removeEventListener("timeupdate",a)})}function ih(e,t){var n;et(e,["loadedmetadata","progress","timeupdate","seeking"],()=>{var r=e.buffered;(!n||n.length!==r.length||n.some((s,a)=>r.start(a)!==s.start||r.end(a)!==s.end))&&(n=qa(r),t(n))})}function oh(e,t){et(e,["loadedmetadata"],()=>t(qa(e.seekable)))}function lh(e,t){et(e,["timeupdate"],()=>t(qa(e.played)))}function ch(e,t){et(e,["seeking","seeked"],()=>t(e.seeking))}function uh(e,t){et(e,["timeupdate","ended"],()=>t(e.ended))}function fh(e,t){et(e,["loadedmetadata","loadeddata","canplay","canplaythrough","playing","waiting","emptied"],()=>t(e.readyState))}function dh(e,t,n=t){ct(()=>{var r=Number(t());r!==e.playbackRate&&!isNaN(r)&&(e.playbackRate=r)}),ct(()=>{et(e,["ratechange"],()=>{n(e.playbackRate)})})}function vh(e,t,n=t){var r=t(),s=()=>{r!==e.paused&&n(r=e.paused)};et(e,["play","pause","canplay"],s,r==null),ct(()=>{(r=!!t())!==e.paused&&(r?e.pause():e.play().catch(a=>{throw n(r=!0),a}))})}function hh(e,t,n=t){var r=()=>{n(e.volume)};t()==null&&r(),et(e,["volumechange"],r,!1),Ae(()=>{var s=Number(t());s!==e.volume&&!isNaN(s)&&(e.volume=s)})}function ph(e,t,n=t){var r=()=>{n(e.muted)};t()==null&&r(),et(e,["volumechange"],r,!1),Ae(()=>{var s=!!t();e.muted!==s&&(e.muted=s)})}function _h(e){et(window,["online","offline"],()=>{e(navigator.onLine)})}function gh(e,t,n){var r=wt(e,t);r&&r.set&&(e[t]=n,ut(()=>{e[t]=null}))}class xr{#e=new WeakMap;#n;#t;static entries=new WeakMap;constructor(t){this.#t=t}observe(t,n){var r=this.#e.get(t)||new Set;return r.add(n),this.#e.set(t,r),this.#a().observe(t,this.#t),()=>{var s=this.#e.get(t);s.delete(n),s.size===0&&(this.#e.delete(t),this.#n.unobserve(t))}}#a(){return this.#n??(this.#n=new ResizeObserver(t=>{for(var n of t){xr.entries.set(n.target,n);for(var r of this.#e.get(n.target)||[])r(n)}}))}}var mh=new xr({box:"content-box"}),Ql=new xr({box:"border-box"}),bh=new xr({box:"device-pixel-content-box"});function yh(e,t,n){var r=t==="contentRect"||t==="contentBoxSize"?mh:t==="borderBoxSize"?Ql:bh,s=r.observe(e,a=>n(a[t]));ut(s)}function wh(e,t,n){var r=Ql.observe(e,()=>n(e[t]));ct(()=>(ye(()=>n(e[t])),r))}function zi(e,t){return e===t||e?.[qe]===t}function mt(e={},t,n,r){var s=le.r,a=Y;return ct(()=>{var i,o;return Ae(()=>{i=o,o=r?.()||[],ye(()=>{e!==n(...o)&&(t(e,...o),i&&zi(n(...i),e)&&t(null,...i))})}),()=>{let l=a;for(;l!==s&&l.parent!==null&&l.parent.f&Ys;)l=l.parent;const u=()=>{o&&zi(n(...o),e)&&t(null,...o)},f=l.teardown;l.teardown=()=>{u(),f?.()}}}),e}function kh(e,t,n,r=n){t.addEventListener("input",()=>{r(t[e])}),Ae(()=>{var s=n();if(t[e]!==s)if(s==null){var a=t[e];r(a)}else t[e]=s+""})}function Sh(e,t,n,r,s){var a=()=>{r(n[e])};n.addEventListener(t,a),s?Ae(()=>{n[e]=s()}):a(),(n===document.body||n===window||n===document)&&ut(()=>{n.removeEventListener(t,a)})}function Eh(e,t){et(e,["focus","blur"],()=>{t(e===document.activeElement)})}function xh(e,t,n=t){var r=e==="x",s=()=>tn(()=>{a=!0,clearTimeout(i),i=setTimeout(o,100),n(window[r?"scrollX":"scrollY"])});addEventListener("scroll",s,{passive:!0});var a=!1,i,o=()=>{a=!1},l=!0;Ae(()=>{var u=t();l?l=!1:!a&&u!=null&&(a=!0,clearTimeout(i),r?scrollTo(u,window.scrollY):scrollTo(window.scrollX,u),i=setTimeout(o,100))}),ct(s),ut(()=>{removeEventListener("scroll",s)})}function Ah(e,t){et(window,["resize"],()=>tn(()=>t(window[e])))}function Th(e){return function(...t){var n=t[0];n.isTrusted&&e?.apply(this,t)}}function Ih(e){return function(...t){var n=t[0];n.target===this&&e?.apply(this,t)}}function $h(e){return function(...t){var n=t[0];return n.stopPropagation(),e?.apply(this,t)}}function Ch(e){var t=!1;return function(...n){if(!t)return t=!0,e?.apply(this,n)}}function Rh(e){return function(...t){var n=t[0];return n.stopImmediatePropagation(),e?.apply(this,t)}}function Ph(e){return function(...t){var n=t[0];return n.preventDefault(),e?.apply(this,t)}}function Lh(e=!1){const t=le,n=t.l.u;if(!n)return;let r=()=>La(t.s);if(e){let s=0,a={};const i=kr(()=>{let o=!1;const l=t.s;for(const u in l)l[u]!==a[u]&&(a[u]=l[u],o=!0);return o&&s++,s});r=()=>c(i)}n.b.length&&_l(()=>{Mi(t,r),Hs(n.b)}),Je(()=>{const s=ye(()=>n.m.map(Ru));return()=>{for(const a of s)typeof a=="function"&&a()}}),n.a.length&&Je(()=>{Mi(t,r),Hs(n.a)})}function Mi(e,t){if(e.l.s)for(const n of e.l.s)c(n);t()}function Dh(e){var t=ot(0);return function(){return arguments.length===1?(w(t,c(t)+1),arguments[0]):(c(t),e())}}function Oh(e,t){var n=e.$$events?.[t.type],r=qn(n)?n.slice():n==null?[]:[n];for(var s of r)s.call(this,t)}function Nh(e,t,n){e.$$events||={},e.$$events[t]||=[],e.$$events[t].push(n)}function zh(e){for(var t in e)t in this&&(this[t]=e[t])}function Mh(e,t=1){const n=e();return e(n+t),n}function jh(e,t=1){const n=e()+t;return e(n),n}const qh={get(e,t){if(!e.exclude.includes(t))return e.props[t]},set(e,t){return!1},getOwnPropertyDescriptor(e,t){if(!e.exclude.includes(t)&&t in e.props)return{enumerable:!0,configurable:!0,value:e.props[t]}},has(e,t){return e.exclude.includes(t)?!1:t in e.props},ownKeys(e){return Reflect.ownKeys(e.props).filter(t=>!e.exclude.includes(t))}};function Vh(e,t,n){return new Proxy({props:e,exclude:t},qh)}const Uh={get(e,t){if(!e.exclude.includes(t))return c(e.version),t in e.special?e.special[t]():e.props[t]},set(e,t,n){if(!(t in e.special)){var r=Y;try{Ve(e.parent_effect),e.special[t]=zn({get[t](){return e.props[t]}},t,go)}finally{Ve(r)}}return e.special[t](n),Dn(e.version),!0},getOwnPropertyDescriptor(e,t){if(!e.exclude.includes(t)&&t in e.props)return{enumerable:!0,configurable:!0,value:e.props[t]}},deleteProperty(e,t){return e.exclude.includes(t)||(e.exclude.push(t),Dn(e.version)),!0},has(e,t){return e.exclude.includes(t)?!1:t in e.props},ownKeys(e){return Reflect.ownKeys(e.props).filter(t=>!e.exclude.includes(t))}};function Bh(e,t){return new Proxy({props:e,exclude:t,special:{},version:ot(0),parent_effect:Y},Uh)}const Fh={get(e,t){let n=e.props.length;for(;n--;){let r=e.props[n];if(En(r)&&(r=r()),typeof r=="object"&&r!==null&&t in r)return r[t]}},set(e,t,n){let r=e.props.length;for(;r--;){let s=e.props[r];En(s)&&(s=s());const a=wt(s,t);if(a&&a.set)return a.set(n),!0}return!1},getOwnPropertyDescriptor(e,t){let n=e.props.length;for(;n--;){let r=e.props[n];if(En(r)&&(r=r()),typeof r=="object"&&r!==null&&t in r){const s=wt(r,t);return s&&!s.configurable&&(s.configurable=!0),s}}},has(e,t){if(t===qe||t===is)return!1;for(let n of e.props)if(En(n)&&(n=n()),n!=null&&t in n)return!0;return!1},ownKeys(e){const t=[];for(let n of e.props)if(En(n)&&(n=n()),!!n){for(const r in n)t.includes(r)||t.push(r);for(const r of Object.getOwnPropertySymbols(n))t.includes(r)||t.push(r)}return t}};function hs(...e){return new Proxy({props:e},Fh)}function zn(e,t,n,r){var s=(n&wu)!==0,a=(n&ku)!==0,i=r,o=!0,l=()=>(o&&(o=!1,i=a?ye(r):r),i);let u;if(s){var f=qe in e||is in e;u=wt(e,t)?.set??(f&&t in e?h=>e[t]=h:void 0)}var v,d=!1;s?[v,d]=Wo(()=>e[t]):v=e[t],v===void 0&&r!==void 0&&(v=l(),u&&(tf(),u(v)));var m;if(m=()=>{var h=e[t];return h===void 0?l():(o=!0,h)},!(n&go))return m;if(u){var b=e.$$legacy;return function(h,_){return arguments.length>0?((!_||b||d)&&u(_?m():h),h):m()}}var k=!1,y=(n&yu?kr:Sa)(()=>(k=!1,m()));s&&c(y);var E=Y;return function(h,_){if(arguments.length>0){const x=_?c(y):s?fe(h):h;return w(y,x),k=!0,i!==void 0&&(i=x),h}return Vt&&k||E.f&Xe?y.v:c(y)}}function Hh(e,t,n,r,s,a){el(t,()=>{var i=!1;ba?.[rt],Ae(()=>{if(!i){var[o,l]=Wo(n);if(!l){var u=r(),f=!1,v=Ae(()=>{f||o[u]});f=!0,v.deps===null&&(lf(),i=!0)}}})})}function Kh(e){return new Yh(e)}class Yh{#e;#n;constructor(t){var n=new Map,r=(a,i)=>{var o=us(i,!1,!1);return n.set(a,o),o};const s=new Proxy({...t.props||{},$$events:{}},{get(a,i){return c(n.get(i)??r(i,Reflect.get(a,i)))},has(a,i){return i===is?!0:(c(n.get(i)??r(i,Reflect.get(a,i))),Reflect.has(a,i))},set(a,i,o){return w(n.get(i)??r(i,o),o),Reflect.set(a,i,o)}});this.#n=(t.hydrate?Nl:je)(t.component,{target:t.target,anchor:t.anchor,props:s,context:t.context,intro:t.intro??!1,recover:t.recover,transformError:t.transformError}),(!t?.props?.$$host||t.sync===!1)&&Jt(),this.#e=s.$$events;for(const a of Object.keys(this.#n))a==="$set"||a==="$destroy"||a==="$on"||dn(this,a,{get(){return this.#n[a]},set(i){this.#n[a]=i},enumerable:!0});this.#n.$set=a=>{Object.assign(s,a)},this.#n.$destroy=()=>{Ge(this.#n)}}$set(t){this.#n.$set(t)}$on(t,n){this.#e[t]=this.#e[t]||[];const r=(...s)=>n.call(this,...s);return this.#e[t].push(r),()=>{this.#e[t]=this.#e[t].filter(s=>s!==r)}}$destroy(){this.#n.$destroy()}}let ec;typeof HTMLElement=="function"&&(ec=class extends HTMLElement{$$ctor;$$s;$$c;$$cn=!1;$$d={};$$r=!1;$$p_d={};$$l={};$$l_u=new Map;$$me;$$shadowRoot=null;constructor(e,t,n){super(),this.$$ctor=e,this.$$s=t,n&&(this.$$shadowRoot=this.attachShadow(n))}addEventListener(e,t,n){if(this.$$l[e]=this.$$l[e]||[],this.$$l[e].push(t),this.$$c){const r=this.$$c.$on(e,t);this.$$l_u.set(t,r)}super.addEventListener(e,t,n)}removeEventListener(e,t,n){if(super.removeEventListener(e,t,n),this.$$c){const r=this.$$l_u.get(t);r&&(r(),this.$$l_u.delete(t))}}async connectedCallback(){if(this.$$cn=!0,!this.$$c){let e=function(r){return s=>{const a=en("slot");r!=="default"&&(a.name=r),T(s,a)}};if(await Promise.resolve(),!this.$$cn||this.$$c)return;const t={},n=Wh(this);for(const r of this.$$s)r in n&&(r==="default"&&!this.$$d.children?(this.$$d.children=e(r),t.default=!0):t[r]=e(r));for(const r of this.attributes){const s=this.$$g_p(r.name);s in this.$$d||(this.$$d[s]=Mr(s,r.value,this.$$p_d,"toProp"))}for(const r in this.$$p_d)!(r in this.$$d)&&this[r]!==void 0&&(this.$$d[r]=this[r],delete this[r]);this.$$c=Kh({component:this.$$ctor,target:this.$$shadowRoot||this,props:{...this.$$d,$$slots:t,$$host:this}}),this.$$me=Ia(()=>{Ae(()=>{this.$$r=!0;for(const r of Vr(this.$$c)){if(!this.$$p_d[r]?.reflect)continue;this.$$d[r]=this.$$c[r];const s=Mr(r,this.$$d[r],this.$$p_d,"toAttribute");s==null?this.removeAttribute(this.$$p_d[r].attribute||r):this.setAttribute(this.$$p_d[r].attribute||r,s)}this.$$r=!1})});for(const r in this.$$l)for(const s of this.$$l[r]){const a=this.$$c.$on(r,s);this.$$l_u.set(s,a)}this.$$l={}}}attributeChangedCallback(e,t,n){this.$$r||(e=this.$$g_p(e),this.$$d[e]=Mr(e,n,this.$$p_d,"toProp"),this.$$c?.$set({[e]:this.$$d[e]}))}disconnectedCallback(){this.$$cn=!1,Promise.resolve().then(()=>{!this.$$cn&&this.$$c&&(this.$$c.$destroy(),this.$$me(),this.$$c=void 0)})}$$g_p(e){return Vr(this.$$p_d).find(t=>this.$$p_d[t].attribute===e||!this.$$p_d[t].attribute&&t.toLowerCase()===e)||e}});function Mr(e,t,n,r){const s=n[e]?.type;if(t=s==="Boolean"&&typeof t!="boolean"?t!=null:t,!r||!n[e])return t;if(r==="toAttribute")switch(s){case"Object":case"Array":return t==null?null:JSON.stringify(t);case"Boolean":return t?"":null;case"Number":return t??null;default:return t}else switch(s){case"Object":case"Array":return t&&JSON.parse(t);case"Boolean":return t;case"Number":return t!=null?+t:t;default:return t}}function Wh(e){const t={};return e.childNodes.forEach(n=>{t[n.slot||"default"]=!0}),t}function Gh(e,t,n,r,s,a){let i=class extends ec{constructor(){super(e,n,s),this.$$p_d=t}static get observedAttributes(){return Vr(t).map(o=>(t[o].attribute||o).toLowerCase())}};return Vr(t).forEach(o=>{dn(i.prototype,o,{get(){return this.$$c&&o in this.$$c?this.$$c[o]:this.$$d[o]},set(l){l=Mr(o,l,t),this.$$d[o]=l;var u=this.$$c;if(u){var f=wt(u,o)?.get;f?u[o]=l:u.$set({[o]:l})}}})}),r.forEach(o=>{dn(i.prototype,o,{get(){return this.$$c?.[o]}})}),a&&(i=a(i)),e.element=i,i}function Xh(e,...t){return ye(()=>{try{let n=!1;const r=[];for(const s of t)s&&typeof s=="object"&&qe in s?(r.push(_n(s,!0)),n=!0):r.push(s);n&&(cf(e),console.log("%c[snapshot]","color: grey",...r))}catch{}}),t}const tc=Object.freeze(Object.defineProperty({__proto__:null,CLASS:An,FILENAME:rt,HMR:Sn,NAMESPACE_SVG:_r,STYLE:Tn,aborted:ta,action:Kl,get active_effect(){return Y},add_legacy_event_listener:Nh,add_locations:iv,add_svelte_meta:Af,animation:Cv,append:T,append_styles:Dv,apply:xd,assign:rv,assign_async:sv,async:vv,async_derived:tl,attach:za,attachment:nv,attr:Mv,attribute_effect:Qv,autofocus:vl,await:_v,bind_active_element:nh,bind_buffered:ih,bind_checked:zr,bind_content_editable:kh,bind_current_time:ah,bind_element_size:wh,bind_ended:uh,bind_files:sh,bind_focused:Eh,bind_group:rh,bind_muted:ph,bind_online:_h,bind_paused:vh,bind_playback_rate:dh,bind_played:lh,bind_prop:gh,bind_property:Sh,bind_ready_state:fh,bind_resize_observer:yh,bind_seekable:oh,bind_seeking:ch,bind_select_value:Gr,bind_this:mt,bind_value:Le,bind_volume:hh,bind_window_scroll:xh,bind_window_size:Ah,boundary:Qo,bubble_event:Oh,check_target:uv,child:g,cleanup_styles:av,clsx:Wl,comment:qt,component:ds,create_custom_element:Gh,create_ownership_validator:cv,css_props:bv,customizable_select:th,deep_read:Hr,deep_read_state:La,deferred_template_effect:pd,delegate:Se,delegated:H,derived:G,derived_safe_equal:Sa,get document(){return ll},each:Te,eager:Ff,effect:ct,effect_root:Ia,effect_tracking:Er,element:Pv,equals:id,event:Qe,exclude_from_object:Lu,fallback:Pu,first_child:Ce,flush:Jt,for_await_track_reactivity_loss:Jf,from_html:$,from_mathml:Cd,from_svg:$d,from_tree:Rd,get:c,head:Lv,hmr:lv,html:Sv,hydrate_template:gf,if:F,index:Nn,init:Lh,init_select:Ma,inspect:dv,invalid_default_snippet:zu,invalidate_inner_signals:md,invalidate_store:Of,invoke_error_boundary:Rt,key:mv,legacy_api:fv,legacy_pre_effect:dd,legacy_pre_effect_reset:vd,legacy_rest_props:Bh,log_if_contains_state:Xh,mark_store_binding:qf,mutable_source:us,mutate:rd,next:Wt,noop:st,once:Ch,pending:Gf,pop:re,preventDefault:Ph,prevent_snippet_stringification:Ml,prop:zn,props_id:Dd,proxy:fe,push:ne,raf:It,reactive_import:Dh,remove_input_defaults:Ee,remove_textarea_child:cd,render_effect:Ae,replay_events:Ed,reset:p,rest_props:Vh,run:Zf,run_after_blockers:el,safe_get:kd,sanitize_slots:xv,save:Xf,select_option:or,selectedcontent:eh,self:Ih,set:w,set_attribute:De,set_checked:Yv,set_class:ze,set_custom_element_data:Jv,set_default_checked:Wv,set_default_value:Gv,set_selected:Jl,set_style:Nt,set_text:N,set_value:Kv,set_xlink_attribute:Xv,setup_stores:Nf,sibling:A,slot:Ev,snapshot:_n,snippet:Oa,spread_props:hs,state:z,stopImmediatePropagation:Rh,stopPropagation:$h,store_get:Lf,store_mutate:zf,store_set:Yo,store_unsub:Df,strict_equals:ad,tag:Sf,tag_proxy:zo,template_effect:U,text:Nr,tick:Pa,to_array:xo,trace:kf,track_reactivity_loss:Zs,transition:Rv,trusted:Th,untrack:ye,update:Dn,update_legacy_props:zh,update_pre:sd,update_pre_prop:jh,update_pre_store:jf,update_prop:Mh,update_store:Mf,user_effect:Je,user_pre_effect:_l,validate_binding:Hh,validate_dynamic_element_tag:Yd,validate_snippet_args:hv,validate_store:Wd,validate_void_dynamic_element:Kd,wait:Qf,get window(){return Qs},with_script:Pd,wrap_snippet:Gd},Symbol.toStringTag,{value:"Module"}));class ji{#e=new Map;read(t){return this.#e.get(t)}write(t,n){this.#e.set(t,n)}delete(t){this.#e.delete(t)}list(){return[...this.#e.keys()]}}class qi{#e;constructor(t){this.#e=t}read(t){if(typeof localStorage>"u")return;const n=localStorage.getItem(this.#e+t);if(n!=null)try{return JSON.parse(n)}catch{return}}write(t,n){if(!(typeof localStorage>"u"))try{localStorage.setItem(this.#e+t,JSON.stringify(n))}catch{}}delete(t){typeof localStorage>"u"||localStorage.removeItem(this.#e+t)}list(){if(typeof localStorage>"u")return[];const t=[];for(let n=0;n<localStorage.length;n++){const r=localStorage.key(n);r&&r.startsWith(this.#e)&&t.push(r.slice(this.#e.length))}return t}}const Jh=["workspace","user"],Va="state:manage",At={ephemeral:new ji,session:new ji,workspace:new qi("sh3:workspace:"),user:new qi("sh3:user:")},Vs=new Map;let Us=!1;function Zh(e,t,n){Vs.set(`${e}:${t}`,{zone:e,shardId:t,value:n}),!Us&&(Us=!0,queueMicrotask(()=>{Us=!1;for(const{zone:r,shardId:s,value:a}of Vs.values())At[r].write(s,a);Vs.clear()}))}function ps(e,t){const n={};for(const r of Object.keys(t)){const s=t[r],i=At[r].read(e),o={...s,...i??{}},l=fe(o);n[r]=l,Jh.includes(r)&&Ia(()=>{let u=!0;Je(()=>{const f=_n(l);if(u){u=!1;return}Zh(r,e,f)})})}return n}function Vi(e,t){At[e]=t}function Qh(e,t){return At[e].read(t)}function oa(e,t){At[e].delete(t)}const ep="5";typeof window<"u"&&((window.__svelte??={}).v??=new Set).add(ep);const tp=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(",");function np(e){const t=document.activeElement;function n(){return Array.from(e.querySelectorAll(tp))}function r(s){if(s.key!=="Tab")return;const a=n();if(a.length===0){s.preventDefault();return}const i=a[0],o=a[a.length-1],l=document.activeElement;s.shiftKey&&(l===i||!e.contains(l))?(s.preventDefault(),o.focus()):!s.shiftKey&&(l===o||!e.contains(l))&&(s.preventDefault(),i.focus())}return e.addEventListener("keydown",r),queueMicrotask(()=>{(n()[0]??e).focus()}),()=>{e.removeEventListener("keydown",r),t&&document.contains(t)&&t.focus()}}var rp=$('<div class="modal-frame svelte-2tcvcm" role="presentation"><div class="modal-box svelte-2tcvcm" role="dialog" aria-modal="true" tabindex="-1"><!></div></div>');function sp(e,t){ne(t,!0);let n;Je(()=>{if(n)return np(n)});var r=rp(),s=g(r),a=g(s);ds(a,()=>t.Content,(i,o)=>{o(i,hs(()=>t.contentProps,{get close(){return t.close}}))}),p(s),mt(s,i=>n=i,()=>n),p(r),U(()=>Nt(s,t.boxStyle)),T(e,r),re()}const Ua={};function ap(e,t){Ua[e]=t}function ip(e){delete Ua[e]}function _s(e){const t=Ua[e];if(!t)throw new Error(`Overlay layer "${e}" root is not registered — Shell.svelte must mount before opening overlays on this layer.`);return t}const it=[];let Xr=!1,ft=null;const op=.5;function nc(){const e=_s("modal");if(it.length===0){ft&&(ft.remove(),ft=null);return}ft||(ft=document.createElement("div"),ft.className="sh3-modal-backdrop",ft.style.position="absolute",ft.style.inset="0",ft.style.pointerEvents="auto",ft.style.transition="background-color 120ms ease",ft.style.background=`rgba(0, 0, 0, ${op})`);const t=it[it.length-1].host;e.insertBefore(ft,t)}function rc(e){e.key==="Escape"&&it.length!==0&&(e.stopPropagation(),e.preventDefault(),it[it.length-1].handle.close())}function lp(){Xr||(Xr=!0,document.addEventListener("keydown",rc,!0))}function cp(){it.length>0||Xr&&(Xr=!1,document.removeEventListener("keydown",rc,!0))}function sc(e){const t=it.indexOf(e);t<0||(it.splice(t,1),Ge(e.frame),e.host.remove(),nc(),cp())}function up(e,t,n){const r=_s("modal"),s=document.createElement("div");s.className="sh3-modal-host",s.style.position="absolute",s.style.inset="0",s.style.pointerEvents="auto",r.appendChild(s);const a={},i={close:()=>sc(a)},o=je(sp,{target:s,props:{Content:e,contentProps:t??{},close:i.close,boxStyle:n?.boxStyle}});return a.host=s,a.frame=o,a.handle=i,it.push(a),nc(),lp(),i}function fp(){for(;it.length>0;)sc(it[it.length-1])}const dp={open:up,closeAll:fp};var vp=$('<div class="popup-frame svelte-mp81cl" role="menu" tabindex="-1"><!></div>');function hp(e,t){ne(t,!0);let n,r=z(-9999),s=z(-9999);Je(()=>{if(!n)return;const o=n.getBoundingClientRect(),l=4,u=window.innerWidth,f=window.innerHeight;let v=t.anchorRect.bottom+l,d=t.anchorRect.left;if(d+o.width>u-l&&(d=Math.max(l,u-o.width-l)),v+o.height>f-l){const m=t.anchorRect.top-o.height-l;v=m>=l?m:Math.max(l,f-o.height-l)}w(r,v,!0),w(s,d,!0)});var a=vp(),i=g(a);ds(i,()=>t.Content,(o,l)=>{l(o,hs(()=>t.contentProps,{get close(){return t.close}}))}),p(a),mt(a,o=>n=o,()=>n),U(()=>Nt(a,`top: ${c(r)??""}px; left: ${c(s)??""}px;`)),T(e,a),re()}let _t=null;function ac(e){if(!_t)return;const t=e.target;t&&_t.host.contains(t)||_t.handle.close()}function ic(e){_t&&e.key==="Escape"&&(e.stopPropagation(),e.preventDefault(),_t.handle.close())}function pp(){document.addEventListener("pointerdown",ac,!0),document.addEventListener("keydown",ic,!0)}function _p(){document.removeEventListener("pointerdown",ac,!0),document.removeEventListener("keydown",ic,!0)}function la(e){_t===e&&(_t=null,_p(),Ge(e.frame),e.host.remove())}function gp(e,t,n){_t&&la(_t);const r=_s("popup"),s=document.createElement("div");s.className="sh3-popup-host",s.style.position="absolute",s.style.inset="0",s.style.pointerEvents="none",r.appendChild(s);const a=t.anchor.getBoundingClientRect(),i={},o={close:()=>la(i)},l=je(hp,{target:s,props:{Content:e,contentProps:n??{},anchorRect:a,close:o.close}});return i.host=s,i.frame=l,i.handle=o,_t=i,queueMicrotask(pp),o}function mp(){_t&&la(_t)}const bp={show:gp,close:mp};var yp=$('<div role="status" aria-live="polite"><span class="toast-level svelte-12gwnj0"> </span> <span class="toast-message svelte-12gwnj0"> </span></div>');function wp(e,t){var n=yp(),r=g(n),s=g(r,!0);p(r);var a=A(r,2),i=g(a,!0);p(a),p(n),U(()=>{ze(n,1,`toast toast-${t.level??""}`,"svelte-12gwnj0"),N(s,t.level),N(i,t.message)}),H("click",n,function(...o){t.close?.apply(this,o)}),T(e,n)}Se(["click"]);const Jr=new Set;let Ye=null;function kp(){if(Ye&&Ye.isConnected)return Ye;const e=_s("toast");return Ye=document.createElement("div"),Ye.className="sh3-toast-stack",Ye.style.position="absolute",Ye.style.right="16px",Ye.style.bottom="16px",Ye.style.display="flex",Ye.style.flexDirection="column-reverse",Ye.style.gap="6px",Ye.style.pointerEvents="none",e.appendChild(Ye),Ye}function ca(e){Jr.has(e)&&(Jr.delete(e),e.timer!==null&&(clearTimeout(e.timer),e.timer=null),Ge(e.instance),e.host.remove())}function Sp(e,t={}){const n=t.level??"info",r=t.duration??3e3,s=kp(),a=document.createElement("div");a.className="sh3-toast-host",s.appendChild(a);const i={},o={close:()=>ca(i)},l=je(wp,{target:a,props:{message:e,level:n,close:o.close}});return i.host=a,i.instance=l,i.handle=o,i.timer=Number.isFinite(r)&&r>0?setTimeout(()=>ca(i),r):null,Jr.add(i),o}function Ep(){for(const e of[...Jr])ca(e)}const xp={notify:Sp,clear:Ep},Ui={w:120,h:80};function oc(e){if(e.type==="slot")return{...Ui};if(e.type==="tabs")return{...Ui};const t=e.children.map(oc);return e.direction==="horizontal"?{w:t.reduce((n,r)=>n+r.w,0),h:t.reduce((n,r)=>Math.max(n,r.h),0)}:{w:t.reduce((n,r)=>Math.max(n,r.w),0),h:t.reduce((n,r)=>n+r.h,0)}}const Bi=32,Fi={x:48,y:48};function Ap(e,t){if(e.length===0)return{...Fi};const n=e[e.length-1],r={x:n.position.x+Bi,y:n.position.y+Bi};return r.x+120>t.w||r.y+32>t.h?{...Fi}:r}let Hi=0;function Tp(){return Hi+=1,`float-${Date.now().toString(36)}-${Hi.toString(36)}`}function lc(e){return e.type==="slot"?e.viewId==null:e.type==="tabs"?e.tabs.every(t=>t.viewId==null):e.children.every(lc)}let Ip=[],Ba=null,Fa=()=>({w:1600,h:900});function $p(e,t){Ba=e,Fa=t}function Cp(){Ba=null,Fa=()=>({w:1600,h:900})}function gs(){return Ba??Ip}let Ki=0;function Rp(e){return Ki+=1,`float:${e}:${Ki}`}const Pp={w:600,h:400};function Lp(e,t){return{w:Math.max(e.w,t.w),h:Math.max(e.h,t.h)}}function Dp(e,t={}){const n=gs(),r=Tp(),s=Rp(e),a=t.title??e,i={slotId:s,viewId:e,label:a};t.meta&&(i.meta=t.meta);const o={type:"tabs",tabs:[i],activeTab:0},l=oc(o),u=t.size??Lp(Pp,l),f=t.position??Ap(n,Fa()),v={id:r,content:o,position:f,size:u,title:t.title};return n.push(v),r}function Op(e){const t=gs(),n=t.findIndex(r=>r.id===e);n<0||t.splice(n,1)}function Np(){return gs().slice()}function zp(e){const t=gs(),n=t.findIndex(s=>s.id===e);if(n<0||n===t.length-1)return;const[r]=t.splice(n,1);t.push(r)}const un={open:Dp,close:Op,list:Np,focus:zp};let Zr=null;function Mp(e){Zr=e}function jp(){Zr=null}function Ha(){if(!Zr)throw new Error("presetManager: no app attached — bind an AppLayoutBlob first");return Zr}function qp(){return Object.keys(Ha().presets)}function Vp(){return Ha().activePreset}function Up(e){const t=Ha();if(!(e in t.presets))throw new Error(`presetManager.switch: unknown preset "${e}"`);t.activePreset=e}const Bp={list:qp,active:Vp,switch:Up},cc={state:ps,modal:dp,popup:bp,toast:xp,float:un,presets:Bp},Qr=new Map,uc=new Set;function Fp(e){uc.add(e)}function Hp(e,t){if(Qr.has(e))throw new Error(`View "${e}" is already registered`);Qr.set(e,t);for(const n of uc)n(e,t)}function fc(e){return Qr.get(e)}function Kp(e){Qr.delete(e)}const lr=new Map;function Yp(e,t){if(lr.has(e))throw new Error(`Verb "${e}" is already registered`);lr.set(e,t)}function Yi(e){return lr.get(e)}function Wp(e){lr.delete(e)}function Ka(){return Array.from(lr.values()).sort((e,t)=>e.name.localeCompare(t.name))}function $r(e,t,n){return`${e}/${t}/${n}`}function Gp(e,t){return`${e}/${t}/`}const Xp="sh3-documents",kn="docs",Jp=2;class Zp{#e=null;#n(){return this.#e||(this.#e=new Promise((t,n)=>{const r=indexedDB.open(Xp,Jp);r.onupgradeneeded=()=>{const s=r.result;s.objectStoreNames.contains(kn)||s.createObjectStore(kn)},r.onsuccess=()=>t(r.result),r.onerror=()=>n(r.error)})),this.#e}async#t(t,n){const r=await this.#n();return new Promise((s,a)=>{const o=r.transaction(kn,t).objectStore(kn),l=n(o);l.onsuccess=()=>s(l.result),l.onerror=()=>a(l.error)})}async read(t,n,r){const s=$r(t,n,r),a=await this.#t("readonly",i=>i.get(s));return a?a.content:null}async write(t,n,r,s){const a=$r(t,n,r),i=typeof s=="string"?new Blob([s]).size:s.byteLength,o={content:s,size:i,lastModified:Date.now()};await this.#t("readwrite",l=>l.put(o,a))}async delete(t,n,r){const s=$r(t,n,r);await this.#t("readwrite",a=>a.delete(s))}async list(t,n){const r=Gp(t,n),s=await this.#n();return new Promise((a,i)=>{const l=s.transaction(kn,"readonly").objectStore(kn),u=IDBKeyRange.bound(r,r+"￿",!1,!1),f=l.openCursor(u),v=[];f.onsuccess=()=>{const d=f.result;if(d){const m=d.value;v.push({path:d.key.slice(r.length),size:m.size,lastModified:m.lastModified}),d.continue()}else a(v)},f.onerror=()=>i(f.error)})}async exists(t,n,r){const s=$r(t,n,r);return await this.#t("readonly",i=>i.getKey(s))!==void 0}}class Qp{#e;#n;constructor(t,n){this.#e=t.replace(/\/$/,""),this.#n=n}async read(t,n,r){const s=`${this.#e}/api/docs/${t}/${n}/${r}`,a=await fetch(s);if(a.status===404)return null;if(!a.ok)throw new Error(`Document read failed: ${a.status}`);return(a.headers.get("content-type")??"").includes("application/octet-stream")?a.arrayBuffer():a.text()}async write(t,n,r,s){const a=`${this.#e}/api/docs/${t}/${n}/${r}`,i={...this.#t(),"Content-Type":typeof s=="string"?"text/plain":"application/octet-stream"},o=await fetch(a,{method:"PUT",headers:i,body:s});if(!o.ok)throw new Error(`Document write failed: ${o.status}`)}async delete(t,n,r){const s=`${this.#e}/api/docs/${t}/${n}/${r}`,a=await fetch(s,{method:"DELETE",headers:this.#t()});if(!a.ok)throw new Error(`Document delete failed: ${a.status}`)}async list(t,n){const r=`${this.#e}/api/docs/${t}/${n}`,s=await fetch(r);if(!s.ok)throw new Error(`Document list failed: ${s.status}`);return s.json()}async exists(t,n,r){const s=`${this.#e}/api/docs/${t}/${n}/${r}`;return(await fetch(s,{method:"HEAD"})).ok}#t(){return this.#n?{Authorization:`Bearer ${this.#n}`}:{}}}class e_{#e=new Set;subscribe(t){return this.#e.add(t),()=>{this.#e.delete(t)}}emit(t){for(const n of this.#e)try{n(t)}catch(r){console.error("SH3: document change listener threw",r)}}}const Wi=new e_,t_=1e3;function n_(e,t,n,r){const s=new Set,a=new Set;function i(u){return!r.extensions||r.extensions.length===0?!0:r.extensions.some(f=>u.endsWith(f))}function o(u,f){Wi.emit({type:u,path:f,tenantId:e,shardId:t})}const l={async list(){const u=await n.list(e,t);return!r.extensions||r.extensions.length===0?u:u.filter(f=>i(f.path))},async read(u){const f=await n.read(e,t,u);return f===null?null:typeof f=="string"?f:new TextDecoder().decode(f)},async write(u,f){const v=await n.exists(e,t,u);await n.write(e,t,u,f),o(v?"update":"create",u)},async delete(u){await n.delete(e,t,u),o("delete",u)},async exists(u){return n.exists(e,t,u)},watch(u){const f=Wi.subscribe(v=>{v.tenantId===e&&v.shardId===t&&i(v.path)&&u(v)});return a.add(f),()=>{f(),a.delete(f)}},autosave(u,f){const v=new r_(l,u,f?.debounceMs??t_);return s.add(v),v},async dispose(){const u=[...s].map(f=>f.dispose());await Promise.all(u),s.clear();for(const f of a)f();a.clear()}};return l}class r_{#e;#n;#t;#a=null;#s=null;#i=!1;#r=!1;constructor(t,n,r){this.#e=t,this.#n=n,this.#t=r}get dirty(){return this.#i}update(t){this.#r||(this.#a=t,this.#i=!0,this.#o())}async flush(){if(this.#l(),this.#a!==null){const t=this.#a;this.#a=null,this.#i=!1,await this.#e.write(this.#n,t)}}async dispose(){this.#r||(this.#r=!0,await this.flush())}#o(){this.#l(),this.#s=setTimeout(()=>{this.#s=null,this.flush()},this.#t)}#l(){this.#s!==null&&(clearTimeout(this.#s),this.#s=null)}}const s_="local";let dc=s_,vc=new Zp;function a_(){return dc}function i_(){return vc}function Bs(e){dc=e}function o_(e){vc=e}let Fn=z(null),Lt=z(null),Hn=z(!1),ms="",ua=null;function Gi(e,t){ms=e,ua=t.auth,w(Fn,t.user,!0),w(Lt,t.session,!0),w(Hn,!t.session&&!t.user,!0)}async function hc(e,t){try{const n=await fetch(`${ms}/api/auth/login`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({username:e,password:t})});if(!n.ok)return{ok:!1,error:(await n.json().catch(()=>({}))).error||"Login failed"};const r=await n.json();return w(Fn,r.user,!0),w(Lt,r.session,!0),w(Hn,!1),{ok:!0}}catch{return{ok:!1,error:"Network error"}}}async function l_(e,t,n){try{const r=await fetch(`${ms}/api/auth/register`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({username:e,password:t,displayName:n})});if(!r.ok)return{ok:!1,error:(await r.json().catch(()=>({}))).error||"Registration failed"};const s=await r.json();return w(Fn,s.user,!0),w(Lt,s.session,!0),w(Hn,!1),{ok:!0}}catch{return{ok:!1,error:"Network error"}}}async function c_(){try{await fetch(`${ms}/api/auth/logout`,{method:"POST",credentials:"include"})}catch{}if(ua?.required&&!ua.guestAllowed){window.location.reload();return}w(Fn,null),w(Lt,null),w(Hn,!0)}function u_(){w(Fn,{id:"local",username:"local",displayName:"Local Owner",role:"admin",createdAt:"",updatedAt:""},!0),w(Lt,{token:"local",userId:"local",role:"admin",expiresAt:1/0},!0),w(Hn,!1)}function f_(){return c(Lt)?.token==="local"}function nn(){return c(Lt)?.role==="admin"}function pc(){return c(Lt)!==null}function _c(){return c(Hn)}function Ya(){return c(Fn)}function bs(){return c(Lt)?`Bearer ${c(Lt).token}`:null}let Kn="";function gc(e){Kn=e}async function d_(e){const t=await fetch(`${Kn}/api/env-state/${encodeURIComponent(e)}`);return t.ok?await t.json():(console.warn(`[sh3] Failed to fetch env state for "${e}": HTTP ${t.status}`),{})}async function v_(e,t){if(!nn())throw new Error("Cannot update env state: not elevated to admin");const n=bs(),r={"Content-Type":"application/json"};n&&(r.Authorization=n);const s=await fetch(`${Kn}/api/env-state/${encodeURIComponent(e)}`,{method:"PUT",headers:r,body:JSON.stringify(t)});if(!s.ok){const a=await s.json().catch(()=>({}));throw new Error(`Env state update failed: HTTP ${s.status} — ${a.error??"unknown"}`)}}async function Wa(e,t,n){if(!nn())throw new Error("Cannot install: not elevated to admin");const r=bs(),s=new FormData;s.append("manifest",new Blob([JSON.stringify(e)],{type:"application/json"}),"manifest.json"),s.append("client",new Blob([t],{type:"application/javascript"}),"client.js"),n!==void 0&&s.append("server",new Blob([n],{type:"application/javascript"}),"server.js");const a={};r&&(a.Authorization=r);const i=await fetch(`${Kn}/api/packages/install`,{method:"POST",headers:a,body:s}),o=await i.json();return i.ok?{ok:!0,id:String(e.id)}:{ok:!1,id:String(e.id),error:o.error??`HTTP ${i.status}`}}async function mc(e){if(!nn())throw new Error("Cannot uninstall: not elevated to admin");const t=bs(),n={"Content-Type":"application/json"};t&&(n.Authorization=t);const r=await fetch(`${Kn}/api/packages/uninstall`,{method:"POST",headers:n,body:JSON.stringify({id:e})});if(!r.ok){const s=await r.json().catch(()=>({}));throw new Error(`Uninstall failed: HTTP ${r.status} — ${s.error??"unknown"}`)}}async function h_(){const e=await fetch(`${Kn}/api/packages`);return e.ok?await e.json():[]}function p_(e){return At[e].list()}function __(e,t){return At[e].read(t)}function g_(e,t){At[e].delete(t)}function m_(e){for(const t of At[e].list())At[e].delete(t)}function bc(){return{list:p_,peek:__,clear:g_,clearAll:m_}}const Dt=fe(new Map),cr=new Map,ys=fe(new Map);function ws(e){const t=e.manifest.id;Dt.has(t)&&ys.has(t)&&Ga(t),Dt.set(t,e)}async function yc(e){const t=Dt.get(e);if(!t)throw new Error(`Cannot activate shard "${e}": not registered`);if(cr.has(e))return;const n={shard:t,ctx:void 0,viewIds:new Set,verbNames:new Set,cleanupFns:[]},r=fe({proxy:null,defaults:null}),s={state:a=>cc.state(e,a),registerView:(a,i)=>{Hp(a,i),n.viewIds.add(a)},registerVerb:a=>{const i=e==="shell"?a.name:`${e}:${a.name}`;Yp(i,{...a,name:i}),n.verbNames.add(i)},documents:a=>{const i=n_(a_(),e,i_(),a);return n.cleanupFns.push(()=>i.dispose()),i},env(a){return r.proxy?(console.warn(`[sh3] Shard "${e}" called ctx.env() more than once; extra calls are ignored.`),r.proxy):(r.defaults=a,r.proxy={...a},r.proxy)},async envUpdate(a){if(!r.proxy||!r.defaults)throw new Error(`Shard "${e}" called envUpdate() without declaring env state`);const i=_n(r.proxy);Object.assign(r.proxy,a);try{const o=_n(r.proxy);await v_(e,o)}catch(o){throw Object.assign(r.proxy,i),o}},get isAdmin(){return nn()},zones:t.manifest.permissions?.includes(Va)?bc():void 0};n.ctx=s,cr.set(e,n),ys.set(e,t),await t.activate(s);for(const a of t.manifest.views)if(!n.viewIds.has(a.id))throw new Error(`Shard "${e}" declared view "${a.id}" in its manifest but registered no factory for it.`);if(r.proxy&&r.defaults)try{const a=await d_(e),i=Object.assign({},r.defaults,a);Object.assign(r.proxy,i)}catch(a){console.warn(`[sh3] Failed to hydrate env state for shard "${e}":`,a instanceof Error?a.message:a)}t.autostart?.(s)}function Ga(e){const t=cr.get(e);if(t){t.shard.deactivate?.();for(const n of t.cleanupFns)n();for(const n of t.verbNames)Wp(n);for(const n of t.viewIds)Kp(n);cr.delete(e),ys.delete(e)}}function b_(e){return cr.get(e)?.ctx}const Ar=fe(new Map),$t=fe({id:null});function ur(e){Ar.set(e.manifest.id,e)}function Xa(){return Array.from(Ar.values()).map(e=>e.manifest)}function wc(){const e=$t.id;return e?Ar.get(e)?.manifest??null:null}function ks(e){return Ar.get(e)}const Gt=new Map,jr=new Set;function y_(e,t){for(const[n,r]of Gt.entries()){if(r.viewId!==e||r.handle!==void 0)continue;const s={slotId:n,viewId:e,label:r.label,meta:r.meta,setDirty(a){Ss[n]=a}};queueMicrotask(()=>{if(Gt.has(n)&&r.handle===void 0&&(r.handle=t.mount(r.host,s),(r.handle?.closable||n.startsWith("float:"))&&(Es[n]=!0),r.handle?.onResize)){const a=r.handle.onResize.bind(r.handle);r.resizeObserver=new ResizeObserver(i=>{for(const o of i){const l=o.contentRect;a(Math.round(l.width),Math.round(l.height))}}),r.resizeObserver.observe(r.host)}})}}Fp(y_);const Ss=fe({}),Es=fe({});function w_(e,t,n,r){const s=document.createElement("div");s.className="slot-host",s.dataset.slotId=e,s.style.position="absolute",s.style.inset="0",s.style.minWidth="0",s.style.minHeight="0";let a=!1;const i={host:s,handle:void 0,viewId:t,label:n,meta:r,refcount:0,resizeObserver:void 0,cancelPendingMount:()=>{a=!0}};return queueMicrotask(()=>{if(a)return;const o=t?fc(t):void 0,l={slotId:e,viewId:t??"",label:n,meta:r,setDirty(u){Ss[e]=u}};if(i.handle=o?.mount(s,l),(i.handle?.closable||e.startsWith("float:"))&&(Es[e]=!0),i.handle?.onResize){const u=i.handle.onResize.bind(i.handle);i.resizeObserver=new ResizeObserver(f=>{for(const v of f){const d=v.contentRect;u(Math.round(d.width),Math.round(d.height))}}),i.resizeObserver.observe(s)}}),i}function kc(e,t,n,r){jr.delete(e);let s=Gt.get(e);return s||(s=w_(e,t,n,r),Gt.set(e,s)),s.refcount++,s.host}function Sc(e){const t=Gt.get(e);if(t){if(t.refcount--,t.refcount>0){t.host.remove();return}jr.add(e),queueMicrotask(()=>{if(!jr.has(e))return;jr.delete(e);const n=Gt.get(e);!n||n.refcount>0||(n.resizeObserver?.disconnect(),n.handle?.unmount(),n.cancelPendingMount(),n.host.remove(),Gt.delete(e),delete Ss[e],delete Es[e])})}}function Ec(e){const t=fa.get(e);return t||Gt.get(e)?.handle}function k_(e){return Ss[e]??!1}function S_(e){return fa.has(e)?!!fa.get(e).closable:Es[e]??!1}const fa=new Map;function xc(e){if(!e||typeof e!="object")return!1;const t=e.type;return t==="split"||t==="tabs"||t==="slot"}function E_(e){if(!e||typeof e!="object")return!1;const t=e;return xc(t.docked)&&Array.isArray(t.floats)}function x_(e){return{docked:e,floats:[]}}function A_(e){const t={};if(e.tree&&(t.default=e.tree),e.variants)for(const n of Object.keys(e.variants))t[n]=e.variants[n];if(!t.default)throw new Error(`LayoutPreset "${e.name}" must provide either 'tree' or 'variants.default'`);return{name:e.name,variants:t}}function T_(e){if(Array.isArray(e))return e.map(A_);if(E_(e))return[{name:"default",variants:{default:e}}];if(xc(e))return[{name:"default",variants:{default:x_(e)}}];throw new Error("normalizeInitialLayout: input is not a LayoutNode, LayoutTree, or LayoutPreset[]")}function Xi(e){const t=[],n=r=>{if(r.type==="slot"){t.push({slotId:r.slotId,viewId:r.viewId,label:r.viewId||r.slotId});return}if(r.type==="tabs"){for(const s of r.tabs)t.push({slotId:s.slotId,viewId:s.viewId,label:s.label,meta:s.meta});return}for(const s of r.children)n(s)};return n(e),t}function I_(e){const t=Xi(e.docked);for(const n of e.floats)t.push(...Xi(n.content));return t}oa("workspace","__shell__");const $_={type:"slot",slotId:"sh3core.home",viewId:"sh3core:home"},C_=fe({docked:$_,floats:[]});let at=z(null),xs=z("home");function R_(e){if(!e||typeof e!="object")return null;const t=e;if(t.presets&&typeof t.presets=="object"&&typeof t.activePreset=="string")return t;if(t.root&&typeof t.layoutVersion=="number"){const n={docked:t.root,floats:[]};return{layoutVersion:t.layoutVersion,activePreset:"default",presets:{default:{default:n}}}}return null}function P_(e){const t=e.presets[e.activePreset];if(!t)throw new Error(`AppLayoutBlob active preset "${e.activePreset}" not found in presets map`);return t.default}function L_(e){if(c(at))throw new Error(`Layout manager cannot attach app "${e.manifest.id}": app "${c(at).appId}" is still attached`);const t=`__sh3core__:app:${e.manifest.id}`,n=T_(e.initialLayout);if(n.length===0)throw new Error(`App "${e.manifest.id}" normalized to zero presets`);const r={layoutVersion:e.manifest.layoutVersion,activePreset:n[0].name,presets:Object.fromEntries(n.map(l=>[l.name,{...l.variants}]))},s=Qh("workspace",t),a=R_(s);(a&&a.layoutVersion!==e.manifest.layoutVersion||s&&!a)&&oa("workspace",t);const o=ps(t,{workspace:r}).workspace;w(at,{appId:e.manifest.id,proxy:o,heldSlotIds:[]},!0),Mp(o)}function D_(){if(!c(at))throw new Error("acquireAppSlotHolds: no app attached");if(c(at).heldSlotIds.length>0)return;const e=P_(c(at).proxy),t=I_(e);for(const{slotId:n,viewId:r,label:s,meta:a}of t)kc(n,r,s,a),c(at).heldSlotIds.push(n)}function Ac(){if(c(at)){jp();for(const e of c(at).heldSlotIds)Sc(e);w(at,null)}}function Tc(){w(xs,"home")}function Ji(){if(!c(at))throw new Error("Cannot switchToApp: no app is attached");w(xs,"app")}const qr=G(()=>{if(c(xs)==="app"&&c(at)){const e=c(at).proxy,t=e.activePreset,n=e.presets[t];if(!n)throw new Error(`AppLayoutBlob active preset "${t}" not found in presets map`);return n.default}return C_});function yn(){return c(qr)}function Ic(){return c(xs)}const Mn={get root(){return c(qr).docked},get tree(){return c(qr)},get floats(){return c(qr).floats}},$c=ps("__sh3core__:last-app",{user:{id:null}});function O_(){return $c.user.id}function da(e){$c.user.id=e}const va=new Map;function Cr(e){let t=va.get(e);if(!t){const n=ks(e);t={state:r=>ps(`__app__:${e}`,r),zones:n?.manifest.permissions?.includes(Va)?bc():void 0},va.set(e,t)}return t}async function fr(e){const t=ks(e);if(!t)throw new Error(`Cannot launch app "${e}": not registered`);if($t.id&&$t.id!==e)N_($t.id);else if($t.id===e){for(const n of t.manifest.requiredShards){const r=Dt.get(n),s=b_(n);r&&s&&r.resume?.(s)}t.resume?.(Cr(e)),Ji(),t.onAppReady?.(Cr(e)),da(e);return}for(const n of t.manifest.requiredShards)if(!Dt.has(n))throw new Error(`App "${e}" requires shard "${n}" which is not registered`);L_(t);try{for(const n of t.manifest.requiredShards)await yc(n)}catch(n){throw Ac(),n}D_(),t.activate?.(Cr(e)),$t.id=e,Ji(),t.onAppReady?.(Cr(e)),da(e)}function N_(e){if($t.id!==e)return;const t=ks(e);if(t){t.deactivate?.(),Tc(),Ac();for(const n of t.manifest.requiredShards){const r=Dt.get(n);r&&(r.autostart||Ga(n))}$t.id=null,va.delete(e)}}async function Cc(){const e=$t.id?ks($t.id):null;if(e){for(const t of e.manifest.requiredShards){const n=Dt.get(t);if(n?.suspend&&await n.suspend()===!1)return!1}if(e.suspend&&await e.suspend()===!1)return!1}return Tc(),da(null),!0}function dr(e,t){const n=(r,s)=>{if(r.type==="tabs"){const a=r.tabs.findIndex(i=>i.slotId===t);if(a>=0)return{tabsNode:r,tabsPath:s,tabIndex:a,entry:r.tabs[a]}}else if(r.type==="split")for(let a=0;a<r.children.length;a++){const i=n(r.children[a],[...s,a]);if(i)return i}return null};return n(e,[])}function Ja(e,t){const n=dr(e,t);if(!n)return null;const{tabsNode:r,tabIndex:s,entry:a}=n;return r.tabs.splice(s,1),r.tabs.length===0?r.activeTab=0:s<r.activeTab?r.activeTab-=1:r.activeTab>=r.tabs.length&&(r.activeTab=r.tabs.length-1),a}function z_(e,t,n){const r=Math.max(0,Math.min(n,e.tabs.length));e.tabs.splice(r,0,t),e.activeTab=r}function M_(e,t,n){const r=e.tabs.slice(),[s]=r.splice(t,1),a=Math.max(0,Math.min(n,r.length));r.splice(a,0,s),e.tabs=r,e.activeTab=a}function Zi(e,t,n){const r=n==="left"||n==="right"?"horizontal":"vertical",s={type:"tabs",activeTab:0,tabs:[t]};return{type:"split",direction:r,sizes:[1,1],children:n==="left"||n==="top"?[s,e]:[e,s]}}function j_(e){if(e.type==="tabs")return{...e,tabs:[...e.tabs]};if(e.type==="split"){const t={...e,children:[...e.children],sizes:[...e.sizes]};return e.pinned&&(t.pinned=[...e.pinned]),e.collapsed&&(t.collapsed=[...e.collapsed]),t}return{...e}}function Rc(e,t,n,r){const s=es(e,t);if(!s)return;if(t.length===0){const u=j_(s),f=Zi(u,n,r),v=e;delete v.tabs,delete v.activeTab,delete v.slotId,delete v.viewId,delete v.direction,delete v.sizes,delete v.pinned,delete v.collapsed,delete v.children,Object.assign(v,f);return}const a=Zi(s,n,r),i=t.slice(0,-1),o=t[t.length-1],l=es(e,i);!l||l.type!=="split"||(l.children[o]=a)}function es(e,t){let n=e;for(const r of t){if(n.type!=="split"||r<0||r>=n.children.length)return null;n=n.children[r]}return n}function er(e){let t=!0;for(;t;)t=Pc(e,null,0)}function Pc(e,t,n){if(e.type==="split"){let r=!1;for(let s=0;s<e.children.length;s++)Pc(e.children[s],e,s)&&(r=!0);for(let s=e.children.length-1;s>=0;s--){const a=e.children[s];a.type==="tabs"&&a.tabs.length===0&&!a.persistent&&(e.children.splice(s,1),e.sizes.splice(s,1),e.pinned&&e.pinned.splice(s,1),e.collapsed&&e.collapsed.splice(s,1),r=!0)}if(e.children.length<=1&&t)return e.children.length===1?t.children[n]=e.children[0]:(t.children.splice(n,1),t.sizes.splice(n,1),t.pinned&&t.pinned.splice(n,1),t.collapsed&&t.collapsed.splice(n,1)),!0;if(e.children.length===1&&!t){const s=e.children[0],a=e;return delete a.direction,delete a.sizes,delete a.pinned,delete a.collapsed,delete a.children,Object.assign(a,s),!0}return r}return e.type==="tabs",!1}function Lc(){return{root:yn(),source:Ic()}}function q_(e){const t=yn().docked,n=Qa(t);if(!n)throw new Error("spliceIntoActiveLayout: no tabs group found in the active layout; phase 8 only supports splicing into an existing tab group.");n.tabs.push(e),n.activeTab=n.tabs.length-1}function V_(e){const t=yn();return Ts(t.docked,n=>n.slotId===e)?!0:Dc(t,n=>n.slotId===e)}function As(e){const t=yn();return Ts(t.docked,n=>n.viewId===e)?!0:Dc(t,n=>n.viewId===e)}function Ts(e,t){if(e.type==="tabs"){const n=e.tabs.findIndex(t);return n>=0?(e.activeTab=n,!0):!1}if(e.type==="split"){for(const n of e.children)if(Ts(n,t))return!0}return!1}function Dc(e,t){for(const n of e.floats)if(Ts(n.content,t))return un.focus(n.id),!0;return!1}function U_(e,t){return Oc(e,t,!0)}function B_(e,t){return Oc(e,t,!1)}function Oc(e,t,n){const r=yn().docked,s=es(r,e);if(!s||s.type!=="split")return!1;const a=s;return t<0||t>=a.children.length?!1:(a.collapsed||(a.collapsed=a.children.map(()=>!1)),a.collapsed[t]=n,!0)}async function Za(e){const t=yn(),n=t.docked;if(!dr(n,e))return F_(t,e);const a=Ec(e)?.closable;return!a||typeof a=="object"&&(!await a.canClose()||!dr(n,e))?!1:(Ja(n,e),er(n),!0)}async function F_(e,t){for(const n of e.floats){if(!dr(n.content,t))continue;const a=Ec(t)?.closable;if(typeof a=="object"&&(!await a.canClose()||!dr(n.content,t)))return!1;Ja(n.content,t);const i=n.content.type==="tabs"?n.content:null;return(!i||i.tabs.length===0)&&un.close(n.id),!0}return!1}function Qa(e){if(e.type==="tabs")return e;if(e.type==="split")for(const t of e.children){const n=Qa(t);if(n)return n}return null}function Nc(e,t=[]){if(e.type==="slot")return e.viewId!==null?t:null;if(e.type==="split")for(let n=0;n<e.children.length;n++){const r=Nc(e.children[n],[...t,n]);if(r)return r}return null}function H_(e){const t=yn().docked;if(As(e.viewId??""))return!0;const n=Qa(t);if(n)return n.tabs.push(e),n.activeTab=n.tabs.length-1,!0;const r=Nc(t);return r?(Rc(t,r,e,"right"),!0):!1}class vt extends Error{constructor(t,n){super(`Registry validation error at ${t}: ${n}`),this.name="RegistryValidationError",this.path=t}}function zc(e){if(!e||typeof e!="object"||Array.isArray(e))throw new vt("$","expected an object");const t=e;if(t.version!==1)throw new vt("$.version",`expected 1, got ${JSON.stringify(t.version)}`);if(!Array.isArray(t.packages))throw new vt("$.packages","expected an array");return{version:1,packages:t.packages.map((r,s)=>K_(r,`$.packages[${s}]`))}}function K_(e,t){if(!e||typeof e!="object"||Array.isArray(e))throw new vt(t,"expected an object");const n=e;bt(n,"id",t),G_(n,"type",["shard","app","combo"],t),bt(n,"label",t),bt(n,"description",t);const r=`${t}.author`;if(!n.author||typeof n.author!="object"||Array.isArray(n.author))throw new vt(r,"expected an object");const s=n.author;if(typeof s.name!="string"||s.name.length===0)throw new vt(`${r}.name`,"expected a non-empty string");if(!Array.isArray(n.versions)||n.versions.length===0)throw new vt(`${t}.versions`,"expected a non-empty array");const a=n.versions.map((i,o)=>Y_(i,`${t}.versions[${o}]`));return{id:n.id,type:n.type,label:n.label,description:n.description,author:{name:s.name},icon:typeof n.icon=="string"?n.icon:void 0,versions:a}}function Y_(e,t){if(!e||typeof e!="object"||Array.isArray(e))throw new vt(t,"expected an object");const n=e;bt(n,"version",t),bt(n,"contractVersion",t),bt(n,"bundleUrl",t),bt(n,"integrity",t),"serverBundleUrl"in n&&n.serverBundleUrl!==void 0&&bt(n,"serverBundleUrl",t),"serverIntegrity"in n&&n.serverIntegrity!==void 0&&bt(n,"serverIntegrity",t);let r;if(n.requires!==void 0){if(!Array.isArray(n.requires))throw new vt(`${t}.requires`,"expected an array");r=n.requires.map((s,a)=>W_(s,`${t}.requires[${a}]`))}return{version:n.version,contractVersion:n.contractVersion,bundleUrl:n.bundleUrl,integrity:n.integrity,serverBundleUrl:typeof n.serverBundleUrl=="string"?n.serverBundleUrl:void 0,serverIntegrity:typeof n.serverIntegrity=="string"?n.serverIntegrity:void 0,requires:r}}function W_(e,t){if(!e||typeof e!="object"||Array.isArray(e))throw new vt(t,"expected an object");const n=e;return bt(n,"id",t),bt(n,"versionRange",t),{id:n.id,versionRange:n.versionRange}}function bt(e,t,n){const r=e[t];if(typeof r!="string"||r.length===0)throw new vt(`${n}.${t}`,"expected a non-empty string")}function G_(e,t,n,r){if(!n.includes(e[t]))throw new vt(`${r}.${t}`,`expected one of: ${n.join(", ")}`)}const Qi=["sha256","sha384","sha512"];function X_(e){const t=e.indexOf("-");if(t===-1)throw new Error(`Invalid SRI format: ${e}`);const n=e.slice(0,t),r=e.slice(t+1);if(!Qi.includes(n))throw new Error(`Unsupported SRI algorithm: ${n}. Supported: ${Qi.join(", ")}`);if(!r)throw new Error(`Empty hash in SRI: ${e}`);return{algorithm:n,hash:r}}function J_(e){return`SHA-${e.slice(3)}`}function Z_(e){const t=new Uint8Array(e);let n="";for(let r=0;r<t.length;r++)n+=String.fromCharCode(t[r]);return btoa(n)}async function ei(e,t){const{algorithm:n,hash:r}=X_(t),s=J_(n),a=await crypto.subtle.digest(s,e),i=Z_(a);if(i!==r)throw new Error(`Integrity check failed for ${n}. Expected: ${r}, got: ${i}`)}async function Mc(e){const t=new Set,n=[];for(const r of e){let s;try{const i=await fetch(r);if(!i.ok){console.warn(`[sh3] Registry fetch failed for ${r}: HTTP ${i.status}`);continue}s=await i.json()}catch(i){console.warn(`[sh3] Registry ${r}: ${i instanceof Error?i.message:String(i)}`);continue}let a;try{a=zc(s)}catch(i){console.warn(`[sh3] Registry ${r} failed validation: ${i instanceof Error?i.message:String(i)}`);continue}for(const i of a.packages)t.has(i.id)||(t.add(i.id),n.push({entry:i,latest:i.versions[0],sourceRegistry:r}))}return n}async function Is(e,t){let n=e.bundleUrl;t&&!/^https?:\/\//i.test(n)&&(n=new URL(n,t).href);const r=await fetch(n);if(!r.ok)throw new Error(`Bundle fetch failed: HTTP ${r.status} ${r.statusText} from ${n}`);const s=await r.arrayBuffer();return await ei(s,e.integrity),s}async function ti(e,t){if(!e.serverBundleUrl)throw new Error("fetchServerBundle called on a version with no serverBundleUrl");let n=e.serverBundleUrl;t&&!/^https?:\/\//i.test(n)&&(n=new URL(n,t).href);const r=await fetch(n);if(!r.ok)throw new Error(`Server bundle fetch failed: HTTP ${r.status} ${r.statusText} from ${n}`);const s=await r.arrayBuffer();return e.serverIntegrity?await ei(s,e.serverIntegrity):console.warn(`[sh3] Server bundle at ${n} has no serverIntegrity declared — skipping SRI check. This will become an error once the formal registry spec (ADR-015) lands.`),s}function $s(e,t){return{id:e.entry.id,type:e.entry.type,version:t.version,contractVersion:t.contractVersion,sourceRegistry:e.sourceRegistry,integrity:t.integrity,requires:t.requires,hasServerBundle:!!t.serverBundleUrl,serverIntegrity:t.serverIntegrity}}const Ft="0.7.5",ni="sh3:user:__sh3core__:theme";let vr=[];function Q_(e){const t=Object.keys(e);for(const n of vr)t.includes(n)||document.documentElement.style.removeProperty(`--${n}`);for(const[n,r]of Object.entries(e))document.documentElement.style.setProperty(`--${n}`,r);vr=t;try{localStorage.setItem(ni,JSON.stringify(e))}catch{}}function eg(){for(const e of vr)document.documentElement.style.removeProperty(`--${e}`);vr=[];try{localStorage.removeItem(ni)}catch{}}function jc(){try{const e=localStorage.getItem(ni);if(!e)return{};const t=JSON.parse(e);return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:{}}catch{return{}}}function tg(){const e=jc();if(Object.keys(e).length!==0){for(const[t,n]of Object.entries(e))document.documentElement.style.setProperty(`--${t}`,n);vr=Object.keys(e)}}const ng={hotInstall:typeof Blob<"u"&&typeof URL.createObjectURL=="function"},qc=Object.freeze(Object.defineProperty({__proto__:null,PERMISSION_STATE_MANAGE:Va,VERSION:Ft,activeShards:ys,buildPackageMeta:$s,capabilities:ng,clearTokenOverrides:eg,closeTab:Za,collapseChild:U_,dockIntoActiveLayout:H_,expandChild:B_,fetchBundle:Is,fetchRegistries:Mc,focusTab:V_,focusView:As,getActiveApp:wc,getAuthHeader:bs,getTokenOverrides:jc,getUser:Ya,inspectActiveLayout:Lc,isAdmin:nn,isAuthenticated:pc,isGuest:_c,launchApp:fr,listRegisteredApps:Xa,listVerbs:Ka,registeredShards:Dt,returnToHome:Cc,setTokenOverrides:Q_,shell:cc,spliceIntoActiveLayout:q_,validateRegistryIndex:zc},Symbol.toStringTag,{value:"Module"})),rg="/assets/SH3-BG5NVpSD.png",sg="https://cdn.jsdelivr.net/npm/p5@1.11.13/lib/p5.min.js";let Xn=null;function ag(){return Xn||(Xn=new Promise((e,t)=>{const n=window.p5;if(n){e(n);return}const r=document.createElement("script");r.src=sg,r.async=!0,r.onload=()=>e(window.p5),r.onerror=s=>{Xn=null,t(s)},document.head.appendChild(r)}),Xn)}var ig=$('<h1 class="shell-title-fallback svelte-1ifjvh5">SH3</h1>'),og=$('<div class="shell-title svelte-1ifjvh5"></div>');function lg(e,t){ne(t,!0);const n="`.-':;,^\"~=+<>*?!/\\|()[]{}x1ltzrcvunsXYUJCLQ0OZmwqpdbkhao*#MW&8%B@$",r=64,s=Math.floor(64/(442/193)),a=8,i=7,o=80,l=r*a,u=s*i,f=o/u;let v=z(void 0),d=null,m=z(!1);const b=()=>_=>{const R=getComputedStyle(document.documentElement).getPropertyValue("--shell-accent").trim();let I,C,j=!1;_.setup=()=>{_.createCanvas(l,u),_.noSmooth(),_.noStroke(),_.textAlign(_.CENTER,_.CENTER),_.textFont("monospace"),_.textSize(10),_.textStyle(_.BOLD),C=_.loadImage(rg,()=>{I=_.createGraphics(r,s),I.pixelDensity(1),I.image(C,0,0,r,s),I.loadPixels(),j=!0},()=>{w(m,!0)})},_.draw=()=>{if(!j)return;const D=_.millis()*.001;let P;_.clear(),_.background(0,0),_.fill(R);for(let S=0;S<s;S++)for(let M=0;M<r;M++){const B=(S*r+M)*4;if(I.pixels[B]<64){if(P=_.noise(M/r*2,S/s*2,D*.15),P>.33)continue;_.text(n[Math.floor(P*n.length*.25)],(M+.5)*a,(S+.5)*i);continue}P=_.noise(M/r*4,S/s*4,D*.5),_.text(n[Math.floor(P*n.length)],(M+.5)*a,(S+.5)*i)}}};Je(()=>{if(c(m))return;let _=!1;return ag().then(x=>{if(!(_||!c(v)))try{d=new x(b(),c(v))}catch(R){console.error("[ShellTitle] p5 sketch failed to start",R),w(m,!0)}}).catch(x=>{console.error("[ShellTitle] failed to load p5 from CDN",x),w(m,!0)}),()=>{_=!0,d&&(d.remove(),d=null)}});var k=qt(),y=Ce(k);{var E=_=>{var x=ig();T(_,x)},h=_=>{var x=og();Nt(x,"",{},{width:"216.7195767195767px",height:"80px","--shell-title-scale":f}),mt(x,R=>w(v,R),()=>c(v)),T(_,x)};F(y,_=>{c(m)?_(E):_(h,-1)})}T(e,k),re()}var cg=$('<li class="shell-home-entry svelte-cpn2x2"><div class="shell-home-entry-label svelte-cpn2x2"> </div> <div class="shell-home-entry-meta svelte-cpn2x2"> </div> <button type="button" class="shell-home-launch svelte-cpn2x2">Launch</button></li>'),ug=$('<section class="shell-home-section svelte-cpn2x2"><h2 class="shell-home-section-title svelte-cpn2x2">Apps</h2> <ul class="shell-home-list svelte-cpn2x2"></ul></section>'),fg=$('<li class="shell-home-entry svelte-cpn2x2"><div class="shell-home-entry-label svelte-cpn2x2"> </div> <div class="shell-home-entry-meta svelte-cpn2x2"> </div> <button type="button" class="shell-home-launch svelte-cpn2x2">Launch</button></li>'),dg=$('<section class="shell-home-section svelte-cpn2x2"><h2 class="shell-home-section-title svelte-cpn2x2">Admin</h2> <ul class="shell-home-list svelte-cpn2x2"></ul></section>'),vg=$('<p class="shell-home-empty svelte-cpn2x2">No apps registered.</p>'),hg=$('<div class="shell-home svelte-cpn2x2"><header class="shell-home-header svelte-cpn2x2"><div class="shell-home-title-row svelte-cpn2x2"><!> <span class="shell-home-version svelte-cpn2x2"> </span> <span class="shell-home-alpha svelte-cpn2x2">alpha</span></div> <div class="shell-home-credit svelte-cpn2x2">Art: by <a href="https://www.andbc.co/" target="_blank" rel="noopener noreferrer" class="svelte-cpn2x2">andbc</a></div></header> <!> <!> <!></div>');function pg(e,t){ne(t,!0);const n=G(Xa),r=G(()=>c(n).filter(h=>!h.admin)),s=G(()=>c(n).filter(h=>h.admin)),a=G(nn);var i=hg(),o=g(i),l=g(o),u=g(l);lg(u,{});var f=A(u,2),v=g(f);p(f),Wt(2),p(l),Wt(2),p(o);var d=A(o,2);{var m=h=>{var _=ug(),x=A(g(_),2);Te(x,21,()=>c(r),R=>R.id,(R,I)=>{var C=cg(),j=g(C),D=g(j,!0);p(j);var P=A(j,2),S=g(P);p(P);var M=A(P,2);p(C),U(()=>{N(D,c(I).label),N(S,`${c(I).id??""} · v${c(I).version??""}`)}),H("click",M,()=>fr(c(I).id)),T(R,C)}),p(x),p(_),T(h,_)};F(d,h=>{c(r).length>0&&h(m)})}var b=A(d,2);{var k=h=>{var _=dg(),x=A(g(_),2);Te(x,21,()=>c(s),R=>R.id,(R,I)=>{var C=fg(),j=g(C),D=g(j,!0);p(j);var P=A(j,2),S=g(P);p(P);var M=A(P,2);p(C),U(()=>{N(D,c(I).label),N(S,`${c(I).id??""} · v${c(I).version??""}`)}),H("click",M,()=>fr(c(I).id)),T(R,C)}),p(x),p(_),T(h,_)};F(b,h=>{c(a)&&c(s).length>0&&h(k)})}var y=A(b,2);{var E=h=>{var _=vg();T(h,_)};F(y,h=>{c(r).length===0&&(!c(a)||c(s).length===0)&&h(E)})}p(i),U(()=>N(v,`v${Ft}`)),T(e,i),re()}Se(["click"]);const _g={manifest:{id:"__sh3core__",label:"SH3 Core",version:Ft,views:[{id:"sh3core:home",label:"Home"}]},activate(e){const t={mount(n,r){const s=je(pg,{target:n});return{unmount(){Ge(s)}}}};e.registerView("sh3core:home",t)},autostart(){}},gg={id:"shell",label:"Shell",version:Ft,views:[{id:"shell:terminal",label:"Shell"}],permissions:[]},mg=2e3;let bg=0;function yg(){return`e${++bg}`}class wg{#e;get entries(){return c(this.#e)}set entries(t){w(this.#e,t,!0)}constructor(t=mg){this.#e=z(fe([])),this.cap=t}push(t){const n=this.entries[this.entries.length-1];if(n&&n.kind==="text"&&t.kind==="text"&&n.stream===t.stream){n.chunks.push(...t.chunks);return}const r={...t,id:yg()};this.entries.push(r),this.entries.length>this.cap&&this.entries.splice(0,this.entries.length-this.cap)}clear(){this.entries.length=0}}var kg=$("<pre> </pre>");function Sg(e,t){ne(t,!0);const n=/\x1b\[[0-9;?]*[ -/]*[@-~]/g,r=G(()=>t.chunks.join("").replace(n,""));var s=kg();let a;var i=g(s,!0);p(s),U(()=>{a=ze(s,1,"shell-text svelte-ypr8s",null,a,{stderr:t.stream==="stderr"}),N(i,c(r))}),T(e,s),re()}var Eg=$('<div class="shell-prompt svelte-u0gb59"><span class="shell-prompt-cwd svelte-u0gb59"> </span> <span class="shell-prompt-arrow svelte-u0gb59">❯</span> <span class="shell-prompt-line svelte-u0gb59"> </span></div>');function xg(e,t){var n=Eg(),r=g(n),s=g(r,!0);p(r);var a=A(r,4),i=g(a,!0);p(a),p(n),U(()=>{N(s,t.cwd),N(i,t.line)}),T(e,n)}var Ag=$("<div> </div>");function Tg(e,t){var n=Ag();let r;var s=g(n,!0);p(n),U(()=>{r=ze(n,1,"shell-status svelte-nfxdpt",null,r,{info:t.level==="info",warn:t.level==="warn",error:t.level==="error"}),N(s,t.text)}),T(e,n)}var Ig=$('<div class="shell-rich svelte-1rnhl05"><!></div>');function $g(e,t){var n=Ig(),r=g(n);ds(r,()=>t.component,(s,a)=>{a(s,hs(()=>t.componentProps))}),p(n),T(e,n)}var Cg=$('<div class="shell-scrollback svelte-isy3jt"></div>');function Rg(e,t){ne(t,!0);let n=z(null);Je(()=>{t.scrollback.entries.length,c(n)&&(c(n).scrollTop=c(n).scrollHeight)});var r=Cg();Te(r,21,()=>t.scrollback.entries,s=>s.id,(s,a)=>{var i=qt(),o=Ce(i);{var l=d=>{Sg(d,{get stream(){return c(a).stream},get chunks(){return c(a).chunks}})},u=d=>{xg(d,{get cwd(){return c(a).cwd},get line(){return c(a).line}})},f=d=>{Tg(d,{get text(){return c(a).text},get level(){return c(a).level}})},v=d=>{$g(d,{get component(){return c(a).component},get componentProps(){return c(a).props}})};F(o,d=>{c(a).kind==="text"?d(l):c(a).kind==="prompt"?d(u,1):c(a).kind==="status"?d(f,2):c(a).kind==="rich"&&d(v,3)})}T(s,i)}),p(r),mt(r,s=>w(n,s),()=>c(n)),T(e,r),re()}var Pg=$('<div><span class="shell-input-cwd svelte-1dfv2gk"> </span> <span class="shell-input-arrow svelte-1dfv2gk">❯</span> <input type="text" spellcheck="false" autocomplete="off" autocapitalize="off" class="shell-input-field svelte-1dfv2gk"/></div>');function Lg(e,t){ne(t,!0);let n=z(""),r=z(null),s=z(""),a=z(null);function i(){if(t.locked)return;const k=c(n);k.trim()&&(w(n,""),w(r,null),t.onSubmit(k))}function o(){t.history.length!==0&&(c(r)===null?(w(s,c(n),!0),w(r,t.history.length-1)):c(r)>0&&Dn(r,-1),w(n,t.history[c(r)]??"",!0))}function l(){c(r)!==null&&(c(r)<t.history.length-1?(Dn(r),w(n,t.history[c(r)],!0)):(w(r,null),w(n,c(s),!0)))}function u(k){if(t.locked){if(k.ctrlKey&&k.key==="c"){k.preventDefault(),t.session.send({t:"signal",sig:"SIGINT"});return}if(k.ctrlKey&&k.key==="d"){k.preventDefault(),t.session.send({t:"signal",sig:"EOF"});return}k.preventDefault();return}k.key==="Enter"?(k.preventDefault(),i()):k.key==="ArrowUp"?(k.preventDefault(),o()):k.key==="ArrowDown"?(k.preventDefault(),l()):k.ctrlKey&&k.key==="c"?(k.preventDefault(),w(n,""),w(r,null)):k.ctrlKey&&k.key==="l"&&(k.preventDefault(),w(n,"clear"),i())}Je(()=>{!t.locked&&c(a)&&c(a).focus()});var f=Pg();let v;var d=g(f),m=g(d,!0);p(d);var b=A(d,4);Ee(b),mt(b,k=>w(a,k),()=>c(a)),p(f),U(()=>{v=ze(f,1,"shell-input svelte-1dfv2gk",null,v,{locked:t.locked}),N(m,t.cwd),b.disabled=t.locked}),H("keydown",b,u),Le(b,()=>c(n),k=>w(n,k)),T(e,f),re()}Se(["keydown"]);const eo=[1e3,2e3,5e3,1e4];class Dg{#e;get connected(){return c(this.#e)}set connected(t){w(this.#e,t,!0)}#n;get cwd(){return c(this.#n)}set cwd(t){w(this.#n,t,!0)}#t;get env(){return c(this.#t)}set env(t){w(this.#t,t,!0)}#a;get history(){return c(this.#a)}set history(t){w(this.#a,t,!0)}constructor(t){this.url=t,this.ws=null,this.handlers=new Set,this.pendingHistoryLogs=[],this.lastSeq=0,this.backoffIndex=0,this.closed=!1,this.#e=z(!1),this.#n=z(""),this.#t=z(fe({})),this.#a=z(fe([]))}connect(){if(!this.closed){try{this.ws=new WebSocket(this.url)}catch{this.scheduleReconnect();return}this.ws.addEventListener("open",()=>{this.backoffIndex=0,this.connected=!0;const t=this.lastSeq>0?{t:"hello",replayFrom:this.lastSeq}:{t:"hello"};this.sendRaw(t);for(const n of this.pendingHistoryLogs)this.sendRaw(n);this.pendingHistoryLogs=[]}),this.ws.addEventListener("message",t=>{let n;try{n=JSON.parse(t.data)}catch{return}n.t==="event"&&typeof n.event.seq=="number"&&(this.lastSeq=n.event.seq),n.t==="welcome"&&(this.cwd=n.cwd,this.env=n.env,this.lastSeq=n.seq),n.t==="cwd"&&(this.cwd=n.cwd),n.t==="history"&&(this.history=n.lines);for(const r of this.handlers)r(n)}),this.ws.addEventListener("close",()=>{this.connected=!1,this.ws=null,this.scheduleReconnect()}),this.ws.addEventListener("error",()=>{})}}scheduleReconnect(){if(this.closed)return;const t=eo[Math.min(this.backoffIndex,eo.length-1)];this.backoffIndex++,setTimeout(()=>this.connect(),t)}send(t){if(t.t==="history-log"&&!this.connected){this.pendingHistoryLogs.push(t);return}this.sendRaw(t)}sendRaw(t){!this.ws||this.ws.readyState!==WebSocket.OPEN||this.ws.send(JSON.stringify(t))}onMessage(t){return this.handlers.add(t),()=>this.handlers.delete(t)}close(){this.closed=!0,this.ws?.close(),this.ws=null}}class Og{list(){return Ka()}get(t){return Yi(t)}resolve(t){const n=t.trim();if(!n)return{kind:"forward",line:t};if(n.startsWith("$ "))return{kind:"forward",line:n.slice(2)};if(n==="$")return{kind:"forward",line:""};const r=n.indexOf(" "),s=r===-1?n:n.slice(0,r),a=r===-1?"":n.slice(r+1),i=Yi(s);if(!i)return{kind:"forward",line:t};const o=a.length?a.split(/\s+/):[];return{kind:"local",verb:i,args:o,line:t}}}var Ng=$('<div class="shell-terminal svelte-13komre"><!> <!></div>');function zg(e,t){ne(t,!0);const n=new wg,r=ye(()=>new Dg(t.wsUrl)),s=new Og;let a=z(!1);async function i(d){r.history.push(d);const m=s.resolve(d);if(m.kind==="local"){r.send({t:"history-log",line:d}),n.push({kind:"prompt",cwd:r.cwd,line:d,ts:Date.now()});try{await m.verb.run({shell:t.shell,scrollback:n,session:r,cwd:r.cwd,dispatch:i},m.args)}catch(b){n.push({kind:"status",text:`shell: verb ${m.verb.name} threw — ${b.message}`,level:"error",ts:Date.now()})}}else r.send({t:"submit",line:m.line})}function o(d){if(d.t!=="event")return;const m=d.event;switch(m.kind){case"prompt":n.push({kind:"prompt",cwd:m.cwd,line:m.line,ts:m.ts}),w(a,!0);break;case"stdout":n.push({kind:"text",stream:"stdout",chunks:[m.data],ts:m.ts});break;case"stderr":n.push({kind:"text",stream:"stderr",chunks:[m.data],ts:m.ts});break;case"exit":(m.signal||m.code!==null&&m.code!==0)&&n.push({kind:"status",text:m.signal?`shell: process exited (${m.signal})`:`shell: process exited (${m.code})`,level:"error",ts:m.ts}),w(a,!1);break;case"status":n.push({kind:"status",text:m.text,level:m.level,ts:m.ts});break}}let l=null;Na(()=>{l=r.onMessage(o),r.connect()}),jl(()=>{l?.(),r.close()});var u=Ng(),f=g(u);Rg(f,{get scrollback(){return n}});var v=A(f,2);Lg(v,{get cwd(){return r.cwd},get locked(){return c(a)},get history(){return r.history},get session(){return r},onSubmit:i}),p(u),T(e,u),re()}var Mg=$('<tr><td class="svelte-m248jy"><button type="button" class="svelte-m248jy"> </button></td><td class="svelte-m248jy"> </td></tr>'),jg=$('<div class="shell-rich-help svelte-m248jy"><table class="svelte-m248jy"><thead><tr><th class="svelte-m248jy">Name</th><th class="svelte-m248jy">Summary</th></tr></thead><tbody></tbody></table></div>');function qg(e,t){ne(t,!0);var n=jg(),r=g(n),s=A(g(r));Te(s,21,()=>t.data.rows,a=>a.name,(a,i)=>{var o=Mg(),l=g(o),u=g(l),f=g(u,!0);p(u),p(l);var v=A(l),d=g(v,!0);p(v),p(o),U(()=>{N(f,c(i).name),N(d,c(i).summary)}),H("click",u,()=>t.data.onClickName(c(i).name)),T(a,o)}),p(s),p(r),p(n),T(e,n),re()}Se(["click"]);function Vg(){return{name:"help",summary:"List verbs or show detail for one.",async run(e){const t=Ka().map(n=>({name:n.name,summary:n.summary}));e.scrollback.push({kind:"rich",component:qg,props:{data:{rows:t,onClickName:n=>e.dispatch(n)}},ts:Date.now()})}}}const Ug={name:"clear",summary:"Clear the scrollback (local only — other views are unaffected).",async run(e){e.scrollback.clear()}};var Bg=$('<li class="svelte-o8m437"><button type="button" class="svelte-o8m437"> </button></li>'),Fg=$('<div class="shell-rich-history svelte-o8m437"><ol class="svelte-o8m437"></ol></div>');function Hg(e,t){ne(t,!0);var n=Fg(),r=g(n);Te(r,21,()=>t.data.lines,Nn,(s,a)=>{var i=Bg(),o=g(i),l=g(o,!0);p(o),p(i),U(()=>N(l,c(a))),H("click",o,()=>t.data.onClickLine(c(a))),T(s,i)}),p(r),p(n),T(e,n),re()}Se(["click"]);const Kg={name:"history",summary:"Show the last N history lines. Default 50.",async run(e,t){const n=t[0]?Math.max(1,parseInt(t[0],10)||50):50,r=e.session.history.slice(-n);e.scrollback.push({kind:"rich",component:Hg,props:{data:{lines:r,onClickLine:s=>e.dispatch(s)}},ts:Date.now()})}};var Yg=$('<tr><td class="svelte-1u5krjz"><button type="button" class="svelte-1u5krjz"> </button></td><td class="svelte-1u5krjz"> </td></tr>'),Wg=$('<div class="shell-rich-apps svelte-1u5krjz"><table class="svelte-1u5krjz"><thead><tr><th class="svelte-1u5krjz">ID</th><th class="svelte-1u5krjz">Label</th></tr></thead><tbody></tbody></table></div>');function Gg(e,t){ne(t,!0);var n=Wg(),r=g(n),s=A(g(r));Te(s,21,()=>t.data.apps,a=>a.id,(a,i)=>{var o=Yg(),l=g(o),u=g(l),f=g(u,!0);p(u),p(l);var v=A(l),d=g(v,!0);p(v),p(o),U(()=>{N(f,c(i).id),N(d,c(i).label)}),H("click",u,()=>t.data.onClickApp(c(i).id)),T(a,o)}),p(s),p(r),p(n),T(e,n),re()}Se(["click"]);var Xg=$('<div class="shell-rich-appcard svelte-npcp8i"><h3 class="svelte-npcp8i"> </h3> <p class="svelte-npcp8i"><strong>ID:</strong> </p> <p class="svelte-npcp8i"><strong>Shards:</strong> </p></div>');function Jg(e,t){ne(t,!0);var n=Xg(),r=g(n),s=g(r,!0);p(r);var a=A(r,2),i=A(g(a));p(a);var o=A(a,2),l=A(g(o));p(o),p(n),U(u=>{N(s,t.data.label),N(i,` ${t.data.id??""}`),N(l,` ${u??""}`)},[()=>t.data.shards.join(", ")]),T(e,n),re()}const Zg={name:"apps",summary:"List installed apps. Click a row to launch.",async run(e){const t=e.shell.listApps();e.scrollback.push({kind:"rich",component:Gg,props:{data:{apps:t,onClickApp:n=>{e.shell.launchApp(n),e.scrollback.push({kind:"status",text:`shell: launched app ${n}`,level:"info",ts:Date.now()})}}},ts:Date.now()})}},Qg={name:"app",summary:"Show the currently active app.",async run(e){const t=e.shell.getActiveApp();if(!t){e.scrollback.push({kind:"status",text:"shell: no active app",level:"info",ts:Date.now()});return}e.scrollback.push({kind:"rich",component:Jg,props:{data:{id:t.id,label:t.label,shards:[]}},ts:Date.now()})}};var em=$('<tr><td class="svelte-sc3ux4"> </td><td class="svelte-sc3ux4"> </td><td class="svelte-sc3ux4"> </td></tr>'),tm=$('<div class="shell-rich-shards svelte-sc3ux4"><table class="svelte-sc3ux4"><thead><tr><th class="svelte-sc3ux4">ID</th><th class="svelte-sc3ux4">Label</th><th class="svelte-sc3ux4">Version</th></tr></thead><tbody></tbody></table></div>');function nm(e,t){ne(t,!0);var n=tm(),r=g(n),s=A(g(r));Te(s,21,()=>t.data.shards,a=>a.id,(a,i)=>{var o=em(),l=g(o),u=g(l,!0);p(l);var f=A(l),v=g(f,!0);p(f);var d=A(f),m=g(d,!0);p(d),p(o),U(()=>{N(u,c(i).id),N(v,c(i).label),N(m,c(i).version)}),T(a,o)}),p(s),p(r),p(n),T(e,n),re()}const rm={name:"shards",summary:"List active shards.",async run(e){const t=e.shell.listShards();e.scrollback.push({kind:"rich",component:nm,props:{data:{shards:t}},ts:Date.now()})}};var sm=$('<tr><td class="svelte-15elbr1"> </td><td class="svelte-15elbr1"> </td><td class="svelte-15elbr1"> </td><td class="svelte-15elbr1"><button type="button" class="svelte-15elbr1">Close</button></td></tr>'),am=$('<div class="shell-rich-views svelte-15elbr1"><table class="svelte-15elbr1"><thead><tr><th class="svelte-15elbr1">Slot ID</th><th class="svelte-15elbr1">View ID</th><th class="svelte-15elbr1">Label</th><th class="svelte-15elbr1">Action</th></tr></thead><tbody></tbody></table></div>');function im(e,t){ne(t,!0);var n=am(),r=g(n),s=A(g(r));Te(s,21,()=>t.data.views,a=>a.slotId,(a,i)=>{var o=sm(),l=g(o),u=g(l,!0);p(l);var f=A(l),v=g(f,!0);p(f);var d=A(f),m=g(d,!0);p(d);var b=A(d),k=g(b);p(b),p(o),U(()=>{N(u,c(i).slotId),N(v,c(i).viewId),N(m,c(i).label)}),H("click",k,()=>t.data.onClose(c(i).slotId)),T(a,o)}),p(s),p(r),p(n),T(e,n),re()}Se(["click"]);const om={name:"views",summary:"List views currently mounted in the active layout.",async run(e){const t=e.shell.listViewsInCurrentLayout();e.scrollback.push({kind:"rich",component:im,props:{data:{views:t,onClose:n=>{const r=e.shell.closeSlot(n);r.ok||e.scrollback.push({kind:"status",text:`shell: close failed — ${r.error??"unknown"}`,level:"error",ts:Date.now()})}}},ts:Date.now()})}},lm={name:"open",summary:"Open a view from any active shard into the current layout.",async run(e,t){const n=t[0];if(!n){e.scrollback.push({kind:"status",text:"usage: open <viewId>",level:"warn",ts:Date.now()});return}const r=e.shell.openViewInCurrentLayout(n);r.ok?e.scrollback.push({kind:"status",text:`shell: opened ${n}`,level:"info",ts:Date.now()}):e.scrollback.push({kind:"status",text:`shell: open failed — ${r.error??"unknown"}`,level:"error",ts:Date.now()})}},cm={name:"close",summary:"Close a view by slot id.",async run(e,t){const n=t[0];if(!n){e.scrollback.push({kind:"status",text:"usage: close <slotId>",level:"warn",ts:Date.now()});return}const r=e.shell.closeSlot(n);r.ok||e.scrollback.push({kind:"status",text:`shell: close failed — ${r.error??"unknown"}`,level:"error",ts:Date.now()})}};var um=$('<tr><td class="svelte-1w7onag"> </td><td class="svelte-1w7onag"> </td></tr>'),fm=$('<div class="shell-rich-zones svelte-1w7onag"><table class="svelte-1w7onag"><thead><tr><th class="svelte-1w7onag">Shard ID</th><th class="svelte-1w7onag">Zones</th></tr></thead><tbody></tbody></table></div>');function dm(e,t){ne(t,!0);var n=fm(),r=g(n),s=A(g(r));Te(s,21,()=>t.data.rows,a=>a.shardId,(a,i)=>{var o=um(),l=g(o),u=g(l,!0);p(l);var f=A(l),v=g(f,!0);p(f),p(o),U(d=>{N(u,c(i).shardId),N(v,d)},[()=>c(i).zones.join(", ")]),T(a,o)}),p(s),p(r),p(n),T(e,n),re()}var vm=$('<div class="shell-rich-zonetree svelte-13iiyr1"><pre class="svelte-13iiyr1"> </pre></div>');function hm(e,t){ne(t,!0);var n=vm(),r=g(n),s=g(r,!0);p(r),p(n),U(a=>N(s,a),[()=>JSON.stringify(t.data.value,null,2)]),T(e,n),re()}const pm={name:"zones",summary:"List zones for the current user (optionally scoped to a shard).",async run(e,t){const n=e.shell.listZones(t[0]);e.scrollback.push({kind:"rich",component:dm,props:{data:{rows:n}},ts:Date.now()})}},_m={name:"zone",summary:"Dump the contents of a zone as a collapsible JSON tree.",async run(e,t){const[n,r]=t;if(!n||!r){e.scrollback.push({kind:"status",text:"usage: zone <shardId> <zoneName>",level:"warn",ts:Date.now()});return}const s=e.shell.readZone(n,r);e.scrollback.push({kind:"rich",component:hm,props:{data:{value:s}},ts:Date.now()})}};var gm=$('<tr><td class="svelte-1ox8vog"> </td><td class="svelte-1ox8vog"> </td></tr>'),mm=$('<div class="shell-rich-env svelte-1ox8vog"><table class="svelte-1ox8vog"><thead><tr><th class="svelte-1ox8vog">Key</th><th class="svelte-1ox8vog">Value</th></tr></thead><tbody></tbody></table></div>');function bm(e,t){ne(t,!0);var n=mm(),r=g(n),s=A(g(r));Te(s,21,()=>Object.entries(t.data.env),([a,i])=>a,(a,i)=>{var o=G(()=>xo(c(i),2));let l=()=>c(o)[0],u=()=>c(o)[1];var f=gm(),v=g(f),d=g(v,!0);p(v);var m=A(v),b=g(m,!0);p(m),p(f),U(()=>{N(d,l()),N(b,u())}),T(a,f)}),p(s),p(r),p(n),T(e,n),re()}const ym={name:"pwd",summary:"Show the server session cwd.",async run(e){e.scrollback.push({kind:"text",stream:"stdout",chunks:[e.cwd+`
7
+ `],ts:Date.now()})}},wm={name:"cd",summary:"Change the session working directory.",async run(e,t){const n=t[0]??"";if(!n){e.scrollback.push({kind:"status",text:"usage: cd <path>",level:"warn",ts:Date.now()});return}e.session.send({t:"submit",line:`cd ${n}`})}},km={name:"env",summary:"Show the session environment.",async run(e){const t=e.session.env;e.scrollback.push({kind:"rich",component:bm,props:{data:{env:t}},ts:Date.now()})}},Sm={name:"whoami",summary:"Show the current admin user and session info.",async run(e){const t=e.shell.whoAmI();e.scrollback.push({kind:"text",stream:"stdout",chunks:[`${t.userId}${t.admin?" (admin)":""}
8
+ `],ts:Date.now()})}};function Em(e){e.registerVerb(Vg()),e.registerVerb(Ug),e.registerVerb(Kg),e.registerVerb(Zg),e.registerVerb(Qg),e.registerVerb(rm),e.registerVerb(om),e.registerVerb(lm),e.registerVerb(cm),e.registerVerb(pm),e.registerVerb(_m),e.registerVerb(ym),e.registerVerb(wm),e.registerVerb(km),e.registerVerb(Sm)}function Vc(e){return e.type==="tabs"?e.tabs.filter(t=>t.viewId!==null):e.type==="split"?e.children.flatMap(Vc):e.viewId!==null?[{slotId:e.slotId,viewId:e.viewId,label:e.viewId}]:[]}function xm(e){return{listApps(){return Xa().map(t=>({id:t.id,label:t.label}))},getActiveApp(){const t=wc();return t?{id:t.id,label:t.label}:null},launchApp(t){fr(t)},listShards(){return Array.from(Dt.values()).map(t=>({id:t.manifest.id,label:t.manifest.label,version:t.manifest.version}))},listViewsInCurrentLayout(){try{const{root:t}=Lc();return Vc(t.docked).map(n=>({slotId:n.slotId,viewId:n.viewId??"",label:n.label}))}catch{return[]}},openViewInCurrentLayout(t){try{return As(t)?{ok:!0}:{ok:!1,error:`view "${t}" not found in current layout`}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}},closeSlot(t){return Za(t),{ok:!0}},listZones(t){return[]},readZone(t,n){return null},whoAmI(){return{userId:Ya()?.id??"guest",admin:nn()}}}}const Am={manifest:gg,activate(e){if(!e.isAdmin)return;Em(e);const t=xm(),n={mount(r,s){const a=typeof location<"u"&&location.protocol==="https:"?"wss":"ws",i=typeof location<"u"?location.host:"localhost",o=`${a}://${i}/api/shell/session`,l=je(zg,{target:r,props:{shell:t,wsUrl:o}});return{unmount(){Ge(l)},closable:!0}}};e.registerView("shell:terminal",n)},autostart(){}},to=new Set(["await","break","case","catch","class","const","continue","debugger","default","delete","do","else","enum","export","extends","false","finally","for","function","if","import","in","instanceof","let","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with","yield"]);function Fs(e,t){const n=Object.keys(t),r=n.filter(i=>!to.has(i)),s=n.filter(i=>to.has(i)),a=[`const __m__ = globalThis.${e};`];r.length>0&&a.push(`export const { ${r.join(", ")} } = __m__;`);for(const i of s)a.push(`const __r_${i}__ = __m__['${i}']; export { __r_${i}__ as ${i} };`);return a.push("export default __m__.default;"),URL.createObjectURL(new Blob([a.join(`
9
+ `)],{type:"application/javascript"}))}const ri=globalThis;ri.__sh3__=qc;ri.__sh3_svelte__=Vl;ri.__sh3_svelte_internal_client__=tc;const si={"sh3-core":Fs("__sh3__",qc),svelte:Fs("__sh3_svelte__",Vl),"svelte/internal/client":Fs("__sh3_svelte_internal_client__",tc)};si["svelte/internal/disclose-version"]=URL.createObjectURL(new Blob([""],{type:"application/javascript"}));si["sh3-core/tokens.css"]=URL.createObjectURL(new Blob([""],{type:"application/javascript"}));const Tm=/(?:from|import)\s*(['"])(sh3-core(?:\/[^'"]*)?|svelte(?:\/[^'"]*)?)\1/g;function Im(e){return e.replace(Tm,(t,n,r)=>{const s=si[r];return s?`${t.startsWith("from")?"from":"import"} '${s}'`:t})}async function ai(e){const t=new TextDecoder().decode(e),n=Im(t),r=new Blob([n],{type:"application/javascript"}),s=URL.createObjectURL(r);try{const a=await import(s),i={shards:[],apps:[]};for(const o of Object.values(a)){if(!o||typeof o!="object"||!("manifest"in o))continue;const l=o;Uc(l)?i.shards.push(l):Bc(l)&&i.apps.push(l)}if(i.shards.length===0&&i.apps.length===0)throw new Error('Bundle has no exports with a "manifest" property — expected at least one shard or app');return i}finally{URL.revokeObjectURL(s)}}function Uc(e){return"activate"in e&&typeof e.activate=="function"&&Array.isArray(e.manifest.views)}function Bc(e){return"initialLayout"in e&&Array.isArray(e.manifest.requiredShards)}const $m=Object.freeze(Object.defineProperty({__proto__:null,isApp:Bc,isShard:Uc,loadBundleModule:ai},Symbol.toStringTag,{value:"Module"})),Cm="sh3-packages",Rm=1,hr="bundles",pr="meta";function Cs(){return new Promise((e,t)=>{const n=indexedDB.open(Cm,Rm);n.onupgradeneeded=()=>{const r=n.result;r.objectStoreNames.contains(hr)||r.createObjectStore(hr),r.objectStoreNames.contains(pr)||r.createObjectStore(pr)},n.onsuccess=()=>e(n.result),n.onerror=()=>t(n.error)})}function jn(e,t,n,r){return new Promise((s,a)=>{const o=e.transaction(t,n).objectStore(t),l=r(o);l.onsuccess=()=>s(l.result),l.onerror=()=>a(l.error)})}async function Fc(e,t,n){const r=await Cs();await jn(r,hr,"readwrite",s=>s.put(t,e)),await jn(r,pr,"readwrite",s=>s.put(n,e)),r.close()}async function Hc(e){const t=await Cs(),n=await jn(t,hr,"readonly",r=>r.get(e));return t.close(),n??null}async function Kc(){const e=await Cs(),t=await jn(e,pr,"readonly",n=>n.getAll());return e.close(),t??[]}async function Pm(e){const t=await Cs();await jn(t,hr,"readwrite",n=>n.delete(e)),await jn(t,pr,"readwrite",n=>n.delete(e)),t.close()}async function ii(e,t){try{await ei(e,t.integrity)}catch(a){return{success:!1,hotLoaded:!1,error:`Integrity check failed: ${a instanceof Error?a.message:String(a)}`}}let n;try{n=await ai(e)}catch(a){return{success:!1,hotLoaded:!1,error:`Failed to load bundle: ${a instanceof Error?a.message:String(a)}`}}if(t.type==="shard"&&n.shards.length===0)return{success:!1,hotLoaded:!1,error:`Package "${t.id}" declared type "shard" but bundle contains no valid shard`};if(t.type==="app"&&n.apps.length===0)return{success:!1,hotLoaded:!1,error:`Package "${t.id}" declared type "app" but bundle contains no valid app`};const r={id:t.id,type:t.type,version:t.version,sourceRegistry:t.sourceRegistry,contractVersion:t.contractVersion,installedAt:new Date().toISOString()};try{await Fc(t.id,e,r)}catch(a){return{success:!1,hotLoaded:!1,error:`Failed to persist package: ${a instanceof Error?a.message:String(a)}`}}let s=!0;try{for(const a of n.shards)a.manifest={...a.manifest,version:t.version},ws(a);for(const a of n.apps)a.manifest={...a.manifest,version:t.version},ur(a)}catch(a){console.warn(`[sh3] Package "${t.id}" installed but registration failed (will retry on next boot):`,a instanceof Error?a.message:a),s=!1}return{success:!0,package:r,hotLoaded:s}}async function Yc(e){try{Ga(e)}catch{}await Pm(e)}async function Lm(){return Kc()}async function Dm(){let e;try{e=await Kc()}catch(t){console.warn("[sh3] Failed to read installed packages from storage:",t instanceof Error?t.message:t);return}for(const t of e)try{const n=await Hc(t.id);if(!n){console.warn(`[sh3] No bundle found for installed package "${t.id}", skipping`);continue}const r=await ai(n);for(const s of r.shards)s.manifest={...s.manifest,version:t.version},ws(s);for(const s of r.apps)s.manifest={...s.manifest,version:t.version},ur(s);r.shards.length===0&&r.apps.length===0&&console.warn(`[sh3] Package "${t.id}" contains no valid shards or apps, skipping`)}catch(n){console.warn(`[sh3] Failed to load installed package "${t.id}":`,n instanceof Error?n.message:n)}}const no={version:1};var Om=$('<div class="store-registry-entry svelte-1aafzt0"><span class="store-registry-url svelte-1aafzt0"> </span> <button class="store-registry-remove svelte-1aafzt0">Remove</button></div>'),Nm=$('<div class="store-registries svelte-1aafzt0"></div>'),zm=$('<form class="store-add-registry svelte-1aafzt0"><input class="store-registry-input svelte-1aafzt0" type="url" placeholder="Registry URL (e.g. https://sh3.example.com/registry.json)"/> <button type="submit" class="store-add-btn svelte-1aafzt0">Add</button></form>'),Mm=$('<div class="store-error svelte-1aafzt0"> </div>'),jm=$('<div class="store-error svelte-1aafzt0"> </div>'),qm=$('<img alt="" class="store-icon-img svelte-1aafzt0"/>'),Vm=$('<span class="store-icon-placeholder svelte-1aafzt0"> </span>'),Um=$('<div class="store-card-warning svelte-1aafzt0"> </div>'),Bm=$('<button class="store-update-btn svelte-1aafzt0"> </button>'),Fm=$('<span class="store-installed-label svelte-1aafzt0">Installed</span>'),Hm=$('<button class="store-install-btn svelte-1aafzt0"> </button>'),Km=$('<div class="store-card svelte-1aafzt0"><div class="store-card-header svelte-1aafzt0"><div class="store-card-icon svelte-1aafzt0"><!></div> <div class="store-card-title svelte-1aafzt0"><span class="store-card-label svelte-1aafzt0"> </span> <span> </span> <span class="store-card-version svelte-1aafzt0"> </span></div></div> <p class="store-card-desc svelte-1aafzt0"> </p> <div class="store-card-author svelte-1aafzt0"> </div> <!> <div class="store-card-actions svelte-1aafzt0"><!></div></div>'),Ym=$("No packages found. <!>",1),Wm=$('<div class="store-empty svelte-1aafzt0"><!></div>'),Gm=$('<div class="store-view svelte-1aafzt0"><header class="store-header svelte-1aafzt0"><h2 class="svelte-1aafzt0">Package Store</h2> <div class="store-controls svelte-1aafzt0"><input class="store-search svelte-1aafzt0" type="text" placeholder="Search packages..."/> <select class="store-filter svelte-1aafzt0"><option>All</option><option>Shards</option><option>Apps</option></select> <button class="store-refresh svelte-1aafzt0"> </button></div></header> <!> <!> <!> <!> <div class="store-grid svelte-1aafzt0"></div> <!></div>');function Xm(e,t){ne(t,!0);let n=z(""),r=z("all"),s=z(fe(new Set)),a=z(fe(new Set)),i=z(null),o=z("");const l=Zt;async function u(){const q=c(o).trim();if(q&&!l.env.registries.includes(q))try{await l.addRegistry(q),w(o,""),l.refreshCatalog(),l.refreshInstalled()}catch(L){w(i,L instanceof Error?L.message:String(L),!0)}}async function f(q){try{await l.removeRegistry(q),l.refreshCatalog()}catch(L){w(i,L instanceof Error?L.message:String(L),!0)}}const v=G(()=>{const q=c(n).toLowerCase().trim();return l.state.ephemeral.catalog.filter(L=>c(r)!=="all"&&L.entry.type!==c(r)?!1:q?L.entry.id.toLowerCase().includes(q)||L.entry.label.toLowerCase().includes(q)||L.entry.description.toLowerCase().includes(q):!0)});function d(q){return l.state.ephemeral.installed.some(L=>L.id===q)}function m(q){return String(q.latest.contractVersion)!==String(no.version)}function b(q){return q in l.state.ephemeral.updatable}function k(q){return l.state.ephemeral.installed.find(L=>L.id===q)?.version??""}async function y(q){if(!c(a).has(q)){w(a,new Set([...c(a),q]),!0),w(i,null);try{await l.updatePackage(q)}catch(L){w(i,L instanceof Error?L.message:String(L),!0)}finally{const L=new Set(c(a));L.delete(q),w(a,L,!0)}}}async function E(q){const L=q.entry.id;if(!c(s).has(L)){w(s,new Set([...c(s),L]),!0),w(i,null);try{const J=await Is(q.latest,q.sourceRegistry),ce=$s(q,q.latest);let ue;q.latest.serverBundleUrl&&(ue=await ti(q.latest,q.sourceRegistry));const ie={id:ce.id,type:ce.type,label:q.entry.label,version:ce.version,contractVersion:ce.contractVersion,sourceRegistry:ce.sourceRegistry,installedAt:new Date().toISOString()},ve=await Wa(ie,J,ue);if(!ve.ok){w(i,ve.error??"Server install failed",!0);return}const oe=await ii(J,ce);oe.success||console.warn(`[sh3-store] Server install ok but local hot-load failed: ${oe.error}`),await l.refreshInstalled()}catch(J){w(i,J instanceof Error?J.message:String(J),!0)}finally{const J=new Set(c(s));J.delete(L),w(s,J,!0)}}}function h(){l.refreshCatalog(),l.refreshInstalled()}var _=Gm(),x=g(_),R=A(g(x),2),I=g(R);Ee(I);var C=A(I,2),j=g(C);j.value=j.__value="all";var D=A(j);D.value=D.__value="shard";var P=A(D);P.value=P.__value="app",p(C);var S=A(C,2),M=g(S,!0);p(S),p(R),p(x);var B=A(x,2);{var O=q=>{var L=Nm();Te(L,21,()=>l.env.registries,Nn,(J,ce)=>{var ue=Om(),ie=g(ue),ve=g(ie,!0);p(ie);var oe=A(ie,2);p(ue),U(()=>N(ve,c(ce))),H("click",oe,()=>f(c(ce))),T(J,ue)}),p(L),T(q,L)};F(B,q=>{l.isAdmin&&l.env.registries.length>0&&q(O)})}var W=A(B,2);{var se=q=>{var L=zm(),J=g(L);Ee(J);var ce=A(J,2);p(L),U(ue=>ce.disabled=ue,[()=>!c(o).trim()]),Qe("submit",L,ue=>{ue.preventDefault(),u()}),Le(J,()=>c(o),ue=>w(o,ue)),T(q,L)};F(W,q=>{l.isAdmin&&q(se)})}var Z=A(W,2);{var he=q=>{var L=Mm(),J=g(L,!0);p(L),U(()=>N(J,l.state.ephemeral.error)),T(q,L)};F(Z,q=>{l.state.ephemeral.error&&q(he)})}var te=A(Z,2);{var _e=q=>{var L=jm(),J=g(L,!0);p(L),U(()=>N(J,c(i))),T(q,L)};F(te,q=>{c(i)&&q(_e)})}var we=A(te,2);Te(we,21,()=>c(v),q=>q.entry.id,(q,L)=>{const J=G(()=>d(c(L).entry.id)),ce=G(()=>m(c(L))),ue=G(()=>c(s).has(c(L).entry.id)),ie=G(()=>b(c(L).entry.id)),ve=G(()=>c(a).has(c(L).entry.id));var oe=Km(),zt=g(oe),Yn=g(zt),Ht=g(Yn);{var Wn=Ie=>{var ge=qm();U(()=>De(ge,"src",c(L).entry.icon)),T(Ie,ge)},su=Ie=>{var ge=Vm(),rn=g(ge,!0);p(ge),U(()=>N(rn,c(L).entry.type==="shard"?"S":"A")),T(Ie,ge)};F(Ht,Ie=>{c(L).entry.icon?Ie(Wn):Ie(su,-1)})}p(Yn);var ui=A(Yn,2),Rs=g(ui),au=g(Rs,!0);p(Rs);var Tr=A(Rs,2);let fi;var iu=g(Tr,!0);p(Tr);var di=A(Tr,2),ou=g(di,!0);p(di),p(ui),p(zt);var Ps=A(zt,2),lu=g(Ps,!0);p(Ps);var Ls=A(Ps,2),cu=g(Ls,!0);p(Ls);var vi=A(Ls,2);{var uu=Ie=>{var ge=Um(),rn=g(ge);p(ge),U(()=>N(rn,`Contract mismatch: package targets v${c(L).latest.contractVersion??""}, running v${no.version}`)),T(Ie,ge)};F(vi,Ie=>{c(ce)&&Ie(uu)})}var hi=A(vi,2),fu=g(hi);{var du=Ie=>{var ge=Bm(),rn=g(ge,!0);p(ge),U(pu=>{ge.disabled=c(ve),N(rn,pu)},[()=>c(ve)?"Updating...":`Update ${k(c(L).entry.id)} -> ${c(L).latest.version}`]),H("click",ge,()=>y(c(L).entry.id)),T(Ie,ge)},vu=Ie=>{var ge=Fm();T(Ie,ge)},hu=Ie=>{var ge=Hm(),rn=g(ge,!0);p(ge),U(()=>{ge.disabled=c(ue),N(rn,c(ue)?"Installing...":"Install")}),H("click",ge,()=>E(c(L))),T(Ie,ge)};F(fu,Ie=>{c(J)&&c(ie)?Ie(du):c(J)?Ie(vu,1):Ie(hu,-1)})}p(hi),p(oe),U(()=>{N(au,c(L).entry.label),fi=ze(Tr,1,"store-card-badge svelte-1aafzt0",null,fi,{"badge-shard":c(L).entry.type==="shard","badge-app":c(L).entry.type==="app"}),N(iu,c(L).entry.type),N(ou,c(L).latest.version),N(lu,c(L).entry.description),N(cu,c(L).entry.author.name)}),T(q,oe)}),p(we);var ae=A(we,2);{var xe=q=>{var L=Wm(),J=g(L);{var ce=ie=>{var ve=Ym(),oe=A(Ce(ve));{var zt=Ht=>{var Wn=Nr("Add a registry URL above to get started.");T(Ht,Wn)},Yn=Ht=>{var Wn=Nr("No registries configured.");T(Ht,Wn)};F(oe,Ht=>{l.isAdmin?Ht(zt):Ht(Yn,-1)})}T(ie,ve)},ue=ie=>{var ve=Nr("No packages match the current filter.");T(ie,ve)};F(J,ie=>{l.env.registries.length===0?ie(ce):ie(ue,-1)})}p(L),T(q,L)};F(ae,q=>{!l.state.ephemeral.loading&&c(v).length===0&&q(xe)})}p(_),U(()=>{S.disabled=l.state.ephemeral.loading,N(M,l.state.ephemeral.loading?"Loading...":"Refresh")}),Le(I,()=>c(n),q=>w(n,q)),Gr(C,()=>c(r),q=>w(r,q)),H("click",S,h),T(e,_),re()}Se(["click"]);var Jm=$('<div class="installed-error svelte-1hqclkp"> </div>'),Zm=$('<div class="installed-empty svelte-1hqclkp">No packages installed.</div>'),Qm=$('<button class="installed-update-btn svelte-1hqclkp"> </button>'),eb=$('<li class="installed-item svelte-1hqclkp"><div class="installed-item-main svelte-1hqclkp"><span class="installed-item-id svelte-1hqclkp"> </span> <span> </span> <span class="installed-item-version svelte-1hqclkp"> </span></div> <div class="installed-item-meta svelte-1hqclkp"><span> </span> <span> </span> <span> </span></div> <div class="installed-item-actions svelte-1hqclkp"><!> <button class="installed-uninstall-btn svelte-1hqclkp"> </button></div></li>'),tb=$('<ul class="installed-list svelte-1hqclkp"></ul>'),nb=$('<div class="installed-view svelte-1hqclkp"><header class="installed-header svelte-1hqclkp"><h2 class="svelte-1hqclkp">Installed Packages</h2> <button>Refresh</button></header> <!> <!></div>');function rb(e,t){ne(t,!0);const n=Zt;let r=z(fe(new Set)),s=z(fe(new Set)),a=z(null);async function i(h){if(!c(r).has(h)){w(r,new Set([...c(r),h]),!0);try{await mc(h),await Yc(h),await n.refreshInstalled()}catch(_){console.warn("[sh3-store] Uninstall failed:",_ instanceof Error?_.message:_)}finally{const _=new Set(c(r));_.delete(h),w(r,_,!0)}}}async function o(h){if(!c(s).has(h)){w(s,new Set([...c(s),h]),!0),w(a,null);try{await n.updatePackage(h)}catch(_){w(a,_ instanceof Error?_.message:String(_),!0)}finally{const _=new Set(c(s));_.delete(h),w(s,_,!0)}}}function l(){n.refreshInstalled()}function u(h){try{return new Date(h).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}catch{return h}}var f=nb(),v=g(f),d=A(g(v),2);p(v);var m=A(v,2);{var b=h=>{var _=Jm(),x=g(_,!0);p(_),U(()=>N(x,c(a))),T(h,_)};F(m,h=>{c(a)&&h(b)})}var k=A(m,2);{var y=h=>{var _=Zm();T(h,_)},E=h=>{var _=tb();Te(_,21,()=>n.state.ephemeral.installed,x=>x.id,(x,R)=>{const I=G(()=>c(r).has(c(R).id));var C=eb(),j=g(C),D=g(j),P=g(D,!0);p(D);var S=A(D,2);let M;var B=g(S,!0);p(S);var O=A(S,2),W=g(O,!0);p(O),p(j);var se=A(j,2),Z=g(se),he=g(Z);p(Z);var te=A(Z,2),_e=g(te);p(te);var we=A(te,2),ae=g(we);p(we),p(se);var xe=A(se,2),q=g(xe);{var L=ue=>{const ie=G(()=>n.state.ephemeral.updatable[c(R).id]),ve=G(()=>c(s).has(c(R).id));var oe=Qm(),zt=g(oe,!0);p(oe),U(()=>{oe.disabled=c(ve)||c(I),N(zt,c(ve)?"Updating...":`Update -> ${c(ie).latest.version}`)}),H("click",oe,()=>o(c(R).id)),T(ue,oe)};F(q,ue=>{c(R).id in n.state.ephemeral.updatable&&ue(L)})}var J=A(q,2),ce=g(J,!0);p(J),p(xe),p(C),U(ue=>{N(P,c(R).id),M=ze(S,1,"installed-item-badge svelte-1hqclkp",null,M,{"badge-shard":c(R).type==="shard","badge-app":c(R).type==="app"}),N(B,c(R).type),N(W,c(R).version),N(he,`Contract: v${c(R).contractVersion??""}`),N(_e,`Source: ${c(R).sourceRegistry??""}`),N(ae,`Installed: ${ue??""}`),J.disabled=c(I),N(ce,c(I)?"Removing...":"Uninstall")},[()=>u(c(R).installedAt)]),H("click",J,()=>i(c(R).id)),T(x,C)}),p(_),T(h,_)};F(k,h=>{n.state.ephemeral.installed.length===0?h(y):h(E,-1)})}p(f),H("click",d,l),T(e,f),re()}Se(["click"]);function Wc(e){return Zt.state.ephemeral.catalog.find(t=>t.entry.id===e)}function oi(e){return Zt.state.ephemeral.installed.find(t=>t.id===e)}const sb={name:"install",summary:"Install a package by id from the catalog.",async run(e,t){const n=t[0];if(!n){e.scrollback.push({kind:"status",text:"usage: sh3-store:install <package-id>",level:"warn",ts:Date.now()});return}const r=oi(n);if(r){e.scrollback.push({kind:"status",text:`${n} is already installed (v${r.version})`,level:"warn",ts:Date.now()});return}const s=Wc(n);if(!s){e.scrollback.push({kind:"status",text:`package "${n}" not found in catalog — try refreshing the store`,level:"error",ts:Date.now()});return}e.scrollback.push({kind:"status",text:`installing ${n} v${s.latest.version}...`,level:"info",ts:Date.now()});try{const a=await Is(s.latest,s.sourceRegistry),i=$s(s,s.latest);let o;s.latest.serverBundleUrl&&(o=await ti(s.latest,s.sourceRegistry));const l={id:i.id,type:i.type,label:s.entry.label,version:i.version,contractVersion:i.contractVersion,sourceRegistry:i.sourceRegistry,installedAt:new Date().toISOString()},u=await Wa(l,a,o);if(!u.ok){e.scrollback.push({kind:"status",text:`install failed: ${u.error??"server error"}`,level:"error",ts:Date.now()});return}const f=await ii(a,i);f.success||e.scrollback.push({kind:"status",text:`server ok but local hot-load failed: ${f.error}`,level:"warn",ts:Date.now()}),await Zt.refreshInstalled(),e.scrollback.push({kind:"status",text:`installed ${n} v${s.latest.version}`,level:"info",ts:Date.now()})}catch(a){e.scrollback.push({kind:"status",text:`install failed: ${a instanceof Error?a.message:String(a)}`,level:"error",ts:Date.now()})}}},ab={name:"uninstall",summary:"Uninstall an installed package by id.",async run(e,t){const n=t[0];if(!n){e.scrollback.push({kind:"status",text:"usage: sh3-store:uninstall <package-id>",level:"warn",ts:Date.now()});return}if(!oi(n)){e.scrollback.push({kind:"status",text:`package "${n}" is not installed`,level:"error",ts:Date.now()});return}e.scrollback.push({kind:"status",text:`uninstalling ${n}...`,level:"info",ts:Date.now()});try{await mc(n),await Yc(n),await Zt.refreshInstalled(),e.scrollback.push({kind:"status",text:`uninstalled ${n}`,level:"info",ts:Date.now()})}catch(s){e.scrollback.push({kind:"status",text:`uninstall failed: ${s instanceof Error?s.message:String(s)}`,level:"error",ts:Date.now()})}}},ib={name:"appinfo",summary:"Show info about a package (installed status, version, catalog details).",async run(e,t){const n=t[0];if(!n){e.scrollback.push({kind:"status",text:"usage: sh3-store:appinfo <package-id>",level:"warn",ts:Date.now()});return}const r=oi(n),s=Wc(n);if(!r&&!s){e.scrollback.push({kind:"status",text:`package "${n}" not found in catalog or installed list`,level:"error",ts:Date.now()});return}const a=[];a.push(`--- ${n} ---`),r?(a.push(" installed: yes"),a.push(` version: ${r.version}`),a.push(` type: ${r.type}`),a.push(` contract: v${r.contractVersion}`),a.push(` source: ${r.sourceRegistry}`),r.installedAt&&a.push(` installed: ${r.installedAt}`)):a.push(" installed: no"),s?(a.push(" catalog: yes"),a.push(` latest: ${s.latest.version}`),a.push(` label: ${s.entry.label}`),a.push(` author: ${s.entry.author.name}`),a.push(` desc: ${s.entry.description}`)):a.push(" catalog: no (not in any configured registry)"),e.scrollback.push({kind:"text",stream:"stdout",chunks:[a.join(`
10
+ `)+`
11
+ `],ts:Date.now()})}};function ob(e,t){const n=e.split(".").map(a=>parseInt(a,10)||0),r=t.split(".").map(a=>parseInt(a,10)||0),s=Math.max(n.length,r.length);for(let a=0;a<s;a++){const i=n[a]??0,o=r[a]??0;if(i>o)return!0;if(i<o)return!1}return!1}let Zt;const lb={manifest:{id:"sh3-store",label:"Package Store",version:Ft,views:[{id:"sh3-store:browse",label:"Store"},{id:"sh3-store:installed",label:"Installed"}]},activate(e){const t=e.env({registries:[]}),n=e.state({ephemeral:{catalog:[],installed:[],updatable:{},loading:!1,error:null}});function r(){const v={};for(const d of n.ephemeral.installed){const m=n.ephemeral.catalog.find(b=>b.entry.id===d.id);m&&ob(m.latest.version,d.version)&&(v[d.id]=m)}n.ephemeral.updatable=v}async function s(){n.ephemeral.loading=!0,n.ephemeral.error=null;try{const v=await Mc(t.registries);n.ephemeral.catalog=v,r()}catch(v){n.ephemeral.error=v instanceof Error?v.message:String(v)}finally{n.ephemeral.loading=!1}}async function a(){try{const v=await h_();n.ephemeral.installed=v.map(d=>({id:d.id,type:d.type,version:d.version,sourceRegistry:d.sourceRegistry??"",contractVersion:d.contractVersion??"",installedAt:d.installedAt??""})),r()}catch(v){console.warn("[sh3-store] Failed to list installed packages:",v instanceof Error?v.message:v);try{const d=await Lm();n.ephemeral.installed=d,r()}catch{}}}async function i(v){const d=[...t.registries];d.includes(v)||(d.push(v),await e.envUpdate({registries:d}))}async function o(v){const d=t.registries.filter(m=>m!==v);await e.envUpdate({registries:d})}async function l(v){const d=n.ephemeral.updatable[v];if(!d)return;const m=n.ephemeral.installed.find(I=>I.id===v);if(!m)return;const b=await Is(d.latest,d.sourceRegistry);let k;d.latest.serverBundleUrl&&(k=await ti(d.latest,d.sourceRegistry));const y=$s(d,d.latest),E=await Hc(v),h={...m},_={id:y.id,type:y.type,label:d.entry.label,version:y.version,contractVersion:y.contractVersion,sourceRegistry:y.sourceRegistry,installedAt:new Date().toISOString()},x=await Wa(_,b,k);if(!x.ok)throw new Error(x.error??"Server update failed");const R=await ii(b,y);if(!R.success){if(E)try{await Fc(v,E,h)}catch(I){console.warn(`[sh3-store] Rollback failed for "${v}":`,I instanceof Error?I.message:I)}throw new Error(R.error??"Local install failed during update")}await a()}Zt={env:t,state:n,get isAdmin(){return e.isAdmin},refreshCatalog:s,refreshInstalled:a,updatePackage:l,addRegistry:i,removeRegistry:o};const u={mount(v,d){const m=je(Xm,{target:v});return{unmount(){Ge(m)}}}},f={mount(v,d){const m=je(rb,{target:v});return{unmount(){Ge(m)}}}};e.registerView("sh3-store:browse",u),e.registerView("sh3-store:installed",f),e.registerVerb(sb),e.registerVerb(ab),e.registerVerb(ib),a()},autostart(){Zt.refreshCatalog()}},cb={manifest:{id:"sh3-store-app",label:"Package Store",version:Ft,requiredShards:["sh3-store"],layoutVersion:1,admin:!0},initialLayout:{type:"tabs",activeTab:0,tabs:[{slotId:"store.browse",viewId:"sh3-store:browse",label:"Browse"},{slotId:"store.installed",viewId:"sh3-store:installed",label:"Installed"}]}};var ub=$('<div class="admin-error svelte-4q792t"> </div>'),fb=$('<form class="admin-create-form svelte-4q792t"><input class="admin-input svelte-4q792t" type="text" placeholder="Username"/> <input class="admin-input svelte-4q792t" type="text" placeholder="Display name"/> <input class="admin-input svelte-4q792t" type="password" placeholder="Password"/> <select class="admin-input svelte-4q792t"><option>User</option><option>Admin</option></select> <button type="submit" class="admin-btn svelte-4q792t">Create</button> <!></form>'),db=$('<p class="admin-muted svelte-4q792t">Loading...</p>'),vb=$('<p class="admin-error svelte-4q792t"> </p>'),hb=$('<form class="admin-edit-form svelte-4q792t"><input class="admin-input svelte-4q792t" type="text"/> <input class="admin-input svelte-4q792t" type="password" placeholder="New password (leave empty to keep)"/> <select class="admin-input svelte-4q792t"><option>User</option><option>Admin</option></select> <div class="admin-edit-actions svelte-4q792t"><button type="submit" class="admin-btn svelte-4q792t">Save</button> <button type="button" class="admin-btn-secondary svelte-4q792t">Cancel</button></div></form>'),pb=$('<div class="admin-user-info svelte-4q792t"><span class="admin-user-name svelte-4q792t"> </span> <span class="admin-user-meta svelte-4q792t"> </span></div> <div class="admin-user-actions svelte-4q792t"><button type="button" class="admin-btn-secondary svelte-4q792t">Edit</button> <button type="button" class="admin-btn-danger svelte-4q792t">Delete</button></div>',1),_b=$('<li class="admin-user-item svelte-4q792t"><!></li>'),gb=$('<ul class="admin-user-list svelte-4q792t"></ul>'),mb=$('<div class="admin-users svelte-4q792t"><div class="admin-users-header svelte-4q792t"><h2 class="svelte-4q792t">Users</h2> <button type="button" class="admin-btn svelte-4q792t"> </button></div> <!> <!></div>');function bb(e,t){ne(t,!0);let n=z(fe([])),r=z(!0),s=z(null),a=z(!1),i=z(""),o=z(""),l=z(""),u=z("user"),f=z(null),v=z(null),d=z(""),m=z("user"),b=z("");async function k(){w(r,!0),w(s,null);try{const O=await fetch("/api/admin/users",{credentials:"include"});if(!O.ok)throw new Error("Failed to fetch users");w(n,await O.json(),!0)}catch(O){w(s,O instanceof Error?O.message:"Failed to load users",!0)}finally{w(r,!1)}}async function y(){w(f,null);try{const O=await fetch("/api/admin/users",{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({username:c(i),displayName:c(o)||c(i),password:c(l),role:c(u)})});if(!O.ok){const W=await O.json().catch(()=>({}));w(f,W.error||"Failed to create user",!0);return}w(i,""),w(o,""),w(l,""),w(u,"user"),w(a,!1),await k()}catch{w(f,"Network error")}}function E(O){w(v,O.id,!0),w(d,O.displayName,!0),w(m,O.role,!0),w(b,"")}async function h(){if(!c(v))return;const O={displayName:c(d),role:c(m)};c(b).trim()&&(O.password=c(b));try{if(!(await fetch(`/api/admin/users/${c(v)}`,{method:"PUT",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify(O)})).ok)return;w(v,null),await k()}catch{}}async function _(O){try{await fetch(`/api/admin/users/${O}`,{method:"DELETE",credentials:"include"}),await k()}catch{}}k();var x=mb(),R=g(x),I=A(g(R),2),C=g(I,!0);p(I),p(R);var j=A(R,2);{var D=O=>{var W=fb(),se=g(W);Ee(se);var Z=A(se,2);Ee(Z);var he=A(Z,2);Ee(he);var te=A(he,2),_e=g(te);_e.value=_e.__value="user";var we=A(_e);we.value=we.__value="admin",p(te);var ae=A(te,2),xe=A(ae,2);{var q=L=>{var J=ub(),ce=g(J,!0);p(J),U(()=>N(ce,c(f))),T(L,J)};F(xe,L=>{c(f)&&L(q)})}p(W),U(L=>ae.disabled=L,[()=>!c(i).trim()||!c(l).trim()]),Qe("submit",W,L=>{L.preventDefault(),y()}),Le(se,()=>c(i),L=>w(i,L)),Le(Z,()=>c(o),L=>w(o,L)),Le(he,()=>c(l),L=>w(l,L)),Gr(te,()=>c(u),L=>w(u,L)),T(O,W)};F(j,O=>{c(a)&&O(D)})}var P=A(j,2);{var S=O=>{var W=db();T(O,W)},M=O=>{var W=vb(),se=g(W,!0);p(W),U(()=>N(se,c(s))),T(O,W)},B=O=>{var W=gb();Te(W,21,()=>c(n),se=>se.id,(se,Z)=>{var he=_b(),te=g(he);{var _e=ae=>{var xe=hb(),q=g(xe);Ee(q);var L=A(q,2);Ee(L);var J=A(L,2),ce=g(J);ce.value=ce.__value="user";var ue=A(ce);ue.value=ue.__value="admin",p(J);var ie=A(J,2),ve=A(g(ie),2);p(ie),p(xe),Qe("submit",xe,oe=>{oe.preventDefault(),h()}),Le(q,()=>c(d),oe=>w(d,oe)),Le(L,()=>c(b),oe=>w(b,oe)),Gr(J,()=>c(m),oe=>w(m,oe)),H("click",ve,()=>{w(v,null)}),T(ae,xe)},we=ae=>{var xe=pb(),q=Ce(xe),L=g(q),J=g(L,!0);p(L);var ce=A(L,2),ue=g(ce);p(ce),p(q);var ie=A(q,2),ve=g(ie),oe=A(ve,2);p(ie),U(()=>{N(J,c(Z).displayName),N(ue,`${c(Z).username??""} · ${c(Z).role??""}`)}),H("click",ve,()=>E(c(Z))),H("click",oe,()=>_(c(Z).id)),T(ae,xe)};F(te,ae=>{c(v)===c(Z).id?ae(_e):ae(we,-1)})}p(he),T(se,he)}),p(W),T(O,W)};F(P,O=>{c(r)?O(S):c(s)?O(M,1):O(B,-1)})}p(x),U(()=>N(C,c(a)?"Cancel":"New user")),H("click",I,()=>{w(a,!c(a))}),T(e,x),re()}Se(["click"]);var yb=$('<p class="admin-muted svelte-1hsgdb4">Loading...</p>'),wb=$('<div class="admin-error svelte-1hsgdb4"> </div>'),kb=$('<div class="admin-auth-fields svelte-1hsgdb4"><label class="admin-toggle svelte-1hsgdb4"><input type="checkbox" class="svelte-1hsgdb4"/> <span>Require sign-in</span> <span class="admin-hint svelte-1hsgdb4">When enabled, unauthenticated visitors see a sign-in wall.</span></label> <label class="admin-toggle svelte-1hsgdb4"><input type="checkbox" class="svelte-1hsgdb4"/> <span>Allow guest browsing</span> <span class="admin-hint svelte-1hsgdb4">When sign-in is required, guests can still browse with session-only data.</span></label> <label class="admin-toggle svelte-1hsgdb4"><input type="checkbox" class="svelte-1hsgdb4"/> <span>Self-registration</span> <span class="admin-hint svelte-1hsgdb4">Visitors can create their own accounts from the sign-in screen.</span></label> <label class="admin-field svelte-1hsgdb4"><span class="svelte-1hsgdb4">Session lifetime (hours)</span> <input type="number" class="admin-input admin-input-sm svelte-1hsgdb4" min="1" max="8760"/></label> <button type="button" class="admin-btn svelte-1hsgdb4"> </button></div> <!>',1),Sb=$('<div class="admin-auth svelte-1hsgdb4"><h2 class="svelte-1hsgdb4">Auth Settings</h2> <!></div>');function Eb(e,t){ne(t,!0);let n=z(null),r=z(!0),s=z(!1),a=z(null);async function i(){w(r,!0);try{const d=await fetch("/api/admin/settings",{credentials:"include"});if(!d.ok)throw new Error("Failed to fetch settings");w(n,await d.json(),!0)}catch(d){w(a,d instanceof Error?d.message:"Failed to load settings",!0)}finally{w(r,!1)}}async function o(){if(c(n)){w(s,!0),w(a,null);try{const d=await fetch("/api/admin/settings",{method:"PUT",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify(c(n))});if(!d.ok)throw new Error("Failed to save settings");w(n,await d.json(),!0)}catch(d){w(a,d instanceof Error?d.message:"Failed to save",!0)}finally{w(s,!1)}}}i();var l=Sb(),u=A(g(l),2);{var f=d=>{var m=yb();T(d,m)},v=d=>{var m=kb(),b=Ce(m),k=g(b),y=g(k);Ee(y),Wt(4),p(k);var E=A(k,2),h=g(E);Ee(h),Wt(4),p(E);var _=A(E,2),x=g(_);Ee(x),Wt(4),p(_);var R=A(_,2),I=A(g(R),2);Ee(I),p(R);var C=A(R,2),j=g(C,!0);p(C),p(b);var D=A(b,2);{var P=S=>{var M=wb(),B=g(M,!0);p(M),U(()=>N(B,c(a))),T(S,M)};F(D,S=>{c(a)&&S(P)})}U(()=>{C.disabled=c(s),N(j,c(s)?"Saving...":"Save")}),zr(y,()=>c(n).auth.required,S=>c(n).auth.required=S),zr(h,()=>c(n).auth.guestAllowed,S=>c(n).auth.guestAllowed=S),zr(x,()=>c(n).auth.selfRegistration,S=>c(n).auth.selfRegistration=S),Le(I,()=>c(n).auth.sessionTTL,S=>c(n).auth.sessionTTL=S),H("click",C,o),T(d,m)};F(u,d=>{c(r)?d(f):c(n)&&d(v,1)})}p(l),T(e,l),re()}Se(["click"]);var xb=$('<div class="admin-error svelte-1gkiloq"> </div>'),Ab=$('<div class="admin-system svelte-1gkiloq"><h2 class="svelte-1gkiloq">System</h2> <div class="admin-system-info svelte-1gkiloq"><div class="admin-system-row svelte-1gkiloq"><span class="admin-system-label svelte-1gkiloq">Server version</span> <span> </span></div></div> <div class="admin-system-actions svelte-1gkiloq"><button type="button" class="admin-btn-danger svelte-1gkiloq"> </button> <!></div></div>');function Tb(e,t){ne(t,!0);let n=z("..."),r=z(!1),s=z(null);async function a(){try{const E=await fetch("/api/version");if(E.ok){const h=await E.json();w(n,h.version,!0)}}catch{}}async function i(){w(r,!0),w(s,null);try{const E=await fetch("/api/admin/restart",{method:"POST",credentials:"include"});if(!E.ok){const h=await E.json().catch(()=>({}));w(s,h.error||"Restart failed",!0),w(r,!1)}}catch{w(s,"Network error"),w(r,!1)}}a();var o=Ab(),l=A(g(o),2),u=g(l),f=A(g(u),2),v=g(f,!0);p(f),p(u),p(l);var d=A(l,2),m=g(d),b=g(m,!0);p(m);var k=A(m,2);{var y=E=>{var h=xb(),_=g(h,!0);p(h),U(()=>N(_,c(s))),T(E,h)};F(k,E=>{c(s)&&E(y)})}p(d),p(o),U(()=>{N(v,c(n)),m.disabled=c(r),N(b,c(r)?"Restarting...":"Restart server")}),H("click",m,i),T(e,o),re()}Se(["click"]);var Ib=$('<div class="admin-error svelte-1afg5z5"> </div>'),$b=$('<form class="admin-create-form svelte-1afg5z5"><input class="admin-input svelte-1afg5z5" type="text" placeholder="Key label"/> <button type="submit" class="admin-btn svelte-1afg5z5">Create</button> <!></form>'),Cb=$('<p class="admin-muted svelte-1afg5z5">Loading...</p>'),Rb=$('<p class="admin-error svelte-1afg5z5"> </p>'),Pb=$('<p class="admin-muted svelte-1afg5z5">No API keys. Create one to enable external access.</p>'),Lb=$('<button type="button" class="admin-btn-danger svelte-1afg5z5">Confirm</button> <button type="button" class="admin-btn-secondary svelte-1afg5z5">Cancel</button>',1),Db=$('<button type="button" class="admin-btn-danger svelte-1afg5z5">Revoke</button>'),Ob=$('<li class="admin-key-item svelte-1afg5z5"><div class="admin-key-info svelte-1afg5z5"><span class="admin-key-label svelte-1afg5z5"> </span> <span class="admin-key-meta svelte-1afg5z5"> </span> <code class="admin-key-value svelte-1afg5z5"> </code></div> <div class="admin-key-actions svelte-1afg5z5"><button type="button" class="admin-btn-secondary svelte-1afg5z5"> </button> <!></div></li>'),Nb=$('<ul class="admin-key-list svelte-1afg5z5"></ul>'),zb=$('<div class="admin-keys svelte-1afg5z5"><div class="admin-keys-header svelte-1afg5z5"><h2 class="svelte-1afg5z5">API Keys</h2> <button type="button" class="admin-btn svelte-1afg5z5"> </button></div> <!> <!></div>');function Mb(e,t){ne(t,!0);let n=z(fe([])),r=z(!0),s=z(null),a=z(!1),i=z(""),o=z(null),l=z(fe(new Set)),u=z(null);async function f(){w(r,!0),w(s,null);try{const S=await fetch("/api/admin/keys",{credentials:"include"});if(!S.ok)throw new Error("Failed to fetch keys");w(n,await S.json(),!0)}catch(S){w(s,S instanceof Error?S.message:"Failed to load keys",!0)}finally{w(r,!1)}}async function v(){w(o,null);try{const S=await fetch("/api/admin/keys",{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({label:c(i)})});if(!S.ok){const B=await S.json().catch(()=>({}));w(o,B.error||"Failed to create key",!0);return}const M=await S.json();c(l).add(M.id),w(l,new Set(c(l)),!0),w(i,""),w(a,!1),await f()}catch{w(o,"Network error")}}function d(S){c(l).has(S)?c(l).delete(S):c(l).add(S),w(l,new Set(c(l)),!0)}async function m(S){w(u,null);try{await fetch(`/api/admin/keys/${S}`,{method:"DELETE",credentials:"include"}),c(l).delete(S),w(l,new Set(c(l)),!0),await f()}catch{}}function b(S){return new Date(S).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}function k(S){return S.slice(0,8)+"…"+S.slice(-4)}f();var y=zb(),E=g(y),h=A(g(E),2),_=g(h,!0);p(h),p(E);var x=A(E,2);{var R=S=>{var M=$b(),B=g(M);Ee(B);var O=A(B,2),W=A(O,2);{var se=Z=>{var he=Ib(),te=g(he,!0);p(he),U(()=>N(te,c(o))),T(Z,he)};F(W,Z=>{c(o)&&Z(se)})}p(M),U(Z=>O.disabled=Z,[()=>!c(i).trim()]),Qe("submit",M,Z=>{Z.preventDefault(),v()}),Le(B,()=>c(i),Z=>w(i,Z)),T(S,M)};F(x,S=>{c(a)&&S(R)})}var I=A(x,2);{var C=S=>{var M=Cb();T(S,M)},j=S=>{var M=Rb(),B=g(M,!0);p(M),U(()=>N(B,c(s))),T(S,M)},D=S=>{var M=Pb();T(S,M)},P=S=>{var M=Nb();Te(M,21,()=>c(n),B=>B.id,(B,O)=>{var W=Ob(),se=g(W),Z=g(se),he=g(Z,!0);p(Z);var te=A(Z,2),_e=g(te);p(te);var we=A(te,2),ae=g(we,!0);p(we),p(se);var xe=A(se,2),q=g(xe),L=g(q,!0);p(q);var J=A(q,2);{var ce=ie=>{var ve=Lb(),oe=Ce(ve),zt=A(oe,2);H("click",oe,()=>m(c(O).id)),H("click",zt,()=>{w(u,null)}),T(ie,ve)},ue=ie=>{var ve=Db();H("click",ve,()=>{w(u,c(O).id,!0)}),T(ie,ve)};F(J,ie=>{c(u)===c(O).id?ie(ce):ie(ue,-1)})}p(xe),p(W),U((ie,ve,oe)=>{N(he,c(O).label),N(_e,`${c(O).id??""} · ${ie??""}`),N(ae,ve),N(L,oe)},[()=>b(c(O).createdAt),()=>c(l).has(c(O).id)?c(O).key:k(c(O).key),()=>c(l).has(c(O).id)?"Hide":"Reveal"]),H("click",q,()=>d(c(O).id)),T(B,W)}),p(M),T(S,M)};F(I,S=>{c(r)?S(C):c(s)?S(j,1):c(n).length===0?S(D,2):S(P,-1)})}p(y),U(()=>N(_,c(a)?"Cancel":"New key")),H("click",h,()=>{w(a,!c(a))}),T(e,y),re()}Se(["click"]);const jb={manifest:{id:"sh3-admin",label:"Admin",version:Ft,views:[{id:"sh3-admin:users",label:"Users"},{id:"sh3-admin:auth",label:"Auth Settings"},{id:"sh3-admin:system",label:"System"},{id:"sh3-admin:keys",label:"API Keys"}]},activate(e){const t={mount(a,i){const o=je(bb,{target:a});return{unmount(){Ge(o)}}}},n={mount(a,i){const o=je(Eb,{target:a});return{unmount(){Ge(o)}}}},r={mount(a,i){const o=je(Tb,{target:a});return{unmount(){Ge(o)}}}},s={mount(a,i){const o=je(Mb,{target:a});return{unmount(){Ge(o)}}}};e.registerView("sh3-admin:users",t),e.registerView("sh3-admin:auth",n),e.registerView("sh3-admin:system",r),e.registerView("sh3-admin:keys",s)}},qb={manifest:{id:"sh3-admin-app",label:"Admin",version:Ft,requiredShards:["sh3-admin"],layoutVersion:1,admin:!0},initialLayout:{type:"tabs",activeTab:0,tabs:[{slotId:"admin.users",viewId:"sh3-admin:users",label:"Users"},{slotId:"admin.auth",viewId:"sh3-admin:auth",label:"Auth"},{slotId:"admin.system",viewId:"sh3-admin:system",label:"System"},{slotId:"admin.keys",viewId:"sh3-admin:keys",label:"Keys"}]}},Vb={id:"terminal",label:"Terminal",version:Ft,requiredShards:["shell"],layoutVersion:1},Ub={manifest:Vb,initialLayout:{type:"slot",slotId:"terminal.main",viewId:"shell:terminal"}},ro="sh3:migrations:shell-rename:done",so="__shell__:",Bb="__sh3core__:",ao="sh3:user:__shell__:theme",io="sh3:user:__sh3core__:theme";function Fb(e,t){if(t.getItem(ro))return;const n=t.getItem(ao);n!==null&&t.getItem(io)===null&&(t.setItem(io,n),t.removeItem(ao));for(const r of e.keys()){if(!r.startsWith(so))continue;const s=Bb+r.slice(so.length),a=e.read(r);e.write(s,a),e.delete(r)}t.setItem(ro,"1")}function oo(e){ws(e)}function Hb(){const e=At.workspace;return{keys:()=>e.list(),read:t=>e.read(t),write:(t,n)=>e.write(t,n),delete:t=>e.delete(t)}}async function Kb(e){typeof globalThis.localStorage<"u"&&Fb(Hb(),globalThis.localStorage);const t=new Set(e?.excludeShards),n=[_g,Am,lb,jb];for(const a of n)t.has(a.manifest.id)||ws(a);const r=[cb,qb,Ub];for(const a of r)ur(a);await Dm();for(const[a,i]of Dt)i.autostart&&await yc(a);const s=O_();s&&Ar.has(s)&&await fr(s)}const Yb="modulepreload",Wb=function(e){return"/"+e},lo={},Gc=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),o=i?.nonce||i?.getAttribute("nonce");s=Promise.allSettled(n.map(l=>{if(l=Wb(l),l in lo)return;lo[l]=!0;const u=l.endsWith(".css"),f=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${f}`))return;const v=document.createElement("link");if(v.rel=u?"stylesheet":Yb,u||(v.as="script"),v.crossOrigin="",v.href=l,o&&v.setAttribute("nonce",o),document.head.appendChild(v),u)return new Promise((d,m)=>{v.addEventListener("load",d),v.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}function a(i){const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=i,window.dispatchEvent(o),!o.defaultPrevented)throw i}return s.then(i=>{for(const o of i||[])o.status==="rejected"&&a(o.reason);return t().catch(a)})};var Gb=$('<button type="button" aria-label="Expand pane"><span class="collapse-icon"> </span></button>'),Xb=$('<button type="button" aria-label="Collapse pane"><span class="collapse-icon"> </span></button>'),Jb=$('<!> <div class="pane-content svelte-1adl4o1"><!></div>',1),Zb=$('<div role="separator"></div>'),Qb=$("<div><!></div> <!>",1),ey=$("<div></div>");function ty(e,t){ne(t,!0);const n=40,r=28;let s;const a=b=>t.pinned?.[b]??"fr",i=b=>t.collapsed?.[b]??!1;function o(b){return i(b)?`0 0 ${r}px`:a(b)==="px"?`0 0 ${Math.max(n,t.sizes[b])}px`:`${Math.max(1e-4,t.sizes[b])} 1 0`}let l=z(null);function u(b,k){if(i(k)||i(k+1))return;b.preventDefault(),b.target.setPointerCapture(b.pointerId);const y=s.getBoundingClientRect(),E=t.direction==="horizontal"?y.width:y.height;let h=0,_=0;for(let x=0;x<t.sizes.length;x++)a(x)==="fr"?h+=t.sizes[x]:_+=Math.max(n,t.sizes[x]);w(l,{handleIndex:k,startClient:t.direction==="horizontal"?b.clientX:b.clientY,startSizes:t.sizes.slice(),containerPx:E,totalFr:h,frAvailPx:Math.max(1,E-_)},!0)}function f(b){if(!c(l))return;const y=(t.direction==="horizontal"?b.clientX:b.clientY)-c(l).startClient,E=c(l).handleIndex,h=E+1,_=a(E),x=a(h),R=c(l).totalFr/c(l).frAvailPx;if(_==="fr"&&x==="fr"){const I=n*R,C=y*R,j=c(l).startSizes[h]-I,D=-(c(l).startSizes[E]-I),P=Math.min(Math.max(C,D),j);t.onResize?.(E,c(l).startSizes[E]+P),t.onResize?.(h,c(l).startSizes[h]-P)}else if(_==="px"&&x==="fr"){const I=c(l).frAvailPx-n,C=n-c(l).startSizes[E];t.onResize?.(E,c(l).startSizes[E]+Math.min(Math.max(y,C),I))}else if(_==="fr"&&x==="px"){const I=c(l).startSizes[h]-n,C=-(c(l).frAvailPx-n);t.onResize?.(h,c(l).startSizes[h]-Math.min(Math.max(y,C),I))}else{const I=c(l).startSizes[h]-n,C=-(c(l).startSizes[E]-n),j=Math.min(Math.max(y,C),I);t.onResize?.(E,c(l).startSizes[E]+j),t.onResize?.(h,c(l).startSizes[h]-j)}}function v(b){c(l)&&(b.target.releasePointerCapture(b.pointerId),w(l,null))}var d=ey();let m;Te(d,21,()=>Array(t.count),Nn,(b,k,y)=>{var E=Qb(),h=Ce(E);let _;var x=g(h);{var R=P=>{var S=Gb();let M;var B=g(S),O=g(B,!0);p(B),p(S),U(()=>{M=ze(S,1,"collapse-header svelte-1adl4o1",null,M,{horizontal:t.direction==="horizontal",vertical:t.direction==="vertical"}),N(O,t.direction==="horizontal"?"▸":"▾")}),H("click",S,()=>t.onCollapseToggle?.(y,!1)),T(P,S)},I=G(()=>i(y)),C=P=>{var S=Jb(),M=Ce(S);{var B=se=>{var Z=Xb();let he;var te=g(Z),_e=g(te,!0);p(te),p(Z),U(()=>{he=ze(Z,1,"collapse-header expanded svelte-1adl4o1",null,he,{horizontal:t.direction==="horizontal",vertical:t.direction==="vertical"}),N(_e,t.direction==="horizontal"?"◂":"▴")}),H("click",Z,()=>t.onCollapseToggle?.(y,!0)),T(se,Z)};F(M,se=>{t.onCollapseToggle&&se(B)})}var O=A(M,2),W=g(O);Oa(W,()=>t.pane,()=>y),p(O),T(P,S)};F(x,P=>{c(I)?P(R):P(C,-1)})}p(h);var j=A(h,2);{var D=P=>{var S=Zb();let M;De(S,"data-testid",`splitter-handle-${y}`),U(B=>{M=ze(S,1,"splitter-handle svelte-1adl4o1",null,M,B),De(S,"aria-orientation",t.direction==="horizontal"?"vertical":"horizontal")},[()=>({dragging:c(l)?.handleIndex===y,disabled:i(y)||i(y+1)})]),H("pointerdown",S,B=>u(B,y)),H("pointermove",S,f),H("pointerup",S,v),Qe("pointercancel",S,v),H("dblclick",S,()=>t.onCollapseToggle?.(y,!i(y))),T(P,S)};F(j,P=>{y<t.count-1&&P(D)})}U((P,S)=>{_=ze(h,1,"splitter-pane svelte-1adl4o1",null,_,P),Nt(h,`flex: ${S??""};`)},[()=>({collapsed:i(y)}),()=>o(y)]),T(b,E)}),p(d),mt(d,b=>s=b,()=>s),U(()=>m=ze(d,1,"splitter svelte-1adl4o1",null,m,{horizontal:t.direction==="horizontal",vertical:t.direction==="vertical"})),T(e,d),re()}Se(["click","pointerdown","pointermove","pointerup","dblclick"]);function ny(e,t,n){if(!n)return null;const r=n.getBoundingClientRect(),s=t.filter(o=>!!o);if(s.length===0)return{left:4,top:2,height:r.height-4};const a=Math.max(0,Math.min(e,s.length));let i;return a===s.length?i=s[s.length-1].getBoundingClientRect().right:i=s[a].getBoundingClientRect().left,{left:i-r.left-1,top:2,height:r.height-4}}var ry=$('<span class="tab-dirty svelte-1kxcyhf" title="Unsaved changes"></span>'),sy=$('<span class="tab-icon svelte-1kxcyhf"> </span>'),ay=$('<span class="tab-close svelte-1kxcyhf" role="button" tabindex="-1" title="Close">&#x2715;</span>'),iy=$('<button type="button" role="tab"><!> <!> <span class="tab-label svelte-1kxcyhf"> </span> <!></button>'),oy=$('<div class="drop-indicator svelte-1kxcyhf"></div>'),ly=$("<div><!></div>"),cy=$('<div class="tabbed-panel svelte-1kxcyhf"><div class="tab-strip svelte-1kxcyhf" role="tablist" tabindex="-1"><!> <!></div> <div class="tab-body svelte-1kxcyhf" role="tabpanel"></div></div>');function uy(e,t){ne(t,!0);function n(y){t.clickGuard?.()||t.onActiveChange?.(y)}function r(y,E){E.stopPropagation(),t.onClose?.(y)}let s=z(void 0);const a=fe([]);let i=z(null);function o(y,E){if(!t.dragController)return;const h=a[y];h&&t.dragController.onPointerDown(y,E,h)}function l(y){if(!t.dragController||!t.dragController.isDragging||!c(s))return;const E=c(s).getBoundingClientRect(),h=a.filter(_=>!!_).map(_=>_.getBoundingClientRect());w(i,t.dragController.onStripHover(E,y.clientX,y.clientY,h),!0)}function u(){t.dragController&&(w(i,null),t.dragController.onStripLeave())}var f=cy(),v=g(f),d=g(v);Te(d,17,()=>t.labels,Nn,(y,E,h)=>{var _=iy();let x;var R=g(_);{var I=B=>{var O=ry();T(B,O)};F(R,B=>{t.dirty?.[h]&&B(I)})}var C=A(R,2);{var j=B=>{var O=sy(),W=g(O,!0);p(O),U(()=>N(W,t.icons[h])),T(B,O)};F(C,B=>{t.icons?.[h]&&B(j)})}var D=A(C,2),P=g(D,!0);p(D);var S=A(D,2);{var M=B=>{var O=ay();U(()=>De(O,"data-testid",t.tabIds?.[h]?`tab-close-${t.tabIds[h]}`:void 0)),H("click",O,W=>r(h,W)),H("keydown",O,W=>{(W.key==="Enter"||W.key===" ")&&r(h,W)}),T(B,O)};F(S,B=>{t.closable?.[h]&&B(M)})}p(_),mt(_,(B,O)=>a[O]=B,B=>a?.[B],()=>[h]),U(()=>{x=ze(_,1,"tab svelte-1kxcyhf",null,x,{active:t.activeTab===h}),De(_,"aria-selected",t.activeTab===h),N(P,c(E))}),H("click",_,()=>n(h)),H("pointerdown",_,B=>o(h,B)),Qe("auxclick",_,B=>{B.button===1&&t.closable?.[h]&&r(h,B)}),T(y,_)});var m=A(d,2);{var b=y=>{const E=G(()=>ny(c(i),a,c(s)));var h=qt(),_=Ce(h);{var x=R=>{var I=oy();U(()=>Nt(I,`left: ${c(E).left??""}px; height: ${c(E).height??""}px; top: ${c(E).top??""}px;`)),T(R,I)};F(_,R=>{c(E)&&R(x)})}T(y,h)};F(m,y=>{c(i)!==null&&t.dragController?.isDragging&&y(b)})}p(v),mt(v,y=>w(s,y),()=>c(s));var k=A(v,2);Te(k,21,()=>t.labels,Nn,(y,E,h)=>{var _=ly();let x;var R=g(_);Oa(R,()=>t.body,()=>h),p(_),U(()=>x=ze(_,1,"tab-body-pane svelte-1kxcyhf",null,x,{active:t.activeTab===h})),T(y,_)}),p(k),p(f),H("pointermove",v,l),Qe("pointerleave",v,u),T(e,f),re()}Se(["pointermove","click","pointerdown","keydown"]);var fy=$('no factory for <code class="svelte-1czj0s8"> </code>',1),dy=$("<em>empty slot</em>"),vy=$('<div class="slot-placeholder svelte-1czj0s8"><div class="slot-id svelte-1czj0s8"> </div> <div class="slot-meta svelte-1czj0s8"><!></div> <div class="slot-dims svelte-1czj0s8"> </div></div>'),hy=$('<div class="slot svelte-1czj0s8"><!></div>');function co(e,t){ne(t,!0);let n=zn(t,"label",3,""),r=z(void 0),s=z(0),a=z(0);const i=G(()=>t.node.viewId?!!fc(t.node.viewId):!1);Je(()=>{if(!c(r))return;const f=t.node.slotId,v=kc(f,t.node.viewId,n()||t.node.viewId||f);c(r).appendChild(v);const d=new ResizeObserver(m=>{for(const b of m){const k=b.contentRect;w(s,Math.round(k.width),!0),w(a,Math.round(k.height),!0)}});return d.observe(c(r)),()=>{d.disconnect(),Sc(f)}});var o=hy(),l=g(o);{var u=f=>{var v=vy(),d=g(v),m=g(d,!0);p(d);var b=A(d,2),k=g(b);{var y=x=>{var R=fy(),I=A(Ce(R)),C=g(I,!0);p(I),U(()=>N(C,t.node.viewId)),T(x,R)},E=x=>{var R=dy();T(x,R)};F(k,x=>{t.node.viewId?x(y):x(E,-1)})}p(b);var h=A(b,2),_=g(h);p(h),p(v),U(()=>{N(m,t.node.slotId),N(_,`${c(s)??""} × ${c(a)??""}`)}),T(f,v)};F(l,f=>{c(i)||f(u)})}p(o),mt(o,f=>w(r,f),()=>c(r)),U(()=>{De(o,"data-slot-id",t.node.slotId),De(o,"data-view-id",t.node.viewId??"")}),T(e,o),re()}const ee=fe({phase:"idle",source:null,pointerX:0,pointerY:0,target:null});let Xc=0;function py(){return performance.now()<Xc}const uo=4;let Jc=0,Zc=0;function _y(e,t,n,r,s){if(ee.phase!=="idle")return;const a=s.getBoundingClientRect();ee.phase="pending",ee.source={slotId:e,entry:t,sourceRoot:n,startRect:a,offsetX:r.clientX-a.left,offsetY:r.clientY-a.top},ee.pointerX=r.clientX,ee.pointerY=r.clientY,ee.target=null,Jc=r.clientX,Zc=r.clientY,gy()}function gy(){window.addEventListener("pointermove",Qc,!0),window.addEventListener("pointerup",eu,!0),window.addEventListener("pointercancel",tu,!0),document.body.style.userSelect="none",document.body.dataset.dragging=""}function my(){window.removeEventListener("pointermove",Qc,!0),window.removeEventListener("pointerup",eu,!0),window.removeEventListener("pointercancel",tu,!0),document.body.style.userSelect="",delete document.body.dataset.dragging}function Qc(e){if(ee.pointerX=e.clientX,ee.pointerY=e.clientY,ee.phase==="pending"){const t=e.clientX-Jc,n=e.clientY-Zc;t*t+n*n>=uo*uo&&(ee.phase="dragging")}}function eu(e){ee.phase==="dragging"&&(by(),Xc=performance.now()+50),nu()}function tu(e){nu()}function fo(e){const t=Mn.tree;if(e.kind==="docked")return t.docked;const n=t.floats.find(r=>r.id===e.floatId);return n?n.content:null}function vo(e){if(e.kind!=="float")return;const t=Mn.tree,n=t.floats.findIndex(r=>r.id===e.floatId);n<0||lc(t.floats[n].content)&&t.floats.splice(n,1)}function by(){const{source:e,target:t}=ee;if(!e||!t)return;const n=fo(e.sourceRoot),r=fo(t.root);if(!n||!r)return;if(t.kind==="strip"){const a=t.tabsNode.tabs.findIndex(i=>i.slotId===e.slotId);if(a>=0){M_(t.tabsNode,a,t.insertIndex),er(n),r!==n&&er(r),vo(e.sourceRoot);return}}const s=Ja(n,e.slotId);s&&(t.kind==="strip"?z_(t.tabsNode,s,t.insertIndex):Rc(r,t.path,s,t.side),er(n),r!==n&&er(r),vo(e.sourceRoot))}function nu(){ee.phase="idle",ee.source=null,ee.target=null,my()}function ha(e){ee.phase==="dragging"&&(ee.target=e)}function sr(e){ee.phase==="dragging"&&ee.target&&(e&&!e(ee.target)||(ee.target=null))}var yy=$("<div></div>"),wy=$('<div class="quad-target quad-left svelte-re71zu" data-testid="drop-zone-left"></div> <div class="quad-target quad-right svelte-re71zu" data-testid="drop-zone-right"></div> <div class="quad-target quad-top svelte-re71zu" data-testid="drop-zone-top"></div> <div class="quad-target quad-bottom svelte-re71zu" data-testid="drop-zone-bottom"></div>',1),ky=$("<div><!> <!></div>");function ho(e,t){ne(t,!0);let n=z(void 0),r=z(null);const s=G(()=>ee.phase==="dragging");function a(b,k,y){const E=y.left+y.width/2,h=y.top+y.height/2,_=b-E,x=k-h,R=_/y.width,I=x/y.height;return Math.abs(R)>Math.abs(I)?R<0?"left":"right":I<0?"top":"bottom"}function i(b){if(!c(n))return;const k=c(n).getBoundingClientRect();if(b.clientX<k.left||b.clientX>k.right||b.clientY<k.top||b.clientY>k.bottom){c(r)!==null&&(w(r,null),sr(E=>E.kind==="split"&&E.path.join("/")===t.path.join("/")));return}const y=a(b.clientX,b.clientY,k);if(y!==c(r)){w(r,y,!0);const E={kind:"split",root:t.rootRef,path:[...t.path],side:y};ha(E)}}function o(){c(r)!==null&&(w(r,null),sr(b=>b.kind==="split"&&b.path.join("/")===t.path.join("/")))}var l=ky();let u;var f=g(l);{var v=b=>{var k=yy();U(()=>ze(k,1,`quad-highlight quad-${c(r)??""}`,"svelte-re71zu")),T(b,k)};F(f,b=>{c(r)&&b(v)})}var d=A(f,2);{var m=b=>{var k=wy();Wt(6),T(b,k)};F(d,b=>{c(s)&&b(m)})}p(l),mt(l,b=>w(n,b),()=>c(n)),U(()=>u=ze(l,1,"slot-drop-zone svelte-re71zu",null,u,{active:c(s)})),H("pointermove",l,i),Qe("pointerleave",l,o),T(e,l),re()}Se(["pointermove"]);var Sy=$('<div class="tab-slot-wrapper svelte-1gw9g38"><!> <!></div>'),Ey=$('<div class="empty-tabs-custom svelte-1gw9g38"></div>'),xy=$('<div class="empty-tabs-default svelte-1gw9g38"><div class="empty-tabs-drop svelte-1gw9g38"></div></div>'),Ay=$('<div class="empty-tabs-placeholder svelte-1gw9g38"><!></div>'),Ty=$('<div class="leaf-slot-wrapper svelte-1gw9g38"><!> <!></div>');function li(e,t){ne(t,!0);let n=zn(t,"path",19,()=>[]),r=zn(t,"rootRef",19,()=>({kind:"docked"}));const s=G(()=>{let h;return r().kind==="docked"?h=Mn.root:h=Mn.tree.floats.find(x=>x.id===r().floatId)?.content??null,h?es(h,n()):null});function a(h){return{get isDragging(){return ee.phase==="dragging"},onPointerDown(_,x,R){const I=h.tabs[_];I&&_y(I.slotId,I,r(),x,R)},onStripHover(_,x,R,I){if(R<_.top||R>_.bottom)return sr(D=>D.kind==="strip"&&D.tabsNode===h),null;let C=I.length;for(let D=0;D<I.length;D++){const P=I[D],S=P.left+P.width/2;if(x<S){C=D;break}}const j=ee.source;if(j){const D=h.tabs.findIndex(P=>P.slotId===j.slotId);D>=0&&D<C&&(C-=1)}return ha({kind:"strip",root:r(),tabsNode:h,insertIndex:C}),C},onStripLeave(){sr(_=>_.kind==="strip"&&_.tabsNode===h)}}}function i(h){return h.type==="split"?h:null}function o(h){return h.type==="tabs"?h:null}function l(h){return h.type==="slot"?h:null}function u(h){return h.map(_=>S_(_.slotId)||void 0)}function f(h){return h.map(_=>k_(_.slotId)||void 0)}function v(h,_){const x=h[_];x&&Za(x.slotId)}function d(h,_){_(h)}function m(h,_){ee.phase==="dragging"&&ha({kind:"strip",root:r(),tabsNode:_,insertIndex:0})}function b(){sr(h=>h.kind==="strip"&&h.insertIndex===0)}var k=qt(),y=Ce(k);{var E=h=>{var _=qt(),x=Ce(_);{var R=j=>{const D=(S,M=st)=>{{let B=G(()=>[...n(),M()]);li(S,{get rootRef(){return r()},get path(){return c(B)}})}},P=G(()=>i(c(s)));ty(j,{get direction(){return c(P).direction},get sizes(){return c(P).sizes},get pinned(){return c(P).pinned},get collapsed(){return c(P).collapsed},get count(){return c(P).children.length},get pane(){return D},onResize:(S,M)=>c(P).sizes[S]=M,onCollapseToggle:(S,M)=>{c(P).collapsed||(c(P).collapsed=c(P).children.map(()=>!1)),c(P).collapsed[S]=M}})},I=j=>{const D=G(()=>o(c(s)));var P=qt(),S=Ce(P);{var M=O=>{const W=(Z,he=st)=>{const te=G(()=>c(D)?.tabs[he()]);var _e=qt(),we=Ce(_e);{var ae=xe=>{var q=Sy(),L=g(q);{let ce=G(()=>({type:"slot",slotId:c(te).slotId,viewId:c(te).viewId}));co(L,{get node(){return c(ce)},get label(){return c(te).label}})}var J=A(L,2);ho(J,{get rootRef(){return r()},get path(){return n()}}),p(q),T(xe,q)};F(we,xe=>{c(te)&&xe(ae)})}T(Z,_e)},se=G(()=>a(c(D)));{let Z=G(()=>c(D).tabs.map(ae=>ae.label)),he=G(()=>c(D).tabs.map(ae=>ae.icon)),te=G(()=>u(c(D).tabs)),_e=G(()=>f(c(D).tabs)),we=G(()=>c(D).tabs.map(ae=>ae.slotId));uy(O,{get labels(){return c(Z)},get icons(){return c(he)},get activeTab(){return c(D).activeTab},onActiveChange:ae=>c(D).activeTab=ae,get body(){return W},get dragController(){return c(se)},get clickGuard(){return py},get closable(){return c(te)},get dirty(){return c(_e)},onClose:ae=>v(c(D).tabs,ae),get tabIds(){return c(we)}})}},B=O=>{var W=Ay(),se=g(W);{var Z=te=>{var _e=Ey();Kl(_e,(we,ae)=>d?.(we,ae),()=>c(D).emptyRenderer),T(te,_e)},he=te=>{var _e=xy(),we=g(_e);p(_e),H("pointermove",we,ae=>m(ae,c(D))),Qe("pointerleave",we,b),T(te,_e)};F(se,te=>{c(D).emptyRenderer?te(Z):te(he,-1)})}p(W),T(O,W)};F(S,O=>{c(D)&&c(D).tabs.length>0?O(M):c(D)?.persistent&&O(B,1)})}T(j,P)},C=j=>{const D=G(()=>l(c(s)));var P=Ty(),S=g(P);co(S,{get node(){return c(D)}});var M=A(S,2);ho(M,{get rootRef(){return r()},get path(){return n()}}),p(P),T(j,P)};F(x,j=>{c(s).type==="split"?j(R):c(s).type==="tabs"?j(I,1):j(C,-1)})}T(h,_)};F(y,h=>{c(s)&&h(E)})}T(e,k),re()}Se(["pointermove"]);var Iy=$('<span class="drag-preview-icon svelte-133fiip"> </span>'),$y=$('<div class="drag-preview svelte-133fiip"><!> <span class="drag-preview-label svelte-133fiip"> </span></div>');function Cy(e,t){ne(t,!0);const n=G(()=>ee.phase==="dragging"&&!!ee.source),r=G(()=>ee.source?ee.pointerX-ee.source.offsetX:0),s=G(()=>ee.source?ee.pointerY-ee.source.offsetY:0),a=G(()=>ee.source?.startRect.width??0),i=G(()=>ee.source?.startRect.height??0),o=G(()=>ee.source?.entry.label??""),l=G(()=>ee.source?.entry.icon);var u=qt(),f=Ce(u);{var v=d=>{var m=$y(),b=g(m);{var k=h=>{var _=Iy(),x=g(_,!0);p(_),U(()=>N(x,c(l))),T(h,_)};F(b,h=>{c(l)&&h(k)})}var y=A(b,2),E=g(y,!0);p(y),p(m),U(()=>{Nt(m,`left: ${c(r)??""}px; top: ${c(s)??""}px; width: ${c(a)??""}px; height: ${c(i)??""}px;`),N(E,c(o))}),T(d,m)};F(f,d=>{c(n)&&d(v)})}T(e,u),re()}var Ry=$('<div class="sh3-float-frame svelte-1p734al" role="dialog" tabindex="-1"><header class="sh3-float-header svelte-1p734al"><span class="sh3-float-title svelte-1p734al"> </span> <button class="sh3-float-close svelte-1p734al" aria-label="Close float">×</button></header> <div class="sh3-float-body svelte-1p734al"><!></div></div>');function Py(e,t){ne(t,!0);const n=zn(t,"entry",7);let r=z(!1),s={x:0,y:0};function a(h){if(h.button!==0||h.target.closest(".sh3-float-close"))return;h.currentTarget.setPointerCapture(h.pointerId),w(r,!0),s={x:h.clientX-n().position.x,y:h.clientY-n().position.y},un.focus(n().id)}function i(h){c(r)&&(n().position.x=h.clientX-s.x,n().position.y=h.clientY-s.y)}function o(h){if(!c(r))return;w(r,!1);const _=h.currentTarget;_.hasPointerCapture(h.pointerId)&&_.releasePointerCapture(h.pointerId)}function l(){un.focus(n().id)}function u(h){h.stopPropagation(),un.close(n().id)}var f=Ry();let v;var d=g(f),m=g(d),b=g(m,!0);p(m);var k=A(m,2);p(d);var y=A(d,2),E=g(y);{let h=G(()=>({kind:"float",floatId:n().id}));li(E,{get rootRef(){return c(h)},path:[]})}p(y),p(f),U(()=>{De(f,"aria-label",n().title??"Float panel"),v=Nt(f,"",v,{left:`${n().position.x??""}px`,top:`${n().position.y??""}px`,width:`${n().size.w??""}px`,height:`${n().size.h??""}px`}),N(b,n().title??n().content.type)}),H("click",f,l),H("pointerdown",d,a),H("pointermove",d,i),H("pointerup",d,o),Qe("pointercancel",d,o),H("click",k,u),T(e,f),re()}Se(["click","pointerdown","pointermove","pointerup"]);var Ly=$('<div class="sh3-float-layer svelte-1rzcset"></div>');function Dy(e,t){ne(t,!0);const n=G(()=>Mn.floats);var r=Ly();Te(r,21,()=>c(n),s=>s.id,(s,a)=>{Py(s,{get entry(){return c(a)}})}),p(r),T(e,r),re()}const po="/assets/icons-CnAqUqbR.svg";var Oy=$('<div class="guest-signin-error svelte-pymkh"> </div>'),Ny=$('<div class="guest-signin-overlay svelte-pymkh" role="dialog"><div class="guest-signin-card svelte-pymkh"><form class="guest-signin-form svelte-pymkh"><input class="guest-signin-input svelte-pymkh" type="text" placeholder="Username" autocomplete="username"/> <input class="guest-signin-input svelte-pymkh" type="password" placeholder="Password" autocomplete="current-password"/> <div class="guest-signin-actions svelte-pymkh"><button type="submit" class="guest-signin-btn svelte-pymkh"> </button> <button type="button" class="guest-signin-cancel svelte-pymkh">Cancel</button></div></form> <!></div></div>'),zy=$('<div class="guest-banner svelte-pymkh"><span class="guest-banner-text">Browsing as guest. Sign in to save your work.</span> <button type="button" class="guest-banner-action svelte-pymkh">Sign in</button></div> <!>',1),My=$('<div class="guest-banner-slot"><!></div>');function jy(e,t){ne(t,!0);let n=z(!1),r=z(""),s=z(""),a=z(null),i=z(!1);async function o(){if(!c(r).trim()||!c(s).trim()||c(i))return;w(i,!0),w(a,null);const d=await hc(c(r).trim(),c(s).trim());w(i,!1),d.ok?w(n,!1):w(a,d.error,!0)}var l=My(),u=g(l);{var f=d=>{var m=zy(),b=Ce(m),k=A(g(b),2);p(b);var y=A(b,2);{var E=h=>{var _=Ny(),x=g(_),R=g(x),I=g(R);Ee(I);var C=A(I,2);Ee(C);var j=A(C,2),D=g(j),P=g(D,!0);p(D);var S=A(D,2);p(j),p(R);var M=A(R,2);{var B=O=>{var W=Oy(),se=g(W,!0);p(W),U(()=>N(se,c(a))),T(O,W)};F(M,O=>{c(a)&&O(B)})}p(x),p(_),U(O=>{I.disabled=c(i),C.disabled=c(i),D.disabled=O,N(P,c(i)?"Signing in...":"Sign in")},[()=>c(i)||!c(r).trim()||!c(s).trim()]),Qe("submit",R,O=>{O.preventDefault(),o()}),Le(I,()=>c(r),O=>w(r,O)),Le(C,()=>c(s),O=>w(s,O)),H("click",S,()=>{w(n,!1),w(a,null)}),T(h,_)};F(y,h=>{c(n)&&h(E)})}H("click",k,()=>{w(n,!0)}),T(d,m)},v=G(()=>_c());F(u,d=>{c(v)&&d(f)})}p(l),T(e,l),re()}Se(["click"]);var qy=$('<button type="button" class="shell-tabbar-signout svelte-187fra4" title="Sign out"><svg class="shell-tabbar-signout-icon svelte-187fra4" aria-hidden="true"><use></use></svg></button>'),Vy=$('<div class="shell-tabbar-user svelte-187fra4"><span class="shell-tabbar-user-name svelte-187fra4"> </span> <span class="shell-tabbar-tag svelte-187fra4"> </span> <!></div>'),Uy=$('<div class="shell-overlay-root svelte-187fra4"><!></div>'),By=$('<div class="shell svelte-187fra4"><header class="shell-tabbar svelte-187fra4" data-shell-region="tabbar"><button type="button" class="shell-tabbar-home-button svelte-187fra4" title="Home"><svg class="shell-tabbar-home-icon svelte-187fra4" aria-hidden="true"><use></use></svg></button> <span class="shell-tabbar-brand svelte-187fra4">SH3</span> <!></header> <!> <main class="shell-content svelte-187fra4" data-shell-region="content" data-shell-layer="0"><!></main> <footer class="shell-statusbar svelte-187fra4" data-shell-region="statusbar"></footer> <div class="shell-overlays svelte-187fra4" aria-hidden="true"></div></div>');function Fy(e,t){ne(t,!0);const n=G(pc),r=G(Ya),s=G(nn),a=G(()=>Ic()==="home"),i=[{layer:1,name:"floating"},{layer:2,name:"drag-preview"},{layer:3,name:"popup"},{layer:4,name:"modal"},{layer:5,name:"toast"},{layer:6,name:"command"}],o=fe({});Je(()=>{for(const{name:_}of i){const x=o[_];x&&ap(_,x)}return()=>{for(const{name:_}of i)ip(_)}}),Je(()=>{function _(x){if(x.key!=="²"||!c(s))return;const R=x.target;if(R){const I=R.tagName;if(I==="INPUT"||I==="TEXTAREA"||R.isContentEditable)return}x.preventDefault(),As("shell:terminal")||un.open("shell:terminal",{title:"Shell"})}return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)}),Je(()=>{const _=Mn.tree;return $p(_.floats,()=>({w:window.innerWidth,h:window.innerHeight})),()=>Cp()});var l=By(),u=g(l),f=g(u),v=g(f),d=g(v);p(v),p(f);var m=A(f,4);{var b=_=>{var x=Vy(),R=g(x),I=g(R,!0);p(R);var C=A(R,2),j=g(C,!0);p(C);var D=A(C,2);{var P=M=>{var B=qy(),O=g(B),W=g(O);p(O),p(B),U(()=>De(W,"href",`${po}#log-out`)),H("click",B,()=>c_()),T(M,B)},S=G(()=>!f_());F(D,M=>{c(S)&&M(P)})}p(x),U(()=>{N(I,c(r).displayName),N(j,c(s)?"admin":"user")}),T(_,x)};F(m,_=>{c(n)&&c(r)&&_(b)})}p(u);var k=A(u,2);jy(k,{});var y=A(k,2),E=g(y);li(E,{}),p(y);var h=A(y,4);Te(h,21,()=>i,({layer:_,name:x})=>_,(_,x)=>{let R=()=>c(x).layer,I=()=>c(x).name;var C=Uy(),j=g(C);{var D=S=>{Dy(S,{})},P=S=>{Cy(S,{})};F(j,S=>{I()==="floating"?S(D):I()==="drag-preview"&&S(P,1)})}p(C),mt(C,(S,M)=>o[M]=S,S=>o?.[S],()=>[I()]),U(()=>{De(C,"data-shell-overlay",I()),De(C,"data-shell-layer",R()),Nt(C,`z-index: var(--shell-z-layer-${R()??""});`)}),T(_,C)}),p(h),p(l),U(()=>{f.disabled=c(a),De(d,"href",`${po}#house`)}),H("click",f,()=>Cc()),T(e,l),re()}Se(["click"]);async function Hy(){try{const{TauriStoreBackend:e}=await Gc(async()=>{const{TauriStoreBackend:r}=await import("./tauri-backend-B3LR3-lo.js");return{TauriStoreBackend:r}},[]),t=new e("workspace"),n=new e("user");return await Promise.all([t.init(),n.init()]),{backends:{workspace:t,user:n},localOwner:!0}}catch{return{backends:null,localOwner:wo}}}var Ky=$('<button type="button" class="signin-link svelte-lh4k15">Create an account</button>'),Yy=$('<form class="signin-form svelte-lh4k15"><input class="signin-input svelte-lh4k15" type="text" placeholder="Username" autocomplete="username"/> <input class="signin-input svelte-lh4k15" type="password" placeholder="Password" autocomplete="current-password"/> <button type="submit" class="signin-btn svelte-lh4k15"> </button></form> <!>',1),Wy=$('<form class="signin-form svelte-lh4k15"><input class="signin-input svelte-lh4k15" type="text" placeholder="Username" autocomplete="username"/> <input class="signin-input svelte-lh4k15" type="text" placeholder="Display name (optional)"/> <input class="signin-input svelte-lh4k15" type="password" placeholder="Password" autocomplete="new-password"/> <button type="submit" class="signin-btn svelte-lh4k15"> </button></form> <button type="button" class="signin-link svelte-lh4k15">Back to sign in</button>',1),Gy=$('<div class="signin-error svelte-lh4k15"> </div>'),Xy=$('<div class="signin-wall svelte-lh4k15"><div class="signin-card svelte-lh4k15"><h1 class="signin-brand svelte-lh4k15">SH3</h1> <!> <!></div></div>');function Jy(e,t){ne(t,!0);let n=z("login"),r=z(""),s=z(""),a=z(""),i=z(null),o=z(!1);async function l(){if(!c(r).trim()||!c(s).trim()||c(o))return;w(o,!0),w(i,null);const h=await hc(c(r).trim(),c(s).trim());w(o,!1),h.ok?t.onSuccess():w(i,h.error,!0)}async function u(){if(!c(r).trim()||!c(s).trim()||c(o))return;w(o,!0),w(i,null);const h=await l_(c(r).trim(),c(s).trim(),c(a).trim()||void 0);w(o,!1),h.ok?t.onSuccess():w(i,h.error,!0)}function f(h){w(n,h,!0),w(i,null)}var v=Xy(),d=g(v),m=A(g(d),2);{var b=h=>{var _=Yy(),x=Ce(_),R=g(x);Ee(R);var I=A(R,2);Ee(I);var C=A(I,2),j=g(C,!0);p(C),p(x);var D=A(x,2);{var P=S=>{var M=Ky();H("click",M,()=>f("register")),T(S,M)};F(D,S=>{t.selfRegistration&&S(P)})}U(S=>{R.disabled=c(o),I.disabled=c(o),C.disabled=S,N(j,c(o)?"Signing in...":"Sign in")},[()=>c(o)||!c(r).trim()||!c(s).trim()]),Qe("submit",x,S=>{S.preventDefault(),l()}),Le(R,()=>c(r),S=>w(r,S)),Le(I,()=>c(s),S=>w(s,S)),T(h,_)},k=h=>{var _=Wy(),x=Ce(_),R=g(x);Ee(R);var I=A(R,2);Ee(I);var C=A(I,2);Ee(C);var j=A(C,2),D=g(j,!0);p(j),p(x);var P=A(x,2);U(S=>{R.disabled=c(o),I.disabled=c(o),C.disabled=c(o),j.disabled=S,N(D,c(o)?"Creating...":"Create account")},[()=>c(o)||!c(r).trim()||!c(s).trim()]),Qe("submit",x,S=>{S.preventDefault(),u()}),Le(R,()=>c(r),S=>w(r,S)),Le(I,()=>c(a),S=>w(a,S)),Le(C,()=>c(s),S=>w(s,S)),H("click",P,()=>f("login")),T(h,_)};F(m,h=>{c(n)==="login"?h(b):h(k,-1)})}var y=A(m,2);{var E=h=>{var _=Gy(),x=g(_,!0);p(_),U(()=>N(x,c(i))),T(h,_)};F(y,h=>{c(i)&&h(E)})}p(d),p(v),T(e,v),re()}Se(["click"]);async function Zy(e){const t=e?.serverUrl??"",n=await Hy();n.backends&&(Vi("workspace",n.backends.workspace),Vi("user",n.backends.user)),n.localOwner&&u_(),gc(t),tg();const r=typeof e?.target=="string"?document.querySelector(e.target):e?.target??document.getElementById("app");if(!r)throw new Error("SH3: mount target not found");let s=null;if(!n.localOwner)try{const i=await fetch(`${t}/api/boot`,{credentials:"include"});i.ok&&(s=await i.json())}catch{}if(n.localOwner)Bs("local");else if(s){Gi(t,s),Bs(s.tenantId);const{auth:i,session:o}=s;if(!o&&i.required&&!i.guestAllowed){await Qy(r,s);const l=await fetch(`${t}/api/boot`,{credentials:"include"});l.ok&&(s=await l.json(),Gi(t,s),Bs(s.tenantId))}}if(e?.discoveredPackages?.length){const{loadBundleModule:i}=await Gc(async()=>{const{loadBundleModule:o}=await Promise.resolve().then(()=>$m);return{loadBundleModule:o}},void 0);for(const o of e.discoveredPackages)try{const l=await fetch(o.bundleUrl);if(!l.ok){console.warn(`[sh3] Failed to fetch discovered package "${o.id}": HTTP ${l.status}`);continue}const u=await l.arrayBuffer(),f=await i(u);for(const v of f.shards)oo(v);for(const v of f.apps)ur(v);console.log(`[sh3] Loaded discovered package: ${o.id}`)}catch(l){console.warn(`[sh3] Failed to load discovered package "${o.id}":`,l)}}if(e?.shards)for(const i of e.shards)oo(i);if(e?.apps)for(const i of e.apps)ur(i);const a={};e?.excludeShards&&(a.excludeShards=e.excludeShards),await Kb(a),je(Fy,{target:r})}function Qy(e,t){return new Promise(n=>{const r=je(Jy,{target:e,props:{selfRegistration:t.auth.selfRegistration,onSuccess:()=>{Ge(r),n()}}})})}const ci=window.location.origin;gc(ci);o_(new Qp(ci));let ru=[];try{const e=await fetch("/api/packages");e.ok&&(ru=await e.json())}catch{}await Zy({discoveredPackages:ru,serverUrl:ci});
12
+ //# sourceMappingURL=index-25fXNyG3.js.map