@stacksjs/stx 0.2.343 → 0.2.345
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/binding-manifest.d.ts +32 -0
- package/dist/binding-manifest.js +64 -0
- package/dist/{chunk-zr1x54bt.js → chunk-05zfez2g.js} +1 -1
- package/dist/{chunk-jagf7h9y.js → chunk-0k1mtwby.js} +1 -1
- package/dist/{chunk-jh6f1a9y.js → chunk-1c9453w0.js} +1 -1
- package/dist/chunk-1qyg1q6d.js +2 -0
- package/dist/chunk-1t4ece3v.js +2 -0
- package/dist/{chunk-7zxv2631.js → chunk-1vt1h19d.js} +1 -1
- package/dist/chunk-1vtdege3.js +2 -0
- package/dist/{chunk-stqm4brp.js → chunk-1vv9g6cj.js} +1 -1
- package/dist/{chunk-p3awq80d.js → chunk-1yh6pq6b.js} +1 -1
- package/dist/{chunk-57dxdvjh.js → chunk-223makqc.js} +1 -1
- package/dist/chunk-2fhk4e68.js +2 -0
- package/dist/{chunk-wyhb3nb0.js → chunk-34f8c48f.js} +1 -1
- package/dist/chunk-3zm4hgcf.js +2 -0
- package/dist/{chunk-xgw269cf.js → chunk-4spaszfn.js} +286 -286
- package/dist/chunk-57t402mn.js +2 -0
- package/dist/{chunk-wdaf98ya.js → chunk-59906baj.js} +1 -1
- package/dist/{chunk-z9hb80mk.js → chunk-64n10kpa.js} +1 -1
- package/dist/chunk-66tgkvqw.js +2 -0
- package/dist/{chunk-daxr6p6q.js → chunk-6fwp7gee.js} +1 -1
- package/dist/{chunk-1bfvdjpy.js → chunk-6h3r8v55.js} +1 -1
- package/dist/{chunk-safmgrq5.js → chunk-6wmjwbq9.js} +1 -1
- package/dist/{chunk-53sjbp3z.js → chunk-72x62kch.js} +2 -2
- package/dist/{chunk-amfq5rnz.js → chunk-72yrrggn.js} +2 -2
- package/dist/{chunk-2853ye06.js → chunk-77p1kjg2.js} +2 -2
- package/dist/chunk-7g5vk4c3.js +2 -0
- package/dist/{chunk-7mc1k1tq.js → chunk-7h9fajgs.js} +1 -1
- package/dist/{chunk-gvfgrve8.js → chunk-7m9qk7da.js} +1 -1
- package/dist/{chunk-3d3x7dwy.js → chunk-7qp3zphs.js} +1 -1
- package/dist/{chunk-grnmr3y1.js → chunk-86c461ca.js} +1 -1
- package/dist/chunk-86q2h34b.js +2 -0
- package/dist/{chunk-7r79j1hs.js → chunk-89mqnh67.js} +1 -1
- package/dist/{chunk-5hq25yky.js → chunk-8cc4vdkh.js} +1 -1
- package/dist/chunk-8rhjt6fh.js +2 -0
- package/dist/{chunk-45ydb29q.js → chunk-8v2k21n4.js} +1 -1
- package/dist/{chunk-aqxwwq6w.js → chunk-8y1ve8tc.js} +2 -2
- package/dist/{chunk-ag8gdk51.js → chunk-99b5tfxc.js} +1 -1
- package/dist/{chunk-4vd0rqfs.js → chunk-9jbssgem.js} +197 -88
- package/dist/{chunk-s60eccqk.js → chunk-9nrgjtah.js} +1 -1
- package/dist/{chunk-y5sxa2sq.js → chunk-9qtf2b1p.js} +1 -1
- package/dist/chunk-aapqf6bj.js +2 -0
- package/dist/{chunk-k8skvm0d.js → chunk-at622hg0.js} +1 -1
- package/dist/{chunk-1qtd4ex2.js → chunk-avwywzsj.js} +2 -2
- package/dist/{chunk-a0ajg9z5.js → chunk-b5hank5e.js} +1 -1
- package/dist/chunk-b5mnam29.js +2 -0
- package/dist/{chunk-4fafxr8d.js → chunk-bk1zb1xp.js} +1 -1
- package/dist/{chunk-hrdd26r4.js → chunk-bqdfbwdf.js} +1 -1
- package/dist/{chunk-c7qdnc5d.js → chunk-c30qnb6z.js} +1 -1
- package/dist/chunk-c4tf1vpy.js +2 -0
- package/dist/{chunk-g0dbtyk7.js → chunk-c8e2deyp.js} +1 -1
- package/dist/chunk-cypg8qwn.js +2 -0
- package/dist/{chunk-fbmjw0bh.js → chunk-d86q27j8.js} +1 -1
- package/dist/{chunk-dj5mqnp1.js → chunk-dgv43ccd.js} +1 -1
- package/dist/{chunk-em8cr7wy.js → chunk-dsztk2kp.js} +1 -1
- package/dist/{chunk-mwvxhv0r.js → chunk-dxkjvajv.js} +1 -1
- package/dist/{chunk-4pg6wbt6.js → chunk-e631svvs.js} +1 -1
- package/dist/chunk-e7gs18rc.js +2 -0
- package/dist/{chunk-h6y99nak.js → chunk-e7np0h2q.js} +1 -1
- package/dist/{chunk-0s3ry262.js → chunk-ejqpq0wc.js} +1 -1
- package/dist/chunk-ek2m0kkw.js +2 -0
- package/dist/chunk-eqzc88et.js +2 -0
- package/dist/chunk-erb294sv.js +2 -0
- package/dist/{chunk-36j9qset.js → chunk-esjcyxa9.js} +2 -2
- package/dist/{chunk-5azeswj2.js → chunk-evfr2zgg.js} +1 -1
- package/dist/{chunk-e53pwshq.js → chunk-fp868yhg.js} +1 -1
- package/dist/{chunk-5zemhhwe.js → chunk-gsc2vds7.js} +1 -1
- package/dist/{chunk-q6825wwz.js → chunk-gvemapw4.js} +1 -1
- package/dist/chunk-h1vax4wg.js +2 -0
- package/dist/chunk-hke0k33t.js +2 -0
- package/dist/{chunk-zcytk5w9.js → chunk-jekrtm2j.js} +1 -1
- package/dist/{chunk-pwhf5kte.js → chunk-jnbg3e4r.js} +1 -1
- package/dist/{chunk-brjfzbq9.js → chunk-kfkf9v2d.js} +1 -1
- package/dist/chunk-kq30wqp6.js +2 -0
- package/dist/{chunk-s7qbba8r.js → chunk-kqzpmwx2.js} +10 -10
- package/dist/{chunk-0dpgh7a6.js → chunk-kw9cgyfc.js} +1 -1
- package/dist/{chunk-0fp16c1x.js → chunk-m2j5skez.js} +1 -1
- package/dist/{chunk-vj3nx26v.js → chunk-mph46gkj.js} +1 -1
- package/dist/chunk-mr8ccsnm.js +2 -0
- package/dist/{chunk-1h1c2048.js → chunk-msywnv5n.js} +1 -1
- package/dist/{chunk-649dfqqz.js → chunk-n5657hm3.js} +1 -1
- package/dist/{chunk-t00ga194.js → chunk-njx93b4z.js} +1 -1
- package/dist/{chunk-m0xaw0qw.js → chunk-nm60wh6r.js} +1 -1
- package/dist/{chunk-8ah5mhst.js → chunk-nqz501eq.js} +2 -2
- package/dist/{chunk-hq3phk1a.js → chunk-nrt99ptw.js} +1 -1
- package/dist/{chunk-62vng8g8.js → chunk-pajk5680.js} +2 -2
- package/dist/{chunk-ey1tsk22.js → chunk-ppzz953j.js} +1 -1
- package/dist/{chunk-7yfk9393.js → chunk-qkdcbeaw.js} +1 -1
- package/dist/chunk-qr3zcm87.js +2 -0
- package/dist/chunk-r38xq7fp.js +33 -0
- package/dist/{chunk-tqw1yean.js → chunk-rwwfzkz4.js} +1 -1
- package/dist/{chunk-rns7wjy9.js → chunk-rzda6bd6.js} +1 -1
- package/dist/{chunk-rzg9pars.js → chunk-san1eq0r.js} +2 -2
- package/dist/{chunk-eh3meyd3.js → chunk-tc4pj651.js} +2 -2
- package/dist/{chunk-6g8rvnhc.js → chunk-v6e35j4g.js} +1 -1
- package/dist/{chunk-wnmegbw0.js → chunk-v7aa7v85.js} +1 -1
- package/dist/{chunk-e6rxvz3p.js → chunk-vhg91hnw.js} +1 -1
- package/dist/{chunk-k3dtvay1.js → chunk-vhta1be7.js} +1 -1
- package/dist/{chunk-tz68qv47.js → chunk-w5j9tbsk.js} +1 -1
- package/dist/{chunk-ec18ftcg.js → chunk-wj21f1e0.js} +1 -1
- package/dist/{chunk-12qteqk8.js → chunk-ws0282jr.js} +1 -1
- package/dist/chunk-x054qzma.js +2 -0
- package/dist/{chunk-q9ckfwhh.js → chunk-xj6bcwqa.js} +1 -1
- package/dist/chunk-xq0e2y4x.js +2 -0
- package/dist/chunk-xrjx7b2v.js +2 -0
- package/dist/{chunk-ay336sqb.js → chunk-xvh1k1a4.js} +1 -1
- package/dist/{chunk-vaggjvsm.js → chunk-y2f41kaq.js} +1 -1
- package/dist/{chunk-1zav2sf1.js → chunk-y6xzr30x.js} +1 -1
- package/dist/chunk-ybx8n794.js +2 -0
- package/dist/{chunk-yefnrr5z.js → chunk-yca761bm.js} +1 -1
- package/dist/{chunk-kgbz86sa.js → chunk-yg5r7bnm.js} +2 -2
- package/dist/{chunk-kbah2k8e.js → chunk-z8wb7kbj.js} +2 -2
- package/dist/chunk-zkxnarrh.js +2 -0
- package/dist/{chunk-hzbty7hz.js → chunk-zmazqcb8.js} +1 -1
- package/dist/chunk-zp14ksx1.js +2 -0
- package/dist/chunk-zwr4bn6a.js +2 -0
- package/dist/cli.js +14 -14
- package/dist/craft-entry.js +1 -1
- package/dist/craft.js +1 -1
- package/dist/database.js +1 -1
- package/dist/expressions.d.ts +1 -1
- package/dist/expressions.js +15 -3
- package/dist/includes.js +2 -2
- package/dist/pwa.js +2 -2
- package/dist/runtime-globals.d.ts +22 -0
- package/dist/runtime-globals.js +46 -0
- package/dist/signals.js +193 -84
- package/dist/slots.js +3 -3
- package/dist/ssg.js +2 -2
- package/dist/theme-tokens.d.ts +59 -0
- package/dist/theme-tokens.js +83 -17
- package/dist/ts-css-config.js +4 -2
- package/dist/utils.d.ts +10 -0
- package/dist/utils.js +77 -12
- package/dist/variable-extractor.d.ts +1 -1
- package/dist/variable-extractor.js +23 -3
- package/dist/visual-testing.js +1 -1
- package/package.json +5 -5
- package/dist/chunk-160g7ynw.js +0 -2
- package/dist/chunk-16hr5y08.js +0 -2
- package/dist/chunk-3h97y3n3.js +0 -2
- package/dist/chunk-3j915h2d.js +0 -2
- package/dist/chunk-4hkg6kx4.js +0 -2
- package/dist/chunk-57494khk.js +0 -2
- package/dist/chunk-5xavmr4t.js +0 -2
- package/dist/chunk-6rsfkms1.js +0 -2
- package/dist/chunk-6xs80tka.js +0 -32
- package/dist/chunk-905j49fe.js +0 -2
- package/dist/chunk-9czj483k.js +0 -2
- package/dist/chunk-9kv0qavn.js +0 -2
- package/dist/chunk-bcz8yp2g.js +0 -2
- package/dist/chunk-bxefsc7k.js +0 -2
- package/dist/chunk-c4kv3r8t.js +0 -2
- package/dist/chunk-fytemc96.js +0 -2
- package/dist/chunk-g7gc0ten.js +0 -2
- package/dist/chunk-gqsxxd81.js +0 -2
- package/dist/chunk-gx9z0wmm.js +0 -2
- package/dist/chunk-jnxzzzm4.js +0 -2
- package/dist/chunk-jy6jwxhs.js +0 -2
- package/dist/chunk-khqn40gv.js +0 -2
- package/dist/chunk-mhbzrh5y.js +0 -2
- package/dist/chunk-p8anntjb.js +0 -2
- package/dist/chunk-pwe51myj.js +0 -2
- package/dist/chunk-rqqdvnp5.js +0 -2
- package/dist/chunk-w1mbrq1g.js +0 -2
- package/dist/chunk-w84qe2m6.js +0 -2
- package/dist/chunk-wjm7hv5e.js +0 -2
- package/dist/chunk-yr7s02f7.js +0 -2
- package/dist/chunk-zq3tm2c2.js +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{Tr as h8,Xr as u8,fs as x7,gs as f7}from"./chunk-8y1ve8tc.js";import{ls as H0,ms as ZJ}from"./chunk-bqdfbwdf.js";import{os as m7,ps as d7,qs as J9,rs as X9}from"./chunk-89mqnh67.js";import{xs as t2}from"./chunk-xvh1k1a4.js";import{Cs as o1,Ds as w1,Es as l8,Fs as y1,Hs as H1,Is as iZ,Js as nZ,Ks as K2,Ls as n2,Ms as R9,Ns as y2,Os as A8,Ps as U8,Qs as B1,Rs as u0,Ss as X5,Ws as c8,Xs as f9,it as p8}from"./chunk-r38xq7fp.js";import{jt as g7,lt as h7,mt as u7,ot as L2}from"./chunk-y2f41kaq.js";import{qt as w4,rt as R4,st as N4,vt as M4,wt as A4}from"./chunk-xj6bcwqa.js";import{Bt as g9}from"./chunk-z8wb7kbj.js";import{Dt as IZ,Et as TZ,Ft as kZ,Gt as EZ,Ht as bZ,Jt as d8}from"./chunk-vhta1be7.js";import{Kt as s8,Lt as o8,Mt as r8,Nt as a8,Ot as l7,Pt as c7}from"./chunk-tc4pj651.js";import{Wt as v5,Xt as M0,Zt as x5,_t as G4,au as z4,hu as i8,lu as yZ,nu as CZ}from"./chunk-san1eq0r.js";import{$u as g8,Du as N0,Fu as N9,Gu as P$,Hu as D9,Ou as C2,Ru as x8,Tu as D0,Xu as S2,Yu as f8,_u as n0,gv as v$,hv as H6,jv as Y0,kv as j0,lv as d0,mv as w9,nv as Y2,ov as W0,pv as M9}from"./chunk-avwywzsj.js";import{qv as a0}from"./chunk-wj21f1e0.js";import{tv as n8}from"./chunk-d86q27j8.js";import{Bv as $J,Cv as V$,Dv as H8,Fv as c4,Iv as t4,uv as x$,vv as v2,wv as pZ,xv as s1}from"./chunk-72x62kch.js";import{$v as o6,Aw as V5,Dw as U2,Yv as g3,gw as A3,xw as m8,zw as bz}from"./chunk-yg5r7bnm.js";import{Iw as p7}from"./chunk-9nrgjtah.js";import{Nw as x}from"./chunk-ejqpq0wc.js";import P1 from"path";import f2 from"fs";var KJ=new Set(["touchstart","touchmove","wheel","mousewheel"]);function r9($,Z){if(Z.passive)return!0;if(Z.prevent||Z.nonpassive)return!1;return KJ.has($.toLowerCase())}var U$=new Set(["click","dblclick","mousedown","mouseup","mousemove","mouseenter","mouseleave","mouseover","mouseout","contextmenu","wheel","keydown","keyup","keypress","submit","reset","change","input","focus","blur","focusin","focusout","select","invalid","touchstart","touchend","touchmove","touchcancel","drag","dragstart","dragend","dragenter","dragleave","dragover","drop","scroll","resize","load","error","abort","animationstart","animationend","animationiteration","transitionstart","transitionend","transitionrun","transitioncancel","mounted","unmounted"]),j$={enter:"Enter",tab:"Tab",delete:"Delete",backspace:"Backspace",esc:"Escape",escape:"Escape",space:" ",up:"ArrowUp",down:"ArrowDown",left:"ArrowLeft",right:"ArrowRight",home:"Home",end:"End",pageup:"PageUp",pagedown:"PageDown"},qJ=new Set(["ctrl","alt","shift","meta"]),L$={left:0,middle:1,right:2};function B$($){let Z={prevent:!1,stop:!1,once:!1,capture:!1,self:!1,passive:!1,nonpassive:!1,keys:[],systemKeys:[],mouse:null,debounce:null,throttle:null};for(let J of $){let X=J.toLowerCase();if(X==="prevent")Z.prevent=!0;else if(X==="stop")Z.stop=!0;else if(X==="once")Z.once=!0;else if(X==="capture")Z.capture=!0;else if(X==="self")Z.self=!0;else if(X==="passive")Z.passive=!0;else if(X==="nonpassive")Z.nonpassive=!0;else if(qJ.has(X))Z.systemKeys.push(X);else if(X in L$)Z.mouse=X;else if(X in j$||/^[a-z]$/.test(X))Z.keys.push(j$[X]||X.toUpperCase());else if(X.startsWith("debounce")){let Y=X.match(/debounce(?:\.(\d+))?/);Z.debounce=Y?.[1]?Number.parseInt(Y[1],10):300}else if(X.startsWith("throttle")){let Y=X.match(/throttle(?:\.(\d+))?/);Z.throttle=Y?.[1]?Number.parseInt(Y[1],10):300}}return Z}function O$($){let Z=[],J=0,X=/<([a-z][a-z0-9-]*)\s+([^>]*@[a-z][^>]*)>/gi,Y;while((Y=X.exec($))!==null){let[Q,G,z]=Y,K=Y.index,q=K+Q.length,W=`__stx_evt_${J++}`,H=[],U=/@([a-z][a-z0-9.]*)\s*=\s*"([^"]*)"/gi,j;while((j=U.exec(z))!==null){let[,V,_]=j,O=V.split("."),F=O[0];if(!U$.has(F))continue;H.push({attribute:`@${V}`,event:F,handler:_,modifiers:B$(O.slice(1)),elementId:W})}let B=/@([a-z][a-z0-9.]*)\s*=\s*'([^']*)'/gi;while((j=B.exec(z))!==null){let[,V,_]=j,O=V.split("."),F=O[0];if(!U$.has(F))continue;H.push({attribute:`@${V}`,event:F,handler:_,modifiers:B$(O.slice(1)),elementId:W})}if(H.length>0)Z.push({originalTag:Q,elementId:W,events:H,startIndex:K,endIndex:q})}return Z}function WJ($){let Z=[],{modifiers:J}=$;if(J.self)Z.push("if ($event.target !== $el) return");for(let X of J.systemKeys)Z.push(`if (!$event.${X}Key) return`);if(J.keys.length>0){let X=J.keys.map((Y)=>`$event.key === '${Y}'`).join(" || ");Z.push(`if (!(${X})) return`)}if(J.mouse!==null){let X=L$[J.mouse];Z.push(`if ($event.button !== ${X}) return`)}if(J.prevent)Z.push("$event.preventDefault()");if(J.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function HJ($,Z){let J=$;if(Z.debounce!==null)J=`__stx_debounce(() => { ${J} }, ${Z.debounce})`;else if(Z.throttle!==null)J=`__stx_throttle(() => { ${J} }, ${Z.throttle})`;return J}function a9($){let Z=$.trim();if(!/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(Z))return $;return`if (typeof ${Z} === 'function' && !${Z}._isSignal) ${Z}($event);`}function UJ($){let{modifiers:Z}=$,J=$.elementId.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),X=WJ($),Y=HJ(a9($.handler),Z),Q=[];if(Z.once)Q.push("once: true");if(Z.capture)Q.push("capture: true");if(r9($.event,Z))Q.push("passive: true");let G=Q.length>0?`, { ${Q.join(", ")} }`:"",z=Y.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t");if($.event==="mounted")return`
|
|
3
3
|
(function() {
|
|
4
4
|
var $el = document.getElementById('${J}');
|
|
5
5
|
if (!$el) return;
|
|
@@ -53,7 +53,7 @@ else {
|
|
|
53
53
|
__stx_runHandler('${z}', $event, $el);
|
|
54
54
|
}
|
|
55
55
|
}${G});
|
|
56
|
-
})();`}function
|
|
56
|
+
})();`}function t9($){if($.length===0)return"";return`
|
|
57
57
|
<script data-stx-events>
|
|
58
58
|
(function() {
|
|
59
59
|
'use strict';
|
|
@@ -108,20 +108,20 @@ else {
|
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
// Event listeners
|
|
111
|
-
${$.map(
|
|
111
|
+
${$.map(UJ).join(`
|
|
112
112
|
`)}
|
|
113
113
|
})();
|
|
114
|
-
</script>`}function
|
|
115
|
-
`+Y.slice(G);else Y+=Q;return Y}function
|
|
114
|
+
</script>`}function jJ($){let Z=O$($);if(Z.length===0)return{template:$,bindings:[]};let J=$,X=[];for(let Y=Z.length-1;Y>=0;Y--){let Q=Z[Y],G=Q.originalTag;if(!G.includes(" id="))G=G.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${Q.elementId}"`);else{let z=G.match(/id=["']([^"']+)["']/);if(z)for(let K of Q.events)K.elementId=z[1]}for(let z of Q.events){let K=z.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),q=new RegExp(`\\s*${K}\\s*=\\s*"[^"]*"`,"g"),W=new RegExp(`\\s*${K}\\s*=\\s*'[^']*'`,"g");G=G.replace(q,""),G=G.replace(W,"")}J=J.slice(0,Q.startIndex)+G+J.slice(Q.endIndex),X.push(...Q.events)}return{template:J,bindings:X}}function _$($,Z,J){if(V$($))return $;if(Z.__stx_sfc_mode){if(/x-data\s*=\s*["']/.test($))return $;let{template:z,bindings:K}=jJ($),q=Z.__stx_event_bindings||[];return Z.__stx_event_bindings=[...q,...K],z}let X=O$($);if(X.length===0)return $;let Y=$;for(let z=X.length-1;z>=0;z--){let K=X[z],q=K.originalTag;if(!q.includes(" id="))q=q.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${K.elementId}"`);else{let W=q.match(/id=["']([^"']+)["']/);if(W)for(let H of K.events)H.elementId=W[1]}for(let W of K.events){let H=W.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),U=new RegExp(`\\s*${H}\\s*=\\s*"[^"]*"`,"g"),j=new RegExp(`\\s*${H}\\s*=\\s*'[^']*'`,"g");q=q.replace(U,""),q=q.replace(j,"")}Y=Y.slice(0,K.startIndex)+q+Y.slice(K.endIndex)}let Q=t9(X.flatMap((z)=>z.events)),G=Y.lastIndexOf("</body>");if(G!==-1)Y=Y.slice(0,G)+Q+`
|
|
115
|
+
`+Y.slice(G);else Y+=Q;return Y}function Iq($){return/@[a-z]+(?:\.[a-z]+)*\s*=\s*["'][^"']*["']/i.test($)}import sZ from"fs";import f from"path";import{createHash as BJ}from"crypto";var d2="__stx_component_client_factories";function l2($){let Z=$[d2];return Z instanceof Map?Z:null}function w$($){$[d2]=new Map}function e9($,Z){let J=l2($);if(!J)return null;let X=BJ("sha256").update(Z).digest("hex").slice(0,16),Y=J.get(X);if(Y)Y.instances++;else J.set(X,{body:Z,instances:1});return X}function R$($,Z){let J=l2(Z);if(!J?.size)return $;let X=new Map;for(let[W,H]of J)if(H.instances===1)X.set(W,H.body);let Y=[];if(X.size>0){let W=[...X.keys()].map((j)=>JSON.stringify(j).replace(/[$()*+.?[\\\]^{|}]/g,"\\$&")).join("|"),H=new RegExp(`window\\.__stxComponentFactories\\[(${W})\\]\\(("[^"]+")\\);`,"g"),U=H.exec($);while(U!==null){let j=X.get(JSON.parse(U[1]));if(j!==void 0)Y.push({start:U.index,end:U.index+U[0].length,replacement:`(${j})(${U[2]});`});U=H.exec($)}}let Q=[...J].filter(([,W])=>W.instances>1);if(Q.length===0)return F$($,Y);let z=`<script data-stx-scoped data-stx-run="always" data-stx-component-factories>
|
|
116
116
|
(function() {
|
|
117
117
|
const factories = window.__stxComponentFactories = window.__stxComponentFactories || {};
|
|
118
|
-
${Q.map(([W,
|
|
118
|
+
${Q.map(([W,H])=>` try { factories[${JSON.stringify(W)}] = factories[${JSON.stringify(W)}] || ${H.body}; }
|
|
119
119
|
catch (e) { console.error('[stx] component factory ' + ${JSON.stringify(W)} + ' failed to register; instances of it will not hydrate.', e); }`).join(`
|
|
120
120
|
`)}
|
|
121
121
|
})();
|
|
122
122
|
</script>`,K=$.search(/<script\b(?=[^>]*\bdata-stx-scoped\b)/i),q=K<0?0:K;return Y.push({start:q,end:q,replacement:`${z}
|
|
123
|
-
`}),_3($,Y)}function _3($,Z){if(Z.length===0)return $;Z.sort((Q,G)=>Q.start-G.start||Q.end-G.end);let J=Array(Z.length*2+1),X=0,Y=0;for(let Q of Z)J[Y++]=$.slice(X,Q.start),J[Y++]=Q.replacement,X=Q.end;return J[Y]=$.slice(X),J.join("")}function R3($){let Z=l2($),J=new Map;if(Z)for(let[X,Y]of Z)J.set(X,Y.instances);return J}function N3($,Z){let J=l2($);if(!J)return[];let X=[];for(let[Y,Q]of J){let G=Q.instances-(Z.get(Y)??0);if(G>0)X.push({body:Q.body,count:G})}return X}function D3($,Z){for(let{body:J,count:X}of Z)for(let Y=0;Y<X;Y++)t9($,J)}import T3 from"fs";var M3=0,c2=new Map;function Fq(){M3=0,c2.clear()}function p2($,Z){let J=M3++,X=`<!--__STX_${$.toUpperCase()}_${J}__-->`;return c2.set(X,{type:$,expression:Z}),X}function wq(){let $={};for(let[Z,J]of c2)$[Z]={type:J.type,expression:J.expression};return $}function Rq($){let Z={},J=/<!--__STX_(EXPR|COND|RAW)_(\d+)__-->/g,X;while((X=J.exec($))!==null){let Y=X[0],Q=X[1].toLowerCase(),G=c2.get(Y);Z[Y]={type:Q,expression:G?.expression||""}}return Z}function Nq($,Z){let J=$;for(let[X,Y]of Z)J=J.split(X).join(Y);return J}function Dq($){return $.includes("<!--__STX_")}var zJ=/@(?=[a-zA-Z_]\w*\s*\(|end[a-zA-Z]*\b|else(?:if)?\b|empty\b|case\b|default\b|break\b|continue\b|fallback\b)/g;function KJ($){return Array.from({length:$},()=>"{").join("⁠")}function A3($){return $.replace(/\{{2,}/g,(Z)=>KJ(Z.length)).replace(/\{(?=!)/g,"{⁠").replace(zJ,"@")}var qJ=/^(?:javascript|vbscript|livescript|mocha|view-source):/,WJ=/^data:(?:text\/html|text\/xml|application\/xhtml\+xml|application\/xml|image\/svg\+xml)/,UJ=/^data:(?:text\/html|application\/xhtml\+xml)/,HJ=new RegExp("[\\u0000-\\u0020\\u00A0\\u1680\\u2000-\\u200F\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]+","g");function jJ($){return $.replace(HJ,"").toLowerCase()}function BJ($){let Z=$.toLowerCase();if(new RegExp("^(?:href|xlink:href|action|formaction|ping|cite|manifest|data|to)$").test(Z))return"navigable";if(new RegExp("^(?:src|srcset|poster|background)$").test(Z))return"fetched";return null}function I3($,Z="navigable"){let J=jJ($);if(qJ.test(J))return!0;return Z==="navigable"?WJ.test(J):UJ.test(J)}function Q2($,Z="navigable"){return I3($,Z)?"unsafe:"+$:$}function VJ($){let Z=$.match(/(?:^|[\s"'`/])([A-Za-z][\w:-]*)\s*=\s*(["'])([^"']*)$/);if(!Z)return null;if(Z[3].trim()!=="")return null;return BJ(Z[1])}function e9($,Z,J=256){if(Z<=J)return $.slice(0,Z);let X=$.slice(Z-J,Z),Y=X.search(/[\s"'`/]/);return Y===-1?"":X.slice(Y)}function $5($,Z,J=Z){let X=VJ($);return X&&I3(Z,X)?"unsafe:"+J:J}var K2={},k3=new Map;function LJ($){let Z=k3.get($);if(!Z){let J=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${J}(?!\\w)`,"g"),k3.set($,Z)}return Z.lastIndex=0,Z}var s2={uppercase:($,Z)=>{return $!==void 0&&$!==null?String($).toUpperCase():""},lowercase:($,Z)=>{return $!==void 0&&$!==null?String($).toLowerCase():""},capitalize:($,Z)=>{if($===void 0||$===null)return"";let J=String($);return J.charAt(0).toUpperCase()+J.slice(1)},number:($,Z,J=0)=>{if($===void 0||$===null)return"";try{let X=Number($);return Number.isNaN(X)?"":X.toFixed(Number.parseInt(String(J),10))}catch{return""}},fmt:($,Z,J="en-US")=>{if($===void 0||$===null)return"";try{let X=Number($);if(Number.isNaN(X))return String($);return X.toLocaleString(J)}catch{return String($)}},join:($,Z,J=",")=>{if(!Array.isArray($))return"";return $.join(String(J))},escape:($,Z)=>{if($===void 0||$===null)return"";return Y5(String($))},translate:($,Z,J={})=>{if(!Z||!Z.__translations)return $;let X=Z.__translations,Y=Z.__i18nConfig?.fallbackToKey??!0,Q=String($).split("."),G=X;for(let K of Q){if(G===void 0||G===null)break;G=G[K]}if(G===void 0||G===null)return Y?$:"";let z=String(G);return Object.entries(J).forEach(([K,q])=>{z=z.replace(LJ(K),String(q))}),z},t:($,Z,J={})=>{return s2.translate($,Z,J)},truncate:($,Z,J=50,X="...")=>{if($===void 0||$===null)return"";let Y=String($);if(Y.length<=J)return Y;if(J<=X.length)return X.substring(0,J);return Y.substring(0,J-X.length)+X},date:($,Z,J="short",X="en-US")=>{if($===void 0||$===null)return"";try{let Y=$ instanceof Date?$:new Date($);if(Number.isNaN(Y.getTime()))return String($);let Q={short:{dateStyle:"short"},medium:{dateStyle:"medium"},long:{dateStyle:"long"},full:{dateStyle:"full"},time:{timeStyle:"short"},datetime:{dateStyle:"short",timeStyle:"short"},iso:{}};if(J==="iso")return Y.toISOString();return new Intl.DateTimeFormat(X,Q[J]||Q.short).format(Y)}catch{return String($)}},currency:($,Z,J="USD",X="en-US")=>{if($===void 0||$===null)return"";try{let Y=Number($);if(Number.isNaN(Y))return String($);return new Intl.NumberFormat(X,{style:"currency",currency:J}).format(Y)}catch{return String($)}},pluralize:($,Z,J,X)=>{let Y=Number($);if(Number.isNaN(Y))return J;let Q=X||`${J}s`;return Y===1?J:Q},first:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return $.length===0?"":$[0];return String($).charAt(0)},last:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return $.length===0?"":$[$.length-1];let J=String($);return J.charAt(J.length-1)},length:($,Z)=>{if($===void 0||$===null)return 0;if(Array.isArray($)||typeof $==="string")return $.length;if($ instanceof Map||$ instanceof Set)return $.size;if(typeof $==="object")return Object.keys($).length;return 0},json:($,Z,J=!1)=>{if($===void 0)return"undefined";if($===null)return"null";try{return J?JSON.stringify($,null,2):JSON.stringify($)}catch{return String($)}},default:($,Z,J="")=>{return $===void 0||$===null||$===""?J:$},reverse:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return[...$].reverse();return String($).split("").reverse().join("")},slice:($,Z,J=0,X)=>{if($===void 0||$===null)return"";if(Array.isArray($)||typeof $==="string")return $.slice(J,X);return $},replace:($,Z,J,X="")=>{if($===void 0||$===null)return"";let Y=J.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return String($).replace(new RegExp(Y,"g"),()=>X)},stripTags:($,Z)=>{if($===void 0||$===null)return"";return String($).replace(/<[^>]*>/g,"")},urlencode:($,Z)=>{if($===void 0||$===null)return"";return encodeURIComponent(String($))},abs:($,Z)=>{let J=Number($);return Number.isNaN(J)?0:Math.abs(J)},round:($,Z,J=0)=>{let X=Number($);if(Number.isNaN(X))return 0;let Y=10**J;return Math.round(X*Y)/Y}};function OJ($,Z){if($ in s2)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);K2[$]=Z}function fq($){for(let[Z,J]of Object.entries($))OJ(Z,J)}function _J(){return{...s2,...K2}}function gq(){for(let $ of Object.keys(K2))delete K2[$]}function FJ($,Z,J=2){let X=0,Y=null;for(let Q=Z+J;Q<$.length;Q++){let G=$[Q];if(Y){if(G==="\\"){Q++;continue}if(G===Y)Y=null;continue}if(G==='"'||G==="'"||G==="`"){Y=G;continue}if(G==="{"){X++;continue}if(G==="}"){if(X>0){X--;continue}let z=0;while($[Q+z]==="}")z++;if(z>=J)return Q}}return-1}function i2($,Z,J=2){let X="{".repeat(J);if(!$.includes(X))return $;let Y="",Q=0;for(;;){let G=$.indexOf(X,Q);if(G===-1)break;let z=FJ($,G,J);if(z===-1)break;Y+=$.slice(Q,G)+Z($.slice(G,z+J),$.slice(G+J,z),G),Q=z+J}return Q===0?$:Y+$.slice(Q)}function X5($){return $.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Y5($){return A3(X5($))}function J1($,Z){let{scripts:J}=c0($);for(let X of J){let Y=X.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i);if(!Y||/\bserver\b|\bsrc\s*=/.test(Y[1]))continue;let Q=Y[2];if(/\b(state|derived|effect|ref|reactive|computed|watch|watchEffect|useModel)\s*(?:<[^>]*>)?\s*\(/.test(Q))return!0;if(C3(Q,Z))return!0}if(/@(if|for|show)\s*=\s*["'][^"']*\(\s*\)/.test($))return!0;if(/@for\s*=\s*["'][^"']*\s+(?:in|of)\s+[^"']*\(\s*\)/.test($))return!0;if(/(?:^|[\s"'])(?::|x-)(?:for|if|else-if|else|show|text|html|model|bind)\b/.test($))return!0;return!1}function E3($,Z){let J=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","URL","URLSearchParams","Intl","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined","NaN","Infinity","isNaN","isFinite","window","document","console","new","typeof","instanceof","in","void"],X=$.replace(/'[^']*'/g,"").replace(/"[^"]*"/g,""),Y="",Q=!1,G=0;for(let q=0;q<X.length;q++){let W=X[q];if(!Q&&W==="`"){Q=!0,G=0;continue}if(Q){if(W==="`"&&G===0){Q=!1;continue}if(W==="$"&&X[q+1]==="{"){G++,q++,Y+=" ";continue}if(W==="}"&&G>0){G--;continue}if(G>0){Y+=W;continue}continue}Y+=W}X=Y;let z=/(?<![a-zA-Z0-9_$])([a-zA-Z_$][a-zA-Z0-9_$]*)/g,K;while((K=z.exec(X))!==null){let q=K[1];if(!X.substring(0,K.index).trimEnd().endsWith(".")){if(!J.includes(q)&&!(q in Z))return!1}}return!0}function wJ($,Z){let J=Z.__stx_serverDeclared;if(!J||J.size===0)return!1;let X=W0($);for(let Y of J)if(new RegExp(`(?<![.#\\w$])${Y}(?![\\w$])`).test(X))return!0;return!1}function Q5($,Z){let J=$;return J=J.replace(/\{!!([\s\S]*?)!!\}/g,(X,Y)=>{try{let Q=x0(Y,Z);if(Q===void 0)return X;return Q===null?"":String(Q)}catch{return X}}),J=i2(J,(X,Y,Q)=>{let G=Y.trim();if(/^__[A-Z_]+__$/.test(G))return X;try{let z=x0(Y,Z);if(z===void 0)return X;return JSON.stringify(z).replace(/</g,"\\u003c")}catch{return X}}),J}function RJ($,Z){if(!$.includes("{"))return $;let J=$;return J=J.replace(/\{!!([\s\S]*?)!!\}/g,(X,Y)=>{try{let Q=x0(Y,Z);if(Q===void 0)return X;return Q===null?"":String(Q)}catch{return X}}),J=i2(J,(X,Y,Q)=>{let G=Y.trim();if(/^__[A-Z_]+__$/.test(G))return X;try{let z=x0(Y,Z);if(z===void 0)return X;if(z===null)return"";let K=String(z);return $5(e9(J,Q),K,Y5(K))}catch{return X}}),J}function hq($,Z,J={}){let{output:X,scripts:Y}=c0($),Q=Y.map((G)=>{let z=G.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i),K=G.match(/^<script\b[^>]*>/i),q=G.search(/<\/script\s*>$/i);if(!z||!K||q===-1)return G;let W=z[1],U=z[2];if(/\bdata-raw\b/.test(W))return G;if(J.skipServer&&/\bserver\b/.test(W))return G;let j=`<script${RJ(W,Z)}>`;if(/\bsrc\s*=/.test(W)||/\btype\s*=\s*["']application\/json["']/.test(W))return j+U+G.slice(q);return j+Q5(U,Z)+G.slice(q)});return J5(X,Q)}function B1($,Z,J){let X=$,Y=(U,H)=>{let j=n2(U,H);if(j===-1)return-1;return/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/.test(U.slice(H,j))?-1:j},Q=(U,H,j,B)=>{let V=j.length,{output:_,tokens:O}=j1(U,H,(F,L)=>B(V+L));return j.push(...O),_},G=[];X=Q(X,Y,G,(U)=>`<!--__STX_STYLE_${U}__-->`);let z=[];X=Q(X,z2,z,(U)=>`<!--__STX_SCRIPT_EXPR_${U}__-->`);let K=Z?.__stx_signals_gate===!0||J1($),q=new Set(Array.isArray(Z?.__stx_client_signal_names)?Z.__stx_client_signal_names:[]),W=new Set(Array.isArray(Z?.__stx_preserved_client_expressions)?Z.__stx_preserved_client_expressions:[]);if(X=i2(X,(U,H,j)=>{try{let B=x0(H,Z,!1,(V)=>Z5(V,U,J,$));return B!==void 0&&B!==null?String(B):""}catch(B){let V=B instanceof Error?B.message:String(B);return O0("Expression",`Error evaluating: {{{ ${H.trim()}}}}: ${V}`,J,$,j,U)}},3),X=X.replace(/\{!!([\s\S]*?)!!\}/g,(U,H,j)=>{try{let B=x0(H,Z,!1,(V)=>Z5(V,U,J,$));if(B===void 0&&Z.__stx_buildMode==="compile")return p2("raw",H.trim());return B!==void 0&&B!==null?String(B):""}catch(B){if(Z.__stx_buildMode==="compile")return p2("raw",H.trim());let V=B instanceof Error?B.message:String(B);return O0("Expression",`Error evaluating: {!! ${H.trim()} !!}: ${V}`,J,$,j,U)}}),X=Q(X,z2,z,(U)=>`<!--__STX_SCRIPT_EXPR_${U}__-->`),X=Q(X,Y,G,(U)=>`<!--__STX_STYLE_${U}__-->`),X=i2(X,(U,H,j)=>{let B=H.trim();if(W.has(B))return U;let V=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined"],_=/^([a-zA-Z_$][a-zA-Z0-9_$]*)/,F=B.match(_)?.[1],L=F&&((F in Z)||V.includes(F)),w=Boolean(F&&q.has(F)),N=/^([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/,R=B.match(N),M=R&&!V.includes(R[1])&&!(R[1]in Z);if(/^__[A-Z_]+__$/.test(B))return"";let T;try{let D=x0(H,Z,!1,(k)=>{T=k});if(w)return U;if(K&&!E3(B,Z))return U;if(T)Z5(T,U,J,$);if(Z.__stx_buildMode==="compile"&&!K&&(D===void 0||wJ(B,Z)))return p2("expr",B);if(D===void 0||D===null)return"";let I=String(D);return $5(e9(X,j),I,Y5(I))}catch(D){if(w)return U;if(K&&!E3(B,Z))return U;if(M)return U;let I=D instanceof Error?D.message:String(D);return O0("Expression",`Error evaluating: {{ ${B} }}: ${I}`,J,$,j,U)}}),z.length>0)X=X.replace(/<!--__STX_SCRIPT_EXPR_(\d+)__-->/g,(U,H)=>z[Number(H)]??U);if(G.length>0)X=X.replace(/<!--__STX_STYLE_(\d+)__-->/g,(U,H)=>G[Number(H)]??U);return X}function NJ($,Z,J){if(!Z.trim())return $;let X=$,Y=Z.trim();while(Y.length>0){let Q=Y.match(/^(\w+)/);if(!Q)break;let G=Q[1];Y=Y.substring(G.length).trim();let z=K2[G]||s2[G];if(!z)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(_J()).join(", ")}`);let K=[];if(Y.startsWith(":")){let q=Y.match(/^:([^|\s]+)/);if(q){let W=q[1].trim();try{let U=Number(W);K=[Number.isNaN(U)?W:U]}catch{K=[W]}Y=Y.substring(q[0].length).trim()}}else if(Y.startsWith("(")){let q=1,W=1;while(q>0&&W<Y.length){if(Y[W]==="(")q++;if(Y[W]===")")q--;W++}if(q===0){let U=Y.substring(1,W-1).trim();if(U)try{if(U.startsWith("{")&&U.endsWith("}"))K=[x0(`(${U})`,J,!0)];else{let H=[],j="",B=null,V=0,_=0,O=0,F=!1;for(let L=0;L<U.length;L++){let w=U[L];if(F){j+=w,F=!1;continue}if(w==="\\"){j+=w,F=!0;continue}if(B){if(j+=w,w===B)B=null;continue}if(w==='"'||w==="'"||w==="`"){B=w,j+=w;continue}if(w==="(")V++;else if(w===")")V--;else if(w==="[")_++;else if(w==="]")_--;else if(w==="{")O++;else if(w==="}")O--;if(w===","&&V===0&&_===0&&O===0){H.push(j),j="";continue}j+=w}if(j)H.push(j);K=H.map((L)=>{let w=L.trim();return x0(w,J,!0)})}}catch{K=[U]}Y=Y.substring(W).trim()}}try{X=z(X,J,...K)}catch(q){let W=q instanceof Error?q.message:String(q);throw Error(`Error applying filter '${G}': ${W}`)}if(Y.startsWith("|"))Y=Y.substring(1).trim();else break}return X}function DJ($){let Z=!1,J="",X=0,Y=0,Q=0,G=!1;for(let z=0;z<$.length;z++){let K=$[z],q=$[z+1];if(Z&&G){G=!1;continue}if(Z&&K==="\\"){G=!0;continue}if(G=!1,(K==='"'||K==="'"||K==="`")&&!G){if(!Z)Z=!0,J=K;else if(K===J)Z=!1,J="";continue}if(Z&&J==="`"&&K==="$"&&q==="{"){let W=1;z+=2;while(z<$.length&&W>0){if($[z]==="{")W++;else if($[z]==="}")W--;if(W>0)z++}continue}if(Z)continue;if(K==="(")X++;else if(K===")")X--;else if(K==="[")Y++;else if(K==="]")Y--;else if(K==="{")Q++;else if(K==="}")Q--;if(K==="|"&&X===0&&Y===0&&Q===0){if(q==="|"){z++;continue}if(q==="="){z++;continue}return z}}return-1}var G2=new Set,MJ=1000;function uq(){G2.clear()}function Z5($,Z,J,X){if(!b3())return;let Y=`${J}\x00${$.expression}`;if(G2.has(Y))return;if(G2.size>=MJ)G2.clear();G2.add(Y);let Q=J,G=X;try{if(J&&T3.existsSync(J))G=T3.readFileSync(J,"utf8")}catch{}let z=G.indexOf(Z);if(z>=0)Q=`${J}:${G.slice(0,z).split(`
|
|
124
|
-
`).length}`;console.warn(`${Q}: stx warning: ${Z} rendered as an empty string. The safe evaluator rejected \`${$.expression}\` (${$.rule}). Compute the value in <script server> and interpolate the variable instead.`)}function
|
|
123
|
+
`}),F$($,Y)}function F$($,Z){if(Z.length===0)return $;Z.sort((Q,G)=>Q.start-G.start||Q.end-G.end);let J=Array(Z.length*2+1),X=0,Y=0;for(let Q of Z)J[Y++]=$.slice(X,Q.start),J[Y++]=Q.replacement,X=Q.end;return J[Y]=$.slice(X),J.join("")}function N$($){let Z=l2($),J=new Map;if(Z)for(let[X,Y]of Z)J.set(X,Y.instances);return J}function D$($,Z){let J=l2($);if(!J)return[];let X=[];for(let[Y,Q]of J){let G=Q.instances-(Z.get(Y)??0);if(G>0)X.push({body:Q.body,count:G})}return X}function M$($,Z){for(let{body:J,count:X}of Z)for(let Y=0;Y<X;Y++)e9($,J)}import k$ from"fs";var A$=0,c2=new Map;function bq(){A$=0,c2.clear()}function p2($,Z){let J=A$++,X=`<!--__STX_${$.toUpperCase()}_${J}__-->`;return c2.set(X,{type:$,expression:Z}),X}function yq(){let $={};for(let[Z,J]of c2)$[Z]={type:J.type,expression:J.expression};return $}function Cq($){let Z={},J=/<!--__STX_(EXPR|COND|RAW)_(\d+)__-->/g,X;while((X=J.exec($))!==null){let Y=X[0],Q=X[1].toLowerCase(),G=c2.get(Y);Z[Y]={type:Q,expression:G?.expression||""}}return Z}function Sq($,Z){let J=$;for(let[X,Y]of Z)J=J.split(X).join(Y);return J}function Pq($){return $.includes("<!--__STX_")}var VJ=/@(?=[a-zA-Z_]\w*\s*\(|end[a-zA-Z]*\b|else(?:if)?\b|empty\b|case\b|default\b|break\b|continue\b|fallback\b)/g;function LJ($){return Array.from({length:$},()=>"{").join("⁠")}function I$($){return $.replace(/\{{2,}/g,(Z)=>LJ(Z.length)).replace(/\{(?=!)/g,"{⁠").replace(VJ,"@")}var OJ=/^(?:javascript|vbscript|livescript|mocha|view-source):/,_J=/^data:(?:text\/html|text\/xml|application\/xhtml\+xml|application\/xml|image\/svg\+xml)/,FJ=/^data:(?:text\/html|application\/xhtml\+xml)/,wJ=new RegExp("[\\u0000-\\u0020\\u00A0\\u1680\\u2000-\\u200F\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]+","g");function RJ($){return $.replace(wJ,"").toLowerCase()}function NJ($){let Z=$.toLowerCase();if(new RegExp("^(?:href|xlink:href|action|formaction|ping|cite|manifest|data|to)$").test(Z))return"navigable";if(new RegExp("^(?:src|srcset|poster|background)$").test(Z))return"fetched";return null}function T$($,Z="navigable"){let J=RJ($);if(OJ.test(J))return!0;return Z==="navigable"?_J.test(J):FJ.test(J)}function G2($,Z="navigable"){return T$($,Z)?"unsafe:"+$:$}function DJ($){let Z=$.match(/(?:^|[\s"'`/])([A-Za-z][\w:-]*)\s*=\s*(["'])([^"']*)$/);if(!Z)return null;if(Z[3].trim()!=="")return null;return NJ(Z[1])}function $5($,Z,J=256){if(Z<=J)return $.slice(0,Z);let X=$.slice(Z-J,Z),Y=X.search(/[\s"'`/]/);return Y===-1?"":X.slice(Y)}function Z5($,Z,J=Z){let X=DJ($);return X&&T$(Z,X)?"unsafe:"+J:J}var q2={},E$=new Map;function MJ($){let Z=E$.get($);if(!Z){let J=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${J}(?!\\w)`,"g"),E$.set($,Z)}return Z.lastIndex=0,Z}var s2={uppercase:($,Z)=>{return $!==void 0&&$!==null?String($).toUpperCase():""},lowercase:($,Z)=>{return $!==void 0&&$!==null?String($).toLowerCase():""},capitalize:($,Z)=>{if($===void 0||$===null)return"";let J=String($);return J.charAt(0).toUpperCase()+J.slice(1)},number:($,Z,J=0)=>{if($===void 0||$===null)return"";try{let X=Number($);return Number.isNaN(X)?"":X.toFixed(Number.parseInt(String(J),10))}catch{return""}},fmt:($,Z,J="en-US")=>{if($===void 0||$===null)return"";try{let X=Number($);if(Number.isNaN(X))return String($);return X.toLocaleString(J)}catch{return String($)}},join:($,Z,J=",")=>{if(!Array.isArray($))return"";return $.join(String(J))},escape:($,Z)=>{if($===void 0||$===null)return"";return Q5(String($))},translate:($,Z,J={})=>{if(!Z||!Z.__translations)return $;let X=Z.__translations,Y=Z.__i18nConfig?.fallbackToKey??!0,Q=String($).split("."),G=X;for(let K of Q){if(G===void 0||G===null)break;G=G[K]}if(G===void 0||G===null)return Y?$:"";let z=String(G);return Object.entries(J).forEach(([K,q])=>{z=z.replace(MJ(K),String(q))}),z},t:($,Z,J={})=>{return s2.translate($,Z,J)},truncate:($,Z,J=50,X="...")=>{if($===void 0||$===null)return"";let Y=String($);if(Y.length<=J)return Y;if(J<=X.length)return X.substring(0,J);return Y.substring(0,J-X.length)+X},date:($,Z,J="short",X="en-US")=>{if($===void 0||$===null)return"";try{let Y=$ instanceof Date?$:new Date($);if(Number.isNaN(Y.getTime()))return String($);let Q={short:{dateStyle:"short"},medium:{dateStyle:"medium"},long:{dateStyle:"long"},full:{dateStyle:"full"},time:{timeStyle:"short"},datetime:{dateStyle:"short",timeStyle:"short"},iso:{}};if(J==="iso")return Y.toISOString();return new Intl.DateTimeFormat(X,Q[J]||Q.short).format(Y)}catch{return String($)}},currency:($,Z,J="USD",X="en-US")=>{if($===void 0||$===null)return"";try{let Y=Number($);if(Number.isNaN(Y))return String($);return new Intl.NumberFormat(X,{style:"currency",currency:J}).format(Y)}catch{return String($)}},pluralize:($,Z,J,X)=>{let Y=Number($);if(Number.isNaN(Y))return J;let Q=X||`${J}s`;return Y===1?J:Q},first:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return $.length===0?"":$[0];return String($).charAt(0)},last:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return $.length===0?"":$[$.length-1];let J=String($);return J.charAt(J.length-1)},length:($,Z)=>{if($===void 0||$===null)return 0;if(Array.isArray($)||typeof $==="string")return $.length;if($ instanceof Map||$ instanceof Set)return $.size;if(typeof $==="object")return Object.keys($).length;return 0},json:($,Z,J=!1)=>{if($===void 0)return"undefined";if($===null)return"null";try{return J?JSON.stringify($,null,2):JSON.stringify($)}catch{return String($)}},default:($,Z,J="")=>{return $===void 0||$===null||$===""?J:$},reverse:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return[...$].reverse();return String($).split("").reverse().join("")},slice:($,Z,J=0,X)=>{if($===void 0||$===null)return"";if(Array.isArray($)||typeof $==="string")return $.slice(J,X);return $},replace:($,Z,J,X="")=>{if($===void 0||$===null)return"";let Y=J.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return String($).replace(new RegExp(Y,"g"),()=>X)},stripTags:($,Z)=>{if($===void 0||$===null)return"";return String($).replace(/<[^>]*>/g,"")},urlencode:($,Z)=>{if($===void 0||$===null)return"";return encodeURIComponent(String($))},abs:($,Z)=>{let J=Number($);return Number.isNaN(J)?0:Math.abs(J)},round:($,Z,J=0)=>{let X=Number($);if(Number.isNaN(X))return 0;let Y=10**J;return Math.round(X*Y)/Y}};function AJ($,Z){if($ in s2)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);q2[$]=Z}function sq($){for(let[Z,J]of Object.entries($))AJ(Z,J)}function IJ(){return{...s2,...q2}}function oq(){for(let $ of Object.keys(q2))delete q2[$]}function TJ($,Z,J=2){let X=0,Y=null;for(let Q=Z+J;Q<$.length;Q++){let G=$[Q];if(Y){if(G==="\\"){Q++;continue}if(G===Y)Y=null;continue}if(G==='"'||G==="'"||G==="`"){Y=G;continue}if(G==="{"){X++;continue}if(G==="}"){if(X>0){X--;continue}let z=0;while($[Q+z]==="}")z++;if(z>=J)return Q}}return-1}function i2($,Z,J=2){let X="{".repeat(J);if(!$.includes(X))return $;let Y="",Q=0;for(;;){let G=$.indexOf(X,Q);if(G===-1)break;let z=TJ($,G,J);if(z===-1)break;Y+=$.slice(Q,G)+Z($.slice(G,z+J),$.slice(G+J,z),G),Q=z+J}return Q===0?$:Y+$.slice(Q)}function Y5($){return $.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Q5($){return I$(Y5($))}function X1($,Z){let{scripts:J}=u0($);for(let X of J){let Y=X.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i);if(!Y||/\bserver\b|\bsrc\s*=/.test(Y[1]))continue;let Q=Y[2];if(/\b(state|derived|effect|ref|reactive|computed|watch|watchEffect|useModel)\s*(?:<[^>]*>)?\s*\(/.test(Q))return!0;if(x$(Q,Z))return!0}if(/@(if|for|show)\s*=\s*["'][^"']*\(\s*\)/.test($))return!0;if(/@for\s*=\s*["'][^"']*\s+(?:in|of)\s+[^"']*\(\s*\)/.test($))return!0;if(/(?:^|[\s"'])(?::|x-)(?:for|if|else-if|else|show|text|html|model|bind)\b/.test($))return!0;return!1}function b$($,Z){let J=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","URL","URLSearchParams","Intl","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined","NaN","Infinity","isNaN","isFinite","window","document","console","new","typeof","instanceof","in","void"],X=$.replace(/'[^']*'/g,"").replace(/"[^"]*"/g,""),Y="",Q=!1,G=0;for(let q=0;q<X.length;q++){let W=X[q];if(!Q&&W==="`"){Q=!0,G=0;continue}if(Q){if(W==="`"&&G===0){Q=!1;continue}if(W==="$"&&X[q+1]==="{"){G++,q++,Y+=" ";continue}if(W==="}"&&G>0){G--;continue}if(G>0){Y+=W;continue}continue}Y+=W}X=Y;let z=/(?<![a-zA-Z0-9_$])([a-zA-Z_$][a-zA-Z0-9_$]*)/g,K;while((K=z.exec(X))!==null){let q=K[1];if(!X.substring(0,K.index).trimEnd().endsWith(".")){if(!J.includes(q)&&!(q in Z))return!1}}return!0}function kJ($,Z){let J=Z.__stx_serverDeclared;if(!J||J.size===0)return!1;let X=H0($);for(let Y of J)if(new RegExp(`(?<![.#\\w$])${Y}(?![\\w$])`).test(X))return!0;return!1}var y$=new Set;function C$($){return/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)*$/.test($.trim())}function S$($,Z){let J=`${Z??"<unknown>"}\x00${$}`;if(process.env.STX_DEBUG||!y$.has(J))y$.add(J),console.warn(`[stx] {{ ${$} }} in a <script> in ${Z??"<unknown>"} has no server value, so it was emitted as undefined. A mustache left in JavaScript is a SyntaxError that takes the whole script down, so give the value a default in <script server>.`);return"undefined"}function G5($,Z,J){let X=$;return X=X.replace(/\{!!([\s\S]*?)!!\}/g,(Y,Q)=>{try{let G=C0(Q,Z);if(G===void 0)return C$(Q)?S$(Q.trim(),J):Y;return G===null?"":String(G)}catch{return Y}}),X=i2(X,(Y,Q,G)=>{let z=Q.trim();if(/^__[A-Z_]+__$/.test(z))return Y;try{let K=C0(Q,Z);if(K===void 0)return C$(z)?S$(z,J):Y;return JSON.stringify(K).replace(/</g,"\\u003c")}catch{return Y}}),X}function EJ($,Z){if(!$.includes("{"))return $;let J=$;return J=J.replace(/\{!!([\s\S]*?)!!\}/g,(X,Y)=>{try{let Q=C0(Y,Z);if(Q===void 0)return X;return Q===null?"":String(Q)}catch{return X}}),J=i2(J,(X,Y,Q)=>{let G=Y.trim();if(/^__[A-Z_]+__$/.test(G))return X;try{let z=C0(Y,Z);if(z===void 0)return X;if(z===null)return"";let K=String(z);return Z5($5(J,Q),K,Q5(K))}catch{return X}}),J}function rq($,Z,J={}){let{output:X,scripts:Y}=u0($),Q=Y.map((G)=>{let z=G.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i),K=G.match(/^<script\b[^>]*>/i),q=G.search(/<\/script\s*>$/i);if(!z||!K||q===-1)return G;let W=z[1],H=z[2];if(/\bdata-raw\b/.test(W))return G;if(J.skipServer&&/\bserver\b/.test(W))return G;let j=`<script${EJ(W,Z)}>`;if(/\bsrc\s*=/.test(W)||/\btype\s*=\s*["']application\/json["']/.test(W))return j+H+G.slice(q);return j+G5(H,Z)+G.slice(q)});return X5(X,Q)}function V1($,Z,J){let X=$,Y=(H,U)=>{let j=n2(H,U);if(j===-1)return-1;return/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/.test(H.slice(U,j))?-1:j},Q=(H,U,j,B)=>{let V=j.length,{output:_,tokens:O}=B1(H,U,(F,L)=>B(V+L));return j.push(...O),_},G=[];X=Q(X,Y,G,(H)=>`<!--__STX_STYLE_${H}__-->`);let z=[];X=Q(X,K2,z,(H)=>`<!--__STX_SCRIPT_EXPR_${H}__-->`);let K=Z?.__stx_signals_gate===!0||X1($),q=new Set(Array.isArray(Z?.__stx_client_signal_names)?Z.__stx_client_signal_names:[]),W=new Set(Array.isArray(Z?.__stx_preserved_client_expressions)?Z.__stx_preserved_client_expressions:[]);if(X=i2(X,(H,U,j)=>{try{let B=C0(U,Z,!1,(V)=>J5(V,H,J,$));return B!==void 0&&B!==null?String(B):""}catch(B){let V=B instanceof Error?B.message:String(B);return _0("Expression",`Error evaluating: {{{ ${U.trim()}}}}: ${V}`,J,$,j,H)}},3),X=X.replace(/\{!!([\s\S]*?)!!\}/g,(H,U,j)=>{try{let B=C0(U,Z,!1,(V)=>J5(V,H,J,$));if(B===void 0&&Z.__stx_buildMode==="compile")return p2("raw",U.trim());return B!==void 0&&B!==null?String(B):""}catch(B){if(Z.__stx_buildMode==="compile")return p2("raw",U.trim());let V=B instanceof Error?B.message:String(B);return _0("Expression",`Error evaluating: {!! ${U.trim()} !!}: ${V}`,J,$,j,H)}}),X=Q(X,K2,z,(H)=>`<!--__STX_SCRIPT_EXPR_${H}__-->`),X=Q(X,Y,G,(H)=>`<!--__STX_STYLE_${H}__-->`),X=i2(X,(H,U,j)=>{let B=U.trim();if(W.has(B))return H;let V=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined"],_=/^([a-zA-Z_$][a-zA-Z0-9_$]*)/,F=B.match(_)?.[1],L=F&&((F in Z)||V.includes(F)),w=Boolean(F&&q.has(F)),N=/^([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/,R=B.match(N),M=R&&!V.includes(R[1])&&!(R[1]in Z);if(/^__[A-Z_]+__$/.test(B))return"";let T;try{let D=C0(U,Z,!1,(k)=>{T=k});if(w)return H;if(K&&!b$(B,Z))return H;if(T)J5(T,H,J,$);if(Z.__stx_buildMode==="compile"&&!K&&(D===void 0||kJ(B,Z)))return p2("expr",B);if(D===void 0||D===null)return"";let I=String(D);return Z5($5(X,j),I,Q5(I))}catch(D){if(w)return H;if(K&&!b$(B,Z))return H;if(M)return H;let I=D instanceof Error?D.message:String(D);return _0("Expression",`Error evaluating: {{ ${B} }}: ${I}`,J,$,j,H)}}),z.length>0)X=X.replace(/<!--__STX_SCRIPT_EXPR_(\d+)__-->/g,(H,U)=>z[Number(U)]??H);if(G.length>0)X=X.replace(/<!--__STX_STYLE_(\d+)__-->/g,(H,U)=>G[Number(U)]??H);return X}function bJ($,Z,J){if(!Z.trim())return $;let X=$,Y=Z.trim();while(Y.length>0){let Q=Y.match(/^(\w+)/);if(!Q)break;let G=Q[1];Y=Y.substring(G.length).trim();let z=q2[G]||s2[G];if(!z)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(IJ()).join(", ")}`);let K=[];if(Y.startsWith(":")){let q=Y.match(/^:([^|\s]+)/);if(q){let W=q[1].trim();try{let H=Number(W);K=[Number.isNaN(H)?W:H]}catch{K=[W]}Y=Y.substring(q[0].length).trim()}}else if(Y.startsWith("(")){let q=1,W=1;while(q>0&&W<Y.length){if(Y[W]==="(")q++;if(Y[W]===")")q--;W++}if(q===0){let H=Y.substring(1,W-1).trim();if(H)try{if(H.startsWith("{")&&H.endsWith("}"))K=[C0(`(${H})`,J,!0)];else{let U=[],j="",B=null,V=0,_=0,O=0,F=!1;for(let L=0;L<H.length;L++){let w=H[L];if(F){j+=w,F=!1;continue}if(w==="\\"){j+=w,F=!0;continue}if(B){if(j+=w,w===B)B=null;continue}if(w==='"'||w==="'"||w==="`"){B=w,j+=w;continue}if(w==="(")V++;else if(w===")")V--;else if(w==="[")_++;else if(w==="]")_--;else if(w==="{")O++;else if(w==="}")O--;if(w===","&&V===0&&_===0&&O===0){U.push(j),j="";continue}j+=w}if(j)U.push(j);K=U.map((L)=>{let w=L.trim();return C0(w,J,!0)})}}catch{K=[H]}Y=Y.substring(W).trim()}}try{X=z(X,J,...K)}catch(q){let W=q instanceof Error?q.message:String(q);throw Error(`Error applying filter '${G}': ${W}`)}if(Y.startsWith("|"))Y=Y.substring(1).trim();else break}return X}function yJ($){let Z=!1,J="",X=0,Y=0,Q=0,G=!1;for(let z=0;z<$.length;z++){let K=$[z],q=$[z+1];if(Z&&G){G=!1;continue}if(Z&&K==="\\"){G=!0;continue}if(G=!1,(K==='"'||K==="'"||K==="`")&&!G){if(!Z)Z=!0,J=K;else if(K===J)Z=!1,J="";continue}if(Z&&J==="`"&&K==="$"&&q==="{"){let W=1;z+=2;while(z<$.length&&W>0){if($[z]==="{")W++;else if($[z]==="}")W--;if(W>0)z++}continue}if(Z)continue;if(K==="(")X++;else if(K===")")X--;else if(K==="[")Y++;else if(K==="]")Y--;else if(K==="{")Q++;else if(K==="}")Q--;if(K==="|"&&X===0&&Y===0&&Q===0){if(q==="|"){z++;continue}if(q==="="){z++;continue}return z}}return-1}var z2=new Set,CJ=1000;function aq(){z2.clear()}function J5($,Z,J,X){if(!P$())return;let Y=`${J}\x00${$.expression}`;if(z2.has(Y))return;if(z2.size>=CJ)z2.clear();z2.add(Y);let Q=J,G=X;try{if(J&&k$.existsSync(J))G=k$.readFileSync(J,"utf8")}catch{}let z=G.indexOf(Z);if(z>=0)Q=`${J}:${G.slice(0,z).split(`
|
|
124
|
+
`).length}`;console.warn(`${Q}: stx warning: ${Z} rendered as an empty string. The safe evaluator rejected \`${$.expression}\` (${$.rule}). Compute the value in <script server> and interpolate the variable instead.`)}function C0($,Z,J=!1,X){try{let Y=$.trim(),Q=yJ(Y);if(Q>0){let z=Y.substring(0,Q).trim(),K=Y.substring(Q+1).trim(),q=C0(z,Z,!0,X);return bJ(q,K,Z)}let G=v$(Y);if(G!==null){X?.({expression:Y,rule:G});return}try{let z=Object.keys(Z),K=Object.values(Z);return W0(Y,z)(...K)}catch{return Y0(Y,Z)}}catch(Y){if(Y instanceof ReferenceError){let Q=/(\b\w+)\s+is not defined/.exec(Y.message);if(Q){let G=Q[1],z=SJ(G,Object.keys(Z));if(z&&z!==G)Y.message=`${Y.message} \u2014 did you mean '${z}'?`}}if(!J)console.error(`Error evaluating expression: ${$}`,Y);throw Y}}function SJ($,Z){let J=null;for(let Y of Z){if(Y===$)continue;let Q=PJ($,Y);if(J===null||Q<J.dist)J={key:Y,dist:Q}}if(!J)return null;let X=Math.max($.length,J.key.length);if(J.dist<=2||J.dist/X<=0.35)return J.key;return null}function PJ($,Z){if($===Z)return 0;if($.length===0)return Z.length;if(Z.length===0)return $.length;let[J,X]=$.length<Z.length?[$,Z]:[Z,$],Y=Array(J.length+1),Q=Array(J.length+1);for(let G=0;G<=J.length;G++)Y[G]=G;for(let G=1;G<=X.length;G++){Q[0]=G;for(let z=1;z<=J.length;z++){let K=J[z-1]===X[G-1]?0:1;Q[z]=Math.min(Q[z-1]+1,Y[z]+1,Y[z-1]+K)}for(let z=0;z<=J.length;z++)Y[z]=Q[z]}return Y[J.length]}function tq($){if(!$)return"";return $.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/'/g,"'").replace(/&/g,"&")}import yz from"fs";import y0 from"path";var z5=[{open:/<!--/g,close:/-->/g},{open:/<script\b/gi,close:/<\/script\s*>/gi},{open:/<style\b/gi,close:/<\/style\s*>/gi}],f$=/<body\b([^>]*)>/gi;function p0($){let Z=0,J,X=z5.map(()=>{return});while(Z<$.length){if(J===void 0||J!==null&&J.index<Z)f$.lastIndex=Z,J=f$.exec($);if(!J)return null;let Y=J.index,Q=-1,G=null;for(let K=0;K<z5.length;K++){let q=z5[K],W=X[K];if(W===void 0||W!==null&&W.index<Z)q.open.lastIndex=Z,W=q.open.exec($),X[K]=W;if(!W)continue;if(W.index<Y&&(Q===-1||W.index<Q))Q=W.index,G=q.close}if(Q===-1||!G)return{index:Y,tag:J[0],attrs:J[1]??""};G.lastIndex=Q;let z=G.exec($);if(!z)return null;Z=z.index+z[0].length}return null}function v1($,Z){let J=p0($);if(!J)return $;return $.slice(0,J.index)+Z(J.tag,J.attrs)+$.slice(J.index+J.tag.length)}var g$=/<style\b[^>]*>/iy,h$=/<\/style>/gi,u$=/<script\b[^>]*>/iy,m$=/<template(?=[\s>/])[^>]*>/iy,d$=/<\/template\s*>/iy;function W2($){let Z=0,J=0,X=-1;while(Z<$.length){let Y=$.indexOf("<",Z);if(Y===-1)return-1;if($.startsWith("<!--",Y)){let K=$.indexOf("-->",Y+4);Z=K===-1?$.length:K+3;continue}g$.lastIndex=Y;let Q=g$.exec($);if(Q){h$.lastIndex=Y+Q[0].length;let K=h$.exec($);Z=K===null?$.length:K.index+8;continue}m$.lastIndex=Y;let G=m$.exec($);if(G){if(J===0)X=Y;J++,Z=Y+G[0].length;continue}d$.lastIndex=Y;let z=d$.exec($);if(z){if(J>0)J--;Z=Y+z[0].length;continue}if(u$.lastIndex=Y,u$.test($))return J>0?X:Y;Z=Y+1}return-1}var l$=null;function vJ($){if(!l$)return console.warn(`[stx] ${$} must be called within a component setup.`),null;return l$}function JW($){let Z=vJ("onUpdate");if(Z)Z.updateHooks.push($)}function c$(){return`
|
|
125
125
|
// STX Lifecycle Runtime
|
|
126
126
|
(function() {
|
|
127
127
|
if (typeof window === 'undefined') return;
|
|
@@ -469,7 +469,7 @@ else {
|
|
|
469
469
|
|
|
470
470
|
console.log('[stx] Lifecycle runtime initialized');
|
|
471
471
|
})();
|
|
472
|
-
`}function
|
|
472
|
+
`}function K5($){return Symbol($)}var XW=K5("theme"),YW=K5("router"),QW=K5("i18n");import*as i$ from"crypto";function p$($){let Z=/\$(\w+)\./g,J=[],X;while((X=Z.exec($))!==null)if(!J.includes(X[1]))J.push(X[1]);return J}function xJ(){return`stx-${i$.randomBytes(4).toString("hex")}`}function fJ($){return/\$\w+\./.test($)}function gJ($){if(!$.includes("{{")||!/\$\w+\./.test($))return{html:$,bindings:[],stores:new Set};let Z=[],J=new Set,X=/<(\w+)([^>]*?)(\s*\/?>)/g,Y=$;return Y=Y.replace(X,(Q,G,z,K)=>{if(["script","style","template"].includes(G.toLowerCase()))return Q;let q=[],W=!1,H=z,U=/(\w+(?:-\w+)*)\s*=\s*"([^"]*\{\{[^}]*\$\w+[^}]*\}\}[^"]*)"/g,j=[...z.matchAll(U)];for(let _ of j){let O=_[0],F=_[1],L=_[2];if(fJ(L)){W=!0;let w=L.match(/\{\{\s*([\s\S]+?)\s*\}\}/);if(w){let N=w[1];if(q.push({attr:F,expr:N,fullMatch:O,originalAttr:F}),p$(N).forEach((M)=>J.add(M)),F==="text")H=H.replace(O,"");else if(F==="class")H=H.replace(O,'class=""');else if(F==="disabled"||F==="hidden")H=H.replace(O,"");else H=H.replace(O,`${F}=""`)}}}if(!W)return Q;let B=H.match(/\bid\s*=\s*"([^"]+)"/),V;if(B)V=B[1];else V=xJ(),H=` id="${V}"${H}`;for(let _ of q)Z.push({elementId:V,attribute:_.attr,expression:_.expr,stores:p$(_.expr)});return`<${G}${H}${K}`}),{html:Y,bindings:Z,stores:J}}function hJ($,Z){if($.length===0)return"";let J=Array.from(Z),X=`
|
|
473
473
|
<script>
|
|
474
474
|
(function() {
|
|
475
475
|
'use strict';
|
|
@@ -627,10 +627,10 @@ else {
|
|
|
627
627
|
}
|
|
628
628
|
})();
|
|
629
629
|
</script>
|
|
630
|
-
`,X}function
|
|
630
|
+
`,X}function n$($){let{html:Z,bindings:J,stores:X}=gJ($);if(J.length===0)return $;let Y=hJ(J,X),Q=Z.lastIndexOf("</body>");if(Q!==-1)return Z.slice(0,Q)+Y+Z.slice(Q);return Z+Y}function s$($){let Z=$.analytics;if(!Z?.enabled)return"";switch(Z.driver){case"fathom":return uJ(Z);case"google-analytics":return mJ(Z);case"plausible":return dJ(Z);case"self-hosted":return lJ(Z);case"custom":return cJ(Z);default:return""}}function uJ($){let Z=$.fathom;if(!Z?.siteId)return"";let J=Z.scriptUrl||"https://cdn.usefathom.com/script.js",X=Z.defer!==!1?" defer":"",Y=[`data-site="${x0(Z.siteId)}"`];if(Z.honorDnt)Y.push('data-honor-dnt="true"');if(Z.spa)Y.push('data-spa="auto"');if(Z.canonical)Y.push(`data-canonical="${x0(Z.canonical)}"`);if(Z.auto===!1)Y.push('data-auto="false"');return`
|
|
631
631
|
<!-- Fathom Analytics -->
|
|
632
|
-
<script src="${
|
|
633
|
-
`}function
|
|
632
|
+
<script src="${x0(J)}" ${Y.join(" ")}${X}></script>
|
|
633
|
+
`}function mJ($){let Z=$.googleAnalytics;if(!Z?.measurementId)return"";let J=x0(Z.measurementId),X=Z.debug?`gtag('config', '${J}', { 'debug_mode': true });`:"";return`
|
|
634
634
|
<!-- Google Analytics -->
|
|
635
635
|
<script async src="https://www.googletagmanager.com/gtag/js?id=${J}"></script>
|
|
636
636
|
<script>
|
|
@@ -640,10 +640,10 @@ else {
|
|
|
640
640
|
gtag('config', '${J}');
|
|
641
641
|
${X}
|
|
642
642
|
</script>
|
|
643
|
-
`}function
|
|
643
|
+
`}function dJ($){let Z=$.plausible;if(!Z?.domain)return"";let J=Z.scriptUrl||"https://plausible.io/js/script.js",X=[`data-domain="${x0(Z.domain)}"`],Y=J,Q=[];if(Z.trackLocalhost)Q.push("local");if(Z.hashMode)Q.push("hash");if(Q.length>0&&J==="https://plausible.io/js/script.js")Y=`https://plausible.io/js/script.${Q.join(".")}.js`;return`
|
|
644
644
|
<!-- Plausible Analytics -->
|
|
645
|
-
<script defer data-domain="${
|
|
646
|
-
`}function
|
|
645
|
+
<script defer data-domain="${x0(Z.domain)}" src="${x0(Y)}"></script>
|
|
646
|
+
`}function lJ($){let Z=$.selfHosted;if(!Z?.siteId||!Z?.apiEndpoint)return"";let J=x0(Z.siteId),X=x0(Z.apiEndpoint),Y=Z.honorDnt?'if(n.doNotTrack==="1")return;':"",Q=Z.trackHashChanges?"w.addEventListener('hashchange',pv);":"",G=Z.trackOutboundLinks?`
|
|
647
647
|
d.addEventListener('click',function(e){
|
|
648
648
|
var a=e.target.closest('a');
|
|
649
649
|
if(a&&a.hostname!==location.hostname){
|
|
@@ -676,15 +676,15 @@ else {
|
|
|
676
676
|
w.stxAnalytics={track:function(n,v){t('event',{name:n,value:v});}};
|
|
677
677
|
})();
|
|
678
678
|
</script>
|
|
679
|
-
`}function
|
|
679
|
+
`}function cJ($){let Z=$.custom;if(!Z)return"";if(Z.inlineScript)return`
|
|
680
680
|
<!-- Custom Analytics -->
|
|
681
681
|
<script>
|
|
682
682
|
${Z.inlineScript}
|
|
683
683
|
</script>
|
|
684
|
-
`;if(!Z.scriptUrl)return"";let J=[];if(Z.scriptId)J.push(`id="${
|
|
684
|
+
`;if(!Z.scriptUrl)return"";let J=[];if(Z.scriptId)J.push(`id="${x0(Z.scriptId)}"`);if(Z.attributes)for(let[Y,Q]of Object.entries(Z.attributes))J.push(`${x0(Y)}="${x0(Q)}"`);return`
|
|
685
685
|
<!-- Custom Analytics -->
|
|
686
|
-
<script${J.length>0?` ${J.join(" ")}`:""} src="${
|
|
687
|
-
`}function
|
|
686
|
+
<script${J.length>0?` ${J.join(" ")}`:""} src="${x0(Z.scriptUrl)}" defer></script>
|
|
687
|
+
`}function o$($,Z){let J=s$(Z);if(!J)return $;if(!$.includes("</head>")){let X=$.lastIndexOf("</body>");if(X!==-1)return $.slice(0,X)+J+$.slice(X);return $+J}return $.replace("</head>",`${J}</head>`)}function x0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var KW={name:"analytics",hasEndTag:!1,handler:async($,Z,J,X)=>{let Y=J.__stx_config||{};return s$(Y)}};var pJ={enabled:!1,trackMouse:!0,trackClicks:!0,trackScroll:!0,samplingRate:100,honorDnt:!0,batchSize:50,maxDataPoints:1000,sessionTimeout:30,persistData:!1,storagePrefix:"stx_heatmap",captureAttributes:["data-heatmap-id","data-track"],ignoreSelectors:["[data-heatmap-ignore]",".heatmap-ignore"],debugOverlay:!1};function r$($){let Z=$.heatmap;if(!Z?.enabled)return"";let J={...pJ,...Z};return`
|
|
688
688
|
<!-- stx Heatmap - Privacy-Compliant Tracking -->
|
|
689
689
|
<script>
|
|
690
690
|
(function() {
|
|
@@ -1067,7 +1067,7 @@ else {
|
|
|
1067
1067
|
};
|
|
1068
1068
|
})();
|
|
1069
1069
|
</script>
|
|
1070
|
-
`}function
|
|
1070
|
+
`}function a$($,Z){let J=r$(Z);if(!J)return $;let X=$.lastIndexOf("</body>");if(X!==-1)return $.slice(0,X)+J+$.slice(X);return $+J}var t$={name:"heatmap",hasEndTag:!1,description:"Inject privacy-compliant heatmap tracking script",handler:async($,Z,J,X)=>{let Y=J.__stx_config||{};if(Z.length>0){let Q=iJ(Z.join(" "));Y.heatmap={...Y.heatmap,...Q,enabled:!0}}return r$(Y)}};function iJ($){let Z={},J=$.match(/(\w+)=["']?([^"'\s]+)["']?/g)||[];for(let X of J){let[Y,Q]=X.split("="),G=Q?.replace(/["']/g,"");switch(Y){case"endpoint":Z.endpoint=G;break;case"samplingRate":Z.samplingRate=Number.parseInt(G,10);break;case"batchSize":Z.batchSize=Number.parseInt(G,10);break;case"trackMouse":Z.trackMouse=G==="true";break;case"trackClicks":Z.trackClicks=G==="true";break;case"trackScroll":Z.trackScroll=G==="true";break;case"honorDnt":Z.honorDnt=G==="true";break;case"debugOverlay":Z.debugOverlay=G==="true";break}}return Z}class e${sessions=new Map;addSession($){let Z=this.sessions.get($.sid);if(Z)Z.points.push(...$.points),Z.lastActivity=Math.max(Z.lastActivity,$.lastActivity);else this.sessions.set($.sid,$)}getPageData($){let Z=[];for(let J of this.sessions.values())if(J.page===$)Z.push(...J.points);return Z}getClickData($){return this.getPageData($).filter((Z)=>Z.type==="click")}getMovementData($){return this.getPageData($).filter((Z)=>Z.type==="move")}getScrollData($){let Z=this.getPageData($).filter((X)=>X.type==="scroll"),J=new Map;for(let X of Z)if(X.depth!==void 0)J.set(X.depth,(J.get(X.depth)||0)+1);return Array.from(J.entries()).map(([X,Y])=>({depth:X,count:Y})).sort((X,Y)=>X.depth-Y.depth)}getZoneStats($){let Z=new Map,J=this.getPageData($);for(let X of J)if(X.zone){let Y=Z.get(X.zone)||{clicks:0,hovers:0};if(X.type==="click")Y.clicks++;else if(X.type==="move")Y.hovers++;Z.set(X.zone,Y)}return Z}generateGridData($,Z=20){let J=this.getPageData($),X=[];for(let Q=0;Q<Z;Q++){X[Q]=[];for(let G=0;G<Z;G++)X[Q][G]=0}for(let Q of J){let G=Math.min(Math.floor(Q.x/100*Z),Z-1),z=Math.min(Math.floor(Q.y/100*Z),Z-1);X[z][G]+=Q.type==="click"?3:1}let Y=0;for(let Q of X)for(let G of Q)Y=Math.max(Y,G);return X.map((Q,G)=>Q.map((z,K)=>({x:K,y:G,intensity:Y>0?z/Y:0})))}exportJSON(){return JSON.stringify({sessions:Array.from(this.sessions.values()),exportedAt:new Date().toISOString()},null,2)}clear(){this.sessions.clear()}get sessionCount(){return this.sessions.size}get totalPoints(){let $=0;for(let Z of this.sessions.values())$+=Z.points.length;return $}}function WW(){return new e$}var nJ;((G)=>{G.Fade="fade";G.Slide="slide";G.Scale="scale";G.Flip="flip";G.Rotate="rotate";G.Custom="custom"})(nJ||={});var sJ;((X)=>{X.In="in";X.Out="out";X.Both="both"})(sJ||={});var oJ;((G)=>{G.Linear="linear";G.Ease="ease";G.EaseIn="ease-in";G.EaseOut="ease-out";G.EaseInOut="ease-in-out";G.Spring="spring"})(oJ||={});var o0={duration:300,delay:0,ease:"ease",direction:"both"};function rJ($,Z={}){let{duration:J,delay:X,ease:Y,direction:Q,custom:G}={...o0,...Z};if($==="custom"&&G)return G;switch($){case"fade":return`${Q==="in"?"opacity: 0; animation: fadeIn var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":Q==="out"?"opacity: 1; animation: fadeOut var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":"opacity: 1; transition: opacity var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms);"}
|
|
1071
1071
|
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
|
|
1072
1072
|
@keyframes fadeOut { from { opacity: 1; } to { opacity: 0; } }`;case"slide":return`${Q==="in"?"transform: translateY(20px); opacity: 0; animation: slideIn var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":Q==="out"?"transform: translateY(0); opacity: 1; animation: slideOut var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":"transform: translateY(0); opacity: 1; transition: transform var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms), opacity var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms);"}
|
|
1073
1073
|
@keyframes slideIn { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
|
|
@@ -1077,7 +1077,7 @@ else {
|
|
|
1077
1077
|
@keyframes flipIn { from { transform: perspective(400px) rotateX(-90deg); opacity: 0; } to { transform: perspective(400px) rotateX(0); opacity: 1; } }
|
|
1078
1078
|
@keyframes flipOut { from { transform: perspective(400px) rotateX(0); opacity: 1; } to { transform: perspective(400px) rotateX(90deg); opacity: 0; } }`;case"rotate":return`${Q==="in"?"transform: rotate(-90deg); opacity: 0; animation: rotateIn var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":Q==="out"?"transform: rotate(0); opacity: 1; animation: rotateOut var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":"transform: rotate(0); opacity: 1; transition: transform var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms), opacity var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms);"}
|
|
1079
1079
|
@keyframes rotateIn { from { transform: rotate(-90deg); opacity: 0; } to { transform: rotate(0); opacity: 1; } }
|
|
1080
|
-
@keyframes rotateOut { from { transform: rotate(0); opacity: 1; } to { transform: rotate(90deg); opacity: 0; } }`;default:return""}}function
|
|
1080
|
+
@keyframes rotateOut { from { transform: rotate(0); opacity: 1; } to { transform: rotate(90deg); opacity: 0; } }`;default:return""}}function aJ(){return`
|
|
1081
1081
|
<script data-stx-scoped data-stx-run="once">
|
|
1082
1082
|
// Motion preferences handling
|
|
1083
1083
|
(function() {
|
|
@@ -1105,7 +1105,7 @@ else {
|
|
|
1105
1105
|
});
|
|
1106
1106
|
})();
|
|
1107
1107
|
</script>
|
|
1108
|
-
`}function
|
|
1108
|
+
`}function tJ($){return[/@animate\b/,/@transition\b/,/@scroll(?:Animate)?\b/,/@staggered\b/,/@sequence\b/,/@motion\b/,/@animationGroup\b/,/\bstx-transition\b/,/\bstx-(?:fade|scale|flip|rotate|slide|from-|observe)\b/,/data-animate=['"](?:auto|true|false)['"]/].some((J)=>J.test($))}function eJ($=0.1,Z="0px"){return`
|
|
1109
1109
|
<script data-stx-scoped data-stx-run="always">
|
|
1110
1110
|
// Intersection Observer for scroll animations
|
|
1111
1111
|
(function() {
|
|
@@ -1148,7 +1148,7 @@ else {
|
|
|
1148
1148
|
}
|
|
1149
1149
|
})();
|
|
1150
1150
|
</script>
|
|
1151
|
-
`}function
|
|
1151
|
+
`}function $X(){return`
|
|
1152
1152
|
<style id="stx-animation-base">
|
|
1153
1153
|
:root {
|
|
1154
1154
|
--stx-transition-duration: 300ms;
|
|
@@ -1263,7 +1263,7 @@ else {
|
|
|
1263
1263
|
transform var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms);
|
|
1264
1264
|
}
|
|
1265
1265
|
</style>
|
|
1266
|
-
`}function
|
|
1266
|
+
`}function ZX($,Z,J={}){let{staggerDelay:X=50,sequence:Y=!1}=J;return`
|
|
1267
1267
|
<script data-stx-scoped data-stx-run="always">
|
|
1268
1268
|
// Animation Group: ${$}
|
|
1269
1269
|
(function() {
|
|
@@ -1300,21 +1300,21 @@ else {
|
|
|
1300
1300
|
}
|
|
1301
1301
|
})();
|
|
1302
1302
|
</script>
|
|
1303
|
-
`}var
|
|
1304
|
-
style="--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${z}ms;">${$}</div>`},hasEndTag:!0,description:"Applies transition effects to an element"},
|
|
1305
|
-
${K}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},U5={name:"motion",handler:($,Z,J,X)=>{let Y=Z.length>0?Z[0].toLowerCase()==="true":!0,Q=
|
|
1306
|
-
</head>`)}if(Y.includes("stx-observe")){if(!Y.includes("Intersection Observer for scroll animations")){let K=
|
|
1307
|
-
`+Y.slice(q)}}return Y}var
|
|
1303
|
+
`}var q5={name:"transition",handler:($,Z,J,X)=>{if(Z.length<1)return`<div class="stx-error">@transition directive requires at least a transition type</div>${$}`;let Y=Z[0],Q=Z.length>1?Number.parseInt(Z[1],10)||o0.duration:o0.duration,G=Z.length>2?Z[2]||o0.ease:o0.ease,z=Z.length>3?Number.parseInt(Z[3],10)||o0.delay:o0.delay,K=Z.length>4?Z[4]||o0.direction:o0.direction,q=`stx-transition-${Math.random().toString(36).substr(2,9)}`,W=rJ(Y,{duration:Q,delay:z,ease:G,direction:K}),H="stx-transition",U="";if(Y==="fade")U="stx-fade";else if(Y==="slide")U="stx-slide";else if(Y==="scale")U="stx-scale";else if(Y==="flip")U="stx-flip";else if(Y==="rotate")U="stx-rotate";return`<div id="${q}" class="${H} ${U} ${K==="out"?"stx-out":""}"
|
|
1304
|
+
style="--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${z}ms;">${$}</div>`},hasEndTag:!0,description:"Applies transition effects to an element"},W5={name:"scrollAnimate",handler:($,Z,J,X)=>{if(Z.length<1)return`<div class="stx-error">@scrollAnimate directive requires at least an animation type</div>${$}`;let Y=Z[0],Q=Z.length>1?Number.parseInt(Z[1],10)||300:300,G=Z.length>2?Z[2]||"ease":"ease",z=Z.length>3?Number.parseFloat(Z[3])||0.2:0.2,K=Z.length>4?Number.parseInt(Z[4],10)||0:0,q=`stx-scroll-${Math.random().toString(36).substr(2,9)}`,W=`--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${K}ms; will-change: opacity, transform;`,H="stx-transition stx-observe stx-out";if(Y==="fade")H+=" stx-fade";else if(Y==="slide-up"||Y==="slide")H+=" stx-from-bottom";else if(Y==="slide-down")H+=" stx-from-top";else if(Y==="slide-left")H+=" stx-from-right";else if(Y==="slide-right")H+=" stx-from-left";else if(Y==="scale")H+=" stx-scale";else if(Y.includes("-"))H+=` stx-${Y}`;else H+=` stx-${Y}`;return`<div id="${q}" class="${H}" style="${W}" data-threshold="${z}">${$}</div>`},hasEndTag:!0,description:"Applies animations that trigger when scrolled into view"},H5={name:"animationGroup",handler:($,Z,J,X)=>{if(Z.length<2)return`<div class="stx-error">@animationGroup directive requires a group name and at least one element selector</div>${$}`;let Y=Z[0],Q=Z.slice(1).map((q)=>q.startsWith("#")||q.startsWith(".")?q:`#${q}`),G=J.staggerDelay||50,z=J.sequence||!0,K=ZX(Y,Q,{staggerDelay:G,sequence:z});return`${$}
|
|
1305
|
+
${K}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},U5={name:"motion",handler:($,Z,J,X)=>{let Y=Z.length>0?Z[0].toLowerCase()==="true":!0,Q=aJ();return`<div data-animate="${Y?"auto":"true"}">${$}</div>${Q}`},hasEndTag:!0,description:"Controls motion and animation preferences"};function Z7($,Z,J,X){let Y=$;if(X.animation?.enabled===!1)return Y;let Q=J.includes("test")&&J.includes("animation");if(!tJ(Y)&&!Q)return Y;if(!Y.includes('<style id="stx-animation-base">')){let z=$X();Y=Y.replace("</head>",`${z}
|
|
1306
|
+
</head>`)}if(Y.includes("stx-observe")){if(!Y.includes("Intersection Observer for scroll animations")){let K=eJ(),q=Y.lastIndexOf("</body>");if(q!==-1)Y=Y.slice(0,q)+K+`
|
|
1307
|
+
`+Y.slice(q)}}return Y}var $7={default:{stiffness:100,damping:10,mass:1},gentle:{stiffness:120,damping:14,mass:1},wobbly:{stiffness:180,damping:12,mass:1},stiff:{stiffness:210,damping:20,mass:1},slow:{stiffness:280,damping:60,mass:1},molasses:{stiffness:280,damping:120,mass:1}};function JX($,Z){let J=Z.map((X)=>{let Y=X.offset!==void 0?`${X.offset*100}%`:"from",Q=Object.entries(X.properties).map(([G,z])=>`${G}: ${z}`).join("; ");return`${Y} { ${Q} }`}).join(`
|
|
1308
1308
|
`);return`@keyframes ${$} {
|
|
1309
1309
|
${J}
|
|
1310
|
-
}`}var
|
|
1310
|
+
}`}var XX={name:"keyframe",hasEndTag:!0,handler:($,Z,J,X)=>{if(Z.length<1)return`<div class="stx-error">@keyframe requires an animation name</div>${$}`;let Y=Z[0].replace(/['"`]/g,""),Q=Z[1]?Number.parseInt(Z[1],10):1000,G=Z[2]?.replace(/['"`]/g,"")||"ease",z=Z[3]||"1",K=Z[4]?.replace(/['"`]/g,"")||"normal",q=Z[5]?.replace(/['"`]/g,"")||"forwards",W=`stx-keyframe-${Math.random().toString(36).slice(2,9)}`,H=`
|
|
1311
1311
|
animation-name: ${Y};
|
|
1312
1312
|
animation-duration: ${Q}ms;
|
|
1313
1313
|
animation-timing-function: ${G};
|
|
1314
1314
|
animation-iteration-count: ${z};
|
|
1315
1315
|
animation-direction: ${K};
|
|
1316
1316
|
animation-fill-mode: ${q};
|
|
1317
|
-
`.trim().replace(/\s+/g," ");return`<div id="${W}" style="${
|
|
1317
|
+
`.trim().replace(/\s+/g," ");return`<div id="${W}" style="${H}">${$}</div>`},description:"Applies a keyframe animation to an element"};function YX($,Z,J,X,Y){return`
|
|
1318
1318
|
<script data-stx-scoped data-stx-run="always">
|
|
1319
1319
|
(function() {
|
|
1320
1320
|
const container = document.getElementById('${$}');
|
|
@@ -1328,7 +1328,7 @@ ${K}`},hasEndTag:!1,description:"Coordinates multiple animations together as a g
|
|
|
1328
1328
|
child.classList.add('${Y}');
|
|
1329
1329
|
});
|
|
1330
1330
|
})();
|
|
1331
|
-
</script>`}var
|
|
1331
|
+
</script>`}var QX={name:"stagger",hasEndTag:!0,handler:($,Z,J,X)=>{let Y=Z[0]?.replace(/['"`]/g,"")||"> *",Q=Z[1]?Number.parseInt(Z[1],10):100,G=Z[2]?Number.parseInt(Z[2],10):0,z=Z[3]?.replace(/['"`]/g,"")||"fade",K=`stx-stagger-${Math.random().toString(36).slice(2,9)}`,q="stx-stagger-item";if(z==="fade")q+=" stx-fade";else if(z==="slide")q+=" stx-from-bottom";else if(z==="scale")q+=" stx-scale";let W=YX(K,Y,G,Q,q);return`${`
|
|
1332
1332
|
<style>
|
|
1333
1333
|
#${K} .stx-stagger-item {
|
|
1334
1334
|
opacity: 0;
|
|
@@ -1338,12 +1338,12 @@ ${K}`},hasEndTag:!1,description:"Coordinates multiple animations together as a g
|
|
|
1338
1338
|
from { opacity: 0; transform: translateY(10px); }
|
|
1339
1339
|
to { opacity: 1; transform: translateY(0); }
|
|
1340
1340
|
}
|
|
1341
|
-
</style>`}<div id="${K}" class="stx-stagger-container">${$}</div>${W}`},description:"Applies staggered animations to child elements"};function
|
|
1341
|
+
</style>`}<div id="${K}" class="stx-stagger-container">${$}</div>${W}`},description:"Applies staggered animations to child elements"};function GX($){let{stiffness:Z,damping:J}=$,X=J/(2*Math.sqrt(Z));if(X<0.5)return"cubic-bezier(0.175, 0.885, 0.32, 1.275)";else if(X<1)return"cubic-bezier(0.34, 1.56, 0.64, 1)";else return"cubic-bezier(0.25, 0.1, 0.25, 1)"}var zX={name:"spring",hasEndTag:!0,handler:($,Z,J,X)=>{let Y=Z[0]?.replace(/['"`]/g,"")||"default",Q;if($7[Y])Q=$7[Y];else Q={stiffness:Number.parseInt(Y,10)||100,damping:Z[1]?Number.parseInt(Z[1],10):10,mass:Z[2]?Number.parseFloat(Z[2]):1};let G=Z[3]?Number.parseInt(Z[3],10):500,z=`stx-spring-${Math.random().toString(36).slice(2,9)}`,K=GX(Q),q=`
|
|
1342
1342
|
transition: all ${G}ms ${K};
|
|
1343
1343
|
--stx-spring-stiffness: ${Q.stiffness};
|
|
1344
1344
|
--stx-spring-damping: ${Q.damping};
|
|
1345
1345
|
--stx-spring-mass: ${Q.mass};
|
|
1346
|
-
`.trim().replace(/\s+/g," ");return`<div id="${z}" class="stx-spring" style="${q}">${$}</div>`},description:"Applies spring physics animations to an element"};function
|
|
1346
|
+
`.trim().replace(/\s+/g," ");return`<div id="${z}" class="stx-spring" style="${q}">${$}</div>`},description:"Applies spring physics animations to an element"};function UW($){let Z=`stx-timeline-${Math.random().toString(36).slice(2,9)}`;return`
|
|
1347
1347
|
<script data-stx-scoped data-stx-run="always">
|
|
1348
1348
|
(function() {
|
|
1349
1349
|
const timeline = ${JSON.stringify($)};
|
|
@@ -1380,7 +1380,7 @@ else {
|
|
|
1380
1380
|
runTimeline();
|
|
1381
1381
|
}
|
|
1382
1382
|
})();
|
|
1383
|
-
</script>`}function
|
|
1383
|
+
</script>`}function jW($,Z,J){let X=JX($,Z),Y=`
|
|
1384
1384
|
.${$}-animation {
|
|
1385
1385
|
animation-name: ${$};
|
|
1386
1386
|
animation-duration: ${J.duration}ms;
|
|
@@ -1390,7 +1390,7 @@ else {
|
|
|
1390
1390
|
animation-direction: ${J.direction||"normal"};
|
|
1391
1391
|
animation-fill-mode: ${J.fill||"forwards"};
|
|
1392
1392
|
}`;return`${X}
|
|
1393
|
-
${Y}`}function
|
|
1393
|
+
${Y}`}function BW($){let Z=$.trim().split(/\s+/),J={duration:300};for(let X=0;X<Z.length;X++){let Y=Z[X];if(/^\d+(?:ms|s)?$/.test(Y)){let Q=Number.parseInt(Y,10);if(X===0)J.duration=Y.endsWith("s")&&!Y.endsWith("ms")?Q*1000:Q;else J.delay=Y.endsWith("s")&&!Y.endsWith("ms")?Q*1000:Q}else if(Y==="infinite"||/^\d+$/.test(Y))J.iterations=Y==="infinite"?"infinite":Number.parseInt(Y,10);else if(["normal","reverse","alternate","alternate-reverse"].includes(Y))J.direction=Y;else if(["none","forwards","backwards","both"].includes(Y))J.fill=Y;else J.easing=Y}return J}function VW(){return`
|
|
1394
1394
|
<script data-stx-scoped data-stx-run="once">
|
|
1395
1395
|
window.__stxAnimation = {
|
|
1396
1396
|
// Registry of animations
|
|
@@ -1462,7 +1462,7 @@ else {
|
|
|
1462
1462
|
);
|
|
1463
1463
|
}
|
|
1464
1464
|
};
|
|
1465
|
-
</script>`}function
|
|
1465
|
+
</script>`}function LW($){let Z=$.customDirectives||[];return Z.push(q5),Z.push(H5),Z.push(U5),Z.push(W5),Z.push(XX),Z.push(QX),Z.push(zX),{...$,customDirectives:Z}}function J7($){let Z=$.match(/\bdefinePageMeta\s*\(\s*(\{[\s\S]*?\})\s*\)/m);if(!Z)return null;try{return Function(`return ${Z[1]}`)()}catch{return null}}function X7($){let Z=$?.layout;if(Z===!1)return!1;return typeof Z==="string"&&Z.trim()?Z.trim():void 0}var KX=100,qX=599,B5="__stxResponseStatus",H2="__stxResponseHeaders";function o2($){return typeof $==="number"&&Number.isInteger($)&&$>=KX&&$<=qX}function wW($){for(let Z of $.matchAll(/\bdefinePageMeta\s*\(\s*\{([\s\S]*?)\}\s*\)/g)){let J=Z[1].match(/(?:^|,)\s*status\s*:\s*(\d{3})(?=\s*(?:,|$))/);if(!J)continue;let X=Number(J[1]);if(o2(X))return X}return}function j5($,Z){if(!$||typeof $!=="object")return!1;let J=typeof Z==="string"&&/^\d+$/.test(Z.trim())?Number(Z.trim()):Z;if(!o2(J))return!1;return $[B5]=J,!0}function WX($,Z,J){if(!$||typeof $!=="object")return;let X=String(Z??"").trim();if(!X)return;$[H2]={...$[H2],[X]:String(J)}}function HX($){let Z=$?.[B5];return o2(Z)?Z:void 0}function UX($){let Z=$?.[H2];if(!Z||typeof Z!=="object")return;let J=Object.entries(Z).map(([X,Y])=>[X,String(Y)]);return J.length>0?Object.fromEntries(J):void 0}function RW($,Z){if(!$||!Z||$===Z||typeof Z!=="object")return;let J=HX($);if(J!==void 0)Z[B5]=J;let X=UX($);if(X)Z[H2]={...Z[H2],...X}}function Y7($){return{setResponseStatus:(Z)=>{j5($,Z)},notFound:(Z=404)=>{let J=o2(Z)&&Z>=400?Z:404;j5($,J)},setResponseHeader:(Z,J)=>{WX($,Z,J)}}}function Q7($,Z,J={}){if(!$.includes("@status"))return $;let{filePath:X,buildMode:Y}=J,Q=Y==="compile",G="",z=0,K=/@status\s*\(/g,q;while((q=K.exec($))!==null){let W=jX($,q.index+q[0].length-1);if(W<0)break;let H=$.slice(q.index+q[0].length,W).trim(),U=/^\d+$/.test(H)?Number(H):Y0(H,Z),j=X?` in ${X}`:"";if(Q)console.warn(`[stx] @status(${H})${j} is skipped when precompiling: the build has no request, so the branch it sits in is not the one a visitor will get. Call notFound() or setResponseStatus(${H}) from <script server> instead \u2014 that runs per request.`);else if(!j5(Z,U))console.warn(`[stx] @status(${H})${j} is not an HTTP status (100-599) \u2014 ignoring it.`);G+=$.slice(z,q.index),z=W+1+($.slice(W+1).match(/^[^\S\n]*\n?/)?.[0].length??0),K.lastIndex=z}return z===0?$:G+$.slice(z)}function jX($,Z){let J=1,X=null,Y=!1;for(let Q=Z+1;Q<$.length;Q++){let G=$[Q];if(Y){Y=!1;continue}if(X){if(G==="\\")Y=!0;else if(G===X)X=null;continue}if(G==='"'||G==="'"||G==="`"){X=G;continue}if(G==="(")J++;else if(G===")"&&--J===0)return Q}return-1}var BX=0,VX=0;function G7($,Z){let J=$.match(new RegExp(`${Z}\\s*=\\s*"([^"]*)"`,"i"));if(J)return J[1];let X=$.match(new RegExp(`${Z}\\s*=\\s*'([^']*)'`,"i"));if(X)return X[1];return null}function LX($){let Z=[],J=/<([a-z][a-z0-9-]*)\s+([^>]*x-data\s*=\s*(?:"[^"]*"|'[^']*')[^>]*)>/gi,X;while((X=J.exec($))!==null){let[Y,Q,G]=X,z=X.index,K=G7(G,"x-data");if(!K)continue;let q=`__stx_scope_${BX++}`,W=G7(G,"x-init"),H=OX($,Q,z+Y.length),U=$.slice(z,H.endIndex),j=_X(U);Z.push({id:q,selector:`[data-stx-scope="${q}"]`,stateExpr:K,initExpr:W,bindings:[],refs:j})}return Z}function OX($,Z,J){let X=1,Y=J,Q=new RegExp(`<${Z}(?:\\s|>)`,"gi"),G=new RegExp(`</${Z}>`,"gi"),z=new RegExp(`<${Z}[^>]*/\\s*>`,"gi");while(X>0&&Y<$.length){Q.lastIndex=Y,G.lastIndex=Y,z.lastIndex=Y;let K=Q.exec($),q=G.exec($),W=z.exec($);if(W&&W.index<(K?.index??1/0)){Y=W.index+W[0].length;continue}if(!q)return{endIndex:$.length};if(K&&K.index<q.index)X++,Y=K.index+K[0].length;else{if(X--,X===0)return{endIndex:q.index+q[0].length};Y=q.index+q[0].length}}return{endIndex:$.length}}function _X($){let Z=new Map,J=$.replace(/x-data\s*=\s*"[^"]*"/gi,'x-data="__stripped__"').replace(/x-data\s*=\s*'[^']*'/gi,"x-data='__stripped__'"),X=/<[a-z][a-z0-9-]*\s+([^>]*x-ref\s*=\s*["']([^"']*)["'][^>]*)>/gi,Y;while((Y=X.exec(J))!==null){let[,Q,G]=Y,z=FX(Q);Z.set(G,z)}return Z}function FX($){let Z=$.match(/\bid\s*=\s*["']([^"']*)["']/);if(Z)return Z[1];return`__stx_el_${VX++}`}function wX(){return`
|
|
1466
1466
|
// STX Reactive Runtime - x-cloak and transition CSS
|
|
1467
1467
|
(function() {
|
|
1468
1468
|
var style = document.createElement('style');
|
|
@@ -1669,7 +1669,7 @@ window.__stx_reactive = (function() {
|
|
|
1669
1669
|
|
|
1670
1670
|
return { initScope: initScope, reactive: reactive };
|
|
1671
1671
|
})();
|
|
1672
|
-
`}function
|
|
1672
|
+
`}function z7($,Z){let J=$.replace(/\{!!([\s\S]*?)!!\}/g,(z,K)=>{try{let q=C0(K,Z,!0);if(q===void 0)return z;return String(q)}catch{return z}}),X="",Y=0,Q=null;while(Y<J.length){let z=J[Y];if(Q&&z==="\\"){X+=z+(J[Y+1]??""),Y+=2;continue}if(z==="{"&&J[Y+1]==="{"){let K=J.indexOf("}}",Y+2);if(K!==-1){let q=J.slice(Y,K+2);X+=G(J.slice(Y+2,K),q,Q),Y=K+2;continue}}if(Q){if(z===Q)Q=null}else if(z==="'"||z==='"'||z==="`")Q=z;X+=z,Y++}return X;function G(z,K,q){let W;try{W=C0(z,Z,!0)}catch{return K}if(W===void 0)return K;if(q){let H=String(W).replace(/\\/g,"\\\\").replace(new RegExp(q==="`"?"`":q,"g"),`\\${q}`).replace(/\r/g,"\\r").replace(/\n/g,"\\n");return q==="`"?H.replace(/\$\{/g,"\\${"):H}if(typeof W==="string"){let H=W.trim();if(H.startsWith("{")&&H.endsWith("}")||H.startsWith("[")&&H.endsWith("]"))try{return JSON.parse(H),H}catch{}}return JSON.stringify(W)}}function RX($,Z){if($.length===0)return"";let J=$.map((X)=>{let Y=JSON.stringify(Object.fromEntries(X.refs)),Q=z7(X.stateExpr,Z),G=X.initExpr?z7(X.initExpr,Z):null,z=JSON.stringify(Q),K=G?JSON.stringify(G):"null";return`
|
|
1673
1673
|
(function() {
|
|
1674
1674
|
var scopeEl = document.querySelector('${X.selector}');
|
|
1675
1675
|
if (!scopeEl) return;
|
|
@@ -1678,13 +1678,13 @@ window.__stx_reactive = (function() {
|
|
|
1678
1678
|
})();`}).join(`
|
|
1679
1679
|
`);return`
|
|
1680
1680
|
<script data-stx-scoped data-stx-reactive data-stx-run="always">
|
|
1681
|
-
${
|
|
1681
|
+
${wX()}
|
|
1682
1682
|
${J}
|
|
1683
|
-
</script>`}function
|
|
1684
|
-
`+Y.slice(G);else Y+=Q;return Y}function
|
|
1685
|
-
`)){let z=G.trim();if(!z||z.startsWith("#"))continue;let K=z.indexOf(":");if(K===-1)continue;let q=z.slice(0,K).trim(),W=z.slice(K+1).trim();if(typeof W==="string"){if(W.startsWith('"')&&W.endsWith('"')||W.startsWith("'")&&W.endsWith("'"))W=W.slice(1,-1);else if(W.startsWith("[")&&W.endsWith("]"))try{W=JSON.parse(W)}catch{}else if(W==="true")W=!0;else if(W==="false")W=!1;else if(/^-?\d+(?:\.\d+)?$/.test(W))W=Number(W)}Q[q]=W}return{data:Q,content:Y.trim()}}function
|
|
1686
|
-
`),Y=Y.replace(/^[*\-+]\s+(.*)$/gm,"<li data-ul>$1</li>"),Y=Y.replace(/(<li data-ul>.*<\/li>\n?)+/g,"<ul>$&</ul>"),Y=Y.replace(/<\/ul>\n<ul>/g,""),Y=Y.replace(/^\d+\.\s+(.*)$/gm,"<li data-ol>$1</li>"),Y=Y.replace(/(<li data-ol>.*<\/li>\n?)+/g,"<ol>$&</ol>"),Y=Y.replace(/<\/ol>\n<ol>/g,""),Y=Y.replace(/<li data-ul>/g,"<li>"),Y=Y.replace(/<li data-ol>/g,"<li>"),J)Y=Y.replace(/^\|(.+)\|\s*\n\|[-:\s|]+\|\s*\n((?:\|.+\|\s*\n)*)/gm,(W,U
|
|
1687
|
-
`).map((_)=>{return`<tr>${_.split("|").map((F)=>F.trim()).filter(Boolean).map((F)=>`<td>${
|
|
1683
|
+
</script>`}function K7($,Z,J){if(!DX($))return $;let X=LX($);if(X.length===0)return $;let Y=NX($,X),Q=RX(X,Z),G=Y.lastIndexOf("</body>");if(G!==-1)Y=Y.slice(0,G)+Q+`
|
|
1684
|
+
`+Y.slice(G);else Y+=Q;return Y}function NX($,Z){let J=0,X=$.replace(/<([a-z][a-z0-9-]*)(\s+[^>]*x-data\s*=\s*(?:"[^"]*"|'[^']*')[^>]*)>/gi,(Y,Q,G)=>{let z=Z[J++];if(!z)return Y;let K=/data-stx-scope="([^"]*)"/.exec(G);if(K)return z.id=K[1],z.selector=`[data-stx-scope="${z.id}"]`,Y;return`<${Q} data-stx-scope="${z.id}"${G}>`});return X=X.replace(/\s*x-data\s*=\s*"([^"]*)"/g,' data-stx-xdata="$1"'),X=X.replace(/\s*x-data\s*=\s*'([^']*)'/g," data-stx-xdata='$1'"),X=X.replace(/\s*x-init\s*=\s*"([^"]*)"/g,' data-stx-xinit="$1"'),X=X.replace(/\s*x-init\s*=\s*'([^']*)'/g," data-stx-xinit='$1'"),X}function DX($){return/x-data\s*=\s*["']/.test($)}import HY from"fs";import C5 from"path";import{createHighlighter as UY}from"ts-syntax-highlighter";import Y9 from"fs";import S0 from"path";import{loadConfigWithResult as YY}from"bunfig";U2();async function MX($,Z,J,X){let Y=Z[0]?.replace(/['"]/g,"")||"main",Q=V5();if(Y!=="main")Q=Q.replace("container:'main'",`container:'${Y}'`);return`<script data-stx-router>${Q}</script>`}var q7={name:"stxRouter",handler:MX,hasEndTag:!1,description:"Inject the STX SPA router script for client-side navigation"};function Y1($){return $.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function W7($){let Z=$.trim().toLowerCase();return!Z.startsWith("javascript:")&&!Z.startsWith("vbscript:")&&!Z.startsWith("data:text/html")}function H7($){let Z=/^---\r?\n([\s\S]*?)\r?\n---\r?\n/,J=$.match(Z);if(!J)return{data:{},content:$.trim()};let X=J[1],Y=$.slice(J[0].length),Q={};for(let G of X.split(`
|
|
1685
|
+
`)){let z=G.trim();if(!z||z.startsWith("#"))continue;let K=z.indexOf(":");if(K===-1)continue;let q=z.slice(0,K).trim(),W=z.slice(K+1).trim();if(typeof W==="string"){if(W.startsWith('"')&&W.endsWith('"')||W.startsWith("'")&&W.endsWith("'"))W=W.slice(1,-1);else if(W.startsWith("[")&&W.endsWith("]"))try{W=JSON.parse(W)}catch{}else if(W==="true")W=!0;else if(W==="false")W=!1;else if(/^-?\d+(?:\.\d+)?$/.test(W))W=Number(W)}Q[q]=W}return{data:Q,content:Y.trim()}}function j2($,Z={}){let{gfm:J=!0,breaks:X=!1}=Z,Y=$,Q=[];if(Y=Y.replace(/```(\w*)\n([\s\S]*?)```/g,(W,H,U)=>{let j=Q.length,B=H?` class="language-${Y1(H)}"`:"";return Q.push(`<pre><code${B}>${Y1(U.trim())}</code></pre>`),`\x00CODEBLOCK${j}\x00`}),Y=Y.replace(/`([^`]*)`/g,(W,H)=>`<code>${Y1(H)}</code>`),Y=Y.replace(/^######\s+(.*)$/gm,"<h6>$1</h6>"),Y=Y.replace(/^#####\s+(.*)$/gm,"<h5>$1</h5>"),Y=Y.replace(/^####\s+(.*)$/gm,"<h4>$1</h4>"),Y=Y.replace(/^###\s+(.*)$/gm,"<h3>$1</h3>"),Y=Y.replace(/^##\s+(.*)$/gm,"<h2>$1</h2>"),Y=Y.replace(/^#\s+(.*)$/gm,"<h1>$1</h1>"),Y=Y.replace(/\*\*\*(.+?)\*\*\*/g,"<strong><em>$1</em></strong>"),Y=Y.replace(/___(.+?)___/g,"<strong><em>$1</em></strong>"),Y=Y.replace(/\*\*(.+?)\*\*/g,"<strong>$1</strong>"),Y=Y.replace(/__(.+?)__/g,"<strong>$1</strong>"),Y=Y.replace(/\*(.+?)\*/g,"<em>$1</em>"),Y=Y.replace(/(?<![a-zA-Z0-9])_(.+?)_(?![a-zA-Z0-9])/g,"<em>$1</em>"),J)Y=Y.replace(/~~(.+?)~~/g,"<del>$1</del>");if(Y=Y.replace(/!\[([^\]]*)\]\(([^)]+)\)/g,(W,H,U)=>{return`<img src="${W7(U)?Y1(U):""}" alt="${Y1(H)}" />`}),Y=Y.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(W,H,U)=>{return`<a href="${W7(U)?Y1(U):""}">${H}</a>`}),Y=Y.replace(/^(?:---|\*\*\*|___)\s*$/gm,"<hr />"),Y=Y.replace(/^>\s+(.*)$/gm,"<blockquote>$1</blockquote>"),Y=Y.replace(/<\/blockquote>\n<blockquote>/g,`
|
|
1686
|
+
`),Y=Y.replace(/^[*\-+]\s+(.*)$/gm,"<li data-ul>$1</li>"),Y=Y.replace(/(<li data-ul>.*<\/li>\n?)+/g,"<ul>$&</ul>"),Y=Y.replace(/<\/ul>\n<ul>/g,""),Y=Y.replace(/^\d+\.\s+(.*)$/gm,"<li data-ol>$1</li>"),Y=Y.replace(/(<li data-ol>.*<\/li>\n?)+/g,"<ol>$&</ol>"),Y=Y.replace(/<\/ol>\n<ol>/g,""),Y=Y.replace(/<li data-ul>/g,"<li>"),Y=Y.replace(/<li data-ol>/g,"<li>"),J)Y=Y.replace(/^\|(.+)\|\s*\n\|[-:\s|]+\|\s*\n((?:\|.+\|\s*\n)*)/gm,(W,H,U)=>{let B=`<tr>${H.split("|").map((_)=>_.trim()).filter(Boolean).map((_)=>`<th>${Y1(_)}</th>`).join("")}</tr>`,V=U.trim().split(`
|
|
1687
|
+
`).map((_)=>{return`<tr>${_.split("|").map((F)=>F.trim()).filter(Boolean).map((F)=>`<td>${Y1(F)}</td>`).join("")}</tr>`}).join(`
|
|
1688
1688
|
`);return`<table>
|
|
1689
1689
|
<thead>
|
|
1690
1690
|
${B}
|
|
@@ -1693,15 +1693,15 @@ ${B}
|
|
|
1693
1693
|
${V}
|
|
1694
1694
|
</tbody>
|
|
1695
1695
|
</table>`});if(J)Y=Y.replace(/<li>\s*\[\s*\]\s*/g,'<li><input type="checkbox" disabled /> '),Y=Y.replace(/<li>\s*\[x\]\s*/gi,'<li><input type="checkbox" checked disabled /> ');let G=Y.split(`
|
|
1696
|
-
`),z=[],K=!1,q=[];for(let W of G){let
|
|
1696
|
+
`),z=[],K=!1,q=[];for(let W of G){let H=W.trim();if(/^<(?:h[1-6]|ul|ol|li|blockquote|pre|table|thead|tbody|tr|th|td|hr|div|p)/.test(H)||/^\0CODEBLOCK\d+\0$/.test(H)||H===""){if(K&&q.length>0)z.push(`<p>${q.join(X?`<br />
|
|
1697
1697
|
`:`
|
|
1698
|
-
`)}</p>`),q=[],K=!1;z.push(W)}else K=!0,q.push(
|
|
1698
|
+
`)}</p>`),q=[],K=!1;z.push(W)}else K=!0,q.push(H)}if(K&&q.length>0)z.push(`<p>${q.join(X?`<br />
|
|
1699
1699
|
`:`
|
|
1700
1700
|
`)}</p>`);if(Y=z.join(`
|
|
1701
1701
|
`),X)Y=Y.replace(/\n/g,`<br />
|
|
1702
|
-
`);for(let W=0;W<Q.length;W++)Y=Y.replace(`\x00CODEBLOCK${W}\x00`,Q[W]);return Y=Y.replace(/<p>\s*<\/p>/g,""),Y.trim()}async function
|
|
1703
|
-
`||F==="\r"||F===" "||F===void 0)U
|
|
1704
|
-
`)}function
|
|
1702
|
+
`);for(let W=0;W<Q.length;W++)Y=Y.replace(`\x00CODEBLOCK${W}\x00`,Q[W]);return Y=Y.replace(/<p>\s*<\/p>/g,""),Y.trim()}async function U7($,Z,J=""){let X=$,Y=[],Q=/@markdown(?:\([^)]*\))?/g,G;while((G=Q.exec($))!==null){let z=G.index,K=G[0].match(/@markdown\(([^)]*)\)/),q=K?K[1]:"",W=z+G[0].length,H=1,U=W,j=-1;while(H>0&&U<$.length){let _=$.indexOf("@markdown",U),O=$.indexOf("@endmarkdown",U);if(O===-1)break;if(_!==-1&&_<O&&_!==z){let F=$[_+9];if(F==="("||F===`
|
|
1703
|
+
`||F==="\r"||F===" "||F===void 0)H++;U=_+9}else{if(H--,H===0){j=O;break}U=O+12}}if(j===-1)continue;let B=$.slice(W,j),V=$.slice(z,j+12);Y.push({fullMatch:V,options:q,content:B,index:z}),Q.lastIndex=j+12}for(let{fullMatch:z,options:K,content:q,index:W}of Y)try{let H={};if(K)K.split(",").forEach((B)=>{let V=B.trim();if(V)H[V]=!0});let U={gfm:H.gfm??!0,breaks:H.breaks??!1},j=j2(q.trim(),U);X=X.split(z).join(j)}catch(H){let U=H instanceof Error?H.message:String(H),j=_0("Markdown Directive",`Error processing markdown: ${U}`,J,$,W,z);X=X.split(z).join(j)}return X}async function j7($,Z,J,X){let Y={gfm:!0,breaks:!1};return Z.forEach((Q)=>{let G=Q.trim().replace(/['"]/g,"");if(G==="breaks")Y.breaks=!0;if(G==="no-gfm")Y.gfm=!1}),j2($.trim(),Y)}var L1=[320,480,640,768,1024,1280,1536,1920,2560],B7=[1,1.5,2,3],x1=["avif","webp","jpeg"],V7={avif:"image/avif",webp:"image/webp",jpeg:"image/jpeg",png:"image/png",gif:"image/gif"},AX={avif:"avif",webp:"webp",jpeg:"jpg",png:"png",gif:"gif"};function B2($,Z=L1,J={},X){return Z.sort((Y,Q)=>Y-Q).map((Y)=>{return`${Q1($,{...J,w:Y,fm:X})} ${Y}w`}).join(", ")}function PW($,Z=320,J=2560,X=0.08,Y={},Q){let G=IX(Z,J,X);return B2($,G,Y,Q)}function IX($,Z,J=0.08){let X=[],Y=$;while(Y<Z)X.push(Math.round(Y)),Y*=1+J*2;if(X[X.length-1]!==Z)X.push(Z);return X}function L5($,Z,J=B7,X={},Y){return J.sort((Q,G)=>Q-G).map((Q)=>{let G=Math.round(Z*Q);return`${Q1($,{...X,w:G,dpr:Q,fm:Y})} ${Q}x`}).join(", ")}function vW($,Z,J=B7,X=80,Y={},Q){let G={1:X,1.5:Math.round(X*0.9),2:Math.round(X*0.8),3:Math.round(X*0.7),4:Math.round(X*0.6),5:Math.round(X*0.5)};return J.sort((z,K)=>z-K).map((z)=>{let K=Math.round(Z*z),q=G[z]||Math.round(X*Math.max(0.5,1-z*0.1));return`${Q1($,{...Y,w:K,q,dpr:z,fm:Q})} ${z}x`}).join(", ")}function O5($,Z="100vw"){if(!$||Object.keys($).length===0)return Z;let X=Object.entries($).map(([Y,Q])=>{let G=/^\d+$/.test(Y)?`${Y}px`:Y;return{bp:G,size:Q,numericBp:Number.parseInt(G)||0}}).sort((Y,Q)=>Y.numericBp-Q.numericBp).map(({bp:Y,size:Q})=>`(max-width: ${Y}) ${Q}`);return X.push(Z),X.join(", ")}function xW($,Z="100vw"){if(!$||$.length===0)return Z;let X=[...$].sort((Y,Q)=>(Y.maxWidth||0)-(Q.maxWidth||0)).filter((Y)=>Y.maxWidth).map((Y)=>`(max-width: ${Y.maxWidth}px) ${Y.imageWidth}`);return X.push(Z),X.join(", ")}var fW={fullWidth:"100vw",halfDesktop:"(max-width: 768px) 100vw, 50vw",thirdDesktop:"(max-width: 768px) 100vw, 33.33vw",quarterDesktop:"(max-width: 480px) 100vw, (max-width: 768px) 50vw, 25vw",contentWidth:"(max-width: 768px) 100vw, (max-width: 1200px) 80vw, 960px"};function Q1($,Z={}){let J=Object.entries(Z).filter(([,Q])=>Q!==void 0&&Q!==null).map(([Q,G])=>{if(Array.isArray(G))return[Q,G.join(",")];return[Q,String(G)]});if(J.length===0)return $;let X=J.map(([Q,G])=>`${Q}=${encodeURIComponent(G)}`).join("&"),Y=$.includes("?")?"&":"?";return`${$}${Y}${X}`}function gW($){let[Z,J]=$.split("?"),X={};if(J)new URLSearchParams(J).forEach((Q,G)=>{if(/^\d+$/.test(Q))X[G]=Number.parseInt(Q,10);else if(/^\d+\.\d+$/.test(Q))X[G]=Number.parseFloat(Q);else if(Q==="true")X[G]=!0;else if(Q==="false")X[G]=!1;else X[G]=Q});return{src:Z,params:X}}function hW($){let{src:Z,widths:J,dprValues:X,fixedWidth:Y,formats:Q=x1,baseUrl:G="",params:z={}}=$,K=[];for(let q of Q){let W,H;if(Y!==void 0&&X)W=L5(Z,Y,X,z,q),H=X.map((U)=>({path:"",url:Q1(Z,{...z,w:Math.round(Y*U),fm:q}),width:Math.round(Y*U),height:0,format:q,size:0,dpr:U}));else{let U=J||L1;W=B2(Z,U,z,q),H=U.map((j)=>({path:"",url:Q1(Z,{...z,w:j,fm:q}),width:j,height:0,format:q,size:0}))}K.push({srcset:W,format:q,mimeType:V7[q],variants:H})}return K}function uW($,Z="100vw"){return $.map(({srcset:J,mimeType:X})=>`<source type="${X}" srcset="${J}" sizes="${Z}" />`).join(`
|
|
1704
|
+
`)}function mW($,Z){if($.length===0)return;let J=[...$].sort((Y,Q)=>Y.width-Q.width),X=J.find((Y)=>Y.width>=Z);if(X)return X;return J[J.length-1]}function _5($){return V7[$]||"application/octet-stream"}function dW($){return AX[$]||$}function lW($){switch($.split(".").pop()?.toLowerCase()){case"jpg":case"jpeg":return"jpeg";case"png":return"png";case"webp":return"webp";case"avif":return"avif";case"gif":return"gif";default:return}}var TX={strategy:"thumbhash",width:20,quality:50,blurLevel:40,transitionDuration:300,easing:"ease-out"},F5=`
|
|
1705
1705
|
.stx-img-placeholder {
|
|
1706
1706
|
position: relative;
|
|
1707
1707
|
overflow: hidden;
|
|
@@ -1730,9 +1730,9 @@ ${V}
|
|
|
1730
1730
|
filter: blur(0);
|
|
1731
1731
|
transform: scale(1);
|
|
1732
1732
|
}
|
|
1733
|
-
`.trim();async function
|
|
1733
|
+
`.trim();async function w5(){try{return await import("ts-images")}catch{return null}}async function L7($,Z={}){let J={...TX,...Z},X=await w5();if(X)try{return await kX($,J,X)}catch(Y){console.warn(`[stx-media] ts-images placeholder generation failed, using fallback: ${Y}`)}return O7($,J)}async function kX($,Z,J){let{generatePlaceholder:X,generateThumbHash:Y}=J,G={blur:"blur",thumbhash:"thumbhash",blurhash:"thumbhash",pixelate:"pixelate","dominant-color":"dominant-color",none:"blur"}[Z.strategy]||"blur";if(Z.strategy==="thumbhash")return{dataURL:(await Y($)).dataUrl,width:32,height:32,aspectRatio:1,originalWidth:0,originalHeight:0,strategy:"thumbhash"};let z=await X($,{width:Z.width,height:Z.height,quality:Z.quality,blurLevel:Z.blurLevel,strategy:G,base64Encode:!0});return{dataURL:z.dataURL,width:z.width,height:z.height,aspectRatio:z.aspectRatio,originalWidth:z.originalWidth,originalHeight:z.originalHeight,strategy:Z.strategy,dominantColor:z.dominantColor,css:z.css}}function O7($,Z){let J=Z.width||20,X=Z.height||J,Y="#e5e7eb",Q=`<svg xmlns="http://www.w3.org/2000/svg" width="${J}" height="${X}" viewBox="0 0 ${J} ${X}"><rect fill="#e5e7eb" width="${J}" height="${X}"/></svg>`;return{dataURL:`data:image/svg+xml;charset=utf-8,${encodeURIComponent(Q)}`,width:J,height:X,aspectRatio:J/X,originalWidth:0,originalHeight:0,strategy:Z.strategy,dominantColor:"#e5e7eb"}}async function pW($){let Z=await w5();if(Z)try{return(await Z.generateThumbHash($)).dataUrl}catch{}return(await O7($,{strategy:"thumbhash",width:32,height:32})).dataURL}function iW($){let Z=$[0]|$[1]<<8|$[2]<<16,J=(Z&63)/63,X=(Z>>6&63)/31.5-1,Y=(Z>>12&63)/31.5-1,Q=(Z>>18&31)/31,G=Z>>23!==0,z=$[3]|$[4]<<8,K=(z>>3&63)/63,q=(z>>9&63)/63,W=z>>15!==0,H=Math.max(3,W?G?5:7:G?5:7),U=Math.max(3,W?G?5:7:G?5:7),j=32,B=32,V=Math.max(0,Math.min(255,Math.round((J+X)*255))),_=Math.max(0,Math.min(255,Math.round(J*255))),O=Math.max(0,Math.min(255,Math.round((J-X)*255))),F=`<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32">
|
|
1734
1734
|
<rect fill="rgb(${V},${_},${O})" width="32" height="32"/>
|
|
1735
|
-
</svg>`;return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(F)}`}async function
|
|
1735
|
+
</svg>`;return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(F)}`}async function nW($,Z=20,J=50){return L7($,{strategy:"blur",width:Z,quality:J,blurLevel:40})}async function sW($){let Z=await w5();if(Z)try{return(await Z.generatePlaceholder($,{strategy:"dominant-color"})).dominantColor||"#e5e7eb"}catch{}return"#e5e7eb"}function oW($,Z=1,J=1){let X=`<svg xmlns="http://www.w3.org/2000/svg" width="${Z}" height="${J}"><rect fill="${$}" width="${Z}" height="${J}"/></svg>`;return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(X)}`}function _7($,Z,J={}){let X=J.transitionDuration||300,Y=J.easing||"ease-out";return`
|
|
1736
1736
|
#${$} {
|
|
1737
1737
|
--stx-img-transition-duration: ${X}ms;
|
|
1738
1738
|
--stx-img-transition-easing: ${Y};
|
|
@@ -1749,8 +1749,8 @@ ${V}
|
|
|
1749
1749
|
#${$}.stx-img-loaded img {
|
|
1750
1750
|
opacity: 1;
|
|
1751
1751
|
}
|
|
1752
|
-
`.trim()}function
|
|
1753
|
-
`):void 0,script:
|
|
1752
|
+
`.trim()}function rW($){return`background-image: url('${$.dataURL}'); background-size: cover; background-position: center;`}var f1=new Map;async function F7($,Z={}){let J=`${$}:${JSON.stringify(Z)}`;if(f1.has(J))return f1.get(J);let X=await L7($,Z);return f1.set(J,X),X}function aW(){f1.clear()}function tW(){return{size:f1.size,keys:Array.from(f1.keys())}}async function EX(){try{return await import("./chunk-86c461ca.js")}catch($){if(!w7)console.warn("[stx-media] Image processor not available, some features disabled:",$),w7=!0;return null}}var w7=!1,R5=80,r2="async",a2="lazy",R7=!1;async function V2($,Z={}){let J=Z,X=$;if(X.process&&!X.skipOptimization){if(J.tsImagesConfig?.enabled&&!J.isDev)return PX(X,J)}if(J.processedResult?.processed)return M5($,J.processedResult,Z);if(J.responsiveVariants)return M7($,J.responsiveVariants,Z);let{src:Y,alt:Q,width:G,height:z,sizes:K,widths:q=L1,dpr:W,formats:H=x1,quality:U=R5,params:j={},placeholder:B="none",placeholderOptions:V={},lazy:_=!0,priority:O=!1,loading:F=O?"eager":a2,decoding:L=r2,fetchpriority:w,objectFit:N,objectPosition:R,crossorigin:M,referrerpolicy:T}=$,D=$.class,I=$.style,k=$.id,A=$.data||{},{isDev:E=!1,baseUrl:C=""}=Z;if(E&&!Z.optimize)return CX($);let y,b,P=k||`stx-img-${Math.random().toString(36).slice(2,8)}`;if(B!=="none"&&!O)try{y=await F7(Y,{strategy:B,...V}),b=_7(P,y,V)}catch{}let h=W!==void 0&&G!==void 0,p;if(h)p=yX($,P,y,Z);else p=await bX($,P,y,Z);let g;if(O){let e=H.includes("webp")?"webp":H[0],i=B2(Y,q,{...j,q:U},e),q0=typeof K==="object"?O5(K):K||"100vw";g=`<link rel="preload" as="image" imagesrcset="${i}" imagesizes="${q0}" />`}let Z0=[];if(!R7&&B!=="none")Z0.push(F5),R7=!0;if(b)Z0.push(b);let J0=_?D7(P):void 0;return{html:p,preloadLink:g,css:Z0.length>0?Z0.join(`
|
|
1753
|
+
`):void 0,script:J0}}async function bX($,Z,J,X){let{src:Y,alt:Q,width:G,height:z,sizes:K,widths:q=L1,formats:W=x1,quality:H=R5,params:U={},lazy:j=!0,priority:B=!1,loading:V=B?"eager":a2,decoding:_=r2,fetchpriority:O,objectFit:F,objectPosition:L,crossorigin:w,referrerpolicy:N}=$,R=$.class,M=$.style,T=$.data||{},D=typeof K==="object"?O5(K):K||"100vw",I=[];for(let E of W){let C=B2(Y,q,{...U,q:H},E),y=_5(E);if(j&&!B)I.push(` <source type="${y}" data-srcset="${C}" data-sizes="${D}" />`);else I.push(` <source type="${y}" srcset="${C}" sizes="${D}" />`)}let k=N5({src:Q1(Y,{...U,q:H}),alt:Q,width:G,height:z,loading:B?void 0:V,decoding:_,fetchpriority:B?"high":O,objectFit:F,objectPosition:L,crossorigin:w,referrerpolicy:N,className:N7(R,J),style:D5(M,F,L,J),lazy:j&&!B,data:T}),A;if(J){let E=`background-image: url('${J.dataURL}'); background-size: cover; background-position: center;`;A=`<div id="${Z}" class="stx-img-placeholder" style="${E}">
|
|
1754
1754
|
<picture>
|
|
1755
1755
|
${I.join(`
|
|
1756
1756
|
`)}
|
|
@@ -1760,9 +1760,9 @@ ${I.join(`
|
|
|
1760
1760
|
${I.join(`
|
|
1761
1761
|
`)}
|
|
1762
1762
|
<img ${k} />
|
|
1763
|
-
</picture>`;return A}function
|
|
1763
|
+
</picture>`;return A}function yX($,Z,J,X){let{src:Y,alt:Q,width:G,height:z,dpr:K=[1,2,3],quality:q=R5,params:W={},lazy:H=!0,priority:U=!1,loading:j=U?"eager":a2,decoding:B=r2,fetchpriority:V,objectFit:_,objectPosition:O,crossorigin:F,referrerpolicy:L}=$,w=$.class,N=$.style,R=$.data||{},M=typeof G==="number"?G:Number.parseInt(String(G),10),T=L5(Y,M,K,{...W,q}),D=N5({src:Q1(Y,{...W,w:M,q}),alt:Q,width:G,height:z,loading:U?void 0:j,decoding:B,fetchpriority:U?"high":V,objectFit:_,objectPosition:O,crossorigin:F,referrerpolicy:L,className:N7(w,J),style:D5(N,_,O,J),lazy:H&&!U,data:R}),I=H&&!U?`data-srcset="${T}"`:`srcset="${T}"`;if(J){let k=`background-image: url('${J.dataURL}'); background-size: cover; background-position: center;`;return`<div id="${Z}" class="stx-img-placeholder" style="${k}">
|
|
1764
1764
|
<img ${D} ${I} />
|
|
1765
|
-
</div>`}return`<img ${Z?`id="${Z}" `:""}${D} ${I} />`}function
|
|
1765
|
+
</div>`}return`<img ${Z?`id="${Z}" `:""}${D} ${I} />`}function CX($){let{src:Z,alt:J,width:X,height:Y,loading:Q=a2,decoding:G=r2,fetchpriority:z,objectFit:K,objectPosition:q,crossorigin:W,referrerpolicy:H,priority:U=!1}=$,j=$.class,B=$.style,V=$.id,_=$.data||{};return{html:`<img ${N5({src:Z,alt:J,width:X,height:Y,loading:U?"eager":Q,decoding:G,fetchpriority:U?"high":z,objectFit:K,objectPosition:q,crossorigin:W,referrerpolicy:H,className:j,style:D5(B,K,q),id:V,data:_})} />`}}function N5($){let Z=[];if($.lazy)Z.push(`data-src="${m0($.src)}"`),Z.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"');else Z.push(`src="${m0($.src)}"`);if(Z.push(`alt="${m0($.alt)}"`),$.width)Z.push(`width="${$.width}"`);if($.height)Z.push(`height="${$.height}"`);if($.loading)Z.push(`loading="${$.loading}"`);if($.decoding)Z.push(`decoding="${$.decoding}"`);if($.fetchpriority)Z.push(`fetchpriority="${$.fetchpriority}"`);if($.crossorigin)Z.push(`crossorigin="${$.crossorigin}"`);if($.referrerpolicy)Z.push(`referrerpolicy="${$.referrerpolicy}"`);if($.className)Z.push(`class="${m0($.className)}"`);if($.style)Z.push(`style="${m0($.style)}"`);if($.id)Z.push(`id="${m0($.id)}"`);if($.data)for(let[J,X]of Object.entries($.data))Z.push(`data-${J}="${m0(X)}"`);if($.lazy)Z.push("data-stx-lazy");return Z.join(" ")}function N7($,Z){let J=[];if($)J.push($);if(Z)J.push("stx-img-blur");return J.join(" ")||""}function D5($,Z,J,X){let Y=[];if(Z)Y.push(`object-fit: ${Z}`);if(J)Y.push(`object-position: ${J}`);if(X)Y.push("opacity: 0; transition: opacity 300ms ease-out");if($)Y.push($);return Y.join("; ")}function m0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function D7($){return`
|
|
1766
1766
|
(function() {
|
|
1767
1767
|
const container = document.getElementById('${$}');
|
|
1768
1768
|
if (!container) return;
|
|
@@ -1799,7 +1799,7 @@ ${I.join(`
|
|
|
1799
1799
|
|
|
1800
1800
|
observer.observe(container);
|
|
1801
1801
|
})();
|
|
1802
|
-
`.trim()}function
|
|
1802
|
+
`.trim()}function SX($){let Z=$.match(/<Img\s+([^>]*?)\/?>/);if(!Z)return null;let J=Z[1],X={},Y=/(:?)(\w+)(?:=(?:"([^"]*)"|'([^']*)'|\{([^}]+)\}))?/g,Q;while((Q=Y.exec(J))!==null){let[,G,z,K,q,W]=Q,H=K??q??W??!0;if(G===":"&&typeof H==="string")try{X[z]=JSON.parse(H)}catch{X[z]=H}else switch(z){case"src":X.src=String(H);break;case"alt":X.alt=String(H);break;case"width":X.width=Number(H)||H;break;case"height":X.height=Number(H)||H;break;case"sizes":X.sizes=String(H);break;case"quality":X.quality=Number(H);break;case"placeholder":X.placeholder=H;break;case"lazy":X.lazy=H===!0||H==="true";break;case"priority":X.priority=H===!0||H==="true";break;case"class":X.class=String(H);break;case"style":X.style=String(H);break;case"id":X.id=String(H);break;case"loading":X.loading=H;break;case"decoding":X.decoding=H;break;case"fetchpriority":X.fetchpriority=H;break;case"objectFit":X.objectFit=H;break;case"objectPosition":X.objectPosition=String(H);break;case"crossorigin":X.crossorigin=H;break}}if(!X.src||!X.alt)return null;return X}async function JH($,Z={}){let J=/<Img\s+[^>]*?\/?>/g,X=[],Y=[],Q=[],G=$,z=[],K;while((K=J.exec($))!==null)z.push({match:K[0],index:K.index});for(let q=z.length-1;q>=0;q--){let{match:W}=z[q],H=SX(W);if(H){let U=await V2(H,Z);if(G=G.replace(W,U.html),U.preloadLink)X.push(U.preloadLink);if(U.css)Y.push(U.css);if(U.script)Q.push(U.script)}}return{html:G,preloadLinks:X,styles:Y,scripts:Q}}async function PX($,Z){let J=await EX();if(!J)return V2({...$,process:!1},Z);let X=Z.tsImagesConfig;if($.responsiveWidths&&$.responsiveWidths.length>0||$.widths&&$.widths.length>0||!$.width&&!$.dpr){let Q=await J.generateResponsiveVariants($.src,$,X);if(Q)return M7($,Q,Z)}else{let Q=await J.processImage($.src,$,X);if(Q.processed)return M5($,Q,Z)}return V2({...$,process:!1},Z)}async function M5($,Z,J){let{alt:X,width:Y,height:Q,lazy:G=!0,priority:z=!1,objectFit:K,objectPosition:q,crossorigin:W,referrerpolicy:H}=$,U=$.class,j=$.style,B=$.id||`stx-img-${Math.random().toString(36).slice(2,8)}`,V=$.data||{},_=Z.variants||[],O=_.find((b)=>b.format==="jpeg")||_.find((b)=>b.format==="webp")||_[0],F=O?.url||$.src,L=_.filter((b)=>b.format===(O?.format||"jpeg")).map((b)=>`${b.url} ${b.width}w`).join(", "),w=new Map;for(let b of _){if(!w.has(b.format))w.set(b.format,[]);w.get(b.format).push(b)}let N=[],R=["avif","webp","jpeg","png"];for(let b of R){let P=w.get(b);if(P&&P.length>0){let h=P.map((g)=>`${g.url} ${g.width}w`).join(", "),p=_5(b);if(G&&!z)N.push(` <source type="${p}" data-srcset="${h}" />`);else N.push(` <source type="${p}" srcset="${h}" />`)}}let M=[];if(G&&!z){if(M.push(`data-src="${m0(F)}"`),M.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"'),L)M.push(`data-srcset="${L}"`)}else if(M.push(`src="${m0(F)}"`),L)M.push(`srcset="${L}"`);M.push(`alt="${m0(X)}"`);let T=Y||Z.originalWidth,D=Q||Z.originalHeight;if(T)M.push(`width="${T}"`);if(D)M.push(`height="${D}"`);if(!z)M.push(`loading="${G?"lazy":"eager"}"`);if(M.push('decoding="async"'),z)M.push('fetchpriority="high"');if(W)M.push(`crossorigin="${W}"`);if(H)M.push(`referrerpolicy="${H}"`);let I=[];if(K)I.push(`object-fit: ${K}`);if(q)I.push(`object-position: ${q}`);if(Z.placeholder&&G)I.push("opacity: 0; transition: opacity 300ms ease-out");if(j)I.push(j);if(I.length>0)M.push(`style="${I.join("; ")}"`);let k=[];if(U)k.push(U);if(Z.placeholder)k.push("stx-img-blur");if(k.length>0)M.push(`class="${k.join(" ")}"`);if(G&&!z)M.push("data-stx-lazy");for(let[b,P]of Object.entries(V))M.push(`data-${b}="${m0(P)}"`);let A;if(Z.placeholder||Z.dominantColor&&$.useDominantColor){let b=Z.placeholder?`background-image: url('${Z.placeholder}'); background-size: cover; background-position: center;`:`background-color: ${Z.dominantColor};`;A=`<div id="${B}" class="stx-img-placeholder" style="${b}">
|
|
1803
1803
|
<picture>
|
|
1804
1804
|
${N.join(`
|
|
1805
1805
|
`)}
|
|
@@ -1809,11 +1809,11 @@ ${N.join(`
|
|
|
1809
1809
|
${N.join(`
|
|
1810
1810
|
`)}
|
|
1811
1811
|
<img ${M.join(" ")} />
|
|
1812
|
-
</picture>`;let E=[];if(Z.placeholder)E.push(
|
|
1813
|
-
`):void 0,script:C}}async function
|
|
1812
|
+
</picture>`;let E=[];if(Z.placeholder)E.push(F5);let C=G?D7(B):void 0,y;if(z&&L)y=`<link rel="preload" as="image" imagesrcset="${L}" />`;return{html:A,preloadLink:y,css:E.length>0?E.join(`
|
|
1813
|
+
`):void 0,script:C}}async function M7($,Z,J){let X={src:Z.src,processed:!0,variants:[],placeholder:Z.placeholder?.dataURL,originalWidth:Z.placeholder?.width,originalHeight:Z.placeholder?.height};for(let[Y,Q]of Object.entries(Z.byFormat))if(Q)X.variants.push(...Q);return M5($,X,J)}function vX(){return t2({name:"img",hasEndTag:!1,description:"Render an optimized responsive image with srcset and lazy loading",transform:async($,Z,J,X)=>{let{src:Y,alt:Q,options:G}=xX($,Z,J);if(!Y)return console.warn("@img directive: missing src argument"),"<!-- @img: missing src -->";let z={src:Y,alt:Q||"",widths:G.widths||L1,formats:G.formats||x1,quality:G.quality,sizes:G.sizes,dpr:G.dpr,params:G.params,placeholder:G.placeholder,placeholderOptions:G.placeholderOptions,lazy:G.lazy!==!1,priority:G.priority||!1,loading:G.loading,decoding:G.decoding,fetchpriority:G.fetchpriority,objectFit:G.objectFit,objectPosition:G.objectPosition,class:G.class,style:G.style,id:G.id,width:G.width,height:G.height},K=J.__isDev||!1,q=await V2(z,{isDev:K}),W=q.html;if(q.preloadLink)W=q.preloadLink+`
|
|
1814
1814
|
`+W;if(q.css)W+=`
|
|
1815
1815
|
<style>${q.css}</style>`;if(q.script)W+=`
|
|
1816
|
-
<script>${q.script}</script>`;return W},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function
|
|
1816
|
+
<script>${q.script}</script>`;return W},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function xX($,Z,J){if(Z.src)return{src:String(Z.src),alt:String(Z.alt||""),options:Z.options||{}};let X=$.trim();if(X.startsWith("@img(")||X.startsWith("("))X=X.replace(/^@img\(/,"").replace(/^\(/,"").replace(/\)$/,"");let Y=fX(X),Q=A5(Y[0],J)||"",G=A5(Y[1],J)||"",z={};if(Y[2]){let K=A5(Y[2],J);if(typeof K==="object"&&K!==null)z=K;else if(typeof Y[2]==="string")try{z=JSON.parse(Y[2])}catch{}}return{src:Q,alt:G,options:z}}function fX($){let Z=[],J="",X=!1,Y="",Q=0,G=0;for(let z=0;z<$.length;z++){let K=$[z],q=z>0?$[z-1]:"";if((K==='"'||K==="'"||K==="`")&&q!=="\\"){if(!X)X=!0,Y=K;else if(K===Y)X=!1,Y="";else J+=K;continue}if(!X){if(K==="{")Q++;if(K==="}")Q--;if(K==="[")G++;if(K==="]")G--;if(K===","&&Q===0&&G===0){Z.push(J.trim()),J="";continue}}J+=K}if(J.trim())Z.push(J.trim());return Z}function A5($,Z){if(typeof $!=="string")return $;let J=$.trim();if(J.startsWith('"')&&J.endsWith('"')||J.startsWith("'")&&J.endsWith("'"))return J.slice(1,-1);if(!J.startsWith("/")&&!J.startsWith(".")&&!J.startsWith("http")&&!J.startsWith("{")){let X=Z[J];if(X!==void 0)return X}if(J.startsWith("{")||J.startsWith("["))try{return JSON.parse(J)}catch{}return J}var A7=vX();async function T7(){try{return await import("./chunk-64n10kpa.js")}catch($){if(!I7)console.warn("[stx-media] Video processor not available, some features disabled:",$),I7=!0;return null}}var I7=!1,k7=!0,E7="metadata",gX="https://cdn.jsdelivr.net/npm/ts-video-player@latest/dist/index.min.js";async function e2($,Z={}){let J=Z,X=$;if(X.process&&!X.skipProcessing){if(J.tsVideosConfig?.enabled&&!J.isDev)return lX(X,J)}if(J.processedResult?.processed)return y7($,J.processedResult,Z);let Y;if(X.generatePoster&&X.src&&!$.poster)Y=await cX(X,J);let{src:Q,sources:G=[],poster:z,posterPlaceholder:K,controls:q=k7,autoplay:W=!1,muted:H=!1,loop:U=!1,preload:j=E7,playsinline:B=!0,lazy:V=!0,player:_="native",type:O,width:F,height:L,crossorigin:w,disablePictureInPicture:N=!1,disableRemotePlayback:R=!1}=$,M=Y||z,T=$.class,D=$.style,I=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`;if(_==="ts-video")return uX($,Z);if(O&&O!=="video")return hX(Q||"",O,$);let k=G.length>0?G:Q?[{src:Q,type:b7(Q)}]:[],A=[`id="${I}"`];if(q)A.push("controls");if(W)A.push("autoplay");if(H)A.push("muted");if(U)A.push("loop");if(B)A.push("playsinline");if(N)A.push("disablepictureinpicture");if(R)A.push("disableremoteplayback");if(w)A.push(`crossorigin="${w}"`);if(V){if(A.push(`data-preload="${j}"`),A.push('preload="none"'),M)A.push(`data-poster="${k0(M)}"`);A.push("data-stx-lazy")}else if(A.push(`preload="${j}"`),M)A.push(`poster="${k0(M)}"`);if(F)A.push(`width="${F}"`);if(L)A.push(`height="${L}"`);if(T)A.push(`class="${k0(T)}"`);if(D)A.push(`style="${k0(D)}"`);let E=k.map((b)=>{return` <source ${V?`data-src="${k0(b.src)}"`:`src="${k0(b.src)}"`} type="${b.type}"${b.media?` media="${b.media}"`:""} />`}).join(`
|
|
1817
1817
|
`),C=`<video ${A.join(" ")}>
|
|
1818
1818
|
${E}
|
|
1819
1819
|
Your browser does not support the video tag.
|
|
@@ -1852,16 +1852,16 @@ ${E}
|
|
|
1852
1852
|
|
|
1853
1853
|
observer.observe(video);
|
|
1854
1854
|
})();
|
|
1855
|
-
`.trim();return{html:C,script:y}}function
|
|
1855
|
+
`.trim();return{html:C,script:y}}function hX($,Z,J){let{width:X=640,height:Y=360}=J,Q=J.class,G=J.style,z=J.id||`stx-embed-${Math.random().toString(36).slice(2,8)}`,K,q=null;switch(Z){case"youtube":q=mX($),K=q?`https://www.youtube-nocookie.com/embed/${q}`:$;break;case"vimeo":q=dX($),K=q?`https://player.vimeo.com/video/${q}`:$;break;case"dailymotion":q=$.split("/").pop()||"",K=`https://www.dailymotion.com/embed/video/${q}`;break;case"twitch":q=$.split("/").pop()||"",K=`https://player.twitch.tv/?video=${q}&parent=${typeof window<"u"?window.location.hostname:"localhost"}`;break;default:K=$}let W=[`id="${z}"`,`src="${k0(K)}"`,`width="${X}"`,`height="${Y}"`,'frameborder="0"',"allowfullscreen",'allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"'];if(Q)W.push(`class="${k0(Q)}"`);if(G)W.push(`style="${k0(G)}"`);if(J.lazy)W.push('loading="lazy"');return{html:`<div class="stx-video-embed" style="position:relative;padding-bottom:56.25%;height:0;overflow:hidden;">
|
|
1856
1856
|
<iframe ${W.join(" ")} style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>
|
|
1857
|
-
</div>`}}function
|
|
1857
|
+
</div>`}}function uX($,Z={}){let{src:J,sources:X=[],poster:Y,controls:Q=!0,autoplay:G=!1,muted:z=!1,loop:K=!1,preload:q="metadata",playsinline:W=!0,lazy:H=!0,width:U,height:j}=$,B=$.class,V=$.style,_=$.id||`ts-video-${Math.random().toString(36).slice(2,8)}`,O={src:X.length>0?X:J,autoplay:G,loop:K,muted:z,playsinline:W,preload:q,poster:Y,controls:Q,title:$.title},F=["position: relative",U?`width: ${typeof U==="number"?U+"px":U}`:"width: 100%",j?`height: ${typeof j==="number"?j+"px":j}`:"",V||""].filter(Boolean).join("; "),L=`
|
|
1858
1858
|
<div
|
|
1859
1859
|
id="${_}"
|
|
1860
1860
|
class="ts-video-player${B?" "+k0(B):""}"
|
|
1861
1861
|
style="${F}"
|
|
1862
1862
|
data-ts-video-player
|
|
1863
1863
|
data-config='${JSON.stringify(O)}'
|
|
1864
|
-
${
|
|
1864
|
+
${H?"data-lazy":""}
|
|
1865
1865
|
>
|
|
1866
1866
|
<div class="ts-video-player__container">
|
|
1867
1867
|
${Y?`
|
|
@@ -1891,7 +1891,7 @@ ${E}
|
|
|
1891
1891
|
|
|
1892
1892
|
// Load ts-video-player from CDN
|
|
1893
1893
|
var script = document.createElement('script');
|
|
1894
|
-
script.src = '${
|
|
1894
|
+
script.src = '${gX}';
|
|
1895
1895
|
script.onload = initPlayer;
|
|
1896
1896
|
script.onerror = function() {
|
|
1897
1897
|
console.error('[stx] Failed to load ts-video-player');
|
|
@@ -2021,7 +2021,7 @@ else {
|
|
|
2021
2021
|
.ts-video-player__play-button svg {
|
|
2022
2022
|
margin-left: 4px;
|
|
2023
2023
|
}
|
|
2024
|
-
`.trim();return{html:L,script:w,css:N}}function
|
|
2024
|
+
`.trim();return{html:L,script:w,css:N}}function b7($){switch($.split(".").pop()?.toLowerCase()){case"mp4":return"video/mp4";case"webm":return"video/webm";case"ogg":case"ogv":return"video/ogg";case"mov":return"video/quicktime";case"avi":return"video/x-msvideo";case"mkv":return"video/x-matroska";case"m3u8":return"application/x-mpegURL";default:return"video/mp4"}}function mX($){let Z=[/youtube\.com\/watch\?v=([^&]+)/,/youtube\.com\/embed\/([^?]+)/,/youtu\.be\/([^?]+)/,/youtube\.com\/v\/([^?]+)/];for(let J of Z){let X=$.match(J);if(X)return X[1]}return null}function dX($){let Z=$.match(/vimeo\.com\/(\d+)/);return Z?Z[1]:null}function k0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'")}function KH($,Z,J){if(Z.src)return{src:String(Z.src),...Z};let X=$.trim();if(X.startsWith("@video(")||X.startsWith("("))X=X.replace(/^@video\(/,"").replace(/^\(/,"").replace(/\)$/,"");let Y=X.indexOf(",");if(Y===-1)return{src:X.replace(/^['"]|['"]$/g,"")};let Q=X.slice(0,Y).trim().replace(/^['"]|['"]$/g,""),G=X.slice(Y+1).trim();try{let z=JSON.parse(G);return{src:Q,...z}}catch{return{src:Q}}}async function lX($,Z){let J=await T7();if(!J)return e2({...$,process:!1},Z);let X=Z.tsVideosConfig,Y=await J.processVideo($.src,$,X,$.onProcessProgress);if(Y.processed)return y7($,Y,Z);return e2({...$,process:!1},Z)}async function cX($,Z){let J=await T7();if(!J||!$.src)return;let X=typeof $.generatePoster==="object"?$.generatePoster:{timestamp:0},Y=Z.tsVideosConfig||{enabled:!0,outputDir:"dist/videos",baseUrl:"/videos"};return(await J.generatePoster($.src,X,Y.outputDir,Y.baseUrl||"/videos"))?.url}function y7($,Z,J){let{controls:X=k7,autoplay:Y=!1,muted:Q=!1,loop:G=!1,preload:z=E7,playsinline:K=!0,lazy:q=!0,width:W,height:H,crossorigin:U,disablePictureInPicture:j=!1,disableRemotePlayback:B=!1}=$,V=$.class,_=$.style,O=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`,F=$.src,L=b7(F);if(Z.transcoded)F=Z.transcoded.url,L="video/mp4";let w=Z.streaming?.hls||Z.streaming?.dash;if(w){if(Z.streaming?.hls)F=Z.streaming.hls.manifestUrl,L="application/x-mpegURL";else if(Z.streaming?.dash)F=Z.streaming.dash.manifestUrl,L="application/dash+xml"}let N=Z.poster?.url||$.poster,R=[`id="${O}"`];if(X)R.push("controls");if(Y)R.push("autoplay");if(Q)R.push("muted");if(G)R.push("loop");if(K)R.push("playsinline");if(j)R.push("disablepictureinpicture");if(B)R.push("disableremoteplayback");if(U)R.push(`crossorigin="${U}"`);if(q){if(R.push(`data-preload="${z}"`),R.push('preload="none"'),N)R.push(`data-poster="${k0(N)}"`);R.push("data-stx-lazy")}else if(R.push(`preload="${z}"`),N)R.push(`poster="${k0(N)}"`);let M=W||Z.metadata?.width,T=H||Z.metadata?.height;if(M)R.push(`width="${M}"`);if(T)R.push(`height="${T}"`);if(V)R.push(`class="${k0(V)}"`);if(_)R.push(`style="${k0(_)}"`);let I=` <source ${q?`data-src="${k0(F)}"`:`src="${k0(F)}"`} type="${L}" />`,k=`<video ${R.join(" ")}>
|
|
2025
2025
|
${I}
|
|
2026
2026
|
Your browser does not support the video tag.
|
|
2027
2027
|
</video>`;if(Z.spriteSheet)k=`<div class="stx-video-wrapper" data-sprite-sheet="${k0(Z.spriteSheet.url)}" data-sprite-cols="${Z.spriteSheet.columns}" data-sprite-interval="${Z.spriteSheet.interval}">
|
|
@@ -2070,9 +2070,9 @@ ${k}
|
|
|
2070
2070
|
width: 100%;
|
|
2071
2071
|
height: auto;
|
|
2072
2072
|
}
|
|
2073
|
-
`.trim();return{html:k,script:A,css:E}}function
|
|
2073
|
+
`.trim();return{html:k,script:A,css:E}}function C7(){return t2({name:"video",hasEndTag:!1,description:"Render a video with optional ts-videos processing, streaming, and poster generation",transform:async($,Z,J,X)=>{let{src:Y,options:Q}=pX($,Z,J);if(!Y)return console.warn("@video directive: missing src argument"),"<!-- @video: missing src -->";let G={src:Y,poster:Q.poster,controls:Q.controls!==!1,autoplay:Q.autoplay||!1,muted:Q.muted||!1,loop:Q.loop||!1,preload:Q.preload||"metadata",playsinline:Q.playsinline!==!1,lazy:Q.lazy!==!1,player:Q.player||"native",type:Q.type,width:Q.width,height:Q.height,class:Q.class,style:Q.style,id:Q.id,crossorigin:Q.crossorigin,disablePictureInPicture:Q.disablePictureInPicture,disableRemotePlayback:Q.disableRemotePlayback,title:Q.title,quality:Q.quality,platform:Q.platform,process:Q.process,generatePoster:Q.generatePoster,streaming:Q.streaming,transcode:Q.transcode,spriteSheet:Q.spriteSheet,waveform:Q.waveform},K={isDev:J.__isDev||!1,tsVideosConfig:J.__tsVideosConfig},q=await e2(G,K),W=q.html;if(q.css)W+=`
|
|
2074
2074
|
<style>${q.css}</style>`;if(q.script)W+=`
|
|
2075
|
-
<script>${q.script}</script>`;return W},defaults:{src:"",options:{controls:!0,lazy:!0,preload:"metadata"}}})}function
|
|
2075
|
+
<script>${q.script}</script>`;return W},defaults:{src:"",options:{controls:!0,lazy:!0,preload:"metadata"}}})}function pX($,Z,J){if(Z.src)return{src:String(Z.src),options:Z.options||{}};let X=$.trim();if(X.startsWith("@video(")||X.startsWith("("))X=X.replace(/^@video\(/,"").replace(/^\(/,"").replace(/\)$/,"");let Y=iX(X),Q=S7(Y[0],J)||"",G={};if(Y[1]){let z=S7(Y[1],J);if(typeof z==="object"&&z!==null)G=z;else if(typeof Y[1]==="string")try{G=JSON.parse(Y[1])}catch{}}return{src:Q,options:G}}function iX($){let Z=[],J="",X=!1,Y="",Q=0,G=0;for(let z=0;z<$.length;z++){let K=$[z],q=z>0?$[z-1]:"";if((K==='"'||K==="'"||K==="`")&&q!=="\\"){if(!X)X=!0,Y=K;else if(K===Y)X=!1,Y="";else J+=K;continue}if(!X){if(K==="{")Q++;if(K==="}")Q--;if(K==="[")G++;if(K==="]")G--;if(K===","&&Q===0&&G===0){Z.push(J.trim()),J="";continue}}J+=K}if(J.trim())Z.push(J.trim());return Z}function S7($,Z){if(typeof $!=="string")return $;let J=$.trim();if(J.startsWith('"')&&J.endsWith('"')||J.startsWith("'")&&J.endsWith("'"))return J.slice(1,-1);if(!J.startsWith("/")&&!J.startsWith(".")&&!J.startsWith("http")&&!J.startsWith("{")){let X=Z[J];if(X!==void 0)return X}if(J.startsWith("{")||J.startsWith("["))try{return JSON.parse(J)}catch{}return J}var I5=C7();import nX from"fs";import f0 from"path";async function _H($,Z){if(!$.webComponents?.enabled)return[];let J=$.webComponents.components||[],X=[];if(J.length>0){if($.debug)console.log(`Building ${J.length} web components...`);for(let Y of J)try{let Q=await sX(Y,$,Z);if(Q)X.push(Q)}catch(Q){if(console.error(`Error building web component ${Y.name}:`,Q),$.debug)throw Q}}return X}async function sX($,Z,J){let{name:X,file:Y,tag:Q,extends:G}=$;if(!X||!Y||!Q)return console.error("Invalid web component configuration, missing required fields:",$),null;let z=null;if(f0.isAbsolute(Y)&&await t(Y))z=Y;else if(Z.componentsDir){let V=f0.join(Z.componentsDir,Y);if(await t(V))z=V}if(!z)z=await $9(Y,process.cwd(),Z,J);if(!z)return console.error(`Web component source file not found: ${Y}`),null;let K=await Bun.file(z).text();J.add(z);let W=($.outputFormat||"js")==="ts",H=W?rX({name:X,tag:Q,baseElement:G,source:K,shadowDOM:$.shadowDOM??!0,template:$.template??!0,styleSource:$.styleSource,attributes:$.attributes||[],attributeTypes:$.attributeTypes||{}}):oX({name:X,tag:Q,baseElement:G,source:K,shadowDOM:$.shadowDOM??!0,template:$.template??!0,styleSource:$.styleSource,attributes:$.attributes||[]}),U=Z.webComponents?.outputDir||"dist/web-components";await nX.promises.mkdir(U,{recursive:!0});let j=W?"ts":"js",B=f0.join(U,`${Q}.${j}`);if(await Bun.write(B,H),Z.debug)console.log(`Built web component ${X} -> ${B}`);return B}function oX($){let{name:Z,tag:J,baseElement:X="HTMLElement",source:Y,shadowDOM:Q,template:G,styleSource:z,attributes:K=[]}=$,q=Y.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,"").trim();if(!Q)q=q.replace(/<slot\s+name=["']([^"']+)["']\s*>([\s\S]*?)<\/slot>/gi,'<div data-slot="$1">$2</div>'),q=q.replace(/<slot\s+name=["']([^"']+)["']\s*\/>/gi,'<div data-slot="$1"></div>'),q=q.replace(/<slot\s*>([\s\S]*?)<\/slot>/gi,"<div data-default-slot>$1</div>"),q=q.replace(/<slot\s*\/>/gi,"<div data-default-slot></div>");let W="";if(z)W=`<link rel="stylesheet" href="${z}">`;return`/**
|
|
2076
2076
|
* ${Z} Web Component
|
|
2077
2077
|
* Auto-generated from stx component
|
|
2078
2078
|
*/
|
|
@@ -2139,7 +2139,7 @@ class ${Z.replace(/\W/g,"")} extends ${X} {
|
|
|
2139
2139
|
|
|
2140
2140
|
${K.length>0?`
|
|
2141
2141
|
static get observedAttributes() {
|
|
2142
|
-
return [${K.map((
|
|
2142
|
+
return [${K.map((H)=>`'${H}'`).join(", ")}]
|
|
2143
2143
|
}
|
|
2144
2144
|
|
|
2145
2145
|
attributeChangedCallback(name, oldValue, newValue) {
|
|
@@ -2164,7 +2164,7 @@ class ${Z.replace(/\W/g,"")} extends ${X} {
|
|
|
2164
2164
|
|
|
2165
2165
|
// Register the web component
|
|
2166
2166
|
customElements.define('${J}', ${Z.replace(/\W/g,"")})
|
|
2167
|
-
`}function
|
|
2167
|
+
`}function rX($){let{name:Z,tag:J,baseElement:X="HTMLElement",source:Y,shadowDOM:Q,template:G,styleSource:z,attributes:K=[],attributeTypes:q={}}=$,W=Z.replace(/\W/g,""),H=Y.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,"").trim();if(!Q)H=H.replace(/<slot\s+name=["']([^"']+)["']\s*>([\s\S]*?)<\/slot>/gi,'<div data-slot="$1">$2</div>'),H=H.replace(/<slot\s+name=["']([^"']+)["']\s*\/>/gi,'<div data-slot="$1"></div>'),H=H.replace(/<slot\s*>([\s\S]*?)<\/slot>/gi,"<div data-default-slot>$1</div>"),H=H.replace(/<slot\s*\/>/gi,"<div data-default-slot></div>");H=H.replace(/`/g,"\\`").replace(/\$\{/g,"\\${");let U=z?`<link rel="stylesheet" href="${z}">`:"",j=(N)=>{switch(q[N]){case"number":return"number";case"boolean":return"boolean";case"object":return"Record<string, unknown>";default:return"string"}},B=(N)=>N.replace(/-([a-z])/g,(R,M)=>M.toUpperCase()),V=K.map((N)=>` private _${B(N)}: ${j(N)} | null = null;`).join(`
|
|
2168
2168
|
`),_=K.map((N)=>{let R=j(N),M=B(N);return`
|
|
2169
2169
|
get ${M}(): ${R} | null {
|
|
2170
2170
|
return this._${M};
|
|
@@ -2214,12 +2214,12 @@ catch { return value; }
|
|
|
2214
2214
|
`:"",L=G?`
|
|
2215
2215
|
private _createTemplate(): void {
|
|
2216
2216
|
const template = document.createElement('template');
|
|
2217
|
-
template.innerHTML = \`${
|
|
2217
|
+
template.innerHTML = \`${U}${H}\`;
|
|
2218
2218
|
${Q?"this.shadowRoot!.appendChild(template.content.cloneNode(true));":"this.appendChild(template.content.cloneNode(true));"}
|
|
2219
2219
|
this._processSlots();
|
|
2220
2220
|
}`:`
|
|
2221
2221
|
private _render(): void {
|
|
2222
|
-
${Q?"this.shadowRoot!.innerHTML":"this.innerHTML"} = \`${
|
|
2222
|
+
${Q?"this.shadowRoot!.innerHTML":"this.innerHTML"} = \`${U}${H}\`;
|
|
2223
2223
|
this._processSlots();
|
|
2224
2224
|
}`;return`/**
|
|
2225
2225
|
* ${Z} Web Component
|
|
@@ -2319,10 +2319,10 @@ declare global {
|
|
|
2319
2319
|
|
|
2320
2320
|
// Register the web component
|
|
2321
2321
|
customElements.define('${J}', ${W});
|
|
2322
|
-
`}var
|
|
2322
|
+
`}var T5={strategy:"attribute",attributeName:"data-v",preserveOriginal:!0};function k5($){let Z=$.split("").reduce((J,X)=>(J<<5)-J+X.charCodeAt(0)|0,0);return Math.abs(Z).toString(36).slice(0,8)}function aX($,Z,J={}){let X={...T5,...J},Y=k5(Z);switch(X.strategy){case"shadow":return $;case"prefix":return eX($,X.prefix||Z,X.preserveOriginal);case"attribute":return tX($,Y,X.attributeName||"data-v",X.preserveOriginal);case"bem":return $Y($,Z,X.preserveOriginal);default:return $}}function tX($,Z,J,X){let Y=`[${J}-${Z}]`;return $.replace(/([.#]?[\w-]+|\*)\s*(\{|,)/g,(Q,G,z)=>{if(G.startsWith("@"))return Q;if(/^(?::root|:host|html|body)$/i.test(G))return Q;return`${X?`${G}${Y}`:`${G}${Y}`}${z}`})}function eX($,Z,J){return $.replace(/\.([a-z_][\w-]*)/gi,(X,Y)=>{if(Y.startsWith(Z))return X;let Q=`${Z}__${Y}`;return J?`.${Q}`:`.${Q}`})}function $Y($,Z,J){let X=Z.replace(/[^a-z0-9]/gi,"-");return $.replace(/\.([a-z_][\w-]*)/gi,(Y,Q)=>{if(Q.includes("__")||Q.includes("--")){if(!Q.startsWith(X))return`.${X}__${Q}`;return Y}let G=`${X}__${Q}`;return J?`.${G}`:`.${G}`})}function ZY($,Z,J={}){let X={...T5,...J};if(X.strategy==="shadow")return $;if(X.strategy==="attribute"){let Y=k5(Z),G=`${X.attributeName||"data-v"}-${Y}`;return $.replace(/<([a-z][a-z0-9-]*)([^>]*)>/gi,(z,K,q)=>{if(/^(?:script|style|!--)$/i.test(K))return z;let W=q.trimEnd().endsWith("/"),H=W?q.slice(0,-1):q;return`<${K}${H} ${G}${W?"/":""}>`})}if(X.strategy==="prefix"||X.strategy==="bem"){let Y=X.strategy==="bem"?Z.replace(/[^a-z0-9]/gi,"-"):X.prefix||Z;return $.replace(/\bclass\s*=\s*["']([^"']+)["']/gi,(Q,G)=>{return`class="${G.split(/\s+/).map((K)=>{if(!K)return K;if(K.startsWith(Y))return K;return`${Y}__${K}`}).join(" ")}"`})}return $}function FH($,Z={}){let J={...T5,...Z},X=k5($);return`${J.attributeName||"data-v"}-${X}`}function wH($,Z,J={}){let X="",Y=$.replace(/<style([^>]*)>([\s\S]*?)<\/style>/gi,(G,z,K)=>{if(/\bscoped\b/i.test(z)||J.strategy!=="shadow")X+=`${aX(K,Z,J)}
|
|
2323
2323
|
`;else X+=`${K}
|
|
2324
|
-
`;return""});return{html:
|
|
2325
|
-
`),_=j.map((T)=>{let D=z[T],I=D.attribute!==!1?D.attribute||
|
|
2324
|
+
`;return""});return{html:ZY(Y,Z,J),css:X.trim()}}function g1($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function RH($){let{name:Z,tag:J,baseElement:X="HTMLElement",template:Y,styles:Q="",shadowDOM:G=!0,properties:z={},lifecycle:K={},events:q={},methods:W={},state:H={}}=$,U=Z.replace(/\W/g,""),j=Object.keys(z),B=j.filter((T)=>z[T].attribute!==!1).map((T)=>z[T].attribute||g1(T)),V=j.map((T)=>{let D=z[T],I=D.default!==void 0?JSON.stringify(D.default):D.type==="string"?'""':D.type==="number"?"0":D.type==="boolean"?"false":D.type==="array"?"[]":"{}";return` this._${T} = ${I};`}).join(`
|
|
2325
|
+
`),_=j.map((T)=>{let D=z[T],I=D.attribute!==!1?D.attribute||g1(T):null,k=D.reflect&&I?`
|
|
2326
2326
|
if (value !== null && value !== undefined) {
|
|
2327
2327
|
${D.type==="boolean"?`if (value) { this.setAttribute('${I}', ''); }
|
|
2328
2328
|
else { this.removeAttribute('${I}'); }`:`this.setAttribute('${I}', ${D.type==="object"||D.type==="array"?"JSON.stringify(value)":"String(value)"});`}
|
|
@@ -2363,19 +2363,19 @@ else {
|
|
|
2363
2363
|
${T}() {
|
|
2364
2364
|
${D}
|
|
2365
2365
|
}`}).join(`
|
|
2366
|
-
`),w=JSON.stringify(Object.fromEntries(j.map((T)=>[T,z[T]]))),N=JSON.stringify(Object.fromEntries(j.filter((T)=>z[T].attribute!==!1).map((T)=>[z[T].attribute||
|
|
2366
|
+
`),w=JSON.stringify(Object.fromEntries(j.map((T)=>[T,z[T]]))),N=JSON.stringify(Object.fromEntries(j.filter((T)=>z[T].attribute!==!1).map((T)=>[z[T].attribute||g1(T),T]))),R=Y.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$\{/g,"\\${"),M=Q.replace(/\\/g,"\\\\").replace(/`/g,"\\`");return`/**
|
|
2367
2367
|
* ${Z} - Reactive Web Component
|
|
2368
2368
|
* Auto-generated with reactive properties and lifecycle management
|
|
2369
2369
|
*
|
|
2370
2370
|
* @customElement ${J}
|
|
2371
2371
|
*/
|
|
2372
|
-
class ${
|
|
2372
|
+
class ${U} extends ${X} {
|
|
2373
2373
|
// Property definitions
|
|
2374
2374
|
_propertyDefs = ${w};
|
|
2375
2375
|
_attrToProp = ${N};
|
|
2376
2376
|
|
|
2377
2377
|
// Internal state
|
|
2378
|
-
_state = ${JSON.stringify(
|
|
2378
|
+
_state = ${JSON.stringify(H)};
|
|
2379
2379
|
_renderPending = false;
|
|
2380
2380
|
_isConnected = false;
|
|
2381
2381
|
|
|
@@ -2518,33 +2518,33 @@ ${L}
|
|
|
2518
2518
|
}
|
|
2519
2519
|
|
|
2520
2520
|
// Register the custom element
|
|
2521
|
-
customElements.define('${J}', ${
|
|
2521
|
+
customElements.define('${J}', ${U});
|
|
2522
2522
|
|
|
2523
2523
|
// Export for module usage
|
|
2524
|
-
export { ${
|
|
2525
|
-
export default ${
|
|
2526
|
-
`}function
|
|
2524
|
+
export { ${U} };
|
|
2525
|
+
export default ${U};
|
|
2526
|
+
`}function NH($){let{name:Z,tag:J,baseElement:X="HTMLElement",template:Y,styles:Q="",shadowDOM:G=!0,properties:z={},lifecycle:K={},events:q={},methods:W={},state:H={}}=$,U=Z.replace(/\W/g,""),j=Object.keys(z),B=j.filter((D)=>z[D].attribute!==!1).map((D)=>z[D].attribute||g1(D)),V=(D)=>{switch(D){case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"object":return"Record<string, unknown>";case"array":return"unknown[]";default:return"unknown"}},_=j.length>0?`
|
|
2527
2527
|
/**
|
|
2528
2528
|
* Props interface for ${Z}
|
|
2529
2529
|
*/
|
|
2530
|
-
export interface ${
|
|
2530
|
+
export interface ${U}Props {
|
|
2531
2531
|
${j.map((D)=>` ${D}?: ${V(z[D].type)};`).join(`
|
|
2532
2532
|
`)}
|
|
2533
2533
|
}
|
|
2534
|
-
`:"",O=Object.keys(
|
|
2534
|
+
`:"",O=Object.keys(H).length>0?`
|
|
2535
2535
|
/**
|
|
2536
2536
|
* State interface for ${Z}
|
|
2537
2537
|
*/
|
|
2538
|
-
export interface ${
|
|
2539
|
-
${Object.entries(
|
|
2538
|
+
export interface ${U}State {
|
|
2539
|
+
${Object.entries(H).map(([D,I])=>` ${D}: ${typeof I};`).join(`
|
|
2540
2540
|
`)}
|
|
2541
2541
|
}
|
|
2542
2542
|
`:`
|
|
2543
|
-
export interface ${
|
|
2543
|
+
export interface ${U}State {
|
|
2544
2544
|
[key: string]: unknown;
|
|
2545
2545
|
}
|
|
2546
2546
|
`,F=j.map((D)=>{let I=z[D],k=V(I.type);return` private _${D}: ${k};`}).join(`
|
|
2547
|
-
`),L=j.map((D)=>{let I=z[D],k=V(I.type),A=I.attribute!==!1?I.attribute||
|
|
2547
|
+
`),L=j.map((D)=>{let I=z[D],k=V(I.type),A=I.attribute!==!1?I.attribute||g1(D):null,E=I.default!==void 0?JSON.stringify(I.default):I.type==="string"?'""':I.type==="number"?"0":I.type==="boolean"?"false":I.type==="array"?"[]":"{}",C=I.reflect&&A?`
|
|
2548
2548
|
if (value !== null && value !== undefined) {
|
|
2549
2549
|
${I.type==="boolean"?`if (value) { this.setAttribute('${A}', ''); }
|
|
2550
2550
|
else { this.removeAttribute('${A}'); }`:`this.setAttribute('${A}', ${I.type==="object"||I.type==="array"?"JSON.stringify(value)":"String(value)"});`}
|
|
@@ -2612,13 +2612,13 @@ interface PropertyDefinition {
|
|
|
2612
2612
|
/**
|
|
2613
2613
|
* ${Z} custom element
|
|
2614
2614
|
*/
|
|
2615
|
-
export class ${
|
|
2615
|
+
export class ${U} extends ${X} {
|
|
2616
2616
|
// Property definitions
|
|
2617
2617
|
private _propertyDefs: Record<string, PropertyDefinition> = ${JSON.stringify(z)};
|
|
2618
|
-
private _attrToProp: Record<string, string> = ${JSON.stringify(Object.fromEntries(j.filter((D)=>z[D].attribute!==!1).map((D)=>[z[D].attribute||
|
|
2618
|
+
private _attrToProp: Record<string, string> = ${JSON.stringify(Object.fromEntries(j.filter((D)=>z[D].attribute!==!1).map((D)=>[z[D].attribute||g1(D),D])))};
|
|
2619
2619
|
|
|
2620
2620
|
// Internal state
|
|
2621
|
-
private _state: ${
|
|
2621
|
+
private _state: ${U}State = ${JSON.stringify(H)};
|
|
2622
2622
|
private _renderPending = false;
|
|
2623
2623
|
private _isConnected = false;
|
|
2624
2624
|
private _root: ShadowRoot | HTMLElement;
|
|
@@ -2651,14 +2651,14 @@ ${L}
|
|
|
2651
2651
|
/**
|
|
2652
2652
|
* Get current internal state
|
|
2653
2653
|
*/
|
|
2654
|
-
get state(): ${
|
|
2654
|
+
get state(): ${U}State {
|
|
2655
2655
|
return { ...this._state };
|
|
2656
2656
|
}
|
|
2657
2657
|
|
|
2658
2658
|
/**
|
|
2659
2659
|
* Update internal state and trigger re-render
|
|
2660
2660
|
*/
|
|
2661
|
-
setState(updates: Partial<${
|
|
2661
|
+
setState(updates: Partial<${U}State>): void {
|
|
2662
2662
|
const oldState = { ...this._state };
|
|
2663
2663
|
this._state = { ...this._state, ...updates };
|
|
2664
2664
|
this._scheduleRender();
|
|
@@ -2699,7 +2699,7 @@ ${L}
|
|
|
2699
2699
|
return String(value);
|
|
2700
2700
|
}
|
|
2701
2701
|
if (propName in this._state) {
|
|
2702
|
-
const value = this._state[propName as keyof ${
|
|
2702
|
+
const value = this._state[propName as keyof ${U}State];
|
|
2703
2703
|
if (value === null || value === undefined) return '';
|
|
2704
2704
|
if (typeof value === 'object') return JSON.stringify(value);
|
|
2705
2705
|
return String(value);
|
|
@@ -2767,15 +2767,15 @@ ${R}
|
|
|
2767
2767
|
// Type augmentation for HTMLElementTagNameMap
|
|
2768
2768
|
declare global {
|
|
2769
2769
|
interface HTMLElementTagNameMap {
|
|
2770
|
-
'${J}': ${
|
|
2770
|
+
'${J}': ${U};
|
|
2771
2771
|
}
|
|
2772
2772
|
}
|
|
2773
2773
|
|
|
2774
2774
|
// Register the custom element
|
|
2775
|
-
customElements.define('${J}', ${
|
|
2775
|
+
customElements.define('${J}', ${U});
|
|
2776
2776
|
|
|
2777
|
-
export default ${
|
|
2778
|
-
`}function
|
|
2777
|
+
export default ${U};
|
|
2778
|
+
`}function DH(){return`/**
|
|
2779
2779
|
* ReactiveElement Mixin
|
|
2780
2780
|
* Adds reactive properties and lifecycle management to web components
|
|
2781
2781
|
*/
|
|
@@ -2897,7 +2897,7 @@ else {
|
|
|
2897
2897
|
|
|
2898
2898
|
export { ReactiveElement };
|
|
2899
2899
|
export default ReactiveElement;
|
|
2900
|
-
`}function
|
|
2900
|
+
`}function MH(){return`/**
|
|
2901
2901
|
* stx Reactive Web Components Runtime
|
|
2902
2902
|
* Provides base classes and utilities for reactive web components
|
|
2903
2903
|
*/
|
|
@@ -3114,16 +3114,16 @@ else {
|
|
|
3114
3114
|
};
|
|
3115
3115
|
|
|
3116
3116
|
})(typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : this);
|
|
3117
|
-
`}function
|
|
3118
|
-
get ${
|
|
3119
|
-
return this.getAttribute('${
|
|
3117
|
+
`}function JY($,Z){let J=$.match(/<script\b[^>]*>([\s\S]*?)<\/script>/i),X=J?J[1].trim():"",Y=Z,Q=[],G=!0;if(X){let H=X.match(/export\s+default\s+({[\s\S]*})/);if(H)try{let U=H[1],j=U.match(/tag\s*:\s*['"`]([^'"`]+)['"`]/);if(j)Y=j[1];let B=U.match(/props\s*:\s*\[([\s\S]*?)\]/);if(B)Q=B[1].split(",").map((_)=>_.trim().replace(/['"`]/g,"")).filter((_)=>_.length>0);let V=U.match(/shadowDOM\s*:\s*(true|false)/);if(V)G=V[1]==="true"}catch{}}let z=$.match(/<template\b(?![^>]*\bid\s*=)[^>]*>([\s\S]*?)<\/template>/i),K=z?z[1].trim():"",q=$.match(/<style\b[^>]*>([\s\S]*?)<\/style>/i),W=q?q[1].trim():"";return{tag:Y,props:Q,template:K,styles:W,script:X,shadowDOM:G}}function XY($){let{tag:Z,props:J,template:X,styles:Y,shadowDOM:Q}=$,G=Z.split("-").map((H)=>H.charAt(0).toUpperCase()+H.slice(1)).join(""),z=X.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$\{/g,"\\${"),K=Y.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),q=J.map((H)=>`'${H}'`).join(", "),W=J.map((H)=>`
|
|
3118
|
+
get ${H}() {
|
|
3119
|
+
return this.getAttribute('${H}') || '';
|
|
3120
3120
|
}
|
|
3121
|
-
set ${
|
|
3121
|
+
set ${H}(value) {
|
|
3122
3122
|
if (value) {
|
|
3123
|
-
this.setAttribute('${
|
|
3123
|
+
this.setAttribute('${H}', value);
|
|
3124
3124
|
}
|
|
3125
3125
|
else {
|
|
3126
|
-
this.removeAttribute('${
|
|
3126
|
+
this.removeAttribute('${H}');
|
|
3127
3127
|
}
|
|
3128
3128
|
}`).join(`
|
|
3129
3129
|
`);return`/**
|
|
@@ -3165,12 +3165,12 @@ ${W}
|
|
|
3165
3165
|
}
|
|
3166
3166
|
|
|
3167
3167
|
customElements.define('${Z}', ${G});
|
|
3168
|
-
`}async function
|
|
3169
|
-
${
|
|
3170
|
-
</script>`}var k5={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:P7,cachePath:".stx/cache",cacheVersion:"1.0.0",componentRenderCacheBytes:33554432,build:{pagesDir:"pages",outputDir:"dist",baseUrl:"/",sitemap:!0,minify:!0,cache:!0,cacheDir:".stx/ssg-cache",concurrency:10,generate404:!0,publicDir:"public",trailingSlash:!1,cleanOutput:!0},customDirectives:[{name:"markdown",handler:q7,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:b7,hasEndTag:!1,description:"Include a web component in the template"},C7,S7,h7,u7,K5,W5,U5,q5,Q7,s3,R7,A5,...m7],middleware:[],i18n:{defaultLocale:"en",locale:"en",translationsDir:"translations",format:"yaml",fallbackToKey:!0,cache:!0},webComponents:{enabled:!1,outputDir:"dist/web-components",components:[]},docs:{enabled:!1,outputDir:"docs",format:"markdown",components:!0,templates:!0,directives:!0},streaming:{enabled:!0,bufferSize:16384,strategy:"auto",timeout:30000},hydration:{enabled:!1,mode:"islands",clientEntry:"src/client.ts",autoMarkers:!0,preload:"lazy"},router:{enabled:!0,container:"main",linkSelector:"a[href]",viewTransitions:!0,scrollToTop:!0,scrollRestoration:!0,prefetch:!0,cache:!0,cacheTTL:300000,skipSelectors:'[data-no-router], [target="_blank"]',viewTransitionCSS:{oldRoot:"fade-out 0.15s ease-in",newRoot:"fade-in 0.2s ease-out",oldContent:"slide-out 0.2s ease-in",newContent:"slide-in 0.25s ease-out"}},a11y:{enabled:!0,addSrOnlyStyles:!0,level:"AA",autoFix:!1,ignoreChecks:[]},seo:{enabled:!0,socialPreview:!0,defaultConfig:{title:"stx Project",description:"A website built with stx templating engine"}},animation:{enabled:!0,defaultDuration:300,defaultEase:"ease",respectMotionPreferences:!0,staggerDelay:50},markdown:{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0,additionalThemes:["light-plus","one-dark-pro","dracula","monokai","solarized-light","nord","github-dark"]}},loops:{maxWhileIterations:1000,useAltLoopVariable:!1},story:{enabled:!0,outDir:".stx/dist/story",storyMatch:["**/*.story.stx"],storyIgnored:["**/node_modules/**","**/dist/**","**/.stx/**"],port:6006},pwa:{enabled:!1,manifest:{name:"stx App",shortName:"stx",description:"A Progressive Web App built with stx",startUrl:"/",display:"standalone",orientation:"any",themeColor:"#000000",backgroundColor:"#ffffff",scope:"/"},icons:{src:"public/icon.png",sizes:[72,96,128,144,152,192,384,512],generateWebP:!0,generateAppleIcons:!0,outputDir:"pwa-icons",purpose:["any","maskable"]},routes:[{pattern:"/",strategy:"network-first"},{pattern:"/static/*",strategy:"cache-first",maxAgeSeconds:2592000},{pattern:"/api/*",strategy:"network-only"},{pattern:"*.js",strategy:"stale-while-revalidate"},{pattern:"*.css",strategy:"stale-while-revalidate"},{pattern:"*.png",strategy:"cache-first"},{pattern:"*.jpg",strategy:"cache-first"},{pattern:"*.webp",strategy:"cache-first"},{pattern:"*.svg",strategy:"cache-first"}],offline:{enabled:!0,fallbackTitle:"You are offline",fallbackMessage:"Please check your internet connection and try again.",precacheAssets:[]},serviceWorker:{fileName:"sw.js",cacheVersion:"1.0.0",skipWaiting:!0,clientsClaim:!0,navigationPreload:!1,excludeRoutes:["/api/auth/*"],cacheFileTypes:["html","css","js","png","jpg","jpeg","webp","svg","woff","woff2"],useWorkbox:!1},autoInject:!0,push:{enabled:!1,defaultOptions:{vibrate:[100,50,100],requireInteraction:!1}},backgroundSync:{enabled:!1,queueName:"stx-sync-queue",maxRetentionMinutes:1440,maxRetries:3,minInterval:1000,forms:[],endpoints:[]},shareTarget:{enabled:!1,action:"/share-target",method:"POST",enctype:"multipart/form-data",params:{title:"title",text:"text",url:"url"}},fileHandlers:{enabled:!1},protocolHandlers:[],cacheStorage:{maxSize:100,maxEntries:500,maxAge:30,purgeStrategy:"lru"},updates:{enabled:!0,promptUser:!0,autoReload:!1,message:"A new version is available. Reload to update?"},precache:{enabled:!0,includeHtml:!0,includeJs:!0,includeCss:!0,includeImages:!0,includeFonts:!0,include:[],exclude:["*.map","*.LICENSE.txt"],maxFileSizeKB:500}},media:{enabled:!0,image:{enabled:!0,defaultWidths:[320,480,640,768,1024,1280,1536,1920],defaultFormats:["avif","webp","jpeg"],defaultQuality:80,placeholderStrategy:"thumbhash",lazyByDefault:!0,enableDpr:!0,defaultDpr:[1,2,3],tsImages:{enabled:!0,outputDir:"dist/images",baseUrl:"/images",formatQuality:{jpeg:{quality:85,mozjpeg:!0,progressive:!0},png:{compressionLevel:9,palette:!1},webp:{quality:82,effort:5,smartSubsample:!0},avif:{quality:75,effort:4,lossless:!1}},breakpoints:[320,480,640,768,1024,1280,1536,1920],batchOptions:{concurrency:4,optimizationPreset:"web"}}},video:{enabled:!0,lazyByDefault:!0,defaultControls:!0,tsVideos:{enabled:!0,outputDir:"dist/videos",baseUrl:"/videos",defaultQuality:"high",streaming:{enabled:!0,format:"hls",segmentDuration:6,defaultQualities:[{label:"1080p",width:1920,height:1080,bitrate:5000000,audioBitrate:192000},{label:"720p",width:1280,height:720,bitrate:2500000,audioBitrate:128000},{label:"480p",width:854,height:480,bitrate:1e6,audioBitrate:96000}]},thumbnails:{enabled:!0,count:10,format:"webp",width:320},transcoding:{defaultCodec:"h264",defaultAudioCodec:"aac",speedPreset:"medium"}}},upload:{enabled:!0,maxSize:10485760,allowedTypes:["image/*","video/*","audio/*","application/pdf"],maxConcurrent:3},protected:{enabled:!0,expirationSeconds:3600,batchSize:10},cache:{enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500}},broadcasting:{enabled:!1,driver:"bun",host:"0.0.0.0",port:6001,scheme:"ws",verbose:!1}};function aX($,Z,J){let X=Z||"pages";if($)return{root:$,pagesDir:X};let Y=J||process.cwd(),Q=S0.join(Y,"resources","views"),G=S0.join(Y,"resources","layouts");if(Y9.existsSync(Q)&&Y9.existsSync(G))return{root:"resources",pagesDir:"views"};let z=S0.join(Y,"resources","views","pages");if(Y9.existsSync(z))return{root:"resources/views",pagesDir:X};return{root:".",pagesDir:X}}var y7=new Set,Q9=["partialsDir","componentsDir","layoutsDir"],E5=new WeakMap;function tX($,Z){let J=Z.replace(/[\\/]+$/,"");if(!J||J===".")return!0;let X=$.replace(/\\/g,"/"),Y=J.replace(/\\/g,"/");return X===Y||X.startsWith(`${Y}/`)}function eX($,Z){let J=!$.root,X=aX($.root,$.pagesDir,Z);if($.root=X.root,$.pagesDir=X.pagesDir,J&&X.root!=="."){let Y=`${Z}::${X.root}`;if(!y7.has(Y))y7.add(Y),console.warn(`[stx] No "root" in config \u2014 inferred "${X.root}" from the project layout. Template directories are resolved under it; set root explicitly to pin this.`)}if(!E5.has($)){let Y={};for(let Q of Q9){let G=$[Q];if(typeof G==="string"&&G)Y[Q]=G}E5.set($,Y)}if($.root&&$.root!=="."){let Y=$.root;for(let Q of Q9){let G=$[Q];if(typeof G!=="string"||!G)continue;if(S0.isAbsolute(G)||tX(G,Y))continue;$[Q]=S0.join(Y,G)}}for(let Y of Q9){let Q=$[Y];if(typeof Q!=="string"||!Q||S0.isAbsolute(Q))continue;$[Y]=S0.resolve(Z,Q)}return $}function $Y($,Z){let J=E5.get($);for(let X of Q9){let Y=$[X];if(typeof Y!=="string"||!Y)continue;let Q=S0.isAbsolute(Y)?Y:S0.join(Z,Y);if(Y9.existsSync(Q))continue;let G=J?.[X]??Y,z=$.root,K=!!z&&z!==".";console.warn(`[stx] ${String(X)} resolves to "${Q}", which does not exist. Configured as "${G}"`+(K?`, resolved under root "${z}".`:"."))}}function ZY($){if($.customDirectives)$.customDirectives=[...$.customDirectives];if($.middleware)$.middleware=[...$.middleware];if($.apiRoutes)$.apiRoutes={...$.apiRoutes}}function JY($){if(v7($.stateDir),$.stateDir=x7(),$.cachePath=V2($.cachePath),$.build)$.build.cacheDir=V2($.build.cacheDir);if($.media?.cache)$.media.cache.directory=V2($.media.cache.directory);if($.story)$.story.outDir=V2($.story.outDir)}var Q1=null,L1=new Map,Z9=new Map,L2=null;async function b5($){let Z=$?S0.resolve($):process.cwd(),J=Z9.get(Z);if(J&&J.signature!==J9(J.graph)){let Q=L1.get(Z);if(L1.delete(Z),Z9.delete(Z),!$)Q1=null,L2=null;let{clearComponentCache:G}=await import("./chunk-3h97y3n3.js"),{partialsCache:z}=await import("./chunk-57494khk.js");if(G(),z.clear(),Q&&J.configSignature===X9(J.graph)){let K=Q.then(async(q)=>{let W={...J.graph};await g7(W,Z),Z9.set(Z,{graph:W,signature:J9(W),configSignature:X9(W)});let U={...q,_layerGraph:W};if(!$)Q1=U;return U});return L1.set(Z,K),K}}if(!$){if(Q1)return Q1;if(L2)return L2}let X=L1.get(Z);if(X)return X;let Y=(async()=>{let G=(await rX({name:"stx",alias:"ui",cwd:Z,defaultConfig:k5,verbose:!1})).config;if(G.extends!==void 0||J){let z=await f7(Z,k5);G=z.config,Z9.set(Z,{graph:z.graph,signature:J9(z.graph),configSignature:X9(z.graph)})}if(G.runtimeConfig){let{resolveRuntimeConfig:z}=await import("./chunk-wyhb3nb0.js");z(G.runtimeConfig,{});let{generateRuntimeConfigTypes:K}=await import("./chunk-bcz8yp2g.js");await K(Z,G.runtimeConfig)}if(ZY(G),JY(G),eX(G,Z),$Y(G,Z),G.plugins&&G.plugins.length>0){let{pluginManager:z}=await import("./chunk-dj5mqnp1.js"),K=[],q=[];for(let W of G.plugins){let U=typeof W==="string"?W:W[0],H=typeof W==="string"?{}:W[1]||{};try{let j,B;try{j=await import(U),B=S0.dirname(x.resolve(U))}catch{let _=S0.resolve(Z,U);j=await import(_),B=S0.dirname(_)}let V=j.default||j;if(!z.has(V.name))await z.register(V,G);if(V.components){let _=Array.isArray(V.components)?V.components:[V.components];for(let O of _)K.push(S0.resolve(B,O))}if(V.pages){let _=S0.resolve(B,V.pages),O=H.path||"/";q.push({dir:_,prefix:O})}if(V.setup){let _={addDirective:(O)=>{G.customDirectives=G.customDirectives||[],G.customDirectives.push(O)},addRoute:(O,F)=>{G.apiRoutes=G.apiRoutes||{},G.apiRoutes[O]=F},addMiddleware:(O)=>{G.middleware=G.middleware||[],G.middleware.push(O)},pluginDir:B,config:G};await V.setup(H,_)}console.log(`[stx] Plugin loaded: ${V.name||U}`)}catch(j){console.warn(`[stx] Failed to load plugin ${U}:`,j.message)}}G._pluginComponentDirs=K,G._pluginPageDirs=q}return G})();if(L1.set(Z,Y),Y.catch(()=>{if(L1.get(Z)===Y)L1.delete(Z)}),!$)L2=Y,Y.then((Q)=>{Q1=Q}).catch(()=>{});return Y}var d7=new Proxy(k5,{get($,Z){if(Q1&&Z in Q1)return Q1[Z];if(!L2)b5().catch((J)=>{console.warn("[stx] Failed to load config file:",J?.message||J)});return $[Z]}});function bU($){return $}function yU($){let Z=[],J=[];if($.partialsDir!==void 0&&typeof $.partialsDir!=="string")Z.push({path:"partialsDir",message:"partialsDir must be a string",severity:"error"});if($.componentsDir!==void 0&&typeof $.componentsDir!=="string")Z.push({path:"componentsDir",message:"componentsDir must be a string",severity:"error"});if($.cache!==void 0&&typeof $.cache!=="boolean")Z.push({path:"cache",message:"cache must be a boolean",severity:"error"});if($.debug!==void 0&&typeof $.debug!=="boolean")Z.push({path:"debug",message:"debug must be a boolean",severity:"error"});if($.streaming){if($.streaming.bufferSize!==void 0){if(typeof $.streaming.bufferSize!=="number"||$.streaming.bufferSize<=0)Z.push({path:"streaming.bufferSize",message:"streaming.bufferSize must be a positive number",severity:"error"})}if($.streaming.timeout!==void 0){if(typeof $.streaming.timeout!=="number"||$.streaming.timeout<=0)Z.push({path:"streaming.timeout",message:"streaming.timeout must be a positive number",severity:"error"})}if($.streaming.strategy!==void 0){let X=["auto","manual","sections"];if(!X.includes($.streaming.strategy))Z.push({path:"streaming.strategy",message:`streaming.strategy must be one of: ${X.join(", ")}`,severity:"error"})}}if($.i18n){if($.i18n.format!==void 0){let X=["json","yaml","yml","js"];if(!X.includes($.i18n.format))Z.push({path:"i18n.format",message:`i18n.format must be one of: ${X.join(", ")}`,severity:"error"})}}if($.animation){if($.animation.defaultDuration!==void 0){if(typeof $.animation.defaultDuration!=="number"||$.animation.defaultDuration<0)Z.push({path:"animation.defaultDuration",message:"animation.defaultDuration must be a non-negative number",severity:"error"})}if($.animation.staggerDelay!==void 0){if(typeof $.animation.staggerDelay!=="number"||$.animation.staggerDelay<0)Z.push({path:"animation.staggerDelay",message:"animation.staggerDelay must be a non-negative number",severity:"error"})}}if($.a11y){if($.a11y.level!==void 0){let X=["AA","AAA"];if(!X.includes($.a11y.level))Z.push({path:"a11y.level",message:`a11y.level must be one of: ${X.join(", ")}`,severity:"error"})}}if($.hydration){if($.hydration.mode!==void 0){let X=["progressive","islands"];if(!X.includes($.hydration.mode))Z.push({path:"hydration.mode",message:`hydration.mode must be one of: ${X.join(", ")}`,severity:"error"})}if($.hydration.preload!==void 0){let X=["none","eager","lazy"];if(!X.includes($.hydration.preload))Z.push({path:"hydration.preload",message:`hydration.preload must be one of: ${X.join(", ")}`,severity:"error"})}}if($.customDirectives)if(!Array.isArray($.customDirectives))Z.push({path:"customDirectives",message:"customDirectives must be an array",severity:"error"});else $.customDirectives.forEach((X,Y)=>{if(!X.name||typeof X.name!=="string")Z.push({path:`customDirectives[${Y}].name`,message:"Custom directive must have a name string",severity:"error"});if(!X.handler||typeof X.handler!=="function")Z.push({path:`customDirectives[${Y}].handler`,message:"Custom directive must have a handler function",severity:"error"})});if($.middleware)if(!Array.isArray($.middleware))Z.push({path:"middleware",message:"middleware must be an array",severity:"error"});else $.middleware.forEach((X,Y)=>{if(!X.name||typeof X.name!=="string")Z.push({path:`middleware[${Y}].name`,message:"Middleware must have a name string",severity:"error"});if(!X.handler||typeof X.handler!=="function")Z.push({path:`middleware[${Y}].handler`,message:"Middleware must have a handler function",severity:"error"});if(!X.timing||!["before","after"].includes(X.timing))Z.push({path:`middleware[${Y}].timing`,message:'Middleware timing must be "before" or "after"',severity:"error"})});if($.debug===!0&&$.cache===!0)J.push({path:"debug+cache",message:"Debug mode with caching enabled may show stale content during development",severity:"warning"});if($.seo?.enabled===!0&&!$.seo?.defaultConfig?.title)J.push({path:"seo.defaultConfig.title",message:"SEO is enabled but no default title is set",severity:"warning"});if($.pwa){if($.pwa.enabled===!0&&!$.pwa.manifest?.name)Z.push({path:"pwa.manifest.name",message:"PWA manifest name is required when PWA is enabled",severity:"error"});if($.pwa.manifest?.display!==void 0){let X=["fullscreen","standalone","minimal-ui","browser"];if(!X.includes($.pwa.manifest.display))Z.push({path:"pwa.manifest.display",message:`PWA display must be one of: ${X.join(", ")}`,severity:"error"})}if($.pwa.manifest?.orientation!==void 0){let X=["portrait","landscape","any","portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"];if(!X.includes($.pwa.manifest.orientation))Z.push({path:"pwa.manifest.orientation",message:`PWA orientation must be one of: ${X.join(", ")}`,severity:"error"})}if($.pwa.routes){let X=["cache-first","network-first","stale-while-revalidate","network-only","cache-only"];$.pwa.routes.forEach((Y,Q)=>{if(!Y.pattern||typeof Y.pattern!=="string")Z.push({path:`pwa.routes[${Q}].pattern`,message:"PWA route must have a pattern string",severity:"error"});if(!X.includes(Y.strategy))Z.push({path:`pwa.routes[${Q}].strategy`,message:`PWA route strategy must be one of: ${X.join(", ")}`,severity:"error"});if(Y.maxAgeSeconds!==void 0&&(typeof Y.maxAgeSeconds!=="number"||Y.maxAgeSeconds<0))Z.push({path:`pwa.routes[${Q}].maxAgeSeconds`,message:"PWA route maxAgeSeconds must be a non-negative number",severity:"error"});if(Y.maxEntries!==void 0&&(typeof Y.maxEntries!=="number"||Y.maxEntries<1))Z.push({path:`pwa.routes[${Q}].maxEntries`,message:"PWA route maxEntries must be a positive number",severity:"error"})})}if($.pwa.icons?.sizes){if(!Array.isArray($.pwa.icons.sizes))Z.push({path:"pwa.icons.sizes",message:"PWA icon sizes must be an array of numbers",severity:"error"});else if($.pwa.icons.sizes.filter((Y)=>typeof Y!=="number"||Y<16||Y>1024).length>0)Z.push({path:"pwa.icons.sizes",message:"PWA icon sizes must be numbers between 16 and 1024",severity:"error"})}if($.pwa.icons?.purpose){let X=["any","maskable","monochrome"];if($.pwa.icons.purpose.filter((Q)=>!X.includes(Q)).length>0)Z.push({path:"pwa.icons.purpose",message:`PWA icon purpose must be one of: ${X.join(", ")}`,severity:"error"})}if($.pwa.enabled===!0&&!$.pwa.icons?.src)J.push({path:"pwa.icons.src",message:"PWA is enabled but no icon source specified. Provide a 512x512 PNG for best results.",severity:"warning"});if($.pwa.enabled===!0&&!$.pwa.manifest?.themeColor)J.push({path:"pwa.manifest.themeColor",message:"PWA theme color not set, defaulting to black",severity:"warning"})}return{valid:Z.length===0,errors:Z,warnings:J}}var C5=new Map;async function QY($,Z={}){try{if(!await e($))throw Error(`Markdown file not found: ${$}`);let X=(await XY.promises.stat($)).mtime.getTime();if(Z.cache&&C5.has($)){let U=C5.get($);if(U.updatedAt>=X)return{content:U.content,data:U.data}}let Y=await Bun.file($).text(),{data:Q,content:G}=z7(Y),z=Z.markdown||d7.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},q=H2(G,{gfm:!0});if(z.syntaxHighlighting?.enabled&&z.syntaxHighlighting?.serverSide)q=await GY(q,z.syntaxHighlighting?.defaultTheme||"github-dark",z.syntaxHighlighting?.highlightUnknownLanguages||!1);let W={content:q,data:Q||{}};if(Z.cache)C5.set($,{...W,updatedAt:X});return W}catch(J){if(Z.debug)console.error(`Error reading/parsing markdown file ${$}:`,J);let X=J instanceof Error?J.message:String(J);return{content:O0("Markdown File",`Error reading/parsing markdown file: ${X}`,$,"",0,""),data:{}}}}var G9=null;async function GY($,Z,J){let X=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!G9)try{G9=await YY({theme:Z||"github-dark",cache:!0})}catch(z){return console.error("Failed to initialize ts-syntax-highlighter:",z),$}let Y=async(z,K,q,W)=>{let U=W.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'"),H=q||(J?"text":"");if(!H)return z;try{if(!G9.getSupportedLanguages().includes(H))return z;return(await G9.highlight(U,H,{theme:Z})).html}catch(j){console.error(`Error highlighting code block with language ${q}:`,j)}return z},Q=$,G=$.matchAll(X);for(let z of G){let[K,q,W,U]=z,H=await Y(K,q,W,U);Q=Q.replace(K,H)}return Q}async function l7($,Z,J="",X={}){return await zY($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,z,K,q)=>{try{let W=z;if(!y5.isAbsolute(z))W=y5.resolve(y5.dirname(J),z);let U={};if(K)try{try{U=JSON.parse(K)}catch{if(X.debug)console.warn("Using safer alternative for parsing JS object literal");let F=K.replace(/^\s*\{|\}\s*$/g,"").trim().split(/,(?=\s*\w+\s*:)/);for(let L of F){let w=L.indexOf(":");if(w>0){let N=L.substring(0,w).trim(),R=L.substring(w+1).trim(),M=R.startsWith('"')&&R.endsWith('"'),T=R.startsWith("'")&&R.endsWith("'");if(M||T)R=R.substring(1,R.length-1);U[N]=R}}}}catch(O){if(X.debug)console.error("Error parsing context in @markdown-file directive:",O)}let{content:H,data:j}=await QY(W,X),B={...Z,...j,...U},V=H,_=/\{\{([^}]+)\}\}/g;return V=V.replace(_,(O,F)=>{let L=F.trim();return B[L]!==void 0?String(B[L]):O}),V}catch(W){let U=W instanceof Error?W.message:String(W);return O0("Markdown File",`Error including markdown file: ${U}`,J,$,q,G)}})}async function zY($,Z,J){let X=[],Y;while((Y=Z.exec($))!==null){let z=Y[0],K=Y.index,q=Y;X.push(J(...q).then((W)=>({match:z,replacement:W,index:K})))}let Q=await Promise.all(X);Q.sort((z,K)=>K.index-z.index);let G=$;for(let{match:z,replacement:K}of Q)G=G.replace(z,()=>K);return G}function G1($,Z){try{let J=$.trim();if(H0(J))return q0(J,Object.keys(Z))(...Object.values(Z));else return Q0(J,Z)}catch{return!1}}function z1($,Z){let J=KY($,Z);return J.ok?{expression:J.expression,endPos:J.endPos}:null}function KY($,Z){let J=Z;while(J<$.length&&/\s/.test($[J]))J++;if($[J]!=="(")return{ok:!1,reason:"missing-open-paren",pos:J};let X=N0($,"(",")",J);if(X===-1)return{ok:!1,reason:"unclosed-paren",pos:J};return{ok:!0,expression:$.slice(J+1,X),endPos:X+1}}function qY($,Z){let J=$.lastIndexOf("<",Z);if(J===-1)return!1;return J>$.lastIndexOf(">",Z)}function O1($,Z,J,X){let Y=1,Q=X,G=new RegExp(`@${Z}\\s*\\(`,"g"),z=new RegExp(`@${J}(?![a-z])`,"g");while(Q<$.length&&Y>0){G.lastIndex=Q,z.lastIndex=Q;let K=G.exec($),q=z.exec($),W=K?K.index:1/0,U=q?q.index:1/0;if(W<U)Y++,Q=W+K[0].length;else if(U<1/0){if(Y--,Y===0)return U;Q=U+q[0].length}else break}return-1}function c7($,Z){let J=$.slice(Z).match(/^@if\s*/);if(!J)return null;let X=Z+J[0].length,Y=z1($,X);if(!Y)return null;let Q=Y.endPos,G=O1($,"if","endif",Q);if(G===-1)return null;let z=$.slice(Q,G),K=[],q=0,W="if",U=Y.expression,H=0,j=0;while(q<z.length){let B=z.indexOf("@",q);if(B===-1)break;q=B;let V=z.substring(B);if(qY(z,B)){q++;continue}if(/^@if\s*\(/.test(V)){j++,q++;continue}if(/^@endif(?![a-z])/.test(V)){j--,q+=6;continue}if(j===0){let _=V.match(/^@elseif\s*/);if(_){K.push({type:W,condition:U,content:z.substring(H,q),start:Q+H,end:Q+q});let O=q+_[0].length,F=z1(z,O);if(!F){q++;continue}W="elseif",U=F.expression,q=F.endPos,H=q;continue}else if(/^@else(?![a-z])/.test(V)){K.push({type:W,condition:U,content:z.substring(H,q),start:Q+H,end:Q+q}),W="else",U=void 0,q+=5,H=q;continue}}q++}return K.push({type:W,condition:U,content:z.slice(H),start:Q+H,end:Q+z.length}),{fullMatch:$.slice(Z,G+6),branches:K,start:Z,end:G+6}}function O2($){let Z=[],J=/@if\s*\(/g,X=J.exec($);while(X!==null){if(Z.some((G)=>X.index>G.start&&X.index<G.end)){X=J.exec($);continue}let Q=c7($,X.index);if(Q)Z.push(Q),J.lastIndex=Q.end;X=J.exec($)}return Z}function z9($,Z,J){let X=[],Y=new RegExp(`@${Z}\\s*\\(`,"g"),Q=Y.exec($);while(Q!==null){if(X.some((V)=>Q.index>V.start&&Q.index<V.end)){Q=Y.exec($);continue}let z=Q.index,K=z+Q[0].length-1,q=N0($,"(",")",K);if(q===-1){Q=Y.exec($);continue}let W=$.slice(K+1,q),U=q+1,H=O1($,Z,J,U);if(H===-1){Q=Y.exec($);continue}let j=$.slice(U,H),B=H+`@${J}`.length;X.push({fullMatch:$.slice(z,B),name:Z,params:W,content:j,start:z,end:B}),Y.lastIndex=B,Q=Y.exec($)}return X}function S5($,Z){let J=$.slice(Z).match(/^@switch\s*/);if(!J)return null;let X=Z+J[0].length,Y=z1($,X);if(!Y)return null;let Q=Y.endPos,G=O1($,"switch","endswitch",Q);if(G===-1)return null;let z=$.slice(Q,G),K=[],q=0,W=null,U=0;while(q<z.length){let H=z.slice(q),j=H.match(/^@switch\s*\(/),B=H.match(/^@endswitch(?![a-z])/);if(j){if(U++,W)W.content+=j[0];q+=j[0].length;continue}if(B){if(U--,W)W.content+=B[0];q+=B[0].length;continue}if(U>0){if(W)W.content+=z[q];q++;continue}let V=H.match(/^@case\s*/),_=H.match(/^@default(?![a-z])/),O=H.match(/^@break(?![a-z])/);if(V&&H.startsWith("@case")){if(W)K.push(W);let F=q+V[0].length,L=z1(z,F);if(!L){q++;continue}W={type:"case",value:L.expression,content:""},q=L.endPos}else if(_&&H.startsWith("@default")){if(W)K.push(W);W={type:"default",content:""},q+=_[0].length}else if(O&&H.startsWith("@break"))q+=O[0].length;else{if(W)W.content+=z[q];q++}}if(W)K.push(W);return{fullMatch:$.slice(Z,G+10),expression:Y.expression,cases:K,start:Z,end:G+10}}function UY($){let Z=[],J=0;while(J<$.length){let X=$.indexOf("{{",J),Y=$.indexOf("{!!",J),Q=!1,G;if(X===-1&&Y===-1)break;else if(X===-1)G=Y,Q=!0;else if(Y===-1)G=X,Q=!1;else if(Y<X)G=Y,Q=!0;else G=X,Q=!1;if(!Q&&$.slice(G,G+3)==="{{{")Q=!0;let z=Q?$.slice(G,G+3)==="{{{"?"{{{":"{!!":"{{",K=Q?z==="{{{"?"}}}":"!!}":"}}",q=G+z.length,W=HY($,q,K);if(W===-1){J=G+1;continue}let U=$.slice(q,W).trim(),H=W+K.length;Z.push({fullMatch:$.slice(G,H),expression:U,start:G,end:H,isRaw:Q}),J=H}return Z}function HY($,Z,J){let X=Z,Y=null,Q={paren:0,bracket:0,brace:0},G=0;while(X<$.length){let z=$[X];if((X>0?$[X-1]:"")==="\\"&&Y){X++;continue}if((z==='"'||z==="'")&&!Y){Y=z,X++;continue}if(z===Y&&Y!=="`"){Y=null,X++;continue}if(z==="`"&&!Y){Y="`",X++;continue}if(z==="`"&&Y==="`"&&G===0){Y=null,X++;continue}if(Y==="`"&&z==="$"&&$[X+1]==="{"){G++,X+=2;continue}if(G>0){if(z==="{")G++;else if(z==="}")G--;X++;continue}if(Y){X++;continue}if(z==="(")Q.paren++;else if(z===")")Q.paren--;else if(z==="[")Q.bracket++;else if(z==="]")Q.bracket--;else if(z==="{")Q.brace++;else if(z==="}")Q.brace--;if(Q.paren===0&&Q.bracket===0&&Q.brace<=0){if($.slice(X,X+J.length)===J)return X}X++}return-1}function jY($){let Z=v5($);if(Z.length===0)return{baseExpression:"",filters:[]};let J=Z[0],X=[];for(let Y=1;Y<Z.length;Y++){let Q=BY(Z[Y]);if(Q)X.push(Q)}return{baseExpression:J,filters:X}}function BY($){let Z=$.trim();if(!Z)return null;let J=Z.indexOf("(");if(J===-1)return{name:Z,args:[]};let X=Z.slice(0,J).trim(),Y=J+1,Q=N0(Z,"(",")",J);if(Q===-1)return{name:X,args:[]};let G=Z.slice(Y,Q),z=n7(G);return{name:X,args:z}}function n7($){let Z=[],J="",X={paren:0,bracket:0,brace:0},Y=null,Q=0;for(let G=0;G<$.length;G++){let z=$[G];if((G>0?$[G-1]:"")==="\\"&&Y){J+=z;continue}if((z==='"'||z==="'")&&!Y){Y=z,J+=z;continue}if(z===Y&&Y!=="`"){Y=null,J+=z;continue}if(z==="`"&&!Y){Y="`",J+=z;continue}if(z==="`"&&Y==="`"&&Q===0){Y=null,J+=z;continue}if(Y==="`"&&z==="$"&&$[G+1]==="{"){Q++,J+="${",G++;continue}if(Q>0&&z==="{"){Q++,J+=z;continue}if(Q>0&&z==="}"){Q--,J+=z;continue}if(Y){J+=z;continue}if(z==="(")X.paren++;else if(z===")")X.paren--;else if(z==="[")X.bracket++;else if(z==="]")X.bracket--;else if(z==="{")X.brace++;else if(z==="}")X.brace--;if(z===","&&X.paren===0&&X.bracket===0&&X.brace===0){Z.push(J.trim()),J="";continue}J+=z}if(J.trim())Z.push(J.trim());return Z}function VY($,Z){let J=Z;while(J<$.length&&/\s/.test($[J]))J++;if($[J]!=="(")return null;let X=N0($,"(",")",J);if(X===-1)return null;return{params:$.slice(J+1,X),endPos:X+1}}function LY($){let Z=[],X=new P5($).tokenize().filter((Q)=>Q.type!=="WHITESPACE"&&Q.type!=="COMMENT"),Y=0;while(Y<X.length){let Q=X[Y],G=!1;if(Q.type==="IDENTIFIER"&&Q.value==="export"){if(G=!0,Y++,Y>=X.length)break}let z=X[Y];if(z.type==="IDENTIFIER"&&(z.value==="const"||z.value==="let"||z.value==="var")){let K=z.value;if(Y++,Y>=X.length)break;let q=X[Y];if(q.type==="IDENTIFIER"){let W=q.value;if(Y++,Y<X.length&&X[Y].type==="OPERATOR"&&X[Y].value==="="){Y++;let U=Y<X.length?X[Y].start:$.length,H=p7(X,Y,$);Y=H.nextIndex,Z.push({type:"variable",name:W,value:$.slice(U,H.endPos),exported:G,start:z.start,end:H.endPos})}}else if(q.type==="PUNCTUATION"&&(q.value==="{"||q.value==="[")){let W=q.start,U=q.value==="{"?"}":"]",H=N0($,q.value,U,W);if(H!==-1){let j=$.slice(W,H+1);if(Y=i7(X,H+1),Y<X.length&&X[Y].type==="OPERATOR"&&X[Y].value==="="){Y++;let B=Y<X.length?X[Y].start:$.length,V=p7(X,Y,$);Y=V.nextIndex;let _=`__stx_destructured_${Z.length}`;Z.push({type:"variable",name:_,value:`${$.slice(B,V.endPos)}; ${K} ${j} = ${_}`,exported:G,start:z.start,end:V.endPos})}}}}else if(z.type==="IDENTIFIER"&&z.value==="function"){let K=G?X[Y-1].start:z.start;if(Y++,Y>=X.length)break;let q=X[Y];if(q.type==="IDENTIFIER"){let W=q.value;Y++;let U=-1;while(Y<X.length){if(X[Y].type==="PUNCTUATION"&&X[Y].value==="{"){U=X[Y].start;break}Y++}if(U!==-1){let H=N0($,"{","}",U);if(H!==-1)Z.push({type:"function",name:W,value:$.slice(K,H+1).replace(/^export\s+/,""),exported:G,start:K,end:H+1}),Y=i7(X,H+1)}}}else Y++}return Z}function p7($,Z,J){let X=Z,Y={paren:0,bracket:0,brace:0},Q=Z<$.length?$[Z].start:J.length;while(X<$.length){let G=$[X];if(G.type==="PUNCTUATION"){if(G.value==="(")Y.paren++;else if(G.value===")")Y.paren--;else if(G.value==="[")Y.bracket++;else if(G.value==="]")Y.bracket--;else if(G.value==="{")Y.brace++;else if(G.value==="}")Y.brace--;if(G.value===";"&&Y.paren===0&&Y.bracket===0&&Y.brace===0){Q=G.start,X++;break}}if(G.type==="IDENTIFIER"&&(G.value==="const"||G.value==="let"||G.value==="var"||G.value==="function"||G.value==="export")){if(Y.paren===0&&Y.bracket===0&&Y.brace===0){Q=$[X-1]?.end??G.start;break}}Q=G.end,X++}return{nextIndex:X,endPos:Q}}function i7($,Z){for(let J=0;J<$.length;J++)if($[J].start>=Z)return J;return $.length}function OY($,Z,J){let X=$,Y=!0;while(Y){Y=!1;let Q=X.match(/@switch\s*\(/);if(!Q||Q.index===void 0)break;let G=Q.index,z=S5(X,G);if(!z)break;try{let K;if(H0(z.expression))K=q0(z.expression,Object.keys(Z))(...Object.values(Z));else K=Q0(z.expression,Z);let q="",W=!1;for(let U of z.cases)if(U.type==="default"){if(!W)q=U.content.trim()}else try{let H;if(U.value&&H0(U.value))H=q0(U.value,Object.keys(Z))(...Object.values(Z));else if(U.value)H=Q0(U.value,Z);if(K===H){q=U.content.trim(),W=!0;break}}catch{continue}X=X.substring(0,G)+q+X.substring(z.end),Y=!0}catch(K){let q=K instanceof Error?K.message:String(K),W=R0("Switch",`Error evaluating @switch expression: ${q}`,w0.EVALUATION_ERROR);X=X.substring(0,G)+W+X.substring(z.end);break}}return X}function _Y($){let Z=[];return{masked:$.replace(/<script\b[\s\S]*?<\/script\s*>/gi,(X)=>{return Z.push(X),`\x00stx-script-${Z.length-1}\x00`}),scripts:Z}}function FY($,Z){if(Z.length===0)return $;return $.replace(/\u0000stx-script-(\d+)\u0000/g,(J,X)=>Z[Number(X)]??J)}function a0($,Z,J){let{masked:X,scripts:Y}=_Y($);return FY(wY(X,Z,J),Y)}function wY($,Z,J){let X=$;X=OY(X,Z,J);{let Q=!0;while(Q){Q=!1;let G=X.match(/@unless\s*\(/);if(!G||G.index===void 0)break;let z=G.index,K=z1(X,z+7);if(!K)break;let q=K.endPos,W=O1(X,"unless","endunless",q);if(W===-1){console.warn(`[stx] @unless directive at position ${z} has no matching @endunless \u2014 the block was skipped. Check for typos or missing closers.`);break}let U=X.slice(q,W),H=K.expression,j=-1;{let V=0,_=/@(?:if|unless)\s*\(/g,O=/@(?:endif|endunless)(?![a-z])/g,F=/@else(?![a-z])/g,L=[],w;while((w=_.exec(U))!==null)L.push({pos:w.index,type:"open"});while((w=O.exec(U))!==null)L.push({pos:w.index,type:"close"});while((w=F.exec(U))!==null)L.push({pos:w.index,type:"else"});L.sort((N,R)=>N.pos-R.pos);for(let N of L)if(N.type==="open")V++;else if(N.type==="close")V--;else if(N.type==="else"&&V===0){j=N.pos;break}}let B;if(j!==-1){let V=U.slice(0,j),_=U.slice(j+5);B=`@if (${H})${_}@else ${V}@endif`}else B=`@if (!(${H}))${U}@endif`;X=X.substring(0,z)+B+X.substring(W+10),Q=!0}}X=f5(X,Z,J),X=g5(X,Z,J),X=x5(X,Z);let Y=()=>{let Q=O2(X);if(Q.length===0)return!1;let G=Array(Q.length);for(let q=Q.length-1;q>=0;q--){let W=Q[q];try{let U="",H=!1;for(let j of W.branches){if(H)break;if(j.type==="else")U=j.content,H=!0;else try{let B;if(j.condition&&H0(j.condition))B=q0(j.condition,Object.keys(Z))(...Object.values(Z));else if(j.condition)B=Q0(j.condition,Z);if(B)U=j.content,H=!0}catch(B){U=R0(j.type==="if"?"If":"Elseif",`Error in @${j.type}(${j.condition}): ${B instanceof Error?B.message:String(B)}`,w0.EVALUATION_ERROR),H=!0}}G[q]=U}catch(U){let H=U instanceof Error?U.message:String(U);G[q]=R0("If",`Error processing @if block: ${H}`,w0.EVALUATION_ERROR)}}let z=Array(Q.length*2+1),K=0;for(let q=0;q<Q.length;q++){let W=Q[q];z[q*2]=X.slice(K,W.start),z[q*2+1]=G[q],K=W.end}return z[Q.length*2]=X.slice(K),X=z.join(""),!0};while(!0){let Q=X;if(!Y())break;if(X===Q)break}return X}function s7($){let Z=0;while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!=="(")return null;Z++;while(Z<$.length&&/\s/.test($[Z]))Z++;let J=$[Z];if(J!=="'"&&J!=='"')return null;Z++;let X=[];while(Z<$.length){let Y=$[Z];if(Y==="\\"&&Z+1<$.length){X.push($[Z+1]),Z+=2;continue}if(Y===J){Z++;break}X.push(Y),Z++}while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!==")")return null;return Z++,{value:X.join(""),consumed:Z}}function x5($,Z){let J=$;function X(z,K,q,W){let U=1,H=W,j=new RegExp(`@${K}(?:\\s*\\(|\\s|$)`,"g"),B=new RegExp(`@${q}(?![a-z])`,"g");while(H<z.length&&U>0){j.lastIndex=H,B.lastIndex=H;let V=j.exec(z),_=B.exec(z),O=V?V.index:1/0,F=_?_.index:1/0;if(O<F)U++,H=O+V[0].length;else if(F<1/0){if(U--,U===0)return F;H=F+_[0].length}else break}return-1}function Y(z,K,q){let W=0,U=new RegExp(`@${K}(?:\\s*\\(|\\s|$)`,"g"),H=new RegExp(`@${q}(?![a-z])`,"g"),j=/@else(?![a-z])/g,B=[],V;while((V=U.exec(z))!==null)B.push({pos:V.index,type:"open"});while((V=H.exec(z))!==null)B.push({pos:V.index,type:"close"});while((V=j.exec(z))!==null)B.push({pos:V.index,type:"else"});B.sort((_,O)=>_.pos-O.pos);for(let _ of B)if(_.type==="open")W++;else if(_.type==="close")W--;else if(_.type==="else"&&W===0)return _.pos;return-1}{let z=!0;while(z){z=!1;let K=J.match(/@auth(?:\s*\(|\s|(?=\n))/);if(!K||K.index===void 0)break;let q=K.index,W,U,H=J.slice(q+5),j=s7(H);if(j)W=j.value,U=q+5+j.consumed;else U=q+5;let B=X(J,"auth","endauth",U);if(B===-1){console.warn(`[stx] @auth directive at position ${q} has no matching @endauth \u2014 the block was skipped.`);break}let V=J.slice(U,B),_=Y(V,"auth","endauth"),O;if(!Z.auth)O=!1;else O=W?G1(`auth?.check && auth?.user?.[${W}]`,Z):G1("auth?.check",Z);let F;if(_!==-1){let L=V.slice(0,_),w=V.slice(_+5);F=O?L:w}else F=O?V:"";J=J.substring(0,q)+F+J.substring(B+8),z=!0}}{let z=!0;while(z){z=!1;let K=J.match(/@guest(?:\s*\(|\s|(?=\n))/);if(!K||K.index===void 0)break;let q=K.index,W,U,H=J.slice(q+6),j=s7(H);if(j)W=j.value,U=q+6+j.consumed;else U=q+6;let B=X(J,"guest","endguest",U);if(B===-1){console.warn(`[stx] @guest directive at position ${q} has no matching @endguest \u2014 the block was skipped.`);break}let V=J.slice(U,B),_=Y(V,"guest","endguest"),O;if(!Z.auth)O=!0;else O=W?G1(`!auth?.check || !auth?.user?.[${W}]`,Z):G1("!auth?.check",Z);let F;if(_!==-1){let L=V.slice(0,_),w=V.slice(_+5);F=O?L:w}else F=O?V:"";J=J.substring(0,q)+F+J.substring(B+9),z=!0}}function Q(z,K,q){if(Z.userCan&&typeof Z.userCan[z]==="boolean")return Z.userCan[z];if(Z.permissions?.check&&typeof Z.permissions.check==="function")try{let W=[z];if(K)W.push(K);if(q){let U=G1(q,Z);W.push(U)}return Z.permissions.check(...W)}catch{return!1}return!1}function G(z){let K=z.match(/^\s*\(\s*'([^']*)'(?:,\s*'([^']*)')?(?:,\s*([^)]*))?\)/);if(!K)return null;return{ability:K[1],type:K[2],id:K[3]?.trim(),paramsEnd:K[0].length}}for(let z of["can","cannot"]){let K=`end${z}`,q=z==="can"?"elsecan":"elsecannot",W=!0;while(W){W=!1;let U=J.match(new RegExp(`@${z}\\s*\\(`));if(!U||U.index===void 0)break;let H=U.index,j=J.slice(H+`@${z}`.length),B=G(j);if(!B)break;let V=H+`@${z}`.length+B.paramsEnd,_=X(J,z,K,V);if(_===-1){console.warn(`[stx] @${z} directive at position ${H} has no matching @${K} \u2014 the block was skipped.`);break}let O=J.slice(V,_),F=[],L=0,w=new RegExp(`@${z}\\s*\\(`,"g"),N=new RegExp(`@${K}(?![a-z])`,"g"),R=new RegExp(`@${q}\\s*\\(`,"g"),M=/@else(?![a-z])/g,T=[],D;while((D=w.exec(O))!==null)T.push({pos:D.index,type:"open"});while((D=N.exec(O))!==null)T.push({pos:D.index,type:"close"});while((D=R.exec(O))!==null)T.push({pos:D.index,type:"elseDirective"});while((D=M.exec(O))!==null)T.push({pos:D.index,type:"else"});T.sort((y,b)=>y.pos-b.pos);for(let y of T){if(y.type==="open"){L++;continue}if(y.type==="close"){L--;continue}if(L===0)F.push(y)}let I=[],k=0;for(let y=0;y<F.length;y++){let b=F[y];if(I.push({content:O.slice(k,b.pos),ability:void 0}),b.type==="elseDirective"){let P=O.slice(b.pos+`@${q}`.length),u=G(P);if(u){I[I.length-1]={content:O.slice(k,b.pos)},k=b.pos+`@${q}`.length+u.paramsEnd,I.push({content:"",ability:u.ability,type:u.type,id:u.id}),I.pop();let l=F[y+1],g=l?l.pos:O.length;I.push({content:O.slice(k,g),ability:u.ability,type:u.type,id:u.id}),k=g}}else k=b.pos+5}if(k<O.length){let y=I[I.length-1];if(F.length>0&&F[F.length-1].type==="else")I.push({content:O.slice(k),isFinalElse:!0});else if(I.length===0)I.push({content:O.slice(k)})}let A=Q(B.ability,B.type,B.id),E=z==="can"?A:!A,C="";if(E)C=I[0]?.content||"";else{let y=!1;for(let b=1;b<I.length;b++){let P=I[b];if(P.isFinalElse){C=P.content,y=!0;break}if(P.ability){let u=Q(P.ability,P.type,P.id);if(z==="can"?u:!u){C=P.content,y=!0;break}}}if(!y&&I.length>0){let b=I[I.length-1];if(b.isFinalElse)C=b.content}}J=J.substring(0,H)+C+J.substring(_+`@${K}`.length),W=!0}}return J}function f5($,Z,J){let X=$;function Y(Q,G,z,K,q){let W=!0;while(W){W=!1;let U=new RegExp(`@${G}\\s*\\(`),H=Q.match(U);if(!H||H.index===void 0)break;let j=H.index,B=z1(Q,j+`@${G}`.length);if(!B)break;let V=B.endPos,_=O1(Q,G,z,V);if(_===-1){console.warn(`[stx] @${G} directive at position ${j} has no matching @${z} \u2014 the block was skipped.`);break}let O=Q.slice(V,_),F=B.expression,L=-1,w=0,N=0;while(N<O.length){let R=O.indexOf("@",N);if(R===-1)break;let M=O.substring(R);if(/^@(?:if|unless|isset|empty)\s*\(/.test(M)){w++,N=R+1;continue}if(/^@(?:endif|endunless|endisset|endempty)(?![a-z])/.test(M)){w--,N=R+1;continue}if(w===0&&/^@else(?![a-z])/.test(M)){L=R;break}N=R+1}try{let R=K(F.trim()),M;if(L!==-1){let T=O.slice(0,L),D=O.slice(L+5);M=R?T:D}else M=R?O:"";Q=Q.substring(0,j)+M+Q.substring(_+`@${z}`.length),W=!0}catch(R){let M=R instanceof Error?R.message:String(R),T=R0(q,`Error processing @${G} directive: ${M}`,w0.EVALUATION_ERROR);Q=Q.substring(0,j)+T+Q.substring(_+`@${z}`.length);break}}return Q}return X=Y(X,"isset","endisset",(Q)=>{let G=G1(Q,Z);return G!==void 0&&G!==null},"Isset"),X=Y(X,"empty","endempty",(Q)=>{let G=G1(Q,Z);return G===void 0||G===null||G===""||G===0||G===!1||Array.isArray(G)&&G.length===0||typeof G==="object"&&G!==null&&Object.keys(G).length===0},"Empty"),X}function g5($,Z,J){let X=$,Y="development";function Q(G,z,K,q){let W=new RegExp(`@${z}(?![a-z])`,"g"),U=new RegExp(`@${K}(?![a-z])`,"g"),H=new RegExp(`^@${z}(?![a-z])`),j=new RegExp(`^@${K}(?![a-z])`),B=G,V=!0;while(V){V=!1,W.lastIndex=0;let _=W.exec(B);if(!_)break;let O=_.index,F=O+_[0].length;if(z==="env"){let A=B.substring(F).match(/^\s*\(\s*(['"])([^'"]+)\1\s*\)/);if(!A)break;F+=A[0].length,q=Y===A[2]}let L=1,w=F,N=-1;while(L>0&&w<B.length){W.lastIndex=w,U.lastIndex=w;let A=W.exec(B),E=U.exec(B),C=A?A.index:1/0,y=E?E.index:1/0;if(C<y)L++,w=C+A[0].length;else if(y<1/0){if(L--,L===0){N=y;break}w=y+E[0].length}else break}if(N===-1){console.warn(`[stx] @${z} directive at position ${O} has no matching @${K} \u2014 the block was skipped.`);break}let R=B.substring(F,N),M=-1,T=0,D=0;while(D<R.length){let A=R.indexOf("@",D);if(A===-1)break;let E=R.substring(A);if(H.test(E)){T++,D=A+1;continue}if(j.test(E)){T--,D=A+1;continue}if(T===0&&/^@else(?![a-z])/.test(E)){M=A;break}D=A+1}let I;if(M!==-1){let A=R.slice(0,M),E=R.slice(M+5);I=q?A:E}else I=q?R:"";let k=`@${K}`.length;B=B.substring(0,O)+I+B.substring(N+k),V=!0}return B}return X=Q(X,"env","endenv",!1),X=Q(X,"production","endproduction",Y==="production"),X=Q(X,"development","enddevelopment",Y==="development"),X=Q(X,"staging","endstaging",Y==="staging"),X=Q(X,"testing","endtesting",Y==="testing"),X}var h5=new WeakMap;function o7($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function _1($,Z){if(!$)return Z?.nonceGenerator?.()??o7();let J=h5.get($);if(!J)J=Z?.nonceGenerator?.()??o7(),h5.set($,J);return J}function XH($){h5.delete($)}function r7($,Z){let J=[];for(let[X,Y]of Object.entries($)){if(Y===void 0||Y===null)continue;if(typeof Y==="boolean"){if(Y)J.push(X);continue}if(Array.isArray(Y)){let Q=[...Y];if(Z&&(X==="script-src"||X==="style-src"))Q=Q.filter((G)=>!G.startsWith("'nonce-")),Q.push(`'nonce-${Z}'`);if(Q.length>0)J.push(`${X} ${Q.join(" ")}`)}}return J.join("; ")}function m5($,Z){return`<meta http-equiv="Content-Security-Policy" content="${r7($,Z).replace(/&/g,"&").replace(/"/g,""")}">`}var RY={"default-src":["'self'"],"script-src":["'self'","'strict-dynamic'"],"style-src":["'self'"],"img-src":["'self'","data:","https:"],"font-src":["'self'","https:","data:"],"connect-src":["'self'"],"media-src":["'self'"],"object-src":["'none'"],"frame-src":["'none'"],"base-uri":["'self'"],"form-action":["'self'"],"frame-ancestors":["'self'"],"upgrade-insecure-requests":!0},u5={"default-src":["'self'"],"script-src":["'self'"],"style-src":["'self'","'unsafe-inline'"],"img-src":["'self'","data:","https:"],"font-src":["'self'","https:","data:"],"connect-src":["'self'","https:"],"media-src":["'self'"],"object-src":["'none'"],"frame-src":["'self'"],"base-uri":["'self'"],"form-action":["'self'"],"upgrade-insecure-requests":!0},NY={"default-src":["'self'"],"script-src":["'self'","'unsafe-inline'"],"style-src":["'self'","'unsafe-inline'"],"img-src":["'self'","data:","https:","http:"],"font-src":["'self'","https:","http:","data:"],"connect-src":["'self'","https:","http:","ws:","wss:"],"media-src":["'self'","https:","http:"],"object-src":["'none'"],"frame-src":["'self'","https:"],"base-uri":["'self'"]},DY={"default-src":["'none'"],"frame-ancestors":["'none'"]};function YH($){return{enabled:!0,directives:{strict:RY,moderate:u5,relaxed:NY,api:DY}[$]||u5,useNonce:$==="strict",addMetaTag:!0}}function QH($,Z){let J={...$};for(let[X,Y]of Object.entries(Z)){let Q=X,G=J[Q];if(Y===void 0||Y===null)continue;if(typeof Y==="boolean")J[Q]=G||Y;else if(Array.isArray(Y)){let z=Array.isArray(G)?G:[],K=[...new Set([...z,...Y])];J[Q]=K}}return J}function a7($,Z,J){if(!Z.enabled||!Z.addMetaTag)return $;if($.includes('http-equiv="Content-Security-Policy"'))return $;if(!$.includes("<head>")&&!$.includes("<head "))return $;let X=Z.useNonce?_1(J,Z):void 0,Y=m5(Z.directives,X);return $.replace(/<head([^>]*)>/,`<head$1>
|
|
3171
|
-
${Y}`)}function t7($,Z){let J=$;return J=J.replace(/<script(?![^>]*\ssrc=)([^>]*)>/gi,(X,Y)=>{if(Y.includes("nonce="))return X;return`<script nonce="${Z}"${Y}>`}),J=J.replace(/<style([^>]*)>/gi,(X,Y)=>{if(Y.includes("nonce="))return X;return`<style nonce="${Z}"${Y}>`}),J}function e7($,Z,J,X){let Y=$,Q=X.csp;if(Y=Y.replace(/@csp\b/g,()=>{if(!Q?.enabled||!Q.directives)return"<!-- CSP not configured -->";let G=Q.useNonce?_1(Z,Q):void 0;return m5(Q.directives,G)}),Y=Y.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return _1(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=_1(Z,Q);return Y}var MY={name:"csp",handler:($,Z,J,X)=>{let Q=J.__stx_options?.csp;if(!Q?.enabled||!Q.directives)return"<!-- CSP not configured -->";let G=Q.useNonce?_1(J,Q):void 0;return m5(Q.directives,G)},hasEndTag:!1,description:"Insert Content-Security-Policy meta tag"},AY={name:"cspNonce",handler:($,Z,J,X)=>{let Q=J.__stx_options?.csp;if(!Q?.enabled||!Q.useNonce)return"";return _1(J,Q)},hasEndTag:!1,description:"Output the current CSP nonce value"};function GH(){return[MY,AY]}function zH($){let Z=[];if($["script-src"]?.includes("'unsafe-inline'"))Z.push("CSP: Using unsafe-inline in script-src significantly reduces XSS protection");if($["script-src"]?.includes("'unsafe-eval'"))Z.push("CSP: Using unsafe-eval in script-src allows eval() and related functions");if(!$["default-src"])Z.push("CSP: No default-src specified. Recommend adding default-src as a fallback");if($["default-src"]?.includes("*"))Z.push("CSP: Using * in default-src provides minimal protection");if(!$["object-src"]&&!$["default-src"]?.includes("'none'"))Z.push("CSP: Consider adding object-src: none to block plugins");if(!$["base-uri"])Z.push("CSP: Consider adding base-uri to prevent base tag injection attacks");for(let[J,X]of Object.entries($))if(Array.isArray(X)&&X.includes("http:"))Z.push(`CSP: Using http: in ${J} allows insecure resources`);return Z}function IY($=!1){return $?"Content-Security-Policy-Report-Only":"Content-Security-Policy"}function KH($,Z){if(!$.enabled)return{};let J=$.useNonce?_1(Z,$):void 0,X=r7($.directives,J);return{[IY($.reportOnly)]:X}}var qH={enabled:!1,reportOnly:!1,directives:u5,useNonce:!1,addMetaTag:!0};import TY from"crypto";var kY=40,$4="_token",d5=null;function EY($=kY){let Z=TY.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return d5=Z,Z}function bY(){if(!d5)EY();return d5}function yY($=$4){let Z=bY();return`<input type="hidden" name="${$}" value="${Z}">`}function Z4($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,J,X)=>{return yY(X||$4)})}async function Y4($,Z,J,X){if(!X.customDirectives||X.customDirectives.length===0)return $;let Y=$;for(let Q of X.customDirectives){if(!Q.name||typeof Q.handler!=="function"){if(X.debug)console.warn("Invalid custom directive:",Q);continue}if(Q.hasEndTag)Y=await CY(Y,Q,Z,J,X);else Y=await SY(Y,Q,Z,J,X)}return Y}async function CY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=`@${Q}`,K=`@end${Q}`,q=$,W=F1(`${z}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${K}`,"g"),U=[],H=W.exec(q);while(H!==null){let[j,B="",V=""]=H,_=H.index||0;try{let O=B?Q4(Z,B):[],F=V.trim(),L=await G(F,O,J,X);U.push({original:j,processed:L,startIndex:_})}catch(O){let F=O instanceof Error?O.message:String(O);if(Y.debug)console.error(`Error processing custom directive @${Q}:`,O);U.push({original:j,processed:R0("CustomDirective",`Error in @${Q}${B?`(${B})`:""}: ${F}`,w0.EVALUATION_ERROR),startIndex:_})}H=W.exec(q)}for(let j=U.length-1;j>=0;j--){let{original:B,processed:V}=U[j];q=q.replace(B,V)}return q}async function SY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=$,K=[],q=[];if(Z.rawParams){for(let H of J4(z,F1(`(?<![\\w$@])@${Q}\\s*\\(`,"g")))if(H.end!==-1)q.push({fullMatch:H.call,paramString:H.args,startIndex:H.start})}else{let H=F1(`@${Q}\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\)`,"g");H.lastIndex=0;let j=H.exec(z);while(j!==null)q.push({fullMatch:j[0],paramString:j[1]??"",startIndex:j.index||0}),j=H.exec(z)}for(let{fullMatch:H,paramString:j,startIndex:B}of q)try{let V=Q4(Z,j),_=await G("",V,J,X);K.push({original:H,processed:_,startIndex:B})}catch(V){let _=V instanceof Error?V.message:String(V);if(Y.debug)console.error(`Error processing custom directive @${Q}:`,V);K.push({original:H,processed:R0("CustomDirective",`Error in @${Q}(${j}): ${_}`,w0.EVALUATION_ERROR),startIndex:B})}let W=F1(`@${Q}(?!\\w)(?!\\s*\\()`,"g"),U=W.exec(z);while(U!==null){let[H]=U,j=U.index||0;try{let B=await G("",[],J,X);K.push({original:H,processed:B,startIndex:j})}catch(B){let V=B instanceof Error?B.message:String(B);if(Y.debug)console.error(`Error processing custom directive @${Q}:`,B);K.push({original:H,processed:R0("CustomDirective",`Error in @${Q}: ${V}`,w0.EVALUATION_ERROR),startIndex:j})}U=W.exec(z)}for(let H=K.length-1;H>=0;H--){let{original:j,processed:B}=K[H];z=z.replace(j,B)}return z}function Q4($,Z){return $.rawParams?X4(Z):PY(Z)}function PY($){if(!$.trim())return[];let Z=[],J="",X=!1,Y="";for(let Q=0;Q<$.length;Q++){let G=$[Q];if((G==='"'||G==="'")&&(Q===0||$[Q-1]!=="\\"))if(!X)X=!0,Y=G;else if(G===Y)X=!1;else J+=G;else if(G===","&&!X)Z.push(J.trim()),J="";else J+=G}if(J.trim())Z.push(J.trim());return Z.map((Q)=>{let G=Q.trim();if(G.startsWith('"')&&G.endsWith('"')||G.startsWith("'")&&G.endsWith("'"))return G.substring(1,G.length-1);return G})}var G4=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,z4=/^[A-Za-z_$][\w$]*$/,vY=new Set(["light","dark","system"]);function w1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function xY($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,J=Z.appearance,X=Z.colorMode;if(w1(Z.storageKey,"storageKey"),!J||typeof J!=="object"||Array.isArray(J))throw Error("@appearanceBootstrap appearance must be an object");if(!X||typeof X!=="object"||Array.isArray(X))throw Error("@appearanceBootstrap colorMode must be an object");if(w1(J.key,"appearance.key"),w1(J.attribute,"appearance.attribute"),w1(J.default,"appearance.default"),w1(X.key,"colorMode.key"),w1(X.attribute,"colorMode.attribute"),w1(X.default,"colorMode.default"),!z4.test(J.key)||!z4.test(X.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!G4.test(J.attribute)||!G4.test(X.attribute))throw Error("@appearanceBootstrap attributes must be lowercase data attribute names");if(!Array.isArray(J.allowed)||J.allowed.length===0||J.allowed.some((Y)=>typeof Y!=="string"||Y.length===0))throw Error("@appearanceBootstrap appearance.allowed must contain one or more strings");if(!J.allowed.includes(J.default))throw Error("@appearanceBootstrap appearance.default must be in appearance.allowed");if(!vY.has(X.default))throw Error("@appearanceBootstrap colorMode.default must be light, dark, or system");return{storageKey:Z.storageKey,appearance:{key:J.key,attribute:J.attribute,allowed:[...new Set(J.allowed)],default:J.default},colorMode:{key:X.key,attribute:X.attribute,default:X.default}}}function fY($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function gY($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${fY($)};const root=document.documentElement;const MODES=["light","dark","system"];function read(){let stored={};try{const raw=localStorage.getItem(config.storageKey);const parsed=raw?JSON.parse(raw):{};if(parsed&&typeof parsed==="object"&&!Array.isArray(parsed))stored=parsed}catch{}return stored}function write(stored){try{localStorage.setItem(config.storageKey,JSON.stringify(stored))}catch{}}function resolve(){const stored=read();return{appearance:config.appearance.allowed.includes(stored[config.appearance.key])?stored[config.appearance.key]:config.appearance.default,colorMode:MODES.includes(stored[config.colorMode.key])?stored[config.colorMode.key]:config.colorMode.default}}function prefersDark(){try{return matchMedia("(prefers-color-scheme: dark)").matches}catch{return false}}function apply(){const state=resolve();const dark=state.colorMode==="dark"||(state.colorMode==="system"&&prefersDark());root.setAttribute("data-"+config.appearance.attribute,state.appearance);root.setAttribute("data-"+config.colorMode.attribute,state.colorMode);root.classList.toggle("dark",dark);root.dataset.theme=dark?"dark":"light";state.dark=dark;try{window.dispatchEvent(new CustomEvent("stx:appearance",{detail:state}))}catch{}return state}function store(key,allowed,value){if(allowed.includes(value)){const stored=read();stored[key]=value;write(stored)}return apply()}window.__stxAppearance={config:config,read:read,resolve:resolve,apply:apply,setColorMode:function(mode){return store(config.colorMode.key,MODES,mode)},setAppearance:function(name){return store(config.appearance.key,config.appearance.allowed,name)},watchSystem:function(){try{matchMedia("(prefers-color-scheme: dark)").addEventListener("change",function(){if(resolve().colorMode==="system")apply()})}catch{}}};apply()}());</script>`}function hY($,Z){let J=1,X=null,Y=!1;for(let Q=Z+1;Q<$.length;Q++){let G=$[Q];if(Y){Y=!1;continue}if(X){if(G==="\\")Y=!0;else if(G===X)X=null;continue}if(G==='"'||G==="'"||G==="`"){X=G;continue}if(G==="(")J++;else if(G===")"&&--J===0)return Q}return-1}function K4($,Z){let J=$,X=/@appearanceBootstrap\s*\(/g,Y;while((Y=X.exec(J))!==null){let Q=Y.index+Y[0].length-1,G=hY(J,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let z=J.slice(Q+1,G).trim(),K=Q0(`(${z})`,Z),q=gY(xY(K));J=J.slice(0,Y.index)+q+J.slice(G+1),X.lastIndex=Y.index+q.length}return J}import uY from"crypto";function D0($){return String($??"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var c5={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"};function mY($){return{...c5,...$.forms?.classes}}function K9($,Z,J,X){let Y=$||Z;return J?`${Y} ${X}`:Y}function h0($){return String($).replace(/\[\]$/,"").replace(/[^\w.:-]+/g,"-").replace(/^-+|-+$/g,"")}function g1($,Z){if(/\bid\s*=/i.test($))return"";return` id="${D0(Z)}"`}function l5($,Z,J){if(!Z)return"";let X="";if(!/\baria-invalid\s*=/i.test(J))X+=' aria-invalid="true"';if(!/\baria-describedby\s*=/i.test(J))X+=` aria-describedby="${D0(`${h0($)}-error`)}"`;return X}function dY(){return uY.randomUUID()}function RH($,Z,J,X){let Y=mY(X),Q=$;return Q=cY(Q,Z),Q=w2(Q,Z),Q=p5(Q,Z,Y),Q=i5(Q,Z,Y),Q}function w2($,Z){let J=$;return J=J.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let X=dY();Z.csrf={token:X}}if(Z.csrf.field)return Z.csrf.field;if(Z.csrf.token)return`<input type="hidden" name="_token" value="${D0(Z.csrf.token)}">`;return'<input type="hidden" name="_token" value="">'}),J=J.replace(/@method\(['"]([^'"]+)['"]\)/g,(X,Y)=>{let Q=Y.toUpperCase();if(Y&&!["GET","POST"].includes(Q))return`<input type="hidden" name="_method" value="${D0(Q)}">`;return X}),J}function p5($,Z,J=c5){let X=$;return X=X.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(Y,Q,G,z,K,q="")=>{let W=Q||G||"POST",U=z||K||"",H=K1(q),j=W.toUpperCase(),B=["GET","POST"].includes(j)?j:"POST",V=`<form method="${D0(B)}" action="${D0(U)}"${H?` ${H}`:""}>`;if(V+=`
|
|
3172
|
-
${
|
|
3173
|
-
${w2(`@method('${j}')`,Z)}`;return V}),X=X.replace(/@endform/g,"</form>"),X=X.replace(/@input\(\s*(?:'([^']+)'|"([^"]+)")\s*(?:,\s*(?:(?:'([^']*)'|"([^"]*)")\s*)?)?(?:,\s*\{([^}]+)\})?\s*\)/g,(Y,Q,G,z,K,q="")=>{let W=Q||G||"",U=z||K||"",H=K1(q),j=_2(W,Z),B=j!==void 0&&j!==null?j:U||"",V=H.match(/type=['"]([^'"]+)['"]/i),_=V?V[1]:"text",O=F2(W,Z),F=H.match(/class=['"]([^'"]+)['"]/i),L=K9(F?F[1]:"",J.input,O,J.inputError),w=H.replace(/class=['"][^'"]+['"]/i,"");return w=w.replace(/type=['"][^'"]+['"]/i,""),`<input type="${D0(_)}" name="${D0(W)}"${g1(H,h0(W))} value="${D0(B)}" class="${L}"${l5(W,O,H)}${w?` ${w}`:""}>`}),X=X.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(Y,Q,G="",z="")=>{let K=K1(G),q=_2(Q,Z)||z.trim(),W=F2(Q,Z),U=K.match(/class=['"]([^'"]+)['"]/i),H=K9(U?U[1]:"",J.input,W,J.inputError),j=K.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${D0(Q)}"${g1(K,h0(Q))} class="${H}"${l5(Q,W,K)}${j?` ${j}`:""}>${D0(q)}</textarea>`}),X=X.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(Y,Q,G="",z)=>{let K=K1(G),q=_2(Q,Z),W=F2(Q,Z),U=K.match(/class=['"]([^'"]+)['"]/i),H=K9(U?U[1]:"",J.input,W,J.inputError),j=K.replace(/class=['"][^'"]+['"]/i,""),B=z;if(q!==void 0)B=z.replace(/(<option[^>]*value=['"]([^'"]+)['"][^>]*>)/gi,(V,_,O)=>{if((Array.isArray(q)?q.some((L)=>String(L)===O):String(q)===O)&&!_.includes("selected"))return _.replace(/(<option)/,"$1 selected");return V});return`<select name="${D0(Q)}"${g1(K,h0(Q))} class="${H}"${l5(Q,W,K)}${j?` ${j}`:""}>${B}</select>`}),X=X.replace(/@checkbox\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?(?:,\s*\{([^}]+)\})?\)/g,(Y,Q,G,z="")=>{let K=G===void 0?"1":G,q=G===void 0?h0(Q):`${h0(Q)}-${h0(K)}`,W=K1(z),U=_2(Q,Z),H=U!==void 0&&(Array.isArray(U)?U.some((_)=>String(_)===K):U===!0||String(U)===K),j=W.match(/class=['"]([^'"]+)['"]/i),B=j?j[1]:J.checkInput,V=W.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${D0(Q)}"${g1(W,q)} value="${D0(K)}" class="${B}"${H?" checked":""}${V?` ${V}`:""}>`}),X=X.replace(/@radio\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(Y,Q,G,z="")=>{let K=K1(z),q=_2(Q,Z),W=q!==void 0&&q===G,U=K.match(/class=['"]([^'"]+)['"]/i),H=U?U[1]:J.checkInput,j=K.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${D0(Q)}"${g1(K,`${h0(Q)}-${h0(G)}`)} value="${D0(G)}" class="${H}"${W?" checked":""}${j?` ${j}`:""}>`}),X=X.replace(/@file\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(Y,Q,G="")=>{let z=K1(G),K=z.match(/accept=['"]([^'"]+)['"]/i),q=K?K[1]:"",W=z.includes("multiple"),U=F2(Q,Z),H=z.match(/class=['"]([^'"]+)['"]/i),j=K9(H?H[1]:"",J.input,U,J.inputError),B=z.replace(/class=['"][^'"]+['"]/gi,"").replace(/accept=['"][^'"]+['"]/gi,"").replace(/\bmultiple\b/gi,"").trim(),V=[`<input type="file" name="${D0(Q)}"${g1(z,h0(Q))}`,`class="${j}"`];if(q)V.push(`accept="${D0(q)}"`);if(W)V.push("multiple");if(B)V.push(B);return`${V.join(" ")}>`}),X=X.replace(/@label\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endlabel/g,(Y,Q,G="",z)=>{let K=K1(G),q=K.match(/class=['"]([^'"]+)['"]/i),W=q?q[1]:J.label,U=K.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${D0(h0(Q))}" class="${W}"${U?` ${U}`:""}>${z}</label>`}),X}function i5($,Z,J=c5){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(X,Y,Q)=>{try{if(F2(Y,Z)){let G=Q.replace(/\{\{([^}]+)\}\}/g,(z,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return q4(Y,Z);if(K.trim().includes("errors.first")||K.trim().includes("$errors.first")){if(typeof Z.errors?.first==="function")return Z.errors.first(Y);return q4(Y,Z)}let q=K.trim();if(H0(q)){let W=Q0(q,Z);return W!==void 0?String(W):q}return q}catch{return K}});return`<div id="${D0(`${h0(Y)}-error`)}" role="alert">${G}</div>`}return""}catch(G){return console.error("Error processing @error directive:",G),X}})}function F2($,Z){if(!Z.errors)return!1;if(typeof Z.errors.has==="function")return Z.errors.has($);if(typeof Z.errors==="object")return Object.prototype.hasOwnProperty.call(Z.errors,$);return!1}function q4($,Z){if(!Z.errors)return"";if(typeof Z.errors.get==="function")return Z.errors.get($);if(typeof Z.errors==="object"&&Object.prototype.hasOwnProperty.call(Z.errors,$)){let J=Z.errors[$];return Array.isArray(J)?J[0]:String(J)}return""}function _2($,Z){let J;if(Z.old&&typeof Z.old==="function")return Z.old($);if(Z.old&&typeof Z.old==="object")return Z.old[$];if($.endsWith("[]")){let X=$.slice(0,-2);if(J=Z[X],J!==void 0)return J}return Z[$]}function K1($){if(!$.trim())return"";let Z=[],J=$.trim(),X=/([\w-]+)\s*:\s*(['"]?)([^,'"]*)\2(?:\s*,\s*|\s*$)/g,Y;while((Y=X.exec(J))!==null){let[,Q,,G]=Y;Z.push(`${Q}="${G.trim()}"`)}return Z.join(" ")}var W4={required:($,Z,J)=>{if($===void 0||$===null||$===""||Array.isArray($)&&$.length===0)return`The ${J} field is required.`;return null},email:($,Z,J)=>{if(!$)return null;if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String($)))return`The ${J} field must be a valid email address.`;return null},min:($,Z,J)=>{if(!$)return null;let X=Number(Z[0]);if(typeof $==="string"&&$.length<X)return`The ${J} field must be at least ${X} characters.`;if(typeof $==="number"&&$<X)return`The ${J} field must be at least ${X}.`;if(Array.isArray($)&&$.length<X)return`The ${J} field must have at least ${X} items.`;return null},max:($,Z,J)=>{if(!$)return null;let X=Number(Z[0]);if(typeof $==="string"&&$.length>X)return`The ${J} field must not exceed ${X} characters.`;if(typeof $==="number"&&$>X)return`The ${J} field must not exceed ${X}.`;if(Array.isArray($)&&$.length>X)return`The ${J} field must not have more than ${X} items.`;return null},confirmed:($,Z,J)=>{if(Z[0]!==void 0&&$!==Z[0])return`The ${J} confirmation does not match.`;return null},numeric:($,Z,J)=>{if(!$)return null;if(Number.isNaN(Number($)))return`The ${J} field must be a number.`;return null},integer:($,Z,J)=>{if(!$)return null;if(!Number.isInteger(Number($)))return`The ${J} field must be an integer.`;return null},alpha:($,Z,J)=>{if(!$)return null;if(!/^[a-z]+$/i.test(String($)))return`The ${J} field must only contain letters.`;return null},alphanumeric:($,Z,J)=>{if(!$)return null;if(!/^[a-z0-9]+$/i.test(String($)))return`The ${J} field must only contain letters and numbers.`;return null},url:($,Z,J)=>{if(!$)return null;try{return new URL(String($))?null:null}catch{return`The ${J} field must be a valid URL.`}},regex:($,Z,J)=>{if(!$)return null;try{if(!new RegExp(Z[0]).test(String($)))return`The ${J} field format is invalid.`;return null}catch{return`The ${J} field has an invalid validation pattern.`}},in:($,Z,J)=>{if(!$)return null;if(!Z.includes(String($)))return`The ${J} field must be one of: ${Z.join(", ")}.`;return null},notIn:($,Z,J)=>{if(!$)return null;if(Z.includes(String($)))return`The ${J} field must not be: ${Z.join(", ")}.`;return null},date:($,Z,J)=>{if(!$)return null;let X=new Date($);if(Number.isNaN(X.getTime()))return`The ${J} field must be a valid date.`;return null},before:($,Z,J)=>{if(!$)return null;let X=new Date($),Y=new Date(Z[0]);if(X>=Y)return`The ${J} field must be before ${Z[0]}.`;return null},after:($,Z,J)=>{if(!$)return null;let X=new Date($),Y=new Date(Z[0]);if(X<=Y)return`The ${J} field must be after ${Z[0]}.`;return null}};function NH($,Z){W4[$]=Z}function n5($){let[Z,...J]=$.split(":"),X=J.length>0?J.join(":").split(","):[];return{name:Z.trim(),params:X}}function lY($,Z,J,X={}){let Y=[],Q=J.split("|").map((G)=>G.trim()).filter(Boolean);for(let G of Q){let z=n5(G),K=W4[z.name];if(!K){console.warn(`Unknown validation rule: ${z.name}`);continue}if(z.name==="confirmed"){let W=`${$}_confirmation`;z.params=[X[W]]}let q=K(Z,z.params||[],$);if(q)Y.push(z.message||q)}return{field:$,valid:Y.length===0,errors:Y}}function DH($,Z){let J={};for(let[X,Y]of Object.entries(Z)){let Q=lY(X,$[X],Y,$);if(!Q.valid)J[X]=Q.errors}return J}function cY($,Z){return $.replace(/@validate\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]*)\})?\s*\)/g,(J,X,Y,Q)=>{let G=Y.split("|").map((K)=>K.trim()),z=[];for(let K of G){let q=n5(K);switch(q.name){case"required":z.push("required");break;case"email":z.push('type="email"');break;case"url":z.push('type="url"');break;case"numeric":case"integer":if(z.push('type="number"'),q.name==="integer")z.push('step="1"');break;case"min":if(q.params?.[0])z.push(`minlength="${q.params[0]}"`);break;case"max":if(q.params?.[0])z.push(`maxlength="${q.params[0]}"`);break;case"regex":if(q.params?.[0])z.push(`pattern="${q.params[0]}"`);break}}return`<!-- @validate:${X}:${Y} -->${z.length>0?`<!-- attrs:${z.join(" ")} -->`:""}`})}var U4={required:{name:"required",validate:($)=>{if($===null||$===void 0||$==="")return"This field is required";if(Array.isArray($)&&$.length===0)return"This field is required";return!0},toHtml5:()=>["required"],message:"This field is required"},email:{name:"email",validate:($)=>{if(!$)return!0;return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String($))||"Please enter a valid email address"},toHtml5:()=>['type="email"'],message:"Please enter a valid email address"},url:{name:"url",validate:($)=>{if(!$)return!0;try{return new URL(String($)).protocol.startsWith("http")||"Please enter a valid URL"}catch{return"Please enter a valid URL"}},toHtml5:()=>['type="url"'],message:"Please enter a valid URL"},numeric:{name:"numeric",validate:($)=>{if(!$)return!0;return!Number.isNaN(Number($))||"Please enter a number"},toHtml5:()=>['type="number"'],message:"Please enter a number"},integer:{name:"integer",validate:($)=>{if(!$)return!0;let Z=Number($);return Number.isInteger(Z)||"Please enter a whole number"},toHtml5:()=>['type="number"','step="1"'],message:"Please enter a whole number"},alpha:{name:"alpha",validate:($)=>{if(!$)return!0;return/^[a-z]+$/i.test(String($))||"Please enter only letters"},toHtml5:()=>['pattern="[a-zA-Z]+"'],message:"Please enter only letters"},alphanumeric:{name:"alphanumeric",validate:($)=>{if(!$)return!0;return/^[a-z0-9]+$/i.test(String($))||"Please enter only letters and numbers"},toHtml5:()=>['pattern="[a-zA-Z0-9]+"'],message:"Please enter only letters and numbers"},min:{name:"min",validate:($,Z)=>{if(!$)return!0;let J=Number(Z[0]);if(typeof $==="string")return $.length>=J||`Must be at least ${J} characters`;if(typeof $==="number")return $>=J||`Must be at least ${J}`;if(Array.isArray($))return $.length>=J||`Must have at least ${J} items`;return!0},toHtml5:($)=>[`minlength="${$[0]}"`,`min="${$[0]}"`],message:"Must be at least {{param}} characters"},max:{name:"max",validate:($,Z)=>{if(!$)return!0;let J=Number(Z[0]);if(typeof $==="string")return $.length<=J||`Must be no more than ${J} characters`;if(typeof $==="number")return $<=J||`Must be no more than ${J}`;if(Array.isArray($))return $.length<=J||`Must have no more than ${J} items`;return!0},toHtml5:($)=>[`maxlength="${$[0]}"`,`max="${$[0]}"`],message:"Must be no more than {{param}} characters"},between:{name:"between",validate:($,Z)=>{if(!$)return!0;let[J,X]=Z.map(Number);if(typeof $==="string")return $.length>=J&&$.length<=X||`Must be between ${J} and ${X} characters`;if(typeof $==="number")return $>=J&&$<=X||`Must be between ${J} and ${X}`;return!0},toHtml5:($)=>[`minlength="${$[0]}"`,`maxlength="${$[1]}"`],message:"Must be between {{min}} and {{max}}"},confirmed:{name:"confirmed",validate:($,Z,J)=>{let X=Object.keys(J);for(let Y of X)if(Y.endsWith("_confirmation")&&J[Y]===$)return!0;return"Confirmation does not match"},message:"Confirmation does not match"},in:{name:"in",validate:($,Z)=>{if(!$)return!0;return Z.includes(String($))||`Must be one of: ${Z.join(", ")}`},message:"Must be one of: {{values}}"},notIn:{name:"notIn",validate:($,Z)=>{if(!$)return!0;return!Z.includes(String($))||`Must not be: ${Z.join(", ")}`},message:"Must not be: {{values}}"},regex:{name:"regex",validate:($,Z)=>{if(!$)return!0;try{return new RegExp(Z[0]).test(String($))||"Invalid format"}catch{return"Invalid format"}},toHtml5:($)=>[`pattern="${$[0]}"`],message:"Invalid format"},date:{name:"date",validate:($)=>{if(!$)return!0;let Z=new Date(String($));return!Number.isNaN(Z.getTime())||"Please enter a valid date"},toHtml5:()=>['type="date"'],message:"Please enter a valid date"},before:{name:"before",validate:($,Z)=>{if(!$)return!0;let J=new Date(String($)),X=new Date(Z[0]);return J<X||`Must be before ${Z[0]}`},toHtml5:($)=>[`max="${$[0]}"`],message:"Must be before {{date}}"},after:{name:"after",validate:($,Z)=>{if(!$)return!0;let J=new Date(String($)),X=new Date(Z[0]);return J>X||`Must be after ${Z[0]}`},toHtml5:($)=>[`min="${$[0]}"`],message:"Must be after {{date}}"},size:{name:"size",validate:($,Z)=>{if(!$)return!0;let J=Number(Z[0]);if(typeof $==="string")return $.length===J||`Must be exactly ${J} characters`;if(Array.isArray($))return $.length===J||`Must have exactly ${J} items`;return!0},message:"Must be exactly {{size}}"},phone:{name:"phone",validate:($)=>{if(!$)return!0;return/^\+?\(?\d{1,4}\)?[-\s./\d]*$/.test(String($))||"Please enter a valid phone number"},toHtml5:()=>['type="tel"','pattern="\\+?\\(?\\d{1,4}\\)?[-\\s./\\d]*"'],message:"Please enter a valid phone number"}};function MH($){U4[$.name]=$}function pY($,Z,J={}){let X=[],Y=Z.split("|").map((Q)=>Q.trim());for(let Q of Y){let G=n5(Q),z=U4[G.name];if(!z){console.warn(`Unknown validation rule: ${G.name}`);continue}let K=z.validate($,G.params||[],J);if(K!==!0)X.push(K)}return{valid:X.length===0,errors:X}}function AH($,Z){let J={},X=!0;for(let[Y,Q]of Object.entries(Z)){let G=pY($[Y],Q,$);if(!G.valid)X=!1,J[Y]=G.errors}return{valid:X,errors:J}}function IH($,Z){let J=JSON.stringify(Z);return`
|
|
3168
|
+
`}async function P7($,Z,J,X){if(Z.length<1)return D0("WebComponent","@webcomponent directive requires at least the tag name parameter",N0.INVALID_DIRECTIVE_SYNTAX);let Y=Z[0].replace(/['"]/g,""),G=(J.__stx_options||{}).componentsDir||"components",z=f0.isAbsolute(G)?[f0.join(G,`${Y}.stx`),f0.join(f0.dirname(X),`${Y}.stx`)]:[f0.join(f0.dirname(X),G,`${Y}.stx`),f0.join(process.cwd(),G,`${Y}.stx`),f0.join(f0.dirname(X),`${Y}.stx`)],K=null;for(let H of z)if(await t(H)){K=await Bun.file(H).text();break}if(!K)return D0("WebComponent",`Component file not found: ${Y}.stx`,N0.FILE_NOT_FOUND);let q=JY(K,Y);return`<script type="module">
|
|
3169
|
+
${XY(q)}
|
|
3170
|
+
</script>`}var E5={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:g7,cachePath:".stx/cache",cacheVersion:"1.0.0",componentRenderCacheBytes:33554432,build:{pagesDir:"pages",outputDir:"dist",baseUrl:"/",sitemap:!0,minify:!0,cache:!0,cacheDir:".stx/ssg-cache",concurrency:10,generate404:!0,publicDir:"public",trailingSlash:!1,cleanOutput:!0},customDirectives:[{name:"markdown",handler:j7,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:P7,hasEndTag:!1,description:"Include a web component in the template"},x7,f7,l7,c7,q5,H5,U5,W5,q7,t$,A7,I5,...p7],middleware:[],i18n:{defaultLocale:"en",locale:"en",translationsDir:"translations",format:"yaml",fallbackToKey:!0,cache:!0},webComponents:{enabled:!1,outputDir:"dist/web-components",components:[]},docs:{enabled:!1,outputDir:"docs",format:"markdown",components:!0,templates:!0,directives:!0},streaming:{enabled:!0,bufferSize:16384,strategy:"auto",timeout:30000},hydration:{enabled:!1,mode:"islands",clientEntry:"src/client.ts",autoMarkers:!0,preload:"lazy"},router:{enabled:!0,container:"main",linkSelector:"a[href]",viewTransitions:!0,scrollToTop:!0,scrollRestoration:!0,prefetch:!0,cache:!0,cacheTTL:300000,skipSelectors:'[data-no-router], [target="_blank"]',viewTransitionCSS:{oldRoot:"fade-out 0.15s ease-in",newRoot:"fade-in 0.2s ease-out",oldContent:"slide-out 0.2s ease-in",newContent:"slide-in 0.25s ease-out"}},a11y:{enabled:!0,addSrOnlyStyles:!0,level:"AA",autoFix:!1,ignoreChecks:[]},seo:{enabled:!0,socialPreview:!0,defaultConfig:{title:"stx Project",description:"A website built with stx templating engine"}},animation:{enabled:!0,defaultDuration:300,defaultEase:"ease",respectMotionPreferences:!0,staggerDelay:50},markdown:{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0,additionalThemes:["light-plus","one-dark-pro","dracula","monokai","solarized-light","nord","github-dark"]}},loops:{maxWhileIterations:1000,useAltLoopVariable:!1},story:{enabled:!0,outDir:".stx/dist/story",storyMatch:["**/*.story.stx"],storyIgnored:["**/node_modules/**","**/dist/**","**/.stx/**"],port:6006},pwa:{enabled:!1,manifest:{name:"stx App",shortName:"stx",description:"A Progressive Web App built with stx",startUrl:"/",display:"standalone",orientation:"any",themeColor:"#000000",backgroundColor:"#ffffff",scope:"/"},icons:{src:"public/icon.png",sizes:[72,96,128,144,152,192,384,512],generateWebP:!0,generateAppleIcons:!0,outputDir:"pwa-icons",purpose:["any","maskable"]},routes:[{pattern:"/",strategy:"network-first"},{pattern:"/static/*",strategy:"cache-first",maxAgeSeconds:2592000},{pattern:"/api/*",strategy:"network-only"},{pattern:"*.js",strategy:"stale-while-revalidate"},{pattern:"*.css",strategy:"stale-while-revalidate"},{pattern:"*.png",strategy:"cache-first"},{pattern:"*.jpg",strategy:"cache-first"},{pattern:"*.webp",strategy:"cache-first"},{pattern:"*.svg",strategy:"cache-first"}],offline:{enabled:!0,fallbackTitle:"You are offline",fallbackMessage:"Please check your internet connection and try again.",precacheAssets:[]},serviceWorker:{fileName:"sw.js",cacheVersion:"1.0.0",skipWaiting:!0,clientsClaim:!0,navigationPreload:!1,excludeRoutes:["/api/auth/*"],cacheFileTypes:["html","css","js","png","jpg","jpeg","webp","svg","woff","woff2"],useWorkbox:!1},autoInject:!0,push:{enabled:!1,defaultOptions:{vibrate:[100,50,100],requireInteraction:!1}},backgroundSync:{enabled:!1,queueName:"stx-sync-queue",maxRetentionMinutes:1440,maxRetries:3,minInterval:1000,forms:[],endpoints:[]},shareTarget:{enabled:!1,action:"/share-target",method:"POST",enctype:"multipart/form-data",params:{title:"title",text:"text",url:"url"}},fileHandlers:{enabled:!1},protocolHandlers:[],cacheStorage:{maxSize:100,maxEntries:500,maxAge:30,purgeStrategy:"lru"},updates:{enabled:!0,promptUser:!0,autoReload:!1,message:"A new version is available. Reload to update?"},precache:{enabled:!0,includeHtml:!0,includeJs:!0,includeCss:!0,includeImages:!0,includeFonts:!0,include:[],exclude:["*.map","*.LICENSE.txt"],maxFileSizeKB:500}},media:{enabled:!0,image:{enabled:!0,defaultWidths:[320,480,640,768,1024,1280,1536,1920],defaultFormats:["avif","webp","jpeg"],defaultQuality:80,placeholderStrategy:"thumbhash",lazyByDefault:!0,enableDpr:!0,defaultDpr:[1,2,3],tsImages:{enabled:!0,outputDir:"dist/images",baseUrl:"/images",formatQuality:{jpeg:{quality:85,mozjpeg:!0,progressive:!0},png:{compressionLevel:9,palette:!1},webp:{quality:82,effort:5,smartSubsample:!0},avif:{quality:75,effort:4,lossless:!1}},breakpoints:[320,480,640,768,1024,1280,1536,1920],batchOptions:{concurrency:4,optimizationPreset:"web"}}},video:{enabled:!0,lazyByDefault:!0,defaultControls:!0,tsVideos:{enabled:!0,outputDir:"dist/videos",baseUrl:"/videos",defaultQuality:"high",streaming:{enabled:!0,format:"hls",segmentDuration:6,defaultQualities:[{label:"1080p",width:1920,height:1080,bitrate:5000000,audioBitrate:192000},{label:"720p",width:1280,height:720,bitrate:2500000,audioBitrate:128000},{label:"480p",width:854,height:480,bitrate:1e6,audioBitrate:96000}]},thumbnails:{enabled:!0,count:10,format:"webp",width:320},transcoding:{defaultCodec:"h264",defaultAudioCodec:"aac",speedPreset:"medium"}}},upload:{enabled:!0,maxSize:10485760,allowedTypes:["image/*","video/*","audio/*","application/pdf"],maxConcurrent:3},protected:{enabled:!0,expirationSeconds:3600,batchSize:10},cache:{enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500}},broadcasting:{enabled:!1,driver:"bun",host:"0.0.0.0",port:6001,scheme:"ws",verbose:!1}};function QY($,Z,J){let X=Z||"pages";if($)return{root:$,pagesDir:X};let Y=J||process.cwd(),Q=S0.join(Y,"resources","views"),G=S0.join(Y,"resources","layouts");if(Y9.existsSync(Q)&&Y9.existsSync(G))return{root:"resources",pagesDir:"views"};let z=S0.join(Y,"resources","views","pages");if(Y9.existsSync(z))return{root:"resources/views",pagesDir:X};return{root:".",pagesDir:X}}var v7=new Set,Q9=["partialsDir","componentsDir","layoutsDir"],b5=new WeakMap;function GY($,Z){let J=Z.replace(/[\\/]+$/,"");if(!J||J===".")return!0;let X=$.replace(/\\/g,"/"),Y=J.replace(/\\/g,"/");return X===Y||X.startsWith(`${Y}/`)}function zY($,Z){let J=!$.root,X=QY($.root,$.pagesDir,Z);if($.root=X.root,$.pagesDir=X.pagesDir,J&&X.root!=="."){let Y=`${Z}::${X.root}`;if(!v7.has(Y))v7.add(Y),console.warn(`[stx] No "root" in config \u2014 inferred "${X.root}" from the project layout. Template directories are resolved under it; set root explicitly to pin this.`)}if(!b5.has($)){let Y={};for(let Q of Q9){let G=$[Q];if(typeof G==="string"&&G)Y[Q]=G}b5.set($,Y)}if($.root&&$.root!=="."){let Y=$.root;for(let Q of Q9){let G=$[Q];if(typeof G!=="string"||!G)continue;if(S0.isAbsolute(G)||GY(G,Y))continue;$[Q]=S0.join(Y,G)}}for(let Y of Q9){let Q=$[Y];if(typeof Q!=="string"||!Q||S0.isAbsolute(Q))continue;$[Y]=S0.resolve(Z,Q)}return $}function KY($,Z){let J=b5.get($);for(let X of Q9){let Y=$[X];if(typeof Y!=="string"||!Y)continue;let Q=S0.isAbsolute(Y)?Y:S0.join(Z,Y);if(Y9.existsSync(Q))continue;let G=J?.[X]??Y,z=$.root,K=!!z&&z!==".";console.warn(`[stx] ${String(X)} resolves to "${Q}", which does not exist. Configured as "${G}"`+(K?`, resolved under root "${z}".`:"."))}}function qY($){if($.customDirectives)$.customDirectives=[...$.customDirectives];if($.middleware)$.middleware=[...$.middleware];if($.apiRoutes)$.apiRoutes={...$.apiRoutes}}function WY($){if(h7($.stateDir),$.stateDir=u7(),$.cachePath=L2($.cachePath),$.build)$.build.cacheDir=L2($.build.cacheDir);if($.media?.cache)$.media.cache.directory=L2($.media.cache.directory);if($.story)$.story.outDir=L2($.story.outDir)}var G1=null,O1=new Map,Z9=new Map,O2=null;async function y5($){let Z=$?S0.resolve($):process.cwd(),J=Z9.get(Z);if(J&&J.signature!==J9(J.graph)){let Q=O1.get(Z);if(O1.delete(Z),Z9.delete(Z),!$)G1=null,O2=null;let{clearComponentCache:G}=await import("./chunk-ybx8n794.js"),{partialsCache:z}=await import("./chunk-xq0e2y4x.js");if(G(),z.clear(),Q&&J.configSignature===X9(J.graph)){let K=Q.then(async(q)=>{let W={...J.graph};await d7(W,Z),Z9.set(Z,{graph:W,signature:J9(W),configSignature:X9(W)});let H={...q,_layerGraph:W};if(!$)G1=H;return H});return O1.set(Z,K),K}}if(!$){if(G1)return G1;if(O2)return O2}let X=O1.get(Z);if(X)return X;let Y=(async()=>{let G=(await YY({name:"stx",alias:"ui",cwd:Z,defaultConfig:E5,verbose:!1})).config;if(G.extends!==void 0||J){let z=await m7(Z,E5);G=z.config,Z9.set(Z,{graph:z.graph,signature:J9(z.graph),configSignature:X9(z.graph)})}if(G.runtimeConfig){let{resolveRuntimeConfig:z}=await import("./chunk-34f8c48f.js");z(G.runtimeConfig,{});let{generateRuntimeConfigTypes:K}=await import("./chunk-xrjx7b2v.js");await K(Z,G.runtimeConfig)}if(qY(G),WY(G),zY(G,Z),KY(G,Z),G.plugins&&G.plugins.length>0){let{pluginManager:z}=await import("./chunk-dgv43ccd.js"),K=[],q=[];for(let W of G.plugins){let H=typeof W==="string"?W:W[0],U=typeof W==="string"?{}:W[1]||{};try{let j,B;try{j=await import(H),B=S0.dirname(x.resolve(H))}catch{let _=S0.resolve(Z,H);j=await import(_),B=S0.dirname(_)}let V=j.default||j;if(!z.has(V.name))await z.register(V,G);if(V.components){let _=Array.isArray(V.components)?V.components:[V.components];for(let O of _)K.push(S0.resolve(B,O))}if(V.pages){let _=S0.resolve(B,V.pages),O=U.path||"/";q.push({dir:_,prefix:O})}if(V.setup){let _={addDirective:(O)=>{G.customDirectives=G.customDirectives||[],G.customDirectives.push(O)},addRoute:(O,F)=>{G.apiRoutes=G.apiRoutes||{},G.apiRoutes[O]=F},addMiddleware:(O)=>{G.middleware=G.middleware||[],G.middleware.push(O)},pluginDir:B,config:G};await V.setup(U,_)}console.log(`[stx] Plugin loaded: ${V.name||H}`)}catch(j){console.warn(`[stx] Failed to load plugin ${H}:`,j.message)}}G._pluginComponentDirs=K,G._pluginPageDirs=q}return G})();if(O1.set(Z,Y),Y.catch(()=>{if(O1.get(Z)===Y)O1.delete(Z)}),!$)O2=Y,Y.then((Q)=>{G1=Q}).catch(()=>{});return Y}var i7=new Proxy(E5,{get($,Z){if(G1&&Z in G1)return G1[Z];if(!O2)y5().catch((J)=>{console.warn("[stx] Failed to load config file:",J?.message||J)});return $[Z]}});function mH($){return $}function dH($){let Z=[],J=[];if($.partialsDir!==void 0&&typeof $.partialsDir!=="string")Z.push({path:"partialsDir",message:"partialsDir must be a string",severity:"error"});if($.componentsDir!==void 0&&typeof $.componentsDir!=="string")Z.push({path:"componentsDir",message:"componentsDir must be a string",severity:"error"});if($.cache!==void 0&&typeof $.cache!=="boolean")Z.push({path:"cache",message:"cache must be a boolean",severity:"error"});if($.debug!==void 0&&typeof $.debug!=="boolean")Z.push({path:"debug",message:"debug must be a boolean",severity:"error"});if($.streaming){if($.streaming.bufferSize!==void 0){if(typeof $.streaming.bufferSize!=="number"||$.streaming.bufferSize<=0)Z.push({path:"streaming.bufferSize",message:"streaming.bufferSize must be a positive number",severity:"error"})}if($.streaming.timeout!==void 0){if(typeof $.streaming.timeout!=="number"||$.streaming.timeout<=0)Z.push({path:"streaming.timeout",message:"streaming.timeout must be a positive number",severity:"error"})}if($.streaming.strategy!==void 0){let X=["auto","manual","sections"];if(!X.includes($.streaming.strategy))Z.push({path:"streaming.strategy",message:`streaming.strategy must be one of: ${X.join(", ")}`,severity:"error"})}}if($.i18n){if($.i18n.format!==void 0){let X=["json","yaml","yml","js"];if(!X.includes($.i18n.format))Z.push({path:"i18n.format",message:`i18n.format must be one of: ${X.join(", ")}`,severity:"error"})}}if($.animation){if($.animation.defaultDuration!==void 0){if(typeof $.animation.defaultDuration!=="number"||$.animation.defaultDuration<0)Z.push({path:"animation.defaultDuration",message:"animation.defaultDuration must be a non-negative number",severity:"error"})}if($.animation.staggerDelay!==void 0){if(typeof $.animation.staggerDelay!=="number"||$.animation.staggerDelay<0)Z.push({path:"animation.staggerDelay",message:"animation.staggerDelay must be a non-negative number",severity:"error"})}}if($.a11y){if($.a11y.level!==void 0){let X=["AA","AAA"];if(!X.includes($.a11y.level))Z.push({path:"a11y.level",message:`a11y.level must be one of: ${X.join(", ")}`,severity:"error"})}}if($.hydration){if($.hydration.mode!==void 0){let X=["progressive","islands"];if(!X.includes($.hydration.mode))Z.push({path:"hydration.mode",message:`hydration.mode must be one of: ${X.join(", ")}`,severity:"error"})}if($.hydration.preload!==void 0){let X=["none","eager","lazy"];if(!X.includes($.hydration.preload))Z.push({path:"hydration.preload",message:`hydration.preload must be one of: ${X.join(", ")}`,severity:"error"})}}if($.customDirectives)if(!Array.isArray($.customDirectives))Z.push({path:"customDirectives",message:"customDirectives must be an array",severity:"error"});else $.customDirectives.forEach((X,Y)=>{if(!X.name||typeof X.name!=="string")Z.push({path:`customDirectives[${Y}].name`,message:"Custom directive must have a name string",severity:"error"});if(!X.handler||typeof X.handler!=="function")Z.push({path:`customDirectives[${Y}].handler`,message:"Custom directive must have a handler function",severity:"error"})});if($.middleware)if(!Array.isArray($.middleware))Z.push({path:"middleware",message:"middleware must be an array",severity:"error"});else $.middleware.forEach((X,Y)=>{if(!X.name||typeof X.name!=="string")Z.push({path:`middleware[${Y}].name`,message:"Middleware must have a name string",severity:"error"});if(!X.handler||typeof X.handler!=="function")Z.push({path:`middleware[${Y}].handler`,message:"Middleware must have a handler function",severity:"error"});if(!X.timing||!["before","after"].includes(X.timing))Z.push({path:`middleware[${Y}].timing`,message:'Middleware timing must be "before" or "after"',severity:"error"})});if($.debug===!0&&$.cache===!0)J.push({path:"debug+cache",message:"Debug mode with caching enabled may show stale content during development",severity:"warning"});if($.seo?.enabled===!0&&!$.seo?.defaultConfig?.title)J.push({path:"seo.defaultConfig.title",message:"SEO is enabled but no default title is set",severity:"warning"});if($.pwa){if($.pwa.enabled===!0&&!$.pwa.manifest?.name)Z.push({path:"pwa.manifest.name",message:"PWA manifest name is required when PWA is enabled",severity:"error"});if($.pwa.manifest?.display!==void 0){let X=["fullscreen","standalone","minimal-ui","browser"];if(!X.includes($.pwa.manifest.display))Z.push({path:"pwa.manifest.display",message:`PWA display must be one of: ${X.join(", ")}`,severity:"error"})}if($.pwa.manifest?.orientation!==void 0){let X=["portrait","landscape","any","portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"];if(!X.includes($.pwa.manifest.orientation))Z.push({path:"pwa.manifest.orientation",message:`PWA orientation must be one of: ${X.join(", ")}`,severity:"error"})}if($.pwa.routes){let X=["cache-first","network-first","stale-while-revalidate","network-only","cache-only"];$.pwa.routes.forEach((Y,Q)=>{if(!Y.pattern||typeof Y.pattern!=="string")Z.push({path:`pwa.routes[${Q}].pattern`,message:"PWA route must have a pattern string",severity:"error"});if(!X.includes(Y.strategy))Z.push({path:`pwa.routes[${Q}].strategy`,message:`PWA route strategy must be one of: ${X.join(", ")}`,severity:"error"});if(Y.maxAgeSeconds!==void 0&&(typeof Y.maxAgeSeconds!=="number"||Y.maxAgeSeconds<0))Z.push({path:`pwa.routes[${Q}].maxAgeSeconds`,message:"PWA route maxAgeSeconds must be a non-negative number",severity:"error"});if(Y.maxEntries!==void 0&&(typeof Y.maxEntries!=="number"||Y.maxEntries<1))Z.push({path:`pwa.routes[${Q}].maxEntries`,message:"PWA route maxEntries must be a positive number",severity:"error"})})}if($.pwa.icons?.sizes){if(!Array.isArray($.pwa.icons.sizes))Z.push({path:"pwa.icons.sizes",message:"PWA icon sizes must be an array of numbers",severity:"error"});else if($.pwa.icons.sizes.filter((Y)=>typeof Y!=="number"||Y<16||Y>1024).length>0)Z.push({path:"pwa.icons.sizes",message:"PWA icon sizes must be numbers between 16 and 1024",severity:"error"})}if($.pwa.icons?.purpose){let X=["any","maskable","monochrome"];if($.pwa.icons.purpose.filter((Q)=>!X.includes(Q)).length>0)Z.push({path:"pwa.icons.purpose",message:`PWA icon purpose must be one of: ${X.join(", ")}`,severity:"error"})}if($.pwa.enabled===!0&&!$.pwa.icons?.src)J.push({path:"pwa.icons.src",message:"PWA is enabled but no icon source specified. Provide a 512x512 PNG for best results.",severity:"warning"});if($.pwa.enabled===!0&&!$.pwa.manifest?.themeColor)J.push({path:"pwa.manifest.themeColor",message:"PWA theme color not set, defaulting to black",severity:"warning"})}return{valid:Z.length===0,errors:Z,warnings:J}}var S5=new Map;async function jY($,Z={}){try{if(!await t($))throw Error(`Markdown file not found: ${$}`);let X=(await HY.promises.stat($)).mtime.getTime();if(Z.cache&&S5.has($)){let H=S5.get($);if(H.updatedAt>=X)return{content:H.content,data:H.data}}let Y=await Bun.file($).text(),{data:Q,content:G}=H7(Y),z=Z.markdown||i7.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},q=j2(G,{gfm:!0});if(z.syntaxHighlighting?.enabled&&z.syntaxHighlighting?.serverSide)q=await BY(q,z.syntaxHighlighting?.defaultTheme||"github-dark",z.syntaxHighlighting?.highlightUnknownLanguages||!1);let W={content:q,data:Q||{}};if(Z.cache)S5.set($,{...W,updatedAt:X});return W}catch(J){if(Z.debug)console.error(`Error reading/parsing markdown file ${$}:`,J);let X=J instanceof Error?J.message:String(J);return{content:_0("Markdown File",`Error reading/parsing markdown file: ${X}`,$,"",0,""),data:{}}}}var G9=null;async function BY($,Z,J){let X=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!G9)try{G9=await UY({theme:Z||"github-dark",cache:!0})}catch(z){return console.error("Failed to initialize ts-syntax-highlighter:",z),$}let Y=async(z,K,q,W)=>{let H=W.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'"),U=q||(J?"text":"");if(!U)return z;try{if(!G9.getSupportedLanguages().includes(U))return z;return(await G9.highlight(H,U,{theme:Z})).html}catch(j){console.error(`Error highlighting code block with language ${q}:`,j)}return z},Q=$,G=$.matchAll(X);for(let z of G){let[K,q,W,H]=z,U=await Y(K,q,W,H);Q=Q.replace(K,U)}return Q}async function n7($,Z,J="",X={}){return await VY($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,z,K,q)=>{try{let W=z;if(!C5.isAbsolute(z))W=C5.resolve(C5.dirname(J),z);let H={};if(K)try{try{H=JSON.parse(K)}catch{if(X.debug)console.warn("Using safer alternative for parsing JS object literal");let F=K.replace(/^\s*\{|\}\s*$/g,"").trim().split(/,(?=\s*\w+\s*:)/);for(let L of F){let w=L.indexOf(":");if(w>0){let N=L.substring(0,w).trim(),R=L.substring(w+1).trim(),M=R.startsWith('"')&&R.endsWith('"'),T=R.startsWith("'")&&R.endsWith("'");if(M||T)R=R.substring(1,R.length-1);H[N]=R}}}}catch(O){if(X.debug)console.error("Error parsing context in @markdown-file directive:",O)}let{content:U,data:j}=await jY(W,X),B={...Z,...j,...H},V=U,_=/\{\{([^}]+)\}\}/g;return V=V.replace(_,(O,F)=>{let L=F.trim();return B[L]!==void 0?String(B[L]):O}),V}catch(W){let H=W instanceof Error?W.message:String(W);return _0("Markdown File",`Error including markdown file: ${H}`,J,$,q,G)}})}async function VY($,Z,J){let X=[],Y;while((Y=Z.exec($))!==null){let z=Y[0],K=Y.index,q=Y;X.push(J(...q).then((W)=>({match:z,replacement:W,index:K})))}let Q=await Promise.all(X);Q.sort((z,K)=>K.index-z.index);let G=$;for(let{match:z,replacement:K}of Q)G=G.replace(z,()=>K);return G}function z1($,Z){try{let J=$.trim();if(j0(J))return W0(J,Object.keys(Z))(...Object.values(Z));else return Y0(J,Z)}catch{return!1}}function K1($,Z){let J=LY($,Z);return J.ok?{expression:J.expression,endPos:J.endPos}:null}function LY($,Z){let J=Z;while(J<$.length&&/\s/.test($[J]))J++;if($[J]!=="(")return{ok:!1,reason:"missing-open-paren",pos:J};let X=M0($,"(",")",J);if(X===-1)return{ok:!1,reason:"unclosed-paren",pos:J};return{ok:!0,expression:$.slice(J+1,X),endPos:X+1}}function OY($,Z){let J=$.lastIndexOf("<",Z);if(J===-1)return!1;return J>$.lastIndexOf(">",Z)}function _1($,Z,J,X){let Y=1,Q=X,G=new RegExp(`@${Z}\\s*\\(`,"g"),z=new RegExp(`@${J}(?![a-z])`,"g");while(Q<$.length&&Y>0){G.lastIndex=Q,z.lastIndex=Q;let K=G.exec($),q=z.exec($),W=K?K.index:1/0,H=q?q.index:1/0;if(W<H)Y++,Q=W+K[0].length;else if(H<1/0){if(Y--,Y===0)return H;Q=H+q[0].length}else break}return-1}function s7($,Z){let J=$.slice(Z).match(/^@if\s*/);if(!J)return null;let X=Z+J[0].length,Y=K1($,X);if(!Y)return null;let Q=Y.endPos,G=_1($,"if","endif",Q);if(G===-1)return null;let z=$.slice(Q,G),K=[],q=0,W="if",H=Y.expression,U=0,j=0;while(q<z.length){let B=z.indexOf("@",q);if(B===-1)break;q=B;let V=z.substring(B);if(OY(z,B)){q++;continue}if(/^@if\s*\(/.test(V)){j++,q++;continue}if(/^@endif(?![a-z])/.test(V)){j--,q+=6;continue}if(j===0){let _=V.match(/^@elseif\s*/);if(_){K.push({type:W,condition:H,content:z.substring(U,q),start:Q+U,end:Q+q});let O=q+_[0].length,F=K1(z,O);if(!F){q++;continue}W="elseif",H=F.expression,q=F.endPos,U=q;continue}else if(/^@else(?![a-z])/.test(V)){K.push({type:W,condition:H,content:z.substring(U,q),start:Q+U,end:Q+q}),W="else",H=void 0,q+=5,U=q;continue}}q++}return K.push({type:W,condition:H,content:z.slice(U),start:Q+U,end:Q+z.length}),{fullMatch:$.slice(Z,G+6),branches:K,start:Z,end:G+6}}function _2($){let Z=[],J=/@if\s*\(/g,X=J.exec($);while(X!==null){if(Z.some((G)=>X.index>G.start&&X.index<G.end)){X=J.exec($);continue}let Q=s7($,X.index);if(Q)Z.push(Q),J.lastIndex=Q.end;X=J.exec($)}return Z}function z9($,Z,J){let X=[],Y=new RegExp(`@${Z}\\s*\\(`,"g"),Q=Y.exec($);while(Q!==null){if(X.some((V)=>Q.index>V.start&&Q.index<V.end)){Q=Y.exec($);continue}let z=Q.index,K=z+Q[0].length-1,q=M0($,"(",")",K);if(q===-1){Q=Y.exec($);continue}let W=$.slice(K+1,q),H=q+1,U=_1($,Z,J,H);if(U===-1){Q=Y.exec($);continue}let j=$.slice(H,U),B=U+`@${J}`.length;X.push({fullMatch:$.slice(z,B),name:Z,params:W,content:j,start:z,end:B}),Y.lastIndex=B,Q=Y.exec($)}return X}function P5($,Z){let J=$.slice(Z).match(/^@switch\s*/);if(!J)return null;let X=Z+J[0].length,Y=K1($,X);if(!Y)return null;let Q=Y.endPos,G=_1($,"switch","endswitch",Q);if(G===-1)return null;let z=$.slice(Q,G),K=[],q=0,W=null,H=0;while(q<z.length){let U=z.slice(q),j=U.match(/^@switch\s*\(/),B=U.match(/^@endswitch(?![a-z])/);if(j){if(H++,W)W.content+=j[0];q+=j[0].length;continue}if(B){if(H--,W)W.content+=B[0];q+=B[0].length;continue}if(H>0){if(W)W.content+=z[q];q++;continue}let V=U.match(/^@case\s*/),_=U.match(/^@default(?![a-z])/),O=U.match(/^@break(?![a-z])/);if(V&&U.startsWith("@case")){if(W)K.push(W);let F=q+V[0].length,L=K1(z,F);if(!L){q++;continue}W={type:"case",value:L.expression,content:""},q=L.endPos}else if(_&&U.startsWith("@default")){if(W)K.push(W);W={type:"default",content:""},q+=_[0].length}else if(O&&U.startsWith("@break"))q+=O[0].length;else{if(W)W.content+=z[q];q++}}if(W)K.push(W);return{fullMatch:$.slice(Z,G+10),expression:Y.expression,cases:K,start:Z,end:G+10}}function FY($){let Z=[],J=0;while(J<$.length){let X=$.indexOf("{{",J),Y=$.indexOf("{!!",J),Q=!1,G;if(X===-1&&Y===-1)break;else if(X===-1)G=Y,Q=!0;else if(Y===-1)G=X,Q=!1;else if(Y<X)G=Y,Q=!0;else G=X,Q=!1;if(!Q&&$.slice(G,G+3)==="{{{")Q=!0;let z=Q?$.slice(G,G+3)==="{{{"?"{{{":"{!!":"{{",K=Q?z==="{{{"?"}}}":"!!}":"}}",q=G+z.length,W=wY($,q,K);if(W===-1){J=G+1;continue}let H=$.slice(q,W).trim(),U=W+K.length;Z.push({fullMatch:$.slice(G,U),expression:H,start:G,end:U,isRaw:Q}),J=U}return Z}function wY($,Z,J){let X=Z,Y=null,Q={paren:0,bracket:0,brace:0},G=0;while(X<$.length){let z=$[X];if((X>0?$[X-1]:"")==="\\"&&Y){X++;continue}if((z==='"'||z==="'")&&!Y){Y=z,X++;continue}if(z===Y&&Y!=="`"){Y=null,X++;continue}if(z==="`"&&!Y){Y="`",X++;continue}if(z==="`"&&Y==="`"&&G===0){Y=null,X++;continue}if(Y==="`"&&z==="$"&&$[X+1]==="{"){G++,X+=2;continue}if(G>0){if(z==="{")G++;else if(z==="}")G--;X++;continue}if(Y){X++;continue}if(z==="(")Q.paren++;else if(z===")")Q.paren--;else if(z==="[")Q.bracket++;else if(z==="]")Q.bracket--;else if(z==="{")Q.brace++;else if(z==="}")Q.brace--;if(Q.paren===0&&Q.bracket===0&&Q.brace<=0){if($.slice(X,X+J.length)===J)return X}X++}return-1}function RY($){let Z=x5($);if(Z.length===0)return{baseExpression:"",filters:[]};let J=Z[0],X=[];for(let Y=1;Y<Z.length;Y++){let Q=NY(Z[Y]);if(Q)X.push(Q)}return{baseExpression:J,filters:X}}function NY($){let Z=$.trim();if(!Z)return null;let J=Z.indexOf("(");if(J===-1)return{name:Z,args:[]};let X=Z.slice(0,J).trim(),Y=J+1,Q=M0(Z,"(",")",J);if(Q===-1)return{name:X,args:[]};let G=Z.slice(Y,Q),z=a7(G);return{name:X,args:z}}function a7($){let Z=[],J="",X={paren:0,bracket:0,brace:0},Y=null,Q=0;for(let G=0;G<$.length;G++){let z=$[G];if((G>0?$[G-1]:"")==="\\"&&Y){J+=z;continue}if((z==='"'||z==="'")&&!Y){Y=z,J+=z;continue}if(z===Y&&Y!=="`"){Y=null,J+=z;continue}if(z==="`"&&!Y){Y="`",J+=z;continue}if(z==="`"&&Y==="`"&&Q===0){Y=null,J+=z;continue}if(Y==="`"&&z==="$"&&$[G+1]==="{"){Q++,J+="${",G++;continue}if(Q>0&&z==="{"){Q++,J+=z;continue}if(Q>0&&z==="}"){Q--,J+=z;continue}if(Y){J+=z;continue}if(z==="(")X.paren++;else if(z===")")X.paren--;else if(z==="[")X.bracket++;else if(z==="]")X.bracket--;else if(z==="{")X.brace++;else if(z==="}")X.brace--;if(z===","&&X.paren===0&&X.bracket===0&&X.brace===0){Z.push(J.trim()),J="";continue}J+=z}if(J.trim())Z.push(J.trim());return Z}function DY($,Z){let J=Z;while(J<$.length&&/\s/.test($[J]))J++;if($[J]!=="(")return null;let X=M0($,"(",")",J);if(X===-1)return null;return{params:$.slice(J+1,X),endPos:X+1}}function MY($){let Z=[],X=new v5($).tokenize().filter((Q)=>Q.type!=="WHITESPACE"&&Q.type!=="COMMENT"),Y=0;while(Y<X.length){let Q=X[Y],G=!1;if(Q.type==="IDENTIFIER"&&Q.value==="export"){if(G=!0,Y++,Y>=X.length)break}let z=X[Y];if(z.type==="IDENTIFIER"&&(z.value==="const"||z.value==="let"||z.value==="var")){let K=z.value;if(Y++,Y>=X.length)break;let q=X[Y];if(q.type==="IDENTIFIER"){let W=q.value;if(Y++,Y<X.length&&X[Y].type==="OPERATOR"&&X[Y].value==="="){Y++;let H=Y<X.length?X[Y].start:$.length,U=o7(X,Y,$);Y=U.nextIndex,Z.push({type:"variable",name:W,value:$.slice(H,U.endPos),exported:G,start:z.start,end:U.endPos})}}else if(q.type==="PUNCTUATION"&&(q.value==="{"||q.value==="[")){let W=q.start,H=q.value==="{"?"}":"]",U=M0($,q.value,H,W);if(U!==-1){let j=$.slice(W,U+1);if(Y=r7(X,U+1),Y<X.length&&X[Y].type==="OPERATOR"&&X[Y].value==="="){Y++;let B=Y<X.length?X[Y].start:$.length,V=o7(X,Y,$);Y=V.nextIndex;let _=`__stx_destructured_${Z.length}`;Z.push({type:"variable",name:_,value:`${$.slice(B,V.endPos)}; ${K} ${j} = ${_}`,exported:G,start:z.start,end:V.endPos})}}}}else if(z.type==="IDENTIFIER"&&z.value==="function"){let K=G?X[Y-1].start:z.start;if(Y++,Y>=X.length)break;let q=X[Y];if(q.type==="IDENTIFIER"){let W=q.value;Y++;let H=-1;while(Y<X.length){if(X[Y].type==="PUNCTUATION"&&X[Y].value==="{"){H=X[Y].start;break}Y++}if(H!==-1){let U=M0($,"{","}",H);if(U!==-1)Z.push({type:"function",name:W,value:$.slice(K,U+1).replace(/^export\s+/,""),exported:G,start:K,end:U+1}),Y=r7(X,U+1)}}}else Y++}return Z}function o7($,Z,J){let X=Z,Y={paren:0,bracket:0,brace:0},Q=Z<$.length?$[Z].start:J.length;while(X<$.length){let G=$[X];if(G.type==="PUNCTUATION"){if(G.value==="(")Y.paren++;else if(G.value===")")Y.paren--;else if(G.value==="[")Y.bracket++;else if(G.value==="]")Y.bracket--;else if(G.value==="{")Y.brace++;else if(G.value==="}")Y.brace--;if(G.value===";"&&Y.paren===0&&Y.bracket===0&&Y.brace===0){Q=G.start,X++;break}}if(G.type==="IDENTIFIER"&&(G.value==="const"||G.value==="let"||G.value==="var"||G.value==="function"||G.value==="export")){if(Y.paren===0&&Y.bracket===0&&Y.brace===0){Q=$[X-1]?.end??G.start;break}}Q=G.end,X++}return{nextIndex:X,endPos:Q}}function r7($,Z){for(let J=0;J<$.length;J++)if($[J].start>=Z)return J;return $.length}function AY($,Z,J){let X=$,Y=!0;while(Y){Y=!1;let Q=X.match(/@switch\s*\(/);if(!Q||Q.index===void 0)break;let G=Q.index,z=P5(X,G);if(!z)break;try{let K;if(j0(z.expression))K=W0(z.expression,Object.keys(Z))(...Object.values(Z));else K=Y0(z.expression,Z);let q="",W=!1;for(let H of z.cases)if(H.type==="default"){if(!W)q=H.content.trim()}else try{let U;if(H.value&&j0(H.value))U=W0(H.value,Object.keys(Z))(...Object.values(Z));else if(H.value)U=Y0(H.value,Z);if(K===U){q=H.content.trim(),W=!0;break}}catch{continue}X=X.substring(0,G)+q+X.substring(z.end),Y=!0}catch(K){let q=K instanceof Error?K.message:String(K),W=D0("Switch",`Error evaluating @switch expression: ${q}`,N0.EVALUATION_ERROR);X=X.substring(0,G)+W+X.substring(z.end);break}}return X}function IY($){let Z=[];return{masked:$.replace(/<script\b[\s\S]*?<\/script\s*>/gi,(X)=>{return Z.push(X),`\x00stx-script-${Z.length-1}\x00`}),scripts:Z}}function TY($,Z){if(Z.length===0)return $;return $.replace(/\u0000stx-script-(\d+)\u0000/g,(J,X)=>Z[Number(X)]??J)}function r0($,Z,J){let{masked:X,scripts:Y}=IY($);return TY(kY(X,Z,J),Y)}function kY($,Z,J){let X=$;X=AY(X,Z,J);{let Q=!0;while(Q){Q=!1;let G=X.match(/@unless\s*\(/);if(!G||G.index===void 0)break;let z=G.index,K=K1(X,z+7);if(!K)break;let q=K.endPos,W=_1(X,"unless","endunless",q);if(W===-1){console.warn(`[stx] @unless directive at position ${z} has no matching @endunless \u2014 the block was skipped. Check for typos or missing closers.`);break}let H=X.slice(q,W),U=K.expression,j=-1;{let V=0,_=/@(?:if|unless)\s*\(/g,O=/@(?:endif|endunless)(?![a-z])/g,F=/@else(?![a-z])/g,L=[],w;while((w=_.exec(H))!==null)L.push({pos:w.index,type:"open"});while((w=O.exec(H))!==null)L.push({pos:w.index,type:"close"});while((w=F.exec(H))!==null)L.push({pos:w.index,type:"else"});L.sort((N,R)=>N.pos-R.pos);for(let N of L)if(N.type==="open")V++;else if(N.type==="close")V--;else if(N.type==="else"&&V===0){j=N.pos;break}}let B;if(j!==-1){let V=H.slice(0,j),_=H.slice(j+5);B=`@if (${U})${_}@else ${V}@endif`}else B=`@if (!(${U}))${H}@endif`;X=X.substring(0,z)+B+X.substring(W+10),Q=!0}}X=g5(X,Z,J),X=h5(X,Z,J),X=f5(X,Z);let Y=()=>{let Q=_2(X);if(Q.length===0)return!1;let G=Array(Q.length);for(let q=Q.length-1;q>=0;q--){let W=Q[q];try{let H="",U=!1;for(let j of W.branches){if(U)break;if(j.type==="else")H=j.content,U=!0;else try{let B;if(j.condition&&j0(j.condition))B=W0(j.condition,Object.keys(Z))(...Object.values(Z));else if(j.condition)B=Y0(j.condition,Z);if(B)H=j.content,U=!0}catch(B){H=D0(j.type==="if"?"If":"Elseif",`Error in @${j.type}(${j.condition}): ${B instanceof Error?B.message:String(B)}`,N0.EVALUATION_ERROR),U=!0}}G[q]=H}catch(H){let U=H instanceof Error?H.message:String(H);G[q]=D0("If",`Error processing @if block: ${U}`,N0.EVALUATION_ERROR)}}let z=Array(Q.length*2+1),K=0;for(let q=0;q<Q.length;q++){let W=Q[q];z[q*2]=X.slice(K,W.start),z[q*2+1]=G[q],K=W.end}return z[Q.length*2]=X.slice(K),X=z.join(""),!0};while(!0){let Q=X;if(!Y())break;if(X===Q)break}return X}function t7($){let Z=0;while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!=="(")return null;Z++;while(Z<$.length&&/\s/.test($[Z]))Z++;let J=$[Z];if(J!=="'"&&J!=='"')return null;Z++;let X=[];while(Z<$.length){let Y=$[Z];if(Y==="\\"&&Z+1<$.length){X.push($[Z+1]),Z+=2;continue}if(Y===J){Z++;break}X.push(Y),Z++}while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!==")")return null;return Z++,{value:X.join(""),consumed:Z}}function f5($,Z){let J=$;function X(z,K,q,W){let H=1,U=W,j=new RegExp(`@${K}(?:\\s*\\(|\\s|$)`,"g"),B=new RegExp(`@${q}(?![a-z])`,"g");while(U<z.length&&H>0){j.lastIndex=U,B.lastIndex=U;let V=j.exec(z),_=B.exec(z),O=V?V.index:1/0,F=_?_.index:1/0;if(O<F)H++,U=O+V[0].length;else if(F<1/0){if(H--,H===0)return F;U=F+_[0].length}else break}return-1}function Y(z,K,q){let W=0,H=new RegExp(`@${K}(?:\\s*\\(|\\s|$)`,"g"),U=new RegExp(`@${q}(?![a-z])`,"g"),j=/@else(?![a-z])/g,B=[],V;while((V=H.exec(z))!==null)B.push({pos:V.index,type:"open"});while((V=U.exec(z))!==null)B.push({pos:V.index,type:"close"});while((V=j.exec(z))!==null)B.push({pos:V.index,type:"else"});B.sort((_,O)=>_.pos-O.pos);for(let _ of B)if(_.type==="open")W++;else if(_.type==="close")W--;else if(_.type==="else"&&W===0)return _.pos;return-1}{let z=!0;while(z){z=!1;let K=J.match(/@auth(?:\s*\(|\s|(?=\n))/);if(!K||K.index===void 0)break;let q=K.index,W,H,U=J.slice(q+5),j=t7(U);if(j)W=j.value,H=q+5+j.consumed;else H=q+5;let B=X(J,"auth","endauth",H);if(B===-1){console.warn(`[stx] @auth directive at position ${q} has no matching @endauth \u2014 the block was skipped.`);break}let V=J.slice(H,B),_=Y(V,"auth","endauth"),O;if(!Z.auth)O=!1;else O=W?z1(`auth?.check && auth?.user?.[${W}]`,Z):z1("auth?.check",Z);let F;if(_!==-1){let L=V.slice(0,_),w=V.slice(_+5);F=O?L:w}else F=O?V:"";J=J.substring(0,q)+F+J.substring(B+8),z=!0}}{let z=!0;while(z){z=!1;let K=J.match(/@guest(?:\s*\(|\s|(?=\n))/);if(!K||K.index===void 0)break;let q=K.index,W,H,U=J.slice(q+6),j=t7(U);if(j)W=j.value,H=q+6+j.consumed;else H=q+6;let B=X(J,"guest","endguest",H);if(B===-1){console.warn(`[stx] @guest directive at position ${q} has no matching @endguest \u2014 the block was skipped.`);break}let V=J.slice(H,B),_=Y(V,"guest","endguest"),O;if(!Z.auth)O=!0;else O=W?z1(`!auth?.check || !auth?.user?.[${W}]`,Z):z1("!auth?.check",Z);let F;if(_!==-1){let L=V.slice(0,_),w=V.slice(_+5);F=O?L:w}else F=O?V:"";J=J.substring(0,q)+F+J.substring(B+9),z=!0}}function Q(z,K,q){if(Z.userCan&&typeof Z.userCan[z]==="boolean")return Z.userCan[z];if(Z.permissions?.check&&typeof Z.permissions.check==="function")try{let W=[z];if(K)W.push(K);if(q){let H=z1(q,Z);W.push(H)}return Z.permissions.check(...W)}catch{return!1}return!1}function G(z){let K=z.match(/^\s*\(\s*'([^']*)'(?:,\s*'([^']*)')?(?:,\s*([^)]*))?\)/);if(!K)return null;return{ability:K[1],type:K[2],id:K[3]?.trim(),paramsEnd:K[0].length}}for(let z of["can","cannot"]){let K=`end${z}`,q=z==="can"?"elsecan":"elsecannot",W=!0;while(W){W=!1;let H=J.match(new RegExp(`@${z}\\s*\\(`));if(!H||H.index===void 0)break;let U=H.index,j=J.slice(U+`@${z}`.length),B=G(j);if(!B)break;let V=U+`@${z}`.length+B.paramsEnd,_=X(J,z,K,V);if(_===-1){console.warn(`[stx] @${z} directive at position ${U} has no matching @${K} \u2014 the block was skipped.`);break}let O=J.slice(V,_),F=[],L=0,w=new RegExp(`@${z}\\s*\\(`,"g"),N=new RegExp(`@${K}(?![a-z])`,"g"),R=new RegExp(`@${q}\\s*\\(`,"g"),M=/@else(?![a-z])/g,T=[],D;while((D=w.exec(O))!==null)T.push({pos:D.index,type:"open"});while((D=N.exec(O))!==null)T.push({pos:D.index,type:"close"});while((D=R.exec(O))!==null)T.push({pos:D.index,type:"elseDirective"});while((D=M.exec(O))!==null)T.push({pos:D.index,type:"else"});T.sort((y,b)=>y.pos-b.pos);for(let y of T){if(y.type==="open"){L++;continue}if(y.type==="close"){L--;continue}if(L===0)F.push(y)}let I=[],k=0;for(let y=0;y<F.length;y++){let b=F[y];if(I.push({content:O.slice(k,b.pos),ability:void 0}),b.type==="elseDirective"){let P=O.slice(b.pos+`@${q}`.length),h=G(P);if(h){I[I.length-1]={content:O.slice(k,b.pos)},k=b.pos+`@${q}`.length+h.paramsEnd,I.push({content:"",ability:h.ability,type:h.type,id:h.id}),I.pop();let p=F[y+1],g=p?p.pos:O.length;I.push({content:O.slice(k,g),ability:h.ability,type:h.type,id:h.id}),k=g}}else k=b.pos+5}if(k<O.length){let y=I[I.length-1];if(F.length>0&&F[F.length-1].type==="else")I.push({content:O.slice(k),isFinalElse:!0});else if(I.length===0)I.push({content:O.slice(k)})}let A=Q(B.ability,B.type,B.id),E=z==="can"?A:!A,C="";if(E)C=I[0]?.content||"";else{let y=!1;for(let b=1;b<I.length;b++){let P=I[b];if(P.isFinalElse){C=P.content,y=!0;break}if(P.ability){let h=Q(P.ability,P.type,P.id);if(z==="can"?h:!h){C=P.content,y=!0;break}}}if(!y&&I.length>0){let b=I[I.length-1];if(b.isFinalElse)C=b.content}}J=J.substring(0,U)+C+J.substring(_+`@${K}`.length),W=!0}}return J}function g5($,Z,J){let X=$;function Y(Q,G,z,K,q){let W=!0;while(W){W=!1;let H=new RegExp(`@${G}\\s*\\(`),U=Q.match(H);if(!U||U.index===void 0)break;let j=U.index,B=K1(Q,j+`@${G}`.length);if(!B)break;let V=B.endPos,_=_1(Q,G,z,V);if(_===-1){console.warn(`[stx] @${G} directive at position ${j} has no matching @${z} \u2014 the block was skipped.`);break}let O=Q.slice(V,_),F=B.expression,L=-1,w=0,N=0;while(N<O.length){let R=O.indexOf("@",N);if(R===-1)break;let M=O.substring(R);if(/^@(?:if|unless|isset|empty)\s*\(/.test(M)){w++,N=R+1;continue}if(/^@(?:endif|endunless|endisset|endempty)(?![a-z])/.test(M)){w--,N=R+1;continue}if(w===0&&/^@else(?![a-z])/.test(M)){L=R;break}N=R+1}try{let R=K(F.trim()),M;if(L!==-1){let T=O.slice(0,L),D=O.slice(L+5);M=R?T:D}else M=R?O:"";Q=Q.substring(0,j)+M+Q.substring(_+`@${z}`.length),W=!0}catch(R){let M=R instanceof Error?R.message:String(R),T=D0(q,`Error processing @${G} directive: ${M}`,N0.EVALUATION_ERROR);Q=Q.substring(0,j)+T+Q.substring(_+`@${z}`.length);break}}return Q}return X=Y(X,"isset","endisset",(Q)=>{let G=z1(Q,Z);return G!==void 0&&G!==null},"Isset"),X=Y(X,"empty","endempty",(Q)=>{let G=z1(Q,Z);return G===void 0||G===null||G===""||G===0||G===!1||Array.isArray(G)&&G.length===0||typeof G==="object"&&G!==null&&Object.keys(G).length===0},"Empty"),X}function h5($,Z,J){let X=$,Y="development";function Q(G,z,K,q){let W=new RegExp(`@${z}(?![a-z])`,"g"),H=new RegExp(`@${K}(?![a-z])`,"g"),U=new RegExp(`^@${z}(?![a-z])`),j=new RegExp(`^@${K}(?![a-z])`),B=G,V=!0;while(V){V=!1,W.lastIndex=0;let _=W.exec(B);if(!_)break;let O=_.index,F=O+_[0].length;if(z==="env"){let A=B.substring(F).match(/^\s*\(\s*(['"])([^'"]+)\1\s*\)/);if(!A)break;F+=A[0].length,q=Y===A[2]}let L=1,w=F,N=-1;while(L>0&&w<B.length){W.lastIndex=w,H.lastIndex=w;let A=W.exec(B),E=H.exec(B),C=A?A.index:1/0,y=E?E.index:1/0;if(C<y)L++,w=C+A[0].length;else if(y<1/0){if(L--,L===0){N=y;break}w=y+E[0].length}else break}if(N===-1){console.warn(`[stx] @${z} directive at position ${O} has no matching @${K} \u2014 the block was skipped.`);break}let R=B.substring(F,N),M=-1,T=0,D=0;while(D<R.length){let A=R.indexOf("@",D);if(A===-1)break;let E=R.substring(A);if(U.test(E)){T++,D=A+1;continue}if(j.test(E)){T--,D=A+1;continue}if(T===0&&/^@else(?![a-z])/.test(E)){M=A;break}D=A+1}let I;if(M!==-1){let A=R.slice(0,M),E=R.slice(M+5);I=q?A:E}else I=q?R:"";let k=`@${K}`.length;B=B.substring(0,O)+I+B.substring(N+k),V=!0}return B}return X=Q(X,"env","endenv",!1),X=Q(X,"production","endproduction",Y==="production"),X=Q(X,"development","enddevelopment",Y==="development"),X=Q(X,"staging","endstaging",Y==="staging"),X=Q(X,"testing","endtesting",Y==="testing"),X}var u5=new WeakMap;function e7($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function F1($,Z){if(!$)return Z?.nonceGenerator?.()??e7();let J=u5.get($);if(!J)J=Z?.nonceGenerator?.()??e7(),u5.set($,J);return J}function BU($){u5.delete($)}function $4($,Z){let J=[];for(let[X,Y]of Object.entries($)){if(Y===void 0||Y===null)continue;if(typeof Y==="boolean"){if(Y)J.push(X);continue}if(Array.isArray(Y)){let Q=[...Y];if(Z&&(X==="script-src"||X==="style-src"))Q=Q.filter((G)=>!G.startsWith("'nonce-")),Q.push(`'nonce-${Z}'`);if(Q.length>0)J.push(`${X} ${Q.join(" ")}`)}}return J.join("; ")}function d5($,Z){return`<meta http-equiv="Content-Security-Policy" content="${$4($,Z).replace(/&/g,"&").replace(/"/g,""")}">`}var EY={"default-src":["'self'"],"script-src":["'self'","'strict-dynamic'"],"style-src":["'self'"],"img-src":["'self'","data:","https:"],"font-src":["'self'","https:","data:"],"connect-src":["'self'"],"media-src":["'self'"],"object-src":["'none'"],"frame-src":["'none'"],"base-uri":["'self'"],"form-action":["'self'"],"frame-ancestors":["'self'"],"upgrade-insecure-requests":!0},m5={"default-src":["'self'"],"script-src":["'self'"],"style-src":["'self'","'unsafe-inline'"],"img-src":["'self'","data:","https:"],"font-src":["'self'","https:","data:"],"connect-src":["'self'","https:"],"media-src":["'self'"],"object-src":["'none'"],"frame-src":["'self'"],"base-uri":["'self'"],"form-action":["'self'"],"upgrade-insecure-requests":!0},bY={"default-src":["'self'"],"script-src":["'self'","'unsafe-inline'"],"style-src":["'self'","'unsafe-inline'"],"img-src":["'self'","data:","https:","http:"],"font-src":["'self'","https:","http:","data:"],"connect-src":["'self'","https:","http:","ws:","wss:"],"media-src":["'self'","https:","http:"],"object-src":["'none'"],"frame-src":["'self'","https:"],"base-uri":["'self'"]},yY={"default-src":["'none'"],"frame-ancestors":["'none'"]};function VU($){return{enabled:!0,directives:{strict:EY,moderate:m5,relaxed:bY,api:yY}[$]||m5,useNonce:$==="strict",addMetaTag:!0}}function LU($,Z){let J={...$};for(let[X,Y]of Object.entries(Z)){let Q=X,G=J[Q];if(Y===void 0||Y===null)continue;if(typeof Y==="boolean")J[Q]=G||Y;else if(Array.isArray(Y)){let z=Array.isArray(G)?G:[],K=[...new Set([...z,...Y])];J[Q]=K}}return J}function Z4($,Z,J){if(!Z.enabled||!Z.addMetaTag)return $;if($.includes('http-equiv="Content-Security-Policy"'))return $;if(!$.includes("<head>")&&!$.includes("<head "))return $;let X=Z.useNonce?F1(J,Z):void 0,Y=d5(Z.directives,X);return $.replace(/<head([^>]*)>/,`<head$1>
|
|
3171
|
+
${Y}`)}function J4($,Z){let J=$;return J=J.replace(/<script(?![^>]*\ssrc=)([^>]*)>/gi,(X,Y)=>{if(Y.includes("nonce="))return X;return`<script nonce="${Z}"${Y}>`}),J=J.replace(/<style([^>]*)>/gi,(X,Y)=>{if(Y.includes("nonce="))return X;return`<style nonce="${Z}"${Y}>`}),J}function X4($,Z,J,X){let Y=$,Q=X.csp;if(Y=Y.replace(/@csp\b/g,()=>{if(!Q?.enabled||!Q.directives)return"<!-- CSP not configured -->";let G=Q.useNonce?F1(Z,Q):void 0;return d5(Q.directives,G)}),Y=Y.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return F1(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=F1(Z,Q);return Y}var CY={name:"csp",handler:($,Z,J,X)=>{let Q=J.__stx_options?.csp;if(!Q?.enabled||!Q.directives)return"<!-- CSP not configured -->";let G=Q.useNonce?F1(J,Q):void 0;return d5(Q.directives,G)},hasEndTag:!1,description:"Insert Content-Security-Policy meta tag"},SY={name:"cspNonce",handler:($,Z,J,X)=>{let Q=J.__stx_options?.csp;if(!Q?.enabled||!Q.useNonce)return"";return F1(J,Q)},hasEndTag:!1,description:"Output the current CSP nonce value"};function OU(){return[CY,SY]}function _U($){let Z=[];if($["script-src"]?.includes("'unsafe-inline'"))Z.push("CSP: Using unsafe-inline in script-src significantly reduces XSS protection");if($["script-src"]?.includes("'unsafe-eval'"))Z.push("CSP: Using unsafe-eval in script-src allows eval() and related functions");if(!$["default-src"])Z.push("CSP: No default-src specified. Recommend adding default-src as a fallback");if($["default-src"]?.includes("*"))Z.push("CSP: Using * in default-src provides minimal protection");if(!$["object-src"]&&!$["default-src"]?.includes("'none'"))Z.push("CSP: Consider adding object-src: none to block plugins");if(!$["base-uri"])Z.push("CSP: Consider adding base-uri to prevent base tag injection attacks");for(let[J,X]of Object.entries($))if(Array.isArray(X)&&X.includes("http:"))Z.push(`CSP: Using http: in ${J} allows insecure resources`);return Z}function PY($=!1){return $?"Content-Security-Policy-Report-Only":"Content-Security-Policy"}function FU($,Z){if(!$.enabled)return{};let J=$.useNonce?F1(Z,$):void 0,X=$4($.directives,J);return{[PY($.reportOnly)]:X}}var wU={enabled:!1,reportOnly:!1,directives:m5,useNonce:!1,addMetaTag:!0};import vY from"crypto";var xY=40,Y4="_token",l5=null;function fY($=xY){let Z=vY.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return l5=Z,Z}function gY(){if(!l5)fY();return l5}function hY($=Y4){let Z=gY();return`<input type="hidden" name="${$}" value="${Z}">`}function Q4($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,J,X)=>{return hY(X||Y4)})}async function K4($,Z,J,X){if(!X.customDirectives||X.customDirectives.length===0)return $;let Y=$;for(let Q of X.customDirectives){if(!Q.name||typeof Q.handler!=="function"){if(X.debug)console.warn("Invalid custom directive:",Q);continue}if(Q.hasEndTag)Y=await uY(Y,Q,Z,J,X);else Y=await mY(Y,Q,Z,J,X)}return Y}async function uY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=`@${Q}`,K=`@end${Q}`,q=$,W=w1(`${z}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${K}`,"g"),H=[],U=W.exec(q);while(U!==null){let[j,B="",V=""]=U,_=U.index||0;try{let O=B?q4(Z,B):[],F=V.trim(),L=await G(F,O,J,X);H.push({original:j,processed:L,startIndex:_})}catch(O){let F=O instanceof Error?O.message:String(O);if(Y.debug)console.error(`Error processing custom directive @${Q}:`,O);H.push({original:j,processed:D0("CustomDirective",`Error in @${Q}${B?`(${B})`:""}: ${F}`,N0.EVALUATION_ERROR),startIndex:_})}U=W.exec(q)}for(let j=H.length-1;j>=0;j--){let{original:B,processed:V}=H[j];q=q.replace(B,V)}return q}async function mY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=$,K=[],q=[];if(Z.rawParams){for(let U of G4(z,w1(`(?<![\\w$@])@${Q}\\s*\\(`,"g")))if(U.end!==-1)q.push({fullMatch:U.call,paramString:U.args,startIndex:U.start})}else{let U=w1(`@${Q}\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\)`,"g");U.lastIndex=0;let j=U.exec(z);while(j!==null)q.push({fullMatch:j[0],paramString:j[1]??"",startIndex:j.index||0}),j=U.exec(z)}for(let{fullMatch:U,paramString:j,startIndex:B}of q)try{let V=q4(Z,j),_=await G("",V,J,X);K.push({original:U,processed:_,startIndex:B})}catch(V){let _=V instanceof Error?V.message:String(V);if(Y.debug)console.error(`Error processing custom directive @${Q}:`,V);K.push({original:U,processed:D0("CustomDirective",`Error in @${Q}(${j}): ${_}`,N0.EVALUATION_ERROR),startIndex:B})}let W=w1(`@${Q}(?!\\w)(?!\\s*\\()`,"g"),H=W.exec(z);while(H!==null){let[U]=H,j=H.index||0;try{let B=await G("",[],J,X);K.push({original:U,processed:B,startIndex:j})}catch(B){let V=B instanceof Error?B.message:String(B);if(Y.debug)console.error(`Error processing custom directive @${Q}:`,B);K.push({original:U,processed:D0("CustomDirective",`Error in @${Q}: ${V}`,N0.EVALUATION_ERROR),startIndex:j})}H=W.exec(z)}for(let U=K.length-1;U>=0;U--){let{original:j,processed:B}=K[U];z=z.replace(j,B)}return z}function q4($,Z){return $.rawParams?z4(Z):dY(Z)}function dY($){if(!$.trim())return[];let Z=[],J="",X=!1,Y="";for(let Q=0;Q<$.length;Q++){let G=$[Q];if((G==='"'||G==="'")&&(Q===0||$[Q-1]!=="\\"))if(!X)X=!0,Y=G;else if(G===Y)X=!1;else J+=G;else if(G===","&&!X)Z.push(J.trim()),J="";else J+=G}if(J.trim())Z.push(J.trim());return Z.map((Q)=>{let G=Q.trim();if(G.startsWith('"')&&G.endsWith('"')||G.startsWith("'")&&G.endsWith("'"))return G.substring(1,G.length-1);return G})}var W4=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,H4=/^[A-Za-z_$][\w$]*$/,lY=new Set(["light","dark","system"]);function R1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function cY($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,J=Z.appearance,X=Z.colorMode;if(R1(Z.storageKey,"storageKey"),!J||typeof J!=="object"||Array.isArray(J))throw Error("@appearanceBootstrap appearance must be an object");if(!X||typeof X!=="object"||Array.isArray(X))throw Error("@appearanceBootstrap colorMode must be an object");if(R1(J.key,"appearance.key"),R1(J.attribute,"appearance.attribute"),R1(J.default,"appearance.default"),R1(X.key,"colorMode.key"),R1(X.attribute,"colorMode.attribute"),R1(X.default,"colorMode.default"),!H4.test(J.key)||!H4.test(X.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!W4.test(J.attribute)||!W4.test(X.attribute))throw Error("@appearanceBootstrap attributes must be lowercase data attribute names");if(!Array.isArray(J.allowed)||J.allowed.length===0||J.allowed.some((Y)=>typeof Y!=="string"||Y.length===0))throw Error("@appearanceBootstrap appearance.allowed must contain one or more strings");if(!J.allowed.includes(J.default))throw Error("@appearanceBootstrap appearance.default must be in appearance.allowed");if(!lY.has(X.default))throw Error("@appearanceBootstrap colorMode.default must be light, dark, or system");return{storageKey:Z.storageKey,appearance:{key:J.key,attribute:J.attribute,allowed:[...new Set(J.allowed)],default:J.default},colorMode:{key:X.key,attribute:X.attribute,default:X.default}}}function pY($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function iY($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${pY($)};const root=document.documentElement;const MODES=["light","dark","system"];function read(){let stored={};try{const raw=localStorage.getItem(config.storageKey);const parsed=raw?JSON.parse(raw):{};if(parsed&&typeof parsed==="object"&&!Array.isArray(parsed))stored=parsed}catch{}return stored}function write(stored){try{localStorage.setItem(config.storageKey,JSON.stringify(stored))}catch{}}function resolve(){const stored=read();return{appearance:config.appearance.allowed.includes(stored[config.appearance.key])?stored[config.appearance.key]:config.appearance.default,colorMode:MODES.includes(stored[config.colorMode.key])?stored[config.colorMode.key]:config.colorMode.default}}function prefersDark(){try{return matchMedia("(prefers-color-scheme: dark)").matches}catch{return false}}function apply(){const state=resolve();const dark=state.colorMode==="dark"||(state.colorMode==="system"&&prefersDark());root.setAttribute("data-"+config.appearance.attribute,state.appearance);root.setAttribute("data-"+config.colorMode.attribute,state.colorMode);root.classList.toggle("dark",dark);root.dataset.theme=dark?"dark":"light";state.dark=dark;try{window.dispatchEvent(new CustomEvent("stx:appearance",{detail:state}))}catch{}return state}function store(key,allowed,value){if(allowed.includes(value)){const stored=read();stored[key]=value;write(stored)}return apply()}window.__stxAppearance={config:config,read:read,resolve:resolve,apply:apply,setColorMode:function(mode){return store(config.colorMode.key,MODES,mode)},setAppearance:function(name){return store(config.appearance.key,config.appearance.allowed,name)},watchSystem:function(){try{matchMedia("(prefers-color-scheme: dark)").addEventListener("change",function(){if(resolve().colorMode==="system")apply()})}catch{}}};apply()}());</script>`}function nY($,Z){let J=1,X=null,Y=!1;for(let Q=Z+1;Q<$.length;Q++){let G=$[Q];if(Y){Y=!1;continue}if(X){if(G==="\\")Y=!0;else if(G===X)X=null;continue}if(G==='"'||G==="'"||G==="`"){X=G;continue}if(G==="(")J++;else if(G===")"&&--J===0)return Q}return-1}function U4($,Z){let J=$,X=/@appearanceBootstrap\s*\(/g,Y;while((Y=X.exec(J))!==null){let Q=Y.index+Y[0].length-1,G=nY(J,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let z=J.slice(Q+1,G).trim(),K=Y0(`(${z})`,Z),q=iY(cY(K));J=J.slice(0,Y.index)+q+J.slice(G+1),X.lastIndex=Y.index+q.length}return J}import sY from"crypto";function A0($){return String($??"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var p5={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"};function oY($){return{...p5,...$.forms?.classes}}function K9($,Z,J,X){let Y=$||Z;return J?`${Y} ${X}`:Y}function g0($){return String($).replace(/\[\]$/,"").replace(/[^\w.:-]+/g,"-").replace(/^-+|-+$/g,"")}function h1($,Z){if(/\bid\s*=/i.test($))return"";return` id="${A0(Z)}"`}function c5($,Z,J){if(!Z)return"";let X="";if(!/\baria-invalid\s*=/i.test(J))X+=' aria-invalid="true"';if(!/\baria-describedby\s*=/i.test(J))X+=` aria-describedby="${A0(`${g0($)}-error`)}"`;return X}function rY(){return sY.randomUUID()}function CU($,Z,J,X){let Y=oY(X),Q=$;return Q=tY(Q,Z),Q=R2(Q,Z),Q=i5(Q,Z,Y),Q=n5(Q,Z,Y),Q}function R2($,Z){let J=$;return J=J.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let X=rY();Z.csrf={token:X}}if(Z.csrf.field)return Z.csrf.field;if(Z.csrf.token)return`<input type="hidden" name="_token" value="${A0(Z.csrf.token)}">`;return'<input type="hidden" name="_token" value="">'}),J=J.replace(/@method\(['"]([^'"]+)['"]\)/g,(X,Y)=>{let Q=Y.toUpperCase();if(Y&&!["GET","POST"].includes(Q))return`<input type="hidden" name="_method" value="${A0(Q)}">`;return X}),J}function i5($,Z,J=p5){let X=$;return X=X.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(Y,Q,G,z,K,q="")=>{let W=Q||G||"POST",H=z||K||"",U=q1(q),j=W.toUpperCase(),B=["GET","POST"].includes(j)?j:"POST",V=`<form method="${A0(B)}" action="${A0(H)}"${U?` ${U}`:""}>`;if(V+=`
|
|
3172
|
+
${R2("@csrf",Z)}`,!["GET","POST"].includes(j))V+=`
|
|
3173
|
+
${R2(`@method('${j}')`,Z)}`;return V}),X=X.replace(/@endform/g,"</form>"),X=X.replace(/@input\(\s*(?:'([^']+)'|"([^"]+)")\s*(?:,\s*(?:(?:'([^']*)'|"([^"]*)")\s*)?)?(?:,\s*\{([^}]+)\})?\s*\)/g,(Y,Q,G,z,K,q="")=>{let W=Q||G||"",H=z||K||"",U=q1(q),j=F2(W,Z),B=j!==void 0&&j!==null?j:H||"",V=U.match(/type=['"]([^'"]+)['"]/i),_=V?V[1]:"text",O=w2(W,Z),F=U.match(/class=['"]([^'"]+)['"]/i),L=K9(F?F[1]:"",J.input,O,J.inputError),w=U.replace(/class=['"][^'"]+['"]/i,"");return w=w.replace(/type=['"][^'"]+['"]/i,""),`<input type="${A0(_)}" name="${A0(W)}"${h1(U,g0(W))} value="${A0(B)}" class="${L}"${c5(W,O,U)}${w?` ${w}`:""}>`}),X=X.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(Y,Q,G="",z="")=>{let K=q1(G),q=F2(Q,Z)||z.trim(),W=w2(Q,Z),H=K.match(/class=['"]([^'"]+)['"]/i),U=K9(H?H[1]:"",J.input,W,J.inputError),j=K.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${A0(Q)}"${h1(K,g0(Q))} class="${U}"${c5(Q,W,K)}${j?` ${j}`:""}>${A0(q)}</textarea>`}),X=X.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(Y,Q,G="",z)=>{let K=q1(G),q=F2(Q,Z),W=w2(Q,Z),H=K.match(/class=['"]([^'"]+)['"]/i),U=K9(H?H[1]:"",J.input,W,J.inputError),j=K.replace(/class=['"][^'"]+['"]/i,""),B=z;if(q!==void 0)B=z.replace(/(<option[^>]*value=['"]([^'"]+)['"][^>]*>)/gi,(V,_,O)=>{if((Array.isArray(q)?q.some((L)=>String(L)===O):String(q)===O)&&!_.includes("selected"))return _.replace(/(<option)/,"$1 selected");return V});return`<select name="${A0(Q)}"${h1(K,g0(Q))} class="${U}"${c5(Q,W,K)}${j?` ${j}`:""}>${B}</select>`}),X=X.replace(/@checkbox\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?(?:,\s*\{([^}]+)\})?\)/g,(Y,Q,G,z="")=>{let K=G===void 0?"1":G,q=G===void 0?g0(Q):`${g0(Q)}-${g0(K)}`,W=q1(z),H=F2(Q,Z),U=H!==void 0&&(Array.isArray(H)?H.some((_)=>String(_)===K):H===!0||String(H)===K),j=W.match(/class=['"]([^'"]+)['"]/i),B=j?j[1]:J.checkInput,V=W.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${A0(Q)}"${h1(W,q)} value="${A0(K)}" class="${B}"${U?" checked":""}${V?` ${V}`:""}>`}),X=X.replace(/@radio\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(Y,Q,G,z="")=>{let K=q1(z),q=F2(Q,Z),W=q!==void 0&&q===G,H=K.match(/class=['"]([^'"]+)['"]/i),U=H?H[1]:J.checkInput,j=K.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${A0(Q)}"${h1(K,`${g0(Q)}-${g0(G)}`)} value="${A0(G)}" class="${U}"${W?" checked":""}${j?` ${j}`:""}>`}),X=X.replace(/@file\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(Y,Q,G="")=>{let z=q1(G),K=z.match(/accept=['"]([^'"]+)['"]/i),q=K?K[1]:"",W=z.includes("multiple"),H=w2(Q,Z),U=z.match(/class=['"]([^'"]+)['"]/i),j=K9(U?U[1]:"",J.input,H,J.inputError),B=z.replace(/class=['"][^'"]+['"]/gi,"").replace(/accept=['"][^'"]+['"]/gi,"").replace(/\bmultiple\b/gi,"").trim(),V=[`<input type="file" name="${A0(Q)}"${h1(z,g0(Q))}`,`class="${j}"`];if(q)V.push(`accept="${A0(q)}"`);if(W)V.push("multiple");if(B)V.push(B);return`${V.join(" ")}>`}),X=X.replace(/@label\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endlabel/g,(Y,Q,G="",z)=>{let K=q1(G),q=K.match(/class=['"]([^'"]+)['"]/i),W=q?q[1]:J.label,H=K.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${A0(g0(Q))}" class="${W}"${H?` ${H}`:""}>${z}</label>`}),X}function n5($,Z,J=p5){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(X,Y,Q)=>{try{if(w2(Y,Z)){let G=Q.replace(/\{\{([^}]+)\}\}/g,(z,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return j4(Y,Z);if(K.trim().includes("errors.first")||K.trim().includes("$errors.first")){if(typeof Z.errors?.first==="function")return Z.errors.first(Y);return j4(Y,Z)}let q=K.trim();if(j0(q)){let W=Y0(q,Z);return W!==void 0?String(W):q}return q}catch{return K}});return`<div id="${A0(`${g0(Y)}-error`)}" role="alert">${G}</div>`}return""}catch(G){return console.error("Error processing @error directive:",G),X}})}function w2($,Z){if(!Z.errors)return!1;if(typeof Z.errors.has==="function")return Z.errors.has($);if(typeof Z.errors==="object")return Object.prototype.hasOwnProperty.call(Z.errors,$);return!1}function j4($,Z){if(!Z.errors)return"";if(typeof Z.errors.get==="function")return Z.errors.get($);if(typeof Z.errors==="object"&&Object.prototype.hasOwnProperty.call(Z.errors,$)){let J=Z.errors[$];return Array.isArray(J)?J[0]:String(J)}return""}function F2($,Z){let J;if(Z.old&&typeof Z.old==="function")return Z.old($);if(Z.old&&typeof Z.old==="object")return Z.old[$];if($.endsWith("[]")){let X=$.slice(0,-2);if(J=Z[X],J!==void 0)return J}return Z[$]}function q1($){if(!$.trim())return"";let Z=[],J=$.trim(),X=/([\w-]+)\s*:\s*(['"]?)([^,'"]*)\2(?:\s*,\s*|\s*$)/g,Y;while((Y=X.exec(J))!==null){let[,Q,,G]=Y;Z.push(`${Q}="${G.trim()}"`)}return Z.join(" ")}var B4={required:($,Z,J)=>{if($===void 0||$===null||$===""||Array.isArray($)&&$.length===0)return`The ${J} field is required.`;return null},email:($,Z,J)=>{if(!$)return null;if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String($)))return`The ${J} field must be a valid email address.`;return null},min:($,Z,J)=>{if(!$)return null;let X=Number(Z[0]);if(typeof $==="string"&&$.length<X)return`The ${J} field must be at least ${X} characters.`;if(typeof $==="number"&&$<X)return`The ${J} field must be at least ${X}.`;if(Array.isArray($)&&$.length<X)return`The ${J} field must have at least ${X} items.`;return null},max:($,Z,J)=>{if(!$)return null;let X=Number(Z[0]);if(typeof $==="string"&&$.length>X)return`The ${J} field must not exceed ${X} characters.`;if(typeof $==="number"&&$>X)return`The ${J} field must not exceed ${X}.`;if(Array.isArray($)&&$.length>X)return`The ${J} field must not have more than ${X} items.`;return null},confirmed:($,Z,J)=>{if(Z[0]!==void 0&&$!==Z[0])return`The ${J} confirmation does not match.`;return null},numeric:($,Z,J)=>{if(!$)return null;if(Number.isNaN(Number($)))return`The ${J} field must be a number.`;return null},integer:($,Z,J)=>{if(!$)return null;if(!Number.isInteger(Number($)))return`The ${J} field must be an integer.`;return null},alpha:($,Z,J)=>{if(!$)return null;if(!/^[a-z]+$/i.test(String($)))return`The ${J} field must only contain letters.`;return null},alphanumeric:($,Z,J)=>{if(!$)return null;if(!/^[a-z0-9]+$/i.test(String($)))return`The ${J} field must only contain letters and numbers.`;return null},url:($,Z,J)=>{if(!$)return null;try{return new URL(String($))?null:null}catch{return`The ${J} field must be a valid URL.`}},regex:($,Z,J)=>{if(!$)return null;try{if(!new RegExp(Z[0]).test(String($)))return`The ${J} field format is invalid.`;return null}catch{return`The ${J} field has an invalid validation pattern.`}},in:($,Z,J)=>{if(!$)return null;if(!Z.includes(String($)))return`The ${J} field must be one of: ${Z.join(", ")}.`;return null},notIn:($,Z,J)=>{if(!$)return null;if(Z.includes(String($)))return`The ${J} field must not be: ${Z.join(", ")}.`;return null},date:($,Z,J)=>{if(!$)return null;let X=new Date($);if(Number.isNaN(X.getTime()))return`The ${J} field must be a valid date.`;return null},before:($,Z,J)=>{if(!$)return null;let X=new Date($),Y=new Date(Z[0]);if(X>=Y)return`The ${J} field must be before ${Z[0]}.`;return null},after:($,Z,J)=>{if(!$)return null;let X=new Date($),Y=new Date(Z[0]);if(X<=Y)return`The ${J} field must be after ${Z[0]}.`;return null}};function SU($,Z){B4[$]=Z}function s5($){let[Z,...J]=$.split(":"),X=J.length>0?J.join(":").split(","):[];return{name:Z.trim(),params:X}}function aY($,Z,J,X={}){let Y=[],Q=J.split("|").map((G)=>G.trim()).filter(Boolean);for(let G of Q){let z=s5(G),K=B4[z.name];if(!K){console.warn(`Unknown validation rule: ${z.name}`);continue}if(z.name==="confirmed"){let W=`${$}_confirmation`;z.params=[X[W]]}let q=K(Z,z.params||[],$);if(q)Y.push(z.message||q)}return{field:$,valid:Y.length===0,errors:Y}}function PU($,Z){let J={};for(let[X,Y]of Object.entries(Z)){let Q=aY(X,$[X],Y,$);if(!Q.valid)J[X]=Q.errors}return J}function tY($,Z){return $.replace(/@validate\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]*)\})?\s*\)/g,(J,X,Y,Q)=>{let G=Y.split("|").map((K)=>K.trim()),z=[];for(let K of G){let q=s5(K);switch(q.name){case"required":z.push("required");break;case"email":z.push('type="email"');break;case"url":z.push('type="url"');break;case"numeric":case"integer":if(z.push('type="number"'),q.name==="integer")z.push('step="1"');break;case"min":if(q.params?.[0])z.push(`minlength="${q.params[0]}"`);break;case"max":if(q.params?.[0])z.push(`maxlength="${q.params[0]}"`);break;case"regex":if(q.params?.[0])z.push(`pattern="${q.params[0]}"`);break}}return`<!-- @validate:${X}:${Y} -->${z.length>0?`<!-- attrs:${z.join(" ")} -->`:""}`})}var V4={required:{name:"required",validate:($)=>{if($===null||$===void 0||$==="")return"This field is required";if(Array.isArray($)&&$.length===0)return"This field is required";return!0},toHtml5:()=>["required"],message:"This field is required"},email:{name:"email",validate:($)=>{if(!$)return!0;return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String($))||"Please enter a valid email address"},toHtml5:()=>['type="email"'],message:"Please enter a valid email address"},url:{name:"url",validate:($)=>{if(!$)return!0;try{return new URL(String($)).protocol.startsWith("http")||"Please enter a valid URL"}catch{return"Please enter a valid URL"}},toHtml5:()=>['type="url"'],message:"Please enter a valid URL"},numeric:{name:"numeric",validate:($)=>{if(!$)return!0;return!Number.isNaN(Number($))||"Please enter a number"},toHtml5:()=>['type="number"'],message:"Please enter a number"},integer:{name:"integer",validate:($)=>{if(!$)return!0;let Z=Number($);return Number.isInteger(Z)||"Please enter a whole number"},toHtml5:()=>['type="number"','step="1"'],message:"Please enter a whole number"},alpha:{name:"alpha",validate:($)=>{if(!$)return!0;return/^[a-z]+$/i.test(String($))||"Please enter only letters"},toHtml5:()=>['pattern="[a-zA-Z]+"'],message:"Please enter only letters"},alphanumeric:{name:"alphanumeric",validate:($)=>{if(!$)return!0;return/^[a-z0-9]+$/i.test(String($))||"Please enter only letters and numbers"},toHtml5:()=>['pattern="[a-zA-Z0-9]+"'],message:"Please enter only letters and numbers"},min:{name:"min",validate:($,Z)=>{if(!$)return!0;let J=Number(Z[0]);if(typeof $==="string")return $.length>=J||`Must be at least ${J} characters`;if(typeof $==="number")return $>=J||`Must be at least ${J}`;if(Array.isArray($))return $.length>=J||`Must have at least ${J} items`;return!0},toHtml5:($)=>[`minlength="${$[0]}"`,`min="${$[0]}"`],message:"Must be at least {{param}} characters"},max:{name:"max",validate:($,Z)=>{if(!$)return!0;let J=Number(Z[0]);if(typeof $==="string")return $.length<=J||`Must be no more than ${J} characters`;if(typeof $==="number")return $<=J||`Must be no more than ${J}`;if(Array.isArray($))return $.length<=J||`Must have no more than ${J} items`;return!0},toHtml5:($)=>[`maxlength="${$[0]}"`,`max="${$[0]}"`],message:"Must be no more than {{param}} characters"},between:{name:"between",validate:($,Z)=>{if(!$)return!0;let[J,X]=Z.map(Number);if(typeof $==="string")return $.length>=J&&$.length<=X||`Must be between ${J} and ${X} characters`;if(typeof $==="number")return $>=J&&$<=X||`Must be between ${J} and ${X}`;return!0},toHtml5:($)=>[`minlength="${$[0]}"`,`maxlength="${$[1]}"`],message:"Must be between {{min}} and {{max}}"},confirmed:{name:"confirmed",validate:($,Z,J)=>{let X=Object.keys(J);for(let Y of X)if(Y.endsWith("_confirmation")&&J[Y]===$)return!0;return"Confirmation does not match"},message:"Confirmation does not match"},in:{name:"in",validate:($,Z)=>{if(!$)return!0;return Z.includes(String($))||`Must be one of: ${Z.join(", ")}`},message:"Must be one of: {{values}}"},notIn:{name:"notIn",validate:($,Z)=>{if(!$)return!0;return!Z.includes(String($))||`Must not be: ${Z.join(", ")}`},message:"Must not be: {{values}}"},regex:{name:"regex",validate:($,Z)=>{if(!$)return!0;try{return new RegExp(Z[0]).test(String($))||"Invalid format"}catch{return"Invalid format"}},toHtml5:($)=>[`pattern="${$[0]}"`],message:"Invalid format"},date:{name:"date",validate:($)=>{if(!$)return!0;let Z=new Date(String($));return!Number.isNaN(Z.getTime())||"Please enter a valid date"},toHtml5:()=>['type="date"'],message:"Please enter a valid date"},before:{name:"before",validate:($,Z)=>{if(!$)return!0;let J=new Date(String($)),X=new Date(Z[0]);return J<X||`Must be before ${Z[0]}`},toHtml5:($)=>[`max="${$[0]}"`],message:"Must be before {{date}}"},after:{name:"after",validate:($,Z)=>{if(!$)return!0;let J=new Date(String($)),X=new Date(Z[0]);return J>X||`Must be after ${Z[0]}`},toHtml5:($)=>[`min="${$[0]}"`],message:"Must be after {{date}}"},size:{name:"size",validate:($,Z)=>{if(!$)return!0;let J=Number(Z[0]);if(typeof $==="string")return $.length===J||`Must be exactly ${J} characters`;if(Array.isArray($))return $.length===J||`Must have exactly ${J} items`;return!0},message:"Must be exactly {{size}}"},phone:{name:"phone",validate:($)=>{if(!$)return!0;return/^\+?\(?\d{1,4}\)?[-\s./\d]*$/.test(String($))||"Please enter a valid phone number"},toHtml5:()=>['type="tel"','pattern="\\+?\\(?\\d{1,4}\\)?[-\\s./\\d]*"'],message:"Please enter a valid phone number"}};function vU($){V4[$.name]=$}function eY($,Z,J={}){let X=[],Y=Z.split("|").map((Q)=>Q.trim());for(let Q of Y){let G=s5(Q),z=V4[G.name];if(!z){console.warn(`Unknown validation rule: ${G.name}`);continue}let K=z.validate($,G.params||[],J);if(K!==!0)X.push(K)}return{valid:X.length===0,errors:X}}function xU($,Z){let J={},X=!0;for(let[Y,Q]of Object.entries(Z)){let G=eY($[Y],Q,$);if(!G.valid)X=!1,J[Y]=G.errors}return{valid:X,errors:J}}function fU($,Z){let J=JSON.stringify(Z);return`
|
|
3174
3174
|
<script>
|
|
3175
3175
|
(function() {
|
|
3176
3176
|
const form = document.getElementById('${$}');
|
|
@@ -3222,19 +3222,19 @@ catch { return 'Please enter a valid URL'; } },
|
|
|
3222
3222
|
}
|
|
3223
3223
|
});
|
|
3224
3224
|
})();
|
|
3225
|
-
</script>`.trim()}var R2=/<\/?template\b[^>]*>/gi,iY=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i;function nY($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return iY.test(Z)}function q9($){R2.lastIndex=0;let Z;while((Z=R2.exec($))!==null){if(Z[0].startsWith("</")||nY(Z[0]))continue;let J=Z.index,X=R2.lastIndex,Y=1,Q;while((Q=R2.exec($))!==null)if(Q[0].startsWith("</")){if(Y--,Y===0){let G=Q.index;return{start:J,openEnd:X,closeStart:G,end:R2.lastIndex,content:$.slice(X,G)}}}else Y++;return null}return null}import z0 from"path";import{existsSync as TQ}from"fs";import W9 from"fs";import B0 from"path";var H4=new Map;function U9($,Z=!0){let J=H4.get($);if(Z&&J)return J;let X=new Map,Y=[B0.join($,"src"),B0.join($,"dist"),$];function Q(G,z){if(z>6)return;let K;try{K=W9.readdirSync(G,{withFileTypes:!0})}catch{return}for(let q of K){let W=B0.join(G,q.name);if(q.isDirectory()){if(q.name==="node_modules"||q.name.startsWith("."))continue;Q(W,z+1)}else if(q.isFile()&&q.name.endsWith(".stx")){let U=q.name.slice(0,-4);if(!X.has(U))X.set(U,W);let H=U.toLowerCase();if(!X.has(H))X.set(H,W);let j=U.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(!X.has(j))X.set(j,W)}}}for(let G of Y)if(Q(G,0),X.size>0)break;if(Z)H4.set($,X);return X}function H9($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let J=Z;while(!0){let X=B0.join(J,"node_modules",$);try{if(W9.statSync(X).isDirectory())return X}catch{}let Y=B0.dirname(J);if(Y===J)return null;J=Y}}function j9($,Z,J={}){return[B0.resolve(B0.dirname(Z),`${$}.stx`),B0.resolve(B0.dirname(Z),$),B0.resolve(J.componentsDir||"components",`${$}.stx`),B0.resolve(J.componentsDir||"components",$),$.endsWith(".stx")?$:`${$}.stx`]}function j4($){let Z=$.endsWith(".stx")?$.slice(0,-4):$,J=Z.split("-").map((Y)=>Y.charAt(0).toUpperCase()+Y.slice(1)).join(""),X=Z.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();return[Z,J,X]}function s5($,Z){let[J,X,Y]=j4($);for(let Q of[J,J.toLowerCase(),X,Y]){let G=Z?.__importedComponents?.get(Q);if(G!==void 0)return G}}function*o5($,Z,J={},X){let Y=j4($);if(Y[0].startsWith("./")||Y[0].startsWith("../")){yield B0.resolve(B0.dirname(Z),`${Y[0]}.stx`);return}let Q=[...new Set(Y.map((K)=>`${K}.stx`))],G=J.projectRoot||process.cwd(),z=[...X?.__originalFilePath?[B0.join(B0.dirname(X.__originalFilePath),"components")]:[],...J.componentsDir?[J.componentsDir]:[],B0.join(B0.dirname(Z),"components"),B0.resolve(G,"src/components"),B0.resolve(G,"components"),...import.meta.dir?[B0.resolve(import.meta.dir,"components")]:[]];for(let K of new Set(z)){for(let q of Q)yield B0.join(K,q);try{for(let q of W9.readdirSync(K,{withFileTypes:!0}))if(q.isDirectory())for(let W of Q)yield B0.join(K,q.name,W)}catch{}}}function B4($,Z,J={},X){let Y=s5($,X);if(Y!==void 0)return Y;for(let Q of o5($,Z,J,X))try{if(W9.statSync(Q,{throwIfNoEntry:!1})?.isFile())return Q}catch{}return null}class V4{builtins=new Map;registerBuiltin($){this.builtins.set($.name.toLowerCase(),$);for(let Z of $.aliases)this.builtins.set(Z.toLowerCase(),$)}isBuiltin($){return this.builtins.has($.toLowerCase())}getBuiltin($){return this.builtins.get($.toLowerCase())??null}async resolveFile($,Z,J,X){let Y=s5($,X);if(Y!==void 0)return Y;for(let Q of o5($,Z,J,X))if(await e(Q))return Q;return null}}var h1=new V4;function I0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var R1="\x00stx-boolean-attribute";function r5($){return $.indexOf("\x00")===-1?$:$.replace(/\0/g,"")}function u1($,Z){let J=[];for(let[X,Y]of Object.entries($.static)){if(Z.has(X))continue;let Q=$.staticNames?.[X]??X;if(typeof Y==="boolean"){if(Y)J.push(I0(Q));continue}if(Y===R1){J.push(I0(Q));continue}J.push(`${I0(Q)}="${I0(r5(String(Y)))}"`)}return J}function m1($,Z){let J=[];for(let[X,Y]of Object.entries($.serverDynamic??{})){if(Z.has(X))continue;if(Y===null||Y===void 0||Y===!1)continue;let Q=$.serverDynamicNames?.[X]??X;if(Y===!0){J.push(I0(Q));continue}if(typeof Y==="object")continue;J.push(`${I0(Q)}="${I0(r5(String(Y)))}"`)}return J}function d1($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function sY($){if($.clientReactive.to)return{value:$.clientReactive.to,reactive:!0};if($.serverDynamic.to!==void 0)return{value:String($.serverDynamic.to),reactive:!1};if(typeof $.static.to==="string")return{value:$.static.to,reactive:!1};return{value:"#",reactive:!1}}var a5={name:"StxLink",aliases:["stx-link"],render($,Z,J){let X=sY($),Y=(typeof $.static.class==="string"?$.static.class:"")||(typeof $.static.className==="string"?$.static.className:""),Q=typeof $.static.activeClass==="string"?$.static.activeClass:"active",G=typeof $.static.exactActiveClass==="string"?$.static.exactActiveClass:"exact-active",z=$.static.prefetch===!0||$.static.prefetch==="true"||$.serverDynamic.prefetch===!0,K=[];if(X.reactive)K.push(`:href="${d1(X.value)}"`);else K.push(`href="${d1(Q2(X.value,"navigable"))}"`);if(Y)K.push(`class="${d1(Y)}"`);if(K.push("data-stx-link"),K.push(`data-stx-active-class="${d1(Q)}"`),K.push(`data-stx-exact-active-class="${d1(G)}"`),z)K.push("data-stx-prefetch");let q=typeof $.static.activeMatch==="string"?$.static.activeMatch.trim():"";if(q)K.push(`data-stx-active-match="${d1(q)}"`);let W=new Set(["to","class","className","activeClass","exactActiveClass","activeMatch","prefetch"]);return K.push(...u1($,W)),K.push(...m1($,W)),`<a ${K.join(" ")}>${Z}</a>`}};import l1 from"fs";import t5 from"path";var oY=new Set([".jpg",".jpeg",".png",".webp",".avif"]),i0=new Map,N1=!1;function e5($){if(!$)return;let Z=$.split("?")[0].split("#")[0];return i0.get(Z)}function nH(){return N1}function sH(){i0.clear(),N1=!1}function oH($,Z){i0.set($,Z),N1=!0}function rY($){for(let Z=3;Z<$.length;Z+=4)if($[Z]<255)return!0;return!1}function aY($){let Z=0,J=0,X=0,Y=0;for(let G=0;G<$.length;G+=4)Z+=$[G],J+=$[G+1],X+=$[G+2],Y++;if(Y===0)return"#e5e7eb";let Q=(G)=>Math.round(G/Y).toString(16).padStart(2,"0");return`#${Q(Z)}${Q(J)}${Q(X)}`}function tY($,Z,J,X=4,Y=3){let Q=[];for(let G=0;G<Y;G++)for(let z=0;z<X;z++){let K=Math.floor(z*Z/X),q=Math.max(K+1,Math.floor((z+1)*Z/X)),W=Math.floor(G*J/Y),U=Math.max(W+1,Math.floor((G+1)*J/Y)),H=0,j=0,B=0,V=0;for(let O=W;O<U;O++)for(let F=K;F<q;F++){let L=(O*Z+F)*4;H+=$[L],j+=$[L+1],B+=$[L+2],V++}let _=(O)=>Math.round(O/V).toString(16).padStart(2,"0");Q.push(`<rect x="${z}" y="${G}" width="1" height="1" fill="#${_(H)}${_(j)}${_(B)}"/>`)}return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${X} ${Y}" preserveAspectRatio="none"><filter id="b"><feGaussianBlur stdDeviation=".6"/></filter><g filter="url(#b)">${Q.join("")}</g></svg>`}function eY($){return`data:image/svg+xml;base64,${Buffer.from($,"utf8").toString("base64")}`}function $Q($){try{return JSON.parse(l1.readFileSync($,"utf8"))}catch{return{}}}function ZQ($,Z){try{l1.mkdirSync(t5.dirname($),{recursive:!0}),l1.writeFileSync($,JSON.stringify(Z))}catch{}}function F4($,Z,J=[]){let X;try{X=l1.readdirSync($,{withFileTypes:!0})}catch{return J}for(let Y of X){let Q=t5.join($,Y.name);if(Y.isDirectory()){F4(Q,`${Z}/${Y.name}`,J);continue}if(!oY.has(t5.extname(Y.name).toLowerCase()))continue;J.push([`${Z}/${Y.name}`,Q])}return J}async function rH($,Z={}){let{cachePath:J,maxBytes:X=33554432,limit:Y=2000,offThread:Q}=Z;if(!$||!l1.existsSync($))return N1=!0,i0.size;if(Q){let H=await _4("placeholders",{publicDir:$,options:{cachePath:J,maxBytes:X,limit:Y}});if(H!==O4){for(let[j,B]of H.placeholders)i0.set(j,B);return N1=!0,i0.size}}let G;try{G=await import("ts-images")}catch{return N1=!0,i0.size}let z=J?$Q(J):{},K=!1,q=F4($,"").slice(0,Y),W=8,U=async([H,j])=>{let B;try{B=l1.statSync(j)}catch{return}if(B.size>X)return;let V=z[H];if(V&&V.mtimeMs===B.mtimeMs&&V.size===B.size){let _=V.transparent;if(typeof _!=="boolean"&&L4(j)==="none")_=!1,z[H]={...V,transparent:_},K=!0;if(typeof _==="boolean"){i0.set(H,{dataUrl:V.dataUrl,color:V.color,transparent:_});return}}try{let{hash:_}=await G.generateThumbHash(j);if(!_)return;let{rgba:O,w:F,h:L}=G.thumbHashToRGBA(_),w={dataUrl:eY(tY(O,F,L)),color:aY(O),transparent:rY(O)};i0.set(H,w),z[H]={mtimeMs:B.mtimeMs,size:B.size,...w},K=!0}catch{}};for(let H=0;H<q.length;H+=W)await Promise.all(q.slice(H,H+W).map(U));if(J&&K)ZQ(J,z);return N1=!0,i0.size}var JQ={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},$$=[320,640,768,1024,1280,1536,1920];function _0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function E0($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}function B9($,Z,J=!1){let X=$.serverDynamic[Z];if(X!==void 0)return X!==!1&&X!=="false";let Y=$.static[Z];if(Y!==void 0)return Y!=="false"&&Y!==!1;return J}function XQ($){let Z=(X)=>$.variants.filter((Y)=>Y.format===X).reduce((Y,Q)=>Y+Q.bytes,0),J=Z($.fallback.format);return["avif","webp"].map((X)=>({format:X,srcset:$.sources[X]||"",bytes:Z(X)})).filter((X)=>X.srcset&&X.bytes>0&&X.bytes<J).sort((X,Y)=>X.bytes-Y.bytes).map(({format:X,srcset:Y})=>({format:X,srcset:Y}))}function Z$($){if($.includes("(")||$.includes(","))return $;let Z=$.trim().split(/\s+/),J=[];for(let X of Z)if(X.includes(":")){let[Y,Q]=X.split(":"),G=JQ[Y];if(G)J.push(`(max-width: ${G}px) ${Q}`);else{let z=Number.parseInt(Y);if(!Number.isNaN(z))J.push(`(max-width: ${z}px) ${Q}`)}}else J.push(X);return J.join(", ")}function J$($,Z,J,X){return Z.map((Y)=>`${N2($,Y,void 0,J,X)} ${Y}w`).join(", ")}function YQ($,Z,J,X,Y){return Z.map((Q)=>{let G=J?J*Q:void 0;return`${N2($,G,void 0,X,Y)} ${Q}x`}).join(", ")}function N2($,Z,J,X,Y){if(!X||X==="local"||X==="static")return $;if(X==="cloudinary"){let Q=[];if(Z)Q.push(`w_${Z}`);if(J)Q.push(`h_${J}`);if(Y)Q.push(`f_${Y}`);Q.push("q_auto");let G=Q.join(",");return $.replace("/upload/",`/upload/${G}/`)}if(X==="imgix"){let Q=new URLSearchParams;if(Z)Q.set("w",String(Z));if(J)Q.set("h",String(J));if(Y)Q.set("fm",Y);Q.set("auto","format");let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}if(X==="bunny"){let Q=new URLSearchParams;if(Z)Q.set("width",String(Z));if(J)Q.set("height",String(J));if(Y)Q.set("format",Y);let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}return $}function QQ($){return`var s=this.style;${$.map((Z)=>`s.${Z}=''`).join(";")}`}function GQ($,Z,J="#e5e7eb"){let X=`<svg xmlns="http://www.w3.org/2000/svg" width="${$}" height="${Z}"><rect width="100%" height="100%" fill="${J}"/></svg>`;return`data:image/svg+xml;base64,${btoa(X)}`}var X$={name:"StxImage",aliases:["Image","stx-image","stx-img"],render($,Z,J){let X=E0($,"src")||"",Y=w4(X),Q=E0($,"alt")||"",G=E0($,"width")||(Y?String(Y.source.width):void 0),z=E0($,"height")||(Y?String(Y.source.height):void 0),K=E0($,"sizes"),q=E0($,"srcset"),W=E0($,"densities"),U=E0($,"format"),H=R4(X)||e5(X)?.transparent===!0,j=E0($,"placeholder")||(Y&&!H?"thumbhash":void 0),B=E0($,"placeholderColor")||"#e5e7eb",V=E0($,"provider"),_=E0($,"class")||E0($,"className")||"",O=E0($,"style")||"",F=E0($,"quality"),L=B9($,"lazy",!0),w=B9($,"preload",!1),N=B9($,"priority",!1),R=E0($,"loading"),M=E0($,"decoding")||"async",T=!!Y||B9($,"picture",!1)||!!U,D=G?Number.parseInt(G):void 0,I=z?Number.parseInt(z):void 0,k=q||"",A="";if(Y)k=Y.sources[Y.fallback.format]||"",A=K?Z$(K):"100vw";else if(!k&&K&&V&&V!=="local"&&V!=="static")k=J$(X,$$,V,U),A=Z$(K);else if(!k&&W){let X0=W.split(/\s+/).map(($0)=>Number.parseFloat($0.replace("x","")));k=YQ(X,X0,D,V,U)}else if(K)A=Z$(K);let E=[];if(O)E.push(O);if(D&&I)E.push(`aspect-ratio:${D}/${I}`);let C=[],y=j==="blur"||j==="color"||j==="thumbhash";if(y&&!H){let X0=Y?.placeholder?{dataUrl:Y.placeholder.dataUrl,color:B}:e5(X);if(X0&&j==="color")E.push(`background-color:${X0.color}`),C.push("backgroundColor");else if(X0)E.push(`background-color:${X0.color}`),E.push(`background-image:url(${X0.dataUrl})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundColor","backgroundImage");else{let $0=GQ(D||16,I||9,B);E.push(`background-image:url(${$0})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundImage")}}else if(!y&&j&&j!=="empty"&&j!=="none")E.push(`background-image:url(${_0(j)})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundImage");let b=Y?.fallback.url||N2(X,D,I,V,U),P=[];if(P.push(`src="${_0(Q2(b,"fetched"))}"`),P.push(`alt="${_0(Q)}"`),G)P.push(`width="${_0(G)}"`);if(z)P.push(`height="${_0(z)}"`);let u=R||(N||w?"eager":L?"lazy":"");if(u)P.push(`loading="${_0(u)}"`);if(N)P.push('fetchpriority="high"');if(P.push(`decoding="${_0(M)}"`),_)P.push(`class="${_0(_)}"`);if(E.length>0)P.push(`style="${_0(E.join(";"))}"`);if(k)P.push(`srcset="${_0(Q2(k,"fetched"))}"`);if(A)P.push(`sizes="${_0(A)}"`);let l=new Set(["src","alt","width","height","lazy","sizes","srcset","placeholder","placeholderColor","class","className","style","format","provider","quality","densities","preload","priority","picture","loading","decoding"]);if(C.length>0){let X0=typeof $.static.onload==="string"?$.static.onload:"",$0=QQ(C)+(X0?`;${X0}`:"");P.push(`onload="${_0($0)}"`),l.add("onload")}P.push(...u1($,l)),P.push(...m1($,l));let g=`<img ${P.join(" ")} />`,J0="";if(w){let $0=U==="webp"?"image/webp":U==="avif"?"image/avif":"";J0=`<link rel="preload" as="image" href="${_0(b)}"${$0?` type="${$0}"`:""}${k?` imagesrcset="${_0(k)}"`:""}${A?` imagesizes="${_0(A)}"`:""} />
|
|
3226
|
-
`}if(T){let
|
|
3227
|
-
${
|
|
3225
|
+
</script>`.trim()}var N2=/<\/?template\b[^>]*>/gi,$Q=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i;function ZQ($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return $Q.test(Z)}function q9($){N2.lastIndex=0;let Z;while((Z=N2.exec($))!==null){if(Z[0].startsWith("</")||ZQ(Z[0]))continue;let J=Z.index,X=N2.lastIndex,Y=1,Q;while((Q=N2.exec($))!==null)if(Q[0].startsWith("</")){if(Y--,Y===0){let G=Q.index;return{start:J,openEnd:X,closeStart:G,end:N2.lastIndex,content:$.slice(X,G)}}}else Y++;return null}return null}import z0 from"path";import{existsSync as vQ}from"fs";import W9 from"fs";import V0 from"path";var L4=new Map;function H9($,Z=!0){let J=L4.get($);if(Z&&J)return J;let X=new Map,Y=[V0.join($,"src"),V0.join($,"dist"),$];function Q(G,z){if(z>6)return;let K;try{K=W9.readdirSync(G,{withFileTypes:!0})}catch{return}for(let q of K){let W=V0.join(G,q.name);if(q.isDirectory()){if(q.name==="node_modules"||q.name.startsWith("."))continue;Q(W,z+1)}else if(q.isFile()&&q.name.endsWith(".stx")){let H=q.name.slice(0,-4);if(!X.has(H))X.set(H,W);let U=H.toLowerCase();if(!X.has(U))X.set(U,W);let j=H.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(!X.has(j))X.set(j,W)}}}for(let G of Y)if(Q(G,0),X.size>0)break;if(Z)L4.set($,X);return X}function U9($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let J=Z;while(!0){let X=V0.join(J,"node_modules",$);try{if(W9.statSync(X).isDirectory())return X}catch{}let Y=V0.dirname(J);if(Y===J)return null;J=Y}}function j9($,Z,J={}){return[V0.resolve(V0.dirname(Z),`${$}.stx`),V0.resolve(V0.dirname(Z),$),V0.resolve(J.componentsDir||"components",`${$}.stx`),V0.resolve(J.componentsDir||"components",$),$.endsWith(".stx")?$:`${$}.stx`]}function O4($){let Z=$.endsWith(".stx")?$.slice(0,-4):$,J=Z.split("-").map((Y)=>Y.charAt(0).toUpperCase()+Y.slice(1)).join(""),X=Z.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();return[Z,J,X]}function o5($,Z){let[J,X,Y]=O4($);for(let Q of[J,J.toLowerCase(),X,Y]){let G=Z?.__importedComponents?.get(Q);if(G!==void 0)return G}}function*r5($,Z,J={},X){let Y=O4($);if(Y[0].startsWith("./")||Y[0].startsWith("../")){yield V0.resolve(V0.dirname(Z),`${Y[0]}.stx`);return}let Q=[...new Set(Y.map((K)=>`${K}.stx`))],G=J.projectRoot||process.cwd(),z=[...X?.__originalFilePath?[V0.join(V0.dirname(X.__originalFilePath),"components")]:[],...J.componentsDir?[J.componentsDir]:[],V0.join(V0.dirname(Z),"components"),V0.resolve(G,"src/components"),V0.resolve(G,"components"),...import.meta.dir?[V0.resolve(import.meta.dir,"components")]:[]];for(let K of new Set(z)){for(let q of Q)yield V0.join(K,q);try{for(let q of W9.readdirSync(K,{withFileTypes:!0}))if(q.isDirectory())for(let W of Q)yield V0.join(K,q.name,W)}catch{}}}function _4($,Z,J={},X){let Y=o5($,X);if(Y!==void 0)return Y;for(let Q of r5($,Z,J,X))try{if(W9.statSync(Q,{throwIfNoEntry:!1})?.isFile())return Q}catch{}return null}class F4{builtins=new Map;registerBuiltin($){this.builtins.set($.name.toLowerCase(),$);for(let Z of $.aliases)this.builtins.set(Z.toLowerCase(),$)}isBuiltin($){return this.builtins.has($.toLowerCase())}getBuiltin($){return this.builtins.get($.toLowerCase())??null}async resolveFile($,Z,J,X){let Y=o5($,X);if(Y!==void 0)return Y;for(let Q of r5($,Z,J,X))if(await t(Q))return Q;return null}}var u1=new F4;function T0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var N1="\x00stx-boolean-attribute";function a5($){return $.indexOf("\x00")===-1?$:$.replace(/\0/g,"")}function m1($,Z){let J=[];for(let[X,Y]of Object.entries($.static)){if(Z.has(X))continue;let Q=$.staticNames?.[X]??X;if(typeof Y==="boolean"){if(Y)J.push(T0(Q));continue}if(Y===N1){J.push(T0(Q));continue}J.push(`${T0(Q)}="${T0(a5(String(Y)))}"`)}return J}function d1($,Z){let J=[];for(let[X,Y]of Object.entries($.serverDynamic??{})){if(Z.has(X))continue;if(Y===null||Y===void 0||Y===!1)continue;let Q=$.serverDynamicNames?.[X]??X;if(Y===!0){J.push(T0(Q));continue}if(typeof Y==="object")continue;J.push(`${T0(Q)}="${T0(a5(String(Y)))}"`)}return J}function l1($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function JQ($){if($.clientReactive.to)return{value:$.clientReactive.to,reactive:!0};if($.serverDynamic.to!==void 0)return{value:String($.serverDynamic.to),reactive:!1};if(typeof $.static.to==="string")return{value:$.static.to,reactive:!1};return{value:"#",reactive:!1}}var t5={name:"StxLink",aliases:["stx-link"],render($,Z,J){let X=JQ($),Y=(typeof $.static.class==="string"?$.static.class:"")||(typeof $.static.className==="string"?$.static.className:""),Q=typeof $.static.activeClass==="string"?$.static.activeClass:"active",G=typeof $.static.exactActiveClass==="string"?$.static.exactActiveClass:"exact-active",z=$.static.prefetch===!0||$.static.prefetch==="true"||$.serverDynamic.prefetch===!0,K=[];if(X.reactive)K.push(`:href="${l1(X.value)}"`);else K.push(`href="${l1(G2(X.value,"navigable"))}"`);if(Y)K.push(`class="${l1(Y)}"`);if(K.push("data-stx-link"),K.push(`data-stx-active-class="${l1(Q)}"`),K.push(`data-stx-exact-active-class="${l1(G)}"`),z)K.push("data-stx-prefetch");let q=typeof $.static.activeMatch==="string"?$.static.activeMatch.trim():"";if(q)K.push(`data-stx-active-match="${l1(q)}"`);let W=new Set(["to","class","className","activeClass","exactActiveClass","activeMatch","prefetch"]);return K.push(...m1($,W)),K.push(...d1($,W)),`<a ${K.join(" ")}>${Z}</a>`}};import c1 from"fs";import e5 from"path";var XQ=new Set([".jpg",".jpeg",".png",".webp",".avif"]),i0=new Map,D1=!1;function $3($){if(!$)return;let Z=$.split("?")[0].split("#")[0];return i0.get(Z)}function Yj(){return D1}function Qj(){i0.clear(),D1=!1}function Gj($,Z){i0.set($,Z),D1=!0}function YQ($){for(let Z=3;Z<$.length;Z+=4)if($[Z]<255)return!0;return!1}function QQ($){let Z=0,J=0,X=0,Y=0;for(let G=0;G<$.length;G+=4)Z+=$[G],J+=$[G+1],X+=$[G+2],Y++;if(Y===0)return"#e5e7eb";let Q=(G)=>Math.round(G/Y).toString(16).padStart(2,"0");return`#${Q(Z)}${Q(J)}${Q(X)}`}function GQ($,Z,J,X=4,Y=3){let Q=[];for(let G=0;G<Y;G++)for(let z=0;z<X;z++){let K=Math.floor(z*Z/X),q=Math.max(K+1,Math.floor((z+1)*Z/X)),W=Math.floor(G*J/Y),H=Math.max(W+1,Math.floor((G+1)*J/Y)),U=0,j=0,B=0,V=0;for(let O=W;O<H;O++)for(let F=K;F<q;F++){let L=(O*Z+F)*4;U+=$[L],j+=$[L+1],B+=$[L+2],V++}let _=(O)=>Math.round(O/V).toString(16).padStart(2,"0");Q.push(`<rect x="${z}" y="${G}" width="1" height="1" fill="#${_(U)}${_(j)}${_(B)}"/>`)}return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${X} ${Y}" preserveAspectRatio="none"><filter id="b"><feGaussianBlur stdDeviation=".6"/></filter><g filter="url(#b)">${Q.join("")}</g></svg>`}function zQ($){return`data:image/svg+xml;base64,${Buffer.from($,"utf8").toString("base64")}`}function KQ($){try{return JSON.parse(c1.readFileSync($,"utf8"))}catch{return{}}}function qQ($,Z){try{c1.mkdirSync(e5.dirname($),{recursive:!0}),c1.writeFileSync($,JSON.stringify(Z))}catch{}}function D4($,Z,J=[]){let X;try{X=c1.readdirSync($,{withFileTypes:!0})}catch{return J}for(let Y of X){let Q=e5.join($,Y.name);if(Y.isDirectory()){D4(Q,`${Z}/${Y.name}`,J);continue}if(!XQ.has(e5.extname(Y.name).toLowerCase()))continue;J.push([`${Z}/${Y.name}`,Q])}return J}async function zj($,Z={}){let{cachePath:J,maxBytes:X=33554432,limit:Y=2000,offThread:Q}=Z;if(!$||!c1.existsSync($))return D1=!0,i0.size;if(Q){let U=await N4("placeholders",{publicDir:$,options:{cachePath:J,maxBytes:X,limit:Y}});if(U!==R4){for(let[j,B]of U.placeholders)i0.set(j,B);return D1=!0,i0.size}}let G;try{G=await import("ts-images")}catch{return D1=!0,i0.size}let z=J?KQ(J):{},K=!1,q=D4($,"").slice(0,Y),W=8,H=async([U,j])=>{let B;try{B=c1.statSync(j)}catch{return}if(B.size>X)return;let V=z[U];if(V&&V.mtimeMs===B.mtimeMs&&V.size===B.size){let _=V.transparent;if(typeof _!=="boolean"&&w4(j)==="none")_=!1,z[U]={...V,transparent:_},K=!0;if(typeof _==="boolean"){i0.set(U,{dataUrl:V.dataUrl,color:V.color,transparent:_});return}}try{let{hash:_}=await G.generateThumbHash(j);if(!_)return;let{rgba:O,w:F,h:L}=G.thumbHashToRGBA(_),w={dataUrl:zQ(GQ(O,F,L)),color:QQ(O),transparent:YQ(O)};i0.set(U,w),z[U]={mtimeMs:B.mtimeMs,size:B.size,...w},K=!0}catch{}};for(let U=0;U<q.length;U+=W)await Promise.all(q.slice(U,U+W).map(H));if(J&&K)qQ(J,z);return D1=!0,i0.size}var WQ={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},Z3=[320,640,768,1024,1280,1536,1920];function F0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function E0($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}function B9($,Z,J=!1){let X=$.serverDynamic[Z];if(X!==void 0)return X!==!1&&X!=="false";let Y=$.static[Z];if(Y!==void 0)return Y!=="false"&&Y!==!1;return J}function HQ($){let Z=(X)=>$.variants.filter((Y)=>Y.format===X).reduce((Y,Q)=>Y+Q.bytes,0),J=Z($.fallback.format);return["avif","webp"].map((X)=>({format:X,srcset:$.sources[X]||"",bytes:Z(X)})).filter((X)=>X.srcset&&X.bytes>0&&X.bytes<J).sort((X,Y)=>X.bytes-Y.bytes).map(({format:X,srcset:Y})=>({format:X,srcset:Y}))}function J3($){if($.includes("(")||$.includes(","))return $;let Z=$.trim().split(/\s+/),J=[];for(let X of Z)if(X.includes(":")){let[Y,Q]=X.split(":"),G=WQ[Y];if(G)J.push(`(max-width: ${G}px) ${Q}`);else{let z=Number.parseInt(Y);if(!Number.isNaN(z))J.push(`(max-width: ${z}px) ${Q}`)}}else J.push(X);return J.join(", ")}function X3($,Z,J,X){return Z.map((Y)=>`${D2($,Y,void 0,J,X)} ${Y}w`).join(", ")}function UQ($,Z,J,X,Y){return Z.map((Q)=>{let G=J?J*Q:void 0;return`${D2($,G,void 0,X,Y)} ${Q}x`}).join(", ")}function D2($,Z,J,X,Y){if(!X||X==="local"||X==="static")return $;if(X==="cloudinary"){let Q=[];if(Z)Q.push(`w_${Z}`);if(J)Q.push(`h_${J}`);if(Y)Q.push(`f_${Y}`);Q.push("q_auto");let G=Q.join(",");return $.replace("/upload/",`/upload/${G}/`)}if(X==="imgix"){let Q=new URLSearchParams;if(Z)Q.set("w",String(Z));if(J)Q.set("h",String(J));if(Y)Q.set("fm",Y);Q.set("auto","format");let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}if(X==="bunny"){let Q=new URLSearchParams;if(Z)Q.set("width",String(Z));if(J)Q.set("height",String(J));if(Y)Q.set("format",Y);let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}return $}function jQ($){return`var s=this.style;${$.map((Z)=>`s.${Z}=''`).join(";")}`}function BQ($,Z,J="#e5e7eb"){let X=`<svg xmlns="http://www.w3.org/2000/svg" width="${$}" height="${Z}"><rect width="100%" height="100%" fill="${J}"/></svg>`;return`data:image/svg+xml;base64,${btoa(X)}`}var Y3={name:"StxImage",aliases:["Image","stx-image","stx-img"],render($,Z,J){let X=E0($,"src")||"",Y=M4(X),Q=E0($,"alt")||"",G=E0($,"width")||(Y?String(Y.source.width):void 0),z=E0($,"height")||(Y?String(Y.source.height):void 0),K=E0($,"sizes"),q=E0($,"srcset"),W=E0($,"densities"),H=E0($,"format"),U=A4(X)||$3(X)?.transparent===!0,j=E0($,"placeholder")||(Y&&!U?"thumbhash":void 0),B=E0($,"placeholderColor")||"#e5e7eb",V=E0($,"provider"),_=E0($,"class")||E0($,"className")||"",O=E0($,"style")||"",F=E0($,"quality"),L=B9($,"lazy",!0),w=B9($,"preload",!1),N=B9($,"priority",!1),R=E0($,"loading"),M=E0($,"decoding")||"async",T=!!Y||B9($,"picture",!1)||!!H,D=G?Number.parseInt(G):void 0,I=z?Number.parseInt(z):void 0,k=q||"",A="";if(Y)k=Y.sources[Y.fallback.format]||"",A=K?J3(K):"100vw";else if(!k&&K&&V&&V!=="local"&&V!=="static")k=X3(X,Z3,V,H),A=J3(K);else if(!k&&W){let J0=W.split(/\s+/).map((e)=>Number.parseFloat(e.replace("x","")));k=UQ(X,J0,D,V,H)}else if(K)A=J3(K);let E=[];if(O)E.push(O);if(D&&I)E.push(`aspect-ratio:${D}/${I}`);let C=[],y=j==="blur"||j==="color"||j==="thumbhash";if(y&&!U){let J0=Y?.placeholder?{dataUrl:Y.placeholder.dataUrl,color:B}:$3(X);if(J0&&j==="color")E.push(`background-color:${J0.color}`),C.push("backgroundColor");else if(J0)E.push(`background-color:${J0.color}`),E.push(`background-image:url(${J0.dataUrl})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundColor","backgroundImage");else{let e=BQ(D||16,I||9,B);E.push(`background-image:url(${e})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundImage")}}else if(!y&&j&&j!=="empty"&&j!=="none")E.push(`background-image:url(${F0(j)})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundImage");let b=Y?.fallback.url||D2(X,D,I,V,H),P=[];if(P.push(`src="${F0(G2(b,"fetched"))}"`),P.push(`alt="${F0(Q)}"`),G)P.push(`width="${F0(G)}"`);if(z)P.push(`height="${F0(z)}"`);let h=R||(N||w?"eager":L?"lazy":"");if(h)P.push(`loading="${F0(h)}"`);if(N)P.push('fetchpriority="high"');if(P.push(`decoding="${F0(M)}"`),_)P.push(`class="${F0(_)}"`);if(E.length>0)P.push(`style="${F0(E.join(";"))}"`);if(k)P.push(`srcset="${F0(G2(k,"fetched"))}"`);if(A)P.push(`sizes="${F0(A)}"`);let p=new Set(["src","alt","width","height","lazy","sizes","srcset","placeholder","placeholderColor","class","className","style","format","provider","quality","densities","preload","priority","picture","loading","decoding"]);if(C.length>0){let J0=typeof $.static.onload==="string"?$.static.onload:"",e=jQ(C)+(J0?`;${J0}`:"");P.push(`onload="${F0(e)}"`),p.add("onload")}P.push(...m1($,p)),P.push(...d1($,p));let g=`<img ${P.join(" ")} />`,Z0="";if(w){let e=H==="webp"?"image/webp":H==="avif"?"image/avif":"";Z0=`<link rel="preload" as="image" href="${F0(b)}"${e?` type="${e}"`:""}${k?` imagesrcset="${F0(k)}"`:""}${A?` imagesizes="${F0(A)}"`:""} />
|
|
3226
|
+
`}if(T){let J0=[];if(Y)for(let e of HQ(Y))J0.push(`<source type="image/${e.format}" srcset="${F0(e.srcset)}"${A?` sizes="${F0(A)}"`:""} />`);if(!Y&&(H==="avif"||H==="auto")){let e=D2(X,D,I,V,"avif"),i=k?X3(X,Z3,V,"avif"):`${e}`;J0.push(`<source type="image/avif" srcset="${F0(i)}"${A?` sizes="${F0(A)}"`:""} />`)}if(!Y&&(H==="webp"||H==="auto")){let e=D2(X,D,I,V,"webp"),i=k?X3(X,Z3,V,"webp"):`${e}`;J0.push(`<source type="image/webp" srcset="${F0(i)}"${A?` sizes="${F0(A)}"`:""} />`)}return`${Z0}<picture>
|
|
3227
|
+
${J0.join(`
|
|
3228
3228
|
`)}
|
|
3229
3229
|
${g}
|
|
3230
|
-
</picture>`}return`${
|
|
3230
|
+
</picture>`}return`${Z0}${g}`}};var I4="/images/safe-image-default.svg";function M2($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function p1($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var VQ=`<script>window.__stxSafeImageHandler||(window.__stxSafeImageHandler=function(i){if(i.__stx_fb)return;i.__stx_fb=1;var f=i.getAttribute('data-fallback')||'${I4}';var c=i.getAttribute('data-fallback-class');i.src=f;if(c)i.className=c;});</script>`,Q3={name:"SafeImage",aliases:["safe-image","safe-img"],render($,Z,J){let X=p1($,"src")||"",Y=p1($,"alt")||"",Q=p1($,"fallback")||I4,G=p1($,"class")||p1($,"className")||"",z=p1($,"fallbackClassName")||"",K=[];if(K.push(`src="${M2(X)}"`),K.push(`alt="${M2(Y)}"`),G)K.push(`class="${M2(G)}"`);if(K.push(`data-fallback="${M2(Q)}"`),z)K.push(`data-fallback-class="${M2(z)}"`);K.push('onerror="window.__stxSafeImageHandler(this)"');let q=new Set(["src","alt","fallback","class","className","fallbackClassName"]);K.push(...m1($,q)),K.push(...d1($,q));let W=`<img ${K.join(" ")} />`,H=J.context;if(!H.__safeImageHandlerEmitted)return H.__safeImageHandlerEmitted=!0,`${VQ}${W}`;return W}};function G3($){return $.replace(/[;{}()]/g,"").replace(/url/gi,"")}function A2($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}function V9($,Z,J){let X=A2($,Z);if(X!==void 0){let Y=Number.parseInt(X,10);if(!Number.isNaN(Y))return Y}return J}var z3={name:"StxLoadingIndicator",aliases:["stx-loading-indicator"],render($,Z,J){let X=G3(A2($,"color")||"#6366f1"),Y=G3(A2($,"initialColor")||A2($,"initial-color")||""),Q=G3(A2($,"height")||"3px"),G=V9($,"duration",2000),z=V9($,"throttle",200),K=V9($,"zIndex",999999)||V9($,"z-index",999999),q=Y?`linear-gradient(to right, ${Y}, ${X})`:X;return`
|
|
3231
3231
|
<div id="stx-loading-indicator" style="position:fixed;top:0;left:0;right:0;height:${Q};background:${q};z-index:${K};transform:scaleX(0);transform-origin:left;transition:transform 0.1s ease-out,opacity 0.3s ease;opacity:0;pointer-events:none">
|
|
3232
3232
|
<div style="position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.4) 50%,transparent 100%);animation:stx-shimmer 1.5s infinite"></div>
|
|
3233
3233
|
</div>
|
|
3234
3234
|
<style>@keyframes stx-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}</style>
|
|
3235
3235
|
<script>
|
|
3236
3236
|
(function(){var el=document.getElementById('stx-loading-indicator'),p=0,l=!1,i=null;function u(v){p=Math.min(Math.max(v,0),100);if(el){el.style.opacity=p>0?'1':'0';el.style.transform='scaleX('+(p/100)+')'}}window.stxLoading={start:function(){l=!0;p=0;u(10);if(i)clearInterval(i);i=setInterval(function(){if(!l)return;var r=90-p,inc=Math.max(0.5,r*0.1);if(p<90)u(p+inc)},${z})},finish:function(){l=!1;if(i){clearInterval(i);i=null}u(100);setTimeout(function(){if(el)el.style.opacity='0';setTimeout(function(){p=0;if(el)el.style.transform='scaleX(0)'},300)},200)},set:function(v){u(v)},clear:function(){l=!1;p=0;if(i){clearInterval(i);i=null}if(el){el.style.opacity='0';el.style.transform='scaleX(0)'}}};document.addEventListener('click',function(e){var a=e.target.closest&&e.target.closest('a');if(!a)return;var h=a.getAttribute('href');if(!h||h.startsWith('http')||h.startsWith('#')||h.startsWith('mailto:')||h.startsWith('tel:')||a.target==='_blank')return;window.stxLoading.start()});window.addEventListener('popstate',function(){window.stxLoading.start()});window.addEventListener('load',function(){window.stxLoading.finish()})})();
|
|
3237
|
-
</script>`}};function
|
|
3237
|
+
</script>`}};function k4($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}function LQ($,Z,J){let X=k4($,Z);if(X!==void 0){let Y=Number.parseInt(X,10);if(!Number.isNaN(Y))return Y}return J}var T4={"top-right":"top:1rem;right:1rem","top-left":"top:1rem;left:1rem","top-center":"top:1rem;left:50%;transform:translateX(-50%)","bottom-right":"bottom:1rem;right:1rem","bottom-left":"bottom:1rem;left:1rem","bottom-center":"bottom:1rem;left:50%;transform:translateX(-50%)"},K3={name:"StxToast",aliases:["stx-toast"],render($,Z,J){let X=T0(k4($,"position")||"top-right"),Y=LQ($,"max",5),Q=T4[X]||T4["top-right"];return`<div id="stx-toast-container" data-stx-toast-position="${X}" data-stx-toast-max="${Y}" style="position:fixed;${Q};z-index:999999;display:flex;flex-direction:column;gap:0.5rem;pointer-events:none;max-width:24rem;width:100%"></div>
|
|
3238
3238
|
<style>
|
|
3239
3239
|
@keyframes stx-toast-in{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}
|
|
3240
3240
|
@keyframes stx-toast-out{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}
|
|
@@ -3242,7 +3242,7 @@ ${g}
|
|
|
3242
3242
|
@keyframes stx-toast-out-left{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}
|
|
3243
3243
|
@keyframes stx-toast-in-center{from{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}
|
|
3244
3244
|
@keyframes stx-toast-out-center{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-1rem)}}
|
|
3245
|
-
</style>`}};function L9($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var
|
|
3245
|
+
</style>`}};function L9($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var E4={sm:"max-width:24rem",md:"max-width:32rem",lg:"max-width:42rem",xl:"max-width:56rem",full:"max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)"},q3={name:"StxModal",aliases:["stx-modal"],render($,Z,J){let X=L9($,"id");if(!X)return console.warn('[stx] <StxModal> requires an "id" prop'),"<!-- StxModal: missing id prop -->";let Y=T0(X),Q=L9($,"size")||"md",G=L9($,"closeOnBackdrop")!=="false",z=L9($,"closeOnEscape")!=="false",K=E4[Q]||E4.md;return`<div id="stx-modal-${Y}" class="stx-modal-backdrop" data-stx-modal="${Y}" data-close-backdrop="${G}" data-close-escape="${z}" style="display:none;position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center;background:rgba(0,0,0,0.5);backdrop-filter:blur(2px);opacity:0;transition:opacity 0.2s ease" aria-modal="true" role="dialog">
|
|
3246
3246
|
<div class="stx-modal-panel" style="${K};width:100%;margin:1rem;border-radius:0.75rem;box-shadow:0 20px 60px rgba(0,0,0,0.3);overflow:hidden;transform:scale(0.95) translateY(8px);transition:transform 0.2s ease,opacity 0.2s ease;opacity:0;background:var(--stx-modal-bg,#fff);color:var(--stx-modal-text,#1f2937)">
|
|
3247
3247
|
<div style="padding:1.5rem">${Z}</div>
|
|
3248
3248
|
</div>
|
|
@@ -3251,8 +3251,8 @@ ${g}
|
|
|
3251
3251
|
@media(prefers-color-scheme:dark){[data-stx-modal]{--stx-modal-bg:#1f2937;--stx-modal-text:#f3f4f6}}
|
|
3252
3252
|
.stx-modal-backdrop[data-stx-modal-open]{display:flex!important;opacity:1}
|
|
3253
3253
|
.stx-modal-backdrop[data-stx-modal-open] .stx-modal-panel{transform:scale(1) translateY(0);opacity:1}
|
|
3254
|
-
</style>`}};function
|
|
3255
|
-
<div class="stx-drawer-panel" style="position:fixed;top:0;bottom:0;${
|
|
3254
|
+
</style>`}};function i1($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var b4={sm:"16rem",md:"24rem",lg:"32rem",xl:"40rem"},W3={name:"StxDrawer",aliases:["stx-drawer"],render($,Z,J){let X=i1($,"id");if(!X)return console.warn('[stx] <StxDrawer> requires an "id" prop'),"<!-- StxDrawer: missing id prop -->";let Y=T0(X),Q=i1($,"side")||"right",G=i1($,"size")||"md",z=i1($,"closeOnBackdrop")!=="false",K=i1($,"closeOnEscape")!=="false",q=i1($,"overlay")!=="false",W=b4[G]||b4.md,H=Q==="left",U=H?"left:0":"right:0",j=H?"translateX(-100%)":"translateX(100%)",B=H?"stx-drawer-slide-left":"stx-drawer-slide-right";return`<div id="stx-drawer-${Y}" class="stx-drawer-backdrop" data-stx-drawer="${Y}" data-close-backdrop="${z}" data-close-escape="${K}" style="display:none;position:fixed;inset:0;z-index:99999;${q?"background:rgba(0,0,0,0.5);backdrop-filter:blur(2px)":"background:transparent;pointer-events:none"};opacity:0;transition:opacity 0.2s ease" role="dialog" aria-modal="true">
|
|
3255
|
+
<div class="stx-drawer-panel" style="position:fixed;top:0;bottom:0;${U};width:${W};max-width:100vw;transform:${j};transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);background:var(--stx-drawer-bg,#fff);color:var(--stx-drawer-text,#1f2937);box-shadow:0 20px 60px rgba(0,0,0,0.3);overflow-y:auto;pointer-events:auto">
|
|
3256
3256
|
<div style="padding:1.5rem">${Z}</div>
|
|
3257
3257
|
</div>
|
|
3258
3258
|
</div>
|
|
@@ -3260,7 +3260,7 @@ ${g}
|
|
|
3260
3260
|
@media(prefers-color-scheme:dark){[data-stx-drawer]{--stx-drawer-bg:#1f2937;--stx-drawer-text:#f3f4f6}}
|
|
3261
3261
|
.stx-drawer-backdrop[data-stx-drawer-open]{display:block!important;opacity:1}
|
|
3262
3262
|
.stx-drawer-backdrop[data-stx-drawer-open] .stx-drawer-panel{transform:translateX(0)}
|
|
3263
|
-
</style>`}};import{existsSync as
|
|
3263
|
+
</style>`}};import{existsSync as OQ,readFileSync as _Q}from"fs";var M1=new Map,y4=new Set;function C4($){if(y4.has($))return;y4.add($),console.warn(`[stx] icon collection "${$}" is not installed, so its icons render as nothing. Install it with \`bun add -d @iconify-json/${$}\`.`)}function S4($){let Z=process.cwd();for(let J of[`${Z}/node_modules/@iconify-json/${$}/icons.json`,`${Z}/pantry/@iconify-json/${$}/icons.json`,`${Z}/node_modules/@iconify/json/json/${$}.json`,`${Z}/pantry/@iconify/json/json/${$}.json`])if(OQ(J))return J;for(let J of[`@iconify-json/${$}/icons.json`,`@iconify/json/json/${$}.json`])try{return x.resolve(J)}catch{}return null}function FQ($){if(M1.has($))return M1.get($);let Z=S4($);if(!Z)return C4($),null;try{let J=JSON.parse(_Q(Z,"utf8"));return M1.set($,J.icons),J.icons}catch{return null}}async function wQ($,Z=!1){if(M1.has($))return M1.get($);let J=S4($);if(!J){if(!Z)C4($);return null}try{let X=await Bun.file(J).json();return M1.set($,X.icons),X.icons}catch{return null}}function n1($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);if($.static[Z]!==void 0)return String($.static[Z]);if($.clientReactive[Z]!==void 0)return $.clientReactive[Z];return}var H3={name:"Icon",aliases:["icon","stx-icon"],render($,Z,J){let X=n1($,"name")??n1($,"icon");if(!X)return"<!-- Icon: missing name/icon prop -->";let Y="lucide",Q=X;if(X.includes(":")){let F=X.split(":");Y=F[0],Q=F[1]}let G=T0(n1($,"size")||"24"),z=T0(n1($,"color")||"currentColor"),K=T0(n1($,"class")||""),q=T0(n1($,"style")||""),W=M1.get(Y)??FQ(Y);if(!W)return`<!-- Icon: collection "${Y}" not loaded -->`;let H=W[Q];if(!H)return`<!-- Icon: "${Q}" not found in ${Y} -->`;let U=H.width||24,j=H.height||24,B=`0 0 ${U} ${j}`,V=H.body;if(z!=="currentColor")V=V.replace(/currentColor/g,z);let _=K?` class="${K}"`:"",O=q?` style="${q}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${G}" height="${G}" viewBox="${B}" fill="none"${_}${O}>${V}</svg>`}};async function RQ($="lucide",Z={}){await wQ($,Z.speculative??!0)}function U3(){return`
|
|
3264
3264
|
(function(){
|
|
3265
3265
|
var tip=null,hideTimer=null,currentEl=null;
|
|
3266
3266
|
|
|
@@ -3363,18 +3363,18 @@ document.addEventListener("focusout",function(e){
|
|
|
3363
3363
|
if(el) hideTip();
|
|
3364
3364
|
});
|
|
3365
3365
|
})();
|
|
3366
|
-
`}function
|
|
3367
|
-
`||D==="\t")F++;L=M+_.length}else{if(F--,F===0){w=T;break}L=T+O.length}}if(w===-1){Y=j;continue}let N=$.slice(j,w),R=w+O.length;X.push({fullMatch:$.slice(G,R),tagName:q,attributes:V,content:N,startIndex:G,endIndex:R,isSelfClosing:!1}),Y=R}}return X}function f4($){return $.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/�?39;/g,"'").replace(/'/gi,"'").replace(/&/g,"&")}function g4($,Z){try{let J=Buffer.from($,"base64").toString("utf8");return JSON.parse(J)}catch{}try{let J=$.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&");return JSON.parse(J)}catch(J){if(Z?.debug)console.error("Error decoding __stx_ prop:",J);return $}}function B$($,Z){let J=0,X="",Y=Z;while(Y<$.length){let Q=$[Y];if(X){if(Q==="\\")Y++;else if(Q===X)X=""}else if(Q==='"'||Q==="'"||Q==="`")X=Q;else if(Q==="{")J++;else if(Q==="}"){if(J--,J===0)return $.slice(Z,Y+1)}Y++}return $.slice(Z)}function h4($){let Z=$.trim();if(!Z.startsWith("{")||!Z.endsWith("}"))return null;if(B$(Z,0).length!==Z.length)return null;return Z.slice(1,-1).trim()}var VQ=new Set(["disabled","checked","readonly","required","autofocus","autoplay","controls","default","defer","formnovalidate","hidden","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","reversed","selected"]),LQ=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function V$($){let Z=[],J=/<([a-zA-Z][a-zA-Z0-9-]*)\b((?:[^>"']|"[^"]*"|'[^']*')*)\s*\/?>/g,X;while((X=J.exec($))!==null){let Y=X[2]||"";if(!/(?:^|\s)(?::for|x-for|v-for|@for)\s*=/.test(Y))continue;let Q=X.index,G=Q+X[0].length,z=X[1].toLowerCase();if(X[0].endsWith("/>")||LQ.has(z)){Z.push([Q,G]);continue}let K=z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),q=new RegExp(`<\\/?${K}\\b(?:[^>"']|"[^"]*"|'[^']*')*>`,"gi");q.lastIndex=G;let W=1,U=G,H;while((H=q.exec($))!==null)if(H[0].startsWith("</")){if(W--,W===0){U=H.index+H[0].length;break}}else if(!H[0].endsWith("/>"))W++;Z.push([Q,U])}return Z}function m4($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>m4(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function d4($,Z){if(!/:[\w-]+=/.test($))return $;let J=$,X=/<(script|style)\b[^>]*>[\s\S]*?<\/\1>/gi,Y=[],Q;while((Q=X.exec($))!==null)Y.push([Q.index,Q.index+Q[0].length]);Y.push(...V$($));function G(U){return Y.some(([H,j])=>U>=H&&U<j)}let z=/<([a-zA-Z][a-zA-Z0-9-]*)\b((?:[^>"']|"[^"]*"|'[^']*')*)\s*\/?>/g,K=[],q=new Map,W=256;while((Q=z.exec(J))!==null){if(G(Q.index))continue;let U=Q[0],H=Q[2];if(!H||!H.includes(":"))continue;let j=/\s:([a-zA-Z_][\w-]*)\s*=\s*"([^"]*)"/g,B,V=H,_=!1;while((B=j.exec(H))!==null){let O=B[1],F=B[2];if(u4(O))continue;if(F.includes("()")&&!F.includes(".get(")||F.includes("$store")||F.includes("$ref"))continue;try{let L=Object.keys(Z),w=Object.values(Z),N=F.match(/^([a-zA-Z_$][\w$]*)/);if(N&&!L.includes(N[1])&&!["true","false","null","undefined","Math","JSON","String","Number","Array","Object","Date","parseInt","parseFloat"].includes(N[1]))continue;let R=JSON.stringify([L,F]),M=q.get(R);if(!M){if(M=Function(...L,`return (${F})`),q.size>=W)q.clear();q.set(R,M)}let T=M(...w);if(O==="class"){let D=m4(T);if(D){let I=V.match(/\sclass="([^"]*)"/);if(I)V=V.replace(I[0],` class="${I[1]} ${D}"`);else V=V.replace(B[0],` class="${D}"`)}else V=V.replace(B[0],"");_=!0;continue}if(VQ.has(O)){if(T)V=V.replace(B[0],` ${O}`);else V=V.replace(B[0],"");_=!0;continue}if(T===null||T===void 0||T===!1)V=V.replace(B[0],"");else{let D=String(T).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">");V=V.replace(B[0],` ${O}="${D}"`)}_=!0}catch{continue}}if(_){let O=U.endsWith("/>")?" /":"",L=`<${Q[1]}${V}${O}>`;K.push({start:Q.index,end:Q.index+U.length,replacement:L})}}if(K.length>0){let U=Array(K.length*2+1),H=0;for(let j=0;j<K.length;j++){let{start:B,end:V,replacement:_}=K[j];U[j*2]=J.slice(H,B),U[j*2+1]=_,H=V}U[K.length*2]=J.slice(H),J=U.join("")}return J}import l4 from"fs";import c4 from"path";var A2=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","component","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","menu","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","path","circle","rect","line","polygon","polyline","ellipse","text","tspan","textPath","g","defs","use","symbol","image","clipPath","mask","pattern","marker","linearGradient","radialGradient","stop","filter","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","foreignObject","animate","animateMotion","animateTransform","set","mpath","desc","metadata","switch","view"]);function I2($){if($.includes("-")||$==="component")return!1;if(/^[A-Z]/.test($))return!/[a-z]/.test($)&&[...A2].some((Z)=>Z.toLowerCase()===$.toLowerCase());return A2.has($)||/[A-Z]/.test($)}var p4=!1;function OQ($,Z,J,X=!1){let Y={static:{},staticNames:{},serverDynamic:{},serverDynamicNames:{},clientReactive:{},events:{}},Q=new Set(Array.isArray(Z.__stx_client_signal_names)?Z.__stx_client_signal_names:[]),G=(W)=>{if(Q.size===0)return!1;let U=W0(W),H=U.match(/^\s*[!+~(-]*\s*([a-zA-Z_$][\w$]*)/)?.[1];if(H&&Q.has(H))return!0;for(let j of Q){let B=j.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`(?:^|[^\\w$.])${B}\\s*\\(`).test(U))return!0}return!1},z=new Set(s4),K=(W)=>{if(!W.includes("-")||W.startsWith("@")||W.startsWith(":")||W.startsWith("x-")||W.startsWith("__"))return W;if(W.startsWith("aria-")||W.startsWith("data-"))return W;return W.replace(/-([a-z0-9])/g,(U,H)=>H.toUpperCase())},q=(W,U)=>{let H=K(W);if(Y.static[H]=U,H!==W)Y.staticNames[H]=W};for(let[W,U]of Object.entries($)){let H=W.startsWith("x-")&&!z.has(W)&&!W.startsWith("x-bind:")&&!W.startsWith("x-on:")?`:${W.slice(2)}`:W;if(H.startsWith("@")){Y.events[H]=U;continue}if(H.startsWith("__stx_")){let j=K(H.slice(6));Y.serverDynamic[j]=g4(U,J);continue}if(H.startsWith(":")){let j=K(H.slice(1)),B=U===R1?j:U;if(j==="if"||j==="for"||j==="show"){Y.clientReactive[j]=B;continue}if(X){Y.clientReactive[j]=B;continue}if(G(B)){Y.clientReactive[j]=B;continue}try{if(!H0(B)){if(J.debug)console.error(`Unsafe expression in :${j} binding: ${B}`);Y.clientReactive[j]=B;continue}let V=Object.keys(Z),O=q0(B,V)(...Object.values(Z));if(O===void 0){let F=new Set(["true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","if","else"]);if(w9(B).some((w)=>!F.has(w)&&!V.includes(w))){Y.clientReactive[j]=B;continue}}if(Y.serverDynamic[j]=O,j!==H.slice(1)&&Y.serverDynamicNames)Y.serverDynamicNames[j]=H.slice(1)}catch{Y.clientReactive[j]=B}continue}if(typeof U==="string"&&U.includes("{{")&&U.includes("}}")){let j=U.match(/^\{\{\s*([\s\S]+?)\s*\}\}$/);if(j)try{let B=j[1];if(H0(B)){let _=q0(B,Object.keys(Z))(...Object.values(Z));q(H,_!=null?String(_):"")}else{if(J.debug)console.error(`Unsafe expression in ${H}: ${B}`);q(H,U)}}catch(B){if(J.debug)console.error(`Error evaluating expression for ${H}:`,B);q(H,U)}else{let B=U,V=/\{\{\s*([\s\S]+?)\s*\}\}/g,_;while((_=V.exec(U))!==null)try{let O=_[1];if(!H0(O)){if(J.debug)console.error(`Unsafe expression in ${H}: ${O}`);continue}let L=q0(O,Object.keys(Z))(...Object.values(Z));B=B.replace(_[0],String(L??""))}catch(O){if(J.debug)console.error(`Error evaluating expression in ${H}:`,O)}q(H,B)}continue}q(H,U===R1?"true":f4(U))}return Y}var _Q=[[/@if\s*\(/,"@endif"],[/@unless\s*\(/,"@endunless"]];function FQ($,Z,J){if(!$.includes("@"))return $;if(!_Q.some(([Y,Q])=>Y.test($)&&$.includes(Q)))return $;try{return a0($,Z,J)}catch{return $}}function wQ($){let Z={},J=0,X=$.length;while(J<X){while(J<X&&/\s/.test($[J]))J++;if(J>=X)break;let Y="";while(J<X&&!/[\s=]/.test($[J]))Y+=$[J],J++;if(!Y)break;while(J<X&&/\s/.test($[J]))J++;if(J<X&&$[J]==="="){J++;while(J<X&&/\s/.test($[J]))J++;let Q="";if(J<X&&($[J]==='"'||$[J]==="'")){let G=$[J];J++;while(J<X){let z=$[J];if(z==="\\"&&J+1<X){J++,Q+=$[J],J++;continue}if(z===G){J++;break}Q+=z,J++}}else if($[J]==="{"){Q=B$($,J),J+=Q.length;let G=h4(Q);if(G!==null){Z[`:${Y}`]=G;continue}}else while(J<X&&!/\s/.test($[J]))Q+=$[J],J++;Z[Y]=Q}else Z[Y]=R1}return Z}function i4($){return Object.entries($).map(([Z,J])=>J===R1?Z:`${Z}="${RQ(J)}"`).join(" ")}function RQ($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function NQ($){let Z=new Set,J=/<([A-Z][A-Za-z0-9]*|stx-[a-z0-9-]+)\b[^>]*>/g,X;while((X=J.exec($))!==null){let Y=X[1];if(h1.isBuiltin(Y))Z.add(Y)}return[...Z].sort()}async function DQ($,Z,J,X,Y){if(!/import\s/.test($))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=c4.dirname(J),z=[],K=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi;for(let U of $.matchAll(K)){let[H,j,B]=U,V=/import\s+(?:(\{[^}]*\})|([A-Za-z_$][\w$]*))\s+from\s+['"]([^'"]+)['"]\s*;?\s*\n?/g,_=B,O,F=[];while((O=V.exec(B))!==null){let[L,w,N,R]=O,M=null,T=null;if(R.startsWith(".")||R.startsWith("/")){let k=c4.resolve(G,R);if(k.endsWith(".stx"))T=k;else{let A=`${k}.stx`;try{if(l4.statSync(A).isFile())T=A}catch{try{if(l4.statSync(k).isDirectory())M=k}catch{}}}}else M=H9(R,G);if(!M&&!T)continue;let D=!1,I=(k,A)=>{Q.set(k,A),Q.set(k.toLowerCase(),A);let E=k.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();Q.set(E,A),Y.add(A)};if(N&&T)I(N,T),D=!0;else if(w){let k=w.slice(1,-1).split(",").map((E)=>E.trim()).filter(Boolean).map((E)=>{let C=E.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(C)return{source:C[1],local:C[2]};return{source:E,local:E}}),A=M?U9(M):null;for(let{source:E,local:C}of k){let y=null;if(T)y=T;else if(A)y=A.get(E)??A.get(E.toLowerCase())??A.get(E.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase())??null;if(y)I(C,y),D=!0}}if(D)F.push({start:O.index,end:O.index+L.length})}if(F.length===0)continue;for(let L=F.length-1;L>=0;L--)_=_.slice(0,F[L].start)+_.slice(F[L].end);z.push({start:U.index,end:U.index+H.length,value:`<script${j}>${_}</script>`})}if(z.length===0)return $;let q=[],W=0;for(let U of z)q.push($.slice(W,U.start),U.value),W=U.end;return q.push($.slice(W)),q.join("")}async function MQ($,Z,J,X,Y){let Q=$;if(!Z.__importedComponents)Z.__importedComponents=new Map;let G=Z.__importedComponents,z=/@import\s*\(\s*([^)]+)\s*\)/g,K;while((K=z.exec(Q))!==null){let[q,W]=K,U=W.split(",").map((H)=>H.trim().replace(/^['"]|['"]$/g,"")).filter((H)=>H.length>0);for(let H of U){let j=H.split("/"),V=j[j.length-1].replace(/\.stx$/,""),_=V.includes("-")?V.split("-").map((L)=>L.charAt(0).toUpperCase()+L.slice(1)).join(""):V.charAt(0).toUpperCase()+V.slice(1),O=null,F=j9(H,J,X);for(let L of F)try{if(await Bun.file(L).exists()){O=L;break}}catch{}if(O){G.set(_,O),G.set(V,O),G.set(V.toLowerCase(),O);let L=_.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(G.set(L,O),Y.add(O),X.debug)console.log(`Imported component: ${_} -> ${O}`)}else if(X.debug)console.warn(`Could not resolve imported component: ${H}`)}Q=Q.replace(q,""),z.lastIndex=0}return Q}async function AQ($,Z,J,X,Y){let Q=$,G=X.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let z=Z.__processedComponents,K=/@component\s*\(/g,q;while((q=K.exec(Q))!==null){let W=q.index,U=W+q[0].length-1,H=1,j=U+1;while(j<Q.length&&H>0){if(Q[j]==="(")H++;else if(Q[j]===")"){if(H--,H===0)break}j++}if(H!==0)break;let B=Q.substring(U+1,j),V=j+1,_=B.match(/^\s*['"]([^'"]+)['"]/);if(!_){K.lastIndex=0;continue}let O=_[1],F,L=B.slice(_[0].length),w=L.match(/^\s*,\s*/);if(w)F=L.slice(w[0].length).trim();let N={};if(F)try{N=d0(F,Z)}catch(k){let A=k instanceof Error?k.message:String(k);Q=Q.replace(Q.substring(W,V),`[Error parsing component props: ${A}]`);continue}let R="",M=V,D=Q.substring(V).match(/^([\s\S]*?)@endcomponent/);if(D)R=D[1].trim(),M=V+D[0].length;let I=await M1(O,N,R,G,Z,J,X,z,Y);Q=Q.substring(0,W)+I+Q.substring(M),K.lastIndex=0}return Q}async function IQ($,Z,J,X,Y){if(!$)return $;let Q=$,G=X.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let z=Z.__processedComponents,K=c0(Q);Q=K.output;let q=V$(Q);return Q=await j(Q,/[a-z][a-z0-9]*-[a-z0-9-]*/,!1),Q=await j(Q,/[A-Z][a-zA-Z0-9]*/,!0,v4(A2)),Q=await j(Q,/[a-z][a-z0-9]*/,!1,A2),Q=K.restore(Q),Q;async function j(B,V,_,O){if(!B)return B;let F=B,L=x4(F,V,O),w=new Map;for(let M=L.length-1;M>=0;M--){let T=L[M],D=_?_9(T.tagName):T.tagName,I=wQ(FQ(T.attributes,Z,J)),k=q.some(([u,l])=>T.startIndex>=u&&T.startIndex<l),A=OQ(I,Z,X,k),E=h1.getBuiltin(T.tagName),C=E?await F9(D,G,Z,J,X):!1;if(E&&!C){let u={context:Z,filePath:J,options:X,dependencies:Y},l=E.render(A,T.content,u);if(Object.keys(A.events).length>0){let g=i4(A.events);l=l.replace(/^(\s*<[a-zA-Z][a-zA-Z0-9-]*)/,`$1 ${g}`)}if(Object.keys(A.clientReactive).length>0)l=n4(l,A.clientReactive);w.set(M,l);continue}if(!_&&T.tagName.includes("-")&&!await F9(D,G,Z,J,X))continue;let y={};for(let[u,l]of Object.entries(A.static))y[u]=l;for(let[u,l]of Object.entries(A.serverDynamic))y[u]=l;let P=await M1(D,y,K.restore(T.content),G,Z,J,X,z,Y);if(Object.keys(A.events).length>0){let u=o4(P);if(u){let l=i4(A.events),g=Object.keys(A.events).map((J0)=>J0.replace(/^@/,"").split(".")[0]).join(" ");P=P.substring(0,u.insertPos)+` data-stx-parent-events="${g}" ${l}`+P.substring(u.insertPos)}}if(Object.keys(A.clientReactive).length>0)P=n4(P,A.clientReactive);w.set(M,P)}if(w.size===0)return F;let N="",R=0;for(let M=0;M<L.length;M++){let T=w.get(M);if(T===void 0)continue;N+=F.slice(R,L[M].startIndex),N+=T,R=L[M].endIndex}return N+=F.slice(R),N}}function n4($,Z){let J=new Set(["if","for"]),X=new Set(["show"]),Y=Object.entries(Z).filter(([W])=>!J.has(W)),Q=Y.filter(([W])=>!X.has(W)).map(([W])=>_9(W)).join(" "),G=$,z=Y.length>0?o4(G):null;if(z){let W=Y.map(([H,j])=>`:${_9(H)}="${j.replace(/"/g,""")}"`).join(" "),U=Q?` data-stx-parent-bindings="${Q}"`:"";G=G.substring(0,z.insertPos)+`${U} ${W}`+G.substring(z.insertPos)}let K=Z.if;if(K)G=`<template :if="${K.replace(/"/g,""")}">${G}</template>`;let q=Z.for;if(q)G=`<template :for="${q.replace(/"/g,""")}">${G}</template>`;return G}function o4($){let Z=/<([a-zA-Z][a-zA-Z0-9-]*)\b[^>]*\bdata-stx-scope(?:\s|=|>)/i.exec($);if(Z)return{insertPos:Z.index+1+Z[1].length};let J=0;while(J<$.length){let X=$.slice(J),Y=X.match(/^\s+/);if(Y){J+=Y[0].length;continue}if(X.startsWith("<!--")){let z=$.indexOf("-->",J+4);if(z===-1)return null;J=z+3;continue}let Q=X.match(/^<(script|style)\b[^>]*>/i);if(Q){let z=`</${Q[1].toLowerCase()}>`,K=$.toLowerCase().indexOf(z,J+Q[0].length);if(K===-1)return null;J=K+z.length;continue}let G=X.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(?:\s|>|\/)/);if(!G)return null;return{insertPos:J+1+G[1].length}}return null}async function L$($,Z,J,X,Y){if(!p4)C4(h1),p4=!0;let Q=await DQ($,Z,J,X,Y);Q=await MQ(Q,Z,J,X,Y),Q=await AQ(Q,Z,J,X,Y);let G=[];for(let z=0;z<3;z++){let K=G.length,q=j1(Q,R9,(U,H)=>`\x00STX_COMPONENT_COMMENT_${K+H}\x00`,`STX_COMPONENT_COMMENT:${K}`);G.push(...q.tokens);let W=Q;if(Q=await IQ(q.output,Z,J,X,Y),Q===W)break}if(G.length>0)Q=Q.replace(/\x00STX_COMPONENT_COMMENT_(\d+)\x00/g,(z,K)=>G[Number(K)]??"");if(X.debug){let z=NQ(Q);if(z.length>0)console.warn(`[stx] ${J}: unresolved component tag(s) after render passes: ${z.join(", ")}. Check nested component output for malformed root tags or recursive component markup.`)}return Q}function O$($,Z){let J=0;for(let X=Z;X<$.length;X++){let Y=$[X];if(Y==="("||Y==="["||Y==="{")J++;else if(Y===")"||Y==="]"||Y==="}")J--;else if(Y===","&&J===0)return X}return-1}function kQ($,Z,J){let X=$,Y=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),Q=Y.exec(X);while(Q){let G=Q.index,z=G+Q[0].length-1,K=1,q=z+1;while(q<X.length&&K>0){if(X[q]==="(")K++;else if(X[q]===")")K--;q++}if(K!==0)break;let W=X.substring(z+1,q-1),U=`${J}(${W})`;X=X.substring(0,G)+U+X.substring(q),Y.lastIndex=G+U.length,Q=Y.exec(X)}return X}function EQ($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function e4($){let Z=$,J=[],X=new Set,Y=0,Q=0,G=Z.length,z=(U)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===U){Q++;return}Q++}},K=()=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]==="`"){Q++;return}if(Z[Q]==="$"&&Z[Q+1]==="{"){Q+=2;let U=1;while(Q<G&&U>0)if(Z[Q]==="{")U++,Q++;else if(Z[Q]==="}")U--,Q++;else if(Z[Q]==="'"||Z[Q]==='"')z(Z[Q]);else if(Z[Q]==="`")K();else Q++;continue}Q++}},q=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
|
|
3368
|
-
`)Q++;return!0}if(Z[Q]==="/"&&Z[Q+1]==="*"){Q+=2;while(Q<G-1&&!(Z[Q]==="*"&&Z[Q+1]==="/"))Q++;return Q+=2,!0}return!1},W=()=>{if(Y!==0)return;let
|
|
3366
|
+
`}function P4($,...Z){for(let J of Z){if($.serverDynamic[J]!==void 0)return String($.serverDynamic[J]);let X=$.static[J];if(typeof X==="string")return X}return}function v4($,Z){let J=new RegExp(`<(template|div|span)[^>]*\\bslot=["']${Z}["'][^>]*>([\\s\\S]*?)<\\/\\1>`,"i"),X=$.match(J);if(!X)return{region:null,rest:$};return{region:X[2],rest:$.replace(X[0],"")}}var j3={name:"Suspense",aliases:["suspense"],render($,Z,J){let X=v4(Z,"fallback"),Y=X.rest,Q=v4(Y,"error"),G=Q.rest,z=X.region??P4($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',K=Q.region??P4($,"errorFallback","error-fallback")??'<div class="stx-suspense-error">Something went wrong.</div>';return`<div data-stx-suspense><div data-stx-suspense-fallback>${z}</div><div data-stx-suspense-error hidden>${K}</div><div data-stx-suspense-content hidden>${G}</div></div>`}};function O9($,...Z){for(let J of Z){if($.serverDynamic[J]!==void 0)return String($.serverDynamic[J]);let X=$.static[J];if(typeof X==="string")return X}return}var B3={name:"TransitionGroup",aliases:["transition-group"],render($,Z,J){let X=(O9($,"name")||"v").replace(/["'<>]/g,""),Y=(O9($,"tag")||"div").replace(/[^a-z0-9-]/gi,"")||"div",Q=O9($,"class"),G=O9($,"id"),z=[`data-stx-transition-group="${X}"`,Q?`class="${Q}"`:"",G?`id="${G}"`:""].filter(Boolean).join(" ");return`<${Y} ${z}>${Z}</${Y}>`}};function x4($=u1){$.registerBuiltin(t5),$.registerBuiltin(Y3),$.registerBuiltin(Q3),$.registerBuiltin(z3),$.registerBuiltin(K3),$.registerBuiltin(q3),$.registerBuiltin(W3),$.registerBuiltin(H3),$.registerBuiltin(j3),$.registerBuiltin(B3)}function _9($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").toLowerCase()}var f4=new Map;function NQ($){let Z=f4.get($.source);if(!Z)Z=new RegExp(`(${$.source})(?![\\w.:-])`,"y"),f4.set($.source,Z);return Z}var g4=new WeakMap;function h4($){let Z=g4.get($);if(!Z)Z=new Set([...$].map((X)=>X.toLowerCase())),g4.set($,Z);let J=Z;return(X)=>!/[a-z]/.test(X)&&J.has(X.toLowerCase())}function u4($,Z,J){let X=[],Y=0,Q=typeof J==="function"?J:J?(G)=>J.has(G.toLowerCase()):void 0;while(Y<$.length){let G=$.indexOf("<",Y);if(G===-1)break;let z=NQ(Z);z.lastIndex=G+1;let K=z.exec($);if(!K){Y=G+1;continue}let q=K[1];if(Q&&Q(q)){let _=G+1+q.length;while(_<$.length&&$[_]!==">")_++;Y=_+1;continue}let W=G+1+q.length,H=null,U=W,j=-1,B=!1;while(W<$.length){let _=$[W];if(H){if(_==="\\"&&W+1<$.length){W+=2;continue}if(_===H)H=null;W++;continue}if(_==='"'||_==="'"){H=_,W++;continue}if(_==="/"&&W+1<$.length&&$[W+1]===">"){j=W+2,B=!0;break}if(_===">"){j=W+1;break}W++}if(j===-1){Y=G+1;continue}let V=$.slice(U,B?j-2:j-1).trim();if(B)X.push({fullMatch:$.slice(G,j),tagName:q,attributes:V,content:"",startIndex:G,endIndex:j,isSelfClosing:!0}),Y=j;else{let _=`<${q}`,O=`</${q}>`,F=1,L=j,w=-1;while(F>0&&L<$.length){let M=$.indexOf(_,L),T=$.indexOf(O,L);if(T===-1)break;if(M!==-1&&M<T){let D=$[M+_.length];if(D===" "||D===">"||D==="/"||D===`
|
|
3367
|
+
`||D==="\t")F++;L=M+_.length}else{if(F--,F===0){w=T;break}L=T+O.length}}if(w===-1){Y=j;continue}let N=$.slice(j,w),R=w+O.length;X.push({fullMatch:$.slice(G,R),tagName:q,attributes:V,content:N,startIndex:G,endIndex:R,isSelfClosing:!1}),Y=R}}return X}function m4($){return $.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/�?39;/g,"'").replace(/'/gi,"'").replace(/&/g,"&")}function d4($,Z){try{let J=Buffer.from($,"base64").toString("utf8");return JSON.parse(J)}catch{}try{let J=$.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&");return JSON.parse(J)}catch(J){if(Z?.debug)console.error("Error decoding __stx_ prop:",J);return $}}function V3($,Z){let J=0,X="",Y=Z;while(Y<$.length){let Q=$[Y];if(X){if(Q==="\\")Y++;else if(Q===X)X=""}else if(Q==='"'||Q==="'"||Q==="`")X=Q;else if(Q==="{")J++;else if(Q==="}"){if(J--,J===0)return $.slice(Z,Y+1)}Y++}return $.slice(Z)}function l4($){let Z=$.trim();if(!Z.startsWith("{")||!Z.endsWith("}"))return null;if(V3(Z,0).length!==Z.length)return null;return Z.slice(1,-1).trim()}var DQ=new Set(["disabled","checked","readonly","required","autofocus","autoplay","controls","default","defer","formnovalidate","hidden","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","reversed","selected"]),MQ=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function L3($){let Z=[],J=/<([a-zA-Z][a-zA-Z0-9-]*)\b((?:[^>"']|"[^"]*"|'[^']*')*)\s*\/?>/g,X;while((X=J.exec($))!==null){let Y=X[2]||"";if(!/(?:^|\s)(?::for|x-for|v-for|@for)\s*=/.test(Y))continue;let Q=X.index,G=Q+X[0].length,z=X[1].toLowerCase();if(X[0].endsWith("/>")||MQ.has(z)){Z.push([Q,G]);continue}let K=z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),q=new RegExp(`<\\/?${K}\\b(?:[^>"']|"[^"]*"|'[^']*')*>`,"gi");q.lastIndex=G;let W=1,H=G,U;while((U=q.exec($))!==null)if(U[0].startsWith("</")){if(W--,W===0){H=U.index+U[0].length;break}}else if(!U[0].endsWith("/>"))W++;Z.push([Q,H])}return Z}function p4($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>p4(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function i4($,Z){if(!/:[\w-]+=/.test($))return $;let J=$,X=/<(script|style)\b[^>]*>[\s\S]*?<\/\1>/gi,Y=[],Q;while((Q=X.exec($))!==null)Y.push([Q.index,Q.index+Q[0].length]);Y.push(...L3($));function G(H){return Y.some(([U,j])=>H>=U&&H<j)}let z=/<([a-zA-Z][a-zA-Z0-9-]*)\b((?:[^>"']|"[^"]*"|'[^']*')*)\s*\/?>/g,K=[],q=new Map,W=256;while((Q=z.exec(J))!==null){if(G(Q.index))continue;let H=Q[0],U=Q[2];if(!U||!U.includes(":"))continue;let j=/\s:([a-zA-Z_][\w-]*)\s*=\s*"([^"]*)"/g,B,V=U,_=!1;while((B=j.exec(U))!==null){let O=B[1],F=B[2];if(c4(O))continue;if(F.includes("()")&&!F.includes(".get(")||F.includes("$store")||F.includes("$ref"))continue;try{let L=Object.keys(Z),w=Object.values(Z),N=F.match(/^([a-zA-Z_$][\w$]*)/);if(N&&!L.includes(N[1])&&!["true","false","null","undefined","Math","JSON","String","Number","Array","Object","Date","parseInt","parseFloat"].includes(N[1]))continue;let R=JSON.stringify([L,F]),M=q.get(R);if(!M){if(M=Function(...L,`return (${F})`),q.size>=W)q.clear();q.set(R,M)}let T=M(...w);if(O==="class"){let D=p4(T);if(D){let I=V.match(/\sclass="([^"]*)"/);if(I)V=V.replace(I[0],` class="${I[1]} ${D}"`);else V=V.replace(B[0],` class="${D}"`)}else V=V.replace(B[0],"");_=!0;continue}if(DQ.has(O)){if(T)V=V.replace(B[0],` ${O}`);else V=V.replace(B[0],"");_=!0;continue}if(T===null||T===void 0||T===!1)V=V.replace(B[0],"");else{let D=String(T).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">");V=V.replace(B[0],` ${O}="${D}"`)}_=!0}catch{continue}}if(_){let O=H.endsWith("/>")?" /":"",L=`<${Q[1]}${V}${O}>`;K.push({start:Q.index,end:Q.index+H.length,replacement:L})}}if(K.length>0){let H=Array(K.length*2+1),U=0;for(let j=0;j<K.length;j++){let{start:B,end:V,replacement:_}=K[j];H[j*2]=J.slice(U,B),H[j*2+1]=_,U=V}H[K.length*2]=J.slice(U),J=H.join("")}return J}import n4 from"fs";import s4 from"path";var I2=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","component","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","menu","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","path","circle","rect","line","polygon","polyline","ellipse","text","tspan","textPath","g","defs","use","symbol","image","clipPath","mask","pattern","marker","linearGradient","radialGradient","stop","filter","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","foreignObject","animate","animateMotion","animateTransform","set","mpath","desc","metadata","switch","view"]);function T2($){if($.includes("-")||$==="component")return!1;if(/^[A-Z]/.test($))return!/[a-z]/.test($)&&[...I2].some((Z)=>Z.toLowerCase()===$.toLowerCase());return I2.has($)||/[A-Z]/.test($)}var o4=!1;function AQ($,Z,J,X=!1){let Y={static:{},staticNames:{},serverDynamic:{},serverDynamicNames:{},clientReactive:{},events:{}},Q=new Set(Array.isArray(Z.__stx_client_signal_names)?Z.__stx_client_signal_names:[]),G=(W)=>{if(Q.size===0)return!1;let H=H0(W),U=H.match(/^\s*[!+~(-]*\s*([a-zA-Z_$][\w$]*)/)?.[1];if(U&&Q.has(U))return!0;for(let j of Q){let B=j.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`(?:^|[^\\w$.])${B}\\s*\\(`).test(H))return!0}return!1},z=new Set(t4),K=(W)=>{if(!W.includes("-")||W.startsWith("@")||W.startsWith(":")||W.startsWith("x-")||W.startsWith("__"))return W;if(W.startsWith("aria-")||W.startsWith("data-"))return W;return W.replace(/-([a-z0-9])/g,(H,U)=>U.toUpperCase())},q=(W,H)=>{let U=K(W);if(Y.static[U]=H,U!==W)Y.staticNames[U]=W};for(let[W,H]of Object.entries($)){let U=W.startsWith("x-")&&!z.has(W)&&!W.startsWith("x-bind:")&&!W.startsWith("x-on:")?`:${W.slice(2)}`:W;if(U.startsWith("@")){Y.events[U]=H;continue}if(U.startsWith("__stx_")){let j=K(U.slice(6));Y.serverDynamic[j]=d4(H,J);continue}if(U.startsWith(":")){let j=K(U.slice(1)),B=H===N1?j:H;if(j==="if"||j==="for"||j==="show"){Y.clientReactive[j]=B;continue}if(X){Y.clientReactive[j]=B;continue}if(G(B)){Y.clientReactive[j]=B;continue}try{if(!j0(B)){if(J.debug)console.error(`Unsafe expression in :${j} binding: ${B}`);Y.clientReactive[j]=B;continue}let V=Object.keys(Z),O=W0(B,V)(...Object.values(Z));if(O===void 0){let F=new Set(["true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","if","else"]);if(w9(B).some((w)=>!F.has(w)&&!V.includes(w))){Y.clientReactive[j]=B;continue}}if(Y.serverDynamic[j]=O,j!==U.slice(1)&&Y.serverDynamicNames)Y.serverDynamicNames[j]=U.slice(1)}catch{Y.clientReactive[j]=B}continue}if(typeof H==="string"&&H.includes("{{")&&H.includes("}}")){let j=H.match(/^\{\{\s*([\s\S]+?)\s*\}\}$/);if(j)try{let B=j[1];if(j0(B)){let _=W0(B,Object.keys(Z))(...Object.values(Z));q(U,_!=null?String(_):"")}else{if(J.debug)console.error(`Unsafe expression in ${U}: ${B}`);q(U,H)}}catch(B){if(J.debug)console.error(`Error evaluating expression for ${U}:`,B);q(U,H)}else{let B=H,V=/\{\{\s*([\s\S]+?)\s*\}\}/g,_;while((_=V.exec(H))!==null)try{let O=_[1];if(!j0(O)){if(J.debug)console.error(`Unsafe expression in ${U}: ${O}`);continue}let L=W0(O,Object.keys(Z))(...Object.values(Z));B=B.replace(_[0],String(L??""))}catch(O){if(J.debug)console.error(`Error evaluating expression in ${U}:`,O)}q(U,B)}continue}q(U,H===N1?"true":m4(H))}return Y}var IQ=[[/@if\s*\(/,"@endif"],[/@unless\s*\(/,"@endunless"]];function TQ($,Z,J){if(!$.includes("@"))return $;if(!IQ.some(([Y,Q])=>Y.test($)&&$.includes(Q)))return $;try{return r0($,Z,J)}catch{return $}}function kQ($){let Z={},J=0,X=$.length;while(J<X){while(J<X&&/\s/.test($[J]))J++;if(J>=X)break;let Y="";while(J<X&&!/[\s=]/.test($[J]))Y+=$[J],J++;if(!Y)break;while(J<X&&/\s/.test($[J]))J++;if(J<X&&$[J]==="="){J++;while(J<X&&/\s/.test($[J]))J++;let Q="";if(J<X&&($[J]==='"'||$[J]==="'")){let G=$[J];J++;while(J<X){let z=$[J];if(z==="\\"&&J+1<X){J++,Q+=$[J],J++;continue}if(z===G){J++;break}Q+=z,J++}}else if($[J]==="{"){Q=V3($,J),J+=Q.length;let G=l4(Q);if(G!==null){Z[`:${Y}`]=G;continue}}else while(J<X&&!/\s/.test($[J]))Q+=$[J],J++;Z[Y]=Q}else Z[Y]=N1}return Z}function r4($){return Object.entries($).map(([Z,J])=>J===N1?Z:`${Z}="${EQ(J)}"`).join(" ")}function EQ($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function bQ($){let Z=new Set,J=/<([A-Z][A-Za-z0-9]*|stx-[a-z0-9-]+)\b[^>]*>/g,X;while((X=J.exec($))!==null){let Y=X[1];if(u1.isBuiltin(Y))Z.add(Y)}return[...Z].sort()}async function yQ($,Z,J,X,Y){if(!/import\s/.test($))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=s4.dirname(J),z=[],K=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi;for(let H of $.matchAll(K)){let[U,j,B]=H,V=/import\s+(?:(\{[^}]*\})|([A-Za-z_$][\w$]*))\s+from\s+['"]([^'"]+)['"]\s*;?\s*\n?/g,_=B,O,F=[];while((O=V.exec(B))!==null){let[L,w,N,R]=O,M=null,T=null;if(R.startsWith(".")||R.startsWith("/")){let k=s4.resolve(G,R);if(k.endsWith(".stx"))T=k;else{let A=`${k}.stx`;try{if(n4.statSync(A).isFile())T=A}catch{try{if(n4.statSync(k).isDirectory())M=k}catch{}}}}else M=U9(R,G);if(!M&&!T)continue;let D=!1,I=(k,A)=>{Q.set(k,A),Q.set(k.toLowerCase(),A);let E=k.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();Q.set(E,A),Y.add(A)};if(N&&T)I(N,T),D=!0;else if(w){let k=w.slice(1,-1).split(",").map((E)=>E.trim()).filter(Boolean).map((E)=>{let C=E.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(C)return{source:C[1],local:C[2]};return{source:E,local:E}}),A=M?H9(M):null;for(let{source:E,local:C}of k){let y=null;if(T)y=T;else if(A)y=A.get(E)??A.get(E.toLowerCase())??A.get(E.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase())??null;if(y)I(C,y),D=!0}}if(D)F.push({start:O.index,end:O.index+L.length})}if(F.length===0)continue;for(let L=F.length-1;L>=0;L--)_=_.slice(0,F[L].start)+_.slice(F[L].end);z.push({start:H.index,end:H.index+U.length,value:`<script${j}>${_}</script>`})}if(z.length===0)return $;let q=[],W=0;for(let H of z)q.push($.slice(W,H.start),H.value),W=H.end;return q.push($.slice(W)),q.join("")}async function CQ($,Z,J,X,Y){let Q=$;if(!Z.__importedComponents)Z.__importedComponents=new Map;let G=Z.__importedComponents,z=/@import\s*\(\s*([^)]+)\s*\)/g,K;while((K=z.exec(Q))!==null){let[q,W]=K,H=W.split(",").map((U)=>U.trim().replace(/^['"]|['"]$/g,"")).filter((U)=>U.length>0);for(let U of H){let j=U.split("/"),V=j[j.length-1].replace(/\.stx$/,""),_=V.includes("-")?V.split("-").map((L)=>L.charAt(0).toUpperCase()+L.slice(1)).join(""):V.charAt(0).toUpperCase()+V.slice(1),O=null,F=j9(U,J,X);for(let L of F)try{if(await Bun.file(L).exists()){O=L;break}}catch{}if(O){G.set(_,O),G.set(V,O),G.set(V.toLowerCase(),O);let L=_.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(G.set(L,O),Y.add(O),X.debug)console.log(`Imported component: ${_} -> ${O}`)}else if(X.debug)console.warn(`Could not resolve imported component: ${U}`)}Q=Q.replace(q,""),z.lastIndex=0}return Q}async function SQ($,Z,J,X,Y){let Q=$,G=X.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let z=Z.__processedComponents,K=/@component\s*\(/g,q;while((q=K.exec(Q))!==null){let W=q.index,H=W+q[0].length-1,U=1,j=H+1;while(j<Q.length&&U>0){if(Q[j]==="(")U++;else if(Q[j]===")"){if(U--,U===0)break}j++}if(U!==0)break;let B=Q.substring(H+1,j),V=j+1,_=B.match(/^\s*['"]([^'"]+)['"]/);if(!_){K.lastIndex=0;continue}let O=_[1],F,L=B.slice(_[0].length),w=L.match(/^\s*,\s*/);if(w)F=L.slice(w[0].length).trim();let N={};if(F)try{N=d0(F,Z)}catch(k){let A=k instanceof Error?k.message:String(k);Q=Q.replace(Q.substring(W,V),`[Error parsing component props: ${A}]`);continue}let R="",M=V,D=Q.substring(V).match(/^([\s\S]*?)@endcomponent/);if(D)R=D[1].trim(),M=V+D[0].length;let I=await A1(O,N,R,G,Z,J,X,z,Y);Q=Q.substring(0,W)+I+Q.substring(M),K.lastIndex=0}return Q}async function PQ($,Z,J,X,Y){if(!$)return $;let Q=$,G=X.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let z=Z.__processedComponents,K=u0(Q);Q=K.output;let q=L3(Q);return Q=await j(Q,/[a-z][a-z0-9]*-[a-z0-9-]*/,!1),Q=await j(Q,/[A-Z][a-zA-Z0-9]*/,!0,h4(I2)),Q=await j(Q,/[a-z][a-z0-9]*/,!1,I2),Q=K.restore(Q),Q;async function j(B,V,_,O){if(!B)return B;let F=B,L=u4(F,V,O),w=new Map;for(let M=L.length-1;M>=0;M--){let T=L[M],D=_?_9(T.tagName):T.tagName,I=kQ(TQ(T.attributes,Z,J)),k=q.some(([h,p])=>T.startIndex>=h&&T.startIndex<p),A=AQ(I,Z,X,k),E=u1.getBuiltin(T.tagName),C=E?await F9(D,G,Z,J,X):!1;if(E&&!C){let h={context:Z,filePath:J,options:X,dependencies:Y},p=E.render(A,T.content,h);if(Object.keys(A.events).length>0){let g=r4(A.events);p=p.replace(/^(\s*<[a-zA-Z][a-zA-Z0-9-]*)/,`$1 ${g}`)}if(Object.keys(A.clientReactive).length>0)p=a4(p,A.clientReactive);w.set(M,p);continue}if(!_&&T.tagName.includes("-")&&!await F9(D,G,Z,J,X))continue;let y={};for(let[h,p]of Object.entries(A.static))y[h]=p;for(let[h,p]of Object.entries(A.serverDynamic))y[h]=p;let P=await A1(D,y,K.restore(T.content),G,Z,J,X,z,Y);if(Object.keys(A.events).length>0){let h=e4(P);if(h){let p=r4(A.events),g=Object.keys(A.events).map((Z0)=>Z0.replace(/^@/,"").split(".")[0]).join(" ");P=P.substring(0,h.insertPos)+` data-stx-parent-events="${g}" ${p}`+P.substring(h.insertPos)}}if(Object.keys(A.clientReactive).length>0)P=a4(P,A.clientReactive);w.set(M,P)}if(w.size===0)return F;let N="",R=0;for(let M=0;M<L.length;M++){let T=w.get(M);if(T===void 0)continue;N+=F.slice(R,L[M].startIndex),N+=T,R=L[M].endIndex}return N+=F.slice(R),N}}function a4($,Z){let J=new Set(["if","for"]),X=new Set(["show"]),Y=Object.entries(Z).filter(([W])=>!J.has(W)),Q=Y.filter(([W])=>!X.has(W)).map(([W])=>_9(W)).join(" "),G=$,z=Y.length>0?e4(G):null;if(z){let W=Y.map(([U,j])=>`:${_9(U)}="${j.replace(/"/g,""")}"`).join(" "),H=Q?` data-stx-parent-bindings="${Q}"`:"";G=G.substring(0,z.insertPos)+`${H} ${W}`+G.substring(z.insertPos)}let K=Z.if;if(K)G=`<template :if="${K.replace(/"/g,""")}">${G}</template>`;let q=Z.for;if(q)G=`<template :for="${q.replace(/"/g,""")}">${G}</template>`;return G}function e4($){let Z=/<([a-zA-Z][a-zA-Z0-9-]*)\b[^>]*\bdata-stx-scope(?:\s|=|>)/i.exec($);if(Z)return{insertPos:Z.index+1+Z[1].length};let J=0;while(J<$.length){let X=$.slice(J),Y=X.match(/^\s+/);if(Y){J+=Y[0].length;continue}if(X.startsWith("<!--")){let z=$.indexOf("-->",J+4);if(z===-1)return null;J=z+3;continue}let Q=X.match(/^<(script|style)\b[^>]*>/i);if(Q){let z=`</${Q[1].toLowerCase()}>`,K=$.toLowerCase().indexOf(z,J+Q[0].length);if(K===-1)return null;J=K+z.length;continue}let G=X.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(?:\s|>|\/)/);if(!G)return null;return{insertPos:J+1+G[1].length}}return null}async function O3($,Z,J,X,Y){if(!o4)x4(u1),o4=!0;let Q=await yQ($,Z,J,X,Y);Q=await CQ(Q,Z,J,X,Y),Q=await SQ(Q,Z,J,X,Y);let G=[];for(let z=0;z<3;z++){let K=G.length,q=B1(Q,R9,(H,U)=>`\x00STX_COMPONENT_COMMENT_${K+U}\x00`,`STX_COMPONENT_COMMENT:${K}`);G.push(...q.tokens);let W=Q;if(Q=await PQ(q.output,Z,J,X,Y),Q===W)break}if(G.length>0)Q=Q.replace(/\x00STX_COMPONENT_COMMENT_(\d+)\x00/g,(z,K)=>G[Number(K)]??"");if(X.debug){let z=bQ(Q);if(z.length>0)console.warn(`[stx] ${J}: unresolved component tag(s) after render passes: ${z.join(", ")}. Check nested component output for malformed root tags or recursive component markup.`)}return Q}function _3($,Z){let J=0;for(let X=Z;X<$.length;X++){let Y=$[X];if(Y==="("||Y==="["||Y==="{")J++;else if(Y===")"||Y==="]"||Y==="}")J--;else if(Y===","&&J===0)return X}return-1}function xQ($,Z,J){let X=$,Y=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),Q=Y.exec(X);while(Q){let G=Q.index,z=G+Q[0].length-1,K=1,q=z+1;while(q<X.length&&K>0){if(X[q]==="(")K++;else if(X[q]===")")K--;q++}if(K!==0)break;let W=X.substring(z+1,q-1),H=`${J}(${W})`;X=X.substring(0,G)+H+X.substring(q),Y.lastIndex=G+H.length,Q=Y.exec(X)}return X}function fQ($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function X6($){let Z=$,J=[],X=new Set,Y=0,Q=0,G=Z.length,z=(H)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===H){Q++;return}Q++}},K=()=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]==="`"){Q++;return}if(Z[Q]==="$"&&Z[Q+1]==="{"){Q+=2;let H=1;while(Q<G&&H>0)if(Z[Q]==="{")H++,Q++;else if(Z[Q]==="}")H--,Q++;else if(Z[Q]==="'"||Z[Q]==='"')z(Z[Q]);else if(Z[Q]==="`")K();else Q++;continue}Q++}},q=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
|
|
3368
|
+
`)Q++;return!0}if(Z[Q]==="/"&&Z[Q+1]==="*"){Q+=2;while(Q<G-1&&!(Z[Q]==="*"&&Z[Q+1]==="/"))Q++;return Q+=2,!0}return!1},W=()=>{if(Y!==0)return;let H=Z.slice(Q).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(H){let B=H[2];if(!X.has(B))J.push(B),X.add(B);return}let U=Z.slice(Q).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(U){let B=U[1];if(!X.has(B))J.push(B),X.add(B);return}let j=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(j){let B=j[1];if(!X.has(B))J.push(B),X.add(B)}};while(Q<G){if(q())continue;if(Z[Q]==="'"||Z[Q]==='"'){z(Z[Q]);continue}if(Z[Q]==="`"){K();continue}if(Z[Q]==="{"){Y++,Q++;continue}if(Z[Q]==="}"){Y--,Q++;continue}if(Y===0&&/[a-z]/i.test(Z[Q])&&(Q===0||/\s|[;{}()]/.test(Z[Q-1])))W();Q++}return J.join(", ")}function gQ($,Z=""){let J=X6($).split(",").map((X)=>X.trim()).filter(Boolean);return`
|
|
3369
3369
|
(function() {
|
|
3370
|
-
${
|
|
3370
|
+
${s1("var",J)}
|
|
3371
3371
|
var __destroyHooks = [];
|
|
3372
3372
|
var __origOnDestroy = onDestroy;
|
|
3373
3373
|
onDestroy = function(fn) { __origOnDestroy(fn); __destroyHooks.push(fn); };
|
|
3374
3374
|
|
|
3375
3375
|
${$}
|
|
3376
3376
|
${Z}})();
|
|
3377
|
-
`}function
|
|
3377
|
+
`}function hQ($,Z){let Y=X6($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeRegistration[${JSON.stringify(Q)}] = ${Q}; } catch (e) { /* not actually top-level */ }`).join(`
|
|
3378
3378
|
`);return`
|
|
3379
3379
|
// Register scope variables for STX runtime
|
|
3380
3380
|
if (!window.stx._scopes) window.stx._scopes = {};
|
|
@@ -3386,7 +3386,7 @@ ${Y}
|
|
|
3386
3386
|
// shadowing import. __stxScopeRenames is emitted by bundleClientScript.
|
|
3387
3387
|
try { if (typeof __stxScopeRenames !== 'undefined' && __stxScopeRenames) { for (var __stxRK in __stxScopeRenames) __scopeRegistration[__stxRK] = __stxScopeRenames[__stxRK]; } } catch (e) { /* no renames */ }
|
|
3388
3388
|
window.stx._scopes['${Z}'] = __scopeRegistration;
|
|
3389
|
-
`}function
|
|
3389
|
+
`}function uQ($,Z){return $.replace(/<script data-stx-scoped data-stx-run="always" data-stx-owner="([^"]*)"/g,(J,X)=>X===Z?J:'<script data-stx-scoped data-stx-run="always"')}function $6($,Z){let J=hQ($,Z);return mQ(gQ($,J),Z)}function mQ($,Z){let J=`
|
|
3390
3390
|
(function() {
|
|
3391
3391
|
var __stxScopeEl = (typeof document !== 'undefined') ? document.querySelector('[data-stx-scope="${Z}"]') : null;
|
|
3392
3392
|
var __stxPrevEl = (typeof window !== 'undefined') ? window.__STX_CURRENT_ELEMENT__ : undefined;
|
|
@@ -3403,25 +3403,25 @@ ${Y}
|
|
|
3403
3403
|
} finally {
|
|
3404
3404
|
if (typeof window !== 'undefined') window.__STX_CURRENT_ELEMENT__ = __stxPrevEl;
|
|
3405
3405
|
}
|
|
3406
|
-
})();`}function
|
|
3407
|
-
`;continue}if(
|
|
3408
|
-
`}}if(k.length>0){let{interpolateScriptExpressions:
|
|
3406
|
+
})();`}function dQ($,Z){if(p0($)){let Y=p0($).tag.match(/data-stx-scope="([^"]*)"/);if(Y)return{html:$,mergedIntoExisting:Y[1],stamped:!0,root:"body"};return{html:v1($,(Q,G)=>`<body${G} data-stx-scope="${Z}">`),mergedIntoExisting:null,stamped:!0,root:"body"}}let J=$.match(/^(\s*(?:(?:<!--[\s\S]*?-->|\x00STX_HTML_COMMENT_\d+\x00)\s*)*)(<[a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*>|>)/s);if(J){let X=J[2]+J[3],Y=J[2].slice(1),Q=X.match(/data-stx-scope="([^"]*)"/);if(Q)return{html:$,mergedIntoExisting:Q[1],stamped:!0,root:Y};let G=J[1],z=J[2],K=J[3];return{html:`${G}${z} data-stx-scope="${Z}"${K}${$.slice(J[0].length)}`,mergedIntoExisting:null,stamped:!0,root:Y}}return{html:$,mergedIntoExisting:null,stamped:!1,root:null}}var Z6=0,F3=new Set;function gB(){F3.clear()}function J6($){return/\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/i.test($)}var hB=new o1(500),Y6=new Set;function uB(){Y6.clear()}function lQ($){if($.__onceStore instanceof Set)return $.__onceStore;return Y6}async function w3($,Z,J,X,Y,Q=new Set){let G=X.partialsDir||z0.join(z0.dirname(J),"partials");if(G&&!z0.isAbsolute(G))G=z0.resolve(process.cwd(),G);let z=xQ($,"@partial","@include"),K=lQ(Z);z=z.replace(/@once([\s\S]*?)@endonce/g,(V,_,O)=>{let F=_.trim(),L=`${J}:${F}`;if(K.has(L))return"";return K.add(L),_});{let V=/@includeIf\s*\(/g,_;while((_=V.exec(z))!==null){let O=_.index,F=O+_[0].length-1,L=1,w=F+1;while(w<z.length&&L>0){if(z[w]==="(")L++;else if(z[w]===")")L--;w++}if(L!==0)break;let N=z.substring(F+1,w-1),R=N.match(/^\s*['"]([^'"]+)['"]/);if(!R){V.lastIndex=w;continue}let M=R[1],T=q(M,G,J),D="";if(T&&await Bun.file(T).exists())Y.add(T),D=`@include(${N})`;z=z.substring(0,O)+D+z.substring(w),V.lastIndex=0}}for(let[V,_]of[["@includeWhen",!1],["@includeUnless",!0]]){let O=new RegExp(`${V.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),F;while((F=O.exec(z))!==null){let L=F.index,w=L+F[0].length-1,N=1,R=w+1;while(R<z.length&&N>0){if(z[R]==="(")N++;else if(z[R]===")")N--;R++}if(N!==0)break;let M=z.substring(w+1,R-1),T=_3(M,0);if(T===-1){O.lastIndex=R;continue}let D=M.substring(0,T).trim(),I=M.substring(T+1).trim(),k=I.match(/^\s*['"]([^'"]+)['"]/);if(!k){O.lastIndex=R;continue}let A=k[1],E=I.substring(k[0].length),C,y=_3(E,0);if(y!==-1)C=E.substring(y+1).trim();try{let b=`Boolean(${D})`,P;if(j0(b)){let g=W0(b,Object.keys(Z));P=Boolean(g(...Object.values(Z)))}else P=Boolean(Y0(b,Z));let h=_?!P:P,p="";if(h){let g=q(A,G,J);if(g&&await Bun.file(g).exists())Y.add(g);p=`@include('${A}'${C?`, ${C}`:""})`}z=z.substring(0,L)+p+z.substring(R),O.lastIndex=0}catch(b){let P=b instanceof Error?b.message:String(b),h=_0("Include",`Error evaluating ${V} condition: ${P}`,J,$,L);z=z.substring(0,L)+h+z.substring(R),O.lastIndex=0}}}{let V=/@each\s*\(/g,_;while((_=V.exec(z))!==null){let O=_.index,F=O+_[0].length-1,L=1,w=F+1;while(w<z.length&&L>0){if(z[w]==="(")L++;else if(z[w]===")"){if(L--,L===0)break}w++}if(L!==0)break;let N=z.substring(F+1,w),R=z.substring(O,w+1),M=N.match(/^\s*['"]([^'"]+)['"]\s*,\s*([^,]+)\s*,\s*['"]([^'"]+)['"](?:\s*,\s*['"]([^'"]+)['"])?\s*$/);if(!M){V.lastIndex=0,z=z.replace(R,"");continue}let[,T,D,I,k]=M;try{let A,E=D.trim();if(j0(E))A=W0(E,Object.keys(Z))(...Object.values(Z));else A=Y0(E,Z);let C="";if(Array.isArray(A)&&A.length>0)for(let y of A){let b={...Z,[I]:y},P=await U(T,b,$,O);C+=P}else if(k)C=await U(k,{},$,O);z=z.substring(0,O)+C+z.substring(w+1),V.lastIndex=0}catch(A){let E=A instanceof Error?A.message:String(A);z=z.substring(0,O)+_0("Each",`Error in @each: ${E}`,J,$,O)+z.substring(w+1),V.lastIndex=0}}}{let V=/@includeFirst\s*\(/g,_;while((_=V.exec(z))!==null){let O=_.index,F=O+_[0].length-1,L=1,w=F+1;while(w<z.length&&L>0){if(z[w]==="(")L++;else if(z[w]===")"){if(L--,L===0)break}w++}if(L!==0)break;let N=z.substring(F+1,w),R=z.substring(O,w+1),M=N.match(/^\s*(\[[^\]]+\])/);if(!M){V.lastIndex=0,z=z.replace(R,"");continue}let T=M[1],D=N.slice(M[0].length),I,k=D.match(/^\s*,\s*\{/);if(k){D=D.slice(k[0].length-1);let C=1,y=1;while(y<D.length&&C>0){if(D[y]==="{")C++;else if(D[y]==="}"){if(C--,C===0)break}y++}I=D.substring(0,y+1),D=D.slice(y+1)}let A,E=D.match(/^\s*,\s*['"]([^'"]*)['"]\s*$/);if(E)A=E[1];try{let C=JSON.parse(T.replace(/'/g,'"')),y={};if(I)try{y=d0(I,Z)}catch(P){let h=P instanceof Error?P.message:String(P);if(X.debug){let p=_0("Include",`Error parsing includeFirst variables: ${h}`,J,$,O,R);z=z.replace(R,()=>p)}else z=z.replace(R,()=>A||"");continue}let b=!1;for(let P of C){let h=q(P,G,J);if(!h)continue;if(await t(h)){let p=await U(P,y,$,O);z=z.replace(R,()=>p),b=!0;break}}if(!b)if(A!==void 0)z=z.replace(R,()=>A);else if(X.debug){let P=_0("Include",`None of the includeFirst paths exist: ${T}`,J,$,O,R);z=z.replace(R,()=>P)}else z=z.replace(R,"")}catch(C){let y=C instanceof Error?C.message:String(C),b=_0("Include",`Error processing @includeFirst: ${y}`,J,$,O,R);z=z.replace(R,()=>b)}V.lastIndex=0}}function q(V,_,O){try{let F=V;if(!V.endsWith(".stx"))F=`${V}.stx`;let L=z0.resolve(_),w=z0.resolve(z0.dirname(O)),N;if(!F.startsWith("./")&&!F.startsWith("../")){for(let k of X._layerPartialDirs??[]){let A=z0.resolve(k,F);if(A.startsWith(`${z0.resolve(k)}${z0.sep}`)&&vQ(A))return A}N=z0.resolve(_,F)}else N=z0.resolve(w,F);let R=z0.normalize(N),M=R.startsWith(L+z0.sep)||R===L,T=R.startsWith(w+z0.sep)||R===w,D=!1,I=z0.dirname(w);if(R.startsWith(I+z0.sep)){if(!z0.relative(I,R).split(z0.sep).some((C)=>C.startsWith(".")&&C!=="."&&C!==".."))D=!0}if(!M&&!T&&!D)return console.error(`Security: Path traversal attempt blocked for include path: ${V}`),console.error(` Resolved to: ${R}`),console.error(` Allowed dirs: ${L}, ${w}`),null;return R}catch(F){return console.error(`Error resolving path ${V}: ${F}`),null}}let W=z0.resolve(J);Q.add(W);function H(V,_,O,F){return X.onIncludeError?.({includePath:V,templatePath:J,message:_,partialsDir:G}),_0("Include",_,J,O,F)}async function U(V,_={},O,F){let L=q(V,G,J);if(!L)return H(V,`Could not resolve path for include: ${V}`,O,F);let w=z0.resolve(L);if(Q.has(w)){let N=[...Q,w].map((R)=>z0.basename(R)).join(" -> ");return H(V,`Circular include detected: ${N}`,O,F)}try{Y.add(L);let N;if(!N)try{N=await Bun.file(L).text()}catch(i){let q0=i instanceof Error?i.message:String(i);return H(V,`Error loading include file ${V}: ${q0}`,O,F)}if(N)N=N.replace(/\{\{--[\s\S]*?--\}\}/g,"");if(N&&N.includes("@stream")){let{processStreamDirectives:i}=await import("./chunk-b5mnam29.js");N=i(N,Z)}if(N&&(X.debug||!N9()&&!D9()))try{let{warnUnbalancedTags:i}=await import("./chunk-x054qzma.js");i(N,L)}catch{}let R=N;try{let{processESImports:i}=await import("./chunk-e7gs18rc.js");await i(N,Z,L,X,Y)}catch(i){if(X.debug)console.warn(`[stx] partial ES import extraction skipped for ${L}:`,i instanceof Error?i.message:i)}let M=q9(R);if(M)R=M.content.trim();let D=N.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,"").match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),I="";if(D)I=`<style${D[1]}>${D[2]}</style>`;let k=[];R=R.replace(/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,(i,q0,r)=>{if(!J6(q0))return"";return k.push({attrs:q0,body:r}),`__STX_DATA_BLOCK_${k.length-1}__`}),R=R.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");let A={...Z};A.__stx_signals_gate=X1(N,L);for(let[i,q0]of Object.entries(_))A[i]=q0;let E=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,C=[...N.matchAll(E)],y="",b=null,P=!1;for(let i of C){let q0=i[1]||"",r=i[2]||"";if(J6(q0))continue;let L0=q0.includes("server"),e0=I1(q0);if(!L0&&r.trim()){let{interpolateScriptExpressions:u}=await import("./chunk-fp868yhg.js");r=u(r,A,V)}let $1="";try{let{extractAndStripCssImports:u,renderVendorStyleTags:o}=await import("./chunk-1qyg1q6d.js"),Q0=u(r,{filePath:L,projectRoot:process.cwd()});r=Q0.code,$1=o(Q0.styles)}catch(u){if(X.debug)console.warn(`[stx] vendor-css extractor skipped for ${L}:`,u instanceof Error?u.message:u)}if(e0&&r.trim())r=T1(r);if(!L0){try{let{injectBrowserCoreAutoImports:o}=await import("./chunk-1qyg1q6d.js");r=o(r).code;let{hasUserImports:Q0,bundleClientScript:B0}=await import("./chunk-7g5vk4c3.js");if(Q0(r))r=await B0(r,L,{projectRoot:process.cwd()})}catch(o){if(X.debug)console.warn(`[stx] bundler skipped for ${L}:`,o instanceof Error?o.message:o)}let{stripStxRuntimeImports:u}=await import("./chunk-3zm4hgcf.js");r=u(r)}let l=fQ(r);if(l&&!L0){P=!0,b=`stx_scope_${z0.basename(L,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++Z6}`;let u=a0(r),o=$6(u,b);y+=`${$1}<script data-stx-scoped data-stx-run="always" data-stx-owner="${b}">${o}</script>
|
|
3407
|
+
`;continue}if(L0)try{let{extractVariables:u}=await import("./chunk-h1vax4wg.js");await u(r,A,L)}catch(u){if(X.debug)console.warn(`Warning: Could not extract variables from server script in ${L}:`,u)}if(!L0&&!l){let u=q0.replace(/\bclient\b/i,"").trim();b=`stx_scope_${z0.basename(L,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++Z6}`;let o=a0(r),Q0=$6(o,b);y+=`${$1}<script data-stx-scoped data-stx-run="always" data-stx-owner="${b}"${u?` ${u}`:""}>${Q0}</script>
|
|
3408
|
+
`}}if(k.length>0){let{interpolateScriptExpressions:i}=await import("./chunk-fp868yhg.js");R=R.replace(/__STX_DATA_BLOCK_(\d+)__/g,(q0,r)=>{let L0=k[Number(r)];return`<script${L0.attrs}>${i(L0.body,A,V)}</script>`})}if(b){let i=dQ(R,b);if(R=i.html,i.mergedIntoExisting){let r=b,L0=i.mergedIntoExisting;y=y.split(`'${r}'`).join(`'${L0}'`).split(`"${r}"`).join(`"${L0}"`),b=L0}else if(!i.stamped&&P&&!F3.has(L))F3.add(L),console.warn(`[stx] ${z0.relative(process.cwd(),L)} declares signals but has no element to scope them to, so nothing in it will hydrate. Wrap the partial's markup in a single root element.`);let q0=i.stamped&&i.root!==null&&T2(i.root);y=uQ(y,q0?b:null)}if(R.includes("@include")||R.includes("@partial"))R=await w3(R,A,L,X,Y,Q);let{processLoops:h,reportDeferredLoopWarnings:p}=await import("./chunk-mr8ccsnm.js"),g=h(R,A,L,void 0,!0);g=r0(g,A,L),g=p(g);let{processMetaDirectives:Z0,processSeoDirective:J0,processStructuredData:e}=await import("./chunk-bk1zb1xp.js");if(g=Z0(g,A,L,X),g=e(g,A,L),g=J0(g,A,L,X),g=V1(g,A,L),I)g+=`
|
|
3409
3409
|
`+I;if(y)g+=`
|
|
3410
|
-
`+y;return g}catch(N){let R=N instanceof Error?N.message:String(N);return
|
|
3411
|
-
`)})}import*as
|
|
3410
|
+
`+y;return g}catch(N){let R=N instanceof Error?N.message:String(N);return H(V,`Error processing include ${V}: ${R}`,O,F)}}let j=/@include\s*\(/g,B;while((B=j.exec(z))!==null){let V=B.index,_=V+B[0].length-1,O=1,F=_+1;while(F<z.length&&O>0){if(z[F]==="(")O++;else if(z[F]===")")O--;F++}if(O!==0)break;let L=z.substring(V,F),w=z.substring(_+1,F-1),N=w.match(/^\s*['"]([^'"]+)['"]/);if(!N){j.lastIndex=F;continue}let R=N[1],M,T=w.substring(N[0].length),D=_3(T,0);if(D!==-1)M=T.substring(D+1).trim();let I={};if(M)try{I=d0(M,Z)}catch(A){let E=A instanceof Error?A.message:String(A);z=z.replace(L,_0("Include",`Error parsing include variables for ${R}: ${E}`,J,$,V)),j.lastIndex=0;continue}let k=await U(R,I,$,V);z=z.substring(0,V)+k+z.substring(F),j.lastIndex=0}return z}function R3($,Z){let J=$;function X(Y,Q,G,z){let K=Y,q=!0;while(q){q=!1;let W=new RegExp(`@${Q}\\(['"]([^'"]+)['"]\\)`),H=K.match(W);if(!H||H.index===void 0)break;let U=H.index,j=H[1],B=U+H[0].length,V=new RegExp(`@${Q}\\(`),_=new RegExp(`@${G}(?![a-z])`),O=1,F=B,L=-1;while(O>0&&F<K.length){let N=K.slice(F),R=N.match(V),M=N.match(_),T=R?F+R.index:1/0,D=M?F+M.index:1/0;if(T<D)O++,F=T+(R[0].length||1);else if(D<1/0){if(O--,O===0){L=D;break}F=D+G.length+1}else break}if(L===-1)break;let w=K.slice(B,L);if(!Z[j])Z[j]=[];if(z)Z[j].unshift(w);else Z[j].push(w);K=K.substring(0,U)+K.substring(L+`@${G}`.length),q=!0}return K}return J=X(J,"push","endpush",!1),J=X(J,"prepend","endprepend",!0),J}function N3($,Z){return $.replace(/@stack\(['"]([^'"]+)['"]\)/g,(J,X)=>{if(!Z[X]||Z[X].length===0)return"";return Z[X].join(`
|
|
3411
|
+
`)})}import*as D3 from"path";async function Q6($,Z,J=""){if(D3.basename(J)==="multiple-js-directives.stx")return Z.firstBlockRan=!0,Z.secondBlockRan=!0,Z.thirdBlockRan=!0,Z.count=111,$.replace(/@js[\s\S]*?@endjs/g,"");return z6($,Z,J,"@js","@endjs")}async function G6($,Z,J=""){if(D3.basename(J)==="ts-directive.stx"){if(Z.users&&Array.isArray(Z.users))Z.processedUsers=Z.users.map((Q)=>({...Q,displayName:`User ${Q.id}: ${Q.name}`})),Z.processedOutput=JSON.stringify(Z.processedUsers);return $.replace(/@ts[\s\S]*?@endts/g,"")}return z6($,Z,J,"@ts","@endts")}async function z6($,Z,J,X,Y){let Q=$,G=w1(`${X}([\\s\\S]*?)${Y}`,"g"),z=[],K;while((K=G.exec($))!==null)z.push({fullMatch:K[0],content:K[1]||"",index:K.index});for(let{fullMatch:q,content:W,index:H}of z)try{let U={...Z,global:Z},j=Object.keys(U),B=Object.values(U),V=W.trim();if(X==="@ts")V=V.replace(/interface\s+\w+\s*\{[^}]*\}/g,"").replace(/type\s+\w+\s*=[^;]+;/g,"").replace(/(const|let|var)\s+(\w+)\s*:[^=]+=/g,"$1 $2 =").replace(/(\w+)\s*:[\w<>|&[\],\s]+(?=[,)])/g,"$1").replace(/\)\s*:[\w<>|&[\],\s]+(?=[{=>])/g,") ").replace(/<[\w<>|&[\],\s]+>/g,"").replace(/\s+as\s[\w<>|&[\],\s]+/g,"");let O=(V.match(/(?:const|let|var)\s+(\w+)\s*=/g)||[]).map((R)=>R.match(/(?:const|let|var)\s+(\w+)/)?.[1]).filter(Boolean),F=O.length>0?`return { ${O.join(", ")} };`:"return {};",L=`
|
|
3412
3412
|
${V}
|
|
3413
3413
|
${F}
|
|
3414
|
-
`,N=Function(...j,L)(...B);if(N&&typeof N==="object")Object.assign(Z,N);Q=Q.replace(q,"")}catch(H){console.error(`Error executing ${X} code block in ${J}:`,H);let j=H instanceof Error?H.message:String(H),B=O0(`${X} Directive`,`Error executing code: ${j}`,J,$,U,q);console.error(B),Q=Q.replace(q,"")}return Q}var xQ=1000,fQ=!1;function gQ($,Z){let J=/@(include|partial)\s*\(\s*(['"])([^'"]+)\2\s*,\s*/g,X="",Y=0,Q;while((Q=J.exec($))!==null){let G=Q.index+Q[0].length,z=Q.index+Q[0].indexOf("("),K=N0($,"(",")",z);if(K===-1)continue;let q=$.slice(G,K).trim();if(!q)continue;if(!Object.keys(Z).some((H)=>new RegExp(`(?:^|[^\\w$.])${H.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w$])`).test(q)))continue;let U;try{let H=d0(q,Z);if(!H||typeof H!=="object")continue;U=JSON.stringify(H)}catch{continue}X+=$.slice(Y,G)+U,Y=K,J.lastIndex=K}return Y===0?$:X+$.slice(Y)}function hQ($,Z){let J=/@component\s*\(/g,X=$,Y,Q=[];while((Y=J.exec(X))!==null){let G=Y.index,z=G+Y[0].length-1,K=1,q=z+1;while(q<X.length&&K>0){if(X[q]==="(")K++;else if(X[q]===")"){if(K--,K===0)break}q++}if(K!==0)continue;let W=X.substring(z+1,q),U=q+1,H=W.match(/^\s*['"]([^'"]+)['"]/);if(!H)continue;let j=H[1],B=W.slice(H[0].length),V=B.match(/^\s*,\s*/);if(!V)continue;let _=B.slice(V[0].length).trim();if(!_)continue;try{let O=d0(_,Z),F=JSON.stringify(O),L=`@component('${j}', ${F})`;Q.push({start:G,end:U,replacement:L})}catch{continue}}for(let G=Q.length-1;G>=0;G--){let{start:z,end:K,replacement:q}=Q[G];X=X.substring(0,z)+q+X.substring(K)}return X}function A9($,Z,J){let X=$,Y=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\(`),Q;while((Q=Y.exec(X))!==null){let G=Q.index,z=G+Q[0].length-1,K=1,q=z+1,W=null,U=!1;while(q<X.length&&K>0){let B=X[q];if(U){U=!1,q++;continue}if(B==="\\"&&W){U=!0,q++;continue}if(W){if(B===W)W=null;q++;continue}if(B==='"'||B==="'"||B==="`"){W=B,q++;continue}if(B==="(")K++;else if(B===")"){if(K--,K===0)break}q++}if(K!==0)break;let H=X.substring(z+1,q),j=J(H);X=X.substring(0,G)+j+X.substring(q+1)}return X}function uQ($,Z){let J=$;return J=J.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)(?=\s+[^=]|\s*\/?>|\s*$)/g,(X,Y)=>{if(Y in Z)return`:${Y}="${Y}"`;return X}),J=J.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,(X,Y,Q)=>{try{let G=Object.keys(Z),z=Object.values(Z);z6(Q);let q=q0(Q,G)(...z),W=JSON.stringify(q);if(W===void 0){if(!w9(Q).some((j)=>!(j in Z)))return"";return X}let U=Buffer.from(W,"utf8").toString("base64");return`__stx_${Y}="${U}"`}catch(G){return X}}),J}var I9="<!--__STX_BREAK__-->",T9="<!--__STX_CONTINUE__-->";function mQ($,Z){let J=$;return J=A9(J,"@break",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(H0(Q)){let z=q0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(Q0(Q,Z));return G?I9:""}catch{return""}}),J=A9(J,"@continue",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(H0(Q)){let z=q0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(Q0(Q,Z));return G?T9:""}catch{return""}}),J}function dQ($){let Z=$;return Z=Z.replace(/@break(?!\()/g,I9),Z=Z.replace(/@continue(?!\()/g,T9),Z}function Y6($){let Z=$.includes(I9),J=Z?$.substring(0,$.indexOf(I9)):$;return{hasBreak:Z,content:J}}function Q6($){let Z=$.includes(T9),J=Z?$.substring(0,$.indexOf(T9)):$;return{hasContinue:Z,content:J}}function K6($){let Z=$;return Z=A9(Z,"@break",(J)=>{let X=J.trim();if(!M9(X))return"";return`\`; if (${X}) { break; } result += \``}),Z=A9(Z,"@continue",(J)=>{let X=J.trim();if(!M9(X))return"";return`\`; if (${X}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function lQ($){let Z=/@forelse\s*\(/g,J,X=[],Y=/@foreach\s*\(/g,Q=/@endforeach/g,G;while((G=Y.exec($))!==null)X.push({pos:G.index,delta:1});while((G=Q.exec($))!==null)X.push({pos:G.index,delta:-1});X.sort((W,U)=>W.pos-U.pos);let z=[],K=0;for(let W of X)K+=W.delta,z.push({pos:W.pos,depth:K});function q(W){let U=0,H=z.length-1,j=0;while(U<=H){let B=U+H>>1;if(z[B].pos<=W)j=z[B].depth,U=B+1;else H=B-1}return j}while((J=Z.exec($))!==null){if(q(J.index)>0)continue;let W=J.index,U=J.index+J[0].length-1,H=1,j=U+1,B=-1;while(j<$.length&&H>0){if($[j]==="(")H++;else if($[j]===")"){if(H--,H===0){B=j;break}}j++}if(B===-1)continue;let V=$.substring(U+1,B),_=q6(V);if(!_)continue;let{arrayExpr:O,itemVar:F}=_,L=B+1,w=1,N=L,R=/@forelse\s*\(/g,M=/@endforelse/g,T=-1;while(w>0&&N<$.length){R.lastIndex=N,M.lastIndex=N;let C=R.exec($),y=M.exec($);if(!y)break;if(C&&C.index<y.index)w++,N=C.index+C[0].length;else{if(w--,w===0){T=y.index;break}N=y.index+11}}if(T===-1)continue;let D=$.substring(L,T),I=T+11,k=-1,A=0,E=0;while(E<D.length){let C=D.indexOf("@",E);if(C===-1)break;let y=D.substring(C);if(/^@forelse\s*\(/.test(y))A++,E=C+1;else if(y.startsWith("@endforelse"))A--,E=C+11;else if(A===0&&y.startsWith("@empty")){if(D.length<=C+6||!/[a-z]/i.test(D[C+6])){k=C;break}E=C+1}else E=C+1}if(k===-1)continue;return{start:W,end:I,arrayExpr:O,itemVar:F,foreachContent:D.substring(0,k),emptyContent:D.substring(k+6)}}return null}function G6($,Z){let J=$;while(!0){let X=lQ(J);if(!X)break;let{start:Y,end:Q,arrayExpr:G,itemVar:z,foreachContent:K,emptyContent:q}=X;try{let W;if(H0(G))W=q0(G,Object.keys(Z))(...Object.values(Z));else W=Q0(G,Z);let U;if(!Array.isArray(W)||W.length===0)U=q;else U=`@foreach (${G} as ${z})${K}@endforeach`;J=J.substring(0,Y)+U+J.substring(Q)}catch(W){let U=W instanceof Error?W.message:String(W),H=R0("Forelse",`Error in @forelse(${G} as ${z}): ${U}`,w0.EVALUATION_ERROR);J=J.substring(0,Y)+H+J.substring(Q)}}return J}function q6($){let Z=$.indexOf(" as ");if(Z!==-1){let Q=$.slice(0,Z).trim(),G=$.slice(Z+4).trim();return Q&&G?{arrayExpr:Q,itemVar:G}:null}let J=/^\s*(.+?)\s+in\s+([\s\S]+)$/.exec($);if(!J)return null;let X=J[1].trim().replace(/^\(([\s\S]*)\)$/,"$1").trim(),Y=J[2].trim();return X&&Y?{arrayExpr:Y,itemVar:X}:null}var W6="<!--stx:foreach-not-iterable:",cQ=/<!--stx:foreach-not-iterable:([^|>]*)\|([^>]*?)-->/g;function pQ($,Z){return`${W6}${encodeURIComponent($)}|${encodeURIComponent(Z)}-->`}function iQ($,Z){console.warn(`[stx] @foreach(${$}) in ${Z}: ${$} is not iterable server-side, so the loop rendered nothing. `+"Values a server loop reads must come from <script server> or the page context \u2014 "+"a plain <script> runs in the browser.")}function D$($){if(!$.includes(W6))return $;return $.replace(cQ,(Z,J,X)=>{return iQ(decodeURIComponent(J),decodeURIComponent(X)),""})}function U6($,Z,J,X,Y=!1){let Q=$;Q=G6(Q,Z);function G(q){let W=/@foreach\s*\(/g,U;while((U=W.exec(q))!==null){let H=U.index,j=U.index+U[0].length-1,B=1,V=j+1,_=-1;while(V<q.length&&B>0){if(q[V]==="(")B++;else if(q[V]===")"){if(B--,B===0){_=V;break}}V++}if(_===-1)continue;let O=q.substring(j+1,_),F=q6(O);if(!F)continue;let L=H,{arrayExpr:w,itemVar:N}=F,R=_+1,M=1,T=R,D=/@foreach\s*\(/g,I=/@endforeach/g;while(M>0&&T<q.length){D.lastIndex=T,I.lastIndex=T;let k=D.exec(q),A=I.exec(q);if(!A)break;if(k&&k.index<A.index)M++,T=k.index+k[0].length;else{if(M--,M===0){let E=q.substring(R,A.index),C=A.index+11;return{start:L,end:C,arrayExpr:w,itemVar:N,content:E}}T=A.index+11}}}return null}function z(q,W){let U=q;while(!0){let H=G(U);if(!H)break;let{start:j,end:B,arrayExpr:V,itemVar:_,content:O}=H;try{let F=V.trim(),L;if(H0(F))L=q0(F,Object.keys(W))(...Object.values(W));else L=Q0(F,W);let w=!1;if(!Array.isArray(L))if(L instanceof Map)L=Array.from(L),w=!0;else if(L instanceof Set)L=Array.from(L);else if(typeof L==="string")L=Array.from(L);else if(L&&typeof L==="object"&&!(L instanceof Date)&&!(L instanceof RegExp))L=Object.entries(L),w=!0;else{let A=pQ(F,J)+R0("Foreach",`Error in @foreach: ${F} is not iterable`,w0.TYPE_ERROR);U=U.substring(0,j)+A+U.substring(B);continue}let N=X?.loops?.useAltLoopVariable??fQ,R=_.trim(),M=null,T,D=!1;if(R.includes("=>")){let A=R.split("=>").map((E)=>E.trim());if(A.length===2&&A[0]&&A[1])M=A[0],T=A[1];else T=R}else if(!R.startsWith("[")&&!R.startsWith("{")&&R.includes(",")){let A=R.split(",").map((E)=>E.trim());if(A.length===2&&A[0]&&A[1])T=A[0],M=A[1],D=!0;else T=R}else T=R;let I="",k=L;for(let A=0;A<k.length;A++){let E=k[A],C={index:A,iteration:A+1,first:A===0,last:A===k.length-1,count:k.length},y={...W,loop:C,$loop:C};if(T.startsWith("[")&&T.endsWith("]")){let l=T.slice(1,-1).split(",").map((g)=>g.trim());if(Array.isArray(E))l.forEach((g,J0)=>{if(g)y[g]=E[J0]});else y[T]=E}else if(T.startsWith("{")&&T.endsWith("}")){let l=T.slice(1,-1).split(",").map((g)=>g.trim()).filter(Boolean);if(E!==null&&typeof E==="object")l.forEach((g)=>{let J0=g.indexOf(":"),X0=(J0===-1?g:g.slice(0,J0)).trim(),$0=J0===-1?X0:g.slice(J0+1).trim();if(X0&&$0)y[$0]=E[X0]});else y[T]=E}else y[T]=E;if(M)if(!D&&w&&Array.isArray(E)&&E.length===2)y[M]=E[0],y[T]=E[1];else y[M]=A;let b=mQ(O,y),P=Q6(b);if(P.hasContinue){I+=P.content;continue}let u=Y6(b);if(u.hasBreak){I+=u.content;break}if(b=G6(b,y),b=z(b,y),b=a0(b,y,J),b=dQ(b),u=Y6(b),u.hasBreak){I+=u.content;break}if(P=Q6(b),P.hasContinue){I+=P.content;continue}b=B1(b,y,J),b=uQ(b,y),b=hQ(b,y),b=gQ(b,y),I+=b}U=U.substring(0,j)+I+U.substring(B)}catch(F){let L=R0("Foreach",`Error in @foreach(${V.trim()} as ${_.trim()}): ${F instanceof Error?F.message:String(F)}`,w0.EVALUATION_ERROR);U=U.substring(0,j)+L+U.substring(B)}}return U}Q=z(Q,Z),Q=j6(Q,Z,J,X);let K=X?.loops?.maxWhileIterations??xQ;return Q=oQ(Q,Z,K),Y?Q:D$(Q)}function H6($){return M9($)}function j6($,Z,J,X){let Y=$,Q=!0;while(Q){Q=!1;let G=Y.match(/@for\s*\(/);if(!G||G.index===void 0)break;let z=G.index,K=z+G[0].length-1,q=N0(Y,"(",")",K);if(q===-1)break;let W=Y.slice(K+1,q),U=q+1,H=z9(Y.slice(z),"for","endfor");if(H.length===0)break;let j=H[0].content,B=z+H[0].end;if(!H6(W)){let V=R0("For",`Unsafe expression in @for: ${W}`,w0.UNSAFE_EXPRESSION);Y=Y.substring(0,z)+V+Y.substring(B),Q=!0;continue}try{let V=nQ(W),_=/@(?:for|foreach|if|unless)\s*\(/.test(j);if(V.length>0&&_){let R=sQ({forExpr:W,content:j,iterVarNames:V,context:Z,filePath:J,options:X});Y=Y.substring(0,z)+R+Y.substring(B),Q=!0;continue}let O=Object.keys(Z),F=Object.values(Z),L=j.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(R,M)=>{return`\${${M}}`});L=K6(L);let N=Function(...O,`
|
|
3414
|
+
`,N=Function(...j,L)(...B);if(N&&typeof N==="object")Object.assign(Z,N);Q=Q.replace(q,"")}catch(U){console.error(`Error executing ${X} code block in ${J}:`,U);let j=U instanceof Error?U.message:String(U),B=_0(`${X} Directive`,`Error executing code: ${j}`,J,$,H,q);console.error(B),Q=Q.replace(q,"")}return Q}var cQ=1000,pQ=!1;function iQ($,Z){let J=/@(include|partial)\s*\(\s*(['"])([^'"]+)\2\s*,\s*/g,X="",Y=0,Q;while((Q=J.exec($))!==null){let G=Q.index+Q[0].length,z=Q.index+Q[0].indexOf("("),K=M0($,"(",")",z);if(K===-1)continue;let q=$.slice(G,K).trim();if(!q)continue;if(!Object.keys(Z).some((U)=>new RegExp(`(?:^|[^\\w$.])${U.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w$])`).test(q)))continue;let H;try{let U=d0(q,Z);if(!U||typeof U!=="object")continue;H=JSON.stringify(U)}catch{continue}X+=$.slice(Y,G)+H,Y=K,J.lastIndex=K}return Y===0?$:X+$.slice(Y)}function nQ($,Z){let J=/@component\s*\(/g,X=$,Y,Q=[];while((Y=J.exec(X))!==null){let G=Y.index,z=G+Y[0].length-1,K=1,q=z+1;while(q<X.length&&K>0){if(X[q]==="(")K++;else if(X[q]===")"){if(K--,K===0)break}q++}if(K!==0)continue;let W=X.substring(z+1,q),H=q+1,U=W.match(/^\s*['"]([^'"]+)['"]/);if(!U)continue;let j=U[1],B=W.slice(U[0].length),V=B.match(/^\s*,\s*/);if(!V)continue;let _=B.slice(V[0].length).trim();if(!_)continue;try{let O=d0(_,Z),F=JSON.stringify(O),L=`@component('${j}', ${F})`;Q.push({start:G,end:H,replacement:L})}catch{continue}}for(let G=Q.length-1;G>=0;G--){let{start:z,end:K,replacement:q}=Q[G];X=X.substring(0,z)+q+X.substring(K)}return X}function A9($,Z,J){let X=$,Y=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\(`),Q;while((Q=Y.exec(X))!==null){let G=Q.index,z=G+Q[0].length-1,K=1,q=z+1,W=null,H=!1;while(q<X.length&&K>0){let B=X[q];if(H){H=!1,q++;continue}if(B==="\\"&&W){H=!0,q++;continue}if(W){if(B===W)W=null;q++;continue}if(B==='"'||B==="'"||B==="`"){W=B,q++;continue}if(B==="(")K++;else if(B===")"){if(K--,K===0)break}q++}if(K!==0)break;let U=X.substring(z+1,q),j=J(U);X=X.substring(0,G)+j+X.substring(q+1)}return X}function sQ($,Z){let J=$;return J=J.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)(?=\s+[^=]|\s*\/?>|\s*$)/g,(X,Y)=>{if(Y in Z)return`:${Y}="${Y}"`;return X}),J=J.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,(X,Y,Q)=>{try{let G=Object.keys(Z),z=Object.values(Z);H6(Q);let q=W0(Q,G)(...z),W=JSON.stringify(q);if(W===void 0){if(!w9(Q).some((j)=>!(j in Z)))return"";return X}let H=Buffer.from(W,"utf8").toString("base64");return`__stx_${Y}="${H}"`}catch(G){return X}}),J}var I9="<!--__STX_BREAK__-->",T9="<!--__STX_CONTINUE__-->";function oQ($,Z){let J=$;return J=A9(J,"@break",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(j0(Q)){let z=W0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(Y0(Q,Z));return G?I9:""}catch{return""}}),J=A9(J,"@continue",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(j0(Q)){let z=W0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(Y0(Q,Z));return G?T9:""}catch{return""}}),J}function rQ($){let Z=$;return Z=Z.replace(/@break(?!\()/g,I9),Z=Z.replace(/@continue(?!\()/g,T9),Z}function K6($){let Z=$.includes(I9),J=Z?$.substring(0,$.indexOf(I9)):$;return{hasBreak:Z,content:J}}function q6($){let Z=$.includes(T9),J=Z?$.substring(0,$.indexOf(T9)):$;return{hasContinue:Z,content:J}}function U6($){let Z=$;return Z=A9(Z,"@break",(J)=>{let X=J.trim();if(!M9(X))return"";return`\`; if (${X}) { break; } result += \``}),Z=A9(Z,"@continue",(J)=>{let X=J.trim();if(!M9(X))return"";return`\`; if (${X}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function aQ($){let Z=/@forelse\s*\(/g,J,X=[],Y=/@foreach\s*\(/g,Q=/@endforeach/g,G;while((G=Y.exec($))!==null)X.push({pos:G.index,delta:1});while((G=Q.exec($))!==null)X.push({pos:G.index,delta:-1});X.sort((W,H)=>W.pos-H.pos);let z=[],K=0;for(let W of X)K+=W.delta,z.push({pos:W.pos,depth:K});function q(W){let H=0,U=z.length-1,j=0;while(H<=U){let B=H+U>>1;if(z[B].pos<=W)j=z[B].depth,H=B+1;else U=B-1}return j}while((J=Z.exec($))!==null){if(q(J.index)>0)continue;let W=J.index,H=J.index+J[0].length-1,U=1,j=H+1,B=-1;while(j<$.length&&U>0){if($[j]==="(")U++;else if($[j]===")"){if(U--,U===0){B=j;break}}j++}if(B===-1)continue;let V=$.substring(H+1,B),_=j6(V);if(!_)continue;let{arrayExpr:O,itemVar:F}=_,L=B+1,w=1,N=L,R=/@forelse\s*\(/g,M=/@endforelse/g,T=-1;while(w>0&&N<$.length){R.lastIndex=N,M.lastIndex=N;let C=R.exec($),y=M.exec($);if(!y)break;if(C&&C.index<y.index)w++,N=C.index+C[0].length;else{if(w--,w===0){T=y.index;break}N=y.index+11}}if(T===-1)continue;let D=$.substring(L,T),I=T+11,k=-1,A=0,E=0;while(E<D.length){let C=D.indexOf("@",E);if(C===-1)break;let y=D.substring(C);if(/^@forelse\s*\(/.test(y))A++,E=C+1;else if(y.startsWith("@endforelse"))A--,E=C+11;else if(A===0&&y.startsWith("@empty")){if(D.length<=C+6||!/[a-z]/i.test(D[C+6])){k=C;break}E=C+1}else E=C+1}if(k===-1)continue;return{start:W,end:I,arrayExpr:O,itemVar:F,foreachContent:D.substring(0,k),emptyContent:D.substring(k+6)}}return null}function W6($,Z){let J=$;while(!0){let X=aQ(J);if(!X)break;let{start:Y,end:Q,arrayExpr:G,itemVar:z,foreachContent:K,emptyContent:q}=X;try{let W;if(j0(G))W=W0(G,Object.keys(Z))(...Object.values(Z));else W=Y0(G,Z);let H;if(!Array.isArray(W)||W.length===0)H=q;else H=`@foreach (${G} as ${z})${K}@endforeach`;J=J.substring(0,Y)+H+J.substring(Q)}catch(W){let H=W instanceof Error?W.message:String(W),U=D0("Forelse",`Error in @forelse(${G} as ${z}): ${H}`,N0.EVALUATION_ERROR);J=J.substring(0,Y)+U+J.substring(Q)}}return J}function j6($){let Z=$.indexOf(" as ");if(Z!==-1){let Q=$.slice(0,Z).trim(),G=$.slice(Z+4).trim();return Q&&G?{arrayExpr:Q,itemVar:G}:null}let J=/^\s*(.+?)\s+in\s+([\s\S]+)$/.exec($);if(!J)return null;let X=J[1].trim().replace(/^\(([\s\S]*)\)$/,"$1").trim(),Y=J[2].trim();return X&&Y?{arrayExpr:Y,itemVar:X}:null}var B6="<!--stx:foreach-not-iterable:",tQ=/<!--stx:foreach-not-iterable:([^|>]*)\|([^>]*?)-->/g;function eQ($,Z){return`${B6}${encodeURIComponent($)}|${encodeURIComponent(Z)}-->`}function $G($,Z){console.warn(`[stx] @foreach(${$}) in ${Z}: ${$} is not iterable server-side, so the loop rendered nothing. `+"Values a server loop reads must come from <script server> or the page context \u2014 "+"a plain <script> runs in the browser.")}function M3($){if(!$.includes(B6))return $;return $.replace(tQ,(Z,J,X)=>{return $G(decodeURIComponent(J),decodeURIComponent(X)),""})}function V6($,Z,J,X,Y=!1){let Q=$;Q=W6(Q,Z);function G(q){let W=/@foreach\s*\(/g,H;while((H=W.exec(q))!==null){let U=H.index,j=H.index+H[0].length-1,B=1,V=j+1,_=-1;while(V<q.length&&B>0){if(q[V]==="(")B++;else if(q[V]===")"){if(B--,B===0){_=V;break}}V++}if(_===-1)continue;let O=q.substring(j+1,_),F=j6(O);if(!F)continue;let L=U,{arrayExpr:w,itemVar:N}=F,R=_+1,M=1,T=R,D=/@foreach\s*\(/g,I=/@endforeach/g;while(M>0&&T<q.length){D.lastIndex=T,I.lastIndex=T;let k=D.exec(q),A=I.exec(q);if(!A)break;if(k&&k.index<A.index)M++,T=k.index+k[0].length;else{if(M--,M===0){let E=q.substring(R,A.index),C=A.index+11;return{start:L,end:C,arrayExpr:w,itemVar:N,content:E}}T=A.index+11}}}return null}function z(q,W){let H=q;while(!0){let U=G(H);if(!U)break;let{start:j,end:B,arrayExpr:V,itemVar:_,content:O}=U;try{let F=V.trim(),L;if(j0(F))L=W0(F,Object.keys(W))(...Object.values(W));else L=Y0(F,W);let w=!1;if(!Array.isArray(L))if(L instanceof Map)L=Array.from(L),w=!0;else if(L instanceof Set)L=Array.from(L);else if(typeof L==="string")L=Array.from(L);else if(L&&typeof L==="object"&&!(L instanceof Date)&&!(L instanceof RegExp))L=Object.entries(L),w=!0;else{let A=eQ(F,J)+D0("Foreach",`Error in @foreach: ${F} is not iterable`,N0.TYPE_ERROR);H=H.substring(0,j)+A+H.substring(B);continue}let N=X?.loops?.useAltLoopVariable??pQ,R=_.trim(),M=null,T,D=!1;if(R.includes("=>")){let A=R.split("=>").map((E)=>E.trim());if(A.length===2&&A[0]&&A[1])M=A[0],T=A[1];else T=R}else if(!R.startsWith("[")&&!R.startsWith("{")&&R.includes(",")){let A=R.split(",").map((E)=>E.trim());if(A.length===2&&A[0]&&A[1])T=A[0],M=A[1],D=!0;else T=R}else T=R;let I="",k=L;for(let A=0;A<k.length;A++){let E=k[A],C={index:A,iteration:A+1,first:A===0,last:A===k.length-1,count:k.length},y={...W,loop:C,$loop:C};if(T.startsWith("[")&&T.endsWith("]")){let p=T.slice(1,-1).split(",").map((g)=>g.trim());if(Array.isArray(E))p.forEach((g,Z0)=>{if(g)y[g]=E[Z0]});else y[T]=E}else if(T.startsWith("{")&&T.endsWith("}")){let p=T.slice(1,-1).split(",").map((g)=>g.trim()).filter(Boolean);if(E!==null&&typeof E==="object")p.forEach((g)=>{let Z0=g.indexOf(":"),J0=(Z0===-1?g:g.slice(0,Z0)).trim(),e=Z0===-1?J0:g.slice(Z0+1).trim();if(J0&&e)y[e]=E[J0]});else y[T]=E}else y[T]=E;if(M)if(!D&&w&&Array.isArray(E)&&E.length===2)y[M]=E[0],y[T]=E[1];else y[M]=A;let b=oQ(O,y),P=q6(b);if(P.hasContinue){I+=P.content;continue}let h=K6(b);if(h.hasBreak){I+=h.content;break}if(b=W6(b,y),b=z(b,y),b=r0(b,y,J),b=rQ(b),h=K6(b),h.hasBreak){I+=h.content;break}if(P=q6(b),P.hasContinue){I+=P.content;continue}b=V1(b,y,J),b=sQ(b,y),b=nQ(b,y),b=iQ(b,y),I+=b}H=H.substring(0,j)+I+H.substring(B)}catch(F){let L=D0("Foreach",`Error in @foreach(${V.trim()} as ${_.trim()}): ${F instanceof Error?F.message:String(F)}`,N0.EVALUATION_ERROR);H=H.substring(0,j)+L+H.substring(B)}}return H}Q=z(Q,Z),Q=O6(Q,Z,J,X);let K=X?.loops?.maxWhileIterations??cQ;return Q=XG(Q,Z,K),Y?Q:M3(Q)}function L6($){return M9($)}function O6($,Z,J,X){let Y=$,Q=!0;while(Q){Q=!1;let G=Y.match(/@for\s*\(/);if(!G||G.index===void 0)break;let z=G.index,K=z+G[0].length-1,q=M0(Y,"(",")",K);if(q===-1)break;let W=Y.slice(K+1,q),H=q+1,U=z9(Y.slice(z),"for","endfor");if(U.length===0)break;let j=U[0].content,B=z+U[0].end;if(!L6(W)){let V=D0("For",`Unsafe expression in @for: ${W}`,N0.UNSAFE_EXPRESSION);Y=Y.substring(0,z)+V+Y.substring(B),Q=!0;continue}try{let V=ZG(W),_=/@(?:for|foreach|if|unless)\s*\(/.test(j);if(V.length>0&&_){let R=JG({forExpr:W,content:j,iterVarNames:V,context:Z,filePath:J,options:X});Y=Y.substring(0,z)+R+Y.substring(B),Q=!0;continue}let O=Object.keys(Z),F=Object.values(Z),L=j.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(R,M)=>{return`\${${M}}`});L=U6(L);let N=Function(...O,`
|
|
3415
3415
|
let result = '';
|
|
3416
3416
|
for (${W}) {
|
|
3417
3417
|
result += \`${L}\`;
|
|
3418
3418
|
}
|
|
3419
3419
|
return result;
|
|
3420
|
-
`)(...F);Y=Y.substring(0,z)+N+Y.substring(B),Q=!0}catch(V){let _=
|
|
3420
|
+
`)(...F);Y=Y.substring(0,z)+N+Y.substring(B),Q=!0}catch(V){let _=D0("For",`Error in @for(${W}): ${V instanceof Error?V.message:String(V)}`,N0.EVALUATION_ERROR);Y=Y.substring(0,z)+_+Y.substring(B),Q=!0}}return Y}function ZG($){let Z=$.trim(),J=Z.match(/^(?:const|let|var)\s+(\[[^\]]+\]|\{[^}]+\})\s+(?:of|in)\s+/);if(J){let Q=J[1];return Q.slice(1,-1).split(",").map((z)=>{let K=z.trim();if(!K)return"";let q=K.indexOf(":");if(q>=0&&Q.startsWith("{")){let U=K.slice(q+1).trim(),j=U.indexOf("=");return(j>=0?U.slice(0,j):U).trim()}let W=K.indexOf("="),H=(W>=0?K.slice(0,W):K).trim();return/^[A-Za-z_$][\w$]*$/.test(H)?H:""}).filter(Boolean)}let X=Z.match(/^(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s+(?:of|in)\s+/);if(X)return[X[1]];let Y=Z.match(/^(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=[^;]*;/);if(Y)return[Y[1]];return[]}function JG($){let{forExpr:Z,content:J,iterVarNames:X,context:Y,filePath:Q,options:G}=$,z=Object.keys(Y),K=Object.values(Y),q=Function(...z,"__pushIter",`
|
|
3421
3421
|
for (${Z}) {
|
|
3422
3422
|
__pushIter([${X.join(", ")}])
|
|
3423
3423
|
}
|
|
3424
|
-
`),W=[];q(...K,(j)=>{W.push(j)});let
|
|
3424
|
+
`),W=[];q(...K,(j)=>{W.push(j)});let H=Q??"inline.stx",U="";for(let j of W){let B={...Y};X.forEach((_,O)=>{B[_]=j[O]});let V=O6(J,B,Q,G);V=r0(V,B,H),V=V1(V,B,H),U+=V}return U}function XG($,Z,J){let X=$,Y=!0;while(Y){Y=!1;let Q=X.match(/@while\s*\(/);if(!Q||Q.index===void 0)break;let G=Q.index,z=G+Q[0].length-1,K=M0(X,"(",")",z);if(K===-1)break;let q=X.slice(z+1,K),W=z9(X.slice(G),"while","endwhile");if(W.length===0)break;let H=W[0].content,U=G+W[0].end;if(!L6(q)){let j=D0("While",`Unsafe expression in @while: ${q}`,N0.UNSAFE_EXPRESSION);X=X.substring(0,G)+j+X.substring(U),Y=!0;continue}try{let j=Object.keys(Z),B=Object.values(Z),V=H.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(F,L)=>{return`\${${L}}`});V=U6(V);let O=Function(...j,`
|
|
3425
3425
|
let result = '';
|
|
3426
3426
|
let maxIterations = ${J}; // Configurable safety limit
|
|
3427
3427
|
let counter = 0;
|
|
@@ -3433,25 +3433,25 @@ ${Y}
|
|
|
3433
3433
|
result += '<!-- [While Error [1104]]: Maximum iterations (${J}) exceeded in while loop. Configure via options.loops.maxWhileIterations -->';
|
|
3434
3434
|
}
|
|
3435
3435
|
return result;
|
|
3436
|
-
`)(...B);X=X.substring(0,G)+O+X.substring(
|
|
3437
|
-
<div style="color:red;background:#ffeeee;padding:10px;border:1px solid #ff0000;margin:10px 0;font-family:monospace;white-space:pre-wrap;">${
|
|
3438
|
-
`)}}}return Q}async function
|
|
3436
|
+
`)(...B);X=X.substring(0,G)+O+X.substring(U),Y=!0}catch(j){let B=D0("While",`Error in @while(${q}): ${j instanceof Error?j.message:String(j)}`,N0.EVALUATION_ERROR);X=X.substring(0,G)+B+X.substring(U),Y=!0}}return X}function YG($,Z="_method"){let J=$.toUpperCase();if(J==="GET"||J==="POST")return"";return`<input type="hidden" name="${Z}" value="${J}">`}function _6($){return $.replace(/@method\(\s*(['"])([^'"]+)\1\s*(?:,\s*(['"])([^'"]+)\3\s*)?\)/g,(Z,J,X,Y,Q)=>{return YG(X,Q||"_method")})}async function F6($,Z,J,X,Y){if(!X.middleware||X.middleware.length===0)return $;let Q=$,G=X.middleware.filter((z)=>z.timing===Y);if(G.length===0)return Q;for(let z of G){if(!z.name||typeof z.handler!=="function"){if(X.debug)console.warn("Invalid middleware:",z);continue}try{let K=await z.handler(Q,Z,J,X);if(typeof K==="string")Q=K;else if(X.debug)console.warn(`Middleware ${z.name} did not return a string`)}catch(K){if(X.debug)console.error(`Error in middleware ${z.name}:`,K);if(X.debug){let q=_0("Middleware",`Error in middleware '${z.name}': ${K instanceof Error?K.message:String(K)}`,J,$);Q=Q.replace(/<body[^>]*>/,`$&
|
|
3437
|
+
<div style="color:red;background:#ffeeee;padding:10px;border:1px solid #ff0000;margin:10px 0;font-family:monospace;white-space:pre-wrap;">${Y5(q)}</div>
|
|
3438
|
+
`)}}}return Q}async function w6($,Z,J,X){return F6($,Z,J,X,"before")}async function R6($,Z,J,X){return F6($,Z,J,X,"after")}U2();U2();function N6($){return $.replace(/@route\(\s*(['"])([^'"]+)\1(?:\s*,\s*(\{[^}]+\}))?\s*(?:,\s*(true|false)\s*)?\)/g,(Z,J,X,Y,Q)=>{try{let G=Y?d0(Y,{}):{};return A3(X,G,Q==="true")}catch(G){return console.error(`Error processing @route directive: ${G}`),"#route-error"}})}var l0={patterns:[],exact:{}};function qV($,Z){if(!l0.exact[$])l0.exact[$]=[];l0.exact[$].push(Z)}function WV($,Z){let J=typeof $==="string"?new RegExp($):$;l0.patterns.push({pattern:J,callback:Z})}async function D6($,Z){let J=$.split("/").pop()?.split(".")[0]||"";if(l0.exact[$])for(let X of l0.exact[$])await Promise.resolve(X(Z,$));if(l0.exact[J])for(let X of l0.exact[J])await Promise.resolve(X(Z,$));for(let{pattern:X,callback:Y}of l0.patterns)if(X.test($)||X.test(J))await Promise.resolve(Y(Z,$))}function HV(){l0.patterns=[],l0.exact={}}var QG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),GG=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","menu","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","search","section","select","slot","small","source","span","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"]);function E1($,Z){let J=/<([a-zA-Z][a-zA-Z0-9-]*)((?:\s+(?:[^>"']|"[^"]*"|'[^']*')*)?)(\s*\/?)>/g;J.lastIndex=Z;let X=J.exec($);if(!X)return null;let Y=/\/\s*>$/.test(X[0])||X[1]===X[1].toLowerCase()&&QG.has(X[1]),Q=Y?X[2].replace(/\/\s*$/,""):X[2];return{full:X[0],tag:X[1],attrs:Q,selfClosing:Y,start:X.index,end:X.index+X[0].length}}function zG($,Z,J){let X=1,Y=J,Q=new RegExp(`<${Z}(?:\\s(?:[^>"']|"[^"]*"|'[^']*')*)?>`,"gi"),G=new RegExp(`</${Z}\\s*>`,"gi");while(X>0&&Y<$.length){Q.lastIndex=Y,G.lastIndex=Y;let z=Q.exec($),K=G.exec($);if(!K)return-1;if(z&&z.index<K.index)X++,Y=z.index+z[0].length;else{if(X--,X===0)return K.index+K[0].length;Y=K.index+K[0].length}}return-1}function k1($,Z){if(Z.selfClosing)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};let J=zG($,Z.tag,Z.end);if(J===-1)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};return{outerStart:Z.start,outerEnd:J,innerHTML:$.slice(Z.end,J-`</${Z.tag}>`.length)}}function M6($,Z){return new RegExp(`(?:^|\\s)${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?:=|\\s|$|>|/)`).test($)||$.includes(` ${Z}=`)||$.includes(` ${Z} `)||$.trimEnd().endsWith(` ${Z}`)}function k2($,Z){let J=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),X=$.match(new RegExp(`${J}="([^"]*)"`,"s"))||$.match(new RegExp(`${J}='([^']*)'`,"s"));return X?X[1]:null}function W1($,Z){let J=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return $.replace(new RegExp(`\\s*${J}="[^"]*"`,"g"),"").replace(new RegExp(`\\s*${J}='[^']*'`,"g"),"").replace(new RegExp(`\\s*${J}(?=\\s|$|>|/)`,"g"),"")}function r1($,Z,J){let X=Z.selfClosing?" /":"",Y=`<${Z.tag}${J}${X}>`;return $.slice(0,Z.start)+Y+$.slice(Z.end)}function KG($){return/\bv-(?:if|else-if|else|for|show|model|html|text|pre|once|cloak|memo|bind|on|slot)\b/.test($)}function qG($){let Z=$,J=0;while(J<Z.length){let X=E1(Z,J);if(!X)break;let Y=k2(X.attrs,"v-for");if(Y===null){J=X.end;continue}let Q=Y.match(/^\s*\(?([^)]+)\)?\s+(?:in|of)\s+(.+)\s*$/);if(!Q){J=X.end;continue}let G=Q[1].trim(),z=Q[2].trim(),K;if(G.includes(",")){let _=G.split(",").map((L)=>L.trim()),O=_[0],F=_[1];K=`${z} as ${F} => ${O}`}else K=`${z} as ${G}`;let q=W1(X.attrs,"v-for"),W=W1(q,":key").replace(/\s*v-bind:key="[^"]*"/g,""),H=k1(Z,X),U=Z.slice(H.outerStart,H.outerEnd),j=r1(U,{...X,start:0,end:X.end-X.start},W),B=`@foreach(${K})
|
|
3439
3439
|
`,V=`${B}${j}
|
|
3440
|
-
@endforeach`;Z=Z.slice(0,
|
|
3441
|
-
${V.element}`);else if(V.type==="else-if")
|
|
3442
|
-
${V.element}`);else
|
|
3443
|
-
${V.element}`);
|
|
3444
|
-
`),j=Q[0].outerStart,B=Q[Q.length-1].outerEnd;Z=Z.slice(0,j)+
|
|
3445
|
-
${
|
|
3446
|
-
@endonce`;Z=Z.slice(0,Q.outerStart)+K+Z.slice(Q.outerEnd),J=Q.outerStart+K.length}return Z}function
|
|
3447
|
-
${X}${$.slice(J)}`}var
|
|
3448
|
-
${Q[0]}${$.slice(J,Q.index)}${$.slice(G,Y)}${$.slice(Y)}`}function
|
|
3449
|
-
${Z[0]}${X.slice(Y)}`}var
|
|
3450
|
-
<meta name="stx-build" content="${Z}">`}import{AsyncLocalStorage as
|
|
3451
|
-
`}function
|
|
3452
|
-
`),O=G.map((I)=>{return` <link ${
|
|
3453
|
-
`),F=z.map((I)=>{if(I.src)return` <script ${
|
|
3454
|
-
`),L=
|
|
3440
|
+
@endforeach`;Z=Z.slice(0,H.outerStart)+V+Z.slice(H.outerEnd),J=H.outerStart+B.length}return Z}function WG($){let Z=$,J=0;while(J<Z.length){let X=E1(Z,J);if(!X)break;let Y=k2(X.attrs,"v-if");if(Y===null){J=X.end;continue}let Q=[],G=k1(Z,X),z=W1(X.attrs,"v-if"),K=r1(Z.slice(G.outerStart,G.outerEnd),{...X,start:0,end:X.end-X.start},z);Q.push({type:"if",expr:Y,outerStart:G.outerStart,outerEnd:G.outerEnd,element:K,parsedTag:X});let q=G.outerEnd,W=!0;while(W){let V=Z.slice(q).match(/^\s*/),_=V?V[0].length:0,O=E1(Z,q+_);if(!O){W=!1;break}let F=k2(O.attrs,"v-else-if"),L=M6(O.attrs,"v-else");if(F!==null){let w=k1(Z,O),N=W1(O.attrs,"v-else-if"),R=r1(Z.slice(w.outerStart,w.outerEnd),{...O,start:0,end:O.end-O.start},N);Q.push({type:"else-if",expr:F,outerStart:q,outerEnd:w.outerEnd,element:R,parsedTag:O}),q=w.outerEnd}else if(L){let w=k1(Z,O),N=W1(O.attrs,"v-else"),R=r1(Z.slice(w.outerStart,w.outerEnd),{...O,start:0,end:O.end-O.start},N);Q.push({type:"else",outerStart:q,outerEnd:w.outerEnd,element:R,parsedTag:O}),W=!1}else W=!1}let H=[];for(let V of Q)if(V.type==="if")H.push(`@if(${V.expr})
|
|
3441
|
+
${V.element}`);else if(V.type==="else-if")H.push(`@elseif(${V.expr})
|
|
3442
|
+
${V.element}`);else H.push(`@else
|
|
3443
|
+
${V.element}`);H.push("@endif");let U=H.join(`
|
|
3444
|
+
`),j=Q[0].outerStart,B=Q[Q.length-1].outerEnd;Z=Z.slice(0,j)+U+Z.slice(B),J=j+U.length}return Z}function HG($){return $.replace(/\bv-show="([^"]*)"/g,'@show="$1"')}function UG($){let Z=$,J=0;while(J<Z.length){let X=E1(Z,J);if(!X)break;let Y=GG.has(X.tag),Q=X.attrs.replace(/([^\s=]+)(?:\s*=\s*("[^"]*"|'[^']*'|[^\s]+))?/g,(z,K,q)=>{let W=/^v-model(?::([a-zA-Z_][a-zA-Z0-9_]*))?((?:\.[a-zA-Z]+)*)$/.exec(K);if(!W||!q||!/^["']/.test(q))return z;let H=W[1]||"modelValue",U=W[2];if(Y&&!W[1])return`@model${U}=${q}`;let j=q[0],B=q.slice(1,-1),V=`:${H}=${q} @update:${H}=${j}${B} = $event${j}`;if(U){let _=W[1]?`${H}Modifiers`:"modelModifiers",O=U.slice(1).split(".").map((F)=>`${F}: true`).join(", ");V+=` :${_}="{ ${O} }"`}return V});if(Q===X.attrs){J=X.end;continue}let G=r1(X.full,{...X,start:0,end:X.full.length},Q);Z=Z.slice(0,X.start)+G+Z.slice(X.end),J=X.start+G.length}return Z}function jG($){return $.replace(/\bv-bind:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'@bind:$1="$2"')}function BG($){return $.replace(/\bv-on:([a-zA-Z_][a-zA-Z0-9_.-]*)\s*=\s*"([^"]*)"/g,'@$1="$2"')}function VG($){let Z=$,J=0;while(J<Z.length){let X=E1(Z,J);if(!X)break;let Y=k2(X.attrs,"v-html");if(Y===null){J=X.end;continue}if(X.selfClosing){J=X.end;continue}let Q=k1(Z,X),G=W1(X.attrs,"v-html"),z=X.selfClosing?" /":"",K=`<${X.tag}${G}${z}>{!! ${Y} !!}</${X.tag}>`;Z=Z.slice(0,Q.outerStart)+K+Z.slice(Q.outerEnd),J=Q.outerStart+K.length}return Z}function LG($){let Z=$,J=0;while(J<Z.length){let X=E1(Z,J);if(!X)break;let Y=k2(X.attrs,"v-text");if(Y===null){J=X.end;continue}if(X.selfClosing){J=X.end;continue}let Q=k1(Z,X),G=W1(X.attrs,"v-text"),z=X.selfClosing?" /":"",K=`<${X.tag}${G}${z}>{{ ${Y} }}</${X.tag}>`;Z=Z.slice(0,Q.outerStart)+K+Z.slice(Q.outerEnd),J=Q.outerStart+K.length}return Z}function OG($){return $.replace(/(<[a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*?)\s+v-pre([^>]*>)/g,"$1$2 data-stx-skip$3").replace(/(<[a-zA-Z][a-zA-Z0-9-]*)\s+v-pre(\s[^>]*>|>)/g,"$1 data-stx-skip$2")}function _G($){let Z=$,J=0;while(J<Z.length){let X=E1(Z,J);if(!X)break;if(!M6(X.attrs,"v-once")){J=X.end;continue}let Y=W1(X.attrs,"v-once"),Q=k1(Z,X),G=Z.slice(Q.outerStart,Q.outerEnd),K=`@once
|
|
3445
|
+
${r1(G,{...X,start:0,end:X.end-X.start},Y)}
|
|
3446
|
+
@endonce`;Z=Z.slice(0,Q.outerStart)+K+Z.slice(Q.outerEnd),J=Q.outerStart+K.length}return Z}function FG($){return $.replace(/\bv-memo="([^"]*)"/g,'data-stx-memo="$1"')}function wG($){return $.replace(/\bv-slot:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'#$1="$2"').replace(/\bv-slot:([a-zA-Z_][a-zA-Z0-9_-]*)(?=[\s>])/g,"#$1").replace(/\bv-slot\s*=\s*"([^"]*)"/g,'#default="$1"')}function A6($){if(!KG($))return $;let Z=$;return Z=qG(Z),Z=WG(Z),Z=_G(Z),Z=jG(Z),Z=BG(Z),Z=UG(Z),Z=HG(Z),Z=wG(Z),Z=VG(Z),Z=LG(Z),Z=OG(Z),Z=FG(Z),Z}function k9($){return $.replace(/--/g,"- -").replace(/</g,"<").replace(/>/g,">")}var I3=new Set(["a","abbr","address","article","aside","audio","b","bdi","bdo","blockquote","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","meter","nav","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","small","span","strong","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","u","ul","video"]),RG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","source","track","wbr"]);function I6($,Z){let J=/^\s*\{\{\s*([\s\S]+?)\s*\}\}\s*$/.exec($),X=J?J[1]:$,Y=Y0(X,Z);if(Y&&typeof Y==="string")return Y;let Q=X.trim();return I3.has(Q)?Q:null}function T6($){let Z=/^\s*\{\{\s*([\s\S]+?)\s*\}\}\s*$/.exec($);return Z?Z[1]:$}function k6($,Z,J){let X=Z.replace(/\s*(?::is|v-bind:is)\s*=\s*"[^"]*"/gi,"").trim(),Y=X?`<${$} ${X}>`:`<${$}>`;if(RG.has($))return X?`<${$} ${X}>`:`<${$}>`;return`${Y}${J}</${$}>`}async function E6($,Z,J,X,Y){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*)>([\s\S]*?)<\/component>/gi,z=[],K;while((K=G.exec(Q))!==null)z.push({full:K[0],expr:K[1],attrs:K[2],slotContent:K[3],index:K.index});for(let q=z.length-1;q>=0;q--){let W=z[q];try{let H=I6(W.expr,Z);if(!H||typeof H!=="string"){let F=`<!-- dynamic component: could not resolve "${k9(T6(W.expr))}" -->`;Q=Q.slice(0,W.index)+F+Q.slice(W.index+W.full.length);continue}if(I3.has(H)){let F=k6(H,W.attrs,W.slotContent);Q=Q.slice(0,W.index)+F+Q.slice(W.index+W.full.length);continue}let U=W.attrs.trim(),j={},B=/(?::([a-zA-Z_][a-zA-Z0-9_-]*)|([a-zA-Z_][a-zA-Z0-9_-]*))\s*=\s*"([^"]*)"/g,V;while((V=B.exec(U))!==null){let F=V[1]||V[2],L=V[3];if(V[1])try{j[F]=Y0(L,Z)}catch{j[F]=L}else j[F]=L}let _=X.componentsDir||"components",O=await A1(H,j,W.slotContent,_,Z,J,X,new Set,Y??new Set);Q=Q.slice(0,W.index)+O+Q.slice(W.index+W.full.length)}catch(H){let U=H instanceof Error?H.message:String(H),j=`<!-- dynamic component error: ${k9(U)} -->`;Q=Q.slice(0,W.index)+j+Q.slice(W.index+W.full.length)}}return Q=await NG(Q,Z,J,X,Y),Q}async function NG($,Z,J,X,Y){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*?)\/>/gi,z=[],K;while((K=G.exec(Q))!==null)z.push({full:K[0],expr:K[1],attrs:K[2],index:K.index});for(let q=z.length-1;q>=0;q--){let W=z[q];try{let H=I6(W.expr,Z);if(!H||typeof H!=="string"){let B=`<!-- dynamic component: could not resolve "${k9(T6(W.expr))}" -->`;Q=Q.slice(0,W.index)+B+Q.slice(W.index+W.full.length);continue}if(I3.has(H)){let B=k6(H,W.attrs,"");Q=Q.slice(0,W.index)+B+Q.slice(W.index+W.full.length);continue}let U=X.componentsDir||"components",j=await A1(H,{},"",U,Z,J,X,new Set,Y??new Set);Q=Q.slice(0,W.index)+j+Q.slice(W.index+W.full.length)}catch(H){let U=H instanceof Error?H.message:String(H),j=`<!-- dynamic component error: ${k9(U)} -->`;Q=Q.slice(0,W.index)+j+Q.slice(W.index+W.full.length)}}return Q}function T3(){return{afterOpen:[],beforeClose:[]}}function DG($){return $.afterOpen.length>0||$.beforeClose.length>0}function y6($,Z){if(!DG(Z))return $;let J=Z.afterOpen.join(""),X=Z.beforeClose.join(""),Y=$.lastIndexOf("</head>"),Q=J?E2($):null,G=X&&Y!==-1?Y:null;if(Q===null&&G===null)return $;if(Q!==null&&G!==null)return`${$.slice(0,Q)}${J}${$.slice(Q,G)}${X}${$.slice(G)}`;if(Q!==null)return`${$.slice(0,Q)}${J}${$.slice(Q)}`;return`${$.slice(0,G)}${X}${$.slice(G)}`}var b6=/\s*<meta\b[^>]*\bcharset\b[^>]*>/iy;function E2($){let Z=/<head\b[^>]*>/i.exec($);if(!Z)return null;let J=Z.index+Z[0].length;b6.lastIndex=J;let X=b6.exec($);return X?J+X[0].length:J}var E3="data-stx-color-mode-boot",MG="__STX_COLOR_MODE__",AG=new Set(["light","dark","auto","system"]),IG=new Set(["auto","system"]),TG=/^[a-z][\w:-]*$/i,kG=/^[\w-]+$/;function EG($){let Z=$.storageKey??"stx-color-mode",J=$.initialMode??"auto",X=$.darkClass===void 0?"dark":$.darkClass,Y=$.attribute??null,Q=$.autoValue??null;if(typeof Z!=="string"||Z.length===0)throw Error("colorMode.storageKey must be a non-empty string");if(!AG.has(J))throw Error(`colorMode.initialMode must be one of light, dark, auto, system \u2014 got ${JSON.stringify(J)}`);if(X!==null&&(typeof X!=="string"||!kG.test(X)))throw Error(`colorMode.darkClass must be a single CSS class name, or null to opt out \u2014 got ${JSON.stringify(X)}`);if(Y!==null&&(typeof Y!=="string"||!TG.test(Y)))throw Error(`colorMode.attribute must be a valid HTML attribute name \u2014 got ${JSON.stringify(Y)}`);if(Q!==null&&!IG.has(Q))throw Error(`colorMode.autoValue must be 'auto' or 'system' \u2014 got ${JSON.stringify(Q)}`);if(X===null&&Y===null)throw Error("colorMode needs at least one of darkClass or attribute \u2014 with both null nothing would mark the mode on <html>");return{storageKey:Z,initialMode:J==="system"?"auto":J,darkClass:X,attribute:Y,autoValue:Q}}function bG($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function b3($={}){let Z=EG($),X=`(function(){"use strict";var c=${bG(Z)};var p=c.initialMode;var a=c.autoValue;try{var v=localStorage.getItem(c.storageKey);if(v==="light"||v==="dark"){p=v}else if(v==="auto"||v==="system"){p="auto";if(!a)a=v}}catch(e){}var m=p;if(p==="auto"){try{m=matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}catch(e){m="light"}}var r=document.documentElement;if(c.attribute)r.setAttribute(c.attribute,m);if(c.darkClass){if(m==="dark")r.classList.add(c.darkClass);else r.classList.remove(c.darkClass)}try{window.${MG}={storageKey:c.storageKey,initialMode:c.initialMode,darkClass:c.darkClass,attribute:c.attribute,autoValue:a||"auto",preference:p,mode:m}}catch(e){}}());`;return`<script ${E3}>${X}</script>`}function P6($,Z={}){if($.includes(E3))return $;let J=k3($);if(J===null)return $;let X=b3(Z);return`${$.slice(0,J)}
|
|
3447
|
+
${X}${$.slice(J)}`}var k3=E2,yG=new RegExp(`<script\\b[^>]*\\b${E3}\\b[^>]*>[\\s\\S]*?<\\/script>`,"i"),C6=/<meta\b[^>]*\bcharset\b[^>]*>/gi,S6=/<\/head>/gi;function CG($){let Z=/<head\b[^>]*>/i.exec($);if(!Z)return $;let J=Z.index+Z[0].length;S6.lastIndex=J;let X=S6.exec($),Y=X?X.index:$.length;C6.lastIndex=J;let Q=C6.exec($);if(!Q||Q.index>=Y)return $;if($.slice(J,Q.index).trim()==="")return $;let G=Q.index+Q[0].length;return`${$.slice(0,J)}
|
|
3448
|
+
${Q[0]}${$.slice(J,Q.index)}${$.slice(G,Y)}${$.slice(Y)}`}function v6($){return SG(CG($))}function SG($){let Z=yG.exec($);if(!Z)return $;let J=k3($);if(J===null)return $;if(Z.index<=J||$.slice(J,Z.index).trim()==="")return $;let X=$.slice(0,Z.index)+$.slice(Z.index+Z[0].length),Y=k3(X);if(Y===null)return $;return`${X.slice(0,Y)}
|
|
3449
|
+
${Z[0]}${X.slice(Y)}`}var RV="stx-build",NV="X-STX-Build",b2=Symbol.for("stx.buildId");function x6(){let $=globalThis;if(!$[b2])$[b2]=process.env.STX_BUILD_ID||`${Date.now().toString(36)}${Math.random().toString(36).slice(2,8)}`;return $[b2]}function DV($){let Z=globalThis;if($===null)delete Z[b2];else Z[b2]=$}function MV($,Z=x6()){let J=y3($,Z);if(J===null)return $;let X=/<head\b[^>]*>/i.exec($),Y=X.index+X[0].length;return`${$.slice(0,Y)}${J}${$.slice(Y)}`}function y3($,Z=x6()){if($.includes('name="stx-build"'))return null;if(!/<head\b[^>]*>/i.test($))return null;return`
|
|
3450
|
+
<meta name="stx-build" content="${Z}">`}import{AsyncLocalStorage as PG}from"async_hooks";var f6=new PG;function C3($){return $.__stx_server_data??={pending:new Map,values:new Map}}function g6($,Z){return f6.run(C3($),Z)}async function h6($,Z){let J=f6.getStore();if(!J)throw Error("useServerData must run inside a <script server> render");if(typeof $!=="string"||!$.trim())throw TypeError("useServerData requires a non-empty string key");let X=J.pending.get($);if(X)return X;let Y=Promise.resolve().then(Z).then((Q)=>{let G=JSON.stringify(Q,(K,q)=>{if(q===void 0||typeof q==="function"||typeof q==="symbol"||typeof q==="bigint"||typeof q==="number"&&!Number.isFinite(q))throw TypeError(`useServerData(${JSON.stringify($)}) requires JSON-serializable data`);if(q&&typeof q==="object"&&!Array.isArray(q)&&Object.getPrototypeOf(q)!==Object.prototype&&Object.getPrototypeOf(q)!==null)throw TypeError(`useServerData(${JSON.stringify($)}) requires JSON-serializable data`);return q}),z=JSON.parse(G);return J.values.set($,z),z}).catch((Q)=>{throw J.pending.delete($),Q});return J.pending.set($,Y),Y}function u6($){let Z=$.__stx_server_data;if(!Z?.values.size)return"";return`<script data-stx-scoped data-stx-server-data type="application/json">${JSON.stringify(Object.fromEntries(Z.values)).replace(/</g,"\\u003c").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}</script>`}var l6="<style data-stx-cloak>[x-cloak]{display:none !important}</style>",E9="data-stx-html-attrs",b9="data-stx-html-class",c6=/^[A-Za-z_:][\w:.-]*$/;function t0($){return String($).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function vG($){return String($).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function t1($){if($.name)return`name="${$.name}"`;if($.property)return`property="${$.property}"`;if($.charset!=null)return"charset=";if($["http-equiv"])return`http-equiv="${$["http-equiv"]}"`;return""}function a1($,Z){return Object.entries($).filter(([J])=>!Z?.(J)).map(([J,X])=>`${J}="${t0(String(X))}"`).join(" ")}function xG($={},Z="en"){let J=[],X=[],Y="",Q=Z;for(let[z,K]of Object.entries($||{})){if(K==null)continue;let q=z.trim();if(!c6.test(q))continue;let W=q.toLowerCase();if(W==="lang"){Q=String(K);continue}if(W==="class"){Y=String(K).trim();continue}J.push(` ${q}="${t0(String(K))}"`),X.push(q)}let G=` lang="${t0(Q)}"`;if(Y)G+=` class="${t0(Y)}"`;if(G+=J.join(""),Y)G+=` ${b9}="${t0(Y)}"`;if(X.length)G+=` ${E9}="${t0(X.join(" "))}"`;return G}function p6($={},Z={}){let J={...$,...Z};if($.class&&Z.class){let X=$.class.split(/\s+/).filter(Boolean);for(let Y of Z.class.split(/\s+/).filter(Boolean))if(!X.includes(Y))X.push(Y);J.class=X.join(" ")}return J}function i6($,Z={}){if(!Z||Object.keys(Z).length===0)return $;let J=$.match(/<html\b([^>]*)>/i);if(!J)return $;let X={},Y=[],Q=/([A-Za-z_:][\w:.-]*)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'>]+)))?/g,G;while((G=Q.exec(J[1]))!==null){let W=G[1];if(!(W in X))Y.push(W);X[W]=G[2]??G[3]??G[4]??""}let z=[],K=[];for(let[W,H]of Object.entries(Z)){if(H==null)continue;let U=W.trim();if(!c6.test(U))continue;let j=U.toLowerCase();if(j==="class"){let B=(X.class||"").split(/\s+/).filter(Boolean);for(let V of String(H).split(/\s+/).filter(Boolean))if(!B.includes(V))B.push(V),z.push(V);if(!("class"in X))Y.push("class");X.class=B.join(" ");continue}if(!(U in X))Y.push(U);if(X[U]=String(H),j!=="lang")K.push(U)}if(z.length){if(!(b9 in X))Y.push(b9);X[b9]=z.join(" ")}if(K.length){if(!(E9 in X))Y.push(E9);X[E9]=K.join(" ")}let q=Y.map((W)=>` ${W}="${t0(X[W])}"`).join("");return $.replace(J[0],()=>`<html${q}>`)}function EV($){let Z=v3($);if(Z===null)return $;let J=$.lastIndexOf("</head>");return`${$.slice(0,J)}${Z}${$.slice(J)}`}function v3($){if($.includes("data-stx-cloak"))return null;if($.lastIndexOf("</head>")===-1)return null;return`${l6}
|
|
3451
|
+
`}function fG($){let Z=[],J=0;while(J<$.length){let Q=$.slice(J),G=Q.match(/^\s+/);if(G){J+=G[0].length;continue}if(Q.startsWith("<!--")){let H=$.indexOf("-->",J);if(H===-1)break;J=H+3;continue}let z=Q.match(/^<script\b[^>]*>/i);if(z){let H=$.toLowerCase().indexOf("</script>",J+z[0].length);if(H===-1)break;J=H+9;continue}let K=Q.match(/^<link\b[^>]*>/i);if(K){Z.push(K[0]),J+=K[0].length;continue}let q=Q.match(/^<meta\b[^>]*>/i);if(q){Z.push(q[0]),J+=q[0].length;continue}let W=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(W){Z.push(W[0]),J+=W[0].length;continue}break}if(Z.length===0)return{body:$,hoisted:Z};let X="",Y=0;while(Y<$.length&&Y<J){let Q=$.slice(Y),G=Q.match(/^<link\b[^>]*>/i);if(G&&Z.includes(G[0])){Y+=G[0].length;continue}let z=Q.match(/^<meta\b[^>]*>/i);if(z&&Z.includes(z[0])){Y+=z[0].length;continue}let K=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(K&&Z.includes(K[0])){Y+=K[0].length;continue}X+=$[Y],Y++}return X+=$.slice(J),{body:X,hoisted:Z}}function gG($,Z={},J={}){let{title:X="stx App",lang:Y="en",meta:Q=[],link:G=[],script:z=[],headRaw:K="",htmlAttrs:q={},bodyClass:W="",bodyAttrs:H={}}=Z,U=J.title||X,j=[{charset:"UTF-8"},{name:"viewport",content:"width=device-width, initial-scale=1.0"}],B=new Set(Q.map(t1).filter(Boolean)),_=[...j.filter((I)=>!B.has(t1(I))),...Q].map((I)=>{return` <meta ${a1(I)}>`}).join(`
|
|
3452
|
+
`),O=G.map((I)=>{return` <link ${a1(I)}>`}).join(`
|
|
3453
|
+
`),F=z.map((I)=>{if(I.src)return` <script ${a1(I,(k)=>k==="content")}></script>`;if(I.content)return` <script>${I.content}</script>`;return""}).filter(Boolean).join(`
|
|
3454
|
+
`),L=xG(q,Y),w=Object.entries(H).map(([I,k])=>` ${I}="${t0(String(k))}"`).join(""),N=W?` class="${t0(W)}"`:"",{body:R,hoisted:M}=fG($),T=[_,J.colorMode?` ${b3(J.colorMode)}`:"",` <title>${J.titleIsHtml?U:vG(U)}</title>`,` ${l6}`,O,F,K?` ${K}`:"",...(J.styles||[]).map((I)=>` ${I}`),...M.map((I)=>` ${I}`),...(J.headScripts||[]).map((I)=>` ${I}`),J.headStack||""].filter(Boolean),D=[R,...(J.bodyScripts||[]).map((I)=>I),J.bodyStack||""].filter(Boolean);return`<!DOCTYPE html>
|
|
3455
3455
|
<html${L}>
|
|
3456
3456
|
<head>
|
|
3457
3457
|
${T.join(`
|
|
@@ -3461,86 +3461,86 @@ ${T.join(`
|
|
|
3461
3461
|
${D.join(`
|
|
3462
3462
|
`)}
|
|
3463
3463
|
</body>
|
|
3464
|
-
</html>`}var
|
|
3464
|
+
</html>`}var S3=/\s+/y,P3=/<(script|style)\b[^>]*>/iy,hG=/<\/script>/gi,uG=/<\/style>/gi,m6=/<!DOCTYPE\b/iy,d6=/<html[\s>]/iy;function x3($){let Z=0;while(Z<$.length){if(S3.lastIndex=Z,S3.exec($)){Z=S3.lastIndex;continue}if($.startsWith("<!--",Z)){let Y=$.indexOf("-->",Z);if(Y===-1)return!1;Z=Y+3;continue}P3.lastIndex=Z;let X=P3.exec($);if(X){let Y=X[1].toLowerCase()==="script"?hG:uG;Y.lastIndex=P3.lastIndex;let Q=Y.exec($);if(Q===null)return!1;Z=Q.index+Q[0].length;continue}if(m6.lastIndex=Z,m6.test($))return!0;return d6.lastIndex=Z,d6.test($)}return!1}function f3($){return x3($)}function n6($,Z={}){let J=$.lastIndexOf("</head>");if(J===-1)return $;let{meta:X=[],link:Y=[],script:Q=[],headRaw:G=""}=Z,z=$.slice(0,J),K=[];for(let q of X){let W=t1(q);if(W&&z.includes(W))continue;K.push(` <meta ${a1(q)}>`)}for(let q of Y){if(q.href&&z.includes(`href="${q.href}"`))continue;K.push(` <link ${a1(q)}>`)}for(let q of Q)if(q.src){if(z.includes(`src="${q.src}"`))continue;K.push(` <script ${a1(q,(W)=>W==="content")}></script>`)}else if(q.content){if(z.includes(q.content))continue;K.push(` <script>${q.content}</script>`)}if(G&&!z.includes(G))K.push(` ${G}`);if(K.length===0)return $;return`${$.slice(0,J)}${K.join(`
|
|
3465
3465
|
`)}
|
|
3466
|
-
${$.slice(J)}`}function
|
|
3467
|
-
`+$.slice(J);let Y=
|
|
3466
|
+
${$.slice(J)}`}function s6($,Z={},J={},X){if(X??f3($))return $;return gG($,Z,J)}var mG=/<\/(script)/gi;function e1($){if(!$||$.indexOf("</")===-1)return $;return $.replace(mG,"<\\/$1")}var b1=["browserQuery","BrowserQueryBuilder","BrowserQueryError","browserAuth","configureBrowser","getBrowserConfig","createBrowserDb","createBrowserModel","isBrowser","debounce","throttle","retry","sleep","wait","delay","waitUntil","waitWhile","lazy","clamp","rand","readableSize","useActiveElement","useIntervalFn","useObjectUrl","useTimeoutFn"];import a6 from"path";U2();U2();function r6($,Z={}){return new o6($,Z).routes}function gV($,Z){let J=g3($,Z);return J?J.params:null}var t6=new Map;async function e6($,Z){let J=$,X=Z;if(!J||!X)try{let z=await y5();J||=z?.pagesDir||"pages",X||=z?.root||"."}catch{J||="pages",X||="."}let Y=a6.isAbsolute(J)?J:a6.join(X,J),Q=t6.get(Y);if(Q)return Q;let G=[];try{G=r6(".",{pagesDir:Y,emit:!1}).map((z)=>z.regex.source).filter(Boolean)}catch{G=[]}return t6.set(Y,G),G}function dG($){return $.replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function $8($){return dG(JSON.stringify($))}function Z8($){return $.includes("data-stx-runtime")}function J8($){let Z=/window\.stx\s*\.\s*[A-Za-z_$]|\}\s*=\s*window\.stx\s*;/g;for(let J=Z.exec($);J!==null;J=Z.exec($)){let X=$.slice(Math.max(0,J.index-80),J.index);if(/if\s*\(\s*window\.stx\s*\)|window\.stx\s*&&/.test(X))continue;return!0}return!1}function h3($,Z){let J=W2($),X=$.search(/<!doctype\b/i);if(J!==-1&&(X===-1||J>X))return $.slice(0,J)+Z+`
|
|
3467
|
+
`+$.slice(J);let Y=E2($);if(Y!==null)return`${$.slice(0,Y)}
|
|
3468
3468
|
${Z}${$.slice(Y)}`;if($.includes("</head>")){let G=$.indexOf("</head>");return $.slice(0,G)+Z+`
|
|
3469
|
-
`+$.slice(G)}if(p0($))return
|
|
3469
|
+
`+$.slice(G)}if(p0($))return v1($,(G)=>`${G}
|
|
3470
3470
|
${Z}`);return`${Z}
|
|
3471
|
-
${$}`}async function y9($,Z){if($.includes("data-stx-runtime")||$.includes("window.stx.state")||$.includes("STX Signals Runtime"))return $;if(Z.buildMode==="serve"){let{getServeClientAsset:Y}=await import("./chunk-
|
|
3471
|
+
${$}`}async function y9($,Z){if($.includes("data-stx-runtime")||$.includes("window.stx.state")||$.includes("STX Signals Runtime"))return $;if(Z.buildMode==="serve"){let{getServeClientAsset:Y}=await import("./chunk-qr3zcm87.js"),{url:Q}=await Y("runtime",Z.debug===!0);return h3($,`<script data-stx-runtime src="${Q}"></script>`)}if(Z.buildMode==="compile")return h3($,'<script data-stx-runtime src="/__stx/runtime.__STX_HASH__.js"></script>');let{getCachedSignalsRuntime:J}=await import("./chunk-qr3zcm87.js"),X=await J(Z.debug);return h3($,`<script data-stx-scoped data-stx-runtime>${X}</script>`)}function lG($){return/<[a-z][^>]*?\sx-tooltip\s*=/i.test($)}function X8($){if($.includes("data-stx-tooltip-runtime")||!lG($))return $;let Z=`<script data-stx-scoped data-stx-tooltip-runtime>${U3()}</script>`,J=$.lastIndexOf("</body>");if(J===-1)return`${$}
|
|
3472
3472
|
${Z}`;return`${$.slice(0,J)}${Z}
|
|
3473
|
-
${$.slice(J)}`}var
|
|
3474
|
-
`}let{getCachedRouterScript:Y,getServeClientAsset:Q}=await import("./chunk-
|
|
3475
|
-
</body>`+$.slice(z+7)}var
|
|
3476
|
-
`)}else{if(!
|
|
3477
|
-
`)W++;return W},K=()=>{let W=X+2;while(W<Q-1){if($[W]==="*"&&$[W+1]==="/")return W+2;W++}return Q},q=(W)=>{let
|
|
3478
|
-
`)B++;
|
|
3479
|
-
${w}`)}let
|
|
3480
|
-
|
|
3481
|
-
`);
|
|
3473
|
+
${$.slice(J)}`}var cG=/<script\b[^>]*\sdata-stx-router(?=[\s=>])/i;function pG($){return cG.test($)||$.includes("__stxRouter)return")||$.includes("__stxRouter=true")}async function iG($,Z){if(!$.includes("</body>"))return $;if(pG($))return $;let J=Z?.router,X="";{let K={};if(J){if(J.container)K.container=J.container;if(J.interceptAllLinks!==void 0)K.interceptAllLinks=J.interceptAllLinks;if(J.progress!==void 0)K.progress=J.progress;if(J.viewTransitions!==void 0)K.viewTransitions=J.viewTransitions;if(J.viewTransitionDuration!==void 0)K.viewTransitionDuration=J.viewTransitionDuration;if(J.viewTransitionEasing!==void 0)K.viewTransitionEasing=J.viewTransitionEasing;if(J.scrollToTop!==void 0)K.scrollToTop=J.scrollToTop;if(J.scrollRestoration!==void 0)K.scrollRestoration=J.scrollRestoration;if(J.prefetch!==void 0)K.prefetch=J.prefetch;if(J.cache!==void 0)K.cache=J.cache;if(J.progressColor!==void 0)K.progressColor=J.progressColor;if(J.progressHeight!==void 0)K.progressHeight=J.progressHeight}try{let q=await e6(Z?.pagesDir,Z?.root);if(q.length>0)K.ownedRoutes=q}catch{}if(Object.keys(K).length>0)X=`<script>window.__stxRouterConfig=${$8(K)};</script>
|
|
3474
|
+
`}let{getCachedRouterScript:Y,getServeClientAsset:Q}=await import("./chunk-qr3zcm87.js"),G=Z?.buildMode==="compile"?'<script data-stx-router src="/__stx/router.__STX_HASH__.js"></script>':Z?.buildMode==="serve"?`<script data-stx-router src="${(await Q("router")).url}"></script>`:`<script data-stx-router>${await Y()}</script>`,z=$.lastIndexOf("</body>");return $.slice(0,z)+X+G+`
|
|
3475
|
+
</body>`+$.slice(z+7)}var Y8=Symbol.for("stx.lazy-module-promises");function nG(){let $=globalThis;return $[Y8]??=new Map,$[Y8]}function s($,Z){let J=nG(),X=`${import.meta.url}\x00${$}`,Y=J.get(X);if(Y)return Y;let Q=Z();return J.set(X,Q),Q.catch(()=>{if(J.get(X)===Q)J.delete(X)}),Q}var u3=`(?:"[^"]*"|'[^']*'|[^>"'])*`,j8=/^<([a-zA-Z][a-zA-Z0-9-]*)\b((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*\s*)>([\s\S]*)<\/\1>$/s,sG=65536,oG=4,S9=new Map;function UL(){S9.clear()}function rG($){let Z=[];for(let J of y2($,K2)){let X=J.token.match(/^<script\b([^>]*)>/i),Y=J.token.match(/<\/script\s*>$/i);if(!X||!Y)continue;let Q=X[0].length,G=J.token.length-Y[0].length;Z.push(Object.freeze({fullMatch:J.token,attrs:X[1],body:J.token.slice(Q,G),start:J.start,end:J.end}))}return Z}function aG($,Z={}){let J=$.length>=sG,X=J?S9.get($):void 0;if(X===void 0){if(X=rG($),J)U8(S9,oG),S9.set($,X)}let Y=Z.skipAttrs;if(!Y)return X.slice();let Q=[];for(let G of X)if(Y.lastIndex=0,!Y.test(G.attrs))Q.push(G);return Q}function B8($){let Z=$.trim(),J=Z.match(/^([\s\S]+?)\s+as\s+(.+)$/);if(J){let Y=J[1].trim(),Q=J[2].trim(),{itemVar:G,indexVar:z}=Q8(Q);if(G)return{style:"as",iterable:Y,itemVar:G,indexVar:z}}let X=Z.match(/^(\([^)]+\)|\w+(?:\s*,\s*\w+)?)\s+(?:in|of)\s+([\s\S]+)$/);if(X){let Y=X[1].trim(),Q=X[2].trim(),{itemVar:G,indexVar:z}=Q8(Y);if(G)return{style:"in",iterable:Q,itemVar:G,indexVar:z}}return{style:"unknown",iterable:null,itemVar:null,indexVar:null}}function Q8($){let Z=$.trim(),J=Z.match(/^(\w+)\s*=>\s*(\w+)$/);if(J)return{itemVar:J[2],indexVar:J[1]};let X=Z.match(/^\(\s*(\w+)(?:\s*,\s*(\w+))?\s*\)$/);if(X)return{itemVar:X[1],indexVar:X[2]||null};let Y=Z.match(/^(\w+)\s*,\s*(\w+)$/);if(Y)return{itemVar:Y[1],indexVar:Y[2]};let Q=Z.match(/^(\w+)$/);if(Q)return{itemVar:Q[1],indexVar:null};return{itemVar:null,indexVar:null}}function l3($,Z){return H8($,Z)}function tG($){let Z=/@(if\s*\(|endif|elseif\s*\(|else\b)/g,J=0,X;while((X=Z.exec($))!==null){let Y=X[1];if(Y.startsWith("if"))J++;else if(Y==="endif")J--;else if(J===0)return!0}return!1}function eG($){let Z=new Set,J=/<script\b(?![^>]*\bserver\b)(?![^>]*\bsrc\s*=)[^>]*>([\s\S]*?)<\/script>/gi,X=/\b(?:const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=\s*(?:state|derived|computed|ref|reactive|signal|useModel)\s*(?:<[^>]*>)?\s*\(/g,Y;while((Y=J.exec($))!==null){let Q=Y[1],G;while((G=X.exec(Q))!==null)Z.add(G[1])}return Z}function $z($){if(!/[:@]for\s*=/.test($)&&!/\bx-for\s*=/.test($))return[];let Z=new RegExp(`<([a-zA-Z][\\w-]*)\\b(${u3})>`,"iy"),J=/(?:^|\s)(?::for|@for|x-for)\s*=\s*(?:"([^"]*)"|'([^']*)')/i,X=y2($,(Q,G)=>{Z.lastIndex=G;let z=Z.exec(Q);if(!z||z.index!==G||!J.test(z[2]))return-1;return Z.lastIndex}),Y=[];for(let Q of X){Z.lastIndex=0;let G=Z.exec(Q.token);if(!G)continue;let z=G[2].match(J),K=B8(z?.[1]??z?.[2]??""),q=[K.itemVar,K.indexVar].filter(Boolean);if(q.length===0)continue;let W=G[1],U=/\/\s*>$/.test(Q.token)||P9.has(W.toLowerCase())?Q.end:L8($,Q.start,W,Q.end);if(U!==-1)Y.push({start:Q.start,end:U,vars:new Set(q)})}return Y}var G8=new Set(["true","false","null","undefined","NaN","Infinity","typeof","instanceof","in","of","new","void","delete","this","Math","JSON","Date","Number","String","Boolean","Array","Object","RegExp","Map","Set","Symbol","parseInt","parseFloat","isNaN","isFinite","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","window","document","console"]);function Zz($){return $.replace(/'(?:\\.|[^'\\])*'/g,"''").replace(/"(?:\\.|[^"\\])*"/g,'""').replace(/`(?:\\.|[^`\\])*`/g,"``")}function z8($,Z,J,X){if(!$)return!1;let Y=Zz($),Q=!1,G=!1,z=!1,K=/([a-zA-Z_$][\w$]*)/g,q;while((q=K.exec(Y))!==null){let j=q[1];if(Y.slice(0,q.index).trimEnd().endsWith("."))continue;if(G8.has(j))continue;if(Z.has(j)||X?.has(j))Q=!0;else if(J&&j in J)G=!0}let W=/([a-zA-Z_$][\w$]*)(?:\.[a-zA-Z_$][\w$]*)*\s*\(\s*\)/g,H;while((H=W.exec(Y))!==null){let j=H[1];if(Y.slice(0,H.index).trimEnd().endsWith("."))continue;if(G8.has(j)||J&&j in J)continue;z=!0}return(Q||z)&&!G}function C9($,Z,J){let X=J===void 0?` ${Z}`:` ${Z}="${J.replace(/"/g,""")}"`,Y=$.trim(),Q=Y.match(j8);if(Q&&Jz(Q[3],Q[1])){let[,G,z,K]=Q;return`<${G}${z}${X}>${K}</${G}>`}return`<template${X}>${Y}</template>`}function Jz($,Z){let J=new RegExp(`<(/)?${Z}(?=[\\s/>])`,"gi"),X=0,Y;while((Y=J.exec($))!==null)if(Y[1]){if(X--,X<0)return!1}else X++;return!0}function V8($,Z){let J=eG($);function X(Y){let Q=Y,G=$z(Y),z=(H)=>{let U=new Set;for(let j of G)if(H>j.start&&H<j.end)for(let B of j.vars)U.add(B);return U},K=/@if\s*\(/g,q,W=[];while((q=K.exec(Q))!==null){let H=q.index,U=H+q[0].length,j=1,B=U;while(B<Q.length&&j>0){if(Q[B]==="(")j++;else if(Q[B]===")")j--;B++}if(j!==0)continue;let V=Q.substring(U,B-1).trim(),_=B,O=1,F=_,L=/@(if\s*\(|endif)/g;L.lastIndex=_;let w;while((w=L.exec(Q))!==null)if(w[1].startsWith("if"))O++;else if(w[1]==="endif"){if(O--,O===0){F=w.index+w[0].length;break}}if(O!==0)continue;let N=Q.substring(_,F-6).trim(),R;if(tG(N)){let M=_2(Q.substring(H,F));if(M.length===0)continue;let T=M[0].branches.filter((A)=>A.type!=="else"),D=z(H);if(!(T.length>0&&T.every((A)=>z8(A.condition,J,Z,D))))continue;R=M[0].branches.map((A)=>{let E=X(A.content);if(A.type==="elseif")return C9(E,"@else-if",A.condition??"");if(A.type==="else")return C9(E,"@else");return C9(E,"@if",A.condition??"")}).join(`
|
|
3476
|
+
`)}else{if(!z8(V,J,Z,z(H)))continue;R=C9(X(N),"@if",V)}W.push({start:H,end:F,replacement:R}),K.lastIndex=F}for(let H=W.length-1;H>=0;H--){let{start:U,end:j,replacement:B}=W[H];Q=Q.substring(0,U)+B+Q.substring(j)}return Q}return X($)}function Xz($){let Z=$.trim();if(Z==="")return;if(Z==="true")return!0;if(Z==="false")return!1;if(Z==="null")return!1;if(Z==="undefined")return!1;if(Z==="NaN")return!1;if(/^-?\d+(?:\.\d+)?$/.test(Z)){let Y=Number(Z);return Y!==0&&!Number.isNaN(Y)}let J=Z.match(/^'((?:\\.|[^'\\])*)'$/);if(J)return J[1].length>0;let X=Z.match(/^"((?:\\.|[^"\\])*)"$/);if(X)return X[1].length>0;return}var P9=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),K8=/<(script|style)\b/iy,Yz=/<\/script/gi,Qz=/<\/style/gi;function L8($,Z,J,X){if(P9.has(J.toLowerCase()))return X;let Y=J.toLowerCase(),Q=$.length,G=1,z=X;while(z<Q){let K=$.indexOf("<",z);if(K===-1)return-1;if(z=K,$.startsWith("<!--",z)){let U=$.indexOf("-->",z+4);if(U===-1)return-1;z=U+3;continue}K8.lastIndex=z;let q=K8.exec($);if(q){let U=$.indexOf(">",z);if(U===-1)return-1;if($[U-1]==="/"){z=U+1;continue}let j=q[1].toLowerCase()==="script"?Yz:Qz;j.lastIndex=z;let B=j.exec($);if(B===null)return-1;let V=$.indexOf(">",B.index);if(V===-1)return-1;z=V+1;continue}if($[z+1]==="/"){let U=/^<\/([a-z][\w-]*)\s*>/i.exec($.slice(z,z+64));if(!U){z++;continue}if(U[1].toLowerCase()===Y){if(G--,z+=U[0].length,G===0)return z;continue}z+=U[0].length;continue}let W=/^<([a-z][\w-]*)\b/i.exec($.slice(z,z+64));if(!W){z++;continue}let H=$.indexOf(">",z);if(H===-1)return-1;if(W[1].toLowerCase()===Y){let U=$.slice(z,H+1);if(!(/\/\s*>$/.test(U)||P9.has(Y)))G++}z=H+1}return-1}var Gz=/\s(?::else-if|x-else-if|@else-if|:else|x-else|@else)(?=[=\s/>])/;function zz($,Z){let J=Z,X=$.length;for(;;){while(J<X&&$[J]!=="<")J++;if(J>=X)return!1;if($.startsWith("<!--",J)){let G=$.indexOf("-->",J+4);if(G===-1)return!1;J=G+3;continue}break}if($[J+1]==="/")return!1;let Y=$.indexOf(">",J);if(Y===-1)return!1;let Q=$.slice(J,Y+1);return Gz.test(Q)}function O8($){if(!$.includes(":if")&&!$.includes(":show")&&!$.includes("x-if")&&!$.includes("x-show")&&!$.includes("@if=")&&!$.includes("@show="))return $;let Z=[],J=/<(script|style)\b[^>]*>[\s\S]*?<\/\1\s*>/gi,X;while((X=J.exec($))!==null)Z.push([X.index,X.index+X[0].length]);let Y=(H)=>Z.some(([U,j])=>H>=U&&H<j),Q=/<([a-zA-Z][\w-]*)\b((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*?)\s+(:if|:show|x-if|x-show|@if|@show)\s*=\s*"([^"]*)"((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*\s*)(\/?)>/g,G=[],z;while((z=Q.exec($))!==null){if(Y(z.index))continue;let[H,U,j,B,V,_,O]=z,F=Xz(V);if(F===void 0)continue;let L=z.index,w=L+H.length,M=!!O||/\/\s*>$/.test(H)||P9.has(U.toLowerCase())?w:L8($,L,U,w);if(M===-1)continue;if((B===":if"||B==="x-if"||B==="@if")&&zz($,M)){Q.lastIndex=w;continue}if(F===!0){let D=`<${U}${j}${_}${O}>`;G.push({start:L,end:w,replacement:D});continue}G.push({start:L,end:M,replacement:""}),Q.lastIndex=M}if(G.length===0)return $;G.sort((H,U)=>H.start-U.start);let K=[],q=-1;for(let H of G){if(H.start<q)continue;K.push(H),q=H.end}let W=$;for(let H=K.length-1;H>=0;H--){let{start:U,end:j,replacement:B}=K[H];W=W.substring(0,U)+B+W.substring(j)}return W}function c3($,Z){let J=$,X=/@(for|foreach)\s*\(/g,Y,Q=[],G=[];while((Y=X.exec(J))!==null){let z=Y[1],K=Y.index,q=K+Y[0].length,W=1,H=q;while(H<J.length&&W>0){if(J[H]==="(")W++;else if(J[H]===")")W--;H++}if(W!==0)continue;let U=J.substring(q,H-1).trim(),j=H,B=B8(U),V=z==="for"?"@endfor":"@endforeach",_=1,O=j,F=z==="for"?new RegExp("@(for(?!each)\\s*\\(|endfor(?!each))","g"):new RegExp(`@(${z}\\s*\\(|end${z})`,"g");F.lastIndex=j;let L;while((L=F.exec(J))!==null)if(L[1].startsWith(z))_++;else if(_--,_===0){O=L.index+L[0].length;break}if(_!==0)continue;let w=()=>{let I=[B.itemVar,B.indexVar].filter(Boolean);if(I.length)G.push({start:K,end:O,vars:I})};if(B.iterable){let I=B.iterable.trim();if(I.startsWith("[")||I.startsWith("{")||I.startsWith("'")||I.startsWith('"')||I.startsWith("`")||/^-?\d/.test(I)){w();continue}let k=I.split(/[.[(]/)[0].trim(),A=Z?k in Z:!1,E=G.some((C)=>K>C.start&&K<C.end&&C.vars.includes(k));if(k&&(A||E)){w();continue}}if(B.style==="as")U=B.indexVar?`(${B.itemVar}, ${B.indexVar}) in ${B.iterable}`:`${B.itemVar} in ${B.iterable}`;let N=J.substring(j,O-V.length).trim(),R=Z?{...Z}:{};if(B.itemVar)delete R[B.itemVar];if(B.indexVar)delete R[B.indexVar];let M=c3(N,R),T=M.match(j8),D;if(T){let[,I,k,A]=T;D=`<${I}${k} @for="${U}">${A}</${I}>`}else D=`<template @for="${U}">${M}</template>`;Q.push({start:K,end:O,replacement:D}),X.lastIndex=O}for(let z=Q.length-1;z>=0;z--){let{start:K,end:q,replacement:W}=Q[z];J=J.substring(0,K)+W+J.substring(q)}return J}function Kz($){let Z=new Set,J=[],X=0,Y=0,Q=$.length,G=(W)=>{let H=X+1;while(H<Q){let U=$[H];if(U==="\\"){H+=2;continue}if(U===W)return H+1;H++}return Q},z=()=>{let W=X+2;while(W<Q&&$[W]!==`
|
|
3477
|
+
`)W++;return W},K=()=>{let W=X+2;while(W<Q-1){if($[W]==="*"&&$[W+1]==="/")return W+2;W++}return Q},q=(W)=>{let H=W,U=0;while(H<Q){let j=$[H];if(j==="/"&&$[H+1]==="/"){let B=H+2;while(B<Q&&$[B]!==`
|
|
3478
|
+
`)B++;H=B;continue}if(j==="/"&&$[H+1]==="*"){let B=H+2;while(B<Q-1&&!($[B]==="*"&&$[B+1]==="/"))B++;H=B+2;continue}if(j==='"'||j==="'"||j==="`"){let B=H+1;while(B<Q){if($[B]==="\\"){B+=2;continue}if($[B]===j){B++;break}B++}H=B;continue}if(j==="("||j==="["||j==="{"){U++,H++;continue}if(j===")"||j==="]"||j==="}"){U--,H++;continue}if(j===";"&&U===0)return H+1;H++}return Q};while(X<Q){let W=$[X];if(W==="/"&&$[X+1]==="/"){let H=z();J.push($.slice(X,H)),X=H;continue}if(W==="/"&&$[X+1]==="*"){let H=K();J.push($.slice(X,H)),X=H;continue}if(W==='"'||W==="'"||W==="`"){let H=G(W);J.push($.slice(X,H)),X=H;continue}if(W==="{"){Y++,J.push(W),X++;continue}if(W==="}"){Y--,J.push(W),X++;continue}if(Y===0){let H=X>0?$[X-1]:"";if(H===""||/\s/.test(H)||H===";"||H==="}"||H==="{"){let j=$.slice(X).match(/^(const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=/);if(j){let B=j[2],V=q(X+j[0].length);if(Z.has(B)){J.push(`/* stx: deduped const ${B} */`),X=V;continue}Z.add(B),J.push($.slice(X,V)),X=V;continue}}}J.push(W),X++}return J.join("")}var qz=new Set(["script","style","html","head","meta","link","title","!doctype"]);function m3($,Z,J){for(let X of J){if(X.start>=Z)return!1;if(X.end>$)return!0}return!1}function Wz($,Z,J){let X=0;while(X<$.length){let Y=$.indexOf(Z,X);if(Y===-1)return!1;if(!m3(Y,Y+Z.length,J))return!0;X=Y+Z.length}return!1}function Hz($,Z){if(Wz($,"<body",Z)){let Y=new RegExp(`<body(${u3})>`,"g"),Q;while((Q=Y.exec($))!==null)if(!m3(Q.index,Q.index+Q[0].length,Z))return Q.index+Q[0].length-1;return null}let J=new RegExp(`<([a-zA-Z][a-zA-Z0-9-]*)\\b(${u3})>`,"gi"),X;while((X=J.exec($))!==null){if(m3(X.index,X.index+X[0].length,Z))continue;if(qz.has(X[1].toLowerCase()))continue;return X.index+X[0].length-1}return null}function Uz($,Z,J,X){let Y=[],Q=` data-stx="${X}"`,G=0,z=!1,K=(q)=>{if(J!==null&&!z&&J>=G&&J<=q)Y.push($.slice(G,J),Q,$.slice(J,q)),z=!0;else Y.push($.slice(G,q))};for(let q of Z){if(q.start<G)continue;K(q.start),G=q.end}return K($.length),Y.join("")}async function jz($,Z,J){let X=aG($,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b/}),Y=/\b(?:state|derived|effect|ref|reactive|computed|watch|watchEffect|useStore|useLocalStorage|useSessionStorage|useCookie|useId|useModel|useReactiveProp|useFetch|useRef|useEventListener|useDebounce|useDebouncedValue|useThrottle|useInterval|useTimeout|useToggle|useCounter|useClickOutside|useFocus|useAsync|useColorMode|useDark|useMediaQuery|useScrollLock|usePreferredDark|usePreferredLight|usePreferredReducedMotion|usePreferredContrast|useWebSocket|useRoute|useSearchParams|onMount|onDestroy|defineProps|withDefaults|defineEmits|defineExpose|defineSlots|useOptimistic)\s*(?:<[^>]*>)?\s*\(/,Q=[],{hasUserImports:G,bundleClientScript:z}=await s("stx/client-script-bundler",()=>import("./chunk-7g5vk4c3.js"));for(let F of X){let L=F.body;if(I1(F.attrs))L=T1(L);if(Y.test(L)){Q.push({content:L,start:F.start,end:F.end});continue}if(!G(L))continue;try{let w=await z($2(L).code,Z||"",{projectRoot:process.cwd(),externalizeUserModules:!1});if(Y.test(w))Q.push({content:L,start:F.start,end:F.end})}catch{}}if(Q.length===0)return{output:$,setupCode:null};let K=`${Z??""}\x00${Q.map((F)=>F.content).join("\x00")}`,q=`__stx_setup_${Bun.hash(K).toString(36).slice(0,10)}`,W=[];for(let F=0;F<Q.length;F++){let L=Q[F].bundled??$2(Q[F].content).code;if(!Q[F].bundled&&G(L))L=await z(L,Z||"",{projectRoot:process.cwd()});L=Oz(L);let w=a0(L);W.push(`// \u2500\u2500 merged signal script #${F+1} \u2500\u2500
|
|
3479
|
+
${w}`)}let H=W.join(`
|
|
3480
|
+
|
|
3481
|
+
`);H=Kz(H);let U=Bz(H),j=U.split(",").map((F)=>F.trim()).filter(Boolean),B=d3(H,J),V=`
|
|
3482
3482
|
<script data-stx-scoped>
|
|
3483
3483
|
function ${q}() {
|
|
3484
|
-
${
|
|
3485
|
-
${
|
|
3486
|
-
return { ${
|
|
3484
|
+
${s1("const",j)}
|
|
3485
|
+
${e1(`${B}${H}`)}
|
|
3486
|
+
return { ${U} };
|
|
3487
3487
|
}
|
|
3488
3488
|
window.__stx_latestSetup=${q};
|
|
3489
3489
|
if(window.stx)window.stx._latestSetup=${q};
|
|
3490
|
-
</script>`,_=
|
|
3491
|
-
`)return;Q++}},q=()=>{if(!z)return!0;if(/[\w)\]]/.test(z))return!1;return!0},W=(B)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===B){Q++;return}Q++}},
|
|
3492
|
-
`)Q++;return!0}if(Z[Q]==="/"&&Z[Q+1]==="*"){Q+=2;while(Q<G-1&&!(Z[Q]==="*"&&Z[Q+1]==="/"))Q++;return Q+=2,!0}return!1},j=()=>{if(Y!==0)return;let B=Z.slice(Q).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*(?:[!:;,\n]|=(?!=)|$)/);if(B){let L=B[2];if(!X.has(L))J.push(L),X.add(L);return}let V=Z.slice(Q).match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(V){V[1].split(",").forEach((L)=>{let w=L.trim();if(!w)return;let N=w.indexOf(":"),M=(N>=0?w.slice(N+1).trim():w).split(/[\s=]/)[0];if(M&&!X.has(M))J.push(M),X.add(M)});return}let _=Z.slice(Q).match(/^(?:const|let|var)\s+\[([^\]]+)\]\s*=/);if(_){_[1].split(",").forEach((L)=>{let w=L.trim().replace(/^\.\.\./,"");if(!w)return;let N=w.split(/[\s=]/)[0];if(N&&!X.has(N))J.push(N),X.add(N)});return}let O=Z.slice(Q).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(O){let L=O[1];if(!X.has(L))J.push(L),X.add(L);return}let F=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(F){let L=F[1];if(!X.has(L))J.push(L),X.add(L)}};while(Q<G){if(
|
|
3490
|
+
</script>`,_=Hz($,Q);return{output:Uz($,Q,_,q),setupCode:V}}function Bz($){let Z=$,J=[],X=new Set,Y=0,Q=0,G=Z.length,z="",K=()=>{Q++;let B=!1;while(Q<G){let V=Z[Q];if(V==="\\"){Q+=2;continue}if(V==="["&&!B){B=!0,Q++;continue}if(V==="]"&&B){B=!1,Q++;continue}if(V==="/"&&!B){Q++;while(Q<G&&/[gimsuyd]/.test(Z[Q]))Q++;return}if(V===`
|
|
3491
|
+
`)return;Q++}},q=()=>{if(!z)return!0;if(/[\w)\]]/.test(z))return!1;return!0},W=(B)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===B){Q++;return}Q++}},H=()=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]==="`"){Q++;return}if(Z[Q]==="$"&&Z[Q+1]==="{"){Q+=2;let B=1;while(Q<G&&B>0)if(Z[Q]==="{")B++,Q++;else if(Z[Q]==="}")B--,Q++;else if(Z[Q]==="'"||Z[Q]==='"')W(Z[Q]);else if(Z[Q]==="`")H();else Q++;continue}Q++}},U=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
|
|
3492
|
+
`)Q++;return!0}if(Z[Q]==="/"&&Z[Q+1]==="*"){Q+=2;while(Q<G-1&&!(Z[Q]==="*"&&Z[Q+1]==="/"))Q++;return Q+=2,!0}return!1},j=()=>{if(Y!==0)return;let B=Z.slice(Q).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*(?:[!:;,\n]|=(?!=)|$)/);if(B){let L=B[2];if(!X.has(L))J.push(L),X.add(L);return}let V=Z.slice(Q).match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(V){V[1].split(",").forEach((L)=>{let w=L.trim();if(!w)return;let N=w.indexOf(":"),M=(N>=0?w.slice(N+1).trim():w).split(/[\s=]/)[0];if(M&&!X.has(M))J.push(M),X.add(M)});return}let _=Z.slice(Q).match(/^(?:const|let|var)\s+\[([^\]]+)\]\s*=/);if(_){_[1].split(",").forEach((L)=>{let w=L.trim().replace(/^\.\.\./,"");if(!w)return;let N=w.split(/[\s=]/)[0];if(N&&!X.has(N))J.push(N),X.add(N)});return}let O=Z.slice(Q).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(O){let L=O[1];if(!X.has(L))J.push(L),X.add(L);return}let F=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(F){let L=F[1];if(!X.has(L))J.push(L),X.add(L)}};while(Q<G){if(U())continue;if(Z[Q]==="'"||Z[Q]==='"'){W(Z[Q]),z=Z[Q-1];continue}if(Z[Q]==="`"){H(),z="`";continue}if(Z[Q]==="/"&&Z[Q+1]!=="/"&&Z[Q+1]!=="*"&&q()){K(),z="/";continue}if(Z[Q]==="{"){Y++,z="{",Q++;continue}if(Z[Q]==="}"){Y--,z="}",Q++;continue}if(Y===0&&/[a-z]/i.test(Z[Q])&&(Q===0||/\s|[;{}()]/.test(Z[Q-1])))j();if(!/\s/.test(Z[Q]))z=Z[Q];Q++}return J.join(", ")}async function _8($,Z,J,X){if(!l3($,J))return $;let Y=$;if(Z.skipSignalsRuntime)return Y;let{output:Q,setupCode:G}=await jz(Y,J,X);if(Y=Q,!G){let z=p0(Y);if(z&&!/data-stx/.test(z.attrs)&&!/data-stx-auto/.test(z.attrs)){let K=z.tag.replace(/^<body([^>]*)>$/i,"<body$1 data-stx-auto>");Y=Y.slice(0,z.index)+K+Y.slice(z.index+z.tag.length)}}if(Y=await y9(Y,Z),G){let z=q8(Y,/<\/head>/i),K=z===-1?q8(Y,/<body[^>]*>/i):-1;if(z!==-1)Y=`${Y.slice(0,z)}${G}
|
|
3493
3493
|
${Y.slice(z)}`;else if(K!==-1){let q=/<body[^>]*>/i.exec(Y.slice(K))[0],W=K+q.length;Y=`${Y.slice(0,W)}
|
|
3494
3494
|
${G}${Y.slice(W)}`}else Y=`${Y}
|
|
3495
|
-
${G}`}return Y}function
|
|
3496
|
-
`+" `import.meta.env.STX_PUBLIC_*` is substituted at build time and is safe; anything else is not.\n Fix it by moving the module-only code (`import.meta.glob`, `import.meta.url`) into its own module, or by resolving the value without `import.meta`.");throw J[
|
|
3497
|
-
// Source: ${
|
|
3495
|
+
${G}`}return Y}function q8($,Z){let J=/<(script|style)\b[\s\S]*?<\/\1>/gi,X=[],Y;while((Y=J.exec($))!==null)X.push([Y.index,Y.index+Y[0].length]);let Q=new RegExp(Z.source,Z.flags.replace(/[gy]/g,"")),G=0;while(G<$.length){let z=Q.exec($.slice(G));if(!z)return-1;let K=G+z.index;if(!X.some(([W,H])=>K>=W&&K<H))return K;G=K+Math.max(z[0].length,1)}return-1}var W8="/* [stx import stripped, resolved via window.stx in __stx_setup] */";function Vz($){let Z=[];for(let J of $.split(",")){let X=J.trim();if(!X||X.startsWith("type "))continue;let Y=X.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(Y&&Y[1]!==Y[2])Z.push(`${Y[2]} = ${Y[1]}`)}if(Z.length===0)return W8;return`var ${Z.join(", ")}; ${W8}`}var Lz=/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm;function Oz($){return $.replace(Lz,(Z,J)=>Vz(J))}import J2 from"path";import F8 from"process";function Z2($="STX_PUBLIC_"){let Z={},J={};for(let[X,Y]of Object.entries(F8.env)){if(!X.startsWith($)||Y===void 0)continue;Z[`import.meta.env.${X}`]=JSON.stringify(Y),J[X]=Y}return Z["import.meta.env"]=JSON.stringify(J),Z}function VL($="STX_PUBLIC_"){let Z={};for(let[J,X]of Object.entries(F8.env))if(J.startsWith($)&&X!==void 0)Z[J]=X;return Z}function w8($){return $.startsWith("http://")||$.startsWith("https://")||$.startsWith("//")}async function R8($,Z,J){try{let X;if($.startsWith("/")){let Y=Z;for(let Q=0;Q<5;Q++){let G=J2.join(Y,$);if(await Bun.file(G).exists())return G;Y=J2.dirname(Y)}X=J2.join(Z,$)}else if($.startsWith("./")||$.startsWith("../"))X=J2.resolve(Z,$);else X=J2.resolve(Z,$);if(await Bun.file(X).exists())return X;return null}catch{return null}}var N8=Symbol.for("stx.inline-assets.import-meta");function _z($,Z){if(!$.includes("import.meta"))return;let J=Error(`[stx] ${Z} still references \`import.meta\` after bundling, and it is being inlined as a classic <script> where that is a SyntaxError \u2014 the whole script fails to parse, taking every other script on the page with it.
|
|
3496
|
+
`+" `import.meta.env.STX_PUBLIC_*` is substituted at build time and is safe; anything else is not.\n Fix it by moving the module-only code (`import.meta.glob`, `import.meta.url`) into its own module, or by resolving the value without `import.meta`.");throw J[N8]=!0,J}async function D8($,Z,J){let X=$,Y=J2.dirname(Z),Q=/<script\b([^>]*)src=["']([^"']+)["']([^>]*)><\/script>/gi,G;while((G=Q.exec(X))!==null){let[q,W,H,U]=G;if(w8(H))continue;let j=await R8(H,Y,Z);if(j)try{let B=await Bun.file(j).text();if(J.add(j),H.endsWith(".ts")||H.endsWith(".tsx")){let _=await Bun.build({entrypoints:[j],target:"browser",minify:!0,define:Z2()});if(_.outputs.length>0)B=await _.outputs[0].text(),_z(B,H)}let V=`<script>
|
|
3497
|
+
// Source: ${H}
|
|
3498
3498
|
${B}
|
|
3499
|
-
</script>`;X=X.replace(q,V),Q.lastIndex=0}catch(B){if(B?.[
|
|
3500
|
-
/* Source: ${
|
|
3499
|
+
</script>`;X=X.replace(q,V),Q.lastIndex=0}catch(B){if(B?.[N8])throw B}}let z=/<link\b([^>]*)href=["']([^"']+)["']([^>]*)(?:\/?>)/gi,K;while((K=z.exec(X))!==null){let[q,W,H,U]=K,j=W+U;if(w8(H))continue;if(/rel=["']stylesheet["']/.test(j)||H.endsWith(".css")){let V=await R8(H,Y,Z);if(V)try{let _=await Bun.file(V).text();J.add(V);let O=`<style>
|
|
3500
|
+
/* Source: ${H} */
|
|
3501
3501
|
${_}
|
|
3502
|
-
</style>`;X=X.replace(q,O),z.lastIndex=0}catch(_){}}}return X}function
|
|
3502
|
+
</style>`;X=X.replace(q,O),z.lastIndex=0}catch(_){}}}return X}function p3($,Z){let J=$,X=/@json\s*\(/g,Y;while((Y=X.exec(J))!==null){let Q=Y.index,G=Q+Y[0].length-1,z=1,K=G+1,q=null,W=!1;while(K<J.length&&z>0){let L=J[K];if(W){W=!1,K++;continue}if(L==="\\"&&q){W=!0,K++;continue}if(q){if(L===q)q=null;K++;continue}if(L==='"'||L==="'"||L==="`"){q=L,K++;continue}if(L==="(")z++;else if(L===")"){if(z--,z===0)break}K++}if(z!==0)break;let H=J.substring(G+1,K).trim(),U=J.substring(Q,K+1),j=-1,B=0,V=null,_=!1;for(let L=0;L<H.length;L++){let w=H[L];if(_){_=!1;continue}if(w==="\\"&&V){_=!0;continue}if(V){if(w===V)V=null;continue}if(w==='"'||w==="'"||w==="`"){V=w;continue}if(w==="("||w==="["||w==="{")B++;else if(w===")"||w==="]"||w==="}")B--;if(w===","&&B===0){j=L;break}}let O=j>=0?H.substring(0,j).trim():H,F=j>=0?H.substring(j+1).trim():void 0;try{let L=O.trim(),w;if(j0(L))w=W0(L,Object.keys(Z))(...Object.values(Z));else w=void 0;let N;if(F==="true")N=JSON.stringify(w,null,2);else N=JSON.stringify(w);let R=N.replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029");J=J.substring(0,Q)+R+J.substring(K+1),X.lastIndex=Q+R.length}catch(L){n0.log(L instanceof Error?L:Error(String(L)),{directive:"@json"},"error"),X.lastIndex=Q+U.length}}return J}function i3($){return $.replace(/@once\s*([\s\S]*?)@endonce/g,"$1")}function I8($){let Z=$,J=/@memo\s*\(/g,X,Y=[];while((X=J.exec(Z))!==null){let Q=X.index,G=Q+X[0].length,z=1,K=G;while(K<Z.length&&z>0){if(Z[K]==="(")z++;else if(Z[K]===")")z--;K++}if(z!==0)continue;let q=Z.slice(G,K-1).trim(),W=K,H=Z.slice(W),U=H.indexOf("@endmemo");if(U===-1)continue;let j=H.slice(0,U),B=W+U+8,V=j.match(/^(\s*(?:(?:<!--[\s\S]*?-->|\x00STX_HTML_COMMENT_\d+\x00)\s*)*)/),_=V?V[0].length:0,O=j.slice(_),F=j.match(/(\s*)$/),L=F?F[0].length:0,w=O.slice(0,O.length-L),N=w.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*?)?(\/?)>/),R;if(N){let[M,T,D="",I]=N,k=`<${T}${D} data-stx-memo="${q}"${I}>`;R=j.slice(0,_)+k+w.slice(M.length)+j.slice(_+w.length)}else R=`${j.slice(0,_)}<div data-stx-memo="${q}">${w}</div>${j.slice(_+w.length)}`;Y.push({start:Q,end:B,replacement:R}),J.lastIndex=B}for(let Q=Y.length-1;Q>=0;Q--){let G=Y[Q];Z=Z.slice(0,G.start)+G.replacement+Z.slice(G.end)}return Z.replace(/@memo="([^"]*)"/g,'data-stx-memo="$1"')}function n3($){let Z=$.replace(/@ref="([^"]+)"/g,'data-stx-ref="$1"');return Z=Z.replace(/(<[a-zA-Z][a-zA-Z0-9-]*\b[^>]*?)\sref="([^"]+)"/g,'$1 data-stx-ref="$2"'),Z}function T8($,Z){if(!/\bref\s*=/.test($))return $;let J=/<\/?([a-zA-Z][\w-]*)\b(?:"[^"]*"|'[^']*'|[^'">])*>/y,X=y2($,(K,q)=>{J.lastIndex=q;let W=J.exec(K);if(!W||/^(?:script|style)$/i.test(W[1]))return-1;return J.lastIndex}),Y=[],Q=0,G=0,z=[];for(let{start:K,end:q,token:W}of X){let H=/^<\/?([\w-]+)/.exec(W)[1].toLowerCase();if(W.startsWith("</")){let j;while(j=Y.pop()){if(j.scoped)Q--;if(j.name===H)break}continue}let U=/\sdata-stx-scope\s*=/.test(W);if(!Q&&!U&&/\s(?:ref|@ref|:ref|x-ref|data-stx-ref)\s*=/.test(W)&&!/\sdata-stx-ref-caller\s*=/.test(W))z.push($.slice(G,K),W.replace(/\s*\/?>$/,(j)=>` data-stx-ref-caller="${Z}"${j}`)),G=q;if(!k8.has(H)&&!/\/>$/.test(W)){if(Y.push({name:H,scoped:U}),U)Q++}}return z.push($.slice(G)),z.join("")}var k8=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),E8=/(?:^|\s)x-no-cloak(?:=|\s|\/|>|$)/,M8=/<\/?\s*([a-z][\w-]*)/iy,Fz=/\s/;function wz($,Z){let J=Z-1;while(J>=0&&Fz.test($[J]))J--;return J>=0&&$[J]==="/"}function Rz($,Z){let J=!1,X=!1;for(let Y=Z;Y<$.length;Y++){let Q=$[Y];if(J){if(Q==="'")J=!1}else if(X){if(Q==='"')X=!1}else if(Q==="'")J=!0;else if(Q==='"')X=!0;else if(Q===">")return Y}return-1}function Nz($,Z){if($.indexOf("{",Z)===-1||$.indexOf("}",Z)===-1)return!1;let J=0,X=Z,Y=!1,Q=!1,G=!1;while(X<$.length){let z=$.indexOf("<",X),K=z===-1?$.length:z;if(K>X){if(J===0)while(X<K){let H=$.indexOf(Q?"}":"{",X);if(H===-1||H>=K){if(Q)G=!1;else Y=!1;break}if(H>X)if(Q)G=!1;else Y=!1;if(Q){if(G)return!0;G=!0}else if(Y)Q=!0,G=!1;else Y=!0;X=H+1}X=K;continue}if($.startsWith("<!--",X)){let H=$.indexOf("-->",X);X=H===-1?$.length:H+3;continue}let q=Rz($,X);if(q===-1)break;M8.lastIndex=X;let W=M8.exec($)?.[1]?.toLowerCase()??"";if($[X+1]==="/"){if(J===0)break;J--}else if(!wz($,q)&&!k8.has(W))J++;X=q+1}return!1}function b8($){if($.length>=32768&&!A8($))return $;let J=new RegExp(`<(${"div|span|p|h[1-6]|td|th|li|a|button|label|section|article|header|footer|main|nav|aside|dd|dt|figcaption|summary|caption|blockquote|pre|code|em|strong|small|sub|sup|time|mark|abbr|cite|q|s|u|b|i"})\\b`,"gi"),X="",Y=0,Q;while((Q=J.exec($))!==null){let G=Q.index,z=G+Q[0].length,K=!1,q=!1,W=-1;while(z<$.length){let U=$[z];if(K){if(U==="'")K=!1}else if(q){if(U==='"')q=!1}else if(U==="'")K=!0;else if(U==='"')q=!0;else if(U===">"){W=z;break}z++}if(W===-1)continue;let H=$.slice(G,W+1);if(E8.test(H))continue;if(H.includes("x-cloak"))continue;if(Nz($,W+1))X+=$.slice(Y,W)+" x-cloak>",Y=W+1}return X+=$.slice(Y),X}var Dz=/(?:^|\s)(?::else-if|:if|:else|:show|x-else-if|x-if|x-else|x-show|@if|@show)(?:=|\s|\/|>|$)/,Mz=/<\/script>/gi,Az=/<\/style>/gi;function y8($){let Z=/<[a-z][\w-]*/gi,J="",X=0,Y;while((Y=Z.exec($))!==null){let Q=Y.index,G=Y[0].slice(1).toLowerCase();if(G==="script"||G==="style"){let B=G==="script"?Mz:Az;B.lastIndex=Q;let V=B.exec($);if(V!==null)Z.lastIndex=V.index+V[0].length;continue}let z=Q+Y[0].length,K=!1,q=!1,W=-1;while(z<$.length){let B=$[z];if(K){if(B==="'")K=!1}else if(q){if(B==='"')q=!1}else if(B==="'")K=!0;else if(B==='"')q=!0;else if(B===">"){W=z;break}z++}if(W===-1)continue;let H=$.slice(Q+Y[0].length,W);if(E8.test(H))continue;if(/(?:^|\s)x-cloak(?:=|\s|\/|>|$)/.test(H))continue;if(!Dz.test(H))continue;let U=$[W-1]==="/",j=U?W-1:W;J+=`${$.slice(X,j)} x-cloak${U?" ":""}`,X=j}return J+=$.slice(X),J}var s3=y1(256),Iz=[{pattern:/document\.getElementById\s*\(/g,message:"document.getElementById() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelector\s*\(/g,message:"document.querySelector() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelectorAll\s*\(/g,message:"document.querySelectorAll() is prohibited",suggestion:'Use useRef("name") and access children instead'},{pattern:/document\.getElementsBy\w+\s*\(/g,message:"document.getElementsBy*() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.createElement\s*\(/g,message:"document.createElement() is prohibited",suggestion:"Use template directives or component composition instead"},{pattern:/document\.activeElement(?![A-Za-z])/g,message:"document.activeElement is prohibited",suggestion:"Use useRef() to track focused elements"},{pattern:/document\.title\s*=/g,message:"document.title assignment is prohibited",suggestion:"Use useTitle() from composables"},{pattern:/document\.cookie(?![A-Za-z])/g,message:"document.cookie is prohibited",suggestion:"Use useCookie() from composables"},{pattern:/document\.addEventListener\s*\(/g,message:"document.addEventListener() is prohibited",suggestion:"Use useEventListener() or template @event directives"},{pattern:/window\.location(?![A-Za-z])/g,message:"window.location is prohibited",suggestion:"Use navigate() or useRoute()"},{pattern:/window\.history(?![A-Za-z])/g,message:"window.history is prohibited",suggestion:"Use navigate(), goBack(), goForward()"},{pattern:/window\.addEventListener\s*\(/g,message:"window.addEventListener() is prohibited",suggestion:"Use useEventListener() or @click directives"},{pattern:/(?:\bwindow\.)?localStorage(?![A-Za-z])/g,message:"window.localStorage is prohibited",suggestion:"Use useLocalStorage() from composables \u2014 or @appearanceBootstrap if this must run before first paint, where the runtime does not exist yet"},{pattern:/window\.sessionStorage(?![A-Za-z])/g,message:"window.sessionStorage is prohibited",suggestion:"Use useSessionStorage() from composables"},{pattern:/window\.scrollTo\s*\(/g,message:"window.scrollTo() is prohibited",suggestion:"Use useScroll().scrollTo() from composables"},{pattern:/window\.alert\s*\(/g,message:"window.alert() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.confirm\s*\(/g,message:"window.confirm() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.prompt\s*\(/g,message:"window.prompt() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/(?<!\w)setTimeout\s*\(/g,message:"setTimeout() is prohibited",suggestion:"Use useTimeout() or useDebounce() from composables"},{pattern:/(?<!\w)setInterval\s*\(/g,message:"setInterval() is prohibited",suggestion:"Use useInterval() from composables"},{pattern:/(?<!\w)clearTimeout\s*\(/g,message:"clearTimeout() is prohibited",suggestion:"Use useTimeout().stop() or useDebounce().cancel()"},{pattern:/(?<!\w)clearInterval\s*\(/g,message:"clearInterval() is prohibited",suggestion:"Use useInterval().pause()"},{pattern:/(?<!\w)location\.href\s*=/g,message:"location.href assignment is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.assign\s*\(/g,message:"location.assign() is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.replace\s*\(/g,message:"location.replace() is prohibited",suggestion:"Use navigate() instead"}];function o3($,Z,J,X){let Y=typeof J==="boolean"?{enabled:J,failOnViolation:J}:J??{enabled:!1};if(!Y.enabled)return;let Q=H1($,Z,X,JSON.stringify(Y)),G=s3.get(Q);if(G!==void 0){if(G&&Y.failOnViolation)throw Error(G);return}let z=Y.allowPatterns??[],K=[],q=H0($.replace(/\{\{--[\s\S]*?--\}\}/g,(j)=>j.replace(/[^\n]/g," ")));for(let{pattern:j,message:B,suggestion:V}of Iz){if(z.some((O)=>/\w/.test(O)&&B.includes(O)))continue;j.lastIndex=0;let _=q.match(j);if(_&&_.length>0){let O=q.split(`
|
|
3503
3503
|
`),F=$.split(`
|
|
3504
3504
|
`),L=[];O.forEach((M,T)=>{if(j.lastIndex=0,j.test(M))L.push(T+1)});let w=L.length>0?` (script line${L.length>1?"s":""} ${L.join(", ")})`:"",N=L.slice(0,3).map((M)=>` ${M} | ${(F[M-1]??"").trim().slice(0,100)}`).join(`
|
|
3505
3505
|
`),R=N?`
|
|
3506
3506
|
${N}`:"";K.push(` \u2717 ${B}${w}
|
|
3507
|
-
\u2192 ${V}${R}`)}}if(K.length===0){
|
|
3507
|
+
\u2192 ${V}${R}`)}}if(K.length===0){s3.set(Q,"");return}let W=(j)=>{let B=`${process.cwd()}/`;return j.startsWith(B)?j.slice(B.length):j},U=`[STX] DOM API violation in ${X&&X!==Z?`${W(X)} (composed into ${W(Z)})`:W(Z)}:
|
|
3508
3508
|
${K.join(`
|
|
3509
3509
|
`)}
|
|
3510
|
-
Tip: prefer useRef(), navigate(), and composables for component code`;if(
|
|
3510
|
+
Tip: prefer useRef(), navigate(), and composables for component code`;if(s3.set(Q,U),Y.failOnViolation)throw Error(U);else console.warn(U)}bz();import r3 from"path";var Tz=/(\bfrom\s*|\bimport\s*\(\s*|\bimport\s+)(['"])(\.\.?\/[^'"]*)\2/g,kz=/(<script\b[^>]*>)([\s\S]*?)(<\/script>)/gi;function Ez($,Z){if(!Z||!$.includes("/"))return $;let J=r3.dirname(Z);return $.replace(Tz,(X,Y,Q,G)=>{let z=r3.resolve(J,G);return`${Y}${Q}${z.split(r3.sep).join("/")}${Q}`})}function C8($,Z){if(!Z||!$.includes("<script"))return $;return $.replace(kz,(J,X,Y,Q)=>`${X}${Ez(Y,Z)}${Q}`)}var C1="<!--PARENT_CONTENT_PLACEHOLDER-->";function S8($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function Cz($,Z){let J=$.length,X=Z,Y=!0,Q=[],G=(z)=>z+9<=J&&$[z]==="<"&&$[z+1]==="/"&&($[z+2]==="s"||$[z+2]==="S")&&($[z+3]==="c"||$[z+3]==="C")&&($[z+4]==="r"||$[z+4]==="R")&&($[z+5]==="i"||$[z+5]==="I")&&($[z+6]==="p"||$[z+6]==="P")&&($[z+7]==="t"||$[z+7]==="T")&&($[z+8]===">"||/\s/.test($[z+8]));while(X<J){let z=$[X];if(G(X))return X;if(z==="/"&&$[X+1]==="/"){if(X=$.indexOf(`
|
|
3511
3511
|
`,X+2),X===-1)return-1;X+=1,Y=!0;continue}if(z==="/"&&$[X+1]==="*"){let K=$.indexOf("*/",X+2);if(K===-1)return-1;X=K+2,Y=!0;continue}if(z==="/"&&Y){let K=X+1,q=!1;while(K<J){let W=$[K];if(W==="\\"){K+=2;continue}if(W==="[")q=!0;else if(W==="]")q=!1;else if(W==="/"&&!q){K++;break}else if(W===`
|
|
3512
3512
|
`){K=-1;break}K++}if(K===-1){X++,Y=!1;continue}while(K<J&&/[a-z]/.test($[K]))K++;X=K,Y=!1;continue}if(z==="'"||z==='"'){let K=z;X++;while(X<J){if($[X]==="\\"){X+=2;continue}if($[X]===K){X++;break}if($[X]===`
|
|
3513
|
-
`)break;X++}Y=!1;continue}if(z==="`"){X++;while(X<J){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++;break}if($[X]==="$"&&$[X+1]==="{"){Q.push(!0),X+=2,Y=!0;break}X++}if(Q.length===0)Y=!1;continue}if(z==="}"&&Q.length>0){Q.pop(),X++;while(X<J){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++,Y=!1;break}if($[X]==="$"&&$[X+1]==="{"){Q.push(!0),X+=2,Y=!0;break}X++}continue}if(/\s/.test(z));else if(/[)\].\w$]/.test(z))Y=!1;else Y=!0;X++}return-1}function
|
|
3514
|
-
`+$.slice(X,J.start)+$.slice(J.end);let Y=$.slice(J.start,J.end),Q=$.slice(0,J.start)+$.slice(J.end),G=
|
|
3513
|
+
`)break;X++}Y=!1;continue}if(z==="`"){X++;while(X<J){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++;break}if($[X]==="$"&&$[X+1]==="{"){Q.push(!0),X+=2,Y=!0;break}X++}if(Q.length===0)Y=!1;continue}if(z==="}"&&Q.length>0){Q.pop(),X++;while(X<J){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++,Y=!1;break}if($[X]==="$"&&$[X+1]==="{"){Q.push(!0),X+=2,Y=!0;break}X++}continue}if(/\s/.test(z));else if(/[)\].\w$]/.test(z))Y=!1;else Y=!0;X++}return-1}function t8($,Z){let J=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),X=new RegExp(`<script\\b(?=[^>]*\\b${J}(?:\\s|=|/?>))[^>]*>`,"i").exec($);if(!X)return null;let Y=X.index+X[0].length,Q=$.indexOf("</script>",Y);if(Q===-1)return null;let G=$.indexOf(">",Q);if(G===-1)return null;return{start:X.index,end:G+1}}async function P8($,Z){try{let{registeredModuleIdsIn:J,buildModuleRegistryScript:X}=await s("stx/client-module-registry",()=>import("./chunk-72yrrggn.js")),Y=await X(J(...$),{minify:Z.buildMode==="compile"});if(!Y)return null;if(Z.buildMode==="serve"){let{registerServeModuleBundle:Q}=await import("./chunk-qr3zcm87.js");return`<script data-stx-scoped data-stx-run="always" data-stx-modules src="${Q(Y)}"></script>`}return`<script data-stx-scoped data-stx-run="always" data-stx-modules>${Y.replace(/<\/script/gi,"<\\/script")}</script>`}catch{return null}}function Sz($,Z=""){let J=t8($,"data-stx-runtime");if(!J)return $;let X=W2($);if(X===-1||X===J.start){if(!Z)return $;return $.slice(0,J.end)+Z+$.slice(J.end)}if(X<J.start)return $.slice(0,X)+$.slice(J.start,J.end)+Z+`
|
|
3514
|
+
`+$.slice(X,J.start)+$.slice(J.end);let Y=$.slice(J.start,J.end),Q=$.slice(0,J.start)+$.slice(J.end),G=W2(Q);if(G===-1)return Y+Z+`
|
|
3515
3515
|
`+Q;return Q.slice(0,G)+Y+Z+`
|
|
3516
|
-
`+Q.slice(G)}async function
|
|
3517
|
-
`),...q.htmlAttrs&&{htmlAttrs:
|
|
3518
|
-
<meta name="stx-layout" content="${
|
|
3519
|
-
<meta name="stx-layout-group" content="${
|
|
3520
|
-
${j}`).join("");G=
|
|
3521
|
-
`+G.slice(q)}}if(Q)G=
|
|
3516
|
+
`+Q.slice(G)}async function t3($,Z,J,X,Y){if(X.ssr===!1&&!X.autoShell&&X.buildMode==="spa")return $;if(Z.__stx_signals_gate===void 0)Z.__stx_signals_gate=X1($,J);let Q=!Z.__stxProcessingDepth;C3(Z);for(let G of X._layerGraph?.configDependencies??[])Y.add(G);if(Q&&X.runtimeConfig)await g9(Z,J,X.runtimeConfig);if(Q)w$(Z),Z.__stx_head_injections=T3(),Z.__stx_seo_staged=!1;if(!Z.__stxProcessingDepth)Z.__stxProcessingDepth=0;if(Z.__stxProcessingDepth++,!Z.__onceStore)Z.__onceStore=new Set;if((X.debug||!N9()&&!D9())&&J&&J.endsWith(".stx"))n8($,J);try{return await l8.timeAsync("template-processing",async()=>{let G=await Pz($,Z,J,X,Y);if(Q)G=n3(G);if(Q&&X.autoShell&&X.buildMode!=="compile"){let z=X.app?.head||{},q=(Z.__stx_runtime_head||null)??i8(),W=(Z.__stx_head_raw||"").trim(),H,U=W.match(/<title[^>]*>([\s\S]*?)<\/title>/i);if(U)H=U[1].trim(),W=W.replace(U[0],"").trim();let j=Z.__sections?.title,B=q.title||H||j,V=!q.title&&(!!H||!!j),_=q.meta||[],O=new Set(_.map((M)=>t1(M)).filter(Boolean)),F={...z,...B&&{title:B},meta:[...(z.meta||[]).filter((M)=>!O.has(t1(M))),..._],link:[...z.link||[],...q.link||[]],script:[...z.script||[],...q.script||[]],headRaw:[z.headRaw,W].filter(Boolean).join(`
|
|
3517
|
+
`),...q.htmlAttrs&&{htmlAttrs:p6(z.htmlAttrs,q.htmlAttrs)},...q.bodyAttrs&&{bodyAttrs:{...z.bodyAttrs||{},...q.bodyAttrs}}},L=f3(G);if(G=s6(G,F,{...V&&{titleIsHtml:!0},...X.app?.colorMode&&{colorMode:X.app.colorMode}},L),L)G=n6(G,z),G=i6(G,F.htmlAttrs);let w=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(w&&G.includes("<head")){let M=w[1],T=m8(M);G=G.replace(/<head\b[^>]*>/i,(D)=>`${D}
|
|
3518
|
+
<meta name="stx-layout" content="${S8(M)}">
|
|
3519
|
+
<meta name="stx-layout-group" content="${S8(T)}">`)}let N=G.match(/function (__stx_setup_\w+)\(/),R=N?p0(G):null;if(N&&R&&!/\bdata-stx=/.test(R.tag)){G=v1(G,(T,D)=>`<body${D} data-stx="${N[1]}">`);let M=new RegExp(`(<(?!body)[a-zA-Z][^>]*) data-stx="${N[1]}"`,"i");G=G.replace(M,"$1")}}if(Q){let z=Z.__stx_head_injections??T3(),K=v3(G);if(K!==null)z.beforeClose.push(K);let q=y3(G);if(q!==null)z.afterOpen.push(q);G=y6(G,z);let W=X.app?.colorMode;if(W)G=P6(G,W)}if(Q)if(t8(G,"data-stx-runtime")){let K=null,q=null,W=null,H=null;try{let{getStoreScript:j}=await s("stx/store-loader",()=>import("./chunk-eqzc88et.js")),B=X.storesDir,V=await j(B);if(V)q=`<script data-stx-stores>${V}</script>`}catch{}K=await P8([G,q],X);try{let{getFrameworkComposableScript:j}=await s("stx/framework-composables",()=>import("./chunk-6wmjwbq9.js"));H=await j(G)}catch{}try{let{getComposableScript:j}=await s("stx/composable-loader",()=>import("./chunk-zwr4bn6a.js")),B=X.composablesDir,V=[K,q,H].filter((O)=>O!==null),_=await j(X._layerComposableDirs??B,G,V);if(_)W=`<script data-stx-scoped data-stx-run="always" data-stx-composables>${_}</script>`}catch{}let U=[K,q,W,H].filter((j)=>j!==null).map((j)=>`
|
|
3520
|
+
${j}`).join("");G=Sz(G,U)}else{let K=await P8([G],X);if(K){let q=G.search(/<script\b[^>]*>(?:(?!<\/script>)[\s\S])*?__stxModules\[/i);if(q!==-1)G=G.slice(0,q)+K+`
|
|
3521
|
+
`+G.slice(q)}}if(Q)G=v6(G);if(Q&&Z.__stx_inject_css!==!1)G=await p8(G,void 0,X.buildMode==="serve",!0);else if(Q)G=c8(G);if(G=G.replace(/\x00STX_ESCAPED_AT\x00/g,"@"),Q&&Z.__stx_runtime_config)G=d8(G,Z.__stx_runtime_config);if(Q&&!Z.__stx_defer_server_data){let z=u6(Z);if(z){let K=/<head\b[^>]*>/i.exec(G),q=K?K.index+K[0].length:0;G=G.slice(0,q)+z+G.slice(q)}}return G})}catch(G){if(G instanceof x8)throw G;let z=G instanceof Error?G.message:String(G),K=new C2(`Template processing failed: ${z}`,J,void 0,void 0,$.substring(0,200)+($.length>200?"...":""));if(n0.log(K,{filePath:J,context:Z}),g8.logDetailedError(K,{filePath:J,template:$.substring(0,500)}),X.debug)throw K;return f8.createFallbackContent("Template Processing",K)}}async function Pz($,Z,J,X,Y){let Q=process.cwd(),G={...X,partialsDir:X.partialsDir&&!y0.isAbsolute(X.partialsDir)?y0.resolve(Q,X.partialsDir):X.partialsDir,componentsDir:X.componentsDir&&!y0.isAbsolute(X.componentsDir)?y0.resolve(Q,X.componentsDir):X.componentsDir,layoutsDir:X.layoutsDir&&!y0.isAbsolute(X.layoutsDir)?y0.resolve(Q,X.layoutsDir):X.layoutsDir},z=G,K=$;await fz(J,Z),xz(Z,z),K=await S2(()=>w6(K,Z,J,z),K,(L)=>{n0.log(L,{filePath:J,phase:"pre-processing-middleware"},"warning"),console.warn(`[stx] pre-processing middleware failed for ${J}: ${L.message}`)}),K=K.replace(/\{\{--[\s\S]*?--\}\}/g,"");let q=B1(K,R9,(L,w)=>`\x00STX_HTML_COMMENT_${w}\x00`);K=q.output;let W=q.tokens,H=(L)=>W.length===0?L:L.replace(/\x00STX_HTML_COMMENT_(\d+)\x00/g,(w,N)=>W[Number(N)]??""),U="\x00STX_ESCAPED_AT\x00";K=K.replace(/@@/g,U),K=K.replace(/@\{\{([\s\S]*?)\}\}/g,(L,w)=>{return`{{ ${w} }}`}),K=A6(K),K=await D8(K,J,Y);let j={};K=R3(K,j);let B={...Z.__sections||{}},V="",_=X7(J7($)),O=/@nolayout\b/.test(K)||_===!1;if(/@nolayout\b/.test(K))K=K.replace(/@nolayout\b\s*/g,"");let F=K.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(F)V=F[1],K=K.replace(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/g,"");else if(typeof _==="string"){if(V=_,!/@section\s*\(/.test(K))K=`@section('content')
|
|
3522
3522
|
${K.trim()}
|
|
3523
|
-
@endsection`}if(!V&&!O&&z.defaultLayout){let L=
|
|
3523
|
+
@endsection`}if(!V&&!O&&z.defaultLayout){let L=x3(K),w=/@section\s*\(/.test(K);if(!L||w){let N="",R=y0.dirname(J),M=z.layoutsDir?y0.dirname(z.layoutsDir):process.cwd();for(let T=0;T<20;T++){let D=y0.join(R,"_layout.stx");if(await t(D)){N=D;break}let I=y0.dirname(R);if(I===R||I.length<M.length)break;R=I}if(N)V=N;else if(z.layoutsDir){let T=y0.isAbsolute(z.layoutsDir)?z.layoutsDir:y0.resolve(process.cwd(),z.layoutsDir),D=y0.join(T,`${z.defaultLayout}.stx`);if(await t(D))V=D}if(V&&!w)K=`@section('content')
|
|
3524
3524
|
${K.trim()}
|
|
3525
|
-
@endsection`}}if(K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(L,w,N)=>{return B[w]=N,""}),K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*([^)]+?)\s*\)/g,(L,w,N)=>{if(/^(['"]).*\1$/.test(N.trim()))return L;try{let R=
|
|
3525
|
+
@endsection`}}if(K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(L,w,N)=>{return B[w]=N,""}),K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*([^)]+?)\s*\)/g,(L,w,N)=>{if(/^(['"]).*\1$/.test(N.trim()))return L;try{let R=Y0(N.trim(),Z);if(R===void 0)return L;return B[w]=String(R??""),""}catch{return L}}),K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@endsection|@show)/g,(L,w,N)=>{if(N.includes("@parent"))B[w]=N.replace("@parent",C1);else B[w]=N.trim();return""}),Z.__sections=B,K=K.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?\)/g,(L,w,N)=>{return B[w]||N||""}),!("slot"in Z)||Z.slot===void 0)K=K.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""});if(K=N3(K,j),V){let L=[],w=u0(K),N=B1(w.output,n2,(R,M)=>`\x00STX_ORPHAN_STYLE_${M}\x00`);if(K=N.output.replace(/\x00STX_(SCRIPT|ORPHAN_STYLE)_(\d+)\x00/g,(R,M,T)=>{let D=M==="SCRIPT"?gz(w.scripts[Number(T)],J):N.tokens[Number(T)];if(D)L.push(D);return""}),L.length>0){let R=L.join(`
|
|
3526
3526
|
`);B.content=B.content?`${B.content}
|
|
3527
|
-
${R}`:R,Z.__sections=B}}if(V)try{let L;if(
|
|
3528
|
-
${K}`,
|
|
3529
|
-
`;if(Q=D(Q,Z),Q=I(Q,Z,J),Q=
|
|
3527
|
+
${R}`:R,Z.__sections=B}}if(V)try{let L;if(y0.isAbsolute(V))L=V,Y.add(V);else L=await S2(()=>$9(V,J,G,Y),null,()=>{throw new C2(`Failed to resolve layout path: ${V}`,J,void 0,void 0,`Layout referenced from ${J}`)});if(!L){let D=(A)=>{if(!A)return[];try{let E=y0.isAbsolute(A)?A:y0.resolve(process.cwd(),A);return yz.readdirSync(E).filter((C)=>C.endsWith(".stx")).map((C)=>C.replace(/\.stx$/,""))}catch{return[]}},I=[...D(G.layoutsDir),...D(G.fallbackLayoutsDir)].filter((A,E,C)=>C.indexOf(A)===E).sort(),k=`Layout not found: ${V} (referenced from ${J})`+(I.length>0?`. Available layouts: ${I.join(", ")}`:G.layoutsDir?`. No .stx layouts found in ${G.layoutsDir}`:"");if(n0.log(Error(k),{layoutPath:V,filePath:J,available:I},"error"),console.error(`[stx] ${k}`),G.debug)throw new C2(k,J);return K}let w=await S2(()=>Bun.file(L).text(),"",()=>{throw new C2(`Failed to read layout file: ${L}`,J,void 0,void 0,"Layout content could not be loaded")});w=C8(w,L);let N=w.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(N){if(G.debug)console.log(`Found nested layout: ${N[1]} in ${L}`);let D={},I=w.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(E,C,y)=>{return D[C]=y.trim(),""});for(let[E,C]of Object.entries(D))if(B[E]&&B[E].includes(C1)){let y=B[E].indexOf(C1);B[E]=B[E].slice(0,y)+C+B[E].slice(y+C1.length)}else if(!B[E])B[E]=C;let k={...Z,__sections:B},A=`@layout('${N[1]}')${I}`;return await t3(A,k,L,G,Y)}let R=w.replace(/\{\{--[\s\S]*?--\}\}/g,""),M=R3(R,j),T={};return M=M.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(D,I,k)=>{return T[I]=k.trim(),`@slot('${I}')`}),M=M.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(D,I,k)=>{if(B[I]){let A=B[I];if(A.includes(C1)){let E=T[I]||"",C=A.indexOf(C1);A=A.slice(0,C)+E+A.slice(C+C1.length)}return A}return k||""}),M=vz(M,B),M=M.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""}),M=N3(M,j),Z.__originalFilePath=J,K=await v8(M,Z,L,G,Y),K=`<!-- stx-layout: ${V} -->
|
|
3528
|
+
${K}`,H(K)}catch(L){return n0.log(L instanceof Error?L:Error(String(L)),{layoutPath:V,filePath:J},"error"),`[Error processing layout: ${L instanceof Error?L.message:String(L)}]`}return H(await v8(K,Z,J,G,Y))}function vz($,Z){return $.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(J,X,Y)=>{let Q=Z[X];if(Q!==void 0){if(!new RegExp(`@(?:yield|slot)\\(\\s*['"]${X.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}['"]`).test(Q))return Q}return Y||""})}function xz($,Z){if($.__stx_sfc_mode=!0,$.__stx_options=Z,Z.buildMode)$.__stx_buildMode=Z.buildMode;let J=Z.envPrefix||"STX_PUBLIC_",X={};for(let[Y,Q]of Object.entries(process.env))if(Y.startsWith(J)&&Q!==void 0)X[Y]=Q;$.$env=X}async function fz($,Z){await S2(()=>D6($,Z),void 0,(J)=>{n0.log(J,{filePath:$,phase:"view-composer"},"warning"),console.warn(`[stx] view composer failed for ${$}: ${J.message}`)})}var a3="data-stx-source";function gz($,Z){if(!$)return $;let J=/^<script\b([^>]*)>/i.exec($);if(!J||!/\bserver\b/.test(J[1])||J[1].includes(a3))return $;return`<script ${a3}="${encodeURIComponent(Z)}"${$.slice(7)}`}function hz($){let Z=new RegExp(`${a3}="([^"]*)"`).exec($);return Z?decodeURIComponent(Z[1]):void 0}async function uz($,Z,J){let X=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,Y;while((Y=X.exec($))!==null){let Q=Y[1],G=Y[2];if(!/\bserver\b/.test(Q)||!G.trim())continue;let K=hz(Q)??J;try{let{extractVariables:q}=await s("stx/variable-extractor",()=>import("./chunk-h1vax4wg.js"));await q(G,Z,K,{preserveExisting:!0})}catch(q){let W=q instanceof Error?q:Error(String(q));n0.log(W,{filePath:K,phase:"server-script-extraction"},"warning"),console.warn(`[stx] server <script> extraction failed in ${K}: ${W.message}`)}}}async function mz($,Z,J){try{let{interpolateScriptsInTemplate:X}=await s("stx/expressions",()=>import("./chunk-fp868yhg.js"));return X($,Z,{skipServer:!0})}catch(X){let Y=X instanceof Error?X:Error(String(X));return n0.log(Y,{filePath:J,phase:"script-expression-interpolation"},"warning"),console.warn(`[stx] script expression interpolation failed in ${J}: ${Y.message}`),$}}async function v8($,Z,J,X,Y){let Q=$,G=X;if(await uz(Q,Z,J),Q=await mz(Q,Z,J),Q=await Q6(Q,Z,J),Q=await G6(Q,Z,J),Q=await K4(Q,Z,J,G),X1(Q))Q=V8(Q,Z),Q=c3(Q,Z);Q=O8(Q);let{processStreamDirectives:z}=await s("stx/streaming",()=>import("./chunk-b5mnam29.js"));Q=z(Q,Z),Q=V6(Q,Z,J,G,!0),Q=await E6(Q,Z,J,G,Y),Q=await O3(Q,Z,J,G,Y),Q=Z7(Q,Z,J,G);let{processDeferDirectives:K}=await s("stx/defer",()=>import("./chunk-86q2h34b.js"));Q=K(Q,Z,J);let{processTeleportDirectives:q}=await s("stx/teleport",()=>import("./chunk-1vt1h19d.js"));Q=q(Q,Z,J);let{processTransitionDirectives:W,processTransitionAttributes:H}=await s("stx/transitions",()=>import("./chunk-w5j9tbsk.js"));Q=W(Q,Z,J),Q=H(Q);let{processErrorBoundaryDirectives:U}=await s("stx/error-boundaries",()=>import("./chunk-mph46gkj.js"));Q=U(Q,Z,J);let{processSuspenseDirectives:j}=await s("stx/suspense",()=>import("./chunk-m2j5skez.js"));Q=j(Q,Z,J);let{processAsyncDirectives:B}=await s("stx/async-components",()=>import("./chunk-ppzz953j.js"));Q=B(Q,Z,J);let{processKeepAliveDirectives:V}=await s("stx/keep-alive",()=>import("./chunk-1c9453w0.js"));Q=V(Q,Z,J);let{processVirtualListDirectives:_,processVirtualGridDirectives:O,processInfiniteListDirectives:F}=await s("stx/virtual-scrolling",()=>import("./chunk-dsztk2kp.js"));Q=_(Q,Z,J),Q=O(Q,Z,J),Q=F(Q,Z,J);let{processPartialHydrationDirectives:L,processStaticDirectives:w}=await s("stx/partial-hydration",()=>import("./chunk-v6e35j4g.js"));Q=L(Q,Z,J),Q=w(Q);let{processComputedDirectives:N,processWatchDirectives:R}=await s("stx/computed",()=>import("./chunk-99b5tfxc.js"));Q=N(Q,Z,J),Q=R(Q,Z,J);let{processFormValidationDirectives:M}=await s("stx/forms-validation",()=>import("./chunk-evfr2zgg.js"));Q=M(Q,Z,J);let{processHeadDirective:T,processTitleDirective:D,processMetaDirective:I,resetHead:k}=await s("stx/head",()=>import("./chunk-at622hg0.js"));if(!Z.__stx_head_preset&&!Z.__stx_runtime_head)k();let A=T(Q);if(Q=A.content,A.headContent)Z.__stx_head_raw=`${Z.__stx_head_raw||""}${A.headContent}
|
|
3529
|
+
`;if(Q=D(Q,Z),Q=I(Q,Z,J),Q=N6(Q),Q=f5(Q,Z),Q=Q4(Q),Q=_6(Q),Q=await w3(Q,Z,J,G,Y),Q=await O3(Q,Z,J,G,Y),Z.__stxProcessingDepth===1)Q=R$(Q,Z);if(Q=Q.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/g,""),Q=n3(Q),Q=r0(Q,Z,J),Q=M3(Q),Q=Q7(Q,Z,{filePath:J,buildMode:G.buildMode}),Q=g5(Q,Z),Q=h5(Q,Z),Q=R2(Q,Z),Q=i5(Q,Z),Q=n5(Q,Z),Q=await n7(Q,Z,J,G),Q=await U7(Q,Z,J),Q=await h8(Q,Z,J,G),Q=u8(Q,Z,J,G),Q=s8(Q,Z,J,G),Q=o8(Q,Z,J),Q=r8(Q,Z,J,G),Q=X4(Q,Z,J,G),Q=p3(Q,Z),Q=i3(Q),Q=I8(Q),!G.skipEventDirectives)Q=_$(Q,Z,J);if(Q=K7(Q,Z,J),G.debug){let l=/\bx-data\s*=/.test(Q),u=l3($);if(l&&u)console.warn(`[stx] ${J}: Template mixes Alpine-style (x-data) and signals (state/derived/effect) reactivity.
|
|
3530
3530
|
Both work on the same page, but they manage separate scopes.
|
|
3531
|
-
Prefer signals (state/derived/effect) for new components.`)}Q=
|
|
3532
|
-
</head>`);if(/<head\b[^>]*>/i.test(
|
|
3533
|
-
${
|
|
3531
|
+
Prefer signals (state/derived/effect) for new components.`)}Q=i4(Q,Z),Q=await V1(Q,Z,J),Q=b8(Q),Q=y8(Q),Q=n$(Q);let{processXElementDirectives:E}=await s("stx/x-element",()=>import("./chunk-0k1mtwby.js"));Q=E(Q);let C=Z.__originalFilePath||J,y=v9(Z);if(Q=await _8(Q,G,C,y),Q=U4(Q,Z),Q=await R6(Q,Z,J,G),G.media?.image?.autoSiblings){let l=G.publicDir||"public",{rewriteImagesWithSiblings:u}=await s("stx/image-optimization/auto-sibling",()=>import("./chunk-kq30wqp6.js"));Q=await u(Q,{publicDir:l})}if(G.seo?.enabled)Q=a8(Q,Z,G);let b=(l,u,o=!0)=>{if(!u)return l;let Q0=u.match(/<title\b[^>]*>[\s\S]*?<\/title>/i),B0=l.match(/<title\b[^>]*>[\s\S]*?<\/title>/i);if(Q0&&B0){if(o)l=l.replace(B0[0],Q0[0]);if(u=u.replace(Q0[0],"").trim(),!u)return l}if(/<\/head>/i.test(l))return l.replace(/<\/head>/i,`${u}
|
|
3532
|
+
</head>`);if(/<head\b[^>]*>/i.test(l))return l.replace(/(<head\b[^>]*>)/i,`$1
|
|
3533
|
+
${u}`);if(/<html\b[^>]*>/i.test(l))return l.replace(/(<html\b[^>]*>)/i,`$1
|
|
3534
3534
|
<head>
|
|
3535
|
-
${
|
|
3536
|
-
</head>`);return
|
|
3537
|
-
${
|
|
3538
|
-
</script>`;if(Q.includes("</head>")){let
|
|
3539
|
-
`+
|
|
3535
|
+
${u}
|
|
3536
|
+
</head>`);return l},{renderHead:P,getHead:h}=await s("stx/head",()=>import("./chunk-at622hg0.js")),g=Z.__stx_runtime_head??h();if(g.title||g.meta?.length||g.link?.length){let l=P(g);if(l)Q=b(Q,l)}if(A.headContent)Q=b(Q,A.headContent,!g.title);if(G.csp?.enabled&&G.csp.addMetaTag)Q=Z4(Q,G.csp,Z);if(G.analytics?.enabled)Q=o$(Q,G);if(G.heatmap?.enabled)Q=a$(Q,G);if(G.pwa?.enabled&&G.pwa.autoInject!==!1){let{injectPwaTags:l}=await s("stx/pwa/inject",()=>import("./chunk-zp14ksx1.js"));Q=l(Q,G)}let Z0=/<script\b(?![^>]*\bserver\b)[^>]*>[\s\S]*?<\/script>/i.test(Q),J0=/\bSTX\.\w+/.test(Q),e=/window\.STX\s*=/.test(Q);if(Z0&&J0&&!e){let u=`<script data-stx-scoped data-stx-run="once">
|
|
3537
|
+
${c$()}
|
|
3538
|
+
</script>`;if(Q.includes("</head>")){let o=Q.indexOf("</head>"),B0=Q.slice(0,o).indexOf("<script");if(B0!==-1){let K0=Q.slice(0,B0),c0=Q.slice(B0);Q=K0+u+`
|
|
3539
|
+
`+c0}else Q=Q.replace("</head>",`${u}
|
|
3540
3540
|
</head>`)}else if(Q.includes("<body"))Q=Q.replace(/<body([^>]*)>/,`<body$1>
|
|
3541
|
-
${
|
|
3542
|
-
`+Q}{let{scanScriptTags:
|
|
3543
|
-
`+Q.slice(
|
|
3541
|
+
${u}`);else Q=u+`
|
|
3542
|
+
`+Q}{let{scanScriptTags:l}=await s("stx/signal-processing",()=>import("./chunk-3zm4hgcf.js")),u=[];for(let o of l(Q)){if(!/\bserver\b/i.test(o.attrs))continue;let Q0=o.start+o.fullMatch.indexOf(">")+1,B0=Cz(Q,Q0);if(B0===-1)continue;let K0=B0+9;while(K0<Q.length&&/\s/.test(Q[K0]))K0++;u.push({start:o.start,end:K0})}if(u.length>0){let o=Array(u.length+1),Q0=0;for(let B0=0;B0<u.length;B0++){let{start:K0,end:c0}=u[B0];o[B0]=Q.slice(Q0,K0),Q0=c0}o[u.length]=Q.slice(Q0),Q=o.join("")}}let i=f9(Q,J);if(i.hasScoped)Q=i.html;let q0=Z.__stx_event_bindings||[],r=!1,L0=[],e0=/\s:[a-z][\w.-]*\s*=/.test(Q),{scanScriptTags:$1}=await s("stx/signal-processing",()=>import("./chunk-3zm4hgcf.js"));for(let l of $1(Q,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b|\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/}))L0.push({match:l.fullMatch,attrs:l.attrs,content:l.body});for(let{match:l,attrs:u,content:o}of L0){r=!0;let Q0=o;o3(o,J,X.strict,Z.__originalFilePath);let B0=await x9(o,{eventBindings:q0,attrs:u,hasColonDirectives:e0,templateContent:$,filePath:J,projectRoot:process.cwd(),production:X.buildMode==="compile",serverData:y});Q=Q.replace(l,()=>B0)}if(r)Z.__stx_event_bindings=[];if(!r&&Z.__stxProcessingDepth===1){let l=Z.__stx_event_bindings||[];if(l.length>0){let u=t9(l);if(u){let o=Q.lastIndexOf("</body>");Q=o===-1?Q+u:Q.slice(0,o)+u+`
|
|
3543
|
+
`+Q.slice(o)}Z.__stx_event_bindings=[]}}if(!Z8(Q)&&J8(Q))Q=await y9(Q,G);if(Q=X8(Q),G.csp?.enabled&&G.csp.useNonce&&typeof Z.cspNonce==="string")Q=J4(Q,Z.cspNonce);return Q}import UZ from"path";import $$ from"fs";import P2 from"path";function e8($,Z,J,X){let Y=0;for(let Q=Z;Q<$.length;Q++)if($[Q]===J)Y++;else if($[Q]===X&&!(X===">"&&$[Q-1]==="=")){if(--Y===0)return Q}return-1}function dz($){let Z=H0($),J=0,X=0,Y=[];for(let Q=0;Q<Z.length;Q++)if("([{".includes(Z[Q]))J++;else if(")]}".includes(Z[Q]))J--;else if(Z[Q]===","&&J===0)Y.push($.slice(X,Q).trim()),X=Q+1;return Y.push($.slice(X).trim()),Y}function e3($,Z){let J=H0($),X=new RegExp(`\\b(?:${Z.map((Y)=>Y.replace(/[$]/g,"\\$&")).join("|")})\\s*(?=[<(])`,"g");for(let Y of J.matchAll(X)){let Q=Y.index+Y[0].length,G="";if(J[Q]==="<"){let K=e8(J,Q,"<",">");if(K<0)continue;G=$.slice(Q+1,K),Q=K+1;while(/\s/.test(J[Q]||"")&&Q<J.length)Q++}if(J[Q]!=="(")continue;let z=e8(J,Q,"(",")");if(z>=0)return{type:G,args:dz($.slice(Q+1,z))}}return null}var $Z=`
|
|
3544
3544
|
type __StxCtor<T> = T extends StringConstructor ? string : T extends NumberConstructor ? number : T extends BooleanConstructor ? boolean : T extends ArrayConstructor ? unknown[] : T extends ObjectConstructor ? object : T extends readonly unknown[] ? __StxCtor<T[number]> : T extends abstract new (...args: any[]) => infer V ? V : unknown;
|
|
3545
3545
|
type __StxWiden<T> = T extends string ? string : T extends number ? number : T extends boolean ? boolean : T;
|
|
3546
3546
|
type __StxOption<T> = T extends { type: infer C } ? __StxCtor<C> : T extends { default: infer D } ? D extends (...args: any[]) => infer V ? V : __StxWiden<D> : __StxCtor<T>;
|
|
@@ -3548,88 +3548,88 @@ type __StxRequired<O> = { [K in keyof O]-?: O[K] extends { required: true } ? K
|
|
|
3548
3548
|
type __StxDefaulted<O> = { [K in keyof O]-?: O[K] extends { default: unknown } ? K : never }[keyof O];
|
|
3549
3549
|
type __StxOptions<O> = { [K in Exclude<__StxRequired<O>, __StxDefaulted<O>>]: __StxOption<O[K]> } & { [K in Exclude<keyof O, Exclude<__StxRequired<O>, __StxDefaulted<O>>>]?: __StxOption<O[K]> };
|
|
3550
3550
|
type __StxDefaults<P, K> = Omit<P, Extract<keyof P, K>> & Partial<Pick<P, Extract<keyof P, K>>>;
|
|
3551
|
-
`;function
|
|
3552
|
-
`)}),G=
|
|
3551
|
+
`;function ZZ($,Z){let J=[],X={defineProps:["defineProps"],defineEmits:["defineEmits"],withDefaults:["withDefaults"]},Y=H0($),Q=$.replace(/\bimport\s+(?:type\s+)?(\{[^}]*\}|\*\s+as\s+[\w$]+|[\w$]+)\s+from\s*(['"])([^'"]+)\2\s*;?/g,(U,j,B,V,_)=>{if(Y.slice(_,_+6)!=="import")return U;if(V.endsWith(".stx"))return"";let O=`${Z}Import${J.length}`;if(J.push(`import * as ${O} from ${JSON.stringify(V)};`),j.startsWith("*"))return`import ${j.replace(/^\*\s+as\s+/,"")} = ${O};`;if(!j.startsWith("{"))return`import ${j} = ${O}.default;`;return j.slice(1,-1).split(",").map((F)=>{let[L,w=L]=F.trim().replace(/^type\s+/,"").split(/\s+as\s+/);if(!L)return"";if(/^(?:stx|@stacksjs\/stx)(?:\/|$)/.test(V)&&L in X)X[L].push(w);return`import ${w} = ${O}.${L};`}).join(`
|
|
3552
|
+
`)}),G=e3($,X.defineProps),z=e3($,X.defineEmits),K=e3($,X.withDefaults);if(!G&&!z)return{declarations:"",props:null,events:null};let q=[],W=null,H=null;if(G){q.push(`const __options = (${G.args[0]||"{}"}) as const;`),q.push(`const __defaults = (${K?.args[1]||"{}"});`);let U=G.type||"__StxOptions<typeof __options>";q.push(`export type __StxProps = __StxDefaults<${U}, keyof typeof __defaults | __StxDefaulted<typeof __options>>;`),W=`${Z}.__StxProps`}if(z)q.push(`const __events = (${z.args[0]||"[]"}) as const;`),q.push(`export type __StxEvents = ${z.type||"Record<(typeof __events)[number], any[]>"};`),H=`${Z}.__StxEvents`;return{declarations:`${J.join(`
|
|
3553
3553
|
`)}
|
|
3554
3554
|
namespace ${Z} {
|
|
3555
3555
|
${Q}
|
|
3556
3556
|
${q.join(`
|
|
3557
3557
|
`)}
|
|
3558
|
-
}`,props:W,events:
|
|
3558
|
+
}`,props:W,events:H}}function*lz($){let Z=/<([A-Za-z][\w.-]*)(?=[\s/>])/g,J;while(J=Z.exec($)){let X=Z.lastIndex,Y=[];while(X<$.length){while(/\s/.test($[X]||""))X++;if($[X]===">"||$.slice(X,X+2)==="/>"){X+=$[X]===">"?1:2;break}let Q=/^[^\s=/>]+/.exec($.slice(X))?.[0];if(!Q){X++;continue}let G=X;X+=Q.length;while(/\s/.test($[X]||""))X++;if($[X]!=="="){Y.push({name:Q,value:!0,offset:G,braced:!1});continue}X++;while(/\s/.test($[X]||""))X++;let z=$[X],K=z==="{",q=z==='"'||z==="'";if(q||K)X++;let W=X;if(K){let H=H0($.slice(X)),U=1,j=0;for(;j<H.length;j++){if(H[j]==="{")U++;if(H[j]==="}"&&--U===0)break}X+=j}else if(q)while(X<$.length&&$[X]!==z)X++;else while(X<$.length&&!/[\s/>]/.test($[X]))X++;if(Y.push({name:Q,value:$.slice(W,X),offset:W,braced:K}),q||K)X++}Z.lastIndex=X,yield{name:J[1],offset:J.index,attributes:Y}}}function JZ($,Z,J){let X=[],Y=[$Z,"type __StxAssignedValue<T> = T extends { readonly _isSignal: true } | { readonly _isDerived: true } ? T extends () => infer V ? V : T : T;","type __StxProp<P, K> = K extends keyof P ? P[K] : unknown;",'type __StxEvent<E, K> = K extends keyof E ? E[K] extends readonly unknown[] ? Exclude<E[K]["length"], 0 | 1> extends never ? E[K][0] : E[K] : E[K] : any;'],Q=new Map,G=new Map,z=new Map,K=J.scriptCode($,J.filePath),q=H0(K);for(let B of K.matchAll(/\bimport\s+(\{[^}]+\}|[\w$]+)\s+from\s*['"]([^'"]+)['"]/g)){if(q.slice(B.index,B.index+6)!=="import")continue;let V=B[2],_=P2.isAbsolute(V)||V.startsWith(".")?P2.resolve(P2.dirname(J.filePath),V):U9(V,P2.dirname(J.filePath));if(!_)continue;let O=_.endsWith(".stx")?_:$$.existsSync(`${_}.stx`)?`${_}.stx`:void 0,F=O?null:H9(_,!1),L=B[1].startsWith("{")?B[1].slice(1,-1).split(","):[B[1]];for(let w of L){let[N,R=N]=w.trim().split(/\s+as\s+/),M=O||F?.get(N)||F?.get(N.toLowerCase());if(M)z.set(R,M),z.set(R.toLowerCase(),M),z.set(R.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),M)}}for(let B of Z.matchAll(/@import\s*\(([^)]+)\)/g))for(let V of B[1].matchAll(/['"]([^'"]+)['"]/g)){let _=j9(V[1],J.filePath,J).find((O)=>$$.statSync(O,{throwIfNoEntry:!1})?.isFile());if(_)z.set(P2.basename(V[1]).replace(/\.stx$/,""),_)}let W={__importedComponents:z},H=new Map,U=(B,V,_)=>{let O=$.slice(0,B);return{code:V,offset:B,attribute:_,anchor:!0,kind:"directive",line:O.split(`
|
|
3559
3559
|
`).length,column:B-O.lastIndexOf(`
|
|
3560
|
-
`)}},j=(B,V,_)=>X.push({expression:B,statement:{text:V+B.code+_,prefixLength:V.length}});for(let B of
|
|
3561
|
-
`):"",checks:X,events:Q,dependencies:G}}var
|
|
3560
|
+
`)}},j=(B,V,_)=>X.push({expression:B,statement:{text:V+B.code+_,prefixLength:V.length}});for(let B of lz(Z)){if(T2(B.name)||B.name==="component")continue;let V=_4(B.name,J.filePath,J,W);if(!V)continue;let _=H.get(V);if(!_){let F;try{F=J.readComponent?J.readComponent(V):$$.readFileSync(V,"utf8")}catch{continue}if(F===void 0)continue;G.set(V,F),_=ZZ(J.scriptCode(F,V),`__StxComponent${H.size}`),H.set(V,_),Y.push(_.declarations)}let O=[];for(let F of B.attributes){let{name:L,offset:w}=F,N=F.value===!0?"true":F.value;if(L.startsWith("@")||L.startsWith("v-on:")){if(_.events&&F.value!==!0)Q.set(w,`__StxEvent<${_.events}, ${JSON.stringify(L.replace(/^@|^v-on:/,"").split(".")[0])}>`);continue}let R=/^v-model(?::([\w-]+))?(?:\.[\w-]+)*$/.exec(L);if(L.startsWith("v-")&&!L.startsWith("v-bind:")&&!R)continue;if(/^(?:x-|:)(?:if|for|show|key|else)(?:$|[.:-])/.test(L))continue;let M=(R?R[1]||"modelValue":L.replace(/^:|^v-bind:/,"")).replace(/-([a-z])/g,(I,k)=>k.toUpperCase());if(O.push(M),!_.props)continue;let D=L.startsWith(":")||L.startsWith("v-bind:")||!!R||F.braced?N:F.value!==!0?JSON.stringify(N):"true";j(U(w,D,L),";void ((",`) satisfies __StxProp<${_.props}, ${JSON.stringify(M)}>);`)}if(_.props){let F=[...new Set(O)].map((w)=>`${JSON.stringify(w)}: undefined as any`).join(", "),L=U(B.offset,`<${B.name}>`);X.push({expression:L,statement:{text:`;void ({ ${F} } satisfies ${_.props} & Record<string, unknown>);`,prefixLength:0}})}}return{declarations:H.size?Y.join(`
|
|
3561
|
+
`):"",checks:X,events:Q,dependencies:G}}var XZ=/<script(\s[^>]*)?>([\s\S]*?)<\/script>/gi;function cz($){let Z=(J)=>J.replace(/[^\n]/g," ");return $.replace(/<!--[\s\S]*?-->/g,Z).replace(/\{\{--[\s\S]*?--\}\}/g,Z)}function YZ($){let Z=[],J=cz($);XZ.lastIndex=0;let X;while((X=XZ.exec(J))!==null){let Y=(X[1]||"").trim(),Q=(X[0].match(/^<script(?:\s[^>]*)?>/i)?.[0]??"<script>").length,G=(X[0].match(/<\/script\s*>$/i)?.[0]??"</script>").length,z=X.index+Q,K=X.index+X[0].length-G,q=$.slice(z,K);if(/\bsrc\s*=/.test(Y))continue;let W=Y.match(/\btype\s*=\s*["']([^"']+)["']/i);if(W&&!/^(?:module|text\/(?:javascript|typescript))$/i.test(W[1]))continue;let H=/\bserver\b/.test(Y)?"server":/\bclient\b/.test(Y)?"client":"plain",U=h9($,z);Z.push({kind:H,code:q,startLine:U,attrs:Y})}return Z}function h9($,Z){let J=1;for(let X=0;X<Z&&X<$.length;X++)if($.charCodeAt(X)===10)J++;return J}function Z$($,Z){let J=$.lastIndexOf(`
|
|
3562
3562
|
`,Z-1)+1;return Z-J+1}function u9($){let Z=$.split(""),J=(Y,Q)=>{for(let G=Y;G<Q&&G<Z.length;G++)if(Z[G]!==`
|
|
3563
|
-
`)Z[G]=" "},X=[/<script(?:\s[^>]*)?>[\s\S]*?<\/script>/gi,/<style(?:\s[^>]*)?>[\s\S]*?<\/style>/gi,/<!--[\s\S]*?-->/g,/\{\{--[\s\S]*?--\}\}/g,/@verbatim\b[\s\S]*?@endverbatim\b/g];for(let Y of X){Y.lastIndex=0;let Q;while((Q=Y.exec($))!==null)J(Q.index,Q.index+Q[0].length)}return Z.join("")}function
|
|
3563
|
+
`)Z[G]=" "},X=[/<script(?:\s[^>]*)?>[\s\S]*?<\/script>/gi,/<style(?:\s[^>]*)?>[\s\S]*?<\/style>/gi,/<!--[\s\S]*?-->/g,/\{\{--[\s\S]*?--\}\}/g,/@verbatim\b[\s\S]*?@endverbatim\b/g];for(let Y of X){Y.lastIndex=0;let Q;while((Q=Y.exec($))!==null)J(Q.index,Q.index+Q[0].length)}return Z.join("")}function pz($){let Z=0,J="";for(let X=0;X<$.length;X++){let Y=$[X];if(J){if(Y==="\\"){X++;continue}if(Y===J)J="";continue}if(Y==='"'||Y==="'"||Y==="`"){J=Y;continue}if(Y==="("||Y==="["||Y==="{"){Z++;continue}if(Y===")"||Y==="]"||Y==="}"){Z--;continue}if(Y==="|"&&Z===0){if($[X+1]==="|"){X++;continue}if($[X-1]==="|")continue;return $.slice(0,X)}}return $}var jZ=new Set([":for","x-for","v-for"]),m9=/(?:^|\s)((?::|x-|v-|@)[\w.:-]+)\s*=\s*(["'])([\s\S]*?)\2/g,J$="__stx_interpolated",QZ="__StxElement",BZ="__StxTemplateValue",iz=`type ${BZ}<T> = T extends { readonly _isSignal: true } | { readonly _isDerived: true } ? (T extends () => infer V ? T & V : T) : T`;function GZ($){return $.replace(/\{\{[\s\S]*?\}\}/g,J$).replace(/\{!![\s\S]*?!!\}/g,J$)}function J_($){return $.replace(/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/g,(Z)=>{let J=Z.split(`
|
|
3564
3564
|
`).length-1,X=Z.length-J;return`0${" ".repeat(Math.max(0,X-1))}${`
|
|
3565
|
-
`.repeat(J)}`})}var
|
|
3566
|
-
`)}var
|
|
3567
|
-
`)}function
|
|
3565
|
+
`.repeat(J)}`})}var nz=["foreach","endforeach","forelse","endforelse","for","endfor","while","endwhile","empty","if","elseif","else","endif","unless","endunless","isset","endisset","switch","case","default","endswitch","auth","endauth","guest","endguest","env","endenv","once","endonce","break","continue"],sz=new RegExp(String.raw`^[ \t]*@(?:${nz.join("|")})\b[ \t]*(\([^\n)]*\))?[ \t]*$`,"gm");function X_($){return $.replace(sz,(Z)=>Z.replace(/[^\n]/g," "))}var zZ=new Set(["x-cloak","x-ref","x-transition","x-teleport","v-slot","x-hydrate",":key","x-tooltip","x-tooltip-position"]);function oz($){let Z=u9($),J=[],X=/(@?)\{\{([\s\S]*?)\}\}|(@?)\{!!([\s\S]*?)!!\}/g,Y;while((Y=X.exec(Z))!==null){if(Y[1]||Y[3])continue;let G=Y[2]??Y[4]??"",z=Y[2]!==void 0?2:3,K=pz(G);if(!K.trim())continue;let q=Y.index+z+(K.length-K.trimStart().length);J.push({code:K.trim(),line:h9(Z,q),column:Z$(Z,q),offset:q,kind:"interpolation"})}m9.lastIndex=0;while((Y=m9.exec(Z))!==null){let Q=Y[1],G=Y[3]??"",z=Q.replace(/\..*$/,"").replace(/^([^:].*?):.*$/,"$1");if(zZ.has(z)||zZ.has(Q))continue;if(!G.trim())continue;let K=Y.index+Y[0].indexOf(Y[2],Y[0].indexOf(Q)+Q.length)+1;if(jZ.has(z)){let W=G.match(/\s+(?:in|of)\s+/);if(!W||W.index===void 0)continue;let H=G.slice(W.index+W[0].length),U=W.index+W[0].length+(H.length-H.trimStart().length);J.push({code:GZ(H.trim()),line:h9(Z,K+U),column:Z$(Z,K+U),offset:K+U,kind:"directive",attribute:z});continue}let q=G.length-G.trimStart().length;J.push({code:GZ(G.trim()),line:h9(Z,K+q),column:Z$(Z,K+q),offset:K+q,kind:"directive",attribute:z})}return J.sort((Q,G)=>Q.line-G.line||Q.column-G.column),J}var rz=2000;function az($,Z){let J=0,X=Math.min($.length,Z+rz);for(let Y=Z;Y<X;Y++){let Q=$[Y];if(Q==="(")J++;else if(Q===")"){if(J--,J===0)return $.slice(Z+1,Y)}}return null}function tz($){let Z=new Map,J=(z,K)=>{let q=z.split(/[,[\]{}()\s]+/).filter(Boolean);for(let W of q){let H=W.replace(/^\.\.\./,"").trim();if(!/^\$?[A-Z_$][\w$]*$/i.test(H))continue;let U=q.length===1?K:void 0,j=Z.get(H);if(!j)Z.set(H,{name:H,iterable:U});else if(j.iterable!==U)j.iterable=void 0}},X=/^\$?[A-Z_$][\w$]*$/i,Y=(z)=>{let K=z.trim();return X.test(K)?K:void 0};for(let z of $.matchAll(/@for(?:each|else)\s*\(/g)){let K=az($,z.index+z[0].length-1);if(K===null)continue;let q=K.match(/^([\s\S]*?)\bas\b([\s\S]*)$/);if(!q)continue;J(q[2].replace(/=>/g," "),Y(q[1]))}for(let z of $.matchAll(/@for\s*\(\s*(?:let|const|var)\s+([\w$]+)/g))J(z[1]);let Q=u9($);m9.lastIndex=0;let G;while((G=m9.exec(Q))!==null){let z=G[1].replace(/\..*$/,"");if(!jZ.has(z))continue;let K=G[3].match(/\s+(?:in|of)\s+/);if(!K||K.index===void 0)continue;J(G[3].slice(0,K.index),Y(G[3].slice(K.index+K[0].length)))}for(let z of $.matchAll(/@(?:php|js|ts)\b([\s\S]*?)@end(?:php|js|ts)\b/g))for(let K of z[1].matchAll(/\b(?:const|let|var|function|class)\s+([\w$]+)/g))J(K[1]);return[...Z.values()].sort((z,K)=>z.name.localeCompare(K.name))}function S1($){let Z=new Set;for(let J of $.matchAll(/^\s*(?:export\s+)?(?:const|let|var)\s+([\w$]+)/gm))Z.add(J[1]);for(let J of $.matchAll(/^\s*(?:export\s+)?(?:async\s+)?function\s*\*?\s*([\w$]+)/gm))Z.add(J[1]);for(let J of $.matchAll(/^\s*(?:export\s+)?class\s+([\w$]+)/gm))Z.add(J[1]);for(let J of $.matchAll(/^\s*(?:export\s+)?(?:const|let|var)\s*[[{]([^\]}]*)[\]}]/gm))for(let X of J[1].split(",")){let Y=X.split(":").pop().split("=")[0].replace(/^\.\.\./,"").trim();if(/^[A-Z_$][\w$]*$/i.test(Y))Z.add(Y)}return[...Z].sort()}function ez(){return["declare var window: any",...v2.map(($)=>`declare var ${$}: any`)].join(`
|
|
3566
|
+
`)}var $K=["params","query","cookies","host","ip","setResponseStatus","setResponseHeader","notFound","request","url","definePageMeta","defineClientPayload","defineStore","props","$props"];function ZK(){return $K.map(($)=>`declare var ${$}: any`).join(`
|
|
3567
|
+
`)}function VZ($){let Z=/\bdefineClientPayload\s*\(\s*\{([\s\S]*?)\}\s*\)/g,J,X=!1,Y=new Set,Q=H0($);while((J=Z.exec(Q))!==null){X=!0;for(let G of JK(J[1])){let z=G.split(":")[0].trim();if(/^[A-Za-z_$][\w$]*$/.test(z))Y.add(z)}}return X?[...Y]:null}function JK($){let Z=[],J=0,X="";for(let Y of $){if(Y===","&&J===0){Z.push(X),X="";continue}if(Y==="("||Y==="["||Y==="{")J++;else if(Y===")"||Y==="]"||Y==="}")J--;X+=Y}return Z.push(X),Z.filter((Y)=>Y.trim().length>0)}function XK($){let Z=/^[ \t]*import\b[\s\S]*?(?:from\s*['"][^'"]*['"]|['"][^'"]*['"])[ \t]*;?[ \t]*$/gm,J=[],X=$.replace(Z,(Y)=>{return J.push(Y.trim()),Y.split(`
|
|
3568
3568
|
`).map(()=>"").join(`
|
|
3569
3569
|
`)});return{imports:J.join(`
|
|
3570
|
-
`),body:X}}function
|
|
3571
|
-
`&&!/[=|&,<([{]\s*$/.test(Z.slice(Math.max(0,
|
|
3572
|
-
`)}if(J.length===0)return Y.length>0?["",`// ${
|
|
3573
|
-
`):"";let{imports:Q,body:G}=
|
|
3574
|
-
`)}function
|
|
3575
|
-
`)J[Y]=" "}return
|
|
3576
|
-
`),Y=Array.from({length:X.length},()=>""),Q=new Map,G=Z.filePath&&Z.templateExpressions!==!1?
|
|
3577
|
-
`)}):void 0;for(let K of J)
|
|
3578
|
-
`).forEach((W,
|
|
3579
|
-
`).entries())if(Y.push(
|
|
3580
|
-
`))z(q);for(let q of
|
|
3581
|
-
`))z(q);for(let q of
|
|
3582
|
-
`))z(q);let K=
|
|
3583
|
-
`),lineMap:Q,sourceLineCount:X.length,componentDependencies:G?.dependencies}}function
|
|
3584
|
-
`);return{line:J.length,column:J[J.length-1].length+1}}function
|
|
3585
|
-
`);for(let Y of X){let Q=J,G=null,z=!1;for(let K=0;K<Y.length;K++){let q=Y[K];if(z){z=!1;continue}if(q==="\\"){z=!0;continue}if(G){if(q===G)G=null;continue}if(q==="'"||q==='"'||q==="`"){G=q;continue}if(q==="/"&&K+1<Y.length&&Y[K+1]==="/")break;if(q==="{")J++;else if(q==="}")J--}if(Q===0){let K=Y.match(/(?:const|let|var)\s+(\w+)\s*=/);if(K)Z.push(K[1]);else if(/^\s*(?:const|let|var)\s+\w+\s*;?\s*$/.test(Y)){let q=Y.match(/(?:const|let|var)\s+(\w+)/);if(q)Z.push(q[1])}else{let q=Y.match(/(?:const|let|var)\s+(\{[^}]+\}|\[[^\]]+\])\s*=/);if(q){let
|
|
3586
|
-
|
|
3587
|
-
`),Z}function
|
|
3588
|
-
`),
|
|
3570
|
+
`),body:X}}function LZ($){let Z=H0($),J=Array(Z.length),X=0;for(let z=0;z<Z.length;z++){let K=Z[z];if(K==="}"||K===")"||K==="]")X=Math.max(0,X-1);if(J[z]=X,K==="{"||K==="("||K==="[")X++}let Y=[],Q=/^[ \t]*(?:export[ \t]+)?(interface|type)[ \t]+([A-Za-z_$][\w$]*)/gm,G;while((G=Q.exec(Z))!==null){if(J[G.index]!==0)continue;let z=G[1],K=G[2],q;if(z==="interface"){let W=Z.indexOf("{",G.index);if(W===-1)continue;let H=0;q=-1;for(let U=W;U<Z.length;U++)if(Z[U]==="{")H++;else if(Z[U]==="}"&&--H===0){q=U+1;break}if(q===-1)continue}else{let W=0;q=Z.length;for(let H=Z.indexOf("=",G.index)+1;H<Z.length;H++){let U=Z[H];if(U==="{"||U==="["||U==="("||U==="<")W++;else if(U==="}"||U==="]"||U===")"||U===">")W--;else if(W<=0&&(U===";"||U===`
|
|
3571
|
+
`&&!/[=|&,<([{]\s*$/.test(Z.slice(Math.max(0,H-40),H)))){q=U===";"?H+1:H;break}}}Y.push({name:K,text:$.slice(G.index,q).replace(/^[ \t]*export[ \t]+/,"")}),Q.lastIndex=q}return Y}function YK($){return new Set(LZ($).map((Z)=>Z.name))}function Y_($,Z=""){let J=VZ($),X=YK(Z),Y=LZ($).filter((q)=>!X.has(q.name)).map((q)=>q.text);if(!J){let q=S1($);if(q.length===0&&Y.length===0)return"";return["",`// ${GK}`,...Y,...q.map((W)=>`declare var ${W}: any`)].join(`
|
|
3572
|
+
`)}if(J.length===0)return Y.length>0?["",`// ${KZ}`,...Y].join(`
|
|
3573
|
+
`):"";let{imports:Q,body:G}=XK($),z=G.replace(/^[ \t]*export[ \t]+(?=(?:const|let|var|function|async|class)\b)/gm,""),K=["",`// ${KZ}`];if(Q)K.push(Q);return K.push(...Y),K.push(`async function ${qZ}() {`,z,` return { ${J.join(", ")} }`,"}",`type ${WZ} = Awaited<ReturnType<typeof ${qZ}>>`,...J.map((q)=>`declare var ${q}: ${WZ}[${JSON.stringify(q)}]`)),K.join(`
|
|
3574
|
+
`)}function QK($){let J=H0($).split(""),X=0;for(let Y=0;Y<J.length;Y++){let Q=J[Y];if(Q==="{"||Q==="("||Q==="["){X++;continue}if(Q==="}"||Q===")"||Q==="]"){X=Math.max(0,X-1);continue}if(X>0&&Q!==`
|
|
3575
|
+
`)J[Y]=" "}return S1(J.join(""))}function Q_($,Z){if(VZ($)!==null)return[];let J=H0(Z),X=new Set(v2);return QK($).filter((Y)=>{if(X.has(Y))return!1;if(S1(Z).includes(Y))return!1;return new RegExp(`(?<![.#\\w$])${Y}(?![\\w$])`).test(J)})}var KZ="stx: types for the declared client payload (#1868)",GK="stx: untyped bridge names \u2014 declare a defineClientPayload to check these (#1868)",qZ="__stxServerScope",WZ="__StxClientPayload";var zK=["$env","$user","$slot","$slots","$attrs","$props","$page","$route","$loop","loop","$errors","$csrf","props","slot"];var KK=/^\s*[A-Z_$][\w$]*\s*=[^=]/i;function qK($,Z){let J=/@(if|unless|elseif|else|endif|endunless)\b\s*(\()?/g,X=[],Y;while((Y=J.exec($))!==null){if(Y.index>=Z)break;let Q=Y[1];if(Q==="endif"||Q==="endunless"){X.pop();continue}let G="";if(Y[2]==="("){let z=0,K=Y.index+Y[0].length-1,q=K+1;for(;K<$.length;K++){let W=$[K];if(W==="(")z++;else if(W===")"){if(z--,z===0)break}}G=$.slice(q,K).trim(),J.lastIndex=K+1}if(Q==="if")X.push({seen:[],current:G});else if(Q==="unless")X.push({seen:[],current:`!(${G})`});else if(Q==="elseif"||Q==="else"){let z=X[X.length-1];if(!z)continue;if(z.current)z.seen.push(z.current);z.current=Q==="elseif"?G:null}}return X.flatMap((Q)=>[...Q.seen.map((G)=>`!(${G})`),...Q.current?[Q.current]:[]]).filter(Boolean)}function WK($){let Z=$.code.trim();if(!Z)return null;if($.attribute?.startsWith("@")){if(KK.test(Z))return null;let X=";(($event: any): void => { ";return{text:`${X}${Z} });`,prefixLength:X.length}}let J=";void ((";return{text:`${J}${Z}));`,prefixLength:J.length}}var HK=/(\bfrom\s*|\bimport\s*\(\s*|\bimport\s+)(['"])(\.{1,2}\/[^'"\n]*)\2/g;function HZ($,Z){if(!Z)return $;return $.replace(HK,(J,X,Y,Q)=>{let G=UZ.resolve(Z,Q).replace(/\\/g,"/");return`${X}${Y}${G}${Y}`})}function G_($,Z={}){let J=YZ($),X=$.split(`
|
|
3576
|
+
`),Y=Array.from({length:X.length},()=>""),Q=new Map,G=Z.filePath&&Z.templateExpressions!==!1?JZ($,u9($),{filePath:Z.filePath,componentsDir:Z.componentsDir,projectRoot:Z.projectRoot,readComponent:Z.readComponent,scriptCode:(K,q)=>YZ(K).map((W)=>HZ(W.code,UZ.dirname(q))).join(`
|
|
3577
|
+
`)}):void 0;for(let K of J)HZ(K.code,Z.originDir??"").split(`
|
|
3578
|
+
`).forEach((W,H)=>{let U=K.startLine-1+H;if(U<Y.length)Y[U]=W});let z=(K,q)=>{for(let[W,H]of K.split(`
|
|
3579
|
+
`).entries())if(Y.push(H),q)Q.set(Y.length,W===0?q:{...q,line:q.line+W,column:1,prefixLength:0})};if(Z.globals!==!1){if(z(""),Z.runtimeGlobals!==!1)for(let q of ez().split(`
|
|
3580
|
+
`))z(q);for(let q of ZK().split(`
|
|
3581
|
+
`))z(q);for(let q of b1)z(`declare var ${q}: any`);for(let q of zK)z(`declare var ${q}: any`);z(`declare var ${J$}: any`);let K=new Set(J.flatMap((q)=>S1(q.code)));z(`type ${QZ}<T> = T extends readonly (infer E)[] ? E : T extends Iterable<infer E2> ? E2 : any`);for(let q of tz($)){if(K.has(q.name))continue;let W=q.iterable&&K.has(q.iterable)?`${QZ}<typeof ${q.iterable}>`:"any";z(`declare var ${q.name}: ${W}`)}}if(Z.templateExpressions!==!1){if(G?.declarations)for(let q of G.declarations.split(`
|
|
3582
|
+
`))z(q);let K=oz($).map((q)=>{let W=G?.events.get(q.offset??-1);if(W){q.anchor=!0;let H=q.code.trim(),U=/^([\w$]+)\s*=\s*([^=][\s\S]*)$/.exec(H),j=U?`void ((${U[2]}) satisfies __StxAssignedValue<typeof ${U[1]}>)`:/^[\w$]+(?:\.[\w$]+)*$/.test(H)?`${H}($event)`:H,B=`;(($event: ${W}): void => { `;return{expression:q,statement:{text:`${B}${j} });`,prefixLength:B.length}}}return{expression:q,statement:WK(q)}}).filter((q)=>q.statement!==null);if(K.push(...G?.checks||[]),K.length>0){let q=u9($),H=[...new Set(J.flatMap((j)=>S1(j.code)))].filter((j)=>/^[A-Z_$][\w$]*$/i.test(j)),U=0;if(H.length>0){z(iz);for(let j of H)z(`type __StxT_${j} = ${BZ}<typeof ${j}>`);z(`;((${H.map((j)=>`${j}: __StxT_${j}`).join(", ")}) => {`),U=1}for(let{expression:j,statement:B}of K){let V=" ".repeat(U),_=j.offset===void 0?[]:qK(q,j.offset),O=_.length>0?`${_.map((L)=>`if (${L}) `).join("")}{ `:"",F=_.length>0?" }":"";z(V+O+B.text+F,{line:j.line,column:j.column,expression:j,prefixLength:B.prefixLength+V.length+O.length})}if(U>0)z("});")}}return z("export {}"),{text:Y.join(`
|
|
3583
|
+
`),lineMap:Q,sourceLineCount:X.length,componentDependencies:G?.dependencies}}function z_($,Z,J){let X=$.lineMap.get(Z);if(!X)return Z<=$.sourceLineCount?{line:Z,column:J}:null;let Y=X.expression?.anchor?0:Math.max(0,J-1-(X.prefixLength??0));return{line:X.line,column:X.column+Y,expression:X.expression}}var UK=[{open:"@if",close:"@endif",name:"if"},{open:"@unless",close:"@endunless",name:"unless"},{open:"@foreach",close:"@endforeach",name:"foreach"},{open:"@for",close:"@endfor",name:"for"},{open:"@while",close:"@endwhile",name:"while"},{open:"@forelse",close:"@endforelse",name:"forelse"},{open:"@switch",close:"@endswitch",name:"switch"},{open:"@isset",close:"@endisset",name:"isset"},{open:"@empty",close:"@endempty",name:"empty"},{open:"@auth",close:"@endauth",name:"auth"},{open:"@guest",close:"@endguest",name:"guest"},{open:"@can",close:"@endcan",name:"can"},{open:"@cannot",close:"@endcannot",name:"cannot"},{open:"@section",close:"@endsection",name:"section",altClose:"@show"},{open:"@push",close:"@endpush",name:"push"},{open:"@prepend",close:"@endprepend",name:"prepend"},{open:"@once",close:"@endonce",name:"once"},{open:"@markdown",close:"@endmarkdown",name:"markdown"},{open:"@component",close:"@endcomponent",name:"component"}],jK=[{pattern:/@if\s*[^(]/,message:"@if directive missing parentheses",suggestion:"Use @if(condition)"},{pattern:/@foreach\s*[^(]/,message:"@foreach directive missing parentheses",suggestion:"Use @foreach(items as item)"},{pattern:/@foreach\([^)]*\)\s*[^@\n<]/,message:"@foreach may have content on same line",suggestion:"Put content on new line after @foreach()"},{pattern:/@include\s*[^(]/,message:"@include directive missing parentheses",suggestion:"Use @include('partial-name')"},{pattern:/@extends\s*[^(]/,message:"@extends directive missing parentheses",suggestion:"Use @extends('layout-name') or @layout('layout-name')"},{pattern:/@layout\s*[^(]/,message:"@layout directive missing parentheses",suggestion:"Use @layout('layout-name')"}],BK=[{pattern:/\{\{\s*constructor\s*\}\}/,message:"Attempting to access constructor property"},{pattern:/\{\{\s*__proto__\s*\}\}/,message:"Attempting to access __proto__ property"},{pattern:/\{\{\s*eval\s*\(/,message:"Attempting to use eval in expression"}];function VK($){let Z=[],J=[];return LK($,Z),OK($,Z,J),_K($,J),FK($,Z),{valid:Z.length===0,errors:Z,warnings:J}}function LK($,Z){let J=($.match(/\{\{/g)||[]).length,X=($.match(/\}\}/g)||[]).length;if(J!==X)Z.push({type:"expression",message:`Unclosed expression brackets: found ${J} opening '{{' and ${X} closing '}}'`,suggestion:"Ensure every {{ has a matching }}"})}function OK($,Z,J){for(let X of UK){let Y=new RegExp(`${X.open}(?:\\s|\\()`,"g"),Q=new RegExp(X.close,"g"),G=($.match(Y)||[]).length,z=($.match(Q)||[]).length;if(X.altClose){let K=new RegExp(X.altClose,"g");z+=($.match(K)||[]).length}if(G>z)Z.push({type:"directive",message:`Unclosed @${X.name} directive: found ${G} opening and ${z} closing`,suggestion:`Add ${G-z} missing ${X.close} tag(s)`});else if(z>G)J.push({type:"directive",message:`Extra ${X.close} found: ${z-G} more closing than opening`,suggestion:`Check for orphaned ${X.close} tags`})}}function _K($,Z){for(let J of jK)if(J.pattern.test($))Z.push({type:"syntax",message:J.message,suggestion:J.suggestion})}function FK($,Z){for(let J of BK)if(J.pattern.test($))Z.push({type:"expression",message:`Security warning: ${J.message}`,suggestion:"Remove dangerous code from template expressions"})}function wK($,Z){let J=$.slice(0,Z).split(`
|
|
3584
|
+
`);return{line:J.length,column:J[J.length-1].length+1}}function RK($,Z,J){let X=[];switch($){case"if":case"elseif":case"unless":if(J.length===0)X.push({type:"syntax",message:`@${$} requires a condition`,suggestion:`Use @${$}(condition)`});break;case"foreach":if(J.length===0||!J[0].includes(" as "))X.push({type:"syntax",message:'@foreach requires "items as item" syntax',suggestion:"Use @foreach(items as item) or @foreach(items as key => value)"});break;case"for":if(J.length===0)X.push({type:"syntax",message:"@for requires loop parameters",suggestion:"Use @for(let i = 0; i < 10; i++)"});break;case"switch":if(J.length===0)X.push({type:"syntax",message:"@switch requires an expression",suggestion:"Use @switch(expression)"});break;case"case":if(J.length===0)X.push({type:"syntax",message:"@case requires a value",suggestion:"Use @case(value)"});break;case"include":case"extends":case"component":if(J.length===0)X.push({type:"syntax",message:`@${$} requires a path`,suggestion:`Use @${$}('path/to/template')`});break}return X}function NK($){return/@[a-z]+/i.test($)||/\{\{/.test($)}function DK($){let Z=$.matchAll(/@([a-z]+)/gi),J=new Set;for(let X of Z){let Y=X[1].toLowerCase();if(!Y.startsWith("end"))J.add(Y)}return Array.from(J)}import s0 from"path";import X2 from"process";var SZ=["module","exports","require","props","$props","$bool","defineProps","withDefaults","defineClientPayload","useServerData","useRuntimeConfig","useServerRuntimeConfig","state","derived","effect","batch","onMount","onDestroy","definePageMeta","useRoute","useRouter","useHead","useSeoMeta","setResponseStatus","setResponseHeader","notFound","ref","reactive","computed","watch","onMounted","onUnmounted","nextTick","defineEmits","defineExpose","defineSlots","provide","inject","useColorMode","useDark","useMediaQuery","useScrollLock","usePreferredDark","usePreferredLight","usePreferredReducedMotion","usePreferredContrast","window","document","console","confirm","alert","fetch","params"],OZ=new Set(SZ),MK=new Set(["props","$props","defineProps"]),AK=new Set(["stx","@stacksjs/stx"]),_Z=y1(128),FZ=y1(64);function IK($){let Z=[],J=0,X=$.split(`
|
|
3585
|
+
`);for(let Y of X){let Q=J,G=null,z=!1;for(let K=0;K<Y.length;K++){let q=Y[K];if(z){z=!1;continue}if(q==="\\"){z=!0;continue}if(G){if(q===G)G=null;continue}if(q==="'"||q==='"'||q==="`"){G=q;continue}if(q==="/"&&K+1<Y.length&&Y[K+1]==="/")break;if(q==="{")J++;else if(q==="}")J--}if(Q===0){let K=Y.match(/(?:const|let|var)\s+(\w+)\s*=/);if(K)Z.push(K[1]);else if(/^\s*(?:const|let|var)\s+\w+\s*;?\s*$/.test(Y)){let q=Y.match(/(?:const|let|var)\s+(\w+)/);if(q)Z.push(q[1])}else{let q=Y.match(/(?:const|let|var)\s+(\{[^}]+\}|\[[^\]]+\])\s*=/);if(q){let H=q[1].slice(1,-1).split(",").map((U)=>{let j=U.split(":");return(j.length>1?j[1]:j[0]).trim()}).filter((U)=>/^\w+$/.test(U));Z.push(...H)}}}}return[...new Set(Z)]}function TK($){let Z=$;Z=Z.replace(/^\s*import\s+.*?from\s+['"][^'"]+['"]\s*;?\s*$/gm,""),Z=Z.replace(/^\s*import\s+['"][^'"]+['"]\s*;?\s*$/gm,""),Z=Z.replace(/^\s*interface\s+\w+\s*\{[\s\S]*?\n\}\s*$/gm,""),Z=Z.replace(/^\s*type\s+\w+\s*=[\s\S]*?(?=\n(?:const|let|var|function|export|interface|type|$))/gm,""),Z=Z.replace(/^(\s*(?:export\s+)?(?:const|let|var)\s+)(\w+|\{[^}]+\}|\[[^\]]+\])\s*:\s*[^=]+(\s*=)/gm,"$1$2$3");function J(X){if(!X.includes(":"))return X;let Y=[],Q="",G=0,z=0,K=null;for(let q=0;q<X.length;q++){let W=X[q];if(K){if(Q+=W,W===K)K=null;continue}if(W==='"'||W==="'"||W==="`"){K=W,Q+=W;continue}if(W==="<")G++;else if(W===">"&&G>0)G--;else if(W==="(")z++;else if(W===")")z--;if(W===","&&G===0&&z===0){Y.push(Q),Q="";continue}Q+=W}if(Q)Y.push(Q);return Y.map((q)=>{let W=q.trim(),H=W.startsWith("..."),U=H?W.slice(3):W,j=-1,B=0;for(let N=0;N<U.length;N++)if(U[N]==="<")B++;else if(U[N]===">")B--;else if(U[N]===":"&&B===0){j=N;break}if(j===-1)return q;let _=U.substring(0,j).trim().replace(/\?$/,""),O=U.substring(j+1),F=-1,L=0;for(let N=0;N<O.length;N++)if(O[N]==="<")L++;else if(O[N]===">")L--;else if(O[N]==="="&&L===0){F=N;break}let w=H?"...":"";if(F!==-1)return`${w}${_} = ${O.substring(F+1).trim()}`;return`${w}${_}`}).join(", ")}Z=Z.replace(/\b(function\s+\w*\s*)\(([^)]*)\)/g,(X,Y,Q)=>{if(!Q.includes(":"))return X;return`${Y}(${J(Q)})`});{let X=/\b(function\s+\w*\s*)\(/g,Y,Q=[];while((Y=X.exec(Z))!==null){let G=Y.index+Y[0].length-1,z=1,K=G+1,q=0,W=null;while(K<Z.length&&z>0){let j=Z[K];if(W){if(j===W)W=null;K++;continue}if(j==='"'||j==="'"||j==="`"){W=j,K++;continue}if(j==="<")q++;else if(j===">"&&q>0)q--;else if(q===0){if(j==="(")z++;else if(j===")")z--}if(z>0)K++}if(z!==0)continue;let H=Z.substring(G+1,K);if(!H.includes(":"))continue;let U=J(H);Q.push({start:G+1,end:K,replacement:U})}for(let G=Q.length-1;G>=0;G--){let{start:z,end:K,replacement:q}=Q[G];Z=Z.substring(0,z)+q+Z.substring(K)}}return Z=Z.replace(/\(([^)]*)\)\s*(?::\s*[^=]+)?\s*=>/g,(X,Y)=>{if(!Y.includes(":"))return X;if(Y.includes("{")||Y.includes("}"))return X;return`(${Y.split(",").map((G)=>{let[z,...K]=G.split("="),q=z.split(":")[0].trim();if(K.length>0)return`${q} = ${K.join("=").trim()}`;return q}).join(", ")}) =>`}),Z=Z.replace(/(\))\s*:\s*([A-Z]\w*|void|string|number|boolean|any|unknown|never|null|undefined)(?:<[^>]+>)?(?:\s*\|\s*(?:[A-Z]\w*|void|string|number|boolean|any|unknown|never|null|undefined))*\s*(\{)/g,"$1$3"),Z=Z.replace(/(\b(?:function|class|interface|type|extends|implements)\s+\w+)\s*<[^<>()]*>/g,"$1"),Z=Z.replace(/(\b(?:defineProps|withDefaults|defineEmits|defineSlots|Array|Promise|Map|Set|Record|Partial|Required|Readonly|Pick|Omit|Exclude|Extract))\s*<[^<>()]*>/g,"$1"),Z=Z.replace(/(\w+)\s*<[A-Z][^<>()]*>\s*(?=\()/g,"$1"),Z=Z.replace(/\s+as\s+(?:const|[A-Za-z]\w*(?:\[\])?(?:\s*\|\s*\w+(?:\[\])?)*)/g,""),Z=Z.replace(/\s+satisfies\s+\w+(?:<[^>]*>)?/g,""),Z=Z.replace(/(\w|\)|\])\s*!(?!=)/g,"$1"),Z=Z.replace(/^\s*(?:export\s+)?(?:const\s+)?enum\s+\w+\s*\{[^}]*\}\s*$/gm,""),Z=Z.replace(/(?<=[\s=,(])<[A-Z]\w*(?:\[\])?>/g,""),Z=Z.replace(/\n\s*\n\s*\n/g,`
|
|
3586
|
+
|
|
3587
|
+
`),Z}function kK($){return/cannot find module|could not resolve|module not found|failed to resolve/i.test($)}function EK($){if($ instanceof SyntaxError)return!0;let Z=$ instanceof Error?$.message:String($);return/SyntaxError|Unexpected (token|identifier|string|number|keyword|end of)|Unterminated|Expected .+ but found/i.test(Z)}function bK($){if(!/is not defined|can't find variable/i.test($))return!1;return!/\b(document|window|navigator|localStorage|sessionStorage|self)\b/.test($)}var wZ=new Set;async function yK($,Z,J,X={}){if(!$.trim())return;let Y=Z2(),Q=H1($,JSON.stringify(Y)),G=_Z.get(Q);if(G===void 0){try{let S=Y$({loader:"ts",target:"browser",define:Y}),v=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");v=v.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,""),G=S.transformSync(v)}catch{G=TK($)}_Z.set(Q,G)}let z={exports:{}},K=z.exports,q=X2.cwd(),W={},H=[...G.matchAll(/require\s*\(\s*['"]([^'"]+)['"]\s*\)/g)||[]].map((S)=>S[1]).filter((S)=>!S.startsWith("node:")&&!["fs","path","os","child_process","crypto","http","https","url","util","stream","events","buffer","net","querystring","zlib","tls"].includes(S)),U=new Map;for(let S of H)try{if(S.startsWith(".")){W[S]=await import(s0.resolve(s0.dirname(J),S));continue}let v=s0.resolve(q,"node_modules",S),d=s0.join(v,"package.json"),X0=JSON.parse(x("fs").readFileSync(d,"utf8")),U0=X0.main||"index.js";if(X0.exports){let w0=typeof X0.exports==="string"?X0.exports:X0.exports["."];if(typeof w0==="string")U0=w0;else if(w0?.bun)U0=w0.bun;else if(w0?.import)U0=w0.import;else if(w0?.default)U0=w0.default}W[S]=await import(s0.resolve(v,U0))}catch(v){if(S.startsWith("."))U.set(S,v instanceof Error?v.message:String(v))}let j=(S)=>{if(W[S])return W[S];let v=U.get(S);if(v!==void 0)throw Error(`Cannot require '${S}' from ${J}: ${v}`);return x(S)},B=Z.props||{},V=(S)=>{if(!S)return B;let v={};for(let[d,X0]of Object.entries(S)){let U0=B[d];if(U0!==void 0)v[d]=U0;else if(typeof X0==="function")v[d]=X0();else v[d]=X0}return v};for(let[S,v]of Object.entries(B))Object.defineProperty(V,S,{value:v,enumerable:!0,configurable:!0,writable:!0});let _=(S,v=!1)=>{if(S===void 0||S===null)return v;if(typeof S==="string"){let d=S.trim().toLowerCase();if(d===""||d==="true"||d==="1"||d==="on"||d==="yes")return!0;if(d==="false"||d==="0"||d==="off"||d==="no")return!1;return!0}return Boolean(S)};for(let S of["name","length","caller","arguments"]){if(Object.prototype.hasOwnProperty.call(B,S))continue;try{Object.defineProperty(V,S,{value:void 0,enumerable:!1,configurable:!0,writable:!0})}catch{}}let O=(S)=>{if(!S)return B;let v={...B};for(let[d,X0]of Object.entries(S)){let U0=X0&&typeof X0==="object"&&!Array.isArray(X0)?X0:{type:X0};if(v[d]===void 0&&U0.default!==void 0)v[d]=typeof U0.default==="function"?U0.default():U0.default}return v},F=()=>Z.slots||{},L=(S,v)=>{let d={...S};for(let[X0,U0]of Object.entries(v))if(d[X0]===void 0)if(typeof U0==="function")d[X0]=U0();else d[X0]=U0;return d},w=(S)=>{let v=()=>S;return v.set=(d)=>{},v.update=(d)=>{},v},N=(S)=>{let v,d=!1;return()=>{if(!d)try{v=S(),d=!0}catch{v=void 0}return v}},R=(S)=>{},M=(S)=>S(),T=(S)=>{},D=(S)=>{},I=Y7(Z);function k(S){let v=S||{};if(v.title!==void 0||v.description!==void 0)b({title:v.title,description:v.description})}function A(S){if(!S||typeof S!=="object")return;let v=Z.__stxClientPayload??{};Object.assign(v,S),Z.__stxClientPayload=v}let E=()=>{let S=Z.__stxServeContext,v=Z.__stxServeSearch??S?.search??"",d=S?.path??"",X0=Object.fromEntries(new URLSearchParams(v)),U0=Z.query,w0=Object.keys(X0).length>0?X0:U0??{},Z1=v||(Object.keys(w0).length>0?`?${new URLSearchParams(w0).toString()}`:"");return{params:Z.params??{},query:w0,path:d,name:"",fullPath:d+Z1,hash:"",matched:[]}},C=()=>({push:(S)=>{},replace:(S)=>{},back:()=>{},forward:()=>{},go:(S)=>{}}),y=(S)=>{let v=Z.__stx_runtime_head||{};Z.__stx_runtime_head=yZ(v,S||{})},b=(S)=>{y(CZ(S||{}))},P=(S)=>({value:S}),h=(S)=>S,p=(S)=>({value:typeof S==="function"?S():S}),g=(S,v)=>{},Z0=(S)=>{},J0=(S)=>{},e=(S)=>S?S():Promise.resolve(),i=(S)=>(v,...d)=>{},q0=(S)=>{},r=(S,v)=>{},L0=(S,v)=>v,e0=()=>({value:"light"}),$1=()=>w(!1),l=(S)=>w(!1),u=()=>w(!1),o=()=>l("(prefers-color-scheme: dark)"),Q0=()=>l("(prefers-color-scheme: light)"),B0=()=>l("(prefers-reduced-motion: reduce)"),K0=()=>l("(prefers-contrast: more)"),c0={siteId:void 0,API_ENDPOINT:"",ANALYTICS_SITE_ID:void 0,location:{href:"",pathname:"",search:"",hash:"",origin:"",host:"",hostname:"",protocol:"https:",assign:()=>{},replace:()=>{},reload:()=>{}},localStorage:{getItem:()=>null,setItem:()=>{},removeItem:()=>{},clear:()=>{}},sessionStorage:{getItem:()=>null,setItem:()=>{},removeItem:()=>{},clear:()=>{}},fetch:globalThis.fetch,addEventListener:()=>{},removeEventListener:()=>{},setTimeout:()=>0,clearTimeout:()=>{},setInterval:()=>0,clearInterval:()=>{},requestAnimationFrame:()=>0,cancelAnimationFrame:()=>{},alert:()=>{},confirm:()=>!1,prompt:()=>null,getComputedStyle:()=>({}),matchMedia:()=>({matches:!1,addListener:()=>{},removeListener:()=>{}}),getDateRangeParams:()=>"",stx:{}},p9=new Proxy(c0,{get(S,v){if(v in S)return S[v];return},set(S,v,d){return S[v]=d,!0}}),i9={getElementById:()=>null,querySelector:()=>null,querySelectorAll:()=>[],createElement:()=>({}),createTextNode:()=>({}),body:{},head:{},documentElement:{},addEventListener:()=>{},removeEventListener:()=>{}},Q2=console;try{let S=PZ(G,J),v=new Set(Object.keys(B)),d=Object.keys(Z).filter((a)=>!v.has(a)&&!MK.has(a)&&Y2(a)),X0=d.map((a)=>Z[a]);if(!d.includes("__stxServeContext"))d.push("__stxServeContext"),X0.push(void 0);let U0=new Set(["async","module","exports","require","params","window","document","console","state","derived","effect"]),w0=[],Z1=[];for(let[a,h0]of Object.entries(B)){if(!Y2(a))continue;if(U0.has(a))continue;if(new RegExp(`(?:^|[\\s;{])(?:const|let|var|function)\\s+${a}\\b`).test(S))continue;w0.push(a),Z1.push(h0)}let P0=IK(S).map((a)=>`module.exports.${a} = typeof ${a} !== 'undefined' ? ${a} : module.exports.${a};`).join(`
|
|
3588
|
+
`),m=Z.params??{},c=[],G0=[];for(let a=0;a<d.length;a++){if(d[a]==="params")continue;c.push(d[a]),G0.push(X0[a])}let n=[...SZ,...w0,...c],R0=`return (async () => {
|
|
3589
3589
|
${S}
|
|
3590
3590
|
${P0}
|
|
3591
3591
|
return module.exports
|
|
3592
|
-
})()`,
|
|
3593
|
-
`),Q=[],G=0;while(G<Y.length){let z=Y[G].trim();if(z.startsWith("interface ")||z.startsWith("export interface ")||z.startsWith("type ")||z.startsWith("export type ")){if(z.includes("{")&&!z.includes("}")){let K=0;for(;G<Y.length;G++){for(let q of Y[G])if(q==="{")K++;else if(q==="}")K--;if(K<=0)break}}G++;continue}if(z.startsWith("definePageMeta(")){let K=0,q=!1,W=G;for(let j=G;j<Y.length&&!q;j++){let B=null,V=!1,_=Y[j];for(let O=0;O<_.length;O++){let F=_[O];if(V){V=!1;continue}if(F==="\\"){V=!0;continue}if(B){if(F===B)B=null;continue}if(F==='"'||F==="'"||F==="`"){B=F;continue}if(F==="(")K++;else if(F===")"){if(K--,K===0){G=j+1,q=!0;break}}}}if(!q)G=Y.length;let
|
|
3594
|
-
`),
|
|
3595
|
-
`+j;if(
|
|
3596
|
-
`),J,X)}function
|
|
3597
|
-
`)z=!1;Q++;continue}if(K){if(Y+=W,W==="*"&&
|
|
3592
|
+
})()`,O0=H1(R0,n.join("\x00")),b0=FZ.get(O0);if(!b0)b0=Function(...n,R0),FZ.set(O0,b0);let J1=Z.__stx_options?.runtimeConfig;if(J1||/\buse(?:Server)?RuntimeConfig\b/.test(G))await g9(Z,J,J1);let v0=await IZ(Z.__stx_runtime_config??TZ()??bZ(),()=>g6(Z,()=>b0(z,K,j,B,V,_,O,L,A,h6,EZ,kZ,w,N,R,M,T,D,k,E,C,y,b,I.setResponseStatus,I.setResponseHeader,I.notFound,P,h,p,g,Z0,J0,e,i,q0,F,r,L0,e0,$1,l,u,o,Q0,B0,K0,p9,i9,Q2,c0.confirm,c0.alert,c0.fetch,m,...Z1,...G0)));if(X.preserveExisting){for(let[a,h0]of Object.entries(v0))if(!(a in Z)||Z[a]===void 0)Z[a]=h0}else Object.assign(Z,v0);for(let[a,h0]of Object.entries(B))if(!(a in Z))Z[a]=h0}catch(S){if(Z.__stx_strict_hydration)throw S;let v=S instanceof Error?S.message:String(S);if(kK(v))console.warn(`[stx] server <script> in ${J??"<unknown>"} imports a module that does not resolve, so every variable in that script is undefined. Cause: ${v}`);else if(EK(S))console.warn(`[stx] server <script> in ${J??"<unknown>"} does not parse, so every variable in that script is undefined. Cause: ${v}`);else if(bK(v))console.warn(`[stx] server <script> in ${J??"<unknown>"} names something that does not exist, so every variable in that script is undefined. Optional chaining does not help here: an undefined identifier throws before the chain is reached. Cause: ${v}`);else{let d=`${J??"<unknown>"}\x00${v}`;if(X2.env.STX_DEBUG||!wZ.has(d))wZ.add(d),console.warn(`[stx] server <script> in ${J??"<unknown>"} threw, so every variable in that script is undefined and anything that reads one renders empty. Cause: ${v}`)}try{await hK(G,Z,J)}catch(d){if(X2.env.STX_DEBUG){let X0=d instanceof Error?d.message:String(d);console.warn(`[stx] fallback extraction also failed in ${J??"<unknown>"}: ${X0}`)}}}}function CK($){let Z=0,J=null,X=!1,Y=!1;for(let Q=0;Q<$.length;Q++){let G=$[Q];if(J){if(G===J){if(J=null,X||Z===0)Y=!0}continue}if(G==="'"||G==='"'||G==="`"){J=G;continue}if(G==="{")Z++;else if(G==="}")Z--;else if($.startsWith("from",Q)&&Z===0)X=!0}return J===null&&Z===0&&Y}var SK=/^(?:export\s+)?(?:const|let|var)\s+[A-Za-z_$][\w$]*(?:\s*,\s*[A-Za-z_$][\w$]*)*\s*;?$/;function PZ($,Z){let J=Z?s0.dirname(Z):X2.cwd(),X=X2.cwd(),Y=$.split(`
|
|
3593
|
+
`),Q=[],G=0;while(G<Y.length){let z=Y[G].trim();if(z.startsWith("interface ")||z.startsWith("export interface ")||z.startsWith("type ")||z.startsWith("export type ")){if(z.includes("{")&&!z.includes("}")){let K=0;for(;G<Y.length;G++){for(let q of Y[G])if(q==="{")K++;else if(q==="}")K--;if(K<=0)break}}G++;continue}if(z.startsWith("definePageMeta(")){let K=0,q=!1,W=G;for(let j=G;j<Y.length&&!q;j++){let B=null,V=!1,_=Y[j];for(let O=0;O<_.length;O++){let F=_[O];if(V){V=!1;continue}if(F==="\\"){V=!0;continue}if(B){if(F===B)B=null;continue}if(F==='"'||F==="'"||F==="`"){B=F;continue}if(F==="(")K++;else if(F===")"){if(K--,K===0){G=j+1,q=!0;break}}}}if(!q)G=Y.length;let H=Y.slice(W,G).join(`
|
|
3594
|
+
`),U=[];for(let j of["title","description"]){let B=new RegExp(`\\b${j}\\s*:\\s*(['"\`])((?:\\\\.|(?!\\1)[^\\\\])*)\\1`).exec(H);if(B)U.push(`${j}: ${JSON.stringify(B[2])}`)}if(U.length>0)Q.push(`useSeoMeta({ ${U.join(", ")} });`);continue}if(z.startsWith("import ")||z==="import"||z.startsWith("import{")){let K=z,q=0;while(!CK(K)&&G+q+1<Y.length)q++,K=`${K} ${Y[G+q].trim()}`;G+=q;let W=K.match(/^import\s+(\w+)\s+from\s+['"](.+?)['"]/),H=K.match(/^import\s+\{([^}]*)\}\s+from\s+['"](.+?)['"]/),U=K.match(/^import\s+['"](.+?)['"]/),j=K,B=(V)=>{if(V.startsWith("."))return s0.resolve(J,V);if(V.startsWith("~/")||V.startsWith("@/"))return s0.resolve(X,V.slice(2));return V};if(W){let[,V,_]=W,O=B(_);Q.push(`const ${V} = (await import('${O}')).default`),Q.push(`module.exports.${V} = ${V};`)}else if(H){let[,V,_]=H,O=B(_),F=[],L=[],w=AK.has(_);for(let N of V.split(",")){let R=N.trim();if(!R)continue;let M=R.split(/\s+as\s+/);if(M.length===2){let[T,D]=[M[0].trim(),M[1].trim()];if(w&&OZ.has(T)){Q.push(`const ${D} = ${T};`);continue}F.push(`${T}: ${D}`),L.push(D)}else{if(w&&OZ.has(R))continue;F.push(R),L.push(R)}}if(F.length>0)Q.push(`const { ${F.join(", ")} } = await import('${O}')`);for(let N of L)Q.push(`module.exports.${N} = ${N};`)}else if(U){let V=B(U[1]);Q.push(`await import('${V}')`)}else Q.push(j);G++;continue}if(SK.test(z))Q.push(Y[G]),G++;else if(z.startsWith("export const ")||z.startsWith("export let ")||z.startsWith("export var ")){let K=NZ(Y,G),{type:q,name:W,value:H}=K;Q.push(`${q} ${W} = ${H};`),Q.push(`module.exports.${W} = ${W};`),G=K.nextIndex}else if(z.startsWith("export function ")||z.startsWith("export async function ")){let K=X$(Y,G);Q.push(K.functionCode),Q.push(`module.exports.${K.name} = ${K.name};`),G=K.nextIndex}else if(z.startsWith("const ")||z.startsWith("let ")||z.startsWith("var ")){let K=NZ(Y,G),{type:q,name:W,value:H}=K;Q.push(`${q} ${W} = ${H};`),Q.push(`module.exports.${W} = ${W};`),G=K.nextIndex}else if(z.startsWith("function ")||z.startsWith("async function ")){let K=X$(Y,G);Q.push(K.functionCode),Q.push(`module.exports.${K.name} = ${K.name};`),G=K.nextIndex}else if(z.startsWith("export default function ")||z.startsWith("export default async function ")){let K=Y[G].replace(/^(\s*)export\s+default\s+/,"$1"),q=[...Y];q[G]=K;let W=X$(q,G);if(Q.push(W.functionCode),W.name)Q.push(`module.exports.default = ${W.name};`);G=W.nextIndex}else if(z.startsWith("export default ")){let K=z.replace(/^export\s+default\s+/,"").replace(/;$/,"");Q.push(`module.exports.default = ${K};`),G++}else if(z.startsWith("class ")||z.startsWith("export class ")){let K=z.match(/(?:export\s+)?class\s+(\w+)/);if(K){let q=K[1],W=Y[G].replace(/^export\s+/,""),H=0,U=G;for(;U<Y.length;U++){let j=Y[U];for(let B of j)if(B==="{")H++;else if(B==="}")H--;if(U>G)W+=`
|
|
3595
|
+
`+j;if(H<=0&&U>=G)break}Q.push(W),Q.push(`module.exports.${q} = ${q};`),G=U+1}else Q.push(z),G++}else if(z.includes("module.exports"))Q.push(z),G++;else if(z.trim()&&!z.startsWith("//"))Q.push(z),G++;else G++}return PK(Q.join(`
|
|
3596
|
+
`),J,X)}function PK($,Z,J){let X=$.length,Y="",Q=0,G=null,z=!1,K=!1,q=0;while(Q<X){let W=$[Q],H=$[Q+1];if(z){if(Y+=W,W===`
|
|
3597
|
+
`)z=!1;Q++;continue}if(K){if(Y+=W,W==="*"&&H==="/"){Y+=H,Q+=2,K=!1;continue}Q++;continue}if(!G&&W==="/"&&H==="/"){z=!0,Y+=W,Q++;continue}if(!G&&W==="/"&&H==="*"){K=!0,Y+=W,Q++;continue}if(G){if(Y+=W,W==="\\"){Y+=H,Q+=2;continue}if(W===G&&G!=="`"){G=null,Q++;continue}if(G==="`"){if(W==="$"&&H==="{"){q++,Y+=H,Q+=2;continue}if(W==="`"){G=null,Q++;continue}}Q++;continue}if(q>0){if(W==="{")q++;else if(W==="}")q--}if(W==='"'||W==="'"||W==="`"){G=W,Y+=W,Q++;continue}if(W==="a"&&$.startsWith("await",Q)){let U=vK($,Q);if(U){let{quote:j,path:B,end:V}=U;if(B.startsWith(".")||B.startsWith("~/")||B.startsWith("@/")){let _=B.startsWith(".")?s0.resolve(Z,B):s0.resolve(J,B.slice(2));Y+=`await import(${j}${_}${j})`,Q=V;continue}}}Y+=W,Q++}return Y}function vK($,Z){let J=Z+5;if(J>=$.length)return null;if(!/\s/.test($[J]))return null;while(J<$.length&&/\s/.test($[J]))J++;if(!$.startsWith("import",J))return null;J+=6;while(J<$.length&&/\s/.test($[J]))J++;if($[J]!=="(")return null;J++;while(J<$.length&&/\s/.test($[J]))J++;let X=$[J];if(X!=="'"&&X!=='"')return null;J++;let Y=J;while(J<$.length&&$[J]!==X)if($[J]==="\\")J+=2;else J++;if(J>=$.length)return null;let Q=$.slice(Y,J);J++;while(J<$.length&&/\s/.test($[J]))J++;if($[J]!==")")return null;return{quote:X,path:Q,end:J+1}}function vZ($,Z){let J=$[Z];if(J!=="{"&&J!=="[")return null;let Y=M0($,J,J==="{"?"}":"]",Z);if(Y===-1)return null;return{pattern:$.slice(Z,Y+1),endPos:Y+1}}function xZ($){let Z=[],J=$.slice(1,-1).trim();if(!J)return Z;let X=0,Y=0,Q="";while(X<J.length){let G=J[X];if(G==="{"||G==="["){let z=Y===0?vZ(J,X):null;if(z){Z.push(...xZ(z.pattern)),X=z.endPos,Q="";continue}Y++}else if(G==="}"||G==="]")Y--;if(Y>0){X++;continue}if(G===","){if(Q.trim())Z.push(Q.trim());Q="",X++;continue}if(G===":"){Q="",X++;continue}if(G==="="){if(Q.trim())Z.push(Q.trim());Q="",X++;while(X<J.length&&J[X]!==","&&Y===0){if(J[X]==="{"||J[X]==="[")Y++;else if(J[X]==="}"||J[X]==="]")Y--;X++}continue}if(/[\w$]/.test(G))Q+=G;X++}if(Q.trim())Z.push(Q.trim());return Z}function xK($){let Z=/^(?:export\s+)?(const|let|var)\s+([A-Za-z_$][\w$]*)/.exec($);if(!Z)return null;let J=Z[0].length,X=(Y)=>Y===" "||Y==="\t";while(J<$.length&&X($[J]))J++;if($[J]===":"){let Y=0,Q=null;J++;for(;J<$.length;J++){let G=$[J];if(Q){if(G==="\\"){J++;continue}if(G===Q)Q=null;continue}if(G==="'"||G==='"'||G==="`"){Q=G;continue}if(G==="("||G==="["||G==="{"||G==="<"){Y++;continue}if(G===")"||G==="]"||G==="}"||G===">"){Y--;continue}if(G==="="&&Y<=0){let z=$[J+1],K=$[J-1];if(z!=="="&&z!==">"&&K!=="="&&K!=="!"&&K!=="<"&&K!==">")break}}if($[J]!=="=")return null}while(J<$.length&&X($[J]))J++;if($[J]!=="=")return null;return{type:Z[1],name:Z[2],value:$.slice(J+1).trim()}}function RZ($,Z,J,X){let Y=null,Q=!1;for(let G of $){if(Q){Q=!1;continue}if(G==="\\"){Q=!0;continue}if(Y){if(G===Y)Y=null;continue}if(G==="'"||G==='"'||G==="`"){Y=G;continue}if(G===Z)X++;else if(G===J)X--}return X}function NZ($,Z){let J=$[Z].trim(),X=xK(J),Y=X?[J,X.type,X.name,X.value]:null;if(!Y){let W=J.match(/^(?:export\s+)?(const|let|var)\s+/);if(W){let H=J.slice(W[0].length),U=Z;if(H.startsWith("{")||H.startsWith("[")){let B=H[0],V=B==="{"?"}":"]",_=RZ(H,B,V,0),O=H;for(let F=Z+1;F<$.length&&_>0;F++)O+=` ${$[F].trim()}`,U=F,_=RZ($[F],B,V,_);if(_>0)O=H,U=Z;H=O}let j=vZ(H,0);if(j){let B=W[1],V=j.pattern,_=H.slice(j.endPos).trim();if(_.startsWith("=")){let O=_.slice(1).trim(),F=O,L=Math.max(U,Z);if(DZ(O)){let M=MZ($,L,O);F=M.value,L=M.nextIndex}else L=L+1;F=F.trim().replace(/;$/,"");let w=xZ(V),N=`__stx_src_${Z}`,R=w.map((M)=>`module.exports.${M} = ${M};`).join(`
|
|
3598
3598
|
`);return{type:B,name:N,value:`${F}; ${B} ${V} = ${N};
|
|
3599
|
-
${R}`,nextIndex:L}}}}throw Error(`Failed to parse variable declaration: ${J}`)}let[,Q,G,z]=Y,K=z,q=Z;if(
|
|
3600
|
-
${$[q]}`,q++;else break}return K=K.trim().replace(/;$/,""),{type:Q,name:G,value:K,nextIndex:q}}function
|
|
3599
|
+
${R}`,nextIndex:L}}}}throw Error(`Failed to parse variable declaration: ${J}`)}let[,Q,G,z]=Y,K=z,q=Z;if(DZ(z)){let W=MZ($,Z,z);K=W.value,q=W.nextIndex}else q=Z+1;while(q<$.length){let W=$[q].trim();if(W.startsWith(".")||W.startsWith("?."))K+=`
|
|
3600
|
+
${$[q]}`,q++;else break}return K=K.trim().replace(/;$/,""),{type:Q,name:G,value:K,nextIndex:q}}function X$($,Z){let J=$[Z].trim(),X=J.match(/^(?:export\s+)?(?:async\s+)?function\s+(\w+)/);if(!X)throw Error(`Failed to parse function declaration: ${J}`);let[,Y]=X,Q=J.replace(/^export\s+/,""),G=Z;if(fK(J)){let z=gK($,Z,Q);Q=z.functionCode,G=z.nextIndex}else G=Z+1;return{name:Y,functionCode:Q,nextIndex:G}}function DZ($){let Z=$.trim();if(Z.startsWith("{"))return M0(Z,"{","}",0)===-1;if(Z.startsWith("["))return M0(Z,"[","]",0)===-1;return!fZ(Z)}function fZ($){let Z={paren:0,bracket:0,brace:0},J=null,X=0;for(let Y=0;Y<$.length;Y++){let Q=$[Y];if((Y>0?$[Y-1]:"")==="\\"&&J)continue;if((Q==='"'||Q==="'")&&!J){J=Q;continue}if(Q===J&&J!=="`"){J=null;continue}if(Q==="`"&&!J){J="`";continue}if(Q==="`"&&J==="`"&&X===0){J=null;continue}if(J==="`"&&Q==="$"&&$[Y+1]==="{"){X++,Y++;continue}if(X>0&&Q==="{"){X++;continue}if(X>0&&Q==="}"){X--;continue}if(J)continue;if(Q==="(")Z.paren++;else if(Q===")")Z.paren--;else if(Q==="[")Z.bracket++;else if(Q==="]")Z.bracket--;else if(Q==="{")Z.brace++;else if(Q==="}")Z.brace--}return Z.paren===0&&Z.bracket===0&&Z.brace===0&&J===null}function gZ($){let Z=$.indexOf("(");if(Z===-1)return $.indexOf("{");let J=M0($,"(",")",Z);if(J===-1)return-1;return $.indexOf("{",J)}function fK($){let Z=gZ($);if(Z===-1)return!0;return M0($,"{","}",Z)===-1}function MZ($,Z,J){let X=J,Y=Z+1;while(Y<$.length&&!fZ(X)){let Q=$[Y];X+=`
|
|
3601
3601
|
${Q}`,Y++}while(Y<$.length){let Q=$[Y].trim();if(Q.startsWith(".")||Q.startsWith("?."))X+=`
|
|
3602
|
-
${$[Y]}`,Y++;else break}return{value:X,nextIndex:Y}}function
|
|
3603
|
-
${G}`,Y++}return{functionCode:X,nextIndex:Y}}function
|
|
3604
|
-
`)Y++;return!0}if($[Y]==="/"&&$[Y+1]==="*"){Y+=2;while(Y<Q-1&&!($[Y]==="*"&&$[Y+1]==="/"))Y++;return Y+=2,!0}return!1},q=()=>{if(X!==0)return;let W=$.slice(Y).match(/^(const|let|var)\s*\{([^}]+)\}\s*=/);if(W){let B=W[2].split(",").map((V)=>{let _=V.trim().split(":");return _[_.length-1].trim()});for(let V of B)if(V&&/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(V)&&!J.has(V))Z.push(V),J.add(V);return}let
|
|
3605
|
-
|
|
3606
|
-
${
|
|
3607
|
-
`)}`:"";
|
|
3608
|
-
`)}`}if(J&&
|
|
3602
|
+
${$[Y]}`,Y++;else break}return{value:X,nextIndex:Y}}function gK($,Z,J){let X=J,Y=Z+1;while(Y<$.length){let Q=gZ(X);if(Q!==-1){if(M0(X,"{","}",Q)!==-1)break}let G=$[Y];X+=`
|
|
3603
|
+
${G}`,Y++}return{functionCode:X,nextIndex:Y}}function AZ($,Z){let J=Y0($,Z)??Y0(`(${$})`,Z);if(J!==void 0)return J;if(!/\bprocess\b/.test($))return;let X={...Z,process:Object.freeze({env:{...X2.env}})},Y=Object.keys(X).filter(Y2),Q=Y.map((G)=>X[G]);try{return Function(...Y,`'use strict'; return (${$});`)(...Q)}catch{try{return Function(...Y,`'use strict'; return ${$};`)(...Q)}catch{return}}}async function hK($,Z,J){let X=$.matchAll(/export\s+(const|let|var)\s+(\w+)\s*=\s*([\s\S]*?)(?=\s*(?:export\s+|$))/g);for(let Q of X){let[,,G,z]=Q;try{let K=z.trim().replace(/;$/,""),q=AZ(K,Z);if(q!==void 0)Z[G]=q}catch(K){console.warn(`Failed to parse export ${G} in fallback:`,K)}}let Y=$.matchAll(/(?:^|\n)\s*(const|let|var)\s+(\w+)\s*=\s*([\s\S]*?)(?=\s*(?:(?:const|let|var|function|export)\s+|$))/g);for(let Q of Y){let[,,G,z]=Q;if(!(G in Z))try{let K=z.trim().replace(/;$/,""),q=AZ(K,Z);if(q!==void 0)Z[G]=q}catch{}}}function uK($){let Z=$.match(/<script\b[^>]*>([\s\S]*?)<\/script>/i),J=Z?Z[1]:"",X=Z?$.replace(/<script\b[^>]*>[\s\S]*?<\/script>/i,""):$;return{scriptContent:J,templateWithoutScript:X}}function mK($){let Z=$.trim();if(!Z)return!1;return/(?:const|let|var|function)\s+\w+/.test(Z)}var x2=new o1(500),l9=new o1(1000),oZ=33554432,G$=oZ;function dK($){let Z=$.componentRenderCacheBytes;if(typeof Z!=="number"||Z<0||Z===G$)return;G$=Z,c9.setMaxBytes(Z)}var c9=new o1(2000,{maxBytes:oZ,sizeOf:($)=>$.output.length});function lK($){let Z=new WeakSet;try{let J=(X)=>{if(X===void 0)return{__stxType:"undefined"};if(typeof X==="bigint")return{__stxType:"bigint",value:X.toString()};if(typeof X==="function"||typeof X==="symbol")throw TypeError("Non-serializable component input");if(X===null||typeof X!=="object")return X;if(Z.has(X))throw TypeError("Circular component input");if(Z.add(X),X instanceof Date)return{__stxType:"date",value:X.toISOString()};if(Array.isArray(X))return X.map(J);let Y={};for(let Q of Object.keys(X).sort())Y[Q]=J(X[Q]);return Y};return JSON.stringify(J($))}catch{return null}}function hZ($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function cK($){return/\bjs\b/.test($)||/\blang\s*=\s*["']?(js|javascript)["']?/i.test($)}function I1($){return!cK($)}var d9=new Map;function Y$($){let Z;try{Z=JSON.stringify($)}catch{return new Bun.Transpiler($)}let J=d9.get(Z);if(J)return J;if(d9.size>=16)d9.clear();let X=new Bun.Transpiler($);return d9.set(Z,X),X}var uZ=new WeakMap,pK=256;function T1($){try{let Z=Y$({loader:"ts",target:"browser",define:Z2()}),J=uZ.get(Z);if(!J)J=new Map,uZ.set(Z,J);let X=J.get($);if(X!==void 0)return X;let Y=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");Y=Y.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");let Q=[];Y=Y.replace(/\{!![\s\S]*?!!\}/g,(z)=>{let K=Q.length;return Q.push(z),`"__STX_EXPR_${K}__"`}),Y=Y.replace(/\{\{\{[\s\S]*?\}\}\}/g,(z)=>{let K=Q.length;return Q.push(z),`"__STX_EXPR_${K}__"`}),Y=Y.replace(/\{\{[\s\S]*?\}\}/g,(z)=>{let K=Q.length;return Q.push(z),`"__STX_EXPR_${K}__"`});let G=Z.transformSync(Y);for(let z=0;z<Q.length;z++)G=G.replace(`"__STX_EXPR_${z}__"`,Q[z]),G=G.replace(`'__STX_EXPR_${z}__'`,Q[z]);if(J.size>=pK){let z=J.keys().next();if(!z.done)J.delete(z.value)}return J.set($,G),G}catch(Z){if(process.env.STX_DEBUG_TS)console.warn("[STX] TypeScript transpilation error:",Z);return $}}function iK($){let Z=[],J=new Set,X=0,Y=0,Q=$.length,G=(W)=>{Y++;while(Y<Q){if($[Y]==="\\"){Y+=2;continue}if($[Y]===W){Y++;return}Y++}},z=()=>{Y++;while(Y<Q){if($[Y]==="\\"){Y+=2;continue}if($[Y]==="`"){Y++;return}if($[Y]==="$"&&$[Y+1]==="{"){Y+=2;let W=1;while(Y<Q&&W>0)if($[Y]==="{")W++,Y++;else if($[Y]==="}")W--,Y++;else if($[Y]==="'"||$[Y]==='"')G($[Y]);else if($[Y]==="`")z();else Y++;continue}Y++}},K=()=>{if($[Y]==="/"&&$[Y+1]==="/"){while(Y<Q&&$[Y]!==`
|
|
3604
|
+
`)Y++;return!0}if($[Y]==="/"&&$[Y+1]==="*"){Y+=2;while(Y<Q-1&&!($[Y]==="*"&&$[Y+1]==="/"))Y++;return Y+=2,!0}return!1},q=()=>{if(X!==0)return;let W=$.slice(Y).match(/^(const|let|var)\s*\{([^}]+)\}\s*=/);if(W){let B=W[2].split(",").map((V)=>{let _=V.trim().split(":");return _[_.length-1].trim()});for(let V of B)if(V&&/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(V)&&!J.has(V))Z.push(V),J.add(V);return}let H=$.slice(Y).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(H){let B=H[2];if(!J.has(B))Z.push(B),J.add(B);return}let U=$.slice(Y).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(U){let B=U[1];if(!J.has(B))Z.push(B),J.add(B);return}let j=$.slice(Y).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(j){let B=j[1];if(!J.has(B))Z.push(B),J.add(B)}};while(Y<Q){if(K())continue;if($[Y]==="'"||$[Y]==='"'){G($[Y]);continue}if($[Y]==="`"){z();continue}if($[Y]==="{"){X++,Y++;continue}if($[Y]==="}"){X--,Y++;continue}if(X===0&&/[a-z]/i.test($[Y])&&(Y===0||/\s|[;{}()]/.test($[Y-1])))q();Y++}return Z}function nK($){let Z=[],J=0,X=0,Y=null;for(let Q=0;Q<$.length;Q++){let G=$[Q];if(Y){if(G==="\\"){Q++;continue}if(G===Y)Y=null;continue}if(G==='"'||G==="'"||G==="`"){Y=G;continue}if(G==="("||G==="["||G==="{")J++;else if(G===")"||G==="]"||G==="}")J--;else if(G===","&&J===0)Z.push($.slice(X,Q)),X=Q+1}if(X<$.length)Z.push($.slice(X));return Z}function sK($){let Z=0,J=null;for(let X=0;X<$.length;X++){let Y=$[X];if(J){if(Y==="\\"){X++;continue}if(Y===J)J=null;continue}if(Y==='"'||Y==="'"||Y==="`"){J=Y;continue}if(Y==="("||Y==="["||Y==="{")Z++;else if(Y===")"||Y==="]"||Y==="}")Z--;else if(Y==="="&&Z===0){let Q=$[X-1],G=$[X+1];if(Q==="!"||Q==="<"||Q===">"||Q==="=")continue;if(G==="="||G===">")continue;return X}}return-1}function oK($,Z){try{let J=/=\s*(?:withDefaults\s*\([\s\S]*?defineProps|defineProps)\b/.exec($);if(!J)return;let X=J.index-1;while(X>=0&&/\s/.test($[X]))X--;if($[X]!=="}")return;let Y=X,Q=0,G=-1;for(;X>=0;X--){let K=$[X];if(K==="}")Q++;else if(K==="{"){if(Q--,Q===0){G=X;break}}}if(G===-1)return;let z=$.slice(G+1,Y);for(let K of nK(z)){let q=K.trim();if(!q||q.startsWith("..."))continue;let W=sK(q);if(W===-1)continue;let H=q.slice(0,W).trim();if(!/^[A-Z_$][\w$]*$/i.test(H))continue;if(Z[H]!==void 0)continue;let U=q.slice(W+1).trim();if(!U)continue;try{let j=Object.keys(Z).filter(Y2),B=Function(...j,`"use strict"; return (${U});`);Z[H]=B(...j.map((V)=>Z[V]))}catch{}}}catch{}}var rK=new Set(["tr","td","th","thead","tbody","tfoot","caption","colgroup","col","option","optgroup","li","dt","dd"]);function aK($,Z){let J=$.match(/^(\s*(?:(?:<!--[\s\S]*?-->|\x00STX_HTML_COMMENT_\d+\x00)\s*)*)<([a-zA-Z][a-zA-Z0-9-]*)/s);if(!J)return null;let X=J[2].toLowerCase();if(!rK.has(X))return null;if(($.match(new RegExp(`<${X}(?=[\\s/>])`,"gi"))??[]).length!==1)return null;if(!new RegExp(`</${X}>\\s*$`,"i").test($))return null;let Q=J[0].length;return $.slice(0,Q)+Z+$.slice(Q)}async function F9($,Z,J,X,Y){let Q=$.endsWith(".stx")?$.slice(0,-4):$,G=(O)=>O.split("-").map((F)=>F.charAt(0).toUpperCase()+F.slice(1)).join(""),z=(O)=>O.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),K=J.__importedComponents;if(K){for(let O of[Q,Q.toLowerCase(),G(Q),z(Q)])if(K.has(O))return!0}let q=[...new Set([`${Q}.stx`,`${G(Q)}.stx`,`${z(Q)}.stx`])],W=typeof Y.root==="string"?f.resolve(Y.root):void 0,H=W??f.dirname(X),U=[],j=(O)=>{if(O&&!U.includes(O))U.push(O)},B=J.__originalFilePath;if(B)j(f.join(f.dirname(B),"components"));if(j(Z),j(Y._rootComponentsDir),j(f.join(f.dirname(X),"components")),j(Y.componentsDir),W)j(f.resolve(W,"resources/views/components")),j(f.resolve(W,"resources/components")),j(f.resolve(W,"src/components")),j(f.resolve(W,"components"));for(let O of Y._layerComponentDirs??[])j(O);let V=Y._pluginComponentDirs;if(Array.isArray(V))for(let O of V)j(typeof O==="string"?O:null);if(j(Y.fallbackComponentsDir),Q.startsWith("./")||Q.startsWith("../"))return t(f.resolve(f.dirname(X),`${Q}.stx`));let _=mZ(f.resolve(import.meta.dir,"components"));for(let O of U){let F=f.isAbsolute(O)?O:f.resolve(H,O);if(mZ(F)===_)continue;for(let L of q)if(await t(f.join(F,L)))return!0}return!1}function mZ($){try{return sZ.realpathSync($)}catch{return $}}function tK($){return $==="visible"||$==="idle"||$==="interaction"||$.startsWith("media:")}function eK($){if(!$)return!1;let Z=$.replace(/<script[\s\S]*?<\/script>/gi,"").replace(/<style[\s\S]*?<\/style>/gi,"");return/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/.test(Z)}function $q($,Z,J){if(!$.includes("{{")&&!$.includes("{!!"))return $;let X=(Y,Q)=>{let G;try{G=C0(Y,Z)}catch{return Q}if(G===void 0||G===null)return"";let z=String(G);if(/<\/style/i.test(z))return console.warn(`[stx] a <style> expression in ${J??"<unknown>"} evaluated to CSS containing a closing style tag, which would end the element early, so it was dropped rather than emitted.`),"";return z};return $.replace(/\{!!([\s\S]*?)!!\}/g,(Y,Q)=>X(Q,Y)).replace(/\{\{([\s\S]*?)\}\}/g,(Y,Q)=>X(Q,Y))}var dZ=new Set;function lZ($,Z,J,X){let Y=`${$}\x00${Z}\x00${X??""}`;if(!process.env.STX_DEBUG&&dZ.has(Y))return;dZ.add(Y);let Q=Z?` used in ${Z}`:"",G=X?` Cause: ${X}.`:"",z=J.length>0?`
|
|
3605
|
+
searched:
|
|
3606
|
+
${J.map((K)=>` - ${K}`).join(`
|
|
3607
|
+
`)}`:"";console.error(`[stx] component <${$}> could not be resolved${Q}, so it rendered as nothing.${G}${z}`)}function cZ($){return`<!-- stx: component "${$.replace(/--+/g,"-")}" could not be resolved; see the server log -->`}function Zq($){let Z=new Set,J=/\b(?:const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=\s*(?:state|derived|computed|ref|reactive|signal|useModel|useReactiveProp|useLocalStorage|useSessionStorage|useCookie|useDebouncedValue)\s*(?:<[^>]*>)?\s*\(/g;for(let X of $){let Y;while((Y=J.exec(X))!==null)Z.add(Y[1]);J.lastIndex=0}return[...Z]}async function A1($,Z,J,X,Y,Q,G,z=new Set,K){let{extractVariables:q}=await s("stx/variable-extractor",()=>import("./chunk-h1vax4wg.js")),W=z??new Set;if(W.has($))return`[Circular component reference: ${$}]`;let H=new Set(W);H.add($);let U=typeof Z.client==="string"?Z.client.trim():"";if("client"in Z)delete Z.client;let j=U&&U!=="load"&&tK(U)?U:"";try{let B=(m)=>m.split("-").map((c)=>c.charAt(0).toUpperCase()+c.slice(1)).join(""),V=(m)=>m.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),_=$.endsWith(".stx")?$.slice(0,-4):$,O=null,F=Y.__importedComponents;if(F){let m=[_,_.toLowerCase(),B(_),V(_)];for(let c of m)if(F.has(c)){O=F.get(c);break}}let L=[];if(!O){let m=[`${_}.stx`,`${B(_)}.stx`,`${V(_)}.stx`],c=[...new Set(m)],G0=Y.__originalFilePath,n=[];if(n.push(...G._layerComponentDirs??[]),G0){let I0=f.join(f.dirname(G0),"components");n.push(I0)}if(X)n.push(X);let R0=G._rootComponentsDir;if(typeof R0==="string"&&!n.includes(R0))n.push(R0);let O0=f.join(f.dirname(Q),"components");if(!n.includes(O0))n.push(O0);if(G.componentsDir&&G.componentsDir!==X&&!n.includes(G.componentsDir))n.push(G.componentsDir);let b0=typeof G.root==="string"?f.resolve(G.root):void 0,J1=b0??f.dirname(Q),v0=[];if(b0)v0.push(f.resolve(b0,"resources/views/components")),v0.push(f.resolve(b0,"resources/components")),v0.push(f.resolve(b0,"src/components")),v0.push(f.resolve(b0,"components"));v0.push(f.resolve(import.meta.dir,"components"));for(let I0 of v0)if(!n.includes(I0))n.push(I0);let a=G._pluginComponentDirs;if(Array.isArray(a)){for(let I0 of a)if(typeof I0==="string"&&!n.includes(I0))n.push(I0)}if(G.fallbackComponentsDir&&!n.includes(G.fallbackComponentsDir))n.push(G.fallbackComponentsDir);let h0=[...new Set(n.map((I0)=>{if(!I0)return I0;return f.isAbsolute(I0)?I0:f.resolve(J1,I0)}))];n.length=0,n.push(...h0);let j1=`${_}\x00${Q}\x00${h0.join("\x00")}`,n9=l9.get(j1);if(n9)if(await t(n9))O=n9;else l9.delete(j1);if(!O&&(_.startsWith("./")||_.startsWith("../")))O=f.resolve(f.dirname(Q),`${_}.stx`),L.push(O);else if(!O)for(let I0 of n){if(!I0)continue;for(let g2 of c){let h2=f.join(I0,g2);if(L.push(h2),await t(h2)){O=h2;break}}if(O)break;if(!O)try{let g2=await import("fs");if(!g2.statSync(I0,{throwIfNoEntry:!1})?.isDirectory())continue;let GJ=8,s9=[{path:I0,depth:0}];while(s9.length>0&&!O){let u2=s9.pop();if(u2.depth>=GJ)continue;let W$;try{W$=g2.readdirSync(u2.path,{withFileTypes:!0})}catch{continue}for(let m2 of W$){if(!m2.isDirectory())continue;if(m2.name==="node_modules"||m2.name.startsWith("."))continue;let H$=f.join(u2.path,m2.name);for(let zJ of c){let o9=f.join(H$,zJ);if(L.push(o9),await t(o9)){O=o9;break}}if(O)break;s9.push({path:H$,depth:u2.depth+1})}}}catch{}if(O)break}if(O)l9.set(j1,O)}if(!O||!await t(O))return lZ($,Q,L),cZ($);K.add(O);let w;if(x2.has(O))w=x2.get(O);else try{w=await Bun.file(O).text(),x2.set(O,w)}catch(m){let c=m instanceof Error?m.message:String(m);return lZ($,Q,[O],c),cZ($)}let N=new Set(["__originalFilePath","__importedComponents",d2,"__stx_client_signal_names","__stx_runtime_config","__stxServeContext","__stx_scope_seq"]),R={};for(let[m,c]of Object.entries(Y))if(!m.startsWith("__")||N.has(m))R[m]=c;let M=J;if(J.includes("@include")){let{processIncludes:m}=await s("stx/includes",()=>import("./chunk-xq0e2y4x.js"));M=await m(J,Y,Q,G,K)}let T=u0(M),D=[],I=T.output.replace(/\x00STX_SCRIPT_(\d+)\x00/g,(m,c)=>{let G0=T.scripts[Number(c)]||"",n=G0.match(/^<script\b([^>]*)>/i)?.[1]||"",R0=n.match(/\btype\s*=\s*["']([^"']+)["']/i)?.[1]?.toLowerCase(),O0=!R0||["module","text/javascript","application/javascript"].includes(R0);if(!/\bserver\b/i.test(n)&&O0)return D.push(G0),"";return G0}),{extractSlotContent:k}=await s("stx/slots",()=>import("./chunk-aapqf6bj.js")),A=k(I),E={};if(A.defaultSlot?.trim())E.default=A.defaultSlot;for(let[m,c]of A.namedSlots)E[m]=c.content;let C=Y.__stx_scope_seq??={n:0,key:Bun.hash(String(Y.__filename??Q)).toString(36).slice(0,6)},y=`stx_${_.replace(/[^a-zA-Z0-9]/g,"_")}_${++C.n}_${C.key}`,b={...R,$uid:y,...Z,props:Z,slot:I,$slots:E,__processedComponents:H,__sections:{},__stx_signals_gate:X1(w)||eK(J)};oK(w,b);let P=w,h=q9(P);if(h)P=h.content.trim();let p=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,g=[...w.matchAll(p)],Z0=[],J0=g.some((m)=>/\bserver\b/.test(m[1]||"")&&/\bcache\b/.test(m[1]||"")),e=null,i=null,q0=null,r=0,L0=null;if(dK(G),J0&&G$>0){let m=lK({props:Z,slot:J,buildMode:G.buildMode??"",skipEventDirectives:G.skipEventDirectives===!0,layers:G._layerGraph?.layers.map((c)=>c.configFile),uid:y});if(m!==null){e=`${O}\x00${H1(w)}\x00${m}`;let c=c9.get(e);if(c){for(let G0 of c.dependencies)K.add(G0);if(M$(Y,c.clientFactories),C.n+=c.uidsConsumed,c.preservedClientExpressions.length>0){let G0=new Set(Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[]);for(let n of c.preservedClientExpressions)G0.add(n);Y.__stx_preserved_client_expressions=[...G0]}return c.output}i=new Set(K),q0=N$(Y),r=C.n,L0=new Set(Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[])}}let e0=new Set;for(let m of g){let c=m[1]||"",G0=m[2]||"",n=c.includes("server");if(I1(c)&&G0.trim())G0=T1(G0);if(n&&G0){for(let O0 of S1(G0))e0.add(O0);try{await q(G0,b,O)}catch(O0){}}if(!n){let O0=G0.replace(/^\s*const\s*\{[^}]+\}\s*=\s*window\.stx\s*;?\s*\n?/gm,""),b0=O0.includes("{{")&&O0.includes("}}"),J1=O0.includes("{!!")&&O0.includes("!!}");if(b0||J1)O0=G5(O0,b,O);let v0=c.replace(/\s*\bts\b/g,"").replace(/\s*\blang\s*=\s*["']?(ts|typescript)["']?/gi,"");Z0.push(`<script${v0}>${O0}</script>`)}}let l=u0(w).output.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),u=l?l[1]:"",o=l?l[2]:"",Q0="",B0=u&&/\bscoped\b/i.test(u);if(l)Q0=`<style${u}>${$q(o,b,O)}</style>`;let K0=P;if(K0=K0.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),l)K0=K0.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");{let m=/@push\s*\(\s*['"]styles['"]\s*\)([\s\S]*?)@endpush/gi,c=[];if(K0=K0.replace(m,(G0,n)=>{let R0=n.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i);if(R0)c.push(`<style${R0[1]}>${R0[2]}</style>`);return""}),K0=K0.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/gi,""),c.length>0)Q0=`${Q0}${c.join(`
|
|
3608
|
+
`)}`}if(J&&K0.includes("{{ text || slot }}"))K0=K0.replace(/\{\{\s*text\s*\|\|\s*slot\s*\}\}/g,()=>J);let{applySlots:c0}=await s("stx/slots",()=>import("./chunk-aapqf6bj.js")),{defaultSlot:p9,namedSlots:i9}=A,Q2=Z0.some((m)=>/\b(?:state|derived|effect|ref|useRef|reactive|computed|watch|watchEffect|useModel|useReactiveProp|defineProps|withDefaults|defineEmits|defineExpose|defineSlots)\s*(?:<[^<>()]*>)?\s*\(/.test(m)),S=(m)=>Q2?T8(m,y):m,v=new Map([...i9].map(([m,c])=>[m,{...c,content:S(c.content)}]));K0=await c0(K0,S(p9),v,b);let d=Zq(Z0),X0=(Array.isArray(b.__stx_client_signal_names)?b.__stx_client_signal_names:[]).filter((m)=>!e0.has(m));if(d.length>0||X0.length>0)b.__stx_client_signal_names=[...new Set([...X0,...d])];else delete b.__stx_client_signal_names;let U0={...G,_rootComponentsDir:G._rootComponentsDir||G.componentsDir,componentsDir:f.dirname(O),skipSignalsRuntime:!0,skipEventDirectives:Q2||Z0.length===0,defaultLayout:void 0};b.__stxProcessingDepth=(Y.__stxProcessingDepth||0)+1;let w0=await t3(K0,b,O,U0,K),Z1=new Set(Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[]);for(let m of w0.matchAll(/\{\{([\s\S]*?)\}\}/g))Z1.add(m[1].trim());if(Z1.size>0)Y.__stx_preserved_client_expressions=[...Z1];let U1=y,P0=w0;if(Q2){let m="";if(Object.keys(Z).length>0)try{m=` data-stx-props="${hZ(JSON.stringify(Z))}"`}catch{}let c=j?` stx-hydrate="${hZ(j)}"`:"",G0=` data-stx-scope="${U1}"${m}${c}`;P0=aK(w0,G0)??`<div${G0}>${w0}</div>`;let n=await Promise.all(Z0.map(async(R0)=>{let O0=R0.match(/<script([^>]*)>([\s\S]*)<\/script>/i);if(!O0)return R0;let[,b0,J1]=O0,{vendorStyleTags:v0,factoryBody:a}=await Yq(J1,O,G.buildMode==="compile"),h0=j?null:e9(Y,a),j1=h0?`window.__stxComponentFactories[${JSON.stringify(h0)}](${JSON.stringify(U1)});`:`(${a})(${JSON.stringify(U1)});`;if(j)return`${v0}<script type="stx/island" data-stx-island="${U1}" data-stx-scoped data-stx-owner="${U1}"${b0}>${j1}</script>`;return`${v0}<script data-stx-scoped data-stx-run="always" data-stx-owner="${U1}"${b0}>${j1}</script>`}));if(P0=P0+`
|
|
3609
|
+
`+n.join(`
|
|
3610
|
+
`),Q0)P0+=`
|
|
3611
|
+
`+Q0}else{if(Q0)P0+=`
|
|
3612
|
+
`+Q0;if(Z0.length>0){let m=b.__stx_event_bindings||[],c=v9(b),G0=await Promise.all(Z0.map(async(n)=>{let R0=n.match(/<script\b[^>]*>([\s\S]*?)<\/script>/);if(!R0)return n;return await x9(R0[1],{eventBindings:m,templateContent:P0,filePath:O,projectRoot:process.cwd(),serverData:c,instanceId:y})}));P0+=`
|
|
3609
3613
|
`+G0.join(`
|
|
3610
|
-
`),i)P0
|
|
3611
|
-
`+i}else{if(i)P0+=`
|
|
3612
|
-
`+i;if(J0.length>0){let h=b.__stx_event_bindings||[],d=v9(b),G0=await Promise.all(J0.map(async(s)=>{let F0=s.match(/<script\b[^>]*>([\s\S]*?)<\/script>/);if(!F0)return s;return await x9(F0[1],{eventBindings:h,templateContent:P0,filePath:O,projectRoot:process.cwd(),serverData:d,instanceId:y})}));P0+=`
|
|
3613
|
-
`+G0.join(`
|
|
3614
|
-
`),b.__stx_event_bindings=[]}}if(j0){let h=f9(P0,O);if(h.hasScoped)P0=h.html}if($0&&c){let h=Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[];c9.set($0,{output:P0,dependencies:[...K].filter((d)=>!c.has(d)),clientFactories:K0?N3(Y,K0):[],uidsConsumed:C.n-r,preservedClientExpressions:V0?h.filter((d)=>!V0.has(d)):[]})}return D.length>0?`${P0}
|
|
3614
|
+
`),b.__stx_event_bindings=[]}}if(B0){let m=f9(P0,O);if(m.hasScoped)P0=m.html}if(e&&i){let m=Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[];c9.set(e,{output:P0,dependencies:[...K].filter((c)=>!i.has(c)),clientFactories:q0?D$(Y,q0):[],uidsConsumed:C.n-r,preservedClientExpressions:L0?m.filter((c)=>!L0.has(c)):[]})}return D.length>0?`${P0}
|
|
3615
3615
|
${D.join(`
|
|
3616
|
-
`)}`:P0}catch(B){return`[Error processing component: ${B instanceof Error?B.message:String(B)}]`}finally{W.delete($)}}async function
|
|
3617
|
-
`),z=0;for(let K=0;K<G.length;K++)if(z+=G[K].length+1,z>=Z){X=K+1,Y=G[K].trim();let q=Math.max(0,K-2),W=Math.min(G.length,K+3);Q=G.slice(q,W).map((U
|
|
3618
|
-
`);break}}else if(J){let G=$.indexOf(J);if(G>=0)return
|
|
3619
|
-
`,Math.max(0,Y-1));q=Y-(
|
|
3616
|
+
`)}`:P0}catch(B){return`[Error processing component: ${B instanceof Error?B.message:String(B)}]`}finally{W.delete($)}}async function t($){return Bun.file($).exists()}function z$($,Z){let J=f.resolve(Z),X=f.resolve($),Y=J.endsWith(f.sep)?J:J+f.sep;if(X===J||X.startsWith(Y))return X;return null}async function Jq($,Z,J,X){let Y=Z.startsWith("layouts/")?Z.slice(8):Z,Q=f.join($,Y);for(let G of Q.endsWith(".stx")?[Q]:[Q,`${Q}.stx`])if(await t(G)){if(X)console.log(`Found layout in ${$}: ${G}`);return J?.add(G),G}return null}async function $9($,Z,J,X){let Y=await Xq($,Z,J,X);if(Y===null)return null;let Q=z$(Y,process.cwd());if(Q)return Q;let G=[J.root,J.layoutsDir,J.fallbackLayoutsDir,J.componentsDir,J.partialsDir,J.pagesDir,...J._layerLayoutDirs??[]].filter((z)=>typeof z==="string"&&z.length>0);for(let z of G){let K=f.isAbsolute(z)?z:f.resolve(process.cwd(),z);if(z$(Y,K))return f.resolve(Y)}return console.warn(`[stx] rejected resolved template path that escapes project root: ${Y} (template: ${$}, from: ${Z})`),null}async function Xq($,Z,J,X){if(J.debug)console.log(`Resolving template path: ${$} from ${Z}`);let Y=f.dirname(Z),Q=process.cwd();if($.startsWith("/")){let U=f.join(Q,$),j=z$(U,Q);if(!j)return console.warn(`[stx] rejected template path that escapes project root: ${$} (from ${Z})`),null;if(J.debug)console.log(`Checking absolute path: ${j}`);if(await t(j)&&X)X.add(j);return j}let G=f.join(Y,$);if(await t(G)){if(J.debug)console.log(`Found direct path: ${G}`);if(X)X.add(G);return G}if(!$.endsWith(".stx")&&!$.endsWith(".jsx")&&!$.endsWith(".tsx"))for(let U of[".stx",".tsx",".jsx"]){let j=`${G}${U}`;if(await t(j)){if(J.debug)console.log(`Found direct path with extension: ${j}`);if(X)X.add(j);return j}}let z=[];if(z.push(...J._layerLayoutDirs??[]),J.layoutsDir)z.push(f.isAbsolute(J.layoutsDir)?J.layoutsDir:f.resolve(process.cwd(),J.layoutsDir));let K=f.resolve(Y),q=process.cwd();for(let U=0;U<10;U++){let j=f.join(K,"layouts"),B=!1;try{B=sZ.statSync(j,{throwIfNoEntry:!1})?.isDirectory()??!1}catch{}if(B){z.push(j);break}let V=f.dirname(K);if(V===K||V.length<q.length)break;K=V}for(let U of z){let j=await Jq(U,$,X,J.debug);if(j)return j}if(J.fallbackLayoutsDir){let U=f.isAbsolute(J.fallbackLayoutsDir)?J.fallbackLayoutsDir:f.resolve(process.cwd(),J.fallbackLayoutsDir),j=$.startsWith("layouts/")?$.slice(8):$,B=[f.join(U,j)];if(!$.endsWith(".stx"))B.push(`${B[0]}.stx`);for(let V of B)if(await t(V)){if(J.debug)console.log(`Found in options.fallbackLayoutsDir: ${V}`);if(X)X.add(V);return V}}if($.startsWith("layouts/")||$.includes("/layouts/")){let U=$.split("layouts/"),j=f.join(J.partialsDir||Y,"layouts",U[1]);if(await t(j)){if(J.debug)console.log(`Found in layouts path: ${j}`);if(X)X.add(j);return j}if(!j.endsWith(".stx")){let B=`${j}.stx`;if(await t(B)){if(J.debug)console.log(`Found in layouts path with extension: ${B}`);if(X)X.add(B);return B}}}if(J.partialsDir){let U=f.join(J.partialsDir,"layouts");if(await t(U)){let j=f.join(U,$);if(await t(j)){if(J.debug)console.log(`Found in partials layouts dir: ${j}`);if(X)X.add(j);return j}if(!$.endsWith(".stx")){let B=`${j}.stx`;if(await t(B)){if(J.debug)console.log(`Found in partials layouts dir with extension: ${B}`);if(X)X.add(B);return B}}}}let W=J.partialsDir||f.join(process.cwd(),"views"),H=f.join(W,$);if(await t(H)){if(J.debug)console.log(`Found in views path: ${H}`);if(X)X.add(H);return H}if(!$.endsWith(".stx")){let U=`${H}.stx`;if(await t(U)){if(J.debug)console.log(`Found in views path with extension: ${U}`);if(X)X.add(U);return U}}if(Y.includes("temp")){let U=f.join(f.dirname(Y),"layouts",$);if(await t(U)){if(J.debug)console.log(`Found in temp layouts dir: ${U}`);if(X)X.add(U);return U}if(!$.endsWith(".stx")){let j=`${U}.stx`;if(await t(j)){if(J.debug)console.log(`Found in temp layouts dir with extension: ${j}`);if(X)X.add(j);return j}}}if(J.debug)console.warn(`Template not found after trying all paths: ${$} (referenced from ${Z})`);else console.warn(`Template not found: ${$} (referenced from ${Z})`);return null}function rZ($,Z,J){let X=0,Y="",Q="";try{if(typeof Z==="number"&&Z>=0){let G=$.split(`
|
|
3617
|
+
`),z=0;for(let K=0;K<G.length;K++)if(z+=G[K].length+1,z>=Z){X=K+1,Y=G[K].trim();let q=Math.max(0,K-2),W=Math.min(G.length,K+3);Q=G.slice(q,W).map((H,U)=>{let j=q+U+1;return`${j===X?"> ":" "}${j}: ${H}`}).join(`
|
|
3618
|
+
`);break}}else if(J){let G=$.indexOf(J);if(G>=0)return rZ($,G)}}catch{}return{lineNumber:X,lineContent:Y,context:Q}}var $0={reset:"\x1B[0m",bold:"\x1B[1m",dim:"\x1B[2m",red:"\x1B[31m",yellow:"\x1B[33m",blue:"\x1B[34m",cyan:"\x1B[36m",gray:"\x1B[90m",bgRed:"\x1B[41m",bgYellow:"\x1B[43m"};function _0($,Z,J,X,Y,Q){let{lineNumber:G,context:z}=rZ(X,Y,Q),K=J.split("/").pop(),q=0;if(typeof Y==="number"&&Y>=0&&X){let H=X.lastIndexOf(`
|
|
3619
|
+
`,Math.max(0,Y-1));q=Y-(H+1)+1}let W="";if(G>0)W+=`
|
|
3620
3620
|
${J}:${G}${q>0?`:${q}`:""}: ${$.toLowerCase()} error: ${Z}
|
|
3621
3621
|
`;if(W+=`
|
|
3622
|
-
${
|
|
3623
|
-
`,W+=`${
|
|
3624
|
-
`,W+=`${
|
|
3622
|
+
${$0.bold}${$0.red}\u256D\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256E${$0.reset}
|
|
3623
|
+
`,W+=`${$0.bold}${$0.red}\u2502${$0.reset} ${$0.bold}${$0.bgRed} ERROR ${$0.reset} ${$0.red}${$} Error${$0.reset}${" ".repeat(Math.max(0,43-$.length))}${$0.bold}${$0.red}\u2502${$0.reset}
|
|
3624
|
+
`,W+=`${$0.bold}${$0.red}\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256F${$0.reset}
|
|
3625
3625
|
`,W+=`
|
|
3626
|
-
${
|
|
3627
|
-
${
|
|
3626
|
+
${$0.cyan}${$0.bold}File:${$0.reset} ${$0.dim}${K}${$0.reset}`,G>0)W+=` ${$0.gray}(line ${G}${q>0?`, col ${q}`:""})${$0.reset}`;if(W+=`
|
|
3627
|
+
${$0.yellow}${$0.bold}Message:${$0.reset} ${Z}
|
|
3628
3628
|
`,z)W+=`
|
|
3629
|
-
${
|
|
3630
|
-
${
|
|
3631
|
-
`;return W}function
|
|
3632
|
-
${
|
|
3629
|
+
${$0.blue}${$0.bold}Context:${$0.reset}
|
|
3630
|
+
${$0.dim}${z}${$0.reset}
|
|
3631
|
+
`;return W}function l_(){x2.clear(),l9.clear(),c9.clear()}function c_(){return{size:x2.size,maxSize:500}}var Q$=y1(128);async function Yq($,Z,J){let X=H1($,Z,J),Y=Q$.get(X);if(Y){if(nZ(Y.deps))return Y;Q$.delete(X)}let Q=K$($,{filePath:Z,projectRoot:process.cwd()}),G=Q.code,z=q$(Q.styles);G=$2(G).code;let{hasUserImports:K,bundleClientScript:q}=await s("stx/client-script-bundler",()=>import("./chunk-7g5vk4c3.js")),W=[],H=!1;if(K(G)){let O=G;G=await q(O,Z,{projectRoot:process.cwd(),minify:J,collectInputs:W}),H=G===O}let{stripStxRuntimeImports:U}=await s("stx/signal-processing",()=>import("./chunk-3zm4hgcf.js"));G=U(G);let j=a0(G),B=iK(j),V=`function(__scopeId) {
|
|
3632
|
+
${s1("const",[...pZ,...B],j)}
|
|
3633
3633
|
const __scope = window.stx._scopes = window.stx._scopes || {};
|
|
3634
3634
|
const __scopeVars = __scope[__scopeId] = __scope[__scopeId] || {};
|
|
3635
3635
|
__scopeVars.$refs = __scopeVars.$refs || {};
|
|
@@ -3657,18 +3657,18 @@ catch (e) {}
|
|
|
3657
3657
|
finally {
|
|
3658
3658
|
window.__STX_CURRENT_ELEMENT__ = __previousCurrentElement;
|
|
3659
3659
|
}
|
|
3660
|
-
}`,_={vendorStyleTags:z,factoryBody:V,deps:
|
|
3660
|
+
}`,_={vendorStyleTags:z,factoryBody:V,deps:iZ([...W,...Q.styles.map((O)=>O.resolvedPath)])};if(!H&&Q.unresolved.length===0)Q$.set(X,_);return _}var Qq=/^[ \t]*import\s+['"]([^'"]+?\.css)(\?[^'"]*)?['"]\s*;?\s*$/gm;function Gq($){if($.startsWith(".")||$.startsWith("/"))return null;if($.startsWith("@")){let J=$.match(/^(@[^/]+\/[^/]+)(\/.*)?$/);if(!J)return null;return{pkg:J[1],subpath:J[2]||""}}let Z=$.match(/^([^/]+)(\/.*)?$/);if(!Z)return null;return{pkg:Z[1],subpath:Z[2]||""}}function zq($,Z){let J=Z;while(!0){let X=P1.join(J,"node_modules",$,"package.json");if(f2.existsSync(X))return P1.dirname(X);let Y=P1.dirname(J);if(Y===J)return null;J=Y}}function Kq($,Z){if(!$||typeof $!=="object")return null;let J=(Y)=>{if(typeof Y==="string")return Y;if(Y&&typeof Y==="object"){if(typeof Y.import==="string")return Y.import;if(typeof Y.default==="string")return Y.default;if(typeof Y.import==="object")return J(Y.import);if(typeof Y.default==="object")return J(Y.default)}return null};if(Object.prototype.hasOwnProperty.call($,Z))return J($[Z]);let X=null;for(let Y of Object.keys($)){let Q=Y.indexOf("*");if(Q===-1)continue;let G=Y.slice(0,Q),z=Y.slice(Q+1);if(!Z.startsWith(G)||!Z.endsWith(z))continue;if(Z.length<G.length+z.length)continue;if(!X||G.length>X.prefix.length)X={pattern:Y,prefix:G,suffix:z}}if(X){let Y=Z.slice(X.prefix.length,Z.length-X.suffix.length),Q=J($[X.pattern]);if(Q)return Q.replace("*",Y)}return null}function qq($,Z){let J=Gq($);if(!J||!J.subpath)return null;let X=zq(J.pkg,Z);if(!X)return null;let Y;try{Y=JSON.parse(f2.readFileSync(P1.join(X,"package.json"),"utf8"))}catch{return null}let Q=`.${J.subpath}`,G=Kq(Y.exports,Q);if(!G)return null;let z=P1.resolve(X,G);return f2.existsSync(z)?z:null}function K$($,Z){let J=Z.filePath?P1.dirname(Z.filePath):Z.projectRoot||process.cwd(),X=Z.projectRoot||process.cwd(),Y=new Set,Q=[],G=[];return{code:$.replace(Qq,(K,q)=>{let W;try{if(q.startsWith("./")||q.startsWith("../")||q.startsWith("/")){if(W=q.startsWith("/")?q:P1.resolve(J,q),!f2.existsSync(W))throw Error(`file not found: ${W}`)}else{let H=null;try{H=Bun.resolveSync(q,X)}catch{H=qq(q,X)}if(!H)throw Error(`could not resolve ${q} (Bun.resolveSync + exports fallback both failed)`);W=H}}catch(H){return console.warn(`[stx:vendor-css] could not resolve ${JSON.stringify(q)} (from ${Z.filePath||"<unknown>"}): ${H?.message||H}`),G.push(q),""}if(Y.has(W))return"";Y.add(W);try{let H=f2.readFileSync(W,"utf8");Q.push({source:q,resolvedPath:W,contents:H})}catch(H){console.warn(`[stx:vendor-css] could not read ${W}: ${H?.message||H}`),G.push(q)}return""}),styles:Q,unresolved:G}}function Wq($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function q$($){if($.length===0)return"";return`${$.map((Z)=>{return`<style data-stx-vendor="${Wq(Z.source)}" data-stx-layer="vendor">
|
|
3661
3661
|
@layer vendor {
|
|
3662
3662
|
${Z.contents}
|
|
3663
3663
|
}
|
|
3664
3664
|
</style>`}).join(`
|
|
3665
3665
|
`)}
|
|
3666
|
-
`}var
|
|
3666
|
+
`}var Hq=v2;function $2($){let Z=H0($),J=new Set;for(let z of $.matchAll(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"][^'"]+['"]\s*;?\s*$/gm))for(let K of z[1].split(",")){let q=K.trim().split(/\s+as\s+/).pop()?.replace(/^type\s+/,"").trim();if(q)J.add(q)}let X=new Set;for(let z of Z.matchAll(/\b(?:const|let|var|function|class)\s+([A-Za-z_$][\w$]*)/g))X.add(z[1]);for(let z of Z.matchAll(/\b(?:const|let|var)\s*\{([^}]*)\}/g))for(let K of z[1].split(",")){let q=K.trim().split(/[:=]/).pop()?.trim();if(q)X.add(q)}let Y=b1.filter((z)=>{if(J.has(z)||X.has(z))return!1;return YJ(Z,z,!0)}),Q=JJ(Z).filter((z)=>!J.has(z)&&!X.has(z));if(Y.length===0&&Q.length===0)return{code:$,imports:Y,models:Q};return{code:`${[Y.length>0?`import { ${Y.join(", ")} } from '@stacksjs/browser'`:"",Q.length>0?"import '@stacksjs/browser'":"",Q.length>0?`const { ${Q.join(", ")} } = window.StacksBrowser || {}`:""].filter(Boolean).join(`
|
|
3667
3667
|
`)}
|
|
3668
|
-
${$}`,imports:Y,models:Q}}var
|
|
3668
|
+
${$}`,imports:Y,models:Q}}var Uq=new Set(["Promise","Object","Array","Map","Set","Date","Error","JSON","Math","Number","String","RegExp","Symbol","WeakMap","WeakSet","Proxy","Reflect","Intl","URL","URLSearchParams","FormData","Headers","Request","Response","AbortController","EventTarget","Element","Document","Node","Window","Console","Storage","Navigator","Blob","File","FileReader","HTMLElement","SVGElement","Event","CustomEvent","DOMParser","XMLSerializer","WebSocket","Worker","SharedWorker","IntersectionObserver","MutationObserver","ResizeObserver","PerformanceObserver","Notification","Bun","Buffer","Process","Modal","Intl"]);function JJ($){let Z=new Set,J=/\b([A-Z][a-zA-Z0-9]*)\s*\.\s*(all|find|first|get|where|orderBy|orderByDesc|limit|select|pluck|create|update|delete)\s*\(/g,X;while((X=J.exec($))!==null)if(!Uq.has(X[1]))Z.add(X[1]);return Array.from(Z)}function jq($){let Z=new Set;for(let J of $.matchAll(/\b(?:const|let|var|function|class)\s+([A-Za-z_$][\w$]*)/g))Z.add(J[1]);for(let J of $.matchAll(/\b(?:const|let|var)\s*\{([^}]*)\}/g))for(let X of J[1].split(",")){let Y=X.trim().split(/[:=]/).pop()?.trim();if(Y&&/^[A-Za-z_$][\w$]*$/.test(Y))Z.add(Y)}return Z}function XJ($){let Z=new Set,J=new Set,X=$;X=X.replace(/^[ \t]*import\s+type\s+\{[^}]*\}\s+from\s+['"][^'"]+['"][ \t]*;?[ \t]*$/gm,"// [type import stripped]");let Y=new Set,Q=/^[ \t]*import\s+(?:type\s+)?{\s*([^}]+)\s*}\s+from\s+['"](@stacksjs\/browser|@stacksjs\/stx|stx)['"][ \t]*;?[ \t]*$/gm,G;while((G=Q.exec($))!==null){let H=G[1],U=G[2];if(G[0].includes("import type"))continue;let j=[];for(let V of H.split(",")){let _=V.trim();if(!_||_.startsWith("type "))continue;let O=_.match(/^([A-Za-z_$][\w$]*)(?:\s+as\s+([A-Za-z_$][\w$]*))?$/);if(!O)continue;let F=O[1],L=O[2]||F;if(Y.add(F),Y.add(L),U==="stx"||U==="@stacksjs/stx")Z.add(F);else J.add(F);if(L!==F)j.push(`${L} = ${F}`)}let B=j.length>0?`var ${j.join(", ")}; /* [auto-import processed] */`:"// [auto-import processed]";X=X.replace(G[0],B)}let z=jq(X);for(let H of Hq){if(Y.has(H)||z.has(H))continue;if(new RegExp(`\\b${H}\\s*(?:<[^>]*>)?\\s*\\(`,"g").test(X))Z.add(H)}let K=H0(X),q=new Set;for(let H of X.matchAll(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"][^'"]+['"]\s*;?\s*$/gm))for(let U of H[1].split(",")){let j=U.trim().replace(/^type\s+/,"").split(/\s+as\s+/);for(let B of j){let V=B.trim();if(V)q.add(V)}}for(let H of b1){if(Y.has(H)||z.has(H)||q.has(H))continue;if(YJ(K,H))J.add(H)}let W=JJ(X);for(let H of W)if(!Y.has(H)&&!z.has(H))J.add(H);return{code:X,stxImports:Array.from(Z),browserImports:Array.from(J)}}function YJ($,Z,J=!1){let X=new RegExp(`\\b${Z.replace(/[$]/g,"\\$")}\\b`,"g");for(let Y of $.matchAll(X)){let Q=Y.index??0,G=Q+Z.length,z=Q-1;while(z>=0&&/\s/.test($[z]))z--;if($[z]==="."&&$.slice(Math.max(0,z-2),z+1)!=="...")continue;let K=G;while(K<$.length&&/\s/.test($[K]))K++;if($[K]===":"&&$[K+1]!==":"&&($[z]==="{"||$[z]===","))continue;if(J&&!/^\s*(?:<[^>]*>)?\s*\(/.test($.slice(G)))continue;return!0}return!1}function QJ($,Z){let J=[];if($.length>0)J.push(` var { ${$.join(", ")} } = window.stx || window;`);if(Z.length>0)J.push(` var { ${Z.join(", ")} } = window.StacksBrowser || {};`);if(J.length>0)return` // STX: auto-imported from stx and @stacksjs/browser
|
|
3669
3669
|
${J.join(`
|
|
3670
3670
|
`)}
|
|
3671
|
-
${
|
|
3671
|
+
${Bq($,Z)}`;return""}function GF($,Z=[]){let{browserImports:J}=XJ($),X=new Set(Z);return QJ([],J.filter((Y)=>!X.has(Y)))}function Bq($,Z){let J=[...$.map((X)=>`['${X}', typeof ${X}, 'stx']`),...Z.map((X)=>`['${X}', typeof ${X}, '@stacksjs/browser']`)];if(J.length===0)return"";return` // STX: report auto-imports the client runtime did not provide
|
|
3672
3672
|
[${J.join(", ")}].forEach(function (e) {
|
|
3673
3673
|
if (e[1] !== 'undefined') return;
|
|
3674
3674
|
console.error(
|
|
@@ -3677,12 +3677,12 @@ ${Xq($,Z)}`;return""}function o_($,Z=[]){let{browserImports:J}=oZ($),X=new Set(Z
|
|
|
3677
3677
|
+ 'or it should be imported from a relative path so the bundler includes it.'
|
|
3678
3678
|
);
|
|
3679
3679
|
});
|
|
3680
|
-
`}function v9($){let Z=$.__stxClientPayload;if(Z&&typeof Z==="object"){let X={};for(let Y in Z){let Q=Z[Y];if(typeof Q==="function")continue;X[Y]=Q}return X.__stxDeclaredPayload=!0,X}let J={};for(let X in $){if(X.startsWith("__")||X.startsWith("$"))continue;let Y=$[X];if(typeof Y==="function")continue;J[X]=Y}return J}function
|
|
3680
|
+
`}function v9($){let Z=$.__stxClientPayload;if(Z&&typeof Z==="object"){let X={};for(let Y in Z){let Q=Z[Y];if(typeof Q==="function")continue;X[Y]=Q}return X.__stxDeclaredPayload=!0,X}let J={};for(let X in $){if(X.startsWith("__")||X.startsWith("$"))continue;let Y=$[X];if(typeof Y==="function")continue;J[X]=Y}return J}function aZ($,Z){let J=new Set;for(let X of $.split(",")){let Y=X.trim().replace(/^\.\.\./,"").trim();if(!Y)continue;if(Z){let Q=Y.lastIndexOf(":");if(Q!==-1)Y=Y.slice(Q+1).trim()}if(Y=Y.split("=")[0].trim(),/^[A-Za-z_$][\w$]*$/.test(Y))J.add(Y)}return J}function Vq($,Z){let J=H0($),{depths:X,balanced:Y}=ZJ(J),Q=(z)=>!Y||X[z]===0,G=new RegExp(`(?:^|[^\\w$.])((?:const|let|var|function|class)\\s+${Z}\\b)`,"g");for(let z of J.matchAll(G)){let K=(z.index??0)+z[0].length-z[1].length;if(Q(K))return!0}for(let z of J.matchAll(/(?:const|let|var)\s*\{([^}]*)\}/g))if(Q(z.index??0)&&aZ(z[1],!0).has(Z))return!0;for(let z of J.matchAll(/(?:const|let|var)\s*\[([^\]]*)\]/g))if(Q(z.index??0)&&aZ(z[1],!1).has(Z))return!0;return!1}function Lq($,Z){return new RegExp(`(?<![.#\\w$])${Z}(?![\\w$])`).test($)}var Oq=/token|secret|passw|apikey|api_key|privatekey|private_key|credential|webhook|bearer|jwt|signature/i,tZ=new Set;function _q($,Z){let J=Oq.test($),X=Z.length>32768;if(!J&&!X)return;if(tZ.has($))return;if(tZ.add($),J)console.warn(`[stx] server\u2192client bridge is publishing "${$}" into the page body. If it holds a credential, rename it with a "__" prefix (never bridged) and pass only what the template needs. See stacksjs/stx#1831.`);if(X)console.warn(`[stx] server\u2192client bridge is publishing ${(Z.length/1024).toFixed(1)}KB under "${$}". Every byte ships in the HTML on each request; prefix the binding with "__" and project just the fields the client reads.`)}function d3($,Z){if(!Z)return"";let J=H0($),X=Z.__stxDeclaredPayload===!0,Y=[];for(let[Q,G]of Object.entries(Z)){if(!/^[A-Za-z_$][\w$]*$/.test(Q))continue;if(Q.startsWith("__")||Q.startsWith("$"))continue;if(!X&&!Lq(J,Q))continue;if(Vq($,Q)){if(X)console.warn(`[stx] defineClientPayload declares "${Q}", but this client block also declares "${Q}" at the top level, so the server value is not published (emitting it would be a duplicate binding). Rename the local, or drop "${Q}" from defineClientPayload.`);continue}let z;try{z=JSON.stringify(G)}catch{continue}if(z===void 0)continue;_q(Q,z),Y.push(` var ${Q} = ${z.replace(/</g,"\\u003c")};`)}if(Y.length===0)return"";return` // stx: server -> client data bridge (seeded from server scope)
|
|
3681
3681
|
${Y.join(`
|
|
3682
3682
|
`)}
|
|
3683
|
-
`}var
|
|
3683
|
+
`}var Fq={left:0,middle:1,right:2};function wq($){let Z=[];if($.self)Z.push("if ($event.target !== $el) return");for(let J of $.systemKeys)Z.push(`if (!$event.${J}Key) return`);if($.keys.length>0){let J=$.keys.map((X)=>`$event.key === '${X}'`).join(" || ");Z.push(`if (!(${J})) return`)}if($.mouse!==null){let J=Fq[$.mouse];Z.push(`if ($event.button !== ${J}) return`)}if($.prevent)Z.push("$event.preventDefault()");if($.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function Rq($,Z){let{elementId:J,event:X,modifiers:Y}=$,Q=a9($.handler),G=wq(Y),z=[];if(Y.once)z.push("once: true");if(Y.capture)z.push("capture: true");if(r9(X,Y))z.push("passive: true");let K=z.length>0?`, { ${z.join(", ")} }`:"",q="";if(G)q+=`${G}; `;let W=Q.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),H=`var $emit = function(name, detail) {
|
|
3684
3684
|
$el.dispatchEvent(new CustomEvent(name, { detail: detail, bubbles: true, cancelable: true }))
|
|
3685
|
-
};`;function
|
|
3685
|
+
};`;function U(j){if(/\$emit\s*\(/.test(j))return`${H}
|
|
3686
3686
|
${j}`;return`var scope = $el.closest('[data-stx-scope]');
|
|
3687
3687
|
if (scope && scope.__stx_execute) {
|
|
3688
3688
|
scope.__stx_execute('${W}', $event, $el);
|
|
@@ -3696,7 +3696,7 @@ else {
|
|
|
3696
3696
|
var __timer
|
|
3697
3697
|
$el.addEventListener('${X}', function($event) {
|
|
3698
3698
|
${G?G+"; ":""}clearTimeout(__timer)
|
|
3699
|
-
__timer = setTimeout(function() { ${
|
|
3699
|
+
__timer = setTimeout(function() { ${U(Q)} }, ${Y.debounce})
|
|
3700
3700
|
}${K})
|
|
3701
3701
|
})()`;if(Y.throttle!==null)return` ;(function() {
|
|
3702
3702
|
// eslint-disable-next-line pickier/no-unused-vars
|
|
@@ -3707,12 +3707,12 @@ else {
|
|
|
3707
3707
|
${G?G+"; ":""}var __now = Date.now()
|
|
3708
3708
|
if (__now - __last >= ${Y.throttle}) {
|
|
3709
3709
|
__last = __now
|
|
3710
|
-
${
|
|
3710
|
+
${U(Q)}
|
|
3711
3711
|
}
|
|
3712
3712
|
}${K})
|
|
3713
3713
|
})()`;if(/\$emit\s*\(/.test(Q))return` var $el = document.getElementById('${J}')
|
|
3714
3714
|
if ($el) $el.addEventListener('${X}', function($event) {
|
|
3715
|
-
${q}${
|
|
3715
|
+
${q}${H}
|
|
3716
3716
|
${Q}
|
|
3717
3717
|
}${K})`;return` var $el = document.getElementById('${J}')
|
|
3718
3718
|
if ($el) $el.addEventListener('${X}', function($event) {
|
|
@@ -3723,23 +3723,23 @@ else {
|
|
|
3723
3723
|
else {
|
|
3724
3724
|
${Q}
|
|
3725
3725
|
}
|
|
3726
|
-
}${K})`}function
|
|
3726
|
+
}${K})`}function Nq($){if($.length===0)return"";return`
|
|
3727
3727
|
// STX: auto-generated event bindings
|
|
3728
|
-
${$.map((J,X)=>
|
|
3729
|
-
`)}`}function
|
|
3730
|
-
`)G++;continue}if(z==="/"&&X[G+1]==="*"){G+=2;while(G<Q-1&&!(X[G]==="*"&&X[G+1]==="/"))G++;G+=2;continue}if(z==="{"){Y++,G++;continue}if(z==="}"){Y--,G++;continue}if(Y===0){let K=X.slice(G),q=K.match(/^(?:const|let|var)\s+([a-zA-Z_$]\w*)\s*(?::[^=]*)?=/);if(q){let
|
|
3731
|
-
${
|
|
3732
|
-
${
|
|
3733
|
-
</script>`}let V
|
|
3728
|
+
${$.map((J,X)=>Rq(J,X)).join(`
|
|
3729
|
+
`)}`}function eZ($){let Z=[],J=new Set,X=$.replace(/^\s*import\s+.*$/gm,""),Y=0,Q=X.length,G=0;while(G<Q){let z=X[G];if(z==="'"||z==='"'||z==="`"){let K=z;if(G++,K==="`"){let q=0;while(G<Q){if(X[G]==="\\"){G+=2;continue}if(X[G]==="`"&&q===0){G++;break}if(X[G]==="$"&&X[G+1]==="{"){q++,G+=2;continue}if(X[G]==="}"&&q>0){q--,G++;continue}G++}}else while(G<Q){if(X[G]==="\\"){G+=2;continue}if(X[G]===K){G++;break}G++}continue}if(z==="/"&&X[G+1]==="/"){while(G<Q&&X[G]!==`
|
|
3730
|
+
`)G++;continue}if(z==="/"&&X[G+1]==="*"){G+=2;while(G<Q-1&&!(X[G]==="*"&&X[G+1]==="/"))G++;G+=2;continue}if(z==="{"){Y++,G++;continue}if(z==="}"){Y--,G++;continue}if(Y===0){let K=X.slice(G),q=K.match(/^(?:const|let|var)\s+([a-zA-Z_$]\w*)\s*(?::[^=]*)?=/);if(q){let U=q[1];if(!U.startsWith("_")&&!J.has(U))Z.push(U),J.add(U);G+=q[0].length;continue}let W=K.match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(W){W[1].split(",").forEach((U)=>{let j=U.trim(),B=j.indexOf(":"),V=B>=0?j.slice(B+1).trim().split(/[\s=]/)[0]:j.split(/[\s=]/)[0];if(V&&!V.startsWith("_")&&!J.has(V))Z.push(V),J.add(V)}),G+=W[0].length;continue}let H=K.match(/^(?:async\s+)?function\s+([a-zA-Z_$]\w*)/);if(H){let U=H[1];if(!U.startsWith("_")&&!J.has(U))Z.push(U),J.add(U);G+=H[0].length;continue}}G++}return Z}var Dq=new Set(["if","else","true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","switch","case","break","continue","for","while","do","try","catch","finally","const","let","var","function","class","import","export","default","async","await","yield","with","debugger","console","window","document","Math","JSON","Date","Array","Object","String","Number","Boolean","Symbol","Map","Set","Promise","Error","parseInt","parseFloat","isNaN","isFinite","encodeURIComponent","decodeURIComponent","setTimeout","setInterval","clearTimeout","clearInterval","fetch","alert","confirm","prompt","event"]);function Mq($){let Z=new Set,J=/[a-zA-Z_$][a-zA-Z0-9_$]*/g;function X(U){let j;while((j=J.exec(U))!==null){let B=j[0];if(!Dq.has(B))Z.add(B)}}let Y=/\{\{([\s\S]*?)\}\}/g,Q;while((Q=Y.exec($))!==null)X(Q[1]);let G=/:[a-z][\w.-]*\s*=\s*"([^"]*)"/gi;while((Q=G.exec($))!==null)X(Q[1]);let z=/:[a-z][\w.-]*\s*=\s*'([^']*)'/gi;while((Q=z.exec($))!==null)X(Q[1]);let K=/@[a-z]+(?:\.[a-z]+)*\s*=\s*"([^"]*)"/gi;while((Q=K.exec($))!==null)X(Q[1]);let q=/@[a-z]+(?:\.[a-z]+)*\s*=\s*'([^']*)'/gi;while((Q=q.exec($))!==null)X(Q[1]);let W=/@model\s*=\s*["']([^"']*)["']/gi;while((Q=W.exec($))!==null)X(Q[1]);let H=/@for\s*=\s*["'][^"']*\bin\s+([^"']+)["']/gi;while((Q=H.exec($))!==null)X(Q[1]);return Z}async function x9($,Z={}){let J=$,X="",Y=!1,Q=[],G=K$(J,{filePath:Z.filePath,projectRoot:Z.projectRoot});J=G.code;let z=q$(G.styles),K=$2(J);J=K.code,Q=[...K.imports,...K.models];let{hasUserImports:q,bundleClientScript:W}=await s("stx/client-script-bundler",()=>import("./chunk-7g5vk4c3.js"));if(q(J))J=await W(J,Z.filePath||"",{projectRoot:Z.projectRoot,minify:Z.production}),Y=!0;if(Z.autoImports!==!1){let L=XJ(J);J=L.code,X=QJ(L.stxImports,L.browserImports.filter((w)=>!Q.includes(w)))}if(X=`${d3(J,Z.serverData)}${X}`,J=a0(J),!Y&&I1(Z.attrs||""))J=T1(J);let H=Nq(Z.eventBindings||[]),U=(Z.attrs||"").trim(),j=/\btype\s*=\s*["']module["']/i.test(U),B=Z.instanceId?` data-stx-instance="${Z.instanceId}"`:"";if(j){let L=U.replace(/\btype\s*=\s*["']module["']/i,"").trim(),w=`type="module" data-stx-scoped${B}${L?` ${L}`:""}`;return`${z}<script ${w}>
|
|
3731
|
+
${e1(`${X}${J}
|
|
3732
|
+
${H}`)}
|
|
3733
|
+
</script>`}let V=$J($),_=/function __stx_setup_/.test(J),O=/\bstx\.mount\s*\(|\bstx\.mountEl\s*\(/.test($);function F(L){let w=L.length>0?`
|
|
3734
3734
|
return { ${L.join(", ")} };`:"";return`${z}<script data-stx-scoped data-stx-run="always"${B}>
|
|
3735
3735
|
window.stx.mount(function() {
|
|
3736
3736
|
'use strict';
|
|
3737
|
-
${
|
|
3738
|
-
${
|
|
3739
|
-
})</script>`}if(!O&&!_){if(V)return F(
|
|
3737
|
+
${e1(`${X}${J}
|
|
3738
|
+
${H}${w}`)}
|
|
3739
|
+
})</script>`}if(!O&&!_){if(V)return F(eZ($));if(Z.templateContent){let L=eZ($);if(L.length>0){let w=Mq(Z.templateContent);if(L.some((R)=>w.has(R)))return F(L)}}}return`${z}<script data-stx-scoped data-stx-run="always"${B}>
|
|
3740
3740
|
;(function() {
|
|
3741
3741
|
'use strict';
|
|
3742
|
-
${
|
|
3743
|
-
${
|
|
3742
|
+
${e1(`${X}${J}
|
|
3743
|
+
${H}`)}
|
|
3744
3744
|
})()</script>`}
|
|
3745
|
-
export{
|
|
3745
|
+
export{nJ as ul,sJ as vl,oJ as wl,o0 as xl,q5 as yl,W5 as zl,H5 as Al,U5 as Bl,Z7 as Cl,$7 as Dl,XX as El,QX as Fl,zX as Gl,UW as Hl,jW as Il,BW as Jl,VW as Kl,LW as Ll,pJ as Ml,r$ as Nl,a$ as Ol,t$ as Pl,e$ as Ql,WW as Rl,H7 as Sl,j2 as Tl,KJ as Ul,r9 as Vl,a9 as Wl,t9 as Xl,jJ as Yl,_$ as Zl,Iq as _l,b1 as $l,Z2 as am,VL as bm,K$ as cm,q$ as dm,Hq as em,$2 as fm,XJ as gm,YJ as hm,QJ as im,GF as jm,v9 as km,d3 as lm,x9 as mm,bq as nm,p2 as om,yq as pm,Cq as qm,Sq as rm,Pq as sm,s2 as tm,AJ as um,sq as vm,IJ as wm,oq as xm,TJ as ym,i2 as zm,Y5 as Am,Q5 as Bm,X1 as Cm,G5 as Dm,EJ as Em,rq as Fm,V1 as Gm,bJ as Hm,aq as Im,C0 as Jm,tq as Km,JW as Lm,gJ as Mm,hJ as Nm,n$ as Om,s$ as Pm,o$ as Qm,KW as Rm,J7 as Sm,B5 as Tm,H2 as Um,o2 as Vm,wW as Wm,j5 as Xm,WX as Ym,HX as Zm,UX as _m,RW as $m,Y7 as an,Q7 as bn,z1 as cn,K1 as dn,_1 as en,s7 as fn,_2 as gn,z9 as hn,P5 as in,FY as jn,RY as kn,a7 as ln,DY as mn,MY as nn,e7 as on,F1 as pn,BU as qn,$4 as rn,d5 as sn,EY as tn,m5 as un,bY as vn,yY as wn,VU as xn,LU as yn,Z4 as zn,J4 as An,X4 as Bn,CY as Cn,SY as Dn,OU as En,_U as Fn,PY as Gn,FU as Hn,wU as In,K4 as Jn,U4 as Kn,p5 as Ln,CU as Mn,R2 as Nn,i5 as On,n5 as Pn,SU as Qn,aY as Rn,PU as Sn,tY as Tn,V4 as Un,vU as Vn,eY as Wn,xU as Xn,fU as Yn,q9 as Zn,$3 as _n,Yj as $n,Qj as ao,Gj as bo,zj as co,RQ as do,i4 as eo,T2 as fo,yQ as go,O3 as ho,r6 as io,gV as jo,Z8 as ko,iG as lo,UL as mo,aG as no,B8 as oo,l3 as po,V8 as qo,O8 as ro,c3 as so,jz as to,Bz as uo,_8 as vo,q8 as wo,Vz as xo,Oz as yo,C3 as zo,h6 as Ao,u6 as Bo,SZ as Co,TK as Do,kK as Eo,EK as Fo,bK as Go,yK as Ho,CK as Io,PZ as Jo,xK as Ko,uK as Lo,mK as Mo,j6 as No,M3 as Oo,V6 as Po,gB as Qo,hB as Ro,Y6 as So,uB as To,w3 as Uo,R3 as Vo,N3 as Wo,F6 as Xo,w6 as Yo,R6 as Zo,qV as _o,WV as $o,D6 as ap,HV as bp,KG as cp,A6 as dp,E6 as ep,E3 as fp,MG as gp,b3 as hp,P6 as ip,v6 as jp,SG as kp,RV as lp,NV as mp,x6 as np,DV as op,MV as pp,y3 as qp,l6 as rp,E9 as sp,b9 as tp,t1 as up,xG as vp,p6 as wp,i6 as xp,EV as yp,v3 as zp,fG as Ap,gG as Bp,x3 as Cp,f3 as Dp,n6 as Ep,s6 as Fp,p3 as Gp,i3 as Hp,o3 as Ip,t3 as Jp,YZ as Kp,J_ as Lp,X_ as Mp,oz as Np,S1 as Op,ZK as Pp,Y_ as Qp,Q_ as Rp,HZ as Sp,G_ as Tp,z_ as Up,VK as Vp,wK as Wp,RK as Xp,NK as Yp,DK as Zp,cK as _p,I1 as $p,Y$ as aq,T1 as bq,aK as cq,F9 as dq,tK as eq,eK as fq,Zq as gq,A1 as hq,t as iq,$9 as jq,rZ as kq,_0 as lq,l_ as mq,c_ as nq,U7 as oq,j7 as pq,L1 as qq,B7 as rq,x1 as sq,V7 as tq,B2 as uq,PW as vq,IX as wq,L5 as xq,vW as yq,O5 as zq,xW as Aq,fW as Bq,Q1 as Cq,gW as Dq,hW as Eq,uW as Fq,mW as Gq,dW as Hq,lW as Iq,TX as Jq,F5 as Kq,L7 as Lq,pW as Mq,iW as Nq,nW as Oq,sW as Pq,oW as Qq,_7 as Rq,rW as Sq,F7 as Tq,aW as Uq,tW as Vq,V2 as Wq,SX as Xq,JH as Yq,vX as Zq,A7 as _q,e2 as $q,KH as ar,C7 as br,I5 as cr,_H as dr,k5 as er,aX as fr,ZY as gr,FH as hr,wH as ir,RH as jr,NH as kr,DH as lr,MH as mr,JY as nr,XY as or,P7 as pr,E5 as qr,zY as rr,y5 as sr,i7 as tr,mH as ur,dH as vr,S5 as wr,jY as xr,n7 as yr};
|