@stacksjs/stx 0.2.375 → 0.2.377
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/chunk-054eyrwg.js +2 -0
- package/dist/chunk-0gbbfr5v.js +2 -0
- package/dist/{chunk-60cttsne.js → chunk-0vgw4496.js} +310 -310
- package/dist/{chunk-7rwmnwc3.js → chunk-0xh7vqce.js} +2 -2
- package/dist/{chunk-k11mck47.js → chunk-1n3syq26.js} +1 -1
- package/dist/chunk-2e0fg0jk.js +2 -0
- package/dist/{chunk-zxptxz2b.js → chunk-2sa8rk32.js} +1 -1
- package/dist/{chunk-w1asc0zd.js → chunk-2zbmyvqc.js} +1 -1
- package/dist/chunk-3eq3h4cm.js +2 -0
- package/dist/{chunk-0w12p79j.js → chunk-3jm88rme.js} +1 -1
- package/dist/{chunk-pz7jrd7e.js → chunk-41hqk2fp.js} +1 -1
- package/dist/{chunk-2xpdcr8c.js → chunk-49trnqad.js} +1 -1
- package/dist/chunk-4r1safma.js +2 -0
- package/dist/{chunk-nak6z2rd.js → chunk-4v4xer9k.js} +2 -2
- package/dist/chunk-4vg0zgas.js +2 -0
- package/dist/{chunk-xkcz6hd9.js → chunk-4znpx8a5.js} +1 -1
- package/dist/{chunk-kaf0x9rk.js → chunk-68vgysme.js} +1 -1
- package/dist/{chunk-r55bx7r8.js → chunk-6pywgdcs.js} +1 -1
- package/dist/{chunk-rz8atgv8.js → chunk-74efeytn.js} +1 -1
- package/dist/{chunk-7d2az9wf.js → chunk-75d91rgh.js} +1 -1
- package/dist/{chunk-vsqz8wre.js → chunk-8dqjqnes.js} +10 -10
- package/dist/{chunk-m8nmsr4g.js → chunk-8h4het40.js} +1 -1
- package/dist/{chunk-890ykrtx.js → chunk-8ys85nkt.js} +2 -2
- package/dist/{chunk-5fzgdrfy.js → chunk-a6a1b4yj.js} +1 -1
- package/dist/{chunk-p41s1y4v.js → chunk-a96rnwf0.js} +1 -1
- package/dist/chunk-ab52p413.js +2 -0
- package/dist/{chunk-c7wxj426.js → chunk-abp8t91q.js} +2 -2
- package/dist/{chunk-vybqgjxd.js → chunk-aj6dbp5y.js} +1 -1
- package/dist/chunk-akvf7pgp.js +2 -0
- package/dist/{chunk-karkhcja.js → chunk-an1vn2mr.js} +1 -1
- package/dist/chunk-at4s8qvj.js +2 -0
- package/dist/{chunk-vj5ywxmb.js → chunk-b3rqr465.js} +1 -1
- package/dist/{chunk-xnbbnbtm.js → chunk-bt3nnbkm.js} +1 -1
- package/dist/{chunk-v90kxg77.js → chunk-c0vjhzjf.js} +1 -1
- package/dist/{chunk-135mme4g.js → chunk-cbj5a2tk.js} +1 -1
- package/dist/{chunk-jc6wrxrh.js → chunk-cf7qz2yz.js} +2 -2
- package/dist/{chunk-zxf0deg6.js → chunk-cjqqh2cn.js} +1 -1
- package/dist/chunk-cqs0hfrw.js +2 -0
- package/dist/{chunk-7wj5je2t.js → chunk-cypwvwpa.js} +1 -1
- package/dist/{chunk-kh2v2xqp.js → chunk-dahpshkz.js} +2 -2
- package/dist/{chunk-e7eka8f0.js → chunk-dnctgb5m.js} +1 -1
- package/dist/{chunk-sxzdtsqe.js → chunk-ds9hax17.js} +3 -3
- package/dist/{chunk-mzrejx5e.js → chunk-dv2x6xxs.js} +1 -1
- package/dist/chunk-dvd2c0ab.js +2 -0
- package/dist/{chunk-ypm408ak.js → chunk-e4jsntps.js} +1 -1
- package/dist/{chunk-5j3v0p6s.js → chunk-eewneg7t.js} +1 -1
- package/dist/chunk-ewr4ym70.js +2 -0
- package/dist/{chunk-hkq7d4t2.js → chunk-f95kp2ch.js} +1 -1
- package/dist/{chunk-zfysz73j.js → chunk-gagw5rvw.js} +1 -1
- package/dist/{chunk-p75e8vf3.js → chunk-ghn6rvgw.js} +1 -1
- package/dist/{chunk-p0pp4mx1.js → chunk-h0k7xkah.js} +2 -2
- package/dist/{chunk-x0c5vqss.js → chunk-h2dpcnhr.js} +1 -1
- package/dist/{chunk-pt74619a.js → chunk-ha15g06r.js} +1 -1
- package/dist/{chunk-xb2fcf36.js → chunk-hfqycvep.js} +1 -1
- package/dist/{chunk-vcdd231w.js → chunk-ht2496q5.js} +1 -1
- package/dist/chunk-jehmjxnq.js +2 -0
- package/dist/{chunk-xk402w4a.js → chunk-k6bagvmz.js} +1 -1
- package/dist/{chunk-n1wxgmf5.js → chunk-kb6h4vf7.js} +2 -2
- package/dist/{chunk-198fr2d4.js → chunk-km3e88cy.js} +1 -1
- package/dist/{chunk-ypgyhr2p.js → chunk-m2c9847h.js} +1 -1
- package/dist/{chunk-84577w4y.js → chunk-m7zebyq5.js} +1 -1
- package/dist/chunk-mrxrz9b1.js +2 -0
- package/dist/{chunk-a5cybvfv.js → chunk-ms3xppjb.js} +1 -1
- package/dist/{chunk-m8kem5ca.js → chunk-myyj9qp3.js} +1 -1
- package/dist/{chunk-skqqb8s4.js → chunk-n0qssshb.js} +1 -1
- package/dist/{chunk-ct8tvahc.js → chunk-n7m0zs73.js} +1 -1
- package/dist/{chunk-enjfp0tp.js → chunk-nvksp2ws.js} +1 -1
- package/dist/{chunk-55k6352k.js → chunk-pecjvzrk.js} +1 -1
- package/dist/chunk-pvptmxgd.js +2 -0
- package/dist/{chunk-175da6nh.js → chunk-qg9rm36c.js} +1 -1
- package/dist/{chunk-g8k2zj4z.js → chunk-qsrmt975.js} +1 -1
- package/dist/chunk-qweye95d.js +2 -0
- package/dist/chunk-rc3d4yyy.js +2 -0
- package/dist/chunk-rfq5h4zn.js +2 -0
- package/dist/{chunk-4a93q5s6.js → chunk-rft4sz7t.js} +1 -1
- package/dist/chunk-ryc446j9.js +2 -0
- package/dist/{chunk-ta6z7k4p.js → chunk-s3tpyage.js} +1 -1
- package/dist/chunk-s54sn5xa.js +2 -0
- package/dist/{chunk-met6wtbk.js → chunk-s7nd2979.js} +2 -2
- package/dist/chunk-s9j8pgz8.js +2 -0
- package/dist/{chunk-5fws3j14.js → chunk-sc5kdhc5.js} +1 -1
- package/dist/{chunk-kd95t585.js → chunk-sjpjge04.js} +1 -1
- package/dist/chunk-skpj0796.js +2 -0
- package/dist/chunk-sqj228wh.js +2 -0
- package/dist/{chunk-89xwdc1d.js → chunk-tatyh40f.js} +1 -1
- package/dist/{chunk-vgx5077x.js → chunk-tm8v7xc0.js} +2 -2
- package/dist/chunk-tmcnptq6.js +2 -0
- package/dist/{chunk-v1k2a5rq.js → chunk-tnv2bhye.js} +1 -1
- package/dist/{chunk-1c2k7713.js → chunk-tpqyvmqd.js} +1 -1
- package/dist/{chunk-2c907a77.js → chunk-ttfx0b5m.js} +1 -1
- package/dist/chunk-v48ngnf4.js +2 -0
- package/dist/{chunk-zf66zyyy.js → chunk-v6ebzqkd.js} +1 -1
- package/dist/chunk-vak9j9cc.js +2 -0
- package/dist/{chunk-83af26bs.js → chunk-vd9ss2dm.js} +1 -1
- package/dist/{chunk-4arms0am.js → chunk-vjn3r3sq.js} +1 -1
- package/dist/chunk-vsvjw3bp.js +2 -0
- package/dist/{chunk-h2xrx8dp.js → chunk-vvzw2vyk.js} +1 -1
- package/dist/{chunk-xb23pzwa.js → chunk-w3xwpe5f.js} +1 -1
- package/dist/chunk-w499e1n1.js +2 -0
- package/dist/{chunk-0dkaztpp.js → chunk-wcn0v9az.js} +1 -1
- package/dist/{chunk-vsqx756d.js → chunk-wqa77pdn.js} +1 -1
- package/dist/chunk-ws7dy2jt.js +2 -0
- package/dist/chunk-x2r3gjtw.js +2 -0
- package/dist/{chunk-y062nrhj.js → chunk-x3e2wvk5.js} +1 -1
- package/dist/{chunk-dnard9gp.js → chunk-x5bsgr9k.js} +2 -2
- package/dist/{chunk-7racewc5.js → chunk-x8t29tnr.js} +1 -1
- package/dist/chunk-x8vhy875.js +2 -0
- package/dist/{chunk-dwyad9gb.js → chunk-xpc8ygpz.js} +1 -1
- package/dist/{chunk-zd172hvg.js → chunk-y2s9c0f0.js} +1 -1
- package/dist/{chunk-jg47xsh5.js → chunk-yfqxzkex.js} +1 -1
- package/dist/{chunk-d5r2cqkg.js → chunk-ykyecpyx.js} +1 -1
- package/dist/{chunk-pf8575bx.js → chunk-yv4d9nzf.js} +1 -1
- package/dist/{chunk-f42xqr15.js → chunk-ywcx2q3t.js} +1 -1
- package/dist/{chunk-2tbxmf8q.js → chunk-zw91ws20.js} +1 -1
- 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 +16 -0
- package/dist/expressions.js +41 -0
- package/dist/pwa.js +2 -2
- package/dist/ssg.js +2 -2
- package/dist/visual-testing.js +1 -1
- package/package.json +5 -5
- package/dist/chunk-2gw7rgbd.js +0 -2
- package/dist/chunk-2kabn4gx.js +0 -2
- package/dist/chunk-49k7jgtd.js +0 -2
- package/dist/chunk-4gpbttfy.js +0 -2
- package/dist/chunk-5bcjbtzv.js +0 -2
- package/dist/chunk-71gg4a7z.js +0 -2
- package/dist/chunk-7shj7qhy.js +0 -2
- package/dist/chunk-85hnnapk.js +0 -2
- package/dist/chunk-8ee37nzy.js +0 -2
- package/dist/chunk-93z5qt1s.js +0 -2
- package/dist/chunk-bqm306xw.js +0 -2
- package/dist/chunk-cn04s9jy.js +0 -2
- package/dist/chunk-dn3f4vha.js +0 -2
- package/dist/chunk-erbyg322.js +0 -2
- package/dist/chunk-fq6x61z6.js +0 -2
- package/dist/chunk-fw8jzvjq.js +0 -2
- package/dist/chunk-gzr4mcp2.js +0 -2
- package/dist/chunk-mze9423y.js +0 -2
- package/dist/chunk-njqp8xdd.js +0 -2
- package/dist/chunk-qca0yw23.js +0 -2
- package/dist/chunk-qnh4my5d.js +0 -2
- package/dist/chunk-qwbrahwb.js +0 -2
- package/dist/chunk-ryv2ase3.js +0 -2
- package/dist/chunk-sd57d9bq.js +0 -2
- package/dist/chunk-syxe0cyd.js +0 -2
- package/dist/chunk-tk9acsdg.js +0 -2
- package/dist/chunk-wkrbkr05.js +0 -2
- package/dist/chunk-xagg1b4c.js +0 -2
- package/dist/chunk-xq8dj9br.js +0 -2
- package/dist/chunk-yhfej8dy.js +0 -2
- package/dist/chunk-zmssgked.js +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{Zr as o8,bs as r8,ls as c4,ms as p4}from"./chunk-cf7qz2yz.js";import{rs as Q0,ss as K2}from"./chunk-c0vjhzjf.js";import{us as o4,vs as r4,ws as H9,xs as U9}from"./chunk-vjn3r3sq.js";import{Ds as z9}from"./chunk-cbj5a2tk.js";import{Is as r1,Js as R1,Ks as e8,Ls as b1,Ns as U1,Os as YJ,Ps as QJ,Qs as H2,Rs as J9,Ss as y9,Ts as f2,Us as C8,Vs as _8,Ws as V1,Xs as x0,Ys as j2,at as $Z,bt as c9,ot as ZZ}from"./chunk-ds9hax17.js";import{pt as i4,rt as n4,st as s4,ut as w2}from"./chunk-2zbmyvqc.js";import{Bt as C7,Ct as S7,wt as k7,xt as E7,yt as y7}from"./chunk-sjpjge04.js";import{Ht as p9}from"./chunk-kb6h4vf7.js";import{Jt as hZ,Kt as uZ,Lt as mZ,Mt as dZ,Nt as lZ,Pt as t8}from"./chunk-k6bagvmz.js";import{Qt as YZ,Rt as QZ,St as GZ,Tt as zZ,Ut as a4,Vt as t4}from"./chunk-x5bsgr9k.js";import{au as u5,bu as N0,du as m5,eu as B7,gu as V7,nu as JZ,ru as cZ,tu as pZ}from"./chunk-tm8v7xc0.js";import{Ju as R0,Lu as C2,Mu as d3,Nu as S2,Uu as g2,Xu as i8,Zu as D0,bv as h2,cv as n8,ev as s0,fv as s8,mv as l3,nv as _6,pv as X0,qv as B0,rv as d0,sv as E9,tv as z2,uv as U0,vv as b9}from"./chunk-s7nd2979.js";import{wv as e0}from"./chunk-s3tpyage.js";import{zv as XZ}from"./chunk-2sa8rk32.js";import{Av as c3,Bv as Q2,Cv as XJ,Dv as o1,Hv as HJ,Iv as D3,Jv as F8,Lv as t7,Ov as G6}from"./chunk-x8t29tnr.js";import{Dw as a8,Fw as lz,Gw as w5,Jw as L2,cw as l$,fw as J8,mw as y$}from"./chunk-0xh7vqce.js";import{Ow as e4}from"./chunk-wqa77pdn.js";import{Tw as x}from"./chunk-myyj9qp3.js";import S1 from"path";import c2 from"fs";var FJ=new Set(["touchstart","touchmove","wheel","mousewheel"]);function J5($,Z){if(Z.passive)return!0;if(Z.prevent||Z.nonpassive)return!1;return FJ.has($.toLowerCase())}var F3=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"]),_3={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"},_J=new Set(["ctrl","alt","shift","meta"]),N3={left:0,middle:1,right:2};function w3($){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(_J.has(X))Z.systemKeys.push(X);else if(X in N3)Z.mouse=X;else if(X in _3||/^[a-z]$/.test(X))Z.keys.push(_3[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 M3($,Z=""){let J=[],X=0,Y=/<([a-z][a-z0-9-]*)\s+([^>]*@[a-z][^>]*)>/gi,Q;while((Q=Y.exec($))!==null){let[G,z,K]=Q,q=Q.index,W=q+G.length,H=`__stx_evt_${Z}${X++}`,U=[],j=/@([a-z][a-z0-9.]*)\s*=\s*"([^"]*)"/gi,B;while((B=j.exec(K))!==null){let[,F,O]=B,_=F.split("."),L=_[0];if(!F3.has(L))continue;U.push({attribute:`@${F}`,event:L,handler:O,modifiers:w3(_.slice(1)),elementId:H})}let V=/@([a-z][a-z0-9.]*)\s*=\s*'([^']*)'/gi;while((B=V.exec(K))!==null){let[,F,O]=B,_=F.split("."),L=_[0];if(!F3.has(L))continue;U.push({attribute:`@${F}`,event:L,handler:O,modifiers:w3(_.slice(1)),elementId:H})}if(U.length>0)J.push({originalTag:G,elementId:H,events:U,startIndex:q,endIndex:W})}return J}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=N3[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 RJ($,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 X5($){let Z=$.trim();if(!/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(Z))return $;return`if (typeof ${Z} === 'function' && !${Z}._isSignal) ${Z}($event);`}function DJ($){let{modifiers:Z}=$,J=$.elementId.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),X=wJ($),Y=RJ(X5($.handler),Z),Q=[];if(Z.once)Q.push("once: true");if(Z.capture)Q.push("capture: true");if(J5($.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;
|
|
@@ -111,17 +111,17 @@ else {
|
|
|
111
111
|
${$.map(DJ).join(`
|
|
112
112
|
`)}
|
|
113
113
|
})();
|
|
114
|
-
</script>`}function NJ($,Z=""){let J=M3($,Z);if(J.length===0)return{template:$,bindings:[]};let X=$,Y=[];for(let Q=J.length-1;Q>=0;Q--){let G=J[Q],z=G.originalTag;if(!z.includes(" id="))z=z.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${G.elementId}"`);else{let K=z.match(/id=["']([^"']+)["']/);if(K)for(let q of G.events)q.elementId=K[1]}for(let K of G.events){let q=K.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),
|
|
115
|
-
`+Y.slice(G);else Y+=Q;return Y}function
|
|
114
|
+
</script>`}function NJ($,Z=""){let J=M3($,Z);if(J.length===0)return{template:$,bindings:[]};let X=$,Y=[];for(let Q=J.length-1;Q>=0;Q--){let G=J[Q],z=G.originalTag;if(!z.includes(" id="))z=z.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${G.elementId}"`);else{let K=z.match(/id=["']([^"']+)["']/);if(K)for(let q of G.events)q.elementId=K[1]}for(let K of G.events){let q=K.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),W=new RegExp(`\\s*${q}\\s*=\\s*"[^"]*"`,"g"),H=new RegExp(`\\s*${q}\\s*=\\s*'[^']*'`,"g");z=z.replace(W,""),z=z.replace(H,"")}X=X.slice(0,G.startIndex)+z+X.slice(G.endIndex),Y.push(...G.events)}return{template:X,bindings:Y}}function R3($){let Z=$.$uid;return typeof Z==="string"&&Z?`${Z}_`:""}function A3($,Z,J){if(D3($))return $;if(Z.__stx_sfc_mode){if(/x-data\s*=\s*["']/.test($))return $;let{template:z,bindings:K}=NJ($,R3(Z)),q=Z.__stx_event_bindings||[];return Z.__stx_event_bindings=[...q,...K],z}let X=M3($,R3(Z));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=Y5(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 gq($){return/@[a-z]+(?:\.[a-z]+)*\s*=\s*["'][^"']*["']/i.test($)}function I3($,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 r2($,Z){let J=Q0($),{depths:X,balanced:Y}=K2(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)&&I3(z[1],!0).has(Z))return!0;for(let z of J.matchAll(/(?:const|let|var)\s*\[([^\]]*)\]/g))if(Q(z.index??0)&&I3(z[1],!1).has(Z))return!0;return!1}import GJ from"fs";import g from"path";import{createHash as MJ}from"crypto";var a2="__stx_component_client_factories";function t2($){let Z=$[a2];return Z instanceof Map?Z:null}function k3($){$[a2]=new Map}function Q5($,Z){let J=t2($);if(!J)return null;let X=MJ("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 E3($,Z){let J=t2(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 T3($,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(([H
|
|
119
|
-
catch (e) { console.error('[stx] component factory ' + ${JSON.stringify(
|
|
118
|
+
${Q.map(([W,H])=>` try { factories[${JSON.stringify(W)}] = factories[${JSON.stringify(W)}] || ${H.body}; }
|
|
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
|
-
`}),T3($,Y)}function T3($,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 b3($){let Z=t2($),J=new Map;if(Z)for(let[X,Y]of Z)J.set(X,Y.instances);return J}function y3($,Z){let J=t2($);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 C3($,Z){for(let{body:J,count:X}of Z)for(let Y=0;Y<X;Y++)Q5($,J)}import x3 from"fs";var S3=0,e2=new Map;function dq(){S3=0,e2.clear()}function $9($,Z){let J=S3++,X=`<!--__STX_${$.toUpperCase()}_${J}__-->`;return e2.set(X,{type:$,expression:Z}),X}function lq(){let $={};for(let[Z,J]of e2)$[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=e2.get(Y);Z[Y]={type:Q,expression:G?.expression||""}}return Z}function pq($,Z){let J=$;for(let[X,Y]of Z)J=J.split(X).join(Y);return J}function iq($){return $.includes("<!--__STX_")}var AJ=/@(?=[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 IJ($){return Array.from({length:$},()=>"{").join("⁠")}function P3($){return $.replace(/\{{2,}/g,(Z)=>IJ(Z.length)).replace(/\{(?=!)/g,"{⁠").replace(AJ,"@")}var TJ=/^(?:javascript|vbscript|livescript|mocha|view-source):/,kJ=/^data:(?:text\/html|text\/xml|application\/xhtml\+xml|application\/xml|image\/svg\+xml)/,EJ=/^data:(?:text\/html|application\/xhtml\+xml)/,bJ=new RegExp("[\\u0000-\\u0020\\u00A0\\u1680\\u2000-\\u200F\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]+","g");function yJ($){return $.replace(bJ,"").toLowerCase()}function CJ($){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 v3($,Z="navigable"){let J=yJ($);if(TJ.test(J))return!0;return Z==="navigable"?kJ.test(J):EJ.test(J)}function q2($,Z="navigable"){return v3($,Z)?"unsafe:"+$:$}function SJ($){let Z=$.match(/(?:^|[\s"'`/])([A-Za-z][\w:-]*)\s*=\s*(["'])([^"']*)$/);if(!Z)return null;if(Z[3].trim()!=="")return null;return CJ(Z[1])}function G5($,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=SJ($);return X&&v3(Z,X)?"unsafe:"+J:J}var U2={},f3=new Map;function PJ($){let Z=f3.get($);if(!Z){let J=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${J}(?!\\w)`,"g"),f3.set($,Z)}return Z.lastIndex=0,Z}var X9={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 W5(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(PJ(K),String(q))}),z},t:($,Z,J={})=>{return X9.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 vJ($,Z){if($ in X9)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);U2[$]=Z}function GW($){for(let[Z,J]of Object.entries($))vJ(Z,J)}function xJ(){return{...X9,...U2}}function zW(){for(let $ of Object.keys(U2))delete U2[$]}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 Z9($,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 q5($){return $.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function W5($){return P3(q5($))}function X1($,Z){let{scripts:J}=x0($);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 g3($,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 H=X[q];if(!Q&&H==="`"){Q=!0,G=0;continue}if(Q){if(H==="`"&&G===0){Q=!1;continue}if(H==="$"&&X[q+1]==="{"){G++,q++,Y+=" ";continue}if(H==="}"&&G>0){G--;continue}if(G>0){Y+=H;continue}continue}Y+=H}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 gJ($,Z){let J=Z.__stx_serverDeclared;if(!J||J.size===0)return!1;let X=z0($);for(let Y of J)if(new RegExp(`(?<![.#\\w$])${Y}(?![\\w$])`).test(X))return!0;return!1}var h3=new Set;function u3($){return/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)*$/.test($.trim())}function m3($,Z){let J=`${Z??"<unknown>"}\x00${$}`;if(process.env.STX_DEBUG||!h3.has(J))h3.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 H5($,Z,J){let X=$;return X=X.replace(/\{!!([\s\S]*?)!!\}/g,(Y,Q)=>{try{let G=C0(Q,Z);if(G===void 0)return u3(Q)?m3(Q.trim(),J):Y;return G===null?"":String(G)}catch{return Y}}),X=Z9(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 u3(z)?m3(z,J):Y;return JSON.stringify(K).replace(/</g,"\\u003c")}catch{return Y}}),X}function hJ($,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=Z9(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(G5(J,Q),K,W5(K))}catch{return X}}),J}function KW($,Z,J={}){let{output:X,scripts:Y}=x0($),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 H=z[1],W=z[2];if(/\bdata-raw\b/.test(H))return G;if(J.skipServer&&/\bserver\b/.test(H))return G;let j=`<script${hJ(H,Z)}>`;if(/\bsrc\s*=/.test(H)||/\btype\s*=\s*["']application\/json["']/.test(H))return j+W+G.slice(q);return j+H5(W,Z)+G.slice(q)});return j2(X,Q)}function L1($,Z,J){let X=$,Y=(W,U)=>{let j=J9(W,U);if(j===-1)return-1;return/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/.test(W.slice(U,j))?-1:j},Q=(W,U,j,B)=>{let V=j.length,{output:F,tokens:O}=V1(W,U,(_,L)=>B(V+L));return j.push(...O),F},G=[];X=Q(X,Y,G,(W)=>`<!--__STX_STYLE_${W}__-->`);let z=[];X=Q(X,H2,z,(W)=>`<!--__STX_SCRIPT_EXPR_${W}__-->`);let K=Z?.__stx_signals_gate===!0||X1($),q=new Set(Array.isArray(Z?.__stx_client_signal_names)?Z.__stx_client_signal_names:[]),H=new Set(Array.isArray(Z?.__stx_preserved_client_expressions)?Z.__stx_preserved_client_expressions:[]);if(X=Z9(X,(W,U,j)=>{try{let B=C0(U,Z,!1,(V)=>K5(V,W,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: {{{ ${U.trim()}}}}: ${V}`,J,$,j,W)}},3),X=X.replace(/\{!!([\s\S]*?)!!\}/g,(W,U,j)=>{try{let B=C0(U,Z,!1,(V)=>K5(V,W,J,$));if(B===void 0&&Z.__stx_buildMode==="compile")return $9("raw",U.trim());return B!==void 0&&B!==null?String(B):""}catch(B){if(Z.__stx_buildMode==="compile")return $9("raw",U.trim());let V=B instanceof Error?B.message:String(B);return O0("Expression",`Error evaluating: {!! ${U.trim()} !!}: ${V}`,J,$,j,W)}}),X=Q(X,H2,z,(W)=>`<!--__STX_SCRIPT_EXPR_${W}__-->`),X=Q(X,Y,G,(W)=>`<!--__STX_STYLE_${W}__-->`),X=Z9(X,(W,U,j)=>{let B=U.trim();if(H.has(B))return W;let V=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined"],F=/^([a-zA-Z_$][a-zA-Z0-9_$]*)/,_=B.match(F)?.[1],L=_&&((_ in Z)||V.includes(_)),w=Boolean(_&&q.has(_)),D=/^([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/,R=B.match(D),M=R&&!V.includes(R[1])&&!(R[1]in Z);if(/^__[A-Z_]+__$/.test(B))return"";let T;try{let N=C0(U,Z,!1,(E)=>{T=E});if(w)return W;if(K&&!g3(B,Z))return W;if(T)K5(T,W,J,$);if(Z.__stx_buildMode==="compile"&&!K&&(N===void 0||gJ(B,Z)))return $9("expr",B);if(N===void 0||N===null)return"";let I=String(N);return z5(G5(X,j),I,W5(I))}catch(N){if(w)return W;if(K&&!g3(B,Z))return W;if(M)return W;let I=N instanceof Error?N.message:String(N);return O0("Expression",`Error evaluating: {{ ${B} }}: ${I}`,J,$,j,W)}}),z.length>0)X=X.replace(/<!--__STX_SCRIPT_EXPR_(\d+)__-->/g,(W,U)=>z[Number(U)]??W);if(G.length>0)X=X.replace(/<!--__STX_STYLE_(\d+)__-->/g,(W,U)=>G[Number(U)]??W);return X}function uJ($,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=U2[G]||X9[G];if(!z)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(xJ()).join(", ")}`);let K=[];if(Y.startsWith(":")){let q=Y.match(/^:([^|\s]+)/);if(q){let H=q[1].trim();try{let W=Number(H);K=[Number.isNaN(W)?H:W]}catch{K=[H]}Y=Y.substring(q[0].length).trim()}}else if(Y.startsWith("(")){let q=1,H=1;while(q>0&&H<Y.length){if(Y[H]==="(")q++;if(Y[H]===")")q--;H++}if(q===0){let W=Y.substring(1,H-1).trim();if(W)try{if(W.startsWith("{")&&W.endsWith("}"))K=[C0(`(${W})`,J,!0)];else{let U=[],j="",B=null,V=0,F=0,O=0,_=!1;for(let L=0;L<W.length;L++){let w=W[L];if(_){j+=w,_=!1;continue}if(w==="\\"){j+=w,_=!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==="[")F++;else if(w==="]")F--;else if(w==="{")O++;else if(w==="}")O--;if(w===","&&V===0&&F===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=[W]}Y=Y.substring(H).trim()}}try{X=z(X,J,...K)}catch(q){let H=q instanceof Error?q.message:String(q);throw Error(`Error applying filter '${G}': ${H}`)}if(Y.startsWith("|"))Y=Y.substring(1).trim();else break}return X}function mJ($){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 H=1;z+=2;while(z<$.length&&H>0){if($[z]==="{")H++;else if($[z]==="}")H--;if(H>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 W2=new Set,dJ=1000;function qW(){W2.clear()}function K5($,Z,J,X){if(!d3())return;let Y=`${J}\x00${$.expression}`;if(W2.has(Y))return;if(W2.size>=dJ)W2.clear();W2.add(Y);let Q=J,G=X;try{if(J&&x3.existsSync(J))G=x3.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=
|
|
123
|
+
`}),T3($,Y)}function T3($,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 y3($){let Z=t2($),J=new Map;if(Z)for(let[X,Y]of Z)J.set(X,Y.instances);return J}function b3($,Z){let J=t2($);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 C3($,Z){for(let{body:J,count:X}of Z)for(let Y=0;Y<X;Y++)Q5($,J)}import x3 from"fs";var S3=0,e2=new Map;function cq(){S3=0,e2.clear()}function $9($,Z){let J=S3++,X=`<!--__STX_${$.toUpperCase()}_${J}__-->`;return e2.set(X,{type:$,expression:Z}),X}function pq(){let $={};for(let[Z,J]of e2)$[Z]={type:J.type,expression:J.expression};return $}function iq($){let Z={},J=/<!--__STX_(EXPR|COND|RAW)_(\d+)__-->/g,X;while((X=J.exec($))!==null){let Y=X[0],Q=X[1].toLowerCase(),G=e2.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 sq($){return $.includes("<!--__STX_")}var AJ=/@(?=[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 IJ($){return Array.from({length:$},()=>"{").join("⁠")}function P3($){return $.replace(/\{{2,}/g,(Z)=>IJ(Z.length)).replace(/\{(?=!)/g,"{⁠").replace(AJ,"@")}var TJ=/^(?:javascript|vbscript|livescript|mocha|view-source):/,kJ=/^data:(?:text\/html|text\/xml|application\/xhtml\+xml|application\/xml|image\/svg\+xml)/,EJ=/^data:(?:text\/html|application\/xhtml\+xml)/,yJ=new RegExp("[\\u0000-\\u0020\\u00A0\\u1680\\u2000-\\u200F\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]+","g");function bJ($){return $.replace(yJ,"").toLowerCase()}function CJ($){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 v3($,Z="navigable"){let J=bJ($);if(TJ.test(J))return!0;return Z==="navigable"?kJ.test(J):EJ.test(J)}function q2($,Z="navigable"){return v3($,Z)?"unsafe:"+$:$}function SJ($){let Z=$.match(/(?:^|[\s"'`/])([A-Za-z][\w:-]*)\s*=\s*(["'])([^"']*)$/);if(!Z)return null;if(Z[3].trim()!=="")return null;return CJ(Z[1])}function G5($,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=SJ($);return X&&v3(Z,X)?"unsafe:"+J:J}var U2={},f3=new Map;function PJ($){let Z=f3.get($);if(!Z){let J=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${J}(?!\\w)`,"g"),f3.set($,Z)}return Z.lastIndex=0,Z}var X9={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 W5(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(PJ(K),String(q))}),z},t:($,Z,J={})=>{return X9.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 vJ($,Z){if($ in X9)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);U2[$]=Z}function KW($){for(let[Z,J]of Object.entries($))vJ(Z,J)}function xJ(){return{...X9,...U2}}function qW(){for(let $ of Object.keys(U2))delete U2[$]}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 Z9($,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 q5($){return $.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function W5($){return P3(q5($))}function X1($,Z){let{scripts:J}=x0($);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 gJ($){let Z=[],J=/<([a-zA-Z][\w-]*)\b[^>]*?\s(?::for|x-for|@for)\s*=\s*(["'])([\s\S]*?)\2[^>]*>/g;for(let X=J.exec($);X;X=J.exec($)){let Y=X[1].toLowerCase(),Q=/^\s*\(?\s*([A-Za-z_$][\w$]*)\s*(?:,\s*([A-Za-z_$][\w$]*)\s*)?\)?\s+(?:in|of)\s/.exec(X[3]);if(!Q)continue;let G=new Set([Q[1],...Q[2]?[Q[2]]:[]]),z=X.index+X[0].length;if(X[0].endsWith("/>")){Z.push({start:X.index,end:z,names:G});continue}let K=new RegExp(`<(/?)${Y}\\b[^>]*?(/?)>`,"gi");K.lastIndex=z;let q=1,W=$.length;for(let H=K.exec($);H;H=K.exec($)){if(H[2]==="/")continue;if(q+=H[1]==="/"?-1:1,q===0){W=H.index+H[0].length;break}}Z.push({start:X.index,end:W,names:G})}return Z}function hJ($,Z,J){let X=Q0(J);for(let Y of $){if(Z<Y.start||Z>=Y.end)continue;for(let Q of Y.names)if(new RegExp(`(?<![.#\\w$])${Q.replace(/\$/g,"\\$")}(?![\\w$])`).test(X))return!0}return!1}function g3($,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 uJ($,Z){let J=Z.__stx_serverDeclared;if(!J||J.size===0)return!1;let X=Q0($);for(let Y of J)if(new RegExp(`(?<![.#\\w$])${Y}(?![\\w$])`).test(X))return!0;return!1}var h3=new Set;function u3($){return/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)*$/.test($.trim())}function m3($,Z){let J=`${Z??"<unknown>"}\x00${$}`;if(process.env.STX_DEBUG||!h3.has(J))h3.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 H5($,Z,J){let X=$;return X=X.replace(/\{!!([\s\S]*?)!!\}/g,(Y,Q)=>{try{let G=C0(Q,Z);if(G===void 0)return u3(Q)?m3(Q.trim(),J):Y;return G===null?"":String(G)}catch{return Y}}),X=Z9(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 u3(z)?m3(z,J):Y;return JSON.stringify(K).replace(/</g,"\\u003c")}catch{return Y}}),X}function mJ($,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=Z9(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(G5(J,Q),K,W5(K))}catch{return X}}),J}function WW($,Z,J={}){let{output:X,scripts:Y}=x0($),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${mJ(W,Z)}>`;if(/\bsrc\s*=/.test(W)||/\btype\s*=\s*["']application\/json["']/.test(W))return j+H+G.slice(q);return j+H5(H,Z)+G.slice(q)});return j2(X,Q)}function L1($,Z,J){let X=$,Y=(U,j)=>{let B=J9(U,j);if(B===-1)return-1;return/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/.test(U.slice(j,B))?-1:B},Q=(U,j,B,V)=>{let F=B.length,{output:O,tokens:_}=V1(U,j,(L,w)=>V(F+w));return B.push(..._),O},G=[];X=Q(X,Y,G,(U)=>`<!--__STX_STYLE_${U}__-->`);let z=[];X=Q(X,H2,z,(U)=>`<!--__STX_SCRIPT_EXPR_${U}__-->`);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:[]);X=Z9(X,(U,j,B)=>{try{let V=C0(j,Z,!1,(F)=>K5(F,U,J,$));return V!==void 0&&V!==null?String(V):""}catch(V){let F=V instanceof Error?V.message:String(V);return O0("Expression",`Error evaluating: {{{ ${j.trim()}}}}: ${F}`,J,$,B,U)}},3),X=X.replace(/\{!!([\s\S]*?)!!\}/g,(U,j,B)=>{try{let V=C0(j,Z,!1,(F)=>K5(F,U,J,$));if(V===void 0&&Z.__stx_buildMode==="compile")return $9("raw",j.trim());return V!==void 0&&V!==null?String(V):""}catch(V){if(Z.__stx_buildMode==="compile")return $9("raw",j.trim());let F=V instanceof Error?V.message:String(V);return O0("Expression",`Error evaluating: {!! ${j.trim()} !!}: ${F}`,J,$,B,U)}}),X=Q(X,H2,z,(U)=>`<!--__STX_SCRIPT_EXPR_${U}__-->`),X=Q(X,Y,G,(U)=>`<!--__STX_STYLE_${U}__-->`);let H=K?gJ(X):[];if(X=Z9(X,(U,j,B)=>{let V=j.trim();if(H.length>0&&hJ(H,B,V))return U;if(W.has(V))return U;let F=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined"],O=/^([a-zA-Z_$][a-zA-Z0-9_$]*)/,L=V.match(O)?.[1],w=L&&((L in Z)||F.includes(L)),R=Boolean(L&&q.has(L)),D=/^([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/,N=V.match(D),T=N&&!F.includes(N[1])&&!(N[1]in Z);if(/^__[A-Z_]+__$/.test(V))return"";let M;try{let I=C0(j,Z,!1,(A)=>{M=A});if(R)return U;if(K&&!g3(V,Z))return U;if(M)K5(M,U,J,$);if(Z.__stx_buildMode==="compile"&&!K&&(I===void 0||uJ(V,Z)))return $9("expr",V);if(I===void 0||I===null)return"";let k=String(I);return z5(G5(X,B),k,W5(k))}catch(I){if(R)return U;if(K&&!g3(V,Z))return U;if(T)return U;let k=I instanceof Error?I.message:String(I);return O0("Expression",`Error evaluating: {{ ${V} }}: ${k}`,J,$,B,U)}}),z.length>0)X=X.replace(/<!--__STX_SCRIPT_EXPR_(\d+)__-->/g,(U,j)=>z[Number(j)]??U);if(G.length>0)X=X.replace(/<!--__STX_STYLE_(\d+)__-->/g,(U,j)=>G[Number(j)]??U);return X}function dJ($,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=U2[G]||X9[G];if(!z)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(xJ()).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,F=0,O=0,_=!1;for(let L=0;L<H.length;L++){let w=H[L];if(_){j+=w,_=!1;continue}if(w==="\\"){j+=w,_=!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==="[")F++;else if(w==="]")F--;else if(w==="{")O++;else if(w==="}")O--;if(w===","&&V===0&&F===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 lJ($){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 W2=new Set,cJ=1000;function HW(){W2.clear()}function K5($,Z,J,X){if(!d3())return;let Y=`${J}\x00${$.expression}`;if(W2.has(Y))return;if(W2.size>=cJ)W2.clear();W2.add(Y);let Q=J,G=X;try{if(J&&x3.existsSync(J))G=x3.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=lJ(Y);if(Q>0){let z=Y.substring(0,Q).trim(),K=Y.substring(Q+1).trim(),q=C0(z,Z,!0,X);return dJ(q,K,Z)}let G=l3(Y);if(G!==null){X?.({expression:Y,rule:G});return}try{let z=Object.keys(Z),K=Object.values(Z);return U0(Y,z)(...K)}catch{return X0(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=pJ(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 pJ($,Z){let J=null;for(let Y of Z){if(Y===$)continue;let Q=iJ($,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 iJ($,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 UW($){if(!$)return"";return $.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/'/g,"'").replace(/&/g,"&")}import cz from"fs";import b0 from"path";var U5=[{open:/<!--/g,close:/-->/g},{open:/<script\b/gi,close:/<\/script\s*>/gi},{open:/<style\b/gi,close:/<\/style\s*>/gi}],p3=/<body\b([^>]*)>/gi;function i0($){let Z=0,J,X=U5.map(()=>{return});while(Z<$.length){if(J===void 0||J!==null&&J.index<Z)p3.lastIndex=Z,J=p3.exec($);if(!J)return null;let Y=J.index,Q=-1,G=null;for(let K=0;K<U5.length;K++){let q=U5[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 x1($,Z){let J=i0($);if(!J)return $;return $.slice(0,J.index)+Z(J.tag,J.attrs)+$.slice(J.index+J.tag.length)}var i3=/<style\b[^>]*>/iy,n3=/<\/style>/gi,s3=/<script\b[^>]*>/iy,o3=/<template(?=[\s>/])[^>]*>/iy,r3=/<\/template\s*>/iy;function B2($){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}i3.lastIndex=Y;let Q=i3.exec($);if(Q){n3.lastIndex=Y+Q[0].length;let K=n3.exec($);Z=K===null?$.length:K.index+8;continue}o3.lastIndex=Y;let G=o3.exec($);if(G){if(J===0)X=Y;J++,Z=Y+G[0].length;continue}r3.lastIndex=Y;let z=r3.exec($);if(z){if(J>0)J--;Z=Y+z[0].length;continue}if(s3.lastIndex=Y,s3.test($))return J>0?X:Y;Z=Y+1}return-1}var a3=null;function nJ($){if(!a3)return console.warn(`[stx] ${$} must be called within a component setup.`),null;return a3}function LW($){let Z=nJ("onUpdate");if(Z)Z.updateHooks.push($)}function t3(){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 j5($){return Symbol($)}var
|
|
472
|
+
`}function j5($){return Symbol($)}var OW=j5("theme"),FW=j5("router"),_W=j5("i18n");import*as $4 from"crypto";function e3($){let Z=/\$(\w+)\./g,J=[],X;while((X=Z.exec($))!==null)if(!J.includes(X[1]))J.push(X[1]);return J}function sJ(){return`stx-${$4.randomBytes(4).toString("hex")}`}function oJ($){return/\$\w+\./.test($)}function rJ($){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 F of j){let O=F[0],_=F[1],L=F[2];if(oJ(L)){W=!0;let w=L.match(/\{\{\s*([\s\S]+?)\s*\}\}/);if(w){let R=w[1];if(q.push({attr:_,expr:R,fullMatch:O,originalAttr:_}),e3(R).forEach((N)=>J.add(N)),_==="text")H=H.replace(O,"");else if(_==="class")H=H.replace(O,'class=""');else if(_==="disabled"||_==="hidden")H=H.replace(O,"");else H=H.replace(O,`${_}=""`)}}}if(!W)return Q;let B=H.match(/\bid\s*=\s*"([^"]+)"/),V;if(B)V=B[1];else V=sJ(),H=` id="${V}"${H}`;for(let F of q)Z.push({elementId:V,attribute:F.attr,expression:F.expr,stores:e3(F.expr)});return`<${G}${H}${K}`}),{html:Y,bindings:Z,stores:J}}function aJ($,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 Z4($){let{html:Z,bindings:J,stores:X}=
|
|
630
|
+
`,X}function Z4($){let{html:Z,bindings:J,stores:X}=rJ($);if(J.length===0)return $;let Y=aJ(J,X),Q=Z.lastIndexOf("</body>");if(Q!==-1)return Z.slice(0,Q)+Y+Z.slice(Q);return Z+Y}function J4($){let Z=$.analytics;if(!Z?.enabled)return"";switch(Z.driver){case"fathom":return tJ(Z);case"google-analytics":return eJ(Z);case"plausible":return $X(Z);case"self-hosted":return ZX(Z);case"custom":return JX(Z);default:return""}}function tJ($){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="${v0(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="${v0(Z.canonical)}"`);if(Z.auto===!1)Y.push('data-auto="false"');return`
|
|
631
631
|
<!-- Fathom Analytics -->
|
|
632
632
|
<script src="${v0(J)}" ${Y.join(" ")}${X}></script>
|
|
633
|
-
`}function
|
|
633
|
+
`}function eJ($){let Z=$.googleAnalytics;if(!Z?.measurementId)return"";let J=v0(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 $X($){let Z=$.plausible;if(!Z?.domain)return"";let J=Z.scriptUrl||"https://plausible.io/js/script.js",X=[`data-domain="${v0(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
645
|
<script defer data-domain="${v0(Z.domain)}" src="${v0(Y)}"></script>
|
|
646
|
-
`}function
|
|
646
|
+
`}function ZX($){let Z=$.selfHosted;if(!Z?.siteId||!Z?.apiEndpoint)return"";let J=v0(Z.siteId),X=v0(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,7 +676,7 @@ else {
|
|
|
676
676
|
w.stxAnalytics={track:function(n,v){t('event',{name:n,value:v});}};
|
|
677
677
|
})();
|
|
678
678
|
</script>
|
|
679
|
-
`}function
|
|
679
|
+
`}function JX($){let Z=$.custom;if(!Z)return"";if(Z.inlineScript)return`
|
|
680
680
|
<!-- Custom Analytics -->
|
|
681
681
|
<script>
|
|
682
682
|
${Z.inlineScript}
|
|
@@ -684,7 +684,7 @@ ${Z.inlineScript}
|
|
|
684
684
|
`;if(!Z.scriptUrl)return"";let J=[];if(Z.scriptId)J.push(`id="${v0(Z.scriptId)}"`);if(Z.attributes)for(let[Y,Q]of Object.entries(Z.attributes))J.push(`${v0(Y)}="${v0(Q)}"`);return`
|
|
685
685
|
<!-- Custom Analytics -->
|
|
686
686
|
<script${J.length>0?` ${J.join(" ")}`:""} src="${v0(Z.scriptUrl)}" defer></script>
|
|
687
|
-
`}function X4($,Z){let J=J4(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 v0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var
|
|
687
|
+
`}function X4($,Z){let J=J4(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 v0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var DW={name:"analytics",hasEndTag:!1,handler:async($,Z,J,X)=>{let Y=J.__stx_config||{};return J4(Y)}};var XX={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 Y4($){let Z=$.heatmap;if(!Z?.enabled)return"";let J={...XX,...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 Q4($,Z){let J=Y4(Z);if(!J)return $;let X=$.lastIndexOf("</body>");if(X!==-1)return $.slice(0,X)+J+$.slice(X);return $+J}var G4={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=
|
|
1070
|
+
`}function Q4($,Z){let J=Y4(Z);if(!J)return $;let X=$.lastIndexOf("</body>");if(X!==-1)return $.slice(0,X)+J+$.slice(X);return $+J}var G4={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=YX(Z.join(" "));Y.heatmap={...Y.heatmap,...Q,enabled:!0}}return Y4(Y)}};function YX($){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 z4{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 MW(){return new z4}var QX;((G)=>{G.Fade="fade";G.Slide="slide";G.Scale="scale";G.Flip="flip";G.Rotate="rotate";G.Custom="custom"})(QX||={});var GX;((X)=>{X.In="in";X.Out="out";X.Both="both"})(GX||={});var zX;((G)=>{G.Linear="linear";G.Ease="ease";G.EaseIn="ease-in";G.EaseOut="ease-out";G.EaseInOut="ease-in-out";G.Spring="spring"})(zX||={});var a0={duration:300,delay:0,ease:"ease",direction:"both"};function KX($,Z={}){let{duration:J,delay:X,ease:Y,direction:Q,custom:G}={...a0,...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 qX(){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 WX($){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 HX($=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 UX(){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 jX($,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 B5={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)||a0.duration:a0.duration,G=Z.length>2?Z[2]||a0.ease:a0.ease,z=Z.length>3?Number.parseInt(Z[3],10)||a0.delay:a0.delay,K=Z.length>4?Z[4]||a0.direction:a0.direction,q=`stx-transition-${Math.random().toString(36).substr(2,9)}`,
|
|
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"},V5={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)}`,
|
|
1305
|
-
${K}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},O5={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 K4={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
|
|
1303
|
+
`}var B5={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)||a0.duration:a0.duration,G=Z.length>2?Z[2]||a0.ease:a0.ease,z=Z.length>3?Number.parseInt(Z[3],10)||a0.delay:a0.delay,K=Z.length>4?Z[4]||a0.direction:a0.direction,q=`stx-transition-${Math.random().toString(36).substr(2,9)}`,W=KX(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"},V5={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"},L5={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=jX(Y,Q,{staggerDelay:G,sequence:z});return`${$}
|
|
1305
|
+
${K}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},O5={name:"motion",handler:($,Z,J,X)=>{let Y=Z.length>0?Z[0].toLowerCase()==="true":!0,Q=qX();return`<div data-animate="${Y?"auto":"true"}">${$}</div>${Q}`},hasEndTag:!0,description:"Controls motion and animation preferences"};function q4($,Z,J,X){let Y=$;if(X.animation?.enabled===!1)return Y;let Q=J.includes("test")&&J.includes("animation");if(!WX(Y)&&!Q)return Y;if(!Y.includes('<style id="stx-animation-base">')){let z=UX();Y=Y.replace("</head>",`${z}
|
|
1306
|
+
</head>`)}if(Y.includes("stx-observe")){if(!Y.includes("Intersection Observer for scroll animations")){let K=HX(),q=Y.lastIndexOf("</body>");if(q!==-1)Y=Y.slice(0,q)+K+`
|
|
1307
|
+
`+Y.slice(q)}}return Y}var K4={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 BX($,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 VX={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="${
|
|
1317
|
+
`.trim().replace(/\s+/g," ");return`<div id="${W}" style="${H}">${$}</div>`},description:"Applies a keyframe animation to an element"};function LX($,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 OX={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=LX(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>${
|
|
1341
|
+
</style>`}<div id="${K}" class="stx-stagger-container">${$}</div>${W}`},description:"Applies staggered animations to child elements"};function FX($){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 _X={name:"spring",hasEndTag:!0,handler:($,Z,J,X)=>{let Y=Z[0]?.replace(/['"`]/g,"")||"default",Q;if(K4[Y])Q=K4[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=FX(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 IW($){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 TW($,Z,J){let X=BX($,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 kW($){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 EW(){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 yW($){let Z=$.customDirectives||[];return Z.push(B5),Z.push(L5),Z.push(O5),Z.push(V5),Z.push(VX),Z.push(OX),Z.push(_X),{...$,customDirectives:Z}}function W4($){let Z=$.match(/\bdefinePageMeta\s*\(\s*(\{[\s\S]*?\})\s*\)/m);if(!Z)return null;try{return Function(`return ${Z[1]}`)()}catch{return null}}function H4($){let Z=$?.layout;if(Z===!1)return!1;return typeof Z==="string"&&Z.trim()?Z.trim():void 0}var wX=100,RX=599,_5="__stxResponseStatus",V2="__stxResponseHeaders";function Y9($){return typeof $==="number"&&Number.isInteger($)&&$>=wX&&$<=RX}function PW($){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(Y9(X))return X}return}function F5($,Z){if(!$||typeof $!=="object")return!1;let J=typeof Z==="string"&&/^\d+$/.test(Z.trim())?Number(Z.trim()):Z;if(!Y9(J))return!1;return $[_5]=J,!0}function DX($,Z,J){if(!$||typeof $!=="object")return;let X=String(Z??"").trim();if(!X)return;$[V2]={...$[V2],[X]:String(J)}}function NX($){let Z=$?.[_5];return Y9(Z)?Z:void 0}function MX($){let Z=$?.[V2];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 vW($,Z){if(!$||!Z||$===Z||typeof Z!=="object")return;let J=NX($);if(J!==void 0)Z[_5]=J;let X=MX($);if(X)Z[V2]={...Z[V2],...X}}function U4($){return{setResponseStatus:(Z)=>{F5($,Z)},notFound:(Z=404)=>{let J=Y9(Z)&&Z>=400?Z:404;F5($,J)},setResponseHeader:(Z,J)=>{DX($,Z,J)}}}function j4($,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=AX($,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):X0(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(!F5(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 AX($,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 IX=0,TX=0;function B4($,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 kX($){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=B4(G,"x-data");if(!K)continue;let q=`__stx_scope_${IX++}`,W=B4(G,"x-init"),H=EX($,Q,z+Y.length),U=$.slice(z,H.endIndex),j=yX(U);Z.push({id:q,selector:`[data-stx-scope="${q}"]`,stateExpr:K,initExpr:W,bindings:[],refs:j})}return Z}function EX($,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 yX($){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=bX(Q);Z.set(G,z)}return Z}function bX($){let Z=$.match(/\bid\s*=\s*["']([^"']*)["']/);if(Z)return Z[1];return`__stx_el_${TX++}`}function CX(){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 V4($,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
|
|
1672
|
+
`}function V4($,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 SX($,Z){if($.length===0)return"";let J=$.map((X)=>{let Y=JSON.stringify(Object.fromEntries(X.refs)),Q=V4(X.stateExpr,Z),G=X.initExpr?V4(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,12 +1678,12 @@ 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
|
+
${CX()}
|
|
1682
1682
|
${J}
|
|
1683
|
-
</script>`}function L4($,Z,J){if(!
|
|
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(),
|
|
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,(H,
|
|
1683
|
+
</script>`}function L4($,Z,J){if(!vX($))return $;let X=kX($);if(X.length===0)return $;let Y=PX($,X),Q=SX(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 PX($,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 vX($){return/x-data\s*=\s*["']/.test($)}import NY from"fs";import f5 from"path";import{createHighlighter as MY}from"ts-syntax-highlighter";import j9 from"fs";import S0 from"path";import{loadConfigWithResult as LY}from"bunfig";L2();async function xX($,Z,J,X){let Y=Z[0]?.replace(/['"]/g,"")||"main",Q=w5();if(Y!=="main")Q=Q.replace("container:'main'",`container:'${Y}'`);return`<script data-stx-router>${Q}</script>`}var O4={name:"stxRouter",handler:xX,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 F4($){let Z=$.trim().toLowerCase();return!Z.startsWith("javascript:")&&!Z.startsWith("vbscript:")&&!Z.startsWith("data:text/html")}function _4($){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 O2($,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="${F4(U)?Y1(U):""}" alt="${Y1(H)}" />`}),Y=Y.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(W,H,U)=>{return`<a href="${F4(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((F)=>F.trim()).filter(Boolean).map((F)=>`<th>${Y1(F)}</th>`).join("")}</tr>`,V=U.trim().split(`
|
|
1687
1687
|
`).map((F)=>{return`<tr>${F.split("|").map((_)=>_.trim()).filter(Boolean).map((_)=>`<td>${Y1(_)}</td>`).join("")}</tr>`}).join(`
|
|
1688
1688
|
`);return`<table>
|
|
1689
1689
|
<thead>
|
|
@@ -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
|
|
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(
|
|
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
|
|
1703
|
-
`||_==="\r"||_===" "||_===void 0)
|
|
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 w4($,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 F=$.indexOf("@markdown",U),O=$.indexOf("@endmarkdown",U);if(O===-1)break;if(F!==-1&&F<O&&F!==z){let _=$[F+9];if(_==="("||_===`
|
|
1703
|
+
`||_==="\r"||_===" "||_===void 0)H++;U=F+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=O2(q.trim(),U);X=X.split(z).join(j)}catch(H){let U=H instanceof Error?H.message:String(H),j=O0("Markdown Directive",`Error processing markdown: ${U}`,J,$,W,z);X=X.split(z).join(j)}return X}async function R4($,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}),O2($.trim(),Y)}var O1=[320,480,640,768,1024,1280,1536,1920,2560],D4=[1,1.5,2,3],f1=["avif","webp","jpeg"],N4={avif:"image/avif",webp:"image/webp",jpeg:"image/jpeg",png:"image/png",gif:"image/gif"},fX={avif:"avif",webp:"webp",jpeg:"jpg",png:"png",gif:"gif"};function F2($,Z=O1,J={},X){return Z.sort((Y,Q)=>Y-Q).map((Y)=>{return`${Q1($,{...J,w:Y,fm:X})} ${Y}w`}).join(", ")}function sW($,Z=320,J=2560,X=0.08,Y={},Q){let G=gX(Z,J,X);return F2($,G,Y,Q)}function gX($,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 R5($,Z,J=D4,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 oW($,Z,J=D4,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 D5($,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 rW($,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 aW={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 tW($){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 eW($){let{src:Z,widths:J,dprValues:X,fixedWidth:Y,formats:Q=f1,baseUrl:G="",params:z={}}=$,K=[];for(let q of Q){let W,H;if(Y!==void 0&&X)W=R5(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||O1;W=F2(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:N4[q],variants:H})}return K}function $H($,Z="100vw"){return $.map(({srcset:J,mimeType:X})=>`<source type="${X}" srcset="${J}" sizes="${Z}" />`).join(`
|
|
1704
|
+
`)}function ZH($,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 N5($){return N4[$]||"application/octet-stream"}function JH($){return fX[$]||$}function XH($){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 hX={strategy:"thumbhash",width:20,quality:50,blurLevel:40,transitionDuration:300,easing:"ease-out"},M5=`
|
|
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 A5(){try{return await import("ts-images")}catch{return null}}async function M4($,Z={}){let J={...
|
|
1733
|
+
`.trim();async function A5(){try{return await import("ts-images")}catch{return null}}async function M4($,Z={}){let J={...hX,...Z},X=await A5();if(X)try{return await uX($,J,X)}catch(Y){console.warn(`[stx-media] ts-images placeholder generation failed, using fallback: ${Y}`)}return A4($,J)}async function uX($,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 A4($,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 QH($){let Z=await A5();if(Z)try{return(await Z.generateThumbHash($)).dataUrl}catch{}return(await A4($,{strategy:"thumbhash",width:32,height:32})).dataURL}function GH($){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))),F=Math.max(0,Math.min(255,Math.round(J*255))),O=Math.max(0,Math.min(255,Math.round((J-X)*255))),_=`<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32">
|
|
1734
1734
|
<rect fill="rgb(${V},${F},${O})" width="32" height="32"/>
|
|
1735
|
-
</svg>`;return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(_)}`}async function
|
|
1735
|
+
</svg>`;return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(_)}`}async function zH($,Z=20,J=50){return M4($,{strategy:"blur",width:Z,quality:J,blurLevel:40})}async function KH($){let Z=await A5();if(Z)try{return(await Z.generatePlaceholder($,{strategy:"dominant-color"})).dominantColor||"#e5e7eb"}catch{}return"#e5e7eb"}function qH($,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 I4($,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,20 +1749,20 @@ ${V}
|
|
|
1749
1749
|
#${$}.stx-img-loaded img {
|
|
1750
1750
|
opacity: 1;
|
|
1751
1751
|
}
|
|
1752
|
-
`.trim()}function
|
|
1753
|
-
`):void 0,script:e}}async function
|
|
1752
|
+
`.trim()}function WH($){return`background-image: url('${$.dataURL}'); background-size: cover; background-position: center;`}var g1=new Map;async function T4($,Z={}){let J=`${$}:${JSON.stringify(Z)}`;if(g1.has(J))return g1.get(J);let X=await M4($,Z);return g1.set(J,X),X}function HH(){g1.clear()}function UH(){return{size:g1.size,keys:Array.from(g1.keys())}}async function mX(){try{return await import("./chunk-hfqycvep.js")}catch($){if(!k4)console.warn("[stx-media] Image processor not available, some features disabled:",$),k4=!0;return null}}var k4=!1,I5=80,Q9="async",G9="lazy",E4=!1;async function _2($,Z={}){let J=Z,X=$;if(X.process&&!X.skipOptimization){if(J.tsImagesConfig?.enabled&&!J.isDev)return iX(X,J)}if(J.processedResult?.processed)return E5($,J.processedResult,Z);if(J.responsiveVariants)return C4($,J.responsiveVariants,Z);let{src:Y,alt:Q,width:G,height:z,sizes:K,widths:q=O1,dpr:W,formats:H=f1,quality:U=I5,params:j={},placeholder:B="none",placeholderOptions:V={},lazy:F=!0,priority:O=!1,loading:_=O?"eager":G9,decoding:L=Q9,fetchpriority:w,objectFit:R,objectPosition:D,crossorigin:N,referrerpolicy:T}=$,M=$.class,I=$.style,k=$.id,A=$.data||{},{isDev:E=!1,baseUrl:C=""}=Z;if(E&&!Z.optimize)return cX($);let b,y,P=k||`stx-img-${Math.random().toString(36).slice(2,8)}`;if(B!=="none"&&!O)try{b=await T4(Y,{strategy:B,...V}),y=I4(P,b,V)}catch{}let h=W!==void 0&&G!==void 0,p;if(h)p=lX($,P,b,Z);else p=await dX($,P,b,Z);let u;if(O){let Y0=H.includes("webp")?"webp":H[0],i=F2(Y,q,{...j,q:U},Y0),W0=typeof K==="object"?D5(K):K||"100vw";u=`<link rel="preload" as="image" imagesrcset="${i}" imagesizes="${W0}" />`}let r=[];if(!E4&&B!=="none")r.push(M5),E4=!0;if(y)r.push(y);let e=F?b4(P):void 0;return{html:p,preloadLink:u,css:r.length>0?r.join(`
|
|
1753
|
+
`):void 0,script:e}}async function dX($,Z,J,X){let{src:Y,alt:Q,width:G,height:z,sizes:K,widths:q=O1,formats:W=f1,quality:H=I5,params:U={},lazy:j=!0,priority:B=!1,loading:V=B?"eager":G9,decoding:F=Q9,fetchpriority:O,objectFit:_,objectPosition:L,crossorigin:w,referrerpolicy:R}=$,D=$.class,N=$.style,T=$.data||{},M=typeof K==="object"?D5(K):K||"100vw",I=[];for(let E of W){let C=F2(Y,q,{...U,q:H},E),b=N5(E);if(j&&!B)I.push(` <source type="${b}" data-srcset="${C}" data-sizes="${M}" />`);else I.push(` <source type="${b}" srcset="${C}" sizes="${M}" />`)}let k=T5({src:Q1(Y,{...U,q:H}),alt:Q,width:G,height:z,loading:B?void 0:V,decoding:F,fetchpriority:B?"high":O,objectFit:_,objectPosition:L,crossorigin:w,referrerpolicy:R,className:y4(D,J),style:k5(N,_,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
|
`)}
|
|
1757
|
-
<img ${
|
|
1757
|
+
<img ${k} />
|
|
1758
1758
|
</picture>
|
|
1759
1759
|
</div>`}else A=`<picture${Z?` id="${Z}"`:""}>
|
|
1760
1760
|
${I.join(`
|
|
1761
1761
|
`)}
|
|
1762
|
-
<img ${
|
|
1763
|
-
</picture>`;return A}function
|
|
1764
|
-
<img ${
|
|
1765
|
-
</div>`}return`<img ${Z?`id="${Z}" `:""}${
|
|
1762
|
+
<img ${k} />
|
|
1763
|
+
</picture>`;return A}function lX($,Z,J,X){let{src:Y,alt:Q,width:G,height:z,dpr:K=[1,2,3],quality:q=I5,params:W={},lazy:H=!0,priority:U=!1,loading:j=U?"eager":G9,decoding:B=Q9,fetchpriority:V,objectFit:F,objectPosition:O,crossorigin:_,referrerpolicy:L}=$,w=$.class,R=$.style,D=$.data||{},N=typeof G==="number"?G:Number.parseInt(String(G),10),T=R5(Y,N,K,{...W,q}),M=T5({src:Q1(Y,{...W,w:N,q}),alt:Q,width:G,height:z,loading:U?void 0:j,decoding:B,fetchpriority:U?"high":V,objectFit:F,objectPosition:O,crossorigin:_,referrerpolicy:L,className:y4(w,J),style:k5(R,F,O,J),lazy:H&&!U,data:D}),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
|
+
<img ${M} ${I} />
|
|
1765
|
+
</div>`}return`<img ${Z?`id="${Z}" `:""}${M} ${I} />`}function cX($){let{src:Z,alt:J,width:X,height:Y,loading:Q=G9,decoding:G=Q9,fetchpriority:z,objectFit:K,objectPosition:q,crossorigin:W,referrerpolicy:H,priority:U=!1}=$,j=$.class,B=$.style,V=$.id,F=$.data||{};return{html:`<img ${T5({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:k5(B,K,q),id:V,data:F})} />`}}function T5($){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 y4($,Z){let J=[];if($)J.push($);if(Z)J.push("stx-img-blur");return J.join(" ")||""}function k5($,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 b4($){return`
|
|
1766
1766
|
(function() {
|
|
1767
1767
|
const container = document.getElementById('${$}');
|
|
1768
1768
|
if (!container) return;
|
|
@@ -1799,25 +1799,25 @@ ${I.join(`
|
|
|
1799
1799
|
|
|
1800
1800
|
observer.observe(container);
|
|
1801
1801
|
})();
|
|
1802
|
-
`.trim()}function
|
|
1802
|
+
`.trim()}function pX($){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 LH($,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=pX(W);if(H){let U=await _2(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 iX($,Z){let J=await mX();if(!J)return _2({...$,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 C4($,Q,Z)}else{let Q=await J.processImage($.src,$,X);if(Q.processed)return E5($,Q,Z)}return _2({...$,process:!1},Z)}async function E5($,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||{},F=Z.variants||[],O=F.find((y)=>y.format==="jpeg")||F.find((y)=>y.format==="webp")||F[0],_=O?.url||$.src,L=F.filter((y)=>y.format===(O?.format||"jpeg")).map((y)=>`${y.url} ${y.width}w`).join(", "),w=new Map;for(let y of F){if(!w.has(y.format))w.set(y.format,[]);w.get(y.format).push(y)}let R=[],D=["avif","webp","jpeg","png"];for(let y of D){let P=w.get(y);if(P&&P.length>0){let h=P.map((u)=>`${u.url} ${u.width}w`).join(", "),p=N5(y);if(G&&!z)R.push(` <source type="${p}" data-srcset="${h}" />`);else R.push(` <source type="${p}" srcset="${h}" />`)}}let N=[];if(G&&!z){if(N.push(`data-src="${m0(_)}"`),N.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"'),L)N.push(`data-srcset="${L}"`)}else if(N.push(`src="${m0(_)}"`),L)N.push(`srcset="${L}"`);N.push(`alt="${m0(X)}"`);let T=Y||Z.originalWidth,M=Q||Z.originalHeight;if(T)N.push(`width="${T}"`);if(M)N.push(`height="${M}"`);if(!z)N.push(`loading="${G?"lazy":"eager"}"`);if(N.push('decoding="async"'),z)N.push('fetchpriority="high"');if(W)N.push(`crossorigin="${W}"`);if(H)N.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)N.push(`style="${I.join("; ")}"`);let k=[];if(U)k.push(U);if(Z.placeholder)k.push("stx-img-blur");if(k.length>0)N.push(`class="${k.join(" ")}"`);if(G&&!z)N.push("data-stx-lazy");for(let[y,P]of Object.entries(V))N.push(`data-${y}="${m0(P)}"`);let A;if(Z.placeholder||Z.dominantColor&&$.useDominantColor){let y=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="${y}">
|
|
1803
1803
|
<picture>
|
|
1804
|
-
${
|
|
1804
|
+
${R.join(`
|
|
1805
1805
|
`)}
|
|
1806
|
-
<img ${
|
|
1806
|
+
<img ${N.join(" ")} />
|
|
1807
1807
|
</picture>
|
|
1808
1808
|
</div>`}else A=`<picture${B?` id="${B}"`:""}>
|
|
1809
|
-
${
|
|
1809
|
+
${R.join(`
|
|
1810
1810
|
`)}
|
|
1811
|
-
<img ${
|
|
1812
|
-
</picture>`;let
|
|
1813
|
-
`):void 0,script:C}}async function C4($,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 E5($,X,J)}function
|
|
1814
|
-
`+
|
|
1815
|
-
<style>${q.css}</style>`;if(q.script)
|
|
1816
|
-
<script>${q.script}</script>`;return
|
|
1811
|
+
<img ${N.join(" ")} />
|
|
1812
|
+
</picture>`;let E=[];if(Z.placeholder)E.push(M5);let C=G?b4(B):void 0,b;if(z&&L)b=`<link rel="preload" as="image" imagesrcset="${L}" />`;return{html:A,preloadLink:b,css:E.length>0?E.join(`
|
|
1813
|
+
`):void 0,script:C}}async function C4($,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 E5($,X,J)}function nX(){return z9({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}=sX($,Z,J);if(!Y)return console.warn("@img directive: missing src argument"),"<!-- @img: missing src -->";let z={src:Y,alt:Q||"",widths:G.widths||O1,formats:G.formats||f1,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 _2(z,{isDev:K}),W=q.html;if(q.preloadLink)W=q.preloadLink+`
|
|
1814
|
+
`+W;if(q.css)W+=`
|
|
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 sX($,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=oX(X),Q=y5(Y[0],J)||"",G=y5(Y[1],J)||"",z={};if(Y[2]){let K=y5(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 oX($){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 y5($,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 S4=nX();async function v4(){try{return await import("./chunk-bt3nnbkm.js")}catch($){if(!P4)console.warn("[stx-media] Video processor not available, some features disabled:",$),P4=!0;return null}}var P4=!1,x4=!0,f4="metadata",rX="https://cdn.jsdelivr.net/npm/ts-video-player@latest/dist/index.min.js";async function K9($,Z={}){let J=Z,X=$;if(X.process&&!X.skipProcessing){if(J.tsVideosConfig?.enabled&&!J.isDev)return ZY(X,J)}if(J.processedResult?.processed)return h4($,J.processedResult,Z);let Y;if(X.generatePoster&&X.src&&!$.poster)Y=await JY(X,J);let{src:Q,sources:G=[],poster:z,posterPlaceholder:K,controls:q=x4,autoplay:W=!1,muted:H=!1,loop:U=!1,preload:j=f4,playsinline:B=!0,lazy:V=!0,player:F="native",type:O,width:_,height:L,crossorigin:w,disablePictureInPicture:R=!1,disableRemotePlayback:D=!1}=$,N=Y||z,T=$.class,M=$.style,I=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`;if(F==="ts-video")return tX($,Z);if(O&&O!=="video")return aX(Q||"",O,$);let k=G.length>0?G:Q?[{src:Q,type:g4(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(R)A.push("disablepictureinpicture");if(D)A.push("disableremoteplayback");if(w)A.push(`crossorigin="${w}"`);if(V){if(A.push(`data-preload="${j}"`),A.push('preload="none"'),N)A.push(`data-poster="${T0(N)}"`);A.push("data-stx-lazy")}else if(A.push(`preload="${j}"`),N)A.push(`poster="${T0(N)}"`);if(_)A.push(`width="${_}"`);if(L)A.push(`height="${L}"`);if(T)A.push(`class="${T0(T)}"`);if(M)A.push(`style="${T0(M)}"`);let E=k.map((y)=>{return` <source ${V?`data-src="${T0(y.src)}"`:`src="${T0(y.src)}"`} type="${y.type}"${y.media?` media="${y.media}"`:""} />`}).join(`
|
|
1817
1817
|
`),C=`<video ${A.join(" ")}>
|
|
1818
|
-
${
|
|
1818
|
+
${E}
|
|
1819
1819
|
Your browser does not support the video tag.
|
|
1820
|
-
</video>`,
|
|
1820
|
+
</video>`,b;if(V)b=`
|
|
1821
1821
|
(function() {
|
|
1822
1822
|
var video = document.getElementById('${I}');
|
|
1823
1823
|
if (!video) return;
|
|
@@ -1852,16 +1852,16 @@ ${k}
|
|
|
1852
1852
|
|
|
1853
1853
|
observer.observe(video);
|
|
1854
1854
|
})();
|
|
1855
|
-
`.trim();return{html:C,script:
|
|
1856
|
-
<iframe ${
|
|
1857
|
-
</div>`}}function
|
|
1855
|
+
`.trim();return{html:C,script:b}}function aX($,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=eX($),K=q?`https://www.youtube-nocookie.com/embed/${q}`:$;break;case"vimeo":q=$Y($),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="${T0(K)}"`,`width="${X}"`,`height="${Y}"`,'frameborder="0"',"allowfullscreen",'allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"'];if(Q)W.push(`class="${T0(Q)}"`);if(G)W.push(`style="${T0(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
|
+
<iframe ${W.join(" ")} style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>
|
|
1857
|
+
</div>`}}function tX($,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,F=$.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},_=["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="${F}"
|
|
1860
1860
|
class="ts-video-player${B?" "+T0(B):""}"
|
|
1861
1861
|
style="${_}"
|
|
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 @@ ${k}
|
|
|
1891
1891
|
|
|
1892
1892
|
// Load ts-video-player from CDN
|
|
1893
1893
|
var script = document.createElement('script');
|
|
1894
|
-
script.src = '${
|
|
1894
|
+
script.src = '${rX}';
|
|
1895
1895
|
script.onload = initPlayer;
|
|
1896
1896
|
script.onerror = function() {
|
|
1897
1897
|
console.error('[stx] Failed to load ts-video-player');
|
|
@@ -1969,7 +1969,7 @@ else {
|
|
|
1969
1969
|
});
|
|
1970
1970
|
}
|
|
1971
1971
|
})();
|
|
1972
|
-
`.trim(),
|
|
1972
|
+
`.trim(),R=`
|
|
1973
1973
|
.ts-video-player {
|
|
1974
1974
|
position: relative;
|
|
1975
1975
|
background: #000;
|
|
@@ -2021,11 +2021,11 @@ else {
|
|
|
2021
2021
|
.ts-video-player__play-button svg {
|
|
2022
2022
|
margin-left: 4px;
|
|
2023
2023
|
}
|
|
2024
|
-
`.trim();return{html:L,script:w,css:
|
|
2024
|
+
`.trim();return{html:L,script:w,css:R}}function g4($){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 eX($){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 $Y($){let Z=$.match(/vimeo\.com\/(\d+)/);return Z?Z[1]:null}function T0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'")}function DH($,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 ZY($,Z){let J=await v4();if(!J)return K9({...$,process:!1},Z);let X=Z.tsVideosConfig,Y=await J.processVideo($.src,$,X,$.onProcessProgress);if(Y.processed)return h4($,Y,Z);return K9({...$,process:!1},Z)}async function JY($,Z){let J=await v4();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 h4($,Z,J){let{controls:X=x4,autoplay:Y=!1,muted:Q=!1,loop:G=!1,preload:z=f4,playsinline:K=!0,lazy:q=!0,width:W,height:H,crossorigin:U,disablePictureInPicture:j=!1,disableRemotePlayback:B=!1}=$,V=$.class,F=$.style,O=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`,_=$.src,L=g4(_);if(Z.transcoded)_=Z.transcoded.url,L="video/mp4";let w=Z.streaming?.hls||Z.streaming?.dash;if(w){if(Z.streaming?.hls)_=Z.streaming.hls.manifestUrl,L="application/x-mpegURL";else if(Z.streaming?.dash)_=Z.streaming.dash.manifestUrl,L="application/dash+xml"}let R=Z.poster?.url||$.poster,D=[`id="${O}"`];if(X)D.push("controls");if(Y)D.push("autoplay");if(Q)D.push("muted");if(G)D.push("loop");if(K)D.push("playsinline");if(j)D.push("disablepictureinpicture");if(B)D.push("disableremoteplayback");if(U)D.push(`crossorigin="${U}"`);if(q){if(D.push(`data-preload="${z}"`),D.push('preload="none"'),R)D.push(`data-poster="${T0(R)}"`);D.push("data-stx-lazy")}else if(D.push(`preload="${z}"`),R)D.push(`poster="${T0(R)}"`);let N=W||Z.metadata?.width,T=H||Z.metadata?.height;if(N)D.push(`width="${N}"`);if(T)D.push(`height="${T}"`);if(V)D.push(`class="${T0(V)}"`);if(F)D.push(`style="${T0(F)}"`);let I=` <source ${q?`data-src="${T0(_)}"`:`src="${T0(_)}"`} type="${L}" />`,k=`<video ${D.join(" ")}>
|
|
2025
2025
|
${I}
|
|
2026
2026
|
Your browser does not support the video tag.
|
|
2027
|
-
</video>`;if(Z.spriteSheet)
|
|
2028
|
-
${
|
|
2027
|
+
</video>`;if(Z.spriteSheet)k=`<div class="stx-video-wrapper" data-sprite-sheet="${T0(Z.spriteSheet.url)}" data-sprite-cols="${Z.spriteSheet.columns}" data-sprite-interval="${Z.spriteSheet.interval}">
|
|
2028
|
+
${k}
|
|
2029
2029
|
</div>`;let A;if(q)A=`
|
|
2030
2030
|
(function() {
|
|
2031
2031
|
var video = document.getElementById('${O}');
|
|
@@ -2061,7 +2061,7 @@ ${E}
|
|
|
2061
2061
|
|
|
2062
2062
|
observer.observe(video);
|
|
2063
2063
|
})();
|
|
2064
|
-
`.trim();let
|
|
2064
|
+
`.trim();let E;if(w)E=`
|
|
2065
2065
|
.stx-video-wrapper {
|
|
2066
2066
|
position: relative;
|
|
2067
2067
|
width: 100%;
|
|
@@ -2070,9 +2070,9 @@ ${E}
|
|
|
2070
2070
|
width: 100%;
|
|
2071
2071
|
height: auto;
|
|
2072
2072
|
}
|
|
2073
|
-
`.trim();return{html:
|
|
2074
|
-
<style>${q.css}</style>`;if(q.script)
|
|
2075
|
-
<script>${q.script}</script>`;return
|
|
2073
|
+
`.trim();return{html:k,script:A,css:E}}function u4(){return z9({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}=XY($,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 K9(G,K),W=q.html;if(q.css)W+=`
|
|
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 XY($,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=YY(X),Q=m4(Y[0],J)||"",G={};if(Y[1]){let z=m4(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 YY($){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 m4($,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 b5=u4();import QY from"fs";import f0 from"path";async function CH($,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 GY(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 GY($,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 q9(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?KY({name:X,tag:Q,baseElement:G,source:K,shadowDOM:$.shadowDOM??!0,template:$.template??!0,styleSource:$.styleSource,attributes:$.attributes||[],attributeTypes:$.attributeTypes||{}}):zY({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 QY.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 zY($){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
|
*/
|
|
@@ -2087,13 +2087,13 @@ class ${Z.replace(/\W/g,"")} extends ${X} {
|
|
|
2087
2087
|
${G?`
|
|
2088
2088
|
_createTemplate() {
|
|
2089
2089
|
const template = document.createElement('template')
|
|
2090
|
-
template.innerHTML = \`${
|
|
2090
|
+
template.innerHTML = \`${W}${q}\`
|
|
2091
2091
|
${Q?"this.shadowRoot.appendChild(template.content.cloneNode(true))":"this.appendChild(template.content.cloneNode(true))"}
|
|
2092
2092
|
this._processSlots()
|
|
2093
2093
|
}
|
|
2094
2094
|
`:`
|
|
2095
2095
|
_render() {
|
|
2096
|
-
${Q?"this.shadowRoot.innerHTML":"this.innerHTML"} = \`${
|
|
2096
|
+
${Q?"this.shadowRoot.innerHTML":"this.innerHTML"} = \`${W}${q}\`
|
|
2097
2097
|
this._processSlots()
|
|
2098
2098
|
}
|
|
2099
2099
|
`}
|
|
@@ -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,31 +2164,31 @@ 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
|
|
2168
|
-
`),F=K.map((
|
|
2169
|
-
get ${
|
|
2170
|
-
return this._${
|
|
2167
|
+
`}function KY($){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=(R)=>{switch(q[R]){case"number":return"number";case"boolean":return"boolean";case"object":return"Record<string, unknown>";default:return"string"}},B=(R)=>R.replace(/-([a-z])/g,(D,N)=>N.toUpperCase()),V=K.map((R)=>` private _${B(R)}: ${j(R)} | null = null;`).join(`
|
|
2168
|
+
`),F=K.map((R)=>{let D=j(R),N=B(R);return`
|
|
2169
|
+
get ${N}(): ${D} | null {
|
|
2170
|
+
return this._${N};
|
|
2171
2171
|
}
|
|
2172
2172
|
|
|
2173
|
-
set ${
|
|
2174
|
-
this._${
|
|
2173
|
+
set ${N}(value: ${D} | null) {
|
|
2174
|
+
this._${N} = value;
|
|
2175
2175
|
if (value !== null) {
|
|
2176
|
-
this.setAttribute('${
|
|
2176
|
+
this.setAttribute('${R}', String(value));
|
|
2177
2177
|
}
|
|
2178
2178
|
else {
|
|
2179
|
-
this.removeAttribute('${
|
|
2179
|
+
this.removeAttribute('${R}');
|
|
2180
2180
|
}
|
|
2181
2181
|
}`}).join(`
|
|
2182
2182
|
`),O=K.length>0?`/**
|
|
2183
2183
|
* Props interface for ${Z}
|
|
2184
2184
|
*/
|
|
2185
|
-
export interface ${
|
|
2186
|
-
${K.map((
|
|
2185
|
+
export interface ${W}Props {
|
|
2186
|
+
${K.map((R)=>{let D=j(R);return` ${B(R)}?: ${D};`}).join(`
|
|
2187
2187
|
`)}
|
|
2188
2188
|
}
|
|
2189
2189
|
`:"",_=K.length>0?`
|
|
2190
2190
|
static get observedAttributes(): string[] {
|
|
2191
|
-
return [${K.map((
|
|
2191
|
+
return [${K.map((R)=>`'${R}'`).join(", ")}];
|
|
2192
2192
|
}
|
|
2193
2193
|
|
|
2194
2194
|
attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void {
|
|
@@ -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 = \`${U}${
|
|
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"} = \`${U}${
|
|
2222
|
+
${Q?"this.shadowRoot!.innerHTML":"this.innerHTML"} = \`${U}${H}\`;
|
|
2223
2223
|
this._processSlots();
|
|
2224
2224
|
}`;return`/**
|
|
2225
2225
|
* ${Z} Web Component
|
|
@@ -2244,7 +2244,7 @@ ${O}
|
|
|
2244
2244
|
* ${Z} custom element class
|
|
2245
2245
|
* @customElement ${J}
|
|
2246
2246
|
*/
|
|
2247
|
-
export class ${
|
|
2247
|
+
export class ${W} extends ${X} {
|
|
2248
2248
|
${V}
|
|
2249
2249
|
private _initialized = false;
|
|
2250
2250
|
${Q?"":"private _slotContent: Node[] = [];"}
|
|
@@ -2313,23 +2313,23 @@ ${F}
|
|
|
2313
2313
|
// Type augmentation for HTMLElementTagNameMap
|
|
2314
2314
|
declare global {
|
|
2315
2315
|
interface HTMLElementTagNameMap {
|
|
2316
|
-
'${J}': ${
|
|
2316
|
+
'${J}': ${W};
|
|
2317
2317
|
}
|
|
2318
2318
|
}
|
|
2319
2319
|
|
|
2320
2320
|
// Register the web component
|
|
2321
|
-
customElements.define('${J}', ${
|
|
2322
|
-
`}var C5={strategy:"attribute",attributeName:"data-v",preserveOriginal:!0};function S5($){let Z=$.split("").reduce((J,X)=>(J<<5)-J+X.charCodeAt(0)|0,0);return Math.abs(Z).toString(36).slice(0,8)}function
|
|
2321
|
+
customElements.define('${J}', ${W});
|
|
2322
|
+
`}var C5={strategy:"attribute",attributeName:"data-v",preserveOriginal:!0};function S5($){let Z=$.split("").reduce((J,X)=>(J<<5)-J+X.charCodeAt(0)|0,0);return Math.abs(Z).toString(36).slice(0,8)}function qY($,Z,J={}){let X={...C5,...J},Y=S5(Z);switch(X.strategy){case"shadow":return $;case"prefix":return HY($,X.prefix||Z,X.preserveOriginal);case"attribute":return WY($,Y,X.attributeName||"data-v",X.preserveOriginal);case"bem":return UY($,Z,X.preserveOriginal);default:return $}}function WY($,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 HY($,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 UY($,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 jY($,Z,J={}){let X={...C5,...J};if(X.strategy==="shadow")return $;if(X.strategy==="attribute"){let Y=S5(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 SH($,Z={}){let J={...C5,...Z},X=S5($);return`${J.attributeName||"data-v"}-${X}`}function PH($,Z,J={}){let X="",Y=$.replace(/<style([^>]*)>([\s\S]*?)<\/style>/gi,(G,z,K)=>{if(/\bscoped\b/i.test(z)||J.strategy!=="shadow")X+=`${qY(K,Z,J)}
|
|
2323
2323
|
`;else X+=`${K}
|
|
2324
|
-
`;return""});return{html:
|
|
2325
|
-
`),F=j.map((T)=>{let
|
|
2324
|
+
`;return""});return{html:jY(Y,Z,J),css:X.trim()}}function h1($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function vH($){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||h1(T)),V=j.map((T)=>{let M=z[T],I=M.default!==void 0?JSON.stringify(M.default):M.type==="string"?'""':M.type==="number"?"0":M.type==="boolean"?"false":M.type==="array"?"[]":"{}";return` this._${T} = ${I};`}).join(`
|
|
2325
|
+
`),F=j.map((T)=>{let M=z[T],I=M.attribute!==!1?M.attribute||h1(T):null,k=M.reflect&&I?`
|
|
2326
2326
|
if (value !== null && value !== undefined) {
|
|
2327
|
-
${
|
|
2328
|
-
else { this.removeAttribute('${I}'); }`:`this.setAttribute('${I}', ${
|
|
2327
|
+
${M.type==="boolean"?`if (value) { this.setAttribute('${I}', ''); }
|
|
2328
|
+
else { this.removeAttribute('${I}'); }`:`this.setAttribute('${I}', ${M.type==="object"||M.type==="array"?"JSON.stringify(value)":"String(value)"});`}
|
|
2329
2329
|
}
|
|
2330
2330
|
else {
|
|
2331
2331
|
this.removeAttribute('${I}');
|
|
2332
|
-
}`:"",A=
|
|
2332
|
+
}`:"",A=M.observer?`this.${M.observer}(value, oldValue);`:"",E=M.render!==!1?"this._scheduleRender();":"";return`
|
|
2333
2333
|
get ${T}() {
|
|
2334
2334
|
return this._${T};
|
|
2335
2335
|
}
|
|
@@ -2337,9 +2337,9 @@ else {
|
|
|
2337
2337
|
set ${T}(value) {
|
|
2338
2338
|
const oldValue = this._${T};
|
|
2339
2339
|
if (oldValue === value) return;
|
|
2340
|
-
this._${T} = value;${
|
|
2340
|
+
this._${T} = value;${k}
|
|
2341
2341
|
${A}
|
|
2342
|
-
${
|
|
2342
|
+
${E}
|
|
2343
2343
|
this.dispatchEvent(new CustomEvent('${T}-changed', {
|
|
2344
2344
|
detail: { value, oldValue },
|
|
2345
2345
|
bubbles: true
|
|
@@ -2358,12 +2358,12 @@ else {
|
|
|
2358
2358
|
this[propName] = this._deserializeAttribute(newValue, propDef.type);
|
|
2359
2359
|
}
|
|
2360
2360
|
${K.attributeChanged||""}
|
|
2361
|
-
}`:"",_=Object.entries(q).map(([T,
|
|
2362
|
-
`),L=Object.entries(
|
|
2361
|
+
}`:"",_=Object.entries(q).map(([T,M])=>{return`this._root.addEventListener('${T}', (e) => { ${M} });`}).join(`
|
|
2362
|
+
`),L=Object.entries(W).map(([T,M])=>{return`
|
|
2363
2363
|
${T}() {
|
|
2364
|
-
${
|
|
2364
|
+
${M}
|
|
2365
2365
|
}`}).join(`
|
|
2366
|
-
`),w=JSON.stringify(Object.fromEntries(j.map((T)=>[T,z[T]]))),
|
|
2366
|
+
`),w=JSON.stringify(Object.fromEntries(j.map((T)=>[T,z[T]]))),R=JSON.stringify(Object.fromEntries(j.filter((T)=>z[T].attribute!==!1).map((T)=>[z[T].attribute||h1(T),T]))),D=Y.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$\{/g,"\\${"),N=Q.replace(/\\/g,"\\\\").replace(/`/g,"\\`");return`/**
|
|
2367
2367
|
* ${Z} - Reactive Web Component
|
|
2368
2368
|
* Auto-generated with reactive properties and lifecycle management
|
|
2369
2369
|
*
|
|
@@ -2372,10 +2372,10 @@ else {
|
|
|
2372
2372
|
class ${U} extends ${X} {
|
|
2373
2373
|
// Property definitions
|
|
2374
2374
|
_propertyDefs = ${w};
|
|
2375
|
-
_attrToProp = ${
|
|
2375
|
+
_attrToProp = ${R};
|
|
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
|
|
|
@@ -2441,7 +2441,7 @@ ${F}
|
|
|
2441
2441
|
* Render the component template
|
|
2442
2442
|
*/
|
|
2443
2443
|
_render() {
|
|
2444
|
-
const template = \`${
|
|
2444
|
+
const template = \`${N?`<style>${N}</style>`:""}${D}\`;
|
|
2445
2445
|
|
|
2446
2446
|
// Interpolate template with property values
|
|
2447
2447
|
const rendered = template.replace(/\\{\\{\\s*(\\w+)\\s*\\}\\}/g, (match, propName) => {
|
|
@@ -2523,55 +2523,55 @@ customElements.define('${J}', ${U});
|
|
|
2523
2523
|
// Export for module usage
|
|
2524
2524
|
export { ${U} };
|
|
2525
2525
|
export default ${U};
|
|
2526
|
-
`}function
|
|
2526
|
+
`}function xH($){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((M)=>z[M].attribute!==!1).map((M)=>z[M].attribute||h1(M)),V=(M)=>{switch(M){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"}},F=j.length>0?`
|
|
2527
2527
|
/**
|
|
2528
2528
|
* Props interface for ${Z}
|
|
2529
2529
|
*/
|
|
2530
2530
|
export interface ${U}Props {
|
|
2531
|
-
${j.map((
|
|
2531
|
+
${j.map((M)=>` ${M}?: ${V(z[M].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
2538
|
export interface ${U}State {
|
|
2539
|
-
${Object.entries(
|
|
2539
|
+
${Object.entries(H).map(([M,I])=>` ${M}: ${typeof I};`).join(`
|
|
2540
2540
|
`)}
|
|
2541
2541
|
}
|
|
2542
2542
|
`:`
|
|
2543
2543
|
export interface ${U}State {
|
|
2544
2544
|
[key: string]: unknown;
|
|
2545
2545
|
}
|
|
2546
|
-
`,_=j.map((
|
|
2547
|
-
`),L=j.map((
|
|
2546
|
+
`,_=j.map((M)=>{let I=z[M],k=V(I.type);return` private _${M}: ${k};`}).join(`
|
|
2547
|
+
`),L=j.map((M)=>{let I=z[M],k=V(I.type),A=I.attribute!==!1?I.attribute||h1(M):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)"});`}
|
|
2551
2551
|
}
|
|
2552
2552
|
else {
|
|
2553
2553
|
this.removeAttribute('${A}');
|
|
2554
|
-
}`:"",
|
|
2555
|
-
get ${
|
|
2556
|
-
return this._${
|
|
2554
|
+
}`:"",b=I.observer?`this.${I.observer}(value, oldValue);`:"",y=I.render!==!1?"this._scheduleRender();":"";return`
|
|
2555
|
+
get ${M}(): ${k} {
|
|
2556
|
+
return this._${M};
|
|
2557
2557
|
}
|
|
2558
2558
|
|
|
2559
|
-
set ${
|
|
2560
|
-
const oldValue = this._${
|
|
2559
|
+
set ${M}(value: ${k}) {
|
|
2560
|
+
const oldValue = this._${M};
|
|
2561
2561
|
if (oldValue === value) return;
|
|
2562
|
-
this._${
|
|
2563
|
-
${y}
|
|
2562
|
+
this._${M} = value;${C}
|
|
2564
2563
|
${b}
|
|
2565
|
-
|
|
2564
|
+
${y}
|
|
2565
|
+
this.dispatchEvent(new CustomEvent('${M}-changed', {
|
|
2566
2566
|
detail: { value, oldValue },
|
|
2567
2567
|
bubbles: true
|
|
2568
2568
|
}));
|
|
2569
2569
|
}
|
|
2570
2570
|
|
|
2571
|
-
// Property default: ${
|
|
2571
|
+
// Property default: ${E}`}).join(`
|
|
2572
2572
|
`),w=B.length>0?`
|
|
2573
2573
|
static get observedAttributes(): string[] {
|
|
2574
|
-
return [${B.map((
|
|
2574
|
+
return [${B.map((M)=>`'${M}'`).join(", ")}];
|
|
2575
2575
|
}
|
|
2576
2576
|
|
|
2577
2577
|
attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void {
|
|
@@ -2582,12 +2582,12 @@ else {
|
|
|
2582
2582
|
(this as unknown as Record<string, unknown>)[propName] = this._deserializeAttribute(newValue, propDef.type);
|
|
2583
2583
|
}
|
|
2584
2584
|
${K.attributeChanged||""}
|
|
2585
|
-
}`:"",
|
|
2586
|
-
`),
|
|
2587
|
-
${
|
|
2585
|
+
}`:"",R=Object.entries(q).map(([M,I])=>{return`this._root.addEventListener('${M}', (e: Event) => { ${I} });`}).join(`
|
|
2586
|
+
`),D=Object.entries(W).map(([M,I])=>{return`
|
|
2587
|
+
${M}(): void {
|
|
2588
2588
|
${I}
|
|
2589
2589
|
}`}).join(`
|
|
2590
|
-
`),
|
|
2590
|
+
`),N=Y.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$\{/g,"\\${"),T=Q.replace(/\\/g,"\\\\").replace(/`/g,"\\`");return`/**
|
|
2591
2591
|
* ${Z} - Reactive Web Component (TypeScript)
|
|
2592
2592
|
* Auto-generated with reactive properties and lifecycle management
|
|
2593
2593
|
*
|
|
@@ -2615,10 +2615,10 @@ interface PropertyDefinition {
|
|
|
2615
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((
|
|
2618
|
+
private _attrToProp: Record<string, string> = ${JSON.stringify(Object.fromEntries(j.filter((M)=>z[M].attribute!==!1).map((M)=>[z[M].attribute||h1(M),M])))};
|
|
2619
2619
|
|
|
2620
2620
|
// Internal state
|
|
2621
|
-
private _state: ${U}State = ${JSON.stringify(
|
|
2621
|
+
private _state: ${U}State = ${JSON.stringify(H)};
|
|
2622
2622
|
private _renderPending = false;
|
|
2623
2623
|
private _isConnected = false;
|
|
2624
2624
|
private _root: ShadowRoot | HTMLElement;
|
|
@@ -2632,7 +2632,7 @@ ${_}
|
|
|
2632
2632
|
this._root = ${G?"this.shadowRoot!":"this"};
|
|
2633
2633
|
|
|
2634
2634
|
// Initialize properties with defaults
|
|
2635
|
-
${j.map((
|
|
2635
|
+
${j.map((M)=>{let I=z[M],k=I.default!==void 0?JSON.stringify(I.default):I.type==="string"?'""':I.type==="number"?"0":I.type==="boolean"?"false":I.type==="array"?"[]":"{}";return` this._${M} = ${k};`}).join(`
|
|
2636
2636
|
`)}
|
|
2637
2637
|
|
|
2638
2638
|
// Initial render
|
|
@@ -2688,7 +2688,7 @@ ${L}
|
|
|
2688
2688
|
* Render the component template
|
|
2689
2689
|
*/
|
|
2690
2690
|
private _render(): void {
|
|
2691
|
-
const template = \`${T?`<style>${T}</style>`:""}${
|
|
2691
|
+
const template = \`${T?`<style>${T}</style>`:""}${N}\`;
|
|
2692
2692
|
|
|
2693
2693
|
// Interpolate template with property values
|
|
2694
2694
|
const rendered = template.replace(/\\{\\{\\s*(\\w+)\\s*\\}\\}/g, (match, propName) => {
|
|
@@ -2715,7 +2715,7 @@ ${L}
|
|
|
2715
2715
|
* Bind event handlers after render
|
|
2716
2716
|
*/
|
|
2717
2717
|
private _bindEvents(): void {
|
|
2718
|
-
${
|
|
2718
|
+
${R}
|
|
2719
2719
|
}
|
|
2720
2720
|
|
|
2721
2721
|
// =========================================================================
|
|
@@ -2761,7 +2761,7 @@ ${w}
|
|
|
2761
2761
|
// =========================================================================
|
|
2762
2762
|
// Custom Methods
|
|
2763
2763
|
// =========================================================================
|
|
2764
|
-
${
|
|
2764
|
+
${D}
|
|
2765
2765
|
}
|
|
2766
2766
|
|
|
2767
2767
|
// Type augmentation for HTMLElementTagNameMap
|
|
@@ -2775,7 +2775,7 @@ declare global {
|
|
|
2775
2775
|
customElements.define('${J}', ${U});
|
|
2776
2776
|
|
|
2777
2777
|
export default ${U};
|
|
2778
|
-
`}function
|
|
2778
|
+
`}function fH(){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 gH(){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 BY($,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((F)=>F.trim().replace(/['"`]/g,"")).filter((F)=>F.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 VY($){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`/**
|
|
@@ -3146,7 +3146,7 @@ class ${G} extends HTMLElement {
|
|
|
3146
3146
|
this._render();
|
|
3147
3147
|
}
|
|
3148
3148
|
}
|
|
3149
|
-
${
|
|
3149
|
+
${W}
|
|
3150
3150
|
|
|
3151
3151
|
_render() {
|
|
3152
3152
|
const template = \`${K?`<style>${K}</style>`:""}${z}\`;
|
|
@@ -3165,12 +3165,12 @@ ${H}
|
|
|
3165
3165
|
}
|
|
3166
3166
|
|
|
3167
3167
|
customElements.define('${Z}', ${G});
|
|
3168
|
-
`}async function d4($,Z,J,X){if(Z.length<1)return D0("WebComponent","@webcomponent directive requires at least the tag name parameter",R0.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
|
|
3169
|
-
${
|
|
3170
|
-
</script>`}var P5={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:i4,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:R4,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:d4,hasEndTag:!1,description:"Include a web component in the template"},c4,p4,a4,t4,B5,L5,O5,V5,O4,G4,S4,y5,...e4],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 VY($,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(j9.existsSync(Q)&&j9.existsSync(G))return{root:"resources",pagesDir:"views"};let z=S0.join(Y,"resources","views","pages");if(j9.existsSync(z))return{root:"resources/views",pagesDir:X};return{root:".",pagesDir:X}}var l4=new Set,B9=["partialsDir","componentsDir","layoutsDir"],v5=new WeakMap;function LY($,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 OY($,Z){let J=!$.root,X=VY($.root,$.pagesDir,Z);if($.root=X.root,$.pagesDir=X.pagesDir,J&&X.root!=="."){let Y=`${Z}::${X.root}`;if(!l4.has(Y))l4.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(!v5.has($)){let Y={};for(let Q of B9){let G=$[Q];if(typeof G==="string"&&G)Y[Q]=G}v5.set($,Y)}if($.root&&$.root!=="."){let Y=$.root;for(let Q of B9){let G=$[Q];if(typeof G!=="string"||!G)continue;if(S0.isAbsolute(G)||LY(G,Y))continue;$[Q]=S0.join(Y,G)}}for(let Y of B9){let Q=$[Y];if(typeof Q!=="string"||!Q||S0.isAbsolute(Q))continue;$[Y]=S0.resolve(Z,Q)}return $}function FY($,Z){let J=v5.get($);for(let X of B9){let Y=$[X];if(typeof Y!=="string"||!Y)continue;let Q=S0.isAbsolute(Y)?Y:S0.join(Z,Y);if(j9.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 _Y($){if($.customDirectives)$.customDirectives=[...$.customDirectives];if($.middleware)$.middleware=[...$.middleware];if($.apiRoutes)$.apiRoutes={...$.apiRoutes}}function wY($){if(n4($.stateDir),$.stateDir=s4(),$.cachePath=w2($.cachePath),$.build)$.build.cacheDir=w2($.build.cacheDir);if($.media?.cache)$.media.cache.directory=w2($.media.cache.directory);if($.story)$.story.outDir=w2($.story.outDir)}var G1=null,F1=new Map,W9=new Map,R2=null;async function x5($){let Z=$?S0.resolve($):process.cwd(),J=W9.get(Z);if(J&&J.signature!==H9(J.graph)){let Q=F1.get(Z);if(F1.delete(Z),W9.delete(Z),!$)G1=null,R2=null;let{clearComponentCache:G}=await import("./chunk-xq8dj9br.js"),{partialsCache:z}=await import("./chunk-zmssgked.js");if(G(),z.clear(),Q&&J.configSignature===U9(J.graph)){let K=Q.then(async(q)=>{let H={...J.graph};await r4(H,Z),W9.set(Z,{graph:H,signature:H9(H),configSignature:U9(H)});let W={...q,_layerGraph:H};if(!$)G1=W;return W});return F1.set(Z,K),K}}if(!$){if(G1)return G1;if(R2)return R2}let X=F1.get(Z);if(X)return X;let Y=(async()=>{let G=(await BY({name:"stx",alias:"ui",cwd:Z,defaultConfig:P5,verbose:!1})).config;if(G.extends!==void 0||J){let H=await o4(Z,P5);G=H.config,W9.set(Z,{graph:H.graph,signature:H9(H.graph),configSignature:U9(H.graph)})}if(G.runtimeConfig){let{resolveRuntimeConfig:H}=await import("./chunk-zd172hvg.js");H(G.runtimeConfig,{});let{generateRuntimeConfigTypes:W}=await import("./chunk-49k7jgtd.js");await W(Z,G.runtimeConfig)}_Y(G),wY(G),OY(G,Z),FY(G,Z);let z=[],K=new Set((G.plugins??[]).map((H)=>typeof H==="string"?H:H[0]));for(let H of G.componentPackages??["@stacksjs/components"]){let W=`${H}/stx-plugin`;if(K.has(W)||K.has(H))continue;try{x.resolve(W,{paths:[Z]}),z.push(W)}catch{}}let q=[...G.plugins??[],...z];if(q.length>0){let{pluginManager:H}=await import("./chunk-ct8tvahc.js"),W=[],U=[];for(let j of q){let B=typeof j==="string"?j:j[0],V=typeof j==="string"?{}:j[1]||{};try{let F,O;try{let L=x.resolve(B,{paths:[Z]});F=await import(L),O=S0.dirname(L)}catch{let L=S0.resolve(Z,B);F=await import(L),O=S0.dirname(L)}let _=F.default||F;if(!H.has(_.name))await H.register(_,G);if(_.components){let L=Array.isArray(_.components)?_.components:[_.components];for(let w of L)W.push(S0.resolve(O,w))}if(_.pages){let L=S0.resolve(O,_.pages),w=V.path||"/";U.push({dir:L,prefix:w})}if(_.setup){let L={addDirective:(w)=>{G.customDirectives=G.customDirectives||[],G.customDirectives.push(w)},addRoute:(w,D)=>{G.apiRoutes=G.apiRoutes||{},G.apiRoutes[w]=D},addMiddleware:(w)=>{G.middleware=G.middleware||[],G.middleware.push(w)},pluginDir:O,config:G};await _.setup(V,L)}console.log(`[stx] Plugin loaded: ${_.name||B}`)}catch(F){console.warn(`[stx] Failed to load plugin ${B}:`,F.message)}}G._pluginComponentDirs=W,G._pluginPageDirs=U}return G})();if(F1.set(Z,Y),Y.catch(()=>{if(F1.get(Z)===Y)F1.delete(Z)}),!$)R2=Y,Y.then((Q)=>{G1=Q}).catch(()=>{});return Y}var $7=new Proxy(P5,{get($,Z){if(G1&&Z in G1)return G1[Z];if(!R2)x5().catch((J)=>{console.warn("[stx] Failed to load config file:",J?.message||J)});return $[Z]}});function eH($){return $}function $U($){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 g5=new Map;async function NY($,Z={}){try{if(!await t($))throw Error(`Markdown file not found: ${$}`);let X=(await RY.promises.stat($)).mtime.getTime();if(Z.cache&&g5.has($)){let W=g5.get($);if(W.updatedAt>=X)return{content:W.content,data:W.data}}let Y=await Bun.file($).text(),{data:Q,content:G}=_4(Y),z=Z.markdown||$7.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},q=O2(G,{gfm:!0});if(z.syntaxHighlighting?.enabled&&z.syntaxHighlighting?.serverSide)q=await MY(q,z.syntaxHighlighting?.defaultTheme||"github-dark",z.syntaxHighlighting?.highlightUnknownLanguages||!1);let H={content:q,data:Q||{}};if(Z.cache)g5.set($,{...H,updatedAt:X});return H}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 V9=null;async function MY($,Z,J){let X=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!V9)try{V9=await DY({theme:Z||"github-dark",cache:!0})}catch(z){return console.error("Failed to initialize ts-syntax-highlighter:",z),$}let Y=async(z,K,q,H)=>{let W=H.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'"),U=q||(J?"text":"");if(!U)return z;try{if(!V9.getSupportedLanguages().includes(U))return z;return(await V9.highlight(W,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,H,W]=z,U=await Y(K,q,H,W);Q=Q.replace(K,U)}return Q}async function Z7($,Z,J="",X={}){return await AY($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,z,K,q)=>{try{let H=z;if(!f5.isAbsolute(z))H=f5.resolve(f5.dirname(J),z);let W={};if(K)try{try{W=JSON.parse(K)}catch{if(X.debug)console.warn("Using safer alternative for parsing JS object literal");let _=K.replace(/^\s*\{|\}\s*$/g,"").trim().split(/,(?=\s*\w+\s*:)/);for(let L of _){let w=L.indexOf(":");if(w>0){let D=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);W[D]=R}}}}catch(O){if(X.debug)console.error("Error parsing context in @markdown-file directive:",O)}let{content:U,data:j}=await NY(H,X),B={...Z,...j,...W},V=U,F=/\{\{([^}]+)\}\}/g;return V=V.replace(F,(O,_)=>{let L=_.trim();return B[L]!==void 0?String(B[L]):O}),V}catch(H){let W=H instanceof Error?H.message:String(H);return O0("Markdown File",`Error including markdown file: ${W}`,J,$,q,G)}})}async function AY($,Z,J){let X=[],Y;while((Y=Z.exec($))!==null){let z=Y[0],K=Y.index,q=Y;X.push(J(...q).then((H)=>({match:z,replacement:H,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(B0(J))return U0(J,Object.keys(Z))(...Object.values(Z));else return X0(J,Z)}catch{return!1}}function K1($,Z){let J=IY($,Z);return J.ok?{expression:J.expression,endPos:J.endPos}:null}function IY($,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 TY($,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($),H=K?K.index:1/0,W=q?q.index:1/0;if(H<W)Y++,Q=H+K[0].length;else if(W<1/0){if(Y--,Y===0)return W;Q=W+q[0].length}else break}return-1}function J7($,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,H="if",W=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(TY(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 F=V.match(/^@elseif\s*/);if(F){K.push({type:H,condition:W,content:z.substring(U,q),start:Q+U,end:Q+q});let O=q+F[0].length,_=K1(z,O);if(!_){q++;continue}H="elseif",W=_.expression,q=_.endPos,U=q;continue}else if(/^@else(?![a-z])/.test(V)){K.push({type:H,condition:W,content:z.substring(U,q),start:Q+U,end:Q+q}),H="else",W=void 0,q+=5,U=q;continue}}q++}return K.push({type:H,condition:W,content:z.slice(U),start:Q+U,end:Q+z.length}),{fullMatch:$.slice(Z,G+6),branches:K,start:Z,end:G+6}}function D2($){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=J7($,X.index);if(Q)Z.push(Q),J.lastIndex=Q.end;X=J.exec($)}return Z}function L9($,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 H=$.slice(K+1,q),W=q+1,U=_1($,Z,J,W);if(U===-1){Q=Y.exec($);continue}let j=$.slice(W,U),B=U+`@${J}`.length;X.push({fullMatch:$.slice(z,B),name:Z,params:H,content:j,start:z,end:B}),Y.lastIndex=B,Q=Y.exec($)}return X}function h5($,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,H=null,W=0;while(q<z.length){let U=z.slice(q),j=U.match(/^@switch\s*\(/),B=U.match(/^@endswitch(?![a-z])/);if(j){if(W++,H)H.content+=j[0];q+=j[0].length;continue}if(B){if(W--,H)H.content+=B[0];q+=B[0].length;continue}if(W>0){if(H)H.content+=z[q];q++;continue}let V=U.match(/^@case\s*/),F=U.match(/^@default(?![a-z])/),O=U.match(/^@break(?![a-z])/);if(V&&U.startsWith("@case")){if(H)K.push(H);let _=q+V[0].length,L=K1(z,_);if(!L){q++;continue}H={type:"case",value:L.expression,content:""},q=L.endPos}else if(F&&U.startsWith("@default")){if(H)K.push(H);H={type:"default",content:""},q+=F[0].length}else if(O&&U.startsWith("@break"))q+=O[0].length;else{if(H)H.content+=z[q];q++}}if(H)K.push(H);return{fullMatch:$.slice(Z,G+10),expression:Y.expression,cases:K,start:Z,end:G+10}}function EY($){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,H=bY($,q,K);if(H===-1){J=G+1;continue}let W=$.slice(q,H).trim(),U=H+K.length;Z.push({fullMatch:$.slice(G,U),expression:W,start:G,end:U,isRaw:Q}),J=U}return Z}function bY($,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 yY($){let Z=m5($);if(Z.length===0)return{baseExpression:"",filters:[]};let J=Z[0],X=[];for(let Y=1;Y<Z.length;Y++){let Q=CY(Z[Y]);if(Q)X.push(Q)}return{baseExpression:J,filters:X}}function CY($){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=Q7(G);return{name:X,args:z}}function Q7($){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 SY($,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 PY($){let Z=[],X=new u5($).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 H=q.value;if(Y++,Y<X.length&&X[Y].type==="OPERATOR"&&X[Y].value==="="){Y++;let W=Y<X.length?X[Y].start:$.length,U=X7(X,Y,$);Y=U.nextIndex,Z.push({type:"variable",name:H,value:$.slice(W,U.endPos),exported:G,start:z.start,end:U.endPos})}}else if(q.type==="PUNCTUATION"&&(q.value==="{"||q.value==="[")){let H=q.start,W=q.value==="{"?"}":"]",U=N0($,q.value,W,H);if(U!==-1){let j=$.slice(H,U+1);if(Y=Y7(X,U+1),Y<X.length&&X[Y].type==="OPERATOR"&&X[Y].value==="="){Y++;let B=Y<X.length?X[Y].start:$.length,V=X7(X,Y,$);Y=V.nextIndex;let F=`__stx_destructured_${Z.length}`;Z.push({type:"variable",name:F,value:`${$.slice(B,V.endPos)}; ${K} ${j} = ${F}`,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 H=q.value;Y++;let W=-1;while(Y<X.length){if(X[Y].type==="PUNCTUATION"&&X[Y].value==="{"){W=X[Y].start;break}Y++}if(W!==-1){let U=N0($,"{","}",W);if(U!==-1)Z.push({type:"function",name:H,value:$.slice(K,U+1).replace(/^export\s+/,""),exported:G,start:K,end:U+1}),Y=Y7(X,U+1)}}}else Y++}return Z}function X7($,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 Y7($,Z){for(let J=0;J<$.length;J++)if($[J].start>=Z)return J;return $.length}function vY($,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=h5(X,G);if(!z)break;try{let K;if(B0(z.expression))K=U0(z.expression,Object.keys(Z))(...Object.values(Z));else K=X0(z.expression,Z);let q="",H=!1;for(let W of z.cases)if(W.type==="default"){if(!H)q=W.content.trim()}else try{let U;if(W.value&&B0(W.value))U=U0(W.value,Object.keys(Z))(...Object.values(Z));else if(W.value)U=X0(W.value,Z);if(K===U){q=W.content.trim(),H=!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),H=D0("Switch",`Error evaluating @switch expression: ${q}`,R0.EVALUATION_ERROR);X=X.substring(0,G)+H+X.substring(z.end);break}}return X}function xY($){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 t0($,Z,J){let{masked:X,scripts:Y}=xY($);return fY(gY(X,Z,J),Y)}function gY($,Z,J){let X=$;X=vY(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,H=_1(X,"unless","endunless",q);if(H===-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 W=X.slice(q,H),U=K.expression,j=-1;{let V=0,F=/@(?:if|unless)\s*\(/g,O=/@(?:endif|endunless)(?![a-z])/g,_=/@else(?![a-z])/g,L=[],w;while((w=F.exec(W))!==null)L.push({pos:w.index,type:"open"});while((w=O.exec(W))!==null)L.push({pos:w.index,type:"close"});while((w=_.exec(W))!==null)L.push({pos:w.index,type:"else"});L.sort((D,R)=>D.pos-R.pos);for(let D of L)if(D.type==="open")V++;else if(D.type==="close")V--;else if(D.type==="else"&&V===0){j=D.pos;break}}let B;if(j!==-1){let V=W.slice(0,j),F=W.slice(j+5);B=`@if (${U})${F}@else ${V}@endif`}else B=`@if (!(${U}))${W}@endif`;X=X.substring(0,z)+B+X.substring(H+10),Q=!0}}X=l5(X,Z,J),X=c5(X,Z,J),X=d5(X,Z);let Y=()=>{let Q=D2(X);if(Q.length===0)return!1;let G=Array(Q.length);for(let q=Q.length-1;q>=0;q--){let H=Q[q];try{let W="",U=!1;for(let j of H.branches){if(U)break;if(j.type==="else")W=j.content,U=!0;else try{let B;if(j.condition&&B0(j.condition))B=U0(j.condition,Object.keys(Z))(...Object.values(Z));else if(j.condition)B=X0(j.condition,Z);if(B)W=j.content,U=!0}catch(B){W=D0(j.type==="if"?"If":"Elseif",`Error in @${j.type}(${j.condition}): ${B instanceof Error?B.message:String(B)}`,R0.EVALUATION_ERROR),U=!0}}G[q]=W}catch(W){let U=W instanceof Error?W.message:String(W);G[q]=D0("If",`Error processing @if block: ${U}`,R0.EVALUATION_ERROR)}}let z=Array(Q.length*2+1),K=0;for(let q=0;q<Q.length;q++){let H=Q[q];z[q*2]=X.slice(K,H.start),z[q*2+1]=G[q],K=H.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 G7($){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 d5($,Z){let J=$;function X(z,K,q,H){let W=1,U=H,j=new RegExp(`@${K}(?:\\s*\\(|\\s|$)`,"g"),B=new RegExp(`@${q}(?![a-z])`,"g");while(U<z.length&&W>0){j.lastIndex=U,B.lastIndex=U;let V=j.exec(z),F=B.exec(z),O=V?V.index:1/0,_=F?F.index:1/0;if(O<_)W++,U=O+V[0].length;else if(_<1/0){if(W--,W===0)return _;U=_+F[0].length}else break}return-1}function Y(z,K,q){let H=0,W=new RegExp(`@${K}(?:\\s*\\(|\\s|$)`,"g"),U=new RegExp(`@${q}(?![a-z])`,"g"),j=/@else(?![a-z])/g,B=[],V;while((V=W.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((F,O)=>F.pos-O.pos);for(let F of B)if(F.type==="open")H++;else if(F.type==="close")H--;else if(F.type==="else"&&H===0)return F.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,H,W,U=J.slice(q+5),j=G7(U);if(j)H=j.value,W=q+5+j.consumed;else W=q+5;let B=X(J,"auth","endauth",W);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(W,B),F=Y(V,"auth","endauth"),O;if(!Z.auth)O=!1;else O=H?z1(`auth?.check && auth?.user?.[${H}]`,Z):z1("auth?.check",Z);let _;if(F!==-1){let L=V.slice(0,F),w=V.slice(F+5);_=O?L:w}else _=O?V:"";J=J.substring(0,q)+_+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,H,W,U=J.slice(q+6),j=G7(U);if(j)H=j.value,W=q+6+j.consumed;else W=q+6;let B=X(J,"guest","endguest",W);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(W,B),F=Y(V,"guest","endguest"),O;if(!Z.auth)O=!0;else O=H?z1(`!auth?.check || !auth?.user?.[${H}]`,Z):z1("!auth?.check",Z);let _;if(F!==-1){let L=V.slice(0,F),w=V.slice(F+5);_=O?L:w}else _=O?V:"";J=J.substring(0,q)+_+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 H=[z];if(K)H.push(K);if(q){let W=z1(q,Z);H.push(W)}return Z.permissions.check(...H)}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",H=!0;while(H){H=!1;let W=J.match(new RegExp(`@${z}\\s*\\(`));if(!W||W.index===void 0)break;let U=W.index,j=J.slice(U+`@${z}`.length),B=G(j);if(!B)break;let V=U+`@${z}`.length+B.paramsEnd,F=X(J,z,K,V);if(F===-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"),D=new RegExp(`@${K}(?![a-z])`,"g"),R=new RegExp(`@${q}\\s*\\(`,"g"),M=/@else(?![a-z])/g,T=[],N;while((N=w.exec(O))!==null)T.push({pos:N.index,type:"open"});while((N=D.exec(O))!==null)T.push({pos:N.index,type:"close"});while((N=R.exec(O))!==null)T.push({pos:N.index,type:"elseDirective"});while((N=M.exec(O))!==null)T.push({pos:N.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)_.push(y)}let I=[],E=0;for(let y=0;y<_.length;y++){let b=_[y];if(I.push({content:O.slice(E,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(E,b.pos)},E=b.pos+`@${q}`.length+h.paramsEnd,I.push({content:"",ability:h.ability,type:h.type,id:h.id}),I.pop();let p=_[y+1],u=p?p.pos:O.length;I.push({content:O.slice(E,u),ability:h.ability,type:h.type,id:h.id}),E=u}}else E=b.pos+5}if(E<O.length){let y=I[I.length-1];if(_.length>0&&_[_.length-1].type==="else")I.push({content:O.slice(E),isFinalElse:!0});else if(I.length===0)I.push({content:O.slice(E)})}let A=Q(B.ability,B.type,B.id),k=z==="can"?A:!A,C="";if(k)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(F+`@${K}`.length),H=!0}}return J}function l5($,Z,J){let X=$;function Y(Q,G,z,K,q){let H=!0;while(H){H=!1;let W=new RegExp(`@${G}\\s*\\(`),U=Q.match(W);if(!U||U.index===void 0)break;let j=U.index,B=K1(Q,j+`@${G}`.length);if(!B)break;let V=B.endPos,F=_1(Q,G,z,V);if(F===-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,D=0;while(D<O.length){let R=O.indexOf("@",D);if(R===-1)break;let M=O.substring(R);if(/^@(?:if|unless|isset|empty)\s*\(/.test(M)){w++,D=R+1;continue}if(/^@(?:endif|endunless|endisset|endempty)(?![a-z])/.test(M)){w--,D=R+1;continue}if(w===0&&/^@else(?![a-z])/.test(M)){L=R;break}D=R+1}try{let R=K(_.trim()),M;if(L!==-1){let T=O.slice(0,L),N=O.slice(L+5);M=R?T:N}else M=R?O:"";Q=Q.substring(0,j)+M+Q.substring(F+`@${z}`.length),H=!0}catch(R){let M=R instanceof Error?R.message:String(R),T=D0(q,`Error processing @${G} directive: ${M}`,R0.EVALUATION_ERROR);Q=Q.substring(0,j)+T+Q.substring(F+`@${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 c5($,Z,J){let X=$,Y="development";function Q(G,z,K,q){let H=new RegExp(`@${z}(?![a-z])`,"g"),W=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,H.lastIndex=0;let F=H.exec(B);if(!F)break;let O=F.index,_=O+F[0].length;if(z==="env"){let A=B.substring(_).match(/^\s*\(\s*(['"])([^'"]+)\1\s*\)/);if(!A)break;_+=A[0].length,q=Y===A[2]}let L=1,w=_,D=-1;while(L>0&&w<B.length){H.lastIndex=w,W.lastIndex=w;let A=H.exec(B),k=W.exec(B),C=A?A.index:1/0,y=k?k.index:1/0;if(C<y)L++,w=C+A[0].length;else if(y<1/0){if(L--,L===0){D=y;break}w=y+k[0].length}else break}if(D===-1){console.warn(`[stx] @${z} directive at position ${O} has no matching @${K} \u2014 the block was skipped.`);break}let R=B.substring(_,D),M=-1,T=0,N=0;while(N<R.length){let A=R.indexOf("@",N);if(A===-1)break;let k=R.substring(A);if(U.test(k)){T++,N=A+1;continue}if(j.test(k)){T--,N=A+1;continue}if(T===0&&/^@else(?![a-z])/.test(k)){M=A;break}N=A+1}let I;if(M!==-1){let A=R.slice(0,M),k=R.slice(M+5);I=q?A:k}else I=q?R:"";let E=`@${K}`.length;B=B.substring(0,O)+I+B.substring(D+E),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 p5=new WeakMap;function z7($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function w1($,Z){if(!$)return Z?.nonceGenerator?.()??z7();let J=p5.get($);if(!J)J=Z?.nonceGenerator?.()??z7(),p5.set($,J);return J}function IU($){p5.delete($)}function K7($,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 n5($,Z){return`<meta http-equiv="Content-Security-Policy" content="${K7($,Z).replace(/&/g,"&").replace(/"/g,""")}">`}var hY={"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},i5={"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},uY={"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'"]},mY={"default-src":["'none'"],"frame-ancestors":["'none'"]};function TU($){return{enabled:!0,directives:{strict:hY,moderate:i5,relaxed:uY,api:mY}[$]||i5,useNonce:$==="strict",addMetaTag:!0}}function kU($,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 q7($,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?w1(J,Z):void 0,Y=n5(Z.directives,X);return $.replace(/<head([^>]*)>/,`<head$1>
|
|
3171
|
-
${Y}`)}function W7($,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 H7($,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?w1(Z,Q):void 0;return n5(Q.directives,G)}),Y=Y.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return w1(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=w1(Z,Q);return Y}var dY={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?w1(J,Q):void 0;return n5(Q.directives,G)},hasEndTag:!1,description:"Insert Content-Security-Policy meta tag"},lY={name:"cspNonce",handler:($,Z,J,X)=>{let Q=J.__stx_options?.csp;if(!Q?.enabled||!Q.useNonce)return"";return w1(J,Q)},hasEndTag:!1,description:"Output the current CSP nonce value"};function EU(){return[dY,lY]}function bU($){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 cY($=!1){return $?"Content-Security-Policy-Report-Only":"Content-Security-Policy"}function yU($,Z){if(!$.enabled)return{};let J=$.useNonce?w1(Z,$):void 0,X=K7($.directives,J);return{[cY($.reportOnly)]:X}}var CU={enabled:!1,reportOnly:!1,directives:i5,useNonce:!1,addMetaTag:!0};import pY from"crypto";var iY=40,U7="_token",s5=null;function nY($=iY){let Z=pY.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return s5=Z,Z}function sY(){if(!s5)nY();return s5}function oY($=U7){let Z=sY();return`<input type="hidden" name="${$}" value="${Z}">`}function j7($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,J,X)=>{return oY(X||U7)})}async function L7($,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 rY(Y,Q,Z,J,X);else Y=await aY(Y,Q,Z,J,X)}return Y}async function rY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=`@${Q}`,K=`@end${Q}`,q=$,H=R1(`${z}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${K}`,"g"),W=[],U=H.exec(q);while(U!==null){let[j,B="",V=""]=U,F=U.index||0;try{let O=B?O7(Z,B):[],_=V.trim(),L=await G(_,O,J,X);W.push({original:j,processed:L,startIndex:F})}catch(O){let _=O instanceof Error?O.message:String(O);if(Y.debug)console.error(`Error processing custom directive @${Q}:`,O);W.push({original:j,processed:D0("CustomDirective",`Error in @${Q}${B?`(${B})`:""}: ${_}`,R0.EVALUATION_ERROR),startIndex:F})}U=H.exec(q)}for(let j=W.length-1;j>=0;j--){let{original:B,processed:V}=W[j];q=q.replace(B,V)}return q}async function aY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=$,K=[],q=[];if(Z.rawParams){for(let U of B7(z,R1(`(?<![\\w$@])@${Q}\\s*\\(`,"g")))if(U.end!==-1)q.push({fullMatch:U.call,paramString:U.args,startIndex:U.start})}else{let U=R1(`@${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=O7(Z,j),F=await G("",V,J,X);K.push({original:U,processed:F,startIndex:B})}catch(V){let F=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}): ${F}`,R0.EVALUATION_ERROR),startIndex:B})}let H=R1(`@${Q}(?!\\w)(?!\\s*\\()`,"g"),W=H.exec(z);while(W!==null){let[U]=W,j=W.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}`,R0.EVALUATION_ERROR),startIndex:j})}W=H.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 O7($,Z){return $.rawParams?V7(Z):tY(Z)}function tY($){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 F7=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,_7=/^[A-Za-z_$][\w$]*$/,eY=new Set(["light","dark","system"]);function D1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function $Q($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,J=Z.appearance,X=Z.colorMode;if(D1(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(D1(J.key,"appearance.key"),D1(J.attribute,"appearance.attribute"),D1(J.default,"appearance.default"),D1(X.key,"colorMode.key"),D1(X.attribute,"colorMode.attribute"),D1(X.default,"colorMode.default"),!_7.test(J.key)||!_7.test(X.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!F7.test(J.attribute)||!F7.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(!eY.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 ZQ($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function JQ($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${ZQ($)};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 XQ($,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 w7($,Z){let J=$,X=/@appearanceBootstrap\s*\(/g,Y;while((Y=X.exec(J))!==null){let Q=Y.index+Y[0].length-1,G=XQ(J,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let z=J.slice(Q+1,G).trim(),K=X0(`(${z})`,Z),q=JQ($Q(K));J=J.slice(0,Y.index)+q+J.slice(G+1),X.lastIndex=Y.index+q.length}return J}import YQ from"crypto";function M0($){return String($??"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var r5={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"};function QQ($){return{...r5,...$.forms?.classes}}function O9($,Z,J,X){let Y=$||Z;return J?`${Y} ${X}`:Y}function g0($){return String($).replace(/\[\]$/,"").replace(/[^\w.:-]+/g,"-").replace(/^-+|-+$/g,"")}function u1($,Z){if(/\bid\s*=/i.test($))return"";return` id="${M0(Z)}"`}function o5($,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="${M0(`${g0($)}-error`)}"`;return X}function GQ(){return YQ.randomUUID()}function cU($,Z,J,X){let Y=QQ(X),Q=$;return Q=KQ(Q,Z),Q=A2(Q,Z),Q=a5(Q,Z,Y),Q=t5(Q,Z,Y),Q}function A2($,Z){let J=$;return J=J.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let X=GQ();Z.csrf={token:X}}if(Z.csrf.field)return Z.csrf.field;if(Z.csrf.token)return`<input type="hidden" name="_token" value="${M0(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="${M0(Q)}">`;return X}),J}function a5($,Z,J=r5){let X=$;return X=X.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(Y,Q,G,z,K,q="")=>{let H=Q||G||"POST",W=z||K||"",U=q1(q),j=H.toUpperCase(),B=["GET","POST"].includes(j)?j:"POST",V=`<form method="${M0(B)}" action="${M0(W)}"${U?` ${U}`:""}>`;if(V+=`
|
|
3168
|
+
`}async function d4($,Z,J,X){if(Z.length<1)return D0("WebComponent","@webcomponent directive requires at least the tag name parameter",R0.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`,R0.FILE_NOT_FOUND);let q=BY(K,Y);return`<script type="module">
|
|
3169
|
+
${VY(q)}
|
|
3170
|
+
</script>`}var P5={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:i4,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:R4,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:d4,hasEndTag:!1,description:"Include a web component in the template"},c4,p4,a4,t4,B5,L5,O5,V5,O4,G4,S4,b5,...e4],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 OY($,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(j9.existsSync(Q)&&j9.existsSync(G))return{root:"resources",pagesDir:"views"};let z=S0.join(Y,"resources","views","pages");if(j9.existsSync(z))return{root:"resources/views",pagesDir:X};return{root:".",pagesDir:X}}var l4=new Set,B9=["partialsDir","componentsDir","layoutsDir"],v5=new WeakMap;function FY($,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 _Y($,Z){let J=!$.root,X=OY($.root,$.pagesDir,Z);if($.root=X.root,$.pagesDir=X.pagesDir,J&&X.root!=="."){let Y=`${Z}::${X.root}`;if(!l4.has(Y))l4.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(!v5.has($)){let Y={};for(let Q of B9){let G=$[Q];if(typeof G==="string"&&G)Y[Q]=G}v5.set($,Y)}if($.root&&$.root!=="."){let Y=$.root;for(let Q of B9){let G=$[Q];if(typeof G!=="string"||!G)continue;if(S0.isAbsolute(G)||FY(G,Y))continue;$[Q]=S0.join(Y,G)}}for(let Y of B9){let Q=$[Y];if(typeof Q!=="string"||!Q||S0.isAbsolute(Q))continue;$[Y]=S0.resolve(Z,Q)}return $}function wY($,Z){let J=v5.get($);for(let X of B9){let Y=$[X];if(typeof Y!=="string"||!Y)continue;let Q=S0.isAbsolute(Y)?Y:S0.join(Z,Y);if(j9.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 RY($){if($.customDirectives)$.customDirectives=[...$.customDirectives];if($.middleware)$.middleware=[...$.middleware];if($.apiRoutes)$.apiRoutes={...$.apiRoutes}}function DY($){if(n4($.stateDir),$.stateDir=s4(),$.cachePath=w2($.cachePath),$.build)$.build.cacheDir=w2($.build.cacheDir);if($.media?.cache)$.media.cache.directory=w2($.media.cache.directory);if($.story)$.story.outDir=w2($.story.outDir)}var G1=null,F1=new Map,W9=new Map,R2=null;async function x5($){let Z=$?S0.resolve($):process.cwd(),J=W9.get(Z);if(J&&J.signature!==H9(J.graph)){let Q=F1.get(Z);if(F1.delete(Z),W9.delete(Z),!$)G1=null,R2=null;let{clearComponentCache:G}=await import("./chunk-s54sn5xa.js"),{partialsCache:z}=await import("./chunk-at4s8qvj.js");if(G(),z.clear(),Q&&J.configSignature===U9(J.graph)){let K=Q.then(async(q)=>{let W={...J.graph};await r4(W,Z),W9.set(Z,{graph:W,signature:H9(W),configSignature:U9(W)});let H={...q,_layerGraph:W};if(!$)G1=H;return H});return F1.set(Z,K),K}}if(!$){if(G1)return G1;if(R2)return R2}let X=F1.get(Z);if(X)return X;let Y=(async()=>{let G=(await LY({name:"stx",alias:"ui",cwd:Z,defaultConfig:P5,verbose:!1})).config;if(G.extends!==void 0||J){let W=await o4(Z,P5);G=W.config,W9.set(Z,{graph:W.graph,signature:H9(W.graph),configSignature:U9(W.graph)})}if(G.runtimeConfig){let{resolveRuntimeConfig:W}=await import("./chunk-y2s9c0f0.js");W(G.runtimeConfig,{});let{generateRuntimeConfigTypes:H}=await import("./chunk-0gbbfr5v.js");await H(Z,G.runtimeConfig)}RY(G),DY(G),_Y(G,Z),wY(G,Z);let z=[],K=new Set((G.plugins??[]).map((W)=>typeof W==="string"?W:W[0]));for(let W of G.componentPackages??["@stacksjs/components"]){let H=`${W}/stx-plugin`;if(K.has(H)||K.has(W))continue;try{x.resolve(H,{paths:[Z]}),z.push(H)}catch{}}let q=[...G.plugins??[],...z];if(q.length>0){let{pluginManager:W}=await import("./chunk-n7m0zs73.js"),H=[],U=[];for(let j of q){let B=typeof j==="string"?j:j[0],V=typeof j==="string"?{}:j[1]||{};try{let F,O;try{let L=x.resolve(B,{paths:[Z]});F=await import(L),O=S0.dirname(L)}catch{let L=S0.resolve(Z,B);F=await import(L),O=S0.dirname(L)}let _=F.default||F;if(!W.has(_.name))await W.register(_,G);if(_.components){let L=Array.isArray(_.components)?_.components:[_.components];for(let w of L)H.push(S0.resolve(O,w))}if(_.pages){let L=S0.resolve(O,_.pages),w=V.path||"/";U.push({dir:L,prefix:w})}if(_.setup){let L={addDirective:(w)=>{G.customDirectives=G.customDirectives||[],G.customDirectives.push(w)},addRoute:(w,R)=>{G.apiRoutes=G.apiRoutes||{},G.apiRoutes[w]=R},addMiddleware:(w)=>{G.middleware=G.middleware||[],G.middleware.push(w)},pluginDir:O,config:G};await _.setup(V,L)}console.log(`[stx] Plugin loaded: ${_.name||B}`)}catch(F){console.warn(`[stx] Failed to load plugin ${B}:`,F.message)}}G._pluginComponentDirs=H,G._pluginPageDirs=U}return G})();if(F1.set(Z,Y),Y.catch(()=>{if(F1.get(Z)===Y)F1.delete(Z)}),!$)R2=Y,Y.then((Q)=>{G1=Q}).catch(()=>{});return Y}var $7=new Proxy(P5,{get($,Z){if(G1&&Z in G1)return G1[Z];if(!R2)x5().catch((J)=>{console.warn("[stx] Failed to load config file:",J?.message||J)});return $[Z]}});function ZU($){return $}function JU($){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 g5=new Map;async function AY($,Z={}){try{if(!await t($))throw Error(`Markdown file not found: ${$}`);let X=(await NY.promises.stat($)).mtime.getTime();if(Z.cache&&g5.has($)){let H=g5.get($);if(H.updatedAt>=X)return{content:H.content,data:H.data}}let Y=await Bun.file($).text(),{data:Q,content:G}=_4(Y),z=Z.markdown||$7.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},q=O2(G,{gfm:!0});if(z.syntaxHighlighting?.enabled&&z.syntaxHighlighting?.serverSide)q=await IY(q,z.syntaxHighlighting?.defaultTheme||"github-dark",z.syntaxHighlighting?.highlightUnknownLanguages||!1);let W={content:q,data:Q||{}};if(Z.cache)g5.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 V9=null;async function IY($,Z,J){let X=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!V9)try{V9=await MY({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(!V9.getSupportedLanguages().includes(U))return z;return(await V9.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 Z7($,Z,J="",X={}){return await TY($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,z,K,q)=>{try{let W=z;if(!f5.isAbsolute(z))W=f5.resolve(f5.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 _=K.replace(/^\s*\{|\}\s*$/g,"").trim().split(/,(?=\s*\w+\s*:)/);for(let L of _){let w=L.indexOf(":");if(w>0){let R=L.substring(0,w).trim(),D=L.substring(w+1).trim(),N=D.startsWith('"')&&D.endsWith('"'),T=D.startsWith("'")&&D.endsWith("'");if(N||T)D=D.substring(1,D.length-1);H[R]=D}}}}catch(O){if(X.debug)console.error("Error parsing context in @markdown-file directive:",O)}let{content:U,data:j}=await AY(W,X),B={...Z,...j,...H},V=U,F=/\{\{([^}]+)\}\}/g;return V=V.replace(F,(O,_)=>{let L=_.trim();return B[L]!==void 0?String(B[L]):O}),V}catch(W){let H=W instanceof Error?W.message:String(W);return O0("Markdown File",`Error including markdown file: ${H}`,J,$,q,G)}})}async function TY($,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(B0(J))return U0(J,Object.keys(Z))(...Object.values(Z));else return X0(J,Z)}catch{return!1}}function K1($,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 EY($,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 J7($,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(EY(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 F=V.match(/^@elseif\s*/);if(F){K.push({type:W,condition:H,content:z.substring(U,q),start:Q+U,end:Q+q});let O=q+F[0].length,_=K1(z,O);if(!_){q++;continue}W="elseif",H=_.expression,q=_.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 D2($){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=J7($,X.index);if(Q)Z.push(Q),J.lastIndex=Q.end;X=J.exec($)}return Z}function L9($,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),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 h5($,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*/),F=U.match(/^@default(?![a-z])/),O=U.match(/^@break(?![a-z])/);if(V&&U.startsWith("@case")){if(W)K.push(W);let _=q+V[0].length,L=K1(z,_);if(!L){q++;continue}W={type:"case",value:L.expression,content:""},q=L.endPos}else if(F&&U.startsWith("@default")){if(W)K.push(W);W={type:"default",content:""},q+=F[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 bY($){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=CY($,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 CY($,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 SY($){let Z=m5($);if(Z.length===0)return{baseExpression:"",filters:[]};let J=Z[0],X=[];for(let Y=1;Y<Z.length;Y++){let Q=PY(Z[Y]);if(Q)X.push(Q)}return{baseExpression:J,filters:X}}function PY($){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=Q7(G);return{name:X,args:z}}function Q7($){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 xY($){let Z=[],X=new u5($).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=X7(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=N0($,q.value,H,W);if(U!==-1){let j=$.slice(W,U+1);if(Y=Y7(X,U+1),Y<X.length&&X[Y].type==="OPERATOR"&&X[Y].value==="="){Y++;let B=Y<X.length?X[Y].start:$.length,V=X7(X,Y,$);Y=V.nextIndex;let F=`__stx_destructured_${Z.length}`;Z.push({type:"variable",name:F,value:`${$.slice(B,V.endPos)}; ${K} ${j} = ${F}`,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=N0($,"{","}",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=Y7(X,U+1)}}}else Y++}return Z}function X7($,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 Y7($,Z){for(let J=0;J<$.length;J++)if($[J].start>=Z)return J;return $.length}function fY($,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=h5(X,G);if(!z)break;try{let K;if(B0(z.expression))K=U0(z.expression,Object.keys(Z))(...Object.values(Z));else K=X0(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&&B0(H.value))U=U0(H.value,Object.keys(Z))(...Object.values(Z));else if(H.value)U=X0(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}`,R0.EVALUATION_ERROR);X=X.substring(0,G)+W+X.substring(z.end);break}}return X}function gY($){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 hY($,Z){if(Z.length===0)return $;return $.replace(/\u0000stx-script-(\d+)\u0000/g,(J,X)=>Z[Number(X)]??J)}function t0($,Z,J){let{masked:X,scripts:Y}=gY($);return hY(uY(X,Z,J),Y)}function uY($,Z,J){let X=$;X=fY(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,F=/@(?:if|unless)\s*\(/g,O=/@(?:endif|endunless)(?![a-z])/g,_=/@else(?![a-z])/g,L=[],w;while((w=F.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=_.exec(H))!==null)L.push({pos:w.index,type:"else"});L.sort((R,D)=>R.pos-D.pos);for(let R of L)if(R.type==="open")V++;else if(R.type==="close")V--;else if(R.type==="else"&&V===0){j=R.pos;break}}let B;if(j!==-1){let V=H.slice(0,j),F=H.slice(j+5);B=`@if (${U})${F}@else ${V}@endif`}else B=`@if (!(${U}))${H}@endif`;X=X.substring(0,z)+B+X.substring(W+10),Q=!0}}X=l5(X,Z,J),X=c5(X,Z,J),X=d5(X,Z);let Y=()=>{let Q=D2(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&&B0(j.condition))B=U0(j.condition,Object.keys(Z))(...Object.values(Z));else if(j.condition)B=X0(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)}`,R0.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}`,R0.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 G7($){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 d5($,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),F=B.exec(z),O=V?V.index:1/0,_=F?F.index:1/0;if(O<_)H++,U=O+V[0].length;else if(_<1/0){if(H--,H===0)return _;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((F,O)=>F.pos-O.pos);for(let F of B)if(F.type==="open")W++;else if(F.type==="close")W--;else if(F.type==="else"&&W===0)return F.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=G7(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),F=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 _;if(F!==-1){let L=V.slice(0,F),w=V.slice(F+5);_=O?L:w}else _=O?V:"";J=J.substring(0,q)+_+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=G7(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),F=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 _;if(F!==-1){let L=V.slice(0,F),w=V.slice(F+5);_=O?L:w}else _=O?V:"";J=J.substring(0,q)+_+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,F=X(J,z,K,V);if(F===-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"),R=new RegExp(`@${K}(?![a-z])`,"g"),D=new RegExp(`@${q}\\s*\\(`,"g"),N=/@else(?![a-z])/g,T=[],M;while((M=w.exec(O))!==null)T.push({pos:M.index,type:"open"});while((M=R.exec(O))!==null)T.push({pos:M.index,type:"close"});while((M=D.exec(O))!==null)T.push({pos:M.index,type:"elseDirective"});while((M=N.exec(O))!==null)T.push({pos:M.index,type:"else"});T.sort((b,y)=>b.pos-y.pos);for(let b of T){if(b.type==="open"){L++;continue}if(b.type==="close"){L--;continue}if(L===0)_.push(b)}let I=[],k=0;for(let b=0;b<_.length;b++){let y=_[b];if(I.push({content:O.slice(k,y.pos),ability:void 0}),y.type==="elseDirective"){let P=O.slice(y.pos+`@${q}`.length),h=G(P);if(h){I[I.length-1]={content:O.slice(k,y.pos)},k=y.pos+`@${q}`.length+h.paramsEnd,I.push({content:"",ability:h.ability,type:h.type,id:h.id}),I.pop();let p=_[b+1],u=p?p.pos:O.length;I.push({content:O.slice(k,u),ability:h.ability,type:h.type,id:h.id}),k=u}}else k=y.pos+5}if(k<O.length){let b=I[I.length-1];if(_.length>0&&_[_.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 b=!1;for(let y=1;y<I.length;y++){let P=I[y];if(P.isFinalElse){C=P.content,b=!0;break}if(P.ability){let h=Q(P.ability,P.type,P.id);if(z==="can"?h:!h){C=P.content,b=!0;break}}}if(!b&&I.length>0){let y=I[I.length-1];if(y.isFinalElse)C=y.content}}J=J.substring(0,U)+C+J.substring(F+`@${K}`.length),W=!0}}return J}function l5($,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,F=_1(Q,G,z,V);if(F===-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,R=0;while(R<O.length){let D=O.indexOf("@",R);if(D===-1)break;let N=O.substring(D);if(/^@(?:if|unless|isset|empty)\s*\(/.test(N)){w++,R=D+1;continue}if(/^@(?:endif|endunless|endisset|endempty)(?![a-z])/.test(N)){w--,R=D+1;continue}if(w===0&&/^@else(?![a-z])/.test(N)){L=D;break}R=D+1}try{let D=K(_.trim()),N;if(L!==-1){let T=O.slice(0,L),M=O.slice(L+5);N=D?T:M}else N=D?O:"";Q=Q.substring(0,j)+N+Q.substring(F+`@${z}`.length),W=!0}catch(D){let N=D instanceof Error?D.message:String(D),T=D0(q,`Error processing @${G} directive: ${N}`,R0.EVALUATION_ERROR);Q=Q.substring(0,j)+T+Q.substring(F+`@${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 c5($,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 F=W.exec(B);if(!F)break;let O=F.index,_=O+F[0].length;if(z==="env"){let A=B.substring(_).match(/^\s*\(\s*(['"])([^'"]+)\1\s*\)/);if(!A)break;_+=A[0].length,q=Y===A[2]}let L=1,w=_,R=-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,b=E?E.index:1/0;if(C<b)L++,w=C+A[0].length;else if(b<1/0){if(L--,L===0){R=b;break}w=b+E[0].length}else break}if(R===-1){console.warn(`[stx] @${z} directive at position ${O} has no matching @${K} \u2014 the block was skipped.`);break}let D=B.substring(_,R),N=-1,T=0,M=0;while(M<D.length){let A=D.indexOf("@",M);if(A===-1)break;let E=D.substring(A);if(U.test(E)){T++,M=A+1;continue}if(j.test(E)){T--,M=A+1;continue}if(T===0&&/^@else(?![a-z])/.test(E)){N=A;break}M=A+1}let I;if(N!==-1){let A=D.slice(0,N),E=D.slice(N+5);I=q?A:E}else I=q?D:"";let k=`@${K}`.length;B=B.substring(0,O)+I+B.substring(R+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 p5=new WeakMap;function z7($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function w1($,Z){if(!$)return Z?.nonceGenerator?.()??z7();let J=p5.get($);if(!J)J=Z?.nonceGenerator?.()??z7(),p5.set($,J);return J}function kU($){p5.delete($)}function K7($,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 n5($,Z){return`<meta http-equiv="Content-Security-Policy" content="${K7($,Z).replace(/&/g,"&").replace(/"/g,""")}">`}var mY={"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},i5={"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},dY={"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'"]},lY={"default-src":["'none'"],"frame-ancestors":["'none'"]};function EU($){return{enabled:!0,directives:{strict:mY,moderate:i5,relaxed:dY,api:lY}[$]||i5,useNonce:$==="strict",addMetaTag:!0}}function yU($,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 q7($,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?w1(J,Z):void 0,Y=n5(Z.directives,X);return $.replace(/<head([^>]*)>/,`<head$1>
|
|
3171
|
+
${Y}`)}function W7($,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 H7($,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?w1(Z,Q):void 0;return n5(Q.directives,G)}),Y=Y.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return w1(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=w1(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?w1(J,Q):void 0;return n5(Q.directives,G)},hasEndTag:!1,description:"Insert Content-Security-Policy meta tag"},pY={name:"cspNonce",handler:($,Z,J,X)=>{let Q=J.__stx_options?.csp;if(!Q?.enabled||!Q.useNonce)return"";return w1(J,Q)},hasEndTag:!1,description:"Output the current CSP nonce value"};function bU(){return[cY,pY]}function CU($){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 SU($,Z){if(!$.enabled)return{};let J=$.useNonce?w1(Z,$):void 0,X=K7($.directives,J);return{[iY($.reportOnly)]:X}}var PU={enabled:!1,reportOnly:!1,directives:i5,useNonce:!1,addMetaTag:!0};import nY from"crypto";var sY=40,U7="_token",s5=null;function oY($=sY){let Z=nY.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return s5=Z,Z}function rY(){if(!s5)oY();return s5}function aY($=U7){let Z=rY();return`<input type="hidden" name="${$}" value="${Z}">`}function j7($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,J,X)=>{return aY(X||U7)})}async function L7($,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 tY(Y,Q,Z,J,X);else Y=await eY(Y,Q,Z,J,X)}return Y}async function tY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=`@${Q}`,K=`@end${Q}`,q=$,W=R1(`${z}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${K}`,"g"),H=[],U=W.exec(q);while(U!==null){let[j,B="",V=""]=U,F=U.index||0;try{let O=B?O7(Z,B):[],_=V.trim(),L=await G(_,O,J,X);H.push({original:j,processed:L,startIndex:F})}catch(O){let _=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})`:""}: ${_}`,R0.EVALUATION_ERROR),startIndex:F})}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 eY($,Z,J,X,Y){let{name:Q,handler:G}=Z,z=$,K=[],q=[];if(Z.rawParams){for(let U of B7(z,R1(`(?<![\\w$@])@${Q}\\s*\\(`,"g")))if(U.end!==-1)q.push({fullMatch:U.call,paramString:U.args,startIndex:U.start})}else{let U=R1(`@${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=O7(Z,j),F=await G("",V,J,X);K.push({original:U,processed:F,startIndex:B})}catch(V){let F=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}): ${F}`,R0.EVALUATION_ERROR),startIndex:B})}let W=R1(`@${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}`,R0.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 O7($,Z){return $.rawParams?V7(Z):$Q(Z)}function $Q($){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 F7=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,_7=/^[A-Za-z_$][\w$]*$/,ZQ=new Set(["light","dark","system"]);function D1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function JQ($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,J=Z.appearance,X=Z.colorMode;if(D1(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(D1(J.key,"appearance.key"),D1(J.attribute,"appearance.attribute"),D1(J.default,"appearance.default"),D1(X.key,"colorMode.key"),D1(X.attribute,"colorMode.attribute"),D1(X.default,"colorMode.default"),!_7.test(J.key)||!_7.test(X.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!F7.test(J.attribute)||!F7.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(!ZQ.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 XQ($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function YQ($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${XQ($)};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 QQ($,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 w7($,Z){let J=$,X=/@appearanceBootstrap\s*\(/g,Y;while((Y=X.exec(J))!==null){let Q=Y.index+Y[0].length-1,G=QQ(J,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let z=J.slice(Q+1,G).trim(),K=X0(`(${z})`,Z),q=YQ(JQ(K));J=J.slice(0,Y.index)+q+J.slice(G+1),X.lastIndex=Y.index+q.length}return J}import GQ from"crypto";function M0($){return String($??"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var r5={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"};function zQ($){return{...r5,...$.forms?.classes}}function O9($,Z,J,X){let Y=$||Z;return J?`${Y} ${X}`:Y}function g0($){return String($).replace(/\[\]$/,"").replace(/[^\w.:-]+/g,"-").replace(/^-+|-+$/g,"")}function u1($,Z){if(/\bid\s*=/i.test($))return"";return` id="${M0(Z)}"`}function o5($,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="${M0(`${g0($)}-error`)}"`;return X}function KQ(){return GQ.randomUUID()}function iU($,Z,J,X){let Y=zQ(X),Q=$;return Q=WQ(Q,Z),Q=A2(Q,Z),Q=a5(Q,Z,Y),Q=t5(Q,Z,Y),Q}function A2($,Z){let J=$;return J=J.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let X=KQ();Z.csrf={token:X}}if(Z.csrf.field)return Z.csrf.field;if(Z.csrf.token)return`<input type="hidden" name="_token" value="${M0(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="${M0(Q)}">`;return X}),J}function a5($,Z,J=r5){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="${M0(B)}" action="${M0(H)}"${U?` ${U}`:""}>`;if(V+=`
|
|
3172
3172
|
${A2("@csrf",Z)}`,!["GET","POST"].includes(j))V+=`
|
|
3173
|
-
${A2(`@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 H=Q||G||"",W=z||K||"",U=q1(q),j=N2(H,Z),B=j!==void 0&&j!==null?j:W||"",V=U.match(/type=['"]([^'"]+)['"]/i),F=V?V[1]:"text",O=M2(H,Z),_=U.match(/class=['"]([^'"]+)['"]/i),L=O9(_?_[1]:"",J.input,O,J.inputError),w=U.replace(/class=['"][^'"]+['"]/i,"");return w=w.replace(/type=['"][^'"]+['"]/i,""),`<input type="${M0(F)}" name="${M0(H)}"${u1(U,g0(H))} value="${M0(B)}" class="${L}"${o5(H,O,U)}${w?` ${w}`:""}>`}),X=X.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(Y,Q,G="",z="")=>{let K=q1(G),q=N2(Q,Z)||z.trim(),H=M2(Q,Z),W=K.match(/class=['"]([^'"]+)['"]/i),U=O9(W?W[1]:"",J.input,H,J.inputError),j=K.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${M0(Q)}"${u1(K,g0(Q))} class="${U}"${o5(Q,H,K)}${j?` ${j}`:""}>${M0(q)}</textarea>`}),X=X.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(Y,Q,G="",z)=>{let K=q1(G),q=N2(Q,Z),H=M2(Q,Z),W=K.match(/class=['"]([^'"]+)['"]/i),U=O9(W?W[1]:"",J.input,H,J.inputError),j=K.replace(/class=['"][^'"]+['"]/i,""),B=z;if(q!==void 0)B=z.replace(/(<option[^>]*value=['"]([^'"]+)['"][^>]*>)/gi,(V,F,O)=>{if((Array.isArray(q)?q.some((L)=>String(L)===O):String(q)===O)&&!F.includes("selected"))return F.replace(/(<option)/,"$1 selected");return V});return`<select name="${M0(Q)}"${u1(K,g0(Q))} class="${U}"${o5(Q,H,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)}`,H=q1(z),W=N2(Q,Z),U=W!==void 0&&(Array.isArray(W)?W.some((F)=>String(F)===K):W===!0||String(W)===K),j=H.match(/class=['"]([^'"]+)['"]/i),B=j?j[1]:J.checkInput,V=H.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${M0(Q)}"${u1(H,q)} value="${M0(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=N2(Q,Z),H=q!==void 0&&q===G,W=K.match(/class=['"]([^'"]+)['"]/i),U=W?W[1]:J.checkInput,j=K.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${M0(Q)}"${u1(K,`${g0(Q)}-${g0(G)}`)} value="${M0(G)}" class="${U}"${H?" 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]:"",H=z.includes("multiple"),W=M2(Q,Z),U=z.match(/class=['"]([^'"]+)['"]/i),j=O9(U?U[1]:"",J.input,W,J.inputError),B=z.replace(/class=['"][^'"]+['"]/gi,"").replace(/accept=['"][^'"]+['"]/gi,"").replace(/\bmultiple\b/gi,"").trim(),V=[`<input type="file" name="${M0(Q)}"${u1(z,g0(Q))}`,`class="${j}"`];if(q)V.push(`accept="${M0(q)}"`);if(H)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),H=q?q[1]:J.label,W=K.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${M0(g0(Q))}" class="${H}"${W?` ${W}`:""}>${z}</label>`}),X}function t5($,Z,J=r5){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(X,Y,Q)=>{try{if(M2(Y,Z)){let G=Q.replace(/\{\{([^}]+)\}\}/g,(z,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return R7(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 R7(Y,Z)}let q=K.trim();if(B0(q)){let H=X0(q,Z);return H!==void 0?String(H):q}return q}catch{return K}});return`<div id="${M0(`${g0(Y)}-error`)}" role="alert">${G}</div>`}return""}catch(G){return console.error("Error processing @error directive:",G),X}})}function M2($,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 R7($,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 N2($,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 D7={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 pU($,Z){D7[$]=Z}function e5($){let[Z,...J]=$.split(":"),X=J.length>0?J.join(":").split(","):[];return{name:Z.trim(),params:X}}function zQ($,Z,J,X={}){let Y=[],Q=J.split("|").map((G)=>G.trim()).filter(Boolean);for(let G of Q){let z=e5(G),K=D7[z.name];if(!K){console.warn(`Unknown validation rule: ${z.name}`);continue}if(z.name==="confirmed"){let H=`${$}_confirmation`;z.params=[X[H]]}let q=K(Z,z.params||[],$);if(q)Y.push(z.message||q)}return{field:$,valid:Y.length===0,errors:Y}}function iU($,Z){let J={};for(let[X,Y]of Object.entries(Z)){let Q=zQ(X,$[X],Y,$);if(!Q.valid)J[X]=Q.errors}return J}function KQ($,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=e5(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 N7={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 nU($){N7[$.name]=$}function qQ($,Z,J={}){let X=[],Y=Z.split("|").map((Q)=>Q.trim());for(let Q of Y){let G=e5(Q),z=N7[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 sU($,Z){let J={},X=!0;for(let[Y,Q]of Object.entries(Z)){let G=qQ($[Y],Q,$);if(!G.valid)X=!1,J[Y]=G.errors}return{valid:X,errors:J}}function oU($,Z){let J=JSON.stringify(Z);return`
|
|
3173
|
+
${A2(`@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=N2(W,Z),B=j!==void 0&&j!==null?j:H||"",V=U.match(/type=['"]([^'"]+)['"]/i),F=V?V[1]:"text",O=M2(W,Z),_=U.match(/class=['"]([^'"]+)['"]/i),L=O9(_?_[1]:"",J.input,O,J.inputError),w=U.replace(/class=['"][^'"]+['"]/i,"");return w=w.replace(/type=['"][^'"]+['"]/i,""),`<input type="${M0(F)}" name="${M0(W)}"${u1(U,g0(W))} value="${M0(B)}" class="${L}"${o5(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=N2(Q,Z)||z.trim(),W=M2(Q,Z),H=K.match(/class=['"]([^'"]+)['"]/i),U=O9(H?H[1]:"",J.input,W,J.inputError),j=K.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${M0(Q)}"${u1(K,g0(Q))} class="${U}"${o5(Q,W,K)}${j?` ${j}`:""}>${M0(q)}</textarea>`}),X=X.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(Y,Q,G="",z)=>{let K=q1(G),q=N2(Q,Z),W=M2(Q,Z),H=K.match(/class=['"]([^'"]+)['"]/i),U=O9(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,F,O)=>{if((Array.isArray(q)?q.some((L)=>String(L)===O):String(q)===O)&&!F.includes("selected"))return F.replace(/(<option)/,"$1 selected");return V});return`<select name="${M0(Q)}"${u1(K,g0(Q))} class="${U}"${o5(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=N2(Q,Z),U=H!==void 0&&(Array.isArray(H)?H.some((F)=>String(F)===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="${M0(Q)}"${u1(W,q)} value="${M0(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=N2(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="${M0(Q)}"${u1(K,`${g0(Q)}-${g0(G)}`)} value="${M0(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=M2(Q,Z),U=z.match(/class=['"]([^'"]+)['"]/i),j=O9(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="${M0(Q)}"${u1(z,g0(Q))}`,`class="${j}"`];if(q)V.push(`accept="${M0(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="${M0(g0(Q))}" class="${W}"${H?` ${H}`:""}>${z}</label>`}),X}function t5($,Z,J=r5){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(X,Y,Q)=>{try{if(M2(Y,Z)){let G=Q.replace(/\{\{([^}]+)\}\}/g,(z,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return R7(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 R7(Y,Z)}let q=K.trim();if(B0(q)){let W=X0(q,Z);return W!==void 0?String(W):q}return q}catch{return K}});return`<div id="${M0(`${g0(Y)}-error`)}" role="alert">${G}</div>`}return""}catch(G){return console.error("Error processing @error directive:",G),X}})}function M2($,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 R7($,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 N2($,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 D7={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 nU($,Z){D7[$]=Z}function e5($){let[Z,...J]=$.split(":"),X=J.length>0?J.join(":").split(","):[];return{name:Z.trim(),params:X}}function qQ($,Z,J,X={}){let Y=[],Q=J.split("|").map((G)=>G.trim()).filter(Boolean);for(let G of Q){let z=e5(G),K=D7[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 sU($,Z){let J={};for(let[X,Y]of Object.entries(Z)){let Q=qQ(X,$[X],Y,$);if(!Q.valid)J[X]=Q.errors}return J}function WQ($,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=e5(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 N7={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 oU($){N7[$.name]=$}function HQ($,Z,J={}){let X=[],Y=Z.split("|").map((Q)=>Q.trim());for(let Q of Y){let G=e5(Q),z=N7[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 rU($,Z){let J={},X=!0;for(let[Y,Q]of Object.entries(Z)){let G=HQ($[Y],Q,$);if(!G.valid)X=!1,J[Y]=G.errors}return{valid:X,errors:J}}function aU($,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 I2=/<\/?template\b[^>]*>/gi,WQ=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i;function HQ($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return WQ.test(Z)}function F9($){I2.lastIndex=0;let Z;while((Z=I2.exec($))!==null){if(Z[0].startsWith("</")||HQ(Z[0]))continue;let J=Z.index,X=I2.lastIndex,Y=1,Q;while((Q=I2.exec($))!==null)if(Q[0].startsWith("</")){if(Y--,Y===0){let G=Q.index;return{start:J,openEnd:X,closeStart:G,end:I2.lastIndex,content:$.slice(X,G)}}}else Y++;return null}return null}import K0 from"path";import{existsSync as pQ}from"fs";import _9 from"fs";import V0 from"path";var M7=new Map;function w9($,Z=!0){let J=M7.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=_9.readdirSync(G,{withFileTypes:!0})}catch{return}for(let q of K){let H=V0.join(G,q.name);if(q.isDirectory()){if(q.name==="node_modules"||q.name.startsWith("."))continue;Q(H,z+1)}else if(q.isFile()&&q.name.endsWith(".stx")){let W=q.name.slice(0,-4);if(!X.has(W))X.set(W,H);let U=W.toLowerCase();if(!X.has(U))X.set(U,H);let j=W.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(!X.has(j))X.set(j,H)}}}for(let G of Y)if(Q(G,0),X.size>0)break;if(Z)M7.set($,X);return X}function R9($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let J=Z;while(!0){let X=V0.join(J,"node_modules",$);try{if(_9.statSync(X).isDirectory())return X}catch{}let Y=V0.dirname(J);if(Y===J)return null;J=Y}}function D9($,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 A7($){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 $$($,Z){let[J,X,Y]=A7($);for(let Q of[J,J.toLowerCase(),X,Y]){let G=Z?.__importedComponents?.get(Q);if(G!==void 0)return G}}function*Z$($,Z,J={},X){let Y=A7($);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 _9.readdirSync(K,{withFileTypes:!0}))if(q.isDirectory())for(let H of Q)yield V0.join(K,q.name,H)}catch{}}}function I7($,Z,J={},X){let Y=$$($,X);if(Y!==void 0)return Y;for(let Q of Z$($,Z,J,X))try{if(_9.statSync(Q,{throwIfNoEntry:!1})?.isFile())return Q}catch{}return null}class T7{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=$$($,X);if(Y!==void 0)return Y;for(let Q of Z$($,Z,J,X))if(await t(Q))return Q;return null}}var m1=new T7;function I0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var N1="\x00stx-boolean-attribute";function J$($){return $.indexOf("\x00")===-1?$:$.replace(/\0/g,"")}function d1($,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===N1){J.push(I0(Q));continue}J.push(`${I0(Q)}="${I0(J$(String(Y)))}"`)}return J}function l1($,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(J$(String(Y)))}"`)}return J}function c1($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function UQ($){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 X$={name:"StxLink",aliases:["stx-link"],render($,Z,J){let X=UQ($),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="${c1(X.value)}"`);else K.push(`href="${c1(q2(X.value,"navigable"))}"`);if(Y)K.push(`class="${c1(Y)}"`);if(K.push("data-stx-link"),K.push(`data-stx-active-class="${c1(Q)}"`),K.push(`data-stx-exact-active-class="${c1(G)}"`),z)K.push("data-stx-prefetch");let q=typeof $.static.activeMatch==="string"?$.static.activeMatch.trim():"";if(q)K.push(`data-stx-active-match="${c1(q)}"`);let H=new Set(["to","class","className","activeClass","exactActiveClass","activeMatch","prefetch"]);return K.push(...d1($,H)),K.push(...l1($,H)),`<a ${K.join(" ")}>${Z}</a>`}};import p1 from"fs";import Y$ from"path";var jQ=new Set([".jpg",".jpeg",".png",".webp",".avif"]),n0=new Map,M1=!1;function Q$($){if(!$)return;let Z=$.split("?")[0].split("#")[0];return n0.get(Z)}function Lj(){return M1}function Oj(){n0.clear(),M1=!1}function Fj($,Z){n0.set($,Z),M1=!0}function BQ($){for(let Z=3;Z<$.length;Z+=4)if($[Z]<255)return!0;return!1}function VQ($){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 LQ($,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)),H=Math.floor(G*J/Y),W=Math.max(H+1,Math.floor((G+1)*J/Y)),U=0,j=0,B=0,V=0;for(let O=H;O<W;O++)for(let _=K;_<q;_++){let L=(O*Z+_)*4;U+=$[L],j+=$[L+1],B+=$[L+2],V++}let F=(O)=>Math.round(O/V).toString(16).padStart(2,"0");Q.push(`<rect x="${z}" y="${G}" width="1" height="1" fill="#${F(U)}${F(j)}${F(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 OQ($){return`data:image/svg+xml;base64,${Buffer.from($,"utf8").toString("base64")}`}function FQ($){try{return JSON.parse(p1.readFileSync($,"utf8"))}catch{return{}}}function _Q($,Z){try{p1.mkdirSync(Y$.dirname($),{recursive:!0}),p1.writeFileSync($,JSON.stringify(Z))}catch{}}function y7($,Z,J=[]){let X;try{X=p1.readdirSync($,{withFileTypes:!0})}catch{return J}for(let Y of X){let Q=Y$.join($,Y.name);if(Y.isDirectory()){y7(Q,`${Z}/${Y.name}`,J);continue}if(!jQ.has(Y$.extname(Y.name).toLowerCase()))continue;J.push([`${Z}/${Y.name}`,Q])}return J}async function _j($,Z={}){let{cachePath:J,maxBytes:X=33554432,limit:Y=2000,offThread:Q}=Z;if(!$||!p1.existsSync($))return M1=!0,n0.size;if(Q){let U=await b7("placeholders",{publicDir:$,options:{cachePath:J,maxBytes:X,limit:Y}});if(U!==E7){for(let[j,B]of U.placeholders)n0.set(j,B);return M1=!0,n0.size}}let G;try{G=await import("ts-images")}catch{return M1=!0,n0.size}let z=J?FQ(J):{},K=!1,q=y7($,"").slice(0,Y),H=8,W=async([U,j])=>{let B;try{B=p1.statSync(j)}catch{return}if(B.size>X)return;let V=z[U];if(V&&V.mtimeMs===B.mtimeMs&&V.size===B.size){let F=V.transparent;if(typeof F!=="boolean"&&k7(j)==="none")F=!1,z[U]={...V,transparent:F},K=!0;if(typeof F==="boolean"){n0.set(U,{dataUrl:V.dataUrl,color:V.color,transparent:F});return}}try{let{hash:F}=await G.generateThumbHash(j);if(!F)return;let{rgba:O,w:_,h:L}=G.thumbHashToRGBA(F),w={dataUrl:OQ(LQ(O,_,L)),color:VQ(O),transparent:BQ(O)};n0.set(U,w),z[U]={mtimeMs:B.mtimeMs,size:B.size,...w},K=!0}catch{}};for(let U=0;U<q.length;U+=H)await Promise.all(q.slice(U,U+H).map(W));if(J&&K)_Q(J,z);return M1=!0,n0.size}var wQ={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},G$=[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 N9($,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 RQ($){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=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 K$($,Z,J,X){return Z.map((Y)=>`${T2($,Y,void 0,J,X)} ${Y}w`).join(", ")}function DQ($,Z,J,X,Y){return Z.map((Q)=>{let G=J?J*Q:void 0;return`${T2($,G,void 0,X,Y)} ${Q}x`}).join(", ")}function T2($,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 NQ($){return`var s=this.style;${$.map((Z)=>`s.${Z}=''`).join(";")}`}function MQ($,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 q$={name:"StxImage",aliases:["Image","stx-image","stx-img"],render($,Z,J){let X=E0($,"src")||"",Y=C7(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"),H=E0($,"densities"),W=E0($,"format"),U=S7(X)||Q$(X)?.transparent===!0,j=E0($,"placeholder")||(Y&&!U?"thumbhash":void 0),B=E0($,"placeholderColor")||"#e5e7eb",V=E0($,"provider"),F=E0($,"class")||E0($,"className")||"",O=E0($,"style")||"",_=E0($,"quality"),L=N9($,"lazy",!0),w=N9($,"preload",!1),D=N9($,"priority",!1),R=E0($,"loading"),M=E0($,"decoding")||"async",T=!!Y||N9($,"picture",!1)||!!W,N=G?Number.parseInt(G):void 0,I=z?Number.parseInt(z):void 0,E=q||"",A="";if(Y)E=Y.sources[Y.fallback.format]||"",A=K?z$(K):"100vw";else if(!E&&K&&V&&V!=="local"&&V!=="static")E=K$(X,G$,V,W),A=z$(K);else if(!E&&H){let e=H.split(/\s+/).map((Y0)=>Number.parseFloat(Y0.replace("x","")));E=DQ(X,e,N,V,W)}else if(K)A=z$(K);let k=[];if(O)k.push(O);if(N&&I)k.push(`aspect-ratio:${N}/${I}`);let C=[],y=j==="blur"||j==="color"||j==="thumbhash";if(y&&!U){let e=Y?.placeholder?{dataUrl:Y.placeholder.dataUrl,color:B}:Q$(X);if(e&&j==="color")k.push(`background-color:${e.color}`),C.push("backgroundColor");else if(e)k.push(`background-color:${e.color}`),k.push(`background-image:url(${e.dataUrl})`),k.push("background-size:cover"),k.push("background-repeat:no-repeat"),C.push("backgroundColor","backgroundImage");else{let Y0=MQ(N||16,I||9,B);k.push(`background-image:url(${Y0})`),k.push("background-size:cover"),k.push("background-repeat:no-repeat"),C.push("backgroundImage")}}else if(!y&&j&&j!=="empty"&&j!=="none")k.push(`background-image:url(${F0(j)})`),k.push("background-size:cover"),k.push("background-repeat:no-repeat"),C.push("backgroundImage");let b=Y?.fallback.url||T2(X,N,I,V,W),P=[];if(P.push(`src="${F0(q2(b,"fetched"))}"`),P.push(`alt="${F0(Q)}"`),G)P.push(`width="${F0(G)}"`);if(z)P.push(`height="${F0(z)}"`);let h=R||(D||w?"eager":L?"lazy":"");if(h)P.push(`loading="${F0(h)}"`);if(D)P.push('fetchpriority="high"');if(P.push(`decoding="${F0(M)}"`),F)P.push(`class="${F0(F)}"`);if(k.length>0)P.push(`style="${F0(k.join(";"))}"`);if(E)P.push(`srcset="${F0(q2(E,"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 e=typeof $.static.onload==="string"?$.static.onload:"",Y0=NQ(C)+(e?`;${e}`:"");P.push(`onload="${F0(Y0)}"`),p.add("onload")}P.push(...d1($,p)),P.push(...l1($,p));let u=`<img ${P.join(" ")} />`,r="";if(w){let Y0=W==="webp"?"image/webp":W==="avif"?"image/avif":"";r=`<link rel="preload" as="image" href="${F0(b)}"${Y0?` type="${Y0}"`:""}${E?` imagesrcset="${F0(E)}"`:""}${A?` imagesizes="${F0(A)}"`:""} />
|
|
3226
|
-
`}if(T){let e=[];if(Y)for(let Y0 of
|
|
3225
|
+
</script>`.trim()}var I2=/<\/?template\b[^>]*>/gi,UQ=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i;function jQ($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return UQ.test(Z)}function F9($){I2.lastIndex=0;let Z;while((Z=I2.exec($))!==null){if(Z[0].startsWith("</")||jQ(Z[0]))continue;let J=Z.index,X=I2.lastIndex,Y=1,Q;while((Q=I2.exec($))!==null)if(Q[0].startsWith("</")){if(Y--,Y===0){let G=Q.index;return{start:J,openEnd:X,closeStart:G,end:I2.lastIndex,content:$.slice(X,G)}}}else Y++;return null}return null}import K0 from"path";import{existsSync as nQ}from"fs";import _9 from"fs";import V0 from"path";var M7=new Map;function w9($,Z=!0){let J=M7.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=_9.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)M7.set($,X);return X}function R9($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let J=Z;while(!0){let X=V0.join(J,"node_modules",$);try{if(_9.statSync(X).isDirectory())return X}catch{}let Y=V0.dirname(J);if(Y===J)return null;J=Y}}function D9($,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 A7($){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 $$($,Z){let[J,X,Y]=A7($);for(let Q of[J,J.toLowerCase(),X,Y]){let G=Z?.__importedComponents?.get(Q);if(G!==void 0)return G}}function*Z$($,Z,J={},X){let Y=A7($);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 _9.readdirSync(K,{withFileTypes:!0}))if(q.isDirectory())for(let W of Q)yield V0.join(K,q.name,W)}catch{}}}function I7($,Z,J={},X){let Y=$$($,X);if(Y!==void 0)return Y;for(let Q of Z$($,Z,J,X))try{if(_9.statSync(Q,{throwIfNoEntry:!1})?.isFile())return Q}catch{}return null}class T7{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=$$($,X);if(Y!==void 0)return Y;for(let Q of Z$($,Z,J,X))if(await t(Q))return Q;return null}}var m1=new T7;function I0($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var N1="\x00stx-boolean-attribute";function J$($){return $.indexOf("\x00")===-1?$:$.replace(/\0/g,"")}function d1($,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===N1){J.push(I0(Q));continue}J.push(`${I0(Q)}="${I0(J$(String(Y)))}"`)}return J}function l1($,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(J$(String(Y)))}"`)}return J}function c1($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function BQ($){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 X$={name:"StxLink",aliases:["stx-link"],render($,Z,J){let X=BQ($),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="${c1(X.value)}"`);else K.push(`href="${c1(q2(X.value,"navigable"))}"`);if(Y)K.push(`class="${c1(Y)}"`);if(K.push("data-stx-link"),K.push(`data-stx-active-class="${c1(Q)}"`),K.push(`data-stx-exact-active-class="${c1(G)}"`),z)K.push("data-stx-prefetch");let q=typeof $.static.activeMatch==="string"?$.static.activeMatch.trim():"";if(q)K.push(`data-stx-active-match="${c1(q)}"`);let W=new Set(["to","class","className","activeClass","exactActiveClass","activeMatch","prefetch"]);return K.push(...d1($,W)),K.push(...l1($,W)),`<a ${K.join(" ")}>${Z}</a>`}};import p1 from"fs";import Y$ from"path";var VQ=new Set([".jpg",".jpeg",".png",".webp",".avif"]),n0=new Map,M1=!1;function Q$($){if(!$)return;let Z=$.split("?")[0].split("#")[0];return n0.get(Z)}function Fj(){return M1}function _j(){n0.clear(),M1=!1}function wj($,Z){n0.set($,Z),M1=!0}function LQ($){for(let Z=3;Z<$.length;Z+=4)if($[Z]<255)return!0;return!1}function OQ($){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 FQ($,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 _=K;_<q;_++){let L=(O*Z+_)*4;U+=$[L],j+=$[L+1],B+=$[L+2],V++}let F=(O)=>Math.round(O/V).toString(16).padStart(2,"0");Q.push(`<rect x="${z}" y="${G}" width="1" height="1" fill="#${F(U)}${F(j)}${F(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 _Q($){return`data:image/svg+xml;base64,${Buffer.from($,"utf8").toString("base64")}`}function wQ($){try{return JSON.parse(p1.readFileSync($,"utf8"))}catch{return{}}}function RQ($,Z){try{p1.mkdirSync(Y$.dirname($),{recursive:!0}),p1.writeFileSync($,JSON.stringify(Z))}catch{}}function b7($,Z,J=[]){let X;try{X=p1.readdirSync($,{withFileTypes:!0})}catch{return J}for(let Y of X){let Q=Y$.join($,Y.name);if(Y.isDirectory()){b7(Q,`${Z}/${Y.name}`,J);continue}if(!VQ.has(Y$.extname(Y.name).toLowerCase()))continue;J.push([`${Z}/${Y.name}`,Q])}return J}async function Rj($,Z={}){let{cachePath:J,maxBytes:X=33554432,limit:Y=2000,offThread:Q}=Z;if(!$||!p1.existsSync($))return M1=!0,n0.size;if(Q){let U=await y7("placeholders",{publicDir:$,options:{cachePath:J,maxBytes:X,limit:Y}});if(U!==E7){for(let[j,B]of U.placeholders)n0.set(j,B);return M1=!0,n0.size}}let G;try{G=await import("ts-images")}catch{return M1=!0,n0.size}let z=J?wQ(J):{},K=!1,q=b7($,"").slice(0,Y),W=8,H=async([U,j])=>{let B;try{B=p1.statSync(j)}catch{return}if(B.size>X)return;let V=z[U];if(V&&V.mtimeMs===B.mtimeMs&&V.size===B.size){let F=V.transparent;if(typeof F!=="boolean"&&k7(j)==="none")F=!1,z[U]={...V,transparent:F},K=!0;if(typeof F==="boolean"){n0.set(U,{dataUrl:V.dataUrl,color:V.color,transparent:F});return}}try{let{hash:F}=await G.generateThumbHash(j);if(!F)return;let{rgba:O,w:_,h:L}=G.thumbHashToRGBA(F),w={dataUrl:_Q(FQ(O,_,L)),color:OQ(O),transparent:LQ(O)};n0.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)RQ(J,z);return M1=!0,n0.size}var DQ={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},G$=[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 N9($,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 NQ($){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=DQ[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 K$($,Z,J,X){return Z.map((Y)=>`${T2($,Y,void 0,J,X)} ${Y}w`).join(", ")}function MQ($,Z,J,X,Y){return Z.map((Q)=>{let G=J?J*Q:void 0;return`${T2($,G,void 0,X,Y)} ${Q}x`}).join(", ")}function T2($,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 AQ($){return`var s=this.style;${$.map((Z)=>`s.${Z}=''`).join(";")}`}function IQ($,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 q$={name:"StxImage",aliases:["Image","stx-image","stx-img"],render($,Z,J){let X=E0($,"src")||"",Y=C7(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=S7(X)||Q$(X)?.transparent===!0,j=E0($,"placeholder")||(Y&&!U?"thumbhash":void 0),B=E0($,"placeholderColor")||"#e5e7eb",V=E0($,"provider"),F=E0($,"class")||E0($,"className")||"",O=E0($,"style")||"",_=E0($,"quality"),L=N9($,"lazy",!0),w=N9($,"preload",!1),R=N9($,"priority",!1),D=E0($,"loading"),N=E0($,"decoding")||"async",T=!!Y||N9($,"picture",!1)||!!H,M=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=K$(X,G$,V,H),A=z$(K);else if(!k&&W){let e=W.split(/\s+/).map((Y0)=>Number.parseFloat(Y0.replace("x","")));k=MQ(X,e,M,V,H)}else if(K)A=z$(K);let E=[];if(O)E.push(O);if(M&&I)E.push(`aspect-ratio:${M}/${I}`);let C=[],b=j==="blur"||j==="color"||j==="thumbhash";if(b&&!U){let e=Y?.placeholder?{dataUrl:Y.placeholder.dataUrl,color:B}:Q$(X);if(e&&j==="color")E.push(`background-color:${e.color}`),C.push("backgroundColor");else if(e)E.push(`background-color:${e.color}`),E.push(`background-image:url(${e.dataUrl})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundColor","backgroundImage");else{let Y0=IQ(M||16,I||9,B);E.push(`background-image:url(${Y0})`),E.push("background-size:cover"),E.push("background-repeat:no-repeat"),C.push("backgroundImage")}}else if(!b&&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 y=Y?.fallback.url||T2(X,M,I,V,H),P=[];if(P.push(`src="${F0(q2(y,"fetched"))}"`),P.push(`alt="${F0(Q)}"`),G)P.push(`width="${F0(G)}"`);if(z)P.push(`height="${F0(z)}"`);let h=D||(R||w?"eager":L?"lazy":"");if(h)P.push(`loading="${F0(h)}"`);if(R)P.push('fetchpriority="high"');if(P.push(`decoding="${F0(N)}"`),F)P.push(`class="${F0(F)}"`);if(E.length>0)P.push(`style="${F0(E.join(";"))}"`);if(k)P.push(`srcset="${F0(q2(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 e=typeof $.static.onload==="string"?$.static.onload:"",Y0=AQ(C)+(e?`;${e}`:"");P.push(`onload="${F0(Y0)}"`),p.add("onload")}P.push(...d1($,p)),P.push(...l1($,p));let u=`<img ${P.join(" ")} />`,r="";if(w){let Y0=H==="webp"?"image/webp":H==="avif"?"image/avif":"";r=`<link rel="preload" as="image" href="${F0(y)}"${Y0?` type="${Y0}"`:""}${k?` imagesrcset="${F0(k)}"`:""}${A?` imagesizes="${F0(A)}"`:""} />
|
|
3226
|
+
`}if(T){let e=[];if(Y)for(let Y0 of NQ(Y))e.push(`<source type="image/${Y0.format}" srcset="${F0(Y0.srcset)}"${A?` sizes="${F0(A)}"`:""} />`);if(!Y&&(H==="avif"||H==="auto")){let Y0=T2(X,M,I,V,"avif"),i=k?K$(X,G$,V,"avif"):`${Y0}`;e.push(`<source type="image/avif" srcset="${F0(i)}"${A?` sizes="${F0(A)}"`:""} />`)}if(!Y&&(H==="webp"||H==="auto")){let Y0=T2(X,M,I,V,"webp"),i=k?K$(X,G$,V,"webp"):`${Y0}`;e.push(`<source type="image/webp" srcset="${F0(i)}"${A?` sizes="${F0(A)}"`:""} />`)}return`${r}<picture>
|
|
3227
3227
|
${e.join(`
|
|
3228
3228
|
`)}
|
|
3229
3229
|
${u}
|
|
3230
|
-
</picture>`}return`${r}${u}`}};var P7="/images/safe-image-default.svg";function k2($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function i1($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var
|
|
3230
|
+
</picture>`}return`${r}${u}`}};var P7="/images/safe-image-default.svg";function k2($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function i1($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var TQ=`<script>window.__stxSafeImageHandler||(window.__stxSafeImageHandler=function(i){if(i.__stx_fb)return;i.__stx_fb=1;var f=i.getAttribute('data-fallback')||'${P7}';var c=i.getAttribute('data-fallback-class');i.src=f;if(c)i.className=c;});</script>`,W$={name:"SafeImage",aliases:["safe-image","safe-img"],render($,Z,J){let X=i1($,"src")||"",Y=i1($,"alt")||"",Q=i1($,"fallback")||P7,G=i1($,"class")||i1($,"className")||"",z=i1($,"fallbackClassName")||"",K=[];if(K.push(`src="${k2(X)}"`),K.push(`alt="${k2(Y)}"`),G)K.push(`class="${k2(G)}"`);if(K.push(`data-fallback="${k2(Q)}"`),z)K.push(`data-fallback-class="${k2(z)}"`);K.push('onerror="window.__stxSafeImageHandler(this)"');let q=new Set(["src","alt","fallback","class","className","fallbackClassName"]);K.push(...d1($,q)),K.push(...l1($,q));let W=`<img ${K.join(" ")} />`,H=J.context;if(!H.__safeImageHandlerEmitted)return H.__safeImageHandlerEmitted=!0,`${TQ}${W}`;return W}};function H$($){return $.replace(/[;{}()]/g,"").replace(/url/gi,"")}function E2($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}function M9($,Z,J){let X=E2($,Z);if(X!==void 0){let Y=Number.parseInt(X,10);if(!Number.isNaN(Y))return Y}return J}var U$={name:"StxLoadingIndicator",aliases:["stx-loading-indicator"],render($,Z,J){let X=H$(E2($,"color")||"#6366f1"),Y=H$(E2($,"initialColor")||E2($,"initial-color")||""),Q=H$(E2($,"height")||"3px"),G=M9($,"duration",2000),z=M9($,"throttle",200),K=M9($,"zIndex",999999)||M9($,"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 x7($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}function
|
|
3237
|
+
</script>`}};function x7($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}function kQ($,Z,J){let X=x7($,Z);if(X!==void 0){let Y=Number.parseInt(X,10);if(!Number.isNaN(Y))return Y}return J}var v7={"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%)"},j$={name:"StxToast",aliases:["stx-toast"],render($,Z,J){let X=I0(x7($,"position")||"top-right"),Y=kQ($,"max",5),Q=v7[X]||v7["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%)}}
|
|
@@ -3251,8 +3251,8 @@ ${u}
|
|
|
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 n1($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var g7={sm:"16rem",md:"24rem",lg:"32rem",xl:"40rem"},V$={name:"StxDrawer",aliases:["stx-drawer"],render($,Z,J){let X=n1($,"id");if(!X)return console.warn('[stx] <StxDrawer> requires an "id" prop'),"<!-- StxDrawer: missing id prop -->";let Y=I0(X),Q=n1($,"side")||"right",G=n1($,"size")||"md",z=n1($,"closeOnBackdrop")!=="false",K=n1($,"closeOnEscape")!=="false",q=n1($,"overlay")!=="false",
|
|
3255
|
-
<div class="stx-drawer-panel" style="position:fixed;top:0;bottom:0;${U};width:${
|
|
3254
|
+
</style>`}};function n1($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let J=$.static[Z];if(typeof J==="string")return J;return}var g7={sm:"16rem",md:"24rem",lg:"32rem",xl:"40rem"},V$={name:"StxDrawer",aliases:["stx-drawer"],render($,Z,J){let X=n1($,"id");if(!X)return console.warn('[stx] <StxDrawer> requires an "id" prop'),"<!-- StxDrawer: missing id prop -->";let Y=I0(X),Q=n1($,"side")||"right",G=n1($,"size")||"md",z=n1($,"closeOnBackdrop")!=="false",K=n1($,"closeOnEscape")!=="false",q=n1($,"overlay")!=="false",W=g7[G]||g7.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 @@ ${u}
|
|
|
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 EQ,readFileSync as yQ}from"fs";var A1=new Map,h7=new Set;function u7($){if(h7.has($))return;h7.add($),console.warn(`[stx] icon collection "${$}" is not installed, so its icons render as nothing. Install it with \`bun add -d @iconify-json/${$}\`.`)}function m7($){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(EQ(J))return J;for(let J of[`@iconify-json/${$}/icons.json`,`@iconify/json/json/${$}.json`])try{return x.resolve(J)}catch{}return null}function bQ($){if(A1.has($))return A1.get($);let Z=m7($);if(!Z)return u7($),null;try{let J=JSON.parse(yQ(Z,"utf8"));return A1.set($,J.icons),J.icons}catch{return null}}async function CQ($,Z=!1){if(A1.has($))return A1.get($);let J=m7($);if(!J){if(!Z)u7($);return null}try{let X=await Bun.file(J).json();return A1.set($,X.icons),X.icons}catch{return null}}function s1($,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 L$={name:"Icon",aliases:["icon","stx-icon"],render($,Z,J){let X=s1($,"name")??s1($,"icon");if(!X)return"<!-- Icon: missing name/icon prop -->";let Y="lucide",Q=X;if(X.includes(":")){let _=X.split(":");Y=_[0],Q=_[1]}let G=I0(s1($,"size")||"24"),z=I0(s1($,"color")||"currentColor"),K=I0(s1($,"class")||""),q=I0(s1($,"style")||""),W=A1.get(Y)??bQ(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 F=K?` class="${K}"`:"",O=q?` style="${q}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${G}" height="${G}" viewBox="${B}" fill="none"${F}${O}>${V}</svg>`}};async function SQ($="lucide",Z={}){await CQ($,Z.speculative??!0)}function O$(){return`
|
|
3264
3264
|
(function(){
|
|
3265
3265
|
var tip=null,hideTimer=null,currentEl=null;
|
|
3266
3266
|
|
|
@@ -3363,9 +3363,9 @@ document.addEventListener("focusout",function(e){
|
|
|
3363
3363
|
if(el) hideTip();
|
|
3364
3364
|
});
|
|
3365
3365
|
})();
|
|
3366
|
-
`}function d7($,...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 l7($,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 F$={name:"Suspense",aliases:["suspense"],render($,Z,J){let X=l7(Z,"fallback"),Y=X.rest,Q=l7(Y,"error"),G=Q.rest,z=X.region??d7($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',K=Q.region??d7($,"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 I9($,...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 _$={name:"TransitionGroup",aliases:["transition-group"],render($,Z,J){let X=(I9($,"name")||"v").replace(/["'<>]/g,""),Y=(I9($,"tag")||"div").replace(/[^a-z0-9-]/gi,"")||"div",Q=I9($,"class"),G=I9($,"id"),z=[`data-stx-transition-group="${X}"`,Q?`class="${Q}"`:"",G?`id="${G}"`:""].filter(Boolean).join(" ");return`<${Y} ${z}>${Z}</${Y}>`}};function c7($=m1){$.registerBuiltin(X$),$.registerBuiltin(q$),$.registerBuiltin(W$),$.registerBuiltin(U$),$.registerBuiltin(j$),$.registerBuiltin(B$),$.registerBuiltin(V$),$.registerBuiltin(L$),$.registerBuiltin(F$),$.registerBuiltin(_$)}function T9($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").toLowerCase()}var p7=new Map;function
|
|
3367
|
-
`||N==="\t")_++;L=M+F.length}else{if(_--,_===0){w=T;break}L=T+O.length}}if(w===-1){Y=j;continue}let D=$.slice(j,w),R=w+O.length;X.push({fullMatch:$.slice(G,R),tagName:q,attributes:V,content:D,startIndex:G,endIndex:R,isSelfClosing:!1}),Y=R}}return X}function o7($){return $.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/�?39;/g,"'").replace(/'/gi,"'").replace(/&/g,"&")}function r7($,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 w$($,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 a7($){let Z=$.trim();if(!Z.startsWith("{")||!Z.endsWith("}"))return null;if(w$(Z,0).length!==Z.length)return null;return Z.slice(1,-1).trim()}var SQ=new Set(["disabled","checked","readonly","required","autofocus","autoplay","controls","default","defer","formnovalidate","hidden","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","reversed","selected"]),PQ=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function R$($){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("/>")||PQ.has(z)){Z.push([Q,G]);continue}let K=z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),q=new RegExp(`<\\/?${K}\\b(?:[^>"']|"[^"]*"|'[^']*')*>`,"gi");q.lastIndex=G;let H=1,W=G,U;while((U=q.exec($))!==null)if(U[0].startsWith("</")){if(H--,H===0){W=U.index+U[0].length;break}}else if(!U[0].endsWith("/>"))H++;Z.push([Q,W])}return Z}function e7($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>e7(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function $6($,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(...R$($));function G(W){return Y.some(([U,j])=>W>=U&&W<j)}let z=/<([a-zA-Z][a-zA-Z0-9-]*)\b((?:[^>"']|"[^"]*"|'[^']*')*)\s*\/?>/g,K=[],q=new Map,H=256;while((Q=z.exec(J))!==null){if(G(Q.index))continue;let W=Q[0],U=Q[2];if(!U||!U.includes(":"))continue;let j=/\s:([a-zA-Z_][\w-]*)\s*=\s*"([^"]*)"/g,B,V=U,F=!1;while((B=j.exec(U))!==null){let O=B[1],_=B[2];if(t7(O))continue;if(_.includes("()")&&!_.includes(".get(")||_.includes("$store")||_.includes("$ref"))continue;try{let L=Object.keys(Z),w=Object.values(Z),D=_.match(/^([a-zA-Z_$][\w$]*)/);if(D&&!L.includes(D[1])&&!["true","false","null","undefined","Math","JSON","String","Number","Array","Object","Date","parseInt","parseFloat"].includes(D[1]))continue;let R=JSON.stringify([L,_]),M=q.get(R);if(!M){if(M=Function(...L,`return (${_})`),q.size>=H)q.clear();q.set(R,M)}let T=M(...w);if(O==="class"){let N=e7(T);if(N){let I=V.match(/\sclass="([^"]*)"/);if(I)V=V.replace(I[0],` class="${I[1]} ${N}"`);else V=V.replace(B[0],` class="${N}"`)}else V=V.replace(B[0],"");F=!0;continue}if(SQ.has(O)){if(T)V=V.replace(B[0],` ${O}`);else V=V.replace(B[0],"");F=!0;continue}if(T===null||T===void 0||T===!1)V=V.replace(B[0],"");else{let N=String(T).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">");V=V.replace(B[0],` ${O}="${N}"`)}F=!0}catch{continue}}if(F){let O=W.endsWith("/>")?" /":"",L=`<${Q[1]}${V}${O}>`;K.push({start:Q.index,end:Q.index+W.length,replacement:L})}}if(K.length>0){let W=Array(K.length*2+1),U=0;for(let j=0;j<K.length;j++){let{start:B,end:V,replacement:F}=K[j];W[j*2]=J.slice(U,B),W[j*2+1]=F,U=V}W[K.length*2]=J.slice(U),J=W.join("")}return J}import Z6 from"fs";import J6 from"path";var b2=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 y2($){if($.includes("-")||$==="component")return!1;if(/^[A-Z]/.test($))return!/[a-z]/.test($)&&[...b2].some((Z)=>Z.toLowerCase()===$.toLowerCase());return b2.has($)||/[A-Z]/.test($)}var X6=!1;function vQ($,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=(H)=>{if(Q.size===0)return!1;let W=z0(H),U=W.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(W))return!0}return!1},z=new Set(G6),K=(H)=>{if(!H.includes("-")||H.startsWith("@")||H.startsWith(":")||H.startsWith("x-")||H.startsWith("__"))return H;if(H.startsWith("aria-")||H.startsWith("data-"))return H;return H.replace(/-([a-z0-9])/g,(W,U)=>U.toUpperCase())},q=(H,W)=>{let U=K(H);if(Y.static[U]=W,U!==H)Y.staticNames[U]=H};for(let[H,W]of Object.entries($)){let U=H.startsWith("x-")&&!z.has(H)&&!H.startsWith("x-bind:")&&!H.startsWith("x-on:")?`:${H.slice(2)}`:H;if(U.startsWith("@")){Y.events[U]=W;continue}if(U.startsWith("__stx_")){let j=K(U.slice(6));Y.serverDynamic[j]=r7(W,J);continue}if(U.startsWith(":")){let j=K(U.slice(1)),B=W===N1?j:W;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(!B0(B)){if(J.debug)console.error(`Unsafe expression in :${j} binding: ${B}`);Y.clientReactive[j]=B;continue}let V=Object.keys(Z),O=U0(B,V)(...Object.values(Z));if(O===void 0){let _=new Set(["true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","if","else"]);if(E9(B).some((w)=>!_.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 W==="string"&&W.includes("{{")&&W.includes("}}")){let j=W.match(/^\{\{\s*([\s\S]+?)\s*\}\}$/);if(j)try{let B=j[1];if(B0(B)){let F=U0(B,Object.keys(Z))(...Object.values(Z));q(U,F!=null?String(F):"")}else{if(J.debug)console.error(`Unsafe expression in ${U}: ${B}`);q(U,W)}}catch(B){if(J.debug)console.error(`Error evaluating expression for ${U}:`,B);q(U,W)}else{let B=W,V=/\{\{\s*([\s\S]+?)\s*\}\}/g,F;while((F=V.exec(W))!==null)try{let O=F[1];if(!B0(O)){if(J.debug)console.error(`Unsafe expression in ${U}: ${O}`);continue}let L=U0(O,Object.keys(Z))(...Object.values(Z));B=B.replace(F[0],String(L??""))}catch(O){if(J.debug)console.error(`Error evaluating expression in ${U}:`,O)}q(U,B)}continue}q(U,W===N1?"true":o7(W))}return Y}var xQ=[[/@if\s*\(/,"@endif"],[/@unless\s*\(/,"@endunless"]];function fQ($,Z,J){if(!$.includes("@"))return $;if(!xQ.some(([Y,Q])=>Y.test($)&&$.includes(Q)))return $;try{return t0($,Z,J)}catch{return $}}function gQ($){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=w$($,J),J+=Q.length;let G=a7(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 Y6($){return Object.entries($).map(([Z,J])=>J===N1?Z:`${Z}="${hQ(J)}"`).join(" ")}function hQ($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function uQ($){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(m1.isBuiltin(Y))Z.add(Y)}return[...Z].sort()}async function mQ($,Z,J,X,Y){if(!/import\s/.test($))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=J6.dirname(J),z=[],K=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi;for(let W of $.matchAll(K)){let[U,j,B]=W,V=/import\s+(?:(\{[^}]*\})|([A-Za-z_$][\w$]*))\s+from\s+['"]([^'"]+)['"]\s*;?\s*\n?/g,F=B,O,_=[];while((O=V.exec(B))!==null){let[L,w,D,R]=O,M=null,T=null;if(R.startsWith(".")||R.startsWith("/")){let E=J6.resolve(G,R);if(E.endsWith(".stx"))T=E;else{let A=`${E}.stx`;try{if(Z6.statSync(A).isFile())T=A}catch{try{if(Z6.statSync(E).isDirectory())M=E}catch{}}}}else M=R9(R,G);if(!M&&!T)continue;let N=!1,I=(E,A)=>{Q.set(E,A),Q.set(E.toLowerCase(),A);let k=E.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();Q.set(k,A),Y.add(A)};if(D&&T)I(D,T),N=!0;else if(w){let E=w.slice(1,-1).split(",").map((k)=>k.trim()).filter(Boolean).map((k)=>{let C=k.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(C)return{source:C[1],local:C[2]};return{source:k,local:k}}),A=M?w9(M):null;for(let{source:k,local:C}of E){let y=null;if(T)y=T;else if(A)y=A.get(k)??A.get(k.toLowerCase())??A.get(k.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase())??null;if(y)I(C,y),N=!0}}if(N)_.push({start:O.index,end:O.index+L.length})}if(_.length===0)continue;for(let L=_.length-1;L>=0;L--)F=F.slice(0,_[L].start)+F.slice(_[L].end);z.push({start:W.index,end:W.index+U.length,value:`<script${j}>${F}</script>`})}if(z.length===0)return $;let q=[],H=0;for(let W of z)q.push($.slice(H,W.start),W.value),H=W.end;return q.push($.slice(H)),q.join("")}async function dQ($,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,H]=K,W=H.split(",").map((U)=>U.trim().replace(/^['"]|['"]$/g,"")).filter((U)=>U.length>0);for(let U of W){let j=U.split("/"),V=j[j.length-1].replace(/\.stx$/,""),F=V.includes("-")?V.split("-").map((L)=>L.charAt(0).toUpperCase()+L.slice(1)).join(""):V.charAt(0).toUpperCase()+V.slice(1),O=null,_=D9(U,J,X);for(let L of _)try{if(await Bun.file(L).exists()){O=L;break}}catch{}if(O){G.set(F,O),G.set(V,O),G.set(V.toLowerCase(),O);let L=F.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(G.set(L,O),Y.add(O),X.debug)console.log(`Imported component: ${F} -> ${O}`)}else if(X.debug)console.warn(`Could not resolve imported component: ${U}`)}Q=Q.replace(q,""),z.lastIndex=0}return Q}async function lQ($,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 H=q.index,W=H+q[0].length-1,U=1,j=W+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(W+1,j),V=j+1,F=B.match(/^\s*['"]([^'"]+)['"]/);if(!F){K.lastIndex=0;continue}let O=F[1],_,L=B.slice(F[0].length),w=L.match(/^\s*,\s*/);if(w)_=L.slice(w[0].length).trim();let D={};if(_)try{D=d0(_,Z)}catch(E){let A=E instanceof Error?E.message:String(E);Q=Q.replace(Q.substring(H,V),`[Error parsing component props: ${A}]`);continue}let R="",M=V,N=Q.substring(V).match(/^([\s\S]*?)@endcomponent/);if(N)R=N[1].trim(),M=V+N[0].length;let I=await I1(O,D,R,G,Z,J,X,z,Y);Q=Q.substring(0,H)+I+Q.substring(M),K.lastIndex=0}return Q}async function cQ($,Z,J,X,Y){if(!$)return $;let Q=$,G=X.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let z=Z.__processedComponents,K=x0(Q);Q=K.output;let q=R$(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,n7(b2)),Q=await j(Q,/[a-z][a-z0-9]*/,!1,b2),Q=K.restore(Q),Q;async function j(B,V,F,O){if(!B)return B;let _=B,L=s7(_,V,O),w=new Map;for(let M=L.length-1;M>=0;M--){let T=L[M],N=F?T9(T.tagName):T.tagName,I=gQ(fQ(T.attributes,Z,J)),E=q.some(([h,p])=>T.startIndex>=h&&T.startIndex<p),A=vQ(I,Z,X,E),k=m1.getBuiltin(T.tagName),C=k?await k9(N,G,Z,J,X):!1;if(k&&!C){let h={context:Z,filePath:J,options:X,dependencies:Y},p=k.render(A,T.content,h);if(Object.keys(A.events).length>0){let u=Y6(A.events);p=p.replace(/^(\s*<[a-zA-Z][a-zA-Z0-9-]*)/,`$1 ${u}`)}if(Object.keys(A.clientReactive).length>0)p=Q6(p,A.clientReactive);w.set(M,p);continue}if(!F&&T.tagName.includes("-")&&!await k9(N,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 I1(N,y,K.restore(T.content),G,Z,J,X,z,Y);if(Object.keys(A.events).length>0){let h=z6(P);if(h){let p=Y6(A.events),u=Object.keys(A.events).map((r)=>r.replace(/^@/,"").split(".")[0]).join(" ");P=P.substring(0,h.insertPos)+` data-stx-parent-events="${u}" ${p}`+P.substring(h.insertPos)}}if(Object.keys(A.clientReactive).length>0)P=Q6(P,A.clientReactive);w.set(M,P)}if(w.size===0)return _;let D="",R=0;for(let M=0;M<L.length;M++){let T=w.get(M);if(T===void 0)continue;D+=_.slice(R,L[M].startIndex),D+=T,R=L[M].endIndex}return D+=_.slice(R),D}}function Q6($,Z){let J=new Set(["if","for"]),X=new Set(["show"]),Y=Object.entries(Z).filter(([H])=>!J.has(H)),Q=Y.filter(([H])=>!X.has(H)).map(([H])=>T9(H)).join(" "),G=$,z=Y.length>0?z6(G):null;if(z){let H=Y.map(([U,j])=>`:${T9(U)}="${j.replace(/"/g,""")}"`).join(" "),W=Q?` data-stx-parent-bindings="${Q}"`:"";G=G.substring(0,z.insertPos)+`${W} ${H}`+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 z6($){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 D$($,Z,J,X,Y){if(!X6)c7(m1),X6=!0;let Q=await mQ($,Z,J,X,Y);Q=await dQ(Q,Z,J,X,Y),Q=await lQ(Q,Z,J,X,Y);let G=[];for(let z=0;z<3;z++){let K=G.length,q=V1(Q,b9,(W,U)=>`\x00STX_COMPONENT_COMMENT_${K+U}\x00`,`STX_COMPONENT_COMMENT:${K}`);G.push(...q.tokens);let H=Q;if(Q=await cQ(q.output,Z,J,X,Y),Q===H)break}if(G.length>0)Q=Q.replace(/\x00STX_COMPONENT_COMMENT_(\d+)\x00/g,(z,K)=>G[Number(K)]??"");if(X.debug){let z=uQ(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 N$($,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 iQ($,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 H=X.substring(z+1,q-1),W=`${J}(${H})`;X=X.substring(0,G)+W+X.substring(q),Y.lastIndex=G+W.length,Q=Y.exec(X)}return X}function nQ($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function H6($){let Z=$,J=[],X=new Set,Y=0,Q=0,G=Z.length,z=(W)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===W){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 W=1;while(Q<G&&W>0)if(Z[Q]==="{")W++,Q++;else if(Z[Q]==="}")W--,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},
|
|
3366
|
+
`}function d7($,...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 l7($,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 F$={name:"Suspense",aliases:["suspense"],render($,Z,J){let X=l7(Z,"fallback"),Y=X.rest,Q=l7(Y,"error"),G=Q.rest,z=X.region??d7($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',K=Q.region??d7($,"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 I9($,...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 _$={name:"TransitionGroup",aliases:["transition-group"],render($,Z,J){let X=(I9($,"name")||"v").replace(/["'<>]/g,""),Y=(I9($,"tag")||"div").replace(/[^a-z0-9-]/gi,"")||"div",Q=I9($,"class"),G=I9($,"id"),z=[`data-stx-transition-group="${X}"`,Q?`class="${Q}"`:"",G?`id="${G}"`:""].filter(Boolean).join(" ");return`<${Y} ${z}>${Z}</${Y}>`}};function c7($=m1){$.registerBuiltin(X$),$.registerBuiltin(q$),$.registerBuiltin(W$),$.registerBuiltin(U$),$.registerBuiltin(j$),$.registerBuiltin(B$),$.registerBuiltin(V$),$.registerBuiltin(L$),$.registerBuiltin(F$),$.registerBuiltin(_$)}function T9($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").toLowerCase()}var p7=new Map;function PQ($){let Z=p7.get($.source);if(!Z)Z=new RegExp(`(${$.source})(?![\\w.:-])`,"y"),p7.set($.source,Z);return Z}var i7=new WeakMap;function n7($){let Z=i7.get($);if(!Z)Z=new Set([...$].map((X)=>X.toLowerCase())),i7.set($,Z);let J=Z;return(X)=>!/[a-z]/.test(X)&&J.has(X.toLowerCase())}function s7($,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=PQ(Z);z.lastIndex=G+1;let K=z.exec($);if(!K){Y=G+1;continue}let q=K[1];if(Q&&Q(q)){let F=G+1+q.length;while(F<$.length&&$[F]!==">")F++;Y=F+1;continue}let W=G+1+q.length,H=null,U=W,j=-1,B=!1;while(W<$.length){let F=$[W];if(H){if(F==="\\"&&W+1<$.length){W+=2;continue}if(F===H)H=null;W++;continue}if(F==='"'||F==="'"){H=F,W++;continue}if(F==="/"&&W+1<$.length&&$[W+1]===">"){j=W+2,B=!0;break}if(F===">"){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 F=`<${q}`,O=`</${q}>`,_=1,L=j,w=-1;while(_>0&&L<$.length){let N=$.indexOf(F,L),T=$.indexOf(O,L);if(T===-1)break;if(N!==-1&&N<T){let M=$[N+F.length];if(M===" "||M===">"||M==="/"||M===`
|
|
3367
|
+
`||M==="\t")_++;L=N+F.length}else{if(_--,_===0){w=T;break}L=T+O.length}}if(w===-1){Y=j;continue}let R=$.slice(j,w),D=w+O.length;X.push({fullMatch:$.slice(G,D),tagName:q,attributes:V,content:R,startIndex:G,endIndex:D,isSelfClosing:!1}),Y=D}}return X}function o7($){return $.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/�?39;/g,"'").replace(/'/gi,"'").replace(/&/g,"&")}function r7($,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 w$($,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 a7($){let Z=$.trim();if(!Z.startsWith("{")||!Z.endsWith("}"))return null;if(w$(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"]),xQ=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);function R$($){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("/>")||xQ.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 e7($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>e7(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function $6($,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(...R$($));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,F=!1;while((B=j.exec(U))!==null){let O=B[1],_=B[2];if(t7(O))continue;if(_.includes("()")&&!_.includes(".get(")||_.includes("$store")||_.includes("$ref"))continue;try{let L=Object.keys(Z),w=Object.values(Z),R=_.match(/^([a-zA-Z_$][\w$]*)/);if(R&&!L.includes(R[1])&&!["true","false","null","undefined","Math","JSON","String","Number","Array","Object","Date","parseInt","parseFloat"].includes(R[1]))continue;let D=JSON.stringify([L,_]),N=q.get(D);if(!N){if(N=Function(...L,`return (${_})`),q.size>=W)q.clear();q.set(D,N)}let T=N(...w);if(O==="class"){let M=e7(T);if(M){let I=V.match(/\sclass="([^"]*)"/);if(I)V=V.replace(I[0],` class="${I[1]} ${M}"`);else V=V.replace(B[0],` class="${M}"`)}else V=V.replace(B[0],"");F=!0;continue}if(vQ.has(O)){if(T)V=V.replace(B[0],` ${O}`);else V=V.replace(B[0],"");F=!0;continue}if(T===null||T===void 0||T===!1)V=V.replace(B[0],"");else{let M=String(T).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">");V=V.replace(B[0],` ${O}="${M}"`)}F=!0}catch{continue}}if(F){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:F}=K[j];H[j*2]=J.slice(U,B),H[j*2+1]=F,U=V}H[K.length*2]=J.slice(U),J=H.join("")}return J}import Z6 from"fs";import J6 from"path";var y2=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 b2($){if($.includes("-")||$==="component")return!1;if(/^[A-Z]/.test($))return!/[a-z]/.test($)&&[...y2].some((Z)=>Z.toLowerCase()===$.toLowerCase());return y2.has($)||/[A-Z]/.test($)}var X6=!1;function fQ($,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=Q0(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(G6),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]=r7(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(!B0(B)){if(J.debug)console.error(`Unsafe expression in :${j} binding: ${B}`);Y.clientReactive[j]=B;continue}let V=Object.keys(Z),O=U0(B,V)(...Object.values(Z));if(O===void 0){let _=new Set(["true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","if","else"]);if(E9(B).some((w)=>!_.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(B0(B)){let F=U0(B,Object.keys(Z))(...Object.values(Z));q(U,F!=null?String(F):"")}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,F;while((F=V.exec(H))!==null)try{let O=F[1];if(!B0(O)){if(J.debug)console.error(`Unsafe expression in ${U}: ${O}`);continue}let L=U0(O,Object.keys(Z))(...Object.values(Z));B=B.replace(F[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":o7(H))}return Y}var gQ=[[/@if\s*\(/,"@endif"],[/@unless\s*\(/,"@endunless"]];function hQ($,Z,J){if(!$.includes("@"))return $;if(!gQ.some(([Y,Q])=>Y.test($)&&$.includes(Q)))return $;try{return t0($,Z,J)}catch{return $}}function uQ($){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=w$($,J),J+=Q.length;let G=a7(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 Y6($){return Object.entries($).map(([Z,J])=>J===N1?Z:`${Z}="${mQ(J)}"`).join(" ")}function mQ($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function dQ($){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(m1.isBuiltin(Y))Z.add(Y)}return[...Z].sort()}async function lQ($,Z,J,X,Y){if(!/import\s/.test($))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=J6.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,F=B,O,_=[];while((O=V.exec(B))!==null){let[L,w,R,D]=O,N=null,T=null;if(D.startsWith(".")||D.startsWith("/")){let k=J6.resolve(G,D);if(k.endsWith(".stx"))T=k;else{let A=`${k}.stx`;try{if(Z6.statSync(A).isFile())T=A}catch{try{if(Z6.statSync(k).isDirectory())N=k}catch{}}}}else N=R9(D,G);if(!N&&!T)continue;let M=!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(R&&T)I(R,T),M=!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=N?w9(N):null;for(let{source:E,local:C}of k){let b=null;if(T)b=T;else if(A)b=A.get(E)??A.get(E.toLowerCase())??A.get(E.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase())??null;if(b)I(C,b),M=!0}}if(M)_.push({start:O.index,end:O.index+L.length})}if(_.length===0)continue;for(let L=_.length-1;L>=0;L--)F=F.slice(0,_[L].start)+F.slice(_[L].end);z.push({start:H.index,end:H.index+U.length,value:`<script${j}>${F}</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$/,""),F=V.includes("-")?V.split("-").map((L)=>L.charAt(0).toUpperCase()+L.slice(1)).join(""):V.charAt(0).toUpperCase()+V.slice(1),O=null,_=D9(U,J,X);for(let L of _)try{if(await Bun.file(L).exists()){O=L;break}}catch{}if(O){G.set(F,O),G.set(V,O),G.set(V.toLowerCase(),O);let L=F.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(G.set(L,O),Y.add(O),X.debug)console.log(`Imported component: ${F} -> ${O}`)}else if(X.debug)console.warn(`Could not resolve imported component: ${U}`)}Q=Q.replace(q,""),z.lastIndex=0}return Q}async function pQ($,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,F=B.match(/^\s*['"]([^'"]+)['"]/);if(!F){K.lastIndex=0;continue}let O=F[1],_,L=B.slice(F[0].length),w=L.match(/^\s*,\s*/);if(w)_=L.slice(w[0].length).trim();let R={};if(_)try{R=d0(_,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 D="",N=V,M=Q.substring(V).match(/^([\s\S]*?)@endcomponent/);if(M)D=M[1].trim(),N=V+M[0].length;let I=await I1(O,R,D,G,Z,J,X,z,Y);Q=Q.substring(0,W)+I+Q.substring(N),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=x0(Q);Q=K.output;let q=R$(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,n7(y2)),Q=await j(Q,/[a-z][a-z0-9]*/,!1,y2),Q=K.restore(Q),Q;async function j(B,V,F,O){if(!B)return B;let _=B,L=s7(_,V,O),w=new Map;for(let N=L.length-1;N>=0;N--){let T=L[N],M=F?T9(T.tagName):T.tagName,I=uQ(hQ(T.attributes,Z,J)),k=q.some(([h,p])=>T.startIndex>=h&&T.startIndex<p),A=fQ(I,Z,X,k),E=m1.getBuiltin(T.tagName),C=E?await k9(M,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 u=Y6(A.events);p=p.replace(/^(\s*<[a-zA-Z][a-zA-Z0-9-]*)/,`$1 ${u}`)}if(Object.keys(A.clientReactive).length>0)p=Q6(p,A.clientReactive);w.set(N,p);continue}if(!F&&T.tagName.includes("-")&&!await k9(M,G,Z,J,X))continue;let b={};for(let[h,p]of Object.entries(A.static))b[h]=p;for(let[h,p]of Object.entries(A.serverDynamic))b[h]=p;let P=await I1(M,b,K.restore(T.content),G,Z,J,X,z,Y);if(Object.keys(A.events).length>0){let h=z6(P);if(h){let p=Y6(A.events),u=Object.keys(A.events).map((r)=>r.replace(/^@/,"").split(".")[0]).join(" ");P=P.substring(0,h.insertPos)+` data-stx-parent-events="${u}" ${p}`+P.substring(h.insertPos)}}if(Object.keys(A.clientReactive).length>0)P=Q6(P,A.clientReactive);w.set(N,P)}if(w.size===0)return _;let R="",D=0;for(let N=0;N<L.length;N++){let T=w.get(N);if(T===void 0)continue;R+=_.slice(D,L[N].startIndex),R+=T,D=L[N].endIndex}return R+=_.slice(D),R}}function Q6($,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])=>T9(W)).join(" "),G=$,z=Y.length>0?z6(G):null;if(z){let W=Y.map(([U,j])=>`:${T9(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 z6($){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 D$($,Z,J,X,Y){if(!X6)c7(m1),X6=!0;let Q=await lQ($,Z,J,X,Y);Q=await cQ(Q,Z,J,X,Y),Q=await pQ(Q,Z,J,X,Y);let G=[];for(let z=0;z<3;z++){let K=G.length,q=V1(Q,y9,(H,U)=>`\x00STX_COMPONENT_COMMENT_${K+U}\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=dQ(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 N$($,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 sQ($,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 oQ($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function H6($){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 rQ($,Z=""){let J=H6($).split(",").map((X)=>X.trim()).filter(Boolean);return`
|
|
3369
3369
|
(function() {
|
|
3370
3370
|
${o1("var",J)}
|
|
3371
3371
|
var __destroyHooks = [];
|
|
@@ -3374,7 +3374,7 @@ document.addEventListener("focusout",function(e){
|
|
|
3374
3374
|
|
|
3375
3375
|
${$}
|
|
3376
3376
|
${Z}})();
|
|
3377
|
-
`}function
|
|
3377
|
+
`}function aQ($,Z){let Y=H6($).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 tQ($,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 K6($,Z){let J=aQ($,Z);return eQ(rQ($,J),Z)}function eQ($,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(L0)try{let{extractVariables:f}=await import("./chunk-
|
|
3408
|
-
`}}if(
|
|
3409
|
-
`+I;if(
|
|
3410
|
-
`+
|
|
3411
|
-
`)})}import*as k$ from"path";async function j6($,Z,J=""){if(k$.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 V6($,Z,J,"@js","@endjs")}async function B6($,Z,J=""){if(k$.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 V6($,Z,J,"@ts","@endts")}async function V6($,Z,J,X,Y){let Q=$,G=R1(`${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:
|
|
3406
|
+
})();`}function $G($,Z){if(i0($)){let Y=i0($).tag.match(/data-stx-scope="([^"]*)"/);if(Y)return{html:$,mergedIntoExisting:Y[1],stamped:!0,root:"body"};return{html:x1($,(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 q6=0,M$=new Set;function tB(){M$.clear()}function W6($){return/\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/i.test($)}var eB=new r1(500),U6=new Set;function $V(){U6.clear()}function ZG($){if($.__onceStore instanceof Set)return $.__onceStore;return U6}async function A$($,Z,J,X,Y,Q=new Set){let G=X.partialsDir||K0.join(K0.dirname(J),"partials");if(G&&!K0.isAbsolute(G))G=K0.resolve(process.cwd(),G);let z=sQ($,"@partial","@include"),K=ZG(Z);z=z.replace(/@once([\s\S]*?)@endonce/g,(V,F,O)=>{let _=F.trim(),L=`${J}:${_}`;if(K.has(L))return"";return K.add(L),F});{let V=/@includeIf\s*\(/g,F;while((F=V.exec(z))!==null){let O=F.index,_=O+F[0].length-1,L=1,w=_+1;while(w<z.length&&L>0){if(z[w]==="(")L++;else if(z[w]===")")L--;w++}if(L!==0)break;let R=z.substring(_+1,w-1),D=R.match(/^\s*['"]([^'"]+)['"]/);if(!D){V.lastIndex=w;continue}let N=D[1],T=q(N,G,J),M="";if(T&&await Bun.file(T).exists())Y.add(T),M=`@include(${R})`;z=z.substring(0,O)+M+z.substring(w),V.lastIndex=0}}for(let[V,F]of[["@includeWhen",!1],["@includeUnless",!0]]){let O=new RegExp(`${V.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),_;while((_=O.exec(z))!==null){let L=_.index,w=L+_[0].length-1,R=1,D=w+1;while(D<z.length&&R>0){if(z[D]==="(")R++;else if(z[D]===")")R--;D++}if(R!==0)break;let N=z.substring(w+1,D-1),T=N$(N,0);if(T===-1){O.lastIndex=D;continue}let M=N.substring(0,T).trim(),I=N.substring(T+1).trim(),k=I.match(/^\s*['"]([^'"]+)['"]/);if(!k){O.lastIndex=D;continue}let A=k[1],E=I.substring(k[0].length),C,b=N$(E,0);if(b!==-1)C=E.substring(b+1).trim();try{let y=`Boolean(${M})`,P;if(B0(y)){let u=U0(y,Object.keys(Z));P=Boolean(u(...Object.values(Z)))}else P=Boolean(X0(y,Z));let h=F?!P:P,p="";if(h){let u=q(A,G,J);if(u&&await Bun.file(u).exists())Y.add(u);p=`@include('${A}'${C?`, ${C}`:""})`}z=z.substring(0,L)+p+z.substring(D),O.lastIndex=0}catch(y){let P=y instanceof Error?y.message:String(y),h=O0("Include",`Error evaluating ${V} condition: ${P}`,J,$,L);z=z.substring(0,L)+h+z.substring(D),O.lastIndex=0}}}{let V=/@each\s*\(/g,F;while((F=V.exec(z))!==null){let O=F.index,_=O+F[0].length-1,L=1,w=_+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 R=z.substring(_+1,w),D=z.substring(O,w+1),N=R.match(/^\s*['"]([^'"]+)['"]\s*,\s*([^,]+)\s*,\s*['"]([^'"]+)['"](?:\s*,\s*['"]([^'"]+)['"])?\s*$/);if(!N){V.lastIndex=0,z=z.replace(D,"");continue}let[,T,M,I,k]=N;try{let A,E=M.trim();if(B0(E))A=U0(E,Object.keys(Z))(...Object.values(Z));else A=X0(E,Z);let C="";if(Array.isArray(A)&&A.length>0)for(let b of A){let y={...Z,[I]:b},P=await U(T,y,$,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)+O0("Each",`Error in @each: ${E}`,J,$,O)+z.substring(w+1),V.lastIndex=0}}}{let V=/@includeFirst\s*\(/g,F;while((F=V.exec(z))!==null){let O=F.index,_=O+F[0].length-1,L=1,w=_+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 R=z.substring(_+1,w),D=z.substring(O,w+1),N=R.match(/^\s*(\[[^\]]+\])/);if(!N){V.lastIndex=0,z=z.replace(D,"");continue}let T=N[1],M=R.slice(N[0].length),I,k=M.match(/^\s*,\s*\{/);if(k){M=M.slice(k[0].length-1);let C=1,b=1;while(b<M.length&&C>0){if(M[b]==="{")C++;else if(M[b]==="}"){if(C--,C===0)break}b++}I=M.substring(0,b+1),M=M.slice(b+1)}let A,E=M.match(/^\s*,\s*['"]([^'"]*)['"]\s*$/);if(E)A=E[1];try{let C=JSON.parse(T.replace(/'/g,'"')),b={};if(I)try{b=d0(I,Z)}catch(P){let h=P instanceof Error?P.message:String(P);if(X.debug){let p=O0("Include",`Error parsing includeFirst variables: ${h}`,J,$,O,D);z=z.replace(D,()=>p)}else z=z.replace(D,()=>A||"");continue}let y=!1;for(let P of C){let h=q(P,G,J);if(!h)continue;if(await t(h)){let p=await U(P,b,$,O);z=z.replace(D,()=>p),y=!0;break}}if(!y)if(A!==void 0)z=z.replace(D,()=>A);else if(X.debug){let P=O0("Include",`None of the includeFirst paths exist: ${T}`,J,$,O,D);z=z.replace(D,()=>P)}else z=z.replace(D,"")}catch(C){let b=C instanceof Error?C.message:String(C),y=O0("Include",`Error processing @includeFirst: ${b}`,J,$,O,D);z=z.replace(D,()=>y)}V.lastIndex=0}}function q(V,F,O){try{let _=V;if(!V.endsWith(".stx"))_=`${V}.stx`;let L=K0.resolve(F),w=K0.resolve(K0.dirname(O)),R;if(!_.startsWith("./")&&!_.startsWith("../")){for(let k of X._layerPartialDirs??[]){let A=K0.resolve(k,_);if(A.startsWith(`${K0.resolve(k)}${K0.sep}`)&&nQ(A))return A}R=K0.resolve(F,_)}else R=K0.resolve(w,_);let D=K0.normalize(R),N=D.startsWith(L+K0.sep)||D===L,T=D.startsWith(w+K0.sep)||D===w,M=!1,I=K0.dirname(w);if(D.startsWith(I+K0.sep)){if(!K0.relative(I,D).split(K0.sep).some((C)=>C.startsWith(".")&&C!=="."&&C!==".."))M=!0}if(!N&&!T&&!M)return console.error(`Security: Path traversal attempt blocked for include path: ${V}`),console.error(` Resolved to: ${D}`),console.error(` Allowed dirs: ${L}, ${w}`),null;return D}catch(_){return console.error(`Error resolving path ${V}: ${_}`),null}}let W=K0.resolve(J);Q.add(W);function H(V,F,O,_){return X.onIncludeError?.({includePath:V,templatePath:J,message:F,partialsDir:G}),O0("Include",F,J,O,_)}async function U(V,F={},O,_){let L=q(V,G,J);if(!L)return H(V,`Could not resolve path for include: ${V}`,O,_);let w=K0.resolve(L);if(Q.has(w)){let R=[...Q,w].map((D)=>K0.basename(D)).join(" -> ");return H(V,`Circular include detected: ${R}`,O,_)}try{Y.add(L);let R;if(!R)try{R=await Bun.file(L).text()}catch(i){let W0=i instanceof Error?i.message:String(i);return H(V,`Error loading include file ${V}: ${W0}`,O,_)}if(R)R=R.replace(/\{\{--[\s\S]*?--\}\}/g,"");if(R&&R.includes("@stream")){let{processStreamDirectives:i}=await import("./chunk-w499e1n1.js");R=i(R,Z)}if(R&&(X.debug||!C2()&&!S2()))try{let{warnUnbalancedTags:i}=await import("./chunk-sqj228wh.js");i(R,L)}catch{}let D=R;try{let{processESImports:i}=await import("./chunk-4r1safma.js");await i(R,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 N=F9(D);if(N)D=N.content.trim();let M=R.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,"").match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),I="";if(M)I=`<style${M[1]}>${M[2]}</style>`;let k=[];D=D.replace(/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,(i,W0,a)=>{if(!W6(W0))return"";return k.push({attrs:W0,body:a}),`__STX_DATA_BLOCK_${k.length-1}__`}),D=D.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");let A={...Z};A.__stx_signals_gate=X1(R,L);for(let[i,W0]of Object.entries(F))A[i]=W0;let E=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,C=[...R.matchAll(E)],b="",y=null,P=!1;for(let i of C){let W0=i[1]||"",a=i[2]||"";if(W6(W0))continue;let L0=W0.includes("server"),c0=T1(W0);if(!L0&&a.trim()){let{interpolateScriptExpressions:f}=await import("./chunk-jehmjxnq.js");a=f(a,A,V)}let p0="";try{let{extractAndStripCssImports:f,renderVendorStyleTags:l}=await import("./chunk-ewr4ym70.js"),Z0=f(a,{filePath:L,projectRoot:process.cwd()});a=Z0.code,p0=l(Z0.styles)}catch(f){if(X.debug)console.warn(`[stx] vendor-css extractor skipped for ${L}:`,f instanceof Error?f.message:f)}if(c0&&a.trim())a=k1(a);if(!L0){try{let{injectBrowserCoreAutoImports:l}=await import("./chunk-ewr4ym70.js");a=l(a).code;let{hasUserImports:Z0,bundleClientScript:j0}=await import("./chunk-rfq5h4zn.js");if(Z0(a))a=await j0(a,L,{projectRoot:process.cwd()})}catch(l){if(X.debug)console.warn(`[stx] bundler skipped for ${L}:`,l instanceof Error?l.message:l)}let{stripStxRuntimeImports:f}=await import("./chunk-mrxrz9b1.js");a=f(a)}let h0=oQ(a);if(h0&&!L0){P=!0,y=`stx_scope_${K0.basename(L,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++q6}`;let f=e0(a),l=K6(f,y);b+=`${p0}<script data-stx-scoped data-stx-run="always" data-stx-owner="${y}">${l}</script>
|
|
3407
|
+
`;continue}if(L0)try{let{extractVariables:f}=await import("./chunk-vsvjw3bp.js");await f(a,A,L)}catch(f){if(X.debug)console.warn(`Warning: Could not extract variables from server script in ${L}:`,f)}if(!L0&&!h0){let f=W0.replace(/\bclient\b/i,"").trim();y=`stx_scope_${K0.basename(L,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++q6}`;let l=e0(a),Z0=K6(l,y);b+=`${p0}<script data-stx-scoped data-stx-run="always" data-stx-owner="${y}"${f?` ${f}`:""}>${Z0}</script>
|
|
3408
|
+
`}}if(k.length>0){let{interpolateScriptExpressions:i}=await import("./chunk-jehmjxnq.js");D=D.replace(/__STX_DATA_BLOCK_(\d+)__/g,(W0,a)=>{let L0=k[Number(a)];return`<script${L0.attrs}>${i(L0.body,A,V)}</script>`})}if(y){let i=$G(D,y);if(D=i.html,i.mergedIntoExisting){let a=y,L0=i.mergedIntoExisting;b=b.split(`'${a}'`).join(`'${L0}'`).split(`"${a}"`).join(`"${L0}"`),y=L0}else if(!i.stamped&&P&&!M$.has(L))M$.add(L),console.warn(`[stx] ${K0.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 W0=i.stamped&&i.root!==null&&b2(i.root);b=tQ(b,W0?y:null)}if(D.includes("@include")||D.includes("@partial"))D=await A$(D,A,L,X,Y,Q);let{processLoops:h,reportDeferredLoopWarnings:p}=await import("./chunk-s9j8pgz8.js"),u=h(D,A,L,void 0,!0);u=t0(u,A,L),u=p(u);let{processMetaDirectives:r,processSeoDirective:e,processStructuredData:Y0}=await import("./chunk-8h4het40.js");if(u=r(u,A,L,X),u=Y0(u,A,L),u=e(u,A,L,X),u=L1(u,A,L),I)u+=`
|
|
3409
|
+
`+I;if(b)u+=`
|
|
3410
|
+
`+b;return u}catch(R){let D=R instanceof Error?R.message:String(R);return H(V,`Error processing include ${V}: ${D}`,O,_)}}let j=/@include\s*\(/g,B;while((B=j.exec(z))!==null){let V=B.index,F=V+B[0].length-1,O=1,_=F+1;while(_<z.length&&O>0){if(z[_]==="(")O++;else if(z[_]===")")O--;_++}if(O!==0)break;let L=z.substring(V,_),w=z.substring(F+1,_-1),R=w.match(/^\s*['"]([^'"]+)['"]/);if(!R){j.lastIndex=_;continue}let D=R[1],N,T=w.substring(R[0].length),M=N$(T,0);if(M!==-1)N=T.substring(M+1).trim();let I={};if(N)try{I=d0(N,Z)}catch(A){let E=A instanceof Error?A.message:String(A);z=z.replace(L,O0("Include",`Error parsing include variables for ${D}: ${E}`,J,$,V)),j.lastIndex=0;continue}let k=await U(D,I,$,V);z=z.substring(0,V)+k+z.substring(_),j.lastIndex=0}return z}function I$($,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}\\(`),F=new RegExp(`@${G}(?![a-z])`),O=1,_=B,L=-1;while(O>0&&_<K.length){let R=K.slice(_),D=R.match(V),N=R.match(F),T=D?_+D.index:1/0,M=N?_+N.index:1/0;if(T<M)O++,_=T+(D[0].length||1);else if(M<1/0){if(O--,O===0){L=M;break}_=M+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 T$($,Z){return $.replace(/@stack\(['"]([^'"]+)['"]\)/g,(J,X)=>{if(!Z[X]||Z[X].length===0)return"";return Z[X].join(`
|
|
3411
|
+
`)})}import*as k$ from"path";async function j6($,Z,J=""){if(k$.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 V6($,Z,J,"@js","@endjs")}async function B6($,Z,J=""){if(k$.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 V6($,Z,J,"@ts","@endts")}async function V6($,Z,J,X,Y){let Q=$,G=R1(`${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((D)=>D.match(/(?:const|let|var)\s+(\w+)/)?.[1]).filter(Boolean),_=O.length>0?`return { ${O.join(", ")} };`:"return {};",L=`
|
|
3412
3412
|
${V}
|
|
3413
3413
|
${_}
|
|
3414
|
-
`,D=Function(...j,L)(...B);if(D&&typeof D==="object")Object.assign(Z,D);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=O0(`${X} Directive`,`Error executing code: ${j}`,J,$,W,q);console.error(B),Q=Q.replace(q,"")}return Q}function a1($){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 $G=1000,ZG=!1;function JG($,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((U)=>new RegExp(`(?:^|[^\\w$.])${U.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w$])`).test(q)))continue;let W;try{let U=d0(q,Z);if(!U||typeof U!=="object")continue;W=JSON.stringify(U)}catch{continue}X+=$.slice(Y,G)+W,Y=K,J.lastIndex=K}return Y===0?$:X+$.slice(Y)}function XG($,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 H=X.substring(z+1,q),W=q+1,U=H.match(/^\s*['"]([^'"]+)['"]/);if(!U)continue;let j=U[1],B=H.slice(U[0].length),V=B.match(/^\s*,\s*/);if(!V)continue;let F=B.slice(V[0].length).trim();if(!F)continue;try{let O=d0(F,Z),_=JSON.stringify(O),L=`@component('${j}', ${_})`;Q.push({start:G,end:W,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 C9($,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,H=null,W=!1;while(q<X.length&&K>0){let B=X[q];if(W){W=!1,q++;continue}if(B==="\\"&&H){W=!0,q++;continue}if(H){if(B===H)H=null;q++;continue}if(B==='"'||B==="'"||B==="`"){H=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 YG($,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);_6(Q);let q=U0(Q,G)(...z),H=JSON.stringify(q);if(H===void 0){if(!E9(Q).some((j)=>!(j in Z)))return"";return X}let W=Buffer.from(H,"utf8").toString("base64");return`__stx_${Y}="${W}"`}catch(G){return X}}),J}var S9="<!--__STX_BREAK__-->",P9="<!--__STX_CONTINUE__-->";function QG($,Z){let J=$;return J=C9(J,"@break",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(B0(Q)){let z=U0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(X0(Q,Z));return G?S9:""}catch{return""}}),J=C9(J,"@continue",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(B0(Q)){let z=U0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(X0(Q,Z));return G?P9:""}catch{return""}}),J}function GG($){let Z=$;return Z=Z.replace(/@break(?!\()/g,S9),Z=Z.replace(/@continue(?!\()/g,P9),Z}function L6($){let Z=$.includes(S9),J=Z?$.substring(0,$.indexOf(S9)):$;return{hasBreak:Z,content:J}}function O6($){let Z=$.includes(P9),J=Z?$.substring(0,$.indexOf(P9)):$;return{hasContinue:Z,content:J}}function w6($){let Z=$;return Z=C9(Z,"@break",(J)=>{let X=J.trim();if(!y9(X))return"";return`\`; if (${X}) { break; } result += \``}),Z=C9(Z,"@continue",(J)=>{let X=J.trim();if(!y9(X))return"";return`\`; if (${X}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function zG($){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((H,W)=>H.pos-W.pos);let z=[],K=0;for(let H of X)K+=H.delta,z.push({pos:H.pos,depth:K});function q(H){let W=0,U=z.length-1,j=0;while(W<=U){let B=W+U>>1;if(z[B].pos<=H)j=z[B].depth,W=B+1;else U=B-1}return j}while((J=Z.exec($))!==null){if(q(J.index)>0)continue;let H=J.index,W=J.index+J[0].length-1,U=1,j=W+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(W+1,B),F=a1(V);if(!F)continue;let{arrayExpr:O,itemVar:_}=F,L=B+1,w=1,D=L,R=/@forelse\s*\(/g,M=/@endforelse/g,T=-1;while(w>0&&D<$.length){R.lastIndex=D,M.lastIndex=D;let C=R.exec($),y=M.exec($);if(!y)break;if(C&&C.index<y.index)w++,D=C.index+C[0].length;else{if(w--,w===0){T=y.index;break}D=y.index+11}}if(T===-1)continue;let N=$.substring(L,T),I=T+11,E=-1,A=0,k=0;while(k<N.length){let C=N.indexOf("@",k);if(C===-1)break;let y=N.substring(C);if(/^@forelse\s*\(/.test(y))A++,k=C+1;else if(y.startsWith("@endforelse"))A--,k=C+11;else if(A===0&&y.startsWith("@empty")){if(N.length<=C+6||!/[a-z]/i.test(N[C+6])){E=C;break}k=C+1}else k=C+1}if(E===-1)continue;return{start:H,end:I,arrayExpr:O,itemVar:_,foreachContent:N.substring(0,E),emptyContent:N.substring(E+6)}}return null}function F6($,Z){let J=$;while(!0){let X=zG(J);if(!X)break;let{start:Y,end:Q,arrayExpr:G,itemVar:z,foreachContent:K,emptyContent:q}=X;try{let H;if(B0(G))H=U0(G,Object.keys(Z))(...Object.values(Z));else H=X0(G,Z);let W;if(!Array.isArray(H)||H.length===0)W=q;else W=`@foreach (${G} as ${z})${K}@endforeach`;J=J.substring(0,Y)+W+J.substring(Q)}catch(H){let W=H instanceof Error?H.message:String(H),U=D0("Forelse",`Error in @forelse(${G} as ${z}): ${W}`,R0.EVALUATION_ERROR);J=J.substring(0,Y)+U+J.substring(Q)}}return J}var R6="<!--stx:foreach-not-iterable:",KG=/<!--stx:foreach-not-iterable:([^|>]*)\|([^>]*?)-->/g;function qG($,Z){return`${R6}${encodeURIComponent($)}|${encodeURIComponent(Z)}-->`}function WG($,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 E$($){if(!$.includes(R6))return $;return $.replace(KG,(Z,J,X)=>{return WG(decodeURIComponent(J),decodeURIComponent(X)),""})}function D6($,Z,J,X,Y=!1){let Q=$;Q=F6(Q,Z);function G(q){let H=/@foreach\s*\(/g,W;while((W=H.exec(q))!==null){let U=W.index,j=W.index+W[0].length-1,B=1,V=j+1,F=-1;while(V<q.length&&B>0){if(q[V]==="(")B++;else if(q[V]===")"){if(B--,B===0){F=V;break}}V++}if(F===-1)continue;let O=q.substring(j+1,F),_=a1(O);if(!_)continue;let L=U,{arrayExpr:w,itemVar:D}=_,R=F+1,M=1,T=R,N=/@foreach\s*\(/g,I=/@endforeach/g;while(M>0&&T<q.length){N.lastIndex=T,I.lastIndex=T;let E=N.exec(q),A=I.exec(q);if(!A)break;if(E&&E.index<A.index)M++,T=E.index+E[0].length;else{if(M--,M===0){let k=q.substring(R,A.index),C=A.index+11;return{start:L,end:C,arrayExpr:w,itemVar:D,content:k}}T=A.index+11}}}return null}function z(q,H){let W=q;while(!0){let U=G(W);if(!U)break;let{start:j,end:B,arrayExpr:V,itemVar:F,content:O}=U;try{let _=V.trim(),L;if(B0(_))L=U0(_,Object.keys(H))(...Object.values(H));else L=X0(_,H);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=qG(_,J)+D0("Foreach",`Error in @foreach: ${_} is not iterable`,R0.TYPE_ERROR);W=W.substring(0,j)+A+W.substring(B);continue}let D=X?.loops?.useAltLoopVariable??ZG,R=F.trim(),M=null,T,N=!1;if(R.includes("=>")){let A=R.split("=>").map((k)=>k.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((k)=>k.trim());if(A.length===2&&A[0]&&A[1])T=A[0],M=A[1],N=!0;else T=R}else T=R;let I="",E=L;for(let A=0;A<E.length;A++){let k=E[A],C={index:A,iteration:A+1,first:A===0,last:A===E.length-1,count:E.length},y={...H,loop:C,$loop:C};if(T.startsWith("[")&&T.endsWith("]")){let p=T.slice(1,-1).split(",").map((u)=>u.trim());if(Array.isArray(k))p.forEach((u,r)=>{if(u)y[u]=k[r]});else y[T]=k}else if(T.startsWith("{")&&T.endsWith("}")){let p=T.slice(1,-1).split(",").map((u)=>u.trim()).filter(Boolean);if(k!==null&&typeof k==="object")p.forEach((u)=>{let r=u.indexOf(":"),e=(r===-1?u:u.slice(0,r)).trim(),Y0=r===-1?e:u.slice(r+1).trim();if(e&&Y0)y[Y0]=k[e]});else y[T]=k}else y[T]=k;if(M)if(!N&&w&&Array.isArray(k)&&k.length===2)y[M]=k[0],y[T]=k[1];else y[M]=A;let b=QG(O,y),P=O6(b);if(P.hasContinue){I+=P.content;continue}let h=L6(b);if(h.hasBreak){I+=h.content;break}if(b=F6(b,y),b=z(b,y),b=t0(b,y,J),b=GG(b),h=L6(b),h.hasBreak){I+=h.content;break}if(P=O6(b),P.hasContinue){I+=P.content;continue}b=L1(b,y,J),b=YG(b,y),b=XG(b,y),b=JG(b,y),I+=b}W=W.substring(0,j)+I+W.substring(B)}catch(_){let L=D0("Foreach",`Error in @foreach(${V.trim()} as ${F.trim()}): ${_ instanceof Error?_.message:String(_)}`,R0.EVALUATION_ERROR);W=W.substring(0,j)+L+W.substring(B)}}return W}Q=z(Q,Z),Q=M6(Q,Z,J,X);let K=X?.loops?.maxWhileIterations??$G;return Q=BG(Q,Z,K),Y?Q:E$(Q)}function HG($){let Z=/^(\s*)([A-Za-z_$][\w$]*|\[[^\]]*\]|\{[^}]*\})(\s+(?:of|in)\s)/.exec($);if(!Z||/^(?:const|let|var)$/.test(Z[2]))return $;return`${Z[1]}let ${$.slice(Z[1].length)}`}function N6($){return y9($)}function M6($,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 H=HG(Y.slice(K+1,q)),W=q+1,U=L9(Y.slice(z),"for","endfor");if(U.length===0)break;let j=U[0].content,B=z+U[0].end;if(!N6(H)){let V=D0("For",`Unsafe expression in @for: ${H}`,R0.UNSAFE_EXPRESSION);Y=Y.substring(0,z)+V+Y.substring(B),Q=!0;continue}try{let V=UG(H),F=/@(?:for|foreach|if|unless)\s*\(/.test(j);if(V.length>0&&F){let R=jG({forExpr:H,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),_=Object.values(Z),L=j.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(R,M)=>{return`\${${M}}`});L=w6(L);let D=Function(...O,`
|
|
3414
|
+
`,R=Function(...j,L)(...B);if(R&&typeof R==="object")Object.assign(Z,R);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=O0(`${X} Directive`,`Error executing code: ${j}`,J,$,H,q);console.error(B),Q=Q.replace(q,"")}return Q}function a1($){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 JG=1000,XG=!1;function YG($,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((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 QG($,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 F=B.slice(V[0].length).trim();if(!F)continue;try{let O=d0(F,Z),_=JSON.stringify(O),L=`@component('${j}', ${_})`;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 C9($,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 GG($,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);_6(Q);let q=U0(Q,G)(...z),W=JSON.stringify(q);if(W===void 0){if(!E9(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 S9="<!--__STX_BREAK__-->",P9="<!--__STX_CONTINUE__-->";function zG($,Z){let J=$;return J=C9(J,"@break",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(B0(Q)){let z=U0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(X0(Q,Z));return G?S9:""}catch{return""}}),J=C9(J,"@continue",(X)=>{try{let Q=`!!(${X.trim()})`,G;if(B0(Q)){let z=U0(Q,Object.keys(Z));G=Boolean(z(...Object.values(Z)))}else G=Boolean(X0(Q,Z));return G?P9:""}catch{return""}}),J}function KG($){let Z=$;return Z=Z.replace(/@break(?!\()/g,S9),Z=Z.replace(/@continue(?!\()/g,P9),Z}function L6($){let Z=$.includes(S9),J=Z?$.substring(0,$.indexOf(S9)):$;return{hasBreak:Z,content:J}}function O6($){let Z=$.includes(P9),J=Z?$.substring(0,$.indexOf(P9)):$;return{hasContinue:Z,content:J}}function w6($){let Z=$;return Z=C9(Z,"@break",(J)=>{let X=J.trim();if(!b9(X))return"";return`\`; if (${X}) { break; } result += \``}),Z=C9(Z,"@continue",(J)=>{let X=J.trim();if(!b9(X))return"";return`\`; if (${X}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function qG($){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),F=a1(V);if(!F)continue;let{arrayExpr:O,itemVar:_}=F,L=B+1,w=1,R=L,D=/@forelse\s*\(/g,N=/@endforelse/g,T=-1;while(w>0&&R<$.length){D.lastIndex=R,N.lastIndex=R;let C=D.exec($),b=N.exec($);if(!b)break;if(C&&C.index<b.index)w++,R=C.index+C[0].length;else{if(w--,w===0){T=b.index;break}R=b.index+11}}if(T===-1)continue;let M=$.substring(L,T),I=T+11,k=-1,A=0,E=0;while(E<M.length){let C=M.indexOf("@",E);if(C===-1)break;let b=M.substring(C);if(/^@forelse\s*\(/.test(b))A++,E=C+1;else if(b.startsWith("@endforelse"))A--,E=C+11;else if(A===0&&b.startsWith("@empty")){if(M.length<=C+6||!/[a-z]/i.test(M[C+6])){k=C;break}E=C+1}else E=C+1}if(k===-1)continue;return{start:W,end:I,arrayExpr:O,itemVar:_,foreachContent:M.substring(0,k),emptyContent:M.substring(k+6)}}return null}function F6($,Z){let J=$;while(!0){let X=qG(J);if(!X)break;let{start:Y,end:Q,arrayExpr:G,itemVar:z,foreachContent:K,emptyContent:q}=X;try{let W;if(B0(G))W=U0(G,Object.keys(Z))(...Object.values(Z));else W=X0(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}`,R0.EVALUATION_ERROR);J=J.substring(0,Y)+U+J.substring(Q)}}return J}var R6="<!--stx:foreach-not-iterable:",WG=/<!--stx:foreach-not-iterable:([^|>]*)\|([^>]*?)-->/g;function HG($,Z){return`${R6}${encodeURIComponent($)}|${encodeURIComponent(Z)}-->`}function UG($,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 E$($){if(!$.includes(R6))return $;return $.replace(WG,(Z,J,X)=>{return UG(decodeURIComponent(J),decodeURIComponent(X)),""})}function D6($,Z,J,X,Y=!1){let Q=$;Q=F6(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,F=-1;while(V<q.length&&B>0){if(q[V]==="(")B++;else if(q[V]===")"){if(B--,B===0){F=V;break}}V++}if(F===-1)continue;let O=q.substring(j+1,F),_=a1(O);if(!_)continue;let L=U,{arrayExpr:w,itemVar:R}=_,D=F+1,N=1,T=D,M=/@foreach\s*\(/g,I=/@endforeach/g;while(N>0&&T<q.length){M.lastIndex=T,I.lastIndex=T;let k=M.exec(q),A=I.exec(q);if(!A)break;if(k&&k.index<A.index)N++,T=k.index+k[0].length;else{if(N--,N===0){let E=q.substring(D,A.index),C=A.index+11;return{start:L,end:C,arrayExpr:w,itemVar:R,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:F,content:O}=U;try{let _=V.trim(),L;if(B0(_))L=U0(_,Object.keys(W))(...Object.values(W));else L=X0(_,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=HG(_,J)+D0("Foreach",`Error in @foreach: ${_} is not iterable`,R0.TYPE_ERROR);H=H.substring(0,j)+A+H.substring(B);continue}let R=X?.loops?.useAltLoopVariable??XG,D=F.trim(),N=null,T,M=!1;if(D.includes("=>")){let A=D.split("=>").map((E)=>E.trim());if(A.length===2&&A[0]&&A[1])N=A[0],T=A[1];else T=D}else if(!D.startsWith("[")&&!D.startsWith("{")&&D.includes(",")){let A=D.split(",").map((E)=>E.trim());if(A.length===2&&A[0]&&A[1])T=A[0],N=A[1],M=!0;else T=D}else T=D;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},b={...W,loop:C,$loop:C};if(T.startsWith("[")&&T.endsWith("]")){let p=T.slice(1,-1).split(",").map((u)=>u.trim());if(Array.isArray(E))p.forEach((u,r)=>{if(u)b[u]=E[r]});else b[T]=E}else if(T.startsWith("{")&&T.endsWith("}")){let p=T.slice(1,-1).split(",").map((u)=>u.trim()).filter(Boolean);if(E!==null&&typeof E==="object")p.forEach((u)=>{let r=u.indexOf(":"),e=(r===-1?u:u.slice(0,r)).trim(),Y0=r===-1?e:u.slice(r+1).trim();if(e&&Y0)b[Y0]=E[e]});else b[T]=E}else b[T]=E;if(N)if(!M&&w&&Array.isArray(E)&&E.length===2)b[N]=E[0],b[T]=E[1];else b[N]=A;let y=zG(O,b),P=O6(y);if(P.hasContinue){I+=P.content;continue}let h=L6(y);if(h.hasBreak){I+=h.content;break}if(y=F6(y,b),y=z(y,b),y=t0(y,b,J),y=KG(y),h=L6(y),h.hasBreak){I+=h.content;break}if(P=O6(y),P.hasContinue){I+=P.content;continue}y=L1(y,b,J),y=GG(y,b),y=QG(y,b),y=YG(y,b),I+=y}H=H.substring(0,j)+I+H.substring(B)}catch(_){let L=D0("Foreach",`Error in @foreach(${V.trim()} as ${F.trim()}): ${_ instanceof Error?_.message:String(_)}`,R0.EVALUATION_ERROR);H=H.substring(0,j)+L+H.substring(B)}}return H}Q=z(Q,Z),Q=M6(Q,Z,J,X);let K=X?.loops?.maxWhileIterations??JG;return Q=LG(Q,Z,K),Y?Q:E$(Q)}function jG($){let Z=/^(\s*)([A-Za-z_$][\w$]*|\[[^\]]*\]|\{[^}]*\})(\s+(?:of|in)\s)/.exec($);if(!Z||/^(?:const|let|var)$/.test(Z[2]))return $;return`${Z[1]}let ${$.slice(Z[1].length)}`}function N6($){return b9($)}function M6($,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=jG(Y.slice(K+1,q)),H=q+1,U=L9(Y.slice(z),"for","endfor");if(U.length===0)break;let j=U[0].content,B=z+U[0].end;if(!N6(W)){let V=D0("For",`Unsafe expression in @for: ${W}`,R0.UNSAFE_EXPRESSION);Y=Y.substring(0,z)+V+Y.substring(B),Q=!0;continue}try{let V=BG(W),F=/@(?:for|foreach|if|unless)\s*\(/.test(j);if(V.length>0&&F){let D=VG({forExpr:W,content:j,iterVarNames:V,context:Z,filePath:J,options:X});Y=Y.substring(0,z)+D+Y.substring(B),Q=!0;continue}let O=Object.keys(Z),_=Object.values(Z),L=j.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(D,N)=>{return`\${${N}}`});L=w6(L);let R=Function(...O,`
|
|
3415
3415
|
let result = '';
|
|
3416
|
-
for (${
|
|
3416
|
+
for (${W}) {
|
|
3417
3417
|
result += \`${L}\`;
|
|
3418
3418
|
}
|
|
3419
3419
|
return result;
|
|
3420
|
-
`)(..._);Y=Y.substring(0,z)+
|
|
3420
|
+
`)(..._);Y=Y.substring(0,z)+R+Y.substring(B),Q=!0}catch(V){let F=D0("For",`Error in @for(${W}): ${V instanceof Error?V.message:String(V)}`,R0.EVALUATION_ERROR);Y=Y.substring(0,z)+F+Y.substring(B),Q=!0}}return Y}function BG($){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 VG($){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
|
-
`),
|
|
3424
|
+
`),W=[];q(...K,(j)=>{W.push(j)});let H=Q??"inline.stx",U="";for(let j of W){let B={...Y};X.forEach((F,O)=>{B[F]=j[O]});let V=M6(J,B,Q,G);V=t0(V,B,H),V=L1(V,B,H),U+=V}return U}function LG($,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=N0(X,"(",")",z);if(K===-1)break;let q=X.slice(z+1,K),W=L9(X.slice(G),"while","endwhile");if(W.length===0)break;let H=W[0].content,U=G+W[0].end;if(!N6(q)){let j=D0("While",`Unsafe expression in @while: ${q}`,R0.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,(_,L)=>{return`\${${L}}`});V=w6(V);let O=Function(...j,`
|
|
3425
3425
|
let result = '';
|
|
3426
3426
|
let maxIterations = ${J}; // Configurable safety limit
|
|
3427
3427
|
let counter = 0;
|
|
@@ -3433,114 +3433,114 @@ ${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(U),Y=!0}catch(j){let B=D0("While",`Error in @while(${q}): ${j instanceof Error?j.message:String(j)}`,R0.EVALUATION_ERROR);X=X.substring(0,G)+B+X.substring(U),Y=!0}}return X}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)}`,R0.EVALUATION_ERROR);X=X.substring(0,G)+B+X.substring(U),Y=!0}}return X}function OG($,Z="_method"){let J=$.toUpperCase();if(J==="GET"||J==="POST")return"";return`<input type="hidden" name="${Z}" value="${J}">`}function A6($){return $.replace(/@method\(\s*(['"])([^'"]+)\1\s*(?:,\s*(['"])([^'"]+)\3\s*)?\)/g,(Z,J,X,Y,Q)=>{return OG(X,Q||"_method")})}async function I6($,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=O0("Middleware",`Error in middleware '${z.name}': ${K instanceof Error?K.message:String(K)}`,J,$);Q=Q.replace(/<body[^>]*>/,`$&
|
|
3437
3437
|
<div style="color:red;background:#ffeeee;padding:10px;border:1px solid #ff0000;margin:10px 0;font-family:monospace;white-space:pre-wrap;">${q5(q)}</div>
|
|
3438
|
-
`)}}}return Q}async function T6($,Z,J,X){return I6($,Z,J,X,"before")}async function k6($,Z,J,X){return I6($,Z,J,X,"after")}L2();L2();function E6($){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
|
|
3438
|
+
`)}}}return Q}async function T6($,Z,J,X){return I6($,Z,J,X,"before")}async function k6($,Z,J,X){return I6($,Z,J,X,"after")}L2();L2();function E6($){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 y$(X,G,Q==="true")}catch(G){return console.error(`Error processing @route directive: ${G}`),"#route-error"}})}var l0={patterns:[],exact:{}};function IV($,Z){if(!l0.exact[$])l0.exact[$]=[];l0.exact[$].push(Z)}function TV($,Z){let J=typeof $==="string"?new RegExp($):$;l0.patterns.push({pattern:J,callback:Z})}async function y6($,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 kV(){l0.patterns=[],l0.exact={}}var FG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),_G=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 y1($,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()&&FG.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 wG($,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 E1($,Z){if(Z.selfClosing)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};let J=wG($,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 b6($,Z){return new RegExp(`(?:^|\\s)${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?:=|\\s|$|>|/)`).test($)||$.includes(` ${Z}=`)||$.includes(` ${Z} `)||$.trimEnd().endsWith(` ${Z}`)}function P2($,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 t1($,Z,J){let X=Z.selfClosing?" /":"",Y=`<${Z.tag}${J}${X}>`;return $.slice(0,Z.start)+Y+$.slice(Z.end)}function RG($){return/\bv-(?:if|else-if|else|for|show|model|html|text|pre|once|cloak|memo|bind|on|slot)\b/.test($)}function DG($){let Z=$,J=0;while(J<Z.length){let X=y1(Z,J);if(!X)break;let Y=P2(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 F=G.split(",").map((L)=>L.trim()),O=F[0],_=F[1];K=`${z} as ${_} => ${O}`}else K=`${z} as ${G}`;let q=W1(X.attrs,"v-for"),W=W1(q,":key").replace(/\s*v-bind:key="[^"]*"/g,""),H=E1(Z,X),U=Z.slice(H.outerStart,H.outerEnd),j=t1(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)+U+Z.slice(B),J=j+U.length}return Z}function
|
|
3440
|
+
@endforeach`;Z=Z.slice(0,H.outerStart)+V+Z.slice(H.outerEnd),J=H.outerStart+B.length}return Z}function NG($){let Z=$,J=0;while(J<Z.length){let X=y1(Z,J);if(!X)break;let Y=P2(X.attrs,"v-if");if(Y===null){J=X.end;continue}let Q=[],G=E1(Z,X),z=W1(X.attrs,"v-if"),K=t1(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*/),F=V?V[0].length:0,O=y1(Z,q+F);if(!O){W=!1;break}let _=P2(O.attrs,"v-else-if"),L=b6(O.attrs,"v-else");if(_!==null){let w=E1(Z,O),R=W1(O.attrs,"v-else-if"),D=t1(Z.slice(w.outerStart,w.outerEnd),{...O,start:0,end:O.end-O.start},R);Q.push({type:"else-if",expr:_,outerStart:q,outerEnd:w.outerEnd,element:D,parsedTag:O}),q=w.outerEnd}else if(L){let w=E1(Z,O),R=W1(O.attrs,"v-else"),D=t1(Z.slice(w.outerStart,w.outerEnd),{...O,start:0,end:O.end-O.start},R);Q.push({type:"else",outerStart:q,outerEnd:w.outerEnd,element:D,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 MG($){return $.replace(/\bv-show="([^"]*)"/g,'@show="$1"')}function AG($){let Z=$,J=0;while(J<Z.length){let X=y1(Z,J);if(!X)break;let Y=_G.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 F=W[1]?`${H}Modifiers`:"modelModifiers",O=U.slice(1).split(".").map((_)=>`${_}: true`).join(", ");V+=` :${F}="{ ${O} }"`}return V});if(Q===X.attrs){J=X.end;continue}let G=t1(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 IG($){return $.replace(/\bv-bind:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'@bind:$1="$2"')}function TG($){return $.replace(/\bv-on:([a-zA-Z_][a-zA-Z0-9_.-]*)\s*=\s*"([^"]*)"/g,'@$1="$2"')}function kG($){let Z=$,J=0;while(J<Z.length){let X=y1(Z,J);if(!X)break;let Y=P2(X.attrs,"v-html");if(Y===null){J=X.end;continue}if(X.selfClosing){J=X.end;continue}let Q=E1(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 EG($){let Z=$,J=0;while(J<Z.length){let X=y1(Z,J);if(!X)break;let Y=P2(X.attrs,"v-text");if(Y===null){J=X.end;continue}if(X.selfClosing){J=X.end;continue}let Q=E1(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 yG($){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 bG($){let Z=$,J=0;while(J<Z.length){let X=y1(Z,J);if(!X)break;if(!b6(X.attrs,"v-once")){J=X.end;continue}let Y=W1(X.attrs,"v-once"),Q=E1(Z,X),G=Z.slice(Q.outerStart,Q.outerEnd),K=`@once
|
|
3445
3445
|
${t1(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
|
|
3447
|
-
${X}${$.slice(J)}`}var S$=v2,
|
|
3448
|
-
${Q[0]}${$.slice(J,Q.index)}${$.slice(G,Y)}${$.slice(Y)}`}function d6($){return
|
|
3449
|
-
${Z[0]}${X.slice(Y)}`}var
|
|
3450
|
-
<meta name="stx-build" content="${Z}">`}import{AsyncLocalStorage as
|
|
3451
|
-
`}function
|
|
3446
|
+
@endonce`;Z=Z.slice(0,Q.outerStart)+K+Z.slice(Q.outerEnd),J=Q.outerStart+K.length}return Z}function CG($){return $.replace(/\bv-memo="([^"]*)"/g,'data-stx-memo="$1"')}function SG($){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 C6($){if(!RG($))return $;let Z=$;return Z=DG(Z),Z=NG(Z),Z=bG(Z),Z=IG(Z),Z=TG(Z),Z=AG(Z),Z=MG(Z),Z=SG(Z),Z=kG(Z),Z=EG(Z),Z=yG(Z),Z=CG(Z),Z}function v9($){return $.replace(/--/g,"- -").replace(/</g,"<").replace(/>/g,">")}var b$=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"]),PG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","source","track","wbr"]);function S6($,Z){let J=/^\s*\{\{\s*([\s\S]+?)\s*\}\}\s*$/.exec($),X=J?J[1]:$,Y=X0(X,Z);if(Y&&typeof Y==="string")return Y;let Q=X.trim();return b$.has(Q)?Q:null}function P6($){let Z=/^\s*\{\{\s*([\s\S]+?)\s*\}\}\s*$/.exec($);return Z?Z[1]:$}function v6($,Z,J){let X=Z.replace(/\s*(?::is|v-bind:is)\s*=\s*"[^"]*"/gi,"").trim(),Y=X?`<${$} ${X}>`:`<${$}>`;if(PG.has($))return X?`<${$} ${X}>`:`<${$}>`;return`${Y}${J}</${$}>`}async function x6($,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=S6(W.expr,Z);if(!H||typeof H!=="string"){let _=`<!-- dynamic component: could not resolve "${v9(P6(W.expr))}" -->`;Q=Q.slice(0,W.index)+_+Q.slice(W.index+W.full.length);continue}if(b$.has(H)){let _=v6(H,W.attrs,W.slotContent);Q=Q.slice(0,W.index)+_+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 _=V[1]||V[2],L=V[3];if(V[1])try{j[_]=X0(L,Z)}catch{j[_]=L}else j[_]=L}let F=X.componentsDir||"components",O=await I1(H,j,W.slotContent,F,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: ${v9(U)} -->`;Q=Q.slice(0,W.index)+j+Q.slice(W.index+W.full.length)}}return Q=await vG(Q,Z,J,X,Y),Q}async function vG($,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=S6(W.expr,Z);if(!H||typeof H!=="string"){let B=`<!-- dynamic component: could not resolve "${v9(P6(W.expr))}" -->`;Q=Q.slice(0,W.index)+B+Q.slice(W.index+W.full.length);continue}if(b$.has(H)){let B=v6(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 I1(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: ${v9(U)} -->`;Q=Q.slice(0,W.index)+j+Q.slice(W.index+W.full.length)}}return Q}function C$(){return{afterOpen:[],beforeClose:[]}}function xG($){return $.afterOpen.length>0||$.beforeClose.length>0}function g6($,Z){if(!xG(Z))return $;let J=Z.afterOpen.join(""),X=Z.beforeClose.join(""),Y=$.lastIndexOf("</head>"),Q=J?v2($):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 f6=/\s*<meta\b[^>]*\bcharset\b[^>]*>/iy;function v2($){let Z=/<head\b[^>]*>/i.exec($);if(!Z)return null;let J=Z.index+Z[0].length;f6.lastIndex=J;let X=f6.exec($);return X?J+X[0].length:J}var P$="data-stx-color-mode-boot",fG="__STX_COLOR_MODE__",gG=new Set(["light","dark","auto","system"]),hG=new Set(["auto","system"]),uG=/^[a-z][\w:-]*$/i,mG=/^[\w-]+$/;function dG($){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(!gG.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"||!mG.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"||!uG.test(Y)))throw Error(`colorMode.attribute must be a valid HTML attribute name \u2014 got ${JSON.stringify(Y)}`);if(Q!==null&&!hG.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 lG($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function v$($={}){let Z=dG($),X=`(function(){"use strict";var c=${lG(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.${fG}={storageKey:c.storageKey,initialMode:c.initialMode,darkClass:c.darkClass,attribute:c.attribute,autoValue:a||"auto",preference:p,mode:m}}catch(e){}}());`;return`<script ${P$}>${X}</script>`}function m6($,Z={}){if($.includes(P$))return $;let J=S$($);if(J===null)return $;let X=v$(Z);return`${$.slice(0,J)}
|
|
3447
|
+
${X}${$.slice(J)}`}var S$=v2,cG=new RegExp(`<script\\b[^>]*\\b${P$}\\b[^>]*>[\\s\\S]*?<\\/script>`,"i"),h6=/<meta\b[^>]*\bcharset\b[^>]*>/gi,u6=/<\/head>/gi;function pG($){let Z=/<head\b[^>]*>/i.exec($);if(!Z)return $;let J=Z.index+Z[0].length;u6.lastIndex=J;let X=u6.exec($),Y=X?X.index:$.length;h6.lastIndex=J;let Q=h6.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 d6($){return iG(pG($))}function iG($){let Z=cG.exec($);if(!Z)return $;let J=S$($);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=S$(X);if(Y===null)return $;return`${X.slice(0,Y)}
|
|
3449
|
+
${Z[0]}${X.slice(Y)}`}var gV="stx-build",hV="X-STX-Build",x2=Symbol.for("stx.buildId");function l6(){let $=globalThis;if(!$[x2])$[x2]=process.env.STX_BUILD_ID||`${Date.now().toString(36)}${Math.random().toString(36).slice(2,8)}`;return $[x2]}function uV($){let Z=globalThis;if($===null)delete Z[x2];else Z[x2]=$}function mV($,Z=l6()){let J=x$($,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 x$($,Z=l6()){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 nG}from"async_hooks";var c6=new nG;function f$($){return $.__stx_server_data??={pending:new Map,values:new Map}}function p6($,Z){return c6.run(f$($),Z)}async function i6($,Z){let J=c6.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 n6($){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 r6="<style data-stx-cloak>[x-cloak]{display:none !important}</style>",x9="data-stx-html-attrs",f9="data-stx-html-class",a6=/^[A-Za-z_:][\w:.-]*$/;function $1($){return String($).replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function sG($){return String($).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function $2($){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 e1($,Z){return Object.entries($).filter(([J])=>!Z?.(J)).map(([J,X])=>`${J}="${$1(String(X))}"`).join(" ")}function oG($={},Z="en"){let J=[],X=[],Y="",Q=Z;for(let[z,K]of Object.entries($||{})){if(K==null)continue;let q=z.trim();if(!a6.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}="${$1(String(K))}"`),X.push(q)}let G=` lang="${$1(Q)}"`;if(Y)G+=` class="${$1(Y)}"`;if(G+=J.join(""),Y)G+=` ${f9}="${$1(Y)}"`;if(X.length)G+=` ${x9}="${$1(X.join(" "))}"`;return G}function t6($={},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 e6($,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(!a6.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(!(f9 in X))Y.push(f9);X[f9]=z.join(" ")}if(K.length){if(!(x9 in X))Y.push(x9);X[x9]=K.join(" ")}let q=Y.map((W)=>` ${W}="${$1(X[W])}"`).join("");return $.replace(J[0],()=>`<html${q}>`)}function iV($){let Z=u$($);if(Z===null)return $;let J=$.lastIndexOf("</head>");return`${$.slice(0,J)}${Z}${$.slice(J)}`}function u$($){if($.includes("data-stx-cloak"))return null;if($.lastIndexOf("</head>")===-1)return null;return`${r6}
|
|
3451
|
+
`}function rG($){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 aG($,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($2).filter(Boolean)),F=[...j.filter((I)=>!B.has($2(I))),...Q].map((I)=>{return` <meta ${e1(I)}>`}).join(`
|
|
3452
3452
|
`),O=G.map((I)=>{return` <link ${e1(I)}>`}).join(`
|
|
3453
|
-
`),_=z.map((I)=>{if(I.src)return` <script ${e1(I,(
|
|
3454
|
-
`),L=
|
|
3453
|
+
`),_=z.map((I)=>{if(I.src)return` <script ${e1(I,(k)=>k==="content")}></script>`;if(I.content)return` <script>${I.content}</script>`;return""}).filter(Boolean).join(`
|
|
3454
|
+
`),L=oG(q,Y),w=Object.entries(H).map(([I,k])=>` ${I}="${$1(String(k))}"`).join(""),R=W?` class="${$1(W)}"`:"",{body:D,hoisted:N}=rG($),T=[F,J.colorMode?` ${v$(J.colorMode)}`:"",` <title>${J.titleIsHtml?U:sG(U)}</title>`,` ${r6}`,O,_,K?` ${K}`:"",...(J.styles||[]).map((I)=>` ${I}`),...N.map((I)=>` ${I}`),...(J.headScripts||[]).map((I)=>` ${I}`),J.headStack||""].filter(Boolean),M=[D,...(J.bodyScripts||[]).map((I)=>I),J.bodyStack||""].filter(Boolean);return`<!DOCTYPE html>
|
|
3455
3455
|
<html${L}>
|
|
3456
3456
|
<head>
|
|
3457
3457
|
${T.join(`
|
|
3458
3458
|
`)}
|
|
3459
3459
|
</head>
|
|
3460
|
-
<body${
|
|
3461
|
-
${
|
|
3460
|
+
<body${R}${w}>
|
|
3461
|
+
${M.join(`
|
|
3462
3462
|
`)}
|
|
3463
3463
|
</body>
|
|
3464
|
-
</html>`}var g$=/\s+/y,h$=/<(script|style)\b[^>]*>/iy,
|
|
3464
|
+
</html>`}var g$=/\s+/y,h$=/<(script|style)\b[^>]*>/iy,tG=/<\/script>/gi,eG=/<\/style>/gi,s6=/<!DOCTYPE\b/iy,o6=/<html[\s>]/iy;function m$($){let Z=0;while(Z<$.length){if(g$.lastIndex=Z,g$.exec($)){Z=g$.lastIndex;continue}if($.startsWith("<!--",Z)){let Y=$.indexOf("-->",Z);if(Y===-1)return!1;Z=Y+3;continue}h$.lastIndex=Z;let X=h$.exec($);if(X){let Y=X[1].toLowerCase()==="script"?tG:eG;Y.lastIndex=h$.lastIndex;let Q=Y.exec($);if(Q===null)return!1;Z=Q.index+Q[0].length;continue}if(s6.lastIndex=Z,s6.test($))return!0;return o6.lastIndex=Z,o6.test($)}return!1}function d$($){return m$($)}function $8($,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=$2(q);if(W&&z.includes(W))continue;K.push(` <meta ${e1(q)}>`)}for(let q of Y){if(q.href&&z.includes(`href="${q.href}"`))continue;K.push(` <link ${e1(q)}>`)}for(let q of Q)if(q.src){if(z.includes(`src="${q.src}"`))continue;K.push(` <script ${e1(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 Z8($,Z={},J={},X){if(X??d$($))return $;return
|
|
3466
|
+
${$.slice(J)}`}function Z8($,Z={},J={},X){if(X??d$($))return $;return aG($,Z,J)}var $z=/<\/(script)/gi;function Z2($){if(!$||$.indexOf("</")===-1)return $;return $.replace($z,"<\\/$1")}var H1=["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 Y8 from"path";L2();L2();function X8($,Z={}){return new J8($,Z).routes}function ZL($,Z){let J=l$($,Z);return J?J.params:null}var Q8=new Map;async function G8($,Z){let J=$,X=Z;if(!J||!X)try{let z=await x5();J||=z?.pagesDir||"pages",X||=z?.root||"."}catch{J||="pages",X||="."}let Y=Y8.isAbsolute(J)?J:Y8.join(X,J),Q=Q8.get(Y);if(Q)return Q;let G=[];try{G=X8(".",{pagesDir:Y,emit:!1}).map((z)=>z.regex.source).filter(Boolean)}catch{G=[]}return Q8.set(Y,G),G}function Zz($){return $.replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function z8($){return Zz(JSON.stringify($))}function K8($){return $.includes("data-stx-runtime")}function q8($){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 c$($,Z){let J=B2($),X=$.search(/<!doctype\b/i);if(J!==-1&&(X===-1||J>X))return $.slice(0,J)+Z+`
|
|
3467
3467
|
`+$.slice(J);let Y=v2($);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
3469
|
`+$.slice(G)}if(i0($))return x1($,(G)=>`${G}
|
|
3470
3470
|
${Z}`);return`${Z}
|
|
3471
|
-
${$}`}async function g9($,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 g9($,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-dvd2c0ab.js"),{url:Q}=await Y("runtime",Z.debug===!0);return c$($,`<script data-stx-runtime src="${Q}"></script>`)}if(Z.buildMode==="compile")return c$($,'<script data-stx-runtime src="/__stx/runtime.__STX_HASH__.js"></script>');let{getCachedSignalsRuntime:J}=await import("./chunk-dvd2c0ab.js"),X=await J(Z.debug);return c$($,`<script data-stx-scoped data-stx-runtime>${X}</script>`)}function Jz($){return/<[a-z][^>]*?\sx-tooltip\s*=/i.test($)}function W8($){if($.includes("data-stx-tooltip-runtime")||!Jz($))return $;let Z=`<script data-stx-scoped data-stx-tooltip-runtime>${O$()}</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 H8=Symbol.for("stx.lazy-module-promises");function
|
|
3476
|
-
`)}else{if(!B8(V,J,Z,z(
|
|
3477
|
-
`)
|
|
3478
|
-
`)B++;
|
|
3479
|
-
${w}`)}let W
|
|
3480
|
-
|
|
3481
|
-
`);
|
|
3473
|
+
${$.slice(J)}`}var Xz=/<script\b[^>]*\sdata-stx-router(?=[\s=>])/i;function Yz($){return Xz.test($)||$.includes("__stxRouter)return")||$.includes("__stxRouter=true")}async function Qz($,Z){if(!$.includes("</body>"))return $;if(Yz($))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 G8(Z?.pagesDir,Z?.root);if(q.length>0)K.ownedRoutes=q}catch{}if(Object.keys(K).length>0)X=`<script>window.__stxRouterConfig=${z8(K)};</script>
|
|
3474
|
+
`}let{getCachedRouterScript:Y,getServeClientAsset:Q}=await import("./chunk-dvd2c0ab.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 H8=Symbol.for("stx.lazy-module-promises");function Gz(){let $=globalThis;return $[H8]??=new Map,$[H8]}function s($,Z){let J=Gz(),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 p$=`(?:"[^"]*"|'[^']*'|[^>"'])*`,w8=/^<([a-zA-Z][a-zA-Z0-9-]*)\b((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*\s*)>([\s\S]*)<\/\1>$/s,zz=65536,Kz=4,u9=new Map;function EL(){u9.clear()}function qz($){let Z=[];for(let J of f2($,H2)){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 Wz($,Z={}){let J=$.length>=zz,X=J?u9.get($):void 0;if(X===void 0){if(X=qz($),J)_8(u9,Kz),u9.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 R8($){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}=U8(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}=U8(Y);if(G)return{style:"in",iterable:Q,itemVar:G,indexVar:z}}return{style:"unknown",iterable:null,itemVar:null,indexVar:null}}function U8($){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 s$($,Z){return F8($,Z)}function Hz($){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 Uz($){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 jz($){if(!/[:@]for\s*=/.test($)&&!/\bx-for\s*=/.test($))return[];let Z=new RegExp(`<([a-zA-Z][\\w-]*)\\b(${p$})>`,"iy"),J=/(?:^|\s)(?::for|@for|x-for)\s*=\s*(?:"([^"]*)"|'([^']*)')/i,X=f2($,(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=R8(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)||m9.has(W.toLowerCase())?Q.end:N8($,Q.start,W,Q.end);if(U!==-1)Y.push({start:Q.start,end:U,vars:new Set(q)})}return Y}var j8=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 Bz($){return $.replace(/'(?:\\.|[^'\\])*'/g,"''").replace(/"(?:\\.|[^"\\])*"/g,'""').replace(/`(?:\\.|[^`\\])*`/g,"``")}function B8($,Z,J,X){if(!$)return!1;let Y=Bz($),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(j8.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(j8.has(j)||J&&j in J)continue;z=!0}return(Q||z)&&!G}function h9($,Z,J){let X=J===void 0?` ${Z}`:` ${Z}="${J.replace(/"/g,""")}"`,Y=$.trim(),Q=Y.match(w8);if(Q&&Vz(Q[3],Q[1])){let[,G,z,K]=Q;return`<${G}${z}${X}>${K}</${G}>`}return`<template${X}>${Y}</template>`}function Vz($,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 D8($,Z){let J=Uz($);function X(Y){let Q=Y,G=jz(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(),F=B,O=1,_=F,L=/@(if\s*\(|endif)/g;L.lastIndex=F;let w;while((w=L.exec(Q))!==null)if(w[1].startsWith("if"))O++;else if(w[1]==="endif"){if(O--,O===0){_=w.index+w[0].length;break}}if(O!==0)continue;let R=Q.substring(F,_-6).trim(),D;if(Hz(R)){let N=D2(Q.substring(H,_));if(N.length===0)continue;let T=N[0].branches.filter((A)=>A.type!=="else"),M=z(H);if(!(T.length>0&&T.every((A)=>B8(A.condition,J,Z,M))))continue;D=N[0].branches.map((A)=>{let E=X(A.content);if(A.type==="elseif")return h9(E,"@else-if",A.condition??"");if(A.type==="else")return h9(E,"@else");return h9(E,"@if",A.condition??"")}).join(`
|
|
3476
|
+
`)}else{if(!B8(V,J,Z,z(H)))continue;D=h9(X(R),"@if",V)}W.push({start:H,end:_,replacement:D}),K.lastIndex=_}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 Lz($){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 m9=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),V8=/<(script|style)\b/iy,Oz=/<\/script/gi,Fz=/<\/style/gi;function N8($,Z,J,X){if(m9.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}V8.lastIndex=z;let q=V8.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"?Oz:Fz;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)||m9.has(Y)))G++}z=H+1}return-1}var _z=/\s(?::else-if|x-else-if|@else-if|:else|x-else|@else)(?=[=\s/>])/;function wz($,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 _z.test(Q)}function M8($){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,F,O]=z,_=Lz(V);if(_===void 0)continue;let L=z.index,w=L+H.length,N=!!O||/\/\s*>$/.test(H)||m9.has(U.toLowerCase())?w:N8($,L,U,w);if(N===-1)continue;if((B===":if"||B==="x-if"||B==="@if")&&wz($,N)){Q.lastIndex=w;continue}if(_===!0){let M=`<${U}${j}${F}${O}>`;G.push({start:L,end:w,replacement:M});continue}G.push({start:L,end:N,replacement:""}),Q.lastIndex=N}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 o$($,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=R8(U),V=z==="for"?"@endfor":"@endforeach",F=1,O=j,_=z==="for"?new RegExp("@(for(?!each)\\s*\\(|endfor(?!each))","g"):new RegExp(`@(${z}\\s*\\(|end${z})`,"g");_.lastIndex=j;let L;while((L=_.exec(J))!==null)if(L[1].startsWith(z))F++;else if(F--,F===0){O=L.index+L[0].length;break}if(F!==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 R=J.substring(j,O-V.length).trim(),D=Z?{...Z}:{};if(B.itemVar)delete D[B.itemVar];if(B.indexVar)delete D[B.indexVar];let N=o$(R,D),T=N.match(w8),M;if(T){let[,I,k,A]=T;M=`<${I}${k} @for="${U}">${A}</${I}>`}else M=`<template @for="${U}">${N}</template>`;Q.push({start:K,end:O,replacement:M}),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 Rz($){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 Dz=new Set(["script","style","html","head","meta","link","title","!doctype"]);function i$($,Z,J){for(let X of J){if(X.start>=Z)return!1;if(X.end>$)return!0}return!1}function Nz($,Z,J){let X=0;while(X<$.length){let Y=$.indexOf(Z,X);if(Y===-1)return!1;if(!i$(Y,Y+Z.length,J))return!0;X=Y+Z.length}return!1}function Mz($,Z){if(Nz($,"<body",Z)){let Y=new RegExp(`<body(${p$})>`,"g"),Q;while((Q=Y.exec($))!==null)if(!i$(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(${p$})>`,"gi"),X;while((X=J.exec($))!==null){if(i$(X.index,X.index+X[0].length,Z))continue;if(Dz.has(X[1].toLowerCase()))continue;return X.index+X[0].length-1}return null}function Az($,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 Iz($,Z,J){let X=Wz($,{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-rfq5h4zn.js"));for(let _ of X){let L=_.body;if(T1(_.attrs))L=k1(L);if(Y.test(L)){Q.push({content:L,start:_.start,end:_.end});continue}if(!G(L))continue;try{let w=await z(J2(L).code,Z||"",{projectRoot:process.cwd(),externalizeUserModules:!1});if(Y.test(w))Q.push({content:L,start:_.start,end:_.end})}catch{}}if(Q.length===0)return{output:$,setupCode:null};let K=`${Z??""}\x00${Q.map((_)=>_.content).join("\x00")}`,q=`__stx_setup_${Bun.hash(K).toString(36).slice(0,10)}`,W=[];for(let _=0;_<Q.length;_++){let L=Q[_].bundled??J2(Q[_].content).code;if(!Q[_].bundled&&G(L))L=await z(L,Z||"",{projectRoot:process.cwd()});L=yz(L);let w=e0(L);W.push(`// \u2500\u2500 merged signal script #${_+1} \u2500\u2500
|
|
3479
|
+
${w}`)}let H=W.join(`
|
|
3480
|
+
|
|
3481
|
+
`);H=Rz(H);let U=Tz(H),j=U.split(",").map((_)=>_.trim()).filter(Boolean),B=n$(H,J),V=`
|
|
3482
3482
|
<script data-stx-scoped>
|
|
3483
3483
|
function ${q}() {
|
|
3484
3484
|
${o1("const",j)}
|
|
3485
|
-
${Z2(`${B}${
|
|
3485
|
+
${Z2(`${B}${H}`)}
|
|
3486
3486
|
return { ${U} };
|
|
3487
3487
|
}
|
|
3488
3488
|
window.__stx_latestSetup=${q};
|
|
3489
3489
|
if(window.stx)window.stx._latestSetup=${q};
|
|
3490
|
-
</script>`,F=
|
|
3491
|
-
`)return;Q++}},q=()=>{if(!z)return!0;if(/[\w)\]]/.test(z))return!1;return!0},
|
|
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
|
|
3493
|
-
${Y.slice(z)}`;else if(K!==-1){let q=/<body[^>]*>/i.exec(Y.slice(K))[0],
|
|
3494
|
-
${G}${Y.slice(
|
|
3495
|
-
${G}`}return Y}function L8($,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(([H
|
|
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[E8]=!0,J}async function
|
|
3497
|
-
// Source: ${
|
|
3490
|
+
</script>`,F=Mz($,Q);return{output:Az($,Q,F,q),setupCode:V}}function Tz($){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 R=w.indexOf(":"),N=(R>=0?w.slice(R+1).trim():w).split(/[\s=]/)[0];if(N&&!X.has(N))J.push(N),X.add(N)});return}let F=Z.slice(Q).match(/^(?:const|let|var)\s+\[([^\]]+)\]\s*=/);if(F){F[1].split(",").forEach((L)=>{let w=L.trim().replace(/^\.\.\./,"");if(!w)return;let R=w.split(/[\s=]/)[0];if(R&&!X.has(R))J.push(R),X.add(R)});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 _=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(_){let L=_[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 A8($,Z,J,X){if(!s$($,J))return $;let Y=$;if(Z.skipSignalsRuntime)return Y;let{output:Q,setupCode:G}=await Iz(Y,J,X);if(Y=Q,!G){let z=i0(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 g9(Y,Z),G){let z=L8(Y,/<\/head>/i),K=z===-1?L8(Y,/<body[^>]*>/i):-1;if(z!==-1)Y=`${Y.slice(0,z)}${G}
|
|
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
|
+
${G}${Y.slice(W)}`}else Y=`${Y}
|
|
3495
|
+
${G}`}return Y}function L8($,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 O8="/* [stx import stripped, resolved via window.stx in __stx_setup] */";function kz($){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 O8;return`var ${Z.join(", ")}; ${O8}`}var Ez=/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm;function yz($){return $.replace(Ez,(Z,J)=>kz(J))}import Y2 from"path";import I8 from"process";function X2($="STX_PUBLIC_"){let Z={},J={};for(let[X,Y]of Object.entries(I8.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 CL($="STX_PUBLIC_"){let Z={};for(let[J,X]of Object.entries(I8.env))if(J.startsWith($)&&X!==void 0)Z[J]=X;return Z}function T8($){return $.startsWith("http://")||$.startsWith("https://")||$.startsWith("//")}async function k8($,Z,J){try{let X;if($.startsWith("/")){let Y=Z;for(let Q=0;Q<5;Q++){let G=Y2.join(Y,$);if(await Bun.file(G).exists())return G;Y=Y2.dirname(Y)}X=Y2.join(Z,$)}else if($.startsWith("./")||$.startsWith("../"))X=Y2.resolve(Z,$);else X=Y2.resolve(Z,$);if(await Bun.file(X).exists())return X;return null}catch{return null}}var E8=Symbol.for("stx.inline-assets.import-meta");function bz($,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[E8]=!0,J}async function y8($,Z,J){let X=$,Y=Y2.dirname(Z),Q=/<script\b([^>]*)src=["']([^"']+)["']([^>]*)><\/script>/gi,G;while((G=Q.exec(X))!==null){let[q,W,H,U]=G;if(T8(H))continue;let j=await k8(H,Y,Z);if(j)try{let B=await Bun.file(j).text();if(J.add(j),H.endsWith(".ts")||H.endsWith(".tsx")){let F=await Bun.build({entrypoints:[j],target:"browser",minify:!0,define:X2()});if(F.outputs.length>0)B=await F.outputs[0].text(),bz(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?.[E8])throw B}}let z=/<link\b([^>]*)href=["']([^"']+)["']([^>]*)(?:\/?>)/gi,K;while((K=z.exec(X))!==null){let[q,H,
|
|
3500
|
-
/* Source: ${
|
|
3499
|
+
</script>`;X=X.replace(q,V),Q.lastIndex=0}catch(B){if(B?.[E8])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(T8(H))continue;if(/rel=["']stylesheet["']/.test(j)||H.endsWith(".css")){let V=await k8(H,Y,Z);if(V)try{let F=await Bun.file(V).text();J.add(V);let O=`<style>
|
|
3500
|
+
/* Source: ${H} */
|
|
3501
3501
|
${F}
|
|
3502
|
-
</style>`;X=X.replace(q,O),z.lastIndex=0}catch(F){}}}return X}function r$($,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,
|
|
3502
|
+
</style>`;X=X.replace(q,O),z.lastIndex=0}catch(F){}}}return X}function r$($,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,F=!1;for(let L=0;L<H.length;L++){let w=H[L];if(F){F=!1;continue}if(w==="\\"&&V){F=!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,_=j>=0?H.substring(j+1).trim():void 0;try{let L=O.trim(),w;if(B0(L))w=U0(L,Object.keys(Z))(...Object.values(Z));else w=void 0;let R;if(_==="true")R=JSON.stringify(w,null,2);else R=JSON.stringify(w);let D=R.replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029");J=J.substring(0,Q)+D+J.substring(K+1),X.lastIndex=Q+D.length}catch(L){s0.log(L instanceof Error?L:Error(String(L)),{directive:"@json"},"error"),X.lastIndex=Q+U.length}}return J}function a$($){return $.replace(/@once\s*([\s\S]*?)@endonce/g,"$1")}function S8($){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*)*)/),F=V?V[0].length:0,O=j.slice(F),_=j.match(/(\s*)$/),L=_?_[0].length:0,w=O.slice(0,O.length-L),R=w.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*?)?(\/?)>/),D;if(R){let[N,T,M="",I]=R,k=`<${T}${M} data-stx-memo="${q}"${I}>`;D=j.slice(0,F)+k+w.slice(N.length)+j.slice(F+w.length)}else D=`${j.slice(0,F)}<div data-stx-memo="${q}">${w}</div>${j.slice(F+w.length)}`;Y.push({start:Q,end:B,replacement:D}),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 t$($){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 P8($,Z){if(!/\bref\s*=/.test($))return $;let J=/<\/?([a-zA-Z][\w-]*)\b(?:"[^"]*"|'[^']*'|[^'">])*>/y,X=f2($,(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(!v8.has(H)&&!/\/>$/.test(W)){if(Y.push({name:H,scoped:U}),U)Q++}}return z.push($.slice(G)),z.join("")}var v8=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),x8=/(?:^|\s)x-no-cloak(?:=|\s|\/|>|$)/,b8=/<\/?\s*([a-z][\w-]*)/iy,Cz=/\s/;function Sz($,Z){let J=Z-1;while(J>=0&&Cz.test($[J]))J--;return J>=0&&$[J]==="/"}function Pz($,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 vz($,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=Pz($,X);if(q===-1)break;b8.lastIndex=X;let W=b8.exec($)?.[1]?.toLowerCase()??"";if($[X+1]==="/"){if(J===0)break;J--}else if(!Sz($,q)&&!v8.has(W))J++;X=q+1}return!1}function f8($){if($.length>=32768&&!C8($))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(x8.test(H))continue;if(H.includes("x-cloak"))continue;if(vz($,W+1))X+=$.slice(Y,W)+" x-cloak>",Y=W+1}return X+=$.slice(Y),X}var xz=/(?:^|\s)(?::else-if|:if|:else|:show|x-else-if|x-if|x-else|x-show|@if|@show)(?:=|\s|\/|>|$)/,fz=/<\/script>/gi,gz=/<\/style>/gi;function g8($){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"?fz:gz;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(x8.test(H))continue;if(/(?:^|\s)x-cloak(?:=|\s|\/|>|$)/.test(H))continue;if(!xz.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 e$=b1(256),hz=[{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 $3($,Z,J,X){let Y=typeof J==="boolean"?{enabled:J,failOnViolation:J}:J??{enabled:!1};if(!Y.enabled)return;let Q=U1($,Z,X,JSON.stringify(Y)),G=e$.get(Q);if(G!==void 0){if(G&&Y.failOnViolation)throw Error(G);return}let z=Y.allowPatterns??[],K=[],q=Q0($.replace(/\{\{--[\s\S]*?--\}\}/g,(j)=>j.replace(/[^\n]/g," ")));for(let{pattern:j,message:B,suggestion:V}of hz){if(z.some((O)=>/\w/.test(O)&&B.includes(O)))continue;j.lastIndex=0;let F=q.match(j);if(F&&F.length>0){let O=q.split(`
|
|
3503
3503
|
`),_=$.split(`
|
|
3504
|
-
`),L=[];O.forEach((
|
|
3505
|
-
`),R
|
|
3506
|
-
${
|
|
3507
|
-
\u2192 ${V}${
|
|
3504
|
+
`),L=[];O.forEach((N,T)=>{if(j.lastIndex=0,j.test(N))L.push(T+1)});let w=L.length>0?` (script line${L.length>1?"s":""} ${L.join(", ")})`:"",R=L.slice(0,3).map((N)=>` ${N} | ${(_[N-1]??"").trim().slice(0,100)}`).join(`
|
|
3505
|
+
`),D=R?`
|
|
3506
|
+
${R}`:"";K.push(` \u2717 ${B}${w}
|
|
3507
|
+
\u2192 ${V}${D}`)}}if(K.length===0){e$.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(e$.set(Q,U),Y.failOnViolation)throw Error(U);else console.warn(U)}
|
|
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
|
|
3510
|
+
Tip: prefer useRef(), navigate(), and composables for component code`;if(e$.set(Q,U),Y.failOnViolation)throw Error(U);else console.warn(U)}lz();import Z3 from"path";var uz=/(\bfrom\s*|\bimport\s*\(\s*|\bimport\s+)(['"])(\.\.?\/[^'"]*)\2/g,mz=/(<script\b[^>]*>)([\s\S]*?)(<\/script>)/gi;function dz($,Z){if(!Z||!$.includes("/"))return $;let J=Z3.dirname(Z);return $.replace(uz,(X,Y,Q,G)=>{let z=Z3.resolve(J,G);return`${Y}${Q}${z.split(Z3.sep).join("/")}${Q}`})}function h8($,Z){if(!Z||!$.includes("<script"))return $;return $.replace(mz,(J,X,Y,Q)=>`${X}${dz(Y,Z)}${Q}`)}var C1="<!--PARENT_CONTENT_PLACEHOLDER-->";function u8($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function KZ($,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
|
+
`,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 qZ($,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 m8($,Z,J){try{let{registeredModuleIdsIn:X,buildModuleRegistryScript:Y}=await s("stx/client-module-registry",()=>import("./chunk-
|
|
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 qZ($,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 m8($,Z,J){try{let{registeredModuleIdsIn:X,buildModuleRegistryScript:Y}=await s("stx/client-module-registry",()=>import("./chunk-h0k7xkah.js")),Q=[],G=await Y(X(...$),{minify:Z.buildMode==="compile",collectInputs:Q});for(let z of Q)J?.add(z);if(!G)return null;if(Z.buildMode==="serve"){let{registerServeModuleBundle:z}=await import("./chunk-dvd2c0ab.js");return`<script data-stx-scoped data-stx-run="always" data-stx-modules src="${z(G)}"></script>`}return`<script data-stx-scoped data-stx-run="always" data-stx-modules>${G.replace(/<\/script/gi,"<\\/script")}</script>`}catch{return null}}function pz($,Z=""){let J=qZ($,"data-stx-runtime");if(!J)return $;let X=B2($);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
3514
|
`+$.slice(X,J.start)+$.slice(J.end);let Y=$.slice(J.start,J.end),Q=$.slice(0,J.start)+$.slice(J.end),G=B2(Q);if(G===-1)return Y+Z+`
|
|
3515
3515
|
`+Q;return Q.slice(0,G)+Y+Z+`
|
|
3516
|
-
`+Q.slice(G)}async function X3($,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;f$(Z);for(let G of X._layerGraph?.configDependencies??[])Y.add(G);if(Q&&X.runtimeConfig)await p9(Z,J,X.runtimeConfig);if(Q)k3(Z),Z.__stx_head_injections=C$(),Z.__stx_seo_staged=!1;if(!Z.__stxProcessingDepth)Z.__stxProcessingDepth=0;if(Z.__stxProcessingDepth++,!Z.__onceStore)Z.__onceStore=new Set;if((X.debug||!C2()&&!S2())&&J&&J.endsWith(".stx"))XZ($,J);try{return await e8.timeAsync("template-processing",async()=>{let G=await
|
|
3517
|
-
`),...q.htmlAttrs&&{htmlAttrs:t6(z.htmlAttrs,q.htmlAttrs)},...q.bodyAttrs&&{bodyAttrs:{...z.bodyAttrs||{},...q.bodyAttrs}}},L=d$(G);if(G=Z8(G,_,{...V&&{titleIsHtml:!0},...X.app?.colorMode&&{colorMode:X.app.colorMode}},L),L)G=$8(G,z),G=e6(G,_.htmlAttrs);let w=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(w&&G.includes("<head")){let
|
|
3518
|
-
<meta name="stx-layout" content="${u8(
|
|
3519
|
-
<meta name="stx-layout-group" content="${u8(T)}">`)}let
|
|
3520
|
-
${j}`).join("");G=
|
|
3521
|
-
`+G.slice(q)}}if(Q)G=d6(G);if(Q&&Z.__stx_inject_css!==!1)G=await ZZ(G,void 0,X.buildMode==="serve",!0);else if(Q)G=$Z(G);if(G=G.replace(/\x00STX_ESCAPED_AT\x00/g,"@"),Q&&Z.__stx_runtime_config)G=t8(G,Z.__stx_runtime_config);if(Q&&!Z.__stx_defer_server_data){let z=n6(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 i8)throw G;let z=G instanceof Error?G.message:String(G),K=new g2(`Template processing failed: ${z}`,J,void 0,void 0,$.substring(0,200)+($.length>200?"...":""));if(s0.log(K,{filePath:J,context:Z}),s8.logDetailedError(K,{filePath:J,template:$.substring(0,500)}),X.debug)throw K;return n8.createFallbackContent("Template Processing",K)}}async function
|
|
3516
|
+
`+Q.slice(G)}async function X3($,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;f$(Z);for(let G of X._layerGraph?.configDependencies??[])Y.add(G);if(Q&&X.runtimeConfig)await p9(Z,J,X.runtimeConfig);if(Q)k3(Z),Z.__stx_head_injections=C$(),Z.__stx_seo_staged=!1;if(!Z.__stxProcessingDepth)Z.__stxProcessingDepth=0;if(Z.__stxProcessingDepth++,!Z.__onceStore)Z.__onceStore=new Set;if((X.debug||!C2()&&!S2())&&J&&J.endsWith(".stx"))XZ($,J);try{return await e8.timeAsync("template-processing",async()=>{let G=await iz($,Z,J,X,Y);if(Q)G=t$(G);if(Q&&X.autoShell&&X.buildMode!=="compile"){let z=X.app?.head||{},q=(Z.__stx_runtime_head||null)??JZ(),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),F=q.meta||[],O=new Set(F.map((N)=>$2(N)).filter(Boolean)),_={...z,...B&&{title:B},meta:[...(z.meta||[]).filter((N)=>!O.has($2(N))),...F],link:[...z.link||[],...q.link||[]],script:[...z.script||[],...q.script||[]],headRaw:[z.headRaw,W].filter(Boolean).join(`
|
|
3517
|
+
`),...q.htmlAttrs&&{htmlAttrs:t6(z.htmlAttrs,q.htmlAttrs)},...q.bodyAttrs&&{bodyAttrs:{...z.bodyAttrs||{},...q.bodyAttrs}}},L=d$(G);if(G=Z8(G,_,{...V&&{titleIsHtml:!0},...X.app?.colorMode&&{colorMode:X.app.colorMode}},L),L)G=$8(G,z),G=e6(G,_.htmlAttrs);let w=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(w&&G.includes("<head")){let N=w[1],T=a8(N);G=G.replace(/<head\b[^>]*>/i,(M)=>`${M}
|
|
3518
|
+
<meta name="stx-layout" content="${u8(N)}">
|
|
3519
|
+
<meta name="stx-layout-group" content="${u8(T)}">`)}let R=G.match(/function (__stx_setup_\w+)\(/),D=R?i0(G):null;if(R&&D&&!/\bdata-stx=/.test(D.tag)){G=x1(G,(T,M)=>`<body${M} data-stx="${R[1]}">`);let N=new RegExp(`(<(?!body)[a-zA-Z][^>]*) data-stx="${R[1]}"`,"i");G=G.replace(N,"$1")}}if(Q){let z=Z.__stx_head_injections??C$(),K=u$(G);if(K!==null)z.beforeClose.push(K);let q=x$(G);if(q!==null)z.afterOpen.push(q);G=g6(G,z);let W=X.app?.colorMode;if(W)G=m6(G,W)}if(Q)if(qZ(G,"data-stx-runtime")){let K=null,q=null,W=null,H=null;try{let{getStoreScript:j}=await s("stx/store-loader",()=>import("./chunk-rc3d4yyy.js")),B=X.storesDir,V=await j(B);if(V)q=`<script data-stx-stores>${V}</script>`}catch{}K=await m8([G,q],X,Y);try{let{getFrameworkComposableScript:j}=await s("stx/framework-composables",()=>import("./chunk-sc5kdhc5.js"));H=await j(G)}catch{}try{let{getComposableScript:j}=await s("stx/composable-loader",()=>import("./chunk-ryc446j9.js")),B=X.composablesDir,V=[K,q,H].filter((O)=>O!==null),F=await j(X._layerComposableDirs??B,G,V);if(F)W=`<script data-stx-scoped data-stx-run="always" data-stx-composables>${F}</script>`}catch{}let U=[K,q,W,H].filter((j)=>j!==null).map((j)=>`
|
|
3520
|
+
${j}`).join("");G=pz(G,U)}else{let K=await m8([G],X,Y);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=d6(G);if(Q&&Z.__stx_inject_css!==!1)G=await ZZ(G,void 0,X.buildMode==="serve",!0);else if(Q)G=$Z(G);if(G=G.replace(/\x00STX_ESCAPED_AT\x00/g,"@"),Q&&Z.__stx_runtime_config)G=t8(G,Z.__stx_runtime_config);if(Q&&!Z.__stx_defer_server_data){let z=n6(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 i8)throw G;let z=G instanceof Error?G.message:String(G),K=new g2(`Template processing failed: ${z}`,J,void 0,void 0,$.substring(0,200)+($.length>200?"...":""));if(s0.log(K,{filePath:J,context:Z}),s8.logDetailedError(K,{filePath:J,template:$.substring(0,500)}),X.debug)throw K;return n8.createFallbackContent("Template Processing",K)}}async function iz($,Z,J,X,Y){let Q=process.cwd(),G={...X,partialsDir:X.partialsDir&&!b0.isAbsolute(X.partialsDir)?b0.resolve(Q,X.partialsDir):X.partialsDir,componentsDir:X.componentsDir&&!b0.isAbsolute(X.componentsDir)?b0.resolve(Q,X.componentsDir):X.componentsDir,layoutsDir:X.layoutsDir&&!b0.isAbsolute(X.layoutsDir)?b0.resolve(Q,X.layoutsDir):X.layoutsDir},z=G,K=$;await oz(J,Z),sz(Z,z),K=await h2(()=>T6(K,Z,J,z),K,(L)=>{s0.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=V1(K,y9,(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,R)=>W[Number(R)]??""),U="\x00STX_ESCAPED_AT\x00";K=K.replace(/@@/g,U),K=K.replace(/@\{\{([\s\S]*?)\}\}/g,(L,w)=>{return`{{ ${w} }}`}),K=C6(K),K=await y8(K,J,Y);let j={};K=I$(K,j);let B={...Z.__sections||{}},V="",F=H4(W4($)),O=/@nolayout\b/.test(K)||F===!1;if(/@nolayout\b/.test(K))K=K.replace(/@nolayout\b\s*/g,"");let _=K.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(_)V=_[1],K=K.replace(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/g,"");else if(typeof F==="string"){if(V=F,!/@section\s*\(/.test(K))K=`@section('content')
|
|
3522
3522
|
${K.trim()}
|
|
3523
|
-
@endsection`}if(!V&&!O&&z.defaultLayout){let L=m$(K),w=/@section\s*\(/.test(K);if(!L||w){let
|
|
3523
|
+
@endsection`}if(!V&&!O&&z.defaultLayout){let L=m$(K),w=/@section\s*\(/.test(K);if(!L||w){let R="",D=b0.dirname(J),N=z.layoutsDir?b0.dirname(z.layoutsDir):process.cwd();for(let T=0;T<20;T++){let M=b0.join(D,"_layout.stx");if(await t(M)){R=M;break}let I=b0.dirname(D);if(I===D||I.length<N.length)break;D=I}if(R)V=R;else if(z.layoutsDir){let T=b0.isAbsolute(z.layoutsDir)?z.layoutsDir:b0.resolve(process.cwd(),z.layoutsDir),M=b0.join(T,`${z.defaultLayout}.stx`);if(await t(M))V=M}if(V&&!w)K=`@section('content')
|
|
3524
3524
|
${K.trim()}
|
|
3525
|
-
@endsection`}}if(V&&K.includes("<script")){let L=x0(K),w=L.scripts.map((
|
|
3525
|
+
@endsection`}}if(V&&K.includes("<script")){let L=x0(K),w=L.scripts.map((R)=>d8(R,J)??R);K=j2(L.output,w)}if(K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(L,w,R)=>{return B[w]=R,""}),K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*([^)]+?)\s*\)/g,(L,w,R)=>{if(/^(['"]).*\1$/.test(R.trim()))return L;try{let D=X0(R.trim(),Z);if(D===void 0)return L;return B[w]=String(D??""),""}catch{return L}}),K=K.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@endsection|@show)/g,(L,w,R)=>{if(R.includes("@parent"))B[w]=R.replace("@parent",C1);else B[w]=R.trim();return""}),Z.__sections=B,K=K.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?\)/g,(L,w,R)=>{return B[w]||R||""}),!("slot"in Z)||Z.slot===void 0)K=K.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""});if(K=T$(K,j),V){let L=[],w=x0(K),R=V1(w.output,J9,(D,N)=>`\x00STX_ORPHAN_STYLE_${N}\x00`);if(K=R.output.replace(/\x00STX_(SCRIPT|ORPHAN_STYLE)_(\d+)\x00/g,(D,N,T)=>{let M=N==="SCRIPT"?d8(w.scripts[Number(T)],J):R.tokens[Number(T)];if(M)L.push(M);return""}),L.length>0){let D=L.join(`
|
|
3526
3526
|
`);B.content=B.content?`${B.content}
|
|
3527
|
-
${
|
|
3528
|
-
${K}`,
|
|
3529
|
-
`;if(Q=I(Q,Z),Q=
|
|
3527
|
+
${D}`:D,Z.__sections=B}}if(V)try{let L;if(b0.isAbsolute(V))L=V,Y.add(V);else L=await h2(()=>q9(V,J,G,Y),null,()=>{throw new g2(`Failed to resolve layout path: ${V}`,J,void 0,void 0,`Layout referenced from ${J}`)});if(!L){let M=(A)=>{if(!A)return[];try{let E=b0.isAbsolute(A)?A:b0.resolve(process.cwd(),A);return cz.readdirSync(E).filter((C)=>C.endsWith(".stx")).map((C)=>C.replace(/\.stx$/,""))}catch{return[]}},I=[...M(G.layoutsDir),...M(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(s0.log(Error(k),{layoutPath:V,filePath:J,available:I},"error"),console.error(`[stx] ${k}`),G.debug)throw new g2(k,J);return K}let w=await h2(()=>Bun.file(L).text(),"",()=>{throw new g2(`Failed to read layout file: ${L}`,J,void 0,void 0,"Layout content could not be loaded")});w=h8(w,L);let R=w.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(R){if(G.debug)console.log(`Found nested layout: ${R[1]} in ${L}`);let M={},I=w.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(E,C,b)=>{return M[C]=b.trim(),""});for(let[E,C]of Object.entries(M))if(B[E]&&B[E].includes(C1)){let b=B[E].indexOf(C1);B[E]=B[E].slice(0,b)+C+B[E].slice(b+C1.length)}else if(!B[E])B[E]=C;let k={...Z,__sections:B},A=`@layout('${R[1]}')${I}`;return await X3(A,k,L,G,Y)}let D=w.replace(/\{\{--[\s\S]*?--\}\}/g,""),N=I$(D,j),T={};return N=N.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(M,I,k)=>{return T[I]=k.trim(),`@slot('${I}')`}),N=N.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(M,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||""}),N=nz(N,B),N=N.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""}),N=T$(N,j),Z.__originalFilePath=J,K=await p8(N,Z,L,G,Y),K=`<!-- stx-layout: ${V} -->
|
|
3528
|
+
${K}`,H(K)}catch(L){return s0.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 p8(K,Z,J,G,Y))}function nz($,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 sz($,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 oz($,Z){await h2(()=>y6($,Z),void 0,(J)=>{s0.log(J,{filePath:$,phase:"view-composer"},"warning"),console.warn(`[stx] view composer failed for ${$}: ${J.message}`)})}var J3="data-stx-source";function d8($,Z){if(!$)return $;let J=/^<script\b([^>]*)>/i.exec($);if(!J||!/\bserver\b/.test(J[1])||J[1].includes(J3))return $;return`<script ${J3}="${encodeURIComponent(Z)}"${$.slice(7)}`}function rz($){let Z=new RegExp(`${J3}="([^"]*)"`).exec($);return Z?decodeURIComponent(Z[1]):void 0}function l8($){return $.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function c8($,Z,J){return`<div data-stx-server-script-error role="alert" style="padding:12px 14px;border:1px solid #f0b4b4;border-left-width:4px;background:#fff5f5;color:#7a1f1f;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace"><strong style="display:block;margin-bottom:4px">stx: a <script server> ${Z==="module-resolution"?"imports a module that does not resolve":Z==="syntax"?"does not parse":"names something that does not exist"}, so this component rendered nothing.</strong><span style="display:block;opacity:.85">${l8($)}</span><span style="display:block;margin-top:4px">${l8(J)}</span></div>`}async function az($,Z,J,X){let{scanScriptTags:Y}=await s("stx/signal-processing",()=>import("./chunk-mrxrz9b1.js")),Q=[],G=!C2()&&!S2();for(let K of Y($)){let q=K.attrs;if(!/\bserver\b/.test(q))continue;let W=K.start+K.fullMatch.indexOf(">")+1,H=KZ($,W);if(H===-1)continue;let U=$.slice(W,H);if(!U.trim())continue;let j=rz(q)??J,B={index:K.start,length:H+9-K.start};try{let{extractVariables:V}=await s("stx/variable-extractor",()=>import("./chunk-vsvjw3bp.js"));await V(U,Z,j,{preserveExisting:!0,onFailure:(F)=>{if(F.kind==="unknown")return;if(X?.onServerScriptError?.({sourcePath:j,kind:F.kind,message:F.message}),!G)return;Q.push({...B,markup:c8(j,F.kind,F.message)})}})}catch(V){let F=V instanceof Error?V:Error(String(V));if(s0.log(F,{filePath:j,phase:"server-script-extraction"},"warning"),console.warn(`[stx] server <script> extraction failed in ${j}: ${F.message}`),G)Q.push({...B,markup:c8(j,"unknown",F.message)})}}if(Q.length===0)return $;let z=$;for(let K of Q.sort((q,W)=>W.index-q.index))z=z.slice(0,K.index)+K.markup+z.slice(K.index+K.length);return z}async function tz($,Z,J){try{let{interpolateScriptsInTemplate:X}=await s("stx/expressions",()=>import("./chunk-jehmjxnq.js"));return X($,Z,{skipServer:!0})}catch(X){let Y=X instanceof Error?X:Error(String(X));return s0.log(Y,{filePath:J,phase:"script-expression-interpolation"},"warning"),console.warn(`[stx] script expression interpolation failed in ${J}: ${Y.message}`),$}}async function p8($,Z,J,X,Y){let Q=$,G=X;if(Q=await az(Q,Z,J,X),Q=await tz(Q,Z,J),Q=await j6(Q,Z,J),Q=await B6(Q,Z,J),Q=await L7(Q,Z,J,G),X1(Q))Q=D8(Q,Z),Q=o$(Q,Z);Q=M8(Q);let{processStreamDirectives:z}=await s("stx/streaming",()=>import("./chunk-w499e1n1.js"));Q=z(Q,Z),Q=D6(Q,Z,J,G,!0),Q=await x6(Q,Z,J,G,Y),Q=await D$(Q,Z,J,G,Y),Q=q4(Q,Z,J,G);let{processDeferDirectives:K}=await s("stx/defer",()=>import("./chunk-ws7dy2jt.js"));Q=K(Q,Z,J);let{processTeleportDirectives:q}=await s("stx/teleport",()=>import("./chunk-cjqqh2cn.js"));Q=q(Q,Z,J);let{processTransitionDirectives:W,processTransitionAttributes:H}=await s("stx/transitions",()=>import("./chunk-ms3xppjb.js"));Q=W(Q,Z,J),Q=H(Q);let{processErrorBoundaryDirectives:U,stripRenderFailedMarkers:j}=await s("stx/error-boundaries",()=>import("./chunk-ht2496q5.js"));Q=U(Q,Z,J),Q=j(Q);let{processSuspenseDirectives:B}=await s("stx/suspense",()=>import("./chunk-vd9ss2dm.js"));Q=B(Q,Z,J);let{processAsyncDirectives:V}=await s("stx/async-components",()=>import("./chunk-ha15g06r.js"));Q=V(Q,Z,J);let{processKeepAliveDirectives:F}=await s("stx/keep-alive",()=>import("./chunk-qg9rm36c.js"));Q=F(Q,Z,J);let{processVirtualListDirectives:O,processVirtualGridDirectives:_,processInfiniteListDirectives:L}=await s("stx/virtual-scrolling",()=>import("./chunk-tpqyvmqd.js"));Q=O(Q,Z,J),Q=_(Q,Z,J),Q=L(Q,Z,J);let{processPartialHydrationDirectives:w,processStaticDirectives:R}=await s("stx/partial-hydration",()=>import("./chunk-6pywgdcs.js"));Q=w(Q,Z,J),Q=R(Q);let{processComputedDirectives:D,processWatchDirectives:N}=await s("stx/computed",()=>import("./chunk-1n3syq26.js"));Q=D(Q,Z,J),Q=N(Q,Z,J);let{processFormValidationDirectives:T}=await s("stx/forms-validation",()=>import("./chunk-pecjvzrk.js"));Q=T(Q,Z,J);let{processHeadDirective:M,processTitleDirective:I,processMetaDirective:k,resetHead:A}=await s("stx/head",()=>import("./chunk-b3rqr465.js"));if(!Z.__stx_head_preset&&!Z.__stx_runtime_head)A();let E=M(Q);if(Q=E.content,E.headContent)Z.__stx_head_raw=`${Z.__stx_head_raw||""}${E.headContent}
|
|
3529
|
+
`;if(Q=I(Q,Z),Q=k(Q,Z,J),Q=E6(Q),Q=d5(Q,Z),Q=j7(Q),Q=A6(Q),Q=await A$(Q,Z,J,G,Y),Q=await D$(Q,Z,J,G,Y),Z.__stxProcessingDepth===1)Q=E3(Q,Z);if(Q=Q.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/g,""),Q=t$(Q),Q=t0(Q,Z,J),Q=E$(Q),Q=j4(Q,Z,{filePath:J,buildMode:G.buildMode}),Q=l5(Q,Z),Q=c5(Q,Z),Q=A2(Q,Z),Q=a5(Q,Z),Q=t5(Q,Z),Q=await Z7(Q,Z,J,G),Q=await w4(Q,Z,J),Q=await o8(Q,Z,J,G),Q=r8(Q,Z,J,G),Q=YZ(Q,Z,J,G),Q=QZ(Q,Z,J),Q=GZ(Q,Z,J,G),Q=H7(Q,Z,J,G),Q=r$(Q,Z),Q=a$(Q),Q=S8(Q),!G.skipEventDirectives)Q=A3(Q,Z,J);if(Q=L4(Q,Z,J),G.debug){let f=/\bx-data\s*=/.test(Q),l=s$($);if(f&&l)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=$6(Q,Z),Q=await L1(Q,Z,J),Q=f8(Q),Q=g8(Q),Q=Z4(Q);let{processXElementDirectives:C}=await s("stx/x-element",()=>import("./chunk-
|
|
3531
|
+
Prefer signals (state/derived/effect) for new components.`)}Q=$6(Q,Z),Q=await L1(Q,Z,J),Q=f8(Q),Q=g8(Q),Q=Z4(Q);let{processXElementDirectives:C}=await s("stx/x-element",()=>import("./chunk-ttfx0b5m.js"));Q=C(Q);let b=Z.__originalFilePath||J,y=d9(Z);if(Q=await A8(Q,G,b,y),Q=w7(Q,Z),Q=await k6(Q,Z,J,G),G.media?.image?.autoSiblings){let f=G.publicDir||"public",{rewriteImagesWithSiblings:l}=await s("stx/image-optimization/auto-sibling",()=>import("./chunk-tmcnptq6.js"));Q=await l(Q,{publicDir:f})}if(G.seo?.enabled)Q=zZ(Q,Z,G);let P=(f,l,Z0=!0)=>{if(!l)return f;let j0=l.match(/<title\b[^>]*>[\s\S]*?<\/title>/i),_0=f.match(/<title\b[^>]*>[\s\S]*?<\/title>/i);if(j0&&_0){if(Z0)f=f.replace(_0[0],j0[0]);if(l=l.replace(j0[0],"").trim(),!l)return f}if(/<\/head>/i.test(f))return f.replace(/<\/head>/i,`${l}
|
|
3532
3532
|
</head>`);if(/<head\b[^>]*>/i.test(f))return f.replace(/(<head\b[^>]*>)/i,`$1
|
|
3533
3533
|
${l}`);if(/<html\b[^>]*>/i.test(f))return f.replace(/(<html\b[^>]*>)/i,`$1
|
|
3534
3534
|
<head>
|
|
3535
3535
|
${l}
|
|
3536
|
-
</head>`);return f},{renderHead:h,getHead:p}=await s("stx/head",()=>import("./chunk-
|
|
3536
|
+
</head>`);return f},{renderHead:h,getHead:p}=await s("stx/head",()=>import("./chunk-b3rqr465.js")),r=Z.__stx_runtime_head??p();if(r.title||r.meta?.length||r.link?.length){let f=h(r);if(f)Q=P(Q,f)}if(E.headContent)Q=P(Q,E.headContent,!r.title);if(G.csp?.enabled&&G.csp.addMetaTag)Q=q7(Q,G.csp,Z);if(G.analytics?.enabled)Q=X4(Q,G);if(G.heatmap?.enabled)Q=Q4(Q,G);if(G.pwa?.enabled&&G.pwa.autoInject!==!1){let{injectPwaTags:f}=await s("stx/pwa/inject",()=>import("./chunk-3eq3h4cm.js"));Q=f(Q,G)}let e=/<script\b(?![^>]*\bserver\b)[^>]*>[\s\S]*?<\/script>/i.test(Q),Y0=/\bSTX\.\w+/.test(Q),i=/window\.STX\s*=/.test(Q);if(e&&Y0&&!i){let l=`<script data-stx-scoped data-stx-run="once">
|
|
3537
3537
|
${t3()}
|
|
3538
|
-
</script>`;if(Q.includes("</head>")){let Z0=Q.indexOf("</head>"),_0=Q.slice(0,Z0).indexOf("<script");if(_0!==-1){let
|
|
3538
|
+
</script>`;if(Q.includes("</head>")){let Z0=Q.indexOf("</head>"),_0=Q.slice(0,Z0).indexOf("<script");if(_0!==-1){let G0=Q.slice(0,_0),B1=Q.slice(_0);Q=G0+l+`
|
|
3539
3539
|
`+B1}else Q=Q.replace("</head>",`${l}
|
|
3540
3540
|
</head>`)}else if(Q.includes("<body"))Q=Q.replace(/<body([^>]*)>/,`<body$1>
|
|
3541
3541
|
${l}`);else Q=l+`
|
|
3542
|
-
`+Q}{let{scanScriptTags:f}=await s("stx/signal-processing",()=>import("./chunk-
|
|
3543
|
-
`+Q.slice(Z0)}Z.__stx_event_bindings=[]}}if(!K8(Q)&&q8(Q))Q=await g9(Q,G);if(Q=W8(Q),G.csp?.enabled&&G.csp.useNonce&&typeof Z.cspNonce==="string")Q=W7(Q,Z.cspNonce);return Q}import MZ from"path";import Q3 from"fs";import u2 from"path";function WZ($,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
|
|
3542
|
+
`+Q}{let{scanScriptTags:f}=await s("stx/signal-processing",()=>import("./chunk-mrxrz9b1.js")),l=[];for(let Z0 of f(Q)){if(!/\bserver\b/i.test(Z0.attrs))continue;let j0=Z0.start+Z0.fullMatch.indexOf(">")+1,_0=KZ(Q,j0);if(_0===-1)continue;let G0=_0+9;while(G0<Q.length&&/\s/.test(Q[G0]))G0++;l.push({start:Z0.start,end:G0})}if(l.length>0){let Z0=Array(l.length+1),j0=0;for(let _0=0;_0<l.length;_0++){let{start:G0,end:B1}=l[_0];Z0[_0]=Q.slice(j0,G0),j0=B1}Z0[l.length]=Q.slice(j0),Q=Z0.join("")}}let W0=c9(Q,J);if(W0.hasScoped)Q=W0.html;let a=Z.__stx_event_bindings||[],L0=!1,c0=[],p0=/\s:[a-z][\w.-]*\s*=/.test(Q),{scanScriptTags:h0}=await s("stx/signal-processing",()=>import("./chunk-mrxrz9b1.js"));for(let f of h0(Q,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b|\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/}))c0.push({match:f.fullMatch,attrs:f.attrs,content:f.body});for(let{match:f,attrs:l,content:Z0}of c0){L0=!0;let j0=Z0;$3(Z0,J,X.strict,Z.__originalFilePath);let _0=await l9(Z0,{eventBindings:a,attrs:l,hasColonDirectives:p0,templateContent:$,filePath:J,projectRoot:process.cwd(),production:X.buildMode==="compile",serverData:y});Q=Q.replace(f,()=>_0)}if(L0)Z.__stx_event_bindings=[];if(!L0&&Z.__stxProcessingDepth===1){let f=Z.__stx_event_bindings||[];if(f.length>0){let l=Y5(f);if(l){let Z0=Q.lastIndexOf("</body>");Q=Z0===-1?Q+l:Q.slice(0,Z0)+l+`
|
|
3543
|
+
`+Q.slice(Z0)}Z.__stx_event_bindings=[]}}if(!K8(Q)&&q8(Q))Q=await g9(Q,G);if(Q=W8(Q),G.csp?.enabled&&G.csp.useNonce&&typeof Z.cspNonce==="string")Q=W7(Q,Z.cspNonce);return Q}import MZ from"path";import Q3 from"fs";import u2 from"path";function WZ($,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 ez($){let Z=Q0($),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 Y3($,Z){let J=Q0($),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=WZ(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=WZ(J,Q,"(",")");if(z>=0)return{type:G,args:ez($.slice(Q+1,z))}}return null}var HZ=`
|
|
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,84 +3548,84 @@ 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 UZ($,Z){let J=[],X={defineProps:["defineProps"],defineEmits:["defineEmits"],withDefaults:["withDefaults"]},Y=
|
|
3552
|
-
`)}),G=Y3($,X.defineProps),z=Y3($,X.defineEmits),K=Y3($,X.withDefaults);if(!G&&!z)return{declarations:"",props:null,events:null};let q=[],
|
|
3551
|
+
`;function UZ($,Z){let J=[],X={defineProps:["defineProps"],defineEmits:["defineEmits"],withDefaults:["withDefaults"]},Y=Q0($),Q=$.replace(/\bimport\s+(?:type\s+)?(\{[^}]*\}|\*\s+as\s+[\w$]+|[\w$]+)\s+from\s*(['"])([^'"]+)\2\s*;?/g,(U,j,B,V,F)=>{if(Y.slice(F,F+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((_)=>{let[L,w=L]=_.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=Y3($,X.defineProps),z=Y3($,X.defineEmits),K=Y3($,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:
|
|
3558
|
+
}`,props:W,events:H}}function*$K($){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=Q0($.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=[HZ,"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=Q0(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],F=u2.isAbsolute(V)||V.startsWith(".")?u2.resolve(u2.dirname(J.filePath),V):R9(V,u2.dirname(J.filePath));if(!F)continue;let O=F.endsWith(".stx")?F:Q3.existsSync(`${F}.stx`)?`${F}.stx`:void 0,_=O?null:w9(F,!1),L=B[1].startsWith("{")?B[1].slice(1,-1).split(","):[B[1]];for(let w of L){let[R,D=R]=w.trim().split(/\s+as\s+/),N=O||_?.get(R)||_?.get(R.toLowerCase());if(N)z.set(D,N),z.set(D.toLowerCase(),N),z.set(D.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),N)}}for(let B of Z.matchAll(/@import\s*\(([^)]+)\)/g))for(let V of B[1].matchAll(/['"]([^'"]+)['"]/g)){let F=D9(V[1],J.filePath,J).find((O)=>Q3.statSync(O,{throwIfNoEntry:!1})?.isFile());if(F)z.set(u2.basename(V[1]).replace(/\.stx$/,""),F)}let W={__importedComponents:z},H=new Map,U=(B,V,F)=>{let O=$.slice(0,B);return{code:V,offset:B,attribute:F,anchor:!0,kind:"directive",line:O.split(`
|
|
3559
3559
|
`).length,column:B-O.lastIndexOf(`
|
|
3560
|
-
`)}},j=(B,V,F)=>X.push({expression:B,statement:{text:V+B.code+F,prefixLength:V.length}});for(let B of
|
|
3561
|
-
`):"",checks:X,events:Q,dependencies:G}}var BZ=/<script(\s[^>]*)?>([\s\S]*?)<\/script>/gi;function
|
|
3560
|
+
`)}},j=(B,V,F)=>X.push({expression:B,statement:{text:V+B.code+F,prefixLength:V.length}});for(let B of $K(Z)){if(b2(B.name)||B.name==="component")continue;let V=I7(B.name,J.filePath,J,W);if(!V)continue;let F=H.get(V);if(!F){let _;try{_=J.readComponent?J.readComponent(V):Q3.readFileSync(V,"utf8")}catch{continue}if(_===void 0)continue;G.set(V,_),F=UZ(J.scriptCode(_,V),`__StxComponent${H.size}`),H.set(V,F),Y.push(F.declarations)}let O=[];for(let _ of B.attributes){let{name:L,offset:w}=_,R=_.value===!0?"true":_.value;if(L.startsWith("@")||L.startsWith("v-on:")){if(F.events&&_.value!==!0)Q.set(w,`__StxEvent<${F.events}, ${JSON.stringify(L.replace(/^@|^v-on:/,"").split(".")[0])}>`);continue}let D=/^v-model(?::([\w-]+))?(?:\.[\w-]+)*$/.exec(L);if(L.startsWith("v-")&&!L.startsWith("v-bind:")&&!D)continue;if(/^(?:x-|:)(?:if|for|show|key|else)(?:$|[.:-])/.test(L))continue;let N=(D?D[1]||"modelValue":L.replace(/^:|^v-bind:/,"")).replace(/-([a-z])/g,(I,k)=>k.toUpperCase());if(O.push(N),!F.props)continue;let M=L.startsWith(":")||L.startsWith("v-bind:")||!!D||_.braced?R:_.value!==!0?JSON.stringify(R):"true";j(U(w,M,L),";void ((",`) satisfies __StxProp<${F.props}, ${JSON.stringify(N)}>);`)}if(F.props){let _=[...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 ({ ${_} } satisfies ${F.props} & Record<string, unknown>);`,prefixLength:0}})}}return{declarations:H.size?Y.join(`
|
|
3561
|
+
`):"",checks:X,events:Q,dependencies:G}}var BZ=/<script(\s[^>]*)?>([\s\S]*?)<\/script>/gi;function ZK($){let Z=(J)=>J.replace(/[^\n]/g," ");return $.replace(/<!--[\s\S]*?-->/g,Z).replace(/\{\{--[\s\S]*?--\}\}/g,Z)}function VZ($){let Z=[],J=ZK($);BZ.lastIndex=0;let X;while((X=BZ.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=m2($,z);Z.push({kind:H,code:q,startLine:U,startColumn:d2($,z),offset:z,attrs:Y})}return Z}function m2($,Z){let J=1;for(let X=0;X<Z&&X<$.length;X++)if($.charCodeAt(X)===10)J++;return J}function d2($,Z){let J=$.lastIndexOf(`
|
|
3562
3562
|
`,Z-1)+1;return Z-J+1}function i9($){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 JK($){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 AZ=new Set([":for","x-for","v-for"]),n9=/(?:^|\s)((?::|x-|v-|@)[\w.:-]+)\s*=\s*(["'])([\s\S]*?)\2/g,G3="__stx_interpolated",LZ="__StxElement",IZ="__StxTemplateValue",XK=`type ${IZ}<T> = T extends { readonly _isSignal: true } | { readonly _isDerived: true } ? (T extends () => infer V ? T & V : T) : T`;function OZ($){return $.replace(/\{\{[\s\S]*?\}\}/g,G3).replace(/\{!![\s\S]*?!!\}/g,G3)}function YK($){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
|
-
`)}function
|
|
3565
|
+
`.repeat(J)}`})}var QK=["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"],GK=new RegExp(String.raw`^[ \t]*@(?:${QK.join("|")})\b[ \t]*(\([^\n)]*\))?[ \t]*$`,"gm");function zK($){return $.replace(GK,(Z)=>Z.replace(/[^\n]/g," "))}var FZ=new Set(["x-cloak","x-ref","x-transition","x-teleport","v-slot","x-hydrate",":key","x-tooltip","x-tooltip-position"]);function KK($){let Z=i9($),J=[],X=/(@?)\{\{([\s\S]*?)\}\}|(@?)\{!!([\s\S]*?)!!\}/g,Y;while((Y=X.exec(Z))!==null){if(Y[1]||Y[3])continue;let z=Y[2]??Y[4]??"",K=Y[2]!==void 0?2:3,q=JK(z);if(!q.trim())continue;let W=Y.index+K+(q.length-q.trimStart().length);J.push({code:q.trim(),line:m2(Z,W),column:d2(Z,W),offset:W,kind:"interpolation"})}let Q=/@(if|elseif|else\s+if|unless)\b\s*\(/g;while((Y=Q.exec(Z))!==null){let G=Y.index+Y[0].length-1,z=0,K=G;for(;K<Z.length;K++){let U=Z[K];if(U==="(")z++;else if(U===")"){if(z--,z===0)break}}if(z!==0)continue;let q=Z.slice(G+1,K),W=q.trim();if(Q.lastIndex=K+1,!W)continue;let H=G+1+(q.length-q.trimStart().length);J.push({code:W,line:m2(Z,H),column:d2(Z,H),offset:Y.index,kind:"condition"})}n9.lastIndex=0;while((Y=n9.exec(Z))!==null){let G=Y[1],z=Y[3]??"",K=G.replace(/\..*$/,"").replace(/^([^:].*?):.*$/,"$1");if(FZ.has(K)||FZ.has(G))continue;if(!z.trim())continue;let q=Y.index+Y[0].indexOf(Y[2],Y[0].indexOf(G)+G.length)+1;if(AZ.has(K)){let H=z.match(/\s+(?:in|of)\s+/);if(!H||H.index===void 0)continue;let U=z.slice(H.index+H[0].length),j=H.index+H[0].length+(U.length-U.trimStart().length);J.push({code:OZ(U.trim()),line:m2(Z,q+j),column:d2(Z,q+j),offset:q+j,kind:"directive",attribute:K});continue}let W=z.length-z.trimStart().length;J.push({code:OZ(z.trim()),line:m2(Z,q+W),column:d2(Z,q+W),offset:q+W,kind:"directive",attribute:K})}return J.sort((G,z)=>G.line-z.line||G.column-z.column),J}var qK=2000;function WK($,Z){let J=0,X=Math.min($.length,Z+qK);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 HK($){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=WK($,z.index+z[0].length-1);if(K===null)continue;let q=a1(K);if(!q)continue;J(q.itemVar.replace(/=>/g," "),Y(q.arrayExpr))}for(let z of $.matchAll(/@for\s*\(\s*(?:(?:let|const|var)\s+)?([\w$]+|\[[^\]]*\]|\{[^}]*\})\s+(of|in)\s+([^)]*)/g))J(z[1],z[2]==="of"?Y(z[3]):void 0);for(let z of $.matchAll(/@for\s*\(\s*(?:let|const|var)\s+([\w$]+)\s*[=;]/g))J(z[1]);let Q=i9($);n9.lastIndex=0;let G;while((G=n9.exec(Q))!==null){let z=G[1].replace(/\..*$/,"");if(!AZ.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 j1($){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()}var z3=["params","query","cookies","host","ip","setResponseStatus","setResponseHeader","notFound","request","url","definePageMeta","defineClientPayload","defineStore","props","$props"],UK={$bool:"declare function $bool(value: unknown, fallback?: boolean): boolean",$uid:"declare var $uid: string"};function RF($=new Set){return[...z3.filter((Z)=>!$.has(Z)).map((Z)=>`declare var ${Z}: any`),...Object.entries(UK).filter(([Z])=>!$.has(Z)).map(([,Z])=>Z)].join(`
|
|
3566
|
+
`)}function DF($){return new Set([...$.matchAll(/^declare (?:function|const|let|var)\s+([A-Za-z_$][\w$]*)/gm)].map((Z)=>Z[1]))}function TZ($){let Z=/\bdefineClientPayload\s*\(\s*\{([\s\S]*?)\}\s*\)/g,J,X=!1,Y=new Set,Q=Q0($);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 BK($){let Z=/^[ \t]*import\b[\s\S]*?(?:from\s*['"][^'"]*['"]|['"][^'"]*['"])[ \t]*;?[ \t]*$/gm,J=[],X=$.replace(Z,(Y)=>{return J.push(Y.trim()),Y.split(`
|
|
3567
3567
|
`).map(()=>"").join(`
|
|
3568
3568
|
`)});return{imports:J.join(`
|
|
3569
|
-
`),body:X}}function kZ($){let Z=
|
|
3570
|
-
`&&!/[=|&,<([{]\s*$/.test(Z.slice(Math.max(0,
|
|
3569
|
+
`),body:X}}function kZ($){let Z=Q0($),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===`
|
|
3570
|
+
`&&!/[=|&,<([{]\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 VK($){return new Set(kZ($).map((Z)=>Z.name))}function NF($,Z=""){let J=TZ($),X=VK(Z),Y=kZ($).filter((q)=>!X.has(q.name)).map((q)=>q.text);if(!J){let q=j1($).filter((W)=>!r2(Z,W));if(q.length===0&&Y.length===0)return"";return["",`// ${OK}`,...Y,...q.map((W)=>`declare var ${W}: any`)].join(`
|
|
3571
3571
|
`)}if(J.length===0)return Y.length>0?["",`// ${_Z}`,...Y].join(`
|
|
3572
|
-
`):"";let{imports:Q,body:G}=
|
|
3573
|
-
`)}function
|
|
3574
|
-
`)J[Y]=" "}return j1(J.join(""))}function
|
|
3575
|
-
`),Y=Array.from({length:X.length},()=>""),Q=new Map,G=Z.filePath&&Z.templateExpressions!==!1?jZ($,i9($),{filePath:Z.filePath,componentsDir:Z.componentsDir,projectRoot:Z.projectRoot,readComponent:Z.readComponent,scriptCode:(
|
|
3576
|
-
`)}):void 0,z=new Set,K=[];for(let
|
|
3577
|
-
`);j.forEach((B,V)=>{let F=
|
|
3578
|
-
`).entries())if(Y.push(B),U)Q.set(Y.length,j===0?U:{...U,line:U.line+j,column:1,prefixLength:0})};if(Z.globals!==!1){q("");let
|
|
3579
|
-
`))q(U);let
|
|
3580
|
-
`),lineMap:Q,sourceLineCount:X.length,componentDependencies:G?.dependencies,referenced:
|
|
3581
|
-
`);return{line:J.length,column:J[J.length-1].length+1}}function
|
|
3582
|
-
`);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
|
|
3583
|
-
|
|
3584
|
-
`),Z}function
|
|
3585
|
-
`),
|
|
3572
|
+
`):"";let{imports:Q,body:G}=BK($),z=G.replace(/^[ \t]*export[ \t]+(?=(?:const|let|var|function|async|class)\b)/gm,""),K=["",`// ${_Z}`];if(Q)K.push(Q);return K.push(...Y),K.push(`async function ${wZ}() {`,z,` return { ${J.join(", ")} }`,"}",`type ${RZ} = Awaited<ReturnType<typeof ${wZ}>>`,...J.map((q)=>`declare var ${q}: ${RZ}[${JSON.stringify(q)}]`)),K.join(`
|
|
3573
|
+
`)}function LK($){let J=Q0($).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!==`
|
|
3574
|
+
`)J[Y]=" "}return j1(J.join(""))}function MF($,Z){if(TZ($)!==null)return[];let J=Q0(Z),X=new Set(Q2);return LK($).filter((Y)=>{if(X.has(Y))return!1;if(j1(Z).includes(Y))return!1;return new RegExp(`(?<![.#\\w$])${Y}(?![\\w$])`).test(J)})}var _Z="stx: types for the declared client payload (#1868)",OK="stx: untyped bridge names \u2014 declare a defineClientPayload to check these (#1868)",wZ="__stxServerScope",RZ="__StxClientPayload";var DZ=["$env","$user","$slot","$slots","$attrs","$props","$page","$route","$loop","loop","$errors","$csrf","props","slot"];var FK=/^\s*[A-Z_$][\w$]*\s*=[^=]/i;function _K($){let Z=new Map,J=/!|===|!==|==|!=|&&|\|\||<|>|\btypeof\b|\binstanceof\b|\bin\b/;for(let X of $){let Y=Q0(X),{depths:Q,balanced:G}=K2(Y);if(!G)continue;let z=/^([ \t]*(?:export[ \t]+)?const[ \t]+)([A-Za-z_$][\w$]*)[ \t]*(?::[^=\n]+)?=[ \t]*([^\n]+)$/gm;for(let K of Y.matchAll(z)){let q=K.index??0;if(Q[q+K[1].length]!==0)continue;let W=K[2],H=q+K[0].length-K[3].length,U=X.slice(H,q+K[0].length).trim().replace(/;$/,"").trim(),j=K[3],B=J.test(j)&&!/\bawait\b|=>|\bfunction\b|[{}]/.test(j)&&!/[,+\-*/%&|?:=]$/.test(U)&&K2(j).balanced;Z.set(W,Z.has(W)||!B?null:U)}}return new Map([...Z].filter((X)=>X[1]!==null))}function EZ($,Z,J=0,X=new Set){if(Z.size===0||J>=5)return $;let Y=Q0($),Q="",G=0;for(let z of Y.matchAll(/[A-Za-z_$][\w$]*/g)){let K=z.index??0,q=z[0],W=Z.get(q);if(!W||X.has(q))continue;let H=Y.slice(0,K).trimEnd(),U=Y.slice(K+q.length).trimStart();if(H.endsWith(".")||/^:(?!:)/.test(U)&&/[{,]$/.test(H))continue;if(K>0&&/[\w$]/.test(Y[K-1]))continue;Q+=`${$.slice(G,K)}(${EZ(W,Z,J+1,new Set([...X,q]))})`,G=K+q.length}return Q+$.slice(G)}function wK($,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(Y.index===Z){if(Q==="elseif"){let z=X[X.length-1];if(z?.current)z.seen.push(z.current);if(z)z.current=null}break}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 RK($){let Z=$.code.trim();if(!Z)return null;if($.attribute?.startsWith("@")){if(FK.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 DK=/(\bfrom\s*|\bimport\s*\(\s*|\bimport\s+)(['"])(\.{1,2}\/[^'"\n]*)\2/g;function NZ($,Z){if(!Z)return $;return $.replace(DK,(J,X,Y,Q)=>{let G=MZ.resolve(Z,Q).replace(/\\/g,"/");return`${X}${Y}${G}${Y}`})}function NK($){return" ".repeat(Math.max(0,($.startColumn??1)-1))}function MK($){let Z=new Set,J=Q0($);for(let X of J.matchAll(/\bimport\s+(?:type\s+)?([\w$*{}\s,]+?)\s+from\b/g)){let Y=X[1],Q=/\{([^}]*)\}/.exec(Y);for(let q of Q?.[1].split(",")??[]){let W=q.trim().replace(/^type\s+/,"").split(/\s+as\s+/).pop()?.trim();if(W&&/^[A-Z_$][\w$]*$/i.test(W))Z.add(W)}let G=Y.replace(/\{[^}]*\}/,""),z=/\*\s*as\s+([A-Z_$][\w$]*)/i.exec(G);if(z)Z.add(z[1]);let K=/^\s*([A-Z_$][\w$]*)/i.exec(G);if(K&&K[1]!=="type")Z.add(K[1])}return[...Z].sort()}function AF($,Z={}){let J=VZ($),X=$.split(`
|
|
3575
|
+
`),Y=Array.from({length:X.length},()=>""),Q=new Map,G=Z.filePath&&Z.templateExpressions!==!1?jZ($,i9($),{filePath:Z.filePath,componentsDir:Z.componentsDir,projectRoot:Z.projectRoot,readComponent:Z.readComponent,scriptCode:(H,U)=>VZ(H).map((j)=>NZ(j.code,MZ.dirname(U))).join(`
|
|
3576
|
+
`)}):void 0,z=new Set,K=[];for(let H of J){let U=zK(YK(H.code)),j=NZ(U,Z.originDir??"").split(`
|
|
3577
|
+
`);j.forEach((B,V)=>{let F=H.startLine-1+V;if(F<Y.length)Y[F]=V===0?NK(H)+B:B,z.add(F)}),K.push(H.startLine-1+j.length-1)}for(let H of K){let U=Y[H]?.trim()===""?H:H+1;if(U<Y.length&&Y[U].trim()===""&&(U===H||!z.has(U)))Y[U]=";"}let q=(H,U)=>{for(let[j,B]of H.split(`
|
|
3578
|
+
`).entries())if(Y.push(B),U)Q.set(Y.length,j===0?U:{...U,line:U.line+j,column:1,prefixLength:0})};if(Z.globals!==!1){q("");let H=new Set([...J.flatMap((V)=>j1(V.code)),...J.flatMap((V)=>MK(V.code))]),U=(V)=>{if(!H.has(V))q(`declare var ${V}: any`)};if(Z.runtimeGlobals!==!1){if(!H.has("window"))q("declare var window: any");for(let V of Q2)U(V)}let j=[...new Set([...z3,...H1,...DZ])].filter((V)=>Z.runtimeGlobals!==!1||!Q2.includes(V));if(Z.contextScope==="global"){q("declare global {");for(let V of j)q(` var ${V}: any`);q("}")}else{for(let V of z3)U(V);for(let V of H1)U(V);for(let V of DZ)U(V)}q(`declare var ${G3}: any`);let B=new Set(J.flatMap((V)=>j1(V.code)));q(`type ${LZ}<T> = T extends readonly (infer E)[] ? E : T extends Iterable<infer E2> ? E2 : any`);for(let V of HK($)){if(B.has(V.name))continue;let F=V.iterable&&B.has(V.iterable)?`${LZ}<typeof ${V.iterable}>`:"any";q(`declare var ${V.name}: ${F}`)}}if(Z.templateExpressions!==!1){if(G?.declarations)for(let U of G.declarations.split(`
|
|
3579
|
+
`))q(U);let H=KK($).map((U)=>{let j=G?.events.get(U.offset??-1);if(j){U.anchor=!0;let B=U.code.trim(),V=/^([\w$]+)\s*=\s*([^=][\s\S]*)$/.exec(B),F=V?`void ((${V[2]}) satisfies __StxAssignedValue<typeof ${V[1]}>)`:/^[\w$]+(?:\.[\w$]+)*$/.test(B)?`${B} satisfies (($event: ${j}) => unknown)`:B,O=`;(($event: ${j}): void => { `;return{expression:U,statement:{text:`${O}${F} });`,prefixLength:O.length}}}return{expression:U,statement:RK(U)}}).filter((U)=>U.statement!==null);if(H.push(...G?.checks||[]),H.length>0){let U=i9($),j=_K(J.map((O)=>O.code)),V=[...new Set(J.flatMap((O)=>j1(O.code)))].filter((O)=>/^[A-Z_$][\w$]*$/i.test(O)),F=0;if(V.length>0){q(XK);for(let O of V)q(`type __StxT_${O} = ${IZ}<typeof ${O}>`);q(`;((${V.map((O)=>`${O}: __StxT_${O}`).join(", ")}) => {`),F=1}for(let{expression:O,statement:_}of H){let L=" ".repeat(F),w=O.offset===void 0?[]:wK(U,O.offset),R=w.length>0?`${w.map((N)=>`if (${EZ(N,j)}) `).join("")}{ `:"",D=w.length>0?" }":"";q(L+R+_.text+D,{line:O.line,column:O.column,expression:O,prefixLength:_.prefixLength+L.length+R.length,guardPrefixLength:L.length+R.length})}if(F>0)q("});")}}let W=!1;if(Z.reference&&Y[0]!==void 0&&Y[0].trim()==="")Y[0]=`/// <reference path=${JSON.stringify(Z.reference.replace(/\\/g,"/"))} />`,W=!0;return q("export {}"),{text:Y.join(`
|
|
3580
|
+
`),lineMap:Q,sourceLineCount:X.length,componentDependencies:G?.dependencies,referenced:W}}function IF($,Z){if(!$.expression)return!1;return $.inGuard===!0||Z===2774}function TF($,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,inGuard:J<=(X.guardPrefixLength??0)}}var AK=[{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"}],IK=[{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')"}],TK=[{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 kK($){let Z=[],J=[];return EK($,Z),yK($,Z,J),bK($,J),CK($,Z),{valid:Z.length===0,errors:Z,warnings:J}}function EK($,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 yK($,Z,J){for(let X of AK){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 bK($,Z){for(let J of IK)if(J.pattern.test($))Z.push({type:"syntax",message:J.message,suggestion:J.suggestion})}function CK($,Z){for(let J of TK)if(J.pattern.test($))Z.push({type:"expression",message:`Security warning: ${J.message}`,suggestion:"Remove dangerous code from template expressions"})}function SK($,Z){let J=$.slice(0,Z).split(`
|
|
3581
|
+
`);return{line:J.length,column:J[J.length-1].length+1}}function PK($,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 vK($){return/@[a-z]+/i.test($)||/\{\{/.test($)}function xK($){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 o0 from"path";import G2 from"process";var K3=["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"];var yZ=new Set(K3),fK=new Set(["props","$props","defineProps"]),gK=new Set(["stx","@stacksjs/stx"]),bZ=b1(128),CZ=b1(64);function hK($){let Z=[],J=0,X=$.split(`
|
|
3582
|
+
`);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 uK($){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 R=0;R<U.length;R++)if(U[R]==="<")B++;else if(U[R]===">")B--;else if(U[R]===":"&&B===0){j=R;break}if(j===-1)return q;let F=U.substring(0,j).trim().replace(/\?$/,""),O=U.substring(j+1),_=-1,L=0;for(let R=0;R<O.length;R++)if(O[R]==="<")L++;else if(O[R]===">")L--;else if(O[R]==="="&&L===0){_=R;break}let w=H?"...":"";if(_!==-1)return`${w}${F} = ${O.substring(_+1).trim()}`;return`${w}${F}`}).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,`
|
|
3583
|
+
|
|
3584
|
+
`),Z}function mK($){return/cannot find module|cannot find package|could not resolve|module not found|failed to resolve/i.test($)}function dK($){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 lK($){if(!/is not defined|can't find variable/i.test($))return!1;return!/\b(document|window|navigator|localStorage|sessionStorage|self)\b/.test($)}var SZ=new Set;async function cK($,Z,J,X={}){if(!$.trim())return;let Y=X2(),Q=U1($,JSON.stringify(Y)),G=bZ.get(Q);if(G===void 0){try{let S=W3({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=uK($)}bZ.set(Q,G)}let z={exports:{}},K=z.exports,q=G2.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(o0.resolve(o0.dirname(J),S));continue}let v=o0.resolve(q,"node_modules",S),d=o0.join(v,"package.json"),J0=JSON.parse(x("fs").readFileSync(d,"utf8")),H0=J0.main||"index.js";if(J0.exports){let k0=typeof J0.exports==="string"?J0.exports:J0.exports["."];if(typeof k0==="string")H0=k0;else if(k0?.bun)H0=k0.bun;else if(k0?.import)H0=k0.import;else if(k0?.default)H0=k0.default}W[S]=await import(o0.resolve(v,H0))}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,J0]of Object.entries(S)){let H0=B[d];if(H0!==void 0)v[d]=H0;else if(typeof J0==="function")v[d]=J0();else v[d]=J0}return v};for(let[S,v]of Object.entries(B))Object.defineProperty(V,S,{value:v,enumerable:!0,configurable:!0,writable:!0});let F=(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,J0]of Object.entries(S)){let H0=J0&&typeof J0==="object"&&!Array.isArray(J0)?J0:{type:J0};if(v[d]===void 0&&H0.default!==void 0)v[d]=typeof H0.default==="function"?H0.default():H0.default}return v},_=()=>Z.slots||{},L=(S,v)=>{let d={...S};for(let[J0,H0]of Object.entries(v))if(d[J0]===void 0)if(typeof H0==="function")d[J0]=H0();else d[J0]=H0;return d},w=(S)=>{let v=()=>S;return v.set=(d)=>{},v.update=(d)=>{},v},R=(S)=>{let v,d=!1;return()=>{if(!d)try{v=S(),d=!0}catch{v=void 0}return v}},D=(S)=>{},N=(S)=>S(),T=(S)=>{},M=(S)=>{},I=U4(Z);function k(S){let v=S||{};if(v.title!==void 0||v.description!==void 0)y({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??"",J0=Object.fromEntries(new URLSearchParams(v)),H0=Z.query,k0=Object.keys(J0).length>0?J0:H0??{},r0=v||(Object.keys(k0).length>0?`?${new URLSearchParams(k0).toString()}`:"");return{params:Z.params??{},query:k0,path:d,name:"",fullPath:d+r0,hash:"",matched:[]}},C=()=>({push:(S)=>{},replace:(S)=>{},back:()=>{},forward:()=>{},go:(S)=>{}}),b=(S)=>{let v=Z.__stx_runtime_head||{};Z.__stx_runtime_head=cZ(v,S||{})},y=(S)=>{b(pZ(S||{}))},P=(S)=>({value:S}),h=(S)=>S,p=(S)=>({value:typeof S==="function"?S():S}),u=(S,v)=>{},r=(S)=>{},e=(S)=>{},Y0=(S)=>S?S():Promise.resolve(),i=(S)=>(v,...d)=>{},W0=(S)=>{},a=(S,v)=>{},L0=(S,v)=>v,c0=()=>({value:"light"}),p0=()=>w(!1),h0=(S)=>w(!1),f=()=>w(!1),l=()=>h0("(prefers-color-scheme: dark)"),Z0=()=>h0("(prefers-color-scheme: light)"),j0=()=>h0("(prefers-reduced-motion: reduce)"),_0=()=>h0("(prefers-contrast: more)"),G0={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:{}},B1=new Proxy(G0,{get(S,v){if(v in S)return S[v];return},set(S,v,d){return S[v]=d,!0}}),a9={getElementById:()=>null,querySelector:()=>null,querySelectorAll:()=>[],createElement:()=>({}),createTextNode:()=>({}),body:{},head:{},documentElement:{},addEventListener:()=>{},removeEventListener:()=>{}},t9=console;try{let S=iZ(G,J),v=new Set(Object.keys(B)),d=Object.keys(Z).filter((n)=>!v.has(n)&&!fK.has(n)&&z2(n)),J0=d.map((n)=>Z[n]);if(!d.includes("__stxServeContext"))d.push("__stxServeContext"),J0.push(void 0);let H0=new Set(["async","module","exports","require","params","window","document","console","state","derived","effect"]),k0=[],r0=[];for(let[n,u0]of Object.entries(B)){if(!z2(n))continue;if(H0.has(n))continue;if(new RegExp(`(?:^|[\\s;{])(?:const|let|var|function)\\s+${n}\\b`).test(S))continue;k0.push(n),r0.push(u0)}let Z1=hK(S).map((n)=>`module.exports.${n} = typeof ${n} !== 'undefined' ? ${n} : module.exports.${n};`).join(`
|
|
3585
|
+
`),y0=Z.params??{},m=[],c=[];for(let n=0;n<d.length;n++){if(d[n]==="params")continue;m.push(d[n]),c.push(J0[n])}let z0=[...K3,...k0,...m],o=`return (async () => {
|
|
3586
3586
|
${S}
|
|
3587
3587
|
${Z1}
|
|
3588
3588
|
return module.exports
|
|
3589
|
-
})()`,w0=U1(o,
|
|
3590
|
-
`),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,
|
|
3591
|
-
`),U=[];for(let j of["title","description"]){let B=new RegExp(`\\b${j}\\s*:\\s*(['"\`])((?:\\\\.|(?!\\1)[^\\\\])*)\\1`).exec(
|
|
3592
|
-
`+j;if(
|
|
3593
|
-
`),J,X)}function
|
|
3594
|
-
`)z=!1;Q++;continue}if(K){if(Y+=
|
|
3595
|
-
`);return{type:B,name:
|
|
3596
|
-
${
|
|
3597
|
-
${$[q]}`,q++;else break}return K=K.trim().replace(/;$/,""),{type:Q,name:G,value:K,nextIndex:q}}function q3($,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(
|
|
3589
|
+
})()`,w0=U1(o,z0.join("\x00")),q0=CZ.get(w0);if(!q0)q0=Function(...z0,o),CZ.set(w0,q0);let P0=Z.__stx_options?.runtimeConfig;if(P0||/\buse(?:Server)?RuntimeConfig\b/.test(G))await p9(Z,J,P0);let J1=await hZ(Z.__stx_runtime_config??uZ()??lZ(),()=>p6(Z,()=>q0(z,K,j,B,V,F,O,L,A,i6,dZ,mZ,w,R,D,N,T,M,k,E,C,b,y,I.setResponseStatus,I.setResponseHeader,I.notFound,P,h,p,u,r,e,Y0,i,W0,_,a,L0,c0,p0,h0,f,l,Z0,j0,_0,B1,a9,t9,G0.confirm,G0.alert,G0.fetch,y0,...r0,...c)));if(X.preserveExisting){for(let[n,u0]of Object.entries(J1))if(!(n in Z)||Z[n]===void 0)Z[n]=u0}else Object.assign(Z,J1);for(let[n,u0]of Object.entries(B))if(!(n in Z))Z[n]=u0}catch(S){if(Z.__stx_strict_hydration)throw S;let v=S instanceof Error?S.message:String(S);if(mK(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}`),X.onFailure?.({kind:"module-resolution",message:v,error:S});else if(dK(S))console.warn(`[stx] server <script> in ${J??"<unknown>"} does not parse, so every variable in that script is undefined. Cause: ${v}`),X.onFailure?.({kind:"syntax",message:v,error:S});else if(lK(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}`),X.onFailure?.({kind:"missing-binding",message:v,error:S});else{let d=`${J??"<unknown>"}\x00${v}`;if(G2.env.STX_DEBUG||!SZ.has(d))SZ.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}`);X.onFailure?.({kind:"unknown",message:v,error:S})}try{await tK(G,Z,J)}catch(d){if(G2.env.STX_DEBUG){let J0=d instanceof Error?d.message:String(d);console.warn(`[stx] fallback extraction also failed in ${J??"<unknown>"}: ${J0}`)}}}}function pK($){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 iK=/^(?:export\s+)?(?:const|let|var)\s+[A-Za-z_$][\w$]*(?:\s*,\s*[A-Za-z_$][\w$]*)*\s*;?$/;function iZ($,Z){let J=Z?o0.dirname(Z):G2.cwd(),X=G2.cwd(),Y=$.split(`
|
|
3590
|
+
`),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,F=Y[j];for(let O=0;O<F.length;O++){let _=F[O];if(V){V=!1;continue}if(_==="\\"){V=!0;continue}if(B){if(_===B)B=null;continue}if(_==='"'||_==="'"||_==="`"){B=_;continue}if(_==="(")K++;else if(_===")"){if(K--,K===0){G=j+1,q=!0;break}}}}if(!q)G=Y.length;let H=Y.slice(W,G).join(`
|
|
3591
|
+
`),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(!pK(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 o0.resolve(J,V);if(V.startsWith("~/")||V.startsWith("@/"))return o0.resolve(X,V.slice(2));return V};if(W){let[,V,F]=W,O=B(F);Q.push(`const ${V} = (await import('${O}')).default`),Q.push(`module.exports.${V} = ${V};`)}else if(H){let[,V,F]=H,O=B(F),_=[],L=[],w=gK.has(F);for(let R of V.split(",")){let D=R.trim();if(!D)continue;let N=D.split(/\s+as\s+/);if(N.length===2){let[T,M]=[N[0].trim(),N[1].trim()];if(w&&yZ.has(T)){Q.push(`const ${M} = ${T};`);continue}_.push(`${T}: ${M}`),L.push(M)}else{if(w&&yZ.has(D))continue;_.push(D),L.push(D)}}if(_.length>0)Q.push(`const { ${_.join(", ")} } = await import('${O}')`);for(let R of L)Q.push(`module.exports.${R} = ${R};`)}else if(U){let V=B(U[1]);Q.push(`await import('${V}')`)}else Q.push(j);G++;continue}if(iK.test(z))Q.push(Y[G]),G++;else if(z.startsWith("export const ")||z.startsWith("export let ")||z.startsWith("export var ")){let K=vZ(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=q3(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=vZ(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=q3(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=q3(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+=`
|
|
3592
|
+
`+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 nK(Q.join(`
|
|
3593
|
+
`),J,X)}function nK($,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===`
|
|
3594
|
+
`)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=sK($,Q);if(U){let{quote:j,path:B,end:V}=U;if(B.startsWith(".")||B.startsWith("~/")||B.startsWith("@/")){let F=B.startsWith(".")?o0.resolve(Z,B):o0.resolve(J,B.slice(2));Y+=`await import(${j}${F}${j})`,Q=V;continue}}}Y+=W,Q++}return Y}function sK($,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 nZ($,Z){let J=$[Z];if(J!=="{"&&J!=="[")return null;let Y=N0($,J,J==="{"?"}":"]",Z);if(Y===-1)return null;return{pattern:$.slice(Z,Y+1),endPos:Y+1}}function sZ($){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?nZ(J,X):null;if(z){Z.push(...sZ(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 oK($){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 PZ($,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 vZ($,Z){let J=$[Z].trim(),X=oK(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==="{"?"}":"]",F=PZ(H,B,V,0),O=H;for(let _=Z+1;_<$.length&&F>0;_++)O+=` ${$[_].trim()}`,U=_,F=PZ($[_],B,V,F);if(F>0)O=H,U=Z;H=O}let j=nZ(H,0);if(j){let B=W[1],V=j.pattern,F=H.slice(j.endPos).trim();if(F.startsWith("=")){let O=F.slice(1).trim(),_=O,L=Math.max(U,Z);if(xZ(O)){let N=fZ($,L,O);_=N.value,L=N.nextIndex}else L=L+1;_=_.trim().replace(/;$/,"");let w=sZ(V),R=`__stx_src_${Z}`,D=w.map((N)=>`module.exports.${N} = ${N};`).join(`
|
|
3595
|
+
`);return{type:B,name:R,value:`${_}; ${B} ${V} = ${R};
|
|
3596
|
+
${D}`,nextIndex:L}}}}throw Error(`Failed to parse variable declaration: ${J}`)}let[,Q,G,z]=Y,K=z,q=Z;if(xZ(z)){let W=fZ($,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+=`
|
|
3597
|
+
${$[q]}`,q++;else break}return K=K.trim().replace(/;$/,""),{type:Q,name:G,value:K,nextIndex:q}}function q3($,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(rK(J)){let z=aK($,Z,Q);Q=z.functionCode,G=z.nextIndex}else G=Z+1;return{name:Y,functionCode:Q,nextIndex:G}}function xZ($){let Z=$.trim();if(Z.startsWith("{"))return N0(Z,"{","}",0)===-1;if(Z.startsWith("["))return N0(Z,"[","]",0)===-1;return!oZ(Z)}function oZ($){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 rZ($){let Z=$.indexOf("(");if(Z===-1)return $.indexOf("{");let J=N0($,"(",")",Z);if(J===-1)return-1;return $.indexOf("{",J)}function rK($){let Z=rZ($);if(Z===-1)return!0;return N0($,"{","}",Z)===-1}function fZ($,Z,J){let X=J,Y=Z+1;while(Y<$.length&&!oZ(X)){let Q=$[Y];X+=`
|
|
3598
3598
|
${Q}`,Y++}while(Y<$.length){let Q=$[Y].trim();if(Q.startsWith(".")||Q.startsWith("?."))X+=`
|
|
3599
|
-
${$[Y]}`,Y++;else break}return{value:X,nextIndex:Y}}function
|
|
3600
|
-
${G}`,Y++}return{functionCode:X,nextIndex:Y}}function gZ($,Z){let J=X0($,Z)??X0(`(${$})`,Z);if(J!==void 0)return J;if(!/\bprocess\b/.test($))return;let X={...Z,process:Object.freeze({env:{...G2.env}})},Y=Object.keys(X).filter(z2),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
|
|
3601
|
-
`)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
|
|
3599
|
+
${$[Y]}`,Y++;else break}return{value:X,nextIndex:Y}}function aK($,Z,J){let X=J,Y=Z+1;while(Y<$.length){let Q=rZ(X);if(Q!==-1){if(N0(X,"{","}",Q)!==-1)break}let G=$[Y];X+=`
|
|
3600
|
+
${G}`,Y++}return{functionCode:X,nextIndex:Y}}function gZ($,Z){let J=X0($,Z)??X0(`(${$})`,Z);if(J!==void 0)return J;if(!/\bprocess\b/.test($))return;let X={...Z,process:Object.freeze({env:{...G2.env}})},Y=Object.keys(X).filter(z2),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 tK($,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=gZ(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=gZ(K,Z);if(q!==void 0)Z[G]=q}catch{}}}function eK($){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 $q($){let Z=$.trim();if(!Z)return!1;return/(?:const|let|var|function)\s+\w+/.test(Z)}var l2=new r1(500),o9=new r1(1000),zJ=33554432,U3=zJ;function Zq($){let Z=$.componentRenderCacheBytes;if(typeof Z!=="number"||Z<0||Z===U3)return;U3=Z,r9.setMaxBytes(Z)}var r9=new r1(2000,{maxBytes:zJ,sizeOf:($)=>$.output.length});function Jq($){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 aZ($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function Xq($){return/\bjs\b/.test($)||/\blang\s*=\s*["']?(js|javascript)["']?/i.test($)}function T1($){return!Xq($)}var s9=new Map;function W3($){let Z;try{Z=JSON.stringify($)}catch{return new Bun.Transpiler($)}let J=s9.get(Z);if(J)return J;if(s9.size>=16)s9.clear();let X=new Bun.Transpiler($);return s9.set(Z,X),X}var tZ=new WeakMap,Yq=256;function k1($){try{let Z=W3({loader:"ts",target:"browser",define:X2()}),J=tZ.get(Z);if(!J)J=new Map,tZ.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>=Yq){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 Qq($){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]!==`
|
|
3601
|
+
`)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 F=V.trim().split(":");return F[F.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 Gq($){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 zq($){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 Kq($,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 Gq(z)){let q=K.trim();if(!q||q.startsWith("..."))continue;let W=zq(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(z2),B=Function(...j,`"use strict"; return (${U});`);Z[H]=B(...j.map((V)=>Z[V]))}catch{}}}catch{}}var qq=new Set(["tr","td","th","thead","tbody","tfoot","caption","colgroup","col","option","optgroup","li","dt","dd"]);function Wq($,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(!qq.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 k9($,Z,J,X,Y){let Q=$.endsWith(".stx")?$.slice(0,-4):$,G=(O)=>O.split("-").map((_)=>_.charAt(0).toUpperCase()+_.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"?g.resolve(Y.root):void 0,H=W??g.dirname(X),U=[],j=(O)=>{if(O&&!U.includes(O))U.push(O)},B=J.__originalFilePath;if(B)j(g.join(g.dirname(B),"components"));if(j(Z),j(Y._rootComponentsDir),j(g.join(g.dirname(X),"components")),j(Y.componentsDir),W)j(g.resolve(W,"resources/views/components")),j(g.resolve(W,"resources/components")),j(g.resolve(W,"src/components")),j(g.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(g.resolve(g.dirname(X),`${Q}.stx`));let F=eZ(g.resolve(import.meta.dir,"components"));for(let O of U){let _=g.isAbsolute(O)?O:g.resolve(H,O);if(eZ(_)===F)continue;for(let L of q)if(await t(g.join(_,L)))return!0}return!1}function eZ($){try{return GJ.realpathSync($)}catch{return $}}function Hq($){return $==="visible"||$==="idle"||$==="interaction"||$.startsWith("media:")}function Uq($){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 jq($,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 $J=new Set;function ZJ($,Z,J,X){let Y=`${$}\x00${Z}\x00${X??""}`;if(!process.env.STX_DEBUG&&$J.has(Y))return;$J.add(Y);let Q=Z?` used in ${Z}`:"",G=X?` Cause: ${X}.`:"",z=J.length>0?`
|
|
3602
3602
|
searched:
|
|
3603
3603
|
${J.map((K)=>` - ${K}`).join(`
|
|
3604
|
-
`)}`:"";console.error(`[stx] component <${$}> could not be resolved${Q}, so it rendered as nothing.${G}${z}`)}function JJ($){return`<!-- stx: component "${$.replace(/--+/g,"-")}" could not be resolved; see the server log -->`}function
|
|
3605
|
-
`)}`}if(J&&
|
|
3604
|
+
`)}`:"";console.error(`[stx] component <${$}> could not be resolved${Q}, so it rendered as nothing.${G}${z}`)}function JJ($){return`<!-- stx: component "${$.replace(/--+/g,"-")}" could not be resolved; see the server log -->`}function Bq($){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 I1($,Z,J,X,Y,Q,G,z=new Set,K){let{extractVariables:q}=await s("stx/variable-extractor",()=>import("./chunk-vsvjw3bp.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"&&Hq(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(),F=$.endsWith(".stx")?$.slice(0,-4):$,O=null,_=Y.__importedComponents;if(_){let m=[F,F.toLowerCase(),B(F),V(F)];for(let c of m)if(_.has(c)){O=_.get(c);break}}let L=[];if(!O){let m=[`${F}.stx`,`${B(F)}.stx`,`${V(F)}.stx`],c=[...new Set(m)],z0=Y.__originalFilePath,o=[];if(o.push(...G._layerComponentDirs??[]),z0){let A0=g.join(g.dirname(z0),"components");o.push(A0)}if(X)o.push(X);let w0=G._rootComponentsDir;if(typeof w0==="string"&&!o.includes(w0))o.push(w0);let q0=g.join(g.dirname(Q),"components");if(!o.includes(q0))o.push(q0);if(G.componentsDir&&G.componentsDir!==X&&!o.includes(G.componentsDir))o.push(G.componentsDir);let P0=typeof G.root==="string"?g.resolve(G.root):void 0,J1=P0??g.dirname(Q),n=[];if(P0)n.push(g.resolve(P0,"resources/views/components")),n.push(g.resolve(P0,"resources/components")),n.push(g.resolve(P0,"src/components")),n.push(g.resolve(P0,"components"));n.push(g.resolve(import.meta.dir,"components"));for(let A0 of n)if(!o.includes(A0))o.push(A0);let u0=G._pluginComponentDirs;if(Array.isArray(u0)){for(let A0 of u0)if(typeof A0==="string"&&!o.includes(A0))o.push(A0)}if(G.fallbackComponentsDir&&!o.includes(G.fallbackComponentsDir))o.push(G.fallbackComponentsDir);let P1=[...new Set(o.map((A0)=>{if(!A0)return A0;return g.isAbsolute(A0)?A0:g.resolve(J1,A0)}))];o.length=0,o.push(...P1);let v1=`${F}\x00${Q}\x00${P1.join("\x00")}`,e9=o9.get(v1);if(e9)if(await t(e9))O=e9;else o9.delete(v1);if(!O&&(F.startsWith("./")||F.startsWith("../")))O=g.resolve(g.dirname(Q),`${F}.stx`),L.push(O);else if(!O)for(let A0 of o){if(!A0)continue;for(let i2 of c){let n2=g.join(A0,i2);if(L.push(n2),await t(n2)){O=n2;break}}if(O)break;if(!O)try{let i2=await import("fs");if(!i2.statSync(A0,{throwIfNoEntry:!1})?.isDirectory())continue;let LJ=8,$5=[{path:A0,depth:0}];while($5.length>0&&!O){let s2=$5.pop();if(s2.depth>=LJ)continue;let L3;try{L3=i2.readdirSync(s2.path,{withFileTypes:!0})}catch{continue}for(let o2 of L3){if(!o2.isDirectory())continue;if(o2.name==="node_modules"||o2.name.startsWith("."))continue;let O3=g.join(s2.path,o2.name);for(let OJ of c){let Z5=g.join(O3,OJ);if(L.push(Z5),await t(Z5)){O=Z5;break}}if(O)break;$5.push({path:O3,depth:s2.depth+1})}}}catch{}if(O)break}if(O)o9.set(v1,O)}if(!O||!await t(O))return ZJ($,Q,L),JJ($);K.add(O);let w;if(l2.has(O))w=l2.get(O);else try{w=await Bun.file(O).text(),l2.set(O,w)}catch(m){let c=m instanceof Error?m.message:String(m);return ZJ($,Q,[O],c),JJ($)}let R=new Set(["__originalFilePath","__importedComponents",a2,"__stx_client_signal_names","__stx_runtime_config","__stxServeContext","__stx_scope_seq"]),D={};for(let[m,c]of Object.entries(Y))if(!m.startsWith("__")||R.has(m))D[m]=c;let N=J;if(J.includes("@include")){let{processIncludes:m}=await s("stx/includes",()=>import("./chunk-at4s8qvj.js"));N=await m(J,Y,Q,G,K)}let T=x0(N),M=[],I=T.output.replace(/\x00STX_SCRIPT_(\d+)\x00/g,(m,c)=>{let z0=T.scripts[Number(c)]||"",o=z0.match(/^<script\b([^>]*)>/i)?.[1]||"",w0=o.match(/\btype\s*=\s*["']([^"']+)["']/i)?.[1]?.toLowerCase(),q0=!w0||["module","text/javascript","application/javascript"].includes(w0);if(!/\bserver\b/i.test(o)&&q0)return M.push(z0),"";return z0}),{extractSlotContent:k}=await s("stx/slots",()=>import("./chunk-054eyrwg.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)},b=`stx_${F.replace(/[^a-zA-Z0-9]/g,"_")}_${++C.n}_${C.key}`,y={...D,$uid:b,...Z,props:Z,slot:I,$slots:E,__processedComponents:H,__sections:{},__stx_signals_gate:X1(w)||Uq(J)};Kq(w,y);let P=w,h=F9(P);if(h)P=h.content.trim();let p=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,u=[...w.matchAll(p)],r=[],e=null,Y0=u.some((m)=>/\bserver\b/.test(m[1]||"")&&/\bcache\b/.test(m[1]||"")),i=null,W0=null,a=null,L0=0,c0=null;if(Zq(G),Y0&&U3>0){let m=Jq({props:Z,slot:J,buildMode:G.buildMode??"",skipEventDirectives:G.skipEventDirectives===!0,layers:G._layerGraph?.layers.map((c)=>c.configFile),uid:b});if(m!==null){i=`${O}\x00${U1(w)}\x00${m}`;let c=r9.get(i);if(c){for(let z0 of c.dependencies)K.add(z0);if(C3(Y,c.clientFactories),C.n+=c.uidsConsumed,c.preservedClientExpressions.length>0){let z0=new Set(Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[]);for(let o of c.preservedClientExpressions)z0.add(o);Y.__stx_preserved_client_expressions=[...z0]}return c.output}W0=new Set(K),a=y3(Y),L0=C.n,c0=new Set(Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[])}}let p0=new Set;for(let m of u){let c=m[1]||"",z0=m[2]||"",o=c.includes("server");if(T1(c)&&z0.trim())z0=k1(z0);if(o&&z0){for(let q0 of j1(z0))p0.add(q0);try{await q(z0,y,O,{onFailure:(q0)=>{if(q0.kind!=="unknown")e=q0.kind}})}catch(q0){}}if(!o){let q0=z0.replace(/^\s*const\s*\{[^}]+\}\s*=\s*window\.stx\s*;?\s*\n?/gm,""),P0=q0.includes("{{")&&q0.includes("}}"),J1=q0.includes("{!!")&&q0.includes("!!}");if(P0||J1)q0=H5(q0,y,O);let n=c.replace(/\s*\bts\b/g,"").replace(/\s*\blang\s*=\s*["']?(ts|typescript)["']?/gi,"");r.push(`<script${n}>${q0}</script>`)}}let f=x0(w).output.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),l=f?f[1]:"",Z0=f?f[2]:"",j0="",_0=l&&/\bscoped\b/i.test(l);if(f)j0=`<style${l}>${jq(Z0,y,O)}</style>`;let G0=P;if(G0=G0.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),f)G0=G0.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");{let m=/@push\s*\(\s*['"]styles['"]\s*\)([\s\S]*?)@endpush/gi,c=[];if(G0=G0.replace(m,(z0,o)=>{let w0=o.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i);if(w0)c.push(`<style${w0[1]}>${w0[2]}</style>`);return""}),G0=G0.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/gi,""),c.length>0)j0=`${j0}${c.join(`
|
|
3605
|
+
`)}`}if(J&&G0.includes("{{ text || slot }}"))G0=G0.replace(/\{\{\s*text\s*\|\|\s*slot\s*\}\}/g,()=>J);let{applySlots:B1}=await s("stx/slots",()=>import("./chunk-054eyrwg.js")),{defaultSlot:a9,namedSlots:t9}=A,S=r.some((m)=>/\b(?:state|derived|effect|ref|useRef|reactive|computed|watch|watchEffect|useModel|useReactiveProp|defineProps|withDefaults|defineEmits|defineExpose|defineSlots)\s*(?:<[^<>()]*>)?\s*\(/.test(m)),v=(m)=>S?P8(m,b):m,d=new Map([...t9].map(([m,c])=>[m,{...c,content:v(c.content)}]));G0=await B1(G0,v(a9),d,y);let J0=Bq(r),H0=(Array.isArray(y.__stx_client_signal_names)?y.__stx_client_signal_names:[]).filter((m)=>!p0.has(m));if(J0.length>0||H0.length>0)y.__stx_client_signal_names=[...new Set([...H0,...J0])];else delete y.__stx_client_signal_names;let k0={...G,_rootComponentsDir:G._rootComponentsDir||G.componentsDir,componentsDir:g.dirname(O),skipSignalsRuntime:!0,skipEventDirectives:S||r.length===0,defaultLayout:void 0};y.__stxProcessingDepth=(Y.__stxProcessingDepth||0)+1;let r0=await X3(G0,y,O,k0,K),p2=new Set(Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[]);for(let m of r0.matchAll(/\{\{([\s\S]*?)\}\}/g))p2.add(m[1].trim());if(p2.size>0)Y.__stx_preserved_client_expressions=[...p2];let Z1=b,y0=r0;if(S){let m="";if(Object.keys(Z).length>0)try{m=` data-stx-props="${aZ(JSON.stringify(Z))}"`}catch{}let c=j?` stx-hydrate="${aZ(j)}"`:"",z0=` data-stx-scope="${Z1}"${m}${c}`;y0=Wq(r0,z0)??`<div${z0}>${r0}</div>`;let o=await Promise.all(r.map(async(w0)=>{let q0=w0.match(/<script([^>]*)>([\s\S]*)<\/script>/i);if(!q0)return w0;let[,P0,J1]=q0,{vendorStyleTags:n,factoryBody:u0}=await Oq(J1,O,G.buildMode==="compile"),P1=j?null:Q5(Y,u0),v1=P1?`window.__stxComponentFactories[${JSON.stringify(P1)}](${JSON.stringify(Z1)});`:`(${u0})(${JSON.stringify(Z1)});`;if(j)return`${n}<script type="stx/island" data-stx-island="${Z1}" data-stx-scoped data-stx-owner="${Z1}"${P0}>${v1}</script>`;return`${n}<script data-stx-scoped data-stx-run="always" data-stx-owner="${Z1}"${P0}>${v1}</script>`}));if(y0=y0+`
|
|
3606
3606
|
`+o.join(`
|
|
3607
|
-
`),j0)
|
|
3608
|
-
`+j0}else{if(j0)
|
|
3609
|
-
`+j0;if(r.length>0){let m=
|
|
3610
|
-
`+
|
|
3611
|
-
`),
|
|
3612
|
-
${
|
|
3613
|
-
`)}`:
|
|
3614
|
-
`),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),
|
|
3615
|
-
`);break}}else if(J){let G=$.indexOf(J);if(G>=0)return KJ($,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 O0($,Z,J,X,Y,Q){let{lineNumber:G,context:z}=KJ(X,Y,Q),K=J.split("/").pop(),q=0;if(typeof Y==="number"&&Y>=0&&X){let
|
|
3616
|
-
`,Math.max(0,Y-1));q=Y-(
|
|
3607
|
+
`),j0)y0+=`
|
|
3608
|
+
`+j0}else{if(j0)y0+=`
|
|
3609
|
+
`+j0;if(r.length>0){let m=y.__stx_event_bindings||[],c=d9(y),z0=await Promise.all(r.map(async(o)=>{let w0=o.match(/<script\b[^>]*>([\s\S]*?)<\/script>/);if(!w0)return o;return await l9(w0[1],{eventBindings:m,templateContent:y0,filePath:O,projectRoot:process.cwd(),serverData:c,instanceId:b})}));y0+=`
|
|
3610
|
+
`+z0.join(`
|
|
3611
|
+
`),y.__stx_event_bindings=[]}}if(_0){let m=c9(y0,O);if(m.hasScoped)y0=m.html}if(i&&W0){let m=Array.isArray(Y.__stx_preserved_client_expressions)?Y.__stx_preserved_client_expressions:[];r9.set(i,{output:y0,dependencies:[...K].filter((c)=>!W0.has(c)),clientFactories:a?b3(Y,a):[],uidsConsumed:C.n-L0,preservedClientExpressions:c0?m.filter((c)=>!c0.has(c)):[]})}if(e)y0=`<!--stx-render-failed:${e}-->${y0}`;return M.length>0?`${y0}
|
|
3612
|
+
${M.join(`
|
|
3613
|
+
`)}`:y0}catch(B){return`[Error processing component: ${B instanceof Error?B.message:String(B)}]`}finally{W.delete($)}}async function t($){return Bun.file($).exists()}function j3($,Z){let J=g.resolve(Z),X=g.resolve($),Y=J.endsWith(g.sep)?J:J+g.sep;if(X===J||X.startsWith(Y))return X;return null}async function Vq($,Z,J,X){let Y=Z.startsWith("layouts/")?Z.slice(8):Z,Q=g.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 q9($,Z,J,X){let Y=await Lq($,Z,J,X);if(Y===null)return null;let Q=j3(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=g.isAbsolute(z)?z:g.resolve(process.cwd(),z);if(j3(Y,K))return g.resolve(Y)}return console.warn(`[stx] rejected resolved template path that escapes project root: ${Y} (template: ${$}, from: ${Z})`),null}async function Lq($,Z,J,X){if(J.debug)console.log(`Resolving template path: ${$} from ${Z}`);let Y=g.dirname(Z),Q=process.cwd();if($.startsWith("/")){let U=g.join(Q,$),j=j3(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=g.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(g.isAbsolute(J.layoutsDir)?J.layoutsDir:g.resolve(process.cwd(),J.layoutsDir));let K=g.resolve(Y),q=process.cwd();for(let U=0;U<10;U++){let j=g.join(K,"layouts"),B=!1;try{B=GJ.statSync(j,{throwIfNoEntry:!1})?.isDirectory()??!1}catch{}if(B){z.push(j);break}let V=g.dirname(K);if(V===K||V.length<q.length)break;K=V}for(let U of z){let j=await Vq(U,$,X,J.debug);if(j)return j}if(J.fallbackLayoutsDir){let U=g.isAbsolute(J.fallbackLayoutsDir)?J.fallbackLayoutsDir:g.resolve(process.cwd(),J.fallbackLayoutsDir),j=$.startsWith("layouts/")?$.slice(8):$,B=[g.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=g.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=g.join(J.partialsDir,"layouts");if(await t(U)){let j=g.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||g.join(process.cwd(),"views"),H=g.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=g.join(g.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 KJ($,Z,J){let X=0,Y="",Q="";try{if(typeof Z==="number"&&Z>=0){let G=$.split(`
|
|
3614
|
+
`),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(`
|
|
3615
|
+
`);break}}else if(J){let G=$.indexOf(J);if(G>=0)return KJ($,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 O0($,Z,J,X,Y,Q){let{lineNumber:G,context:z}=KJ(X,Y,Q),K=J.split("/").pop(),q=0;if(typeof Y==="number"&&Y>=0&&X){let H=X.lastIndexOf(`
|
|
3616
|
+
`,Math.max(0,Y-1));q=Y-(H+1)+1}let W="";if(G>0)W+=`
|
|
3617
3617
|
${J}:${G}${q>0?`:${q}`:""}: ${$.toLowerCase()} error: ${Z}
|
|
3618
|
-
`;if(
|
|
3618
|
+
`;if(W+=`
|
|
3619
3619
|
${$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}
|
|
3620
|
-
`,
|
|
3621
|
-
`,
|
|
3622
|
-
`,
|
|
3623
|
-
${$0.cyan}${$0.bold}File:${$0.reset} ${$0.dim}${K}${$0.reset}`,G>0)
|
|
3620
|
+
`,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}
|
|
3621
|
+
`,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}
|
|
3622
|
+
`,W+=`
|
|
3623
|
+
${$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+=`
|
|
3624
3624
|
${$0.yellow}${$0.bold}Message:${$0.reset} ${Z}
|
|
3625
|
-
`,z)
|
|
3625
|
+
`,z)W+=`
|
|
3626
3626
|
${$0.blue}${$0.bold}Context:${$0.reset}
|
|
3627
3627
|
${$0.dim}${z}${$0.reset}
|
|
3628
|
-
`;return
|
|
3628
|
+
`;return W}function H_(){l2.clear(),o9.clear(),r9.clear()}function U_(){return{size:l2.size,maxSize:500}}var H3=b1(128);async function Oq($,Z,J){let X=U1($,Z,J),Y=H3.get(X);if(Y){if(QJ(Y.deps))return Y;H3.delete(X)}let Q=B3($,{filePath:Z,projectRoot:process.cwd()}),G=Q.code,z=V3(Q.styles);G=J2(G).code;let{hasUserImports:K,bundleClientScript:q}=await s("stx/client-script-bundler",()=>import("./chunk-rfq5h4zn.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-mrxrz9b1.js"));G=U(G);let j=e0(G),B=Qq(j),V=`function(__scopeId) {
|
|
3629
3629
|
${o1("const",[...XJ,...B],j)}
|
|
3630
3630
|
const __scope = window.stx._scopes = window.stx._scopes || {};
|
|
3631
3631
|
const __scopeVars = __scope[__scopeId] = __scope[__scopeId] || {};
|
|
@@ -3654,18 +3654,18 @@ catch (e) {}
|
|
|
3654
3654
|
finally {
|
|
3655
3655
|
window.__STX_CURRENT_ELEMENT__ = __previousCurrentElement;
|
|
3656
3656
|
}
|
|
3657
|
-
}`,F={vendorStyleTags:z,factoryBody:V,deps:YJ([...
|
|
3657
|
+
}`,F={vendorStyleTags:z,factoryBody:V,deps:YJ([...W,...Q.styles.map((O)=>O.resolvedPath)])};if(!H&&Q.unresolved.length===0)H3.set(X,F);return F}var Fq=/^[ \t]*import\s+['"]([^'"]+?\.css)(\?[^'"]*)?['"]\s*;?\s*$/gm;function _q($){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 wq($,Z){let J=Z;while(!0){let X=S1.join(J,"node_modules",$,"package.json");if(c2.existsSync(X))return S1.dirname(X);let Y=S1.dirname(J);if(Y===J)return null;J=Y}}function Rq($,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 Dq($,Z){let J=_q($);if(!J||!J.subpath)return null;let X=wq(J.pkg,Z);if(!X)return null;let Y;try{Y=JSON.parse(c2.readFileSync(S1.join(X,"package.json"),"utf8"))}catch{return null}let Q=`.${J.subpath}`,G=Rq(Y.exports,Q);if(!G)return null;let z=S1.resolve(X,G);return c2.existsSync(z)?z:null}function B3($,Z){let J=Z.filePath?S1.dirname(Z.filePath):Z.projectRoot||process.cwd(),X=Z.projectRoot||process.cwd(),Y=new Set,Q=[],G=[];return{code:$.replace(Fq,(K,q)=>{let W;try{if(q.startsWith("./")||q.startsWith("../")||q.startsWith("/")){if(W=q.startsWith("/")?q:S1.resolve(J,q),!c2.existsSync(W))throw Error(`file not found: ${W}`)}else{let H=null;try{H=Bun.resolveSync(q,X)}catch{H=Dq(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=c2.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 Nq($){return $.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function V3($){if($.length===0)return"";return`${$.map((Z)=>{return`<style data-stx-vendor="${Nq(Z.source)}" data-stx-layer="vendor">
|
|
3658
3658
|
@layer vendor {
|
|
3659
3659
|
${Z.contents}
|
|
3660
3660
|
}
|
|
3661
3661
|
</style>`}).join(`
|
|
3662
3662
|
`)}
|
|
3663
|
-
`}var
|
|
3663
|
+
`}var Mq=Q2;function J2($){let Z=Q0($),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=H1.filter((z)=>{if(J.has(z)||X.has(z))return!1;return BJ(Z,z,!0)}),Q=UJ(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(`
|
|
3664
3664
|
`)}
|
|
3665
|
-
${$}`,imports:Y,models:Q}}var
|
|
3665
|
+
${$}`,imports:Y,models:Q}}var Aq=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 UJ($){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(!Aq.has(X[1]))Z.add(X[1]);return Array.from(Z)}function Iq($){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 jJ($){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 F=V.trim();if(!F||F.startsWith("type "))continue;let O=F.match(/^([A-Za-z_$][\w$]*)(?:\s+as\s+([A-Za-z_$][\w$]*))?$/);if(!O)continue;let _=O[1],L=O[2]||_;if(Y.add(_),Y.add(L),U==="stx"||U==="@stacksjs/stx")Z.add(_);else J.add(_);if(L!==_)j.push(`${L} = ${_}`)}let B=j.length>0?`var ${j.join(", ")}; /* [auto-import processed] */`:"// [auto-import processed]";X=X.replace(G[0],B)}let z=Iq(X);for(let H of Mq){if(Y.has(H)||z.has(H))continue;if(new RegExp(`\\b${H}\\s*(?:<[^>]*>)?\\s*\\(`,"g").test(X))Z.add(H)}let K=Q0(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 H1){if(Y.has(H)||z.has(H)||q.has(H))continue;if(BJ(K,H))J.add(H)}let W=UJ(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 BJ($,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 VJ($,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
|
|
3666
3666
|
${J.join(`
|
|
3667
3667
|
`)}
|
|
3668
|
-
${
|
|
3668
|
+
${Tq($,Z)}`;return""}function E_($,Z=[]){let{browserImports:J}=jJ($),X=new Set(Z);return VJ([],J.filter((Y)=>!X.has(Y)))}function Tq($,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
|
|
3669
3669
|
[${J.join(", ")}].forEach(function (e) {
|
|
3670
3670
|
if (e[1] !== 'undefined') return;
|
|
3671
3671
|
console.error(
|
|
@@ -3674,15 +3674,15 @@ ${Aq($,Z)}`;return""}function T_($,Z=[]){let{browserImports:J}=jJ($),X=new Set(Z
|
|
|
3674
3674
|
+ 'or it should be imported from a relative path so the bundler includes it.'
|
|
3675
3675
|
);
|
|
3676
3676
|
});
|
|
3677
|
-
`}function d9($){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
|
|
3677
|
+
`}function d9($){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 kq($,Z){return new RegExp(`(?<![.#\\w$])${Z}(?![\\w$])`).test($)}var Eq=/token|secret|passw|apikey|api_key|privatekey|private_key|credential|webhook|bearer|jwt|signature/i,qJ=new Set;function yq($,Z){let J=Eq.test($),X=Z.length>32768;if(!J&&!X)return;if(qJ.has($))return;if(qJ.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 n$($,Z){if(!Z)return"";let J=Q0($),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&&!kq(J,Q))continue;if(r2($,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;yq(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)
|
|
3678
3678
|
${Y.join(`
|
|
3679
3679
|
`)}
|
|
3680
|
-
`}var
|
|
3680
|
+
`}var bq={left:0,middle:1,right:2};function Cq($){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=bq[$.mouse];Z.push(`if ($event.button !== ${J}) return`)}if($.prevent)Z.push("$event.preventDefault()");if($.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function Sq($,Z){let{elementId:J,event:X,modifiers:Y}=$,Q=X5($.handler),G=Cq(Y),z=[];if(Y.once)z.push("once: true");if(Y.capture)z.push("capture: true");if(J5(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) {
|
|
3681
3681
|
$el.dispatchEvent(new CustomEvent(name, { detail: detail, bubbles: true, cancelable: true }))
|
|
3682
|
-
};`;function U(j){if(/\$emit\s*\(/.test(j))return`${
|
|
3682
|
+
};`;function U(j){if(/\$emit\s*\(/.test(j))return`${H}
|
|
3683
3683
|
${j}`;return`var scope = $el.closest('[data-stx-scope]');
|
|
3684
3684
|
if (scope && scope.__stx_execute) {
|
|
3685
|
-
scope.__stx_execute('${
|
|
3685
|
+
scope.__stx_execute('${W}', $event, $el);
|
|
3686
3686
|
}
|
|
3687
3687
|
else {
|
|
3688
3688
|
${j}
|
|
@@ -3709,34 +3709,34 @@ else {
|
|
|
3709
3709
|
}${K})
|
|
3710
3710
|
})()`;if(/\$emit\s*\(/.test(Q))return` var $el = document.getElementById('${J}')
|
|
3711
3711
|
if ($el) $el.addEventListener('${X}', function($event) {
|
|
3712
|
-
${q}${
|
|
3712
|
+
${q}${H}
|
|
3713
3713
|
${Q}
|
|
3714
3714
|
}${K})`;return` var $el = document.getElementById('${J}')
|
|
3715
3715
|
if ($el) $el.addEventListener('${X}', function($event) {
|
|
3716
3716
|
${q}var scope = $el.closest('[data-stx-scope]');
|
|
3717
3717
|
if (scope && scope.__stx_execute) {
|
|
3718
|
-
scope.__stx_execute('${
|
|
3718
|
+
scope.__stx_execute('${W}', $event, $el);
|
|
3719
3719
|
}
|
|
3720
3720
|
else {
|
|
3721
3721
|
${Q}
|
|
3722
3722
|
}
|
|
3723
|
-
}${K})`}function
|
|
3723
|
+
}${K})`}function Pq($){if($.length===0)return"";return`
|
|
3724
3724
|
// STX: auto-generated event bindings
|
|
3725
|
-
${$.map((J,X)=>
|
|
3725
|
+
${$.map((J,X)=>Sq(J,X)).join(`
|
|
3726
3726
|
`)}`}function WJ($){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]!==`
|
|
3727
|
-
`)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
|
|
3727
|
+
`)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 vq=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 xq($){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(!vq.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 l9($,Z={}){let J=$,X="",Y=!1,Q=[],G=B3(J,{filePath:Z.filePath,projectRoot:Z.projectRoot});J=G.code;let z=V3(G.styles),K=J2(J);J=K.code,Q=[...K.imports,...K.models];let{hasUserImports:q,bundleClientScript:W}=await s("stx/client-script-bundler",()=>import("./chunk-rfq5h4zn.js"));if(q(J))J=await W(J,Z.filePath||"",{projectRoot:Z.projectRoot,minify:Z.production}),Y=!0;if(Z.autoImports!==!1){let L=jJ(J);J=L.code,X=VJ(L.stxImports,L.browserImports.filter((w)=>!Q.includes(w)))}if(X=`${n$(J,Z.serverData)}${X}`,J=e0(J),!Y&&T1(Z.attrs||""))J=k1(J);let H=Pq(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}>
|
|
3728
3728
|
${Z2(`${X}${J}
|
|
3729
|
-
${
|
|
3729
|
+
${H}`)}
|
|
3730
3730
|
</script>`}let V=HJ($),F=/function __stx_setup_/.test(J),O=/\bstx\.mount\s*\(|\bstx\.mountEl\s*\(/.test($);function _(L){let w=L.length>0?`
|
|
3731
3731
|
return { ${L.join(", ")} };`:"";return`${z}<script data-stx-scoped data-stx-run="always"${B}>
|
|
3732
3732
|
window.stx.mount(function() {
|
|
3733
3733
|
'use strict';
|
|
3734
3734
|
${Z2(`${X}${J}
|
|
3735
|
-
${
|
|
3736
|
-
})</script>`}if(!O&&!F){if(V)return _(WJ($));if(Z.templateContent){let L=WJ($);if(L.length>0){let w=
|
|
3735
|
+
${H}${w}`)}
|
|
3736
|
+
})</script>`}if(!O&&!F){if(V)return _(WJ($));if(Z.templateContent){let L=WJ($);if(L.length>0){let w=xq(Z.templateContent);if(L.some((D)=>w.has(D)))return _(L)}}}return`${z}<script data-stx-scoped data-stx-run="always"${B}>
|
|
3737
3737
|
;(function() {
|
|
3738
3738
|
'use strict';
|
|
3739
3739
|
${Z2(`${X}${J}
|
|
3740
|
-
${
|
|
3740
|
+
${H}`)}
|
|
3741
3741
|
})()</script>`}
|
|
3742
|
-
export{
|
|
3742
|
+
export{QX as vl,GX as wl,zX as xl,a0 as yl,B5 as zl,V5 as Al,L5 as Bl,O5 as Cl,q4 as Dl,K4 as El,VX as Fl,OX as Gl,_X as Hl,IW as Il,TW as Jl,kW as Kl,EW as Ll,yW as Ml,XX as Nl,Y4 as Ol,Q4 as Pl,G4 as Ql,z4 as Rl,MW as Sl,_4 as Tl,O2 as Ul,FJ as Vl,J5 as Wl,X5 as Xl,Y5 as Yl,NJ as Zl,A3 as _l,gq as $l,H1 as am,X2 as bm,CL as cm,B3 as dm,V3 as em,Mq as fm,J2 as gm,jJ as hm,BJ as im,VJ as jm,E_ as km,d9 as lm,n$ as mm,l9 as nm,cq as om,$9 as pm,pq as qm,iq as rm,nq as sm,sq as tm,X9 as um,vJ as vm,KW as wm,xJ as xm,qW as ym,fJ as zm,Z9 as Am,q5 as Bm,W5 as Cm,X1 as Dm,gJ as Em,H5 as Fm,mJ as Gm,WW as Hm,L1 as Im,dJ as Jm,HW as Km,C0 as Lm,UW as Mm,LW as Nm,rJ as Om,aJ as Pm,Z4 as Qm,J4 as Rm,X4 as Sm,DW as Tm,W4 as Um,_5 as Vm,V2 as Wm,Y9 as Xm,PW as Ym,F5 as Zm,DX as _m,NX as $m,MX as an,vW as bn,U4 as cn,j4 as dn,z1 as en,K1 as fn,_1 as gn,J7 as hn,D2 as in,L9 as jn,h5 as kn,bY as ln,SY as mn,Q7 as nn,vY as on,xY as pn,z7 as qn,w1 as rn,kU as sn,K7 as tn,n5 as un,mY as vn,i5 as wn,dY as xn,lY as yn,EU as zn,yU as An,q7 as Bn,W7 as Cn,H7 as Dn,cY as En,pY as Fn,bU as Gn,CU as Hn,iY as In,SU as Jn,PU as Kn,L7 as Ln,w7 as Mn,r5 as Nn,iU as On,A2 as Pn,a5 as Qn,t5 as Rn,nU as Sn,qQ as Tn,sU as Un,WQ as Vn,N7 as Wn,oU as Xn,HQ as Yn,rU as Zn,aU as _n,F9 as $n,Q$ as ao,Fj as bo,_j as co,wj as do,Rj as eo,SQ as fo,$6 as go,b2 as ho,lQ as io,D$ as jo,X8 as ko,ZL as lo,K8 as mo,Qz as no,EL as oo,Wz as po,R8 as qo,s$ as ro,D8 as so,M8 as to,o$ as uo,Iz as vo,Tz as wo,A8 as xo,L8 as yo,kz as zo,yz as Ao,f$ as Bo,i6 as Co,n6 as Do,K3 as Eo,uK as Fo,mK as Go,dK as Ho,lK as Io,cK as Jo,pK as Ko,iZ as Lo,oK as Mo,eK as No,$q as Oo,a1 as Po,E$ as Qo,D6 as Ro,jG as So,tB as To,eB as Uo,U6 as Vo,$V as Wo,A$ as Xo,I$ as Yo,T$ as Zo,I6 as _o,T6 as $o,k6 as ap,IV as bp,TV as cp,y6 as dp,kV as ep,RG as fp,C6 as gp,x6 as hp,P$ as ip,fG as jp,v$ as kp,m6 as lp,d6 as mp,iG as np,gV as op,hV as pp,l6 as qp,uV as rp,mV as sp,x$ as tp,r6 as up,x9 as vp,f9 as wp,$2 as xp,oG as yp,t6 as zp,e6 as Ap,iV as Bp,u$ as Cp,rG as Dp,aG as Ep,m$ as Fp,d$ as Gp,$8 as Hp,Z8 as Ip,r$ as Jp,a$ as Kp,$3 as Lp,X3 as Mp,VZ as Np,YK as Op,zK as Pp,KK as Qp,j1 as Rp,RF as Sp,DF as Tp,NF as Up,MF as Vp,NZ as Wp,NK as Xp,AF as Yp,IF as Zp,TF as _p,kK as $p,SK as aq,PK as bq,vK as cq,xK as dq,Xq as eq,T1 as fq,W3 as gq,k1 as hq,Wq as iq,k9 as jq,Hq as kq,Uq as lq,Bq as mq,I1 as nq,t as oq,q9 as pq,KJ as qq,O0 as rq,H_ as sq,U_ as tq,w4 as uq,R4 as vq,O1 as wq,D4 as xq,f1 as yq,N4 as zq,F2 as Aq,sW as Bq,gX as Cq,R5 as Dq,oW as Eq,D5 as Fq,rW as Gq,aW as Hq,Q1 as Iq,tW as Jq,eW as Kq,$H as Lq,ZH as Mq,JH as Nq,XH as Oq,hX as Pq,M5 as Qq,M4 as Rq,QH as Sq,GH as Tq,zH as Uq,KH as Vq,qH as Wq,I4 as Xq,WH as Yq,T4 as Zq,HH as _q,UH as $q,_2 as ar,pX as br,LH as cr,nX as dr,S4 as er,K9 as fr,DH as gr,u4 as hr,b5 as ir,CH as jr,S5 as kr,qY as lr,jY as mr,SH as nr,PH as or,vH as pr,xH as qr,fH as rr,gH as sr,BY as tr,VY as ur,d4 as vr,P5 as wr,_Y as xr,x5 as yr,$7 as zr,ZU as Ar,JU as Br,g5 as Cr,AY as Dr,Z7 as Er};
|