Files
sigpro/dist/sigpro.min.js
natxocc 1c788f1dd1
All checks were successful
Deploy Docs to Synology / deploy (push) Successful in 3s
restore window
2026-04-16 15:46:51 +02:00

2 lines
8.9 KiB
JavaScript

(()=>{var{defineProperty:M,getOwnPropertyNames:H,getOwnPropertyDescriptor:X}=Object,Y=Object.prototype.hasOwnProperty;function Z(e){return this[e]}var ee=(e)=>{var n=(I??=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 H(e))if(!Y.call(n,o))M(n,o,{get:Z.bind(e,o),enumerable:!(t=X(e,o))||t.enumerable})}return I.set(e,n),n},I;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 le={};se(le,{onUnmount:()=>g,onMount:()=>k,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,W=(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,D=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((c)=>c.delete(t));if(t._cleanups)t._cleanups.forEach((c)=>c()),t._cleanups.clear();let o=p,s=_;p=_=t;try{return t._result=e()}catch(c){console.error("[SigPro]",c)}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 c=p;p=s;try{let i=e();if(!Object.is(o,i))o=i,w(t,!0)}finally{p=c}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=D.get(e);if(n)return n;let t=new Map,o=(s)=>{let c=t.get(s);if(!c)t.set(s,c=new Set);return c};return n=new Proxy(e,{get(s,c,i){if(typeof c!=="symbol")w(o(c));return $(Reflect.get(s,c,i))},set(s,c,i,r){let l=!Reflect.has(s,c),a=Reflect.get(s,c,r),d=Reflect.set(s,c,i,r);if(d&&!Object.is(a,i)){if(w(o(c),!0),l)w(o(j),!0)}return d},deleteProperty(s,c){let i=Reflect.deleteProperty(s,c);if(i)w(o(c),!0),w(o(j),!0);return i},ownKeys(s){return w(o(j)),Reflect.ownKeys(s)}}),D.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,ce=(e)=>e==="src"||e==="href"||e.startsWith("on"),V=(e,n)=>{if(n==null||n===!1)return null;if(ce(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 i={_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 i in n){if(!n.hasOwnProperty(i))continue;let r=n[i];if(i==="ref"){m(r)?r(s):r.current=s;continue}if(o&&i.startsWith("xlink:")){val==null?s.removeAttributeNS("http://www.w3.org/1999/xlink",i.slice(6)):s.setAttributeNS("http://www.w3.org/1999/xlink",i.slice(6),val);continue}if(i.startsWith("on")){let l=i.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(i,r());if(i==="class")s.className=a||"";else if(a==null)s.removeAttribute(i);else if(i in s&&!o)s[i]=a;else s.setAttribute(i,a===!0?"":a)});if(l(),s._cleanups.add(()=>v(l)),g(()=>v(l)),/^(INPUT|TEXTAREA|SELECT)$/.test(s.tagName)&&(i==="value"||i==="checked")){let a=i==="checked"?"change":"input";s.addEventListener(a,(d)=>r(d.target[i]))}}else{let l=V(i,r);if(l!=null)if(i in s&&!o)s[i]=l;else s.setAttribute(i,l===!0?"":l)}}let c=(i)=>{if(x(i))return i.forEach(c);if(m(i)){let r=E.createTextNode("");s.appendChild(r);let l=[],a=R(()=>{let d=i(),f=(x(d)?d:[d]).map(W);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=W(i);if(s.appendChild(r),r._mounts)r._mounts.forEach((l)=>l())}};return c(t),s},S=(e)=>{let n=new Set,t=[],o=_,s=p,c=E.createElement("div");c.style.display="contents",c.setAttribute("role","presentation"),_={_cleanups:n,_mounts:t},p=null;let i=(r)=>{if(!r)return;if(r._isRuntime)n.add(r.destroy),c.appendChild(r.container);else if(x(r))r.forEach(i);else c.appendChild(r instanceof Node?r:E.createTextNode(String(r==null?"":r)))};try{i(e({onCleanup:(r)=>n.add(r)}))}finally{_=o,p=s}return t.forEach((r)=>r()),{_isRuntime:!0,container:c,destroy:()=>{n.forEach((r)=>r()),U(c),c.remove()}}},F=(e,n,t=null)=>{let o=E.createTextNode(""),s=N("div",{style:"display:contents"},[o]),c=null;return C(()=>!!(m(e)?e():e),(i)=>{if(c)c.destroy(),c=null;let r=i?n:t;if(r)c=S(()=>m(r)?r():r),s.insertBefore(c.container,o)}),g(()=>c?.destroy()),s},G=(e,n,t)=>{let o=E.createTextNode(""),s=N("div",{style:"display:contents"},[o]),c=new Map;return C(()=>(m(e)?e():e)||[],(i)=>{let r=new Map,l=[],a=i||[];for(let f=0;f<a.length;f++){let h=a[f],u=t?t(h,f):h?.id??f,y=c.get(u);if(!y)y=S(()=>n(h,f));else c.delete(u);r.set(u,y),l.push(y)}c.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}c=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"}),c=null;return C([t],()=>{let i=t(),r=e.find((l)=>{let a=l.path.split("/").filter(Boolean),d=i.split("/").filter(Boolean);return a.length===d.length&&a.every((f,h)=>f[0]===":"||f===d[h])})||e.find((l)=>l.path==="*");if(r){c?.destroy();let l={};r.path.split("/").filter(Boolean).forEach((a,d)=>{if(a[0]===":")l[a.slice(1)]=i.split("/").filter(Boolean)[d]}),b.params(l),c=S(()=>m(r.component)?r.component(l):r.component),s.replaceChildren(c.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"}),c=null,i=(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&&!c){let l=(c=S(n)).container.firstChild;if(s.appendChild(c.container),t&&l)l.classList.add(t),l.clientTop,l.classList.add(t+"-active"),i(l,()=>l.classList.remove(t,t+"-active"))}else if(!r&&c){let l=c.container.firstChild,a=()=>(c?.destroy(),c=null);o&&l?(l.classList.add(o),i(l,a)):a()}}),g(()=>c?.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},ie=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});if(typeof window<"u")Object.assign(window,ie),"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)});})();