sigment 1.3.9 → 1.4.1

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/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
- var ye=Object.defineProperty;var a=(e,t)=>ye(e,"name",{value:t,configurable:!0});var w={cleanHtml:we,cleanhtml:!0,setMaxCacheSize:_e,maxCacheSize:10,setloadAtRunTime:D,loadAtRunTime:null,setRoute:Ae,route:null,setStopPropagation:Ce,stopPropagation:!1},C={funcname:[],dataMap:new Map},I=null,N={},U=new Map,S=new Map,B=new Map,P=new Map,ge=null,L=null,G=new Map,be=null,F="",x=typeof window>"u",q=0;x||(F=window.location.href.replace(/^https?:\/\//,"").replace(/\/$/,""));function Ie(){D({});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="/",D(t)}catch{D({})}}a(Ie,"initLoadAtRunTime");globalThis.__CURRENT_COMPONENT__=null;var M=0,ae=new Map;x&&(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)=>z(e,...t),Object.defineProperty(globalThis,e,{writable:!1,configurable:!1}))});var J=new Set(E.valueElements),te=new Set(E.srcElements),ne=new Set(E.hrefElements),K=new Set(E.voidElements);function qe(e,t){N[e]||(N[e]=de(t))}a(qe,"createGlobalSignal");function We(e){return N[e]}a(We,"getGlobalSignal");function oe(e,t){C.dataMap.has(e)&&C.dataMap.delete(e),C.dataMap.set(e,t)}a(oe,"addEntry");function H(e){j(H.name);let t=C.dataMap.get(e);if(t)if(typeof t.value.hydrate<"u"&&t.value.hydrate!==null){if(t.value.hydrate){let n=document.getElementById(e);return n||null}}else return t.value;else return null}a(H,"gve");function ze(e,t,n){let o;if(t instanceof HTMLElement?o=t.outerHTML:typeof t=="object"?o=JSON.stringify(t):o=t.toString(),o.length>4096){console.error("Cookie size exceeds 4KB limit. Data not stored.");return}document.cookie=e+"="+o+"; max-age="+n+" ; path=/ ;",setTimeout(()=>{document.cookie="testCookie=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/;"},n*1e3)}a(ze,"setCookie");function Ue(e){let n=`; ${document.cookie}`.split(`; ${e}=`);if(n.length===2){let o=n.pop().split(";").shift();try{let i=JSON.parse(o);return typeof i=="object"&&i!==null&&"nodeType"in i&&i.nodeType===1,i}catch{return o}}return null}a(Ue,"getCookie");function Ve(e,t){let n;t instanceof HTMLElement?n=t.outerHTML:typeof t=="object"?n=JSON.stringify(t):n=t.toString(),localStorage.setItem(e,n)}a(Ve,"setStorage");function Be(e){let t=localStorage.getItem(e);if(t!==null)try{let n=JSON.parse(t);return typeof n=="object"&&n!==null&&"nodeType"in n&&n.nodeType===1,n}catch{return t}}a(Be,"getStorage");function Y(e,t=void 0){j(Y.name),C.createInstance=Y.name;let n="";t===void 0?n=e():n=e(t)}a(Y,"createInstance");function re(e,t){j(re.name),C.rpc=re.name;let n={};for(let[o,i]of Object.entries(t))e[o]?n[o]=e[o].apply(null,i):(console.error(`Function ${o} not found!`),n[o]=null);return n}a(re,"rpc");function ie(e,t=!1,n){j(ie.name),C.gvec=ie.name;let o=Object.keys(e),i=o[0],s=o[1],c=o[2];var r=e[i];r=r.name;var m=e[s];let f=e[s];var u=H(s)===null;if(u||t===!1){var d=""+s;C.dataMap.delete(d),Y(m,e[c])}m=H(s);var y=H(i);if(y===null)throw new Error(` source id '${i} is not found in source component `);if(m===null)throw new Error(` target id '${s} is not found in target component `);if(y.replaceWith(m),n!==void 0)for(let l in f){let p=l.toString();if(typeof n=="object"){for(var h in n)if(p===h){var g=n[h];typeof g=="object"?f[l].apply(null,g):f[l].apply(null,[])}}else if(n.indexOf(",">-1)){let b=n.split(",");for(let O=0;O<b.length;O++)p===b[O]&&f[l].apply(null,[])}else p===n&&f[l].apply(null,[])}}a(ie,"gvec");async function Ge(e,t={}){let{passRestriction:n=[]}=t,o=window.location.pathname.replace(/^\/|\/$/g,"").toLowerCase(),i=e.replace(/^\/|\/$/g,"").toLowerCase();if(!new RegExp("^"+i.replace(/:[^\/]+/g,"[^/]+")+"$").test(o))return!1;let c=Array.isArray(n)?n:[n];for(let r of c)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}a(Ge,"Route");function Je(e){return e==null||e===""}a(Je,"IsEmpty");function Ee(e){let t=e.startsWith("/")?e:"/"+e;window.history.pushState({},"",t)}a(Ee,"Navigate");function _e(e){w.maxCacheSize=e}a(_e,"setMaxCacheSize");function we(e){w.cleanhtml=e}a(we,"cleanHtml");function Ae(e){w.route=e}a(Ae,"setRoute");function D(e){w.loadAtRunTime=e}a(D,"setloadAtRunTime");function Ce(e){w.stopPropagation=e}a(Ce,"setStopPropagation");async function Ke(e,t){let n;t==="/"?n=t:n=t.replace(/\//g,"").toLowerCase();let o=Object.keys(e).find(i=>i.toLowerCase()===n.toLowerCase());if(!o){let i=Object.keys(e).join(", ");throw new Error(`Unknown component: "${t}".
2
- Available components: ${i}
1
+ var ye=Object.defineProperty;var a=(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},W=null,O={},z=new Map,v=new Map,I=new Map,L=new Map,ge=null,P=null,G=new Map;var D="",S=typeof window>"u",V=0;S||(D=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={}}}a(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 _={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(_).flat().forEach(e=>{globalThis[e]||(globalThis[e]=(...t)=>U(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 ze(e,t){O[e]||(O[e]=pe(t))}a(ze,"createGlobalSignal");function Be(e){return O[e]}a(Be,"getGlobalSignal");function oe(e,t){A.dataMap.has(e)&&A.dataMap.delete(e),A.dataMap.set(e,t)}a(oe,"addEntry");var j={destroy:a(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:a(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 c=n.ids[o];n.ids[o]=n.ids[e],n.ids[e]=c,this._idx=e,s._idx=o;let r=this.parentNode,d=s.nextSibling,u=this.nextSibling;return d===this?r.insertBefore(this,s):(r.insertBefore(s,u),r.insertBefore(this,d)),this},"swapWith"),updateVal:a(function(e,t){return this._nodes&&this._nodes[e]&&(this._nodes[e].nodeValue=t),this},"updateVal"),addVal:a(function(e,t){let n=this._nodes[e];return n&&n.appendData(t),this},"addVal"),clear:a(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=a((e,t,n)=>{if(e.destroy)return e;let o=n||A.dataMap;return e.iid=e.iid||(t==null?void 0:t.id)||e.id,e._map=o,e.destroy=j.destroy,e.swapWith=j.swapWith,e.updateVal=j.updateVal,e.addVal=j.addVal,o.get(e.iid)&&(e.clear=j.clear,e.get=i=>{let c=o.get(e.iid);if(!c||!c.elements)return null;let r=null;if(typeof i=="number")r=c.elements[i];else{let d=c.ids.indexOf(i);d!==-1&&(r=c.elements[d])}return r?H(r):null}),e},"upgradeElement");function H(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}a(H,"gve");var Ee=a((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"),_e=a(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=a(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:_e(i)})}o=n.nextNode()}return{blueprint:e,bindings:t}},"createTemplate"),Ge=a((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:c,bindings:r}=t,d=r.length,u=0,f=a(()=>{let p=document.createDocumentFragment(),y=Math.min(u+o,e.length);for(;u<y;u++){let h=e[u];if(!h)continue;let g=h[0],l=c.cloneNode(!0);l.iid=g,l._idx=u;let m=new Array(d);for(let b=0;b<d;b++){let x=r[b],E=x.fastGet(l);E&&(E.nodeValue=h[x.dataIndex],m[b]=E)}l._nodes=m,i.elements[u]=l,i.nodes[u]=m,i.ids[u]=g,p.appendChild(l)}i.value.appendChild(p),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)}a(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}a(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],c=o[2];var r=e[s];r=r.name;var d=e[i];let u=e[i];var f=H(i)===null;if(f||t===!1){var p=""+i;A.dataMap.delete(p),J(d,e[c])}d=H(i);var y=H(s);if(y===null)throw new Error(` source id '${s} is not found in source component `);if(d===null)throw new Error(` target id '${i} is not found in target component `);if(y.replaceWith(d),n!==void 0)for(let l in u){let m=l.toString();if(typeof n=="object"){for(var h in n)if(m===h){var g=n[h];typeof g=="object"?u[l].apply(null,g):u[l].apply(null,[])}}else if(n.indexOf(",">-1)){let b=n.split(",");for(let x=0;x<b.length;x++)m===b[x]&&u[l].apply(null,[])}else m===n&&u[l].apply(null,[])}}a(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 c=Array.isArray(n)?n:[n];for(let r of c)try{let d=typeof r=="function"?r():r;if(d instanceof Promise){if(!await d)return!1}else if(!d)return!1}catch(d){return console.error("Route check failed:",d),!1}return!0}a(Ke,"Route");function Ye(e){return e==null||e===""}a(Ye,"IsEmpty");function we(e){let t=e.startsWith("/")?e:"/"+e;window.history.pushState({},"",t)}a(we,"Navigate");function Ae(e){w.maxCacheSize=e}a(Ae,"setMaxCacheSize");function Ce(e){w.cleanhtml=e}a(Ce,"cleanHtml");function xe(e){w.route=e}a(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")}a(Se,"setloadAtRunTime");function Te(e){w.stopPropagation=e}a(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}".
2
+ Available components: ${s}
3
3
 
4
4
  To add this component:
5
5
 
6
6
  const loadAsyncComponents = {
7
7
  ...existingComponents,
8
8
  "${t}": () => import('./${t}.js')
9
- };`)}if(S.has(o))return S.get(o);try{let s=(await e[o]()).default;return S.set(o,s),s}catch(i){throw new Error(`Failed to load component "${o}": ${i.message}`)}}a(Ke,"loadFunc");function Se(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 i=o.closest("[data-part]");if(t=i==null?void 0:i.getAttribute("data-part"),i){let s=o.getAttribute("data-component");s&&i.querySelectorAll(`[data-component="${s}"]`).forEach((r,m)=>{r===o&&(n=m)})}}return{partName:t,index:n}}a(Se,"getTargetPartAndIndex");async function Ye(e,t,n,o,i=null){if(x)return;let s=null,{partName:c,index:r}=Se(i);c&&(s=c);let m=window.location.host+"/"+e;if(s===null){if(F===m)return;F=m}let f;typeof t=="boolean"||typeof t=="string"?(n=t,t=w.route):t===void 0&&(t=w.route,n=!1),Ee(e);let{componentKey:u,params:d}=ce(t);(u===void 0||u==="")&&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")u=n,f=!!o;else if(typeof n=="boolean"){if(y.length===1)u=y[0];else if(y.includes(u))u=u;else throw new Error(`Ambiguous component map: multiple components exist and no matching key for path '${e}' found. Provide component key explicitly.`);f=n}else{if(y.length===1)u=y[0];else if(y.includes(u))u=u;else throw new Error(`Ambiguous component map: multiple components exist and no matching key for path '${e}' found. Provide component key explicitly.`);f=!1}let h=await xe(t,u,d,null,!1);s&&(e=e+s+r);let g=G.get(e);if((!g||!f)&&(typeof h=="function"?(M=ae.get(h.name),q=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 l=L.contains(g);l||L.replaceWith(g)}else{typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null&&(u=W(rvs_map_sigment,u));let p=document.querySelectorAll('[data-part="'+s+'"] [data-component="'+u+'"]');g.setAttribute("data-component",u),p&&p.length===1?p[0].replaceWith(g):p&&p.length>1?p[r].replaceWith(g):document.body.replaceChildren(g)}s===null&&(L=g,ge=e),F=m}a(Ye,"NavigateTo");function Ze(e=be,t){let n=typeof e=="string"?document.getElementById(e):e;n.contains(t)||n.replaceChildren(t)}a(Ze,"updateNodeIfNeeded");function Xe(e){if(e){let t=e.toLowerCase(),n=!1;for(let o of S.keys())o.toLowerCase()===t&&(S.delete(o),n=!0);return n}else return S.clear(),!0}a(Xe,"clearComponentCache");function ce(e){if(x)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={},i=null,s=null,c=0;function r(u){return u.length>1&&u.endsWith("/")&&(u=u.slice(0,-1)),u.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}})}a(r,"parseRouteSegments");for(let[u,d]of Object.entries(e)){let y=d.path||`/${u}`,h=r(y),g=!0;for(let l=0;l<h.length;l++){let p=h[l],b=n[l];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 l=n.length;l<h.length;l++)if(!h[l].isOptional){g=!1;break}}if(g){i=u,s=d,c=h.length,h.forEach((l,p)=>{if(l.isParam){let b=n[p];b!==void 0&&b!==""&&(o[l.name]=b)}});break}}i||(i="",s=e[i]),s!=null&&s.urlParam&&s.urlParam.split("/").map(d=>d.replace(/[{}]/g,"")).forEach((d,y)=>{let h=n[c+y];h!==void 0&&h!==""&&(o[d]=h)}),new URL(window.location.href).searchParams.forEach((u,d)=>{o[d]=u});let f=i;return s!=null&&s.loader&&(Object.defineProperty(o,"_componentNamePromise",{value:s.loader().then(u=>{let d=u.default||Object.values(u)[0];return typeof d=="function"&&d.name?d.name:i})}),Object.defineProperty(o,"componentName",{get(){return f}})),{componentKey:i,componentName:f,params:o}}a(ce,"parsePath");function R(e){return new DOMParser().parseFromString(e,"text/html").body.firstChild}a(R,"parseHTML");async function xe(e,t,n=null,o=null,i=!0){if(x)return;let s=e[t.toLowerCase()];if(s||(typeof e.fallback=="string"?s=e[e.fallback]:s=e.fallback),!s)return R("<h1>404 - Component not found</h1>");let{loader:c,guard:r,cacheExpiration:m=null,...f}=s;if(o===null&&typeof s.logic=="function"&&(o=s.logic),typeof r=="function"&&!await r(n))return R("<h1>403 - Forbidden</h1><p>You do not have access to this page.</p>");for(let u in f){let d=f[u];if(typeof d=="function")try{await d()}catch(y){console.error(y)}}try{let u=Date.now(),d=S.get(t);d&&m!==null&&u-d.cachedAt>m&&(S.delete(t),d=null);let y;if(d)y=d.component,S.set(t,{component:y,cachedAt:u});else{if(y=(await c()).default,S.size>=w.maxCacheSize){let p=S.keys().next().value;S.delete(p)}S.set(t,{component:y,cachedAt:u})}if(typeof y!="function")return R("<h1>Invalid component</h1>");if(!i)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(u){return console.error(u),R("<h1>Error loading component</h1>")}}a(xe,"loadRunFunc");function Z(e=""){var i,s;if(x)return"";j(Z.name),C.buildRoadMap=Z.name;var t="";let n=(i=new Error().stack)==null?void 0:i.toString();navigator.userAgent.toLowerCase().indexOf("firefox")>0?n=n.split("@"):n=n.split(`
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}`)}}a(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,d)=>{r===o&&(n=d)})}}return{partName:t,index:n}}a(ke,"getTargetPartAndIndex");async function Ze(e,t,n,o,s=null){if(S)return;let i=null,{partName:c,index:r}=ke(s);c&&(i=c);let d=window.location.host+"/"+e;if(i===null){if(D===d)return;D=d}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:p}=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,p,null,!1);i&&(e=e+i+r);let g=G.get(e);if((!g||!u)&&(typeof h=="function"?(M=ce.get(h.name),V=0,Array.isArray(p)?g=h(...p):typeof p=="object"&&p!==null?g=h(p):g=h(),G.set(e,g)):g=h),P&&P.isConnected){var l=P.contains(g);l||P.replaceWith(g)}else{typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null&&(f=q(rvs_map_sigment,f));let m=document.querySelectorAll('[data-part="'+i+'"] [data-component="'+f+'"]');g.setAttribute("data-component",f),m&&m.length===1?m[0].replaceWith(g):m&&m.length>1?m[r].replaceWith(g):document.body.replaceChildren(g)}i===null&&(P=g,ge=e),D=d}a(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,c=0;function r(f){return f.length>1&&f.endsWith("/")&&(f=f.slice(0,-1)),f.replace(/^\//,"").split("/").map(p=>{let y=p.startsWith(":"),h=y&&p.endsWith("?"),g=y?p.slice(1).replace("?",""):p;return g===""&&(g="/"),{isParam:y,isOptional:h,name:g}})}a(r,"parseRouteSegments");for(let[f,p]of Object.entries(e)){let y=p.path||`/${f}`,h=r(y),g=!0;for(let l=0;l<h.length;l++){let m=h[l],b=n[l];if(m.isParam){if(!b&&!m.isOptional){g=!1;break}}else if(m.name!==b){g=!1;break}}if(n.length<h.length){for(let l=n.length;l<h.length;l++)if(!h[l].isOptional){g=!1;break}}if(g){s=f,i=p,c=h.length,h.forEach((l,m)=>{if(l.isParam){let b=n[m];b!==void 0&&b!==""&&(o[l.name]=b)}});break}}s||(s="",i=e[s]),i!=null&&i.urlParam&&i.urlParam.split("/").map(p=>p.replace(/[{}]/g,"")).forEach((p,y)=>{let h=n[c+y];h!==void 0&&h!==""&&(o[p]=h)}),new URL(window.location.href).searchParams.forEach((f,p)=>{o[p]=f});let u=s;return i!=null&&i.loader&&(Object.defineProperty(o,"_componentNamePromise",{value:i.loader().then(f=>{let p=f.default||Object.values(f)[0];return typeof p=="function"&&p.name?p.name:s})}),Object.defineProperty(o,"componentName",{get(){return u}})),{componentKey:s,componentName:u,params:o}}a(ue,"parsePath");function F(e){return new DOMParser().parseFromString(e,"text/html").body.firstChild}a(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:c,guard:r,cacheExpiration:d=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 p=u[f];if(typeof p=="function")try{await p()}catch(y){console.error(y)}}try{let f=Date.now(),p=v.get(t);p&&d!==null&&f-p.cachedAt>d&&(v.delete(t),p=null);let y;if(p)y=p.component,v.set(t,{component:y,cachedAt:f});else{if(y=(await c()).default,v.size>=w.maxCacheSize){let m=v.keys().next().value;v.delete(m)}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),P=h,h}catch(f){return console.error(f),F("<h1>Error loading component</h1>")}}a(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(`
10
10
  `);for(let c=0;c<n.length;c++){var o="";if(navigator.userAgent.indexOf("Firefox")>0){let r=n[c].lastIndexOf(`
11
- `);if(r===-1)continue;o=n[c].slice(r+1),o===""?(r=n[c].lastIndexOf("/")+1,r>-1&&(o=n[c].substr(r),o=o.substr(0,o.indexOf(".")))):o.indexOf("/")>-1&&(o=o.substr(0,o.indexOf("/")))}else o=(s=n[c])==null?void 0:s.trim().split(" ")[1];if(!C.funcname.includes(o)&&!(o===void 0||o==="")&&!(o.indexOf("http://")>-1||o.indexOf("https://")>-1)){if(C.gvec!==void 0&&o.indexOf(C.gvec)>-1)break;t.indexOf("|"+o)>-1||(t+="|"+o.replace(".","|"))}}return e+t}a(Z,"buildRoadMap");function j(e){!C.funcname.includes(e)&&C.funcname.push(e)}a(j,"setFuncName");function ue(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,i=new Set;function s(){return I&&i.add(I),o}a(s,"get"),s.__isSignal=!0,s.__isPrimitiveSignal=!0;function c(m,f=!1){(f||o!==m)&&(o=m,i.forEach(u=>u()))}return a(c,"set"),[new Proxy(s,{get(m,f){if(f==="valueOf")return()=>o;if(f==="toString")return()=>String(o);if(f in m)return m[f]}}),c]}a(ue,"createSignal");function Te(e){return typeof e=="object"&&e!==null}a(Te,"isObject");function Qe(e){return de(e)[0]}a(Qe,"store");function fe(e){let t=e,n=new Map,o=a(r=>Te(r)?fe(r)[0]:r,"wrap"),i=a(r=>{if(!n.has(r)){let[m,f]=ue(o(t[r])),u=new Proxy(m,{get(d,y){return y==="valueOf"?()=>m():y==="toString"?()=>String(m()):d[y]}});n.set(r,[u,f])}return n.get(r)},"getSignal"),s=new Proxy(t,{get(r,m){if(typeof m=="symbol")return t[m];let[f]=i(m);return f()},set(r,m,f){t[m]=f;let[,u]=i(m);return u(o(f)),!0}});function c(r){let m=typeof r=="function"?r(s):r;for(let f in m)s[f]=m[f]}return a(c,"setState"),[s,c]}a(fe,"signalObject");function de(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?fe(e):ue(e)}a(de,"signal");function X(e){function t(){I=t,e(),I=null}a(t,"wrapped"),t()}a(X,"createEffect");function ke(e){e=e.toLowerCase(),E.innerHTMLElements.includes(e)||(E.innerHTMLElements.push(e),globalThis[e]=(...t)=>z(e,...t))}a(ke,"createTypeElement");function pe(e){return e.replace(/-+/g,"-").replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}a(pe,"dashToCamel");function et(e,t=null){me(e,t)}a(et,"createSigment");function tt(e,t=null){me(e,t)}a(tt,"addSigment");function nt(e,...t){if(ke(e),t.length!==0)return globalThis[e](...t)}a(nt,"createElement");function ve(e){let t=document.createTextNode("");return X(()=>{if(typeof N!="object"||N===null){t.nodeValue=e;return}let n=e.replace(/{{(.*?)}}/g,(o,i)=>{let s=i.trim();if(N.hasOwnProperty(s)){let c=N[s];if(c&&typeof c[0]=="function")return c[0]()??""}return""});t.nodeValue=n}),t}a(ve,"interpolateReactiveText");function ot(e,t=5e3,n={}){let o=JSON.stringify([e,n,t]);if(!U.has(o)){let i=Ne(async()=>{let s=await fetch(e,n);if(!s.ok)throw new Error(`Fetch failed: ${s.status}`);return s.json()},t);U.set(o,i)}return U.get(o)()}a(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}a(Q,"sortObjectDeep");function Oe(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}a(Oe,"sortObjectShallow");function Ne(e,t=null,n={}){let o=new Map,i=a((...s)=>{let{deepSort:c}=n,r;c===!0?r=s.map(h=>h&&typeof h=="object"?Q(h):h):c===!1?r=s.map(h=>h&&typeof h=="object"?Oe(h):h):r=s;let m=JSON.stringify(r),f=Date.now();m.length===2&&(m=e.name);let d=o.get(m);if(d&&(t===null||f-d.timestamp<t))return d.value;let y=e(...s);return o.set(m,{value:y,timestamp:f}),y instanceof Promise&&y.catch(()=>o.delete(m)),y},"wrapped");return i.clear=()=>o.clear(),i}a(Ne,"memoizeFunc");function V(e){let t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};return e.replace(/[&<>"']/g,n=>t[n])}a(V,"escapeHtml");function Le(e){let t="";function n(o,i=0){let s=" ".repeat(i);if(o==null||o===!1||o===!0)return;if(Array.isArray(o)){o.forEach(r=>n(r,i+1));return}let c=o;typeof c=="function"&&(c=c()),typeof c=="function"&&c.__isSignal&&(c=c()),!(c==null||c===!1||c===!0)&&(t+=String(c))}return a(n,"process"),e.forEach(o=>n(o)),t}a(Le,"renderChildren");function Pe(e){let t=[];for(let n=0;n<e.length;n++){let o=e[n],i=e[n+1];typeof o=="string"&&typeof i=="function"?(t.push(()=>o+i()),n++):t.push(o)}return t}a(Pe,"normalizeChildren");function z(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)&&(x||!(t[0]instanceof Node))?(n=t[0],o=t.slice(1)):o=t,x&&typeof document>"u"){let l=globalThis.__CURRENT_COMPONENT__;globalThis.__HANDLER_REGISTRY__||(globalThis.__HANDLER_REGISTRY__={}),(g=globalThis.__HANDLER_REGISTRY__)[l]||(g[l]=[]);let p=[];for(let[v,k]of Object.entries(n))if(v==="style"&&typeof k=="object"){let $=Object.entries(k).map(([A,he])=>`${A.replace(/([A-Z])/g,"-$1").toLowerCase()}:${he}`).join(";");p.push(` style="${V($)}"`)}else v!=="className"&&v!=="class"&&!v.startsWith("on")&&p.push(` ${v}="${V(String(k))}"`);(n.className||n.class)&&p.push(` class="${V(n.className||n.class)}"`);let b=Le(o);if(["input","img","br","hr","meta","link"].includes(e))return`<${e}${p.join("")} />`;if(e==="fragment")return b;var i;let _=B.get(e);return _&&(i=_.tagName,_.nativeTag!==null&&(i=_.nativeTag)),i!==void 0&&(e=i),`<${e}${p.join("")}>${b}</${e}>`}j(z.name);var s="";s=Z();var c=s.split("|");if(c.includes(C.rpc))return;let r=null,m=e.toLowerCase()==="fragment";if(m)r=document.createDocumentFragment();else{var i;let p=B.get(e);p&&(i=p.tagName,p.nativeTag!==null&&(i=p.nativeTag)),i!==void 0&&(e=i),r=document.createElement(e)}if(globalThis.__CURRENT_COMPONENT__){q++;let l=q;r.dataIndex=l,r.realtedComponent=globalThis.__CURRENT_COMPONENT__,r.cmpNbr=M}let f=[];for(let[l,p]of Object.entries(n))if(l.startsWith("on")&&typeof p=="function"){let b=l.slice(2).toLowerCase();f.push({type:b,val:p})}f.length&&(r._handlers=f);let u=K.has(e),d=J.has(pe(e)),y=e==="input"||e==="option",h=e==="option";if(!m)for(let l in n){let p=n[l];if(l.startsWith("on")&&typeof p=="function"){let b=l.slice(2).toLowerCase();r.addEventListener(b,O=>{w.stopPropagation&&O.stopPropagation(),p(O)})}else typeof p=="function"&&l!=="children"?X(()=>{let b=p();b==null||b===!1?(r.removeAttribute(l),l==="value"&&d&&(r.value="",w.cleanhtml||r.removeAttribute("value")),l==="checked"&&y&&(r.checked=!1,w.cleanhtml||r.removeAttribute("checked")),l==="selected"&&h&&(r.selected=!1,w.cleanhtml||r.removeAttribute("selected")),l==="id"&&(r.iid="",w.cleanhtml||r.removeAttribute("id"))):l==="id"?(r.iid=b,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",b),oe(b,{name:b,caller:b+s,value:r})):l==="value"&&d?(r.value=b,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",b)):l==="checked"&&y?(r.checked=b,w.cleanhtml?r.removeAttribute("checked"):b?r.setAttribute("checked",""):r.removeAttribute("checked")):l==="selected"&&h?(r.selected=b,w.cleanhtml?r.removeAttribute("selected"):b?r.setAttribute("selected",""):r.removeAttribute("selected")):r.setAttribute(l,b)}):p!=null&&p!==!1&&(l==="id"?(r.iid=p,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",p),oe(p,{name:p,caller:p+s,value:r})):l==="value"&&d?(r.value=p,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",p)):l==="checked"&&y?(r.checked=p,w.cleanhtml?r.removeAttribute("checked"):r.setAttribute("checked","")):l==="selected"&&h?(r.selected=p,w.cleanhtml?r.removeAttribute("selected"):r.setAttribute("selected","")):r.setAttribute(l,p))}return u?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=Pe(o),o.flat().forEach((l,p)=>{if(l&&l.__isSignal&&l.__isPrimitiveSignal&&!l.__isWrapped){let b=l;b.__isWrapped=!0,l=a(()=>b(),"child")}if(typeof l=="function"){let b=l(),_=b===!1||b===null||b===!0?document.createComment(""):document.createTextNode("");r.appendChild(_),X(()=>{let T=l();if(Array.isArray(T)){let k=_.parentNode;if(!k)return;_._insertedNodes&&(_._insertedNodes.forEach(A=>A.remove()),_._insertedNodes=null);let $=T.flat().filter(Boolean).map(A=>A instanceof Node?A:typeof A=="string"||typeof A=="number"?document.createTextNode(String(A)):typeof A=="object"?A.__isNode?A:div(A.name??JSON.stringify(A)):null).filter(Boolean);$.forEach(A=>k.insertBefore(A,_)),_._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 v=T==null||T===!1||T===!0?"":String(T);if(_._insertedNode&&(_._insertedNode._boundNode&&_._insertedNode._boundNode.remove(),_._insertedNode.remove(),_._insertedNode=null),_.nodeValue!==v){if(!_.parentNode)return;_!=null&&_._boundNode?_._boundNode.nodeValue=v:_.nodeValue=v}})}else if(typeof l=="string"&&l.includes("{{")&&!l.includes("function"))r.appendChild(ve(l));else if(typeof l=="string"||typeof l=="number"){if(typeof l=="string"&&(l.includes("function get(")||l.includes("function (")||l.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(l))}else(l instanceof DocumentFragment||l instanceof Node)&&r.appendChild(l)})),r}a(z,"h");function je(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/-+/g,"-").toLowerCase()}a(je,"camelToDash");function me(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)?je(e):e.toLowerCase();o.includes("-")||(o="s-"+o),e.includes("-")&&(o=e,e=pe(e)),B.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),J.add(e)):!E.valueElements.includes(e)&&t!==null&&(E.valueElements.includes(t)||(E.valueElements.push(e),J.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),K.add(e)):!E.voidElements.includes(e)&&t!==null&&(E.voidElements.includes(t)||(E.voidElements.push(e),K.add(e))),globalThis[e]=(...i)=>z(e,...i)}a(me,"defineElement");function Me(e){x||requestAnimationFrame(()=>{requestAnimationFrame(e)})}a(Me,"onPaint");function rt(e){if(x)return;let t=!1;Me(()=>{t||(t=!0,e())})}a(rt,"paintFinish");function se(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}a(se,"getPropsFromDataAttributes");async function $e(){let e=document.querySelector("layout[data-layout]");if(!e)return!1;let t=e.getAttribute("data-layout");if(!t)return!1;try{x||(t="/"+t);let n=await fetch(t);if(!n.ok)throw new Error("Failed to load layout");let o=await n.text(),s=new DOMParser().parseFromString(o,"text/html"),c=document.querySelector("description[data-description]");if(c){let f=s.querySelector('meta[name="description"]');f||(f=s.createElement("meta"),f.name="description",s.head.appendChild(f)),f.content=c.getAttribute("data-description")}let r=document.querySelector("keywords[data-keywords]");if(r){let f=s.querySelector('meta[name="keywords"]');f||(f=s.createElement("meta"),f.name="keywords",s.head.appendChild(f)),f.content=r.getAttribute("data-keywords")}return document.querySelectorAll("[data-part]").forEach(f=>{let u=f.getAttribute("data-part"),d=s.querySelector(`[data-part="${u}"]`);d&&(d.innerHTML="",[...f.childNodes].forEach(y=>{d.appendChild(y.cloneNode(!0))}))}),document.documentElement.innerHTML=s.documentElement.innerHTML,!0}catch(n){return console.error("Failed to inject layout:",n),!1}}a($e,"injectLayout");function W(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 i=n.toUpperCase();if(e[i])return e[i];let s=n.toLowerCase(),c=Object.entries(e).find(([r,m])=>r.toLowerCase()===s);if(c)return c[1]}a(W,"lookupComponent");async function Re(e,t){let n=t.trim();for(let[o,i]of Object.entries(e))if(i.loader)try{let s=await i.loader(),c=s.default||Object.values(s)[0];if(typeof c=="function"&&c.name===n)return i._componentName=c.name,i}catch(s){console.warn(`Failed to load route "${o}":`,s);continue}}a(Re,"findRouteByComponentName");async function le(e){var f;let t=e||w.route;await $e();let{componentKey:n,componentNme:o,params:i}=ce(t),s=new Set,c=await i._componentNamePromise,r=n,m=document.querySelectorAll("[data-component]");for(let u of m){let d=u.getAttribute("data-component"),y=d==null?void 0:d.toLowerCase();if(typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null?r=W(rvs_map_sigment,d):r=y,!r||s.has(r))continue;let h=W(t,r);h===void 0&&(h=await Re(t,r));try{u.hasChildNodes()&&(globalThis.__CURRENT_COMPONENT__=d);let g=h?await Fe(h):await He(w.loadAtRunTime,r),l=h?{...i,...se(u)}:se(u),p=g.default(l);p.funcName=c.toLowerCase();let b=(f=u.closest("[data-part]"))==null?void 0:f.getAttribute("data-part");p.datapart=b,p.setAttribute("data-component",d),p.hydrate=!0,u.cmpNbr=M,ee(u,p),ae.set(r,M),M++,q=0}catch(g){console.warn(`Component "${y}" failed to load`,g)}}}a(le,"hydrateComponent");async function Fe(e){if(!P.has(e)){let t=await e.loader();P.set(e,t)}return P.get(e)}a(Fe,"loadModule");async function He(e,t){let n=W(e,t);if(n){if(P.has(n))return P.get(n);try{let o=await n();return P.set(n,o),o}catch(o){console.error(`Component "${t}" failed to load`,o)}}}a(He,"loadModuleFromFile");function it(e,t){if(e===void 0){le();return}if(typeof e=="object"&&t===void 0){le(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)}a(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 i of Array.from(t.attributes))e.setAttribute(i.name,i.value);for(let i of Array.from(e.attributes))t.hasAttribute(i.name)||e.removeAttribute(i.name);t._handlers&&t._handlers.forEach(({type:i,val:s})=>{e.addEventListener(i,c=>{w.stopPropagation&&c.stopPropagation(),s(c)})})}let n=Array.from(t.childNodes),o=Array.from(e.childNodes);for(let i=0;i<Math.max(n.length,o.length);i++){let s=o[i],c=n[i];s&&c?ee(s,c):c?e.appendChild(c):s&&e.removeChild(s)}}catch(n){console.error("Hydration failed:",n)}})()}a(ee,"hydrate");export{Je as IsEmpty,w as MyApp,Ee as Navigate,Ye as NavigateTo,Ge as Route,tt as addSigment,Xe as clearComponentCache,X as createEffect,nt as createElement,qe as createGlobalSignal,et as createSigment,ue as createSignal,ot as fetchCache,Ue as getCookie,We as getGlobalSignal,Be as getStorage,H as getVirtualElementById,qe as globalSignal,H as gve,ie as gvec,z as h,le as hydrateComponent,Ie as initLoadAtRunTime,Ke as loadFunc,xe as loadRunFunc,Ne as memoizeFunc,it as mount,Me as onPaint,rt as paintFinish,ce as parsePath,re as rpc,ze as setCookie,Ve as setStorage,de as sig,de as signal,Qe as store,Ze as updateNodeIfNeeded,We as useGlobalSignal};
11
+ `);if(r===-1)continue;o=n[c].slice(r+1),o===""?(r=n[c].lastIndexOf("/")+1,r>-1&&(o=n[c].substr(r),o=o.substr(0,o.indexOf(".")))):o.indexOf("/")>-1&&(o=o.substr(0,o.indexOf("/")))}else o=(i=n[c])==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}a(Z,"buildRoadMap");function R(e){!A.funcname.includes(e)&&A.funcname.push(e)}a(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 W&&s.add(W),o}a(i,"get"),i.__isSignal=!0,i.__isPrimitiveSignal=!0;function c(d,u=!1){(u||o!==d)&&(o=d,s.forEach(f=>f()))}return a(c,"set"),[new Proxy(i,{get(d,u){if(u==="valueOf")return()=>o;if(u==="toString")return()=>String(o);if(u in d)return d[u]}}),c]}a(fe,"createSignal");function Ne(e){return typeof e=="object"&&e!==null}a(Ne,"isObject");function Xe(e){return pe(e)[0]}a(Xe,"store");function de(e){let t=e,n=new Map,o=a(r=>Ne(r)?de(r)[0]:r,"wrap"),s=a(r=>{if(!n.has(r)){let[d,u]=fe(o(t[r])),f=new Proxy(d,{get(p,y){return y==="valueOf"?()=>d():y==="toString"?()=>String(d()):p[y]}});n.set(r,[f,u])}return n.get(r)},"getSignal"),i=new Proxy(t,{get(r,d){if(typeof d=="symbol")return t[d];let[u]=s(d);return u()},set(r,d,u){t[d]=u;let[,f]=s(d);return f(o(u)),!0}});function c(r){let d=typeof r=="function"?r(i):r;for(let u in d)i[u]=d[u]}return a(c,"setState"),[i,c]}a(de,"signalObject");function pe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?de(e):fe(e)}a(pe,"signal");function X(e){function t(){W=t,e(),W=null}a(t,"wrapped"),t()}a(X,"createEffect");function Oe(e){e=e.toLowerCase(),_.innerHTMLElements.includes(e)||(_.innerHTMLElements.push(e),globalThis[e]=(...t)=>U(e,...t))}a(Oe,"createTypeElement");function me(e){return e.replace(/-+/g,"-").replace(/-([a-z])/g,(t,n)=>n.toUpperCase())}a(me,"dashToCamel");function Qe(e,t=null){Fe(e,t)}a(Qe,"addSigment");function et(e,...t){if(Oe(e),t.length!==0)return globalThis[e](...t)}a(et,"createElement");function Pe(e){let t=document.createTextNode("");return X(()=>{if(typeof O!="object"||O===null){t.nodeValue=e;return}let n=e.replace(/{{(.*?)}}/g,(o,s)=>{let i=s.trim();if(O.hasOwnProperty(i)){let c=O[i];if(c&&typeof c[0]=="function")return c[0]()??""}return""});t.nodeValue=n}),t}a(Pe,"interpolateReactiveText");function tt(e,t=5e3,n={}){let o=JSON.stringify([e,n,t]);if(!z.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);z.set(o,s)}return z.get(o)()}a(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}a(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}a(Le,"sortObjectShallow");function je(e,t=null,n={}){let o=new Map,s=a((...i)=>{let{deepSort:c}=n,r;c===!0?r=i.map(h=>h&&typeof h=="object"?Q(h):h):c===!1?r=i.map(h=>h&&typeof h=="object"?Le(h):h):r=i;let d=JSON.stringify(r),u=Date.now();d.length===2&&(d=e.name);let p=o.get(d);if(p&&(t===null||u-p.timestamp<t))return p.value;let y=e(...i);return o.set(d,{value:y,timestamp:u}),y instanceof Promise&&y.catch(()=>o.delete(d)),y},"wrapped");return s.clear=()=>o.clear(),s}a(je,"memoizeFunc");function B(e){let t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};return e.replace(/[&<>"']/g,n=>t[n])}a(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 c=o;typeof c=="function"&&(c=c()),typeof c=="function"&&c.__isSignal&&(c=c()),!(c==null||c===!1||c===!0)&&(t+=String(c))}return a(n,"process"),e.forEach(o=>n(o)),t}a(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}a(Re,"normalizeChildren");function U(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 l=globalThis.__CURRENT_COMPONENT__;globalThis.__HANDLER_REGISTRY__||(globalThis.__HANDLER_REGISTRY__={}),(g=globalThis.__HANDLER_REGISTRY__)[l]||(g[l]=[]);let m=[];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(";");m.push(` style="${B($)}"`)}else N!=="className"&&N!=="class"&&!N.startsWith("on")&&m.push(` ${N}="${B(String(k))}"`);(n.className||n.class)&&m.push(` class="${B(n.className||n.class)}"`);let b=Me(o);if(["input","img","br","hr","meta","link"].includes(e))return`<${e}${m.join("")} />`;if(e==="fragment")return b;var s;let E=I.get(e);return E&&(s=E.tagName,E.nativeTag!==null&&(s=E.nativeTag)),s!==void 0&&(e=s),`<${e}${m.join("")}>${b}</${e}>`}R(U.name);var i="";i=Z();var c=i.split("|");if(c.includes(A.rpc))return;let r=null,d=e.toLowerCase()==="fragment";if(d)r=document.createDocumentFragment();else{var s;let m=I.get(e);m&&(s=m.tagName,m.nativeTag!==null&&(s=m.nativeTag)),s!==void 0&&(e=s),r=document.createElement(e)}if(globalThis.__CURRENT_COMPONENT__){V++;let l=V;r.dataIndex=l,r.realtedComponent=globalThis.__CURRENT_COMPONENT__,r.cmpNbr=M}let u=[];for(let[l,m]of Object.entries(n))if(l.startsWith("on")&&typeof m=="function"){let b=l.slice(2).toLowerCase();u.push({type:b,val:m})}u.length&&(r._handlers=u);let f=Y.has(e),p=K.has(me(e)),y=e==="input"||e==="option",h=e==="option";if(!d)for(let l in n){let m=n[l];if(l.startsWith("on")&&typeof m=="function"){let b=l.slice(2).toLowerCase();r.addEventListener(b,x=>{w.stopPropagation&&x.stopPropagation(),m(x)})}else typeof m=="function"&&l!=="children"?X(()=>{let b=m();b==null||b===!1?(r.removeAttribute(l),l==="value"&&p&&(r.value="",w.cleanhtml||r.removeAttribute("value")),l==="checked"&&y&&(r.checked=!1,w.cleanhtml||r.removeAttribute("checked")),l==="selected"&&h&&(r.selected=!1,w.cleanhtml||r.removeAttribute("selected")),l==="id"&&(r.iid="",w.cleanhtml||r.removeAttribute("id"))):l==="id"?(r.iid=b,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",b),oe(b,{name:b,caller:b+i,value:r})):l==="value"&&p?(r.value=b,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",b)):l==="checked"&&y?(r.checked=b,w.cleanhtml?r.removeAttribute("checked"):b?r.setAttribute("checked",""):r.removeAttribute("checked")):l==="selected"&&h?(r.selected=b,w.cleanhtml?r.removeAttribute("selected"):b?r.setAttribute("selected",""):r.removeAttribute("selected")):r.setAttribute(l,b)}):m!=null&&m!==!1&&(l==="id"?(r.iid=m,w.cleanhtml?r.removeAttribute("id"):r.setAttribute("id",m),oe(m,{name:m,caller:m+i,value:r})):l==="value"&&p?(r.value=m,w.cleanhtml?r.removeAttribute("value"):r.setAttribute("value",m)):l==="checked"&&y?(r.checked=m,w.cleanhtml?r.removeAttribute("checked"):r.setAttribute("checked","")):l==="selected"&&h?(r.selected=m,w.cleanhtml?r.removeAttribute("selected"):r.setAttribute("selected","")):r.setAttribute(l,m))}return f?o.length===1&&(typeof o[0]=="string"||typeof o[0]=="number")?p&&(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((l,m)=>{if(l&&l.__isSignal&&l.__isPrimitiveSignal&&!l.__isWrapped){let b=l;b.__isWrapped=!0,l=a(()=>b(),"child")}if(typeof l=="function"){let b=l(),E=b===!1||b===null||b===!0?document.createComment(""):document.createTextNode("");r.appendChild(E),X(()=>{let T=l();if(Array.isArray(T)){let k=E.parentNode;if(!k)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=>k.insertBefore(C,E)),E._insertedNodes=$,E.nodeValue="";return}if(T instanceof Node){let k=E.parentNode;if(!k)return;E._insertedNode&&(E._insertedNode._boundNode&&E._insertedNode._boundNode.remove(),E._insertedNode.remove(),E._insertedNode=null),k.insertBefore(T,E),E._insertedNode=T;return}let N=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!==N){if(!E.parentNode)return;E!=null&&E._boundNode?E._boundNode.nodeValue=N:E.nodeValue=N}})}else if(typeof l=="string"&&l.includes("{{")&&!l.includes("function"))r.appendChild(Pe(l));else if(typeof l=="string"||typeof l=="number"){if(typeof l=="string"&&(l.includes("function get(")||l.includes("function (")||l.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(l))}else(l instanceof DocumentFragment||l instanceof Node)&&r.appendChild(l)})),r}a(U,"h");function $e(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/-+/g,"-").toLowerCase()}a($e,"camelToDash");function Fe(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)?$e(e):e.toLowerCase();o.includes("-")||(o="s-"+o),e.includes("-")&&(o=e,e=me(e)),I.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)=>U(e,...s)}a(Fe,"defineElement");function De(e){S||requestAnimationFrame(()=>{requestAnimationFrame(e)})}a(De,"onPaint");function nt(e){if(S)return;let t=!1;De(()=>{t||(t=!0,e())})}a(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}a(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"),c=document.querySelector("description[data-description]");if(c){let u=i.querySelector('meta[name="description"]');u||(u=i.createElement("meta"),u.name="description",i.head.appendChild(u)),u.content=c.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"),p=i.querySelector(`[data-part="${f}"]`);p&&(p.innerHTML="",[...u.childNodes].forEach(y=>{p.appendChild(y.cloneNode(!0))}))}),document.documentElement.innerHTML=i.documentElement.innerHTML,!0}catch(n){return console.error("Failed to inject layout:",n),!1}}a(He,"injectLayout");function q(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(),c=Object.entries(e).find(([r,d])=>r.toLowerCase()===i);if(c)return c[1]}a(q,"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(),c=i.default||Object.values(i)[0];if(typeof c=="function"&&c.name===n)return s._componentName=c.name,s}catch(i){console.warn(`Failed to load route "${o}":`,i);continue}}a(We,"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,c=await s._componentNamePromise,r=n,d=document.querySelectorAll("[data-component]");for(let f of d){let p=f.getAttribute("data-component"),y=p==null?void 0:p.toLowerCase();if(typeof rvs_map_sigment<"u"&&rvs_map_sigment!==null?r=q(rvs_map_sigment,p):r=y,!r||i.has(r))continue;let h=q(t,r);h===void 0&&(h=await We(t,r));try{f.hasChildNodes()&&(globalThis.__CURRENT_COMPONENT__=p);let g=h?await Ve(h):await qe(w.loadAtRunTime,r),l=h?{...s,...le(f)}:le(f),m=g.default(l);m.funcName=c.toLowerCase();let b=(u=f.closest("[data-part]"))==null?void 0:u.getAttribute("data-part");m.datapart=b,m.setAttribute("data-component",p),m.hydrate=!0,f.cmpNbr=M,ee(f,m),ce.set(r,M),M++,V=0}catch(g){console.warn(`Component "${y}" failed to load`,g)}}}a(ae,"hydrateComponent");async function Ve(e){if(!L.has(e)){let t=await e.loader();L.set(e,t)}return L.get(e)}a(Ve,"loadModule");async function qe(e,t){let n=q(e,t);if(n){if(L.has(n))return L.get(n);try{let o=await n();return L.set(n,o),o}catch(o){console.error(`Component "${t}" failed to load`,o)}}}a(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)}a(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,c=>{w.stopPropagation&&c.stopPropagation(),i(c)})})}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],c=n[s];i&&c?ee(i,c):c?e.appendChild(c):i&&e.removeChild(i)}}catch(n){console.error("Hydration failed:",n)}})()}a(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,H as getVirtualElementById,ze as globalSignal,H as gve,se as gvec,U as h,ae as hydrateComponent,Je as loadFunc,ve as loadRunFunc,je as memoizeFunc,ot as mount,De as onPaint,nt as paintFinish,ue as parsePath,ie as rpc,pe as sig,pe as signal,Xe as store,Be as useGlobalSignal};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sigment",
3
- "version": "1.3.9",
3
+ "version": "1.4.1",
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": {
@@ -38,11 +38,19 @@
38
38
  "engines": {
39
39
  "node": ">=14.8.0"
40
40
  },
41
- "keywords": [
42
- "Javascript",
43
- "Vanilla",
44
- "Reactive",
45
- "Sigment"
41
+ "keywords": [
42
+ "javascript",
43
+ "vanilla",
44
+ "reactive",
45
+ "signals",
46
+ "state-management",
47
+ "dom-performance",
48
+ "no-vdom",
49
+ "lightweight-framework",
50
+ "batch-rendering",
51
+ "sigment",
52
+ "ui-engine",
53
+ "fast-dom"
46
54
  ],
47
55
  "bugs": {
48
56
  "url": "https://github.com/sigmentjs/basic-sigment-typescript-vite/issues"
@@ -1 +1 @@
1
- throw new Error('@wappaa/jv is ESM-only. Use import instead of require.');
1
+ throw new Error('sigment is ESM-only. Use import instead of require.');
package/types/index.d.ts CHANGED
@@ -38,7 +38,7 @@ export declare const MyApp: {
38
38
  maxCacheSize: number;
39
39
  setRoute: (routes: RoutesMap) => void;
40
40
  route: RoutesMap | null;
41
- setloadAtRunTime: (loadAtRunTime: LoadAtRunTime) => void;
41
+ setloadAtRunTime: (loadAtRunTime: true | LoadAtRunTime) => void; // updated
42
42
  loadAtRunTime: LoadAtRunTime | null;
43
43
  setStopPropagation: (flag: boolean) => void;
44
44
  stopPropagation: boolean;
@@ -53,7 +53,6 @@ export type LoadAtRunTime = {
53
53
 
54
54
 
55
55
 
56
-
57
56
  /**
58
57
  * Creates a reactive effect that runs the given function and tracks dependencies.
59
58
  */
@@ -144,10 +143,7 @@ export declare function parsePath(
144
143
  ): Promise<HTMLElement>;
145
144
 
146
145
 
147
- /**
148
- * Clears cached component for a given component name.
149
- */
150
- export declare function clearComponentCache(componentName: string): void;
146
+
151
147
 
152
148
  export declare function createGlobalSignal<T>(key: string, initialValue: T): [() => T, (v: T) => void];
153
149
 
@@ -218,40 +214,75 @@ export { signal as sig };
218
214
  export declare function store<T extends object>(value: T): T;
219
215
 
220
216
 
221
-
222
217
  /**
223
- * Function gve creates an HTML element with the given name.
218
+ * Sigment UI Engine - Type Definitions
224
219
  */
225
- export declare function gve(name: string): HTMLElement | null;
226
- export { gve as getVirtualElementById };
227
-
228
-
229
-
230
- export function gve(name: string): HTMLElement | null;
231
-
232
- export { gve as getVirtualElementById };
233
220
 
221
+ /**
222
+ * Result of the createTemplate processing.
223
+ * Acts as a blueprint for high-speed batch rendering.
224
+ */
225
+ export interface SigmentTemplate {
226
+ element: HTMLElement;
227
+ paths: { type: string; index: number }[];
228
+ }
234
229
 
230
+ /**
231
+ * SigmentElement
232
+ * A standard HTMLElement enhanced with Sigment's high-performance methods.
233
+ */
234
+ export type SigmentElement = HTMLElement & {
235
+
236
+ /** Removes the element from the DOM and clears it from Sigment's internal data maps. */
237
+ destroy(): void;
238
+
239
+ /** Swaps positions with another element in the same container by target index. */
240
+ swapWith(targetIdx: number): SigmentElement;
241
+
242
+ /** Updates the content of a specific Node (TextNode) within the element. */
243
+ updateVal(nodeIdx: number, value: string | number): void;
244
+
245
+ /** Appends text to the existing content of a specific Node within the element. */
246
+ addVal(nodeIdx: number, value: string | number): void;
247
+
248
+ /** (For containers) Removes all children and clears associated internal data maps. */
249
+ clear(): void;
250
+
251
+ /** (For containers) Retrieves a child element by its ID (string) or current index (number). */
252
+ get(idOrIdx: string | number): SigmentElement | null;
253
+ };
235
254
 
236
255
  /**
237
- * Sets a cookie; value can be string or object (will be JSON.stringified).
256
+ * Core Functions
238
257
  */
239
- export declare function setCookie(k: string, v: any, t?: number): void;
240
258
 
241
259
  /**
242
- * Gets a cookie by key, returns string, parsed object, or null.
260
+ * Scans an element or template and creates a Blueprint for fast row generation.
261
+ * It maps all "?" placeholders found in TextNodes.
243
262
  */
244
- export declare function getCookie(k: string): any;
263
+ export function createTemplate(el: HTMLElement | HTMLTemplateElement): SigmentTemplate | null;
245
264
 
246
265
  /**
247
- * Sets localStorage item; value can be string, object, or HTMLElement (stored as outerHTML).
266
+ * Selects an element from the DOM and upgrades it with Sigment capabilities.
248
267
  */
249
- export declare function setStorage(key: string, value: any): void;
268
+ export function gve(id: string | HTMLElement): SigmentElement | null;
250
269
 
251
270
  /**
252
- * Gets localStorage item; parses JSON or returns string or HTMLElement-like object.
271
+ * Performs high-speed, chunked rendering of large datasets into a container.
272
+ * @param data - The raw data array.
273
+ * @param templateStructure - The blueprint object returned by createTemplate.
274
+ * @param containerId - The ID of the target container element (e.g., 'tbody').
275
+ * @param chunkSize - Number of elements to render per frame (default: 1000).
276
+ * @param mode - 'false' to clear container before rendering, 'true' to append.
253
277
  */
254
- export declare function getStorage(key: string): any;
278
+ export function batch(
279
+ data: any[],
280
+ templateStructure: SigmentTemplate,
281
+ containerId: string,
282
+ chunkSize?: number,
283
+ mode?: boolean
284
+ ): void;
285
+
255
286
 
256
287
  /**
257
288
  * Hyperscript-style function to create elements or components.
@@ -616,16 +647,7 @@ export function onPaint(fn: () => void): void;
616
647
  */
617
648
  export function paintFinish(fn: () => void): void;
618
649
 
619
- /**
620
- * Updates the DOM element matching the selector with the given node,
621
- * only if needed.
622
- * @param target - A CSS selector string for the target element.
623
- * @param node - The new DOM Node to compare or replace.
624
- */
625
- export function updateNodeIfNeeded(
626
- target: string,
627
- node: Node
628
- ): void;
650
+
629
651
 
630
652
 
631
653