@stacksjs/stx 0.2.124 → 0.2.126

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 _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);"}
2
+ var sX=Object.defineProperty;var rX=($)=>$;function aX($,Z){this[$]=rX.bind(null,Z)}var e=($,Z)=>{for(var Y in Z)sX($,Y,{get:Z[Y],enumerable:!0,configurable:!0,set:aX.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[eX]?.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",eX="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 $Q($,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; } }
@@ -9,7 +9,7 @@ var oX=Object.defineProperty;var sX=($)=>$;function rX($,Z){this[$]=sX.bind(null
9
9
  @keyframes flipIn { from { transform: perspective(400px) rotateX(-90deg); opacity: 0; } to { transform: perspective(400px) rotateX(0); opacity: 1; } }
10
10
  @keyframes flipOut { from { transform: perspective(400px) rotateX(0); opacity: 1; } to { transform: perspective(400px) rotateX(90deg); opacity: 0; } }`;case"rotate":return`${Q==="in"?"transform: rotate(-90deg); opacity: 0; animation: rotateIn var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":Q==="out"?"transform: rotate(0); opacity: 1; animation: rotateOut var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms) forwards;":"transform: rotate(0); opacity: 1; transition: transform var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms), opacity var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms);"}
11
11
  @keyframes rotateIn { from { transform: rotate(-90deg); opacity: 0; } to { transform: rotate(0); opacity: 1; } }
12
- @keyframes rotateOut { from { transform: rotate(0); opacity: 1; } to { transform: rotate(90deg); opacity: 0; } }`;default:return""}}function $Q(){return`
12
+ @keyframes rotateOut { from { transform: rotate(0); opacity: 1; } to { transform: rotate(90deg); opacity: 0; } }`;default:return""}}function ZQ(){return`
13
13
  <script data-stx-scoped>
14
14
  // Motion preferences handling
15
15
  (function() {
@@ -37,7 +37,7 @@ else {
37
37
  });
38
38
  })();
39
39
  </script>
40
- `}function ZQ($){return[/@animate\b/,/@transition\b/,/@scroll(?:Animate)?\b/,/@staggered\b/,/@sequence\b/,/@motion\b/,/@animationGroup\b/,/\bstx-transition\b/,/\bstx-(?:fade|scale|flip|rotate|slide|from-|observe)\b/,/data-animate=['"](?:auto|true|false)['"]/].some((Y)=>Y.test($))}function YQ($=0.1,Z="0px"){return`
40
+ `}function YQ($){return[/@animate\b/,/@transition\b/,/@scroll(?:Animate)?\b/,/@staggered\b/,/@sequence\b/,/@motion\b/,/@animationGroup\b/,/\bstx-transition\b/,/\bstx-(?:fade|scale|flip|rotate|slide|from-|observe)\b/,/data-animate=['"](?:auto|true|false)['"]/].some((Y)=>Y.test($))}function JQ($=0.1,Z="0px"){return`
41
41
  <script data-stx-scoped>
42
42
  // Intersection Observer for scroll animations
43
43
  (function() {
@@ -80,7 +80,7 @@ else {
80
80
  }
81
81
  })();
82
82
  </script>
83
- `}function JQ(){return`
83
+ `}function XQ(){return`
84
84
  <style id="stx-animation-base">
85
85
  :root {
86
86
  --stx-transition-duration: 300ms;
@@ -195,7 +195,7 @@ else {
195
195
  transform var(--stx-transition-duration, 300ms) var(--stx-transition-ease, ease) var(--stx-transition-delay, 0ms);
196
196
  }
197
197
  </style>
198
- `}function XQ($,Z,Y={}){let{staggerDelay:J=50,sequence:X=!1}=Y;return`
198
+ `}function QQ($,Z,Y={}){let{staggerDelay:J=50,sequence:X=!1}=Y;return`
199
199
  <script data-stx-scoped>
200
200
  // Animation Group: ${$}
201
201
  (function() {
@@ -232,11 +232,11 @@ else {
232
232
  }
233
233
  })();
234
234
  </script>
235
- `}function e6($,Z,Y,J){let X=$;if(J.animation?.enabled===!1)return X;let Q=Y.includes("test")&&Y.includes("animation");if(!ZQ(X)&&!Q)return X;if(!X.includes('<style id="stx-animation-base">')){let K=JQ();X=X.replace("</head>",`${K}
236
- </head>`)}if(X.includes("stx-observe")){if(!X.includes("Intersection Observer for scroll animations")){let z=YQ(),q=X.lastIndexOf("</body>");if(q!==-1)X=X.slice(0,q)+z+`
237
- `+X.slice(q)}}return X}var K1,s6,r6,a6,t6;var Y7=b(()=>{K1={duration:300,delay:0,ease:"ease",direction:"both"};s6={name:"transition",handler:($,Z,Y,J)=>{if(Z.length<1)return`<div class="stx-error">@transition directive requires at least a transition type</div>${$}`;let X=Z[0],Q=Z.length>1?Number.parseInt(Z[1],10)||K1.duration:K1.duration,G=Z.length>2?Z[2]||K1.ease:K1.ease,K=Z.length>3?Number.parseInt(Z[3],10)||K1.delay:K1.delay,z=Z.length>4?Z[4]||K1.direction:K1.direction,q=`stx-transition-${Math.random().toString(36).substr(2,9)}`,W=eX(X,{duration:Q,delay:K,ease:G,direction:z}),U="stx-transition",j="";if(X==="fade")j="stx-fade";else if(X==="slide")j="stx-slide";else if(X==="scale")j="stx-scale";else if(X==="flip")j="stx-flip";else if(X==="rotate")j="stx-rotate";return`<div id="${q}" class="${U} ${j} ${z==="out"?"stx-out":""}"
238
- style="--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${K}ms;">${$}</div>`},hasEndTag:!0,description:"Applies transition effects to an element"},r6={name:"scrollAnimate",handler:($,Z,Y,J)=>{if(Z.length<1)return`<div class="stx-error">@scrollAnimate directive requires at least an animation type</div>${$}`;let X=Z[0],Q=Z.length>1?Number.parseInt(Z[1],10)||300:300,G=Z.length>2?Z[2]||"ease":"ease",K=Z.length>3?Number.parseFloat(Z[3])||0.2:0.2,z=Z.length>4?Number.parseInt(Z[4],10)||0:0,q=`stx-scroll-${Math.random().toString(36).substr(2,9)}`,W=`--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${z}ms; will-change: opacity, transform;`,U="stx-transition stx-observe stx-out";if(X==="fade")U+=" stx-fade";else if(X==="slide-up"||X==="slide")U+=" stx-from-bottom";else if(X==="slide-down")U+=" stx-from-top";else if(X==="slide-left")U+=" stx-from-right";else if(X==="slide-right")U+=" stx-from-left";else if(X==="scale")U+=" stx-scale";else if(X.includes("-"))U+=` stx-${X}`;else U+=` stx-${X}`;return`<div id="${q}" class="${U}" style="${W}" data-threshold="${K}">${$}</div>`},hasEndTag:!0,description:"Applies animations that trigger when scrolled into view"},a6={name:"animationGroup",handler:($,Z,Y,J)=>{if(Z.length<2)return`<div class="stx-error">@animationGroup directive requires a group name and at least one element selector</div>${$}`;let X=Z[0],Q=Z.slice(1).map((q)=>q.startsWith("#")||q.startsWith(".")?q:`#${q}`),G=Y.staggerDelay||50,K=Y.sequence||!0,z=XQ(X,Q,{staggerDelay:G,sequence:K});return`${$}
239
- ${z}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},t6={name:"motion",handler:($,Z,Y,J)=>{let X=Z.length>0?Z[0].toLowerCase()==="true":!0,Q=$Q();return`<div data-animate="${X?"auto":"true"}">${$}</div>${Q}`},hasEndTag:!0,description:"Controls motion and animation preferences"}});import{getRouterScript as $9}from"stx-router";var Z9=b(()=>{J7()});async function QQ($,Z,Y,J){let X=Z[0]?.replace(/['"]/g,"")||"main",Q=$9();if(X!=="main")Q=Q.replace("container:'main'",`container:'${X}'`);return`<script data-stx-router>${Q}</script>`}var Y9;var J7=b(()=>{Z9();Y9={name:"stxRouter",handler:QQ,hasEndTag:!1,description:"Inject the STX SPA router script for client-side navigation"}});function J9($){let Z=$.heatmap;if(!Z?.enabled)return"";let Y={...GQ,...Z};return`
235
+ `}function e6($,Z,Y,J){let X=$;if(J.animation?.enabled===!1)return X;let Q=Y.includes("test")&&Y.includes("animation");if(!YQ(X)&&!Q)return X;if(!X.includes('<style id="stx-animation-base">')){let K=XQ();X=X.replace("</head>",`${K}
236
+ </head>`)}if(X.includes("stx-observe")){if(!X.includes("Intersection Observer for scroll animations")){let z=JQ(),q=X.lastIndexOf("</body>");if(q!==-1)X=X.slice(0,q)+z+`
237
+ `+X.slice(q)}}return X}var K1,s6,r6,a6,t6;var Y7=b(()=>{K1={duration:300,delay:0,ease:"ease",direction:"both"};s6={name:"transition",handler:($,Z,Y,J)=>{if(Z.length<1)return`<div class="stx-error">@transition directive requires at least a transition type</div>${$}`;let X=Z[0],Q=Z.length>1?Number.parseInt(Z[1],10)||K1.duration:K1.duration,G=Z.length>2?Z[2]||K1.ease:K1.ease,K=Z.length>3?Number.parseInt(Z[3],10)||K1.delay:K1.delay,z=Z.length>4?Z[4]||K1.direction:K1.direction,q=`stx-transition-${Math.random().toString(36).substr(2,9)}`,W=$Q(X,{duration:Q,delay:K,ease:G,direction:z}),U="stx-transition",j="";if(X==="fade")j="stx-fade";else if(X==="slide")j="stx-slide";else if(X==="scale")j="stx-scale";else if(X==="flip")j="stx-flip";else if(X==="rotate")j="stx-rotate";return`<div id="${q}" class="${U} ${j} ${z==="out"?"stx-out":""}"
238
+ style="--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${K}ms;">${$}</div>`},hasEndTag:!0,description:"Applies transition effects to an element"},r6={name:"scrollAnimate",handler:($,Z,Y,J)=>{if(Z.length<1)return`<div class="stx-error">@scrollAnimate directive requires at least an animation type</div>${$}`;let X=Z[0],Q=Z.length>1?Number.parseInt(Z[1],10)||300:300,G=Z.length>2?Z[2]||"ease":"ease",K=Z.length>3?Number.parseFloat(Z[3])||0.2:0.2,z=Z.length>4?Number.parseInt(Z[4],10)||0:0,q=`stx-scroll-${Math.random().toString(36).substr(2,9)}`,W=`--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${z}ms; will-change: opacity, transform;`,U="stx-transition stx-observe stx-out";if(X==="fade")U+=" stx-fade";else if(X==="slide-up"||X==="slide")U+=" stx-from-bottom";else if(X==="slide-down")U+=" stx-from-top";else if(X==="slide-left")U+=" stx-from-right";else if(X==="slide-right")U+=" stx-from-left";else if(X==="scale")U+=" stx-scale";else if(X.includes("-"))U+=` stx-${X}`;else U+=` stx-${X}`;return`<div id="${q}" class="${U}" style="${W}" data-threshold="${K}">${$}</div>`},hasEndTag:!0,description:"Applies animations that trigger when scrolled into view"},a6={name:"animationGroup",handler:($,Z,Y,J)=>{if(Z.length<2)return`<div class="stx-error">@animationGroup directive requires a group name and at least one element selector</div>${$}`;let X=Z[0],Q=Z.slice(1).map((q)=>q.startsWith("#")||q.startsWith(".")?q:`#${q}`),G=Y.staggerDelay||50,K=Y.sequence||!0,z=QQ(X,Q,{staggerDelay:G,sequence:K});return`${$}
239
+ ${z}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},t6={name:"motion",handler:($,Z,Y,J)=>{let X=Z.length>0?Z[0].toLowerCase()==="true":!0,Q=ZQ();return`<div data-animate="${X?"auto":"true"}">${$}</div>${Q}`},hasEndTag:!0,description:"Controls motion and animation preferences"}});import{getRouterScript as $9}from"stx-router";var Z9=b(()=>{J7()});async function GQ($,Z,Y,J){let X=Z[0]?.replace(/['"]/g,"")||"main",Q=$9();if(X!=="main")Q=Q.replace("container:'main'",`container:'${X}'`);return`<script data-stx-router>${Q}</script>`}var Y9;var J7=b(()=>{Z9();Y9={name:"stxRouter",handler:GQ,hasEndTag:!1,description:"Inject the STX SPA router script for client-side navigation"}});function J9($){let Z=$.heatmap;if(!Z?.enabled)return"";let Y={...KQ,...Z};return`
240
240
  <!-- stx Heatmap - Privacy-Compliant Tracking -->
241
241
  <script>
242
242
  (function() {
@@ -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 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(`
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 zQ($){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 KQ,Q9;var X7=b(()=>{KQ={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=zQ(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(`
626
626
  `);return`<table>
627
627
  <thead>
628
- ${B}
628
+ ${_}
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||_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(`
642
+ `}),$}import qQ from"process";function p0($="STX_PUBLIC_"){let Z={},Y={};for(let[J,X]of Object.entries(qQ.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:()=>UQ,bundleClientScript:()=>BQ});import F0 from"path";import C0 from"fs";function UQ($){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 jQ($,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 BQ($,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(`${WQ}\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(()=>_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=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:[jQ(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,19 +649,19 @@ 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"),_.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"),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?`
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(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">
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 WQ=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:()=>MQ,generateAutoImportDestructuring:()=>G7,extractBridgeData:()=>P5,extractAndStripCssImports:()=>O$});import S1 from"path";import y5 from"fs";function OQ($){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 LQ($,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 FQ($,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 VQ($,Z){let Y=OQ($);if(!Y||!Y.subpath)return null;let J=LQ(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=FQ(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(HQ,(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=VQ(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 wQ($){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="${wQ(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=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
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 NQ($){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(!RQ.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 AQ){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=NQ(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
- ${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
664
+ ${TQ($,Z)}`;return""}function MQ($,Z=[]){let{browserImports:Y}=H9($),J=new Set(Z);return G7([],Y.filter((X)=>!J.has(X)))}function TQ($,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
665
665
  [${Y.join(", ")}].forEach(function (e) {
666
666
  if (e[1] !== 'undefined') return;
667
667
  console.error(
@@ -670,18 +670,18 @@ ${MQ($,Z)}`;return""}function NQ($,Z=[]){let{browserImports:Y}=H9($),J=new Set(Z
670
670
  + 'or it should be imported from a relative path so the bundler includes it.'
671
671
  );
672
672
  });
673
- `}function P5($){let Z={};for(let Y in $){if(Y.startsWith("__")||Y.startsWith("$"))continue;let J=$[Y];if(typeof J==="function")continue;Z[Y]=J}return Z}function j9($,Z){let Y=new Set;for(let J of $.split(",")){let X=J.trim().replace(/^\.\.\./,"").trim();if(!X)continue;if(Z){let Q=X.lastIndexOf(":");if(Q!==-1)X=X.slice(Q+1).trim()}if(X=X.split("=")[0].trim(),/^[A-Za-z_$][\w$]*$/.test(X))Y.add(X)}return Y}function TQ($,Z){if(new RegExp(`(?:const|let|var|function|class)\\s+${Z}\\b`).test($))return!0;for(let Y of $.matchAll(/(?:const|let|var)\s*\{([^}]*)\}/g))if(j9(Y[1],!0).has(Z))return!0;for(let Y of $.matchAll(/(?:const|let|var)\s*\[([^\]]*)\]/g))if(j9(Y[1],!1).has(Z))return!0;return!1}function F$($,Z){if(!Z)return"";let Y=[];for(let[J,X]of Object.entries(Z)){if(!/^[A-Za-z_$][\w$]*$/.test(J))continue;if(!new RegExp(`\\b${J}\\b`).test($))continue;if(TQ($,J))continue;let Q;try{Q=JSON.stringify(X)}catch{continue}if(Q===void 0)continue;Y.push(` var ${J} = ${Q.replace(/</g,"\\u003c")};`)}if(Y.length===0)return"";return` // stx: server -> client data bridge (seeded from server scope)
673
+ `}function P5($){let Z={};for(let Y in $){if(Y.startsWith("__")||Y.startsWith("$"))continue;let J=$[Y];if(typeof J==="function")continue;Z[Y]=J}return Z}function j9($,Z){let Y=new Set;for(let J of $.split(",")){let X=J.trim().replace(/^\.\.\./,"").trim();if(!X)continue;if(Z){let Q=X.lastIndexOf(":");if(Q!==-1)X=X.slice(Q+1).trim()}if(X=X.split("=")[0].trim(),/^[A-Za-z_$][\w$]*$/.test(X))Y.add(X)}return Y}function IQ($,Z){if(new RegExp(`(?:const|let|var|function|class)\\s+${Z}\\b`).test($))return!0;for(let Y of $.matchAll(/(?:const|let|var)\s*\{([^}]*)\}/g))if(j9(Y[1],!0).has(Z))return!0;for(let Y of $.matchAll(/(?:const|let|var)\s*\[([^\]]*)\]/g))if(j9(Y[1],!1).has(Z))return!0;return!1}function F$($,Z){if(!Z)return"";let Y=[];for(let[J,X]of Object.entries(Z)){if(!/^[A-Za-z_$][\w$]*$/.test(J))continue;if(!new RegExp(`\\b${J}\\b`).test($))continue;if(IQ($,J))continue;let Q;try{Q=JSON.stringify(X)}catch{continue}if(Q===void 0)continue;Y.push(` var ${J} = ${Q.replace(/</g,"\\u003c")};`)}if(Y.length===0)return"";return` // stx: server -> client data bridge (seeded from server scope)
674
674
  ${Y.join(`
675
675
  `)}
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) {
676
+ `}function EQ($){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=DQ[$.mouse];Z.push(`if ($event.button !== ${Y}) return`)}if($.prevent)Z.push("$event.preventDefault()");if($.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function kQ($,Z){let{elementId:Y,event:J,handler:X,modifiers:Q}=$,G=EQ(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(_){if(/\$emit\s*\(/.test(_))return`${U}
679
- ${_}`;return`var scope = $el.closest('[data-stx-scope]');
678
+ };`;function j(B){if(/\$emit\s*\(/.test(B))return`${U}
679
+ ${B}`;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
- ${_}
684
+ ${B}
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}')
@@ -716,25 +716,25 @@ else {
716
716
  else {
717
717
  ${X}
718
718
  }
719
- }${z})`}function kQ($){if($.length===0)return"";return`
719
+ }${z})`}function bQ($){if($.length===0)return"";return`
720
720
  // STX: auto-generated event bindings
721
- ${$.map((Y,J)=>EQ(Y,J)).join(`
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}>
721
+ ${$.map((Y,J)=>kQ(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 yQ($){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(!SQ.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=bQ(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=/\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(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(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>
732
+ })</script>`}if(!L&&!H){if(_)return V(B9($));if(Z.templateContent){let O=B9($);if(O.length>0){let F=yQ(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 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,`
737
+ })()</script>`}var HQ,AQ,_9,RQ,DQ,SQ;var v5=b(()=>{N0();HQ=/^[ \t]*import\s+['"]([^'"]+?\.css)(\?[^'"]*)?['"]\s*;?\s*$/gm;AQ=["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"];RQ=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"]);DQ={left:0,middle:1,right:2};SQ=new Set(["if","else","true","false","null","undefined","typeof","instanceof","in","of","new","this","return","void","delete","throw","switch","case","break","continue","for","while","do","try","catch","finally","const","let","var","function","class","import","export","default","async","await","yield","with","debugger","console","window","document","Math","JSON","Date","Array","Object","String","Number","Boolean","Symbol","Map","Set","Promise","Error","parseInt","parseFloat","isNaN","isFinite","encodeURIComponent","decodeURIComponent","setTimeout","setInterval","clearTimeout","clearInterval","fetch","alert","confirm","prompt","event"])});function xQ($){let Z="",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 fQ($,Z){let Y=/[$A-Z_a-z][$\w]*/g,J;while((J=Y.exec($))!==null){let X=J[0],Q=$[J.index-1];if(CQ.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 gQ($){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=xQ(Z);fQ(Y,Z),gQ(Z);for(let J of V9)if(J.test(Y))throw Error(`Potentially unsafe expression (matched /${J.source}/): ${Z}`);if(!F9.allowBracketNotation&&vQ.test(Z))throw Error(`Bracket notation with strings not allowed: ${Z}. Enable with configureSafeEvaluator({ allowBracketNotation: true })`);return Z}function hQ($){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=hQ(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:"",_=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,`
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 PQ,F9,V9,CQ,w9,vQ,A9;var A0=b(()=>{PQ={maxSanitizeDepth:10,allowBracketNotation:!1},F9={...PQ},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/],CQ=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"]),vQ=/[\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=dQ++,J=`<!--__STX_${$.toUpperCase()}_${Y}__-->`;return uQ.set(J,{type:$,expression:Z}),J}var dQ=0,uQ;var R9=b(()=>{uQ=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:()=>lQ,registerFilter:()=>b9,processExpressions:()=>L1,interpolateScriptsInTemplate:()=>iQ,interpolateScriptExpressions:()=>R$,getAllFilters:()=>S9,evaluateExpression:()=>l0,escapeHtml:()=>s0,defaultFilters:()=>h5,clearCustomFilters:()=>cQ,applyFilters:()=>y9});function pQ($){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 lQ($){for(let[Z,Y]of Object.entries($))b9(Z,Y)}function S9(){return{...h5,...g5}}function cQ(){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 iQ($,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 nQ($){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=nQ(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=oQ(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 oQ($,Z){let Y=null;for(let X of Z){if(X===$)continue;let Q=sQ($,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 sQ($,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(pQ(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>=rQ){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,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(`
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 aQ(){if(!W7)W7=new x9;return W7}var Y5,rQ=500,u_,W7=null,f9;var X5=b(()=>{Y5=new Map;u_=new v9;f9=new Proxy({},{get($,Z){return aQ()[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(`
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 _=U7(j);Z.push({selector:`@${W} ${U.trim()}`,declarations:_.map((B)=>`${B.selector} { ${B.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 B=U7(j);Z.push({selector:`@${W} ${U.trim()}`,declarations:B.map((_)=>`${_.selector} { ${_.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 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
- `,""}),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 _=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,`
765
+ }`}return`${G} { ${K} }`}let z=tQ(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 tQ($,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=eQ(G,Z);if(z)Q.push(Y?`${Y} ${z}`:z)}return Q.join(", ")}function eQ($,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(!$G.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=ZG(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=JG(X,J),{html:X,hasScoped:!0}}function ZG($,Z){return h9($,"__SCOPE_PLACEHOLDER__",{preserveHost:!1}).replace(/\.(__SCOPE_PLACEHOLDER__) /g,`[${Z}] `).replace(/\.(__SCOPE_PLACEHOLDER__)/g,`[${Z}]`)}function JG($,Z){let Y=Z1($,(X,Q)=>{let G=H1(X,Q);return G>Q?G:e1(X,Q)},(X,Q)=>YG(Q)),J=XG(Y.output,Z);return u9.lastIndex=0,J.replace(u9,(X,Q)=>Y.tokens[Number(Q)])}function XG($,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,$G,YG=($)=>`\x00stx-scope-mask-${$}\x00`,u9;var B7=b(()=>{C1();j7=String.raw`(?<![\w-])scoped(?![\w-])`,$G=new RegExp(`<style\\s+[^>]*${j7}`,"i");u9=/\u0000stx-scope-mask-(\d+)\u0000/g});function GG($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return QG.test(Z)}function T$($){m5.lastIndex=0;let Z;while((Z=m5.exec($))!==null){if(Z[0].startsWith("</")||GG(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,QG;var _7=b(()=>{m5=/<\/?template\b[^>]*>/gi,QG=/(?:^|\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:()=>UG,useSeoMeta:()=>p9,usePageTitle:()=>UG,useHead:()=>O7,seoMetaToHeadConfig:()=>D$,resetHead:()=>qG,renderHtmlAttrs:()=>BG,renderHead:()=>jG,renderBodyAttrs:()=>_G,processTitleDirective:()=>LG,processMetaDirective:()=>FG,processHeadDirective:()=>OG,mergeHeadConfigs:()=>Q5,getPageMeta:()=>zG,getHead:()=>H7,definePageMeta:()=>WG,applyHead:()=>HG});function H7(){return F1}function zG(){return I$}function qG(){F1={},KG.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 WG($){if(I$={...I$,...$},$.title||$.description)p9({title:$.title,description:$.description})}function UG($){let Z=typeof $==="function"?$():$;O7({title:Z})}function jG($=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 BG($=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 HG($=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 OG($){let Z="";return{content:$.replace(/@head\s*([\s\S]*?)@endhead/g,(J,X)=>{return Z+=X.trim()+`
767
+ `,""}),headContent:Z.trim()}}function LG($,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 FG($,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,KG,I$;var p5=b(()=>{F1={},KG=[],I$={}});var E$={};e(E$,{stripTypeScript:()=>o9,isCompleteImport:()=>s9,hasVariables:()=>$8,extractVariables:()=>x1,extractScriptFromTemplate:()=>e9,convertToCommonJS:()=>V7});import G5 from"path";import l5 from"process";function VG($){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,`
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),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 () => {
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=VG(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 () => {
772
772
  ${P}
773
773
  ${j0}
774
774
  return module.exports
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
- `+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
- `),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:_,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};
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 MG(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 s9($){let Z=0,Y=null,J=!1,X=!1;for(let Q=0;Q<$.length;Q++){let G=$[Q];if(Y){if(G===Y){if(Y=null,J||Z===0)X=!0}continue}if(G==="'"||G==='"'||G==="`"){Y=G;continue}if(G==="{")Z++;else if(G==="}")Z--;else if($.startsWith("from",Q)&&Z===0)J=!0}return Y===null&&Z===0&&X}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 ")||G==="import"||G.startsWith("import{")){let K=G,z=0;while(!s9(K)&&Q+z+1<J.length)z++,K=`${K} ${J[Q+z].trim()}`;Q+=z;let q=K.match(/^import\s+(\w+)\s+from\s+['"](.+?)['"]/),W=K.match(/^import\s+\{([^}]*)\}\s+from\s+['"](.+?)['"]/),U=K.match(/^import\s+['"](.+?)['"]/),j=K,B=(_)=>{if(_.startsWith("."))return G5.resolve(Y,_);return _};if(q){let[,_,H]=q,L=B(H);X.push(`const ${_} = await import('${L}')`),X.push(`module.exports.${_} = ${_};`)}else if(W){let[,_,H]=W,L=_.trim(),V=B(H);X.push(`const { ${L} } = await import('${V}')`);for(let O of L.split(",")){let F=O.trim().split(/\s+as\s+/).pop()?.trim();if(F)X.push(`module.exports.${F} = ${F};`)}}else if(U){let _=B(U[1]);X.push(`await import('${_}')`)}else X.push(j);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+=`
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 wG(X.join(`
778
+ `),Y)}function wG($,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=AG($,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 AG($,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 r9($,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 a9($){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=r9(Y,J);if(K){let z=a9(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=r9(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=a9(_),w=`__stx_src_${Z}`,A=F.map((R)=>`module.exports.${R} = ${R};`).join(`
780
+ `);return{type:B,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
- ${$[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+=`
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(RG(Y)){let K=NG($,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!t9(Z)}function t9($){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 RG($){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&&!t9(J)){let Q=$[X];J+=`
783
783
  ${Q}`,X++}while(X<$.length){let Q=$[X].trim();if(Q.startsWith(".")||Q.startsWith("?."))J+=`
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 _=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`
784
+ ${$[X]}`,X++;else break}return{value:J,nextIndex:X}}function NG($,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 MG($,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 e9($){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 $8($){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:()=>Y8,processSlots:()=>X8,parseSlots:()=>Z8,parseSlotElement:()=>kG,extractSlotContent:()=>yG,applySlots:()=>PG});function TG($,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 DG($,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 EG($){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=DG($,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=TG($,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)&&!IG.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 Z8($){let Z={default:"",named:new Map},Y=$,J=EG($);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 kG($){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 Y8($,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=bG(X,G)}return X}function bG($,Z){return $.replace(/\{\{\s*([^}]+)\s*\}\}/g,(Y,J)=>{try{let X=J.trim(),Q=J8(X,Z);return s0(String(Q??""))}catch{return`{{ ${J} }}`}})}function J8($,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 X8($,Z,Y){let J=$;J=await SG(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]=J8(V,Y)}return await Y8(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 SG($,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 yG($){let Z=Z8($);return{defaultSlot:Z.default,namedSlots:Z.named}}async function PG($,Z,Y,J){return await X8($,{default:Z,named:Y},J)}var IG;var A7=b(()=>{Y1();A0();IG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"])});function V1($,Z){let Y=CG($,Z);return Y.ok?{expression:Y.expression,endPos:Y.endPos}:null}function CG($,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 vG($,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 Q8($,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(vG(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=Q8($,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 G8=()=>{};var K8=()=>{};var b$=b(()=>{G8();K8()});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($){hG.push($)}function T7($){dG.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 uG($,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$,hG,dG;var D7=b(()=>{S$=[],y$=new Set,hG=[],dG=[]});var q8={};e(q8,{useOptimistic:()=>uG,untrack:()=>I7,state:()=>P$,peek:()=>g$,onMount:()=>M7,onDestroy:()=>T7,isSignal:()=>x$,isDerived:()=>f$,generateSignalsRuntimeDev:()=>h$,generateSignalsRuntime:()=>z8,effect:()=>v$,derived:()=>C$,default:()=>pG,batch:()=>N7});function z8(){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
@@ -4516,37 +4516,38 @@ catch (e2) {
4516
4516
  pick.el.__stx_shown_at = performance.now();
4517
4517
  if (!pick.childrenProcessed) {
4518
4518
  pick.childrenProcessed = true;
4519
- // Defer child processing (same rationale as bindIf, CLAUDE.md
4520
- // item 35): keep child effects from subscribing to THIS chain
4521
- // effect's tracked signals.
4522
- (function (branch) {
4523
- setTimeout(function () {
4524
- var childScope = { ...globalHelpers, ...capturedComponentScope, ...(branch.capturedElementScope || {}) };
4525
- // Components compiled inside any branch of an if/else-if/else
4526
- // chain carry scoped setup scripts with them. Branch nodes are
4527
- // detached before those scripts can execute, so simply
4528
- // re-inserting the selected branch leaves component props,
4529
- // events, directives, and projected slot expressions inert.
4530
- // Hydrate those scopes before the normal subtree walk, matching
4531
- // the single-template :if and :for insertion paths.
4532
- var previouslyTrackedNodes = new Set();
4533
- branch.nodes.forEach(function (n) {
4534
- if (n && n.__stx_disposers) previouslyTrackedNodes.add(n);
4535
- });
4536
- hydrateComponentScopes(branch.nodes, childScope);
4537
- branch.nodes.forEach(function (n) {
4538
- if (n.nodeType !== 1) return; // whitespace/text between template children
4539
- // A scoped component receives its disposer in the outer scope
4540
- // walk immediately after processElement returns from binding
4541
- // this conditional. That first pass intentionally stops at
4542
- // :if, so a disposer does not mean its children were hydrated.
4543
- if (previouslyTrackedNodes.has(n) || !n.__stx_disposers)
4544
- processElement(n, childScope);
4545
- n.removeAttribute('x-cloak');
4546
- n.querySelectorAll('[x-cloak]').forEach(function (c) { c.removeAttribute('x-cloak'); });
4547
- });
4548
- }, 0);
4549
- })(pick);
4519
+ // Hydrate before the outer scope walk can see the inserted branch.
4520
+ // Chromium executes scripts cloned from template.content as soon as
4521
+ // they are connected, so deferring this pass allowed the global walk
4522
+ // to process projected slot expressions without the loop caller
4523
+ // scope. peek() keeps this synchronous pass from subscribing child
4524
+ // reads to the current chain effect.
4525
+ peek(function () {
4526
+ var childScope = { ...globalHelpers, ...capturedComponentScope, ...(pick.capturedElementScope || {}) };
4527
+ // Components compiled inside any branch of an if/else-if/else
4528
+ // chain carry scoped setup scripts with them. Branch nodes are
4529
+ // detached before those scripts can execute, so simply
4530
+ // re-inserting the selected branch leaves component props,
4531
+ // events, directives, and projected slot expressions inert.
4532
+ // Hydrate those scopes before the normal subtree walk, matching
4533
+ // the single-template :if and :for insertion paths.
4534
+ var previouslyTrackedNodes = new Set();
4535
+ pick.nodes.forEach(function (n) {
4536
+ if (n && n.__stx_disposers) previouslyTrackedNodes.add(n);
4537
+ });
4538
+ hydrateComponentScopes(pick.nodes, childScope);
4539
+ pick.nodes.forEach(function (n) {
4540
+ if (n.nodeType !== 1) return; // whitespace/text between template children
4541
+ // A scoped component receives its disposer in the outer scope
4542
+ // walk immediately after processElement returns from binding
4543
+ // this conditional. That first pass intentionally stops at
4544
+ // :if, so a disposer does not mean its children were hydrated.
4545
+ if (previouslyTrackedNodes.has(n) || !n.__stx_disposers)
4546
+ processElement(n, childScope);
4547
+ n.removeAttribute('x-cloak');
4548
+ n.querySelectorAll('[x-cloak]').forEach(function (c) { c.removeAttribute('x-cloak'); });
4549
+ });
4550
+ });
4550
4551
  }
4551
4552
  }
4552
4553
 
@@ -4717,10 +4718,13 @@ else if (!value && isInserted) {
4717
4718
  else if (value && isInserted && !childrenProcessed) {
4718
4719
  // Initial template content is cloned before the effect runs. Process
4719
4720
  // it after the condition is confirmed so hidden branches stay inert.
4721
+ // Keep hydration synchronous so the outer scope walk cannot bind
4722
+ // caller-owned slot expressions first, while peek() prevents child
4723
+ // reads from subscribing to this conditional effect.
4720
4724
  childrenProcessed = true;
4721
- setTimeout(function() {
4725
+ peek(function() {
4722
4726
  if (isInserted) processTemplateNodes(currentNodes);
4723
- }, 0);
4727
+ });
4724
4728
  }
4725
4729
  }
4726
4730
  else {
@@ -7320,16 +7324,16 @@ catch (e) { console.warn('[stx] mount callback error:', e); }
7320
7324
  }
7321
7325
  }
7322
7326
  })();
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]+`
7327
+ `}var pG;var W8=b(()=>{D7();D7();pG={state:P$,derived:C$,effect:v$,batch:N7,onMount:M7,onDestroy:T7,isSignal:x$,isDerived:f$,untrack:I7,peek:g$,generateSignalsRuntime:z8,generateSignalsRuntimeDev:h$}});var E7={};e(E7,{templateCache:()=>U8,readFileCached:()=>lG,invalidateFileCacheByDir:()=>iG,invalidateFileCache:()=>cG,hashFilePath:()=>o5,getCachedSignalsRuntime:()=>sG,getCachedRouterScript:()=>rG,clearDevCaches:()=>aG,checkCache:()=>tG,cacheTemplate:()=>eG,__setSignalsGeneratorsForTest:()=>oG});import w1 from"fs";import K5 from"path";async function lG($){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 cG($){g1.delete($)}function iG($){for(let Z of g1.keys())if(Z.startsWith($))g1.delete(Z)}function oG($){j8=$}async function sG($=!1){let Z=j8??await Promise.resolve().then(() => (W8(),q8));if($)return Z.generateSignalsRuntimeDev();if(d$===null)d$=Z.generateSignalsRuntime();return d$}async function rG(){if(u$===null){let{getRouterScript:$}=await import("stx-router");u$=$()}return u$}function aG(){g1.clear(),_8(),d$=null,nG=null,u$=null}function B8($){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 tG($,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!==B8(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 eG($,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:B8(J),generatedAt:Date.now()};await Bun.write(G,JSON.stringify(z,null,2)),U8.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,$K)}var U8,g1,d$=null,nG=null,j8=null,u$=null,$K=16;var k7=b(()=>{N0();U8=new Map,g1=new Map});function H8($){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]+`
7324
7328
  `;let X=/\{\{([\s\S]*?)\}\}/g;while((J=X.exec($))!==null)Y+=J[1]+`
7325
7329
  `;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">
7326
7330
  // STX: Auto-load @stacksjs/browser (auto-initializes API and loads models)
7327
7331
  import '@stacksjs/browser'
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}
7332
+ </script>`;if($.includes("</head>")){let j=$.indexOf("</head>"),_=$.slice(0,j).indexOf("<script");if(_!==-1)return $.slice(0,_)+U+`
7333
+ `+$.slice(_);return $.replace("</head>",`${U}
7330
7334
  </head>`)}if($.includes("<body"))return $.replace(/<body([^>]*)>/,`<body$1>
7331
7335
  ${U}`);return U+`
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>
7336
+ `+$}async function O8($,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>
7333
7337
  `+$.slice(K);if($.includes("</head>")){let z=$.indexOf("</head>");return $.slice(0,z)+`<script data-stx-runtime src="/__stx/runtime.__STX_HASH__.js"></script>
7334
7338
  `+$.slice(z)}return`<script data-stx-runtime src="/__stx/runtime.__STX_HASH__.js"></script>
7335
7339
  `+$}let{getCachedSignalsRuntime:Y}=await Promise.resolve().then(() => (k7(),E7)),X=`<script data-stx-scoped data-stx-runtime>${await Y(Z.debug)}</script>`,Q=$.indexOf("<script");if(Q!==-1)return $.slice(0,Q)+X+`
@@ -7338,32 +7342,32 @@ ${U}`);return U+`
7338
7342
  `+X+$.slice(K+1)}return X+`
7339
7343
  `+$}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>
7340
7344
  `}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+`
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
7345
+ </body>`+$.slice(G+7)}var c$={};e(c$,{scanScriptTags:()=>N8,rewriteStxImportSpecifiers:()=>D8,processSignals:()=>v7,processScriptSetup:()=>T8,preEvalLiteralReactiveIfs:()=>P7,parseLoopExpression:()=>M8,hasSignalsSyntax:()=>l$,findMarkupIndexOutsideScripts:()=>p$,extractExports:()=>I8,convertSignalLoopsToAttributes:()=>C7,convertSignalDirectivesToAttributes:()=>y7});function N8($,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 M8($){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}=F8(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}=F8(X);if(G)return{style:"in",iterable:Q,itemVar:G,indexVar:K}}return{style:"unknown",iterable:null,itemVar:null,indexVar:null}}function F8($){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 YK($){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 JK($){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 XK($){return $.replace(/'(?:\\.|[^'\\])*'/g,"''").replace(/"(?:\\.|[^"\\])*"/g,'""').replace(/`(?:\\.|[^`\\])*`/g,"``")}function w8($,Z,Y){if(!$)return!1;let J=XK($),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(V8.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(V8.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(R8);if(Q&&QK(Q[3],Q[1])){let[,G,K,z]=Q;return`<${G}${K}${J}>${z}</${G}>`}return`<template${J}>${X}</template>`}function QK($,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=JK($);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(YK(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)=>w8(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(`
7346
+ `)}else{if(!w8(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 GK($){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 KK($,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 qK($,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 zK.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=GK(H);if(O===void 0)continue;let F=K.index,w=F+U.length,N=!!V||/\/\s*>$/.test(U)||S7.has(j.toLowerCase())?w:KK($,F,j,w);if(N===-1)continue;if((_===":if"||_==="x-if"||_==="@if")&&qK($,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=M8(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(R8),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 WK($){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]!==`
7347
+ `)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&&$[_]!==`
7348
+ `)_++;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 T8($,Z,Y){let J=N8($,{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()}_${ZK++}`,{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)=>D8(w));let O=o0(V);q.push(`// \u2500\u2500 merged signal script #${L+1} \u2500\u2500
7345
7349
  ${O}`)}let W=q.join(`
7346
7350
 
7347
- `);W=qK(W);let U=T8(W),j=U.split(",").map((L)=>L.trim()).filter(Boolean),_=F$(W,Y),B=`
7351
+ `);W=WK(W);let U=I8(W),j=U.split(",").map((L)=>L.trim()).filter(Boolean),B=F$(W,Y),_=`
7348
7352
  <script data-stx-scoped>
7349
7353
  function ${G}() {
7350
7354
  ${Z5("const",j)}
7351
- ${_}${W}
7355
+ ${B}${W}
7352
7356
  return { ${U} };
7353
7357
  }
7354
7358
  window.__stx_latestSetup=${G};
7355
7359
  if(window.stx)window.stx._latestSetup=${G};
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?`
7360
+ </script>`,H=$;for(let L of Q)H=H.split(L.fullMatch).join("");if(H.includes("<body"))H=H.replace(new RegExp(`<body(${L8})>`),`<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(${L8})>`,"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 I8($){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===`
7361
+ `)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]!==`
7362
+ `)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 T8(X,Y,J);if(X=Q,X=await O8(X,Z),X=H8(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}
7363
+ ${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)}
7364
+ ${G}${X.slice(B)}`}else X=`${X}
7365
+ ${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 D8($){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 A8;return`var ${Z.join(", ")}; ${A8}`}var ZK=0,L8=`(?:"[^"]*"|'[^']*'|[^>"'])*`,R8,V8,S7,zK,A8="/* [stx import stripped, resolved via window.stx in __stx_setup] */";var s5=b(()=>{v5();b$();d5();N0();C1();R8=/^<([a-zA-Z][a-zA-Z0-9-]*)\b((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*\s*)>([\s\S]*)<\/\1>$/s;V8=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"]);zK=/\s(?::else-if|x-else-if|@else-if|:else|x-else|@else)(?=[=\s/>])/});import UK from"fs";import g from"path";function E8($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function BK($){return/\bjs\b/.test($)||/\blang\s*=\s*["']?(js|javascript)["']?/i.test($)}function y1($){return!BK($)}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]!==`
7366
+ `)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 HK($){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 OK($){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 LK($,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 HK(K)){let q=z.trim();if(!q||q.startsWith("..."))continue;let W=OK(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 FK($){return $==="visible"||$==="idle"||$==="interaction"||$.startsWith("media:")}function VK($){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 wK($){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"&&FK(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 oX of u){let e4=g.join(t4,oX);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?`
7363
7367
  Searched paths:
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=`
7368
+ ${F.map((u)=>` - ${u}`).join(`
7369
+ `)}`:"";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:{},...VK(Y)&&{__stx_force_signals:!0}};LK(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(`
7370
+ `)}`}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=wK(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,"_")}_${++jK}_${Math.random().toString(36).slice(2,8)}`,a=G1;if(X0){let h="";if(Object.keys(Z).length>0)try{h=` data-stx-props="${E8(JSON.stringify(Z))}"`}catch{}let u=B?` stx-hydrate="${E8(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=_K(n0),k1=`
7367
7371
  (function() {
7368
7372
  ${Z5("const",[...C9,...E1],n0)}
7369
7373
  const __scope = window.stx._scopes = window.stx._scopes || {};
@@ -7383,7 +7387,7 @@ ${n0}
7383
7387
  // Register all defined signals and functions in this scope
7384
7388
  const __localVars = {};
7385
7389
  try {
7386
- ${E1.map((u0)=>`if (typeof ${u0} !== 'undefined') __localVars['${u0}'] = ${u0};`).join(`
7390
+ ${E1.map((m0)=>`if (typeof ${m0} !== 'undefined') __localVars['${m0}'] = ${m0};`).join(`
7387
7391
  `)}
7388
7392
  }
7389
7393
  catch (e) {}
@@ -7392,15 +7396,15 @@ catch (e) {}
7392
7396
  finally {
7393
7397
  window.__STX_CURRENT_ELEMENT__ = __previousCurrentElement;
7394
7398
  }
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+`
7399
+ })();`;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+`
7396
7400
  `+P.join(`
7397
7401
  `),d)a+=`
7398
7402
  `+d}else{if(d)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+=`
7403
+ `+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+=`
7400
7404
  `+P.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(`
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(`
7405
+ `),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 AK($,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 AK($,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{_=UK.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 k8($,Z,Y){let J=0,X="",Q="";try{if(typeof Z==="number"&&Z>=0){let G=$.split(`
7406
+ `),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(`
7407
+ `);break}}else if(Y){let G=$.indexOf(Y);if(G>=0)return k8($,G)}}catch{}return{lineNumber:J,lineContent:X,context:Q}}function q0($,Z,Y,J,X,Q){let{lineNumber:G,context:K}=k8(J,X,Q),z=Y.split("/").pop(),q=0;if(typeof X==="number"&&X>=0&&J){let U=J.lastIndexOf(`
7404
7408
  `,Math.max(0,X-1));q=X-(U+1)+1}let W="";if(G>0)W+=`
7405
7409
  ${Y}:${G}${q>0?`:${q}`:""}: ${$.toLowerCase()} error: ${Z}
7406
7410
  `;if(W+=`
@@ -7413,8 +7417,8 @@ ${$0.yellow}${$0.bold}Message:${$0.reset} ${Z}
7413
7417
  `,K)W+=`
7414
7418
  ${$0.blue}${$0.bold}Context:${$0.reset}
7415
7419
  ${$0.dim}${K}${$0.reset}
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`
7420
+ `;return W}function _8(){i$.clear()}var i$,jK=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 b8($,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===`
7421
+ `||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 S8($,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 MK($){if(RK.set($.name,$),$.client)NK.set($.name,$.client)}function s$($){return MK($),{name:$.name,hasEndTag:$.hasEndTag??!0,description:$.description,handler:async(Y,J,X,Q)=>{let G=TK(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 TK($,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 RK,NK;var h7=b(()=>{RK=new Map,NK=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 y8($,Z,Y=IK,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 DK[$]||"application/octet-stream"}var z5,IK,r5,DK;var p7=b(()=>{z5=[320,480,640,768,1024,1280,1536,1920,2560],IK=[1,1.5,2,3],r5=["avif","webp","jpeg"],DK={avif:"image/avif",webp:"image/webp",jpeg:"image/jpeg",png:"image/png",gif:"image/gif"}});async function kK(){try{return await import("ts-images")}catch{return null}}async function bK($,Z={}){let Y={...EK,...Z},J=await kK();if(J)try{return await SK($,Y,J)}catch(X){console.warn(`[stx-media] ts-images placeholder generation failed, using fallback: ${X}`)}return yK($,Y)}async function SK($,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 yK($,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 P8($,Z,Y={}){let J=Y.transitionDuration||300,X=Y.easing||"ease-out";return`
7418
7422
  #${$} {
7419
7423
  --stx-img-transition-duration: ${J}ms;
7420
7424
  --stx-img-transition-easing: ${X};
@@ -7431,7 +7435,7 @@ ${$0.dim}${K}${$0.reset}
7431
7435
  #${$}.stx-img-loaded img {
7432
7436
  opacity: 1;
7433
7437
  }
7434
- `.trim()}async function P8($,Z={}){let Y=`${$}:${JSON.stringify(Z)}`;if(l7.has(Y))return l7.get(Y);let J=await kK($,Z);return l7.set(Y,J),J}var DK,c7,l7;var C8=b(()=>{DK={strategy:"thumbhash",width:20,quality:50,blurLevel:40,transitionDuration:300,easing:"ease-out"},c7=`
7438
+ `.trim()}async function C8($,Z={}){let Y=`${$}:${JSON.stringify(Z)}`;if(l7.has(Y))return l7.get(Y);let J=await bK($,Z);return l7.set(Y,J),J}var EK,c7,l7;var v8=b(()=>{EK={strategy:"thumbhash",width:20,quality:50,blurLevel:40,transitionDuration:300,easing:"ease-out"},c7=`
7435
7439
  .stx-img-placeholder {
7436
7440
  position: relative;
7437
7441
  overflow: hidden;
@@ -7460,8 +7464,8 @@ ${$0.dim}${K}${$0.reset}
7460
7464
  filter: blur(0);
7461
7465
  transform: scale(1);
7462
7466
  }
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}">
7467
+ `.trim();l7=new Map});import{createHash as f8}from"crypto";import{readFile as PK,stat as g8}from"fs/promises";async function b0($){try{let Z=await PK($);return f8("sha256").update(Z).digest("hex").slice(0,16)}catch{return""}}function x8($){return f8("sha256").update($).digest("hex").slice(0,16)}function r$($,Z){let Y=JSON.stringify(Z,Object.keys(Z).sort());return`${x8($)}-${x8(Y)}`}async function i7($){try{return(await g8($)).mtimeMs}catch{return 0}}async function D0($){try{return await g8($),!0}catch{return!1}}var d1=()=>{};import{mkdir as CK,readFile as vK,writeFile as xK,readdir as qO,rm as fK,stat as WO}from"fs/promises";import{join as d8,dirname as gK}from"path";async function hK($){try{await CK($,{recursive:!0})}catch{}}function u8($,Z,Y){return d8($,Y,`${Z}.json`)}async function h8($,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 h8(Q,$,J.maxAge))return Q.lastAccessedAt=Date.now(),Q.data;q5.delete(X)}let G=u8(J.directory,X,Y);if(await D0(G))try{let K=await vK(G,"utf-8"),z=JSON.parse(K);if(await h8(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=u8(X.directory,Q,J);try{await hK(gK(q)),await xK(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=d8(Z.directory,J);try{await fK(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={...dK,...$}}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 dK,$4=null;var r7=b(()=>{o7();dK={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500,cacheVariants:!0,cachePlaceholders:!0}});import{resolve as uK,basename as mK,extname as pK,join as lK}from"path";import{mkdir as cK}from"fs/promises";async function a7(){try{return await import("ts-images")}catch{return null}}function p8($){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 iK($,Z){let Y=Z?p8(Z):p8("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 l8($,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=uK($);if(!await D0(Q))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let G=iK(Y,Z.preset),K=Y.outputDir||"dist/images",z=Y.baseUrl||"/images";await cK(K,{recursive:!0});let q=await b0(Q),W=mK($,pK($)),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=lK(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 c8($,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 i8=b(()=>{d1();r7()});import{resolve as nK,basename as oK,extname as sK,join as rK}from"path";import{mkdir as aK}from"fs/promises";async function tK(){try{return await import("ts-images")}catch{return null}}async function n8($,Z,Y){let J=await tK();if(!J)return console.warn("[stx-media] ts-images not installed, skipping responsive generation"),null;let X=nK($);if(!await D0(X))return console.warn(`[stx-media] Source file not found: ${$}`),null;try{let Q=Z.responsiveWidths||Y.breakpoints||eK,G=Z.formats||Y.defaultFormats||["avif","webp","jpeg"],K=Y.outputDir||"dist/images",z=Y.baseUrl||"/images";await aK(K,{recursive:!0});let q=await b0(X),W=oK($,sK($)),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=rK(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||$z(Q),j}catch(Q){return console.error(`[stx-media] Responsive generation failed: ${Q}`),null}}function $z($){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 o8($,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 eK;var s8=b(()=>{d1();eK=[320,480,640,768,1024,1280,1536,1920]});var r8={};e(r8,{setCachedImageResult:()=>J4,processImage:()=>l8,optimizeImage:()=>c8,getCachedImageResult:()=>Y4,generateSrcset:()=>o8,generateResponsiveVariants:()=>n8,clearImageCache:()=>m8,applyTransformations:()=>t7,ImageProcessorCache:()=>Z4});var a8=b(()=>{i8();s8();r7()});async function Zz(){try{return await Promise.resolve().then(() => (a8(),r8))}catch($){if(!t8)console.warn("[stx-media] Image processor not available, some features disabled:",$),t8=!0;return null}}async function X4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipOptimization){if(Y.tsImagesConfig?.enabled&&!Y.isDev)return Qz(J,Y)}if(Y.processedResult?.processed)return Y3($,Y.processedResult,Z);if(Y.responsiveVariants)return YZ($,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 Xz($);let k,C,x=E||`stx-img-${Math.random().toString(36).slice(2,8)}`;if(_!=="none"&&!V)try{k=await C8(X,{strategy:_,...H}),C=P8(x,k,H)}catch{}let f=W!==void 0&&G!==void 0,d;if(f)d=Jz($,x,k,Z);else d=await Yz($,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(!e8&&_!=="none")p.push(c7),e8=!0;if(C)p.push(C);let W0=L?ZZ(x):void 0;return{html:d,preloadLink:c,css:p.length>0?p.join(`
7468
+ `):void 0,script:W0}}async function Yz($,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:$Z(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}">
7465
7469
  <picture>
7466
7470
  ${I.join(`
7467
7471
  `)}
@@ -7471,9 +7475,9 @@ ${I.join(`
7471
7475
  ${I.join(`
7472
7476
  `)}
7473
7477
  <img ${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}">
7478
+ </picture>`;return D}function Jz($,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=y8(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:$Z(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}">
7475
7479
  <img ${T} ${I} />
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`
7480
+ </div>`}return`<img ${Z?`id="${Z}" `:""}${T} ${I} />`}function Xz($){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 $Z($,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 ZZ($){return`
7477
7481
  (function() {
7478
7482
  const container = document.getElementById('${$}');
7479
7483
  if (!container) return;
@@ -7510,22 +7514,22 @@ ${I.join(`
7510
7514
 
7511
7515
  observer.observe(container);
7512
7516
  })();
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}">
7517
+ `.trim()}async function Qz($,Z){let Y=await Zz();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 YZ($,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}">
7514
7518
  <picture>
7515
7519
  ${A.join(`
7516
7520
  `)}
7517
7521
  <img ${N.join(" ")} />
7518
7522
  </picture>
7519
- </div>`}else D=`<picture${B?` id="${B}"`:""}>
7523
+ </div>`}else D=`<picture${_?` id="${_}"`:""}>
7520
7524
  ${A.join(`
7521
7525
  `)}
7522
7526
  <img ${N.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(`
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+`
7527
+ </picture>`;let y=[];if(Z.placeholder)y.push(c7);let S=G?ZZ(_):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(`
7528
+ `):void 0,script:S}}async function YZ($,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 t8=!1,e7=80,Q4="async",G4="lazy",e8=!1;var JZ=b(()=>{p7();v8()});function Gz(){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}=Kz($,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+`
7525
7529
  `+W;if(q.css)W+=`
7526
7530
  <style>${q.css}</style>`;if(q.script)W+=`
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"?>
7531
+ <script>${q.script}</script>`;return W},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function Kz($,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=zz(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 zz($){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 XZ;var QZ=b(()=>{h7();JZ();p7();XZ=Gz()});class z4{config;constructor($={}){this.config={...qz,...$}}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 GZ(){return X3().clear()}var qz,K4=null;var Q3=b(()=>{o7();qz={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 KZ($,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 qZ,basename as WZ,extname as UZ,join as u1}from"path";import{mkdir as _4,writeFile as jZ}from"fs/promises";async function BZ(){try{return await import("ts-videos")}catch{return null}}async function H4($,Z,Y,J,X){let Q=await BZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate HLS manifest"),null;try{let G=qZ($);if(!await D0(G))return null;let K=await b0(G),z=WZ($,UZ($)),q=u1(Y,`${z}-${K}-hls`);await _4(q,{recursive:!0});let W=Z.length>0?Z:_Z,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=Wz(H,J,z,K);return await jZ(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 Wz($,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(`
7532
+ `)}async function O4($,Z,Y,J,X){let Q=await BZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate DASH manifest"),null;try{let G=qZ($);if(!await D0(G))return null;let K=await b0(G),z=WZ($,UZ($)),q=u1(Y,`${z}-${K}-dash`);await _4(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=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=Uz(L,V,H,U,j);await jZ(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 Uz($,Z,Y,J,X){let Q=zZ(Y),G=zZ(X),K=`<?xml version="1.0" encoding="UTF-8"?>
7529
7533
  <MPD xmlns="urn:mpeg:dash:schema:mpd:2011"
7530
7534
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
7531
7535
  xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd"
@@ -7551,7 +7555,7 @@ ${A.join(`
7551
7555
  </Representation>
7552
7556
  `}K+=` </AdaptationSet>
7553
7557
  `}return K+=` </Period>
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(`
7558
+ </MPD>`,K}function zZ($){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 HZ,basename as jz,extname as Bz,join as _z}from"path";import{mkdir as Hz}from"fs/promises";async function OZ(){try{return await import("ts-videos")}catch{return null}}function Oz($){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 Lz($){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 OZ();if(!Z)return null;try{let Y=HZ($),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 LZ($,Z,Y,J){let X=await OZ();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=HZ($);if(!await D0(G))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let K=Y.outputDir||"dist/videos",z=Y.baseUrl||"/videos";await Hz(K,{recursive:!0});let q=await b0(G),W=jz($,Bz($)),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=Oz(Z.quality);if(Z.platform)Object.assign(j,Lz(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`,_=_z(K,B);try{let H=await Fz(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 Fz($,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 FZ=b(()=>{d1();Q3();U3();j3()});var VZ={};e(VZ,{setCachedVideoResult:()=>W4,processVideo:()=>LZ,getCachedVideoResult:()=>q4,generateThumbnails:()=>B4,generateSpriteSheet:()=>KZ,generatePoster:()=>j4,generateHLSManifest:()=>H4,generateDASHManifest:()=>O4,clearVideoCache:()=>GZ,analyzeVideo:()=>B3,VideoProcessorCache:()=>z4});var wZ=b(()=>{FZ();U3();j3();Q3()});async function RZ(){try{return await Promise.resolve().then(() => (wZ(),VZ))}catch($){if(!AZ)console.warn("[stx-media] Video processor not available, some features disabled:",$),AZ=!0;return null}}async function L4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipProcessing){if(Y.tsVideosConfig?.enabled&&!Y.isDev)return Mz(J,Y)}if(Y.processedResult?.processed)return IZ($,Y.processedResult,Z);let X;if(J.generatePoster&&J.src&&!$.poster)X=await Tz(J,Y);let{src:Q,sources:G=[],poster:K,posterPlaceholder:z,controls:q=NZ,autoplay:W=!1,muted:U=!1,loop:j=!1,preload:B=MZ,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 Az($,Z);if(V&&V!=="video")return wz(Q||"",V,$);let E=G.length>0?G:Q?[{src:Q,type:TZ(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(`
7555
7559
  `),S=`<video ${D.join(" ")}>
7556
7560
  ${y}
7557
7561
  Your browser does not support the video tag.
@@ -7590,12 +7594,12 @@ ${y}
7590
7594
 
7591
7595
  observer.observe(video);
7592
7596
  })();
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;">
7597
+ `.trim();return{html:S,script:k}}function wz($,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=Rz($),z=q?`https://www.youtube-nocookie.com/embed/${q}`:$;break;case"vimeo":q=Nz($),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;">
7594
7598
  <iframe ${W.join(" ")} style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>
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=`
7599
+ </div>`}}function Az($,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=`
7596
7600
  <div
7597
7601
  id="${L}"
7598
- class="ts-video-player${B?" "+R0(B):""}"
7602
+ class="ts-video-player${_?" "+R0(_):""}"
7599
7603
  style="${O}"
7600
7604
  data-ts-video-player
7601
7605
  data-config='${JSON.stringify(V)}'
@@ -7629,7 +7633,7 @@ ${y}
7629
7633
 
7630
7634
  // Load ts-video-player from CDN
7631
7635
  var script = document.createElement('script');
7632
- script.src = '${Fz}';
7636
+ script.src = '${Vz}';
7633
7637
  script.onload = initPlayer;
7634
7638
  script.onerror = function() {
7635
7639
  console.error('[stx] Failed to load ts-video-player');
@@ -7759,7 +7763,7 @@ else {
7759
7763
  .ts-video-player__play-button svg {
7760
7764
  margin-left: 4px;
7761
7765
  }
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(" ")}>
7766
+ `.trim();return{html:F,script:w,css:A}}function TZ($){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 Rz($){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 Nz($){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 Mz($,Z){let Y=await RZ();if(!Y)return L4({...$,process:!1},Z);let J=Z.tsVideosConfig,X=await Y.processVideo($.src,$,J,$.onProcessProgress);if(X.processed)return IZ($,X,Z);return L4({...$,process:!1},Z)}async function Tz($,Z){let Y=await RZ();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 IZ($,Z,Y){let{controls:J=NZ,autoplay:X=!1,muted:Q=!1,loop:G=!1,preload:K=MZ,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=TZ(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(" ")}>
7763
7767
  ${I}
7764
7768
  Your browser does not support the video tag.
7765
7769
  </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}">
@@ -7808,9 +7812,9 @@ ${E}
7808
7812
  width: 100%;
7809
7813
  height: auto;
7810
7814
  }
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+=`
7815
+ `.trim();return{html:E,script:D,css:y}}var AZ=!1,NZ=!0,MZ="metadata",Vz="https://cdn.jsdelivr.net/npm/ts-video-player@latest/dist/index.min.js";var DZ=b(()=>{H3()});function EZ(){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}=Iz($,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+=`
7812
7816
  <style>${q.css}</style>`;if(q.script)W+=`
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;">
7817
+ <script>${q.script}</script>`;return W},defaults:{src:"",options:{controls:!0,lazy:!0,preload:"metadata"}}})}function Iz($,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=Dz(J),Q=kZ(X[0],Y)||"",G={};if(X[1]){let K=kZ(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 Dz($){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 kZ($,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();DZ();_3=EZ()});function Ez($,Z){let Y=Z.pwa?.manifest?.themeColor||"#4f46e5";return`<div class="stx-pwa-install" style="display:none;">
7814
7818
  ${$}
7815
7819
  </div>
7816
7820
  <script>
@@ -7855,7 +7859,7 @@ ${E}
7855
7859
  }
7856
7860
  }
7857
7861
  })();
7858
- </script>`}function Ez($,Z){let Y=Z.pwa?.updates,J=Y?.message||"A new version is available. Reload to update?",X=Y?.autoReload||!1,Q=$.trim().length>0,G=`
7862
+ </script>`}function kz($,Z){let Y=Z.pwa?.updates,J=Y?.message||"A new version is available. Reload to update?",X=Y?.autoReload||!1,Q=$.trim().length>0,G=`
7859
7863
  <div class="stx-pwa-update-banner" style="
7860
7864
  position: fixed;
7861
7865
  bottom: 0;
@@ -7966,7 +7970,7 @@ else {
7966
7970
  // Also listen for custom event
7967
7971
  window.addEventListener('pwa-update-available', showUpdate);
7968
7972
  })();
7969
- </script>`}function kz($,Z){let Y=$.trim().length>0,J=`
7973
+ </script>`}function bz($,Z){let Y=$.trim().length>0,J=`
7970
7974
  <div class="stx-offline-indicator" style="
7971
7975
  position: fixed;
7972
7976
  top: 16px;
@@ -8027,7 +8031,7 @@ else {
8027
8031
  window.addEventListener('offline', updateStatus);
8028
8032
  updateStatus();
8029
8033
  })();
8030
- </script>`}function bz($,Z){let Y=Z.pwa?.push,J=Y?.vapidPublicKey||"",X=Y?.subscriptionEndpoint||"/api/push/subscribe";return`<div class="stx-pwa-push" style="display:none;">
8034
+ </script>`}function Sz($,Z){let Y=Z.pwa?.push,J=Y?.vapidPublicKey||"",X=Y?.subscriptionEndpoint||"/api/push/subscribe";return`<div class="stx-pwa-push" style="display:none;">
8031
8035
  ${$}
8032
8036
  </div>
8033
8037
  <script>
@@ -8109,11 +8113,11 @@ catch (error) {
8109
8113
  init();
8110
8114
  }
8111
8115
  })();
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(`
8113
- ${$.message}`),Z&&$.line){let Q=dz(Z,$.line,2);if(Q)J.push(`
8116
+ </script>`}var yz,Pz,Cz,vz,bZ;var SZ=b(()=>{yz={name:"pwa.installButton",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Ez($,X)},hasEndTag:!0,description:"Renders a PWA install prompt button that appears when the app can be installed"},Pz={name:"pwa.updatePrompt",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return kz($,X)},hasEndTag:!0,description:"Renders a PWA update notification UI when a new version is available"},Cz={name:"pwa.offlineIndicator",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return bz($,X)},hasEndTag:!0,description:"Renders an offline status indicator that shows when the user loses connection"},vz={name:"pwa.pushSubscribe",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Sz($,X)},hasEndTag:!0,description:"Renders a push notification subscription button"},bZ=[yz,Pz,Cz,vz]});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 xz from"path";function w4(){return{...L3}}function A4($){if(!L3.showRelativePaths||!$)return $;let Z=L3.baseDir||process.cwd();try{let Y=xz.relative(Z,$);return Y.startsWith("..")?$:Y}catch{return $}}var fz,L3,R4,m1,N4;var M4=b(()=>{F4();fz={showRelativePaths:!1,enableAutoRecovery:e5(),logRecoveryWarnings:!0},L3={...fz};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 PZ($){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=pz(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=hz(L);break;case"json":V=JSON.stringify(L,null,2);break;case"console":V=dz(L,K,z);break;case"text":default:V=gz(L,K,z);break}return{formatted:V,data:L}}function gz($,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(`
8117
+ ${$.message}`),Z&&$.line){let Q=uz(Z,$.line,2);if(Q)J.push(`
8114
8118
  ${Q}`)}if($.snippet)J.push(`
8115
8119
  Snippet: ${$.snippet}`);if($.suggestion)J.push(`
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(`
8120
+ Suggestion: ${$.suggestion}`);return J.join(" ")}function hz($){let Z=$.code?` [${$.code}]`:"",Y=$.filePath?` in ${$.filePath}${$.line?`:${$.line}`:""}`:"",J=`<!-- [${$.type} Error${Z}]${Y}: ${yZ($.message)}`;if($.suggestion)J+=` | Suggestion: ${yZ($.suggestion)}`;return J+=" -->",J}function dz($,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(`
8117
8121
  \x1B[90mat\x1B[0m ${U}`)}if(q.push(`
8118
8122
 
8119
8123
  ${$.message}`),Z&&$.line){let U=mz(Z,$.line,2);if(U)q.push(`
@@ -8122,20 +8126,20 @@ ${$.message}`),Z&&$.line){let U=mz(Z,$.line,2);if(U)q.push(`
8122
8126
  ${U}`)}if($.suggestion)q.push(`
8123
8127
 
8124
8128
  \x1B[33mSuggestion:\x1B[0m ${$.suggestion}`);return q.push(`
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(`
8129
+ ${"\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 uz($,Z,Y){let J=$.split(`
8126
8130
  `),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(`
8127
8131
  `)}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(`
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(`
8132
+ `),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(`
8133
+ `)}function yZ($){return $.replace(/--/g,"- -").replace(/>/g,"&gt;")}function pz($,Z){let J=$.substring(0,Z).split(`
8134
+ `);return{line:J.length,column:J[J.length-1].length}}function Z0($,Z,Y){return PZ({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 CZ=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(`
8131
8135
  `).slice(1).join(`
8132
8136
  `)}`);if($.context)Z.push(` Context: ${JSON.stringify($.context)}`);return Z.join(`
8133
8137
  `)}writeToFile($){this.writeQueue=this.writeQueue.then(async()=>{try{let Z=await import("fs"),J=(await import("path")).dirname(this.logFilePath);if(!Z.existsSync(J))Z.mkdirSync(J,{recursive:!0});await this.rotateIfNeeded(Z);let X=`${this.formatEntry($)}
8134
8138
  `;Z.appendFileSync(this.logFilePath,X,"utf-8")}catch(Z){if(process.env.STX_DEBUG==="true")console.error("Failed to write to error log:",Z)}})}async rotateIfNeeded($){try{if(!$.existsSync(this.logFilePath))return;if($.statSync(this.logFilePath).size<this.maxFileSize)return;for(let Y=this.maxLogFiles-1;Y>=1;Y--){let J=`${this.logFilePath}.${Y}`,X=`${this.logFilePath}.${Y+1}`;if($.existsSync(J))if(Y>=this.maxLogFiles-1)$.unlinkSync(J);else $.renameSync(J,X)}if(this.maxLogFiles<=1)$.writeFileSync(this.logFilePath,"");else $.renameSync(this.logFilePath,`${this.logFilePath}.1`)}catch(Z){if(process.env.STX_DEBUG==="true")console.error("Failed to rotate error logs:",Z)}}getRecentErrors($=10){return this.errors.slice(-$)}getErrorsByType($){return this.errors.filter((Z)=>Z.error.constructor.name===$)}getErrorsByLevel($){return this.errors.filter((Z)=>Z.level===$)}clear(){this.errors.length=0}async clearLogFile(){try{let $=await import("fs");if($.existsSync(this.logFilePath))$.writeFileSync(this.logFilePath,"","utf-8")}catch($){if(process.env.STX_DEBUG==="true")console.error("Failed to clear error log:",$)}}getStats(){let $={},Z={error:0,warning:0,info:0};for(let Y of this.errors){let J=Y.error.constructor.name;$[J]=($[J]||0)+1;let X=Y.level||"error";Z[X]=(Z[X]||0)+1}return{total:this.errors.length,byType:$,byLevel:Z}}async exportToFile($,Z="json"){let Y=await import("fs"),X=(await import("path")).dirname($);if(!Y.existsSync(X))Y.mkdirSync(X,{recursive:!0});if(Z==="json"){let Q=this.errors.map((G)=>({timestamp:G.timestamp.toISOString(),level:G.level||"error",type:G.error.constructor.name,message:G.error.message,stack:G.error.stack,context:G.context}));Y.writeFileSync($,JSON.stringify(Q,null,2),"utf-8")}else{let Q=this.errors.map((G)=>this.formatEntry(G));Y.writeFileSync($,Q.join(`
8135
8139
 
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+=`
8140
+ `),"utf-8")}}async flush(){await this.writeQueue}}var F3,a0,w3;var vZ=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+=`
8137
8141
  @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(`
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>
8142
+ `)}}});var xZ=()=>{};var fZ=b(()=>{F4();CZ();vZ();xZ();M4()});var z1=b(()=>{fZ()});function gZ($,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 hZ($,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 dZ($,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>
8139
8143
  `,F+=`<meta name="title" content="${i(O.title)}">
8140
8144
  `;if(O.description)F+=`<meta name="description" content="${i(O.description)}">
8141
8145
  `;if(O.keywords){let w=Array.isArray(O.keywords)?O.keywords.join(", "):O.keywords;F+=`<meta name="keywords" content="${i(w)}">
@@ -8157,7 +8161,7 @@ ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\
8157
8161
  `}if(w.site)F+=`<meta name="twitter:site" content="${i(w.site)}">
8158
8162
  `;if(w.creator)F+=`<meta name="twitter:creator" content="${i(w.creator)}">
8159
8163
  `}if(O.structuredData){let w=JSON.stringify(O.structuredData).replace(/<\//g,"<\\/");F+=`<script type="application/ld+json">${w}</script>
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=`
8164
+ `}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 uZ($,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=`
8161
8165
  <!-- stx SEO Tags -->
8162
8166
  <meta name="title" content="${i(G)}">
8163
8167
  <meta name="description" content="${i(K)}">
@@ -8173,7 +8177,7 @@ ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\
8173
8177
  `;let W=$;if(!Q)W=W.replace(/<head[^>]*>/,`$&
8174
8178
  <title>${i(G)}</title>`);return W.replace(/<head[^>]*>/,`$&
8175
8179
  ${q}
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)=>`
8180
+ `)}function i($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var mZ,pZ;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},pZ={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 lz($,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 cz($){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)=>`
8177
8181
  get ${U}() {
8178
8182
  return this.getAttribute('${U}') || '';
8179
8183
  }
@@ -8224,16 +8228,16 @@ ${W}
8224
8228
  }
8225
8229
 
8226
8230
  customElements.define('${Z}', ${G});
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">
8228
- ${lz(q)}
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(`
8231
+ `}async function lZ($,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=lz(z,X);return`<script type="module">
8232
+ ${cz(q)}
8233
+ </script>`}var cZ=b(()=>{z1();N0()});var iZ={};e(iZ,{timingPlugin:()=>rz,pluginManager:()=>iz,definePlugin:()=>T4,debugPlugin:()=>sz,createVariablesPlugin:()=>az,createFilterPlugin:()=>oz,createDirectivePlugin:()=>nz,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 nz($,Z,Y={}){return{name:$,...Y,registerDirectives:()=>Z}}function oz($,Z,Y={}){return{name:$,...Y,registerFilters:()=>Z}}function az($){return T4({name:"stx-variables",version:"1.0.0",description:"Adds predefined variables to template context",beforeProcess(Z){return{context:{...Z.context,...$}}}})}var iz,sz,rz;var nZ=b(()=>{iz=new R3;sz=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)}}),rz=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 sZ={};e(sZ,{validateConfig:()=>Yq,loadStxConfig:()=>q1,defineStxConfig:()=>Zq,defaultConfig:()=>p1,config:()=>M3});import N3 from"fs";import S0 from"path";import{loadConfigWithResult as tz}from"bunfig";function ez($,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 $q($){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=oZ.get(Z);if(Y)return Y;let J=(async()=>{let Q=(await tz({name:"stx",alias:"ui",cwd:Z,defaultConfig:p1,verbose:!1})).config;$q(Q);let G=ez(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(() => (nZ(),iZ)),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(oZ.set(Z,J),!$)I4=J,J.then((X)=>{U5=X}).catch(()=>{});return J}function Zq($){return $}function Yq($){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,oZ,I4=null,M3;var l1=b(()=>{Z7();Y7();J7();X7();g7();QZ();H3();SZ();A3();E5();cZ();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:S8,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:lZ,hasEndTag:!1,description:"Include a web component in the template"},n6,o6,mZ,pZ,s6,a6,t6,r6,Y9,Q9,XZ,_3,...bZ],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}};oZ=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 $2={};e($2,{resetCssCache:()=>qq,resetCrosswindCache:()=>Wq,rebuildCrosswindCSS:()=>Uq,loadCrosswindConfig:()=>k3,loadCrosswind:()=>E3,injectCrosswindCSS:()=>Y$,getCachedCSS:()=>jq,generateCrosswindCSS:()=>eZ,extractClassNames:()=>tZ,buildCrosswindCSS:()=>aZ});import J0 from"path";import{hasLocalConfig as Jq}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>=Xq)W1.delete(W1.keys().next().value);W1.set($,Z)}async function Qq($){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 Gq($,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 rZ($){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 Kq(){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 zq(){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 rZ(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 $(Kq());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 rZ(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 $(zq());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 qq(){W1.clear()}function Wq(){J1=null,I3=!1,t0=null,Z$="",W1.clear(),D4=null}async function k3($){try{if(!Jq({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 aZ($){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 Uq($){t0=null,await aZ($)}function jq(){return Z$}function tZ($){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 eZ($,Z){try{let Y=await E3();if(!Y)return"";let J=typeof Y.extractClasses==="function"?Y.extractClasses($):tZ($);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 Qq(G);if(z!==null)return T3(G,z),z;if(!t0){let A=null;try{let{loadStxConfig:R}=await Promise.resolve().then(() => (l1(),sZ)),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(`
8230
8234
  `);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+=`
8231
8235
  .${A} { ${M.join(" ")} }`;if(T.length)O+=`
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">
8236
+ @media (prefers-color-scheme: dark) { .dark .${A} { ${T.join(" ")} } }`}return T3(G,O),Gq(G,O),O}catch(Y){return console.warn("Failed to generate Crosswind CSS:",Y),""}}async function Y$($,Z){let Y=await eZ($,Z);if(!Y)return $;let J=`<style data-crosswind="generated">
8233
8237
  ${Y}
8234
8238
  </style>`,X=/<style data-crosswind="generated">[\s\S]*?<\/style>/g;if(X.test($)){let Q=!1;return $.replace(X,()=>{if(Q)return"";return Q=!0,J})}if($.includes("</head>"))return $.replace("</head>",`${J}
8235
8239
  </head>`);if($.includes("<body"))return $.replace(/<body([^>]*)>/,`<body$1>
8236
- ${J}`);return J+$}var J1=null,I3=!1,t0=null,Z$="",j5=!1,Jq=256,W1,A1=null,D4=null;var E4=b(()=>{E5();c6();W1=new Map});function $2(){return`
8240
+ ${J}`);return J+$}var J1=null,I3=!1,t0=null,Z$="",j5=!1,Xq=256,W1,A1=null,D4=null;var E4=b(()=>{E5();c6();W1=new Map});function Z2(){return`
8237
8241
  // STX Lifecycle Runtime
8238
8242
  (function() {
8239
8243
  if (typeof window === 'undefined') return;
@@ -8578,7 +8582,7 @@ else {
8578
8582
 
8579
8583
  console.log('[stx] Lifecycle runtime initialized');
8580
8584
  })();
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=`
8585
+ `}function b3($){return Symbol($)}var NF,MF,TF;var Y2=b(()=>{NF=b3("theme"),MF=b3("router"),TF=b3("i18n")});import*as X2 from"crypto";function J2($){let Z=/\$(\w+)\./g,Y=[],J;while((J=Z.exec($))!==null)if(!Y.includes(J[1]))Y.push(J[1]);return Y}function Bq(){return`stx-${X2.randomBytes(4).toString("hex")}`}function _q($){return/\$\w+\./.test($)}function Hq($){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(_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}),J2(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=Bq(),U=` id="${H}"${U}`;for(let L of q)Z.push({elementId:H,attribute:L.attr,expression:L.expr,stores:J2(L.expr)});return`<${G}${U}${z}`}),{html:X,bindings:Z,stores:Y}}function Oq($,Z){if($.length===0)return"";let Y=Array.from(Z),J=`
8582
8586
  <script>
8583
8587
  (function() {
8584
8588
  'use strict';
@@ -8736,10 +8740,10 @@ else {
8736
8740
  }
8737
8741
  })();
8738
8742
  </script>
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`
8743
+ `,J}function Q2($){let{html:Z,bindings:Y,stores:J}=Hq($);if(Y.length===0)return $;let X=Oq(Y,J),Q=Z.lastIndexOf("</body>");if(Q!==-1)return Z.slice(0,Q)+X+Z.slice(Q);return Z+X}var G2=()=>{};function Lq($){let Z=$.analytics;if(!Z?.enabled)return"";switch(Z.driver){case"fathom":return Fq(Z);case"google-analytics":return Vq(Z);case"plausible":return wq(Z);case"self-hosted":return Aq(Z);case"custom":return Rq(Z);default:return""}}function Fq($){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`
8740
8744
  <!-- Fathom Analytics -->
8741
8745
  <script src="${h0(Y)}" ${X.join(" ")}${J}></script>
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`
8746
+ `}function Vq($){let Z=$.googleAnalytics;if(!Z?.measurementId)return"";let Y=h0(Z.measurementId),J=Z.debug?`gtag('config', '${Y}', { 'debug_mode': true });`:"";return`
8743
8747
  <!-- Google Analytics -->
8744
8748
  <script async src="https://www.googletagmanager.com/gtag/js?id=${Y}"></script>
8745
8749
  <script>
@@ -8749,10 +8753,10 @@ else {
8749
8753
  gtag('config', '${Y}');
8750
8754
  ${J}
8751
8755
  </script>
8752
- `}function Vq($){let Z=$.plausible;if(!Z?.domain)return"";let Y=Z.scriptUrl||"https://plausible.io/js/script.js",J=[`data-domain="${h0(Z.domain)}"`],X=Y,Q=[];if(Z.trackLocalhost)Q.push("local");if(Z.hashMode)Q.push("hash");if(Q.length>0&&Y==="https://plausible.io/js/script.js")X=`https://plausible.io/js/script.${Q.join(".")}.js`;return`
8756
+ `}function wq($){let Z=$.plausible;if(!Z?.domain)return"";let Y=Z.scriptUrl||"https://plausible.io/js/script.js",J=[`data-domain="${h0(Z.domain)}"`],X=Y,Q=[];if(Z.trackLocalhost)Q.push("local");if(Z.hashMode)Q.push("hash");if(Q.length>0&&Y==="https://plausible.io/js/script.js")X=`https://plausible.io/js/script.${Q.join(".")}.js`;return`
8753
8757
  <!-- Plausible Analytics -->
8754
8758
  <script defer data-domain="${h0(Z.domain)}" src="${h0(X)}"></script>
8755
- `}function wq($){let Z=$.selfHosted;if(!Z?.siteId||!Z?.apiEndpoint)return"";let Y=h0(Z.siteId),J=h0(Z.apiEndpoint),X=Z.honorDnt?'if(n.doNotTrack==="1")return;':"",Q=Z.trackHashChanges?"w.addEventListener('hashchange',pv);":"",G=Z.trackOutboundLinks?`
8759
+ `}function Aq($){let Z=$.selfHosted;if(!Z?.siteId||!Z?.apiEndpoint)return"";let Y=h0(Z.siteId),J=h0(Z.apiEndpoint),X=Z.honorDnt?'if(n.doNotTrack==="1")return;':"",Q=Z.trackHashChanges?"w.addEventListener('hashchange',pv);":"",G=Z.trackOutboundLinks?`
8756
8760
  d.addEventListener('click',function(e){
8757
8761
  var a=e.target.closest('a');
8758
8762
  if(a&&a.hostname!==location.hostname){
@@ -8785,7 +8789,7 @@ else {
8785
8789
  w.stxAnalytics={track:function(n,v){t('event',{name:n,value:v});}};
8786
8790
  })();
8787
8791
  </script>
8788
- `}function Aq($){let Z=$.custom;if(!Z)return"";if(Z.inlineScript)return`
8792
+ `}function Rq($){let Z=$.custom;if(!Z)return"";if(Z.inlineScript)return`
8789
8793
  <!-- Custom Analytics -->
8790
8794
  <script>
8791
8795
  ${Z.inlineScript}
@@ -8793,7 +8797,7 @@ ${Z.inlineScript}
8793
8797
  `;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`
8794
8798
  <!-- Custom Analytics -->
8795
8799
  <script${Y.length>0?` ${Y.join(" ")}`:""} src="${h0(Z.scriptUrl)}" defer></script>
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`
8800
+ `}function K2($,Z){let Y=Lq(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 z2=()=>{};function U2($){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(Nq.has(J))Z.systemKeys.push(J);else if(J in j2)Z.mouse=J;else if(J in W2||/^[a-z]$/.test(J))Z.keys.push(W2[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 B2($){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(!q2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:U2(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(!q2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:U2(V.slice(1)),elementId:W})}if(U.length>0)Z.push({originalTag:Q,elementId:W,events:U,startIndex:z,endIndex:q})}return Z}function Mq($){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=j2[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 Tq($,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 Iq($){let{modifiers:Z}=$,Y=$.elementId.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),J=Mq($),X=Tq($.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`
8797
8801
  (function() {
8798
8802
  var $el = document.getElementById('${Y}');
8799
8803
  if (!$el) return;
@@ -8847,7 +8851,7 @@ else {
8847
8851
  __stx_runHandler('${K}', $event, $el);
8848
8852
  }
8849
8853
  }${G});
8850
- })();`}function Iq($){if($.length===0)return"";return`
8854
+ })();`}function Dq($){if($.length===0)return"";return`
8851
8855
  <script data-stx-events>
8852
8856
  (function() {
8853
8857
  'use strict';
@@ -8895,11 +8899,11 @@ else {
8895
8899
  }
8896
8900
 
8897
8901
  // Event listeners
8898
- ${$.flatMap((Y)=>Y.events).map(Tq).join(`
8902
+ ${$.flatMap((Y)=>Y.events).map(Iq).join(`
8899
8903
  `)}
8900
8904
  })();
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`
8905
+ </script>`}function Eq($){let Z=B2($);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}=Eq($),W=Z.__stx_event_bindings||[];return Z.__stx_event_bindings=[...W,...q],z}let X=B2($);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=Dq(X),K=Q.lastIndexOf("</body>");if(K!==-1)Q=Q.slice(0,K)+G+`
8906
+ `+Q.slice(K);else Q+=G;return Q}var q2,W2,Nq,j2;var H2=b(()=>{q2=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"]),W2={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"},Nq=new Set(["ctrl","alt","shift","meta"]),j2={left:0,middle:1,right:2}});function k4($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function O2($,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 bq($){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=O2(G,"x-data");if(!z)continue;let q=`__stx_scope_${F2++}`,W=O2(G,"x-init"),U=Sq($,Q,K+X.length),j=$.slice(K,U.endIndex),B=yq(j);Z.push({id:q,selector:`[data-stx-scope="${q}"]`,stateExpr:z,initExpr:W,bindings:[],refs:B})}return Z}function Sq($,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 yq($){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=Pq(Q);Z.set(G,K)}return Z}function Pq($){let Z=$.match(/\bid\s*=\s*["']([^"']*)["']/);if(Z)return Z[1];return`__stx_el_${kq++}`}function Cq(){return`
8903
8907
  // STX Reactive Runtime - x-cloak and transition CSS
8904
8908
  (function() {
8905
8909
  var style = document.createElement('style');
@@ -9106,7 +9110,7 @@ window.__stx_reactive = (function() {
9106
9110
 
9107
9111
  return { initScope: initScope, reactive: reactive };
9108
9112
  })();
9109
- `}function O2($,Z){let Y=$.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=l0(X,Z,!0);if(Q===void 0)return J;return String(Q)}catch{return J}});return Y=Y.replace(/\{\{([\s\S]*?)\}\}/g,(J,X)=>{try{let Q=l0(X,Z,!0);if(Q===void 0)return J;if(typeof Q==="string"){let G=Q.trim();if(G.startsWith("{")&&G.endsWith("}")||G.startsWith("[")&&G.endsWith("]"))try{return JSON.parse(G),G}catch{}}return JSON.stringify(Q)}catch{return J}}),Y}function Cq($,Z){if($.length===0)return"";let Y=$.map((J)=>{let X=JSON.stringify(Object.fromEntries(J.refs)),Q=O2(J.stateExpr,Z),G=J.initExpr?O2(J.initExpr,Z):null,K=JSON.stringify(Q),z=G?JSON.stringify(G):"null";return`
9113
+ `}function L2($,Z){let Y=$.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=l0(X,Z,!0);if(Q===void 0)return J;return String(Q)}catch{return J}});return Y=Y.replace(/\{\{([\s\S]*?)\}\}/g,(J,X)=>{try{let Q=l0(X,Z,!0);if(Q===void 0)return J;if(typeof Q==="string"){let G=Q.trim();if(G.startsWith("{")&&G.endsWith("}")||G.startsWith("[")&&G.endsWith("]"))try{return JSON.parse(G),G}catch{}}return JSON.stringify(Q)}catch{return J}}),Y}function vq($,Z){if($.length===0)return"";let Y=$.map((J)=>{let X=JSON.stringify(Object.fromEntries(J.refs)),Q=L2(J.stateExpr,Z),G=J.initExpr?L2(J.initExpr,Z):null,K=JSON.stringify(Q),z=G?JSON.stringify(G):"null";return`
9110
9114
  (function() {
9111
9115
  var scopeEl = document.querySelector('${J.selector}');
9112
9116
  if (!scopeEl) return;
@@ -9115,16 +9119,16 @@ window.__stx_reactive = (function() {
9115
9119
  })();`}).join(`
9116
9120
  `);return`
9117
9121
  <script data-stx-scoped data-stx-reactive>
9118
- ${Pq()}
9122
+ ${Cq()}
9119
9123
  ${Y}
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+`
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;">
9124
+ </script>`}function V2($,Z,Y){if(F2=0,!fq($))return $;let J=bq($);if(J.length===0)return $;let X=xq($,J),Q=vq(J,Z),G=X.lastIndexOf("</body>");if(G!==-1)X=X.slice(0,G)+Q+`
9125
+ `+X.slice(G);else X+=Q;return X}function xq($,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 fq($){return/x-data\s*=\s*["']/.test($)}var F2=0,kq=0;var w2=b(()=>{Y1()});import gq from"fs";import S3 from"path";import{createHighlighter as hq}from"ts-syntax-highlighter";async function dq($,Z={}){try{if(!await o($))throw Error(`Markdown file not found: ${$}`);let J=(await gq.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 uq(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 uq($,Z,Y){let J=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!b4)try{b4=await hq({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 A2($,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:B}=await dq(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 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 R2=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 N2=b(()=>{A0()});function pq($,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=pq(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 M2($){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=M2(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=M2(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(()=>{N2();z1();b$();A0()});function I2($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function y4($,Z){if(!$)return Z?.nonceGenerator?.()??I2();let Y=T2.get($);if(!Y)Y=Z?.nonceGenerator?.()??I2(),T2.set($,Y);return Y}function lq($,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 D2($,Z){return`<meta http-equiv="Content-Security-Policy" content="${lq($,Z).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}">`}function E2($,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=D2(Z.directives,J);return $.replace(/<head([^>]*)>/,`<head$1>
9126
+ ${X}`)}function k2($,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 b2($,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 D2(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 T2;var S2=b(()=>{T2=new WeakMap});import cq from"crypto";function nq($=iq){let Z=cq.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return x3=Z,Z}function oq(){if(!x3)nq();return x3}function sq($=y2){let Z=oq();return`<input type="hidden" name="${$}" value="${Z}">`}function P2($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,Y,J)=>{return sq(J||y2)})}var iq=40,y2="_token",x3=null;var C2=()=>{};async function v2($,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 rq(X,Q,Z,Y,J);else X=await aq(X,Q,Z,Y,J)}return X}async function rq($,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=_?x2(_):[],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 aq($,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=x2(_),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 x2($){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 f2=b(()=>{z1();X5()});function i1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function eq($){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"),!h2.test(Y.key)||!h2.test(J.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!g2.test(Y.attribute)||!g2.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(!tq.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 $W($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function ZW($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${$W($)};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 YW($,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 d2($,Z){let Y=$,J=/@appearanceBootstrap\s*\(/g,X;while((X=J.exec(Y))!==null){let Q=X.index+X[0].length-1,G=YW(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=ZW(eq(z));Y=Y.slice(0,X.index)+q+Y.slice(G+1),J.lastIndex=X.index+q.length}return Y}var g2,h2,tq;var u2=b(()=>{A0();g2=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,h2=/^[A-Za-z_$][\w$]*$/,tq=new Set(["light","dark","system"])});import JW 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 XW(){return JW.randomUUID()}function C4($,Z){let Y=$;return Y=Y.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let J=XW();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 l2($,Z,Y=p2){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+=`
9127
+ ${C4("@csrf",Z)}`,!["GET","POST"].includes(B))H+=`
9128
+ ${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 c2($,Z,Y=p2){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 p2;var i2=b(()=>{A0();p2={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"}});import h3 from"path";async function QW(){if(Q$!==void 0)return Q$;try{Q$=(await import("@stacksjs/ts-i18n")).loadLocale??null}catch{Q$=null}return Q$}function GW($,Z=0){if(Z<=0)return!1;return Date.now()-$.loadedAt>Z}async function KW($,Z){if({...m3,...Z.i18n}.cache&&d3[$]){let X=d3[$],Q=Z.i18n?.cacheMaxAge??0;if(!GW(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 QW(),Q=X?await X($,{translationsDir:J,defaultLocale:Y.defaultLocale,sources:jW(Y.format)}):await zW($,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 zW($,Z,Y){let J=h3.join(Y,`${$}${qW(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 WW(Q);if(Z.format==="json")return JSON.parse(Q);throw X}catch{return}}}function qW($){switch($){case"yaml":return".yaml";case"yml":return".yml";case"js":return".js";case"ts":return".ts";case"json":default:return".json"}}function WW($){let Z={},Y=$.split(`
9129
+ `),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]=UW(j)}}return Z}function UW($){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 jW($){switch($){case"yaml":case"yml":return["yaml"];case"js":case"ts":return["ts"];case"json":default:return["json"]}}async function BW($,Z){return KW($,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 HW($,Z={}){return s2($,Z)}function s2($,Z){let Y="",J=0;while(J<$.length)if($[J]==="{"){let X=OW($,J);if(X===-1){Y+=$[J],J++;continue}let Q=$.slice(J+1,X);Y+=LW(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 OW($,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 LW($,Z){let Y=FW($);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 VW(X,Y.slice(2).join(","),Z);case"select":return AW(X,Y.slice(2).join(","));case"selectordinal":return RW(X,Y.slice(2).join(","));case"number":return MW(X,Y[2]?.trim());case"date":return TW(X,Y[2]?.trim());case"time":return IW(X,Y[2]?.trim());default:return X!==void 0?String(X):`{${$}}`}}function FW($){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 VW($,Z,Y){let J=Number($)||0,X=p3(Z),Q=`=${J}`;if(X[Q])return g3(X[Q],J,Y);let G=wW(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 s2(J,Y)}function wW($){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 AW($,Z){let Y=String($||""),J=p3(Z);if(J[Y])return J[Y];return J.other||String($)}function RW($,Z){let Y=Number($)||0,J=p3(Z),X=NW(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 NW($){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 MW($,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 TW($,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 IW($,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 DW($){return/\{[^}]+,\s*(?:plural|select|selectordinal|number|date|time)\s*,/.test($)}function n2($,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(DW(G))return HW(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 r2($,Z,Y,J){let X=$,Q=/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)([\s\S]*?)@endtranslate/g,G={...m3,...J.i18n},K=await BW(G.locale,J);Z.__translations=K,Z.__locale=G.locale,Z.__i18nConfig=G,X=await o2(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 n2(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 o2(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 n2(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 o2($,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 a2=b(()=>{z1();A0();m3={defaultLocale:"en",locale:"en",translationsDir:"translations",format:"yaml",fallbackToKey:!0,cache:!0},d3={},G$={},f3={}});var i3={};e(i3,{streamingSuspenseDirective:()=>$Y,streamToResponse:()=>hW,streamTemplateSimple:()=>vW,streamTemplate:()=>kW,renderStreamingPage:()=>SW,registerStreamingDirectives:()=>fW,processStreamDirectives:()=>PW,processSectionDirectives:()=>gW,islandDirective:()=>ZY,generateHydrationRuntime:()=>dW,extractStreamBoundaries:()=>CW,createStreamRenderer:()=>xW,buildSuspenseResolveScript:()=>c3,SUSPENSE_RESOLVER_RUNTIME:()=>e2});import v4 from"path";function EW($){let Z=[],Y=0,J;t2.lastIndex=0;while((J=t2.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 kW($,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=EW(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;">
9126
9130
  <template data-suspense-fallback>Loading...</template>
9127
- </div>`),B.set(L.name,L0(L.content,W,$,J,j))}Q.enqueue(`
9131
+ </div>`),_.set(L.name,L0(L.content,W,$,J,j))}Q.enqueue(`
9128
9132
  <script>
9129
9133
  (function() {
9130
9134
  window.__stxSuspense = window.__stxSuspense || {
@@ -9140,13 +9144,13 @@ ${X}`)}function E2($,Z){let Y=$;return Y=Y.replace(/<script(?![^>]*\ssrc=)([^>]*
9140
9144
  }
9141
9145
  };
9142
9146
  })();
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`
9147
+ </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`
9144
9148
  <script>
9145
9149
  window.__stxSuspense.resolve('${$}', \`${J}\`);
9146
9150
  </script>`}catch(Y){let J=Y instanceof Error?Y.message:String(Y);return`
9147
9151
  <script>
9148
9152
  window.__stxSuspense.resolve('${$}', '<div class="stx-error">Error loading content: ${s0(J)}</div>');
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(`,
9153
+ </script>`}}function bW($,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 SW($,Z=[],Y={}){let J=Y.timeoutMs??0;return new ReadableStream({async start(X){try{if(X.enqueue($),Z.length>0)X.enqueue(e2),await Promise.all(Z.map(async(Q)=>{let G=bW(Q.render(),J,Q.id);X.enqueue(await c3(Q.id,G))}));X.close()}catch(Q){X.error(Q)}}})}function PW($,Z){return $.replace(yW,(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 CW($){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 vW($,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 xW($,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 fW($={}){let Z=[];if($.streaming?.enabled)Z.push($Y);if($.hydration?.enabled)Z.push(ZY);return Z}async function gW($,Z,Y,J={}){return $}function hW($,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 dW($={mode:"full"}){let{mode:Z,components:Y={},dynamicImports:J=!0}=$,X=Object.entries(Y).map(([Q,G])=>`'${Q}': ${J?`() => import('${G}')`:`require('${G}')`}`).join(`,
9150
9154
  `);if(Z==="loader")return`
9151
9155
  (function() {
9152
9156
  window.__stx = window.__stx || {};
@@ -9288,7 +9292,7 @@ else {
9288
9292
  else {
9289
9293
  stx.hydrate();
9290
9294
  }
9291
- })();`}var l3,n1,a2,t2=`
9295
+ })();`}var l3,n1,t2,e2=`
9292
9296
  <script>
9293
9297
  (function(){
9294
9298
  window.__stxSuspense = window.__stxSuspense || {
@@ -9308,25 +9312,25 @@ else {
9308
9312
  }
9309
9313
  };
9310
9314
  })();
9311
- </script>`,SW,e2,$Y;var n3=b(()=>{l1();Y1();o$();N0();l3={enabled:!0,bufferSize:16384,strategy:"auto",timeout:30000},n1=/<!-- @section:([\w-]+) -->([\s\S]*?)<!-- @endsection:\1 -->/g,a2=/<!-- @suspense:([\w-]+) -->([\s\S]*?)<!-- @endsuspense:\1 -->/g;SW=/@stream\s*\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)@endstream/gi;e2={name:"suspense",hasEndTag:!0,handler:($,Z,Y,J)=>{if(!Z||Z.length===0)throw Error("Suspense directive requires a name parameter");let X=Z[0].replace(/['"`]/g,"");return`<!-- @suspense:${X} -->${$}<!-- @endsuspense:${X} -->`}},$Y={name:"island",hasEndTag:!0,handler:($,Z,Y,J)=>{if(!Z||Z.length===0)throw Error("Island directive requires a name parameter");let X=Z[0].replace(/['"`]/g,""),Q=Z[1]?Z[1].replace(/['"`]/g,""):"lazy",G=`island-${X}-${Math.random().toString(36).substring(2,9)}`,K=$.match(/<script\s+props\s*>([\s\S]*?)<\/script>/i),z=K?K[1].trim():"",q=K?$.replace(K[0],""):$;return`<div data-island="${X}" data-island-id="${G}" data-priority="${Q}">
9315
+ </script>`,yW,$Y,ZY;var n3=b(()=>{l1();Y1();o$();N0();l3={enabled:!0,bufferSize:16384,strategy:"auto",timeout:30000},n1=/<!-- @section:([\w-]+) -->([\s\S]*?)<!-- @endsection:\1 -->/g,t2=/<!-- @suspense:([\w-]+) -->([\s\S]*?)<!-- @endsuspense:\1 -->/g;yW=/@stream\s*\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)@endstream/gi;$Y={name:"suspense",hasEndTag:!0,handler:($,Z,Y,J)=>{if(!Z||Z.length===0)throw Error("Suspense directive requires a name parameter");let X=Z[0].replace(/['"`]/g,"");return`<!-- @suspense:${X} -->${$}<!-- @endsuspense:${X} -->`}},ZY={name:"island",hasEndTag:!0,handler:($,Z,Y,J)=>{if(!Z||Z.length===0)throw Error("Island directive requires a name parameter");let X=Z[0].replace(/['"`]/g,""),Q=Z[1]?Z[1].replace(/['"`]/g,""):"lazy",G=`island-${X}-${Math.random().toString(36).substring(2,9)}`,K=$.match(/<script\s+props\s*>([\s\S]*?)<\/script>/i),z=K?K[1].trim():"",q=K?$.replace(K[0],""):$;return`<div data-island="${X}" data-island-id="${G}" data-priority="${Q}">
9312
9316
  ${q}
9313
9317
  <script type="application/json" data-island-props="${G}">
9314
9318
  ${z?`{${z}}`:"{}"}
9315
9319
  </script>
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>
9320
+ </div>`}}});var XY={};e(XY,{warnUnbalancedTags:()=>o3,findUnbalancedTags:()=>JY});function B5($){return $.replace(/[^\n]/g," ")}function JY($){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(uW.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(`
9321
+ `).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=JY($)}catch{return}if(Y.length===0)return;let J=`${Z}:${$.length}`;if(YY.has(J))return;YY.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 uW,mW,YY;var s3=b(()=>{uW=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"]);YY=new Set});import c0 from"path";import r3 from"fs";function QY($){return $.split("-").map((Z)=>Z.charAt(0).toUpperCase()+Z.slice(1)).join("")}function GY($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}class KY{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(),QY(X),GY(X)];for(let _ of B)if(Q.has(_))return Q.get(_)}let G=[...new Set([`${X}.stx`,`${QY(X)}.stx`,`${GY(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 KY});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 pW($){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=pW($),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 zY($){if($.includes("(")||$.includes(","))return $;let Z=$.trim().split(/\s+/),Y=[];for(let J of Z)if(J.includes(":")){let[X,Q]=J.split(":"),G=lW[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 cW($,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 iW($,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 lW,$6,J6;var X6=b(()=>{x4();lW={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=zY(K);else if(!R&&q){let S=q.split(/\s+/).map((k)=>Number.parseFloat(k.replace("x","")));R=cW(J,S,w,B,W)}else if(K)N=zY(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=iW(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)}"`:""} />
9322
+ `}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>
9319
9323
  ${S.join(`
9320
9324
  `)}
9321
9325
  ${D}
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`
9326
+ </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 qY="/images/safe-image-default.svg",nW,Q6;var G6=b(()=>{x4();nW=`<script>window.__stxSafeImageHandler||(window.__stxSafeImageHandler=function(i){if(i.__stx_fb)return;i.__stx_fb=1;var f=i.getAttribute('data-fallback')||'${qY}';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")||qY,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,`${nW}${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`
9323
9327
  <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">
9324
9328
  <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>
9325
9329
  </div>
9326
9330
  <style>@keyframes stx-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}</style>
9327
9331
  <script>
9328
9332
  (function(){var el=document.getElementById('stx-loading-indicator'),p=0,l=!1,i=null;function u(v){p=Math.min(Math.max(v,0),100);if(el){el.style.opacity=p>0?'1':'0';el.style.transform='scaleX('+(p/100)+')'}}window.stxLoading={start:function(){l=!0;p=0;u(10);if(i)clearInterval(i);i=setInterval(function(){if(!l)return;var r=90-p,inc=Math.max(0.5,r*0.1);if(p<90)u(p+inc)},${K})},finish:function(){l=!1;if(i){clearInterval(i);i=null}u(100);setTimeout(function(){if(el)el.style.opacity='0';setTimeout(function(){p=0;if(el)el.style.transform='scaleX(0)'},300)},200)},set:function(v){u(v)},clear:function(){l=!1;p=0;if(i){clearInterval(i);i=null}if(el){el.style.opacity='0';el.style.transform='scaleX(0)'}}};document.addEventListener('click',function(e){var a=e.target.closest&&e.target.closest('a');if(!a)return;var h=a.getAttribute('href');if(!h||h.startsWith('http')||h.startsWith('#')||h.startsWith('mailto:')||h.startsWith('tel:')||a.target==='_blank')return;window.stxLoading.start()});window.addEventListener('popstate',function(){window.stxLoading.start()});window.addEventListener('load',function(){window.stxLoading.finish()})})();
9329
- </script>`}}});function WY($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function nW($,Z,Y){let J=WY($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var qY,W6;var U6=b(()=>{qY={"top-right":"top:1rem;right:1rem","top-left":"top:1rem;left:1rem","top-center":"top:1rem;left:50%;transform:translateX(-50%)","bottom-right":"bottom:1rem;right:1rem","bottom-left":"bottom:1rem;left:1rem","bottom-center":"bottom:1rem;left:50%;transform:translateX(-50%)"},W6={name:"StxToast",aliases:["stx-toast"],render($,Z,Y){let J=y0(WY($,"position")||"top-right"),X=nW($,"max",5),Q=qY[J]||qY["top-right"];return`<div id="stx-toast-container" data-stx-toast-position="${J}" data-stx-toast-max="${X}" style="position:fixed;${Q};z-index:999999;display:flex;flex-direction:column;gap:0.5rem;pointer-events:none;max-width:24rem;width:100%"></div>
9333
+ </script>`}}});function UY($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function oW($,Z,Y){let J=UY($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var WY,W6;var U6=b(()=>{WY={"top-right":"top:1rem;right:1rem","top-left":"top:1rem;left:1rem","top-center":"top:1rem;left:50%;transform:translateX(-50%)","bottom-right":"bottom:1rem;right:1rem","bottom-left":"bottom:1rem;left:1rem","bottom-center":"bottom:1rem;left:50%;transform:translateX(-50%)"},W6={name:"StxToast",aliases:["stx-toast"],render($,Z,Y){let J=y0(UY($,"position")||"top-right"),X=oW($,"max",5),Q=WY[J]||WY["top-right"];return`<div id="stx-toast-container" data-stx-toast-position="${J}" data-stx-toast-max="${X}" style="position:fixed;${Q};z-index:999999;display:flex;flex-direction:column;gap:0.5rem;pointer-events:none;max-width:24rem;width:100%"></div>
9330
9334
  <style>
9331
9335
  @keyframes stx-toast-in{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}
9332
9336
  @keyframes stx-toast-out{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}
@@ -9334,7 +9338,7 @@ ${D}
9334
9338
  @keyframes stx-toast-out-left{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}
9335
9339
  @keyframes stx-toast-in-center{from{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}
9336
9340
  @keyframes stx-toast-out-center{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-1rem)}}
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">
9341
+ </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 jY,j6;var B6=b(()=>{jY={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=jY[Q]||jY.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">
9338
9342
  <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)">
9339
9343
  <div style="padding:1.5rem">${Z}</div>
9340
9344
  </div>
@@ -9343,8 +9347,8 @@ ${D}
9343
9347
  @media(prefers-color-scheme:dark){[data-stx-modal]{--stx-modal-bg:#1f2937;--stx-modal-text:#f3f4f6}}
9344
9348
  .stx-modal-backdrop[data-stx-modal-open]{display:flex!important;opacity:1}
9345
9349
  .stx-modal-backdrop[data-stx-modal-open] .stx-modal-panel{transform:scale(1) translateY(0);opacity:1}
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">
9350
+ </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 BY,_6;var H6=b(()=>{BY={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=BY[G]||BY.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">
9351
+ <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">
9348
9352
  <div style="padding:1.5rem">${Z}</div>
9349
9353
  </div>
9350
9354
  </div>
@@ -9352,18 +9356,18 @@ ${D}
9352
9356
  @media(prefers-color-scheme:dark){[data-stx-drawer]{--stx-drawer-bg:#1f2937;--stx-drawer-text:#f3f4f6}}
9353
9357
  .stx-drawer-backdrop[data-stx-drawer-open]{display:block!important;opacity:1}
9354
9358
  .stx-drawer-backdrop[data-stx-drawer-open] .stx-drawer-panel{transform:translateX(0)}
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,`
9359
+ </style>`}}});import{existsSync as sW,readFileSync as rW}from"fs";function aW($){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 tW($){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(sW(Y))return Y;for(let Y of[`@iconify-json/${$}/icons.json`,`@iconify/json/json/${$}.json`])try{return U0.resolve(Y)}catch{}return null}function eW($){if(h4.has($))return h4.get($);let Z=tW($);if(!Z)return aW($),null;try{let Y=JSON.parse(rW(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)??eW(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 HY($,...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 OY($,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=OY(Z,"fallback"),X=J.rest,Q=OY(X,"error"),G=Q.rest,K=J.region??HY($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',z=Q.region??HY($,"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 LY(){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 FY=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 VY($,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===`
9360
+ `||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 wY($,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 AY=b(()=>{A0();N0();C1()});var EY={};e(EY,{processESImports:()=>IY,processComponents:()=>p4});import m4 from"fs";import d0 from"path";function ZU($,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]=wY(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),_=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 YU($){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 NY($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function JU($){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 XU($){let Z=MY.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 MY.set($,Y),Y}function QU($,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 IY($,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=QU(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?XU(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 GU($,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 KU($,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 zU($,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,$U),Q=f5(Q,z.scripts),Q;async function j(B,_,H,L){if(!B)return B;let V=B,O=VY(V,_,L);for(let F=O.length-1;F>=0;F--){let w=O[F],A=H?u4(w.tagName):w.tagName,R=YU(w.attributes),N=ZU(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=TY(S,N.clientReactive);if(Object.keys(N.events).length>0){let k=Object.entries(N.events).map(([C,x])=>`${C}="${NY(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=TY(D,N.clientReactive);if(Object.keys(N.events).length>0){let y=DY(D);if(y){let S=Object.entries(N.events).map(([C,x])=>`${C}="${NY(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 TY($,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])=>u4(W)).join(" "),G=$,K=X.length>0?DY(G):null;if(K){let W=X.map(([j,B])=>`:${u4(j)}="${B.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 DY($){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(!RY)LY(),RY=!0;let Q=await IY($,Z,Y,J,X);Q=await GU(Q,Z,Y,J,X),Q=await KU(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 zU(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=JU(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 RY=!1,R6="\x00stx-boolean-attribute",$U,MY;var N6=b(()=>{a3();FY();AY();C1();N0();A0();$U=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"]);MY=new Map});var vY={};e(vY,{processLoops:()=>M6});function UU($,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 jU($,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 BU($,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 kY($){let Z=$.includes(c4),Y=Z?$.substring(0,$.indexOf(c4)):$;return{hasBreak:Z,content:Y}}function bY($){let Z=$.includes(i4),Y=Z?$.substring(0,$.indexOf(i4)):$;return{hasContinue:Z,content:Y}}function yY($){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 HU($){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 SY($,Z){let Y=$;while(!0){let J=HU(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=SY(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??WU,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=BU(L,S),C=bY(k);if(C.hasContinue){T+=C.content;continue}let x=kY(k);if(x.hasBreak){T+=x.content;break}if(k=SY(k,S),k=G(k,S),k=c1(k,S,Y),k=_U(k),x=kY(k),x.hasBreak){T+=x.content;break}if(C=bY(k),C.hasContinue){T+=C.content;continue}k=L1(k,S,Y),k=jU(k,S),k=UU(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=CY(X,Z,Y,J);let K=J?.loops?.maxWhileIterations??qU;return X=FU(X,Z,K),X}function PY($){return w$($)}function CY($,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(!PY(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=OU(W),L=/@(?:for|foreach|if|unless)\s*\(/.test(B);if(H.length>0&&L){let R=LU({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=yY(F);let A=Function(...V,`
9357
9361
  let result = '';
9358
9362
  for (${W}) {
9359
9363
  result += \`${F}\`;
9360
9364
  }
9361
9365
  return result;
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",`
9366
+ `)(...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 OU($){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 LU($){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",`
9363
9367
  for (${Z}) {
9364
9368
  __pushIter([${J.join(", ")}])
9365
9369
  }
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(..._,`
9370
+ `),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=CY(Y,_,Q,G);H=c1(H,_,U),H=L1(H,_,U),j+=H}return j}function FU($,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(!PY(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=yY(H);let V=Function(...B,`
9367
9371
  let result = '';
9368
9372
  let maxIterations = ${Y}; // Configurable safety limit
9369
9373
  let counter = 0;
@@ -9375,8 +9379,8 @@ ${D}
9375
9379
  result += '<!-- [While Error [1104]]: Maximum iterations (${Y}) exceeded in while loop. Configure via options.loops.maxWhileIterations -->';
9376
9380
  }
9377
9381
  return result;
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`
9382
+ `)(..._);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 qU=1000,WU=!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 VU($,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 wU($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function fY($){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]!==`
9383
+ `)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 gY($,Z=""){let Y=fY($).split(",").map((J)=>J.trim()).filter(Boolean);return`
9380
9384
  (function() {
9381
9385
  ${Z5("var",Y)}
9382
9386
  var __destroyHooks = [];
@@ -9385,11 +9389,11 @@ ${D}
9385
9389
 
9386
9390
  ${$}
9387
9391
  ${Z}})();
9388
- `}function gY($,Z){return`
9392
+ `}function hY($,Z){return`
9389
9393
  // Register scope variables for STX runtime
9390
9394
  if (!window.stx._scopes) window.stx._scopes = {};
9391
9395
  var __scopeRegistration = { __destroyCallbacks: __destroyHooks };
9392
- ${xY($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeRegistration[${JSON.stringify(Q)}] = ${Q}; } catch (e) { /* not actually top-level */ }`).join(`
9396
+ ${fY($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeRegistration[${JSON.stringify(Q)}] = ${Q}; } catch (e) { /* not actually top-level */ }`).join(`
9393
9397
  `)}
9394
9398
  // #1767: when the bundler renamed a component const that collided with an
9395
9399
  // inlined import (foo -> foo2), rebind the ORIGINAL template name to the
@@ -9397,7 +9401,7 @@ ${xY($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeR
9397
9401
  // shadowing import. __stxScopeRenames is emitted by bundleClientScript.
9398
9402
  try { if (typeof __stxScopeRenames !== 'undefined' && __stxScopeRenames) { for (var __stxRK in __stxScopeRenames) __scopeRegistration[__stxRK] = __stxScopeRenames[__stxRK]; } } catch (e) { /* no renames */ }
9399
9403
  window.stx._scopes['${Z}'] = __scopeRegistration;
9400
- `}function wU($,Z){let Y=gY($,Z),J=`
9404
+ `}function AU($,Z){let Y=hY($,Z),J=`
9401
9405
  (function() {
9402
9406
  var __stxScopeEl = (typeof document !== 'undefined') ? document.querySelector('[data-stx-scope="${Z}"]') : null;
9403
9407
  var __stxPrevEl = (typeof window !== 'undefined') ? window.__STX_CURRENT_ELEMENT__ : undefined;
@@ -9406,33 +9410,33 @@ ${xY($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeR
9406
9410
  } finally {
9407
9411
  if (typeof window !== 'undefined') window.__STX_CURRENT_ELEMENT__ = __stxPrevEl;
9408
9412
  }
9409
- })();`;return J+fY($,Y)+`
9413
+ })();`;return J+gY($,Y)+`
9410
9414
  } finally {
9411
9415
  if (typeof window !== 'undefined') window.__STX_CURRENT_ELEMENT__ = __stxPrevEl;
9412
9416
  }
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>
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+=`
9417
+ })();`}function RU($,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 MU($){if($.__onceStore instanceof Set)return $.__onceStore;return NU}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=VU($,"@partial","@include"),z=MU(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(),XY));f(w,O)}catch{}let A=w;try{let{processESImports:f}=await Promise.resolve().then(() => (N6(),EY));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=wU(c);if(_0&&!p){S=`stx_scope_${B0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++xY}`;let X0=o0(c),I0=AU(X0,S);y+=`${w0}<script data-stx-scoped>${I0}</script>
9418
+ `;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,"_")}_${++xY}`;let I0=o0(c),i0=hY(I0,S),G1=gY(I0,i0);y+=`${w0}<script data-stx-scoped${X0?` ${X0}`:""}>${G1}</script>
9419
+ `}}if(S){let f=RU(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(),vY)),C=k(A,I,O);C=c1(C,I,O);let x=$5(w);if(C=L1(C,I,O,{forceSignals:x}),T)C+=`
9416
9420
  `+T;if(y)C+=`
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}
9421
+ `+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(`
9422
+ `)})}var xY=0,gw,NU;var dY=b(()=>{_7();S4();Y1();d5();X5();A0();N0();gw=new u5(500),NU=new Set});import*as b6 from"path";async function uY($,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 pY($,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 pY($,Z,Y,"@ts","@endts")}async function pY($,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=`
9423
+ ${_}
9420
9424
  ${V}
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[^>]*>/,`$&
9425
+ `,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 lY=b(()=>{X5();N0()});function TU($,Z="_method"){let Y=$.toUpperCase();if(Y==="GET"||Y==="POST")return"";return`<input type="hidden" name="${Z}" value="${Y}">`}function cY($){return $.replace(/@method\(\s*(['"])([^'"]+)\1\s*(?:,\s*(['"])([^'"]+)\3\s*)?\)/g,(Z,Y,J,X,Q)=>{return TU(J,Q||"_method")})}async function iY($,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[^>]*>/,`$&
9422
9426
  <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>
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})
9427
+ `)}}}return Q}async function nY($,Z,Y,J){return iY($,Z,Y,J,"before")}async function oY($,Z,Y,J){return iY($,Z,Y,J,"after")}var sY=b(()=>{Y1();N0()});import{defineRoute as aw,defineRoutes as tw,resetRoutes as ew,route as $A,setAppUrl as ZA}from"stx-router";import{route as IU}from"stx-router";function rY($){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 IU(J,G,Q==="true")}catch(G){return console.error(`Error processing @route directive: ${G}`),"#route-error"}})}var aY=b(()=>{A0()});async function tY($,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 eY=b(()=>{U$={patterns:[],exact:{}}});function $J($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>$J(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function ZJ($,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=$J(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(DU.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 DU;var YJ=b(()=>{DU=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])||EU.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 bU($,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=bU($,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 JJ($,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 SU($){return/\bv-(?:if|else-if|else|for|show|model|html|text|pre|once|cloak|memo|bind|on|slot)\b/.test($)}function yU($){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})
9428
+ `,H=`${_}${B}
9429
+ @endforeach`;Z=Z.slice(0,U.outerStart)+H+Z.slice(U.outerEnd),Y=U.outerStart+_.length}return Z}function PU($){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=JJ(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})
9426
9430
  ${H.element}`);else if(H.type==="else-if")U.push(`@elseif(${H.expr})
9427
9431
  ${H.element}`);else U.push(`@else
9428
9432
  ${H.element}`);U.push("@endif");let j=U.join(`
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
9433
+ `),B=Q[0].outerStart,_=Q[Q.length-1].outerEnd;Z=Z.slice(0,B)+j+Z.slice(_),Y=B+j.length}return Z}function CU($){return $.replace(/\bv-show="([^"]*)"/g,'@show="$1"')}function vU($){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(kU.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 xU($){return $.replace(/\bv-bind:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'@bind:$1="$2"')}function fU($){return $.replace(/\bv-on:([a-zA-Z_][a-zA-Z0-9_.-]*)\s*=\s*"([^"]*)"/g,'@$1="$2"')}function gU($){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 hU($){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 dU($){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 uU($){let Z=$,Y=0;while(Y<Z.length){let J=o1(Z,Y);if(!J)break;if(!JJ(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
9430
9434
  ${T1(G,{...J,start:0,end:J.end-J.start},X)}
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(`
9435
+ @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 pU($){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 XJ($){if(!SU($))return $;let Z=$;return Z=yU(Z),Z=PU(Z),Z=uU(Z),Z=xU(Z),Z=fU(Z),Z=vU(Z),Z=CU(Z),Z=pU(Z),Z=gU(Z),Z=hU(Z),Z=dU(Z),Z=mU(Z),Z}var EU,kU;var QJ=b(()=>{EU=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),kU=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 GJ($,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 lU(Q,Z,Y,J,X),Q}async function lU($,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 KJ=b(()=>{N0();A0()});function zJ($){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>
9436
+ ${$.slice(Z)}`}function cU($){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 iU($,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(`
9433
9437
  `),H=G.map((N)=>{return` <link ${Object.entries(N).map(([T,I])=>`${T}="${I}"`).join(" ")}>`}).join(`
9434
9438
  `),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(`
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>
9439
+ `),V=Object.entries(W).map(([N,M])=>` ${N}="${M}"`).join(""),O=q?` class="${q}"`:"",{body:F,hoisted:w}=cU($),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>
9436
9440
  <html lang="${X}">
9437
9441
  <head>
9438
9442
  ${A.join(`
@@ -9442,33 +9446,33 @@ ${A.join(`
9442
9446
  ${R.join(`
9443
9447
  `)}
9444
9448
  </body>
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(`
9449
+ </html>`}function S6($){return/<!DOCTYPE\b/i.test($)||/<html[\s>]/i.test($)}function qJ($,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(`
9446
9450
  `)}
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>
9451
+ ${$.slice(Y)}`}function WJ($,Z={},Y={}){if(S6($))return $;return iU($,Z,Y)}import V5 from"path";function UJ($){return $.startsWith("http://")||$.startsWith("https://")||$.startsWith("//")}async function jJ($,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 BJ($,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(UJ(U))continue;let B=await jJ(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>
9448
9452
  // Source: ${U}
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>
9453
+ ${_}
9454
+ </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(UJ(U))continue;if(/rel=["']stylesheet["']/.test(B)||U.endsWith(".css")){let H=await jJ(U,X,Z);if(H)try{let L=await Bun.file(H).text();Y.add(H);let V=`<style>
9451
9455
  /* Source: ${U} */
9452
9456
  ${L}
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}
9457
+ </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),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 HJ($){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 OJ($){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 LJ($){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(!nU.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 nU;var v6=b(()=>{z1();A0();nU=/(?:^|\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 oU){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(`
9458
+ `),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}
9455
9459
  \u2192 ${z}`)}}if(Q.length>0&&J.enabled){let K=`[STX] DOM API violation in ${Z.split("/").pop()||Z}:
9456
9460
  ${Q.join(`
9457
9461
  `)}
9458
- Tip: prefer useRef(), navigate(), and composables for component code`;if(J.failOnViolation)throw Error(K);else console.warn(K)}}var nU;var f6=b(()=>{nU=[{pattern:/document\.getElementById\s*\(/g,message:"document.getElementById() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelector\s*\(/g,message:"document.querySelector() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelectorAll\s*\(/g,message:"document.querySelectorAll() is prohibited",suggestion:'Use useRef("name") and access children instead'},{pattern:/document\.getElementsBy\w+\s*\(/g,message:"document.getElementsBy*() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.createElement\s*\(/g,message:"document.createElement() is prohibited",suggestion:"Use template directives or component composition instead"},{pattern:/document\.activeElement(?![A-Za-z])/g,message:"document.activeElement is prohibited",suggestion:"Use useRef() to track focused elements"},{pattern:/document\.title\s*=/g,message:"document.title assignment is prohibited",suggestion:"Use useTitle() from composables"},{pattern:/document\.cookie(?![A-Za-z])/g,message:"document.cookie is prohibited",suggestion:"Use useCookie() from composables"},{pattern:/document\.addEventListener\s*\(/g,message:"document.addEventListener() is prohibited",suggestion:"Use useEventListener() or template @event directives"},{pattern:/window\.location(?![A-Za-z])/g,message:"window.location is prohibited",suggestion:"Use navigate() or useRoute()"},{pattern:/window\.history(?![A-Za-z])/g,message:"window.history is prohibited",suggestion:"Use navigate(), goBack(), goForward()"},{pattern:/window\.addEventListener\s*\(/g,message:"window.addEventListener() is prohibited",suggestion:"Use useEventListener() or @click directives"},{pattern:/window\.localStorage(?![A-Za-z])/g,message:"window.localStorage is prohibited",suggestion:"Use useLocalStorage() from composables"},{pattern:/window\.sessionStorage(?![A-Za-z])/g,message:"window.sessionStorage is prohibited",suggestion:"Use useSessionStorage() from composables"},{pattern:/window\.scrollTo\s*\(/g,message:"window.scrollTo() is prohibited",suggestion:"Use useScroll().scrollTo() from composables"},{pattern:/window\.alert\s*\(/g,message:"window.alert() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.confirm\s*\(/g,message:"window.confirm() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.prompt\s*\(/g,message:"window.prompt() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/(?<!\w)setTimeout\s*\(/g,message:"setTimeout() is prohibited",suggestion:"Use useTimeout() or useDebounce() from composables"},{pattern:/(?<!\w)setInterval\s*\(/g,message:"setInterval() is prohibited",suggestion:"Use useInterval() from composables"},{pattern:/(?<!\w)clearTimeout\s*\(/g,message:"clearTimeout() is prohibited",suggestion:"Use useTimeout().stop() or useDebounce().cancel()"},{pattern:/(?<!\w)clearInterval\s*\(/g,message:"clearInterval() is prohibited",suggestion:"Use useInterval().pause()"},{pattern:/(?<!\w)location\.href\s*=/g,message:"location.href assignment is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.assign\s*\(/g,message:"location.assign() is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.replace\s*\(/g,message:"location.replace() is prohibited",suggestion:"Use navigate() instead"}]});var LJ={};e(LJ,{getStoreScript:()=>oU,clearStoreCache:()=>sU});import o4 from"path";async function oU($){let Z;if($)Z=o4.resolve($);else{let W=await q1();Z=o4.resolve(W.root||process.cwd(),W.storesDir||"stores")}let Y=w5.get(Z);if(Y!==void 0)return Y||null;let J=new Bun.Glob("*.ts"),X=[];try{for await(let W of J.scan({cwd:Z,absolute:!0})){let U=o4.basename(W,".ts");if(["index","types"].includes(U))continue;if(W.includes(".d.ts"))continue;X.push(W)}}catch{return w5.set(Z,""),null}if(X.length===0)return w5.set(Z,""),null;let Q=[];for(let W of X){let U=await Bun.file(W).text();Q.push({file:W,hasUseStore:/useStore\s*\(/.test(U)})}Q.sort((W,U)=>{if(W.hasUseStore===U.hasUseStore)return 0;return W.hasUseStore?1:-1});let G=Q.map((W)=>W.file),K=[],z=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()});for(let W of G)try{let U=await Bun.file(W).text(),j=o4.basename(W,".ts");U=U.replace(/^import\s+.*from\s+['"][^'"]+['"]\s*;?\s*$/gm,""),U=U.replace(/^export\s+(default\s+)?/gm,""),U=z.transformSync(U),K.push(`// Store: ${j}
9462
+ Tip: prefer useRef(), navigate(), and composables for component code`;if(J.failOnViolation)throw Error(K);else console.warn(K)}}var oU;var f6=b(()=>{oU=[{pattern:/document\.getElementById\s*\(/g,message:"document.getElementById() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelector\s*\(/g,message:"document.querySelector() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelectorAll\s*\(/g,message:"document.querySelectorAll() is prohibited",suggestion:'Use useRef("name") and access children instead'},{pattern:/document\.getElementsBy\w+\s*\(/g,message:"document.getElementsBy*() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.createElement\s*\(/g,message:"document.createElement() is prohibited",suggestion:"Use template directives or component composition instead"},{pattern:/document\.activeElement(?![A-Za-z])/g,message:"document.activeElement is prohibited",suggestion:"Use useRef() to track focused elements"},{pattern:/document\.title\s*=/g,message:"document.title assignment is prohibited",suggestion:"Use useTitle() from composables"},{pattern:/document\.cookie(?![A-Za-z])/g,message:"document.cookie is prohibited",suggestion:"Use useCookie() from composables"},{pattern:/document\.addEventListener\s*\(/g,message:"document.addEventListener() is prohibited",suggestion:"Use useEventListener() or template @event directives"},{pattern:/window\.location(?![A-Za-z])/g,message:"window.location is prohibited",suggestion:"Use navigate() or useRoute()"},{pattern:/window\.history(?![A-Za-z])/g,message:"window.history is prohibited",suggestion:"Use navigate(), goBack(), goForward()"},{pattern:/window\.addEventListener\s*\(/g,message:"window.addEventListener() is prohibited",suggestion:"Use useEventListener() or @click directives"},{pattern:/window\.localStorage(?![A-Za-z])/g,message:"window.localStorage is prohibited",suggestion:"Use useLocalStorage() from composables"},{pattern:/window\.sessionStorage(?![A-Za-z])/g,message:"window.sessionStorage is prohibited",suggestion:"Use useSessionStorage() from composables"},{pattern:/window\.scrollTo\s*\(/g,message:"window.scrollTo() is prohibited",suggestion:"Use useScroll().scrollTo() from composables"},{pattern:/window\.alert\s*\(/g,message:"window.alert() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.confirm\s*\(/g,message:"window.confirm() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.prompt\s*\(/g,message:"window.prompt() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/(?<!\w)setTimeout\s*\(/g,message:"setTimeout() is prohibited",suggestion:"Use useTimeout() or useDebounce() from composables"},{pattern:/(?<!\w)setInterval\s*\(/g,message:"setInterval() is prohibited",suggestion:"Use useInterval() from composables"},{pattern:/(?<!\w)clearTimeout\s*\(/g,message:"clearTimeout() is prohibited",suggestion:"Use useTimeout().stop() or useDebounce().cancel()"},{pattern:/(?<!\w)clearInterval\s*\(/g,message:"clearInterval() is prohibited",suggestion:"Use useInterval().pause()"},{pattern:/(?<!\w)location\.href\s*=/g,message:"location.href assignment is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.assign\s*\(/g,message:"location.assign() is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.replace\s*\(/g,message:"location.replace() is prohibited",suggestion:"Use navigate() instead"}]});var FJ={};e(FJ,{getStoreScript:()=>sU,clearStoreCache:()=>rU});import o4 from"path";async function sU($){let Z;if($)Z=o4.resolve($);else{let W=await q1();Z=o4.resolve(W.root||process.cwd(),W.storesDir||"stores")}let Y=w5.get(Z);if(Y!==void 0)return Y||null;let J=new Bun.Glob("*.ts"),X=[];try{for await(let W of J.scan({cwd:Z,absolute:!0})){let U=o4.basename(W,".ts");if(["index","types"].includes(U))continue;if(W.includes(".d.ts"))continue;X.push(W)}}catch{return w5.set(Z,""),null}if(X.length===0)return w5.set(Z,""),null;let Q=[];for(let W of X){let U=await Bun.file(W).text();Q.push({file:W,hasUseStore:/useStore\s*\(/.test(U)})}Q.sort((W,U)=>{if(W.hasUseStore===U.hasUseStore)return 0;return W.hasUseStore?1:-1});let G=Q.map((W)=>W.file),K=[],z=new Bun.Transpiler({loader:"ts",target:"browser",define:p0()});for(let W of G)try{let U=await Bun.file(W).text(),j=o4.basename(W,".ts");U=U.replace(/^import\s+.*from\s+['"][^'"]+['"]\s*;?\s*$/gm,""),U=U.replace(/^export\s+(default\s+)?/gm,""),U=z.transformSync(U),K.push(`// Store: ${j}
9459
9463
  ${U.trim()}`)}catch(U){console.warn(`[stx] Failed to load store ${W}:`,U)}if(K.length===0)return w5.set(Z,""),null;let q=`;(function(){
9460
9464
  ${K.join(`
9461
9465
 
9462
9466
  `)}
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(`
9467
+ })();`;return w5.set(Z,q),q}function rU(){w5.clear()}var w5;var VJ=b(()=>{l1();b1();w5=new Map});var AJ={};e(AJ,{getComposableScript:()=>$j,clearComposableCache:()=>Zj});import j$ from"path";function wJ($){let Z=j$.basename($,".ts");return Z==="index"||Z==="types"||$.endsWith(".d.ts")}async function tU($){if($)return j$.resolve($);let Z=`<default>:${process.cwd()}`,Y=g6.get(Z);if(Y!==void 0)return Y;let J=await eU();return g6.set(Z,J),J}async function eU(){let $=await q1(),Z=$.root||process.cwd(),Y=$.composablesDir;if(Y)return j$.resolve(Z,Y);for(let J of aU){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(!wJ(G))return X}catch{}}return null}async function $j($){let Z=await tU($);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(wJ(_))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}
9468
+ ${_.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(`
9465
9469
  `),q=JSON.stringify([...G]),W=Q.join(`
9466
9470
 
9467
9471
  `),j=`;(function(){
9468
9472
  window.__composables = window.__composables || {};
9469
9473
  var __c = window.__composables;
9470
9474
  var __stx = window.stx || {};
9471
- ${N$.filter((_)=>!K.has(_)&&new RegExp(`\\b${_}\\b`).test(W)).map((_)=>`var ${_} = __stx[${JSON.stringify(_)}];`).join(`
9475
+ ${N$.filter((B)=>!K.has(B)&&new RegExp(`\\b${B}\\b`).test(W)).map((B)=>`var ${B} = __stx[${JSON.stringify(B)}];`).join(`
9472
9476
  `)}
9473
9477
  ${W}
9474
9478
  ${z}
@@ -9485,7 +9489,7 @@ ${z}
9485
9489
  }
9486
9490
  window[__n] = __c[__n];
9487
9491
  }
9488
- })();`;return A5.set(Z,j),j}function $j(){A5.clear(),g6.clear()}var A5,g6,rU;var AJ=b(()=>{l1();b1();d5();A5=new Map,g6=new Map,rU=["composables","functions"]});var NJ={};e(NJ,{processDeferDirectives:()=>Qj});function Zj(){return`stx-defer-${++RJ}`}function Yj($){let Z=$.match(/on:\s*['"]?(\w+)(?:\((\d+)\))?['"]?/);if(Z)return{trigger:Z[1],value:Z[2]};return{trigger:"immediate"}}function Jj($,Z,Y){let{trigger:J,value:X}=Yj(Z),Q=Y,G,K,z,q=Y.match(/@placeholder\s*([\s\S]*?)(?=@loading|@error|$)/);if(q)G=q[1].trim(),Q=Q.replace(/@placeholder[\s\S]*?(?=@loading|@error|$)/,"");let W=Y.match(/@loading\s*([\s\S]*?)(?=@error|$)/);if(W)K=W[1].trim(),Q=Q.replace(/@loading[\s\S]*?(?=@error|$)/,"");let U=Y.match(/@error(?:\s*\(\s*(\w+)\s*\))?\s*([\s\S]*)$/);if(U)z=U[2].trim(),Q=Q.replace(/@error(?:\s*\(\s*\w+\s*\))?[\s\S]*$/,"");return Q=Q.trim(),{trigger:J,triggerValue:X,content:Q,placeholder:G,loading:K,error:z}}function Xj($,Z){let{trigger:Y,triggerValue:J}=Z,X;switch(Y){case"visible":X=`
9492
+ })();`;return A5.set(Z,j),j}function Zj(){A5.clear(),g6.clear()}var A5,g6,aU;var RJ=b(()=>{l1();b1();d5();A5=new Map,g6=new Map,aU=["composables","functions"]});var MJ={};e(MJ,{processDeferDirectives:()=>Gj});function Yj(){return`stx-defer-${++NJ}`}function Jj($){let Z=$.match(/on:\s*['"]?(\w+)(?:\((\d+)\))?['"]?/);if(Z)return{trigger:Z[1],value:Z[2]};return{trigger:"immediate"}}function Xj($,Z,Y){let{trigger:J,value:X}=Jj(Z),Q=Y,G,K,z,q=Y.match(/@placeholder\s*([\s\S]*?)(?=@loading|@error|$)/);if(q)G=q[1].trim(),Q=Q.replace(/@placeholder[\s\S]*?(?=@loading|@error|$)/,"");let W=Y.match(/@loading\s*([\s\S]*?)(?=@error|$)/);if(W)K=W[1].trim(),Q=Q.replace(/@loading[\s\S]*?(?=@error|$)/,"");let U=Y.match(/@error(?:\s*\(\s*(\w+)\s*\))?\s*([\s\S]*)$/);if(U)z=U[2].trim(),Q=Q.replace(/@error(?:\s*\(\s*\w+\s*\))?[\s\S]*$/,"");return Q=Q.trim(),{trigger:J,triggerValue:X,content:Q,placeholder:G,loading:K,error:z}}function Qj($,Z){let{trigger:Y,triggerValue:J}=Z,X;switch(Y){case"visible":X=`
9489
9493
  const observer = new IntersectionObserver((entries) => {
9490
9494
  if (entries[0].isIntersecting) {
9491
9495
  observer.disconnect();
@@ -9558,15 +9562,15 @@ else {
9558
9562
  ${X}
9559
9563
  })();
9560
9564
  </script>
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`
9565
+ `}function Gj($,Z,Y){NJ=0;let J=/@defer\s*\(([^)]*)\)\s*([\s\S]*?)@enddefer/g;return $.replace(J,(X,Q,G)=>{let K=Yj(),z=Xj(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=Qj(K,z);return`
9562
9566
  <div id="${K}" class="stx-defer" data-defer-trigger="${z.trigger}">
9563
9567
  ${q}
9564
9568
  ${W}
9565
9569
  ${j}
9566
9570
  ${U}
9567
9571
  </div>
9568
- ${_}
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`
9572
+ ${B}
9573
+ `})}var NJ=0;var IJ={};e(IJ,{processTeleportDirectives:()=>Wj,ensureTeleportTargets:()=>Uj});function Kj(){return`stx-teleport-${++TJ}`}function zj($){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 qj($,Z){return`
9570
9574
  <script>
9571
9575
  (function() {
9572
9576
  const source = document.getElementById('${$}');
@@ -9612,12 +9616,12 @@ else {
9612
9616
  });
9613
9617
  })();
9614
9618
  </script>
9615
- `}function qj($,Z,Y){MJ=0;let J=/@teleport\s*\(([^)]+)\)\s*([\s\S]*?)@endteleport/g;return $.replace(J,(X,Q,G)=>{let K=Gj(),{target:z,disabled:q}=Kj(Q),W=G.trim();if(q)try{let j=!1;if(q==="true")j=!0;else if(q==="false")j=!1;else if(q in Z)j=Boolean(Z[q]);if(j)return`<div class="stx-teleport-inline" data-teleport-disabled>${W}</div>`}catch{}let U=zj(K,z);return`
9619
+ `}function Wj($,Z,Y){TJ=0;let J=/@teleport\s*\(([^)]+)\)\s*([\s\S]*?)@endteleport/g;return $.replace(J,(X,Q,G)=>{let K=Kj(),{target:z,disabled:q}=zj(Q),W=G.trim();if(q)try{let j=!1;if(q==="true")j=!0;else if(q==="false")j=!1;else if(q in Z)j=Boolean(Z[q]);if(j)return`<div class="stx-teleport-inline" data-teleport-disabled>${W}</div>`}catch{}let U=qj(K,z);return`
9616
9620
  <div id="${K}" class="stx-teleport-source" style="display: none;">
9617
9621
  <template>${W}</template>
9618
9622
  </div>
9619
9623
  ${U}
9620
- `})}function Wj(){return`
9624
+ `})}function Uj(){return`
9621
9625
  <script>
9622
9626
  (function() {
9623
9627
  // Common teleport targets
@@ -9634,7 +9638,7 @@ else {
9634
9638
  });
9635
9639
  })();
9636
9640
  </script>
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`
9641
+ `}var TJ=0;var bJ={};e(bJ,{processTransitionDirectives:()=>Hj,processTransitionAttributes:()=>Vj,performLeave:()=>_j,performEnter:()=>Bj,generateTransitionRuntime:()=>Fj,generateTransitionCSS:()=>Lj});function DJ($,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 jj($){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 EJ($,Z){return new Promise((Y)=>{let J=Z??jj($);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 kJ($){$.offsetHeight}async function Bj($,Z={}){let Y=Z.name||"stx",J=DJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.enter:Z.duration;if(Z.onBeforeEnter?.($),$.classList.add(J.enterFrom),$.classList.add(J.enterActive),kJ($),$.classList.remove(J.enterFrom),$.classList.add(J.enterTo),Z.onEnter)await new Promise((Q)=>{Z.onEnter($,Q)});else await EJ($,X);$.classList.remove(J.enterActive),$.classList.remove(J.enterTo),Z.onAfterEnter?.($)}async function _j($,Z={}){let Y=Z.name||"stx",J=DJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.leave:Z.duration;if(Z.onBeforeLeave?.($),$.classList.add(J.leaveFrom),$.classList.add(J.leaveActive),kJ($),$.classList.remove(J.leaveFrom),$.classList.add(J.leaveTo),Z.onLeave)await new Promise((Q)=>{Z.onLeave($,Q)});else await EJ($,X);$.classList.remove(J.leaveActive),$.classList.remove(J.leaveTo),Z.onAfterLeave?.($)}function Hj($,Z={},Y){let J=/@transition\s*\(([^)]*)\)([\s\S]*?)@endtransition/gi;return $.replace(J,(X,Q,G)=>{let K=Oj(Q),z=K.name||"stx",q=K.duration||300,W=`stx-transition-${Math.random().toString(36).slice(2,9)}`;return`
9638
9642
  <div
9639
9643
  class="stx-transition-wrapper"
9640
9644
  data-transition="${z}"
@@ -9676,7 +9680,7 @@ else {
9676
9680
  });
9677
9681
  })();
9678
9682
  </script>
9679
- `})}function Hj($){let Z={},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\d+)|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3]||J[4]||J[5];switch(X){case"name":Z.name=Q;break;case"duration":Z.duration=parseInt(Q,10);break;case"mode":Z.mode=Q;break;case"easing":Z.easing=Q;break}}return Z}function Oj(){return`
9683
+ `})}function Oj($){let Z={},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\d+)|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3]||J[4]||J[5];switch(X){case"name":Z.name=Q;break;case"duration":Z.duration=parseInt(Q,10);break;case"mode":Z.mode=Q;break;case"easing":Z.easing=Q;break}}return Z}function Lj(){return`
9680
9684
  /* STX Transition Presets */
9681
9685
 
9682
9686
  /* Fade */
@@ -9863,7 +9867,7 @@ else {
9863
9867
  opacity: 1;
9864
9868
  max-height: 1000px;
9865
9869
  }
9866
- `}function Lj(){return`
9870
+ `}function Fj(){return`
9867
9871
  // STX Transition Runtime
9868
9872
  (function() {
9869
9873
  if (typeof window === 'undefined') return;
@@ -9952,7 +9956,7 @@ else {
9952
9956
 
9953
9957
  console.log('[stx] Transition runtime initialized');
9954
9958
  })();
9955
- `}function Fj($){let Z=/@transition\.([a-z-]+)(?:\.(\d+))?="([^"]+)"/gi;return $.replace(Z,(Y,J,X,Q)=>{let G=X||"300",K=`stx-t-${Math.random().toString(36).slice(2,7)}`;return`data-stx-transition="${J}" data-stx-transition-duration="${G}" data-stx-transition-condition="${Q}" data-stx-transition-id="${K}"`})}var SJ={};e(SJ,{withErrorBoundary:()=>bJ,processErrorBoundaryDirectives:()=>Aj,generateErrorBoundaryRuntime:()=>Ij,generateErrorBoundaryCSS:()=>Tj,createErrorBoundary:()=>Mj});function wj(){return`eb-${++Vj}-${Date.now().toString(36)}`}function Aj($,Z={},Y){let J=/@errorBoundary(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@enderrorBoundary/gi;return $.replace(J,(X,Q,G,K)=>{let z=wj(),q=Rj(Q||"");return Nj(z,G.trim(),K.trim(),q)})}function Rj($){let Z={},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3]||J[4];switch(X){case"id":Z.id=Q;break;case"logErrors":Z.logErrors=Q==="true";break}}return Z}function Nj($,Z,Y,J){let X=J.logErrors!==!1;return`
9959
+ `}function Vj($){let Z=/@transition\.([a-z-]+)(?:\.(\d+))?="([^"]+)"/gi;return $.replace(Z,(Y,J,X,Q)=>{let G=X||"300",K=`stx-t-${Math.random().toString(36).slice(2,7)}`;return`data-stx-transition="${J}" data-stx-transition-duration="${G}" data-stx-transition-condition="${Q}" data-stx-transition-id="${K}"`})}var yJ={};e(yJ,{withErrorBoundary:()=>SJ,processErrorBoundaryDirectives:()=>Rj,generateErrorBoundaryRuntime:()=>Dj,generateErrorBoundaryCSS:()=>Ij,createErrorBoundary:()=>Tj});function Aj(){return`eb-${++wj}-${Date.now().toString(36)}`}function Rj($,Z={},Y){let J=/@errorBoundary(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@enderrorBoundary/gi;return $.replace(J,(X,Q,G,K)=>{let z=Aj(),q=Nj(Q||"");return Mj(z,G.trim(),K.trim(),q)})}function Nj($){let Z={},Y=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\w+))/g,J;while((J=Y.exec($))!==null){let X=J[1],Q=J[2]||J[3]||J[4];switch(X){case"id":Z.id=Q;break;case"logErrors":Z.logErrors=Q==="true";break}}return Z}function Mj($,Z,Y,J){let X=J.logErrors!==!1;return`
9956
9960
  <div class="stx-error-boundary" data-boundary-id="${$}" data-has-error="false">
9957
9961
  <div class="stx-error-boundary-content" data-boundary-content="${$}">
9958
9962
  ${Z}
@@ -10072,7 +10076,7 @@ else {
10072
10076
  };
10073
10077
  })();
10074
10078
  </script>
10075
- `}async function bJ($,Z,Y){try{return await $()}catch(J){if(Y)Y(J instanceof Error?J:Error(String(J)));else console.error("[stx:errorBoundary] SSR Error:",J);return Z}}function Mj($,Z={}){let Y=Z.onError?(J)=>Z.onError(J,{timestamp:Date.now(),boundaryId:"ssr"}):void 0;return(J)=>bJ(J,$,Y)}function Tj(){return`
10079
+ `}async function SJ($,Z,Y){try{return await $()}catch(J){if(Y)Y(J instanceof Error?J:Error(String(J)));else console.error("[stx:errorBoundary] SSR Error:",J);return Z}}function Tj($,Z={}){let Y=Z.onError?(J)=>Z.onError(J,{timestamp:Date.now(),boundaryId:"ssr"}):void 0;return(J)=>SJ(J,$,Y)}function Ij(){return`
10076
10080
  /* STX Error Boundary Styles */
10077
10081
  .stx-error-boundary {
10078
10082
  position: relative;
@@ -10116,7 +10120,7 @@ else {
10116
10120
  color: #fecaca;
10117
10121
  }
10118
10122
  }
10119
- `}function Ij(){return`
10123
+ `}function Dj(){return`
10120
10124
  // STX Error Boundary Runtime
10121
10125
  (function() {
10122
10126
  if (typeof window === 'undefined') return;
@@ -10181,7 +10185,7 @@ else {
10181
10185
 
10182
10186
  console.log('[stx] Error boundary runtime initialized');
10183
10187
  })();
10184
- `}var Vj=0;var yJ={};e(yJ,{renderSSRSuspense:()=>Pj,processSuspenseDirectives:()=>kj,generateSuspenseRuntime:()=>vj,generateSuspenseCSS:()=>Cj,createSSRSuspense:()=>yj});function Ej(){return`suspense-${++Dj}-${Date.now().toString(36)}`}function kj($,Z={},Y){let J=/@suspense(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@endsuspense/gi;return $.replace(J,(X,Q,G,K)=>{let z=Ej(),q=bj(Q||"");return Sj(z,G.trim(),K.trim(),q)})}function bj($){let Z={},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"id":Z.id=Q;break;case"timeout":Z.timeout=G?parseInt(G,10):void 0;break}}return Z}function Sj($,Z,Y,J){let X=J.timeout||30000,Q=J.id||$;return`
10188
+ `}var wj=0;var PJ={};e(PJ,{renderSSRSuspense:()=>Cj,processSuspenseDirectives:()=>bj,generateSuspenseRuntime:()=>xj,generateSuspenseCSS:()=>vj,createSSRSuspense:()=>Pj});function kj(){return`suspense-${++Ej}-${Date.now().toString(36)}`}function bj($,Z={},Y){let J=/@suspense(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@endsuspense/gi;return $.replace(J,(X,Q,G,K)=>{let z=kj(),q=Sj(Q||"");return yj(z,G.trim(),K.trim(),q)})}function Sj($){let Z={},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"id":Z.id=Q;break;case"timeout":Z.timeout=G?parseInt(G,10):void 0;break}}return Z}function yj($,Z,Y,J){let X=J.timeout||30000,Q=J.id||$;return`
10185
10189
  <div class="stx-suspense" data-suspense-id="${$}" data-custom-id="${Q}" data-status="pending">
10186
10190
  <div class="stx-suspense-fallback" data-suspense-fallback="${$}">
10187
10191
  ${Y}
@@ -10371,7 +10375,7 @@ else {
10371
10375
  }, 0);
10372
10376
  })();
10373
10377
  </script>
10374
- `}function yj($,Z,Y){return{id:$,fallback:Y,content:Z}}async function Pj($){let Z=$.map((J)=>`
10378
+ `}function Pj($,Z,Y){return{id:$,fallback:Y,content:Z}}async function Cj($){let Z=$.map((J)=>`
10375
10379
  <div id="stx-ssr-suspense-${J.id}" class="stx-ssr-suspense">
10376
10380
  ${J.fallback}
10377
10381
  </div>
@@ -10396,7 +10400,7 @@ else {
10396
10400
  }
10397
10401
  })();
10398
10402
  </script>
10399
- `}}return{initial:Z,streaming:Y()}}function Cj(){return`
10403
+ `}}return{initial:Z,streaming:Y()}}function vj(){return`
10400
10404
  /* STX Suspense Styles */
10401
10405
  .stx-suspense {
10402
10406
  position: relative;
@@ -10452,7 +10456,7 @@ else {
10452
10456
  background-size: 200% 100%;
10453
10457
  }
10454
10458
  }
10455
- `}function vj(){return`
10459
+ `}function xj(){return`
10456
10460
  // STX Suspense Runtime
10457
10461
  (function() {
10458
10462
  if (typeof window === 'undefined') return;
@@ -10519,7 +10523,7 @@ else {
10519
10523
 
10520
10524
  console.log('[stx] Suspense runtime initialized');
10521
10525
  })();
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`
10526
+ `}var Ej=0;var fJ={};e(fJ,{processAsyncDirectives:()=>gj,isAsyncComponent:()=>dj,generateAsyncComponentRuntime:()=>mj,generateAsyncComponentCSS:()=>uj,defineAsyncComponent:()=>hj});function CJ(){return`async-${++fj}-${Date.now().toString(36)}`}function gj($,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=CJ(),U=vJ(K);return xJ(W,U,z.trim(),q.trim())}),Q=Q.replace(X,(G,K,z)=>{let q=CJ(),W=vJ(K);return xJ(q,W,z.trim(),'<div class="stx-async-error">Failed to load component</div>')}),Q}function vJ($){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 xJ($,Z,Y,J){let{component:X,timeout:Q,delay:G,suspensible:K,retries:z}=Z;return`
10523
10527
  <div class="stx-async-component" data-async-id="${$}" data-component="${X}" data-status="pending">
10524
10528
  <div class="stx-async-loading" data-async-loading="${$}">
10525
10529
  ${Y}
@@ -10746,7 +10750,7 @@ catch (error) {
10746
10750
  loadComponent();
10747
10751
  })();
10748
10752
  </script>
10749
- `}function gj($){return{__asyncComponent:!0,...typeof $==="function"?{loader:$}:$}}function hj($){return typeof $==="object"&&$!==null&&"__asyncComponent"in $&&$.__asyncComponent===!0}function dj(){return`
10753
+ `}function hj($){return{__asyncComponent:!0,...typeof $==="function"?{loader:$}:$}}function dj($){return typeof $==="object"&&$!==null&&"__asyncComponent"in $&&$.__asyncComponent===!0}function uj(){return`
10750
10754
  /* STX Async Component Styles */
10751
10755
  .stx-async-component {
10752
10756
  position: relative;
@@ -10874,7 +10878,7 @@ catch (error) {
10874
10878
 
10875
10879
  console.log('[stx] Async component runtime initialized');
10876
10880
  })();
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`
10881
+ `}var fj=0;var hJ={};e(hJ,{shouldCacheComponent:()=>oj,processKeepAliveDirectives:()=>lj,onDeactivated:()=>tj,onActivated:()=>aj,generateKeepAliveRuntime:()=>rj,generateKeepAliveCSS:()=>sj,createKeepAliveCache:()=>nj});function gJ(){return`keep-alive-${++pj}-${Date.now().toString(36)}`}function lj($,Z={},Y){let J=/@keepAlive(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@endkeepAlive/gi;return $.replace(J,(X,Q,G)=>{let K=gJ(),z=cj(Q||"");return ij(K,G.trim(),z)})}function cj($){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 ij($,Z,Y){let{max:J,include:X,exclude:Q}=Y,G=Y.id||$;return`
10878
10882
  <div class="stx-keep-alive" data-keep-alive-id="${$}" data-custom-id="${G}">
10879
10883
  <div class="stx-keep-alive-content" data-keep-alive-content="${$}">
10880
10884
  ${Z}
@@ -11161,7 +11165,7 @@ else {
11161
11165
  });
11162
11166
  })();
11163
11167
  </script>
11164
- `}function ij($={}){return{id:$.id||fJ(),cache:new Map,max:$.max||10,include:$.include?$.include.split(",").map((Y)=>Y.trim()):null,exclude:$.exclude?$.exclude.split(",").map((Y)=>Y.trim()):null}}function nj($,Z){if(Z.exclude&&Z.exclude.includes($))return!1;if(Z.include&&!Z.include.includes($))return!1;return!0}function oj(){return`
11168
+ `}function nj($={}){return{id:$.id||gJ(),cache:new Map,max:$.max||10,include:$.include?$.include.split(",").map((Y)=>Y.trim()):null,exclude:$.exclude?$.exclude.split(",").map((Y)=>Y.trim()):null}}function oj($,Z){if(Z.exclude&&Z.exclude.includes($))return!1;if(Z.include&&!Z.include.includes($))return!1;return!0}function sj(){return`
11165
11169
  /* STX Keep-Alive Styles */
11166
11170
  .stx-keep-alive {
11167
11171
  position: relative;
@@ -11186,7 +11190,7 @@ else {
11186
11190
  .stx-keep-alive-content > [data-activated] {
11187
11191
  opacity: 1;
11188
11192
  }
11189
- `}function sj(){return`
11193
+ `}function rj(){return`
11190
11194
  // STX Keep-Alive Runtime
11191
11195
  (function() {
11192
11196
  if (typeof window === 'undefined') return;
@@ -11222,7 +11226,7 @@ else {
11222
11226
 
11223
11227
  console.log('[stx] Keep-alive runtime initialized');
11224
11228
  })();
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+=`
11229
+ `}function aj($){if(typeof document<"u")document.addEventListener("stx:activated",(Z)=>{$(Z.detail)})}function tj($){if(typeof document<"u")document.addEventListener("stx:deactivated",(Z)=>{$(Z.detail)})}var pj=0;var lJ={};e(lJ,{useVirtualList:()=>uJ,processVirtualListDirectives:()=>d6,processVirtualGridDirectives:()=>pJ,processInfiniteListDirectives:()=>mJ,generateVirtualListCSS:()=>dJ,default:()=>ej,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+=`
11226
11230
  <div class="virtual-item ${W.itemClass||""}"
11227
11231
  style="position: absolute; top: ${O*W.itemHeight}px; height: ${W.itemHeight}px; width: 100%;"
11228
11232
  data-index="${O}">
@@ -11233,7 +11237,7 @@ else {
11233
11237
  style="position: relative; height: ${W.containerHeight}px; overflow-y: auto;"
11234
11238
  data-item-height="${W.itemHeight}"
11235
11239
  data-total-items="${q.length}"
11236
- data-overscan="${_}">
11240
+ data-overscan="${B}">
11237
11241
  <div class="virtual-list-viewport ${W.viewportClass||""}"
11238
11242
  style="position: relative; height: ${V}px; width: 100%;">
11239
11243
  ${L}
@@ -11247,7 +11251,7 @@ else {
11247
11251
  const viewport = container.querySelector('.virtual-list-viewport');
11248
11252
  const itemHeight = ${W.itemHeight};
11249
11253
  const totalItems = ${q.length};
11250
- const overscan = ${_};
11254
+ const overscan = ${B};
11251
11255
  const containerHeight = ${W.containerHeight};
11252
11256
  const items = ${JSON.stringify(q)};
11253
11257
  const template = ${JSON.stringify(K.trim())};
@@ -11299,7 +11303,7 @@ else {
11299
11303
  };
11300
11304
  })();
11301
11305
  </script>
11302
- `})}function hJ(){return`
11306
+ `})}function dJ(){return`
11303
11307
  .virtual-list-container {
11304
11308
  position: relative;
11305
11309
  overflow-y: auto;
@@ -11347,7 +11351,7 @@ else {
11347
11351
  0% { background-position: 200% 0; }
11348
11352
  100% { background-position: -200% 0; }
11349
11353
  }
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>",`
11354
+ `}function uJ($,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 _=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>",`
11351
11355
  // Infinite scroll detection
11352
11356
  container.addEventListener('scroll', function() {
11353
11357
  const scrollBottom = container.scrollTop + container.clientHeight;
@@ -11360,12 +11364,12 @@ else {
11360
11364
  });
11361
11365
  </script>`),`
11362
11366
  <div id="${j}" class="infinite-list-wrapper">
11363
- ${_}
11367
+ ${B}
11364
11368
  <div class="infinite-list-loading" style="display: none;">
11365
11369
  ${z}
11366
11370
  </div>
11367
11371
  </div>
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+=`
11372
+ `})}function pJ($,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+=`
11369
11373
  <div class="virtual-grid-item"
11370
11374
  style="position: absolute; top: ${M}px; left: ${N}%; width: calc(${100/W.columns}% - ${W.gap||0}px); height: ${W.rowHeight}px;"
11371
11375
  data-index="${A}">
@@ -11375,7 +11379,7 @@ else {
11375
11379
  class="virtual-grid-container"
11376
11380
  style="position: relative; height: ${W.containerHeight}px; overflow-y: auto;">
11377
11381
  <div class="virtual-grid-viewport"
11378
- style="position: relative; height: ${_}px; width: 100%;">
11382
+ style="position: relative; height: ${B}px; width: 100%;">
11379
11383
  ${O}
11380
11384
  </div>
11381
11385
  </div>
@@ -11435,7 +11439,7 @@ else {
11435
11439
  });
11436
11440
  })();
11437
11441
  </script>
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>
11442
+ `})}var ej;var cJ=b(()=>{ej={createVirtualList:h6,processVirtualListDirectives:d6,processInfiniteListDirectives:mJ,processVirtualGridDirectives:pJ,generateVirtualListCSS:dJ,useVirtualList:uJ}});function iJ(){return`<script data-stx-hydration-runtime>
11439
11443
  (function() {
11440
11444
  'use strict';
11441
11445
 
@@ -11595,7 +11599,7 @@ else {
11595
11599
  stxIslands.initIslands();
11596
11600
  }
11597
11601
  })();
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`
11602
+ </script>`}function nJ($){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 oJ($,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 QX={};e(QX,{processStaticDirectives:()=>JX,processPartialHydrationDirectives:()=>rJ,onHydrated:()=>YX,isHydrated:()=>ZX,hydrateIsland:()=>tJ,hydrateByStrategy:()=>eJ,hydrateAll:()=>$X,generatePartialHydrationCSS:()=>aJ,generateIslandManifest:()=>XX,default:()=>KB,createIslandRegistry:()=>sJ});function sJ(){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 $B($){return`
11599
11603
  <script data-hydrate="${$}">
11600
11604
  (function() {
11601
11605
  const island = document.querySelector('[data-island="${$}"]');
@@ -11606,7 +11610,7 @@ else {
11606
11610
  island.dispatchEvent(new CustomEvent('stx:hydrated', { bubbles: true }));
11607
11611
  })();
11608
11612
  </script>
11609
- `}function $_($,Z){let Y=Z.timeout||2000,J=Z.priority||"low";return`
11613
+ `}function ZB($,Z){let Y=Z.timeout||2000,J=Z.priority||"low";return`
11610
11614
  <script data-hydrate="${$}">
11611
11615
  (function() {
11612
11616
  const island = document.querySelector('[data-island="${$}"]');
@@ -11642,7 +11646,7 @@ else {
11642
11646
  }
11643
11647
  })();
11644
11648
  </script>
11645
- `}function Z_($,Z){let Y=Z.rootMargin||"0px",J=Z.threshold||0;return`
11649
+ `}function YB($,Z){let Y=Z.rootMargin||"0px",J=Z.threshold||0;return`
11646
11650
  <script data-hydrate="${$}">
11647
11651
  (function() {
11648
11652
  const island = document.querySelector('[data-island="${$}"]');
@@ -11675,7 +11679,7 @@ else {
11675
11679
  }
11676
11680
  })();
11677
11681
  </script>
11678
- `}function Y_($,Z){let Y=Z.media||"(min-width: 768px)";return`
11682
+ `}function JB($,Z){let Y=Z.media||"(min-width: 768px)";return`
11679
11683
  <script data-hydrate="${$}">
11680
11684
  (function() {
11681
11685
  const island = document.querySelector('[data-island="${$}"]');
@@ -11704,7 +11708,7 @@ else {
11704
11708
  }
11705
11709
  })();
11706
11710
  </script>
11707
- `}function J_($){return`
11711
+ `}function XB($){return`
11708
11712
  <script data-hydrate="${$}">
11709
11713
  (function() {
11710
11714
  const island = document.querySelector('[data-island="${$}"]');
@@ -11726,7 +11730,7 @@ else {
11726
11730
  events.forEach(e => island.addEventListener(e, handler, { once: true, passive: true }));
11727
11731
  })();
11728
11732
  </script>
11729
- `}function X_($,Z){let Y=Z.event||"stx:activate";return`
11733
+ `}function QB($,Z){let Y=Z.event||"stx:activate";return`
11730
11734
  <script data-hydrate="${$}">
11731
11735
  (function() {
11732
11736
  const island = document.querySelector('[data-island="${$}"]');
@@ -11747,19 +11751,19 @@ else {
11747
11751
  });
11748
11752
  })();
11749
11753
  </script>
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`
11754
+ `}function rJ($,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=GB(J),J=R5(J,"hover",Z),J=R5(J,"event",Z),X=Q&&J!==$,X)J+=`
11755
+ `+iJ();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=nJ(G.trim()),W=oJ(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?`
11756
+ <script type="application/json" data-island-props="${z}">${JSON.stringify(W)}</script>`:"",_="";switch(Z){case"load":_=$B(z);break;case"idle":_=ZB(z,K);break;case"visible":_=YB(z,K);break;case"media":_=JB(z,K);break;case"hover":_=XB(z);break;case"event":_=QB(z,K);break}return`
11753
11757
  <div data-island="${z}"
11754
11758
  data-strategy="${Z}"
11755
11759
  ${U.join(`
11756
11760
  `)}
11757
11761
  class="stx-island"
11758
11762
  style="contents;">
11759
- ${G.trim()}${_}
11763
+ ${G.trim()}${B}
11760
11764
  </div>
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`
11765
+ ${_}
11766
+ `})}function GB($){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`
11763
11767
  <div data-island="${X}"
11764
11768
  data-strategy="only"
11765
11769
  class="stx-island stx-client-only">
@@ -11778,7 +11782,7 @@ else {
11778
11782
  }
11779
11783
  })();
11780
11784
  </script>
11781
- `})}function rJ(){return`
11785
+ `})}function aJ(){return`
11782
11786
  /* Island base styles */
11783
11787
  .stx-island {
11784
11788
  display: contents;
@@ -11819,11 +11823,11 @@ else {
11819
11823
  .stx-island.hydrated {
11820
11824
  opacity: 1;
11821
11825
  }
11822
- `}function aJ($){if(typeof window>"u")return;let Z=document.querySelector(`[data-island="${$}"]`);if(!Z||Z.classList.contains("hydrated"))return;Z.classList.add("hydrated"),Z.dispatchEvent(new CustomEvent("stx:hydrated",{bubbles:!0}))}function tJ($){if(typeof window>"u")return;document.querySelectorAll(`[data-strategy="${$}"]:not(.hydrated)`).forEach((Y)=>{Y.classList.add("hydrated"),Y.dispatchEvent(new CustomEvent("stx:hydrated",{bubbles:!0}))})}function eJ(){if(typeof window>"u")return;document.querySelectorAll(".stx-island:not(.hydrated)").forEach((Z)=>{Z.classList.add("hydrated"),Z.dispatchEvent(new CustomEvent("stx:hydrated",{bubbles:!0}))})}function $X($){if(typeof window>"u")return!1;return document.querySelector(`[data-island="${$}"]`)?.classList.contains("hydrated")??!1}function ZX($){return new Promise((Z)=>{if(typeof window>"u"){Z();return}let Y=document.querySelector(`[data-island="${$}"]`);if(!Y){Z();return}if(Y.classList.contains("hydrated")){Z();return}Y.addEventListener("stx:hydrated",()=>Z(),{once:!0})})}function YX($){return $.replace(/@static\s*([\s\S]*?)@endstatic/gi,(Z,Y)=>{return`<div class="stx-static">${Y.trim()}</div>`})}function JX($){let Z=$.map((Y)=>({id:Y.id,component:Y.component,strategy:Y.options.strategy,props:Y.props}));return`
11826
+ `}function tJ($){if(typeof window>"u")return;let Z=document.querySelector(`[data-island="${$}"]`);if(!Z||Z.classList.contains("hydrated"))return;Z.classList.add("hydrated"),Z.dispatchEvent(new CustomEvent("stx:hydrated",{bubbles:!0}))}function eJ($){if(typeof window>"u")return;document.querySelectorAll(`[data-strategy="${$}"]:not(.hydrated)`).forEach((Y)=>{Y.classList.add("hydrated"),Y.dispatchEvent(new CustomEvent("stx:hydrated",{bubbles:!0}))})}function $X(){if(typeof window>"u")return;document.querySelectorAll(".stx-island:not(.hydrated)").forEach((Z)=>{Z.classList.add("hydrated"),Z.dispatchEvent(new CustomEvent("stx:hydrated",{bubbles:!0}))})}function ZX($){if(typeof window>"u")return!1;return document.querySelector(`[data-island="${$}"]`)?.classList.contains("hydrated")??!1}function YX($){return new Promise((Z)=>{if(typeof window>"u"){Z();return}let Y=document.querySelector(`[data-island="${$}"]`);if(!Y){Z();return}if(Y.classList.contains("hydrated")){Z();return}Y.addEventListener("stx:hydrated",()=>Z(),{once:!0})})}function JX($){return $.replace(/@static\s*([\s\S]*?)@endstatic/gi,(Z,Y)=>{return`<div class="stx-static">${Y.trim()}</div>`})}function XX($){let Z=$.map((Y)=>({id:Y.id,component:Y.component,strategy:Y.options.strategy,props:Y.props}));return`
11823
11827
  <script type="application/json" id="stx-island-manifest">
11824
11828
  ${JSON.stringify(Z)}
11825
11829
  </script>
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`
11830
+ `}var KB;var GX=b(()=>{KB={processPartialHydrationDirectives:rJ,processStaticDirectives:JX,generatePartialHydrationCSS:aJ,generateIslandManifest:XX,createIslandRegistry:sJ,hydrateIsland:tJ,hydrateByStrategy:eJ,hydrateAll:$X,isHydrated:ZX,onHydrated:YX}});var LX={};e(LX,{watchMultiple:()=>UX,watchEffect:()=>jX,watch:()=>WX,unref:()=>KX,toRefs:()=>zX,throttledComputed:()=>OX,stxWatchMultiple:()=>UX,stxWatchEffect:()=>jX,stxWatch:()=>WX,stxUnref:()=>KX,stxToRefs:()=>zX,stxThrottledComputed:()=>OX,stxShallowRef:()=>qX,stxRef:()=>N5,stxIsRef:()=>I1,stxDebouncedComputed:()=>HX,stxComputed:()=>_$,shallowRef:()=>qX,ref:()=>N5,processWatchDirectives:()=>_X,processComputedDirectives:()=>BX,isRef:()=>I1,default:()=>zB,debouncedComputed:()=>HX,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 KX($){return I1($)?$.value:$}function zX($){let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=N5($[Y]);return Z}function qX($){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 WX($,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 UX($,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 jX($,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 BX($,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`
11827
11831
  <script data-watch="${`watch-${Math.random().toString(36).substring(2,9)}`}">
11828
11832
  (function() {
11829
11833
  // Watch implementation for ${Q}
@@ -11835,9 +11839,9 @@ else {
11835
11839
  }
11836
11840
  })();
11837
11841
  </script>
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(`
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(`
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>
11842
+ `})}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 HX($,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 OX($,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$,zB;var FX=b(()=>{s4=[],B$=new WeakMap;zB={ref:N5,computed:_$,watch:WX,watchMultiple:UX,watchEffect:jX,isRef:I1,unref:KX,toRefs:zX,shallowRef:qX,debouncedComputed:HX,throttledComputed:OX,processComputedDirectives:BX,processWatchDirectives:_X}});var RX={};e(RX,{v:()=>qB,processHasErrorsDirective:()=>AX,processFormValidationDirectives:()=>UB,processErrorsDirective:()=>wX,processErrorDirective:()=>VX,defineForm:()=>WB,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 WB($,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 VX($,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(`
11843
+ `)}catch{return""}})}function wX($,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(`
11844
+ `)}catch{return""}})}function AX($,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 UB($,Z,Y){let J=$;return J=VX(J,Z,Y),J=wX(J,Z,Y),J=AX(J,Z,Y),J}var qB;var NX=b(()=>{qB=new M5});var IX={};e(IX,{processXElementDirectives:()=>jB,hasXElementDirectives:()=>TX,generateXElementRuntime:()=>MX});function MX(){return`<script data-stx-scoped data-stx-x-element-runtime>
11841
11845
  (function() {
11842
11846
  'use strict';
11843
11847
 
@@ -12121,16 +12125,16 @@ else {
12121
12125
  // Expose for manual initialization
12122
12126
  window.XElement = XElement;
12123
12127
  })();
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+`
12128
+ </script>`}function TX($){return/\bx-data(?:\s|=)/.test($)}function jB($){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(!TX(J))return J;let X=Y[0]?.trim()||MX(),Q=J.lastIndexOf("</body>");if(Q!==-1)return J.slice(0,Q)+X+`
12125
12129
  `+J.slice(Q);return J+`
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=`
12130
+ `+X}var DX={};e(DX,{rewriteImagesWithSiblings:()=>HB});import U1 from"path";async function HB($,Z){let Y=Z.formats??_B;if(!Z.publicDir)return $;let J=FB($),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(VB(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 OB(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="${wB(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 OB($,Z,Y){if(!LB($))return[];let J=U1.extname($).toLowerCase();if(!BB.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 LB($){if(!$)return!1;if($.startsWith("http://")||$.startsWith("https://"))return!1;if($.startsWith("//"))return!1;if($.startsWith("data:"))return!1;return!0}function FB($){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 VB($,Z){for(let[Y,J]of Z)if($>=Y&&$<J)return!0;return!1}function wB($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;")}var BB,_B;var EX=b(()=>{BB=new Set([".jpg",".jpeg",".png",".gif"]),_B=[{ext:".avif",mime:"image/avif"},{ext:".webp",mime:"image/webp"}]});var kX=()=>{};function u6($){return $.pwa?.serviceWorker?.fileName||"sw.js"}var bX=b(()=>{kX()});var SX={};e(SX,{injectPwaTags:()=>AB,generateThemeColorMeta:()=>MB,generateSwRegistrationScript:()=>RB,generatePwaTags:()=>r4,generateManifestLink:()=>NB});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=`
12127
12131
  <!-- stx PWA Meta Tags -->
12128
12132
  <link rel="manifest" href="/manifest.json">
12129
- <meta name="theme-color" content="${u6(Y?.themeColor||"#000000")}">
12133
+ <meta name="theme-color" content="${m6(Y?.themeColor||"#000000")}">
12130
12134
  <meta name="mobile-web-app-capable" content="yes">
12131
12135
  <meta name="apple-mobile-web-app-capable" content="yes">
12132
12136
  <meta name="apple-mobile-web-app-status-bar-style" content="default">
12133
- <meta name="apple-mobile-web-app-title" content="${u6(Y?.shortName||Y?.name||"App")}">`;if(Z.icons?.generateAppleIcons!==!1)Q+=`
12137
+ <meta name="apple-mobile-web-app-title" content="${m6(Y?.shortName||Y?.name||"App")}">`;if(Z.icons?.generateAppleIcons!==!1)Q+=`
12134
12138
  <link rel="apple-touch-icon" href="${J}/apple-touch-icon.png">
12135
12139
  <link rel="apple-touch-icon" sizes="120x120" href="${J}/apple-touch-icon-120x120.png">
12136
12140
  <link rel="apple-touch-icon" sizes="152x152" href="${J}/apple-touch-icon-152x152.png">
@@ -12167,12 +12171,12 @@ if ('serviceWorker' in navigator) {
12167
12171
  });
12168
12172
  }
12169
12173
  </script>
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+`
12174
+ <!-- End stx PWA -->`,Q}function AB($,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+`
12171
12175
  `+$.slice(X)}return $+r4(Z)}let J=r4(Z);return $.replace("</head>",`${J}
12172
- </head>`)}function A_($){if(!$.pwa?.enabled)return"";return`<script>
12176
+ </head>`)}function RB($){if(!$.pwa?.enabled)return"";return`<script>
12173
12177
  if ('serviceWorker' in navigator) {
12174
12178
  window.addEventListener('load', function() {
12175
- navigator.serviceWorker.register('/${m6($)}')
12179
+ navigator.serviceWorker.register('/${u6($)}')
12176
12180
  .then(function(registration) {
12177
12181
  console.log('[PWA] Service Worker registered:', registration.scope);
12178
12182
  })
@@ -12181,46 +12185,46 @@ if ('serviceWorker' in navigator) {
12181
12185
  });
12182
12186
  });
12183
12187
  }
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(`
12188
+ </script>`}function NB(){return'<link rel="manifest" href="/manifest.json">'}function MB($){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 yX=b(()=>{bX()});import f0 from"path";import{deriveLayoutGroup as TB}from"stx-router/layout-metadata";function PX($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function IB($,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(`
12185
12189
  `,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===`
12186
12190
  `){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]===`
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+`
12191
+ `)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 CX($){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 DB($){let Z=a4($,"data-stx-runtime");if(!Z)return $;let Y=CX($);if(Y===-1||Y===Z.start)return $;let J=$.slice(Z.start,Z.end),X=$.slice(0,Z.start)+$.slice(Z.end),Q=CX(X);if(Q===-1)return J+`
12188
12192
  `+X;return X.slice(0,Q)+J+`
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>
12191
- <meta name="stx-layout" content="${yX(F)}">
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)+`
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)+`
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')
12193
+ `+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 EB($,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(`
12194
+ `),...q.htmlAttrs&&{htmlAttrs:{...K.htmlAttrs||{},...q.htmlAttrs}},...q.bodyAttrs&&{bodyAttrs:{...K.bodyAttrs||{},...q.bodyAttrs}}},L=S6(G);if(G=WJ(G,H),L)G=qJ(G,K);let V=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(V&&G.includes("<head")){let F=V[1],w=TB(F);G=G.replace("<head>",`<head>
12195
+ <meta name="stx-layout" content="${PX(F)}">
12196
+ <meta name="stx-layout-group" content="${PX(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=zJ(G),G=DB(G);if(Q)try{let{getStoreScript:K}=await Promise.resolve().then(() => (VJ(),FJ)),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)+`
12197
+ `+W+G.slice(U.end)}}catch{}if(Q)try{let{getComposableScript:K}=await Promise.resolve().then(() => (RJ(),AJ)),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)+`
12198
+ `+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 EB($,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 SB(Y,Z),bB(Z,K),z=await W5(()=>nY(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=XJ(z),z=await BJ(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')
12195
12199
  ${z.trim()}
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.
12200
+ @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(`
12201
+ `);_.content=_.content?`${_.content}
12202
+ ${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=kB(R,_),R=R.replace(/\{\{\s*slot\s*\}\}/g,()=>{return _.content||""}),R=k6(R,B),Z.__originalFilePath=Y,z=await vX(R,Z,O,G,X),z=`<!-- stx-layout: ${H} -->
12203
+ ${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 vX(z,Z,Y,G,X))}function kB($,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 bB($,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 SB($,Z){await W5(()=>tY($,Z),void 0,(Y)=>{a0.log(Y,{filePath:$,phase:"view-composer"},"warning"),console.warn(`[stx] view composer failed for ${$}: ${Y.message}`)})}async function yB($,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 PB($,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 vX($,Z,Y,J,X){let Q=$,G=J;if(await yB(Q,Z,Y),Q=await PB(Q,Z,Y),Q=await uY(Q,Z,Y),Q=await mY(Q,Z,Y),Q=await v2(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 GJ(Q,Z,Y,G,X),Q=e6(Q,Z,Y,G);let{processDeferDirectives:z}=await Promise.resolve().then(() => MJ);Q=z(Q,Z,Y);let{processTeleportDirectives:q}=await Promise.resolve().then(() => IJ);Q=q(Q,Z,Y);let{processTransitionDirectives:W,processTransitionAttributes:U}=await Promise.resolve().then(() => bJ);Q=W(Q,Z,Y),Q=U(Q);let{processErrorBoundaryDirectives:j}=await Promise.resolve().then(() => yJ);Q=j(Q,Z,Y);let{processSuspenseDirectives:B}=await Promise.resolve().then(() => PJ);Q=B(Q,Z,Y);let{processAsyncDirectives:_}=await Promise.resolve().then(() => fJ);Q=_(Q,Z,Y);let{processKeepAliveDirectives:H}=await Promise.resolve().then(() => hJ);Q=H(Q,Z,Y);let{processVirtualListDirectives:L,processVirtualGridDirectives:V,processInfiniteListDirectives:O}=await Promise.resolve().then(() => (cJ(),lJ));Q=L(Q,Z,Y),Q=V(Q,Z,Y),Q=O(Q,Z,Y);let{processPartialHydrationDirectives:F,processStaticDirectives:w}=await Promise.resolve().then(() => (GX(),QX));Q=F(Q,Z,Y),Q=w(Q);let{processComputedDirectives:A,processWatchDirectives:R}=await Promise.resolve().then(() => (FX(),LX));Q=A(Q,Z,Y),Q=R(Q,Z,Y);let{processFormValidationDirectives:N}=await Promise.resolve().then(() => (NX(),RX));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}
12204
+ `;if(Q=T(Q,Z),Q=I(Q,Z),Q=rY(Q),Q=P3(Q,Z),Q=P2(Q),Q=cY(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=l2(Q,Z),Q=c2(Q,Z),Q=await A2(Q,Z,Y,G),Q=await b8(Q,Z,Y),Q=await r2(Q,Z,Y,G),Q=i6(Q,Z,Y,G),Q=gZ(Q,Z,Y,G),Q=hZ(Q,Z,Y),Q=dZ(Q,Z,Y,G),Q=b2(Q,Z,Y,G),Q=y6(Q,Z),Q=P6(Q),Q=HJ(Q),!G.skipEventDirectives)Q=_2(Q,Z,Y);if(Q=V2(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.
12201
12205
  Both work on the same page, but they manage separate scopes.
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}
12206
+ Prefer signals (state/derived/effect) for new components.`)}Q=ZJ(Q,Z),Q=await L1(Q,Z,Y),Q=OJ(Q),Q=LJ(Q),Q=Q2(Q);let{processXElementDirectives:y}=await Promise.resolve().then(() => IX);Q=y(Q);let S=Z.__originalFilePath||Y,k=P5(Z);if(Q=await v7(Q,G,S,k),Q=d2(Q,Z),Q=await oY(Q,Z,Y,G),G.media?.image?.autoSiblings){let l=G.publicDir||"public",{rewriteImagesWithSiblings:a}=await Promise.resolve().then(() => (EX(),DX));Q=await a(Q,{publicDir:l})}if(G.seo?.enabled)Q=uZ(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}
12203
12207
  </head>`);if(/<head\b[^>]*>/i.test(l))return l.replace(/(<head\b[^>]*>)/i,`$1
12204
12208
  ${a}`);if(/<html\b[^>]*>/i.test(l))return l.replace(/(<html\b[^>]*>)/i,`$1
12205
12209
  <head>
12206
12210
  ${a}
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>
12208
- ${$2()}
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}
12211
+ </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=E2(Q,G.csp,Z);if(G.analytics?.enabled)Q=K2(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(() => (yX(),SX));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>
12212
+ ${Z2()}
12213
+ </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+`
12214
+ `+m}else Q=Q.replace("</head>",`${a}
12211
12215
  </head>`)}else if(Q.includes("<body"))Q=Q.replace(/<body([^>]*)>/,`<body$1>
12212
12216
  ${a}`);else Q=a+`
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(`
12217
+ `+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=IB(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=k2(Q,Z.cspNonce);return Q}var r1="<!--PARENT_CONTENT_PLACEHOLDER-->";var o$=b(()=>{E4();C1();Z7();Y2();G2();z2();X7();Y7();H2();v5();w2();R2();S4();S2();C2();f2();u2();z1();p5();Y1();i2();a2();dY();lY();T6();g7();sY();X5();aY();A3();N0();eY();YJ();QJ();KJ();B7();s5();N6();_J();v6();f6();A0();s3();v6();f6()});import V0 from"fs";import Q0 from"path";import{matchRoute as Y_,Router as tX}from"stx-router";import{findErrorPage as Q_,formatRoutes as G_,generateRouteManifest as K_,generateRouteTypes as z_,matchRoute as q_}from"stx-router";function $7($,Z={}){return new tX($,Z).routes}o$();import{createHash as CB}from"crypto";function vB($){try{return new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($).replace(/\}(var |let |const |function )/g,"};$1").trim()}catch{return $}}var xB=/<script\s+type="stx\/island"\s+data-stx-island="([^"]+)"([^>]*)>([\s\S]*?)<\/script>/g;function fB($){return Bun.hash($).toString(16)}function xX($,Z={}){if(!$.includes('type="stx/island"'))return{html:$,chunks:[]};let Y=new Map,J=$.replace(xB,(Q,G,K,z)=>{let q=z.trim();if(!q)return Q;if(/\bdata-stx-src=/.test(K))return Q;if(Z.minify)q=vB(q);let W=fB(q);if(!Y.has(W))Y.set(W,q);let U=Z.integrity?` data-stx-integrity="sha384-${CB("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 gB=new Set(["visible","idle"]);function fX($){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(gB.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 fR,clearMiddleware as gX,createClientCookieManager as gR,createMiddlewareContext as hX,createRouteLocation as dX,createServerCookieManager as hR,createStorageManager as dR,defineMiddleware as uR,getMiddleware as mR,getMiddlewareNames as uX,hasMiddleware as pR,loadMiddlewareFromDirectory as mX,navigateTo as lR,registerMiddleware as cR,runMiddleware as pX}from"stx-router";class lX{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 cX{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 hB($){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(`
12214
12218
  return (async function getStaticPaths() {
12215
12219
  ${X[1]}
12216
12220
  })()
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",`
12221
+ `)()}catch(Z){return console.error(`Error extracting static paths from ${$}:`,Z),null}}async function dB($){let Z=[];if(!$.isDynamic)Z.push({url:$.pattern,params:{}});else{let Y=await hB($.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 uB($){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 mB($,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",`
12218
12222
  return (async function getStaticProps() {
12219
12223
  ${Q[1]}
12220
12224
  })()
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}
12225
+ `)(Z)}catch(Q){return console.error(`Error executing getStaticProps in ${Y}:`,Q),null}}async function iX($,Z,Y={},J,X){let Q=await Bun.file($.filePath).text(),G=await uB($.filePath),K=await mB(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}
12222
12226
  </head>`);else U=`${j}
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"?>
12227
+ ${U}`}if(U=await b7(U),U=await Y$(U),J.minify!==!1)return{html:pB(U),dependencies:Array.from(q)};return{html:U,dependencies:Array.from(q)}}function pB($){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 lB($){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 cB($,Z){return`<?xml version="1.0" encoding="UTF-8"?>
12224
12228
  <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
12225
12229
  ${$.map((J)=>{let X=new URL(J.loc,Z).href,Q=` <url>
12226
12230
  <loc>${e0(X)}</loc>`;if(J.lastmod)Q+=`
@@ -12229,7 +12233,7 @@ ${$.map((J)=>{let X=new URL(J.loc,Z).href,Q=` <url>
12229
12233
  <priority>${J.priority}</priority>`;return Q+=`
12230
12234
  </url>`,Q}).join(`
12231
12235
  `)}
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+=`
12236
+ </urlset>`}function e0($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function iB($,Z){let Y=Z.map((J)=>{let X=" <item>";if(X+=`
12233
12237
  <title>${e0(J.title)}</title>`,X+=`
12234
12238
  <link>${e0(J.link)}</link>`,J.description)X+=`
12235
12239
  <description>${e0(J.description)}</description>`;if(J.pubDate)X+=`
@@ -12250,10 +12254,10 @@ ${$.map((J)=>{let X=new URL(J.loc,Z).href,Q=` <url>
12250
12254
  ${Y.join(`
12251
12255
  `)}
12252
12256
  </channel>
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",`
12257
+ </rss>`}async function nB($={}){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 lX(J.cacheDir);if(J.cache)await W.load();try{let{generateCrosswindCSS:F}=await Promise.resolve().then(() => (E4(),$2));await F('<div class="bg-black"></div>')}catch{}gX();let U=Y?.routeMiddleware?.dir||"middleware";await mX(process.cwd(),U);let j=uX();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 dB(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=aB(I),D=E?.middleware?Array.isArray(E.middleware)?E.middleware:[E.middleware]:[],y=[...B,...D];if(y.length>0){let d=dX(R,N,E||{}),c=hX(d,null),p=await pX(y,c);if(p.redirect){let W0=typeof p.redirect==="string"?p.redirect:p.redirect.path||p.redirect,w0=tB(String(W0),R),_0=eB(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",`
12254
12258
  const validate = ${S[1]};
12255
12259
  return validate(route);
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>
12260
+ `)({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 iX(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}=xX(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=fX(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>
12257
12261
  <html lang="en">
12258
12262
  <head>
12259
12263
  <meta charset="UTF-8">
@@ -12274,7 +12278,7 @@ ${Y.join(`
12274
12278
  <a href="/">Go home</a>
12275
12279
  </div>
12276
12280
  </body>
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?`
12281
+ </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=cB(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=iB(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 nX(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?`
12278
12282
  Island chunks: ${X.islandChunks.count} (${(X.islandChunks.totalBytes/1024).toFixed(1)} KB lifted out of inline HTML)`:"";return console.log(`
12279
12283
  Build complete!
12280
12284
  Total: ${X.totalPages} pages
@@ -12282,8 +12286,8 @@ Build complete!
12282
12286
  Cached: ${X.cachedCount}
12283
12287
  Failed: ${X.failedCount}
12284
12288
  Time: ${X.buildTime}ms${q}
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>
12289
+ `),X}async function nX($,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 nX(X,Q);else await V0.promises.copyFile(X,Q)}}function oB($={}){let Z=$.cacheDir||B1(process.cwd(),"ssg-cache"),Y=new cX(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 iX(G,z,{},$,q);await Y.set(X,{html:W,generatedAt:Date.now(),revalidateAfter:Date.now()+J*1000,etag:lB(W)}),console.log(`Revalidated: ${X}`)},async invalidate(X){if(typeof X==="string")await Y.invalidate(X);else await Y.invalidatePattern(X)}}}function sB($){return async()=>{return{paths:await $(),fallback:!1}}}function rB(){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(`
12290
+ `)){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 aB($){let Z=$.match(/definePageMeta\s*\(\s*(\{[\s\S]*?\})\s*\)/m);if(!Z)return null;try{return Function(`return ${Z[1]}`)()}catch{return null}}function tB($,Z){return`<!DOCTYPE html>
12287
12291
  <html>
12288
12292
  <head>
12289
12293
  <meta charset="utf-8">
@@ -12295,4 +12299,4 @@ Build complete!
12295
12299
  <p>Redirecting to <a href="${$}">${$}</a>...</p>
12296
12300
  <script>window.location.replace('${$}')</script>
12297
12301
  </body>
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};
12302
+ </html>`}function eB($,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 ZN={generateStaticSite:nB,createISRHandler:oB,defineStaticPaths:sB,createMarkdownLoader:rB};export{nB as generateStaticSite,sB as defineStaticPaths,ZN as default,rB as createMarkdownLoader,oB as createISRHandler};