var y=(e)=>typeof e==="function",P=(e)=>e&&typeof e==="object",b=Array.isArray,g=typeof document<"u"?document:null,k=(e)=>e?._isRuntime?e.container:e instanceof Node?e:g.createTextNode(e==null?"":String(e)),p=null,_=null,x=!1,A=0,C=new Set,D=new WeakMap,$=Symbol("iter"),B=new WeakMap,E=(e)=>{if(!e||e._disposed)return;e._disposed=!0;let o=[e];while(o.length){let n=o.pop();if(n._cleanups)n._cleanups.forEach((i)=>i()),n._cleanups.clear();if(n._children)n._children.forEach((i)=>o.push(i)),n._children.clear();if(n._deps)n._deps.forEach((i)=>i.delete(n)),n._deps.clear()}},N=(e)=>{if(_)(_._cleanups||=new Set).add(e)},V=(e)=>{let o=p;p=null;try{return e()}finally{p=o}},T=(e,o=!1)=>{let n=()=>{if(n._disposed)return;if(n._deps)n._deps.forEach((c)=>c.delete(n));if(n._cleanups)n._cleanups.forEach((c)=>c()),n._cleanups.clear();let i=p,s=_;p=_=n;try{return n._result=e()}catch(c){console.error("[SigPro]",c)}finally{p=i,_=s}};if(n._deps=n._cleanups=n._children=null,n._disposed=!1,n._isComputed=o,n._depth=p?p._depth+1:0,n._mounts=[],n._parent=_,_)(_._children||=new Set).add(n);return n},q=()=>{if(x)return;x=!0;let e=Array.from(C).sort((o,n)=>o._depth-n._depth);C.clear();for(let o of e)if(!o._disposed)o();x=!1},W=(e)=>{A++;try{return e()}finally{if(A--,A===0&&C.size>0&&!x)q()}},w=(e,o=!1)=>{if(!o&&p&&!p._disposed)e.add(p),(p._deps||=new Set).add(e);else if(o&&e.size>0){let n=!1;for(let i of e){if(i===p||i._disposed)continue;if(i._isComputed){if(i._dirty=!0,i._subs)w(i._subs,!0)}else C.add(i),n=!0}if(n&&!x&&A===0)queueMicrotask(q)}},S=(e,o=null)=>{let n=new Set;if(y(e)){let i,s=()=>{if(s._dirty){let c=p;p=s;try{let t=e();if(!Object.is(i,t))i=t,w(n,!0)}finally{p=c}s._dirty=!1}return w(n),i};if(s._isComputed=!0,s._subs=n,s._dirty=!0,s._deps=null,s._disposed=!1,s.stop=()=>{},_)N(s.stop);return s}if(o)try{e=JSON.parse(localStorage.getItem(o))??e}catch(i){}return(...i)=>{if(i.length){let s=y(i[0])?i[0](e):i[0];if(!Object.is(e,s)){if(e=s,o)localStorage.setItem(o,JSON.stringify(e));w(n,!0)}}return w(n),e}},I=(e)=>{if(!P(e))return e;let o=D.get(e);if(o)return o;let n=new Map,i=(c)=>{let t=n.get(c);if(!t)n.set(c,t=new Set);return t},s=new Proxy(e,{get(c,t,r){if(typeof t!=="symbol")w(i(t));return I(Reflect.get(c,t,r))},set(c,t,r,l){let u=Reflect.has(c,t),a=Reflect.get(c,t,l),f=Reflect.set(c,t,r,l);if(f&&!Object.is(a,r)){if(w(i(t),!0),!u)w(i($),!0)}return f},deleteProperty(c,t){let r=Reflect.deleteProperty(c,t);if(r)w(i(t),!0),w(i($),!0);return r},ownKeys(c){return w(i($)),Reflect.ownKeys(c)}});return D.set(e,s),s},R=(e,o)=>{if(o===void 0){let i=T(e);return i(),()=>E(i)}let n=T(()=>{let i=Array.isArray(e)?e.map((s)=>s()):e();V(()=>o(i))});return n(),()=>E(n)},L=(e)=>{if(!e)return;if(e._cleanups)e._cleanups.forEach((o)=>o()),e._cleanups.clear();if(e._ownerEffect)E(e._ownerEffect);if(e.childNodes)e.childNodes.forEach((o)=>L(o))},F=/^\s*(javascript|data|vbscript):/i,J=(e)=>e==="src"||e==="href"||e.startsWith("on"),M=(e,o)=>{if(o==null||o===!1)return null;if(J(e)){let n=String(o);if(F.test(n))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${e}`),"#"}return o},O=(e,o={},n=[])=>{if(o instanceof Node||b(o)||!P(o))n=o,o={};if(y(e)){let t=T(()=>{let a=e(o,{children:n,emit:(f,...h)=>o[`on${f[0].toUpperCase()}${f.slice(1)}`]?.(...h)});return t._result=a,a});t();let r=t._result;if(r==null)return null;let l=r instanceof Node||b(r)&&r.every((a)=>a instanceof Node)?r:g.createTextNode(String(r)),u=(a)=>{if(P(a)&&!a._isRuntime)a._mounts=t._mounts||[],a._cleanups=t._cleanups||new Set,a._ownerEffect=t};return b(l)?l.forEach(u):u(l),l}let i=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(e),s=i?g.createElementNS("http://www.w3.org/2000/svg",e):g.createElement(e);s._cleanups=new Set;for(let t in o){if(!o.hasOwnProperty(t))continue;let r=o[t];if(t==="ref"){y(r)?r(s):r.current=s;continue}if(i&&t.startsWith("xlink:")){r==null?s.removeAttributeNS("http://www.w3.org/1999/xlink",t.slice(6)):s.setAttributeNS("http://www.w3.org/1999/xlink",t.slice(6),r);continue}if(t.startsWith("on")){let l=t.slice(2).toLowerCase();s.addEventListener(l,r);let u=()=>s.removeEventListener(l,r);s._cleanups.add(u),N(u)}else if(y(r)){let l=T(()=>{let u=M(t,r());if(t==="class")s.className=u||"";else if(u==null)s.removeAttribute(t);else if(t in s&&!i)s[t]=u;else s.setAttribute(t,u===!0?"":u)});if(l(),s._cleanups.add(()=>E(l)),N(()=>E(l)),/^(INPUT|TEXTAREA|SELECT)$/.test(s.tagName)&&(t==="value"||t==="checked")){let u=t==="checked"?"change":"input";s.addEventListener(u,(a)=>r(a.target[t]))}}else{let l=M(t,r);if(l!=null)if(t in s&&!i)s[t]=l;else s.setAttribute(t,l===!0?"":l)}}let c=(t)=>{if(b(t))return t.forEach(c);if(y(t)){let r=g.createTextNode("");s.appendChild(r);let l=[],u=T(()=>{let a=t(),f=(b(a)?a:[a]).map(k);l.forEach((d)=>{if(d._isRuntime)d.destroy();else L(d);if(d.parentNode)d.remove()});let h=r;for(let d=f.length-1;d>=0;d--){let m=f[d];if(m.parentNode!==h.parentNode)h.parentNode?.insertBefore(m,h);if(m._mounts)m._mounts.forEach((U)=>U());h=m}l=f});u(),s._cleanups.add(()=>E(u)),N(()=>E(u))}else{let r=k(t);if(s.appendChild(r),r._mounts)r._mounts.forEach((l)=>l())}};return c(n),s},j=(e)=>{let o=new Set,n=_,i=p,s=g.createElement("div");s.style.display="contents",s.setAttribute("role","presentation"),_={_cleanups:o},p=null;let c=(t)=>{if(!t)return;if(t._isRuntime)o.add(t.destroy),s.appendChild(t.container);else if(b(t))t.forEach(c);else s.appendChild(t instanceof Node?t:g.createTextNode(String(t==null?"":t)))};try{c(e({onCleanup:(t)=>o.add(t)}))}finally{_=n,p=i}return{_isRuntime:!0,container:s,destroy:()=>{o.forEach((t)=>t()),L(s),s.remove()}}},z=(e,o,n=null)=>{let i=g.createTextNode(""),s=O("div",{style:"display:contents"},[i]),c=null;return R(()=>!!(y(e)?e():e),(t)=>{if(c)c.destroy(),c=null;let r=t?o:n;if(r)c=j(()=>y(r)?r():r),s.insertBefore(c.container,i)}),N(()=>c?.destroy()),s},G=({name:e,duration:o=200,scale:n,slide:i,rotate:s,blur:c},t)=>{let r=typeof t==="function"?t():t;if(!(r instanceof Node))return r;if(e)return r.style.animation=`${e}-in ${o}ms`,r;let l=n||i||s||c,u=[n?"scale(0.95)":"",i?"translateY(-10px)":"",s?"rotate(-2deg)":""].filter(Boolean).join(" ");if(r.style.transition=`all ${o}ms ease`,r.style.opacity="0",l)r.style.transform=u;if(c)r.style.filter="blur(4px)";return requestAnimationFrame(()=>{if(r.style.opacity="1",l)r.style.transform="none";if(c)r.style.filter="none"}),r},K=(e,o,n)=>{let i=g.createTextNode(""),s=O("div",{style:"display:contents"},[i]),c=new Map;return R(()=>(y(e)?e():e)||[],(t)=>{let r=new Map,l=[],u=t||[];for(let f=0;fo(h,f));else c.delete(d);r.set(d,m),l.push(m)}c.forEach((f)=>f.destroy());let a=i;for(let f=l.length-1;f>=0;f--){let d=l[f].container;if(d.nextSibling!==a)s.insertBefore(d,a);a=d}c=r}),s},v=(e)=>{let o=()=>window.location.hash.slice(1)||"/",n=S(o()),i=()=>n(o());window.addEventListener("hashchange",i),N(()=>window.removeEventListener("hashchange",i));let s=O("div",{class:"router-hook"}),c=null;return R([n],()=>{let t=n(),r=e.find((l)=>{let u=l.path.split("/").filter(Boolean),a=t.split("/").filter(Boolean);return u.length===a.length&&u.every((f,h)=>f[0]===":"||f===a[h])})||e.find((l)=>l.path==="*");if(r){c?.destroy();let l={};r.path.split("/").filter(Boolean).forEach((u,a)=>{if(u[0]===":")l[u.slice(1)]=t.split("/").filter(Boolean)[a]}),v.params(l),c=j(()=>y(r.component)?r.component(l):r.component),s.replaceChildren(c.container)}}),s};v.params=S({});v.to=(e)=>window.location.hash=e.replace(/^#?\/?/,"#/");v.back=()=>window.history.back();v.path=()=>window.location.hash.replace(/^#/,"")||"/";var Q=({url:e,method:o="GET",headers:n={}})=>{let i=S(!1),s=S(null),c=S(null),t=null,r=null;return{run:async(a=null)=>{t?.abort(),clearTimeout(r),t=new AbortController,r=setTimeout(()=>t.abort(),1e4),i(!0),s(null);try{let f=a instanceof FormData,h=await fetch(e,{method:o,headers:f?n:{"Content-Type":"application/json",...n},body:f?a:a?JSON.stringify(a):void 0,signal:t.signal}),d=await h.text(),m=d?JSON.parse(d):null;if(!h.ok)throw Error(m?.message||h.statusText);return c(m),m}catch(f){if(f.name!=="AbortError")s(f.message);throw f}finally{i(!1),clearTimeout(r),t=null,r=null}},abort:()=>t?.abort(),loading:i,error:s,data:c}},H=(e,o)=>{let n=typeof o==="string"?g.querySelector(o):o;if(!n)return;if(B.has(n))B.get(n).destroy();let i=j(y(e)?e:()=>e);return n.replaceChildren(i.container),B.set(n,i),i},X=Object.freeze({$:S,$$:I,watch:R,h:O,when:z,each:K,fx:G,router:v,req:Q,mount:H,batch:W});if(typeof window<"u")Object.assign(window,X),"a abbr article aside audio b blockquote br button canvas caption cite code col colgroup datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd label legend li main mark meter nav object ol optgroup option output p picture pre progress section select slot small source span strong sub summary sup svg table tbody td template textarea tfoot th thead time tr u ul video".split(" ").forEach((e)=>{window[e]=(o,n)=>O(e,o,n)});export{z as when,R as watch,v as router,Q as req,H as mount,O as h,G as fx,K as each,W as batch,I as $$,S as $};