Files
sigpro/dist/sigpro.min.js
natxocc 8b45c84e67
All checks were successful
Deploy Docs to Synology / deploy (push) Successful in 6s
1.2.13
2026-04-16 15:20:37 +02:00

2 lines
8.9 KiB
JavaScript

(()=>{var{defineProperty:M,getOwnPropertyNames:X,getOwnPropertyDescriptor:H}=Object,Y=Object.prototype.hasOwnProperty;function Z(e){return this[e]}var ee=(e)=>{var n=(D??=new WeakMap).get(e),t;if(n)return n;if(n=M({},"__esModule",{value:!0}),e&&typeof e==="object"||typeof e==="function"){for(var o of X(e))if(!Y.call(n,o))M(n,o,{get:Z.bind(e,o),enumerable:!(t=H(e,o))||t.enumerable})}return D.set(e,n),n},D;var te=(e)=>e;function ne(e,n){this[e]=te.bind(null,n)}var se=(e,n)=>{for(var t in n)M(e,t,{get:n[t],enumerable:!0,configurable:!0,set:ne.bind(n,t)})};var ae={};se(ae,{onUnmount:()=>g,onMount:()=>k,initDX:()=>le,Watch:()=>C,Tag:()=>N,Router:()=>b,Render:()=>S,Mount:()=>K,If:()=>F,For:()=>G,Batch:()=>z,Anim:()=>J,$$:()=>$,$:()=>L});var m=(e)=>typeof e==="function",P=(e)=>e&&typeof e==="object",x=Array.isArray,E=typeof document<"u"?document:null,I=(e)=>e?._isRuntime?e.container:e instanceof Node?e:E.createTextNode(e==null?"":String(e)),p=null,_=null,O=!1,A=0,T=new Set,W=new WeakMap,j=Symbol("iter"),B=new WeakMap,v=(e)=>{if(!e||e._disposed)return;e._disposed=!0;let n=[e];while(n.length){let t=n.pop();if(t._cleanups)t._cleanups.forEach((o)=>o()),t._cleanups.clear();if(t._children)t._children.forEach((o)=>n.push(o)),t._children.clear();if(t._deps)t._deps.forEach((o)=>o.delete(t)),t._deps.clear()}},k=(e)=>{if(_)(_._mounts||=[]).push(e)},g=(e)=>{if(_)(_._cleanups||=new Set).add(e)},oe=(e)=>{let n=p;p=null;try{return e()}finally{p=n}},R=(e,n=!1)=>{let t=()=>{if(t._disposed)return;if(t._deps)t._deps.forEach((i)=>i.delete(t));if(t._cleanups)t._cleanups.forEach((i)=>i()),t._cleanups.clear();let o=p,s=_;p=_=t;try{return t._result=e()}catch(i){console.error("[SigPro]",i)}finally{p=o,_=s}};if(t._deps=t._cleanups=t._children=null,t._disposed=!1,t._isComputed=n,t._depth=p?p._depth+1:0,t._mounts=[],t._parent=_,_)(_._children||=new Set).add(t);return t},q=()=>{if(O)return;O=!0;let e=Array.from(T).sort((n,t)=>n._depth-t._depth);T.clear();for(let n of e)if(!n._disposed)n();O=!1},z=(e)=>{A++;try{return e()}finally{if(A--,A===0&&T.size>0&&!O)q()}},w=(e,n=!1)=>{if(!n&&p&&!p._disposed)e.add(p),(p._deps||=new Set).add(e);else if(n&&e.size>0){let t=!1;for(let o of e){if(o===p||o._disposed)continue;if(o._isComputed){if(o._dirty=!0,o._subs)w(o._subs,!0)}else T.add(o),t=!0}if(t&&!O&&A===0)queueMicrotask(q)}},L=(e,n=null)=>{let t=new Set;if(m(e)){let o,s=()=>{if(s._dirty){let i=p;p=s;try{let c=e();if(!Object.is(o,c))o=c,w(t,!0)}finally{p=i}s._dirty=!1}return w(t),o};if(s._isComputed=!0,s._subs=t,s._dirty=!0,s._deps=null,s._disposed=!1,s.stop=()=>{},_)g(s.stop);return s}if(n)try{e=JSON.parse(localStorage.getItem(n))??e}catch(o){}return(...o)=>{if(o.length){let s=m(o[0])?o[0](e):o[0];if(!Object.is(e,s)){if(e=s,n)localStorage.setItem(n,JSON.stringify(e));w(t,!0)}}return w(t),e}},$=(e)=>{if(!P(e))return e;let n=W.get(e);if(n)return n;let t=new Map,o=(s)=>{let i=t.get(s);if(!i)t.set(s,i=new Set);return i};return n=new Proxy(e,{get(s,i,c){if(typeof i!=="symbol")w(o(i));return $(Reflect.get(s,i,c))},set(s,i,c,r){let l=!Reflect.has(s,i),a=Reflect.get(s,i,r),d=Reflect.set(s,i,c,r);if(d&&!Object.is(a,c)){if(w(o(i),!0),l)w(o(j),!0)}return d},deleteProperty(s,i){let c=Reflect.deleteProperty(s,i);if(c)w(o(i),!0),w(o(j),!0);return c},ownKeys(s){return w(o(j)),Reflect.ownKeys(s)}}),W.set(e,n),n},C=(e,n)=>{if(n===void 0){let o=R(e);return o(),()=>v(o)}let t=R(()=>{let o=Array.isArray(e)?e.map((s)=>s()):e();oe(()=>n(o))});return t(),()=>v(t)},U=(e)=>{if(e._cleanups)e._cleanups.forEach((n)=>n()),e._cleanups.clear();if(e._ownerEffect)v(e._ownerEffect);if(e.childNodes)e.childNodes.forEach(U)},re=/^\s*(javascript|data|vbscript):/i,ie=(e)=>e==="src"||e==="href"||e.startsWith("on"),V=(e,n)=>{if(n==null||n===!1)return null;if(ie(e)){let t=String(n);if(re.test(t))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${e}`),"#"}return n},N=(e,n={},t=[])=>{if(n instanceof Node||x(n)||!P(n))t=n,n={};if(m(e)){let c={_mounts:[],_cleanups:new Set},r=R(()=>{let f=e(n,{children:t,emit:(h,...u)=>n[`on${h[0].toUpperCase()}${h.slice(1)}`]?.(...u)});return r._result=f,f});r();let l=r._result;if(l==null)return null;let a=l instanceof Node||x(l)&&l.every((f)=>f instanceof Node)?l:E.createTextNode(String(l)),d=(f)=>{if(P(f)&&!f._isRuntime)f._mounts=r._mounts||[],f._cleanups=r._cleanups||new Set,f._ownerEffect=r};return x(a)?a.forEach(d):d(a),a}let o=/^(svg|path|circle|rect|line|poly(line|gon)|g|defs|text(path)?|tspan|use|symbol|image|marker|ellipse)$/i.test(e),s=o?E.createElementNS("http://www.w3.org/2000/svg",e):E.createElement(e);s._cleanups=new Set;for(let c in n){if(!n.hasOwnProperty(c))continue;let r=n[c];if(c==="ref"){m(r)?r(s):r.current=s;continue}if(o&&c.startsWith("xlink:")){val==null?s.removeAttributeNS("http://www.w3.org/1999/xlink",c.slice(6)):s.setAttributeNS("http://www.w3.org/1999/xlink",c.slice(6),val);continue}if(c.startsWith("on")){let l=c.slice(2).toLowerCase();s.addEventListener(l,r);let a=()=>s.removeEventListener(l,r);s._cleanups.add(a),g(a)}else if(m(r)){let l=R(()=>{let a=V(c,r());if(c==="class")s.className=a||"";else if(a==null)s.removeAttribute(c);else if(c in s&&!o)s[c]=a;else s.setAttribute(c,a===!0?"":a)});if(l(),s._cleanups.add(()=>v(l)),g(()=>v(l)),/^(INPUT|TEXTAREA|SELECT)$/.test(s.tagName)&&(c==="value"||c==="checked")){let a=c==="checked"?"change":"input";s.addEventListener(a,(d)=>r(d.target[c]))}}else{let l=V(c,r);if(l!=null)if(c in s&&!o)s[c]=l;else s.setAttribute(c,l===!0?"":l)}}let i=(c)=>{if(x(c))return c.forEach(i);if(m(c)){let r=E.createTextNode("");s.appendChild(r);let l=[],a=R(()=>{let d=c(),f=(x(d)?d:[d]).map(I);l.forEach((u)=>{if(u._isRuntime)u.destroy();else U(u);if(u.parentNode)u.remove()});let h=r;for(let u=f.length-1;u>=0;u--){let y=f[u];if(y.parentNode!==h.parentNode)h.parentNode?.insertBefore(y,h);if(y._mounts)y._mounts.forEach((Q)=>Q());h=y}l=f});a(),s._cleanups.add(()=>v(a)),g(()=>v(a))}else{let r=I(c);if(s.appendChild(r),r._mounts)r._mounts.forEach((l)=>l())}};return i(t),s},S=(e)=>{let n=new Set,t=[],o=_,s=p,i=E.createElement("div");i.style.display="contents",i.setAttribute("role","presentation"),_={_cleanups:n,_mounts:t},p=null;let c=(r)=>{if(!r)return;if(r._isRuntime)n.add(r.destroy),i.appendChild(r.container);else if(x(r))r.forEach(c);else i.appendChild(r instanceof Node?r:E.createTextNode(String(r==null?"":r)))};try{c(e({onCleanup:(r)=>n.add(r)}))}finally{_=o,p=s}return t.forEach((r)=>r()),{_isRuntime:!0,container:i,destroy:()=>{n.forEach((r)=>r()),U(i),i.remove()}}},F=(e,n,t=null)=>{let o=E.createTextNode(""),s=N("div",{style:"display:contents"},[o]),i=null;return C(()=>!!(m(e)?e():e),(c)=>{if(i)i.destroy(),i=null;let r=c?n:t;if(r)i=S(()=>m(r)?r():r),s.insertBefore(i.container,o)}),g(()=>i?.destroy()),s},G=(e,n,t)=>{let o=E.createTextNode(""),s=N("div",{style:"display:contents"},[o]),i=new Map;return C(()=>(m(e)?e():e)||[],(c)=>{let r=new Map,l=[],a=c||[];for(let f=0;f<a.length;f++){let h=a[f],u=t?t(h,f):h?.id??f,y=i.get(u);if(!y)y=S(()=>n(h,f));else i.delete(u);r.set(u,y),l.push(y)}i.forEach((f)=>f.destroy());let d=o;for(let f=l.length-1;f>=0;f--){let u=l[f].container;if(u.nextSibling!==d)s.insertBefore(u,d);d=u}i=r}),s},b=(e)=>{let n=()=>window.location.hash.slice(1)||"/",t=L(n()),o=()=>t(n());window.addEventListener("hashchange",o),g(()=>window.removeEventListener("hashchange",o));let s=N("div",{class:"router-hook"}),i=null;return C([t],()=>{let c=t(),r=e.find((l)=>{let a=l.path.split("/").filter(Boolean),d=c.split("/").filter(Boolean);return a.length===d.length&&a.every((f,h)=>f[0]===":"||f===d[h])})||e.find((l)=>l.path==="*");if(r){i?.destroy();let l={};r.path.split("/").filter(Boolean).forEach((a,d)=>{if(a[0]===":")l[a.slice(1)]=c.split("/").filter(Boolean)[d]}),b.params(l),i=S(()=>m(r.component)?r.component(l):r.component),s.replaceChildren(i.container)}}),s};b.params=L({});b.to=(e)=>window.location.hash=e.replace(/^#?\/?/,"#/");b.back=()=>window.history.back();b.path=()=>window.location.hash.replace(/^#/,"")||"/";var J=(e,n,{enter:t,leave:o}={})=>{let s=N("div",{style:"display:contents"}),i=null,c=(r,l)=>{let a=!1,d=()=>!a&&(a=!0,l());if(!r)return d();"transitionend animationend".split(" ").map((f)=>r.addEventListener(f,d,{once:!0})),setTimeout(d,500)};return C(e,(r)=>{if(r&&!i){let l=(i=S(n)).container.firstChild;if(s.appendChild(i.container),t&&l)l.classList.add(t),l.clientTop,l.classList.add(t+"-active"),c(l,()=>l.classList.remove(t,t+"-active"))}else if(!r&&i){let l=i.container.firstChild,a=()=>(i?.destroy(),i=null);o&&l?(l.classList.add(o),c(l,a)):a()}}),g(()=>i?.destroy()),s},K=(e,n)=>{let t=typeof n==="string"?E.querySelector(n):n;if(!t)return;if(B.has(t))B.get(t).destroy();let o=S(m(e)?e:()=>e);return t.replaceChildren(o.container),B.set(t,o),o},ce=Object.freeze({$:L,$$:$,Watch:C,Tag:N,Render:S,If:F,For:G,Router:b,Mount:K,onMount:k,onUnmount:g,Anim:J,Batch:z}),le=()=>{if(typeof window<"u")Object.assign(window,ce),"div span p h1 h2 h3 h4 h5 h6 br hr section article aside nav main header footer ul ol li a em strong pre code form label input textarea select button img svg".split(" ").forEach((e)=>{let n=e[0].toUpperCase()+e.slice(1);window[n]=(t,o)=>N(e,t,o)})};})();