@stacksjs/stx 0.2.122 → 0.2.124

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/ssg.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- var oX=Object.defineProperty;var sX=($)=>$;function rX($,Z){this[$]=sX.bind(null,Z)}var e=($,Z)=>{for(var Y in Z)oX($,Y,{get:Z[Y],enumerable:!0,configurable:!0,set:rX.bind(Z,Y)})};var b=($,Z)=>()=>($&&(Z=$($=0)),Z);var U0=import.meta.require;import T5 from"path";function l6($){p6=$?.trim()||null}function I5(){return process.env[tX]?.trim()||p6||a1}function B1($=process.cwd(),...Z){let Y=I5();return T5.isAbsolute(Y)?T5.join(Y,...Z):T5.join($,Y,...Z)}function D5($){if(!$||T5.isAbsolute($))return $;let Z=$.replace(/\\/g,"/");if(Z!==a1&&!Z.startsWith(`${a1}/`))return $;let Y=Z.slice(a1.length+1);return Y?T5.join(I5(),Y):I5()}var a1=".stx",tX="STX_DIR",p6=null;var E5=()=>{};var O0;var c6=b(()=>{O0={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",underscore:"\x1B[4m",blink:"\x1B[5m",reverse:"\x1B[7m",hidden:"\x1B[8m",black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",gray:"\x1B[90m",bgBlack:"\x1B[40m",bgRed:"\x1B[41m",bgGreen:"\x1B[42m",bgYellow:"\x1B[43m",bgBlue:"\x1B[44m",bgMagenta:"\x1B[45m",bgCyan:"\x1B[46m",bgWhite:"\x1B[47m",bgGray:"\x1B[100m"}});function i6($,Z,Y,J){let X=$;X=X.replace(/@a11y\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(G,K,z)=>{let W={"aria-label":"Ensure interactive elements have accessible labels","alt-text":"Provide alternative text for images",focus:"Ensure the element can receive keyboard focus",landmark:"Use appropriate landmark roles","heading-order":"Maintain proper heading hierarchy","color-contrast":"Ensure sufficient color contrast","keyboard-nav":"Make sure element is keyboard navigable","screen-reader":"Optimize for screen reader users"}[K]||"Make this element accessible";return`<!-- a11y-hint: ${z||W} -->`});let Q=/@screenReader\(([^@]*)\)@endScreenReader/g;return X=X.replace(Q,(G,K)=>{return`<span class="sr-only">${K.trim()}</span>`}),X=X.replace(/@ariaDescribe\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(G,K,z)=>{return`<span id="${`desc-${K}`}" class="sr-only">${z}</span>`}),X}var n6,o6;var Z7=b(()=>{n6={name:"a11y",handler:($,Z,Y,J)=>{if(!Z.length)return $;let X=Z[0].replace(/['"]/g,""),Q=Z.length>1?Z[1].replace(/['"]/g,""):"",K={"aria-label":"Ensure interactive elements have accessible labels","alt-text":"Provide alternative text for images",focus:"Ensure the element can receive keyboard focus",landmark:"Use appropriate landmark roles","heading-order":"Maintain proper heading hierarchy","color-contrast":"Ensure sufficient color contrast","keyboard-nav":"Make sure element is keyboard navigable","screen-reader":"Optimize for screen reader users"}[X]||"Make this element accessible";return`<!-- a11y-hint: ${Q||K} -->${$}`},hasEndTag:!1},o6={name:"screenReader",handler:($)=>{return`<span class="sr-only">${$}</span>`},hasEndTag:!0}});function eX($,Z={}){let{duration:Y,delay:J,ease:X,direction:Q,custom:G}={...K1,...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);"}
2
+ var oX=Object.defineProperty;var sX=($)=>$;function rX($,Z){this[$]=sX.bind(null,Z)}var e=($,Z)=>{for(var Y in Z)oX($,Y,{get:Z[Y],enumerable:!0,configurable:!0,set:rX.bind(Z,Y)})};var b=($,Z)=>()=>($&&(Z=$($=0)),Z);var U0=import.meta.require;import T5 from"path";function l6($){p6=$?.trim()||null}function I5(){return process.env[tX]?.trim()||p6||a1}function _1($=process.cwd(),...Z){let Y=I5();return T5.isAbsolute(Y)?T5.join(Y,...Z):T5.join($,Y,...Z)}function D5($){if(!$||T5.isAbsolute($))return $;let Z=$.replace(/\\/g,"/");if(Z!==a1&&!Z.startsWith(`${a1}/`))return $;let Y=Z.slice(a1.length+1);return Y?T5.join(I5(),Y):I5()}var a1=".stx",tX="STX_DIR",p6=null;var E5=()=>{};var O0;var c6=b(()=>{O0={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",underscore:"\x1B[4m",blink:"\x1B[5m",reverse:"\x1B[7m",hidden:"\x1B[8m",black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",gray:"\x1B[90m",bgBlack:"\x1B[40m",bgRed:"\x1B[41m",bgGreen:"\x1B[42m",bgYellow:"\x1B[43m",bgBlue:"\x1B[44m",bgMagenta:"\x1B[45m",bgCyan:"\x1B[46m",bgWhite:"\x1B[47m",bgGray:"\x1B[100m"}});function i6($,Z,Y,J){let X=$;X=X.replace(/@a11y\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(G,K,z)=>{let W={"aria-label":"Ensure interactive elements have accessible labels","alt-text":"Provide alternative text for images",focus:"Ensure the element can receive keyboard focus",landmark:"Use appropriate landmark roles","heading-order":"Maintain proper heading hierarchy","color-contrast":"Ensure sufficient color contrast","keyboard-nav":"Make sure element is keyboard navigable","screen-reader":"Optimize for screen reader users"}[K]||"Make this element accessible";return`<!-- a11y-hint: ${z||W} -->`});let Q=/@screenReader\(([^@]*)\)@endScreenReader/g;return X=X.replace(Q,(G,K)=>{return`<span class="sr-only">${K.trim()}</span>`}),X=X.replace(/@ariaDescribe\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(G,K,z)=>{return`<span id="${`desc-${K}`}" class="sr-only">${z}</span>`}),X}var n6,o6;var Z7=b(()=>{n6={name:"a11y",handler:($,Z,Y,J)=>{if(!Z.length)return $;let X=Z[0].replace(/['"]/g,""),Q=Z.length>1?Z[1].replace(/['"]/g,""):"",K={"aria-label":"Ensure interactive elements have accessible labels","alt-text":"Provide alternative text for images",focus:"Ensure the element can receive keyboard focus",landmark:"Use appropriate landmark roles","heading-order":"Maintain proper heading hierarchy","color-contrast":"Ensure sufficient color contrast","keyboard-nav":"Make sure element is keyboard navigable","screen-reader":"Optimize for screen reader users"}[X]||"Make this element accessible";return`<!-- a11y-hint: ${Q||K} -->${$}`},hasEndTag:!1},o6={name:"screenReader",handler:($)=>{return`<span class="sr-only">${$}</span>`},hasEndTag:!0}});function eX($,Z={}){let{duration:Y,delay:J,ease:X,direction:Q,custom:G}={...K1,...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);"}
3
3
  @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
4
4
  @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);"}
5
5
  @keyframes slideIn { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
@@ -619,13 +619,13 @@ else {
619
619
  };
620
620
  })();
621
621
  </script>
622
- `}function X9($,Z){let Y=J9(Z);if(!Y)return $;let J=$.lastIndexOf("</body>");if(J!==-1)return $.slice(0,J)+Y+$.slice(J);return $+Y}function KQ($){let Z={},Y=$.match(/(\w+)=["']?([^"'\s]+)["']?/g)||[];for(let J of Y){let[X,Q]=J.split("="),G=Q?.replace(/["']/g,"");switch(X){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}var GQ,Q9;var X7=b(()=>{GQ={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};Q9={name:"heatmap",hasEndTag:!1,description:"Inject privacy-compliant heatmap tracking script",handler:async($,Z,Y,J)=>{let X=Y.__stx_config||{};if(Z.length>0){let Q=KQ(Z.join(" "));X.heatmap={...X.heatmap,...Q,enabled:!0}}return J9(X)}}});function _1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function G9($){let Z=$.trim().toLowerCase();return!Z.startsWith("javascript:")&&!Z.startsWith("vbscript:")&&!Z.startsWith("data:text/html")}function K9($){let Z=/^---\r?\n([\s\S]*?)\r?\n---\r?\n/,Y=$.match(Z);if(!Y)return{data:{},content:$.trim()};let J=Y[1],X=$.slice(Y[0].length),Q={};for(let G of J.split(`
623
- `)){let K=G.trim();if(!K||K.startsWith("#"))continue;let z=K.indexOf(":");if(z===-1)continue;let q=K.slice(0,z).trim(),W=K.slice(z+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:X.trim()}}function k5($,Z={}){let{gfm:Y=!0,breaks:J=!1}=Z,X=$,Q=[];if(X=X.replace(/```(\w*)\n([\s\S]*?)```/g,(W,U,j)=>{let B=Q.length,_=U?` class="language-${_1(U)}"`:"";return Q.push(`<pre><code${_}>${_1(j.trim())}</code></pre>`),`\x00CODEBLOCK${B}\x00`}),X=X.replace(/`([^`]*)`/g,(W,U)=>`<code>${_1(U)}</code>`),X=X.replace(/^######\s+(.*)$/gm,"<h6>$1</h6>"),X=X.replace(/^#####\s+(.*)$/gm,"<h5>$1</h5>"),X=X.replace(/^####\s+(.*)$/gm,"<h4>$1</h4>"),X=X.replace(/^###\s+(.*)$/gm,"<h3>$1</h3>"),X=X.replace(/^##\s+(.*)$/gm,"<h2>$1</h2>"),X=X.replace(/^#\s+(.*)$/gm,"<h1>$1</h1>"),X=X.replace(/\*\*\*(.+?)\*\*\*/g,"<strong><em>$1</em></strong>"),X=X.replace(/___(.+?)___/g,"<strong><em>$1</em></strong>"),X=X.replace(/\*\*(.+?)\*\*/g,"<strong>$1</strong>"),X=X.replace(/__(.+?)__/g,"<strong>$1</strong>"),X=X.replace(/\*(.+?)\*/g,"<em>$1</em>"),X=X.replace(/(?<![a-zA-Z0-9])_(.+?)_(?![a-zA-Z0-9])/g,"<em>$1</em>"),Y)X=X.replace(/~~(.+?)~~/g,"<del>$1</del>");if(X=X.replace(/!\[([^\]]*)\]\(([^)]+)\)/g,(W,U,j)=>{return`<img src="${G9(j)?_1(j):""}" alt="${_1(U)}" />`}),X=X.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(W,U,j)=>{return`<a href="${G9(j)?_1(j):""}">${U}</a>`}),X=X.replace(/^(?:---|\*\*\*|___)\s*$/gm,"<hr />"),X=X.replace(/^>\s+(.*)$/gm,"<blockquote>$1</blockquote>"),X=X.replace(/<\/blockquote>\n<blockquote>/g,`
624
- `),X=X.replace(/^[*\-+]\s+(.*)$/gm,"<li data-ul>$1</li>"),X=X.replace(/(<li data-ul>.*<\/li>\n?)+/g,"<ul>$&</ul>"),X=X.replace(/<\/ul>\n<ul>/g,""),X=X.replace(/^\d+\.\s+(.*)$/gm,"<li data-ol>$1</li>"),X=X.replace(/(<li data-ol>.*<\/li>\n?)+/g,"<ol>$&</ol>"),X=X.replace(/<\/ol>\n<ol>/g,""),X=X.replace(/<li data-ul>/g,"<li>"),X=X.replace(/<li data-ol>/g,"<li>"),Y)X=X.replace(/^\|(.+)\|\s*\n\|[-:\s|]+\|\s*\n((?:\|.+\|\s*\n)*)/gm,(W,U,j)=>{let _=`<tr>${U.split("|").map((L)=>L.trim()).filter(Boolean).map((L)=>`<th>${_1(L)}</th>`).join("")}</tr>`,H=j.trim().split(`
625
- `).map((L)=>{return`<tr>${L.split("|").map((O)=>O.trim()).filter(Boolean).map((O)=>`<td>${_1(O)}</td>`).join("")}</tr>`}).join(`
622
+ `}function X9($,Z){let Y=J9(Z);if(!Y)return $;let J=$.lastIndexOf("</body>");if(J!==-1)return $.slice(0,J)+Y+$.slice(J);return $+Y}function KQ($){let Z={},Y=$.match(/(\w+)=["']?([^"'\s]+)["']?/g)||[];for(let J of Y){let[X,Q]=J.split("="),G=Q?.replace(/["']/g,"");switch(X){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}var GQ,Q9;var X7=b(()=>{GQ={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};Q9={name:"heatmap",hasEndTag:!1,description:"Inject privacy-compliant heatmap tracking script",handler:async($,Z,Y,J)=>{let X=Y.__stx_config||{};if(Z.length>0){let Q=KQ(Z.join(" "));X.heatmap={...X.heatmap,...Q,enabled:!0}}return J9(X)}}});function B1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function G9($){let Z=$.trim().toLowerCase();return!Z.startsWith("javascript:")&&!Z.startsWith("vbscript:")&&!Z.startsWith("data:text/html")}function K9($){let Z=/^---\r?\n([\s\S]*?)\r?\n---\r?\n/,Y=$.match(Z);if(!Y)return{data:{},content:$.trim()};let J=Y[1],X=$.slice(Y[0].length),Q={};for(let G of J.split(`
623
+ `)){let K=G.trim();if(!K||K.startsWith("#"))continue;let z=K.indexOf(":");if(z===-1)continue;let q=K.slice(0,z).trim(),W=K.slice(z+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:X.trim()}}function k5($,Z={}){let{gfm:Y=!0,breaks:J=!1}=Z,X=$,Q=[];if(X=X.replace(/```(\w*)\n([\s\S]*?)```/g,(W,U,j)=>{let _=Q.length,B=U?` class="language-${B1(U)}"`:"";return Q.push(`<pre><code${B}>${B1(j.trim())}</code></pre>`),`\x00CODEBLOCK${_}\x00`}),X=X.replace(/`([^`]*)`/g,(W,U)=>`<code>${B1(U)}</code>`),X=X.replace(/^######\s+(.*)$/gm,"<h6>$1</h6>"),X=X.replace(/^#####\s+(.*)$/gm,"<h5>$1</h5>"),X=X.replace(/^####\s+(.*)$/gm,"<h4>$1</h4>"),X=X.replace(/^###\s+(.*)$/gm,"<h3>$1</h3>"),X=X.replace(/^##\s+(.*)$/gm,"<h2>$1</h2>"),X=X.replace(/^#\s+(.*)$/gm,"<h1>$1</h1>"),X=X.replace(/\*\*\*(.+?)\*\*\*/g,"<strong><em>$1</em></strong>"),X=X.replace(/___(.+?)___/g,"<strong><em>$1</em></strong>"),X=X.replace(/\*\*(.+?)\*\*/g,"<strong>$1</strong>"),X=X.replace(/__(.+?)__/g,"<strong>$1</strong>"),X=X.replace(/\*(.+?)\*/g,"<em>$1</em>"),X=X.replace(/(?<![a-zA-Z0-9])_(.+?)_(?![a-zA-Z0-9])/g,"<em>$1</em>"),Y)X=X.replace(/~~(.+?)~~/g,"<del>$1</del>");if(X=X.replace(/!\[([^\]]*)\]\(([^)]+)\)/g,(W,U,j)=>{return`<img src="${G9(j)?B1(j):""}" alt="${B1(U)}" />`}),X=X.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(W,U,j)=>{return`<a href="${G9(j)?B1(j):""}">${U}</a>`}),X=X.replace(/^(?:---|\*\*\*|___)\s*$/gm,"<hr />"),X=X.replace(/^>\s+(.*)$/gm,"<blockquote>$1</blockquote>"),X=X.replace(/<\/blockquote>\n<blockquote>/g,`
624
+ `),X=X.replace(/^[*\-+]\s+(.*)$/gm,"<li data-ul>$1</li>"),X=X.replace(/(<li data-ul>.*<\/li>\n?)+/g,"<ul>$&</ul>"),X=X.replace(/<\/ul>\n<ul>/g,""),X=X.replace(/^\d+\.\s+(.*)$/gm,"<li data-ol>$1</li>"),X=X.replace(/(<li data-ol>.*<\/li>\n?)+/g,"<ol>$&</ol>"),X=X.replace(/<\/ol>\n<ol>/g,""),X=X.replace(/<li data-ul>/g,"<li>"),X=X.replace(/<li data-ol>/g,"<li>"),Y)X=X.replace(/^\|(.+)\|\s*\n\|[-:\s|]+\|\s*\n((?:\|.+\|\s*\n)*)/gm,(W,U,j)=>{let B=`<tr>${U.split("|").map((L)=>L.trim()).filter(Boolean).map((L)=>`<th>${B1(L)}</th>`).join("")}</tr>`,H=j.trim().split(`
625
+ `).map((L)=>{return`<tr>${L.split("|").map((O)=>O.trim()).filter(Boolean).map((O)=>`<td>${B1(O)}</td>`).join("")}</tr>`}).join(`
626
626
  `);return`<table>
627
627
  <thead>
628
- ${_}
628
+ ${B}
629
629
  </thead>
630
630
  <tbody>
631
631
  ${H}
@@ -639,8 +639,8 @@ ${H}
639
639
  `),J)X=X.replace(/\n/g,`<br />
640
640
  `);for(let W=0;W<Q.length;W++)X=X.replace(`\x00CODEBLOCK${W}\x00`,Q[W]);return X=X.replace(/<p>\s*<\/p>/g,""),X.trim()}function o0($){let Z=/import\s*\{([^}]+)\}\s*from\s*['"](@stores|stx\/stores)['"]\s*;?\n?/g;$=$.replace(Z,(J,X)=>{return`const { ${X.split(",").map((G)=>G.trim()).filter(Boolean).join(", ")} } = window.__STX_STORES__
641
641
  `});let Y=/import\s*\{([^}]+)\}\s*from\s*['"]@composables['"]\s*;?\n?/g;return $=$.replace(Y,(J,X)=>{return`const { ${X.split(",").map((G)=>G.trim()).filter(Boolean).join(", ")} } = window.__composables
642
- `}),$}import zQ from"process";function p0($="STX_PUBLIC_"){let Z={},Y={};for(let[J,X]of Object.entries(zQ.env)){if(!J.startsWith($)||X===void 0)continue;Z[`import.meta.env.${J}`]=JSON.stringify(X),Y[J]=X}return Z["import.meta.env"]=JSON.stringify(Y),Z}var b1=()=>{};var b5={};e(b5,{queueClientBundleBuild:()=>U9,hasUserImports:()=>WQ,bundleClientScript:()=>jQ});import F0 from"path";import C0 from"fs";function WQ($){let Z=/^[ \t]*import[ \t]+(?!type(?:[ \t]|{))[\s\S]*?\s+from\s+['"]([^'"]+)['"][ \t]*;?/gm,Y;while((Y=Z.exec($))!==null){let X=Y[1];if(!z9.some((G)=>G.test(X)))return console.log("[stx:bundler] detected user import:",X),!0}let J=/^[ \t]*import[ \t]+['"]([^'"]+)['"]/gm;while((Y=J.exec($))!==null){let X=Y[1];if(/\.css(?:\?.*)?$/.test(X))continue;if(!z9.some((G)=>G.test(X)))return console.log("[stx:bundler] detected side-effect import:",X),!0}return!1}function UQ($,Z,Y,J){let X=(Q,G)=>{let K=Q===Y?Z:F0.dirname(Q),z=F0.resolve(K,G),q=[z,`${z}.ts`,`${z}.tsx`,`${z}.js`,`${z}.mjs`,`${z}.jsx`,F0.join(z,"index.ts"),F0.join(z,"index.tsx"),F0.join(z,"index.js"),F0.join(z,"index.mjs")];for(let W of q)try{if(C0.existsSync(W)&&C0.statSync(W,{throwIfNoEntry:!1})?.isFile())return W}catch{}return z};return{name:"stx-client-bundle",setup(Q){Q.onResolve({filter:/^(stx|@stacksjs\/stx)$/},(G)=>({path:G.path,external:!0})),Q.onResolve({filter:/^(@stores|@composables|stx\/stores)$/},(G)=>({path:G.path,external:!0})),Q.onResolve({filter:/^\//},(G)=>{if(C0.existsSync(G.path))return{path:G.path};return{path:G.path,external:!0}}),Q.onResolve({filter:/^\.\.?\//},(G)=>{let K=X(G.importer,G.path);return J.add(K),{path:K}}),Q.onResolve({filter:/^[@~]\//},(G)=>{let K=F0.resolve($,G.path.slice(2)),z=[K,`${K}.ts`,`${K}.tsx`,`${K}.js`,`${K}.mjs`,`${K}.jsx`,F0.join(K,"index.ts"),F0.join(K,"index.tsx"),F0.join(K,"index.js"),F0.join(K,"index.mjs")];for(let q of z)if(C0.existsSync(q)&&C0.statSync(q,{throwIfNoEntry:!1})?.isFile())return console.log(`[stx:bundler] resolved ${G.path[0]}/ import:`,G.path,"\u2192",q),J.add(q),{path:q};return console.warn(`[stx:bundler] could not resolve ${G.path[0]}/ import:`,G.path),{path:K}}),Q.onLoad({filter:/\.(?:[cm]?[jt]sx?|json)$/},(G)=>{let K=F0.extname(G.path).toLowerCase(),z=K===".json"?"json":K===".tsx"?"tsx":K===".jsx"?"jsx":K===".ts"||K===".mts"||K===".cts"?"ts":"js";return J.add(G.path),{contents:C0.readFileSync(G.path,"utf8"),loader:z}})}}}function U9($){let Z=globalThis,J=(Z[q9]??Promise.resolve()).then($,$);return Z[q9]=J.then(()=>{return},()=>{return}),J}async function jQ($,Z,Y={}){let J=Y.projectRoot||process.cwd(),X=Y.minify??!1,Q=Y.cacheDir||B1(J,"bundle-cache"),G=new Bun.CryptoHasher("md5");G.update(`${qQ}\x00${$}\x00${Z}`);let K=G.digest("hex").slice(0,12),z=F0.join(Q,`${K}.js`),q=F0.join(Q,`${K}.deps.json`),W=Bun.file(z);if(await W.exists()){let B=Bun.file(q),_=!0;if(await B.exists())try{let H=JSON.parse(await B.text());if(H.metadataVersion!==W9||!Array.isArray(H.files))_=!1;for(let L of Array.isArray(H.files)?H.files:[])try{if(C0.statSync(L.path).mtimeMs!==L.mtimeMs){_=!1;break}}catch{_=!1;break}}catch{_=!1}if(_)return console.log("[stx:bundler] cache hit:",K),await W.text();console.log("[stx:bundler] cache invalidated by dep change:",K)}let U=Q7.get(K);if(U)return await U;let j=U9(()=>BQ($,Z,{projectRoot:J,minify:X,cacheDir:Q,hash:K,cachePath:z,depsPath:q}));Q7.set(K,j);try{return await j}finally{Q7.delete(K)}}async function BQ($,Z,Y){let{projectRoot:J,minify:X,cacheDir:Q,hash:G,cachePath:K,depsPath:z}=Y,q=B1(J,"bundle-tmp"),W=F0.join(q,`${G}.ts`),U=F0.join(q,"out",G);C0.mkdirSync(q,{recursive:!0}),C0.mkdirSync(U,{recursive:!0});let j=F0.dirname(Z),B=[],_=/^(export\s+)?(?:const|let|var)\s+(?:\{([^}]+)\}|(\w+))/gm,H=/^(export\s+)?(?:async\s+)?function\s+(\w+)/gm,L;while((L=_.exec($))!==null){if(L[1])continue;if(L[2])L[2].split(",").forEach((F)=>{let w=F.split(":")[0].trim();if(w)B.push(w)});else if(L[3])B.push(L[3])}while((L=H.exec($))!==null){if(L[1])continue;B.push(L[2])}let V=B.length>0?`
643
- export { ${B.join(", ")} }`:"";await Bun.write(W,$+V),console.log("[stx:bundler] bundling:",G,"from:",F0.basename(Z));let O=new Set;try{let F=await Bun.build({entrypoints:[W],outdir:U,target:"browser",format:"esm",minify:X,plugins:[UQ(J,j,W,O)],define:{"process.env.NODE_ENV":X?'"production"':'"development"',...p0()},root:J});if(!F.success){let D=F.logs.filter((y)=>y.level==="error").map((y)=>y.message).join(", ");return console.warn("[stx:bundler] build failed:",D),$}let w="";for(let D of F.outputs){w=await D.text();break}let A=[];for(let D of w.matchAll(/^\s*export\s*\{([^}]*)\}\s*;?\s*$/gm))for(let y of D[1].split(",")){let S=y.trim().match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(S){A.push([S[2],S[1]]);continue}let k=y.trim();if(/^[A-Za-z_$][\w$]*$/.test(k))A.push([k,k])}let R=w.match(/^\s*import\s+[^;]+;?\s*$/gm)||[];w=w.replace(/^\s*import\s+[^;]+;?\s*$/gm,"").replace(/^\s*export\s*\{[^}]*\}\s*;?\s*$/gm,"").replace(/^\s*export\s+default\s+.*$/gm,"").trim();let N=`__stxBundle_${G}`,M=A.map(([D,y])=>`${JSON.stringify(D)}: ${y}`).join(", "),T=A.map(([D])=>`var ${D} = undefined;`).join(`
642
+ `}),$}import zQ from"process";function p0($="STX_PUBLIC_"){let Z={},Y={};for(let[J,X]of Object.entries(zQ.env)){if(!J.startsWith($)||X===void 0)continue;Z[`import.meta.env.${J}`]=JSON.stringify(X),Y[J]=X}return Z["import.meta.env"]=JSON.stringify(Y),Z}var b1=()=>{};var b5={};e(b5,{queueClientBundleBuild:()=>U9,hasUserImports:()=>WQ,bundleClientScript:()=>jQ});import F0 from"path";import C0 from"fs";function WQ($){let Z=/^[ \t]*import[ \t]+(?!type(?:[ \t]|{))[\s\S]*?\s+from\s+['"]([^'"]+)['"][ \t]*;?/gm,Y;while((Y=Z.exec($))!==null){let X=Y[1];if(!z9.some((G)=>G.test(X)))return console.log("[stx:bundler] detected user import:",X),!0}let J=/^[ \t]*import[ \t]+['"]([^'"]+)['"]/gm;while((Y=J.exec($))!==null){let X=Y[1];if(/\.css(?:\?.*)?$/.test(X))continue;if(!z9.some((G)=>G.test(X)))return console.log("[stx:bundler] detected side-effect import:",X),!0}return!1}function UQ($,Z,Y,J){let X=(Q,G)=>{let K=Q===Y?Z:F0.dirname(Q),z=F0.resolve(K,G),q=[z,`${z}.ts`,`${z}.tsx`,`${z}.js`,`${z}.mjs`,`${z}.jsx`,F0.join(z,"index.ts"),F0.join(z,"index.tsx"),F0.join(z,"index.js"),F0.join(z,"index.mjs")];for(let W of q)try{if(C0.existsSync(W)&&C0.statSync(W,{throwIfNoEntry:!1})?.isFile())return W}catch{}return z};return{name:"stx-client-bundle",setup(Q){Q.onResolve({filter:/^(stx|@stacksjs\/stx)$/},(G)=>({path:G.path,external:!0})),Q.onResolve({filter:/^(@stores|@composables|stx\/stores)$/},(G)=>({path:G.path,external:!0})),Q.onResolve({filter:/^\//},(G)=>{if(C0.existsSync(G.path))return{path:G.path};return{path:G.path,external:!0}}),Q.onResolve({filter:/^\.\.?\//},(G)=>{let K=X(G.importer,G.path);return J.add(K),{path:K}}),Q.onResolve({filter:/^[@~]\//},(G)=>{let K=F0.resolve($,G.path.slice(2)),z=[K,`${K}.ts`,`${K}.tsx`,`${K}.js`,`${K}.mjs`,`${K}.jsx`,F0.join(K,"index.ts"),F0.join(K,"index.tsx"),F0.join(K,"index.js"),F0.join(K,"index.mjs")];for(let q of z)if(C0.existsSync(q)&&C0.statSync(q,{throwIfNoEntry:!1})?.isFile())return console.log(`[stx:bundler] resolved ${G.path[0]}/ import:`,G.path,"\u2192",q),J.add(q),{path:q};return console.warn(`[stx:bundler] could not resolve ${G.path[0]}/ import:`,G.path),{path:K}}),Q.onLoad({filter:/\.(?:[cm]?[jt]sx?|json)$/},(G)=>{let K=F0.extname(G.path).toLowerCase(),z=K===".json"?"json":K===".tsx"?"tsx":K===".jsx"?"jsx":K===".ts"||K===".mts"||K===".cts"?"ts":"js";return J.add(G.path),{contents:C0.readFileSync(G.path,"utf8"),loader:z}})}}}function U9($){let Z=globalThis,J=(Z[q9]??Promise.resolve()).then($,$);return Z[q9]=J.then(()=>{return},()=>{return}),J}async function jQ($,Z,Y={}){let J=Y.projectRoot||process.cwd(),X=Y.minify??!1,Q=Y.cacheDir||_1(J,"bundle-cache"),G=new Bun.CryptoHasher("md5");G.update(`${qQ}\x00${$}\x00${Z}`);let K=G.digest("hex").slice(0,12),z=F0.join(Q,`${K}.js`),q=F0.join(Q,`${K}.deps.json`),W=Bun.file(z);if(await W.exists()){let _=Bun.file(q),B=!0;if(await _.exists())try{let H=JSON.parse(await _.text());if(H.metadataVersion!==W9||!Array.isArray(H.files))B=!1;for(let L of Array.isArray(H.files)?H.files:[])try{if(C0.statSync(L.path).mtimeMs!==L.mtimeMs){B=!1;break}}catch{B=!1;break}}catch{B=!1}if(B)return console.log("[stx:bundler] cache hit:",K),await W.text();console.log("[stx:bundler] cache invalidated by dep change:",K)}let U=Q7.get(K);if(U)return await U;let j=U9(()=>_Q($,Z,{projectRoot:J,minify:X,cacheDir:Q,hash:K,cachePath:z,depsPath:q}));Q7.set(K,j);try{return await j}finally{Q7.delete(K)}}async function _Q($,Z,Y){let{projectRoot:J,minify:X,cacheDir:Q,hash:G,cachePath:K,depsPath:z}=Y,q=_1(J,"bundle-tmp"),W=F0.join(q,`${G}.ts`),U=F0.join(q,"out",G);C0.mkdirSync(q,{recursive:!0}),C0.mkdirSync(U,{recursive:!0});let j=F0.dirname(Z),_=[],B=/^(export\s+)?(?:const|let|var)\s+(?:\{([^}]+)\}|(\w+))/gm,H=/^(export\s+)?(?:async\s+)?function\s+(\w+)/gm,L;while((L=B.exec($))!==null){if(L[1])continue;if(L[2])L[2].split(",").forEach((F)=>{let w=F.split(":")[0].trim();if(w)_.push(w)});else if(L[3])_.push(L[3])}while((L=H.exec($))!==null){if(L[1])continue;_.push(L[2])}let V=_.length>0?`
643
+ export { ${_.join(", ")} }`:"";await Bun.write(W,$+V),console.log("[stx:bundler] bundling:",G,"from:",F0.basename(Z));let O=new Set;try{let F=await Bun.build({entrypoints:[W],outdir:U,target:"browser",format:"esm",minify:X,plugins:[UQ(J,j,W,O)],define:{"process.env.NODE_ENV":X?'"production"':'"development"',...p0()},root:J});if(!F.success){let D=F.logs.filter((y)=>y.level==="error").map((y)=>y.message).join(", ");return console.warn("[stx:bundler] build failed:",D),$}let w="";for(let D of F.outputs){w=await D.text();break}let A=[];for(let D of w.matchAll(/^\s*export\s*\{([^}]*)\}\s*;?\s*$/gm))for(let y of D[1].split(",")){let S=y.trim().match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(S){A.push([S[2],S[1]]);continue}let k=y.trim();if(/^[A-Za-z_$][\w$]*$/.test(k))A.push([k,k])}let R=w.match(/^\s*import\s+[^;]+;?\s*$/gm)||[];w=w.replace(/^\s*import\s+[^;]+;?\s*$/gm,"").replace(/^\s*export\s*\{[^}]*\}\s*;?\s*$/gm,"").replace(/^\s*export\s+default\s+.*$/gm,"").trim();let N=`__stxBundle_${G}`,M=A.map(([D,y])=>`${JSON.stringify(D)}: ${y}`).join(", "),T=A.map(([D])=>`var ${D} = undefined;`).join(`
644
644
  `),I=A.map(([D])=>`${D} = ${N}[${JSON.stringify(D)}];`).join(`
645
645
  `);if(w=`${R.join(`
646
646
  `)}
@@ -649,16 +649,16 @@ var ${N} = (function() {
649
649
  ${w}
650
650
  return { ${M} };
651
651
  })();
652
- ${I}`.trim(),console.log("[stx:bundler] bundled:",G,"output:",w.length,"bytes"),B.length>0&&A.length===0)return console.warn(`[stx:bundler] dropped every binding for ${F0.basename(Z)} (${G}); serving the unbundled source and not caching this result`),$;C0.mkdirSync(Q,{recursive:!0}),await Bun.write(K,w);let E=Array.from(O).map((D)=>{try{return{path:D,mtimeMs:C0.statSync(D).mtimeMs}}catch{return null}}).filter((D)=>D!==null);return await Bun.write(z,JSON.stringify({metadataVersion:W9,files:E})),w}catch(F){let w=F instanceof Error?F.message:String(F),A=F?.errors,R=Array.isArray(A)&&A.length>0?`
652
+ ${I}`.trim(),console.log("[stx:bundler] bundled:",G,"output:",w.length,"bytes"),_.length>0&&A.length===0)return console.warn(`[stx:bundler] dropped every binding for ${F0.basename(Z)} (${G}); serving the unbundled source and not caching this result`),$;C0.mkdirSync(Q,{recursive:!0}),await Bun.write(K,w);let E=Array.from(O).map((D)=>{try{return{path:D,mtimeMs:C0.statSync(D).mtimeMs}}catch{return null}}).filter((D)=>D!==null);return await Bun.write(z,JSON.stringify({metadataVersion:W9,files:E})),w}catch(F){let w=F instanceof Error?F.message:String(F),A=F?.errors,R=Array.isArray(A)&&A.length>0?`
653
653
  ${A.map((N)=>`- ${N?.message??N}`).join(`
654
- `)}`:"";return console.warn(`[stx:bundler] error: ${w}${R}`),$}finally{try{C0.rmSync(W,{force:!0}),C0.rmSync(U,{recursive:!0,force:!0})}catch{}}}var qQ=5,W9=1,z9,Q7,q9;var S5=b(()=>{b1();E5();z9=[/^stx$/,/^@stacksjs\/stx$/,/^@stores$/,/^stx\/stores$/,/^@composables$/];Q7=new Map,q9=Symbol.for("stx.client-bundle-build-queue")});var O9={};e(O9,{renderVendorStyleTags:()=>L$,processClientScript:()=>C5,injectBrowserCoreAutoImports:()=>t1,generateServerDataBridge:()=>F$,generateBrowserAutoImportDestructuring:()=>NQ,generateAutoImportDestructuring:()=>G7,extractBridgeData:()=>P5,extractAndStripCssImports:()=>O$});import S1 from"path";import y5 from"fs";function HQ($){if($.startsWith(".")||$.startsWith("/"))return null;if($.startsWith("@")){let Y=$.match(/^(@[^/]+\/[^/]+)(\/.*)?$/);if(!Y)return null;return{pkg:Y[1],subpath:Y[2]||""}}let Z=$.match(/^([^/]+)(\/.*)?$/);if(!Z)return null;return{pkg:Z[1],subpath:Z[2]||""}}function OQ($,Z){let Y=Z;while(!0){let J=S1.join(Y,"node_modules",$,"package.json");if(y5.existsSync(J))return S1.dirname(J);let X=S1.dirname(Y);if(X===Y)return null;Y=X}}function LQ($,Z){if(!$||typeof $!=="object")return null;let Y=(X)=>{if(typeof X==="string")return X;if(X&&typeof X==="object"){if(typeof X.import==="string")return X.import;if(typeof X.default==="string")return X.default;if(typeof X.import==="object")return Y(X.import);if(typeof X.default==="object")return Y(X.default)}return null};if(Object.prototype.hasOwnProperty.call($,Z))return Y($[Z]);let J=null;for(let X of Object.keys($)){let Q=X.indexOf("*");if(Q===-1)continue;let G=X.slice(0,Q),K=X.slice(Q+1);if(!Z.startsWith(G)||!Z.endsWith(K))continue;if(Z.length<G.length+K.length)continue;if(!J||G.length>J.prefix.length)J={pattern:X,prefix:G,suffix:K}}if(J){let X=Z.slice(J.prefix.length,Z.length-J.suffix.length),Q=Y($[J.pattern]);if(Q)return Q.replace("*",X)}return null}function FQ($,Z){let Y=HQ($);if(!Y||!Y.subpath)return null;let J=OQ(Y.pkg,Z);if(!J)return null;let X;try{X=JSON.parse(y5.readFileSync(S1.join(J,"package.json"),"utf8"))}catch{return null}let Q=`.${Y.subpath}`,G=LQ(X.exports,Q);if(!G)return null;let K=S1.resolve(J,G);return y5.existsSync(K)?K:null}function O$($,Z){let Y=Z.filePath?S1.dirname(Z.filePath):Z.projectRoot||process.cwd(),J=Z.projectRoot||process.cwd(),X=new Set,Q=[];return{code:$.replace(_Q,(K,z)=>{let q;try{if(z.startsWith("./")||z.startsWith("../")||z.startsWith("/")){if(q=z.startsWith("/")?z:S1.resolve(Y,z),!y5.existsSync(q))throw Error(`file not found: ${q}`)}else{let W=null;try{W=Bun.resolveSync(z,J)}catch{W=FQ(z,J)}if(!W)throw Error(`could not resolve ${z} (Bun.resolveSync + exports fallback both failed)`);q=W}}catch(W){return console.warn(`[stx:vendor-css] could not resolve ${JSON.stringify(z)} (from ${Z.filePath||"<unknown>"}): ${W?.message||W}`),""}if(X.has(q))return"";X.add(q);try{let W=y5.readFileSync(q,"utf8");Q.push({source:z,resolvedPath:q,contents:W})}catch(W){console.warn(`[stx:vendor-css] could not read ${q}: ${W?.message||W}`)}return""}),styles:Q}}function VQ($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function L$($){if($.length===0)return"";return`${$.map((Z)=>{return`<style data-stx-vendor="${VQ(Z.source)}" data-stx-layer="vendor">
654
+ `)}`:"";return console.warn(`[stx:bundler] error: ${w}${R}`),$}finally{try{C0.rmSync(W,{force:!0}),C0.rmSync(U,{recursive:!0,force:!0})}catch{}}}var qQ=5,W9=1,z9,Q7,q9;var S5=b(()=>{b1();E5();z9=[/^stx$/,/^@stacksjs\/stx$/,/^@stores$/,/^stx\/stores$/,/^@composables$/];Q7=new Map,q9=Symbol.for("stx.client-bundle-build-queue")});var O9={};e(O9,{renderVendorStyleTags:()=>L$,processClientScript:()=>C5,injectBrowserCoreAutoImports:()=>t1,generateServerDataBridge:()=>F$,generateBrowserAutoImportDestructuring:()=>NQ,generateAutoImportDestructuring:()=>G7,extractBridgeData:()=>P5,extractAndStripCssImports:()=>O$});import S1 from"path";import y5 from"fs";function HQ($){if($.startsWith(".")||$.startsWith("/"))return null;if($.startsWith("@")){let Y=$.match(/^(@[^/]+\/[^/]+)(\/.*)?$/);if(!Y)return null;return{pkg:Y[1],subpath:Y[2]||""}}let Z=$.match(/^([^/]+)(\/.*)?$/);if(!Z)return null;return{pkg:Z[1],subpath:Z[2]||""}}function OQ($,Z){let Y=Z;while(!0){let J=S1.join(Y,"node_modules",$,"package.json");if(y5.existsSync(J))return S1.dirname(J);let X=S1.dirname(Y);if(X===Y)return null;Y=X}}function LQ($,Z){if(!$||typeof $!=="object")return null;let Y=(X)=>{if(typeof X==="string")return X;if(X&&typeof X==="object"){if(typeof X.import==="string")return X.import;if(typeof X.default==="string")return X.default;if(typeof X.import==="object")return Y(X.import);if(typeof X.default==="object")return Y(X.default)}return null};if(Object.prototype.hasOwnProperty.call($,Z))return Y($[Z]);let J=null;for(let X of Object.keys($)){let Q=X.indexOf("*");if(Q===-1)continue;let G=X.slice(0,Q),K=X.slice(Q+1);if(!Z.startsWith(G)||!Z.endsWith(K))continue;if(Z.length<G.length+K.length)continue;if(!J||G.length>J.prefix.length)J={pattern:X,prefix:G,suffix:K}}if(J){let X=Z.slice(J.prefix.length,Z.length-J.suffix.length),Q=Y($[J.pattern]);if(Q)return Q.replace("*",X)}return null}function FQ($,Z){let Y=HQ($);if(!Y||!Y.subpath)return null;let J=OQ(Y.pkg,Z);if(!J)return null;let X;try{X=JSON.parse(y5.readFileSync(S1.join(J,"package.json"),"utf8"))}catch{return null}let Q=`.${Y.subpath}`,G=LQ(X.exports,Q);if(!G)return null;let K=S1.resolve(J,G);return y5.existsSync(K)?K:null}function O$($,Z){let Y=Z.filePath?S1.dirname(Z.filePath):Z.projectRoot||process.cwd(),J=Z.projectRoot||process.cwd(),X=new Set,Q=[];return{code:$.replace(BQ,(K,z)=>{let q;try{if(z.startsWith("./")||z.startsWith("../")||z.startsWith("/")){if(q=z.startsWith("/")?z:S1.resolve(Y,z),!y5.existsSync(q))throw Error(`file not found: ${q}`)}else{let W=null;try{W=Bun.resolveSync(z,J)}catch{W=FQ(z,J)}if(!W)throw Error(`could not resolve ${z} (Bun.resolveSync + exports fallback both failed)`);q=W}}catch(W){return console.warn(`[stx:vendor-css] could not resolve ${JSON.stringify(z)} (from ${Z.filePath||"<unknown>"}): ${W?.message||W}`),""}if(X.has(q))return"";X.add(q);try{let W=y5.readFileSync(q,"utf8");Q.push({source:z,resolvedPath:q,contents:W})}catch(W){console.warn(`[stx:vendor-css] could not read ${q}: ${W?.message||W}`)}return""}),styles:Q}}function VQ($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function L$($){if($.length===0)return"";return`${$.map((Z)=>{return`<style data-stx-vendor="${VQ(Z.source)}" data-stx-layer="vendor">
655
655
  @layer vendor {
656
656
  ${Z.contents}
657
657
  }
658
658
  </style>`}).join(`
659
659
  `)}
660
- `}function t1($){let Z=new Set;for(let X of $.matchAll(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"][^'"]+['"]\s*;?\s*$/gm))for(let Q of X[1].split(",")){let G=Q.trim().split(/\s+as\s+/).pop()?.replace(/^type\s+/,"").trim();if(G)Z.add(G)}let Y=new Set;for(let X of $.matchAll(/\b(?:const|let|var|function|class)\s+([A-Za-z_$][\w$]*)/g))Y.add(X[1]);for(let X of $.matchAll(/\b(?:const|let|var)\s*\{([^}]*)\}/g))for(let Q of X[1].split(",")){let G=Q.trim().split(/[:=]/).pop()?.trim();if(G)Y.add(G)}let J=_9.filter((X)=>{if(Z.has(X)||Y.has(X))return!1;return new RegExp(`\\b${X}\\b`).test($)});if(J.length===0)return{code:$,imports:J};return{code:`import { ${J.join(", ")} } from '@stacksjs/browser'
661
- ${$}`,imports:J}}function RQ($){let Z=new Set,Y=/\b([A-Z][a-zA-Z0-9]*)\s*\.\s*(all|find|first|get|where|orderBy|orderByDesc|limit|select|pluck|create|update|delete)\s*\(/g,J;while((J=Y.exec($))!==null)if(!AQ.has(J[1]))Z.add(J[1]);return Array.from(Z)}function H9($){let Z=new Set,Y=new Set,J=$;J=J.replace(/^\s*import\s+type\s+\{[^}]*\}\s+from\s+['"][^'"]+['"]\s*;?\s*$/gm,"// [type import stripped]");let X=new Set,Q=/^\s*import\s+(?:type\s+)?{\s*([^}]+)\s*}\s+from\s+['"](@stacksjs\/browser|@stacksjs\/stx|stx)['"]\s*;?\s*$/gm,G;while((G=Q.exec($))!==null){let z=G[1],q=G[2];if(G[0].includes("import type"))continue;z.split(",").map((U)=>U.trim().split(/\s+as\s+/)[0]).filter((U)=>U.length>0).forEach((U)=>{if(X.add(U),q==="stx"||q==="@stacksjs/stx")Z.add(U);else Y.add(U)}),J=J.replace(G[0],"// [auto-import processed]")}for(let z of wQ){if(X.has(z))continue;if(new RegExp(`\\b${z}\\s*\\(`,"g").test(J))Z.add(z)}for(let z of _9){if(X.has(z))continue;if(new RegExp(`\\b${z}\\b`,"g").test(J))Y.add(z)}let K=RQ(J);for(let z of K)if(!X.has(z))Y.add(z);return{code:J,stxImports:Array.from(Z),browserImports:Array.from(Y)}}function G7($,Z){let Y=[];if($.length>0)Y.push(` var { ${$.join(", ")} } = window.stx || window;`);if(Z.length>0)Y.push(` var { ${Z.join(", ")} } = window.StacksBrowser || {};`);if(Y.length>0)return` // STX: auto-imported from stx and @stacksjs/browser
660
+ `}function t1($){let Z=new Set;for(let X of $.matchAll(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"][^'"]+['"]\s*;?\s*$/gm))for(let Q of X[1].split(",")){let G=Q.trim().split(/\s+as\s+/).pop()?.replace(/^type\s+/,"").trim();if(G)Z.add(G)}let Y=new Set;for(let X of $.matchAll(/\b(?:const|let|var|function|class)\s+([A-Za-z_$][\w$]*)/g))Y.add(X[1]);for(let X of $.matchAll(/\b(?:const|let|var)\s*\{([^}]*)\}/g))for(let Q of X[1].split(",")){let G=Q.trim().split(/[:=]/).pop()?.trim();if(G)Y.add(G)}let J=B9.filter((X)=>{if(Z.has(X)||Y.has(X))return!1;return new RegExp(`\\b${X}\\b`).test($)});if(J.length===0)return{code:$,imports:J};return{code:`import { ${J.join(", ")} } from '@stacksjs/browser'
661
+ ${$}`,imports:J}}function RQ($){let Z=new Set,Y=/\b([A-Z][a-zA-Z0-9]*)\s*\.\s*(all|find|first|get|where|orderBy|orderByDesc|limit|select|pluck|create|update|delete)\s*\(/g,J;while((J=Y.exec($))!==null)if(!AQ.has(J[1]))Z.add(J[1]);return Array.from(Z)}function H9($){let Z=new Set,Y=new Set,J=$;J=J.replace(/^\s*import\s+type\s+\{[^}]*\}\s+from\s+['"][^'"]+['"]\s*;?\s*$/gm,"// [type import stripped]");let X=new Set,Q=/^\s*import\s+(?:type\s+)?{\s*([^}]+)\s*}\s+from\s+['"](@stacksjs\/browser|@stacksjs\/stx|stx)['"]\s*;?\s*$/gm,G;while((G=Q.exec($))!==null){let z=G[1],q=G[2];if(G[0].includes("import type"))continue;z.split(",").map((U)=>U.trim().split(/\s+as\s+/)[0]).filter((U)=>U.length>0).forEach((U)=>{if(X.add(U),q==="stx"||q==="@stacksjs/stx")Z.add(U);else Y.add(U)}),J=J.replace(G[0],"// [auto-import processed]")}for(let z of wQ){if(X.has(z))continue;if(new RegExp(`\\b${z}\\s*\\(`,"g").test(J))Z.add(z)}for(let z of B9){if(X.has(z))continue;if(new RegExp(`\\b${z}\\b`,"g").test(J))Y.add(z)}let K=RQ(J);for(let z of K)if(!X.has(z))Y.add(z);return{code:J,stxImports:Array.from(Z),browserImports:Array.from(Y)}}function G7($,Z){let Y=[];if($.length>0)Y.push(` var { ${$.join(", ")} } = window.stx || window;`);if(Z.length>0)Y.push(` var { ${Z.join(", ")} } = window.StacksBrowser || {};`);if(Y.length>0)return` // STX: auto-imported from stx and @stacksjs/browser
662
662
  ${Y.join(`
663
663
  `)}
664
664
  ${MQ($,Z)}`;return""}function NQ($,Z=[]){let{browserImports:Y}=H9($),J=new Set(Z);return G7([],Y.filter((X)=>!J.has(X)))}function MQ($,Z){let Y=[...$.map((J)=>`['${J}', typeof ${J}, 'stx']`),...Z.map((J)=>`['${J}', typeof ${J}, '@stacksjs/browser']`)];if(Y.length===0)return"";return` // STX: report auto-imports the client runtime did not provide
@@ -675,13 +675,13 @@ ${Y.join(`
675
675
  `)}
676
676
  `}function DQ($){let Z=[];if($.self)Z.push("if ($event.target !== $el) return");for(let Y of $.systemKeys)Z.push(`if (!$event.${Y}Key) return`);if($.keys.length>0){let Y=$.keys.map((J)=>`$event.key === '${J}'`).join(" || ");Z.push(`if (!(${Y})) return`)}if($.mouse!==null){let Y=IQ[$.mouse];Z.push(`if ($event.button !== ${Y}) return`)}if($.prevent)Z.push("$event.preventDefault()");if($.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function EQ($,Z){let{elementId:Y,event:J,handler:X,modifiers:Q}=$,G=DQ(Q),K=[];if(Q.once)K.push("once: true");if(Q.capture)K.push("capture: true");if(Q.passive)K.push("passive: true");let z=K.length>0?`, { ${K.join(", ")} }`:"",q="";if(G)q+=`${G}; `;let W=X.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),U=`var $emit = function(name, detail) {
677
677
  $el.dispatchEvent(new CustomEvent(name, { detail: detail, bubbles: true, cancelable: true }))
678
- };`;function j(B){if(/\$emit\s*\(/.test(B))return`${U}
679
- ${B}`;return`var scope = $el.closest('[data-stx-scope]');
678
+ };`;function j(_){if(/\$emit\s*\(/.test(_))return`${U}
679
+ ${_}`;return`var scope = $el.closest('[data-stx-scope]');
680
680
  if (scope && scope.__stx_execute) {
681
681
  scope.__stx_execute('${W}', $event, $el);
682
682
  }
683
683
  else {
684
- ${B}
684
+ ${_}
685
685
  }`}if(Q.debounce!==null)return` ;(function() {
686
686
  // eslint-disable-next-line pickier/no-unused-vars
687
687
  var $el = document.getElementById('${Y}')
@@ -719,22 +719,22 @@ else {
719
719
  }${z})`}function kQ($){if($.length===0)return"";return`
720
720
  // STX: auto-generated event bindings
721
721
  ${$.map((Y,J)=>EQ(Y,J)).join(`
722
- `)}`}function B9($){let Z=[],Y=new Set,J=$.replace(/^\s*import\s+.*$/gm,""),X=0,Q=J.length,G=0;while(G<Q){let K=J[G];if(K==="'"||K==='"'||K==="`"){let z=K;if(G++,z==="`"){let q=0;while(G<Q){if(J[G]==="\\"){G+=2;continue}if(J[G]==="`"&&q===0){G++;break}if(J[G]==="$"&&J[G+1]==="{"){q++,G+=2;continue}if(J[G]==="}"&&q>0){q--,G++;continue}G++}}else while(G<Q){if(J[G]==="\\"){G+=2;continue}if(J[G]===z){G++;break}G++}continue}if(K==="/"&&J[G+1]==="/"){while(G<Q&&J[G]!==`
723
- `)G++;continue}if(K==="/"&&J[G+1]==="*"){G+=2;while(G<Q-1&&!(J[G]==="*"&&J[G+1]==="/"))G++;G+=2;continue}if(K==="{"){X++,G++;continue}if(K==="}"){X--,G++;continue}if(X===0){let z=J.slice(G),q=z.match(/^(?:const|let|var)\s+([a-zA-Z_$]\w*)\s*(?::[^=]*)?=/);if(q){let j=q[1];if(!j.startsWith("_")&&!Y.has(j))Z.push(j),Y.add(j);G+=q[0].length;continue}let W=z.match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(W){W[1].split(",").forEach((j)=>{let B=j.trim(),_=B.indexOf(":"),H=_>=0?B.slice(_+1).trim().split(/[\s=]/)[0]:B.split(/[\s=]/)[0];if(H&&!H.startsWith("_")&&!Y.has(H))Z.push(H),Y.add(H)}),G+=W[0].length;continue}let U=z.match(/^(?:async\s+)?function\s+([a-zA-Z_$]\w*)/);if(U){let j=U[1];if(!j.startsWith("_")&&!Y.has(j))Z.push(j),Y.add(j);G+=U[0].length;continue}}G++}return Z}function SQ($){let Z=new Set,Y=/[a-zA-Z_$][a-zA-Z0-9_$]*/g;function J(j){let B;while((B=Y.exec(j))!==null){let _=B[0];if(!bQ.has(_))Z.add(_)}}let X=/\{\{([\s\S]*?)\}\}/g,Q;while((Q=X.exec($))!==null)J(Q[1]);let G=/:[a-z][\w.-]*\s*=\s*"([^"]*)"/gi;while((Q=G.exec($))!==null)J(Q[1]);let K=/:[a-z][\w.-]*\s*=\s*'([^']*)'/gi;while((Q=K.exec($))!==null)J(Q[1]);let z=/@[a-z]+(?:\.[a-z]+)*\s*=\s*"([^"]*)"/gi;while((Q=z.exec($))!==null)J(Q[1]);let q=/@[a-z]+(?:\.[a-z]+)*\s*=\s*'([^']*)'/gi;while((Q=q.exec($))!==null)J(Q[1]);let W=/@model\s*=\s*["']([^"']*)["']/gi;while((Q=W.exec($))!==null)J(Q[1]);let U=/@for\s*=\s*["'][^"']*\bin\s+([^"']+)["']/gi;while((Q=U.exec($))!==null)J(Q[1]);return Z}async function C5($,Z={}){let Y=$,J="",X=!1,Q=[],G=O$(Y,{filePath:Z.filePath,projectRoot:Z.projectRoot});Y=G.code;let K=L$(G.styles),z=t1(Y);Y=z.code,Q=z.imports;let{hasUserImports:q,bundleClientScript:W}=await Promise.resolve().then(() => (S5(),b5));if(q(Y))console.log("[stx:bundler] user imports detected, bundling..."),Y=await W(Y,Z.filePath||"",{projectRoot:Z.projectRoot,minify:Z.production}),X=!0;if(Z.autoImports!==!1){let O=H9(Y);Y=O.code,J=G7(O.stxImports,O.browserImports.filter((F)=>!Q.includes(F)))}if(J=`${F$(Y,Z.serverData)}${J}`,Y=o0(Y),!X&&y1(Z.attrs||""))Y=P1(Y);let U=kQ(Z.eventBindings||[]),j=(Z.attrs||"").trim();if(/\btype\s*=\s*["']module["']/i.test(j)){let O=j.replace(/\btype\s*=\s*["']module["']/i,"").trim(),F=`type="module" data-stx-scoped${O?` ${O}`:""}`;return`${K}<script ${F}>
722
+ `)}`}function _9($){let Z=[],Y=new Set,J=$.replace(/^\s*import\s+.*$/gm,""),X=0,Q=J.length,G=0;while(G<Q){let K=J[G];if(K==="'"||K==='"'||K==="`"){let z=K;if(G++,z==="`"){let q=0;while(G<Q){if(J[G]==="\\"){G+=2;continue}if(J[G]==="`"&&q===0){G++;break}if(J[G]==="$"&&J[G+1]==="{"){q++,G+=2;continue}if(J[G]==="}"&&q>0){q--,G++;continue}G++}}else while(G<Q){if(J[G]==="\\"){G+=2;continue}if(J[G]===z){G++;break}G++}continue}if(K==="/"&&J[G+1]==="/"){while(G<Q&&J[G]!==`
723
+ `)G++;continue}if(K==="/"&&J[G+1]==="*"){G+=2;while(G<Q-1&&!(J[G]==="*"&&J[G+1]==="/"))G++;G+=2;continue}if(K==="{"){X++,G++;continue}if(K==="}"){X--,G++;continue}if(X===0){let z=J.slice(G),q=z.match(/^(?:const|let|var)\s+([a-zA-Z_$]\w*)\s*(?::[^=]*)?=/);if(q){let j=q[1];if(!j.startsWith("_")&&!Y.has(j))Z.push(j),Y.add(j);G+=q[0].length;continue}let W=z.match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(W){W[1].split(",").forEach((j)=>{let _=j.trim(),B=_.indexOf(":"),H=B>=0?_.slice(B+1).trim().split(/[\s=]/)[0]:_.split(/[\s=]/)[0];if(H&&!H.startsWith("_")&&!Y.has(H))Z.push(H),Y.add(H)}),G+=W[0].length;continue}let U=z.match(/^(?:async\s+)?function\s+([a-zA-Z_$]\w*)/);if(U){let j=U[1];if(!j.startsWith("_")&&!Y.has(j))Z.push(j),Y.add(j);G+=U[0].length;continue}}G++}return Z}function SQ($){let Z=new Set,Y=/[a-zA-Z_$][a-zA-Z0-9_$]*/g;function J(j){let _;while((_=Y.exec(j))!==null){let B=_[0];if(!bQ.has(B))Z.add(B)}}let X=/\{\{([\s\S]*?)\}\}/g,Q;while((Q=X.exec($))!==null)J(Q[1]);let G=/:[a-z][\w.-]*\s*=\s*"([^"]*)"/gi;while((Q=G.exec($))!==null)J(Q[1]);let K=/:[a-z][\w.-]*\s*=\s*'([^']*)'/gi;while((Q=K.exec($))!==null)J(Q[1]);let z=/@[a-z]+(?:\.[a-z]+)*\s*=\s*"([^"]*)"/gi;while((Q=z.exec($))!==null)J(Q[1]);let q=/@[a-z]+(?:\.[a-z]+)*\s*=\s*'([^']*)'/gi;while((Q=q.exec($))!==null)J(Q[1]);let W=/@model\s*=\s*["']([^"']*)["']/gi;while((Q=W.exec($))!==null)J(Q[1]);let U=/@for\s*=\s*["'][^"']*\bin\s+([^"']+)["']/gi;while((Q=U.exec($))!==null)J(Q[1]);return Z}async function C5($,Z={}){let Y=$,J="",X=!1,Q=[],G=O$(Y,{filePath:Z.filePath,projectRoot:Z.projectRoot});Y=G.code;let K=L$(G.styles),z=t1(Y);Y=z.code,Q=z.imports;let{hasUserImports:q,bundleClientScript:W}=await Promise.resolve().then(() => (S5(),b5));if(q(Y))console.log("[stx:bundler] user imports detected, bundling..."),Y=await W(Y,Z.filePath||"",{projectRoot:Z.projectRoot,minify:Z.production}),X=!0;if(Z.autoImports!==!1){let O=H9(Y);Y=O.code,J=G7(O.stxImports,O.browserImports.filter((F)=>!Q.includes(F)))}if(J=`${F$(Y,Z.serverData)}${J}`,Y=o0(Y),!X&&y1(Z.attrs||""))Y=P1(Y);let U=kQ(Z.eventBindings||[]),j=(Z.attrs||"").trim();if(/\btype\s*=\s*["']module["']/i.test(j)){let O=j.replace(/\btype\s*=\s*["']module["']/i,"").trim(),F=`type="module" data-stx-scoped${O?` ${O}`:""}`;return`${K}<script ${F}>
724
724
  ${J}${Y}
725
725
  ${U}
726
- </script>`}let _=/\b(state|derived|effect|ref|reactive|computed|watch|watchEffect|useLocalStorage|useSessionStorage|useRef|useEventListener|useFetch|useDebounce|useDebouncedValue|useThrottle|useInterval|useTimeout|useToggle|useCounter|useClickOutside|useFocus|useAsync|useColorMode|useDark|useWebSocket|useRoute|useSearchParams|onMount|onDestroy|onMounted|onBeforeUnmount|onUnmounted|batch|untrack|peek)\s*(?:<[^>]*>)?\s*\(/.test($),H=/function __stx_setup_/.test(Y),L=/\bstx\.mount\s*\(|\bstx\.mountEl\s*\(/.test($);function V(O){let F=O.length>0?`
726
+ </script>`}let B=/\b(state|derived|effect|ref|reactive|computed|watch|watchEffect|useLocalStorage|useSessionStorage|useRef|useEventListener|useFetch|useDebounce|useDebouncedValue|useThrottle|useInterval|useTimeout|useToggle|useCounter|useClickOutside|useFocus|useAsync|useColorMode|useDark|useWebSocket|useRoute|useSearchParams|onMount|onDestroy|onMounted|onBeforeUnmount|onUnmounted|batch|untrack|peek)\s*(?:<[^>]*>)?\s*\(/.test($),H=/function __stx_setup_/.test(Y),L=/\bstx\.mount\s*\(|\bstx\.mountEl\s*\(/.test($);function V(O){let F=O.length>0?`
727
727
  return { ${O.join(", ")} };`:"";return`${K}<script data-stx-scoped>
728
728
  window.stx.mount(function() {
729
729
  'use strict';
730
730
  ${J}${Y}
731
731
  ${U}${F}
732
- })</script>`}if(!L&&!H){if(_)return V(B9($));if(Z.templateContent){let O=B9($);if(O.length>0){let F=SQ(Z.templateContent);if(O.some((A)=>F.has(A)))return V(O)}}}return`${K}<script data-stx-scoped>
732
+ })</script>`}if(!L&&!H){if(B)return V(_9($));if(Z.templateContent){let O=_9($);if(O.length>0){let F=SQ(Z.templateContent);if(O.some((A)=>F.has(A)))return V(O)}}}return`${K}<script data-stx-scoped>
733
733
  ;(function() {
734
734
  'use strict';
735
735
  ${J}${Y}
736
736
  ${U}
737
- })()</script>`}var _Q,wQ,_9,AQ,IQ,bQ;var v5=b(()=>{N0();_Q=/^[ \t]*import\s+['"]([^'"]+?\.css)(\?[^'"]*)?['"]\s*;?\s*$/gm;wQ=["state","derived","effect","batch","untrack","peek","isSignal","isDerived","onMount","onDestroy","useRef","navigate","goBack","goForward","useRoute","setRouteParams","useSearchParams","useFetch","useQuery","useMutation","useOptimistic","useId","useReactiveProp","useLocalStorage","useSessionStorage","useCookie","useWebSocket","useHead","useSeoMeta","definePageMeta","useEventListener","useMeta","useDebounce","useDebouncedValue","useThrottle","useInterval","useTimeout","useToggle","useCounter","useClickOutside","useFocus","useAsync","useColorMode","useDark","useMediaQuery","useScrollLock","usePreferredDark","usePreferredLight","usePreferredReducedMotion","usePreferredContrast","ref","reactive","computed","watch","watchEffect","watchMultiple","onBeforeMount","onMounted","onBeforeUpdate","onUpdated","onBeforeUnmount","onUnmounted","defineProps","withDefaults","defineEmits","defineExpose","defineSlots","provide","inject","nextTick","getCurrentInstance","onErrorCaptured","useSlots","useAttrs","createStore","defineStore","registerStoresClient","useStore","action","createSelector","h","Fragment"],_9=["browserQuery","BrowserQueryBuilder","BrowserQueryError","browserAuth","configureBrowser","getBrowserConfig","createBrowserDb","createBrowserModel","isBrowser","debounce","throttle","retry","sleep","wait","delay","waitUntil","waitWhile","lazy","clamp","rand","readableSize","useDocumentVisibility","useIntervalFn"];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"]);IQ={left:0,middle:1,right:2};bQ=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 vQ($){let Z="",Y=null,J=!1;for(let X=0;X<$.length;X++){let Q=$[X];if(J){J=!1;continue}if(Q==="\\"&&Y){J=!0;continue}if(Y){if(Y==="`"&&Q==="$"&&X+1<$.length&&$[X+1]==="{"){let G=1;X+=2;while(X<$.length&&G>0){if($[X]==="{")G++;else if($[X]==="}")G--;if(G>0)Z+=$[X],X++}continue}if(Q===Y)Y=null;continue}if(Q==='"'||Q==="'"||Q==="`"){Y=Q;continue}Z+=Q}return Z}function xQ($,Z){let Y=/[$A-Z_a-z][$\w]*/g,J;while((J=Y.exec($))!==null){let X=J[0],Q=$[J.index-1];if(PQ.has(X))throw Error(`Potentially unsafe expression (matched /\\b${X}\\b/; identifier ${X}): ${Z}`);if(Q==="."&&w9.has(X))throw Error(`Potentially unsafe expression (matched /.${X}/; property ${X}): ${Z}`)}}function fQ($){let Z=/\[\s*(['"])(.*?)\1\s*\]/g,Y;while((Y=Z.exec($))!==null){let J=Y[2];if(!w9.has(J))continue;let X=$.slice(0,Y.index).match(/\S(?=\s*$)/)?.[0],Q=$.slice(Y.index+Y[0].length).match(/^\s*(\S)/)?.[1];if(!((X==="{"||X===",")&&Q===":"))throw Error(`Potentially unsafe expression (bracket key ${Y[2]}): ${$}`)}}function V$($){let Z=$.trim(),Y=vQ(Z);xQ(Y,Z),fQ(Z);for(let J of V9)if(J.test(Y))throw Error(`Potentially unsafe expression (matched /${J.source}/): ${Z}`);if(!F9.allowBracketNotation&&CQ.test(Z))throw Error(`Bracket notation with strings not allowed: ${Z}. Enable with configureSafeEvaluator({ allowBracketNotation: true })`);return Z}function gQ($){let Z={};Z.Math=Math,Z.JSON=JSON,Z.Date=Date,Z.String=String,Z.Number=Number,Z.Boolean=Boolean,Z.Array=Array,Z.parseInt=Number.parseInt,Z.parseFloat=Number.parseFloat,Z.isNaN=Number.isNaN,Z.isFinite=Number.isFinite,Z.encodeURIComponent=encodeURIComponent,Z.decodeURIComponent=decodeURIComponent;for(let[Y,J]of Object.entries($)){if(Y.startsWith("__")||V9.some((X)=>X.test(Y)))continue;if(J&&typeof J==="object"&&!Array.isArray(J))Z[Y]=K7(J);else Z[Y]=J}return Z}function K7($,Z=0){if(Z>=F9.maxSanitizeDepth)return"[Object too deep]";if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((J)=>K7(J,Z+1));if($ instanceof Date||$ instanceof RegExp||$ instanceof Map||$ instanceof Set||$ instanceof Error)return $;let Y={};for(let[J,X]of Object.entries($)){if(J.startsWith("__")||J==="constructor"||J==="prototype")continue;if(X&&typeof X==="object")Y[J]=K7(X,Z+1);else Y[J]=X}return Y}function Y0($,Z){try{let Y=gQ(Z),J=Object.keys(Y),X=Object.values(Y);return K0($,J)(...X)}catch{return}}function G0($){try{return V$($),!0}catch{return!1}}function M0($,Z){try{let Y=Y0($,Z);if(Y&&typeof Y==="object"&&!Array.isArray(Y))return Y;return{}}catch{return{}}}function K0($,Z){let Y=V$($),J=/^[A-Za-z_$][\w$]*$/,X=[],Q=[];for(let q=0;q<Z.length;q++){let W=Z[q];if(!J.test(W))continue;if(A9.has(W))continue;X.push(q),Q.push(W)}let G=(q)=>Function(...Q,...q,`
737
+ })()</script>`}var BQ,wQ,B9,AQ,IQ,bQ;var v5=b(()=>{N0();BQ=/^[ \t]*import\s+['"]([^'"]+?\.css)(\?[^'"]*)?['"]\s*;?\s*$/gm;wQ=["state","derived","effect","batch","untrack","peek","isSignal","isDerived","onMount","onDestroy","useRef","navigate","goBack","goForward","useRoute","setRouteParams","useSearchParams","useFetch","useQuery","useMutation","useOptimistic","useId","useReactiveProp","useLocalStorage","useSessionStorage","useCookie","useWebSocket","useHead","useSeoMeta","definePageMeta","useEventListener","useMeta","useDebounce","useDebouncedValue","useThrottle","useInterval","useTimeout","useToggle","useCounter","useClickOutside","useFocus","useAsync","useColorMode","useDark","useMediaQuery","useScrollLock","usePreferredDark","usePreferredLight","usePreferredReducedMotion","usePreferredContrast","ref","reactive","computed","watch","watchEffect","watchMultiple","onBeforeMount","onMounted","onBeforeUpdate","onUpdated","onBeforeUnmount","onUnmounted","defineProps","withDefaults","defineEmits","defineExpose","defineSlots","provide","inject","nextTick","getCurrentInstance","onErrorCaptured","useSlots","useAttrs","createStore","defineStore","registerStoresClient","useStore","action","createSelector","h","Fragment"],B9=["browserQuery","BrowserQueryBuilder","BrowserQueryError","browserAuth","configureBrowser","getBrowserConfig","createBrowserDb","createBrowserModel","isBrowser","debounce","throttle","retry","sleep","wait","delay","waitUntil","waitWhile","lazy","clamp","rand","readableSize","useDocumentVisibility","useIntervalFn"];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"]);IQ={left:0,middle:1,right:2};bQ=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 vQ($){let Z="",Y=null,J=!1;for(let X=0;X<$.length;X++){let Q=$[X];if(J){J=!1;continue}if(Q==="\\"&&Y){J=!0;continue}if(Y){if(Y==="`"&&Q==="$"&&X+1<$.length&&$[X+1]==="{"){let G=1;X+=2;while(X<$.length&&G>0){if($[X]==="{")G++;else if($[X]==="}")G--;if(G>0)Z+=$[X],X++}continue}if(Q===Y)Y=null;continue}if(Q==='"'||Q==="'"||Q==="`"){Y=Q;continue}Z+=Q}return Z}function xQ($,Z){let Y=/[$A-Z_a-z][$\w]*/g,J;while((J=Y.exec($))!==null){let X=J[0],Q=$[J.index-1];if(PQ.has(X))throw Error(`Potentially unsafe expression (matched /\\b${X}\\b/; identifier ${X}): ${Z}`);if(Q==="."&&w9.has(X))throw Error(`Potentially unsafe expression (matched /.${X}/; property ${X}): ${Z}`)}}function fQ($){let Z=/\[\s*(['"])(.*?)\1\s*\]/g,Y;while((Y=Z.exec($))!==null){let J=Y[2];if(!w9.has(J))continue;let X=$.slice(0,Y.index).match(/\S(?=\s*$)/)?.[0],Q=$.slice(Y.index+Y[0].length).match(/^\s*(\S)/)?.[1];if(!((X==="{"||X===",")&&Q===":"))throw Error(`Potentially unsafe expression (bracket key ${Y[2]}): ${$}`)}}function V$($){let Z=$.trim(),Y=vQ(Z);xQ(Y,Z),fQ(Z);for(let J of V9)if(J.test(Y))throw Error(`Potentially unsafe expression (matched /${J.source}/): ${Z}`);if(!F9.allowBracketNotation&&CQ.test(Z))throw Error(`Bracket notation with strings not allowed: ${Z}. Enable with configureSafeEvaluator({ allowBracketNotation: true })`);return Z}function gQ($){let Z={};Z.Math=Math,Z.JSON=JSON,Z.Date=Date,Z.String=String,Z.Number=Number,Z.Boolean=Boolean,Z.Array=Array,Z.parseInt=Number.parseInt,Z.parseFloat=Number.parseFloat,Z.isNaN=Number.isNaN,Z.isFinite=Number.isFinite,Z.encodeURIComponent=encodeURIComponent,Z.decodeURIComponent=decodeURIComponent;for(let[Y,J]of Object.entries($)){if(Y.startsWith("__")||V9.some((X)=>X.test(Y)))continue;if(J&&typeof J==="object"&&!Array.isArray(J))Z[Y]=K7(J);else Z[Y]=J}return Z}function K7($,Z=0){if(Z>=F9.maxSanitizeDepth)return"[Object too deep]";if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((J)=>K7(J,Z+1));if($ instanceof Date||$ instanceof RegExp||$ instanceof Map||$ instanceof Set||$ instanceof Error)return $;let Y={};for(let[J,X]of Object.entries($)){if(J.startsWith("__")||J==="constructor"||J==="prototype")continue;if(X&&typeof X==="object")Y[J]=K7(X,Z+1);else Y[J]=X}return Y}function Y0($,Z){try{let Y=gQ(Z),J=Object.keys(Y),X=Object.values(Y);return K0($,J)(...X)}catch{return}}function G0($){try{return V$($),!0}catch{return!1}}function M0($,Z){try{let Y=Y0($,Z);if(Y&&typeof Y==="object"&&!Array.isArray(Y))return Y;return{}}catch{return{}}}function K0($,Z){let Y=V$($),J=/^[A-Za-z_$][\w$]*$/,X=[],Q=[];for(let q=0;q<Z.length;q++){let W=Z[q];if(!J.test(W))continue;if(A9.has(W))continue;X.push(q),Q.push(W)}let G=(q)=>Function(...Q,...q,`
738
738
  'use strict';
739
739
  try {
740
740
  return ${Y};
@@ -745,7 +745,7 @@ catch (e) {
745
745
  }
746
746
  throw e;
747
747
  }
748
- `),K=G([]);if(Q.length===Z.length)return L9(K,Q,G);return L9((...q)=>{let W=Array(X.length);for(let U=0;U<X.length;U++)W[U]=q[X[U]];return K(...W)},Q,G,(q)=>{K=G(q)})}function L9($,Z,Y,J){let Q=/^(\w+) is not defined$/,G=$,K=[],z=new Set(Z);return(...q)=>{for(let W=0;W<=8;W++)try{return G(...q)}catch(U){let j=U instanceof Error?U.message:"",B=Q.exec(j);if(!(U instanceof ReferenceError)||!B)return;let _=B[1];if(z.has(_)||A9.has(_))return;z.add(_),K.push(_),G=Y(K),J?.(K)}return}}function w$($){let Z=$.trim(),Y=[/\beval\s*\(/i,/\bFunction\s*\(/i,/\bimport\s*\(/i,/\brequire\s*\(/i,/\bprocess\b/i,/\b__proto__\b/i,/\bconstructor\s*[.(]/i,/\bglobalThis\b/i,/\bwindow\b/i,/\bdocument\b/i,/\bfetch\s*\(/i,/\bBun\b/i,/\bDeno\b/i,/\bconsole\b/i,/\bthis\b/i,/\bReflect\b/i,/\bProxy\b/i,/\bprototype\b/i,/\.(bind|call|apply)\s*\(/i];for(let J of Y)if(J.test(Z))return!1;return!0}var yQ,F9,V9,PQ,w9,CQ,A9;var A0=b(()=>{yQ={maxSanitizeDepth:10,allowBracketNotation:!1},F9={...yQ},V9=[/\b(eval|Function|setTimeout|setInterval|setImmediate)\b/,/\b(process|require|import|exports|module)\b/,/\b(window|document|global|globalThis)\b/,/\b(constructor|prototype|__proto__)\b/,/\b(Reflect|Proxy)\b/,/\bSymbol\b/,/\b(WeakMap|WeakSet|WeakRef|FinalizationRegistry)\b/,/\b(Generator|AsyncGenerator)\b/,/__\w+__/,/\.(bind|call|apply)\s*\(/,/\bnew\s+/,/\bdelete\s+/,/\bthis\b/],PQ=new Set(["eval","Function","setTimeout","setInterval","setImmediate","process","require","import","exports","module","window","document","global","globalThis","constructor","prototype","Reflect","Proxy","Symbol","WeakMap","WeakSet","WeakRef","FinalizationRegistry","Generator","AsyncGenerator","delete","this"]),w9=new Set(["__proto__","constructor","prototype"]),CQ=/[\w)\]]\s*\[\s*['"]/;A9=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","enum","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with","yield","let","static","implements","interface","package","private","protected","public","arguments","eval","await"])});function A$($,Z){let Y=hQ++,J=`<!--__STX_${$.toUpperCase()}_${Y}__-->`;return dQ.set(J,{type:$,expression:Z}),J}var hQ=0,dQ;var R9=b(()=>{dQ=new Map});function D9($,Z,Y,J){Y.lastIndex=Z;let X=Y.exec($);if(!X||X.index!==Z)return-1;J.lastIndex=Y.lastIndex;let Q=J.exec($);if(!Q)return-1;return Q.index+Q[0].length}function H1($,Z){return D9($,Z,N9,M9)}function e1($,Z){return D9($,Z,T9,I9)}function x5($,Z){if(!$.startsWith("<!--",Z))return-1;let Y=$.indexOf("-->",Z+4);if(Y===-1)return-1;return Y+3}function uQ($,Z){if($.startsWith("<!--",Z)){let Y=x5($,Z);return Y===-1?$.length:Y}for(let[Y,J]of[[N9,M9],[T9,I9]]){Y.lastIndex=Z;let X=Y.exec($);if(!X||X.index!==Z)continue;J.lastIndex=Y.lastIndex;let Q=J.exec($);return Q?Q.index+Q[0].length:$.length}return-1}function z7($,Z){let Y=[],J=0,X=$.length,Q=!1,G=null;while(J<X){let K=$[J];if(Q){if(G){if(K===G)G=null}else if(K==='"'||K==="'")G=K;else if(K===">")Q=!1;J++;continue}if(K!=="<"){J++;continue}let z=Z($,J);if(z>J){Y.push({start:J,end:z,token:$.slice(J,z)}),J=z;continue}let q=uQ($,J);if(q>J){J=q;continue}if(/^<\/?[a-zA-Z]/.test($.slice(J,J+2)))Q=!0;J++}return Y}function Z1($,Z,Y){let J=z7($,Z);if(J.length===0)return{output:$,tokens:[]};let X=J.map((K)=>K.token),Q="",G=0;for(let K=0;K<J.length;K++){let z=J[K];Q+=$.slice(G,z.start),Q+=Y(z.token,K),G=z.end}return Q+=$.slice(G),{output:Q,tokens:X}}function O1($){let{output:Z,tokens:Y}=Z1($,H1,(J,X)=>`\x00STX_SCRIPT_${X}\x00`);return{output:Z,scripts:Y}}function f5($,Z){if(Z.length===0)return $;return $.replace(/\x00STX_SCRIPT_(\d+)\x00/g,(Y,J)=>Z[+J]??"")}var N9,M9,T9,I9;var C1=b(()=>{N9=/<script\b[^>]*>/iy,M9=/<\/script\s*>/ig,T9=/<style\b[^>]*>/iy,I9=/<\/style\s*>/ig});var P9={};e(P9,{usesSignalsInScript:()=>$5,unescapeHtml:()=>q7,registerFilters:()=>pQ,registerFilter:()=>b9,processExpressions:()=>L1,interpolateScriptsInTemplate:()=>cQ,interpolateScriptExpressions:()=>R$,getAllFilters:()=>S9,evaluateExpression:()=>l0,escapeHtml:()=>s0,defaultFilters:()=>h5,clearCustomFilters:()=>lQ,applyFilters:()=>y9});function mQ($){let Z=E9.get($);if(!Z){let Y=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${Y}(?!\\w)`,"g"),E9.set($,Z)}return Z.lastIndex=0,Z}function b9($,Z){if($ in h5)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);g5[$]=Z}function pQ($){for(let[Z,Y]of Object.entries($))b9(Z,Y)}function S9(){return{...h5,...g5}}function lQ(){for(let $ of Object.keys(g5))delete g5[$]}function s0($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function $5($){let{scripts:Z}=O1($);for(let Y of Z){let J=Y.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i);if(!J||/\bserver\b|\bsrc\s*=/.test(J[1]))continue;let X=J[2];if(/\b(state|derived|effect|ref|reactive|computed|watch|watchEffect)\s*(?:<[^>]*>)?\s*\(/.test(X))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 k9($,Z){let Y=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined","NaN","Infinity","isNaN","isFinite","window","document","console"],J=$.replace(/'[^']*'/g,"").replace(/"[^"]*"/g,""),X="",Q=!1,G=0;for(let q=0;q<J.length;q++){let W=J[q];if(!Q&&W==="`"){Q=!0,G=0;continue}if(Q){if(W==="`"&&G===0){Q=!1;continue}if(W==="$"&&J[q+1]==="{"){G++,q++,X+=" ";continue}if(W==="}"&&G>0){G--;continue}if(G>0){X+=W;continue}continue}X+=W}J=X;let K=/\b([a-zA-Z_$][a-zA-Z0-9_$]*)\b/g,z;while((z=K.exec(J))!==null){let q=z[1];if(!J.substring(0,z.index).trimEnd().endsWith(".")){if(!Y.includes(q)&&!(q in Z))return!1}}return!0}function R$($,Z){let Y=$;return Y=Y.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=l0(X,Z);if(Q===void 0)return J;return Q===null?"":String(Q)}catch{return J}}),Y=Y.replace(/\{\{([\s\S]*?)\}\}/g,(J,X)=>{let Q=X.trim();if(/^__[A-Z_]+__$/.test(Q))return J;try{let G=l0(X,Z);if(G===void 0)return J;return JSON.stringify(G)}catch{return J}}),Y}function cQ($,Z,Y={}){let{output:J,scripts:X}=O1($),Q=X.map((G)=>{let K=G.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i),z=G.match(/^<script\b[^>]*>/i),q=G.search(/<\/script\s*>$/i);if(!K||!z||q===-1)return G;let W=K[1],U=K[2];if(/\bsrc\s*=/.test(W))return G;if(/\bdata-raw\b/.test(W))return G;if(/\btype\s*=\s*["']application\/json["']/.test(W))return G;if(Y.skipServer&&/\bserver\b/.test(W))return G;let j=R$(U,Z);return z[0]+j+G.slice(q)});return f5(J,Q)}function L1($,Z,Y,J){let X=$,Q=(j,B)=>{let _=e1(j,B);if(_===-1)return-1;return/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/.test(j.slice(B,_))?-1:_},G=(j,B,_,H)=>{let L=_.length,{output:V,tokens:O}=Z1(j,B,(F,w)=>H(L+w));return _.push(...O),V},K=[];X=G(X,Q,K,(j)=>`<!--__STX_STYLE_${j}__-->`);let z=[];X=G(X,H1,z,(j)=>`<!--__STX_SCRIPT_EXPR_${j}__-->`);let q=J?.forceSignals===!0||Z?.__stx_force_signals===!0||Array.isArray(Z?.__stx_client_signal_names)||$5($),W=new Set(Array.isArray(Z?.__stx_client_signal_names)?Z.__stx_client_signal_names:[]),U=new Set(Array.isArray(Z?.__stx_preserved_client_expressions)?Z.__stx_preserved_client_expressions:[]);X=X.replace(/\{\{\{([\s\S]*?)\}\}\}/g,(j,B,_)=>{try{let H=l0(B,Z);return H!==void 0&&H!==null?String(H):""}catch(H){let L=H instanceof Error?H.message:String(H);return q0("Expression",`Error evaluating: {{{ ${B.trim()}}}}: ${L}`,Y,$,_,j)}}),X=X.replace(/\{!!([\s\S]*?)!!\}/g,(j,B,_)=>{try{let H=l0(B,Z);if(H===void 0&&Z.__stx_buildMode==="compile")return A$("raw",B.trim());return H!==void 0&&H!==null?String(H):""}catch(H){if(Z.__stx_buildMode==="compile")return A$("raw",B.trim());let L=H instanceof Error?H.message:String(H);return q0("Expression",`Error evaluating: {!! ${B.trim()} !!}: ${L}`,Y,$,_,j)}}),X=G(X,H1,z,(j)=>`<!--__STX_SCRIPT_EXPR_${j}__-->`),X=G(X,Q,K,(j)=>`<!--__STX_STYLE_${j}__-->`),X=X.replace(/\{\{([\s\S]*?)\}\}/g,(j,B,_)=>{let H=B.trim();if(U.has(H))return j;let L=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined"],V=/^([a-zA-Z_$][a-zA-Z0-9_$]*)/,F=H.match(V)?.[1],w=F&&((F in Z)||L.includes(F)),A=Boolean(F&&W.has(F)),R=/^([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/,N=H.match(R),M=N&&!L.includes(N[1])&&!(N[1]in Z);if(/^__[A-Z_]+__$/.test(H))return"";try{let T=l0(B,Z);if(A)return j;if(q&&!k9(H,Z))return j;if(T===void 0&&Z.__stx_buildMode==="compile"&&!q)return A$("expr",H);return T!==void 0&&T!==null?s0(String(T)):""}catch(T){if(A)return j;if(q&&!k9(H,Z))return j;if(M)return j;let I=T instanceof Error?T.message:String(T);return q0("Expression",`Error evaluating: {{ ${H} }}: ${I}`,Y,$,_,j)}});for(let j=0;j<z.length;j++)X=X.replace(`<!--__STX_SCRIPT_EXPR_${j}__-->`,()=>z[j]);for(let j=0;j<K.length;j++)X=X.replace(`<!--__STX_STYLE_${j}__-->`,()=>K[j]);return X}function y9($,Z,Y){if(!Z.trim())return $;let J=$,X=Z.trim();while(X.length>0){let Q=X.match(/^(\w+)/);if(!Q)break;let G=Q[1];X=X.substring(G.length).trim();let K=g5[G]||h5[G];if(!K)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(S9()).join(", ")}`);let z=[];if(X.startsWith(":")){let q=X.match(/^:([^|\s]+)/);if(q){let W=q[1].trim();try{let U=Number(W);z=[Number.isNaN(U)?W:U]}catch{z=[W]}X=X.substring(q[0].length).trim()}}else if(X.startsWith("(")){let q=1,W=1;while(q>0&&W<X.length){if(X[W]==="(")q++;if(X[W]===")")q--;W++}if(q===0){let U=X.substring(1,W-1).trim();if(U)try{if(U.startsWith("{")&&U.endsWith("}"))z=[l0(`(${U})`,Y,!0)];else{let j=[],B="",_=null,H=0,L=0,V=0,O=!1;for(let F=0;F<U.length;F++){let w=U[F];if(O){B+=w,O=!1;continue}if(w==="\\"){B+=w,O=!0;continue}if(_){if(B+=w,w===_)_=null;continue}if(w==='"'||w==="'"||w==="`"){_=w,B+=w;continue}if(w==="(")H++;else if(w===")")H--;else if(w==="[")L++;else if(w==="]")L--;else if(w==="{")V++;else if(w==="}")V--;if(w===","&&H===0&&L===0&&V===0){j.push(B),B="";continue}B+=w}if(B)j.push(B);z=j.map((F)=>{let w=F.trim();return l0(w,Y,!0)})}}catch{z=[U]}X=X.substring(W).trim()}}try{J=K(J,Y,...z)}catch(q){let W=q instanceof Error?q.message:String(q);throw Error(`Error applying filter '${G}': ${W}`)}if(X.startsWith("|"))X=X.substring(1).trim();else break}return J}function iQ($){let Z=!1,Y="",J=0,X=0,Q=0,G=!1;for(let K=0;K<$.length;K++){let z=$[K],q=$[K+1];if(Z&&G){G=!1;continue}if(Z&&z==="\\"){G=!0;continue}if(G=!1,(z==='"'||z==="'"||z==="`")&&!G){if(!Z)Z=!0,Y=z;else if(z===Y)Z=!1,Y="";continue}if(Z&&Y==="`"&&z==="$"&&q==="{"){let W=1;K+=2;while(K<$.length&&W>0){if($[K]==="{")W++;else if($[K]==="}")W--;if(W>0)K++}continue}if(Z)continue;if(z==="(")J++;else if(z===")")J--;else if(z==="[")X++;else if(z==="]")X--;else if(z==="{")Q++;else if(z==="}")Q--;if(z==="|"&&J===0&&X===0&&Q===0){if(q==="|"){K++;continue}if(q==="="){K++;continue}return K}}return-1}function l0($,Z,Y=!1){try{let J=$.trim(),X=iQ(J);if(X>0){let Q=J.substring(0,X).trim(),G=J.substring(X+1).trim(),K=l0(Q,Z,!0);return y9(K,G,Z)}if(!G0(J)){if(!Y)console.warn(`Potentially unsafe expression detected, using safe evaluator: ${J}`);return Y0(J,Z)}try{let Q=Object.keys(Z),G=Object.values(Z);return K0(J,Q)(...G)}catch{return Y0(J,Z)}}catch(J){if(J instanceof ReferenceError){let X=/(\b\w+)\s+is not defined/.exec(J.message);if(X){let Q=X[1],G=nQ(Q,Object.keys(Z));if(G&&G!==Q)J.message=`${J.message} \u2014 did you mean '${G}'?`}}if(!Y)console.error(`Error evaluating expression: ${$}`,J);throw J}}function nQ($,Z){let Y=null;for(let X of Z){if(X===$)continue;let Q=oQ($,X);if(Y===null||Q<Y.dist)Y={key:X,dist:Q}}if(!Y)return null;let J=Math.max($.length,Y.key.length);if(Y.dist<=2||Y.dist/J<=0.35)return Y.key;return null}function oQ($,Z){if($===Z)return 0;if($.length===0)return Z.length;if(Z.length===0)return $.length;let[Y,J]=$.length<Z.length?[$,Z]:[Z,$],X=Array(Y.length+1),Q=Array(Y.length+1);for(let G=0;G<=Y.length;G++)X[G]=G;for(let G=1;G<=J.length;G++){Q[0]=G;for(let K=1;K<=Y.length;K++){let z=Y[K-1]===J[G-1]?0:1;Q[K]=Math.min(Q[K-1]+1,X[K]+1,X[K-1]+z)}for(let K=0;K<=Y.length;K++)X[K]=Q[K]}return X[Y.length]}function q7($){if(!$)return"";return $.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#039;/g,"'").replace(/&#39;/g,"'").replace(/&amp;/g,"&")}var g5,E9,h5;var Y1=b(()=>{A0();N0();R9();C1();g5={},E9=new Map;h5={uppercase:($,Z)=>{return $!==void 0&&$!==null?String($).toUpperCase():""},lowercase:($,Z)=>{return $!==void 0&&$!==null?String($).toLowerCase():""},capitalize:($,Z)=>{if($===void 0||$===null)return"";let Y=String($);return Y.charAt(0).toUpperCase()+Y.slice(1)},number:($,Z,Y=0)=>{if($===void 0||$===null)return"";try{let J=Number($);return Number.isNaN(J)?"":J.toFixed(Number.parseInt(String(Y),10))}catch{return""}},fmt:($,Z,Y="en-US")=>{if($===void 0||$===null)return"";try{let J=Number($);if(Number.isNaN(J))return String($);return J.toLocaleString(Y)}catch{return String($)}},join:($,Z,Y=",")=>{if(!Array.isArray($))return"";return $.join(String(Y))},escape:($,Z)=>{if($===void 0||$===null)return"";return s0(String($))},translate:($,Z,Y={})=>{if(!Z||!Z.__translations)return $;let J=Z.__translations,X=Z.__i18nConfig?.fallbackToKey??!0,Q=String($).split("."),G=J;for(let z of Q){if(G===void 0||G===null)break;G=G[z]}if(G===void 0||G===null)return X?$:"";let K=String(G);return Object.entries(Y).forEach(([z,q])=>{K=K.replace(mQ(z),String(q))}),K},t:($,Z,Y={})=>{return h5.translate($,Z,Y)},truncate:($,Z,Y=50,J="...")=>{if($===void 0||$===null)return"";let X=String($);if(X.length<=Y)return X;if(Y<=J.length)return J.substring(0,Y);return X.substring(0,Y-J.length)+J},date:($,Z,Y="short",J="en-US")=>{if($===void 0||$===null)return"";try{let X=$ instanceof Date?$:new Date($);if(Number.isNaN(X.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(Y==="iso")return X.toISOString();return new Intl.DateTimeFormat(J,Q[Y]||Q.short).format(X)}catch{return String($)}},currency:($,Z,Y="USD",J="en-US")=>{if($===void 0||$===null)return"";try{let X=Number($);if(Number.isNaN(X))return String($);return new Intl.NumberFormat(J,{style:"currency",currency:Y}).format(X)}catch{return String($)}},pluralize:($,Z,Y,J)=>{let X=Number($);if(Number.isNaN(X))return Y;let Q=J||`${Y}s`;return X===1?Y: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 Y=String($);return Y.charAt(Y.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,Y=!1)=>{if($===void 0)return"undefined";if($===null)return"null";try{return Y?JSON.stringify($,null,2):JSON.stringify($)}catch{return String($)}},default:($,Z,Y="")=>{return $===void 0||$===null||$===""?Y:$},reverse:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return[...$].reverse();return String($).split("").reverse().join("")},slice:($,Z,Y=0,J)=>{if($===void 0||$===null)return"";if(Array.isArray($)||typeof $==="string")return $.slice(Y,J);return $},replace:($,Z,Y,J="")=>{if($===void 0||$===null)return"";let X=Y.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return String($).replace(new RegExp(X,"g"),()=>J)},stripTags:($,Z)=>{if($===void 0||$===null)return"";return String($).replace(/<[^>]*>/g,"")},urlencode:($,Z)=>{if($===void 0||$===null)return"";return encodeURIComponent(String($))},abs:($,Z)=>{let Y=Number($);return Number.isNaN(Y)?0:Math.abs(Y)},round:($,Z,Y=0)=>{let J=Number($);if(Number.isNaN(J))return 0;let X=10**Y;return Math.round(J*X)/X}}});function Z5($="const",Z=[],Y){let J=Z.length?N$.filter((X)=>!Z.includes(X)):N$;if(Y!==void 0)J=J.filter((X)=>{let Q=X.replace(/[$()*+.?[\\\]^{|}-]/g,"\\$&");return new RegExp(`(^|[^\\w$])${Q}(?![\\w$])`).test(Y)});return`${$} { ${J.join(", ")} } = window.stx;`}var N$,C9;var d5=b(()=>{N$=["batch","computed","defineEmits","defineExpose","definePageMeta","defineProps","defineSlots","defineStore","derived","effect","goBack","goForward","navigate","nextTick","onBeforeUnmount","onDestroy","onMount","onMounted","onUnmounted","provide","reactive","ref","registerStoresClient","state","useAsync","useClickOutside","useColorMode","useCookie","useCounter","useDark","useDebounce","useDebouncedValue","useEventListener","useFetch","useFocus","useHead","useId","useInterval","useLocalStorage","useMediaQuery","useMutation","useOptimistic","usePreferredContrast","usePreferredDark","usePreferredLight","usePreferredReducedMotion","useQuery","useReactiveProp","useRef","useRoute","useScrollLock","useSearchParams","useSeoMeta","useSessionStorage","useStore","useThrottle","useTimeout","useToggle","useWebSocket","watch","watchEffect","withDefaults"],C9=["onMount","onDestroy"]});class u5{cache=new Map;maxSize;constructor($=100){this.maxSize=$}get($){if(!this.cache.has($))return;let Z=this.cache.get($);return this.cache.delete($),this.cache.set($,Z),Z}set($,Z){if(this.cache.has($))this.cache.delete($);else if(this.cache.size>=this.maxSize){let Y=this.cache.keys().next().value;if(Y!==void 0)this.cache.delete(Y)}this.cache.set($,Z)}has($){return this.cache.has($)}delete($){return this.cache.delete($)}clear(){this.cache.clear()}get size(){return this.cache.size}keys(){return this.cache.keys()}values(){return this.cache.values()}}function J5($,Z){if(Z?.includes("g"))return new RegExp($,Z);let Y=`${$}:${Z||""}`;if(!Y5.has(Y)){if(Y5.size>=sQ){let J=Y5.keys().next().value;if(J)Y5.delete(J)}Y5.set(Y,new RegExp($,Z))}return Y5.get(Y)}class v9{pool=[];maxPoolSize=10;fnCache=new Map;fnCacheMaxSize=200;getEvaluator($){let Z=Array.from(new Set($)),Y=Z.sort().join(","),J=this.pool.find((K)=>K.context.join(",")===Y);if(J)return J.func;let X=this.fnCache,Q=this.fnCacheMaxSize,G=(...K)=>{return(z)=>{try{let q=`${Y}:${z}`,W=X.get(q);if(!W){if(X.size>=Q){let U=X.keys().next().value;if(U)X.delete(U)}W=Function(...Z,`
748
+ `),K=G([]);if(Q.length===Z.length)return L9(K,Q,G);return L9((...q)=>{let W=Array(X.length);for(let U=0;U<X.length;U++)W[U]=q[X[U]];return K(...W)},Q,G,(q)=>{K=G(q)})}function L9($,Z,Y,J){let Q=/^(\w+) is not defined$/,G=$,K=[],z=new Set(Z);return(...q)=>{for(let W=0;W<=8;W++)try{return G(...q)}catch(U){let j=U instanceof Error?U.message:"",_=Q.exec(j);if(!(U instanceof ReferenceError)||!_)return;let B=_[1];if(z.has(B)||A9.has(B))return;z.add(B),K.push(B),G=Y(K),J?.(K)}return}}function w$($){let Z=$.trim(),Y=[/\beval\s*\(/i,/\bFunction\s*\(/i,/\bimport\s*\(/i,/\brequire\s*\(/i,/\bprocess\b/i,/\b__proto__\b/i,/\bconstructor\s*[.(]/i,/\bglobalThis\b/i,/\bwindow\b/i,/\bdocument\b/i,/\bfetch\s*\(/i,/\bBun\b/i,/\bDeno\b/i,/\bconsole\b/i,/\bthis\b/i,/\bReflect\b/i,/\bProxy\b/i,/\bprototype\b/i,/\.(bind|call|apply)\s*\(/i];for(let J of Y)if(J.test(Z))return!1;return!0}var yQ,F9,V9,PQ,w9,CQ,A9;var A0=b(()=>{yQ={maxSanitizeDepth:10,allowBracketNotation:!1},F9={...yQ},V9=[/\b(eval|Function|setTimeout|setInterval|setImmediate)\b/,/\b(process|require|import|exports|module)\b/,/\b(window|document|global|globalThis)\b/,/\b(constructor|prototype|__proto__)\b/,/\b(Reflect|Proxy)\b/,/\bSymbol\b/,/\b(WeakMap|WeakSet|WeakRef|FinalizationRegistry)\b/,/\b(Generator|AsyncGenerator)\b/,/__\w+__/,/\.(bind|call|apply)\s*\(/,/\bnew\s+/,/\bdelete\s+/,/\bthis\b/],PQ=new Set(["eval","Function","setTimeout","setInterval","setImmediate","process","require","import","exports","module","window","document","global","globalThis","constructor","prototype","Reflect","Proxy","Symbol","WeakMap","WeakSet","WeakRef","FinalizationRegistry","Generator","AsyncGenerator","delete","this"]),w9=new Set(["__proto__","constructor","prototype"]),CQ=/[\w)\]]\s*\[\s*['"]/;A9=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","enum","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with","yield","let","static","implements","interface","package","private","protected","public","arguments","eval","await"])});function A$($,Z){let Y=hQ++,J=`<!--__STX_${$.toUpperCase()}_${Y}__-->`;return dQ.set(J,{type:$,expression:Z}),J}var hQ=0,dQ;var R9=b(()=>{dQ=new Map});function D9($,Z,Y,J){Y.lastIndex=Z;let X=Y.exec($);if(!X||X.index!==Z)return-1;J.lastIndex=Y.lastIndex;let Q=J.exec($);if(!Q)return-1;return Q.index+Q[0].length}function H1($,Z){return D9($,Z,N9,M9)}function e1($,Z){return D9($,Z,T9,I9)}function x5($,Z){if(!$.startsWith("<!--",Z))return-1;let Y=$.indexOf("-->",Z+4);if(Y===-1)return-1;return Y+3}function mQ($,Z){if($.startsWith("<!--",Z)){let Y=x5($,Z);return Y===-1?$.length:Y}for(let[Y,J]of[[N9,M9],[T9,I9]]){Y.lastIndex=Z;let X=Y.exec($);if(!X||X.index!==Z)continue;J.lastIndex=Y.lastIndex;let Q=J.exec($);return Q?Q.index+Q[0].length:$.length}return-1}function z7($,Z){let Y=[],J=0,X=$.length,Q=!1,G=null;while(J<X){let K=$[J];if(Q){if(G){if(K===G)G=null}else if(K==='"'||K==="'")G=K;else if(K===">")Q=!1;J++;continue}if(K!=="<"){J++;continue}let z=Z($,J);if(z>J){Y.push({start:J,end:z,token:$.slice(J,z)}),J=z;continue}let q=mQ($,J);if(q>J){J=q;continue}if(/^<\/?[a-zA-Z]/.test($.slice(J,J+2)))Q=!0;J++}return Y}function Z1($,Z,Y){let J=z7($,Z);if(J.length===0)return{output:$,tokens:[]};let X=J.map((K)=>K.token),Q="",G=0;for(let K=0;K<J.length;K++){let z=J[K];Q+=$.slice(G,z.start),Q+=Y(z.token,K),G=z.end}return Q+=$.slice(G),{output:Q,tokens:X}}function O1($){let{output:Z,tokens:Y}=Z1($,H1,(J,X)=>`\x00STX_SCRIPT_${X}\x00`);return{output:Z,scripts:Y}}function f5($,Z){if(Z.length===0)return $;return $.replace(/\x00STX_SCRIPT_(\d+)\x00/g,(Y,J)=>Z[+J]??"")}var N9,M9,T9,I9;var C1=b(()=>{N9=/<script\b[^>]*>/iy,M9=/<\/script\s*>/ig,T9=/<style\b[^>]*>/iy,I9=/<\/style\s*>/ig});var P9={};e(P9,{usesSignalsInScript:()=>$5,unescapeHtml:()=>q7,registerFilters:()=>pQ,registerFilter:()=>b9,processExpressions:()=>L1,interpolateScriptsInTemplate:()=>cQ,interpolateScriptExpressions:()=>R$,getAllFilters:()=>S9,evaluateExpression:()=>l0,escapeHtml:()=>s0,defaultFilters:()=>h5,clearCustomFilters:()=>lQ,applyFilters:()=>y9});function uQ($){let Z=E9.get($);if(!Z){let Y=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${Y}(?!\\w)`,"g"),E9.set($,Z)}return Z.lastIndex=0,Z}function b9($,Z){if($ in h5)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);g5[$]=Z}function pQ($){for(let[Z,Y]of Object.entries($))b9(Z,Y)}function S9(){return{...h5,...g5}}function lQ(){for(let $ of Object.keys(g5))delete g5[$]}function s0($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function $5($){let{scripts:Z}=O1($);for(let Y of Z){let J=Y.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i);if(!J||/\bserver\b|\bsrc\s*=/.test(J[1]))continue;let X=J[2];if(/\b(state|derived|effect|ref|reactive|computed|watch|watchEffect)\s*(?:<[^>]*>)?\s*\(/.test(X))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 k9($,Z){let Y=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined","NaN","Infinity","isNaN","isFinite","window","document","console"],J=$.replace(/'[^']*'/g,"").replace(/"[^"]*"/g,""),X="",Q=!1,G=0;for(let q=0;q<J.length;q++){let W=J[q];if(!Q&&W==="`"){Q=!0,G=0;continue}if(Q){if(W==="`"&&G===0){Q=!1;continue}if(W==="$"&&J[q+1]==="{"){G++,q++,X+=" ";continue}if(W==="}"&&G>0){G--;continue}if(G>0){X+=W;continue}continue}X+=W}J=X;let K=/\b([a-zA-Z_$][a-zA-Z0-9_$]*)\b/g,z;while((z=K.exec(J))!==null){let q=z[1];if(!J.substring(0,z.index).trimEnd().endsWith(".")){if(!Y.includes(q)&&!(q in Z))return!1}}return!0}function R$($,Z){let Y=$;return Y=Y.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=l0(X,Z);if(Q===void 0)return J;return Q===null?"":String(Q)}catch{return J}}),Y=Y.replace(/\{\{([\s\S]*?)\}\}/g,(J,X)=>{let Q=X.trim();if(/^__[A-Z_]+__$/.test(Q))return J;try{let G=l0(X,Z);if(G===void 0)return J;return JSON.stringify(G)}catch{return J}}),Y}function cQ($,Z,Y={}){let{output:J,scripts:X}=O1($),Q=X.map((G)=>{let K=G.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i),z=G.match(/^<script\b[^>]*>/i),q=G.search(/<\/script\s*>$/i);if(!K||!z||q===-1)return G;let W=K[1],U=K[2];if(/\bsrc\s*=/.test(W))return G;if(/\bdata-raw\b/.test(W))return G;if(/\btype\s*=\s*["']application\/json["']/.test(W))return G;if(Y.skipServer&&/\bserver\b/.test(W))return G;let j=R$(U,Z);return z[0]+j+G.slice(q)});return f5(J,Q)}function L1($,Z,Y,J){let X=$,Q=(j,_)=>{let B=e1(j,_);if(B===-1)return-1;return/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/.test(j.slice(_,B))?-1:B},G=(j,_,B,H)=>{let L=B.length,{output:V,tokens:O}=Z1(j,_,(F,w)=>H(L+w));return B.push(...O),V},K=[];X=G(X,Q,K,(j)=>`<!--__STX_STYLE_${j}__-->`);let z=[];X=G(X,H1,z,(j)=>`<!--__STX_SCRIPT_EXPR_${j}__-->`);let q=J?.forceSignals===!0||Z?.__stx_force_signals===!0||Array.isArray(Z?.__stx_client_signal_names)||$5($),W=new Set(Array.isArray(Z?.__stx_client_signal_names)?Z.__stx_client_signal_names:[]),U=new Set(Array.isArray(Z?.__stx_preserved_client_expressions)?Z.__stx_preserved_client_expressions:[]);X=X.replace(/\{\{\{([\s\S]*?)\}\}\}/g,(j,_,B)=>{try{let H=l0(_,Z);return H!==void 0&&H!==null?String(H):""}catch(H){let L=H instanceof Error?H.message:String(H);return q0("Expression",`Error evaluating: {{{ ${_.trim()}}}}: ${L}`,Y,$,B,j)}}),X=X.replace(/\{!!([\s\S]*?)!!\}/g,(j,_,B)=>{try{let H=l0(_,Z);if(H===void 0&&Z.__stx_buildMode==="compile")return A$("raw",_.trim());return H!==void 0&&H!==null?String(H):""}catch(H){if(Z.__stx_buildMode==="compile")return A$("raw",_.trim());let L=H instanceof Error?H.message:String(H);return q0("Expression",`Error evaluating: {!! ${_.trim()} !!}: ${L}`,Y,$,B,j)}}),X=G(X,H1,z,(j)=>`<!--__STX_SCRIPT_EXPR_${j}__-->`),X=G(X,Q,K,(j)=>`<!--__STX_STYLE_${j}__-->`),X=X.replace(/\{\{([\s\S]*?)\}\}/g,(j,_,B)=>{let H=_.trim();if(U.has(H))return j;let L=["parseInt","parseFloat","String","Number","Boolean","Array","Object","JSON","Math","Date","encodeURIComponent","decodeURIComponent","encodeURI","decodeURI","true","false","null","undefined"],V=/^([a-zA-Z_$][a-zA-Z0-9_$]*)/,F=H.match(V)?.[1],w=F&&((F in Z)||L.includes(F)),A=Boolean(F&&W.has(F)),R=/^([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/,N=H.match(R),M=N&&!L.includes(N[1])&&!(N[1]in Z);if(/^__[A-Z_]+__$/.test(H))return"";try{let T=l0(_,Z);if(A)return j;if(q&&!k9(H,Z))return j;if(T===void 0&&Z.__stx_buildMode==="compile"&&!q)return A$("expr",H);return T!==void 0&&T!==null?s0(String(T)):""}catch(T){if(A)return j;if(q&&!k9(H,Z))return j;if(M)return j;let I=T instanceof Error?T.message:String(T);return q0("Expression",`Error evaluating: {{ ${H} }}: ${I}`,Y,$,B,j)}});for(let j=0;j<z.length;j++)X=X.replace(`<!--__STX_SCRIPT_EXPR_${j}__-->`,()=>z[j]);for(let j=0;j<K.length;j++)X=X.replace(`<!--__STX_STYLE_${j}__-->`,()=>K[j]);return X}function y9($,Z,Y){if(!Z.trim())return $;let J=$,X=Z.trim();while(X.length>0){let Q=X.match(/^(\w+)/);if(!Q)break;let G=Q[1];X=X.substring(G.length).trim();let K=g5[G]||h5[G];if(!K)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(S9()).join(", ")}`);let z=[];if(X.startsWith(":")){let q=X.match(/^:([^|\s]+)/);if(q){let W=q[1].trim();try{let U=Number(W);z=[Number.isNaN(U)?W:U]}catch{z=[W]}X=X.substring(q[0].length).trim()}}else if(X.startsWith("(")){let q=1,W=1;while(q>0&&W<X.length){if(X[W]==="(")q++;if(X[W]===")")q--;W++}if(q===0){let U=X.substring(1,W-1).trim();if(U)try{if(U.startsWith("{")&&U.endsWith("}"))z=[l0(`(${U})`,Y,!0)];else{let j=[],_="",B=null,H=0,L=0,V=0,O=!1;for(let F=0;F<U.length;F++){let w=U[F];if(O){_+=w,O=!1;continue}if(w==="\\"){_+=w,O=!0;continue}if(B){if(_+=w,w===B)B=null;continue}if(w==='"'||w==="'"||w==="`"){B=w,_+=w;continue}if(w==="(")H++;else if(w===")")H--;else if(w==="[")L++;else if(w==="]")L--;else if(w==="{")V++;else if(w==="}")V--;if(w===","&&H===0&&L===0&&V===0){j.push(_),_="";continue}_+=w}if(_)j.push(_);z=j.map((F)=>{let w=F.trim();return l0(w,Y,!0)})}}catch{z=[U]}X=X.substring(W).trim()}}try{J=K(J,Y,...z)}catch(q){let W=q instanceof Error?q.message:String(q);throw Error(`Error applying filter '${G}': ${W}`)}if(X.startsWith("|"))X=X.substring(1).trim();else break}return J}function iQ($){let Z=!1,Y="",J=0,X=0,Q=0,G=!1;for(let K=0;K<$.length;K++){let z=$[K],q=$[K+1];if(Z&&G){G=!1;continue}if(Z&&z==="\\"){G=!0;continue}if(G=!1,(z==='"'||z==="'"||z==="`")&&!G){if(!Z)Z=!0,Y=z;else if(z===Y)Z=!1,Y="";continue}if(Z&&Y==="`"&&z==="$"&&q==="{"){let W=1;K+=2;while(K<$.length&&W>0){if($[K]==="{")W++;else if($[K]==="}")W--;if(W>0)K++}continue}if(Z)continue;if(z==="(")J++;else if(z===")")J--;else if(z==="[")X++;else if(z==="]")X--;else if(z==="{")Q++;else if(z==="}")Q--;if(z==="|"&&J===0&&X===0&&Q===0){if(q==="|"){K++;continue}if(q==="="){K++;continue}return K}}return-1}function l0($,Z,Y=!1){try{let J=$.trim(),X=iQ(J);if(X>0){let Q=J.substring(0,X).trim(),G=J.substring(X+1).trim(),K=l0(Q,Z,!0);return y9(K,G,Z)}if(!G0(J)){if(!Y)console.warn(`Potentially unsafe expression detected, using safe evaluator: ${J}`);return Y0(J,Z)}try{let Q=Object.keys(Z),G=Object.values(Z);return K0(J,Q)(...G)}catch{return Y0(J,Z)}}catch(J){if(J instanceof ReferenceError){let X=/(\b\w+)\s+is not defined/.exec(J.message);if(X){let Q=X[1],G=nQ(Q,Object.keys(Z));if(G&&G!==Q)J.message=`${J.message} \u2014 did you mean '${G}'?`}}if(!Y)console.error(`Error evaluating expression: ${$}`,J);throw J}}function nQ($,Z){let Y=null;for(let X of Z){if(X===$)continue;let Q=oQ($,X);if(Y===null||Q<Y.dist)Y={key:X,dist:Q}}if(!Y)return null;let J=Math.max($.length,Y.key.length);if(Y.dist<=2||Y.dist/J<=0.35)return Y.key;return null}function oQ($,Z){if($===Z)return 0;if($.length===0)return Z.length;if(Z.length===0)return $.length;let[Y,J]=$.length<Z.length?[$,Z]:[Z,$],X=Array(Y.length+1),Q=Array(Y.length+1);for(let G=0;G<=Y.length;G++)X[G]=G;for(let G=1;G<=J.length;G++){Q[0]=G;for(let K=1;K<=Y.length;K++){let z=Y[K-1]===J[G-1]?0:1;Q[K]=Math.min(Q[K-1]+1,X[K]+1,X[K-1]+z)}for(let K=0;K<=Y.length;K++)X[K]=Q[K]}return X[Y.length]}function q7($){if(!$)return"";return $.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#039;/g,"'").replace(/&#39;/g,"'").replace(/&amp;/g,"&")}var g5,E9,h5;var Y1=b(()=>{A0();N0();R9();C1();g5={},E9=new Map;h5={uppercase:($,Z)=>{return $!==void 0&&$!==null?String($).toUpperCase():""},lowercase:($,Z)=>{return $!==void 0&&$!==null?String($).toLowerCase():""},capitalize:($,Z)=>{if($===void 0||$===null)return"";let Y=String($);return Y.charAt(0).toUpperCase()+Y.slice(1)},number:($,Z,Y=0)=>{if($===void 0||$===null)return"";try{let J=Number($);return Number.isNaN(J)?"":J.toFixed(Number.parseInt(String(Y),10))}catch{return""}},fmt:($,Z,Y="en-US")=>{if($===void 0||$===null)return"";try{let J=Number($);if(Number.isNaN(J))return String($);return J.toLocaleString(Y)}catch{return String($)}},join:($,Z,Y=",")=>{if(!Array.isArray($))return"";return $.join(String(Y))},escape:($,Z)=>{if($===void 0||$===null)return"";return s0(String($))},translate:($,Z,Y={})=>{if(!Z||!Z.__translations)return $;let J=Z.__translations,X=Z.__i18nConfig?.fallbackToKey??!0,Q=String($).split("."),G=J;for(let z of Q){if(G===void 0||G===null)break;G=G[z]}if(G===void 0||G===null)return X?$:"";let K=String(G);return Object.entries(Y).forEach(([z,q])=>{K=K.replace(uQ(z),String(q))}),K},t:($,Z,Y={})=>{return h5.translate($,Z,Y)},truncate:($,Z,Y=50,J="...")=>{if($===void 0||$===null)return"";let X=String($);if(X.length<=Y)return X;if(Y<=J.length)return J.substring(0,Y);return X.substring(0,Y-J.length)+J},date:($,Z,Y="short",J="en-US")=>{if($===void 0||$===null)return"";try{let X=$ instanceof Date?$:new Date($);if(Number.isNaN(X.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(Y==="iso")return X.toISOString();return new Intl.DateTimeFormat(J,Q[Y]||Q.short).format(X)}catch{return String($)}},currency:($,Z,Y="USD",J="en-US")=>{if($===void 0||$===null)return"";try{let X=Number($);if(Number.isNaN(X))return String($);return new Intl.NumberFormat(J,{style:"currency",currency:Y}).format(X)}catch{return String($)}},pluralize:($,Z,Y,J)=>{let X=Number($);if(Number.isNaN(X))return Y;let Q=J||`${Y}s`;return X===1?Y: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 Y=String($);return Y.charAt(Y.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,Y=!1)=>{if($===void 0)return"undefined";if($===null)return"null";try{return Y?JSON.stringify($,null,2):JSON.stringify($)}catch{return String($)}},default:($,Z,Y="")=>{return $===void 0||$===null||$===""?Y:$},reverse:($,Z)=>{if($===void 0||$===null)return"";if(Array.isArray($))return[...$].reverse();return String($).split("").reverse().join("")},slice:($,Z,Y=0,J)=>{if($===void 0||$===null)return"";if(Array.isArray($)||typeof $==="string")return $.slice(Y,J);return $},replace:($,Z,Y,J="")=>{if($===void 0||$===null)return"";let X=Y.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return String($).replace(new RegExp(X,"g"),()=>J)},stripTags:($,Z)=>{if($===void 0||$===null)return"";return String($).replace(/<[^>]*>/g,"")},urlencode:($,Z)=>{if($===void 0||$===null)return"";return encodeURIComponent(String($))},abs:($,Z)=>{let Y=Number($);return Number.isNaN(Y)?0:Math.abs(Y)},round:($,Z,Y=0)=>{let J=Number($);if(Number.isNaN(J))return 0;let X=10**Y;return Math.round(J*X)/X}}});function Z5($="const",Z=[],Y){let J=Z.length?N$.filter((X)=>!Z.includes(X)):N$;if(Y!==void 0)J=J.filter((X)=>{let Q=X.replace(/[$()*+.?[\\\]^{|}-]/g,"\\$&");return new RegExp(`(^|[^\\w$])${Q}(?![\\w$])`).test(Y)});return`${$} { ${J.join(", ")} } = window.stx;`}var N$,C9;var d5=b(()=>{N$=["batch","computed","defineEmits","defineExpose","definePageMeta","defineProps","defineSlots","defineStore","derived","effect","goBack","goForward","navigate","nextTick","onBeforeUnmount","onDestroy","onMount","onMounted","onUnmounted","provide","reactive","ref","registerStoresClient","state","useAsync","useClickOutside","useColorMode","useCookie","useCounter","useDark","useDebounce","useDebouncedValue","useEventListener","useFetch","useFocus","useHead","useId","useInterval","useLocalStorage","useMediaQuery","useMutation","useOptimistic","usePreferredContrast","usePreferredDark","usePreferredLight","usePreferredReducedMotion","useQuery","useReactiveProp","useRef","useRoute","useScrollLock","useSearchParams","useSeoMeta","useSessionStorage","useStore","useThrottle","useTimeout","useToggle","useWebSocket","watch","watchEffect","withDefaults"],C9=["onMount","onDestroy"]});class m5{cache=new Map;maxSize;constructor($=100){this.maxSize=$}get($){if(!this.cache.has($))return;let Z=this.cache.get($);return this.cache.delete($),this.cache.set($,Z),Z}set($,Z){if(this.cache.has($))this.cache.delete($);else if(this.cache.size>=this.maxSize){let Y=this.cache.keys().next().value;if(Y!==void 0)this.cache.delete(Y)}this.cache.set($,Z)}has($){return this.cache.has($)}delete($){return this.cache.delete($)}clear(){this.cache.clear()}get size(){return this.cache.size}keys(){return this.cache.keys()}values(){return this.cache.values()}}function J5($,Z){if(Z?.includes("g"))return new RegExp($,Z);let Y=`${$}:${Z||""}`;if(!Y5.has(Y)){if(Y5.size>=sQ){let J=Y5.keys().next().value;if(J)Y5.delete(J)}Y5.set(Y,new RegExp($,Z))}return Y5.get(Y)}class v9{pool=[];maxPoolSize=10;fnCache=new Map;fnCacheMaxSize=200;getEvaluator($){let Z=Array.from(new Set($)),Y=Z.sort().join(","),J=this.pool.find((K)=>K.context.join(",")===Y);if(J)return J.func;let X=this.fnCache,Q=this.fnCacheMaxSize,G=(...K)=>{return(z)=>{try{let q=`${Y}:${z}`,W=X.get(q);if(!W){if(X.size>=Q){let U=X.keys().next().value;if(U)X.delete(U)}W=Function(...Z,`
749
749
  'use strict';
750
750
  try {
751
751
  return ${z};
@@ -756,33 +756,33 @@ catch (e) {
756
756
  }
757
757
  throw e;
758
758
  }
759
- `),X.set(q,W)}return W(...K)}catch{return}}};if(this.pool.length<this.maxPoolSize)this.pool.push({func:G,context:Z.slice()});return G}clear(){this.pool.length=0,this.fnCache.clear()}}class x9{metrics=new Map;budgets=new Map;violations=[];maxViolations=100;violationHandlers=[];enabled=!0;setEnabled($){this.enabled=$}isEnabled(){return this.enabled}setBudget($,Z){this.budgets.set($,{warnThreshold:0.8,action:"warn",...Z})}setBudgets($){for(let[Z,Y]of Object.entries($))this.setBudget(Z,Y)}removeBudget($){this.budgets.delete($)}getBudgets(){let $={};for(let[Z,Y]of this.budgets.entries())$[Z]=Y;return $}onViolation($){this.violationHandlers.push($)}offViolation($){let Z=this.violationHandlers.indexOf($);if(Z!==-1)this.violationHandlers.splice(Z,1)}time($,Z){if(!this.enabled)return Z();let Y=performance.now(),J=Z(),X=performance.now()-Y;return this.recordTime($,X),this.checkBudget($,X),J}async timeAsync($,Z){if(!this.enabled)return Z();let Y=performance.now(),J=await Z(),X=performance.now()-Y;return this.recordTime($,X),this.checkBudget($,X),J}checkBudget($,Z){let Y=this.budgets.get($);if(!Y)return;let J=Z/Y.maxTime*100,X=Y.warnThreshold!==void 0?Z>=Y.maxTime*Y.warnThreshold&&Z<Y.maxTime:!1,Q=Z>=Y.maxTime;if(!X&&!Q)return;let G={label:$,actualTime:Z,budgetTime:Y.maxTime,exceedancePercent:J,timestamp:new Date,isWarning:X};this.violations.push(G);while(this.violations.length>this.maxViolations)this.violations.shift();for(let z of this.violationHandlers)try{z(G)}catch{}let K=X?`[Performance Warning] "${$}" took ${Z.toFixed(2)}ms (${J.toFixed(1)}% of ${Y.maxTime}ms budget)`:`[Performance Budget Exceeded] "${$}" took ${Z.toFixed(2)}ms (exceeded ${Y.maxTime}ms budget by ${(J-100).toFixed(1)}%)`;switch(Y.action){case"log":console.log(K);break;case"warn":console.warn(K);break;case"error":console.error(K);break;case"throw":if(Q)throw Error(K);else console.warn(K);break}}recordTime($,Z){let Y=this.metrics.get($);if(Y)Y.count++,Y.totalTime+=Z,Y.maxTime=Math.max(Y.maxTime,Z),Y.minTime=Math.min(Y.minTime,Z);else this.metrics.set($,{count:1,totalTime:Z,maxTime:Z,minTime:Z})}getStats($){if($){let Y=this.metrics.get($);if(!Y)return{};let J=this.budgets.get($);return{count:Y.count,avgTime:Y.totalTime/Y.count,totalTime:Y.totalTime,maxTime:Y.maxTime,minTime:Y.minTime,budget:J?.maxTime,budgetUtilization:J?Y.totalTime/Y.count/J.maxTime*100:void 0}}let Z={};for(let[Y,J]of this.metrics.entries()){let X=this.budgets.get(Y);Z[Y]={count:J.count,avgTime:J.totalTime/J.count,totalTime:J.totalTime,maxTime:J.maxTime,minTime:J.minTime,budget:X?.maxTime,budgetUtilization:X?J.totalTime/J.count/X.maxTime*100:void 0}}return Z}getViolations($){if($)return this.violations.filter((Z)=>Z.label===$);return[...this.violations]}getViolationStats(){let $={},Z=0,Y=0;for(let J of this.violations)if($[J.label]=($[J.label]||0)+1,J.isWarning)Z++;else Y++;return{total:this.violations.length,byLabel:$,warnings:Z,errors:Y}}clear(){this.metrics.clear()}clearViolations(){this.violations.length=0}clearBudgets(){this.budgets.clear()}reset(){this.clear(),this.clearViolations(),this.clearBudgets(),this.violationHandlers.length=0}}function rQ(){if(!W7)W7=new x9;return W7}var Y5,sQ=500,d_,W7=null,f9;var X5=b(()=>{Y5=new Map;d_=new v9;f9=new Proxy({},{get($,Z){return rQ()[Z]}})});function g9($,Z=""){let Y=`${$}${Z}`,J=0;for(let X=0;X<Y.length;X++){let Q=Y.charCodeAt(X);J=(J<<5)-J+Q,J=J&J}return`stx-${Math.abs(J).toString(36)}`}function h9($,Z,Y={}){let{prefix:J="",preserveHost:X=!0,scopeKeyframes:Q=!0,scopeCustomProperties:G=!1}=Y;if(!$.trim())return"";let K=U7($),z=[],q=new Map;if(Q)for(let W of K){let U=W.selector.match(/@keyframes\s+([a-z_-][a-z0-9_-]*)/i);if(U){let j=U[1],B=`${Z}_${j}`;q.set(j,B)}}for(let W of K){let U=d9(W,Z,J,X,q,G);z.push(U)}return z.join(`
759
+ `),X.set(q,W)}return W(...K)}catch{return}}};if(this.pool.length<this.maxPoolSize)this.pool.push({func:G,context:Z.slice()});return G}clear(){this.pool.length=0,this.fnCache.clear()}}class x9{metrics=new Map;budgets=new Map;violations=[];maxViolations=100;violationHandlers=[];enabled=!0;setEnabled($){this.enabled=$}isEnabled(){return this.enabled}setBudget($,Z){this.budgets.set($,{warnThreshold:0.8,action:"warn",...Z})}setBudgets($){for(let[Z,Y]of Object.entries($))this.setBudget(Z,Y)}removeBudget($){this.budgets.delete($)}getBudgets(){let $={};for(let[Z,Y]of this.budgets.entries())$[Z]=Y;return $}onViolation($){this.violationHandlers.push($)}offViolation($){let Z=this.violationHandlers.indexOf($);if(Z!==-1)this.violationHandlers.splice(Z,1)}time($,Z){if(!this.enabled)return Z();let Y=performance.now(),J=Z(),X=performance.now()-Y;return this.recordTime($,X),this.checkBudget($,X),J}async timeAsync($,Z){if(!this.enabled)return Z();let Y=performance.now(),J=await Z(),X=performance.now()-Y;return this.recordTime($,X),this.checkBudget($,X),J}checkBudget($,Z){let Y=this.budgets.get($);if(!Y)return;let J=Z/Y.maxTime*100,X=Y.warnThreshold!==void 0?Z>=Y.maxTime*Y.warnThreshold&&Z<Y.maxTime:!1,Q=Z>=Y.maxTime;if(!X&&!Q)return;let G={label:$,actualTime:Z,budgetTime:Y.maxTime,exceedancePercent:J,timestamp:new Date,isWarning:X};this.violations.push(G);while(this.violations.length>this.maxViolations)this.violations.shift();for(let z of this.violationHandlers)try{z(G)}catch{}let K=X?`[Performance Warning] "${$}" took ${Z.toFixed(2)}ms (${J.toFixed(1)}% of ${Y.maxTime}ms budget)`:`[Performance Budget Exceeded] "${$}" took ${Z.toFixed(2)}ms (exceeded ${Y.maxTime}ms budget by ${(J-100).toFixed(1)}%)`;switch(Y.action){case"log":console.log(K);break;case"warn":console.warn(K);break;case"error":console.error(K);break;case"throw":if(Q)throw Error(K);else console.warn(K);break}}recordTime($,Z){let Y=this.metrics.get($);if(Y)Y.count++,Y.totalTime+=Z,Y.maxTime=Math.max(Y.maxTime,Z),Y.minTime=Math.min(Y.minTime,Z);else this.metrics.set($,{count:1,totalTime:Z,maxTime:Z,minTime:Z})}getStats($){if($){let Y=this.metrics.get($);if(!Y)return{};let J=this.budgets.get($);return{count:Y.count,avgTime:Y.totalTime/Y.count,totalTime:Y.totalTime,maxTime:Y.maxTime,minTime:Y.minTime,budget:J?.maxTime,budgetUtilization:J?Y.totalTime/Y.count/J.maxTime*100:void 0}}let Z={};for(let[Y,J]of this.metrics.entries()){let X=this.budgets.get(Y);Z[Y]={count:J.count,avgTime:J.totalTime/J.count,totalTime:J.totalTime,maxTime:J.maxTime,minTime:J.minTime,budget:X?.maxTime,budgetUtilization:X?J.totalTime/J.count/X.maxTime*100:void 0}}return Z}getViolations($){if($)return this.violations.filter((Z)=>Z.label===$);return[...this.violations]}getViolationStats(){let $={},Z=0,Y=0;for(let J of this.violations)if($[J.label]=($[J.label]||0)+1,J.isWarning)Z++;else Y++;return{total:this.violations.length,byLabel:$,warnings:Z,errors:Y}}clear(){this.metrics.clear()}clearViolations(){this.violations.length=0}clearBudgets(){this.budgets.clear()}reset(){this.clear(),this.clearViolations(),this.clearBudgets(),this.violationHandlers.length=0}}function rQ(){if(!W7)W7=new x9;return W7}var Y5,sQ=500,dB,W7=null,f9;var X5=b(()=>{Y5=new Map;dB=new v9;f9=new Proxy({},{get($,Z){return rQ()[Z]}})});function g9($,Z=""){let Y=`${$}${Z}`,J=0;for(let X=0;X<Y.length;X++){let Q=Y.charCodeAt(X);J=(J<<5)-J+Q,J=J&J}return`stx-${Math.abs(J).toString(36)}`}function h9($,Z,Y={}){let{prefix:J="",preserveHost:X=!0,scopeKeyframes:Q=!0,scopeCustomProperties:G=!1}=Y;if(!$.trim())return"";let K=U7($),z=[],q=new Map;if(Q)for(let W of K){let U=W.selector.match(/@keyframes\s+([a-z_-][a-z0-9_-]*)/i);if(U){let j=U[1],_=`${Z}_${j}`;q.set(j,_)}}for(let W of K){let U=d9(W,Z,J,X,q,G);z.push(U)}return z.join(`
760
760
 
761
- `)}function U7($){let Z=[],Y=$.replace(/\/\*[\s\S]*?\*\//g,""),J=0,X="",Q=!1,G="";for(let K=0;K<Y.length;K++){let z=Y[K];if(z==="@"&&J===0)Q=!0;if(z==="{")J++;else if(z==="}"){if(J--,J===0){if(Q){G+=z;let q=G.match(/@([a-z-]+)\s*([^{]*)\{([\s\S]*)\}/i);if(q){let[,W,U,j]=q;if(W==="keyframes")Z.push({selector:`@keyframes ${U.trim()}`,declarations:j.trim()});else if(W==="media"||W==="supports"||W==="container"){let B=U7(j);Z.push({selector:`@${W} ${U.trim()}`,declarations:B.map((_)=>`${_.selector} { ${_.declarations} }`).join(`
761
+ `)}function U7($){let Z=[],Y=$.replace(/\/\*[\s\S]*?\*\//g,""),J=0,X="",Q=!1,G="";for(let K=0;K<Y.length;K++){let z=Y[K];if(z==="@"&&J===0)Q=!0;if(z==="{")J++;else if(z==="}"){if(J--,J===0){if(Q){G+=z;let q=G.match(/@([a-z-]+)\s*([^{]*)\{([\s\S]*)\}/i);if(q){let[,W,U,j]=q;if(W==="keyframes")Z.push({selector:`@keyframes ${U.trim()}`,declarations:j.trim()});else if(W==="media"||W==="supports"||W==="container"){let _=U7(j);Z.push({selector:`@${W} ${U.trim()}`,declarations:_.map((B)=>`${B.selector} { ${B.declarations} }`).join(`
762
762
  `)})}else Z.push({selector:`@${W} ${U.trim()}`,declarations:j.trim()})}G="",Q=!1}else if(X.trim()){X+=z;let q=X.match(/([^{]+)\{([^}]*)\}/);if(q)Z.push({selector:q[1].trim(),declarations:q[2].trim()});X=""}continue}}if(Q)G+=z;else X+=z}return Z}function d9($,Z,Y,J,X,Q){let{selector:G,declarations:K}=$;if(G.startsWith("@")){if(G.startsWith("@keyframes")){let W=G.replace("@keyframes ","").trim();return`@keyframes ${X.get(W)||W} { ${K} }`}if(G.startsWith("@media")||G.startsWith("@supports")||G.startsWith("@container")){let U=U7(`x { ${K} }`.replace(/x \{ /,"").replace(/ \}$/,"")).map((j)=>d9(j,Z,Y,J,X,Q)).join(`
763
763
  `);return`${G} {
764
764
  ${U}
765
- }`}return`${G} { ${K} }`}let z=aQ(G,Z,Y,J),q=K;for(let[W,U]of X)q=q.replace(new RegExp(`\\b${W}\\b`,"g"),U);if(Q)q=q.replace(/--([a-z-]+)/gi,`--${Z}-$1`);return`${z} { ${q} }`}function aQ($,Z,Y,J){let X=$.split(",").map((G)=>G.trim()),Q=[];for(let G of X){if(G.startsWith(":host")){if(J)Q.push(G);else{let q=G.replace(/:host(\([^)]*\))?/,`.${Z}$1`);Q.push(q)}continue}if(G.includes("::slotted")){Q.push(G);continue}if(G===":root"){Q.push(`:root .${Z}`);continue}let K=Y?`${Y} .${Z}`:`.${Z}`;Q.push(`${K} ${G}`);let z=tQ(G,Z);if(z)Q.push(Y?`${Y} ${z}`:z)}return Q.join(", ")}function tQ($,Z){let Y=0,J=$.length;for(let z=0;z<$.length;z++){let q=$[z];if(q==="["||q==="(")Y++;else if(q==="]"||q===")")Y--;else if(Y===0&&(q===" "||q===">"||q==="+"||q==="~")){J=z;break}}let X=$.slice(0,J),Q=$.slice(J);if(!X)return"";let G=X.length,K=0;for(let z=0;z<X.length;z++){let q=X[z];if(q==="["||q==="(")K++;else if(q==="]"||q===")")K--;else if(Y===0&&K===0&&q===":"){G=z;break}}return`${X.slice(0,G)}.${Z}${X.slice(G)}${Q}`}function M$($,Z){if(!eQ.test($))return{html:$,hasScoped:!1};let Y=g9(Z),J=`data-v-${Y}`,X=$,Q=new RegExp(`<style\\s+([^>]*${j7}[^>]*)>([\\s\\S]*?)</style>`,"gi"),G=!1;if(X=X.replace(Q,(K,z,q)=>{G=!0;let W=$G(q,J),U=z.replace(new RegExp(j7,"gi"),"").trim(),j=U?` ${U}`:"";return`<style data-stx-scoped="${Y}"${j}>${W}</style>`}),!G)return{html:$,hasScoped:!1};return X=YG(X,J),{html:X,hasScoped:!0}}function $G($,Z){return h9($,"__SCOPE_PLACEHOLDER__",{preserveHost:!1}).replace(/\.(__SCOPE_PLACEHOLDER__) /g,`[${Z}] `).replace(/\.(__SCOPE_PLACEHOLDER__)/g,`[${Z}]`)}function YG($,Z){let Y=Z1($,(X,Q)=>{let G=H1(X,Q);return G>Q?G:e1(X,Q)},(X,Q)=>ZG(Q)),J=JG(Y.output,Z);return u9.lastIndex=0,J.replace(u9,(X,Q)=>Y.tokens[Number(Q)])}function JG($,Z){let Y=new Set(["script","style","template","html","head","body","meta","link","title","base","!doctype","!DOCTYPE"]);return $.replace(/<([a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*)?\/?>/g,(J,X,Q)=>{if(Y.has(X.toLowerCase()))return J;if(J.includes(Z))return J;if(X.toLowerCase()==="style"||X.toLowerCase()==="script")return J;if(Q)return J.replace(`<${X}${Q}`,`<${X} ${Z}${Q}`);if(J.endsWith("/>"))return`<${X} ${Z} />`;return`<${X} ${Z}>`})}var j7,eQ,ZG=($)=>`\x00stx-scope-mask-${$}\x00`,u9;var B7=b(()=>{C1();j7=String.raw`(?<![\w-])scoped(?![\w-])`,eQ=new RegExp(`<style\\s+[^>]*${j7}`,"i");u9=/\u0000stx-scope-mask-(\d+)\u0000/g});function QG($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return XG.test(Z)}function T$($){m5.lastIndex=0;let Z;while((Z=m5.exec($))!==null){if(Z[0].startsWith("</")||QG(Z[0]))continue;let Y=Z.index,J=m5.lastIndex,X=1,Q;while((Q=m5.exec($))!==null)if(Q[0].startsWith("</")){if(X--,X===0){let G=Q.index;return{start:Y,openEnd:J,closeStart:G,end:m5.lastIndex,content:$.slice(J,G)}}}else X++;return null}return null}var m5,XG;var _7=b(()=>{m5=/<\/?template\b[^>]*>/gi,XG=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i});var m9=()=>{};function v0($,Z,Y,J=0){let X=0,Q=J,G=null,K=0,z=!1;while(Q<$.length){let q=$[Q];if(G&&z){z=!1,Q++;continue}if(G&&q==="\\"){z=!0,Q++;continue}if(z=!1,(q==='"'||q==="'"||q==="`")&&!G){G=q,Q++;continue}if(q===G&&G!=="`"){G=null,Q++;continue}if(G==="`"&&q==="$"&&$[Q+1]==="{"){K++,Q+=2;continue}if(K>0&&q==="}"){K--,Q++;continue}if(q==="`"&&G==="`"&&K===0){G=null,Q++;continue}if(G){Q++;continue}if(q===Z)X++;else if(q===Y){if(X--,X===0)return Q}Q++}return-1}var L7={};e(L7,{useTitle:()=>WG,useSeoMeta:()=>p9,usePageTitle:()=>WG,useHead:()=>O7,seoMetaToHeadConfig:()=>D$,resetHead:()=>zG,renderHtmlAttrs:()=>jG,renderHead:()=>UG,renderBodyAttrs:()=>BG,processTitleDirective:()=>OG,processMetaDirective:()=>LG,processHeadDirective:()=>HG,mergeHeadConfigs:()=>Q5,getPageMeta:()=>KG,getHead:()=>H7,definePageMeta:()=>qG,applyHead:()=>_G});function H7(){return F1}function KG(){return I$}function zG(){F1={},GG.length=0,I$={}}function O7($){F1=Q5(F1,$)}function Q5($,Z){return{title:Z.title??$.title,titleTemplate:Z.titleTemplate??$.titleTemplate,base:Z.base??$.base,meta:[...$.meta||[],...Z.meta||[]],link:[...$.link||[],...Z.link||[]],script:[...$.script||[],...Z.script||[]],style:[...$.style||[],...Z.style||[]],htmlAttrs:{...$.htmlAttrs,...Z.htmlAttrs},bodyAttrs:{...$.bodyAttrs,...Z.bodyAttrs}}}function p9($){O7(D$($))}function D$($){let Z=[];if($.description)Z.push({name:"description",content:$.description});if($.keywords){let z=Array.isArray($.keywords)?$.keywords.join(", "):$.keywords;Z.push({name:"keywords",content:z})}if($.author)Z.push({name:"author",content:$.author});if($.robots)Z.push({name:"robots",content:$.robots});let Y=$.ogTitle??$.title,J=$.ogDescription??$.description;if(Y)Z.push({property:"og:title",content:Y});if(J)Z.push({property:"og:description",content:J});if($.ogImage)Z.push({property:"og:image",content:$.ogImage});if($.ogUrl)Z.push({property:"og:url",content:$.ogUrl});if($.ogType)Z.push({property:"og:type",content:$.ogType});if($.ogSiteName)Z.push({property:"og:site_name",content:$.ogSiteName});if($.ogLocale)Z.push({property:"og:locale",content:$.ogLocale});let X=$.twitterTitle??$.title,Q=$.twitterDescription??$.description,G=$.twitterImage??$.ogImage;if($.twitterCard)Z.push({name:"twitter:card",content:$.twitterCard});if(X)Z.push({name:"twitter:title",content:X});if(Q)Z.push({name:"twitter:description",content:Q});if(G)Z.push({name:"twitter:image",content:G});if($.twitterSite)Z.push({name:"twitter:site",content:$.twitterSite});if($.twitterCreator)Z.push({name:"twitter:creator",content:$.twitterCreator});if($.articleAuthor)Z.push({property:"article:author",content:$.articleAuthor});if($.articlePublishedTime)Z.push({property:"article:published_time",content:$.articlePublishedTime});if($.articleModifiedTime)Z.push({property:"article:modified_time",content:$.articleModifiedTime});if($.articleSection)Z.push({property:"article:section",content:$.articleSection});if($.articleTags)for(let z of $.articleTags)Z.push({property:"article:tag",content:z});let K=[];if($.canonical)K.push({rel:"canonical",href:$.canonical});return{title:$.title,titleTemplate:$.titleTemplate,meta:Z,link:K}}function qG($){if(I$={...I$,...$},$.title||$.description)p9({title:$.title,description:$.description})}function WG($){let Z=typeof $==="function"?$():$;O7({title:Z})}function UG($=F1){let Z=[];if($.title){let Y=$.title;if($.titleTemplate)Y=typeof $.titleTemplate==="function"?$.titleTemplate(Y):$.titleTemplate.replace("%s",Y);Z.push(`<title>${v1(Y)}</title>`)}if($.base){let Y=Object.entries($.base).map(([J,X])=>`${J}="${v1(X)}"`).join(" ");Z.push(`<base ${Y}>`)}for(let Y of $.meta||[]){let J=Object.entries(Y).filter(([X,Q])=>Q!==void 0).map(([X,Q])=>{return`${X==="httpEquiv"?"http-equiv":X}="${v1(String(Q))}"`}).join(" ");Z.push(`<meta ${J}>`)}for(let Y of $.link||[]){let J=Object.entries(Y).filter(([X,Q])=>Q!==void 0).map(([X,Q])=>`${X}="${v1(String(Q))}"`).join(" ");Z.push(`<link ${J}>`)}for(let Y of $.script||[]){let{content:J,...X}=Y,Q=Object.entries(X).filter(([G,K])=>K!==void 0).map(([G,K])=>{if(typeof K==="boolean")return K?G:"";return`${G}="${v1(String(K))}"`}).filter(Boolean).join(" ");if(J)Z.push(`<script ${Q}>${J}</script>`);else Z.push(`<script ${Q}></script>`)}for(let Y of $.style||[]){let J=Y.type?` type="${Y.type}"`:"";Z.push(`<style${J}>${Y.content}</style>`)}return Z.join(`
766
- `)}function jG($=F1){if(!$.htmlAttrs)return"";return Object.entries($.htmlAttrs).map(([Z,Y])=>`${Z}="${v1(Y)}"`).join(" ")}function BG($=F1){if(!$.bodyAttrs)return"";return Object.entries($.bodyAttrs).map(([Z,Y])=>`${Z}="${v1(Y)}"`).join(" ")}function v1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function _G($=F1){if(typeof document>"u")return;if($.title){let Z=$.title;if($.titleTemplate)Z=typeof $.titleTemplate==="function"?$.titleTemplate(Z):$.titleTemplate.replace("%s",Z);document.title=Z}for(let Z of $.meta||[]){let Y=Z.name?`meta[name="${Z.name}"]`:Z.property?`meta[property="${Z.property}"]`:null;if(Y){let J=document.querySelector(Y);if(!J){if(J=document.createElement("meta"),Z.name)J.setAttribute("name",Z.name);if(Z.property)J.setAttribute("property",Z.property);document.head.appendChild(J)}J.setAttribute("content",Z.content)}}for(let Z of $.link||[]){let Y=`link[rel="${Z.rel}"]${Z.href?`[href="${Z.href}"]`:""}`,J=document.querySelector(Y);if(!J)J=document.createElement("link"),document.head.appendChild(J);for(let[X,Q]of Object.entries(Z))if(Q!==void 0)J.setAttribute(X,String(Q))}if($.htmlAttrs)for(let[Z,Y]of Object.entries($.htmlAttrs))document.documentElement.setAttribute(Z,Y);if($.bodyAttrs)for(let[Z,Y]of Object.entries($.bodyAttrs))document.body.setAttribute(Z,Y)}function HG($){let Z="";return{content:$.replace(/@head\s*([\s\S]*?)@endhead/g,(J,X)=>{return Z+=X.trim()+`
765
+ }`}return`${G} { ${K} }`}let z=aQ(G,Z,Y,J),q=K;for(let[W,U]of X)q=q.replace(new RegExp(`\\b${W}\\b`,"g"),U);if(Q)q=q.replace(/--([a-z-]+)/gi,`--${Z}-$1`);return`${z} { ${q} }`}function aQ($,Z,Y,J){let X=$.split(",").map((G)=>G.trim()),Q=[];for(let G of X){if(G.startsWith(":host")){if(J)Q.push(G);else{let q=G.replace(/:host(\([^)]*\))?/,`.${Z}$1`);Q.push(q)}continue}if(G.includes("::slotted")){Q.push(G);continue}if(G===":root"){Q.push(`:root .${Z}`);continue}let K=Y?`${Y} .${Z}`:`.${Z}`;Q.push(`${K} ${G}`);let z=tQ(G,Z);if(z)Q.push(Y?`${Y} ${z}`:z)}return Q.join(", ")}function tQ($,Z){let Y=0,J=$.length;for(let z=0;z<$.length;z++){let q=$[z];if(q==="["||q==="(")Y++;else if(q==="]"||q===")")Y--;else if(Y===0&&(q===" "||q===">"||q==="+"||q==="~")){J=z;break}}let X=$.slice(0,J),Q=$.slice(J);if(!X)return"";let G=X.length,K=0;for(let z=0;z<X.length;z++){let q=X[z];if(q==="["||q==="(")K++;else if(q==="]"||q===")")K--;else if(Y===0&&K===0&&q===":"){G=z;break}}return`${X.slice(0,G)}.${Z}${X.slice(G)}${Q}`}function M$($,Z){if(!eQ.test($))return{html:$,hasScoped:!1};let Y=g9(Z),J=`data-v-${Y}`,X=$,Q=new RegExp(`<style\\s+([^>]*${j7}[^>]*)>([\\s\\S]*?)</style>`,"gi"),G=!1;if(X=X.replace(Q,(K,z,q)=>{G=!0;let W=$G(q,J),U=z.replace(new RegExp(j7,"gi"),"").trim(),j=U?` ${U}`:"";return`<style data-stx-scoped="${Y}"${j}>${W}</style>`}),!G)return{html:$,hasScoped:!1};return X=YG(X,J),{html:X,hasScoped:!0}}function $G($,Z){return h9($,"__SCOPE_PLACEHOLDER__",{preserveHost:!1}).replace(/\.(__SCOPE_PLACEHOLDER__) /g,`[${Z}] `).replace(/\.(__SCOPE_PLACEHOLDER__)/g,`[${Z}]`)}function YG($,Z){let Y=Z1($,(X,Q)=>{let G=H1(X,Q);return G>Q?G:e1(X,Q)},(X,Q)=>ZG(Q)),J=JG(Y.output,Z);return m9.lastIndex=0,J.replace(m9,(X,Q)=>Y.tokens[Number(Q)])}function JG($,Z){let Y=new Set(["script","style","template","html","head","body","meta","link","title","base","!doctype","!DOCTYPE"]);return $.replace(/<([a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*)?\/?>/g,(J,X,Q)=>{if(Y.has(X.toLowerCase()))return J;if(J.includes(Z))return J;if(X.toLowerCase()==="style"||X.toLowerCase()==="script")return J;if(Q)return J.replace(`<${X}${Q}`,`<${X} ${Z}${Q}`);if(J.endsWith("/>"))return`<${X} ${Z} />`;return`<${X} ${Z}>`})}var j7,eQ,ZG=($)=>`\x00stx-scope-mask-${$}\x00`,m9;var _7=b(()=>{C1();j7=String.raw`(?<![\w-])scoped(?![\w-])`,eQ=new RegExp(`<style\\s+[^>]*${j7}`,"i");m9=/\u0000stx-scope-mask-(\d+)\u0000/g});function QG($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return XG.test(Z)}function T$($){u5.lastIndex=0;let Z;while((Z=u5.exec($))!==null){if(Z[0].startsWith("</")||QG(Z[0]))continue;let Y=Z.index,J=u5.lastIndex,X=1,Q;while((Q=u5.exec($))!==null)if(Q[0].startsWith("</")){if(X--,X===0){let G=Q.index;return{start:Y,openEnd:J,closeStart:G,end:u5.lastIndex,content:$.slice(J,G)}}}else X++;return null}return null}var u5,XG;var B7=b(()=>{u5=/<\/?template\b[^>]*>/gi,XG=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i});var u9=()=>{};function v0($,Z,Y,J=0){let X=0,Q=J,G=null,K=0,z=!1;while(Q<$.length){let q=$[Q];if(G&&z){z=!1,Q++;continue}if(G&&q==="\\"){z=!0,Q++;continue}if(z=!1,(q==='"'||q==="'"||q==="`")&&!G){G=q,Q++;continue}if(q===G&&G!=="`"){G=null,Q++;continue}if(G==="`"&&q==="$"&&$[Q+1]==="{"){K++,Q+=2;continue}if(K>0&&q==="}"){K--,Q++;continue}if(q==="`"&&G==="`"&&K===0){G=null,Q++;continue}if(G){Q++;continue}if(q===Z)X++;else if(q===Y){if(X--,X===0)return Q}Q++}return-1}var L7={};e(L7,{useTitle:()=>WG,useSeoMeta:()=>p9,usePageTitle:()=>WG,useHead:()=>O7,seoMetaToHeadConfig:()=>D$,resetHead:()=>zG,renderHtmlAttrs:()=>jG,renderHead:()=>UG,renderBodyAttrs:()=>_G,processTitleDirective:()=>OG,processMetaDirective:()=>LG,processHeadDirective:()=>HG,mergeHeadConfigs:()=>Q5,getPageMeta:()=>KG,getHead:()=>H7,definePageMeta:()=>qG,applyHead:()=>BG});function H7(){return F1}function KG(){return I$}function zG(){F1={},GG.length=0,I$={}}function O7($){F1=Q5(F1,$)}function Q5($,Z){return{title:Z.title??$.title,titleTemplate:Z.titleTemplate??$.titleTemplate,base:Z.base??$.base,meta:[...$.meta||[],...Z.meta||[]],link:[...$.link||[],...Z.link||[]],script:[...$.script||[],...Z.script||[]],style:[...$.style||[],...Z.style||[]],htmlAttrs:{...$.htmlAttrs,...Z.htmlAttrs},bodyAttrs:{...$.bodyAttrs,...Z.bodyAttrs}}}function p9($){O7(D$($))}function D$($){let Z=[];if($.description)Z.push({name:"description",content:$.description});if($.keywords){let z=Array.isArray($.keywords)?$.keywords.join(", "):$.keywords;Z.push({name:"keywords",content:z})}if($.author)Z.push({name:"author",content:$.author});if($.robots)Z.push({name:"robots",content:$.robots});let Y=$.ogTitle??$.title,J=$.ogDescription??$.description;if(Y)Z.push({property:"og:title",content:Y});if(J)Z.push({property:"og:description",content:J});if($.ogImage)Z.push({property:"og:image",content:$.ogImage});if($.ogUrl)Z.push({property:"og:url",content:$.ogUrl});if($.ogType)Z.push({property:"og:type",content:$.ogType});if($.ogSiteName)Z.push({property:"og:site_name",content:$.ogSiteName});if($.ogLocale)Z.push({property:"og:locale",content:$.ogLocale});let X=$.twitterTitle??$.title,Q=$.twitterDescription??$.description,G=$.twitterImage??$.ogImage;if($.twitterCard)Z.push({name:"twitter:card",content:$.twitterCard});if(X)Z.push({name:"twitter:title",content:X});if(Q)Z.push({name:"twitter:description",content:Q});if(G)Z.push({name:"twitter:image",content:G});if($.twitterSite)Z.push({name:"twitter:site",content:$.twitterSite});if($.twitterCreator)Z.push({name:"twitter:creator",content:$.twitterCreator});if($.articleAuthor)Z.push({property:"article:author",content:$.articleAuthor});if($.articlePublishedTime)Z.push({property:"article:published_time",content:$.articlePublishedTime});if($.articleModifiedTime)Z.push({property:"article:modified_time",content:$.articleModifiedTime});if($.articleSection)Z.push({property:"article:section",content:$.articleSection});if($.articleTags)for(let z of $.articleTags)Z.push({property:"article:tag",content:z});let K=[];if($.canonical)K.push({rel:"canonical",href:$.canonical});return{title:$.title,titleTemplate:$.titleTemplate,meta:Z,link:K}}function qG($){if(I$={...I$,...$},$.title||$.description)p9({title:$.title,description:$.description})}function WG($){let Z=typeof $==="function"?$():$;O7({title:Z})}function UG($=F1){let Z=[];if($.title){let Y=$.title;if($.titleTemplate)Y=typeof $.titleTemplate==="function"?$.titleTemplate(Y):$.titleTemplate.replace("%s",Y);Z.push(`<title>${v1(Y)}</title>`)}if($.base){let Y=Object.entries($.base).map(([J,X])=>`${J}="${v1(X)}"`).join(" ");Z.push(`<base ${Y}>`)}for(let Y of $.meta||[]){let J=Object.entries(Y).filter(([X,Q])=>Q!==void 0).map(([X,Q])=>{return`${X==="httpEquiv"?"http-equiv":X}="${v1(String(Q))}"`}).join(" ");Z.push(`<meta ${J}>`)}for(let Y of $.link||[]){let J=Object.entries(Y).filter(([X,Q])=>Q!==void 0).map(([X,Q])=>`${X}="${v1(String(Q))}"`).join(" ");Z.push(`<link ${J}>`)}for(let Y of $.script||[]){let{content:J,...X}=Y,Q=Object.entries(X).filter(([G,K])=>K!==void 0).map(([G,K])=>{if(typeof K==="boolean")return K?G:"";return`${G}="${v1(String(K))}"`}).filter(Boolean).join(" ");if(J)Z.push(`<script ${Q}>${J}</script>`);else Z.push(`<script ${Q}></script>`)}for(let Y of $.style||[]){let J=Y.type?` type="${Y.type}"`:"";Z.push(`<style${J}>${Y.content}</style>`)}return Z.join(`
766
+ `)}function jG($=F1){if(!$.htmlAttrs)return"";return Object.entries($.htmlAttrs).map(([Z,Y])=>`${Z}="${v1(Y)}"`).join(" ")}function _G($=F1){if(!$.bodyAttrs)return"";return Object.entries($.bodyAttrs).map(([Z,Y])=>`${Z}="${v1(Y)}"`).join(" ")}function v1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function BG($=F1){if(typeof document>"u")return;if($.title){let Z=$.title;if($.titleTemplate)Z=typeof $.titleTemplate==="function"?$.titleTemplate(Z):$.titleTemplate.replace("%s",Z);document.title=Z}for(let Z of $.meta||[]){let Y=Z.name?`meta[name="${Z.name}"]`:Z.property?`meta[property="${Z.property}"]`:null;if(Y){let J=document.querySelector(Y);if(!J){if(J=document.createElement("meta"),Z.name)J.setAttribute("name",Z.name);if(Z.property)J.setAttribute("property",Z.property);document.head.appendChild(J)}J.setAttribute("content",Z.content)}}for(let Z of $.link||[]){let Y=`link[rel="${Z.rel}"]${Z.href?`[href="${Z.href}"]`:""}`,J=document.querySelector(Y);if(!J)J=document.createElement("link"),document.head.appendChild(J);for(let[X,Q]of Object.entries(Z))if(Q!==void 0)J.setAttribute(X,String(Q))}if($.htmlAttrs)for(let[Z,Y]of Object.entries($.htmlAttrs))document.documentElement.setAttribute(Z,Y);if($.bodyAttrs)for(let[Z,Y]of Object.entries($.bodyAttrs))document.body.setAttribute(Z,Y)}function HG($){let Z="";return{content:$.replace(/@head\s*([\s\S]*?)@endhead/g,(J,X)=>{return Z+=X.trim()+`
767
767
  `,""}),headContent:Z.trim()}}function OG($,Z){return $.replace(/@title\s*\(\s*(?:(['"`])(.+?)\1|([^)]+))\s*\)/g,(Y,J,X,Q)=>{let G=J?X:Z[(Q||"").trim()]??Q,K=Z.__stx_runtime_head??{};return Z.__stx_runtime_head=Q5(K,{title:G}),""})}function LG($,Z){return $.replace(/@meta\s*\(\s*(['"`])(.+?)\1\s*,\s*(?:(['"`])(.+?)\3|([^)]+))\s*\)/g,(Y,J,X,Q,G,K)=>{let z=Q?G:K,q=Q?z:Z[(z||"").trim()]??z,U=X.includes(":")?{property:X,content:q}:{name:X,content:q},j=Z.__stx_runtime_head??{};return Z.__stx_runtime_head=Q5(j,{meta:[U]}),""})}var F1,GG,I$;var p5=b(()=>{F1={},GG=[],I$={}});var E$={};e(E$,{stripTypeScript:()=>o9,hasVariables:()=>e9,extractVariables:()=>x1,extractScriptFromTemplate:()=>t9,convertToCommonJS:()=>V7});import G5 from"path";import l5 from"process";function FG($){let Z=[],Y=0,J=$.split(`
768
- `);for(let X of J){let Q=Y,G=null,K=!1;for(let z=0;z<X.length;z++){let q=X[z];if(K){K=!1;continue}if(q==="\\"){K=!0;continue}if(G){if(q===G)G=null;continue}if(q==="'"||q==='"'||q==="`"){G=q;continue}if(q==="/"&&z+1<X.length&&X[z+1]==="/")break;if(q==="{")Y++;else if(q==="}")Y--}if(Q===0){let z=X.match(/(?:const|let|var)\s+(\w+)\s*=/);if(z)Z.push(z[1]);else if(/^\s*(?:const|let|var)\s+\w+\s*;?\s*$/.test(X)){let q=X.match(/(?:const|let|var)\s+(\w+)/);if(q)Z.push(q[1])}else{let q=X.match(/(?:const|let|var)\s+(\{[^}]+\}|\[[^\]]+\])\s*=/);if(q){let U=q[1].slice(1,-1).split(",").map((j)=>{let B=j.split(":");return(B.length>1?B[1]:B[0]).trim()}).filter((j)=>/^\w+$/.test(j));Z.push(...U)}}}}return[...new Set(Z)]}function o9($){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 Y(J){if(!J.includes(":"))return J;let X=[],Q="",G=0,K=0,z=null;for(let q=0;q<J.length;q++){let W=J[q];if(z){if(Q+=W,W===z)z=null;continue}if(W==='"'||W==="'"||W==="`"){z=W,Q+=W;continue}if(W==="<")G++;else if(W===">"&&G>0)G--;else if(W==="(")K++;else if(W===")")K--;if(W===","&&G===0&&K===0){X.push(Q),Q="";continue}Q+=W}if(Q)X.push(Q);return X.map((q)=>{let W=q.trim(),U=W.startsWith("..."),j=U?W.slice(3):W,B=-1,_=0;for(let A=0;A<j.length;A++)if(j[A]==="<")_++;else if(j[A]===">")_--;else if(j[A]===":"&&_===0){B=A;break}if(B===-1)return q;let L=j.substring(0,B).trim().replace(/\?$/,""),V=j.substring(B+1),O=-1,F=0;for(let A=0;A<V.length;A++)if(V[A]==="<")F++;else if(V[A]===">")F--;else if(V[A]==="="&&F===0){O=A;break}let w=U?"...":"";if(O!==-1)return`${w}${L} = ${V.substring(O+1).trim()}`;return`${w}${L}`}).join(", ")}Z=Z.replace(/\b(function\s+\w*\s*)\(([^)]*)\)/g,(J,X,Q)=>{if(!Q.includes(":"))return J;return`${X}(${Y(Q)})`});{let J=/\b(function\s+\w*\s*)\(/g,X,Q=[];while((X=J.exec(Z))!==null){let G=X.index+X[0].length-1,K=1,z=G+1,q=0,W=null;while(z<Z.length&&K>0){let B=Z[z];if(W){if(B===W)W=null;z++;continue}if(B==='"'||B==="'"||B==="`"){W=B,z++;continue}if(B==="<")q++;else if(B===">"&&q>0)q--;else if(q===0){if(B==="(")K++;else if(B===")")K--}if(K>0)z++}if(K!==0)continue;let U=Z.substring(G+1,z);if(!U.includes(":"))continue;let j=Y(U);Q.push({start:G+1,end:z,replacement:j})}for(let G=Q.length-1;G>=0;G--){let{start:K,end:z,replacement:q}=Q[G];Z=Z.substring(0,K)+q+Z.substring(z)}}return Z=Z.replace(/\(([^)]*)\)\s*(?::\s*[^=]+)?\s*=>/g,(J,X)=>{if(!X.includes(":"))return J;if(X.includes("{")||X.includes("}"))return J;return`(${X.split(",").map((G)=>{let[K,...z]=G.split("="),q=K.split(":")[0].trim();if(z.length>0)return`${q} = ${z.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,`
768
+ `);for(let X of J){let Q=Y,G=null,K=!1;for(let z=0;z<X.length;z++){let q=X[z];if(K){K=!1;continue}if(q==="\\"){K=!0;continue}if(G){if(q===G)G=null;continue}if(q==="'"||q==='"'||q==="`"){G=q;continue}if(q==="/"&&z+1<X.length&&X[z+1]==="/")break;if(q==="{")Y++;else if(q==="}")Y--}if(Q===0){let z=X.match(/(?:const|let|var)\s+(\w+)\s*=/);if(z)Z.push(z[1]);else if(/^\s*(?:const|let|var)\s+\w+\s*;?\s*$/.test(X)){let q=X.match(/(?:const|let|var)\s+(\w+)/);if(q)Z.push(q[1])}else{let q=X.match(/(?:const|let|var)\s+(\{[^}]+\}|\[[^\]]+\])\s*=/);if(q){let U=q[1].slice(1,-1).split(",").map((j)=>{let _=j.split(":");return(_.length>1?_[1]:_[0]).trim()}).filter((j)=>/^\w+$/.test(j));Z.push(...U)}}}}return[...new Set(Z)]}function o9($){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 Y(J){if(!J.includes(":"))return J;let X=[],Q="",G=0,K=0,z=null;for(let q=0;q<J.length;q++){let W=J[q];if(z){if(Q+=W,W===z)z=null;continue}if(W==='"'||W==="'"||W==="`"){z=W,Q+=W;continue}if(W==="<")G++;else if(W===">"&&G>0)G--;else if(W==="(")K++;else if(W===")")K--;if(W===","&&G===0&&K===0){X.push(Q),Q="";continue}Q+=W}if(Q)X.push(Q);return X.map((q)=>{let W=q.trim(),U=W.startsWith("..."),j=U?W.slice(3):W,_=-1,B=0;for(let A=0;A<j.length;A++)if(j[A]==="<")B++;else if(j[A]===">")B--;else if(j[A]===":"&&B===0){_=A;break}if(_===-1)return q;let L=j.substring(0,_).trim().replace(/\?$/,""),V=j.substring(_+1),O=-1,F=0;for(let A=0;A<V.length;A++)if(V[A]==="<")F++;else if(V[A]===">")F--;else if(V[A]==="="&&F===0){O=A;break}let w=U?"...":"";if(O!==-1)return`${w}${L} = ${V.substring(O+1).trim()}`;return`${w}${L}`}).join(", ")}Z=Z.replace(/\b(function\s+\w*\s*)\(([^)]*)\)/g,(J,X,Q)=>{if(!Q.includes(":"))return J;return`${X}(${Y(Q)})`});{let J=/\b(function\s+\w*\s*)\(/g,X,Q=[];while((X=J.exec(Z))!==null){let G=X.index+X[0].length-1,K=1,z=G+1,q=0,W=null;while(z<Z.length&&K>0){let _=Z[z];if(W){if(_===W)W=null;z++;continue}if(_==='"'||_==="'"||_==="`"){W=_,z++;continue}if(_==="<")q++;else if(_===">"&&q>0)q--;else if(q===0){if(_==="(")K++;else if(_===")")K--}if(K>0)z++}if(K!==0)continue;let U=Z.substring(G+1,z);if(!U.includes(":"))continue;let j=Y(U);Q.push({start:G+1,end:z,replacement:j})}for(let G=Q.length-1;G>=0;G--){let{start:K,end:z,replacement:q}=Q[G];Z=Z.substring(0,K)+q+Z.substring(z)}}return Z=Z.replace(/\(([^)]*)\)\s*(?::\s*[^=]+)?\s*=>/g,(J,X)=>{if(!X.includes(":"))return J;if(X.includes("{")||X.includes("}"))return J;return`(${X.split(",").map((G)=>{let[K,...z]=G.split("="),q=K.split(":")[0].trim();if(z.length>0)return`${q} = ${z.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,`
769
769
 
770
- `),Z}async function x1($,Z,Y,J={}){if(!$.trim())return;let X;try{let P=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()}),v=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");v=v.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,""),X=P.transformSync(v)}catch{X=o9($)}let Q={exports:{}},G=Q.exports,K=l5.cwd(),z={},q=[...X.matchAll(/require\s*\(\s*['"]([^'"]+)['"]\s*\)/g)||[]].map((P)=>P[1]).filter((P)=>!P.startsWith("node:")&&!P.startsWith(".")&&!["fs","path","os","child_process","crypto","http","https","url","util","stream","events","buffer","net","querystring","zlib","tls"].includes(P));for(let P of q)try{let v=G5.resolve(K,"node_modules",P),m=G5.join(v,"package.json"),n=JSON.parse(U0("fs").readFileSync(m,"utf8")),z0=n.main||"index.js";if(n.exports){let H0=typeof n.exports==="string"?n.exports:n.exports["."];if(typeof H0==="string")z0=H0;else if(H0?.bun)z0=H0.bun;else if(H0?.import)z0=H0.import;else if(H0?.default)z0=H0.default}z[P]=await import(G5.resolve(v,z0))}catch{}let W=(P)=>{if(z[P])return z[P];return U0(P)},U=Z.props||{},j=(P)=>{if(!P)return U;let v={};for(let[m,n]of Object.entries(P)){let z0=U[m];if(z0!==void 0)v[m]=z0;else if(typeof n==="function")v[m]=n();else v[m]=n}return v};for(let[P,v]of Object.entries(U))Object.defineProperty(j,P,{value:v,enumerable:!0,configurable:!0,writable:!0});for(let P of["name","length","caller","arguments"]){if(Object.prototype.hasOwnProperty.call(U,P))continue;try{Object.defineProperty(j,P,{value:void 0,enumerable:!1,configurable:!0,writable:!0})}catch{}}let B=(P)=>{if(!P)return U;let v={...U};for(let[m,n]of Object.entries(P)){let z0=n&&typeof n==="object"&&!Array.isArray(n)?n:{type:n};if(v[m]===void 0&&z0.default!==void 0)v[m]=typeof z0.default==="function"?z0.default():z0.default}return v},_=()=>Z.slots||{},H=(P,v)=>{let m={...P};for(let[n,z0]of Object.entries(v))if(m[n]===void 0)if(typeof z0==="function")m[n]=z0();else m[n]=z0;return m},L=(P)=>{let v=()=>P;return v.set=(m)=>{},v.update=(m)=>{},v},V=(P)=>{let v,m=!1;return()=>{if(!m)try{v=P(),m=!0}catch{v=void 0}return v}},O=(P)=>{},F=(P)=>P(),w=(P)=>{},A=(P)=>{},R=(P)=>{},N=()=>{let P=Z.__stxServeContext,v=Z.__stxServeSearch??P?.search??"",m=P?.path??"";return{params:Z.params??{},query:Object.fromEntries(new URLSearchParams(v)),path:m,name:"",fullPath:m+v,hash:"",matched:[]}},M=()=>({push:(P)=>{},replace:(P)=>{},back:()=>{},forward:()=>{},go:(P)=>{}}),T=(P)=>{let v=Z.__stx_runtime_head||{};Z.__stx_runtime_head=Q5(v,P||{})},I=(P)=>{T(D$(P||{}))},E=(P)=>({value:P}),D=(P)=>P,y=(P)=>({value:typeof P==="function"?P():P}),S=(P,v)=>{},k=(P)=>{},C=(P)=>{},x=(P)=>P?P():Promise.resolve(),f=(P)=>(v,...m)=>{},d=(P)=>{},c=(P,v)=>{},p=(P,v)=>v,W0=()=>({value:"light"}),w0=()=>L(!1),_0=(P)=>L(!1),X0=()=>L(!1),I0=()=>_0("(prefers-color-scheme: dark)"),i0=()=>_0("(prefers-color-scheme: light)"),G1=()=>_0("(prefers-reduced-motion: reduce)"),D1=()=>_0("(prefers-contrast: more)"),l={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:{}},a=new Proxy(l,{get(P,v){if(v in P)return P[v];return},set(P,v,m){return P[v]=m,!0}}),h={getElementById:()=>null,querySelector:()=>null,querySelectorAll:()=>[],createElement:()=>({}),createTextNode:()=>({}),body:{},head:{},documentElement:{},addEventListener:()=>{},removeEventListener:()=>{}},u=console;try{let P=V7(X,Y),v=new Set(Object.keys(U)),m=(t)=>/^[a-z_$][\w$]*$/i.test(t),n=Object.keys(Z).filter((t)=>!v.has(t)&&t!=="props"&&m(t)),z0=n.map((t)=>Z[t]),H0=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","let","new","return","super","switch","this","throw","try","typeof","var","void","while","with","yield","enum","await","async","module","exports","require","params","window","document","console","state","derived","effect"]),k0=[],u0=[];for(let[t,$1]of Object.entries(U)){if(!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(t))continue;if(H0.has(t))continue;if(new RegExp(`(?:^|[\\s;{])(?:const|let|var|function)\\s+${t}\\b`).test(P))continue;k0.push(t),u0.push($1)}let j0=FG(P).map((t)=>`module.exports.${t} = typeof ${t} !== 'undefined' ? ${t} : module.exports.${t};`).join(`
771
- `),j1=Z.params??{},n0=[],E1=[];for(let t=0;t<n.length;t++){if(n[t]==="params")continue;n0.push(n[t]),E1.push(z0[t])}let m0=await Function("module","exports","require","props","$props","defineProps","withDefaults","state","derived","effect","batch","onMount","onDestroy","definePageMeta","useRoute","useRouter","useHead","useSeoMeta","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",...k0,...n0,`return (async () => {
770
+ `),Z}async function x1($,Z,Y,J={}){if(!$.trim())return;let X;try{let P=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()}),v=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");v=v.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,""),X=P.transformSync(v)}catch{X=o9($)}let Q={exports:{}},G=Q.exports,K=l5.cwd(),z={},q=[...X.matchAll(/require\s*\(\s*['"]([^'"]+)['"]\s*\)/g)||[]].map((P)=>P[1]).filter((P)=>!P.startsWith("node:")&&!P.startsWith(".")&&!["fs","path","os","child_process","crypto","http","https","url","util","stream","events","buffer","net","querystring","zlib","tls"].includes(P));for(let P of q)try{let v=G5.resolve(K,"node_modules",P),u=G5.join(v,"package.json"),n=JSON.parse(U0("fs").readFileSync(u,"utf8")),z0=n.main||"index.js";if(n.exports){let H0=typeof n.exports==="string"?n.exports:n.exports["."];if(typeof H0==="string")z0=H0;else if(H0?.bun)z0=H0.bun;else if(H0?.import)z0=H0.import;else if(H0?.default)z0=H0.default}z[P]=await import(G5.resolve(v,z0))}catch{}let W=(P)=>{if(z[P])return z[P];return U0(P)},U=Z.props||{},j=(P)=>{if(!P)return U;let v={};for(let[u,n]of Object.entries(P)){let z0=U[u];if(z0!==void 0)v[u]=z0;else if(typeof n==="function")v[u]=n();else v[u]=n}return v};for(let[P,v]of Object.entries(U))Object.defineProperty(j,P,{value:v,enumerable:!0,configurable:!0,writable:!0});for(let P of["name","length","caller","arguments"]){if(Object.prototype.hasOwnProperty.call(U,P))continue;try{Object.defineProperty(j,P,{value:void 0,enumerable:!1,configurable:!0,writable:!0})}catch{}}let _=(P)=>{if(!P)return U;let v={...U};for(let[u,n]of Object.entries(P)){let z0=n&&typeof n==="object"&&!Array.isArray(n)?n:{type:n};if(v[u]===void 0&&z0.default!==void 0)v[u]=typeof z0.default==="function"?z0.default():z0.default}return v},B=()=>Z.slots||{},H=(P,v)=>{let u={...P};for(let[n,z0]of Object.entries(v))if(u[n]===void 0)if(typeof z0==="function")u[n]=z0();else u[n]=z0;return u},L=(P)=>{let v=()=>P;return v.set=(u)=>{},v.update=(u)=>{},v},V=(P)=>{let v,u=!1;return()=>{if(!u)try{v=P(),u=!0}catch{v=void 0}return v}},O=(P)=>{},F=(P)=>P(),w=(P)=>{},A=(P)=>{},R=(P)=>{},N=()=>{let P=Z.__stxServeContext,v=Z.__stxServeSearch??P?.search??"",u=P?.path??"";return{params:Z.params??{},query:Object.fromEntries(new URLSearchParams(v)),path:u,name:"",fullPath:u+v,hash:"",matched:[]}},M=()=>({push:(P)=>{},replace:(P)=>{},back:()=>{},forward:()=>{},go:(P)=>{}}),T=(P)=>{let v=Z.__stx_runtime_head||{};Z.__stx_runtime_head=Q5(v,P||{})},I=(P)=>{T(D$(P||{}))},E=(P)=>({value:P}),D=(P)=>P,y=(P)=>({value:typeof P==="function"?P():P}),S=(P,v)=>{},k=(P)=>{},C=(P)=>{},x=(P)=>P?P():Promise.resolve(),f=(P)=>(v,...u)=>{},d=(P)=>{},c=(P,v)=>{},p=(P,v)=>v,W0=()=>({value:"light"}),w0=()=>L(!1),B0=(P)=>L(!1),X0=()=>L(!1),I0=()=>B0("(prefers-color-scheme: dark)"),i0=()=>B0("(prefers-color-scheme: light)"),G1=()=>B0("(prefers-reduced-motion: reduce)"),D1=()=>B0("(prefers-contrast: more)"),l={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:{}},a=new Proxy(l,{get(P,v){if(v in P)return P[v];return},set(P,v,u){return P[v]=u,!0}}),h={getElementById:()=>null,querySelector:()=>null,querySelectorAll:()=>[],createElement:()=>({}),createTextNode:()=>({}),body:{},head:{},documentElement:{},addEventListener:()=>{},removeEventListener:()=>{}},m=console;try{let P=V7(X,Y),v=new Set(Object.keys(U)),u=(t)=>/^[a-z_$][\w$]*$/i.test(t),n=Object.keys(Z).filter((t)=>!v.has(t)&&t!=="props"&&u(t)),z0=n.map((t)=>Z[t]),H0=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","let","new","return","super","switch","this","throw","try","typeof","var","void","while","with","yield","enum","await","async","module","exports","require","params","window","document","console","state","derived","effect"]),k0=[],m0=[];for(let[t,$1]of Object.entries(U)){if(!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(t))continue;if(H0.has(t))continue;if(new RegExp(`(?:^|[\\s;{])(?:const|let|var|function)\\s+${t}\\b`).test(P))continue;k0.push(t),m0.push($1)}let j0=FG(P).map((t)=>`module.exports.${t} = typeof ${t} !== 'undefined' ? ${t} : module.exports.${t};`).join(`
771
+ `),j1=Z.params??{},n0=[],E1=[];for(let t=0;t<n.length;t++){if(n[t]==="params")continue;n0.push(n[t]),E1.push(z0[t])}let u0=await Function("module","exports","require","props","$props","defineProps","withDefaults","state","derived","effect","batch","onMount","onDestroy","definePageMeta","useRoute","useRouter","useHead","useSeoMeta","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",...k0,...n0,`return (async () => {
772
772
  ${P}
773
773
  ${j0}
774
774
  return module.exports
775
- })()`)(Q,G,W,U,j,B,H,L,V,O,F,w,A,R,N,M,T,I,E,D,y,S,k,C,x,f,d,_,c,p,W0,w0,_0,X0,I0,i0,G1,D1,a,h,u,l.confirm,l.alert,l.fetch,j1,...u0,...E1);if(J.preserveExisting){for(let[t,$1]of Object.entries(m0))if(!(t in Z)||Z[t]===void 0)Z[t]=$1}else Object.assign(Z,m0);for(let[t,$1]of Object.entries(U))if(!(t in Z))Z[t]=$1}catch(P){if(l5.env.STX_DEBUG){let v=P instanceof Error?P.message:String(P);console.warn(`[stx] server <script> did not execute in ${Y??"<unknown>"} \u2014 falling back to static extraction. Cause: ${v}`)}try{await NG(X,Z,Y)}catch(v){if(l5.env.STX_DEBUG){let m=v instanceof Error?v.message:String(v);console.warn(`[stx] fallback extraction also failed in ${Y??"<unknown>"}: ${m}`)}}}}function V7($,Z){let Y=Z?G5.dirname(Z):l5.cwd(),J=$.split(`
776
- `),X=[],Q=0;while(Q<J.length){let G=J[Q].trim();if(G.startsWith("interface ")||G.startsWith("export interface ")||G.startsWith("type ")||G.startsWith("export type ")){if(G.includes("{")&&!G.includes("}")){let K=0;for(;Q<J.length;Q++){for(let z of J[Q])if(z==="{")K++;else if(z==="}")K--;if(K<=0)break}}Q++;continue}if(G.startsWith("definePageMeta(")){let K=0,z=!1;for(let q=Q;q<J.length&&!z;q++){let W=null,U=!1,j=J[q];for(let B=0;B<j.length;B++){let _=j[B];if(U){U=!1;continue}if(_==="\\"){U=!0;continue}if(W){if(_===W)W=null;continue}if(_==='"'||_==="'"||_==="`"){W=_;continue}if(_==="(")K++;else if(_===")"){if(K--,K===0){Q=q+1,z=!0;break}}}}if(!z)Q=J.length;continue}if(G.startsWith("import ")){let K=G.match(/^import\s+(\w+)\s+from\s+['"](.+)['"]/),z=G.match(/^import\s+\{([^}]+)\}\s+from\s+['"](.+)['"]/),q=G.match(/^import\s+['"](.+)['"]/),W=(U)=>{if(U.startsWith("."))return G5.resolve(Y,U);return U};if(K){let[,U,j]=K,B=W(j);X.push(`const ${U} = await import('${B}')`),X.push(`module.exports.${U} = ${U};`)}else if(z){let[,U,j]=z,B=U.trim(),_=W(j);X.push(`const { ${B} } = await import('${_}')`);for(let H of B.split(",")){let L=H.trim().split(/\s+as\s+/).pop()?.trim();if(L)X.push(`module.exports.${L} = ${L};`)}}else if(q){let U=W(q[1]);X.push(`await import('${U}')`)}else X.push(G);Q++;continue}if((G.startsWith("const ")||G.startsWith("let ")||G.startsWith("var ")||G.startsWith("export const ")||G.startsWith("export let ")||G.startsWith("export var "))&&!G.includes("="))X.push(J[Q]),Q++;else if(G.startsWith("export const ")||G.startsWith("export let ")||G.startsWith("export var ")){let K=l9(J,Q),{type:z,name:q,value:W}=K;X.push(`${z} ${q} = ${W};`),X.push(`module.exports.${q} = ${q};`),Q=K.nextIndex}else if(G.startsWith("export function ")||G.startsWith("export async function ")){let K=F7(J,Q);X.push(K.functionCode),X.push(`module.exports.${K.name} = ${K.name};`),Q=K.nextIndex}else if(G.startsWith("const ")||G.startsWith("let ")||G.startsWith("var ")){let K=l9(J,Q),{type:z,name:q,value:W}=K;X.push(`${z} ${q} = ${W};`),X.push(`module.exports.${q} = ${q};`),Q=K.nextIndex}else if(G.startsWith("function ")||G.startsWith("async function ")){let K=F7(J,Q);X.push(K.functionCode),X.push(`module.exports.${K.name} = ${K.name};`),Q=K.nextIndex}else if(G.startsWith("export default function ")||G.startsWith("export default async function ")){let K=J[Q].replace(/^(\s*)export\s+default\s+/,"$1"),z=[...J];z[Q]=K;let q=F7(z,Q);if(X.push(q.functionCode),q.name)X.push(`module.exports.default = ${q.name};`);Q=q.nextIndex}else if(G.startsWith("export default ")){let K=G.replace(/^export\s+default\s+/,"").replace(/;$/,"");X.push(`module.exports.default = ${K};`),Q++}else if(G.startsWith("class ")||G.startsWith("export class ")){let K=G.match(/(?:export\s+)?class\s+(\w+)/);if(K){let z=K[1],q=J[Q].replace(/^export\s+/,""),W=0,U=Q;for(;U<J.length;U++){let j=J[U];for(let B of j)if(B==="{")W++;else if(B==="}")W--;if(U>Q)q+=`
775
+ })()`)(Q,G,W,U,j,_,H,L,V,O,F,w,A,R,N,M,T,I,E,D,y,S,k,C,x,f,d,B,c,p,W0,w0,B0,X0,I0,i0,G1,D1,a,h,m,l.confirm,l.alert,l.fetch,j1,...m0,...E1);if(J.preserveExisting){for(let[t,$1]of Object.entries(u0))if(!(t in Z)||Z[t]===void 0)Z[t]=$1}else Object.assign(Z,u0);for(let[t,$1]of Object.entries(U))if(!(t in Z))Z[t]=$1}catch(P){if(l5.env.STX_DEBUG){let v=P instanceof Error?P.message:String(P);console.warn(`[stx] server <script> did not execute in ${Y??"<unknown>"} \u2014 falling back to static extraction. Cause: ${v}`)}try{await NG(X,Z,Y)}catch(v){if(l5.env.STX_DEBUG){let u=v instanceof Error?v.message:String(v);console.warn(`[stx] fallback extraction also failed in ${Y??"<unknown>"}: ${u}`)}}}}function V7($,Z){let Y=Z?G5.dirname(Z):l5.cwd(),J=$.split(`
776
+ `),X=[],Q=0;while(Q<J.length){let G=J[Q].trim();if(G.startsWith("interface ")||G.startsWith("export interface ")||G.startsWith("type ")||G.startsWith("export type ")){if(G.includes("{")&&!G.includes("}")){let K=0;for(;Q<J.length;Q++){for(let z of J[Q])if(z==="{")K++;else if(z==="}")K--;if(K<=0)break}}Q++;continue}if(G.startsWith("definePageMeta(")){let K=0,z=!1;for(let q=Q;q<J.length&&!z;q++){let W=null,U=!1,j=J[q];for(let _=0;_<j.length;_++){let B=j[_];if(U){U=!1;continue}if(B==="\\"){U=!0;continue}if(W){if(B===W)W=null;continue}if(B==='"'||B==="'"||B==="`"){W=B;continue}if(B==="(")K++;else if(B===")"){if(K--,K===0){Q=q+1,z=!0;break}}}}if(!z)Q=J.length;continue}if(G.startsWith("import ")){let K=G.match(/^import\s+(\w+)\s+from\s+['"](.+)['"]/),z=G.match(/^import\s+\{([^}]+)\}\s+from\s+['"](.+)['"]/),q=G.match(/^import\s+['"](.+)['"]/),W=(U)=>{if(U.startsWith("."))return G5.resolve(Y,U);return U};if(K){let[,U,j]=K,_=W(j);X.push(`const ${U} = await import('${_}')`),X.push(`module.exports.${U} = ${U};`)}else if(z){let[,U,j]=z,_=U.trim(),B=W(j);X.push(`const { ${_} } = await import('${B}')`);for(let H of _.split(",")){let L=H.trim().split(/\s+as\s+/).pop()?.trim();if(L)X.push(`module.exports.${L} = ${L};`)}}else if(q){let U=W(q[1]);X.push(`await import('${U}')`)}else X.push(G);Q++;continue}if((G.startsWith("const ")||G.startsWith("let ")||G.startsWith("var ")||G.startsWith("export const ")||G.startsWith("export let ")||G.startsWith("export var "))&&!G.includes("="))X.push(J[Q]),Q++;else if(G.startsWith("export const ")||G.startsWith("export let ")||G.startsWith("export var ")){let K=l9(J,Q),{type:z,name:q,value:W}=K;X.push(`${z} ${q} = ${W};`),X.push(`module.exports.${q} = ${q};`),Q=K.nextIndex}else if(G.startsWith("export function ")||G.startsWith("export async function ")){let K=F7(J,Q);X.push(K.functionCode),X.push(`module.exports.${K.name} = ${K.name};`),Q=K.nextIndex}else if(G.startsWith("const ")||G.startsWith("let ")||G.startsWith("var ")){let K=l9(J,Q),{type:z,name:q,value:W}=K;X.push(`${z} ${q} = ${W};`),X.push(`module.exports.${q} = ${q};`),Q=K.nextIndex}else if(G.startsWith("function ")||G.startsWith("async function ")){let K=F7(J,Q);X.push(K.functionCode),X.push(`module.exports.${K.name} = ${K.name};`),Q=K.nextIndex}else if(G.startsWith("export default function ")||G.startsWith("export default async function ")){let K=J[Q].replace(/^(\s*)export\s+default\s+/,"$1"),z=[...J];z[Q]=K;let q=F7(z,Q);if(X.push(q.functionCode),q.name)X.push(`module.exports.default = ${q.name};`);Q=q.nextIndex}else if(G.startsWith("export default ")){let K=G.replace(/^export\s+default\s+/,"").replace(/;$/,"");X.push(`module.exports.default = ${K};`),Q++}else if(G.startsWith("class ")||G.startsWith("export class ")){let K=G.match(/(?:export\s+)?class\s+(\w+)/);if(K){let z=K[1],q=J[Q].replace(/^export\s+/,""),W=0,U=Q;for(;U<J.length;U++){let j=J[U];for(let _ of j)if(_==="{")W++;else if(_==="}")W--;if(U>Q)q+=`
777
777
  `+j;if(W<=0&&U>=Q)break}X.push(q),X.push(`module.exports.${z} = ${z};`),Q=U+1}else X.push(G),Q++}else if(G.includes("module.exports"))X.push(G),Q++;else if(G.trim()&&!G.startsWith("//"))X.push(G),Q++;else Q++}return VG(X.join(`
778
778
  `),Y)}function VG($,Z){let Y=$.length,J="",X=0,Q=null,G=!1,K=!1,z=0;while(X<Y){let q=$[X],W=$[X+1];if(G){if(J+=q,q===`
779
- `)G=!1;X++;continue}if(K){if(J+=q,q==="*"&&W==="/"){J+=W,X+=2,K=!1;continue}X++;continue}if(!Q&&q==="/"&&W==="/"){G=!0,J+=q,X++;continue}if(!Q&&q==="/"&&W==="*"){K=!0,J+=q,X++;continue}if(Q){if(J+=q,q==="\\"){J+=W,X+=2;continue}if(q===Q&&Q!=="`"){Q=null,X++;continue}if(Q==="`"){if(q==="$"&&W==="{"){z++,J+=W,X+=2;continue}if(q==="`"){Q=null,X++;continue}}X++;continue}if(z>0){if(q==="{")z++;else if(q==="}")z--}if(q==='"'||q==="'"||q==="`"){Q=q,J+=q,X++;continue}if(q==="a"&&$.startsWith("await",X)){let U=wG($,X);if(U){let{quote:j,path:B,end:_}=U;if(B.startsWith(".")){let H=G5.resolve(Z,B);J+=`await import(${j}${H}${j})`,X=_;continue}}}J+=q,X++}return J}function wG($,Z){let Y=Z+5;if(Y>=$.length)return null;if(!/\s/.test($[Y]))return null;while(Y<$.length&&/\s/.test($[Y]))Y++;if(!$.startsWith("import",Y))return null;Y+=6;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!=="(")return null;Y++;while(Y<$.length&&/\s/.test($[Y]))Y++;let J=$[Y];if(J!=="'"&&J!=='"')return null;Y++;let X=Y;while(Y<$.length&&$[Y]!==J)if($[Y]==="\\")Y+=2;else Y++;if(Y>=$.length)return null;let Q=$.slice(X,Y);Y++;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!==")")return null;return{quote:J,path:Q,end:Y+1}}function s9($,Z){let Y=$[Z];if(Y!=="{"&&Y!=="[")return null;let X=v0($,Y,Y==="{"?"}":"]",Z);if(X===-1)return null;return{pattern:$.slice(Z,X+1),endPos:X+1}}function r9($){let Z=[],Y=$.slice(1,-1).trim();if(!Y)return Z;let J=0,X=0,Q="";while(J<Y.length){let G=Y[J];if(G==="{"||G==="["){if(X++,X===1){let K=s9(Y,J);if(K){let z=r9(K.pattern);Z.push(...z),J=K.endPos,Q="";continue}}}else if(G==="}"||G==="]")X--;if(X>0){J++;continue}if(G===","){if(Q.trim())Z.push(Q.trim());Q="",J++;continue}if(G===":"){Q="",J++;continue}if(G==="="){if(Q.trim())Z.push(Q.trim());Q="",J++;while(J<Y.length&&Y[J]!==","&&X===0){if(Y[J]==="{"||Y[J]==="[")X++;else if(Y[J]==="}"||Y[J]==="]")X--;J++}continue}if(/[\w$]/.test(G))Q+=G;J++}if(Q.trim())Z.push(Q.trim());return Z}function l9($,Z){let Y=$[Z].trim(),J=Y.match(/^(?:export\s+)?(const|let|var)\s+(\w+)\s*=\s*(.*)$/);if(!J){let q=Y.match(/^(?:export\s+)?(const|let|var)\s+/);if(q){let W=Y.slice(q[0].length),U=Z;if((W.startsWith("{")||W.startsWith("["))&&!W.includes(W.startsWith("{")?"}":"]")){let B=W.startsWith("{")?"}":"]",_=W;for(let H=Z+1;H<$.length;H++)if(_+=" "+$[H].trim(),U=H,$[H].includes(B))break;W=_}let j=s9(W,0);if(j){let B=q[1],_=j.pattern,H=W.slice(j.endPos).trim();if(H.startsWith("=")){let L=H.slice(1).trim(),V=L,O=Math.max(U,Z);if(c9(L)){let R=i9($,O,L);V=R.value,O=R.nextIndex}else O=O+1;V=V.trim().replace(/;$/,"");let F=r9(_),w=`__stx_src_${Z}`,A=F.map((R)=>`module.exports.${R} = ${R};`).join(`
780
- `);return{type:B,name:w,value:`${V}; ${B} ${_} = ${w};
779
+ `)G=!1;X++;continue}if(K){if(J+=q,q==="*"&&W==="/"){J+=W,X+=2,K=!1;continue}X++;continue}if(!Q&&q==="/"&&W==="/"){G=!0,J+=q,X++;continue}if(!Q&&q==="/"&&W==="*"){K=!0,J+=q,X++;continue}if(Q){if(J+=q,q==="\\"){J+=W,X+=2;continue}if(q===Q&&Q!=="`"){Q=null,X++;continue}if(Q==="`"){if(q==="$"&&W==="{"){z++,J+=W,X+=2;continue}if(q==="`"){Q=null,X++;continue}}X++;continue}if(z>0){if(q==="{")z++;else if(q==="}")z--}if(q==='"'||q==="'"||q==="`"){Q=q,J+=q,X++;continue}if(q==="a"&&$.startsWith("await",X)){let U=wG($,X);if(U){let{quote:j,path:_,end:B}=U;if(_.startsWith(".")){let H=G5.resolve(Z,_);J+=`await import(${j}${H}${j})`,X=B;continue}}}J+=q,X++}return J}function wG($,Z){let Y=Z+5;if(Y>=$.length)return null;if(!/\s/.test($[Y]))return null;while(Y<$.length&&/\s/.test($[Y]))Y++;if(!$.startsWith("import",Y))return null;Y+=6;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!=="(")return null;Y++;while(Y<$.length&&/\s/.test($[Y]))Y++;let J=$[Y];if(J!=="'"&&J!=='"')return null;Y++;let X=Y;while(Y<$.length&&$[Y]!==J)if($[Y]==="\\")Y+=2;else Y++;if(Y>=$.length)return null;let Q=$.slice(X,Y);Y++;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!==")")return null;return{quote:J,path:Q,end:Y+1}}function s9($,Z){let Y=$[Z];if(Y!=="{"&&Y!=="[")return null;let X=v0($,Y,Y==="{"?"}":"]",Z);if(X===-1)return null;return{pattern:$.slice(Z,X+1),endPos:X+1}}function r9($){let Z=[],Y=$.slice(1,-1).trim();if(!Y)return Z;let J=0,X=0,Q="";while(J<Y.length){let G=Y[J];if(G==="{"||G==="["){if(X++,X===1){let K=s9(Y,J);if(K){let z=r9(K.pattern);Z.push(...z),J=K.endPos,Q="";continue}}}else if(G==="}"||G==="]")X--;if(X>0){J++;continue}if(G===","){if(Q.trim())Z.push(Q.trim());Q="",J++;continue}if(G===":"){Q="",J++;continue}if(G==="="){if(Q.trim())Z.push(Q.trim());Q="",J++;while(J<Y.length&&Y[J]!==","&&X===0){if(Y[J]==="{"||Y[J]==="[")X++;else if(Y[J]==="}"||Y[J]==="]")X--;J++}continue}if(/[\w$]/.test(G))Q+=G;J++}if(Q.trim())Z.push(Q.trim());return Z}function l9($,Z){let Y=$[Z].trim(),J=Y.match(/^(?:export\s+)?(const|let|var)\s+(\w+)\s*=\s*(.*)$/);if(!J){let q=Y.match(/^(?:export\s+)?(const|let|var)\s+/);if(q){let W=Y.slice(q[0].length),U=Z;if((W.startsWith("{")||W.startsWith("["))&&!W.includes(W.startsWith("{")?"}":"]")){let _=W.startsWith("{")?"}":"]",B=W;for(let H=Z+1;H<$.length;H++)if(B+=" "+$[H].trim(),U=H,$[H].includes(_))break;W=B}let j=s9(W,0);if(j){let _=q[1],B=j.pattern,H=W.slice(j.endPos).trim();if(H.startsWith("=")){let L=H.slice(1).trim(),V=L,O=Math.max(U,Z);if(c9(L)){let R=i9($,O,L);V=R.value,O=R.nextIndex}else O=O+1;V=V.trim().replace(/;$/,"");let F=r9(B),w=`__stx_src_${Z}`,A=F.map((R)=>`module.exports.${R} = ${R};`).join(`
780
+ `);return{type:_,name:w,value:`${V}; ${_} ${B} = ${w};
781
781
  ${A}`,nextIndex:O}}}}throw Error(`Failed to parse variable declaration: ${Y}`)}let[,X,Q,G]=J,K=G,z=Z;if(c9(G)){let q=i9($,Z,G);K=q.value,z=q.nextIndex}else z=Z+1;while(z<$.length){let q=$[z].trim();if(q.startsWith(".")||q.startsWith("?."))K+=`
782
782
  ${$[z]}`,z++;else break}return K=K.trim().replace(/;$/,""),{type:X,name:Q,value:K,nextIndex:z}}function F7($,Z){let Y=$[Z].trim(),J=Y.match(/^(?:export\s+)?(?:async\s+)?function\s+(\w+)/);if(!J)throw Error(`Failed to parse function declaration: ${Y}`);let[,X]=J,Q=Y.replace(/^export\s+/,""),G=Z;if(AG(Y)){let K=RG($,Z,Q);Q=K.functionCode,G=K.nextIndex}else G=Z+1;return{name:X,functionCode:Q,nextIndex:G}}function c9($){let Z=$.trim();if(Z.startsWith("{"))return v0(Z,"{","}",0)===-1;if(Z.startsWith("["))return v0(Z,"[","]",0)===-1;return!a9(Z)}function a9($){let Z={paren:0,bracket:0,brace:0},Y=null,J=0;for(let X=0;X<$.length;X++){let Q=$[X];if((X>0?$[X-1]:"")==="\\"&&Y)continue;if((Q==='"'||Q==="'")&&!Y){Y=Q;continue}if(Q===Y&&Y!=="`"){Y=null;continue}if(Q==="`"&&!Y){Y="`";continue}if(Q==="`"&&Y==="`"&&J===0){Y=null;continue}if(Y==="`"&&Q==="$"&&$[X+1]==="{"){J++,X++;continue}if(J>0&&Q==="{"){J++;continue}if(J>0&&Q==="}"){J--;continue}if(Y)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&&Y===null}function AG($){let Z=$.indexOf("{");if(Z===-1)return!0;return v0($,"{","}",Z)===-1}function i9($,Z,Y){let J=Y,X=Z+1;while(X<$.length&&!a9(J)){let Q=$[X];J+=`
783
783
  ${Q}`,X++}while(X<$.length){let Q=$[X].trim();if(Q.startsWith(".")||Q.startsWith("?."))J+=`
784
784
  ${$[X]}`,X++;else break}return{value:J,nextIndex:X}}function RG($,Z,Y){let J=Y,X=Z+1;while(X<$.length){let Q=J.indexOf("{");if(Q!==-1){if(v0(J,"{","}",Q)!==-1)break}let G=$[X];J+=`
785
- ${G}`,X++}return{functionCode:J,nextIndex:X}}function n9($,Z){let Y=Y0($,Z)??Y0(`(${$})`,Z);if(Y!==void 0)return Y;if(!/\bprocess\b/.test($))return;let J={...Z,process:Object.freeze({env:{...l5.env}})};try{return Function(...Object.keys(J),`'use strict'; return (${$});`)(...Object.values(J))}catch{try{return Function(...Object.keys(J),`'use strict'; return ${$};`)(...Object.values(J))}catch{return}}}async function NG($,Z,Y){let J=$.matchAll(/export\s+(const|let|var)\s+(\w+)\s*=\s*([\s\S]*?)(?=\s*(?:export\s+|$))/g);for(let Q of J){let[,,G,K]=Q;try{let z=K.trim().replace(/;$/,""),q=n9(z,Z);if(q!==void 0)Z[G]=q}catch(z){console.warn(`Failed to parse export ${G} in fallback:`,z)}}let X=$.matchAll(/(?:^|\n)\s*(const|let|var)\s+(\w+)\s*=\s*([\s\S]*?)(?=\s*(?:(?:const|let|var|function|export)\s+|$))/g);for(let Q of X){let[,,G,K]=Q;if(!(G in Z))try{let z=K.trim().replace(/;$/,""),q=n9(z,Z);if(q!==void 0)Z[G]=q}catch{}}}function t9($){let Z=$.match(/<script\b[^>]*>([\s\S]*?)<\/script>/i),Y=Z?Z[1]:"",J=Z?$.replace(/<script\b[^>]*>[\s\S]*?<\/script>/i,""):$;return{scriptContent:Y,templateWithoutScript:J}}function e9($){let Z=$.trim();if(!Z)return!1;return/(?:const|let|var|function)\s+\w+/.test(Z)}var c5=b(()=>{p5();b1();A0()});var w7={};e(w7,{renderSlot:()=>Z8,processSlots:()=>J8,parseSlots:()=>$8,parseSlotElement:()=>EG,extractSlotContent:()=>SG,applySlots:()=>yG});function MG($,Z){let Y=1,J=Z,X="<template",Q="</template";while(J<$.length&&Y>0){let G=$.indexOf("<",J);if(G===-1)break;if(J=G,$.startsWith(X,J)&&(J+X.length>=$.length||/[\s>\/]/.test($[J+X.length]))){Y++,J+=X.length;continue}if($.startsWith(Q,J)){let K=$.indexOf(">",J+Q.length);if(K!==-1){if(Y--,Y===0)return K+1;J=K+1;continue}}J++}return Y===0?J:-1}function IG($,Z){let Y=null;for(let J=Z;J<$.length;J++){let X=$[J];if(Y){if(X==="\\"){J++;continue}if(X===Y)Y=null;continue}if(X==='"'||X==="'"){Y=X;continue}if(X===">")return J+1}return-1}function DG($){let Z=[],Y=[],J=/^<template\s+(?:#([a-zA-Z][\w-]*)|v-slot:([a-zA-Z][\w-]*)|slot="([a-zA-Z][\w-]*)")(?:\s*=\s*"([^"]*)")?[^>]*>$/i,X=0;while(X<$.length){let Q=$.indexOf("<",X);if(Q===-1)break;if($.startsWith("<!--",Q)){let j=$.indexOf("-->",Q+4);X=j===-1?$.length:j+3;continue}let G=IG($,Q+1);if(G===-1)break;let K=$.slice(Q,G),z=K.match(/^<\s*(\/?)\s*([a-zA-Z][\w-]*)/);if(!z){X=G;continue}let q=z[1]==="/",W=z[2].toLowerCase();if(q){let j=Y.lastIndexOf(W);if(j!==-1)Y.splice(j);X=G;continue}if(W==="template"&&Y.length===0){let j=K.match(J);if(j){let B=MG($,G);if(B!==-1){let _=j[1]||j[2]||j[3];Z.push({start:Q,end:B,slotName:_,content:$.slice(G,B-11).trim(),propsBinding:j[4]||void 0}),X=B;continue}}}if(!/\/\s*>$/.test(K)&&!TG.has(W)){if(Y.push(W),W==="script"||W==="style"){let j=$.toLowerCase().indexOf(`</${W}>`,G);if(j!==-1){X=j;continue}}}X=G}return Z}function $8($){let Z={default:"",named:new Map},Y=$,J=DG($);for(let z of J)Z.named.set(z.slotName,{name:z.slotName,content:z.content,propsBinding:z.propsBinding});J.sort((z,q)=>q.start-z.start);for(let z of J)Y=Y.slice(0,z.start)+Y.slice(z.end);let X=[],Q=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*)>([\s\S]*?)<\/\1>/gi,G;while((G=Q.exec(Y))!==null){let[z,q,W,U,j,B]=G,_=W.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=j.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),L=(_+H).trim(),V=`<${q}${L?" "+L:""}>${B}</${q}>`;X.push({start:G.index,end:G.index+z.length,slotName:U,element:V})}let K=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*?)\/>/gi;while((G=K.exec(Y))!==null){let[z,q,W,U,j]=G,B=W.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),_=j.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=(B+_).trim(),L=`<${q}${H?" "+H:""} />`;X.push({start:G.index,end:G.index+z.length,slotName:U,element:L})}X.sort((z,q)=>q.start-z.start);for(let z of X){let q=Z.named.get(z.slotName);if(q)q.content+=z.element;else Z.named.set(z.slotName,{name:z.slotName,content:z.element});Y=Y.slice(0,z.start)+Y.slice(z.end)}return Z.default=Y.trim(),Z}function EG($){let Z=$.match(/name\s*=\s*["']([^"']+)["']/),Y=Z?Z[1]:"",J={},X=/:([a-zA-Z][\w-]*)\s*=\s*["']([^"']+)["']/g,Q;while((Q=X.exec($))!==null)J[Q[1]]=Q[2];let G=$.match(/<slot[^>]*>([\s\S]*?)<\/slot>/i),K=G?G[1].trim():"";return{name:Y,props:J,defaultContent:K}}async function Z8($,Z,Y,J){if(!$)return Y;let X=$.content;if($.propsBinding&&Object.keys(Z).length>0){let Q=$.propsBinding.trim(),G={...J};if(Q.startsWith("{")&&Q.endsWith("}")){let K=Q.slice(1,-1).split(",").map((z)=>z.trim()).filter(Boolean);for(let z of K){let[q,W]=z.split(":").map((j)=>j.trim()),U=W||q;if(Z[q]!==void 0)G[U]=Z[q]}}else G[Q]=Z;X=kG(X,G)}return X}function kG($,Z){return $.replace(/\{\{\s*([^}]+)\s*\}\}/g,(Y,J)=>{try{let X=J.trim(),Q=Y8(X,Z);return s0(String(Q??""))}catch{return`{{ ${J} }}`}})}function Y8($,Z){if(/^[a-zA-Z_$][\w$]*(\.[a-zA-Z_$][\w$]*)*$/.test($)){let J=$.split("."),X=Z;for(let Q of J)if(X&&typeof X==="object"&&Q in X)X=X[Q];else return;return X}let Y=$.match(/^([a-zA-Z_$][\w$]*)\s*([+\-*/])\s*(\d+)$/);if(Y){let[,J,X,Q]=Y,G=Z[J],K=parseInt(Q,10);if(typeof G==="number")switch(X){case"+":return G+K;case"-":return G-K;case"*":return G*K;case"/":return G/K}}try{if(!G0($))return;return K0($,Object.keys(Z))(...Object.values(Z))}catch{return}}async function J8($,Z,Y){let J=$;J=await bG(J,/<slot\s+name\s*=\s*["']([^"']+)["']([^>]*?)(?:\/>|>([\s\S]*?)<\/slot>)/gi,async(G,K,z,q)=>{let W=Z.named.get(K),U=q?.trim()||"",j=z||"",B={},_=/:([a-zA-Z_$][\w$-]*)\s*=\s*["']([^"']+)["']/g,H;while((H=_.exec(j))!==null){let L=H[1],V=H[2];B[L]=Y8(V,Y)}return await Z8(W,B,U,Y)});let Q=/<slot\s*(?:\/>|>([\s\S]*?)<\/slot>)/gi;return J=J.replace(Q,(G,K)=>{if(G.includes("name="))return G;let z=K?.trim()||"";return Z.default||z}),J}async function bG($,Z,Y){let J=[],X=[];$.replace(Z,(K,...z)=>{let q=z[z.length-2];return X.push({match:K,index:q}),J.push(Y(K,...z.slice(0,-2))),K});let Q=await Promise.all(J),G=$;for(let K=X.length-1;K>=0;K--){let{match:z,index:q}=X[K];G=G.slice(0,q)+Q[K]+G.slice(q+z.length)}return G}function SG($){let Z=$8($);return{defaultSlot:Z.default,namedSlots:Z.named}}async function yG($,Z,Y,J){return await J8($,{default:Z,named:Y},J)}var TG;var A7=b(()=>{Y1();A0();TG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"])});function V1($,Z){let Y=PG($,Z);return Y.ok?{expression:Y.expression,endPos:Y.endPos}:null}function PG($,Z){let Y=Z;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!=="(")return{ok:!1,reason:"missing-open-paren",pos:Y};let J=v0($,"(",")",Y);if(J===-1)return{ok:!1,reason:"unclosed-paren",pos:Y};return{ok:!0,expression:$.slice(Y+1,J),endPos:J+1}}function CG($,Z){let Y=$.lastIndexOf("<",Z);if(Y===-1)return!1;return Y>$.lastIndexOf(">",Z)}function f1($,Z,Y,J){let X=1,Q=J,G=new RegExp(`@${Z}\\s*\\(`,"g"),K=new RegExp(`@${Y}(?![a-z])`,"g");while(Q<$.length&&X>0){G.lastIndex=Q,K.lastIndex=Q;let z=G.exec($),q=K.exec($),W=z?z.index:1/0,U=q?q.index:1/0;if(W<U)X++,Q=W+z[0].length;else if(U<1/0){if(X--,X===0)return U;Q=U+q[0].length}else break}return-1}function X8($,Z){let Y=$.slice(Z).match(/^@if\s*/);if(!Y)return null;let J=Z+Y[0].length,X=V1($,J);if(!X)return null;let Q=X.endPos,G=f1($,"if","endif",Q);if(G===-1)return null;let K=$.slice(Q,G),z=[],q=0,W="if",U=X.expression,j=0,B=0;while(q<K.length){let _=K.indexOf("@",q);if(_===-1)break;q=_;let H=K.substring(_);if(CG(K,_)){q++;continue}if(/^@if\s*\(/.test(H)){B++,q++;continue}if(/^@endif(?![a-z])/.test(H)){B--,q+=6;continue}if(B===0){let L=H.match(/^@elseif\s*/);if(L){z.push({type:W,condition:U,content:K.substring(j,q),start:Q+j,end:Q+q});let V=q+L[0].length,O=V1(K,V);if(!O){q++;continue}W="elseif",U=O.expression,q=O.endPos,j=q;continue}else if(/^@else(?![a-z])/.test(H)){z.push({type:W,condition:U,content:K.substring(j,q),start:Q+j,end:Q+q}),W="else",U=void 0,q+=5,j=q;continue}}q++}return z.push({type:W,condition:U,content:K.slice(j),start:Q+j,end:Q+K.length}),{fullMatch:$.slice(Z,G+6),branches:z,start:Z,end:G+6}}function i5($){let Z=[],Y=/@if\s*\(/g,J=Y.exec($);while(J!==null){if(Z.some((G)=>J.index>G.start&&J.index<G.end)){J=Y.exec($);continue}let Q=X8($,J.index);if(Q)Z.push(Q),Y.lastIndex=Q.end;J=Y.exec($)}return Z}function k$($,Z,Y){let J=[],X=new RegExp(`@${Z}\\s*\\(`,"g"),Q=X.exec($);while(Q!==null){if(J.some((H)=>Q.index>H.start&&Q.index<H.end)){Q=X.exec($);continue}let K=Q.index,z=K+Q[0].length-1,q=v0($,"(",")",z);if(q===-1){Q=X.exec($);continue}let W=$.slice(z+1,q),U=q+1,j=f1($,Z,Y,U);if(j===-1){Q=X.exec($);continue}let B=$.slice(U,j),_=j+`@${Y}`.length;J.push({fullMatch:$.slice(K,_),name:Z,params:W,content:B,start:K,end:_}),X.lastIndex=_,Q=X.exec($)}return J}function R7($,Z){let Y=$.slice(Z).match(/^@switch\s*/);if(!Y)return null;let J=Z+Y[0].length,X=V1($,J);if(!X)return null;let Q=X.endPos,G=f1($,"switch","endswitch",Q);if(G===-1)return null;let K=$.slice(Q,G),z=[],q=0,W=null,U=0;while(q<K.length){let j=K.slice(q),B=j.match(/^@switch\s*\(/),_=j.match(/^@endswitch(?![a-z])/);if(B){if(U++,W)W.content+=B[0];q+=B[0].length;continue}if(_){if(U--,W)W.content+=_[0];q+=_[0].length;continue}if(U>0){if(W)W.content+=K[q];q++;continue}let H=j.match(/^@case\s*/),L=j.match(/^@default(?![a-z])/),V=j.match(/^@break(?![a-z])/);if(H&&j.startsWith("@case")){if(W)z.push(W);let O=q+H[0].length,F=V1(K,O);if(!F){q++;continue}W={type:"case",value:F.expression,content:""},q=F.endPos}else if(L&&j.startsWith("@default")){if(W)z.push(W);W={type:"default",content:""},q+=L[0].length}else if(V&&j.startsWith("@break"))q+=V[0].length;else{if(W)W.content+=K[q];q++}}if(W)z.push(W);return{fullMatch:$.slice(Z,G+10),expression:X.expression,cases:z,start:Z,end:G+10}}var Q8=()=>{};var G8=()=>{};var b$=b(()=>{Q8();G8()});function P$($){let Z=$,Y=new Set,J=new Set,X=()=>{if(g0)J.add(g0);return Z};return X.set=(Q)=>{if(!Object.is(Q,Z)){let G=Z;if(Z=Q,Y.forEach((K)=>K(Z,G)),n5)J.forEach((K)=>y$.add(K));else J.forEach((K)=>K())}},X.update=(Q)=>{X.set(Q(Z))},X.subscribe=(Q)=>{return Y.add(Q),()=>Y.delete(Q)},Object.defineProperty(X,"_isSignal",{value:!0,writable:!1}),Object.defineProperty(X,"value",{get:()=>X(),set:(Q)=>X.set(Q),configurable:!0}),X}function C$($){let Z,Y=!0,J=new Set,X=()=>{if(!Y)if(Y=!0,n5)J.forEach((G)=>y$.add(G));else J.forEach((G)=>G())},Q=()=>{if(g0)J.add(g0);if(Y){let G=g0;g0=X,S$.push(X);try{Z=$()}finally{S$.pop(),g0=G}Y=!1}return Z};return Object.defineProperty(Q,"_isDerived",{value:!0,writable:!1}),Object.defineProperty(Q,"value",{get:()=>Q(),configurable:!0}),Q}function v$($,Z={}){let Y,J=!1,X=()=>{if(J)return;if(Y)Y(),Y=void 0;let Q=g0;g0=X,S$.push(X);try{Y=$()}finally{S$.pop(),g0=Q}};if(Z.immediate!==!1)X();return()=>{if(J=!0,Y)Y()}}function N7($){if(n5){$();return}n5=!0;try{$()}finally{n5=!1,y$.forEach((Z)=>Z()),y$.clear()}}function M7($){gG.push($)}function T7($){hG.push($)}function x$($){return typeof $==="function"&&$._isSignal===!0}function f$($){return typeof $==="function"&&$._isDerived===!0}function I7($){if(x$($)||f$($))return $();return $}function g$($){let Z=g0;g0=null;try{return $()}finally{g0=Z}}function dG($,Z){let Y=typeof $==="function"?$:()=>$,J=P$([]),X=C$(()=>J().reduce((K,z)=>Z(K,z.action),Y())),Q=!1;return v$(()=>{if(Y(),!Q){Q=!0;return}if(g$(()=>J().length))J.set([])}),[X,(K,z)=>{let q={action:K};J.set([...J(),q]);let W=()=>{let U=J().filter((j)=>j!==q);if(U.length!==J().length)J.set(U)};if(z&&typeof z.then==="function")Promise.resolve(z).then(W,W);return W}]}var g0=null,S$,n5=!1,y$,gG,hG;var D7=b(()=>{S$=[],y$=new Set,gG=[],hG=[]});var z8={};e(z8,{useOptimistic:()=>dG,untrack:()=>I7,state:()=>P$,peek:()=>g$,onMount:()=>M7,onDestroy:()=>T7,isSignal:()=>x$,isDerived:()=>f$,generateSignalsRuntimeDev:()=>h$,generateSignalsRuntime:()=>K8,effect:()=>v$,derived:()=>C$,default:()=>mG,batch:()=>N7});function K8(){try{let $=uG(h$()),Y=new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($);return Y=Y.replace(/\}(var |let |const |function )/g,"};$1"),Y}catch{return h$()}}function uG($){let Z=[],Y=0,J="console.log(";while(Y<$.length){let X=$.indexOf(J,Y);if(X===-1){Z.push($.slice(Y));break}Z.push($.slice(Y,X));let Q=1,G=X+J.length;while(G<$.length&&Q>0){let K=$[G];if(K==='"'||K==="'"||K==="`"){let z=K;G++;while(G<$.length&&$[G]!==z){if($[G]==="\\")G++;G++}G++;continue}if(K==="(")Q++;else if(K===")")Q--;G++}Z.push("0"),Y=G}return Z.join("")}function h$(){return`
785
+ ${G}`,X++}return{functionCode:J,nextIndex:X}}function n9($,Z){let Y=Y0($,Z)??Y0(`(${$})`,Z);if(Y!==void 0)return Y;if(!/\bprocess\b/.test($))return;let J={...Z,process:Object.freeze({env:{...l5.env}})};try{return Function(...Object.keys(J),`'use strict'; return (${$});`)(...Object.values(J))}catch{try{return Function(...Object.keys(J),`'use strict'; return ${$};`)(...Object.values(J))}catch{return}}}async function NG($,Z,Y){let J=$.matchAll(/export\s+(const|let|var)\s+(\w+)\s*=\s*([\s\S]*?)(?=\s*(?:export\s+|$))/g);for(let Q of J){let[,,G,K]=Q;try{let z=K.trim().replace(/;$/,""),q=n9(z,Z);if(q!==void 0)Z[G]=q}catch(z){console.warn(`Failed to parse export ${G} in fallback:`,z)}}let X=$.matchAll(/(?:^|\n)\s*(const|let|var)\s+(\w+)\s*=\s*([\s\S]*?)(?=\s*(?:(?:const|let|var|function|export)\s+|$))/g);for(let Q of X){let[,,G,K]=Q;if(!(G in Z))try{let z=K.trim().replace(/;$/,""),q=n9(z,Z);if(q!==void 0)Z[G]=q}catch{}}}function t9($){let Z=$.match(/<script\b[^>]*>([\s\S]*?)<\/script>/i),Y=Z?Z[1]:"",J=Z?$.replace(/<script\b[^>]*>[\s\S]*?<\/script>/i,""):$;return{scriptContent:Y,templateWithoutScript:J}}function e9($){let Z=$.trim();if(!Z)return!1;return/(?:const|let|var|function)\s+\w+/.test(Z)}var c5=b(()=>{p5();b1();A0()});var w7={};e(w7,{renderSlot:()=>Z8,processSlots:()=>J8,parseSlots:()=>$8,parseSlotElement:()=>EG,extractSlotContent:()=>SG,applySlots:()=>yG});function MG($,Z){let Y=1,J=Z,X="<template",Q="</template";while(J<$.length&&Y>0){let G=$.indexOf("<",J);if(G===-1)break;if(J=G,$.startsWith(X,J)&&(J+X.length>=$.length||/[\s>\/]/.test($[J+X.length]))){Y++,J+=X.length;continue}if($.startsWith(Q,J)){let K=$.indexOf(">",J+Q.length);if(K!==-1){if(Y--,Y===0)return K+1;J=K+1;continue}}J++}return Y===0?J:-1}function IG($,Z){let Y=null;for(let J=Z;J<$.length;J++){let X=$[J];if(Y){if(X==="\\"){J++;continue}if(X===Y)Y=null;continue}if(X==='"'||X==="'"){Y=X;continue}if(X===">")return J+1}return-1}function DG($){let Z=[],Y=[],J=/^<template\s+(?:#([a-zA-Z][\w-]*)|v-slot:([a-zA-Z][\w-]*)|slot="([a-zA-Z][\w-]*)")(?:\s*=\s*"([^"]*)")?[^>]*>$/i,X=0;while(X<$.length){let Q=$.indexOf("<",X);if(Q===-1)break;if($.startsWith("<!--",Q)){let j=$.indexOf("-->",Q+4);X=j===-1?$.length:j+3;continue}let G=IG($,Q+1);if(G===-1)break;let K=$.slice(Q,G),z=K.match(/^<\s*(\/?)\s*([a-zA-Z][\w-]*)/);if(!z){X=G;continue}let q=z[1]==="/",W=z[2].toLowerCase();if(q){let j=Y.lastIndexOf(W);if(j!==-1)Y.splice(j);X=G;continue}if(W==="template"&&Y.length===0){let j=K.match(J);if(j){let _=MG($,G);if(_!==-1){let B=j[1]||j[2]||j[3];Z.push({start:Q,end:_,slotName:B,content:$.slice(G,_-11).trim(),propsBinding:j[4]||void 0}),X=_;continue}}}if(!/\/\s*>$/.test(K)&&!TG.has(W)){if(Y.push(W),W==="script"||W==="style"){let j=$.toLowerCase().indexOf(`</${W}>`,G);if(j!==-1){X=j;continue}}}X=G}return Z}function $8($){let Z={default:"",named:new Map},Y=$,J=DG($);for(let z of J)Z.named.set(z.slotName,{name:z.slotName,content:z.content,propsBinding:z.propsBinding});J.sort((z,q)=>q.start-z.start);for(let z of J)Y=Y.slice(0,z.start)+Y.slice(z.end);let X=[],Q=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*)>([\s\S]*?)<\/\1>/gi,G;while((G=Q.exec(Y))!==null){let[z,q,W,U,j,_]=G,B=W.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=j.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),L=(B+H).trim(),V=`<${q}${L?" "+L:""}>${_}</${q}>`;X.push({start:G.index,end:G.index+z.length,slotName:U,element:V})}let K=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*?)\/>/gi;while((G=K.exec(Y))!==null){let[z,q,W,U,j]=G,_=W.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),B=j.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=(_+B).trim(),L=`<${q}${H?" "+H:""} />`;X.push({start:G.index,end:G.index+z.length,slotName:U,element:L})}X.sort((z,q)=>q.start-z.start);for(let z of X){let q=Z.named.get(z.slotName);if(q)q.content+=z.element;else Z.named.set(z.slotName,{name:z.slotName,content:z.element});Y=Y.slice(0,z.start)+Y.slice(z.end)}return Z.default=Y.trim(),Z}function EG($){let Z=$.match(/name\s*=\s*["']([^"']+)["']/),Y=Z?Z[1]:"",J={},X=/:([a-zA-Z][\w-]*)\s*=\s*["']([^"']+)["']/g,Q;while((Q=X.exec($))!==null)J[Q[1]]=Q[2];let G=$.match(/<slot[^>]*>([\s\S]*?)<\/slot>/i),K=G?G[1].trim():"";return{name:Y,props:J,defaultContent:K}}async function Z8($,Z,Y,J){if(!$)return Y;let X=$.content;if($.propsBinding&&Object.keys(Z).length>0){let Q=$.propsBinding.trim(),G={...J};if(Q.startsWith("{")&&Q.endsWith("}")){let K=Q.slice(1,-1).split(",").map((z)=>z.trim()).filter(Boolean);for(let z of K){let[q,W]=z.split(":").map((j)=>j.trim()),U=W||q;if(Z[q]!==void 0)G[U]=Z[q]}}else G[Q]=Z;X=kG(X,G)}return X}function kG($,Z){return $.replace(/\{\{\s*([^}]+)\s*\}\}/g,(Y,J)=>{try{let X=J.trim(),Q=Y8(X,Z);return s0(String(Q??""))}catch{return`{{ ${J} }}`}})}function Y8($,Z){if(/^[a-zA-Z_$][\w$]*(\.[a-zA-Z_$][\w$]*)*$/.test($)){let J=$.split("."),X=Z;for(let Q of J)if(X&&typeof X==="object"&&Q in X)X=X[Q];else return;return X}let Y=$.match(/^([a-zA-Z_$][\w$]*)\s*([+\-*/])\s*(\d+)$/);if(Y){let[,J,X,Q]=Y,G=Z[J],K=parseInt(Q,10);if(typeof G==="number")switch(X){case"+":return G+K;case"-":return G-K;case"*":return G*K;case"/":return G/K}}try{if(!G0($))return;return K0($,Object.keys(Z))(...Object.values(Z))}catch{return}}async function J8($,Z,Y){let J=$;J=await bG(J,/<slot\s+name\s*=\s*["']([^"']+)["']([^>]*?)(?:\/>|>([\s\S]*?)<\/slot>)/gi,async(G,K,z,q)=>{let W=Z.named.get(K),U=q?.trim()||"",j=z||"",_={},B=/:([a-zA-Z_$][\w$-]*)\s*=\s*["']([^"']+)["']/g,H;while((H=B.exec(j))!==null){let L=H[1],V=H[2];_[L]=Y8(V,Y)}return await Z8(W,_,U,Y)});let Q=/<slot\s*(?:\/>|>([\s\S]*?)<\/slot>)/gi;return J=J.replace(Q,(G,K)=>{if(G.includes("name="))return G;let z=K?.trim()||"";return Z.default||z}),J}async function bG($,Z,Y){let J=[],X=[];$.replace(Z,(K,...z)=>{let q=z[z.length-2];return X.push({match:K,index:q}),J.push(Y(K,...z.slice(0,-2))),K});let Q=await Promise.all(J),G=$;for(let K=X.length-1;K>=0;K--){let{match:z,index:q}=X[K];G=G.slice(0,q)+Q[K]+G.slice(q+z.length)}return G}function SG($){let Z=$8($);return{defaultSlot:Z.default,namedSlots:Z.named}}async function yG($,Z,Y,J){return await J8($,{default:Z,named:Y},J)}var TG;var A7=b(()=>{Y1();A0();TG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"])});function V1($,Z){let Y=PG($,Z);return Y.ok?{expression:Y.expression,endPos:Y.endPos}:null}function PG($,Z){let Y=Z;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!=="(")return{ok:!1,reason:"missing-open-paren",pos:Y};let J=v0($,"(",")",Y);if(J===-1)return{ok:!1,reason:"unclosed-paren",pos:Y};return{ok:!0,expression:$.slice(Y+1,J),endPos:J+1}}function CG($,Z){let Y=$.lastIndexOf("<",Z);if(Y===-1)return!1;return Y>$.lastIndexOf(">",Z)}function f1($,Z,Y,J){let X=1,Q=J,G=new RegExp(`@${Z}\\s*\\(`,"g"),K=new RegExp(`@${Y}(?![a-z])`,"g");while(Q<$.length&&X>0){G.lastIndex=Q,K.lastIndex=Q;let z=G.exec($),q=K.exec($),W=z?z.index:1/0,U=q?q.index:1/0;if(W<U)X++,Q=W+z[0].length;else if(U<1/0){if(X--,X===0)return U;Q=U+q[0].length}else break}return-1}function X8($,Z){let Y=$.slice(Z).match(/^@if\s*/);if(!Y)return null;let J=Z+Y[0].length,X=V1($,J);if(!X)return null;let Q=X.endPos,G=f1($,"if","endif",Q);if(G===-1)return null;let K=$.slice(Q,G),z=[],q=0,W="if",U=X.expression,j=0,_=0;while(q<K.length){let B=K.indexOf("@",q);if(B===-1)break;q=B;let H=K.substring(B);if(CG(K,B)){q++;continue}if(/^@if\s*\(/.test(H)){_++,q++;continue}if(/^@endif(?![a-z])/.test(H)){_--,q+=6;continue}if(_===0){let L=H.match(/^@elseif\s*/);if(L){z.push({type:W,condition:U,content:K.substring(j,q),start:Q+j,end:Q+q});let V=q+L[0].length,O=V1(K,V);if(!O){q++;continue}W="elseif",U=O.expression,q=O.endPos,j=q;continue}else if(/^@else(?![a-z])/.test(H)){z.push({type:W,condition:U,content:K.substring(j,q),start:Q+j,end:Q+q}),W="else",U=void 0,q+=5,j=q;continue}}q++}return z.push({type:W,condition:U,content:K.slice(j),start:Q+j,end:Q+K.length}),{fullMatch:$.slice(Z,G+6),branches:z,start:Z,end:G+6}}function i5($){let Z=[],Y=/@if\s*\(/g,J=Y.exec($);while(J!==null){if(Z.some((G)=>J.index>G.start&&J.index<G.end)){J=Y.exec($);continue}let Q=X8($,J.index);if(Q)Z.push(Q),Y.lastIndex=Q.end;J=Y.exec($)}return Z}function k$($,Z,Y){let J=[],X=new RegExp(`@${Z}\\s*\\(`,"g"),Q=X.exec($);while(Q!==null){if(J.some((H)=>Q.index>H.start&&Q.index<H.end)){Q=X.exec($);continue}let K=Q.index,z=K+Q[0].length-1,q=v0($,"(",")",z);if(q===-1){Q=X.exec($);continue}let W=$.slice(z+1,q),U=q+1,j=f1($,Z,Y,U);if(j===-1){Q=X.exec($);continue}let _=$.slice(U,j),B=j+`@${Y}`.length;J.push({fullMatch:$.slice(K,B),name:Z,params:W,content:_,start:K,end:B}),X.lastIndex=B,Q=X.exec($)}return J}function R7($,Z){let Y=$.slice(Z).match(/^@switch\s*/);if(!Y)return null;let J=Z+Y[0].length,X=V1($,J);if(!X)return null;let Q=X.endPos,G=f1($,"switch","endswitch",Q);if(G===-1)return null;let K=$.slice(Q,G),z=[],q=0,W=null,U=0;while(q<K.length){let j=K.slice(q),_=j.match(/^@switch\s*\(/),B=j.match(/^@endswitch(?![a-z])/);if(_){if(U++,W)W.content+=_[0];q+=_[0].length;continue}if(B){if(U--,W)W.content+=B[0];q+=B[0].length;continue}if(U>0){if(W)W.content+=K[q];q++;continue}let H=j.match(/^@case\s*/),L=j.match(/^@default(?![a-z])/),V=j.match(/^@break(?![a-z])/);if(H&&j.startsWith("@case")){if(W)z.push(W);let O=q+H[0].length,F=V1(K,O);if(!F){q++;continue}W={type:"case",value:F.expression,content:""},q=F.endPos}else if(L&&j.startsWith("@default")){if(W)z.push(W);W={type:"default",content:""},q+=L[0].length}else if(V&&j.startsWith("@break"))q+=V[0].length;else{if(W)W.content+=K[q];q++}}if(W)z.push(W);return{fullMatch:$.slice(Z,G+10),expression:X.expression,cases:z,start:Z,end:G+10}}var Q8=()=>{};var G8=()=>{};var b$=b(()=>{Q8();G8()});function P$($){let Z=$,Y=new Set,J=new Set,X=()=>{if(g0)J.add(g0);return Z};return X.set=(Q)=>{if(!Object.is(Q,Z)){let G=Z;if(Z=Q,Y.forEach((K)=>K(Z,G)),n5)J.forEach((K)=>y$.add(K));else J.forEach((K)=>K())}},X.update=(Q)=>{X.set(Q(Z))},X.subscribe=(Q)=>{return Y.add(Q),()=>Y.delete(Q)},Object.defineProperty(X,"_isSignal",{value:!0,writable:!1}),Object.defineProperty(X,"value",{get:()=>X(),set:(Q)=>X.set(Q),configurable:!0}),X}function C$($){let Z,Y=!0,J=new Set,X=()=>{if(!Y)if(Y=!0,n5)J.forEach((G)=>y$.add(G));else J.forEach((G)=>G())},Q=()=>{if(g0)J.add(g0);if(Y){let G=g0;g0=X,S$.push(X);try{Z=$()}finally{S$.pop(),g0=G}Y=!1}return Z};return Object.defineProperty(Q,"_isDerived",{value:!0,writable:!1}),Object.defineProperty(Q,"value",{get:()=>Q(),configurable:!0}),Q}function v$($,Z={}){let Y,J=!1,X=()=>{if(J)return;if(Y)Y(),Y=void 0;let Q=g0;g0=X,S$.push(X);try{Y=$()}finally{S$.pop(),g0=Q}};if(Z.immediate!==!1)X();return()=>{if(J=!0,Y)Y()}}function N7($){if(n5){$();return}n5=!0;try{$()}finally{n5=!1,y$.forEach((Z)=>Z()),y$.clear()}}function M7($){gG.push($)}function T7($){hG.push($)}function x$($){return typeof $==="function"&&$._isSignal===!0}function f$($){return typeof $==="function"&&$._isDerived===!0}function I7($){if(x$($)||f$($))return $();return $}function g$($){let Z=g0;g0=null;try{return $()}finally{g0=Z}}function dG($,Z){let Y=typeof $==="function"?$:()=>$,J=P$([]),X=C$(()=>J().reduce((K,z)=>Z(K,z.action),Y())),Q=!1;return v$(()=>{if(Y(),!Q){Q=!0;return}if(g$(()=>J().length))J.set([])}),[X,(K,z)=>{let q={action:K};J.set([...J(),q]);let W=()=>{let U=J().filter((j)=>j!==q);if(U.length!==J().length)J.set(U)};if(z&&typeof z.then==="function")Promise.resolve(z).then(W,W);return W}]}var g0=null,S$,n5=!1,y$,gG,hG;var D7=b(()=>{S$=[],y$=new Set,gG=[],hG=[]});var z8={};e(z8,{useOptimistic:()=>dG,untrack:()=>I7,state:()=>P$,peek:()=>g$,onMount:()=>M7,onDestroy:()=>T7,isSignal:()=>x$,isDerived:()=>f$,generateSignalsRuntimeDev:()=>h$,generateSignalsRuntime:()=>K8,effect:()=>v$,derived:()=>C$,default:()=>uG,batch:()=>N7});function K8(){try{let $=mG(h$()),Y=new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($);return Y=Y.replace(/\}(var |let |const |function )/g,"};$1"),Y}catch{return h$()}}function mG($){let Z=[],Y=0,J="console.log(";while(Y<$.length){let X=$.indexOf(J,Y);if(X===-1){Z.push($.slice(Y));break}Z.push($.slice(Y,X));let Q=1,G=X+J.length;while(G<$.length&&Q>0){let K=$[G];if(K==='"'||K==="'"||K==="`"){let z=K;G++;while(G<$.length&&$[G]!==z){if($[G]==="\\")G++;G++}G++;continue}if(K==="(")Q++;else if(K===")")Q--;G++}Z.push("0"),Y=G}return Z.join("")}function h$(){return`
786
786
  // STX Signals Runtime (Development Build)
787
787
  console.log('[stx] signals runtime loading');
788
788
  // Pre-initialization shim: capture onMount/onDestroy calls made before the runtime IIFE runs
@@ -2704,7 +2704,10 @@ catch (e) {
2704
2704
  }
2705
2705
  }
2706
2706
  if (el.nodeType === Node.TEXT_NODE) {
2707
- const text = el.textContent;
2707
+ // DOM textContent is specified as a string, but lightweight DOM
2708
+ // implementations and user-created nodes can retain a numeric value
2709
+ // assigned by a binding. Normalize before interpolation detection.
2710
+ const text = el.textContent == null ? '' : String(el.textContent);
2708
2711
  if (text && text.includes('{{')) {
2709
2712
  const parts = text.split(/(\\{\\{[\\s\\S]+?\\}\\})/g);
2710
2713
  if (parts.length > 1) {
@@ -3614,13 +3617,24 @@ else if (typeof value === 'string') {
3614
3617
  var __forComponentSetupFactories = new Map();
3615
3618
 
3616
3619
  function forEachGroupElement(nodes, callback) {
3617
- nodes.forEach(function(node) {
3620
+ function visit(node, insideTemplateContent) {
3618
3621
  if (!node || node.nodeType !== Node.ELEMENT_NODE) return;
3619
- callback(node);
3620
- if (node.querySelectorAll) {
3621
- node.querySelectorAll('*').forEach(function(child) { callback(child); });
3622
- }
3623
- });
3622
+ callback(node, insideTemplateContent);
3623
+
3624
+ // HTMLTemplateElement children live in template.content, outside the
3625
+ // element's ordinary descendant tree. Component roots and setup scripts
3626
+ // wrapped by caller-owned :if/:for directives must still be discoverable
3627
+ // for scope remapping before those templates are cloned.
3628
+ var entersTemplateContent = node.tagName === 'TEMPLATE' && node.content;
3629
+ var childRoot = entersTemplateContent
3630
+ ? node.content
3631
+ : node;
3632
+ Array.from(childRoot.childNodes || []).forEach(function(child) {
3633
+ visit(child, insideTemplateContent || entersTemplateContent);
3634
+ });
3635
+ }
3636
+
3637
+ nodes.forEach(function(node) { visit(node, false); });
3624
3638
  }
3625
3639
 
3626
3640
  // A signal component expanded inside <template :for> carries a compiled
@@ -3668,7 +3682,11 @@ else if (typeof value === 'string') {
3668
3682
  function hydrateComponentScopes(nodes, callerScope) {
3669
3683
  var roots = [];
3670
3684
  var scripts = [];
3671
- forEachGroupElement(nodes, function(node) {
3685
+ forEachGroupElement(nodes, function(node, insideTemplateContent) {
3686
+ // A template's content is inert source material. Remapping must traverse
3687
+ // it, but setup and event hydration belong to the live clones inserted by
3688
+ // bindIf/bindFor, where the correct iteration scope is available.
3689
+ if (insideTemplateContent) return;
3672
3690
  if (node.hasAttribute && node.hasAttribute('data-stx-scope')) roots.push(node);
3673
3691
  if (node.tagName === 'SCRIPT' && node.hasAttribute('data-stx-scoped')) scripts.push(node);
3674
3692
  });
@@ -7302,13 +7320,13 @@ catch (e) { console.warn('[stx] mount callback error:', e); }
7302
7320
  }
7303
7321
  }
7304
7322
  })();
7305
- `}var mG;var q8=b(()=>{D7();D7();mG={state:P$,derived:C$,effect:v$,batch:N7,onMount:M7,onDestroy:T7,isSignal:x$,isDerived:f$,untrack:I7,peek:g$,generateSignalsRuntime:K8,generateSignalsRuntimeDev:h$}});var E7={};e(E7,{templateCache:()=>W8,readFileCached:()=>pG,invalidateFileCacheByDir:()=>cG,invalidateFileCache:()=>lG,hashFilePath:()=>o5,getCachedSignalsRuntime:()=>oG,getCachedRouterScript:()=>sG,clearDevCaches:()=>rG,checkCache:()=>aG,cacheTemplate:()=>tG,__setSignalsGeneratorsForTest:()=>nG});import w1 from"fs";import K5 from"path";async function pG($){let Y;for(let J=0;J<3;J++)try{let Q=(await w1.promises.stat($)).mtime.getTime(),G=g1.get($);if(G&&G.mtime===Q)return G.content;let K=await Bun.file($).text(),q=(await w1.promises.stat($)).mtime.getTime();if(q!==Q)continue;return g1.set($,{content:K,mtime:q}),K}catch(X){Y=X;break}throw g1.delete($),Error(`File not found: ${$}${Y?` (${Y.message})`:""}`)}function lG($){g1.delete($)}function cG($){for(let Z of g1.keys())if(Z.startsWith($))g1.delete(Z)}function nG($){U8=$}async function oG($=!1){let Z=U8??await Promise.resolve().then(() => (q8(),z8));if($)return Z.generateSignalsRuntimeDev();if(d$===null)d$=Z.generateSignalsRuntime();return d$}async function sG(){if(u$===null){let{getRouterScript:$}=await import("stx-router");u$=$()}return u$}function rG(){g1.clear(),B8(),d$=null,iG=null,u$=null}function j8($){let Z={debug:$.debug===!0,middleware:($.middleware??[]).map((Y)=>({name:Y.name,timing:Y.timing,handler:String(Y.handler)})),customDirectives:($.customDirectives??[]).map((Y)=>({name:Y.name,hasEndTag:Y.hasEndTag===!0,handler:String(Y.handler)}))};return new Bun.CryptoHasher("sha1").update(JSON.stringify(Z)).digest("hex")}async function aG($,Z){try{if(!Z.cachePath)return null;let Y=K5.resolve(Z.cachePath),J=K5.join(Y,`${o5($)}.html`),X=K5.join(Y,`${o5($)}.meta.json`);if(!await o(J)||!await o(X))return null;let Q=await Bun.file(X).text(),G=JSON.parse(Q);if(G.cacheVersion!==Z.cacheVersion)return null;if(G.optionsSignature!==j8(Z))return null;if((await w1.promises.stat($)).mtime.getTime()>G.mtime)return null;for(let z of G.dependencies)if(await o(z)){if((await w1.promises.stat(z)).mtime.getTime()>G.mtime)return null}else return null;return await Bun.file(J).text()}catch(Y){return console.warn(`Cache error for ${$}:`,Y),null}}async function tG($,Z,Y,J){try{if(!J.cachePath)return;let X=K5.resolve(J.cachePath);await w1.promises.mkdir(X,{recursive:!0});let Q=K5.join(X,`${o5($)}.html`),G=K5.join(X,`${o5($)}.meta.json`),K=await w1.promises.stat($);await Bun.write(Q,Z);let z={sourcePath:$,mtime:K.mtime.getTime(),dependencies:Array.from(Y),cacheVersion:J.cacheVersion,optionsSignature:j8(J),generatedAt:Date.now()};await Bun.write(G,JSON.stringify(z,null,2)),W8.set($,{output:Z,mtime:K.mtime.getTime(),dependencies:Y})}catch(X){console.warn(`Failed to cache template ${$}:`,X)}}function o5($){return new Bun.CryptoHasher("sha1").update($).digest("hex").substring(0,eG)}var W8,g1,d$=null,iG=null,U8=null,u$=null,eG=16;var k7=b(()=>{N0();W8=new Map,g1=new Map});function _8($){if($.includes("window.StacksBrowser")||$.includes("StacksBrowser ="))return $;let Z=/<script\b(?![^>]*\bserver\b)[^>]*>([\s\S]*?)<\/script>/gi,Y="",J;while((J=Z.exec($))!==null)Y+=J[1]+`
7323
+ `}var uG;var q8=b(()=>{D7();D7();uG={state:P$,derived:C$,effect:v$,batch:N7,onMount:M7,onDestroy:T7,isSignal:x$,isDerived:f$,untrack:I7,peek:g$,generateSignalsRuntime:K8,generateSignalsRuntimeDev:h$}});var E7={};e(E7,{templateCache:()=>W8,readFileCached:()=>pG,invalidateFileCacheByDir:()=>cG,invalidateFileCache:()=>lG,hashFilePath:()=>o5,getCachedSignalsRuntime:()=>oG,getCachedRouterScript:()=>sG,clearDevCaches:()=>rG,checkCache:()=>aG,cacheTemplate:()=>tG,__setSignalsGeneratorsForTest:()=>nG});import w1 from"fs";import K5 from"path";async function pG($){let Y;for(let J=0;J<3;J++)try{let Q=(await w1.promises.stat($)).mtime.getTime(),G=g1.get($);if(G&&G.mtime===Q)return G.content;let K=await Bun.file($).text(),q=(await w1.promises.stat($)).mtime.getTime();if(q!==Q)continue;return g1.set($,{content:K,mtime:q}),K}catch(X){Y=X;break}throw g1.delete($),Error(`File not found: ${$}${Y?` (${Y.message})`:""}`)}function lG($){g1.delete($)}function cG($){for(let Z of g1.keys())if(Z.startsWith($))g1.delete(Z)}function nG($){U8=$}async function oG($=!1){let Z=U8??await Promise.resolve().then(() => (q8(),z8));if($)return Z.generateSignalsRuntimeDev();if(d$===null)d$=Z.generateSignalsRuntime();return d$}async function sG(){if(m$===null){let{getRouterScript:$}=await import("stx-router");m$=$()}return m$}function rG(){g1.clear(),_8(),d$=null,iG=null,m$=null}function j8($){let Z={debug:$.debug===!0,middleware:($.middleware??[]).map((Y)=>({name:Y.name,timing:Y.timing,handler:String(Y.handler)})),customDirectives:($.customDirectives??[]).map((Y)=>({name:Y.name,hasEndTag:Y.hasEndTag===!0,handler:String(Y.handler)}))};return new Bun.CryptoHasher("sha1").update(JSON.stringify(Z)).digest("hex")}async function aG($,Z){try{if(!Z.cachePath)return null;let Y=K5.resolve(Z.cachePath),J=K5.join(Y,`${o5($)}.html`),X=K5.join(Y,`${o5($)}.meta.json`);if(!await o(J)||!await o(X))return null;let Q=await Bun.file(X).text(),G=JSON.parse(Q);if(G.cacheVersion!==Z.cacheVersion)return null;if(G.optionsSignature!==j8(Z))return null;if((await w1.promises.stat($)).mtime.getTime()>G.mtime)return null;for(let z of G.dependencies)if(await o(z)){if((await w1.promises.stat(z)).mtime.getTime()>G.mtime)return null}else return null;return await Bun.file(J).text()}catch(Y){return console.warn(`Cache error for ${$}:`,Y),null}}async function tG($,Z,Y,J){try{if(!J.cachePath)return;let X=K5.resolve(J.cachePath);await w1.promises.mkdir(X,{recursive:!0});let Q=K5.join(X,`${o5($)}.html`),G=K5.join(X,`${o5($)}.meta.json`),K=await w1.promises.stat($);await Bun.write(Q,Z);let z={sourcePath:$,mtime:K.mtime.getTime(),dependencies:Array.from(Y),cacheVersion:J.cacheVersion,optionsSignature:j8(J),generatedAt:Date.now()};await Bun.write(G,JSON.stringify(z,null,2)),W8.set($,{output:Z,mtime:K.mtime.getTime(),dependencies:Y})}catch(X){console.warn(`Failed to cache template ${$}:`,X)}}function o5($){return new Bun.CryptoHasher("sha1").update($).digest("hex").substring(0,eG)}var W8,g1,d$=null,iG=null,U8=null,m$=null,eG=16;var k7=b(()=>{N0();W8=new Map,g1=new Map});function B8($){if($.includes("window.StacksBrowser")||$.includes("StacksBrowser ="))return $;let Z=/<script\b(?![^>]*\bserver\b)[^>]*>([\s\S]*?)<\/script>/gi,Y="",J;while((J=Z.exec($))!==null)Y+=J[1]+`
7306
7324
  `;let X=/\{\{([\s\S]*?)\}\}/g;while((J=X.exec($))!==null)Y+=J[1]+`
7307
7325
  `;if(!Y.trim())return $;let G=["browserQuery","BrowserQueryBuilder","configureBrowser","createBrowserModel","debounce","throttle","retry","sleep","wait","delay","waitUntil","waitWhile","lazy","clamp","rand","readableSize","useDocumentVisibility","useIntervalFn"].some((j)=>{return new RegExp(`\\b${j}\\b`).test(Y)}),K=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"]),z=/\b([A-Z][a-zA-Z0-9]*)\s*\.\s*(all|find|first|get|where|orderBy|orderByDesc|limit|select|pluck|create|update|delete)\s*\(/g,q,W=!1;while((q=z.exec(Y))!==null)if(!K.has(q[1])){W=!0;break}if(!G&&!W)return $;let U=`<script type="module">
7308
7326
  // STX: Auto-load @stacksjs/browser (auto-initializes API and loads models)
7309
7327
  import '@stacksjs/browser'
7310
- </script>`;if($.includes("</head>")){let j=$.indexOf("</head>"),_=$.slice(0,j).indexOf("<script");if(_!==-1)return $.slice(0,_)+U+`
7311
- `+$.slice(_);return $.replace("</head>",`${U}
7328
+ </script>`;if($.includes("</head>")){let j=$.indexOf("</head>"),B=$.slice(0,j).indexOf("<script");if(B!==-1)return $.slice(0,B)+U+`
7329
+ `+$.slice(B);return $.replace("</head>",`${U}
7312
7330
  </head>`)}if($.includes("<body"))return $.replace(/<body([^>]*)>/,`<body$1>
7313
7331
  ${U}`);return U+`
7314
7332
  `+$}async function H8($,Z){if($.includes("window.stx.state")||$.includes("STX Signals Runtime"))return $;if(Z.buildMode==="compile"){let K=$.indexOf("<script");if(K!==-1)return $.slice(0,K)+`<script data-stx-runtime src="/__stx/runtime.__STX_HASH__.js"></script>
@@ -7320,32 +7338,32 @@ ${U}`);return U+`
7320
7338
  `+X+$.slice(K+1)}return X+`
7321
7339
  `+$}async function b7($,Z){if(!$.includes("</body>"))return $;if($.includes("__stxRouter)return")||$.includes("__stxRouter=true"))return $;let Y=Z?.router,J="";if(Y){let K={};if(Y.container)K.container=Y.container;if(Y.interceptAllLinks!==void 0)K.interceptAllLinks=Y.interceptAllLinks;if(Y.progress!==void 0)K.progress=Y.progress;if(Y.viewTransitions!==void 0)K.viewTransitions=Y.viewTransitions;if(Y.viewTransitionDuration!==void 0)K.viewTransitionDuration=Y.viewTransitionDuration;if(Y.viewTransitionEasing!==void 0)K.viewTransitionEasing=Y.viewTransitionEasing;if(Y.scrollToTop!==void 0)K.scrollToTop=Y.scrollToTop;if(Y.prefetch!==void 0)K.prefetch=Y.prefetch;if(Y.cache!==void 0)K.cache=Y.cache;if(Y.progressColor!==void 0)K.progressColor=Y.progressColor;if(Y.progressHeight!==void 0)K.progressHeight=Y.progressHeight;if(Object.keys(K).length>0)J=`<script>window.__stxRouterConfig=${JSON.stringify(K)};</script>
7322
7340
  `}let{getCachedRouterScript:X}=await Promise.resolve().then(() => (k7(),E7)),Q=Z?.buildMode==="compile"?'<script src="/__stx/router.__STX_HASH__.js"></script>':`<script>${await X()}</script>`,G=$.lastIndexOf("</body>");return $.slice(0,G)+J+Q+`
7323
- </body>`+$.slice(G+7)}var c$={};e(c$,{scanScriptTags:()=>R8,rewriteStxImportSpecifiers:()=>I8,processSignals:()=>v7,processScriptSetup:()=>M8,preEvalLiteralReactiveIfs:()=>P7,parseLoopExpression:()=>N8,hasSignalsSyntax:()=>l$,findMarkupIndexOutsideScripts:()=>p$,extractExports:()=>T8,convertSignalLoopsToAttributes:()=>C7,convertSignalDirectivesToAttributes:()=>y7});function R8($,Z={}){let Y=[];for(let J of z7($,H1)){let X=J.token.match(/^<script\b([^>]*)>/i),Q=J.token.match(/<\/script\s*>$/i);if(!X||!Q)continue;let G=X[1];if(Z.skipAttrs){if(Z.skipAttrs.lastIndex=0,Z.skipAttrs.test(G))continue}let K=X[0].length,z=J.token.length-Q[0].length;Y.push({fullMatch:J.token,attrs:G,body:J.token.slice(K,z),start:J.start,end:J.end})}return Y}function N8($){let Z=$.trim(),Y=Z.match(/^([\s\S]+?)\s+as\s+(.+)$/);if(Y){let X=Y[1].trim(),Q=Y[2].trim(),{itemVar:G,indexVar:K}=L8(Q);if(G)return{style:"as",iterable:X,itemVar:G,indexVar:K}}let J=Z.match(/^(\([^)]+\)|\w+(?:\s*,\s*\w+)?)\s+(?:in|of)\s+([\s\S]+)$/);if(J){let X=J[1].trim(),Q=J[2].trim(),{itemVar:G,indexVar:K}=L8(X);if(G)return{style:"in",iterable:Q,itemVar:G,indexVar:K}}return{style:"unknown",iterable:null,itemVar:null,indexVar:null}}function L8($){let Z=$.trim(),Y=Z.match(/^(\w+)\s*=>\s*(\w+)$/);if(Y)return{itemVar:Y[2],indexVar:Y[1]};let J=Z.match(/^\(\s*(\w+)(?:\s*,\s*(\w+))?\s*\)$/);if(J)return{itemVar:J[1],indexVar:J[2]||null};let X=Z.match(/^(\w+)\s*,\s*(\w+)$/);if(X)return{itemVar:X[1],indexVar:X[2]};let Q=Z.match(/^(\w+)$/);if(Q)return{itemVar:Q[1],indexVar:null};return{itemVar:null,indexVar:null}}function l$($){return[/@if\s*=/,/@for\s*=/,/@show\s*=/,/@model\s*=/,/@bind:/,/@class\s*=/,/@style\s*=/,/\bx-data\s*=/,/\bstate\s*(?:<[^>]*>)?\s*\(/,/\bderived\s*(?:<[^>]*>)?\s*\(/,/\beffect\s*(?:<[^>]*>)?\s*\(/,/\bref\s*(?:<[^>]*>)?\s*\(/,/\bcomputed\s*(?:<[^>]*>)?\s*\(/,/\breactive\s*(?:<[^>]*>)?\s*\(/,/\bwatch\s*(?:<[^>]*>)?\s*\(/,/\bwatchEffect\s*(?:<[^>]*>)?\s*\(/,/\buseId\s*\(/,/\buseReactiveProp\s*(?:<[^>]*>)?\s*\(/,/\s:(?:if|else-if|else|for|show|text|html|model)\s*=/,/data-stx(?:-auto)?(?![-\w])/,/data-stx-scoped/].some((Y)=>Y.test($))}function ZK($){let Z=/@(if\s*\(|endif|elseif\s*\(|else\b)/g,Y=0,J;while((J=Z.exec($))!==null){let X=J[1];if(X.startsWith("if"))Y++;else if(X==="endif")Y--;else if(Y===0)return!0}return!1}function YK($){let Z=new Set,Y=/<script\b(?![^>]*\bserver\b)(?![^>]*\bsrc\s*=)[^>]*>([\s\S]*?)<\/script>/gi,J=/\b(?:const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=\s*(?:state|derived|computed|ref|reactive|signal)\s*(?:<[^>]*>)?\s*\(/g,X;while((X=Y.exec($))!==null){let Q=X[1],G;while((G=J.exec(Q))!==null)Z.add(G[1])}return Z}function JK($){return $.replace(/'(?:\\.|[^'\\])*'/g,"''").replace(/"(?:\\.|[^"\\])*"/g,'""').replace(/`(?:\\.|[^`\\])*`/g,"``")}function V8($,Z,Y){if(!$)return!1;let J=JK($),X=!1,Q=!1,G=!1,K=/([a-zA-Z_$][\w$]*)/g,z;while((z=K.exec(J))!==null){let j=z[1];if(J.slice(0,z.index).trimEnd().endsWith("."))continue;if(F8.has(j))continue;if(Z.has(j))X=!0;else if(Y&&j in Y)Q=!0}let q=/([a-zA-Z_$][\w$]*)(?:\.[a-zA-Z_$][\w$]*)*\s*\(\s*\)/g,W;while((W=q.exec(J))!==null){let j=W[1];if(J.slice(0,W.index).trimEnd().endsWith("."))continue;if(F8.has(j)||Y&&j in Y)continue;G=!0}return(X||G)&&!Q}function m$($,Z,Y){let J=Y===void 0?` ${Z}`:` ${Z}="${Y.replace(/"/g,"&quot;")}"`,X=$.trim(),Q=X.match(A8);if(Q&&XK(Q[3],Q[1])){let[,G,K,z]=Q;return`<${G}${K}${J}>${z}</${G}>`}return`<template${J}>${X}</template>`}function XK($,Z){let Y=new RegExp(`<(/)?${Z}(?=[\\s/>])`,"gi"),J=0,X;while((X=Y.exec($))!==null)if(X[1]){if(J--,J<0)return!1}else J++;return!0}function y7($,Z){let Y=YK($);function J(X){let Q=X,G=/@if\s*\(/g,K,z=[];while((K=G.exec(Q))!==null){let q=K.index,W=q+K[0].length,U=1,j=W;while(j<Q.length&&U>0){if(Q[j]==="(")U++;else if(Q[j]===")")U--;j++}if(U!==0)continue;let B=Q.substring(W,j-1).trim(),_=j,H=1,L=_,V=/@(if\s*\(|endif)/g;V.lastIndex=_;let O;while((O=V.exec(Q))!==null)if(O[1].startsWith("if"))H++;else if(O[1]==="endif"){if(H--,H===0){L=O.index+O[0].length;break}}if(H!==0)continue;let F=Q.substring(_,L-6).trim(),w;if(ZK(F)){let A=i5(Q.substring(q,L));if(A.length===0)continue;let R=A[0].branches.filter((T)=>T.type!=="else");if(!(R.length>0&&R.every((T)=>V8(T.condition,Y,Z))))continue;w=A[0].branches.map((T)=>{let I=J(T.content);if(T.type==="elseif")return m$(I,"@else-if",T.condition??"");if(T.type==="else")return m$(I,"@else");return m$(I,"@if",T.condition??"")}).join(`
7324
- `)}else{if(!V8(B,Y,Z))continue;w=m$(J(F),"@if",B)}z.push({start:q,end:L,replacement:w}),G.lastIndex=L}for(let q=z.length-1;q>=0;q--){let{start:W,end:U,replacement:j}=z[q];Q=Q.substring(0,W)+j+Q.substring(U)}return Q}return J($)}function QK($){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 X=Number(Z);return X!==0&&!Number.isNaN(X)}let Y=Z.match(/^'((?:\\.|[^'\\])*)'$/);if(Y)return Y[1].length>0;let J=Z.match(/^"((?:\\.|[^"\\])*)"$/);if(J)return J[1].length>0;return}function GK($,Z,Y,J){if(S7.has(Y.toLowerCase()))return J;let X=Y.toLowerCase(),Q=$.toLowerCase(),G=$.length,K=1,z=J;while(z<G){let q=$.indexOf("<",z);if(q===-1)return-1;if(z=q,$.startsWith("<!--",z)){let B=$.indexOf("-->",z+4);if(B===-1)return-1;z=B+3;continue}let W=/^<(script|style)\b/i.exec($.slice(z,z+8));if(W){let B=$.indexOf(">",z);if(B===-1)return-1;if($[B-1]==="/"){z=B+1;continue}let _=Q.indexOf(`</${W[1].toLowerCase()}`,z);if(_===-1)return-1;let H=$.indexOf(">",_);if(H===-1)return-1;z=H+1;continue}if($[z+1]==="/"){let B=/^<\/([a-z][\w-]*)\s*>/i.exec($.slice(z,z+64));if(!B){z++;continue}if(B[1].toLowerCase()===X){if(K--,z+=B[0].length,K===0)return z;continue}z+=B[0].length;continue}let U=/^<([a-z][\w-]*)\b/i.exec($.slice(z,z+64));if(!U){z++;continue}let j=$.indexOf(">",z);if(j===-1)return-1;if(U[1].toLowerCase()===X){let B=$.slice(z,j+1);if(!(/\/\s*>$/.test(B)||S7.has(X)))K++}z=j+1}return-1}function zK($,Z){let Y=Z,J=$.length;for(;;){while(Y<J&&$[Y]!=="<")Y++;if(Y>=J)return!1;if($.startsWith("<!--",Y)){let G=$.indexOf("-->",Y+4);if(G===-1)return!1;Y=G+3;continue}break}if($[Y+1]==="/")return!1;let X=$.indexOf(">",Y);if(X===-1)return!1;let Q=$.slice(Y,X+1);return KK.test(Q)}function P7($){if(!$.includes(":if")&&!$.includes(":show")&&!$.includes("x-if")&&!$.includes("x-show")&&!$.includes("@if=")&&!$.includes("@show="))return $;let Z=[],Y=/<(script|style)\b[^>]*>[\s\S]*?<\/\1\s*>/gi,J;while((J=Y.exec($))!==null)Z.push([J.index,J.index+J[0].length]);let X=(U)=>Z.some(([j,B])=>U>=j&&U<B),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=[],K;while((K=Q.exec($))!==null){if(X(K.index))continue;let[U,j,B,_,H,L,V]=K,O=QK(H);if(O===void 0)continue;let F=K.index,w=F+U.length,N=!!V||/\/\s*>$/.test(U)||S7.has(j.toLowerCase())?w:GK($,F,j,w);if(N===-1)continue;if((_===":if"||_==="x-if"||_==="@if")&&zK($,N)){Q.lastIndex=w;continue}if(O===!0){let T=`<${j}${B}${L}${V}>`;G.push({start:F,end:w,replacement:T});continue}G.push({start:F,end:N,replacement:""}),Q.lastIndex=N}if(G.length===0)return $;G.sort((U,j)=>U.start-j.start);let z=[],q=-1;for(let U of G){if(U.start<q)continue;z.push(U),q=U.end}let W=$;for(let U=z.length-1;U>=0;U--){let{start:j,end:B,replacement:_}=z[U];W=W.substring(0,j)+_+W.substring(B)}return W}function C7($,Z){let Y=$,J=/@(for|foreach)\s*\(/g,X,Q=[];while((X=J.exec(Y))!==null){let G=X[1],K=X.index,z=K+X[0].length,q=1,W=z;while(W<Y.length&&q>0){if(Y[W]==="(")q++;else if(Y[W]===")")q--;W++}if(q!==0)continue;let U=Y.substring(z,W-1).trim(),j=W,B=N8(U);if(B.iterable){let R=B.iterable.trim();if(R.startsWith("[")||R.startsWith("{")||R.startsWith("'")||R.startsWith('"')||R.startsWith("`")||/^-?\d/.test(R))continue;if(Z){let N=R.split(/[.[(]/)[0].trim();if(N&&N in Z)continue}}if(B.style==="as")U=B.indexVar?`(${B.itemVar}, ${B.indexVar}) in ${B.iterable}`:`${B.itemVar} in ${B.iterable}`;let _=G==="for"?"@endfor":"@endforeach",H=1,L=j,V=G==="for"?new RegExp("@(for(?!each)\\s*\\(|endfor(?!each))","g"):new RegExp(`@(${G}\\s*\\(|end${G})`,"g");V.lastIndex=j;let O;while((O=V.exec(Y))!==null)if(O[1].startsWith(G))H++;else if(H--,H===0){L=O.index+O[0].length;break}if(H!==0)continue;let F=Y.substring(j,L-_.length).trim(),w=F.match(A8),A;if(w){let[,R,N,M]=w;A=`<${R}${N} @for="${U}">${M}</${R}>`}else A=`<template @for="${U}">${F}</template>`;Q.push({start:K,end:L,replacement:A})}for(let G=Q.length-1;G>=0;G--){let{start:K,end:z,replacement:q}=Q[G];Y=Y.substring(0,K)+q+Y.substring(z)}return Y}function qK($){let Z=new Set,Y=[],J=0,X=0,Q=$.length,G=(W)=>{let U=J+1;while(U<Q){let j=$[U];if(j==="\\"){U+=2;continue}if(j===W)return U+1;U++}return Q},K=()=>{let W=J+2;while(W<Q&&$[W]!==`
7325
- `)W++;return W},z=()=>{let W=J+2;while(W<Q-1){if($[W]==="*"&&$[W+1]==="/")return W+2;W++}return Q},q=(W)=>{let U=W,j=0;while(U<Q){let B=$[U];if(B==="/"&&$[U+1]==="/"){let _=U+2;while(_<Q&&$[_]!==`
7326
- `)_++;U=_;continue}if(B==="/"&&$[U+1]==="*"){let _=U+2;while(_<Q-1&&!($[_]==="*"&&$[_+1]==="/"))_++;U=_+2;continue}if(B==='"'||B==="'"||B==="`"){let _=U+1;while(_<Q){if($[_]==="\\"){_+=2;continue}if($[_]===B){_++;break}_++}U=_;continue}if(B==="("||B==="["||B==="{"){j++,U++;continue}if(B===")"||B==="]"||B==="}"){j--,U++;continue}if(B===";"&&j===0)return U+1;U++}return Q};while(J<Q){let W=$[J];if(W==="/"&&$[J+1]==="/"){let U=K();Y.push($.slice(J,U)),J=U;continue}if(W==="/"&&$[J+1]==="*"){let U=z();Y.push($.slice(J,U)),J=U;continue}if(W==='"'||W==="'"||W==="`"){let U=G(W);Y.push($.slice(J,U)),J=U;continue}if(W==="{"){X++,Y.push(W),J++;continue}if(W==="}"){X--,Y.push(W),J++;continue}if(X===0){let U=J>0?$[J-1]:"";if(U===""||/\s/.test(U)||U===";"||U==="}"||U==="{"){let B=$.slice(J).match(/^(const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=/);if(B){let _=B[2],H=q(J+B[0].length);if(Z.has(_)){Y.push(`/* stx: deduped const ${_} */`),J=H;continue}Z.add(_),Y.push($.slice(J,H)),J=H;continue}}}Y.push(W),J++}return Y.join("")}async function M8($,Z,Y){let J=R8($,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b/}),X=/\b(?:state|derived|effect|ref|reactive|computed|watch|watchEffect|useStore|useLocalStorage|useSessionStorage|useCookie|useId|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=[];for(let L of J){let V=L.body;if(y1(L.attrs))V=P1(V);if(X.test(V))Q.push({fullMatch:L.fullMatch,attrs:L.attrs,content:V})}if(Q.length===0)return{output:$,setupCode:null};let G=`__stx_setup_${Date.now()}_${$K++}`,{hasUserImports:K,bundleClientScript:z}=await Promise.resolve().then(() => (S5(),b5)),q=[];for(let L=0;L<Q.length;L++){let V=Q[L].content;if(V=t1(V).code,K(V))console.log("[stx:bundler] bundling signal script imports"),V=await z(V,Z||"",{projectRoot:process.cwd()});V=V.replace(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm,(F,w)=>I8(w));let O=o0(V);q.push(`// \u2500\u2500 merged signal script #${L+1} \u2500\u2500
7341
+ </body>`+$.slice(G+7)}var c$={};e(c$,{scanScriptTags:()=>R8,rewriteStxImportSpecifiers:()=>I8,processSignals:()=>v7,processScriptSetup:()=>M8,preEvalLiteralReactiveIfs:()=>P7,parseLoopExpression:()=>N8,hasSignalsSyntax:()=>l$,findMarkupIndexOutsideScripts:()=>p$,extractExports:()=>T8,convertSignalLoopsToAttributes:()=>C7,convertSignalDirectivesToAttributes:()=>y7});function R8($,Z={}){let Y=[];for(let J of z7($,H1)){let X=J.token.match(/^<script\b([^>]*)>/i),Q=J.token.match(/<\/script\s*>$/i);if(!X||!Q)continue;let G=X[1];if(Z.skipAttrs){if(Z.skipAttrs.lastIndex=0,Z.skipAttrs.test(G))continue}let K=X[0].length,z=J.token.length-Q[0].length;Y.push({fullMatch:J.token,attrs:G,body:J.token.slice(K,z),start:J.start,end:J.end})}return Y}function N8($){let Z=$.trim(),Y=Z.match(/^([\s\S]+?)\s+as\s+(.+)$/);if(Y){let X=Y[1].trim(),Q=Y[2].trim(),{itemVar:G,indexVar:K}=L8(Q);if(G)return{style:"as",iterable:X,itemVar:G,indexVar:K}}let J=Z.match(/^(\([^)]+\)|\w+(?:\s*,\s*\w+)?)\s+(?:in|of)\s+([\s\S]+)$/);if(J){let X=J[1].trim(),Q=J[2].trim(),{itemVar:G,indexVar:K}=L8(X);if(G)return{style:"in",iterable:Q,itemVar:G,indexVar:K}}return{style:"unknown",iterable:null,itemVar:null,indexVar:null}}function L8($){let Z=$.trim(),Y=Z.match(/^(\w+)\s*=>\s*(\w+)$/);if(Y)return{itemVar:Y[2],indexVar:Y[1]};let J=Z.match(/^\(\s*(\w+)(?:\s*,\s*(\w+))?\s*\)$/);if(J)return{itemVar:J[1],indexVar:J[2]||null};let X=Z.match(/^(\w+)\s*,\s*(\w+)$/);if(X)return{itemVar:X[1],indexVar:X[2]};let Q=Z.match(/^(\w+)$/);if(Q)return{itemVar:Q[1],indexVar:null};return{itemVar:null,indexVar:null}}function l$($){return[/@if\s*=/,/@for\s*=/,/@show\s*=/,/@model\s*=/,/@bind:/,/@class\s*=/,/@style\s*=/,/\bx-data\s*=/,/\bstate\s*(?:<[^>]*>)?\s*\(/,/\bderived\s*(?:<[^>]*>)?\s*\(/,/\beffect\s*(?:<[^>]*>)?\s*\(/,/\bref\s*(?:<[^>]*>)?\s*\(/,/\bcomputed\s*(?:<[^>]*>)?\s*\(/,/\breactive\s*(?:<[^>]*>)?\s*\(/,/\bwatch\s*(?:<[^>]*>)?\s*\(/,/\bwatchEffect\s*(?:<[^>]*>)?\s*\(/,/\buseId\s*\(/,/\buseReactiveProp\s*(?:<[^>]*>)?\s*\(/,/\s:(?:if|else-if|else|for|show|text|html|model)\s*=/,/data-stx(?:-auto)?(?![-\w])/,/data-stx-scoped/].some((Y)=>Y.test($))}function ZK($){let Z=/@(if\s*\(|endif|elseif\s*\(|else\b)/g,Y=0,J;while((J=Z.exec($))!==null){let X=J[1];if(X.startsWith("if"))Y++;else if(X==="endif")Y--;else if(Y===0)return!0}return!1}function YK($){let Z=new Set,Y=/<script\b(?![^>]*\bserver\b)(?![^>]*\bsrc\s*=)[^>]*>([\s\S]*?)<\/script>/gi,J=/\b(?:const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=\s*(?:state|derived|computed|ref|reactive|signal)\s*(?:<[^>]*>)?\s*\(/g,X;while((X=Y.exec($))!==null){let Q=X[1],G;while((G=J.exec(Q))!==null)Z.add(G[1])}return Z}function JK($){return $.replace(/'(?:\\.|[^'\\])*'/g,"''").replace(/"(?:\\.|[^"\\])*"/g,'""').replace(/`(?:\\.|[^`\\])*`/g,"``")}function V8($,Z,Y){if(!$)return!1;let J=JK($),X=!1,Q=!1,G=!1,K=/([a-zA-Z_$][\w$]*)/g,z;while((z=K.exec(J))!==null){let j=z[1];if(J.slice(0,z.index).trimEnd().endsWith("."))continue;if(F8.has(j))continue;if(Z.has(j))X=!0;else if(Y&&j in Y)Q=!0}let q=/([a-zA-Z_$][\w$]*)(?:\.[a-zA-Z_$][\w$]*)*\s*\(\s*\)/g,W;while((W=q.exec(J))!==null){let j=W[1];if(J.slice(0,W.index).trimEnd().endsWith("."))continue;if(F8.has(j)||Y&&j in Y)continue;G=!0}return(X||G)&&!Q}function u$($,Z,Y){let J=Y===void 0?` ${Z}`:` ${Z}="${Y.replace(/"/g,"&quot;")}"`,X=$.trim(),Q=X.match(A8);if(Q&&XK(Q[3],Q[1])){let[,G,K,z]=Q;return`<${G}${K}${J}>${z}</${G}>`}return`<template${J}>${X}</template>`}function XK($,Z){let Y=new RegExp(`<(/)?${Z}(?=[\\s/>])`,"gi"),J=0,X;while((X=Y.exec($))!==null)if(X[1]){if(J--,J<0)return!1}else J++;return!0}function y7($,Z){let Y=YK($);function J(X){let Q=X,G=/@if\s*\(/g,K,z=[];while((K=G.exec(Q))!==null){let q=K.index,W=q+K[0].length,U=1,j=W;while(j<Q.length&&U>0){if(Q[j]==="(")U++;else if(Q[j]===")")U--;j++}if(U!==0)continue;let _=Q.substring(W,j-1).trim(),B=j,H=1,L=B,V=/@(if\s*\(|endif)/g;V.lastIndex=B;let O;while((O=V.exec(Q))!==null)if(O[1].startsWith("if"))H++;else if(O[1]==="endif"){if(H--,H===0){L=O.index+O[0].length;break}}if(H!==0)continue;let F=Q.substring(B,L-6).trim(),w;if(ZK(F)){let A=i5(Q.substring(q,L));if(A.length===0)continue;let R=A[0].branches.filter((T)=>T.type!=="else");if(!(R.length>0&&R.every((T)=>V8(T.condition,Y,Z))))continue;w=A[0].branches.map((T)=>{let I=J(T.content);if(T.type==="elseif")return u$(I,"@else-if",T.condition??"");if(T.type==="else")return u$(I,"@else");return u$(I,"@if",T.condition??"")}).join(`
7342
+ `)}else{if(!V8(_,Y,Z))continue;w=u$(J(F),"@if",_)}z.push({start:q,end:L,replacement:w}),G.lastIndex=L}for(let q=z.length-1;q>=0;q--){let{start:W,end:U,replacement:j}=z[q];Q=Q.substring(0,W)+j+Q.substring(U)}return Q}return J($)}function QK($){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 X=Number(Z);return X!==0&&!Number.isNaN(X)}let Y=Z.match(/^'((?:\\.|[^'\\])*)'$/);if(Y)return Y[1].length>0;let J=Z.match(/^"((?:\\.|[^"\\])*)"$/);if(J)return J[1].length>0;return}function GK($,Z,Y,J){if(S7.has(Y.toLowerCase()))return J;let X=Y.toLowerCase(),Q=$.toLowerCase(),G=$.length,K=1,z=J;while(z<G){let q=$.indexOf("<",z);if(q===-1)return-1;if(z=q,$.startsWith("<!--",z)){let _=$.indexOf("-->",z+4);if(_===-1)return-1;z=_+3;continue}let W=/^<(script|style)\b/i.exec($.slice(z,z+8));if(W){let _=$.indexOf(">",z);if(_===-1)return-1;if($[_-1]==="/"){z=_+1;continue}let B=Q.indexOf(`</${W[1].toLowerCase()}`,z);if(B===-1)return-1;let H=$.indexOf(">",B);if(H===-1)return-1;z=H+1;continue}if($[z+1]==="/"){let _=/^<\/([a-z][\w-]*)\s*>/i.exec($.slice(z,z+64));if(!_){z++;continue}if(_[1].toLowerCase()===X){if(K--,z+=_[0].length,K===0)return z;continue}z+=_[0].length;continue}let U=/^<([a-z][\w-]*)\b/i.exec($.slice(z,z+64));if(!U){z++;continue}let j=$.indexOf(">",z);if(j===-1)return-1;if(U[1].toLowerCase()===X){let _=$.slice(z,j+1);if(!(/\/\s*>$/.test(_)||S7.has(X)))K++}z=j+1}return-1}function zK($,Z){let Y=Z,J=$.length;for(;;){while(Y<J&&$[Y]!=="<")Y++;if(Y>=J)return!1;if($.startsWith("<!--",Y)){let G=$.indexOf("-->",Y+4);if(G===-1)return!1;Y=G+3;continue}break}if($[Y+1]==="/")return!1;let X=$.indexOf(">",Y);if(X===-1)return!1;let Q=$.slice(Y,X+1);return KK.test(Q)}function P7($){if(!$.includes(":if")&&!$.includes(":show")&&!$.includes("x-if")&&!$.includes("x-show")&&!$.includes("@if=")&&!$.includes("@show="))return $;let Z=[],Y=/<(script|style)\b[^>]*>[\s\S]*?<\/\1\s*>/gi,J;while((J=Y.exec($))!==null)Z.push([J.index,J.index+J[0].length]);let X=(U)=>Z.some(([j,_])=>U>=j&&U<_),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=[],K;while((K=Q.exec($))!==null){if(X(K.index))continue;let[U,j,_,B,H,L,V]=K,O=QK(H);if(O===void 0)continue;let F=K.index,w=F+U.length,N=!!V||/\/\s*>$/.test(U)||S7.has(j.toLowerCase())?w:GK($,F,j,w);if(N===-1)continue;if((B===":if"||B==="x-if"||B==="@if")&&zK($,N)){Q.lastIndex=w;continue}if(O===!0){let T=`<${j}${_}${L}${V}>`;G.push({start:F,end:w,replacement:T});continue}G.push({start:F,end:N,replacement:""}),Q.lastIndex=N}if(G.length===0)return $;G.sort((U,j)=>U.start-j.start);let z=[],q=-1;for(let U of G){if(U.start<q)continue;z.push(U),q=U.end}let W=$;for(let U=z.length-1;U>=0;U--){let{start:j,end:_,replacement:B}=z[U];W=W.substring(0,j)+B+W.substring(_)}return W}function C7($,Z){let Y=$,J=/@(for|foreach)\s*\(/g,X,Q=[];while((X=J.exec(Y))!==null){let G=X[1],K=X.index,z=K+X[0].length,q=1,W=z;while(W<Y.length&&q>0){if(Y[W]==="(")q++;else if(Y[W]===")")q--;W++}if(q!==0)continue;let U=Y.substring(z,W-1).trim(),j=W,_=N8(U);if(_.iterable){let R=_.iterable.trim();if(R.startsWith("[")||R.startsWith("{")||R.startsWith("'")||R.startsWith('"')||R.startsWith("`")||/^-?\d/.test(R))continue;if(Z){let N=R.split(/[.[(]/)[0].trim();if(N&&N in Z)continue}}if(_.style==="as")U=_.indexVar?`(${_.itemVar}, ${_.indexVar}) in ${_.iterable}`:`${_.itemVar} in ${_.iterable}`;let B=G==="for"?"@endfor":"@endforeach",H=1,L=j,V=G==="for"?new RegExp("@(for(?!each)\\s*\\(|endfor(?!each))","g"):new RegExp(`@(${G}\\s*\\(|end${G})`,"g");V.lastIndex=j;let O;while((O=V.exec(Y))!==null)if(O[1].startsWith(G))H++;else if(H--,H===0){L=O.index+O[0].length;break}if(H!==0)continue;let F=Y.substring(j,L-B.length).trim(),w=F.match(A8),A;if(w){let[,R,N,M]=w;A=`<${R}${N} @for="${U}">${M}</${R}>`}else A=`<template @for="${U}">${F}</template>`;Q.push({start:K,end:L,replacement:A})}for(let G=Q.length-1;G>=0;G--){let{start:K,end:z,replacement:q}=Q[G];Y=Y.substring(0,K)+q+Y.substring(z)}return Y}function qK($){let Z=new Set,Y=[],J=0,X=0,Q=$.length,G=(W)=>{let U=J+1;while(U<Q){let j=$[U];if(j==="\\"){U+=2;continue}if(j===W)return U+1;U++}return Q},K=()=>{let W=J+2;while(W<Q&&$[W]!==`
7343
+ `)W++;return W},z=()=>{let W=J+2;while(W<Q-1){if($[W]==="*"&&$[W+1]==="/")return W+2;W++}return Q},q=(W)=>{let U=W,j=0;while(U<Q){let _=$[U];if(_==="/"&&$[U+1]==="/"){let B=U+2;while(B<Q&&$[B]!==`
7344
+ `)B++;U=B;continue}if(_==="/"&&$[U+1]==="*"){let B=U+2;while(B<Q-1&&!($[B]==="*"&&$[B+1]==="/"))B++;U=B+2;continue}if(_==='"'||_==="'"||_==="`"){let B=U+1;while(B<Q){if($[B]==="\\"){B+=2;continue}if($[B]===_){B++;break}B++}U=B;continue}if(_==="("||_==="["||_==="{"){j++,U++;continue}if(_===")"||_==="]"||_==="}"){j--,U++;continue}if(_===";"&&j===0)return U+1;U++}return Q};while(J<Q){let W=$[J];if(W==="/"&&$[J+1]==="/"){let U=K();Y.push($.slice(J,U)),J=U;continue}if(W==="/"&&$[J+1]==="*"){let U=z();Y.push($.slice(J,U)),J=U;continue}if(W==='"'||W==="'"||W==="`"){let U=G(W);Y.push($.slice(J,U)),J=U;continue}if(W==="{"){X++,Y.push(W),J++;continue}if(W==="}"){X--,Y.push(W),J++;continue}if(X===0){let U=J>0?$[J-1]:"";if(U===""||/\s/.test(U)||U===";"||U==="}"||U==="{"){let _=$.slice(J).match(/^(const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=/);if(_){let B=_[2],H=q(J+_[0].length);if(Z.has(B)){Y.push(`/* stx: deduped const ${B} */`),J=H;continue}Z.add(B),Y.push($.slice(J,H)),J=H;continue}}}Y.push(W),J++}return Y.join("")}async function M8($,Z,Y){let J=R8($,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b/}),X=/\b(?:state|derived|effect|ref|reactive|computed|watch|watchEffect|useStore|useLocalStorage|useSessionStorage|useCookie|useId|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=[];for(let L of J){let V=L.body;if(y1(L.attrs))V=P1(V);if(X.test(V))Q.push({fullMatch:L.fullMatch,attrs:L.attrs,content:V})}if(Q.length===0)return{output:$,setupCode:null};let G=`__stx_setup_${Date.now()}_${$K++}`,{hasUserImports:K,bundleClientScript:z}=await Promise.resolve().then(() => (S5(),b5)),q=[];for(let L=0;L<Q.length;L++){let V=Q[L].content;if(V=t1(V).code,K(V))console.log("[stx:bundler] bundling signal script imports"),V=await z(V,Z||"",{projectRoot:process.cwd()});V=V.replace(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm,(F,w)=>I8(w));let O=o0(V);q.push(`// \u2500\u2500 merged signal script #${L+1} \u2500\u2500
7327
7345
  ${O}`)}let W=q.join(`
7328
7346
 
7329
- `);W=qK(W);let U=T8(W),j=U.split(",").map((L)=>L.trim()).filter(Boolean),B=F$(W,Y),_=`
7347
+ `);W=qK(W);let U=T8(W),j=U.split(",").map((L)=>L.trim()).filter(Boolean),_=F$(W,Y),B=`
7330
7348
  <script data-stx-scoped>
7331
7349
  function ${G}() {
7332
7350
  ${Z5("const",j)}
7333
- ${B}${W}
7351
+ ${_}${W}
7334
7352
  return { ${U} };
7335
7353
  }
7336
7354
  window.__stx_latestSetup=${G};
7337
7355
  if(window.stx)window.stx._latestSetup=${G};
7338
- </script>`,H=$;for(let L of Q)H=H.split(L.fullMatch).join("");if(H.includes("<body"))H=H.replace(new RegExp(`<body(${O8})>`),`<body$1 data-stx="${G}">`);else{let L=["script","style","html","head","meta","link","title","!doctype"],V=!1;H=H.replace(new RegExp(`<([a-zA-Z][a-zA-Z0-9-]*)\\b(${O8})>`,"gi"),(O,F,w)=>{if(V||L.includes(F.toLowerCase()))return O;return V=!0,`<${F}${w} data-stx="${G}">`})}return{output:H,setupCode:_}}function T8($){let Z=$,Y=[],J=new Set,X=0,Q=0,G=Z.length,K="",z=()=>{Q++;let _=!1;while(Q<G){let H=Z[Q];if(H==="\\"){Q+=2;continue}if(H==="["&&!_){_=!0,Q++;continue}if(H==="]"&&_){_=!1,Q++;continue}if(H==="/"&&!_){Q++;while(Q<G&&/[gimsuyd]/.test(Z[Q]))Q++;return}if(H===`
7339
- `)return;Q++}},q=()=>{if(!K)return!0;if(/[\w)\]]/.test(K))return!1;return!0},W=(_)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===_){Q++;return}Q++}},U=()=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]==="`"){Q++;return}if(Z[Q]==="$"&&Z[Q+1]==="{"){Q+=2;let _=1;while(Q<G&&_>0)if(Z[Q]==="{")_++,Q++;else if(Z[Q]==="}")_--,Q++;else if(Z[Q]==="'"||Z[Q]==='"')W(Z[Q]);else if(Z[Q]==="`")U();else Q++;continue}Q++}},j=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
7340
- `)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},B=()=>{if(X!==0)return;let _=Z.slice(Q).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(_){let F=_[2];if(!J.has(F))Y.push(F),J.add(F);return}let H=Z.slice(Q).match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(H){H[1].split(",").forEach((F)=>{let w=F.trim();if(!w)return;let A=w.indexOf(":"),N=(A>=0?w.slice(A+1).trim():w).split(/[\s=]/)[0];if(N&&!J.has(N))Y.push(N),J.add(N)});return}let L=Z.slice(Q).match(/^(?:const|let|var)\s+\[([^\]]+)\]\s*=/);if(L){L[1].split(",").forEach((F)=>{let w=F.trim().replace(/^\.\.\./,"");if(!w)return;let A=w.split(/[\s=]/)[0];if(A&&!J.has(A))Y.push(A),J.add(A)});return}let V=Z.slice(Q).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(V){let F=V[1];if(!J.has(F))Y.push(F),J.add(F);return}let O=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(O){let F=O[1];if(!J.has(F))Y.push(F),J.add(F)}};while(Q<G){if(j())continue;if(Z[Q]==="'"||Z[Q]==='"'){W(Z[Q]),K=Z[Q-1];continue}if(Z[Q]==="`"){U(),K="`";continue}if(Z[Q]==="/"&&Z[Q+1]!=="/"&&Z[Q+1]!=="*"&&q()){z(),K="/";continue}if(Z[Q]==="{"){X++,K="{",Q++;continue}if(Z[Q]==="}"){X--,K="}",Q++;continue}if(X===0&&/[a-z]/i.test(Z[Q])&&(Q===0||/\s|[;{}()]/.test(Z[Q-1])))B();if(!/\s/.test(Z[Q]))K=Z[Q];Q++}return Y.join(", ")}async function v7($,Z,Y,J){if(!l$($))return $;let X=$;if(Z.skipSignalsRuntime)return X;let{output:Q,setupCode:G}=await M8(X,Y,J);if(X=Q,X=await H8(X,Z),X=_8(X),G){let W=p$(X,/<\/head>/i),U=W===-1?p$(X,/<body[^>]*>/i):-1;if(W!==-1)X=`${X.slice(0,W)}${G}
7341
- ${X.slice(W)}`;else if(U!==-1){let j=/<body[^>]*>/i.exec(X.slice(U))[0],B=U+j.length;X=`${X.slice(0,B)}
7342
- ${G}${X.slice(B)}`}else X=`${X}
7343
- ${G}`}let z=X.replace(/<script\b[\s\S]*?<\/script>/gi,"").replace(/<style\b[\s\S]*?<\/style>/gi,"").match(/<body([^>]*)>/i),q=z&&/data-stx/.test(z[1]);if(!G&&!q&&z&&!/data-stx-auto/.test(z[1])){let W=/<body[^>]*>/i,U=p$(X,W);if(U!==-1){let j=X.slice(0,U),B=X.slice(U).replace(W,(_)=>_.replace(/^<body([^>]*)>$/i,"<body$1 data-stx-auto>"));X=j+B}}return X}function p$($,Z){let Y=/<(script|style)\b[\s\S]*?<\/\1>/gi,J=[],X;while((X=Y.exec($))!==null)J.push([X.index,X.index+X[0].length]);let Q=new RegExp(Z.source,Z.flags.replace(/[gy]/g,"")),G=0;while(G<$.length){let K=Q.exec($.slice(G));if(!K)return-1;let z=G+K.index;if(!J.some(([W,U])=>z>=W&&z<U))return z;G=z+Math.max(K[0].length,1)}return-1}function I8($){let Z=[];for(let Y of $.split(",")){let J=Y.trim();if(!J||J.startsWith("type "))continue;let X=J.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(X&&X[1]!==X[2])Z.push(`${X[2]} = ${X[1]}`)}if(Z.length===0)return w8;return`var ${Z.join(", ")}; ${w8}`}var $K=0,O8=`(?:"[^"]*"|'[^']*'|[^>"'])*`,A8,F8,S7,KK,w8="/* [stx import stripped, resolved via window.stx in __stx_setup] */";var s5=b(()=>{v5();b$();d5();N0();C1();A8=/^<([a-zA-Z][a-zA-Z0-9-]*)\b((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*\s*)>([\s\S]*)<\/\1>$/s;F8=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"]);S7=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);KK=/\s(?::else-if|x-else-if|@else-if|:else|x-else|@else)(?=[=\s/>])/});import WK from"fs";import g from"path";function D8($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function jK($){return/\bjs\b/.test($)||/\blang\s*=\s*["']?(js|javascript)["']?/i.test($)}function y1($){return!jK($)}function P1($){try{let Z=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");Z=Z.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");let Y=[];Z=Z.replace(/\{!![\s\S]*?!!\}/g,(Q)=>{let G=Y.length;return Y.push(Q),`"__STX_EXPR_${G}__"`}),Z=Z.replace(/\{\{\{[\s\S]*?\}\}\}/g,(Q)=>{let G=Y.length;return Y.push(Q),`"__STX_EXPR_${G}__"`}),Z=Z.replace(/\{\{[\s\S]*?\}\}/g,(Q)=>{let G=Y.length;return Y.push(Q),`"__STX_EXPR_${G}__"`});let X=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()}).transformSync(Z);for(let Q=0;Q<Y.length;Q++)X=X.replace(`"__STX_EXPR_${Q}__"`,Y[Q]),X=X.replace(`'__STX_EXPR_${Q}__'`,Y[Q]);return X}catch(Z){if(process.env.STX_DEBUG_TS)console.warn("[STX] TypeScript transpilation error:",Z);return $}}function BK($){let Z=[],Y=new Set,J=0,X=0,Q=$.length,G=(W)=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]===W){X++;return}X++}},K=()=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++;return}if($[X]==="$"&&$[X+1]==="{"){X+=2;let W=1;while(X<Q&&W>0)if($[X]==="{")W++,X++;else if($[X]==="}")W--,X++;else if($[X]==="'"||$[X]==='"')G($[X]);else if($[X]==="`")K();else X++;continue}X++}},z=()=>{if($[X]==="/"&&$[X+1]==="/"){while(X<Q&&$[X]!==`
7344
- `)X++;return!0}if($[X]==="/"&&$[X+1]==="*"){X+=2;while(X<Q-1&&!($[X]==="*"&&$[X+1]==="/"))X++;return X+=2,!0}return!1},q=()=>{if(J!==0)return;let W=$.slice(X).match(/^(const|let|var)\s*\{([^}]+)\}\s*=/);if(W){let _=W[2].split(",").map((H)=>{let L=H.trim().split(":");return L[L.length-1].trim()});for(let H of _)if(H&&/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(H)&&!Y.has(H))Z.push(H),Y.add(H);return}let U=$.slice(X).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(U){let _=U[2];if(!Y.has(_))Z.push(_),Y.add(_);return}let j=$.slice(X).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(j){let _=j[1];if(!Y.has(_))Z.push(_),Y.add(_);return}let B=$.slice(X).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(B){let _=B[1];if(!Y.has(_))Z.push(_),Y.add(_)}};while(X<Q){if(z())continue;if($[X]==="'"||$[X]==='"'){G($[X]);continue}if($[X]==="`"){K();continue}if($[X]==="{"){J++,X++;continue}if($[X]==="}"){J--,X++;continue}if(J===0&&/[a-z]/i.test($[X])&&(X===0||/\s|[;{}()]/.test($[X-1])))q();X++}return Z}function _K($){let Z=[],Y=0,J=0,X=null;for(let Q=0;Q<$.length;Q++){let G=$[Q];if(X){if(G==="\\"){Q++;continue}if(G===X)X=null;continue}if(G==='"'||G==="'"||G==="`"){X=G;continue}if(G==="("||G==="["||G==="{")Y++;else if(G===")"||G==="]"||G==="}")Y--;else if(G===","&&Y===0)Z.push($.slice(J,Q)),J=Q+1}if(J<$.length)Z.push($.slice(J));return Z}function HK($){let Z=0,Y=null;for(let J=0;J<$.length;J++){let X=$[J];if(Y){if(X==="\\"){J++;continue}if(X===Y)Y=null;continue}if(X==='"'||X==="'"||X==="`"){Y=X;continue}if(X==="("||X==="["||X==="{")Z++;else if(X===")"||X==="]"||X==="}")Z--;else if(X==="="&&Z===0){let Q=$[J-1],G=$[J+1];if(Q==="!"||Q==="<"||Q===">"||Q==="=")continue;if(G==="="||G===">")continue;return J}}return-1}function OK($,Z){try{let Y=/=\s*(?:withDefaults\s*\([\s\S]*?defineProps|defineProps)\b/.exec($);if(!Y)return;let J=Y.index-1;while(J>=0&&/\s/.test($[J]))J--;if($[J]!=="}")return;let X=J,Q=0,G=-1;for(;J>=0;J--){let z=$[J];if(z==="}")Q++;else if(z==="{"){if(Q--,Q===0){G=J;break}}}if(G===-1)return;let K=$.slice(G+1,X);for(let z of _K(K)){let q=z.trim();if(!q||q.startsWith("..."))continue;let W=HK(q);if(W===-1)continue;let U=q.slice(0,W).trim();if(!/^[A-Z_$][\w$]*$/i.test(U))continue;if(Z[U]!==void 0)continue;let j=q.slice(W+1).trim();if(!j)continue;try{let B=Object.keys(Z),_=Function(...B,`"use strict"; return (${j});`);Z[U]=_(...B.map((H)=>Z[H]))}catch{}}}catch{}}async function n$($,Z,Y,J,X){let Q=$.endsWith(".stx")?$.slice(0,-4):$,G=(L)=>L.split("-").map((V)=>V.charAt(0).toUpperCase()+V.slice(1)).join(""),K=(L)=>L.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),z=Y.__importedComponents;if(z){for(let L of[Q,Q.toLowerCase(),G(Q),K(Q)])if(z.has(L))return!0}let q=[...new Set([`${Q}.stx`,`${G(Q)}.stx`,`${K(Q)}.stx`])],W=typeof X.root==="string"?g.resolve(X.root):void 0,U=W??g.dirname(J),j=[],B=(L)=>{if(L&&!j.includes(L))j.push(L)},_=Y.__originalFilePath;if(_)B(g.join(g.dirname(_),"components"));B(Z),B(X._rootComponentsDir),B(g.join(g.dirname(J),"components")),B(X.componentsDir);let H=X._pluginComponentDirs;if(Array.isArray(H))for(let L of H)B(typeof L==="string"?L:null);if(W)B(g.resolve(W,"resources/views/components")),B(g.resolve(W,"resources/components")),B(g.resolve(W,"src/components")),B(g.resolve(W,"components"));if(Q.startsWith("./")||Q.startsWith("../"))return o(g.resolve(g.dirname(J),`${Q}.stx`));for(let L of j){let V=g.isAbsolute(L)?L:g.resolve(U,L);for(let O of q)if(await o(g.join(V,O)))return!0}return!1}function LK($){return $==="visible"||$==="idle"||$==="interaction"||$.startsWith("media:")}function FK($){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 VK($){let Z=new Set,Y=/\b(?:const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=\s*(?:state|derived|computed|ref|reactive|signal|useReactiveProp|useLocalStorage|useSessionStorage|useCookie|useDebouncedValue)\s*(?:<[^>]*>)?\s*\(/g;for(let J of $){let X;while((X=Y.exec(J))!==null)Z.add(X[1]);Y.lastIndex=0}return[...Z]}async function h1($,Z,Y,J,X,Q,G,K=new Set,z){let{extractVariables:q}=await Promise.resolve().then(() => (c5(),E$)),W=K??new Set;if(W.has($))return`[Circular component reference: ${$}]`;let U=new Set(W);U.add($);let j=typeof Z.client==="string"?Z.client.trim():"";if("client"in Z)delete Z.client;let B=j&&j!=="load"&&LK(j)?j:"";try{let _=(h)=>h.split("-").map((u)=>u.charAt(0).toUpperCase()+u.slice(1)).join(""),H=(h)=>h.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),L=$.endsWith(".stx")?$.slice(0,-4):$,V=null,O=X.__importedComponents;if(O){let h=[L,L.toLowerCase(),_(L),H(L)];for(let u of h)if(O.has(u)){V=O.get(u);break}}let F=[];if(!V){let h=[`${L}.stx`,`${_(L)}.stx`,`${H(L)}.stx`],u=[...new Set(h)],P=X.__originalFilePath,v=[];if(P){let j0=g.join(g.dirname(P),"components");v.push(j0)}if(J)v.push(J);let m=G._rootComponentsDir;if(typeof m==="string"&&!v.includes(m))v.push(m);let n=g.join(g.dirname(Q),"components");if(!v.includes(n))v.push(n);if(G.componentsDir&&G.componentsDir!==J&&!v.includes(G.componentsDir))v.push(G.componentsDir);let z0=G._pluginComponentDirs;if(Array.isArray(z0)){for(let j0 of z0)if(typeof j0==="string"&&!v.includes(j0))v.push(j0)}let H0=typeof G.root==="string"?g.resolve(G.root):void 0,k0=H0??g.dirname(Q),u0=[];if(H0)u0.push(g.resolve(H0,"resources/views/components")),u0.push(g.resolve(H0,"resources/components")),u0.push(g.resolve(H0,"src/components")),u0.push(g.resolve(H0,"components"));u0.push(g.resolve(import.meta.dir,"components"));for(let j0 of u0)if(!v.includes(j0))v.push(j0);let H$=[...new Set(v.map((j0)=>{if(!j0)return j0;return g.isAbsolute(j0)?j0:g.resolve(k0,j0)}))];if(v.length=0,v.push(...H$),L.startsWith("./")||L.startsWith("../"))V=g.resolve(g.dirname(Q),`${L}.stx`),F.push(V);else for(let j0 of v){if(!j0)continue;for(let j1 of u){let n0=g.join(j0,j1);if(F.push(n0),await o(n0)){V=n0;break}}if(V)break;if(!V)try{let j1=await import("fs");if(!j1.statSync(j0,{throwIfNoEntry:!1})?.isDirectory())continue;let E1=8,k1=[{path:j0,depth:0}];while(k1.length>0&&!V){let m0=k1.pop();if(m0.depth>=E1)continue;let t;try{t=j1.readdirSync(m0.path,{withFileTypes:!0})}catch{continue}for(let $1 of t){if(!$1.isDirectory())continue;if($1.name==="node_modules"||$1.name.startsWith("."))continue;let t4=g.join(m0.path,$1.name);for(let nX of u){let e4=g.join(t4,nX);if(F.push(e4),await o(e4)){V=e4;break}}if(V)break;k1.push({path:t4,depth:m0.depth+1})}}}catch{}if(V)break}}if(!V||!await o(V)){let h=F.length>0?`
7356
+ </script>`,H=$;for(let L of Q)H=H.split(L.fullMatch).join("");if(H.includes("<body"))H=H.replace(new RegExp(`<body(${O8})>`),`<body$1 data-stx="${G}">`);else{let L=["script","style","html","head","meta","link","title","!doctype"],V=!1;H=H.replace(new RegExp(`<([a-zA-Z][a-zA-Z0-9-]*)\\b(${O8})>`,"gi"),(O,F,w)=>{if(V||L.includes(F.toLowerCase()))return O;return V=!0,`<${F}${w} data-stx="${G}">`})}return{output:H,setupCode:B}}function T8($){let Z=$,Y=[],J=new Set,X=0,Q=0,G=Z.length,K="",z=()=>{Q++;let B=!1;while(Q<G){let H=Z[Q];if(H==="\\"){Q+=2;continue}if(H==="["&&!B){B=!0,Q++;continue}if(H==="]"&&B){B=!1,Q++;continue}if(H==="/"&&!B){Q++;while(Q<G&&/[gimsuyd]/.test(Z[Q]))Q++;return}if(H===`
7357
+ `)return;Q++}},q=()=>{if(!K)return!0;if(/[\w)\]]/.test(K))return!1;return!0},W=(B)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===B){Q++;return}Q++}},U=()=>{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]==="`")U();else Q++;continue}Q++}},j=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
7358
+ `)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},_=()=>{if(X!==0)return;let B=Z.slice(Q).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(B){let F=B[2];if(!J.has(F))Y.push(F),J.add(F);return}let H=Z.slice(Q).match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(H){H[1].split(",").forEach((F)=>{let w=F.trim();if(!w)return;let A=w.indexOf(":"),N=(A>=0?w.slice(A+1).trim():w).split(/[\s=]/)[0];if(N&&!J.has(N))Y.push(N),J.add(N)});return}let L=Z.slice(Q).match(/^(?:const|let|var)\s+\[([^\]]+)\]\s*=/);if(L){L[1].split(",").forEach((F)=>{let w=F.trim().replace(/^\.\.\./,"");if(!w)return;let A=w.split(/[\s=]/)[0];if(A&&!J.has(A))Y.push(A),J.add(A)});return}let V=Z.slice(Q).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(V){let F=V[1];if(!J.has(F))Y.push(F),J.add(F);return}let O=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(O){let F=O[1];if(!J.has(F))Y.push(F),J.add(F)}};while(Q<G){if(j())continue;if(Z[Q]==="'"||Z[Q]==='"'){W(Z[Q]),K=Z[Q-1];continue}if(Z[Q]==="`"){U(),K="`";continue}if(Z[Q]==="/"&&Z[Q+1]!=="/"&&Z[Q+1]!=="*"&&q()){z(),K="/";continue}if(Z[Q]==="{"){X++,K="{",Q++;continue}if(Z[Q]==="}"){X--,K="}",Q++;continue}if(X===0&&/[a-z]/i.test(Z[Q])&&(Q===0||/\s|[;{}()]/.test(Z[Q-1])))_();if(!/\s/.test(Z[Q]))K=Z[Q];Q++}return Y.join(", ")}async function v7($,Z,Y,J){if(!l$($))return $;let X=$;if(Z.skipSignalsRuntime)return X;let{output:Q,setupCode:G}=await M8(X,Y,J);if(X=Q,X=await H8(X,Z),X=B8(X),G){let W=p$(X,/<\/head>/i),U=W===-1?p$(X,/<body[^>]*>/i):-1;if(W!==-1)X=`${X.slice(0,W)}${G}
7359
+ ${X.slice(W)}`;else if(U!==-1){let j=/<body[^>]*>/i.exec(X.slice(U))[0],_=U+j.length;X=`${X.slice(0,_)}
7360
+ ${G}${X.slice(_)}`}else X=`${X}
7361
+ ${G}`}let z=X.replace(/<script\b[\s\S]*?<\/script>/gi,"").replace(/<style\b[\s\S]*?<\/style>/gi,"").match(/<body([^>]*)>/i),q=z&&/data-stx/.test(z[1]);if(!G&&!q&&z&&!/data-stx-auto/.test(z[1])){let W=/<body[^>]*>/i,U=p$(X,W);if(U!==-1){let j=X.slice(0,U),_=X.slice(U).replace(W,(B)=>B.replace(/^<body([^>]*)>$/i,"<body$1 data-stx-auto>"));X=j+_}}return X}function p$($,Z){let Y=/<(script|style)\b[\s\S]*?<\/\1>/gi,J=[],X;while((X=Y.exec($))!==null)J.push([X.index,X.index+X[0].length]);let Q=new RegExp(Z.source,Z.flags.replace(/[gy]/g,"")),G=0;while(G<$.length){let K=Q.exec($.slice(G));if(!K)return-1;let z=G+K.index;if(!J.some(([W,U])=>z>=W&&z<U))return z;G=z+Math.max(K[0].length,1)}return-1}function I8($){let Z=[];for(let Y of $.split(",")){let J=Y.trim();if(!J||J.startsWith("type "))continue;let X=J.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(X&&X[1]!==X[2])Z.push(`${X[2]} = ${X[1]}`)}if(Z.length===0)return w8;return`var ${Z.join(", ")}; ${w8}`}var $K=0,O8=`(?:"[^"]*"|'[^']*'|[^>"'])*`,A8,F8,S7,KK,w8="/* [stx import stripped, resolved via window.stx in __stx_setup] */";var s5=b(()=>{v5();b$();d5();N0();C1();A8=/^<([a-zA-Z][a-zA-Z0-9-]*)\b((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*\s*)>([\s\S]*)<\/\1>$/s;F8=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"]);S7=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);KK=/\s(?::else-if|x-else-if|@else-if|:else|x-else|@else)(?=[=\s/>])/});import WK from"fs";import g from"path";function D8($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function jK($){return/\bjs\b/.test($)||/\blang\s*=\s*["']?(js|javascript)["']?/i.test($)}function y1($){return!jK($)}function P1($){try{let Z=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");Z=Z.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");let Y=[];Z=Z.replace(/\{!![\s\S]*?!!\}/g,(Q)=>{let G=Y.length;return Y.push(Q),`"__STX_EXPR_${G}__"`}),Z=Z.replace(/\{\{\{[\s\S]*?\}\}\}/g,(Q)=>{let G=Y.length;return Y.push(Q),`"__STX_EXPR_${G}__"`}),Z=Z.replace(/\{\{[\s\S]*?\}\}/g,(Q)=>{let G=Y.length;return Y.push(Q),`"__STX_EXPR_${G}__"`});let X=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()}).transformSync(Z);for(let Q=0;Q<Y.length;Q++)X=X.replace(`"__STX_EXPR_${Q}__"`,Y[Q]),X=X.replace(`'__STX_EXPR_${Q}__'`,Y[Q]);return X}catch(Z){if(process.env.STX_DEBUG_TS)console.warn("[STX] TypeScript transpilation error:",Z);return $}}function _K($){let Z=[],Y=new Set,J=0,X=0,Q=$.length,G=(W)=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]===W){X++;return}X++}},K=()=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++;return}if($[X]==="$"&&$[X+1]==="{"){X+=2;let W=1;while(X<Q&&W>0)if($[X]==="{")W++,X++;else if($[X]==="}")W--,X++;else if($[X]==="'"||$[X]==='"')G($[X]);else if($[X]==="`")K();else X++;continue}X++}},z=()=>{if($[X]==="/"&&$[X+1]==="/"){while(X<Q&&$[X]!==`
7362
+ `)X++;return!0}if($[X]==="/"&&$[X+1]==="*"){X+=2;while(X<Q-1&&!($[X]==="*"&&$[X+1]==="/"))X++;return X+=2,!0}return!1},q=()=>{if(J!==0)return;let W=$.slice(X).match(/^(const|let|var)\s*\{([^}]+)\}\s*=/);if(W){let B=W[2].split(",").map((H)=>{let L=H.trim().split(":");return L[L.length-1].trim()});for(let H of B)if(H&&/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(H)&&!Y.has(H))Z.push(H),Y.add(H);return}let U=$.slice(X).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(U){let B=U[2];if(!Y.has(B))Z.push(B),Y.add(B);return}let j=$.slice(X).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(j){let B=j[1];if(!Y.has(B))Z.push(B),Y.add(B);return}let _=$.slice(X).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(_){let B=_[1];if(!Y.has(B))Z.push(B),Y.add(B)}};while(X<Q){if(z())continue;if($[X]==="'"||$[X]==='"'){G($[X]);continue}if($[X]==="`"){K();continue}if($[X]==="{"){J++,X++;continue}if($[X]==="}"){J--,X++;continue}if(J===0&&/[a-z]/i.test($[X])&&(X===0||/\s|[;{}()]/.test($[X-1])))q();X++}return Z}function BK($){let Z=[],Y=0,J=0,X=null;for(let Q=0;Q<$.length;Q++){let G=$[Q];if(X){if(G==="\\"){Q++;continue}if(G===X)X=null;continue}if(G==='"'||G==="'"||G==="`"){X=G;continue}if(G==="("||G==="["||G==="{")Y++;else if(G===")"||G==="]"||G==="}")Y--;else if(G===","&&Y===0)Z.push($.slice(J,Q)),J=Q+1}if(J<$.length)Z.push($.slice(J));return Z}function HK($){let Z=0,Y=null;for(let J=0;J<$.length;J++){let X=$[J];if(Y){if(X==="\\"){J++;continue}if(X===Y)Y=null;continue}if(X==='"'||X==="'"||X==="`"){Y=X;continue}if(X==="("||X==="["||X==="{")Z++;else if(X===")"||X==="]"||X==="}")Z--;else if(X==="="&&Z===0){let Q=$[J-1],G=$[J+1];if(Q==="!"||Q==="<"||Q===">"||Q==="=")continue;if(G==="="||G===">")continue;return J}}return-1}function OK($,Z){try{let Y=/=\s*(?:withDefaults\s*\([\s\S]*?defineProps|defineProps)\b/.exec($);if(!Y)return;let J=Y.index-1;while(J>=0&&/\s/.test($[J]))J--;if($[J]!=="}")return;let X=J,Q=0,G=-1;for(;J>=0;J--){let z=$[J];if(z==="}")Q++;else if(z==="{"){if(Q--,Q===0){G=J;break}}}if(G===-1)return;let K=$.slice(G+1,X);for(let z of BK(K)){let q=z.trim();if(!q||q.startsWith("..."))continue;let W=HK(q);if(W===-1)continue;let U=q.slice(0,W).trim();if(!/^[A-Z_$][\w$]*$/i.test(U))continue;if(Z[U]!==void 0)continue;let j=q.slice(W+1).trim();if(!j)continue;try{let _=Object.keys(Z),B=Function(..._,`"use strict"; return (${j});`);Z[U]=B(..._.map((H)=>Z[H]))}catch{}}}catch{}}async function n$($,Z,Y,J,X){let Q=$.endsWith(".stx")?$.slice(0,-4):$,G=(L)=>L.split("-").map((V)=>V.charAt(0).toUpperCase()+V.slice(1)).join(""),K=(L)=>L.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),z=Y.__importedComponents;if(z){for(let L of[Q,Q.toLowerCase(),G(Q),K(Q)])if(z.has(L))return!0}let q=[...new Set([`${Q}.stx`,`${G(Q)}.stx`,`${K(Q)}.stx`])],W=typeof X.root==="string"?g.resolve(X.root):void 0,U=W??g.dirname(J),j=[],_=(L)=>{if(L&&!j.includes(L))j.push(L)},B=Y.__originalFilePath;if(B)_(g.join(g.dirname(B),"components"));_(Z),_(X._rootComponentsDir),_(g.join(g.dirname(J),"components")),_(X.componentsDir);let H=X._pluginComponentDirs;if(Array.isArray(H))for(let L of H)_(typeof L==="string"?L:null);if(W)_(g.resolve(W,"resources/views/components")),_(g.resolve(W,"resources/components")),_(g.resolve(W,"src/components")),_(g.resolve(W,"components"));if(Q.startsWith("./")||Q.startsWith("../"))return o(g.resolve(g.dirname(J),`${Q}.stx`));for(let L of j){let V=g.isAbsolute(L)?L:g.resolve(U,L);for(let O of q)if(await o(g.join(V,O)))return!0}return!1}function LK($){return $==="visible"||$==="idle"||$==="interaction"||$.startsWith("media:")}function FK($){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 VK($){let Z=new Set,Y=/\b(?:const|let|var)\s+([a-zA-Z_$][\w$]*)\s*=\s*(?:state|derived|computed|ref|reactive|signal|useReactiveProp|useLocalStorage|useSessionStorage|useCookie|useDebouncedValue)\s*(?:<[^>]*>)?\s*\(/g;for(let J of $){let X;while((X=Y.exec(J))!==null)Z.add(X[1]);Y.lastIndex=0}return[...Z]}async function h1($,Z,Y,J,X,Q,G,K=new Set,z){let{extractVariables:q}=await Promise.resolve().then(() => (c5(),E$)),W=K??new Set;if(W.has($))return`[Circular component reference: ${$}]`;let U=new Set(W);U.add($);let j=typeof Z.client==="string"?Z.client.trim():"";if("client"in Z)delete Z.client;let _=j&&j!=="load"&&LK(j)?j:"";try{let B=(h)=>h.split("-").map((m)=>m.charAt(0).toUpperCase()+m.slice(1)).join(""),H=(h)=>h.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),L=$.endsWith(".stx")?$.slice(0,-4):$,V=null,O=X.__importedComponents;if(O){let h=[L,L.toLowerCase(),B(L),H(L)];for(let m of h)if(O.has(m)){V=O.get(m);break}}let F=[];if(!V){let h=[`${L}.stx`,`${B(L)}.stx`,`${H(L)}.stx`],m=[...new Set(h)],P=X.__originalFilePath,v=[];if(P){let j0=g.join(g.dirname(P),"components");v.push(j0)}if(J)v.push(J);let u=G._rootComponentsDir;if(typeof u==="string"&&!v.includes(u))v.push(u);let n=g.join(g.dirname(Q),"components");if(!v.includes(n))v.push(n);if(G.componentsDir&&G.componentsDir!==J&&!v.includes(G.componentsDir))v.push(G.componentsDir);let z0=G._pluginComponentDirs;if(Array.isArray(z0)){for(let j0 of z0)if(typeof j0==="string"&&!v.includes(j0))v.push(j0)}let H0=typeof G.root==="string"?g.resolve(G.root):void 0,k0=H0??g.dirname(Q),m0=[];if(H0)m0.push(g.resolve(H0,"resources/views/components")),m0.push(g.resolve(H0,"resources/components")),m0.push(g.resolve(H0,"src/components")),m0.push(g.resolve(H0,"components"));m0.push(g.resolve(import.meta.dir,"components"));for(let j0 of m0)if(!v.includes(j0))v.push(j0);let H$=[...new Set(v.map((j0)=>{if(!j0)return j0;return g.isAbsolute(j0)?j0:g.resolve(k0,j0)}))];if(v.length=0,v.push(...H$),L.startsWith("./")||L.startsWith("../"))V=g.resolve(g.dirname(Q),`${L}.stx`),F.push(V);else for(let j0 of v){if(!j0)continue;for(let j1 of m){let n0=g.join(j0,j1);if(F.push(n0),await o(n0)){V=n0;break}}if(V)break;if(!V)try{let j1=await import("fs");if(!j1.statSync(j0,{throwIfNoEntry:!1})?.isDirectory())continue;let E1=8,k1=[{path:j0,depth:0}];while(k1.length>0&&!V){let u0=k1.pop();if(u0.depth>=E1)continue;let t;try{t=j1.readdirSync(u0.path,{withFileTypes:!0})}catch{continue}for(let $1 of t){if(!$1.isDirectory())continue;if($1.name==="node_modules"||$1.name.startsWith("."))continue;let t4=g.join(u0.path,$1.name);for(let nX of m){let e4=g.join(t4,nX);if(F.push(e4),await o(e4)){V=e4;break}}if(V)break;k1.push({path:t4,depth:u0.depth+1})}}}catch{}if(V)break}}if(!V||!await o(V)){let h=F.length>0?`
7345
7363
  Searched paths:
7346
- ${F.map((u)=>` - ${u}`).join(`
7347
- `)}`:"";return`[Error loading component: ENOENT: no such file or directory, open '${$}']${h}`}z.add(V);let w;if(i$.has(V))w=i$.get(V);else try{w=await Bun.file(V).text(),i$.set(V,w)}catch(h){return`[Error loading component: ${h instanceof Error?h.message:String(h)}]`}let A=new Set(["__originalFilePath","__importedComponents"]),R={};for(let[h,u]of Object.entries(X))if(!h.startsWith("__")||A.has(h))R[h]=u;let{extractSlotContent:N}=await Promise.resolve().then(() => (A7(),w7)),M=N(Y),T={};if(M.defaultSlot?.trim())T.default=M.defaultSlot;for(let[h,u]of M.namedSlots)T[h]=u.content;let I={...R,...Z,props:Z,slot:Y,$slots:T,__processedComponents:U,__sections:{},...FK(Y)&&{__stx_force_signals:!0}};OK(w,I);let E=w,D=T$(E);if(D)E=D.content.trim();let y=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,S=[...w.matchAll(y)],k=[];for(let h of S){let u=h[1]||"",P=h[2]||"",v=u.includes("server");if(y1(u)&&P.trim())P=P1(P);if(v&&P)try{await q(P,I,V)}catch(n){}if(!v){let n=P.replace(/^\s*const\s*\{[^}]+\}\s*=\s*window\.stx\s*;?\s*\n?/gm,""),z0=n.includes("{{")&&n.includes("}}"),H0=n.includes("{!!")&&n.includes("!!}");if(z0||H0)n=R$(n,I);let k0=u.replace(/\s*\bts\b/g,"").replace(/\s*\blang\s*=\s*["']?(ts|typescript)["']?/gi,"");k.push(`<script${k0}>${n}</script>`)}}let C=w.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),x=C?C[1]:"",f=C?C[2]:"",d="",c=x&&/\bscoped\b/i.test(x);if(C)d=`<style${x}>${f}</style>`;let p=E;if(p=p.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),C)p=p.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");{let h=/@push\s*\(\s*['"]styles['"]\s*\)([\s\S]*?)@endpush/gi,u=[];if(p=p.replace(h,(P,v)=>{let m=v.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i);if(m)u.push(`<style${m[1]}>${m[2]}</style>`);return""}),p=p.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/gi,""),u.length>0)d=`${d}${u.join(`
7348
- `)}`}if(Y&&p.includes("{{ text || slot }}"))p=p.replace(/\{\{\s*text\s*\|\|\s*slot\s*\}\}/g,()=>Y);let{applySlots:W0}=await Promise.resolve().then(() => (A7(),w7)),{defaultSlot:w0,namedSlots:_0}=M;p=await W0(p,w0,_0,I);for(let[h,u]of Object.entries(I))if(typeof u==="string"){if(u.includes("<")&&u.includes(">")||u.includes("&lt;")||u.includes("&quot;")){let P=q7(u);I[h]=P}}let X0=k.some((h)=>/\b(?:state|derived|effect|ref|reactive|computed|watch|watchEffect|useReactiveProp|defineProps|withDefaults|defineEmits|defineExpose|defineSlots)\s*(?:<[^<>()]*>)?\s*\(/.test(h)),I0=VK(k);if(I0.length>0)I.__stx_client_signal_names=I0;let i0={...G,_rootComponentsDir:G._rootComponentsDir||G.componentsDir,componentsDir:g.dirname(V),skipSignalsRuntime:!0,skipEventDirectives:X0||k.length===0,defaultLayout:void 0};I.__stxProcessingDepth=(X.__stxProcessingDepth||0)+1;let G1=await L0(p,I,V,i0,z),D1=new Set(Array.isArray(X.__stx_preserved_client_expressions)?X.__stx_preserved_client_expressions:[]);for(let h of G1.matchAll(/\{\{([\s\S]*?)\}\}/g))D1.add(h[1].trim());if(D1.size>0)X.__stx_preserved_client_expressions=[...D1];let l=`stx_${L.replace(/[^a-zA-Z0-9]/g,"_")}_${++UK}_${Math.random().toString(36).slice(2,8)}`,a=G1;if(X0){let h="";if(Object.keys(Z).length>0)try{h=` data-stx-props="${D8(JSON.stringify(Z))}"`}catch{}let u=B?` stx-hydrate="${D8(B)}"`:"";a=`<div data-stx-scope="${l}"${h}${u}>${G1}</div>`;let P=await Promise.all(k.map(async(v)=>{let m=v.match(/<script([^>]*)>([\s\S]*)<\/script>/i);if(!m)return v;let[,n,z0]=m,H0=O$(z0,{filePath:V,projectRoot:process.cwd()}),k0=H0.code,u0=L$(H0.styles);k0=t1(k0).code;let{hasUserImports:H$,bundleClientScript:j0}=await Promise.resolve().then(() => (S5(),b5));if(H$(k0))k0=await j0(k0,V,{projectRoot:process.cwd(),minify:G.buildMode==="compile"});let{rewriteStxImportSpecifiers:j1}=await Promise.resolve().then(() => (s5(),c$));k0=k0.replace(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm,(m0,t)=>j1(t));let n0=o0(k0),E1=BK(n0),k1=`
7364
+ ${F.map((m)=>` - ${m}`).join(`
7365
+ `)}`:"";return`[Error loading component: ENOENT: no such file or directory, open '${$}']${h}`}z.add(V);let w;if(i$.has(V))w=i$.get(V);else try{w=await Bun.file(V).text(),i$.set(V,w)}catch(h){return`[Error loading component: ${h instanceof Error?h.message:String(h)}]`}let A=new Set(["__originalFilePath","__importedComponents"]),R={};for(let[h,m]of Object.entries(X))if(!h.startsWith("__")||A.has(h))R[h]=m;let{extractSlotContent:N}=await Promise.resolve().then(() => (A7(),w7)),M=N(Y),T={};if(M.defaultSlot?.trim())T.default=M.defaultSlot;for(let[h,m]of M.namedSlots)T[h]=m.content;let I={...R,...Z,props:Z,slot:Y,$slots:T,__processedComponents:U,__sections:{},...FK(Y)&&{__stx_force_signals:!0}};OK(w,I);let E=w,D=T$(E);if(D)E=D.content.trim();let y=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,S=[...w.matchAll(y)],k=[];for(let h of S){let m=h[1]||"",P=h[2]||"",v=m.includes("server");if(y1(m)&&P.trim())P=P1(P);if(v&&P)try{await q(P,I,V)}catch(n){}if(!v){let n=P.replace(/^\s*const\s*\{[^}]+\}\s*=\s*window\.stx\s*;?\s*\n?/gm,""),z0=n.includes("{{")&&n.includes("}}"),H0=n.includes("{!!")&&n.includes("!!}");if(z0||H0)n=R$(n,I);let k0=m.replace(/\s*\bts\b/g,"").replace(/\s*\blang\s*=\s*["']?(ts|typescript)["']?/gi,"");k.push(`<script${k0}>${n}</script>`)}}let C=w.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),x=C?C[1]:"",f=C?C[2]:"",d="",c=x&&/\bscoped\b/i.test(x);if(C)d=`<style${x}>${f}</style>`;let p=E;if(p=p.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),C)p=p.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");{let h=/@push\s*\(\s*['"]styles['"]\s*\)([\s\S]*?)@endpush/gi,m=[];if(p=p.replace(h,(P,v)=>{let u=v.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i);if(u)m.push(`<style${u[1]}>${u[2]}</style>`);return""}),p=p.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/gi,""),m.length>0)d=`${d}${m.join(`
7366
+ `)}`}if(Y&&p.includes("{{ text || slot }}"))p=p.replace(/\{\{\s*text\s*\|\|\s*slot\s*\}\}/g,()=>Y);let{applySlots:W0}=await Promise.resolve().then(() => (A7(),w7)),{defaultSlot:w0,namedSlots:B0}=M;p=await W0(p,w0,B0,I);for(let[h,m]of Object.entries(I))if(typeof m==="string"){if(m.includes("<")&&m.includes(">")||m.includes("&lt;")||m.includes("&quot;")){let P=q7(m);I[h]=P}}let X0=k.some((h)=>/\b(?:state|derived|effect|ref|reactive|computed|watch|watchEffect|useReactiveProp|defineProps|withDefaults|defineEmits|defineExpose|defineSlots)\s*(?:<[^<>()]*>)?\s*\(/.test(h)),I0=VK(k);if(I0.length>0)I.__stx_client_signal_names=I0;let i0={...G,_rootComponentsDir:G._rootComponentsDir||G.componentsDir,componentsDir:g.dirname(V),skipSignalsRuntime:!0,skipEventDirectives:X0||k.length===0,defaultLayout:void 0};I.__stxProcessingDepth=(X.__stxProcessingDepth||0)+1;let G1=await L0(p,I,V,i0,z),D1=new Set(Array.isArray(X.__stx_preserved_client_expressions)?X.__stx_preserved_client_expressions:[]);for(let h of G1.matchAll(/\{\{([\s\S]*?)\}\}/g))D1.add(h[1].trim());if(D1.size>0)X.__stx_preserved_client_expressions=[...D1];let l=`stx_${L.replace(/[^a-zA-Z0-9]/g,"_")}_${++UK}_${Math.random().toString(36).slice(2,8)}`,a=G1;if(X0){let h="";if(Object.keys(Z).length>0)try{h=` data-stx-props="${D8(JSON.stringify(Z))}"`}catch{}let m=_?` stx-hydrate="${D8(_)}"`:"";a=`<div data-stx-scope="${l}"${h}${m}>${G1}</div>`;let P=await Promise.all(k.map(async(v)=>{let u=v.match(/<script([^>]*)>([\s\S]*)<\/script>/i);if(!u)return v;let[,n,z0]=u,H0=O$(z0,{filePath:V,projectRoot:process.cwd()}),k0=H0.code,m0=L$(H0.styles);k0=t1(k0).code;let{hasUserImports:H$,bundleClientScript:j0}=await Promise.resolve().then(() => (S5(),b5));if(H$(k0))k0=await j0(k0,V,{projectRoot:process.cwd(),minify:G.buildMode==="compile"});let{rewriteStxImportSpecifiers:j1}=await Promise.resolve().then(() => (s5(),c$));k0=k0.replace(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm,(u0,t)=>j1(t));let n0=o0(k0),E1=_K(n0),k1=`
7349
7367
  (function() {
7350
7368
  ${Z5("const",[...C9,...E1],n0)}
7351
7369
  const __scope = window.stx._scopes = window.stx._scopes || {};
@@ -7365,7 +7383,7 @@ ${n0}
7365
7383
  // Register all defined signals and functions in this scope
7366
7384
  const __localVars = {};
7367
7385
  try {
7368
- ${E1.map((m0)=>`if (typeof ${m0} !== 'undefined') __localVars['${m0}'] = ${m0};`).join(`
7386
+ ${E1.map((u0)=>`if (typeof ${u0} !== 'undefined') __localVars['${u0}'] = ${u0};`).join(`
7369
7387
  `)}
7370
7388
  }
7371
7389
  catch (e) {}
@@ -7374,14 +7392,14 @@ catch (e) {}
7374
7392
  finally {
7375
7393
  window.__STX_CURRENT_ELEMENT__ = __previousCurrentElement;
7376
7394
  }
7377
- })();`;if(B)return`${u0}<script type="stx/island" data-stx-island="${l}" data-stx-scoped${n}>${k1}</script>`;return`${u0}<script data-stx-scoped${n}>${k1}</script>`}));if(a=a+`
7395
+ })();`;if(_)return`${m0}<script type="stx/island" data-stx-island="${l}" data-stx-scoped${n}>${k1}</script>`;return`${m0}<script data-stx-scoped${n}>${k1}</script>`}));if(a=a+`
7378
7396
  `+P.join(`
7379
7397
  `),d)a+=`
7380
7398
  `+d}else{if(d)a+=`
7381
- `+d;if(k.length>0){let h=I.__stx_event_bindings||[],u=P5(I),P=await Promise.all(k.map(async(v)=>{let m=v.match(/<script\b[^>]*>([\s\S]*?)<\/script>/);if(!m)return v;return await C5(m[1],{eventBindings:h,templateContent:a,filePath:V,projectRoot:process.cwd(),serverData:u})}));a+=`
7399
+ `+d;if(k.length>0){let h=I.__stx_event_bindings||[],m=P5(I),P=await Promise.all(k.map(async(v)=>{let u=v.match(/<script\b[^>]*>([\s\S]*?)<\/script>/);if(!u)return v;return await C5(u[1],{eventBindings:h,templateContent:a,filePath:V,projectRoot:process.cwd(),serverData:m})}));a+=`
7382
7400
  `+P.join(`
7383
- `),I.__stx_event_bindings=[]}}if(c){let h=M$(a,V);if(h.hasScoped)a=h.html}return a}catch(_){return`[Error processing component: ${_ instanceof Error?_.message:String(_)}]`}finally{W.delete($)}}async function o($){return Bun.file($).exists()}function x7($,Z){let Y=g.resolve(Z),J=g.resolve($),X=Y.endsWith(g.sep)?Y:Y+g.sep;if(J===Y||J.startsWith(X))return J;return null}async function f7($,Z,Y,J){let X=await wK($,Z,Y,J);if(X===null)return null;let Q=x7(X,process.cwd());if(Q)return Q;let G=[Y.root,Y.layoutsDir,Y.componentsDir,Y.partialsDir,Y.pagesDir].filter((K)=>typeof K==="string"&&K.length>0);for(let K of G){let z=g.isAbsolute(K)?K:g.resolve(process.cwd(),K);if(x7(X,z))return g.resolve(X)}return console.warn(`[stx] rejected resolved template path that escapes project root: ${X} (template: ${$}, from: ${Z})`),null}async function wK($,Z,Y,J){if(Y.debug)console.log(`Resolving template path: ${$} from ${Z}`);let X=g.dirname(Z),Q=process.cwd();if($.startsWith("/")){let j=g.join(Q,$),B=x7(j,Q);if(!B)return console.warn(`[stx] rejected template path that escapes project root: ${$} (from ${Z})`),null;if(Y.debug)console.log(`Checking absolute path: ${B}`);if(await o(B)&&J)J.add(B);return B}let G=g.join(X,$);if(await o(G)){if(Y.debug)console.log(`Found direct path: ${G}`);if(J)J.add(G);return G}if(!$.endsWith(".stx")&&!$.endsWith(".jsx")&&!$.endsWith(".tsx"))for(let j of[".stx",".tsx",".jsx"]){let B=`${G}${j}`;if(await o(B)){if(Y.debug)console.log(`Found direct path with extension: ${B}`);if(J)J.add(B);return B}}let K="",z=g.resolve(X),q=process.cwd();for(let j=0;j<10;j++){let B=g.join(z,"layouts"),_=!1;try{_=WK.statSync(B,{throwIfNoEntry:!1})?.isDirectory()??!1}catch{}if(_){K=B;break}let H=g.dirname(z);if(H===z||H.length<q.length)break;z=H}if(K){let j=$.startsWith("layouts/")?$.slice(8):$,B=g.join(K,j);if(await o(B)){if(Y.debug)console.log(`Found in current layouts dir: ${B}`);if(J)J.add(B);return B}if(!j.endsWith(".stx")){let _=`${B}.stx`;if(await o(_)){if(Y.debug)console.log(`Found in current layouts dir with extension: ${_}`);if(J)J.add(_);return _}}}if(Y.layoutsDir){let j=g.isAbsolute(Y.layoutsDir)?Y.layoutsDir:g.resolve(process.cwd(),Y.layoutsDir),B=$.startsWith("layouts/")?$.slice(8):$,_=g.join(j,B);if(await o(_)){if(Y.debug)console.log(`Found in options.layoutsDir: ${_}`);if(J)J.add(_);return _}if(!$.endsWith(".stx")){let H=`${_}.stx`;if(await o(H)){if(Y.debug)console.log(`Found in options.layoutsDir with extension: ${H}`);if(J)J.add(H);return H}}}if($.startsWith("layouts/")||$.includes("/layouts/")){let j=$.split("layouts/"),B=g.join(Y.partialsDir||X,"layouts",j[1]);if(await o(B)){if(Y.debug)console.log(`Found in layouts path: ${B}`);if(J)J.add(B);return B}if(!B.endsWith(".stx")){let _=`${B}.stx`;if(await o(_)){if(Y.debug)console.log(`Found in layouts path with extension: ${_}`);if(J)J.add(_);return _}}}if(Y.partialsDir){if(K=g.join(Y.partialsDir,"layouts"),await o(K)){let j=g.join(K,$);if(await o(j)){if(Y.debug)console.log(`Found in partials layouts dir: ${j}`);if(J)J.add(j);return j}if(!$.endsWith(".stx")){let B=`${j}.stx`;if(await o(B)){if(Y.debug)console.log(`Found in partials layouts dir with extension: ${B}`);if(J)J.add(B);return B}}}}let W=Y.partialsDir||g.join(process.cwd(),"views"),U=g.join(W,$);if(await o(U)){if(Y.debug)console.log(`Found in views path: ${U}`);if(J)J.add(U);return U}if(!$.endsWith(".stx")){let j=`${U}.stx`;if(await o(j)){if(Y.debug)console.log(`Found in views path with extension: ${j}`);if(J)J.add(j);return j}}if(X.includes("temp")){let j=g.join(g.dirname(X),"layouts",$);if(await o(j)){if(Y.debug)console.log(`Found in temp layouts dir: ${j}`);if(J)J.add(j);return j}if(!$.endsWith(".stx")){let B=`${j}.stx`;if(await o(B)){if(Y.debug)console.log(`Found in temp layouts dir with extension: ${B}`);if(J)J.add(B);return B}}}if(Y.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 E8($,Z,Y){let J=0,X="",Q="";try{if(typeof Z==="number"&&Z>=0){let G=$.split(`
7384
- `),K=0;for(let z=0;z<G.length;z++)if(K+=G[z].length+1,K>=Z){J=z+1,X=G[z].trim();let q=Math.max(0,z-2),W=Math.min(G.length,z+3);Q=G.slice(q,W).map((U,j)=>{let B=q+j+1;return`${B===J?"> ":" "}${B}: ${U}`}).join(`
7401
+ `),I.__stx_event_bindings=[]}}if(c){let h=M$(a,V);if(h.hasScoped)a=h.html}return a}catch(B){return`[Error processing component: ${B instanceof Error?B.message:String(B)}]`}finally{W.delete($)}}async function o($){return Bun.file($).exists()}function x7($,Z){let Y=g.resolve(Z),J=g.resolve($),X=Y.endsWith(g.sep)?Y:Y+g.sep;if(J===Y||J.startsWith(X))return J;return null}async function f7($,Z,Y,J){let X=await wK($,Z,Y,J);if(X===null)return null;let Q=x7(X,process.cwd());if(Q)return Q;let G=[Y.root,Y.layoutsDir,Y.componentsDir,Y.partialsDir,Y.pagesDir].filter((K)=>typeof K==="string"&&K.length>0);for(let K of G){let z=g.isAbsolute(K)?K:g.resolve(process.cwd(),K);if(x7(X,z))return g.resolve(X)}return console.warn(`[stx] rejected resolved template path that escapes project root: ${X} (template: ${$}, from: ${Z})`),null}async function wK($,Z,Y,J){if(Y.debug)console.log(`Resolving template path: ${$} from ${Z}`);let X=g.dirname(Z),Q=process.cwd();if($.startsWith("/")){let j=g.join(Q,$),_=x7(j,Q);if(!_)return console.warn(`[stx] rejected template path that escapes project root: ${$} (from ${Z})`),null;if(Y.debug)console.log(`Checking absolute path: ${_}`);if(await o(_)&&J)J.add(_);return _}let G=g.join(X,$);if(await o(G)){if(Y.debug)console.log(`Found direct path: ${G}`);if(J)J.add(G);return G}if(!$.endsWith(".stx")&&!$.endsWith(".jsx")&&!$.endsWith(".tsx"))for(let j of[".stx",".tsx",".jsx"]){let _=`${G}${j}`;if(await o(_)){if(Y.debug)console.log(`Found direct path with extension: ${_}`);if(J)J.add(_);return _}}let K="",z=g.resolve(X),q=process.cwd();for(let j=0;j<10;j++){let _=g.join(z,"layouts"),B=!1;try{B=WK.statSync(_,{throwIfNoEntry:!1})?.isDirectory()??!1}catch{}if(B){K=_;break}let H=g.dirname(z);if(H===z||H.length<q.length)break;z=H}if(K){let j=$.startsWith("layouts/")?$.slice(8):$,_=g.join(K,j);if(await o(_)){if(Y.debug)console.log(`Found in current layouts dir: ${_}`);if(J)J.add(_);return _}if(!j.endsWith(".stx")){let B=`${_}.stx`;if(await o(B)){if(Y.debug)console.log(`Found in current layouts dir with extension: ${B}`);if(J)J.add(B);return B}}}if(Y.layoutsDir){let j=g.isAbsolute(Y.layoutsDir)?Y.layoutsDir:g.resolve(process.cwd(),Y.layoutsDir),_=$.startsWith("layouts/")?$.slice(8):$,B=g.join(j,_);if(await o(B)){if(Y.debug)console.log(`Found in options.layoutsDir: ${B}`);if(J)J.add(B);return B}if(!$.endsWith(".stx")){let H=`${B}.stx`;if(await o(H)){if(Y.debug)console.log(`Found in options.layoutsDir with extension: ${H}`);if(J)J.add(H);return H}}}if($.startsWith("layouts/")||$.includes("/layouts/")){let j=$.split("layouts/"),_=g.join(Y.partialsDir||X,"layouts",j[1]);if(await o(_)){if(Y.debug)console.log(`Found in layouts path: ${_}`);if(J)J.add(_);return _}if(!_.endsWith(".stx")){let B=`${_}.stx`;if(await o(B)){if(Y.debug)console.log(`Found in layouts path with extension: ${B}`);if(J)J.add(B);return B}}}if(Y.partialsDir){if(K=g.join(Y.partialsDir,"layouts"),await o(K)){let j=g.join(K,$);if(await o(j)){if(Y.debug)console.log(`Found in partials layouts dir: ${j}`);if(J)J.add(j);return j}if(!$.endsWith(".stx")){let _=`${j}.stx`;if(await o(_)){if(Y.debug)console.log(`Found in partials layouts dir with extension: ${_}`);if(J)J.add(_);return _}}}}let W=Y.partialsDir||g.join(process.cwd(),"views"),U=g.join(W,$);if(await o(U)){if(Y.debug)console.log(`Found in views path: ${U}`);if(J)J.add(U);return U}if(!$.endsWith(".stx")){let j=`${U}.stx`;if(await o(j)){if(Y.debug)console.log(`Found in views path with extension: ${j}`);if(J)J.add(j);return j}}if(X.includes("temp")){let j=g.join(g.dirname(X),"layouts",$);if(await o(j)){if(Y.debug)console.log(`Found in temp layouts dir: ${j}`);if(J)J.add(j);return j}if(!$.endsWith(".stx")){let _=`${j}.stx`;if(await o(_)){if(Y.debug)console.log(`Found in temp layouts dir with extension: ${_}`);if(J)J.add(_);return _}}}if(Y.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 E8($,Z,Y){let J=0,X="",Q="";try{if(typeof Z==="number"&&Z>=0){let G=$.split(`
7402
+ `),K=0;for(let z=0;z<G.length;z++)if(K+=G[z].length+1,K>=Z){J=z+1,X=G[z].trim();let q=Math.max(0,z-2),W=Math.min(G.length,z+3);Q=G.slice(q,W).map((U,j)=>{let _=q+j+1;return`${_===J?"> ":" "}${_}: ${U}`}).join(`
7385
7403
  `);break}}else if(Y){let G=$.indexOf(Y);if(G>=0)return E8($,G)}}catch{}return{lineNumber:J,lineContent:X,context:Q}}function q0($,Z,Y,J,X,Q){let{lineNumber:G,context:K}=E8(J,X,Q),z=Y.split("/").pop(),q=0;if(typeof X==="number"&&X>=0&&J){let U=J.lastIndexOf(`
7386
7404
  `,Math.max(0,X-1));q=X-(U+1)+1}let W="";if(G>0)W+=`
7387
7405
  ${Y}:${G}${q>0?`:${q}`:""}: ${$.toLowerCase()} error: ${Z}
@@ -7395,8 +7413,8 @@ ${$0.yellow}${$0.bold}Message:${$0.reset} ${Z}
7395
7413
  `,K)W+=`
7396
7414
  ${$0.blue}${$0.bold}Context:${$0.reset}
7397
7415
  ${$0.dim}${K}${$0.reset}
7398
- `;return W}function B8(){i$.clear()}var i$,UK=0,$0;var N0=b(()=>{v5();Y1();d5();X5();o$();b1();B7();_7();m9();c5();i$=new u5(500);$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"}});async function k8($,Z,Y=""){let J=$,X=[],Q=/@markdown(?:\([^)]*\))?/g,G;while((G=Q.exec($))!==null){let K=G.index,z=G[0].match(/@markdown\(([^)]*)\)/),q=z?z[1]:"",W=K+G[0].length,U=1,j=W,B=-1;while(U>0&&j<$.length){let L=$.indexOf("@markdown",j),V=$.indexOf("@endmarkdown",j);if(V===-1)break;if(L!==-1&&L<V&&L!==K){let O=$[L+9];if(O==="("||O===`
7399
- `||O==="\r"||O===" "||O===void 0)U++;j=L+9}else{if(U--,U===0){B=V;break}j=V+12}}if(B===-1)continue;let _=$.slice(W,B),H=$.slice(K,B+12);X.push({fullMatch:H,options:q,content:_,index:K}),Q.lastIndex=B+12}for(let{fullMatch:K,options:z,content:q,index:W}of X)try{let U={};if(z)z.split(",").forEach((_)=>{let H=_.trim();if(H)U[H]=!0});let j={gfm:U.gfm??!0,breaks:U.breaks??!1},B=k5(q.trim(),j);J=J.split(K).join(B)}catch(U){let j=U instanceof Error?U.message:String(U),B=q0("Markdown Directive",`Error processing markdown: ${j}`,Y,$,W,K);J=J.split(K).join(B)}return J}async function b8($,Z,Y,J){let X={gfm:!0,breaks:!1};return Z.forEach((Q)=>{let G=Q.trim().replace(/['"]/g,"");if(G==="breaks")X.breaks=!0;if(G==="no-gfm")X.gfm=!1}),k5($.trim(),X)}var g7=b(()=>{N0()});function NK($){if(AK.set($.name,$),$.client)RK.set($.name,$.client)}function s$($){return NK($),{name:$.name,hasEndTag:$.hasEndTag??!0,description:$.description,handler:async(Y,J,X,Q)=>{let G=MK(J,$.defaults);if($.validate){let z=$.validate(G);if(z!==!0){let q=typeof z==="string"?z:`Invalid parameters for @${$.name}`;throw Error(q)}}let K=Y;if($.transform)K=await $.transform(Y,G,X,Q);if($.clientScript){let z=$.clientScript(G);K+=`<script>${z}</script>`}if($.css){let z=$.css(G);K+=`<style>${z}</style>`}return K}}}function MK($,Z){let Y={...Z};for(let J of $){let X=J.indexOf(":"),Q=J.indexOf("="),G=X>=0&&(Q<0||X<Q)?X:Q;if(G>=0){let K=J.slice(0,G).trim(),z=J.slice(G+1).trim();if(z==="true")z=!0;else if(z==="false")z=!1;else if(z==="null")z=null;else if(!Number.isNaN(Number(z)))z=Number(z);else if(typeof z==="string"&&z.startsWith("{"))try{z=JSON.parse(z)}catch{}Y[K]=z}else{let K=Object.keys(Y).filter((z)=>!Z||!(z in Z)).length;Y[K===0?"value":`arg${K}`]=J}}return Y}var AK,RK;var h7=b(()=>{AK=new Map,RK=new Map});function d7($,Z=z5,Y={},J){return Z.sort((X,Q)=>X-Q).map((X)=>{return`${a5($,{...Y,w:X,fm:J})} ${X}w`}).join(", ")}function S8($,Z,Y=TK,J={},X){return Y.sort((Q,G)=>Q-G).map((Q)=>{let G=Math.round(Z*Q);return`${a5($,{...J,w:G,dpr:Q,fm:X})} ${Q}x`}).join(", ")}function u7($,Z="100vw"){if(!$||Object.keys($).length===0)return Z;let J=Object.entries($).map(([X,Q])=>{let G=/^\d+$/.test(X)?`${X}px`:X;return{bp:G,size:Q,numericBp:Number.parseInt(G)||0}}).sort((X,Q)=>X.numericBp-Q.numericBp).map(({bp:X,size:Q})=>`(max-width: ${X}) ${Q}`);return J.push(Z),J.join(", ")}function a5($,Z={}){let Y=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(Y.length===0)return $;let J=Y.map(([Q,G])=>`${Q}=${encodeURIComponent(G)}`).join("&"),X=$.includes("?")?"&":"?";return`${$}${X}${J}`}function m7($){return IK[$]||"application/octet-stream"}var z5,TK,r5,IK;var p7=b(()=>{z5=[320,480,640,768,1024,1280,1536,1920,2560],TK=[1,1.5,2,3],r5=["avif","webp","jpeg"],IK={avif:"image/avif",webp:"image/webp",jpeg:"image/jpeg",png:"image/png",gif:"image/gif"}});async function EK(){try{return await import("ts-images")}catch{return null}}async function kK($,Z={}){let Y={...DK,...Z},J=await EK();if(J)try{return await bK($,Y,J)}catch(X){console.warn(`[stx-media] ts-images placeholder generation failed, using fallback: ${X}`)}return SK($,Y)}async function bK($,Z,Y){let{generatePlaceholder:J,generateThumbHash:X}=Y,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 X($)).dataUrl,width:32,height:32,aspectRatio:1,originalWidth:0,originalHeight:0,strategy:"thumbhash"};let K=await J($,{width:Z.width,height:Z.height,quality:Z.quality,blurLevel:Z.blurLevel,strategy:G,base64Encode:!0});return{dataURL:K.dataURL,width:K.width,height:K.height,aspectRatio:K.aspectRatio,originalWidth:K.originalWidth,originalHeight:K.originalHeight,strategy:Z.strategy,dominantColor:K.dominantColor,css:K.css}}function SK($,Z){let Y=Z.width||20,J=Z.height||Y,X="#e5e7eb",Q=`<svg xmlns="http://www.w3.org/2000/svg" width="${Y}" height="${J}" viewBox="0 0 ${Y} ${J}"><rect fill="#e5e7eb" width="${Y}" height="${J}"/></svg>`;return{dataURL:`data:image/svg+xml;charset=utf-8,${encodeURIComponent(Q)}`,width:Y,height:J,aspectRatio:Y/J,originalWidth:0,originalHeight:0,strategy:Z.strategy,dominantColor:"#e5e7eb"}}function y8($,Z,Y={}){let J=Y.transitionDuration||300,X=Y.easing||"ease-out";return`
7416
+ `;return W}function _8(){i$.clear()}var i$,UK=0,$0;var N0=b(()=>{v5();Y1();d5();X5();o$();b1();_7();B7();u9();c5();i$=new m5(500);$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"}});async function k8($,Z,Y=""){let J=$,X=[],Q=/@markdown(?:\([^)]*\))?/g,G;while((G=Q.exec($))!==null){let K=G.index,z=G[0].match(/@markdown\(([^)]*)\)/),q=z?z[1]:"",W=K+G[0].length,U=1,j=W,_=-1;while(U>0&&j<$.length){let L=$.indexOf("@markdown",j),V=$.indexOf("@endmarkdown",j);if(V===-1)break;if(L!==-1&&L<V&&L!==K){let O=$[L+9];if(O==="("||O===`
7417
+ `||O==="\r"||O===" "||O===void 0)U++;j=L+9}else{if(U--,U===0){_=V;break}j=V+12}}if(_===-1)continue;let B=$.slice(W,_),H=$.slice(K,_+12);X.push({fullMatch:H,options:q,content:B,index:K}),Q.lastIndex=_+12}for(let{fullMatch:K,options:z,content:q,index:W}of X)try{let U={};if(z)z.split(",").forEach((B)=>{let H=B.trim();if(H)U[H]=!0});let j={gfm:U.gfm??!0,breaks:U.breaks??!1},_=k5(q.trim(),j);J=J.split(K).join(_)}catch(U){let j=U instanceof Error?U.message:String(U),_=q0("Markdown Directive",`Error processing markdown: ${j}`,Y,$,W,K);J=J.split(K).join(_)}return J}async function b8($,Z,Y,J){let X={gfm:!0,breaks:!1};return Z.forEach((Q)=>{let G=Q.trim().replace(/['"]/g,"");if(G==="breaks")X.breaks=!0;if(G==="no-gfm")X.gfm=!1}),k5($.trim(),X)}var g7=b(()=>{N0()});function NK($){if(AK.set($.name,$),$.client)RK.set($.name,$.client)}function s$($){return NK($),{name:$.name,hasEndTag:$.hasEndTag??!0,description:$.description,handler:async(Y,J,X,Q)=>{let G=MK(J,$.defaults);if($.validate){let z=$.validate(G);if(z!==!0){let q=typeof z==="string"?z:`Invalid parameters for @${$.name}`;throw Error(q)}}let K=Y;if($.transform)K=await $.transform(Y,G,X,Q);if($.clientScript){let z=$.clientScript(G);K+=`<script>${z}</script>`}if($.css){let z=$.css(G);K+=`<style>${z}</style>`}return K}}}function MK($,Z){let Y={...Z};for(let J of $){let X=J.indexOf(":"),Q=J.indexOf("="),G=X>=0&&(Q<0||X<Q)?X:Q;if(G>=0){let K=J.slice(0,G).trim(),z=J.slice(G+1).trim();if(z==="true")z=!0;else if(z==="false")z=!1;else if(z==="null")z=null;else if(!Number.isNaN(Number(z)))z=Number(z);else if(typeof z==="string"&&z.startsWith("{"))try{z=JSON.parse(z)}catch{}Y[K]=z}else{let K=Object.keys(Y).filter((z)=>!Z||!(z in Z)).length;Y[K===0?"value":`arg${K}`]=J}}return Y}var AK,RK;var h7=b(()=>{AK=new Map,RK=new Map});function d7($,Z=z5,Y={},J){return Z.sort((X,Q)=>X-Q).map((X)=>{return`${a5($,{...Y,w:X,fm:J})} ${X}w`}).join(", ")}function S8($,Z,Y=TK,J={},X){return Y.sort((Q,G)=>Q-G).map((Q)=>{let G=Math.round(Z*Q);return`${a5($,{...J,w:G,dpr:Q,fm:X})} ${Q}x`}).join(", ")}function m7($,Z="100vw"){if(!$||Object.keys($).length===0)return Z;let J=Object.entries($).map(([X,Q])=>{let G=/^\d+$/.test(X)?`${X}px`:X;return{bp:G,size:Q,numericBp:Number.parseInt(G)||0}}).sort((X,Q)=>X.numericBp-Q.numericBp).map(({bp:X,size:Q})=>`(max-width: ${X}) ${Q}`);return J.push(Z),J.join(", ")}function a5($,Z={}){let Y=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(Y.length===0)return $;let J=Y.map(([Q,G])=>`${Q}=${encodeURIComponent(G)}`).join("&"),X=$.includes("?")?"&":"?";return`${$}${X}${J}`}function u7($){return IK[$]||"application/octet-stream"}var z5,TK,r5,IK;var p7=b(()=>{z5=[320,480,640,768,1024,1280,1536,1920,2560],TK=[1,1.5,2,3],r5=["avif","webp","jpeg"],IK={avif:"image/avif",webp:"image/webp",jpeg:"image/jpeg",png:"image/png",gif:"image/gif"}});async function EK(){try{return await import("ts-images")}catch{return null}}async function kK($,Z={}){let Y={...DK,...Z},J=await EK();if(J)try{return await bK($,Y,J)}catch(X){console.warn(`[stx-media] ts-images placeholder generation failed, using fallback: ${X}`)}return SK($,Y)}async function bK($,Z,Y){let{generatePlaceholder:J,generateThumbHash:X}=Y,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 X($)).dataUrl,width:32,height:32,aspectRatio:1,originalWidth:0,originalHeight:0,strategy:"thumbhash"};let K=await J($,{width:Z.width,height:Z.height,quality:Z.quality,blurLevel:Z.blurLevel,strategy:G,base64Encode:!0});return{dataURL:K.dataURL,width:K.width,height:K.height,aspectRatio:K.aspectRatio,originalWidth:K.originalWidth,originalHeight:K.originalHeight,strategy:Z.strategy,dominantColor:K.dominantColor,css:K.css}}function SK($,Z){let Y=Z.width||20,J=Z.height||Y,X="#e5e7eb",Q=`<svg xmlns="http://www.w3.org/2000/svg" width="${Y}" height="${J}" viewBox="0 0 ${Y} ${J}"><rect fill="#e5e7eb" width="${Y}" height="${J}"/></svg>`;return{dataURL:`data:image/svg+xml;charset=utf-8,${encodeURIComponent(Q)}`,width:Y,height:J,aspectRatio:Y/J,originalWidth:0,originalHeight:0,strategy:Z.strategy,dominantColor:"#e5e7eb"}}function y8($,Z,Y={}){let J=Y.transitionDuration||300,X=Y.easing||"ease-out";return`
7400
7418
  #${$} {
7401
7419
  --stx-img-transition-duration: ${J}ms;
7402
7420
  --stx-img-transition-easing: ${X};
@@ -7442,8 +7460,8 @@ ${$0.dim}${K}${$0.reset}
7442
7460
  filter: blur(0);
7443
7461
  transform: scale(1);
7444
7462
  }
7445
- `.trim();l7=new Map});import{createHash as x8}from"crypto";import{readFile as yK,stat as f8}from"fs/promises";async function b0($){try{let Z=await yK($);return x8("sha256").update(Z).digest("hex").slice(0,16)}catch{return""}}function v8($){return x8("sha256").update($).digest("hex").slice(0,16)}function r$($,Z){let Y=JSON.stringify(Z,Object.keys(Z).sort());return`${v8($)}-${v8(Y)}`}async function i7($){try{return(await f8($)).mtimeMs}catch{return 0}}async function D0($){try{return await f8($),!0}catch{return!1}}var d1=()=>{};import{mkdir as PK,readFile as CK,writeFile as vK,readdir as zO,rm as xK,stat as qO}from"fs/promises";import{join as h8,dirname as fK}from"path";async function gK($){try{await PK($,{recursive:!0})}catch{}}function d8($,Z,Y){return h8($,Y,`${Z}.json`)}async function g8($,Z,Y){if((Date.now()-$.createdAt)/86400000>Y)return!1;if(await i7(Z)!==$.srcMtime)return!1;return!0}async function a$($,Z,Y,J=n7){if(!J.enabled)return null;let X=r$($,Z),Q=q5.get(X);if(Q){if(await g8(Q,$,J.maxAge))return Q.lastAccessedAt=Date.now(),Q.data;q5.delete(X)}let G=d8(J.directory,X,Y);if(await D0(G))try{let K=await CK(G,"utf-8"),z=JSON.parse(K);if(await g8(z,$,J.maxAge))return z.lastAccessedAt=Date.now(),q5.set(X,z),z.data}catch{}return null}async function t$($,Z,Y,J,X=n7){if(!X.enabled)return;let Q=r$($,Z),G=await b0($),K=await i7($),z={key:Q,src:$,srcHash:G,srcMtime:K,optionsHash:r$("",Z),data:Y,createdAt:Date.now(),lastAccessedAt:Date.now()};q5.set(Q,z);let q=d8(X.directory,Q,J);try{await gK(fK(q)),await vK(q,JSON.stringify(z,null,2))}catch(W){console.warn(`[stx-media] Failed to write cache: ${W}`)}}async function e$($,Z=n7){if($==="all")q5.clear();else q5.clear();let Y=$==="all"?["image","video"]:[$];for(let J of Y){let X=h8(Z.directory,J);try{await xK(X,{recursive:!0,force:!0})}catch{}}}var q5,n7;var o7=b(()=>{d1();q5=new Map,n7={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500}});class Z4{config;constructor($={}){this.config={...hK,...$}}async get($,Z){return a$($,Z,"image",this.config)}async set($,Z,Y){return t$($,Z,Y,"image",this.config)}async clear(){return e$("image",this.config)}updateConfig($){this.config={...this.config,...$}}}function s7($){if(!$4)$4=new Z4($);else if($)$4.updateConfig($);return $4}async function Y4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return s7(J).get($,Z)}async function J4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return s7(X).set($,Z,Y)}async function u8(){return s7().clear()}var hK,$4=null;var r7=b(()=>{o7();hK={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500,cacheVariants:!0,cachePlaceholders:!0}});import{resolve as dK,basename as uK,extname as mK,join as pK}from"path";import{mkdir as lK}from"fs/promises";async function a7(){try{return await import("ts-images")}catch{return null}}function m8($){switch($){case"quality":return{jpeg:{quality:90,mozjpeg:!0,progressive:!0},png:{compressionLevel:6,palette:!1},webp:{quality:90,effort:6,smartSubsample:!0},avif:{quality:85,effort:6}};case"performance":return{jpeg:{quality:70,mozjpeg:!0,progressive:!0},png:{compressionLevel:9,palette:!0},webp:{quality:70,effort:4,smartSubsample:!0},avif:{quality:60,effort:2}};case"web":default:return{jpeg:{quality:82,mozjpeg:!0,progressive:!0},png:{compressionLevel:8,palette:!1},webp:{quality:82,effort:5,smartSubsample:!0},avif:{quality:75,effort:4}}}}function cK($,Z){let Y=Z?m8(Z):m8("web"),J=$.formatQuality||{};return{jpeg:{...Y.jpeg,...J.jpeg},png:{...Y.png,...J.png},webp:{...Y.webp,...J.webp},avif:{...Y.avif,...J.avif}}}async function p8($,Z,Y){let J=await a7();if(!J)return console.warn("[stx-media] ts-images not installed, skipping optimization"),{src:$,processed:!1};let X=await Y4($,Z,Y);if(X)return X;try{let Q=dK($);if(!await D0(Q))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let G=cK(Y,Z.preset),K=Y.outputDir||"dist/images",z=Y.baseUrl||"/images";await lK(K,{recursive:!0});let q=await b0(Q),W=uK($,mK($)),U=Z.outputFormat?[Z.outputFormat]:Y.defaultFormats||["avif","webp","jpeg"],j={src:$,processed:!0,variants:[],hash:q},B=null;if(Z.transformations&&Z.transformations.length>0)B=await t7(Q,Z.transformations,J);for(let _ of U){let H=G[_]||{},L=`${W}-${q}.${_}`,V=pK(K,L);try{let O=await J.optimizeImage({input:B||Q,output:V,format:_,quality:H.quality,progressive:H.progressive});if(O){if(j.variants.push({path:V,url:`${z}/${L}`,width:O.width||0,height:O.height||0,format:_,size:O.outputSize||0}),!j.originalWidth&&O.width)j.originalWidth=O.width,j.originalHeight=O.height}}catch(O){j.errors=j.errors||[],j.errors.push(`Failed to optimize ${_}: ${O}`)}}if(Z.embedThumbhash||Z.placeholder==="thumbhash")try{let _=await J.generateThumbHash(Q);j.placeholder=_.dataUrl}catch(_){j.errors=j.errors||[],j.errors.push(`Failed to generate thumbhash: ${_}`)}if(Z.useDominantColor)try{let _=await J.generatePlaceholder(Q,{strategy:"dominant-color"});j.dominantColor=_.dominantColor}catch(_){j.errors=j.errors||[],j.errors.push(`Failed to extract dominant color: ${_}`)}return await J4($,Z,j,Y),j}catch(Q){return{src:$,processed:!1,errors:[`Processing failed: ${Q}`]}}}async function l8($,Z,Y,J){let X=await a7();if(!X)return{success:!1,error:"ts-images not installed"};try{return{success:!0,size:(await X.optimizeImage({input:$,output:J,format:Z,quality:Y}))?.outputSize}}catch(Q){return{success:!1,error:String(Q)}}}async function t7($,Z,Y){let J=Y||await a7();if(!J)return console.warn("[stx-media] ts-images not installed, skipping transformations"),null;try{let X=await J.decode($);for(let Q of Z){let G=Q.options||{};switch(Q.type){case"resize":if(G.width||G.height)X=await J.resize(X,{width:G.width,height:G.height,fit:G.fit});break;case"blur":if(G.sigma!==void 0)X=await J.blur(X,G.sigma);break;case"sharpen":if(G.amount!==void 0)X=await J.sharpen(X,G.amount);break;case"grayscale":X=await J.grayscale(X);break;case"rotate":if(G.angle!==void 0)X=await J.rotate(X,G.angle);break;case"flip":X=await J.flip(X);break;case"flop":X=await J.flop(X);break;case"brightness":if(G.value!==void 0)X=await J.brightness(X,G.value);break;case"contrast":if(G.value!==void 0)X=await J.contrast(X,G.value);break;case"saturation":if(G.value!==void 0)X=await J.saturation(X,G.value);break}}return await J.encode(X,"png")}catch(X){return console.error(`[stx-media] Transformation failed: ${X}`),null}}var c8=b(()=>{d1();r7()});import{resolve as iK,basename as nK,extname as oK,join as sK}from"path";import{mkdir as rK}from"fs/promises";async function aK(){try{return await import("ts-images")}catch{return null}}async function i8($,Z,Y){let J=await aK();if(!J)return console.warn("[stx-media] ts-images not installed, skipping responsive generation"),null;let X=iK($);if(!await D0(X))return console.warn(`[stx-media] Source file not found: ${$}`),null;try{let Q=Z.responsiveWidths||Y.breakpoints||tK,G=Z.formats||Y.defaultFormats||["avif","webp","jpeg"],K=Y.outputDir||"dist/images",z=Y.baseUrl||"/images";await rK(K,{recursive:!0});let q=await b0(X),W=nK($,oK($)),U=Y.formatQuality||{jpeg:{quality:82},png:{quality:80},webp:{quality:82},avif:{quality:75}},j={src:$,byFormat:{},srcsets:{}};for(let _ of G){j.byFormat[_]=[];let H=[];for(let L of Q){let V=`${W}-${L}w-${q}.${_}`,O=sK(K,V),F=`${z}/${V}`;try{let w=U[_]?.quality||80;if(await D0(O)){j.byFormat[_].push({path:O,url:F,width:L,height:0,format:_,size:0}),H.push(`${F} ${L}w`);continue}let A=await J.processImage({input:X,output:O,format:_,quality:w,resize:{width:L}});if(A)j.byFormat[_].push({path:O,url:F,width:L,height:A.height||Math.round(L*(A.height||1)/(A.width||1)),format:_,size:A.outputSize||0}),H.push(`${F} ${L}w`)}catch(w){console.warn(`[stx-media] Failed to generate ${_} at ${L}w: ${w}`)}}j.srcsets[_]=H.join(", ")}let B=Z.placeholder||Y.placeholderStrategy||"thumbhash";if(B!=="none")try{if(B==="thumbhash"){let _=await J.generateThumbHash(X);j.placeholder={dataURL:_.dataUrl,width:_.width||32,height:_.height||32,strategy:"thumbhash"}}else{let _=await J.generatePlaceholder(X,{strategy:B,width:20});j.placeholder={dataURL:_.dataURL,width:_.width,height:_.height,strategy:B}}}catch(_){console.warn(`[stx-media] Failed to generate placeholder: ${_}`)}return j.sizes=Z.sizes||eK(Q),j}catch(Q){return console.error(`[stx-media] Responsive generation failed: ${Q}`),null}}function eK($){let Z=[...$].sort((J,X)=>J-X),Y=[];for(let J=0;J<Z.length-1;J++){let X=Z[J];Y.push(`(max-width: ${X}px) ${X}px`)}return Y.push(`${Z[Z.length-1]}px`),Y.join(", ")}function n8($,Z="width"){if(!$||$.length===0)return"";if(Z==="dpr")return $.filter((Y)=>Y.dpr).map((Y)=>`${Y.url} ${Y.dpr}x`).join(", ");return $.map((Y)=>`${Y.url} ${Y.width}w`).join(", ")}var tK;var o8=b(()=>{d1();tK=[320,480,640,768,1024,1280,1536,1920]});var s8={};e(s8,{setCachedImageResult:()=>J4,processImage:()=>p8,optimizeImage:()=>l8,getCachedImageResult:()=>Y4,generateSrcset:()=>n8,generateResponsiveVariants:()=>i8,clearImageCache:()=>u8,applyTransformations:()=>t7,ImageProcessorCache:()=>Z4});var r8=b(()=>{c8();o8();r7()});async function $z(){try{return await Promise.resolve().then(() => (r8(),s8))}catch($){if(!a8)console.warn("[stx-media] Image processor not available, some features disabled:",$),a8=!0;return null}}async function X4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipOptimization){if(Y.tsImagesConfig?.enabled&&!Y.isDev)return Xz(J,Y)}if(Y.processedResult?.processed)return Y3($,Y.processedResult,Z);if(Y.responsiveVariants)return ZZ($,Y.responsiveVariants,Z);let{src:X,alt:Q,width:G,height:K,sizes:z,widths:q=z5,dpr:W,formats:U=r5,quality:j=e7,params:B={},placeholder:_="none",placeholderOptions:H={},lazy:L=!0,priority:V=!1,loading:O=V?"eager":G4,decoding:F=Q4,fetchpriority:w,objectFit:A,objectPosition:R,crossorigin:N,referrerpolicy:M}=$,T=$.class,I=$.style,E=$.id,D=$.data||{},{isDev:y=!1,baseUrl:S=""}=Z;if(y&&!Z.optimize)return Jz($);let k,C,x=E||`stx-img-${Math.random().toString(36).slice(2,8)}`;if(_!=="none"&&!V)try{k=await P8(X,{strategy:_,...H}),C=y8(x,k,H)}catch{}let f=W!==void 0&&G!==void 0,d;if(f)d=Yz($,x,k,Z);else d=await Zz($,x,k,Z);let c;if(V){let w0=U.includes("webp")?"webp":U[0],_0=d7(X,q,{...B,q:j},w0),X0=typeof z==="object"?u7(z):z||"100vw";c=`<link rel="preload" as="image" imagesrcset="${_0}" imagesizes="${X0}" />`}let p=[];if(!t8&&_!=="none")p.push(c7),t8=!0;if(C)p.push(C);let W0=L?$Z(x):void 0;return{html:d,preloadLink:c,css:p.length>0?p.join(`
7446
- `):void 0,script:W0}}async function Zz($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,sizes:z,widths:q=z5,formats:W=r5,quality:U=e7,params:j={},lazy:B=!0,priority:_=!1,loading:H=_?"eager":G4,decoding:L=Q4,fetchpriority:V,objectFit:O,objectPosition:F,crossorigin:w,referrerpolicy:A}=$,R=$.class,N=$.style,M=$.data||{},T=typeof z==="object"?u7(z):z||"100vw",I=[];for(let y of W){let S=d7(X,q,{...j,q:U},y),k=m7(y);if(B&&!_)I.push(` <source type="${k}" data-srcset="${S}" data-sizes="${T}" />`);else I.push(` <source type="${k}" srcset="${S}" sizes="${T}" />`)}let E=$3({src:a5(X,{...j,q:U}),alt:Q,width:G,height:K,loading:_?void 0:H,decoding:L,fetchpriority:_?"high":V,objectFit:O,objectPosition:F,crossorigin:w,referrerpolicy:A,className:e8(R,Y),style:Z3(N,O,F,Y),lazy:B&&!_,data:M}),D;if(Y){let y=`background-image: url('${Y.dataURL}'); background-size: cover; background-position: center;`;D=`<div id="${Z}" class="stx-img-placeholder" style="${y}">
7463
+ `.trim();l7=new Map});import{createHash as x8}from"crypto";import{readFile as yK,stat as f8}from"fs/promises";async function b0($){try{let Z=await yK($);return x8("sha256").update(Z).digest("hex").slice(0,16)}catch{return""}}function v8($){return x8("sha256").update($).digest("hex").slice(0,16)}function r$($,Z){let Y=JSON.stringify(Z,Object.keys(Z).sort());return`${v8($)}-${v8(Y)}`}async function i7($){try{return(await f8($)).mtimeMs}catch{return 0}}async function D0($){try{return await f8($),!0}catch{return!1}}var d1=()=>{};import{mkdir as PK,readFile as CK,writeFile as vK,readdir as zO,rm as xK,stat as qO}from"fs/promises";import{join as h8,dirname as fK}from"path";async function gK($){try{await PK($,{recursive:!0})}catch{}}function d8($,Z,Y){return h8($,Y,`${Z}.json`)}async function g8($,Z,Y){if((Date.now()-$.createdAt)/86400000>Y)return!1;if(await i7(Z)!==$.srcMtime)return!1;return!0}async function a$($,Z,Y,J=n7){if(!J.enabled)return null;let X=r$($,Z),Q=q5.get(X);if(Q){if(await g8(Q,$,J.maxAge))return Q.lastAccessedAt=Date.now(),Q.data;q5.delete(X)}let G=d8(J.directory,X,Y);if(await D0(G))try{let K=await CK(G,"utf-8"),z=JSON.parse(K);if(await g8(z,$,J.maxAge))return z.lastAccessedAt=Date.now(),q5.set(X,z),z.data}catch{}return null}async function t$($,Z,Y,J,X=n7){if(!X.enabled)return;let Q=r$($,Z),G=await b0($),K=await i7($),z={key:Q,src:$,srcHash:G,srcMtime:K,optionsHash:r$("",Z),data:Y,createdAt:Date.now(),lastAccessedAt:Date.now()};q5.set(Q,z);let q=d8(X.directory,Q,J);try{await gK(fK(q)),await vK(q,JSON.stringify(z,null,2))}catch(W){console.warn(`[stx-media] Failed to write cache: ${W}`)}}async function e$($,Z=n7){if($==="all")q5.clear();else q5.clear();let Y=$==="all"?["image","video"]:[$];for(let J of Y){let X=h8(Z.directory,J);try{await xK(X,{recursive:!0,force:!0})}catch{}}}var q5,n7;var o7=b(()=>{d1();q5=new Map,n7={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500}});class Z4{config;constructor($={}){this.config={...hK,...$}}async get($,Z){return a$($,Z,"image",this.config)}async set($,Z,Y){return t$($,Z,Y,"image",this.config)}async clear(){return e$("image",this.config)}updateConfig($){this.config={...this.config,...$}}}function s7($){if(!$4)$4=new Z4($);else if($)$4.updateConfig($);return $4}async function Y4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return s7(J).get($,Z)}async function J4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return s7(X).set($,Z,Y)}async function m8(){return s7().clear()}var hK,$4=null;var r7=b(()=>{o7();hK={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500,cacheVariants:!0,cachePlaceholders:!0}});import{resolve as dK,basename as mK,extname as uK,join as pK}from"path";import{mkdir as lK}from"fs/promises";async function a7(){try{return await import("ts-images")}catch{return null}}function u8($){switch($){case"quality":return{jpeg:{quality:90,mozjpeg:!0,progressive:!0},png:{compressionLevel:6,palette:!1},webp:{quality:90,effort:6,smartSubsample:!0},avif:{quality:85,effort:6}};case"performance":return{jpeg:{quality:70,mozjpeg:!0,progressive:!0},png:{compressionLevel:9,palette:!0},webp:{quality:70,effort:4,smartSubsample:!0},avif:{quality:60,effort:2}};case"web":default:return{jpeg:{quality:82,mozjpeg:!0,progressive:!0},png:{compressionLevel:8,palette:!1},webp:{quality:82,effort:5,smartSubsample:!0},avif:{quality:75,effort:4}}}}function cK($,Z){let Y=Z?u8(Z):u8("web"),J=$.formatQuality||{};return{jpeg:{...Y.jpeg,...J.jpeg},png:{...Y.png,...J.png},webp:{...Y.webp,...J.webp},avif:{...Y.avif,...J.avif}}}async function p8($,Z,Y){let J=await a7();if(!J)return console.warn("[stx-media] ts-images not installed, skipping optimization"),{src:$,processed:!1};let X=await Y4($,Z,Y);if(X)return X;try{let Q=dK($);if(!await D0(Q))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let G=cK(Y,Z.preset),K=Y.outputDir||"dist/images",z=Y.baseUrl||"/images";await lK(K,{recursive:!0});let q=await b0(Q),W=mK($,uK($)),U=Z.outputFormat?[Z.outputFormat]:Y.defaultFormats||["avif","webp","jpeg"],j={src:$,processed:!0,variants:[],hash:q},_=null;if(Z.transformations&&Z.transformations.length>0)_=await t7(Q,Z.transformations,J);for(let B of U){let H=G[B]||{},L=`${W}-${q}.${B}`,V=pK(K,L);try{let O=await J.optimizeImage({input:_||Q,output:V,format:B,quality:H.quality,progressive:H.progressive});if(O){if(j.variants.push({path:V,url:`${z}/${L}`,width:O.width||0,height:O.height||0,format:B,size:O.outputSize||0}),!j.originalWidth&&O.width)j.originalWidth=O.width,j.originalHeight=O.height}}catch(O){j.errors=j.errors||[],j.errors.push(`Failed to optimize ${B}: ${O}`)}}if(Z.embedThumbhash||Z.placeholder==="thumbhash")try{let B=await J.generateThumbHash(Q);j.placeholder=B.dataUrl}catch(B){j.errors=j.errors||[],j.errors.push(`Failed to generate thumbhash: ${B}`)}if(Z.useDominantColor)try{let B=await J.generatePlaceholder(Q,{strategy:"dominant-color"});j.dominantColor=B.dominantColor}catch(B){j.errors=j.errors||[],j.errors.push(`Failed to extract dominant color: ${B}`)}return await J4($,Z,j,Y),j}catch(Q){return{src:$,processed:!1,errors:[`Processing failed: ${Q}`]}}}async function l8($,Z,Y,J){let X=await a7();if(!X)return{success:!1,error:"ts-images not installed"};try{return{success:!0,size:(await X.optimizeImage({input:$,output:J,format:Z,quality:Y}))?.outputSize}}catch(Q){return{success:!1,error:String(Q)}}}async function t7($,Z,Y){let J=Y||await a7();if(!J)return console.warn("[stx-media] ts-images not installed, skipping transformations"),null;try{let X=await J.decode($);for(let Q of Z){let G=Q.options||{};switch(Q.type){case"resize":if(G.width||G.height)X=await J.resize(X,{width:G.width,height:G.height,fit:G.fit});break;case"blur":if(G.sigma!==void 0)X=await J.blur(X,G.sigma);break;case"sharpen":if(G.amount!==void 0)X=await J.sharpen(X,G.amount);break;case"grayscale":X=await J.grayscale(X);break;case"rotate":if(G.angle!==void 0)X=await J.rotate(X,G.angle);break;case"flip":X=await J.flip(X);break;case"flop":X=await J.flop(X);break;case"brightness":if(G.value!==void 0)X=await J.brightness(X,G.value);break;case"contrast":if(G.value!==void 0)X=await J.contrast(X,G.value);break;case"saturation":if(G.value!==void 0)X=await J.saturation(X,G.value);break}}return await J.encode(X,"png")}catch(X){return console.error(`[stx-media] Transformation failed: ${X}`),null}}var c8=b(()=>{d1();r7()});import{resolve as iK,basename as nK,extname as oK,join as sK}from"path";import{mkdir as rK}from"fs/promises";async function aK(){try{return await import("ts-images")}catch{return null}}async function i8($,Z,Y){let J=await aK();if(!J)return console.warn("[stx-media] ts-images not installed, skipping responsive generation"),null;let X=iK($);if(!await D0(X))return console.warn(`[stx-media] Source file not found: ${$}`),null;try{let Q=Z.responsiveWidths||Y.breakpoints||tK,G=Z.formats||Y.defaultFormats||["avif","webp","jpeg"],K=Y.outputDir||"dist/images",z=Y.baseUrl||"/images";await rK(K,{recursive:!0});let q=await b0(X),W=nK($,oK($)),U=Y.formatQuality||{jpeg:{quality:82},png:{quality:80},webp:{quality:82},avif:{quality:75}},j={src:$,byFormat:{},srcsets:{}};for(let B of G){j.byFormat[B]=[];let H=[];for(let L of Q){let V=`${W}-${L}w-${q}.${B}`,O=sK(K,V),F=`${z}/${V}`;try{let w=U[B]?.quality||80;if(await D0(O)){j.byFormat[B].push({path:O,url:F,width:L,height:0,format:B,size:0}),H.push(`${F} ${L}w`);continue}let A=await J.processImage({input:X,output:O,format:B,quality:w,resize:{width:L}});if(A)j.byFormat[B].push({path:O,url:F,width:L,height:A.height||Math.round(L*(A.height||1)/(A.width||1)),format:B,size:A.outputSize||0}),H.push(`${F} ${L}w`)}catch(w){console.warn(`[stx-media] Failed to generate ${B} at ${L}w: ${w}`)}}j.srcsets[B]=H.join(", ")}let _=Z.placeholder||Y.placeholderStrategy||"thumbhash";if(_!=="none")try{if(_==="thumbhash"){let B=await J.generateThumbHash(X);j.placeholder={dataURL:B.dataUrl,width:B.width||32,height:B.height||32,strategy:"thumbhash"}}else{let B=await J.generatePlaceholder(X,{strategy:_,width:20});j.placeholder={dataURL:B.dataURL,width:B.width,height:B.height,strategy:_}}}catch(B){console.warn(`[stx-media] Failed to generate placeholder: ${B}`)}return j.sizes=Z.sizes||eK(Q),j}catch(Q){return console.error(`[stx-media] Responsive generation failed: ${Q}`),null}}function eK($){let Z=[...$].sort((J,X)=>J-X),Y=[];for(let J=0;J<Z.length-1;J++){let X=Z[J];Y.push(`(max-width: ${X}px) ${X}px`)}return Y.push(`${Z[Z.length-1]}px`),Y.join(", ")}function n8($,Z="width"){if(!$||$.length===0)return"";if(Z==="dpr")return $.filter((Y)=>Y.dpr).map((Y)=>`${Y.url} ${Y.dpr}x`).join(", ");return $.map((Y)=>`${Y.url} ${Y.width}w`).join(", ")}var tK;var o8=b(()=>{d1();tK=[320,480,640,768,1024,1280,1536,1920]});var s8={};e(s8,{setCachedImageResult:()=>J4,processImage:()=>p8,optimizeImage:()=>l8,getCachedImageResult:()=>Y4,generateSrcset:()=>n8,generateResponsiveVariants:()=>i8,clearImageCache:()=>m8,applyTransformations:()=>t7,ImageProcessorCache:()=>Z4});var r8=b(()=>{c8();o8();r7()});async function $z(){try{return await Promise.resolve().then(() => (r8(),s8))}catch($){if(!a8)console.warn("[stx-media] Image processor not available, some features disabled:",$),a8=!0;return null}}async function X4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipOptimization){if(Y.tsImagesConfig?.enabled&&!Y.isDev)return Xz(J,Y)}if(Y.processedResult?.processed)return Y3($,Y.processedResult,Z);if(Y.responsiveVariants)return ZZ($,Y.responsiveVariants,Z);let{src:X,alt:Q,width:G,height:K,sizes:z,widths:q=z5,dpr:W,formats:U=r5,quality:j=e7,params:_={},placeholder:B="none",placeholderOptions:H={},lazy:L=!0,priority:V=!1,loading:O=V?"eager":G4,decoding:F=Q4,fetchpriority:w,objectFit:A,objectPosition:R,crossorigin:N,referrerpolicy:M}=$,T=$.class,I=$.style,E=$.id,D=$.data||{},{isDev:y=!1,baseUrl:S=""}=Z;if(y&&!Z.optimize)return Jz($);let k,C,x=E||`stx-img-${Math.random().toString(36).slice(2,8)}`;if(B!=="none"&&!V)try{k=await P8(X,{strategy:B,...H}),C=y8(x,k,H)}catch{}let f=W!==void 0&&G!==void 0,d;if(f)d=Yz($,x,k,Z);else d=await Zz($,x,k,Z);let c;if(V){let w0=U.includes("webp")?"webp":U[0],B0=d7(X,q,{..._,q:j},w0),X0=typeof z==="object"?m7(z):z||"100vw";c=`<link rel="preload" as="image" imagesrcset="${B0}" imagesizes="${X0}" />`}let p=[];if(!t8&&B!=="none")p.push(c7),t8=!0;if(C)p.push(C);let W0=L?$Z(x):void 0;return{html:d,preloadLink:c,css:p.length>0?p.join(`
7464
+ `):void 0,script:W0}}async function Zz($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,sizes:z,widths:q=z5,formats:W=r5,quality:U=e7,params:j={},lazy:_=!0,priority:B=!1,loading:H=B?"eager":G4,decoding:L=Q4,fetchpriority:V,objectFit:O,objectPosition:F,crossorigin:w,referrerpolicy:A}=$,R=$.class,N=$.style,M=$.data||{},T=typeof z==="object"?m7(z):z||"100vw",I=[];for(let y of W){let S=d7(X,q,{...j,q:U},y),k=u7(y);if(_&&!B)I.push(` <source type="${k}" data-srcset="${S}" data-sizes="${T}" />`);else I.push(` <source type="${k}" srcset="${S}" sizes="${T}" />`)}let E=$3({src:a5(X,{...j,q:U}),alt:Q,width:G,height:K,loading:B?void 0:H,decoding:L,fetchpriority:B?"high":V,objectFit:O,objectPosition:F,crossorigin:w,referrerpolicy:A,className:e8(R,Y),style:Z3(N,O,F,Y),lazy:_&&!B,data:M}),D;if(Y){let y=`background-image: url('${Y.dataURL}'); background-size: cover; background-position: center;`;D=`<div id="${Z}" class="stx-img-placeholder" style="${y}">
7447
7465
  <picture>
7448
7466
  ${I.join(`
7449
7467
  `)}
@@ -7453,9 +7471,9 @@ ${I.join(`
7453
7471
  ${I.join(`
7454
7472
  `)}
7455
7473
  <img ${E} />
7456
- </picture>`;return D}function Yz($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,dpr:z=[1,2,3],quality:q=e7,params:W={},lazy:U=!0,priority:j=!1,loading:B=j?"eager":G4,decoding:_=Q4,fetchpriority:H,objectFit:L,objectPosition:V,crossorigin:O,referrerpolicy:F}=$,w=$.class,A=$.style,R=$.data||{},N=typeof G==="number"?G:Number.parseInt(String(G),10),M=S8(X,N,z,{...W,q}),T=$3({src:a5(X,{...W,w:N,q}),alt:Q,width:G,height:K,loading:j?void 0:B,decoding:_,fetchpriority:j?"high":H,objectFit:L,objectPosition:V,crossorigin:O,referrerpolicy:F,className:e8(w,Y),style:Z3(A,L,V,Y),lazy:U&&!j,data:R}),I=U&&!j?`data-srcset="${M}"`:`srcset="${M}"`;if(Y){let E=`background-image: url('${Y.dataURL}'); background-size: cover; background-position: center;`;return`<div id="${Z}" class="stx-img-placeholder" style="${E}">
7474
+ </picture>`;return D}function Yz($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,dpr:z=[1,2,3],quality:q=e7,params:W={},lazy:U=!0,priority:j=!1,loading:_=j?"eager":G4,decoding:B=Q4,fetchpriority:H,objectFit:L,objectPosition:V,crossorigin:O,referrerpolicy:F}=$,w=$.class,A=$.style,R=$.data||{},N=typeof G==="number"?G:Number.parseInt(String(G),10),M=S8(X,N,z,{...W,q}),T=$3({src:a5(X,{...W,w:N,q}),alt:Q,width:G,height:K,loading:j?void 0:_,decoding:B,fetchpriority:j?"high":H,objectFit:L,objectPosition:V,crossorigin:O,referrerpolicy:F,className:e8(w,Y),style:Z3(A,L,V,Y),lazy:U&&!j,data:R}),I=U&&!j?`data-srcset="${M}"`:`srcset="${M}"`;if(Y){let E=`background-image: url('${Y.dataURL}'); background-size: cover; background-position: center;`;return`<div id="${Z}" class="stx-img-placeholder" style="${E}">
7457
7475
  <img ${T} ${I} />
7458
- </div>`}return`<img ${Z?`id="${Z}" `:""}${T} ${I} />`}function Jz($){let{src:Z,alt:Y,width:J,height:X,loading:Q=G4,decoding:G=Q4,fetchpriority:K,objectFit:z,objectPosition:q,crossorigin:W,referrerpolicy:U,priority:j=!1}=$,B=$.class,_=$.style,H=$.id,L=$.data||{};return{html:`<img ${$3({src:Z,alt:Y,width:J,height:X,loading:j?"eager":Q,decoding:G,fetchpriority:j?"high":K,objectFit:z,objectPosition:q,crossorigin:W,referrerpolicy:U,className:B,style:Z3(_,z,q),id:H,data:L})} />`}}function $3($){let Z=[];if($.lazy)Z.push(`data-src="${r0($.src)}"`),Z.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"');else Z.push(`src="${r0($.src)}"`);if(Z.push(`alt="${r0($.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="${r0($.className)}"`);if($.style)Z.push(`style="${r0($.style)}"`);if($.id)Z.push(`id="${r0($.id)}"`);if($.data)for(let[Y,J]of Object.entries($.data))Z.push(`data-${Y}="${r0(J)}"`);if($.lazy)Z.push("data-stx-lazy");return Z.join(" ")}function e8($,Z){let Y=[];if($)Y.push($);if(Z)Y.push("stx-img-blur");return Y.join(" ")||""}function Z3($,Z,Y,J){let X=[];if(Z)X.push(`object-fit: ${Z}`);if(Y)X.push(`object-position: ${Y}`);if(J)X.push("opacity: 0; transition: opacity 300ms ease-out");if($)X.push($);return X.join("; ")}function r0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function $Z($){return`
7476
+ </div>`}return`<img ${Z?`id="${Z}" `:""}${T} ${I} />`}function Jz($){let{src:Z,alt:Y,width:J,height:X,loading:Q=G4,decoding:G=Q4,fetchpriority:K,objectFit:z,objectPosition:q,crossorigin:W,referrerpolicy:U,priority:j=!1}=$,_=$.class,B=$.style,H=$.id,L=$.data||{};return{html:`<img ${$3({src:Z,alt:Y,width:J,height:X,loading:j?"eager":Q,decoding:G,fetchpriority:j?"high":K,objectFit:z,objectPosition:q,crossorigin:W,referrerpolicy:U,className:_,style:Z3(B,z,q),id:H,data:L})} />`}}function $3($){let Z=[];if($.lazy)Z.push(`data-src="${r0($.src)}"`),Z.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"');else Z.push(`src="${r0($.src)}"`);if(Z.push(`alt="${r0($.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="${r0($.className)}"`);if($.style)Z.push(`style="${r0($.style)}"`);if($.id)Z.push(`id="${r0($.id)}"`);if($.data)for(let[Y,J]of Object.entries($.data))Z.push(`data-${Y}="${r0(J)}"`);if($.lazy)Z.push("data-stx-lazy");return Z.join(" ")}function e8($,Z){let Y=[];if($)Y.push($);if(Z)Y.push("stx-img-blur");return Y.join(" ")||""}function Z3($,Z,Y,J){let X=[];if(Z)X.push(`object-fit: ${Z}`);if(Y)X.push(`object-position: ${Y}`);if(J)X.push("opacity: 0; transition: opacity 300ms ease-out");if($)X.push($);return X.join("; ")}function r0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function $Z($){return`
7459
7477
  (function() {
7460
7478
  const container = document.getElementById('${$}');
7461
7479
  if (!container) return;
@@ -7492,22 +7510,22 @@ ${I.join(`
7492
7510
 
7493
7511
  observer.observe(container);
7494
7512
  })();
7495
- `.trim()}async function Xz($,Z){let Y=await $z();if(!Y)return X4({...$,process:!1},Z);let J=Z.tsImagesConfig;if($.responsiveWidths&&$.responsiveWidths.length>0||$.widths&&$.widths.length>0||!$.width&&!$.dpr){let Q=await Y.generateResponsiveVariants($.src,$,J);if(Q)return ZZ($,Q,Z)}else{let Q=await Y.processImage($.src,$,J);if(Q.processed)return Y3($,Q,Z)}return X4({...$,process:!1},Z)}async function Y3($,Z,Y){let{alt:J,width:X,height:Q,lazy:G=!0,priority:K=!1,objectFit:z,objectPosition:q,crossorigin:W,referrerpolicy:U}=$,j=$.class,B=$.style,_=$.id||`stx-img-${Math.random().toString(36).slice(2,8)}`,H=$.data||{},L=Z.variants||[],V=L.find((C)=>C.format==="jpeg")||L.find((C)=>C.format==="webp")||L[0],O=V?.url||$.src,F=L.filter((C)=>C.format===(V?.format||"jpeg")).map((C)=>`${C.url} ${C.width}w`).join(", "),w=new Map;for(let C of L){if(!w.has(C.format))w.set(C.format,[]);w.get(C.format).push(C)}let A=[],R=["avif","webp","jpeg","png"];for(let C of R){let x=w.get(C);if(x&&x.length>0){let f=x.map((c)=>`${c.url} ${c.width}w`).join(", "),d=m7(C);if(G&&!K)A.push(` <source type="${d}" data-srcset="${f}" />`);else A.push(` <source type="${d}" srcset="${f}" />`)}}let N=[];if(G&&!K){if(N.push(`data-src="${r0(O)}"`),N.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"'),F)N.push(`data-srcset="${F}"`)}else if(N.push(`src="${r0(O)}"`),F)N.push(`srcset="${F}"`);N.push(`alt="${r0(J)}"`);let M=X||Z.originalWidth,T=Q||Z.originalHeight;if(M)N.push(`width="${M}"`);if(T)N.push(`height="${T}"`);if(!K)N.push(`loading="${G?"lazy":"eager"}"`);if(N.push('decoding="async"'),K)N.push('fetchpriority="high"');if(W)N.push(`crossorigin="${W}"`);if(U)N.push(`referrerpolicy="${U}"`);let I=[];if(z)I.push(`object-fit: ${z}`);if(q)I.push(`object-position: ${q}`);if(Z.placeholder&&G)I.push("opacity: 0; transition: opacity 300ms ease-out");if(B)I.push(B);if(I.length>0)N.push(`style="${I.join("; ")}"`);let E=[];if(j)E.push(j);if(Z.placeholder)E.push("stx-img-blur");if(E.length>0)N.push(`class="${E.join(" ")}"`);if(G&&!K)N.push("data-stx-lazy");for(let[C,x]of Object.entries(H))N.push(`data-${C}="${r0(x)}"`);let D;if(Z.placeholder||Z.dominantColor&&$.useDominantColor){let C=Z.placeholder?`background-image: url('${Z.placeholder}'); background-size: cover; background-position: center;`:`background-color: ${Z.dominantColor};`;D=`<div id="${_}" class="stx-img-placeholder" style="${C}">
7513
+ `.trim()}async function Xz($,Z){let Y=await $z();if(!Y)return X4({...$,process:!1},Z);let J=Z.tsImagesConfig;if($.responsiveWidths&&$.responsiveWidths.length>0||$.widths&&$.widths.length>0||!$.width&&!$.dpr){let Q=await Y.generateResponsiveVariants($.src,$,J);if(Q)return ZZ($,Q,Z)}else{let Q=await Y.processImage($.src,$,J);if(Q.processed)return Y3($,Q,Z)}return X4({...$,process:!1},Z)}async function Y3($,Z,Y){let{alt:J,width:X,height:Q,lazy:G=!0,priority:K=!1,objectFit:z,objectPosition:q,crossorigin:W,referrerpolicy:U}=$,j=$.class,_=$.style,B=$.id||`stx-img-${Math.random().toString(36).slice(2,8)}`,H=$.data||{},L=Z.variants||[],V=L.find((C)=>C.format==="jpeg")||L.find((C)=>C.format==="webp")||L[0],O=V?.url||$.src,F=L.filter((C)=>C.format===(V?.format||"jpeg")).map((C)=>`${C.url} ${C.width}w`).join(", "),w=new Map;for(let C of L){if(!w.has(C.format))w.set(C.format,[]);w.get(C.format).push(C)}let A=[],R=["avif","webp","jpeg","png"];for(let C of R){let x=w.get(C);if(x&&x.length>0){let f=x.map((c)=>`${c.url} ${c.width}w`).join(", "),d=u7(C);if(G&&!K)A.push(` <source type="${d}" data-srcset="${f}" />`);else A.push(` <source type="${d}" srcset="${f}" />`)}}let N=[];if(G&&!K){if(N.push(`data-src="${r0(O)}"`),N.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"'),F)N.push(`data-srcset="${F}"`)}else if(N.push(`src="${r0(O)}"`),F)N.push(`srcset="${F}"`);N.push(`alt="${r0(J)}"`);let M=X||Z.originalWidth,T=Q||Z.originalHeight;if(M)N.push(`width="${M}"`);if(T)N.push(`height="${T}"`);if(!K)N.push(`loading="${G?"lazy":"eager"}"`);if(N.push('decoding="async"'),K)N.push('fetchpriority="high"');if(W)N.push(`crossorigin="${W}"`);if(U)N.push(`referrerpolicy="${U}"`);let I=[];if(z)I.push(`object-fit: ${z}`);if(q)I.push(`object-position: ${q}`);if(Z.placeholder&&G)I.push("opacity: 0; transition: opacity 300ms ease-out");if(_)I.push(_);if(I.length>0)N.push(`style="${I.join("; ")}"`);let E=[];if(j)E.push(j);if(Z.placeholder)E.push("stx-img-blur");if(E.length>0)N.push(`class="${E.join(" ")}"`);if(G&&!K)N.push("data-stx-lazy");for(let[C,x]of Object.entries(H))N.push(`data-${C}="${r0(x)}"`);let D;if(Z.placeholder||Z.dominantColor&&$.useDominantColor){let C=Z.placeholder?`background-image: url('${Z.placeholder}'); background-size: cover; background-position: center;`:`background-color: ${Z.dominantColor};`;D=`<div id="${B}" class="stx-img-placeholder" style="${C}">
7496
7514
  <picture>
7497
7515
  ${A.join(`
7498
7516
  `)}
7499
7517
  <img ${N.join(" ")} />
7500
7518
  </picture>
7501
- </div>`}else D=`<picture${_?` id="${_}"`:""}>
7519
+ </div>`}else D=`<picture${B?` id="${B}"`:""}>
7502
7520
  ${A.join(`
7503
7521
  `)}
7504
7522
  <img ${N.join(" ")} />
7505
- </picture>`;let y=[];if(Z.placeholder)y.push(c7);let S=G?$Z(_):void 0,k;if(K&&F)k=`<link rel="preload" as="image" imagesrcset="${F}" />`;return{html:D,preloadLink:k,css:y.length>0?y.join(`
7523
+ </picture>`;let y=[];if(Z.placeholder)y.push(c7);let S=G?$Z(B):void 0,k;if(K&&F)k=`<link rel="preload" as="image" imagesrcset="${F}" />`;return{html:D,preloadLink:k,css:y.length>0?y.join(`
7506
7524
  `):void 0,script:S}}async function ZZ($,Z,Y){let J={src:Z.src,processed:!0,variants:[],placeholder:Z.placeholder?.dataURL,originalWidth:Z.placeholder?.width,originalHeight:Z.placeholder?.height};for(let[X,Q]of Object.entries(Z.byFormat))if(Q)J.variants.push(...Q);return Y3($,J,Y)}var a8=!1,e7=80,Q4="async",G4="lazy",t8=!1;var YZ=b(()=>{p7();C8()});function Qz(){return s$({name:"img",hasEndTag:!1,description:"Render an optimized responsive image with srcset and lazy loading",transform:async($,Z,Y,J)=>{let{src:X,alt:Q,options:G}=Gz($,Z,Y);if(!X)return console.warn("@img directive: missing src argument"),"<!-- @img: missing src -->";let K={src:X,alt:Q||"",widths:G.widths||z5,formats:G.formats||r5,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},z=Y.__isDev||!1,q=await X4(K,{isDev:z}),W=q.html;if(q.preloadLink)W=q.preloadLink+`
7507
7525
  `+W;if(q.css)W+=`
7508
7526
  <style>${q.css}</style>`;if(q.script)W+=`
7509
- <script>${q.script}</script>`;return W},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function Gz($,Z,Y){if(Z.src)return{src:String(Z.src),alt:String(Z.alt||""),options:Z.options||{}};let J=$.trim();if(J.startsWith("@img(")||J.startsWith("("))J=J.replace(/^@img\(/,"").replace(/^\(/,"").replace(/\)$/,"");let X=Kz(J),Q=J3(X[0],Y)||"",G=J3(X[1],Y)||"",K={};if(X[2]){let z=J3(X[2],Y);if(typeof z==="object"&&z!==null)K=z;else if(typeof X[2]==="string")try{K=JSON.parse(X[2])}catch{}}return{src:Q,alt:G,options:K}}function Kz($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let z=$[K],q=K>0?$[K-1]:"";if((z==='"'||z==="'"||z==="`")&&q!=="\\"){if(!J)J=!0,X=z;else if(z===X)J=!1,X="";else Y+=z;continue}if(!J){if(z==="{")Q++;if(z==="}")Q--;if(z==="[")G++;if(z==="]")G--;if(z===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=z}if(Y.trim())Z.push(Y.trim());return Z}function J3($,Z){if(typeof $!=="string")return $;let Y=$.trim();if(Y.startsWith('"')&&Y.endsWith('"')||Y.startsWith("'")&&Y.endsWith("'"))return Y.slice(1,-1);if(!Y.startsWith("/")&&!Y.startsWith(".")&&!Y.startsWith("http")&&!Y.startsWith("{")){let J=Z[Y];if(J!==void 0)return J}if(Y.startsWith("{")||Y.startsWith("["))try{return JSON.parse(Y)}catch{}return Y}var JZ;var XZ=b(()=>{h7();YZ();p7();JZ=Qz()});class z4{config;constructor($={}){this.config={...zz,...$}}async get($,Z){return a$($,Z,"video",this.config)}async set($,Z,Y){return t$($,Z,Y,"video",this.config)}async clear(){return e$("video",this.config)}updateConfig($){this.config={...this.config,...$}}}function X3($){if(!K4)K4=new z4($);else if($)K4.updateConfig($);return K4}async function q4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return X3(J).get($,Z)}async function W4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return X3(X).set($,Z,Y)}async function QZ(){return X3().clear()}var zz,K4=null;var Q3=b(()=>{o7();zz={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:2000,cacheTranscoded:!0,cacheThumbnails:!0,cacheManifests:!0}});import{resolve as G3,basename as K3,extname as z3,join as U4}from"path";import{mkdir as q3}from"fs/promises";async function W3(){try{return await import("ts-videos")}catch{return null}}async function j4($,Z,Y,J){let X=await W3();if(!X)return console.warn("[stx-media] ts-videos not installed, cannot generate poster"),null;try{let Q=G3($);if(!await D0(Q))return null;await q3(Y,{recursive:!0});let G=await b0(Q),K=K3($,z3($)),z=Z.format||"webp",q=Z.timestamp||0,W=`${K}-poster-${G}.${z}`,U=U4(Y,W),j=await X.extractThumbnails(Q,{timestamps:[q],width:Z.width||1280,height:Z.height,format:z,quality:Z.quality||85,outputDir:Y,outputPattern:W.replace(`.${z}`,"")});if(j&&j.length>0){let B=j[0];return{path:U,url:`${J}/${W}`,width:B.width||Z.width||1280,height:B.height||720,timestamp:q,size:B.size||0}}return null}catch(Q){return console.warn(`[stx-media] Failed to generate poster: ${Q}`),null}}async function B4($,Z,Y,J){let X=await W3();if(!X)return[];try{let Q=G3($);if(!await D0(Q))return[];await q3(Y,{recursive:!0});let G=await b0(Q),K=K3($,z3($)),z=Z.format||"webp",U=(await new X.Input(Q).getInfo()).duration||60,j=Z.count||10,B=Z.interval||U/j,_=[];for(let L=0;L<j&&L*B<U;L++)_.push(L*B);let H=await X.extractThumbnails(Q,{timestamps:_,width:Z.width||320,format:z,quality:Z.quality||80,outputDir:Y,outputPattern:`${K}-thumb-${G}`});if(H&&H.length>0)return H.map((L,V)=>({path:L.path||U4(Y,`${K}-thumb-${G}-${V}.${z}`),url:`${J}/${K}-thumb-${G}-${V}.${z}`,width:L.width||Z.width||320,height:L.height||180,timestamp:_[V],size:L.size||0}));return[]}catch(Q){return console.warn(`[stx-media] Failed to generate thumbnails: ${Q}`),[]}}async function GZ($,Z,Y,J){let X=await W3();if(!X)return console.warn("[stx-media] ts-videos not installed, cannot generate sprite sheet"),null;try{let Q=G3($);if(!await D0(Q))return null;await q3(Y,{recursive:!0});let G=await b0(Q),K=K3($,z3($)),W=(await new X.Input(Q).getInfo()).duration||60,U=Z.columns||10,j=Z.interval||5,B=Z.thumbnailWidth||160,_=Z.thumbnailHeight||90,H=Z.format||"jpeg",L=Math.ceil(W/j),V=Math.ceil(L/U),O=`${K}-sprite-${G}.${H}`,F=U4(Y,O),w=[];for(let R=0;R<L;R++)w.push(R*j);let A=await X.extractThumbnails(Q,{timestamps:w,width:B,height:_,format:H,quality:Z.quality||70,outputDir:U4(Y,".temp")});if(!A||A.length===0)return null;try{let R=await import("ts-images"),N=U*B,M=V*_,T=await R.createSprite({images:A.map((I)=>I.path),columns:U,padding:0,outputPath:F,format:H,quality:Z.quality||70});return{url:`${J}/${O}`,path:F,columns:U,rows:V,thumbnailWidth:B,thumbnailHeight:_,interval:j,totalFrames:L}}catch{return console.warn("[stx-media] ts-images not installed, sprite sheet generation skipped"),null}}catch(Q){return console.warn(`[stx-media] Failed to generate sprite sheet: ${Q}`),null}}var U3=b(()=>{d1()});import{resolve as zZ,basename as qZ,extname as WZ,join as u1}from"path";import{mkdir as _4,writeFile as UZ}from"fs/promises";async function jZ(){try{return await import("ts-videos")}catch{return null}}async function H4($,Z,Y,J,X){let Q=await jZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate HLS manifest"),null;try{let G=zZ($);if(!await D0(G))return null;let K=await b0(G),z=qZ($,WZ($)),q=u1(Y,`${z}-${K}-hls`);await _4(q,{recursive:!0});let W=Z.length>0?Z:BZ,U=X?.segmentDuration||6,_=(await new Q.Input(G).getInfo()).duration||0,H=[],L=0;for(let F of W){let w=u1(q,F.label);await _4(w,{recursive:!0});let A=`${F.label}.m3u8`,R=u1(w,A);try{let N=await Q.generateHLS(G,{outputDir:w,segmentDuration:U,width:F.width,height:F.height,videoBitrate:F.bitrate,audioBitrate:F.audioBitrate,playlistName:F.label});if(N)H.push({quality:F,url:`${J}/${z}-${K}-hls/${F.label}/${A}`,path:R}),L+=N.segmentCount||Math.ceil(_/U)}catch(N){console.warn(`[stx-media] Failed to generate HLS for ${F.label}: ${N}`)}}if(H.length===0)return null;let V=u1(q,"master.m3u8"),O=qz(H,J,z,K);return await UZ(V,O),{manifestUrl:`${J}/${z}-${K}-hls/master.m3u8`,manifestPath:V,playlists:H,segmentCount:L,duration:_}}catch(G){return console.warn(`[stx-media] Failed to generate HLS manifest: ${G}`),null}}function qz($,Z,Y,J){let X=["#EXTM3U","#EXT-X-VERSION:3"];for(let Q of $){let{quality:G}=Q,K=G.bitrate+(G.audioBitrate||128000),z=`${G.width}x${G.height||Math.round(G.width*9/16)}`;X.push(`#EXT-X-STREAM-INF:BANDWIDTH=${K},RESOLUTION=${z},NAME="${G.label}"`,`${G.label}/${G.label}.m3u8`)}return X.join(`
7510
- `)}async function O4($,Z,Y,J,X){let Q=await jZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate DASH manifest"),null;try{let G=zZ($);if(!await D0(G))return null;let K=await b0(G),z=qZ($,WZ($)),q=u1(Y,`${z}-${K}-dash`);await _4(q,{recursive:!0});let W=Z.length>0?Z:BZ,U=X?.segmentDuration||4,j=X?.minBufferTime||2,H=(await new Q.Input(G).getInfo()).duration||0,L=[],V=[];for(let A of W){let R=u1(q,A.label);await _4(R,{recursive:!0});try{if(await Q.generateDASH(G,{outputDir:R,segmentDuration:U,width:A.width,height:A.height,videoBitrate:A.bitrate,audioBitrate:A.audioBitrate})){if(L.push({bandwidth:A.bitrate,width:A.width,height:A.height||Math.round(A.width*9/16),url:`${J}/${z}-${K}-dash/${A.label}/video`}),A.audioBitrate)V.push({bandwidth:A.audioBitrate,url:`${J}/${z}-${K}-dash/${A.label}/audio`})}}catch(N){console.warn(`[stx-media] Failed to generate DASH for ${A.label}: ${N}`)}}if(L.length===0)return null;let O=u1(q,"manifest.mpd"),F=Wz(L,V,H,U,j);await UZ(O,F);let w=[{type:"video",representations:L}];if(V.length>0)w.push({type:"audio",representations:V});return{manifestUrl:`${J}/${z}-${K}-dash/manifest.mpd`,manifestPath:O,adaptationSets:w,duration:H}}catch(G){return console.warn(`[stx-media] Failed to generate DASH manifest: ${G}`),null}}function Wz($,Z,Y,J,X){let Q=KZ(Y),G=KZ(X),K=`<?xml version="1.0" encoding="UTF-8"?>
7527
+ <script>${q.script}</script>`;return W},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function Gz($,Z,Y){if(Z.src)return{src:String(Z.src),alt:String(Z.alt||""),options:Z.options||{}};let J=$.trim();if(J.startsWith("@img(")||J.startsWith("("))J=J.replace(/^@img\(/,"").replace(/^\(/,"").replace(/\)$/,"");let X=Kz(J),Q=J3(X[0],Y)||"",G=J3(X[1],Y)||"",K={};if(X[2]){let z=J3(X[2],Y);if(typeof z==="object"&&z!==null)K=z;else if(typeof X[2]==="string")try{K=JSON.parse(X[2])}catch{}}return{src:Q,alt:G,options:K}}function Kz($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let z=$[K],q=K>0?$[K-1]:"";if((z==='"'||z==="'"||z==="`")&&q!=="\\"){if(!J)J=!0,X=z;else if(z===X)J=!1,X="";else Y+=z;continue}if(!J){if(z==="{")Q++;if(z==="}")Q--;if(z==="[")G++;if(z==="]")G--;if(z===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=z}if(Y.trim())Z.push(Y.trim());return Z}function J3($,Z){if(typeof $!=="string")return $;let Y=$.trim();if(Y.startsWith('"')&&Y.endsWith('"')||Y.startsWith("'")&&Y.endsWith("'"))return Y.slice(1,-1);if(!Y.startsWith("/")&&!Y.startsWith(".")&&!Y.startsWith("http")&&!Y.startsWith("{")){let J=Z[Y];if(J!==void 0)return J}if(Y.startsWith("{")||Y.startsWith("["))try{return JSON.parse(Y)}catch{}return Y}var JZ;var XZ=b(()=>{h7();YZ();p7();JZ=Qz()});class z4{config;constructor($={}){this.config={...zz,...$}}async get($,Z){return a$($,Z,"video",this.config)}async set($,Z,Y){return t$($,Z,Y,"video",this.config)}async clear(){return e$("video",this.config)}updateConfig($){this.config={...this.config,...$}}}function X3($){if(!K4)K4=new z4($);else if($)K4.updateConfig($);return K4}async function q4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return X3(J).get($,Z)}async function W4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return X3(X).set($,Z,Y)}async function QZ(){return X3().clear()}var zz,K4=null;var Q3=b(()=>{o7();zz={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:2000,cacheTranscoded:!0,cacheThumbnails:!0,cacheManifests:!0}});import{resolve as G3,basename as K3,extname as z3,join as U4}from"path";import{mkdir as q3}from"fs/promises";async function W3(){try{return await import("ts-videos")}catch{return null}}async function j4($,Z,Y,J){let X=await W3();if(!X)return console.warn("[stx-media] ts-videos not installed, cannot generate poster"),null;try{let Q=G3($);if(!await D0(Q))return null;await q3(Y,{recursive:!0});let G=await b0(Q),K=K3($,z3($)),z=Z.format||"webp",q=Z.timestamp||0,W=`${K}-poster-${G}.${z}`,U=U4(Y,W),j=await X.extractThumbnails(Q,{timestamps:[q],width:Z.width||1280,height:Z.height,format:z,quality:Z.quality||85,outputDir:Y,outputPattern:W.replace(`.${z}`,"")});if(j&&j.length>0){let _=j[0];return{path:U,url:`${J}/${W}`,width:_.width||Z.width||1280,height:_.height||720,timestamp:q,size:_.size||0}}return null}catch(Q){return console.warn(`[stx-media] Failed to generate poster: ${Q}`),null}}async function _4($,Z,Y,J){let X=await W3();if(!X)return[];try{let Q=G3($);if(!await D0(Q))return[];await q3(Y,{recursive:!0});let G=await b0(Q),K=K3($,z3($)),z=Z.format||"webp",U=(await new X.Input(Q).getInfo()).duration||60,j=Z.count||10,_=Z.interval||U/j,B=[];for(let L=0;L<j&&L*_<U;L++)B.push(L*_);let H=await X.extractThumbnails(Q,{timestamps:B,width:Z.width||320,format:z,quality:Z.quality||80,outputDir:Y,outputPattern:`${K}-thumb-${G}`});if(H&&H.length>0)return H.map((L,V)=>({path:L.path||U4(Y,`${K}-thumb-${G}-${V}.${z}`),url:`${J}/${K}-thumb-${G}-${V}.${z}`,width:L.width||Z.width||320,height:L.height||180,timestamp:B[V],size:L.size||0}));return[]}catch(Q){return console.warn(`[stx-media] Failed to generate thumbnails: ${Q}`),[]}}async function GZ($,Z,Y,J){let X=await W3();if(!X)return console.warn("[stx-media] ts-videos not installed, cannot generate sprite sheet"),null;try{let Q=G3($);if(!await D0(Q))return null;await q3(Y,{recursive:!0});let G=await b0(Q),K=K3($,z3($)),W=(await new X.Input(Q).getInfo()).duration||60,U=Z.columns||10,j=Z.interval||5,_=Z.thumbnailWidth||160,B=Z.thumbnailHeight||90,H=Z.format||"jpeg",L=Math.ceil(W/j),V=Math.ceil(L/U),O=`${K}-sprite-${G}.${H}`,F=U4(Y,O),w=[];for(let R=0;R<L;R++)w.push(R*j);let A=await X.extractThumbnails(Q,{timestamps:w,width:_,height:B,format:H,quality:Z.quality||70,outputDir:U4(Y,".temp")});if(!A||A.length===0)return null;try{let R=await import("ts-images"),N=U*_,M=V*B,T=await R.createSprite({images:A.map((I)=>I.path),columns:U,padding:0,outputPath:F,format:H,quality:Z.quality||70});return{url:`${J}/${O}`,path:F,columns:U,rows:V,thumbnailWidth:_,thumbnailHeight:B,interval:j,totalFrames:L}}catch{return console.warn("[stx-media] ts-images not installed, sprite sheet generation skipped"),null}}catch(Q){return console.warn(`[stx-media] Failed to generate sprite sheet: ${Q}`),null}}var U3=b(()=>{d1()});import{resolve as zZ,basename as qZ,extname as WZ,join as m1}from"path";import{mkdir as B4,writeFile as UZ}from"fs/promises";async function jZ(){try{return await import("ts-videos")}catch{return null}}async function H4($,Z,Y,J,X){let Q=await jZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate HLS manifest"),null;try{let G=zZ($);if(!await D0(G))return null;let K=await b0(G),z=qZ($,WZ($)),q=m1(Y,`${z}-${K}-hls`);await B4(q,{recursive:!0});let W=Z.length>0?Z:_Z,U=X?.segmentDuration||6,B=(await new Q.Input(G).getInfo()).duration||0,H=[],L=0;for(let F of W){let w=m1(q,F.label);await B4(w,{recursive:!0});let A=`${F.label}.m3u8`,R=m1(w,A);try{let N=await Q.generateHLS(G,{outputDir:w,segmentDuration:U,width:F.width,height:F.height,videoBitrate:F.bitrate,audioBitrate:F.audioBitrate,playlistName:F.label});if(N)H.push({quality:F,url:`${J}/${z}-${K}-hls/${F.label}/${A}`,path:R}),L+=N.segmentCount||Math.ceil(B/U)}catch(N){console.warn(`[stx-media] Failed to generate HLS for ${F.label}: ${N}`)}}if(H.length===0)return null;let V=m1(q,"master.m3u8"),O=qz(H,J,z,K);return await UZ(V,O),{manifestUrl:`${J}/${z}-${K}-hls/master.m3u8`,manifestPath:V,playlists:H,segmentCount:L,duration:B}}catch(G){return console.warn(`[stx-media] Failed to generate HLS manifest: ${G}`),null}}function qz($,Z,Y,J){let X=["#EXTM3U","#EXT-X-VERSION:3"];for(let Q of $){let{quality:G}=Q,K=G.bitrate+(G.audioBitrate||128000),z=`${G.width}x${G.height||Math.round(G.width*9/16)}`;X.push(`#EXT-X-STREAM-INF:BANDWIDTH=${K},RESOLUTION=${z},NAME="${G.label}"`,`${G.label}/${G.label}.m3u8`)}return X.join(`
7528
+ `)}async function O4($,Z,Y,J,X){let Q=await jZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate DASH manifest"),null;try{let G=zZ($);if(!await D0(G))return null;let K=await b0(G),z=qZ($,WZ($)),q=m1(Y,`${z}-${K}-dash`);await B4(q,{recursive:!0});let W=Z.length>0?Z:_Z,U=X?.segmentDuration||4,j=X?.minBufferTime||2,H=(await new Q.Input(G).getInfo()).duration||0,L=[],V=[];for(let A of W){let R=m1(q,A.label);await B4(R,{recursive:!0});try{if(await Q.generateDASH(G,{outputDir:R,segmentDuration:U,width:A.width,height:A.height,videoBitrate:A.bitrate,audioBitrate:A.audioBitrate})){if(L.push({bandwidth:A.bitrate,width:A.width,height:A.height||Math.round(A.width*9/16),url:`${J}/${z}-${K}-dash/${A.label}/video`}),A.audioBitrate)V.push({bandwidth:A.audioBitrate,url:`${J}/${z}-${K}-dash/${A.label}/audio`})}}catch(N){console.warn(`[stx-media] Failed to generate DASH for ${A.label}: ${N}`)}}if(L.length===0)return null;let O=m1(q,"manifest.mpd"),F=Wz(L,V,H,U,j);await UZ(O,F);let w=[{type:"video",representations:L}];if(V.length>0)w.push({type:"audio",representations:V});return{manifestUrl:`${J}/${z}-${K}-dash/manifest.mpd`,manifestPath:O,adaptationSets:w,duration:H}}catch(G){return console.warn(`[stx-media] Failed to generate DASH manifest: ${G}`),null}}function Wz($,Z,Y,J,X){let Q=KZ(Y),G=KZ(X),K=`<?xml version="1.0" encoding="UTF-8"?>
7511
7529
  <MPD xmlns="urn:mpeg:dash:schema:mpd:2011"
7512
7530
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
7513
7531
  xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd"
@@ -7533,7 +7551,7 @@ ${A.join(`
7533
7551
  </Representation>
7534
7552
  `}K+=` </AdaptationSet>
7535
7553
  `}return K+=` </Period>
7536
- </MPD>`,K}function KZ($){let Z=Math.floor($/3600),Y=Math.floor($%3600/60),J=Math.floor($%60),X="PT";if(Z>0)X+=`${Z}H`;if(Y>0)X+=`${Y}M`;return X+=`${J}S`,X}var BZ;var j3=b(()=>{d1();BZ=[{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},{label:"360p",width:640,height:360,bitrate:600000,audioBitrate:64000}]});import{resolve as _Z,basename as Uz,extname as jz,join as Bz}from"path";import{mkdir as _z}from"fs/promises";async function HZ(){try{return await import("ts-videos")}catch{return null}}function Hz($){switch($){case"very-low":return 500000;case"low":return 1e6;case"medium":return 2500000;case"high":return 5000000;case"very-high":return 1e7;case"lossless":return 0;default:return 2500000}}function Oz($){switch($){case"youtube":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};case"twitter":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"instagram-feed":return{codec:"h264",maxWidth:1080,maxHeight:1080,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"instagram-story":case"instagram-reels":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"tiktok":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"discord":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:60,bitrate:8000000,audioCodec:"aac",audioBitrate:192000};case"linkedin":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"facebook":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"web-progressive":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000,twoPass:!0};case"web-streaming":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};default:return{}}}async function B3($){let Z=await HZ();if(!Z)return null;try{let Y=_Z($),X=await new Z.Input(Y).getInfo();return{duration:X.duration||0,width:X.width||0,height:X.height||0,frameRate:X.frameRate||0,bitrate:X.bitrate||0,codec:X.videoCodec||"",audioCodec:X.audioCodec}}catch(Y){return console.warn(`[stx-media] Failed to analyze video: ${Y}`),null}}async function OZ($,Z,Y,J){let X=await HZ();if(!X)return console.warn("[stx-media] ts-videos not installed, skipping processing"),{src:$,processed:!1};let Q=await q4($,Z,Y);if(Q)return Q;try{let G=_Z($);if(!await D0(G))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let K=Y.outputDir||"dist/videos",z=Y.baseUrl||"/videos";await _z(K,{recursive:!0});let q=await b0(G),W=Uz($,jz($)),U={src:$,processed:!0,hash:q};J?.({percentage:5,stage:"analyzing"}),U.metadata=await B3(G)||void 0;let j={};if(Z.quality)j.bitrate=Hz(Z.quality);if(Z.platform)Object.assign(j,Oz(Z.platform));if(Z.transcode)Object.assign(j,Z.transcode);if(Object.keys(j).length>0||Z.process){J?.({percentage:10,stage:"transcoding"});let B=`${W}-${q}.mp4`,_=Bz(K,B);try{let H=await Lz(G,_,j,X,(L)=>J?.({percentage:10+L*0.5,stage:"transcoding"}));if(H)U.transcoded={path:_,url:`${z}/${B}`,duration:H.duration,size:H.size,video:{codec:j.codec||"h264",width:H.width,height:H.height,bitrate:H.bitrate,frameRate:H.frameRate},audio:H.audioCodec?{codec:j.audioCodec||"aac",bitrate:j.audioBitrate||128000,sampleRate:j.sampleRate||48000,channels:j.channels||2}:void 0}}catch(H){U.errors=U.errors||[],U.errors.push(`Transcoding failed: ${H}`)}}if(Z.generatePoster){J?.({percentage:65,stage:"generating-poster"});let B=typeof Z.generatePoster==="object"?Z.generatePoster:{timestamp:0},_=await j4(G,B,K,z);if(_)U.poster=_}if(Y.thumbnails?.enabled){J?.({percentage:70,stage:"generating-thumbnails"});let B=await B4(G,Y.thumbnails,K,z);if(B.length>0)U.thumbnails=B}if(Z.streaming){J?.({percentage:80,stage:"generating-manifests"});let B=typeof Z.streaming==="object"?Z.streaming:Y.streaming||{format:"hls"};if(B.format==="hls"||B.format===void 0){let _=await H4(G,B.qualities||Y.streaming?.defaultQualities||[],K,z);if(_)U.streaming={...U.streaming,hls:_}}if(B.format==="dash"){let _=await O4(G,B.qualities||Y.streaming?.defaultQualities||[],K,z);if(_)U.streaming={...U.streaming,dash:_}}}if(Z.spriteSheet)J?.({percentage:90,stage:"generating-sprite-sheet"});return J?.({percentage:100,stage:"complete"}),await W4($,Z,U,Y),U}catch(G){return{src:$,processed:!1,errors:[`Processing failed: ${G}`]}}}async function Lz($,Z,Y,J,X){try{let G=await new J.Conversion($,Z,{videoCodec:Y.codec,videoBitrate:Y.bitrate,width:Y.maxWidth,height:Y.maxHeight,frameRate:Y.frameRate,audioCodec:Y.audioCodec,audioBitrate:Y.audioBitrate,sampleRate:Y.sampleRate,channels:Y.channels}).run((K)=>{X?.(K.percentage/100)});return{duration:G.duration||0,size:G.size||0,width:G.width||Y.maxWidth||0,height:G.height||Y.maxHeight||0,bitrate:G.bitrate||Y.bitrate||0,frameRate:G.frameRate||Y.frameRate||30,audioCodec:G.audioCodec}}catch(Q){return console.error(`[stx-media] Transcoding failed: ${Q}`),null}}var LZ=b(()=>{d1();Q3();U3();j3()});var FZ={};e(FZ,{setCachedVideoResult:()=>W4,processVideo:()=>OZ,getCachedVideoResult:()=>q4,generateThumbnails:()=>B4,generateSpriteSheet:()=>GZ,generatePoster:()=>j4,generateHLSManifest:()=>H4,generateDASHManifest:()=>O4,clearVideoCache:()=>QZ,analyzeVideo:()=>B3,VideoProcessorCache:()=>z4});var VZ=b(()=>{LZ();U3();j3();Q3()});async function AZ(){try{return await Promise.resolve().then(() => (VZ(),FZ))}catch($){if(!wZ)console.warn("[stx-media] Video processor not available, some features disabled:",$),wZ=!0;return null}}async function L4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipProcessing){if(Y.tsVideosConfig?.enabled&&!Y.isDev)return Nz(J,Y)}if(Y.processedResult?.processed)return TZ($,Y.processedResult,Z);let X;if(J.generatePoster&&J.src&&!$.poster)X=await Mz(J,Y);let{src:Q,sources:G=[],poster:K,posterPlaceholder:z,controls:q=RZ,autoplay:W=!1,muted:U=!1,loop:j=!1,preload:B=NZ,playsinline:_=!0,lazy:H=!0,player:L="native",type:V,width:O,height:F,crossorigin:w,disablePictureInPicture:A=!1,disableRemotePlayback:R=!1}=$,N=X||K,M=$.class,T=$.style,I=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`;if(L==="ts-video")return wz($,Z);if(V&&V!=="video")return Vz(Q||"",V,$);let E=G.length>0?G:Q?[{src:Q,type:MZ(Q)}]:[],D=[`id="${I}"`];if(q)D.push("controls");if(W)D.push("autoplay");if(U)D.push("muted");if(j)D.push("loop");if(_)D.push("playsinline");if(A)D.push("disablepictureinpicture");if(R)D.push("disableremoteplayback");if(w)D.push(`crossorigin="${w}"`);if(H){if(D.push(`data-preload="${B}"`),D.push('preload="none"'),N)D.push(`data-poster="${R0(N)}"`);D.push("data-stx-lazy")}else if(D.push(`preload="${B}"`),N)D.push(`poster="${R0(N)}"`);if(O)D.push(`width="${O}"`);if(F)D.push(`height="${F}"`);if(M)D.push(`class="${R0(M)}"`);if(T)D.push(`style="${R0(T)}"`);let y=E.map((C)=>{return` <source ${H?`data-src="${R0(C.src)}"`:`src="${R0(C.src)}"`} type="${C.type}"${C.media?` media="${C.media}"`:""} />`}).join(`
7554
+ </MPD>`,K}function KZ($){let Z=Math.floor($/3600),Y=Math.floor($%3600/60),J=Math.floor($%60),X="PT";if(Z>0)X+=`${Z}H`;if(Y>0)X+=`${Y}M`;return X+=`${J}S`,X}var _Z;var j3=b(()=>{d1();_Z=[{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},{label:"360p",width:640,height:360,bitrate:600000,audioBitrate:64000}]});import{resolve as BZ,basename as Uz,extname as jz,join as _z}from"path";import{mkdir as Bz}from"fs/promises";async function HZ(){try{return await import("ts-videos")}catch{return null}}function Hz($){switch($){case"very-low":return 500000;case"low":return 1e6;case"medium":return 2500000;case"high":return 5000000;case"very-high":return 1e7;case"lossless":return 0;default:return 2500000}}function Oz($){switch($){case"youtube":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};case"twitter":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"instagram-feed":return{codec:"h264",maxWidth:1080,maxHeight:1080,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"instagram-story":case"instagram-reels":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"tiktok":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"discord":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:60,bitrate:8000000,audioCodec:"aac",audioBitrate:192000};case"linkedin":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"facebook":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"web-progressive":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000,twoPass:!0};case"web-streaming":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};default:return{}}}async function _3($){let Z=await HZ();if(!Z)return null;try{let Y=BZ($),X=await new Z.Input(Y).getInfo();return{duration:X.duration||0,width:X.width||0,height:X.height||0,frameRate:X.frameRate||0,bitrate:X.bitrate||0,codec:X.videoCodec||"",audioCodec:X.audioCodec}}catch(Y){return console.warn(`[stx-media] Failed to analyze video: ${Y}`),null}}async function OZ($,Z,Y,J){let X=await HZ();if(!X)return console.warn("[stx-media] ts-videos not installed, skipping processing"),{src:$,processed:!1};let Q=await q4($,Z,Y);if(Q)return Q;try{let G=BZ($);if(!await D0(G))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let K=Y.outputDir||"dist/videos",z=Y.baseUrl||"/videos";await Bz(K,{recursive:!0});let q=await b0(G),W=Uz($,jz($)),U={src:$,processed:!0,hash:q};J?.({percentage:5,stage:"analyzing"}),U.metadata=await _3(G)||void 0;let j={};if(Z.quality)j.bitrate=Hz(Z.quality);if(Z.platform)Object.assign(j,Oz(Z.platform));if(Z.transcode)Object.assign(j,Z.transcode);if(Object.keys(j).length>0||Z.process){J?.({percentage:10,stage:"transcoding"});let _=`${W}-${q}.mp4`,B=_z(K,_);try{let H=await Lz(G,B,j,X,(L)=>J?.({percentage:10+L*0.5,stage:"transcoding"}));if(H)U.transcoded={path:B,url:`${z}/${_}`,duration:H.duration,size:H.size,video:{codec:j.codec||"h264",width:H.width,height:H.height,bitrate:H.bitrate,frameRate:H.frameRate},audio:H.audioCodec?{codec:j.audioCodec||"aac",bitrate:j.audioBitrate||128000,sampleRate:j.sampleRate||48000,channels:j.channels||2}:void 0}}catch(H){U.errors=U.errors||[],U.errors.push(`Transcoding failed: ${H}`)}}if(Z.generatePoster){J?.({percentage:65,stage:"generating-poster"});let _=typeof Z.generatePoster==="object"?Z.generatePoster:{timestamp:0},B=await j4(G,_,K,z);if(B)U.poster=B}if(Y.thumbnails?.enabled){J?.({percentage:70,stage:"generating-thumbnails"});let _=await _4(G,Y.thumbnails,K,z);if(_.length>0)U.thumbnails=_}if(Z.streaming){J?.({percentage:80,stage:"generating-manifests"});let _=typeof Z.streaming==="object"?Z.streaming:Y.streaming||{format:"hls"};if(_.format==="hls"||_.format===void 0){let B=await H4(G,_.qualities||Y.streaming?.defaultQualities||[],K,z);if(B)U.streaming={...U.streaming,hls:B}}if(_.format==="dash"){let B=await O4(G,_.qualities||Y.streaming?.defaultQualities||[],K,z);if(B)U.streaming={...U.streaming,dash:B}}}if(Z.spriteSheet)J?.({percentage:90,stage:"generating-sprite-sheet"});return J?.({percentage:100,stage:"complete"}),await W4($,Z,U,Y),U}catch(G){return{src:$,processed:!1,errors:[`Processing failed: ${G}`]}}}async function Lz($,Z,Y,J,X){try{let G=await new J.Conversion($,Z,{videoCodec:Y.codec,videoBitrate:Y.bitrate,width:Y.maxWidth,height:Y.maxHeight,frameRate:Y.frameRate,audioCodec:Y.audioCodec,audioBitrate:Y.audioBitrate,sampleRate:Y.sampleRate,channels:Y.channels}).run((K)=>{X?.(K.percentage/100)});return{duration:G.duration||0,size:G.size||0,width:G.width||Y.maxWidth||0,height:G.height||Y.maxHeight||0,bitrate:G.bitrate||Y.bitrate||0,frameRate:G.frameRate||Y.frameRate||30,audioCodec:G.audioCodec}}catch(Q){return console.error(`[stx-media] Transcoding failed: ${Q}`),null}}var LZ=b(()=>{d1();Q3();U3();j3()});var FZ={};e(FZ,{setCachedVideoResult:()=>W4,processVideo:()=>OZ,getCachedVideoResult:()=>q4,generateThumbnails:()=>_4,generateSpriteSheet:()=>GZ,generatePoster:()=>j4,generateHLSManifest:()=>H4,generateDASHManifest:()=>O4,clearVideoCache:()=>QZ,analyzeVideo:()=>_3,VideoProcessorCache:()=>z4});var VZ=b(()=>{LZ();U3();j3();Q3()});async function AZ(){try{return await Promise.resolve().then(() => (VZ(),FZ))}catch($){if(!wZ)console.warn("[stx-media] Video processor not available, some features disabled:",$),wZ=!0;return null}}async function L4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipProcessing){if(Y.tsVideosConfig?.enabled&&!Y.isDev)return Nz(J,Y)}if(Y.processedResult?.processed)return TZ($,Y.processedResult,Z);let X;if(J.generatePoster&&J.src&&!$.poster)X=await Mz(J,Y);let{src:Q,sources:G=[],poster:K,posterPlaceholder:z,controls:q=RZ,autoplay:W=!1,muted:U=!1,loop:j=!1,preload:_=NZ,playsinline:B=!0,lazy:H=!0,player:L="native",type:V,width:O,height:F,crossorigin:w,disablePictureInPicture:A=!1,disableRemotePlayback:R=!1}=$,N=X||K,M=$.class,T=$.style,I=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`;if(L==="ts-video")return wz($,Z);if(V&&V!=="video")return Vz(Q||"",V,$);let E=G.length>0?G:Q?[{src:Q,type:MZ(Q)}]:[],D=[`id="${I}"`];if(q)D.push("controls");if(W)D.push("autoplay");if(U)D.push("muted");if(j)D.push("loop");if(B)D.push("playsinline");if(A)D.push("disablepictureinpicture");if(R)D.push("disableremoteplayback");if(w)D.push(`crossorigin="${w}"`);if(H){if(D.push(`data-preload="${_}"`),D.push('preload="none"'),N)D.push(`data-poster="${R0(N)}"`);D.push("data-stx-lazy")}else if(D.push(`preload="${_}"`),N)D.push(`poster="${R0(N)}"`);if(O)D.push(`width="${O}"`);if(F)D.push(`height="${F}"`);if(M)D.push(`class="${R0(M)}"`);if(T)D.push(`style="${R0(T)}"`);let y=E.map((C)=>{return` <source ${H?`data-src="${R0(C.src)}"`:`src="${R0(C.src)}"`} type="${C.type}"${C.media?` media="${C.media}"`:""} />`}).join(`
7537
7555
  `),S=`<video ${D.join(" ")}>
7538
7556
  ${y}
7539
7557
  Your browser does not support the video tag.
@@ -7574,10 +7592,10 @@ ${y}
7574
7592
  })();
7575
7593
  `.trim();return{html:S,script:k}}function Vz($,Z,Y){let{width:J=640,height:X=360}=Y,Q=Y.class,G=Y.style,K=Y.id||`stx-embed-${Math.random().toString(36).slice(2,8)}`,z,q=null;switch(Z){case"youtube":q=Az($),z=q?`https://www.youtube-nocookie.com/embed/${q}`:$;break;case"vimeo":q=Rz($),z=q?`https://player.vimeo.com/video/${q}`:$;break;case"dailymotion":q=$.split("/").pop()||"",z=`https://www.dailymotion.com/embed/video/${q}`;break;case"twitch":q=$.split("/").pop()||"",z=`https://player.twitch.tv/?video=${q}&parent=${typeof window<"u"?window.location.hostname:"localhost"}`;break;default:z=$}let W=[`id="${K}"`,`src="${R0(z)}"`,`width="${J}"`,`height="${X}"`,'frameborder="0"',"allowfullscreen",'allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"'];if(Q)W.push(`class="${R0(Q)}"`);if(G)W.push(`style="${R0(G)}"`);if(Y.lazy)W.push('loading="lazy"');return{html:`<div class="stx-video-embed" style="position:relative;padding-bottom:56.25%;height:0;overflow:hidden;">
7576
7594
  <iframe ${W.join(" ")} style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>
7577
- </div>`}}function wz($,Z={}){let{src:Y,sources:J=[],poster:X,controls:Q=!0,autoplay:G=!1,muted:K=!1,loop:z=!1,preload:q="metadata",playsinline:W=!0,lazy:U=!0,width:j,height:B}=$,_=$.class,H=$.style,L=$.id||`ts-video-${Math.random().toString(36).slice(2,8)}`,V={src:J.length>0?J:Y,autoplay:G,loop:z,muted:K,playsinline:W,preload:q,poster:X,controls:Q,title:$.title},O=["position: relative",j?`width: ${typeof j==="number"?j+"px":j}`:"width: 100%",B?`height: ${typeof B==="number"?B+"px":B}`:"",H||""].filter(Boolean).join("; "),F=`
7595
+ </div>`}}function wz($,Z={}){let{src:Y,sources:J=[],poster:X,controls:Q=!0,autoplay:G=!1,muted:K=!1,loop:z=!1,preload:q="metadata",playsinline:W=!0,lazy:U=!0,width:j,height:_}=$,B=$.class,H=$.style,L=$.id||`ts-video-${Math.random().toString(36).slice(2,8)}`,V={src:J.length>0?J:Y,autoplay:G,loop:z,muted:K,playsinline:W,preload:q,poster:X,controls:Q,title:$.title},O=["position: relative",j?`width: ${typeof j==="number"?j+"px":j}`:"width: 100%",_?`height: ${typeof _==="number"?_+"px":_}`:"",H||""].filter(Boolean).join("; "),F=`
7578
7596
  <div
7579
7597
  id="${L}"
7580
- class="ts-video-player${_?" "+R0(_):""}"
7598
+ class="ts-video-player${B?" "+R0(B):""}"
7581
7599
  style="${O}"
7582
7600
  data-ts-video-player
7583
7601
  data-config='${JSON.stringify(V)}'
@@ -7741,7 +7759,7 @@ else {
7741
7759
  .ts-video-player__play-button svg {
7742
7760
  margin-left: 4px;
7743
7761
  }
7744
- `.trim();return{html:F,script:w,css:A}}function MZ($){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 Az($){let Z=[/youtube\.com\/watch\?v=([^&]+)/,/youtube\.com\/embed\/([^?]+)/,/youtu\.be\/([^?]+)/,/youtube\.com\/v\/([^?]+)/];for(let Y of Z){let J=$.match(Y);if(J)return J[1]}return null}function Rz($){let Z=$.match(/vimeo\.com\/(\d+)/);return Z?Z[1]:null}function R0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}async function Nz($,Z){let Y=await AZ();if(!Y)return L4({...$,process:!1},Z);let J=Z.tsVideosConfig,X=await Y.processVideo($.src,$,J,$.onProcessProgress);if(X.processed)return TZ($,X,Z);return L4({...$,process:!1},Z)}async function Mz($,Z){let Y=await AZ();if(!Y||!$.src)return;let J=typeof $.generatePoster==="object"?$.generatePoster:{timestamp:0},X=Z.tsVideosConfig||{enabled:!0,outputDir:"dist/videos",baseUrl:"/videos"};return(await Y.generatePoster($.src,J,X.outputDir,X.baseUrl||"/videos"))?.url}function TZ($,Z,Y){let{controls:J=RZ,autoplay:X=!1,muted:Q=!1,loop:G=!1,preload:K=NZ,playsinline:z=!0,lazy:q=!0,width:W,height:U,crossorigin:j,disablePictureInPicture:B=!1,disableRemotePlayback:_=!1}=$,H=$.class,L=$.style,V=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`,O=$.src,F=MZ(O);if(Z.transcoded)O=Z.transcoded.url,F="video/mp4";let w=Z.streaming?.hls||Z.streaming?.dash;if(w){if(Z.streaming?.hls)O=Z.streaming.hls.manifestUrl,F="application/x-mpegURL";else if(Z.streaming?.dash)O=Z.streaming.dash.manifestUrl,F="application/dash+xml"}let A=Z.poster?.url||$.poster,R=[`id="${V}"`];if(J)R.push("controls");if(X)R.push("autoplay");if(Q)R.push("muted");if(G)R.push("loop");if(z)R.push("playsinline");if(B)R.push("disablepictureinpicture");if(_)R.push("disableremoteplayback");if(j)R.push(`crossorigin="${j}"`);if(q){if(R.push(`data-preload="${K}"`),R.push('preload="none"'),A)R.push(`data-poster="${R0(A)}"`);R.push("data-stx-lazy")}else if(R.push(`preload="${K}"`),A)R.push(`poster="${R0(A)}"`);let N=W||Z.metadata?.width,M=U||Z.metadata?.height;if(N)R.push(`width="${N}"`);if(M)R.push(`height="${M}"`);if(H)R.push(`class="${R0(H)}"`);if(L)R.push(`style="${R0(L)}"`);let I=` <source ${q?`data-src="${R0(O)}"`:`src="${R0(O)}"`} type="${F}" />`,E=`<video ${R.join(" ")}>
7762
+ `.trim();return{html:F,script:w,css:A}}function MZ($){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 Az($){let Z=[/youtube\.com\/watch\?v=([^&]+)/,/youtube\.com\/embed\/([^?]+)/,/youtu\.be\/([^?]+)/,/youtube\.com\/v\/([^?]+)/];for(let Y of Z){let J=$.match(Y);if(J)return J[1]}return null}function Rz($){let Z=$.match(/vimeo\.com\/(\d+)/);return Z?Z[1]:null}function R0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}async function Nz($,Z){let Y=await AZ();if(!Y)return L4({...$,process:!1},Z);let J=Z.tsVideosConfig,X=await Y.processVideo($.src,$,J,$.onProcessProgress);if(X.processed)return TZ($,X,Z);return L4({...$,process:!1},Z)}async function Mz($,Z){let Y=await AZ();if(!Y||!$.src)return;let J=typeof $.generatePoster==="object"?$.generatePoster:{timestamp:0},X=Z.tsVideosConfig||{enabled:!0,outputDir:"dist/videos",baseUrl:"/videos"};return(await Y.generatePoster($.src,J,X.outputDir,X.baseUrl||"/videos"))?.url}function TZ($,Z,Y){let{controls:J=RZ,autoplay:X=!1,muted:Q=!1,loop:G=!1,preload:K=NZ,playsinline:z=!0,lazy:q=!0,width:W,height:U,crossorigin:j,disablePictureInPicture:_=!1,disableRemotePlayback:B=!1}=$,H=$.class,L=$.style,V=$.id||`stx-video-${Math.random().toString(36).slice(2,8)}`,O=$.src,F=MZ(O);if(Z.transcoded)O=Z.transcoded.url,F="video/mp4";let w=Z.streaming?.hls||Z.streaming?.dash;if(w){if(Z.streaming?.hls)O=Z.streaming.hls.manifestUrl,F="application/x-mpegURL";else if(Z.streaming?.dash)O=Z.streaming.dash.manifestUrl,F="application/dash+xml"}let A=Z.poster?.url||$.poster,R=[`id="${V}"`];if(J)R.push("controls");if(X)R.push("autoplay");if(Q)R.push("muted");if(G)R.push("loop");if(z)R.push("playsinline");if(_)R.push("disablepictureinpicture");if(B)R.push("disableremoteplayback");if(j)R.push(`crossorigin="${j}"`);if(q){if(R.push(`data-preload="${K}"`),R.push('preload="none"'),A)R.push(`data-poster="${R0(A)}"`);R.push("data-stx-lazy")}else if(R.push(`preload="${K}"`),A)R.push(`poster="${R0(A)}"`);let N=W||Z.metadata?.width,M=U||Z.metadata?.height;if(N)R.push(`width="${N}"`);if(M)R.push(`height="${M}"`);if(H)R.push(`class="${R0(H)}"`);if(L)R.push(`style="${R0(L)}"`);let I=` <source ${q?`data-src="${R0(O)}"`:`src="${R0(O)}"`} type="${F}" />`,E=`<video ${R.join(" ")}>
7745
7763
  ${I}
7746
7764
  Your browser does not support the video tag.
7747
7765
  </video>`;if(Z.spriteSheet)E=`<div class="stx-video-wrapper" data-sprite-sheet="${R0(Z.spriteSheet.url)}" data-sprite-cols="${Z.spriteSheet.columns}" data-sprite-interval="${Z.spriteSheet.interval}">
@@ -7792,7 +7810,7 @@ ${E}
7792
7810
  }
7793
7811
  `.trim();return{html:E,script:D,css:y}}var wZ=!1,RZ=!0,NZ="metadata",Fz="https://cdn.jsdelivr.net/npm/ts-video-player@latest/dist/index.min.js";var IZ=b(()=>{H3()});function DZ(){return s$({name:"video",hasEndTag:!1,description:"Render a video with optional ts-videos processing, streaming, and poster generation",transform:async($,Z,Y,J)=>{let{src:X,options:Q}=Tz($,Z,Y);if(!X)return console.warn("@video directive: missing src argument"),"<!-- @video: missing src -->";let G={src:X,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},z={isDev:Y.__isDev||!1,tsVideosConfig:Y.__tsVideosConfig},q=await L4(G,z),W=q.html;if(q.css)W+=`
7794
7812
  <style>${q.css}</style>`;if(q.script)W+=`
7795
- <script>${q.script}</script>`;return W},defaults:{src:"",options:{controls:!0,lazy:!0,preload:"metadata"}}})}function Tz($,Z,Y){if(Z.src)return{src:String(Z.src),options:Z.options||{}};let J=$.trim();if(J.startsWith("@video(")||J.startsWith("("))J=J.replace(/^@video\(/,"").replace(/^\(/,"").replace(/\)$/,"");let X=Iz(J),Q=EZ(X[0],Y)||"",G={};if(X[1]){let K=EZ(X[1],Y);if(typeof K==="object"&&K!==null)G=K;else if(typeof X[1]==="string")try{G=JSON.parse(X[1])}catch{}}return{src:Q,options:G}}function Iz($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let z=$[K],q=K>0?$[K-1]:"";if((z==='"'||z==="'"||z==="`")&&q!=="\\"){if(!J)J=!0,X=z;else if(z===X)J=!1,X="";else Y+=z;continue}if(!J){if(z==="{")Q++;if(z==="}")Q--;if(z==="[")G++;if(z==="]")G--;if(z===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=z}if(Y.trim())Z.push(Y.trim());return Z}function EZ($,Z){if(typeof $!=="string")return $;let Y=$.trim();if(Y.startsWith('"')&&Y.endsWith('"')||Y.startsWith("'")&&Y.endsWith("'"))return Y.slice(1,-1);if(!Y.startsWith("/")&&!Y.startsWith(".")&&!Y.startsWith("http")&&!Y.startsWith("{")){let J=Z[Y];if(J!==void 0)return J}if(Y.startsWith("{")||Y.startsWith("["))try{return JSON.parse(Y)}catch{}return Y}var _3;var H3=b(()=>{h7();IZ();_3=DZ()});function Dz($,Z){let Y=Z.pwa?.manifest?.themeColor||"#4f46e5";return`<div class="stx-pwa-install" style="display:none;">
7813
+ <script>${q.script}</script>`;return W},defaults:{src:"",options:{controls:!0,lazy:!0,preload:"metadata"}}})}function Tz($,Z,Y){if(Z.src)return{src:String(Z.src),options:Z.options||{}};let J=$.trim();if(J.startsWith("@video(")||J.startsWith("("))J=J.replace(/^@video\(/,"").replace(/^\(/,"").replace(/\)$/,"");let X=Iz(J),Q=EZ(X[0],Y)||"",G={};if(X[1]){let K=EZ(X[1],Y);if(typeof K==="object"&&K!==null)G=K;else if(typeof X[1]==="string")try{G=JSON.parse(X[1])}catch{}}return{src:Q,options:G}}function Iz($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let z=$[K],q=K>0?$[K-1]:"";if((z==='"'||z==="'"||z==="`")&&q!=="\\"){if(!J)J=!0,X=z;else if(z===X)J=!1,X="";else Y+=z;continue}if(!J){if(z==="{")Q++;if(z==="}")Q--;if(z==="[")G++;if(z==="]")G--;if(z===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=z}if(Y.trim())Z.push(Y.trim());return Z}function EZ($,Z){if(typeof $!=="string")return $;let Y=$.trim();if(Y.startsWith('"')&&Y.endsWith('"')||Y.startsWith("'")&&Y.endsWith("'"))return Y.slice(1,-1);if(!Y.startsWith("/")&&!Y.startsWith(".")&&!Y.startsWith("http")&&!Y.startsWith("{")){let J=Z[Y];if(J!==void 0)return J}if(Y.startsWith("{")||Y.startsWith("["))try{return JSON.parse(Y)}catch{}return Y}var B3;var H3=b(()=>{h7();IZ();B3=DZ()});function Dz($,Z){let Y=Z.pwa?.manifest?.themeColor||"#4f46e5";return`<div class="stx-pwa-install" style="display:none;">
7796
7814
  ${$}
7797
7815
  </div>
7798
7816
  <script>
@@ -8091,14 +8109,14 @@ catch (error) {
8091
8109
  init();
8092
8110
  }
8093
8111
  })();
8094
- </script>`}var Sz,yz,Pz,Cz,kZ;var bZ=b(()=>{Sz={name:"pwa.installButton",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Dz($,X)},hasEndTag:!0,description:"Renders a PWA install prompt button that appears when the app can be installed"},yz={name:"pwa.updatePrompt",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Ez($,X)},hasEndTag:!0,description:"Renders a PWA update notification UI when a new version is available"},Pz={name:"pwa.offlineIndicator",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return kz($,X)},hasEndTag:!0,description:"Renders an offline status indicator that shows when the user loses connection"},Cz={name:"pwa.pushSubscribe",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return bz($,X)},hasEndTag:!0,description:"Renders a push notification subscription button"},kZ=[Sz,yz,Pz,Cz]});function O3($){for(let[Z,Y]of Object.entries(r))if(Y===$)return Z;return}var r;var F4=b(()=>{r={UNCLOSED_DIRECTIVE:1001,UNCLOSED_EXPRESSION:1002,INVALID_DIRECTIVE_SYNTAX:1003,MALFORMED_EXPRESSION:1004,UNEXPECTED_TOKEN:1005,UNDEFINED_VARIABLE:1101,TYPE_ERROR:1102,EVALUATION_ERROR:1103,INFINITE_LOOP:1104,CIRCULAR_REFERENCE:1105,UNSAFE_EXPRESSION:1201,PATH_TRAVERSAL:1202,XSS_ATTEMPT:1203,CODE_INJECTION:1204,DOM_API_VIOLATION:1205,FILE_NOT_FOUND:1301,FILE_READ_ERROR:1302,INVALID_FILE_PATH:1303,PERMISSION_DENIED:1304,INVALID_CONFIG:1401,MISSING_REQUIRED_CONFIG:1402,DEPRECATED_CONFIG:1403,COMPONENT_NOT_FOUND:1501,INVALID_PROPS:1502,COMPONENT_RENDER_ERROR:1503,FILTER_NOT_FOUND:1601,INVALID_FILTER_ARGS:1602,EXPRESSION_TIMEOUT:1603}});function t5(){return!1}function e5(){return!t5()||process.env.STX_DEBUG==="true"}function V4(){return!1}import vz from"path";function w4(){return{...L3}}function A4($){if(!L3.showRelativePaths||!$)return $;let Z=L3.baseDir||process.cwd();try{let Y=vz.relative(Z,$);return Y.startsWith("..")?$:Y}catch{return $}}var xz,L3,R4,m1,N4;var M4=b(()=>{F4();xz={showRelativePaths:!1,enableAutoRecovery:e5(),logRecoveryWarnings:!0},L3={...xz};R4=class R4 extends Error{code;filePath;line;column;context;numericCode;constructor($,Z,Y,J,X,Q,G){super($);this.code=Z;this.filePath=Y;this.line=J;this.column=X;this.context=Q;if(this.name="StxError",this.numericCode=G||r.EVALUATION_ERROR,this.filePath)this.filePath=A4(this.filePath)}};m1=class m1 extends R4{constructor($,Z,Y,J,X,Q){super($,"stx_RUNTIME_ERROR",Z,Y,J,X,Q||r.EVALUATION_ERROR);this.name="StxRuntimeError"}};N4=class N4 extends R4{isFatal=!0;constructor($,Z,Y,J,X,Q){super($,"stx_VALIDATION_ERROR",Z,Y,J,X,Q||r.DOM_API_VIOLATION);this.name="StxValidationError"}}});function yZ($){let{type:Z,message:Y,code:J,filePath:X,line:Q,column:G,template:K,offset:z,snippet:q,suggestion:W,format:U="text"}=$,j=Q,B=G;if(!j&&K&&z!==void 0){let O=mz(K,z);j=O.line,B=O.column}let _=X?A4(X):void 0,H=J?O3(J):void 0,L={type:Z,code:J,codeName:H,message:Y,filePath:_,line:j,column:B,snippet:q,suggestion:W,timestamp:new Date().toISOString()},V;switch(U){case"html":V=gz(L);break;case"json":V=JSON.stringify(L,null,2);break;case"console":V=hz(L,K,z);break;case"text":default:V=fz(L,K,z);break}return{formatted:V,data:L}}function fz($,Z,Y){let J=[],X=$.code?` [${$.codeName||$.code}]`:"";if(J.push(`[${$.type} Error${X}]`),$.filePath){let Q=$.filePath;if($.line){if(Q+=`:${$.line}`,$.column)Q+=`:${$.column}`}J.push(`at ${Q}`)}if(J.push(`
8112
+ </script>`}var Sz,yz,Pz,Cz,kZ;var bZ=b(()=>{Sz={name:"pwa.installButton",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Dz($,X)},hasEndTag:!0,description:"Renders a PWA install prompt button that appears when the app can be installed"},yz={name:"pwa.updatePrompt",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Ez($,X)},hasEndTag:!0,description:"Renders a PWA update notification UI when a new version is available"},Pz={name:"pwa.offlineIndicator",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return kz($,X)},hasEndTag:!0,description:"Renders an offline status indicator that shows when the user loses connection"},Cz={name:"pwa.pushSubscribe",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return bz($,X)},hasEndTag:!0,description:"Renders a push notification subscription button"},kZ=[Sz,yz,Pz,Cz]});function O3($){for(let[Z,Y]of Object.entries(r))if(Y===$)return Z;return}var r;var F4=b(()=>{r={UNCLOSED_DIRECTIVE:1001,UNCLOSED_EXPRESSION:1002,INVALID_DIRECTIVE_SYNTAX:1003,MALFORMED_EXPRESSION:1004,UNEXPECTED_TOKEN:1005,UNDEFINED_VARIABLE:1101,TYPE_ERROR:1102,EVALUATION_ERROR:1103,INFINITE_LOOP:1104,CIRCULAR_REFERENCE:1105,UNSAFE_EXPRESSION:1201,PATH_TRAVERSAL:1202,XSS_ATTEMPT:1203,CODE_INJECTION:1204,DOM_API_VIOLATION:1205,FILE_NOT_FOUND:1301,FILE_READ_ERROR:1302,INVALID_FILE_PATH:1303,PERMISSION_DENIED:1304,INVALID_CONFIG:1401,MISSING_REQUIRED_CONFIG:1402,DEPRECATED_CONFIG:1403,COMPONENT_NOT_FOUND:1501,INVALID_PROPS:1502,COMPONENT_RENDER_ERROR:1503,FILTER_NOT_FOUND:1601,INVALID_FILTER_ARGS:1602,EXPRESSION_TIMEOUT:1603}});function t5(){return!1}function e5(){return!t5()||process.env.STX_DEBUG==="true"}function V4(){return!1}import vz from"path";function w4(){return{...L3}}function A4($){if(!L3.showRelativePaths||!$)return $;let Z=L3.baseDir||process.cwd();try{let Y=vz.relative(Z,$);return Y.startsWith("..")?$:Y}catch{return $}}var xz,L3,R4,u1,N4;var M4=b(()=>{F4();xz={showRelativePaths:!1,enableAutoRecovery:e5(),logRecoveryWarnings:!0},L3={...xz};R4=class R4 extends Error{code;filePath;line;column;context;numericCode;constructor($,Z,Y,J,X,Q,G){super($);this.code=Z;this.filePath=Y;this.line=J;this.column=X;this.context=Q;if(this.name="StxError",this.numericCode=G||r.EVALUATION_ERROR,this.filePath)this.filePath=A4(this.filePath)}};u1=class u1 extends R4{constructor($,Z,Y,J,X,Q){super($,"stx_RUNTIME_ERROR",Z,Y,J,X,Q||r.EVALUATION_ERROR);this.name="StxRuntimeError"}};N4=class N4 extends R4{isFatal=!0;constructor($,Z,Y,J,X,Q){super($,"stx_VALIDATION_ERROR",Z,Y,J,X,Q||r.DOM_API_VIOLATION);this.name="StxValidationError"}}});function yZ($){let{type:Z,message:Y,code:J,filePath:X,line:Q,column:G,template:K,offset:z,snippet:q,suggestion:W,format:U="text"}=$,j=Q,_=G;if(!j&&K&&z!==void 0){let O=uz(K,z);j=O.line,_=O.column}let B=X?A4(X):void 0,H=J?O3(J):void 0,L={type:Z,code:J,codeName:H,message:Y,filePath:B,line:j,column:_,snippet:q,suggestion:W,timestamp:new Date().toISOString()},V;switch(U){case"html":V=gz(L);break;case"json":V=JSON.stringify(L,null,2);break;case"console":V=hz(L,K,z);break;case"text":default:V=fz(L,K,z);break}return{formatted:V,data:L}}function fz($,Z,Y){let J=[],X=$.code?` [${$.codeName||$.code}]`:"";if(J.push(`[${$.type} Error${X}]`),$.filePath){let Q=$.filePath;if($.line){if(Q+=`:${$.line}`,$.column)Q+=`:${$.column}`}J.push(`at ${Q}`)}if(J.push(`
8095
8113
  ${$.message}`),Z&&$.line){let Q=dz(Z,$.line,2);if(Q)J.push(`
8096
8114
  ${Q}`)}if($.snippet)J.push(`
8097
8115
  Snippet: ${$.snippet}`);if($.suggestion)J.push(`
8098
8116
  Suggestion: ${$.suggestion}`);return J.join(" ")}function gz($){let Z=$.code?` [${$.code}]`:"",Y=$.filePath?` in ${$.filePath}${$.line?`:${$.line}`:""}`:"",J=`<!-- [${$.type} Error${Z}]${Y}: ${SZ($.message)}`;if($.suggestion)J+=` | Suggestion: ${SZ($.suggestion)}`;return J+=" -->",J}function hz($,Z,Y){let q=[],W=$.code?` [${$.codeName||$.code}]`:"";if(q.push(`\x1B[1m${"\x1B[31m"}\u2501\u2501\u2501 ${$.type} Error${W} \u2501\u2501\u2501${"\x1B[0m"}`),$.filePath){let U=`\x1B[36m${$.filePath}\x1B[0m`;if($.line){if(U+=`\x1B[90m:${$.line}\x1B[0m`,$.column)U+=`\x1B[90m:${$.column}\x1B[0m`}q.push(`
8099
8117
  \x1B[90mat\x1B[0m ${U}`)}if(q.push(`
8100
8118
 
8101
- ${$.message}`),Z&&$.line){let U=uz(Z,$.line,2);if(U)q.push(`
8119
+ ${$.message}`),Z&&$.line){let U=mz(Z,$.line,2);if(U)q.push(`
8102
8120
 
8103
8121
  \x1B[90mContext:\x1B[0m
8104
8122
  ${U}`)}if($.suggestion)q.push(`
@@ -8106,9 +8124,9 @@ ${U}`)}if($.suggestion)q.push(`
8106
8124
  \x1B[33mSuggestion:\x1B[0m ${$.suggestion}`);return q.push(`
8107
8125
  ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501${"\x1B[0m"}`),q.join("")}function dz($,Z,Y){let J=$.split(`
8108
8126
  `),X=Math.max(0,Z-Y-1),Q=Math.min(J.length-1,Z+Y-1),G=[];for(let K=X;K<=Q;K++){let z=(K+1).toString().padStart(4),q=K===Z-1?">":" ";G.push(`${q}${z} | ${J[K]}`)}return G.join(`
8109
- `)}function uz($,Z,Y){let J=$.split(`
8110
- `),X=Math.max(0,Z-Y-1),Q=Math.min(J.length-1,Z+Y-1),G="\x1B[90m",K="\x1B[31m",z="\x1B[0m",q=[];for(let W=X;W<=Q;W++){let U=(W+1).toString().padStart(4),j=W===Z-1,B=j?"\x1B[31m>\x1B[0m":" ",_=j?`\x1B[31m${J[W]}\x1B[0m`:`\x1B[90m${J[W]}\x1B[0m`;q.push(`${B}\x1B[90m${U}\x1B[0m | ${_}`)}return q.join(`
8111
- `)}function SZ($){return $.replace(/--/g,"- -").replace(/>/g,"&gt;")}function mz($,Z){let J=$.substring(0,Z).split(`
8127
+ `)}function mz($,Z,Y){let J=$.split(`
8128
+ `),X=Math.max(0,Z-Y-1),Q=Math.min(J.length-1,Z+Y-1),G="\x1B[90m",K="\x1B[31m",z="\x1B[0m",q=[];for(let W=X;W<=Q;W++){let U=(W+1).toString().padStart(4),j=W===Z-1,_=j?"\x1B[31m>\x1B[0m":" ",B=j?`\x1B[31m${J[W]}\x1B[0m`:`\x1B[90m${J[W]}\x1B[0m`;q.push(`${_}\x1B[90m${U}\x1B[0m | ${B}`)}return q.join(`
8129
+ `)}function SZ($){return $.replace(/--/g,"- -").replace(/>/g,"&gt;")}function uz($,Z){let J=$.substring(0,Z).split(`
8112
8130
  `);return{line:J.length,column:J[J.length-1].length}}function Z0($,Z,Y){return yZ({type:$,message:Z,code:Y,format:"html"}).formatted}async function W5($,Z,Y){try{return await $()}catch(J){if(Y&&J instanceof Error)Y(J);return Z}}var PZ=b(()=>{F4();M4()});class V3{errors=[];maxErrors;enableFileLogging;logFilePath;logFormat;maxFileSize;maxLogFiles;minLevel;writeQueue=Promise.resolve();constructor($={}){this.maxErrors=$.maxErrors??1000,this.enableFileLogging=$.enableFileLogging??!1,this.logFilePath=$.logFilePath??".stx/errors.log",this.logFormat=$.logFormat??"json",this.maxFileSize=$.maxFileSize??10485760,this.maxLogFiles=$.maxLogFiles??5,this.minLevel=$.minLevel??"all"}configure($){if($.maxErrors!==void 0)this.maxErrors=$.maxErrors;if($.enableFileLogging!==void 0)this.enableFileLogging=$.enableFileLogging;if($.logFilePath!==void 0)this.logFilePath=$.logFilePath;if($.logFormat!==void 0)this.logFormat=$.logFormat;if($.maxFileSize!==void 0)this.maxFileSize=$.maxFileSize;if($.maxLogFiles!==void 0)this.maxLogFiles=$.maxLogFiles;if($.minLevel!==void 0)this.minLevel=$.minLevel}log($,Z,Y="error"){let J={timestamp:new Date,error:$,context:Z,level:Y};if(this.errors.push(J),this.errors.length>this.maxErrors)this.errors=this.errors.slice(-this.maxErrors);if(this.enableFileLogging&&this.shouldLog(Y))this.writeToFile(J)}shouldLog($){if(this.minLevel==="all")return!0;if(this.minLevel==="warning")return $==="error"||$==="warning";if(this.minLevel==="error")return $==="error";return!0}formatEntry($){if(this.logFormat==="json")return JSON.stringify({timestamp:$.timestamp.toISOString(),level:$.level||"error",type:$.error.constructor.name,message:$.error.message,stack:$.error.stack,context:$.context});let Z=[`[${$.timestamp.toISOString()}] [${($.level||"error").toUpperCase()}] ${$.error.constructor.name}: ${$.error.message}`];if($.error.stack)Z.push(` Stack: ${$.error.stack.split(`
8113
8131
  `).slice(1).join(`
8114
8132
  `)}`);if($.context)Z.push(` Context: ${JSON.stringify($.context)}`);return Z.join(`
@@ -8117,7 +8135,7 @@ ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\
8117
8135
 
8118
8136
  `),"utf-8")}}async flush(){await this.writeQueue}}var F3,a0,w3;var CZ=b(()=>{M4();F3={isEnabled(){return w4().enableAutoRecovery},fixCommonSyntaxErrors($){let Z=w4();if(!Z.enableAutoRecovery)return{fixed:$,fixes:[]};let Y=$,J=[],X=(Y.match(/\{\{/g)||[]).length,Q=(Y.match(/\}\}/g)||[]).length;if(X>Q){let K=X-Q;Y+="}}".repeat(K),J.push(`Added ${K} missing closing braces '}}'`)}let G=["if","foreach","for","switch","section"];for(let K of G){let z=(Y.match(new RegExp(`@${K}\\b`,"g"))||[]).length,q=(Y.match(new RegExp(`@end${K}\\b`,"g"))||[]).length;if(z>q){let W=z-q;for(let U=0;U<W;U++)Y+=`
8119
8137
  @end${K}`;J.push(`Added ${W} missing @end${K}`)}}if(J.length>0&&Z.logRecoveryWarnings)console.warn("[stx] Auto-recovery applied fixes:"),J.forEach((K)=>console.warn(` - ${K}`)),console.warn(" Consider fixing these issues in your template.");return{fixed:Y,fixes:J}},createFallbackContent($,Z){if(e5())return`<!-- ${$} failed: ${Z.message} -->`;return"<!-- stx rendering error -->"}};a0=new V3,w3={isDevelopment(){return e5()},logDetailedError($,Z){if(!this.isDevelopment())return;if(console.error("=== stx Detailed Error ==="),console.error("Error:",$.message),console.error("Stack:",$.stack),Z)console.error("Context:",Z);console.error("========================")},createErrorReport($,Z){let Y=["=== stx Error Report ===",`Time: ${new Date().toISOString()}`,`Error: ${$.message}`,`Type: ${$.constructor.name}`,`Stack: ${$.stack}`];if(Z)Y.push(`Context: ${JSON.stringify(Z,null,2)}`);return Y.push("========================"),Y.join(`
8120
- `)}}});var vZ=()=>{};var xZ=b(()=>{F4();PZ();CZ();vZ();M4()});var z1=b(()=>{xZ()});function fZ($,Z,Y,J){let X=$;X=X.replace(/@meta\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(K,z,q)=>{if(!q&&z.includes(":")){let W=z.split(":"),U=z,j=W.length>1?W[1]:"";if(j&&Z[j])q=Z[j];else if(U.startsWith("og:")&&Z.openGraph&&Z.openGraph[W[1]])q=Z.openGraph[W[1]];else q="";return q?`<meta property="${i(U)}" content="${i(q)}">`:""}return q?`<meta name="${i(z)}" content="${i(q)}">`:""});let Q=/@metaTag\s*\(/g,G;while((G=Q.exec(X))!==null){let K=G.index,z=K+G[0].length-1,q=1,W=z+1;while(W<X.length&&q>0){if(X[W]==="(")q++;else if(X[W]===")"){if(q--,q===0)break}W++}if(q!==0)break;let U=X.substring(z+1,W).trim(),j=W+1,B=(()=>{try{let _=M0(U,Z);if(!_)return"";let H="<meta";if(_.name)H+=` name="${i(String(_.name))}"`;if(_.property)H+=` property="${i(String(_.property))}"`;if(_.httpEquiv)H+=` http-equiv="${i(String(_.httpEquiv))}"`;if(_.content)H+=` content="${i(String(_.content))}"`;return H+=">",H}catch(_){let H=_ instanceof Error?_.message:String(_);return Z0("MetaTag",H,r.EVALUATION_ERROR)}})();X=X.substring(0,K)+B+X.substring(j),Q.lastIndex=0}return X}function gZ($,Z,Y){let J=$,X=/@structuredData\s*\(/g,Q;while((Q=X.exec(J))!==null){let G=Q.index,K=G+Q[0].length-1,z=1,q=K+1;while(q<J.length&&z>0){if(J[q]==="(")z++;else if(J[q]===")"){if(z--,z===0)break}q++}if(z!==0)break;let W=J.substring(K+1,q).trim(),U=q+1,j=(()=>{try{let B=M0(W,Z);if(!B)return"";if(!B["@context"])B["@context"]="https://schema.org";return`<script type="application/ld+json">${JSON.stringify(B).replace(/<\//g,"<\\/")}</script>`}catch(B){let _=B instanceof Error?B.message:String(B);return Z0("StructuredData",_,r.EVALUATION_ERROR)}})();J=J.substring(0,G)+j+J.substring(U),X.lastIndex=0}return J}function hZ($,Z,Y,J){let X=$,Q=/@seo\s*\(\s*\{/g,G;while((G=Q.exec(X))!==null){let K=X.indexOf("{",G.index+4),z=1,q=K+1,W=null,U=!1;while(q<X.length&&z>0){let V=X[q];if(U){U=!1,q++;continue}if(V==="\\"&&W){U=!0,q++;continue}if(W){if(V===W)W=null;q++;continue}if(V==='"'||V==="'"||V==="`"){W=V,q++;continue}if(V==="{")z++;else if(V==="}")z--;q++}if(z!==0)break;let j=X.substring(q).match(/^\s*\)/);if(!j)break;let B=q+j[0].length,_=X.substring(K,q),H=X.substring(G.index,B),L=((V)=>{try{let O=M0(V,Z);if(!O)return"";let F="";if(O.title)F+=`<title>${i(O.title)}</title>
8138
+ `)}}});var vZ=()=>{};var xZ=b(()=>{F4();PZ();CZ();vZ();M4()});var z1=b(()=>{xZ()});function fZ($,Z,Y,J){let X=$;X=X.replace(/@meta\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(K,z,q)=>{if(!q&&z.includes(":")){let W=z.split(":"),U=z,j=W.length>1?W[1]:"";if(j&&Z[j])q=Z[j];else if(U.startsWith("og:")&&Z.openGraph&&Z.openGraph[W[1]])q=Z.openGraph[W[1]];else q="";return q?`<meta property="${i(U)}" content="${i(q)}">`:""}return q?`<meta name="${i(z)}" content="${i(q)}">`:""});let Q=/@metaTag\s*\(/g,G;while((G=Q.exec(X))!==null){let K=G.index,z=K+G[0].length-1,q=1,W=z+1;while(W<X.length&&q>0){if(X[W]==="(")q++;else if(X[W]===")"){if(q--,q===0)break}W++}if(q!==0)break;let U=X.substring(z+1,W).trim(),j=W+1,_=(()=>{try{let B=M0(U,Z);if(!B)return"";let H="<meta";if(B.name)H+=` name="${i(String(B.name))}"`;if(B.property)H+=` property="${i(String(B.property))}"`;if(B.httpEquiv)H+=` http-equiv="${i(String(B.httpEquiv))}"`;if(B.content)H+=` content="${i(String(B.content))}"`;return H+=">",H}catch(B){let H=B instanceof Error?B.message:String(B);return Z0("MetaTag",H,r.EVALUATION_ERROR)}})();X=X.substring(0,K)+_+X.substring(j),Q.lastIndex=0}return X}function gZ($,Z,Y){let J=$,X=/@structuredData\s*\(/g,Q;while((Q=X.exec(J))!==null){let G=Q.index,K=G+Q[0].length-1,z=1,q=K+1;while(q<J.length&&z>0){if(J[q]==="(")z++;else if(J[q]===")"){if(z--,z===0)break}q++}if(z!==0)break;let W=J.substring(K+1,q).trim(),U=q+1,j=(()=>{try{let _=M0(W,Z);if(!_)return"";if(!_["@context"])_["@context"]="https://schema.org";return`<script type="application/ld+json">${JSON.stringify(_).replace(/<\//g,"<\\/")}</script>`}catch(_){let B=_ instanceof Error?_.message:String(_);return Z0("StructuredData",B,r.EVALUATION_ERROR)}})();J=J.substring(0,G)+j+J.substring(U),X.lastIndex=0}return J}function hZ($,Z,Y,J){let X=$,Q=/@seo\s*\(\s*\{/g,G;while((G=Q.exec(X))!==null){let K=X.indexOf("{",G.index+4),z=1,q=K+1,W=null,U=!1;while(q<X.length&&z>0){let V=X[q];if(U){U=!1,q++;continue}if(V==="\\"&&W){U=!0,q++;continue}if(W){if(V===W)W=null;q++;continue}if(V==='"'||V==="'"||V==="`"){W=V,q++;continue}if(V==="{")z++;else if(V==="}")z--;q++}if(z!==0)break;let j=X.substring(q).match(/^\s*\)/);if(!j)break;let _=q+j[0].length,B=X.substring(K,q),H=X.substring(G.index,_),L=((V)=>{try{let O=M0(V,Z);if(!O)return"";let F="";if(O.title)F+=`<title>${i(O.title)}</title>
8121
8139
  `,F+=`<meta name="title" content="${i(O.title)}">
8122
8140
  `;if(O.description)F+=`<meta name="description" content="${i(O.description)}">
8123
8141
  `;if(O.keywords){let w=Array.isArray(O.keywords)?O.keywords.join(", "):O.keywords;F+=`<meta name="keywords" content="${i(w)}">
@@ -8139,7 +8157,7 @@ ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\
8139
8157
  `}if(w.site)F+=`<meta name="twitter:site" content="${i(w.site)}">
8140
8158
  `;if(w.creator)F+=`<meta name="twitter:creator" content="${i(w.creator)}">
8141
8159
  `}if(O.structuredData){let w=JSON.stringify(O.structuredData).replace(/<\//g,"<\\/");F+=`<script type="application/ld+json">${w}</script>
8142
- `}return F.trim()}catch(O){let F=O instanceof Error?O.message:String(O);return Z0("SEO",`Error processing @seo directive: ${F}`,r.EVALUATION_ERROR)}})(_);X=X.substring(0,G.index)+L+X.substring(B),Q.lastIndex=G.index+L.length}return X}function dZ($,Z,Y){if(Y.seo?.enabled===!1)return $;if($.includes("<!-- stx SEO Tags -->")||Y.skipDefaultSeoTags===!0)return $;let J=Z.__stx_runtime_head;if(!!(J?.title||J?.meta?.some((U)=>U.property==="og:title"||U.name==="og:title"||U.name==="twitter:title"||U.name==="description")))return $;if(/<meta\s+(?:[^>]*\s)?property=["']og:title["']/i.test($)||/<meta\s+(?:[^>]*\s)?name=["']og:title["']/i.test($)||/<meta\s+(?:[^>]*\s)?name=["']twitter:title["']/i.test($))return $;if(!$.includes("<head>")&&!$.includes("<head "))return $;let Q=$.includes("<title>")||$.includes("</title>"),G="";if(Z.title)G=Z.title;else if(Z.meta&&Z.meta.title)G=Z.meta.title;else if(Y.seo?.defaultConfig?.title)G=Y.seo.defaultConfig.title;else G=Y.defaultTitle||"stx Project";let K="";if(Z.description)K=Z.description;else if(Z.meta&&Z.meta.description)K=Z.meta.description;else if(Y.seo?.defaultConfig?.description)K=Y.seo.defaultConfig.description;else K=Y.defaultDescription||"A website built with stx templating engine";let z="";if(Z.image)z=Z.image;else if(Z.meta&&Z.meta.image)z=Z.meta.image;else if(Z.openGraph&&Z.openGraph.image)z=Z.openGraph.image;else if(Y.seo?.defaultImage)z=Y.seo.defaultImage;else if(Y.defaultImage)z=Y.defaultImage;let q=`
8160
+ `}return F.trim()}catch(O){let F=O instanceof Error?O.message:String(O);return Z0("SEO",`Error processing @seo directive: ${F}`,r.EVALUATION_ERROR)}})(B);X=X.substring(0,G.index)+L+X.substring(_),Q.lastIndex=G.index+L.length}return X}function dZ($,Z,Y){if(Y.seo?.enabled===!1)return $;if($.includes("<!-- stx SEO Tags -->")||Y.skipDefaultSeoTags===!0)return $;let J=Z.__stx_runtime_head;if(!!(J?.title||J?.meta?.some((U)=>U.property==="og:title"||U.name==="og:title"||U.name==="twitter:title"||U.name==="description")))return $;if(/<meta\s+(?:[^>]*\s)?property=["']og:title["']/i.test($)||/<meta\s+(?:[^>]*\s)?name=["']og:title["']/i.test($)||/<meta\s+(?:[^>]*\s)?name=["']twitter:title["']/i.test($))return $;if(!$.includes("<head>")&&!$.includes("<head "))return $;let Q=$.includes("<title>")||$.includes("</title>"),G="";if(Z.title)G=Z.title;else if(Z.meta&&Z.meta.title)G=Z.meta.title;else if(Y.seo?.defaultConfig?.title)G=Y.seo.defaultConfig.title;else G=Y.defaultTitle||"stx Project";let K="";if(Z.description)K=Z.description;else if(Z.meta&&Z.meta.description)K=Z.meta.description;else if(Y.seo?.defaultConfig?.description)K=Y.seo.defaultConfig.description;else K=Y.defaultDescription||"A website built with stx templating engine";let z="";if(Z.image)z=Z.image;else if(Z.meta&&Z.meta.image)z=Z.meta.image;else if(Z.openGraph&&Z.openGraph.image)z=Z.openGraph.image;else if(Y.seo?.defaultImage)z=Y.seo.defaultImage;else if(Y.defaultImage)z=Y.defaultImage;let q=`
8143
8161
  <!-- stx SEO Tags -->
8144
8162
  <meta name="title" content="${i(G)}">
8145
8163
  <meta name="description" content="${i(K)}">
@@ -8155,7 +8173,7 @@ ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\
8155
8173
  `;let W=$;if(!Q)W=W.replace(/<head[^>]*>/,`$&
8156
8174
  <title>${i(G)}</title>`);return W.replace(/<head[^>]*>/,`$&
8157
8175
  ${q}
8158
- `)}function i($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var uZ,mZ;var A3=b(()=>{z1();A0();uZ={name:"meta",handler:($,Z,Y,J)=>{if(Z.length<1)return Z0("Meta","meta directive requires at least the meta name",r.INVALID_DIRECTIVE_SYNTAX);let X=Z[0].replace(/['"]/g,""),Q=Z.length>1?Z[1].replace(/['"]/g,""):"";return`<meta name="${i(X)}" content="${i(Q)}">`},hasEndTag:!1},mZ={name:"structuredData",handler:($,Z,Y,J)=>{if($.trim()==="")return Z0("StructuredData","structuredData directive requires JSON-LD content",r.INVALID_DIRECTIVE_SYNTAX);try{let X=JSON.parse($);if(!X["@context"])X["@context"]="https://schema.org";if(!X["@type"])return Z0("StructuredData","structuredData requires @type property",r.INVALID_DIRECTIVE_SYNTAX);return`<script type="application/ld+json">${JSON.stringify(X)}</script>`}catch(X){let Q=X instanceof Error?X.message:String(X);return Z0("StructuredData",Q,r.EVALUATION_ERROR)}},hasEndTag:!0}});import $$ from"path";function pz($,Z){let Y=$.match(/<script\b[^>]*>([\s\S]*?)<\/script>/i),J=Y?Y[1].trim():"",X=Z,Q=[],G=!0;if(J){let U=J.match(/export\s+default\s+({[\s\S]*})/);if(U)try{let j=U[1],B=j.match(/tag\s*:\s*['"`]([^'"`]+)['"`]/);if(B)X=B[1];let _=j.match(/props\s*:\s*\[([\s\S]*?)\]/);if(_)Q=_[1].split(",").map((L)=>L.trim().replace(/['"`]/g,"")).filter((L)=>L.length>0);let H=j.match(/shadowDOM\s*:\s*(true|false)/);if(H)G=H[1]==="true"}catch{}}let K=$.match(/<template\b(?![^>]*\bid\s*=)[^>]*>([\s\S]*?)<\/template>/i),z=K?K[1].trim():"",q=$.match(/<style\b[^>]*>([\s\S]*?)<\/style>/i),W=q?q[1].trim():"";return{tag:X,props:Q,template:z,styles:W,script:J,shadowDOM:G}}function lz($){let{tag:Z,props:Y,template:J,styles:X,shadowDOM:Q}=$,G=Z.split("-").map((U)=>U.charAt(0).toUpperCase()+U.slice(1)).join(""),K=J.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$\{/g,"\\${"),z=X.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),q=Y.map((U)=>`'${U}'`).join(", "),W=Y.map((U)=>`
8176
+ `)}function i($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var mZ,uZ;var A3=b(()=>{z1();A0();mZ={name:"meta",handler:($,Z,Y,J)=>{if(Z.length<1)return Z0("Meta","meta directive requires at least the meta name",r.INVALID_DIRECTIVE_SYNTAX);let X=Z[0].replace(/['"]/g,""),Q=Z.length>1?Z[1].replace(/['"]/g,""):"";return`<meta name="${i(X)}" content="${i(Q)}">`},hasEndTag:!1},uZ={name:"structuredData",handler:($,Z,Y,J)=>{if($.trim()==="")return Z0("StructuredData","structuredData directive requires JSON-LD content",r.INVALID_DIRECTIVE_SYNTAX);try{let X=JSON.parse($);if(!X["@context"])X["@context"]="https://schema.org";if(!X["@type"])return Z0("StructuredData","structuredData requires @type property",r.INVALID_DIRECTIVE_SYNTAX);return`<script type="application/ld+json">${JSON.stringify(X)}</script>`}catch(X){let Q=X instanceof Error?X.message:String(X);return Z0("StructuredData",Q,r.EVALUATION_ERROR)}},hasEndTag:!0}});import $$ from"path";function pz($,Z){let Y=$.match(/<script\b[^>]*>([\s\S]*?)<\/script>/i),J=Y?Y[1].trim():"",X=Z,Q=[],G=!0;if(J){let U=J.match(/export\s+default\s+({[\s\S]*})/);if(U)try{let j=U[1],_=j.match(/tag\s*:\s*['"`]([^'"`]+)['"`]/);if(_)X=_[1];let B=j.match(/props\s*:\s*\[([\s\S]*?)\]/);if(B)Q=B[1].split(",").map((L)=>L.trim().replace(/['"`]/g,"")).filter((L)=>L.length>0);let H=j.match(/shadowDOM\s*:\s*(true|false)/);if(H)G=H[1]==="true"}catch{}}let K=$.match(/<template\b(?![^>]*\bid\s*=)[^>]*>([\s\S]*?)<\/template>/i),z=K?K[1].trim():"",q=$.match(/<style\b[^>]*>([\s\S]*?)<\/style>/i),W=q?q[1].trim():"";return{tag:X,props:Q,template:z,styles:W,script:J,shadowDOM:G}}function lz($){let{tag:Z,props:Y,template:J,styles:X,shadowDOM:Q}=$,G=Z.split("-").map((U)=>U.charAt(0).toUpperCase()+U.slice(1)).join(""),K=J.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$\{/g,"\\${"),z=X.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),q=Y.map((U)=>`'${U}'`).join(", "),W=Y.map((U)=>`
8159
8177
  get ${U}() {
8160
8178
  return this.getAttribute('${U}') || '';
8161
8179
  }
@@ -8208,7 +8226,7 @@ ${W}
8208
8226
  customElements.define('${Z}', ${G});
8209
8227
  `}async function pZ($,Z,Y,J){if(Z.length<1)return Z0("WebComponent","@webcomponent directive requires at least the tag name parameter",r.INVALID_DIRECTIVE_SYNTAX);let X=Z[0].replace(/['"]/g,""),G=(Y.__stx_options||{}).componentsDir||"components",K=[$$.join($$.dirname(J),G,`${X}.stx`),$$.join(process.cwd(),G,`${X}.stx`),$$.join($$.dirname(J),`${X}.stx`)],z=null;for(let U of K)if(await o(U)){z=await Bun.file(U).text();break}if(!z)return Z0("WebComponent",`Component file not found: ${X}.stx`,r.FILE_NOT_FOUND);let q=pz(z,X);return`<script type="module">
8210
8228
  ${lz(q)}
8211
- </script>`}var lZ=b(()=>{z1();N0()});var cZ={};e(cZ,{timingPlugin:()=>sz,pluginManager:()=>cz,definePlugin:()=>T4,debugPlugin:()=>oz,createVariablesPlugin:()=>rz,createFilterPlugin:()=>nz,createDirectivePlugin:()=>iz,PluginManager:()=>R3});function T4($){return $}class R3{plugins=new Map;sortedPlugins=[];initialized=!1;async register($,Z){if(this.plugins.has($.name))throw Error(`Plugin "${$.name}" is already registered`);if($.dependencies){for(let Y of $.dependencies)if(!this.plugins.has(Y))throw Error(`Plugin "${$.name}" depends on "${Y}" which is not registered`)}if(this.plugins.set($.name,$),$.onRegister)await $.onRegister(Z);this.sortPlugins()}async unregister($){let Z=this.plugins.get($);if(!Z)return!1;for(let[Y,J]of this.plugins)if(J.dependencies?.includes($))throw Error(`Cannot unregister "${$}" because "${Y}" depends on it`);if(Z.onUnregister)await Z.onUnregister();return this.plugins.delete($),this.sortPlugins(),!0}get($){return this.plugins.get($)}has($){return this.plugins.has($)}getAll(){return[...this.sortedPlugins]}getAllDirectives(){let $=[];for(let Z of this.sortedPlugins)if(Z.registerDirectives)$.push(...Z.registerDirectives());return $}getAllFilters(){let $={};for(let Z of this.sortedPlugins)if(Z.registerFilters)Object.assign($,Z.registerFilters());return $}async runBeforeProcess($){return this.runHooks("beforeProcess",$)}async runAfterParse($){return this.runHooks("afterParse",$)}async runBeforeDirective($,Z){return this.runDirectiveHooks("beforeDirective",$,Z)}async runAfterDirective($,Z){return this.runDirectiveHooks("afterDirective",$,Z)}async runBeforeRender($){return this.runHooks("beforeRender",$)}async runAfterRender($){return this.runHooks("afterRender",$)}async runOnError($){for(let Z of this.sortedPlugins)if(Z.onError)try{let Y=await Z.onError($);if(Y){if(Y.template!==void 0)$.template=Y.template;if(Y.context)$.context={...$.context,...Y.context};if(Y.metadata)$.metadata={...$.metadata,...Y.metadata};if(Y.skip)return $}}catch(Y){console.error(`Error in plugin "${Z.name}" onError hook:`,Y)}return null}sortPlugins(){this.sortedPlugins=Array.from(this.plugins.values()).sort(($,Z)=>($.priority??100)-(Z.priority??100))}async runHooks($,Z){let Y={...Z};for(let J of this.sortedPlugins){let X=J[$];if(X)try{let Q=await X(Y);if(Q){if(Q.template!==void 0)Y.template=Q.template;if(Q.context)Y.context={...Y.context,...Q.context};if(Q.metadata)Y.metadata={...Y.metadata,...Q.metadata};if(Q.skip)break}}catch(Q){console.error(`Error in plugin "${J.name}" ${$} hook:`,Q)}}return Y}async runDirectiveHooks($,Z,Y){let J={...Y};for(let X of this.sortedPlugins){let Q=X[$];if(Q)try{let G=await Q(Z,J);if(G){if(G.template!==void 0)J.template=G.template;if(G.context)J.context={...J.context,...G.context};if(G.metadata)J.metadata={...J.metadata,...G.metadata};if(G.skip)break}}catch(G){console.error(`Error in plugin "${X.name}" ${$} hook:`,G)}}return J}}function iz($,Z,Y={}){return{name:$,...Y,registerDirectives:()=>Z}}function nz($,Z,Y={}){return{name:$,...Y,registerFilters:()=>Z}}function rz($){return T4({name:"stx-variables",version:"1.0.0",description:"Adds predefined variables to template context",beforeProcess(Z){return{context:{...Z.context,...$}}}})}var cz,oz,sz;var iZ=b(()=>{cz=new R3;oz=T4({name:"stx-debug",version:"1.0.0",description:"Logs all plugin lifecycle events for debugging",priority:0,beforeProcess($){console.log("[stx-debug] beforeProcess:",$.filePath)},afterParse($){console.log("[stx-debug] afterParse:",$.template.length,"chars")},beforeDirective($,Z){console.log("[stx-debug] beforeDirective:",$)},afterDirective($,Z){console.log("[stx-debug] afterDirective:",$)},beforeRender($){console.log("[stx-debug] beforeRender")},afterRender($){console.log("[stx-debug] afterRender:",$.template.length,"chars")},onError($){console.error("[stx-debug] onError:",$.error.message,"in phase:",$.phase)}}),sz=T4({name:"stx-timing",version:"1.0.0",description:"Measures template processing time",priority:1,beforeProcess($){$.metadata.startTime=performance.now()},afterRender($){let Z=$.metadata.startTime;if(Z){let Y=performance.now()-Z;console.log(`[stx-timing] Processing took ${Y.toFixed(2)}ms`)}}})});var oZ={};e(oZ,{validateConfig:()=>Zq,loadStxConfig:()=>q1,defineStxConfig:()=>$q,defaultConfig:()=>p1,config:()=>M3});import N3 from"fs";import S0 from"path";import{loadConfigWithResult as az}from"bunfig";function tz($,Z){let Y=Z||"pages";if($)return{root:$,pagesDir:Y};let J=S0.join(process.cwd(),"resources","views"),X=S0.join(process.cwd(),"resources","layouts");if(N3.existsSync(J)&&N3.existsSync(X))return{root:"resources",pagesDir:"views"};let Q=S0.join(process.cwd(),"resources","views","pages");if(N3.existsSync(Q))return{root:"resources/views",pagesDir:Y};return{root:".",pagesDir:Y}}function ez($){if(l6($.stateDir),$.stateDir=I5(),$.cachePath=D5($.cachePath),$.build)$.build.cacheDir=D5($.build.cacheDir);if($.media?.cache)$.media.cache.directory=D5($.media.cache.directory);if($.story)$.story.outDir=D5($.story.outDir)}async function q1($){if(!$){if(U5)return U5;if(I4)return I4}let Z=$?S0.resolve($):process.cwd(),Y=nZ.get(Z);if(Y)return Y;let J=(async()=>{let Q=(await az({name:"stx",alias:"ui",cwd:Z,defaultConfig:p1,verbose:!1})).config;ez(Q);let G=tz(Q.root,Q.pagesDir);if(Q.root=G.root,Q.pagesDir=G.pagesDir,Q.root&&Q.root!=="."){let K=Q.root;if(Q.partialsDir&&!S0.isAbsolute(Q.partialsDir))Q.partialsDir=S0.join(K,Q.partialsDir);if(Q.componentsDir&&!S0.isAbsolute(Q.componentsDir))Q.componentsDir=S0.join(K,Q.componentsDir);if(Q.layoutsDir&&!S0.isAbsolute(Q.layoutsDir))Q.layoutsDir=S0.join(K,Q.layoutsDir)}if(Q.plugins&&Q.plugins.length>0){let{pluginManager:K}=await Promise.resolve().then(() => (iZ(),cZ)),z=[],q=[];for(let W of Q.plugins){let U=typeof W==="string"?W:W[0],j=typeof W==="string"?{}:W[1]||{};try{let B,_;try{B=await import(U),_=S0.dirname(U0.resolve(U))}catch{let L=S0.resolve(process.cwd(),U);B=await import(L),_=S0.dirname(L)}let H=B.default||B;if(K.register(H,Q),H.components){let L=S0.resolve(_,H.components);z.push(L)}if(H.pages){let L=S0.resolve(_,H.pages),V=j.path||"/";q.push({dir:L,prefix:V})}if(H.setup){let L={addDirective:(V)=>{Q.customDirectives=Q.customDirectives||[],Q.customDirectives.push(V)},addRoute:(V,O)=>{Q.apiRoutes=Q.apiRoutes||{},Q.apiRoutes[V]=O},addMiddleware:(V)=>{Q.middleware=Q.middleware||[],Q.middleware.push(V)},pluginDir:_,config:Q};await H.setup(j,L)}console.log(`[stx] Plugin loaded: ${H.name||U}`)}catch(B){console.warn(`[stx] Failed to load plugin ${U}:`,B.message)}}Q._pluginComponentDirs=z,Q._pluginPageDirs=q}return Q})();if(nZ.set(Z,J),!$)I4=J,J.then((X)=>{U5=X}).catch(()=>{});return J}function $q($){return $}function Zq($){let Z=[],Y=[];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 J=["auto","manual","sections"];if(!J.includes($.streaming.strategy))Z.push({path:"streaming.strategy",message:`streaming.strategy must be one of: ${J.join(", ")}`,severity:"error"})}}if($.i18n){if($.i18n.format!==void 0){let J=["json","yaml","yml","js"];if(!J.includes($.i18n.format))Z.push({path:"i18n.format",message:`i18n.format must be one of: ${J.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 J=["AA","AAA"];if(!J.includes($.a11y.level))Z.push({path:"a11y.level",message:`a11y.level must be one of: ${J.join(", ")}`,severity:"error"})}}if($.hydration){if($.hydration.mode!==void 0){let J=["progressive","islands"];if(!J.includes($.hydration.mode))Z.push({path:"hydration.mode",message:`hydration.mode must be one of: ${J.join(", ")}`,severity:"error"})}if($.hydration.preload!==void 0){let J=["none","eager","lazy"];if(!J.includes($.hydration.preload))Z.push({path:"hydration.preload",message:`hydration.preload must be one of: ${J.join(", ")}`,severity:"error"})}}if($.customDirectives)if(!Array.isArray($.customDirectives))Z.push({path:"customDirectives",message:"customDirectives must be an array",severity:"error"});else $.customDirectives.forEach((J,X)=>{if(!J.name||typeof J.name!=="string")Z.push({path:`customDirectives[${X}].name`,message:"Custom directive must have a name string",severity:"error"});if(!J.handler||typeof J.handler!=="function")Z.push({path:`customDirectives[${X}].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((J,X)=>{if(!J.name||typeof J.name!=="string")Z.push({path:`middleware[${X}].name`,message:"Middleware must have a name string",severity:"error"});if(!J.handler||typeof J.handler!=="function")Z.push({path:`middleware[${X}].handler`,message:"Middleware must have a handler function",severity:"error"});if(!J.timing||!["before","after"].includes(J.timing))Z.push({path:`middleware[${X}].timing`,message:'Middleware timing must be "before" or "after"',severity:"error"})});if($.debug===!0&&$.cache===!0)Y.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)Y.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 J=["fullscreen","standalone","minimal-ui","browser"];if(!J.includes($.pwa.manifest.display))Z.push({path:"pwa.manifest.display",message:`PWA display must be one of: ${J.join(", ")}`,severity:"error"})}if($.pwa.manifest?.orientation!==void 0){let J=["portrait","landscape","any","portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"];if(!J.includes($.pwa.manifest.orientation))Z.push({path:"pwa.manifest.orientation",message:`PWA orientation must be one of: ${J.join(", ")}`,severity:"error"})}if($.pwa.routes){let J=["cache-first","network-first","stale-while-revalidate","network-only","cache-only"];$.pwa.routes.forEach((X,Q)=>{if(!X.pattern||typeof X.pattern!=="string")Z.push({path:`pwa.routes[${Q}].pattern`,message:"PWA route must have a pattern string",severity:"error"});if(!J.includes(X.strategy))Z.push({path:`pwa.routes[${Q}].strategy`,message:`PWA route strategy must be one of: ${J.join(", ")}`,severity:"error"});if(X.maxAgeSeconds!==void 0&&(typeof X.maxAgeSeconds!=="number"||X.maxAgeSeconds<0))Z.push({path:`pwa.routes[${Q}].maxAgeSeconds`,message:"PWA route maxAgeSeconds must be a non-negative number",severity:"error"});if(X.maxEntries!==void 0&&(typeof X.maxEntries!=="number"||X.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((X)=>typeof X!=="number"||X<16||X>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 J=["any","maskable","monochrome"];if($.pwa.icons.purpose.filter((Q)=>!J.includes(Q)).length>0)Z.push({path:"pwa.icons.purpose",message:`PWA icon purpose must be one of: ${J.join(", ")}`,severity:"error"})}if($.pwa.enabled===!0&&!$.pwa.icons?.src)Y.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)Y.push({path:"pwa.manifest.themeColor",message:"PWA theme color not set, defaulting to black",severity:"warning"})}return{valid:Z.length===0,errors:Z,warnings:Y}}var p1,U5=null,nZ,I4=null,M3;var l1=b(()=>{Z7();Y7();J7();X7();g7();XZ();H3();bZ();A3();E5();lZ();p1={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:a1,cachePath:".stx/cache",cacheVersion:"1.0.0",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:b8,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:pZ,hasEndTag:!1,description:"Include a web component in the template"},n6,o6,uZ,mZ,s6,a6,t6,r6,Y9,Q9,JZ,_3,...kZ],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:"#app-content",linkSelector:"a[href]",viewTransitions:!0,scrollToTop:!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}};nZ=new Map;M3=new Proxy(p1,{get($,Z){if(U5&&Z in U5)return U5[Z];if(!I4)q1().catch((Y)=>{console.warn("[stx] Failed to load config file:",Y?.message||Y)});return $[Z]}})});var eZ={};e(eZ,{resetCssCache:()=>zq,resetCrosswindCache:()=>qq,rebuildCrosswindCSS:()=>Wq,loadCrosswindConfig:()=>k3,loadCrosswind:()=>E3,injectCrosswindCSS:()=>Y$,getCachedCSS:()=>Uq,generateCrosswindCSS:()=>tZ,extractClassNames:()=>aZ,buildCrosswindCSS:()=>rZ});import J0 from"path";import{hasLocalConfig as Yq}from"bunfig/discovery";function D3($){return Bun.hash($).toString(16).padStart(16,"0").slice(0,16)}function T3($,Z){if(W1.has($))W1.delete($);else if(W1.size>=Jq)W1.delete(W1.keys().next().value);W1.set($,Z)}async function Xq($){if(!A1)return null;try{let Z=Bun.file(J0.join(A1,`cw-${D3($)}.css`));if(!await Z.exists())return null;return await Z.text()}catch{return null}}async function Qq($,Z){if(!A1)return;try{if(!fs.existsSync(A1))fs.mkdirSync(A1,{recursive:!0});await Bun.write(J0.join(A1,`cw-${D3($)}.css`),Z)}catch{}}async function sZ($){try{let Z=await import($);if(Z&&Z.CSSGenerator)return{CSSGenerator:Z.CSSGenerator,config:Z.config,build:Z.build,defaultConfig:Z.defaultConfig,extractClasses:Z.extractClasses}}catch{}return null}function Gq(){let $=[],Z=process.cwd();while(Z!==J0.dirname(Z))$.push(J0.join(Z,"node_modules","@cwcss","crosswind","dist","index.js")),$.push(J0.join(Z,"node_modules","@cwcss","crosswind","src","index.ts")),$.push(J0.join(Z,"pantry","@cwcss","crosswind","dist","index.js")),$.push(J0.join(Z,"pantry","@cwcss","crosswind","src","index.ts")),$.push(J0.join(Z,"node_modules","@stacksjs","crosswind","dist","index.js")),$.push(J0.join(Z,"pantry","@stacksjs","crosswind","dist","index.js")),Z=J0.dirname(Z);return $}function Kq(){let $=[],Z=process.env.HOME||process.env.USERPROFILE||"";if(Z){let Y=[J0.join(Z,"Code","Tools","crosswind","packages","crosswind","dist","index.js"),J0.join(Z,"Code","Tools","crosswind","packages","crosswind","src","index.ts"),J0.join(Z,"repos","stacks-org","crosswind","packages","crosswind","dist","index.js"),J0.join(Z,"repos","stacks-org","crosswind","packages","crosswind","src","index.ts"),J0.join(Z,"Code","Tools","stx","packages","stx","node_modules","@cwcss","crosswind","dist","index.js"),J0.join(Z,"Code","Tools","stx","packages","stx","node_modules","@stacksjs","crosswind","dist","index.js")];$.push(...Y)}return $.push(J0.join(process.cwd(),"..","crosswind","packages","crosswind","dist","index.js")),$.push(J0.join(process.cwd(),"..","crosswind","packages","crosswind","src","index.ts")),$}async function E3(){if(I3)return J1;I3=!0;try{let $=async(X)=>{for(let Q of X){if(!await Bun.file(Q).exists())continue;let G=await sZ(Q);if(G){if(!process.env.STACKS_DEV_QUIET)console.log(`${O0.green}[Crosswind]${O0.reset} CSS engine loaded from ${J0.dirname(J0.dirname(Q))}`);return G}}return null};if(process.env.CROSSWIND_SRC){let X=J0.resolve(process.env.CROSSWIND_SRC),Q=await $([X]);if(!Q)throw Error(`CROSSWIND_SRC did not resolve to a Crosswind module: ${X}`);return J1=Q,J1}let Z=await $(Gq());if(Z)return J1=Z,J1;let Y=["@cwcss/crosswind","@cwcss/crosswind/dist/index.js","@stacksjs/crosswind","@stacksjs/crosswind/dist/index.js"];for(let X of Y){let Q=await sZ(X);if(Q){if(J1=Q,!process.env.STACKS_DEV_QUIET)console.log(`${O0.green}[Crosswind]${O0.reset} CSS engine loaded`);return J1}}let J=await $(Kq());if(J)return J1=J,J1;throw Error("Crosswind CSSGenerator not found in any location")}catch{return console.warn(`${O0.yellow}[Crosswind] CSS engine not available, Tailwind styles will not be generated${O0.reset}`),console.warn(`${O0.yellow}Run 'bun add @stacksjs/crosswind' to enable CSS generation${O0.reset}`),null}}function zq(){W1.clear()}function qq(){J1=null,I3=!1,t0=null,Z$="",W1.clear(),D4=null}async function k3($){try{if(!Yq({name:"crosswind",cwd:$}))return null;let{loadConfigWithResult:Z}=await import("bunfig"),Y=await Z({name:"crosswind",cwd:$,defaultConfig:{},checkEnv:!1,verbose:!1});if(!Y?.path||!Y.config||Object.keys(Y.config).length===0)return null;let J=J0.relative($,Y.path);if(!process.env.STACKS_DEV_QUIET)console.log(`${O0.green}[Crosswind]${O0.reset} Loaded config from ${J||Y.path}`);return Y.config}catch(Z){if(Z instanceof Error&&Z.name==="ConfigNotFoundError")return null;return console.warn(`${O0.yellow}[Crosswind]${O0.reset} Failed to load crosswind config:`,Z instanceof Error?Z.message:Z),null}}async function rZ($){if(j5)return Z$;j5=!0;try{let Z=await E3();if(!Z||!Z.build)return j5=!1,"";if(!t0)t0=await k3($);if(!t0)return j5=!1,"";let Y=Z.defaultConfig?.theme||{},J=t0.theme||{},X={...Z.defaultConfig,...t0,theme:{...Y,...J,extend:{...Y.extend||{},...J.extend||{}}}},Q=performance.now(),G=await Z.build(X),K=performance.now()-Q;if(Z$=G.css,console.log(`${O0.cyan}[Crosswind]${O0.reset} Built ${G.classes.size} classes in ${K.toFixed(1)}ms`),X.output){let z=J0.isAbsolute(X.output)?X.output:J0.join($,X.output),q=J0.dirname(z);if(!fs.existsSync(q))fs.mkdirSync(q,{recursive:!0});await Bun.write(z,G.css)}return j5=!1,G.css}catch(Z){return console.error(`${O0.red}[Crosswind]${O0.reset} Build error:`,Z),j5=!1,Z$}}async function Wq($){t0=null,await rZ($)}function Uq(){return Z$}function aZ($){let Z=new Set,Y=/class\s*=\s*["']([^"']+)["']/gi,J=Y.exec($);while(J!==null){for(let G of J[1].split(/\s+/))if(G.trim())Z.add(G.trim());J=Y.exec($)}let X=/(?:x-class|:class)\s*=\s*"([^"]+)"/gi,Q=X.exec($);while(Q!==null){let G=Q[1].match(/'([^']+)'/g);if(G){for(let K of G)for(let z of K.slice(1,-1).split(/\s+/))if(z.trim())Z.add(z.trim())}Q=X.exec($)}return Z}async function tZ($,Z){try{let Y=await E3();if(!Y)return"";let J=typeof Y.extractClasses==="function"?Y.extractClasses($):aZ($);if(J.size===0)return"";let X=Z?J0.resolve(Z):process.cwd();if(!A1)A1=B1(X,"cache");let Q=[...J].sort().join(" "),G=`${D4||"default"}::${Q}`,K=W1.get(G);if(K!==void 0)return T3(G,K),K;let z=await Xq(G);if(z!==null)return T3(G,z),z;if(!t0){let A=null;try{let{loadStxConfig:R}=await Promise.resolve().then(() => (l1(),oZ)),N=await R(X);if(N.css)if(typeof N.css==="string"){let M=J0.isAbsolute(N.css)?N.css:J0.resolve(X,N.css);if(await Bun.file(M).exists()){let T=await import(M);A=T.default||T,console.log(`${O0.green}[Crosswind]${O0.reset} Loaded config from stx.config.ts \u2192 ${N.css}`)}}else{if(A={...N.css,content:N.css.content||[],preflight:N.css.preflight??!0,minify:N.css.minify??!1},N.css.config){let M=J0.isAbsolute(N.css.config)?N.css.config:J0.resolve(X,N.css.config);if(await Bun.file(M).exists()){let T=await import(M);A={...T.default||T,...A}}}console.log(`${O0.green}[Crosswind]${O0.reset} Using inline CSS config from stx.config.ts`)}}catch{}t0=A||await k3(X);try{D4=D3(JSON.stringify(t0??{}))}catch{D4="unhashable"}}let q=Y.defaultConfig||Y.config,W=t0||{},U=q.theme||{},B=(W.theme||{}).extend||{},_={...U};if(Object.keys(B).length>0)_.extend=B;let H=[...q.safelist||[],...W.safelist||[]],L={...q,...W,content:[],output:"",preflight:!0,minify:!1,theme:_,safelist:H},V=new Y.CSSGenerator(L);for(let A of H)V.generate(A);for(let A of J)V.generate(A);let O=V.toCSS(!0,!1),F=L.shortcuts||W.shortcuts||{};for(let[A,R]of Object.entries(F)){if(!J.has(A)&&!H.includes(A))continue;let N=R.split(/\s+/).filter(Boolean);for(let M of N)V.generate(M)}O=V.toCSS(!0,!1);let w=O.split(`
8229
+ </script>`}var lZ=b(()=>{z1();N0()});var cZ={};e(cZ,{timingPlugin:()=>sz,pluginManager:()=>cz,definePlugin:()=>T4,debugPlugin:()=>oz,createVariablesPlugin:()=>rz,createFilterPlugin:()=>nz,createDirectivePlugin:()=>iz,PluginManager:()=>R3});function T4($){return $}class R3{plugins=new Map;sortedPlugins=[];initialized=!1;async register($,Z){if(this.plugins.has($.name))throw Error(`Plugin "${$.name}" is already registered`);if($.dependencies){for(let Y of $.dependencies)if(!this.plugins.has(Y))throw Error(`Plugin "${$.name}" depends on "${Y}" which is not registered`)}if(this.plugins.set($.name,$),$.onRegister)await $.onRegister(Z);this.sortPlugins()}async unregister($){let Z=this.plugins.get($);if(!Z)return!1;for(let[Y,J]of this.plugins)if(J.dependencies?.includes($))throw Error(`Cannot unregister "${$}" because "${Y}" depends on it`);if(Z.onUnregister)await Z.onUnregister();return this.plugins.delete($),this.sortPlugins(),!0}get($){return this.plugins.get($)}has($){return this.plugins.has($)}getAll(){return[...this.sortedPlugins]}getAllDirectives(){let $=[];for(let Z of this.sortedPlugins)if(Z.registerDirectives)$.push(...Z.registerDirectives());return $}getAllFilters(){let $={};for(let Z of this.sortedPlugins)if(Z.registerFilters)Object.assign($,Z.registerFilters());return $}async runBeforeProcess($){return this.runHooks("beforeProcess",$)}async runAfterParse($){return this.runHooks("afterParse",$)}async runBeforeDirective($,Z){return this.runDirectiveHooks("beforeDirective",$,Z)}async runAfterDirective($,Z){return this.runDirectiveHooks("afterDirective",$,Z)}async runBeforeRender($){return this.runHooks("beforeRender",$)}async runAfterRender($){return this.runHooks("afterRender",$)}async runOnError($){for(let Z of this.sortedPlugins)if(Z.onError)try{let Y=await Z.onError($);if(Y){if(Y.template!==void 0)$.template=Y.template;if(Y.context)$.context={...$.context,...Y.context};if(Y.metadata)$.metadata={...$.metadata,...Y.metadata};if(Y.skip)return $}}catch(Y){console.error(`Error in plugin "${Z.name}" onError hook:`,Y)}return null}sortPlugins(){this.sortedPlugins=Array.from(this.plugins.values()).sort(($,Z)=>($.priority??100)-(Z.priority??100))}async runHooks($,Z){let Y={...Z};for(let J of this.sortedPlugins){let X=J[$];if(X)try{let Q=await X(Y);if(Q){if(Q.template!==void 0)Y.template=Q.template;if(Q.context)Y.context={...Y.context,...Q.context};if(Q.metadata)Y.metadata={...Y.metadata,...Q.metadata};if(Q.skip)break}}catch(Q){console.error(`Error in plugin "${J.name}" ${$} hook:`,Q)}}return Y}async runDirectiveHooks($,Z,Y){let J={...Y};for(let X of this.sortedPlugins){let Q=X[$];if(Q)try{let G=await Q(Z,J);if(G){if(G.template!==void 0)J.template=G.template;if(G.context)J.context={...J.context,...G.context};if(G.metadata)J.metadata={...J.metadata,...G.metadata};if(G.skip)break}}catch(G){console.error(`Error in plugin "${X.name}" ${$} hook:`,G)}}return J}}function iz($,Z,Y={}){return{name:$,...Y,registerDirectives:()=>Z}}function nz($,Z,Y={}){return{name:$,...Y,registerFilters:()=>Z}}function rz($){return T4({name:"stx-variables",version:"1.0.0",description:"Adds predefined variables to template context",beforeProcess(Z){return{context:{...Z.context,...$}}}})}var cz,oz,sz;var iZ=b(()=>{cz=new R3;oz=T4({name:"stx-debug",version:"1.0.0",description:"Logs all plugin lifecycle events for debugging",priority:0,beforeProcess($){console.log("[stx-debug] beforeProcess:",$.filePath)},afterParse($){console.log("[stx-debug] afterParse:",$.template.length,"chars")},beforeDirective($,Z){console.log("[stx-debug] beforeDirective:",$)},afterDirective($,Z){console.log("[stx-debug] afterDirective:",$)},beforeRender($){console.log("[stx-debug] beforeRender")},afterRender($){console.log("[stx-debug] afterRender:",$.template.length,"chars")},onError($){console.error("[stx-debug] onError:",$.error.message,"in phase:",$.phase)}}),sz=T4({name:"stx-timing",version:"1.0.0",description:"Measures template processing time",priority:1,beforeProcess($){$.metadata.startTime=performance.now()},afterRender($){let Z=$.metadata.startTime;if(Z){let Y=performance.now()-Z;console.log(`[stx-timing] Processing took ${Y.toFixed(2)}ms`)}}})});var oZ={};e(oZ,{validateConfig:()=>Zq,loadStxConfig:()=>q1,defineStxConfig:()=>$q,defaultConfig:()=>p1,config:()=>M3});import N3 from"fs";import S0 from"path";import{loadConfigWithResult as az}from"bunfig";function tz($,Z){let Y=Z||"pages";if($)return{root:$,pagesDir:Y};let J=S0.join(process.cwd(),"resources","views"),X=S0.join(process.cwd(),"resources","layouts");if(N3.existsSync(J)&&N3.existsSync(X))return{root:"resources",pagesDir:"views"};let Q=S0.join(process.cwd(),"resources","views","pages");if(N3.existsSync(Q))return{root:"resources/views",pagesDir:Y};return{root:".",pagesDir:Y}}function ez($){if(l6($.stateDir),$.stateDir=I5(),$.cachePath=D5($.cachePath),$.build)$.build.cacheDir=D5($.build.cacheDir);if($.media?.cache)$.media.cache.directory=D5($.media.cache.directory);if($.story)$.story.outDir=D5($.story.outDir)}async function q1($){if(!$){if(U5)return U5;if(I4)return I4}let Z=$?S0.resolve($):process.cwd(),Y=nZ.get(Z);if(Y)return Y;let J=(async()=>{let Q=(await az({name:"stx",alias:"ui",cwd:Z,defaultConfig:p1,verbose:!1})).config;ez(Q);let G=tz(Q.root,Q.pagesDir);if(Q.root=G.root,Q.pagesDir=G.pagesDir,Q.root&&Q.root!=="."){let K=Q.root;if(Q.partialsDir&&!S0.isAbsolute(Q.partialsDir))Q.partialsDir=S0.join(K,Q.partialsDir);if(Q.componentsDir&&!S0.isAbsolute(Q.componentsDir))Q.componentsDir=S0.join(K,Q.componentsDir);if(Q.layoutsDir&&!S0.isAbsolute(Q.layoutsDir))Q.layoutsDir=S0.join(K,Q.layoutsDir)}if(Q.plugins&&Q.plugins.length>0){let{pluginManager:K}=await Promise.resolve().then(() => (iZ(),cZ)),z=[],q=[];for(let W of Q.plugins){let U=typeof W==="string"?W:W[0],j=typeof W==="string"?{}:W[1]||{};try{let _,B;try{_=await import(U),B=S0.dirname(U0.resolve(U))}catch{let L=S0.resolve(process.cwd(),U);_=await import(L),B=S0.dirname(L)}let H=_.default||_;if(K.register(H,Q),H.components){let L=S0.resolve(B,H.components);z.push(L)}if(H.pages){let L=S0.resolve(B,H.pages),V=j.path||"/";q.push({dir:L,prefix:V})}if(H.setup){let L={addDirective:(V)=>{Q.customDirectives=Q.customDirectives||[],Q.customDirectives.push(V)},addRoute:(V,O)=>{Q.apiRoutes=Q.apiRoutes||{},Q.apiRoutes[V]=O},addMiddleware:(V)=>{Q.middleware=Q.middleware||[],Q.middleware.push(V)},pluginDir:B,config:Q};await H.setup(j,L)}console.log(`[stx] Plugin loaded: ${H.name||U}`)}catch(_){console.warn(`[stx] Failed to load plugin ${U}:`,_.message)}}Q._pluginComponentDirs=z,Q._pluginPageDirs=q}return Q})();if(nZ.set(Z,J),!$)I4=J,J.then((X)=>{U5=X}).catch(()=>{});return J}function $q($){return $}function Zq($){let Z=[],Y=[];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 J=["auto","manual","sections"];if(!J.includes($.streaming.strategy))Z.push({path:"streaming.strategy",message:`streaming.strategy must be one of: ${J.join(", ")}`,severity:"error"})}}if($.i18n){if($.i18n.format!==void 0){let J=["json","yaml","yml","js"];if(!J.includes($.i18n.format))Z.push({path:"i18n.format",message:`i18n.format must be one of: ${J.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 J=["AA","AAA"];if(!J.includes($.a11y.level))Z.push({path:"a11y.level",message:`a11y.level must be one of: ${J.join(", ")}`,severity:"error"})}}if($.hydration){if($.hydration.mode!==void 0){let J=["progressive","islands"];if(!J.includes($.hydration.mode))Z.push({path:"hydration.mode",message:`hydration.mode must be one of: ${J.join(", ")}`,severity:"error"})}if($.hydration.preload!==void 0){let J=["none","eager","lazy"];if(!J.includes($.hydration.preload))Z.push({path:"hydration.preload",message:`hydration.preload must be one of: ${J.join(", ")}`,severity:"error"})}}if($.customDirectives)if(!Array.isArray($.customDirectives))Z.push({path:"customDirectives",message:"customDirectives must be an array",severity:"error"});else $.customDirectives.forEach((J,X)=>{if(!J.name||typeof J.name!=="string")Z.push({path:`customDirectives[${X}].name`,message:"Custom directive must have a name string",severity:"error"});if(!J.handler||typeof J.handler!=="function")Z.push({path:`customDirectives[${X}].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((J,X)=>{if(!J.name||typeof J.name!=="string")Z.push({path:`middleware[${X}].name`,message:"Middleware must have a name string",severity:"error"});if(!J.handler||typeof J.handler!=="function")Z.push({path:`middleware[${X}].handler`,message:"Middleware must have a handler function",severity:"error"});if(!J.timing||!["before","after"].includes(J.timing))Z.push({path:`middleware[${X}].timing`,message:'Middleware timing must be "before" or "after"',severity:"error"})});if($.debug===!0&&$.cache===!0)Y.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)Y.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 J=["fullscreen","standalone","minimal-ui","browser"];if(!J.includes($.pwa.manifest.display))Z.push({path:"pwa.manifest.display",message:`PWA display must be one of: ${J.join(", ")}`,severity:"error"})}if($.pwa.manifest?.orientation!==void 0){let J=["portrait","landscape","any","portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"];if(!J.includes($.pwa.manifest.orientation))Z.push({path:"pwa.manifest.orientation",message:`PWA orientation must be one of: ${J.join(", ")}`,severity:"error"})}if($.pwa.routes){let J=["cache-first","network-first","stale-while-revalidate","network-only","cache-only"];$.pwa.routes.forEach((X,Q)=>{if(!X.pattern||typeof X.pattern!=="string")Z.push({path:`pwa.routes[${Q}].pattern`,message:"PWA route must have a pattern string",severity:"error"});if(!J.includes(X.strategy))Z.push({path:`pwa.routes[${Q}].strategy`,message:`PWA route strategy must be one of: ${J.join(", ")}`,severity:"error"});if(X.maxAgeSeconds!==void 0&&(typeof X.maxAgeSeconds!=="number"||X.maxAgeSeconds<0))Z.push({path:`pwa.routes[${Q}].maxAgeSeconds`,message:"PWA route maxAgeSeconds must be a non-negative number",severity:"error"});if(X.maxEntries!==void 0&&(typeof X.maxEntries!=="number"||X.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((X)=>typeof X!=="number"||X<16||X>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 J=["any","maskable","monochrome"];if($.pwa.icons.purpose.filter((Q)=>!J.includes(Q)).length>0)Z.push({path:"pwa.icons.purpose",message:`PWA icon purpose must be one of: ${J.join(", ")}`,severity:"error"})}if($.pwa.enabled===!0&&!$.pwa.icons?.src)Y.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)Y.push({path:"pwa.manifest.themeColor",message:"PWA theme color not set, defaulting to black",severity:"warning"})}return{valid:Z.length===0,errors:Z,warnings:Y}}var p1,U5=null,nZ,I4=null,M3;var l1=b(()=>{Z7();Y7();J7();X7();g7();XZ();H3();bZ();A3();E5();lZ();p1={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:a1,cachePath:".stx/cache",cacheVersion:"1.0.0",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:b8,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:pZ,hasEndTag:!1,description:"Include a web component in the template"},n6,o6,mZ,uZ,s6,a6,t6,r6,Y9,Q9,JZ,B3,...kZ],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:"#app-content",linkSelector:"a[href]",viewTransitions:!0,scrollToTop:!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}};nZ=new Map;M3=new Proxy(p1,{get($,Z){if(U5&&Z in U5)return U5[Z];if(!I4)q1().catch((Y)=>{console.warn("[stx] Failed to load config file:",Y?.message||Y)});return $[Z]}})});var eZ={};e(eZ,{resetCssCache:()=>zq,resetCrosswindCache:()=>qq,rebuildCrosswindCSS:()=>Wq,loadCrosswindConfig:()=>k3,loadCrosswind:()=>E3,injectCrosswindCSS:()=>Y$,getCachedCSS:()=>Uq,generateCrosswindCSS:()=>tZ,extractClassNames:()=>aZ,buildCrosswindCSS:()=>rZ});import J0 from"path";import{hasLocalConfig as Yq}from"bunfig/discovery";function D3($){return Bun.hash($).toString(16).padStart(16,"0").slice(0,16)}function T3($,Z){if(W1.has($))W1.delete($);else if(W1.size>=Jq)W1.delete(W1.keys().next().value);W1.set($,Z)}async function Xq($){if(!A1)return null;try{let Z=Bun.file(J0.join(A1,`cw-${D3($)}.css`));if(!await Z.exists())return null;return await Z.text()}catch{return null}}async function Qq($,Z){if(!A1)return;try{if(!fs.existsSync(A1))fs.mkdirSync(A1,{recursive:!0});await Bun.write(J0.join(A1,`cw-${D3($)}.css`),Z)}catch{}}async function sZ($){try{let Z=await import($);if(Z&&Z.CSSGenerator)return{CSSGenerator:Z.CSSGenerator,config:Z.config,build:Z.build,defaultConfig:Z.defaultConfig,extractClasses:Z.extractClasses}}catch{}return null}function Gq(){let $=[],Z=process.cwd();while(Z!==J0.dirname(Z))$.push(J0.join(Z,"node_modules","@cwcss","crosswind","dist","index.js")),$.push(J0.join(Z,"node_modules","@cwcss","crosswind","src","index.ts")),$.push(J0.join(Z,"pantry","@cwcss","crosswind","dist","index.js")),$.push(J0.join(Z,"pantry","@cwcss","crosswind","src","index.ts")),$.push(J0.join(Z,"node_modules","@stacksjs","crosswind","dist","index.js")),$.push(J0.join(Z,"pantry","@stacksjs","crosswind","dist","index.js")),Z=J0.dirname(Z);return $}function Kq(){let $=[],Z=process.env.HOME||process.env.USERPROFILE||"";if(Z){let Y=[J0.join(Z,"Code","Tools","crosswind","packages","crosswind","dist","index.js"),J0.join(Z,"Code","Tools","crosswind","packages","crosswind","src","index.ts"),J0.join(Z,"repos","stacks-org","crosswind","packages","crosswind","dist","index.js"),J0.join(Z,"repos","stacks-org","crosswind","packages","crosswind","src","index.ts"),J0.join(Z,"Code","Tools","stx","packages","stx","node_modules","@cwcss","crosswind","dist","index.js"),J0.join(Z,"Code","Tools","stx","packages","stx","node_modules","@stacksjs","crosswind","dist","index.js")];$.push(...Y)}return $.push(J0.join(process.cwd(),"..","crosswind","packages","crosswind","dist","index.js")),$.push(J0.join(process.cwd(),"..","crosswind","packages","crosswind","src","index.ts")),$}async function E3(){if(I3)return J1;I3=!0;try{let $=async(X)=>{for(let Q of X){if(!await Bun.file(Q).exists())continue;let G=await sZ(Q);if(G){if(!process.env.STACKS_DEV_QUIET)console.log(`${O0.green}[Crosswind]${O0.reset} CSS engine loaded from ${J0.dirname(J0.dirname(Q))}`);return G}}return null};if(process.env.CROSSWIND_SRC){let X=J0.resolve(process.env.CROSSWIND_SRC),Q=await $([X]);if(!Q)throw Error(`CROSSWIND_SRC did not resolve to a Crosswind module: ${X}`);return J1=Q,J1}let Z=await $(Gq());if(Z)return J1=Z,J1;let Y=["@cwcss/crosswind","@cwcss/crosswind/dist/index.js","@stacksjs/crosswind","@stacksjs/crosswind/dist/index.js"];for(let X of Y){let Q=await sZ(X);if(Q){if(J1=Q,!process.env.STACKS_DEV_QUIET)console.log(`${O0.green}[Crosswind]${O0.reset} CSS engine loaded`);return J1}}let J=await $(Kq());if(J)return J1=J,J1;throw Error("Crosswind CSSGenerator not found in any location")}catch{return console.warn(`${O0.yellow}[Crosswind] CSS engine not available, Tailwind styles will not be generated${O0.reset}`),console.warn(`${O0.yellow}Run 'bun add @stacksjs/crosswind' to enable CSS generation${O0.reset}`),null}}function zq(){W1.clear()}function qq(){J1=null,I3=!1,t0=null,Z$="",W1.clear(),D4=null}async function k3($){try{if(!Yq({name:"crosswind",cwd:$}))return null;let{loadConfigWithResult:Z}=await import("bunfig"),Y=await Z({name:"crosswind",cwd:$,defaultConfig:{},checkEnv:!1,verbose:!1});if(!Y?.path||!Y.config||Object.keys(Y.config).length===0)return null;let J=J0.relative($,Y.path);if(!process.env.STACKS_DEV_QUIET)console.log(`${O0.green}[Crosswind]${O0.reset} Loaded config from ${J||Y.path}`);return Y.config}catch(Z){if(Z instanceof Error&&Z.name==="ConfigNotFoundError")return null;return console.warn(`${O0.yellow}[Crosswind]${O0.reset} Failed to load crosswind config:`,Z instanceof Error?Z.message:Z),null}}async function rZ($){if(j5)return Z$;j5=!0;try{let Z=await E3();if(!Z||!Z.build)return j5=!1,"";if(!t0)t0=await k3($);if(!t0)return j5=!1,"";let Y=Z.defaultConfig?.theme||{},J=t0.theme||{},X={...Z.defaultConfig,...t0,theme:{...Y,...J,extend:{...Y.extend||{},...J.extend||{}}}},Q=performance.now(),G=await Z.build(X),K=performance.now()-Q;if(Z$=G.css,console.log(`${O0.cyan}[Crosswind]${O0.reset} Built ${G.classes.size} classes in ${K.toFixed(1)}ms`),X.output){let z=J0.isAbsolute(X.output)?X.output:J0.join($,X.output),q=J0.dirname(z);if(!fs.existsSync(q))fs.mkdirSync(q,{recursive:!0});await Bun.write(z,G.css)}return j5=!1,G.css}catch(Z){return console.error(`${O0.red}[Crosswind]${O0.reset} Build error:`,Z),j5=!1,Z$}}async function Wq($){t0=null,await rZ($)}function Uq(){return Z$}function aZ($){let Z=new Set,Y=/class\s*=\s*["']([^"']+)["']/gi,J=Y.exec($);while(J!==null){for(let G of J[1].split(/\s+/))if(G.trim())Z.add(G.trim());J=Y.exec($)}let X=/(?:x-class|:class)\s*=\s*"([^"]+)"/gi,Q=X.exec($);while(Q!==null){let G=Q[1].match(/'([^']+)'/g);if(G){for(let K of G)for(let z of K.slice(1,-1).split(/\s+/))if(z.trim())Z.add(z.trim())}Q=X.exec($)}return Z}async function tZ($,Z){try{let Y=await E3();if(!Y)return"";let J=typeof Y.extractClasses==="function"?Y.extractClasses($):aZ($);if(J.size===0)return"";let X=Z?J0.resolve(Z):process.cwd();if(!A1)A1=_1(X,"cache");let Q=[...J].sort().join(" "),G=`${D4||"default"}::${Q}`,K=W1.get(G);if(K!==void 0)return T3(G,K),K;let z=await Xq(G);if(z!==null)return T3(G,z),z;if(!t0){let A=null;try{let{loadStxConfig:R}=await Promise.resolve().then(() => (l1(),oZ)),N=await R(X);if(N.css)if(typeof N.css==="string"){let M=J0.isAbsolute(N.css)?N.css:J0.resolve(X,N.css);if(await Bun.file(M).exists()){let T=await import(M);A=T.default||T,console.log(`${O0.green}[Crosswind]${O0.reset} Loaded config from stx.config.ts \u2192 ${N.css}`)}}else{if(A={...N.css,content:N.css.content||[],preflight:N.css.preflight??!0,minify:N.css.minify??!1},N.css.config){let M=J0.isAbsolute(N.css.config)?N.css.config:J0.resolve(X,N.css.config);if(await Bun.file(M).exists()){let T=await import(M);A={...T.default||T,...A}}}console.log(`${O0.green}[Crosswind]${O0.reset} Using inline CSS config from stx.config.ts`)}}catch{}t0=A||await k3(X);try{D4=D3(JSON.stringify(t0??{}))}catch{D4="unhashable"}}let q=Y.defaultConfig||Y.config,W=t0||{},U=q.theme||{},_=(W.theme||{}).extend||{},B={...U};if(Object.keys(_).length>0)B.extend=_;let H=[...q.safelist||[],...W.safelist||[]],L={...q,...W,content:[],output:"",preflight:!0,minify:!1,theme:B,safelist:H},V=new Y.CSSGenerator(L);for(let A of H)V.generate(A);for(let A of J)V.generate(A);let O=V.toCSS(!0,!1),F=L.shortcuts||W.shortcuts||{};for(let[A,R]of Object.entries(F)){if(!J.has(A)&&!H.includes(A))continue;let N=R.split(/\s+/).filter(Boolean);for(let M of N)V.generate(M)}O=V.toCSS(!0,!1);let w=O.split(`
8212
8230
  `);for(let[A,R]of Object.entries(F)){if(!J.has(A)&&!H.includes(A))continue;let N=R.split(/\s+/).filter(Boolean),M=[],T=[];for(let I of N){let E=I.startsWith("dark:"),S=`.${(E?I.slice(5):I).replace(/\//g,"\\/").replace(/:/g,"\\:").replace(/\./g,"\\.").replace(/\[/g,"\\[").replace(/\]/g,"\\]").replace(/%/g,"\\%")}`;for(let k=0;k<w.length;k++){let C=w[k].trim();if(C===`${S} {`||C.startsWith(`${S} {`)){let x=k,f="";while(x<w.length){if(f+=w[x],w[x].includes("}"))break;x++}let d=f.match(/\{([^}]+)\}/);if(d)if(E)T.push(d[1].trim());else M.push(d[1].trim());break}}}if(M.length)O+=`
8213
8231
  .${A} { ${M.join(" ")} }`;if(T.length)O+=`
8214
8232
  @media (prefers-color-scheme: dark) { .dark .${A} { ${T.join(" ")} } }`}return T3(G,O),Qq(G,O),O}catch(Y){return console.warn("Failed to generate Crosswind CSS:",Y),""}}async function Y$($,Z){let Y=await tZ($,Z);if(!Y)return $;let J=`<style data-crosswind="generated">
@@ -8560,7 +8578,7 @@ else {
8560
8578
 
8561
8579
  console.log('[stx] Lifecycle runtime initialized');
8562
8580
  })();
8563
- `}function b3($){return Symbol($)}var RF,NF,MF;var Z2=b(()=>{RF=b3("theme"),NF=b3("router"),MF=b3("i18n")});import*as J2 from"crypto";function Y2($){let Z=/\$(\w+)\./g,Y=[],J;while((J=Z.exec($))!==null)if(!Y.includes(J[1]))Y.push(J[1]);return Y}function jq(){return`stx-${J2.randomBytes(4).toString("hex")}`}function Bq($){return/\$\w+\./.test($)}function _q($){let Z=[],Y=new Set,J=/<(\w+)([^>]*?)(\s*\/?>)/g,X=$;return X=X.replace(J,(Q,G,K,z)=>{if(["script","style","template"].includes(G.toLowerCase()))return Q;let q=[],W=!1,U=K,j=/(\w+(?:-\w+)*)\s*=\s*"([^"]*\{\{[^}]*\$\w+[^}]*\}\}[^"]*)"/g,B=[...K.matchAll(j)];for(let L of B){let V=L[0],O=L[1],F=L[2];if(Bq(F)){W=!0;let w=F.match(/\{\{\s*([\s\S]+?)\s*\}\}/);if(w){let A=w[1];if(q.push({attr:O,expr:A,fullMatch:V,originalAttr:O}),Y2(A).forEach((N)=>Y.add(N)),O==="text")U=U.replace(V,"");else if(O==="class")U=U.replace(V,'class=""');else if(O==="disabled"||O==="hidden")U=U.replace(V,"");else U=U.replace(V,`${O}=""`)}}}if(!W)return Q;let _=U.match(/\bid\s*=\s*"([^"]+)"/),H;if(_)H=_[1];else H=jq(),U=` id="${H}"${U}`;for(let L of q)Z.push({elementId:H,attribute:L.attr,expression:L.expr,stores:Y2(L.expr)});return`<${G}${U}${z}`}),{html:X,bindings:Z,stores:Y}}function Hq($,Z){if($.length===0)return"";let Y=Array.from(Z),J=`
8581
+ `}function b3($){return Symbol($)}var RF,NF,MF;var Z2=b(()=>{RF=b3("theme"),NF=b3("router"),MF=b3("i18n")});import*as J2 from"crypto";function Y2($){let Z=/\$(\w+)\./g,Y=[],J;while((J=Z.exec($))!==null)if(!Y.includes(J[1]))Y.push(J[1]);return Y}function jq(){return`stx-${J2.randomBytes(4).toString("hex")}`}function _q($){return/\$\w+\./.test($)}function Bq($){let Z=[],Y=new Set,J=/<(\w+)([^>]*?)(\s*\/?>)/g,X=$;return X=X.replace(J,(Q,G,K,z)=>{if(["script","style","template"].includes(G.toLowerCase()))return Q;let q=[],W=!1,U=K,j=/(\w+(?:-\w+)*)\s*=\s*"([^"]*\{\{[^}]*\$\w+[^}]*\}\}[^"]*)"/g,_=[...K.matchAll(j)];for(let L of _){let V=L[0],O=L[1],F=L[2];if(_q(F)){W=!0;let w=F.match(/\{\{\s*([\s\S]+?)\s*\}\}/);if(w){let A=w[1];if(q.push({attr:O,expr:A,fullMatch:V,originalAttr:O}),Y2(A).forEach((N)=>Y.add(N)),O==="text")U=U.replace(V,"");else if(O==="class")U=U.replace(V,'class=""');else if(O==="disabled"||O==="hidden")U=U.replace(V,"");else U=U.replace(V,`${O}=""`)}}}if(!W)return Q;let B=U.match(/\bid\s*=\s*"([^"]+)"/),H;if(B)H=B[1];else H=jq(),U=` id="${H}"${U}`;for(let L of q)Z.push({elementId:H,attribute:L.attr,expression:L.expr,stores:Y2(L.expr)});return`<${G}${U}${z}`}),{html:X,bindings:Z,stores:Y}}function Hq($,Z){if($.length===0)return"";let Y=Array.from(Z),J=`
8564
8582
  <script>
8565
8583
  (function() {
8566
8584
  'use strict';
@@ -8718,7 +8736,7 @@ else {
8718
8736
  }
8719
8737
  })();
8720
8738
  </script>
8721
- `,J}function X2($){let{html:Z,bindings:Y,stores:J}=_q($);if(Y.length===0)return $;let X=Hq(Y,J),Q=Z.lastIndexOf("</body>");if(Q!==-1)return Z.slice(0,Q)+X+Z.slice(Q);return Z+X}var Q2=()=>{};function Oq($){let Z=$.analytics;if(!Z?.enabled)return"";switch(Z.driver){case"fathom":return Lq(Z);case"google-analytics":return Fq(Z);case"plausible":return Vq(Z);case"self-hosted":return wq(Z);case"custom":return Aq(Z);default:return""}}function Lq($){let Z=$.fathom;if(!Z?.siteId)return"";let Y=Z.scriptUrl||"https://cdn.usefathom.com/script.js",J=Z.defer!==!1?" defer":"",X=[`data-site="${h0(Z.siteId)}"`];if(Z.honorDnt)X.push('data-honor-dnt="true"');if(Z.spa)X.push('data-spa="auto"');if(Z.canonical)X.push(`data-canonical="${h0(Z.canonical)}"`);if(Z.auto===!1)X.push('data-auto="false"');return`
8739
+ `,J}function X2($){let{html:Z,bindings:Y,stores:J}=Bq($);if(Y.length===0)return $;let X=Hq(Y,J),Q=Z.lastIndexOf("</body>");if(Q!==-1)return Z.slice(0,Q)+X+Z.slice(Q);return Z+X}var Q2=()=>{};function Oq($){let Z=$.analytics;if(!Z?.enabled)return"";switch(Z.driver){case"fathom":return Lq(Z);case"google-analytics":return Fq(Z);case"plausible":return Vq(Z);case"self-hosted":return wq(Z);case"custom":return Aq(Z);default:return""}}function Lq($){let Z=$.fathom;if(!Z?.siteId)return"";let Y=Z.scriptUrl||"https://cdn.usefathom.com/script.js",J=Z.defer!==!1?" defer":"",X=[`data-site="${h0(Z.siteId)}"`];if(Z.honorDnt)X.push('data-honor-dnt="true"');if(Z.spa)X.push('data-spa="auto"');if(Z.canonical)X.push(`data-canonical="${h0(Z.canonical)}"`);if(Z.auto===!1)X.push('data-auto="false"');return`
8722
8740
  <!-- Fathom Analytics -->
8723
8741
  <script src="${h0(Y)}" ${X.join(" ")}${J}></script>
8724
8742
  `}function Fq($){let Z=$.googleAnalytics;if(!Z?.measurementId)return"";let Y=h0(Z.measurementId),J=Z.debug?`gtag('config', '${Y}', { 'debug_mode': true });`:"";return`
@@ -8775,7 +8793,7 @@ ${Z.inlineScript}
8775
8793
  `;if(!Z.scriptUrl)return"";let Y=[];if(Z.scriptId)Y.push(`id="${h0(Z.scriptId)}"`);if(Z.attributes)for(let[X,Q]of Object.entries(Z.attributes))Y.push(`${h0(X)}="${h0(Q)}"`);return`
8776
8794
  <!-- Custom Analytics -->
8777
8795
  <script${Y.length>0?` ${Y.join(" ")}`:""} src="${h0(Z.scriptUrl)}" defer></script>
8778
- `}function G2($,Z){let Y=Oq(Z);if(!Y)return $;if(!$.includes("</head>")){let J=$.lastIndexOf("</body>");if(J!==-1)return $.slice(0,J)+Y+$.slice(J);return $+Y}return $.replace("</head>",`${Y}</head>`)}function h0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}var K2=()=>{};function W2($){let Z={prevent:!1,stop:!1,once:!1,capture:!1,self:!1,passive:!1,keys:[],systemKeys:[],mouse:null,debounce:null,throttle:null};for(let Y of $){let J=Y.toLowerCase();if(J==="prevent")Z.prevent=!0;else if(J==="stop")Z.stop=!0;else if(J==="once")Z.once=!0;else if(J==="capture")Z.capture=!0;else if(J==="self")Z.self=!0;else if(J==="passive")Z.passive=!0;else if(Rq.has(J))Z.systemKeys.push(J);else if(J in U2)Z.mouse=J;else if(J in q2||/^[a-z]$/.test(J))Z.keys.push(q2[J]||J.toUpperCase());else if(J.startsWith("debounce")){let X=J.match(/debounce(?:\.(\d+))?/);Z.debounce=X?.[1]?Number.parseInt(X[1],10):300}else if(J.startsWith("throttle")){let X=J.match(/throttle(?:\.(\d+))?/);Z.throttle=X?.[1]?Number.parseInt(X[1],10):300}}return Z}function j2($){let Z=[],Y=0,J=/<([a-z][a-z0-9-]*)\s+([^>]*@[a-z][^>]*)>/gi,X;while((X=J.exec($))!==null){let[Q,G,K]=X,z=X.index,q=z+Q.length,W=`__stx_evt_${Y++}`,U=[],j=/@([a-z][a-z0-9.]*)\s*=\s*"([^"]*)"/gi,B;while((B=j.exec(K))!==null){let[,H,L]=B,V=H.split("."),O=V[0];if(!z2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:W2(V.slice(1)),elementId:W})}let _=/@([a-z][a-z0-9.]*)\s*=\s*'([^']*)'/gi;while((B=_.exec(K))!==null){let[,H,L]=B,V=H.split("."),O=V[0];if(!z2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:W2(V.slice(1)),elementId:W})}if(U.length>0)Z.push({originalTag:Q,elementId:W,events:U,startIndex:z,endIndex:q})}return Z}function Nq($){let Z=[],{modifiers:Y}=$;if(Y.self)Z.push("if ($event.target !== $el) return");for(let J of Y.systemKeys)Z.push(`if (!$event.${J}Key) return`);if(Y.keys.length>0){let J=Y.keys.map((X)=>`$event.key === '${X}'`).join(" || ");Z.push(`if (!(${J})) return`)}if(Y.mouse!==null){let J=U2[Y.mouse];Z.push(`if ($event.button !== ${J}) return`)}if(Y.prevent)Z.push("$event.preventDefault()");if(Y.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function Mq($,Z){let Y=$;if(Z.debounce!==null)Y=`__stx_debounce(() => { ${Y} }, ${Z.debounce})`;else if(Z.throttle!==null)Y=`__stx_throttle(() => { ${Y} }, ${Z.throttle})`;return Y}function Tq($){let{modifiers:Z}=$,Y=$.elementId.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),J=Nq($),X=Mq($.handler,Z),Q=[];if(Z.once)Q.push("once: true");if(Z.capture)Q.push("capture: true");if(Z.passive)Q.push("passive: true");let G=Q.length>0?`, { ${Q.join(", ")} }`:"",K=X.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t");if($.event==="mounted")return`
8796
+ `}function G2($,Z){let Y=Oq(Z);if(!Y)return $;if(!$.includes("</head>")){let J=$.lastIndexOf("</body>");if(J!==-1)return $.slice(0,J)+Y+$.slice(J);return $+Y}return $.replace("</head>",`${Y}</head>`)}function h0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}var K2=()=>{};function W2($){let Z={prevent:!1,stop:!1,once:!1,capture:!1,self:!1,passive:!1,keys:[],systemKeys:[],mouse:null,debounce:null,throttle:null};for(let Y of $){let J=Y.toLowerCase();if(J==="prevent")Z.prevent=!0;else if(J==="stop")Z.stop=!0;else if(J==="once")Z.once=!0;else if(J==="capture")Z.capture=!0;else if(J==="self")Z.self=!0;else if(J==="passive")Z.passive=!0;else if(Rq.has(J))Z.systemKeys.push(J);else if(J in U2)Z.mouse=J;else if(J in q2||/^[a-z]$/.test(J))Z.keys.push(q2[J]||J.toUpperCase());else if(J.startsWith("debounce")){let X=J.match(/debounce(?:\.(\d+))?/);Z.debounce=X?.[1]?Number.parseInt(X[1],10):300}else if(J.startsWith("throttle")){let X=J.match(/throttle(?:\.(\d+))?/);Z.throttle=X?.[1]?Number.parseInt(X[1],10):300}}return Z}function j2($){let Z=[],Y=0,J=/<([a-z][a-z0-9-]*)\s+([^>]*@[a-z][^>]*)>/gi,X;while((X=J.exec($))!==null){let[Q,G,K]=X,z=X.index,q=z+Q.length,W=`__stx_evt_${Y++}`,U=[],j=/@([a-z][a-z0-9.]*)\s*=\s*"([^"]*)"/gi,_;while((_=j.exec(K))!==null){let[,H,L]=_,V=H.split("."),O=V[0];if(!z2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:W2(V.slice(1)),elementId:W})}let B=/@([a-z][a-z0-9.]*)\s*=\s*'([^']*)'/gi;while((_=B.exec(K))!==null){let[,H,L]=_,V=H.split("."),O=V[0];if(!z2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:W2(V.slice(1)),elementId:W})}if(U.length>0)Z.push({originalTag:Q,elementId:W,events:U,startIndex:z,endIndex:q})}return Z}function Nq($){let Z=[],{modifiers:Y}=$;if(Y.self)Z.push("if ($event.target !== $el) return");for(let J of Y.systemKeys)Z.push(`if (!$event.${J}Key) return`);if(Y.keys.length>0){let J=Y.keys.map((X)=>`$event.key === '${X}'`).join(" || ");Z.push(`if (!(${J})) return`)}if(Y.mouse!==null){let J=U2[Y.mouse];Z.push(`if ($event.button !== ${J}) return`)}if(Y.prevent)Z.push("$event.preventDefault()");if(Y.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function Mq($,Z){let Y=$;if(Z.debounce!==null)Y=`__stx_debounce(() => { ${Y} }, ${Z.debounce})`;else if(Z.throttle!==null)Y=`__stx_throttle(() => { ${Y} }, ${Z.throttle})`;return Y}function Tq($){let{modifiers:Z}=$,Y=$.elementId.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),J=Nq($),X=Mq($.handler,Z),Q=[];if(Z.once)Q.push("once: true");if(Z.capture)Q.push("capture: true");if(Z.passive)Q.push("passive: true");let G=Q.length>0?`, { ${Q.join(", ")} }`:"",K=X.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t");if($.event==="mounted")return`
8779
8797
  (function() {
8780
8798
  var $el = document.getElementById('${Y}');
8781
8799
  if (!$el) return;
@@ -8880,8 +8898,8 @@ else {
8880
8898
  ${$.flatMap((Y)=>Y.events).map(Tq).join(`
8881
8899
  `)}
8882
8900
  })();
8883
- </script>`}function Dq($){let Z=j2($);if(Z.length===0)return{template:$,bindings:[]};let Y=$,J=[];for(let X=Z.length-1;X>=0;X--){let Q=Z[X],G=Q.originalTag;if(!G.includes(" id="))G=G.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${Q.elementId}"`);else{let K=G.match(/id=["']([^"']+)["']/);if(K)for(let z of Q.events)z.elementId=K[1]}for(let K of Q.events){let z=K.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),q=new RegExp(`\\s*${z}\\s*=\\s*"[^"]*"`,"g"),W=new RegExp(`\\s*${z}\\s*=\\s*'[^']*'`,"g");G=G.replace(q,""),G=G.replace(W,"")}Y=Y.slice(0,Q.startIndex)+G+Y.slice(Q.endIndex),J.push(...Q.events)}return{template:Y,bindings:J}}function B2($,Z,Y){if(/\b(?:state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)||/@(?:model|show|for|if)\s*=/.test($)||/data-stx(?:-auto)?(?![-\w])/.test($))return $;if(Z.__stx_sfc_mode){if(/x-data\s*=\s*["']/.test($))return $;let{template:z,bindings:q}=Dq($),W=Z.__stx_event_bindings||[];return Z.__stx_event_bindings=[...W,...q],z}let X=j2($);if(X.length===0)return $;let Q=$;for(let z=X.length-1;z>=0;z--){let q=X[z],W=q.originalTag;if(!W.includes(" id="))W=W.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${q.elementId}"`);else{let U=W.match(/id=["']([^"']+)["']/);if(U)for(let j of q.events)j.elementId=U[1]}for(let U of q.events){let j=U.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),B=new RegExp(`\\s*${j}\\s*=\\s*"[^"]*"`,"g"),_=new RegExp(`\\s*${j}\\s*=\\s*'[^']*'`,"g");W=W.replace(B,""),W=W.replace(_,"")}Q=Q.slice(0,q.startIndex)+W+Q.slice(q.endIndex)}let G=Iq(X),K=Q.lastIndexOf("</body>");if(K!==-1)Q=Q.slice(0,K)+G+`
8884
- `+Q.slice(K);else Q+=G;return Q}var z2,q2,Rq,U2;var _2=b(()=>{z2=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"]),q2={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"},Rq=new Set(["ctrl","alt","shift","meta"]),U2={left:0,middle:1,right:2}});function k4($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function H2($,Z){let Y=$.match(new RegExp(`${Z}\\s*=\\s*"([^"]*)"`,"i"));if(Y)return Y[1];let J=$.match(new RegExp(`${Z}\\s*=\\s*'([^']*)'`,"i"));if(J)return J[1];return null}function kq($){let Z=[],Y=/<([a-z][a-z0-9-]*)\s+([^>]*x-data\s*=\s*(?:"[^"]*"|'[^']*')[^>]*)>/gi,J;while((J=Y.exec($))!==null){let[X,Q,G]=J,K=J.index,z=H2(G,"x-data");if(!z)continue;let q=`__stx_scope_${L2++}`,W=H2(G,"x-init"),U=bq($,Q,K+X.length),j=$.slice(K,U.endIndex),B=Sq(j);Z.push({id:q,selector:`[data-stx-scope="${q}"]`,stateExpr:z,initExpr:W,bindings:[],refs:B})}return Z}function bq($,Z,Y){let J=1,X=Y,Q=new RegExp(`<${Z}(?:\\s|>)`,"gi"),G=new RegExp(`</${Z}>`,"gi"),K=new RegExp(`<${Z}[^>]*/\\s*>`,"gi");while(J>0&&X<$.length){Q.lastIndex=X,G.lastIndex=X,K.lastIndex=X;let z=Q.exec($),q=G.exec($),W=K.exec($);if(W&&W.index<(z?.index??1/0)){X=W.index+W[0].length;continue}if(!q)return{endIndex:$.length};if(z&&z.index<q.index)J++,X=z.index+z[0].length;else{if(J--,J===0)return{endIndex:q.index+q[0].length};X=q.index+q[0].length}}return{endIndex:$.length}}function Sq($){let Z=new Map,Y=$.replace(/x-data\s*=\s*"[^"]*"/gi,'x-data="__stripped__"').replace(/x-data\s*=\s*'[^']*'/gi,"x-data='__stripped__'"),J=/<[a-z][a-z0-9-]*\s+([^>]*x-ref\s*=\s*["']([^"']*)["'][^>]*)>/gi,X;while((X=J.exec(Y))!==null){let[,Q,G]=X,K=yq(Q);Z.set(G,K)}return Z}function yq($){let Z=$.match(/\bid\s*=\s*["']([^"']*)["']/);if(Z)return Z[1];return`__stx_el_${Eq++}`}function Pq(){return`
8901
+ </script>`}function Dq($){let Z=j2($);if(Z.length===0)return{template:$,bindings:[]};let Y=$,J=[];for(let X=Z.length-1;X>=0;X--){let Q=Z[X],G=Q.originalTag;if(!G.includes(" id="))G=G.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${Q.elementId}"`);else{let K=G.match(/id=["']([^"']+)["']/);if(K)for(let z of Q.events)z.elementId=K[1]}for(let K of Q.events){let z=K.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),q=new RegExp(`\\s*${z}\\s*=\\s*"[^"]*"`,"g"),W=new RegExp(`\\s*${z}\\s*=\\s*'[^']*'`,"g");G=G.replace(q,""),G=G.replace(W,"")}Y=Y.slice(0,Q.startIndex)+G+Y.slice(Q.endIndex),J.push(...Q.events)}return{template:Y,bindings:J}}function _2($,Z,Y){if(/\b(?:state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)||/@(?:model|show|for|if)\s*=/.test($)||/data-stx(?:-auto)?(?![-\w])/.test($))return $;if(Z.__stx_sfc_mode){if(/x-data\s*=\s*["']/.test($))return $;let{template:z,bindings:q}=Dq($),W=Z.__stx_event_bindings||[];return Z.__stx_event_bindings=[...W,...q],z}let X=j2($);if(X.length===0)return $;let Q=$;for(let z=X.length-1;z>=0;z--){let q=X[z],W=q.originalTag;if(!W.includes(" id="))W=W.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${q.elementId}"`);else{let U=W.match(/id=["']([^"']+)["']/);if(U)for(let j of q.events)j.elementId=U[1]}for(let U of q.events){let j=U.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),_=new RegExp(`\\s*${j}\\s*=\\s*"[^"]*"`,"g"),B=new RegExp(`\\s*${j}\\s*=\\s*'[^']*'`,"g");W=W.replace(_,""),W=W.replace(B,"")}Q=Q.slice(0,q.startIndex)+W+Q.slice(q.endIndex)}let G=Iq(X),K=Q.lastIndexOf("</body>");if(K!==-1)Q=Q.slice(0,K)+G+`
8902
+ `+Q.slice(K);else Q+=G;return Q}var z2,q2,Rq,U2;var B2=b(()=>{z2=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"]),q2={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"},Rq=new Set(["ctrl","alt","shift","meta"]),U2={left:0,middle:1,right:2}});function k4($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function H2($,Z){let Y=$.match(new RegExp(`${Z}\\s*=\\s*"([^"]*)"`,"i"));if(Y)return Y[1];let J=$.match(new RegExp(`${Z}\\s*=\\s*'([^']*)'`,"i"));if(J)return J[1];return null}function kq($){let Z=[],Y=/<([a-z][a-z0-9-]*)\s+([^>]*x-data\s*=\s*(?:"[^"]*"|'[^']*')[^>]*)>/gi,J;while((J=Y.exec($))!==null){let[X,Q,G]=J,K=J.index,z=H2(G,"x-data");if(!z)continue;let q=`__stx_scope_${L2++}`,W=H2(G,"x-init"),U=bq($,Q,K+X.length),j=$.slice(K,U.endIndex),_=Sq(j);Z.push({id:q,selector:`[data-stx-scope="${q}"]`,stateExpr:z,initExpr:W,bindings:[],refs:_})}return Z}function bq($,Z,Y){let J=1,X=Y,Q=new RegExp(`<${Z}(?:\\s|>)`,"gi"),G=new RegExp(`</${Z}>`,"gi"),K=new RegExp(`<${Z}[^>]*/\\s*>`,"gi");while(J>0&&X<$.length){Q.lastIndex=X,G.lastIndex=X,K.lastIndex=X;let z=Q.exec($),q=G.exec($),W=K.exec($);if(W&&W.index<(z?.index??1/0)){X=W.index+W[0].length;continue}if(!q)return{endIndex:$.length};if(z&&z.index<q.index)J++,X=z.index+z[0].length;else{if(J--,J===0)return{endIndex:q.index+q[0].length};X=q.index+q[0].length}}return{endIndex:$.length}}function Sq($){let Z=new Map,Y=$.replace(/x-data\s*=\s*"[^"]*"/gi,'x-data="__stripped__"').replace(/x-data\s*=\s*'[^']*'/gi,"x-data='__stripped__'"),J=/<[a-z][a-z0-9-]*\s+([^>]*x-ref\s*=\s*["']([^"']*)["'][^>]*)>/gi,X;while((X=J.exec(Y))!==null){let[,Q,G]=X,K=yq(Q);Z.set(G,K)}return Z}function yq($){let Z=$.match(/\bid\s*=\s*["']([^"']*)["']/);if(Z)return Z[1];return`__stx_el_${Eq++}`}function Pq(){return`
8885
8903
  // STX Reactive Runtime - x-cloak and transition CSS
8886
8904
  (function() {
8887
8905
  var style = document.createElement('style');
@@ -9100,13 +9118,13 @@ window.__stx_reactive = (function() {
9100
9118
  ${Pq()}
9101
9119
  ${Y}
9102
9120
  </script>`}function F2($,Z,Y){if(L2=0,!xq($))return $;let J=kq($);if(J.length===0)return $;let X=vq($,J),Q=Cq(J,Z),G=X.lastIndexOf("</body>");if(G!==-1)X=X.slice(0,G)+Q+`
9103
- `+X.slice(G);else X+=Q;return X}function vq($,Z){let Y=$;for(let J of Z){let Q=new RegExp(`<[a-z][a-z0-9-]*\\s+[^>]*data-stx-scope="([^"]*)"[^>]*x-data\\s*=\\s*["']${k4(J.stateExpr)}["']`,"gi").exec(Y);if(Q)J.id=Q[1],J.selector=`[data-stx-scope="${J.id}"]`;else{let K=new RegExp(`<[a-z][a-z0-9-]*\\s+[^>]*x-data\\s*=\\s*["']${k4(J.stateExpr)}["'][^>]*data-stx-scope="([^"]*)"`,"gi").exec(Y);if(K)J.id=K[1],J.selector=`[data-stx-scope="${J.id}"]`;else Y=Y.replace(new RegExp(`(<[a-z][a-z0-9-]*\\s+)([^>]*)(x-data\\s*=\\s*"${k4(J.stateExpr)}")([^>]*>)`,"gi"),`$1data-stx-scope="${J.id}" $2$3$4`),Y=Y.replace(new RegExp(`(<[a-z][a-z0-9-]*\\s+)([^>]*)(x-data\\s*=\\s*'${k4(J.stateExpr)}')([^>]*>)`,"gi"),`$1data-stx-scope="${J.id}" $2$3$4`)}}return Y=Y.replace(/\s*x-data\s*=\s*"([^"]*)"/g,' data-stx-xdata="$1"'),Y=Y.replace(/\s*x-data\s*=\s*'([^']*)'/g," data-stx-xdata='$1'"),Y=Y.replace(/\s*x-init\s*=\s*"[^"]*"/g,""),Y=Y.replace(/\s*x-init\s*=\s*'[^']*'/g,""),Y}function xq($){return/x-data\s*=\s*["']/.test($)}var L2=0,Eq=0;var V2=b(()=>{Y1()});import fq from"fs";import S3 from"path";import{createHighlighter as gq}from"ts-syntax-highlighter";async function hq($,Z={}){try{if(!await o($))throw Error(`Markdown file not found: ${$}`);let J=(await fq.promises.stat($)).mtime.getTime();if(Z.cache&&y3.has($)){let U=y3.get($);if(U.updatedAt>=J)return{content:U.content,data:U.data}}let X=await Bun.file($).text(),{data:Q,content:G}=K9(X),K=Z.markdown||M3.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},q=k5(G,{gfm:!0});if(K.syntaxHighlighting?.enabled&&K.syntaxHighlighting?.serverSide)q=await dq(q,K.syntaxHighlighting?.defaultTheme||"github-dark",K.syntaxHighlighting?.highlightUnknownLanguages||!1);let W={content:q,data:Q||{}};if(Z.cache)y3.set($,{...W,updatedAt:J});return W}catch(Y){if(Z.debug)console.error(`Error reading/parsing markdown file ${$}:`,Y);let J=Y instanceof Error?Y.message:String(Y);return{content:q0("Markdown File",`Error reading/parsing markdown file: ${J}`,$,"",0,""),data:{}}}}async function dq($,Z,Y){let J=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!b4)try{b4=await gq({theme:Z||"github-dark",cache:!0})}catch(K){return console.error("Failed to initialize ts-syntax-highlighter:",K),$}let X=async(K,z,q,W)=>{let U=W.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&").replace(/&quot;/g,'"').replace(/&#39;/g,"'"),j=q||(Y?"text":"");if(!j)return K;try{if(!b4.getSupportedLanguages().includes(j))return K;return(await b4.highlight(U,j,{theme:Z})).html}catch(B){console.error(`Error highlighting code block with language ${q}:`,B)}return K},Q=$,G=$.matchAll(J);for(let K of G){let[z,q,W,U]=K,j=await X(z,q,W,U);Q=Q.replace(z,j)}return Q}async function w2($,Z,Y="",J={}){return await uq($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,K,z,q)=>{try{let W=K;if(!S3.isAbsolute(K))W=S3.resolve(S3.dirname(Y),K);let U={};if(z)try{try{U=JSON.parse(z)}catch{if(J.debug)console.warn("Using safer alternative for parsing JS object literal");let O=z.replace(/^\s*\{|\}\s*$/g,"").trim().split(/,(?=\s*\w+\s*:)/);for(let F of O){let w=F.indexOf(":");if(w>0){let A=F.substring(0,w).trim(),R=F.substring(w+1).trim(),N=R.startsWith('"')&&R.endsWith('"'),M=R.startsWith("'")&&R.endsWith("'");if(N||M)R=R.substring(1,R.length-1);U[A]=R}}}}catch(V){if(J.debug)console.error("Error parsing context in @markdown-file directive:",V)}let{content:j,data:B}=await hq(W,J),_={...Z,...B,...U},H=j,L=/\{\{([^}]+)\}\}/g;return H=H.replace(L,(V,O)=>{let F=O.trim();return _[F]!==void 0?String(_[F]):V}),H}catch(W){let U=W instanceof Error?W.message:String(W);return q0("Markdown File",`Error including markdown file: ${U}`,Y,$,q,G)}})}async function uq($,Z,Y){let J=[],X;while((X=Z.exec($))!==null){let K=X[0],z=X.index,q=X;J.push(Y(...q).then((W)=>({match:K,replacement:W,index:z})))}let Q=await Promise.all(J);Q.sort((K,z)=>z.index-K.index);let G=$;for(let{match:K,replacement:z}of Q)G=G.replace(K,()=>z);return G}var y3,b4=null;var A2=b(()=>{l1();N0();y3=new Map});function R1($,Z){try{let Y=$.trim();if(G0(Y))return K0(Y,Object.keys(Z))(...Object.values(Z));else return Y0(Y,Z)}catch{return!1}}var R2=b(()=>{A0()});function mq($,Z,Y){let J=$,X=!0;while(X){X=!1;let Q=J.match(/@switch\s*\(/);if(!Q||Q.index===void 0)break;let G=Q.index,K=R7(J,G);if(!K)break;try{let z;if(G0(K.expression))z=K0(K.expression,Object.keys(Z))(...Object.values(Z));else z=Y0(K.expression,Z);let q="",W=!1;for(let U of K.cases)if(U.type==="default"){if(!W)q=U.content.trim()}else try{let j;if(U.value&&G0(U.value))j=K0(U.value,Object.keys(Z))(...Object.values(Z));else if(U.value)j=Y0(U.value,Z);if(z===j){q=U.content.trim(),W=!0;break}}catch{continue}J=J.substring(0,G)+q+J.substring(K.end),X=!0}catch(z){let q=z instanceof Error?z.message:String(z),W=Z0("Switch",`Error evaluating @switch expression: ${q}`,r.EVALUATION_ERROR);J=J.substring(0,G)+W+J.substring(K.end);break}}return J}function c1($,Z,Y){let J=$;J=mq(J,Z,Y);{let Q=!0;while(Q){Q=!1;let G=J.match(/@unless\s*\(/);if(!G||G.index===void 0)break;let K=G.index,z=V1(J,K+7);if(!z)break;let q=z.endPos,W=f1(J,"unless","endunless",q);if(W===-1){console.warn(`[stx] @unless directive at position ${K} has no matching @endunless \u2014 the block was skipped. Check for typos or missing closers.`);break}let U=J.slice(q,W),j=z.expression,B=-1;{let H=0,L=/@(?:if|unless)\s*\(/g,V=/@(?:endif|endunless)(?![a-z])/g,O=/@else(?![a-z])/g,F=[],w;while((w=L.exec(U))!==null)F.push({pos:w.index,type:"open"});while((w=V.exec(U))!==null)F.push({pos:w.index,type:"close"});while((w=O.exec(U))!==null)F.push({pos:w.index,type:"else"});F.sort((A,R)=>A.pos-R.pos);for(let A of F)if(A.type==="open")H++;else if(A.type==="close")H--;else if(A.type==="else"&&H===0){B=A.pos;break}}let _;if(B!==-1){let H=U.slice(0,B),L=U.slice(B+5);_=`@if (${j})${L}@else ${H}@endif`}else _=`@if (!(${j}))${U}@endif`;J=J.substring(0,K)+_+J.substring(W+10),Q=!0}}J=C3(J,Z,Y),J=v3(J,Z,Y),J=P3(J,Z);let X=()=>{let Q=i5(J);if(Q.length===0)return!1;for(let G=Q.length-1;G>=0;G--){let K=Q[G];try{let z="",q=!1;for(let W of K.branches){if(q)break;if(W.type==="else")z=W.content,q=!0;else try{let U;if(W.condition&&G0(W.condition))U=K0(W.condition,Object.keys(Z))(...Object.values(Z));else if(W.condition)U=Y0(W.condition,Z);if(U)z=W.content,q=!0}catch(U){z=Z0(W.type==="if"?"If":"Elseif",`Error in @${W.type}(${W.condition}): ${U instanceof Error?U.message:String(U)}`,r.EVALUATION_ERROR),q=!0}}J=J.substring(0,K.start)+z+J.substring(K.end)}catch(z){let q=z instanceof Error?z.message:String(z),W=Z0("If",`Error processing @if block: ${q}`,r.EVALUATION_ERROR);J=J.substring(0,K.start)+W+J.substring(K.end)}}return!0};while(!0){let Q=J;if(!X())break;if(J===Q)break}return J}function N2($){let Z=0;while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!=="(")return null;Z++;while(Z<$.length&&/\s/.test($[Z]))Z++;let Y=$[Z];if(Y!=="'"&&Y!=='"')return null;Z++;let J=[];while(Z<$.length){let X=$[Z];if(X==="\\"&&Z+1<$.length){J.push($[Z+1]),Z+=2;continue}if(X===Y){Z++;break}J.push(X),Z++}while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!==")")return null;return Z++,{value:J.join(""),consumed:Z}}function P3($,Z){let Y=$;function J(K,z,q,W){let U=1,j=W,B=new RegExp(`@${z}(?:\\s*\\(|\\s|$)`,"g"),_=new RegExp(`@${q}(?![a-z])`,"g");while(j<K.length&&U>0){B.lastIndex=j,_.lastIndex=j;let H=B.exec(K),L=_.exec(K),V=H?H.index:1/0,O=L?L.index:1/0;if(V<O)U++,j=V+H[0].length;else if(O<1/0){if(U--,U===0)return O;j=O+L[0].length}else break}return-1}function X(K,z,q){let W=0,U=new RegExp(`@${z}(?:\\s*\\(|\\s|$)`,"g"),j=new RegExp(`@${q}(?![a-z])`,"g"),B=/@else(?![a-z])/g,_=[],H;while((H=U.exec(K))!==null)_.push({pos:H.index,type:"open"});while((H=j.exec(K))!==null)_.push({pos:H.index,type:"close"});while((H=B.exec(K))!==null)_.push({pos:H.index,type:"else"});_.sort((L,V)=>L.pos-V.pos);for(let L of _)if(L.type==="open")W++;else if(L.type==="close")W--;else if(L.type==="else"&&W===0)return L.pos;return-1}{let K=!0;while(K){K=!1;let z=Y.match(/@auth(?:\s*\(|\s|(?=\n))/);if(!z||z.index===void 0)break;let q=z.index,W,U,j=Y.slice(q+5),B=N2(j);if(B)W=B.value,U=q+5+B.consumed;else U=q+5;let _=J(Y,"auth","endauth",U);if(_===-1){console.warn(`[stx] @auth directive at position ${q} has no matching @endauth \u2014 the block was skipped.`);break}let H=Y.slice(U,_),L=X(H,"auth","endauth"),V;if(!Z.auth)V=!1;else V=W?R1(`auth?.check && auth?.user?.[${W}]`,Z):R1("auth?.check",Z);let O;if(L!==-1){let F=H.slice(0,L),w=H.slice(L+5);O=V?F:w}else O=V?H:"";Y=Y.substring(0,q)+O+Y.substring(_+8),K=!0}}{let K=!0;while(K){K=!1;let z=Y.match(/@guest(?:\s*\(|\s|(?=\n))/);if(!z||z.index===void 0)break;let q=z.index,W,U,j=Y.slice(q+6),B=N2(j);if(B)W=B.value,U=q+6+B.consumed;else U=q+6;let _=J(Y,"guest","endguest",U);if(_===-1){console.warn(`[stx] @guest directive at position ${q} has no matching @endguest \u2014 the block was skipped.`);break}let H=Y.slice(U,_),L=X(H,"guest","endguest"),V;if(!Z.auth)V=!0;else V=W?R1(`!auth?.check || !auth?.user?.[${W}]`,Z):R1("!auth?.check",Z);let O;if(L!==-1){let F=H.slice(0,L),w=H.slice(L+5);O=V?F:w}else O=V?H:"";Y=Y.substring(0,q)+O+Y.substring(_+9),K=!0}}function Q(K,z,q){if(Z.userCan&&typeof Z.userCan[K]==="boolean")return Z.userCan[K];if(Z.permissions?.check&&typeof Z.permissions.check==="function")try{let W=[K];if(z)W.push(z);if(q){let U=R1(q,Z);W.push(U)}return Z.permissions.check(...W)}catch{return!1}return!1}function G(K){let z=K.match(/^\s*\(\s*'([^']*)'(?:,\s*'([^']*)')?(?:,\s*([^)]*))?\)/);if(!z)return null;return{ability:z[1],type:z[2],id:z[3]?.trim(),paramsEnd:z[0].length}}for(let K of["can","cannot"]){let z=`end${K}`,q=K==="can"?"elsecan":"elsecannot",W=!0;while(W){W=!1;let U=Y.match(new RegExp(`@${K}\\s*\\(`));if(!U||U.index===void 0)break;let j=U.index,B=Y.slice(j+`@${K}`.length),_=G(B);if(!_)break;let H=j+`@${K}`.length+_.paramsEnd,L=J(Y,K,z,H);if(L===-1){console.warn(`[stx] @${K} directive at position ${j} has no matching @${z} \u2014 the block was skipped.`);break}let V=Y.slice(H,L),O=[],F=0,w=new RegExp(`@${K}\\s*\\(`,"g"),A=new RegExp(`@${z}(?![a-z])`,"g"),R=new RegExp(`@${q}\\s*\\(`,"g"),N=/@else(?![a-z])/g,M=[],T;while((T=w.exec(V))!==null)M.push({pos:T.index,type:"open"});while((T=A.exec(V))!==null)M.push({pos:T.index,type:"close"});while((T=R.exec(V))!==null)M.push({pos:T.index,type:"elseDirective"});while((T=N.exec(V))!==null)M.push({pos:T.index,type:"else"});M.sort((k,C)=>k.pos-C.pos);for(let k of M){if(k.type==="open"){F++;continue}if(k.type==="close"){F--;continue}if(F===0)O.push(k)}let I=[],E=0;for(let k=0;k<O.length;k++){let C=O[k];if(I.push({content:V.slice(E,C.pos),ability:void 0}),C.type==="elseDirective"){let x=V.slice(C.pos+`@${q}`.length),f=G(x);if(f){I[I.length-1]={content:V.slice(E,C.pos)},E=C.pos+`@${q}`.length+f.paramsEnd,I.push({content:"",ability:f.ability,type:f.type,id:f.id}),I.pop();let d=O[k+1],c=d?d.pos:V.length;I.push({content:V.slice(E,c),ability:f.ability,type:f.type,id:f.id}),E=c}}else E=C.pos+5}if(E<V.length){let k=I[I.length-1];if(O.length>0&&O[O.length-1].type==="else")I.push({content:V.slice(E),isFinalElse:!0});else if(I.length===0)I.push({content:V.slice(E)})}let D=Q(_.ability,_.type,_.id),y=K==="can"?D:!D,S="";if(y)S=I[0]?.content||"";else{let k=!1;for(let C=1;C<I.length;C++){let x=I[C];if(x.isFinalElse){S=x.content,k=!0;break}if(x.ability){let f=Q(x.ability,x.type,x.id);if(K==="can"?f:!f){S=x.content,k=!0;break}}}if(!k&&I.length>0){let C=I[I.length-1];if(C.isFinalElse)S=C.content}}Y=Y.substring(0,j)+S+Y.substring(L+`@${z}`.length),W=!0}}return Y}function C3($,Z,Y){let J=$;function X(Q,G,K,z,q){let W=!0;while(W){W=!1;let U=new RegExp(`@${G}\\s*\\(`),j=Q.match(U);if(!j||j.index===void 0)break;let B=j.index,_=V1(Q,B+`@${G}`.length);if(!_)break;let H=_.endPos,L=f1(Q,G,K,H);if(L===-1){console.warn(`[stx] @${G} directive at position ${B} has no matching @${K} \u2014 the block was skipped.`);break}let V=Q.slice(H,L),O=_.expression,F=-1,w=0,A=0;while(A<V.length){let R=V.indexOf("@",A);if(R===-1)break;let N=V.substring(R);if(/^@(?:if|unless|isset|empty)\s*\(/.test(N)){w++,A=R+1;continue}if(/^@(?:endif|endunless|endisset|endempty)(?![a-z])/.test(N)){w--,A=R+1;continue}if(w===0&&/^@else(?![a-z])/.test(N)){F=R;break}A=R+1}try{let R=z(O.trim()),N;if(F!==-1){let M=V.slice(0,F),T=V.slice(F+5);N=R?M:T}else N=R?V:"";Q=Q.substring(0,B)+N+Q.substring(L+`@${K}`.length),W=!0}catch(R){let N=R instanceof Error?R.message:String(R),M=Z0(q,`Error processing @${G} directive: ${N}`,r.EVALUATION_ERROR);Q=Q.substring(0,B)+M+Q.substring(L+`@${K}`.length);break}}return Q}return J=X(J,"isset","endisset",(Q)=>{let G=R1(Q,Z);return G!==void 0&&G!==null},"Isset"),J=X(J,"empty","endempty",(Q)=>{let G=R1(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"),J}function v3($,Z,Y){let J=$,X="development";function Q(G,K,z,q){let W=new RegExp(`@${K}(?![a-z])`,"g"),U=new RegExp(`@${z}(?![a-z])`,"g"),j=new RegExp(`^@${K}(?![a-z])`),B=new RegExp(`^@${z}(?![a-z])`),_=G,H=!0;while(H){H=!1,W.lastIndex=0;let L=W.exec(_);if(!L)break;let V=L.index,O=V+L[0].length;if(K==="env"){let D=_.substring(O).match(/^\s*\(\s*(['"])([^'"]+)\1\s*\)/);if(!D)break;O+=D[0].length,q=X===D[2]}let F=1,w=O,A=-1;while(F>0&&w<_.length){W.lastIndex=w,U.lastIndex=w;let D=W.exec(_),y=U.exec(_),S=D?D.index:1/0,k=y?y.index:1/0;if(S<k)F++,w=S+D[0].length;else if(k<1/0){if(F--,F===0){A=k;break}w=k+y[0].length}else break}if(A===-1){console.warn(`[stx] @${K} directive at position ${V} has no matching @${z} \u2014 the block was skipped.`);break}let R=_.substring(O,A),N=-1,M=0,T=0;while(T<R.length){let D=R.indexOf("@",T);if(D===-1)break;let y=R.substring(D);if(j.test(y)){M++,T=D+1;continue}if(B.test(y)){M--,T=D+1;continue}if(M===0&&/^@else(?![a-z])/.test(y)){N=D;break}T=D+1}let I;if(N!==-1){let D=R.slice(0,N),y=R.slice(N+5);I=q?D:y}else I=q?R:"";let E=`@${z}`.length;_=_.substring(0,V)+I+_.substring(A+E),H=!0}return _}return J=Q(J,"env","endenv",!1),J=Q(J,"production","endproduction",X==="production"),J=Q(J,"development","enddevelopment",X==="development"),J=Q(J,"staging","endstaging",X==="staging"),J=Q(J,"testing","endtesting",X==="testing"),J}var S4=b(()=>{R2();z1();b$();A0()});function T2($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function y4($,Z){if(!$)return Z?.nonceGenerator?.()??T2();let Y=M2.get($);if(!Y)Y=Z?.nonceGenerator?.()??T2(),M2.set($,Y);return Y}function pq($,Z){let Y=[];for(let[J,X]of Object.entries($)){if(X===void 0||X===null)continue;if(typeof X==="boolean"){if(X)Y.push(J);continue}if(Array.isArray(X)){let Q=[...X];if(Z&&(J==="script-src"||J==="style-src"))Q=Q.filter((G)=>!G.startsWith("'nonce-")),Q.push(`'nonce-${Z}'`);if(Q.length>0)Y.push(`${J} ${Q.join(" ")}`)}}return Y.join("; ")}function I2($,Z){return`<meta http-equiv="Content-Security-Policy" content="${pq($,Z).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}">`}function D2($,Z,Y){if(!Z.enabled||!Z.addMetaTag)return $;if($.includes('http-equiv="Content-Security-Policy"'))return $;if(!$.includes("<head>")&&!$.includes("<head "))return $;let J=Z.useNonce?y4(Y,Z):void 0,X=I2(Z.directives,J);return $.replace(/<head([^>]*)>/,`<head$1>
9104
- ${X}`)}function E2($,Z){let Y=$;return Y=Y.replace(/<script(?![^>]*\ssrc=)([^>]*)>/gi,(J,X)=>{if(X.includes("nonce="))return J;return`<script nonce="${Z}"${X}>`}),Y=Y.replace(/<style([^>]*)>/gi,(J,X)=>{if(X.includes("nonce="))return J;return`<style nonce="${Z}"${X}>`}),Y}function k2($,Z,Y,J){let X=$,Q=J.csp;if(X=X.replace(/@csp\b/g,()=>{if(!Q?.enabled||!Q.directives)return"<!-- CSP not configured -->";let G=Q.useNonce?y4(Z,Q):void 0;return I2(Q.directives,G)}),X=X.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return y4(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=y4(Z,Q);return X}var M2;var b2=b(()=>{M2=new WeakMap});import lq from"crypto";function iq($=cq){let Z=lq.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return x3=Z,Z}function nq(){if(!x3)iq();return x3}function oq($=S2){let Z=nq();return`<input type="hidden" name="${$}" value="${Z}">`}function y2($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,Y,J)=>{return oq(J||S2)})}var cq=40,S2="_token",x3=null;var P2=()=>{};async function C2($,Z,Y,J){if(!J.customDirectives||J.customDirectives.length===0)return $;let X=$;for(let Q of J.customDirectives){if(!Q.name||typeof Q.handler!=="function"){if(J.debug)console.warn("Invalid custom directive:",Q);continue}if(Q.hasEndTag)X=await sq(X,Q,Z,Y,J);else X=await rq(X,Q,Z,Y,J)}return X}async function sq($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=`@${Q}`,z=`@end${Q}`,q=$,W=J5(`${K}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${z}`,"g"),U=[],j=W.exec(q);while(j!==null){let[B,_="",H=""]=j,L=j.index||0;try{let V=_?v2(_):[],O=H.trim(),F=await G(O,V,Y,J);U.push({original:B,processed:F,startIndex:L})}catch(V){let O=V instanceof Error?V.message:String(V);if(X.debug)console.error(`Error processing custom directive @${Q}:`,V);U.push({original:B,processed:Z0("CustomDirective",`Error in @${Q}${_?`(${_})`:""}: ${O}`,r.EVALUATION_ERROR),startIndex:L})}j=W.exec(q)}for(let B=U.length-1;B>=0;B--){let{original:_,processed:H}=U[B];q=q.replace(_,H)}return q}async function rq($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=$,z=J5(`@${Q}\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\)`,"g"),q=[],W=z.exec(K);while(W!==null){let[B,_=""]=W,H=W.index||0;try{let L=v2(_),V=await G("",L,Y,J);q.push({original:B,processed:V,startIndex:H})}catch(L){let V=L instanceof Error?L.message:String(L);if(X.debug)console.error(`Error processing custom directive @${Q}:`,L);q.push({original:B,processed:Z0("CustomDirective",`Error in @${Q}(${_}): ${V}`,r.EVALUATION_ERROR),startIndex:H})}W=z.exec(K)}let U=J5(`@${Q}(?!\\w)(?!\\s*\\()`,"g"),j=U.exec(K);while(j!==null){let[B]=j,_=j.index||0;try{let H=await G("",[],Y,J);q.push({original:B,processed:H,startIndex:_})}catch(H){let L=H instanceof Error?H.message:String(H);if(X.debug)console.error(`Error processing custom directive @${Q}:`,H);q.push({original:B,processed:Z0("CustomDirective",`Error in @${Q}: ${L}`,r.EVALUATION_ERROR),startIndex:_})}j=U.exec(K)}for(let B=q.length-1;B>=0;B--){let{original:_,processed:H}=q[B];K=K.replace(_,H)}return K}function v2($){if(!$.trim())return[];let Z=[],Y="",J=!1,X="";for(let Q=0;Q<$.length;Q++){let G=$[Q];if((G==='"'||G==="'")&&(Q===0||$[Q-1]!=="\\"))if(!J)J=!0,X=G;else if(G===X)J=!1;else Y+=G;else if(G===","&&!J)Z.push(Y.trim()),Y="";else Y+=G}if(Y.trim())Z.push(Y.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 x2=b(()=>{z1();X5()});function i1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function tq($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,Y=Z.appearance,J=Z.colorMode;if(i1(Z.storageKey,"storageKey"),!Y||typeof Y!=="object"||Array.isArray(Y))throw Error("@appearanceBootstrap appearance must be an object");if(!J||typeof J!=="object"||Array.isArray(J))throw Error("@appearanceBootstrap colorMode must be an object");if(i1(Y.key,"appearance.key"),i1(Y.attribute,"appearance.attribute"),i1(Y.default,"appearance.default"),i1(J.key,"colorMode.key"),i1(J.attribute,"colorMode.attribute"),i1(J.default,"colorMode.default"),!g2.test(Y.key)||!g2.test(J.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!f2.test(Y.attribute)||!f2.test(J.attribute))throw Error("@appearanceBootstrap attributes must be lowercase data attribute names");if(!Array.isArray(Y.allowed)||Y.allowed.length===0||Y.allowed.some((X)=>typeof X!=="string"||X.length===0))throw Error("@appearanceBootstrap appearance.allowed must contain one or more strings");if(!Y.allowed.includes(Y.default))throw Error("@appearanceBootstrap appearance.default must be in appearance.allowed");if(!aq.has(J.default))throw Error("@appearanceBootstrap colorMode.default must be light, dark, or system");return{storageKey:Z.storageKey,appearance:{key:Y.key,attribute:Y.attribute,allowed:[...new Set(Y.allowed)],default:Y.default},colorMode:{key:J.key,attribute:J.attribute,default:J.default}}}function eq($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function $W($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${eq($)};const root=document.documentElement;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{}const selectedAppearance=config.appearance.allowed.includes(stored[config.appearance.key])?stored[config.appearance.key]:config.appearance.default;const selectedMode=["light","dark","system"].includes(stored[config.colorMode.key])?stored[config.colorMode.key]:config.colorMode.default;root.setAttribute("data-"+config.appearance.attribute,selectedAppearance);root.setAttribute("data-"+config.colorMode.attribute,selectedMode);let dark=selectedMode==="dark";if(selectedMode==="system"){try{dark=matchMedia("(prefers-color-scheme: dark)").matches}catch{dark=false}}root.classList.toggle("dark",dark);root.dataset.theme=dark?"dark":"light"}());</script>`}function ZW($,Z){let Y=1,J=null,X=!1;for(let Q=Z+1;Q<$.length;Q++){let G=$[Q];if(X){X=!1;continue}if(J){if(G==="\\")X=!0;else if(G===J)J=null;continue}if(G==='"'||G==="'"||G==="`"){J=G;continue}if(G==="(")Y++;else if(G===")"&&--Y===0)return Q}return-1}function h2($,Z){let Y=$,J=/@appearanceBootstrap\s*\(/g,X;while((X=J.exec(Y))!==null){let Q=X.index+X[0].length-1,G=ZW(Y,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let K=Y.slice(Q+1,G).trim(),z=Y0(`(${K})`,Z),q=$W(tq(z));Y=Y.slice(0,X.index)+q+Y.slice(G+1),J.lastIndex=X.index+q.length}return Y}var f2,g2,aq;var d2=b(()=>{A0();f2=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,g2=/^[A-Za-z_$][\w$]*$/,aq=new Set(["light","dark","system"])});import YW from"crypto";function T0($){return String($??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function P4($,Z,Y,J){let X=$||Z;return Y?`${X} ${J}`:X}function JW(){return YW.randomUUID()}function C4($,Z){let Y=$;return Y=Y.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let J=JW();Z.csrf={token:J}}if(Z.csrf.field)return Z.csrf.field;if(Z.csrf.token)return`<input type="hidden" name="_token" value="${T0(Z.csrf.token)}">`;return'<input type="hidden" name="_token" value="">'}),Y=Y.replace(/@method\(['"]([^'"]+)['"]\)/g,(J,X)=>{let Q=X.toUpperCase();if(X&&!["GET","POST"].includes(Q))return`<input type="hidden" name="_method" value="${T0(Q)}">`;return J}),Y}function p2($,Z,Y=m2){let J=$;return J=J.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(X,Q,G,K,z,q="")=>{let W=Q||G||"POST",U=K||z||"",j=N1(q),B=W.toUpperCase(),_=["GET","POST"].includes(B)?B:"POST",H=`<form method="${T0(_)}" action="${T0(U)}"${j?` ${j}`:""}>`;if(H+=`
9105
- ${C4("@csrf",Z)}`,!["GET","POST"].includes(B))H+=`
9106
- ${C4(`@method('${B}')`,Z)}`;return H}),J=J.replace(/@endform/g,"</form>"),J=J.replace(/@input\(\s*(?:'([^']+)'|"([^"]+)")\s*(?:,\s*(?:(?:'([^']*)'|"([^"]*)")\s*)?)?(?:,\s*\{([^}]+)\})?\s*\)/g,(X,Q,G,K,z,q="")=>{let W=Q||G||"",U=K||z||"",j=N1(q),B=J$(W,Z),_=B!==void 0&&B!==null?B:U||"",H=j.match(/type=['"]([^'"]+)['"]/i),L=H?H[1]:"text",V=X$(W,Z),O=j.match(/class=['"]([^'"]+)['"]/i),F=P4(O?O[1]:"",Y.input,V,Y.inputError),w=j.replace(/class=['"][^'"]+['"]/i,"");return w=w.replace(/type=['"][^'"]+['"]/i,""),`<input type="${T0(L)}" name="${T0(W)}" value="${T0(_)}" class="${F}"${w?` ${w}`:""}>`}),J=J.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(X,Q,G="",K="")=>{let z=N1(G),q=J$(Q,Z)||K.trim(),W=X$(Q,Z),U=z.match(/class=['"]([^'"]+)['"]/i),j=P4(U?U[1]:"",Y.input,W,Y.inputError),B=z.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${T0(Q)}" class="${j}"${B?` ${B}`:""}>${T0(q)}</textarea>`}),J=J.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(X,Q,G="",K)=>{let z=N1(G),q=J$(Q,Z),W=X$(Q,Z),U=z.match(/class=['"]([^'"]+)['"]/i),j=P4(U?U[1]:"",Y.input,W,Y.inputError),B=z.replace(/class=['"][^'"]+['"]/i,""),_=K;if(q!==void 0)_=K.replace(/(<option[^>]*value=['"]([^'"]+)['"][^>]*>)/gi,(H,L,V)=>{if((Array.isArray(q)?q.some((F)=>String(F)===V):String(q)===V)&&!L.includes("selected"))return L.replace(/(<option)/,"$1 selected");return H});return`<select name="${T0(Q)}" class="${j}"${B?` ${B}`:""}>${_}</select>`}),J=J.replace(/@checkbox\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G="1",K="")=>{let z=N1(K),q=J$(Q,Z),W=q!==void 0&&(Array.isArray(q)?q.some((_)=>String(_)===G):q===!0||String(q)===G),U=z.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,B=z.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${T0(Q)}" value="${T0(G)}" class="${j}"${W?" checked":""}${B?` ${B}`:""}>`}),J=J.replace(/@radio\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G,K="")=>{let z=N1(K),q=J$(Q,Z),W=q!==void 0&&q===G,U=z.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,B=z.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${T0(Q)}" value="${T0(G)}" class="${j}"${W?" checked":""}${B?` ${B}`:""}>`}),J=J.replace(/@file\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G="")=>{let K=N1(G),z=K.match(/accept=['"]([^'"]+)['"]/i),q=z?z[1]:"",W=K.includes("multiple"),U=X$(Q,Z),j=K.match(/class=['"]([^'"]+)['"]/i),B=P4(j?j[1]:"",Y.input,U,Y.inputError),_=K.replace(/class=['"][^'"]+['"]/gi,"").replace(/accept=['"][^'"]+['"]/gi,"").replace(/\bmultiple\b/gi,"").trim(),H=[`<input type="file" name="${T0(Q)}"`,`class="${B}"`];if(q)H.push(`accept="${T0(q)}"`);if(W)H.push("multiple");if(_)H.push(_);return`${H.join(" ")}>`}),J=J.replace(/@label\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endlabel/g,(X,Q,G="",K)=>{let z=N1(G),q=z.match(/class=['"]([^'"]+)['"]/i),W=q?q[1]:Y.label,U=z.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${T0(Q)}" class="${W}"${U?` ${U}`:""}>${K}</label>`}),J}function l2($,Z,Y=m2){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(J,X,Q)=>{try{if(X$(X,Z))return Q.replace(/\{\{([^}]+)\}\}/g,(G,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return u2(X,Z);if(K.trim().includes("errors.first")||K.trim().includes("$errors.first")){if(typeof Z.errors?.first==="function")return Z.errors.first(X);return u2(X,Z)}let z=K.trim();if(G0(z)){let q=Y0(z,Z);return q!==void 0?String(q):z}return z}catch{return K}});return""}catch(G){return console.error("Error processing @error directive:",G),J}})}function X$($,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 u2($,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 Y=Z.errors[$];return Array.isArray(Y)?Y[0]:String(Y)}return""}function J$($,Z){let Y;if(Z.old&&typeof Z.old==="function")return Z.old($);if(Z.old&&typeof Z.old==="object")return Z.old[$];if($.endsWith("[]")){let J=$.slice(0,-2);if(Y=Z[J],Y!==void 0)return Y}return Z[$]}function N1($){if(!$.trim())return"";let Z=[],Y=$.trim(),J=/([\w-]+)\s*:\s*(['"]?)([^,'"]*)\2(?:\s*,\s*|\s*$)/g,X;while((X=J.exec(Y))!==null){let[,Q,,G]=X;Z.push(`${Q}="${G.trim()}"`)}return Z.join(" ")}var m2;var c2=b(()=>{A0();m2={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"}});import h3 from"path";async function XW(){if(Q$!==void 0)return Q$;try{Q$=(await import("@stacksjs/ts-i18n")).loadLocale??null}catch{Q$=null}return Q$}function QW($,Z=0){if(Z<=0)return!1;return Date.now()-$.loadedAt>Z}async function GW($,Z){if({...m3,...Z.i18n}.cache&&d3[$]){let X=d3[$],Q=Z.i18n?.cacheMaxAge??0;if(!QW(X,Q))return X.translations}if(G$[$]?.state==="loading")return G$[$].promise;f3[$]="loading";let J=u3($,Z).then((X)=>{return f3[$]="loaded",delete G$[$],X}).catch((X)=>{throw f3[$]="error",G$[$]={promise:J,state:"error",error:X instanceof Error?X:Error(String(X))},X});return G$[$]={promise:J,state:"loading"},J}async function u3($,Z){let Y={...m3,...Z.i18n},J=h3.isAbsolute(Y.translationsDir)?Y.translationsDir:h3.resolve(Z.root||process.cwd(),Y.translationsDir);try{let X=await XW(),Q=X?await X($,{translationsDir:J,defaultLocale:Y.defaultLocale,sources:UW(Y.format)}):await KW($,Y,J);if(Q===void 0){if($!==Y.defaultLocale)return u3(Y.defaultLocale,Z);return{}}let G=Q;if(Y.cache)d3[$]={translations:G,loadedAt:Date.now(),locale:$};return G}catch(X){if(Z.debug)console.error(`Error loading translation file for locale "${$}":`,X);if($!==Y.defaultLocale)return u3(Y.defaultLocale,Z);return{}}}async function KW($,Z,Y){let J=h3.join(Y,`${$}${zW(Z.format)}`);try{let X=await import(J);return X.default||X}catch(X){try{let Q=await Bun.file(J).text();if(Z.format==="yaml"||Z.format==="yml")return qW(Q);if(Z.format==="json")return JSON.parse(Q);throw X}catch{return}}}function zW($){switch($){case"yaml":return".yaml";case"yml":return".yml";case"js":return".js";case"ts":return".ts";case"json":default:return".json"}}function qW($){let Z={},Y=$.split(`
9107
- `),J=[{obj:Z,indent:-1}];for(let X of Y){let Q=X.replace(/#.*$/,"").trimEnd();if(!Q.trim())continue;let G=Q.search(/\S/);if(G===-1)continue;while(J.length>1&&J[J.length-1].indent>=G)J.pop();let K=J[J.length-1].obj,z=Q.match(/^(\s*)(\S[^:]*):\s*(.*)$/);if(z){let[,,q,W]=z,U=q.trim(),j=W.trim();if(j==="")K[U]={},J.push({obj:K[U],indent:G});else K[U]=WW(j)}}return Z}function WW($){if($.startsWith("'")&&$.endsWith("'")||$.startsWith('"')&&$.endsWith('"'))return $.slice(1,-1);let Z=$.toLowerCase();if(Z==="true"||Z==="yes")return!0;if(Z==="false"||Z==="no")return!1;if(Z==="null"||Z==="~")return null;let Y=Number($);if(!Number.isNaN(Y)&&$!=="")return Y;return $}function UW($){switch($){case"yaml":case"yml":return["yaml"];case"js":case"ts":return["ts"];case"json":default:return["json"]}}async function jW($,Z){return GW($,Z)}function BW($,Z){for(let Y of $){let J=Y.trim(),X=J.match(/^\{(\d+)\}\s*(.*)$/);if(X){let G=Number.parseInt(X[1],10);if(Z===G)return X[2];continue}let Q=J.match(/^\[(\d+),(\d+|\*)\]\s*(.*)$/);if(Q){let G=Number.parseInt(Q[1],10),K=Q[2]==="*"?Number.POSITIVE_INFINITY:Number.parseInt(Q[2],10);if(Z>=G&&Z<=K)return Q[3];continue}}if($.length===2)return Z===1?$[0].trim():$[1].trim();if(Z<$.length)return $[Z].trim();return $[$.length-1].trim()}function _W($,Z={}){return o2($,Z)}function o2($,Z){let Y="",J=0;while(J<$.length)if($[J]==="{"){let X=HW($,J);if(X===-1){Y+=$[J],J++;continue}let Q=$.slice(J+1,X);Y+=OW(Q,Z),J=X+1}else if($[J]==="'"&&J+1<$.length)if($[J+1]==="'")Y+="'",J+=2;else if($[J+1]==="{"||$[J+1]==="}")Y+=$[J+1],J+=2;else Y+=$[J],J++;else Y+=$[J],J++;return Y}function HW($,Z){let Y=0;for(let J=Z;J<$.length;J++)if($[J]==="{")Y++;else if($[J]==="}"){if(Y--,Y===0)return J}return-1}function OW($,Z){let Y=LW($);if(Y.length===0)return`{${$}}`;let J=Y[0].trim(),X=Z[J];if(Y.length===1)return X!==void 0?String(X):`{${J}}`;switch(Y[1].trim().toLowerCase()){case"plural":return FW(X,Y.slice(2).join(","),Z);case"select":return wW(X,Y.slice(2).join(","));case"selectordinal":return AW(X,Y.slice(2).join(","));case"number":return NW(X,Y[2]?.trim());case"date":return MW(X,Y[2]?.trim());case"time":return TW(X,Y[2]?.trim());default:return X!==void 0?String(X):`{${$}}`}}function LW($){let Z=[],Y="",J=0;for(let X=0;X<$.length;X++){let Q=$[X];if(Q==="{")J++,Y+=Q;else if(Q==="}")J--,Y+=Q;else if(Q===","&&J===0)Z.push(Y),Y="";else Y+=Q}if(Y)Z.push(Y);return Z}function FW($,Z,Y){let J=Number($)||0,X=p3(Z),Q=`=${J}`;if(X[Q])return g3(X[Q],J,Y);let G=VW(J);if(X[G])return g3(X[G],J,Y);if(X.other)return g3(X.other,J,Y);return String(J)}function g3($,Z,Y){let J=$.replace(/#/g,String(Z));return o2(J,Y)}function VW($){let Z=Math.abs($),Y=Math.floor(Z),J=String($).includes(".")?String($).split(".")[1].length:0;if(Y===1&&J===0)return"one";return"other"}function wW($,Z){let Y=String($||""),J=p3(Z);if(J[Y])return J[Y];return J.other||String($)}function AW($,Z){let Y=Number($)||0,J=p3(Z),X=RW(Y);if(J[X])return J[X].replace(/#/g,String(Y));if(J.other)return J.other.replace(/#/g,String(Y));return String(Y)}function RW($){let Z=Math.abs($),Y=Z%10,J=Z%100;if(Y===1&&J!==11)return"one";if(Y===2&&J!==12)return"two";if(Y===3&&J!==13)return"few";return"other"}function p3($){let Z={},Y=/(\w+|=\d+)\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g,J=Y.exec($);while(J!==null)Z[J[1]]=J[2],J=Y.exec($);return Z}function NW($,Z){let Y=Number($);if(Number.isNaN(Y))return String($);switch(Z){case"integer":return Math.floor(Y).toLocaleString();case"percent":return`${(Y*100).toFixed(0)}%`;case"currency":return Y.toLocaleString(void 0,{style:"currency",currency:"USD"});default:return Y.toLocaleString()}}function MW($,Z){let Y=$ instanceof Date?$:new Date(String($));if(Number.isNaN(Y.getTime()))return String($);let J={};switch(Z){case"short":J.dateStyle="short";break;case"medium":J.dateStyle="medium";break;case"long":J.dateStyle="long";break;case"full":J.dateStyle="full";break;default:J.dateStyle="medium"}return Y.toLocaleDateString(void 0,J)}function TW($,Z){let Y=$ instanceof Date?$:new Date(String($));if(Number.isNaN(Y.getTime()))return String($);let J={};switch(Z){case"short":J.timeStyle="short";break;case"medium":J.timeStyle="medium";break;case"long":J.timeStyle="long";break;case"full":J.timeStyle="full";break;default:J.timeStyle="short"}return Y.toLocaleTimeString(void 0,J)}function IW($){return/\{[^}]+,\s*(?:plural|select|selectordinal|number|date|time)\s*,/.test($)}function i2($,Z,Y=!0,J={}){let X=$.split("."),Q=Z;for(let K of X){if(Q===void 0||Q===null)break;Q=Q[K]}if(Q===void 0||Q===null)return Y?$:"";let G=String(Q);if(IW(G))return _W(G,J);if(G.includes("|")&&"count"in J){let K=Number(J.count),z=G.split("|");G=BW(z,K)}for(let[K,z]of Object.entries(J)){let q=K.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");G=G.replace(new RegExp(`:${q}`,"g"),String(z))}return G}async function s2($,Z,Y,J){let X=$,Q=/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)([\s\S]*?)@endtranslate/g,G={...m3,...J.i18n},K=await jW(G.locale,J);Z.__translations=K,Z.__locale=G.locale,Z.__i18nConfig=G,X=await n2(X,Q,async(W,U,j,B,_)=>{try{let H={};if(j)try{let V=[()=>JSON.parse(j),()=>{let O=`{"data":${j}}`,F=JSON.parse(O);return typeof F.data==="object"?F.data:{}},()=>{return M0(j,Z)}];for(let O of V)try{if(H=O(),Object.keys(H).length>0)break}catch{}}catch(V){if(J.debug)console.error("Error parsing parameters for @translate directive:",V)}return i2(U,K,G.fallbackToKey,H)||B.trim()}catch(H){if(J.debug)console.error("Error processing @translate directive:",H);return Z0("Translate",`Error in @translate('${U}'): ${H instanceof Error?H.message:String(H)}`,r.EVALUATION_ERROR)}});let z=/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]+\})\s*)?\)/g;if(J.debug){console.warn(`Processing translations in template. Sections: ${X.includes("<h2>Translation with Parameters</h2>")?"Parameters section found":"Parameters section missing"}`);let W=[...X.matchAll(z)];console.warn(`Found ${W.length} @translate matches`),W.forEach((U,j)=>console.warn(`Match ${j}: ${U[0]}, Key: ${U[1]}, Params: ${U[2]||"none"}`))}return X=await n2(X,/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)/g,async(W,U,j,B)=>{try{let _={};if(j)try{let H=[()=>JSON.parse(j),()=>{let L=`{"data":${j}}`,V=JSON.parse(L);return typeof V.data==="object"?V.data:{}},()=>{return M0(j,Z)}];for(let L of H)try{if(_=L(),Object.keys(_).length>0)break}catch{}}catch(H){if(J.debug)console.error("Error parsing parameters for @translate directive:",H)}return i2(U,K,G.fallbackToKey,_)}catch(_){if(J.debug)console.error("Error processing @translate directive:",_);return Z0("Translate",`Error in @translate('${U}'): ${_ instanceof Error?_.message:String(_)}`,r.EVALUATION_ERROR)}}),X}async function n2($,Z,Y){let J=[];return $.replace(Z,(Q,...G)=>{let K=Y(Q,...G).then((z)=>({match:Q,replacement:z}));return J.push(K),Q}),(await Promise.all(J)).reduce((Q,{match:G,replacement:K})=>Q.replace(G,K),$)}var Q$,m3,d3,G$,f3;var r2=b(()=>{z1();A0();m3={defaultLocale:"en",locale:"en",translationsDir:"translations",format:"yaml",fallbackToKey:!0,cache:!0},d3={},G$={},f3={}});var i3={};e(i3,{streamingSuspenseDirective:()=>e2,streamToResponse:()=>gW,streamTemplateSimple:()=>CW,streamTemplate:()=>EW,renderStreamingPage:()=>bW,registerStreamingDirectives:()=>xW,processStreamDirectives:()=>yW,processSectionDirectives:()=>fW,islandDirective:()=>$Y,generateHydrationRuntime:()=>hW,extractStreamBoundaries:()=>PW,createStreamRenderer:()=>vW,buildSuspenseResolveScript:()=>c3,SUSPENSE_RESOLVER_RUNTIME:()=>t2});import v4 from"path";function DW($){let Z=[],Y=0,J;a2.lastIndex=0;while((J=a2.exec($))!==null){if(J.index>Y){let G=$.slice(Y,J.index);if(G.trim())Z.push({type:Z.length===0?"shell":"content",content:G})}let X=J[1],Q=J[2];Z.push({type:"suspense",name:X,content:Q}),Y=J.index+J[0].length}if(Y<$.length){let X=$.slice(Y);if(X.trim())Z.push({type:Z.length===0?"shell":"content",content:X})}if(Z.length===0)Z.push({type:"shell",content:$});return Z}async function EW($,Z={},Y={}){let J={...p1,...Y,streaming:{...l3,...Y.streaming}},X=J.streaming?.bufferSize||16384;return new ReadableStream({async start(Q){try{let G=await Bun.file($).text(),K=G.match(/<script\b[^>]*\bserver\b[^>]*>([\s\S]*?)<\/script>/i),z=K?K[1]:"",q=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),W={...Z,__filename:$,__dirname:v4.dirname($)};if(z.trim())await x1(z,W,$);let U=DW(q),j=new Set;if(!U.some((_)=>_.type==="suspense")){let _=J.streaming?.strategy||"auto",H=new RegExp(n1.source,"g");if(!(_!=="manual"&&H.test(q))){let V=await L0(q,W,$,J,j);for(let O=0;O<V.length;O+=X)Q.enqueue(V.slice(O,O+X)),await new Promise((F)=>setTimeout(F,0))}else{let V=[],O=new RegExp(n1.source,"g"),F;while((F=O.exec(q))!==null)V.push({name:F[1],content:F[2],start:F.index,end:F.index+F[0].length});let w=0;for(let A of V){if(A.start>w){let N=q.slice(w,A.start);if(N.trim()){let M=await L0(N,W,$,J,j);Q.enqueue(M),await new Promise((T)=>setTimeout(T,0))}}let R=await L0(A.content,W,$,J,j);Q.enqueue(R),await new Promise((N)=>setTimeout(N,0)),w=A.end}if(w<q.length){let A=q.slice(w);if(A.trim()){let R=await L0(A,W,$,J,j);Q.enqueue(R)}}}}else{let _=new Map;for(let L of U)if(L.type==="shell"||L.type==="content"){let V=await L0(L.content,W,$,J,j);Q.enqueue(V)}else if(L.type==="suspense"&&L.name){let V=`stx-suspense-${L.name}`;Q.enqueue(`<div id="${V}" data-suspense="${L.name}" style="display:contents;">
9121
+ `+X.slice(G);else X+=Q;return X}function vq($,Z){let Y=$;for(let J of Z){let Q=new RegExp(`<[a-z][a-z0-9-]*\\s+[^>]*data-stx-scope="([^"]*)"[^>]*x-data\\s*=\\s*["']${k4(J.stateExpr)}["']`,"gi").exec(Y);if(Q)J.id=Q[1],J.selector=`[data-stx-scope="${J.id}"]`;else{let K=new RegExp(`<[a-z][a-z0-9-]*\\s+[^>]*x-data\\s*=\\s*["']${k4(J.stateExpr)}["'][^>]*data-stx-scope="([^"]*)"`,"gi").exec(Y);if(K)J.id=K[1],J.selector=`[data-stx-scope="${J.id}"]`;else Y=Y.replace(new RegExp(`(<[a-z][a-z0-9-]*\\s+)([^>]*)(x-data\\s*=\\s*"${k4(J.stateExpr)}")([^>]*>)`,"gi"),`$1data-stx-scope="${J.id}" $2$3$4`),Y=Y.replace(new RegExp(`(<[a-z][a-z0-9-]*\\s+)([^>]*)(x-data\\s*=\\s*'${k4(J.stateExpr)}')([^>]*>)`,"gi"),`$1data-stx-scope="${J.id}" $2$3$4`)}}return Y=Y.replace(/\s*x-data\s*=\s*"([^"]*)"/g,' data-stx-xdata="$1"'),Y=Y.replace(/\s*x-data\s*=\s*'([^']*)'/g," data-stx-xdata='$1'"),Y=Y.replace(/\s*x-init\s*=\s*"[^"]*"/g,""),Y=Y.replace(/\s*x-init\s*=\s*'[^']*'/g,""),Y}function xq($){return/x-data\s*=\s*["']/.test($)}var L2=0,Eq=0;var V2=b(()=>{Y1()});import fq from"fs";import S3 from"path";import{createHighlighter as gq}from"ts-syntax-highlighter";async function hq($,Z={}){try{if(!await o($))throw Error(`Markdown file not found: ${$}`);let J=(await fq.promises.stat($)).mtime.getTime();if(Z.cache&&y3.has($)){let U=y3.get($);if(U.updatedAt>=J)return{content:U.content,data:U.data}}let X=await Bun.file($).text(),{data:Q,content:G}=K9(X),K=Z.markdown||M3.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},q=k5(G,{gfm:!0});if(K.syntaxHighlighting?.enabled&&K.syntaxHighlighting?.serverSide)q=await dq(q,K.syntaxHighlighting?.defaultTheme||"github-dark",K.syntaxHighlighting?.highlightUnknownLanguages||!1);let W={content:q,data:Q||{}};if(Z.cache)y3.set($,{...W,updatedAt:J});return W}catch(Y){if(Z.debug)console.error(`Error reading/parsing markdown file ${$}:`,Y);let J=Y instanceof Error?Y.message:String(Y);return{content:q0("Markdown File",`Error reading/parsing markdown file: ${J}`,$,"",0,""),data:{}}}}async function dq($,Z,Y){let J=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!b4)try{b4=await gq({theme:Z||"github-dark",cache:!0})}catch(K){return console.error("Failed to initialize ts-syntax-highlighter:",K),$}let X=async(K,z,q,W)=>{let U=W.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&").replace(/&quot;/g,'"').replace(/&#39;/g,"'"),j=q||(Y?"text":"");if(!j)return K;try{if(!b4.getSupportedLanguages().includes(j))return K;return(await b4.highlight(U,j,{theme:Z})).html}catch(_){console.error(`Error highlighting code block with language ${q}:`,_)}return K},Q=$,G=$.matchAll(J);for(let K of G){let[z,q,W,U]=K,j=await X(z,q,W,U);Q=Q.replace(z,j)}return Q}async function w2($,Z,Y="",J={}){return await mq($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,K,z,q)=>{try{let W=K;if(!S3.isAbsolute(K))W=S3.resolve(S3.dirname(Y),K);let U={};if(z)try{try{U=JSON.parse(z)}catch{if(J.debug)console.warn("Using safer alternative for parsing JS object literal");let O=z.replace(/^\s*\{|\}\s*$/g,"").trim().split(/,(?=\s*\w+\s*:)/);for(let F of O){let w=F.indexOf(":");if(w>0){let A=F.substring(0,w).trim(),R=F.substring(w+1).trim(),N=R.startsWith('"')&&R.endsWith('"'),M=R.startsWith("'")&&R.endsWith("'");if(N||M)R=R.substring(1,R.length-1);U[A]=R}}}}catch(V){if(J.debug)console.error("Error parsing context in @markdown-file directive:",V)}let{content:j,data:_}=await hq(W,J),B={...Z,..._,...U},H=j,L=/\{\{([^}]+)\}\}/g;return H=H.replace(L,(V,O)=>{let F=O.trim();return B[F]!==void 0?String(B[F]):V}),H}catch(W){let U=W instanceof Error?W.message:String(W);return q0("Markdown File",`Error including markdown file: ${U}`,Y,$,q,G)}})}async function mq($,Z,Y){let J=[],X;while((X=Z.exec($))!==null){let K=X[0],z=X.index,q=X;J.push(Y(...q).then((W)=>({match:K,replacement:W,index:z})))}let Q=await Promise.all(J);Q.sort((K,z)=>z.index-K.index);let G=$;for(let{match:K,replacement:z}of Q)G=G.replace(K,()=>z);return G}var y3,b4=null;var A2=b(()=>{l1();N0();y3=new Map});function R1($,Z){try{let Y=$.trim();if(G0(Y))return K0(Y,Object.keys(Z))(...Object.values(Z));else return Y0(Y,Z)}catch{return!1}}var R2=b(()=>{A0()});function uq($,Z,Y){let J=$,X=!0;while(X){X=!1;let Q=J.match(/@switch\s*\(/);if(!Q||Q.index===void 0)break;let G=Q.index,K=R7(J,G);if(!K)break;try{let z;if(G0(K.expression))z=K0(K.expression,Object.keys(Z))(...Object.values(Z));else z=Y0(K.expression,Z);let q="",W=!1;for(let U of K.cases)if(U.type==="default"){if(!W)q=U.content.trim()}else try{let j;if(U.value&&G0(U.value))j=K0(U.value,Object.keys(Z))(...Object.values(Z));else if(U.value)j=Y0(U.value,Z);if(z===j){q=U.content.trim(),W=!0;break}}catch{continue}J=J.substring(0,G)+q+J.substring(K.end),X=!0}catch(z){let q=z instanceof Error?z.message:String(z),W=Z0("Switch",`Error evaluating @switch expression: ${q}`,r.EVALUATION_ERROR);J=J.substring(0,G)+W+J.substring(K.end);break}}return J}function c1($,Z,Y){let J=$;J=uq(J,Z,Y);{let Q=!0;while(Q){Q=!1;let G=J.match(/@unless\s*\(/);if(!G||G.index===void 0)break;let K=G.index,z=V1(J,K+7);if(!z)break;let q=z.endPos,W=f1(J,"unless","endunless",q);if(W===-1){console.warn(`[stx] @unless directive at position ${K} has no matching @endunless \u2014 the block was skipped. Check for typos or missing closers.`);break}let U=J.slice(q,W),j=z.expression,_=-1;{let H=0,L=/@(?:if|unless)\s*\(/g,V=/@(?:endif|endunless)(?![a-z])/g,O=/@else(?![a-z])/g,F=[],w;while((w=L.exec(U))!==null)F.push({pos:w.index,type:"open"});while((w=V.exec(U))!==null)F.push({pos:w.index,type:"close"});while((w=O.exec(U))!==null)F.push({pos:w.index,type:"else"});F.sort((A,R)=>A.pos-R.pos);for(let A of F)if(A.type==="open")H++;else if(A.type==="close")H--;else if(A.type==="else"&&H===0){_=A.pos;break}}let B;if(_!==-1){let H=U.slice(0,_),L=U.slice(_+5);B=`@if (${j})${L}@else ${H}@endif`}else B=`@if (!(${j}))${U}@endif`;J=J.substring(0,K)+B+J.substring(W+10),Q=!0}}J=C3(J,Z,Y),J=v3(J,Z,Y),J=P3(J,Z);let X=()=>{let Q=i5(J);if(Q.length===0)return!1;for(let G=Q.length-1;G>=0;G--){let K=Q[G];try{let z="",q=!1;for(let W of K.branches){if(q)break;if(W.type==="else")z=W.content,q=!0;else try{let U;if(W.condition&&G0(W.condition))U=K0(W.condition,Object.keys(Z))(...Object.values(Z));else if(W.condition)U=Y0(W.condition,Z);if(U)z=W.content,q=!0}catch(U){z=Z0(W.type==="if"?"If":"Elseif",`Error in @${W.type}(${W.condition}): ${U instanceof Error?U.message:String(U)}`,r.EVALUATION_ERROR),q=!0}}J=J.substring(0,K.start)+z+J.substring(K.end)}catch(z){let q=z instanceof Error?z.message:String(z),W=Z0("If",`Error processing @if block: ${q}`,r.EVALUATION_ERROR);J=J.substring(0,K.start)+W+J.substring(K.end)}}return!0};while(!0){let Q=J;if(!X())break;if(J===Q)break}return J}function N2($){let Z=0;while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!=="(")return null;Z++;while(Z<$.length&&/\s/.test($[Z]))Z++;let Y=$[Z];if(Y!=="'"&&Y!=='"')return null;Z++;let J=[];while(Z<$.length){let X=$[Z];if(X==="\\"&&Z+1<$.length){J.push($[Z+1]),Z+=2;continue}if(X===Y){Z++;break}J.push(X),Z++}while(Z<$.length&&/\s/.test($[Z]))Z++;if($[Z]!==")")return null;return Z++,{value:J.join(""),consumed:Z}}function P3($,Z){let Y=$;function J(K,z,q,W){let U=1,j=W,_=new RegExp(`@${z}(?:\\s*\\(|\\s|$)`,"g"),B=new RegExp(`@${q}(?![a-z])`,"g");while(j<K.length&&U>0){_.lastIndex=j,B.lastIndex=j;let H=_.exec(K),L=B.exec(K),V=H?H.index:1/0,O=L?L.index:1/0;if(V<O)U++,j=V+H[0].length;else if(O<1/0){if(U--,U===0)return O;j=O+L[0].length}else break}return-1}function X(K,z,q){let W=0,U=new RegExp(`@${z}(?:\\s*\\(|\\s|$)`,"g"),j=new RegExp(`@${q}(?![a-z])`,"g"),_=/@else(?![a-z])/g,B=[],H;while((H=U.exec(K))!==null)B.push({pos:H.index,type:"open"});while((H=j.exec(K))!==null)B.push({pos:H.index,type:"close"});while((H=_.exec(K))!==null)B.push({pos:H.index,type:"else"});B.sort((L,V)=>L.pos-V.pos);for(let L of B)if(L.type==="open")W++;else if(L.type==="close")W--;else if(L.type==="else"&&W===0)return L.pos;return-1}{let K=!0;while(K){K=!1;let z=Y.match(/@auth(?:\s*\(|\s|(?=\n))/);if(!z||z.index===void 0)break;let q=z.index,W,U,j=Y.slice(q+5),_=N2(j);if(_)W=_.value,U=q+5+_.consumed;else U=q+5;let B=J(Y,"auth","endauth",U);if(B===-1){console.warn(`[stx] @auth directive at position ${q} has no matching @endauth \u2014 the block was skipped.`);break}let H=Y.slice(U,B),L=X(H,"auth","endauth"),V;if(!Z.auth)V=!1;else V=W?R1(`auth?.check && auth?.user?.[${W}]`,Z):R1("auth?.check",Z);let O;if(L!==-1){let F=H.slice(0,L),w=H.slice(L+5);O=V?F:w}else O=V?H:"";Y=Y.substring(0,q)+O+Y.substring(B+8),K=!0}}{let K=!0;while(K){K=!1;let z=Y.match(/@guest(?:\s*\(|\s|(?=\n))/);if(!z||z.index===void 0)break;let q=z.index,W,U,j=Y.slice(q+6),_=N2(j);if(_)W=_.value,U=q+6+_.consumed;else U=q+6;let B=J(Y,"guest","endguest",U);if(B===-1){console.warn(`[stx] @guest directive at position ${q} has no matching @endguest \u2014 the block was skipped.`);break}let H=Y.slice(U,B),L=X(H,"guest","endguest"),V;if(!Z.auth)V=!0;else V=W?R1(`!auth?.check || !auth?.user?.[${W}]`,Z):R1("!auth?.check",Z);let O;if(L!==-1){let F=H.slice(0,L),w=H.slice(L+5);O=V?F:w}else O=V?H:"";Y=Y.substring(0,q)+O+Y.substring(B+9),K=!0}}function Q(K,z,q){if(Z.userCan&&typeof Z.userCan[K]==="boolean")return Z.userCan[K];if(Z.permissions?.check&&typeof Z.permissions.check==="function")try{let W=[K];if(z)W.push(z);if(q){let U=R1(q,Z);W.push(U)}return Z.permissions.check(...W)}catch{return!1}return!1}function G(K){let z=K.match(/^\s*\(\s*'([^']*)'(?:,\s*'([^']*)')?(?:,\s*([^)]*))?\)/);if(!z)return null;return{ability:z[1],type:z[2],id:z[3]?.trim(),paramsEnd:z[0].length}}for(let K of["can","cannot"]){let z=`end${K}`,q=K==="can"?"elsecan":"elsecannot",W=!0;while(W){W=!1;let U=Y.match(new RegExp(`@${K}\\s*\\(`));if(!U||U.index===void 0)break;let j=U.index,_=Y.slice(j+`@${K}`.length),B=G(_);if(!B)break;let H=j+`@${K}`.length+B.paramsEnd,L=J(Y,K,z,H);if(L===-1){console.warn(`[stx] @${K} directive at position ${j} has no matching @${z} \u2014 the block was skipped.`);break}let V=Y.slice(H,L),O=[],F=0,w=new RegExp(`@${K}\\s*\\(`,"g"),A=new RegExp(`@${z}(?![a-z])`,"g"),R=new RegExp(`@${q}\\s*\\(`,"g"),N=/@else(?![a-z])/g,M=[],T;while((T=w.exec(V))!==null)M.push({pos:T.index,type:"open"});while((T=A.exec(V))!==null)M.push({pos:T.index,type:"close"});while((T=R.exec(V))!==null)M.push({pos:T.index,type:"elseDirective"});while((T=N.exec(V))!==null)M.push({pos:T.index,type:"else"});M.sort((k,C)=>k.pos-C.pos);for(let k of M){if(k.type==="open"){F++;continue}if(k.type==="close"){F--;continue}if(F===0)O.push(k)}let I=[],E=0;for(let k=0;k<O.length;k++){let C=O[k];if(I.push({content:V.slice(E,C.pos),ability:void 0}),C.type==="elseDirective"){let x=V.slice(C.pos+`@${q}`.length),f=G(x);if(f){I[I.length-1]={content:V.slice(E,C.pos)},E=C.pos+`@${q}`.length+f.paramsEnd,I.push({content:"",ability:f.ability,type:f.type,id:f.id}),I.pop();let d=O[k+1],c=d?d.pos:V.length;I.push({content:V.slice(E,c),ability:f.ability,type:f.type,id:f.id}),E=c}}else E=C.pos+5}if(E<V.length){let k=I[I.length-1];if(O.length>0&&O[O.length-1].type==="else")I.push({content:V.slice(E),isFinalElse:!0});else if(I.length===0)I.push({content:V.slice(E)})}let D=Q(B.ability,B.type,B.id),y=K==="can"?D:!D,S="";if(y)S=I[0]?.content||"";else{let k=!1;for(let C=1;C<I.length;C++){let x=I[C];if(x.isFinalElse){S=x.content,k=!0;break}if(x.ability){let f=Q(x.ability,x.type,x.id);if(K==="can"?f:!f){S=x.content,k=!0;break}}}if(!k&&I.length>0){let C=I[I.length-1];if(C.isFinalElse)S=C.content}}Y=Y.substring(0,j)+S+Y.substring(L+`@${z}`.length),W=!0}}return Y}function C3($,Z,Y){let J=$;function X(Q,G,K,z,q){let W=!0;while(W){W=!1;let U=new RegExp(`@${G}\\s*\\(`),j=Q.match(U);if(!j||j.index===void 0)break;let _=j.index,B=V1(Q,_+`@${G}`.length);if(!B)break;let H=B.endPos,L=f1(Q,G,K,H);if(L===-1){console.warn(`[stx] @${G} directive at position ${_} has no matching @${K} \u2014 the block was skipped.`);break}let V=Q.slice(H,L),O=B.expression,F=-1,w=0,A=0;while(A<V.length){let R=V.indexOf("@",A);if(R===-1)break;let N=V.substring(R);if(/^@(?:if|unless|isset|empty)\s*\(/.test(N)){w++,A=R+1;continue}if(/^@(?:endif|endunless|endisset|endempty)(?![a-z])/.test(N)){w--,A=R+1;continue}if(w===0&&/^@else(?![a-z])/.test(N)){F=R;break}A=R+1}try{let R=z(O.trim()),N;if(F!==-1){let M=V.slice(0,F),T=V.slice(F+5);N=R?M:T}else N=R?V:"";Q=Q.substring(0,_)+N+Q.substring(L+`@${K}`.length),W=!0}catch(R){let N=R instanceof Error?R.message:String(R),M=Z0(q,`Error processing @${G} directive: ${N}`,r.EVALUATION_ERROR);Q=Q.substring(0,_)+M+Q.substring(L+`@${K}`.length);break}}return Q}return J=X(J,"isset","endisset",(Q)=>{let G=R1(Q,Z);return G!==void 0&&G!==null},"Isset"),J=X(J,"empty","endempty",(Q)=>{let G=R1(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"),J}function v3($,Z,Y){let J=$,X="development";function Q(G,K,z,q){let W=new RegExp(`@${K}(?![a-z])`,"g"),U=new RegExp(`@${z}(?![a-z])`,"g"),j=new RegExp(`^@${K}(?![a-z])`),_=new RegExp(`^@${z}(?![a-z])`),B=G,H=!0;while(H){H=!1,W.lastIndex=0;let L=W.exec(B);if(!L)break;let V=L.index,O=V+L[0].length;if(K==="env"){let D=B.substring(O).match(/^\s*\(\s*(['"])([^'"]+)\1\s*\)/);if(!D)break;O+=D[0].length,q=X===D[2]}let F=1,w=O,A=-1;while(F>0&&w<B.length){W.lastIndex=w,U.lastIndex=w;let D=W.exec(B),y=U.exec(B),S=D?D.index:1/0,k=y?y.index:1/0;if(S<k)F++,w=S+D[0].length;else if(k<1/0){if(F--,F===0){A=k;break}w=k+y[0].length}else break}if(A===-1){console.warn(`[stx] @${K} directive at position ${V} has no matching @${z} \u2014 the block was skipped.`);break}let R=B.substring(O,A),N=-1,M=0,T=0;while(T<R.length){let D=R.indexOf("@",T);if(D===-1)break;let y=R.substring(D);if(j.test(y)){M++,T=D+1;continue}if(_.test(y)){M--,T=D+1;continue}if(M===0&&/^@else(?![a-z])/.test(y)){N=D;break}T=D+1}let I;if(N!==-1){let D=R.slice(0,N),y=R.slice(N+5);I=q?D:y}else I=q?R:"";let E=`@${z}`.length;B=B.substring(0,V)+I+B.substring(A+E),H=!0}return B}return J=Q(J,"env","endenv",!1),J=Q(J,"production","endproduction",X==="production"),J=Q(J,"development","enddevelopment",X==="development"),J=Q(J,"staging","endstaging",X==="staging"),J=Q(J,"testing","endtesting",X==="testing"),J}var S4=b(()=>{R2();z1();b$();A0()});function T2($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function y4($,Z){if(!$)return Z?.nonceGenerator?.()??T2();let Y=M2.get($);if(!Y)Y=Z?.nonceGenerator?.()??T2(),M2.set($,Y);return Y}function pq($,Z){let Y=[];for(let[J,X]of Object.entries($)){if(X===void 0||X===null)continue;if(typeof X==="boolean"){if(X)Y.push(J);continue}if(Array.isArray(X)){let Q=[...X];if(Z&&(J==="script-src"||J==="style-src"))Q=Q.filter((G)=>!G.startsWith("'nonce-")),Q.push(`'nonce-${Z}'`);if(Q.length>0)Y.push(`${J} ${Q.join(" ")}`)}}return Y.join("; ")}function I2($,Z){return`<meta http-equiv="Content-Security-Policy" content="${pq($,Z).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}">`}function D2($,Z,Y){if(!Z.enabled||!Z.addMetaTag)return $;if($.includes('http-equiv="Content-Security-Policy"'))return $;if(!$.includes("<head>")&&!$.includes("<head "))return $;let J=Z.useNonce?y4(Y,Z):void 0,X=I2(Z.directives,J);return $.replace(/<head([^>]*)>/,`<head$1>
9122
+ ${X}`)}function E2($,Z){let Y=$;return Y=Y.replace(/<script(?![^>]*\ssrc=)([^>]*)>/gi,(J,X)=>{if(X.includes("nonce="))return J;return`<script nonce="${Z}"${X}>`}),Y=Y.replace(/<style([^>]*)>/gi,(J,X)=>{if(X.includes("nonce="))return J;return`<style nonce="${Z}"${X}>`}),Y}function k2($,Z,Y,J){let X=$,Q=J.csp;if(X=X.replace(/@csp\b/g,()=>{if(!Q?.enabled||!Q.directives)return"<!-- CSP not configured -->";let G=Q.useNonce?y4(Z,Q):void 0;return I2(Q.directives,G)}),X=X.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return y4(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=y4(Z,Q);return X}var M2;var b2=b(()=>{M2=new WeakMap});import lq from"crypto";function iq($=cq){let Z=lq.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return x3=Z,Z}function nq(){if(!x3)iq();return x3}function oq($=S2){let Z=nq();return`<input type="hidden" name="${$}" value="${Z}">`}function y2($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,Y,J)=>{return oq(J||S2)})}var cq=40,S2="_token",x3=null;var P2=()=>{};async function C2($,Z,Y,J){if(!J.customDirectives||J.customDirectives.length===0)return $;let X=$;for(let Q of J.customDirectives){if(!Q.name||typeof Q.handler!=="function"){if(J.debug)console.warn("Invalid custom directive:",Q);continue}if(Q.hasEndTag)X=await sq(X,Q,Z,Y,J);else X=await rq(X,Q,Z,Y,J)}return X}async function sq($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=`@${Q}`,z=`@end${Q}`,q=$,W=J5(`${K}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${z}`,"g"),U=[],j=W.exec(q);while(j!==null){let[_,B="",H=""]=j,L=j.index||0;try{let V=B?v2(B):[],O=H.trim(),F=await G(O,V,Y,J);U.push({original:_,processed:F,startIndex:L})}catch(V){let O=V instanceof Error?V.message:String(V);if(X.debug)console.error(`Error processing custom directive @${Q}:`,V);U.push({original:_,processed:Z0("CustomDirective",`Error in @${Q}${B?`(${B})`:""}: ${O}`,r.EVALUATION_ERROR),startIndex:L})}j=W.exec(q)}for(let _=U.length-1;_>=0;_--){let{original:B,processed:H}=U[_];q=q.replace(B,H)}return q}async function rq($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=$,z=J5(`@${Q}\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\)`,"g"),q=[],W=z.exec(K);while(W!==null){let[_,B=""]=W,H=W.index||0;try{let L=v2(B),V=await G("",L,Y,J);q.push({original:_,processed:V,startIndex:H})}catch(L){let V=L instanceof Error?L.message:String(L);if(X.debug)console.error(`Error processing custom directive @${Q}:`,L);q.push({original:_,processed:Z0("CustomDirective",`Error in @${Q}(${B}): ${V}`,r.EVALUATION_ERROR),startIndex:H})}W=z.exec(K)}let U=J5(`@${Q}(?!\\w)(?!\\s*\\()`,"g"),j=U.exec(K);while(j!==null){let[_]=j,B=j.index||0;try{let H=await G("",[],Y,J);q.push({original:_,processed:H,startIndex:B})}catch(H){let L=H instanceof Error?H.message:String(H);if(X.debug)console.error(`Error processing custom directive @${Q}:`,H);q.push({original:_,processed:Z0("CustomDirective",`Error in @${Q}: ${L}`,r.EVALUATION_ERROR),startIndex:B})}j=U.exec(K)}for(let _=q.length-1;_>=0;_--){let{original:B,processed:H}=q[_];K=K.replace(B,H)}return K}function v2($){if(!$.trim())return[];let Z=[],Y="",J=!1,X="";for(let Q=0;Q<$.length;Q++){let G=$[Q];if((G==='"'||G==="'")&&(Q===0||$[Q-1]!=="\\"))if(!J)J=!0,X=G;else if(G===X)J=!1;else Y+=G;else if(G===","&&!J)Z.push(Y.trim()),Y="";else Y+=G}if(Y.trim())Z.push(Y.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 x2=b(()=>{z1();X5()});function i1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function tq($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,Y=Z.appearance,J=Z.colorMode;if(i1(Z.storageKey,"storageKey"),!Y||typeof Y!=="object"||Array.isArray(Y))throw Error("@appearanceBootstrap appearance must be an object");if(!J||typeof J!=="object"||Array.isArray(J))throw Error("@appearanceBootstrap colorMode must be an object");if(i1(Y.key,"appearance.key"),i1(Y.attribute,"appearance.attribute"),i1(Y.default,"appearance.default"),i1(J.key,"colorMode.key"),i1(J.attribute,"colorMode.attribute"),i1(J.default,"colorMode.default"),!g2.test(Y.key)||!g2.test(J.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!f2.test(Y.attribute)||!f2.test(J.attribute))throw Error("@appearanceBootstrap attributes must be lowercase data attribute names");if(!Array.isArray(Y.allowed)||Y.allowed.length===0||Y.allowed.some((X)=>typeof X!=="string"||X.length===0))throw Error("@appearanceBootstrap appearance.allowed must contain one or more strings");if(!Y.allowed.includes(Y.default))throw Error("@appearanceBootstrap appearance.default must be in appearance.allowed");if(!aq.has(J.default))throw Error("@appearanceBootstrap colorMode.default must be light, dark, or system");return{storageKey:Z.storageKey,appearance:{key:Y.key,attribute:Y.attribute,allowed:[...new Set(Y.allowed)],default:Y.default},colorMode:{key:J.key,attribute:J.attribute,default:J.default}}}function eq($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function $W($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${eq($)};const root=document.documentElement;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{}const selectedAppearance=config.appearance.allowed.includes(stored[config.appearance.key])?stored[config.appearance.key]:config.appearance.default;const selectedMode=["light","dark","system"].includes(stored[config.colorMode.key])?stored[config.colorMode.key]:config.colorMode.default;root.setAttribute("data-"+config.appearance.attribute,selectedAppearance);root.setAttribute("data-"+config.colorMode.attribute,selectedMode);let dark=selectedMode==="dark";if(selectedMode==="system"){try{dark=matchMedia("(prefers-color-scheme: dark)").matches}catch{dark=false}}root.classList.toggle("dark",dark);root.dataset.theme=dark?"dark":"light"}());</script>`}function ZW($,Z){let Y=1,J=null,X=!1;for(let Q=Z+1;Q<$.length;Q++){let G=$[Q];if(X){X=!1;continue}if(J){if(G==="\\")X=!0;else if(G===J)J=null;continue}if(G==='"'||G==="'"||G==="`"){J=G;continue}if(G==="(")Y++;else if(G===")"&&--Y===0)return Q}return-1}function h2($,Z){let Y=$,J=/@appearanceBootstrap\s*\(/g,X;while((X=J.exec(Y))!==null){let Q=X.index+X[0].length-1,G=ZW(Y,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let K=Y.slice(Q+1,G).trim(),z=Y0(`(${K})`,Z),q=$W(tq(z));Y=Y.slice(0,X.index)+q+Y.slice(G+1),J.lastIndex=X.index+q.length}return Y}var f2,g2,aq;var d2=b(()=>{A0();f2=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,g2=/^[A-Za-z_$][\w$]*$/,aq=new Set(["light","dark","system"])});import YW from"crypto";function T0($){return String($??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function P4($,Z,Y,J){let X=$||Z;return Y?`${X} ${J}`:X}function JW(){return YW.randomUUID()}function C4($,Z){let Y=$;return Y=Y.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let J=JW();Z.csrf={token:J}}if(Z.csrf.field)return Z.csrf.field;if(Z.csrf.token)return`<input type="hidden" name="_token" value="${T0(Z.csrf.token)}">`;return'<input type="hidden" name="_token" value="">'}),Y=Y.replace(/@method\(['"]([^'"]+)['"]\)/g,(J,X)=>{let Q=X.toUpperCase();if(X&&!["GET","POST"].includes(Q))return`<input type="hidden" name="_method" value="${T0(Q)}">`;return J}),Y}function p2($,Z,Y=u2){let J=$;return J=J.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(X,Q,G,K,z,q="")=>{let W=Q||G||"POST",U=K||z||"",j=N1(q),_=W.toUpperCase(),B=["GET","POST"].includes(_)?_:"POST",H=`<form method="${T0(B)}" action="${T0(U)}"${j?` ${j}`:""}>`;if(H+=`
9123
+ ${C4("@csrf",Z)}`,!["GET","POST"].includes(_))H+=`
9124
+ ${C4(`@method('${_}')`,Z)}`;return H}),J=J.replace(/@endform/g,"</form>"),J=J.replace(/@input\(\s*(?:'([^']+)'|"([^"]+)")\s*(?:,\s*(?:(?:'([^']*)'|"([^"]*)")\s*)?)?(?:,\s*\{([^}]+)\})?\s*\)/g,(X,Q,G,K,z,q="")=>{let W=Q||G||"",U=K||z||"",j=N1(q),_=J$(W,Z),B=_!==void 0&&_!==null?_:U||"",H=j.match(/type=['"]([^'"]+)['"]/i),L=H?H[1]:"text",V=X$(W,Z),O=j.match(/class=['"]([^'"]+)['"]/i),F=P4(O?O[1]:"",Y.input,V,Y.inputError),w=j.replace(/class=['"][^'"]+['"]/i,"");return w=w.replace(/type=['"][^'"]+['"]/i,""),`<input type="${T0(L)}" name="${T0(W)}" value="${T0(B)}" class="${F}"${w?` ${w}`:""}>`}),J=J.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(X,Q,G="",K="")=>{let z=N1(G),q=J$(Q,Z)||K.trim(),W=X$(Q,Z),U=z.match(/class=['"]([^'"]+)['"]/i),j=P4(U?U[1]:"",Y.input,W,Y.inputError),_=z.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${T0(Q)}" class="${j}"${_?` ${_}`:""}>${T0(q)}</textarea>`}),J=J.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(X,Q,G="",K)=>{let z=N1(G),q=J$(Q,Z),W=X$(Q,Z),U=z.match(/class=['"]([^'"]+)['"]/i),j=P4(U?U[1]:"",Y.input,W,Y.inputError),_=z.replace(/class=['"][^'"]+['"]/i,""),B=K;if(q!==void 0)B=K.replace(/(<option[^>]*value=['"]([^'"]+)['"][^>]*>)/gi,(H,L,V)=>{if((Array.isArray(q)?q.some((F)=>String(F)===V):String(q)===V)&&!L.includes("selected"))return L.replace(/(<option)/,"$1 selected");return H});return`<select name="${T0(Q)}" class="${j}"${_?` ${_}`:""}>${B}</select>`}),J=J.replace(/@checkbox\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G="1",K="")=>{let z=N1(K),q=J$(Q,Z),W=q!==void 0&&(Array.isArray(q)?q.some((B)=>String(B)===G):q===!0||String(q)===G),U=z.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,_=z.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${T0(Q)}" value="${T0(G)}" class="${j}"${W?" checked":""}${_?` ${_}`:""}>`}),J=J.replace(/@radio\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G,K="")=>{let z=N1(K),q=J$(Q,Z),W=q!==void 0&&q===G,U=z.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,_=z.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${T0(Q)}" value="${T0(G)}" class="${j}"${W?" checked":""}${_?` ${_}`:""}>`}),J=J.replace(/@file\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G="")=>{let K=N1(G),z=K.match(/accept=['"]([^'"]+)['"]/i),q=z?z[1]:"",W=K.includes("multiple"),U=X$(Q,Z),j=K.match(/class=['"]([^'"]+)['"]/i),_=P4(j?j[1]:"",Y.input,U,Y.inputError),B=K.replace(/class=['"][^'"]+['"]/gi,"").replace(/accept=['"][^'"]+['"]/gi,"").replace(/\bmultiple\b/gi,"").trim(),H=[`<input type="file" name="${T0(Q)}"`,`class="${_}"`];if(q)H.push(`accept="${T0(q)}"`);if(W)H.push("multiple");if(B)H.push(B);return`${H.join(" ")}>`}),J=J.replace(/@label\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endlabel/g,(X,Q,G="",K)=>{let z=N1(G),q=z.match(/class=['"]([^'"]+)['"]/i),W=q?q[1]:Y.label,U=z.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${T0(Q)}" class="${W}"${U?` ${U}`:""}>${K}</label>`}),J}function l2($,Z,Y=u2){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(J,X,Q)=>{try{if(X$(X,Z))return Q.replace(/\{\{([^}]+)\}\}/g,(G,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return m2(X,Z);if(K.trim().includes("errors.first")||K.trim().includes("$errors.first")){if(typeof Z.errors?.first==="function")return Z.errors.first(X);return m2(X,Z)}let z=K.trim();if(G0(z)){let q=Y0(z,Z);return q!==void 0?String(q):z}return z}catch{return K}});return""}catch(G){return console.error("Error processing @error directive:",G),J}})}function X$($,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 m2($,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 Y=Z.errors[$];return Array.isArray(Y)?Y[0]:String(Y)}return""}function J$($,Z){let Y;if(Z.old&&typeof Z.old==="function")return Z.old($);if(Z.old&&typeof Z.old==="object")return Z.old[$];if($.endsWith("[]")){let J=$.slice(0,-2);if(Y=Z[J],Y!==void 0)return Y}return Z[$]}function N1($){if(!$.trim())return"";let Z=[],Y=$.trim(),J=/([\w-]+)\s*:\s*(['"]?)([^,'"]*)\2(?:\s*,\s*|\s*$)/g,X;while((X=J.exec(Y))!==null){let[,Q,,G]=X;Z.push(`${Q}="${G.trim()}"`)}return Z.join(" ")}var u2;var c2=b(()=>{A0();u2={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"}});import h3 from"path";async function XW(){if(Q$!==void 0)return Q$;try{Q$=(await import("@stacksjs/ts-i18n")).loadLocale??null}catch{Q$=null}return Q$}function QW($,Z=0){if(Z<=0)return!1;return Date.now()-$.loadedAt>Z}async function GW($,Z){if({...u3,...Z.i18n}.cache&&d3[$]){let X=d3[$],Q=Z.i18n?.cacheMaxAge??0;if(!QW(X,Q))return X.translations}if(G$[$]?.state==="loading")return G$[$].promise;f3[$]="loading";let J=m3($,Z).then((X)=>{return f3[$]="loaded",delete G$[$],X}).catch((X)=>{throw f3[$]="error",G$[$]={promise:J,state:"error",error:X instanceof Error?X:Error(String(X))},X});return G$[$]={promise:J,state:"loading"},J}async function m3($,Z){let Y={...u3,...Z.i18n},J=h3.isAbsolute(Y.translationsDir)?Y.translationsDir:h3.resolve(Z.root||process.cwd(),Y.translationsDir);try{let X=await XW(),Q=X?await X($,{translationsDir:J,defaultLocale:Y.defaultLocale,sources:UW(Y.format)}):await KW($,Y,J);if(Q===void 0){if($!==Y.defaultLocale)return m3(Y.defaultLocale,Z);return{}}let G=Q;if(Y.cache)d3[$]={translations:G,loadedAt:Date.now(),locale:$};return G}catch(X){if(Z.debug)console.error(`Error loading translation file for locale "${$}":`,X);if($!==Y.defaultLocale)return m3(Y.defaultLocale,Z);return{}}}async function KW($,Z,Y){let J=h3.join(Y,`${$}${zW(Z.format)}`);try{let X=await import(J);return X.default||X}catch(X){try{let Q=await Bun.file(J).text();if(Z.format==="yaml"||Z.format==="yml")return qW(Q);if(Z.format==="json")return JSON.parse(Q);throw X}catch{return}}}function zW($){switch($){case"yaml":return".yaml";case"yml":return".yml";case"js":return".js";case"ts":return".ts";case"json":default:return".json"}}function qW($){let Z={},Y=$.split(`
9125
+ `),J=[{obj:Z,indent:-1}];for(let X of Y){let Q=X.replace(/#.*$/,"").trimEnd();if(!Q.trim())continue;let G=Q.search(/\S/);if(G===-1)continue;while(J.length>1&&J[J.length-1].indent>=G)J.pop();let K=J[J.length-1].obj,z=Q.match(/^(\s*)(\S[^:]*):\s*(.*)$/);if(z){let[,,q,W]=z,U=q.trim(),j=W.trim();if(j==="")K[U]={},J.push({obj:K[U],indent:G});else K[U]=WW(j)}}return Z}function WW($){if($.startsWith("'")&&$.endsWith("'")||$.startsWith('"')&&$.endsWith('"'))return $.slice(1,-1);let Z=$.toLowerCase();if(Z==="true"||Z==="yes")return!0;if(Z==="false"||Z==="no")return!1;if(Z==="null"||Z==="~")return null;let Y=Number($);if(!Number.isNaN(Y)&&$!=="")return Y;return $}function UW($){switch($){case"yaml":case"yml":return["yaml"];case"js":case"ts":return["ts"];case"json":default:return["json"]}}async function jW($,Z){return GW($,Z)}function _W($,Z){for(let Y of $){let J=Y.trim(),X=J.match(/^\{(\d+)\}\s*(.*)$/);if(X){let G=Number.parseInt(X[1],10);if(Z===G)return X[2];continue}let Q=J.match(/^\[(\d+),(\d+|\*)\]\s*(.*)$/);if(Q){let G=Number.parseInt(Q[1],10),K=Q[2]==="*"?Number.POSITIVE_INFINITY:Number.parseInt(Q[2],10);if(Z>=G&&Z<=K)return Q[3];continue}}if($.length===2)return Z===1?$[0].trim():$[1].trim();if(Z<$.length)return $[Z].trim();return $[$.length-1].trim()}function BW($,Z={}){return o2($,Z)}function o2($,Z){let Y="",J=0;while(J<$.length)if($[J]==="{"){let X=HW($,J);if(X===-1){Y+=$[J],J++;continue}let Q=$.slice(J+1,X);Y+=OW(Q,Z),J=X+1}else if($[J]==="'"&&J+1<$.length)if($[J+1]==="'")Y+="'",J+=2;else if($[J+1]==="{"||$[J+1]==="}")Y+=$[J+1],J+=2;else Y+=$[J],J++;else Y+=$[J],J++;return Y}function HW($,Z){let Y=0;for(let J=Z;J<$.length;J++)if($[J]==="{")Y++;else if($[J]==="}"){if(Y--,Y===0)return J}return-1}function OW($,Z){let Y=LW($);if(Y.length===0)return`{${$}}`;let J=Y[0].trim(),X=Z[J];if(Y.length===1)return X!==void 0?String(X):`{${J}}`;switch(Y[1].trim().toLowerCase()){case"plural":return FW(X,Y.slice(2).join(","),Z);case"select":return wW(X,Y.slice(2).join(","));case"selectordinal":return AW(X,Y.slice(2).join(","));case"number":return NW(X,Y[2]?.trim());case"date":return MW(X,Y[2]?.trim());case"time":return TW(X,Y[2]?.trim());default:return X!==void 0?String(X):`{${$}}`}}function LW($){let Z=[],Y="",J=0;for(let X=0;X<$.length;X++){let Q=$[X];if(Q==="{")J++,Y+=Q;else if(Q==="}")J--,Y+=Q;else if(Q===","&&J===0)Z.push(Y),Y="";else Y+=Q}if(Y)Z.push(Y);return Z}function FW($,Z,Y){let J=Number($)||0,X=p3(Z),Q=`=${J}`;if(X[Q])return g3(X[Q],J,Y);let G=VW(J);if(X[G])return g3(X[G],J,Y);if(X.other)return g3(X.other,J,Y);return String(J)}function g3($,Z,Y){let J=$.replace(/#/g,String(Z));return o2(J,Y)}function VW($){let Z=Math.abs($),Y=Math.floor(Z),J=String($).includes(".")?String($).split(".")[1].length:0;if(Y===1&&J===0)return"one";return"other"}function wW($,Z){let Y=String($||""),J=p3(Z);if(J[Y])return J[Y];return J.other||String($)}function AW($,Z){let Y=Number($)||0,J=p3(Z),X=RW(Y);if(J[X])return J[X].replace(/#/g,String(Y));if(J.other)return J.other.replace(/#/g,String(Y));return String(Y)}function RW($){let Z=Math.abs($),Y=Z%10,J=Z%100;if(Y===1&&J!==11)return"one";if(Y===2&&J!==12)return"two";if(Y===3&&J!==13)return"few";return"other"}function p3($){let Z={},Y=/(\w+|=\d+)\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g,J=Y.exec($);while(J!==null)Z[J[1]]=J[2],J=Y.exec($);return Z}function NW($,Z){let Y=Number($);if(Number.isNaN(Y))return String($);switch(Z){case"integer":return Math.floor(Y).toLocaleString();case"percent":return`${(Y*100).toFixed(0)}%`;case"currency":return Y.toLocaleString(void 0,{style:"currency",currency:"USD"});default:return Y.toLocaleString()}}function MW($,Z){let Y=$ instanceof Date?$:new Date(String($));if(Number.isNaN(Y.getTime()))return String($);let J={};switch(Z){case"short":J.dateStyle="short";break;case"medium":J.dateStyle="medium";break;case"long":J.dateStyle="long";break;case"full":J.dateStyle="full";break;default:J.dateStyle="medium"}return Y.toLocaleDateString(void 0,J)}function TW($,Z){let Y=$ instanceof Date?$:new Date(String($));if(Number.isNaN(Y.getTime()))return String($);let J={};switch(Z){case"short":J.timeStyle="short";break;case"medium":J.timeStyle="medium";break;case"long":J.timeStyle="long";break;case"full":J.timeStyle="full";break;default:J.timeStyle="short"}return Y.toLocaleTimeString(void 0,J)}function IW($){return/\{[^}]+,\s*(?:plural|select|selectordinal|number|date|time)\s*,/.test($)}function i2($,Z,Y=!0,J={}){let X=$.split("."),Q=Z;for(let K of X){if(Q===void 0||Q===null)break;Q=Q[K]}if(Q===void 0||Q===null)return Y?$:"";let G=String(Q);if(IW(G))return BW(G,J);if(G.includes("|")&&"count"in J){let K=Number(J.count),z=G.split("|");G=_W(z,K)}for(let[K,z]of Object.entries(J)){let q=K.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");G=G.replace(new RegExp(`:${q}`,"g"),String(z))}return G}async function s2($,Z,Y,J){let X=$,Q=/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)([\s\S]*?)@endtranslate/g,G={...u3,...J.i18n},K=await jW(G.locale,J);Z.__translations=K,Z.__locale=G.locale,Z.__i18nConfig=G,X=await n2(X,Q,async(W,U,j,_,B)=>{try{let H={};if(j)try{let V=[()=>JSON.parse(j),()=>{let O=`{"data":${j}}`,F=JSON.parse(O);return typeof F.data==="object"?F.data:{}},()=>{return M0(j,Z)}];for(let O of V)try{if(H=O(),Object.keys(H).length>0)break}catch{}}catch(V){if(J.debug)console.error("Error parsing parameters for @translate directive:",V)}return i2(U,K,G.fallbackToKey,H)||_.trim()}catch(H){if(J.debug)console.error("Error processing @translate directive:",H);return Z0("Translate",`Error in @translate('${U}'): ${H instanceof Error?H.message:String(H)}`,r.EVALUATION_ERROR)}});let z=/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]+\})\s*)?\)/g;if(J.debug){console.warn(`Processing translations in template. Sections: ${X.includes("<h2>Translation with Parameters</h2>")?"Parameters section found":"Parameters section missing"}`);let W=[...X.matchAll(z)];console.warn(`Found ${W.length} @translate matches`),W.forEach((U,j)=>console.warn(`Match ${j}: ${U[0]}, Key: ${U[1]}, Params: ${U[2]||"none"}`))}return X=await n2(X,/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)/g,async(W,U,j,_)=>{try{let B={};if(j)try{let H=[()=>JSON.parse(j),()=>{let L=`{"data":${j}}`,V=JSON.parse(L);return typeof V.data==="object"?V.data:{}},()=>{return M0(j,Z)}];for(let L of H)try{if(B=L(),Object.keys(B).length>0)break}catch{}}catch(H){if(J.debug)console.error("Error parsing parameters for @translate directive:",H)}return i2(U,K,G.fallbackToKey,B)}catch(B){if(J.debug)console.error("Error processing @translate directive:",B);return Z0("Translate",`Error in @translate('${U}'): ${B instanceof Error?B.message:String(B)}`,r.EVALUATION_ERROR)}}),X}async function n2($,Z,Y){let J=[];return $.replace(Z,(Q,...G)=>{let K=Y(Q,...G).then((z)=>({match:Q,replacement:z}));return J.push(K),Q}),(await Promise.all(J)).reduce((Q,{match:G,replacement:K})=>Q.replace(G,K),$)}var Q$,u3,d3,G$,f3;var r2=b(()=>{z1();A0();u3={defaultLocale:"en",locale:"en",translationsDir:"translations",format:"yaml",fallbackToKey:!0,cache:!0},d3={},G$={},f3={}});var i3={};e(i3,{streamingSuspenseDirective:()=>e2,streamToResponse:()=>gW,streamTemplateSimple:()=>CW,streamTemplate:()=>EW,renderStreamingPage:()=>bW,registerStreamingDirectives:()=>xW,processStreamDirectives:()=>yW,processSectionDirectives:()=>fW,islandDirective:()=>$Y,generateHydrationRuntime:()=>hW,extractStreamBoundaries:()=>PW,createStreamRenderer:()=>vW,buildSuspenseResolveScript:()=>c3,SUSPENSE_RESOLVER_RUNTIME:()=>t2});import v4 from"path";function DW($){let Z=[],Y=0,J;a2.lastIndex=0;while((J=a2.exec($))!==null){if(J.index>Y){let G=$.slice(Y,J.index);if(G.trim())Z.push({type:Z.length===0?"shell":"content",content:G})}let X=J[1],Q=J[2];Z.push({type:"suspense",name:X,content:Q}),Y=J.index+J[0].length}if(Y<$.length){let X=$.slice(Y);if(X.trim())Z.push({type:Z.length===0?"shell":"content",content:X})}if(Z.length===0)Z.push({type:"shell",content:$});return Z}async function EW($,Z={},Y={}){let J={...p1,...Y,streaming:{...l3,...Y.streaming}},X=J.streaming?.bufferSize||16384;return new ReadableStream({async start(Q){try{let G=await Bun.file($).text(),K=G.match(/<script\b[^>]*\bserver\b[^>]*>([\s\S]*?)<\/script>/i),z=K?K[1]:"",q=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),W={...Z,__filename:$,__dirname:v4.dirname($)};if(z.trim())await x1(z,W,$);let U=DW(q),j=new Set;if(!U.some((B)=>B.type==="suspense")){let B=J.streaming?.strategy||"auto",H=new RegExp(n1.source,"g");if(!(B!=="manual"&&H.test(q))){let V=await L0(q,W,$,J,j);for(let O=0;O<V.length;O+=X)Q.enqueue(V.slice(O,O+X)),await new Promise((F)=>setTimeout(F,0))}else{let V=[],O=new RegExp(n1.source,"g"),F;while((F=O.exec(q))!==null)V.push({name:F[1],content:F[2],start:F.index,end:F.index+F[0].length});let w=0;for(let A of V){if(A.start>w){let N=q.slice(w,A.start);if(N.trim()){let M=await L0(N,W,$,J,j);Q.enqueue(M),await new Promise((T)=>setTimeout(T,0))}}let R=await L0(A.content,W,$,J,j);Q.enqueue(R),await new Promise((N)=>setTimeout(N,0)),w=A.end}if(w<q.length){let A=q.slice(w);if(A.trim()){let R=await L0(A,W,$,J,j);Q.enqueue(R)}}}}else{let B=new Map;for(let L of U)if(L.type==="shell"||L.type==="content"){let V=await L0(L.content,W,$,J,j);Q.enqueue(V)}else if(L.type==="suspense"&&L.name){let V=`stx-suspense-${L.name}`;Q.enqueue(`<div id="${V}" data-suspense="${L.name}" style="display:contents;">
9108
9126
  <template data-suspense-fallback>Loading...</template>
9109
- </div>`),_.set(L.name,L0(L.content,W,$,J,j))}Q.enqueue(`
9127
+ </div>`),B.set(L.name,L0(L.content,W,$,J,j))}Q.enqueue(`
9110
9128
  <script>
9111
9129
  (function() {
9112
9130
  window.__stxSuspense = window.__stxSuspense || {
@@ -9122,13 +9140,13 @@ ${X}`)}function E2($,Z){let Y=$;return Y=Y.replace(/<script(?![^>]*\ssrc=)([^>]*
9122
9140
  }
9123
9141
  };
9124
9142
  })();
9125
- </script>`);let H=Array.from(_.entries()).map(async([L,V])=>{Q.enqueue(await c3(L,V))});await Promise.all(H)}Q.close()}catch(G){Q.error(G)}}})}async function c3($,Z){try{let J=(await Z).replace(/`/g,"\\`").replace(/<\/script>/gi,"<\\/script>");return`
9143
+ </script>`);let H=Array.from(B.entries()).map(async([L,V])=>{Q.enqueue(await c3(L,V))});await Promise.all(H)}Q.close()}catch(G){Q.error(G)}}})}async function c3($,Z){try{let J=(await Z).replace(/`/g,"\\`").replace(/<\/script>/gi,"<\\/script>");return`
9126
9144
  <script>
9127
9145
  window.__stxSuspense.resolve('${$}', \`${J}\`);
9128
9146
  </script>`}catch(Y){let J=Y instanceof Error?Y.message:String(Y);return`
9129
9147
  <script>
9130
9148
  window.__stxSuspense.resolve('${$}', '<div class="stx-error">Error loading content: ${s0(J)}</div>');
9131
- </script>`}}function kW($,Z,Y){if(!Z||Z<=0)return $;let J,X=new Promise((Q,G)=>{J=setTimeout(()=>G(Error(`streaming boundary "${Y}" timed out after ${Z}ms`)),Z)});return Promise.race([$,X]).finally(()=>clearTimeout(J))}function bW($,Z=[],Y={}){let J=Y.timeoutMs??0;return new ReadableStream({async start(X){try{if(X.enqueue($),Z.length>0)X.enqueue(t2),await Promise.all(Z.map(async(Q)=>{let G=kW(Q.render(),J,Q.id);X.enqueue(await c3(Q.id,G))}));X.close()}catch(Q){X.error(Q)}}})}function yW($,Z){return $.replace(SW,(Y,J,X)=>{let Q=J.trim(),G=X.split(/@fallback/i),K=G[0].trim(),z=G.length>1?G.slice(1).join("@fallback").trim():"";if(!Z.__streamTemplates)Z.__streamTemplates={};return Z.__streamTemplates[Q]=K,`<div data-suspense="${Q}">${z}</div>`})}function PW($){let Z=$?.streamBoundaries;if(!Z||typeof Z!=="object")return;let Y=Object.entries(Z).filter(([,J])=>typeof J==="function");return Y.length>0?Y.map(([J,X])=>({id:J,render:X})):void 0}async function CW($,Z={},Y={}){let J={...p1,...Y,streaming:{...l3,...Y.streaming}},X=J.streaming?.bufferSize||16384;return new ReadableStream({async start(Q){try{let G=await Bun.file($).text(),K=G.match(/<script\b[^>]*\bserver\b[^>]*>([\s\S]*?)<\/script>/i),z=K?K[1]:"",q=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),W={...Z,__filename:$,__dirname:v4.dirname($)};if(z.trim())await x1(z,W,$);let U=new Set,j=J.streaming?.strategy||"auto",B=new RegExp(n1.source,"g");if(!(j!=="manual"&&B.test(q))){let H=await L0(q,W,$,J,U);for(let L=0;L<H.length;L+=X)Q.enqueue(H.slice(L,L+X))}else{let H=[],L=new RegExp(n1.source,"g"),V;while((V=L.exec(q))!==null)H.push({name:V[1],content:V[2],start:V.index,end:V.index+V[0].length});let O=0;for(let F of H){if(F.start>O){let A=q.slice(O,F.start);if(A.trim()){let R=await L0(A,W,$,J,U);Q.enqueue(R)}}let w=await L0(F.content,W,$,J,U);Q.enqueue(w),O=F.end}if(O<q.length){let F=q.slice(O);if(F.trim()){let w=await L0(F,W,$,J,U);Q.enqueue(w)}}}Q.close()}catch(G){Q.error(G)}}})}async function vW($,Z={}){let Y={...p1,...Z,streaming:{...l3,...Z.streaming}},J=await Bun.file($).text(),X=J.match(/<script\b[^>]*\bserver\b[^>]*>([\s\S]*?)<\/script>/i),Q=X?X[1]:"",G=J.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),K=G,z={},q;n1.lastIndex=0;while((q=n1.exec(G))!==null){let j=q[1],B=q[2];z[j]=B}let W=G.replace(n1,"");return{renderShell:async(j={})=>{let B={...j,__filename:$,__dirname:v4.dirname($)};return await x1(Q,B,$),L0(W,B,$,Y,new Set)},renderSection:async(j,B={})=>{try{if(!z[j])return`<div class="error-message">Section "${s0(j)}" not found in template "${s0($)}"</div>`;let _={...B,__filename:$,__dirname:v4.dirname($)};await x1(Q,_,$);let H=new Set;return await L0(z[j],_,$,Y,H)}catch(_){let H=_ instanceof Error?_.message:String(_);return q0("Expression",H,$,z[j]||"",0,z[j]||"")}},getSections:()=>{return Object.keys(z)},getTemplate:()=>{return K}}}function xW($={}){let Z=[];if($.streaming?.enabled)Z.push(e2);if($.hydration?.enabled)Z.push($Y);return Z}async function fW($,Z,Y,J={}){return $}function gW($,Z={}){let Y=new TextEncoder,J=$.pipeThrough(new TransformStream({transform(Q,G){G.enqueue(Y.encode(Q))}})),X=new Headers(Z.headers);if(!X.has("Content-Type"))X.set("Content-Type","text/html; charset=utf-8");if(!X.has("Transfer-Encoding"))X.set("Transfer-Encoding","chunked");if(!X.has("X-Content-Type-Options"))X.set("X-Content-Type-Options","nosniff");if(!X.has("X-Accel-Buffering"))X.set("X-Accel-Buffering","no");return new Response(J,{...Z,headers:X})}function hW($={mode:"full"}){let{mode:Z,components:Y={},dynamicImports:J=!0}=$,X=Object.entries(Y).map(([Q,G])=>`'${Q}': ${J?`() => import('${G}')`:`require('${G}')`}`).join(`,
9149
+ </script>`}}function kW($,Z,Y){if(!Z||Z<=0)return $;let J,X=new Promise((Q,G)=>{J=setTimeout(()=>G(Error(`streaming boundary "${Y}" timed out after ${Z}ms`)),Z)});return Promise.race([$,X]).finally(()=>clearTimeout(J))}function bW($,Z=[],Y={}){let J=Y.timeoutMs??0;return new ReadableStream({async start(X){try{if(X.enqueue($),Z.length>0)X.enqueue(t2),await Promise.all(Z.map(async(Q)=>{let G=kW(Q.render(),J,Q.id);X.enqueue(await c3(Q.id,G))}));X.close()}catch(Q){X.error(Q)}}})}function yW($,Z){return $.replace(SW,(Y,J,X)=>{let Q=J.trim(),G=X.split(/@fallback/i),K=G[0].trim(),z=G.length>1?G.slice(1).join("@fallback").trim():"";if(!Z.__streamTemplates)Z.__streamTemplates={};return Z.__streamTemplates[Q]=K,`<div data-suspense="${Q}">${z}</div>`})}function PW($){let Z=$?.streamBoundaries;if(!Z||typeof Z!=="object")return;let Y=Object.entries(Z).filter(([,J])=>typeof J==="function");return Y.length>0?Y.map(([J,X])=>({id:J,render:X})):void 0}async function CW($,Z={},Y={}){let J={...p1,...Y,streaming:{...l3,...Y.streaming}},X=J.streaming?.bufferSize||16384;return new ReadableStream({async start(Q){try{let G=await Bun.file($).text(),K=G.match(/<script\b[^>]*\bserver\b[^>]*>([\s\S]*?)<\/script>/i),z=K?K[1]:"",q=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),W={...Z,__filename:$,__dirname:v4.dirname($)};if(z.trim())await x1(z,W,$);let U=new Set,j=J.streaming?.strategy||"auto",_=new RegExp(n1.source,"g");if(!(j!=="manual"&&_.test(q))){let H=await L0(q,W,$,J,U);for(let L=0;L<H.length;L+=X)Q.enqueue(H.slice(L,L+X))}else{let H=[],L=new RegExp(n1.source,"g"),V;while((V=L.exec(q))!==null)H.push({name:V[1],content:V[2],start:V.index,end:V.index+V[0].length});let O=0;for(let F of H){if(F.start>O){let A=q.slice(O,F.start);if(A.trim()){let R=await L0(A,W,$,J,U);Q.enqueue(R)}}let w=await L0(F.content,W,$,J,U);Q.enqueue(w),O=F.end}if(O<q.length){let F=q.slice(O);if(F.trim()){let w=await L0(F,W,$,J,U);Q.enqueue(w)}}}Q.close()}catch(G){Q.error(G)}}})}async function vW($,Z={}){let Y={...p1,...Z,streaming:{...l3,...Z.streaming}},J=await Bun.file($).text(),X=J.match(/<script\b[^>]*\bserver\b[^>]*>([\s\S]*?)<\/script>/i),Q=X?X[1]:"",G=J.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),K=G,z={},q;n1.lastIndex=0;while((q=n1.exec(G))!==null){let j=q[1],_=q[2];z[j]=_}let W=G.replace(n1,"");return{renderShell:async(j={})=>{let _={...j,__filename:$,__dirname:v4.dirname($)};return await x1(Q,_,$),L0(W,_,$,Y,new Set)},renderSection:async(j,_={})=>{try{if(!z[j])return`<div class="error-message">Section "${s0(j)}" not found in template "${s0($)}"</div>`;let B={..._,__filename:$,__dirname:v4.dirname($)};await x1(Q,B,$);let H=new Set;return await L0(z[j],B,$,Y,H)}catch(B){let H=B instanceof Error?B.message:String(B);return q0("Expression",H,$,z[j]||"",0,z[j]||"")}},getSections:()=>{return Object.keys(z)},getTemplate:()=>{return K}}}function xW($={}){let Z=[];if($.streaming?.enabled)Z.push(e2);if($.hydration?.enabled)Z.push($Y);return Z}async function fW($,Z,Y,J={}){return $}function gW($,Z={}){let Y=new TextEncoder,J=$.pipeThrough(new TransformStream({transform(Q,G){G.enqueue(Y.encode(Q))}})),X=new Headers(Z.headers);if(!X.has("Content-Type"))X.set("Content-Type","text/html; charset=utf-8");if(!X.has("Transfer-Encoding"))X.set("Transfer-Encoding","chunked");if(!X.has("X-Content-Type-Options"))X.set("X-Content-Type-Options","nosniff");if(!X.has("X-Accel-Buffering"))X.set("X-Accel-Buffering","no");return new Response(J,{...Z,headers:X})}function hW($={mode:"full"}){let{mode:Z,components:Y={},dynamicImports:J=!0}=$,X=Object.entries(Y).map(([Q,G])=>`'${Q}': ${J?`() => import('${G}')`:`require('${G}')`}`).join(`,
9132
9150
  `);if(Z==="loader")return`
9133
9151
  (function() {
9134
9152
  window.__stx = window.__stx || {};
@@ -9295,13 +9313,13 @@ else {
9295
9313
  <script type="application/json" data-island-props="${G}">
9296
9314
  ${z?`{${z}}`:"{}"}
9297
9315
  </script>
9298
- </div>`}}});var JY={};e(JY,{warnUnbalancedTags:()=>o3,findUnbalancedTags:()=>YY});function B5($){return $.replace(/[^\n]/g," ")}function YY($){let Z=$.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,B5).replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,B5).replace(/<!--[\s\S]*?-->/g,B5).replace(/\{\{\{[\s\S]*?\}\}\}/g,B5).replace(/\{\{[\s\S]*?\}\}/g,B5).replace(/\{!![\s\S]*?!!\}/g,B5),Y=new Map,J=new Map,X=/<(\/?)([A-Za-z][\w-]*)\b(?:[^>"']|"[^"]*"|'[^']*')*?(\/?)>/g,Q;while((Q=X.exec(Z))!==null){let K=Q[1]==="/",z=Q[2],q=Q[3]==="/";if(dW.has(z.toLowerCase()))continue;if(q)continue;if(K)J.set(z,(J.get(z)??0)+1);else{let W=Y.get(z);if(W)W.count++;else{let U=Z.slice(0,Q.index).split(`
9299
- `).length;Y.set(z,{count:1,firstLine:U})}}}let G=[];for(let K of new Set([...Y.keys(),...J.keys()])){if(uW.has(K.toLowerCase()))continue;let z=Y.get(K)?.count??0,q=J.get(K)??0;if(z!==q)G.push({tag:K,opened:z,closed:q,firstOpenLine:Y.get(K)?.firstLine??0})}return G}function o3($,Z){let Y;try{Y=YY($)}catch{return}if(Y.length===0)return;let J=`${Z}:${$.length}`;if(ZY.has(J))return;ZY.add(J);let X=Z?Z.split(/[/\\]/).pop()||Z:"template";for(let{tag:Q,opened:G,closed:K,firstOpenLine:z}of Y)if(G>K){let q=z?` (first opened at line ${z})`:"";console.warn(`[stx] ${X}: <${Q}> ${G} opened, ${K} closed \u2014 an unclosed <${Q}>${q} may swallow the content that follows it.`)}else console.warn(`[stx] ${X}: <${Q}> ${G} opened, ${K} closed \u2014 ${K-G} stray </${Q}>.`)}var dW,uW,ZY;var s3=b(()=>{dW=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),uW=new Set(["html","head","body","p","li","dt","dd","rt","rp","option","optgroup","thead","tbody","tfoot","tr","td","th","colgroup","caption"]);ZY=new Set});import c0 from"path";import r3 from"fs";function XY($){return $.split("-").map((Z)=>Z.charAt(0).toUpperCase()+Z.slice(1)).join("")}function QY($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}class GY{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,Y,J){let X=$.endsWith(".stx")?$.slice(0,-4):$,Q=J?.__importedComponents;if(Q){let B=[X,X.toLowerCase(),XY(X),QY(X)];for(let _ of B)if(Q.has(_))return Q.get(_)}let G=[...new Set([`${X}.stx`,`${XY(X)}.stx`,`${QY(X)}.stx`])];if(X.startsWith("./")||X.startsWith("../")){let B=c0.resolve(c0.dirname(Z),`${X}.stx`);if(await o(B))return B;return null}let K=[],z=Y.componentsDir||"",q=J?.__originalFilePath;if(q)K.push(c0.join(c0.dirname(q),"components"));if(z)K.push(z);let W=c0.join(c0.dirname(Z),"components");if(!K.includes(W))K.push(W);let U=process.cwd(),j=[c0.resolve(U,"src/components"),c0.resolve(U,"components"),c0.resolve(import.meta.dir,"components")];for(let B of j)if(!K.includes(B))K.push(B);for(let B of K){if(!B)continue;for(let _ of G){let H=c0.join(B,_);if(await o(H))return H}try{if(!r3.statSync(B,{throwIfNoEntry:!1})?.isDirectory())continue;let H=r3.readdirSync(B,{withFileTypes:!0});for(let L of H)if(L.isDirectory()){let V=c0.join(B,L.name);for(let O of G){let F=c0.join(V,O);if(await o(F))return F}}}catch{}}return null}}var x0;var a3=b(()=>{N0();x0=new GY});function y0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function _5($,Z){let Y=[];for(let[J,X]of Object.entries($.static)){if(Z.has(J))continue;let Q=$.staticNames?.[J]??J;if(typeof X==="boolean"){if(X)Y.push(y0(Q));continue}Y.push(`${y0(Q)}="${y0(X)}"`)}return Y}var x4=()=>{};function K$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function mW($){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 t3;var e3=b(()=>{x4();t3={name:"StxLink",aliases:["stx-link"],render($,Z,Y){let J=mW($),X=(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",K=$.static.prefetch===!0||$.static.prefetch==="true"||$.serverDynamic.prefetch===!0,z=[];if(J.reactive)z.push(`:href="${K$(J.value)}"`);else z.push(`href="${K$(J.value)}"`);if(X)z.push(`class="${K$(X)}"`);if(z.push("data-stx-link"),z.push(`data-stx-active-class="${K$(Q)}"`),z.push(`data-stx-exact-active-class="${K$(G)}"`),K)z.push("data-stx-prefetch");let q=new Set(["to","class","className","activeClass","exactActiveClass","prefetch"]);return z.push(..._5($,q)),`<a ${z.join(" ")}>${Z}</a>`}}});function E0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function P0($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function Z6($,Z,Y=!1){let J=$.serverDynamic[Z];if(J!==void 0)return J!==!1&&J!=="false";let X=$.static[Z];if(X!==void 0)return X!=="false"&&X!==!1;return Y}function KY($){if($.includes("(")||$.includes(","))return $;let Z=$.trim().split(/\s+/),Y=[];for(let J of Z)if(J.includes(":")){let[X,Q]=J.split(":"),G=pW[X];if(G)Y.push(`(max-width: ${G}px) ${Q}`);else{let K=Number.parseInt(X);if(!Number.isNaN(K))Y.push(`(max-width: ${K}px) ${Q}`)}}else Y.push(J);return Y.join(", ")}function Y6($,Z,Y,J){return Z.map((X)=>`${z$($,X,void 0,Y,J)} ${X}w`).join(", ")}function lW($,Z,Y,J,X){return Z.map((Q)=>{let G=Y?Y*Q:void 0;return`${z$($,G,void 0,J,X)} ${Q}x`}).join(", ")}function z$($,Z,Y,J,X){if(!J||J==="local"||J==="static")return $;if(J==="cloudinary"){let Q=[];if(Z)Q.push(`w_${Z}`);if(Y)Q.push(`h_${Y}`);if(X)Q.push(`f_${X}`);Q.push("q_auto");let G=Q.join(",");return $.replace("/upload/",`/upload/${G}/`)}if(J==="imgix"){let Q=new URLSearchParams;if(Z)Q.set("w",String(Z));if(Y)Q.set("h",String(Y));if(X)Q.set("fm",X);Q.set("auto","format");let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}if(J==="bunny"){let Q=new URLSearchParams;if(Z)Q.set("width",String(Z));if(Y)Q.set("height",String(Y));if(X)Q.set("format",X);let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}return $}function cW($,Z,Y="#e5e7eb"){let J=`<svg xmlns="http://www.w3.org/2000/svg" width="${$}" height="${Z}"><rect width="100%" height="100%" fill="${Y}"/></svg>`;return`data:image/svg+xml;base64,${btoa(J)}`}var pW,$6,J6;var X6=b(()=>{x4();pW={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},$6=[320,640,768,1024,1280,1536,1920];J6={name:"StxImage",aliases:["stx-image","stx-img"],render($,Z,Y){let J=P0($,"src")||"",X=P0($,"alt")||"",Q=P0($,"width"),G=P0($,"height"),K=P0($,"sizes"),z=P0($,"srcset"),q=P0($,"densities"),W=P0($,"format"),U=P0($,"placeholder"),j=P0($,"placeholderColor")||"#e5e7eb",B=P0($,"provider"),_=P0($,"class")||P0($,"className")||"",H=P0($,"style")||"",L=P0($,"quality"),V=Z6($,"lazy",!0),O=Z6($,"preload",!1),F=Z6($,"picture",!1)||!!W,w=Q?Number.parseInt(Q):void 0,A=G?Number.parseInt(G):void 0,R=z||"",N="";if(!R&&K)R=Y6(J,$6,B,W),N=KY(K);else if(!R&&q){let S=q.split(/\s+/).map((k)=>Number.parseFloat(k.replace("x","")));R=lW(J,S,w,B,W)}else if(K)N=KY(K);let M=[];if(H)M.push(H);if(w&&A)M.push(`aspect-ratio:${w}/${A}`);if(U==="blur"||U==="color"||U==="thumbhash"){let S=cW(w||16,A||9,j);M.push(`background-image:url(${S})`),M.push("background-size:cover"),M.push("background-repeat:no-repeat")}else if(U&&U!=="empty"&&U!=="none")M.push(`background-image:url(${E0(U)})`),M.push("background-size:cover"),M.push("background-repeat:no-repeat");let T=z$(J,w,A,B,W),I=[];if(I.push(`src="${E0(T)}"`),I.push(`alt="${E0(X)}"`),Q)I.push(`width="${E0(Q)}"`);if(G)I.push(`height="${E0(G)}"`);if(V)I.push('loading="lazy"');if(I.push('decoding="async"'),_)I.push(`class="${E0(_)}"`);if(M.length>0)I.push(`style="${E0(M.join(";"))}"`);if(R)I.push(`srcset="${E0(R)}"`);if(N)I.push(`sizes="${E0(N)}"`);let E=new Set(["src","alt","width","height","lazy","sizes","srcset","placeholder","placeholderColor","class","className","style","format","provider","quality","densities","preload","picture"]);I.push(..._5($,E));let D=`<img ${I.join(" ")} />`,y="";if(O){let k=W==="webp"?"image/webp":W==="avif"?"image/avif":"";y=`<link rel="preload" as="image" href="${E0(T)}"${k?` type="${k}"`:""}${R?` imagesrcset="${E0(R)}"`:""}${N?` imagesizes="${E0(N)}"`:""} />
9300
- `}if(F){let S=[];if(W==="avif"||W==="auto"){let k=z$(J,w,A,B,"avif"),C=R?Y6(J,$6,B,"avif"):`${k}`;S.push(`<source type="image/avif" srcset="${E0(C)}"${N?` sizes="${E0(N)}"`:""} />`)}if(W==="webp"||W==="auto"){let k=z$(J,w,A,B,"webp"),C=R?Y6(J,$6,B,"webp"):`${k}`;S.push(`<source type="image/webp" srcset="${E0(C)}"${N?` sizes="${E0(N)}"`:""} />`)}return`${y}<picture>
9316
+ </div>`}}});var JY={};e(JY,{warnUnbalancedTags:()=>o3,findUnbalancedTags:()=>YY});function _5($){return $.replace(/[^\n]/g," ")}function YY($){let Z=$.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,_5).replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,_5).replace(/<!--[\s\S]*?-->/g,_5).replace(/\{\{\{[\s\S]*?\}\}\}/g,_5).replace(/\{\{[\s\S]*?\}\}/g,_5).replace(/\{!![\s\S]*?!!\}/g,_5),Y=new Map,J=new Map,X=/<(\/?)([A-Za-z][\w-]*)\b(?:[^>"']|"[^"]*"|'[^']*')*?(\/?)>/g,Q;while((Q=X.exec(Z))!==null){let K=Q[1]==="/",z=Q[2],q=Q[3]==="/";if(dW.has(z.toLowerCase()))continue;if(q)continue;if(K)J.set(z,(J.get(z)??0)+1);else{let W=Y.get(z);if(W)W.count++;else{let U=Z.slice(0,Q.index).split(`
9317
+ `).length;Y.set(z,{count:1,firstLine:U})}}}let G=[];for(let K of new Set([...Y.keys(),...J.keys()])){if(mW.has(K.toLowerCase()))continue;let z=Y.get(K)?.count??0,q=J.get(K)??0;if(z!==q)G.push({tag:K,opened:z,closed:q,firstOpenLine:Y.get(K)?.firstLine??0})}return G}function o3($,Z){let Y;try{Y=YY($)}catch{return}if(Y.length===0)return;let J=`${Z}:${$.length}`;if(ZY.has(J))return;ZY.add(J);let X=Z?Z.split(/[/\\]/).pop()||Z:"template";for(let{tag:Q,opened:G,closed:K,firstOpenLine:z}of Y)if(G>K){let q=z?` (first opened at line ${z})`:"";console.warn(`[stx] ${X}: <${Q}> ${G} opened, ${K} closed \u2014 an unclosed <${Q}>${q} may swallow the content that follows it.`)}else console.warn(`[stx] ${X}: <${Q}> ${G} opened, ${K} closed \u2014 ${K-G} stray </${Q}>.`)}var dW,mW,ZY;var s3=b(()=>{dW=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),mW=new Set(["html","head","body","p","li","dt","dd","rt","rp","option","optgroup","thead","tbody","tfoot","tr","td","th","colgroup","caption"]);ZY=new Set});import c0 from"path";import r3 from"fs";function XY($){return $.split("-").map((Z)=>Z.charAt(0).toUpperCase()+Z.slice(1)).join("")}function QY($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}class GY{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,Y,J){let X=$.endsWith(".stx")?$.slice(0,-4):$,Q=J?.__importedComponents;if(Q){let _=[X,X.toLowerCase(),XY(X),QY(X)];for(let B of _)if(Q.has(B))return Q.get(B)}let G=[...new Set([`${X}.stx`,`${XY(X)}.stx`,`${QY(X)}.stx`])];if(X.startsWith("./")||X.startsWith("../")){let _=c0.resolve(c0.dirname(Z),`${X}.stx`);if(await o(_))return _;return null}let K=[],z=Y.componentsDir||"",q=J?.__originalFilePath;if(q)K.push(c0.join(c0.dirname(q),"components"));if(z)K.push(z);let W=c0.join(c0.dirname(Z),"components");if(!K.includes(W))K.push(W);let U=process.cwd(),j=[c0.resolve(U,"src/components"),c0.resolve(U,"components"),c0.resolve(import.meta.dir,"components")];for(let _ of j)if(!K.includes(_))K.push(_);for(let _ of K){if(!_)continue;for(let B of G){let H=c0.join(_,B);if(await o(H))return H}try{if(!r3.statSync(_,{throwIfNoEntry:!1})?.isDirectory())continue;let H=r3.readdirSync(_,{withFileTypes:!0});for(let L of H)if(L.isDirectory()){let V=c0.join(_,L.name);for(let O of G){let F=c0.join(V,O);if(await o(F))return F}}}catch{}}return null}}var x0;var a3=b(()=>{N0();x0=new GY});function y0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function B5($,Z){let Y=[];for(let[J,X]of Object.entries($.static)){if(Z.has(J))continue;let Q=$.staticNames?.[J]??J;if(typeof X==="boolean"){if(X)Y.push(y0(Q));continue}Y.push(`${y0(Q)}="${y0(X)}"`)}return Y}var x4=()=>{};function K$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function uW($){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 t3;var e3=b(()=>{x4();t3={name:"StxLink",aliases:["stx-link"],render($,Z,Y){let J=uW($),X=(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",K=$.static.prefetch===!0||$.static.prefetch==="true"||$.serverDynamic.prefetch===!0,z=[];if(J.reactive)z.push(`:href="${K$(J.value)}"`);else z.push(`href="${K$(J.value)}"`);if(X)z.push(`class="${K$(X)}"`);if(z.push("data-stx-link"),z.push(`data-stx-active-class="${K$(Q)}"`),z.push(`data-stx-exact-active-class="${K$(G)}"`),K)z.push("data-stx-prefetch");let q=new Set(["to","class","className","activeClass","exactActiveClass","prefetch"]);return z.push(...B5($,q)),`<a ${z.join(" ")}>${Z}</a>`}}});function E0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function P0($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function Z6($,Z,Y=!1){let J=$.serverDynamic[Z];if(J!==void 0)return J!==!1&&J!=="false";let X=$.static[Z];if(X!==void 0)return X!=="false"&&X!==!1;return Y}function KY($){if($.includes("(")||$.includes(","))return $;let Z=$.trim().split(/\s+/),Y=[];for(let J of Z)if(J.includes(":")){let[X,Q]=J.split(":"),G=pW[X];if(G)Y.push(`(max-width: ${G}px) ${Q}`);else{let K=Number.parseInt(X);if(!Number.isNaN(K))Y.push(`(max-width: ${K}px) ${Q}`)}}else Y.push(J);return Y.join(", ")}function Y6($,Z,Y,J){return Z.map((X)=>`${z$($,X,void 0,Y,J)} ${X}w`).join(", ")}function lW($,Z,Y,J,X){return Z.map((Q)=>{let G=Y?Y*Q:void 0;return`${z$($,G,void 0,J,X)} ${Q}x`}).join(", ")}function z$($,Z,Y,J,X){if(!J||J==="local"||J==="static")return $;if(J==="cloudinary"){let Q=[];if(Z)Q.push(`w_${Z}`);if(Y)Q.push(`h_${Y}`);if(X)Q.push(`f_${X}`);Q.push("q_auto");let G=Q.join(",");return $.replace("/upload/",`/upload/${G}/`)}if(J==="imgix"){let Q=new URLSearchParams;if(Z)Q.set("w",String(Z));if(Y)Q.set("h",String(Y));if(X)Q.set("fm",X);Q.set("auto","format");let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}if(J==="bunny"){let Q=new URLSearchParams;if(Z)Q.set("width",String(Z));if(Y)Q.set("height",String(Y));if(X)Q.set("format",X);let G=$.includes("?")?"&":"?";return`${$}${G}${Q.toString()}`}return $}function cW($,Z,Y="#e5e7eb"){let J=`<svg xmlns="http://www.w3.org/2000/svg" width="${$}" height="${Z}"><rect width="100%" height="100%" fill="${Y}"/></svg>`;return`data:image/svg+xml;base64,${btoa(J)}`}var pW,$6,J6;var X6=b(()=>{x4();pW={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},$6=[320,640,768,1024,1280,1536,1920];J6={name:"StxImage",aliases:["stx-image","stx-img"],render($,Z,Y){let J=P0($,"src")||"",X=P0($,"alt")||"",Q=P0($,"width"),G=P0($,"height"),K=P0($,"sizes"),z=P0($,"srcset"),q=P0($,"densities"),W=P0($,"format"),U=P0($,"placeholder"),j=P0($,"placeholderColor")||"#e5e7eb",_=P0($,"provider"),B=P0($,"class")||P0($,"className")||"",H=P0($,"style")||"",L=P0($,"quality"),V=Z6($,"lazy",!0),O=Z6($,"preload",!1),F=Z6($,"picture",!1)||!!W,w=Q?Number.parseInt(Q):void 0,A=G?Number.parseInt(G):void 0,R=z||"",N="";if(!R&&K)R=Y6(J,$6,_,W),N=KY(K);else if(!R&&q){let S=q.split(/\s+/).map((k)=>Number.parseFloat(k.replace("x","")));R=lW(J,S,w,_,W)}else if(K)N=KY(K);let M=[];if(H)M.push(H);if(w&&A)M.push(`aspect-ratio:${w}/${A}`);if(U==="blur"||U==="color"||U==="thumbhash"){let S=cW(w||16,A||9,j);M.push(`background-image:url(${S})`),M.push("background-size:cover"),M.push("background-repeat:no-repeat")}else if(U&&U!=="empty"&&U!=="none")M.push(`background-image:url(${E0(U)})`),M.push("background-size:cover"),M.push("background-repeat:no-repeat");let T=z$(J,w,A,_,W),I=[];if(I.push(`src="${E0(T)}"`),I.push(`alt="${E0(X)}"`),Q)I.push(`width="${E0(Q)}"`);if(G)I.push(`height="${E0(G)}"`);if(V)I.push('loading="lazy"');if(I.push('decoding="async"'),B)I.push(`class="${E0(B)}"`);if(M.length>0)I.push(`style="${E0(M.join(";"))}"`);if(R)I.push(`srcset="${E0(R)}"`);if(N)I.push(`sizes="${E0(N)}"`);let E=new Set(["src","alt","width","height","lazy","sizes","srcset","placeholder","placeholderColor","class","className","style","format","provider","quality","densities","preload","picture"]);I.push(...B5($,E));let D=`<img ${I.join(" ")} />`,y="";if(O){let k=W==="webp"?"image/webp":W==="avif"?"image/avif":"";y=`<link rel="preload" as="image" href="${E0(T)}"${k?` type="${k}"`:""}${R?` imagesrcset="${E0(R)}"`:""}${N?` imagesizes="${E0(N)}"`:""} />
9318
+ `}if(F){let S=[];if(W==="avif"||W==="auto"){let k=z$(J,w,A,_,"avif"),C=R?Y6(J,$6,_,"avif"):`${k}`;S.push(`<source type="image/avif" srcset="${E0(C)}"${N?` sizes="${E0(N)}"`:""} />`)}if(W==="webp"||W==="auto"){let k=z$(J,w,A,_,"webp"),C=R?Y6(J,$6,_,"webp"):`${k}`;S.push(`<source type="image/webp" srcset="${E0(C)}"${N?` sizes="${E0(N)}"`:""} />`)}return`${y}<picture>
9301
9319
  ${S.join(`
9302
9320
  `)}
9303
9321
  ${D}
9304
- </picture>`}return`${y}${D}`}}});function q$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function H5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var zY="/images/safe-image-default.svg",iW,Q6;var G6=b(()=>{x4();iW=`<script>window.__stxSafeImageHandler||(window.__stxSafeImageHandler=function(i){if(i.__stx_fb)return;i.__stx_fb=1;var f=i.getAttribute('data-fallback')||'${zY}';var c=i.getAttribute('data-fallback-class');i.src=f;if(c)i.className=c;});</script>`,Q6={name:"SafeImage",aliases:["safe-image","safe-img"],render($,Z,Y){let J=H5($,"src")||"",X=H5($,"alt")||"",Q=H5($,"fallback")||zY,G=H5($,"class")||H5($,"className")||"",K=H5($,"fallbackClassName")||"",z=[];if(z.push(`src="${q$(J)}"`),z.push(`alt="${q$(X)}"`),G)z.push(`class="${q$(G)}"`);if(z.push(`data-fallback="${q$(Q)}"`),K)z.push(`data-fallback-class="${q$(K)}"`);z.push('onerror="window.__stxSafeImageHandler(this)"');let q=new Set(["src","alt","fallback","class","className","fallbackClassName"]);z.push(..._5($,q));let W=`<img ${z.join(" ")} />`,U=Y.context;if(!U.__safeImageHandlerEmitted)return U.__safeImageHandlerEmitted=!0,`${iW}${W}`;return W}}});function K6($){return $.replace(/[;{}()]/g,"").replace(/url/gi,"")}function W$($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function f4($,Z,Y){let J=W$($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var z6;var q6=b(()=>{z6={name:"StxLoadingIndicator",aliases:["stx-loading-indicator"],render($,Z,Y){let J=K6(W$($,"color")||"#6366f1"),X=K6(W$($,"initialColor")||W$($,"initial-color")||""),Q=K6(W$($,"height")||"3px"),G=f4($,"duration",2000),K=f4($,"throttle",200),z=f4($,"zIndex",999999)||f4($,"z-index",999999),q=X?`linear-gradient(to right, ${X}, ${J})`:J;return`
9322
+ </picture>`}return`${y}${D}`}}});function q$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function H5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var zY="/images/safe-image-default.svg",iW,Q6;var G6=b(()=>{x4();iW=`<script>window.__stxSafeImageHandler||(window.__stxSafeImageHandler=function(i){if(i.__stx_fb)return;i.__stx_fb=1;var f=i.getAttribute('data-fallback')||'${zY}';var c=i.getAttribute('data-fallback-class');i.src=f;if(c)i.className=c;});</script>`,Q6={name:"SafeImage",aliases:["safe-image","safe-img"],render($,Z,Y){let J=H5($,"src")||"",X=H5($,"alt")||"",Q=H5($,"fallback")||zY,G=H5($,"class")||H5($,"className")||"",K=H5($,"fallbackClassName")||"",z=[];if(z.push(`src="${q$(J)}"`),z.push(`alt="${q$(X)}"`),G)z.push(`class="${q$(G)}"`);if(z.push(`data-fallback="${q$(Q)}"`),K)z.push(`data-fallback-class="${q$(K)}"`);z.push('onerror="window.__stxSafeImageHandler(this)"');let q=new Set(["src","alt","fallback","class","className","fallbackClassName"]);z.push(...B5($,q));let W=`<img ${z.join(" ")} />`,U=Y.context;if(!U.__safeImageHandlerEmitted)return U.__safeImageHandlerEmitted=!0,`${iW}${W}`;return W}}});function K6($){return $.replace(/[;{}()]/g,"").replace(/url/gi,"")}function W$($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function f4($,Z,Y){let J=W$($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var z6;var q6=b(()=>{z6={name:"StxLoadingIndicator",aliases:["stx-loading-indicator"],render($,Z,Y){let J=K6(W$($,"color")||"#6366f1"),X=K6(W$($,"initialColor")||W$($,"initial-color")||""),Q=K6(W$($,"height")||"3px"),G=f4($,"duration",2000),K=f4($,"throttle",200),z=f4($,"zIndex",999999)||f4($,"z-index",999999),q=X?`linear-gradient(to right, ${X}, ${J})`:J;return`
9305
9323
  <div id="stx-loading-indicator" style="position:fixed;top:0;left:0;right:0;height:${Q};background:${q};z-index:${z};transform:scaleX(0);transform-origin:left;transition:transform 0.1s ease-out,opacity 0.3s ease;opacity:0;pointer-events:none">
9306
9324
  <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>
9307
9325
  </div>
@@ -9316,7 +9334,7 @@ ${D}
9316
9334
  @keyframes stx-toast-out-left{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}
9317
9335
  @keyframes stx-toast-in-center{from{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}
9318
9336
  @keyframes stx-toast-out-center{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-1rem)}}
9319
- </style>`}}});function g4($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var UY,j6;var B6=b(()=>{UY={sm:"max-width:24rem",md:"max-width:32rem",lg:"max-width:42rem",xl:"max-width:56rem",full:"max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)"},j6={name:"StxModal",aliases:["stx-modal"],render($,Z,Y){let J=g4($,"id");if(!J)return console.warn('[stx] <StxModal> requires an "id" prop'),"<!-- StxModal: missing id prop -->";let X=y0(J),Q=g4($,"size")||"md",G=g4($,"closeOnBackdrop")!=="false",K=g4($,"closeOnEscape")!=="false",z=UY[Q]||UY.md;return`<div id="stx-modal-${X}" class="stx-modal-backdrop" data-stx-modal="${X}" data-close-backdrop="${G}" data-close-escape="${K}" style="display:none;position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center;background:rgba(0,0,0,0.5);backdrop-filter:blur(2px);opacity:0;transition:opacity 0.2s ease" aria-modal="true" role="dialog">
9337
+ </style>`}}});function g4($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var UY,j6;var _6=b(()=>{UY={sm:"max-width:24rem",md:"max-width:32rem",lg:"max-width:42rem",xl:"max-width:56rem",full:"max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)"},j6={name:"StxModal",aliases:["stx-modal"],render($,Z,Y){let J=g4($,"id");if(!J)return console.warn('[stx] <StxModal> requires an "id" prop'),"<!-- StxModal: missing id prop -->";let X=y0(J),Q=g4($,"size")||"md",G=g4($,"closeOnBackdrop")!=="false",K=g4($,"closeOnEscape")!=="false",z=UY[Q]||UY.md;return`<div id="stx-modal-${X}" class="stx-modal-backdrop" data-stx-modal="${X}" data-close-backdrop="${G}" data-close-escape="${K}" style="display:none;position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center;background:rgba(0,0,0,0.5);backdrop-filter:blur(2px);opacity:0;transition:opacity 0.2s ease" aria-modal="true" role="dialog">
9320
9338
  <div class="stx-modal-panel" style="${z};width:100%;margin:1rem;border-radius:0.75rem;box-shadow:0 20px 60px rgba(0,0,0,0.3);overflow:hidden;transform:scale(0.95) translateY(8px);transition:transform 0.2s ease,opacity 0.2s ease;opacity:0;background:var(--stx-modal-bg,#fff);color:var(--stx-modal-text,#1f2937)">
9321
9339
  <div style="padding:1.5rem">${Z}</div>
9322
9340
  </div>
@@ -9325,8 +9343,8 @@ ${D}
9325
9343
  @media(prefers-color-scheme:dark){[data-stx-modal]{--stx-modal-bg:#1f2937;--stx-modal-text:#f3f4f6}}
9326
9344
  .stx-modal-backdrop[data-stx-modal-open]{display:flex!important;opacity:1}
9327
9345
  .stx-modal-backdrop[data-stx-modal-open] .stx-modal-panel{transform:scale(1) translateY(0);opacity:1}
9328
- </style>`}}});function O5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var jY,_6;var H6=b(()=>{jY={sm:"16rem",md:"24rem",lg:"32rem",xl:"40rem"},_6={name:"StxDrawer",aliases:["stx-drawer"],render($,Z,Y){let J=O5($,"id");if(!J)return console.warn('[stx] <StxDrawer> requires an "id" prop'),"<!-- StxDrawer: missing id prop -->";let X=y0(J),Q=O5($,"side")||"right",G=O5($,"size")||"md",K=O5($,"closeOnBackdrop")!=="false",z=O5($,"closeOnEscape")!=="false",q=O5($,"overlay")!=="false",W=jY[G]||jY.md,U=Q==="left",j=U?"left:0":"right:0",B=U?"translateX(-100%)":"translateX(100%)",_=U?"stx-drawer-slide-left":"stx-drawer-slide-right";return`<div id="stx-drawer-${X}" class="stx-drawer-backdrop" data-stx-drawer="${X}" data-close-backdrop="${K}" data-close-escape="${z}" 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">
9329
- <div class="stx-drawer-panel" style="position:fixed;top:0;bottom:0;${j};width:${W};max-width:100vw;transform:${B};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">
9346
+ </style>`}}});function O5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var jY,B6;var H6=b(()=>{jY={sm:"16rem",md:"24rem",lg:"32rem",xl:"40rem"},B6={name:"StxDrawer",aliases:["stx-drawer"],render($,Z,Y){let J=O5($,"id");if(!J)return console.warn('[stx] <StxDrawer> requires an "id" prop'),"<!-- StxDrawer: missing id prop -->";let X=y0(J),Q=O5($,"side")||"right",G=O5($,"size")||"md",K=O5($,"closeOnBackdrop")!=="false",z=O5($,"closeOnEscape")!=="false",q=O5($,"overlay")!=="false",W=jY[G]||jY.md,U=Q==="left",j=U?"left:0":"right:0",_=U?"translateX(-100%)":"translateX(100%)",B=U?"stx-drawer-slide-left":"stx-drawer-slide-right";return`<div id="stx-drawer-${X}" class="stx-drawer-backdrop" data-stx-drawer="${X}" data-close-backdrop="${K}" data-close-escape="${z}" 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">
9347
+ <div class="stx-drawer-panel" style="position:fixed;top:0;bottom:0;${j};width:${W};max-width:100vw;transform:${_};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">
9330
9348
  <div style="padding:1.5rem">${Z}</div>
9331
9349
  </div>
9332
9350
  </div>
@@ -9334,18 +9352,18 @@ ${D}
9334
9352
  @media(prefers-color-scheme:dark){[data-stx-drawer]{--stx-drawer-bg:#1f2937;--stx-drawer-text:#f3f4f6}}
9335
9353
  .stx-drawer-backdrop[data-stx-drawer-open]{display:block!important;opacity:1}
9336
9354
  .stx-drawer-backdrop[data-stx-drawer-open] .stx-drawer-panel{transform:translateX(0)}
9337
- </style>`}}});import{existsSync as oW,readFileSync as sW}from"fs";function rW($){if(BY.has($))return;BY.add($),console.warn(`[stx] icon collection "${$}" is not installed, so its icons render as nothing. Install it with \`bun add -d @iconify-json/${$}\`.`)}function aW($){let Z=process.cwd();for(let Y 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(oW(Y))return Y;for(let Y of[`@iconify-json/${$}/icons.json`,`@iconify/json/json/${$}.json`])try{return U0.resolve(Y)}catch{}return null}function tW($){if(h4.has($))return h4.get($);let Z=aW($);if(!Z)return rW($),null;try{let Y=JSON.parse(sW(Z,"utf8"));return h4.set($,Y.icons),Y.icons}catch{return null}}function L5($,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 h4,BY,O6;var L6=b(()=>{h4=new Map,BY=new Set;O6={name:"Icon",aliases:["icon","stx-icon"],render($,Z,Y){let J=L5($,"name")??L5($,"icon");if(!J)return"<!-- Icon: missing name/icon prop -->";let X="lucide",Q=J;if(J.includes(":")){let O=J.split(":");X=O[0],Q=O[1]}let G=y0(L5($,"size")||"24"),K=y0(L5($,"color")||"currentColor"),z=y0(L5($,"class")||""),q=y0(L5($,"style")||""),W=h4.get(X)??tW(X);if(!W)return`<!-- Icon: collection "${X}" not loaded -->`;let U=W[Q];if(!U)return`<!-- Icon: "${Q}" not found in ${X} -->`;let j=U.width||24,B=U.height||24,_=`0 0 ${j} ${B}`,H=U.body;if(K!=="currentColor")H=H.replace(/currentColor/g,K);let L=z?` class="${z}"`:"",V=q?` style="${q}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${G}" height="${G}" viewBox="${_}" fill="none"${L}${V}>${H}</svg>`}}});function _Y($,...Z){for(let Y of Z){if($.serverDynamic[Y]!==void 0)return String($.serverDynamic[Y]);let J=$.static[Y];if(typeof J==="string")return J}return}function HY($,Z){let Y=new RegExp(`<(template|div|span)[^>]*\\bslot=["']${Z}["'][^>]*>([\\s\\S]*?)<\\/\\1>`,"i"),J=$.match(Y);if(!J)return{region:null,rest:$};return{region:J[2],rest:$.replace(J[0],"")}}var F6;var V6=b(()=>{F6={name:"Suspense",aliases:["suspense"],render($,Z,Y){let J=HY(Z,"fallback"),X=J.rest,Q=HY(X,"error"),G=Q.rest,K=J.region??_Y($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',z=Q.region??_Y($,"errorFallback","error-fallback")??'<div class="stx-suspense-error">Something went wrong.</div>';return`<div data-stx-suspense><div data-stx-suspense-fallback>${K}</div><div data-stx-suspense-error hidden>${z}</div><div data-stx-suspense-content hidden>${G}</div></div>`}}});function d4($,...Z){for(let Y of Z){if($.serverDynamic[Y]!==void 0)return String($.serverDynamic[Y]);let J=$.static[Y];if(typeof J==="string")return J}return}var w6;var A6=b(()=>{w6={name:"TransitionGroup",aliases:["transition-group"],render($,Z,Y){let J=(d4($,"name")||"v").replace(/["'<>]/g,""),X=(d4($,"tag")||"div").replace(/[^a-z0-9-]/gi,"")||"div",Q=d4($,"class"),G=d4($,"id"),K=[`data-stx-transition-group="${J}"`,Q?`class="${Q}"`:"",G?`id="${G}"`:""].filter(Boolean).join(" ");return`<${X} ${K}>${Z}</${X}>`}}});function OY(){x0.registerBuiltin(t3),x0.registerBuiltin(J6),x0.registerBuiltin(Q6),x0.registerBuiltin(z6),x0.registerBuiltin(W6),x0.registerBuiltin(j6),x0.registerBuiltin(_6),x0.registerBuiltin(O6),x0.registerBuiltin(F6),x0.registerBuiltin(w6)}var LY=b(()=>{e3();X6();G6();q6();U6();B6();H6();L6();V6();A6();a3();e3();X6();G6();q6();U6();B6();H6();L6();V6();A6()});function u4($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").toLowerCase()}function FY($,Z,Y){let J=[],X=0;while(X<$.length){let Q=$.indexOf("<",X);if(Q===-1)break;let K=$.slice(Q+1).match(new RegExp(`^(${Z.source})`));if(!K){X=Q+1;continue}let z=K[1];if(Y&&Y.has(z.toLowerCase())){let H=Q+1+z.length;while(H<$.length&&$[H]!==">")H++;X=H+1;continue}let q=Q+1+z.length,W=null,U=q,j=-1,B=!1;while(q<$.length){let H=$[q];if(W){if(H==="\\"&&q+1<$.length){q+=2;continue}if(H===W)W=null;q++;continue}if(H==='"'||H==="'"){W=H,q++;continue}if(H==="/"&&q+1<$.length&&$[q+1]===">"){j=q+2,B=!0;break}if(H===">"){j=q+1;break}q++}if(j===-1){X=Q+1;continue}let _=$.slice(U,B?j-2:j-1).trim();if(B)J.push({fullMatch:$.slice(Q,j),tagName:z,attributes:_,content:"",startIndex:Q,endIndex:j,isSelfClosing:!0}),X=j;else{let H=`<${z}`,L=`</${z}>`,V=1,O=j,F=-1;while(V>0&&O<$.length){let R=$.indexOf(H,O),N=$.indexOf(L,O);if(N===-1)break;if(R!==-1&&R<N){let M=$[R+H.length];if(M===" "||M===">"||M==="/"||M===`
9338
- `||M==="\t")V++;O=R+H.length}else{if(V--,V===0){F=N;break}O=N+L.length}}if(F===-1){X=j;continue}let w=$.slice(j,F),A=F+L.length;J.push({fullMatch:$.slice(Q,A),tagName:z,attributes:_,content:w,startIndex:Q,endIndex:A,isSelfClosing:!1}),X=A}}return J}function VY($,Z){try{let Y=Buffer.from($,"base64").toString("utf8");return JSON.parse(Y)}catch{}try{let Y=$.replace(/&quot;/g,'"').replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&");return JSON.parse(Y)}catch(Y){if(Z?.debug)console.error("Error decoding __stx_ prop:",Y);return $}}var wY=b(()=>{A0();N0();C1()});var DY={};e(DY,{processESImports:()=>TY,processComponents:()=>p4});import m4 from"fs";import d0 from"path";function $U($,Z,Y){let J={static:{},staticNames:{},serverDynamic:{},clientReactive:{},events:{}},X=new Set(["x-cloak","x-show","x-if","x-for","x-data","x-init","x-transition","x-ref","x-effect","x-model","x-text","x-html","x-class","x-style","x-on","x-bind"]),Q=(K)=>{if(!K.includes("-")||K.startsWith("@")||K.startsWith(":")||K.startsWith("x-")||K.startsWith("__"))return K;if(K.startsWith("aria-")||K.startsWith("data-"))return K;return K.replace(/-([a-z0-9])/g,(z,q)=>q.toUpperCase())},G=(K,z)=>{let q=Q(K);if(J.static[q]=z,q!==K)J.staticNames[q]=K};for(let[K,z]of Object.entries($)){let q=K.startsWith("x-")&&!X.has(K)&&!K.startsWith("x-bind:")&&!K.startsWith("x-on:")?`:${K.slice(2)}`:K;if(q.startsWith("@")){J.events[q]=z;continue}if(q.startsWith("__stx_")){let W=Q(q.slice(6));J.serverDynamic[W]=VY(z,Y);continue}if(q.startsWith(":")){let W=Q(q.slice(1)),U=z===R6?W:z;try{if(!G0(U)){if(Y.debug)console.error(`Unsafe expression in :${W} binding: ${U}`);J.clientReactive[W]=U;continue}let j=Object.keys(Z),_=K0(U,j)(...Object.values(Z));if(_===void 0){let H=U.match(/\b[a-zA-Z_$][a-zA-Z0-9_$]*\b/g)||[],L=new Set(["true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","if","else"]);if(H.some((O)=>!L.has(O)&&!j.includes(O))){J.clientReactive[W]=U;continue}}J.serverDynamic[W]=_}catch{J.clientReactive[W]=U}continue}if(typeof z==="string"&&z.includes("{{")&&z.includes("}}")){let W=z.match(/^\{\{\s*([\s\S]+?)\s*\}\}$/);if(W)try{let U=W[1];if(G0(U)){let B=K0(U,Object.keys(Z))(...Object.values(Z));G(q,B!=null?String(B):"")}else{if(Y.debug)console.error(`Unsafe expression in ${q}: ${U}`);G(q,z)}}catch(U){if(Y.debug)console.error(`Error evaluating expression for ${q}:`,U);G(q,z)}else{let U=z,j=/\{\{\s*([\s\S]+?)\s*\}\}/g,B;while((B=j.exec(z))!==null)try{let _=B[1];if(!G0(_)){if(Y.debug)console.error(`Unsafe expression in ${q}: ${_}`);continue}let L=K0(_,Object.keys(Z))(...Object.values(Z));U=U.replace(B[0],String(L??""))}catch(_){if(Y.debug)console.error(`Error evaluating expression in ${q}:`,_)}G(q,U)}continue}G(q,z===R6?"true":z)}return J}function ZU($){let Z={},Y=0,J=$.length;while(Y<J){while(Y<J&&/\s/.test($[Y]))Y++;if(Y>=J)break;let X="";while(Y<J&&!/[\s=]/.test($[Y]))X+=$[Y],Y++;if(!X)break;while(Y<J&&/\s/.test($[Y]))Y++;if(Y<J&&$[Y]==="="){Y++;while(Y<J&&/\s/.test($[Y]))Y++;let Q="";if(Y<J&&($[Y]==='"'||$[Y]==="'")){let G=$[Y];Y++;while(Y<J){let K=$[Y];if(K==="\\"&&Y+1<J){Y++,Q+=$[Y],Y++;continue}if(K===G){Y++;break}Q+=K,Y++}}else while(Y<J&&!/\s/.test($[Y]))Q+=$[Y],Y++;Z[X]=Q}else Z[X]=R6}return Z}function RY($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function YU($){let Z=new Set,Y=/<([A-Z][A-Za-z0-9]*|stx-[a-z0-9-]+)\b[^>]*>/g,J;while((J=Y.exec($))!==null){let X=J[1];if(x0.isBuiltin(X))Z.add(X)}return[...Z].sort()}function JU($){let Z=NY.get($);if(Z)return Z;let Y=new Map,J=[d0.join($,"src"),d0.join($,"dist"),$];function X(Q,G){if(G>6)return;let K;try{K=m4.readdirSync(Q,{withFileTypes:!0})}catch{return}for(let z of K){let q=d0.join(Q,z.name);if(z.isDirectory()){if(z.name==="node_modules"||z.name.startsWith("."))continue;X(q,G+1)}else if(z.isFile()&&z.name.endsWith(".stx")){let W=z.name.slice(0,-4);if(!Y.has(W))Y.set(W,q);let U=W.toLowerCase();if(!Y.has(U))Y.set(U,q);let j=W.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(!Y.has(j))Y.set(j,q)}}}for(let Q of J)if(X(Q,0),Y.size>0)break;return NY.set($,Y),Y}function XU($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let Y=Z;while(!0){let J=d0.join(Y,"node_modules",$);try{if(m4.statSync(J).isDirectory())return J}catch{}let X=d0.dirname(Y);if(X===Y)return null;Y=X}}async function TY($,Z,Y,J,X){if(!$.includes("import"))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=d0.dirname(Y),K=$,z=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi;return K=K.replace(z,(q,W,U)=>{let j=/import\s+(?:(\{[^}]*\})|([A-Za-z_$][\w$]*))\s+from\s+['"]([^'"]+)['"]\s*;?\s*\n?/g,B=U,_,H=[];while((_=j.exec(U))!==null){let[L,V,O,F]=_,w=null,A=null;if(F.startsWith(".")||F.startsWith("/")){let M=d0.resolve(G,F);if(M.endsWith(".stx"))A=M;else{let T=`${M}.stx`;try{if(m4.statSync(T).isFile())A=T}catch{try{if(m4.statSync(M).isDirectory())w=M}catch{}}}}else w=XU(F,G);if(!w&&!A)continue;let R=!1,N=(M,T)=>{Q.set(M,T),Q.set(M.toLowerCase(),T);let I=M.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();Q.set(I,T),X.add(T)};if(O&&A)N(O,A),R=!0;else if(V){let M=V.slice(1,-1).split(",").map((I)=>I.trim()).filter(Boolean).map((I)=>{let E=I.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(E)return{source:E[1],local:E[2]};return{source:I,local:I}}),T=w?JU(w):null;for(let{source:I,local:E}of M){let D=null;if(A)D=A;else if(T)D=T.get(I)??T.get(I.toLowerCase())??T.get(I.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase())??null;if(D)N(E,D),R=!0}}if(R)H.push({start:_.index,end:_.index+L.length})}if(H.length===0)return q;for(let L=H.length-1;L>=0;L--)B=B.slice(0,H[L].start)+B.slice(H[L].end);return`<script${W}>${B}</script>`}),K}async function QU($,Z,Y,J,X){let Q=$;if(!Z.__importedComponents)Z.__importedComponents=new Map;let G=Z.__importedComponents,K=/@import\s*\(\s*([^)]+)\s*\)/g,z;while((z=K.exec(Q))!==null){let[q,W]=z,U=W.split(",").map((j)=>j.trim().replace(/^['"]|['"]$/g,"")).filter((j)=>j.length>0);for(let j of U){let B=j.split("/"),H=B[B.length-1].replace(/\.stx$/,""),L=H.includes("-")?H.split("-").map((F)=>F.charAt(0).toUpperCase()+F.slice(1)).join(""):H.charAt(0).toUpperCase()+H.slice(1),V=null,O=[d0.resolve(d0.dirname(Y),`${j}.stx`),d0.resolve(d0.dirname(Y),j),d0.resolve(J.componentsDir||"components",`${j}.stx`),d0.resolve(J.componentsDir||"components",j),j.endsWith(".stx")?j:`${j}.stx`];for(let F of O)try{if(await Bun.file(F).exists()){V=F;break}}catch{}if(V){G.set(L,V),G.set(H,V),G.set(H.toLowerCase(),V);let F=L.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(G.set(F,V),X.add(V),J.debug)console.log(`Imported component: ${L} -> ${V}`)}else if(J.debug)console.warn(`Could not resolve imported component: ${j}`)}Q=Q.replace(q,""),K.lastIndex=0}return Q}async function GU($,Z,Y,J,X){let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,z=/@component\s*\(/g,q;while((q=z.exec(Q))!==null){let W=q.index,U=W+q[0].length-1,j=1,B=U+1;while(B<Q.length&&j>0){if(Q[B]==="(")j++;else if(Q[B]===")"){if(j--,j===0)break}B++}if(j!==0)break;let _=Q.substring(U+1,B),H=B+1,L=_.match(/^\s*['"]([^'"]+)['"]/);if(!L){z.lastIndex=0;continue}let V=L[1],O,F=_.slice(L[0].length),w=F.match(/^\s*,\s*/);if(w)O=F.slice(w[0].length).trim();let A={};if(O)try{A=M0(O,Z)}catch(E){let D=E instanceof Error?E.message:String(E);Q=Q.replace(Q.substring(W,H),`[Error parsing component props: ${D}]`);continue}let R="",N=H,T=Q.substring(H).match(/^([\s\S]*?)@endcomponent/);if(T)R=T[1].trim(),N=H+T[0].length;let I=await h1(V,A,R,G,Z,Y,J,K,X);Q=Q.substring(0,W)+I+Q.substring(N),z.lastIndex=0}return Q}async function KU($,Z,Y,J,X){if(!$)return $;let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,z=O1(Q);return Q=z.output,Q=await j(Q,/[a-z][a-z0-9]*-[a-z0-9-]*/,!1),Q=await j(Q,/[A-Z][a-zA-Z0-9]*/,!0),Q=await j(Q,/[a-z][a-z0-9]*/,!1,eW),Q=f5(Q,z.scripts),Q;async function j(B,_,H,L){if(!B)return B;let V=B,O=FY(V,_,L);for(let F=O.length-1;F>=0;F--){let w=O[F],A=H?u4(w.tagName):w.tagName,R=ZU(w.attributes),N=$U(R,Z,J),M=x0.getBuiltin(w.tagName),T=M?await n$(A,G,Z,Y,J):!1;if(M&&!T){let y={context:Z,filePath:Y,options:J,dependencies:X},S=M.render(N,w.content,y);if(Object.keys(N.clientReactive).length>0)S=MY(S,N.clientReactive);if(Object.keys(N.events).length>0){let k=Object.entries(N.events).map(([C,x])=>`${C}="${RY(x)}"`).join(" ");S=S.replace(/^(\s*<[a-zA-Z][a-zA-Z0-9-]*)/,`$1 ${k}`)}V=V.substring(0,w.startIndex)+S+V.substring(w.endIndex);continue}if(!H&&w.tagName.includes("-")&&!await n$(A,G,Z,Y,J))continue;let I={};for(let[y,S]of Object.entries(N.static))I[y]=S;for(let[y,S]of Object.entries(N.serverDynamic))I[y]=S;let D=await h1(A,I,w.content,G,Z,Y,J,K,X);if(Object.keys(N.clientReactive).length>0)D=MY(D,N.clientReactive);if(Object.keys(N.events).length>0){let y=IY(D);if(y){let S=Object.entries(N.events).map(([C,x])=>`${C}="${RY(x)}"`).join(" "),k=Object.keys(N.events).map((C)=>C.replace(/^@/,"").split(".")[0]).join(" ");D=D.substring(0,y.insertPos)+` data-stx-parent-events="${k}" ${S}`+D.substring(y.insertPos)}}V=V.substring(0,w.startIndex)+D+V.substring(w.endIndex)}return V}}function MY($,Z){let Y=IY($);if(!Y)return $;let J=new Set(["if","for","show"]),X=Object.entries(Z).map(([K,z])=>`:${u4(K)}="${z.replace(/"/g,"&quot;")}"`).join(" "),Q=Object.keys(Z).filter((K)=>!J.has(K)).map((K)=>u4(K)).join(" "),G=Q?` data-stx-parent-bindings="${Q}"`:"";return $.substring(0,Y.insertPos)+`${G} ${X}`+$.substring(Y.insertPos)}function IY($){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 Y=0;while(Y<$.length){let J=$.slice(Y),X=J.match(/^\s+/);if(X){Y+=X[0].length;continue}if(J.startsWith("<!--")){let K=$.indexOf("-->",Y+4);if(K===-1)return null;Y=K+3;continue}let Q=J.match(/^<(script|style)\b[^>]*>/i);if(Q){let K=`</${Q[1].toLowerCase()}>`,z=$.toLowerCase().indexOf(K,Y+Q[0].length);if(z===-1)return null;Y=z+K.length;continue}let G=J.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(?:\s|>|\/)/);if(!G)return null;return{insertPos:Y+1+G[1].length}}return null}async function p4($,Z,Y,J,X){if(!AY)OY(),AY=!0;let Q=await TY($,Z,Y,J,X);Q=await QU(Q,Z,Y,J,X),Q=await GU(Q,Z,Y,J,X);let G=[];for(let K=0;K<3;K++){let z=Z1(Q,x5,(W,U)=>`\x00STX_COMPONENT_COMMENT_${G.length+U}\x00`);G.push(...z.tokens);let q=Q;if(Q=await KU(z.output,Z,Y,J,X),Q===q)break}if(G.length>0)Q=Q.replace(/\x00STX_COMPONENT_COMMENT_(\d+)\x00/g,(K,z)=>G[Number(z)]??"");if(J.debug){let K=YU(Q);if(K.length>0)console.warn(`[stx] ${Y}: unresolved component tag(s) after render passes: ${K.join(", ")}. Check nested component output for malformed root tags or recursive component markup.`)}return Q}var AY=!1,R6="\x00stx-boolean-attribute",eW,NY;var N6=b(()=>{a3();LY();wY();C1();N0();A0();eW=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","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"]);NY=new Map});var CY={};e(CY,{processLoops:()=>M6});function WU($,Z){let Y=/@component\s*\(/g,J=$,X,Q=[];while((X=Y.exec(J))!==null){let G=X.index,K=G+X[0].length-1,z=1,q=K+1;while(q<J.length&&z>0){if(J[q]==="(")z++;else if(J[q]===")"){if(z--,z===0)break}q++}if(z!==0)continue;let W=J.substring(K+1,q),U=q+1,j=W.match(/^\s*['"]([^'"]+)['"]/);if(!j)continue;let B=j[1],_=W.slice(j[0].length),H=_.match(/^\s*,\s*/);if(!H)continue;let L=_.slice(H[0].length).trim();if(!L)continue;try{let V=M0(L,Z),O=JSON.stringify(V),F=`@component('${B}', ${O})`;Q.push({start:G,end:U,replacement:F})}catch{continue}}for(let G=Q.length-1;G>=0;G--){let{start:K,end:z,replacement:q}=Q[G];J=J.substring(0,K)+q+J.substring(z)}return J}function l4($,Z,Y){let J=$,X=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\(`),Q;while((Q=X.exec(J))!==null){let G=Q.index,K=G+Q[0].length-1,z=1,q=K+1,W=null,U=!1;while(q<J.length&&z>0){let _=J[q];if(U){U=!1,q++;continue}if(_==="\\"&&W){U=!0,q++;continue}if(W){if(_===W)W=null;q++;continue}if(_==='"'||_==="'"||_==="`"){W=_,q++;continue}if(_==="(")z++;else if(_===")"){if(z--,z===0)break}q++}if(z!==0)break;let j=J.substring(K+1,q),B=Y(j);J=J.substring(0,G)+B+J.substring(q+1)}return J}function UU($,Z){let Y=$;return Y=Y.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)(?=\s+[^=]|\s*\/?>|\s*$)/g,(J,X)=>{if(X in Z)return`:${X}="${X}"`;return J}),Y=Y.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,(J,X,Q)=>{try{let G=Object.keys(Z),K=Object.values(Z);V$(Q);let q=K0(Q,G)(...K),W=JSON.stringify(q),U=Buffer.from(W,"utf8").toString("base64");return`__stx_${X}="${U}"`}catch(G){return J}}),Y}function jU($,Z){let Y=$;return Y=l4(Y,"@break",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(G0(Q)){let K=K0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean(Y0(Q,Z));return G?c4:""}catch{return""}}),Y=l4(Y,"@continue",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(G0(Q)){let K=K0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean(Y0(Q,Z));return G?i4:""}catch{return""}}),Y}function BU($){let Z=$;return Z=Z.replace(/@break(?!\()/g,c4),Z=Z.replace(/@continue(?!\()/g,i4),Z}function EY($){let Z=$.includes(c4),Y=Z?$.substring(0,$.indexOf(c4)):$;return{hasBreak:Z,content:Y}}function kY($){let Z=$.includes(i4),Y=Z?$.substring(0,$.indexOf(i4)):$;return{hasContinue:Z,content:Y}}function SY($){let Z=$;return Z=l4(Z,"@break",(Y)=>{let J=Y.trim();if(!w$(J))return"";return`\`; if (${J}) { break; } result += \``}),Z=l4(Z,"@continue",(Y)=>{let J=Y.trim();if(!w$(J))return"";return`\`; if (${J}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function _U($){let Z=/@forelse\s*\(/g,Y,J=[],X=/@foreach\s*\(/g,Q=/@endforeach/g,G;while((G=X.exec($))!==null)J.push({pos:G.index,delta:1});while((G=Q.exec($))!==null)J.push({pos:G.index,delta:-1});J.sort((W,U)=>W.pos-U.pos);let K=[],z=0;for(let W of J)z+=W.delta,K.push({pos:W.pos,depth:z});function q(W){let U=0,j=K.length-1,B=0;while(U<=j){let _=U+j>>1;if(K[_].pos<=W)B=K[_].depth,U=_+1;else j=_-1}return B}while((Y=Z.exec($))!==null){if(q(Y.index)>0)continue;let W=Y.index,U=Y.index+Y[0].length-1,j=1,B=U+1,_=-1;while(B<$.length&&j>0){if($[B]==="(")j++;else if($[B]===")"){if(j--,j===0){_=B;break}}B++}if(_===-1)continue;let H=$.substring(U+1,_),L=H.indexOf(" as ");if(L===-1)continue;let V=H.substring(0,L).trim(),O=H.substring(L+4).trim(),F=_+1,w=1,A=F,R=/@forelse\s*\(/g,N=/@endforelse/g,M=-1;while(w>0&&A<$.length){R.lastIndex=A,N.lastIndex=A;let S=R.exec($),k=N.exec($);if(!k)break;if(S&&S.index<k.index)w++,A=S.index+S[0].length;else{if(w--,w===0){M=k.index;break}A=k.index+11}}if(M===-1)continue;let T=$.substring(F,M),I=M+11,E=-1,D=0,y=0;while(y<T.length){let S=T.indexOf("@",y);if(S===-1)break;let k=T.substring(S);if(/^@forelse\s*\(/.test(k))D++,y=S+1;else if(k.startsWith("@endforelse"))D--,y=S+11;else if(D===0&&k.startsWith("@empty")){if(T.length<=S+6||!/[a-z]/i.test(T[S+6])){E=S;break}y=S+1}else y=S+1}if(E===-1)continue;return{start:W,end:I,arrayExpr:V,itemVar:O,foreachContent:T.substring(0,E),emptyContent:T.substring(E+6)}}return null}function bY($,Z){let Y=$;while(!0){let J=_U(Y);if(!J)break;let{start:X,end:Q,arrayExpr:G,itemVar:K,foreachContent:z,emptyContent:q}=J;try{let W;if(G0(G))W=K0(G,Object.keys(Z))(...Object.values(Z));else W=Y0(G,Z);let U;if(!Array.isArray(W)||W.length===0)U=q;else U=`@foreach (${G} as ${K})${z}@endforeach`;Y=Y.substring(0,X)+U+Y.substring(Q)}catch(W){let U=W instanceof Error?W.message:String(W),j=Z0("Forelse",`Error in @forelse(${G} as ${K}): ${U}`,r.EVALUATION_ERROR);Y=Y.substring(0,X)+j+Y.substring(Q)}}return Y}function M6($,Z,Y,J){let X=$;X=bY(X,Z);function Q(z){let q=/@foreach\s*\(/g,W;while((W=q.exec(z))!==null){let U=W.index,j=W.index+W[0].length-1,B=1,_=j+1,H=-1;while(_<z.length&&B>0){if(z[_]==="(")B++;else if(z[_]===")"){if(B--,B===0){H=_;break}}_++}if(H===-1)continue;let L=z.substring(j+1,H),V=L.indexOf(" as ");if(V===-1)continue;let O=U,F=L.substring(0,V),w=L.substring(V+4),A=H+1,R=1,N=A,M=/@foreach\s*\(/g,T=/@endforeach/g;while(R>0&&N<z.length){M.lastIndex=N,T.lastIndex=N;let I=M.exec(z),E=T.exec(z);if(!E)break;if(I&&I.index<E.index)R++,N=I.index+I[0].length;else{if(R--,R===0){let D=z.substring(A,E.index),y=E.index+11;return{start:O,end:y,arrayExpr:F,itemVar:w,content:D}}N=E.index+11}}}return null}function G(z,q){let W=z;while(!0){let U=Q(W);if(!U)break;let{start:j,end:B,arrayExpr:_,itemVar:H,content:L}=U;try{let V=_.trim(),O;if(G0(V))O=K0(V,Object.keys(q))(...Object.values(q));else O=Y0(V,q);let F=!1;if(!Array.isArray(O))if(O instanceof Map)O=Array.from(O),F=!0;else if(O instanceof Set)O=Array.from(O);else if(typeof O==="string")O=Array.from(O);else if(O&&typeof O==="object"&&!(O instanceof Date)&&!(O instanceof RegExp))O=Object.entries(O),F=!0;else{let E=Z0("Foreach",`Error in @foreach: ${V} is not iterable`,r.TYPE_ERROR);W=W.substring(0,j)+E+W.substring(B);continue}let w=J?.loops?.useAltLoopVariable??qU,A=H.trim(),R=null,N,M=!1;if(A.includes("=>")){let E=A.split("=>").map((D)=>D.trim());if(E.length===2&&E[0]&&E[1])R=E[0],N=E[1];else N=A}else if(!A.startsWith("[")&&!A.startsWith("{")&&A.includes(",")){let E=A.split(",").map((D)=>D.trim());if(E.length===2&&E[0]&&E[1])N=E[0],R=E[1],M=!0;else N=A}else N=A;let T="",I=O;for(let E=0;E<I.length;E++){let D=I[E],y={index:E,iteration:E+1,first:E===0,last:E===I.length-1,count:I.length},S={...q,loop:y,$loop:y};if(N.startsWith("[")&&N.endsWith("]")){let f=N.slice(1,-1).split(",").map((d)=>d.trim());if(Array.isArray(D))f.forEach((d,c)=>{if(d)S[d]=D[c]});else S[N]=D}else S[N]=D;if(R)if(!M&&F&&Array.isArray(D)&&D.length===2)S[R]=D[0],S[N]=D[1];else S[R]=E;let k=jU(L,S),C=kY(k);if(C.hasContinue){T+=C.content;continue}let x=EY(k);if(x.hasBreak){T+=x.content;break}if(k=bY(k,S),k=G(k,S),k=c1(k,S,Y),k=BU(k),x=EY(k),x.hasBreak){T+=x.content;break}if(C=kY(k),C.hasContinue){T+=C.content;continue}k=L1(k,S,Y),k=UU(k,S),k=WU(k,S),T+=k}W=W.substring(0,j)+T+W.substring(B)}catch(V){let O=Z0("Foreach",`Error in @foreach(${_.trim()} as ${H.trim()}): ${V instanceof Error?V.message:String(V)}`,r.EVALUATION_ERROR);W=W.substring(0,j)+O+W.substring(B)}}return W}X=G(X,Z),X=PY(X,Z,Y,J);let K=J?.loops?.maxWhileIterations??zU;return X=LU(X,Z,K),X}function yY($){return w$($)}function PY($,Z,Y,J){let X=$,Q=!0;while(Q){Q=!1;let G=X.match(/@for\s*\(/);if(!G||G.index===void 0)break;let K=G.index,z=K+G[0].length-1,q=v0(X,"(",")",z);if(q===-1)break;let W=X.slice(z+1,q),U=q+1,j=k$(X.slice(K),"for","endfor");if(j.length===0)break;let B=j[0].content,_=K+j[0].end;if(!yY(W)){let H=Z0("For",`Unsafe expression in @for: ${W}`,r.UNSAFE_EXPRESSION);X=X.substring(0,K)+H+X.substring(_),Q=!0;continue}try{let H=HU(W),L=/@(?:for|foreach|if|unless)\s*\(/.test(B);if(H.length>0&&L){let R=OU({forExpr:W,content:B,iterVarNames:H,context:Z,filePath:Y,options:J});X=X.substring(0,K)+R+X.substring(_),Q=!0;continue}let V=Object.keys(Z),O=Object.values(Z),F=B.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(R,N)=>{return`\${${N}}`});F=SY(F);let A=Function(...V,`
9355
+ </style>`}}});import{existsSync as oW,readFileSync as sW}from"fs";function rW($){if(_Y.has($))return;_Y.add($),console.warn(`[stx] icon collection "${$}" is not installed, so its icons render as nothing. Install it with \`bun add -d @iconify-json/${$}\`.`)}function aW($){let Z=process.cwd();for(let Y 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(oW(Y))return Y;for(let Y of[`@iconify-json/${$}/icons.json`,`@iconify/json/json/${$}.json`])try{return U0.resolve(Y)}catch{}return null}function tW($){if(h4.has($))return h4.get($);let Z=aW($);if(!Z)return rW($),null;try{let Y=JSON.parse(sW(Z,"utf8"));return h4.set($,Y.icons),Y.icons}catch{return null}}function L5($,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 h4,_Y,O6;var L6=b(()=>{h4=new Map,_Y=new Set;O6={name:"Icon",aliases:["icon","stx-icon"],render($,Z,Y){let J=L5($,"name")??L5($,"icon");if(!J)return"<!-- Icon: missing name/icon prop -->";let X="lucide",Q=J;if(J.includes(":")){let O=J.split(":");X=O[0],Q=O[1]}let G=y0(L5($,"size")||"24"),K=y0(L5($,"color")||"currentColor"),z=y0(L5($,"class")||""),q=y0(L5($,"style")||""),W=h4.get(X)??tW(X);if(!W)return`<!-- Icon: collection "${X}" not loaded -->`;let U=W[Q];if(!U)return`<!-- Icon: "${Q}" not found in ${X} -->`;let j=U.width||24,_=U.height||24,B=`0 0 ${j} ${_}`,H=U.body;if(K!=="currentColor")H=H.replace(/currentColor/g,K);let L=z?` class="${z}"`:"",V=q?` style="${q}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${G}" height="${G}" viewBox="${B}" fill="none"${L}${V}>${H}</svg>`}}});function BY($,...Z){for(let Y of Z){if($.serverDynamic[Y]!==void 0)return String($.serverDynamic[Y]);let J=$.static[Y];if(typeof J==="string")return J}return}function HY($,Z){let Y=new RegExp(`<(template|div|span)[^>]*\\bslot=["']${Z}["'][^>]*>([\\s\\S]*?)<\\/\\1>`,"i"),J=$.match(Y);if(!J)return{region:null,rest:$};return{region:J[2],rest:$.replace(J[0],"")}}var F6;var V6=b(()=>{F6={name:"Suspense",aliases:["suspense"],render($,Z,Y){let J=HY(Z,"fallback"),X=J.rest,Q=HY(X,"error"),G=Q.rest,K=J.region??BY($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',z=Q.region??BY($,"errorFallback","error-fallback")??'<div class="stx-suspense-error">Something went wrong.</div>';return`<div data-stx-suspense><div data-stx-suspense-fallback>${K}</div><div data-stx-suspense-error hidden>${z}</div><div data-stx-suspense-content hidden>${G}</div></div>`}}});function d4($,...Z){for(let Y of Z){if($.serverDynamic[Y]!==void 0)return String($.serverDynamic[Y]);let J=$.static[Y];if(typeof J==="string")return J}return}var w6;var A6=b(()=>{w6={name:"TransitionGroup",aliases:["transition-group"],render($,Z,Y){let J=(d4($,"name")||"v").replace(/["'<>]/g,""),X=(d4($,"tag")||"div").replace(/[^a-z0-9-]/gi,"")||"div",Q=d4($,"class"),G=d4($,"id"),K=[`data-stx-transition-group="${J}"`,Q?`class="${Q}"`:"",G?`id="${G}"`:""].filter(Boolean).join(" ");return`<${X} ${K}>${Z}</${X}>`}}});function OY(){x0.registerBuiltin(t3),x0.registerBuiltin(J6),x0.registerBuiltin(Q6),x0.registerBuiltin(z6),x0.registerBuiltin(W6),x0.registerBuiltin(j6),x0.registerBuiltin(B6),x0.registerBuiltin(O6),x0.registerBuiltin(F6),x0.registerBuiltin(w6)}var LY=b(()=>{e3();X6();G6();q6();U6();_6();H6();L6();V6();A6();a3();e3();X6();G6();q6();U6();_6();H6();L6();V6();A6()});function m4($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").toLowerCase()}function FY($,Z,Y){let J=[],X=0;while(X<$.length){let Q=$.indexOf("<",X);if(Q===-1)break;let K=$.slice(Q+1).match(new RegExp(`^(${Z.source})`));if(!K){X=Q+1;continue}let z=K[1];if(Y&&Y.has(z.toLowerCase())){let H=Q+1+z.length;while(H<$.length&&$[H]!==">")H++;X=H+1;continue}let q=Q+1+z.length,W=null,U=q,j=-1,_=!1;while(q<$.length){let H=$[q];if(W){if(H==="\\"&&q+1<$.length){q+=2;continue}if(H===W)W=null;q++;continue}if(H==='"'||H==="'"){W=H,q++;continue}if(H==="/"&&q+1<$.length&&$[q+1]===">"){j=q+2,_=!0;break}if(H===">"){j=q+1;break}q++}if(j===-1){X=Q+1;continue}let B=$.slice(U,_?j-2:j-1).trim();if(_)J.push({fullMatch:$.slice(Q,j),tagName:z,attributes:B,content:"",startIndex:Q,endIndex:j,isSelfClosing:!0}),X=j;else{let H=`<${z}`,L=`</${z}>`,V=1,O=j,F=-1;while(V>0&&O<$.length){let R=$.indexOf(H,O),N=$.indexOf(L,O);if(N===-1)break;if(R!==-1&&R<N){let M=$[R+H.length];if(M===" "||M===">"||M==="/"||M===`
9356
+ `||M==="\t")V++;O=R+H.length}else{if(V--,V===0){F=N;break}O=N+L.length}}if(F===-1){X=j;continue}let w=$.slice(j,F),A=F+L.length;J.push({fullMatch:$.slice(Q,A),tagName:z,attributes:B,content:w,startIndex:Q,endIndex:A,isSelfClosing:!1}),X=A}}return J}function VY($,Z){try{let Y=Buffer.from($,"base64").toString("utf8");return JSON.parse(Y)}catch{}try{let Y=$.replace(/&quot;/g,'"').replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&");return JSON.parse(Y)}catch(Y){if(Z?.debug)console.error("Error decoding __stx_ prop:",Y);return $}}var wY=b(()=>{A0();N0();C1()});var DY={};e(DY,{processESImports:()=>TY,processComponents:()=>p4});import u4 from"fs";import d0 from"path";function $U($,Z,Y){let J={static:{},staticNames:{},serverDynamic:{},clientReactive:{},events:{}},X=new Set(["x-cloak","x-show","x-if","x-for","x-data","x-init","x-transition","x-ref","x-effect","x-model","x-text","x-html","x-class","x-style","x-on","x-bind"]),Q=(K)=>{if(!K.includes("-")||K.startsWith("@")||K.startsWith(":")||K.startsWith("x-")||K.startsWith("__"))return K;if(K.startsWith("aria-")||K.startsWith("data-"))return K;return K.replace(/-([a-z0-9])/g,(z,q)=>q.toUpperCase())},G=(K,z)=>{let q=Q(K);if(J.static[q]=z,q!==K)J.staticNames[q]=K};for(let[K,z]of Object.entries($)){let q=K.startsWith("x-")&&!X.has(K)&&!K.startsWith("x-bind:")&&!K.startsWith("x-on:")?`:${K.slice(2)}`:K;if(q.startsWith("@")){J.events[q]=z;continue}if(q.startsWith("__stx_")){let W=Q(q.slice(6));J.serverDynamic[W]=VY(z,Y);continue}if(q.startsWith(":")){let W=Q(q.slice(1)),U=z===R6?W:z;if(W==="if"||W==="for"||W==="show"){J.clientReactive[W]=U;continue}try{if(!G0(U)){if(Y.debug)console.error(`Unsafe expression in :${W} binding: ${U}`);J.clientReactive[W]=U;continue}let j=Object.keys(Z),B=K0(U,j)(...Object.values(Z));if(B===void 0){let H=U.match(/\b[a-zA-Z_$][a-zA-Z0-9_$]*\b/g)||[],L=new Set(["true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","if","else"]);if(H.some((O)=>!L.has(O)&&!j.includes(O))){J.clientReactive[W]=U;continue}}J.serverDynamic[W]=B}catch{J.clientReactive[W]=U}continue}if(typeof z==="string"&&z.includes("{{")&&z.includes("}}")){let W=z.match(/^\{\{\s*([\s\S]+?)\s*\}\}$/);if(W)try{let U=W[1];if(G0(U)){let _=K0(U,Object.keys(Z))(...Object.values(Z));G(q,_!=null?String(_):"")}else{if(Y.debug)console.error(`Unsafe expression in ${q}: ${U}`);G(q,z)}}catch(U){if(Y.debug)console.error(`Error evaluating expression for ${q}:`,U);G(q,z)}else{let U=z,j=/\{\{\s*([\s\S]+?)\s*\}\}/g,_;while((_=j.exec(z))!==null)try{let B=_[1];if(!G0(B)){if(Y.debug)console.error(`Unsafe expression in ${q}: ${B}`);continue}let L=K0(B,Object.keys(Z))(...Object.values(Z));U=U.replace(_[0],String(L??""))}catch(B){if(Y.debug)console.error(`Error evaluating expression in ${q}:`,B)}G(q,U)}continue}G(q,z===R6?"true":z)}return J}function ZU($){let Z={},Y=0,J=$.length;while(Y<J){while(Y<J&&/\s/.test($[Y]))Y++;if(Y>=J)break;let X="";while(Y<J&&!/[\s=]/.test($[Y]))X+=$[Y],Y++;if(!X)break;while(Y<J&&/\s/.test($[Y]))Y++;if(Y<J&&$[Y]==="="){Y++;while(Y<J&&/\s/.test($[Y]))Y++;let Q="";if(Y<J&&($[Y]==='"'||$[Y]==="'")){let G=$[Y];Y++;while(Y<J){let K=$[Y];if(K==="\\"&&Y+1<J){Y++,Q+=$[Y],Y++;continue}if(K===G){Y++;break}Q+=K,Y++}}else while(Y<J&&!/\s/.test($[Y]))Q+=$[Y],Y++;Z[X]=Q}else Z[X]=R6}return Z}function RY($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function YU($){let Z=new Set,Y=/<([A-Z][A-Za-z0-9]*|stx-[a-z0-9-]+)\b[^>]*>/g,J;while((J=Y.exec($))!==null){let X=J[1];if(x0.isBuiltin(X))Z.add(X)}return[...Z].sort()}function JU($){let Z=NY.get($);if(Z)return Z;let Y=new Map,J=[d0.join($,"src"),d0.join($,"dist"),$];function X(Q,G){if(G>6)return;let K;try{K=u4.readdirSync(Q,{withFileTypes:!0})}catch{return}for(let z of K){let q=d0.join(Q,z.name);if(z.isDirectory()){if(z.name==="node_modules"||z.name.startsWith("."))continue;X(q,G+1)}else if(z.isFile()&&z.name.endsWith(".stx")){let W=z.name.slice(0,-4);if(!Y.has(W))Y.set(W,q);let U=W.toLowerCase();if(!Y.has(U))Y.set(U,q);let j=W.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(!Y.has(j))Y.set(j,q)}}}for(let Q of J)if(X(Q,0),Y.size>0)break;return NY.set($,Y),Y}function XU($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let Y=Z;while(!0){let J=d0.join(Y,"node_modules",$);try{if(u4.statSync(J).isDirectory())return J}catch{}let X=d0.dirname(Y);if(X===Y)return null;Y=X}}async function TY($,Z,Y,J,X){if(!$.includes("import"))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=d0.dirname(Y),K=$,z=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi;return K=K.replace(z,(q,W,U)=>{let j=/import\s+(?:(\{[^}]*\})|([A-Za-z_$][\w$]*))\s+from\s+['"]([^'"]+)['"]\s*;?\s*\n?/g,_=U,B,H=[];while((B=j.exec(U))!==null){let[L,V,O,F]=B,w=null,A=null;if(F.startsWith(".")||F.startsWith("/")){let M=d0.resolve(G,F);if(M.endsWith(".stx"))A=M;else{let T=`${M}.stx`;try{if(u4.statSync(T).isFile())A=T}catch{try{if(u4.statSync(M).isDirectory())w=M}catch{}}}}else w=XU(F,G);if(!w&&!A)continue;let R=!1,N=(M,T)=>{Q.set(M,T),Q.set(M.toLowerCase(),T);let I=M.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();Q.set(I,T),X.add(T)};if(O&&A)N(O,A),R=!0;else if(V){let M=V.slice(1,-1).split(",").map((I)=>I.trim()).filter(Boolean).map((I)=>{let E=I.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);if(E)return{source:E[1],local:E[2]};return{source:I,local:I}}),T=w?JU(w):null;for(let{source:I,local:E}of M){let D=null;if(A)D=A;else if(T)D=T.get(I)??T.get(I.toLowerCase())??T.get(I.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase())??null;if(D)N(E,D),R=!0}}if(R)H.push({start:B.index,end:B.index+L.length})}if(H.length===0)return q;for(let L=H.length-1;L>=0;L--)_=_.slice(0,H[L].start)+_.slice(H[L].end);return`<script${W}>${_}</script>`}),K}async function QU($,Z,Y,J,X){let Q=$;if(!Z.__importedComponents)Z.__importedComponents=new Map;let G=Z.__importedComponents,K=/@import\s*\(\s*([^)]+)\s*\)/g,z;while((z=K.exec(Q))!==null){let[q,W]=z,U=W.split(",").map((j)=>j.trim().replace(/^['"]|['"]$/g,"")).filter((j)=>j.length>0);for(let j of U){let _=j.split("/"),H=_[_.length-1].replace(/\.stx$/,""),L=H.includes("-")?H.split("-").map((F)=>F.charAt(0).toUpperCase()+F.slice(1)).join(""):H.charAt(0).toUpperCase()+H.slice(1),V=null,O=[d0.resolve(d0.dirname(Y),`${j}.stx`),d0.resolve(d0.dirname(Y),j),d0.resolve(J.componentsDir||"components",`${j}.stx`),d0.resolve(J.componentsDir||"components",j),j.endsWith(".stx")?j:`${j}.stx`];for(let F of O)try{if(await Bun.file(F).exists()){V=F;break}}catch{}if(V){G.set(L,V),G.set(H,V),G.set(H.toLowerCase(),V);let F=L.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(G.set(F,V),X.add(V),J.debug)console.log(`Imported component: ${L} -> ${V}`)}else if(J.debug)console.warn(`Could not resolve imported component: ${j}`)}Q=Q.replace(q,""),K.lastIndex=0}return Q}async function GU($,Z,Y,J,X){let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,z=/@component\s*\(/g,q;while((q=z.exec(Q))!==null){let W=q.index,U=W+q[0].length-1,j=1,_=U+1;while(_<Q.length&&j>0){if(Q[_]==="(")j++;else if(Q[_]===")"){if(j--,j===0)break}_++}if(j!==0)break;let B=Q.substring(U+1,_),H=_+1,L=B.match(/^\s*['"]([^'"]+)['"]/);if(!L){z.lastIndex=0;continue}let V=L[1],O,F=B.slice(L[0].length),w=F.match(/^\s*,\s*/);if(w)O=F.slice(w[0].length).trim();let A={};if(O)try{A=M0(O,Z)}catch(E){let D=E instanceof Error?E.message:String(E);Q=Q.replace(Q.substring(W,H),`[Error parsing component props: ${D}]`);continue}let R="",N=H,T=Q.substring(H).match(/^([\s\S]*?)@endcomponent/);if(T)R=T[1].trim(),N=H+T[0].length;let I=await h1(V,A,R,G,Z,Y,J,K,X);Q=Q.substring(0,W)+I+Q.substring(N),z.lastIndex=0}return Q}async function KU($,Z,Y,J,X){if(!$)return $;let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,z=O1(Q);return Q=z.output,Q=await j(Q,/[a-z][a-z0-9]*-[a-z0-9-]*/,!1),Q=await j(Q,/[A-Z][a-zA-Z0-9]*/,!0),Q=await j(Q,/[a-z][a-z0-9]*/,!1,eW),Q=f5(Q,z.scripts),Q;async function j(_,B,H,L){if(!_)return _;let V=_,O=FY(V,B,L);for(let F=O.length-1;F>=0;F--){let w=O[F],A=H?m4(w.tagName):w.tagName,R=ZU(w.attributes),N=$U(R,Z,J),M=x0.getBuiltin(w.tagName),T=M?await n$(A,G,Z,Y,J):!1;if(M&&!T){let y={context:Z,filePath:Y,options:J,dependencies:X},S=M.render(N,w.content,y);if(Object.keys(N.clientReactive).length>0)S=MY(S,N.clientReactive);if(Object.keys(N.events).length>0){let k=Object.entries(N.events).map(([C,x])=>`${C}="${RY(x)}"`).join(" ");S=S.replace(/^(\s*<[a-zA-Z][a-zA-Z0-9-]*)/,`$1 ${k}`)}V=V.substring(0,w.startIndex)+S+V.substring(w.endIndex);continue}if(!H&&w.tagName.includes("-")&&!await n$(A,G,Z,Y,J))continue;let I={};for(let[y,S]of Object.entries(N.static))I[y]=S;for(let[y,S]of Object.entries(N.serverDynamic))I[y]=S;let D=await h1(A,I,w.content,G,Z,Y,J,K,X);if(Object.keys(N.clientReactive).length>0)D=MY(D,N.clientReactive);if(Object.keys(N.events).length>0){let y=IY(D);if(y){let S=Object.entries(N.events).map(([C,x])=>`${C}="${RY(x)}"`).join(" "),k=Object.keys(N.events).map((C)=>C.replace(/^@/,"").split(".")[0]).join(" ");D=D.substring(0,y.insertPos)+` data-stx-parent-events="${k}" ${S}`+D.substring(y.insertPos)}}V=V.substring(0,w.startIndex)+D+V.substring(w.endIndex)}return V}}function MY($,Z){let Y=new Set(["if","for"]),J=new Set(["show"]),X=Object.entries(Z).filter(([W])=>!Y.has(W)),Q=X.filter(([W])=>!J.has(W)).map(([W])=>m4(W)).join(" "),G=$,K=X.length>0?IY(G):null;if(K){let W=X.map(([j,_])=>`:${m4(j)}="${_.replace(/"/g,"&quot;")}"`).join(" "),U=Q?` data-stx-parent-bindings="${Q}"`:"";G=G.substring(0,K.insertPos)+`${U} ${W}`+G.substring(K.insertPos)}let z=Z.if;if(z)G=`<template :if="${z.replace(/"/g,"&quot;")}">${G}</template>`;let q=Z.for;if(q)G=`<template :for="${q.replace(/"/g,"&quot;")}">${G}</template>`;return G}function IY($){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 Y=0;while(Y<$.length){let J=$.slice(Y),X=J.match(/^\s+/);if(X){Y+=X[0].length;continue}if(J.startsWith("<!--")){let K=$.indexOf("-->",Y+4);if(K===-1)return null;Y=K+3;continue}let Q=J.match(/^<(script|style)\b[^>]*>/i);if(Q){let K=`</${Q[1].toLowerCase()}>`,z=$.toLowerCase().indexOf(K,Y+Q[0].length);if(z===-1)return null;Y=z+K.length;continue}let G=J.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(?:\s|>|\/)/);if(!G)return null;return{insertPos:Y+1+G[1].length}}return null}async function p4($,Z,Y,J,X){if(!AY)OY(),AY=!0;let Q=await TY($,Z,Y,J,X);Q=await QU(Q,Z,Y,J,X),Q=await GU(Q,Z,Y,J,X);let G=[];for(let K=0;K<3;K++){let z=Z1(Q,x5,(W,U)=>`\x00STX_COMPONENT_COMMENT_${G.length+U}\x00`);G.push(...z.tokens);let q=Q;if(Q=await KU(z.output,Z,Y,J,X),Q===q)break}if(G.length>0)Q=Q.replace(/\x00STX_COMPONENT_COMMENT_(\d+)\x00/g,(K,z)=>G[Number(z)]??"");if(J.debug){let K=YU(Q);if(K.length>0)console.warn(`[stx] ${Y}: unresolved component tag(s) after render passes: ${K.join(", ")}. Check nested component output for malformed root tags or recursive component markup.`)}return Q}var AY=!1,R6="\x00stx-boolean-attribute",eW,NY;var N6=b(()=>{a3();LY();wY();C1();N0();A0();eW=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","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"]);NY=new Map});var CY={};e(CY,{processLoops:()=>M6});function WU($,Z){let Y=/@component\s*\(/g,J=$,X,Q=[];while((X=Y.exec(J))!==null){let G=X.index,K=G+X[0].length-1,z=1,q=K+1;while(q<J.length&&z>0){if(J[q]==="(")z++;else if(J[q]===")"){if(z--,z===0)break}q++}if(z!==0)continue;let W=J.substring(K+1,q),U=q+1,j=W.match(/^\s*['"]([^'"]+)['"]/);if(!j)continue;let _=j[1],B=W.slice(j[0].length),H=B.match(/^\s*,\s*/);if(!H)continue;let L=B.slice(H[0].length).trim();if(!L)continue;try{let V=M0(L,Z),O=JSON.stringify(V),F=`@component('${_}', ${O})`;Q.push({start:G,end:U,replacement:F})}catch{continue}}for(let G=Q.length-1;G>=0;G--){let{start:K,end:z,replacement:q}=Q[G];J=J.substring(0,K)+q+J.substring(z)}return J}function l4($,Z,Y){let J=$,X=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\(`),Q;while((Q=X.exec(J))!==null){let G=Q.index,K=G+Q[0].length-1,z=1,q=K+1,W=null,U=!1;while(q<J.length&&z>0){let B=J[q];if(U){U=!1,q++;continue}if(B==="\\"&&W){U=!0,q++;continue}if(W){if(B===W)W=null;q++;continue}if(B==='"'||B==="'"||B==="`"){W=B,q++;continue}if(B==="(")z++;else if(B===")"){if(z--,z===0)break}q++}if(z!==0)break;let j=J.substring(K+1,q),_=Y(j);J=J.substring(0,G)+_+J.substring(q+1)}return J}function UU($,Z){let Y=$;return Y=Y.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)(?=\s+[^=]|\s*\/?>|\s*$)/g,(J,X)=>{if(X in Z)return`:${X}="${X}"`;return J}),Y=Y.replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,(J,X,Q)=>{try{let G=Object.keys(Z),K=Object.values(Z);V$(Q);let q=K0(Q,G)(...K),W=JSON.stringify(q),U=Buffer.from(W,"utf8").toString("base64");return`__stx_${X}="${U}"`}catch(G){return J}}),Y}function jU($,Z){let Y=$;return Y=l4(Y,"@break",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(G0(Q)){let K=K0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean(Y0(Q,Z));return G?c4:""}catch{return""}}),Y=l4(Y,"@continue",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(G0(Q)){let K=K0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean(Y0(Q,Z));return G?i4:""}catch{return""}}),Y}function _U($){let Z=$;return Z=Z.replace(/@break(?!\()/g,c4),Z=Z.replace(/@continue(?!\()/g,i4),Z}function EY($){let Z=$.includes(c4),Y=Z?$.substring(0,$.indexOf(c4)):$;return{hasBreak:Z,content:Y}}function kY($){let Z=$.includes(i4),Y=Z?$.substring(0,$.indexOf(i4)):$;return{hasContinue:Z,content:Y}}function SY($){let Z=$;return Z=l4(Z,"@break",(Y)=>{let J=Y.trim();if(!w$(J))return"";return`\`; if (${J}) { break; } result += \``}),Z=l4(Z,"@continue",(Y)=>{let J=Y.trim();if(!w$(J))return"";return`\`; if (${J}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function BU($){let Z=/@forelse\s*\(/g,Y,J=[],X=/@foreach\s*\(/g,Q=/@endforeach/g,G;while((G=X.exec($))!==null)J.push({pos:G.index,delta:1});while((G=Q.exec($))!==null)J.push({pos:G.index,delta:-1});J.sort((W,U)=>W.pos-U.pos);let K=[],z=0;for(let W of J)z+=W.delta,K.push({pos:W.pos,depth:z});function q(W){let U=0,j=K.length-1,_=0;while(U<=j){let B=U+j>>1;if(K[B].pos<=W)_=K[B].depth,U=B+1;else j=B-1}return _}while((Y=Z.exec($))!==null){if(q(Y.index)>0)continue;let W=Y.index,U=Y.index+Y[0].length-1,j=1,_=U+1,B=-1;while(_<$.length&&j>0){if($[_]==="(")j++;else if($[_]===")"){if(j--,j===0){B=_;break}}_++}if(B===-1)continue;let H=$.substring(U+1,B),L=H.indexOf(" as ");if(L===-1)continue;let V=H.substring(0,L).trim(),O=H.substring(L+4).trim(),F=B+1,w=1,A=F,R=/@forelse\s*\(/g,N=/@endforelse/g,M=-1;while(w>0&&A<$.length){R.lastIndex=A,N.lastIndex=A;let S=R.exec($),k=N.exec($);if(!k)break;if(S&&S.index<k.index)w++,A=S.index+S[0].length;else{if(w--,w===0){M=k.index;break}A=k.index+11}}if(M===-1)continue;let T=$.substring(F,M),I=M+11,E=-1,D=0,y=0;while(y<T.length){let S=T.indexOf("@",y);if(S===-1)break;let k=T.substring(S);if(/^@forelse\s*\(/.test(k))D++,y=S+1;else if(k.startsWith("@endforelse"))D--,y=S+11;else if(D===0&&k.startsWith("@empty")){if(T.length<=S+6||!/[a-z]/i.test(T[S+6])){E=S;break}y=S+1}else y=S+1}if(E===-1)continue;return{start:W,end:I,arrayExpr:V,itemVar:O,foreachContent:T.substring(0,E),emptyContent:T.substring(E+6)}}return null}function bY($,Z){let Y=$;while(!0){let J=BU(Y);if(!J)break;let{start:X,end:Q,arrayExpr:G,itemVar:K,foreachContent:z,emptyContent:q}=J;try{let W;if(G0(G))W=K0(G,Object.keys(Z))(...Object.values(Z));else W=Y0(G,Z);let U;if(!Array.isArray(W)||W.length===0)U=q;else U=`@foreach (${G} as ${K})${z}@endforeach`;Y=Y.substring(0,X)+U+Y.substring(Q)}catch(W){let U=W instanceof Error?W.message:String(W),j=Z0("Forelse",`Error in @forelse(${G} as ${K}): ${U}`,r.EVALUATION_ERROR);Y=Y.substring(0,X)+j+Y.substring(Q)}}return Y}function M6($,Z,Y,J){let X=$;X=bY(X,Z);function Q(z){let q=/@foreach\s*\(/g,W;while((W=q.exec(z))!==null){let U=W.index,j=W.index+W[0].length-1,_=1,B=j+1,H=-1;while(B<z.length&&_>0){if(z[B]==="(")_++;else if(z[B]===")"){if(_--,_===0){H=B;break}}B++}if(H===-1)continue;let L=z.substring(j+1,H),V=L.indexOf(" as ");if(V===-1)continue;let O=U,F=L.substring(0,V),w=L.substring(V+4),A=H+1,R=1,N=A,M=/@foreach\s*\(/g,T=/@endforeach/g;while(R>0&&N<z.length){M.lastIndex=N,T.lastIndex=N;let I=M.exec(z),E=T.exec(z);if(!E)break;if(I&&I.index<E.index)R++,N=I.index+I[0].length;else{if(R--,R===0){let D=z.substring(A,E.index),y=E.index+11;return{start:O,end:y,arrayExpr:F,itemVar:w,content:D}}N=E.index+11}}}return null}function G(z,q){let W=z;while(!0){let U=Q(W);if(!U)break;let{start:j,end:_,arrayExpr:B,itemVar:H,content:L}=U;try{let V=B.trim(),O;if(G0(V))O=K0(V,Object.keys(q))(...Object.values(q));else O=Y0(V,q);let F=!1;if(!Array.isArray(O))if(O instanceof Map)O=Array.from(O),F=!0;else if(O instanceof Set)O=Array.from(O);else if(typeof O==="string")O=Array.from(O);else if(O&&typeof O==="object"&&!(O instanceof Date)&&!(O instanceof RegExp))O=Object.entries(O),F=!0;else{let E=Z0("Foreach",`Error in @foreach: ${V} is not iterable`,r.TYPE_ERROR);W=W.substring(0,j)+E+W.substring(_);continue}let w=J?.loops?.useAltLoopVariable??qU,A=H.trim(),R=null,N,M=!1;if(A.includes("=>")){let E=A.split("=>").map((D)=>D.trim());if(E.length===2&&E[0]&&E[1])R=E[0],N=E[1];else N=A}else if(!A.startsWith("[")&&!A.startsWith("{")&&A.includes(",")){let E=A.split(",").map((D)=>D.trim());if(E.length===2&&E[0]&&E[1])N=E[0],R=E[1],M=!0;else N=A}else N=A;let T="",I=O;for(let E=0;E<I.length;E++){let D=I[E],y={index:E,iteration:E+1,first:E===0,last:E===I.length-1,count:I.length},S={...q,loop:y,$loop:y};if(N.startsWith("[")&&N.endsWith("]")){let f=N.slice(1,-1).split(",").map((d)=>d.trim());if(Array.isArray(D))f.forEach((d,c)=>{if(d)S[d]=D[c]});else S[N]=D}else S[N]=D;if(R)if(!M&&F&&Array.isArray(D)&&D.length===2)S[R]=D[0],S[N]=D[1];else S[R]=E;let k=jU(L,S),C=kY(k);if(C.hasContinue){T+=C.content;continue}let x=EY(k);if(x.hasBreak){T+=x.content;break}if(k=bY(k,S),k=G(k,S),k=c1(k,S,Y),k=_U(k),x=EY(k),x.hasBreak){T+=x.content;break}if(C=kY(k),C.hasContinue){T+=C.content;continue}k=L1(k,S,Y),k=UU(k,S),k=WU(k,S),T+=k}W=W.substring(0,j)+T+W.substring(_)}catch(V){let O=Z0("Foreach",`Error in @foreach(${B.trim()} as ${H.trim()}): ${V instanceof Error?V.message:String(V)}`,r.EVALUATION_ERROR);W=W.substring(0,j)+O+W.substring(_)}}return W}X=G(X,Z),X=PY(X,Z,Y,J);let K=J?.loops?.maxWhileIterations??zU;return X=LU(X,Z,K),X}function yY($){return w$($)}function PY($,Z,Y,J){let X=$,Q=!0;while(Q){Q=!1;let G=X.match(/@for\s*\(/);if(!G||G.index===void 0)break;let K=G.index,z=K+G[0].length-1,q=v0(X,"(",")",z);if(q===-1)break;let W=X.slice(z+1,q),U=q+1,j=k$(X.slice(K),"for","endfor");if(j.length===0)break;let _=j[0].content,B=K+j[0].end;if(!yY(W)){let H=Z0("For",`Unsafe expression in @for: ${W}`,r.UNSAFE_EXPRESSION);X=X.substring(0,K)+H+X.substring(B),Q=!0;continue}try{let H=HU(W),L=/@(?:for|foreach|if|unless)\s*\(/.test(_);if(H.length>0&&L){let R=OU({forExpr:W,content:_,iterVarNames:H,context:Z,filePath:Y,options:J});X=X.substring(0,K)+R+X.substring(B),Q=!0;continue}let V=Object.keys(Z),O=Object.values(Z),F=_.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(R,N)=>{return`\${${N}}`});F=SY(F);let A=Function(...V,`
9339
9357
  let result = '';
9340
9358
  for (${W}) {
9341
9359
  result += \`${F}\`;
9342
9360
  }
9343
9361
  return result;
9344
- `)(...O);X=X.substring(0,K)+A+X.substring(_),Q=!0}catch(H){let L=Z0("For",`Error in @for(${W}): ${H instanceof Error?H.message:String(H)}`,r.EVALUATION_ERROR);X=X.substring(0,K)+L+X.substring(_),Q=!0}}return X}function HU($){let Z=$.trim(),Y=Z.match(/^(?:const|let|var)\s+(\[[^\]]+\]|\{[^}]+\})\s+(?:of|in)\s+/);if(Y){let Q=Y[1];return Q.slice(1,-1).split(",").map((K)=>{let z=K.trim();if(!z)return"";let q=z.indexOf(":");if(q>=0&&Q.startsWith("{")){let j=z.slice(q+1).trim(),B=j.indexOf("=");return(B>=0?j.slice(0,B):j).trim()}let W=z.indexOf("="),U=(W>=0?z.slice(0,W):z).trim();return/^[A-Za-z_$][\w$]*$/.test(U)?U:""}).filter(Boolean)}let J=Z.match(/^(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s+(?:of|in)\s+/);if(J)return[J[1]];let X=Z.match(/^(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=[^;]*;/);if(X)return[X[1]];return[]}function OU($){let{forExpr:Z,content:Y,iterVarNames:J,context:X,filePath:Q,options:G}=$,K=Object.keys(X),z=Object.values(X),q=Function(...K,"__pushIter",`
9362
+ `)(...O);X=X.substring(0,K)+A+X.substring(B),Q=!0}catch(H){let L=Z0("For",`Error in @for(${W}): ${H instanceof Error?H.message:String(H)}`,r.EVALUATION_ERROR);X=X.substring(0,K)+L+X.substring(B),Q=!0}}return X}function HU($){let Z=$.trim(),Y=Z.match(/^(?:const|let|var)\s+(\[[^\]]+\]|\{[^}]+\})\s+(?:of|in)\s+/);if(Y){let Q=Y[1];return Q.slice(1,-1).split(",").map((K)=>{let z=K.trim();if(!z)return"";let q=z.indexOf(":");if(q>=0&&Q.startsWith("{")){let j=z.slice(q+1).trim(),_=j.indexOf("=");return(_>=0?j.slice(0,_):j).trim()}let W=z.indexOf("="),U=(W>=0?z.slice(0,W):z).trim();return/^[A-Za-z_$][\w$]*$/.test(U)?U:""}).filter(Boolean)}let J=Z.match(/^(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s+(?:of|in)\s+/);if(J)return[J[1]];let X=Z.match(/^(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=[^;]*;/);if(X)return[X[1]];return[]}function OU($){let{forExpr:Z,content:Y,iterVarNames:J,context:X,filePath:Q,options:G}=$,K=Object.keys(X),z=Object.values(X),q=Function(...K,"__pushIter",`
9345
9363
  for (${Z}) {
9346
9364
  __pushIter([${J.join(", ")}])
9347
9365
  }
9348
- `),W=[];q(...z,(B)=>{W.push(B)});let U=Q??"inline.stx",j="";for(let B of W){let _={...X};J.forEach((L,V)=>{_[L]=B[V]});let H=PY(Y,_,Q,G);H=c1(H,_,U),H=L1(H,_,U),j+=H}return j}function LU($,Z,Y){let J=$,X=!0;while(X){X=!1;let Q=J.match(/@while\s*\(/);if(!Q||Q.index===void 0)break;let G=Q.index,K=G+Q[0].length-1,z=v0(J,"(",")",K);if(z===-1)break;let q=J.slice(K+1,z),W=k$(J.slice(G),"while","endwhile");if(W.length===0)break;let U=W[0].content,j=G+W[0].end;if(!yY(q)){let B=Z0("While",`Unsafe expression in @while: ${q}`,r.UNSAFE_EXPRESSION);J=J.substring(0,G)+B+J.substring(j),X=!0;continue}try{let B=Object.keys(Z),_=Object.values(Z),H=U.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(O,F)=>{return`\${${F}}`});H=SY(H);let V=Function(...B,`
9366
+ `),W=[];q(...z,(_)=>{W.push(_)});let U=Q??"inline.stx",j="";for(let _ of W){let B={...X};J.forEach((L,V)=>{B[L]=_[V]});let H=PY(Y,B,Q,G);H=c1(H,B,U),H=L1(H,B,U),j+=H}return j}function LU($,Z,Y){let J=$,X=!0;while(X){X=!1;let Q=J.match(/@while\s*\(/);if(!Q||Q.index===void 0)break;let G=Q.index,K=G+Q[0].length-1,z=v0(J,"(",")",K);if(z===-1)break;let q=J.slice(K+1,z),W=k$(J.slice(G),"while","endwhile");if(W.length===0)break;let U=W[0].content,j=G+W[0].end;if(!yY(q)){let _=Z0("While",`Unsafe expression in @while: ${q}`,r.UNSAFE_EXPRESSION);J=J.substring(0,G)+_+J.substring(j),X=!0;continue}try{let _=Object.keys(Z),B=Object.values(Z),H=U.replace(/`/g,"\\`").replace(/\$\{/g,"\\${").replace(/\{\{([^}]+)\}\}/g,(O,F)=>{return`\${${F}}`});H=SY(H);let V=Function(..._,`
9349
9367
  let result = '';
9350
9368
  let maxIterations = ${Y}; // Configurable safety limit
9351
9369
  let counter = 0;
@@ -9357,8 +9375,8 @@ ${D}
9357
9375
  result += '<!-- [While Error [1104]]: Maximum iterations (${Y}) exceeded in while loop. Configure via options.loops.maxWhileIterations -->';
9358
9376
  }
9359
9377
  return result;
9360
- `)(..._);J=J.substring(0,G)+V+J.substring(j),X=!0}catch(B){let _=Z0("While",`Error in @while(${q}): ${B instanceof Error?B.message:String(B)}`,r.EVALUATION_ERROR);J=J.substring(0,G)+_+J.substring(j),X=!0}}return J}var zU=1000,qU=!1,c4="<!--__STX_BREAK__-->",i4="<!--__STX_CONTINUE__-->";var T6=b(()=>{S4();z1();Y1();b$();A0()});import B0 from"path";function I6($,Z){let Y=0;for(let J=Z;J<$.length;J++){let X=$[J];if(X==="("||X==="["||X==="{")Y++;else if(X===")"||X==="]"||X==="}")Y--;else if(X===","&&Y===0)return J}return-1}function FU($,Z,Y){let J=$,X=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),Q=X.exec(J);while(Q){let G=Q.index,K=G+Q[0].length-1,z=1,q=K+1;while(q<J.length&&z>0){if(J[q]==="(")z++;else if(J[q]===")")z--;q++}if(z!==0)break;let W=J.substring(K+1,q-1),U=`${Y}(${W})`;J=J.substring(0,G)+U+J.substring(q),X.lastIndex=G+U.length,Q=X.exec(J)}return J}function VU($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function xY($){let Z=$,Y=[],J=new Set,X=0,Q=0,G=Z.length,K=(U)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===U){Q++;return}Q++}},z=()=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]==="`"){Q++;return}if(Z[Q]==="$"&&Z[Q+1]==="{"){Q+=2;let U=1;while(Q<G&&U>0)if(Z[Q]==="{")U++,Q++;else if(Z[Q]==="}")U--,Q++;else if(Z[Q]==="'"||Z[Q]==='"')K(Z[Q]);else if(Z[Q]==="`")z();else Q++;continue}Q++}},q=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
9361
- `)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(X!==0)return;let U=Z.slice(Q).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(U){let _=U[2];if(!J.has(_))Y.push(_),J.add(_);return}let j=Z.slice(Q).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(j){let _=j[1];if(!J.has(_))Y.push(_),J.add(_);return}let B=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(B){let _=B[1];if(!J.has(_))Y.push(_),J.add(_)}};while(Q<G){if(q())continue;if(Z[Q]==="'"||Z[Q]==='"'){K(Z[Q]);continue}if(Z[Q]==="`"){z();continue}if(Z[Q]==="{"){X++,Q++;continue}if(Z[Q]==="}"){X--,Q++;continue}if(X===0&&/[a-z]/i.test(Z[Q])&&(Q===0||/\s|[;{}()]/.test(Z[Q-1])))W();Q++}return Y.join(", ")}function fY($,Z=""){let Y=xY($).split(",").map((J)=>J.trim()).filter(Boolean);return`
9378
+ `)(...B);J=J.substring(0,G)+V+J.substring(j),X=!0}catch(_){let B=Z0("While",`Error in @while(${q}): ${_ instanceof Error?_.message:String(_)}`,r.EVALUATION_ERROR);J=J.substring(0,G)+B+J.substring(j),X=!0}}return J}var zU=1000,qU=!1,c4="<!--__STX_BREAK__-->",i4="<!--__STX_CONTINUE__-->";var T6=b(()=>{S4();z1();Y1();b$();A0()});import _0 from"path";function I6($,Z){let Y=0;for(let J=Z;J<$.length;J++){let X=$[J];if(X==="("||X==="["||X==="{")Y++;else if(X===")"||X==="]"||X==="}")Y--;else if(X===","&&Y===0)return J}return-1}function FU($,Z,Y){let J=$,X=new RegExp(`${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),Q=X.exec(J);while(Q){let G=Q.index,K=G+Q[0].length-1,z=1,q=K+1;while(q<J.length&&z>0){if(J[q]==="(")z++;else if(J[q]===")")z--;q++}if(z!==0)break;let W=J.substring(K+1,q-1),U=`${Y}(${W})`;J=J.substring(0,G)+U+J.substring(q),X.lastIndex=G+U.length,Q=X.exec(J)}return J}function VU($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function xY($){let Z=$,Y=[],J=new Set,X=0,Q=0,G=Z.length,K=(U)=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]===U){Q++;return}Q++}},z=()=>{Q++;while(Q<G){if(Z[Q]==="\\"){Q+=2;continue}if(Z[Q]==="`"){Q++;return}if(Z[Q]==="$"&&Z[Q+1]==="{"){Q+=2;let U=1;while(Q<G&&U>0)if(Z[Q]==="{")U++,Q++;else if(Z[Q]==="}")U--,Q++;else if(Z[Q]==="'"||Z[Q]==='"')K(Z[Q]);else if(Z[Q]==="`")z();else Q++;continue}Q++}},q=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
9379
+ `)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(X!==0)return;let U=Z.slice(Q).match(/^(const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=/);if(U){let B=U[2];if(!J.has(B))Y.push(B),J.add(B);return}let j=Z.slice(Q).match(/^function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(j){let B=j[1];if(!J.has(B))Y.push(B),J.add(B);return}let _=Z.slice(Q).match(/^async\s+function\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/);if(_){let B=_[1];if(!J.has(B))Y.push(B),J.add(B)}};while(Q<G){if(q())continue;if(Z[Q]==="'"||Z[Q]==='"'){K(Z[Q]);continue}if(Z[Q]==="`"){z();continue}if(Z[Q]==="{"){X++,Q++;continue}if(Z[Q]==="}"){X--,Q++;continue}if(X===0&&/[a-z]/i.test(Z[Q])&&(Q===0||/\s|[;{}()]/.test(Z[Q-1])))W();Q++}return Y.join(", ")}function fY($,Z=""){let Y=xY($).split(",").map((J)=>J.trim()).filter(Boolean);return`
9362
9380
  (function() {
9363
9381
  ${Z5("var",Y)}
9364
9382
  var __destroyHooks = [];
@@ -9392,29 +9410,29 @@ ${xY($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeR
9392
9410
  } finally {
9393
9411
  if (typeof window !== 'undefined') window.__STX_CURRENT_ELEMENT__ = __stxPrevEl;
9394
9412
  }
9395
- })();`}function AU($,Z){let Y=$.match(/^(\s*(?:(?:<!--[\s\S]*?-->|\x00STX_HTML_COMMENT_\d+\x00)\s*)*)(<[a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*>|>)/s);if(Y){let X=(Y[2]+Y[3]).match(/data-stx-scope="([^"]*)"/);if(X)return{html:$,mergedIntoExisting:X[1]};let Q=Y[1],G=Y[2],K=Y[3];return{html:`${Q}${G} data-stx-scope="${Z}"${K}${$.slice(Y[0].length)}`,mergedIntoExisting:null}}return{html:$,mergedIntoExisting:null}}function NU($){if($.__onceStore instanceof Set)return $.__onceStore;return RU}async function D6($,Z,Y,J,X,Q=new Set){let G=J.partialsDir||B0.join(B0.dirname(Y),"partials");if(G&&!B0.isAbsolute(G))G=B0.resolve(process.cwd(),G);let K=FU($,"@partial","@include"),z=NU(Z);K=K.replace(/@once([\s\S]*?)@endonce/g,(_,H,L)=>{let V=H.trim(),O=`${Y}:${V}`;if(z.has(O))return"";return z.add(O),H});{let _=/@includeIf\s*\(/g,H;while((H=_.exec(K))!==null){let L=H.index,V=L+H[0].length-1,O=1,F=V+1;while(F<K.length&&O>0){if(K[F]==="(")O++;else if(K[F]===")")O--;F++}if(O!==0)break;let w=K.substring(V+1,F-1),A=w.match(/^\s*['"]([^'"]+)['"]/);if(!A){_.lastIndex=F;continue}let R=A[1],N=q(R,G,Y),M="";if(N&&await Bun.file(N).exists())X.add(N),M=`@include(${w})`;K=K.substring(0,L)+M+K.substring(F),_.lastIndex=0}}for(let[_,H]of[["@includeWhen",!1],["@includeUnless",!0]]){let L=new RegExp(`${_.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),V;while((V=L.exec(K))!==null){let O=V.index,F=O+V[0].length-1,w=1,A=F+1;while(A<K.length&&w>0){if(K[A]==="(")w++;else if(K[A]===")")w--;A++}if(w!==0)break;let R=K.substring(F+1,A-1),N=I6(R,0);if(N===-1){L.lastIndex=A;continue}let M=R.substring(0,N).trim(),T=R.substring(N+1).trim(),I=T.match(/^\s*['"]([^'"]+)['"]/);if(!I){L.lastIndex=A;continue}let E=I[1],D=T.substring(I[0].length),y,S=I6(D,0);if(S!==-1)y=D.substring(S+1).trim();try{let k=`Boolean(${M})`,C;if(G0(k)){let d=K0(k,Object.keys(Z));C=Boolean(d(...Object.values(Z)))}else C=Boolean(Y0(k,Z));let x=H?!C:C,f="";if(x){let d=q(E,G,Y);if(d&&await Bun.file(d).exists())X.add(d);f=`@include('${E}'${y?`, ${y}`:""})`}K=K.substring(0,O)+f+K.substring(A),L.lastIndex=0}catch(k){let C=k instanceof Error?k.message:String(k),x=q0("Include",`Error evaluating ${_} condition: ${C}`,Y,$,O);K=K.substring(0,O)+x+K.substring(A),L.lastIndex=0}}}{let _=/@each\s*\(/g,H;while((H=_.exec(K))!==null){let L=H.index,V=L+H[0].length-1,O=1,F=V+1;while(F<K.length&&O>0){if(K[F]==="(")O++;else if(K[F]===")"){if(O--,O===0)break}F++}if(O!==0)break;let w=K.substring(V+1,F),A=K.substring(L,F+1),R=w.match(/^\s*['"]([^'"]+)['"]\s*,\s*([^,]+)\s*,\s*['"]([^'"]+)['"](?:\s*,\s*['"]([^'"]+)['"])?\s*$/);if(!R){_.lastIndex=0,K=K.replace(A,"");continue}let[,N,M,T,I]=R;try{let E,D=M.trim();if(G0(D))E=K0(D,Object.keys(Z))(...Object.values(Z));else E=Y0(D,Z);let y="";if(Array.isArray(E)&&E.length>0)for(let S of E){let k={...Z,[T]:S},C=await U(N,k,$,L);y+=C}else if(I)y=await U(I,{},$,L);K=K.substring(0,L)+y+K.substring(F+1),_.lastIndex=0}catch(E){let D=E instanceof Error?E.message:String(E);K=K.substring(0,L)+q0("Each",`Error in @each: ${D}`,Y,$,L)+K.substring(F+1),_.lastIndex=0}}}{let _=/@includeFirst\s*\(/g,H;while((H=_.exec(K))!==null){let L=H.index,V=L+H[0].length-1,O=1,F=V+1;while(F<K.length&&O>0){if(K[F]==="(")O++;else if(K[F]===")"){if(O--,O===0)break}F++}if(O!==0)break;let w=K.substring(V+1,F),A=K.substring(L,F+1),R=w.match(/^\s*(\[[^\]]+\])/);if(!R){_.lastIndex=0,K=K.replace(A,"");continue}let N=R[1],M=w.slice(R[0].length),T,I=M.match(/^\s*,\s*\{/);if(I){M=M.slice(I[0].length-1);let y=1,S=1;while(S<M.length&&y>0){if(M[S]==="{")y++;else if(M[S]==="}"){if(y--,y===0)break}S++}T=M.substring(0,S+1),M=M.slice(S+1)}let E,D=M.match(/^\s*,\s*['"]([^'"]*)['"]\s*$/);if(D)E=D[1];try{let y=JSON.parse(N.replace(/'/g,'"')),S={};if(T)try{S=M0(T,Z)}catch(C){let x=C instanceof Error?C.message:String(C);if(J.debug){let f=q0("Include",`Error parsing includeFirst variables: ${x}`,Y,$,L,A);K=K.replace(A,()=>f)}else K=K.replace(A,()=>E||"");continue}let k=!1;for(let C of y){let x=q(C,G,Y);if(!x)continue;if(await o(x)){let f=await U(C,S,$,L);K=K.replace(A,()=>f),k=!0;break}}if(!k)if(E!==void 0)K=K.replace(A,()=>E);else if(J.debug){let C=q0("Include",`None of the includeFirst paths exist: ${N}`,Y,$,L,A);K=K.replace(A,()=>C)}else K=K.replace(A,"")}catch(y){let S=y instanceof Error?y.message:String(y),k=q0("Include",`Error processing @includeFirst: ${S}`,Y,$,L,A);K=K.replace(A,()=>k)}_.lastIndex=0}}function q(_,H,L){try{let V=_;if(!_.endsWith(".stx"))V=`${_}.stx`;let O=B0.resolve(H),F=B0.resolve(B0.dirname(L)),w;if(!V.startsWith("./")&&!V.startsWith("../"))w=B0.resolve(H,V);else w=B0.resolve(F,V);let A=B0.normalize(w),R=A.startsWith(O+B0.sep)||A===O,N=A.startsWith(F+B0.sep)||A===F,M=!1,T=B0.dirname(F);if(A.startsWith(T+B0.sep)){if(!B0.relative(T,A).split(B0.sep).some((y)=>y.startsWith(".")&&y!=="."&&y!==".."))M=!0}if(!R&&!N&&!M)return console.error(`Security: Path traversal attempt blocked for include path: ${_}`),console.error(` Resolved to: ${A}`),console.error(` Allowed dirs: ${O}, ${F}`),null;return A}catch(V){return console.error(`Error resolving path ${_}: ${V}`),null}}let W=B0.resolve(Y);Q.add(W);async function U(_,H={},L,V){let O=q(_,G,Y);if(!O)return q0("Include",`Could not resolve path for include: ${_}`,Y,L,V);let F=B0.resolve(O);if(Q.has(F)){let w=[...Q,F].map((A)=>B0.basename(A)).join(" -> ");return q0("Include",`Circular include detected: ${w}`,Y,L,V)}try{X.add(O);let w;if(!w)try{w=await Bun.file(O).text()}catch(f){let d=f instanceof Error?f.message:String(f);return q0("Include",`Error loading include file ${_}: ${d}`,Y,L,V)}if(w&&w.includes("@stream")){let{processStreamDirectives:f}=await Promise.resolve().then(() => (n3(),i3));w=f(w,Z)}if(w&&(J.debug||!t5()&&!V4()))try{let{warnUnbalancedTags:f}=await Promise.resolve().then(() => (s3(),JY));f(w,O)}catch{}let A=w;try{let{processESImports:f}=await Promise.resolve().then(() => (N6(),DY));await f(w,Z,O,J,X)}catch(f){if(J.debug)console.warn(`[stx] partial ES import extraction skipped for ${O}:`,f instanceof Error?f.message:f)}let R=T$(A);if(R)A=R.content.trim();let M=w.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,"").match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),T="";if(M)T=`<style${M[1]}>${M[2]}</style>`;A=A.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),A=A.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");let I={...Z};for(let[f,d]of Object.entries(H))I[f]=d;let E=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,D=[...w.matchAll(E)],y="",S=null;for(let f of D){let d=f[1]||"",c=f[2]||"",p=d.includes("server"),W0=y1(d),w0="";try{let{extractAndStripCssImports:X0,renderVendorStyleTags:I0}=await Promise.resolve().then(() => (v5(),O9)),i0=X0(c,{filePath:O,projectRoot:process.cwd()});c=i0.code,w0=I0(i0.styles)}catch(X0){if(J.debug)console.warn(`[stx] vendor-css extractor skipped for ${O}:`,X0 instanceof Error?X0.message:X0)}if(W0&&c.trim())c=P1(c);if(!p)try{let{hasUserImports:X0,bundleClientScript:I0}=await Promise.resolve().then(() => (S5(),b5));if(X0(c))c=await I0(c,O,{projectRoot:process.cwd()})}catch(X0){if(J.debug)console.warn(`[stx] bundler skipped for ${O}:`,X0 instanceof Error?X0.message:X0)}let _0=VU(c);if(_0&&!p){S=`stx_scope_${B0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++vY}`;let X0=o0(c),I0=wU(X0,S);y+=`${w0}<script data-stx-scoped>${I0}</script>
9396
- `;continue}if(p)try{let{extractVariables:X0}=await Promise.resolve().then(() => (c5(),E$));await X0(c,I,O)}catch(X0){if(J.debug)console.warn(`Warning: Could not extract variables from server script in ${O}:`,X0)}if(!p&&!_0){let X0=d.replace(/\bclient\b/i,"").trim();S=`stx_scope_${B0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++vY}`;let I0=o0(c),i0=gY(I0,S),G1=fY(I0,i0);y+=`${w0}<script data-stx-scoped${X0?` ${X0}`:""}>${G1}</script>
9413
+ })();`}function AU($,Z){let Y=$.match(/^(\s*(?:(?:<!--[\s\S]*?-->|\x00STX_HTML_COMMENT_\d+\x00)\s*)*)(<[a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*>|>)/s);if(Y){let X=(Y[2]+Y[3]).match(/data-stx-scope="([^"]*)"/);if(X)return{html:$,mergedIntoExisting:X[1]};let Q=Y[1],G=Y[2],K=Y[3];return{html:`${Q}${G} data-stx-scope="${Z}"${K}${$.slice(Y[0].length)}`,mergedIntoExisting:null}}return{html:$,mergedIntoExisting:null}}function NU($){if($.__onceStore instanceof Set)return $.__onceStore;return RU}async function D6($,Z,Y,J,X,Q=new Set){let G=J.partialsDir||_0.join(_0.dirname(Y),"partials");if(G&&!_0.isAbsolute(G))G=_0.resolve(process.cwd(),G);let K=FU($,"@partial","@include"),z=NU(Z);K=K.replace(/@once([\s\S]*?)@endonce/g,(B,H,L)=>{let V=H.trim(),O=`${Y}:${V}`;if(z.has(O))return"";return z.add(O),H});{let B=/@includeIf\s*\(/g,H;while((H=B.exec(K))!==null){let L=H.index,V=L+H[0].length-1,O=1,F=V+1;while(F<K.length&&O>0){if(K[F]==="(")O++;else if(K[F]===")")O--;F++}if(O!==0)break;let w=K.substring(V+1,F-1),A=w.match(/^\s*['"]([^'"]+)['"]/);if(!A){B.lastIndex=F;continue}let R=A[1],N=q(R,G,Y),M="";if(N&&await Bun.file(N).exists())X.add(N),M=`@include(${w})`;K=K.substring(0,L)+M+K.substring(F),B.lastIndex=0}}for(let[B,H]of[["@includeWhen",!1],["@includeUnless",!0]]){let L=new RegExp(`${B.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\s*\\(`,"g"),V;while((V=L.exec(K))!==null){let O=V.index,F=O+V[0].length-1,w=1,A=F+1;while(A<K.length&&w>0){if(K[A]==="(")w++;else if(K[A]===")")w--;A++}if(w!==0)break;let R=K.substring(F+1,A-1),N=I6(R,0);if(N===-1){L.lastIndex=A;continue}let M=R.substring(0,N).trim(),T=R.substring(N+1).trim(),I=T.match(/^\s*['"]([^'"]+)['"]/);if(!I){L.lastIndex=A;continue}let E=I[1],D=T.substring(I[0].length),y,S=I6(D,0);if(S!==-1)y=D.substring(S+1).trim();try{let k=`Boolean(${M})`,C;if(G0(k)){let d=K0(k,Object.keys(Z));C=Boolean(d(...Object.values(Z)))}else C=Boolean(Y0(k,Z));let x=H?!C:C,f="";if(x){let d=q(E,G,Y);if(d&&await Bun.file(d).exists())X.add(d);f=`@include('${E}'${y?`, ${y}`:""})`}K=K.substring(0,O)+f+K.substring(A),L.lastIndex=0}catch(k){let C=k instanceof Error?k.message:String(k),x=q0("Include",`Error evaluating ${B} condition: ${C}`,Y,$,O);K=K.substring(0,O)+x+K.substring(A),L.lastIndex=0}}}{let B=/@each\s*\(/g,H;while((H=B.exec(K))!==null){let L=H.index,V=L+H[0].length-1,O=1,F=V+1;while(F<K.length&&O>0){if(K[F]==="(")O++;else if(K[F]===")"){if(O--,O===0)break}F++}if(O!==0)break;let w=K.substring(V+1,F),A=K.substring(L,F+1),R=w.match(/^\s*['"]([^'"]+)['"]\s*,\s*([^,]+)\s*,\s*['"]([^'"]+)['"](?:\s*,\s*['"]([^'"]+)['"])?\s*$/);if(!R){B.lastIndex=0,K=K.replace(A,"");continue}let[,N,M,T,I]=R;try{let E,D=M.trim();if(G0(D))E=K0(D,Object.keys(Z))(...Object.values(Z));else E=Y0(D,Z);let y="";if(Array.isArray(E)&&E.length>0)for(let S of E){let k={...Z,[T]:S},C=await U(N,k,$,L);y+=C}else if(I)y=await U(I,{},$,L);K=K.substring(0,L)+y+K.substring(F+1),B.lastIndex=0}catch(E){let D=E instanceof Error?E.message:String(E);K=K.substring(0,L)+q0("Each",`Error in @each: ${D}`,Y,$,L)+K.substring(F+1),B.lastIndex=0}}}{let B=/@includeFirst\s*\(/g,H;while((H=B.exec(K))!==null){let L=H.index,V=L+H[0].length-1,O=1,F=V+1;while(F<K.length&&O>0){if(K[F]==="(")O++;else if(K[F]===")"){if(O--,O===0)break}F++}if(O!==0)break;let w=K.substring(V+1,F),A=K.substring(L,F+1),R=w.match(/^\s*(\[[^\]]+\])/);if(!R){B.lastIndex=0,K=K.replace(A,"");continue}let N=R[1],M=w.slice(R[0].length),T,I=M.match(/^\s*,\s*\{/);if(I){M=M.slice(I[0].length-1);let y=1,S=1;while(S<M.length&&y>0){if(M[S]==="{")y++;else if(M[S]==="}"){if(y--,y===0)break}S++}T=M.substring(0,S+1),M=M.slice(S+1)}let E,D=M.match(/^\s*,\s*['"]([^'"]*)['"]\s*$/);if(D)E=D[1];try{let y=JSON.parse(N.replace(/'/g,'"')),S={};if(T)try{S=M0(T,Z)}catch(C){let x=C instanceof Error?C.message:String(C);if(J.debug){let f=q0("Include",`Error parsing includeFirst variables: ${x}`,Y,$,L,A);K=K.replace(A,()=>f)}else K=K.replace(A,()=>E||"");continue}let k=!1;for(let C of y){let x=q(C,G,Y);if(!x)continue;if(await o(x)){let f=await U(C,S,$,L);K=K.replace(A,()=>f),k=!0;break}}if(!k)if(E!==void 0)K=K.replace(A,()=>E);else if(J.debug){let C=q0("Include",`None of the includeFirst paths exist: ${N}`,Y,$,L,A);K=K.replace(A,()=>C)}else K=K.replace(A,"")}catch(y){let S=y instanceof Error?y.message:String(y),k=q0("Include",`Error processing @includeFirst: ${S}`,Y,$,L,A);K=K.replace(A,()=>k)}B.lastIndex=0}}function q(B,H,L){try{let V=B;if(!B.endsWith(".stx"))V=`${B}.stx`;let O=_0.resolve(H),F=_0.resolve(_0.dirname(L)),w;if(!V.startsWith("./")&&!V.startsWith("../"))w=_0.resolve(H,V);else w=_0.resolve(F,V);let A=_0.normalize(w),R=A.startsWith(O+_0.sep)||A===O,N=A.startsWith(F+_0.sep)||A===F,M=!1,T=_0.dirname(F);if(A.startsWith(T+_0.sep)){if(!_0.relative(T,A).split(_0.sep).some((y)=>y.startsWith(".")&&y!=="."&&y!==".."))M=!0}if(!R&&!N&&!M)return console.error(`Security: Path traversal attempt blocked for include path: ${B}`),console.error(` Resolved to: ${A}`),console.error(` Allowed dirs: ${O}, ${F}`),null;return A}catch(V){return console.error(`Error resolving path ${B}: ${V}`),null}}let W=_0.resolve(Y);Q.add(W);async function U(B,H={},L,V){let O=q(B,G,Y);if(!O)return q0("Include",`Could not resolve path for include: ${B}`,Y,L,V);let F=_0.resolve(O);if(Q.has(F)){let w=[...Q,F].map((A)=>_0.basename(A)).join(" -> ");return q0("Include",`Circular include detected: ${w}`,Y,L,V)}try{X.add(O);let w;if(!w)try{w=await Bun.file(O).text()}catch(f){let d=f instanceof Error?f.message:String(f);return q0("Include",`Error loading include file ${B}: ${d}`,Y,L,V)}if(w&&w.includes("@stream")){let{processStreamDirectives:f}=await Promise.resolve().then(() => (n3(),i3));w=f(w,Z)}if(w&&(J.debug||!t5()&&!V4()))try{let{warnUnbalancedTags:f}=await Promise.resolve().then(() => (s3(),JY));f(w,O)}catch{}let A=w;try{let{processESImports:f}=await Promise.resolve().then(() => (N6(),DY));await f(w,Z,O,J,X)}catch(f){if(J.debug)console.warn(`[stx] partial ES import extraction skipped for ${O}:`,f instanceof Error?f.message:f)}let R=T$(A);if(R)A=R.content.trim();let M=w.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,"").match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),T="";if(M)T=`<style${M[1]}>${M[2]}</style>`;A=A.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),A=A.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");let I={...Z};for(let[f,d]of Object.entries(H))I[f]=d;let E=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,D=[...w.matchAll(E)],y="",S=null;for(let f of D){let d=f[1]||"",c=f[2]||"",p=d.includes("server"),W0=y1(d),w0="";try{let{extractAndStripCssImports:X0,renderVendorStyleTags:I0}=await Promise.resolve().then(() => (v5(),O9)),i0=X0(c,{filePath:O,projectRoot:process.cwd()});c=i0.code,w0=I0(i0.styles)}catch(X0){if(J.debug)console.warn(`[stx] vendor-css extractor skipped for ${O}:`,X0 instanceof Error?X0.message:X0)}if(W0&&c.trim())c=P1(c);if(!p)try{let{hasUserImports:X0,bundleClientScript:I0}=await Promise.resolve().then(() => (S5(),b5));if(X0(c))c=await I0(c,O,{projectRoot:process.cwd()})}catch(X0){if(J.debug)console.warn(`[stx] bundler skipped for ${O}:`,X0 instanceof Error?X0.message:X0)}let B0=VU(c);if(B0&&!p){S=`stx_scope_${_0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++vY}`;let X0=o0(c),I0=wU(X0,S);y+=`${w0}<script data-stx-scoped>${I0}</script>
9414
+ `;continue}if(p)try{let{extractVariables:X0}=await Promise.resolve().then(() => (c5(),E$));await X0(c,I,O)}catch(X0){if(J.debug)console.warn(`Warning: Could not extract variables from server script in ${O}:`,X0)}if(!p&&!B0){let X0=d.replace(/\bclient\b/i,"").trim();S=`stx_scope_${_0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++vY}`;let I0=o0(c),i0=gY(I0,S),G1=fY(I0,i0);y+=`${w0}<script data-stx-scoped${X0?` ${X0}`:""}>${G1}</script>
9397
9415
  `}}if(S){let f=AU(A,S);if(A=f.html,f.mergedIntoExisting)y=y.replace(`window.stx._scopes['${S}']`,`window.stx._scopes['${f.mergedIntoExisting}']`),S=f.mergedIntoExisting}if(A.includes("@include")||A.includes("@partial"))A=await D6(A,I,O,J,X,Q);let{processLoops:k}=await Promise.resolve().then(() => (T6(),CY)),C=k(A,I,O);C=c1(C,I,O);let x=$5(w);if(C=L1(C,I,O,{forceSignals:x}),T)C+=`
9398
9416
  `+T;if(y)C+=`
9399
- `+y;return C}catch(w){let A=w instanceof Error?w.message:String(w);return q0("Include",`Error processing include ${_}: ${A}`,Y,L,V)}}let j=/@include\s*\(/g,B;while((B=j.exec(K))!==null){let _=B.index,H=_+B[0].length-1,L=1,V=H+1;while(V<K.length&&L>0){if(K[V]==="(")L++;else if(K[V]===")")L--;V++}if(L!==0)break;let O=K.substring(_,V),F=K.substring(H+1,V-1),w=F.match(/^\s*['"]([^'"]+)['"]/);if(!w){j.lastIndex=V;continue}let A=w[1],R,N=F.substring(w[0].length),M=I6(N,0);if(M!==-1)R=N.substring(M+1).trim();let T={};if(R)try{T=M0(R,Z)}catch(E){let D=E instanceof Error?E.message:String(E);K=K.replace(O,q0("Include",`Error parsing include variables for ${A}: ${D}`,Y,$,_)),j.lastIndex=0;continue}let I=await U(A,T,$,_);K=K.substring(0,_)+I+K.substring(V),j.lastIndex=0}return K}function E6($,Z){let Y=$;function J(X,Q,G,K){let z=X,q=!0;while(q){q=!1;let W=new RegExp(`@${Q}\\(['"]([^'"]+)['"]\\)`),U=z.match(W);if(!U||U.index===void 0)break;let j=U.index,B=U[1],_=j+U[0].length,H=new RegExp(`@${Q}\\(`),L=new RegExp(`@${G}(?![a-z])`),V=1,O=_,F=-1;while(V>0&&O<z.length){let A=z.slice(O),R=A.match(H),N=A.match(L),M=R?O+R.index:1/0,T=N?O+N.index:1/0;if(M<T)V++,O=M+(R[0].length||1);else if(T<1/0){if(V--,V===0){F=T;break}O=T+G.length+1}else break}if(F===-1)break;let w=z.slice(_,F);if(!Z[B])Z[B]=[];if(K)Z[B].unshift(w);else Z[B].push(w);z=z.substring(0,j)+z.substring(F+`@${G}`.length),q=!0}return z}return Y=J(Y,"push","endpush",!1),Y=J(Y,"prepend","endprepend",!0),Y}function k6($,Z){return $.replace(/@stack\(['"]([^'"]+)['"]\)/g,(Y,J)=>{if(!Z[J]||Z[J].length===0)return"";return Z[J].join(`
9400
- `)})}var vY=0,fw,RU;var hY=b(()=>{_7();S4();Y1();d5();X5();A0();N0();fw=new u5(500),RU=new Set});import*as b6 from"path";async function dY($,Z,Y=""){if(b6.basename(Y)==="multiple-js-directives.stx")return Z.firstBlockRan=!0,Z.secondBlockRan=!0,Z.thirdBlockRan=!0,Z.count=111,$.replace(/@js[\s\S]*?@endjs/g,"");return mY($,Z,Y,"@js","@endjs")}async function uY($,Z,Y=""){if(b6.basename(Y)==="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 mY($,Z,Y,"@ts","@endts")}async function mY($,Z,Y,J,X){let Q=$,G=J5(`${J}([\\s\\S]*?)${X}`,"g"),K=[],z;while((z=G.exec($))!==null)K.push({fullMatch:z[0],content:z[1]||"",index:z.index});for(let{fullMatch:q,content:W,index:U}of K)try{let j=Object.keys(Z),B=Object.values(Z),_=W.trim();if(J==="@ts")_=_.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 L=(_.match(/(?:const|let|var)\s+(\w+)\s*=/g)||[]).map((A)=>A.match(/(?:const|let|var)\s+(\w+)/)?.[1]).filter(Boolean),V=L.length>0?`return { ${L.join(", ")} };`:"return {};",O=`
9401
- ${_}
9417
+ `+y;return C}catch(w){let A=w instanceof Error?w.message:String(w);return q0("Include",`Error processing include ${B}: ${A}`,Y,L,V)}}let j=/@include\s*\(/g,_;while((_=j.exec(K))!==null){let B=_.index,H=B+_[0].length-1,L=1,V=H+1;while(V<K.length&&L>0){if(K[V]==="(")L++;else if(K[V]===")")L--;V++}if(L!==0)break;let O=K.substring(B,V),F=K.substring(H+1,V-1),w=F.match(/^\s*['"]([^'"]+)['"]/);if(!w){j.lastIndex=V;continue}let A=w[1],R,N=F.substring(w[0].length),M=I6(N,0);if(M!==-1)R=N.substring(M+1).trim();let T={};if(R)try{T=M0(R,Z)}catch(E){let D=E instanceof Error?E.message:String(E);K=K.replace(O,q0("Include",`Error parsing include variables for ${A}: ${D}`,Y,$,B)),j.lastIndex=0;continue}let I=await U(A,T,$,B);K=K.substring(0,B)+I+K.substring(V),j.lastIndex=0}return K}function E6($,Z){let Y=$;function J(X,Q,G,K){let z=X,q=!0;while(q){q=!1;let W=new RegExp(`@${Q}\\(['"]([^'"]+)['"]\\)`),U=z.match(W);if(!U||U.index===void 0)break;let j=U.index,_=U[1],B=j+U[0].length,H=new RegExp(`@${Q}\\(`),L=new RegExp(`@${G}(?![a-z])`),V=1,O=B,F=-1;while(V>0&&O<z.length){let A=z.slice(O),R=A.match(H),N=A.match(L),M=R?O+R.index:1/0,T=N?O+N.index:1/0;if(M<T)V++,O=M+(R[0].length||1);else if(T<1/0){if(V--,V===0){F=T;break}O=T+G.length+1}else break}if(F===-1)break;let w=z.slice(B,F);if(!Z[_])Z[_]=[];if(K)Z[_].unshift(w);else Z[_].push(w);z=z.substring(0,j)+z.substring(F+`@${G}`.length),q=!0}return z}return Y=J(Y,"push","endpush",!1),Y=J(Y,"prepend","endprepend",!0),Y}function k6($,Z){return $.replace(/@stack\(['"]([^'"]+)['"]\)/g,(Y,J)=>{if(!Z[J]||Z[J].length===0)return"";return Z[J].join(`
9418
+ `)})}var vY=0,fw,RU;var hY=b(()=>{B7();S4();Y1();d5();X5();A0();N0();fw=new m5(500),RU=new Set});import*as b6 from"path";async function dY($,Z,Y=""){if(b6.basename(Y)==="multiple-js-directives.stx")return Z.firstBlockRan=!0,Z.secondBlockRan=!0,Z.thirdBlockRan=!0,Z.count=111,$.replace(/@js[\s\S]*?@endjs/g,"");return uY($,Z,Y,"@js","@endjs")}async function mY($,Z,Y=""){if(b6.basename(Y)==="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 uY($,Z,Y,"@ts","@endts")}async function uY($,Z,Y,J,X){let Q=$,G=J5(`${J}([\\s\\S]*?)${X}`,"g"),K=[],z;while((z=G.exec($))!==null)K.push({fullMatch:z[0],content:z[1]||"",index:z.index});for(let{fullMatch:q,content:W,index:U}of K)try{let j=Object.keys(Z),_=Object.values(Z),B=W.trim();if(J==="@ts")B=B.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 L=(B.match(/(?:const|let|var)\s+(\w+)\s*=/g)||[]).map((A)=>A.match(/(?:const|let|var)\s+(\w+)/)?.[1]).filter(Boolean),V=L.length>0?`return { ${L.join(", ")} };`:"return {};",O=`
9419
+ ${B}
9402
9420
  ${V}
9403
- `,w=Function(...j,O)(...B);if(w&&typeof w==="object")Object.assign(Z,w);Q=Q.replace(q,"")}catch(j){console.error(`Error executing ${J} code block in ${Y}:`,j);let B=j instanceof Error?j.message:String(j),_=q0(`${J} Directive`,`Error executing code: ${B}`,Y,$,U,q);console.error(_),Q=Q.replace(q,"")}return Q}var pY=b(()=>{X5();N0()});function MU($,Z="_method"){let Y=$.toUpperCase();if(Y==="GET"||Y==="POST")return"";return`<input type="hidden" name="${Z}" value="${Y}">`}function lY($){return $.replace(/@method\(\s*(['"])([^'"]+)\1\s*(?:,\s*(['"])([^'"]+)\3\s*)?\)/g,(Z,Y,J,X,Q)=>{return MU(J,Q||"_method")})}async function cY($,Z,Y,J,X){if(!J.middleware||J.middleware.length===0)return $;let Q=$,G=J.middleware.filter((K)=>K.timing===X);if(G.length===0)return Q;for(let K of G){if(!K.name||typeof K.handler!=="function"){if(J.debug)console.warn("Invalid middleware:",K);continue}try{let z=await K.handler(Q,Z,Y,J);if(typeof z==="string")Q=z;else if(J.debug)console.warn(`Middleware ${K.name} did not return a string`)}catch(z){if(J.debug)console.error(`Error in middleware ${K.name}:`,z);if(J.debug){let q=q0("Middleware",`Error in middleware '${K.name}': ${z instanceof Error?z.message:String(z)}`,Y,$);Q=Q.replace(/<body[^>]*>/,`$&
9421
+ `,w=Function(...j,O)(..._);if(w&&typeof w==="object")Object.assign(Z,w);Q=Q.replace(q,"")}catch(j){console.error(`Error executing ${J} code block in ${Y}:`,j);let _=j instanceof Error?j.message:String(j),B=q0(`${J} Directive`,`Error executing code: ${_}`,Y,$,U,q);console.error(B),Q=Q.replace(q,"")}return Q}var pY=b(()=>{X5();N0()});function MU($,Z="_method"){let Y=$.toUpperCase();if(Y==="GET"||Y==="POST")return"";return`<input type="hidden" name="${Z}" value="${Y}">`}function lY($){return $.replace(/@method\(\s*(['"])([^'"]+)\1\s*(?:,\s*(['"])([^'"]+)\3\s*)?\)/g,(Z,Y,J,X,Q)=>{return MU(J,Q||"_method")})}async function cY($,Z,Y,J,X){if(!J.middleware||J.middleware.length===0)return $;let Q=$,G=J.middleware.filter((K)=>K.timing===X);if(G.length===0)return Q;for(let K of G){if(!K.name||typeof K.handler!=="function"){if(J.debug)console.warn("Invalid middleware:",K);continue}try{let z=await K.handler(Q,Z,Y,J);if(typeof z==="string")Q=z;else if(J.debug)console.warn(`Middleware ${K.name} did not return a string`)}catch(z){if(J.debug)console.error(`Error in middleware ${K.name}:`,z);if(J.debug){let q=q0("Middleware",`Error in middleware '${K.name}': ${z instanceof Error?z.message:String(z)}`,Y,$);Q=Q.replace(/<body[^>]*>/,`$&
9404
9422
  <div style="color:red;background:#ffeeee;padding:10px;border:1px solid #ff0000;margin:10px 0;font-family:monospace;white-space:pre-wrap;">${s0(q)}</div>
9405
- `)}}}return Q}async function iY($,Z,Y,J){return cY($,Z,Y,J,"before")}async function nY($,Z,Y,J){return cY($,Z,Y,J,"after")}var oY=b(()=>{Y1();N0()});import{defineRoute as rw,defineRoutes as aw,resetRoutes as tw,route as ew,setAppUrl as $A}from"stx-router";import{route as TU}from"stx-router";function sY($){return $.replace(/@route\(\s*(['"])([^'"]+)\1(?:\s*,\s*(\{[^}]+\}))?\s*(?:,\s*(true|false)\s*)?\)/g,(Z,Y,J,X,Q)=>{try{let G=X?M0(X,{}):{};return TU(J,G,Q==="true")}catch(G){return console.error(`Error processing @route directive: ${G}`),"#route-error"}})}var rY=b(()=>{A0()});async function aY($,Z){let Y=$.split("/").pop()?.split(".")[0]||"";if(U$.exact[$])for(let J of U$.exact[$])await Promise.resolve(J(Z,$));if(U$.exact[Y])for(let J of U$.exact[Y])await Promise.resolve(J(Z,$));for(let{pattern:J,callback:X}of U$.patterns)if(J.test($)||J.test(Y))await Promise.resolve(X(Z,$))}var U$;var tY=b(()=>{U$={patterns:[],exact:{}}});function eY($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>eY(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function $J($,Z){if(!/:[\w-]+=/.test($))return $;let Y=$,J=/<(script|style)\b[^>]*>[\s\S]*?<\/\1>/gi,X=[],Q;while((Q=J.exec($))!==null)X.push([Q.index,Q.index+Q[0].length]);function G(q){return X.some(([W,U])=>q>=W&&q<U)}let K=/<([a-zA-Z][a-zA-Z0-9-]*)((?:\s+(?:[^>"']|"[^"]*"|'[^']*'))*)\s*\/?>/g,z=[];while((Q=K.exec(Y))!==null){if(G(Q.index))continue;let q=Q[0],W=Q[2];if(!W||!W.includes(":"))continue;let U=/\s:([a-zA-Z_][\w-]*)\s*=\s*"([^"]*)"/g,j,B=W,_=!1;while((j=U.exec(W))!==null){let H=j[1],L=j[2];if(L.includes("()")&&!L.includes(".get(")||L.includes("$store")||L.includes("$ref"))continue;try{let V=Object.keys(Z),O=Object.values(Z),F=L.match(/^([a-zA-Z_$][\w$]*)/);if(F&&!V.includes(F[1])&&!["true","false","null","undefined","Math","JSON","String","Number","Array","Object","Date","parseInt","parseFloat"].includes(F[1]))continue;let A=Function(...V,`return (${L})`)(...O);if(H==="class"){let R=eY(A);if(R){let N=B.match(/\sclass="([^"]*)"/);if(N)B=B.replace(N[0],` class="${N[1]} ${R}"`);else B=B.replace(j[0],` class="${R}"`)}else B=B.replace(j[0],"");_=!0;continue}if(IU.has(H)){if(A)B=B.replace(j[0],` ${H}`);else B=B.replace(j[0],"");_=!0;continue}if(A===null||A===void 0||A===!1)B=B.replace(j[0],"");else{let R=String(A).replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;");B=B.replace(j[0],` ${H}="${R}"`)}_=!0}catch{continue}}if(_){let H=q.endsWith("/>")?" /":"",V=`<${Q[1]}${B}${H}>`;z.push({start:Q.index,end:Q.index+q.length,replacement:V})}}for(let q=z.length-1;q>=0;q--){let{start:W,end:U,replacement:j}=z[q];Y=Y.slice(0,W)+j+Y.slice(U)}return Y}var IU;var ZJ=b(()=>{IU=new Set(["disabled","checked","readonly","required","autofocus","autoplay","controls","default","defer","formnovalidate","hidden","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","reversed","selected"])});function o1($,Z){let Y=/<([a-zA-Z][a-zA-Z0-9-]*)((?:\s+(?:[^>"']|"[^"]*"|'[^']*')*)?)(\s*\/?)>/g;Y.lastIndex=Z;let J=Y.exec($);if(!J)return null;let X=/\/\s*>$/.test(J[0])||DU.has(J[1].toLowerCase()),Q=X?J[2].replace(/\/\s*$/,""):J[2];return{full:J[0],tag:J[1],attrs:Q,selfClosing:X,start:J.index,end:J.index+J[0].length}}function kU($,Z,Y){let J=1,X=Y,Q=new RegExp(`<${Z}(?:\\s(?:[^>"']|"[^"]*"|'[^']*')*)?>`,"gi"),G=new RegExp(`</${Z}\\s*>`,"gi");while(J>0&&X<$.length){Q.lastIndex=X,G.lastIndex=X;let K=Q.exec($),z=G.exec($);if(!z)return-1;if(K&&K.index<z.index)J++,X=K.index+K[0].length;else{if(J--,J===0)return z.index+z[0].length;X=z.index+z[0].length}}return-1}function X1($,Z){if(Z.selfClosing)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};let Y=kU($,Z.tag,Z.end);if(Y===-1)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};return{outerStart:Z.start,outerEnd:Y,innerHTML:$.slice(Z.end,Y-`</${Z.tag}>`.length)}}function YJ($,Z){return new RegExp(`(?:^|\\s)${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?:=|\\s|$|>|/)`).test($)||$.includes(` ${Z}=`)||$.includes(` ${Z} `)||$.trimEnd().endsWith(` ${Z}`)}function F5($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),J=$.match(new RegExp(`${Y}="([^"]*)"`,"s"))||$.match(new RegExp(`${Y}='([^']*)'`,"s"));return J?J[1]:null}function M1($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return $.replace(new RegExp(`\\s*${Y}="[^"]*"`,"g"),"").replace(new RegExp(`\\s*${Y}='[^']*'`,"g"),"").replace(new RegExp(`\\s*${Y}(?=\\s|$|>|/)`,"g"),"")}function T1($,Z,Y){let J=Z.selfClosing?" /":"",X=`<${Z.tag}${Y}${J}>`;return $.slice(0,Z.start)+X+$.slice(Z.end)}function bU($){return/\bv-(?:if|else-if|else|for|show|model|html|text|pre|once|cloak|memo|bind|on|slot)\b/.test($)}function SU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-for");if(X===null){Y=J.end;continue}let Q=X.match(/^\s*\(?([^)]+)\)?\s+(?:in|of)\s+(.+)\s*$/);if(!Q){Y=J.end;continue}let G=Q[1].trim(),K=Q[2].trim(),z;if(G.includes(",")){let L=G.split(",").map((F)=>F.trim()),V=L[0],O=L[1];z=`${K} as ${O} => ${V}`}else z=`${K} as ${G}`;let q=M1(J.attrs,"v-for"),W=M1(q,":key").replace(/\s*v-bind:key="[^"]*"/g,""),U=X1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),B=T1(j,{...J,start:0,end:J.end-J.start},W),_=`@foreach(${z})
9406
- `,H=`${_}${B}
9407
- @endforeach`;Z=Z.slice(0,U.outerStart)+H+Z.slice(U.outerEnd),Y=U.outerStart+_.length}return Z}function yU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-if");if(X===null){Y=J.end;continue}let Q=[],G=X1(Z,J),K=M1(J.attrs,"v-if"),z=T1(Z.slice(G.outerStart,G.outerEnd),{...J,start:0,end:J.end-J.start},K);Q.push({type:"if",expr:X,outerStart:G.outerStart,outerEnd:G.outerEnd,element:z,parsedTag:J});let q=G.outerEnd,W=!0;while(W){let H=Z.slice(q).match(/^\s*/),L=H?H[0].length:0,V=o1(Z,q+L);if(!V){W=!1;break}let O=F5(V.attrs,"v-else-if"),F=YJ(V.attrs,"v-else");if(O!==null){let w=X1(Z,V),A=M1(V.attrs,"v-else-if"),R=T1(Z.slice(w.outerStart,w.outerEnd),{...V,start:0,end:V.end-V.start},A);Q.push({type:"else-if",expr:O,outerStart:q,outerEnd:w.outerEnd,element:R,parsedTag:V}),q=w.outerEnd}else if(F){let w=X1(Z,V),A=M1(V.attrs,"v-else"),R=T1(Z.slice(w.outerStart,w.outerEnd),{...V,start:0,end:V.end-V.start},A);Q.push({type:"else",outerStart:q,outerEnd:w.outerEnd,element:R,parsedTag:V}),W=!1}else W=!1}let U=[];for(let H of Q)if(H.type==="if")U.push(`@if(${H.expr})
9423
+ `)}}}return Q}async function iY($,Z,Y,J){return cY($,Z,Y,J,"before")}async function nY($,Z,Y,J){return cY($,Z,Y,J,"after")}var oY=b(()=>{Y1();N0()});import{defineRoute as rw,defineRoutes as aw,resetRoutes as tw,route as ew,setAppUrl as $A}from"stx-router";import{route as TU}from"stx-router";function sY($){return $.replace(/@route\(\s*(['"])([^'"]+)\1(?:\s*,\s*(\{[^}]+\}))?\s*(?:,\s*(true|false)\s*)?\)/g,(Z,Y,J,X,Q)=>{try{let G=X?M0(X,{}):{};return TU(J,G,Q==="true")}catch(G){return console.error(`Error processing @route directive: ${G}`),"#route-error"}})}var rY=b(()=>{A0()});async function aY($,Z){let Y=$.split("/").pop()?.split(".")[0]||"";if(U$.exact[$])for(let J of U$.exact[$])await Promise.resolve(J(Z,$));if(U$.exact[Y])for(let J of U$.exact[Y])await Promise.resolve(J(Z,$));for(let{pattern:J,callback:X}of U$.patterns)if(J.test($)||J.test(Y))await Promise.resolve(X(Z,$))}var U$;var tY=b(()=>{U$={patterns:[],exact:{}}});function eY($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>eY(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function $J($,Z){if(!/:[\w-]+=/.test($))return $;let Y=$,J=/<(script|style)\b[^>]*>[\s\S]*?<\/\1>/gi,X=[],Q;while((Q=J.exec($))!==null)X.push([Q.index,Q.index+Q[0].length]);function G(q){return X.some(([W,U])=>q>=W&&q<U)}let K=/<([a-zA-Z][a-zA-Z0-9-]*)((?:\s+(?:[^>"']|"[^"]*"|'[^']*'))*)\s*\/?>/g,z=[];while((Q=K.exec(Y))!==null){if(G(Q.index))continue;let q=Q[0],W=Q[2];if(!W||!W.includes(":"))continue;let U=/\s:([a-zA-Z_][\w-]*)\s*=\s*"([^"]*)"/g,j,_=W,B=!1;while((j=U.exec(W))!==null){let H=j[1],L=j[2];if(L.includes("()")&&!L.includes(".get(")||L.includes("$store")||L.includes("$ref"))continue;try{let V=Object.keys(Z),O=Object.values(Z),F=L.match(/^([a-zA-Z_$][\w$]*)/);if(F&&!V.includes(F[1])&&!["true","false","null","undefined","Math","JSON","String","Number","Array","Object","Date","parseInt","parseFloat"].includes(F[1]))continue;let A=Function(...V,`return (${L})`)(...O);if(H==="class"){let R=eY(A);if(R){let N=_.match(/\sclass="([^"]*)"/);if(N)_=_.replace(N[0],` class="${N[1]} ${R}"`);else _=_.replace(j[0],` class="${R}"`)}else _=_.replace(j[0],"");B=!0;continue}if(IU.has(H)){if(A)_=_.replace(j[0],` ${H}`);else _=_.replace(j[0],"");B=!0;continue}if(A===null||A===void 0||A===!1)_=_.replace(j[0],"");else{let R=String(A).replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;");_=_.replace(j[0],` ${H}="${R}"`)}B=!0}catch{continue}}if(B){let H=q.endsWith("/>")?" /":"",V=`<${Q[1]}${_}${H}>`;z.push({start:Q.index,end:Q.index+q.length,replacement:V})}}for(let q=z.length-1;q>=0;q--){let{start:W,end:U,replacement:j}=z[q];Y=Y.slice(0,W)+j+Y.slice(U)}return Y}var IU;var ZJ=b(()=>{IU=new Set(["disabled","checked","readonly","required","autofocus","autoplay","controls","default","defer","formnovalidate","hidden","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","reversed","selected"])});function o1($,Z){let Y=/<([a-zA-Z][a-zA-Z0-9-]*)((?:\s+(?:[^>"']|"[^"]*"|'[^']*')*)?)(\s*\/?)>/g;Y.lastIndex=Z;let J=Y.exec($);if(!J)return null;let X=/\/\s*>$/.test(J[0])||DU.has(J[1].toLowerCase()),Q=X?J[2].replace(/\/\s*$/,""):J[2];return{full:J[0],tag:J[1],attrs:Q,selfClosing:X,start:J.index,end:J.index+J[0].length}}function kU($,Z,Y){let J=1,X=Y,Q=new RegExp(`<${Z}(?:\\s(?:[^>"']|"[^"]*"|'[^']*')*)?>`,"gi"),G=new RegExp(`</${Z}\\s*>`,"gi");while(J>0&&X<$.length){Q.lastIndex=X,G.lastIndex=X;let K=Q.exec($),z=G.exec($);if(!z)return-1;if(K&&K.index<z.index)J++,X=K.index+K[0].length;else{if(J--,J===0)return z.index+z[0].length;X=z.index+z[0].length}}return-1}function X1($,Z){if(Z.selfClosing)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};let Y=kU($,Z.tag,Z.end);if(Y===-1)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};return{outerStart:Z.start,outerEnd:Y,innerHTML:$.slice(Z.end,Y-`</${Z.tag}>`.length)}}function YJ($,Z){return new RegExp(`(?:^|\\s)${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?:=|\\s|$|>|/)`).test($)||$.includes(` ${Z}=`)||$.includes(` ${Z} `)||$.trimEnd().endsWith(` ${Z}`)}function F5($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),J=$.match(new RegExp(`${Y}="([^"]*)"`,"s"))||$.match(new RegExp(`${Y}='([^']*)'`,"s"));return J?J[1]:null}function M1($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return $.replace(new RegExp(`\\s*${Y}="[^"]*"`,"g"),"").replace(new RegExp(`\\s*${Y}='[^']*'`,"g"),"").replace(new RegExp(`\\s*${Y}(?=\\s|$|>|/)`,"g"),"")}function T1($,Z,Y){let J=Z.selfClosing?" /":"",X=`<${Z.tag}${Y}${J}>`;return $.slice(0,Z.start)+X+$.slice(Z.end)}function bU($){return/\bv-(?:if|else-if|else|for|show|model|html|text|pre|once|cloak|memo|bind|on|slot)\b/.test($)}function SU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-for");if(X===null){Y=J.end;continue}let Q=X.match(/^\s*\(?([^)]+)\)?\s+(?:in|of)\s+(.+)\s*$/);if(!Q){Y=J.end;continue}let G=Q[1].trim(),K=Q[2].trim(),z;if(G.includes(",")){let L=G.split(",").map((F)=>F.trim()),V=L[0],O=L[1];z=`${K} as ${O} => ${V}`}else z=`${K} as ${G}`;let q=M1(J.attrs,"v-for"),W=M1(q,":key").replace(/\s*v-bind:key="[^"]*"/g,""),U=X1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=T1(j,{...J,start:0,end:J.end-J.start},W),B=`@foreach(${z})
9424
+ `,H=`${B}${_}
9425
+ @endforeach`;Z=Z.slice(0,U.outerStart)+H+Z.slice(U.outerEnd),Y=U.outerStart+B.length}return Z}function yU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-if");if(X===null){Y=J.end;continue}let Q=[],G=X1(Z,J),K=M1(J.attrs,"v-if"),z=T1(Z.slice(G.outerStart,G.outerEnd),{...J,start:0,end:J.end-J.start},K);Q.push({type:"if",expr:X,outerStart:G.outerStart,outerEnd:G.outerEnd,element:z,parsedTag:J});let q=G.outerEnd,W=!0;while(W){let H=Z.slice(q).match(/^\s*/),L=H?H[0].length:0,V=o1(Z,q+L);if(!V){W=!1;break}let O=F5(V.attrs,"v-else-if"),F=YJ(V.attrs,"v-else");if(O!==null){let w=X1(Z,V),A=M1(V.attrs,"v-else-if"),R=T1(Z.slice(w.outerStart,w.outerEnd),{...V,start:0,end:V.end-V.start},A);Q.push({type:"else-if",expr:O,outerStart:q,outerEnd:w.outerEnd,element:R,parsedTag:V}),q=w.outerEnd}else if(F){let w=X1(Z,V),A=M1(V.attrs,"v-else"),R=T1(Z.slice(w.outerStart,w.outerEnd),{...V,start:0,end:V.end-V.start},A);Q.push({type:"else",outerStart:q,outerEnd:w.outerEnd,element:R,parsedTag:V}),W=!1}else W=!1}let U=[];for(let H of Q)if(H.type==="if")U.push(`@if(${H.expr})
9408
9426
  ${H.element}`);else if(H.type==="else-if")U.push(`@elseif(${H.expr})
9409
9427
  ${H.element}`);else U.push(`@else
9410
9428
  ${H.element}`);U.push("@endif");let j=U.join(`
9411
- `),B=Q[0].outerStart,_=Q[Q.length-1].outerEnd;Z=Z.slice(0,B)+j+Z.slice(_),Y=B+j.length}return Z}function PU($){return $.replace(/\bv-show="([^"]*)"/g,'@show="$1"')}function CU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=J.attrs,Q=!1,G=/v-model:([a-zA-Z_][a-zA-Z0-9_]*)(?:\.([a-zA-Z.]+))?\s*=\s*"([^"]*)"/,K=X.match(G);while(K){Q=!0;let W=K[1],U=K[2],j=K[3];X=X.replace(K[0],""),X+=` :${W}="${j}" @update:${W}="${j} = $event"`,K=X.match(G)}if(Q){let W=X1(Z,J),U=Z.slice(W.outerStart,W.outerEnd),j=T1(U,{...J,start:0,end:J.end-J.start},X);Z=Z.slice(0,W.outerStart)+j+Z.slice(W.outerEnd),Y=W.outerStart+j.length;continue}let z=F5(J.attrs,"v-model");if(z===null){Y=J.end;continue}if(EU.has(J.tag.toLowerCase())){let W=J.attrs.replace(/\s*v-model="[^"]*"/g,"")+` @model="${z}"`,U=X1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),B=T1(j,{...J,start:0,end:J.end-J.start},W);Z=Z.slice(0,U.outerStart)+B+Z.slice(U.outerEnd),Y=U.outerStart+B.length}else{let W=J.attrs.replace(/\s*v-model="[^"]*"/g,"");W+=` :modelValue="${z}" @update:modelValue="${z} = $event"`;let U=X1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),B=T1(j,{...J,start:0,end:J.end-J.start},W);Z=Z.slice(0,U.outerStart)+B+Z.slice(U.outerEnd),Y=U.outerStart+B.length}}return Z}function vU($){return $.replace(/\bv-bind:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'@bind:$1="$2"')}function xU($){return $.replace(/\bv-on:([a-zA-Z_][a-zA-Z0-9_.-]*)\s*=\s*"([^"]*)"/g,'@$1="$2"')}function fU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-html");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=X1(Z,J),G=M1(J.attrs,"v-html"),K=J.selfClosing?" /":"",z=`<${J.tag}${G}${K}>{!! ${X} !!}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+z+Z.slice(Q.outerEnd),Y=Q.outerStart+z.length}return Z}function gU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-text");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=X1(Z,J),G=M1(J.attrs,"v-text"),K=J.selfClosing?" /":"",z=`<${J.tag}${G}${K}>{{ ${X} }}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+z+Z.slice(Q.outerEnd),Y=Q.outerStart+z.length}return Z}function hU($){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 dU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;if(!YJ(J.attrs,"v-once")){Y=J.end;continue}let X=M1(J.attrs,"v-once"),Q=X1(Z,J),G=Z.slice(Q.outerStart,Q.outerEnd),z=`@once
9429
+ `),_=Q[0].outerStart,B=Q[Q.length-1].outerEnd;Z=Z.slice(0,_)+j+Z.slice(B),Y=_+j.length}return Z}function PU($){return $.replace(/\bv-show="([^"]*)"/g,'@show="$1"')}function CU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=J.attrs,Q=!1,G=/v-model:([a-zA-Z_][a-zA-Z0-9_]*)(?:\.([a-zA-Z.]+))?\s*=\s*"([^"]*)"/,K=X.match(G);while(K){Q=!0;let W=K[1],U=K[2],j=K[3];X=X.replace(K[0],""),X+=` :${W}="${j}" @update:${W}="${j} = $event"`,K=X.match(G)}if(Q){let W=X1(Z,J),U=Z.slice(W.outerStart,W.outerEnd),j=T1(U,{...J,start:0,end:J.end-J.start},X);Z=Z.slice(0,W.outerStart)+j+Z.slice(W.outerEnd),Y=W.outerStart+j.length;continue}let z=F5(J.attrs,"v-model");if(z===null){Y=J.end;continue}if(EU.has(J.tag.toLowerCase())){let W=J.attrs.replace(/\s*v-model="[^"]*"/g,"")+` @model="${z}"`,U=X1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=T1(j,{...J,start:0,end:J.end-J.start},W);Z=Z.slice(0,U.outerStart)+_+Z.slice(U.outerEnd),Y=U.outerStart+_.length}else{let W=J.attrs.replace(/\s*v-model="[^"]*"/g,"");W+=` :modelValue="${z}" @update:modelValue="${z} = $event"`;let U=X1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=T1(j,{...J,start:0,end:J.end-J.start},W);Z=Z.slice(0,U.outerStart)+_+Z.slice(U.outerEnd),Y=U.outerStart+_.length}}return Z}function vU($){return $.replace(/\bv-bind:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'@bind:$1="$2"')}function xU($){return $.replace(/\bv-on:([a-zA-Z_][a-zA-Z0-9_.-]*)\s*=\s*"([^"]*)"/g,'@$1="$2"')}function fU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-html");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=X1(Z,J),G=M1(J.attrs,"v-html"),K=J.selfClosing?" /":"",z=`<${J.tag}${G}${K}>{!! ${X} !!}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+z+Z.slice(Q.outerEnd),Y=Q.outerStart+z.length}return Z}function gU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;let X=F5(J.attrs,"v-text");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=X1(Z,J),G=M1(J.attrs,"v-text"),K=J.selfClosing?" /":"",z=`<${J.tag}${G}${K}>{{ ${X} }}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+z+Z.slice(Q.outerEnd),Y=Q.outerStart+z.length}return Z}function hU($){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 dU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;if(!YJ(J.attrs,"v-once")){Y=J.end;continue}let X=M1(J.attrs,"v-once"),Q=X1(Z,J),G=Z.slice(Q.outerStart,Q.outerEnd),z=`@once
9412
9430
  ${T1(G,{...J,start:0,end:J.end-J.start},X)}
9413
- @endonce`;Z=Z.slice(0,Q.outerStart)+z+Z.slice(Q.outerEnd),Y=Q.outerStart+z.length}return Z}function uU($){return $.replace(/\bv-memo="([^"]*)"/g,'data-stx-memo="$1"')}function mU($){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 JJ($){if(!bU($))return $;let Z=$;return Z=SU(Z),Z=yU(Z),Z=dU(Z),Z=vU(Z),Z=xU(Z),Z=CU(Z),Z=PU(Z),Z=mU(Z),Z=fU(Z),Z=gU(Z),Z=hU(Z),Z=uU(Z),Z}var DU,EU;var XJ=b(()=>{DU=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),EU=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 n4($){return $.replace(/--/g,"- -").replace(/</g,"&lt;").replace(/>/g,"&gt;")}async function QJ($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*)>([\s\S]*?)<\/component>/gi,K=[],z;while((z=G.exec(Q))!==null)K.push({full:z[0],expr:z[1],attrs:z[2],slotContent:z[3],index:z.index});for(let q=K.length-1;q>=0;q--){let W=K[q];try{let U=Y0(W.expr,Z);if(!U||typeof U!=="string"){let O=`<!-- dynamic component: could not resolve "${n4(W.expr)}" -->`;Q=Q.slice(0,W.index)+O+Q.slice(W.index+W.full.length);continue}let j=W.attrs.trim(),B={},_=/(?::([a-zA-Z_][a-zA-Z0-9_-]*)|([a-zA-Z_][a-zA-Z0-9_-]*))\s*=\s*"([^"]*)"/g,H;while((H=_.exec(j))!==null){let O=H[1]||H[2],F=H[3];if(H[1])try{B[O]=Y0(F,Z)}catch{B[O]=F}else B[O]=F}let L=J.componentsDir||"components",V=await h1(U,B,W.slotContent,L,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,W.index)+V+Q.slice(W.index+W.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),B=`<!-- dynamic component error: ${n4(j)} -->`;Q=Q.slice(0,W.index)+B+Q.slice(W.index+W.full.length)}}return Q=await pU(Q,Z,Y,J,X),Q}async function pU($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*?)\/>/gi,K=[],z;while((z=G.exec(Q))!==null)K.push({full:z[0],expr:z[1],attrs:z[2],index:z.index});for(let q=K.length-1;q>=0;q--){let W=K[q];try{let U=Y0(W.expr,Z);if(!U||typeof U!=="string"){let _=`<!-- dynamic component: could not resolve "${n4(W.expr)}" -->`;Q=Q.slice(0,W.index)+_+Q.slice(W.index+W.full.length);continue}let j=J.componentsDir||"components",B=await h1(U,{},"",j,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,W.index)+B+Q.slice(W.index+W.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),B=`<!-- dynamic component error: ${n4(j)} -->`;Q=Q.slice(0,W.index)+B+Q.slice(W.index+W.full.length)}}return Q}var GJ=b(()=>{N0();A0()});function KJ($){if($.includes("data-stx-cloak"))return $;let Z=$.lastIndexOf("</head>");if(Z===-1)return $;return`${$.slice(0,Z)}<style data-stx-cloak>[x-cloak]{display:none !important}</style>
9414
- ${$.slice(Z)}`}function lU($){let Z=[],Y=0;while(Y<$.length){let Q=$.slice(Y),G=Q.match(/^\s+/);if(G){Y+=G[0].length;continue}if(Q.startsWith("<!--")){let U=$.indexOf("-->",Y);if(U===-1)break;Y=U+3;continue}let K=Q.match(/^<script\b[^>]*>/i);if(K){let U=$.toLowerCase().indexOf("</script>",Y+K[0].length);if(U===-1)break;Y=U+9;continue}let z=Q.match(/^<link\b[^>]*>/i);if(z){Z.push(z[0]),Y+=z[0].length;continue}let q=Q.match(/^<meta\b[^>]*>/i);if(q){Z.push(q[0]),Y+=q[0].length;continue}let W=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(W){Z.push(W[0]),Y+=W[0].length;continue}break}if(Z.length===0)return{body:$,hoisted:Z};let J="",X=0;while(X<$.length&&X<Y){let Q=$.slice(X),G=Q.match(/^<link\b[^>]*>/i);if(G&&Z.includes(G[0])){X+=G[0].length;continue}let K=Q.match(/^<meta\b[^>]*>/i);if(K&&Z.includes(K[0])){X+=K[0].length;continue}let z=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(z&&Z.includes(z[0])){X+=z[0].length;continue}J+=$[X],X++}return J+=$.slice(Y),{body:J,hoisted:Z}}function cU($,Z={},Y={}){let{title:J="stx App",lang:X="en",meta:Q=[],link:G=[],script:K=[],headRaw:z="",bodyClass:q="",bodyAttrs:W={}}=Z,U=Y.title||J,_=[...[{charset:"UTF-8"},{name:"viewport",content:"width=device-width, initial-scale=1.0"}],...Q].map((N)=>{return` <meta ${Object.entries(N).map(([T,I])=>`${T}="${I}"`).join(" ")}>`}).join(`
9431
+ @endonce`;Z=Z.slice(0,Q.outerStart)+z+Z.slice(Q.outerEnd),Y=Q.outerStart+z.length}return Z}function mU($){return $.replace(/\bv-memo="([^"]*)"/g,'data-stx-memo="$1"')}function uU($){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 JJ($){if(!bU($))return $;let Z=$;return Z=SU(Z),Z=yU(Z),Z=dU(Z),Z=vU(Z),Z=xU(Z),Z=CU(Z),Z=PU(Z),Z=uU(Z),Z=fU(Z),Z=gU(Z),Z=hU(Z),Z=mU(Z),Z}var DU,EU;var XJ=b(()=>{DU=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),EU=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 n4($){return $.replace(/--/g,"- -").replace(/</g,"&lt;").replace(/>/g,"&gt;")}async function QJ($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*)>([\s\S]*?)<\/component>/gi,K=[],z;while((z=G.exec(Q))!==null)K.push({full:z[0],expr:z[1],attrs:z[2],slotContent:z[3],index:z.index});for(let q=K.length-1;q>=0;q--){let W=K[q];try{let U=Y0(W.expr,Z);if(!U||typeof U!=="string"){let O=`<!-- dynamic component: could not resolve "${n4(W.expr)}" -->`;Q=Q.slice(0,W.index)+O+Q.slice(W.index+W.full.length);continue}let j=W.attrs.trim(),_={},B=/(?::([a-zA-Z_][a-zA-Z0-9_-]*)|([a-zA-Z_][a-zA-Z0-9_-]*))\s*=\s*"([^"]*)"/g,H;while((H=B.exec(j))!==null){let O=H[1]||H[2],F=H[3];if(H[1])try{_[O]=Y0(F,Z)}catch{_[O]=F}else _[O]=F}let L=J.componentsDir||"components",V=await h1(U,_,W.slotContent,L,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,W.index)+V+Q.slice(W.index+W.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),_=`<!-- dynamic component error: ${n4(j)} -->`;Q=Q.slice(0,W.index)+_+Q.slice(W.index+W.full.length)}}return Q=await pU(Q,Z,Y,J,X),Q}async function pU($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*?)\/>/gi,K=[],z;while((z=G.exec(Q))!==null)K.push({full:z[0],expr:z[1],attrs:z[2],index:z.index});for(let q=K.length-1;q>=0;q--){let W=K[q];try{let U=Y0(W.expr,Z);if(!U||typeof U!=="string"){let B=`<!-- dynamic component: could not resolve "${n4(W.expr)}" -->`;Q=Q.slice(0,W.index)+B+Q.slice(W.index+W.full.length);continue}let j=J.componentsDir||"components",_=await h1(U,{},"",j,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,W.index)+_+Q.slice(W.index+W.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),_=`<!-- dynamic component error: ${n4(j)} -->`;Q=Q.slice(0,W.index)+_+Q.slice(W.index+W.full.length)}}return Q}var GJ=b(()=>{N0();A0()});function KJ($){if($.includes("data-stx-cloak"))return $;let Z=$.lastIndexOf("</head>");if(Z===-1)return $;return`${$.slice(0,Z)}<style data-stx-cloak>[x-cloak]{display:none !important}</style>
9432
+ ${$.slice(Z)}`}function lU($){let Z=[],Y=0;while(Y<$.length){let Q=$.slice(Y),G=Q.match(/^\s+/);if(G){Y+=G[0].length;continue}if(Q.startsWith("<!--")){let U=$.indexOf("-->",Y);if(U===-1)break;Y=U+3;continue}let K=Q.match(/^<script\b[^>]*>/i);if(K){let U=$.toLowerCase().indexOf("</script>",Y+K[0].length);if(U===-1)break;Y=U+9;continue}let z=Q.match(/^<link\b[^>]*>/i);if(z){Z.push(z[0]),Y+=z[0].length;continue}let q=Q.match(/^<meta\b[^>]*>/i);if(q){Z.push(q[0]),Y+=q[0].length;continue}let W=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(W){Z.push(W[0]),Y+=W[0].length;continue}break}if(Z.length===0)return{body:$,hoisted:Z};let J="",X=0;while(X<$.length&&X<Y){let Q=$.slice(X),G=Q.match(/^<link\b[^>]*>/i);if(G&&Z.includes(G[0])){X+=G[0].length;continue}let K=Q.match(/^<meta\b[^>]*>/i);if(K&&Z.includes(K[0])){X+=K[0].length;continue}let z=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(z&&Z.includes(z[0])){X+=z[0].length;continue}J+=$[X],X++}return J+=$.slice(Y),{body:J,hoisted:Z}}function cU($,Z={},Y={}){let{title:J="stx App",lang:X="en",meta:Q=[],link:G=[],script:K=[],headRaw:z="",bodyClass:q="",bodyAttrs:W={}}=Z,U=Y.title||J,B=[...[{charset:"UTF-8"},{name:"viewport",content:"width=device-width, initial-scale=1.0"}],...Q].map((N)=>{return` <meta ${Object.entries(N).map(([T,I])=>`${T}="${I}"`).join(" ")}>`}).join(`
9415
9433
  `),H=G.map((N)=>{return` <link ${Object.entries(N).map(([T,I])=>`${T}="${I}"`).join(" ")}>`}).join(`
9416
9434
  `),L=K.map((N)=>{if(N.src)return` <script ${Object.entries(N).filter(([T])=>T!=="content").map(([T,I])=>`${T}="${I}"`).join(" ")}></script>`;if(N.content)return` <script>${N.content}</script>`;return""}).filter(Boolean).join(`
9417
- `),V=Object.entries(W).map(([N,M])=>` ${N}="${M}"`).join(""),O=q?` class="${q}"`:"",{body:F,hoisted:w}=lU($),A=[_,` <title>${U}</title>`," <style data-stx-cloak>[x-cloak]{display:none !important}</style>",H,L,z?` ${z}`:"",...(Y.styles||[]).map((N)=>` ${N}`),...w.map((N)=>` ${N}`),...(Y.headScripts||[]).map((N)=>` ${N}`),Y.headStack||""].filter(Boolean),R=[F,...(Y.bodyScripts||[]).map((N)=>N),Y.bodyStack||""].filter(Boolean);return`<!DOCTYPE html>
9435
+ `),V=Object.entries(W).map(([N,M])=>` ${N}="${M}"`).join(""),O=q?` class="${q}"`:"",{body:F,hoisted:w}=lU($),A=[B,` <title>${U}</title>`," <style data-stx-cloak>[x-cloak]{display:none !important}</style>",H,L,z?` ${z}`:"",...(Y.styles||[]).map((N)=>` ${N}`),...w.map((N)=>` ${N}`),...(Y.headScripts||[]).map((N)=>` ${N}`),Y.headStack||""].filter(Boolean),R=[F,...(Y.bodyScripts||[]).map((N)=>N),Y.bodyStack||""].filter(Boolean);return`<!DOCTYPE html>
9418
9436
  <html lang="${X}">
9419
9437
  <head>
9420
9438
  ${A.join(`
@@ -9426,14 +9444,14 @@ ${R.join(`
9426
9444
  </body>
9427
9445
  </html>`}function S6($){return/<!DOCTYPE\b/i.test($)||/<html[\s>]/i.test($)}function zJ($,Z={}){let Y=$.lastIndexOf("</head>");if(Y===-1)return $;let{meta:J=[],link:X=[],script:Q=[],headRaw:G=""}=Z,K=$.slice(0,Y),z=[];for(let q of J){let W=q.name?`name="${q.name}"`:q.property?`property="${q.property}"`:q.charset!=null?"charset=":q["http-equiv"]?`http-equiv="${q["http-equiv"]}"`:"";if(W&&K.includes(W))continue;z.push(` <meta ${Object.entries(q).map(([U,j])=>`${U}="${j}"`).join(" ")}>`)}for(let q of X){if(q.href&&K.includes(`href="${q.href}"`))continue;z.push(` <link ${Object.entries(q).map(([W,U])=>`${W}="${U}"`).join(" ")}>`)}for(let q of Q)if(q.src){if(K.includes(`src="${q.src}"`))continue;z.push(` <script ${Object.entries(q).filter(([W])=>W!=="content").map(([W,U])=>`${W}="${U}"`).join(" ")}></script>`)}else if(q.content){if(K.includes(q.content))continue;z.push(` <script>${q.content}</script>`)}if(G&&!K.includes(G))z.push(` ${G}`);if(z.length===0)return $;return`${$.slice(0,Y)}${z.join(`
9428
9446
  `)}
9429
- ${$.slice(Y)}`}function qJ($,Z={},Y={}){if(S6($))return $;return cU($,Z,Y)}import V5 from"path";function WJ($){return $.startsWith("http://")||$.startsWith("https://")||$.startsWith("//")}async function UJ($,Z,Y){try{let J;if($.startsWith("/")){let X=Z;for(let Q=0;Q<5;Q++){let G=V5.join(X,$);if(await Bun.file(G).exists())return G;X=V5.dirname(X)}J=V5.join(Z,$)}else if($.startsWith("./")||$.startsWith("../"))J=V5.resolve(Z,$);else J=V5.resolve(Z,$);if(await Bun.file(J).exists())return J;return null}catch{return null}}async function jJ($,Z,Y){let J=$,X=V5.dirname(Z),Q=/<script\b([^>]*)src=["']([^"']+)["']([^>]*)><\/script>/gi,G;while((G=Q.exec(J))!==null){let[q,W,U,j]=G;if(WJ(U))continue;let B=await UJ(U,X,Z);if(B)try{let _=await Bun.file(B).text();if(Y.add(B),U.endsWith(".ts")||U.endsWith(".tsx")){let L=await Bun.build({entrypoints:[B],target:"browser",minify:!1,define:p0()});if(L.outputs.length>0)_=await L.outputs[0].text()}let H=`<script>
9447
+ ${$.slice(Y)}`}function qJ($,Z={},Y={}){if(S6($))return $;return cU($,Z,Y)}import V5 from"path";function WJ($){return $.startsWith("http://")||$.startsWith("https://")||$.startsWith("//")}async function UJ($,Z,Y){try{let J;if($.startsWith("/")){let X=Z;for(let Q=0;Q<5;Q++){let G=V5.join(X,$);if(await Bun.file(G).exists())return G;X=V5.dirname(X)}J=V5.join(Z,$)}else if($.startsWith("./")||$.startsWith("../"))J=V5.resolve(Z,$);else J=V5.resolve(Z,$);if(await Bun.file(J).exists())return J;return null}catch{return null}}async function jJ($,Z,Y){let J=$,X=V5.dirname(Z),Q=/<script\b([^>]*)src=["']([^"']+)["']([^>]*)><\/script>/gi,G;while((G=Q.exec(J))!==null){let[q,W,U,j]=G;if(WJ(U))continue;let _=await UJ(U,X,Z);if(_)try{let B=await Bun.file(_).text();if(Y.add(_),U.endsWith(".ts")||U.endsWith(".tsx")){let L=await Bun.build({entrypoints:[_],target:"browser",minify:!1,define:p0()});if(L.outputs.length>0)B=await L.outputs[0].text()}let H=`<script>
9430
9448
  // Source: ${U}
9431
- ${_}
9432
- </script>`;J=J.replace(q,H),Q.lastIndex=0}catch(_){}}let K=/<link\b([^>]*)href=["']([^"']+)["']([^>]*)(?:\/?>)/gi,z;while((z=K.exec(J))!==null){let[q,W,U,j]=z,B=W+j;if(WJ(U))continue;if(/rel=["']stylesheet["']/.test(B)||U.endsWith(".css")){let H=await UJ(U,X,Z);if(H)try{let L=await Bun.file(H).text();Y.add(H);let V=`<style>
9449
+ ${B}
9450
+ </script>`;J=J.replace(q,H),Q.lastIndex=0}catch(B){}}let K=/<link\b([^>]*)href=["']([^"']+)["']([^>]*)(?:\/?>)/gi,z;while((z=K.exec(J))!==null){let[q,W,U,j]=z,_=W+j;if(WJ(U))continue;if(/rel=["']stylesheet["']/.test(_)||U.endsWith(".css")){let H=await UJ(U,X,Z);if(H)try{let L=await Bun.file(H).text();Y.add(H);let V=`<style>
9433
9451
  /* Source: ${U} */
9434
9452
  ${L}
9435
- </style>`;J=J.replace(q,V),K.lastIndex=0}catch(L){}}}return J}var BJ=b(()=>{b1()});function y6($,Z){let Y=$,J=/@json\s*\(/g,X;while((X=J.exec(Y))!==null){let Q=X.index,G=Q+X[0].length-1,K=1,z=G+1,q=null,W=!1;while(z<Y.length&&K>0){let F=Y[z];if(W){W=!1,z++;continue}if(F==="\\"&&q){W=!0,z++;continue}if(q){if(F===q)q=null;z++;continue}if(F==='"'||F==="'"||F==="`"){q=F,z++;continue}if(F==="(")K++;else if(F===")"){if(K--,K===0)break}z++}if(K!==0)break;let U=Y.substring(G+1,z).trim(),j=Y.substring(Q,z+1),B=-1,_=0,H=null,L=!1;for(let F=0;F<U.length;F++){let w=U[F];if(L){L=!1;continue}if(w==="\\"&&H){L=!0;continue}if(H){if(w===H)H=null;continue}if(w==='"'||w==="'"||w==="`"){H=w;continue}if(w==="("||w==="["||w==="{")_++;else if(w===")"||w==="]"||w==="}")_--;if(w===","&&_===0){B=F;break}}let V=B>=0?U.substring(0,B).trim():U,O=B>=0?U.substring(B+1).trim():void 0;try{let F=V.trim(),w;if(G0(F))w=K0(F,Object.keys(Z))(...Object.values(Z));else w=void 0;let A;if(O==="true")A=JSON.stringify(w,null,2);else A=JSON.stringify(w);let R=A.replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029");Y=Y.substring(0,Q)+R+Y.substring(z+1),J.lastIndex=Q+R.length}catch(F){a0.log(F instanceof Error?F:Error(String(F)),{directive:"@json"},"error"),J.lastIndex=Q+j.length}}return Y}function P6($){return $.replace(/@once\s*([\s\S]*?)@endonce/g,"$1")}function _J($){let Z=$,Y=/@memo\s*\(/g,J,X=[];while((J=Y.exec(Z))!==null){let Q=J.index,G=Q+J[0].length,K=1,z=G;while(z<Z.length&&K>0){if(Z[z]==="(")K++;else if(Z[z]===")")K--;z++}if(K!==0)continue;let q=Z.slice(G,z-1).trim(),W=z,U=Z.slice(W),j=U.indexOf("@endmemo");if(j===-1)continue;let B=U.slice(0,j),_=W+j+8,H=B.match(/^(\s*(?:(?:<!--[\s\S]*?-->|\x00STX_HTML_COMMENT_\d+\x00)\s*)*)/),L=H?H[0].length:0,V=B.slice(L),O=B.match(/(\s*)$/),F=O?O[0].length:0,w=V.slice(0,V.length-F),A=w.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*?)?(\/?)>/),R;if(A){let[N,M,T="",I]=A,E=`<${M}${T} data-stx-memo="${q}"${I}>`;R=B.slice(0,L)+E+w.slice(N.length)+B.slice(L+w.length)}else R=`${B.slice(0,L)}<div data-stx-memo="${q}">${w}</div>${B.slice(L+w.length)}`;X.push({start:Q,end:_,replacement:R}),Y.lastIndex=_}for(let Q=X.length-1;Q>=0;Q--){let G=X[Q];Z=Z.slice(0,G.start)+G.replacement+Z.slice(G.end)}return Z.replace(/@memo="([^"]*)"/g,'data-stx-memo="$1"')}function C6($){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 HJ($){let Y=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"),J="",X=0,Q;while((Q=Y.exec($))!==null){let G=Q.index,K=G+Q[0].length,z=!1,q=!1,W=-1;while(K<$.length){let H=$[K];if(z){if(H==="'")z=!1}else if(q){if(H==='"')q=!1}else if(H==="'")z=!0;else if(H==='"')q=!0;else if(H===">"){W=K;break}K++}if(W===-1)continue;if($.slice(G,W+1).includes("x-cloak"))continue;let j=$.slice(W+1),B=j.indexOf("</"),_=B>=0?j.slice(0,B):j.slice(0,200);if(/\{\{[\s\S]*?\}\}/.test(_))J+=$.slice(X,W)+" x-cloak>",X=W+1}return J+=$.slice(X),J}function OJ($){let Z=/<[a-z][\w-]*/gi,Y="",J=0,X;while((X=Z.exec($))!==null){let Q=X.index,G=X[0].slice(1).toLowerCase();if(G==="script"||G==="style"){let _=`</${G}>`,H=$.toLowerCase().indexOf(_,Q);if(H!==-1)Z.lastIndex=H+_.length;continue}let K=Q+X[0].length,z=!1,q=!1,W=-1;while(K<$.length){let _=$[K];if(z){if(_==="'")z=!1}else if(q){if(_==='"')q=!1}else if(_==="'")z=!0;else if(_==='"')q=!0;else if(_===">"){W=K;break}K++}if(W===-1)continue;let U=$.slice(Q+X[0].length,W);if(/(?:^|\s)x-cloak(?:=|\s|\/|>|$)/.test(U))continue;if(!iU.test(U))continue;let j=$[W-1]==="/",B=j?W-1:W;Y+=`${$.slice(J,B)} x-cloak${j?" ":""}`,J=B}return Y+=$.slice(J),Y}var iU;var v6=b(()=>{z1();A0();iU=/(?:^|\s)(?::else-if|:if|:else|:show|x-else-if|x-if|x-else|x-show|@if|@show)(?:=|\s|\/|>|$)/});function x6($,Z,Y){let J=typeof Y==="boolean"?{enabled:Y,failOnViolation:Y}:Y??{enabled:!1},X=J.allowPatterns??[],Q=[];for(let{pattern:G,message:K,suggestion:z}of nU){if(X.some((W)=>K.includes(W)||G.source.includes(W)))continue;G.lastIndex=0;let q=$.match(G);if(q&&q.length>0){let W=$.split(`
9436
- `),U=[];W.forEach((B,_)=>{if(G.lastIndex=0,G.test(B))U.push(_+1)});let j=U.length>0?` (line${U.length>1?"s":""}: ${U.join(", ")})`:"";Q.push(` \u2717 ${K}${j}
9453
+ </style>`;J=J.replace(q,V),K.lastIndex=0}catch(L){}}}return J}var _J=b(()=>{b1()});function y6($,Z){let Y=$,J=/@json\s*\(/g,X;while((X=J.exec(Y))!==null){let Q=X.index,G=Q+X[0].length-1,K=1,z=G+1,q=null,W=!1;while(z<Y.length&&K>0){let F=Y[z];if(W){W=!1,z++;continue}if(F==="\\"&&q){W=!0,z++;continue}if(q){if(F===q)q=null;z++;continue}if(F==='"'||F==="'"||F==="`"){q=F,z++;continue}if(F==="(")K++;else if(F===")"){if(K--,K===0)break}z++}if(K!==0)break;let U=Y.substring(G+1,z).trim(),j=Y.substring(Q,z+1),_=-1,B=0,H=null,L=!1;for(let F=0;F<U.length;F++){let w=U[F];if(L){L=!1;continue}if(w==="\\"&&H){L=!0;continue}if(H){if(w===H)H=null;continue}if(w==='"'||w==="'"||w==="`"){H=w;continue}if(w==="("||w==="["||w==="{")B++;else if(w===")"||w==="]"||w==="}")B--;if(w===","&&B===0){_=F;break}}let V=_>=0?U.substring(0,_).trim():U,O=_>=0?U.substring(_+1).trim():void 0;try{let F=V.trim(),w;if(G0(F))w=K0(F,Object.keys(Z))(...Object.values(Z));else w=void 0;let A;if(O==="true")A=JSON.stringify(w,null,2);else A=JSON.stringify(w);let R=A.replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029");Y=Y.substring(0,Q)+R+Y.substring(z+1),J.lastIndex=Q+R.length}catch(F){a0.log(F instanceof Error?F:Error(String(F)),{directive:"@json"},"error"),J.lastIndex=Q+j.length}}return Y}function P6($){return $.replace(/@once\s*([\s\S]*?)@endonce/g,"$1")}function BJ($){let Z=$,Y=/@memo\s*\(/g,J,X=[];while((J=Y.exec(Z))!==null){let Q=J.index,G=Q+J[0].length,K=1,z=G;while(z<Z.length&&K>0){if(Z[z]==="(")K++;else if(Z[z]===")")K--;z++}if(K!==0)continue;let q=Z.slice(G,z-1).trim(),W=z,U=Z.slice(W),j=U.indexOf("@endmemo");if(j===-1)continue;let _=U.slice(0,j),B=W+j+8,H=_.match(/^(\s*(?:(?:<!--[\s\S]*?-->|\x00STX_HTML_COMMENT_\d+\x00)\s*)*)/),L=H?H[0].length:0,V=_.slice(L),O=_.match(/(\s*)$/),F=O?O[0].length:0,w=V.slice(0,V.length-F),A=w.match(/^<([a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*?)?(\/?)>/),R;if(A){let[N,M,T="",I]=A,E=`<${M}${T} data-stx-memo="${q}"${I}>`;R=_.slice(0,L)+E+w.slice(N.length)+_.slice(L+w.length)}else R=`${_.slice(0,L)}<div data-stx-memo="${q}">${w}</div>${_.slice(L+w.length)}`;X.push({start:Q,end:B,replacement:R}),Y.lastIndex=B}for(let Q=X.length-1;Q>=0;Q--){let G=X[Q];Z=Z.slice(0,G.start)+G.replacement+Z.slice(G.end)}return Z.replace(/@memo="([^"]*)"/g,'data-stx-memo="$1"')}function C6($){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 HJ($){let Y=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"),J="",X=0,Q;while((Q=Y.exec($))!==null){let G=Q.index,K=G+Q[0].length,z=!1,q=!1,W=-1;while(K<$.length){let H=$[K];if(z){if(H==="'")z=!1}else if(q){if(H==='"')q=!1}else if(H==="'")z=!0;else if(H==='"')q=!0;else if(H===">"){W=K;break}K++}if(W===-1)continue;if($.slice(G,W+1).includes("x-cloak"))continue;let j=$.slice(W+1),_=j.indexOf("</"),B=_>=0?j.slice(0,_):j.slice(0,200);if(/\{\{[\s\S]*?\}\}/.test(B))J+=$.slice(X,W)+" x-cloak>",X=W+1}return J+=$.slice(X),J}function OJ($){let Z=/<[a-z][\w-]*/gi,Y="",J=0,X;while((X=Z.exec($))!==null){let Q=X.index,G=X[0].slice(1).toLowerCase();if(G==="script"||G==="style"){let B=`</${G}>`,H=$.toLowerCase().indexOf(B,Q);if(H!==-1)Z.lastIndex=H+B.length;continue}let K=Q+X[0].length,z=!1,q=!1,W=-1;while(K<$.length){let B=$[K];if(z){if(B==="'")z=!1}else if(q){if(B==='"')q=!1}else if(B==="'")z=!0;else if(B==='"')q=!0;else if(B===">"){W=K;break}K++}if(W===-1)continue;let U=$.slice(Q+X[0].length,W);if(/(?:^|\s)x-cloak(?:=|\s|\/|>|$)/.test(U))continue;if(!iU.test(U))continue;let j=$[W-1]==="/",_=j?W-1:W;Y+=`${$.slice(J,_)} x-cloak${j?" ":""}`,J=_}return Y+=$.slice(J),Y}var iU;var v6=b(()=>{z1();A0();iU=/(?:^|\s)(?::else-if|:if|:else|:show|x-else-if|x-if|x-else|x-show|@if|@show)(?:=|\s|\/|>|$)/});function x6($,Z,Y){let J=typeof Y==="boolean"?{enabled:Y,failOnViolation:Y}:Y??{enabled:!1},X=J.allowPatterns??[],Q=[];for(let{pattern:G,message:K,suggestion:z}of nU){if(X.some((W)=>K.includes(W)||G.source.includes(W)))continue;G.lastIndex=0;let q=$.match(G);if(q&&q.length>0){let W=$.split(`
9454
+ `),U=[];W.forEach((_,B)=>{if(G.lastIndex=0,G.test(_))U.push(B+1)});let j=U.length>0?` (line${U.length>1?"s":""}: ${U.join(", ")})`:"";Q.push(` \u2717 ${K}${j}
9437
9455
  \u2192 ${z}`)}}if(Q.length>0&&J.enabled){let K=`[STX] DOM API violation in ${Z.split("/").pop()||Z}:
9438
9456
  ${Q.join(`
9439
9457
  `)}
@@ -9442,15 +9460,15 @@ ${U.trim()}`)}catch(U){console.warn(`[stx] Failed to load store ${W}:`,U)}if(K.l
9442
9460
  ${K.join(`
9443
9461
 
9444
9462
  `)}
9445
- })();`;return w5.set(Z,q),q}function sU(){w5.clear()}var w5;var FJ=b(()=>{l1();b1();w5=new Map});var wJ={};e(wJ,{getComposableScript:()=>eU,clearComposableCache:()=>$j});import j$ from"path";function VJ($){let Z=j$.basename($,".ts");return Z==="index"||Z==="types"||$.endsWith(".d.ts")}async function aU($){if($)return j$.resolve($);let Z=`<default>:${process.cwd()}`,Y=g6.get(Z);if(Y!==void 0)return Y;let J=await tU();return g6.set(Z,J),J}async function tU(){let $=await q1(),Z=$.root||process.cwd(),Y=$.composablesDir;if(Y)return j$.resolve(Z,Y);for(let J of rU){let X=j$.resolve(Z,J);try{let Q=new Bun.Glob("**/*.ts");for await(let G of Q.scan({cwd:X,absolute:!0}))if(!VJ(G))return X}catch{}}return null}async function eU($){let Z=await aU($);if(!Z)return null;let Y=A5.get(Z);if(Y!==void 0)return Y||null;let J=[];try{let B=new Bun.Glob("**/*.ts");for await(let _ of B.scan({cwd:Z,absolute:!0})){if(VJ(_))continue;J.push(_)}}catch{return A5.set(Z,""),null}if(J.length===0)return A5.set(Z,""),null;J.sort();let X=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()}),Q=[],G=new Set,K=new Set;for(let B of J)try{let _=await Bun.file(B).text(),H=j$.basename(B,".ts");for(let L of _.matchAll(/\b(?:const|let|var|function|class)\s+([A-Z_a-z$][\w$]*)/g))if(L[1])K.add(L[1]);try{for(let L of X.scan(_).exports)if(L!=="default")G.add(L)}catch{}_=o0(_),_=_.replace(/^import\s+.*from\s+['"][^'"]+['"]\s*;?\s*$/gm,""),_=_.replace(/^export\s+(default\s+)?/gm,""),_=X.transformSync(_),Q.push(`// Composable: ${H}
9446
- ${_.trim()}`)}catch(_){console.warn(`[stx] Failed to load composable ${B}:`,_)}if(Q.length===0||G.size===0)return A5.set(Z,""),null;let z=[...G].map((B)=>` try { __c[${JSON.stringify(B)}] = ${B}; } catch (e) {}`).join(`
9463
+ })();`;return w5.set(Z,q),q}function sU(){w5.clear()}var w5;var FJ=b(()=>{l1();b1();w5=new Map});var wJ={};e(wJ,{getComposableScript:()=>eU,clearComposableCache:()=>$j});import j$ from"path";function VJ($){let Z=j$.basename($,".ts");return Z==="index"||Z==="types"||$.endsWith(".d.ts")}async function aU($){if($)return j$.resolve($);let Z=`<default>:${process.cwd()}`,Y=g6.get(Z);if(Y!==void 0)return Y;let J=await tU();return g6.set(Z,J),J}async function tU(){let $=await q1(),Z=$.root||process.cwd(),Y=$.composablesDir;if(Y)return j$.resolve(Z,Y);for(let J of rU){let X=j$.resolve(Z,J);try{let Q=new Bun.Glob("**/*.ts");for await(let G of Q.scan({cwd:X,absolute:!0}))if(!VJ(G))return X}catch{}}return null}async function eU($){let Z=await aU($);if(!Z)return null;let Y=A5.get(Z);if(Y!==void 0)return Y||null;let J=[];try{let _=new Bun.Glob("**/*.ts");for await(let B of _.scan({cwd:Z,absolute:!0})){if(VJ(B))continue;J.push(B)}}catch{return A5.set(Z,""),null}if(J.length===0)return A5.set(Z,""),null;J.sort();let X=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()}),Q=[],G=new Set,K=new Set;for(let _ of J)try{let B=await Bun.file(_).text(),H=j$.basename(_,".ts");for(let L of B.matchAll(/\b(?:const|let|var|function|class)\s+([A-Z_a-z$][\w$]*)/g))if(L[1])K.add(L[1]);try{for(let L of X.scan(B).exports)if(L!=="default")G.add(L)}catch{}B=o0(B),B=B.replace(/^import\s+.*from\s+['"][^'"]+['"]\s*;?\s*$/gm,""),B=B.replace(/^export\s+(default\s+)?/gm,""),B=X.transformSync(B),Q.push(`// Composable: ${H}
9464
+ ${B.trim()}`)}catch(B){console.warn(`[stx] Failed to load composable ${_}:`,B)}if(Q.length===0||G.size===0)return A5.set(Z,""),null;let z=[...G].map((_)=>` try { __c[${JSON.stringify(_)}] = ${_}; } catch (e) {}`).join(`
9447
9465
  `),q=JSON.stringify([...G]),W=Q.join(`
9448
9466
 
9449
9467
  `),j=`;(function(){
9450
9468
  window.__composables = window.__composables || {};
9451
9469
  var __c = window.__composables;
9452
9470
  var __stx = window.stx || {};
9453
- ${N$.filter((B)=>!K.has(B)&&new RegExp(`\\b${B}\\b`).test(W)).map((B)=>`var ${B} = __stx[${JSON.stringify(B)}];`).join(`
9471
+ ${N$.filter((_)=>!K.has(_)&&new RegExp(`\\b${_}\\b`).test(W)).map((_)=>`var ${_} = __stx[${JSON.stringify(_)}];`).join(`
9454
9472
  `)}
9455
9473
  ${W}
9456
9474
  ${z}
@@ -9540,14 +9558,14 @@ else {
9540
9558
  ${X}
9541
9559
  })();
9542
9560
  </script>
9543
- `}function Qj($,Z,Y){RJ=0;let J=/@defer\s*\(([^)]*)\)\s*([\s\S]*?)@enddefer/g;return $.replace(J,(X,Q,G)=>{let K=Zj(),z=Jj(X,Q,G),q=z.placeholder?`<div data-defer-placeholder>${z.placeholder}</div>`:"",W=z.loading?`<div data-defer-loading style="display: none;">${z.loading}</div>`:'<div data-defer-loading style="display: none;"></div>',U=z.error?`<div data-defer-error style="display: none;">${z.error}</div>`:"",j=`<div data-defer-content style="display: none;">${z.content}</div>`,B=Xj(K,z);return`
9561
+ `}function Qj($,Z,Y){RJ=0;let J=/@defer\s*\(([^)]*)\)\s*([\s\S]*?)@enddefer/g;return $.replace(J,(X,Q,G)=>{let K=Zj(),z=Jj(X,Q,G),q=z.placeholder?`<div data-defer-placeholder>${z.placeholder}</div>`:"",W=z.loading?`<div data-defer-loading style="display: none;">${z.loading}</div>`:'<div data-defer-loading style="display: none;"></div>',U=z.error?`<div data-defer-error style="display: none;">${z.error}</div>`:"",j=`<div data-defer-content style="display: none;">${z.content}</div>`,_=Xj(K,z);return`
9544
9562
  <div id="${K}" class="stx-defer" data-defer-trigger="${z.trigger}">
9545
9563
  ${q}
9546
9564
  ${W}
9547
9565
  ${j}
9548
9566
  ${U}
9549
9567
  </div>
9550
- ${B}
9568
+ ${_}
9551
9569
  `})}var RJ=0;var TJ={};e(TJ,{processTeleportDirectives:()=>qj,ensureTeleportTargets:()=>Wj});function Gj(){return`stx-teleport-${++MJ}`}function Kj($){let Z=$.split(",").map((X)=>X.trim()),Y=Z[0].replace(/['"]/g,""),J;for(let X=1;X<Z.length;X++){let Q=Z[X].match(/disabled:\s*(.+)/);if(Q)J=Q[1].trim()}return{target:Y,disabled:J}}function zj($,Z){return`
9552
9570
  <script>
9553
9571
  (function() {
@@ -9616,7 +9634,7 @@ else {
9616
9634
  });
9617
9635
  })();
9618
9636
  </script>
9619
- `}var MJ=0;var kJ={};e(kJ,{processTransitionDirectives:()=>_j,processTransitionAttributes:()=>Fj,performLeave:()=>Bj,performEnter:()=>jj,generateTransitionRuntime:()=>Lj,generateTransitionCSS:()=>Oj});function IJ($,Z={}){return{enterFrom:Z.enterClass||`${$}-enter-from`,enterActive:Z.enterActiveClass||`${$}-enter-active`,enterTo:Z.enterToClass||`${$}-enter-to`,leaveFrom:Z.leaveClass||`${$}-leave-from`,leaveActive:Z.leaveActiveClass||`${$}-leave-active`,leaveTo:Z.leaveToClass||`${$}-leave-to`}}function Uj($){let Z=getComputedStyle($),Y=Z.transitionDuration||"0s",J=Z.animationDuration||"0s",X=(Q)=>{let G=Q.match(/^([\d.]+)(s|ms)?$/);if(!G)return 0;let K=parseFloat(G[1]);return(G[2]||"s")==="ms"?K:K*1000};return Math.max(X(Y),X(J))}function DJ($,Z){return new Promise((Y)=>{let J=Z??Uj($);if(J===0){Y();return}let X=!1,Q=()=>{if(X)return;X=!0,$.removeEventListener("transitionend",G),$.removeEventListener("animationend",G),Y()},G=(K)=>{if(K.target===$)Q()};$.addEventListener("transitionend",G),$.addEventListener("animationend",G),setTimeout(Q,J+50)})}function EJ($){$.offsetHeight}async function jj($,Z={}){let Y=Z.name||"stx",J=IJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.enter:Z.duration;if(Z.onBeforeEnter?.($),$.classList.add(J.enterFrom),$.classList.add(J.enterActive),EJ($),$.classList.remove(J.enterFrom),$.classList.add(J.enterTo),Z.onEnter)await new Promise((Q)=>{Z.onEnter($,Q)});else await DJ($,X);$.classList.remove(J.enterActive),$.classList.remove(J.enterTo),Z.onAfterEnter?.($)}async function Bj($,Z={}){let Y=Z.name||"stx",J=IJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.leave:Z.duration;if(Z.onBeforeLeave?.($),$.classList.add(J.leaveFrom),$.classList.add(J.leaveActive),EJ($),$.classList.remove(J.leaveFrom),$.classList.add(J.leaveTo),Z.onLeave)await new Promise((Q)=>{Z.onLeave($,Q)});else await DJ($,X);$.classList.remove(J.leaveActive),$.classList.remove(J.leaveTo),Z.onAfterLeave?.($)}function _j($,Z={},Y){let J=/@transition\s*\(([^)]*)\)([\s\S]*?)@endtransition/gi;return $.replace(J,(X,Q,G)=>{let K=Hj(Q),z=K.name||"stx",q=K.duration||300,W=`stx-transition-${Math.random().toString(36).slice(2,9)}`;return`
9637
+ `}var MJ=0;var kJ={};e(kJ,{processTransitionDirectives:()=>Bj,processTransitionAttributes:()=>Fj,performLeave:()=>_j,performEnter:()=>jj,generateTransitionRuntime:()=>Lj,generateTransitionCSS:()=>Oj});function IJ($,Z={}){return{enterFrom:Z.enterClass||`${$}-enter-from`,enterActive:Z.enterActiveClass||`${$}-enter-active`,enterTo:Z.enterToClass||`${$}-enter-to`,leaveFrom:Z.leaveClass||`${$}-leave-from`,leaveActive:Z.leaveActiveClass||`${$}-leave-active`,leaveTo:Z.leaveToClass||`${$}-leave-to`}}function Uj($){let Z=getComputedStyle($),Y=Z.transitionDuration||"0s",J=Z.animationDuration||"0s",X=(Q)=>{let G=Q.match(/^([\d.]+)(s|ms)?$/);if(!G)return 0;let K=parseFloat(G[1]);return(G[2]||"s")==="ms"?K:K*1000};return Math.max(X(Y),X(J))}function DJ($,Z){return new Promise((Y)=>{let J=Z??Uj($);if(J===0){Y();return}let X=!1,Q=()=>{if(X)return;X=!0,$.removeEventListener("transitionend",G),$.removeEventListener("animationend",G),Y()},G=(K)=>{if(K.target===$)Q()};$.addEventListener("transitionend",G),$.addEventListener("animationend",G),setTimeout(Q,J+50)})}function EJ($){$.offsetHeight}async function jj($,Z={}){let Y=Z.name||"stx",J=IJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.enter:Z.duration;if(Z.onBeforeEnter?.($),$.classList.add(J.enterFrom),$.classList.add(J.enterActive),EJ($),$.classList.remove(J.enterFrom),$.classList.add(J.enterTo),Z.onEnter)await new Promise((Q)=>{Z.onEnter($,Q)});else await DJ($,X);$.classList.remove(J.enterActive),$.classList.remove(J.enterTo),Z.onAfterEnter?.($)}async function _j($,Z={}){let Y=Z.name||"stx",J=IJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.leave:Z.duration;if(Z.onBeforeLeave?.($),$.classList.add(J.leaveFrom),$.classList.add(J.leaveActive),EJ($),$.classList.remove(J.leaveFrom),$.classList.add(J.leaveTo),Z.onLeave)await new Promise((Q)=>{Z.onLeave($,Q)});else await DJ($,X);$.classList.remove(J.leaveActive),$.classList.remove(J.leaveTo),Z.onAfterLeave?.($)}function Bj($,Z={},Y){let J=/@transition\s*\(([^)]*)\)([\s\S]*?)@endtransition/gi;return $.replace(J,(X,Q,G)=>{let K=Hj(Q),z=K.name||"stx",q=K.duration||300,W=`stx-transition-${Math.random().toString(36).slice(2,9)}`;return`
9620
9638
  <div
9621
9639
  class="stx-transition-wrapper"
9622
9640
  data-transition="${z}"
@@ -10501,7 +10519,7 @@ else {
10501
10519
 
10502
10520
  console.log('[stx] Suspense runtime initialized');
10503
10521
  })();
10504
- `}var Dj=0;var xJ={};e(xJ,{processAsyncDirectives:()=>fj,isAsyncComponent:()=>hj,generateAsyncComponentRuntime:()=>uj,generateAsyncComponentCSS:()=>dj,defineAsyncComponent:()=>gj});function PJ(){return`async-${++xj}-${Date.now().toString(36)}`}function fj($,Z={},Y){let J=/@async\s*\(([^)]*)\)\s*([\s\S]*?)@error\s*([\s\S]*?)@endasync/gi,X=/@async\s*\(([^)]*)\)\s*([\s\S]*?)@endasync/gi,Q=$;return Q=Q.replace(J,(G,K,z,q)=>{let W=PJ(),U=CJ(K);return vJ(W,U,z.trim(),q.trim())}),Q=Q.replace(X,(G,K,z)=>{let q=PJ(),W=CJ(K);return vJ(q,W,z.trim(),'<div class="stx-async-error">Failed to load component</div>')}),Q}function CJ($){let Z={component:"",timeout:30000,delay:200,suspensible:!0,retries:0},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\d+)|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3],G=J[4],K=J[5];switch(X){case"component":Z.component=Q||K||"";break;case"timeout":Z.timeout=G?parseInt(G,10):30000;break;case"delay":Z.delay=G?parseInt(G,10):200;break;case"suspensible":Z.suspensible=K==="true";break;case"retries":Z.retries=G?parseInt(G,10):0;break;case"loadingComponent":Z.loadingComponent=Q||K;break;case"errorComponent":Z.errorComponent=Q||K;break}}return Z}function vJ($,Z,Y,J){let{component:X,timeout:Q,delay:G,suspensible:K,retries:z}=Z;return`
10522
+ `}var Dj=0;var xJ={};e(xJ,{processAsyncDirectives:()=>fj,isAsyncComponent:()=>hj,generateAsyncComponentRuntime:()=>mj,generateAsyncComponentCSS:()=>dj,defineAsyncComponent:()=>gj});function PJ(){return`async-${++xj}-${Date.now().toString(36)}`}function fj($,Z={},Y){let J=/@async\s*\(([^)]*)\)\s*([\s\S]*?)@error\s*([\s\S]*?)@endasync/gi,X=/@async\s*\(([^)]*)\)\s*([\s\S]*?)@endasync/gi,Q=$;return Q=Q.replace(J,(G,K,z,q)=>{let W=PJ(),U=CJ(K);return vJ(W,U,z.trim(),q.trim())}),Q=Q.replace(X,(G,K,z)=>{let q=PJ(),W=CJ(K);return vJ(q,W,z.trim(),'<div class="stx-async-error">Failed to load component</div>')}),Q}function CJ($){let Z={component:"",timeout:30000,delay:200,suspensible:!0,retries:0},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\d+)|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3],G=J[4],K=J[5];switch(X){case"component":Z.component=Q||K||"";break;case"timeout":Z.timeout=G?parseInt(G,10):30000;break;case"delay":Z.delay=G?parseInt(G,10):200;break;case"suspensible":Z.suspensible=K==="true";break;case"retries":Z.retries=G?parseInt(G,10):0;break;case"loadingComponent":Z.loadingComponent=Q||K;break;case"errorComponent":Z.errorComponent=Q||K;break}}return Z}function vJ($,Z,Y,J){let{component:X,timeout:Q,delay:G,suspensible:K,retries:z}=Z;return`
10505
10523
  <div class="stx-async-component" data-async-id="${$}" data-component="${X}" data-status="pending">
10506
10524
  <div class="stx-async-loading" data-async-loading="${$}">
10507
10525
  ${Y}
@@ -10802,7 +10820,7 @@ catch (error) {
10802
10820
  background-size: 200% 100%;
10803
10821
  }
10804
10822
  }
10805
- `}function uj(){return`
10823
+ `}function mj(){return`
10806
10824
  // STX Async Component Runtime
10807
10825
  (function() {
10808
10826
  if (typeof window === 'undefined') return;
@@ -10856,7 +10874,7 @@ catch (error) {
10856
10874
 
10857
10875
  console.log('[stx] Async component runtime initialized');
10858
10876
  })();
10859
- `}var xj=0;var gJ={};e(gJ,{shouldCacheComponent:()=>nj,processKeepAliveDirectives:()=>pj,onDeactivated:()=>aj,onActivated:()=>rj,generateKeepAliveRuntime:()=>sj,generateKeepAliveCSS:()=>oj,createKeepAliveCache:()=>ij});function fJ(){return`keep-alive-${++mj}-${Date.now().toString(36)}`}function pj($,Z={},Y){let J=/@keepAlive(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@endkeepAlive/gi;return $.replace(J,(X,Q,G)=>{let K=fJ(),z=lj(Q||"");return cj(K,G.trim(),z)})}function lj($){let Z={max:10},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\d+)|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3],G=J[4];switch(X){case"max":Z.max=G?parseInt(G,10):10;break;case"include":Z.include=Q;break;case"exclude":Z.exclude=Q;break;case"id":Z.id=Q;break}}return Z}function cj($,Z,Y){let{max:J,include:X,exclude:Q}=Y,G=Y.id||$;return`
10877
+ `}var xj=0;var gJ={};e(gJ,{shouldCacheComponent:()=>nj,processKeepAliveDirectives:()=>pj,onDeactivated:()=>aj,onActivated:()=>rj,generateKeepAliveRuntime:()=>sj,generateKeepAliveCSS:()=>oj,createKeepAliveCache:()=>ij});function fJ(){return`keep-alive-${++uj}-${Date.now().toString(36)}`}function pj($,Z={},Y){let J=/@keepAlive(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@endkeepAlive/gi;return $.replace(J,(X,Q,G)=>{let K=fJ(),z=lj(Q||"");return cj(K,G.trim(),z)})}function lj($){let Z={max:10},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\d+)|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3],G=J[4];switch(X){case"max":Z.max=G?parseInt(G,10):10;break;case"include":Z.include=Q;break;case"exclude":Z.exclude=Q;break;case"id":Z.id=Q;break}}return Z}function cj($,Z,Y){let{max:J,include:X,exclude:Q}=Y,G=Y.id||$;return`
10860
10878
  <div class="stx-keep-alive" data-keep-alive-id="${$}" data-custom-id="${G}">
10861
10879
  <div class="stx-keep-alive-content" data-keep-alive-content="${$}">
10862
10880
  ${Z}
@@ -11204,7 +11222,7 @@ else {
11204
11222
 
11205
11223
  console.log('[stx] Keep-alive runtime initialized');
11206
11224
  })();
11207
- `}function rj($){if(typeof document<"u")document.addEventListener("stx:activated",(Z)=>{$(Z.detail)})}function aj($){if(typeof document<"u")document.addEventListener("stx:deactivated",(Z)=>{$(Z.detail)})}var mj=0;var pJ={};e(pJ,{useVirtualList:()=>dJ,processVirtualListDirectives:()=>d6,processVirtualGridDirectives:()=>mJ,processInfiniteListDirectives:()=>uJ,generateVirtualListCSS:()=>hJ,default:()=>tj,createVirtualList:()=>h6});function h6($,Z){let{itemHeight:Y,containerHeight:J,overscan:X=3,keyProperty:Q="id",dynamicHeight:G=!1,estimatedItemHeight:K=Y,direction:z="vertical"}=Z,q=[...$],W=0,U=new Map;function j(){if(G)return B();let R=Math.max(0,Math.floor(W/Y)-X),N=Math.ceil(J/Y),M=Math.min(q.length-1,R+N+X*2);return{startIndex:R,endIndex:M}}function B(){let R=0,N=0,M=q.length-1;for(let T=0;T<q.length;T++){let I=U.get(T)||K;if(R+I>W){N=Math.max(0,T-X);break}R+=I}R=0;for(let T=0;T<q.length;T++){let I=U.get(T)||K;if(R+=I,R>W+J){M=Math.min(q.length-1,T+X);break}}return{startIndex:N,endIndex:M}}function _(){if(G){let R=0;for(let N=0;N<q.length;N++)R+=U.get(N)||K;return R}return q.length*Y}function H(R){if(G){let N=0;for(let M=0;M<R;M++)N+=U.get(M)||K;return N}return R*Y}function L(){let{startIndex:R,endIndex:N}=j();return{startIndex:R,endIndex:N,scrollTop:W,totalHeight:_(),visibleItems:q.slice(R,N+1),itemHeights:new Map(U)}}function V(R,N="auto"){let M=H(R);O(M,N)}function O(R,N="auto"){W=Math.max(0,Math.min(R,_()-J))}function F(){j()}function w(R){q=[...R],U.clear(),F()}function A(){q=[],U.clear()}return{scrollToIndex:V,scrollToOffset:O,getState:L,refresh:F,setItems:w,destroy:A}}function d6($,Z={},Y){let J=/@virtualList\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualList/gi;return $.replace(J,(X,Q,G,K)=>{let z=Q.trim(),q=Z[z];if(!q||!Array.isArray(q))return`<!-- virtualList: items "${z}" not found or not an array -->`;let W={itemHeight:50,containerHeight:400,overscan:3};if(G)try{let O=G.trim(),F=Function(`return ${O}`)();W={...W,...F}}catch{}let U=`vlist-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(W.containerHeight/W.itemHeight),B=W.overscan||3,_=0,H=Math.min(q.length-1,j+B),L="";for(let O=_;O<=H&&O<q.length;O++){let F=q[O],w=K.replace(/\{\{\s*item\s*\}\}/g,typeof F==="object"?JSON.stringify(F):String(F)).replace(/\{\{\s*item\.(\w+)\s*\}\}/g,(A,R)=>{if(typeof F==="object"&&F!==null)return String(F[R]??"");return""}).replace(/\{\{\s*index\s*\}\}/g,String(O));L+=`
11225
+ `}function rj($){if(typeof document<"u")document.addEventListener("stx:activated",(Z)=>{$(Z.detail)})}function aj($){if(typeof document<"u")document.addEventListener("stx:deactivated",(Z)=>{$(Z.detail)})}var uj=0;var pJ={};e(pJ,{useVirtualList:()=>dJ,processVirtualListDirectives:()=>d6,processVirtualGridDirectives:()=>uJ,processInfiniteListDirectives:()=>mJ,generateVirtualListCSS:()=>hJ,default:()=>tj,createVirtualList:()=>h6});function h6($,Z){let{itemHeight:Y,containerHeight:J,overscan:X=3,keyProperty:Q="id",dynamicHeight:G=!1,estimatedItemHeight:K=Y,direction:z="vertical"}=Z,q=[...$],W=0,U=new Map;function j(){if(G)return _();let R=Math.max(0,Math.floor(W/Y)-X),N=Math.ceil(J/Y),M=Math.min(q.length-1,R+N+X*2);return{startIndex:R,endIndex:M}}function _(){let R=0,N=0,M=q.length-1;for(let T=0;T<q.length;T++){let I=U.get(T)||K;if(R+I>W){N=Math.max(0,T-X);break}R+=I}R=0;for(let T=0;T<q.length;T++){let I=U.get(T)||K;if(R+=I,R>W+J){M=Math.min(q.length-1,T+X);break}}return{startIndex:N,endIndex:M}}function B(){if(G){let R=0;for(let N=0;N<q.length;N++)R+=U.get(N)||K;return R}return q.length*Y}function H(R){if(G){let N=0;for(let M=0;M<R;M++)N+=U.get(M)||K;return N}return R*Y}function L(){let{startIndex:R,endIndex:N}=j();return{startIndex:R,endIndex:N,scrollTop:W,totalHeight:B(),visibleItems:q.slice(R,N+1),itemHeights:new Map(U)}}function V(R,N="auto"){let M=H(R);O(M,N)}function O(R,N="auto"){W=Math.max(0,Math.min(R,B()-J))}function F(){j()}function w(R){q=[...R],U.clear(),F()}function A(){q=[],U.clear()}return{scrollToIndex:V,scrollToOffset:O,getState:L,refresh:F,setItems:w,destroy:A}}function d6($,Z={},Y){let J=/@virtualList\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualList/gi;return $.replace(J,(X,Q,G,K)=>{let z=Q.trim(),q=Z[z];if(!q||!Array.isArray(q))return`<!-- virtualList: items "${z}" not found or not an array -->`;let W={itemHeight:50,containerHeight:400,overscan:3};if(G)try{let O=G.trim(),F=Function(`return ${O}`)();W={...W,...F}}catch{}let U=`vlist-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(W.containerHeight/W.itemHeight),_=W.overscan||3,B=0,H=Math.min(q.length-1,j+_),L="";for(let O=B;O<=H&&O<q.length;O++){let F=q[O],w=K.replace(/\{\{\s*item\s*\}\}/g,typeof F==="object"?JSON.stringify(F):String(F)).replace(/\{\{\s*item\.(\w+)\s*\}\}/g,(A,R)=>{if(typeof F==="object"&&F!==null)return String(F[R]??"");return""}).replace(/\{\{\s*index\s*\}\}/g,String(O));L+=`
11208
11226
  <div class="virtual-item ${W.itemClass||""}"
11209
11227
  style="position: absolute; top: ${O*W.itemHeight}px; height: ${W.itemHeight}px; width: 100%;"
11210
11228
  data-index="${O}">
@@ -11215,7 +11233,7 @@ else {
11215
11233
  style="position: relative; height: ${W.containerHeight}px; overflow-y: auto;"
11216
11234
  data-item-height="${W.itemHeight}"
11217
11235
  data-total-items="${q.length}"
11218
- data-overscan="${B}">
11236
+ data-overscan="${_}">
11219
11237
  <div class="virtual-list-viewport ${W.viewportClass||""}"
11220
11238
  style="position: relative; height: ${V}px; width: 100%;">
11221
11239
  ${L}
@@ -11229,7 +11247,7 @@ else {
11229
11247
  const viewport = container.querySelector('.virtual-list-viewport');
11230
11248
  const itemHeight = ${W.itemHeight};
11231
11249
  const totalItems = ${q.length};
11232
- const overscan = ${B};
11250
+ const overscan = ${_};
11233
11251
  const containerHeight = ${W.containerHeight};
11234
11252
  const items = ${JSON.stringify(q)};
11235
11253
  const template = ${JSON.stringify(K.trim())};
@@ -11329,7 +11347,7 @@ else {
11329
11347
  0% { background-position: 200% 0; }
11330
11348
  100% { background-position: -200% 0; }
11331
11349
  }
11332
- `}function dJ($,Z){let Y=null,J=()=>{if(!Y)Y=h6($(),Z);return Y};return{visibleItems:()=>{return J().getState().visibleItems},totalHeight:()=>{return J().getState().totalHeight},containerProps:()=>({style:{height:`${Z.containerHeight}px`,overflow:"auto",position:"relative"},onScroll:(X)=>{let Q=X.target;if(Y)Y.scrollToOffset(Q.scrollTop)}}),itemProps:(X)=>({style:{position:"absolute",top:`${X*Z.itemHeight}px`,height:`${Z.itemHeight}px`,width:"100%"},"data-index":X}),scrollToIndex:(X)=>{J().scrollToIndex(X)}}}function uJ($,Z={},Y){let J=/@infiniteList\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@loading\s*([\s\S]*?)@endinfiniteList/gi;return $.replace(J,(X,Q,G,K,z)=>{let q=Q.trim(),W=Z[q];if(!W||!Array.isArray(W))return`<!-- infiniteList: items "${q}" not found or not an array -->`;let U={itemHeight:50,containerHeight:400,overscan:3,threshold:100,hasMore:!0};if(G)try{let _=Function(`return ${G.trim()}`)();U={...U,..._}}catch{}let j=`ilist-${Math.random().toString(36).substring(2,9)}`,B=d6(`@virtualList(${q}, ${JSON.stringify({itemHeight:U.itemHeight,containerHeight:U.containerHeight,overscan:U.overscan,containerClass:U.containerClass})})${K}@endvirtualList`,Z);return B=B.replace("</script>",`
11350
+ `}function dJ($,Z){let Y=null,J=()=>{if(!Y)Y=h6($(),Z);return Y};return{visibleItems:()=>{return J().getState().visibleItems},totalHeight:()=>{return J().getState().totalHeight},containerProps:()=>({style:{height:`${Z.containerHeight}px`,overflow:"auto",position:"relative"},onScroll:(X)=>{let Q=X.target;if(Y)Y.scrollToOffset(Q.scrollTop)}}),itemProps:(X)=>({style:{position:"absolute",top:`${X*Z.itemHeight}px`,height:`${Z.itemHeight}px`,width:"100%"},"data-index":X}),scrollToIndex:(X)=>{J().scrollToIndex(X)}}}function mJ($,Z={},Y){let J=/@infiniteList\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@loading\s*([\s\S]*?)@endinfiniteList/gi;return $.replace(J,(X,Q,G,K,z)=>{let q=Q.trim(),W=Z[q];if(!W||!Array.isArray(W))return`<!-- infiniteList: items "${q}" not found or not an array -->`;let U={itemHeight:50,containerHeight:400,overscan:3,threshold:100,hasMore:!0};if(G)try{let B=Function(`return ${G.trim()}`)();U={...U,...B}}catch{}let j=`ilist-${Math.random().toString(36).substring(2,9)}`,_=d6(`@virtualList(${q}, ${JSON.stringify({itemHeight:U.itemHeight,containerHeight:U.containerHeight,overscan:U.overscan,containerClass:U.containerClass})})${K}@endvirtualList`,Z);return _=_.replace("</script>",`
11333
11351
  // Infinite scroll detection
11334
11352
  container.addEventListener('scroll', function() {
11335
11353
  const scrollBottom = container.scrollTop + container.clientHeight;
@@ -11342,12 +11360,12 @@ else {
11342
11360
  });
11343
11361
  </script>`),`
11344
11362
  <div id="${j}" class="infinite-list-wrapper">
11345
- ${B}
11363
+ ${_}
11346
11364
  <div class="infinite-list-loading" style="display: none;">
11347
11365
  ${z}
11348
11366
  </div>
11349
11367
  </div>
11350
- `})}function mJ($,Z={},Y){let J=/@virtualGrid\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualGrid/gi;return $.replace(J,(X,Q,G,K)=>{let z=Q.trim(),q=Z[z];if(!q||!Array.isArray(q))return`<!-- virtualGrid: items "${z}" not found or not an array -->`;let W={columns:3,rowHeight:100,containerHeight:400,gap:10,overscan:2};if(G)try{let F=Function(`return ${G.trim()}`)();W={...W,...F}}catch{}let U=`vgrid-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(q.length/W.columns),B=j*(W.rowHeight+(W.gap||0)),_=Math.ceil(W.containerHeight/(W.rowHeight+(W.gap||0))),H=W.overscan||2,L=0,V=Math.min(j-1,_+H),O="";for(let F=L;F<=V;F++)for(let w=0;w<W.columns;w++){let A=F*W.columns+w;if(A>=q.length)break;let R=q[A],N=w*(100/W.columns),M=F*(W.rowHeight+(W.gap||0)),T=K.replace(/\{\{\s*item\s*\}\}/g,typeof R==="object"?JSON.stringify(R):String(R)).replace(/\{\{\s*item\.(\w+)\s*\}\}/g,(I,E)=>{if(typeof R==="object"&&R!==null)return String(R[E]??"");return""}).replace(/\{\{\s*index\s*\}\}/g,String(A));O+=`
11368
+ `})}function uJ($,Z={},Y){let J=/@virtualGrid\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualGrid/gi;return $.replace(J,(X,Q,G,K)=>{let z=Q.trim(),q=Z[z];if(!q||!Array.isArray(q))return`<!-- virtualGrid: items "${z}" not found or not an array -->`;let W={columns:3,rowHeight:100,containerHeight:400,gap:10,overscan:2};if(G)try{let F=Function(`return ${G.trim()}`)();W={...W,...F}}catch{}let U=`vgrid-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(q.length/W.columns),_=j*(W.rowHeight+(W.gap||0)),B=Math.ceil(W.containerHeight/(W.rowHeight+(W.gap||0))),H=W.overscan||2,L=0,V=Math.min(j-1,B+H),O="";for(let F=L;F<=V;F++)for(let w=0;w<W.columns;w++){let A=F*W.columns+w;if(A>=q.length)break;let R=q[A],N=w*(100/W.columns),M=F*(W.rowHeight+(W.gap||0)),T=K.replace(/\{\{\s*item\s*\}\}/g,typeof R==="object"?JSON.stringify(R):String(R)).replace(/\{\{\s*item\.(\w+)\s*\}\}/g,(I,E)=>{if(typeof R==="object"&&R!==null)return String(R[E]??"");return""}).replace(/\{\{\s*index\s*\}\}/g,String(A));O+=`
11351
11369
  <div class="virtual-grid-item"
11352
11370
  style="position: absolute; top: ${M}px; left: ${N}%; width: calc(${100/W.columns}% - ${W.gap||0}px); height: ${W.rowHeight}px;"
11353
11371
  data-index="${A}">
@@ -11357,7 +11375,7 @@ else {
11357
11375
  class="virtual-grid-container"
11358
11376
  style="position: relative; height: ${W.containerHeight}px; overflow-y: auto;">
11359
11377
  <div class="virtual-grid-viewport"
11360
- style="position: relative; height: ${B}px; width: 100%;">
11378
+ style="position: relative; height: ${_}px; width: 100%;">
11361
11379
  ${O}
11362
11380
  </div>
11363
11381
  </div>
@@ -11417,7 +11435,7 @@ else {
11417
11435
  });
11418
11436
  })();
11419
11437
  </script>
11420
- `})}var tj;var lJ=b(()=>{tj={createVirtualList:h6,processVirtualListDirectives:d6,processInfiniteListDirectives:uJ,processVirtualGridDirectives:mJ,generateVirtualListCSS:hJ,useVirtualList:dJ}});function cJ(){return`<script data-stx-hydration-runtime>
11438
+ `})}var tj;var lJ=b(()=>{tj={createVirtualList:h6,processVirtualListDirectives:d6,processInfiniteListDirectives:mJ,processVirtualGridDirectives:uJ,generateVirtualListCSS:hJ,useVirtualList:dJ}});function cJ(){return`<script data-stx-hydration-runtime>
11421
11439
  (function() {
11422
11440
  'use strict';
11423
11441
 
@@ -11577,7 +11595,7 @@ else {
11577
11595
  stxIslands.initIslands();
11578
11596
  }
11579
11597
  })();
11580
- </script>`}function iJ($){let Z=$.match(/<([A-Z][a-zA-Z0-9]+)[\s/>]/);if(Z)return Z[1];let Y=$.match(/<([a-z][a-z0-9]*-[a-z0-9-]+)[\s/>]/);if(Y)return Y[1];return null}function nJ($,Z){let Y={},J=/:([a-zA-Z_][\w-]*)\s*=\s*"([^"]+)"/g,X;while((X=J.exec($))!==null){let Q=X[1],G=X[2];if(G in Z)Y[Q]=Z[G];else Y[Q]=G}return Y}var XX={};e(XX,{processStaticDirectives:()=>YX,processPartialHydrationDirectives:()=>sJ,onHydrated:()=>ZX,isHydrated:()=>$X,hydrateIsland:()=>aJ,hydrateByStrategy:()=>tJ,hydrateAll:()=>eJ,generatePartialHydrationCSS:()=>rJ,generateIslandManifest:()=>JX,default:()=>GB,createIslandRegistry:()=>oJ});function oJ(){let $=new Map;return{islands:$,register(Z){$.set(Z.id,Z)},get(Z){return $.get(Z)},async hydrate(Z){let Y=$.get(Z);if(!Y||Y.hydrated)return;if(Y.hydrated=!0,typeof window<"u"&&typeof window.dispatchEvent==="function")window.dispatchEvent(new CustomEvent("stx:hydrate",{detail:{id:Z,component:Y.component}}))},async hydrateAll(){let Z=Array.from($.values()).filter((Y)=>!Y.hydrated).map((Y)=>this.hydrate(Y.id));await Promise.all(Z)}}}function ej($){return`
11598
+ </script>`}function iJ($){let Z=$.match(/<([A-Z][a-zA-Z0-9]+)[\s/>]/);if(Z)return Z[1];let Y=$.match(/<([a-z][a-z0-9]*-[a-z0-9-]+)[\s/>]/);if(Y)return Y[1];return null}function nJ($,Z){let Y={},J=/:([a-zA-Z_][\w-]*)\s*=\s*"([^"]+)"/g,X;while((X=J.exec($))!==null){let Q=X[1],G=X[2];if(G in Z)Y[Q]=Z[G];else Y[Q]=G}return Y}var XX={};e(XX,{processStaticDirectives:()=>YX,processPartialHydrationDirectives:()=>sJ,onHydrated:()=>ZX,isHydrated:()=>$X,hydrateIsland:()=>aJ,hydrateByStrategy:()=>tJ,hydrateAll:()=>eJ,generatePartialHydrationCSS:()=>rJ,generateIslandManifest:()=>JX,default:()=>G_,createIslandRegistry:()=>oJ});function oJ(){let $=new Map;return{islands:$,register(Z){$.set(Z.id,Z)},get(Z){return $.get(Z)},async hydrate(Z){let Y=$.get(Z);if(!Y||Y.hydrated)return;if(Y.hydrated=!0,typeof window<"u"&&typeof window.dispatchEvent==="function")window.dispatchEvent(new CustomEvent("stx:hydrate",{detail:{id:Z,component:Y.component}}))},async hydrateAll(){let Z=Array.from($.values()).filter((Y)=>!Y.hydrated).map((Y)=>this.hydrate(Y.id));await Promise.all(Z)}}}function ej($){return`
11581
11599
  <script data-hydrate="${$}">
11582
11600
  (function() {
11583
11601
  const island = document.querySelector('[data-island="${$}"]');
@@ -11588,7 +11606,7 @@ else {
11588
11606
  island.dispatchEvent(new CustomEvent('stx:hydrated', { bubbles: true }));
11589
11607
  })();
11590
11608
  </script>
11591
- `}function $B($,Z){let Y=Z.timeout||2000,J=Z.priority||"low";return`
11609
+ `}function $_($,Z){let Y=Z.timeout||2000,J=Z.priority||"low";return`
11592
11610
  <script data-hydrate="${$}">
11593
11611
  (function() {
11594
11612
  const island = document.querySelector('[data-island="${$}"]');
@@ -11624,7 +11642,7 @@ else {
11624
11642
  }
11625
11643
  })();
11626
11644
  </script>
11627
- `}function ZB($,Z){let Y=Z.rootMargin||"0px",J=Z.threshold||0;return`
11645
+ `}function Z_($,Z){let Y=Z.rootMargin||"0px",J=Z.threshold||0;return`
11628
11646
  <script data-hydrate="${$}">
11629
11647
  (function() {
11630
11648
  const island = document.querySelector('[data-island="${$}"]');
@@ -11657,7 +11675,7 @@ else {
11657
11675
  }
11658
11676
  })();
11659
11677
  </script>
11660
- `}function YB($,Z){let Y=Z.media||"(min-width: 768px)";return`
11678
+ `}function Y_($,Z){let Y=Z.media||"(min-width: 768px)";return`
11661
11679
  <script data-hydrate="${$}">
11662
11680
  (function() {
11663
11681
  const island = document.querySelector('[data-island="${$}"]');
@@ -11686,7 +11704,7 @@ else {
11686
11704
  }
11687
11705
  })();
11688
11706
  </script>
11689
- `}function JB($){return`
11707
+ `}function J_($){return`
11690
11708
  <script data-hydrate="${$}">
11691
11709
  (function() {
11692
11710
  const island = document.querySelector('[data-island="${$}"]');
@@ -11708,7 +11726,7 @@ else {
11708
11726
  events.forEach(e => island.addEventListener(e, handler, { once: true, passive: true }));
11709
11727
  })();
11710
11728
  </script>
11711
- `}function XB($,Z){let Y=Z.event||"stx:activate";return`
11729
+ `}function X_($,Z){let Y=Z.event||"stx:activate";return`
11712
11730
  <script data-hydrate="${$}">
11713
11731
  (function() {
11714
11732
  const island = document.querySelector('[data-island="${$}"]');
@@ -11729,19 +11747,19 @@ else {
11729
11747
  });
11730
11748
  })();
11731
11749
  </script>
11732
- `}function sJ($,Z={},Y){let J=$,X=!1,Q=/@client:(load|idle|visible|media|only|hover|event)/i.test($);if(J=R5(J,"load",Z),J=R5(J,"idle",Z),J=R5(J,"visible",Z),J=R5(J,"media",Z),J=QB(J),J=R5(J,"hover",Z),J=R5(J,"event",Z),X=Q&&J!==$,X)J+=`
11733
- `+cJ();return J}function R5($,Z,Y){let J=new RegExp(`@client:${Z}(?:\\s*\\(([^)]*)\\))?\\s*([\\s\\S]*?)@endclient`,"gi");return $.replace(J,(X,Q,G)=>{let K={strategy:Z};if(Q)try{let H=Q.split(",").map((L)=>L.trim());for(let L of H){let[V,O]=L.split(":").map((F)=>F.trim());if(V&&O){let F=O.replace(/^['"]|['"]$/g,"");K[V]=F}}}catch{}let z=`island-${Math.random().toString(36).substring(2,9)}`,q=iJ(G.trim()),W=nJ(G.trim(),Y),U=[];if(K.rootMargin)U.push(`data-root-margin="${K.rootMargin}"`);if(K.threshold!==void 0)U.push(`data-threshold="${K.threshold}"`);if(K.media)U.push(`data-media="${K.media}"`);if(K.event)U.push(`data-event="${K.event}"`);if(q)U.push(`data-component="${q}"`);let B=Object.keys(W).length>0?`
11734
- <script type="application/json" data-island-props="${z}">${JSON.stringify(W)}</script>`:"",_="";switch(Z){case"load":_=ej(z);break;case"idle":_=$B(z,K);break;case"visible":_=ZB(z,K);break;case"media":_=YB(z,K);break;case"hover":_=JB(z);break;case"event":_=XB(z,K);break}return`
11750
+ `}function sJ($,Z={},Y){let J=$,X=!1,Q=/@client:(load|idle|visible|media|only|hover|event)/i.test($);if(J=R5(J,"load",Z),J=R5(J,"idle",Z),J=R5(J,"visible",Z),J=R5(J,"media",Z),J=Q_(J),J=R5(J,"hover",Z),J=R5(J,"event",Z),X=Q&&J!==$,X)J+=`
11751
+ `+cJ();return J}function R5($,Z,Y){let J=new RegExp(`@client:${Z}(?:\\s*\\(([^)]*)\\))?\\s*([\\s\\S]*?)@endclient`,"gi");return $.replace(J,(X,Q,G)=>{let K={strategy:Z};if(Q)try{let H=Q.split(",").map((L)=>L.trim());for(let L of H){let[V,O]=L.split(":").map((F)=>F.trim());if(V&&O){let F=O.replace(/^['"]|['"]$/g,"");K[V]=F}}}catch{}let z=`island-${Math.random().toString(36).substring(2,9)}`,q=iJ(G.trim()),W=nJ(G.trim(),Y),U=[];if(K.rootMargin)U.push(`data-root-margin="${K.rootMargin}"`);if(K.threshold!==void 0)U.push(`data-threshold="${K.threshold}"`);if(K.media)U.push(`data-media="${K.media}"`);if(K.event)U.push(`data-event="${K.event}"`);if(q)U.push(`data-component="${q}"`);let _=Object.keys(W).length>0?`
11752
+ <script type="application/json" data-island-props="${z}">${JSON.stringify(W)}</script>`:"",B="";switch(Z){case"load":B=ej(z);break;case"idle":B=$_(z,K);break;case"visible":B=Z_(z,K);break;case"media":B=Y_(z,K);break;case"hover":B=J_(z);break;case"event":B=X_(z,K);break}return`
11735
11753
  <div data-island="${z}"
11736
11754
  data-strategy="${Z}"
11737
11755
  ${U.join(`
11738
11756
  `)}
11739
11757
  class="stx-island"
11740
11758
  style="contents;">
11741
- ${G.trim()}${B}
11759
+ ${G.trim()}${_}
11742
11760
  </div>
11743
- ${_}
11744
- `})}function QB($){let Z=/@client:only\s*([\s\S]*?)@endclient/gi;return $.replace(Z,(Y,J)=>{let X=`island-only-${Math.random().toString(36).substring(2,9)}`;return`
11761
+ ${B}
11762
+ `})}function Q_($){let Z=/@client:only\s*([\s\S]*?)@endclient/gi;return $.replace(Z,(Y,J)=>{let X=`island-only-${Math.random().toString(36).substring(2,9)}`;return`
11745
11763
  <div data-island="${X}"
11746
11764
  data-strategy="only"
11747
11765
  class="stx-island stx-client-only">
@@ -11805,7 +11823,7 @@ else {
11805
11823
  <script type="application/json" id="stx-island-manifest">
11806
11824
  ${JSON.stringify(Z)}
11807
11825
  </script>
11808
- `}var GB;var QX=b(()=>{GB={processPartialHydrationDirectives:sJ,processStaticDirectives:YX,generatePartialHydrationCSS:rJ,generateIslandManifest:JX,createIslandRegistry:oJ,hydrateIsland:aJ,hydrateByStrategy:tJ,hydrateAll:eJ,isHydrated:$X,onHydrated:ZX}});var OX={};e(OX,{watchMultiple:()=>WX,watchEffect:()=>UX,watch:()=>qX,unref:()=>GX,toRefs:()=>KX,throttledComputed:()=>HX,stxWatchMultiple:()=>WX,stxWatchEffect:()=>UX,stxWatch:()=>qX,stxUnref:()=>GX,stxToRefs:()=>KX,stxThrottledComputed:()=>HX,stxShallowRef:()=>zX,stxRef:()=>N5,stxIsRef:()=>I1,stxDebouncedComputed:()=>_X,stxComputed:()=>_$,shallowRef:()=>zX,ref:()=>N5,processWatchDirectives:()=>BX,processComputedDirectives:()=>jX,isRef:()=>I1,default:()=>KB,debouncedComputed:()=>_X,computed:()=>_$});function N5($){let Z=$,Y=new Set,J={get value(){if(Q1){let X=B$.get(J);if(!X)X=new Set,B$.set(J,X);X.add(Q1)}return Z},set value(X){if(!Object.is(Z,X)){Z=X,Y.forEach((G)=>G(X));let Q=B$.get(J);if(Q)Q.forEach((G)=>G())}},subscribe(X){return Y.add(X),()=>Y.delete(X)},peek(){return Z}};return J}function I1($){return $!==null&&typeof $==="object"&&"value"in $&&"subscribe"in $&&"peek"in $}function GX($){return I1($)?$.value:$}function KX($){let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=N5($[Y]);return Z}function zX($){return N5($)}function _$($){let Z=typeof $==="function",Y=Z?$:$.get,J=Z?void 0:$.set,X=Z?Object.is:$.equals||Object.is,Q,G=!0,K=new Set,z=new Set,q=()=>{if(G=!0,z.size>0){let j=U.value;z.forEach((B)=>B(j))}};function W(){K.clear();let j=Q1;Q1=q,s4.push(q);try{return Y()}finally{s4.pop(),Q1=j}}let U={get value(){if(Q1){let j=B$.get(U);if(!j)j=new Set,B$.set(U,j);j.add(Q1)}if(G){let j=W();if(!X(Q,j))Q=j;G=!1}return Q},set value(j){if(J)J(j);else console.warn("Computed property is readonly")},subscribe(j){return z.add(j),()=>z.delete(j)},peek(){if(G)Q=Y(),G=!1;return Q},invalidate(){G=!0},get dirty(){return G},get deps(){return K}};return U}function qX($,Z,Y={}){let{immediate:J=!1,deep:X=!1,flush:Q="pre",once:G=!1}=Y,K,z=!0,q=!1,W=()=>{if(I1($))return X?s1($.value):$.value;return $()},U=()=>{if(!z||q)return;let _=W();if(K!==void 0&&Object.is(K,_)&&!X)return;let H=()=>{if(Z(_,K),K=X?s1(_):_,G)B()};if(Q==="sync")H();else if(Q==="post")queueMicrotask(H);else Promise.resolve().then(H)},j=null;if(I1($))j=$.subscribe(()=>U());else j=_$($).subscribe(()=>U());if(J)K=void 0,U();else K=W();let B=()=>{if(z=!1,j)j(),j=null};return B.pause=()=>{q=!0},B.resume=()=>{q=!1},B}function WX($,Z,Y={}){let{immediate:J=!1,once:X=!1}=Y,Q=$.map((U)=>I1(U)?U.value:void 0),G=!0,K=!1,z=()=>{if(!G||K)return;let U=$.map((j)=>I1(j)?j.value:void 0);if(Z(U,Q),Q=[...U],X)W()},q=$.map((U)=>{if(I1(U))return U.subscribe(()=>z());return()=>{}});if(J)z();let W=()=>{G=!1,q.forEach((U)=>U())};return W.pause=()=>{K=!0},W.resume=()=>{K=!1},W}function UX($,Z={}){let{flush:Y="pre"}=Z,J,X=!0,Q=!1,G=()=>{if(!X||Q)return;if(J)J();let z=Q1;Q1=G,s4.push(G);try{J=$()}finally{s4.pop(),Q1=z}};if(Y==="sync")G();else if(Y==="post")queueMicrotask(G);else Promise.resolve().then(G);let K=()=>{if(X=!1,J)J()};return K.pause=()=>{Q=!0},K.resume=()=>{Q=!1},K}function jX($,Z={},Y){let J=/@computed\s*\(\s*(\w+)\s*,\s*(.+?)\s*\)/gi;return $.replace(J,(X,Q,G)=>{try{let z=Function(...Object.keys(Z),`return ${G}`)(...Object.values(Z));return Z[Q]=z,`<!-- computed: ${Q} = ${z} -->`}catch(K){return`<!-- computed error: ${Q} - ${K} -->`}})}function BX($,Z={},Y){let J=/@watch\s*\(\s*(\w+)\s*\)\s*([\s\S]*?)@endwatch/gi;return $.replace(J,(X,Q,G)=>{return`
11826
+ `}var G_;var QX=b(()=>{G_={processPartialHydrationDirectives:sJ,processStaticDirectives:YX,generatePartialHydrationCSS:rJ,generateIslandManifest:JX,createIslandRegistry:oJ,hydrateIsland:aJ,hydrateByStrategy:tJ,hydrateAll:eJ,isHydrated:$X,onHydrated:ZX}});var OX={};e(OX,{watchMultiple:()=>WX,watchEffect:()=>UX,watch:()=>qX,unref:()=>GX,toRefs:()=>KX,throttledComputed:()=>HX,stxWatchMultiple:()=>WX,stxWatchEffect:()=>UX,stxWatch:()=>qX,stxUnref:()=>GX,stxToRefs:()=>KX,stxThrottledComputed:()=>HX,stxShallowRef:()=>zX,stxRef:()=>N5,stxIsRef:()=>I1,stxDebouncedComputed:()=>BX,stxComputed:()=>B$,shallowRef:()=>zX,ref:()=>N5,processWatchDirectives:()=>_X,processComputedDirectives:()=>jX,isRef:()=>I1,default:()=>K_,debouncedComputed:()=>BX,computed:()=>B$});function N5($){let Z=$,Y=new Set,J={get value(){if(Q1){let X=_$.get(J);if(!X)X=new Set,_$.set(J,X);X.add(Q1)}return Z},set value(X){if(!Object.is(Z,X)){Z=X,Y.forEach((G)=>G(X));let Q=_$.get(J);if(Q)Q.forEach((G)=>G())}},subscribe(X){return Y.add(X),()=>Y.delete(X)},peek(){return Z}};return J}function I1($){return $!==null&&typeof $==="object"&&"value"in $&&"subscribe"in $&&"peek"in $}function GX($){return I1($)?$.value:$}function KX($){let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=N5($[Y]);return Z}function zX($){return N5($)}function B$($){let Z=typeof $==="function",Y=Z?$:$.get,J=Z?void 0:$.set,X=Z?Object.is:$.equals||Object.is,Q,G=!0,K=new Set,z=new Set,q=()=>{if(G=!0,z.size>0){let j=U.value;z.forEach((_)=>_(j))}};function W(){K.clear();let j=Q1;Q1=q,s4.push(q);try{return Y()}finally{s4.pop(),Q1=j}}let U={get value(){if(Q1){let j=_$.get(U);if(!j)j=new Set,_$.set(U,j);j.add(Q1)}if(G){let j=W();if(!X(Q,j))Q=j;G=!1}return Q},set value(j){if(J)J(j);else console.warn("Computed property is readonly")},subscribe(j){return z.add(j),()=>z.delete(j)},peek(){if(G)Q=Y(),G=!1;return Q},invalidate(){G=!0},get dirty(){return G},get deps(){return K}};return U}function qX($,Z,Y={}){let{immediate:J=!1,deep:X=!1,flush:Q="pre",once:G=!1}=Y,K,z=!0,q=!1,W=()=>{if(I1($))return X?s1($.value):$.value;return $()},U=()=>{if(!z||q)return;let B=W();if(K!==void 0&&Object.is(K,B)&&!X)return;let H=()=>{if(Z(B,K),K=X?s1(B):B,G)_()};if(Q==="sync")H();else if(Q==="post")queueMicrotask(H);else Promise.resolve().then(H)},j=null;if(I1($))j=$.subscribe(()=>U());else j=B$($).subscribe(()=>U());if(J)K=void 0,U();else K=W();let _=()=>{if(z=!1,j)j(),j=null};return _.pause=()=>{q=!0},_.resume=()=>{q=!1},_}function WX($,Z,Y={}){let{immediate:J=!1,once:X=!1}=Y,Q=$.map((U)=>I1(U)?U.value:void 0),G=!0,K=!1,z=()=>{if(!G||K)return;let U=$.map((j)=>I1(j)?j.value:void 0);if(Z(U,Q),Q=[...U],X)W()},q=$.map((U)=>{if(I1(U))return U.subscribe(()=>z());return()=>{}});if(J)z();let W=()=>{G=!1,q.forEach((U)=>U())};return W.pause=()=>{K=!0},W.resume=()=>{K=!1},W}function UX($,Z={}){let{flush:Y="pre"}=Z,J,X=!0,Q=!1,G=()=>{if(!X||Q)return;if(J)J();let z=Q1;Q1=G,s4.push(G);try{J=$()}finally{s4.pop(),Q1=z}};if(Y==="sync")G();else if(Y==="post")queueMicrotask(G);else Promise.resolve().then(G);let K=()=>{if(X=!1,J)J()};return K.pause=()=>{Q=!0},K.resume=()=>{Q=!1},K}function jX($,Z={},Y){let J=/@computed\s*\(\s*(\w+)\s*,\s*(.+?)\s*\)/gi;return $.replace(J,(X,Q,G)=>{try{let z=Function(...Object.keys(Z),`return ${G}`)(...Object.values(Z));return Z[Q]=z,`<!-- computed: ${Q} = ${z} -->`}catch(K){return`<!-- computed error: ${Q} - ${K} -->`}})}function _X($,Z={},Y){let J=/@watch\s*\(\s*(\w+)\s*\)\s*([\s\S]*?)@endwatch/gi;return $.replace(J,(X,Q,G)=>{return`
11809
11827
  <script data-watch="${`watch-${Math.random().toString(36).substring(2,9)}`}">
11810
11828
  (function() {
11811
11829
  // Watch implementation for ${Q}
@@ -11817,9 +11835,9 @@ else {
11817
11835
  }
11818
11836
  })();
11819
11837
  </script>
11820
- `})}function s1($){if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((Y)=>s1(Y));if($ instanceof Date)return new Date($.getTime());if($ instanceof Map){let Y=new Map;return $.forEach((J,X)=>Y.set(s1(X),s1(J))),Y}if($ instanceof Set){let Y=new Set;return $.forEach((J)=>Y.add(s1(J))),Y}let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=s1($[Y]);return Z}function _X($,Z=100){let Y=N5($()),J=null,X=()=>{if(J)clearTimeout(J);J=setTimeout(()=>{Y.value=$()},Z)};return _$($).subscribe(()=>X()),{get value(){return Y.value},set value(G){console.warn("Debounced computed is readonly")},subscribe:Y.subscribe,peek:Y.peek,invalidate(){X()},get dirty(){return!1},get deps(){return new Set}}}function HX($,Z=100){let Y=N5($()),J=0,X=()=>{let G=Date.now();if(G-J>=Z)J=G,Y.value=$()};return _$($).subscribe(()=>X()),{get value(){return Y.value},set value(G){console.warn("Throttled computed is readonly")},subscribe:Y.subscribe,peek:Y.peek,invalidate(){X()},get dirty(){return!1},get deps(){return new Set}}}var Q1=null,s4,B$,KB;var LX=b(()=>{s4=[],B$=new WeakMap;KB={ref:N5,computed:_$,watch:qX,watchMultiple:WX,watchEffect:UX,isRef:I1,unref:GX,toRefs:KX,shallowRef:zX,debouncedComputed:_X,throttledComputed:HX,processComputedDirectives:jX,processWatchDirectives:BX}});var AX={};e(AX,{v:()=>zB,processHasErrorsDirective:()=>wX,processFormValidationDirectives:()=>WB,processErrorsDirective:()=>VX,processErrorDirective:()=>FX,defineForm:()=>qB,Validator:()=>M5});class M5{rules=[];defaultValue="";addRule($){let Z=new M5;return Z.rules=[...this.rules,$],Z.defaultValue=this.defaultValue,Z}required($="This field is required"){return this.addRule({name:"required",message:$,validate:(Z)=>{if(Z===null||Z===void 0)return $;if(typeof Z==="string"&&Z.trim()==="")return $;if(Array.isArray(Z)&&Z.length===0)return $;return!0}})}email($="Please enter a valid email"){return this.addRule({name:"email",message:$,validate:(Z)=>{if(!Z)return!0;return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String(Z))||$}})}url($="Please enter a valid URL"){return this.addRule({name:"url",message:$,validate:(Z)=>{if(!Z)return!0;try{return new URL(String(Z)),!0}catch{return $}}})}min($,Z){let Y=Z||`Must be at least ${$} characters`;return this.addRule({name:"min",message:Y,validate:(J)=>{if(!J)return!0;return String(J).length>=$||Y}})}max($,Z){let Y=Z||`Must be no more than ${$} characters`;return this.addRule({name:"max",message:Y,validate:(J)=>{if(!J)return!0;return String(J).length<=$||Y}})}length($,Z,Y){let J=Y||`Must be between ${$} and ${Z} characters`;return this.addRule({name:"length",message:J,validate:(X)=>{if(!X)return!0;let Q=String(X).length;return Q>=$&&Q<=Z||J}})}pattern($,Z="Invalid format"){return this.addRule({name:"pattern",message:Z,validate:(Y)=>{if(!Y)return!0;return $.test(String(Y))||Z}})}hasUppercase($="Must contain an uppercase letter"){return this.pattern(/[A-Z]/,$)}hasLowercase($="Must contain a lowercase letter"){return this.pattern(/[a-z]/,$)}hasNumber($="Must contain a number"){return this.pattern(/\d/,$)}hasSpecial($="Must contain a special character"){return this.pattern(/[!@#$%^&*(),.?":{}|<>]/,$)}alphanumeric($="Only letters and numbers allowed"){return this.pattern(/^[a-zA-Z0-9]+$/,$)}startsWithLetter($="Must start with a letter"){return this.pattern(/^[a-zA-Z]/,$)}noSpaces($="Spaces are not allowed"){return this.addRule({name:"noSpaces",message:$,validate:(Z)=>{if(!Z)return!0;return!String(Z).includes(" ")||$}})}number($="Must be a number"){let Z=this.addRule({name:"number",message:$,validate:(Y)=>{if(!Y&&Y!==0)return!0;return!Number.isNaN(Number(Y))||$}});return Z.defaultValue=0,Z}integer($="Must be a whole number"){return this.addRule({name:"integer",message:$,validate:(Z)=>{if(!Z&&Z!==0)return!0;return Number.isInteger(Number(Z))||$}})}positive($="Must be a positive number"){return this.addRule({name:"positive",message:$,validate:(Z)=>{if(!Z&&Z!==0)return!0;return Number(Z)>0||$}})}negative($="Must be a negative number"){return this.addRule({name:"negative",message:$,validate:(Z)=>{if(!Z&&Z!==0)return!0;return Number(Z)<0||$}})}minValue($,Z){let Y=Z||`Must be at least ${$}`;return this.addRule({name:"minValue",message:Y,validate:(J)=>{if(!J&&J!==0)return!0;return Number(J)>=$||Y}})}maxValue($,Z){let Y=Z||`Must be no more than ${$}`;return this.addRule({name:"maxValue",message:Y,validate:(J)=>{if(!J&&J!==0)return!0;return Number(J)<=$||Y}})}between($,Z,Y){let J=Y||`Must be between ${$} and ${Z}`;return this.addRule({name:"between",message:J,validate:(X)=>{if(!X&&X!==0)return!0;let Q=Number(X);return Q>=$&&Q<=Z||J}})}matches($,Z){let Y=Z||`Must match ${$}`;return this.addRule({name:"matches",message:Y,validate:(J,X)=>{if(!X)return!0;return J===X[$]||Y}})}oneOf($,Z){let Y=Z||`Must be one of: ${$.join(", ")}`;return this.addRule({name:"oneOf",message:Y,validate:(J)=>{if(!J)return!0;return $.includes(J)||Y}})}notOneOf($,Z){let Y=Z||`Cannot be one of: ${$.join(", ")}`;return this.addRule({name:"notOneOf",message:Y,validate:(J)=>{if(!J)return!0;return!$.includes(J)||Y}})}date($="Must be a valid date"){return this.addRule({name:"date",message:$,validate:(Z)=>{if(!Z)return!0;let Y=new Date(String(Z));return!Number.isNaN(Y.getTime())||$}})}before($,Z){let Y=new Date($),J=Z||`Must be before ${Y.toLocaleDateString()}`;return this.addRule({name:"before",message:J,validate:(X)=>{if(!X)return!0;return new Date(String(X))<Y||J}})}after($,Z){let Y=new Date($),J=Z||`Must be after ${Y.toLocaleDateString()}`;return this.addRule({name:"after",message:J,validate:(X)=>{if(!X)return!0;return new Date(String(X))>Y||J}})}custom($,Z="Invalid value"){return this.addRule({name:"custom",message:Z,validate:$})}async($,Z="Invalid value"){return this.addRule({name:"async",message:Z,async:!0,validate:$})}when($,Z){let Y=new M5;Y.rules=[...this.rules],Y.defaultValue=this.defaultValue;for(let J of Z.getRules())Y.rules.push({...J,validate:(X,Q)=>{if(!$(X,Q||{}))return!0;return J.validate(X,Q)}});return Y}getRules(){return this.rules}getDefaultValue(){return this.defaultValue}default($){let Z=new M5;return Z.rules=[...this.rules],Z.defaultValue=$,Z}async validate($,Z){let Y=[];for(let J of this.rules){let X=await J.validate($,Z);if(X!==!0)Y.push(X)}return Y}validateSync($,Z){let Y=[];for(let J of this.rules){if(J.async)continue;let X=J.validate($,Z);if(X!==!0)Y.push(X)}return Y}}function qB($,Z){let Y=Object.keys($),J={},X={},Q={},G={},K={};for(let O of Y)J[O]=Z?.[O]??$[O].getDefaultValue(),X[O]=[],Q[O]=!1,G[O]=!1,K[O]=!1;let z=!1;async function q(O){K[O]=!0;let F=await $[O].validate(J[O],J);return X[O]=F,K[O]=!1,F.length===0}async function W(){z=!0;let O=await Promise.all(Y.map(q));return z=!1,O.every(Boolean)}function U(){for(let O of Y)J[O]=Z?.[O]??$[O].getDefaultValue(),X[O]=[],Q[O]=!1,G[O]=!1}function j(O){for(let F of Y)if(F in O)J[F]=O[F],G[F]=!0}function B(O,F){J[O]=F,G[O]=!0}function _(O,F=!0){if(Q[O]=F,F)q(O)}function H(O){return{value:J[O],errors:X[O],touched:Q[O],dirty:G[O],valid:X[O].length===0,validating:K[O]}}function L(O){return async(F)=>{F?.preventDefault?.();for(let A of Y)Q[A]=!0;if(await W())await O(J)}}return{values:J,errors:X,touched:Q,dirty:G,get isValid(){return Y.every((O)=>X[O].length===0)},get isValidating(){return z||Y.some((O)=>K[O])},get isDirty(){return Y.some((O)=>G[O])},validate:W,validateField:q,reset:U,setValues:j,setFieldValue:B,setFieldTouched:_,getFieldState:H,handleSubmit:L}}function FX($,Z,Y){let J=/@error\s*\(\s*([^)]+)\s*\)([\s\S]*?)@enderror/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),z=Z;for(let W of K)if(z&&typeof z==="object"&&W in z)z=z[W];else return"";let q=z;if(!q||!Array.isArray(q)||q.length===0)return"";return q.map((W)=>{return G.replace(/\{\{\s*message\s*\}\}/g,W)}).join(`
11838
+ `})}function s1($){if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((Y)=>s1(Y));if($ instanceof Date)return new Date($.getTime());if($ instanceof Map){let Y=new Map;return $.forEach((J,X)=>Y.set(s1(X),s1(J))),Y}if($ instanceof Set){let Y=new Set;return $.forEach((J)=>Y.add(s1(J))),Y}let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=s1($[Y]);return Z}function BX($,Z=100){let Y=N5($()),J=null,X=()=>{if(J)clearTimeout(J);J=setTimeout(()=>{Y.value=$()},Z)};return B$($).subscribe(()=>X()),{get value(){return Y.value},set value(G){console.warn("Debounced computed is readonly")},subscribe:Y.subscribe,peek:Y.peek,invalidate(){X()},get dirty(){return!1},get deps(){return new Set}}}function HX($,Z=100){let Y=N5($()),J=0,X=()=>{let G=Date.now();if(G-J>=Z)J=G,Y.value=$()};return B$($).subscribe(()=>X()),{get value(){return Y.value},set value(G){console.warn("Throttled computed is readonly")},subscribe:Y.subscribe,peek:Y.peek,invalidate(){X()},get dirty(){return!1},get deps(){return new Set}}}var Q1=null,s4,_$,K_;var LX=b(()=>{s4=[],_$=new WeakMap;K_={ref:N5,computed:B$,watch:qX,watchMultiple:WX,watchEffect:UX,isRef:I1,unref:GX,toRefs:KX,shallowRef:zX,debouncedComputed:BX,throttledComputed:HX,processComputedDirectives:jX,processWatchDirectives:_X}});var AX={};e(AX,{v:()=>z_,processHasErrorsDirective:()=>wX,processFormValidationDirectives:()=>W_,processErrorsDirective:()=>VX,processErrorDirective:()=>FX,defineForm:()=>q_,Validator:()=>M5});class M5{rules=[];defaultValue="";addRule($){let Z=new M5;return Z.rules=[...this.rules,$],Z.defaultValue=this.defaultValue,Z}required($="This field is required"){return this.addRule({name:"required",message:$,validate:(Z)=>{if(Z===null||Z===void 0)return $;if(typeof Z==="string"&&Z.trim()==="")return $;if(Array.isArray(Z)&&Z.length===0)return $;return!0}})}email($="Please enter a valid email"){return this.addRule({name:"email",message:$,validate:(Z)=>{if(!Z)return!0;return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String(Z))||$}})}url($="Please enter a valid URL"){return this.addRule({name:"url",message:$,validate:(Z)=>{if(!Z)return!0;try{return new URL(String(Z)),!0}catch{return $}}})}min($,Z){let Y=Z||`Must be at least ${$} characters`;return this.addRule({name:"min",message:Y,validate:(J)=>{if(!J)return!0;return String(J).length>=$||Y}})}max($,Z){let Y=Z||`Must be no more than ${$} characters`;return this.addRule({name:"max",message:Y,validate:(J)=>{if(!J)return!0;return String(J).length<=$||Y}})}length($,Z,Y){let J=Y||`Must be between ${$} and ${Z} characters`;return this.addRule({name:"length",message:J,validate:(X)=>{if(!X)return!0;let Q=String(X).length;return Q>=$&&Q<=Z||J}})}pattern($,Z="Invalid format"){return this.addRule({name:"pattern",message:Z,validate:(Y)=>{if(!Y)return!0;return $.test(String(Y))||Z}})}hasUppercase($="Must contain an uppercase letter"){return this.pattern(/[A-Z]/,$)}hasLowercase($="Must contain a lowercase letter"){return this.pattern(/[a-z]/,$)}hasNumber($="Must contain a number"){return this.pattern(/\d/,$)}hasSpecial($="Must contain a special character"){return this.pattern(/[!@#$%^&*(),.?":{}|<>]/,$)}alphanumeric($="Only letters and numbers allowed"){return this.pattern(/^[a-zA-Z0-9]+$/,$)}startsWithLetter($="Must start with a letter"){return this.pattern(/^[a-zA-Z]/,$)}noSpaces($="Spaces are not allowed"){return this.addRule({name:"noSpaces",message:$,validate:(Z)=>{if(!Z)return!0;return!String(Z).includes(" ")||$}})}number($="Must be a number"){let Z=this.addRule({name:"number",message:$,validate:(Y)=>{if(!Y&&Y!==0)return!0;return!Number.isNaN(Number(Y))||$}});return Z.defaultValue=0,Z}integer($="Must be a whole number"){return this.addRule({name:"integer",message:$,validate:(Z)=>{if(!Z&&Z!==0)return!0;return Number.isInteger(Number(Z))||$}})}positive($="Must be a positive number"){return this.addRule({name:"positive",message:$,validate:(Z)=>{if(!Z&&Z!==0)return!0;return Number(Z)>0||$}})}negative($="Must be a negative number"){return this.addRule({name:"negative",message:$,validate:(Z)=>{if(!Z&&Z!==0)return!0;return Number(Z)<0||$}})}minValue($,Z){let Y=Z||`Must be at least ${$}`;return this.addRule({name:"minValue",message:Y,validate:(J)=>{if(!J&&J!==0)return!0;return Number(J)>=$||Y}})}maxValue($,Z){let Y=Z||`Must be no more than ${$}`;return this.addRule({name:"maxValue",message:Y,validate:(J)=>{if(!J&&J!==0)return!0;return Number(J)<=$||Y}})}between($,Z,Y){let J=Y||`Must be between ${$} and ${Z}`;return this.addRule({name:"between",message:J,validate:(X)=>{if(!X&&X!==0)return!0;let Q=Number(X);return Q>=$&&Q<=Z||J}})}matches($,Z){let Y=Z||`Must match ${$}`;return this.addRule({name:"matches",message:Y,validate:(J,X)=>{if(!X)return!0;return J===X[$]||Y}})}oneOf($,Z){let Y=Z||`Must be one of: ${$.join(", ")}`;return this.addRule({name:"oneOf",message:Y,validate:(J)=>{if(!J)return!0;return $.includes(J)||Y}})}notOneOf($,Z){let Y=Z||`Cannot be one of: ${$.join(", ")}`;return this.addRule({name:"notOneOf",message:Y,validate:(J)=>{if(!J)return!0;return!$.includes(J)||Y}})}date($="Must be a valid date"){return this.addRule({name:"date",message:$,validate:(Z)=>{if(!Z)return!0;let Y=new Date(String(Z));return!Number.isNaN(Y.getTime())||$}})}before($,Z){let Y=new Date($),J=Z||`Must be before ${Y.toLocaleDateString()}`;return this.addRule({name:"before",message:J,validate:(X)=>{if(!X)return!0;return new Date(String(X))<Y||J}})}after($,Z){let Y=new Date($),J=Z||`Must be after ${Y.toLocaleDateString()}`;return this.addRule({name:"after",message:J,validate:(X)=>{if(!X)return!0;return new Date(String(X))>Y||J}})}custom($,Z="Invalid value"){return this.addRule({name:"custom",message:Z,validate:$})}async($,Z="Invalid value"){return this.addRule({name:"async",message:Z,async:!0,validate:$})}when($,Z){let Y=new M5;Y.rules=[...this.rules],Y.defaultValue=this.defaultValue;for(let J of Z.getRules())Y.rules.push({...J,validate:(X,Q)=>{if(!$(X,Q||{}))return!0;return J.validate(X,Q)}});return Y}getRules(){return this.rules}getDefaultValue(){return this.defaultValue}default($){let Z=new M5;return Z.rules=[...this.rules],Z.defaultValue=$,Z}async validate($,Z){let Y=[];for(let J of this.rules){let X=await J.validate($,Z);if(X!==!0)Y.push(X)}return Y}validateSync($,Z){let Y=[];for(let J of this.rules){if(J.async)continue;let X=J.validate($,Z);if(X!==!0)Y.push(X)}return Y}}function q_($,Z){let Y=Object.keys($),J={},X={},Q={},G={},K={};for(let O of Y)J[O]=Z?.[O]??$[O].getDefaultValue(),X[O]=[],Q[O]=!1,G[O]=!1,K[O]=!1;let z=!1;async function q(O){K[O]=!0;let F=await $[O].validate(J[O],J);return X[O]=F,K[O]=!1,F.length===0}async function W(){z=!0;let O=await Promise.all(Y.map(q));return z=!1,O.every(Boolean)}function U(){for(let O of Y)J[O]=Z?.[O]??$[O].getDefaultValue(),X[O]=[],Q[O]=!1,G[O]=!1}function j(O){for(let F of Y)if(F in O)J[F]=O[F],G[F]=!0}function _(O,F){J[O]=F,G[O]=!0}function B(O,F=!0){if(Q[O]=F,F)q(O)}function H(O){return{value:J[O],errors:X[O],touched:Q[O],dirty:G[O],valid:X[O].length===0,validating:K[O]}}function L(O){return async(F)=>{F?.preventDefault?.();for(let A of Y)Q[A]=!0;if(await W())await O(J)}}return{values:J,errors:X,touched:Q,dirty:G,get isValid(){return Y.every((O)=>X[O].length===0)},get isValidating(){return z||Y.some((O)=>K[O])},get isDirty(){return Y.some((O)=>G[O])},validate:W,validateField:q,reset:U,setValues:j,setFieldValue:_,setFieldTouched:B,getFieldState:H,handleSubmit:L}}function FX($,Z,Y){let J=/@error\s*\(\s*([^)]+)\s*\)([\s\S]*?)@enderror/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),z=Z;for(let W of K)if(z&&typeof z==="object"&&W in z)z=z[W];else return"";let q=z;if(!q||!Array.isArray(q)||q.length===0)return"";return q.map((W)=>{return G.replace(/\{\{\s*message\s*\}\}/g,W)}).join(`
11821
11839
  `)}catch{return""}})}function VX($,Z,Y){let J=/@errors\s*\(\s*([^)]+)\s*\)([\s\S]*?)@enderrors/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),z=Z;for(let W of K)if(z&&typeof z==="object"&&W in z)z=z[W];else return"";let q=z;if(!q||!Array.isArray(q)||q.length===0)return"";return q.map((W)=>G.replace(/\{\{\s*message\s*\}\}/g,W)).join(`
11822
- `)}catch{return""}})}function wX($,Z,Y){let J=/@hasErrors\s*\(\s*([^)]+)\s*\)([\s\S]*?)@endhasErrors/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),z=Z;for(let W of K)if(z&&typeof z==="object"&&W in z)z=z[W];else return"";let q=z;if(!q||!Array.isArray(q)||q.length===0)return"";return G}catch{return""}})}function WB($,Z,Y){let J=$;return J=FX(J,Z,Y),J=VX(J,Z,Y),J=wX(J,Z,Y),J}var zB;var RX=b(()=>{zB=new M5});var TX={};e(TX,{processXElementDirectives:()=>UB,hasXElementDirectives:()=>MX,generateXElementRuntime:()=>NX});function NX(){return`<script data-stx-scoped data-stx-x-element-runtime>
11840
+ `)}catch{return""}})}function wX($,Z,Y){let J=/@hasErrors\s*\(\s*([^)]+)\s*\)([\s\S]*?)@endhasErrors/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),z=Z;for(let W of K)if(z&&typeof z==="object"&&W in z)z=z[W];else return"";let q=z;if(!q||!Array.isArray(q)||q.length===0)return"";return G}catch{return""}})}function W_($,Z,Y){let J=$;return J=FX(J,Z,Y),J=VX(J,Z,Y),J=wX(J,Z,Y),J}var z_;var RX=b(()=>{z_=new M5});var TX={};e(TX,{processXElementDirectives:()=>U_,hasXElementDirectives:()=>MX,generateXElementRuntime:()=>NX});function NX(){return`<script data-stx-scoped data-stx-x-element-runtime>
11823
11841
  (function() {
11824
11842
  'use strict';
11825
11843
 
@@ -12103,16 +12121,16 @@ else {
12103
12121
  // Expose for manual initialization
12104
12122
  window.XElement = XElement;
12105
12123
  })();
12106
- </script>`}function MX($){return/\bx-data(?:\s|=)/.test($)}function UB($){let Z=/<script\b(?=[^>]*\bdata-stx-x-element-runtime\b)[^>]*>[\s\S]*?<\/script>\s*/gi,Y=$.match(Z)||[],J=Y.length>0?$.replace(Z,""):$;if(!MX(J))return J;let X=Y[0]?.trim()||NX(),Q=J.lastIndexOf("</body>");if(Q!==-1)return J.slice(0,Q)+X+`
12124
+ </script>`}function MX($){return/\bx-data(?:\s|=)/.test($)}function U_($){let Z=/<script\b(?=[^>]*\bdata-stx-x-element-runtime\b)[^>]*>[\s\S]*?<\/script>\s*/gi,Y=$.match(Z)||[],J=Y.length>0?$.replace(Z,""):$;if(!MX(J))return J;let X=Y[0]?.trim()||NX(),Q=J.lastIndexOf("</body>");if(Q!==-1)return J.slice(0,Q)+X+`
12107
12125
  `+J.slice(Q);return J+`
12108
- `+X}var IX={};e(IX,{rewriteImagesWithSiblings:()=>_B});import U1 from"path";async function _B($,Z){let Y=Z.formats??BB;if(!Z.publicDir)return $;let J=LB($),X=[],Q=/<img\b[^>]*?>/gi,G=[],K;while((K=Q.exec($))!==null){let U=K[0],j=U.match(/\bsrc=["']([^"']+)["']/i);if(!j)continue;if(FB(K.index,J))continue;G.push({idx:K.index,length:U.length,src:j[1],raw:U})}if(G.length===0)return $;let z=await Promise.all(G.map(async(U)=>{let j=await HB(U.src,Z.publicDir,Y);return{match:U,sources:j}}));for(let{match:U,sources:j}of z){if(j.length===0)continue;let _=`<picture>${j.map((H)=>`<source type="${H.mime}" srcset="${VB(H.url)}">`).join("")}${U.raw}</picture>`;X.push({start:U.idx,end:U.idx+U.length,replacement:_})}if(X.length===0)return $;let q="",W=0;for(let U of X)q+=$.slice(W,U.start),q+=U.replacement,W=U.end;return q+=$.slice(W),q}async function HB($,Z,Y){if(!OB($))return[];let J=U1.extname($).toLowerCase();if(!jB.has(J))return[];if(!$.startsWith("/"))return[];let X=U1.join(Z,$.slice(1)),Q=U1.dirname(X),G=U1.basename(X,J),K=U1.resolve(Q),z=U1.resolve(Z);if(!K.startsWith(z))return[];let q=U1.posix.dirname($),W=Y.map(async(j)=>{let B=U1.join(Q,`${G}${j.ext}`);if(!await Bun.file(B).exists())return null;return{url:U1.posix.join(q,`${G}${j.ext}`),mime:j.mime}});return(await Promise.all(W)).filter((j)=>j!==null)}function OB($){if(!$)return!1;if($.startsWith("http://")||$.startsWith("https://"))return!1;if($.startsWith("//"))return!1;if($.startsWith("data:"))return!1;return!0}function LB($){let Z=[],Y=/<picture\b[^>]*>[\s\S]*?<\/picture>/gi,J;while((J=Y.exec($))!==null)Z.push([J.index,J.index+J[0].length]);return Z}function FB($,Z){for(let[Y,J]of Z)if($>=Y&&$<J)return!0;return!1}function VB($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;")}var jB,BB;var DX=b(()=>{jB=new Set([".jpg",".jpeg",".png",".gif"]),BB=[{ext:".avif",mime:"image/avif"},{ext:".webp",mime:"image/webp"}]});var EX=()=>{};function u6($){return $.pwa?.serviceWorker?.fileName||"sw.js"}var kX=b(()=>{EX()});var bX={};e(bX,{injectPwaTags:()=>wB,generateThemeColorMeta:()=>NB,generateSwRegistrationScript:()=>AB,generatePwaTags:()=>r4,generateManifestLink:()=>RB});function r4($){let Z=$.pwa;if(!Z?.enabled)return"";let Y=Z.manifest,J=Z.icons?.outputDir?`/${Z.icons.outputDir}`:"/pwa-icons",X=u6($),Q=`
12126
+ `+X}var IX={};e(IX,{rewriteImagesWithSiblings:()=>B_});import U1 from"path";async function B_($,Z){let Y=Z.formats??__;if(!Z.publicDir)return $;let J=L_($),X=[],Q=/<img\b[^>]*?>/gi,G=[],K;while((K=Q.exec($))!==null){let U=K[0],j=U.match(/\bsrc=["']([^"']+)["']/i);if(!j)continue;if(F_(K.index,J))continue;G.push({idx:K.index,length:U.length,src:j[1],raw:U})}if(G.length===0)return $;let z=await Promise.all(G.map(async(U)=>{let j=await H_(U.src,Z.publicDir,Y);return{match:U,sources:j}}));for(let{match:U,sources:j}of z){if(j.length===0)continue;let B=`<picture>${j.map((H)=>`<source type="${H.mime}" srcset="${V_(H.url)}">`).join("")}${U.raw}</picture>`;X.push({start:U.idx,end:U.idx+U.length,replacement:B})}if(X.length===0)return $;let q="",W=0;for(let U of X)q+=$.slice(W,U.start),q+=U.replacement,W=U.end;return q+=$.slice(W),q}async function H_($,Z,Y){if(!O_($))return[];let J=U1.extname($).toLowerCase();if(!j_.has(J))return[];if(!$.startsWith("/"))return[];let X=U1.join(Z,$.slice(1)),Q=U1.dirname(X),G=U1.basename(X,J),K=U1.resolve(Q),z=U1.resolve(Z);if(!K.startsWith(z))return[];let q=U1.posix.dirname($),W=Y.map(async(j)=>{let _=U1.join(Q,`${G}${j.ext}`);if(!await Bun.file(_).exists())return null;return{url:U1.posix.join(q,`${G}${j.ext}`),mime:j.mime}});return(await Promise.all(W)).filter((j)=>j!==null)}function O_($){if(!$)return!1;if($.startsWith("http://")||$.startsWith("https://"))return!1;if($.startsWith("//"))return!1;if($.startsWith("data:"))return!1;return!0}function L_($){let Z=[],Y=/<picture\b[^>]*>[\s\S]*?<\/picture>/gi,J;while((J=Y.exec($))!==null)Z.push([J.index,J.index+J[0].length]);return Z}function F_($,Z){for(let[Y,J]of Z)if($>=Y&&$<J)return!0;return!1}function V_($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;")}var j_,__;var DX=b(()=>{j_=new Set([".jpg",".jpeg",".png",".gif"]),__=[{ext:".avif",mime:"image/avif"},{ext:".webp",mime:"image/webp"}]});var EX=()=>{};function m6($){return $.pwa?.serviceWorker?.fileName||"sw.js"}var kX=b(()=>{EX()});var bX={};e(bX,{injectPwaTags:()=>w_,generateThemeColorMeta:()=>N_,generateSwRegistrationScript:()=>A_,generatePwaTags:()=>r4,generateManifestLink:()=>R_});function r4($){let Z=$.pwa;if(!Z?.enabled)return"";let Y=Z.manifest,J=Z.icons?.outputDir?`/${Z.icons.outputDir}`:"/pwa-icons",X=m6($),Q=`
12109
12127
  <!-- stx PWA Meta Tags -->
12110
12128
  <link rel="manifest" href="/manifest.json">
12111
- <meta name="theme-color" content="${m6(Y?.themeColor||"#000000")}">
12129
+ <meta name="theme-color" content="${u6(Y?.themeColor||"#000000")}">
12112
12130
  <meta name="mobile-web-app-capable" content="yes">
12113
12131
  <meta name="apple-mobile-web-app-capable" content="yes">
12114
12132
  <meta name="apple-mobile-web-app-status-bar-style" content="default">
12115
- <meta name="apple-mobile-web-app-title" content="${m6(Y?.shortName||Y?.name||"App")}">`;if(Z.icons?.generateAppleIcons!==!1)Q+=`
12133
+ <meta name="apple-mobile-web-app-title" content="${u6(Y?.shortName||Y?.name||"App")}">`;if(Z.icons?.generateAppleIcons!==!1)Q+=`
12116
12134
  <link rel="apple-touch-icon" href="${J}/apple-touch-icon.png">
12117
12135
  <link rel="apple-touch-icon" sizes="120x120" href="${J}/apple-touch-icon-120x120.png">
12118
12136
  <link rel="apple-touch-icon" sizes="152x152" href="${J}/apple-touch-icon-152x152.png">
@@ -12149,12 +12167,12 @@ if ('serviceWorker' in navigator) {
12149
12167
  });
12150
12168
  }
12151
12169
  </script>
12152
- <!-- End stx PWA -->`,Q}function wB($,Z){let Y=Z.pwa;if(!Y?.enabled||Y.autoInject===!1)return $;if($.includes("<!-- stx PWA Meta Tags -->"))return $;if(!$.includes("</head>")){let X=$.lastIndexOf("</body>");if(X!==-1){let Q=r4(Z);return $.slice(0,X)+Q+`
12170
+ <!-- End stx PWA -->`,Q}function w_($,Z){let Y=Z.pwa;if(!Y?.enabled||Y.autoInject===!1)return $;if($.includes("<!-- stx PWA Meta Tags -->"))return $;if(!$.includes("</head>")){let X=$.lastIndexOf("</body>");if(X!==-1){let Q=r4(Z);return $.slice(0,X)+Q+`
12153
12171
  `+$.slice(X)}return $+r4(Z)}let J=r4(Z);return $.replace("</head>",`${J}
12154
- </head>`)}function AB($){if(!$.pwa?.enabled)return"";return`<script>
12172
+ </head>`)}function A_($){if(!$.pwa?.enabled)return"";return`<script>
12155
12173
  if ('serviceWorker' in navigator) {
12156
12174
  window.addEventListener('load', function() {
12157
- navigator.serviceWorker.register('/${u6($)}')
12175
+ navigator.serviceWorker.register('/${m6($)}')
12158
12176
  .then(function(registration) {
12159
12177
  console.log('[PWA] Service Worker registered:', registration.scope);
12160
12178
  })
@@ -12163,46 +12181,46 @@ if ('serviceWorker' in navigator) {
12163
12181
  });
12164
12182
  });
12165
12183
  }
12166
- </script>`}function RB(){return'<link rel="manifest" href="/manifest.json">'}function NB($){return`<meta name="theme-color" content="${m6($)}">`}function m6($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var SX=b(()=>{kX()});import f0 from"path";import{deriveLayoutGroup as MB}from"stx-router/layout-metadata";function yX($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function TB($,Z){let Y=$.length,J=Z,X=!0,Q=[],G=(K)=>K+9<=Y&&$[K]==="<"&&$[K+1]==="/"&&($[K+2]==="s"||$[K+2]==="S")&&($[K+3]==="c"||$[K+3]==="C")&&($[K+4]==="r"||$[K+4]==="R")&&($[K+5]==="i"||$[K+5]==="I")&&($[K+6]==="p"||$[K+6]==="P")&&($[K+7]==="t"||$[K+7]==="T")&&($[K+8]===">"||/\s/.test($[K+8]));while(J<Y){let K=$[J];if(G(J))return J;if(K==="/"&&$[J+1]==="/"){if(J=$.indexOf(`
12184
+ </script>`}function R_(){return'<link rel="manifest" href="/manifest.json">'}function N_($){return`<meta name="theme-color" content="${u6($)}">`}function u6($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var SX=b(()=>{kX()});import f0 from"path";import{deriveLayoutGroup as M_}from"stx-router/layout-metadata";function yX($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function T_($,Z){let Y=$.length,J=Z,X=!0,Q=[],G=(K)=>K+9<=Y&&$[K]==="<"&&$[K+1]==="/"&&($[K+2]==="s"||$[K+2]==="S")&&($[K+3]==="c"||$[K+3]==="C")&&($[K+4]==="r"||$[K+4]==="R")&&($[K+5]==="i"||$[K+5]==="I")&&($[K+6]==="p"||$[K+6]==="P")&&($[K+7]==="t"||$[K+7]==="T")&&($[K+8]===">"||/\s/.test($[K+8]));while(J<Y){let K=$[J];if(G(J))return J;if(K==="/"&&$[J+1]==="/"){if(J=$.indexOf(`
12167
12185
  `,J+2),J===-1)return-1;J+=1,X=!0;continue}if(K==="/"&&$[J+1]==="*"){let z=$.indexOf("*/",J+2);if(z===-1)return-1;J=z+2,X=!0;continue}if(K==="/"&&X){let z=J+1,q=!1;while(z<Y){let W=$[z];if(W==="\\"){z+=2;continue}if(W==="[")q=!0;else if(W==="]")q=!1;else if(W==="/"&&!q){z++;break}else if(W===`
12168
12186
  `){z=-1;break}z++}if(z===-1){J++,X=!1;continue}while(z<Y&&/[a-z]/.test($[z]))z++;J=z,X=!1;continue}if(K==="'"||K==='"'){let z=K;J++;while(J<Y){if($[J]==="\\"){J+=2;continue}if($[J]===z){J++;break}if($[J]===`
12169
- `)break;J++}X=!1;continue}if(K==="`"){J++;while(J<Y){if($[J]==="\\"){J+=2;continue}if($[J]==="`"){J++;break}if($[J]==="$"&&$[J+1]==="{"){Q.push(!0),J+=2,X=!0;break}J++}if(Q.length===0)X=!1;continue}if(K==="}"&&Q.length>0){Q.pop(),J++;while(J<Y){if($[J]==="\\"){J+=2;continue}if($[J]==="`"){J++,X=!1;break}if($[J]==="$"&&$[J+1]==="{"){Q.push(!0),J+=2,X=!0;break}J++}continue}if(/\s/.test(K));else if(/[)\].\w$]/.test(K))X=!1;else X=!0;J++}return-1}function a4($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),J=new RegExp(`<script\\b(?=[^>]*\\b${Y}(?:\\s|=|/?>))[^>]*>`,"i").exec($);if(!J)return null;let X=J.index+J[0].length,Q=$.indexOf("</script>",X);if(Q===-1)return null;let G=$.indexOf(">",Q);if(G===-1)return null;return{start:J.index,end:G+1}}function PX($){let Z=0;while(Z<$.length){let Y=$.indexOf("<",Z);if(Y===-1)return-1;if($.startsWith("<!--",Y)){let Q=$.indexOf("-->",Y+4);Z=Q===-1?$.length:Q+3;continue}let J=$.slice(Y),X=/^<style\b[^>]*>/i.exec(J);if(X){let Q=$.toLowerCase().indexOf("</style>",Y+X[0].length);Z=Q===-1?$.length:Q+8;continue}if(/^<script\b[^>]*>/i.test(J))return Y;Z=Y+1}return-1}function IB($){let Z=a4($,"data-stx-runtime");if(!Z)return $;let Y=PX($);if(Y===-1||Y===Z.start)return $;let J=$.slice(Z.start,Z.end),X=$.slice(0,Z.start)+$.slice(Z.end),Q=PX(X);if(Q===-1)return J+`
12187
+ `)break;J++}X=!1;continue}if(K==="`"){J++;while(J<Y){if($[J]==="\\"){J+=2;continue}if($[J]==="`"){J++;break}if($[J]==="$"&&$[J+1]==="{"){Q.push(!0),J+=2,X=!0;break}J++}if(Q.length===0)X=!1;continue}if(K==="}"&&Q.length>0){Q.pop(),J++;while(J<Y){if($[J]==="\\"){J+=2;continue}if($[J]==="`"){J++,X=!1;break}if($[J]==="$"&&$[J+1]==="{"){Q.push(!0),J+=2,X=!0;break}J++}continue}if(/\s/.test(K));else if(/[)\].\w$]/.test(K))X=!1;else X=!0;J++}return-1}function a4($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),J=new RegExp(`<script\\b(?=[^>]*\\b${Y}(?:\\s|=|/?>))[^>]*>`,"i").exec($);if(!J)return null;let X=J.index+J[0].length,Q=$.indexOf("</script>",X);if(Q===-1)return null;let G=$.indexOf(">",Q);if(G===-1)return null;return{start:J.index,end:G+1}}function PX($){let Z=0;while(Z<$.length){let Y=$.indexOf("<",Z);if(Y===-1)return-1;if($.startsWith("<!--",Y)){let Q=$.indexOf("-->",Y+4);Z=Q===-1?$.length:Q+3;continue}let J=$.slice(Y),X=/^<style\b[^>]*>/i.exec(J);if(X){let Q=$.toLowerCase().indexOf("</style>",Y+X[0].length);Z=Q===-1?$.length:Q+8;continue}if(/^<script\b[^>]*>/i.test(J))return Y;Z=Y+1}return-1}function I_($){let Z=a4($,"data-stx-runtime");if(!Z)return $;let Y=PX($);if(Y===-1||Y===Z.start)return $;let J=$.slice(Z.start,Z.end),X=$.slice(0,Z.start)+$.slice(Z.end),Q=PX(X);if(Q===-1)return J+`
12170
12188
  `+X;return X.slice(0,Q)+J+`
12171
- `+X.slice(Q)}async function L0($,Z,Y,J,X){if(J.ssr===!1&&!J.autoShell&&J.buildMode==="spa")return $;let Q=!Z.__stxProcessingDepth;if(!Z.__stxProcessingDepth)Z.__stxProcessingDepth=0;if(Z.__stxProcessingDepth++,!Z.__onceStore)Z.__onceStore=new Set;if((J.debug||!t5()&&!V4())&&Y&&Y.endsWith(".stx"))o3($,Y);try{return await f9.timeAsync("template-processing",async()=>{let G=await DB($,Z,Y,J,X);if(Q)G=C6(G);if(Q&&J.autoShell&&J.buildMode!=="compile"){let K=J.app?.head||{},q=(Z.__stx_runtime_head||null)??H7(),W=(Z.__stx_head_raw||"").trim(),U,j=W.match(/<title[^>]*>([\s\S]*?)<\/title>/i);if(j)U=j[1].trim(),W=W.replace(j[0],"").trim();let B=Z.__sections?.title,_=q.title||U||B,H={...K,..._&&{title:_},meta:[...K.meta||[],...q.meta||[]],link:[...K.link||[],...q.link||[]],script:[...K.script||[],...q.script||[]],headRaw:[K.headRaw,W].filter(Boolean).join(`
12172
- `),...q.htmlAttrs&&{htmlAttrs:{...K.htmlAttrs||{},...q.htmlAttrs}},...q.bodyAttrs&&{bodyAttrs:{...K.bodyAttrs||{},...q.bodyAttrs}}},L=S6(G);if(G=qJ(G,H),L)G=zJ(G,K);let V=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(V&&G.includes("<head")){let F=V[1],w=MB(F);G=G.replace("<head>",`<head>
12189
+ `+X.slice(Q)}async function L0($,Z,Y,J,X){if(J.ssr===!1&&!J.autoShell&&J.buildMode==="spa")return $;let Q=!Z.__stxProcessingDepth;if(!Z.__stxProcessingDepth)Z.__stxProcessingDepth=0;if(Z.__stxProcessingDepth++,!Z.__onceStore)Z.__onceStore=new Set;if((J.debug||!t5()&&!V4())&&Y&&Y.endsWith(".stx"))o3($,Y);try{return await f9.timeAsync("template-processing",async()=>{let G=await D_($,Z,Y,J,X);if(Q)G=C6(G);if(Q&&J.autoShell&&J.buildMode!=="compile"){let K=J.app?.head||{},q=(Z.__stx_runtime_head||null)??H7(),W=(Z.__stx_head_raw||"").trim(),U,j=W.match(/<title[^>]*>([\s\S]*?)<\/title>/i);if(j)U=j[1].trim(),W=W.replace(j[0],"").trim();let _=Z.__sections?.title,B=q.title||U||_,H={...K,...B&&{title:B},meta:[...K.meta||[],...q.meta||[]],link:[...K.link||[],...q.link||[]],script:[...K.script||[],...q.script||[]],headRaw:[K.headRaw,W].filter(Boolean).join(`
12190
+ `),...q.htmlAttrs&&{htmlAttrs:{...K.htmlAttrs||{},...q.htmlAttrs}},...q.bodyAttrs&&{bodyAttrs:{...K.bodyAttrs||{},...q.bodyAttrs}}},L=S6(G);if(G=qJ(G,H),L)G=zJ(G,K);let V=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(V&&G.includes("<head")){let F=V[1],w=M_(F);G=G.replace("<head>",`<head>
12173
12191
  <meta name="stx-layout" content="${yX(F)}">
12174
- <meta name="stx-layout-group" content="${yX(w)}">`)}let O=G.match(/function (__stx_setup_\d+_\d+)\(/);if(O&&G.includes("<body")&&!G.match(/<body[^>]*data-stx=/)){G=G.replace(/<body([^>]*)>/,`<body$1 data-stx="${O[1]}">`);let F=new RegExp(`(<(?!body)[a-zA-Z][^>]*) data-stx="${O[1]}"`,"i");G=G.replace(F,"$1")}}if(Q)G=KJ(G),G=IB(G);if(Q)try{let{getStoreScript:K}=await Promise.resolve().then(() => (FJ(),LJ)),z=J.storesDir,q=await K(z);if(q){let W=`<script data-stx-stores>${q}</script>`,U=a4(G,"data-stx-runtime");if(U)G=G.slice(0,U.end)+`
12192
+ <meta name="stx-layout-group" content="${yX(w)}">`)}let O=G.match(/function (__stx_setup_\d+_\d+)\(/);if(O&&G.includes("<body")&&!G.match(/<body[^>]*data-stx=/)){G=G.replace(/<body([^>]*)>/,`<body$1 data-stx="${O[1]}">`);let F=new RegExp(`(<(?!body)[a-zA-Z][^>]*) data-stx="${O[1]}"`,"i");G=G.replace(F,"$1")}}if(Q)G=KJ(G),G=I_(G);if(Q)try{let{getStoreScript:K}=await Promise.resolve().then(() => (FJ(),LJ)),z=J.storesDir,q=await K(z);if(q){let W=`<script data-stx-stores>${q}</script>`,U=a4(G,"data-stx-runtime");if(U)G=G.slice(0,U.end)+`
12175
12193
  `+W+G.slice(U.end)}}catch{}if(Q)try{let{getComposableScript:K}=await Promise.resolve().then(() => (AJ(),wJ)),z=J.composablesDir,q=await K(z);if(q){let W=`<script data-stx-composables>${q}</script>`,U=a4(G,"data-stx-stores")||a4(G,"data-stx-runtime");if(U)G=G.slice(0,U.end)+`
12176
- `+W+G.slice(U.end)}}catch{}if(Q&&Z.__stx_inject_css!==!1)G=await Y$(G);return G=G.replace(/\x00STX_ESCAPED_AT\x00/g,"@"),G})}catch(G){if(G instanceof N4)throw G;let K=G instanceof Error?G.message:String(G),z=new m1(`Template processing failed: ${K}`,Y,void 0,void 0,$.substring(0,200)+($.length>200?"...":""));if(a0.log(z,{filePath:Y,context:Z}),w3.logDetailedError(z,{filePath:Y,template:$.substring(0,500)}),J.debug)throw z;return F3.createFallbackContent("Template Processing",z)}}async function DB($,Z,Y,J,X){let Q=process.cwd(),G={...J,partialsDir:J.partialsDir&&!f0.isAbsolute(J.partialsDir)?f0.resolve(Q,J.partialsDir):J.partialsDir,componentsDir:J.componentsDir&&!f0.isAbsolute(J.componentsDir)?f0.resolve(Q,J.componentsDir):J.componentsDir,layoutsDir:J.layoutsDir&&!f0.isAbsolute(J.layoutsDir)?f0.resolve(Q,J.layoutsDir):J.layoutsDir},K=G,z=$;await bB(Y,Z),kB(Z,K),z=await W5(()=>iY(z,Z,Y,K),z,(O)=>{a0.log(O,{filePath:Y,phase:"pre-processing-middleware"},"warning"),console.warn(`[stx] pre-processing middleware failed for ${Y}: ${O.message}`)}),z=z.replace(/\{\{--[\s\S]*?--\}\}/g,"");let q=Z1(z,x5,(O,F)=>`\x00STX_HTML_COMMENT_${F}\x00`);z=q.output;let W=q.tokens,U=(O)=>W.length===0?O:O.replace(/\x00STX_HTML_COMMENT_(\d+)\x00/g,(F,w)=>W[Number(w)]??""),j="\x00STX_ESCAPED_AT\x00";z=z.replace(/@@/g,j),z=z.replace(/@\{\{([\s\S]*?)\}\}/g,(O,F)=>{return`{{ ${F} }}`}),z=JJ(z),z=await jJ(z,Y,X);let B={};z=E6(z,B);let _={...Z.__sections||{}},H="",L=/@nolayout\b/.test(z);if(L)z=z.replace(/@nolayout\b\s*/g,"");let V=z.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(V)H=V[1],z=z.replace(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/g,"");if(!H&&!L&&K.defaultLayout){let O=/<!DOCTYPE\s/i.test(z),F=/@section\s*\(/.test(z);if(!O||F){let w="",A=f0.dirname(Y),R=K.layoutsDir?f0.dirname(K.layoutsDir):process.cwd();for(let N=0;N<20;N++){let M=f0.join(A,"_layout.stx");if(await o(M)){w=M;break}let T=f0.dirname(A);if(T===A||T.length<R.length)break;A=T}if(w)H=w;else if(K.layoutsDir){let N=f0.isAbsolute(K.layoutsDir)?K.layoutsDir:f0.resolve(process.cwd(),K.layoutsDir),M=f0.join(N,`${K.defaultLayout}.stx`);if(await o(M))H=M}if(H&&!F)z=`@section('content')
12194
+ `+W+G.slice(U.end)}}catch{}if(Q&&Z.__stx_inject_css!==!1)G=await Y$(G);return G=G.replace(/\x00STX_ESCAPED_AT\x00/g,"@"),G})}catch(G){if(G instanceof N4)throw G;let K=G instanceof Error?G.message:String(G),z=new u1(`Template processing failed: ${K}`,Y,void 0,void 0,$.substring(0,200)+($.length>200?"...":""));if(a0.log(z,{filePath:Y,context:Z}),w3.logDetailedError(z,{filePath:Y,template:$.substring(0,500)}),J.debug)throw z;return F3.createFallbackContent("Template Processing",z)}}async function D_($,Z,Y,J,X){let Q=process.cwd(),G={...J,partialsDir:J.partialsDir&&!f0.isAbsolute(J.partialsDir)?f0.resolve(Q,J.partialsDir):J.partialsDir,componentsDir:J.componentsDir&&!f0.isAbsolute(J.componentsDir)?f0.resolve(Q,J.componentsDir):J.componentsDir,layoutsDir:J.layoutsDir&&!f0.isAbsolute(J.layoutsDir)?f0.resolve(Q,J.layoutsDir):J.layoutsDir},K=G,z=$;await b_(Y,Z),k_(Z,K),z=await W5(()=>iY(z,Z,Y,K),z,(O)=>{a0.log(O,{filePath:Y,phase:"pre-processing-middleware"},"warning"),console.warn(`[stx] pre-processing middleware failed for ${Y}: ${O.message}`)}),z=z.replace(/\{\{--[\s\S]*?--\}\}/g,"");let q=Z1(z,x5,(O,F)=>`\x00STX_HTML_COMMENT_${F}\x00`);z=q.output;let W=q.tokens,U=(O)=>W.length===0?O:O.replace(/\x00STX_HTML_COMMENT_(\d+)\x00/g,(F,w)=>W[Number(w)]??""),j="\x00STX_ESCAPED_AT\x00";z=z.replace(/@@/g,j),z=z.replace(/@\{\{([\s\S]*?)\}\}/g,(O,F)=>{return`{{ ${F} }}`}),z=JJ(z),z=await jJ(z,Y,X);let _={};z=E6(z,_);let B={...Z.__sections||{}},H="",L=/@nolayout\b/.test(z);if(L)z=z.replace(/@nolayout\b\s*/g,"");let V=z.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(V)H=V[1],z=z.replace(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/g,"");if(!H&&!L&&K.defaultLayout){let O=/<!DOCTYPE\s/i.test(z),F=/@section\s*\(/.test(z);if(!O||F){let w="",A=f0.dirname(Y),R=K.layoutsDir?f0.dirname(K.layoutsDir):process.cwd();for(let N=0;N<20;N++){let M=f0.join(A,"_layout.stx");if(await o(M)){w=M;break}let T=f0.dirname(A);if(T===A||T.length<R.length)break;A=T}if(w)H=w;else if(K.layoutsDir){let N=f0.isAbsolute(K.layoutsDir)?K.layoutsDir:f0.resolve(process.cwd(),K.layoutsDir),M=f0.join(N,`${K.defaultLayout}.stx`);if(await o(M))H=M}if(H&&!F)z=`@section('content')
12177
12195
  ${z.trim()}
12178
- @endsection`}}if(z=z.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(O,F,w)=>{return _[F]=w,""}),z=z.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*([^)]+?)\s*\)/g,(O,F,w)=>{if(/^(['"]).*\1$/.test(w.trim()))return O;try{let A=Y0(w.trim(),Z);if(A===void 0)return O;return _[F]=String(A??""),""}catch{return O}}),z=z.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@endsection|@show)/g,(O,F,w)=>{if(w.includes("@parent"))_[F]=w.replace("@parent",r1);else _[F]=w.trim();return""}),Z.__sections=_,z=z.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?\)/g,(O,F,w)=>{return _[F]||w||""}),!("slot"in Z)||Z.slot===void 0)z=z.replace(/\{\{\s*slot\s*\}\}/g,()=>{return _.content||""});if(z=k6(z,B),H){let O=[],F=O1(z),w=Z1(F.output,e1,(A,R)=>`\x00STX_ORPHAN_STYLE_${R}\x00`);if(z=w.output.replace(/\x00STX_(SCRIPT|ORPHAN_STYLE)_(\d+)\x00/g,(A,R,N)=>{let M=R==="SCRIPT"?F.scripts[Number(N)]:w.tokens[Number(N)];if(M)O.push(M);return""}),O.length>0){let A=O.join(`
12179
- `);_.content=_.content?`${_.content}
12180
- ${A}`:A,Z.__sections=_}}if(H)try{let O;if(f0.isAbsolute(H))O=H,X.add(H);else O=await W5(()=>f7(H,Y,G,X),null,()=>{throw new m1(`Failed to resolve layout path: ${H}`,Y,void 0,void 0,`Layout referenced from ${Y}`)});if(!O){let M=`Layout not found: ${H} (referenced from ${Y})`;if(a0.log(Error(M),{layoutPath:H,filePath:Y},"warning"),G.debug)throw new m1(M,Y);return z}let F=await W5(()=>Bun.file(O).text(),"",()=>{throw new m1(`Failed to read layout file: ${O}`,Y,void 0,void 0,"Layout content could not be loaded")}),w=F.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(w){if(G.debug)console.log(`Found nested layout: ${w[1]} in ${O}`);let M={},T=F.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(D,y,S)=>{return M[y]=S.trim(),""});for(let[D,y]of Object.entries(M))if(_[D]&&_[D].includes(r1)){let S=_[D].indexOf(r1);_[D]=_[D].slice(0,S)+y+_[D].slice(S+r1.length)}else if(!_[D])_[D]=y;let I={...Z,__sections:_},E=`@layout('${w[1]}')${T}`;return await L0(E,I,O,G,X)}let A=F.replace(/\{\{--[\s\S]*?--\}\}/g,""),R=E6(A,B),N={};return R=R.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(M,T,I)=>{return N[T]=I.trim(),`@slot('${T}')`}),R=R.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(M,T,I)=>{if(_[T]){let E=_[T];if(E.includes(r1)){let D=N[T]||"",y=E.indexOf(r1);E=E.slice(0,y)+D+E.slice(y+r1.length)}return E}return I||""}),R=EB(R,_),R=R.replace(/\{\{\s*slot\s*\}\}/g,()=>{return _.content||""}),R=k6(R,B),Z.__originalFilePath=Y,z=await CX(R,Z,O,G,X),z=`<!-- stx-layout: ${H} -->
12181
- ${z}`,U(z)}catch(O){return a0.log(O instanceof Error?O:Error(String(O)),{layoutPath:H,filePath:Y},"error"),`[Error processing layout: ${O instanceof Error?O.message:String(O)}]`}return U(await CX(z,Z,Y,G,X))}function EB($,Z){return $.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(Y,J,X)=>{let Q=Z[J];if(Q!==void 0){if(!new RegExp(`@(?:yield|slot)\\(\\s*['"]${J.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}['"]`).test(Q))return Q}return X||""})}function kB($,Z){if($.__stx_sfc_mode=!0,$.__stx_options=Z,Z.buildMode)$.__stx_buildMode=Z.buildMode;let Y=Z.envPrefix||"STX_PUBLIC_",J={};for(let[X,Q]of Object.entries(process.env))if(X.startsWith(Y)&&Q!==void 0)J[X]=Q;$.$env=J}async function bB($,Z){await W5(()=>aY($,Z),void 0,(Y)=>{a0.log(Y,{filePath:$,phase:"view-composer"},"warning"),console.warn(`[stx] view composer failed for ${$}: ${Y.message}`)})}async function SB($,Z,Y){let J=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,X;while((X=J.exec($))!==null){let Q=X[1],G=X[2];if(!/\bserver\b/.test(Q)||!G.trim())continue;try{let{extractVariables:z}=await Promise.resolve().then(() => (c5(),E$));await z(G,Z,Y,{preserveExisting:!0})}catch(z){let q=z instanceof Error?z:Error(String(z));a0.log(q,{filePath:Y,phase:"server-script-extraction"},"warning"),console.warn(`[stx] server <script> extraction failed in ${Y}: ${q.message}`)}}}async function yB($,Z,Y){try{let{interpolateScriptsInTemplate:J}=await Promise.resolve().then(() => (Y1(),P9));return J($,Z,{skipServer:!0})}catch(J){let X=J instanceof Error?J:Error(String(J));return a0.log(X,{filePath:Y,phase:"script-expression-interpolation"},"warning"),console.warn(`[stx] script expression interpolation failed in ${Y}: ${X.message}`),$}}async function CX($,Z,Y,J,X){let Q=$,G=J;if(await SB(Q,Z,Y),Q=await yB(Q,Z,Y),Q=await dY(Q,Z,Y),Q=await uY(Q,Z,Y),Q=await C2(Q,Z,Y,G),$5(Q))Q=y7(Q,Z),Q=C7(Q,Z);Q=P7(Q);let{processStreamDirectives:K}=await Promise.resolve().then(() => (n3(),i3));Q=K(Q,Z),Q=M6(Q,Z,Y,G),Q=await p4(Q,Z,Y,G,X),Q=await QJ(Q,Z,Y,G,X),Q=e6(Q,Z,Y,G);let{processDeferDirectives:z}=await Promise.resolve().then(() => NJ);Q=z(Q,Z,Y);let{processTeleportDirectives:q}=await Promise.resolve().then(() => TJ);Q=q(Q,Z,Y);let{processTransitionDirectives:W,processTransitionAttributes:U}=await Promise.resolve().then(() => kJ);Q=W(Q,Z,Y),Q=U(Q);let{processErrorBoundaryDirectives:j}=await Promise.resolve().then(() => SJ);Q=j(Q,Z,Y);let{processSuspenseDirectives:B}=await Promise.resolve().then(() => yJ);Q=B(Q,Z,Y);let{processAsyncDirectives:_}=await Promise.resolve().then(() => xJ);Q=_(Q,Z,Y);let{processKeepAliveDirectives:H}=await Promise.resolve().then(() => gJ);Q=H(Q,Z,Y);let{processVirtualListDirectives:L,processVirtualGridDirectives:V,processInfiniteListDirectives:O}=await Promise.resolve().then(() => (lJ(),pJ));Q=L(Q,Z,Y),Q=V(Q,Z,Y),Q=O(Q,Z,Y);let{processPartialHydrationDirectives:F,processStaticDirectives:w}=await Promise.resolve().then(() => (QX(),XX));Q=F(Q,Z,Y),Q=w(Q);let{processComputedDirectives:A,processWatchDirectives:R}=await Promise.resolve().then(() => (LX(),OX));Q=A(Q,Z,Y),Q=R(Q,Z,Y);let{processFormValidationDirectives:N}=await Promise.resolve().then(() => (RX(),AX));Q=N(Q,Z,Y);let{processHeadDirective:M,processTitleDirective:T,processMetaDirective:I,resetHead:E}=await Promise.resolve().then(() => (p5(),L7));if(!Z.__stx_head_preset&&!Z.__stx_runtime_head)E();let D=M(Q);if(Q=D.content,D.headContent)Z.__stx_head_raw=`${Z.__stx_head_raw||""}${D.headContent}
12182
- `;if(Q=T(Q,Z),Q=I(Q,Z),Q=sY(Q),Q=P3(Q,Z),Q=y2(Q),Q=lY(Q),Q=await D6(Q,Z,Y,G,X),Q=await p4(Q,Z,Y,G,X),Q=Q.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/g,""),Q=C6(Q),Q=c1(Q,Z,Y),Q=C3(Q,Z),Q=v3(Q,Z),Q=C4(Q,Z),Q=p2(Q,Z),Q=l2(Q,Z),Q=await w2(Q,Z,Y,G),Q=await k8(Q,Z,Y),Q=await s2(Q,Z,Y,G),Q=i6(Q,Z,Y,G),Q=fZ(Q,Z,Y,G),Q=gZ(Q,Z,Y),Q=hZ(Q,Z,Y,G),Q=k2(Q,Z,Y,G),Q=y6(Q,Z),Q=P6(Q),Q=_J(Q),!G.skipEventDirectives)Q=B2(Q,Z,Y);if(Q=F2(Q,Z,Y),G.debug){let l=/\bx-data\s*=/.test(Q),a=l$($);if(l&&a)console.warn(`[stx] ${Y}: Template mixes Alpine-style (x-data) and signals (state/derived/effect) reactivity.
12196
+ @endsection`}}if(z=z.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(O,F,w)=>{return B[F]=w,""}),z=z.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*([^)]+?)\s*\)/g,(O,F,w)=>{if(/^(['"]).*\1$/.test(w.trim()))return O;try{let A=Y0(w.trim(),Z);if(A===void 0)return O;return B[F]=String(A??""),""}catch{return O}}),z=z.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@endsection|@show)/g,(O,F,w)=>{if(w.includes("@parent"))B[F]=w.replace("@parent",r1);else B[F]=w.trim();return""}),Z.__sections=B,z=z.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?\)/g,(O,F,w)=>{return B[F]||w||""}),!("slot"in Z)||Z.slot===void 0)z=z.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""});if(z=k6(z,_),H){let O=[],F=O1(z),w=Z1(F.output,e1,(A,R)=>`\x00STX_ORPHAN_STYLE_${R}\x00`);if(z=w.output.replace(/\x00STX_(SCRIPT|ORPHAN_STYLE)_(\d+)\x00/g,(A,R,N)=>{let M=R==="SCRIPT"?F.scripts[Number(N)]:w.tokens[Number(N)];if(M)O.push(M);return""}),O.length>0){let A=O.join(`
12197
+ `);B.content=B.content?`${B.content}
12198
+ ${A}`:A,Z.__sections=B}}if(H)try{let O;if(f0.isAbsolute(H))O=H,X.add(H);else O=await W5(()=>f7(H,Y,G,X),null,()=>{throw new u1(`Failed to resolve layout path: ${H}`,Y,void 0,void 0,`Layout referenced from ${Y}`)});if(!O){let M=`Layout not found: ${H} (referenced from ${Y})`;if(a0.log(Error(M),{layoutPath:H,filePath:Y},"warning"),G.debug)throw new u1(M,Y);return z}let F=await W5(()=>Bun.file(O).text(),"",()=>{throw new u1(`Failed to read layout file: ${O}`,Y,void 0,void 0,"Layout content could not be loaded")}),w=F.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(w){if(G.debug)console.log(`Found nested layout: ${w[1]} in ${O}`);let M={},T=F.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(D,y,S)=>{return M[y]=S.trim(),""});for(let[D,y]of Object.entries(M))if(B[D]&&B[D].includes(r1)){let S=B[D].indexOf(r1);B[D]=B[D].slice(0,S)+y+B[D].slice(S+r1.length)}else if(!B[D])B[D]=y;let I={...Z,__sections:B},E=`@layout('${w[1]}')${T}`;return await L0(E,I,O,G,X)}let A=F.replace(/\{\{--[\s\S]*?--\}\}/g,""),R=E6(A,_),N={};return R=R.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@show|@endsection)/g,(M,T,I)=>{return N[T]=I.trim(),`@slot('${T}')`}),R=R.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(M,T,I)=>{if(B[T]){let E=B[T];if(E.includes(r1)){let D=N[T]||"",y=E.indexOf(r1);E=E.slice(0,y)+D+E.slice(y+r1.length)}return E}return I||""}),R=E_(R,B),R=R.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""}),R=k6(R,_),Z.__originalFilePath=Y,z=await CX(R,Z,O,G,X),z=`<!-- stx-layout: ${H} -->
12199
+ ${z}`,U(z)}catch(O){return a0.log(O instanceof Error?O:Error(String(O)),{layoutPath:H,filePath:Y},"error"),`[Error processing layout: ${O instanceof Error?O.message:String(O)}]`}return U(await CX(z,Z,Y,G,X))}function E_($,Z){return $.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(Y,J,X)=>{let Q=Z[J];if(Q!==void 0){if(!new RegExp(`@(?:yield|slot)\\(\\s*['"]${J.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}['"]`).test(Q))return Q}return X||""})}function k_($,Z){if($.__stx_sfc_mode=!0,$.__stx_options=Z,Z.buildMode)$.__stx_buildMode=Z.buildMode;let Y=Z.envPrefix||"STX_PUBLIC_",J={};for(let[X,Q]of Object.entries(process.env))if(X.startsWith(Y)&&Q!==void 0)J[X]=Q;$.$env=J}async function b_($,Z){await W5(()=>aY($,Z),void 0,(Y)=>{a0.log(Y,{filePath:$,phase:"view-composer"},"warning"),console.warn(`[stx] view composer failed for ${$}: ${Y.message}`)})}async function S_($,Z,Y){let J=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,X;while((X=J.exec($))!==null){let Q=X[1],G=X[2];if(!/\bserver\b/.test(Q)||!G.trim())continue;try{let{extractVariables:z}=await Promise.resolve().then(() => (c5(),E$));await z(G,Z,Y,{preserveExisting:!0})}catch(z){let q=z instanceof Error?z:Error(String(z));a0.log(q,{filePath:Y,phase:"server-script-extraction"},"warning"),console.warn(`[stx] server <script> extraction failed in ${Y}: ${q.message}`)}}}async function y_($,Z,Y){try{let{interpolateScriptsInTemplate:J}=await Promise.resolve().then(() => (Y1(),P9));return J($,Z,{skipServer:!0})}catch(J){let X=J instanceof Error?J:Error(String(J));return a0.log(X,{filePath:Y,phase:"script-expression-interpolation"},"warning"),console.warn(`[stx] script expression interpolation failed in ${Y}: ${X.message}`),$}}async function CX($,Z,Y,J,X){let Q=$,G=J;if(await S_(Q,Z,Y),Q=await y_(Q,Z,Y),Q=await dY(Q,Z,Y),Q=await mY(Q,Z,Y),Q=await C2(Q,Z,Y,G),$5(Q))Q=y7(Q,Z),Q=C7(Q,Z);Q=P7(Q);let{processStreamDirectives:K}=await Promise.resolve().then(() => (n3(),i3));Q=K(Q,Z),Q=M6(Q,Z,Y,G),Q=await p4(Q,Z,Y,G,X),Q=await QJ(Q,Z,Y,G,X),Q=e6(Q,Z,Y,G);let{processDeferDirectives:z}=await Promise.resolve().then(() => NJ);Q=z(Q,Z,Y);let{processTeleportDirectives:q}=await Promise.resolve().then(() => TJ);Q=q(Q,Z,Y);let{processTransitionDirectives:W,processTransitionAttributes:U}=await Promise.resolve().then(() => kJ);Q=W(Q,Z,Y),Q=U(Q);let{processErrorBoundaryDirectives:j}=await Promise.resolve().then(() => SJ);Q=j(Q,Z,Y);let{processSuspenseDirectives:_}=await Promise.resolve().then(() => yJ);Q=_(Q,Z,Y);let{processAsyncDirectives:B}=await Promise.resolve().then(() => xJ);Q=B(Q,Z,Y);let{processKeepAliveDirectives:H}=await Promise.resolve().then(() => gJ);Q=H(Q,Z,Y);let{processVirtualListDirectives:L,processVirtualGridDirectives:V,processInfiniteListDirectives:O}=await Promise.resolve().then(() => (lJ(),pJ));Q=L(Q,Z,Y),Q=V(Q,Z,Y),Q=O(Q,Z,Y);let{processPartialHydrationDirectives:F,processStaticDirectives:w}=await Promise.resolve().then(() => (QX(),XX));Q=F(Q,Z,Y),Q=w(Q);let{processComputedDirectives:A,processWatchDirectives:R}=await Promise.resolve().then(() => (LX(),OX));Q=A(Q,Z,Y),Q=R(Q,Z,Y);let{processFormValidationDirectives:N}=await Promise.resolve().then(() => (RX(),AX));Q=N(Q,Z,Y);let{processHeadDirective:M,processTitleDirective:T,processMetaDirective:I,resetHead:E}=await Promise.resolve().then(() => (p5(),L7));if(!Z.__stx_head_preset&&!Z.__stx_runtime_head)E();let D=M(Q);if(Q=D.content,D.headContent)Z.__stx_head_raw=`${Z.__stx_head_raw||""}${D.headContent}
12200
+ `;if(Q=T(Q,Z),Q=I(Q,Z),Q=sY(Q),Q=P3(Q,Z),Q=y2(Q),Q=lY(Q),Q=await D6(Q,Z,Y,G,X),Q=await p4(Q,Z,Y,G,X),Q=Q.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/g,""),Q=C6(Q),Q=c1(Q,Z,Y),Q=C3(Q,Z),Q=v3(Q,Z),Q=C4(Q,Z),Q=p2(Q,Z),Q=l2(Q,Z),Q=await w2(Q,Z,Y,G),Q=await k8(Q,Z,Y),Q=await s2(Q,Z,Y,G),Q=i6(Q,Z,Y,G),Q=fZ(Q,Z,Y,G),Q=gZ(Q,Z,Y),Q=hZ(Q,Z,Y,G),Q=k2(Q,Z,Y,G),Q=y6(Q,Z),Q=P6(Q),Q=BJ(Q),!G.skipEventDirectives)Q=_2(Q,Z,Y);if(Q=F2(Q,Z,Y),G.debug){let l=/\bx-data\s*=/.test(Q),a=l$($);if(l&&a)console.warn(`[stx] ${Y}: Template mixes Alpine-style (x-data) and signals (state/derived/effect) reactivity.
12183
12201
  Both work on the same page, but they manage separate scopes.
12184
- Prefer signals (state/derived/effect) for new components.`)}Q=$J(Q,Z),Q=await L1(Q,Z,Y),Q=HJ(Q),Q=OJ(Q),Q=X2(Q);let{processXElementDirectives:y}=await Promise.resolve().then(() => TX);Q=y(Q);let S=Z.__originalFilePath||Y,k=P5(Z);if(Q=await v7(Q,G,S,k),Q=h2(Q,Z),Q=await nY(Q,Z,Y,G),G.media?.image?.autoSiblings){let l=G.publicDir||"public",{rewriteImagesWithSiblings:a}=await Promise.resolve().then(() => (DX(),IX));Q=await a(Q,{publicDir:l})}if(G.seo?.enabled)Q=dZ(Q,Z,G);let C=(l,a,h=!0)=>{if(!a)return l;let u=a.match(/<title\b[^>]*>[\s\S]*?<\/title>/i),P=l.match(/<title\b[^>]*>[\s\S]*?<\/title>/i);if(u&&P){if(h)l=l.replace(P[0],u[0]);if(a=a.replace(u[0],"").trim(),!a)return l}if(/<\/head>/i.test(l))return l.replace(/<\/head>/i,`${a}
12202
+ Prefer signals (state/derived/effect) for new components.`)}Q=$J(Q,Z),Q=await L1(Q,Z,Y),Q=HJ(Q),Q=OJ(Q),Q=X2(Q);let{processXElementDirectives:y}=await Promise.resolve().then(() => TX);Q=y(Q);let S=Z.__originalFilePath||Y,k=P5(Z);if(Q=await v7(Q,G,S,k),Q=h2(Q,Z),Q=await nY(Q,Z,Y,G),G.media?.image?.autoSiblings){let l=G.publicDir||"public",{rewriteImagesWithSiblings:a}=await Promise.resolve().then(() => (DX(),IX));Q=await a(Q,{publicDir:l})}if(G.seo?.enabled)Q=dZ(Q,Z,G);let C=(l,a,h=!0)=>{if(!a)return l;let m=a.match(/<title\b[^>]*>[\s\S]*?<\/title>/i),P=l.match(/<title\b[^>]*>[\s\S]*?<\/title>/i);if(m&&P){if(h)l=l.replace(P[0],m[0]);if(a=a.replace(m[0],"").trim(),!a)return l}if(/<\/head>/i.test(l))return l.replace(/<\/head>/i,`${a}
12185
12203
  </head>`);if(/<head\b[^>]*>/i.test(l))return l.replace(/(<head\b[^>]*>)/i,`$1
12186
12204
  ${a}`);if(/<html\b[^>]*>/i.test(l))return l.replace(/(<html\b[^>]*>)/i,`$1
12187
12205
  <head>
12188
12206
  ${a}
12189
12207
  </head>`);return l},{renderHead:x,getHead:f}=await Promise.resolve().then(() => (p5(),L7)),c=Z.__stx_runtime_head??f();if(c.title||c.meta?.length||c.link?.length){let l=x(c);if(l)Q=C(Q,l)}if(D.headContent)Q=C(Q,D.headContent,!c.title);if(G.csp?.enabled&&G.csp.addMetaTag)Q=D2(Q,G.csp,Z);if(G.analytics?.enabled)Q=G2(Q,G);if(G.heatmap?.enabled)Q=X9(Q,G);if(G.pwa?.enabled&&G.pwa.autoInject!==!1){let{injectPwaTags:l}=await Promise.resolve().then(() => (SX(),bX));Q=l(Q,G)}let p=/<script\b(?![^>]*\bserver\b)[^>]*>[\s\S]*?<\/script>/i.test(Q),W0=/\bSTX\.\w+/.test(Q),w0=/window\.STX\s*=/.test(Q);if(p&&W0&&!w0){let a=`<script data-stx-scoped>
12190
12208
  ${$2()}
12191
- </script>`;if(Q.includes("</head>")){let h=Q.indexOf("</head>"),P=Q.slice(0,h).indexOf("<script");if(P!==-1){let v=Q.slice(0,P),m=Q.slice(P);Q=v+a+`
12192
- `+m}else Q=Q.replace("</head>",`${a}
12209
+ </script>`;if(Q.includes("</head>")){let h=Q.indexOf("</head>"),P=Q.slice(0,h).indexOf("<script");if(P!==-1){let v=Q.slice(0,P),u=Q.slice(P);Q=v+a+`
12210
+ `+u}else Q=Q.replace("</head>",`${a}
12193
12211
  </head>`)}else if(Q.includes("<body"))Q=Q.replace(/<body([^>]*)>/,`<body$1>
12194
12212
  ${a}`);else Q=a+`
12195
- `+Q}{let{scanScriptTags:l}=await Promise.resolve().then(() => (s5(),c$)),a=[];for(let h of l(Q)){if(!/\bserver\b/i.test(h.attrs))continue;let u=h.start+h.fullMatch.indexOf(">")+1,P=TB(Q,u);if(P===-1)continue;let v=P+9;while(v<Q.length&&/\s/.test(Q[v]))v++;a.push({start:h.start,end:v})}for(let h=a.length-1;h>=0;h--){let{start:u,end:P}=a[h];Q=Q.substring(0,u)+Q.substring(P)}}let _0=M$(Q,Y);if(_0.hasScoped)Q=_0.html;let X0=Z.__stx_event_bindings||[],I0=!1,i0=[],G1=/\s:[a-z][\w.-]*\s*=/.test(Q),{scanScriptTags:D1}=await Promise.resolve().then(() => (s5(),c$));for(let l of D1(Q,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b|\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/}))i0.push({match:l.fullMatch,attrs:l.attrs,content:l.body});for(let{match:l,attrs:a,content:h}of i0){I0=!0;let u=h;x6(h,Y,J.strict);let P=await C5(h,{eventBindings:X0,attrs:a,hasColonDirectives:G1,templateContent:$,filePath:Y,projectRoot:process.cwd(),production:J.buildMode==="compile",serverData:k});Q=Q.replace(l,()=>P)}if(I0)Z.__stx_event_bindings=[];if(G.csp?.enabled&&G.csp.useNonce&&typeof Z.cspNonce==="string")Q=E2(Q,Z.cspNonce);return Q}var r1="<!--PARENT_CONTENT_PLACEHOLDER-->";var o$=b(()=>{E4();C1();Z7();Z2();Q2();K2();X7();Y7();_2();v5();V2();A2();S4();b2();P2();x2();d2();z1();p5();Y1();c2();r2();hY();pY();T6();g7();oY();X5();rY();A3();N0();tY();ZJ();XJ();GJ();B7();s5();N6();BJ();v6();f6();A0();s3();v6();f6()});import V0 from"fs";import Q0 from"path";import{matchRoute as Z_,Router as aX}from"stx-router";import{findErrorPage as X_,formatRoutes as Q_,generateRouteManifest as G_,generateRouteTypes as K_,matchRoute as z_}from"stx-router";function $7($,Z={}){return new aX($,Z).routes}o$();import{createHash as PB}from"crypto";function CB($){try{return new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($).replace(/\}(var |let |const |function )/g,"};$1").trim()}catch{return $}}var vB=/<script\s+type="stx\/island"\s+data-stx-island="([^"]+)"([^>]*)>([\s\S]*?)<\/script>/g;function xB($){return Bun.hash($).toString(16)}function vX($,Z={}){if(!$.includes('type="stx/island"'))return{html:$,chunks:[]};let Y=new Map,J=$.replace(vB,(Q,G,K,z)=>{let q=z.trim();if(!q)return Q;if(/\bdata-stx-src=/.test(K))return Q;if(Z.minify)q=CB(q);let W=xB(q);if(!Y.has(W))Y.set(W,q);let U=Z.integrity?` data-stx-integrity="sha384-${PB("sha384").update(q).digest("base64")}"`:"";return`<script type="stx/island" data-stx-island="${G}" data-stx-src="/_stx/islands/${W}.js"${U}${K}></script>`}),X=Array.from(Y,([Q,G])=>({hash:Q,code:G}));return{html:J,chunks:X}}var fB=new Set(["visible","idle"]);function xX($){if(!$.includes("data-stx-src="))return $;let Z=new Map,Y=/data-stx-scope="([^"]+)"[^>]*?stx-hydrate="([^"]+)"/g,J;while((J=Y.exec($))!==null)Z.set(J[1],J[2]);let X=new Set,Q=/data-stx-island="([^"]+)"[^>]*?data-stx-src="([^"]+)"/g,G;while((G=Q.exec($))!==null)if(fB.has(Z.get(G[1])||""))X.add(G[2]);let K=$.lastIndexOf("</head>");if(X.size===0||K===-1)return $;let z=Array.from(X).filter((q)=>!$.includes(`rel="prefetch" href="${q}"`)).map((q)=>`<link rel="prefetch" href="${q}" as="script">`).join("");if(!z)return $;return $.slice(0,K)+z+$.slice(K)}l1();E5();E4();import{abortNavigation as xR,clearMiddleware as fX,createClientCookieManager as fR,createMiddlewareContext as gX,createRouteLocation as hX,createServerCookieManager as gR,createStorageManager as hR,defineMiddleware as dR,getMiddleware as uR,getMiddlewareNames as dX,hasMiddleware as mR,loadMiddlewareFromDirectory as uX,navigateTo as pR,registerMiddleware as lR,runMiddleware as mX}from"stx-router";class pX{cacheDir;cache=new Map;loaded=!1;constructor($){this.cacheDir=$}async load(){if(this.loaded)return;let $=Q0.join(this.cacheDir,"build-cache.json");if(await Bun.file($).exists())try{let Z=JSON.parse(await Bun.file($).text());for(let[Y,J]of Object.entries(Z))this.cache.set(Y,J)}catch{}this.loaded=!0}async save(){await V0.promises.mkdir(this.cacheDir,{recursive:!0});let $=Q0.join(this.cacheDir,"build-cache.json"),Z={};for(let[Y,J]of this.cache)Z[Y]=J;await Bun.write($,JSON.stringify(Z))}getHash($,Z){let Y=V0.statSync($),J=`${$}:${Y.mtimeMs}`;for(let Q of Z)if(V0.existsSync(Q)){let G=V0.statSync(Q);J+=`:${Q}:${G.mtimeMs}`}let X=0;for(let Q=0;Q<J.length;Q++){let G=J.charCodeAt(Q);X=(X<<5)-X+G,X=X&X}return Math.abs(X).toString(36)}get($,Z){let Y=this.cache.get($);if(!Y)return null;let J=this.getHash(Z,Y.dependencies??[]);if(Y.hash!==J)return this.cache.delete($),null;return Y.html}set($,Z,Y,J){let X=this.getHash(Z,Y);this.cache.set($,{hash:X,html:J,generatedAt:Date.now(),dependencies:Y})}}class lX{cacheDir;constructor($){this.cacheDir=$}getFilePath($){let Z=$.replace(/[^a-zA-Z0-9]/g,"_")+".json";return Q0.join(this.cacheDir,"isr",Z)}async get($){let Z=this.getFilePath($);if(!await Bun.file(Z).exists())return null;try{return JSON.parse(await Bun.file(Z).text())}catch{return null}}async set($,Z){let Y=this.getFilePath($);await V0.promises.mkdir(Q0.dirname(Y),{recursive:!0}),await Bun.write(Y,JSON.stringify(Z))}async invalidate($){let Z=this.getFilePath($);if(await Bun.file(Z).exists())await V0.promises.unlink(Z)}async invalidatePattern($){let Z=Q0.join(this.cacheDir,"isr");if(!V0.existsSync(Z))return;let Y=await V0.promises.readdir(Z);for(let J of Y){let X=J.replace(/_/g,"/").replace(".json","");if($.test(X))await V0.promises.unlink(Q0.join(Z,J))}}async needsRevalidation($){let Z=await this.get($);if(!Z)return!0;return Date.now()>Z.revalidateAfter}}async function gB($){try{let Y=(await Bun.file($).text()).match(/<script\s+server\b[^>]*>([\s\S]*?)<\/script>/i);if(!Y)return null;let J=Y[1];if(!J.includes("getStaticPaths"))return null;let X=J.match(/(?:export\s+)?(?:async\s+)?function\s+getStaticPaths\s*\([^)]*\)\s*\{([\s\S]*?)\n[\t ]*\}/);if(!X)return null;return await Function(`
12213
+ `+Q}{let{scanScriptTags:l}=await Promise.resolve().then(() => (s5(),c$)),a=[];for(let h of l(Q)){if(!/\bserver\b/i.test(h.attrs))continue;let m=h.start+h.fullMatch.indexOf(">")+1,P=T_(Q,m);if(P===-1)continue;let v=P+9;while(v<Q.length&&/\s/.test(Q[v]))v++;a.push({start:h.start,end:v})}for(let h=a.length-1;h>=0;h--){let{start:m,end:P}=a[h];Q=Q.substring(0,m)+Q.substring(P)}}let B0=M$(Q,Y);if(B0.hasScoped)Q=B0.html;let X0=Z.__stx_event_bindings||[],I0=!1,i0=[],G1=/\s:[a-z][\w.-]*\s*=/.test(Q),{scanScriptTags:D1}=await Promise.resolve().then(() => (s5(),c$));for(let l of D1(Q,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b|\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/}))i0.push({match:l.fullMatch,attrs:l.attrs,content:l.body});for(let{match:l,attrs:a,content:h}of i0){I0=!0;let m=h;x6(h,Y,J.strict);let P=await C5(h,{eventBindings:X0,attrs:a,hasColonDirectives:G1,templateContent:$,filePath:Y,projectRoot:process.cwd(),production:J.buildMode==="compile",serverData:k});Q=Q.replace(l,()=>P)}if(I0)Z.__stx_event_bindings=[];if(G.csp?.enabled&&G.csp.useNonce&&typeof Z.cspNonce==="string")Q=E2(Q,Z.cspNonce);return Q}var r1="<!--PARENT_CONTENT_PLACEHOLDER-->";var o$=b(()=>{E4();C1();Z7();Z2();Q2();K2();X7();Y7();B2();v5();V2();A2();S4();b2();P2();x2();d2();z1();p5();Y1();c2();r2();hY();pY();T6();g7();oY();X5();rY();A3();N0();tY();ZJ();XJ();GJ();_7();s5();N6();_J();v6();f6();A0();s3();v6();f6()});import V0 from"fs";import Q0 from"path";import{matchRoute as ZB,Router as aX}from"stx-router";import{findErrorPage as XB,formatRoutes as QB,generateRouteManifest as GB,generateRouteTypes as KB,matchRoute as zB}from"stx-router";function $7($,Z={}){return new aX($,Z).routes}o$();import{createHash as P_}from"crypto";function C_($){try{return new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($).replace(/\}(var |let |const |function )/g,"};$1").trim()}catch{return $}}var v_=/<script\s+type="stx\/island"\s+data-stx-island="([^"]+)"([^>]*)>([\s\S]*?)<\/script>/g;function x_($){return Bun.hash($).toString(16)}function vX($,Z={}){if(!$.includes('type="stx/island"'))return{html:$,chunks:[]};let Y=new Map,J=$.replace(v_,(Q,G,K,z)=>{let q=z.trim();if(!q)return Q;if(/\bdata-stx-src=/.test(K))return Q;if(Z.minify)q=C_(q);let W=x_(q);if(!Y.has(W))Y.set(W,q);let U=Z.integrity?` data-stx-integrity="sha384-${P_("sha384").update(q).digest("base64")}"`:"";return`<script type="stx/island" data-stx-island="${G}" data-stx-src="/_stx/islands/${W}.js"${U}${K}></script>`}),X=Array.from(Y,([Q,G])=>({hash:Q,code:G}));return{html:J,chunks:X}}var f_=new Set(["visible","idle"]);function xX($){if(!$.includes("data-stx-src="))return $;let Z=new Map,Y=/data-stx-scope="([^"]+)"[^>]*?stx-hydrate="([^"]+)"/g,J;while((J=Y.exec($))!==null)Z.set(J[1],J[2]);let X=new Set,Q=/data-stx-island="([^"]+)"[^>]*?data-stx-src="([^"]+)"/g,G;while((G=Q.exec($))!==null)if(f_.has(Z.get(G[1])||""))X.add(G[2]);let K=$.lastIndexOf("</head>");if(X.size===0||K===-1)return $;let z=Array.from(X).filter((q)=>!$.includes(`rel="prefetch" href="${q}"`)).map((q)=>`<link rel="prefetch" href="${q}" as="script">`).join("");if(!z)return $;return $.slice(0,K)+z+$.slice(K)}l1();E5();E4();import{abortNavigation as xR,clearMiddleware as fX,createClientCookieManager as fR,createMiddlewareContext as gX,createRouteLocation as hX,createServerCookieManager as gR,createStorageManager as hR,defineMiddleware as dR,getMiddleware as mR,getMiddlewareNames as dX,hasMiddleware as uR,loadMiddlewareFromDirectory as mX,navigateTo as pR,registerMiddleware as lR,runMiddleware as uX}from"stx-router";class pX{cacheDir;cache=new Map;loaded=!1;constructor($){this.cacheDir=$}async load(){if(this.loaded)return;let $=Q0.join(this.cacheDir,"build-cache.json");if(await Bun.file($).exists())try{let Z=JSON.parse(await Bun.file($).text());for(let[Y,J]of Object.entries(Z))this.cache.set(Y,J)}catch{}this.loaded=!0}async save(){await V0.promises.mkdir(this.cacheDir,{recursive:!0});let $=Q0.join(this.cacheDir,"build-cache.json"),Z={};for(let[Y,J]of this.cache)Z[Y]=J;await Bun.write($,JSON.stringify(Z))}getHash($,Z){let Y=V0.statSync($),J=`${$}:${Y.mtimeMs}`;for(let Q of Z)if(V0.existsSync(Q)){let G=V0.statSync(Q);J+=`:${Q}:${G.mtimeMs}`}let X=0;for(let Q=0;Q<J.length;Q++){let G=J.charCodeAt(Q);X=(X<<5)-X+G,X=X&X}return Math.abs(X).toString(36)}get($,Z){let Y=this.cache.get($);if(!Y)return null;let J=this.getHash(Z,Y.dependencies??[]);if(Y.hash!==J)return this.cache.delete($),null;return Y.html}set($,Z,Y,J){let X=this.getHash(Z,Y);this.cache.set($,{hash:X,html:J,generatedAt:Date.now(),dependencies:Y})}}class lX{cacheDir;constructor($){this.cacheDir=$}getFilePath($){let Z=$.replace(/[^a-zA-Z0-9]/g,"_")+".json";return Q0.join(this.cacheDir,"isr",Z)}async get($){let Z=this.getFilePath($);if(!await Bun.file(Z).exists())return null;try{return JSON.parse(await Bun.file(Z).text())}catch{return null}}async set($,Z){let Y=this.getFilePath($);await V0.promises.mkdir(Q0.dirname(Y),{recursive:!0}),await Bun.write(Y,JSON.stringify(Z))}async invalidate($){let Z=this.getFilePath($);if(await Bun.file(Z).exists())await V0.promises.unlink(Z)}async invalidatePattern($){let Z=Q0.join(this.cacheDir,"isr");if(!V0.existsSync(Z))return;let Y=await V0.promises.readdir(Z);for(let J of Y){let X=J.replace(/_/g,"/").replace(".json","");if($.test(X))await V0.promises.unlink(Q0.join(Z,J))}}async needsRevalidation($){let Z=await this.get($);if(!Z)return!0;return Date.now()>Z.revalidateAfter}}async function g_($){try{let Y=(await Bun.file($).text()).match(/<script\s+server\b[^>]*>([\s\S]*?)<\/script>/i);if(!Y)return null;let J=Y[1];if(!J.includes("getStaticPaths"))return null;let X=J.match(/(?:export\s+)?(?:async\s+)?function\s+getStaticPaths\s*\([^)]*\)\s*\{([\s\S]*?)\n[\t ]*\}/);if(!X)return null;return await Function(`
12196
12214
  return (async function getStaticPaths() {
12197
12215
  ${X[1]}
12198
12216
  })()
12199
- `)()}catch(Z){return console.error(`Error extracting static paths from ${$}:`,Z),null}}async function hB($){let Z=[];if(!$.isDynamic)Z.push({url:$.pattern,params:{}});else{let Y=await gB($.filePath);if(!Y||Y.paths.length===0)return console.warn(`Warning: Dynamic route ${$.pattern} has no getStaticPaths or returned empty paths`),Z;for(let J of Y.paths){let X=$.pattern;for(let[Q,G]of Object.entries(J.params))X=X.replace(`:${Q}`,G).replace(`:${Q}*`,G);Z.push({url:X,params:J.params,props:J.props,revalidate:J.revalidate})}}return Z}async function dB($){let Z=[$.replace(/\.stx$/,".data.ts"),$.replace(/\.stx$/,".data.js"),$+".data.ts",$+".data.js"];for(let Y of Z)if(await Bun.file(Y).exists())try{let J=await import(Y);if(typeof J.default==="function")return await J.default();else if(typeof J.default==="object")return J.default;else if(typeof J.getData==="function")return await J.getData();else{let{default:X,...Q}=J;return Q}}catch(J){console.error(`Error loading data file ${Y}:`,J)}return null}async function uB($,Z,Y){let J=$.match(/<script\s+server\b[^>]*>([\s\S]*?)<\/script>/i);if(!J)return null;let X=J[1];if(!X.includes("getStaticProps"))return null;try{let Q=X.match(/(?:export\s+)?(?:async\s+)?function\s+getStaticProps\s*\([^)]*\)\s*\{([\s\S]*?)\n\}/);if(!Q)return null;return await Function("params",`
12217
+ `)()}catch(Z){return console.error(`Error extracting static paths from ${$}:`,Z),null}}async function h_($){let Z=[];if(!$.isDynamic)Z.push({url:$.pattern,params:{}});else{let Y=await g_($.filePath);if(!Y||Y.paths.length===0)return console.warn(`Warning: Dynamic route ${$.pattern} has no getStaticPaths or returned empty paths`),Z;for(let J of Y.paths){let X=$.pattern;for(let[Q,G]of Object.entries(J.params))X=X.replace(`:${Q}`,G).replace(`:${Q}*`,G);Z.push({url:X,params:J.params,props:J.props,revalidate:J.revalidate})}}return Z}async function d_($){let Z=[$.replace(/\.stx$/,".data.ts"),$.replace(/\.stx$/,".data.js"),$+".data.ts",$+".data.js"];for(let Y of Z)if(await Bun.file(Y).exists())try{let J=await import(Y);if(typeof J.default==="function")return await J.default();else if(typeof J.default==="object")return J.default;else if(typeof J.getData==="function")return await J.getData();else{let{default:X,...Q}=J;return Q}}catch(J){console.error(`Error loading data file ${Y}:`,J)}return null}async function m_($,Z,Y){let J=$.match(/<script\s+server\b[^>]*>([\s\S]*?)<\/script>/i);if(!J)return null;let X=J[1];if(!X.includes("getStaticProps"))return null;try{let Q=X.match(/(?:export\s+)?(?:async\s+)?function\s+getStaticProps\s*\([^)]*\)\s*\{([\s\S]*?)\n\}/);if(!Q)return null;return await Function("params",`
12200
12218
  return (async function getStaticProps() {
12201
12219
  ${Q[1]}
12202
12220
  })()
12203
- `)(Z)}catch(Q){return console.error(`Error executing getStaticProps in ${Y}:`,Q),null}}async function cX($,Z,Y={},J,X){let Q=await Bun.file($.filePath).text(),G=await dB($.filePath),K=await uB(Q,Z,$.filePath),z={...G||{},...K||{},...Y,params:Z,$route:{path:$.pattern,params:Z}},q=new Set,W={...X,debug:!1,cache:!1,autoShell:!0},U=await L0(Q,z,$.filePath,W,q);if(Object.keys(Z).length>0){let j=`<script>if(window.stx)window.stx._rp=${JSON.stringify(Z)};else window.__stx_rp=${JSON.stringify(Z)};</script>`;if(U.includes("</head>"))U=U.replace("</head>",`${j}
12221
+ `)(Z)}catch(Q){return console.error(`Error executing getStaticProps in ${Y}:`,Q),null}}async function cX($,Z,Y={},J,X){let Q=await Bun.file($.filePath).text(),G=await d_($.filePath),K=await m_(Q,Z,$.filePath),z={...G||{},...K||{},...Y,params:Z,$route:{path:$.pattern,params:Z}},q=new Set,W={...X,debug:!1,cache:!1,autoShell:!0},U=await L0(Q,z,$.filePath,W,q);if(Object.keys(Z).length>0){let j=`<script>if(window.stx)window.stx._rp=${JSON.stringify(Z)};else window.__stx_rp=${JSON.stringify(Z)};</script>`;if(U.includes("</head>"))U=U.replace("</head>",`${j}
12204
12222
  </head>`);else U=`${j}
12205
- ${U}`}if(U=await b7(U),U=await Y$(U),J.minify!==!1)return{html:mB(U),dependencies:Array.from(q)};return{html:U,dependencies:Array.from(q)}}function mB($){let Z=[],Y=0,J=/(<script[^>]*>)([\s\S]*?)(<\/script>)/gi,X;while((X=J.exec($))!==null){let G=$.slice(Y,X.index);Z.push(G.replace(/<!--(?!\[if)[\s\S]*?-->/g,"").replace(/\s+/g," ").replace(/>\s+</g,"><"));let K=X[1],z=X[2],q=X[3];z=z.replace(/([^:"\\'`])\/\/(?!\/)(?![*!])([^\n]*)/g,"$1"),Z.push(K+z+q),Y=X.index+X[0].length}let Q=$.slice(Y);return Z.push(Q.replace(/<!--(?!\[if)[\s\S]*?-->/g,"").replace(/\s+/g," ").replace(/>\s+</g,"><")),Z.join("").trim()}function pB($){let Z=0;for(let Y=0;Y<$.length;Y++){let J=$.charCodeAt(Y);Z=(Z<<5)-Z+J,Z=Z&Z}return`"${Math.abs(Z).toString(36)}"`}function lB($,Z){return`<?xml version="1.0" encoding="UTF-8"?>
12223
+ ${U}`}if(U=await b7(U),U=await Y$(U),J.minify!==!1)return{html:u_(U),dependencies:Array.from(q)};return{html:U,dependencies:Array.from(q)}}function u_($){let Z=[],Y=0,J=/(<script[^>]*>)([\s\S]*?)(<\/script>)/gi,X;while((X=J.exec($))!==null){let G=$.slice(Y,X.index);Z.push(G.replace(/<!--(?!\[if)[\s\S]*?-->/g,"").replace(/\s+/g," ").replace(/>\s+</g,"><"));let K=X[1],z=X[2],q=X[3];z=z.replace(/([^:"\\'`])\/\/(?!\/)(?![*!])([^\n]*)/g,"$1"),Z.push(K+z+q),Y=X.index+X[0].length}let Q=$.slice(Y);return Z.push(Q.replace(/<!--(?!\[if)[\s\S]*?-->/g,"").replace(/\s+/g," ").replace(/>\s+</g,"><")),Z.join("").trim()}function p_($){let Z=0;for(let Y=0;Y<$.length;Y++){let J=$.charCodeAt(Y);Z=(Z<<5)-Z+J,Z=Z&Z}return`"${Math.abs(Z).toString(36)}"`}function l_($,Z){return`<?xml version="1.0" encoding="UTF-8"?>
12206
12224
  <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
12207
12225
  ${$.map((J)=>{let X=new URL(J.loc,Z).href,Q=` <url>
12208
12226
  <loc>${e0(X)}</loc>`;if(J.lastmod)Q+=`
@@ -12211,7 +12229,7 @@ ${$.map((J)=>{let X=new URL(J.loc,Z).href,Q=` <url>
12211
12229
  <priority>${J.priority}</priority>`;return Q+=`
12212
12230
  </url>`,Q}).join(`
12213
12231
  `)}
12214
- </urlset>`}function e0($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function cB($,Z){let Y=Z.map((J)=>{let X=" <item>";if(X+=`
12232
+ </urlset>`}function e0($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function c_($,Z){let Y=Z.map((J)=>{let X=" <item>";if(X+=`
12215
12233
  <title>${e0(J.title)}</title>`,X+=`
12216
12234
  <link>${e0(J.link)}</link>`,J.description)X+=`
12217
12235
  <description>${e0(J.description)}</description>`;if(J.pubDate)X+=`
@@ -12232,10 +12250,10 @@ ${$.map((J)=>{let X=new URL(J.loc,Z).href,Q=` <url>
12232
12250
  ${Y.join(`
12233
12251
  `)}
12234
12252
  </channel>
12235
- </rss>`}async function iB($={}){let Z=Date.now(),Y=await q1(),J={pagesDir:$.pagesDir||"pages",outputDir:$.outputDir||"dist",baseUrl:$.baseUrl||"/",domain:$.domain||"http://localhost",revalidate:$.revalidate??!1,sitemap:$.sitemap??!0,rss:$.rss??!1,concurrency:$.concurrency||10,cache:$.cache??!0,cacheDir:$.cacheDir||B1(process.cwd(),"ssg-cache"),contentLoaders:$.contentLoaders||[],hooks:$.hooks||{},minify:$.minify??!1,generate404:$.generate404??!0,publicDir:$.publicDir||"public",trailingSlash:$.trailingSlash??!1,cleanOutput:$.cleanOutput??!0,chunkIslands:$.chunkIslands===!0,prefetchIslands:$.prefetchIslands===!0,integrityIslands:$.integrityIslands===!0},X={totalPages:0,successCount:0,failedCount:0,cachedCount:0,buildTime:0,pages:[],errors:[]},Q=new Set,G=0,K={},z={};await J.hooks.onBuildStart?.();try{if(J.cleanOutput&&V0.existsSync(J.outputDir))await V0.promises.rm(J.outputDir,{recursive:!0});await V0.promises.mkdir(J.outputDir,{recursive:!0});let W=new pX(J.cacheDir);if(J.cache)await W.load();try{let{generateCrosswindCSS:F}=await Promise.resolve().then(() => (E4(),eZ));await F('<div class="bg-black"></div>')}catch{}fX();let U=Y?.routeMiddleware?.dir||"middleware";await uX(process.cwd(),U);let j=dX();if(j.length>0)console.log(`Loaded ${j.length} middleware: ${j.join(", ")}`);let B=Y?.routeMiddleware?.global||[],_=$7(".",{pagesDir:J.pagesDir});console.log(`Found ${_.length} routes`);let H=[];for(let F of _){let w=await hB(F);for(let A of w)H.push({route:F,url:A.url,params:A.params,props:A.props,revalidate:A.revalidate??J.revalidate})}X.totalPages=H.length,console.log(`Generating ${X.totalPages} pages...`);let L=[],V=[];for(let F=0;F<H.length;F+=J.concurrency)V.push(H.slice(F,F+J.concurrency));for(let F of V)await Promise.all(F.map(async(w)=>{let{route:A,url:R,params:N,props:M,revalidate:T}=w;try{await J.hooks.onPageStart?.(R);let I=await Bun.file(A.filePath).text(),E=rB(I),D=E?.middleware?Array.isArray(E.middleware)?E.middleware:[E.middleware]:[],y=[...B,...D];if(y.length>0){let d=hX(R,N,E||{}),c=gX(d,null),p=await mX(y,c);if(p.redirect){let W0=typeof p.redirect==="string"?p.redirect:p.redirect.path||p.redirect,w0=aB(String(W0),R),_0=tB(R,J);await V0.promises.mkdir(Q0.dirname(_0),{recursive:!0}),await Bun.write(_0,w0),X.successCount++,X.pages.push({route:R,outputPath:_0,size:Buffer.byteLength(w0),cached:!1}),L.push({loc:R,lastmod:new Date().toISOString()}),console.log(` \u21B3 ${R} \u2192 redirect to ${W0}`);return}if(p.abort){let W0=typeof p.abort==="string"?p.abort:p.abort?.error?.message||"aborted";console.warn(` \u21B3 ${R} \u2014 middleware aborted: ${W0}`);return}}let S=I.match(/definePageMeta\s*\(\s*\{[\s\S]*?validate\s*:\s*((?:\([^)]*\)|[^,}])*(?:\{[\s\S]*?\})?)/m);if(S)try{if(!await Function("route",`
12253
+ </rss>`}async function i_($={}){let Z=Date.now(),Y=await q1(),J={pagesDir:$.pagesDir||"pages",outputDir:$.outputDir||"dist",baseUrl:$.baseUrl||"/",domain:$.domain||"http://localhost",revalidate:$.revalidate??!1,sitemap:$.sitemap??!0,rss:$.rss??!1,concurrency:$.concurrency||10,cache:$.cache??!0,cacheDir:$.cacheDir||_1(process.cwd(),"ssg-cache"),contentLoaders:$.contentLoaders||[],hooks:$.hooks||{},minify:$.minify??!1,generate404:$.generate404??!0,publicDir:$.publicDir||"public",trailingSlash:$.trailingSlash??!1,cleanOutput:$.cleanOutput??!0,chunkIslands:$.chunkIslands===!0,prefetchIslands:$.prefetchIslands===!0,integrityIslands:$.integrityIslands===!0},X={totalPages:0,successCount:0,failedCount:0,cachedCount:0,buildTime:0,pages:[],errors:[]},Q=new Set,G=0,K={},z={};await J.hooks.onBuildStart?.();try{if(J.cleanOutput&&V0.existsSync(J.outputDir))await V0.promises.rm(J.outputDir,{recursive:!0});await V0.promises.mkdir(J.outputDir,{recursive:!0});let W=new pX(J.cacheDir);if(J.cache)await W.load();try{let{generateCrosswindCSS:F}=await Promise.resolve().then(() => (E4(),eZ));await F('<div class="bg-black"></div>')}catch{}fX();let U=Y?.routeMiddleware?.dir||"middleware";await mX(process.cwd(),U);let j=dX();if(j.length>0)console.log(`Loaded ${j.length} middleware: ${j.join(", ")}`);let _=Y?.routeMiddleware?.global||[],B=$7(".",{pagesDir:J.pagesDir});console.log(`Found ${B.length} routes`);let H=[];for(let F of B){let w=await h_(F);for(let A of w)H.push({route:F,url:A.url,params:A.params,props:A.props,revalidate:A.revalidate??J.revalidate})}X.totalPages=H.length,console.log(`Generating ${X.totalPages} pages...`);let L=[],V=[];for(let F=0;F<H.length;F+=J.concurrency)V.push(H.slice(F,F+J.concurrency));for(let F of V)await Promise.all(F.map(async(w)=>{let{route:A,url:R,params:N,props:M,revalidate:T}=w;try{await J.hooks.onPageStart?.(R);let I=await Bun.file(A.filePath).text(),E=r_(I),D=E?.middleware?Array.isArray(E.middleware)?E.middleware:[E.middleware]:[],y=[..._,...D];if(y.length>0){let d=hX(R,N,E||{}),c=gX(d,null),p=await uX(y,c);if(p.redirect){let W0=typeof p.redirect==="string"?p.redirect:p.redirect.path||p.redirect,w0=a_(String(W0),R),B0=t_(R,J);await V0.promises.mkdir(Q0.dirname(B0),{recursive:!0}),await Bun.write(B0,w0),X.successCount++,X.pages.push({route:R,outputPath:B0,size:Buffer.byteLength(w0),cached:!1}),L.push({loc:R,lastmod:new Date().toISOString()}),console.log(` \u21B3 ${R} \u2192 redirect to ${W0}`);return}if(p.abort){let W0=typeof p.abort==="string"?p.abort:p.abort?.error?.message||"aborted";console.warn(` \u21B3 ${R} \u2014 middleware aborted: ${W0}`);return}}let S=I.match(/definePageMeta\s*\(\s*\{[\s\S]*?validate\s*:\s*((?:\([^)]*\)|[^,}])*(?:\{[\s\S]*?\})?)/m);if(S)try{if(!await Function("route",`
12236
12254
  const validate = ${S[1]};
12237
12255
  return validate(route);
12238
- `)({params:N})){console.warn(`Validation failed for ${R}, skipping...`);return}}catch{}let k=null,C=!1;if(J.cache){if(k=W.get(R,A.filePath),k)C=!0,X.cachedCount++}if(!k){let d=await cX(A,N,M,J,Y);if(k=d.html,J.cache)W.set(R,A.filePath,d.dependencies,k)}let x;if(J.trailingSlash)x=Q0.join(J.outputDir,R,"index.html");else x=R==="/"?Q0.join(J.outputDir,"index.html"):Q0.join(J.outputDir,`${R}.html`);if(J.chunkIslands){let{html:d,chunks:c}=vX(k,{integrity:J.integrityIslands,minify:J.minify});if(c.length>0){let p=Q0.join(J.outputDir,"_stx","islands");await V0.promises.mkdir(p,{recursive:!0});for(let W0 of c){let w0=Q0.join(p,`${W0.hash}.js`);if(!await Bun.file(w0).exists())await Bun.write(w0,W0.code);if(!Q.has(W0.hash)){Q.add(W0.hash);let _0=Buffer.byteLength(W0.code,"utf8");G+=_0,K[W0.hash]={bytes:_0,file:`/_stx/islands/${W0.hash}.js`}}}if(z[R]=c.map((W0)=>W0.hash),k=d,J.prefetchIslands)k=xX(k)}}await V0.promises.mkdir(Q0.dirname(x),{recursive:!0}),await Bun.write(x,k),L.push({loc:R,lastmod:new Date().toISOString().split("T")[0],priority:R==="/"?1:0.8});let f={route:R,outputPath:x,size:Buffer.byteLength(k,"utf8"),cached:C};if(T!==!1)f.revalidateAt=Date.now()+T*1000;X.pages.push(f),X.successCount++,await J.hooks.onPageEnd?.(R,k)}catch(I){X.failedCount++,X.errors.push({route:R,error:I}),await J.hooks.onError?.(I,R),console.error(`Error generating ${R}:`,I)}}));if(J.cache)await W.save();if(J.generate404){let F=Q0.join(J.pagesDir,"404.stx");if(await Bun.file(F).exists()){let w=new Set,A={...Y,debug:!1,cache:!1},R=await L0(await Bun.file(F).text(),{},F,A,w);await Bun.write(Q0.join(J.outputDir,"404.html"),R)}else await Bun.write(Q0.join(J.outputDir,"404.html"),`<!DOCTYPE html>
12256
+ `)({params:N})){console.warn(`Validation failed for ${R}, skipping...`);return}}catch{}let k=null,C=!1;if(J.cache){if(k=W.get(R,A.filePath),k)C=!0,X.cachedCount++}if(!k){let d=await cX(A,N,M,J,Y);if(k=d.html,J.cache)W.set(R,A.filePath,d.dependencies,k)}let x;if(J.trailingSlash)x=Q0.join(J.outputDir,R,"index.html");else x=R==="/"?Q0.join(J.outputDir,"index.html"):Q0.join(J.outputDir,`${R}.html`);if(J.chunkIslands){let{html:d,chunks:c}=vX(k,{integrity:J.integrityIslands,minify:J.minify});if(c.length>0){let p=Q0.join(J.outputDir,"_stx","islands");await V0.promises.mkdir(p,{recursive:!0});for(let W0 of c){let w0=Q0.join(p,`${W0.hash}.js`);if(!await Bun.file(w0).exists())await Bun.write(w0,W0.code);if(!Q.has(W0.hash)){Q.add(W0.hash);let B0=Buffer.byteLength(W0.code,"utf8");G+=B0,K[W0.hash]={bytes:B0,file:`/_stx/islands/${W0.hash}.js`}}}if(z[R]=c.map((W0)=>W0.hash),k=d,J.prefetchIslands)k=xX(k)}}await V0.promises.mkdir(Q0.dirname(x),{recursive:!0}),await Bun.write(x,k),L.push({loc:R,lastmod:new Date().toISOString().split("T")[0],priority:R==="/"?1:0.8});let f={route:R,outputPath:x,size:Buffer.byteLength(k,"utf8"),cached:C};if(T!==!1)f.revalidateAt=Date.now()+T*1000;X.pages.push(f),X.successCount++,await J.hooks.onPageEnd?.(R,k)}catch(I){X.failedCount++,X.errors.push({route:R,error:I}),await J.hooks.onError?.(I,R),console.error(`Error generating ${R}:`,I)}}));if(J.cache)await W.save();if(J.generate404){let F=Q0.join(J.pagesDir,"404.stx");if(await Bun.file(F).exists()){let w=new Set,A={...Y,debug:!1,cache:!1},R=await L0(await Bun.file(F).text(),{},F,A,w);await Bun.write(Q0.join(J.outputDir,"404.html"),R)}else await Bun.write(Q0.join(J.outputDir,"404.html"),`<!DOCTYPE html>
12239
12257
  <html lang="en">
12240
12258
  <head>
12241
12259
  <meta charset="UTF-8">
@@ -12256,7 +12274,7 @@ ${Y.join(`
12256
12274
  <a href="/">Go home</a>
12257
12275
  </div>
12258
12276
  </body>
12259
- </html>`)}for(let F of[500]){let w=Q0.join(J.pagesDir,`${F}.stx`);if(await Bun.file(w).exists()){let A=new Set,R={...Y,debug:!1,cache:!1},N=await L0(await Bun.file(w).text(),{},w,R,A);await Bun.write(Q0.join(J.outputDir,`${F}.html`),N)}}let O=Q0.join(J.pagesDir,"error.stx");if(await Bun.file(O).exists()){let F=new Set,w={...Y,debug:!1,cache:!1},A=await L0(await Bun.file(O).text(),{},O,w,F);await Bun.write(Q0.join(J.outputDir,"error.html"),A)}if(J.sitemap&&L.length>0){let F=lB(L,J.domain),w=Q0.join(J.outputDir,"sitemap.xml");await Bun.write(w,F),X.sitemapPath=w,console.log(`Generated sitemap.xml with ${L.length} URLs`)}if(J.rss){let F=typeof J.rss==="object"?J.rss:{title:"Site Feed",description:"Latest updates",link:J.domain},w=[];if(F.getItems)w=await F.getItems();let A=cB(F,w),R=Q0.join(J.outputDir,"rss.xml");await Bun.write(R,A),X.rssPath=R,console.log(`Generated rss.xml with ${w.length} items`)}if(J.publicDir&&V0.existsSync(J.publicDir))await iX(J.publicDir,J.outputDir),console.log(`Copied public assets from ${J.publicDir}`)}catch(W){throw await J.hooks.onError?.(W),W}if(X.buildTime=Date.now()-Z,Q.size>0){X.islandChunks={count:Q.size,totalBytes:G};let W={generatedChunks:Q.size,totalBytes:G,chunks:K,pages:z};await Bun.write(Q0.join(J.outputDir,"_stx","islands-manifest.json"),JSON.stringify(W,null,2))}await J.hooks.onBuildEnd?.(X);let q=X.islandChunks?`
12277
+ </html>`)}for(let F of[500]){let w=Q0.join(J.pagesDir,`${F}.stx`);if(await Bun.file(w).exists()){let A=new Set,R={...Y,debug:!1,cache:!1},N=await L0(await Bun.file(w).text(),{},w,R,A);await Bun.write(Q0.join(J.outputDir,`${F}.html`),N)}}let O=Q0.join(J.pagesDir,"error.stx");if(await Bun.file(O).exists()){let F=new Set,w={...Y,debug:!1,cache:!1},A=await L0(await Bun.file(O).text(),{},O,w,F);await Bun.write(Q0.join(J.outputDir,"error.html"),A)}if(J.sitemap&&L.length>0){let F=l_(L,J.domain),w=Q0.join(J.outputDir,"sitemap.xml");await Bun.write(w,F),X.sitemapPath=w,console.log(`Generated sitemap.xml with ${L.length} URLs`)}if(J.rss){let F=typeof J.rss==="object"?J.rss:{title:"Site Feed",description:"Latest updates",link:J.domain},w=[];if(F.getItems)w=await F.getItems();let A=c_(F,w),R=Q0.join(J.outputDir,"rss.xml");await Bun.write(R,A),X.rssPath=R,console.log(`Generated rss.xml with ${w.length} items`)}if(J.publicDir&&V0.existsSync(J.publicDir))await iX(J.publicDir,J.outputDir),console.log(`Copied public assets from ${J.publicDir}`)}catch(W){throw await J.hooks.onError?.(W),W}if(X.buildTime=Date.now()-Z,Q.size>0){X.islandChunks={count:Q.size,totalBytes:G};let W={generatedChunks:Q.size,totalBytes:G,chunks:K,pages:z};await Bun.write(Q0.join(J.outputDir,"_stx","islands-manifest.json"),JSON.stringify(W,null,2))}await J.hooks.onBuildEnd?.(X);let q=X.islandChunks?`
12260
12278
  Island chunks: ${X.islandChunks.count} (${(X.islandChunks.totalBytes/1024).toFixed(1)} KB lifted out of inline HTML)`:"";return console.log(`
12261
12279
  Build complete!
12262
12280
  Total: ${X.totalPages} pages
@@ -12264,8 +12282,8 @@ Build complete!
12264
12282
  Cached: ${X.cachedCount}
12265
12283
  Failed: ${X.failedCount}
12266
12284
  Time: ${X.buildTime}ms${q}
12267
- `),X}async function iX($,Z){let Y=await V0.promises.readdir($,{withFileTypes:!0});for(let J of Y){let X=Q0.join($,J.name),Q=Q0.join(Z,J.name);if(J.isDirectory())await V0.promises.mkdir(Q,{recursive:!0}),await iX(X,Q);else await V0.promises.copyFile(X,Q)}}function nB($={}){let Z=$.cacheDir||B1(process.cwd(),"ssg-cache"),Y=new lX(Z),J=$.revalidate||3600;return{async get(X){let Q=await Y.get(X);if(!Q)return null;if(Date.now()>Q.revalidateAfter)this.revalidate(X).catch(console.error);return{html:Q.html,headers:{"Cache-Control":`public, max-age=${J}, stale-while-revalidate=${J*2}`,ETag:Q.etag,"X-ISR-Generated":new Date(Q.generatedAt).toISOString(),...Q.headers}}},async revalidate(X){let G=$7(".",{pagesDir:$.pagesDir||"pages"}).find((U)=>{return X.match(U.regex)!==null});if(!G){console.warn(`Route not found for revalidation: ${X}`);return}let K=X.match(G.regex),z={};if(K)G.params.forEach((U,j)=>{z[U]=K[j+1]});let q=await q1(),{html:W}=await cX(G,z,{},$,q);await Y.set(X,{html:W,generatedAt:Date.now(),revalidateAfter:Date.now()+J*1000,etag:pB(W)}),console.log(`Revalidated: ${X}`)},async invalidate(X){if(typeof X==="string")await Y.invalidate(X);else await Y.invalidatePattern(X)}}}function oB($){return async()=>{return{paths:await $(),fallback:!1}}}function sB(){return{name:"markdown",extensions:[".md",".mdx"],async load($){let Z=await Bun.file($).text(),Y=Z.match(/^---\n([\s\S]*?)\n---/),J={},X=Z;if(Y){let q=Y[1];X=Z.slice(Y[0].length).trim();for(let W of q.split(`
12268
- `)){let U=W.indexOf(":");if(U>0){let j=W.slice(0,U).trim(),B=W.slice(U+1).trim();if(B==="true")B=!0;else if(B==="false")B=!1;else if(/^\d+$/.test(B))B=parseInt(B,10);else if(/^\d+\.\d+$/.test(B))B=parseFloat(B);else if(B.startsWith("[")&&B.endsWith("]"))B=B.slice(1,-1).split(",").map((_)=>_.trim().replace(/^['"]|['"]$/g,""));J[j]=B}}}let Q=X.replace(/^### (.*$)/gim,"<h3>$1</h3>").replace(/^## (.*$)/gim,"<h2>$1</h2>").replace(/^# (.*$)/gim,"<h1>$1</h1>").replace(/\*\*(.*)\*\*/gim,"<strong>$1</strong>").replace(/\*(.*)\*/gim,"<em>$1</em>").replace(/`([^`]+)`/gim,"<code>$1</code>").replace(/\[([^\]]+)\]\(([^)]+)\)/gim,'<a href="$2">$1</a>').replace(/\n/gim,"<br>"),G=[],K=/<h([1-6])>([^<]+)<\/h[1-6]>/gi,z;while((z=K.exec(Q))!==null){let q=parseInt(z[1],10),W=z[2],U=W.toLowerCase().replace(/[^a-z0-9]+/g,"-");G.push({id:U,text:W,level:q})}return{content:Q,data:J,toc:G}}}}function rB($){let Z=$.match(/definePageMeta\s*\(\s*(\{[\s\S]*?\})\s*\)/m);if(!Z)return null;try{return Function(`return ${Z[1]}`)()}catch{return null}}function aB($,Z){return`<!DOCTYPE html>
12285
+ `),X}async function iX($,Z){let Y=await V0.promises.readdir($,{withFileTypes:!0});for(let J of Y){let X=Q0.join($,J.name),Q=Q0.join(Z,J.name);if(J.isDirectory())await V0.promises.mkdir(Q,{recursive:!0}),await iX(X,Q);else await V0.promises.copyFile(X,Q)}}function n_($={}){let Z=$.cacheDir||_1(process.cwd(),"ssg-cache"),Y=new lX(Z),J=$.revalidate||3600;return{async get(X){let Q=await Y.get(X);if(!Q)return null;if(Date.now()>Q.revalidateAfter)this.revalidate(X).catch(console.error);return{html:Q.html,headers:{"Cache-Control":`public, max-age=${J}, stale-while-revalidate=${J*2}`,ETag:Q.etag,"X-ISR-Generated":new Date(Q.generatedAt).toISOString(),...Q.headers}}},async revalidate(X){let G=$7(".",{pagesDir:$.pagesDir||"pages"}).find((U)=>{return X.match(U.regex)!==null});if(!G){console.warn(`Route not found for revalidation: ${X}`);return}let K=X.match(G.regex),z={};if(K)G.params.forEach((U,j)=>{z[U]=K[j+1]});let q=await q1(),{html:W}=await cX(G,z,{},$,q);await Y.set(X,{html:W,generatedAt:Date.now(),revalidateAfter:Date.now()+J*1000,etag:p_(W)}),console.log(`Revalidated: ${X}`)},async invalidate(X){if(typeof X==="string")await Y.invalidate(X);else await Y.invalidatePattern(X)}}}function o_($){return async()=>{return{paths:await $(),fallback:!1}}}function s_(){return{name:"markdown",extensions:[".md",".mdx"],async load($){let Z=await Bun.file($).text(),Y=Z.match(/^---\n([\s\S]*?)\n---/),J={},X=Z;if(Y){let q=Y[1];X=Z.slice(Y[0].length).trim();for(let W of q.split(`
12286
+ `)){let U=W.indexOf(":");if(U>0){let j=W.slice(0,U).trim(),_=W.slice(U+1).trim();if(_==="true")_=!0;else if(_==="false")_=!1;else if(/^\d+$/.test(_))_=parseInt(_,10);else if(/^\d+\.\d+$/.test(_))_=parseFloat(_);else if(_.startsWith("[")&&_.endsWith("]"))_=_.slice(1,-1).split(",").map((B)=>B.trim().replace(/^['"]|['"]$/g,""));J[j]=_}}}let Q=X.replace(/^### (.*$)/gim,"<h3>$1</h3>").replace(/^## (.*$)/gim,"<h2>$1</h2>").replace(/^# (.*$)/gim,"<h1>$1</h1>").replace(/\*\*(.*)\*\*/gim,"<strong>$1</strong>").replace(/\*(.*)\*/gim,"<em>$1</em>").replace(/`([^`]+)`/gim,"<code>$1</code>").replace(/\[([^\]]+)\]\(([^)]+)\)/gim,'<a href="$2">$1</a>').replace(/\n/gim,"<br>"),G=[],K=/<h([1-6])>([^<]+)<\/h[1-6]>/gi,z;while((z=K.exec(Q))!==null){let q=parseInt(z[1],10),W=z[2],U=W.toLowerCase().replace(/[^a-z0-9]+/g,"-");G.push({id:U,text:W,level:q})}return{content:Q,data:J,toc:G}}}}function r_($){let Z=$.match(/definePageMeta\s*\(\s*(\{[\s\S]*?\})\s*\)/m);if(!Z)return null;try{return Function(`return ${Z[1]}`)()}catch{return null}}function a_($,Z){return`<!DOCTYPE html>
12269
12287
  <html>
12270
12288
  <head>
12271
12289
  <meta charset="utf-8">
@@ -12277,4 +12295,4 @@ Build complete!
12277
12295
  <p>Redirecting to <a href="${$}">${$}</a>...</p>
12278
12296
  <script>window.location.replace('${$}')</script>
12279
12297
  </body>
12280
- </html>`}function tB($,Z){if($==="/"||$==="")return Q0.join(Z.outputDir,"index.html");let Y=$.replace(/^\/|\/$/g,"");if(Z.trailingSlash)return Q0.join(Z.outputDir,Y,"index.html");return Q0.join(Z.outputDir,`${Y}.html`)}var $N={generateStaticSite:iB,createISRHandler:nB,defineStaticPaths:oB,createMarkdownLoader:sB};export{iB as generateStaticSite,oB as defineStaticPaths,$N as default,sB as createMarkdownLoader,nB as createISRHandler};
12298
+ </html>`}function t_($,Z){if($==="/"||$==="")return Q0.join(Z.outputDir,"index.html");let Y=$.replace(/^\/|\/$/g,"");if(Z.trailingSlash)return Q0.join(Z.outputDir,Y,"index.html");return Q0.join(Z.outputDir,`${Y}.html`)}var $N={generateStaticSite:i_,createISRHandler:n_,defineStaticPaths:o_,createMarkdownLoader:s_};export{i_ as generateStaticSite,o_ as defineStaticPaths,$N as default,s_ as createMarkdownLoader,n_ as createISRHandler};