sigment 1.4.2 → 1.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -32,10 +32,10 @@ document.body.appendChild(ComponentName());
32
32
 
33
33
  // Reactive counter example:
34
34
 
35
- import { createSignal } from "sigment";
35
+ import { signal } from "sigment";
36
36
 
37
37
  function Counter() {
38
- const [count, setCount] = createSignal(0);
38
+ const [count, setCount] = signal(0);
39
39
 
40
40
  return div(
41
41
 
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- var ye=Object.defineProperty;var c=(e,t)=>ye(e,"name",{value:t,configurable:!0});var w={cleanHtml:Ce,cleanhtml:!0,setMaxCacheSize:Ae,maxCacheSize:10,setloadAtRunTime:Se,loadAtRunTime:null,setRoute:xe,route:null,setStopPropagation:Te,stopPropagation:!1},A={funcname:[],dataMap:new Map},D=null,P={},U=new Map,v=new Map,I=new Map,j=new Map,ge=null,L=null,G=new Map;var V="",S=typeof window>"u",W=0;S||(V=window.location.href.replace(/^https?:\/\//,"").replace(/\/$/,""));function be(){try{let e=import.meta.glob("/src/components/*.js"),t=Object.fromEntries(Object.entries(e).map(([n,o])=>[n.split("/").pop().replace(".js",""),o]));t.defaultKey="/",w.loadAtRunTime=t}catch{w.loadAtRunTime={}}}c(be,"initLoadAtRunTime");globalThis.__CURRENT_COMPONENT__=null;var M=0,ce=new Map;S&&(globalThis.__HANDLER_REGISTRY__||(globalThis.__HANDLER_REGISTRY__={}),globalThis.__HANDLER_ELEMENT_MAP__||(globalThis.__HANDLER_ELEMENT_MAP__=new Map));var E={innerHTMLElements:["div","p","span","h1","h2","h3","h4","h5","h6","a","ul","ol","li","table","tr","td","th","thead","tbody","tfoot","form","label","button","section","article","header","footer","nav","aside","main","figure","figcaption","blockquote","cite","code","pre","em","strong","i","b","u","s","small","mark","time","abbr","q","dl","dt","dd","fieldset","legend","textarea","output","progress","meter","fragment","details","summary","dialog","menu","slot","svg","defs","linearGradient","text","template"],valueElements:["input","textarea","select","button","option","progress","meter"],srcElements:["img","script","iframe","audio","video","source","track","embed","frame","input"],hrefElements:["a","link","area","base"],voidElements:["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","path","circle","rect","wbr","polygon","ellipse","stop","canvas","frame"]};Object.values(E).flat().forEach(e=>{globalThis[e]||(globalThis[e]=(...t)=>q(e,...t),Object.defineProperty(globalThis,e,{writable:!1,configurable:!1}))});var K=new Set(E.valueElements),te=new Set(E.srcElements),ne=new Set(E.hrefElements),Y=new Set(E.voidElements);function ze(e,t){P[e]||(P[e]=pe(t))}c(ze,"createGlobalSignal");function Be(e){return P[e]}c(Be,"getGlobalSignal");function oe(e,t){A.dataMap.has(e)&&A.dataMap.delete(e),A.dataMap.set(e,t)}c(oe,"addEntry");var O={destroy:c(function(){var n;let e=(n=this.parentNode)==null?void 0:n.iid,t=this._map.get(e);if(t&&t.elements){let o=this._idx;if(o!==void 0&&o!==-1){t.elements.splice(o,1),t.ids.splice(o,1),t.nodes.splice(o,1);for(let s=o;s<t.elements.length;s++)t.elements[s]._idx=s}}this.remove()},"destroy"),swapWith:c(function(e){var f;let t=(f=this.parentNode)==null?void 0:f.iid,n=this._map.get(t);if(!n||!n.elements)return this;let o=this._idx;if(o===void 0||e<0||e>=n.elements.length)return this;let s=n.elements[e],i=n.elements[o];n.elements[o]=n.elements[e],n.elements[e]=i;let l=n.ids[o];n.ids[o]=n.ids[e],n.ids[e]=l,this._idx=e,s._idx=o;let r=this.parentNode,m=s.nextSibling,u=this.nextSibling;return m===this?r.insertBefore(this,s):(r.insertBefore(s,u),r.insertBefore(this,m)),this},"swapWith"),updateVal:c(function(e,t){return this._nodes&&this._nodes[e]&&(this._nodes[e].nodeValue=t),this},"updateVal"),addVal:c(function(e,t){let n=this._nodes[e];return n&&n.appendData(t),this},"addVal"),clear:c(function(){let e=this._map.get(this.iid);e&&(e.elements&&(e.elements.length=0),e.ids&&(e.ids.length=0),e.nodes&&(e.nodes.length=0)),this.textContent=""},"clear")},re=c((e,t,n)=>{if(e.destroy)return e;let o=n||A.dataMap;e.iid=e.iid||(t==null?void 0:t.id)||e.id,e._map=o,e.destroy=O.destroy,e.swapWith=O.swapWith,e.updateVal=O.updateVal,e.addVal=O.addVal;let s=o.get(e.iid);return s&&(e.clear=O.clear,e.get=i=>{if(!s.elements)return null;let l=null;if(typeof i=="number")l=s.elements[i];else{let r=s.ids.indexOf(i);r!==-1&&(l=s.elements[r])}return l?(l._map=o,l.iid=l.iid||l.id,l.destroy=O.destroy,l.swapWith=O.swapWith,l.updateVal=O.updateVal,l.addVal=O.addVal,l):null}),e},"upgradeElement");function z(e){var i;let t=e&&e.nodeType,n=t?e.iid:e,o=A.dataMap.get(n);if(t)return re(e,{id:n},A.dataMap);if(!o)return null;let s=(i=o.value)!=null&&i.hydrate?document.getElementById(n):o.value;return s?re(s,o,A.dataMap):null}c(z,"gve");var _e=c((e,t)=>{let n=[],o=t;for(;o!==e&&o.parentNode;){let s=o.parentNode,i=Array.prototype.indexOf.call(s.childNodes,o);n.unshift(i),o=s}return n},"getPath"),Ee=c(e=>{if(e.length===0)return n=>n;let t=e.map(n=>`childNodes[${n}]`).join(".");return new Function("node",`return node.${t}`)},"compilePath"),Ie=c(e=>{let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT),o=n.nextNode(),s=0;for(;o;){if(o.nodeValue.trim()==="?"){let i=_e(e,o);t.push({dataIndex:s++,fastGet:Ee(i)})}o=n.nextNode()}return{blueprint:e,bindings:t}},"createTemplate"),Ge=c((e,t,n,o=1e3,s=!1)=>{let i=A.dataMap.get(n);if(!i)return;s?(i.elements||(i.elements=[]),i.nodes||(i.nodes=[]),i.ids||(i.ids=[])):(i.value.textContent="",i.elements=[],i.nodes=[],i.ids=[]);let{blueprint:l,bindings:r}=t,m=r.length,u=0,f=c(()=>{let d=document.createDocumentFragment(),y=Math.min(u+o,e.length);for(;u<y;u++){let h=e[u];if(!h)continue;let g=h[0],a=l.cloneNode(!0);a.iid=g,a._idx=u;let p=new Array(m);for(let b=0;b<m;b++){let x=r[b],_=x.fastGet(a);_&&(_.nodeValue=h[x.dataIndex],p[b]=_)}a._nodes=p,i.elements[u]=a,i.nodes[u]=p,i.ids[u]=g,d.appendChild(a)}i.value.appendChild(d),u<e.length&&requestAnimationFrame(f)},"renderChunk");f()},"batch");function J(e,t=void 0){R(J.name),A.createInstance=J.name;let n="";t===void 0?n=e():n=e(t)}c(J,"createInstance");function ie(e,t){R(ie.name),A.rpc=ie.name;let n={};for(let[o,s]of Object.entries(t))e[o]?n[o]=e[o].apply(null,s):(console.error(`Function ${o} not found!`),n[o]=null);return n}c(ie,"rpc");function se(e,t=!1,n){R(se.name),A.gvec=se.name;let o=Object.keys(e),s=o[0],i=o[1],l=o[2];var r=e[s];r=r.name;var m=e[i];let u=e[i];var f=z(i)===null;if(f||t===!1){var d=""+i;A.dataMap.delete(d),J(m,e[l])}m=z(i);var y=z(s);if(y===null)throw new Error(` source id '${s} is not found in source component `);if(m===null)throw new Error(` target id '${i} is not found in target component `);if(y.replaceWith(m),n!==void 0)for(let a in u){let p=a.toString();if(typeof n=="object"){for(var h in n)if(p===h){var g=n[h];typeof g=="object"?u[a].apply(null,g):u[a].apply(null,[])}}else if(n.indexOf(",">-1)){let b=n.split(",");for(let x=0;x<b.length;x++)p===b[x]&&u[a].apply(null,[])}else p===n&&u[a].apply(null,[])}}c(se,"gvec");async function Ke(e,t={}){let{passRestriction:n=[]}=t,o=window.location.pathname.replace(/^\/|\/$/g,"").toLowerCase(),s=e.replace(/^\/|\/$/g,"").toLowerCase();if(!new RegExp("^"+s.replace(/:[^\/]+/g,"[^/]+")+"$").test(o))return!1;let l=Array.isArray(n)?n:[n];for(let r of l)try{let m=typeof r=="function"?r():r;if(m instanceof Promise){if(!await m)return!1}else if(!m)return!1}catch(m){return console.error("Route check failed:",m),!1}return!0}c(Ke,"Route");function Ye(e){return e==null||e===""}c(Ye,"IsEmpty");function we(e){let t=e.startsWith("/")?e:"/"+e;window.history.pushState({},"",t)}c(we,"Navigate");function Ae(e){w.maxCacheSize=e}c(Ae,"setMaxCacheSize");function Ce(e){w.cleanhtml=e}c(Ce,"cleanHtml");function xe(e){w.route=e}c(xe,"setRoute");function Se(e){if(e===!0){be();return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){w.loadAtRunTime=e;return}throw new Error("setloadAtRunTime expects true or an object of dynamic modules")}c(Se,"setloadAtRunTime");function Te(e){w.stopPropagation=e}c(Te,"setStopPropagation");async function Je(e,t){let n;t==="/"?n=t:n=t.replace(/\//g,"").toLowerCase();let o=Object.keys(e).find(s=>s.toLowerCase()===n.toLowerCase());if(!o){let s=Object.keys(e).join(", ");throw new Error(`Unknown component: "${t}".
1
+ var ye=Object.defineProperty;var c=(e,t)=>ye(e,"name",{value:t,configurable:!0});var w={cleanHtml:xe,cleanhtml:!0,setMaxCacheSize:Ce,maxCacheSize:10,setloadAtRunTime:Te,loadAtRunTime:null,setRoute:Se,route:null,setStopPropagation:ve,stopPropagation:!1},A={funcname:[],dataMap:new Map},D=null,P={},U=new Map,N=new Map,G=new Map,j=new Map,ge="http://www.w3.org/2000/svg",be=null,L=null,I=new Map;var V="",S=typeof window>"u",W=0;S||(V=window.location.href.replace(/^https?:\/\//,"").replace(/\/$/,""));function _e(){try{let e=import.meta.glob("/src/components/*.js"),t=Object.fromEntries(Object.entries(e).map(([n,o])=>[n.split("/").pop().replace(".js",""),o]));t.defaultKey="/",w.loadAtRunTime=t}catch{w.loadAtRunTime={}}}c(_e,"initLoadAtRunTime");globalThis.__CURRENT_COMPONENT__=null;var M=0,ce=new Map;S&&(globalThis.__HANDLER_REGISTRY__||(globalThis.__HANDLER_REGISTRY__={}),globalThis.__HANDLER_ELEMENT_MAP__||(globalThis.__HANDLER_ELEMENT_MAP__=new Map));var _={innerHTMLElements:["div","p","span","h1","h2","h3","h4","h5","h6","a","ul","ol","li","table","tr","td","th","thead","tbody","tfoot","form","label","button","section","article","header","footer","nav","aside","main","figure","figcaption","blockquote","cite","code","pre","em","strong","i","b","u","s","small","mark","time","abbr","q","dl","dt","dd","fieldset","legend","textarea","output","progress","meter","fragment","details","summary","dialog","menu","slot","canvas","template"],svgTags:["svg","use","path","g","circle","rect","defs","polygon","ellipse","stop","symbol","linearGradient","text"],valueElements:["input","textarea","select","button","option","progress","meter"],srcElements:["img","script","iframe","audio","video","source","track","embed","frame","input"],hrefElements:["a","link","area","base"],voidElements:["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr","frame"]};Object.values(_).flat().forEach(e=>{globalThis[e]||(globalThis[e]=(...t)=>q(e,...t),Object.defineProperty(globalThis,e,{writable:!1,configurable:!1}))});var K=new Set(_.valueElements),te=new Set(_.srcElements),ne=new Set(_.hrefElements),Y=new Set(_.voidElements);function Ge(e,t){P[e]||(P[e]=pe(t))}c(Ge,"createGlobalSignal");function Ie(e){return P[e]}c(Ie,"getGlobalSignal");function oe(e,t){A.dataMap.has(e)&&A.dataMap.delete(e),A.dataMap.set(e,t)}c(oe,"addEntry");var O={destroy:c(function(){var n;let e=(n=this.parentNode)==null?void 0:n.iid,t=this._map.get(e);if(t&&t.elements){let o=this._idx;if(o!==void 0&&o!==-1){t.elements.splice(o,1),t.ids.splice(o,1),t.nodes.splice(o,1);for(let s=o;s<t.elements.length;s++)t.elements[s]._idx=s}}this.remove()},"destroy"),swapWith:c(function(e){var f;let t=(f=this.parentNode)==null?void 0:f.iid,n=this._map.get(t);if(!n||!n.elements)return this;let o=this._idx;if(o===void 0||e<0||e>=n.elements.length)return this;let s=n.elements[e],i=n.elements[o];n.elements[o]=n.elements[e],n.elements[e]=i;let l=n.ids[o];n.ids[o]=n.ids[e],n.ids[e]=l,this._idx=e,s._idx=o;let r=this.parentNode,m=s.nextSibling,u=this.nextSibling;return m===this?r.insertBefore(this,s):(r.insertBefore(s,u),r.insertBefore(this,m)),this},"swapWith"),updateVal:c(function(e,t){return this._nodes&&this._nodes[e]&&(this._nodes[e].nodeValue=t),this},"updateVal"),addVal:c(function(e,t){let n=this._nodes[e];return n&&n.appendData(t),this},"addVal"),clear:c(function(){let e=this._map.get(this.iid);e&&(e.elements&&(e.elements.length=0),e.ids&&(e.ids.length=0),e.nodes&&(e.nodes.length=0)),this.textContent=""},"clear")},re=c((e,t,n)=>{if(e.destroy)return e;let o=n||A.dataMap;e.iid=e.iid||(t==null?void 0:t.id)||e.id,e._map=o,e.destroy=O.destroy,e.swapWith=O.swapWith,e.updateVal=O.updateVal,e.addVal=O.addVal;let s=o.get(e.iid);return s&&(e.clear=O.clear,e.get=i=>{if(!s.elements)return null;let l=null;if(typeof i=="number")l=s.elements[i];else{let r=s.ids.indexOf(i);r!==-1&&(l=s.elements[r])}return l?(l._map=o,l.iid=l.iid||l.id,l.destroy=O.destroy,l.swapWith=O.swapWith,l.updateVal=O.updateVal,l.addVal=O.addVal,l):null}),e},"upgradeElement");function z(e){var i;let t=e&&e.nodeType,n=t?e.iid:e,o=A.dataMap.get(n);if(t)return re(e,{id:n},A.dataMap);if(!o)return null;let s=(i=o.value)!=null&&i.hydrate?document.getElementById(n):o.value;return s?re(s,o,A.dataMap):null}c(z,"gve");var Ee=c((e,t)=>{let n=[],o=t;for(;o!==e&&o.parentNode;){let s=o.parentNode,i=Array.prototype.indexOf.call(s.childNodes,o);n.unshift(i),o=s}return n},"getPath"),we=c(e=>{if(e.length===0)return n=>n;let t=e.map(n=>`childNodes[${n}]`).join(".");return new Function("node",`return node.${t}`)},"compilePath"),Ke=c(e=>{let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT),o=n.nextNode(),s=0;for(;o;){if(o.nodeValue.trim()==="?"){let i=Ee(e,o);t.push({dataIndex:s++,fastGet:we(i)})}o=n.nextNode()}return{blueprint:e,bindings:t}},"createTemplate"),Ye=c((e,t,n,o=1e3,s=!1)=>{let i=A.dataMap.get(n);if(!i)return;s?(i.elements||(i.elements=[]),i.nodes||(i.nodes=[]),i.ids||(i.ids=[])):(i.value.textContent="",i.elements=[],i.nodes=[],i.ids=[]);let{blueprint:l,bindings:r}=t,m=r.length,u=0,f=c(()=>{let d=document.createDocumentFragment(),y=Math.min(u+o,e.length);for(;u<y;u++){let h=e[u];if(!h)continue;let g=h[0],a=l.cloneNode(!0);a.iid=g,a._idx=u;let p=new Array(m);for(let b=0;b<m;b++){let x=r[b],E=x.fastGet(a);E&&(E.nodeValue=h[x.dataIndex],p[b]=E)}a._nodes=p,i.elements[u]=a,i.nodes[u]=p,i.ids[u]=g,d.appendChild(a)}i.value.appendChild(d),u<e.length&&requestAnimationFrame(f)},"renderChunk");f()},"batch");function J(e,t=void 0){R(J.name),A.createInstance=J.name;let n="";t===void 0?n=e():n=e(t)}c(J,"createInstance");function ie(e,t){R(ie.name),A.rpc=ie.name;let n={};for(let[o,s]of Object.entries(t))e[o]?n[o]=e[o].apply(null,s):(console.error(`Function ${o} not found!`),n[o]=null);return n}c(ie,"rpc");function se(e,t=!1,n){R(se.name),A.gvec=se.name;let o=Object.keys(e),s=o[0],i=o[1],l=o[2];var r=e[s];r=r.name;var m=e[i];let u=e[i];var f=z(i)===null;if(f||t===!1){var d=""+i;A.dataMap.delete(d),J(m,e[l])}m=z(i);var y=z(s);if(y===null)throw new Error(` source id '${s} is not found in source component `);if(m===null)throw new Error(` target id '${i} is not found in target component `);if(y.replaceWith(m),n!==void 0)for(let a in u){let p=a.toString();if(typeof n=="object"){for(var h in n)if(p===h){var g=n[h];typeof g=="object"?u[a].apply(null,g):u[a].apply(null,[])}}else if(n.indexOf(",">-1)){let b=n.split(",");for(let x=0;x<b.length;x++)p===b[x]&&u[a].apply(null,[])}else p===n&&u[a].apply(null,[])}}c(se,"gvec");async function Je(e,t={}){let{passRestriction:n=[]}=t,o=window.location.pathname.replace(/^\/|\/$/g,"").toLowerCase(),s=e.replace(/^\/|\/$/g,"").toLowerCase();if(!new RegExp("^"+s.replace(/:[^\/]+/g,"[^/]+")+"$").test(o))return!1;let l=Array.isArray(n)?n:[n];for(let r of l)try{let m=typeof r=="function"?r():r;if(m instanceof Promise){if(!await m)return!1}else if(!m)return!1}catch(m){return console.error("Route check failed:",m),!1}return!0}c(Je,"Route");function Ze(e){return e==null||e===""}c(Ze,"IsEmpty");function Ae(e){let t=e.startsWith("/")?e:"/"+e;window.history.pushState({},"",t)}c(Ae,"Navigate");function Ce(e){w.maxCacheSize=e}c(Ce,"setMaxCacheSize");function xe(e){w.cleanhtml=e}c(xe,"cleanHtml");function Se(e){w.route=e}c(Se,"setRoute");function Te(e){if(e===!0){_e();return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){w.loadAtRunTime=e;return}throw new Error("setloadAtRunTime expects true or an object of dynamic modules")}c(Te,"setloadAtRunTime");function ve(e){w.stopPropagation=e}c(ve,"setStopPropagation");async function Xe(e,t){let n;t==="/"?n=t:n=t.replace(/\//g,"").toLowerCase();let o=Object.keys(e).find(s=>s.toLowerCase()===n.toLowerCase());if(!o){let s=Object.keys(e).join(", ");throw new Error(`Unknown component: "${t}".
2
2
  Available components: ${s}
3
3
 
4
4
  To add this component:
@@ -6,6 +6,6 @@ To add this component:
6
6
  const loadAsyncComponents = {
7
7
  ...existingComponents,
8
8
  "${t}": () => import('./${t}.js')
9
- };`)}if(v.has(o))return v.get(o);try{let i=(await e[o]()).default;return v.set(o,i),i}catch(s){throw new Error(`Failed to load component "${o}": ${s.message}`)}}c(Je,"loadFunc");function ke(e){let t=null,n=-1;if(typeof e=="string")return{partName:e,index:n};let o=(e==null?void 0:e.target)instanceof Element?e.target.closest("[data-component]"):null;if(o){let s=o.closest("[data-part]");if(t=s==null?void 0:s.getAttribute("data-part"),s){let i=o.getAttribute("data-component");i&&s.querySelectorAll(`[data-component="${i}"]`).forEach((r,m)=>{r===o&&(n=m)})}}return{partName:t,index:n}}c(ke,"getTargetPartAndIndex");async function Ze(e,t,n,o,s=null){if(S)return;let i=null,{partName:l,index:r}=ke(s);l&&(i=l);let m=window.location.host+"/"+e;if(i===null){if(V===m)return;V=m}let u;typeof t=="boolean"||typeof t=="string"?(n=t,t=w.route):t===void 0&&(t=w.route,n=!1),we(e);let{componentKey:f,params:d}=ue(t);(f===void 0||f==="")&&console.warn(`current path "${e}" not match in route map file , check if param path is match`);let y=Object.keys(t);if(typeof n=="string")f=n,u=!!o;else if(typeof n=="boolean"){if(y.length===1)f=y[0];else if(y.includes(f))f=f;else throw new Error(`Ambiguous component map: multiple components exist and no matching key for path '${e}' found. Provide component key explicitly.`);u=n}else{if(y.length===1)f=y[0];else if(y.includes(f))f=f;else throw new Error(`Ambiguous component map: multiple components exist and no matching key for path '${e}' found. Provide component key explicitly.`);u=!1}let h=await ve(t,f,d,null,!1);i&&(e=e+i+r);let g=G.get(e);if((!g||!u)&&(typeof h=="function"?(M=ce.get(h.name),W=0,Array.isArray(d)?g=h(...d):typeof d=="object"&&d!==null?g=h(d):g=h(),G.set(e,g)):g=h),L&&L.isConnected){var a=L.contains(g);a||L.replaceWith(g)}else{typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null&&(f=H(rvs_map_sigment,f));let p=document.querySelectorAll('[data-part="'+i+'"] [data-component="'+f+'"]');g.setAttribute("data-component",f),p&&p.length===1?p[0].replaceWith(g):p&&p.length>1?p[r].replaceWith(g):document.body.replaceChildren(g)}i===null&&(L=g,ge=e),V=m}c(Ze,"NavigateTo");function ue(e){if(S)return;let t=window.location.pathname.replace(/\/{2,}/g,"/");t.length>1&&t.endsWith("/")&&(t=t.slice(0,-1));let n=t.replace(/^\//,"").split("/").filter(Boolean);n[0]===void 0&&(n[0]="/");let o={},s=null,i=null,l=0;function r(f){return f.length>1&&f.endsWith("/")&&(f=f.slice(0,-1)),f.replace(/^\//,"").split("/").map(d=>{let y=d.startsWith(":"),h=y&&d.endsWith("?"),g=y?d.slice(1).replace("?",""):d;return g===""&&(g="/"),{isParam:y,isOptional:h,name:g}})}c(r,"parseRouteSegments");for(let[f,d]of Object.entries(e)){let y=d.path||`/${f}`,h=r(y),g=!0;for(let a=0;a<h.length;a++){let p=h[a],b=n[a];if(p.isParam){if(!b&&!p.isOptional){g=!1;break}}else if(p.name!==b){g=!1;break}}if(n.length<h.length){for(let a=n.length;a<h.length;a++)if(!h[a].isOptional){g=!1;break}}if(g){s=f,i=d,l=h.length,h.forEach((a,p)=>{if(a.isParam){let b=n[p];b!==void 0&&b!==""&&(o[a.name]=b)}});break}}s||(s="",i=e[s]),i!=null&&i.urlParam&&i.urlParam.split("/").map(d=>d.replace(/[{}]/g,"")).forEach((d,y)=>{let h=n[l+y];h!==void 0&&h!==""&&(o[d]=h)}),new URL(window.location.href).searchParams.forEach((f,d)=>{o[d]=f});let u=s;return i!=null&&i.loader&&(Object.defineProperty(o,"_componentNamePromise",{value:i.loader().then(f=>{let d=f.default||Object.values(f)[0];return typeof d=="function"&&d.name?d.name:s})}),Object.defineProperty(o,"componentName",{get(){return u}})),{componentKey:s,componentName:u,params:o}}c(ue,"parsePath");function F(e){return new DOMParser().parseFromString(e,"text/html").body.firstChild}c(F,"parseHTML");async function ve(e,t,n=null,o=null,s=!0){if(S)return;let i=e[t.toLowerCase()];if(i||(typeof e.fallback=="string"?i=e[e.fallback]:i=e.fallback),!i)return F("<h1>404 - Component not found</h1>");let{loader:l,guard:r,cacheExpiration:m=null,...u}=i;if(o===null&&typeof i.logic=="function"&&(o=i.logic),typeof r=="function"&&!await r(n))return F("<h1>403 - Forbidden</h1><p>You do not have access to this page.</p>");for(let f in u){let d=u[f];if(typeof d=="function")try{await d()}catch(y){console.error(y)}}try{let f=Date.now(),d=v.get(t);d&&m!==null&&f-d.cachedAt>m&&(v.delete(t),d=null);let y;if(d)y=d.component,v.set(t,{component:y,cachedAt:f});else{if(y=(await l()).default,v.size>=w.maxCacheSize){let p=v.keys().next().value;v.delete(p)}v.set(t,{component:y,cachedAt:f})}if(typeof y!="function")return F("<h1>Invalid component</h1>");if(!s)return y;let h;Array.isArray(n)?h=y(...n):typeof n=="object"&&n!==null?h=y(n):h=y();let g="/";try{g=window.location.pathname.slice(1)+window.location.hash,g=g.endsWith("/")&&g!=="/"?g.slice(0,-1):g,g===""&&(g="/")}catch{g=t}return G.set(g,h),L=h,h}catch(f){return console.error(f),F("<h1>Error loading component</h1>")}}c(ve,"loadRunFunc");function Z(e=""){var s,i;if(S)return"";R(Z.name),A.buildRoadMap=Z.name;var t="";let n=(s=new Error().stack)==null?void 0:s.toString();navigator.userAgent.toLowerCase().indexOf("firefox")>0?n=n.split("@"):n=n.split(`
9
+ };`)}if(N.has(o))return N.get(o);try{let i=(await e[o]()).default;return N.set(o,i),i}catch(s){throw new Error(`Failed to load component "${o}": ${s.message}`)}}c(Xe,"loadFunc");function Ne(e){let t=null,n=-1;if(typeof e=="string")return{partName:e,index:n};let o=(e==null?void 0:e.target)instanceof Element?e.target.closest("[data-component]"):null;if(o){let s=o.closest("[data-part]");if(t=s==null?void 0:s.getAttribute("data-part"),s){let i=o.getAttribute("data-component");i&&s.querySelectorAll(`[data-component="${i}"]`).forEach((r,m)=>{r===o&&(n=m)})}}return{partName:t,index:n}}c(Ne,"getTargetPartAndIndex");async function Qe(e,t,n,o,s=null){if(S)return;let i=null,{partName:l,index:r}=Ne(s);l&&(i=l);let m=window.location.host+"/"+e;if(i===null){if(V===m)return;V=m}let u;typeof t=="boolean"||typeof t=="string"?(n=t,t=w.route):t===void 0&&(t=w.route,n=!1),Ae(e);let{componentKey:f,params:d}=ue(t);(f===void 0||f==="")&&console.warn(`current path "${e}" not match in route map file , check if param path is match`);let y=Object.keys(t);if(typeof n=="string")f=n,u=!!o;else if(typeof n=="boolean"){if(y.length===1)f=y[0];else if(y.includes(f))f=f;else throw new Error(`Ambiguous component map: multiple components exist and no matching key for path '${e}' found. Provide component key explicitly.`);u=n}else{if(y.length===1)f=y[0];else if(y.includes(f))f=f;else throw new Error(`Ambiguous component map: multiple components exist and no matching key for path '${e}' found. Provide component key explicitly.`);u=!1}let h=await Oe(t,f,d,null,!1);i&&(e=e+i+r);let g=I.get(e);if((!g||!u)&&(typeof h=="function"?(M=ce.get(h.name),W=0,Array.isArray(d)?g=h(...d):typeof d=="object"&&d!==null?g=h(d):g=h(),I.set(e,g)):g=h),L&&L.isConnected){var a=L.contains(g);a||L.replaceWith(g)}else{typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null&&(f=H(rvs_map_sigment,f));let p=document.querySelectorAll('[data-part="'+i+'"] [data-component="'+f+'"]');g.setAttribute("data-component",f),p&&p.length===1?p[0].replaceWith(g):p&&p.length>1?p[r].replaceWith(g):document.body.replaceChildren(g)}i===null&&(L=g,be=e),V=m}c(Qe,"NavigateTo");var ke=c((e,t)=>{var n,o,s;return((s=(o=(n=e[t])==null?void 0:n.loader)==null?void 0:o.toString().match(/\/([^/]+)\.js['"`\s)]/))==null?void 0:s[1])||null},"getComponentNameByKey");function ue(e){if(S)return;let t=window.location.pathname.replace(/\/{2,}/g,"/");t.length>1&&t.endsWith("/")&&(t=t.slice(0,-1));let n=t.replace(/^\//,"").split("/").filter(Boolean);n[0]===void 0&&(n[0]="/");let o={},s=null,i=null,l=0;function r(f){return f.length>1&&f.endsWith("/")&&(f=f.slice(0,-1)),f.replace(/^\//,"").split("/").map(d=>{let y=d.startsWith(":"),h=y&&d.endsWith("?"),g=y?d.slice(1).replace("?",""):d;return g===""&&(g="/"),{isParam:y,isOptional:h,name:g}})}c(r,"parseRouteSegments");for(let[f,d]of Object.entries(e)){let y=d.path||`/${f}`,h=r(y),g=!0;for(let a=0;a<h.length;a++){let p=h[a],b=n[a];if(p.isParam){if(!b&&!p.isOptional){g=!1;break}}else if(p.name!==b){g=!1;break}}if(n.length<h.length){for(let a=n.length;a<h.length;a++)if(!h[a].isOptional){g=!1;break}}if(g){s=f,i=d,l=h.length,h.forEach((a,p)=>{if(a.isParam){let b=n[p];b!==void 0&&b!==""&&(o[a.name]=b)}});break}}s||(s="",i=e[s]),i!=null&&i.urlParam&&i.urlParam.split("/").map(d=>d.replace(/[{}]/g,"")).forEach((d,y)=>{let h=n[l+y];h!==void 0&&h!==""&&(o[d]=h)}),new URL(window.location.href).searchParams.forEach((f,d)=>{o[d]=f});let u=ke(e,s);return i!=null&&i.loader&&(Object.defineProperty(o,"_componentNamePromise",{value:i.loader().then(f=>{let d=f.default||Object.values(f)[0];return typeof d=="function"&&d.name?d.name:s})}),Object.defineProperty(o,"componentName",{get(){return u}})),{componentKey:s,componentName:u,params:o}}c(ue,"parsePath");function F(e){return new DOMParser().parseFromString(e,"text/html").body.firstChild}c(F,"parseHTML");async function Oe(e,t,n=null,o=null,s=!0){if(S)return;let i=e[t.toLowerCase()];if(i||(typeof e.fallback=="string"?i=e[e.fallback]:i=e.fallback),!i)return F("<h1>404 - Component not found</h1>");let{loader:l,guard:r,cacheExpiration:m=null,...u}=i;if(o===null&&typeof i.logic=="function"&&(o=i.logic),typeof r=="function"&&!await r(n))return F("<h1>403 - Forbidden</h1><p>You do not have access to this page.</p>");for(let f in u){let d=u[f];if(typeof d=="function")try{await d()}catch(y){console.error(y)}}try{let f=Date.now(),d=N.get(t);d&&m!==null&&f-d.cachedAt>m&&(N.delete(t),d=null);let y;if(d)y=d.component,N.set(t,{component:y,cachedAt:f});else{if(y=(await l()).default,N.size>=w.maxCacheSize){let p=N.keys().next().value;N.delete(p)}N.set(t,{component:y,cachedAt:f})}if(typeof y!="function")return F("<h1>Invalid component</h1>");if(!s)return y;let h;Array.isArray(n)?h=y(...n):typeof n=="object"&&n!==null?h=y(n):h=y();let g="/";try{g=window.location.pathname.slice(1)+window.location.hash,g=g.endsWith("/")&&g!=="/"?g.slice(0,-1):g,g===""&&(g="/")}catch{g=t}return I.set(g,h),L=h,h}catch(f){return console.error(f),F("<h1>Error loading component</h1>")}}c(Oe,"loadRunFunc");function Z(e=""){var s,i;if(S)return"";R(Z.name),A.buildRoadMap=Z.name;var t="";let n=(s=new Error().stack)==null?void 0:s.toString();navigator.userAgent.toLowerCase().indexOf("firefox")>0?n=n.split("@"):n=n.split(`
10
10
  `);for(let l=0;l<n.length;l++){var o="";if(navigator.userAgent.indexOf("Firefox")>0){let r=n[l].lastIndexOf(`
11
- `);if(r===-1)continue;o=n[l].slice(r+1),o===""?(r=n[l].lastIndexOf("/")+1,r>-1&&(o=n[l].substr(r),o=o.substr(0,o.indexOf(".")))):o.indexOf("/")>-1&&(o=o.substr(0,o.indexOf("/")))}else o=(i=n[l])==null?void 0:i.trim().split(" ")[1];if(!A.funcname.includes(o)&&!(o===void 0||o==="")&&!(o.indexOf("http://")>-1||o.indexOf("https://")>-1)){if(A.gvec!==void 0&&o.indexOf(A.gvec)>-1)break;t.indexOf("|"+o)>-1||(t+="|"+o.replace(".","|"))}}return e+t}c(Z,"buildRoadMap");function R(e){!A.funcname.includes(e)&&A.funcname.push(e)}c(R,"setFuncName");function fe(e){let t=typeof e=="object"&&e!==null&&!Array.isArray(e),n=!(typeof process<"u");t&&n&&console.warn("[Sigment] createSignal() is deprecated for objects. Use signal()."),t&&!n&&console.warn("[Sigment] createSignal() is deprecated for objects. Use signal().");let o=e,s=new Set;function i(){return D&&s.add(D),o}c(i,"get"),i.__isSignal=!0,i.__isPrimitiveSignal=!0;function l(m,u=!1){(u||o!==m)&&(o=m,s.forEach(f=>f()))}return c(l,"set"),[new Proxy(i,{get(m,u){if(u==="valueOf")return()=>o;if(u==="toString")return()=>String(o);if(u in m)return m[u]}}),l]}c(fe,"createSignal");function Ne(e){return typeof e=="object"&&e!==null}c(Ne,"isObject");function Xe(e){return pe(e)[0]}c(Xe,"store");function de(e){let t=e,n=new Map,o=c(r=>Ne(r)?de(r)[0]:r,"wrap"),s=c(r=>{if(!n.has(r)){let[m,u]=fe(o(t[r])),f=new Proxy(m,{get(d,y){return y==="valueOf"?()=>m():y==="toString"?()=>String(m()):d[y]}});n.set(r,[f,u])}return n.get(r)},"getSignal"),i=new Proxy(t,{get(r,m){if(typeof m=="symbol")return t[m];let[u]=s(m);return u()},set(r,m,u){t[m]=u;let[,f]=s(m);return f(o(u)),!0}});function l(r){let m=typeof r=="function"?r(i):r;for(let u in m)i[u]=m[u]}return c(l,"setState"),[i,l]}c(de,"signalObject");function pe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?de(e):fe(e)}c(pe,"signal");function X(e){function t(){D=t,e(),D=null}c(t,"wrapped"),t()}c(X,"createEffect");function Oe(e){e=e.toLowerCase(),E.innerHTMLElements.includes(e)||(E.innerHTMLElements.push(e),globalThis[e]=(...t)=>q(e,...t))}c(Oe,"createTypeElement");function me(e){return e.replace(/-+/g,"-").replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}c(me,"dashToCamel");function Qe(e,t=null){Fe(e,t)}c(Qe,"addSigment");function et(e,...t){if(Oe(e),t.length!==0)return globalThis[e](...t)}c(et,"createElement");function Pe(e){let t=document.createTextNode("");return X(()=>{if(typeof P!="object"||P===null){t.nodeValue=e;return}let n=e.replace(/{{(.*?)}}/g,(o,s)=>{let i=s.trim();if(P.hasOwnProperty(i)){let l=P[i];if(l&&typeof l[0]=="function")return l[0]()??""}return""});t.nodeValue=n}),t}c(Pe,"interpolateReactiveText");function tt(e,t=5e3,n={}){let o=JSON.stringify([e,n,t]);if(!U.has(o)){let s=je(async()=>{let i=await fetch(e,n);if(!i.ok)throw new Error(`Fetch failed: ${i.status}`);return i.json()},t);U.set(o,s)}return U.get(o)()}c(tt,"fetchCache");function Q(e){if(Array.isArray(e))return e.map(Q);if(e&&typeof e=="object"){let t={};return Object.keys(e).sort().forEach(n=>{t[n]=Q(e[n])}),t}return e}c(Q,"sortObjectDeep");function Le(e){if(e&&typeof e=="object"&&!Array.isArray(e)){let t={};return Object.keys(e).sort().forEach(n=>{t[n]=e[n]}),t}return e}c(Le,"sortObjectShallow");function je(e,t=null,n={}){let o=new Map,s=c((...i)=>{let{deepSort:l}=n,r;l===!0?r=i.map(h=>h&&typeof h=="object"?Q(h):h):l===!1?r=i.map(h=>h&&typeof h=="object"?Le(h):h):r=i;let m=JSON.stringify(r),u=Date.now();m.length===2&&(m=e.name);let d=o.get(m);if(d&&(t===null||u-d.timestamp<t))return d.value;let y=e(...i);return o.set(m,{value:y,timestamp:u}),y instanceof Promise&&y.catch(()=>o.delete(m)),y},"wrapped");return s.clear=()=>o.clear(),s}c(je,"memoizeFunc");function B(e){let t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};return e.replace(/[&<>"']/g,n=>t[n])}c(B,"escapeHtml");function Me(e){let t="";function n(o,s=0){let i=" ".repeat(s);if(o==null||o===!1||o===!0)return;if(Array.isArray(o)){o.forEach(r=>n(r,s+1));return}let l=o;typeof l=="function"&&(l=l()),typeof l=="function"&&l.__isSignal&&(l=l()),!(l==null||l===!1||l===!0)&&(t+=String(l))}return c(n,"process"),e.forEach(o=>n(o)),t}c(Me,"renderChildren");function Re(e){let t=[];for(let n=0;n<e.length;n++){let o=e[n],s=e[n+1];typeof o=="string"&&typeof s=="function"?(t.push(()=>o+s()),n++):t.push(o)}return t}c(Re,"normalizeChildren");function q(e,...t){var g;let n={},o=[];if(t[0]&&typeof t[0]=="object"&&!Array.isArray(t[0])&&t[0]!==null&&!(t[0]instanceof String)&&(S||!(t[0]instanceof Node))?(n=t[0],o=t.slice(1)):o=t,S&&typeof document>"u"){let a=globalThis.__CURRENT_COMPONENT__;globalThis.__HANDLER_REGISTRY__||(globalThis.__HANDLER_REGISTRY__={}),(g=globalThis.__HANDLER_REGISTRY__)[a]||(g[a]=[]);let p=[];for(let[N,k]of Object.entries(n))if(N==="style"&&typeof k=="object"){let $=Object.entries(k).map(([C,he])=>`${C.replace(/([A-Z])/g,"-$1").toLowerCase()}:${he}`).join(";");p.push(` style="${B($)}"`)}else N!=="className"&&N!=="class"&&!N.startsWith("on")&&p.push(` ${N}="${B(String(k))}"`);(n.className||n.class)&&p.push(` class="${B(n.className||n.class)}"`);let b=Me(o);if(["input","img","br","hr","meta","link"].includes(e))return`<${e}${p.join("")} />`;if(e==="fragment")return b;var s;let _=I.get(e);return _&&(s=_.tagName,_.nativeTag!==null&&(s=_.nativeTag)),s!==void 0&&(e=s),`<${e}${p.join("")}>${b}</${e}>`}R(q.name);var i="";i=Z();var l=i.split("|");if(l.includes(A.rpc))return;let r=null,m=e.toLowerCase()==="fragment";if(m)r=document.createDocumentFragment();else{var s;let p=I.get(e);p&&(s=p.tagName,p.nativeTag!==null&&(s=p.nativeTag)),s!==void 0&&(e=s),r=document.createElement(e)}if(globalThis.__CURRENT_COMPONENT__){W++;let a=W;r.dataIndex=a,r.realtedComponent=globalThis.__CURRENT_COMPONENT__,r.cmpNbr=M}let u=[];for(let[a,p]of Object.entries(n))if(a.startsWith("on")&&typeof p=="function"){let b=a.slice(2).toLowerCase();u.push({type:b,val:p})}u.length&&(r._handlers=u);let f=Y.has(e),d=K.has(me(e)),y=e==="input"||e==="option",h=e==="option";if(!m)for(let a in n){let p=n[a];if(a.startsWith("on")&&typeof p=="function"){let b=a.slice(2).toLowerCase();r.addEventListener(b,x=>{w.stopPropagation&&x.stopPropagation(),p(x)})}else typeof p=="function"&&a!=="children"?X(()=>{let b=p();b==null||b===!1?(r.removeAttribute(a),a==="value"&&d&&(r.value="",w.cleanhtml||r.removeAttribute("value")),a==="checked"&&y&&(r.checked=!1,w.cleanhtml||r.removeAttribute("checked")),a==="selected"&&h&&(r.selected=!1,w.cleanhtml||r.removeAttribute("selected")),a==="id"&&(r.iid="",w.cleanhtml||r.removeAttribute("id"))):a==="id"?(r.iid=b,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",b),oe(b,{name:b,caller:b+i,value:r})):a==="value"&&d?(r.value=b,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",b)):a==="checked"&&y?(r.checked=b,w.cleanhtml?r.removeAttribute("checked"):b?r.setAttribute("checked",""):r.removeAttribute("checked")):a==="selected"&&h?(r.selected=b,w.cleanhtml?r.removeAttribute("selected"):b?r.setAttribute("selected",""):r.removeAttribute("selected")):r.setAttribute(a,b)}):p!=null&&p!==!1&&(a==="id"?(r.iid=p,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",p),oe(p,{name:p,caller:p+i,value:r})):a==="value"&&d?(r.value=p,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",p)):a==="checked"&&y?(r.checked=p,w.cleanhtml?r.removeAttribute("checked"):r.setAttribute("checked","")):a==="selected"&&h?(r.selected=p,w.cleanhtml?r.removeAttribute("selected"):r.setAttribute("selected","")):r.setAttribute(a,p))}return f?o.length===1&&(typeof o[0]=="string"||typeof o[0]=="number")?d&&(r.value=o[0],w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",o[0])):o.length>0&&console.warn(`Void element <${e}> should not have children.`):(o=Re(o),o.flat().forEach((a,p)=>{if(a&&a.__isSignal&&a.__isPrimitiveSignal&&!a.__isWrapped){let b=a;b.__isWrapped=!0,a=c(()=>b(),"child")}if(typeof a=="function"){let b=a(),_=b===!1||b===null||b===!0?document.createComment(""):document.createTextNode("");r.appendChild(_),X(()=>{let T=a();if(Array.isArray(T)){let k=_.parentNode;if(!k)return;_._insertedNodes&&(_._insertedNodes.forEach(C=>C.remove()),_._insertedNodes=null);let $=T.flat().filter(Boolean).map(C=>C instanceof Node?C:typeof C=="string"||typeof C=="number"?document.createTextNode(String(C)):typeof C=="object"?C.__isNode?C:div(C.name??JSON.stringify(C)):null).filter(Boolean);$.forEach(C=>k.insertBefore(C,_)),_._insertedNodes=$,_.nodeValue="";return}if(T instanceof Node){let k=_.parentNode;if(!k)return;_._insertedNode&&(_._insertedNode._boundNode&&_._insertedNode._boundNode.remove(),_._insertedNode.remove(),_._insertedNode=null),k.insertBefore(T,_),_._insertedNode=T;return}let N=T==null||T===!1||T===!0?"":String(T);if(_._insertedNode&&(_._insertedNode._boundNode&&_._insertedNode._boundNode.remove(),_._insertedNode.remove(),_._insertedNode=null),_.nodeValue!==N){if(!_.parentNode)return;_!=null&&_._boundNode?_._boundNode.nodeValue=N:_.nodeValue=N}})}else if(typeof a=="string"&&a.includes("{{")&&!a.includes("function"))r.appendChild(Pe(a));else if(typeof a=="string"||typeof a=="number"){if(typeof a=="string"&&(a.includes("function get(")||a.includes("function (")||a.includes("[native code]")))throw new Error("Detected reactive getter function used inside a template string. Use a function instead like: div(() => `Your text is: ${someState()}`)");r.appendChild(document.createTextNode(a))}else(a instanceof DocumentFragment||a instanceof Node)&&r.appendChild(a)})),r}c(q,"h");function $e(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/-+/g,"-").toLowerCase()}c($e,"camelToDash");function Fe(e,t=null){if(E.innerHTMLElements.includes(e)||E.valueElements.includes(e)||E.srcElements.includes(e)||E.hrefElements.includes(e)||E.voidElements.includes(e))return;let o=/[A-Z]/.test(e)?$e(e):e.toLowerCase();o.includes("-")||(o="s-"+o),e.includes("-")&&(o=e,e=me(e)),I.set(e,{tagName:o,nativeTag:t}),!E.innerHTMLElements.includes(e)&&t===null?E.innerHTMLElements.push(e):!E.innerHTMLElements.includes(e)&&t!==null&&(E.innerHTMLElements.includes(t)||E.innerHTMLElements.push(e)),!E.valueElements.includes(e)&&t===null?(E.valueElements.push(e),K.add(e)):!E.valueElements.includes(e)&&t!==null&&(E.valueElements.includes(t)||(E.valueElements.push(e),K.add(e))),!E.srcElements.includes(e)&&t===null?(E.srcElements.push(e),te.add(e)):!E.srcElements.includes(e)&&t!==null&&(E.srcElements.includes(t)||(E.srcElements.push(e),te.add(e))),!E.hrefElements.includes(e)&&t===null?(E.hrefElements.push(e),ne.add(e)):!E.hrefElements.includes(e)&&t!==null&&(E.hrefElements.includes(t)||(E.hrefElements.push(e),ne.add(e))),!E.voidElements.includes(e)&&t===null?(E.voidElements.push(e),Y.add(e)):!E.voidElements.includes(e)&&t!==null&&(E.voidElements.includes(t)||(E.voidElements.push(e),Y.add(e))),globalThis[e]=(...s)=>q(e,...s)}c(Fe,"defineElement");function Ve(e){S||requestAnimationFrame(()=>{requestAnimationFrame(e)})}c(Ve,"onPaint");function nt(e){if(S)return;let t=!1;Ve(()=>{t||(t=!0,e())})}c(nt,"paintFinish");function le(e){let t={};for(let n of e.attributes)if(n.name.startsWith("data-")&&n.name!=="data-component"){let o=n.name.slice(5);try{t[o]=JSON.parse(n.value)}catch{t[o]=n.value}}return t}c(le,"getPropsFromDataAttributes");async function De(){let e=document.querySelector("layout[data-layout]");if(!e)return!1;let t=e.getAttribute("data-layout");if(!t)return!1;try{S||(t="/"+t);let n=await fetch(t);if(!n.ok)throw new Error("Failed to load layout");let o=await n.text(),i=new DOMParser().parseFromString(o,"text/html"),l=document.querySelector("description[data-description]");if(l){let u=i.querySelector('meta[name="description"]');u||(u=i.createElement("meta"),u.name="description",i.head.appendChild(u)),u.content=l.getAttribute("data-description")}let r=document.querySelector("keywords[data-keywords]");if(r){let u=i.querySelector('meta[name="keywords"]');u||(u=i.createElement("meta"),u.name="keywords",i.head.appendChild(u)),u.content=r.getAttribute("data-keywords")}return document.querySelectorAll("[data-part]").forEach(u=>{let f=u.getAttribute("data-part"),d=i.querySelector(`[data-part="${f}"]`);d&&(d.innerHTML="",[...u.childNodes].forEach(y=>{d.appendChild(y.cloneNode(!0))}))}),document.documentElement.innerHTML=i.documentElement.innerHTML,!0}catch(n){return console.error("Failed to inject layout:",n),!1}}c(De,"injectLayout");function H(e,t){if(!t)return;let n=t.trim();if(e[n])return e[n];let o=n[0].toUpperCase()+n.slice(1).toLowerCase();if(e[o])return e[o];let s=n.toUpperCase();if(e[s])return e[s];let i=n.toLowerCase(),l=Object.entries(e).find(([r,m])=>r.toLowerCase()===i);if(l)return l[1]}c(H,"lookupComponent");async function We(e,t){let n=t.trim();for(let[o,s]of Object.entries(e))if(s.loader)try{let i=await s.loader(),l=i.default||Object.values(i)[0];if(typeof l=="function"&&l.name===n)return s._componentName=l.name,s}catch(i){console.warn(`Failed to load route "${o}":`,i);continue}}c(We,"findRouteByComponentName");async function ae(e){var u;let t=e||w.route;await De();let{componentKey:n,componentNme:o,params:s}=ue(t),i=new Set,l=await s._componentNamePromise,r=n,m=document.querySelectorAll("[data-component]");for(let f of m){let d=f.getAttribute("data-component"),y=d==null?void 0:d.toLowerCase();if(typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null?r=H(rvs_map_sigment,d):r=y,!r||i.has(r))continue;let h=H(t,r);h===void 0&&(h=await We(t,r));try{f.hasChildNodes()&&(globalThis.__CURRENT_COMPONENT__=d);let g=h?await He(h):await qe(w.loadAtRunTime,r),a=h?{...s,...le(f)}:le(f),p=g.default(a);p.funcName=l.toLowerCase();let b=(u=f.closest("[data-part]"))==null?void 0:u.getAttribute("data-part");p.datapart=b,p.setAttribute("data-component",d),p.hydrate=!0,f.cmpNbr=M,ee(f,p),ce.set(r,M),M++,W=0}catch(g){console.warn(`Component "${y}" failed to load`,g)}}}c(ae,"hydrateComponent");async function He(e){if(!j.has(e)){let t=await e.loader();j.set(e,t)}return j.get(e)}c(He,"loadModule");async function qe(e,t){let n=H(e,t);if(n){if(j.has(n))return j.get(n);try{let o=await n();return j.set(n,o),o}catch(o){console.error(`Component "${t}" failed to load`,o)}}}c(qe,"loadModuleFromFile");function ot(e,t){if(e===void 0){ae();return}if(typeof e=="object"&&t===void 0){ae(e);return}let n=typeof e=="string"?document.getElementById(e):e;if(!n)throw new Error("Mount target not found: "+e);n.hasChildNodes()?ee(n,t):n.replaceChildren(t)}c(ot,"mount");function ee(e,t){(async()=>{try{if(!e||!t)return;if(t._boundNode=e,e.nodeName!==t.nodeName){e.replaceWith(t);return}if(e.nodeType===Node.TEXT_NODE||e.nodeType===Node.COMMENT_NODE){e.nodeValue!==t.nodeValue&&(e.nodeValue=t.nodeValue);return}if(e.nodeType===Node.ELEMENT_NODE&&t.nodeType===Node.ELEMENT_NODE){for(let s of Array.from(t.attributes))e.setAttribute(s.name,s.value);for(let s of Array.from(e.attributes))t.hasAttribute(s.name)||e.removeAttribute(s.name);t._handlers&&t._handlers.forEach(({type:s,val:i})=>{e.addEventListener(s,l=>{w.stopPropagation&&l.stopPropagation(),i(l)})})}let n=Array.from(t.childNodes),o=Array.from(e.childNodes);for(let s=0;s<Math.max(n.length,o.length);s++){let i=o[s],l=n[s];i&&l?ee(i,l):l?e.appendChild(l):i&&e.removeChild(i)}}catch(n){console.error("Hydration failed:",n)}})()}c(ee,"hydrate");export{Ye as IsEmpty,w as MyApp,we as Navigate,Ze as NavigateTo,Ke as Route,Qe as addSigment,Ge as batch,X as createEffect,et as createElement,ze as createGlobalSignal,fe as createSignal,Ie as createTemplate,tt as fetchCache,Be as getGlobalSignal,z as getVirtualElementById,ze as globalSignal,z as gve,se as gvec,q as h,ae as hydrateComponent,Je as loadFunc,ve as loadRunFunc,je as memoizeFunc,ot as mount,Ve as onPaint,nt as paintFinish,ue as parsePath,ie as rpc,pe as sig,pe as signal,Xe as store,Be as useGlobalSignal};
11
+ `);if(r===-1)continue;o=n[l].slice(r+1),o===""?(r=n[l].lastIndexOf("/")+1,r>-1&&(o=n[l].substr(r),o=o.substr(0,o.indexOf(".")))):o.indexOf("/")>-1&&(o=o.substr(0,o.indexOf("/")))}else o=(i=n[l])==null?void 0:i.trim().split(" ")[1];if(!A.funcname.includes(o)&&!(o===void 0||o==="")&&!(o.indexOf("http://")>-1||o.indexOf("https://")>-1)){if(A.gvec!==void 0&&o.indexOf(A.gvec)>-1)break;t.indexOf("|"+o)>-1||(t+="|"+o.replace(".","|"))}}return e+t}c(Z,"buildRoadMap");function R(e){!A.funcname.includes(e)&&A.funcname.push(e)}c(R,"setFuncName");function fe(e){let t=typeof e=="object"&&e!==null&&!Array.isArray(e),n=!(typeof process<"u");t&&n&&console.warn("[Sigment] createSignal() is deprecated for objects. Use signal()."),t&&!n&&console.warn("[Sigment] createSignal() is deprecated for objects. Use signal().");let o=e,s=new Set;function i(){return D&&s.add(D),o}c(i,"get"),i.__isSignal=!0,i.__isPrimitiveSignal=!0;function l(m,u=!1){(u||o!==m)&&(o=m,s.forEach(f=>f()))}return c(l,"set"),[new Proxy(i,{get(m,u){if(u==="valueOf")return()=>o;if(u==="toString")return()=>String(o);if(u in m)return m[u]}}),l]}c(fe,"createSignal");function Pe(e){return typeof e=="object"&&e!==null}c(Pe,"isObject");function et(e){return pe(e)[0]}c(et,"store");function de(e){let t=e,n=new Map,o=c(r=>Pe(r)?de(r)[0]:r,"wrap"),s=c(r=>{if(!n.has(r)){let[m,u]=fe(o(t[r])),f=new Proxy(m,{get(d,y){return y==="valueOf"?()=>m():y==="toString"?()=>String(m()):d[y]}});n.set(r,[f,u])}return n.get(r)},"getSignal"),i=new Proxy(t,{get(r,m){if(typeof m=="symbol")return t[m];let[u]=s(m);return u()},set(r,m,u){t[m]=u;let[,f]=s(m);return f(o(u)),!0}});function l(r){let m=typeof r=="function"?r(i):r;for(let u in m)i[u]=m[u]}return c(l,"setState"),[i,l]}c(de,"signalObject");function pe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?de(e):fe(e)}c(pe,"signal");function X(e){function t(){D=t,e(),D=null}c(t,"wrapped"),t()}c(X,"createEffect");function Le(e){e=e.toLowerCase(),_.innerHTMLElements.includes(e)||(_.innerHTMLElements.push(e),globalThis[e]=(...t)=>q(e,...t))}c(Le,"createTypeElement");function me(e){return e.replace(/-+/g,"-").replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}c(me,"dashToCamel");function tt(e,t=null){De(e,t)}c(tt,"addSigment");function nt(e,...t){if(Le(e),t.length!==0)return globalThis[e](...t)}c(nt,"createElement");function je(e){let t=document.createTextNode("");return X(()=>{if(typeof P!="object"||P===null){t.nodeValue=e;return}let n=e.replace(/{{(.*?)}}/g,(o,s)=>{let i=s.trim();if(P.hasOwnProperty(i)){let l=P[i];if(l&&typeof l[0]=="function")return l[0]()??""}return""});t.nodeValue=n}),t}c(je,"interpolateReactiveText");function ot(e,t=5e3,n={}){let o=JSON.stringify([e,n,t]);if(!U.has(o)){let s=Re(async()=>{let i=await fetch(e,n);if(!i.ok)throw new Error(`Fetch failed: ${i.status}`);return i.json()},t);U.set(o,s)}return U.get(o)()}c(ot,"fetchCache");function Q(e){if(Array.isArray(e))return e.map(Q);if(e&&typeof e=="object"){let t={};return Object.keys(e).sort().forEach(n=>{t[n]=Q(e[n])}),t}return e}c(Q,"sortObjectDeep");function Me(e){if(e&&typeof e=="object"&&!Array.isArray(e)){let t={};return Object.keys(e).sort().forEach(n=>{t[n]=e[n]}),t}return e}c(Me,"sortObjectShallow");function Re(e,t=null,n={}){let o=new Map,s=c((...i)=>{let{deepSort:l}=n,r;l===!0?r=i.map(h=>h&&typeof h=="object"?Q(h):h):l===!1?r=i.map(h=>h&&typeof h=="object"?Me(h):h):r=i;let m=JSON.stringify(r),u=Date.now();m.length===2&&(m=e.name);let d=o.get(m);if(d&&(t===null||u-d.timestamp<t))return d.value;let y=e(...i);return o.set(m,{value:y,timestamp:u}),y instanceof Promise&&y.catch(()=>o.delete(m)),y},"wrapped");return s.clear=()=>o.clear(),s}c(Re,"memoizeFunc");function B(e){let t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};return e.replace(/[&<>"']/g,n=>t[n])}c(B,"escapeHtml");function $e(e){let t="";function n(o,s=0){let i=" ".repeat(s);if(o==null||o===!1||o===!0)return;if(Array.isArray(o)){o.forEach(r=>n(r,s+1));return}let l=o;typeof l=="function"&&(l=l()),typeof l=="function"&&l.__isSignal&&(l=l()),!(l==null||l===!1||l===!0)&&(t+=String(l))}return c(n,"process"),e.forEach(o=>n(o)),t}c($e,"renderChildren");function Fe(e){let t=[];for(let n=0;n<e.length;n++){let o=e[n],s=e[n+1];typeof o=="string"&&typeof s=="function"?(t.push(()=>o+s()),n++):t.push(o)}return t}c(Fe,"normalizeChildren");function q(e,...t){var g;let n={},o=[];if(t[0]&&typeof t[0]=="object"&&!Array.isArray(t[0])&&t[0]!==null&&!(t[0]instanceof String)&&(S||!(t[0]instanceof Node))?(n=t[0],o=t.slice(1)):o=t,S&&typeof document>"u"){let a=globalThis.__CURRENT_COMPONENT__;globalThis.__HANDLER_REGISTRY__||(globalThis.__HANDLER_REGISTRY__={}),(g=globalThis.__HANDLER_REGISTRY__)[a]||(g[a]=[]);let p=[];for(let[k,v]of Object.entries(n))if(k==="style"&&typeof v=="object"){let $=Object.entries(v).map(([C,he])=>`${C.replace(/([A-Z])/g,"-$1").toLowerCase()}:${he}`).join(";");p.push(` style="${B($)}"`)}else k!=="className"&&k!=="class"&&!k.startsWith("on")&&p.push(` ${k}="${B(String(v))}"`);(n.className||n.class)&&p.push(` class="${B(n.className||n.class)}"`);let b=$e(o);if(["input","img","br","hr","meta","link"].includes(e))return`<${e}${p.join("")} />`;if(e==="fragment")return b;var s;let E=G.get(e);return E&&(s=E.tagName,E.nativeTag!==null&&(s=E.nativeTag)),s!==void 0&&(e=s),`<${e}${p.join("")}>${b}</${e}>`}R(q.name);var i="";i=Z();var l=i.split("|");if(l.includes(A.rpc))return;let r=null,m=e.toLowerCase()==="fragment";if(m)r=document.createDocumentFragment();else{var s;let p=G.get(e);p&&(s=p.tagName,p.nativeTag!==null&&(s=p.nativeTag)),s!==void 0&&(e=s),_.svgTags.includes(e.toLowerCase())?r=document.createElementNS(ge,e):r=document.createElement(e)}if(globalThis.__CURRENT_COMPONENT__){W++;let a=W;r.dataIndex=a,r.realtedComponent=globalThis.__CURRENT_COMPONENT__,r.cmpNbr=M}let u=[];for(let[a,p]of Object.entries(n))if(a.startsWith("on")&&typeof p=="function"){let b=a.slice(2).toLowerCase();u.push({type:b,val:p})}u.length&&(r._handlers=u);let f=Y.has(e),d=K.has(me(e)),y=e==="input"||e==="option",h=e==="option";if(!m)for(let a in n){let p=n[a];if(a.startsWith("on")&&typeof p=="function"){let b=a.slice(2).toLowerCase();r.addEventListener(b,x=>{w.stopPropagation&&x.stopPropagation(),p(x)})}else typeof p=="function"&&a!=="children"?X(()=>{let b=p();b==null||b===!1?(r.removeAttribute(a),a==="value"&&d&&(r.value="",w.cleanhtml||r.removeAttribute("value")),a==="checked"&&y&&(r.checked=!1,w.cleanhtml||r.removeAttribute("checked")),a==="selected"&&h&&(r.selected=!1,w.cleanhtml||r.removeAttribute("selected")),a==="id"&&(r.iid="",w.cleanhtml||r.removeAttribute("id"))):a==="id"?(r.iid=b,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",b),oe(b,{name:b,caller:b+i,value:r})):a==="value"&&d?(r.value=b,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",b)):a==="checked"&&y?(r.checked=b,w.cleanhtml?r.removeAttribute("checked"):b?r.setAttribute("checked",""):r.removeAttribute("checked")):a==="selected"&&h?(r.selected=b,w.cleanhtml?r.removeAttribute("selected"):b?r.setAttribute("selected",""):r.removeAttribute("selected")):r.setAttribute(a,b)}):p!=null&&p!==!1&&(a==="id"?(r.iid=p,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",p),oe(p,{name:p,caller:p+i,value:r})):a==="value"&&d?(r.value=p,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",p)):a==="checked"&&y?(r.checked=p,w.cleanhtml?r.removeAttribute("checked"):r.setAttribute("checked","")):a==="selected"&&h?(r.selected=p,w.cleanhtml?r.removeAttribute("selected"):r.setAttribute("selected","")):r.setAttribute(a,p))}return f?o.length===1&&(typeof o[0]=="string"||typeof o[0]=="number")?d&&(r.value=o[0],w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",o[0])):o.length>0&&console.warn(`Void element <${e}> should not have children.`):(o=Fe(o),o.flat().forEach((a,p)=>{if(a&&a.__isSignal&&a.__isPrimitiveSignal&&!a.__isWrapped){let b=a;b.__isWrapped=!0,a=c(()=>b(),"child")}if(typeof a=="function"){let b=a(),E=b===!1||b===null||b===!0?document.createComment(""):document.createTextNode("");r.appendChild(E),X(()=>{let T=a();if(Array.isArray(T)){let v=E.parentNode;if(!v)return;E._insertedNodes&&(E._insertedNodes.forEach(C=>C.remove()),E._insertedNodes=null);let $=T.flat().filter(Boolean).map(C=>C instanceof Node?C:typeof C=="string"||typeof C=="number"?document.createTextNode(String(C)):typeof C=="object"?C.__isNode?C:div(C.name??JSON.stringify(C)):null).filter(Boolean);$.forEach(C=>v.insertBefore(C,E)),E._insertedNodes=$,E.nodeValue="";return}if(T instanceof Node){let v=E.parentNode;if(!v)return;E._insertedNode&&(E._insertedNode._boundNode&&E._insertedNode._boundNode.remove(),E._insertedNode.remove(),E._insertedNode=null),v.insertBefore(T,E),E._insertedNode=T;return}let k=T==null||T===!1||T===!0?"":String(T);if(E._insertedNode&&(E._insertedNode._boundNode&&E._insertedNode._boundNode.remove(),E._insertedNode.remove(),E._insertedNode=null),E.nodeValue!==k){if(!E.parentNode)return;E!=null&&E._boundNode?E._boundNode.nodeValue=k:E.nodeValue=k}})}else if(typeof a=="string"&&a.includes("{{")&&!a.includes("function"))r.appendChild(je(a));else if(typeof a=="string"||typeof a=="number"){if(typeof a=="string"&&(a.includes("function get(")||a.includes("function (")||a.includes("[native code]")))throw new Error("Detected reactive getter function used inside a template string. Use a function instead like: div(() => `Your text is: ${someState()}`)");r.appendChild(document.createTextNode(a))}else(a instanceof DocumentFragment||a instanceof Node)&&r.appendChild(a)})),r}c(q,"h");function Ve(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/-+/g,"-").toLowerCase()}c(Ve,"camelToDash");function De(e,t=null){if(_.innerHTMLElements.includes(e)||_.valueElements.includes(e)||_.srcElements.includes(e)||_.hrefElements.includes(e)||_.voidElements.includes(e))return;let o=/[A-Z]/.test(e)?Ve(e):e.toLowerCase();o.includes("-")||(o="s-"+o),e.includes("-")&&(o=e,e=me(e)),G.set(e,{tagName:o,nativeTag:t}),!_.innerHTMLElements.includes(e)&&t===null?_.innerHTMLElements.push(e):!_.innerHTMLElements.includes(e)&&t!==null&&(_.innerHTMLElements.includes(t)||_.innerHTMLElements.push(e)),!_.valueElements.includes(e)&&t===null?(_.valueElements.push(e),K.add(e)):!_.valueElements.includes(e)&&t!==null&&(_.valueElements.includes(t)||(_.valueElements.push(e),K.add(e))),!_.srcElements.includes(e)&&t===null?(_.srcElements.push(e),te.add(e)):!_.srcElements.includes(e)&&t!==null&&(_.srcElements.includes(t)||(_.srcElements.push(e),te.add(e))),!_.hrefElements.includes(e)&&t===null?(_.hrefElements.push(e),ne.add(e)):!_.hrefElements.includes(e)&&t!==null&&(_.hrefElements.includes(t)||(_.hrefElements.push(e),ne.add(e))),!_.voidElements.includes(e)&&t===null?(_.voidElements.push(e),Y.add(e)):!_.voidElements.includes(e)&&t!==null&&(_.voidElements.includes(t)||(_.voidElements.push(e),Y.add(e))),globalThis[e]=(...s)=>q(e,...s)}c(De,"defineElement");function We(e){S||requestAnimationFrame(()=>{requestAnimationFrame(e)})}c(We,"onPaint");function rt(e){if(S)return;let t=!1;We(()=>{t||(t=!0,e())})}c(rt,"paintFinish");function le(e){let t={};for(let n of e.attributes)if(n.name.startsWith("data-")&&n.name!=="data-component"){let o=n.name.slice(5);try{t[o]=JSON.parse(n.value)}catch{t[o]=n.value}}return t}c(le,"getPropsFromDataAttributes");async function He(){let e=document.querySelector("layout[data-layout]");if(!e)return!1;let t=e.getAttribute("data-layout");if(!t)return!1;try{S||(t="/"+t);let n=await fetch(t);if(!n.ok)throw new Error("Failed to load layout");let o=await n.text(),i=new DOMParser().parseFromString(o,"text/html"),l=document.querySelector("description[data-description]");if(l){let u=i.querySelector('meta[name="description"]');u||(u=i.createElement("meta"),u.name="description",i.head.appendChild(u)),u.content=l.getAttribute("data-description")}let r=document.querySelector("keywords[data-keywords]");if(r){let u=i.querySelector('meta[name="keywords"]');u||(u=i.createElement("meta"),u.name="keywords",i.head.appendChild(u)),u.content=r.getAttribute("data-keywords")}return document.querySelectorAll("[data-part]").forEach(u=>{let f=u.getAttribute("data-part"),d=i.querySelector(`[data-part="${f}"]`);d&&(d.innerHTML="",[...u.childNodes].forEach(y=>{d.appendChild(y.cloneNode(!0))}))}),document.documentElement.innerHTML=i.documentElement.innerHTML,!0}catch(n){return console.error("Failed to inject layout:",n),!1}}c(He,"injectLayout");function H(e,t){if(!t)return;let n=t.trim();if(e[n])return e[n];let o=n[0].toUpperCase()+n.slice(1).toLowerCase();if(e[o])return e[o];let s=n.toUpperCase();if(e[s])return e[s];let i=n.toLowerCase(),l=Object.entries(e).find(([r,m])=>r.toLowerCase()===i);if(l)return l[1]}c(H,"lookupComponent");async function qe(e,t){let n=t.trim();for(let[o,s]of Object.entries(e))if(s.loader)try{let i=await s.loader(),l=i.default||Object.values(i)[0];if(typeof l=="function"&&l.name===n)return s._componentName=l.name,s}catch(i){console.warn(`Failed to load route "${o}":`,i);continue}}c(qe,"findRouteByComponentName");async function ae(e){var u;let t=e||w.route;await He();let{componentKey:n,componentNme:o,params:s}=ue(t),i=new Set,l=await s._componentNamePromise,r=n,m=document.querySelectorAll("[data-component]");for(let f of m){let d=f.getAttribute("data-component"),y=d==null?void 0:d.toLowerCase();if(typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null?r=H(rvs_map_sigment,d):r=y,!r||i.has(r))continue;let h=H(t,r);h===void 0&&(h=await qe(t,r));try{f.hasChildNodes()&&(globalThis.__CURRENT_COMPONENT__=d);let g=h?await Ue(h):await ze(w.loadAtRunTime,r),a=h?{...s,...le(f)}:le(f),p=g.default(a);p.funcName=l.toLowerCase();let b=(u=f.closest("[data-part]"))==null?void 0:u.getAttribute("data-part");p.datapart=b,p.setAttribute("data-component",d),p.hydrate=!0,f.cmpNbr=M,ee(f,p),ce.set(r,M),M++,W=0}catch(g){console.warn(`Component "${y}" failed to load`,g)}}}c(ae,"hydrateComponent");async function Ue(e){if(!j.has(e)){let t=await e.loader();j.set(e,t)}return j.get(e)}c(Ue,"loadModule");async function ze(e,t){let n=H(e,t);if(n){if(j.has(n))return j.get(n);try{let o=await n();return j.set(n,o),o}catch(o){console.error(`Component "${t}" failed to load`,o)}}}c(ze,"loadModuleFromFile");function it(e,t){if(e===void 0){ae();return}if(typeof e=="object"&&t===void 0){ae(e);return}let n=typeof e=="string"?document.getElementById(e):e;if(!n)throw new Error("Mount target not found: "+e);n.hasChildNodes()?ee(n,t):n.replaceChildren(t)}c(it,"mount");function ee(e,t){(async()=>{try{if(!e||!t)return;if(t._boundNode=e,e.nodeName!==t.nodeName){e.replaceWith(t);return}if(e.nodeType===Node.TEXT_NODE||e.nodeType===Node.COMMENT_NODE){e.nodeValue!==t.nodeValue&&(e.nodeValue=t.nodeValue);return}if(e.nodeType===Node.ELEMENT_NODE&&t.nodeType===Node.ELEMENT_NODE){for(let s of Array.from(t.attributes))e.setAttribute(s.name,s.value);for(let s of Array.from(e.attributes))t.hasAttribute(s.name)||e.removeAttribute(s.name);t._handlers&&t._handlers.forEach(({type:s,val:i})=>{e.addEventListener(s,l=>{w.stopPropagation&&l.stopPropagation(),i(l)})})}let n=Array.from(t.childNodes),o=Array.from(e.childNodes);for(let s=0;s<Math.max(n.length,o.length);s++){let i=o[s],l=n[s];i&&l?ee(i,l):l?e.appendChild(l):i&&e.removeChild(i)}}catch(n){console.error("Hydration failed:",n)}})()}c(ee,"hydrate");export{Ze as IsEmpty,w as MyApp,Ae as Navigate,Qe as NavigateTo,Je as Route,tt as addSigment,Ye as batch,X as createEffect,nt as createElement,Ge as createGlobalSignal,fe as createSignal,Ke as createTemplate,ot as fetchCache,Ie as getGlobalSignal,z as getVirtualElementById,Ge as globalSignal,z as gve,se as gvec,q as h,ae as hydrateComponent,Xe as loadFunc,Oe as loadRunFunc,Re as memoizeFunc,it as mount,We as onPaint,rt as paintFinish,ue as parsePath,ie as rpc,pe as sig,pe as signal,et as store,Ie as useGlobalSignal};
package/dist/ssr.js CHANGED
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
- import g from"fs";import y from"fs/promises";import a from"path";import{pathToFileURL as R,fileURLToPath as k}from"url";import{execSync as v}from"child_process";import{createRequire as $}from"module";var C=$(import.meta.url),j=k(import.meta.url),ae=a.dirname(j),I={COMPONENTS_PATH:"src/components",HTML_FOLDER_PATH:"src/html",OUT_DIR:"dist"},E=a.resolve(process.cwd(),"ssr.config.js"),M={};try{await g.promises.access(E);let e=await import(R(E).href);M=e.default||e}catch{console.warn("\u26A0\uFE0F No ssr.config.js found, using defaults")}var f={...I,...M};function U(){return parseInt(process.versions.node.split(".")[0],10)<20?"4":"latest"}function P(e,t="latest"){try{C.resolve(e),console.log(`\u2705 ${e} is already installed.`)}catch{console.log(`\u{1F4E6} ${e} not found, installing ${t}...`),v(`npm install ${e}@${t}`,{stdio:"inherit"}),console.log(`\u2705 ${e} installed successfully.`),console.log("\u{1F501} Restarting script to load newly installed modules..."),v(`node "${j}"`,{stdio:"inherit"}),process.exit()}}P("vite",U());P("jsdom");var B=C.resolve("vite"),T=await import(R(B).href),{build:G}=T.build?T:T.default,V=f.COMPONENTS_PATH.split("/")[0]||f.COMPONENTS_PATH,Y=f.OUT_DIR.split("/")[0]||f.OUT_DIR,x=a.resolve("./"+V),b=a.resolve("./"+Y);g.mkdirSync(b,{recursive:!0});function J(e){let t="";for(;e>=0;)t=String.fromCharCode(e%26+65)+t,e=Math.floor(e/26)-1;return t}async function W(){await G({build:{minify:!0,rollupOptions:{input:a.join(x,"Main.js"),output:{dir:b,entryFileNames:"bundle.js",chunkFileNames:"chunks/chunk-[name]-[hash].js",assetFileNames:"assets/[name]-[hash][extname]"}}},plugins:[{name:"component-map-generator",generateBundle(e,t){let r={},n={},o=0;for(let i of Object.values(t))if(i.type==="chunk"){let s=J(o++);r[i.name]=s,n[s]=i.name}let c={...r,...n},p=`
2
+ import g from"fs";import y from"fs/promises";import a from"path";import{pathToFileURL as R,fileURLToPath as k}from"url";import{execSync as v}from"child_process";import{createRequire as $}from"module";var C=$(import.meta.url),j=k(import.meta.url),ae=a.dirname(j),I={COMPONENTS_PATH:"src/components",HTML_FOLDER_PATH:"src/html",OUT_DIR:"dist"},E=a.resolve(process.cwd(),"ssr.config.js"),M={};try{await g.promises.access(E);let e=await import(R(E).href);M=e.default||e}catch{console.warn("\u26A0\uFE0F No ssr.config.js found, using defaults")}var f={...I,...M};function U(){return parseInt(process.versions.node.split(".")[0],10)<20?"4":"latest"}function P(e,t="latest"){try{C.resolve(e),console.log(`\u2705 ${e} is already installed.`)}catch{console.log(`\u{1F4E6} ${e} not found, installing ${t}...`),v(`npm install ${e}@${t}`,{stdio:"inherit"}),console.log(`\u2705 ${e} installed successfully.`),console.log("\u{1F501} Restarting script to load newly installed modules..."),v(`node "${j}"`,{stdio:"inherit"}),process.exit()}}P("vite",U());P("jsdom");var B=C.resolve("vite"),T=await import(R(B).href),{build:G}=T.build?T:T.default,V=f.COMPONENTS_PATH.split("/")[0]||f.COMPONENTS_PATH,Y=f.OUT_DIR.split("/")[0]||f.OUT_DIR,x=a.resolve("./"+V),b=a.resolve("./"+Y);g.mkdirSync(b,{recursive:!0});function J(e){let t="";for(;e>=0;)t=String.fromCharCode(e%26+65)+t,e=Math.floor(e/26)-1;return t}async function W(){await G({build:{minify:!1,rollupOptions:{input:a.join(x,"Main.js"),output:{dir:b,entryFileNames:"bundle.js",chunkFileNames:"chunks/chunk-[name]-[hash].js",assetFileNames:"assets/[name]-[hash][extname]"}}},plugins:[{name:"component-map-generator",generateBundle(e,t){let r={},n={},o=0;for(let i of Object.values(t))if(i.type==="chunk"){let s=J(o++);r[i.name]=s,n[s]=i.name}let c={...r,...n},p=`
3
3
 
4
4
  // --- bidirectional component map ---
5
5
  const rvs_map_sigment = ${JSON.stringify(c,null,2)};
6
6
  export { rvs_map_sigment };
7
- `;g.writeFileSync(a.join(b,"component-map.json"),JSON.stringify(c,null,2));let l=Object.values(t).find(i=>i.type==="chunk"&&i.isEntry);l&&(l.code+=p),console.log("\u2705 forward map saved to component-map.json"),console.log("\u2705 bidirectional rvs_map_sigment embedded into bundle.js")}}]}),console.log("\u2705 Build completed! bundle.js + chunks are ready in dist/")}var{createServer:z}=await import("vite"),{JSDOM:O}=await import("jsdom"),A=f.HTML_FOLDER_PATH,D=f.COMPONENTS_PATH,L=f.OUT_DIR;async function F(e){let t=[];for(let r of await y.readdir(e,{withFileTypes:!0})){let n=a.join(e,r.name);r.isDirectory()?r.name!=="layouts"&&t.push(...await F(n)):r.isFile()&&r.name.endsWith(".html")&&t.push(n)}return t}function H(e,t={}){let r=g.readdirSync(e,{withFileTypes:!0});for(let n of r){let o=a.join(e,n.name);if(n.isDirectory())H(o,t);else if(n.isFile()&&n.name.endsWith(".js")){let p=a.basename(n.name,".js").toLowerCase();t[p]="/"+o.replace(/\\/g,"/")}}return t}var K=H(D);async function Q(e,t,r,n={}){globalThis.__CURRENT_COMPONENT__=t,globalThis.__SSR_SIGNAL_REGISTRY__||={},globalThis.__HANDLER_REGISTRY__||={};let o=K[t.toLowerCase()];if(!o)throw new Error(`Component "${t}" not found in ${D}`);let c=await e.ssrLoadModule(o),p=typeof c.default=="function"?await c.default.call(r.defaultView,n):`Missing render fn in ${t}`,l=r.createElement("div");l.innerHTML=p.trim();let i=null;for(let u of l.childNodes)if(u.nodeType===1){i=u;break}i&&i.setAttribute("data-component",t);let s=r.createDocumentFragment();for(;l.firstChild;)s.appendChild(l.firstChild);return s}async function X(e,t){globalThis.__SSR_SIGNAL_REGISTRY__={},globalThis.__HANDLER_REGISTRY__={},globalThis.__SSR_EVENT_MAP__={};let n=new O(await y.readFile(t,"utf-8")).window.document,o,c=n.querySelector("layout");if(c){let s=c.getAttribute("data-layout");if(!s)throw new Error(`No data-layout in ${t}`);let u=a.resolve(A,s),m=await y.readFile(u,"utf-8");o=new O(m).window.document,c.remove();let h=n.querySelector("description")?.getAttribute("data-description");h&&o.querySelector('meta[name="description"]')?.setAttribute("content",h);let N=n.querySelector("keywords")?.getAttribute("data-keywords");if(N&&o.querySelector('meta[name="keywords"]')?.setAttribute("content",N),n.querySelectorAll("[data-part]").forEach(d=>{let w=d.getAttribute("data-part"),S=o.querySelector(`[data-part="${w}"]`);if(S){S.innerHTML="";for(let q of d.childNodes)S.appendChild(o.importNode(q,!0))}}),n.querySelectorAll("script[type='module']").forEach(d=>{let w=d.getAttribute("src");w&&!o.querySelector(`script[src="${w}"]`)&&o.body.appendChild(d.cloneNode(!0))}),!o.querySelector(`script[type='module'][src="/bundle.js"]`)){let d=o.createElement("script");d.type="module",d.src="/bundle.js",o.body.appendChild(d)}}else o=n;let p=o.querySelectorAll("[data-component][runAtServer]");for(let s of p){let u=s.getAttribute("data-component"),m={};for(let h of s.attributes)h.name.startsWith("data-prop-")&&(m[h.name.slice(10)]=h.value);let _=await Q(e,u,o,m);s.replaceWith(_)}let l=a.join(L,"component-map.json"),i=JSON.parse(await y.readFile(l,"utf-8"));return o.querySelectorAll("[data-component]").forEach(s=>{let u=s.getAttribute("data-component"),m=Object.keys(i).find(_=>_.toLowerCase()===u.toLowerCase());m&&(console.log("componentMap",i[m]),s.setAttribute("data-component",i[m]))}),o.querySelectorAll("layout, description, keywords").forEach(s=>s.remove()),`<!DOCTYPE html>
7
+ `;g.writeFileSync(a.join(b,"component-map.json"),JSON.stringify(c,null,2));let l=Object.values(t).find(i=>i.type==="chunk"&&i.isEntry);l&&(l.code+=p),console.log("\u2705 forward map saved to component-map.json"),console.log("\u2705 bidirectional rvs_map_sigment embedded into bundle.js")}}]}),console.log("\u2705 Build completed! bundle.js + chunks are ready in dist/")}var{createServer:z}=await import("vite"),{JSDOM:O}=await import("jsdom"),A=f.HTML_FOLDER_PATH,D=f.COMPONENTS_PATH,L=f.OUT_DIR;async function F(e){let t=[];for(let r of await y.readdir(e,{withFileTypes:!0})){let n=a.join(e,r.name);r.isDirectory()?r.name!=="layouts"&&t.push(...await F(n)):r.isFile()&&r.name.endsWith(".html")&&t.push(n)}return t}function H(e,t={}){let r=g.readdirSync(e,{withFileTypes:!0});for(let n of r){let o=a.join(e,n.name);if(n.isDirectory())H(o,t);else if(n.isFile()&&n.name.endsWith(".js")){let p=a.basename(n.name,".js").toLowerCase();t[p]="/"+o.replace(/\\/g,"/")}}return t}var K=H(D);async function Q(e,t,r,n={}){globalThis.__CURRENT_COMPONENT__=t,globalThis.__SSR_SIGNAL_REGISTRY__||={},globalThis.__HANDLER_REGISTRY__||={};let o=K[t.toLowerCase()];if(!o)throw new Error(`Component "${t}" not found in ${D}`);let c=await e.ssrLoadModule(o),p=typeof c.default=="function"?await c.default.call(r.defaultView,n):`Missing render fn in ${t}`,l=r.createElement("div");l.innerHTML=p.trim();let i=null;for(let u of l.childNodes)if(u.nodeType===1){i=u;break}i&&i.setAttribute("data-component",t);let s=r.createDocumentFragment();for(;l.firstChild;)s.appendChild(l.firstChild);return s}async function X(e,t){globalThis.__SSR_SIGNAL_REGISTRY__={},globalThis.__HANDLER_REGISTRY__={},globalThis.__SSR_EVENT_MAP__={};let n=new O(await y.readFile(t,"utf-8")).window.document,o,c=n.querySelector("layout");if(c){let s=c.getAttribute("data-layout");if(!s)throw new Error(`No data-layout in ${t}`);let u=a.resolve(A,s),m=await y.readFile(u,"utf-8");o=new O(m).window.document,c.remove();let h=n.querySelector("description")?.getAttribute("data-description");h&&o.querySelector('meta[name="description"]')?.setAttribute("content",h);let N=n.querySelector("keywords")?.getAttribute("data-keywords");if(N&&o.querySelector('meta[name="keywords"]')?.setAttribute("content",N),n.querySelectorAll("[data-part]").forEach(d=>{let w=d.getAttribute("data-part"),S=o.querySelector(`[data-part="${w}"]`);if(S){S.innerHTML="";for(let q of d.childNodes)S.appendChild(o.importNode(q,!0))}}),n.querySelectorAll("script[type='module']").forEach(d=>{let w=d.getAttribute("src");w&&!o.querySelector(`script[src="${w}"]`)&&o.body.appendChild(d.cloneNode(!0))}),!o.querySelector(`script[type='module'][src="/bundle.js"]`)){let d=o.createElement("script");d.type="module",d.src="/bundle.js",o.body.appendChild(d)}}else o=n;let p=o.querySelectorAll("[data-component][runAtServer], [data-component][ssr]");for(let s of p){let u=s.getAttribute("data-component"),m={};for(let h of s.attributes)h.name.startsWith("data-prop-")&&(m[h.name.slice(10)]=h.value);let _=await Q(e,u,o,m);s.replaceWith(_)}let l=a.join(L,"component-map.json"),i=JSON.parse(await y.readFile(l,"utf-8"));return o.querySelectorAll("[data-component]").forEach(s=>{let u=s.getAttribute("data-component"),m=Object.keys(i).find(_=>_.toLowerCase()===u.toLowerCase());m&&(console.log("componentMap",i[m]),s.setAttribute("data-component",i[m]))}),o.querySelectorAll("layout, description, keywords").forEach(s=>s.remove()),`<!DOCTYPE html>
8
8
  `+o.documentElement.outerHTML}async function Z(){let e=await z({server:{middlewareMode:!0},root:process.cwd(),ssr:{noExternal:!0}}),t=await F(A);for(let r of t){let n=a.join(L,a.relative(A,r));await y.mkdir(a.dirname(n),{recursive:!0}),await y.writeFile(n,await X(e,r),"utf-8")}await e.close()}(async()=>{try{await W(),await Z().catch(e=>{console.error(e),process.exit(1)}),console.log("\u{1F389} All components built and HTML rendered successfully!")}catch(e){console.error("\u274C Build failed:",e),process.exit(1)}})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sigment",
3
- "version": "1.4.2",
3
+ "version": "1.4.4",
4
4
  "description": "A lightweight reactive JavaScript framework built with signals and vanilla JS — no virtual DOM, no JSX, no transpilation.",
5
5
  "main": "./dist/index.js",
6
6
  "repository": {