oxframe-cli 0.12.2

The `oxframe` command: create, preview with hot reload, render and check oxframe projects
1
2
(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))n(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const a of i.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function r(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(s){if(s.ep)return;s.ep=!0;const i=r(s);fetch(s.href,i)}})();const nn=!1;var sn=Array.isArray,as=Array.prototype.indexOf,Bt=Array.prototype.includes,ir=Array.from,an=Object.defineProperty,yt=Object.getOwnPropertyDescriptor,os=Object.getOwnPropertyDescriptors,ls=Object.prototype,us=Array.prototype,on=Object.getPrototypeOf,jr=Object.isExtensible;const cs=()=>{};function fs(t){for(var e=0;e<t.length;e++)t[e]()}function ln(){var t,e,r=new Promise((n,s)=>{t=n,e=s});return{promise:r,resolve:t,reject:e}}const _e=2,Mt=4,ar=8,un=1<<24,qe=16,Ve=32,st=64,_r=128,Rr=256,Le=512,le=1024,se=2048,Re=4096,we=8192,he=16384,Ct=32768,Ut=1<<25,Et=65536,Qt=1<<17,ds=1<<18,Ft=1<<19,hs=1<<20,Ye=1<<25,er=1<<21,kt=1<<22,nt=1<<23,Dt=Symbol("$state"),cn=Symbol("component"),vs=Symbol("legacy props"),ps=Symbol(""),fn=Symbol("attributes"),gr=Symbol("class"),br=Symbol("style"),wr=Symbol("text"),Xt=new class extends Error{name="StaleReactionError";message="The reaction that called `getAbortSignal()` was re-run or destroyed"},ms=!!globalThis.document?.contentType&&globalThis.document.contentType.includes("xml"),_s=1,gs=2,dn=4,bs=8,ws=16,ys=1,ks=4,xs=8,Ms=16,Es=1,Ss=2,hn={},oe=Symbol("uninitialized"),Ts="http://www.w3.org/1999/xhtml";function As(){console.warn("https://svelte.dev/e/derived_inert")}function Ps(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function vn(t){return t===this.v}function Cs(t,e){return t!=t?e==e:t!==e||t!==null&&typeof t=="object"||typeof t=="function"}function pn(t){return!Cs(t,this.v)}function mn(t){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function Fs(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Rs(t,e,r){throw new Error("https://svelte.dev/e/each_key_duplicate")}function Os(t){throw new Error("https://svelte.dev/e/effect_in_teardown")}function zs(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Is(t){throw new Error("https://svelte.dev/e/effect_orphan")}function qs(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Ns(t){throw new Error("https://svelte.dev/e/props_invalid_value")}function Ds(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Ls(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Vs(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function Bs(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}let Us=!1,ve=null;function St(t){ve=t}function at(t,e=!1,r){ve={p:ve,i:!1,c:null,e:null,s:t,x:null,r:K,l:null}}function ot(t){var e=ve,r=e.e;if(r!==null){e.e=null;for(var n of r)zn(n)}return e.i=!0,ve=e.p,Or(t)}function Or(t={}){return an(t,cn,{value:!0}),t}function _n(){return!0}let wt=[];function Ys(){var t=wt;wt=[],fs(t)}function Ze(t){if(wt.length===0){var e=wt;queueMicrotask(()=>{e===wt&&Ys()})}wt.push(t)}const js=-7169;function ne(t,e){t.f=t.f&js|e}function zr(t){(t.f&Le)!==0||t.deps===null?ne(t,le):ne(t,Re)}function gn(t,e,r){(t.f&se)!==0?e.add(t):(t.f&Re)!==0&&r.add(t),ne(t,le)}function Wt(t){var e=j,r=K;Oe(null),We(null);try{return t()}finally{Oe(e),We(r)}}function Hs(t,e,r,n){const s=Yt;var i=t.filter(d=>!d.settled),a=e.map(s);if(r.length===0&&i.length===0){n(a);return}var l=K,u=Xs(),c=i.length===1?i[0].promise:i.length>1?Promise.all(i.map(d=>d.promise)):null;function h(d){if((l.f&he)===0){u();try{n([...a,...d])}catch(g){Ue(g,l)}tr()}}var v=bn();if(r.length===0){c.then(()=>h([])).finally(v);return}function m(){Promise.all(r.map(d=>Ws(d))).then(h).catch(d=>Ue(d,l)).finally(v)}c?c.then(()=>{if((l.f&he)!==0){v();return}u(),m(),tr()}):m()}function Xs(){var t=K,e=j,r=ve,n=G;return function(i=!0){We(t),Oe(e),St(r),i&&(t.f&he)===0&&(n?.activate(),n?.apply())}}function tr(t=!0){We(null),Oe(null),St(null),t&&G?.deactivate()}function bn(){var t=K,e=t.b,r=G,n=!!e?.is_rendered();return e?.update_pending_count(1,r),r.increment(n,t),()=>{e?.update_pending_count(-1,r),r.decrement(n,t)}}function Yt(t){var e=_e|se;return K!==null&&(K.f|=Ft),{ctx:ve,deps:null,effects:null,equals:vn,f:e,fn:t,reactions:null,rv:0,v:oe,wv:0,parent:K,ac:null}}const It=Symbol("obsolete");function Ws(t,e,r){let n=K;n===null&&Fs();var s=void 0,i=vt(oe),a=!j,l=new Set;return oi(()=>{var u=K,c=ln();s=c.promise;try{Promise.resolve(t()).then(c.resolve,d=>{d!==Xt&&c.reject(d)}).finally(tr)}catch(d){c.reject(d),tr()}var h=G;if(a){if((u.f&Ct)!==0)var v=bn();if(n.b?.is_rendered())h.async_deriveds.get(u)?.reject(It);else for(const d of l.values())d.reject(It);l.add(c),h.async_deriveds.set(u,c)}const m=(d,g=void 0)=>{v?.(),l.delete(c),g!==It&&(h.activate(),g?(i.f|=nt,Tt(i,g)):((i.f&nt)!==0&&(i.f^=nt),Tt(i,d)),h.deactivate())};c.promise.then(m,d=>m(null,d||"unknown"))}),On(()=>{for(const u of l)u.reject(It)}),new Promise(u=>{function c(h){function v(){h===s?u(i):c(s)}h.then(v,v)}c(s)})}function de(t){const e=Yt(t);return Bn(e),e}function wn(t){const e=Yt(t);return e.equals=pn,e}function Ks(t){var e=t.effects;if(e!==null){t.effects=null;for(var r=0;r<e.length;r+=1)Me(e[r])}}function Ir(t){var e,r=K,n=t.parent;if(!Je&&n!==null&&t.v!==oe&&(n.f&(he|we))!==0)return As(),t.v;We(n);try{Ks(t),e=Hn(t)}finally{We(r)}return e}function yn(t){var e=Ir(t);if(!t.equals(e)&&(t.wv=Yn(),(!G?.is_fork||t.deps===null)&&(G!==null?(G.capture(t,e,!0),yr?.capture(t,e,!0)):t.v=e,t.deps===null))){ne(t,le);return}Je||(Ne!==null?(Dr()||G?.is_fork)&&Ne.set(t,e):zr(t))}function Gs(t){if(t.effects!==null)for(const e of t.effects)(e.teardown||e.ac)&&(e.teardown?.(),e.ac!==null&&Wt(()=>{e.ac.abort(Xt),e.ac=null}),e.fn!==null&&(e.teardown=cs),jt(e,0),Vr(e))}function kn(t){if(t.effects!==null)for(const e of t.effects)e.teardown&&e.fn!==null&&At(e)}let cr=null,bt=null,G=null,yr=null,Ne=null,kr=null,fr=!1,Lt=null,Jt=null;var Hr=0;let $s=1;class it{id=$s++;#e=!1;linked=!0;#s=null;#t=null;async_deriveds=new Map;current=new Map;previous=new Map;#o=new Set;#n=new Set;#a=0;#r=new Map;#l=null;#i=[];#m=[];#u=new Set;#c=new Set;#d=new Map;#_=new Set;is_fork=!1;#f=!1;constructor(){bt===null?cr=bt=this:(bt.#t=this,this.#s=bt),bt=this}#y(){if(this.is_fork)return!0;for(const n of this.#r.keys()){for(var e=n,r=!1;e.parent!==null;){if(this.#d.has(e)){r=!0;break}e=e.parent}if(!r)return!0}return!1}skip_effect(e){this.#d.has(e)||this.#d.set(e,{d:[],m:[]}),this.#_.delete(e)}unskip_effect(e,r=n=>this.schedule(n)){var n=this.#d.get(e);if(n){this.#d.delete(e);for(var s of n.d)ne(s,se),r(s);for(s of n.m)ne(s,Re),r(s)}this.#_.add(e)}#k(){var e=[];for(const i of this.#i)if(!((i.f&he)!==0||(i.f&(se|Re))===0)){for(var r=i,n=!1;r.parent!==null;){r=r.parent;var s=r.f;if((s&(st|Ve))!==0){if((s&le)===0){n=!0;break}r.f^=le}}n||e.push(r)}return this.#i=[],e}#g(){this.#e=!0;for(const l of this.#u)this.#c.delete(l),ne(l,se),this.schedule(l);for(const l of this.#c)ne(l,Re),this.schedule(l);this.apply();for(var e=Lt=[],r=[],n=Jt=[];this.#i.length>0;){Hr++>1e3&&(this.#p(),Zs());for(const l of this.#k())try{this.#b(l,e,r)}catch(u){throw En(l),this.#y()||this.discard(),u}}if(G=null,n.length>0){var s=it.ensure();for(const l of n)s.schedule(l)}if(Lt=null,Jt=null,this.#y()){this.#v(r),this.#v(e);for(const[l,u]of this.#d)Mn(l,u);n.length>0&&G.#g();return}const i=this.#h();if(i){this.#v(r),this.#v(e),i.#x(this);return}this.#u.clear(),this.#c.clear();for(const l of this.#o)l(this);this.#o.clear(),yr=this,Xr(r),Xr(e),yr=null,this.#l?.resolve();var a=G;if(this.#a===0&&(this.#i.length===0||a!==null)&&this.#p(),this.#i.length>0)if(a!==null){for(const l of this.#i)a.#i.push(l);this.#i=[]}else a=this;a!==null&&(He.clear(),a.#g())}#b(e,r,n){e.f^=le;for(var s=e.first;s!==null;){var i=s.f,a=(i&(Ve|st))!==0,l=a&&(i&le)!==0,u=l||(i&we)!==0||this.#d.has(s);if(!u&&s.fn!==null){a?s.f^=le:(i&Mt)!==0?r.push(s):Gt(s)&&((i&qe)!==0&&this.#c.add(s),At(s));var c=s.first;if(c!==null){s=c;continue}}for(;s!==null;){var h=s.next;if(h!==null){s=h;break}s=s.parent}}}#h(){for(var e=this.#s;e!==null;){if(!e.is_fork){for(const[r,[,n]]of this.current)if(e.current.has(r)&&!n)return e}e=e.#s}return null}#x(e){for(const[n,s]of e.current)!this.previous.has(n)&&e.previous.has(n)&&this.previous.set(n,e.previous.get(n)),this.current.set(n,s);for(const[n,s]of e.async_deriveds){const i=this.async_deriveds.get(n);i&&s.promise.then(i.resolve).catch(i.reject)}e.async_deriveds.clear(),this.transfer_effects(e.#u,e.#c);const r=n=>{var s=n.reactions;if(s!==null&&!((n.f&_e)!==0&&(n.f&(se|Re))===0))for(const l of s){var i=l.f;if((i&_e)!==0)r(l);else{var a=l;i&(kt|qe)&&!this.async_deriveds.has(a)&&(this.#c.delete(a),ne(a,se),this.schedule(a))}}};for(const n of this.current.keys())r(n);this.oncommit(()=>e.discard()),e.#p(),G=this,this.#g()}#v(e){for(var r=0;r<e.length;r+=1)gn(e[r],this.#u,this.#c)}capture(e,r,n=!1){e.v!==oe&&!this.previous.has(e)&&this.previous.set(e,e.v),(e.f&nt)===0&&(this.current.set(e,[r,n]),Ne?.set(e,r)),this.is_fork||(e.v=r)}activate(){G=this}deactivate(){G=null,Ne=null}flush(){try{fr=!0,G=this,this.#g()}finally{Hr=0,kr=null,Lt=null,Jt=null,fr=!1,G=null,Ne=null,He.clear()}}discard(){for(const e of this.#n)e(this);this.#n.clear();for(const e of this.async_deriveds.values())e.reject(It);this.#p(),this.#l?.resolve()}register_created_effect(e){this.#m.push(e)}#w(){for(let v=cr;v!==null;v=v.#t){var e=v.id<this.id,r=[];for(const[m,[d,g]]of this.current){if(v.current.has(m)){var n=v.current.get(m)[0];if(e&&d!==n)v.current.set(m,[d,g]);else continue}r.push(m)}if(e)for(const[m,d]of this.async_deriveds){const g=v.async_deriveds.get(m);g&&d.promise.then(g.resolve).catch(g.reject)}var s=[...v.current.keys()].filter(m=>!v.current.get(m)[1]);if(!(!v.#e||s.length===0)){var i=s.filter(m=>!this.current.has(m));if(i.length===0)e&&v.discard();else if(r.length>0){if(e)for(const m of this.#_)v.unskip_effect(m,d=>{(d.f&(qe|kt))!==0?v.schedule(d):v.#v([d])});v.activate();var a=new Set,l=new Map;for(var u of r)xn(u,i,a,l);l=new Map;var c=[...v.current].filter(([m,d])=>{const g=this.current.get(m);return g?g[0]!==d[0]||g[1]!==d[1]:!0}).map(([m])=>m);if(c.length>0)for(const m of this.#m)(m.f&(he|we|Qt))===0&&qr(m,c,l)&&((m.f&(kt|qe))!==0?(ne(m,se),v.schedule(m)):v.#u.add(m));if(v.#i.length>0&&!v.#f){v.apply();for(var h of v.#k())v.#b(h,[],[])}v.deactivate()}}}}increment(e,r){if(this.#a+=1,e){let n=this.#r.get(r)??0;this.#r.set(r,n+1)}}decrement(e,r){if(this.#a-=1,e){let n=this.#r.get(r)??0;n===1?this.#r.delete(r):this.#r.set(r,n-1)}this.#f||(this.#f=!0,Ze(()=>{this.#f=!1,this.linked&&this.flush()}))}transfer_effects(e,r){for(const n of e)this.#u.add(n);for(const n of r)this.#c.add(n);e.clear(),r.clear()}oncommit(e){this.#o.add(e)}ondiscard(e){this.#n.add(e)}settled(){return(this.#l??=ln()).promise}static ensure(){if(G===null){const e=G=new it;fr||Ze(()=>{e.#e||e.flush()})}return G}apply(){{Ne=null;return}}schedule(e){if(kr=e,e.b?.is_pending&&(e.f&(Mt|ar|un))!==0&&(e.f&Ct)===0){e.b.defer_effect(e);return}this.#i.push(e)}#p(){if(this.linked){var e=this.#s,r=this.#t;e===null?cr=r:e.#t=r,r===null?bt=e:r.#s=e,this.linked=!1}}}function Zs(){try{qs()}catch(t){Ue(t,kr)}}let $e=null;function Xr(t){var e=t.length;if(e!==0){for(var r=0;r<e;){var n=t[r++];if((n.f&(he|we))===0&&Gt(n)&&($e=new Set,At(n),n.deps===null&&n.first===null&&n.nodes===null&&n.teardown===null&&n.ac===null&&Dn(n),$e?.size>0)){He.clear();for(const s of $e){if((s.f&(he|we))!==0)continue;const i=[s];let a=s.parent;for(;a!==null;)$e.has(a)&&($e.delete(a),i.push(a)),a=a.parent;for(let l=i.length-1;l>=0;l--){const u=i[l];(u.f&(he|we))===0&&At(u)}}$e.clear()}}$e=null}}function xn(t,e,r,n){if(!r.has(t)&&(r.add(t),t.reactions!==null))for(const s of t.reactions){const i=s.f;(i&_e)!==0?xn(s,e,r,n):(i&(kt|qe))!==0&&(i&se)===0&&qr(s,e,n)&&(ne(s,se),Nr(s))}}function qr(t,e,r){const n=r.get(t);if(n!==void 0)return n;if(t.deps!==null)for(const s of t.deps){if(Bt.call(e,s))return!0;if((s.f&_e)!==0&&qr(s,e,r))return r.set(s,!0),!0}return r.set(t,!1),!1}function Nr(t){G.schedule(t)}function Mn(t,e){if(!((t.f&Ve)!==0&&(t.f&le)!==0)){(t.f&se)!==0?e.d.push(t):(t.f&Re)!==0&&e.m.push(t),ne(t,le);for(var r=t.first;r!==null;)Mn(r,e),r=r.next}}function En(t){ne(t,le);for(var e=t.first;e!==null;)En(e),e=e.next}let rr=new Set;const He=new Map;let Sn=!1;function vt(t,e){var r={f:0,v:t,reactions:null,equals:vn,rv:0,wv:0};return r}function q(t,e){const r=vt(t);return Bn(r),r}function Js(t,e=!1,r=!0){const n=vt(t);return e||(n.equals=pn),n}function P(t,e,r=!1){j!==null&&(!De||(j.f&Qt)!==0)&&_n()&&(j.f&(_e|qe|kt|Qt))!==0&&(Xe===null||!Xe.has(t))&&Vs();let n=r?me(e):e;return Tt(t,n,Jt)}var ut=null,xr=0;function Tt(t,e,r=null){if(!t.equals(e)){Je?He.set(t,e):He.has(t)||He.set(t,t.v);var n=it.ensure();if(n.capture(t,e),(t.f&_e)!==0){const s=t;(t.f&se)!==0&&Ir(s),Ne===null&&zr(s)}t.wv=Yn(),ut=null,xr=0,Tn(t,se,r),ut=null,K!==null&&(K.f&le)!==0&&(K.f&(Ve|st))===0&&(Ce===null?ci([t]):Ce.push(t)),!n.is_fork&&rr.size>0&&!Sn&&Qs()}return e}function Qs(){Sn=!1;for(const t of rr){(t.f&le)!==0&&ne(t,Re);let e;try{e=Gt(t)}catch{e=!0}e&&At(t)}rr.clear()}function Vt(t){P(t,t.v+1)}function Tn(t,e,r){var n=t.reactions;if(n!==null){var s=n.length;if(xr+=s,xr>1e5&&ut===null&&(ut=new Set),ut!==null){if(ut.has(t))return;ut.add(t)}for(var i=0;i<s;i++){var a=n[i],l=a.f,u=(l&se)===0;if(u&&ne(a,e),(l&Qt)!==0)rr.add(a);else if((l&_e)!==0){var c=a;Ne?.delete(c),Tn(c,Re,r)}else if(u){var h=a;(l&qe)!==0&&$e!==null&&$e.add(h),r!==null?r.push(h):Nr(h)}}}}function me(t){if(typeof t!="object"||t===null||Dt in t||cn in t)return t;const e=on(t);if(e!==ls&&e!==us)return t;var r=new Map,n=sn(t),s=q(0),i=ht,a=l=>{if(ht===i)return l();var u=j,c=ht;Oe(null),Kr(i);var h=l();return Oe(u),Kr(c),h};return n&&r.set("length",q(t.length)),new Proxy(t,{defineProperty(l,u,c){(!("value"in c)||c.configurable===!1||c.enumerable===!1||c.writable===!1)&&Ds();var h=r.get(u);return h===void 0?a(()=>{var v=q(c.value);return r.set(u,v),v}):P(h,c.value,!0),!0},deleteProperty(l,u){var c=r.get(u);if(c===void 0){if(u in l){const h=a(()=>q(oe));r.set(u,h),Vt(s)}}else P(c,oe),Vt(s);return!0},get(l,u,c){if(u===Dt)return t;var h=r.get(u),v=u in l;if(h===void 0&&(!v||yt(l,u)?.writable)&&(h=a(()=>{var d=me(v?l[u]:oe),g=q(d);return g}),r.set(u,h)),h!==void 0){var m=o(h);return m===oe?void 0:m}return Reflect.get(l,u,c)},getOwnPropertyDescriptor(l,u){this.has?.(l,u);var c=Reflect.getOwnPropertyDescriptor(l,u),h=r.get(u);if(h!==void 0){var v=o(h);if(v===oe)return;if(c&&"value"in c)c.value=v;else return{enumerable:!0,configurable:!0,value:v,writable:!0}}return c},has(l,u){if(u===Dt)return!0;var c=r.get(u),h=c!==void 0&&c.v!==oe||Reflect.has(l,u);if(c!==void 0||K!==null&&(!h||yt(l,u)?.writable)){c===void 0&&(c=a(()=>{var m=h?me(l[u]):oe,d=q(m);return d}),r.set(u,c));var v=o(c);if(v===oe)return!1}return h},set(l,u,c,h){var v=r.get(u),m=u in l;if(n&&u==="length")for(var d=c;d<v.v;d+=1){var g=r.get(d+"");g!==void 0?P(g,oe):d in l&&(g=a(()=>q(oe)),r.set(d+"",g))}if(v===void 0)(!m||yt(l,u)?.writable)&&(v=a(()=>q(void 0)),P(v,me(c)),r.set(u,v));else{m=v.v!==oe;var E=a(()=>me(c));P(v,E)}var f=Reflect.getOwnPropertyDescriptor(l,u);if(f?.set&&f.set.call(h,c),!m){if(n&&typeof u=="string"){var b=r.get("length"),x=Number(u);Number.isInteger(x)&&x>=b.v&&P(b,x+1)}Vt(s)}return!0},ownKeys(l){o(s);var u=Reflect.ownKeys(l).filter(v=>{var m=r.get(v);return m===void 0||m.v!==oe});for(var[c,h]of r)h.v!==oe&&!(c in l)&&u.push(c);return u},setPrototypeOf(){Ls()}})}var Mr,An,Pn,Cn;function ei(){if(Mr===void 0){Mr=window,An=/Firefox/.test(navigator.userAgent);var t=Element.prototype,e=Node.prototype,r=Text.prototype;Pn=yt(e,"firstChild").get,Cn=yt(e,"nextSibling").get,jr(t)&&(t[gr]=void 0,t[fn]=null,t[br]=void 0,t.__e=void 0),jr(r)&&(r[wr]=void 0)}}function ft(t=""){return document.createTextNode(t)}function pt(t){return Pn.call(t)}function Kt(t){return Cn.call(t)}function W(t,e){return pt(t)}function Fn(t,e=!1){{var r=pt(t);return r instanceof Comment&&r.data===""?Kt(r):r}}function B(t,e=!1){return pt(t)}function k(t,e=1,r=!1){let n=t;for(;e--;)n=Kt(n);return n}function ti(t){t.textContent=""}function Rn(){return!1}function ri(t,e,r){return r?document.createElement(t,{is:r}):document.createElement(t)}function ni(t){var e=K;if(e===null)return j.f|=nt,t;if((e.f&Ct)===0&&(e.f&Mt)===0)throw t;Ue(t,e)}function Ue(t,e){if(t===hn)throw t;if(!(e!==null&&(e.f&he)!==0)){for(;e!==null;){if((e.f&_r)!==0&&(e.f&(he|Ut))===0){if((e.f&Ct)===0)throw t;try{e.b.error(t);return}catch(r){t=r}}e=e.parent}throw t}}function si(t){K===null&&(j===null&&Is(),zs()),Je&&Os()}function ii(t,e){var r=e.last;r===null?e.last=e.first=t:(r.next=t,t.prev=r,e.last=t)}function Qe(t,e){var r=K;r!==null&&(r.f&we)!==0&&(t|=we);var n={ctx:ve,deps:null,nodes:null,f:t|se|Le,first:null,fn:e,last:null,next:null,parent:r,b:r&&r.b,prev:null,teardown:null,wv:0,ac:null};G?.register_created_effect(n);var s=n;if((t&Mt)!==0)Lt!==null?Lt.push(n):it.ensure().schedule(n);else if(e!==null){try{At(n)}catch(a){throw Me(n),a}s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&(s.f&Ft)===0&&(s=s.first,(t&qe)!==0&&(t&Et)!==0&&s!==null&&(s.f|=Et))}if(s!==null&&(s.parent=r,r!==null&&ii(s,r),j!==null&&(j.f&_e)!==0&&(t&st)===0)){var i=j;(i.effects??=[]).push(s)}return n}function Dr(){return j!==null&&!De}function On(t){const e=Qe(ar,null);return ne(e,le),e.teardown=t,e}function or(t){si();var e=K.f,r=!j&&(e&Ve)!==0&&ve!==null&&!ve.i;if(r){var n=ve;(n.e??=[]).push(t)}else return zn(t)}function zn(t){return Qe(Mt|hs,t)}function ai(t){it.ensure();const e=Qe(st|Ft,t);return(r={})=>new Promise(n=>{r.outro?dt(e,()=>{Me(e),n(void 0)}):(Me(e),n(void 0))})}function In(t){return Qe(Mt,t)}function oi(t){return Qe(kt|Ft,t)}function qn(t,e=0){return Qe(ar|e,t)}function Q(t,e=[],r=[],n=[]){Hs(n,e,r,s=>{Qe(ar,()=>{t(...s.map(o))})})}function Lr(t,e=0){var r=Qe(qe|e,t);return r}function Fe(t){return Qe(Ve|Ft,t)}function Nn(t){var e=t.teardown;if(e!==null){const r=Je,n=j;Wr(!0),Oe(null);try{e.call(null)}catch(s){Ue(s,t.parent)}finally{Wr(r),Oe(n)}}}function Vr(t,e=!1){var r=t.first;for(t.first=t.last=null;r!==null;){const s=r.ac;s!==null&&Wt(()=>{s.abort(Xt)});var n=r.next;(r.f&st)!==0?r.parent=null:Me(r,e),r=n}}function li(t){for(var e=t.first;e!==null;){var r=e.next;(e.f&Ve)===0&&Me(e),e=r}}function Me(t,e=!0){var r=!1;(e||(t.f&ds)!==0)&&t.nodes!==null&&t.nodes.end!==null&&(ui(t.nodes.start,t.nodes.end),r=!0),t.f|=Ut,Vr(t,e&&!r),jt(t,0);var n=t.nodes&&t.nodes.t;if(n!==null)for(const i of n)i.stop();Nn(t),t.f^=Ut,t.f|=he;var s=t.parent;s!==null&&s.first!==null&&Dn(t),t.next=t.prev=t.teardown=t.ctx=t.deps=t.fn=t.nodes=t.ac=t.b=null}function ui(t,e){for(;t!==null;){var r=t===e?null:Kt(t);t.remove(),t=r}}function Dn(t){var e=t.parent,r=t.prev,n=t.next;r!==null&&(r.next=n),n!==null&&(n.prev=r),e!==null&&(e.first===t&&(e.first=n),e.last===t&&(e.last=r))}function dt(t,e,r=!0){var n=[];t.f|=Rr,Ln(t,n,!0);var s=()=>{r&&Me(t),e&&e()},i=n.length;if(i>0){var a=()=>--i||s();for(var l of n)l.out(a)}else s()}function Ln(t,e,r){if((t.f&we)===0){t.f^=we;var n=t.nodes&&t.nodes.t;if(n!==null)for(const l of n)(l.is_global||r)&&e.push(l);for(var s=t.first;s!==null;){var i=s.next;if((s.f&st)===0){var a=(s.f&Et)!==0||(s.f&Ve)!==0&&(t.f&qe)!==0;Ln(s,e,a?r:!1)}s=i}}}function nr(t){t.f&=~Rr,Vn(t,!0)}function Vn(t,e){if((t.f&Rr)===0&&(t.f&we)!==0){t.f^=we,(t.f&le)===0&&(ne(t,se),it.ensure().schedule(t));for(var r=t.first;r!==null;){var n=r.next,s=(r.f&Et)!==0||(r.f&Ve)!==0;Vn(r,s?e:!1),r=n}var i=t.nodes&&t.nodes.t;if(i!==null)for(const a of i)(a.is_global||e)&&a.in()}}function Br(t,e){if(t.nodes)for(var r=t.nodes.start,n=t.nodes.end;r!==null;){var s=r===n?null:Kt(r);e.append(r),r=s}}let Je=!1;function Wr(t){Je=t}let j=null,De=!1;function Oe(t){j=t}let K=null;function We(t){K=t}let Xe=null;function Bn(t){j!==null&&((j.f&er)!==0||(j.f&_e)!==0)&&(Xe??=new Set).add(t)}let xe=null,Se=0,Ce=null;function ci(t){Ce=t}let Un=1,ct=0,ht=ct;function Kr(t){ht=t}function Yn(){return++Un}function Gt(t){var e=t.f;if((e&se)!==0)return!0;if((e&Re)!==0){for(var r=t.deps,n=r.length,s=0;s<n;s++){var i=r[s];if(Gt(i)&&yn(i),i.wv>t.wv)return!0}(e&Le)!==0&&Ne===null&&ne(t,le)}return!1}function jn(t,e,r=!0){var n=t.reactions;if(n!==null&&!(Xe!==null&&Xe.has(t)))for(var s=0;s<n.length;s++){var i=n[s];(i.f&_e)!==0?jn(i,e,!1):e===i&&(r?ne(i,se):(i.f&le)!==0&&ne(i,Re),Nr(i))}}function Hn(t){var e=xe,r=Se,n=Ce,s=j,i=Xe,a=ve,l=De,u=ht,c=t.f;xe=null,Se=0,Ce=null,j=(c&(Ve|st))===0?t:null,Xe=null,St(t.ctx),De=!1,ht=++ct,t.ac!==null&&(Wt(()=>{t.ac.abort(Xt)}),t.ac=null);try{t.f|=er;var h=t.fn,v=h();t.f|=Ct;var m=Gr(t);if(_n()&&Ce!==null&&!De&&m!==null&&(t.f&(_e|Re|se))===0)for(var d=0;d<Ce.length;d++)jn(Ce[d],t);if(s!==null&&s!==t){if(ct++,s.deps!==null)for(let g=0;g<r;g+=1)s.deps[g].rv=ct;if(e!==null)for(const g of e)g.rv=ct;Ce!==null&&(n===null?n=Ce:n.push(...Ce))}return(t.f&nt)!==0&&(t.f^=nt),v}catch(g){return Gr(t),ni(g)}finally{t.f^=er,xe=e,Se=r,Ce=n,j=s,Xe=i,St(a),De=l,ht=u}}function Gr(t){var e=t.deps,r=G?.is_fork;if(xe!==null){var n;if(r||jt(t,Se),e!==null&&Se>0)for(e.length=Se+xe.length,n=0;n<xe.length;n++)e[Se+n]=xe[n];else t.deps=e=xe;if(Dr()&&(t.f&Le)!==0)for(n=Se;n<e.length;n++)(e[n].reactions??=[]).push(t)}else!r&&e!==null&&Se<e.length&&(jt(t,Se),e.length=Se);return e}function fi(t,e){let r=e.reactions;if(r!==null){var n=as.call(r,t);if(n!==-1){var s=r.length-1;s===0?r=e.reactions=null:(r[n]=r[s],r.pop())}}if(r===null&&(e.f&_e)!==0&&(xe===null||!Bt.call(xe,e))){var i=e;(i.f&Le)!==0&&(i.f^=Le),i.v!==oe&&zr(i),i.ac!==null&&Wt(()=>{i.ac.abort(Xt),i.ac=null,ne(i,se)}),Gs(i),jt(i,0)}}function jt(t,e){var r=t.deps;if(r!==null)for(var n=e;n<r.length;n++)fi(t,r[n])}function At(t){var e=t.f;if((e&he)===0){ne(t,le);var r=K;K=t;try{(e&(qe|un))!==0?li(t):Vr(t),Nn(t);var n=Hn(t);t.teardown=typeof n=="function"?n:null,t.wv=Un;var s;nn&&Us&&(t.f&se)!==0&&t.deps}finally{K=r}}}function o(t){var e=t.f,r=(e&_e)!==0;if(j!==null&&!De){var n=K!==null&&(K.f&he)!==0;if(!n&&(Xe===null||!Xe.has(t))){var s=j.deps;if((j.f&er)!==0)t.rv<ct&&(t.rv=ct,xe===null&&s!==null&&s[Se]===t?Se++:xe===null?xe=[t]:xe.push(t));else{j.deps??=[],Bt.call(j.deps,t)||j.deps.push(t);var i=t.reactions;i===null?t.reactions=[j]:Bt.call(i,j)||i.push(j)}}}if(Je&&He.has(t))return He.get(t);if(r){var a=t;if(Je){var l=a.v;return((a.f&le)===0&&a.reactions!==null||Wn(a))&&(l=Ir(a)),He.set(a,l),l}var u=(a.f&Le)===0&&!De&&j!==null&&(j.f&Le)!==0,c=(a.f&Ct)===0;Gt(a)&&(u&&(a.f|=Le),yn(a)),u&&!c&&(kn(a),Xn(a))}if(Ne?.has(t))return Ne.get(t);if((t.f&nt)!==0)throw t.v;return t.v}function Xn(t){if(t.f|=Le,t.deps!==null)for(const r of t.deps){var e=r.reactions;e===null?r.reactions=[t]:Bt.call(e,t)||e.push(t),(r.f&_e)!==0&&(r.f&Le)===0&&(kn(r),Xn(r))}}function Wn(t){if(t.v===oe)return!0;if(t.deps===null)return!1;for(const e of t.deps)if(He.has(e)||(e.f&_e)!==0&&Wn(e))return!0;return!1}function mt(t){var e=De;try{return De=!0,t()}finally{De=e}}const di=["touchstart","touchmove"];function hi(t){return di.includes(t)}const qt=Symbol("events"),Kn=new Set,Er=new Set;function vi(t,e,r,n={}){function s(i){if(n.capture||Sr.call(e,i),!i.cancelBubble)return Wt(()=>r?.call(this,i))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?(s.__removed=!1,Ze(()=>{s.__removed||e.addEventListener(t,s,n)})):e.addEventListener(t,s,n),s}function Ur(t,e,r,n,s){var i={capture:n,passive:s},a=vi(t,e,r,i);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&On(()=>{a.__removed=!0,e.removeEventListener(t,a,i)})}function U(t,e,r){(e[qt]??={})[t]=r}function Rt(t){for(var e=0;e<t.length;e++)Kn.add(t[e]);for(var r of Er)r(t)}let dr=null,hr=!1;function Sr(t){var e=this,r=e.ownerDocument,n=t.type,s=t.composedPath?.()||[],i=s[0]||t.target;dr=t,hr||(hr=!0,setTimeout(()=>{hr=!1,dr=null}));var a=0,l=dr===t&&t[qt];if(l){var u=s.indexOf(l);if(u!==-1&&(e===document||e===window)){t[qt]=e;return}var c=s.indexOf(e);if(c===-1)return;u<=c&&(a=u)}if(i=s[a]||t.target,i!==e){an(t,"currentTarget",{configurable:!0,get(){return i||r}});var h=j,v=K;Oe(null),We(null);try{for(var m,d=[];i!==null&&i!==e;){try{var g=i[qt]?.[n];g!=null&&(!i.disabled||t.target===i)&&g.call(i,t)}catch(E){m?d.push(E):m=E}if(t.cancelBubble)break;a++,i=a<s.length?s[a]:null}if(m){for(let E of d)queueMicrotask(()=>{throw E});throw m}}finally{t[qt]=e,delete t.currentTarget,Oe(h),We(v)}}}const pi=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:t=>t});function mi(t){return pi?.createHTML(t)??t}function Gn(t){var e=ri("template");return e.innerHTML=mi(t.replaceAll("<!>","<!---->")),e.content}function Tr(t,e){var r=K;r.nodes===null&&(r.nodes={start:t,end:e,a:null,t:null})}function te(t,e){var r=(e&Es)!==0,n=(e&Ss)!==0,s,i=!t.startsWith("<!>");return()=>{s===void 0&&(s=Gn(i?t:"<!>"+t),r||(s=pt(s)));var a=n||An?document.importNode(s,!0):s.cloneNode(!0);if(r){var l=pt(a),u=a.lastChild;Tr(l,u)}else Tr(a,a);return a}}function _i(t,e,r="svg"){var n=!t.startsWith("<!>"),s=`<${r}>${n?t:"<!>"+t}</${r}>`,i;return()=>{if(!i){var a=Gn(s),l=pt(a);i=pt(l)}var u=i.cloneNode(!0);return Tr(u,u),u}}function gi(t,e){return _i(t,e,"svg")}function $(t,e){t!==null&&t.before(e)}function bi(t){let e=0,r=vt(0),n;return()=>{Dr()&&(o(r),qn(()=>(e===0&&(n=mt(()=>t(()=>Vt(r)))),e+=1,()=>{Ze(()=>{e-=1,e===0&&(n?.(),n=void 0,Vt(r))})})))}}var wi=Et|Ft;function yi(t,e,r,n){new ki(t,e,r,n)}class ki{parent;is_pending=!1;transform_error;#e;#s=null;#t;#o;#n;#a=null;#r=null;#l=null;#i=null;#m=0;#u=0;#c=!1;#d=new Set;#_=new Set;#f=null;#y=bi(()=>(this.#f=vt(this.#m),()=>{this.#f=null}));constructor(e,r,n,s){this.#e=e,this.#t=r,this.#o=i=>{var a=K;a.b=this,a.f|=_r,n(i)},this.parent=K.b,this.transform_error=s??this.parent?.transform_error??(i=>i),this.#n=Lr(()=>{this.#v()},wi)}#k(){try{this.#a=Fe(()=>this.#o(this.#e))}catch(e){this.error(e)}}#g(e){const r=this.#t.failed,{reset:n,invoke_onerror:s}=this.#b(e);Ze(s),r&&(this.#l=Fe(()=>{r(this.#e,()=>e,()=>n)}))}#b(e){var r=!1,n=!1;const s=()=>{if(!this.#h()){if(r){Ps();return}r=!0,n&&Bs(),this.#l!==null&&dt(this.#l,()=>{this.#l=null}),this.#p(()=>{this.#v()})}};return{reset:s,invoke_onerror:()=>{if(!this.#h())try{n=!0,this.#t.onerror?.(e,s),n=!1}catch(a){Ue(a,this.#n&&this.#n.parent)}}}}#h(){return(this.#n.f&(he|Ut))!==0}#x(){const e=this.#t.pending;e&&(this.is_pending=!0,this.#r=Fe(()=>e(this.#e)),Ze(()=>{if(!this.#h()){var r=this.#i=document.createDocumentFragment(),n=ft(),s=!1;if(r.append(n),this.#a=this.#p(()=>{try{return Fe(()=>this.#o(n))}catch(i){try{this.error(i),s=!0}catch(a){Ue(a,this.#n.parent)}return null}}),this.#a===null){this.#i=null,s&&this.#w(G);return}this.#u===0&&(this.#e.before(r),this.#i=null,dt(this.#r,()=>{this.#r=null}),this.#w(G))}}))}#v(){try{if(this.is_pending=this.has_pending_snippet(),this.#u=0,this.#m=0,this.#a=Fe(()=>{this.#o(this.#e)}),this.#u>0){var e=this.#i=document.createDocumentFragment();Br(this.#a,e);const r=this.#t.pending;this.#r=Fe(()=>r(this.#e))}else this.#w(G)}catch(r){this.error(r)}}#w(e){this.is_pending=!1,e.transfer_effects(this.#d,this.#_)}defer_effect(e){gn(e,this.#d,this.#_)}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!this.#t.pending}#p(e){var r=K,n=j,s=ve;We(this.#n),Oe(this.#n),St(this.#n.ctx);try{return it.ensure(),e()}finally{We(r),Oe(n),St(s)}}#M(e,r){if(!this.has_pending_snippet()){this.parent&&this.parent.#M(e,r);return}this.#u+=e,this.#u===0&&(this.#w(r),this.#r&&dt(this.#r,()=>{this.#r=null}),this.#i&&(this.#e.before(this.#i),this.#i=null))}update_pending_count(e,r){this.#M(e,r),this.#m+=e,!(!this.#f||this.#c)&&(this.#c=!0,Ze(()=>{this.#c=!1,this.#f&&Tt(this.#f,this.#m)}))}get_effect_pending(){return this.#y(),o(this.#f)}error(e){if(e===hn||!this.#t.onerror&&!this.#t.failed)throw e;G?.is_fork?(this.#a&&G.skip_effect(this.#a),this.#r&&G.skip_effect(this.#r),this.#l&&G.skip_effect(this.#l),G.oncommit(()=>{this.#h()||this.#E(e)})):this.#E(e)}#E(e){this.#a&&(Me(this.#a),this.#a=null),this.#r&&(Me(this.#r),this.#r=null),this.#l&&(Me(this.#l),this.#l=null);let r=this.#t.failed;const n=s=>{if(this.#h())return;const{reset:i,invoke_onerror:a}=this.#b(s);a(),r&&!this.#h()&&(this.#l=this.#p(()=>{try{return Fe(()=>{var l=K;l.b=this,l.f|=_r,r(this.#e,()=>s,()=>i)})}catch(l){return Ue(l,this.#n.parent),null}}))};Ze(()=>{if(!this.#h()){var s;try{s=this.transform_error(e)}catch(i){Ue(i,this.#n&&this.#n.parent);return}s!==null&&typeof s=="object"&&typeof s.then=="function"?s.then(n,i=>Ue(i,this.#n&&this.#n.parent)):n(s)}})}}function L(t,e){var r=e==null?"":typeof e=="object"?`${e}`:e;r!==(t[wr]??=t.nodeValue)&&(t[wr]=r,t.nodeValue=`${r}`)}function xi(t,e){return Mi(t,e)}const $t=new Map;function Mi(t,{target:e,anchor:r,props:n={},events:s,context:i,intro:a=!0,transformError:l}){ei();var u=void 0,c=ai(()=>{var h=r??e.appendChild(ft());yi(h,{pending:()=>{}},d=>{at({});var g=ve;i&&(g.c=i),s&&(n.$$events=s),u=t(d,n)||Or(),ot()},l);var v=new Set,m=d=>{for(var g=0;g<d.length;g++){var E=d[g];if(!v.has(E)){v.add(E);var f=hi(E);for(const R of[e,document]){var b=$t.get(R);b===void 0&&(b=new Map,$t.set(R,b));var x=b.get(E);x===void 0?(R.addEventListener(E,Sr,{passive:f}),b.set(E,1)):b.set(E,x+1)}}}};return m(ir(Kn)),Er.add(m),()=>{for(var d of v)for(const f of[e,document]){var g=$t.get(f),E=g.get(d);--E==0?(f.removeEventListener(d,Sr),g.delete(d),g.size===0&&$t.delete(f)):g.set(d,E)}Er.delete(m),h!==r&&h.parentNode?.removeChild(h)}});return Ei.set(u,c),u}let Ei=new WeakMap;class Si{anchor;#e=new Map;#s=new Map;#t=new Map;#o=new Set;#n=!0;constructor(e,r=!0){this.anchor=e,this.#n=r}#a=e=>{if(this.#e.has(e)){var r=this.#e.get(e),n=this.#s.get(r);if(n)nr(n),this.#o.delete(r);else{var s=this.#t.get(r);s&&(nr(s.effect),this.#s.set(r,s.effect),this.#t.delete(r),s.fragment.lastChild.remove(),this.anchor.before(s.fragment),n=s.effect)}for(const[i,a]of this.#e){if(this.#e.delete(i),i===e)break;const l=this.#t.get(a);l&&(Me(l.effect),this.#t.delete(a))}for(const[i,a]of this.#s){if(i===r||this.#o.has(i))continue;const l=()=>{if(Array.from(this.#e.values()).includes(i)){var c=document.createDocumentFragment();Br(a,c),c.append(ft()),this.#t.set(i,{effect:a,fragment:c})}else Me(a);this.#o.delete(i),this.#s.delete(i)};this.#n||!n?(this.#o.add(i),dt(a,l,!1)):l()}}};#r=e=>{this.#e.delete(e);const r=Array.from(this.#e.values());for(const[n,s]of this.#t)r.includes(n)||(Me(s.effect),this.#t.delete(n))};ensure(e,r){var n=G,s=Rn();if(r&&!this.#s.has(e)&&!this.#t.has(e))if(s){var i=document.createDocumentFragment(),a=ft();i.append(a),this.#t.set(e,{effect:Fe(()=>r(a)),fragment:i})}else this.#s.set(e,Fe(()=>r(this.anchor)));if(this.#e.set(n,e),s){for(const[l,u]of this.#s)l===e?n.unskip_effect(u):n.skip_effect(u);for(const[l,u]of this.#t)l===e?n.unskip_effect(u.effect):n.skip_effect(u.effect);n.oncommit(this.#a),n.ondiscard(this.#r)}else this.#a(n)}}function be(t,e,r=!1){var n=new Si(t),s=r?Et:0;function i(a,l){n.ensure(a,l)}Lr(()=>{var a=!1;e((l,u=0)=>{a=!0,i(u,l)}),a||i(-1,null)},s)}function Ti(t,e){return e}function Ai(t,e,r){for(var n=[],s=e.length,i,a=e.length,l=0;l<s;l++){let v=e[l];dt(v,()=>{if(i){if(i.pending.delete(v),i.done.add(v),i.pending.size===0){var m=t.outrogroups;Ar(t,ir(i.done)),m.delete(i),m.size===0&&(t.outrogroups=null)}}else a-=1},!1)}if(a===0){var u=n.length===0&&r!==null&&t.pending.size===0;if(u){var c=r,h=c.parentNode;ti(h),h.append(c),t.items.clear()}Ar(t,e,!u)}else i={pending:new Set(e),done:new Set},(t.outrogroups??=new Set).add(i)}function Ar(t,e,r=!0){var n;if(t.pending.size>0){n=new Set;for(const a of t.pending.values())for(const l of a)n.add(t.items.get(l).e)}for(var s=0;s<e.length;s++){var i=e[s];if(n?.has(i)){i.f|=Ye;const a=document.createDocumentFragment();Br(i,a)}else Me(e[s],r)}}var $r;function je(t,e,r,n,s,i=null){var a=t,l=new Map,u=(e&dn)!==0;if(u){var c=t;a=c.appendChild(ft())}var h=null,v=wn(()=>{var x=r();return sn(x)?x:x==null?[]:ir(x)}),m=new Map,d=!0;function g(x){if((b.effect.f&he)===0){b.pending.delete(x);var R=o(v);b.fallback=h,Pi(b,R,a,e,n),h!==null&&(R.length===0?(h.f&Ye)===0?nr(h):(h.f^=Ye,Nt(h,null,a)):dt(h,()=>{h=null}))}}function E(x){b.pending.delete(x)}var f=Lr(()=>{for(var x=o(v),R=x.length,y=new Set,S=G,O=Rn(),H=0;H<R;H+=1){var ie=x[H],C=n(ie,H),N=d?null:l.get(C);N?(N.v&&Tt(N.v,ie),N.i&&Tt(N.i,H),O&&S.unskip_effect(N.e)):(N=Ci(l,d?a:$r??=ft(),ie,C,H,s,e,r),d||(N.e.f|=Ye),l.set(C,N)),y.add(C)}if(R===0&&i&&!h&&(d?h=Fe(()=>i(a)):(h=Fe(()=>i($r??=ft())),h.f|=Ye)),R>y.size&&Rs(),!d)if(m.set(S,y),O){for(const[re,ue]of l)y.has(re)||S.skip_effect(ue.e);S.oncommit(g),S.ondiscard(E)}else g(S);o(v)}),b={effect:f,items:l,pending:m,outrogroups:null,fallback:h};d=!1}function zt(t){for(;t!==null&&(t.f&Ve)===0;)t=t.next;return t}function Pi(t,e,r,n,s){var i=(n&bs)!==0,a=e.length,l=t.items,u=zt(t.effect.first),c,h=null,v,m=[],d=[],g,E,f,b;if(i)for(b=0;b<a;b+=1)g=e[b],E=s(g,b),f=l.get(E).e,(f.f&Ye)===0&&(f.nodes?.a?.measure(),(v??=new Set).add(f));for(b=0;b<a;b+=1){if(g=e[b],E=s(g,b),f=l.get(E).e,t.outrogroups!==null)for(const N of t.outrogroups)N.pending.delete(f),N.done.delete(f);if((f.f&we)!==0&&(nr(f),i&&(f.nodes?.a?.unfix(),(v??=new Set).delete(f))),(f.f&Ye)!==0)if(f.f^=Ye,f===u)Nt(f,null,r);else{var x=h?h.next:u;f===t.effect.last&&(t.effect.last=f.prev),f.prev&&(f.prev.next=f.next),f.next&&(f.next.prev=f.prev),et(t,h,f),et(t,f,x),Nt(f,x,r),h=f,m=[],d=[],u=zt(h.next);continue}if(f!==u){if(c!==void 0&&c.has(f)){if(m.length<d.length){var R=d[0],y;h=R.prev;var S=m[0],O=m[m.length-1];for(y=0;y<m.length;y+=1)Nt(m[y],R,r);for(y=0;y<d.length;y+=1)c.delete(d[y]);et(t,S.prev,O.next),et(t,h,S),et(t,O,R),u=R,h=O,b-=1,m=[],d=[]}else c.delete(f),Nt(f,u,r),et(t,f.prev,f.next),et(t,f,h===null?t.effect.first:h.next),et(t,h,f),h=f;continue}for(m=[],d=[];u!==null&&u!==f;)(c??=new Set).add(u),d.push(u),u=zt(u.next);if(u===null)continue}(f.f&Ye)===0&&m.push(f),h=f,u=zt(f.next)}if(t.outrogroups!==null){for(const N of t.outrogroups)N.pending.size===0&&(Ar(t,ir(N.done)),t.outrogroups?.delete(N));t.outrogroups.size===0&&(t.outrogroups=null)}if(u!==null||c!==void 0){var H=[];if(c!==void 0)for(f of c)(f.f&we)===0&&H.push(f);for(;u!==null;)(u.f&we)===0&&u!==t.fallback&&H.push(u),u=zt(u.next);var ie=H.length;if(ie>0){var C=(n&dn)!==0&&a===0?r:null;if(i){for(b=0;b<ie;b+=1)H[b].nodes?.a?.measure();for(b=0;b<ie;b+=1)H[b].nodes?.a?.fix()}Ai(t,H,C)}}i&&Ze(()=>{if(v!==void 0)for(f of v)f.nodes?.a?.apply()})}function Ci(t,e,r,n,s,i,a,l){var u=(a&_s)!==0?(a&ws)===0?Js(r,!1,!1):vt(r):null,c=(a&gs)!==0?vt(s):null;return{v:u,i:c,e:Fe(()=>(i(e,u??r,c??s,l),()=>{t.delete(n)}))}}function Nt(t,e,r){if(t.nodes)for(var n=t.nodes.start,s=t.nodes.end,i=e&&(e.f&Ye)===0?e.nodes.start:r;n!==null;){var a=Kt(n);if(i.before(n),n===s)return;n=a}}function et(t,e,r){e===null?t.effect.first=r:e.next=r,r===null?t.effect.last=e:r.prev=e}const Zr=[...` 	
\r\f \v\uFEFF`];function Fi(t,e,r){var n=t==null?"":""+t;if(e&&(n=n?n+" "+e:e),r){for(var s of Object.keys(r))if(r[s])n=n?n+" "+s:s;else if(n.length)for(var i=s.length,a=0;(a=n.indexOf(s,a))>=0;){var l=a+i;(a===0||Zr.includes(n[a-1]))&&(l===n.length||Zr.includes(n[l]))?n=(a===0?"":n.substring(0,a))+n.substring(l+1):a=l}}return n===""?null:n}function Jr(t,e=!1){var r=e?" !important;":";",n="";for(var s of Object.keys(t)){var i=t[s];i!=null&&i!==""&&(n+=" "+s+": "+i+r)}return n}function Ri(t,e){if(e){var r="",n,s;return Array.isArray(e)?(n=e[0],s=e[1]):n=e,n&&(r+=Jr(n)),s&&(r+=Jr(s,!0)),r=r.trim(),r===""?null:r}return String(t)}function Ht(t,e,r,n,s,i){var a=t[gr];if(a!==r||a===void 0){var l=Fi(r,n,i);l==null?t.removeAttribute("class"):t.className=l,t[gr]=r}else if(i&&s!==i)for(var u in i){var c=!!i[u];(s==null||c!==!!s[u])&&t.classList.toggle(u,c)}return i}function vr(t,e={},r,n){for(var s in r){var i=r[s];e[s]!==i&&(r[s]==null?t.style.removeProperty(s):t.style.setProperty(s,i,n))}}function tt(t,e,r,n){var s=t[br];if(s!==e){var i=Ri(e,n);i==null?t.removeAttribute("style"):t.style.cssText=i,t[br]=e}else n&&(Array.isArray(n)?(vr(t,r?.[0],n[0]),vr(t,r?.[1],n[1],"important")):vr(t,r,n));return n}const Oi=Symbol("is custom element"),zi=Symbol("is html"),Ii=ms?"progress":"PROGRESS";function Qr(t,e){var r=$n(t);r.value===(r.value=e??void 0)||t.value===e&&(e!==0||t.nodeName!==Ii)||(t.value=e??"")}function w(t,e,r,n){var s=$n(t);s[e]!==(s[e]=r)&&(e==="loading"&&(t[ps]=r),r==null?t.removeAttribute(e):typeof r!="string"&&qi(t).has(e)?t[e]=r:t.setAttribute(e,r))}function $n(t){return t[fn]??={[Oi]:t.nodeName.includes("-"),[zi]:t.namespaceURI===Ts}}var en=new Map;function qi(t){var e=t.getAttribute("is")||t.nodeName,r=en.get(e);if(r)return r;en.set(e,r=new Set);for(var n,s=t,i=Element.prototype;i!==s;){n=os(s);for(var a in n)n[a].set&&a!=="innerHTML"&&a!=="textContent"&&a!=="innerText"&&r.add(a);s=on(s)}return r}class Yr{#e=new WeakMap;#s;#t;static entries=new WeakMap;constructor(e){this.#t=e}observe(e,r){var n=this.#e.get(e)||new Set;return n.add(r),this.#e.set(e,n),this.#o().observe(e,this.#t),()=>{var s=this.#e.get(e);s.delete(r),s.size===0&&(this.#e.delete(e),this.#s.unobserve(e))}}#o(){return this.#s??(this.#s=new ResizeObserver(e=>{for(var r of e){Yr.entries.set(r.target,r);for(var n of this.#e.get(r.target)||[])n(r)}}))}}var Ni=new Yr({box:"border-box"});function Di(t,e,r){var n=Ni.observe(t,()=>r(t[e]));In(()=>(mt(()=>r(t[e])),n))}function pr(t,e){return t===e||t?.[Dt]===e}function Pt(t=Or(),e,r,n){var s=ve.r,i=K;return In(()=>{var a,l;return qn(()=>{a=l,l=[],mt(()=>{pr(r(...l),t)||(e(t,...l),a&&pr(r(...a),t)&&e(null,...a))})}),()=>{let u=i;for(;u!==s&&u.parent!==null&&u.parent.f&Ut;)u=u.parent;const c=()=>{l&&pr(r(...l),t)&&e(null,...l)},h=u.teardown;u.teardown=()=>{c(),h?.()}}}),t}let Zt=!1;function Li(t){var e=Zt;try{return Zt=!1,[t(),Zt]}finally{Zt=e}}function rt(t,e,r,n){var s=!0,i=(r&xs)!==0,a=(r&Ms)!==0,l=n,u=!0,c=void 0,h=()=>a&&s?(c??=Yt(n),o(c)):(u&&(u=!1,l=a?mt(n):n),l);let v;if(i){var m=Dt in t||vs in t;v=yt(t,e)?.set??(m&&e in t?y=>t[e]=y:void 0)}var d,g=!1;i?[d,g]=Li(()=>t[e]):d=t[e],d===void 0&&n!==void 0&&(d=h(),v&&(Ns(),v(d)));var E;if(E=()=>{var y=t[e];return y===void 0?h():(u=!0,y)},(r&ks)===0)return E;if(v){var f=t.$$legacy;return(function(y,S){return arguments.length>0?((!S||f||g)&&v(S?E():y),y):E()})}var b=!1,x=((r&ys)!==0?Yt:wn)(()=>(b=!1,E()));i&&o(x);var R=K;return(function(y,S){if(arguments.length>0){const O=S?o(x):i?me(y):y;return P(x,O),b=!0,l!==void 0&&(l=O),y}return Je&&b||(R.f&he)!==0?x.v:o(x)})}function lr(t){ve===null&&mn(),or(()=>{const e=mt(t);if(typeof e=="function")return e})}function Vi(t){ve===null&&mn(),lr(()=>()=>mt(t))}const Pr=1,xt={Webp:1,Jpeg:2,Rgba:3,Surface:4,Pcm:5},sr=16;function Zn(t){if(t.byteLength<sr)return null;const e=new DataView(t),r=e.getUint8(8);return r<1||r>5?null:{frame:e.getUint32(0,!0),width:e.getUint16(4,!0),height:e.getUint16(6,!0),format:r,len:e.getUint32(12,!0)}}const Bi={[xt.Jpeg]:"image/jpeg",[xt.Webp]:"image/webp"};async function Ui(t){const e=Zn(t);if(!e||e.format===xt.Pcm||e.format===xt.Surface)return null;const r=new Uint8Array(t,sr,e.len);let n;if(e.format===xt.Rgba){const s=new ImageData(new Uint8ClampedArray(r),e.width,e.height);n=await createImageBitmap(s)}else n=await createImageBitmap(new Blob([r],{type:Bi[e.format]}));return{header:e,image:n}}function Yi(t,e,r){const n=new URL(t,r);return n.protocol==="http:"&&(n.protocol="ws:"),n.protocol==="https:"&&(n.protocol="wss:"),e&&n.searchParams.set("token",e),n.toString()}const ji=4401,Jn="unauthorized";function Hi(t,e,r){return Math.min(r,e*2**Math.max(0,t-1))}class Xi{kind="ws";ws=null;handlers=null;attempt=0;timer=null;closed=!1;latestFrame=-1;decodeChain=Promise.resolve();url;min;max;WS;constructor(e){const r=typeof location<"u"?location.href:"http://127.0.0.1/";this.url=Yi(e.url,e.token,r),this.min=e.minDelayMs??250,this.max=e.maxDelayMs??5e3,this.WS=e.WebSocketImpl??WebSocket}connect(e){this.handlers=e,this.closed=!1,this.open()}open(){const e=this.handlers;if(!e||this.closed)return;e.status(this.attempt===0?{state:"connecting"}:{state:"reconnecting",attempt:this.attempt,delayMs:0});const r=new this.WS(this.url);r.binaryType="arraybuffer",this.ws=r,r.onopen=()=>{this.attempt=0,e.status({state:"open"})},r.onmessage=n=>{if(typeof n.data=="string"){let a;try{a=JSON.parse(n.data)}catch{return}this.decodeChain=this.decodeChain.then(()=>e.event(a));return}const s=n.data,i=Zn(s);if(i?.format===xt.Pcm){const a=Math.min(s.byteLength,sr+i.len),l=s.slice(sr,a);this.decodeChain=this.decodeChain.then(()=>e.audio?.({rate:i.width,pcm:l}));return}this.decodeChain=this.decodeChain.then(async()=>{const a=await Ui(s);a&&(this.latestFrame=a.header.frame,e.frame(a))})},r.onclose=n=>{if(this.ws=null,this.closed)return;if(n?.code===ji){this.closed=!0,e.status({state:"closed",reason:Jn});return}this.attempt+=1;const s=Hi(this.attempt,this.min,this.max);e.status({state:"reconnecting",attempt:this.attempt,delayMs:s}),this.timer=setTimeout(()=>this.open(),s)},r.onerror=()=>r.close()}send(e){this.ws?.readyState===1&&this.ws.send(JSON.stringify(e))}close(){this.closed=!0,this.timer&&clearTimeout(this.timer),this.ws?.close(),this.handlers?.status({state:"closed",reason:"closed by editor"})}get lastFrame(){return this.latestFrame}}class Wi{kind="mock";h=null;frame=0;playing=null;viewport={w:640,h:360};selected=null;sent=[];fps=30;size=[1920,1080];scenes=[{name:"intro",start:0,frames:60,transition:0,transition_at:0},{name:"outro",start:60,frames:60,transition:0,transition_at:0}];metas={intro:{version:1,markers:{beat:1},eases:{slide:[.65,0,.35,1]},tunables:{speed:1.5}},outro:{version:1,markers:{fade:.5},eases:{},tunables:{}}};get total(){return 120}connect(e){this.h=e,e.status({state:"connecting"}),queueMicrotask(()=>e.status({state:"open"}))}emit(e){this.h?.event(e)}inject(e){this.emit(e)}markers(){return Object.entries(this.metas).flatMap(([e,r])=>Object.entries(r.markers??{}).map(([n,s])=>({scene:e,name:n,time:s})))}timeline(){this.emit({type:"Timeline",frames:this.total,markers:this.markers(),scenes:this.scenes,audio_waveform:Array.from({length:240},(e,r)=>Math.abs(Math.sin(r/7))*.8)})}squareX(e){return 200+e/this.total*1400}async show(){const e=this.frame;this.emit({type:"Frame",index:e});const[r,n]=this.size,s=Math.min(this.viewport.w/r,this.viewport.h/n,1),i=Math.max(1,Math.round(r*s)),a=Math.max(1,Math.round(n*s));let l=null;if(typeof OffscreenCanvas<"u"){const u=new OffscreenCanvas(i,a),c=u.getContext("2d");c.fillStyle="#141414",c.fillRect(0,0,i,a),c.fillStyle="#e13238",c.fillRect((this.squareX(e)-100)*s,440*s,200*s,200*s),c.fillStyle="#fff",c.font=`${Math.round(48*s)}px sans-serif`,c.fillText(`frame ${e}`,40*s,80*s),l=u.transferToImageBitmap()}if(l){const u={header:{frame:e,width:i,height:a,format:3,len:i*a*4},image:l};this.h?.frame(u)}if(this.selected!==null){const u=this.squareX(e);this.emit({type:"Signals",node_id:this.selected,values:[{name:"x",value:(u-960).toFixed(3)},{name:"y",value:"0.000"},{name:"fill",value:"#e13238ff"}],bounds:[u-100,440,u+100,440,u+100,640,u-100,640]})}}send(e){switch(this.sent.push(e),e.type){case"Hello":if(e.protocol_version!==Pr){this.emit({type:"Error",kind:"Incompatible",message:"protocol mismatch",spans:[]});return}this.emit({type:"Ready",protocol_version:Pr,engine_version:"mock",fps:this.fps,size:this.size,scenes:this.scenes});for(const[r,n]of Object.entries(this.metas))this.emit({type:"MetaChanged",scene:r,meta:n});this.timeline(),this.emit({type:"Tree",nodes:[{id:0,parent:null,kind:"Group",name:"view"},{id:1,parent:0,kind:"Rect",name:"square"}]}),this.show();break;case"Seek":this.frame=Math.max(0,Math.min(this.total-1,e.frame)),this.show();break;case"Step":this.stopPlayback(),this.frame=Math.max(0,Math.min(this.total-1,this.frame+e.delta)),this.emit({type:"Playback",playing:!1,frame:this.frame}),this.show();break;case"Play":this.stopPlayback(),this.emit({type:"Playback",playing:!0,frame:this.frame}),this.playing=setInterval(()=>{this.frame=(this.frame+1)%this.total,this.show()},1e3/this.fps);break;case"Pause":this.stopPlayback(),this.emit({type:"Playback",playing:!1,frame:this.frame});break;case"SetViewport":this.viewport={w:e.w*e.dpr,h:e.h*e.dpr},this.show();break;case"SetMarker":{const r=e.scene??Object.keys(this.metas).find(s=>e.name in(this.metas[s]?.markers??{})),n=r?this.metas[r]:void 0;if(!r||!n){this.emit({type:"Error",kind:"Meta",message:`no marker named \`${e.name}\``,spans:[]});return}n.markers={...n.markers,[e.name]:e.time},this.emit({type:"MetaChanged",scene:r,meta:n}),this.timeline(),this.show();break}case"SetEase":case"SetTunable":{const r=this.metas.intro;e.type==="SetEase"?r.eases={...r.eases,[e.name]:e.value}:r.tunables={...r.tunables,[e.name]:e.value},this.emit({type:"MetaChanged",scene:"intro",meta:r}),this.show();break}case"Pick":{const r=this.squareX(this.frame),n=Math.abs(e.x-r)<=100&&Math.abs(e.y-540)<=100;this.selected=n?1:null,this.emit({type:"Selected",node_id:this.selected}),this.show();break}case"Select":this.selected=e.node_id??null,this.emit({type:"Selected",node_id:this.selected}),this.show();break;case"SetTransition":{const r=this.scenes.find(n=>n.name===e.scene);if(!r){this.emit({type:"Error",kind:"Meta",message:`no scene named \`${e.scene}\``,spans:[]});return}r.transition=Math.max(0,Math.round(e.seconds*this.fps)),this.timeline(),this.show();break}}}stopPlayback(){this.playing!==null&&clearInterval(this.playing),this.playing=null}close(){this.stopPlayback(),this.h?.status({state:"closed",reason:"closed"})}}const Ki="5";typeof window<"u"&&((window.__svelte??={}).v??=new Set).add(Ki);const Gi={"app.title":"oxframe","conn.connecting":"Connecting…","conn.open":"Connected","conn.reconnecting":"Reconnecting…","conn.closed":"Disconnected","conn.unauthorized":"Link expired: open the URL printed by `oxframe dev`","status.building":"Building…","status.reloaded":"Reloaded","status.incompatible":"Version mismatch","error.build":"Build failed","error.runtime":"Runtime error","error.meta":"Could not apply the edit","error.incompatible":"Incompatible versions","error.dismiss":"Dismiss","error.previous":"The previous version keeps running.","transport.play":"Play (Space)","transport.pause":"Pause (Space)","transport.prev":"Previous frame (←, Shift+← for 10)","transport.next":"Next frame (→, Shift+→ for 10)","transport.start":"Go to start (Home)","transport.end":"Go to end (End)","timeline.label":"Timeline","timeline.marker":"Marker {name} at {time} s. Drag or use ←/→ to move.","timeline.addMarker":"Add marker at playhead (M)","timeline.transition":"Transition into {name}, {seconds} s. Drag the right edge to change it.","inspector.tree":"Scene","inspector.signals":"Signals","inspector.noSelection":"Click a node in the viewport or the tree.","inspector.tunables":"Tunables","inspector.eases":"Eases","inspector.none":"None yet — use tune!() and ease!() in your scene.","curve.title":"Ease “{name}”","curve.presets":"Presets","curve.close":"Close","viewport.label":"Preview","viewport.axes":"Axes","viewport.fit":"Fit (double-click)","theme.toggle":"Toggle light/dark theme","help.title":"Shortcuts","help.keys":"Space play/pause · ←/→ step · Shift+←/→ 10 frames · Home/End · M marker · wheel zoom · Alt/middle-drag pan"},$i=Gi;function A(t,e={}){return $i[t].replace(/\{(\w+)\}/g,(r,n)=>String(e[n]??`{${n}}`))}var Zi=te('<span class="chip ok svelte-yic9pk" data-testid="reloaded"> </span>'),Ji=te('<span class="dim svelte-yic9pk"> </span>'),Qi=te('<header class="svelte-yic9pk"><strong class="logo svelte-yic9pk"> </strong> <span role="status" aria-live="polite" data-testid="status"><span class="dot svelte-yic9pk" aria-hidden="true"></span> </span> <!> <span class="spacer svelte-yic9pk"></span> <!> <button> </button> <button>1:1</button> <button> </button> <span class="help svelte-yic9pk">?</span></header>');function ea(t,e){at(e,!0);let r=rt(e,"editor",7);const n=de(()=>{const y=r().connection;if(r().error?.kind==="Incompatible")return{cls:"bad",text:A("status.incompatible")};if(r().building)return{cls:"busy",text:A("status.building")};switch(y.state){case"open":return{cls:"ok",text:A("conn.open")};case"connecting":return{cls:"busy",text:A("conn.connecting")};case"reconnecting":return{cls:"busy",text:A("conn.reconnecting")};default:return{cls:"bad",text:y.reason===Jn?A("conn.unauthorized"):A("conn.closed")}}});let s=q(!1);or(()=>{if(!r().reloadedAt)return;P(s,!0);const y=setTimeout(()=>P(s,!1),1500);return()=>clearTimeout(y)});var i=Qi(),a=W(i),l=B(a,!0),u=k(a,2),c=k(W(u),1,!0),h=k(u,2);{var v=y=>{var S=Zi(),O=B(S,!0);Q(H=>L(O,H),[()=>A("status.reloaded")]),$(y,S)};be(h,y=>{o(s)&&y(v)})}var m=k(h,4);{var d=y=>{var S=Ji(),O=B(S);Q(()=>L(O,`engine ${r().engineVersion??""} · ${r().size[0]??""}×${r().size[1]??""} · ${r().fps??""} fps`)),$(y,S)};be(m,y=>{r().engineVersion&&y(d)})}var g=k(m,2),E=B(g,!0),f=k(g,2),b=k(f,2),x=B(b,!0),R=k(b,2);Q((y,S,O,H,ie,C,N,re)=>{L(l,y),Ht(u,1,`chip ${o(n).cls??""}`,"svelte-yic9pk"),L(c,o(n).text),w(g,"aria-pressed",r().showAxes),w(g,"title",S),L(E,O),w(f,"title",H),w(b,"title",ie),w(b,"aria-label",C),L(x,e.theme==="dark"?"☾":"☀"),w(R,"title",N),w(R,"aria-label",re)},[()=>A("app.title"),()=>A("viewport.axes"),()=>A("viewport.axes"),()=>A("viewport.fit"),()=>A("theme.toggle"),()=>A("theme.toggle"),()=>A("help.keys"),()=>A("help.keys")]),U("click",g,()=>r().showAxes=!r().showAxes),U("click",f,()=>r().resetView()),U("click",b,function(...y){e.onToggleTheme?.apply(this,y)}),$(t,i),ot()}Rt(["click"]);function Cr(t,e,r,n,s){const a=Math.min(e.w/t[0],e.h/t[1])*r;return{scale:a,ox:e.w/2-t[0]*a/2+n,oy:e.h/2-t[1]*a/2+s}}function Qn(t,e,r){return[(e-t.ox)/t.scale,(r-t.oy)/t.scale]}function Fr(t,e,r){return[t.ox+e*t.scale,t.oy+r*t.scale]}function ta(t,e,r,n,s,i,a,l){const u=Cr(t,e,r,n,s),[c,h]=Qn(u,a,l),v=Cr(t,e,i,0,0),[m,d]=Fr(v,c,h);return{panX:a-m,panY:l-d}}var ra=te('<div class="viewport svelte-10js0q2" data-testid="viewport"><canvas class="svelte-10js0q2"></canvas> <span class="zoom svelte-10js0q2" aria-live="off"> </span></div>');function na(t,e){at(e,!0);let r,n,s=q(me({w:0,h:0}));const i=de(()=>Cr(e.editor.size,o(s),e.editor.zoom,e.editor.panX,e.editor.panY));lr(()=>{const f=new ResizeObserver(([b])=>{if(!b)return;const{width:x,height:R}=b.contentRect;P(s,{w:Math.round(x),h:Math.round(R)},!0),e.editor.setViewport(o(s).w,o(s).h)});return f.observe(r),()=>f.disconnect()}),or(()=>{const f=n?.getContext("2d");if(!f)return;const b=typeof devicePixelRatio=="number"?devicePixelRatio:1,{w:x,h:R}=o(s);(n.width!==Math.round(x*b)||n.height!==Math.round(R*b))&&(n.width=Math.round(x*b),n.height=Math.round(R*b)),f.setTransform(b,0,0,b,0,0),f.clearRect(0,0,x,R);const[y,S]=e.editor.size,O=o(i),H=e.editor.image;f.fillStyle="#000",f.fillRect(O.ox,O.oy,y*O.scale,S*O.scale),H&&(f.imageSmoothingQuality="high",f.drawImage(H,O.ox,O.oy,y*O.scale,S*O.scale));const ie=getComputedStyle(r).getPropertyValue("--m-accent")||"#6cb2eb";if(e.editor.showAxes){const[N,re]=Fr(O,y/2,S/2);f.strokeStyle="rgba(255,255,255,0.25)",f.lineWidth=1,f.setLineDash([4,4]),f.beginPath(),f.moveTo(O.ox,re+.5),f.lineTo(O.ox+y*O.scale,re+.5),f.moveTo(N+.5,O.oy),f.lineTo(N+.5,O.oy+S*O.scale),f.stroke(),f.setLineDash([])}const C=e.editor.bounds;if(C&&e.editor.selected!==null){f.strokeStyle=ie,f.lineWidth=2,f.beginPath();for(let N=0;N<4;N++){const[re,ue]=Fr(O,C[2*N],C[2*N+1]);N===0?f.moveTo(re,ue):f.lineTo(re,ue)}f.closePath(),f.stroke()}});let a=null;function l(f){const b=n.getBoundingClientRect();return[f.clientX-b.left,f.clientY-b.top]}function u(f){n.setPointerCapture(f.pointerId),a={x:f.clientX,y:f.clientY,px:e.editor.panX,py:e.editor.panY,moved:!1}}function c(f){if(!a)return;const b=f.clientX-a.x,x=f.clientY-a.y;Math.abs(b)+Math.abs(x)>3&&(a.moved=!0),a.moved&&(f.altKey||f.buttons===4||f.buttons===2)&&e.editor.setZoom(e.editor.zoom,a.px+b,a.py+x)}function h(f){const b=a;if(a=null,!b||b.moved||f.button!==0)return;const[x,R]=l(f),[y,S]=Qn(o(i),x,R),[O,H]=e.editor.size;if(y<0||S<0||y>O||S>H){e.editor.select(null);return}e.editor.pick(y,S)}function v(f){f.preventDefault();const[b,x]=l(f),R=Math.exp(-f.deltaY*.0015),y=Math.max(.1,Math.min(16,e.editor.zoom*R)),S=ta(e.editor.size,o(s),e.editor.zoom,e.editor.panX,e.editor.panY,y,b,x);e.editor.setZoom(y,S.panX,S.panY)}var m=ra(),d=W(m);Pt(d,f=>n=f,()=>n);var g=k(d,2),E=B(g);Pt(m,f=>r=f,()=>r),Q(f=>{w(d,"data-frame",e.editor.imageFrame),w(d,"aria-label",`frame ${e.editor.imageFrame??""}`),L(E,`${f??""}%`)},[()=>Math.round(e.editor.zoom*100)]),U("pointerdown",d,u),U("pointermove",d,c),U("pointerup",d,h),Ur("wheel",d,v),U("dblclick",d,()=>e.editor.resetView()),U("contextmenu",d,f=>f.preventDefault()),$(t,m),ot()}Rt(["pointerdown","pointermove","pointerup","dblclick","contextmenu"]);const es="oxframe-editor-view";function sa(t){const e=new URLSearchParams(t.replace(/^#/,"")),r=u=>{const c=e.get(u);if(c===null||c==="")return;const h=Number(c);return Number.isFinite(h)?h:void 0},n={},s=r("f");s!==void 0&&(n.frame=Math.max(0,Math.round(s)));const i=r("z");i!==void 0&&i>0&&(n.zoom=i);const a=r("px");a!==void 0&&(n.panX=a);const l=r("py");if(l!==void 0&&(n.panY=l),e.has("s")){const u=r("s");n.selected=u===void 0?null:u}return n}function ia(t){const e=new URLSearchParams;return e.set("f",String(t.frame)),t.zoom!==1&&e.set("z",t.zoom.toFixed(3)),(t.panX!==0||t.panY!==0)&&(e.set("px",t.panX.toFixed(1)),e.set("py",t.panY.toFixed(1))),t.selected!==null&&e.set("s",String(t.selected)),`#${e.toString()}`}function aa(){let t={};try{t=JSON.parse(sessionStorage.getItem(es)??"{}")}catch{t={}}return{...t,...sa(typeof location>"u"?"":location.hash)}}function oa(t){try{sessionStorage.setItem(es,JSON.stringify(t))}catch{}typeof history<"u"&&history.replaceState(history.state,"",`${location.pathname}${location.search}${ia(t)}`)}class la{constructor(e,r={}){if(this.backend=e,this.persistEnabled=r.persist??!0,this.uiVersion=r.uiVersion??"0.1.0",this.persistEnabled){const n=aa();this.restoredFrame=n.frame??null,this.zoom=n.zoom??1,this.panX=n.panX??0,this.panY=n.panY??0,this.selected=n.selected??null}}backend;#e=q(me({state:"connecting"}));get connection(){return o(this.#e)}set connection(e){P(this.#e,e,!0)}#s=q(!1);get ready(){return o(this.#s)}set ready(e){P(this.#s,e,!0)}#t=q("");get engineVersion(){return o(this.#t)}set engineVersion(e){P(this.#t,e,!0)}#o=q(60);get fps(){return o(this.#o)}set fps(e){P(this.#o,e,!0)}#n=q(me([1920,1080]));get size(){return o(this.#n)}set size(e){P(this.#n,e,!0)}#a=q(0);get frames(){return o(this.#a)}set frames(e){P(this.#a,e,!0)}#r=q(0);get frame(){return o(this.#r)}set frame(e){P(this.#r,e,!0)}#l=q(!1);get playing(){return o(this.#l)}set playing(e){P(this.#l,e,!0)}#i=q(me([]));get scenes(){return o(this.#i)}set scenes(e){P(this.#i,e,!0)}#m=q(me([]));get markers(){return o(this.#m)}set markers(e){P(this.#m,e,!0)}#u=q(null);get waveform(){return o(this.#u)}set waveform(e){P(this.#u,e)}#c=q(me([]));get clips(){return o(this.#c)}set clips(e){P(this.#c,e,!0)}#d=q(me({}));get metas(){return o(this.#d)}set metas(e){P(this.#d,e,!0)}#_=q(me([]));get tree(){return o(this.#_)}set tree(e){P(this.#_,e,!0)}#f=q(null);get selected(){return o(this.#f)}set selected(e){P(this.#f,e,!0)}#y=q(me([]));get signals(){return o(this.#y)}set signals(e){P(this.#y,e,!0)}#k=q(null);get bounds(){return o(this.#k)}set bounds(e){P(this.#k,e,!0)}#g=q(!1);get building(){return o(this.#g)}set building(e){P(this.#g,e,!0)}#b=q(0);get reloadedAt(){return o(this.#b)}set reloadedAt(e){P(this.#b,e,!0)}#h=q(null);get error(){return o(this.#h)}set error(e){P(this.#h,e,!0)}#x=q(null);get image(){return o(this.#x)}set image(e){P(this.#x,e)}#v=q(-1);get imageFrame(){return o(this.#v)}set imageFrame(e){P(this.#v,e,!0)}#w=q(1);get zoom(){return o(this.#w)}set zoom(e){P(this.#w,e,!0)}#p=q(0);get panX(){return o(this.#p)}set panX(e){P(this.#p,e,!0)}#M=q(0);get panY(){return o(this.#M)}set panY(e){P(this.#M,e,!0)}#E=q(!0);get showAxes(){return o(this.#E)}set showAxes(e){P(this.#E,e,!0)}viewport={w:0,h:0};#S=q(null);get selectedMarker(){return o(this.#S)}set selectedMarker(e){P(this.#S,e,!0)}#T=q(null);get editingEase(){return o(this.#T)}set editingEase(e){P(this.#T,e,!0)}restoredFrame=null;persistEnabled;uiVersion;pcm=null;audioCtx=null;audioNode=null;start(){this.backend.connect({event:e=>this.handle(e),frame:e=>this.onFrame(e),status:e=>this.onStatus(e),audio:e=>this.onPcm(e)})}stop(){this.backend.close()}send(e){this.backend.send(e)}onStatus(e){this.connection=e,e.state==="open"?this.send({type:"Hello",protocol_version:Pr,ui_version:this.uiVersion}):(this.ready=!1,this.playing=!1,this.stopAudio())}onFrame(e){this.image?.close?.(),this.image=e.image,this.imageFrame=e.header.frame}handle(e){switch(e.type){case"Ready":this.ready=!0,this.engineVersion=e.engine_version,this.fps=e.fps,this.size=e.size,this.scenes=e.scenes,this.building=!1,this.error?.kind==="Incompatible"&&(this.error=null),this.resync();break;case"Reloaded":this.reloadedAt=Date.now(),this.building=!1,this.error=null,this.stopAudio(),this.pcm=null,this.resync();break;case"Building":this.building=!0;break;case"Error":this.building=!1,this.error={kind:e.kind,message:e.message,spans:e.spans??[]};break;case"Frame":this.playing&&e.index<this.frame&&this.startAudio(e.index),this.frame=e.index,this.savePersist();break;case"Playback":this.playing=e.playing,this.frame=e.frame,e.playing?this.startAudio(e.frame):this.stopAudio();break;case"Timeline":this.frames=e.frames,this.markers=e.markers,this.scenes=e.scenes,this.clips=e.audio_clips??[],e.audio_waveform&&(this.waveform=e.audio_waveform);break;case"Tree":this.tree=e.nodes;break;case"Signals":e.node_id===this.selected&&(this.signals=e.values,this.bounds=e.bounds??null);break;case"Selected":this.selected=e.node_id,e.node_id===null&&(this.signals=[],this.bounds=null),this.savePersist();break;case"MetaChanged":this.metas={...this.metas,[e.scene]:e.meta},this.error?.kind==="Meta"&&(this.error=null);break}}resync(){this.viewport.w>0&&this.sendViewport();const e=this.restoredFrame??this.frame;this.restoredFrame=null,this.frame=e,this.send({type:"Seek",frame:e}),this.selected!==null&&this.send({type:"Select",node_id:this.selected})}restart(){this.pause(),this.playing=!1,this.restoredFrame=0,this.seek(0),this.savePersist()}get lastFrame(){return Math.max(0,this.frames-1)}seek(e){const r=Math.max(0,Math.min(this.lastFrame,Math.round(e)));this.frame=r,this.send({type:"Seek",frame:r}),this.playing&&this.startAudio(r)}onPcm(e){const r=new Int16Array(e.pcm),n=new Float32Array(r.length);for(let s=0;s<r.length;s++)n[s]=(r[s]??0)/32768;this.pcm={rate:e.rate,samples:n},this.playing&&this.startAudio(this.frame)}startAudio(e){this.stopAudio();const r=this.pcm;if(!r||r.samples.length===0||typeof AudioContext>"u")return;this.audioCtx??=new AudioContext;const n=this.audioCtx.createBuffer(1,r.samples.length,r.rate);n.getChannelData(0).set(r.samples);const s=this.audioCtx.createBufferSource();s.buffer=n,s.connect(this.audioCtx.destination);const i=Math.max(0,Math.min(n.duration,e/Math.max(1,this.fps)));s.start(0,i),this.audioNode=s}stopAudio(){const e=this.audioNode;if(this.audioNode=null,!!e)try{e.stop()}catch{}}play(){this.send({type:"Play"})}pause(){this.send({type:"Pause"})}togglePlay(){this.playing?this.pause():this.play()}step(e){this.send({type:"Step",delta:e})}setViewport(e,r){this.viewport={w:e,h:r},this.sendViewport()}sendViewport(){const e=typeof devicePixelRatio=="number"?devicePixelRatio:1;this.send({type:"SetViewport",w:Math.max(1,Math.round(this.viewport.w*this.zoom)),h:Math.max(1,Math.round(this.viewport.h*this.zoom)),dpr:e})}setZoom(e,r=this.panX,n=this.panY){const s=Math.max(.1,Math.min(16,e)),i=Math.abs(s-this.zoom)>1e-6;this.zoom=s,this.panX=r,this.panY=n,i&&this.viewport.w>0&&this.sendViewport(),this.savePersist()}resetView(){this.setZoom(1,0,0)}sceneStart(e){const r=this.scenes.find(n=>n.name===e);return r?r.start/this.fps:0}sceneAt(e){return[...this.scenes].reverse().find(r=>r.start<=e)??this.scenes[0]}markerFrame(e){return Math.round((this.sceneStart(e.scene)+e.time)*this.fps)}moveMarker(e,r,n){const s=Math.max(0,n/this.fps-this.sceneStart(e));this.send({type:"SetMarker",name:r,time:Number(s.toFixed(6)),scene:e})}markerAtPlayhead(){const e=this.sceneAt(this.frame);if(!e)return;if(this.selectedMarker){this.moveMarker(this.selectedMarker.scene,this.selectedMarker.name,this.frame);return}const r=new Set(this.markers.filter(i=>i.scene===e.name).map(i=>i.name));let n=1;for(;r.has(`marker-${n}`);)n+=1;const s=`marker-${n}`;this.moveMarker(e.name,s,this.frame),this.selectedMarker={scene:e.name,name:s}}setEase(e,r){this.send({type:"SetEase",name:e,value:r})}setTunable(e,r){this.send({type:"SetTunable",name:e,value:r})}setTransition(e,r){this.send({type:"SetTransition",scene:e,seconds:Number(Math.max(0,r).toFixed(6))})}pick(e,r){this.send({type:"Pick",x:e,y:r})}select(e){this.selected=e,this.send({type:"Select",node_id:e})}dismissError(){this.error=null}savePersist(){this.persistEnabled&&oa({frame:this.frame,zoom:this.zoom,panX:this.panX,panY:this.panY,selected:this.selected})}}function tn(t,e){const r=t/Math.max(1,e),n=Math.floor(r/60),s=Math.floor(r%60),i=t%Math.max(1,e);return`${n}:${String(s).padStart(2,"0")}.${String(i).padStart(2,"0")}`}var ua=te('<div class="transition svelte-112n2zp"><button class="trim svelte-112n2zp"></button></div>'),ca=te('<div class="scene svelte-112n2zp"><span> </span></div> <!>',1),fa=te('<span class="svelte-112n2zp"> </span>'),da=te('<div data-testid="audio-clip"><!></div>'),ha=te('<button><span class="flag svelte-112n2zp"> </span></button>'),va=te('<section class="timeline svelte-112n2zp"><div class="transport svelte-112n2zp"><button>⏮</button> <button>◀︎</button> <button class="play svelte-112n2zp" data-testid="play"> </button> <button>▶︎</button> <button>⏭</button> <span class="time svelte-112n2zp" data-testid="time"> </span> <span class="frame svelte-112n2zp" data-testid="frame"> </span> <span class="spacer svelte-112n2zp"></span> <button>+ M</button></div> <div class="track svelte-112n2zp" role="slider" tabindex="0" data-testid="track"><div class="scenes svelte-112n2zp"></div> <!> <canvas class="wave svelte-112n2zp" aria-hidden="true"></canvas> <!> <div class="playhead svelte-112n2zp" aria-hidden="true"></div></div></section>');function pa(t,e){at(e,!0);let r=rt(e,"editor",7),n,s,i=q(0);const a=de(()=>Math.max(1,r().frames)),l=_=>_/Math.max(1,o(a)-1)*o(i),u=_=>{const p=n.getBoundingClientRect(),z=Math.min(1,Math.max(0,(_-p.left)/Math.max(1,p.width)));return Math.round(z*(o(a)-1))};let c=!1,h=null;function v(_){h=_,requestAnimationFrame(()=>{h!==null&&r().seek(h),h=null})}function m(_){const p=_.target;p.dataset.marker||p.closest("[data-transition]")||(c=!0,n.setPointerCapture(_.pointerId),r().playing&&r().pause(),v(u(_.clientX)))}function d(_){c&&v(u(_.clientX))}function g(){c=!1}let E=q(null);const f=_=>o(E)&&o(E).m.name===_.name&&o(E).m.scene===_.scene?o(E).frame:r().markerFrame(_);function b(_,p){_.stopPropagation(),_.target.setPointerCapture(_.pointerId),r().selectedMarker={scene:p.scene,name:p.name},P(E,{m:p,frame:r().markerFrame(p)},!0)}function x(_){o(E)&&P(E,{...o(E),frame:u(_.clientX)},!0)}function R(){if(!o(E))return;const{m:_,frame:p}=o(E);P(E,null),p!==r().markerFrame(_)&&r().moveMarker(_.scene,_.name,p)}function y(_,p){const z=_.key==="ArrowLeft"?-1:_.key==="ArrowRight"?1:0;z?(_.preventDefault(),r().moveMarker(p.scene,p.name,r().markerFrame(p)+z*(_.shiftKey?10:1))):_.key==="Enter"&&r().seek(r().markerFrame(p))}let S=q(null);const O=_=>o(S)&&o(S).name===_.name?o(S).frames:_.transition??0;function H(_,p){_.stopPropagation(),_.currentTarget.setPointerCapture(_.pointerId),P(S,{name:p.name,frames:p.transition??0},!0)}function ie(_,p){if(!o(S)||o(S).name!==p.name)return;const z=p.start+(p.transition_at??0);P(S,{name:p.name,frames:Math.max(0,u(_.clientX)-z)},!0)}function C(_){if(!o(S)||o(S).name!==_.name)return;const p=o(S).frames;P(S,null),p!==(_.transition??0)&&r().setTransition(_.name,p/r().fps)}or(()=>{const _=r().waveform,p=s?.getContext("2d");if(!p)return;const z=devicePixelRatio||1,ee=28;if(s.width=Math.max(1,Math.round(o(i)*z)),s.height=Math.round(ee*z),p.setTransform(z,0,0,z,0,0),p.clearRect(0,0,o(i),ee),!_||_.length===0)return;p.fillStyle=getComputedStyle(s).getPropertyValue("--m-wave")||"#4b5563";const J=_.length;for(let ge=0;ge<o(i);ge++){const Ae=_[Math.min(J-1,Math.floor(ge/o(i)*J))]??0,pe=Math.max(1,Ae*ee);p.fillRect(ge,(ee-pe)/2,1,pe)}});var N=va(),re=W(N),ue=W(re),Te=k(ue,2),ye=k(Te,2),_t=B(ye,!0),ze=k(ye,2),Be=k(ze,2),lt=k(Be,2),M=B(lt,!0),T=k(lt,2),F=B(T),V=k(T,4),Y=k(re,2);w(Y,"aria-valuemin",0);var Z=W(Y);je(Z,21,()=>r().scenes,_=>_.name,(_,p)=>{var z=ca(),ee=Fn(z);let J;var ge=W(ee),Ae=B(ge,!0),pe=k(ee,2);{var Pe=Ie=>{var ke=ua();let gt;var Ke=B(ke);Q((Ge,Ot,ur,is)=>{w(ke,"data-transition",o(p).name),w(ke,"data-testid",`transition-${o(p).name??""}`),w(ke,"title",Ge),gt=tt(ke,"",gt,{left:Ot,width:ur}),w(Ke,"data-transition",o(p).name),w(Ke,"aria-label",is)},[()=>A("timeline.transition",{name:o(p).name,seconds:(O(o(p))/r().fps).toFixed(2)}),()=>`${l(o(p).start+(o(p).transition_at??0))??""}px`,()=>`${Math.max(8,l(o(p).start+(o(p).transition_at??0)+O(o(p)))-l(o(p).start+(o(p).transition_at??0)))}px`,()=>A("timeline.transition",{name:o(p).name,seconds:(O(o(p))/r().fps).toFixed(2)})]),U("pointerdown",Ke,Ge=>H(Ge,o(p))),U("pointermove",Ke,Ge=>ie(Ge,o(p))),U("pointerup",Ke,()=>C(o(p))),$(Ie,ke)},Ee=de(()=>O(o(p))>0);be(pe,Ie=>{o(Ee)&&Ie(Pe)})}Q((Ie,ke)=>{w(ee,"title",o(p).name),J=tt(ee,"",J,{left:Ie,width:ke}),L(Ae,o(p).name)},[()=>`${l(o(p).start)??""}px`,()=>`${Math.max(0,l(o(p).start+o(p).frames-1)-l(o(p).start))}px`]),$(_,z)});var ae=k(Z,2);je(ae,19,()=>r().clips,(_,p)=>_.name+":"+p,(_,p)=>{var z=da();let ee,J;var ge=W(z);{var Ae=pe=>{var Pe=fa(),Ee=B(Pe,!0);Q(()=>L(Ee,o(p).text)),$(pe,Pe)};be(ge,pe=>{o(p).text&&pe(Ae)})}Q((pe,Pe)=>{ee=Ht(z,1,"clip svelte-112n2zp",null,ee,{priority:o(p).priority}),w(z,"title",o(p).text??o(p).name),J=tt(z,"",J,{left:pe,width:Pe})},[()=>`${l(o(p).start*r().fps)??""}px`,()=>`${Math.max(2,l((o(p).start+o(p).seconds)*r().fps)-l(o(p).start*r().fps))}px`]),$(_,z)});var ce=k(ae,2);let fe;Pt(ce,_=>s=_,()=>s);var I=k(ce,2);je(I,17,()=>r().markers,_=>_.scene+"/"+_.name,(_,p)=>{const z=de(()=>f(o(p))),ee=de(()=>r().selectedMarker?.name===o(p).name&&r().selectedMarker?.scene===o(p).scene);var J=ha();let ge,Ae;var pe=W(J),Pe=B(pe,!0);Q((Ee,Ie,ke)=>{ge=Ht(J,1,"marker svelte-112n2zp",null,ge,{selected:o(ee)}),w(J,"data-marker",o(p).name),w(J,"data-testid",`marker-${o(p).name??""}`),w(J,"aria-label",Ee),w(J,"title",`${o(p).name??""} · ${Ie??""} s`),Ae=tt(J,"",Ae,{left:ke}),L(Pe,o(p).name)},[()=>A("timeline.marker",{name:o(p).name,time:(o(z)/r().fps).toFixed(2)}),()=>(o(z)/r().fps).toFixed(2),()=>`${l(o(z))??""}px`]),U("pointerdown",J,Ee=>b(Ee,o(p))),U("pointermove",J,x),U("pointerup",J,R),U("keydown",J,Ee=>y(Ee,o(p))),Ur("focus",J,()=>r().selectedMarker={scene:o(p).scene,name:o(p).name}),$(_,J)});var D=k(I,2);let X;Pt(Y,_=>n=_,()=>n),Q((_,p,z,ee,J,ge,Ae,pe,Pe,Ee,Ie,ke,gt,Ke,Ge,Ot)=>{w(N,"aria-label",_),w(ue,"title",p),w(ue,"aria-label",z),w(Te,"title",ee),w(Te,"aria-label",J),w(ye,"title",ge),w(ye,"aria-label",Ae),L(_t,r().playing?"❚❚":"▶"),w(ze,"title",pe),w(ze,"aria-label",Pe),w(Be,"title",Ee),w(Be,"aria-label",Ie),L(M,ke),L(F,`${r().frame??""} / ${r().lastFrame??""}`),w(V,"title",gt),w(Y,"aria-label",Ke),w(Y,"aria-valuemax",r().lastFrame),w(Y,"aria-valuenow",r().frame),w(Y,"aria-valuetext",Ge),fe=tt(ce,"",fe,{width:`${o(i)??""}px`}),X=tt(D,"",X,{left:Ot})},[()=>A("timeline.label"),()=>A("transport.start"),()=>A("transport.start"),()=>A("transport.prev"),()=>A("transport.prev"),()=>r().playing?A("transport.pause"):A("transport.play"),()=>r().playing?A("transport.pause"):A("transport.play"),()=>A("transport.next"),()=>A("transport.next"),()=>A("transport.end"),()=>A("transport.end"),()=>tn(r().frame,r().fps),()=>A("timeline.addMarker"),()=>A("timeline.label"),()=>tn(r().frame,r().fps),()=>`${l(r().frame)??""}px`]),U("click",ue,()=>r().seek(0)),U("click",Te,()=>r().step(-1)),U("click",ye,()=>r().togglePlay()),U("click",ze,()=>r().step(1)),U("click",Be,()=>r().seek(r().lastFrame)),U("click",V,()=>r().markerAtPlayhead()),U("pointerdown",Y,m),U("pointermove",Y,d),U("pointerup",Y,g),Di(Y,"clientWidth",_=>P(i,_)),$(t,N),ot()}Rt(["click","pointerdown","pointermove","pointerup","keydown"]);var ma=te('<span class="name"> </span>'),_a=te('<li role="treeitem"><button><span class="kind svelte-gu3dqx"> </span> <!> <span class="id svelte-gu3dqx"> </span></button></li>'),mr=te('<p class="dim svelte-gu3dqx"> </p>'),ga=te('<span class="swatch svelte-gu3dqx"></span>'),ba=te('<tr><th scope="row" class="svelte-gu3dqx"> </th><td class="svelte-gu3dqx"><!> </td></tr>'),wa=te('<table data-testid="signals" class="svelte-gu3dqx"><tbody></tbody></table>'),ya=te('<label class="tunable svelte-gu3dqx"><span class="svelte-gu3dqx"> </span> <input type="range"/> <input type="number"/></label>'),ka=te('<button class="ease svelte-gu3dqx"><svg viewBox="-2 -2 28 28" width="28" height="28" aria-hidden="true" class="svelte-gu3dqx"><path fill="none" stroke="currentColor" stroke-width="2"></path></svg> <span> </span> <code class="svelte-gu3dqx"> </code></button>'),xa=te('<aside class="inspector svelte-gu3dqx"><section class="svelte-gu3dqx"><h2 class="svelte-gu3dqx"> </h2> <ul class="tree svelte-gu3dqx" role="tree" data-testid="tree"></ul></section> <section class="svelte-gu3dqx"><h2 class="svelte-gu3dqx"> </h2> <!></section> <section class="svelte-gu3dqx"><h2 class="svelte-gu3dqx"> </h2> <!> <!></section> <section class="svelte-gu3dqx"><h2 class="svelte-gu3dqx"> </h2> <!> <!></section></aside>');function Ma(t,e){at(e,!0);let r=rt(e,"editor",7);const n=de(()=>{const M=new Map(r().tree.map(F=>[F.id,F])),T=F=>{let V=0,Y=F.parent;for(;Y!=null&&V<64;)V+=1,Y=M.get(Y)?.parent??null;return V};return r().tree.map(F=>({n:F,depth:T(F)}))}),s=de(()=>Object.entries(r().metas).flatMap(([M,T])=>Object.entries(T.tunables??{}).map(([F,V])=>({scene:M,name:F,value:V})))),i=de(()=>Object.entries(r().metas).flatMap(([M,T])=>Object.entries(T.eases??{}).map(([F,V])=>({scene:M,name:F,value:V}))));function a(M){const T=M===0?10:Math.abs(M)*2,F=M>=0?0:M-T,V=M>=0?Math.max(M*2,1):M+T;return[F,V,(V-F)/200]}const l=new Map;function u(M,T){clearTimeout(l.get(M)),l.set(M,setTimeout(()=>r().setTunable(M,T),60))}const c=new Map;function h(M,T){return c.has(M)||c.set(M,a(T)),c.get(M)}function v(M){const[T=0,F=0,V=1,Y=1]=M,Z=24;return`M0 ${Z} C${T*Z} ${Z-F*Z} ${V*Z} ${Z-Y*Z} ${Z} 0`}var m=xa(),d=W(m),g=W(d),E=B(g,!0),f=k(g,2);je(f,21,()=>o(n),({n:M,depth:T})=>M.id,(M,T)=>{let F=()=>o(T).n,V=()=>o(T).depth;var Y=_a(),Z=W(Y);let ae,ce;var fe=W(Z),I=B(fe,!0),D=k(fe,2);{var X=z=>{var ee=ma(),J=B(ee,!0);Q(()=>L(J,F().name)),$(z,ee)};be(D,z=>{F().name&&z(X)})}var _=k(D,2),p=B(_);Q(()=>{w(Y,"aria-selected",r().selected===F().id),ae=Ht(Z,1,"node svelte-gu3dqx",null,ae,{sel:r().selected===F().id}),ce=tt(Z,"",ce,{"padding-left":`${8+V()*12}px`}),L(I,F().kind),L(p,`#${F().id??""}`)}),U("click",Z,()=>r().select(F().id===r().selected?null:F().id)),$(M,Y)});var b=k(d,2),x=W(b),R=B(x,!0),y=k(x,2);{var S=M=>{var T=mr(),F=B(T,!0);Q(V=>L(F,V),[()=>A("inspector.noSelection")]),$(M,T)},O=M=>{var T=wa(),F=W(T);je(F,21,()=>r().signals,V=>V.name,(V,Y)=>{var Z=ba(),ae=W(Z),ce=B(ae,!0),fe=k(ae),I=W(fe);{var D=p=>{var z=ga();let ee;Q(()=>ee=tt(z,"",ee,{background:o(Y).value})),$(p,z)},X=de(()=>/^#[0-9a-f]{8}$/i.test(o(Y).value));be(I,p=>{o(X)&&p(D)})}var _=k(I);Q(()=>{L(ce,o(Y).name),L(_,` ${o(Y).value??""}`)}),$(V,Z)}),$(M,T)};be(y,M=>{r().selected===null?M(S):M(O,-1)})}var H=k(b,2),ie=W(H),C=B(ie,!0),N=k(ie,2);{var re=M=>{var T=mr(),F=B(T,!0);Q(V=>L(F,V),[()=>A("inspector.none")]),$(M,T)};be(N,M=>{o(s).length===0&&M(re)})}var ue=k(N,2);je(ue,17,()=>o(s),M=>M.scene+M.name,(M,T)=>{const F=de(()=>{const[fe,I,D]=h(o(T).name,o(T).value);return{min:fe,max:I,step:D}});var V=ya(),Y=W(V),Z=B(Y,!0),ae=k(Y,2),ce=k(ae,2);Q(()=>{L(Z,o(T).name),w(ae,"min",o(F).min),w(ae,"max",o(F).max),w(ae,"step",o(F).step),Qr(ae,o(T).value),w(ae,"data-testid",`tunable-${o(T).name??""}`),w(ce,"step",o(F).step),Qr(ce,o(T).value),w(ce,"aria-label",`${o(T).name??""} value`)}),U("input",ae,fe=>u(o(T).name,+fe.currentTarget.value)),U("change",ce,fe=>r().setTunable(o(T).name,+fe.currentTarget.value)),$(M,V)});var Te=k(H,2),ye=W(Te),_t=B(ye,!0),ze=k(ye,2);{var Be=M=>{var T=mr(),F=B(T,!0);Q(V=>L(F,V),[()=>A("inspector.none")]),$(M,T)};be(ze,M=>{o(i).length===0&&M(Be)})}var lt=k(ze,2);je(lt,17,()=>o(i),M=>M.scene+M.name,(M,T)=>{var F=ka(),V=W(F),Y=B(V),Z=k(V,2),ae=B(Z,!0),ce=k(Z,2),fe=B(ce,!0);Q((I,D)=>{w(F,"data-testid",`ease-${o(T).name??""}`),w(Y,"d",I),L(ae,o(T).name),L(fe,D)},[()=>v(o(T).value),()=>o(T).value.map(I=>I.toFixed(2)).join(", ")]),U("click",F,()=>r().editingEase={scene:o(T).scene,name:o(T).name}),$(M,F)}),Q((M,T,F,V)=>{L(E,M),L(R,T),L(C,F),L(_t,V)},[()=>A("inspector.tree"),()=>A("inspector.signals"),()=>A("inspector.tunables"),()=>A("inspector.eases")]),$(t,m),ot()}Rt(["click","input","change"]);var Ea=te('<span class="dim svelte-1qw5yfa"> </span>'),Sa=te("<li><code> </code> </li>"),Ta=te('<ul class="svelte-1qw5yfa"></ul>'),Aa=te('<div class="overlay svelte-1qw5yfa" role="alert" data-testid="error-overlay"><header class="svelte-1qw5yfa"><strong class="svelte-1qw5yfa"> </strong> <!> <button class="svelte-1qw5yfa"> </button></header> <!> <pre class="svelte-1qw5yfa"> </pre></div>');function Pa(t,e){at(e,!0);const r=de(()=>e.editor.error),n=de(()=>o(r).kind==="Build"?A("error.build"):o(r).kind==="Incompatible"?A("error.incompatible"):o(r).kind==="Meta"?A("error.meta"):A("error.runtime"));var s=Aa(),i=W(s),a=W(i),l=B(a,!0),u=k(a,2);{var c=f=>{var b=Ea(),x=B(b,!0);Q(R=>L(x,R),[()=>A("error.previous")]),$(f,b)};be(u,f=>{o(r).kind==="Build"&&f(c)})}var h=k(u,2),v=B(h,!0),m=k(i,2);{var d=f=>{var b=Ta();je(b,21,()=>o(r).spans,Ti,(x,R)=>{var y=Sa(),S=W(y),O=B(S),H=k(S);Q(()=>{L(O,`${o(R).file??""}:${o(R).line??""}:${o(R).column??""}`),L(H,` ${o(R).message??""}`)}),$(x,y)}),$(f,b)};be(m,f=>{o(r).spans.length&&f(d)})}var g=k(m,2),E=B(g,!0);Q(f=>{L(l,o(n)),L(v,f),L(E,o(r).message)},[()=>A("error.dismiss")]),U("click",h,()=>e.editor.dismissError()),$(t,s),ot()}Rt(["click"]);function Ca(t,e,r,n){const s=3*t,i=3*(r-t)-s,a=1-s-i,l=3*e,u=3*(n-e)-l,c=1-l-u,h=d=>((a*d+i)*d+s)*d,v=d=>((c*d+u)*d+l)*d,m=d=>(3*a*d+2*i)*d+s;return d=>{if(d<=0)return 0;if(d>=1)return 1;let g=d;for(let b=0;b<8;b++){const x=h(g)-d;if(Math.abs(x)<1e-7)return v(g);const R=m(g);if(Math.abs(R)<1e-6)break;g=Math.min(1,Math.max(0,g-x/R))}let E=0,f=1;g=d;for(let b=0;b<40;b++){const x=h(g);if(Math.abs(x-d)<1e-7)break;x<d?E=g:f=g,g=(E+f)/2}return v(g)}}const rn={linear:[0,0,1,1],ease:[.25,.1,.25,1],"in-out-cubic":[.65,0,.35,1],"in-cubic":[.32,0,.67,0],"out-cubic":[.33,1,.68,1],"in-out-sine":[.37,0,.63,1],"in-out-expo":[.87,0,.13,1],"out-back":[.34,1.56,.64,1],"in-out-back":[.68,-.6,.32,1.6]};var Fa=gi('<circle r="8" class="handle svelte-12hhbkq" tabindex="0" role="slider"></circle>'),Ra=te("<option> </option>"),Oa=te('<div class="backdrop svelte-12hhbkq" role="presentation"></div> <div class="dialog svelte-12hhbkq" role="dialog" aria-modal="true" data-testid="curve-editor"><header class="svelte-12hhbkq"><strong> </strong> <button> </button></header> <svg role="group" class="svelte-12hhbkq"><rect class="unit svelte-12hhbkq"></rect><line class="arm svelte-12hhbkq"></line><line class="arm svelte-12hhbkq"></line><path class="curve svelte-12hhbkq"></path><circle r="4" class="fixed svelte-12hhbkq"></circle><circle r="4" class="fixed svelte-12hhbkq"></circle><!><circle r="5" class="dot svelte-12hhbkq"></circle></svg> <div class="row svelte-12hhbkq"><label> <select><option>—</option><!></select></label> <code class="svelte-12hhbkq"> </code></div></div>',1);function za(t,e){at(e,!0);let r=rt(e,"editor",7);const n=de(()=>r().editingEase),s=de(()=>r().metas[o(n).scene]?.eases?.[o(n).name]??[.65,0,.35,1]);let i=de(()=>[o(s)[0]??0,o(s)[1]??0,o(s)[2]??1,o(s)[3]??1]);const a=240,l=20,u=I=>l+I*a,c=I=>l+(1.5-I)*(a/2),h=(I,D)=>[Math.min(1,Math.max(0,(I-l)/a)),Math.min(1.5,Math.max(-.5,1.5-(D-l)/(a/2)))];let v,m=null,d;function g(){clearTimeout(d),d=setTimeout(()=>r().setEase(o(n).name,[...o(i)]),80)}function E(I){if(m===null)return;const D=v.getBoundingClientRect(),X=(l*2+a)/D.width,[_,p]=h((I.clientX-D.left)*X,(I.clientY-D.top)*X),z=[...o(i)];z[m*2]=Number(_.toFixed(3)),z[m*2+1]=Number(p.toFixed(3)),P(i,z),g()}function f(I,D){const X=I.shiftKey?.1:.01,p={ArrowLeft:[-X,0],ArrowRight:[X,0],ArrowUp:[0,X],ArrowDown:[0,-X]}[I.key];if(!p)return;I.preventDefault();const z=[...o(i)];z[D*2]=Math.min(1,Math.max(0,z[D*2]+p[0])),z[D*2+1]=Math.min(1.5,Math.max(-.5,z[D*2+1]+p[1])),P(i,z),g()}const b=de(()=>`M${u(0)} ${c(0)} C${u(o(i)[0])} ${c(o(i)[1])} ${u(o(i)[2])} ${c(o(i)[3])} ${u(1)} ${c(1)}`);let x=q(0);lr(()=>{let I=0;const D=performance.now(),X=_=>{const p=(_-D)/1400%1.4;P(x,Ca(...o(i))(Math.min(1,p)),!0),I=requestAnimationFrame(X)};return I=requestAnimationFrame(X),()=>cancelAnimationFrame(I)});var R=Oa(),y=Fn(R),S=k(y,2),O=W(S),H=W(O),ie=B(H,!0),C=k(H,2),N=B(C,!0),re=k(O,2);w(re,"viewBox","0 0 280 280");var ue=W(re);w(ue,"width",a),w(ue,"height",a/2);var Te=k(ue),ye=k(Te),_t=k(ye),ze=k(_t),Be=k(ze),lt=k(Be);je(lt,16,()=>[0,1],I=>I,(I,D)=>{var X=Fa();Q((_,p,z,ee)=>{w(X,"cx",_),w(X,"cy",p),w(X,"aria-label",`control point ${D+1}`),w(X,"aria-valuetext",`${z??""}, ${ee??""}`),w(X,"aria-valuenow",o(i)[D*2+1]),w(X,"data-testid",`handle-${D??""}`)},[()=>u(o(i)[D*2]),()=>c(o(i)[D*2+1]),()=>o(i)[D*2].toFixed(2),()=>o(i)[D*2+1].toFixed(2)]),U("pointerdown",X,_=>{m=D,v.setPointerCapture(_.pointerId)}),U("keydown",X,_=>f(_,D)),$(I,X)});var M=k(lt);w(M,"cy",a+l*2-6),Pt(re,I=>v=I,()=>v);var T=k(re,2),F=W(T),V=W(F),Y=k(V),Z=W(Y);Z.value=Z.__value="";var ae=k(Z);je(ae,16,()=>Object.keys(rn),I=>I,(I,D)=>{var X=Ra(),_=B(X,!0),p={};Q(()=>{L(_,D),p!==(p=D)&&(X.value=(X.__value=p)??"")}),$(I,X)});var ce=k(F,2),fe=B(ce);Q((I,D,X,_,p,z,ee,J,ge,Ae,pe,Pe,Ee,Ie,ke,gt,Ke,Ge,Ot,ur)=>{w(S,"aria-label",I),L(ie,D),L(N,X),w(ue,"x",_),w(ue,"y",p),w(Te,"x1",z),w(Te,"y1",ee),w(Te,"x2",J),w(Te,"y2",ge),w(ye,"x1",Ae),w(ye,"y1",pe),w(ye,"x2",Pe),w(ye,"y2",Ee),w(_t,"d",o(b)),w(ze,"cx",Ie),w(ze,"cy",ke),w(Be,"cx",gt),w(Be,"cy",Ke),w(M,"cx",Ge),L(V,`${Ot??""} `),L(fe,`[${ur??""}]`)},[()=>A("curve.title",{name:o(n).name}),()=>A("curve.title",{name:o(n).name}),()=>A("curve.close"),()=>u(0),()=>c(1),()=>u(0),()=>c(0),()=>u(o(i)[0]),()=>c(o(i)[1]),()=>u(1),()=>c(1),()=>u(o(i)[2]),()=>c(o(i)[3]),()=>u(0),()=>c(0),()=>u(1),()=>c(1),()=>u(o(x)),()=>A("curve.presets"),()=>o(i).map(I=>I.toFixed(2)).join(", ")]),U("click",y,()=>r().editingEase=null),U("click",C,()=>r().editingEase=null),U("pointermove",re,E),U("pointerup",re,()=>m=null),U("change",Y,I=>{const D=rn[I.currentTarget.value];D&&(P(i,[...D]),g())}),$(t,R),ot()}Rt(["click","pointermove","pointerup","pointerdown","keydown","change"]);var Ia=te('<div data-testid="editor" tabindex="-1"><!> <main class="svelte-1ctqrjb"><section class="stage svelte-1ctqrjb"><!> <!></section> <!></main> <!> <!></div>');function qa(t,e){at(e,!0);let r=rt(e,"editor",7),n=rt(e,"autostart",3,!0),s=rt(e,"compact",3,!1),i=rt(e,"scopedKeys",3,!1),a;function l(){try{const C=localStorage.getItem("oxframe-theme");if(C==="dark"||C==="light")return C}catch{}return typeof matchMedia<"u"&&matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}let u=q(me(mt(()=>e.theme)??l()));function c(){P(u,o(u)==="dark"?"light":"dark",!0);try{localStorage.setItem("oxframe-theme",o(u))}catch{}}lr(()=>{n()&&r().start()}),Vi(()=>{n()&&r().stop()});function h(C){const N=C.target;if(i()&&!a?.contains(document.activeElement)||N&&(N.closest("input, textarea, select, [contenteditable]")||N.isContentEditable)||N?.dataset.marker&&(C.key==="ArrowLeft"||C.key==="ArrowRight"))return;const re=C.shiftKey?10:1;switch(C.key){case" ":r().togglePlay();break;case"ArrowLeft":r().step(-re);break;case"ArrowRight":r().step(re);break;case"Home":r().seek(0);break;case"End":r().seek(r().lastFrame);break;case"m":case"M":r().markerAtPlayhead();break;case"Escape":r().editingEase?r().editingEase=null:r().error?r().dismissError():r().selectedMarker=null;break;default:return}C.preventDefault()}var v=Ia();Ur("keydown",Mr,h);let m;var d=W(v);{var g=C=>{ea(C,{get editor(){return r()},get theme(){return o(u)},onToggleTheme:c})};be(d,C=>{s()||C(g)})}var E=k(d,2),f=W(E),b=W(f);na(b,{get editor(){return r()}});var x=k(b,2);{var R=C=>{Pa(C,{get editor(){return r()}})};be(x,C=>{r().error&&C(R)})}var y=k(f,2);{var S=C=>{Ma(C,{get editor(){return r()}})};be(y,C=>{s()||C(S)})}var O=k(E,2);pa(O,{get editor(){return r()}});var H=k(O,2);{var ie=C=>{za(C,{get editor(){return r()}})};be(H,C=>{r().editingEase&&C(ie)})}Pt(v,C=>a=C,()=>a),Q(C=>{m=Ht(v,1,"oxframe-editor svelte-1ctqrjb",null,m,{compact:s()}),w(v,"data-theme",o(u)),w(f,"aria-label",C)},[()=>A("viewport.label")]),$(t,v),ot()}const ts=new URLSearchParams(location.search),rs=window.__OXFRAME_CONFIG__??{},Na=ts.get("backend")??rs.backend??"ws",ns=Na==="mock"?new Wi:new Xi({url:rs.url??"/ws",token:ts.get("token")??void 0}),ss=new la(ns,{uiVersion:"0.1.3"});window.__oxframe={editor:ss,backend:ns};xi(qa,{target:document.getElementById("app"),props:{editor:ss}});