@estjs/template 0.0.14 → 0.0.15-beta.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/README.md +14 -0
- package/dist/template.cjs.js +4 -3
- package/dist/template.cjs.js.map +1 -1
- package/dist/template.d.cts +601 -310
- package/dist/template.d.ts +601 -310
- package/dist/template.dev.cjs.js +1671 -779
- package/dist/template.dev.esm.js +1641 -777
- package/dist/template.esm.js +4 -3
- package/dist/template.esm.js.map +1 -1
- package/package.json +5 -5
- package/types/component.d.ts +2 -2
- package/types/jsx.d.ts +149 -122
- package/types/node.d.ts +3 -3
package/README.md
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# @estjs/template
|
|
2
|
+
|
|
3
|
+
The template engine for **Essor**. It handles the normalization of JSX templates and provides the runtime support for Server-Side Rendering (SSR) and Static Site Generation (SSG).
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @estjs/template
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
## License
|
|
13
|
+
|
|
14
|
+
MIT
|
package/dist/template.cjs.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
'use strict';var shared=require('@estjs/shared'),
|
|
2
|
-
* @estjs/template v0.0.
|
|
1
|
+
'use strict';var shared=require('@estjs/shared'),signals=require('@estjs/signals');/**
|
|
2
|
+
* @estjs/template v0.0.15-beta.1
|
|
3
3
|
* (c) 2023-Present jiangxd <jiangxd2016@gmail.com>
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
6
|
-
var R="on",w="update",E="children",A="",U="0",B="1";var H="ref",_=" __PLACEHOLDER__ ";var G=class{constructor(){this.renderMode=0;}get isSSG(){return this.renderMode===1}get isSSR(){return this.renderMode===2}get isClient(){return this.renderMode===0}setSSR(){this.renderMode=2;}setSSG(){this.renderMode=1;}setClient(){this.renderMode=0;}},u=new G,q=new Map;function z(n,t){q.set(n,{index:t});}function W(n){var t;return (t=q.get(n))==null?void 0:t.index}var T=class T{constructor(){this.hooks={mounted:new Set,destroy:new Set};}addEventListener(){}removeEventListener(){}addHook(t,e){var o;(o=this.hooks[t])==null||o.add(e);}getContext(t){return T.context[t]}setContext(t,e){T.context[t]=e;}initRef(){T.ref=this;}removeRef(){T.ref=null;}clearHooks(){Object.values(this.hooks).forEach(t=>t.clear());}};T.ref=null,T.context={};var l=T;function O(n){return n instanceof b}var C=1,b=class extends l{constructor(e,o={},r){super();this.template=e;this.props=o;this.key=r;z(e,C),this.templates=this.processTemplate();}processTemplate(){if(shared.isArray(this.template)){let e=this.template.join(_);return this.processHtmlString(e).split(_)}return []}processHtmlString(e){return e.replaceAll(/(<[^>]+>)|([^<]+)/g,(o,r,i)=>r?r.includes("data-ci")?o:r.replace(/<\s*([\da-z]+)(\s[^>]*)?>/i,(s,c,a)=>`<${c} data-ci="${C}"${a||""}>`):i&&i.replace(_,"").trim()?`<!--0-${C}-->${i}<!$>`:o)}mount(){this.initRef();let e=this.render();return this.removeRef(),e}render(){if(shared.isFunction(this.template)){let e=this.template(this.props);return O(e)?e.mount():String(e)}return this.renderTemplate()}renderTemplate(){return Object.entries(this.props).forEach(([e,o])=>{let r=o.children;this.normalizeProps(o);let i=this.templates.findIndex(s=>s.includes(`data-hk="${e}"`));r&&this.renderChildren(r,i),this.templates[i]=this.templates[i].replace(`data-hk="${e}"`,`data-hk="${e}" ${this.generateAttributes(o)}`);}),this.templates.join("")}normalizeProps(e){Object.entries(e).forEach(([o,r])=>{o===E||shared.isFunction(r)?delete e[o]:signal.isSignal(r)&&(e[o]=r.value);});}generateAttributes(e){return Object.entries(e).filter(([o,r])=>o!==E&&!shared.isFunction(r)).map(([o,r])=>`${o}="${shared.escape(String(r))}"`).join(" ")}renderChildren(e,o){e.forEach(([r])=>{C++;let i=this.renderChild(r);this.templates[o]+=i;});}renderChild(e){if(signal.isSignal(e))return `<!--1-${C}-->${e.value}<!$>`;if(shared.isFunction(e))return this.renderChild(e(this.props));if(O(e)){let o=e.mount();return shared.isFunction(o)?o(this.props):$(o)}else return `<!--1-${C}-->${e}<!$>`}};var Ne="area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr".split(",");function D(n){if(h(n)||n instanceof Node||O(n))return n;let t=shared.isFalsy(n)?"":String(n);return document.createTextNode(t)}function g(n,t,e=null){let o=h(e)?e.firstChild:e,r=u.isSSR;h(t)?t.mount(n,o):o&&!r?o.before(t):r||n.append(t);}function M(n){h(n)?n.unmount():n.parentNode&&n.remove();}function F(n,t,e){g(n,t,e),M(e);}function ee(n,t,e){t==="class"?Ee(n,e):t==="style"?ge(n,e):Te(n,t,e);}function Ee(n,t){typeof t=="string"?n.className=t:shared.isArray(t)?n.className=t.join(" "):t&&typeof t=="object"&&(n.className=Object.entries(t).reduce((e,[o,r])=>e+(r?` ${o}`:""),"").trim());}function ge(n,t){typeof t=="string"?n.style.cssText=t:t&&typeof t=="object"&&Object.entries(t).forEach(([o,r])=>{n.style.setProperty(shared.kebabCase(o),String(r));});}function Te(n,t,e){shared.isFalsy(e)?n.removeAttribute(t):e===!0?n.setAttribute(t,""):n instanceof HTMLInputElement&&t==="value"?n.value=String(e):n.setAttribute(t,String(e));}function te(n,t){if(n instanceof HTMLInputElement)switch(n.type){case"checkbox":return m(n,"change",()=>{t(!!n.checked);});case"date":return m(n,"change",()=>{t(n.value?n.value:"");});case"file":return m(n,"change",()=>{n.files&&t(n.files);});case"number":return m(n,"input",()=>{let e=Number.parseFloat(n.value);t(Number.isNaN(e)?"":String(e));});case"radio":return m(n,"change",()=>{t(n.checked?n.value:"");});case"text":return m(n,"input",()=>{t(n.value);})}if(n instanceof HTMLSelectElement)return m(n,"change",()=>{t(n.value);});if(n instanceof HTMLTextAreaElement)return m(n,"input",()=>{t(n.value);})}function m(n,t,e){return n.addEventListener(t,e),()=>n.removeEventListener(t,e)}function oe(n){return Ne.includes(n)?`<${n}/>`:`<${n}></${n}>`}function $(n){return signal.isSignal(n)?n.value:n}var y=class extends l{constructor(e,o,r){super();this.template=e;this.props=o;this.key=r;this.emitter=new Set;this.rootNode=null;this.trackMap=new Map;this.nodes=[];this.parent=null;this.before=null;this.key||(this.key=o&&o.key),this.proxyProps||(this.proxyProps=signal.shallowReactive(o||{}));}get firstChild(){var e,o;return (o=(e=this.rootNode)==null?void 0:e.firstChild)!=null?o:null}get isConnected(){var e,o;return (o=(e=this.rootNode)==null?void 0:e.isConnected)!=null?o:!1}mount(e,o){var r,i,s,c;if(this.parent=e,!shared.isFunction(this.template))throw new Error("Template must be a function");return this.isConnected?(i=(r=this.rootNode)==null?void 0:r.mount(e,o))!=null?i:[]:(this.initRef(),this.rootNode=this.template(signal.useReactive(this.proxyProps,[E])),this.nodes=(c=(s=this.rootNode)==null?void 0:s.mount(e,o))!=null?c:[],this.callMountHooks(),this.patchProps(this.props),this.removeRef(),this.nodes)}unmount(){var e;this.callLifecycleHooks("destroy"),this.cleanup(),(e=this.rootNode)==null||e.unmount(),this.resetState(),this.key&&k.delete(this.key);}resetState(){this.rootNode=null,this.proxyProps={},this.nodes=[],this.parent=null;}callLifecycleHooks(e){this.hooks[e].forEach(o=>o());}callMountHooks(){this.hooks.mounted.forEach(e=>e());}callDestroyHooks(){this.hooks.destroy.forEach(e=>e());}clearEmitter(){for(let e of this.emitter)e();this.emitter.clear();}inheritNode(e){if(Object.assign(this.proxyProps,e.proxyProps),this.rootNode=e.rootNode,this.trackMap=e.trackMap,this.hooks=e.hooks,shared.hasChanged(e.props,this.props)){let o=this.props;this.props=e.props,this.patchProps(o);}}getNodeTrack(e){let o=this.trackMap.get(e);return o||(o={cleanup:()=>{}},this.trackMap.set(e,o)),o.cleanup(),o}patchProps(e){var o;if(e){for(let[r,i]of Object.entries(e))shared.startsWith(r,R)&&((o=this.rootNode)!=null&&o.firstChild)?this.patchEventListener(r,i):r===H?this.patchRef(i):shared.startsWith(r,w)?this.patchUpdateHandler(r,i):r!==E&&this.patchNormalProp(r,i);this.props=e;}}patchEventListener(e,o){let r=e.slice(2).toLowerCase(),i=m(this.rootNode.nodes[0],r,o);this.emitter.add(i);}patchRef(e){var o,r;e.value=(r=(o=this.rootNode)==null?void 0:o.firstChild)!=null?r:null;}patchUpdateHandler(e,o){this.proxyProps[e]=$(o);}patchNormalProp(e,o){let r=this.getNodeTrack(e);r.cleanup=signal.useEffect(()=>{this.proxyProps[e]=shared.isFunction(o)?o():o;});}cleanup(){this.trackMap.forEach(e=>{var o;return (o=e.cleanup)==null?void 0:o.call(e)}),this.trackMap.clear(),this.emitter.forEach(e=>e()),this.emitter.clear();}};function ie(n,t,e,o){let r=new Map,i=Array.from(t.values());if(i.length&&e.length===0)return Ce(n,i,o),r;let s=[],c=Me(e),a=0;for(let[d,p]of e.entries()){let f=i[a],v=S(f,d);for(;f&&!c.has(v);)M(f),t.delete(v),f=i[++a],v=S(f,d);let V=S(p,d),X=t.get(V);if(X&&(p=be(n,X,p)),f)if(f===X)a++;else {let Y=document.createComment("");g(n,Y,f),s.push([Y,p]);}else g(n,p,o);r.set(V,p);}return s.forEach(([d,p])=>{F(n,p,d);}),t.forEach((d,p)=>{d.isConnected&&!r.has(p)&&M(d);}),r}function Ce(n,t,e){if(n.childNodes.length===t.length+(e?1:0))n.innerHTML="",e&&g(n,e);else {let o=document.createRange(),r=t[0],i=h(r)?r.firstChild:r;o.setStartBefore(i),e?o.setEndBefore(e):o.setEndAfter(n),o.deleteContents();}t.forEach(o=>{h(o)&&o.unmount();});}function be(n,t,e){return t===e?t:h(t)&&h(e)&&t.template===e.template?(e.inheritNode(t),e):t instanceof Text&&e instanceof Text?(t.textContent!==e.textContent&&(t.textContent=e.textContent),t):(F(n,e,t),e)}function Me(n){let t=new Map;for(let[e,o]of n.entries()){let r=S(o,e);t.set(r,o);}return t}function S(n,t){if(h(n)){let e=n.key;if(e!=null)return String(e)}return `_$${t}$`}var x=class{constructor(t,e,o){this.template=t;this.props=e;this.key=o;this.treeMap=new Map;this.mounted=!1;this.nodes=[];this.trackMap=new Map;this.bindValueKeys=[];this.parent=null;u.isSSR&&(this.componentIndex=W(this.template));}get firstChild(){var t;return (t=this.nodes[0])!=null?t:null}get isConnected(){return this.mounted}addEventListener(){}removeEventListener(){}mount(t,e){var i;if(this.parent=t,this.isConnected)return this.nodes.forEach(s=>g(t,s,e)),this.nodes;shared.isArray(this.template)&&(this.template=P(this.template.join("")));let o=this.template.content.cloneNode(!0),r=o.firstChild;return (i=r==null?void 0:r.hasAttribute)!=null&&i.call(r,"_svg_")&&(r.remove(),r.childNodes.forEach(s=>{o.append(s);})),this.nodes=Array.from(o.childNodes),u.isSSR?this.mapSSGNodeTree(t):this.mapNodeTree(t,o),g(t,o,e),this.patchProps(this.props),this.mounted=!0,this.nodes}unmount(){this.trackMap.forEach(t=>{t.cleanup&&t.cleanup();}),this.trackMap.clear(),this.treeMap.clear(),this.nodes.forEach(t=>M(t)),this.nodes=[],this.mounted=!1,this.key&&k.delete(this.key);}inheritNode(t){this.mounted=t.mounted,this.nodes=t.nodes,this.trackMap=t.trackMap,this.treeMap=t.treeMap;let e=this.props;this.props=t.props,this.patchProps(e);}mapSSGNodeTree(t){this.treeMap.set(0,t),this.walkNodeTree(t,this.handleSSGNode.bind(this));}mapNodeTree(t,e){let o=1;this.treeMap.set(0,t);let r=[t],i=s=>{s.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&(this.treeMap.set(o++,s),r.push(s));};this.walkNodeTree(e,i);}walkNodeTree(t,e){t.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&e(t);let o=t.firstChild;for(;o;)this.walkNodeTree(o,e),o=o.nextSibling;}handleSSGNode(t){var e;if(t.nodeType===Node.COMMENT_NODE){let[o,r]=((e=t.textContent)==null?void 0:e.split("-"))||[];if(0===+o&&+r===this.componentIndex){let i=t.nextSibling;this.treeMap.set(+r,i);}}else if(t.nodeType!==Node.TEXT_NODE){let{ci:o="-1",hk:r}=(t==null?void 0:t.dataset)||{};r&&+o===this.componentIndex&&this.treeMap.set(+r,t);}}patchProps(t){t&&(Object.entries(t).forEach(([e,o])=>{let r=Number(e),i=this.treeMap.get(r);i&&this.patchProp(e,i,o,r===0);}),this.props=t);}patchProp(t,e,o,r){o&&Object.entries(o).forEach(([i,s])=>{if(i===E&&s)this.patchChildren(t,e,s,r);else if(i===H)o[i].value=e;else if(shared.startsWith(i,R))this.patchEventListener(t,e,i,s);else {if(this.bindValueKeys.includes(i))return;let c=this.getBindUpdateValue(o,t,i);this.patchAttribute(t,e,i,s,c);}});}getBindUpdateValue(t,e,o){let r=`${w}${shared.capitalize(o)}`;if(r&&t[r]&&shared.isFunction(t[r]))return this.bindValueKeys.push(r),t[r]}patchChildren(t,e,o,r){if(shared.isArray(o))o.filter(Boolean).forEach((i,s)=>{var v;let[c,a]=shared.isArray(i)?i:[i,null],d=shared.isNil(a)?null:(v=this.treeMap.get(a))!=null?v:null,p=`${t}:${E}:${s}`,f=this.getNodeTrack(p,!0,r);this.patchChild(f,e,c,d);});else {let i=`${t}:${E}:0`,s=this.getNodeTrack(i,!0,r);this.patchChild(s,e,o,null);}}patchEventListener(t,e,o,r){let i=o.slice(2).toLowerCase(),s=this.getNodeTrack(`${t}:${o}`);s.cleanup=m(e,i,r);}patchAttribute(t,e,o,r,i){let s=this.getNodeTrack(`${t}:${o}`),c=signal.shallowSignal(),a=signal.useEffect(()=>{c.value=signal.isSignal(r)||signal.isComputed(r)?r.value:r,ee(e,o,c.value);}),d;i&&shared.isHTMLElement(e)&&(d=te(e,p=>{i(p);})),s.cleanup=()=>{a&&a(),d&&d();};}getNodeTrack(t,e,o){let r=this.trackMap.get(t);return r||(r={cleanup:()=>{}},e&&(r.lastNodes=new Map),o&&(r.isRoot=!0),this.trackMap.set(t,r)),r.cleanup&&r.cleanup(),r}patchChild(t,e,o,r){shared.isFunction(o)?t.cleanup=signal.useEffect(()=>{let i=shared.coerceArray(o()).map(D);u.isSSR?t.lastNodes=this.reconcileChildren(e,i,r):t.lastNodes=ie(e,t.lastNodes,i,r);}):shared.coerceArray(o).forEach((i,s)=>{let c=D(i),a=S(c,s);u.isSSR?t.lastNodes=this.reconcileChildren(e,[c],r):(t.lastNodes.set(a,c),g(e,c,r));});}reconcileChildren(t,e,o){let r=new Map,i=Array.from(t.childNodes).filter(s=>{var c,a;return s.nodeType===Node.TEXT_NODE&&((c=s.previousSibling)==null?void 0:c.nodeType)===Node.COMMENT_NODE&&((a=s.nextSibling)==null?void 0:a.nodeType)===Node.COMMENT_NODE});return e.forEach((s,c)=>{let a=S(s,c);s.nodeType===Node.TEXT_NODE?i.forEach(d=>{s.textContent===d.textContent&&t.replaceChild(s,d);}):g(t,s,o),r.set(a,s);}),r}};var k=new Map;function I(n,t,e={},o){if(o){let i=k.get(o);if(i)return i}typeof t=="string"&&(t=P(t));let r=new n(t,e,o);return o&&r instanceof y&&k.set(o,r),r}function j(n,t={},e){if(n===A)return de(n,t);if(shared.isString(n)){let o=oe(n),r={[B]:t};return I(x,o,r,e)}return shared.isFunction(n)?I(y,n,t,e):I(x,n,t,e)}function $e(n){return n instanceof y}function h(n){return n instanceof y||n instanceof x}function P(n){let t=document.createElement("template");return t.innerHTML=n,t}function de(n,t){let e=t.children?{[U]:{children:Array.isArray(t.children)?t.children.filter(Boolean):[t.children]}}:t,o=n===A?P(A):n;return I(x,o,e)}function Ie(n){l.ref&&l.ref.addHook("mounted",n);}function je(n){l.ref&&l.ref.addHook("destroy",n);}function Ke(n,t){l.ref&&l.ref.setContext(n,t);}function Xe(n,t){var e;return (e=l.ref&&l.ref.getContext(n))!=null?e:t}function Ge(n,t){u.setSSG();let o=new b(n,t||{}).mount();return u.setClient(),o}function De(n,t){let e=typeof t=="string"?document.querySelector(t):t;if(!e)throw new Error(`Could not find container: ${t}`);u.setSSR(),j(n).mount(e),u.setClient();}function Fe(n,t){return u.isSSG?new b(n,t):j(n,t)}exports.Fragment=de;exports.h=j;exports.hydrate=De;exports.inject=Xe;exports.isComponent=$e;exports.isJsxElement=h;exports.onDestroy=je;exports.onMount=Ie;exports.provide=Ke;exports.renderToString=Ge;exports.ssg=Fe;exports.template=P;//# sourceMappingURL=template.cjs.js.map
|
|
6
|
+
var st=Object.defineProperty;var Ne=Object.getOwnPropertySymbols;var ct=Object.prototype.hasOwnProperty,at=Object.prototype.propertyIsEnumerable;var Se=(e,t,n)=>t in e?st(e,t,{enumerable:true,configurable:true,writable:true,value:n}):e[t]=n,H=(e,t)=>{for(var n in t||(t={}))ct.call(t,n)&&Se(e,n,t[n]);if(Ne)for(var n of Ne(t))at.call(t,n)&&Se(e,n,t[n]);return e};var K=(e,t,n)=>new Promise((r,o)=>{var i=c=>{try{a(n.next(c));}catch(u){o(u);}},s=c=>{try{a(n.throw(c));}catch(u){o(u);}},a=c=>c.done?r(c.value):Promise.resolve(c.value).then(i,s);a((n=n.apply(e,t)).next());});var F=null,Ee=[],lt=0;function Ae(e=null){let t={id:++lt,parent:e,provides:new Map,cleanup:new Set,mount:new Set,update:new Set,destroy:new Set,isMount:false,isDestroy:false,children:new Set};return e&&e.children.add(t),t}function N(){return F}function M(e){F&&Ee.push(F),F=e;}function Y(){F=Ee.pop()||null;}function Q(e){if(!e||e.isDestroy)return;Array.from(e.children).forEach(Q),ft(e);}function ft(e){if(!(!e||e.isDestroy)){e.parent&&(e.parent.children.delete(e),e.parent=null);try{e.cleanup.forEach(t=>t()),e.cleanup.clear(),e.mount.clear(),e.update.clear(),e.destroy.clear(),e.provides.clear(),e.children.clear();}catch(t){shared.error("Error during context cleanup:",t);}e.isDestroy=true;}}var v={mount:"mount",destroy:"destroy",update:"update"};function Z(e,t){let n=N();if(!n){shared.error(`Cannot register ${e} hook outside component context`);return}if(!v[e]){shared.error(`Invalid lifecycle type: ${e}`);return}if(e===v.mount&&n.isMount){try{t();}catch(r){shared.error(`Error in ${e} hook:`,r);}return}n[e].add(t);}function $(e){let t=N();if(!t){shared.error(`Cannot trigger ${e} hook outside component context`);return}let n=t[e];n!=null&&n.size&&n.forEach(r=>{try{r();}catch(o){}});}function ee(e){Z(v.mount,e);}function te(e){Z(v.destroy,e);}function dt(e){Z(v.update,e);}var Ce="http://www.w3.org/2000/svg",ne="http://www.w3.org/2000/xlink",re="http://www.w3.org/2000/xmlns/",oe=/^\d+-\d+$/;var ve=1e3,be=new WeakMap;function ke(e){let t=be.get(e);if(!t){let n=e.name||"anonymous",r=Le(e.toString()).toString(36);t=`${n}_${r}`,be.set(e,t);}return t}function Le(e){let t=0,n=e.length<100?e.length:100;for(let r=0;r<n;r++)t=Math.trunc((t<<5)-t+e.charCodeAt(r));return t<0?-t:t}var ht=0;function se(e){if(!shared.isFalsy(e)){if(shared.isString(e))return e.length<=ve?e:`${e.slice(0,ve-10)}_${Le(e).toString(36)}`;if(shared.isNumber(e))return String(e);if(shared.isSymbol(e)){let t=Symbol.keyFor(e);if(t)return `_s.${t}`;let n=e.description;return n?`_s.${n}`:`${ht++}`}return String(e)}}var ie=Symbol("essor.key");function O(e,t){if(m(e)||!e||e.nodeType===Node.DOCUMENT_NODE)return;let n=se(t);shared.isFalsy(n)?delete e[ie]:e[ie]=n;}function k(e){if(e)return m(e)?e.key:e[ie]}function b(e){if(e)try{if(m(e))e.destroy();else {let t=e;t.parentElement&&t.remove();}}catch(t){shared.error("Failed to remove node:",t);}}function p(e,t,n=null){if(!(!e||!t))try{let r=m(n)?n.firstChild:n;if(m(t)){t.mount(e,r);return}r?e.insertBefore(t,r):e.appendChild(t);}catch(r){shared.error("Failed to insert node:",r);}}function z(e,t,n){if(!(!e||!t||!n||t===n))try{p(e,t,n),b(n);}catch(r){shared.error("Failed to replace node:",r);}}function R(e){return e?m(e)?e.firstChild:e:null}function L(e,t){let n=k(e),r=k(t);if(n!==r)return false;let o=m(e),i=m(t);if(o&&i)return e.component===t.component;if(o!==i)return false;let s=e,a=t;return s.nodeType!==a.nodeType?false:s.nodeType===Node.ELEMENT_NODE?s.tagName===a.tagName:true}function T(e){if(shared.isHTMLElement(e))return e;if(shared.isPrimitive(e)){let t=shared.isFalsy(e)?"":String(e);return document.createTextNode(t)}return e}function _e(e){return e instanceof HTMLInputElement}function Pe(e){return e instanceof HTMLSelectElement}function Re(e){return e instanceof HTMLTextAreaElement}function ae(e){return e instanceof Text}function we(e,t){if(e===t)return true;if(!e||!t||Array.isArray(e)!==Array.isArray(t))return false;for(let n in e)if(e[n]!==t[n])return false;for(let n in t)if(!(n in e))return false;return true}function Ie(e,t){if(m(e)||m(t))return;let n=k(e);n&&!k(t)&&O(t,n);}function _(e,t,n){if(n===t)return t;let r=shared.isHTMLElement(t);if(shared.isHTMLElement(n)&&r){if(n.isEqualNode(t))return t;if(t.tagName===n.tagName){let a=t.attributes,c=n.attributes;for(let u=a.length-1;u>=0;u--){let f=a[u].name;n.hasAttribute(f)||t.removeAttribute(f);}for(let u=0,f=c.length;u<f;u++){let l=c[u];t.getAttribute(l.name)!==l.value&&t.setAttribute(l.name,l.value);}return Ie(t,n),t}}if(ae(t)&&ae(n))return t.textContent!==n.textContent&&(t.textContent=n.textContent),Ie(t,n),t;let i=m(t),s=m(n);return i&&s&&t.component===n.component?n.update(t):(z(e,n,t),n)}function He(e,t,n,r){let o=t.length,i=n.length;if(o===0&&i===0)return [];if(o===0){let s=document.createDocumentFragment();for(let a=0;a<i;a++)p(s,n[a]);return p(e,s,r),n}if(i===0){for(let s=0;s<o;s++)b(t[s]);return []}if(o===1&&i===1){let s=t[0],a=n[0];return L(s,a)?(_(e,s,a),n[0]=s):z(e,a,s),n}if(o===2&&i===2){let s=t[0],a=t[1],c=n[0],u=n[1];if(L(s,c)&&L(a,u))return _(e,s,c),_(e,a,u),n[0]=s,n[1]=a,n;if(L(s,u)&&L(a,c)){_(e,s,u),_(e,a,c);let f=R(a),l=R(s);return f&&l&&f.parentNode===e&&e.insertBefore(f,l),n[0]=a,n[1]=s,n}}return St(e,t,n,r)}function St(e,t,n,r){let o=0,i=0,s=t.length-1,a=n.length-1,c=t[0],u=t[s],f=n[0],l=n[a];for(;o<=s&&i<=a;)if(!c)c=t[++o];else if(!u)u=t[--s];else if(L(c,f))_(e,c,f),n[i]=c,c=t[++o],f=n[++i];else break;for(;o<=s&&i<=a;)if(!c)c=t[++o];else if(!u)u=t[--s];else if(L(u,l))_(e,u,l),n[a]=u,u=t[--s],l=n[--a];else break;if(o>s){if(i<=a){let h=a+1<n.length?R(n[a+1]):r;for(let y=i;y<=a;y++)p(e,n[y],h);}}else if(i>a)for(let h=o;h<=s;h++){let y=t[h];y&&b(y);}else Et(e,t,n,o,s,i,a,r);return n}function Et(e,t,n,r,o,i,s,a){let c=s-i+1,u=n.length,f;for(let g=i;g<=s;g++){let x=k(n[g]);x!==void 0&&(f||(f=Object.create(null)),f[x]=g);}let l=new Int32Array(c),h=false,y=0,A=0;for(let g=r;g<=o;g++){let x=t[g];if(!x)continue;if(A>=c){b(x);continue}let S,P=k(x);if(P!==void 0&&f&&P in f)S=f[P];else for(let C=i;C<=s;C++)if(l[C-i]===0&&P===void 0&&k(n[C])===void 0&&L(x,n[C])){S=C;break}S===void 0?b(x):(l[S-i]=g+1,S>=y?y=S:h=true,_(e,x,n[S]),n[S]=x,A++);}let I=h?At(l):[],J=I.length-1;for(let g=c-1;g>=0;g--){let x=i+g,S=n[x],P=x+1<u?R(n[x+1]):a;if(l[g]===0)p(e,S,P);else if(h)if(J<0||g!==I[J]){let C=R(S);C&&C.parentNode===e&&p(e,C,P);}else J--;}}function At(e){let t=e.length;if(t===0)return [];if(t===1)return e[0]!==0?[0]:[];let n=[],r=new Int32Array(t),o,i,s,a,c;for(o=0;o<t;o++){let u=e[o];if(u!==0){if(i=n[n.length-1],n.length===0||e[i]<u){r[o]=i,n.push(o);continue}for(s=0,a=n.length-1;s<a;)c=s+a>>1,e[n[c]]<u?s=c+1:a=c;u<e[n[s]]&&(s>0&&(r[o]=n[s-1]),n[s]=o);}}for(s=n.length,a=n[s-1];s-- >0;)n[s]=a,a=r[a];return n}function E(e,t,n,r){e.addEventListener(t,n,r);let o=N();o&&o.cleanup.add(()=>{e.removeEventListener(t,n,r);});}function Tt(e,t,n,r){if(_e(e))switch(e.type){case "checkbox":E(e,"change",()=>{r(!!e.checked);});break;case "radio":E(e,"change",()=>{r(e.checked?e.value:"");});break;case "file":E(e,"change",()=>{r(e.files);});break;case "number":case "range":E(e,"input",()=>{r(e.value||"");});break;case "date":case "datetime-local":case "month":case "time":case "week":E(e,"change",()=>{r(e.value||"");});break;default:E(e,"input",()=>{r(e.value);});break}else Pe(e)?E(e,"change",()=>{if(e.multiple){let o=Array.from(e.options).filter(i=>i.selected).map(i=>i.value);r(o);}else r(e.value);}):Re(e)&&E(e,"input",()=>{r(e.value);});}function kt(e,t,n,r){if(!e)return;let o=N();if(!o)return;let i=[],s=signals.effect(()=>{let a=shared.isFunction(t)?t():t,c=shared.coerceArray(a).map(T);i=He(e,i,c,n);});o.cleanup.add(()=>{s(),r!=null&&r.preserveOnCleanup||i.forEach(a=>b(a)),i.length=0;});}function ue(e,t){let n=t.length,r=new Array(n),o=new Set(t),i=1,s=0,a=c=>{if(c.nodeType!==Node.DOCUMENT_FRAGMENT_NODE){if(o.has(i)&&(r[s++]=c,s===n))return true;i++;}let u=c.firstChild;for(;u;){if(a(u))return true;u=u.nextSibling;}return false};return a(e),r}var $e;$e="normal";var W=class{constructor(t,n){this.component=t;this.props=n;this.renderedNode=null;this.componentContext=null;this.parentNode=null;this.beforeNode=null;this.reactiveProps={};this._propSnapshots={};this.state=0;this.context=null;this.parentContext=null;this[$e]=true;if(this.key=n!=null&&n.key?se(n.key):ke(t),this.reactiveProps=signals.shallowReactive(H({},this.props||{})),this.parentContext=N(),this.props)for(let r in this.props){let o=this.props[r];shared.isObject(o)&&o!==null&&(this._propSnapshots[r]=Array.isArray(o)?[...o]:H({},o));}}get isConnected(){return this.state===2}get firstChild(){var t;return (t=this.renderedNode)!=null?t:null}mount(t,n){if(this.parentNode=t,this.beforeNode=n||null,this.state=1,this.renderedNode)return p(t,this.renderedNode,n),this.renderedNode;this.componentContext=Ae(this.parentContext),M(this.componentContext);let r=this.component(this.reactiveProps);return shared.isFunction(r)&&(r=r(this.reactiveProps)),(signals.isSignal(r)||signals.isComputed(r))&&(r=r.value),this.renderedNode=r,p(t,this.renderedNode,n),this.applyProps(this.props||{}),this.state=2,this.componentContext&&(this.componentContext.isMount=true),$(v.mount),this.renderedNode}update(t){if(this.key!==t.key)return this.mount(t.parentNode,t.beforeNode),this;if(this.parentNode=t.parentNode,this.beforeNode=t.beforeNode,this.componentContext=t.componentContext,this.renderedNode=t.renderedNode,this.state=t.state,this.reactiveProps=t.reactiveProps,this._propSnapshots=t._propSnapshots,this.props)for(let n in this.props){if(n==="key")continue;let r=this.props[n],o=this.reactiveProps[n];if(shared.isObject(r)&&r!==null){let i=this._propSnapshots[n];if(!i||!we(r,i)){let s=Array.isArray(r)?r.slice():Object.assign({},r);this.reactiveProps[n]=s,this._propSnapshots[n]=s;}}else shared.hasChanged(r,o)&&(this.reactiveProps[n]=r,this._propSnapshots[n]&&delete this._propSnapshots[n]);}return !this.isConnected&&this.parentNode&&this.mount(this.parentNode,this.beforeNode),this.componentContext&&(M(this.componentContext),this.applyProps(this.props||{}),$(v.update),Y()),this}forceUpdate(){return K(this,null,function*(){if(this.state===5||!this.parentNode||!this.componentContext)return;let t=this.renderedNode,n;try{this.componentContext&&M(this.componentContext),n=this.component(this.reactiveProps),shared.isFunction(n)&&(n=n(this.reactiveProps)),(signals.isSignal(n)||signals.isComputed(n))&&(n=n.value),t&&n&&t!==n&&this.parentNode&&(z(this.parentNode,n,t),this.renderedNode=n),yield $(v.update);}catch(r){throw shared.error("Force update failed:",r),r}finally{this.componentContext&&Y();}})}destroy(){if(this.state===4||this.state===5)return;this.state=4;let t=this.componentContext;t&&(M(t),$(v.destroy),Q(t),this.componentContext=null,Y());let n=this.renderedNode;n&&b(n),this.renderedNode=null,this.parentNode=null,this.beforeNode=null,this.reactiveProps={},this.props=void 0,this.state=5;}applyProps(t){if(t){for(let[n,r]of Object.entries(t))if(shared.startsWith(n,"on")&&this.renderedNode){let o=n.slice(2).toLowerCase();shared.isHTMLElement(this.renderedNode)&&E(this.renderedNode,o,r);}else n==="ref"&&signals.isSignal(r)&&(r.value=this.renderedNode);this.props=t;}}};function m(e){return !!e&&!!e.normal}function j(e,t){return m(e)?e:new W(e,t)}function fe(e){let t,n=()=>{let r=document.createElement("template");r.innerHTML=e;let o=r.content.firstChild;if(!o)throw new Error("Invalid template: empty content");return o};return ()=>(t||(t=n())).cloneNode(true)}function It(e,t){let n=shared.isString(t)?document.querySelector(t):t;if(!n){shared.error(`Target element not found: ${t}`);return}n.innerHTML&&(shared.error(`Target element is not empty, it will be delete: ${t}`),n.innerHTML="");let o=j(e);return o.mount(n),o}function de(e,t){let n=N();if(!n){shared.error("provide must be called within a template");return}n.provides.set(e,t);}function me(e,t){let n=N();if(!n)return shared.error("inject must be called within a template"),t;let r=n;for(;r;){let o=r.provides.get(e);if(!shared.isNil(o))return o;r=r.parent;}return t}function Ft(e){let t=e.target,n=`${e.type}`,r=e.target,o=e.currentTarget,i=c=>Object.defineProperty(e,"target",{configurable:true,value:c}),s=()=>{let c=t[`_$${n}`];if(c&&shared.isFunction(c)&&!t.disabled){let u=t[`${n}Data`];if(u?c.call(t,u,e):c.call(t,e),e.cancelBubble)return false}return t.host&&!shared.isString(t.host)&&!t.host._$host&&shared.isFunction(t.contains)&&t.contains(e.target)&&i(t.host),true},a=()=>{for(;s()&&(t=t._$host||t.parentNode||t.host););};if(Object.defineProperty(e,"currentTarget",{configurable:true,get(){return t||document}}),e.composedPath){let c=e.composedPath();i(c[0]);for(let u=0;u<c.length-2&&(t=c[u],!!s());u++){if(t._$host){t=t._$host,a();break}if(t.parentNode===o)break}}else a();i(r);}var Ue=Symbol("_$EVENTS");function Mt(e,t=window.document){let n=t,r=n[Ue]||(n[Ue]=new Set);for(let o of e)r.has(o)||(r.add(o),t.addEventListener(o,Ft));}function zt(e,t,n,r=false){if(t===n)return;let o=q(n),i=q(t);o&&i===o||(o?r?e.setAttribute("class",o):e.className=o:e.removeAttribute("class"));}function q(e){if(e==null)return "";if(typeof e=="string")return e.trim();if(shared.isArray(e))return e.map(q).filter(Boolean).join(" ");if(shared.isObject(e)){let t=[];for(let n in e)e[n]&&t.push(n);return t.join(" ")}return String(e).trim()}var Ye=/\s*!important$/,Yt=["Webkit","Moz","ms"],pe={};function Xt(e,t,n){let r=e.style,o=shared.isString(n);if(n&&o){t!==n&&(r.cssText=n);return}if(!n){t&&e.removeAttribute("style");return}if(t&&!shared.isString(t))for(let i in t)(!n||n[i]==null)&&U(r,i,"");else if(t&&shared.isString(t)){let i=t.split(";");for(let s of i){let a=s.indexOf(":");if(a>0){let c=s.slice(0,a).trim();n&&shared.isObject(n)&&n[c]==null&&U(r,c,"");}}}if(n&&!shared.isString(n))for(let i in n){let s=n[i];(!t||shared.isString(t)||t[i]!==s)&&s!=null&&U(r,i,s);}}function U(e,t,n){if(shared.isArray(n)){for(let o of n)U(e,t,o);return}if((n==null||n==="")&&(n=""),t.startsWith("--")){e.setProperty(t,n);return}let r=Wt(e,t);typeof n=="string"&&Ye.test(n)?e.setProperty(shared.camelCase(r),n.replace(Ye,""),"important"):e[r]=n;}function Wt(e,t){let n=pe[t];if(n)return n;let r=shared.camelCase(t);if(r!=="filter"&&r in e)return pe[t]=r;r=shared.capitalize(r);for(let o of Yt){let i=o+r;if(i in e)return pe[t]=i}return t}function Zt(e,t,n,r){if(t==="ref"){n.value=e;return}if(t==="key"){r==null?O(e,void 0):O(e,String(r));return}let o=(e==null?void 0:e.namespaceURI)===Ce,i=o&&t.startsWith("xlink:"),s=o&&t.startsWith("xmlns:"),a=shared.isSpecialBooleanAttr(t)||shared.isBooleanAttr(t);if(n===r)return;let c=t.toLowerCase();if(/^on[a-z]+/.test(c)||c==="innerhtml")return;if(r==null){if(i)e.removeAttributeNS(ne,t.slice(6));else if(s){let l=t.slice(6);e.removeAttributeNS(re,l);}else e.removeAttribute(t);return}if(i){e.setAttributeNS(ne,t,String(r));return}if(s){e.setAttributeNS(re,t,String(r));return}if(a){shared.includeBooleanAttr(r)?e.setAttribute(t,""):e.removeAttribute(t);return}let u=shared.isSymbol(r)?String(r):r;if((c==="href"||c==="src"||c==="xlink:href")&&typeof u=="string"){let l=u.trim().toLowerCase();if(l.startsWith("javascript:")||l.startsWith("data:"))return}if(o)e.setAttribute(t,String(u));else if(t in e)try{e[t]=u;}catch(l){e.setAttribute(t,String(u));}else e.setAttribute(t,String(u));}function en(e,t,n,r){if(!(r!=null&&r.delegate))return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r);let o=r.delegate,i=a=>{let c=a.target;(c.matches(o)||c.closest(o))&&n.call(e,a);},s=H({},r);return s.delegate=void 0,e.addEventListener(t,i,s),()=>{e.removeEventListener(t,i,s);}}function tn(e){if(typeof document=="undefined"){let r=e.children;return r?(Array.isArray(r)?r:[r]).map(i=>String(i||"")).join(""):""}let t=document.createDocumentFragment(),n=e.children;return n&&(Array.isArray(n)?n:[n]).forEach(o=>{if(o!=null){let i=T(o);i&&p(t,i);}}),t}tn.fragment=true;function Zr(e){return !!e&&!!e.fragment}function rn(e){if(typeof document=="undefined"){let n=e.children;return n?(shared.isArray(n)?n:[n]).map(o=>String(o||"")).join(""):""}let t=document.createComment("portal");return t.portal=true,ee(()=>{let n=shared.isString(e.target)?document.querySelector(e.target):e.target;if(!n)return;let r=e.children;r&&(shared.isArray(r)?r:[r]).forEach(i=>{if(i!=null){let s=T(i);s&&p(n,s);}});}),t}rn.portal=true;function so(e){return !!e&&!!e.portal}var he=Symbol("SuspenseContext");function cn(e){if(shared.isUndefined(document)){let l=e.fallback;return l?String(l||""):""}let t=document.createElement("div");t.style.display="contents";let n=true,r=0,o=false,i=null,s=()=>{if(!o){for(o=true;t.firstChild;)t.removeChild(t.firstChild);if(e.fallback!=null){let l=T(e.fallback);l&&p(t,l);}}},a=()=>{if(!(!o||!(i||e.children!=null&&!shared.isPromise(e.children)))){for(o=false;t.firstChild;)t.removeChild(t.firstChild);i?c(i):e.children!=null&&!shared.isPromise(e.children)&&c(e.children);}},c=l=>{for(;t.firstChild;)t.removeChild(t.firstChild);if(l==null)return;let h=N();if((shared.isArray(l)?l:[l]).forEach(A=>{if(A!=null){m(A)&&(A.parentContext=h);let I=T(A);I&&p(t,I);}}),o){for(;t.firstChild;)t.removeChild(t.firstChild);if(e.fallback!=null){let A=T(e.fallback);A&&p(t,A);}}},u={register:l=>{r++,s(),l.then(()=>{n&&(r--,r===0&&a());}).catch(h=>{n&&(r--,r===0&&a());});},increment:()=>{r++,s();},decrement:()=>{r--,r===0&&a();}};de(he,u);let f=e.children;return shared.isPromise(f)?(f.then(l=>{i=l;}).catch(()=>{}),u.register(f)):f!=null?c(f):s(),te(()=>{for(n=false;t.firstChild;)t.removeChild(t.firstChild);}),t}cn.suspense=true;function go(e){return !!e&&!!e.suspense}function Co(e,t){let n=signals.signal(t==null?void 0:t.initialValue),r=signals.signal(true),o=signals.signal(null),i=signals.signal("pending"),s=0,a=null,c=()=>K(null,null,function*(){let l=++s;r.value=true,i.value="pending",o.value=null;let h=e();a=h.then(()=>{});try{let y=yield h;l===s&&(n.value=y,i.value="ready",r.value=!1);}catch(y){l===s&&(o.value=y instanceof Error?y:new Error(String(y)),i.value="errored",r.value=false);}});c();let u=(()=>{if(r.value&&a){let l=me(he,null);l&&l.register(a);}return n.value});return u.loading=r,u.error=o,u.state=i,[u,{mutate:l=>{n.value=l,i.value="ready",r.value=false,o.value=null;},refetch:()=>K(null,null,function*(){yield c();})}]}var qe=0;function ge(){return `${qe++}`}function V(){qe=0;}function xe(){}function w(e,t=false){return shared.isNil(e)?"":shared.isString(e)?e:shared.isArray(e)?e.map(n=>w(n,t)).join(""):shared.isFunction(e)?w(e(),t):String(e)}function Je(e,t){let n=/^<([a-z]+)(\s*)([^>]*)>/i,r=/data-idx="(\d+)"/g,o=/<!--(.*?)-->/g;return e.replace(n,`<$1$2$3 data-hk="${t}">`).replaceAll(r,`data-idx="${t}-$1"`).replaceAll(o,`<!--${t}-$1-->`)}function dn(e,t){if(!shared.isFunction(e))return shared.error("Component must be a function"),"";V();let n=e(t);return w(n)}function mn(e,t,...n){let r="",o=0;for(let s of e)if(r+=s,o<n.length){let a=n[o++];a&&(r+=w(a));}return Je(r,t)}function pn(e,t={}){if(!shared.isFunction(e))return shared.error("create ssg component: Component is not a function"),"";let n=e(t);return w(n)}function nt(e){if(shared.isArray(e)){let t={};for(let n of e){let r=shared.isString(n)?An(n):nt(n);if(r)for(let o in r)t[o]=r[o];}return t}if(shared.isString(e)||shared.isObject(e))return e}var Nn=/;(?![^(]*\))/g,Sn=/:([\s\S]+)/,En=/\/\*[\s\S]*?\*\//g;function An(e){let t={};return e.replaceAll(En,"").split(Nn).forEach(n=>{if(n){let r=n.split(Sn);r.length>1&&(t[r[0].trim()]=r[1].trim());}}),t}function Cn(e){if(!e)return "";if(shared.isString(e))return e;let t="";for(let n in e){let r=e[n];if(shared.isString(r)||shared.isNumber(r)){let o=n.startsWith("--")?n:shared.kebabCase(n);t+=`${o}:${r};`;}}return t}function rt(e){let t="";if(shared.isString(e))t=e;else if(shared.isArray(e))for(let n of e){let r=rt(n);r&&(t+=`${r} `);}else if(shared.isObject(e))for(let n in e)e[n]&&(t+=`${n} `);return t.trim()}function ot(e,t,n){if(signals.isSignal(t)||signals.isComputed(t))return ot(e,t.value);if(!t&&t!==0)return "";if(e==="style"){let r=nt(t);return r?shared.isString(r)?` style="${r}"`:` style="${Cn(r)}"`:""}if(e==="class"){let r=rt(t);return r?` class="${r}"`:""}return e.startsWith("on")?"":t===true?` ${e}`:` ${e}="${t}"`}function bn(e){return ()=>{let t=ge();return document.querySelector(`[data-hk="${t}"]`)||fe(e)()}}function Tn(e,t){let n=e.dataset.hk;if(!n)return ue(e,t);let r=[],o=e.querySelectorAll(`[data-idx^="${n}"]`);o.length>0&&r.push(...Array.from(o).filter(c=>{let u=c.dataset.idx;return u!==null&&oe.test(u)}).map(c=>{let u=c.dataset.idx||"",[f,l]=u.split("-");return {hk:f,idx:l,node:c}}));let i=[],s=c=>{if(c.nodeType===Node.COMMENT_NODE&&c.textContent&&oe.test(c.textContent)){let[f,l]=c.textContent.split("-");i.push({hk:f,idx:l,node:c});}let u=c.firstChild;for(;u;)s(u),u=u.nextSibling;};s(e),r.push(...i);let a=[e];return t.forEach(c=>{let u=r.find(f=>f.idx===String(c));u&&a.push(u.node);}),a}function kn(e,t,n={}){V();try{let r=shared.isString(t)?document.querySelector(t):t;if(!r){shared.error("Hydration error: Root element not found");return}let o=j(e,n);return o.mount(r),xe(),o}catch(r){shared.error("Hydration error:",r);return}}
|
|
7
|
+
Object.defineProperty(exports,"escapeHTML",{enumerable:true,get:function(){return shared.escapeHTML}});exports.Component=W;exports.Fragment=tn;exports.Portal=rn;exports.Suspense=cn;exports.SuspenseContext=he;exports.addEvent=en;exports.addEventListener=E;exports.bindElement=Tt;exports.createApp=It;exports.createComponent=j;exports.createResource=Co;exports.createSSGComponent=pn;exports.delegateEvents=Mt;exports.getHydrationKey=ge;exports.getRenderedElement=bn;exports.hydrate=kn;exports.inject=me;exports.insert=kt;exports.isComponent=m;exports.isFragment=Zr;exports.isPortal=so;exports.isSuspense=go;exports.mapNodes=ue;exports.mapSSRNodes=Tn;exports.normalizeClass=q;exports.onDestroy=te;exports.onMount=ee;exports.onUpdate=dt;exports.patchAttr=Zt;exports.patchClass=zt;exports.patchStyle=Xt;exports.provide=de;exports.render=mn;exports.renderToString=dn;exports.setSSGAttr=ot;exports.setStyle=U;exports.template=fe;//# sourceMappingURL=template.cjs.js.map
|
|
7
8
|
//# sourceMappingURL=template.cjs.js.map
|