@stacksjs/stx 0.2.140 → 0.2.141

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 jQ=Object.defineProperty;var _Q=($)=>$;function BQ($,Z){this[$]=_Q.bind(null,Z)}var a=($,Z)=>{for(var Y in Z)jQ($,Y,{get:Z[Y],enumerable:!0,configurable:!0,set:BQ.bind(Z,Y)})};var b=($,Z)=>()=>($&&(Z=$($=0)),Z);var j0=import.meta.require;import S5 from"path";function $9($){e6=$?.trim()||null}function y5(){return process.env[OQ]?.trim()||e6||Y5}function O1($=process.cwd(),...Z){let Y=y5();return S5.isAbsolute(Y)?S5.join(Y,...Z):S5.join($,Y,...Z)}function P5($){if(!$||S5.isAbsolute($))return $;let Z=$.replace(/\\/g,"/");if(Z!==Y5&&!Z.startsWith(`${Y5}/`))return $;let Y=Z.slice(Y5.length+1);return Y?S5.join(y5(),Y):y5()}var Y5=".stx",OQ="STX_DIR",e6=null;var C5=()=>{};var H0;var Z9=b(()=>{H0={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 Y9($,Z,Y,J){let X=$;X=X.replace(/@a11y\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(G,K,W)=>{let q={"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: ${W||q} -->`});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,W)=>{return`<span id="${`desc-${K}`}" class="sr-only">${W}</span>`}),X}var J9,X9;var z7=b(()=>{J9={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},X9={name:"screenReader",handler:($)=>{return`<span class="sr-only">${$}</span>`},hasEndTag:!0}});function LQ($,Z={}){let{duration:Y,delay:J,ease:X,direction:Q,custom:G}={...z1,...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 LQ=Object.defineProperty;var FQ=($)=>$;function VQ($,Z){this[$]=FQ.bind(null,Z)}var a=($,Z)=>{for(var Y in Z)LQ($,Y,{get:Z[Y],enumerable:!0,configurable:!0,set:VQ.bind(Z,Y)})};var b=($,Z)=>()=>($&&(Z=$($=0)),Z);var _0=import.meta.require;import P5 from"path";function J9($){Y9=$?.trim()||null}function C5(){return process.env[AQ]?.trim()||Y9||X5}function L1($=process.cwd(),...Z){let Y=C5();return P5.isAbsolute(Y)?P5.join(Y,...Z):P5.join($,Y,...Z)}function v5($){if(!$||P5.isAbsolute($))return $;let Z=$.replace(/\\/g,"/");if(Z!==X5&&!Z.startsWith(`${X5}/`))return $;let Y=Z.slice(X5.length+1);return Y?P5.join(C5(),Y):C5()}var X5=".stx",AQ="STX_DIR",Y9=null;var x5=()=>{};var O0;var X9=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 Q9($,Z,Y,J){let X=$;X=X.replace(/@a11y\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(G,K,W)=>{let z={"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: ${W||z} -->`});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,W)=>{return`<span id="${`desc-${K}`}" class="sr-only">${W}</span>`}),X}var G9,K9;var j7=b(()=>{G9={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},K9={name:"screenReader",handler:($)=>{return`<span class="sr-only">${$}</span>`},hasEndTag:!0}});function RQ($,Z={}){let{duration:Y,delay:J,ease:X,direction:Q,custom:G}={...z1,...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 jQ=Object.defineProperty;var _Q=($)=>$;function BQ($,Z){this[$]=_Q.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 FQ(){return`
12
+ @keyframes rotateOut { from { transform: rotate(0); opacity: 1; } to { transform: rotate(90deg); opacity: 0; } }`;default:return""}}function NQ(){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 VQ($){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 wQ($=0.1,Z="0px"){return`
40
+ `}function MQ($){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 TQ($=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 AQ(){return`
83
+ `}function IQ(){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 RQ($,Z,Y={}){let{staggerDelay:J=50,sequence:X=!1}=Y;return`
198
+ `}function DQ($,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 z9($,Z,Y,J){let X=$;if(J.animation?.enabled===!1)return X;let Q=Y.includes("test")&&Y.includes("animation");if(!VQ(X)&&!Q)return X;if(!X.includes('<style id="stx-animation-base">')){let K=AQ();X=X.replace("</head>",`${K}
236
- </head>`)}if(X.includes("stx-observe")){if(!X.includes("Intersection Observer for scroll animations")){let W=wQ(),z=X.lastIndexOf("</body>");if(z!==-1)X=X.slice(0,z)+W+`
237
- `+X.slice(z)}}return X}var z1,Q9,G9,K9,W9;var q7=b(()=>{z1={duration:300,delay:0,ease:"ease",direction:"both"};Q9={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)||z1.duration:z1.duration,G=Z.length>2?Z[2]||z1.ease:z1.ease,K=Z.length>3?Number.parseInt(Z[3],10)||z1.delay:z1.delay,W=Z.length>4?Z[4]||z1.direction:z1.direction,z=`stx-transition-${Math.random().toString(36).substr(2,9)}`,q=LQ(X,{duration:Q,delay:K,ease:G,direction:W}),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="${z}" class="${U} ${j} ${W==="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"},G9={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,W=Z.length>4?Number.parseInt(Z[4],10)||0:0,z=`stx-scroll-${Math.random().toString(36).substr(2,9)}`,q=`--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${W}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="${z}" class="${U}" style="${q}" data-threshold="${K}">${$}</div>`},hasEndTag:!0,description:"Applies animations that trigger when scrolled into view"},K9={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((z)=>z.startsWith("#")||z.startsWith(".")?z:`#${z}`),G=Y.staggerDelay||50,K=Y.sequence||!0,W=RQ(X,Q,{staggerDelay:G,sequence:K});return`${$}
239
- ${W}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},W9={name:"motion",handler:($,Z,Y,J)=>{let X=Z.length>0?Z[0].toLowerCase()==="true":!0,Q=FQ();return`<div data-animate="${X?"auto":"true"}">${$}</div>${Q}`},hasEndTag:!0,description:"Controls motion and animation preferences"}});import{getRouterScript as q9}from"stx-router";var U9=b(()=>{U7()});async function NQ($,Z,Y,J){let X=Z[0]?.replace(/['"]/g,"")||"main",Q=q9();if(X!=="main")Q=Q.replace("container:'main'",`container:'${X}'`);return`<script data-stx-router>${Q}</script>`}var j9;var U7=b(()=>{U9();j9={name:"stxRouter",handler:NQ,hasEndTag:!1,description:"Inject the STX SPA router script for client-side navigation"}});function _9($){let Z=$.heatmap;if(!Z?.enabled)return"";let Y={...MQ,...Z};return`
235
+ `}function j9($,Z,Y,J){let X=$;if(J.animation?.enabled===!1)return X;let Q=Y.includes("test")&&Y.includes("animation");if(!MQ(X)&&!Q)return X;if(!X.includes('<style id="stx-animation-base">')){let K=IQ();X=X.replace("</head>",`${K}
236
+ </head>`)}if(X.includes("stx-observe")){if(!X.includes("Intersection Observer for scroll animations")){let W=TQ(),q=X.lastIndexOf("</body>");if(q!==-1)X=X.slice(0,q)+W+`
237
+ `+X.slice(q)}}return X}var z1,W9,q9,z9,U9;var _7=b(()=>{z1={duration:300,delay:0,ease:"ease",direction:"both"};W9={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)||z1.duration:z1.duration,G=Z.length>2?Z[2]||z1.ease:z1.ease,K=Z.length>3?Number.parseInt(Z[3],10)||z1.delay:z1.delay,W=Z.length>4?Z[4]||z1.direction:z1.direction,q=`stx-transition-${Math.random().toString(36).substr(2,9)}`,z=RQ(X,{duration:Q,delay:K,ease:G,direction:W}),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} ${W==="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"},q9={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,W=Z.length>4?Number.parseInt(Z[4],10)||0:0,q=`stx-scroll-${Math.random().toString(36).substr(2,9)}`,z=`--stx-transition-duration: ${Q}ms; --stx-transition-ease: ${G}; --stx-transition-delay: ${W}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="${z}" data-threshold="${K}">${$}</div>`},hasEndTag:!0,description:"Applies animations that trigger when scrolled into view"},z9={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,W=DQ(X,Q,{staggerDelay:G,sequence:K});return`${$}
239
+ ${W}`},hasEndTag:!1,description:"Coordinates multiple animations together as a group"},U9={name:"motion",handler:($,Z,Y,J)=>{let X=Z.length>0?Z[0].toLowerCase()==="true":!0,Q=NQ();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 B9=b(()=>{B7()});async function EQ($,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 H9;var B7=b(()=>{B9();H9={name:"stxRouter",handler:EQ,hasEndTag:!1,description:"Inject the STX SPA router script for client-side navigation"}});function O9($){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,10 +619,10 @@ else {
619
619
  };
620
620
  })();
621
621
  </script>
622
- `}function B9($,Z){let Y=_9(Z);if(!Y)return $;let J=$.lastIndexOf("</body>");if(J!==-1)return $.slice(0,J)+Y+$.slice(J);return $+Y}function TQ($){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 MQ,H9;var j7=b(()=>{MQ={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};H9={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=TQ(Z.join(" "));X.heatmap={...X.heatmap,...Q,enabled:!0}}return _9(X)}}});function L1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function O9($){let Z=$.trim().toLowerCase();return!Z.startsWith("javascript:")&&!Z.startsWith("vbscript:")&&!Z.startsWith("data:text/html")}function L9($){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 W=K.indexOf(":");if(W===-1)continue;let z=K.slice(0,W).trim(),q=K.slice(W+1).trim();if(typeof q==="string"){if(q.startsWith('"')&&q.endsWith('"')||q.startsWith("'")&&q.endsWith("'"))q=q.slice(1,-1);else if(q.startsWith("[")&&q.endsWith("]"))try{q=JSON.parse(q)}catch{}else if(q==="true")q=!0;else if(q==="false")q=!1;else if(/^-?\d+(?:\.\d+)?$/.test(q))q=Number(q)}Q[z]=q}return{data:Q,content:X.trim()}}function v5($,Z={}){let{gfm:Y=!0,breaks:J=!1}=Z,X=$,Q=[];if(X=X.replace(/```(\w*)\n([\s\S]*?)```/g,(q,U,j)=>{let _=Q.length,B=U?` class="language-${L1(U)}"`:"";return Q.push(`<pre><code${B}>${L1(j.trim())}</code></pre>`),`\x00CODEBLOCK${_}\x00`}),X=X.replace(/`([^`]*)`/g,(q,U)=>`<code>${L1(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,(q,U,j)=>{return`<img src="${O9(j)?L1(j):""}" alt="${L1(U)}" />`}),X=X.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(q,U,j)=>{return`<a href="${O9(j)?L1(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,(q,U,j)=>{let B=`<tr>${U.split("|").map((L)=>L.trim()).filter(Boolean).map((L)=>`<th>${L1(L)}</th>`).join("")}</tr>`,H=j.trim().split(`
625
- `).map((L)=>{return`<tr>${L.split("|").map((O)=>O.trim()).filter(Boolean).map((O)=>`<td>${L1(O)}</td>`).join("")}</tr>`}).join(`
622
+ `}function L9($,Z){let Y=O9(Z);if(!Y)return $;let J=$.lastIndexOf("</body>");if(J!==-1)return $.slice(0,J)+Y+$.slice(J);return $+Y}function bQ($){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,F9;var H7=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};F9={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=bQ(Z.join(" "));X.heatmap={...X.heatmap,...Q,enabled:!0}}return O9(X)}}});function F1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function V9($){let Z=$.trim().toLowerCase();return!Z.startsWith("javascript:")&&!Z.startsWith("vbscript:")&&!Z.startsWith("data:text/html")}function w9($){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 W=K.indexOf(":");if(W===-1)continue;let q=K.slice(0,W).trim(),z=K.slice(W+1).trim();if(typeof z==="string"){if(z.startsWith('"')&&z.endsWith('"')||z.startsWith("'")&&z.endsWith("'"))z=z.slice(1,-1);else if(z.startsWith("[")&&z.endsWith("]"))try{z=JSON.parse(z)}catch{}else if(z==="true")z=!0;else if(z==="false")z=!1;else if(/^-?\d+(?:\.\d+)?$/.test(z))z=Number(z)}Q[q]=z}return{data:Q,content:X.trim()}}function f5($,Z={}){let{gfm:Y=!0,breaks:J=!1}=Z,X=$,Q=[];if(X=X.replace(/```(\w*)\n([\s\S]*?)```/g,(z,U,j)=>{let _=Q.length,B=U?` class="language-${F1(U)}"`:"";return Q.push(`<pre><code${B}>${F1(j.trim())}</code></pre>`),`\x00CODEBLOCK${_}\x00`}),X=X.replace(/`([^`]*)`/g,(z,U)=>`<code>${F1(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,(z,U,j)=>{return`<img src="${V9(j)?F1(j):""}" alt="${F1(U)}" />`}),X=X.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(z,U,j)=>{return`<a href="${V9(j)?F1(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,(z,U,j)=>{let B=`<tr>${U.split("|").map((L)=>L.trim()).filter(Boolean).map((L)=>`<th>${F1(L)}</th>`).join("")}</tr>`,H=j.trim().split(`
625
+ `).map((L)=>{return`<tr>${L.split("|").map((O)=>O.trim()).filter(Boolean).map((O)=>`<td>${F1(O)}</td>`).join("")}</tr>`}).join(`
626
626
  `);return`<table>
627
627
  <thead>
628
628
  ${B}
@@ -631,16 +631,16 @@ ${B}
631
631
  ${H}
632
632
  </tbody>
633
633
  </table>`});if(Y)X=X.replace(/<li>\s*\[\s*\]\s*/g,'<li><input type="checkbox" disabled /> '),X=X.replace(/<li>\s*\[x\]\s*/gi,'<li><input type="checkbox" checked disabled /> ');let G=X.split(`
634
- `),K=[],W=!1,z=[];for(let q of G){let U=q.trim();if(/^<(?:h[1-6]|ul|ol|li|blockquote|pre|table|thead|tbody|tr|th|td|hr|div|p)/.test(U)||/^\0CODEBLOCK\d+\0$/.test(U)||U===""){if(W&&z.length>0)K.push(`<p>${z.join(J?`<br />
634
+ `),K=[],W=!1,q=[];for(let z of G){let U=z.trim();if(/^<(?:h[1-6]|ul|ol|li|blockquote|pre|table|thead|tbody|tr|th|td|hr|div|p)/.test(U)||/^\0CODEBLOCK\d+\0$/.test(U)||U===""){if(W&&q.length>0)K.push(`<p>${q.join(J?`<br />
635
635
  `:`
636
- `)}</p>`),z=[],W=!1;K.push(q)}else W=!0,z.push(U)}if(W&&z.length>0)K.push(`<p>${z.join(J?`<br />
636
+ `)}</p>`),q=[],W=!1;K.push(z)}else W=!0,q.push(U)}if(W&&q.length>0)K.push(`<p>${q.join(J?`<br />
637
637
  `:`
638
638
  `)}</p>`);if(X=K.join(`
639
639
  `),J)X=X.replace(/\n/g,`<br />
640
- `);for(let q=0;q<Q.length;q++)X=X.replace(`\x00CODEBLOCK${q}\x00`,Q[q]);return X=X.replace(/<p>\s*<\/p>/g,""),X.trim()}function s0($){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__
640
+ `);for(let z=0;z<Q.length;z++)X=X.replace(`\x00CODEBLOCK${z}\x00`,Q[z]);return X=X.replace(/<p>\s*<\/p>/g,""),X.trim()}function r0($){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 IQ from"process";function l0($="STX_PUBLIC_"){let Z={},Y={};for(let[J,X]of Object.entries(IQ.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 S1=()=>{};var x5={};a(x5,{queueClientBundleBuild:()=>A9,hasUserImports:()=>EQ,bundleClientScript:()=>bQ});import L0 from"path";import v0 from"fs";function EQ($){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(!F9.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(X==="@stacksjs/browser")continue;if(!F9.some((G)=>G.test(X)))return console.log("[stx:bundler] detected side-effect import:",X),!0}return!1}function kQ($,Z,Y,J){let X=(Q,G)=>{let K=Q===Y?Z:L0.dirname(Q),W=L0.resolve(K,G),z=[W,`${W}.ts`,`${W}.tsx`,`${W}.js`,`${W}.mjs`,`${W}.jsx`,L0.join(W,"index.ts"),L0.join(W,"index.tsx"),L0.join(W,"index.js"),L0.join(W,"index.mjs")];for(let q of z)try{if(v0.existsSync(q)&&v0.statSync(q,{throwIfNoEntry:!1})?.isFile())return q}catch{}return W};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(v0.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=L0.resolve($,G.path.slice(2)),W=[K,`${K}.ts`,`${K}.tsx`,`${K}.js`,`${K}.mjs`,`${K}.jsx`,L0.join(K,"index.ts"),L0.join(K,"index.tsx"),L0.join(K,"index.js"),L0.join(K,"index.mjs")];for(let z of W)if(v0.existsSync(z)&&v0.statSync(z,{throwIfNoEntry:!1})?.isFile())return console.log(`[stx:bundler] resolved ${G.path[0]}/ import:`,G.path,"\u2192",z),J.add(z),{path:z};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=L0.extname(G.path).toLowerCase(),W=K===".json"?"json":K===".tsx"?"tsx":K===".jsx"?"jsx":K===".ts"||K===".mts"||K===".cts"?"ts":"js";if(G.path!==Y)J.add(G.path);return{contents:v0.readFileSync(G.path,"utf8"),loader:W}})}}}function A9($){let Z=globalThis,J=(Z[V9]??Promise.resolve()).then($,$);return Z[V9]=J.then(()=>{return},()=>{return}),J}async function bQ($,Z,Y={}){let J=Y.projectRoot||process.cwd(),X=Y.minify??!1,Q=Y.cacheDir||O1(J,"bundle-cache"),G=new Bun.CryptoHasher("md5");G.update(`${DQ}\x00${$}\x00${Z}`);let K=G.digest("hex").slice(0,12),W=L0.join(Q,`${K}.js`),z=L0.join(Q,`${K}.deps.json`),q=Bun.file(W);if(await q.exists()){let _=Bun.file(z),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(v0.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 q.text();console.log("[stx:bundler] cache invalidated by dep change:",K)}let U=_7.get(K);if(U)return await U;let j=A9(()=>SQ($,Z,{projectRoot:J,minify:X,cacheDir:Q,hash:K,cachePath:W,depsPath:z}));_7.set(K,j);try{return await j}finally{_7.delete(K)}}async function SQ($,Z,Y){let{projectRoot:J,minify:X,cacheDir:Q,hash:G,cachePath:K,depsPath:W}=Y,z=O1(J,"bundle-tmp"),q=L0.join(z,`${G}.ts`),U=L0.join(z,"out",G);v0.mkdirSync(z,{recursive:!0}),v0.mkdirSync(U,{recursive:!0});let j=L0.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(q,$+V),console.log("[stx:bundler] bundling:",G,"from:",L0.basename(Z));let O=new Set;try{let F=await Bun.build({entrypoints:[q],outdir:U,target:"browser",format:"esm",minify:X,plugins:[kQ(J,j,q,O)],define:{"process.env.NODE_ENV":X?'"production"':'"development"',...l0()},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
+ `}),$}function SQ(){let $=globalThis;return $[A9]??=new Map,$[A9]}function t($,Z){let Y=SQ(),J=`${import.meta.url}\x00${$}`,X=Y.get(J);if(X)return X;let Q=Z();return Y.set(J,Q),Q.catch(()=>{if(Y.get(J)===Q)Y.delete(J)}),Q}var A9;var g5=b(()=>{A9=Symbol.for("stx.lazy-module-promises")});import yQ from"process";function c0($="STX_PUBLIC_"){let Z={},Y={};for(let[J,X]of Object.entries(yQ.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 y1=()=>{};var h5={};a(h5,{shouldLogBundlerDiagnostics:()=>T9,queueClientBundleBuild:()=>I9,hasUserImports:()=>CQ,bundleClientScript:()=>xQ});import F0 from"path";import x0 from"fs";function T9($=process.env){return $.STX_DEBUG==="true"||$.STX_DEBUG==="1"}function P1(...$){if(T9())console.log("[stx:bundler]",...$)}function CQ($){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(!R9.some((G)=>G.test(X)))return P1("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(X==="@stacksjs/browser")continue;if(!R9.some((G)=>G.test(X)))return P1("detected side-effect import:",X),!0}return!1}function vQ($,Z,Y,J){let X=(Q,G)=>{let K=Q===Y?Z:F0.dirname(Q),W=F0.resolve(K,G),q=[W,`${W}.ts`,`${W}.tsx`,`${W}.js`,`${W}.mjs`,`${W}.jsx`,F0.join(W,"index.ts"),F0.join(W,"index.tsx"),F0.join(W,"index.js"),F0.join(W,"index.mjs")];for(let z of q)try{if(x0.existsSync(z)&&x0.statSync(z,{throwIfNoEntry:!1})?.isFile())return z}catch{}return W};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(x0.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)),W=[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 W)if(x0.existsSync(q)&&x0.statSync(q,{throwIfNoEntry:!1})?.isFile())return P1(`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(),W=K===".json"?"json":K===".tsx"?"tsx":K===".jsx"?"jsx":K===".ts"||K===".mts"||K===".cts"?"ts":"js";if(G.path!==Y)J.add(G.path);return{contents:x0.readFileSync(G.path,"utf8"),loader:W}})}}}function I9($){let Z=globalThis,J=(Z[N9]??Promise.resolve()).then($,$);return Z[N9]=J.then(()=>{return},()=>{return}),J}async function xQ($,Z,Y={}){let J=Y.projectRoot||process.cwd(),X=Y.minify??!1,Q=Y.cacheDir||L1(J,"bundle-cache"),G=new Bun.CryptoHasher("md5");G.update(`${PQ}\x00${$}\x00${Z}`);let K=G.digest("hex").slice(0,12),W=F0.join(Q,`${K}.js`),q=F0.join(Q,`${K}.deps.json`),z=Bun.file(W);if(await z.exists()){let _=Bun.file(q),B=!0;if(await _.exists())try{let H=JSON.parse(await _.text());if(H.metadataVersion!==M9||!Array.isArray(H.files))B=!1;for(let L of Array.isArray(H.files)?H.files:[])try{if(x0.statSync(L.path).mtimeMs!==L.mtimeMs){B=!1;break}}catch{B=!1;break}}catch{B=!1}if(B)return P1("cache hit:",K),await z.text();P1("cache invalidated by dep change:",K)}let U=O7.get(K);if(U)return await U;let j=I9(()=>fQ($,Z,{projectRoot:J,minify:X,cacheDir:Q,hash:K,cachePath:W,depsPath:q}));O7.set(K,j);try{return await j}finally{O7.delete(K)}}async function fQ($,Z,Y){let{projectRoot:J,minify:X,cacheDir:Q,hash:G,cachePath:K,depsPath:W}=Y,q=L1(J,"bundle-tmp"),z=F0.join(q,`${G}.ts`),U=F0.join(q,"out",G);x0.mkdirSync(q,{recursive:!0}),x0.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(z,$+V),P1("bundling:",G,"from:",F0.basename(Z));let O=new Set;try{let F=await Bun.build({entrypoints:[z],outdir:U,target:"browser",format:"esm",minify:X,plugins:[vQ(J,j,z,O)],define:{"process.env.NODE_ENV":X?'"production"':'"development"',...c0()},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 ${L0.basename(Z)} (${G}); serving the unbundled source and not caching this result`),$;v0.mkdirSync(Q,{recursive:!0}),await Bun.write(K,w);let E=Array.from(O).map((D)=>{try{return{path:D,mtimeMs:v0.statSync(D).mtimeMs}}catch{return null}}).filter((D)=>D!==null);return await Bun.write(W,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(),P1("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`),$;x0.mkdirSync(Q,{recursive:!0}),await Bun.write(K,w);let E=Array.from(O).map((D)=>{try{return{path:D,mtimeMs:x0.statSync(D).mtimeMs}}catch{return null}}).filter((D)=>D!==null);return await Bun.write(W,JSON.stringify({metadataVersion:M9,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{v0.rmSync(q,{force:!0}),v0.rmSync(U,{recursive:!0,force:!0})}catch{}}}var DQ=5,w9=1,F9,_7,V9;var f5=b(()=>{S1();C5();F9=[/^stx$/,/^@stacksjs\/stx$/,/^@stores$/,/^stx\/stores$/,/^@composables$/];_7=new Map,V9=Symbol.for("stx.client-bundle-build-queue")});var I9={};a(I9,{renderVendorStyleTags:()=>N$,processClientScript:()=>d5,injectBrowserCoreAutoImports:()=>J5,generateServerDataBridge:()=>M$,generateBrowserAutoImportDestructuring:()=>uQ,generateAutoImportDestructuring:()=>B7,extractBridgeData:()=>h5,extractAndStripCssImports:()=>R$});import y1 from"path";import g5 from"fs";function PQ($){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 CQ($,Z){let Y=Z;while(!0){let J=y1.join(Y,"node_modules",$,"package.json");if(g5.existsSync(J))return y1.dirname(J);let X=y1.dirname(Y);if(X===Y)return null;Y=X}}function vQ($,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 xQ($,Z){let Y=PQ($);if(!Y||!Y.subpath)return null;let J=CQ(Y.pkg,Z);if(!J)return null;let X;try{X=JSON.parse(g5.readFileSync(y1.join(J,"package.json"),"utf8"))}catch{return null}let Q=`.${Y.subpath}`,G=vQ(X.exports,Q);if(!G)return null;let K=y1.resolve(J,G);return g5.existsSync(K)?K:null}function R$($,Z){let Y=Z.filePath?y1.dirname(Z.filePath):Z.projectRoot||process.cwd(),J=Z.projectRoot||process.cwd(),X=new Set,Q=[];return{code:$.replace(yQ,(K,W)=>{let z;try{if(W.startsWith("./")||W.startsWith("../")||W.startsWith("/")){if(z=W.startsWith("/")?W:y1.resolve(Y,W),!g5.existsSync(z))throw Error(`file not found: ${z}`)}else{let q=null;try{q=Bun.resolveSync(W,J)}catch{q=xQ(W,J)}if(!q)throw Error(`could not resolve ${W} (Bun.resolveSync + exports fallback both failed)`);z=q}}catch(q){return console.warn(`[stx:vendor-css] could not resolve ${JSON.stringify(W)} (from ${Z.filePath||"<unknown>"}): ${q?.message||q}`),""}if(X.has(z))return"";X.add(z);try{let q=g5.readFileSync(z,"utf8");Q.push({source:W,resolvedPath:z,contents:q})}catch(q){console.warn(`[stx:vendor-css] could not read ${z}: ${q?.message||q}`)}return""}),styles:Q}}function fQ($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function N$($){if($.length===0)return"";return`${$.map((Z)=>{return`<style data-stx-vendor="${fQ(Z.source)}" data-stx-layer="vendor">
654
+ `)}`:"";return console.warn(`[stx:bundler] error: ${w}${R}`),$}finally{try{x0.rmSync(z,{force:!0}),x0.rmSync(U,{recursive:!0,force:!0})}catch{}}}var PQ=5,M9=1,R9,O7,N9;var d5=b(()=>{y1();x5();R9=[/^stx$/,/^@stacksjs\/stx$/,/^@stores$/,/^stx\/stores$/,/^@composables$/];O7=new Map,N9=Symbol.for("stx.client-bundle-build-queue")});var S9={};a(S9,{renderVendorStyleTags:()=>I$,processClientScript:()=>p5,injectBrowserCoreAutoImports:()=>Q5,generateServerDataBridge:()=>D$,generateBrowserAutoImportDestructuring:()=>nQ,generateAutoImportDestructuring:()=>L7,extractBridgeData:()=>m5,extractAndStripCssImports:()=>T$});import C1 from"path";import u5 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 dQ($,Z){let Y=Z;while(!0){let J=C1.join(Y,"node_modules",$,"package.json");if(u5.existsSync(J))return C1.dirname(J);let X=C1.dirname(Y);if(X===Y)return null;Y=X}}function uQ($,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 mQ($,Z){let Y=hQ($);if(!Y||!Y.subpath)return null;let J=dQ(Y.pkg,Z);if(!J)return null;let X;try{X=JSON.parse(u5.readFileSync(C1.join(J,"package.json"),"utf8"))}catch{return null}let Q=`.${Y.subpath}`,G=uQ(X.exports,Q);if(!G)return null;let K=C1.resolve(J,G);return u5.existsSync(K)?K:null}function T$($,Z){let Y=Z.filePath?C1.dirname(Z.filePath):Z.projectRoot||process.cwd(),J=Z.projectRoot||process.cwd(),X=new Set,Q=[];return{code:$.replace(gQ,(K,W)=>{let q;try{if(W.startsWith("./")||W.startsWith("../")||W.startsWith("/")){if(q=W.startsWith("/")?W:C1.resolve(Y,W),!u5.existsSync(q))throw Error(`file not found: ${q}`)}else{let z=null;try{z=Bun.resolveSync(W,J)}catch{z=mQ(W,J)}if(!z)throw Error(`could not resolve ${W} (Bun.resolveSync + exports fallback both failed)`);q=z}}catch(z){return console.warn(`[stx:vendor-css] could not resolve ${JSON.stringify(W)} (from ${Z.filePath||"<unknown>"}): ${z?.message||z}`),""}if(X.has(q))return"";X.add(q);try{let z=u5.readFileSync(q,"utf8");Q.push({source:W,resolvedPath:q,contents:z})}catch(z){console.warn(`[stx:vendor-css] could not read ${q}: ${z?.message||z}`)}return""}),styles:Q}}function pQ($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function I$($){if($.length===0)return"";return`${$.map((Z)=>{return`<style data-stx-vendor="${pQ(Z.source)}" data-stx-layer="vendor">
655
655
  @layer vendor {
656
656
  ${Z.contents}
657
657
  }
658
658
  </style>`}).join(`
659
659
  `)}
660
- `}function J5($){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=M9.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 dQ($){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(!hQ.has(J[1]))Z.add(J[1]);return Array.from(Z)}function T9($){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 W=G[1],z=G[2];if(G[0].includes("import type"))continue;W.split(",").map((U)=>U.trim().split(/\s+as\s+/)[0]).filter((U)=>U.length>0).forEach((U)=>{if(X.add(U),z==="stx"||z==="@stacksjs/stx")Z.add(U);else Y.add(U)}),J=J.replace(G[0],"// [auto-import processed]")}for(let W of gQ){if(X.has(W))continue;if(new RegExp(`\\b${W}\\s*\\(`,"g").test(J))Z.add(W)}for(let W of M9){if(X.has(W))continue;if(new RegExp(`\\b${W}\\b`,"g").test(J))Y.add(W)}let K=dQ(J);for(let W of K)if(!X.has(W))Y.add(W);return{code:J,stxImports:Array.from(Z),browserImports:Array.from(Y)}}function B7($,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 Q5($){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=k9.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 iQ($){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(!cQ.has(J[1]))Z.add(J[1]);return Array.from(Z)}function b9($){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 W=G[1],q=G[2];if(G[0].includes("import type"))continue;W.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 W of lQ){if(X.has(W))continue;if(new RegExp(`\\b${W}\\s*\\(`,"g").test(J))Z.add(W)}for(let W of k9){if(X.has(W))continue;if(new RegExp(`\\b${W}\\b`,"g").test(J))Y.add(W)}let K=iQ(J);for(let W of K)if(!X.has(W))Y.add(W);return{code:J,stxImports:Array.from(Z),browserImports:Array.from(Y)}}function L7($,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 uQ($,Z=[]){let{browserImports:Y}=T9($),J=new Set(Z);return B7([],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
+ ${oQ($,Z)}`;return""}function nQ($,Z=[]){let{browserImports:Y}=b9($),J=new Set(Z);return L7([],Y.filter((X)=>!J.has(X)))}function oQ($,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,15 +670,15 @@ ${mQ($,Z)}`;return""}function uQ($,Z=[]){let{browserImports:Y}=T9($),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 h5($){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 R9($,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 pQ($,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(R9(Y[1],!0).has(Z))return!0;for(let Y of $.matchAll(/(?:const|let|var)\s*\[([^\]]*)\]/g))if(R9(Y[1],!1).has(Z))return!0;return!1}function M$($,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(pQ($,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 m5($){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 D9($,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 sQ($,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(D9(Y[1],!0).has(Z))return!0;for(let Y of $.matchAll(/(?:const|let|var)\s*\[([^\]]*)\]/g))if(D9(Y[1],!1).has(Z))return!0;return!1}function D$($,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(sQ($,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 cQ($){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=lQ[$.mouse];Z.push(`if ($event.button !== ${Y}) return`)}if($.prevent)Z.push("$event.preventDefault()");if($.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function iQ($,Z){let{elementId:Y,event:J,handler:X,modifiers:Q}=$,G=cQ(Q),K=[];if(Q.once)K.push("once: true");if(Q.capture)K.push("capture: true");if(Q.passive)K.push("passive: true");let W=K.length>0?`, { ${K.join(", ")} }`:"",z="";if(G)z+=`${G}; `;let q=X.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),U=`var $emit = function(name, detail) {
676
+ `}function aQ($){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=rQ[$.mouse];Z.push(`if ($event.button !== ${Y}) return`)}if($.prevent)Z.push("$event.preventDefault()");if($.stop)Z.push("$event.stopPropagation()");return Z.join("; ")}function tQ($,Z){let{elementId:Y,event:J,handler:X,modifiers:Q}=$,G=aQ(Q),K=[];if(Q.once)K.push("once: true");if(Q.capture)K.push("capture: true");if(Q.passive)K.push("passive: true");let W=K.length>0?`, { ${K.join(", ")} }`:"",q="";if(G)q+=`${G}; `;let z=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
678
  };`;function j(_){if(/\$emit\s*\(/.test(_))return`${U}
679
679
  ${_}`;return`var scope = $el.closest('[data-stx-scope]');
680
680
  if (scope && scope.__stx_execute) {
681
- scope.__stx_execute('${q}', $event, $el);
681
+ scope.__stx_execute('${z}', $event, $el);
682
682
  }
683
683
  else {
684
684
  ${_}
@@ -705,22 +705,22 @@ else {
705
705
  }${W})
706
706
  })()`;if(/\$emit\s*\(/.test(X))return` var $el = document.getElementById('${Y}')
707
707
  if ($el) $el.addEventListener('${J}', function($event) {
708
- ${z}${U}
708
+ ${q}${U}
709
709
  ${X}
710
710
  }${W})`;return` var $el = document.getElementById('${Y}')
711
711
  if ($el) $el.addEventListener('${J}', function($event) {
712
- ${z}var scope = $el.closest('[data-stx-scope]');
712
+ ${q}var scope = $el.closest('[data-stx-scope]');
713
713
  if (scope && scope.__stx_execute) {
714
- scope.__stx_execute('${q}', $event, $el);
714
+ scope.__stx_execute('${z}', $event, $el);
715
715
  }
716
716
  else {
717
717
  ${X}
718
718
  }
719
- }${W})`}function nQ($){if($.length===0)return"";return`
719
+ }${W})`}function eQ($){if($.length===0)return"";return`
720
720
  // STX: auto-generated event bindings
721
- ${$.map((Y,J)=>iQ(Y,J)).join(`
722
- `)}`}function N9($){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 W=K;if(G++,W==="`"){let z=0;while(G<Q){if(J[G]==="\\"){G+=2;continue}if(J[G]==="`"&&z===0){G++;break}if(J[G]==="$"&&J[G+1]==="{"){z++,G+=2;continue}if(J[G]==="}"&&z>0){z--,G++;continue}G++}}else while(G<Q){if(J[G]==="\\"){G+=2;continue}if(J[G]===W){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 W=J.slice(G),z=W.match(/^(?:const|let|var)\s+([a-zA-Z_$]\w*)\s*(?::[^=]*)?=/);if(z){let j=z[1];if(!j.startsWith("_")&&!Y.has(j))Z.push(j),Y.add(j);G+=z[0].length;continue}let q=W.match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(q){q[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+=q[0].length;continue}let U=W.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(!oQ.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 W=/@[a-z]+(?:\.[a-z]+)*\s*=\s*"([^"]*)"/gi;while((Q=W.exec($))!==null)J(Q[1]);let z=/@[a-z]+(?:\.[a-z]+)*\s*=\s*'([^']*)'/gi;while((Q=z.exec($))!==null)J(Q[1]);let q=/@model\s*=\s*["']([^"']*)["']/gi;while((Q=q.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 d5($,Z={}){let Y=$,J="",X=!1,Q=[],G=R$(Y,{filePath:Z.filePath,projectRoot:Z.projectRoot});Y=G.code;let K=N$(G.styles),W=J5(Y);Y=W.code,Q=W.imports;let{hasUserImports:z,bundleClientScript:q}=await Promise.resolve().then(() => (f5(),x5));if(z(Y))console.log("[stx:bundler] user imports detected, bundling..."),Y=await q(Y,Z.filePath||"",{projectRoot:Z.projectRoot,minify:Z.production}),X=!0;if(Z.autoImports!==!1){let O=T9(Y);Y=O.code,J=B7(O.stxImports,O.browserImports.filter((F)=>!Q.includes(F)))}if(J=`${M$(Y,Z.serverData)}${J}`,Y=s0(Y),!X&&P1(Z.attrs||""))Y=C1(Y);let U=nQ(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)=>tQ(Y,J)).join(`
722
+ `)}`}function E9($){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 W=K;if(G++,W==="`"){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]===W){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 W=J.slice(G),q=W.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 z=W.match(/^(?:const|let|var)\s+\{([^}]+)\}\s*=/);if(z){z[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+=z[0].length;continue}let U=W.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 ZG($){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(!$G.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 W=/@[a-z]+(?:\.[a-z]+)*\s*=\s*"([^"]*)"/gi;while((Q=W.exec($))!==null)J(Q[1]);let q=/@[a-z]+(?:\.[a-z]+)*\s*=\s*'([^']*)'/gi;while((Q=q.exec($))!==null)J(Q[1]);let z=/@model\s*=\s*["']([^"']*)["']/gi;while((Q=z.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 p5($,Z={}){let Y=$,J="",X=!1,Q=[],G=T$(Y,{filePath:Z.filePath,projectRoot:Z.projectRoot});Y=G.code;let K=I$(G.styles),W=Q5(Y);Y=W.code,Q=W.imports;let{hasUserImports:q,bundleClientScript:z}=await t("stx/client-script-bundler",()=>Promise.resolve().then(() => (d5(),h5)));if(q(Y))Y=await z(Y,Z.filePath||"",{projectRoot:Z.projectRoot,minify:Z.production}),X=!0;if(Z.autoImports!==!1){let O=b9(Y);Y=O.code,J=L7(O.stxImports,O.browserImports.filter((F)=>!Q.includes(F)))}if(J=`${D$(Y,Z.serverData)}${J}`,Y=r0(Y),!X&&v1(Z.attrs||""))Y=x1(Y);let U=eQ(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
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?`
@@ -729,20 +729,20 @@ 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(N9($));if(Z.templateContent){let O=N9($);if(O.length>0){let F=sQ(Z.templateContent);if(O.some((A)=>F.has(A)))return V(O)}}}return`${K}<script data-stx-scoped>
732
+ })</script>`}if(!L&&!H){if(B)return V(E9($));if(Z.templateContent){let O=E9($);if(O.length>0){let F=ZG(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 yQ,gQ,M9,hQ,lQ,oQ;var u5=b(()=>{N0();yQ=/^[ \t]*import\s+['"]([^'"]+?\.css)(\?[^'"]*)?['"]\s*;?\s*$/gm;gQ=["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"],M9=["browserQuery","BrowserQueryBuilder","BrowserQueryError","browserAuth","configureBrowser","getBrowserConfig","createBrowserDb","createBrowserModel","isBrowser","debounce","throttle","retry","sleep","wait","delay","waitUntil","waitWhile","lazy","clamp","rand","readableSize","useDocumentVisibility","useIntervalFn"];hQ=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"]);lQ={left:0,middle:1,right:2};oQ=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"])});import{createHash as rQ}from"crypto";function D9($){let Z=$[T$];return Z instanceof Map?Z:null}function E9($){$[T$]=new Map}function k9($,Z){let Y=D9($);if(!Y)return null;let J=rQ("sha256").update(Z).digest("hex").slice(0,16),X=Y.get(J);if(X)X.instances++;else Y.set(J,{body:Z,instances:1});return J}function b9($,Z){let Y=D9(Z);if(!Y?.size)return $;let J=$;for(let[W,z]of Y){if(z.instances!==1)continue;let q=new RegExp(`window\\.__stxComponentFactories\\[${JSON.stringify(W)}\\]\\(("[^"]+")\\);`,"g");J=J.replace(q,(U,j)=>`(${z.body})(${j});`)}let X=[...Y].filter(([,W])=>W.instances>1);if(X.length===0)return J;let G=`<script data-stx-scoped data-stx-component-factories>
737
+ })()</script>`}var gQ,lQ,k9,cQ,rQ,$G;var l5=b(()=>{M0();g5();gQ=/^[ \t]*import\s+['"]([^'"]+?\.css)(\?[^'"]*)?['"]\s*;?\s*$/gm;lQ=["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"],k9=["browserQuery","BrowserQueryBuilder","BrowserQueryError","browserAuth","configureBrowser","getBrowserConfig","createBrowserDb","createBrowserModel","isBrowser","debounce","throttle","retry","sleep","wait","delay","waitUntil","waitWhile","lazy","clamp","rand","readableSize","useDocumentVisibility","useIntervalFn"];cQ=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"]);rQ={left:0,middle:1,right:2};$G=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"])});import{createHash as YG}from"crypto";function y9($){let Z=$[E$];return Z instanceof Map?Z:null}function P9($){$[E$]=new Map}function C9($,Z){let Y=y9($);if(!Y)return null;let J=YG("sha256").update(Z).digest("hex").slice(0,16),X=Y.get(J);if(X)X.instances++;else Y.set(J,{body:Z,instances:1});return J}function v9($,Z){let Y=y9(Z);if(!Y?.size)return $;let J=$;for(let[W,q]of Y){if(q.instances!==1)continue;let z=new RegExp(`window\\.__stxComponentFactories\\[${JSON.stringify(W)}\\]\\(("[^"]+")\\);`,"g");J=J.replace(z,(U,j)=>`(${q.body})(${j});`)}let X=[...Y].filter(([,W])=>W.instances>1);if(X.length===0)return J;let G=`<script data-stx-scoped data-stx-component-factories>
738
738
  (function() {
739
739
  const factories = window.__stxComponentFactories = window.__stxComponentFactories || {};
740
- ${X.map(([W,z])=>` factories[${JSON.stringify(W)}] = factories[${JSON.stringify(W)}] || ${z.body};`).join(`
740
+ ${X.map(([W,q])=>` factories[${JSON.stringify(W)}] = factories[${JSON.stringify(W)}] || ${q.body};`).join(`
741
741
  `)}
742
742
  })();
743
743
  </script>`,K=J.search(/<script\b(?=[^>]*\bdata-stx-scoped\b)/i);if(K<0)return`${G}
744
744
  ${J}`;return`${J.slice(0,K)}${G}
745
- ${J.slice(K)}`}var T$="__stx_component_client_factories";var H7=()=>{};function $G($){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 ZG($,Z){let Y=/[$A-Z_a-z][$\w]*/g,J;while((J=Y.exec($))!==null){let X=J[0],Q=$[J.index-1];if(tQ.has(X))throw Error(`Potentially unsafe expression (matched /\\b${X}\\b/; identifier ${X}): ${Z}`);if(Q==="."&&C9.has(X))throw Error(`Potentially unsafe expression (matched /.${X}/; property ${X}): ${Z}`)}}function YG($){let Z=/\[\s*(['"])(.*?)\1\s*\]/g,Y;while((Y=Z.exec($))!==null){let J=Y[2];if(!C9.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 I$($){let Z=$.trim(),Y=$G(Z);ZG(Y,Z),YG(Z);for(let J of P9)if(J.test(Y))throw Error(`Potentially unsafe expression (matched /${J.source}/): ${Z}`);if(!y9.allowBracketNotation&&eQ.test(Z))throw Error(`Bracket notation with strings not allowed: ${Z}. Enable with configureSafeEvaluator({ allowBracketNotation: true })`);return Z}function JG($){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("__")||P9.some((X)=>X.test(Y)))continue;if(J&&typeof J==="object"&&!Array.isArray(J))Z[Y]=O7(J);else Z[Y]=J}return Z}function O7($,Z=0){if(Z>=y9.maxSanitizeDepth)return"[Object too deep]";if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((J)=>O7(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]=O7(X,Z+1);else Y[J]=X}return Y}function $0($,Z){try{let Y=JG(Z),J=Object.keys(Y),X=Object.values(Y);return W0($,J)(...X)}catch{return}}function K0($){try{return I$($),!0}catch{return!1}}function M0($,Z){try{let Y=$0($,Z);if(Y&&typeof Y==="object"&&!Array.isArray(Y))return Y;return{}}catch{return{}}}function W0($,Z){let Y=I$($),J=/^[A-Za-z_$][\w$]*$/,X=[],Q=[];for(let z=0;z<Z.length;z++){let q=Z[z];if(!J.test(q))continue;if(v9.has(q))continue;X.push(z),Q.push(q)}let G=(z)=>Function(...Q,...z,`
745
+ ${J.slice(K)}`}var E$="__stx_component_client_factories";var F7=()=>{};function GG($){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 KG($,Z){let Y=/[$A-Z_a-z][$\w]*/g,J;while((J=Y.exec($))!==null){let X=J[0],Q=$[J.index-1];if(XG.has(X))throw Error(`Potentially unsafe expression (matched /\\b${X}\\b/; identifier ${X}): ${Z}`);if(Q==="."&&h9.has(X))throw Error(`Potentially unsafe expression (matched /.${X}/; property ${X}): ${Z}`)}}function WG($){let Z=/\[\s*(['"])(.*?)\1\s*\]/g,Y;while((Y=Z.exec($))!==null){let J=Y[2];if(!h9.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 k$($){let Z=$.trim(),Y=GG(Z);KG(Y,Z),WG(Z);for(let J of g9)if(J.test(Y))throw Error(`Potentially unsafe expression (matched /${J.source}/): ${Z}`);if(!f9.allowBracketNotation&&QG.test(Z))throw Error(`Bracket notation with strings not allowed: ${Z}. Enable with configureSafeEvaluator({ allowBracketNotation: true })`);return Z}function qG($){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("__")||g9.some((X)=>X.test(Y)))continue;if(J&&typeof J==="object"&&!Array.isArray(J))Z[Y]=V7(J);else Z[Y]=J}return Z}function V7($,Z=0){if(Z>=f9.maxSanitizeDepth)return"[Object too deep]";if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((J)=>V7(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]=V7(X,Z+1);else Y[J]=X}return Y}function Z0($,Z){try{let Y=qG(Z),J=Object.keys(Y),X=Object.values(Y);return q0($,J)(...X)}catch{return}}function W0($){try{return k$($),!0}catch{return!1}}function T0($,Z){try{let Y=Z0($,Z);if(Y&&typeof Y==="object"&&!Array.isArray(Y))return Y;return{}}catch{return{}}}function q0($,Z){let Y=k$($),J=/^[A-Za-z_$][\w$]*$/,X=[],Q=[];for(let q=0;q<Z.length;q++){let z=Z[q];if(!J.test(z))continue;if(d9.has(z))continue;X.push(q),Q.push(z)}let G=(q)=>Function(...Q,...q,`
746
746
  'use strict';
747
747
  try {
748
748
  return ${Y};
@@ -753,7 +753,7 @@ catch (e) {
753
753
  }
754
754
  throw e;
755
755
  }
756
- `),K=G([]);if(Q.length===Z.length)return S9(K,Q,G);return S9((...z)=>{let q=Array(X.length);for(let U=0;U<X.length;U++)q[U]=z[X[U]];return K(...q)},Q,G,(z)=>{K=G(z)})}function S9($,Z,Y,J){let Q=/^(\w+) is not defined$/,G=$,K=[],W=new Set(Z);return(...z)=>{for(let q=0;q<=8;q++)try{return G(...z)}catch(U){let j=U instanceof Error?U.message:"",_=Q.exec(j);if(!(U instanceof ReferenceError)||!_)return;let B=_[1];if(W.has(B)||v9.has(B))return;W.add(B),K.push(B),G=Y(K),J?.(K)}return}}function D$($){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 aQ,y9,P9,tQ,C9,eQ,v9;var w0=b(()=>{aQ={maxSanitizeDepth:10,allowBracketNotation:!1},y9={...aQ},P9=[/\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/],tQ=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"]),C9=new Set(["__proto__","constructor","prototype"]),eQ=/[\w)\]]\s*\[\s*['"]/;v9=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 E$($,Z){let Y=XG++,J=`<!--__STX_${$.toUpperCase()}_${Y}__-->`;return QG.set(J,{type:$,expression:Z}),J}var XG=0,QG;var x9=b(()=>{QG=new Map});function u9($,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 F1($,Z){return u9($,Z,f9,g9)}function X5($,Z){return u9($,Z,h9,d9)}function m5($,Z){if(!$.startsWith("<!--",Z))return-1;let Y=$.indexOf("-->",Z+4);if(Y===-1)return-1;return Y+3}function GG($,Z){if($.startsWith("<!--",Z)){let Y=m5($,Z);return Y===-1?$.length:Y}for(let[Y,J]of[[f9,g9],[h9,d9]]){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 L7($,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 W=Z($,J);if(W>J){Y.push({start:J,end:W,token:$.slice(J,W)}),J=W;continue}let z=GG($,J);if(z>J){J=z;continue}if(/^<\/?[a-zA-Z]/.test($.slice(J,J+2)))Q=!0;J++}return Y}function Y1($,Z,Y){let J=L7($,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 W=J[K];Q+=$.slice(G,W.start),Q+=Y(W.token,K),G=W.end}return Q+=$.slice(G),{output:Q,tokens:X}}function V1($){let{output:Z,tokens:Y}=Y1($,F1,(J,X)=>`\x00STX_SCRIPT_${X}\x00`);return{output:Z,scripts:Y}}function p5($,Z){if(Z.length===0)return $;return $.replace(/\x00STX_SCRIPT_(\d+)\x00/g,(Y,J)=>Z[+J]??"")}var f9,g9,h9,d9;var v1=b(()=>{f9=/<script\b[^>]*>/iy,g9=/<\/script\s*>/ig,h9=/<style\b[^>]*>/iy,d9=/<\/style\s*>/ig});var n9={};a(n9,{usesSignalsInScript:()=>Q5,unescapeHtml:()=>F7,registerFilters:()=>WG,registerFilter:()=>l9,processExpressions:()=>w1,interpolateScriptsInTemplate:()=>qG,interpolateScriptExpressions:()=>k$,getAllFilters:()=>c9,evaluateExpression:()=>c0,escapeHtml:()=>r0,defaultFilters:()=>c5,clearCustomFilters:()=>zG,applyFilters:()=>i9});function KG($){let Z=m9.get($);if(!Z){let Y=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${Y}(?!\\w)`,"g"),m9.set($,Z)}return Z.lastIndex=0,Z}function l9($,Z){if($ in c5)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);l5[$]=Z}function WG($){for(let[Z,Y]of Object.entries($))l9(Z,Y)}function c9(){return{...c5,...l5}}function zG(){for(let $ of Object.keys(l5))delete l5[$]}function r0($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function Q5($){let{scripts:Z}=V1($);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 p9($,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 z=0;z<J.length;z++){let q=J[z];if(!Q&&q==="`"){Q=!0,G=0;continue}if(Q){if(q==="`"&&G===0){Q=!1;continue}if(q==="$"&&J[z+1]==="{"){G++,z++,X+=" ";continue}if(q==="}"&&G>0){G--;continue}if(G>0){X+=q;continue}continue}X+=q}J=X;let K=/(?<![a-zA-Z0-9_$])([a-zA-Z_$][a-zA-Z0-9_$]*)/g,W;while((W=K.exec(J))!==null){let z=W[1];if(!J.substring(0,W.index).trimEnd().endsWith(".")){if(!Y.includes(z)&&!(z in Z))return!1}}return!0}function k$($,Z){let Y=$;return Y=Y.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=c0(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=c0(X,Z);if(G===void 0)return J;return JSON.stringify(G)}catch{return J}}),Y}function qG($,Z,Y={}){let{output:J,scripts:X}=V1($),Q=X.map((G)=>{let K=G.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i),W=G.match(/^<script\b[^>]*>/i),z=G.search(/<\/script\s*>$/i);if(!K||!W||z===-1)return G;let q=K[1],U=K[2];if(/\bsrc\s*=/.test(q))return G;if(/\bdata-raw\b/.test(q))return G;if(/\btype\s*=\s*["']application\/json["']/.test(q))return G;if(Y.skipServer&&/\bserver\b/.test(q))return G;let j=k$(U,Z);return W[0]+j+G.slice(z)});return p5(J,Q)}function w1($,Z,Y,J){let X=$,Q=(j,_)=>{let B=X5(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}=Y1(j,_,(F,w)=>H(L+w));return B.push(...O),V},K=[];X=G(X,Q,K,(j)=>`<!--__STX_STYLE_${j}__-->`);let W=[];X=G(X,F1,W,(j)=>`<!--__STX_SCRIPT_EXPR_${j}__-->`);let z=J?.forceSignals===!0||Z?.__stx_force_signals===!0||Array.isArray(Z?.__stx_client_signal_names)||Q5($),q=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=c0(_,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=c0(_,Z);if(H===void 0&&Z.__stx_buildMode==="compile")return E$("raw",_.trim());return H!==void 0&&H!==null?String(H):""}catch(H){if(Z.__stx_buildMode==="compile")return E$("raw",_.trim());let L=H instanceof Error?H.message:String(H);return q0("Expression",`Error evaluating: {!! ${_.trim()} !!}: ${L}`,Y,$,B,j)}}),X=G(X,F1,W,(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&&q.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=c0(_,Z);if(A)return j;if(z&&!p9(H,Z))return j;if(T===void 0&&Z.__stx_buildMode==="compile"&&!z)return E$("expr",H);return T!==void 0&&T!==null?r0(String(T)):""}catch(T){if(A)return j;if(z&&!p9(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<W.length;j++)X=X.replace(`<!--__STX_SCRIPT_EXPR_${j}__-->`,()=>W[j]);for(let j=0;j<K.length;j++)X=X.replace(`<!--__STX_STYLE_${j}__-->`,()=>K[j]);return X}function i9($,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=l5[G]||c5[G];if(!K)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(c9()).join(", ")}`);let W=[];if(X.startsWith(":")){let z=X.match(/^:([^|\s]+)/);if(z){let q=z[1].trim();try{let U=Number(q);W=[Number.isNaN(U)?q:U]}catch{W=[q]}X=X.substring(z[0].length).trim()}}else if(X.startsWith("(")){let z=1,q=1;while(z>0&&q<X.length){if(X[q]==="(")z++;if(X[q]===")")z--;q++}if(z===0){let U=X.substring(1,q-1).trim();if(U)try{if(U.startsWith("{")&&U.endsWith("}"))W=[c0(`(${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(_);W=j.map((F)=>{let w=F.trim();return c0(w,Y,!0)})}}catch{W=[U]}X=X.substring(q).trim()}}try{J=K(J,Y,...W)}catch(z){let q=z instanceof Error?z.message:String(z);throw Error(`Error applying filter '${G}': ${q}`)}if(X.startsWith("|"))X=X.substring(1).trim();else break}return J}function UG($){let Z=!1,Y="",J=0,X=0,Q=0,G=!1;for(let K=0;K<$.length;K++){let W=$[K],z=$[K+1];if(Z&&G){G=!1;continue}if(Z&&W==="\\"){G=!0;continue}if(G=!1,(W==='"'||W==="'"||W==="`")&&!G){if(!Z)Z=!0,Y=W;else if(W===Y)Z=!1,Y="";continue}if(Z&&Y==="`"&&W==="$"&&z==="{"){let q=1;K+=2;while(K<$.length&&q>0){if($[K]==="{")q++;else if($[K]==="}")q--;if(q>0)K++}continue}if(Z)continue;if(W==="(")J++;else if(W===")")J--;else if(W==="[")X++;else if(W==="]")X--;else if(W==="{")Q++;else if(W==="}")Q--;if(W==="|"&&J===0&&X===0&&Q===0){if(z==="|"){K++;continue}if(z==="="){K++;continue}return K}}return-1}function c0($,Z,Y=!1){try{let J=$.trim(),X=UG(J);if(X>0){let Q=J.substring(0,X).trim(),G=J.substring(X+1).trim(),K=c0(Q,Z,!0);return i9(K,G,Z)}if(!K0(J)){if(!Y)console.warn(`Potentially unsafe expression detected, using safe evaluator: ${J}`);return $0(J,Z)}try{let Q=Object.keys(Z),G=Object.values(Z);return W0(J,Q)(...G)}catch{return $0(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=jG(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 jG($,Z){let Y=null;for(let X of Z){if(X===$)continue;let Q=_G($,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 _G($,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 W=Y[K-1]===J[G-1]?0:1;Q[K]=Math.min(Q[K-1]+1,X[K]+1,X[K-1]+W)}for(let K=0;K<=Y.length;K++)X[K]=Q[K]}return X[Y.length]}function F7($){if(!$)return"";return $.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#039;/g,"'").replace(/&#39;/g,"'").replace(/&amp;/g,"&")}var l5,m9,c5;var J1=b(()=>{w0();N0();x9();v1();l5={},m9=new Map;c5={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 r0(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 W of Q){if(G===void 0||G===null)break;G=G[W]}if(G===void 0||G===null)return X?$:"";let K=String(G);return Object.entries(Y).forEach(([W,z])=>{K=K.replace(KG(W),String(z))}),K},t:($,Z,Y={})=>{return c5.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 G5($="const",Z=[],Y){let J=Z.length?b$.filter((X)=>!Z.includes(X)):b$;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 b$,o9;var i5=b(()=>{b$=["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"],o9=["onMount","onDestroy"]});class x1{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 W5($,Z){if(Z?.includes("g"))return new RegExp($,Z);let Y=`${$}:${Z||""}`;if(!K5.has(Y)){if(K5.size>=BG){let J=K5.keys().next().value;if(J)K5.delete(J)}K5.set(Y,new RegExp($,Z))}return K5.get(Y)}class s9{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(W)=>{try{let z=`${Y}:${W}`,q=X.get(z);if(!q){if(X.size>=Q){let U=X.keys().next().value;if(U)X.delete(U)}q=Function(...Z,`
756
+ `),K=G([]);if(Q.length===Z.length)return x9(K,Q,G);return x9((...q)=>{let z=Array(X.length);for(let U=0;U<X.length;U++)z[U]=q[X[U]];return K(...z)},Q,G,(q)=>{K=G(q)})}function x9($,Z,Y,J){let Q=/^(\w+) is not defined$/,G=$,K=[],W=new Set(Z);return(...q)=>{for(let z=0;z<=8;z++)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(W.has(B)||d9.has(B))return;W.add(B),K.push(B),G=Y(K),J?.(K)}return}}function b$($){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 JG,f9,g9,XG,h9,QG,d9;var A0=b(()=>{JG={maxSanitizeDepth:10,allowBracketNotation:!1},f9={...JG},g9=[/\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/],XG=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"]),h9=new Set(["__proto__","constructor","prototype"]),QG=/[\w)\]]\s*\[\s*['"]/;d9=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 S$($,Z){let Y=zG++,J=`<!--__STX_${$.toUpperCase()}_${Y}__-->`;return UG.set(J,{type:$,expression:Z}),J}var zG=0,UG;var u9=b(()=>{UG=new Map});function i9($,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 V1($,Z){return i9($,Z,m9,p9)}function G5($,Z){return i9($,Z,l9,c9)}function c5($,Z){if(!$.startsWith("<!--",Z))return-1;let Y=$.indexOf("-->",Z+4);if(Y===-1)return-1;return Y+3}function jG($,Z){if($.startsWith("<!--",Z)){let Y=c5($,Z);return Y===-1?$.length:Y}for(let[Y,J]of[[m9,p9],[l9,c9]]){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 w7($,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 W=Z($,J);if(W>J){Y.push({start:J,end:W,token:$.slice(J,W)}),J=W;continue}let q=jG($,J);if(q>J){J=q;continue}if(/^<\/?[a-zA-Z]/.test($.slice(J,J+2)))Q=!0;J++}return Y}function J1($,Z,Y){let J=w7($,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 W=J[K];Q+=$.slice(G,W.start),Q+=Y(W.token,K),G=W.end}return Q+=$.slice(G),{output:Q,tokens:X}}function w1($){let{output:Z,tokens:Y}=J1($,V1,(J,X)=>`\x00STX_SCRIPT_${X}\x00`);return{output:Z,scripts:Y}}function i5($,Z){if(Z.length===0)return $;return $.replace(/\x00STX_SCRIPT_(\d+)\x00/g,(Y,J)=>Z[+J]??"")}var m9,p9,l9,c9;var f1=b(()=>{m9=/<script\b[^>]*>/iy,p9=/<\/script\s*>/ig,l9=/<style\b[^>]*>/iy,c9=/<\/style\s*>/ig});var t9={};a(t9,{usesSignalsInScript:()=>K5,unescapeHtml:()=>A7,registerFilters:()=>BG,registerFilter:()=>s9,processExpressions:()=>A1,interpolateScriptsInTemplate:()=>OG,interpolateScriptExpressions:()=>y$,getAllFilters:()=>r9,evaluateExpression:()=>i0,escapeHtml:()=>a0,defaultFilters:()=>o5,clearCustomFilters:()=>HG,applyFilters:()=>a9});function _G($){let Z=n9.get($);if(!Z){let Y=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");Z=new RegExp(`:${Y}(?!\\w)`,"g"),n9.set($,Z)}return Z.lastIndex=0,Z}function s9($,Z){if($ in o5)console.warn(`Filter "${$}" already exists as a built-in filter. Custom filter will take precedence.`);n5[$]=Z}function BG($){for(let[Z,Y]of Object.entries($))s9(Z,Y)}function r9(){return{...o5,...n5}}function HG(){for(let $ of Object.keys(n5))delete n5[$]}function a0($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function K5($){let{scripts:Z}=w1($);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 o9($,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 z=J[q];if(!Q&&z==="`"){Q=!0,G=0;continue}if(Q){if(z==="`"&&G===0){Q=!1;continue}if(z==="$"&&J[q+1]==="{"){G++,q++,X+=" ";continue}if(z==="}"&&G>0){G--;continue}if(G>0){X+=z;continue}continue}X+=z}J=X;let K=/(?<![a-zA-Z0-9_$])([a-zA-Z_$][a-zA-Z0-9_$]*)/g,W;while((W=K.exec(J))!==null){let q=W[1];if(!J.substring(0,W.index).trimEnd().endsWith(".")){if(!Y.includes(q)&&!(q in Z))return!1}}return!0}function y$($,Z){let Y=$;return Y=Y.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=i0(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=i0(X,Z);if(G===void 0)return J;return JSON.stringify(G)}catch{return J}}),Y}function OG($,Z,Y={}){let{output:J,scripts:X}=w1($),Q=X.map((G)=>{let K=G.match(/^<script\b([^>]*)>([\s\S]*?)<\/script\s*>$/i),W=G.match(/^<script\b[^>]*>/i),q=G.search(/<\/script\s*>$/i);if(!K||!W||q===-1)return G;let z=K[1],U=K[2];if(/\bsrc\s*=/.test(z))return G;if(/\bdata-raw\b/.test(z))return G;if(/\btype\s*=\s*["']application\/json["']/.test(z))return G;if(Y.skipServer&&/\bserver\b/.test(z))return G;let j=y$(U,Z);return W[0]+j+G.slice(q)});return i5(J,Q)}function A1($,Z,Y,J){let X=$,Q=(j,_)=>{let B=G5(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}=J1(j,_,(F,w)=>H(L+w));return B.push(...O),V},K=[];X=G(X,Q,K,(j)=>`<!--__STX_STYLE_${j}__-->`);let W=[];X=G(X,V1,W,(j)=>`<!--__STX_SCRIPT_EXPR_${j}__-->`);let q=J?.forceSignals===!0||Z?.__stx_force_signals===!0||Array.isArray(Z?.__stx_client_signal_names)||K5($),z=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=i0(_,Z);return H!==void 0&&H!==null?String(H):""}catch(H){let L=H instanceof Error?H.message:String(H);return U0("Expression",`Error evaluating: {{{ ${_.trim()}}}}: ${L}`,Y,$,B,j)}}),X=X.replace(/\{!!([\s\S]*?)!!\}/g,(j,_,B)=>{try{let H=i0(_,Z);if(H===void 0&&Z.__stx_buildMode==="compile")return S$("raw",_.trim());return H!==void 0&&H!==null?String(H):""}catch(H){if(Z.__stx_buildMode==="compile")return S$("raw",_.trim());let L=H instanceof Error?H.message:String(H);return U0("Expression",`Error evaluating: {!! ${_.trim()} !!}: ${L}`,Y,$,B,j)}}),X=G(X,V1,W,(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&&z.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=i0(_,Z);if(A)return j;if(q&&!o9(H,Z))return j;if(T===void 0&&Z.__stx_buildMode==="compile"&&!q)return S$("expr",H);return T!==void 0&&T!==null?a0(String(T)):""}catch(T){if(A)return j;if(q&&!o9(H,Z))return j;if(M)return j;let I=T instanceof Error?T.message:String(T);return U0("Expression",`Error evaluating: {{ ${H} }}: ${I}`,Y,$,B,j)}});for(let j=0;j<W.length;j++)X=X.replace(`<!--__STX_SCRIPT_EXPR_${j}__-->`,()=>W[j]);for(let j=0;j<K.length;j++)X=X.replace(`<!--__STX_STYLE_${j}__-->`,()=>K[j]);return X}function a9($,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=n5[G]||o5[G];if(!K)throw Error(`Filter not found: ${G}. Available filters: ${Object.keys(r9()).join(", ")}`);let W=[];if(X.startsWith(":")){let q=X.match(/^:([^|\s]+)/);if(q){let z=q[1].trim();try{let U=Number(z);W=[Number.isNaN(U)?z:U]}catch{W=[z]}X=X.substring(q[0].length).trim()}}else if(X.startsWith("(")){let q=1,z=1;while(q>0&&z<X.length){if(X[z]==="(")q++;if(X[z]===")")q--;z++}if(q===0){let U=X.substring(1,z-1).trim();if(U)try{if(U.startsWith("{")&&U.endsWith("}"))W=[i0(`(${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(_);W=j.map((F)=>{let w=F.trim();return i0(w,Y,!0)})}}catch{W=[U]}X=X.substring(z).trim()}}try{J=K(J,Y,...W)}catch(q){let z=q instanceof Error?q.message:String(q);throw Error(`Error applying filter '${G}': ${z}`)}if(X.startsWith("|"))X=X.substring(1).trim();else break}return J}function LG($){let Z=!1,Y="",J=0,X=0,Q=0,G=!1;for(let K=0;K<$.length;K++){let W=$[K],q=$[K+1];if(Z&&G){G=!1;continue}if(Z&&W==="\\"){G=!0;continue}if(G=!1,(W==='"'||W==="'"||W==="`")&&!G){if(!Z)Z=!0,Y=W;else if(W===Y)Z=!1,Y="";continue}if(Z&&Y==="`"&&W==="$"&&q==="{"){let z=1;K+=2;while(K<$.length&&z>0){if($[K]==="{")z++;else if($[K]==="}")z--;if(z>0)K++}continue}if(Z)continue;if(W==="(")J++;else if(W===")")J--;else if(W==="[")X++;else if(W==="]")X--;else if(W==="{")Q++;else if(W==="}")Q--;if(W==="|"&&J===0&&X===0&&Q===0){if(q==="|"){K++;continue}if(q==="="){K++;continue}return K}}return-1}function i0($,Z,Y=!1){try{let J=$.trim(),X=LG(J);if(X>0){let Q=J.substring(0,X).trim(),G=J.substring(X+1).trim(),K=i0(Q,Z,!0);return a9(K,G,Z)}if(!W0(J)){if(!Y)console.warn(`Potentially unsafe expression detected, using safe evaluator: ${J}`);return Z0(J,Z)}try{let Q=Object.keys(Z),G=Object.values(Z);return q0(J,Q)(...G)}catch{return Z0(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=FG(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 FG($,Z){let Y=null;for(let X of Z){if(X===$)continue;let Q=VG($,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 VG($,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 W=Y[K-1]===J[G-1]?0:1;Q[K]=Math.min(Q[K-1]+1,X[K]+1,X[K-1]+W)}for(let K=0;K<=Y.length;K++)X[K]=Q[K]}return X[Y.length]}function A7($){if(!$)return"";return $.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#039;/g,"'").replace(/&#39;/g,"'").replace(/&amp;/g,"&")}var n5,n9,o5;var X1=b(()=>{A0();M0();u9();f1();n5={},n9=new Map;o5={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 a0(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 W of Q){if(G===void 0||G===null)break;G=G[W]}if(G===void 0||G===null)return X?$:"";let K=String(G);return Object.entries(Y).forEach(([W,q])=>{K=K.replace(_G(W),String(q))}),K},t:($,Z,Y={})=>{return o5.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 W5($="const",Z=[],Y){let J=Z.length?P$.filter((X)=>!Z.includes(X)):P$;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 P$,e9;var s5=b(()=>{P$=["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"],e9=["onMount","onDestroy"]});class g1{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 z5($,Z){if(Z?.includes("g"))return new RegExp($,Z);let Y=`${$}:${Z||""}`;if(!q5.has(Y)){if(q5.size>=wG){let J=q5.keys().next().value;if(J)q5.delete(J)}q5.set(Y,new RegExp($,Z))}return q5.get(Y)}class $8{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(W)=>{try{let q=`${Y}:${W}`,z=X.get(q);if(!z){if(X.size>=Q){let U=X.keys().next().value;if(U)X.delete(U)}z=Function(...Z,`
757
757
  'use strict';
758
758
  try {
759
759
  return ${W};
@@ -764,33 +764,33 @@ catch (e) {
764
764
  }
765
765
  throw e;
766
766
  }
767
- `),X.set(z,q)}return q(...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 r9{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 W of this.violationHandlers)try{W(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 HG(){if(!V7)V7=new r9;return V7}var K5,BG=500,zH,V7=null,a9;var z5=b(()=>{K5=new Map;zH=new s9;a9=new Proxy({},{get($,Z){return HG()[Z]}})});function t9($,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 e9($,Z,Y={}){let{prefix:J="",preserveHost:X=!0,scopeKeyframes:Q=!0,scopeCustomProperties:G=!1}=Y;if(!$.trim())return"";let K=w7($),W=[],z=new Map;if(Q)for(let q of K){let U=q.selector.match(/@keyframes\s+([a-z_-][a-z0-9_-]*)/i);if(U){let j=U[1],_=`${Z}_${j}`;z.set(j,_)}}for(let q of K){let U=$8(q,Z,J,X,z,G);W.push(U)}return W.join(`
767
+ `),X.set(q,z)}return z(...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 Z8{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 W of this.violationHandlers)try{W(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 AG(){if(!R7)R7=new Z8;return R7}var q5,wG=500,LH,R7=null,Y8;var U5=b(()=>{q5=new Map;LH=new $8;Y8=new Proxy({},{get($,Z){return AG()[Z]}})});function J8($,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 X8($,Z,Y={}){let{prefix:J="",preserveHost:X=!0,scopeKeyframes:Q=!0,scopeCustomProperties:G=!1}=Y;if(!$.trim())return"";let K=N7($),W=[],q=new Map;if(Q)for(let z of K){let U=z.selector.match(/@keyframes\s+([a-z_-][a-z0-9_-]*)/i);if(U){let j=U[1],_=`${Z}_${j}`;q.set(j,_)}}for(let z of K){let U=Q8(z,Z,J,X,q,G);W.push(U)}return W.join(`
768
768
 
769
- `)}function w7($){let Z=[],Y=$.replace(/\/\*[\s\S]*?\*\//g,""),J=0,X="",Q=!1,G="";for(let K=0;K<Y.length;K++){let W=Y[K];if(W==="@"&&J===0)Q=!0;if(W==="{")J++;else if(W==="}"){if(J--,J===0){if(Q){G+=W;let z=G.match(/@([a-z-]+)\s*([^{]*)\{([\s\S]*)\}/i);if(z){let[,q,U,j]=z;if(q==="keyframes")Z.push({selector:`@keyframes ${U.trim()}`,declarations:j.trim()});else if(q==="media"||q==="supports"||q==="container"){let _=w7(j);Z.push({selector:`@${q} ${U.trim()}`,declarations:_.map((B)=>`${B.selector} { ${B.declarations} }`).join(`
770
- `)})}else Z.push({selector:`@${q} ${U.trim()}`,declarations:j.trim()})}G="",Q=!1}else if(X.trim()){X+=W;let z=X.match(/([^{]+)\{([^}]*)\}/);if(z)Z.push({selector:z[1].trim(),declarations:z[2].trim()});X=""}continue}}if(Q)G+=W;else X+=W}return Z}function $8($,Z,Y,J,X,Q){let{selector:G,declarations:K}=$;if(G.startsWith("@")){if(G.startsWith("@keyframes")){let q=G.replace("@keyframes ","").trim();return`@keyframes ${X.get(q)||q} { ${K} }`}if(G.startsWith("@media")||G.startsWith("@supports")||G.startsWith("@container")){let U=w7(`x { ${K} }`.replace(/x \{ /,"").replace(/ \}$/,"")).map((j)=>$8(j,Z,Y,J,X,Q)).join(`
769
+ `)}function N7($){let Z=[],Y=$.replace(/\/\*[\s\S]*?\*\//g,""),J=0,X="",Q=!1,G="";for(let K=0;K<Y.length;K++){let W=Y[K];if(W==="@"&&J===0)Q=!0;if(W==="{")J++;else if(W==="}"){if(J--,J===0){if(Q){G+=W;let q=G.match(/@([a-z-]+)\s*([^{]*)\{([\s\S]*)\}/i);if(q){let[,z,U,j]=q;if(z==="keyframes")Z.push({selector:`@keyframes ${U.trim()}`,declarations:j.trim()});else if(z==="media"||z==="supports"||z==="container"){let _=N7(j);Z.push({selector:`@${z} ${U.trim()}`,declarations:_.map((B)=>`${B.selector} { ${B.declarations} }`).join(`
770
+ `)})}else Z.push({selector:`@${z} ${U.trim()}`,declarations:j.trim()})}G="",Q=!1}else if(X.trim()){X+=W;let q=X.match(/([^{]+)\{([^}]*)\}/);if(q)Z.push({selector:q[1].trim(),declarations:q[2].trim()});X=""}continue}}if(Q)G+=W;else X+=W}return Z}function Q8($,Z,Y,J,X,Q){let{selector:G,declarations:K}=$;if(G.startsWith("@")){if(G.startsWith("@keyframes")){let z=G.replace("@keyframes ","").trim();return`@keyframes ${X.get(z)||z} { ${K} }`}if(G.startsWith("@media")||G.startsWith("@supports")||G.startsWith("@container")){let U=N7(`x { ${K} }`.replace(/x \{ /,"").replace(/ \}$/,"")).map((j)=>Q8(j,Z,Y,J,X,Q)).join(`
771
771
  `);return`${G} {
772
772
  ${U}
773
- }`}return`${G} { ${K} }`}let W=OG(G,Z,Y,J),z=K;for(let[q,U]of X)z=z.replace(new RegExp(`\\b${q}\\b`,"g"),U);if(Q)z=z.replace(/--([a-z-]+)/gi,`--${Z}-$1`);return`${W} { ${z} }`}function OG($,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 z=G.replace(/:host(\([^)]*\))?/,`.${Z}$1`);Q.push(z)}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 W=LG(G,Z);if(W)Q.push(Y?`${Y} ${W}`:W)}return Q.join(", ")}function LG($,Z){let Y=0,J=$.length;for(let W=0;W<$.length;W++){let z=$[W];if(z==="["||z==="(")Y++;else if(z==="]"||z===")")Y--;else if(Y===0&&(z===" "||z===">"||z==="+"||z==="~")){J=W;break}}let X=$.slice(0,J),Q=$.slice(J);if(!X)return"";let G=X.length,K=0;for(let W=0;W<X.length;W++){let z=X[W];if(z==="["||z==="(")K++;else if(z==="]"||z===")")K--;else if(Y===0&&K===0&&z===":"){G=W;break}}return`${X.slice(0,G)}.${Z}${X.slice(G)}${Q}`}function Y8($){let Z=new Set;return $.replace(/<style\b[^>]*\bdata-stx-scoped(?:=(?:"[^"]*"|'[^']*'|[^\s>]+))?[^>]*>[\s\S]*?<\/style>\s*/gi,(Y)=>{let J=Y.trim();if(Z.has(J))return"";return Z.add(J),Y})}function S$($,Z){if(!FG.test($))return{html:$,hasScoped:!1};let Y=t9(Z),J=`data-v-${Y}`,X=$,Q=new RegExp(`<style\\s+([^>]*${A7}[^>]*)>([\\s\\S]*?)</style>`,"gi"),G=!1;if(X=X.replace(Q,(K,W,z)=>{G=!0;let q=VG(z,J),U=W.replace(new RegExp(A7,"gi"),"").trim(),j=U?` ${U}`:"";return`<style data-stx-scoped="${Y}"${j}>${q}</style>`}),!G)return{html:$,hasScoped:!1};return X=AG(X,J),{html:X,hasScoped:!0}}function VG($,Z){return e9($,"__SCOPE_PLACEHOLDER__",{preserveHost:!1}).replace(/\.(__SCOPE_PLACEHOLDER__) /g,`[${Z}] `).replace(/\.(__SCOPE_PLACEHOLDER__)/g,`[${Z}]`)}function AG($,Z){let Y=Y1($,(X,Q)=>{let G=F1(X,Q);return G>Q?G:X5(X,Q)},(X,Q)=>wG(Q)),J=RG(Y.output,Z);return Z8.lastIndex=0,J.replace(Z8,(X,Q)=>Y.tokens[Number(Q)])}function RG($,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 A7,FG,wG=($)=>`\x00stx-scope-mask-${$}\x00`,Z8;var R7=b(()=>{v1();A7=String.raw`(?<![\w-])scoped(?![\w-])`,FG=new RegExp(`<style\\s+[^>]*${A7}`,"i");Z8=/\u0000stx-scope-mask-(\d+)\u0000/g});function MG($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return NG.test(Z)}function y$($){n5.lastIndex=0;let Z;while((Z=n5.exec($))!==null){if(Z[0].startsWith("</")||MG(Z[0]))continue;let Y=Z.index,J=n5.lastIndex,X=1,Q;while((Q=n5.exec($))!==null)if(Q[0].startsWith("</")){if(X--,X===0){let G=Q.index;return{start:Y,openEnd:J,closeStart:G,end:n5.lastIndex,content:$.slice(J,G)}}}else X++;return null}return null}var n5,NG;var N7=b(()=>{n5=/<\/?template\b[^>]*>/gi,NG=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i});var J8=()=>{};function x0($,Z,Y,J=0){let X=0,Q=J,G=null,K=0,W=!1;while(Q<$.length){let z=$[Q];if(G&&W){W=!1,Q++;continue}if(G&&z==="\\"){W=!0,Q++;continue}if(W=!1,(z==='"'||z==="'"||z==="`")&&!G){G=z,Q++;continue}if(z===G&&G!=="`"){G=null,Q++;continue}if(G==="`"&&z==="$"&&$[Q+1]==="{"){K++,Q+=2;continue}if(K>0&&z==="}"){K--,Q++;continue}if(z==="`"&&G==="`"&&K===0){G=null,Q++;continue}if(G){Q++;continue}if(z===Z)X++;else if(z===Y){if(X--,X===0)return Q}Q++}return-1}var I7={};a(I7,{useTitle:()=>kG,useSeoMeta:()=>X8,usePageTitle:()=>kG,useHead:()=>T7,seoMetaToHeadConfig:()=>C$,resetHead:()=>DG,renderHtmlAttrs:()=>SG,renderHead:()=>bG,renderBodyAttrs:()=>yG,processTitleDirective:()=>vG,processMetaDirective:()=>xG,processHeadDirective:()=>CG,mergeHeadConfigs:()=>q5,getPageMeta:()=>IG,getHead:()=>M7,definePageMeta:()=>EG,applyHead:()=>PG});function M7(){return A1}function IG(){return P$}function DG(){A1={},TG.length=0,P$={}}function T7($){A1=q5(A1,$)}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 X8($){T7(C$($))}function C$($){let Z=[];if($.description)Z.push({name:"description",content:$.description});if($.keywords){let W=Array.isArray($.keywords)?$.keywords.join(", "):$.keywords;Z.push({name:"keywords",content:W})}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 W of $.articleTags)Z.push({property:"article:tag",content:W});let K=[];if($.canonical)K.push({rel:"canonical",href:$.canonical});return{title:$.title,titleTemplate:$.titleTemplate,meta:Z,link:K}}function EG($){if(P$={...P$,...$},$.title||$.description)X8({title:$.title,description:$.description})}function kG($){let Z=typeof $==="function"?$():$;T7({title:Z})}function bG($=A1){let Z=[];if($.title){let Y=$.title;if($.titleTemplate)Y=typeof $.titleTemplate==="function"?$.titleTemplate(Y):$.titleTemplate.replace("%s",Y);Z.push(`<title>${f1(Y)}</title>`)}if($.base){let Y=Object.entries($.base).map(([J,X])=>`${J}="${f1(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}="${f1(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}="${f1(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}="${f1(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(`
774
- `)}function SG($=A1){if(!$.htmlAttrs)return"";return Object.entries($.htmlAttrs).map(([Z,Y])=>`${Z}="${f1(Y)}"`).join(" ")}function yG($=A1){if(!$.bodyAttrs)return"";return Object.entries($.bodyAttrs).map(([Z,Y])=>`${Z}="${f1(Y)}"`).join(" ")}function f1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function PG($=A1){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 CG($){let Z="";return{content:$.replace(/@head\s*([\s\S]*?)@endhead/g,(J,X)=>{return Z+=X.trim()+`
775
- `,""}),headContent:Z.trim()}}function vG($,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 xG($,Z){return $.replace(/@meta\s*\(\s*(['"`])(.+?)\1\s*,\s*(?:(['"`])(.+?)\3|([^)]+))\s*\)/g,(Y,J,X,Q,G,K)=>{let W=Q?G:K,z=Q?W:Z[(W||"").trim()]??W,U=X.includes(":")?{property:X,content:z}:{name:X,content:z},j=Z.__stx_runtime_head??{};return Z.__stx_runtime_head=q5(j,{meta:[U]}),""})}var A1,TG,P$;var o5=b(()=>{A1={},TG=[],P$={}});var v$={};a(v$,{stripTypeScript:()=>z8,splitDeclaration:()=>_8,isCompleteImport:()=>q8,hasVariables:()=>O8,extractVariables:()=>g1,extractScriptFromTemplate:()=>H8,convertToCommonJS:()=>E7});import U5 from"path";import s5 from"process";function fG($){let Z=[],Y=0,J=$.split(`
776
- `);for(let X of J){let Q=Y,G=null,K=!1;for(let W=0;W<X.length;W++){let z=X[W];if(K){K=!1;continue}if(z==="\\"){K=!0;continue}if(G){if(z===G)G=null;continue}if(z==="'"||z==='"'||z==="`"){G=z;continue}if(z==="/"&&W+1<X.length&&X[W+1]==="/")break;if(z==="{")Y++;else if(z==="}")Y--}if(Q===0){let W=X.match(/(?:const|let|var)\s+(\w+)\s*=/);if(W)Z.push(W[1]);else if(/^\s*(?:const|let|var)\s+\w+\s*;?\s*$/.test(X)){let z=X.match(/(?:const|let|var)\s+(\w+)/);if(z)Z.push(z[1])}else{let z=X.match(/(?:const|let|var)\s+(\{[^}]+\}|\[[^\]]+\])\s*=/);if(z){let U=z[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 z8($){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,W=null;for(let z=0;z<J.length;z++){let q=J[z];if(W){if(Q+=q,q===W)W=null;continue}if(q==='"'||q==="'"||q==="`"){W=q,Q+=q;continue}if(q==="<")G++;else if(q===">"&&G>0)G--;else if(q==="(")K++;else if(q===")")K--;if(q===","&&G===0&&K===0){X.push(Q),Q="";continue}Q+=q}if(Q)X.push(Q);return X.map((z)=>{let q=z.trim(),U=q.startsWith("..."),j=U?q.slice(3):q,_=-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 z;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,W=G+1,z=0,q=null;while(W<Z.length&&K>0){let _=Z[W];if(q){if(_===q)q=null;W++;continue}if(_==='"'||_==="'"||_==="`"){q=_,W++;continue}if(_==="<")z++;else if(_===">"&&z>0)z--;else if(z===0){if(_==="(")K++;else if(_===")")K--}if(K>0)W++}if(K!==0)continue;let U=Z.substring(G+1,W);if(!U.includes(":"))continue;let j=Y(U);Q.push({start:G+1,end:W,replacement:j})}for(let G=Q.length-1;G>=0;G--){let{start:K,end:W,replacement:z}=Q[G];Z=Z.substring(0,K)+z+Z.substring(W)}}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,...W]=G.split("="),z=K.split(":")[0].trim();if(W.length>0)return`${z} = ${W.join("=").trim()}`;return z}).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,`
773
+ }`}return`${G} { ${K} }`}let W=RG(G,Z,Y,J),q=K;for(let[z,U]of X)q=q.replace(new RegExp(`\\b${z}\\b`,"g"),U);if(Q)q=q.replace(/--([a-z-]+)/gi,`--${Z}-$1`);return`${W} { ${q} }`}function RG($,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 W=NG(G,Z);if(W)Q.push(Y?`${Y} ${W}`:W)}return Q.join(", ")}function NG($,Z){let Y=0,J=$.length;for(let W=0;W<$.length;W++){let q=$[W];if(q==="["||q==="(")Y++;else if(q==="]"||q===")")Y--;else if(Y===0&&(q===" "||q===">"||q==="+"||q==="~")){J=W;break}}let X=$.slice(0,J),Q=$.slice(J);if(!X)return"";let G=X.length,K=0;for(let W=0;W<X.length;W++){let q=X[W];if(q==="["||q==="(")K++;else if(q==="]"||q===")")K--;else if(Y===0&&K===0&&q===":"){G=W;break}}return`${X.slice(0,G)}.${Z}${X.slice(G)}${Q}`}function K8($){let Z=new Set;return $.replace(/<style\b[^>]*\bdata-stx-scoped(?:=(?:"[^"]*"|'[^']*'|[^\s>]+))?[^>]*>[\s\S]*?<\/style>\s*/gi,(Y)=>{let J=Y.trim();if(Z.has(J))return"";return Z.add(J),Y})}function C$($,Z){if(!MG.test($))return{html:$,hasScoped:!1};let Y=J8(Z),J=`data-v-${Y}`,X=$,Q=new RegExp(`<style\\s+([^>]*${M7}[^>]*)>([\\s\\S]*?)</style>`,"gi"),G=!1;if(X=X.replace(Q,(K,W,q)=>{G=!0;let z=TG(q,J),U=W.replace(new RegExp(M7,"gi"),"").trim(),j=U?` ${U}`:"";return`<style data-stx-scoped="${Y}"${j}>${z}</style>`}),!G)return{html:$,hasScoped:!1};return X=DG(X,J),{html:X,hasScoped:!0}}function TG($,Z){return X8($,"__SCOPE_PLACEHOLDER__",{preserveHost:!1}).replace(/\.(__SCOPE_PLACEHOLDER__) /g,`[${Z}] `).replace(/\.(__SCOPE_PLACEHOLDER__)/g,`[${Z}]`)}function DG($,Z){let Y=J1($,(X,Q)=>{let G=V1(X,Q);return G>Q?G:G5(X,Q)},(X,Q)=>IG(Q)),J=EG(Y.output,Z);return G8.lastIndex=0,J.replace(G8,(X,Q)=>Y.tokens[Number(Q)])}function EG($,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 M7,MG,IG=($)=>`\x00stx-scope-mask-${$}\x00`,G8;var T7=b(()=>{f1();M7=String.raw`(?<![\w-])scoped(?![\w-])`,MG=new RegExp(`<style\\s+[^>]*${M7}`,"i");G8=/\u0000stx-scope-mask-(\d+)\u0000/g});function bG($){let Z=$.replace(/^<template\b/i,"").replace(/>$/,"");return kG.test(Z)}function v$($){r5.lastIndex=0;let Z;while((Z=r5.exec($))!==null){if(Z[0].startsWith("</")||bG(Z[0]))continue;let Y=Z.index,J=r5.lastIndex,X=1,Q;while((Q=r5.exec($))!==null)if(Q[0].startsWith("</")){if(X--,X===0){let G=Q.index;return{start:Y,openEnd:J,closeStart:G,end:r5.lastIndex,content:$.slice(J,G)}}}else X++;return null}return null}var r5,kG;var I7=b(()=>{r5=/<\/?template\b[^>]*>/gi,kG=/(?:^|\s)(?:id\s*=|(?:x-|[@:])(?:for|if|else(?:-if)?)(?=\s|=|$)|#[\w-]+(?:\s*=|\s|$)|v-slot(?::[\w-]+)?(?=\s|=|$)|slot\s*=)/i});var W8=()=>{};function f0($,Z,Y,J=0){let X=0,Q=J,G=null,K=0,W=!1;while(Q<$.length){let q=$[Q];if(G&&W){W=!1,Q++;continue}if(G&&q==="\\"){W=!0,Q++;continue}if(W=!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 k7={};a(k7,{useTitle:()=>vG,useSeoMeta:()=>q8,usePageTitle:()=>vG,useHead:()=>E7,seoMetaToHeadConfig:()=>f$,resetHead:()=>PG,renderHtmlAttrs:()=>fG,renderHead:()=>xG,renderBodyAttrs:()=>gG,processTitleDirective:()=>uG,processMetaDirective:()=>mG,processHeadDirective:()=>dG,mergeHeadConfigs:()=>j5,getPageMeta:()=>yG,getHead:()=>D7,definePageMeta:()=>CG,applyHead:()=>hG});function D7(){return R1}function yG(){return x$}function PG(){R1={},SG.length=0,x$={}}function E7($){R1=j5(R1,$)}function j5($,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 q8($){E7(f$($))}function f$($){let Z=[];if($.description)Z.push({name:"description",content:$.description});if($.keywords){let W=Array.isArray($.keywords)?$.keywords.join(", "):$.keywords;Z.push({name:"keywords",content:W})}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 W of $.articleTags)Z.push({property:"article:tag",content:W});let K=[];if($.canonical)K.push({rel:"canonical",href:$.canonical});return{title:$.title,titleTemplate:$.titleTemplate,meta:Z,link:K}}function CG($){if(x$={...x$,...$},$.title||$.description)q8({title:$.title,description:$.description})}function vG($){let Z=typeof $==="function"?$():$;E7({title:Z})}function xG($=R1){let Z=[];if($.title){let Y=$.title;if($.titleTemplate)Y=typeof $.titleTemplate==="function"?$.titleTemplate(Y):$.titleTemplate.replace("%s",Y);Z.push(`<title>${h1(Y)}</title>`)}if($.base){let Y=Object.entries($.base).map(([J,X])=>`${J}="${h1(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}="${h1(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}="${h1(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}="${h1(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(`
774
+ `)}function fG($=R1){if(!$.htmlAttrs)return"";return Object.entries($.htmlAttrs).map(([Z,Y])=>`${Z}="${h1(Y)}"`).join(" ")}function gG($=R1){if(!$.bodyAttrs)return"";return Object.entries($.bodyAttrs).map(([Z,Y])=>`${Z}="${h1(Y)}"`).join(" ")}function h1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function hG($=R1){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 dG($){let Z="";return{content:$.replace(/@head\s*([\s\S]*?)@endhead/g,(J,X)=>{return Z+=X.trim()+`
775
+ `,""}),headContent:Z.trim()}}function uG($,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=j5(K,{title:G}),""})}function mG($,Z){return $.replace(/@meta\s*\(\s*(['"`])(.+?)\1\s*,\s*(?:(['"`])(.+?)\3|([^)]+))\s*\)/g,(Y,J,X,Q,G,K)=>{let W=Q?G:K,q=Q?W:Z[(W||"").trim()]??W,U=X.includes(":")?{property:X,content:q}:{name:X,content:q},j=Z.__stx_runtime_head??{};return Z.__stx_runtime_head=j5(j,{meta:[U]}),""})}var R1,SG,x$;var a5=b(()=>{R1={},SG=[],x$={}});var g$={};a(g$,{stripTypeScript:()=>B8,splitDeclaration:()=>F8,isCompleteImport:()=>H8,hasVariables:()=>A8,extractVariables:()=>d1,extractScriptFromTemplate:()=>w8,convertToCommonJS:()=>S7});import _5 from"path";import t5 from"process";function pG($){let Z=[],Y=0,J=$.split(`
776
+ `);for(let X of J){let Q=Y,G=null,K=!1;for(let W=0;W<X.length;W++){let q=X[W];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==="/"&&W+1<X.length&&X[W+1]==="/")break;if(q==="{")Y++;else if(q==="}")Y--}if(Q===0){let W=X.match(/(?:const|let|var)\s+(\w+)\s*=/);if(W)Z.push(W[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 B8($){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,W=null;for(let q=0;q<J.length;q++){let z=J[q];if(W){if(Q+=z,z===W)W=null;continue}if(z==='"'||z==="'"||z==="`"){W=z,Q+=z;continue}if(z==="<")G++;else if(z===">"&&G>0)G--;else if(z==="(")K++;else if(z===")")K--;if(z===","&&G===0&&K===0){X.push(Q),Q="";continue}Q+=z}if(Q)X.push(Q);return X.map((q)=>{let z=q.trim(),U=z.startsWith("..."),j=U?z.slice(3):z,_=-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,W=G+1,q=0,z=null;while(W<Z.length&&K>0){let _=Z[W];if(z){if(_===z)z=null;W++;continue}if(_==='"'||_==="'"||_==="`"){z=_,W++;continue}if(_==="<")q++;else if(_===">"&&q>0)q--;else if(q===0){if(_==="(")K++;else if(_===")")K--}if(K>0)W++}if(K!==0)continue;let U=Z.substring(G+1,W);if(!U.includes(":"))continue;let j=Y(U);Q.push({start:G+1,end:W,replacement:j})}for(let G=Q.length-1;G>=0;G--){let{start:K,end:W,replacement:q}=Q[G];Z=Z.substring(0,K)+q+Z.substring(W)}}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,...W]=G.split("="),q=K.split(":")[0].trim();if(W.length>0)return`${q} = ${W.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,`
777
777
 
778
- `),Z}async function g1($,Z,Y,J={}){if(!$.trim())return;let X;try{let C=new Bun.Transpiler({loader:"ts",target:"browser",define:l0()}),P=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");P=P.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,""),X=C.transformSync(P)}catch{X=z8($)}let Q={exports:{}},G=Q.exports,K=s5.cwd(),W={},z=[...X.matchAll(/require\s*\(\s*['"]([^'"]+)['"]\s*\)/g)||[]].map((C)=>C[1]).filter((C)=>!C.startsWith("node:")&&!C.startsWith(".")&&!["fs","path","os","child_process","crypto","http","https","url","util","stream","events","buffer","net","querystring","zlib","tls"].includes(C));for(let C of z)try{let P=U5.resolve(K,"node_modules",C),x=U5.join(P,"package.json"),m=JSON.parse(j0("fs").readFileSync(x,"utf8")),u=m.main||"index.js";if(m.exports){let U0=typeof m.exports==="string"?m.exports:m.exports["."];if(typeof U0==="string")u=U0;else if(U0?.bun)u=U0.bun;else if(U0?.import)u=U0.import;else if(U0?.default)u=U0.default}W[C]=await import(U5.resolve(P,u))}catch{}let q=(C)=>{if(W[C])return W[C];return j0(C)},U=Z.props||{},j=(C)=>{if(!C)return U;let P={};for(let[x,m]of Object.entries(C)){let u=U[x];if(u!==void 0)P[x]=u;else if(typeof m==="function")P[x]=m();else P[x]=m}return P};for(let[C,P]of Object.entries(U))Object.defineProperty(j,C,{value:P,enumerable:!0,configurable:!0,writable:!0});for(let C of["name","length","caller","arguments"]){if(Object.prototype.hasOwnProperty.call(U,C))continue;try{Object.defineProperty(j,C,{value:void 0,enumerable:!1,configurable:!0,writable:!0})}catch{}}let _=(C)=>{if(!C)return U;let P={...U};for(let[x,m]of Object.entries(C)){let u=m&&typeof m==="object"&&!Array.isArray(m)?m:{type:m};if(P[x]===void 0&&u.default!==void 0)P[x]=typeof u.default==="function"?u.default():u.default}return P},B=()=>Z.slots||{},H=(C,P)=>{let x={...C};for(let[m,u]of Object.entries(P))if(x[m]===void 0)if(typeof u==="function")x[m]=u();else x[m]=u;return x},L=(C)=>{let P=()=>C;return P.set=(x)=>{},P.update=(x)=>{},P},V=(C)=>{let P,x=!1;return()=>{if(!x)try{P=C(),x=!0}catch{P=void 0}return P}},O=(C)=>{},F=(C)=>C(),w=(C)=>{},A=(C)=>{},R=(C)=>{},N=()=>{let C=Z.__stxServeContext,P=Z.__stxServeSearch??C?.search??"",x=C?.path??"";return{params:Z.params??{},query:Object.fromEntries(new URLSearchParams(P)),path:x,name:"",fullPath:x+P,hash:"",matched:[]}},M=()=>({push:(C)=>{},replace:(C)=>{},back:()=>{},forward:()=>{},go:(C)=>{}}),T=(C)=>{let P=Z.__stx_runtime_head||{};Z.__stx_runtime_head=q5(P,C||{})},I=(C)=>{T(C$(C||{}))},E=(C)=>({value:C}),D=(C)=>C,y=(C)=>({value:typeof C==="function"?C():C}),S=(C,P)=>{},k=(C)=>{},v=(C)=>{},g=(C)=>C?C():Promise.resolve(),f=(C)=>(P,...x)=>{},d=(C)=>{},p=(C,P)=>{},X0=(C,P)=>P,Z0=()=>({value:"light"}),V0=()=>L(!1),r=(C)=>L(!1),Q0=()=>L(!1),k0=()=>r("(prefers-color-scheme: dark)"),n0=()=>r("(prefers-color-scheme: light)"),B1=()=>r("(prefers-reduced-motion: reduce)"),e1=()=>r("(prefers-contrast: more)"),n={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:{}},J0=new Proxy(n,{get(C,P){if(P in C)return C[P];return},set(C,P,x){return C[P]=x,!0}}),B0={getElementById:()=>null,querySelector:()=>null,querySelectorAll:()=>[],createElement:()=>({}),createTextNode:()=>({}),body:{},head:{},documentElement:{},addEventListener:()=>{},removeEventListener:()=>{}},I0=console;try{let C=E7(X,Y),P=new Set(Object.keys(U)),x=(i)=>/^[a-z_$][\w$]*$/i.test(i),m=Object.keys(Z).filter((i)=>!P.has(i)&&i!=="props"&&x(i)),u=m.map((i)=>Z[i]),U0=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"]),R0=[],K1=[];for(let[i,h0]of Object.entries(U)){if(!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(i))continue;if(U0.has(i))continue;if(new RegExp(`(?:^|[\\s;{])(?:const|let|var|function)\\s+${i}\\b`).test(C))continue;R0.push(i),K1.push(h0)}let C0=fG(C).map((i)=>`module.exports.${i} = typeof ${i} !== 'undefined' ? ${i} : module.exports.${i};`).join(`
779
- `),o0=Z.params??{},b1=[],H1=[];for(let i=0;i<m.length;i++){if(m[i]==="params")continue;b1.push(m[i]),H1.push(u[i])}let z0=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",...R0,...b1,`return (async () => {
778
+ `),Z}async function d1($,Z,Y,J={}){if(!$.trim())return;let X;try{let C=new Bun.Transpiler({loader:"ts",target:"browser",define:c0()}),P=$.replace(/^\s*import\s+\w+\s+from\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,"");P=P.replace(/^\s*import\s+['"][^'"]*\.stx['"]\s*;?\s*$/gm,""),X=C.transformSync(P)}catch{X=B8($)}let Q={exports:{}},G=Q.exports,K=t5.cwd(),W={},q=[...X.matchAll(/require\s*\(\s*['"]([^'"]+)['"]\s*\)/g)||[]].map((C)=>C[1]).filter((C)=>!C.startsWith("node:")&&!C.startsWith(".")&&!["fs","path","os","child_process","crypto","http","https","url","util","stream","events","buffer","net","querystring","zlib","tls"].includes(C));for(let C of q)try{let P=_5.resolve(K,"node_modules",C),x=_5.join(P,"package.json"),m=JSON.parse(_0("fs").readFileSync(x,"utf8")),u=m.main||"index.js";if(m.exports){let j0=typeof m.exports==="string"?m.exports:m.exports["."];if(typeof j0==="string")u=j0;else if(j0?.bun)u=j0.bun;else if(j0?.import)u=j0.import;else if(j0?.default)u=j0.default}W[C]=await import(_5.resolve(P,u))}catch{}let z=(C)=>{if(W[C])return W[C];return _0(C)},U=Z.props||{},j=(C)=>{if(!C)return U;let P={};for(let[x,m]of Object.entries(C)){let u=U[x];if(u!==void 0)P[x]=u;else if(typeof m==="function")P[x]=m();else P[x]=m}return P};for(let[C,P]of Object.entries(U))Object.defineProperty(j,C,{value:P,enumerable:!0,configurable:!0,writable:!0});for(let C of["name","length","caller","arguments"]){if(Object.prototype.hasOwnProperty.call(U,C))continue;try{Object.defineProperty(j,C,{value:void 0,enumerable:!1,configurable:!0,writable:!0})}catch{}}let _=(C)=>{if(!C)return U;let P={...U};for(let[x,m]of Object.entries(C)){let u=m&&typeof m==="object"&&!Array.isArray(m)?m:{type:m};if(P[x]===void 0&&u.default!==void 0)P[x]=typeof u.default==="function"?u.default():u.default}return P},B=()=>Z.slots||{},H=(C,P)=>{let x={...C};for(let[m,u]of Object.entries(P))if(x[m]===void 0)if(typeof u==="function")x[m]=u();else x[m]=u;return x},L=(C)=>{let P=()=>C;return P.set=(x)=>{},P.update=(x)=>{},P},V=(C)=>{let P,x=!1;return()=>{if(!x)try{P=C(),x=!0}catch{P=void 0}return P}},O=(C)=>{},F=(C)=>C(),w=(C)=>{},A=(C)=>{},R=(C)=>{},N=()=>{let C=Z.__stxServeContext,P=Z.__stxServeSearch??C?.search??"",x=C?.path??"";return{params:Z.params??{},query:Object.fromEntries(new URLSearchParams(P)),path:x,name:"",fullPath:x+P,hash:"",matched:[]}},M=()=>({push:(C)=>{},replace:(C)=>{},back:()=>{},forward:()=>{},go:(C)=>{}}),T=(C)=>{let P=Z.__stx_runtime_head||{};Z.__stx_runtime_head=j5(P,C||{})},I=(C)=>{T(f$(C||{}))},E=(C)=>({value:C}),D=(C)=>C,y=(C)=>({value:typeof C==="function"?C():C}),S=(C,P)=>{},k=(C)=>{},v=(C)=>{},g=(C)=>C?C():Promise.resolve(),f=(C)=>(P,...x)=>{},d=(C)=>{},p=(C,P)=>{},Q0=(C,P)=>P,Y0=()=>({value:"light"}),w0=()=>L(!1),r=(C)=>L(!1),G0=()=>L(!1),b0=()=>r("(prefers-color-scheme: dark)"),o0=()=>r("(prefers-color-scheme: light)"),H1=()=>r("(prefers-reduced-motion: reduce)"),Z5=()=>r("(prefers-contrast: more)"),n={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:{}},X0=new Proxy(n,{get(C,P){if(P in C)return C[P];return},set(C,P,x){return C[P]=x,!0}}),H0={getElementById:()=>null,querySelector:()=>null,querySelectorAll:()=>[],createElement:()=>({}),createTextNode:()=>({}),body:{},head:{},documentElement:{},addEventListener:()=>{},removeEventListener:()=>{}},D0=console;try{let C=S7(X,Y),P=new Set(Object.keys(U)),x=(i)=>/^[a-z_$][\w$]*$/i.test(i),m=Object.keys(Z).filter((i)=>!P.has(i)&&i!=="props"&&x(i)),u=m.map((i)=>Z[i]),j0=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"]),N0=[],W1=[];for(let[i,d0]of Object.entries(U)){if(!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(i))continue;if(j0.has(i))continue;if(new RegExp(`(?:^|[\\s;{])(?:const|let|var|function)\\s+${i}\\b`).test(C))continue;N0.push(i),W1.push(d0)}let v0=pG(C).map((i)=>`module.exports.${i} = typeof ${i} !== 'undefined' ? ${i} : module.exports.${i};`).join(`
779
+ `),s0=Z.params??{},S1=[],O1=[];for(let i=0;i<m.length;i++){if(m[i]==="params")continue;S1.push(m[i]),O1.push(u[i])}let z0=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",...N0,...S1,`return (async () => {
780
780
  ${C}
781
- ${C0}
781
+ ${v0}
782
782
  return module.exports
783
- })()`)(Q,G,q,U,j,_,H,L,V,O,F,w,A,R,N,M,T,I,E,D,y,S,k,v,g,f,d,B,p,X0,Z0,V0,r,Q0,k0,n0,B1,e1,J0,B0,I0,n.confirm,n.alert,n.fetch,o0,...K1,...H1);if(J.preserveExisting){for(let[i,h0]of Object.entries(z0))if(!(i in Z)||Z[i]===void 0)Z[i]=h0}else Object.assign(Z,z0);for(let[i,h0]of Object.entries(U))if(!(i in Z))Z[i]=h0}catch(C){if(s5.env.STX_DEBUG){let P=C instanceof Error?C.message:String(C);console.warn(`[stx] server <script> did not execute in ${Y??"<unknown>"} \u2014 falling back to static extraction. Cause: ${P}`)}try{await mG(X,Z,Y)}catch(P){if(s5.env.STX_DEBUG){let x=P instanceof Error?P.message:String(P);console.warn(`[stx] fallback extraction also failed in ${Y??"<unknown>"}: ${x}`)}}}}function q8($){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 E7($,Z){let Y=Z?U5.dirname(Z):s5.cwd(),J=$.split(`
784
- `),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 W of J[Q])if(W==="{")K++;else if(W==="}")K--;if(K<=0)break}}Q++;continue}if(G.startsWith("definePageMeta(")){let K=0,W=!1;for(let z=Q;z<J.length&&!W;z++){let q=null,U=!1,j=J[z];for(let _=0;_<j.length;_++){let B=j[_];if(U){U=!1;continue}if(B==="\\"){U=!0;continue}if(q){if(B===q)q=null;continue}if(B==='"'||B==="'"||B==="`"){q=B;continue}if(B==="(")K++;else if(B===")"){if(K--,K===0){Q=z+1,W=!0;break}}}}if(!W)Q=J.length;continue}if(G.startsWith("import ")||G==="import"||G.startsWith("import{")){let K=G,W=0;while(!q8(K)&&Q+W+1<J.length)W++,K=`${K} ${J[Q+W].trim()}`;Q+=W;let z=K.match(/^import\s+(\w+)\s+from\s+['"](.+?)['"]/),q=K.match(/^import\s+\{([^}]*)\}\s+from\s+['"](.+?)['"]/),U=K.match(/^import\s+['"](.+?)['"]/),j=K,_=(B)=>{if(B.startsWith("."))return U5.resolve(Y,B);return B};if(z){let[,B,H]=z,L=_(H);X.push(`const ${B} = await import('${L}')`),X.push(`module.exports.${B} = ${B};`)}else if(q){let[,B,H]=q,L=B.trim(),V=_(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('${B}')`)}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=Q8(J,Q),{type:W,name:z,value:q}=K;X.push(`${W} ${z} = ${q};`),X.push(`module.exports.${z} = ${z};`),Q=K.nextIndex}else if(G.startsWith("export function ")||G.startsWith("export async function ")){let K=D7(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=Q8(J,Q),{type:W,name:z,value:q}=K;X.push(`${W} ${z} = ${q};`),X.push(`module.exports.${z} = ${z};`),Q=K.nextIndex}else if(G.startsWith("function ")||G.startsWith("async function ")){let K=D7(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"),W=[...J];W[Q]=K;let z=D7(W,Q);if(X.push(z.functionCode),z.name)X.push(`module.exports.default = ${z.name};`);Q=z.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 W=K[1],z=J[Q].replace(/^export\s+/,""),q=0,U=Q;for(;U<J.length;U++){let j=J[U];for(let _ of j)if(_==="{")q++;else if(_==="}")q--;if(U>Q)z+=`
785
- `+j;if(q<=0&&U>=Q)break}X.push(z),X.push(`module.exports.${W} = ${W};`),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 gG(X.join(`
786
- `),Y)}function gG($,Z){let Y=$.length,J="",X=0,Q=null,G=!1,K=!1,W=0;while(X<Y){let z=$[X],q=$[X+1];if(G){if(J+=z,z===`
787
- `)G=!1;X++;continue}if(K){if(J+=z,z==="*"&&q==="/"){J+=q,X+=2,K=!1;continue}X++;continue}if(!Q&&z==="/"&&q==="/"){G=!0,J+=z,X++;continue}if(!Q&&z==="/"&&q==="*"){K=!0,J+=z,X++;continue}if(Q){if(J+=z,z==="\\"){J+=q,X+=2;continue}if(z===Q&&Q!=="`"){Q=null,X++;continue}if(Q==="`"){if(z==="$"&&q==="{"){W++,J+=q,X+=2;continue}if(z==="`"){Q=null,X++;continue}}X++;continue}if(W>0){if(z==="{")W++;else if(z==="}")W--}if(z==='"'||z==="'"||z==="`"){Q=z,J+=z,X++;continue}if(z==="a"&&$.startsWith("await",X)){let U=hG($,X);if(U){let{quote:j,path:_,end:B}=U;if(_.startsWith(".")){let H=U5.resolve(Z,_);J+=`await import(${j}${H}${j})`,X=B;continue}}}J+=z,X++}return J}function hG($,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 U8($,Z){let Y=$[Z];if(Y!=="{"&&Y!=="[")return null;let X=x0($,Y,Y==="{"?"}":"]",Z);if(X===-1)return null;return{pattern:$.slice(Z,X+1),endPos:X+1}}function j8($){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=U8(Y,J);if(K){let W=j8(K.pattern);Z.push(...W),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 _8($){let Z=/^(?:export\s+)?(const|let|var)\s+([A-Za-z_$][\w$]*)/.exec($);if(!Z)return null;let Y=Z[0].length,J=(X)=>X===" "||X==="\t";while(Y<$.length&&J($[Y]))Y++;if($[Y]===":"){let X=0,Q=null;Y++;for(;Y<$.length;Y++){let G=$[Y];if(Q){if(G==="\\"){Y++;continue}if(G===Q)Q=null;continue}if(G==="'"||G==='"'||G==="`"){Q=G;continue}if(G==="("||G==="["||G==="{"||G==="<"){X++;continue}if(G===")"||G==="]"||G==="}"||G===">"){X--;continue}if(G==="="&&X<=0){let K=$[Y+1],W=$[Y-1];if(K!=="="&&K!==">"&&W!=="="&&W!=="!"&&W!=="<"&&W!==">")break}}if($[Y]!=="=")return null}while(Y<$.length&&J($[Y]))Y++;if($[Y]!=="=")return null;return{type:Z[1],name:Z[2],value:$.slice(Y+1).trim()}}function Q8($,Z){let Y=$[Z].trim(),J=_8(Y),X=J?[Y,J.type,J.name,J.value]:null;if(!X){let q=Y.match(/^(?:export\s+)?(const|let|var)\s+/);if(q){let U=Y.slice(q[0].length),j=Z;if((U.startsWith("{")||U.startsWith("["))&&!U.includes(U.startsWith("{")?"}":"]")){let B=U.startsWith("{")?"}":"]",H=U;for(let L=Z+1;L<$.length;L++)if(H+=" "+$[L].trim(),j=L,$[L].includes(B))break;U=H}let _=U8(U,0);if(_){let B=q[1],H=_.pattern,L=U.slice(_.endPos).trim();if(L.startsWith("=")){let V=L.slice(1).trim(),O=V,F=Math.max(j,Z);if(G8(V)){let N=K8($,F,V);O=N.value,F=N.nextIndex}else F=F+1;O=O.trim().replace(/;$/,"");let w=j8(H),A=`__stx_src_${Z}`,R=w.map((N)=>`module.exports.${N} = ${N};`).join(`
783
+ })()`)(Q,G,z,U,j,_,H,L,V,O,F,w,A,R,N,M,T,I,E,D,y,S,k,v,g,f,d,B,p,Q0,Y0,w0,r,G0,b0,o0,H1,Z5,X0,H0,D0,n.confirm,n.alert,n.fetch,s0,...W1,...O1);if(J.preserveExisting){for(let[i,d0]of Object.entries(z0))if(!(i in Z)||Z[i]===void 0)Z[i]=d0}else Object.assign(Z,z0);for(let[i,d0]of Object.entries(U))if(!(i in Z))Z[i]=d0}catch(C){if(t5.env.STX_DEBUG){let P=C instanceof Error?C.message:String(C);console.warn(`[stx] server <script> did not execute in ${Y??"<unknown>"} \u2014 falling back to static extraction. Cause: ${P}`)}try{await oG(X,Z,Y)}catch(P){if(t5.env.STX_DEBUG){let x=P instanceof Error?P.message:String(P);console.warn(`[stx] fallback extraction also failed in ${Y??"<unknown>"}: ${x}`)}}}}function H8($){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 S7($,Z){let Y=Z?_5.dirname(Z):t5.cwd(),J=$.split(`
784
+ `),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 W of J[Q])if(W==="{")K++;else if(W==="}")K--;if(K<=0)break}}Q++;continue}if(G.startsWith("definePageMeta(")){let K=0,W=!1;for(let q=Q;q<J.length&&!W;q++){let z=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(z){if(B===z)z=null;continue}if(B==='"'||B==="'"||B==="`"){z=B;continue}if(B==="(")K++;else if(B===")"){if(K--,K===0){Q=q+1,W=!0;break}}}}if(!W)Q=J.length;continue}if(G.startsWith("import ")||G==="import"||G.startsWith("import{")){let K=G,W=0;while(!H8(K)&&Q+W+1<J.length)W++,K=`${K} ${J[Q+W].trim()}`;Q+=W;let q=K.match(/^import\s+(\w+)\s+from\s+['"](.+?)['"]/),z=K.match(/^import\s+\{([^}]*)\}\s+from\s+['"](.+?)['"]/),U=K.match(/^import\s+['"](.+?)['"]/),j=K,_=(B)=>{if(B.startsWith("."))return _5.resolve(Y,B);return B};if(q){let[,B,H]=q,L=_(H);X.push(`const ${B} = await import('${L}')`),X.push(`module.exports.${B} = ${B};`)}else if(z){let[,B,H]=z,L=B.trim(),V=_(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('${B}')`)}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=z8(J,Q),{type:W,name:q,value:z}=K;X.push(`${W} ${q} = ${z};`),X.push(`module.exports.${q} = ${q};`),Q=K.nextIndex}else if(G.startsWith("export function ")||G.startsWith("export async function ")){let K=b7(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=z8(J,Q),{type:W,name:q,value:z}=K;X.push(`${W} ${q} = ${z};`),X.push(`module.exports.${q} = ${q};`),Q=K.nextIndex}else if(G.startsWith("function ")||G.startsWith("async function ")){let K=b7(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"),W=[...J];W[Q]=K;let q=b7(W,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 W=K[1],q=J[Q].replace(/^export\s+/,""),z=0,U=Q;for(;U<J.length;U++){let j=J[U];for(let _ of j)if(_==="{")z++;else if(_==="}")z--;if(U>Q)q+=`
785
+ `+j;if(z<=0&&U>=Q)break}X.push(q),X.push(`module.exports.${W} = ${W};`),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 lG(X.join(`
786
+ `),Y)}function lG($,Z){let Y=$.length,J="",X=0,Q=null,G=!1,K=!1,W=0;while(X<Y){let q=$[X],z=$[X+1];if(G){if(J+=q,q===`
787
+ `)G=!1;X++;continue}if(K){if(J+=q,q==="*"&&z==="/"){J+=z,X+=2,K=!1;continue}X++;continue}if(!Q&&q==="/"&&z==="/"){G=!0,J+=q,X++;continue}if(!Q&&q==="/"&&z==="*"){K=!0,J+=q,X++;continue}if(Q){if(J+=q,q==="\\"){J+=z,X+=2;continue}if(q===Q&&Q!=="`"){Q=null,X++;continue}if(Q==="`"){if(q==="$"&&z==="{"){W++,J+=z,X+=2;continue}if(q==="`"){Q=null,X++;continue}}X++;continue}if(W>0){if(q==="{")W++;else if(q==="}")W--}if(q==='"'||q==="'"||q==="`"){Q=q,J+=q,X++;continue}if(q==="a"&&$.startsWith("await",X)){let U=cG($,X);if(U){let{quote:j,path:_,end:B}=U;if(_.startsWith(".")){let H=_5.resolve(Z,_);J+=`await import(${j}${H}${j})`,X=B;continue}}}J+=q,X++}return J}function cG($,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 O8($,Z){let Y=$[Z];if(Y!=="{"&&Y!=="[")return null;let X=f0($,Y,Y==="{"?"}":"]",Z);if(X===-1)return null;return{pattern:$.slice(Z,X+1),endPos:X+1}}function L8($){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=O8(Y,J);if(K){let W=L8(K.pattern);Z.push(...W),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 F8($){let Z=/^(?:export\s+)?(const|let|var)\s+([A-Za-z_$][\w$]*)/.exec($);if(!Z)return null;let Y=Z[0].length,J=(X)=>X===" "||X==="\t";while(Y<$.length&&J($[Y]))Y++;if($[Y]===":"){let X=0,Q=null;Y++;for(;Y<$.length;Y++){let G=$[Y];if(Q){if(G==="\\"){Y++;continue}if(G===Q)Q=null;continue}if(G==="'"||G==='"'||G==="`"){Q=G;continue}if(G==="("||G==="["||G==="{"||G==="<"){X++;continue}if(G===")"||G==="]"||G==="}"||G===">"){X--;continue}if(G==="="&&X<=0){let K=$[Y+1],W=$[Y-1];if(K!=="="&&K!==">"&&W!=="="&&W!=="!"&&W!=="<"&&W!==">")break}}if($[Y]!=="=")return null}while(Y<$.length&&J($[Y]))Y++;if($[Y]!=="=")return null;return{type:Z[1],name:Z[2],value:$.slice(Y+1).trim()}}function z8($,Z){let Y=$[Z].trim(),J=F8(Y),X=J?[Y,J.type,J.name,J.value]:null;if(!X){let z=Y.match(/^(?:export\s+)?(const|let|var)\s+/);if(z){let U=Y.slice(z[0].length),j=Z;if((U.startsWith("{")||U.startsWith("["))&&!U.includes(U.startsWith("{")?"}":"]")){let B=U.startsWith("{")?"}":"]",H=U;for(let L=Z+1;L<$.length;L++)if(H+=" "+$[L].trim(),j=L,$[L].includes(B))break;U=H}let _=O8(U,0);if(_){let B=z[1],H=_.pattern,L=U.slice(_.endPos).trim();if(L.startsWith("=")){let V=L.slice(1).trim(),O=V,F=Math.max(j,Z);if(U8(V)){let N=j8($,F,V);O=N.value,F=N.nextIndex}else F=F+1;O=O.trim().replace(/;$/,"");let w=L8(H),A=`__stx_src_${Z}`,R=w.map((N)=>`module.exports.${N} = ${N};`).join(`
788
788
  `);return{type:B,name:A,value:`${O}; ${B} ${H} = ${A};
789
- ${R}`,nextIndex:F}}}}throw Error(`Failed to parse variable declaration: ${Y}`)}let[,Q,G,K]=X,W=K,z=Z;if(G8(K)){let q=K8($,Z,K);W=q.value,z=q.nextIndex}else z=Z+1;while(z<$.length){let q=$[z].trim();if(q.startsWith(".")||q.startsWith("?."))W+=`
790
- ${$[z]}`,z++;else break}return W=W.trim().replace(/;$/,""),{type:Q,name:G,value:W,nextIndex:z}}function D7($,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(dG(Y)){let K=uG($,Z,Q);Q=K.functionCode,G=K.nextIndex}else G=Z+1;return{name:X,functionCode:Q,nextIndex:G}}function G8($){let Z=$.trim();if(Z.startsWith("{"))return x0(Z,"{","}",0)===-1;if(Z.startsWith("["))return x0(Z,"[","]",0)===-1;return!B8(Z)}function B8($){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 dG($){let Z=$.indexOf("{");if(Z===-1)return!0;return x0($,"{","}",Z)===-1}function K8($,Z,Y){let J=Y,X=Z+1;while(X<$.length&&!B8(J)){let Q=$[X];J+=`
789
+ ${R}`,nextIndex:F}}}}throw Error(`Failed to parse variable declaration: ${Y}`)}let[,Q,G,K]=X,W=K,q=Z;if(U8(K)){let z=j8($,Z,K);W=z.value,q=z.nextIndex}else q=Z+1;while(q<$.length){let z=$[q].trim();if(z.startsWith(".")||z.startsWith("?."))W+=`
790
+ ${$[q]}`,q++;else break}return W=W.trim().replace(/;$/,""),{type:Q,name:G,value:W,nextIndex:q}}function b7($,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(iG(Y)){let K=nG($,Z,Q);Q=K.functionCode,G=K.nextIndex}else G=Z+1;return{name:X,functionCode:Q,nextIndex:G}}function U8($){let Z=$.trim();if(Z.startsWith("{"))return f0(Z,"{","}",0)===-1;if(Z.startsWith("["))return f0(Z,"[","]",0)===-1;return!V8(Z)}function V8($){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 iG($){let Z=$.indexOf("{");if(Z===-1)return!0;return f0($,"{","}",Z)===-1}function j8($,Z,Y){let J=Y,X=Z+1;while(X<$.length&&!V8(J)){let Q=$[X];J+=`
791
791
  ${Q}`,X++}while(X<$.length){let Q=$[X].trim();if(Q.startsWith(".")||Q.startsWith("?."))J+=`
792
- ${$[X]}`,X++;else break}return{value:J,nextIndex:X}}function uG($,Z,Y){let J=Y,X=Z+1;while(X<$.length){let Q=J.indexOf("{");if(Q!==-1){if(x0(J,"{","}",Q)!==-1)break}let G=$[X];J+=`
793
- ${G}`,X++}return{functionCode:J,nextIndex:X}}function W8($,Z){let Y=$0($,Z)??$0(`(${$})`,Z);if(Y!==void 0)return Y;if(!/\bprocess\b/.test($))return;let J={...Z,process:Object.freeze({env:{...s5.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 W=K.trim().replace(/;$/,""),z=W8(W,Z);if(z!==void 0)Z[G]=z}catch(W){console.warn(`Failed to parse export ${G} in fallback:`,W)}}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 W=K.trim().replace(/;$/,""),z=W8(W,Z);if(z!==void 0)Z[G]=z}catch{}}}function H8($){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 O8($){let Z=$.trim();if(!Z)return!1;return/(?:const|let|var|function)\s+\w+/.test(Z)}var r5=b(()=>{o5();S1();w0()});var k7={};a(k7,{renderSlot:()=>F8,processSlots:()=>w8,parseSlots:()=>L8,parseSlotElement:()=>nG,extractSlotContent:()=>rG,applySlots:()=>aG});function pG($,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 cG($,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 iG($){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=cG($,Q+1);if(G===-1)break;let K=$.slice(Q,G),W=K.match(/^<\s*(\/?)\s*([a-zA-Z][\w-]*)/);if(!W){X=G;continue}let z=W[1]==="/",q=W[2].toLowerCase();if(z){let j=Y.lastIndexOf(q);if(j!==-1)Y.splice(j);X=G;continue}if(q==="template"&&Y.length===0){let j=K.match(J);if(j){let _=pG($,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)&&!lG.has(q)){if(Y.push(q),q==="script"||q==="style"){let j=$.toLowerCase().indexOf(`</${q}>`,G);if(j!==-1){X=j;continue}}}X=G}return Z}function L8($){let Z={default:"",named:new Map},Y=$,J=iG($);for(let W of J)Z.named.set(W.slotName,{name:W.slotName,content:W.content,propsBinding:W.propsBinding});J.sort((W,z)=>z.start-W.start);for(let W of J)Y=Y.slice(0,W.start)+Y.slice(W.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[W,z,q,U,j,_]=G,B=q.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=j.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),L=(B+H).trim(),V=`<${z}${L?" "+L:""}>${_}</${z}>`;X.push({start:G.index,end:G.index+W.length,slotName:U,element:V})}let K=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*?)\/>/gi;while((G=K.exec(Y))!==null){let[W,z,q,U,j]=G,_=q.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),B=j.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=(_+B).trim(),L=`<${z}${H?" "+H:""} />`;X.push({start:G.index,end:G.index+W.length,slotName:U,element:L})}X.sort((W,z)=>z.start-W.start);for(let W of X){let z=Z.named.get(W.slotName);if(z)z.content+=W.element;else Z.named.set(W.slotName,{name:W.slotName,content:W.element});Y=Y.slice(0,W.start)+Y.slice(W.end)}return Z.default=Y.trim(),Z}function nG($){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 F8($,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((W)=>W.trim()).filter(Boolean);for(let W of K){let[z,q]=W.split(":").map((j)=>j.trim()),U=q||z;if(Z[z]!==void 0)G[U]=Z[z]}}else G[Q]=Z;X=oG(X,G)}return X}function oG($,Z){return $.replace(/\{\{\s*([^}]+)\s*\}\}/g,(Y,J)=>{try{let X=J.trim(),Q=V8(X,Z);return r0(String(Q??""))}catch{return`{{ ${J} }}`}})}function V8($,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(!K0($))return;return W0($,Object.keys(Z))(...Object.values(Z))}catch{return}}async function w8($,Z,Y){let J=$;J=await sG(J,/<slot\s+name\s*=\s*["']([^"']+)["']([^>]*?)(?:\/>|>([\s\S]*?)<\/slot>)/gi,async(G,K,W,z)=>{let q=Z.named.get(K),U=z?.trim()||"",j=W||"",_={},B=/:([a-zA-Z_$][\w$-]*)\s*=\s*["']([^"']+)["']/g,H;while((H=B.exec(j))!==null){let L=H[1],V=H[2];_[L]=V8(V,Y)}return await F8(q,_,U,Y)});let Q=/<slot\s*(?:\/>|>([\s\S]*?)<\/slot>)/gi;return J=J.replace(Q,(G,K)=>{if(G.includes("name="))return G;let W=K?.trim()||"";return Z.default||W}),J}async function sG($,Z,Y){let J=[],X=[];$.replace(Z,(K,...W)=>{let z=W[W.length-2];return X.push({match:K,index:z}),J.push(Y(K,...W.slice(0,-2))),K});let Q=await Promise.all(J),G=$;for(let K=X.length-1;K>=0;K--){let{match:W,index:z}=X[K];G=G.slice(0,z)+Q[K]+G.slice(z+W.length)}return G}function rG($){let Z=L8($);return{defaultSlot:Z.default,namedSlots:Z.named}}async function aG($,Z,Y,J){return await w8($,{default:Z,named:Y},J)}var lG;var b7=b(()=>{J1();w0();lG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"])});function R1($,Z){let Y=tG($,Z);return Y.ok?{expression:Y.expression,endPos:Y.endPos}:null}function tG($,Z){let Y=Z;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!=="(")return{ok:!1,reason:"missing-open-paren",pos:Y};let J=x0($,"(",")",Y);if(J===-1)return{ok:!1,reason:"unclosed-paren",pos:Y};return{ok:!0,expression:$.slice(Y+1,J),endPos:J+1}}function eG($,Z){let Y=$.lastIndexOf("<",Z);if(Y===-1)return!1;return Y>$.lastIndexOf(">",Z)}function h1($,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 W=G.exec($),z=K.exec($),q=W?W.index:1/0,U=z?z.index:1/0;if(q<U)X++,Q=q+W[0].length;else if(U<1/0){if(X--,X===0)return U;Q=U+z[0].length}else break}return-1}function A8($,Z){let Y=$.slice(Z).match(/^@if\s*/);if(!Y)return null;let J=Z+Y[0].length,X=R1($,J);if(!X)return null;let Q=X.endPos,G=h1($,"if","endif",Q);if(G===-1)return null;let K=$.slice(Q,G),W=[],z=0,q="if",U=X.expression,j=0,_=0;while(z<K.length){let B=K.indexOf("@",z);if(B===-1)break;z=B;let H=K.substring(B);if(eG(K,B)){z++;continue}if(/^@if\s*\(/.test(H)){_++,z++;continue}if(/^@endif(?![a-z])/.test(H)){_--,z+=6;continue}if(_===0){let L=H.match(/^@elseif\s*/);if(L){W.push({type:q,condition:U,content:K.substring(j,z),start:Q+j,end:Q+z});let V=z+L[0].length,O=R1(K,V);if(!O){z++;continue}q="elseif",U=O.expression,z=O.endPos,j=z;continue}else if(/^@else(?![a-z])/.test(H)){W.push({type:q,condition:U,content:K.substring(j,z),start:Q+j,end:Q+z}),q="else",U=void 0,z+=5,j=z;continue}}z++}return W.push({type:q,condition:U,content:K.slice(j),start:Q+j,end:Q+K.length}),{fullMatch:$.slice(Z,G+6),branches:W,start:Z,end:G+6}}function a5($){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=A8($,J.index);if(Q)Z.push(Q),Y.lastIndex=Q.end;J=Y.exec($)}return Z}function x$($,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,W=K+Q[0].length-1,z=x0($,"(",")",W);if(z===-1){Q=X.exec($);continue}let q=$.slice(W+1,z),U=z+1,j=h1($,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:q,content:_,start:K,end:B}),X.lastIndex=B,Q=X.exec($)}return J}function S7($,Z){let Y=$.slice(Z).match(/^@switch\s*/);if(!Y)return null;let J=Z+Y[0].length,X=R1($,J);if(!X)return null;let Q=X.endPos,G=h1($,"switch","endswitch",Q);if(G===-1)return null;let K=$.slice(Q,G),W=[],z=0,q=null,U=0;while(z<K.length){let j=K.slice(z),_=j.match(/^@switch\s*\(/),B=j.match(/^@endswitch(?![a-z])/);if(_){if(U++,q)q.content+=_[0];z+=_[0].length;continue}if(B){if(U--,q)q.content+=B[0];z+=B[0].length;continue}if(U>0){if(q)q.content+=K[z];z++;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(q)W.push(q);let O=z+H[0].length,F=R1(K,O);if(!F){z++;continue}q={type:"case",value:F.expression,content:""},z=F.endPos}else if(L&&j.startsWith("@default")){if(q)W.push(q);q={type:"default",content:""},z+=L[0].length}else if(V&&j.startsWith("@break"))z+=V[0].length;else{if(q)q.content+=K[z];z++}}if(q)W.push(q);return{fullMatch:$.slice(Z,G+10),expression:X.expression,cases:W,start:Z,end:G+10}}var R8=()=>{};var N8=()=>{};var f$=b(()=>{R8();N8()});function d$($){let Z=$,Y=new Set,J=new Set,X=()=>{if(d0)J.add(d0);return Z};return X.set=(Q)=>{if(!Object.is(Q,Z)){let G=Z;if(Z=Q,Y.forEach((K)=>K(Z,G)),t5)J.forEach((K)=>h$.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 u$($){let Z,Y=!0,J=new Set,X=()=>{if(!Y)if(Y=!0,t5)J.forEach((G)=>h$.add(G));else J.forEach((G)=>G())},Q=()=>{if(d0)J.add(d0);if(Y){let G=d0;d0=X,g$.push(X);try{Z=$()}finally{g$.pop(),d0=G}Y=!1}return Z};return Object.defineProperty(Q,"_isDerived",{value:!0,writable:!1}),Object.defineProperty(Q,"value",{get:()=>Q(),configurable:!0}),Q}function m$($,Z={}){let Y,J=!1,X=()=>{if(J)return;if(Y)Y(),Y=void 0;let Q=d0;d0=X,g$.push(X);try{Y=$()}finally{g$.pop(),d0=Q}};if(Z.immediate!==!1)X();return()=>{if(J=!0,Y)Y()}}function y7($){if(t5){$();return}t5=!0;try{$()}finally{t5=!1,h$.forEach((Z)=>Z()),h$.clear()}}function P7($){JK.push($)}function C7($){XK.push($)}function p$($){return typeof $==="function"&&$._isSignal===!0}function l$($){return typeof $==="function"&&$._isDerived===!0}function v7($){if(p$($)||l$($))return $();return $}function c$($){let Z=d0;d0=null;try{return $()}finally{d0=Z}}function QK($,Z){let Y=typeof $==="function"?$:()=>$,J=d$([]),X=u$(()=>J().reduce((K,W)=>Z(K,W.action),Y())),Q=!1;return m$(()=>{if(Y(),!Q){Q=!0;return}if(c$(()=>J().length))J.set([])}),[X,(K,W)=>{let z={action:K};J.set([...J(),z]);let q=()=>{let U=J().filter((j)=>j!==z);if(U.length!==J().length)J.set(U)};if(W&&typeof W.then==="function")Promise.resolve(W).then(q,q);return q}]}var d0=null,g$,t5=!1,h$,JK,XK;var x7=b(()=>{g$=[],h$=new Set,JK=[],XK=[]});var T8={};a(T8,{useOptimistic:()=>QK,untrack:()=>v7,state:()=>d$,peek:()=>c$,onMount:()=>P7,onDestroy:()=>C7,isSignal:()=>p$,isDerived:()=>l$,generateSignalsRuntimeDev:()=>i$,generateSignalsRuntime:()=>M8,effect:()=>m$,derived:()=>u$,default:()=>KK,batch:()=>y7});function M8(){try{let $=GK(i$()),Y=new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($);return Y=Y.replace(/\}(var |let |const |function )/g,"};$1"),Y}catch{return i$()}}function GK($){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 W=K;G++;while(G<$.length&&$[G]!==W){if($[G]==="\\")G++;G++}G++;continue}if(K==="(")Q++;else if(K===")")Q--;G++}Z.push("0"),Y=G}return Z.join("")}function i$(){return`
792
+ ${$[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(f0(J,"{","}",Q)!==-1)break}let G=$[X];J+=`
793
+ ${G}`,X++}return{functionCode:J,nextIndex:X}}function _8($,Z){let Y=Z0($,Z)??Z0(`(${$})`,Z);if(Y!==void 0)return Y;if(!/\bprocess\b/.test($))return;let J={...Z,process:Object.freeze({env:{...t5.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 oG($,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 W=K.trim().replace(/;$/,""),q=_8(W,Z);if(q!==void 0)Z[G]=q}catch(W){console.warn(`Failed to parse export ${G} in fallback:`,W)}}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 W=K.trim().replace(/;$/,""),q=_8(W,Z);if(q!==void 0)Z[G]=q}catch{}}}function w8($){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 A8($){let Z=$.trim();if(!Z)return!1;return/(?:const|let|var|function)\s+\w+/.test(Z)}var e5=b(()=>{a5();y1();A0()});var y7={};a(y7,{renderSlot:()=>N8,processSlots:()=>T8,parseSlots:()=>R8,parseSlotElement:()=>eG,extractSlotContent:()=>YK,applySlots:()=>JK});function sG($,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 aG($,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 tG($){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=aG($,Q+1);if(G===-1)break;let K=$.slice(Q,G),W=K.match(/^<\s*(\/?)\s*([a-zA-Z][\w-]*)/);if(!W){X=G;continue}let q=W[1]==="/",z=W[2].toLowerCase();if(q){let j=Y.lastIndexOf(z);if(j!==-1)Y.splice(j);X=G;continue}if(z==="template"&&Y.length===0){let j=K.match(J);if(j){let _=sG($,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)&&!rG.has(z)){if(Y.push(z),z==="script"||z==="style"){let j=$.toLowerCase().indexOf(`</${z}>`,G);if(j!==-1){X=j;continue}}}X=G}return Z}function R8($){let Z={default:"",named:new Map},Y=$,J=tG($);for(let W of J)Z.named.set(W.slotName,{name:W.slotName,content:W.content,propsBinding:W.propsBinding});J.sort((W,q)=>q.start-W.start);for(let W of J)Y=Y.slice(0,W.start)+Y.slice(W.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[W,q,z,U,j,_]=G,B=z.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+W.length,slotName:U,element:V})}let K=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*?)\/>/gi;while((G=K.exec(Y))!==null){let[W,q,z,U,j]=G,_=z.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+W.length,slotName:U,element:L})}X.sort((W,q)=>q.start-W.start);for(let W of X){let q=Z.named.get(W.slotName);if(q)q.content+=W.element;else Z.named.set(W.slotName,{name:W.slotName,content:W.element});Y=Y.slice(0,W.start)+Y.slice(W.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 N8($,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((W)=>W.trim()).filter(Boolean);for(let W of K){let[q,z]=W.split(":").map((j)=>j.trim()),U=z||q;if(Z[q]!==void 0)G[U]=Z[q]}}else G[Q]=Z;X=$K(X,G)}return X}function $K($,Z){return $.replace(/\{\{\s*([^}]+)\s*\}\}/g,(Y,J)=>{try{let X=J.trim(),Q=M8(X,Z);return a0(String(Q??""))}catch{return`{{ ${J} }}`}})}function M8($,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(!W0($))return;return q0($,Object.keys(Z))(...Object.values(Z))}catch{return}}async function T8($,Z,Y){let J=$;J=await ZK(J,/<slot\s+name\s*=\s*["']([^"']+)["']([^>]*?)(?:\/>|>([\s\S]*?)<\/slot>)/gi,async(G,K,W,q)=>{let z=Z.named.get(K),U=q?.trim()||"",j=W||"",_={},B=/:([a-zA-Z_$][\w$-]*)\s*=\s*["']([^"']+)["']/g,H;while((H=B.exec(j))!==null){let L=H[1],V=H[2];_[L]=M8(V,Y)}return await N8(z,_,U,Y)});let Q=/<slot\s*(?:\/>|>([\s\S]*?)<\/slot>)/gi;return J=J.replace(Q,(G,K)=>{if(G.includes("name="))return G;let W=K?.trim()||"";return Z.default||W}),J}async function ZK($,Z,Y){let J=[],X=[];$.replace(Z,(K,...W)=>{let q=W[W.length-2];return X.push({match:K,index:q}),J.push(Y(K,...W.slice(0,-2))),K});let Q=await Promise.all(J),G=$;for(let K=X.length-1;K>=0;K--){let{match:W,index:q}=X[K];G=G.slice(0,q)+Q[K]+G.slice(q+W.length)}return G}function YK($){let Z=R8($);return{defaultSlot:Z.default,namedSlots:Z.named}}async function JK($,Z,Y,J){return await T8($,{default:Z,named:Y},J)}var rG;var P7=b(()=>{X1();A0();rG=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"])});function N1($,Z){let Y=XK($,Z);return Y.ok?{expression:Y.expression,endPos:Y.endPos}:null}function XK($,Z){let Y=Z;while(Y<$.length&&/\s/.test($[Y]))Y++;if($[Y]!=="(")return{ok:!1,reason:"missing-open-paren",pos:Y};let J=f0($,"(",")",Y);if(J===-1)return{ok:!1,reason:"unclosed-paren",pos:Y};return{ok:!0,expression:$.slice(Y+1,J),endPos:J+1}}function QK($,Z){let Y=$.lastIndexOf("<",Z);if(Y===-1)return!1;return Y>$.lastIndexOf(">",Z)}function u1($,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 W=G.exec($),q=K.exec($),z=W?W.index:1/0,U=q?q.index:1/0;if(z<U)X++,Q=z+W[0].length;else if(U<1/0){if(X--,X===0)return U;Q=U+q[0].length}else break}return-1}function I8($,Z){let Y=$.slice(Z).match(/^@if\s*/);if(!Y)return null;let J=Z+Y[0].length,X=N1($,J);if(!X)return null;let Q=X.endPos,G=u1($,"if","endif",Q);if(G===-1)return null;let K=$.slice(Q,G),W=[],q=0,z="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(QK(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){W.push({type:z,condition:U,content:K.substring(j,q),start:Q+j,end:Q+q});let V=q+L[0].length,O=N1(K,V);if(!O){q++;continue}z="elseif",U=O.expression,q=O.endPos,j=q;continue}else if(/^@else(?![a-z])/.test(H)){W.push({type:z,condition:U,content:K.substring(j,q),start:Q+j,end:Q+q}),z="else",U=void 0,q+=5,j=q;continue}}q++}return W.push({type:z,condition:U,content:K.slice(j),start:Q+j,end:Q+K.length}),{fullMatch:$.slice(Z,G+6),branches:W,start:Z,end:G+6}}function $$($){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=I8($,J.index);if(Q)Z.push(Q),Y.lastIndex=Q.end;J=Y.exec($)}return Z}function h$($,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,W=K+Q[0].length-1,q=f0($,"(",")",W);if(q===-1){Q=X.exec($);continue}let z=$.slice(W+1,q),U=q+1,j=u1($,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:z,content:_,start:K,end:B}),X.lastIndex=B,Q=X.exec($)}return J}function C7($,Z){let Y=$.slice(Z).match(/^@switch\s*/);if(!Y)return null;let J=Z+Y[0].length,X=N1($,J);if(!X)return null;let Q=X.endPos,G=u1($,"switch","endswitch",Q);if(G===-1)return null;let K=$.slice(Q,G),W=[],q=0,z=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++,z)z.content+=_[0];q+=_[0].length;continue}if(B){if(U--,z)z.content+=B[0];q+=B[0].length;continue}if(U>0){if(z)z.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(z)W.push(z);let O=q+H[0].length,F=N1(K,O);if(!F){q++;continue}z={type:"case",value:F.expression,content:""},q=F.endPos}else if(L&&j.startsWith("@default")){if(z)W.push(z);z={type:"default",content:""},q+=L[0].length}else if(V&&j.startsWith("@break"))q+=V[0].length;else{if(z)z.content+=K[q];q++}}if(z)W.push(z);return{fullMatch:$.slice(Z,G+10),expression:X.expression,cases:W,start:Z,end:G+10}}var D8=()=>{};var E8=()=>{};var d$=b(()=>{D8();E8()});function p$($){let Z=$,Y=new Set,J=new Set,X=()=>{if(u0)J.add(u0);return Z};return X.set=(Q)=>{if(!Object.is(Q,Z)){let G=Z;if(Z=Q,Y.forEach((K)=>K(Z,G)),Z$)J.forEach((K)=>m$.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 l$($){let Z,Y=!0,J=new Set,X=()=>{if(!Y)if(Y=!0,Z$)J.forEach((G)=>m$.add(G));else J.forEach((G)=>G())},Q=()=>{if(u0)J.add(u0);if(Y){let G=u0;u0=X,u$.push(X);try{Z=$()}finally{u$.pop(),u0=G}Y=!1}return Z};return Object.defineProperty(Q,"_isDerived",{value:!0,writable:!1}),Object.defineProperty(Q,"value",{get:()=>Q(),configurable:!0}),Q}function c$($,Z={}){let Y,J=!1,X=()=>{if(J)return;if(Y)Y(),Y=void 0;let Q=u0;u0=X,u$.push(X);try{Y=$()}finally{u$.pop(),u0=Q}};if(Z.immediate!==!1)X();return()=>{if(J=!0,Y)Y()}}function v7($){if(Z$){$();return}Z$=!0;try{$()}finally{Z$=!1,m$.forEach((Z)=>Z()),m$.clear()}}function x7($){qK.push($)}function f7($){zK.push($)}function i$($){return typeof $==="function"&&$._isSignal===!0}function n$($){return typeof $==="function"&&$._isDerived===!0}function g7($){if(i$($)||n$($))return $();return $}function o$($){let Z=u0;u0=null;try{return $()}finally{u0=Z}}function UK($,Z){let Y=typeof $==="function"?$:()=>$,J=p$([]),X=l$(()=>J().reduce((K,W)=>Z(K,W.action),Y())),Q=!1;return c$(()=>{if(Y(),!Q){Q=!0;return}if(o$(()=>J().length))J.set([])}),[X,(K,W)=>{let q={action:K};J.set([...J(),q]);let z=()=>{let U=J().filter((j)=>j!==q);if(U.length!==J().length)J.set(U)};if(W&&typeof W.then==="function")Promise.resolve(W).then(z,z);return z}]}var u0=null,u$,Z$=!1,m$,qK,zK;var h7=b(()=>{u$=[],m$=new Set,qK=[],zK=[]});var b8={};a(b8,{useOptimistic:()=>UK,untrack:()=>g7,state:()=>p$,peek:()=>o$,onMount:()=>x7,onDestroy:()=>f7,isSignal:()=>i$,isDerived:()=>n$,generateSignalsRuntimeDev:()=>s$,generateSignalsRuntime:()=>k8,effect:()=>c$,derived:()=>l$,default:()=>_K,batch:()=>v7});function k8(){try{let $=jK(s$()),Y=new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($);return Y=Y.replace(/\}(var |let |const |function )/g,"};$1"),Y}catch{return s$()}}function jK($){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 W=K;G++;while(G<$.length&&$[G]!==W){if($[G]==="\\")G++;G++}G++;continue}if(K==="(")Q++;else if(K===")")Q--;G++}Z.push("0"),Y=G}return Z.join("")}function s$(){return`
794
794
  // STX Signals Runtime (Development Build)
795
795
  console.log('[stx] signals runtime loading');
796
796
  // Pre-initialization shim: capture onMount/onDestroy calls made before the runtime IIFE runs
@@ -7349,54 +7349,54 @@ catch (e) { console.warn('[stx] mount callback error:', e); }
7349
7349
  }
7350
7350
  }
7351
7351
  })();
7352
- `}var KK;var I8=b(()=>{x7();x7();KK={state:d$,derived:u$,effect:m$,batch:y7,onMount:P7,onDestroy:C7,isSignal:p$,isDerived:l$,untrack:v7,peek:c$,generateSignalsRuntime:M8,generateSignalsRuntimeDev:i$}});var f7={};a(f7,{templateCache:()=>D8,readFileCached:()=>WK,invalidateFileCacheByDir:()=>qK,invalidateFileCache:()=>zK,hashFilePath:()=>e5,getCachedSignalsRuntime:()=>_K,getCachedRouterScript:()=>BK,clearDevCaches:()=>HK,checkCache:()=>OK,cacheTemplate:()=>LK,__setSignalsGeneratorsForTest:()=>jK});import N1 from"fs";import j5 from"path";async function WK($){let Y;for(let J=0;J<3;J++)try{let Q=(await N1.promises.stat($)).mtime.getTime(),G=d1.get($);if(G&&G.mtime===Q)return G.content;let K=await Bun.file($).text(),z=(await N1.promises.stat($)).mtime.getTime();if(z!==Q)continue;return d1.set($,{content:K,mtime:z}),K}catch(X){Y=X;break}throw d1.delete($),Error(`File not found: ${$}${Y?` (${Y.message})`:""}`)}function zK($){d1.delete($)}function qK($){for(let Z of d1.keys())if(Z.startsWith($))d1.delete(Z)}function jK($){E8=$}async function _K($=!1){let Z=E8??await Promise.resolve().then(() => (I8(),T8));if($)return Z.generateSignalsRuntimeDev();if(n$===null)n$=Z.generateSignalsRuntime();return n$}async function BK(){if(o$===null){let{getRouterScript:$}=await import("stx-router");o$=$()}return o$}function HK(){d1.clear(),b8(),n$=null,UK=null,o$=null}function k8($){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 OK($,Z){try{if(!Z.cachePath)return null;let Y=j5.resolve(Z.cachePath),J=j5.join(Y,`${e5($)}.html`),X=j5.join(Y,`${e5($)}.meta.json`);if(!await c(J)||!await c(X))return null;let Q=await Bun.file(X).text(),G=JSON.parse(Q);if(G.cacheVersion!==Z.cacheVersion)return null;if(G.optionsSignature!==k8(Z))return null;if((await N1.promises.stat($)).mtime.getTime()>G.mtime)return null;for(let W of G.dependencies)if(await c(W)){if((await N1.promises.stat(W)).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 LK($,Z,Y,J){try{if(!J.cachePath)return;let X=j5.resolve(J.cachePath);await N1.promises.mkdir(X,{recursive:!0});let Q=j5.join(X,`${e5($)}.html`),G=j5.join(X,`${e5($)}.meta.json`),K=await N1.promises.stat($);await Bun.write(Q,Z);let W={sourcePath:$,mtime:K.mtime.getTime(),dependencies:Array.from(Y),cacheVersion:J.cacheVersion,optionsSignature:k8(J),generatedAt:Date.now()};await Bun.write(G,JSON.stringify(W,null,2)),D8.set($,{output:Z,mtime:K.mtime.getTime(),dependencies:Y})}catch(X){console.warn(`Failed to cache template ${$}:`,X)}}function e5($){return new Bun.CryptoHasher("sha1").update($).digest("hex").substring(0,FK)}var D8,d1,n$=null,UK=null,E8=null,o$=null,FK=16;var g7=b(()=>{N0();D8=new Map,d1=new Map});function S8($){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]+`
7352
+ `}var _K;var S8=b(()=>{h7();h7();_K={state:p$,derived:l$,effect:c$,batch:v7,onMount:x7,onDestroy:f7,isSignal:i$,isDerived:n$,untrack:g7,peek:o$,generateSignalsRuntime:k8,generateSignalsRuntimeDev:s$}});var d7={};a(d7,{templateCache:()=>y8,readFileCached:()=>BK,invalidateFileCacheByDir:()=>OK,invalidateFileCache:()=>HK,hashFilePath:()=>Y$,getCachedSignalsRuntime:()=>VK,getCachedRouterScript:()=>wK,clearDevCaches:()=>AK,checkCache:()=>RK,cacheTemplate:()=>NK,__setSignalsGeneratorsForTest:()=>FK});import M1 from"fs";import B5 from"path";async function BK($){let Y;for(let J=0;J<3;J++)try{let Q=(await M1.promises.stat($)).mtime.getTime(),G=m1.get($);if(G&&G.mtime===Q)return G.content;let K=await Bun.file($).text(),q=(await M1.promises.stat($)).mtime.getTime();if(q!==Q)continue;return m1.set($,{content:K,mtime:q}),K}catch(X){Y=X;break}throw m1.delete($),Error(`File not found: ${$}${Y?` (${Y.message})`:""}`)}function HK($){m1.delete($)}function OK($){for(let Z of m1.keys())if(Z.startsWith($))m1.delete(Z)}function FK($){P8=$}async function VK($=!1){let Z=P8??await Promise.resolve().then(() => (S8(),b8));if($)return Z.generateSignalsRuntimeDev();if(r$===null)r$=Z.generateSignalsRuntime();return r$}async function wK(){if(a$===null){let{getRouterScript:$}=await import("stx-router");a$=$()}return a$}function AK(){m1.clear(),v8(),r$=null,LK=null,a$=null}function C8($){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 RK($,Z){try{if(!Z.cachePath)return null;let Y=B5.resolve(Z.cachePath),J=B5.join(Y,`${Y$($)}.html`),X=B5.join(Y,`${Y$($)}.meta.json`);if(!await c(J)||!await c(X))return null;let Q=await Bun.file(X).text(),G=JSON.parse(Q);if(G.cacheVersion!==Z.cacheVersion)return null;if(G.optionsSignature!==C8(Z))return null;if((await M1.promises.stat($)).mtime.getTime()>G.mtime)return null;for(let W of G.dependencies)if(await c(W)){if((await M1.promises.stat(W)).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 NK($,Z,Y,J){try{if(!J.cachePath)return;let X=B5.resolve(J.cachePath);await M1.promises.mkdir(X,{recursive:!0});let Q=B5.join(X,`${Y$($)}.html`),G=B5.join(X,`${Y$($)}.meta.json`),K=await M1.promises.stat($);await Bun.write(Q,Z);let W={sourcePath:$,mtime:K.mtime.getTime(),dependencies:Array.from(Y),cacheVersion:J.cacheVersion,optionsSignature:C8(J),generatedAt:Date.now()};await Bun.write(G,JSON.stringify(W,null,2)),y8.set($,{output:Z,mtime:K.mtime.getTime(),dependencies:Y})}catch(X){console.warn(`Failed to cache template ${$}:`,X)}}function Y$($){return new Bun.CryptoHasher("sha1").update($).digest("hex").substring(0,MK)}var y8,m1,r$=null,LK=null,P8=null,a$=null,MK=16;var u7=b(()=>{M0();y8=new Map,m1=new Map});function x8($){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]+`
7353
7353
  `;let X=/\{\{([\s\S]*?)\}\}/g;while((J=X.exec($))!==null)Y+=J[1]+`
7354
- `;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"]),W=/\b([A-Z][a-zA-Z0-9]*)\s*\.\s*(all|find|first|get|where|orderBy|orderByDesc|limit|select|pluck|create|update|delete)\s*\(/g,z,q=!1;while((z=W.exec(Y))!==null)if(!K.has(z[1])){q=!0;break}if(!G&&!q)return $;let U=`<script type="module">
7354
+ `;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"]),W=/\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,z=!1;while((q=W.exec(Y))!==null)if(!K.has(q[1])){z=!0;break}if(!G&&!z)return $;let U=`<script type="module">
7355
7355
  // STX: Auto-load @stacksjs/browser (auto-initializes API and loads models)
7356
7356
  import '@stacksjs/browser'
7357
7357
  </script>`;if($.includes("</head>")){let j=$.indexOf("</head>"),B=$.slice(0,j).indexOf("<script");if(B!==-1)return $.slice(0,B)+U+`
7358
7358
  `+$.slice(B);return $.replace("</head>",`${U}
7359
7359
  </head>`)}if($.includes("<body"))return $.replace(/<body([^>]*)>/,`<body$1>
7360
7360
  ${U}`);return U+`
7361
- `+$}async function y8($,Z){if($.includes("data-stx-runtime")||$.includes("window.stx.state")||$.includes("STX Signals Runtime"))return $;if(Z.buildMode==="serve"){let K=$.indexOf("<script");if(K!==-1)return $.slice(0,K)+`<script data-stx-runtime src="/_stx/runtime.js"></script>
7361
+ `+$}async function f8($,Z){if($.includes("data-stx-runtime")||$.includes("window.stx.state")||$.includes("STX Signals Runtime"))return $;if(Z.buildMode==="serve"){let K=$.indexOf("<script");if(K!==-1)return $.slice(0,K)+`<script data-stx-runtime src="/_stx/runtime.js"></script>
7362
7362
  `+$.slice(K);if($.includes("</head>")){let W=$.indexOf("</head>");return $.slice(0,W)+`<script data-stx-runtime src="/_stx/runtime.js"></script>
7363
7363
  `+$.slice(W)}return`<script data-stx-runtime src="/_stx/runtime.js"></script>
7364
7364
  `+$}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>
7365
7365
  `+$.slice(K);if($.includes("</head>")){let W=$.indexOf("</head>");return $.slice(0,W)+`<script data-stx-runtime src="/__stx/runtime.__STX_HASH__.js"></script>
7366
7366
  `+$.slice(W)}return`<script data-stx-runtime src="/__stx/runtime.__STX_HASH__.js"></script>
7367
- `+$}let{getCachedSignalsRuntime:Y}=await Promise.resolve().then(() => (g7(),f7)),X=`<script data-stx-scoped data-stx-runtime>${await Y(Z.debug)}</script>`,Q=$.indexOf("<script");if(Q!==-1)return $.slice(0,Q)+X+`
7367
+ `+$}let{getCachedSignalsRuntime:Y}=await Promise.resolve().then(() => (u7(),d7)),X=`<script data-stx-scoped data-stx-runtime>${await Y(Z.debug)}</script>`,Q=$.indexOf("<script");if(Q!==-1)return $.slice(0,Q)+X+`
7368
7368
  `+$.slice(Q);if($.includes("</head>")){let G=$.indexOf("</head>");return $.slice(0,G)+X+`
7369
7369
  `+$.slice(G)}if($.includes("<body")){let G=$.indexOf("<body"),K=$.indexOf(">",G);return $.slice(0,K+1)+`
7370
7370
  `+X+$.slice(K+1)}return X+`
7371
- `+$}async function h7($,Z){if(!$.includes("</body>"))return $;if($.includes("data-stx-router")||$.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>
7372
- `}let{getCachedRouterScript:X}=await Promise.resolve().then(() => (g7(),f7)),Q=Z?.buildMode==="compile"?'<script data-stx-router src="/__stx/router.__STX_HASH__.js"></script>':Z?.buildMode==="serve"?'<script data-stx-router src="/_stx/router.js"></script>':`<script data-stx-router>${await X()}</script>`,G=$.lastIndexOf("</body>");return $.slice(0,G)+J+Q+`
7373
- </body>`+$.slice(G+7)}var t$={};a(t$,{scanScriptTags:()=>h8,rewriteStxImportSpecifiers:()=>p8,processSignals:()=>l7,processScriptSetup:()=>u8,preEvalLiteralReactiveIfs:()=>m7,parseLoopExpression:()=>d8,hasSignalsSyntax:()=>a$,findMarkupIndexOutsideScripts:()=>r$,extractExports:()=>m8,convertSignalLoopsToAttributes:()=>p7,convertSignalDirectivesToAttributes:()=>u7});function h8($,Z={}){let Y=[];for(let J of L7($,F1)){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,W=J.token.length-Q[0].length;Y.push({fullMatch:J.token,attrs:G,body:J.token.slice(K,W),start:J.start,end:J.end})}return Y}function d8($){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}=C8(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}=C8(X);if(G)return{style:"in",iterable:Q,itemVar:G,indexVar:K}}return{style:"unknown",iterable:null,itemVar:null,indexVar:null}}function C8($){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 a$($){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 wK($){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 AK($){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 RK($){return $.replace(/'(?:\\.|[^'\\])*'/g,"''").replace(/"(?:\\.|[^"\\])*"/g,'""').replace(/`(?:\\.|[^`\\])*`/g,"``")}function x8($,Z,Y){if(!$)return!1;let J=RK($),X=!1,Q=!1,G=!1,K=/([a-zA-Z_$][\w$]*)/g,W;while((W=K.exec(J))!==null){let j=W[1];if(J.slice(0,W.index).trimEnd().endsWith("."))continue;if(v8.has(j))continue;if(Z.has(j))X=!0;else if(Y&&j in Y)Q=!0}let z=/([a-zA-Z_$][\w$]*)(?:\.[a-zA-Z_$][\w$]*)*\s*\(\s*\)/g,q;while((q=z.exec(J))!==null){let j=q[1];if(J.slice(0,q.index).trimEnd().endsWith("."))continue;if(v8.has(j)||Y&&j in Y)continue;G=!0}return(X||G)&&!Q}function s$($,Z,Y){let J=Y===void 0?` ${Z}`:` ${Z}="${Y.replace(/"/g,"&quot;")}"`,X=$.trim(),Q=X.match(g8);if(Q&&NK(Q[3],Q[1])){let[,G,K,W]=Q;return`<${G}${K}${J}>${W}</${G}>`}return`<template${J}>${X}</template>`}function NK($,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 u7($,Z){let Y=AK($);function J(X){let Q=X,G=/@if\s*\(/g,K,W=[];while((K=G.exec(Q))!==null){let z=K.index,q=z+K[0].length,U=1,j=q;while(j<Q.length&&U>0){if(Q[j]==="(")U++;else if(Q[j]===")")U--;j++}if(U!==0)continue;let _=Q.substring(q,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(wK(F)){let A=a5(Q.substring(z,L));if(A.length===0)continue;let R=A[0].branches.filter((T)=>T.type!=="else");if(!(R.length>0&&R.every((T)=>x8(T.condition,Y,Z))))continue;w=A[0].branches.map((T)=>{let I=J(T.content);if(T.type==="elseif")return s$(I,"@else-if",T.condition??"");if(T.type==="else")return s$(I,"@else");return s$(I,"@if",T.condition??"")}).join(`
7374
- `)}else{if(!x8(_,Y,Z))continue;w=s$(J(F),"@if",_)}W.push({start:z,end:L,replacement:w}),G.lastIndex=L}for(let z=W.length-1;z>=0;z--){let{start:q,end:U,replacement:j}=W[z];Q=Q.substring(0,q)+j+Q.substring(U)}return Q}return J($)}function MK($){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 TK($,Z,Y,J){if(d7.has(Y.toLowerCase()))return J;let X=Y.toLowerCase(),Q=$.toLowerCase(),G=$.length,K=1,W=J;while(W<G){let z=$.indexOf("<",W);if(z===-1)return-1;if(W=z,$.startsWith("<!--",W)){let _=$.indexOf("-->",W+4);if(_===-1)return-1;W=_+3;continue}let q=/^<(script|style)\b/i.exec($.slice(W,W+8));if(q){let _=$.indexOf(">",W);if(_===-1)return-1;if($[_-1]==="/"){W=_+1;continue}let B=Q.indexOf(`</${q[1].toLowerCase()}`,W);if(B===-1)return-1;let H=$.indexOf(">",B);if(H===-1)return-1;W=H+1;continue}if($[W+1]==="/"){let _=/^<\/([a-z][\w-]*)\s*>/i.exec($.slice(W,W+64));if(!_){W++;continue}if(_[1].toLowerCase()===X){if(K--,W+=_[0].length,K===0)return W;continue}W+=_[0].length;continue}let U=/^<([a-z][\w-]*)\b/i.exec($.slice(W,W+64));if(!U){W++;continue}let j=$.indexOf(">",W);if(j===-1)return-1;if(U[1].toLowerCase()===X){let _=$.slice(W,j+1);if(!(/\/\s*>$/.test(_)||d7.has(X)))K++}W=j+1}return-1}function DK($,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 IK.test(Q)}function m7($){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=MK(H);if(O===void 0)continue;let F=K.index,w=F+U.length,N=!!V||/\/\s*>$/.test(U)||d7.has(j.toLowerCase())?w:TK($,F,j,w);if(N===-1)continue;if((B===":if"||B==="x-if"||B==="@if")&&DK($,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 W=[],z=-1;for(let U of G){if(U.start<z)continue;W.push(U),z=U.end}let q=$;for(let U=W.length-1;U>=0;U--){let{start:j,end:_,replacement:B}=W[U];q=q.substring(0,j)+B+q.substring(_)}return q}function p7($,Z){let Y=$,J=/@(for|foreach)\s*\(/g,X,Q=[];while((X=J.exec(Y))!==null){let G=X[1],K=X.index,W=K+X[0].length,z=1,q=W;while(q<Y.length&&z>0){if(Y[q]==="(")z++;else if(Y[q]===")")z--;q++}if(z!==0)continue;let U=Y.substring(W,q-1).trim(),j=q,_=d8(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(g8),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:W,replacement:z}=Q[G];Y=Y.substring(0,K)+z+Y.substring(W)}return Y}function EK($){let Z=new Set,Y=[],J=0,X=0,Q=$.length,G=(q)=>{let U=J+1;while(U<Q){let j=$[U];if(j==="\\"){U+=2;continue}if(j===q)return U+1;U++}return Q},K=()=>{let q=J+2;while(q<Q&&$[q]!==`
7375
- `)q++;return q},W=()=>{let q=J+2;while(q<Q-1){if($[q]==="*"&&$[q+1]==="/")return q+2;q++}return Q},z=(q)=>{let U=q,j=0;while(U<Q){let _=$[U];if(_==="/"&&$[U+1]==="/"){let B=U+2;while(B<Q&&$[B]!==`
7376
- `)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 q=$[J];if(q==="/"&&$[J+1]==="/"){let U=K();Y.push($.slice(J,U)),J=U;continue}if(q==="/"&&$[J+1]==="*"){let U=W();Y.push($.slice(J,U)),J=U;continue}if(q==='"'||q==="'"||q==="`"){let U=G(q);Y.push($.slice(J,U)),J=U;continue}if(q==="{"){X++,Y.push(q),J++;continue}if(q==="}"){X--,Y.push(q),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=z(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(q),J++}return Y.join("")}async function u8($,Z,Y){let J=h8($,{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(P1(L.attrs))V=C1(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()}_${VK++}`,{hasUserImports:K,bundleClientScript:W}=await Promise.resolve().then(() => (f5(),x5)),z=[];for(let L=0;L<Q.length;L++){let V=Q[L].content;if(V=J5(V).code,K(V))console.log("[stx:bundler] bundling signal script imports"),V=await W(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)=>p8(w));let O=s0(V);z.push(`// \u2500\u2500 merged signal script #${L+1} \u2500\u2500
7377
- ${O}`)}let q=z.join(`
7378
-
7379
- `);q=EK(q);let U=m8(q),j=U.split(",").map((L)=>L.trim()).filter(Boolean),_=M$(q,Y),B=`
7371
+ `+$}async function m7($,Z){if(!$.includes("</body>"))return $;if($.includes("data-stx-router")||$.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>
7372
+ `}let{getCachedRouterScript:X}=await Promise.resolve().then(() => (u7(),d7)),Q=Z?.buildMode==="compile"?'<script data-stx-router src="/__stx/router.__STX_HASH__.js"></script>':Z?.buildMode==="serve"?'<script data-stx-router src="/_stx/router.js"></script>':`<script data-stx-router>${await X()}</script>`,G=$.lastIndexOf("</body>");return $.slice(0,G)+J+Q+`
7373
+ </body>`+$.slice(G+7)}var Z4={};a(Z4,{scanScriptTags:()=>l8,rewriteStxImportSpecifiers:()=>o8,processSignals:()=>n7,processScriptSetup:()=>i8,preEvalLiteralReactiveIfs:()=>c7,parseLoopExpression:()=>c8,hasSignalsSyntax:()=>$4,findMarkupIndexOutsideScripts:()=>e$,extractExports:()=>n8,convertSignalLoopsToAttributes:()=>i7,convertSignalDirectivesToAttributes:()=>l7});function l8($,Z={}){let Y=[];for(let J of w7($,V1)){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,W=J.token.length-Q[0].length;Y.push({fullMatch:J.token,attrs:G,body:J.token.slice(K,W),start:J.start,end:J.end})}return Y}function c8($){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}=h8(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}=h8(X);if(G)return{style:"in",iterable:Q,itemVar:G,indexVar:K}}return{style:"unknown",iterable:null,itemVar:null,indexVar:null}}function h8($){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 $4($){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 IK($){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 DK($){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 EK($){return $.replace(/'(?:\\.|[^'\\])*'/g,"''").replace(/"(?:\\.|[^"\\])*"/g,'""').replace(/`(?:\\.|[^`\\])*`/g,"``")}function u8($,Z,Y){if(!$)return!1;let J=EK($),X=!1,Q=!1,G=!1,K=/([a-zA-Z_$][\w$]*)/g,W;while((W=K.exec(J))!==null){let j=W[1];if(J.slice(0,W.index).trimEnd().endsWith("."))continue;if(d8.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,z;while((z=q.exec(J))!==null){let j=z[1];if(J.slice(0,z.index).trimEnd().endsWith("."))continue;if(d8.has(j)||Y&&j in Y)continue;G=!0}return(X||G)&&!Q}function t$($,Z,Y){let J=Y===void 0?` ${Z}`:` ${Z}="${Y.replace(/"/g,"&quot;")}"`,X=$.trim(),Q=X.match(p8);if(Q&&kK(Q[3],Q[1])){let[,G,K,W]=Q;return`<${G}${K}${J}>${W}</${G}>`}return`<template${J}>${X}</template>`}function kK($,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 l7($,Z){let Y=DK($);function J(X){let Q=X,G=/@if\s*\(/g,K,W=[];while((K=G.exec(Q))!==null){let q=K.index,z=q+K[0].length,U=1,j=z;while(j<Q.length&&U>0){if(Q[j]==="(")U++;else if(Q[j]===")")U--;j++}if(U!==0)continue;let _=Q.substring(z,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(IK(F)){let A=$$(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)=>u8(T.condition,Y,Z))))continue;w=A[0].branches.map((T)=>{let I=J(T.content);if(T.type==="elseif")return t$(I,"@else-if",T.condition??"");if(T.type==="else")return t$(I,"@else");return t$(I,"@if",T.condition??"")}).join(`
7374
+ `)}else{if(!u8(_,Y,Z))continue;w=t$(J(F),"@if",_)}W.push({start:q,end:L,replacement:w}),G.lastIndex=L}for(let q=W.length-1;q>=0;q--){let{start:z,end:U,replacement:j}=W[q];Q=Q.substring(0,z)+j+Q.substring(U)}return Q}return J($)}function bK($){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 SK($,Z,Y,J){if(p7.has(Y.toLowerCase()))return J;let X=Y.toLowerCase(),Q=$.toLowerCase(),G=$.length,K=1,W=J;while(W<G){let q=$.indexOf("<",W);if(q===-1)return-1;if(W=q,$.startsWith("<!--",W)){let _=$.indexOf("-->",W+4);if(_===-1)return-1;W=_+3;continue}let z=/^<(script|style)\b/i.exec($.slice(W,W+8));if(z){let _=$.indexOf(">",W);if(_===-1)return-1;if($[_-1]==="/"){W=_+1;continue}let B=Q.indexOf(`</${z[1].toLowerCase()}`,W);if(B===-1)return-1;let H=$.indexOf(">",B);if(H===-1)return-1;W=H+1;continue}if($[W+1]==="/"){let _=/^<\/([a-z][\w-]*)\s*>/i.exec($.slice(W,W+64));if(!_){W++;continue}if(_[1].toLowerCase()===X){if(K--,W+=_[0].length,K===0)return W;continue}W+=_[0].length;continue}let U=/^<([a-z][\w-]*)\b/i.exec($.slice(W,W+64));if(!U){W++;continue}let j=$.indexOf(">",W);if(j===-1)return-1;if(U[1].toLowerCase()===X){let _=$.slice(W,j+1);if(!(/\/\s*>$/.test(_)||p7.has(X)))K++}W=j+1}return-1}function PK($,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 yK.test(Q)}function c7($){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=bK(H);if(O===void 0)continue;let F=K.index,w=F+U.length,N=!!V||/\/\s*>$/.test(U)||p7.has(j.toLowerCase())?w:SK($,F,j,w);if(N===-1)continue;if((B===":if"||B==="x-if"||B==="@if")&&PK($,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 W=[],q=-1;for(let U of G){if(U.start<q)continue;W.push(U),q=U.end}let z=$;for(let U=W.length-1;U>=0;U--){let{start:j,end:_,replacement:B}=W[U];z=z.substring(0,j)+B+z.substring(_)}return z}function i7($,Z){let Y=$,J=/@(for|foreach)\s*\(/g,X,Q=[];while((X=J.exec(Y))!==null){let G=X[1],K=X.index,W=K+X[0].length,q=1,z=W;while(z<Y.length&&q>0){if(Y[z]==="(")q++;else if(Y[z]===")")q--;z++}if(q!==0)continue;let U=Y.substring(W,z-1).trim(),j=z,_=c8(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(p8),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:W,replacement:q}=Q[G];Y=Y.substring(0,K)+q+Y.substring(W)}return Y}function CK($){let Z=new Set,Y=[],J=0,X=0,Q=$.length,G=(z)=>{let U=J+1;while(U<Q){let j=$[U];if(j==="\\"){U+=2;continue}if(j===z)return U+1;U++}return Q},K=()=>{let z=J+2;while(z<Q&&$[z]!==`
7375
+ `)z++;return z},W=()=>{let z=J+2;while(z<Q-1){if($[z]==="*"&&$[z+1]==="/")return z+2;z++}return Q},q=(z)=>{let U=z,j=0;while(U<Q){let _=$[U];if(_==="/"&&$[U+1]==="/"){let B=U+2;while(B<Q&&$[B]!==`
7376
+ `)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 z=$[J];if(z==="/"&&$[J+1]==="/"){let U=K();Y.push($.slice(J,U)),J=U;continue}if(z==="/"&&$[J+1]==="*"){let U=W();Y.push($.slice(J,U)),J=U;continue}if(z==='"'||z==="'"||z==="`"){let U=G(z);Y.push($.slice(J,U)),J=U;continue}if(z==="{"){X++,Y.push(z),J++;continue}if(z==="}"){X--,Y.push(z),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(z),J++}return Y.join("")}async function i8($,Z,Y){let J=l8($,{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(v1(L.attrs))V=x1(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()}_${TK++}`,{hasUserImports:K,bundleClientScript:W}=await t("stx/client-script-bundler",()=>Promise.resolve().then(() => (d5(),h5))),q=[];for(let L=0;L<Q.length;L++){let V=Q[L].content;if(V=Q5(V).code,K(V))V=await W(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)=>o8(w));let O=r0(V);q.push(`// \u2500\u2500 merged signal script #${L+1} \u2500\u2500
7377
+ ${O}`)}let z=q.join(`
7378
+
7379
+ `);z=CK(z);let U=n8(z),j=U.split(",").map((L)=>L.trim()).filter(Boolean),_=D$(z,Y),B=`
7380
7380
  <script data-stx-scoped>
7381
7381
  function ${G}() {
7382
- ${G5("const",j)}
7383
- ${_}${q}
7382
+ ${W5("const",j)}
7383
+ ${_}${z}
7384
7384
  return { ${U} };
7385
7385
  }
7386
7386
  window.__stx_latestSetup=${G};
7387
7387
  if(window.stx)window.stx._latestSetup=${G};
7388
- </script>`,H=$;for(let L of Q)H=H.split(L.fullMatch).join("");if(H.includes("<body"))H=H.replace(new RegExp(`<body(${P8})>`),`<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(${P8})>`,"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 m8($){let Z=$,Y=[],J=new Set,X=0,Q=0,G=Z.length,K="",W=()=>{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===`
7389
- `)return;Q++}},z=()=>{if(!K)return!0;if(/[\w)\]]/.test(K))return!1;return!0},q=(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]==='"')q(Z[Q]);else if(Z[Q]==="`")U();else Q++;continue}Q++}},j=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
7390
- `)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]==='"'){q(Z[Q]),K=Z[Q-1];continue}if(Z[Q]==="`"){U(),K="`";continue}if(Z[Q]==="/"&&Z[Q+1]!=="/"&&Z[Q+1]!=="*"&&z()){W(),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 l7($,Z,Y,J){if(!a$($))return $;let X=$;if(Z.skipSignalsRuntime)return X;let{output:Q,setupCode:G}=await u8(X,Y,J);if(X=Q,X=await y8(X,Z),X=S8(X),G){let q=r$(X,/<\/head>/i),U=q===-1?r$(X,/<body[^>]*>/i):-1;if(q!==-1)X=`${X.slice(0,q)}${G}
7391
- ${X.slice(q)}`;else if(U!==-1){let j=/<body[^>]*>/i.exec(X.slice(U))[0],_=U+j.length;X=`${X.slice(0,_)}
7388
+ </script>`,H=$;for(let L of Q)H=H.split(L.fullMatch).join("");if(H.includes("<body"))H=H.replace(new RegExp(`<body(${g8})>`),`<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(${g8})>`,"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 n8($){let Z=$,Y=[],J=new Set,X=0,Q=0,G=Z.length,K="",W=()=>{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===`
7389
+ `)return;Q++}},q=()=>{if(!K)return!0;if(/[\w)\]]/.test(K))return!1;return!0},z=(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]==='"')z(Z[Q]);else if(Z[Q]==="`")U();else Q++;continue}Q++}},j=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
7390
+ `)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]==='"'){z(Z[Q]),K=Z[Q-1];continue}if(Z[Q]==="`"){U(),K="`";continue}if(Z[Q]==="/"&&Z[Q+1]!=="/"&&Z[Q+1]!=="*"&&q()){W(),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 n7($,Z,Y,J){if(!$4($))return $;let X=$;if(Z.skipSignalsRuntime)return X;let{output:Q,setupCode:G}=await i8(X,Y,J);if(X=Q,X=await f8(X,Z),X=x8(X),G){let z=e$(X,/<\/head>/i),U=z===-1?e$(X,/<body[^>]*>/i):-1;if(z!==-1)X=`${X.slice(0,z)}${G}
7391
+ ${X.slice(z)}`;else if(U!==-1){let j=/<body[^>]*>/i.exec(X.slice(U))[0],_=U+j.length;X=`${X.slice(0,_)}
7392
7392
  ${G}${X.slice(_)}`}else X=`${X}
7393
- ${G}`}let W=X.replace(/<script\b[\s\S]*?<\/script>/gi,"").replace(/<style\b[\s\S]*?<\/style>/gi,"").match(/<body([^>]*)>/i),z=W&&/data-stx/.test(W[1]);if(!G&&!z&&W&&!/data-stx-auto/.test(W[1])){let q=/<body[^>]*>/i,U=r$(X,q);if(U!==-1){let j=X.slice(0,U),_=X.slice(U).replace(q,(B)=>B.replace(/^<body([^>]*)>$/i,"<body$1 data-stx-auto>"));X=j+_}}return X}function r$($,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 W=G+K.index;if(!J.some(([q,U])=>W>=q&&W<U))return W;G=W+Math.max(K[0].length,1)}return-1}function p8($){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 f8;return`var ${Z.join(", ")}; ${f8}`}var VK=0,P8=`(?:"[^"]*"|'[^']*'|[^>"'])*`,g8,v8,d7,IK,f8="/* [stx import stripped, resolved via window.stx in __stx_setup] */";var $$=b(()=>{u5();f$();i5();N0();v1();g8=/^<([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"]);d7=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);IK=/\s(?::else-if|x-else-if|@else-if|:else|x-else|@else)(?=[=\s/>])/});import kK from"fs";import h from"path";function SK($){let Z=new WeakSet;try{let Y=(J)=>{if(J===void 0)return{__stxType:"undefined"};if(typeof J==="bigint")return{__stxType:"bigint",value:J.toString()};if(typeof J==="function"||typeof J==="symbol")throw TypeError("Non-serializable component input");if(J===null||typeof J!=="object")return J;if(Z.has(J))throw TypeError("Circular component input");if(Z.add(J),J instanceof Date)return{__stxType:"date",value:J.toISOString()};if(Array.isArray(J))return J.map(Y);let X={};for(let Q of Object.keys(J).sort())X[Q]=Y(J[Q]);return X};return JSON.stringify(Y($))}catch{return null}}function l8($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function yK($){return/\bjs\b/.test($)||/\blang\s*=\s*["']?(js|javascript)["']?/i.test($)}function P1($){return!yK($)}function C1($){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:l0()}).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 PK($){let Z=[],Y=new Set,J=0,X=0,Q=$.length,G=(q)=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]===q){X++;return}X++}},K=()=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++;return}if($[X]==="$"&&$[X+1]==="{"){X+=2;let q=1;while(X<Q&&q>0)if($[X]==="{")q++,X++;else if($[X]==="}")q--,X++;else if($[X]==="'"||$[X]==='"')G($[X]);else if($[X]==="`")K();else X++;continue}X++}},W=()=>{if($[X]==="/"&&$[X+1]==="/"){while(X<Q&&$[X]!==`
7394
- `)X++;return!0}if($[X]==="/"&&$[X+1]==="*"){X+=2;while(X<Q-1&&!($[X]==="*"&&$[X+1]==="/"))X++;return X+=2,!0}return!1},z=()=>{if(J!==0)return;let q=$.slice(X).match(/^(const|let|var)\s*\{([^}]+)\}\s*=/);if(q){let B=q[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(W())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])))z();X++}return Z}function CK($){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 vK($){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 xK($,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 W=$[J];if(W==="}")Q++;else if(W==="{"){if(Q--,Q===0){G=J;break}}}if(G===-1)return;let K=$.slice(G+1,X);for(let W of CK(K)){let z=W.trim();if(!z||z.startsWith("..."))continue;let q=vK(z);if(q===-1)continue;let U=z.slice(0,q).trim();if(!/^[A-Z_$][\w$]*$/i.test(U))continue;if(Z[U]!==void 0)continue;let j=z.slice(q+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 Z4($,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(),W=Y.__importedComponents;if(W){for(let L of[Q,Q.toLowerCase(),G(Q),K(Q)])if(W.has(L))return!0}let z=[...new Set([`${Q}.stx`,`${G(Q)}.stx`,`${K(Q)}.stx`])],q=typeof X.root==="string"?h.resolve(X.root):void 0,U=q??h.dirname(J),j=[],_=(L)=>{if(L&&!j.includes(L))j.push(L)},B=Y.__originalFilePath;if(B)_(h.join(h.dirname(B),"components"));_(Z),_(X._rootComponentsDir),_(h.join(h.dirname(J),"components")),_(X.componentsDir);let H=X._pluginComponentDirs;if(Array.isArray(H))for(let L of H)_(typeof L==="string"?L:null);if(q)_(h.resolve(q,"resources/views/components")),_(h.resolve(q,"resources/components")),_(h.resolve(q,"src/components")),_(h.resolve(q,"components"));if(Q.startsWith("./")||Q.startsWith("../"))return c(h.resolve(h.dirname(J),`${Q}.stx`));for(let L of j){let V=h.isAbsolute(L)?L:h.resolve(U,L);for(let O of z)if(await c(h.join(V,O)))return!0}return!1}function fK($){return $==="visible"||$==="idle"||$==="interaction"||$.startsWith("media:")}function gK($){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 hK($){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 u1($,Z,Y,J,X,Q,G,K=new Set,W){let{extractVariables:z}=await Promise.resolve().then(() => (r5(),v$)),q=K??new Set;if(q.has($))return`[Circular component reference: ${$}]`;let U=new Set(q);U.add($);let j=typeof Z.client==="string"?Z.client.trim():"";if("client"in Z)delete Z.client;let _=j&&j!=="load"&&fK(j)?j:"";try{let B=(P)=>P.split("-").map((x)=>x.charAt(0).toUpperCase()+x.slice(1)).join(""),H=(P)=>P.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),L=$.endsWith(".stx")?$.slice(0,-4):$,V=null,O=X.__importedComponents;if(O){let P=[L,L.toLowerCase(),B(L),H(L)];for(let x of P)if(O.has(x)){V=O.get(x);break}}let F=[];if(!V){let P=[`${L}.stx`,`${B(L)}.stx`,`${H(L)}.stx`],x=[...new Set(P)],m=X.__originalFilePath,u=[];if(m){let z0=h.join(h.dirname(m),"components");u.push(z0)}if(J)u.push(J);let U0=G._rootComponentsDir;if(typeof U0==="string"&&!u.includes(U0))u.push(U0);let R0=h.join(h.dirname(Q),"components");if(!u.includes(R0))u.push(R0);if(G.componentsDir&&G.componentsDir!==J&&!u.includes(G.componentsDir))u.push(G.componentsDir);let K1=G._pluginComponentDirs;if(Array.isArray(K1)){for(let z0 of K1)if(typeof z0==="string"&&!u.includes(z0))u.push(z0)}let p0=typeof G.root==="string"?h.resolve(G.root):void 0,C0=p0??h.dirname(Q),o0=[];if(p0)o0.push(h.resolve(p0,"resources/views/components")),o0.push(h.resolve(p0,"resources/components")),o0.push(h.resolve(p0,"src/components")),o0.push(h.resolve(p0,"components"));o0.push(h.resolve(import.meta.dir,"components"));for(let z0 of o0)if(!u.includes(z0))u.push(z0);let b1=[...new Set(u.map((z0)=>{if(!z0)return z0;return h.isAbsolute(z0)?z0:h.resolve(C0,z0)}))];u.length=0,u.push(...b1);let H1=`${L}\x00${Q}\x00${b1.join("\x00")}`,$5=$4.get(H1);if($5)if(await c($5))V=$5;else $4.delete(H1);if(!V&&(L.startsWith("./")||L.startsWith("../")))V=h.resolve(h.dirname(Q),`${L}.stx`),F.push(V);else if(!V)for(let z0 of u){if(!z0)continue;for(let i of x){let h0=h.join(z0,i);if(F.push(h0),await c(h0)){V=h0;break}}if(V)break;if(!V)try{let i=await import("fs");if(!i.statSync(z0,{throwIfNoEntry:!1})?.isDirectory())continue;let b5=8,Z5=[{path:z0,depth:0}];while(Z5.length>0&&!V){let W1=Z5.pop();if(W1.depth>=b5)continue;let w$;try{w$=i.readdirSync(W1.path,{withFileTypes:!0})}catch{continue}for(let A$ of w$){if(!A$.isDirectory())continue;if(A$.name==="node_modules"||A$.name.startsWith("."))continue;let t6=h.join(W1.path,A$.name);for(let UQ of x){let K7=h.join(t6,UQ);if(F.push(K7),await c(K7)){V=K7;break}}if(V)break;Z5.push({path:t6,depth:W1.depth+1})}}}catch{}if(V)break}if(V)$4.set(H1,V)}if(!V||!await c(V)){let P=F.length>0?`
7393
+ ${G}`}let W=X.replace(/<script\b[\s\S]*?<\/script>/gi,"").replace(/<style\b[\s\S]*?<\/style>/gi,"").match(/<body([^>]*)>/i),q=W&&/data-stx/.test(W[1]);if(!G&&!q&&W&&!/data-stx-auto/.test(W[1])){let z=/<body[^>]*>/i,U=e$(X,z);if(U!==-1){let j=X.slice(0,U),_=X.slice(U).replace(z,(B)=>B.replace(/^<body([^>]*)>$/i,"<body$1 data-stx-auto>"));X=j+_}}return X}function e$($,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 W=G+K.index;if(!J.some(([z,U])=>W>=z&&W<U))return W;G=W+Math.max(K[0].length,1)}return-1}function o8($){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 m8;return`var ${Z.join(", ")}; ${m8}`}var TK=0,g8=`(?:"[^"]*"|'[^']*'|[^>"'])*`,p8,d8,p7,yK,m8="/* [stx import stripped, resolved via window.stx in __stx_setup] */";var J$=b(()=>{l5();d$();s5();M0();f1();g5();p8=/^<([a-zA-Z][a-zA-Z0-9-]*)\b((?:\s+[^=\s>]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]*))?)*\s*)>([\s\S]*)<\/\1>$/s;d8=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"]);p7=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]);yK=/\s(?::else-if|x-else-if|@else-if|:else|x-else|@else)(?=[=\s/>])/});import vK from"fs";import h from"path";function fK($){let Z=new WeakSet;try{let Y=(J)=>{if(J===void 0)return{__stxType:"undefined"};if(typeof J==="bigint")return{__stxType:"bigint",value:J.toString()};if(typeof J==="function"||typeof J==="symbol")throw TypeError("Non-serializable component input");if(J===null||typeof J!=="object")return J;if(Z.has(J))throw TypeError("Circular component input");if(Z.add(J),J instanceof Date)return{__stxType:"date",value:J.toISOString()};if(Array.isArray(J))return J.map(Y);let X={};for(let Q of Object.keys(J).sort())X[Q]=Y(J[Q]);return X};return JSON.stringify(Y($))}catch{return null}}function s8($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function gK($){return/\bjs\b/.test($)||/\blang\s*=\s*["']?(js|javascript)["']?/i.test($)}function v1($){return!gK($)}function x1($){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:c0()}).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 hK($){let Z=[],Y=new Set,J=0,X=0,Q=$.length,G=(z)=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]===z){X++;return}X++}},K=()=>{X++;while(X<Q){if($[X]==="\\"){X+=2;continue}if($[X]==="`"){X++;return}if($[X]==="$"&&$[X+1]==="{"){X+=2;let z=1;while(X<Q&&z>0)if($[X]==="{")z++,X++;else if($[X]==="}")z--,X++;else if($[X]==="'"||$[X]==='"')G($[X]);else if($[X]==="`")K();else X++;continue}X++}},W=()=>{if($[X]==="/"&&$[X+1]==="/"){while(X<Q&&$[X]!==`
7394
+ `)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 z=$.slice(X).match(/^(const|let|var)\s*\{([^}]+)\}\s*=/);if(z){let B=z[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(W())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 dK($){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 uK($){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 mK($,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 W=$[J];if(W==="}")Q++;else if(W==="{"){if(Q--,Q===0){G=J;break}}}if(G===-1)return;let K=$.slice(G+1,X);for(let W of dK(K)){let q=W.trim();if(!q||q.startsWith("..."))continue;let z=uK(q);if(z===-1)continue;let U=q.slice(0,z).trim();if(!/^[A-Z_$][\w$]*$/i.test(U))continue;if(Z[U]!==void 0)continue;let j=q.slice(z+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 X4($,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(),W=Y.__importedComponents;if(W){for(let L of[Q,Q.toLowerCase(),G(Q),K(Q)])if(W.has(L))return!0}let q=[...new Set([`${Q}.stx`,`${G(Q)}.stx`,`${K(Q)}.stx`])],z=typeof X.root==="string"?h.resolve(X.root):void 0,U=z??h.dirname(J),j=[],_=(L)=>{if(L&&!j.includes(L))j.push(L)},B=Y.__originalFilePath;if(B)_(h.join(h.dirname(B),"components"));_(Z),_(X._rootComponentsDir),_(h.join(h.dirname(J),"components")),_(X.componentsDir);let H=X._pluginComponentDirs;if(Array.isArray(H))for(let L of H)_(typeof L==="string"?L:null);if(z)_(h.resolve(z,"resources/views/components")),_(h.resolve(z,"resources/components")),_(h.resolve(z,"src/components")),_(h.resolve(z,"components"));if(Q.startsWith("./")||Q.startsWith("../"))return c(h.resolve(h.dirname(J),`${Q}.stx`));for(let L of j){let V=h.isAbsolute(L)?L:h.resolve(U,L);for(let O of q)if(await c(h.join(V,O)))return!0}return!1}function pK($){return $==="visible"||$==="idle"||$==="interaction"||$.startsWith("media:")}function lK($){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 cK($){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 p1($,Z,Y,J,X,Q,G,K=new Set,W){let{extractVariables:q}=await t("stx/variable-extractor",()=>Promise.resolve().then(() => (e5(),g$))),z=K??new Set;if(z.has($))return`[Circular component reference: ${$}]`;let U=new Set(z);U.add($);let j=typeof Z.client==="string"?Z.client.trim():"";if("client"in Z)delete Z.client;let _=j&&j!=="load"&&pK(j)?j:"";try{let B=(P)=>P.split("-").map((x)=>x.charAt(0).toUpperCase()+x.slice(1)).join(""),H=(P)=>P.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),L=$.endsWith(".stx")?$.slice(0,-4):$,V=null,O=X.__importedComponents;if(O){let P=[L,L.toLowerCase(),B(L),H(L)];for(let x of P)if(O.has(x)){V=O.get(x);break}}let F=[];if(!V){let P=[`${L}.stx`,`${B(L)}.stx`,`${H(L)}.stx`],x=[...new Set(P)],m=X.__originalFilePath,u=[];if(m){let z0=h.join(h.dirname(m),"components");u.push(z0)}if(J)u.push(J);let j0=G._rootComponentsDir;if(typeof j0==="string"&&!u.includes(j0))u.push(j0);let N0=h.join(h.dirname(Q),"components");if(!u.includes(N0))u.push(N0);if(G.componentsDir&&G.componentsDir!==J&&!u.includes(G.componentsDir))u.push(G.componentsDir);let W1=G._pluginComponentDirs;if(Array.isArray(W1)){for(let z0 of W1)if(typeof z0==="string"&&!u.includes(z0))u.push(z0)}let l0=typeof G.root==="string"?h.resolve(G.root):void 0,v0=l0??h.dirname(Q),s0=[];if(l0)s0.push(h.resolve(l0,"resources/views/components")),s0.push(h.resolve(l0,"resources/components")),s0.push(h.resolve(l0,"src/components")),s0.push(h.resolve(l0,"components"));s0.push(h.resolve(import.meta.dir,"components"));for(let z0 of s0)if(!u.includes(z0))u.push(z0);let S1=[...new Set(u.map((z0)=>{if(!z0)return z0;return h.isAbsolute(z0)?z0:h.resolve(v0,z0)}))];u.length=0,u.push(...S1);let O1=`${L}\x00${Q}\x00${S1.join("\x00")}`,Y5=J4.get(O1);if(Y5)if(await c(Y5))V=Y5;else J4.delete(O1);if(!V&&(L.startsWith("./")||L.startsWith("../")))V=h.resolve(h.dirname(Q),`${L}.stx`),F.push(V);else if(!V)for(let z0 of u){if(!z0)continue;for(let i of x){let d0=h.join(z0,i);if(F.push(d0),await c(d0)){V=d0;break}}if(V)break;if(!V)try{let i=await import("fs");if(!i.statSync(z0,{throwIfNoEntry:!1})?.isDirectory())continue;let y5=8,J5=[{path:z0,depth:0}];while(J5.length>0&&!V){let q1=J5.pop();if(q1.depth>=y5)continue;let N$;try{N$=i.readdirSync(q1.path,{withFileTypes:!0})}catch{continue}for(let M$ of N$){if(!M$.isDirectory())continue;if(M$.name==="node_modules"||M$.name.startsWith("."))continue;let Z9=h.join(q1.path,M$.name);for(let OQ of x){let z7=h.join(Z9,OQ);if(F.push(z7),await c(z7)){V=z7;break}}if(V)break;J5.push({path:Z9,depth:q1.depth+1})}}}catch{}if(V)break}if(V)J4.set(O1,V)}if(!V||!await c(V)){let P=F.length>0?`
7395
7395
  Searched paths:
7396
7396
  ${F.map((x)=>` - ${x}`).join(`
7397
- `)}`:"";return`[Error loading component: ENOENT: no such file or directory, open '${$}']${P}`}W.add(V);let w;if(e$.has(V))w=e$.get(V);else try{w=await Bun.file(V).text(),e$.set(V,w)}catch(P){return`[Error loading component: ${P instanceof Error?P.message:String(P)}]`}let A=new Set(["__originalFilePath","__importedComponents",T$]),R={};for(let[P,x]of Object.entries(X))if(!P.startsWith("__")||A.has(P))R[P]=x;let{extractSlotContent:N}=await Promise.resolve().then(() => (b7(),k7)),M=N(Y),T={};if(M.defaultSlot?.trim())T.default=M.defaultSlot;for(let[P,x]of M.namedSlots)T[P]=x.content;let I={...R,...Z,props:Z,slot:Y,$slots:T,__processedComponents:U,__sections:{},...gK(Y)&&{__stx_force_signals:!0}};xK(w,I);let E=w,D=y$(E);if(D)E=D.content.trim();let y=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,S=[...w.matchAll(y)],k=[],v=S.some((P)=>/\bserver\b/.test(P[1]||"")&&/\bcache\b/.test(P[1]||""))&&S.every((P)=>/\bserver\b/.test(P[1]||"")),g=null,f=null;if(v){let P=SK({props:Z,slot:Y,buildMode:G.buildMode??"",skipEventDirectives:G.skipEventDirectives===!0});if(P!==null){g=`${V}\x00${P}`;let x=c7.get(g);if(x){for(let m of x.dependencies)W.add(m);return x.output}f=new Set(W)}}for(let P of S){let x=P[1]||"",m=P[2]||"",u=x.includes("server");if(P1(x)&&m.trim())m=C1(m);if(u&&m)try{await z(m,I,V)}catch(R0){}if(!u){let R0=m.replace(/^\s*const\s*\{[^}]+\}\s*=\s*window\.stx\s*;?\s*\n?/gm,""),K1=R0.includes("{{")&&R0.includes("}}"),p0=R0.includes("{!!")&&R0.includes("!!}");if(K1||p0)R0=k$(R0,I);let C0=x.replace(/\s*\bts\b/g,"").replace(/\s*\blang\s*=\s*["']?(ts|typescript)["']?/gi,"");k.push(`<script${C0}>${R0}</script>`)}}let d=w.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),p=d?d[1]:"",X0=d?d[2]:"",Z0="",V0=p&&/\bscoped\b/i.test(p);if(d)Z0=`<style${p}>${X0}</style>`;let r=E;if(r=r.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),d)r=r.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");{let P=/@push\s*\(\s*['"]styles['"]\s*\)([\s\S]*?)@endpush/gi,x=[];if(r=r.replace(P,(m,u)=>{let U0=u.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i);if(U0)x.push(`<style${U0[1]}>${U0[2]}</style>`);return""}),r=r.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/gi,""),x.length>0)Z0=`${Z0}${x.join(`
7398
- `)}`}if(Y&&r.includes("{{ text || slot }}"))r=r.replace(/\{\{\s*text\s*\|\|\s*slot\s*\}\}/g,()=>Y);let{applySlots:Q0}=await Promise.resolve().then(() => (b7(),k7)),{defaultSlot:k0,namedSlots:n0}=M;r=await Q0(r,k0,n0,I);for(let[P,x]of Object.entries(I))if(typeof x==="string"){if(x.includes("<")&&x.includes(">")||x.includes("&lt;")||x.includes("&quot;")){let m=F7(x);I[P]=m}}let B1=k.some((P)=>/\b(?:state|derived|effect|ref|reactive|computed|watch|watchEffect|useReactiveProp|defineProps|withDefaults|defineEmits|defineExpose|defineSlots)\s*(?:<[^<>()]*>)?\s*\(/.test(P)),e1=hK(k);if(e1.length>0)I.__stx_client_signal_names=e1;let n={...G,_rootComponentsDir:G._rootComponentsDir||G.componentsDir,componentsDir:h.dirname(V),skipSignalsRuntime:!0,skipEventDirectives:B1||k.length===0,defaultLayout:void 0};I.__stxProcessingDepth=(X.__stxProcessingDepth||0)+1;let J0=await O0(r,I,V,n,W),B0=new Set(Array.isArray(X.__stx_preserved_client_expressions)?X.__stx_preserved_client_expressions:[]);for(let P of J0.matchAll(/\{\{([\s\S]*?)\}\}/g))B0.add(P[1].trim());if(B0.size>0)X.__stx_preserved_client_expressions=[...B0];let I0=`stx_${L.replace(/[^a-zA-Z0-9]/g,"_")}_${++bK}_${Math.random().toString(36).slice(2,8)}`,C=J0;if(B1){let P="";if(Object.keys(Z).length>0)try{P=` data-stx-props="${l8(JSON.stringify(Z))}"`}catch{}let x=_?` stx-hydrate="${l8(_)}"`:"";C=`<div data-stx-scope="${I0}"${P}${x}>${J0}</div>`;let m=await Promise.all(k.map(async(u)=>{let U0=u.match(/<script([^>]*)>([\s\S]*)<\/script>/i);if(!U0)return u;let[,R0,K1]=U0,p0=R$(K1,{filePath:V,projectRoot:process.cwd()}),C0=p0.code,o0=N$(p0.styles);C0=J5(C0).code;let{hasUserImports:b1,bundleClientScript:H1}=await Promise.resolve().then(() => (f5(),x5));if(b1(C0))C0=await H1(C0,V,{projectRoot:process.cwd(),minify:G.buildMode==="compile"});let{rewriteStxImportSpecifiers:$5}=await Promise.resolve().then(() => ($$(),t$));C0=C0.replace(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm,(W1,w$)=>$5(w$));let z0=s0(C0),i=PK(z0),h0=`function(__scopeId) {
7399
- ${G5("const",[...o9,...i],z0)}
7397
+ `)}`:"";return`[Error loading component: ENOENT: no such file or directory, open '${$}']${P}`}W.add(V);let w;if(Y4.has(V))w=Y4.get(V);else try{w=await Bun.file(V).text(),Y4.set(V,w)}catch(P){return`[Error loading component: ${P instanceof Error?P.message:String(P)}]`}let A=new Set(["__originalFilePath","__importedComponents",E$]),R={};for(let[P,x]of Object.entries(X))if(!P.startsWith("__")||A.has(P))R[P]=x;let{extractSlotContent:N}=await t("stx/slots",()=>Promise.resolve().then(() => (P7(),y7))),M=N(Y),T={};if(M.defaultSlot?.trim())T.default=M.defaultSlot;for(let[P,x]of M.namedSlots)T[P]=x.content;let I={...R,...Z,props:Z,slot:Y,$slots:T,__processedComponents:U,__sections:{},...lK(Y)&&{__stx_force_signals:!0}};mK(w,I);let E=w,D=v$(E);if(D)E=D.content.trim();let y=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,S=[...w.matchAll(y)],k=[],v=S.some((P)=>/\bserver\b/.test(P[1]||"")&&/\bcache\b/.test(P[1]||""))&&S.every((P)=>/\bserver\b/.test(P[1]||"")),g=null,f=null;if(v){let P=fK({props:Z,slot:Y,buildMode:G.buildMode??"",skipEventDirectives:G.skipEventDirectives===!0});if(P!==null){g=`${V}\x00${P}`;let x=o7.get(g);if(x){for(let m of x.dependencies)W.add(m);return x.output}f=new Set(W)}}for(let P of S){let x=P[1]||"",m=P[2]||"",u=x.includes("server");if(v1(x)&&m.trim())m=x1(m);if(u&&m)try{await q(m,I,V)}catch(N0){}if(!u){let N0=m.replace(/^\s*const\s*\{[^}]+\}\s*=\s*window\.stx\s*;?\s*\n?/gm,""),W1=N0.includes("{{")&&N0.includes("}}"),l0=N0.includes("{!!")&&N0.includes("!!}");if(W1||l0)N0=y$(N0,I);let v0=x.replace(/\s*\bts\b/g,"").replace(/\s*\blang\s*=\s*["']?(ts|typescript)["']?/gi,"");k.push(`<script${v0}>${N0}</script>`)}}let d=w.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i),p=d?d[1]:"",Q0=d?d[2]:"",Y0="",w0=p&&/\bscoped\b/i.test(p);if(d)Y0=`<style${p}>${Q0}</style>`;let r=E;if(r=r.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),d)r=r.replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"");{let P=/@push\s*\(\s*['"]styles['"]\s*\)([\s\S]*?)@endpush/gi,x=[];if(r=r.replace(P,(m,u)=>{let j0=u.match(/<style\b([^>]*)>([\s\S]*?)<\/style>/i);if(j0)x.push(`<style${j0[1]}>${j0[2]}</style>`);return""}),r=r.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/gi,""),x.length>0)Y0=`${Y0}${x.join(`
7398
+ `)}`}if(Y&&r.includes("{{ text || slot }}"))r=r.replace(/\{\{\s*text\s*\|\|\s*slot\s*\}\}/g,()=>Y);let{applySlots:G0}=await t("stx/slots",()=>Promise.resolve().then(() => (P7(),y7))),{defaultSlot:b0,namedSlots:o0}=M;r=await G0(r,b0,o0,I);for(let[P,x]of Object.entries(I))if(typeof x==="string"){if(x.includes("<")&&x.includes(">")||x.includes("&lt;")||x.includes("&quot;")){let m=A7(x);I[P]=m}}let H1=k.some((P)=>/\b(?:state|derived|effect|ref|reactive|computed|watch|watchEffect|useReactiveProp|defineProps|withDefaults|defineEmits|defineExpose|defineSlots)\s*(?:<[^<>()]*>)?\s*\(/.test(P)),Z5=cK(k);if(Z5.length>0)I.__stx_client_signal_names=Z5;let n={...G,_rootComponentsDir:G._rootComponentsDir||G.componentsDir,componentsDir:h.dirname(V),skipSignalsRuntime:!0,skipEventDirectives:H1||k.length===0,defaultLayout:void 0};I.__stxProcessingDepth=(X.__stxProcessingDepth||0)+1;let X0=await L0(r,I,V,n,W),H0=new Set(Array.isArray(X.__stx_preserved_client_expressions)?X.__stx_preserved_client_expressions:[]);for(let P of X0.matchAll(/\{\{([\s\S]*?)\}\}/g))H0.add(P[1].trim());if(H0.size>0)X.__stx_preserved_client_expressions=[...H0];let D0=`stx_${L.replace(/[^a-zA-Z0-9]/g,"_")}_${++xK}_${Math.random().toString(36).slice(2,8)}`,C=X0;if(H1){let P="";if(Object.keys(Z).length>0)try{P=` data-stx-props="${s8(JSON.stringify(Z))}"`}catch{}let x=_?` stx-hydrate="${s8(_)}"`:"";C=`<div data-stx-scope="${D0}"${P}${x}>${X0}</div>`;let m=await Promise.all(k.map(async(u)=>{let j0=u.match(/<script([^>]*)>([\s\S]*)<\/script>/i);if(!j0)return u;let[,N0,W1]=j0,l0=T$(W1,{filePath:V,projectRoot:process.cwd()}),v0=l0.code,s0=I$(l0.styles);v0=Q5(v0).code;let{hasUserImports:S1,bundleClientScript:O1}=await t("stx/client-script-bundler",()=>Promise.resolve().then(() => (d5(),h5)));if(S1(v0))v0=await O1(v0,V,{projectRoot:process.cwd(),minify:G.buildMode==="compile"});let{rewriteStxImportSpecifiers:Y5}=await t("stx/signal-processing",()=>Promise.resolve().then(() => (J$(),Z4)));v0=v0.replace(/^\s*import\s+(?:type\s+)?\{([^}]*)\}\s+from\s+['"](?:stx|@stacksjs\/stx|@stacksjs\/browser)['"]\s*;?\s*$/gm,(q1,N$)=>Y5(N$));let z0=r0(v0),i=hK(z0),d0=`function(__scopeId) {
7399
+ ${W5("const",[...e9,...i],z0)}
7400
7400
  const __scope = window.stx._scopes = window.stx._scopes || {};
7401
7401
  const __scopeVars = __scope[__scopeId] = __scope[__scopeId] || {};
7402
7402
  const __previousCurrentElement = window.__STX_CURRENT_ELEMENT__;
@@ -7414,7 +7414,7 @@ ${z0}
7414
7414
  // Register all defined signals and functions in this scope
7415
7415
  const __localVars = {};
7416
7416
  try {
7417
- ${i.map((W1)=>`if (typeof ${W1} !== 'undefined') __localVars['${W1}'] = ${W1};`).join(`
7417
+ ${i.map((q1)=>`if (typeof ${q1} !== 'undefined') __localVars['${q1}'] = ${q1};`).join(`
7418
7418
  `)}
7419
7419
  }
7420
7420
  catch (e) {}
@@ -7423,29 +7423,29 @@ catch (e) {}
7423
7423
  finally {
7424
7424
  window.__STX_CURRENT_ELEMENT__ = __previousCurrentElement;
7425
7425
  }
7426
- }`,b5=_?null:k9(X,h0),Z5=b5?`window.__stxComponentFactories[${JSON.stringify(b5)}](${JSON.stringify(I0)});`:`(${h0})(${JSON.stringify(I0)});`;if(_)return`${o0}<script type="stx/island" data-stx-island="${I0}" data-stx-scoped${R0}>${Z5}</script>`;return`${o0}<script data-stx-scoped${R0}>${Z5}</script>`}));if(C=C+`
7426
+ }`,y5=_?null:C9(X,d0),J5=y5?`window.__stxComponentFactories[${JSON.stringify(y5)}](${JSON.stringify(D0)});`:`(${d0})(${JSON.stringify(D0)});`;if(_)return`${s0}<script type="stx/island" data-stx-island="${D0}" data-stx-scoped${N0}>${J5}</script>`;return`${s0}<script data-stx-scoped${N0}>${J5}</script>`}));if(C=C+`
7427
7427
  `+m.join(`
7428
- `),Z0)C+=`
7429
- `+Z0}else{if(Z0)C+=`
7430
- `+Z0;if(k.length>0){let P=I.__stx_event_bindings||[],x=h5(I),m=await Promise.all(k.map(async(u)=>{let U0=u.match(/<script\b[^>]*>([\s\S]*?)<\/script>/);if(!U0)return u;return await d5(U0[1],{eventBindings:P,templateContent:C,filePath:V,projectRoot:process.cwd(),serverData:x})}));C+=`
7428
+ `),Y0)C+=`
7429
+ `+Y0}else{if(Y0)C+=`
7430
+ `+Y0;if(k.length>0){let P=I.__stx_event_bindings||[],x=m5(I),m=await Promise.all(k.map(async(u)=>{let j0=u.match(/<script\b[^>]*>([\s\S]*?)<\/script>/);if(!j0)return u;return await p5(j0[1],{eventBindings:P,templateContent:C,filePath:V,projectRoot:process.cwd(),serverData:x})}));C+=`
7431
7431
  `+m.join(`
7432
- `),I.__stx_event_bindings=[]}}if(V0){let P=S$(C,V);if(P.hasScoped)C=P.html}if(g&&f)c7.set(g,{output:C,dependencies:[...W].filter((P)=>!f.has(P))});return C}catch(B){return`[Error processing component: ${B instanceof Error?B.message:String(B)}]`}finally{q.delete($)}}async function c($){return Bun.file($).exists()}function i7($,Z){let Y=h.resolve(Z),J=h.resolve($),X=Y.endsWith(h.sep)?Y:Y+h.sep;if(J===Y||J.startsWith(X))return J;return null}async function n7($,Z,Y,J){let X=await dK($,Z,Y,J);if(X===null)return null;let Q=i7(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 W=h.isAbsolute(K)?K:h.resolve(process.cwd(),K);if(i7(X,W))return h.resolve(X)}return console.warn(`[stx] rejected resolved template path that escapes project root: ${X} (template: ${$}, from: ${Z})`),null}async function dK($,Z,Y,J){if(Y.debug)console.log(`Resolving template path: ${$} from ${Z}`);let X=h.dirname(Z),Q=process.cwd();if($.startsWith("/")){let j=h.join(Q,$),_=i7(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 c(_)&&J)J.add(_);return _}let G=h.join(X,$);if(await c(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 c(_)){if(Y.debug)console.log(`Found direct path with extension: ${_}`);if(J)J.add(_);return _}}let K="",W=h.resolve(X),z=process.cwd();for(let j=0;j<10;j++){let _=h.join(W,"layouts"),B=!1;try{B=kK.statSync(_,{throwIfNoEntry:!1})?.isDirectory()??!1}catch{}if(B){K=_;break}let H=h.dirname(W);if(H===W||H.length<z.length)break;W=H}if(K){let j=$.startsWith("layouts/")?$.slice(8):$,_=h.join(K,j);if(await c(_)){if(Y.debug)console.log(`Found in current layouts dir: ${_}`);if(J)J.add(_);return _}if(!j.endsWith(".stx")){let B=`${_}.stx`;if(await c(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=h.isAbsolute(Y.layoutsDir)?Y.layoutsDir:h.resolve(process.cwd(),Y.layoutsDir),_=$.startsWith("layouts/")?$.slice(8):$,B=h.join(j,_);if(await c(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 c(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/"),_=h.join(Y.partialsDir||X,"layouts",j[1]);if(await c(_)){if(Y.debug)console.log(`Found in layouts path: ${_}`);if(J)J.add(_);return _}if(!_.endsWith(".stx")){let B=`${_}.stx`;if(await c(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=h.join(Y.partialsDir,"layouts"),await c(K)){let j=h.join(K,$);if(await c(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 c(_)){if(Y.debug)console.log(`Found in partials layouts dir with extension: ${_}`);if(J)J.add(_);return _}}}}let q=Y.partialsDir||h.join(process.cwd(),"views"),U=h.join(q,$);if(await c(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 c(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=h.join(h.dirname(X),"layouts",$);if(await c(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 c(_)){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 c8($,Z,Y){let J=0,X="",Q="";try{if(typeof Z==="number"&&Z>=0){let G=$.split(`
7433
- `),K=0;for(let W=0;W<G.length;W++)if(K+=G[W].length+1,K>=Z){J=W+1,X=G[W].trim();let z=Math.max(0,W-2),q=Math.min(G.length,W+3);Q=G.slice(z,q).map((U,j)=>{let _=z+j+1;return`${_===J?"> ":" "}${_}: ${U}`}).join(`
7434
- `);break}}else if(Y){let G=$.indexOf(Y);if(G>=0)return c8($,G)}}catch{}return{lineNumber:J,lineContent:X,context:Q}}function q0($,Z,Y,J,X,Q){let{lineNumber:G,context:K}=c8(J,X,Q),W=Y.split("/").pop(),z=0;if(typeof X==="number"&&X>=0&&J){let U=J.lastIndexOf(`
7435
- `,Math.max(0,X-1));z=X-(U+1)+1}let q="";if(G>0)q+=`
7436
- ${Y}:${G}${z>0?`:${z}`:""}: ${$.toLowerCase()} error: ${Z}
7437
- `;if(q+=`
7438
- ${t.bold}${t.red}\u256D\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256E${t.reset}
7439
- `,q+=`${t.bold}${t.red}\u2502${t.reset} ${t.bold}${t.bgRed} ERROR ${t.reset} ${t.red}${$} Error${t.reset}${" ".repeat(Math.max(0,43-$.length))}${t.bold}${t.red}\u2502${t.reset}
7440
- `,q+=`${t.bold}${t.red}\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256F${t.reset}
7441
- `,q+=`
7442
- ${t.cyan}${t.bold}File:${t.reset} ${t.dim}${W}${t.reset}`,G>0)q+=` ${t.gray}(line ${G}${z>0?`, col ${z}`:""})${t.reset}`;if(q+=`
7443
- ${t.yellow}${t.bold}Message:${t.reset} ${Z}
7444
- `,K)q+=`
7445
- ${t.blue}${t.bold}Context:${t.reset}
7446
- ${t.dim}${K}${t.reset}
7447
- `;return q}function b8(){e$.clear(),$4.clear(),c7.clear()}var e$,$4,c7,bK=0,t;var N0=b(()=>{u5();H7();J1();i5();z5();Y4();S1();R7();N7();J8();r5();e$=new x1(500),$4=new x1(1000),c7=new x1(2000);t={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 i8($,Z,Y=""){let J=$,X=[],Q=/@markdown(?:\([^)]*\))?/g,G;while((G=Q.exec($))!==null){let K=G.index,W=G[0].match(/@markdown\(([^)]*)\)/),z=W?W[1]:"",q=K+G[0].length,U=1,j=q,_=-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===`
7448
- `||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(q,_),H=$.slice(K,_+12);X.push({fullMatch:H,options:z,content:B,index:K}),Q.lastIndex=_+12}for(let{fullMatch:K,options:W,content:z,index:q}of X)try{let U={};if(W)W.split(",").forEach((B)=>{let H=B.trim();if(H)U[H]=!0});let j={gfm:U.gfm??!0,breaks:U.breaks??!1},_=v5(z.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,$,q,K);J=J.split(K).join(_)}return J}async function n8($,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}),v5($.trim(),X)}var o7=b(()=>{N0()});function pK($){if(uK.set($.name,$),$.client)mK.set($.name,$.client)}function J4($){return pK($),{name:$.name,hasEndTag:$.hasEndTag??!0,description:$.description,handler:async(Y,J,X,Q)=>{let G=lK(J,$.defaults);if($.validate){let W=$.validate(G);if(W!==!0){let z=typeof W==="string"?W:`Invalid parameters for @${$.name}`;throw Error(z)}}let K=Y;if($.transform)K=await $.transform(Y,G,X,Q);if($.clientScript){let W=$.clientScript(G);K+=`<script>${W}</script>`}if($.css){let W=$.css(G);K+=`<style>${W}</style>`}return K}}}function lK($,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(),W=J.slice(G+1).trim();if(W==="true")W=!0;else if(W==="false")W=!1;else if(W==="null")W=null;else if(!Number.isNaN(Number(W)))W=Number(W);else if(typeof W==="string"&&W.startsWith("{"))try{W=JSON.parse(W)}catch{}Y[K]=W}else{let K=Object.keys(Y).filter((W)=>!Z||!(W in Z)).length;Y[K===0?"value":`arg${K}`]=J}}return Y}var uK,mK;var s7=b(()=>{uK=new Map,mK=new Map});function r7($,Z=_5,Y={},J){return Z.sort((X,Q)=>X-Q).map((X)=>{return`${Y$($,{...Y,w:X,fm:J})} ${X}w`}).join(", ")}function o8($,Z,Y=cK,J={},X){return Y.sort((Q,G)=>Q-G).map((Q)=>{let G=Math.round(Z*Q);return`${Y$($,{...J,w:G,dpr:Q,fm:X})} ${Q}x`}).join(", ")}function a7($,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 Y$($,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 t7($){return iK[$]||"application/octet-stream"}var _5,cK,Z$,iK;var e7=b(()=>{_5=[320,480,640,768,1024,1280,1536,1920,2560],cK=[1,1.5,2,3],Z$=["avif","webp","jpeg"],iK={avif:"image/avif",webp:"image/webp",jpeg:"image/jpeg",png:"image/png",gif:"image/gif"}});async function oK(){try{return await import("ts-images")}catch{return null}}async function sK($,Z={}){let Y={...nK,...Z},J=await oK();if(J)try{return await rK($,Y,J)}catch(X){console.warn(`[stx-media] ts-images placeholder generation failed, using fallback: ${X}`)}return aK($,Y)}async function rK($,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 aK($,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 s8($,Z,Y={}){let J=Y.transitionDuration||300,X=Y.easing||"ease-out";return`
7432
+ `),I.__stx_event_bindings=[]}}if(w0){let P=C$(C,V);if(P.hasScoped)C=P.html}if(g&&f)o7.set(g,{output:C,dependencies:[...W].filter((P)=>!f.has(P))});return C}catch(B){return`[Error processing component: ${B instanceof Error?B.message:String(B)}]`}finally{z.delete($)}}async function c($){return Bun.file($).exists()}function s7($,Z){let Y=h.resolve(Z),J=h.resolve($),X=Y.endsWith(h.sep)?Y:Y+h.sep;if(J===Y||J.startsWith(X))return J;return null}async function r7($,Z,Y,J){let X=await iK($,Z,Y,J);if(X===null)return null;let Q=s7(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 W=h.isAbsolute(K)?K:h.resolve(process.cwd(),K);if(s7(X,W))return h.resolve(X)}return console.warn(`[stx] rejected resolved template path that escapes project root: ${X} (template: ${$}, from: ${Z})`),null}async function iK($,Z,Y,J){if(Y.debug)console.log(`Resolving template path: ${$} from ${Z}`);let X=h.dirname(Z),Q=process.cwd();if($.startsWith("/")){let j=h.join(Q,$),_=s7(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 c(_)&&J)J.add(_);return _}let G=h.join(X,$);if(await c(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 c(_)){if(Y.debug)console.log(`Found direct path with extension: ${_}`);if(J)J.add(_);return _}}let K="",W=h.resolve(X),q=process.cwd();for(let j=0;j<10;j++){let _=h.join(W,"layouts"),B=!1;try{B=vK.statSync(_,{throwIfNoEntry:!1})?.isDirectory()??!1}catch{}if(B){K=_;break}let H=h.dirname(W);if(H===W||H.length<q.length)break;W=H}if(K){let j=$.startsWith("layouts/")?$.slice(8):$,_=h.join(K,j);if(await c(_)){if(Y.debug)console.log(`Found in current layouts dir: ${_}`);if(J)J.add(_);return _}if(!j.endsWith(".stx")){let B=`${_}.stx`;if(await c(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=h.isAbsolute(Y.layoutsDir)?Y.layoutsDir:h.resolve(process.cwd(),Y.layoutsDir),_=$.startsWith("layouts/")?$.slice(8):$,B=h.join(j,_);if(await c(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 c(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/"),_=h.join(Y.partialsDir||X,"layouts",j[1]);if(await c(_)){if(Y.debug)console.log(`Found in layouts path: ${_}`);if(J)J.add(_);return _}if(!_.endsWith(".stx")){let B=`${_}.stx`;if(await c(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=h.join(Y.partialsDir,"layouts"),await c(K)){let j=h.join(K,$);if(await c(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 c(_)){if(Y.debug)console.log(`Found in partials layouts dir with extension: ${_}`);if(J)J.add(_);return _}}}}let z=Y.partialsDir||h.join(process.cwd(),"views"),U=h.join(z,$);if(await c(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 c(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=h.join(h.dirname(X),"layouts",$);if(await c(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 c(_)){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 r8($,Z,Y){let J=0,X="",Q="";try{if(typeof Z==="number"&&Z>=0){let G=$.split(`
7433
+ `),K=0;for(let W=0;W<G.length;W++)if(K+=G[W].length+1,K>=Z){J=W+1,X=G[W].trim();let q=Math.max(0,W-2),z=Math.min(G.length,W+3);Q=G.slice(q,z).map((U,j)=>{let _=q+j+1;return`${_===J?"> ":" "}${_}: ${U}`}).join(`
7434
+ `);break}}else if(Y){let G=$.indexOf(Y);if(G>=0)return r8($,G)}}catch{}return{lineNumber:J,lineContent:X,context:Q}}function U0($,Z,Y,J,X,Q){let{lineNumber:G,context:K}=r8(J,X,Q),W=Y.split("/").pop(),q=0;if(typeof X==="number"&&X>=0&&J){let U=J.lastIndexOf(`
7435
+ `,Math.max(0,X-1));q=X-(U+1)+1}let z="";if(G>0)z+=`
7436
+ ${Y}:${G}${q>0?`:${q}`:""}: ${$.toLowerCase()} error: ${Z}
7437
+ `;if(z+=`
7438
+ ${e.bold}${e.red}\u256D\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256E${e.reset}
7439
+ `,z+=`${e.bold}${e.red}\u2502${e.reset} ${e.bold}${e.bgRed} ERROR ${e.reset} ${e.red}${$} Error${e.reset}${" ".repeat(Math.max(0,43-$.length))}${e.bold}${e.red}\u2502${e.reset}
7440
+ `,z+=`${e.bold}${e.red}\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256F${e.reset}
7441
+ `,z+=`
7442
+ ${e.cyan}${e.bold}File:${e.reset} ${e.dim}${W}${e.reset}`,G>0)z+=` ${e.gray}(line ${G}${q>0?`, col ${q}`:""})${e.reset}`;if(z+=`
7443
+ ${e.yellow}${e.bold}Message:${e.reset} ${Z}
7444
+ `,K)z+=`
7445
+ ${e.blue}${e.bold}Context:${e.reset}
7446
+ ${e.dim}${K}${e.reset}
7447
+ `;return z}function v8(){Y4.clear(),J4.clear(),o7.clear()}var Y4,J4,o7,xK=0,e;var M0=b(()=>{l5();F7();X1();s5();U5();Q4();y1();T7();I7();g5();W8();e5();Y4=new g1(500),J4=new g1(1000),o7=new g1(2000);e={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 a8($,Z,Y=""){let J=$,X=[],Q=/@markdown(?:\([^)]*\))?/g,G;while((G=Q.exec($))!==null){let K=G.index,W=G[0].match(/@markdown\(([^)]*)\)/),q=W?W[1]:"",z=K+G[0].length,U=1,j=z,_=-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===`
7448
+ `||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(z,_),H=$.slice(K,_+12);X.push({fullMatch:H,options:q,content:B,index:K}),Q.lastIndex=_+12}for(let{fullMatch:K,options:W,content:q,index:z}of X)try{let U={};if(W)W.split(",").forEach((B)=>{let H=B.trim();if(H)U[H]=!0});let j={gfm:U.gfm??!0,breaks:U.breaks??!1},_=f5(q.trim(),j);J=J.split(K).join(_)}catch(U){let j=U instanceof Error?U.message:String(U),_=U0("Markdown Directive",`Error processing markdown: ${j}`,Y,$,z,K);J=J.split(K).join(_)}return J}async function t8($,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}),f5($.trim(),X)}var a7=b(()=>{M0()});function sK($){if(nK.set($.name,$),$.client)oK.set($.name,$.client)}function G4($){return sK($),{name:$.name,hasEndTag:$.hasEndTag??!0,description:$.description,handler:async(Y,J,X,Q)=>{let G=rK(J,$.defaults);if($.validate){let W=$.validate(G);if(W!==!0){let q=typeof W==="string"?W:`Invalid parameters for @${$.name}`;throw Error(q)}}let K=Y;if($.transform)K=await $.transform(Y,G,X,Q);if($.clientScript){let W=$.clientScript(G);K+=`<script>${W}</script>`}if($.css){let W=$.css(G);K+=`<style>${W}</style>`}return K}}}function rK($,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(),W=J.slice(G+1).trim();if(W==="true")W=!0;else if(W==="false")W=!1;else if(W==="null")W=null;else if(!Number.isNaN(Number(W)))W=Number(W);else if(typeof W==="string"&&W.startsWith("{"))try{W=JSON.parse(W)}catch{}Y[K]=W}else{let K=Object.keys(Y).filter((W)=>!Z||!(W in Z)).length;Y[K===0?"value":`arg${K}`]=J}}return Y}var nK,oK;var t7=b(()=>{nK=new Map,oK=new Map});function e7($,Z=H5,Y={},J){return Z.sort((X,Q)=>X-Q).map((X)=>{return`${Q$($,{...Y,w:X,fm:J})} ${X}w`}).join(", ")}function e8($,Z,Y=aK,J={},X){return Y.sort((Q,G)=>Q-G).map((Q)=>{let G=Math.round(Z*Q);return`${Q$($,{...J,w:G,dpr:Q,fm:X})} ${Q}x`}).join(", ")}function $3($,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 Q$($,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 Z3($){return tK[$]||"application/octet-stream"}var H5,aK,X$,tK;var Y3=b(()=>{H5=[320,480,640,768,1024,1280,1536,1920,2560],aK=[1,1.5,2,3],X$=["avif","webp","jpeg"],tK={avif:"image/avif",webp:"image/webp",jpeg:"image/jpeg",png:"image/png",gif:"image/gif"}});async function $W(){try{return await import("ts-images")}catch{return null}}async function ZW($,Z={}){let Y={...eK,...Z},J=await $W();if(J)try{return await YW($,Y,J)}catch(X){console.warn(`[stx-media] ts-images placeholder generation failed, using fallback: ${X}`)}return JW($,Y)}async function YW($,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 JW($,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 $Z($,Z,Y={}){let J=Y.transitionDuration||300,X=Y.easing||"ease-out";return`
7449
7449
  #${$} {
7450
7450
  --stx-img-transition-duration: ${J}ms;
7451
7451
  --stx-img-transition-easing: ${X};
@@ -7462,7 +7462,7 @@ ${t.dim}${K}${t.reset}
7462
7462
  #${$}.stx-img-loaded img {
7463
7463
  opacity: 1;
7464
7464
  }
7465
- `.trim()}async function r8($,Z={}){let Y=`${$}:${JSON.stringify(Z)}`;if($3.has(Y))return $3.get(Y);let J=await sK($,Z);return $3.set(Y,J),J}var nK,Z3,$3;var a8=b(()=>{nK={strategy:"thumbhash",width:20,quality:50,blurLevel:40,transitionDuration:300,easing:"ease-out"},Z3=`
7465
+ `.trim()}async function ZZ($,Z={}){let Y=`${$}:${JSON.stringify(Z)}`;if(J3.has(Y))return J3.get(Y);let J=await ZW($,Z);return J3.set(Y,J),J}var eK,X3,J3;var YZ=b(()=>{eK={strategy:"thumbhash",width:20,quality:50,blurLevel:40,transitionDuration:300,easing:"ease-out"},X3=`
7466
7466
  .stx-img-placeholder {
7467
7467
  position: relative;
7468
7468
  overflow: hidden;
@@ -7491,8 +7491,8 @@ ${t.dim}${K}${t.reset}
7491
7491
  filter: blur(0);
7492
7492
  transform: scale(1);
7493
7493
  }
7494
- `.trim();$3=new Map});import{createHash as e8}from"crypto";import{readFile as tK,stat as $Z}from"fs/promises";async function b0($){try{let Z=await tK($);return e8("sha256").update(Z).digest("hex").slice(0,16)}catch{return""}}function t8($){return e8("sha256").update($).digest("hex").slice(0,16)}function X4($,Z){let Y=JSON.stringify(Z,Object.keys(Z).sort());return`${t8($)}-${t8(Y)}`}async function Y3($){try{return(await $Z($)).mtimeMs}catch{return 0}}async function D0($){try{return await $Z($),!0}catch{return!1}}var m1=()=>{};import{mkdir as eK,readFile as $W,writeFile as ZW,readdir as yO,rm as YW,stat as PO}from"fs/promises";import{join as YZ,dirname as JW}from"path";async function XW($){try{await eK($,{recursive:!0})}catch{}}function JZ($,Z,Y){return YZ($,Y,`${Z}.json`)}async function ZZ($,Z,Y){if((Date.now()-$.createdAt)/86400000>Y)return!1;if(await Y3(Z)!==$.srcMtime)return!1;return!0}async function Q4($,Z,Y,J=J3){if(!J.enabled)return null;let X=X4($,Z),Q=B5.get(X);if(Q){if(await ZZ(Q,$,J.maxAge))return Q.lastAccessedAt=Date.now(),Q.data;B5.delete(X)}let G=JZ(J.directory,X,Y);if(await D0(G))try{let K=await $W(G,"utf-8"),W=JSON.parse(K);if(await ZZ(W,$,J.maxAge))return W.lastAccessedAt=Date.now(),B5.set(X,W),W.data}catch{}return null}async function G4($,Z,Y,J,X=J3){if(!X.enabled)return;let Q=X4($,Z),G=await b0($),K=await Y3($),W={key:Q,src:$,srcHash:G,srcMtime:K,optionsHash:X4("",Z),data:Y,createdAt:Date.now(),lastAccessedAt:Date.now()};B5.set(Q,W);let z=JZ(X.directory,Q,J);try{await XW(JW(z)),await ZW(z,JSON.stringify(W,null,2))}catch(q){console.warn(`[stx-media] Failed to write cache: ${q}`)}}async function K4($,Z=J3){if($==="all")B5.clear();else B5.clear();let Y=$==="all"?["image","video"]:[$];for(let J of Y){let X=YZ(Z.directory,J);try{await YW(X,{recursive:!0,force:!0})}catch{}}}var B5,J3;var X3=b(()=>{m1();B5=new Map,J3={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500}});class z4{config;constructor($={}){this.config={...QW,...$}}async get($,Z){return Q4($,Z,"image",this.config)}async set($,Z,Y){return G4($,Z,Y,"image",this.config)}async clear(){return K4("image",this.config)}updateConfig($){this.config={...this.config,...$}}}function Q3($){if(!W4)W4=new z4($);else if($)W4.updateConfig($);return W4}async function q4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return Q3(J).get($,Z)}async function U4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return Q3(X).set($,Z,Y)}async function XZ(){return Q3().clear()}var QW,W4=null;var G3=b(()=>{X3();QW={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500,cacheVariants:!0,cachePlaceholders:!0}});import{resolve as GW,basename as KW,extname as WW,join as zW}from"path";import{mkdir as qW}from"fs/promises";async function K3(){try{return await import("ts-images")}catch{return null}}function QZ($){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 UW($,Z){let Y=Z?QZ(Z):QZ("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 GZ($,Z,Y){let J=await K3();if(!J)return console.warn("[stx-media] ts-images not installed, skipping optimization"),{src:$,processed:!1};let X=await q4($,Z,Y);if(X)return X;try{let Q=GW($);if(!await D0(Q))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let G=UW(Y,Z.preset),K=Y.outputDir||"dist/images",W=Y.baseUrl||"/images";await qW(K,{recursive:!0});let z=await b0(Q),q=KW($,WW($)),U=Z.outputFormat?[Z.outputFormat]:Y.defaultFormats||["avif","webp","jpeg"],j={src:$,processed:!0,variants:[],hash:z},_=null;if(Z.transformations&&Z.transformations.length>0)_=await W3(Q,Z.transformations,J);for(let B of U){let H=G[B]||{},L=`${q}-${z}.${B}`,V=zW(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:`${W}/${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 U4($,Z,j,Y),j}catch(Q){return{src:$,processed:!1,errors:[`Processing failed: ${Q}`]}}}async function KZ($,Z,Y,J){let X=await K3();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 W3($,Z,Y){let J=Y||await K3();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 WZ=b(()=>{m1();G3()});import{resolve as jW,basename as _W,extname as BW,join as HW}from"path";import{mkdir as OW}from"fs/promises";async function LW(){try{return await import("ts-images")}catch{return null}}async function zZ($,Z,Y){let J=await LW();if(!J)return console.warn("[stx-media] ts-images not installed, skipping responsive generation"),null;let X=jW($);if(!await D0(X))return console.warn(`[stx-media] Source file not found: ${$}`),null;try{let Q=Z.responsiveWidths||Y.breakpoints||FW,G=Z.formats||Y.defaultFormats||["avif","webp","jpeg"],K=Y.outputDir||"dist/images",W=Y.baseUrl||"/images";await OW(K,{recursive:!0});let z=await b0(X),q=_W($,BW($)),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=`${q}-${L}w-${z}.${B}`,O=HW(K,V),F=`${W}/${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||VW(Q),j}catch(Q){return console.error(`[stx-media] Responsive generation failed: ${Q}`),null}}function VW($){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 qZ($,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 FW;var UZ=b(()=>{m1();FW=[320,480,640,768,1024,1280,1536,1920]});var jZ={};a(jZ,{setCachedImageResult:()=>U4,processImage:()=>GZ,optimizeImage:()=>KZ,getCachedImageResult:()=>q4,generateSrcset:()=>qZ,generateResponsiveVariants:()=>zZ,clearImageCache:()=>XZ,applyTransformations:()=>W3,ImageProcessorCache:()=>z4});var _Z=b(()=>{WZ();UZ();G3()});async function wW(){try{return await Promise.resolve().then(() => (_Z(),jZ))}catch($){if(!BZ)console.warn("[stx-media] Image processor not available, some features disabled:",$),BZ=!0;return null}}async function j4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipOptimization){if(Y.tsImagesConfig?.enabled&&!Y.isDev)return MW(J,Y)}if(Y.processedResult?.processed)return j3($,Y.processedResult,Z);if(Y.responsiveVariants)return FZ($,Y.responsiveVariants,Z);let{src:X,alt:Q,width:G,height:K,sizes:W,widths:z=_5,dpr:q,formats:U=Z$,quality:j=z3,params:_={},placeholder:B="none",placeholderOptions:H={},lazy:L=!0,priority:V=!1,loading:O=V?"eager":B4,decoding:F=_4,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 NW($);let k,v,g=E||`stx-img-${Math.random().toString(36).slice(2,8)}`;if(B!=="none"&&!V)try{k=await r8(X,{strategy:B,...H}),v=s8(g,k,H)}catch{}let f=q!==void 0&&G!==void 0,d;if(f)d=RW($,g,k,Z);else d=await AW($,g,k,Z);let p;if(V){let V0=U.includes("webp")?"webp":U[0],r=r7(X,z,{..._,q:j},V0),Q0=typeof W==="object"?a7(W):W||"100vw";p=`<link rel="preload" as="image" imagesrcset="${r}" imagesizes="${Q0}" />`}let X0=[];if(!HZ&&B!=="none")X0.push(Z3),HZ=!0;if(v)X0.push(v);let Z0=L?LZ(g):void 0;return{html:d,preloadLink:p,css:X0.length>0?X0.join(`
7495
- `):void 0,script:Z0}}async function AW($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,sizes:W,widths:z=_5,formats:q=Z$,quality:U=z3,params:j={},lazy:_=!0,priority:B=!1,loading:H=B?"eager":B4,decoding:L=_4,fetchpriority:V,objectFit:O,objectPosition:F,crossorigin:w,referrerpolicy:A}=$,R=$.class,N=$.style,M=$.data||{},T=typeof W==="object"?a7(W):W||"100vw",I=[];for(let y of q){let S=r7(X,z,{...j,q:U},y),k=t7(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=q3({src:Y$(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:OZ(R,Y),style:U3(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}">
7494
+ `.trim();J3=new Map});import{createHash as XZ}from"crypto";import{readFile as XW,stat as QZ}from"fs/promises";async function S0($){try{let Z=await XW($);return XZ("sha256").update(Z).digest("hex").slice(0,16)}catch{return""}}function JZ($){return XZ("sha256").update($).digest("hex").slice(0,16)}function K4($,Z){let Y=JSON.stringify(Z,Object.keys(Z).sort());return`${JZ($)}-${JZ(Y)}`}async function Q3($){try{return(await QZ($)).mtimeMs}catch{return 0}}async function E0($){try{return await QZ($),!0}catch{return!1}}var l1=()=>{};import{mkdir as QW,readFile as GW,writeFile as KW,readdir as mO,rm as WW,stat as pO}from"fs/promises";import{join as KZ,dirname as qW}from"path";async function zW($){try{await QW($,{recursive:!0})}catch{}}function WZ($,Z,Y){return KZ($,Y,`${Z}.json`)}async function GZ($,Z,Y){if((Date.now()-$.createdAt)/86400000>Y)return!1;if(await Q3(Z)!==$.srcMtime)return!1;return!0}async function W4($,Z,Y,J=G3){if(!J.enabled)return null;let X=K4($,Z),Q=O5.get(X);if(Q){if(await GZ(Q,$,J.maxAge))return Q.lastAccessedAt=Date.now(),Q.data;O5.delete(X)}let G=WZ(J.directory,X,Y);if(await E0(G))try{let K=await GW(G,"utf-8"),W=JSON.parse(K);if(await GZ(W,$,J.maxAge))return W.lastAccessedAt=Date.now(),O5.set(X,W),W.data}catch{}return null}async function q4($,Z,Y,J,X=G3){if(!X.enabled)return;let Q=K4($,Z),G=await S0($),K=await Q3($),W={key:Q,src:$,srcHash:G,srcMtime:K,optionsHash:K4("",Z),data:Y,createdAt:Date.now(),lastAccessedAt:Date.now()};O5.set(Q,W);let q=WZ(X.directory,Q,J);try{await zW(qW(q)),await KW(q,JSON.stringify(W,null,2))}catch(z){console.warn(`[stx-media] Failed to write cache: ${z}`)}}async function z4($,Z=G3){if($==="all")O5.clear();else O5.clear();let Y=$==="all"?["image","video"]:[$];for(let J of Y){let X=KZ(Z.directory,J);try{await WW(X,{recursive:!0,force:!0})}catch{}}}var O5,G3;var K3=b(()=>{l1();O5=new Map,G3={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500}});class j4{config;constructor($={}){this.config={...UW,...$}}async get($,Z){return W4($,Z,"image",this.config)}async set($,Z,Y){return q4($,Z,Y,"image",this.config)}async clear(){return z4("image",this.config)}updateConfig($){this.config={...this.config,...$}}}function W3($){if(!U4)U4=new j4($);else if($)U4.updateConfig($);return U4}async function _4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return W3(J).get($,Z)}async function B4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return W3(X).set($,Z,Y)}async function qZ(){return W3().clear()}var UW,U4=null;var q3=b(()=>{K3();UW={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500,cacheVariants:!0,cachePlaceholders:!0}});import{resolve as jW,basename as _W,extname as BW,join as HW}from"path";import{mkdir as OW}from"fs/promises";async function z3(){try{return await import("ts-images")}catch{return null}}function zZ($){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 LW($,Z){let Y=Z?zZ(Z):zZ("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 UZ($,Z,Y){let J=await z3();if(!J)return console.warn("[stx-media] ts-images not installed, skipping optimization"),{src:$,processed:!1};let X=await _4($,Z,Y);if(X)return X;try{let Q=jW($);if(!await E0(Q))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let G=LW(Y,Z.preset),K=Y.outputDir||"dist/images",W=Y.baseUrl||"/images";await OW(K,{recursive:!0});let q=await S0(Q),z=_W($,BW($)),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 U3(Q,Z.transformations,J);for(let B of U){let H=G[B]||{},L=`${z}-${q}.${B}`,V=HW(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:`${W}/${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 B4($,Z,j,Y),j}catch(Q){return{src:$,processed:!1,errors:[`Processing failed: ${Q}`]}}}async function jZ($,Z,Y,J){let X=await z3();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 U3($,Z,Y){let J=Y||await z3();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 _Z=b(()=>{l1();q3()});import{resolve as FW,basename as VW,extname as wW,join as AW}from"path";import{mkdir as RW}from"fs/promises";async function NW(){try{return await import("ts-images")}catch{return null}}async function BZ($,Z,Y){let J=await NW();if(!J)return console.warn("[stx-media] ts-images not installed, skipping responsive generation"),null;let X=FW($);if(!await E0(X))return console.warn(`[stx-media] Source file not found: ${$}`),null;try{let Q=Z.responsiveWidths||Y.breakpoints||MW,G=Z.formats||Y.defaultFormats||["avif","webp","jpeg"],K=Y.outputDir||"dist/images",W=Y.baseUrl||"/images";await RW(K,{recursive:!0});let q=await S0(X),z=VW($,wW($)),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=`${z}-${L}w-${q}.${B}`,O=AW(K,V),F=`${W}/${V}`;try{let w=U[B]?.quality||80;if(await E0(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||TW(Q),j}catch(Q){return console.error(`[stx-media] Responsive generation failed: ${Q}`),null}}function TW($){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 HZ($,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 MW;var OZ=b(()=>{l1();MW=[320,480,640,768,1024,1280,1536,1920]});var LZ={};a(LZ,{setCachedImageResult:()=>B4,processImage:()=>UZ,optimizeImage:()=>jZ,getCachedImageResult:()=>_4,generateSrcset:()=>HZ,generateResponsiveVariants:()=>BZ,clearImageCache:()=>qZ,applyTransformations:()=>U3,ImageProcessorCache:()=>j4});var FZ=b(()=>{_Z();OZ();q3()});async function IW(){try{return await Promise.resolve().then(() => (FZ(),LZ))}catch($){if(!VZ)console.warn("[stx-media] Image processor not available, some features disabled:",$),VZ=!0;return null}}async function H4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipOptimization){if(Y.tsImagesConfig?.enabled&&!Y.isDev)return bW(J,Y)}if(Y.processedResult?.processed)return H3($,Y.processedResult,Z);if(Y.responsiveVariants)return NZ($,Y.responsiveVariants,Z);let{src:X,alt:Q,width:G,height:K,sizes:W,widths:q=H5,dpr:z,formats:U=X$,quality:j=j3,params:_={},placeholder:B="none",placeholderOptions:H={},lazy:L=!0,priority:V=!1,loading:O=V?"eager":L4,decoding:F=O4,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 kW($);let k,v,g=E||`stx-img-${Math.random().toString(36).slice(2,8)}`;if(B!=="none"&&!V)try{k=await ZZ(X,{strategy:B,...H}),v=$Z(g,k,H)}catch{}let f=z!==void 0&&G!==void 0,d;if(f)d=EW($,g,k,Z);else d=await DW($,g,k,Z);let p;if(V){let w0=U.includes("webp")?"webp":U[0],r=e7(X,q,{..._,q:j},w0),G0=typeof W==="object"?$3(W):W||"100vw";p=`<link rel="preload" as="image" imagesrcset="${r}" imagesizes="${G0}" />`}let Q0=[];if(!wZ&&B!=="none")Q0.push(X3),wZ=!0;if(v)Q0.push(v);let Y0=L?RZ(g):void 0;return{html:d,preloadLink:p,css:Q0.length>0?Q0.join(`
7495
+ `):void 0,script:Y0}}async function DW($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,sizes:W,widths:q=H5,formats:z=X$,quality:U=j3,params:j={},lazy:_=!0,priority:B=!1,loading:H=B?"eager":L4,decoding:L=O4,fetchpriority:V,objectFit:O,objectPosition:F,crossorigin:w,referrerpolicy:A}=$,R=$.class,N=$.style,M=$.data||{},T=typeof W==="object"?$3(W):W||"100vw",I=[];for(let y of z){let S=e7(X,q,{...j,q:U},y),k=Z3(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:Q$(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:AZ(R,Y),style:B3(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}">
7496
7496
  <picture>
7497
7497
  ${I.join(`
7498
7498
  `)}
@@ -7502,9 +7502,9 @@ ${I.join(`
7502
7502
  ${I.join(`
7503
7503
  `)}
7504
7504
  <img ${E} />
7505
- </picture>`;return D}function RW($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,dpr:W=[1,2,3],quality:z=z3,params:q={},lazy:U=!0,priority:j=!1,loading:_=j?"eager":B4,decoding:B=_4,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=o8(X,N,W,{...q,q:z}),T=q3({src:Y$(X,{...q,w:N,q:z}),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:OZ(w,Y),style:U3(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}">
7505
+ </picture>`;return D}function EW($,Z,Y,J){let{src:X,alt:Q,width:G,height:K,dpr:W=[1,2,3],quality:q=j3,params:z={},lazy:U=!0,priority:j=!1,loading:_=j?"eager":L4,decoding:B=O4,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=e8(X,N,W,{...z,q}),T=_3({src:Q$(X,{...z,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:AZ(w,Y),style:B3(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}">
7506
7506
  <img ${T} ${I} />
7507
- </div>`}return`<img ${Z?`id="${Z}" `:""}${T} ${I} />`}function NW($){let{src:Z,alt:Y,width:J,height:X,loading:Q=B4,decoding:G=_4,fetchpriority:K,objectFit:W,objectPosition:z,crossorigin:q,referrerpolicy:U,priority:j=!1}=$,_=$.class,B=$.style,H=$.id,L=$.data||{};return{html:`<img ${q3({src:Z,alt:Y,width:J,height:X,loading:j?"eager":Q,decoding:G,fetchpriority:j?"high":K,objectFit:W,objectPosition:z,crossorigin:q,referrerpolicy:U,className:_,style:U3(B,W,z),id:H,data:L})} />`}}function q3($){let Z=[];if($.lazy)Z.push(`data-src="${a0($.src)}"`),Z.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"');else Z.push(`src="${a0($.src)}"`);if(Z.push(`alt="${a0($.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="${a0($.className)}"`);if($.style)Z.push(`style="${a0($.style)}"`);if($.id)Z.push(`id="${a0($.id)}"`);if($.data)for(let[Y,J]of Object.entries($.data))Z.push(`data-${Y}="${a0(J)}"`);if($.lazy)Z.push("data-stx-lazy");return Z.join(" ")}function OZ($,Z){let Y=[];if($)Y.push($);if(Z)Y.push("stx-img-blur");return Y.join(" ")||""}function U3($,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 a0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function LZ($){return`
7507
+ </div>`}return`<img ${Z?`id="${Z}" `:""}${T} ${I} />`}function kW($){let{src:Z,alt:Y,width:J,height:X,loading:Q=L4,decoding:G=O4,fetchpriority:K,objectFit:W,objectPosition:q,crossorigin:z,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:W,objectPosition:q,crossorigin:z,referrerpolicy:U,className:_,style:B3(B,W,q),id:H,data:L})} />`}}function _3($){let Z=[];if($.lazy)Z.push(`data-src="${t0($.src)}"`),Z.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"');else Z.push(`src="${t0($.src)}"`);if(Z.push(`alt="${t0($.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="${t0($.className)}"`);if($.style)Z.push(`style="${t0($.style)}"`);if($.id)Z.push(`id="${t0($.id)}"`);if($.data)for(let[Y,J]of Object.entries($.data))Z.push(`data-${Y}="${t0(J)}"`);if($.lazy)Z.push("data-stx-lazy");return Z.join(" ")}function AZ($,Z){let Y=[];if($)Y.push($);if(Z)Y.push("stx-img-blur");return Y.join(" ")||""}function B3($,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 t0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function RZ($){return`
7508
7508
  (function() {
7509
7509
  const container = document.getElementById('${$}');
7510
7510
  if (!container) return;
@@ -7541,7 +7541,7 @@ ${I.join(`
7541
7541
 
7542
7542
  observer.observe(container);
7543
7543
  })();
7544
- `.trim()}async function MW($,Z){let Y=await wW();if(!Y)return j4({...$,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 FZ($,Q,Z)}else{let Q=await Y.processImage($.src,$,J);if(Q.processed)return j3($,Q,Z)}return j4({...$,process:!1},Z)}async function j3($,Z,Y){let{alt:J,width:X,height:Q,lazy:G=!0,priority:K=!1,objectFit:W,objectPosition:z,crossorigin:q,referrerpolicy:U}=$,j=$.class,_=$.style,B=$.id||`stx-img-${Math.random().toString(36).slice(2,8)}`,H=$.data||{},L=Z.variants||[],V=L.find((v)=>v.format==="jpeg")||L.find((v)=>v.format==="webp")||L[0],O=V?.url||$.src,F=L.filter((v)=>v.format===(V?.format||"jpeg")).map((v)=>`${v.url} ${v.width}w`).join(", "),w=new Map;for(let v of L){if(!w.has(v.format))w.set(v.format,[]);w.get(v.format).push(v)}let A=[],R=["avif","webp","jpeg","png"];for(let v of R){let g=w.get(v);if(g&&g.length>0){let f=g.map((p)=>`${p.url} ${p.width}w`).join(", "),d=t7(v);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="${a0(O)}"`),N.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"'),F)N.push(`data-srcset="${F}"`)}else if(N.push(`src="${a0(O)}"`),F)N.push(`srcset="${F}"`);N.push(`alt="${a0(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(q)N.push(`crossorigin="${q}"`);if(U)N.push(`referrerpolicy="${U}"`);let I=[];if(W)I.push(`object-fit: ${W}`);if(z)I.push(`object-position: ${z}`);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[v,g]of Object.entries(H))N.push(`data-${v}="${a0(g)}"`);let D;if(Z.placeholder||Z.dominantColor&&$.useDominantColor){let v=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="${v}">
7544
+ `.trim()}async function bW($,Z){let Y=await IW();if(!Y)return H4({...$,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 NZ($,Q,Z)}else{let Q=await Y.processImage($.src,$,J);if(Q.processed)return H3($,Q,Z)}return H4({...$,process:!1},Z)}async function H3($,Z,Y){let{alt:J,width:X,height:Q,lazy:G=!0,priority:K=!1,objectFit:W,objectPosition:q,crossorigin:z,referrerpolicy:U}=$,j=$.class,_=$.style,B=$.id||`stx-img-${Math.random().toString(36).slice(2,8)}`,H=$.data||{},L=Z.variants||[],V=L.find((v)=>v.format==="jpeg")||L.find((v)=>v.format==="webp")||L[0],O=V?.url||$.src,F=L.filter((v)=>v.format===(V?.format||"jpeg")).map((v)=>`${v.url} ${v.width}w`).join(", "),w=new Map;for(let v of L){if(!w.has(v.format))w.set(v.format,[]);w.get(v.format).push(v)}let A=[],R=["avif","webp","jpeg","png"];for(let v of R){let g=w.get(v);if(g&&g.length>0){let f=g.map((p)=>`${p.url} ${p.width}w`).join(", "),d=Z3(v);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="${t0(O)}"`),N.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"'),F)N.push(`data-srcset="${F}"`)}else if(N.push(`src="${t0(O)}"`),F)N.push(`srcset="${F}"`);N.push(`alt="${t0(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(z)N.push(`crossorigin="${z}"`);if(U)N.push(`referrerpolicy="${U}"`);let I=[];if(W)I.push(`object-fit: ${W}`);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[v,g]of Object.entries(H))N.push(`data-${v}="${t0(g)}"`);let D;if(Z.placeholder||Z.dominantColor&&$.useDominantColor){let v=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="${v}">
7545
7545
  <picture>
7546
7546
  ${A.join(`
7547
7547
  `)}
@@ -7551,12 +7551,12 @@ ${A.join(`
7551
7551
  ${A.join(`
7552
7552
  `)}
7553
7553
  <img ${N.join(" ")} />
7554
- </picture>`;let y=[];if(Z.placeholder)y.push(Z3);let S=G?LZ(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(`
7555
- `):void 0,script:S}}async function FZ($,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 j3($,J,Y)}var BZ=!1,z3=80,_4="async",B4="lazy",HZ=!1;var VZ=b(()=>{e7();a8()});function TW(){return J4({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}=IW($,Z,Y);if(!X)return console.warn("@img directive: missing src argument"),"<!-- @img: missing src -->";let K={src:X,alt:Q||"",widths:G.widths||_5,formats:G.formats||Z$,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},W=Y.__isDev||!1,z=await j4(K,{isDev:W}),q=z.html;if(z.preloadLink)q=z.preloadLink+`
7556
- `+q;if(z.css)q+=`
7557
- <style>${z.css}</style>`;if(z.script)q+=`
7558
- <script>${z.script}</script>`;return q},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function IW($,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=DW(J),Q=_3(X[0],Y)||"",G=_3(X[1],Y)||"",K={};if(X[2]){let W=_3(X[2],Y);if(typeof W==="object"&&W!==null)K=W;else if(typeof X[2]==="string")try{K=JSON.parse(X[2])}catch{}}return{src:Q,alt:G,options:K}}function DW($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let W=$[K],z=K>0?$[K-1]:"";if((W==='"'||W==="'"||W==="`")&&z!=="\\"){if(!J)J=!0,X=W;else if(W===X)J=!1,X="";else Y+=W;continue}if(!J){if(W==="{")Q++;if(W==="}")Q--;if(W==="[")G++;if(W==="]")G--;if(W===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=W}if(Y.trim())Z.push(Y.trim());return Z}function _3($,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 wZ;var AZ=b(()=>{s7();VZ();e7();wZ=TW()});class O4{config;constructor($={}){this.config={...EW,...$}}async get($,Z){return Q4($,Z,"video",this.config)}async set($,Z,Y){return G4($,Z,Y,"video",this.config)}async clear(){return K4("video",this.config)}updateConfig($){this.config={...this.config,...$}}}function B3($){if(!H4)H4=new O4($);else if($)H4.updateConfig($);return H4}async function L4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return B3(J).get($,Z)}async function F4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return B3(X).set($,Z,Y)}async function RZ(){return B3().clear()}var EW,H4=null;var H3=b(()=>{X3();EW={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:2000,cacheTranscoded:!0,cacheThumbnails:!0,cacheManifests:!0}});import{resolve as O3,basename as L3,extname as F3,join as V4}from"path";import{mkdir as V3}from"fs/promises";async function w3(){try{return await import("ts-videos")}catch{return null}}async function w4($,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=O3($);if(!await D0(Q))return null;await V3(Y,{recursive:!0});let G=await b0(Q),K=L3($,F3($)),W=Z.format||"webp",z=Z.timestamp||0,q=`${K}-poster-${G}.${W}`,U=V4(Y,q),j=await X.extractThumbnails(Q,{timestamps:[z],width:Z.width||1280,height:Z.height,format:W,quality:Z.quality||85,outputDir:Y,outputPattern:q.replace(`.${W}`,"")});if(j&&j.length>0){let _=j[0];return{path:U,url:`${J}/${q}`,width:_.width||Z.width||1280,height:_.height||720,timestamp:z,size:_.size||0}}return null}catch(Q){return console.warn(`[stx-media] Failed to generate poster: ${Q}`),null}}async function A4($,Z,Y,J){let X=await w3();if(!X)return[];try{let Q=O3($);if(!await D0(Q))return[];await V3(Y,{recursive:!0});let G=await b0(Q),K=L3($,F3($)),W=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:W,quality:Z.quality||80,outputDir:Y,outputPattern:`${K}-thumb-${G}`});if(H&&H.length>0)return H.map((L,V)=>({path:L.path||V4(Y,`${K}-thumb-${G}-${V}.${W}`),url:`${J}/${K}-thumb-${G}-${V}.${W}`,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 NZ($,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=O3($);if(!await D0(Q))return null;await V3(Y,{recursive:!0});let G=await b0(Q),K=L3($,F3($)),q=(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(q/j),V=Math.ceil(L/U),O=`${K}-sprite-${G}.${H}`,F=V4(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:V4(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 A3=b(()=>{m1()});import{resolve as TZ,basename as IZ,extname as DZ,join as p1}from"path";import{mkdir as R4,writeFile as EZ}from"fs/promises";async function kZ(){try{return await import("ts-videos")}catch{return null}}async function N4($,Z,Y,J,X){let Q=await kZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate HLS manifest"),null;try{let G=TZ($);if(!await D0(G))return null;let K=await b0(G),W=IZ($,DZ($)),z=p1(Y,`${W}-${K}-hls`);await R4(z,{recursive:!0});let q=Z.length>0?Z:bZ,U=X?.segmentDuration||6,B=(await new Q.Input(G).getInfo()).duration||0,H=[],L=0;for(let F of q){let w=p1(z,F.label);await R4(w,{recursive:!0});let A=`${F.label}.m3u8`,R=p1(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}/${W}-${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=p1(z,"master.m3u8"),O=kW(H,J,W,K);return await EZ(V,O),{manifestUrl:`${J}/${W}-${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 kW($,Z,Y,J){let X=["#EXTM3U","#EXT-X-VERSION:3"];for(let Q of $){let{quality:G}=Q,K=G.bitrate+(G.audioBitrate||128000),W=`${G.width}x${G.height||Math.round(G.width*9/16)}`;X.push(`#EXT-X-STREAM-INF:BANDWIDTH=${K},RESOLUTION=${W},NAME="${G.label}"`,`${G.label}/${G.label}.m3u8`)}return X.join(`
7559
- `)}async function M4($,Z,Y,J,X){let Q=await kZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate DASH manifest"),null;try{let G=TZ($);if(!await D0(G))return null;let K=await b0(G),W=IZ($,DZ($)),z=p1(Y,`${W}-${K}-dash`);await R4(z,{recursive:!0});let q=Z.length>0?Z:bZ,U=X?.segmentDuration||4,j=X?.minBufferTime||2,H=(await new Q.Input(G).getInfo()).duration||0,L=[],V=[];for(let A of q){let R=p1(z,A.label);await R4(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}/${W}-${K}-dash/${A.label}/video`}),A.audioBitrate)V.push({bandwidth:A.audioBitrate,url:`${J}/${W}-${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=p1(z,"manifest.mpd"),F=bW(L,V,H,U,j);await EZ(O,F);let w=[{type:"video",representations:L}];if(V.length>0)w.push({type:"audio",representations:V});return{manifestUrl:`${J}/${W}-${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 bW($,Z,Y,J,X){let Q=MZ(Y),G=MZ(X),K=`<?xml version="1.0" encoding="UTF-8"?>
7554
+ </picture>`;let y=[];if(Z.placeholder)y.push(X3);let S=G?RZ(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(`
7555
+ `):void 0,script:S}}async function NZ($,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 H3($,J,Y)}var VZ=!1,j3=80,O4="async",L4="lazy",wZ=!1;var MZ=b(()=>{Y3();YZ()});function SW(){return G4({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}=yW($,Z,Y);if(!X)return console.warn("@img directive: missing src argument"),"<!-- @img: missing src -->";let K={src:X,alt:Q||"",widths:G.widths||H5,formats:G.formats||X$,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},W=Y.__isDev||!1,q=await H4(K,{isDev:W}),z=q.html;if(q.preloadLink)z=q.preloadLink+`
7556
+ `+z;if(q.css)z+=`
7557
+ <style>${q.css}</style>`;if(q.script)z+=`
7558
+ <script>${q.script}</script>`;return z},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function yW($,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=PW(J),Q=O3(X[0],Y)||"",G=O3(X[1],Y)||"",K={};if(X[2]){let W=O3(X[2],Y);if(typeof W==="object"&&W!==null)K=W;else if(typeof X[2]==="string")try{K=JSON.parse(X[2])}catch{}}return{src:Q,alt:G,options:K}}function PW($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let W=$[K],q=K>0?$[K-1]:"";if((W==='"'||W==="'"||W==="`")&&q!=="\\"){if(!J)J=!0,X=W;else if(W===X)J=!1,X="";else Y+=W;continue}if(!J){if(W==="{")Q++;if(W==="}")Q--;if(W==="[")G++;if(W==="]")G--;if(W===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=W}if(Y.trim())Z.push(Y.trim());return Z}function O3($,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 TZ;var IZ=b(()=>{t7();MZ();Y3();TZ=SW()});class V4{config;constructor($={}){this.config={...CW,...$}}async get($,Z){return W4($,Z,"video",this.config)}async set($,Z,Y){return q4($,Z,Y,"video",this.config)}async clear(){return z4("video",this.config)}updateConfig($){this.config={...this.config,...$}}}function L3($){if(!F4)F4=new V4($);else if($)F4.updateConfig($);return F4}async function w4($,Z,Y){let J=Y?{directory:`${Y.outputDir}/../.cache`}:{};return L3(J).get($,Z)}async function A4($,Z,Y,J){let X=J?{directory:`${J.outputDir}/../.cache`}:{};return L3(X).set($,Z,Y)}async function DZ(){return L3().clear()}var CW,F4=null;var F3=b(()=>{K3();CW={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:2000,cacheTranscoded:!0,cacheThumbnails:!0,cacheManifests:!0}});import{resolve as V3,basename as w3,extname as A3,join as R4}from"path";import{mkdir as R3}from"fs/promises";async function N3(){try{return await import("ts-videos")}catch{return null}}async function N4($,Z,Y,J){let X=await N3();if(!X)return console.warn("[stx-media] ts-videos not installed, cannot generate poster"),null;try{let Q=V3($);if(!await E0(Q))return null;await R3(Y,{recursive:!0});let G=await S0(Q),K=w3($,A3($)),W=Z.format||"webp",q=Z.timestamp||0,z=`${K}-poster-${G}.${W}`,U=R4(Y,z),j=await X.extractThumbnails(Q,{timestamps:[q],width:Z.width||1280,height:Z.height,format:W,quality:Z.quality||85,outputDir:Y,outputPattern:z.replace(`.${W}`,"")});if(j&&j.length>0){let _=j[0];return{path:U,url:`${J}/${z}`,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 M4($,Z,Y,J){let X=await N3();if(!X)return[];try{let Q=V3($);if(!await E0(Q))return[];await R3(Y,{recursive:!0});let G=await S0(Q),K=w3($,A3($)),W=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:W,quality:Z.quality||80,outputDir:Y,outputPattern:`${K}-thumb-${G}`});if(H&&H.length>0)return H.map((L,V)=>({path:L.path||R4(Y,`${K}-thumb-${G}-${V}.${W}`),url:`${J}/${K}-thumb-${G}-${V}.${W}`,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 EZ($,Z,Y,J){let X=await N3();if(!X)return console.warn("[stx-media] ts-videos not installed, cannot generate sprite sheet"),null;try{let Q=V3($);if(!await E0(Q))return null;await R3(Y,{recursive:!0});let G=await S0(Q),K=w3($,A3($)),z=(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(z/j),V=Math.ceil(L/U),O=`${K}-sprite-${G}.${H}`,F=R4(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:R4(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 M3=b(()=>{l1()});import{resolve as bZ,basename as SZ,extname as yZ,join as c1}from"path";import{mkdir as T4,writeFile as PZ}from"fs/promises";async function CZ(){try{return await import("ts-videos")}catch{return null}}async function I4($,Z,Y,J,X){let Q=await CZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate HLS manifest"),null;try{let G=bZ($);if(!await E0(G))return null;let K=await S0(G),W=SZ($,yZ($)),q=c1(Y,`${W}-${K}-hls`);await T4(q,{recursive:!0});let z=Z.length>0?Z:vZ,U=X?.segmentDuration||6,B=(await new Q.Input(G).getInfo()).duration||0,H=[],L=0;for(let F of z){let w=c1(q,F.label);await T4(w,{recursive:!0});let A=`${F.label}.m3u8`,R=c1(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}/${W}-${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=c1(q,"master.m3u8"),O=vW(H,J,W,K);return await PZ(V,O),{manifestUrl:`${J}/${W}-${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 vW($,Z,Y,J){let X=["#EXTM3U","#EXT-X-VERSION:3"];for(let Q of $){let{quality:G}=Q,K=G.bitrate+(G.audioBitrate||128000),W=`${G.width}x${G.height||Math.round(G.width*9/16)}`;X.push(`#EXT-X-STREAM-INF:BANDWIDTH=${K},RESOLUTION=${W},NAME="${G.label}"`,`${G.label}/${G.label}.m3u8`)}return X.join(`
7559
+ `)}async function D4($,Z,Y,J,X){let Q=await CZ();if(!Q)return console.warn("[stx-media] ts-videos not installed, cannot generate DASH manifest"),null;try{let G=bZ($);if(!await E0(G))return null;let K=await S0(G),W=SZ($,yZ($)),q=c1(Y,`${W}-${K}-dash`);await T4(q,{recursive:!0});let z=Z.length>0?Z:vZ,U=X?.segmentDuration||4,j=X?.minBufferTime||2,H=(await new Q.Input(G).getInfo()).duration||0,L=[],V=[];for(let A of z){let R=c1(q,A.label);await T4(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}/${W}-${K}-dash/${A.label}/video`}),A.audioBitrate)V.push({bandwidth:A.audioBitrate,url:`${J}/${W}-${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=c1(q,"manifest.mpd"),F=xW(L,V,H,U,j);await PZ(O,F);let w=[{type:"video",representations:L}];if(V.length>0)w.push({type:"audio",representations:V});return{manifestUrl:`${J}/${W}-${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 xW($,Z,Y,J,X){let Q=kZ(Y),G=kZ(X),K=`<?xml version="1.0" encoding="UTF-8"?>
7560
7560
  <MPD xmlns="urn:mpeg:dash:schema:mpd:2011"
7561
7561
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
7562
7562
  xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd"
@@ -7566,23 +7566,23 @@ ${A.join(`
7566
7566
  profiles="urn:mpeg:dash:profile:isoff-on-demand:2011">
7567
7567
  <Period>
7568
7568
  <AdaptationSet mimeType="video/mp4" codecs="avc1.64001f" segmentAlignment="true" startWithSAP="1">
7569
- `;for(let W=0;W<$.length;W++){let z=$[W];K+=` <Representation id="video${W}" bandwidth="${z.bandwidth}" width="${z.width}" height="${z.height}">
7570
- <BaseURL>${z.url}/</BaseURL>
7569
+ `;for(let W=0;W<$.length;W++){let q=$[W];K+=` <Representation id="video${W}" bandwidth="${q.bandwidth}" width="${q.width}" height="${q.height}">
7570
+ <BaseURL>${q.url}/</BaseURL>
7571
7571
  <SegmentBase indexRange="0-999">
7572
7572
  <Initialization range="0-999"/>
7573
7573
  </SegmentBase>
7574
7574
  </Representation>
7575
7575
  `}if(K+=` </AdaptationSet>
7576
7576
  `,Z.length>0){K+=` <AdaptationSet mimeType="audio/mp4" codecs="mp4a.40.2" segmentAlignment="true" startWithSAP="1">
7577
- `;for(let W=0;W<Z.length;W++){let z=Z[W];K+=` <Representation id="audio${W}" bandwidth="${z.bandwidth}">
7578
- <BaseURL>${z.url}/</BaseURL>
7577
+ `;for(let W=0;W<Z.length;W++){let q=Z[W];K+=` <Representation id="audio${W}" bandwidth="${q.bandwidth}">
7578
+ <BaseURL>${q.url}/</BaseURL>
7579
7579
  <SegmentBase indexRange="0-999">
7580
7580
  <Initialization range="0-999"/>
7581
7581
  </SegmentBase>
7582
7582
  </Representation>
7583
7583
  `}K+=` </AdaptationSet>
7584
7584
  `}return K+=` </Period>
7585
- </MPD>`,K}function MZ($){let Z=Math.floor($/3600),Y=Math.floor($%3600/60),J=Math.floor($%60),X="PT";if(Z>0)X+=`${Z}H`;if(Y>0)X+=`${Y}M`;return X+=`${J}S`,X}var bZ;var R3=b(()=>{m1();bZ=[{label:"1080p",width:1920,height:1080,bitrate:5000000,audioBitrate:192000},{label:"720p",width:1280,height:720,bitrate:2500000,audioBitrate:128000},{label:"480p",width:854,height:480,bitrate:1e6,audioBitrate:96000},{label:"360p",width:640,height:360,bitrate:600000,audioBitrate:64000}]});import{resolve as SZ,basename as SW,extname as yW,join as PW}from"path";import{mkdir as CW}from"fs/promises";async function yZ(){try{return await import("ts-videos")}catch{return null}}function vW($){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 xW($){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 N3($){let Z=await yZ();if(!Z)return null;try{let Y=SZ($),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 PZ($,Z,Y,J){let X=await yZ();if(!X)return console.warn("[stx-media] ts-videos not installed, skipping processing"),{src:$,processed:!1};let Q=await L4($,Z,Y);if(Q)return Q;try{let G=SZ($);if(!await D0(G))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let K=Y.outputDir||"dist/videos",W=Y.baseUrl||"/videos";await CW(K,{recursive:!0});let z=await b0(G),q=SW($,yW($)),U={src:$,processed:!0,hash:z};J?.({percentage:5,stage:"analyzing"}),U.metadata=await N3(G)||void 0;let j={};if(Z.quality)j.bitrate=vW(Z.quality);if(Z.platform)Object.assign(j,xW(Z.platform));if(Z.transcode)Object.assign(j,Z.transcode);if(Object.keys(j).length>0||Z.process){J?.({percentage:10,stage:"transcoding"});let _=`${q}-${z}.mp4`,B=PW(K,_);try{let H=await fW(G,B,j,X,(L)=>J?.({percentage:10+L*0.5,stage:"transcoding"}));if(H)U.transcoded={path:B,url:`${W}/${_}`,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 w4(G,_,K,W);if(B)U.poster=B}if(Y.thumbnails?.enabled){J?.({percentage:70,stage:"generating-thumbnails"});let _=await A4(G,Y.thumbnails,K,W);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 N4(G,_.qualities||Y.streaming?.defaultQualities||[],K,W);if(B)U.streaming={...U.streaming,hls:B}}if(_.format==="dash"){let B=await M4(G,_.qualities||Y.streaming?.defaultQualities||[],K,W);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 F4($,Z,U,Y),U}catch(G){return{src:$,processed:!1,errors:[`Processing failed: ${G}`]}}}async function fW($,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 CZ=b(()=>{m1();H3();A3();R3()});var vZ={};a(vZ,{setCachedVideoResult:()=>F4,processVideo:()=>PZ,getCachedVideoResult:()=>L4,generateThumbnails:()=>A4,generateSpriteSheet:()=>NZ,generatePoster:()=>w4,generateHLSManifest:()=>N4,generateDASHManifest:()=>M4,clearVideoCache:()=>RZ,analyzeVideo:()=>N3,VideoProcessorCache:()=>O4});var xZ=b(()=>{CZ();A3();R3();H3()});async function gZ(){try{return await Promise.resolve().then(() => (xZ(),vZ))}catch($){if(!fZ)console.warn("[stx-media] Video processor not available, some features disabled:",$),fZ=!0;return null}}async function T4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipProcessing){if(Y.tsVideosConfig?.enabled&&!Y.isDev)return pW(J,Y)}if(Y.processedResult?.processed)return mZ($,Y.processedResult,Z);let X;if(J.generatePoster&&J.src&&!$.poster)X=await lW(J,Y);let{src:Q,sources:G=[],poster:K,posterPlaceholder:W,controls:z=hZ,autoplay:q=!1,muted:U=!1,loop:j=!1,preload:_=dZ,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 dW($,Z);if(V&&V!=="video")return hW(Q||"",V,$);let E=G.length>0?G:Q?[{src:Q,type:uZ(Q)}]:[],D=[`id="${I}"`];if(z)D.push("controls");if(q)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="${A0(N)}"`);D.push("data-stx-lazy")}else if(D.push(`preload="${_}"`),N)D.push(`poster="${A0(N)}"`);if(O)D.push(`width="${O}"`);if(F)D.push(`height="${F}"`);if(M)D.push(`class="${A0(M)}"`);if(T)D.push(`style="${A0(T)}"`);let y=E.map((v)=>{return` <source ${H?`data-src="${A0(v.src)}"`:`src="${A0(v.src)}"`} type="${v.type}"${v.media?` media="${v.media}"`:""} />`}).join(`
7585
+ </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 vZ;var T3=b(()=>{l1();vZ=[{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 xZ,basename as fW,extname as gW,join as hW}from"path";import{mkdir as dW}from"fs/promises";async function fZ(){try{return await import("ts-videos")}catch{return null}}function uW($){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 mW($){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 I3($){let Z=await fZ();if(!Z)return null;try{let Y=xZ($),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 gZ($,Z,Y,J){let X=await fZ();if(!X)return console.warn("[stx-media] ts-videos not installed, skipping processing"),{src:$,processed:!1};let Q=await w4($,Z,Y);if(Q)return Q;try{let G=xZ($);if(!await E0(G))return{src:$,processed:!1,errors:[`Source file not found: ${$}`]};let K=Y.outputDir||"dist/videos",W=Y.baseUrl||"/videos";await dW(K,{recursive:!0});let q=await S0(G),z=fW($,gW($)),U={src:$,processed:!0,hash:q};J?.({percentage:5,stage:"analyzing"}),U.metadata=await I3(G)||void 0;let j={};if(Z.quality)j.bitrate=uW(Z.quality);if(Z.platform)Object.assign(j,mW(Z.platform));if(Z.transcode)Object.assign(j,Z.transcode);if(Object.keys(j).length>0||Z.process){J?.({percentage:10,stage:"transcoding"});let _=`${z}-${q}.mp4`,B=hW(K,_);try{let H=await pW(G,B,j,X,(L)=>J?.({percentage:10+L*0.5,stage:"transcoding"}));if(H)U.transcoded={path:B,url:`${W}/${_}`,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 N4(G,_,K,W);if(B)U.poster=B}if(Y.thumbnails?.enabled){J?.({percentage:70,stage:"generating-thumbnails"});let _=await M4(G,Y.thumbnails,K,W);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 I4(G,_.qualities||Y.streaming?.defaultQualities||[],K,W);if(B)U.streaming={...U.streaming,hls:B}}if(_.format==="dash"){let B=await D4(G,_.qualities||Y.streaming?.defaultQualities||[],K,W);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 A4($,Z,U,Y),U}catch(G){return{src:$,processed:!1,errors:[`Processing failed: ${G}`]}}}async function pW($,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 hZ=b(()=>{l1();F3();M3();T3()});var dZ={};a(dZ,{setCachedVideoResult:()=>A4,processVideo:()=>gZ,getCachedVideoResult:()=>w4,generateThumbnails:()=>M4,generateSpriteSheet:()=>EZ,generatePoster:()=>N4,generateHLSManifest:()=>I4,generateDASHManifest:()=>D4,clearVideoCache:()=>DZ,analyzeVideo:()=>I3,VideoProcessorCache:()=>V4});var uZ=b(()=>{hZ();M3();T3();F3()});async function pZ(){try{return await Promise.resolve().then(() => (uZ(),dZ))}catch($){if(!mZ)console.warn("[stx-media] Video processor not available, some features disabled:",$),mZ=!0;return null}}async function E4($,Z={}){let Y=Z,J=$;if(J.process&&!J.skipProcessing){if(Y.tsVideosConfig?.enabled&&!Y.isDev)return sW(J,Y)}if(Y.processedResult?.processed)return nZ($,Y.processedResult,Z);let X;if(J.generatePoster&&J.src&&!$.poster)X=await rW(J,Y);let{src:Q,sources:G=[],poster:K,posterPlaceholder:W,controls:q=lZ,autoplay:z=!1,muted:U=!1,loop:j=!1,preload:_=cZ,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 iW($,Z);if(V&&V!=="video")return cW(Q||"",V,$);let E=G.length>0?G:Q?[{src:Q,type:iZ(Q)}]:[],D=[`id="${I}"`];if(q)D.push("controls");if(z)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((v)=>{return` <source ${H?`data-src="${R0(v.src)}"`:`src="${R0(v.src)}"`} type="${v.type}"${v.media?` media="${v.media}"`:""} />`}).join(`
7586
7586
  `),S=`<video ${D.join(" ")}>
7587
7587
  ${y}
7588
7588
  Your browser does not support the video tag.
@@ -7621,12 +7621,12 @@ ${y}
7621
7621
 
7622
7622
  observer.observe(video);
7623
7623
  })();
7624
- `.trim();return{html:S,script:k}}function hW($,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)}`,W,z=null;switch(Z){case"youtube":z=uW($),W=z?`https://www.youtube-nocookie.com/embed/${z}`:$;break;case"vimeo":z=mW($),W=z?`https://player.vimeo.com/video/${z}`:$;break;case"dailymotion":z=$.split("/").pop()||"",W=`https://www.dailymotion.com/embed/video/${z}`;break;case"twitch":z=$.split("/").pop()||"",W=`https://player.twitch.tv/?video=${z}&parent=${typeof window<"u"?window.location.hostname:"localhost"}`;break;default:W=$}let q=[`id="${K}"`,`src="${A0(W)}"`,`width="${J}"`,`height="${X}"`,'frameborder="0"',"allowfullscreen",'allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"'];if(Q)q.push(`class="${A0(Q)}"`);if(G)q.push(`style="${A0(G)}"`);if(Y.lazy)q.push('loading="lazy"');return{html:`<div class="stx-video-embed" style="position:relative;padding-bottom:56.25%;height:0;overflow:hidden;">
7625
- <iframe ${q.join(" ")} style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>
7626
- </div>`}}function dW($,Z={}){let{src:Y,sources:J=[],poster:X,controls:Q=!0,autoplay:G=!1,muted:K=!1,loop:W=!1,preload:z="metadata",playsinline:q=!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:W,muted:K,playsinline:q,preload:z,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=`
7624
+ `.trim();return{html:S,script:k}}function cW($,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)}`,W,q=null;switch(Z){case"youtube":q=nW($),W=q?`https://www.youtube-nocookie.com/embed/${q}`:$;break;case"vimeo":q=oW($),W=q?`https://player.vimeo.com/video/${q}`:$;break;case"dailymotion":q=$.split("/").pop()||"",W=`https://www.dailymotion.com/embed/video/${q}`;break;case"twitch":q=$.split("/").pop()||"",W=`https://player.twitch.tv/?video=${q}&parent=${typeof window<"u"?window.location.hostname:"localhost"}`;break;default:W=$}let z=[`id="${K}"`,`src="${R0(W)}"`,`width="${J}"`,`height="${X}"`,'frameborder="0"',"allowfullscreen",'allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"'];if(Q)z.push(`class="${R0(Q)}"`);if(G)z.push(`style="${R0(G)}"`);if(Y.lazy)z.push('loading="lazy"');return{html:`<div class="stx-video-embed" style="position:relative;padding-bottom:56.25%;height:0;overflow:hidden;">
7625
+ <iframe ${z.join(" ")} style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>
7626
+ </div>`}}function iW($,Z={}){let{src:Y,sources:J=[],poster:X,controls:Q=!0,autoplay:G=!1,muted:K=!1,loop:W=!1,preload:q="metadata",playsinline:z=!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:W,muted:K,playsinline:z,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=`
7627
7627
  <div
7628
7628
  id="${L}"
7629
- class="ts-video-player${B?" "+A0(B):""}"
7629
+ class="ts-video-player${B?" "+R0(B):""}"
7630
7630
  style="${O}"
7631
7631
  data-ts-video-player
7632
7632
  data-config='${JSON.stringify(V)}'
@@ -7634,7 +7634,7 @@ ${y}
7634
7634
  >
7635
7635
  <div class="ts-video-player__container">
7636
7636
  ${X?`
7637
- <div class="ts-video-player__placeholder" style="background-image: url('${A0(X)}');">
7637
+ <div class="ts-video-player__placeholder" style="background-image: url('${R0(X)}');">
7638
7638
  <button class="ts-video-player__play-button" aria-label="Play video">
7639
7639
  <svg viewBox="0 0 24 24" fill="currentColor" width="64" height="64">
7640
7640
  <path d="M8 5v14l11-7z"/>
@@ -7660,7 +7660,7 @@ ${y}
7660
7660
 
7661
7661
  // Load ts-video-player from CDN
7662
7662
  var script = document.createElement('script');
7663
- script.src = '${gW}';
7663
+ script.src = '${lW}';
7664
7664
  script.onload = initPlayer;
7665
7665
  script.onerror = function() {
7666
7666
  console.error('[stx] Failed to load ts-video-player');
@@ -7790,12 +7790,12 @@ else {
7790
7790
  .ts-video-player__play-button svg {
7791
7791
  margin-left: 4px;
7792
7792
  }
7793
- `.trim();return{html:F,script:w,css:A}}function uZ($){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 uW($){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 mW($){let Z=$.match(/vimeo\.com\/(\d+)/);return Z?Z[1]:null}function A0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}async function pW($,Z){let Y=await gZ();if(!Y)return T4({...$,process:!1},Z);let J=Z.tsVideosConfig,X=await Y.processVideo($.src,$,J,$.onProcessProgress);if(X.processed)return mZ($,X,Z);return T4({...$,process:!1},Z)}async function lW($,Z){let Y=await gZ();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 mZ($,Z,Y){let{controls:J=hZ,autoplay:X=!1,muted:Q=!1,loop:G=!1,preload:K=dZ,playsinline:W=!0,lazy:z=!0,width:q,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=uZ(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(W)R.push("playsinline");if(_)R.push("disablepictureinpicture");if(B)R.push("disableremoteplayback");if(j)R.push(`crossorigin="${j}"`);if(z){if(R.push(`data-preload="${K}"`),R.push('preload="none"'),A)R.push(`data-poster="${A0(A)}"`);R.push("data-stx-lazy")}else if(R.push(`preload="${K}"`),A)R.push(`poster="${A0(A)}"`);let N=q||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="${A0(H)}"`);if(L)R.push(`style="${A0(L)}"`);let I=` <source ${z?`data-src="${A0(O)}"`:`src="${A0(O)}"`} type="${F}" />`,E=`<video ${R.join(" ")}>
7793
+ `.trim();return{html:F,script:w,css:A}}function iZ($){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 nW($){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 oW($){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 sW($,Z){let Y=await pZ();if(!Y)return E4({...$,process:!1},Z);let J=Z.tsVideosConfig,X=await Y.processVideo($.src,$,J,$.onProcessProgress);if(X.processed)return nZ($,X,Z);return E4({...$,process:!1},Z)}async function rW($,Z){let Y=await pZ();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 nZ($,Z,Y){let{controls:J=lZ,autoplay:X=!1,muted:Q=!1,loop:G=!1,preload:K=cZ,playsinline:W=!0,lazy:q=!0,width:z,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=iZ(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(W)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=z||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(" ")}>
7794
7794
  ${I}
7795
7795
  Your browser does not support the video tag.
7796
- </video>`;if(Z.spriteSheet)E=`<div class="stx-video-wrapper" data-sprite-sheet="${A0(Z.spriteSheet.url)}" data-sprite-cols="${Z.spriteSheet.columns}" data-sprite-interval="${Z.spriteSheet.interval}">
7796
+ </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}">
7797
7797
  ${E}
7798
- </div>`;let D;if(z)D=`
7798
+ </div>`;let D;if(q)D=`
7799
7799
  (function() {
7800
7800
  var video = document.getElementById('${V}');
7801
7801
  if (!video) return;
@@ -7839,9 +7839,9 @@ ${E}
7839
7839
  width: 100%;
7840
7840
  height: auto;
7841
7841
  }
7842
- `.trim();return{html:E,script:D,css:y}}var fZ=!1,hZ=!0,dZ="metadata",gW="https://cdn.jsdelivr.net/npm/ts-video-player@latest/dist/index.min.js";var pZ=b(()=>{T3()});function lZ(){return J4({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}=cW($,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},W={isDev:Y.__isDev||!1,tsVideosConfig:Y.__tsVideosConfig},z=await T4(G,W),q=z.html;if(z.css)q+=`
7843
- <style>${z.css}</style>`;if(z.script)q+=`
7844
- <script>${z.script}</script>`;return q},defaults:{src:"",options:{controls:!0,lazy:!0,preload:"metadata"}}})}function cW($,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=iW(J),Q=cZ(X[0],Y)||"",G={};if(X[1]){let K=cZ(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 iW($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let W=$[K],z=K>0?$[K-1]:"";if((W==='"'||W==="'"||W==="`")&&z!=="\\"){if(!J)J=!0,X=W;else if(W===X)J=!1,X="";else Y+=W;continue}if(!J){if(W==="{")Q++;if(W==="}")Q--;if(W==="[")G++;if(W==="]")G--;if(W===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=W}if(Y.trim())Z.push(Y.trim());return Z}function cZ($,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 M3;var T3=b(()=>{s7();pZ();M3=lZ()});function nW($,Z){let Y=Z.pwa?.manifest?.themeColor||"#4f46e5";return`<div class="stx-pwa-install" style="display:none;">
7842
+ `.trim();return{html:E,script:D,css:y}}var mZ=!1,lZ=!0,cZ="metadata",lW="https://cdn.jsdelivr.net/npm/ts-video-player@latest/dist/index.min.js";var oZ=b(()=>{E3()});function sZ(){return G4({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}=aW($,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},W={isDev:Y.__isDev||!1,tsVideosConfig:Y.__tsVideosConfig},q=await E4(G,W),z=q.html;if(q.css)z+=`
7843
+ <style>${q.css}</style>`;if(q.script)z+=`
7844
+ <script>${q.script}</script>`;return z},defaults:{src:"",options:{controls:!0,lazy:!0,preload:"metadata"}}})}function aW($,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=tW(J),Q=rZ(X[0],Y)||"",G={};if(X[1]){let K=rZ(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 tW($){let Z=[],Y="",J=!1,X="",Q=0,G=0;for(let K=0;K<$.length;K++){let W=$[K],q=K>0?$[K-1]:"";if((W==='"'||W==="'"||W==="`")&&q!=="\\"){if(!J)J=!0,X=W;else if(W===X)J=!1,X="";else Y+=W;continue}if(!J){if(W==="{")Q++;if(W==="}")Q--;if(W==="[")G++;if(W==="]")G--;if(W===","&&Q===0&&G===0){Z.push(Y.trim()),Y="";continue}}Y+=W}if(Y.trim())Z.push(Y.trim());return Z}function rZ($,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 D3;var E3=b(()=>{t7();oZ();D3=sZ()});function eW($,Z){let Y=Z.pwa?.manifest?.themeColor||"#4f46e5";return`<div class="stx-pwa-install" style="display:none;">
7845
7845
  ${$}
7846
7846
  </div>
7847
7847
  <script>
@@ -7886,7 +7886,7 @@ ${E}
7886
7886
  }
7887
7887
  }
7888
7888
  })();
7889
- </script>`}function oW($,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=`
7889
+ </script>`}function $q($,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=`
7890
7890
  <div class="stx-pwa-update-banner" style="
7891
7891
  position: fixed;
7892
7892
  bottom: 0;
@@ -7997,7 +7997,7 @@ else {
7997
7997
  // Also listen for custom event
7998
7998
  window.addEventListener('pwa-update-available', showUpdate);
7999
7999
  })();
8000
- </script>`}function sW($,Z){let Y=$.trim().length>0,J=`
8000
+ </script>`}function Zq($,Z){let Y=$.trim().length>0,J=`
8001
8001
  <div class="stx-offline-indicator" style="
8002
8002
  position: fixed;
8003
8003
  top: 16px;
@@ -8058,7 +8058,7 @@ else {
8058
8058
  window.addEventListener('offline', updateStatus);
8059
8059
  updateStatus();
8060
8060
  })();
8061
- </script>`}function rW($,Z){let Y=Z.pwa?.push,J=Y?.vapidPublicKey||"",X=Y?.subscriptionEndpoint||"/api/push/subscribe";return`<div class="stx-pwa-push" style="display:none;">
8061
+ </script>`}function Yq($,Z){let Y=Z.pwa?.push,J=Y?.vapidPublicKey||"",X=Y?.subscriptionEndpoint||"/api/push/subscribe";return`<div class="stx-pwa-push" style="display:none;">
8062
8062
  ${$}
8063
8063
  </div>
8064
8064
  <script>
@@ -8140,33 +8140,33 @@ catch (error) {
8140
8140
  init();
8141
8141
  }
8142
8142
  })();
8143
- </script>`}var aW,tW,eW,$z,iZ;var nZ=b(()=>{aW={name:"pwa.installButton",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return nW($,X)},hasEndTag:!0,description:"Renders a PWA install prompt button that appears when the app can be installed"},tW={name:"pwa.updatePrompt",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return oW($,X)},hasEndTag:!0,description:"Renders a PWA update notification UI when a new version is available"},eW={name:"pwa.offlineIndicator",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return sW($,X)},hasEndTag:!0,description:"Renders an offline status indicator that shows when the user loses connection"},$z={name:"pwa.pushSubscribe",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return rW($,X)},hasEndTag:!0,description:"Renders a push notification subscription button"},iZ=[aW,tW,eW,$z]});function I3($){for(let[Z,Y]of Object.entries(s))if(Y===$)return Z;return}var s;var I4=b(()=>{s={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 J$(){return!1}function X$(){return!J$()||process.env.STX_DEBUG==="true"}function D4(){return!1}import Zz from"path";function E4(){return{...D3}}function k4($){if(!D3.showRelativePaths||!$)return $;let Z=D3.baseDir||process.cwd();try{let Y=Zz.relative(Z,$);return Y.startsWith("..")?$:Y}catch{return $}}var Yz,D3,b4,l1,S4;var y4=b(()=>{I4();Yz={showRelativePaths:!1,enableAutoRecovery:X$(),logRecoveryWarnings:!0},D3={...Yz};b4=class b4 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||s.EVALUATION_ERROR,this.filePath)this.filePath=k4(this.filePath)}};l1=class l1 extends b4{constructor($,Z,Y,J,X,Q){super($,"stx_RUNTIME_ERROR",Z,Y,J,X,Q||s.EVALUATION_ERROR);this.name="StxRuntimeError"}};S4=class S4 extends b4{isFatal=!0;constructor($,Z,Y,J,X,Q){super($,"stx_VALIDATION_ERROR",Z,Y,J,X,Q||s.DOM_API_VIOLATION);this.name="StxValidationError"}}});function sZ($){let{type:Z,message:Y,code:J,filePath:X,line:Q,column:G,template:K,offset:W,snippet:z,suggestion:q,format:U="text"}=$,j=Q,_=G;if(!j&&K&&W!==void 0){let O=Wz(K,W);j=O.line,_=O.column}let B=X?k4(X):void 0,H=J?I3(J):void 0,L={type:Z,code:J,codeName:H,message:Y,filePath:B,line:j,column:_,snippet:z,suggestion:q,timestamp:new Date().toISOString()},V;switch(U){case"html":V=Xz(L);break;case"json":V=JSON.stringify(L,null,2);break;case"console":V=Qz(L,K,W);break;case"text":default:V=Jz(L,K,W);break}return{formatted:V,data:L}}function Jz($,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(`
8144
- ${$.message}`),Z&&$.line){let Q=Gz(Z,$.line,2);if(Q)J.push(`
8143
+ </script>`}var Jq,Xq,Qq,Gq,aZ;var tZ=b(()=>{Jq={name:"pwa.installButton",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return eW($,X)},hasEndTag:!0,description:"Renders a PWA install prompt button that appears when the app can be installed"},Xq={name:"pwa.updatePrompt",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return $q($,X)},hasEndTag:!0,description:"Renders a PWA update notification UI when a new version is available"},Qq={name:"pwa.offlineIndicator",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Zq($,X)},hasEndTag:!0,description:"Renders an offline status indicator that shows when the user loses connection"},Gq={name:"pwa.pushSubscribe",handler:($,Z,Y,J)=>{let X=Y.__stx_options||{};return Yq($,X)},hasEndTag:!0,description:"Renders a push notification subscription button"},aZ=[Jq,Xq,Qq,Gq]});function k3($){for(let[Z,Y]of Object.entries(s))if(Y===$)return Z;return}var s;var k4=b(()=>{s={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 G$(){return!1}function K$(){return!G$()||process.env.STX_DEBUG==="true"}function b4(){return!1}import Kq from"path";function S4(){return{...b3}}function y4($){if(!b3.showRelativePaths||!$)return $;let Z=b3.baseDir||process.cwd();try{let Y=Kq.relative(Z,$);return Y.startsWith("..")?$:Y}catch{return $}}var Wq,b3,P4,i1,C4;var v4=b(()=>{k4();Wq={showRelativePaths:!1,enableAutoRecovery:K$(),logRecoveryWarnings:!0},b3={...Wq};P4=class P4 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||s.EVALUATION_ERROR,this.filePath)this.filePath=y4(this.filePath)}};i1=class i1 extends P4{constructor($,Z,Y,J,X,Q){super($,"stx_RUNTIME_ERROR",Z,Y,J,X,Q||s.EVALUATION_ERROR);this.name="StxRuntimeError"}};C4=class C4 extends P4{isFatal=!0;constructor($,Z,Y,J,X,Q){super($,"stx_VALIDATION_ERROR",Z,Y,J,X,Q||s.DOM_API_VIOLATION);this.name="StxValidationError"}}});function $2($){let{type:Z,message:Y,code:J,filePath:X,line:Q,column:G,template:K,offset:W,snippet:q,suggestion:z,format:U="text"}=$,j=Q,_=G;if(!j&&K&&W!==void 0){let O=Bq(K,W);j=O.line,_=O.column}let B=X?y4(X):void 0,H=J?k3(J):void 0,L={type:Z,code:J,codeName:H,message:Y,filePath:B,line:j,column:_,snippet:q,suggestion:z,timestamp:new Date().toISOString()},V;switch(U){case"html":V=zq(L);break;case"json":V=JSON.stringify(L,null,2);break;case"console":V=Uq(L,K,W);break;case"text":default:V=qq(L,K,W);break}return{formatted:V,data:L}}function qq($,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(`
8144
+ ${$.message}`),Z&&$.line){let Q=jq(Z,$.line,2);if(Q)J.push(`
8145
8145
  ${Q}`)}if($.snippet)J.push(`
8146
8146
  Snippet: ${$.snippet}`);if($.suggestion)J.push(`
8147
- Suggestion: ${$.suggestion}`);return J.join(" ")}function Xz($){let Z=$.code?` [${$.code}]`:"",Y=$.filePath?` in ${$.filePath}${$.line?`:${$.line}`:""}`:"",J=`<!-- [${$.type} Error${Z}]${Y}: ${oZ($.message)}`;if($.suggestion)J+=` | Suggestion: ${oZ($.suggestion)}`;return J+=" -->",J}function Qz($,Z,Y){let z=[],q=$.code?` [${$.codeName||$.code}]`:"";if(z.push(`\x1B[1m${"\x1B[31m"}\u2501\u2501\u2501 ${$.type} Error${q} \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`}z.push(`
8148
- \x1B[90mat\x1B[0m ${U}`)}if(z.push(`
8147
+ Suggestion: ${$.suggestion}`);return J.join(" ")}function zq($){let Z=$.code?` [${$.code}]`:"",Y=$.filePath?` in ${$.filePath}${$.line?`:${$.line}`:""}`:"",J=`<!-- [${$.type} Error${Z}]${Y}: ${eZ($.message)}`;if($.suggestion)J+=` | Suggestion: ${eZ($.suggestion)}`;return J+=" -->",J}function Uq($,Z,Y){let q=[],z=$.code?` [${$.codeName||$.code}]`:"";if(q.push(`\x1B[1m${"\x1B[31m"}\u2501\u2501\u2501 ${$.type} Error${z} \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(`
8148
+ \x1B[90mat\x1B[0m ${U}`)}if(q.push(`
8149
8149
 
8150
- ${$.message}`),Z&&$.line){let U=Kz(Z,$.line,2);if(U)z.push(`
8150
+ ${$.message}`),Z&&$.line){let U=_q(Z,$.line,2);if(U)q.push(`
8151
8151
 
8152
8152
  \x1B[90mContext:\x1B[0m
8153
- ${U}`)}if($.suggestion)z.push(`
8154
-
8155
- \x1B[33mSuggestion:\x1B[0m ${$.suggestion}`);return z.push(`
8156
- ${"\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"}`),z.join("")}function Gz($,Z,Y){let J=$.split(`
8157
- `),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 W=(K+1).toString().padStart(4),z=K===Z-1?">":" ";G.push(`${z}${W} | ${J[K]}`)}return G.join(`
8158
- `)}function Kz($,Z,Y){let J=$.split(`
8159
- `),X=Math.max(0,Z-Y-1),Q=Math.min(J.length-1,Z+Y-1),G="\x1B[90m",K="\x1B[31m",W="\x1B[0m",z=[];for(let q=X;q<=Q;q++){let U=(q+1).toString().padStart(4),j=q===Z-1,_=j?"\x1B[31m>\x1B[0m":" ",B=j?`\x1B[31m${J[q]}\x1B[0m`:`\x1B[90m${J[q]}\x1B[0m`;z.push(`${_}\x1B[90m${U}\x1B[0m | ${B}`)}return z.join(`
8160
- `)}function oZ($){return $.replace(/--/g,"- -").replace(/>/g,"&gt;")}function Wz($,Z){let J=$.substring(0,Z).split(`
8161
- `);return{line:J.length,column:J[J.length-1].length}}function e($,Z,Y){return sZ({type:$,message:Z,code:Y,format:"html"}).formatted}async function H5($,Z,Y){try{return await $()}catch(J){if(Y&&J instanceof Error)Y(J);return Z}}var rZ=b(()=>{I4();y4()});class k3{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(`
8153
+ ${U}`)}if($.suggestion)q.push(`
8154
+
8155
+ \x1B[33mSuggestion:\x1B[0m ${$.suggestion}`);return q.push(`
8156
+ ${"\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 jq($,Z,Y){let J=$.split(`
8157
+ `),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 W=(K+1).toString().padStart(4),q=K===Z-1?">":" ";G.push(`${q}${W} | ${J[K]}`)}return G.join(`
8158
+ `)}function _q($,Z,Y){let J=$.split(`
8159
+ `),X=Math.max(0,Z-Y-1),Q=Math.min(J.length-1,Z+Y-1),G="\x1B[90m",K="\x1B[31m",W="\x1B[0m",q=[];for(let z=X;z<=Q;z++){let U=(z+1).toString().padStart(4),j=z===Z-1,_=j?"\x1B[31m>\x1B[0m":" ",B=j?`\x1B[31m${J[z]}\x1B[0m`:`\x1B[90m${J[z]}\x1B[0m`;q.push(`${_}\x1B[90m${U}\x1B[0m | ${B}`)}return q.join(`
8160
+ `)}function eZ($){return $.replace(/--/g,"- -").replace(/>/g,"&gt;")}function Bq($,Z){let J=$.substring(0,Z).split(`
8161
+ `);return{line:J.length,column:J[J.length-1].length}}function $0($,Z,Y){return $2({type:$,message:Z,code:Y,format:"html"}).formatted}async function L5($,Z,Y){try{return await $()}catch(J){if(Y&&J instanceof Error)Y(J);return Z}}var Z2=b(()=>{k4();v4()});class y3{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(`
8162
8162
  `).slice(1).join(`
8163
8163
  `)}`);if($.context)Z.push(` Context: ${JSON.stringify($.context)}`);return Z.join(`
8164
8164
  `)}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($)}
8165
8165
  `;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(`
8166
8166
 
8167
- `),"utf-8")}}async flush(){await this.writeQueue}}var E3,t0,b3;var aZ=b(()=>{y4();E3={isEnabled(){return E4().enableAutoRecovery},fixCommonSyntaxErrors($){let Z=E4();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 W=(Y.match(new RegExp(`@${K}\\b`,"g"))||[]).length,z=(Y.match(new RegExp(`@end${K}\\b`,"g"))||[]).length;if(W>z){let q=W-z;for(let U=0;U<q;U++)Y+=`
8168
- @end${K}`;J.push(`Added ${q} 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(X$())return`<!-- ${$} failed: ${Z.message} -->`;return"<!-- stx rendering error -->"}};t0=new k3,b3={isDevelopment(){return X$()},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(`
8169
- `)}}});var tZ=()=>{};var eZ=b(()=>{I4();rZ();aZ();tZ();y4()});var q1=b(()=>{eZ()});function $2($,Z,Y,J){let X=$;X=X.replace(/@meta\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(K,W,z)=>{if(!z&&W.includes(":")){let q=W.split(":"),U=W,j=q.length>1?q[1]:"";if(j&&Z[j])z=Z[j];else if(U.startsWith("og:")&&Z.openGraph&&Z.openGraph[q[1]])z=Z.openGraph[q[1]];else z="";return z?`<meta property="${l(U)}" content="${l(z)}">`:""}return z?`<meta name="${l(W)}" content="${l(z)}">`:""});let Q=/@metaTag\s*\(/g,G;while((G=Q.exec(X))!==null){let K=G.index,W=K+G[0].length-1,z=1,q=W+1;while(q<X.length&&z>0){if(X[q]==="(")z++;else if(X[q]===")"){if(z--,z===0)break}q++}if(z!==0)break;let U=X.substring(W+1,q).trim(),j=q+1,_=(()=>{try{let B=M0(U,Z);if(!B)return"";let H="<meta";if(B.name)H+=` name="${l(String(B.name))}"`;if(B.property)H+=` property="${l(String(B.property))}"`;if(B.httpEquiv)H+=` http-equiv="${l(String(B.httpEquiv))}"`;if(B.content)H+=` content="${l(String(B.content))}"`;return H+=">",H}catch(B){let H=B instanceof Error?B.message:String(B);return e("MetaTag",H,s.EVALUATION_ERROR)}})();X=X.substring(0,K)+_+X.substring(j),Q.lastIndex=0}return X}function Z2($,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,W=1,z=K+1;while(z<J.length&&W>0){if(J[z]==="(")W++;else if(J[z]===")"){if(W--,W===0)break}z++}if(W!==0)break;let q=J.substring(K+1,z).trim(),U=z+1,j=(()=>{try{let _=M0(q,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 e("StructuredData",B,s.EVALUATION_ERROR)}})();J=J.substring(0,G)+j+J.substring(U),X.lastIndex=0}return J}function Y2($,Z,Y,J){let X=$,Q=/@seo\s*\(\s*\{/g,G;while((G=Q.exec(X))!==null){let K=X.indexOf("{",G.index+4),W=1,z=K+1,q=null,U=!1;while(z<X.length&&W>0){let V=X[z];if(U){U=!1,z++;continue}if(V==="\\"&&q){U=!0,z++;continue}if(q){if(V===q)q=null;z++;continue}if(V==='"'||V==="'"||V==="`"){q=V,z++;continue}if(V==="{")W++;else if(V==="}")W--;z++}if(W!==0)break;let j=X.substring(z).match(/^\s*\)/);if(!j)break;let _=z+j[0].length,B=X.substring(K,z),H=X.substring(G.index,_),L=((V)=>{try{let O=M0(V,Z);if(!O)return"";let F="";if(O.title)F+=`<title>${l(O.title)}</title>
8167
+ `),"utf-8")}}async flush(){await this.writeQueue}}var S3,e0,P3;var Y2=b(()=>{v4();S3={isEnabled(){return S4().enableAutoRecovery},fixCommonSyntaxErrors($){let Z=S4();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 W=(Y.match(new RegExp(`@${K}\\b`,"g"))||[]).length,q=(Y.match(new RegExp(`@end${K}\\b`,"g"))||[]).length;if(W>q){let z=W-q;for(let U=0;U<z;U++)Y+=`
8168
+ @end${K}`;J.push(`Added ${z} 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(K$())return`<!-- ${$} failed: ${Z.message} -->`;return"<!-- stx rendering error -->"}};e0=new y3,P3={isDevelopment(){return K$()},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(`
8169
+ `)}}});var J2=()=>{};var X2=b(()=>{k4();Z2();Y2();J2();v4()});var U1=b(()=>{X2()});function Q2($,Z,Y,J){let X=$;X=X.replace(/@meta\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"]\s*)?\)/g,(K,W,q)=>{if(!q&&W.includes(":")){let z=W.split(":"),U=W,j=z.length>1?z[1]:"";if(j&&Z[j])q=Z[j];else if(U.startsWith("og:")&&Z.openGraph&&Z.openGraph[z[1]])q=Z.openGraph[z[1]];else q="";return q?`<meta property="${l(U)}" content="${l(q)}">`:""}return q?`<meta name="${l(W)}" content="${l(q)}">`:""});let Q=/@metaTag\s*\(/g,G;while((G=Q.exec(X))!==null){let K=G.index,W=K+G[0].length-1,q=1,z=W+1;while(z<X.length&&q>0){if(X[z]==="(")q++;else if(X[z]===")"){if(q--,q===0)break}z++}if(q!==0)break;let U=X.substring(W+1,z).trim(),j=z+1,_=(()=>{try{let B=T0(U,Z);if(!B)return"";let H="<meta";if(B.name)H+=` name="${l(String(B.name))}"`;if(B.property)H+=` property="${l(String(B.property))}"`;if(B.httpEquiv)H+=` http-equiv="${l(String(B.httpEquiv))}"`;if(B.content)H+=` content="${l(String(B.content))}"`;return H+=">",H}catch(B){let H=B instanceof Error?B.message:String(B);return $0("MetaTag",H,s.EVALUATION_ERROR)}})();X=X.substring(0,K)+_+X.substring(j),Q.lastIndex=0}return X}function G2($,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,W=1,q=K+1;while(q<J.length&&W>0){if(J[q]==="(")W++;else if(J[q]===")"){if(W--,W===0)break}q++}if(W!==0)break;let z=J.substring(K+1,q).trim(),U=q+1,j=(()=>{try{let _=T0(z,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 $0("StructuredData",B,s.EVALUATION_ERROR)}})();J=J.substring(0,G)+j+J.substring(U),X.lastIndex=0}return J}function K2($,Z,Y,J){let X=$,Q=/@seo\s*\(\s*\{/g,G;while((G=Q.exec(X))!==null){let K=X.indexOf("{",G.index+4),W=1,q=K+1,z=null,U=!1;while(q<X.length&&W>0){let V=X[q];if(U){U=!1,q++;continue}if(V==="\\"&&z){U=!0,q++;continue}if(z){if(V===z)z=null;q++;continue}if(V==='"'||V==="'"||V==="`"){z=V,q++;continue}if(V==="{")W++;else if(V==="}")W--;q++}if(W!==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=T0(V,Z);if(!O)return"";let F="";if(O.title)F+=`<title>${l(O.title)}</title>
8170
8170
  `,F+=`<meta name="title" content="${l(O.title)}">
8171
8171
  `;if(O.description)F+=`<meta name="description" content="${l(O.description)}">
8172
8172
  `;if(O.keywords){let w=Array.isArray(O.keywords)?O.keywords.join(", "):O.keywords;F+=`<meta name="keywords" content="${l(w)}">
@@ -8188,7 +8188,7 @@ ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\
8188
8188
  `}if(w.site)F+=`<meta name="twitter:site" content="${l(w.site)}">
8189
8189
  `;if(w.creator)F+=`<meta name="twitter:creator" content="${l(w.creator)}">
8190
8190
  `}if(O.structuredData){let w=JSON.stringify(O.structuredData).replace(/<\//g,"<\\/");F+=`<script type="application/ld+json">${w}</script>
8191
- `}return F.trim()}catch(O){let F=O instanceof Error?O.message:String(O);return e("SEO",`Error processing @seo directive: ${F}`,s.EVALUATION_ERROR)}})(B);X=X.substring(0,G.index)+L+X.substring(_),Q.lastIndex=G.index+L.length}return X}function J2($,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 W="";if(Z.image)W=Z.image;else if(Z.meta&&Z.meta.image)W=Z.meta.image;else if(Z.openGraph&&Z.openGraph.image)W=Z.openGraph.image;else if(Y.seo?.defaultImage)W=Y.seo.defaultImage;else if(Y.defaultImage)W=Y.defaultImage;let z=`
8191
+ `}return F.trim()}catch(O){let F=O instanceof Error?O.message:String(O);return $0("SEO",`Error processing @seo directive: ${F}`,s.EVALUATION_ERROR)}})(B);X=X.substring(0,G.index)+L+X.substring(_),Q.lastIndex=G.index+L.length}return X}function W2($,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 W="";if(Z.image)W=Z.image;else if(Z.meta&&Z.meta.image)W=Z.meta.image;else if(Z.openGraph&&Z.openGraph.image)W=Z.openGraph.image;else if(Y.seo?.defaultImage)W=Y.seo.defaultImage;else if(Y.defaultImage)W=Y.defaultImage;let q=`
8192
8192
  <!-- stx SEO Tags -->
8193
8193
  <meta name="title" content="${l(G)}">
8194
8194
  <meta name="description" content="${l(K)}">
@@ -8198,13 +8198,13 @@ ${"\x1B[31m"}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\
8198
8198
  <meta name="twitter:card" content="summary_large_image">
8199
8199
  <meta name="twitter:title" content="${l(G)}">
8200
8200
  <meta name="twitter:description" content="${l(K)}">
8201
- `;if(W)z+=`
8201
+ `;if(W)q+=`
8202
8202
  <meta property="og:image" content="${l(W)}">
8203
8203
  <meta name="twitter:image" content="${l(W)}">
8204
- `;let q=$;if(!Q)q=q.replace(/<head[^>]*>/,`$&
8205
- <title>${l(G)}</title>`);return q.replace(/<head[^>]*>/,`$&
8206
- ${z}
8207
- `)}function l($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var X2,Q2;var S3=b(()=>{q1();w0();X2={name:"meta",handler:($,Z,Y,J)=>{if(Z.length<1)return e("Meta","meta directive requires at least the meta name",s.INVALID_DIRECTIVE_SYNTAX);let X=Z[0].replace(/['"]/g,""),Q=Z.length>1?Z[1].replace(/['"]/g,""):"";return`<meta name="${l(X)}" content="${l(Q)}">`},hasEndTag:!1},Q2={name:"structuredData",handler:($,Z,Y,J)=>{if($.trim()==="")return e("StructuredData","structuredData directive requires JSON-LD content",s.INVALID_DIRECTIVE_SYNTAX);try{let X=JSON.parse($);if(!X["@context"])X["@context"]="https://schema.org";if(!X["@type"])return e("StructuredData","structuredData requires @type property",s.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 e("StructuredData",Q,s.EVALUATION_ERROR)}},hasEndTag:!0}});import Q$ from"path";function zz($,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),W=K?K[1].trim():"",z=$.match(/<style\b[^>]*>([\s\S]*?)<\/style>/i),q=z?z[1].trim():"";return{tag:X,props:Q,template:W,styles:q,script:J,shadowDOM:G}}function qz($){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,"\\${"),W=X.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),z=Y.map((U)=>`'${U}'`).join(", "),q=Y.map((U)=>`
8204
+ `;let z=$;if(!Q)z=z.replace(/<head[^>]*>/,`$&
8205
+ <title>${l(G)}</title>`);return z.replace(/<head[^>]*>/,`$&
8206
+ ${q}
8207
+ `)}function l($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var q2,z2;var C3=b(()=>{U1();A0();q2={name:"meta",handler:($,Z,Y,J)=>{if(Z.length<1)return $0("Meta","meta directive requires at least the meta name",s.INVALID_DIRECTIVE_SYNTAX);let X=Z[0].replace(/['"]/g,""),Q=Z.length>1?Z[1].replace(/['"]/g,""):"";return`<meta name="${l(X)}" content="${l(Q)}">`},hasEndTag:!1},z2={name:"structuredData",handler:($,Z,Y,J)=>{if($.trim()==="")return $0("StructuredData","structuredData directive requires JSON-LD content",s.INVALID_DIRECTIVE_SYNTAX);try{let X=JSON.parse($);if(!X["@context"])X["@context"]="https://schema.org";if(!X["@type"])return $0("StructuredData","structuredData requires @type property",s.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 $0("StructuredData",Q,s.EVALUATION_ERROR)}},hasEndTag:!0}});import W$ from"path";function Hq($,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),W=K?K[1].trim():"",q=$.match(/<style\b[^>]*>([\s\S]*?)<\/style>/i),z=q?q[1].trim():"";return{tag:X,props:Q,template:W,styles:z,script:J,shadowDOM:G}}function Oq($){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,"\\${"),W=X.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),q=Y.map((U)=>`'${U}'`).join(", "),z=Y.map((U)=>`
8208
8208
  get ${U}() {
8209
8209
  return this.getAttribute('${U}') || '';
8210
8210
  }
@@ -8228,7 +8228,7 @@ class ${G} extends HTMLElement {
8228
8228
  }
8229
8229
 
8230
8230
  static get observedAttributes() {
8231
- return [${z}];
8231
+ return [${q}];
8232
8232
  }
8233
8233
 
8234
8234
  attributeChangedCallback(name, oldValue, newValue) {
@@ -8236,7 +8236,7 @@ class ${G} extends HTMLElement {
8236
8236
  this._render();
8237
8237
  }
8238
8238
  }
8239
- ${q}
8239
+ ${z}
8240
8240
 
8241
8241
  _render() {
8242
8242
  const template = \`${W?`<style>${W}</style>`:""}${K}\`;
@@ -8255,16 +8255,16 @@ ${q}
8255
8255
  }
8256
8256
 
8257
8257
  customElements.define('${Z}', ${G});
8258
- `}async function G2($,Z,Y,J){if(Z.length<1)return e("WebComponent","@webcomponent directive requires at least the tag name parameter",s.INVALID_DIRECTIVE_SYNTAX);let X=Z[0].replace(/['"]/g,""),G=(Y.__stx_options||{}).componentsDir||"components",K=[Q$.join(Q$.dirname(J),G,`${X}.stx`),Q$.join(process.cwd(),G,`${X}.stx`),Q$.join(Q$.dirname(J),`${X}.stx`)],W=null;for(let U of K)if(await c(U)){W=await Bun.file(U).text();break}if(!W)return e("WebComponent",`Component file not found: ${X}.stx`,s.FILE_NOT_FOUND);let z=zz(W,X);return`<script type="module">
8259
- ${qz(z)}
8260
- </script>`}var K2=b(()=>{q1();N0()});var W2={};a(W2,{timingPlugin:()=>Hz,pluginManager:()=>Uz,definePlugin:()=>P4,debugPlugin:()=>Bz,createVariablesPlugin:()=>Oz,createFilterPlugin:()=>_z,createDirectivePlugin:()=>jz,PluginManager:()=>y3});function P4($){return $}class y3{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 jz($,Z,Y={}){return{name:$,...Y,registerDirectives:()=>Z}}function _z($,Z,Y={}){return{name:$,...Y,registerFilters:()=>Z}}function Oz($){return P4({name:"stx-variables",version:"1.0.0",description:"Adds predefined variables to template context",beforeProcess(Z){return{context:{...Z.context,...$}}}})}var Uz,Bz,Hz;var z2=b(()=>{Uz=new y3;Bz=P4({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)}}),Hz=P4({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 U2={};a(U2,{validateConfig:()=>Az,loadStxConfig:()=>U1,defineStxConfig:()=>wz,defaultConfig:()=>c1,config:()=>C3});import P3 from"fs";import S0 from"path";import{loadConfigWithResult as Lz}from"bunfig";function Fz($,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(P3.existsSync(J)&&P3.existsSync(X))return{root:"resources",pagesDir:"views"};let Q=S0.join(process.cwd(),"resources","views","pages");if(P3.existsSync(Q))return{root:"resources/views",pagesDir:Y};return{root:".",pagesDir:Y}}function Vz($){if($9($.stateDir),$.stateDir=y5(),$.cachePath=P5($.cachePath),$.build)$.build.cacheDir=P5($.build.cacheDir);if($.media?.cache)$.media.cache.directory=P5($.media.cache.directory);if($.story)$.story.outDir=P5($.story.outDir)}async function U1($){if(!$){if(O5)return O5;if(C4)return C4}let Z=$?S0.resolve($):process.cwd(),Y=q2.get(Z);if(Y)return Y;let J=(async()=>{let Q=(await Lz({name:"stx",alias:"ui",cwd:Z,defaultConfig:c1,verbose:!1})).config;Vz(Q);let G=Fz(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(() => (z2(),W2)),W=[],z=[];for(let q of Q.plugins){let U=typeof q==="string"?q:q[0],j=typeof q==="string"?{}:q[1]||{};try{let _,B;try{_=await import(U),B=S0.dirname(j0.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);W.push(L)}if(H.pages){let L=S0.resolve(B,H.pages),V=j.path||"/";z.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=W,Q._pluginPageDirs=z}return Q})();if(q2.set(Z,J),!$)C4=J,J.then((X)=>{O5=X}).catch(()=>{});return J}function wz($){return $}function Az($){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 c1,O5=null,q2,C4=null,C3;var i1=b(()=>{z7();q7();U7();j7();o7();AZ();T3();nZ();S3();C5();K2();c1={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:Y5,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:n8,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:G2,hasEndTag:!1,description:"Include a web component in the template"},J9,X9,X2,Q2,Q9,K9,W9,G9,j9,H9,wZ,M3,...iZ],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}};q2=new Map;C3=new Proxy(c1,{get($,Z){if(O5&&Z in O5)return O5[Z];if(!C4)U1().catch((Y)=>{console.warn("[stx] Failed to load config file:",Y?.message||Y)});return $[Z]}})});var L2={};a(L2,{resetCssCache:()=>kz,resetCrosswindCache:()=>bz,rebuildCrosswindCSS:()=>Sz,loadCrosswindConfig:()=>g3,loadCrosswind:()=>f3,injectCrosswindCSS:()=>K$,getCrosswindServeAsset:()=>Mz,getCachedCSS:()=>yz,generateCrosswindCSS:()=>O2,extractClassNames:()=>H2,buildCrosswindCSS:()=>B2});import Y0 from"path";import{hasLocalConfig as Rz}from"bunfig/discovery";function x4($){return Bun.hash($).toString(16).padStart(16,"0").slice(0,16)}function v3($,Z){if(j1.has($))j1.delete($);else if(j1.size>=_2)j1.delete(j1.keys().next().value);j1.set($,Z)}function Nz($){let Z=x4($);if(e0.has(Z))e0.delete(Z);else if(e0.size>=_2)e0.delete(e0.keys().next().value);return e0.set(Z,$),Z}function Mz($){let Z=e0.get($);if(Z===void 0)return;return e0.delete($),e0.set($,Z),Z}async function Tz($){if(!M1)return null;try{let Z=Bun.file(Y0.join(M1,`cw-${x4($)}.css`));if(!await Z.exists())return null;return await Z.text()}catch{return null}}async function Iz($,Z){if(!M1)return;try{if(!fs.existsSync(M1))fs.mkdirSync(M1,{recursive:!0});await Bun.write(Y0.join(M1,`cw-${x4($)}.css`),Z)}catch{}}async function j2($){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 Dz(){let $=[],Z=process.cwd();while(Z!==Y0.dirname(Z))$.push(Y0.join(Z,"node_modules","@cwcss","crosswind","dist","index.js")),$.push(Y0.join(Z,"node_modules","@cwcss","crosswind","src","index.ts")),$.push(Y0.join(Z,"pantry","@cwcss","crosswind","dist","index.js")),$.push(Y0.join(Z,"pantry","@cwcss","crosswind","src","index.ts")),$.push(Y0.join(Z,"node_modules","@stacksjs","crosswind","dist","index.js")),$.push(Y0.join(Z,"pantry","@stacksjs","crosswind","dist","index.js")),Z=Y0.dirname(Z);return $}function Ez(){let $=[],Z=process.env.HOME||process.env.USERPROFILE||"";if(Z){let Y=[Y0.join(Z,"Code","Tools","crosswind","packages","crosswind","dist","index.js"),Y0.join(Z,"Code","Tools","crosswind","packages","crosswind","src","index.ts"),Y0.join(Z,"repos","stacks-org","crosswind","packages","crosswind","dist","index.js"),Y0.join(Z,"repos","stacks-org","crosswind","packages","crosswind","src","index.ts"),Y0.join(Z,"Code","Tools","stx","packages","stx","node_modules","@cwcss","crosswind","dist","index.js"),Y0.join(Z,"Code","Tools","stx","packages","stx","node_modules","@stacksjs","crosswind","dist","index.js")];$.push(...Y)}return $.push(Y0.join(process.cwd(),"..","crosswind","packages","crosswind","dist","index.js")),$.push(Y0.join(process.cwd(),"..","crosswind","packages","crosswind","src","index.ts")),$}async function f3(){if(x3)return X1;x3=!0;try{let $=async(X)=>{for(let Q of X){if(!await Bun.file(Q).exists())continue;let G=await j2(Q);if(G){if(!process.env.STACKS_DEV_QUIET)console.log(`${H0.green}[Crosswind]${H0.reset} CSS engine loaded from ${Y0.dirname(Y0.dirname(Q))}`);return G}}return null};if(process.env.CROSSWIND_SRC){let X=Y0.resolve(process.env.CROSSWIND_SRC),Q=await $([X]);if(!Q)throw Error(`CROSSWIND_SRC did not resolve to a Crosswind module: ${X}`);return X1=Q,X1}let Z=await $(Dz());if(Z)return X1=Z,X1;let Y=["@cwcss/crosswind","@cwcss/crosswind/dist/index.js","@stacksjs/crosswind","@stacksjs/crosswind/dist/index.js"];for(let X of Y){let Q=await j2(X);if(Q){if(X1=Q,!process.env.STACKS_DEV_QUIET)console.log(`${H0.green}[Crosswind]${H0.reset} CSS engine loaded`);return X1}}let J=await $(Ez());if(J)return X1=J,X1;throw Error("Crosswind CSSGenerator not found in any location")}catch{return console.warn(`${H0.yellow}[Crosswind] CSS engine not available, Tailwind styles will not be generated${H0.reset}`),console.warn(`${H0.yellow}Run 'bun add @stacksjs/crosswind' to enable CSS generation${H0.reset}`),null}}function kz(){j1.clear(),e0.clear()}function bz(){X1=null,x3=!1,$1=null,G$="",j1.clear(),e0.clear(),v4=null}async function g3($){try{if(!Rz({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=Y0.relative($,Y.path);if(!process.env.STACKS_DEV_QUIET)console.log(`${H0.green}[Crosswind]${H0.reset} Loaded config from ${J||Y.path}`);return Y.config}catch(Z){if(Z instanceof Error&&Z.name==="ConfigNotFoundError")return null;return console.warn(`${H0.yellow}[Crosswind]${H0.reset} Failed to load crosswind config:`,Z instanceof Error?Z.message:Z),null}}async function B2($){if(L5)return G$;L5=!0;try{let Z=await f3();if(!Z||!Z.build)return L5=!1,"";if(!$1)$1=await g3($);if(!$1)return L5=!1,"";let Y=Z.defaultConfig?.theme||{},J=$1.theme||{},X={...Z.defaultConfig,...$1,theme:{...Y,...J,extend:{...Y.extend||{},...J.extend||{}}}},Q=performance.now(),G=await Z.build(X),K=performance.now()-Q;if(G$=G.css,console.log(`${H0.cyan}[Crosswind]${H0.reset} Built ${G.classes.size} classes in ${K.toFixed(1)}ms`),X.output){let W=Y0.isAbsolute(X.output)?X.output:Y0.join($,X.output),z=Y0.dirname(W);if(!fs.existsSync(z))fs.mkdirSync(z,{recursive:!0});await Bun.write(W,G.css)}return L5=!1,G.css}catch(Z){return console.error(`${H0.red}[Crosswind]${H0.reset} Build error:`,Z),L5=!1,G$}}async function Sz($){$1=null,await B2($)}function yz(){return G$}function H2($){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 W of K.slice(1,-1).split(/\s+/))if(W.trim())Z.add(W.trim())}Q=X.exec($)}return Z}async function O2($,Z){try{let Y=await f3();if(!Y)return"";let J=typeof Y.extractClasses==="function"?Y.extractClasses($):H2($);if(J.size===0)return"";let X=Z?Y0.resolve(Z):process.cwd();if(!M1)M1=O1(X,"cache");let Q=[...J].sort().join(" "),G=`${v4||"default"}::${Q}`,K=j1.get(G);if(K!==void 0)return v3(G,K),K;let W=await Tz(G);if(W!==null)return v3(G,W),W;if(!$1){let A=null;try{let{loadStxConfig:R}=await Promise.resolve().then(() => (i1(),U2)),N=await R(X);if(N.css)if(typeof N.css==="string"){let M=Y0.isAbsolute(N.css)?N.css:Y0.resolve(X,N.css);if(await Bun.file(M).exists()){let T=await import(M);A=T.default||T,console.log(`${H0.green}[Crosswind]${H0.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=Y0.isAbsolute(N.css.config)?N.css.config:Y0.resolve(X,N.css.config);if(await Bun.file(M).exists()){let T=await import(M);A={...T.default||T,...A}}}console.log(`${H0.green}[Crosswind]${H0.reset} Using inline CSS config from stx.config.ts`)}}catch{}$1=A||await g3(X);try{v4=x4(JSON.stringify($1??{}))}catch{v4="unhashable"}}let z=Y.defaultConfig||Y.config,q=$1||{},U=z.theme||{},_=(q.theme||{}).extend||{},B={...U};if(Object.keys(_).length>0)B.extend=_;let H=[...z.safelist||[],...q.safelist||[]],L={...z,...q,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||q.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(`
8258
+ `}async function U2($,Z,Y,J){if(Z.length<1)return $0("WebComponent","@webcomponent directive requires at least the tag name parameter",s.INVALID_DIRECTIVE_SYNTAX);let X=Z[0].replace(/['"]/g,""),G=(Y.__stx_options||{}).componentsDir||"components",K=[W$.join(W$.dirname(J),G,`${X}.stx`),W$.join(process.cwd(),G,`${X}.stx`),W$.join(W$.dirname(J),`${X}.stx`)],W=null;for(let U of K)if(await c(U)){W=await Bun.file(U).text();break}if(!W)return $0("WebComponent",`Component file not found: ${X}.stx`,s.FILE_NOT_FOUND);let q=Hq(W,X);return`<script type="module">
8259
+ ${Oq(q)}
8260
+ </script>`}var j2=b(()=>{U1();M0()});var _2={};a(_2,{timingPlugin:()=>Aq,pluginManager:()=>Lq,definePlugin:()=>x4,debugPlugin:()=>wq,createVariablesPlugin:()=>Rq,createFilterPlugin:()=>Vq,createDirectivePlugin:()=>Fq,PluginManager:()=>v3});function x4($){return $}class v3{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 Fq($,Z,Y={}){return{name:$,...Y,registerDirectives:()=>Z}}function Vq($,Z,Y={}){return{name:$,...Y,registerFilters:()=>Z}}function Rq($){return x4({name:"stx-variables",version:"1.0.0",description:"Adds predefined variables to template context",beforeProcess(Z){return{context:{...Z.context,...$}}}})}var Lq,wq,Aq;var B2=b(()=>{Lq=new v3;wq=x4({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)}}),Aq=x4({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 O2={};a(O2,{validateConfig:()=>Dq,loadStxConfig:()=>j1,defineStxConfig:()=>Iq,defaultConfig:()=>n1,config:()=>f3});import x3 from"fs";import y0 from"path";import{loadConfigWithResult as Nq}from"bunfig";function Mq($,Z){let Y=Z||"pages";if($)return{root:$,pagesDir:Y};let J=y0.join(process.cwd(),"resources","views"),X=y0.join(process.cwd(),"resources","layouts");if(x3.existsSync(J)&&x3.existsSync(X))return{root:"resources",pagesDir:"views"};let Q=y0.join(process.cwd(),"resources","views","pages");if(x3.existsSync(Q))return{root:"resources/views",pagesDir:Y};return{root:".",pagesDir:Y}}function Tq($){if(J9($.stateDir),$.stateDir=C5(),$.cachePath=v5($.cachePath),$.build)$.build.cacheDir=v5($.build.cacheDir);if($.media?.cache)$.media.cache.directory=v5($.media.cache.directory);if($.story)$.story.outDir=v5($.story.outDir)}async function j1($){if(!$){if(F5)return F5;if(f4)return f4}let Z=$?y0.resolve($):process.cwd(),Y=H2.get(Z);if(Y)return Y;let J=(async()=>{let Q=(await Nq({name:"stx",alias:"ui",cwd:Z,defaultConfig:n1,verbose:!1})).config;Tq(Q);let G=Mq(Q.root,Q.pagesDir);if(Q.root=G.root,Q.pagesDir=G.pagesDir,Q.root&&Q.root!=="."){let K=Q.root;if(Q.partialsDir&&!y0.isAbsolute(Q.partialsDir))Q.partialsDir=y0.join(K,Q.partialsDir);if(Q.componentsDir&&!y0.isAbsolute(Q.componentsDir))Q.componentsDir=y0.join(K,Q.componentsDir);if(Q.layoutsDir&&!y0.isAbsolute(Q.layoutsDir))Q.layoutsDir=y0.join(K,Q.layoutsDir)}if(Q.plugins&&Q.plugins.length>0){let{pluginManager:K}=await Promise.resolve().then(() => (B2(),_2)),W=[],q=[];for(let z of Q.plugins){let U=typeof z==="string"?z:z[0],j=typeof z==="string"?{}:z[1]||{};try{let _,B;try{_=await import(U),B=y0.dirname(_0.resolve(U))}catch{let L=y0.resolve(process.cwd(),U);_=await import(L),B=y0.dirname(L)}let H=_.default||_;if(K.register(H,Q),H.components){let L=y0.resolve(B,H.components);W.push(L)}if(H.pages){let L=y0.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=W,Q._pluginPageDirs=q}return Q})();if(H2.set(Z,J),!$)f4=J,J.then((X)=>{F5=X}).catch(()=>{});return J}function Iq($){return $}function Dq($){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 n1,F5=null,H2,f4=null,f3;var o1=b(()=>{j7();_7();B7();H7();a7();IZ();E3();tZ();C3();x5();j2();n1={enabled:!0,ssr:!1,partialsDir:"partials",componentsDir:"components",layoutsDir:"layouts",defaultLayout:"default",debug:!1,cache:!0,stateDir:X5,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:t8,hasEndTag:!0,description:"Render markdown content to HTML"},{name:"webcomponent",handler:U2,hasEndTag:!1,description:"Include a web component in the template"},G9,K9,q2,z2,W9,z9,U9,q9,H9,F9,TZ,D3,...aZ],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}};H2=new Map;f3=new Proxy(n1,{get($,Z){if(F5&&Z in F5)return F5[Z];if(!f4)j1().catch((Y)=>{console.warn("[stx] Failed to load config file:",Y?.message||Y)});return $[Z]}})});var R2={};a(R2,{resetCssCache:()=>vq,resetCrosswindCache:()=>xq,rebuildCrosswindCSS:()=>fq,loadCrosswindConfig:()=>u3,loadCrosswind:()=>d3,injectCrosswindCSS:()=>z$,getCrosswindServeAsset:()=>bq,getCachedCSS:()=>gq,generateCrosswindCSS:()=>A2,extractClassNames:()=>w2,buildCrosswindCSS:()=>V2});import J0 from"path";import{hasLocalConfig as Eq}from"bunfig/discovery";function h4($){return Bun.hash($).toString(16).padStart(16,"0").slice(0,16)}function g3($,Z){if(_1.has($))_1.delete($);else if(_1.size>=F2)_1.delete(_1.keys().next().value);_1.set($,Z)}function kq($){let Z=h4($);if($1.has(Z))$1.delete(Z);else if($1.size>=F2)$1.delete($1.keys().next().value);return $1.set(Z,$),Z}function bq($){let Z=$1.get($);if(Z===void 0)return;return $1.delete($),$1.set($,Z),Z}async function Sq($){if(!T1)return null;try{let Z=Bun.file(J0.join(T1,`cw-${h4($)}.css`));if(!await Z.exists())return null;return await Z.text()}catch{return null}}async function yq($,Z){if(!T1)return;try{if(!fs.existsSync(T1))fs.mkdirSync(T1,{recursive:!0});await Bun.write(J0.join(T1,`cw-${h4($)}.css`),Z)}catch{}}async function L2($){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 Pq(){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 Cq(){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 d3(){if(h3)return Q1;h3=!0;try{let $=async(X)=>{for(let Q of X){if(!await Bun.file(Q).exists())continue;let G=await L2(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 Q1=Q,Q1}let Z=await $(Pq());if(Z)return Q1=Z,Q1;let Y=["@cwcss/crosswind","@cwcss/crosswind/dist/index.js","@stacksjs/crosswind","@stacksjs/crosswind/dist/index.js"];for(let X of Y){let Q=await L2(X);if(Q){if(Q1=Q,!process.env.STACKS_DEV_QUIET)console.log(`${O0.green}[Crosswind]${O0.reset} CSS engine loaded`);return Q1}}let J=await $(Cq());if(J)return Q1=J,Q1;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 vq(){_1.clear(),$1.clear()}function xq(){Q1=null,h3=!1,Z1=null,q$="",_1.clear(),$1.clear(),g4=null}async function u3($){try{if(!Eq({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 V2($){if(V5)return q$;V5=!0;try{let Z=await d3();if(!Z||!Z.build)return V5=!1,"";if(!Z1)Z1=await u3($);if(!Z1)return V5=!1,"";let Y=Z.defaultConfig?.theme||{},J=Z1.theme||{},X={...Z.defaultConfig,...Z1,theme:{...Y,...J,extend:{...Y.extend||{},...J.extend||{}}}},Q=performance.now(),G=await Z.build(X),K=performance.now()-Q;if(q$=G.css,console.log(`${O0.cyan}[Crosswind]${O0.reset} Built ${G.classes.size} classes in ${K.toFixed(1)}ms`),X.output){let W=J0.isAbsolute(X.output)?X.output:J0.join($,X.output),q=J0.dirname(W);if(!fs.existsSync(q))fs.mkdirSync(q,{recursive:!0});await Bun.write(W,G.css)}return V5=!1,G.css}catch(Z){return console.error(`${O0.red}[Crosswind]${O0.reset} Build error:`,Z),V5=!1,q$}}async function fq($){Z1=null,await V2($)}function gq(){return q$}function w2($){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 W of K.slice(1,-1).split(/\s+/))if(W.trim())Z.add(W.trim())}Q=X.exec($)}return Z}async function A2($,Z){try{let Y=await d3();if(!Y)return"";let J=typeof Y.extractClasses==="function"?Y.extractClasses($):w2($);if(J.size===0)return"";let X=Z?J0.resolve(Z):process.cwd();if(!T1)T1=L1(X,"cache");let Q=[...J].sort().join(" "),G=`${g4||"default"}::${Q}`,K=_1.get(G);if(K!==void 0)return g3(G,K),K;let W=await Sq(G);if(W!==null)return g3(G,W),W;if(!Z1){let A=null;try{let{loadStxConfig:R}=await Promise.resolve().then(() => (o1(),O2)),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{}Z1=A||await u3(X);try{g4=h4(JSON.stringify(Z1??{}))}catch{g4="unhashable"}}let q=Y.defaultConfig||Y.config,z=Z1||{},U=q.theme||{},_=(z.theme||{}).extend||{},B={...U};if(Object.keys(_).length>0)B.extend=_;let H=[...q.safelist||[],...z.safelist||[]],L={...q,...z,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||z.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(`
8261
8261
  `);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 v=w[k].trim();if(v===`${S} {`||v.startsWith(`${S} {`)){let g=k,f="";while(g<w.length){if(f+=w[g],w[g].includes("}"))break;g++}let d=f.match(/\{([^}]+)\}/);if(d)if(E)T.push(d[1].trim());else M.push(d[1].trim());break}}}if(M.length)O+=`
8262
8262
  .${A} { ${M.join(" ")} }`;if(T.length)O+=`
8263
- @media (prefers-color-scheme: dark) { .dark .${A} { ${T.join(" ")} } }`}return v3(G,O),Iz(G,O),O}catch(Y){return console.warn("Failed to generate Crosswind CSS:",Y),""}}async function K$($,Z,Y=!1){let J=await O2($,Z);if(!J)return $;let X=Y?`<link data-crosswind="generated" rel="stylesheet" href="/_stx/crosswind.${Nz(J)}.css">`:`<style data-crosswind="generated">
8263
+ @media (prefers-color-scheme: dark) { .dark .${A} { ${T.join(" ")} } }`}return g3(G,O),yq(G,O),O}catch(Y){return console.warn("Failed to generate Crosswind CSS:",Y),""}}async function z$($,Z,Y=!1){let J=await A2($,Z);if(!J)return $;let X=Y?`<link data-crosswind="generated" rel="stylesheet" href="/_stx/crosswind.${kq(J)}.css">`:`<style data-crosswind="generated">
8264
8264
  ${J}
8265
8265
  </style>`,Q=/(?:<style\b[^>]*\bdata-crosswind=(?:"generated"|'generated')[^>]*>[\s\S]*?<\/style>|<link\b[^>]*\bdata-crosswind=(?:"generated"|'generated')[^>]*>)/g;if(Q.test($)){let G=!1;return $.replace(Q,()=>{if(G)return"";return G=!0,X})}if($.includes("</head>"))return $.replace("</head>",`${X}
8266
8266
  </head>`);if($.includes("<body"))return $.replace(/<body([^>]*)>/,`<body$1>
8267
- ${X}`);return X+$}var X1=null,x3=!1,$1=null,G$="",L5=!1,_2=256,j1,e0,M1=null,v4=null;var f4=b(()=>{C5();Z9();j1=new Map,e0=new Map});function F2(){return`
8267
+ ${X}`);return X+$}var Q1=null,h3=!1,Z1=null,q$="",V5=!1,F2=256,_1,$1,T1=null,g4=null;var d4=b(()=>{x5();X9();_1=new Map,$1=new Map});function N2(){return`
8268
8268
  // STX Lifecycle Runtime
8269
8269
  (function() {
8270
8270
  if (typeof window === 'undefined') return;
@@ -8609,7 +8609,7 @@ else {
8609
8609
 
8610
8610
  console.log('[stx] Lifecycle runtime initialized');
8611
8611
  })();
8612
- `}function h3($){return Symbol($)}var iF,nF,oF;var V2=b(()=>{iF=h3("theme"),nF=h3("router"),oF=h3("i18n")});import*as A2 from"crypto";function w2($){let Z=/\$(\w+)\./g,Y=[],J;while((J=Z.exec($))!==null)if(!Y.includes(J[1]))Y.push(J[1]);return Y}function Pz(){return`stx-${A2.randomBytes(4).toString("hex")}`}function Cz($){return/\$\w+\./.test($)}function vz($){let Z=[],Y=new Set,J=/<(\w+)([^>]*?)(\s*\/?>)/g,X=$;return X=X.replace(J,(Q,G,K,W)=>{if(["script","style","template"].includes(G.toLowerCase()))return Q;let z=[],q=!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(Cz(F)){q=!0;let w=F.match(/\{\{\s*([\s\S]+?)\s*\}\}/);if(w){let A=w[1];if(z.push({attr:O,expr:A,fullMatch:V,originalAttr:O}),w2(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(!q)return Q;let B=U.match(/\bid\s*=\s*"([^"]+)"/),H;if(B)H=B[1];else H=Pz(),U=` id="${H}"${U}`;for(let L of z)Z.push({elementId:H,attribute:L.attr,expression:L.expr,stores:w2(L.expr)});return`<${G}${U}${W}`}),{html:X,bindings:Z,stores:Y}}function xz($,Z){if($.length===0)return"";let Y=Array.from(Z),J=`
8612
+ `}function m3($){return Symbol($)}var YV,JV,XV;var M2=b(()=>{YV=m3("theme"),JV=m3("router"),XV=m3("i18n")});import*as I2 from"crypto";function T2($){let Z=/\$(\w+)\./g,Y=[],J;while((J=Z.exec($))!==null)if(!Y.includes(J[1]))Y.push(J[1]);return Y}function hq(){return`stx-${I2.randomBytes(4).toString("hex")}`}function dq($){return/\$\w+\./.test($)}function uq($){let Z=[],Y=new Set,J=/<(\w+)([^>]*?)(\s*\/?>)/g,X=$;return X=X.replace(J,(Q,G,K,W)=>{if(["script","style","template"].includes(G.toLowerCase()))return Q;let q=[],z=!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(dq(F)){z=!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}),T2(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(!z)return Q;let B=U.match(/\bid\s*=\s*"([^"]+)"/),H;if(B)H=B[1];else H=hq(),U=` id="${H}"${U}`;for(let L of q)Z.push({elementId:H,attribute:L.attr,expression:L.expr,stores:T2(L.expr)});return`<${G}${U}${W}`}),{html:X,bindings:Z,stores:Y}}function mq($,Z){if($.length===0)return"";let Y=Array.from(Z),J=`
8613
8613
  <script>
8614
8614
  (function() {
8615
8615
  'use strict';
@@ -8767,10 +8767,10 @@ else {
8767
8767
  }
8768
8768
  })();
8769
8769
  </script>
8770
- `,J}function R2($){let{html:Z,bindings:Y,stores:J}=vz($);if(Y.length===0)return $;let X=xz(Y,J),Q=Z.lastIndexOf("</body>");if(Q!==-1)return Z.slice(0,Q)+X+Z.slice(Q);return Z+X}var N2=()=>{};function fz($){let Z=$.analytics;if(!Z?.enabled)return"";switch(Z.driver){case"fathom":return gz(Z);case"google-analytics":return hz(Z);case"plausible":return dz(Z);case"self-hosted":return uz(Z);case"custom":return mz(Z);default:return""}}function gz($){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="${u0(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="${u0(Z.canonical)}"`);if(Z.auto===!1)X.push('data-auto="false"');return`
8770
+ `,J}function D2($){let{html:Z,bindings:Y,stores:J}=uq($);if(Y.length===0)return $;let X=mq(Y,J),Q=Z.lastIndexOf("</body>");if(Q!==-1)return Z.slice(0,Q)+X+Z.slice(Q);return Z+X}var E2=()=>{};function pq($){let Z=$.analytics;if(!Z?.enabled)return"";switch(Z.driver){case"fathom":return lq(Z);case"google-analytics":return cq(Z);case"plausible":return iq(Z);case"self-hosted":return nq(Z);case"custom":return oq(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="${m0(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="${m0(Z.canonical)}"`);if(Z.auto===!1)X.push('data-auto="false"');return`
8771
8771
  <!-- Fathom Analytics -->
8772
- <script src="${u0(Y)}" ${X.join(" ")}${J}></script>
8773
- `}function hz($){let Z=$.googleAnalytics;if(!Z?.measurementId)return"";let Y=u0(Z.measurementId),J=Z.debug?`gtag('config', '${Y}', { 'debug_mode': true });`:"";return`
8772
+ <script src="${m0(Y)}" ${X.join(" ")}${J}></script>
8773
+ `}function cq($){let Z=$.googleAnalytics;if(!Z?.measurementId)return"";let Y=m0(Z.measurementId),J=Z.debug?`gtag('config', '${Y}', { 'debug_mode': true });`:"";return`
8774
8774
  <!-- Google Analytics -->
8775
8775
  <script async src="https://www.googletagmanager.com/gtag/js?id=${Y}"></script>
8776
8776
  <script>
@@ -8780,10 +8780,10 @@ else {
8780
8780
  gtag('config', '${Y}');
8781
8781
  ${J}
8782
8782
  </script>
8783
- `}function dz($){let Z=$.plausible;if(!Z?.domain)return"";let Y=Z.scriptUrl||"https://plausible.io/js/script.js",J=[`data-domain="${u0(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`
8783
+ `}function iq($){let Z=$.plausible;if(!Z?.domain)return"";let Y=Z.scriptUrl||"https://plausible.io/js/script.js",J=[`data-domain="${m0(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`
8784
8784
  <!-- Plausible Analytics -->
8785
- <script defer data-domain="${u0(Z.domain)}" src="${u0(X)}"></script>
8786
- `}function uz($){let Z=$.selfHosted;if(!Z?.siteId||!Z?.apiEndpoint)return"";let Y=u0(Z.siteId),J=u0(Z.apiEndpoint),X=Z.honorDnt?'if(n.doNotTrack==="1")return;':"",Q=Z.trackHashChanges?"w.addEventListener('hashchange',pv);":"",G=Z.trackOutboundLinks?`
8785
+ <script defer data-domain="${m0(Z.domain)}" src="${m0(X)}"></script>
8786
+ `}function nq($){let Z=$.selfHosted;if(!Z?.siteId||!Z?.apiEndpoint)return"";let Y=m0(Z.siteId),J=m0(Z.apiEndpoint),X=Z.honorDnt?'if(n.doNotTrack==="1")return;':"",Q=Z.trackHashChanges?"w.addEventListener('hashchange',pv);":"",G=Z.trackOutboundLinks?`
8787
8787
  d.addEventListener('click',function(e){
8788
8788
  var a=e.target.closest('a');
8789
8789
  if(a&&a.hostname!==location.hostname){
@@ -8816,15 +8816,15 @@ else {
8816
8816
  w.stxAnalytics={track:function(n,v){t('event',{name:n,value:v});}};
8817
8817
  })();
8818
8818
  </script>
8819
- `}function mz($){let Z=$.custom;if(!Z)return"";if(Z.inlineScript)return`
8819
+ `}function oq($){let Z=$.custom;if(!Z)return"";if(Z.inlineScript)return`
8820
8820
  <!-- Custom Analytics -->
8821
8821
  <script>
8822
8822
  ${Z.inlineScript}
8823
8823
  </script>
8824
- `;if(!Z.scriptUrl)return"";let Y=[];if(Z.scriptId)Y.push(`id="${u0(Z.scriptId)}"`);if(Z.attributes)for(let[X,Q]of Object.entries(Z.attributes))Y.push(`${u0(X)}="${u0(Q)}"`);return`
8824
+ `;if(!Z.scriptUrl)return"";let Y=[];if(Z.scriptId)Y.push(`id="${m0(Z.scriptId)}"`);if(Z.attributes)for(let[X,Q]of Object.entries(Z.attributes))Y.push(`${m0(X)}="${m0(Q)}"`);return`
8825
8825
  <!-- Custom Analytics -->
8826
- <script${Y.length>0?` ${Y.join(" ")}`:""} src="${u0(Z.scriptUrl)}" defer></script>
8827
- `}function M2($,Z){let Y=fz(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 u0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}var T2=()=>{};function E2($){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(pz.has(J))Z.systemKeys.push(J);else if(J in k2)Z.mouse=J;else if(J in D2||/^[a-z]$/.test(J))Z.keys.push(D2[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,W=X.index,z=W+Q.length,q=`__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(!I2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:E2(V.slice(1)),elementId:q})}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(!I2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:E2(V.slice(1)),elementId:q})}if(U.length>0)Z.push({originalTag:Q,elementId:q,events:U,startIndex:W,endIndex:z})}return Z}function lz($){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=k2[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 cz($,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 iz($){let{modifiers:Z}=$,Y=$.elementId.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),J=lz($),X=cz($.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`
8826
+ <script${Y.length>0?` ${Y.join(" ")}`:""} src="${m0(Z.scriptUrl)}" defer></script>
8827
+ `}function k2($,Z){let Y=pq(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 m0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}var b2=()=>{};function P2($){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(sq.has(J))Z.systemKeys.push(J);else if(J in C2)Z.mouse=J;else if(J in y2||/^[a-z]$/.test(J))Z.keys.push(y2[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 v2($){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,W=X.index,q=W+Q.length,z=`__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(!S2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:P2(V.slice(1)),elementId:z})}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(!S2.has(O))continue;U.push({attribute:`@${H}`,event:O,handler:L,modifiers:P2(V.slice(1)),elementId:z})}if(U.length>0)Z.push({originalTag:Q,elementId:z,events:U,startIndex:W,endIndex:q})}return Z}function rq($){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=C2[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 aq($,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=rq($),X=aq($.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`
8828
8828
  (function() {
8829
8829
  var $el = document.getElementById('${Y}');
8830
8830
  if (!$el) return;
@@ -8878,7 +8878,7 @@ else {
8878
8878
  __stx_runHandler('${K}', $event, $el);
8879
8879
  }
8880
8880
  }${G});
8881
- })();`}function nz($){if($.length===0)return"";return`
8881
+ })();`}function eq($){if($.length===0)return"";return`
8882
8882
  <script data-stx-events>
8883
8883
  (function() {
8884
8884
  'use strict';
@@ -8926,11 +8926,11 @@ else {
8926
8926
  }
8927
8927
 
8928
8928
  // Event listeners
8929
- ${$.flatMap((Y)=>Y.events).map(iz).join(`
8929
+ ${$.flatMap((Y)=>Y.events).map(tq).join(`
8930
8930
  `)}
8931
8931
  })();
8932
- </script>`}function oz($){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 W of Q.events)W.elementId=K[1]}for(let K of Q.events){let W=K.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),z=new RegExp(`\\s*${W}\\s*=\\s*"[^"]*"`,"g"),q=new RegExp(`\\s*${W}\\s*=\\s*'[^']*'`,"g");G=G.replace(z,""),G=G.replace(q,"")}Y=Y.slice(0,Q.startIndex)+G+Y.slice(Q.endIndex),J.push(...Q.events)}return{template:Y,bindings:J}}function S2($,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:W,bindings:z}=oz($),q=Z.__stx_event_bindings||[];return Z.__stx_event_bindings=[...q,...z],W}let X=b2($);if(X.length===0)return $;let Q=$;for(let W=X.length-1;W>=0;W--){let z=X[W],q=z.originalTag;if(!q.includes(" id="))q=q.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${z.elementId}"`);else{let U=q.match(/id=["']([^"']+)["']/);if(U)for(let j of z.events)j.elementId=U[1]}for(let U of z.events){let j=U.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),_=new RegExp(`\\s*${j}\\s*=\\s*"[^"]*"`,"g"),B=new RegExp(`\\s*${j}\\s*=\\s*'[^']*'`,"g");q=q.replace(_,""),q=q.replace(B,"")}Q=Q.slice(0,z.startIndex)+q+Q.slice(z.endIndex)}let G=nz(X),K=Q.lastIndexOf("</body>");if(K!==-1)Q=Q.slice(0,K)+G+`
8933
- `+Q.slice(K);else Q+=G;return Q}var I2,D2,pz,k2;var y2=b(()=>{I2=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"]),D2={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"},pz=new Set(["ctrl","alt","shift","meta"]),k2={left:0,middle:1,right:2}});function g4($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function P2($,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 rz($){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,W=P2(G,"x-data");if(!W)continue;let z=`__stx_scope_${v2++}`,q=P2(G,"x-init"),U=az($,Q,K+X.length),j=$.slice(K,U.endIndex),_=tz(j);Z.push({id:z,selector:`[data-stx-scope="${z}"]`,stateExpr:W,initExpr:q,bindings:[],refs:_})}return Z}function az($,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 W=Q.exec($),z=G.exec($),q=K.exec($);if(q&&q.index<(W?.index??1/0)){X=q.index+q[0].length;continue}if(!z)return{endIndex:$.length};if(W&&W.index<z.index)J++,X=W.index+W[0].length;else{if(J--,J===0)return{endIndex:z.index+z[0].length};X=z.index+z[0].length}}return{endIndex:$.length}}function tz($){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=ez(Q);Z.set(G,K)}return Z}function ez($){let Z=$.match(/\bid\s*=\s*["']([^"']*)["']/);if(Z)return Z[1];return`__stx_el_${sz++}`}function $q(){return`
8932
+ </script>`}function $z($){let Z=v2($);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 W of Q.events)W.elementId=K[1]}for(let K of Q.events){let W=K.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),q=new RegExp(`\\s*${W}\\s*=\\s*"[^"]*"`,"g"),z=new RegExp(`\\s*${W}\\s*=\\s*'[^']*'`,"g");G=G.replace(q,""),G=G.replace(z,"")}Y=Y.slice(0,Q.startIndex)+G+Y.slice(Q.endIndex),J.push(...Q.events)}return{template:Y,bindings:J}}function x2($,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:W,bindings:q}=$z($),z=Z.__stx_event_bindings||[];return Z.__stx_event_bindings=[...z,...q],W}let X=v2($);if(X.length===0)return $;let Q=$;for(let W=X.length-1;W>=0;W--){let q=X[W],z=q.originalTag;if(!z.includes(" id="))z=z.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${q.elementId}"`);else{let U=z.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");z=z.replace(_,""),z=z.replace(B,"")}Q=Q.slice(0,q.startIndex)+z+Q.slice(q.endIndex)}let G=eq(X),K=Q.lastIndexOf("</body>");if(K!==-1)Q=Q.slice(0,K)+G+`
8933
+ `+Q.slice(K);else Q+=G;return Q}var S2,y2,sq,C2;var f2=b(()=>{S2=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"]),y2={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"},sq=new Set(["ctrl","alt","shift","meta"]),C2={left:0,middle:1,right:2}});function u4($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function g2($,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 Yz($){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,W=g2(G,"x-data");if(!W)continue;let q=`__stx_scope_${d2++}`,z=g2(G,"x-init"),U=Jz($,Q,K+X.length),j=$.slice(K,U.endIndex),_=Xz(j);Z.push({id:q,selector:`[data-stx-scope="${q}"]`,stateExpr:W,initExpr:z,bindings:[],refs:_})}return Z}function Jz($,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 W=Q.exec($),q=G.exec($),z=K.exec($);if(z&&z.index<(W?.index??1/0)){X=z.index+z[0].length;continue}if(!q)return{endIndex:$.length};if(W&&W.index<q.index)J++,X=W.index+W[0].length;else{if(J--,J===0)return{endIndex:q.index+q[0].length};X=q.index+q[0].length}}return{endIndex:$.length}}function Xz($){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=Qz(Q);Z.set(G,K)}return Z}function Qz($){let Z=$.match(/\bid\s*=\s*["']([^"']*)["']/);if(Z)return Z[1];return`__stx_el_${Zz++}`}function Gz(){return`
8934
8934
  // STX Reactive Runtime - x-cloak and transition CSS
8935
8935
  (function() {
8936
8936
  var style = document.createElement('style');
@@ -9137,7 +9137,7 @@ window.__stx_reactive = (function() {
9137
9137
 
9138
9138
  return { initScope: initScope, reactive: reactive };
9139
9139
  })();
9140
- `}function C2($,Z){let Y=$.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=c0(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=c0(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 Zq($,Z){if($.length===0)return"";let Y=$.map((J)=>{let X=JSON.stringify(Object.fromEntries(J.refs)),Q=C2(J.stateExpr,Z),G=J.initExpr?C2(J.initExpr,Z):null,K=JSON.stringify(Q),W=G?JSON.stringify(G):"null";return`
9140
+ `}function h2($,Z){let Y=$.replace(/\{!!([\s\S]*?)!!\}/g,(J,X)=>{try{let Q=i0(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=i0(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 Kz($,Z){if($.length===0)return"";let Y=$.map((J)=>{let X=JSON.stringify(Object.fromEntries(J.refs)),Q=h2(J.stateExpr,Z),G=J.initExpr?h2(J.initExpr,Z):null,K=JSON.stringify(Q),W=G?JSON.stringify(G):"null";return`
9141
9141
  (function() {
9142
9142
  var scopeEl = document.querySelector('${J.selector}');
9143
9143
  if (!scopeEl) return;
@@ -9146,16 +9146,16 @@ window.__stx_reactive = (function() {
9146
9146
  })();`}).join(`
9147
9147
  `);return`
9148
9148
  <script data-stx-scoped data-stx-reactive>
9149
- ${$q()}
9149
+ ${Gz()}
9150
9150
  ${Y}
9151
- </script>`}function x2($,Z,Y){if(v2=0,!Jq($))return $;let J=rz($);if(J.length===0)return $;let X=Yq($,J),Q=Zq(J,Z),G=X.lastIndexOf("</body>");if(G!==-1)X=X.slice(0,G)+Q+`
9152
- `+X.slice(G);else X+=Q;return X}function Yq($,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*["']${g4(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*["']${g4(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*"${g4(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*'${g4(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 Jq($){return/x-data\s*=\s*["']/.test($)}var v2=0,sz=0;var f2=b(()=>{J1()});import Xq from"fs";import d3 from"path";import{createHighlighter as Qq}from"ts-syntax-highlighter";async function Gq($,Z={}){try{if(!await c($))throw Error(`Markdown file not found: ${$}`);let J=(await Xq.promises.stat($)).mtime.getTime();if(Z.cache&&u3.has($)){let U=u3.get($);if(U.updatedAt>=J)return{content:U.content,data:U.data}}let X=await Bun.file($).text(),{data:Q,content:G}=L9(X),K=Z.markdown||C3.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},z=v5(G,{gfm:!0});if(K.syntaxHighlighting?.enabled&&K.syntaxHighlighting?.serverSide)z=await Kq(z,K.syntaxHighlighting?.defaultTheme||"github-dark",K.syntaxHighlighting?.highlightUnknownLanguages||!1);let q={content:z,data:Q||{}};if(Z.cache)u3.set($,{...q,updatedAt:J});return q}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 Kq($,Z,Y){let J=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!h4)try{h4=await Qq({theme:Z||"github-dark",cache:!0})}catch(K){return console.error("Failed to initialize ts-syntax-highlighter:",K),$}let X=async(K,W,z,q)=>{let U=q.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&").replace(/&quot;/g,'"').replace(/&#39;/g,"'"),j=z||(Y?"text":"");if(!j)return K;try{if(!h4.getSupportedLanguages().includes(j))return K;return(await h4.highlight(U,j,{theme:Z})).html}catch(_){console.error(`Error highlighting code block with language ${z}:`,_)}return K},Q=$,G=$.matchAll(J);for(let K of G){let[W,z,q,U]=K,j=await X(W,z,q,U);Q=Q.replace(W,j)}return Q}async function g2($,Z,Y="",J={}){return await Wq($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,K,W,z)=>{try{let q=K;if(!d3.isAbsolute(K))q=d3.resolve(d3.dirname(Y),K);let U={};if(W)try{try{U=JSON.parse(W)}catch{if(J.debug)console.warn("Using safer alternative for parsing JS object literal");let O=W.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 Gq(q,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(q){let U=q instanceof Error?q.message:String(q);return q0("Markdown File",`Error including markdown file: ${U}`,Y,$,z,G)}})}async function Wq($,Z,Y){let J=[],X;while((X=Z.exec($))!==null){let K=X[0],W=X.index,z=X;J.push(Y(...z).then((q)=>({match:K,replacement:q,index:W})))}let Q=await Promise.all(J);Q.sort((K,W)=>W.index-K.index);let G=$;for(let{match:K,replacement:W}of Q)G=G.replace(K,()=>W);return G}var u3,h4=null;var h2=b(()=>{i1();N0();u3=new Map});function T1($,Z){try{let Y=$.trim();if(K0(Y))return W0(Y,Object.keys(Z))(...Object.values(Z));else return $0(Y,Z)}catch{return!1}}var d2=b(()=>{w0()});function zq($,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=S7(J,G);if(!K)break;try{let W;if(K0(K.expression))W=W0(K.expression,Object.keys(Z))(...Object.values(Z));else W=$0(K.expression,Z);let z="",q=!1;for(let U of K.cases)if(U.type==="default"){if(!q)z=U.content.trim()}else try{let j;if(U.value&&K0(U.value))j=W0(U.value,Object.keys(Z))(...Object.values(Z));else if(U.value)j=$0(U.value,Z);if(W===j){z=U.content.trim(),q=!0;break}}catch{continue}J=J.substring(0,G)+z+J.substring(K.end),X=!0}catch(W){let z=W instanceof Error?W.message:String(W),q=e("Switch",`Error evaluating @switch expression: ${z}`,s.EVALUATION_ERROR);J=J.substring(0,G)+q+J.substring(K.end);break}}return J}function n1($,Z,Y){let J=$;J=zq(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,W=R1(J,K+7);if(!W)break;let z=W.endPos,q=h1(J,"unless","endunless",z);if(q===-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(z,q),j=W.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(q+10),Q=!0}}J=p3(J,Z,Y),J=l3(J,Z,Y),J=m3(J,Z);let X=()=>{let Q=a5(J);if(Q.length===0)return!1;for(let G=Q.length-1;G>=0;G--){let K=Q[G];try{let W="",z=!1;for(let q of K.branches){if(z)break;if(q.type==="else")W=q.content,z=!0;else try{let U;if(q.condition&&K0(q.condition))U=W0(q.condition,Object.keys(Z))(...Object.values(Z));else if(q.condition)U=$0(q.condition,Z);if(U)W=q.content,z=!0}catch(U){W=e(q.type==="if"?"If":"Elseif",`Error in @${q.type}(${q.condition}): ${U instanceof Error?U.message:String(U)}`,s.EVALUATION_ERROR),z=!0}}J=J.substring(0,K.start)+W+J.substring(K.end)}catch(W){let z=W instanceof Error?W.message:String(W),q=e("If",`Error processing @if block: ${z}`,s.EVALUATION_ERROR);J=J.substring(0,K.start)+q+J.substring(K.end)}}return!0};while(!0){let Q=J;if(!X())break;if(J===Q)break}return J}function u2($){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 m3($,Z){let Y=$;function J(K,W,z,q){let U=1,j=q,_=new RegExp(`@${W}(?:\\s*\\(|\\s|$)`,"g"),B=new RegExp(`@${z}(?![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,W,z){let q=0,U=new RegExp(`@${W}(?:\\s*\\(|\\s|$)`,"g"),j=new RegExp(`@${z}(?![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")q++;else if(L.type==="close")q--;else if(L.type==="else"&&q===0)return L.pos;return-1}{let K=!0;while(K){K=!1;let W=Y.match(/@auth(?:\s*\(|\s|(?=\n))/);if(!W||W.index===void 0)break;let z=W.index,q,U,j=Y.slice(z+5),_=u2(j);if(_)q=_.value,U=z+5+_.consumed;else U=z+5;let B=J(Y,"auth","endauth",U);if(B===-1){console.warn(`[stx] @auth directive at position ${z} 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=q?T1(`auth?.check && auth?.user?.[${q}]`,Z):T1("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,z)+O+Y.substring(B+8),K=!0}}{let K=!0;while(K){K=!1;let W=Y.match(/@guest(?:\s*\(|\s|(?=\n))/);if(!W||W.index===void 0)break;let z=W.index,q,U,j=Y.slice(z+6),_=u2(j);if(_)q=_.value,U=z+6+_.consumed;else U=z+6;let B=J(Y,"guest","endguest",U);if(B===-1){console.warn(`[stx] @guest directive at position ${z} 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=q?T1(`!auth?.check || !auth?.user?.[${q}]`,Z):T1("!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,z)+O+Y.substring(B+9),K=!0}}function Q(K,W,z){if(Z.userCan&&typeof Z.userCan[K]==="boolean")return Z.userCan[K];if(Z.permissions?.check&&typeof Z.permissions.check==="function")try{let q=[K];if(W)q.push(W);if(z){let U=T1(z,Z);q.push(U)}return Z.permissions.check(...q)}catch{return!1}return!1}function G(K){let W=K.match(/^\s*\(\s*'([^']*)'(?:,\s*'([^']*)')?(?:,\s*([^)]*))?\)/);if(!W)return null;return{ability:W[1],type:W[2],id:W[3]?.trim(),paramsEnd:W[0].length}}for(let K of["can","cannot"]){let W=`end${K}`,z=K==="can"?"elsecan":"elsecannot",q=!0;while(q){q=!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,W,H);if(L===-1){console.warn(`[stx] @${K} directive at position ${j} has no matching @${W} \u2014 the block was skipped.`);break}let V=Y.slice(H,L),O=[],F=0,w=new RegExp(`@${K}\\s*\\(`,"g"),A=new RegExp(`@${W}(?![a-z])`,"g"),R=new RegExp(`@${z}\\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,v)=>k.pos-v.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 v=O[k];if(I.push({content:V.slice(E,v.pos),ability:void 0}),v.type==="elseDirective"){let g=V.slice(v.pos+`@${z}`.length),f=G(g);if(f){I[I.length-1]={content:V.slice(E,v.pos)},E=v.pos+`@${z}`.length+f.paramsEnd,I.push({content:"",ability:f.ability,type:f.type,id:f.id}),I.pop();let d=O[k+1],p=d?d.pos:V.length;I.push({content:V.slice(E,p),ability:f.ability,type:f.type,id:f.id}),E=p}}else E=v.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 v=1;v<I.length;v++){let g=I[v];if(g.isFinalElse){S=g.content,k=!0;break}if(g.ability){let f=Q(g.ability,g.type,g.id);if(K==="can"?f:!f){S=g.content,k=!0;break}}}if(!k&&I.length>0){let v=I[I.length-1];if(v.isFinalElse)S=v.content}}Y=Y.substring(0,j)+S+Y.substring(L+`@${W}`.length),q=!0}}return Y}function p3($,Z,Y){let J=$;function X(Q,G,K,W,z){let q=!0;while(q){q=!1;let U=new RegExp(`@${G}\\s*\\(`),j=Q.match(U);if(!j||j.index===void 0)break;let _=j.index,B=R1(Q,_+`@${G}`.length);if(!B)break;let H=B.endPos,L=h1(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=W(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),q=!0}catch(R){let N=R instanceof Error?R.message:String(R),M=e(z,`Error processing @${G} directive: ${N}`,s.EVALUATION_ERROR);Q=Q.substring(0,_)+M+Q.substring(L+`@${K}`.length);break}}return Q}return J=X(J,"isset","endisset",(Q)=>{let G=T1(Q,Z);return G!==void 0&&G!==null},"Isset"),J=X(J,"empty","endempty",(Q)=>{let G=T1(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 l3($,Z,Y){let J=$,X="development";function Q(G,K,W,z){let q=new RegExp(`@${K}(?![a-z])`,"g"),U=new RegExp(`@${W}(?![a-z])`,"g"),j=new RegExp(`^@${K}(?![a-z])`),_=new RegExp(`^@${W}(?![a-z])`),B=G,H=!0;while(H){H=!1,q.lastIndex=0;let L=q.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,z=X===D[2]}let F=1,w=O,A=-1;while(F>0&&w<B.length){q.lastIndex=w,U.lastIndex=w;let D=q.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 @${W} \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=z?D:y}else I=z?R:"";let E=`@${W}`.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 d4=b(()=>{d2();q1();f$();w0()});function p2($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function u4($,Z){if(!$)return Z?.nonceGenerator?.()??p2();let Y=m2.get($);if(!Y)Y=Z?.nonceGenerator?.()??p2(),m2.set($,Y);return Y}function qq($,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 l2($,Z){return`<meta http-equiv="Content-Security-Policy" content="${qq($,Z).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}">`}function c2($,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?u4(Y,Z):void 0,X=l2(Z.directives,J);return $.replace(/<head([^>]*)>/,`<head$1>
9153
- ${X}`)}function i2($,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 n2($,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?u4(Z,Q):void 0;return l2(Q.directives,G)}),X=X.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return u4(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=u4(Z,Q);return X}var m2;var o2=b(()=>{m2=new WeakMap});import Uq from"crypto";function _q($=jq){let Z=Uq.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return c3=Z,Z}function Bq(){if(!c3)_q();return c3}function Hq($=s2){let Z=Bq();return`<input type="hidden" name="${$}" value="${Z}">`}function r2($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,Y,J)=>{return Hq(J||s2)})}var jq=40,s2="_token",c3=null;var a2=()=>{};async function t2($,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 Oq(X,Q,Z,Y,J);else X=await Lq(X,Q,Z,Y,J)}return X}async function Oq($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=`@${Q}`,W=`@end${Q}`,z=$,q=W5(`${K}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${W}`,"g"),U=[],j=q.exec(z);while(j!==null){let[_,B="",H=""]=j,L=j.index||0;try{let V=B?e2(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:e("CustomDirective",`Error in @${Q}${B?`(${B})`:""}: ${O}`,s.EVALUATION_ERROR),startIndex:L})}j=q.exec(z)}for(let _=U.length-1;_>=0;_--){let{original:B,processed:H}=U[_];z=z.replace(B,H)}return z}async function Lq($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=$,W=W5(`@${Q}\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\)`,"g"),z=[],q=W.exec(K);while(q!==null){let[_,B=""]=q,H=q.index||0;try{let L=e2(B),V=await G("",L,Y,J);z.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);z.push({original:_,processed:e("CustomDirective",`Error in @${Q}(${B}): ${V}`,s.EVALUATION_ERROR),startIndex:H})}q=W.exec(K)}let U=W5(`@${Q}(?!\\w)(?!\\s*\\()`,"g"),j=U.exec(K);while(j!==null){let[_]=j,B=j.index||0;try{let H=await G("",[],Y,J);z.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);z.push({original:_,processed:e("CustomDirective",`Error in @${Q}: ${L}`,s.EVALUATION_ERROR),startIndex:B})}j=U.exec(K)}for(let _=z.length-1;_>=0;_--){let{original:B,processed:H}=z[_];K=K.replace(B,H)}return K}function e2($){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 $Y=b(()=>{q1();z5()});function o1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function Vq($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,Y=Z.appearance,J=Z.colorMode;if(o1(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(o1(Y.key,"appearance.key"),o1(Y.attribute,"appearance.attribute"),o1(Y.default,"appearance.default"),o1(J.key,"colorMode.key"),o1(J.attribute,"colorMode.attribute"),o1(J.default,"colorMode.default"),!YY.test(Y.key)||!YY.test(J.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!ZY.test(Y.attribute)||!ZY.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(!Fq.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 wq($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function Aq($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${wq($)};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 Rq($,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 JY($,Z){let Y=$,J=/@appearanceBootstrap\s*\(/g,X;while((X=J.exec(Y))!==null){let Q=X.index+X[0].length-1,G=Rq(Y,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let K=Y.slice(Q+1,G).trim(),W=$0(`(${K})`,Z),z=Aq(Vq(W));Y=Y.slice(0,X.index)+z+Y.slice(G+1),J.lastIndex=X.index+z.length}return Y}var ZY,YY,Fq;var XY=b(()=>{w0();ZY=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,YY=/^[A-Za-z_$][\w$]*$/,Fq=new Set(["light","dark","system"])});import Nq from"crypto";function T0($){return String($??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function m4($,Z,Y,J){let X=$||Z;return Y?`${X} ${J}`:X}function Mq(){return Nq.randomUUID()}function p4($,Z){let Y=$;return Y=Y.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let J=Mq();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 KY($,Z,Y=GY){let J=$;return J=J.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(X,Q,G,K,W,z="")=>{let q=Q||G||"POST",U=K||W||"",j=I1(z),_=q.toUpperCase(),B=["GET","POST"].includes(_)?_:"POST",H=`<form method="${T0(B)}" action="${T0(U)}"${j?` ${j}`:""}>`;if(H+=`
9154
- ${p4("@csrf",Z)}`,!["GET","POST"].includes(_))H+=`
9155
- ${p4(`@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,W,z="")=>{let q=Q||G||"",U=K||W||"",j=I1(z),_=W$(q,Z),B=_!==void 0&&_!==null?_:U||"",H=j.match(/type=['"]([^'"]+)['"]/i),L=H?H[1]:"text",V=z$(q,Z),O=j.match(/class=['"]([^'"]+)['"]/i),F=m4(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(q)}" value="${T0(B)}" class="${F}"${w?` ${w}`:""}>`}),J=J.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(X,Q,G="",K="")=>{let W=I1(G),z=W$(Q,Z)||K.trim(),q=z$(Q,Z),U=W.match(/class=['"]([^'"]+)['"]/i),j=m4(U?U[1]:"",Y.input,q,Y.inputError),_=W.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${T0(Q)}" class="${j}"${_?` ${_}`:""}>${T0(z)}</textarea>`}),J=J.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(X,Q,G="",K)=>{let W=I1(G),z=W$(Q,Z),q=z$(Q,Z),U=W.match(/class=['"]([^'"]+)['"]/i),j=m4(U?U[1]:"",Y.input,q,Y.inputError),_=W.replace(/class=['"][^'"]+['"]/i,""),B=K;if(z!==void 0)B=K.replace(/(<option[^>]*value=['"]([^'"]+)['"][^>]*>)/gi,(H,L,V)=>{if((Array.isArray(z)?z.some((F)=>String(F)===V):String(z)===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 W=I1(K),z=W$(Q,Z),q=z!==void 0&&(Array.isArray(z)?z.some((B)=>String(B)===G):z===!0||String(z)===G),U=W.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,_=W.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${T0(Q)}" value="${T0(G)}" class="${j}"${q?" checked":""}${_?` ${_}`:""}>`}),J=J.replace(/@radio\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G,K="")=>{let W=I1(K),z=W$(Q,Z),q=z!==void 0&&z===G,U=W.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,_=W.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${T0(Q)}" value="${T0(G)}" class="${j}"${q?" checked":""}${_?` ${_}`:""}>`}),J=J.replace(/@file\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G="")=>{let K=I1(G),W=K.match(/accept=['"]([^'"]+)['"]/i),z=W?W[1]:"",q=K.includes("multiple"),U=z$(Q,Z),j=K.match(/class=['"]([^'"]+)['"]/i),_=m4(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(z)H.push(`accept="${T0(z)}"`);if(q)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 W=I1(G),z=W.match(/class=['"]([^'"]+)['"]/i),q=z?z[1]:Y.label,U=W.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${T0(Q)}" class="${q}"${U?` ${U}`:""}>${K}</label>`}),J}function WY($,Z,Y=GY){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(J,X,Q)=>{try{if(z$(X,Z))return Q.replace(/\{\{([^}]+)\}\}/g,(G,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return QY(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 QY(X,Z)}let W=K.trim();if(K0(W)){let z=$0(W,Z);return z!==void 0?String(z):W}return W}catch{return K}});return""}catch(G){return console.error("Error processing @error directive:",G),J}})}function z$($,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 QY($,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 W$($,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 I1($){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 GY;var zY=b(()=>{w0();GY={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"}});import o3 from"path";async function Tq(){if(q$!==void 0)return q$;try{q$=(await import("@stacksjs/ts-i18n")).loadLocale??null}catch{q$=null}return q$}function Iq($,Z=0){if(Z<=0)return!1;return Date.now()-$.loadedAt>Z}async function Dq($,Z){if({...a3,...Z.i18n}.cache&&s3[$]){let X=s3[$],Q=Z.i18n?.cacheMaxAge??0;if(!Iq(X,Q))return X.translations}if(U$[$]?.state==="loading")return U$[$].promise;i3[$]="loading";let J=r3($,Z).then((X)=>{return i3[$]="loaded",delete U$[$],X}).catch((X)=>{throw i3[$]="error",U$[$]={promise:J,state:"error",error:X instanceof Error?X:Error(String(X))},X});return U$[$]={promise:J,state:"loading"},J}async function r3($,Z){let Y={...a3,...Z.i18n},J=o3.isAbsolute(Y.translationsDir)?Y.translationsDir:o3.resolve(Z.root||process.cwd(),Y.translationsDir);try{let X=await Tq(),Q=X?await X($,{translationsDir:J,defaultLocale:Y.defaultLocale,sources:yq(Y.format)}):await Eq($,Y,J);if(Q===void 0){if($!==Y.defaultLocale)return r3(Y.defaultLocale,Z);return{}}let G=Q;if(Y.cache)s3[$]={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 r3(Y.defaultLocale,Z);return{}}}async function Eq($,Z,Y){let J=o3.join(Y,`${$}${kq(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 bq(Q);if(Z.format==="json")return JSON.parse(Q);throw X}catch{return}}}function kq($){switch($){case"yaml":return".yaml";case"yml":return".yml";case"js":return".js";case"ts":return".ts";case"json":default:return".json"}}function bq($){let Z={},Y=$.split(`
9156
- `),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,W=Q.match(/^(\s*)(\S[^:]*):\s*(.*)$/);if(W){let[,,z,q]=W,U=z.trim(),j=q.trim();if(j==="")K[U]={},J.push({obj:K[U],indent:G});else K[U]=Sq(j)}}return Z}function Sq($){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 yq($){switch($){case"yaml":case"yml":return["yaml"];case"js":case"ts":return["ts"];case"json":default:return["json"]}}async function Pq($,Z){return Dq($,Z)}function Cq($,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 vq($,Z={}){return jY($,Z)}function jY($,Z){let Y="",J=0;while(J<$.length)if($[J]==="{"){let X=xq($,J);if(X===-1){Y+=$[J],J++;continue}let Q=$.slice(J+1,X);Y+=fq(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 xq($,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 fq($,Z){let Y=gq($);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 hq(X,Y.slice(2).join(","),Z);case"select":return uq(X,Y.slice(2).join(","));case"selectordinal":return mq(X,Y.slice(2).join(","));case"number":return lq(X,Y[2]?.trim());case"date":return cq(X,Y[2]?.trim());case"time":return iq(X,Y[2]?.trim());default:return X!==void 0?String(X):`{${$}}`}}function gq($){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 hq($,Z,Y){let J=Number($)||0,X=t3(Z),Q=`=${J}`;if(X[Q])return n3(X[Q],J,Y);let G=dq(J);if(X[G])return n3(X[G],J,Y);if(X.other)return n3(X.other,J,Y);return String(J)}function n3($,Z,Y){let J=$.replace(/#/g,String(Z));return jY(J,Y)}function dq($){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 uq($,Z){let Y=String($||""),J=t3(Z);if(J[Y])return J[Y];return J.other||String($)}function mq($,Z){let Y=Number($)||0,J=t3(Z),X=pq(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 pq($){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 t3($){let Z={},Y=/(\w+|=\d+)\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g,J=Y.exec($);while(J!==null)Z[J[1]]=J[2],J=Y.exec($);return Z}function lq($,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 cq($,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 iq($,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 nq($){return/\{[^}]+,\s*(?:plural|select|selectordinal|number|date|time)\s*,/.test($)}function qY($,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(nq(G))return vq(G,J);if(G.includes("|")&&"count"in J){let K=Number(J.count),W=G.split("|");G=Cq(W,K)}for(let[K,W]of Object.entries(J)){let z=K.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");G=G.replace(new RegExp(`:${z}`,"g"),String(W))}return G}async function _Y($,Z,Y,J){let X=$,Q=/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)([\s\S]*?)@endtranslate/g,G={...a3,...J.i18n},K=await Pq(G.locale,J);Z.__translations=K,Z.__locale=G.locale,Z.__i18nConfig=G,X=await UY(X,Q,async(q,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 qY(U,K,G.fallbackToKey,H)||_.trim()}catch(H){if(J.debug)console.error("Error processing @translate directive:",H);return e("Translate",`Error in @translate('${U}'): ${H instanceof Error?H.message:String(H)}`,s.EVALUATION_ERROR)}});let W=/@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 q=[...X.matchAll(W)];console.warn(`Found ${q.length} @translate matches`),q.forEach((U,j)=>console.warn(`Match ${j}: ${U[0]}, Key: ${U[1]}, Params: ${U[2]||"none"}`))}return X=await UY(X,/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)/g,async(q,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 qY(U,K,G.fallbackToKey,B)}catch(B){if(J.debug)console.error("Error processing @translate directive:",B);return e("Translate",`Error in @translate('${U}'): ${B instanceof Error?B.message:String(B)}`,s.EVALUATION_ERROR)}}),X}async function UY($,Z,Y){let J=[];return $.replace(Z,(Q,...G)=>{let K=Y(Q,...G).then((W)=>({match:Q,replacement:W}));return J.push(K),Q}),(await Promise.all(J)).reduce((Q,{match:G,replacement:K})=>Q.replace(G,K),$)}var q$,a3,s3,U$,i3;var BY=b(()=>{q1();w0();a3={defaultLocale:"en",locale:"en",translationsDir:"translations",format:"yaml",fallbackToKey:!0,cache:!0},s3={},U$={},i3={}});var Z6={};a(Z6,{streamingSuspenseDirective:()=>LY,streamToResponse:()=>QU,streamTemplateSimple:()=>ZU,streamTemplate:()=>sq,renderStreamingPage:()=>aq,registerStreamingDirectives:()=>JU,processStreamDirectives:()=>eq,processSectionDirectives:()=>XU,islandDirective:()=>FY,generateHydrationRuntime:()=>GU,extractStreamBoundaries:()=>$U,createStreamRenderer:()=>YU,buildSuspenseResolveScript:()=>$6,SUSPENSE_RESOLVER_RUNTIME:()=>OY});import l4 from"path";function oq($){let Z=[],Y=0,J;HY.lastIndex=0;while((J=HY.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 sq($,Z={},Y={}){let J={...c1,...Y,streaming:{...e3,...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),W=K?K[1]:"",z=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),q={...Z,__filename:$,__dirname:l4.dirname($)};if(W.trim())await g1(W,q,$);let U=oq(z),j=new Set;if(!U.some((B)=>B.type==="suspense")){let B=J.streaming?.strategy||"auto",H=new RegExp(s1.source,"g");if(!(B!=="manual"&&H.test(z))){let V=await O0(z,q,$,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(s1.source,"g"),F;while((F=O.exec(z))!==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=z.slice(w,A.start);if(N.trim()){let M=await O0(N,q,$,J,j);Q.enqueue(M),await new Promise((T)=>setTimeout(T,0))}}let R=await O0(A.content,q,$,J,j);Q.enqueue(R),await new Promise((N)=>setTimeout(N,0)),w=A.end}if(w<z.length){let A=z.slice(w);if(A.trim()){let R=await O0(A,q,$,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 O0(L.content,q,$,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;">
9151
+ </script>`}function u2($,Z,Y){if(d2=0,!qz($))return $;let J=Yz($);if(J.length===0)return $;let X=Wz($,J),Q=Kz(J,Z),G=X.lastIndexOf("</body>");if(G!==-1)X=X.slice(0,G)+Q+`
9152
+ `+X.slice(G);else X+=Q;return X}function Wz($,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*["']${u4(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*["']${u4(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*"${u4(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*'${u4(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 qz($){return/x-data\s*=\s*["']/.test($)}var d2=0,Zz=0;var m2=b(()=>{X1()});import zz from"fs";import p3 from"path";import{createHighlighter as Uz}from"ts-syntax-highlighter";async function jz($,Z={}){try{if(!await c($))throw Error(`Markdown file not found: ${$}`);let J=(await zz.promises.stat($)).mtime.getTime();if(Z.cache&&l3.has($)){let U=l3.get($);if(U.updatedAt>=J)return{content:U.content,data:U.data}}let X=await Bun.file($).text(),{data:Q,content:G}=w9(X),K=Z.markdown||f3.markdown||{enabled:!0,syntaxHighlighting:{enabled:!0,serverSide:!0,defaultTheme:"github-dark",highlightUnknownLanguages:!0}},q=f5(G,{gfm:!0});if(K.syntaxHighlighting?.enabled&&K.syntaxHighlighting?.serverSide)q=await _z(q,K.syntaxHighlighting?.defaultTheme||"github-dark",K.syntaxHighlighting?.highlightUnknownLanguages||!1);let z={content:q,data:Q||{}};if(Z.cache)l3.set($,{...z,updatedAt:J});return z}catch(Y){if(Z.debug)console.error(`Error reading/parsing markdown file ${$}:`,Y);let J=Y instanceof Error?Y.message:String(Y);return{content:U0("Markdown File",`Error reading/parsing markdown file: ${J}`,$,"",0,""),data:{}}}}async function _z($,Z,Y){let J=/<pre><code( class="language-([^"]+)")?>([^<]+)<\/code><\/pre>/g;if(!m4)try{m4=await Uz({theme:Z||"github-dark",cache:!0})}catch(K){return console.error("Failed to initialize ts-syntax-highlighter:",K),$}let X=async(K,W,q,z)=>{let U=z.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(!m4.getSupportedLanguages().includes(j))return K;return(await m4.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[W,q,z,U]=K,j=await X(W,q,z,U);Q=Q.replace(W,j)}return Q}async function p2($,Z,Y="",J={}){return await Bz($,/@markdown-file\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\}))?\)/g,async(G,K,W,q)=>{try{let z=K;if(!p3.isAbsolute(K))z=p3.resolve(p3.dirname(Y),K);let U={};if(W)try{try{U=JSON.parse(W)}catch{if(J.debug)console.warn("Using safer alternative for parsing JS object literal");let O=W.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 jz(z,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(z){let U=z instanceof Error?z.message:String(z);return U0("Markdown File",`Error including markdown file: ${U}`,Y,$,q,G)}})}async function Bz($,Z,Y){let J=[],X;while((X=Z.exec($))!==null){let K=X[0],W=X.index,q=X;J.push(Y(...q).then((z)=>({match:K,replacement:z,index:W})))}let Q=await Promise.all(J);Q.sort((K,W)=>W.index-K.index);let G=$;for(let{match:K,replacement:W}of Q)G=G.replace(K,()=>W);return G}var l3,m4=null;var l2=b(()=>{o1();M0();l3=new Map});function I1($,Z){try{let Y=$.trim();if(W0(Y))return q0(Y,Object.keys(Z))(...Object.values(Z));else return Z0(Y,Z)}catch{return!1}}var c2=b(()=>{A0()});function Hz($,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=C7(J,G);if(!K)break;try{let W;if(W0(K.expression))W=q0(K.expression,Object.keys(Z))(...Object.values(Z));else W=Z0(K.expression,Z);let q="",z=!1;for(let U of K.cases)if(U.type==="default"){if(!z)q=U.content.trim()}else try{let j;if(U.value&&W0(U.value))j=q0(U.value,Object.keys(Z))(...Object.values(Z));else if(U.value)j=Z0(U.value,Z);if(W===j){q=U.content.trim(),z=!0;break}}catch{continue}J=J.substring(0,G)+q+J.substring(K.end),X=!0}catch(W){let q=W instanceof Error?W.message:String(W),z=$0("Switch",`Error evaluating @switch expression: ${q}`,s.EVALUATION_ERROR);J=J.substring(0,G)+z+J.substring(K.end);break}}return J}function s1($,Z,Y){let J=$;J=Hz(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,W=N1(J,K+7);if(!W)break;let q=W.endPos,z=u1(J,"unless","endunless",q);if(z===-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,z),j=W.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(z+10),Q=!0}}J=i3(J,Z,Y),J=n3(J,Z,Y),J=c3(J,Z);let X=()=>{let Q=$$(J);if(Q.length===0)return!1;for(let G=Q.length-1;G>=0;G--){let K=Q[G];try{let W="",q=!1;for(let z of K.branches){if(q)break;if(z.type==="else")W=z.content,q=!0;else try{let U;if(z.condition&&W0(z.condition))U=q0(z.condition,Object.keys(Z))(...Object.values(Z));else if(z.condition)U=Z0(z.condition,Z);if(U)W=z.content,q=!0}catch(U){W=$0(z.type==="if"?"If":"Elseif",`Error in @${z.type}(${z.condition}): ${U instanceof Error?U.message:String(U)}`,s.EVALUATION_ERROR),q=!0}}J=J.substring(0,K.start)+W+J.substring(K.end)}catch(W){let q=W instanceof Error?W.message:String(W),z=$0("If",`Error processing @if block: ${q}`,s.EVALUATION_ERROR);J=J.substring(0,K.start)+z+J.substring(K.end)}}return!0};while(!0){let Q=J;if(!X())break;if(J===Q)break}return J}function i2($){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 c3($,Z){let Y=$;function J(K,W,q,z){let U=1,j=z,_=new RegExp(`@${W}(?:\\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,W,q){let z=0,U=new RegExp(`@${W}(?:\\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")z++;else if(L.type==="close")z--;else if(L.type==="else"&&z===0)return L.pos;return-1}{let K=!0;while(K){K=!1;let W=Y.match(/@auth(?:\s*\(|\s|(?=\n))/);if(!W||W.index===void 0)break;let q=W.index,z,U,j=Y.slice(q+5),_=i2(j);if(_)z=_.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=z?I1(`auth?.check && auth?.user?.[${z}]`,Z):I1("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 W=Y.match(/@guest(?:\s*\(|\s|(?=\n))/);if(!W||W.index===void 0)break;let q=W.index,z,U,j=Y.slice(q+6),_=i2(j);if(_)z=_.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=z?I1(`!auth?.check || !auth?.user?.[${z}]`,Z):I1("!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,W,q){if(Z.userCan&&typeof Z.userCan[K]==="boolean")return Z.userCan[K];if(Z.permissions?.check&&typeof Z.permissions.check==="function")try{let z=[K];if(W)z.push(W);if(q){let U=I1(q,Z);z.push(U)}return Z.permissions.check(...z)}catch{return!1}return!1}function G(K){let W=K.match(/^\s*\(\s*'([^']*)'(?:,\s*'([^']*)')?(?:,\s*([^)]*))?\)/);if(!W)return null;return{ability:W[1],type:W[2],id:W[3]?.trim(),paramsEnd:W[0].length}}for(let K of["can","cannot"]){let W=`end${K}`,q=K==="can"?"elsecan":"elsecannot",z=!0;while(z){z=!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,W,H);if(L===-1){console.warn(`[stx] @${K} directive at position ${j} has no matching @${W} \u2014 the block was skipped.`);break}let V=Y.slice(H,L),O=[],F=0,w=new RegExp(`@${K}\\s*\\(`,"g"),A=new RegExp(`@${W}(?![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,v)=>k.pos-v.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 v=O[k];if(I.push({content:V.slice(E,v.pos),ability:void 0}),v.type==="elseDirective"){let g=V.slice(v.pos+`@${q}`.length),f=G(g);if(f){I[I.length-1]={content:V.slice(E,v.pos)},E=v.pos+`@${q}`.length+f.paramsEnd,I.push({content:"",ability:f.ability,type:f.type,id:f.id}),I.pop();let d=O[k+1],p=d?d.pos:V.length;I.push({content:V.slice(E,p),ability:f.ability,type:f.type,id:f.id}),E=p}}else E=v.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 v=1;v<I.length;v++){let g=I[v];if(g.isFinalElse){S=g.content,k=!0;break}if(g.ability){let f=Q(g.ability,g.type,g.id);if(K==="can"?f:!f){S=g.content,k=!0;break}}}if(!k&&I.length>0){let v=I[I.length-1];if(v.isFinalElse)S=v.content}}Y=Y.substring(0,j)+S+Y.substring(L+`@${W}`.length),z=!0}}return Y}function i3($,Z,Y){let J=$;function X(Q,G,K,W,q){let z=!0;while(z){z=!1;let U=new RegExp(`@${G}\\s*\\(`),j=Q.match(U);if(!j||j.index===void 0)break;let _=j.index,B=N1(Q,_+`@${G}`.length);if(!B)break;let H=B.endPos,L=u1(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=W(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),z=!0}catch(R){let N=R instanceof Error?R.message:String(R),M=$0(q,`Error processing @${G} directive: ${N}`,s.EVALUATION_ERROR);Q=Q.substring(0,_)+M+Q.substring(L+`@${K}`.length);break}}return Q}return J=X(J,"isset","endisset",(Q)=>{let G=I1(Q,Z);return G!==void 0&&G!==null},"Isset"),J=X(J,"empty","endempty",(Q)=>{let G=I1(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 n3($,Z,Y){let J=$,X="development";function Q(G,K,W,q){let z=new RegExp(`@${K}(?![a-z])`,"g"),U=new RegExp(`@${W}(?![a-z])`,"g"),j=new RegExp(`^@${K}(?![a-z])`),_=new RegExp(`^@${W}(?![a-z])`),B=G,H=!0;while(H){H=!1,z.lastIndex=0;let L=z.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){z.lastIndex=w,U.lastIndex=w;let D=z.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 @${W} \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=`@${W}`.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 p4=b(()=>{c2();U1();d$();A0()});function o2($=16){let Z=new Uint8Array($);return crypto.getRandomValues(Z),btoa(String.fromCharCode(...Z))}function l4($,Z){if(!$)return Z?.nonceGenerator?.()??o2();let Y=n2.get($);if(!Y)Y=Z?.nonceGenerator?.()??o2(),n2.set($,Y);return Y}function Oz($,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 s2($,Z){return`<meta http-equiv="Content-Security-Policy" content="${Oz($,Z).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}">`}function r2($,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?l4(Y,Z):void 0,X=s2(Z.directives,J);return $.replace(/<head([^>]*)>/,`<head$1>
9153
+ ${X}`)}function a2($,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 t2($,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?l4(Z,Q):void 0;return s2(Q.directives,G)}),X=X.replace(/@cspNonce\b/g,()=>{if(!Q?.enabled||!Q.useNonce)return"";return l4(Z,Q)}),Q?.enabled&&Q.useNonce)Z.cspNonce=l4(Z,Q);return X}var n2;var e2=b(()=>{n2=new WeakMap});import Lz from"crypto";function Vz($=Fz){let Z=Lz.randomBytes(Math.ceil($/2)).toString("hex").slice(0,$);return o3=Z,Z}function wz(){if(!o3)Vz();return o3}function Az($=$Y){let Z=wz();return`<input type="hidden" name="${$}" value="${Z}">`}function ZY($){return $.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(Z,Y,J)=>{return Az(J||$Y)})}var Fz=40,$Y="_token",o3=null;var YY=()=>{};async function JY($,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 Rz(X,Q,Z,Y,J);else X=await Nz(X,Q,Z,Y,J)}return X}async function Rz($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=`@${Q}`,W=`@end${Q}`,q=$,z=z5(`${K}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${W}`,"g"),U=[],j=z.exec(q);while(j!==null){let[_,B="",H=""]=j,L=j.index||0;try{let V=B?XY(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:$0("CustomDirective",`Error in @${Q}${B?`(${B})`:""}: ${O}`,s.EVALUATION_ERROR),startIndex:L})}j=z.exec(q)}for(let _=U.length-1;_>=0;_--){let{original:B,processed:H}=U[_];q=q.replace(B,H)}return q}async function Nz($,Z,Y,J,X){let{name:Q,handler:G}=Z,K=$,W=z5(`@${Q}\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\)`,"g"),q=[],z=W.exec(K);while(z!==null){let[_,B=""]=z,H=z.index||0;try{let L=XY(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:$0("CustomDirective",`Error in @${Q}(${B}): ${V}`,s.EVALUATION_ERROR),startIndex:H})}z=W.exec(K)}let U=z5(`@${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:$0("CustomDirective",`Error in @${Q}: ${L}`,s.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 XY($){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 QY=b(()=>{U1();U5()});function r1($,Z){if(typeof $!=="string"||$.length===0)throw Error(`@appearanceBootstrap ${Z} must be a non-empty string`)}function Tz($){if(!$||typeof $!=="object"||Array.isArray($))throw Error("@appearanceBootstrap expects an options object");let Z=$,Y=Z.appearance,J=Z.colorMode;if(r1(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(r1(Y.key,"appearance.key"),r1(Y.attribute,"appearance.attribute"),r1(Y.default,"appearance.default"),r1(J.key,"colorMode.key"),r1(J.attribute,"colorMode.attribute"),r1(J.default,"colorMode.default"),!KY.test(Y.key)||!KY.test(J.key))throw Error("@appearanceBootstrap preference keys must be JavaScript property names");if(!GY.test(Y.attribute)||!GY.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(!Mz.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 Iz($){return JSON.stringify($).replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/&/g,"\\u0026").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}function Dz($){return`<script data-stx-scoped data-stx-appearance-bootstrap>(function(){"use strict";const config=${Iz($)};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 Ez($,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 WY($,Z){let Y=$,J=/@appearanceBootstrap\s*\(/g,X;while((X=J.exec(Y))!==null){let Q=X.index+X[0].length-1,G=Ez(Y,Q);if(G===-1)throw Error("@appearanceBootstrap has an unclosed options object");let K=Y.slice(Q+1,G).trim(),W=Z0(`(${K})`,Z),q=Dz(Tz(W));Y=Y.slice(0,X.index)+q+Y.slice(G+1),J.lastIndex=X.index+q.length}return Y}var GY,KY,Mz;var qY=b(()=>{A0();GY=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,KY=/^[A-Za-z_$][\w$]*$/,Mz=new Set(["light","dark","system"])});import kz from"crypto";function I0($){return String($??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function c4($,Z,Y,J){let X=$||Z;return Y?`${X} ${J}`:X}function bz(){return kz.randomUUID()}function i4($,Z){let Y=$;return Y=Y.replace(/@csrf/g,()=>{if(!Z.csrf||typeof Z.csrf!=="object"){let J=bz();Z.csrf={token:J}}if(Z.csrf.field)return Z.csrf.field;if(Z.csrf.token)return`<input type="hidden" name="_token" value="${I0(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="${I0(Q)}">`;return J}),Y}function jY($,Z,Y=UY){let J=$;return J=J.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(X,Q,G,K,W,q="")=>{let z=Q||G||"POST",U=K||W||"",j=D1(q),_=z.toUpperCase(),B=["GET","POST"].includes(_)?_:"POST",H=`<form method="${I0(B)}" action="${I0(U)}"${j?` ${j}`:""}>`;if(H+=`
9154
+ ${i4("@csrf",Z)}`,!["GET","POST"].includes(_))H+=`
9155
+ ${i4(`@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,W,q="")=>{let z=Q||G||"",U=K||W||"",j=D1(q),_=U$(z,Z),B=_!==void 0&&_!==null?_:U||"",H=j.match(/type=['"]([^'"]+)['"]/i),L=H?H[1]:"text",V=j$(z,Z),O=j.match(/class=['"]([^'"]+)['"]/i),F=c4(O?O[1]:"",Y.input,V,Y.inputError),w=j.replace(/class=['"][^'"]+['"]/i,"");return w=w.replace(/type=['"][^'"]+['"]/i,""),`<input type="${I0(L)}" name="${I0(z)}" value="${I0(B)}" class="${F}"${w?` ${w}`:""}>`}),J=J.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(X,Q,G="",K="")=>{let W=D1(G),q=U$(Q,Z)||K.trim(),z=j$(Q,Z),U=W.match(/class=['"]([^'"]+)['"]/i),j=c4(U?U[1]:"",Y.input,z,Y.inputError),_=W.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${I0(Q)}" class="${j}"${_?` ${_}`:""}>${I0(q)}</textarea>`}),J=J.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(X,Q,G="",K)=>{let W=D1(G),q=U$(Q,Z),z=j$(Q,Z),U=W.match(/class=['"]([^'"]+)['"]/i),j=c4(U?U[1]:"",Y.input,z,Y.inputError),_=W.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="${I0(Q)}" class="${j}"${_?` ${_}`:""}>${B}</select>`}),J=J.replace(/@checkbox\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G="1",K="")=>{let W=D1(K),q=U$(Q,Z),z=q!==void 0&&(Array.isArray(q)?q.some((B)=>String(B)===G):q===!0||String(q)===G),U=W.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,_=W.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${I0(Q)}" value="${I0(G)}" class="${j}"${z?" checked":""}${_?` ${_}`:""}>`}),J=J.replace(/@radio\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G,K="")=>{let W=D1(K),q=U$(Q,Z),z=q!==void 0&&q===G,U=W.match(/class=['"]([^'"]+)['"]/i),j=U?U[1]:Y.checkInput,_=W.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${I0(Q)}" value="${I0(G)}" class="${j}"${z?" checked":""}${_?` ${_}`:""}>`}),J=J.replace(/@file\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(X,Q,G="")=>{let K=D1(G),W=K.match(/accept=['"]([^'"]+)['"]/i),q=W?W[1]:"",z=K.includes("multiple"),U=j$(Q,Z),j=K.match(/class=['"]([^'"]+)['"]/i),_=c4(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="${I0(Q)}"`,`class="${_}"`];if(q)H.push(`accept="${I0(q)}"`);if(z)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 W=D1(G),q=W.match(/class=['"]([^'"]+)['"]/i),z=q?q[1]:Y.label,U=W.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${I0(Q)}" class="${z}"${U?` ${U}`:""}>${K}</label>`}),J}function _Y($,Z,Y=UY){return $.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(J,X,Q)=>{try{if(j$(X,Z))return Q.replace(/\{\{([^}]+)\}\}/g,(G,K)=>{try{if(K.trim()==="$message"||K.trim()==="message")return zY(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 zY(X,Z)}let W=K.trim();if(W0(W)){let q=Z0(W,Z);return q!==void 0?String(q):W}return W}catch{return K}});return""}catch(G){return console.error("Error processing @error directive:",G),J}})}function j$($,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 zY($,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 U$($,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 D1($){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 UY;var BY=b(()=>{A0();UY={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"}});import a3 from"path";async function Sz(){if(_$!==void 0)return _$;try{_$=(await import("@stacksjs/ts-i18n")).loadLocale??null}catch{_$=null}return _$}function yz($,Z=0){if(Z<=0)return!1;return Date.now()-$.loadedAt>Z}async function Pz($,Z){if({...$6,...Z.i18n}.cache&&t3[$]){let X=t3[$],Q=Z.i18n?.cacheMaxAge??0;if(!yz(X,Q))return X.translations}if(B$[$]?.state==="loading")return B$[$].promise;s3[$]="loading";let J=e3($,Z).then((X)=>{return s3[$]="loaded",delete B$[$],X}).catch((X)=>{throw s3[$]="error",B$[$]={promise:J,state:"error",error:X instanceof Error?X:Error(String(X))},X});return B$[$]={promise:J,state:"loading"},J}async function e3($,Z){let Y={...$6,...Z.i18n},J=a3.isAbsolute(Y.translationsDir)?Y.translationsDir:a3.resolve(Z.root||process.cwd(),Y.translationsDir);try{let X=await Sz(),Q=X?await X($,{translationsDir:J,defaultLocale:Y.defaultLocale,sources:gz(Y.format)}):await Cz($,Y,J);if(Q===void 0){if($!==Y.defaultLocale)return e3(Y.defaultLocale,Z);return{}}let G=Q;if(Y.cache)t3[$]={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 e3(Y.defaultLocale,Z);return{}}}async function Cz($,Z,Y){let J=a3.join(Y,`${$}${vz(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 xz(Q);if(Z.format==="json")return JSON.parse(Q);throw X}catch{return}}}function vz($){switch($){case"yaml":return".yaml";case"yml":return".yml";case"js":return".js";case"ts":return".ts";case"json":default:return".json"}}function xz($){let Z={},Y=$.split(`
9156
+ `),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,W=Q.match(/^(\s*)(\S[^:]*):\s*(.*)$/);if(W){let[,,q,z]=W,U=q.trim(),j=z.trim();if(j==="")K[U]={},J.push({obj:K[U],indent:G});else K[U]=fz(j)}}return Z}function fz($){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 gz($){switch($){case"yaml":case"yml":return["yaml"];case"js":case"ts":return["ts"];case"json":default:return["json"]}}async function hz($,Z){return Pz($,Z)}function dz($,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 uz($,Z={}){return LY($,Z)}function LY($,Z){let Y="",J=0;while(J<$.length)if($[J]==="{"){let X=mz($,J);if(X===-1){Y+=$[J],J++;continue}let Q=$.slice(J+1,X);Y+=pz(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 mz($,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 pz($,Z){let Y=lz($);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 cz(X,Y.slice(2).join(","),Z);case"select":return nz(X,Y.slice(2).join(","));case"selectordinal":return oz(X,Y.slice(2).join(","));case"number":return rz(X,Y[2]?.trim());case"date":return az(X,Y[2]?.trim());case"time":return tz(X,Y[2]?.trim());default:return X!==void 0?String(X):`{${$}}`}}function lz($){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 cz($,Z,Y){let J=Number($)||0,X=Z6(Z),Q=`=${J}`;if(X[Q])return r3(X[Q],J,Y);let G=iz(J);if(X[G])return r3(X[G],J,Y);if(X.other)return r3(X.other,J,Y);return String(J)}function r3($,Z,Y){let J=$.replace(/#/g,String(Z));return LY(J,Y)}function iz($){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 nz($,Z){let Y=String($||""),J=Z6(Z);if(J[Y])return J[Y];return J.other||String($)}function oz($,Z){let Y=Number($)||0,J=Z6(Z),X=sz(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 sz($){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 Z6($){let Z={},Y=/(\w+|=\d+)\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g,J=Y.exec($);while(J!==null)Z[J[1]]=J[2],J=Y.exec($);return Z}function rz($,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 az($,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 tz($,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 ez($){return/\{[^}]+,\s*(?:plural|select|selectordinal|number|date|time)\s*,/.test($)}function HY($,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(ez(G))return uz(G,J);if(G.includes("|")&&"count"in J){let K=Number(J.count),W=G.split("|");G=dz(W,K)}for(let[K,W]of Object.entries(J)){let q=K.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");G=G.replace(new RegExp(`:${q}`,"g"),String(W))}return G}async function FY($,Z,Y,J){let X=$,Q=/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)([\s\S]*?)@endtranslate/g,G={...$6,...J.i18n},K=await hz(G.locale,J);Z.__translations=K,Z.__locale=G.locale,Z.__i18nConfig=G,X=await OY(X,Q,async(z,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 T0(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 HY(U,K,G.fallbackToKey,H)||_.trim()}catch(H){if(J.debug)console.error("Error processing @translate directive:",H);return $0("Translate",`Error in @translate('${U}'): ${H instanceof Error?H.message:String(H)}`,s.EVALUATION_ERROR)}});let W=/@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 z=[...X.matchAll(W)];console.warn(`Found ${z.length} @translate matches`),z.forEach((U,j)=>console.warn(`Match ${j}: ${U[0]}, Key: ${U[1]}, Params: ${U[2]||"none"}`))}return X=await OY(X,/@translate\(\s*['"]([^'"]+)['"]\s*(?:,\s*(\{[^}]*\})\s*)?\)/g,async(z,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 T0(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 HY(U,K,G.fallbackToKey,B)}catch(B){if(J.debug)console.error("Error processing @translate directive:",B);return $0("Translate",`Error in @translate('${U}'): ${B instanceof Error?B.message:String(B)}`,s.EVALUATION_ERROR)}}),X}async function OY($,Z,Y){let J=[];return $.replace(Z,(Q,...G)=>{let K=Y(Q,...G).then((W)=>({match:Q,replacement:W}));return J.push(K),Q}),(await Promise.all(J)).reduce((Q,{match:G,replacement:K})=>Q.replace(G,K),$)}var _$,$6,t3,B$,s3;var VY=b(()=>{U1();A0();$6={defaultLocale:"en",locale:"en",translationsDir:"translations",format:"yaml",fallbackToKey:!0,cache:!0},t3={},B$={},s3={}});var X6={};a(X6,{streamingSuspenseDirective:()=>RY,streamToResponse:()=>UU,streamTemplateSimple:()=>KU,streamTemplate:()=>ZU,renderStreamingPage:()=>JU,registerStreamingDirectives:()=>qU,processStreamDirectives:()=>QU,processSectionDirectives:()=>zU,islandDirective:()=>NY,generateHydrationRuntime:()=>jU,extractStreamBoundaries:()=>GU,createStreamRenderer:()=>WU,buildSuspenseResolveScript:()=>J6,SUSPENSE_RESOLVER_RUNTIME:()=>AY});import n4 from"path";function $U($){let Z=[],Y=0,J;wY.lastIndex=0;while((J=wY.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 ZU($,Z={},Y={}){let J={...n1,...Y,streaming:{...Y6,...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),W=K?K[1]:"",q=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),z={...Z,__filename:$,__dirname:n4.dirname($)};if(W.trim())await d1(W,z,$);let U=$U(q),j=new Set;if(!U.some((B)=>B.type==="suspense")){let B=J.streaming?.strategy||"auto",H=new RegExp(a1.source,"g");if(!(B!=="manual"&&H.test(q))){let V=await L0(q,z,$,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(a1.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,z,$,J,j);Q.enqueue(M),await new Promise((T)=>setTimeout(T,0))}}let R=await L0(A.content,z,$,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,z,$,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,z,$,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;">
9157
9157
  <template data-suspense-fallback>Loading...</template>
9158
- </div>`),B.set(L.name,O0(L.content,q,$,J,j))}Q.enqueue(`
9158
+ </div>`),B.set(L.name,L0(L.content,z,$,J,j))}Q.enqueue(`
9159
9159
  <script>
9160
9160
  (function() {
9161
9161
  window.__stxSuspense = window.__stxSuspense || {
@@ -9171,13 +9171,13 @@ ${X}`)}function i2($,Z){let Y=$;return Y=Y.replace(/<script(?![^>]*\ssrc=)([^>]*
9171
9171
  }
9172
9172
  };
9173
9173
  })();
9174
- </script>`);let H=Array.from(B.entries()).map(async([L,V])=>{Q.enqueue(await $6(L,V))});await Promise.all(H)}Q.close()}catch(G){Q.error(G)}}})}async function $6($,Z){try{let J=(await Z).replace(/`/g,"\\`").replace(/<\/script>/gi,"<\\/script>");return`
9174
+ </script>`);let H=Array.from(B.entries()).map(async([L,V])=>{Q.enqueue(await J6(L,V))});await Promise.all(H)}Q.close()}catch(G){Q.error(G)}}})}async function J6($,Z){try{let J=(await Z).replace(/`/g,"\\`").replace(/<\/script>/gi,"<\\/script>");return`
9175
9175
  <script>
9176
9176
  window.__stxSuspense.resolve('${$}', \`${J}\`);
9177
9177
  </script>`}catch(Y){let J=Y instanceof Error?Y.message:String(Y);return`
9178
9178
  <script>
9179
- window.__stxSuspense.resolve('${$}', '<div class="stx-error">Error loading content: ${r0(J)}</div>');
9180
- </script>`}}function rq($,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 aq($,Z=[],Y={}){let J=Y.timeoutMs??0;return new ReadableStream({async start(X){try{if(X.enqueue($),Z.length>0)X.enqueue(OY),await Promise.all(Z.map(async(Q)=>{let G=rq(Q.render(),J,Q.id);X.enqueue(await $6(Q.id,G))}));X.close()}catch(Q){X.error(Q)}}})}function eq($,Z){return $.replace(tq,(Y,J,X)=>{let Q=J.trim(),G=X.split(/@fallback/i),K=G[0].trim(),W=G.length>1?G.slice(1).join("@fallback").trim():"";if(!Z.__streamTemplates)Z.__streamTemplates={};return Z.__streamTemplates[Q]=K,`<div data-suspense="${Q}">${W}</div>`})}function $U($){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 ZU($,Z={},Y={}){let J={...c1,...Y,streaming:{...e3,...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),W=K?K[1]:"",z=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),q={...Z,__filename:$,__dirname:l4.dirname($)};if(W.trim())await g1(W,q,$);let U=new Set,j=J.streaming?.strategy||"auto",_=new RegExp(s1.source,"g");if(!(j!=="manual"&&_.test(z))){let H=await O0(z,q,$,J,U);for(let L=0;L<H.length;L+=X)Q.enqueue(H.slice(L,L+X))}else{let H=[],L=new RegExp(s1.source,"g"),V;while((V=L.exec(z))!==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=z.slice(O,F.start);if(A.trim()){let R=await O0(A,q,$,J,U);Q.enqueue(R)}}let w=await O0(F.content,q,$,J,U);Q.enqueue(w),O=F.end}if(O<z.length){let F=z.slice(O);if(F.trim()){let w=await O0(F,q,$,J,U);Q.enqueue(w)}}}Q.close()}catch(G){Q.error(G)}}})}async function YU($,Z={}){let Y={...c1,...Z,streaming:{...e3,...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,W={},z;s1.lastIndex=0;while((z=s1.exec(G))!==null){let j=z[1],_=z[2];W[j]=_}let q=G.replace(s1,"");return{renderShell:async(j={})=>{let _={...j,__filename:$,__dirname:l4.dirname($)};return await g1(Q,_,$),O0(q,_,$,Y,new Set)},renderSection:async(j,_={})=>{try{if(!W[j])return`<div class="error-message">Section "${r0(j)}" not found in template "${r0($)}"</div>`;let B={..._,__filename:$,__dirname:l4.dirname($)};await g1(Q,B,$);let H=new Set;return await O0(W[j],B,$,Y,H)}catch(B){let H=B instanceof Error?B.message:String(B);return q0("Expression",H,$,W[j]||"",0,W[j]||"")}},getSections:()=>{return Object.keys(W)},getTemplate:()=>{return K}}}function JU($={}){let Z=[];if($.streaming?.enabled)Z.push(LY);if($.hydration?.enabled)Z.push(FY);return Z}async function XU($,Z,Y,J={}){return $}function QU($,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 GU($={mode:"full"}){let{mode:Z,components:Y={},dynamicImports:J=!0}=$,X=Object.entries(Y).map(([Q,G])=>`'${Q}': ${J?`() => import('${G}')`:`require('${G}')`}`).join(`,
9179
+ window.__stxSuspense.resolve('${$}', '<div class="stx-error">Error loading content: ${a0(J)}</div>');
9180
+ </script>`}}function YU($,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 JU($,Z=[],Y={}){let J=Y.timeoutMs??0;return new ReadableStream({async start(X){try{if(X.enqueue($),Z.length>0)X.enqueue(AY),await Promise.all(Z.map(async(Q)=>{let G=YU(Q.render(),J,Q.id);X.enqueue(await J6(Q.id,G))}));X.close()}catch(Q){X.error(Q)}}})}function QU($,Z){return $.replace(XU,(Y,J,X)=>{let Q=J.trim(),G=X.split(/@fallback/i),K=G[0].trim(),W=G.length>1?G.slice(1).join("@fallback").trim():"";if(!Z.__streamTemplates)Z.__streamTemplates={};return Z.__streamTemplates[Q]=K,`<div data-suspense="${Q}">${W}</div>`})}function GU($){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 KU($,Z={},Y={}){let J={...n1,...Y,streaming:{...Y6,...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),W=K?K[1]:"",q=G.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,""),z={...Z,__filename:$,__dirname:n4.dirname($)};if(W.trim())await d1(W,z,$);let U=new Set,j=J.streaming?.strategy||"auto",_=new RegExp(a1.source,"g");if(!(j!=="manual"&&_.test(q))){let H=await L0(q,z,$,J,U);for(let L=0;L<H.length;L+=X)Q.enqueue(H.slice(L,L+X))}else{let H=[],L=new RegExp(a1.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,z,$,J,U);Q.enqueue(R)}}let w=await L0(F.content,z,$,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,z,$,J,U);Q.enqueue(w)}}}Q.close()}catch(G){Q.error(G)}}})}async function WU($,Z={}){let Y={...n1,...Z,streaming:{...Y6,...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,W={},q;a1.lastIndex=0;while((q=a1.exec(G))!==null){let j=q[1],_=q[2];W[j]=_}let z=G.replace(a1,"");return{renderShell:async(j={})=>{let _={...j,__filename:$,__dirname:n4.dirname($)};return await d1(Q,_,$),L0(z,_,$,Y,new Set)},renderSection:async(j,_={})=>{try{if(!W[j])return`<div class="error-message">Section "${a0(j)}" not found in template "${a0($)}"</div>`;let B={..._,__filename:$,__dirname:n4.dirname($)};await d1(Q,B,$);let H=new Set;return await L0(W[j],B,$,Y,H)}catch(B){let H=B instanceof Error?B.message:String(B);return U0("Expression",H,$,W[j]||"",0,W[j]||"")}},getSections:()=>{return Object.keys(W)},getTemplate:()=>{return K}}}function qU($={}){let Z=[];if($.streaming?.enabled)Z.push(RY);if($.hydration?.enabled)Z.push(NY);return Z}async function zU($,Z,Y,J={}){return $}function UU($,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 jU($={mode:"full"}){let{mode:Z,components:Y={},dynamicImports:J=!0}=$,X=Object.entries(Y).map(([Q,G])=>`'${Q}': ${J?`() => import('${G}')`:`require('${G}')`}`).join(`,
9181
9181
  `);if(Z==="loader")return`
9182
9182
  (function() {
9183
9183
  window.__stx = window.__stx || {};
@@ -9319,7 +9319,7 @@ else {
9319
9319
  else {
9320
9320
  stx.hydrate();
9321
9321
  }
9322
- })();`}var e3,s1,HY,OY=`
9322
+ })();`}var Y6,a1,wY,AY=`
9323
9323
  <script>
9324
9324
  (function(){
9325
9325
  window.__stxSuspense = window.__stxSuspense || {
@@ -9339,25 +9339,25 @@ else {
9339
9339
  }
9340
9340
  };
9341
9341
  })();
9342
- </script>`,tq,LY,FY;var Y6=b(()=>{i1();J1();Y4();N0();e3={enabled:!0,bufferSize:16384,strategy:"auto",timeout:30000},s1=/<!-- @section:([\w-]+) -->([\s\S]*?)<!-- @endsection:\1 -->/g,HY=/<!-- @suspense:([\w-]+) -->([\s\S]*?)<!-- @endsuspense:\1 -->/g;tq=/@stream\s*\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)@endstream/gi;LY={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} -->`}},FY={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),W=K?K[1].trim():"",z=K?$.replace(K[0],""):$;return`<div data-island="${X}" data-island-id="${G}" data-priority="${Q}">
9343
- ${z}
9342
+ </script>`,XU,RY,NY;var Q6=b(()=>{o1();X1();Q4();M0();Y6={enabled:!0,bufferSize:16384,strategy:"auto",timeout:30000},a1=/<!-- @section:([\w-]+) -->([\s\S]*?)<!-- @endsection:\1 -->/g,wY=/<!-- @suspense:([\w-]+) -->([\s\S]*?)<!-- @endsuspense:\1 -->/g;XU=/@stream\s*\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)@endstream/gi;RY={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} -->`}},NY={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),W=K?K[1].trim():"",q=K?$.replace(K[0],""):$;return`<div data-island="${X}" data-island-id="${G}" data-priority="${Q}">
9343
+ ${q}
9344
9344
  <script type="application/json" data-island-props="${G}">
9345
9345
  ${W?`{${W}}`:"{}"}
9346
9346
  </script>
9347
- </div>`}}});var AY={};a(AY,{warnUnbalancedTags:()=>J6,findUnbalancedTags:()=>wY});function F5($){return $.replace(/[^\n]/g," ")}function wY($){let Z=$.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,F5).replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,F5).replace(/<!--[\s\S]*?-->/g,F5).replace(/\{\{\{[\s\S]*?\}\}\}/g,F5).replace(/\{\{[\s\S]*?\}\}/g,F5).replace(/\{!![\s\S]*?!!\}/g,F5),Y=new Map,J=new Map,X=/<(\/?)([A-Za-z][\w-]*)\b(?:[^>"']|"[^"]*"|'[^']*')*?(\/?)>/g,Q;while((Q=X.exec(Z))!==null){let K=Q[1]==="/",W=Q[2],z=Q[3]==="/";if(KU.has(W.toLowerCase()))continue;if(z)continue;if(K)J.set(W,(J.get(W)??0)+1);else{let q=Y.get(W);if(q)q.count++;else{let U=Z.slice(0,Q.index).split(`
9348
- `).length;Y.set(W,{count:1,firstLine:U})}}}let G=[];for(let K of new Set([...Y.keys(),...J.keys()])){if(WU.has(K.toLowerCase()))continue;let W=Y.get(K)?.count??0,z=J.get(K)??0;if(W!==z)G.push({tag:K,opened:W,closed:z,firstOpenLine:Y.get(K)?.firstLine??0})}return G}function J6($,Z){let Y;try{Y=wY($)}catch{return}if(Y.length===0)return;let J=`${Z}:${$.length}`;if(VY.has(J))return;VY.add(J);let X=Z?Z.split(/[/\\]/).pop()||Z:"template";for(let{tag:Q,opened:G,closed:K,firstOpenLine:W}of Y)if(G>K){let z=W?` (first opened at line ${W})`:"";console.warn(`[stx] ${X}: <${Q}> ${G} opened, ${K} closed \u2014 an unclosed <${Q}>${z} may swallow the content that follows it.`)}else console.warn(`[stx] ${X}: <${Q}> ${G} opened, ${K} closed \u2014 ${K-G} stray </${Q}>.`)}var KU,WU,VY;var X6=b(()=>{KU=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),WU=new Set(["html","head","body","p","li","dt","dd","rt","rp","option","optgroup","thead","tbody","tfoot","tr","td","th","colgroup","caption"]);VY=new Set});import i0 from"path";import Q6 from"fs";function RY($){return $.split("-").map((Z)=>Z.charAt(0).toUpperCase()+Z.slice(1)).join("")}function NY($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}class MY{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(),RY(X),NY(X)];for(let B of _)if(Q.has(B))return Q.get(B)}let G=[...new Set([`${X}.stx`,`${RY(X)}.stx`,`${NY(X)}.stx`])];if(X.startsWith("./")||X.startsWith("../")){let _=i0.resolve(i0.dirname(Z),`${X}.stx`);if(await c(_))return _;return null}let K=[],W=Y.componentsDir||"",z=J?.__originalFilePath;if(z)K.push(i0.join(i0.dirname(z),"components"));if(W)K.push(W);let q=i0.join(i0.dirname(Z),"components");if(!K.includes(q))K.push(q);let U=process.cwd(),j=[i0.resolve(U,"src/components"),i0.resolve(U,"components"),i0.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=i0.join(_,B);if(await c(H))return H}try{if(!Q6.statSync(_,{throwIfNoEntry:!1})?.isDirectory())continue;let H=Q6.readdirSync(_,{withFileTypes:!0});for(let L of H)if(L.isDirectory()){let V=i0.join(_,L.name);for(let O of G){let F=i0.join(V,O);if(await c(F))return F}}}catch{}}return null}}var f0;var G6=b(()=>{N0();f0=new MY});function y0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function V5($,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 c4=()=>{};function j$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function zU($){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 K6;var W6=b(()=>{c4();K6={name:"StxLink",aliases:["stx-link"],render($,Z,Y){let J=zU($),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,W=[];if(J.reactive)W.push(`:href="${j$(J.value)}"`);else W.push(`href="${j$(J.value)}"`);if(X)W.push(`class="${j$(X)}"`);if(W.push("data-stx-link"),W.push(`data-stx-active-class="${j$(Q)}"`),W.push(`data-stx-exact-active-class="${j$(G)}"`),K)W.push("data-stx-prefetch");let z=new Set(["to","class","className","activeClass","exactActiveClass","prefetch"]);return W.push(...V5($,z)),`<a ${W.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 q6($,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 TY($){if($.includes("(")||$.includes(","))return $;let Z=$.trim().split(/\s+/),Y=[];for(let J of Z)if(J.includes(":")){let[X,Q]=J.split(":"),G=qU[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 U6($,Z,Y,J){return Z.map((X)=>`${_$($,X,void 0,Y,J)} ${X}w`).join(", ")}function UU($,Z,Y,J,X){return Z.map((Q)=>{let G=Y?Y*Q:void 0;return`${_$($,G,void 0,J,X)} ${Q}x`}).join(", ")}function _$($,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 jU($,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 qU,z6,j6;var _6=b(()=>{c4();qU={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},z6=[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"),W=P0($,"srcset"),z=P0($,"densities"),q=P0($,"format"),U=P0($,"placeholder"),j=P0($,"placeholderColor")||"#e5e7eb",_=P0($,"provider"),B=P0($,"class")||P0($,"className")||"",H=P0($,"style")||"",L=P0($,"quality"),V=q6($,"lazy",!0),O=q6($,"preload",!1),F=q6($,"picture",!1)||!!q,w=Q?Number.parseInt(Q):void 0,A=G?Number.parseInt(G):void 0,R=W||"",N="";if(!R&&K)R=U6(J,z6,_,q),N=TY(K);else if(!R&&z){let S=z.split(/\s+/).map((k)=>Number.parseFloat(k.replace("x","")));R=UU(J,S,w,_,q)}else if(K)N=TY(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=jU(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=_$(J,w,A,_,q),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(...V5($,E));let D=`<img ${I.join(" ")} />`,y="";if(O){let k=q==="webp"?"image/webp":q==="avif"?"image/avif":"";y=`<link rel="preload" as="image" href="${E0(T)}"${k?` type="${k}"`:""}${R?` imagesrcset="${E0(R)}"`:""}${N?` imagesizes="${E0(N)}"`:""} />
9349
- `}if(F){let S=[];if(q==="avif"||q==="auto"){let k=_$(J,w,A,_,"avif"),v=R?U6(J,z6,_,"avif"):`${k}`;S.push(`<source type="image/avif" srcset="${E0(v)}"${N?` sizes="${E0(N)}"`:""} />`)}if(q==="webp"||q==="auto"){let k=_$(J,w,A,_,"webp"),v=R?U6(J,z6,_,"webp"):`${k}`;S.push(`<source type="image/webp" srcset="${E0(v)}"${N?` sizes="${E0(N)}"`:""} />`)}return`${y}<picture>
9347
+ </div>`}}});var IY={};a(IY,{warnUnbalancedTags:()=>G6,findUnbalancedTags:()=>TY});function w5($){return $.replace(/[^\n]/g," ")}function TY($){let Z=$.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,w5).replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,w5).replace(/<!--[\s\S]*?-->/g,w5).replace(/\{\{\{[\s\S]*?\}\}\}/g,w5).replace(/\{\{[\s\S]*?\}\}/g,w5).replace(/\{!![\s\S]*?!!\}/g,w5),Y=new Map,J=new Map,X=/<(\/?)([A-Za-z][\w-]*)\b(?:[^>"']|"[^"]*"|'[^']*')*?(\/?)>/g,Q;while((Q=X.exec(Z))!==null){let K=Q[1]==="/",W=Q[2],q=Q[3]==="/";if(_U.has(W.toLowerCase()))continue;if(q)continue;if(K)J.set(W,(J.get(W)??0)+1);else{let z=Y.get(W);if(z)z.count++;else{let U=Z.slice(0,Q.index).split(`
9348
+ `).length;Y.set(W,{count:1,firstLine:U})}}}let G=[];for(let K of new Set([...Y.keys(),...J.keys()])){if(BU.has(K.toLowerCase()))continue;let W=Y.get(K)?.count??0,q=J.get(K)??0;if(W!==q)G.push({tag:K,opened:W,closed:q,firstOpenLine:Y.get(K)?.firstLine??0})}return G}function G6($,Z){let Y;try{Y=TY($)}catch{return}if(Y.length===0)return;let J=`${Z}:${$.length}`;if(MY.has(J))return;MY.add(J);let X=Z?Z.split(/[/\\]/).pop()||Z:"template";for(let{tag:Q,opened:G,closed:K,firstOpenLine:W}of Y)if(G>K){let q=W?` (first opened at line ${W})`:"";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 _U,BU,MY;var K6=b(()=>{_U=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),BU=new Set(["html","head","body","p","li","dt","dd","rt","rp","option","optgroup","thead","tbody","tfoot","tr","td","th","colgroup","caption"]);MY=new Set});import n0 from"path";import W6 from"fs";function DY($){return $.split("-").map((Z)=>Z.charAt(0).toUpperCase()+Z.slice(1)).join("")}function EY($){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 _=[X,X.toLowerCase(),DY(X),EY(X)];for(let B of _)if(Q.has(B))return Q.get(B)}let G=[...new Set([`${X}.stx`,`${DY(X)}.stx`,`${EY(X)}.stx`])];if(X.startsWith("./")||X.startsWith("../")){let _=n0.resolve(n0.dirname(Z),`${X}.stx`);if(await c(_))return _;return null}let K=[],W=Y.componentsDir||"",q=J?.__originalFilePath;if(q)K.push(n0.join(n0.dirname(q),"components"));if(W)K.push(W);let z=n0.join(n0.dirname(Z),"components");if(!K.includes(z))K.push(z);let U=process.cwd(),j=[n0.resolve(U,"src/components"),n0.resolve(U,"components"),n0.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=n0.join(_,B);if(await c(H))return H}try{if(!W6.statSync(_,{throwIfNoEntry:!1})?.isDirectory())continue;let H=W6.readdirSync(_,{withFileTypes:!0});for(let L of H)if(L.isDirectory()){let V=n0.join(_,L.name);for(let O of G){let F=n0.join(V,O);if(await c(F))return F}}}catch{}}return null}}var g0;var q6=b(()=>{M0();g0=new kY});function P0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function A5($,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(P0(Q));continue}Y.push(`${P0(Q)}="${P0(X)}"`)}return Y}var o4=()=>{};function H$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function HU($){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 z6;var U6=b(()=>{o4();z6={name:"StxLink",aliases:["stx-link"],render($,Z,Y){let J=HU($),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,W=[];if(J.reactive)W.push(`:href="${H$(J.value)}"`);else W.push(`href="${H$(J.value)}"`);if(X)W.push(`class="${H$(X)}"`);if(W.push("data-stx-link"),W.push(`data-stx-active-class="${H$(Q)}"`),W.push(`data-stx-exact-active-class="${H$(G)}"`),K)W.push("data-stx-prefetch");let q=new Set(["to","class","className","activeClass","exactActiveClass","prefetch"]);return W.push(...A5($,q)),`<a ${W.join(" ")}>${Z}</a>`}}});function k0($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function C0($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function _6($,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 bY($){if($.includes("(")||$.includes(","))return $;let Z=$.trim().split(/\s+/),Y=[];for(let J of Z)if(J.includes(":")){let[X,Q]=J.split(":"),G=OU[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 B6($,Z,Y,J){return Z.map((X)=>`${O$($,X,void 0,Y,J)} ${X}w`).join(", ")}function LU($,Z,Y,J,X){return Z.map((Q)=>{let G=Y?Y*Q:void 0;return`${O$($,G,void 0,J,X)} ${Q}x`}).join(", ")}function O$($,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 FU($,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 OU,j6,H6;var O6=b(()=>{o4();OU={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},j6=[320,640,768,1024,1280,1536,1920];H6={name:"StxImage",aliases:["stx-image","stx-img"],render($,Z,Y){let J=C0($,"src")||"",X=C0($,"alt")||"",Q=C0($,"width"),G=C0($,"height"),K=C0($,"sizes"),W=C0($,"srcset"),q=C0($,"densities"),z=C0($,"format"),U=C0($,"placeholder"),j=C0($,"placeholderColor")||"#e5e7eb",_=C0($,"provider"),B=C0($,"class")||C0($,"className")||"",H=C0($,"style")||"",L=C0($,"quality"),V=_6($,"lazy",!0),O=_6($,"preload",!1),F=_6($,"picture",!1)||!!z,w=Q?Number.parseInt(Q):void 0,A=G?Number.parseInt(G):void 0,R=W||"",N="";if(!R&&K)R=B6(J,j6,_,z),N=bY(K);else if(!R&&q){let S=q.split(/\s+/).map((k)=>Number.parseFloat(k.replace("x","")));R=LU(J,S,w,_,z)}else if(K)N=bY(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=FU(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(${k0(U)})`),M.push("background-size:cover"),M.push("background-repeat:no-repeat");let T=O$(J,w,A,_,z),I=[];if(I.push(`src="${k0(T)}"`),I.push(`alt="${k0(X)}"`),Q)I.push(`width="${k0(Q)}"`);if(G)I.push(`height="${k0(G)}"`);if(V)I.push('loading="lazy"');if(I.push('decoding="async"'),B)I.push(`class="${k0(B)}"`);if(M.length>0)I.push(`style="${k0(M.join(";"))}"`);if(R)I.push(`srcset="${k0(R)}"`);if(N)I.push(`sizes="${k0(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(...A5($,E));let D=`<img ${I.join(" ")} />`,y="";if(O){let k=z==="webp"?"image/webp":z==="avif"?"image/avif":"";y=`<link rel="preload" as="image" href="${k0(T)}"${k?` type="${k}"`:""}${R?` imagesrcset="${k0(R)}"`:""}${N?` imagesizes="${k0(N)}"`:""} />
9349
+ `}if(F){let S=[];if(z==="avif"||z==="auto"){let k=O$(J,w,A,_,"avif"),v=R?B6(J,j6,_,"avif"):`${k}`;S.push(`<source type="image/avif" srcset="${k0(v)}"${N?` sizes="${k0(N)}"`:""} />`)}if(z==="webp"||z==="auto"){let k=O$(J,w,A,_,"webp"),v=R?B6(J,j6,_,"webp"):`${k}`;S.push(`<source type="image/webp" srcset="${k0(v)}"${N?` sizes="${k0(N)}"`:""} />`)}return`${y}<picture>
9350
9350
  ${S.join(`
9351
9351
  `)}
9352
9352
  ${D}
9353
- </picture>`}return`${y}${D}`}}});function B$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function w5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var IY="/images/safe-image-default.svg",_U,B6;var H6=b(()=>{c4();_U=`<script>window.__stxSafeImageHandler||(window.__stxSafeImageHandler=function(i){if(i.__stx_fb)return;i.__stx_fb=1;var f=i.getAttribute('data-fallback')||'${IY}';var c=i.getAttribute('data-fallback-class');i.src=f;if(c)i.className=c;});</script>`,B6={name:"SafeImage",aliases:["safe-image","safe-img"],render($,Z,Y){let J=w5($,"src")||"",X=w5($,"alt")||"",Q=w5($,"fallback")||IY,G=w5($,"class")||w5($,"className")||"",K=w5($,"fallbackClassName")||"",W=[];if(W.push(`src="${B$(J)}"`),W.push(`alt="${B$(X)}"`),G)W.push(`class="${B$(G)}"`);if(W.push(`data-fallback="${B$(Q)}"`),K)W.push(`data-fallback-class="${B$(K)}"`);W.push('onerror="window.__stxSafeImageHandler(this)"');let z=new Set(["src","alt","fallback","class","className","fallbackClassName"]);W.push(...V5($,z));let q=`<img ${W.join(" ")} />`,U=Y.context;if(!U.__safeImageHandlerEmitted)return U.__safeImageHandlerEmitted=!0,`${_U}${q}`;return q}}});function O6($){return $.replace(/[;{}()]/g,"").replace(/url/gi,"")}function H$($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function i4($,Z,Y){let J=H$($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var L6;var F6=b(()=>{L6={name:"StxLoadingIndicator",aliases:["stx-loading-indicator"],render($,Z,Y){let J=O6(H$($,"color")||"#6366f1"),X=O6(H$($,"initialColor")||H$($,"initial-color")||""),Q=O6(H$($,"height")||"3px"),G=i4($,"duration",2000),K=i4($,"throttle",200),W=i4($,"zIndex",999999)||i4($,"z-index",999999),z=X?`linear-gradient(to right, ${X}, ${J})`:J;return`
9354
- <div id="stx-loading-indicator" style="position:fixed;top:0;left:0;right:0;height:${Q};background:${z};z-index:${W};transform:scaleX(0);transform-origin:left;transition:transform 0.1s ease-out,opacity 0.3s ease;opacity:0;pointer-events:none">
9353
+ </picture>`}return`${y}${D}`}}});function L$($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function R5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var SY="/images/safe-image-default.svg",VU,L6;var F6=b(()=>{o4();VU=`<script>window.__stxSafeImageHandler||(window.__stxSafeImageHandler=function(i){if(i.__stx_fb)return;i.__stx_fb=1;var f=i.getAttribute('data-fallback')||'${SY}';var c=i.getAttribute('data-fallback-class');i.src=f;if(c)i.className=c;});</script>`,L6={name:"SafeImage",aliases:["safe-image","safe-img"],render($,Z,Y){let J=R5($,"src")||"",X=R5($,"alt")||"",Q=R5($,"fallback")||SY,G=R5($,"class")||R5($,"className")||"",K=R5($,"fallbackClassName")||"",W=[];if(W.push(`src="${L$(J)}"`),W.push(`alt="${L$(X)}"`),G)W.push(`class="${L$(G)}"`);if(W.push(`data-fallback="${L$(Q)}"`),K)W.push(`data-fallback-class="${L$(K)}"`);W.push('onerror="window.__stxSafeImageHandler(this)"');let q=new Set(["src","alt","fallback","class","className","fallbackClassName"]);W.push(...A5($,q));let z=`<img ${W.join(" ")} />`,U=Y.context;if(!U.__safeImageHandlerEmitted)return U.__safeImageHandlerEmitted=!0,`${VU}${z}`;return z}}});function V6($){return $.replace(/[;{}()]/g,"").replace(/url/gi,"")}function F$($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function s4($,Z,Y){let J=F$($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var w6;var A6=b(()=>{w6={name:"StxLoadingIndicator",aliases:["stx-loading-indicator"],render($,Z,Y){let J=V6(F$($,"color")||"#6366f1"),X=V6(F$($,"initialColor")||F$($,"initial-color")||""),Q=V6(F$($,"height")||"3px"),G=s4($,"duration",2000),K=s4($,"throttle",200),W=s4($,"zIndex",999999)||s4($,"z-index",999999),q=X?`linear-gradient(to right, ${X}, ${J})`:J;return`
9354
+ <div id="stx-loading-indicator" style="position:fixed;top:0;left:0;right:0;height:${Q};background:${q};z-index:${W};transform:scaleX(0);transform-origin:left;transition:transform 0.1s ease-out,opacity 0.3s ease;opacity:0;pointer-events:none">
9355
9355
  <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>
9356
9356
  </div>
9357
9357
  <style>@keyframes stx-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}</style>
9358
9358
  <script>
9359
9359
  (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()})})();
9360
- </script>`}}});function EY($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function BU($,Z,Y){let J=EY($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var DY,V6;var w6=b(()=>{DY={"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%)"},V6={name:"StxToast",aliases:["stx-toast"],render($,Z,Y){let J=y0(EY($,"position")||"top-right"),X=BU($,"max",5),Q=DY[J]||DY["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>
9360
+ </script>`}}});function PY($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}function wU($,Z,Y){let J=PY($,Z);if(J!==void 0){let X=Number.parseInt(J,10);if(!Number.isNaN(X))return X}return Y}var yY,R6;var N6=b(()=>{yY={"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%)"},R6={name:"StxToast",aliases:["stx-toast"],render($,Z,Y){let J=P0(PY($,"position")||"top-right"),X=wU($,"max",5),Q=yY[J]||yY["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>
9361
9361
  <style>
9362
9362
  @keyframes stx-toast-in{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}
9363
9363
  @keyframes stx-toast-out{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}
@@ -9365,7 +9365,7 @@ ${D}
9365
9365
  @keyframes stx-toast-out-left{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}
9366
9366
  @keyframes stx-toast-in-center{from{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}
9367
9367
  @keyframes stx-toast-out-center{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-1rem)}}
9368
- </style>`}}});function n4($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var kY,A6;var R6=b(()=>{kY={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)"},A6={name:"StxModal",aliases:["stx-modal"],render($,Z,Y){let J=n4($,"id");if(!J)return console.warn('[stx] <StxModal> requires an "id" prop'),"<!-- StxModal: missing id prop -->";let X=y0(J),Q=n4($,"size")||"md",G=n4($,"closeOnBackdrop")!=="false",K=n4($,"closeOnEscape")!=="false",W=kY[Q]||kY.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">
9368
+ </style>`}}});function r4($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var CY,M6;var T6=b(()=>{CY={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)"},M6={name:"StxModal",aliases:["stx-modal"],render($,Z,Y){let J=r4($,"id");if(!J)return console.warn('[stx] <StxModal> requires an "id" prop'),"<!-- StxModal: missing id prop -->";let X=P0(J),Q=r4($,"size")||"md",G=r4($,"closeOnBackdrop")!=="false",K=r4($,"closeOnEscape")!=="false",W=CY[Q]||CY.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">
9369
9369
  <div class="stx-modal-panel" style="${W};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)">
9370
9370
  <div style="padding:1.5rem">${Z}</div>
9371
9371
  </div>
@@ -9374,8 +9374,8 @@ ${D}
9374
9374
  @media(prefers-color-scheme:dark){[data-stx-modal]{--stx-modal-bg:#1f2937;--stx-modal-text:#f3f4f6}}
9375
9375
  .stx-modal-backdrop[data-stx-modal-open]{display:flex!important;opacity:1}
9376
9376
  .stx-modal-backdrop[data-stx-modal-open] .stx-modal-panel{transform:scale(1) translateY(0);opacity:1}
9377
- </style>`}}});function A5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var bY,N6;var M6=b(()=>{bY={sm:"16rem",md:"24rem",lg:"32rem",xl:"40rem"},N6={name:"StxDrawer",aliases:["stx-drawer"],render($,Z,Y){let J=A5($,"id");if(!J)return console.warn('[stx] <StxDrawer> requires an "id" prop'),"<!-- StxDrawer: missing id prop -->";let X=y0(J),Q=A5($,"side")||"right",G=A5($,"size")||"md",K=A5($,"closeOnBackdrop")!=="false",W=A5($,"closeOnEscape")!=="false",z=A5($,"overlay")!=="false",q=bY[G]||bY.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="${W}" style="display:none;position:fixed;inset:0;z-index:99999;${z?"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">
9378
- <div class="stx-drawer-panel" style="position:fixed;top:0;bottom:0;${j};width:${q};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">
9377
+ </style>`}}});function N5($,Z){if($.serverDynamic[Z]!==void 0)return String($.serverDynamic[Z]);let Y=$.static[Z];if(typeof Y==="string")return Y;return}var vY,I6;var D6=b(()=>{vY={sm:"16rem",md:"24rem",lg:"32rem",xl:"40rem"},I6={name:"StxDrawer",aliases:["stx-drawer"],render($,Z,Y){let J=N5($,"id");if(!J)return console.warn('[stx] <StxDrawer> requires an "id" prop'),"<!-- StxDrawer: missing id prop -->";let X=P0(J),Q=N5($,"side")||"right",G=N5($,"size")||"md",K=N5($,"closeOnBackdrop")!=="false",W=N5($,"closeOnEscape")!=="false",q=N5($,"overlay")!=="false",z=vY[G]||vY.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="${W}" 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">
9378
+ <div class="stx-drawer-panel" style="position:fixed;top:0;bottom:0;${j};width:${z};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">
9379
9379
  <div style="padding:1.5rem">${Z}</div>
9380
9380
  </div>
9381
9381
  </div>
@@ -9383,22 +9383,22 @@ ${D}
9383
9383
  @media(prefers-color-scheme:dark){[data-stx-drawer]{--stx-drawer-bg:#1f2937;--stx-drawer-text:#f3f4f6}}
9384
9384
  .stx-drawer-backdrop[data-stx-drawer-open]{display:block!important;opacity:1}
9385
9385
  .stx-drawer-backdrop[data-stx-drawer-open] .stx-drawer-panel{transform:translateX(0)}
9386
- </style>`}}});import{existsSync as HU,readFileSync as OU}from"fs";function LU($){if(SY.has($))return;SY.add($),console.warn(`[stx] icon collection "${$}" is not installed, so its icons render as nothing. Install it with \`bun add -d @iconify-json/${$}\`.`)}function FU($){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(HU(Y))return Y;for(let Y of[`@iconify-json/${$}/icons.json`,`@iconify/json/json/${$}.json`])try{return j0.resolve(Y)}catch{}return null}function VU($){if(o4.has($))return o4.get($);let Z=FU($);if(!Z)return LU($),null;try{let Y=JSON.parse(OU(Z,"utf8"));return o4.set($,Y.icons),Y.icons}catch{return null}}function R5($,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 o4,SY,T6;var I6=b(()=>{o4=new Map,SY=new Set;T6={name:"Icon",aliases:["icon","stx-icon"],render($,Z,Y){let J=R5($,"name")??R5($,"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(R5($,"size")||"24"),K=y0(R5($,"color")||"currentColor"),W=y0(R5($,"class")||""),z=y0(R5($,"style")||""),q=o4.get(X)??VU(X);if(!q)return`<!-- Icon: collection "${X}" not loaded -->`;let U=q[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=W?` class="${W}"`:"",V=z?` style="${z}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${G}" height="${G}" viewBox="${B}" fill="none"${L}${V}>${H}</svg>`}}});function yY($,...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 PY($,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 D6;var E6=b(()=>{D6={name:"Suspense",aliases:["suspense"],render($,Z,Y){let J=PY(Z,"fallback"),X=J.rest,Q=PY(X,"error"),G=Q.rest,K=J.region??yY($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',W=Q.region??yY($,"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>${W}</div><div data-stx-suspense-content hidden>${G}</div></div>`}}});function s4($,...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 k6;var b6=b(()=>{k6={name:"TransitionGroup",aliases:["transition-group"],render($,Z,Y){let J=(s4($,"name")||"v").replace(/["'<>]/g,""),X=(s4($,"tag")||"div").replace(/[^a-z0-9-]/gi,"")||"div",Q=s4($,"class"),G=s4($,"id"),K=[`data-stx-transition-group="${J}"`,Q?`class="${Q}"`:"",G?`id="${G}"`:""].filter(Boolean).join(" ");return`<${X} ${K}>${Z}</${X}>`}}});function CY(){f0.registerBuiltin(K6),f0.registerBuiltin(j6),f0.registerBuiltin(B6),f0.registerBuiltin(L6),f0.registerBuiltin(V6),f0.registerBuiltin(A6),f0.registerBuiltin(N6),f0.registerBuiltin(T6),f0.registerBuiltin(D6),f0.registerBuiltin(k6)}var vY=b(()=>{W6();_6();H6();F6();w6();R6();M6();I6();E6();b6();G6();W6();_6();H6();F6();w6();R6();M6();I6();E6();b6()});function r4($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").toLowerCase()}function xY($,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 W=K[1];if(Y&&Y.has(W.toLowerCase())){let H=Q+1+W.length;while(H<$.length&&$[H]!==">")H++;X=H+1;continue}let z=Q+1+W.length,q=null,U=z,j=-1,_=!1;while(z<$.length){let H=$[z];if(q){if(H==="\\"&&z+1<$.length){z+=2;continue}if(H===q)q=null;z++;continue}if(H==='"'||H==="'"){q=H,z++;continue}if(H==="/"&&z+1<$.length&&$[z+1]===">"){j=z+2,_=!0;break}if(H===">"){j=z+1;break}z++}if(j===-1){X=Q+1;continue}let B=$.slice(U,_?j-2:j-1).trim();if(_)J.push({fullMatch:$.slice(Q,j),tagName:W,attributes:B,content:"",startIndex:Q,endIndex:j,isSelfClosing:!0}),X=j;else{let H=`<${W}`,L=`</${W}>`,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===`
9387
- `||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:W,attributes:B,content:w,startIndex:Q,endIndex:A,isSelfClosing:!1}),X=A}}return J}function fY($,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 gY=b(()=>{w0();N0();v1()});var cY={};a(cY,{processESImports:()=>pY,processComponents:()=>t4});import a4 from"fs";import m0 from"path";function AU($,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,(W,z)=>z.toUpperCase())},G=(K,W)=>{let z=Q(K);if(J.static[z]=W,z!==K)J.staticNames[z]=K};for(let[K,W]of Object.entries($)){let z=K.startsWith("x-")&&!X.has(K)&&!K.startsWith("x-bind:")&&!K.startsWith("x-on:")?`:${K.slice(2)}`:K;if(z.startsWith("@")){J.events[z]=W;continue}if(z.startsWith("__stx_")){let q=Q(z.slice(6));J.serverDynamic[q]=fY(W,Y);continue}if(z.startsWith(":")){let q=Q(z.slice(1)),U=W===S6?q:W;if(q==="if"||q==="for"||q==="show"){J.clientReactive[q]=U;continue}try{if(!K0(U)){if(Y.debug)console.error(`Unsafe expression in :${q} binding: ${U}`);J.clientReactive[q]=U;continue}let j=Object.keys(Z),B=W0(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[q]=U;continue}}J.serverDynamic[q]=B}catch{J.clientReactive[q]=U}continue}if(typeof W==="string"&&W.includes("{{")&&W.includes("}}")){let q=W.match(/^\{\{\s*([\s\S]+?)\s*\}\}$/);if(q)try{let U=q[1];if(K0(U)){let _=W0(U,Object.keys(Z))(...Object.values(Z));G(z,_!=null?String(_):"")}else{if(Y.debug)console.error(`Unsafe expression in ${z}: ${U}`);G(z,W)}}catch(U){if(Y.debug)console.error(`Error evaluating expression for ${z}:`,U);G(z,W)}else{let U=W,j=/\{\{\s*([\s\S]+?)\s*\}\}/g,_;while((_=j.exec(W))!==null)try{let B=_[1];if(!K0(B)){if(Y.debug)console.error(`Unsafe expression in ${z}: ${B}`);continue}let L=W0(B,Object.keys(Z))(...Object.values(Z));U=U.replace(_[0],String(L??""))}catch(B){if(Y.debug)console.error(`Error evaluating expression in ${z}:`,B)}G(z,U)}continue}G(z,W===S6?"true":W)}return J}function RU($){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]=S6}return Z}function dY($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function NU($){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(f0.isBuiltin(X))Z.add(X)}return[...Z].sort()}function MU($){let Z=uY.get($);if(Z)return Z;let Y=new Map,J=[m0.join($,"src"),m0.join($,"dist"),$];function X(Q,G){if(G>6)return;let K;try{K=a4.readdirSync(Q,{withFileTypes:!0})}catch{return}for(let W of K){let z=m0.join(Q,W.name);if(W.isDirectory()){if(W.name==="node_modules"||W.name.startsWith("."))continue;X(z,G+1)}else if(W.isFile()&&W.name.endsWith(".stx")){let q=W.name.slice(0,-4);if(!Y.has(q))Y.set(q,z);let U=q.toLowerCase();if(!Y.has(U))Y.set(U,z);let j=q.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(!Y.has(j))Y.set(j,z)}}}for(let Q of J)if(X(Q,0),Y.size>0)break;return uY.set($,Y),Y}function TU($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let Y=Z;while(!0){let J=m0.join(Y,"node_modules",$);try{if(a4.statSync(J).isDirectory())return J}catch{}let X=m0.dirname(Y);if(X===Y)return null;Y=X}}async function pY($,Z,Y,J,X){if(!$.includes("import"))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=m0.dirname(Y),K=$,W=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi;return K=K.replace(W,(z,q,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=m0.resolve(G,F);if(M.endsWith(".stx"))A=M;else{let T=`${M}.stx`;try{if(a4.statSync(T).isFile())A=T}catch{try{if(a4.statSync(M).isDirectory())w=M}catch{}}}}else w=TU(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?MU(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 z;for(let L=H.length-1;L>=0;L--)_=_.slice(0,H[L].start)+_.slice(H[L].end);return`<script${q}>${_}</script>`}),K}async function IU($,Z,Y,J,X){let Q=$;if(!Z.__importedComponents)Z.__importedComponents=new Map;let G=Z.__importedComponents,K=/@import\s*\(\s*([^)]+)\s*\)/g,W;while((W=K.exec(Q))!==null){let[z,q]=W,U=q.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=[m0.resolve(m0.dirname(Y),`${j}.stx`),m0.resolve(m0.dirname(Y),j),m0.resolve(J.componentsDir||"components",`${j}.stx`),m0.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(z,""),K.lastIndex=0}return Q}async function DU($,Z,Y,J,X){let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,W=/@component\s*\(/g,z;while((z=W.exec(Q))!==null){let q=z.index,U=q+z[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){W.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(q,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 u1(V,A,R,G,Z,Y,J,K,X);Q=Q.substring(0,q)+I+Q.substring(N),W.lastIndex=0}return Q}async function EU($,Z,Y,J,X){if(!$)return $;let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,W=V1(Q);return Q=W.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,wU),Q=p5(Q,W.scripts),Q;async function j(_,B,H,L){if(!_)return _;let V=_,O=xY(V,B,L);for(let F=O.length-1;F>=0;F--){let w=O[F],A=H?r4(w.tagName):w.tagName,R=RU(w.attributes),N=AU(R,Z,J),M=f0.getBuiltin(w.tagName),T=M?await Z4(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(([v,g])=>`${v}="${dY(g)}"`).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 Z4(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 u1(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=lY(D);if(y){let S=Object.entries(N.events).map(([v,g])=>`${v}="${dY(g)}"`).join(" "),k=Object.keys(N.events).map((v)=>v.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(([q])=>!Y.has(q)),Q=X.filter(([q])=>!J.has(q)).map(([q])=>r4(q)).join(" "),G=$,K=X.length>0?lY(G):null;if(K){let q=X.map(([j,_])=>`:${r4(j)}="${_.replace(/"/g,"&quot;")}"`).join(" "),U=Q?` data-stx-parent-bindings="${Q}"`:"";G=G.substring(0,K.insertPos)+`${U} ${q}`+G.substring(K.insertPos)}let W=Z.if;if(W)G=`<template :if="${W.replace(/"/g,"&quot;")}">${G}</template>`;let z=Z.for;if(z)G=`<template :for="${z.replace(/"/g,"&quot;")}">${G}</template>`;return G}function lY($){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()}>`,W=$.toLowerCase().indexOf(K,Y+Q[0].length);if(W===-1)return null;Y=W+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 t4($,Z,Y,J,X){if(!hY)CY(),hY=!0;let Q=await pY($,Z,Y,J,X);Q=await IU(Q,Z,Y,J,X),Q=await DU(Q,Z,Y,J,X);let G=[];for(let K=0;K<3;K++){let W=Y1(Q,m5,(q,U)=>`\x00STX_COMPONENT_COMMENT_${G.length+U}\x00`);G.push(...W.tokens);let z=Q;if(Q=await EU(W.output,Z,Y,J,X),Q===z)break}if(G.length>0)Q=Q.replace(/\x00STX_COMPONENT_COMMENT_(\d+)\x00/g,(K,W)=>G[Number(W)]??"");if(J.debug){let K=NU(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 hY=!1,S6="\x00stx-boolean-attribute",wU,uY;var y6=b(()=>{G6();vY();gY();v1();N0();w0();wU=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"]);uY=new Map});var tY={};a(tY,{processLoops:()=>P6});function SU($,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,W=1,z=K+1;while(z<J.length&&W>0){if(J[z]==="(")W++;else if(J[z]===")"){if(W--,W===0)break}z++}if(W!==0)continue;let q=J.substring(K+1,z),U=z+1,j=q.match(/^\s*['"]([^'"]+)['"]/);if(!j)continue;let _=j[1],B=q.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:W,replacement:z}=Q[G];J=J.substring(0,K)+z+J.substring(W)}return J}function e4($,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,W=1,z=K+1,q=null,U=!1;while(z<J.length&&W>0){let B=J[z];if(U){U=!1,z++;continue}if(B==="\\"&&q){U=!0,z++;continue}if(q){if(B===q)q=null;z++;continue}if(B==='"'||B==="'"||B==="`"){q=B,z++;continue}if(B==="(")W++;else if(B===")"){if(W--,W===0)break}z++}if(W!==0)break;let j=J.substring(K+1,z),_=Y(j);J=J.substring(0,G)+_+J.substring(z+1)}return J}function yU($,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);I$(Q);let z=W0(Q,G)(...K),q=JSON.stringify(z),U=Buffer.from(q,"utf8").toString("base64");return`__stx_${X}="${U}"`}catch(G){return J}}),Y}function PU($,Z){let Y=$;return Y=e4(Y,"@break",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(K0(Q)){let K=W0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean($0(Q,Z));return G?$7:""}catch{return""}}),Y=e4(Y,"@continue",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(K0(Q)){let K=W0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean($0(Q,Z));return G?Z7:""}catch{return""}}),Y}function CU($){let Z=$;return Z=Z.replace(/@break(?!\()/g,$7),Z=Z.replace(/@continue(?!\()/g,Z7),Z}function iY($){let Z=$.includes($7),Y=Z?$.substring(0,$.indexOf($7)):$;return{hasBreak:Z,content:Y}}function nY($){let Z=$.includes(Z7),Y=Z?$.substring(0,$.indexOf(Z7)):$;return{hasContinue:Z,content:Y}}function sY($){let Z=$;return Z=e4(Z,"@break",(Y)=>{let J=Y.trim();if(!D$(J))return"";return`\`; if (${J}) { break; } result += \``}),Z=e4(Z,"@continue",(Y)=>{let J=Y.trim();if(!D$(J))return"";return`\`; if (${J}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function vU($){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((q,U)=>q.pos-U.pos);let K=[],W=0;for(let q of J)W+=q.delta,K.push({pos:q.pos,depth:W});function z(q){let U=0,j=K.length-1,_=0;while(U<=j){let B=U+j>>1;if(K[B].pos<=q)_=K[B].depth,U=B+1;else j=B-1}return _}while((Y=Z.exec($))!==null){if(z(Y.index)>0)continue;let q=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:q,end:I,arrayExpr:V,itemVar:O,foreachContent:T.substring(0,E),emptyContent:T.substring(E+6)}}return null}function oY($,Z){let Y=$;while(!0){let J=vU(Y);if(!J)break;let{start:X,end:Q,arrayExpr:G,itemVar:K,foreachContent:W,emptyContent:z}=J;try{let q;if(K0(G))q=W0(G,Object.keys(Z))(...Object.values(Z));else q=$0(G,Z);let U;if(!Array.isArray(q)||q.length===0)U=z;else U=`@foreach (${G} as ${K})${W}@endforeach`;Y=Y.substring(0,X)+U+Y.substring(Q)}catch(q){let U=q instanceof Error?q.message:String(q),j=e("Forelse",`Error in @forelse(${G} as ${K}): ${U}`,s.EVALUATION_ERROR);Y=Y.substring(0,X)+j+Y.substring(Q)}}return Y}function P6($,Z,Y,J){let X=$;X=oY(X,Z);function Q(W){let z=/@foreach\s*\(/g,q;while((q=z.exec(W))!==null){let U=q.index,j=q.index+q[0].length-1,_=1,B=j+1,H=-1;while(B<W.length&&_>0){if(W[B]==="(")_++;else if(W[B]===")"){if(_--,_===0){H=B;break}}B++}if(H===-1)continue;let L=W.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<W.length){M.lastIndex=N,T.lastIndex=N;let I=M.exec(W),E=T.exec(W);if(!E)break;if(I&&I.index<E.index)R++,N=I.index+I[0].length;else{if(R--,R===0){let D=W.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(W,z){let q=W;while(!0){let U=Q(q);if(!U)break;let{start:j,end:_,arrayExpr:B,itemVar:H,content:L}=U;try{let V=B.trim(),O;if(K0(V))O=W0(V,Object.keys(z))(...Object.values(z));else O=$0(V,z);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=e("Foreach",`Error in @foreach: ${V} is not iterable`,s.TYPE_ERROR);q=q.substring(0,j)+E+q.substring(_);continue}let w=J?.loops?.useAltLoopVariable??bU,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={...z,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,p)=>{if(d)S[d]=D[p]});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=PU(L,S),v=nY(k);if(v.hasContinue){T+=v.content;continue}let g=iY(k);if(g.hasBreak){T+=g.content;break}if(k=oY(k,S),k=G(k,S),k=n1(k,S,Y),k=CU(k),g=iY(k),g.hasBreak){T+=g.content;break}if(v=nY(k),v.hasContinue){T+=v.content;continue}k=w1(k,S,Y),k=yU(k,S),k=SU(k,S),T+=k}q=q.substring(0,j)+T+q.substring(_)}catch(V){let O=e("Foreach",`Error in @foreach(${B.trim()} as ${H.trim()}): ${V instanceof Error?V.message:String(V)}`,s.EVALUATION_ERROR);q=q.substring(0,j)+O+q.substring(_)}}return q}X=G(X,Z),X=aY(X,Z,Y,J);let K=J?.loops?.maxWhileIterations??kU;return X=gU(X,Z,K),X}function rY($){return D$($)}function aY($,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,W=K+G[0].length-1,z=x0(X,"(",")",W);if(z===-1)break;let q=X.slice(W+1,z),U=z+1,j=x$(X.slice(K),"for","endfor");if(j.length===0)break;let _=j[0].content,B=K+j[0].end;if(!rY(q)){let H=e("For",`Unsafe expression in @for: ${q}`,s.UNSAFE_EXPRESSION);X=X.substring(0,K)+H+X.substring(B),Q=!0;continue}try{let H=xU(q),L=/@(?:for|foreach|if|unless)\s*\(/.test(_);if(H.length>0&&L){let R=fU({forExpr:q,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,`
9386
+ </style>`}}});import{existsSync as AU,readFileSync as RU}from"fs";function NU($){if(xY.has($))return;xY.add($),console.warn(`[stx] icon collection "${$}" is not installed, so its icons render as nothing. Install it with \`bun add -d @iconify-json/${$}\`.`)}function MU($){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(AU(Y))return Y;for(let Y of[`@iconify-json/${$}/icons.json`,`@iconify/json/json/${$}.json`])try{return _0.resolve(Y)}catch{}return null}function TU($){if(a4.has($))return a4.get($);let Z=MU($);if(!Z)return NU($),null;try{let Y=JSON.parse(RU(Z,"utf8"));return a4.set($,Y.icons),Y.icons}catch{return null}}function M5($,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 a4,xY,E6;var k6=b(()=>{a4=new Map,xY=new Set;E6={name:"Icon",aliases:["icon","stx-icon"],render($,Z,Y){let J=M5($,"name")??M5($,"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=P0(M5($,"size")||"24"),K=P0(M5($,"color")||"currentColor"),W=P0(M5($,"class")||""),q=P0(M5($,"style")||""),z=a4.get(X)??TU(X);if(!z)return`<!-- Icon: collection "${X}" not loaded -->`;let U=z[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=W?` class="${W}"`:"",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 fY($,...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 gY($,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 b6;var S6=b(()=>{b6={name:"Suspense",aliases:["suspense"],render($,Z,Y){let J=gY(Z,"fallback"),X=J.rest,Q=gY(X,"error"),G=Q.rest,K=J.region??fY($,"fallback")??'<div class="stx-suspense-loading">Loading\u2026</div>',W=Q.region??fY($,"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>${W}</div><div data-stx-suspense-content hidden>${G}</div></div>`}}});function t4($,...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 y6;var P6=b(()=>{y6={name:"TransitionGroup",aliases:["transition-group"],render($,Z,Y){let J=(t4($,"name")||"v").replace(/["'<>]/g,""),X=(t4($,"tag")||"div").replace(/[^a-z0-9-]/gi,"")||"div",Q=t4($,"class"),G=t4($,"id"),K=[`data-stx-transition-group="${J}"`,Q?`class="${Q}"`:"",G?`id="${G}"`:""].filter(Boolean).join(" ");return`<${X} ${K}>${Z}</${X}>`}}});function hY(){g0.registerBuiltin(z6),g0.registerBuiltin(H6),g0.registerBuiltin(L6),g0.registerBuiltin(w6),g0.registerBuiltin(R6),g0.registerBuiltin(M6),g0.registerBuiltin(I6),g0.registerBuiltin(E6),g0.registerBuiltin(b6),g0.registerBuiltin(y6)}var dY=b(()=>{U6();O6();F6();A6();N6();T6();D6();k6();S6();P6();q6();U6();O6();F6();A6();N6();T6();D6();k6();S6();P6()});function e4($){return $.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").toLowerCase()}function uY($,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 W=K[1];if(Y&&Y.has(W.toLowerCase())){let H=Q+1+W.length;while(H<$.length&&$[H]!==">")H++;X=H+1;continue}let q=Q+1+W.length,z=null,U=q,j=-1,_=!1;while(q<$.length){let H=$[q];if(z){if(H==="\\"&&q+1<$.length){q+=2;continue}if(H===z)z=null;q++;continue}if(H==='"'||H==="'"){z=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:W,attributes:B,content:"",startIndex:Q,endIndex:j,isSelfClosing:!0}),X=j;else{let H=`<${W}`,L=`</${W}>`,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===`
9387
+ `||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:W,attributes:B,content:w,startIndex:Q,endIndex:A,isSelfClosing:!1}),X=A}}return J}function mY($,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 pY=b(()=>{A0();M0();f1()});var rY={};a(rY,{processESImports:()=>oY,processComponents:()=>Z7});import $7 from"fs";import p0 from"path";function DU($,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,(W,q)=>q.toUpperCase())},G=(K,W)=>{let q=Q(K);if(J.static[q]=W,q!==K)J.staticNames[q]=K};for(let[K,W]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]=W;continue}if(q.startsWith("__stx_")){let z=Q(q.slice(6));J.serverDynamic[z]=mY(W,Y);continue}if(q.startsWith(":")){let z=Q(q.slice(1)),U=W===C6?z:W;if(z==="if"||z==="for"||z==="show"){J.clientReactive[z]=U;continue}try{if(!W0(U)){if(Y.debug)console.error(`Unsafe expression in :${z} binding: ${U}`);J.clientReactive[z]=U;continue}let j=Object.keys(Z),B=q0(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[z]=U;continue}}J.serverDynamic[z]=B}catch{J.clientReactive[z]=U}continue}if(typeof W==="string"&&W.includes("{{")&&W.includes("}}")){let z=W.match(/^\{\{\s*([\s\S]+?)\s*\}\}$/);if(z)try{let U=z[1];if(W0(U)){let _=q0(U,Object.keys(Z))(...Object.values(Z));G(q,_!=null?String(_):"")}else{if(Y.debug)console.error(`Unsafe expression in ${q}: ${U}`);G(q,W)}}catch(U){if(Y.debug)console.error(`Error evaluating expression for ${q}:`,U);G(q,W)}else{let U=W,j=/\{\{\s*([\s\S]+?)\s*\}\}/g,_;while((_=j.exec(W))!==null)try{let B=_[1];if(!W0(B)){if(Y.debug)console.error(`Unsafe expression in ${q}: ${B}`);continue}let L=q0(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,W===C6?"true":W)}return J}function EU($){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]=C6}return Z}function cY($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function kU($){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(g0.isBuiltin(X))Z.add(X)}return[...Z].sort()}function bU($){let Z=iY.get($);if(Z)return Z;let Y=new Map,J=[p0.join($,"src"),p0.join($,"dist"),$];function X(Q,G){if(G>6)return;let K;try{K=$7.readdirSync(Q,{withFileTypes:!0})}catch{return}for(let W of K){let q=p0.join(Q,W.name);if(W.isDirectory()){if(W.name==="node_modules"||W.name.startsWith("."))continue;X(q,G+1)}else if(W.isFile()&&W.name.endsWith(".stx")){let z=W.name.slice(0,-4);if(!Y.has(z))Y.set(z,q);let U=z.toLowerCase();if(!Y.has(U))Y.set(U,q);let j=z.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 iY.set($,Y),Y}function SU($,Z){if($.startsWith(".")||$.startsWith("/"))return null;let Y=Z;while(!0){let J=p0.join(Y,"node_modules",$);try{if($7.statSync(J).isDirectory())return J}catch{}let X=p0.dirname(Y);if(X===Y)return null;Y=X}}async function oY($,Z,Y,J,X){if(!$.includes("import"))return $;if(!Z.__importedComponents)Z.__importedComponents=new Map;let Q=Z.__importedComponents,G=p0.dirname(Y),K=$,W=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi;return K=K.replace(W,(q,z,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=p0.resolve(G,F);if(M.endsWith(".stx"))A=M;else{let T=`${M}.stx`;try{if($7.statSync(T).isFile())A=T}catch{try{if($7.statSync(M).isDirectory())w=M}catch{}}}}else w=SU(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?bU(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${z}>${_}</script>`}),K}async function yU($,Z,Y,J,X){let Q=$;if(!Z.__importedComponents)Z.__importedComponents=new Map;let G=Z.__importedComponents,K=/@import\s*\(\s*([^)]+)\s*\)/g,W;while((W=K.exec(Q))!==null){let[q,z]=W,U=z.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=[p0.resolve(p0.dirname(Y),`${j}.stx`),p0.resolve(p0.dirname(Y),j),p0.resolve(J.componentsDir||"components",`${j}.stx`),p0.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 PU($,Z,Y,J,X){let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,W=/@component\s*\(/g,q;while((q=W.exec(Q))!==null){let z=q.index,U=z+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){W.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=T0(O,Z)}catch(E){let D=E instanceof Error?E.message:String(E);Q=Q.replace(Q.substring(z,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 p1(V,A,R,G,Z,Y,J,K,X);Q=Q.substring(0,z)+I+Q.substring(N),W.lastIndex=0}return Q}async function CU($,Z,Y,J,X){if(!$)return $;let Q=$,G=J.componentsDir||"components";if(!Z.__processedComponents)Z.__processedComponents=new Set;let K=Z.__processedComponents,W=w1(Q);return Q=W.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,IU),Q=i5(Q,W.scripts),Q;async function j(_,B,H,L){if(!_)return _;let V=_,O=uY(V,B,L);for(let F=O.length-1;F>=0;F--){let w=O[F],A=H?e4(w.tagName):w.tagName,R=EU(w.attributes),N=DU(R,Z,J),M=g0.getBuiltin(w.tagName),T=M?await X4(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=nY(S,N.clientReactive);if(Object.keys(N.events).length>0){let k=Object.entries(N.events).map(([v,g])=>`${v}="${cY(g)}"`).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 X4(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 p1(A,I,w.content,G,Z,Y,J,K,X);if(Object.keys(N.clientReactive).length>0)D=nY(D,N.clientReactive);if(Object.keys(N.events).length>0){let y=sY(D);if(y){let S=Object.entries(N.events).map(([v,g])=>`${v}="${cY(g)}"`).join(" "),k=Object.keys(N.events).map((v)=>v.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 nY($,Z){let Y=new Set(["if","for"]),J=new Set(["show"]),X=Object.entries(Z).filter(([z])=>!Y.has(z)),Q=X.filter(([z])=>!J.has(z)).map(([z])=>e4(z)).join(" "),G=$,K=X.length>0?sY(G):null;if(K){let z=X.map(([j,_])=>`:${e4(j)}="${_.replace(/"/g,"&quot;")}"`).join(" "),U=Q?` data-stx-parent-bindings="${Q}"`:"";G=G.substring(0,K.insertPos)+`${U} ${z}`+G.substring(K.insertPos)}let W=Z.if;if(W)G=`<template :if="${W.replace(/"/g,"&quot;")}">${G}</template>`;let q=Z.for;if(q)G=`<template :for="${q.replace(/"/g,"&quot;")}">${G}</template>`;return G}function sY($){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()}>`,W=$.toLowerCase().indexOf(K,Y+Q[0].length);if(W===-1)return null;Y=W+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 Z7($,Z,Y,J,X){if(!lY)hY(),lY=!0;let Q=await oY($,Z,Y,J,X);Q=await yU(Q,Z,Y,J,X),Q=await PU(Q,Z,Y,J,X);let G=[];for(let K=0;K<3;K++){let W=J1(Q,c5,(z,U)=>`\x00STX_COMPONENT_COMMENT_${G.length+U}\x00`);G.push(...W.tokens);let q=Q;if(Q=await CU(W.output,Z,Y,J,X),Q===q)break}if(G.length>0)Q=Q.replace(/\x00STX_COMPONENT_COMMENT_(\d+)\x00/g,(K,W)=>G[Number(W)]??"");if(J.debug){let K=kU(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 lY=!1,C6="\x00stx-boolean-attribute",IU,iY;var v6=b(()=>{q6();dY();pY();f1();M0();A0();IU=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"]);iY=new Map});var JJ={};a(JJ,{processLoops:()=>x6});function fU($,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,W=1,q=K+1;while(q<J.length&&W>0){if(J[q]==="(")W++;else if(J[q]===")"){if(W--,W===0)break}q++}if(W!==0)continue;let z=J.substring(K+1,q),U=q+1,j=z.match(/^\s*['"]([^'"]+)['"]/);if(!j)continue;let _=j[1],B=z.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=T0(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:W,replacement:q}=Q[G];J=J.substring(0,K)+q+J.substring(W)}return J}function Y7($,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,W=1,q=K+1,z=null,U=!1;while(q<J.length&&W>0){let B=J[q];if(U){U=!1,q++;continue}if(B==="\\"&&z){U=!0,q++;continue}if(z){if(B===z)z=null;q++;continue}if(B==='"'||B==="'"||B==="`"){z=B,q++;continue}if(B==="(")W++;else if(B===")"){if(W--,W===0)break}q++}if(W!==0)break;let j=J.substring(K+1,q),_=Y(j);J=J.substring(0,G)+_+J.substring(q+1)}return J}function gU($,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);k$(Q);let q=q0(Q,G)(...K),z=JSON.stringify(q),U=Buffer.from(z,"utf8").toString("base64");return`__stx_${X}="${U}"`}catch(G){return J}}),Y}function hU($,Z){let Y=$;return Y=Y7(Y,"@break",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(W0(Q)){let K=q0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean(Z0(Q,Z));return G?J7:""}catch{return""}}),Y=Y7(Y,"@continue",(J)=>{try{let Q=`!!(${J.trim()})`,G;if(W0(Q)){let K=q0(Q,Object.keys(Z));G=Boolean(K(...Object.values(Z)))}else G=Boolean(Z0(Q,Z));return G?X7:""}catch{return""}}),Y}function dU($){let Z=$;return Z=Z.replace(/@break(?!\()/g,J7),Z=Z.replace(/@continue(?!\()/g,X7),Z}function aY($){let Z=$.includes(J7),Y=Z?$.substring(0,$.indexOf(J7)):$;return{hasBreak:Z,content:Y}}function tY($){let Z=$.includes(X7),Y=Z?$.substring(0,$.indexOf(X7)):$;return{hasContinue:Z,content:Y}}function $J($){let Z=$;return Z=Y7(Z,"@break",(Y)=>{let J=Y.trim();if(!b$(J))return"";return`\`; if (${J}) { break; } result += \``}),Z=Y7(Z,"@continue",(Y)=>{let J=Y.trim();if(!b$(J))return"";return`\`; if (${J}) { continue; } result += \``}),Z=Z.replace(/@break(?!\()/g,"`; break; result += `"),Z=Z.replace(/@continue(?!\()/g,"`; continue; result += `"),Z}function uU($){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((z,U)=>z.pos-U.pos);let K=[],W=0;for(let z of J)W+=z.delta,K.push({pos:z.pos,depth:W});function q(z){let U=0,j=K.length-1,_=0;while(U<=j){let B=U+j>>1;if(K[B].pos<=z)_=K[B].depth,U=B+1;else j=B-1}return _}while((Y=Z.exec($))!==null){if(q(Y.index)>0)continue;let z=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:z,end:I,arrayExpr:V,itemVar:O,foreachContent:T.substring(0,E),emptyContent:T.substring(E+6)}}return null}function eY($,Z){let Y=$;while(!0){let J=uU(Y);if(!J)break;let{start:X,end:Q,arrayExpr:G,itemVar:K,foreachContent:W,emptyContent:q}=J;try{let z;if(W0(G))z=q0(G,Object.keys(Z))(...Object.values(Z));else z=Z0(G,Z);let U;if(!Array.isArray(z)||z.length===0)U=q;else U=`@foreach (${G} as ${K})${W}@endforeach`;Y=Y.substring(0,X)+U+Y.substring(Q)}catch(z){let U=z instanceof Error?z.message:String(z),j=$0("Forelse",`Error in @forelse(${G} as ${K}): ${U}`,s.EVALUATION_ERROR);Y=Y.substring(0,X)+j+Y.substring(Q)}}return Y}function x6($,Z,Y,J){let X=$;X=eY(X,Z);function Q(W){let q=/@foreach\s*\(/g,z;while((z=q.exec(W))!==null){let U=z.index,j=z.index+z[0].length-1,_=1,B=j+1,H=-1;while(B<W.length&&_>0){if(W[B]==="(")_++;else if(W[B]===")"){if(_--,_===0){H=B;break}}B++}if(H===-1)continue;let L=W.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<W.length){M.lastIndex=N,T.lastIndex=N;let I=M.exec(W),E=T.exec(W);if(!E)break;if(I&&I.index<E.index)R++,N=I.index+I[0].length;else{if(R--,R===0){let D=W.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(W,q){let z=W;while(!0){let U=Q(z);if(!U)break;let{start:j,end:_,arrayExpr:B,itemVar:H,content:L}=U;try{let V=B.trim(),O;if(W0(V))O=q0(V,Object.keys(q))(...Object.values(q));else O=Z0(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=$0("Foreach",`Error in @foreach: ${V} is not iterable`,s.TYPE_ERROR);z=z.substring(0,j)+E+z.substring(_);continue}let w=J?.loops?.useAltLoopVariable??xU,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,p)=>{if(d)S[d]=D[p]});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=hU(L,S),v=tY(k);if(v.hasContinue){T+=v.content;continue}let g=aY(k);if(g.hasBreak){T+=g.content;break}if(k=eY(k,S),k=G(k,S),k=s1(k,S,Y),k=dU(k),g=aY(k),g.hasBreak){T+=g.content;break}if(v=tY(k),v.hasContinue){T+=v.content;continue}k=A1(k,S,Y),k=gU(k,S),k=fU(k,S),T+=k}z=z.substring(0,j)+T+z.substring(_)}catch(V){let O=$0("Foreach",`Error in @foreach(${B.trim()} as ${H.trim()}): ${V instanceof Error?V.message:String(V)}`,s.EVALUATION_ERROR);z=z.substring(0,j)+O+z.substring(_)}}return z}X=G(X,Z),X=YJ(X,Z,Y,J);let K=J?.loops?.maxWhileIterations??vU;return X=lU(X,Z,K),X}function ZJ($){return b$($)}function YJ($,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,W=K+G[0].length-1,q=f0(X,"(",")",W);if(q===-1)break;let z=X.slice(W+1,q),U=q+1,j=h$(X.slice(K),"for","endfor");if(j.length===0)break;let _=j[0].content,B=K+j[0].end;if(!ZJ(z)){let H=$0("For",`Unsafe expression in @for: ${z}`,s.UNSAFE_EXPRESSION);X=X.substring(0,K)+H+X.substring(B),Q=!0;continue}try{let H=mU(z),L=/@(?:for|foreach|if|unless)\s*\(/.test(_);if(H.length>0&&L){let R=pU({forExpr:z,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=$J(F);let A=Function(...V,`
9388
9388
  let result = '';
9389
- for (${q}) {
9389
+ for (${z}) {
9390
9390
  result += \`${F}\`;
9391
9391
  }
9392
9392
  return result;
9393
- `)(...O);X=X.substring(0,K)+A+X.substring(B),Q=!0}catch(H){let L=e("For",`Error in @for(${q}): ${H instanceof Error?H.message:String(H)}`,s.EVALUATION_ERROR);X=X.substring(0,K)+L+X.substring(B),Q=!0}}return X}function xU($){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 W=K.trim();if(!W)return"";let z=W.indexOf(":");if(z>=0&&Q.startsWith("{")){let j=W.slice(z+1).trim(),_=j.indexOf("=");return(_>=0?j.slice(0,_):j).trim()}let q=W.indexOf("="),U=(q>=0?W.slice(0,q):W).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 fU($){let{forExpr:Z,content:Y,iterVarNames:J,context:X,filePath:Q,options:G}=$,K=Object.keys(X),W=Object.values(X),z=Function(...K,"__pushIter",`
9393
+ `)(...O);X=X.substring(0,K)+A+X.substring(B),Q=!0}catch(H){let L=$0("For",`Error in @for(${z}): ${H instanceof Error?H.message:String(H)}`,s.EVALUATION_ERROR);X=X.substring(0,K)+L+X.substring(B),Q=!0}}return X}function mU($){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 W=K.trim();if(!W)return"";let q=W.indexOf(":");if(q>=0&&Q.startsWith("{")){let j=W.slice(q+1).trim(),_=j.indexOf("=");return(_>=0?j.slice(0,_):j).trim()}let z=W.indexOf("="),U=(z>=0?W.slice(0,z):W).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 pU($){let{forExpr:Z,content:Y,iterVarNames:J,context:X,filePath:Q,options:G}=$,K=Object.keys(X),W=Object.values(X),q=Function(...K,"__pushIter",`
9394
9394
  for (${Z}) {
9395
9395
  __pushIter([${J.join(", ")}])
9396
9396
  }
9397
- `),q=[];z(...W,(_)=>{q.push(_)});let U=Q??"inline.stx",j="";for(let _ of q){let B={...X};J.forEach((L,V)=>{B[L]=_[V]});let H=aY(Y,B,Q,G);H=n1(H,B,U),H=w1(H,B,U),j+=H}return j}function gU($,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,W=x0(J,"(",")",K);if(W===-1)break;let z=J.slice(K+1,W),q=x$(J.slice(G),"while","endwhile");if(q.length===0)break;let U=q[0].content,j=G+q[0].end;if(!rY(z)){let _=e("While",`Unsafe expression in @while: ${z}`,s.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(..._,`
9397
+ `),z=[];q(...W,(_)=>{z.push(_)});let U=Q??"inline.stx",j="";for(let _ of z){let B={...X};J.forEach((L,V)=>{B[L]=_[V]});let H=YJ(Y,B,Q,G);H=s1(H,B,U),H=A1(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,W=f0(J,"(",")",K);if(W===-1)break;let q=J.slice(K+1,W),z=h$(J.slice(G),"while","endwhile");if(z.length===0)break;let U=z[0].content,j=G+z[0].end;if(!ZJ(q)){let _=$0("While",`Unsafe expression in @while: ${q}`,s.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=$J(H);let V=Function(..._,`
9398
9398
  let result = '';
9399
9399
  let maxIterations = ${Y}; // Configurable safety limit
9400
9400
  let counter = 0;
9401
- while (${z} && counter < maxIterations) {
9401
+ while (${q} && counter < maxIterations) {
9402
9402
  counter++;
9403
9403
  result += \`${H}\`;
9404
9404
  }
@@ -9406,21 +9406,21 @@ ${D}
9406
9406
  result += '<!-- [While Error [1104]]: Maximum iterations (${Y}) exceeded in while loop. Configure via options.loops.maxWhileIterations -->';
9407
9407
  }
9408
9408
  return result;
9409
- `)(...B);J=J.substring(0,G)+V+J.substring(j),X=!0}catch(_){let B=e("While",`Error in @while(${z}): ${_ instanceof Error?_.message:String(_)}`,s.EVALUATION_ERROR);J=J.substring(0,G)+B+J.substring(j),X=!0}}return J}var kU=1000,bU=!1,$7="<!--__STX_BREAK__-->",Z7="<!--__STX_CONTINUE__-->";var C6=b(()=>{d4();q1();J1();f$();w0()});import _0 from"path";function v6($,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 hU($,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,W=1,z=K+1;while(z<J.length&&W>0){if(J[z]==="(")W++;else if(J[z]===")")W--;z++}if(W!==0)break;let q=J.substring(K+1,z-1),U=`${Y}(${q})`;J=J.substring(0,G)+U+J.substring(z),X.lastIndex=G+U.length,Q=X.exec(J)}return J}function dU($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function $J($){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++}},W=()=>{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]==="`")W();else Q++;continue}Q++}},z=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
9410
- `)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},q=()=>{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(z())continue;if(Z[Q]==="'"||Z[Q]==='"'){K(Z[Q]);continue}if(Z[Q]==="`"){W();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])))q();Q++}return Y.join(", ")}function ZJ($,Z=""){let Y=$J($).split(",").map((J)=>J.trim()).filter(Boolean);return`
9409
+ `)(...B);J=J.substring(0,G)+V+J.substring(j),X=!0}catch(_){let B=$0("While",`Error in @while(${q}): ${_ instanceof Error?_.message:String(_)}`,s.EVALUATION_ERROR);J=J.substring(0,G)+B+J.substring(j),X=!0}}return J}var vU=1000,xU=!1,J7="<!--__STX_BREAK__-->",X7="<!--__STX_CONTINUE__-->";var f6=b(()=>{p4();U1();X1();d$();A0()});import B0 from"path";function g6($,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 cU($,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,W=1,q=K+1;while(q<J.length&&W>0){if(J[q]==="(")W++;else if(J[q]===")")W--;q++}if(W!==0)break;let z=J.substring(K+1,q-1),U=`${Y}(${z})`;J=J.substring(0,G)+U+J.substring(q),X.lastIndex=G+U.length,Q=X.exec(J)}return J}function iU($){return/\b(state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test($)}function QJ($){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++}},W=()=>{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]==="`")W();else Q++;continue}Q++}},q=()=>{if(Z[Q]==="/"&&Z[Q+1]==="/"){while(Q<G&&Z[Q]!==`
9410
+ `)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},z=()=>{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]==="`"){W();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])))z();Q++}return Y.join(", ")}function GJ($,Z=""){let Y=QJ($).split(",").map((J)=>J.trim()).filter(Boolean);return`
9411
9411
  (function() {
9412
- ${G5("var",Y)}
9412
+ ${W5("var",Y)}
9413
9413
  var __destroyHooks = [];
9414
9414
  var __origOnDestroy = onDestroy;
9415
9415
  onDestroy = function(fn) { __origOnDestroy(fn); __destroyHooks.push(fn); };
9416
9416
 
9417
9417
  ${$}
9418
9418
  ${Z}})();
9419
- `}function YJ($,Z){return`
9419
+ `}function KJ($,Z){return`
9420
9420
  // Register scope variables for STX runtime
9421
9421
  if (!window.stx._scopes) window.stx._scopes = {};
9422
9422
  var __scopeRegistration = { __destroyCallbacks: __destroyHooks };
9423
- ${$J($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeRegistration[${JSON.stringify(Q)}] = ${Q}; } catch (e) { /* not actually top-level */ }`).join(`
9423
+ ${QJ($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeRegistration[${JSON.stringify(Q)}] = ${Q}; } catch (e) { /* not actually top-level */ }`).join(`
9424
9424
  `)}
9425
9425
  // #1767: when the bundler renamed a component const that collided with an
9426
9426
  // inlined import (foo -> foo2), rebind the ORIGINAL template name to the
@@ -9428,7 +9428,7 @@ ${$J($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeR
9428
9428
  // shadowing import. __stxScopeRenames is emitted by bundleClientScript.
9429
9429
  try { if (typeof __stxScopeRenames !== 'undefined' && __stxScopeRenames) { for (var __stxRK in __stxScopeRenames) __scopeRegistration[__stxRK] = __stxScopeRenames[__stxRK]; } } catch (e) { /* no renames */ }
9430
9430
  window.stx._scopes['${Z}'] = __scopeRegistration;
9431
- `}function uU($,Z){let Y=YJ($,Z),J=`
9431
+ `}function nU($,Z){let Y=KJ($,Z),J=`
9432
9432
  (function() {
9433
9433
  var __stxScopeEl = (typeof document !== 'undefined') ? document.querySelector('[data-stx-scope="${Z}"]') : null;
9434
9434
  var __stxPrevEl = (typeof window !== 'undefined') ? window.__STX_CURRENT_ELEMENT__ : undefined;
@@ -9437,33 +9437,33 @@ ${$J($).split(",").map((Q)=>Q.trim()).filter(Boolean).map((Q)=>` try { __scopeR
9437
9437
  } finally {
9438
9438
  if (typeof window !== 'undefined') window.__STX_CURRENT_ELEMENT__ = __stxPrevEl;
9439
9439
  }
9440
- })();`;return J+ZJ($,Y)+`
9440
+ })();`;return J+GJ($,Y)+`
9441
9441
  } finally {
9442
9442
  if (typeof window !== 'undefined') window.__STX_CURRENT_ELEMENT__ = __stxPrevEl;
9443
9443
  }
9444
- })();`}function mU($,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 lU($){if($.__onceStore instanceof Set)return $.__onceStore;return pU}async function x6($,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=hU($,"@partial","@include"),W=lU(Z);K=K.replace(/@once([\s\S]*?)@endonce/g,(B,H,L)=>{let V=H.trim(),O=`${Y}:${V}`;if(W.has(O))return"";return W.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=z(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=v6(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=v6(D,0);if(S!==-1)y=D.substring(S+1).trim();try{let k=`Boolean(${M})`,v;if(K0(k)){let d=W0(k,Object.keys(Z));v=Boolean(d(...Object.values(Z)))}else v=Boolean($0(k,Z));let g=H?!v:v,f="";if(g){let d=z(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 v=k instanceof Error?k.message:String(k),g=q0("Include",`Error evaluating ${B} condition: ${v}`,Y,$,O);K=K.substring(0,O)+g+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(K0(D))E=W0(D,Object.keys(Z))(...Object.values(Z));else E=$0(D,Z);let y="";if(Array.isArray(E)&&E.length>0)for(let S of E){let k={...Z,[T]:S},v=await U(N,k,$,L);y+=v}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(v){let g=v instanceof Error?v.message:String(v);if(J.debug){let f=q0("Include",`Error parsing includeFirst variables: ${g}`,Y,$,L,A);K=K.replace(A,()=>f)}else K=K.replace(A,()=>E||"");continue}let k=!1;for(let v of y){let g=z(v,G,Y);if(!g)continue;if(await c(g)){let f=await U(v,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 v=q0("Include",`None of the includeFirst paths exist: ${N}`,Y,$,L,A);K=K.replace(A,()=>v)}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 z(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 q=_0.resolve(Y);Q.add(q);async function U(B,H={},L,V){let O=z(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(() => (Y6(),Z6));w=f(w,Z)}if(w&&(J.debug||!J$()&&!D4()))try{let{warnUnbalancedTags:f}=await Promise.resolve().then(() => (X6(),AY));f(w,O)}catch{}let A=w;try{let{processESImports:f}=await Promise.resolve().then(() => (y6(),cY));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=y$(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]||"",p=f[2]||"",X0=d.includes("server"),Z0=P1(d),V0="";try{let{extractAndStripCssImports:Q0,renderVendorStyleTags:k0}=await Promise.resolve().then(() => (u5(),I9)),n0=Q0(p,{filePath:O,projectRoot:process.cwd()});p=n0.code,V0=k0(n0.styles)}catch(Q0){if(J.debug)console.warn(`[stx] vendor-css extractor skipped for ${O}:`,Q0 instanceof Error?Q0.message:Q0)}if(Z0&&p.trim())p=C1(p);if(!X0)try{let{hasUserImports:Q0,bundleClientScript:k0}=await Promise.resolve().then(() => (f5(),x5));if(Q0(p))p=await k0(p,O,{projectRoot:process.cwd()})}catch(Q0){if(J.debug)console.warn(`[stx] bundler skipped for ${O}:`,Q0 instanceof Error?Q0.message:Q0)}let r=dU(p);if(r&&!X0){S=`stx_scope_${_0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++eY}`;let Q0=s0(p),k0=uU(Q0,S);y+=`${V0}<script data-stx-scoped>${k0}</script>
9445
- `;continue}if(X0)try{let{extractVariables:Q0}=await Promise.resolve().then(() => (r5(),v$));await Q0(p,I,O)}catch(Q0){if(J.debug)console.warn(`Warning: Could not extract variables from server script in ${O}:`,Q0)}if(!X0&&!r){let Q0=d.replace(/\bclient\b/i,"").trim();S=`stx_scope_${_0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++eY}`;let k0=s0(p),n0=YJ(k0,S),B1=ZJ(k0,n0);y+=`${V0}<script data-stx-scoped${Q0?` ${Q0}`:""}>${B1}</script>
9446
- `}}if(S){let f=mU(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 x6(A,I,O,J,X,Q);let{processLoops:k}=await Promise.resolve().then(() => (C6(),tY)),v=k(A,I,O);v=n1(v,I,O);let g=Q5(w);if(v=w1(v,I,O,{forceSignals:g}),T)v+=`
9444
+ })();`}function oU($,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 rU($){if($.__onceStore instanceof Set)return $.__onceStore;return sU}async function h6($,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=cU($,"@partial","@include"),W=rU(Z);K=K.replace(/@once([\s\S]*?)@endonce/g,(B,H,L)=>{let V=H.trim(),O=`${Y}:${V}`;if(W.has(O))return"";return W.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=g6(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=g6(D,0);if(S!==-1)y=D.substring(S+1).trim();try{let k=`Boolean(${M})`,v;if(W0(k)){let d=q0(k,Object.keys(Z));v=Boolean(d(...Object.values(Z)))}else v=Boolean(Z0(k,Z));let g=H?!v:v,f="";if(g){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 v=k instanceof Error?k.message:String(k),g=U0("Include",`Error evaluating ${B} condition: ${v}`,Y,$,O);K=K.substring(0,O)+g+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(W0(D))E=q0(D,Object.keys(Z))(...Object.values(Z));else E=Z0(D,Z);let y="";if(Array.isArray(E)&&E.length>0)for(let S of E){let k={...Z,[T]:S},v=await U(N,k,$,L);y+=v}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)+U0("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=T0(T,Z)}catch(v){let g=v instanceof Error?v.message:String(v);if(J.debug){let f=U0("Include",`Error parsing includeFirst variables: ${g}`,Y,$,L,A);K=K.replace(A,()=>f)}else K=K.replace(A,()=>E||"");continue}let k=!1;for(let v of y){let g=q(v,G,Y);if(!g)continue;if(await c(g)){let f=await U(v,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 v=U0("Include",`None of the includeFirst paths exist: ${N}`,Y,$,L,A);K=K.replace(A,()=>v)}else K=K.replace(A,"")}catch(y){let S=y instanceof Error?y.message:String(y),k=U0("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=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: ${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 z=B0.resolve(Y);Q.add(z);async function U(B,H={},L,V){let O=q(B,G,Y);if(!O)return U0("Include",`Could not resolve path for include: ${B}`,Y,L,V);let F=B0.resolve(O);if(Q.has(F)){let w=[...Q,F].map((A)=>B0.basename(A)).join(" -> ");return U0("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 U0("Include",`Error loading include file ${B}: ${d}`,Y,L,V)}if(w&&w.includes("@stream")){let{processStreamDirectives:f}=await Promise.resolve().then(() => (Q6(),X6));w=f(w,Z)}if(w&&(J.debug||!G$()&&!b4()))try{let{warnUnbalancedTags:f}=await Promise.resolve().then(() => (K6(),IY));f(w,O)}catch{}let A=w;try{let{processESImports:f}=await Promise.resolve().then(() => (v6(),rY));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=v$(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]||"",p=f[2]||"",Q0=d.includes("server"),Y0=v1(d),w0="";try{let{extractAndStripCssImports:G0,renderVendorStyleTags:b0}=await Promise.resolve().then(() => (l5(),S9)),o0=G0(p,{filePath:O,projectRoot:process.cwd()});p=o0.code,w0=b0(o0.styles)}catch(G0){if(J.debug)console.warn(`[stx] vendor-css extractor skipped for ${O}:`,G0 instanceof Error?G0.message:G0)}if(Y0&&p.trim())p=x1(p);if(!Q0)try{let{hasUserImports:G0,bundleClientScript:b0}=await Promise.resolve().then(() => (d5(),h5));if(G0(p))p=await b0(p,O,{projectRoot:process.cwd()})}catch(G0){if(J.debug)console.warn(`[stx] bundler skipped for ${O}:`,G0 instanceof Error?G0.message:G0)}let r=iU(p);if(r&&!Q0){S=`stx_scope_${B0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++XJ}`;let G0=r0(p),b0=nU(G0,S);y+=`${w0}<script data-stx-scoped>${b0}</script>
9445
+ `;continue}if(Q0)try{let{extractVariables:G0}=await Promise.resolve().then(() => (e5(),g$));await G0(p,I,O)}catch(G0){if(J.debug)console.warn(`Warning: Could not extract variables from server script in ${O}:`,G0)}if(!Q0&&!r){let G0=d.replace(/\bclient\b/i,"").trim();S=`stx_scope_${B0.basename(O,".stx").replace(/[^a-zA-Z0-9]/g,"_")}_${++XJ}`;let b0=r0(p),o0=KJ(b0,S),H1=GJ(b0,o0);y+=`${w0}<script data-stx-scoped${G0?` ${G0}`:""}>${H1}</script>
9446
+ `}}if(S){let f=oU(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 h6(A,I,O,J,X,Q);let{processLoops:k}=await Promise.resolve().then(() => (f6(),JJ)),v=k(A,I,O);v=s1(v,I,O);let g=K5(w);if(v=A1(v,I,O,{forceSignals:g}),T)v+=`
9447
9447
  `+T;if(y)v+=`
9448
- `+y;return v}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=v6(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 f6($,Z){let Y=$;function J(X,Q,G,K){let W=X,z=!0;while(z){z=!1;let q=new RegExp(`@${Q}\\(['"]([^'"]+)['"]\\)`),U=W.match(q);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<W.length){let A=W.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=W.slice(B,F);if(!Z[_])Z[_]=[];if(K)Z[_].unshift(w);else Z[_].push(w);W=W.substring(0,j)+W.substring(F+`@${G}`.length),z=!0}return W}return Y=J(Y,"push","endpush",!1),Y=J(Y,"prepend","endprepend",!0),Y}function g6($,Z){return $.replace(/@stack\(['"]([^'"]+)['"]\)/g,(Y,J)=>{if(!Z[J]||Z[J].length===0)return"";return Z[J].join(`
9449
- `)})}var eY=0,KA,pU;var JJ=b(()=>{N7();d4();J1();i5();z5();w0();N0();KA=new x1(500),pU=new Set});import*as h6 from"path";async function XJ($,Z,Y=""){if(h6.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 GJ($,Z,Y,"@js","@endjs")}async function QJ($,Z,Y=""){if(h6.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 GJ($,Z,Y,"@ts","@endts")}async function GJ($,Z,Y,J,X){let Q=$,G=W5(`${J}([\\s\\S]*?)${X}`,"g"),K=[],W;while((W=G.exec($))!==null)K.push({fullMatch:W[0],content:W[1]||"",index:W.index});for(let{fullMatch:z,content:q,index:U}of K)try{let j={...Z,global:Z},_=Object.keys(j),B=Object.values(j),H=q.trim();if(J==="@ts")H=H.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 V=(H.match(/(?:const|let|var)\s+(\w+)\s*=/g)||[]).map((R)=>R.match(/(?:const|let|var)\s+(\w+)/)?.[1]).filter(Boolean),O=V.length>0?`return { ${V.join(", ")} };`:"return {};",F=`
9448
+ `+y;return v}catch(w){let A=w instanceof Error?w.message:String(w);return U0("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=g6(N,0);if(M!==-1)R=N.substring(M+1).trim();let T={};if(R)try{T=T0(R,Z)}catch(E){let D=E instanceof Error?E.message:String(E);K=K.replace(O,U0("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 d6($,Z){let Y=$;function J(X,Q,G,K){let W=X,q=!0;while(q){q=!1;let z=new RegExp(`@${Q}\\(['"]([^'"]+)['"]\\)`),U=W.match(z);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<W.length){let A=W.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=W.slice(B,F);if(!Z[_])Z[_]=[];if(K)Z[_].unshift(w);else Z[_].push(w);W=W.substring(0,j)+W.substring(F+`@${G}`.length),q=!0}return W}return Y=J(Y,"push","endpush",!1),Y=J(Y,"prepend","endprepend",!0),Y}function u6($,Z){return $.replace(/@stack\(['"]([^'"]+)['"]\)/g,(Y,J)=>{if(!Z[J]||Z[J].length===0)return"";return Z[J].join(`
9449
+ `)})}var XJ=0,LA,sU;var WJ=b(()=>{I7();p4();X1();s5();U5();A0();M0();LA=new g1(500),sU=new Set});import*as m6 from"path";async function qJ($,Z,Y=""){if(m6.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 UJ($,Z,Y,"@js","@endjs")}async function zJ($,Z,Y=""){if(m6.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 UJ($,Z,Y,"@ts","@endts")}async function UJ($,Z,Y,J,X){let Q=$,G=z5(`${J}([\\s\\S]*?)${X}`,"g"),K=[],W;while((W=G.exec($))!==null)K.push({fullMatch:W[0],content:W[1]||"",index:W.index});for(let{fullMatch:q,content:z,index:U}of K)try{let j={...Z,global:Z},_=Object.keys(j),B=Object.values(j),H=z.trim();if(J==="@ts")H=H.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 V=(H.match(/(?:const|let|var)\s+(\w+)\s*=/g)||[]).map((R)=>R.match(/(?:const|let|var)\s+(\w+)/)?.[1]).filter(Boolean),O=V.length>0?`return { ${V.join(", ")} };`:"return {};",F=`
9450
9450
  ${H}
9451
9451
  ${O}
9452
- `,A=Function(..._,F)(...B);if(A&&typeof A==="object")Object.assign(Z,A);Q=Q.replace(z,"")}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,z);console.error(B),Q=Q.replace(z,"")}return Q}var KJ=b(()=>{z5();N0()});function cU($,Z="_method"){let Y=$.toUpperCase();if(Y==="GET"||Y==="POST")return"";return`<input type="hidden" name="${Z}" value="${Y}">`}function WJ($){return $.replace(/@method\(\s*(['"])([^'"]+)\1\s*(?:,\s*(['"])([^'"]+)\3\s*)?\)/g,(Z,Y,J,X,Q)=>{return cU(J,Q||"_method")})}async function zJ($,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 W=await K.handler(Q,Z,Y,J);if(typeof W==="string")Q=W;else if(J.debug)console.warn(`Middleware ${K.name} did not return a string`)}catch(W){if(J.debug)console.error(`Error in middleware ${K.name}:`,W);if(J.debug){let z=q0("Middleware",`Error in middleware '${K.name}': ${W instanceof Error?W.message:String(W)}`,Y,$);Q=Q.replace(/<body[^>]*>/,`$&
9453
- <div style="color:red;background:#ffeeee;padding:10px;border:1px solid #ff0000;margin:10px 0;font-family:monospace;white-space:pre-wrap;">${r0(z)}</div>
9454
- `)}}}return Q}async function qJ($,Z,Y,J){return zJ($,Z,Y,J,"before")}async function UJ($,Z,Y,J){return zJ($,Z,Y,J,"after")}var jJ=b(()=>{J1();N0()});import{defineRoute as wA,defineRoutes as AA,resetRoutes as RA,route as NA,setAppUrl as MA}from"stx-router";import{route as iU}from"stx-router";function _J($){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 BJ=b(()=>{w0()});async function HJ($,Z){let Y=$.split("/").pop()?.split(".")[0]||"";if(O$.exact[$])for(let J of O$.exact[$])await Promise.resolve(J(Z,$));if(O$.exact[Y])for(let J of O$.exact[Y])await Promise.resolve(J(Z,$));for(let{pattern:J,callback:X}of O$.patterns)if(J.test($)||J.test(Y))await Promise.resolve(X(Z,$))}var O$;var OJ=b(()=>{O$={patterns:[],exact:{}}});function LJ($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>LJ(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function FJ($,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(z){return X.some(([q,U])=>z>=q&&z<U)}let K=/<([a-zA-Z][a-zA-Z0-9-]*)((?:\s+(?:[^>"']|"[^"]*"|'[^']*'))*)\s*\/?>/g,W=[];while((Q=K.exec(Y))!==null){if(G(Q.index))continue;let z=Q[0],q=Q[2];if(!q||!q.includes(":"))continue;let U=/\s:([a-zA-Z_][\w-]*)\s*=\s*"([^"]*)"/g,j,_=q,B=!1;while((j=U.exec(q))!==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=LJ(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(nU.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=z.endsWith("/>")?" /":"",V=`<${Q[1]}${_}${H}>`;W.push({start:Q.index,end:Q.index+z.length,replacement:V})}}for(let z=W.length-1;z>=0;z--){let{start:q,end:U,replacement:j}=W[z];Y=Y.slice(0,q)+j+Y.slice(U)}return Y}var nU;var VJ=b(()=>{nU=new Set(["disabled","checked","readonly","required","autofocus","autoplay","controls","default","defer","formnovalidate","hidden","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","reversed","selected"])});function r1($,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])||oU.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 rU($,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($),W=G.exec($);if(!W)return-1;if(K&&K.index<W.index)J++,X=K.index+K[0].length;else{if(J--,J===0)return W.index+W[0].length;X=W.index+W[0].length}}return-1}function Q1($,Z){if(Z.selfClosing)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};let Y=rU($,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 wJ($,Z){return new RegExp(`(?:^|\\s)${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?:=|\\s|$|>|/)`).test($)||$.includes(` ${Z}=`)||$.includes(` ${Z} `)||$.trimEnd().endsWith(` ${Z}`)}function N5($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),J=$.match(new RegExp(`${Y}="([^"]*)"`,"s"))||$.match(new RegExp(`${Y}='([^']*)'`,"s"));return J?J[1]:null}function D1($,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 E1($,Z,Y){let J=Z.selfClosing?" /":"",X=`<${Z.tag}${Y}${J}>`;return $.slice(0,Z.start)+X+$.slice(Z.end)}function aU($){return/\bv-(?:if|else-if|else|for|show|model|html|text|pre|once|cloak|memo|bind|on|slot)\b/.test($)}function tU($){let Z=$,Y=0;while(Y<Z.length){let J=r1(Z,Y);if(!J)break;let X=N5(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(),W;if(G.includes(",")){let L=G.split(",").map((F)=>F.trim()),V=L[0],O=L[1];W=`${K} as ${O} => ${V}`}else W=`${K} as ${G}`;let z=D1(J.attrs,"v-for"),q=D1(z,":key").replace(/\s*v-bind:key="[^"]*"/g,""),U=Q1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=E1(j,{...J,start:0,end:J.end-J.start},q),B=`@foreach(${W})
9452
+ `,A=Function(..._,F)(...B);if(A&&typeof A==="object")Object.assign(Z,A);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=U0(`${J} Directive`,`Error executing code: ${_}`,Y,$,U,q);console.error(B),Q=Q.replace(q,"")}return Q}var jJ=b(()=>{U5();M0()});function aU($,Z="_method"){let Y=$.toUpperCase();if(Y==="GET"||Y==="POST")return"";return`<input type="hidden" name="${Z}" value="${Y}">`}function _J($){return $.replace(/@method\(\s*(['"])([^'"]+)\1\s*(?:,\s*(['"])([^'"]+)\3\s*)?\)/g,(Z,Y,J,X,Q)=>{return aU(J,Q||"_method")})}async function BJ($,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 W=await K.handler(Q,Z,Y,J);if(typeof W==="string")Q=W;else if(J.debug)console.warn(`Middleware ${K.name} did not return a string`)}catch(W){if(J.debug)console.error(`Error in middleware ${K.name}:`,W);if(J.debug){let q=U0("Middleware",`Error in middleware '${K.name}': ${W instanceof Error?W.message:String(W)}`,Y,$);Q=Q.replace(/<body[^>]*>/,`$&
9453
+ <div style="color:red;background:#ffeeee;padding:10px;border:1px solid #ff0000;margin:10px 0;font-family:monospace;white-space:pre-wrap;">${a0(q)}</div>
9454
+ `)}}}return Q}async function HJ($,Z,Y,J){return BJ($,Z,Y,J,"before")}async function OJ($,Z,Y,J){return BJ($,Z,Y,J,"after")}var LJ=b(()=>{X1();M0()});import{defineRoute as bA,defineRoutes as SA,resetRoutes as yA,route as PA,setAppUrl as CA}from"stx-router";import{route as tU}from"stx-router";function FJ($){return $.replace(/@route\(\s*(['"])([^'"]+)\1(?:\s*,\s*(\{[^}]+\}))?\s*(?:,\s*(true|false)\s*)?\)/g,(Z,Y,J,X,Q)=>{try{let G=X?T0(X,{}):{};return tU(J,G,Q==="true")}catch(G){return console.error(`Error processing @route directive: ${G}`),"#route-error"}})}var VJ=b(()=>{A0()});async function wJ($,Z){let Y=$.split("/").pop()?.split(".")[0]||"";if(V$.exact[$])for(let J of V$.exact[$])await Promise.resolve(J(Z,$));if(V$.exact[Y])for(let J of V$.exact[Y])await Promise.resolve(J(Z,$));for(let{pattern:J,callback:X}of V$.patterns)if(J.test($)||J.test(Y))await Promise.resolve(X(Z,$))}var V$;var AJ=b(()=>{V$={patterns:[],exact:{}}});function RJ($){if(typeof $==="string")return $;if(Array.isArray($))return $.filter(Boolean).map((Z)=>RJ(Z)).join(" ");if($&&typeof $==="object")return Object.entries($).filter(([,Z])=>Z).map(([Z])=>Z).join(" ");return $?String($):""}function NJ($,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(([z,U])=>q>=z&&q<U)}let K=/<([a-zA-Z][a-zA-Z0-9-]*)((?:\s+(?:[^>"']|"[^"]*"|'[^']*'))*)\s*\/?>/g,W=[];while((Q=K.exec(Y))!==null){if(G(Q.index))continue;let q=Q[0],z=Q[2];if(!z||!z.includes(":"))continue;let U=/\s:([a-zA-Z_][\w-]*)\s*=\s*"([^"]*)"/g,j,_=z,B=!1;while((j=U.exec(z))!==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=RJ(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(eU.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}>`;W.push({start:Q.index,end:Q.index+q.length,replacement:V})}}for(let q=W.length-1;q>=0;q--){let{start:z,end:U,replacement:j}=W[q];Y=Y.slice(0,z)+j+Y.slice(U)}return Y}var eU;var MJ=b(()=>{eU=new Set(["disabled","checked","readonly","required","autofocus","autoplay","controls","default","defer","formnovalidate","hidden","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","reversed","selected"])});function t1($,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])||$j.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 Yj($,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($),W=G.exec($);if(!W)return-1;if(K&&K.index<W.index)J++,X=K.index+K[0].length;else{if(J--,J===0)return W.index+W[0].length;X=W.index+W[0].length}}return-1}function G1($,Z){if(Z.selfClosing)return{outerStart:Z.start,outerEnd:Z.end,innerHTML:""};let Y=Yj($,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 TJ($,Z){return new RegExp(`(?:^|\\s)${Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?:=|\\s|$|>|/)`).test($)||$.includes(` ${Z}=`)||$.includes(` ${Z} `)||$.trimEnd().endsWith(` ${Z}`)}function T5($,Z){let Y=Z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),J=$.match(new RegExp(`${Y}="([^"]*)"`,"s"))||$.match(new RegExp(`${Y}='([^']*)'`,"s"));return J?J[1]:null}function E1($,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 k1($,Z,Y){let J=Z.selfClosing?" /":"",X=`<${Z.tag}${Y}${J}>`;return $.slice(0,Z.start)+X+$.slice(Z.end)}function Jj($){return/\bv-(?:if|else-if|else|for|show|model|html|text|pre|once|cloak|memo|bind|on|slot)\b/.test($)}function Xj($){let Z=$,Y=0;while(Y<Z.length){let J=t1(Z,Y);if(!J)break;let X=T5(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(),W;if(G.includes(",")){let L=G.split(",").map((F)=>F.trim()),V=L[0],O=L[1];W=`${K} as ${O} => ${V}`}else W=`${K} as ${G}`;let q=E1(J.attrs,"v-for"),z=E1(q,":key").replace(/\s*v-bind:key="[^"]*"/g,""),U=G1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=k1(j,{...J,start:0,end:J.end-J.start},z),B=`@foreach(${W})
9455
9455
  `,H=`${B}${_}
9456
- @endforeach`;Z=Z.slice(0,U.outerStart)+H+Z.slice(U.outerEnd),Y=U.outerStart+B.length}return Z}function eU($){let Z=$,Y=0;while(Y<Z.length){let J=r1(Z,Y);if(!J)break;let X=N5(J.attrs,"v-if");if(X===null){Y=J.end;continue}let Q=[],G=Q1(Z,J),K=D1(J.attrs,"v-if"),W=E1(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:W,parsedTag:J});let z=G.outerEnd,q=!0;while(q){let H=Z.slice(z).match(/^\s*/),L=H?H[0].length:0,V=r1(Z,z+L);if(!V){q=!1;break}let O=N5(V.attrs,"v-else-if"),F=wJ(V.attrs,"v-else");if(O!==null){let w=Q1(Z,V),A=D1(V.attrs,"v-else-if"),R=E1(Z.slice(w.outerStart,w.outerEnd),{...V,start:0,end:V.end-V.start},A);Q.push({type:"else-if",expr:O,outerStart:z,outerEnd:w.outerEnd,element:R,parsedTag:V}),z=w.outerEnd}else if(F){let w=Q1(Z,V),A=D1(V.attrs,"v-else"),R=E1(Z.slice(w.outerStart,w.outerEnd),{...V,start:0,end:V.end-V.start},A);Q.push({type:"else",outerStart:z,outerEnd:w.outerEnd,element:R,parsedTag:V}),q=!1}else q=!1}let U=[];for(let H of Q)if(H.type==="if")U.push(`@if(${H.expr})
9456
+ @endforeach`;Z=Z.slice(0,U.outerStart)+H+Z.slice(U.outerEnd),Y=U.outerStart+B.length}return Z}function Qj($){let Z=$,Y=0;while(Y<Z.length){let J=t1(Z,Y);if(!J)break;let X=T5(J.attrs,"v-if");if(X===null){Y=J.end;continue}let Q=[],G=G1(Z,J),K=E1(J.attrs,"v-if"),W=k1(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:W,parsedTag:J});let q=G.outerEnd,z=!0;while(z){let H=Z.slice(q).match(/^\s*/),L=H?H[0].length:0,V=t1(Z,q+L);if(!V){z=!1;break}let O=T5(V.attrs,"v-else-if"),F=TJ(V.attrs,"v-else");if(O!==null){let w=G1(Z,V),A=E1(V.attrs,"v-else-if"),R=k1(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=G1(Z,V),A=E1(V.attrs,"v-else"),R=k1(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}),z=!1}else z=!1}let U=[];for(let H of Q)if(H.type==="if")U.push(`@if(${H.expr})
9457
9457
  ${H.element}`);else if(H.type==="else-if")U.push(`@elseif(${H.expr})
9458
9458
  ${H.element}`);else U.push(`@else
9459
9459
  ${H.element}`);U.push("@endif");let j=U.join(`
9460
- `),_=Q[0].outerStart,B=Q[Q.length-1].outerEnd;Z=Z.slice(0,_)+j+Z.slice(B),Y=_+j.length}return Z}function $j($){return $.replace(/\bv-show="([^"]*)"/g,'@show="$1"')}function Zj($){let Z=$,Y=0;while(Y<Z.length){let J=r1(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 q=K[1],U=K[2],j=K[3];X=X.replace(K[0],""),X+=` :${q}="${j}" @update:${q}="${j} = $event"`,K=X.match(G)}if(Q){let q=Q1(Z,J),U=Z.slice(q.outerStart,q.outerEnd),j=E1(U,{...J,start:0,end:J.end-J.start},X);Z=Z.slice(0,q.outerStart)+j+Z.slice(q.outerEnd),Y=q.outerStart+j.length;continue}let W=N5(J.attrs,"v-model");if(W===null){Y=J.end;continue}if(sU.has(J.tag.toLowerCase())){let q=J.attrs.replace(/\s*v-model="[^"]*"/g,"")+` @model="${W}"`,U=Q1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=E1(j,{...J,start:0,end:J.end-J.start},q);Z=Z.slice(0,U.outerStart)+_+Z.slice(U.outerEnd),Y=U.outerStart+_.length}else{let q=J.attrs.replace(/\s*v-model="[^"]*"/g,"");q+=` :modelValue="${W}" @update:modelValue="${W} = $event"`;let U=Q1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=E1(j,{...J,start:0,end:J.end-J.start},q);Z=Z.slice(0,U.outerStart)+_+Z.slice(U.outerEnd),Y=U.outerStart+_.length}}return Z}function Yj($){return $.replace(/\bv-bind:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'@bind:$1="$2"')}function Jj($){return $.replace(/\bv-on:([a-zA-Z_][a-zA-Z0-9_.-]*)\s*=\s*"([^"]*)"/g,'@$1="$2"')}function Xj($){let Z=$,Y=0;while(Y<Z.length){let J=r1(Z,Y);if(!J)break;let X=N5(J.attrs,"v-html");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=Q1(Z,J),G=D1(J.attrs,"v-html"),K=J.selfClosing?" /":"",W=`<${J.tag}${G}${K}>{!! ${X} !!}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+W+Z.slice(Q.outerEnd),Y=Q.outerStart+W.length}return Z}function Qj($){let Z=$,Y=0;while(Y<Z.length){let J=r1(Z,Y);if(!J)break;let X=N5(J.attrs,"v-text");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=Q1(Z,J),G=D1(J.attrs,"v-text"),K=J.selfClosing?" /":"",W=`<${J.tag}${G}${K}>{{ ${X} }}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+W+Z.slice(Q.outerEnd),Y=Q.outerStart+W.length}return Z}function Gj($){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 Kj($){let Z=$,Y=0;while(Y<Z.length){let J=r1(Z,Y);if(!J)break;if(!wJ(J.attrs,"v-once")){Y=J.end;continue}let X=D1(J.attrs,"v-once"),Q=Q1(Z,J),G=Z.slice(Q.outerStart,Q.outerEnd),W=`@once
9461
- ${E1(G,{...J,start:0,end:J.end-J.start},X)}
9462
- @endonce`;Z=Z.slice(0,Q.outerStart)+W+Z.slice(Q.outerEnd),Y=Q.outerStart+W.length}return Z}function Wj($){return $.replace(/\bv-memo="([^"]*)"/g,'data-stx-memo="$1"')}function zj($){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 AJ($){if(!aU($))return $;let Z=$;return Z=tU(Z),Z=eU(Z),Z=Kj(Z),Z=Yj(Z),Z=Jj(Z),Z=Zj(Z),Z=$j(Z),Z=zj(Z),Z=Xj(Z),Z=Qj(Z),Z=Gj(Z),Z=Wj(Z),Z}var oU,sU;var RJ=b(()=>{oU=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),sU=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 Y7($){return $.replace(/--/g,"- -").replace(/</g,"&lt;").replace(/>/g,"&gt;")}async function NJ($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*)>([\s\S]*?)<\/component>/gi,K=[],W;while((W=G.exec(Q))!==null)K.push({full:W[0],expr:W[1],attrs:W[2],slotContent:W[3],index:W.index});for(let z=K.length-1;z>=0;z--){let q=K[z];try{let U=$0(q.expr,Z);if(!U||typeof U!=="string"){let O=`<!-- dynamic component: could not resolve "${Y7(q.expr)}" -->`;Q=Q.slice(0,q.index)+O+Q.slice(q.index+q.full.length);continue}let j=q.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]=$0(F,Z)}catch{_[O]=F}else _[O]=F}let L=J.componentsDir||"components",V=await u1(U,_,q.slotContent,L,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,q.index)+V+Q.slice(q.index+q.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),_=`<!-- dynamic component error: ${Y7(j)} -->`;Q=Q.slice(0,q.index)+_+Q.slice(q.index+q.full.length)}}return Q=await qj(Q,Z,Y,J,X),Q}async function qj($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*?)\/>/gi,K=[],W;while((W=G.exec(Q))!==null)K.push({full:W[0],expr:W[1],attrs:W[2],index:W.index});for(let z=K.length-1;z>=0;z--){let q=K[z];try{let U=$0(q.expr,Z);if(!U||typeof U!=="string"){let B=`<!-- dynamic component: could not resolve "${Y7(q.expr)}" -->`;Q=Q.slice(0,q.index)+B+Q.slice(q.index+q.full.length);continue}let j=J.componentsDir||"components",_=await u1(U,{},"",j,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,q.index)+_+Q.slice(q.index+q.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),_=`<!-- dynamic component error: ${Y7(j)} -->`;Q=Q.slice(0,q.index)+_+Q.slice(q.index+q.full.length)}}return Q}var MJ=b(()=>{N0();w0()});function TJ($){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>
9463
- ${$.slice(Z)}`}function Uj($){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 W=Q.match(/^<link\b[^>]*>/i);if(W){Z.push(W[0]),Y+=W[0].length;continue}let z=Q.match(/^<meta\b[^>]*>/i);if(z){Z.push(z[0]),Y+=z[0].length;continue}let q=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(q){Z.push(q[0]),Y+=q[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 W=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(W&&Z.includes(W[0])){X+=W[0].length;continue}J+=$[X],X++}return J+=$.slice(Y),{body:J,hoisted:Z}}function jj($,Z={},Y={}){let{title:J="stx App",lang:X="en",meta:Q=[],link:G=[],script:K=[],headRaw:W="",bodyClass:z="",bodyAttrs:q={}}=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(`
9460
+ `),_=Q[0].outerStart,B=Q[Q.length-1].outerEnd;Z=Z.slice(0,_)+j+Z.slice(B),Y=_+j.length}return Z}function Gj($){return $.replace(/\bv-show="([^"]*)"/g,'@show="$1"')}function Kj($){let Z=$,Y=0;while(Y<Z.length){let J=t1(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 z=K[1],U=K[2],j=K[3];X=X.replace(K[0],""),X+=` :${z}="${j}" @update:${z}="${j} = $event"`,K=X.match(G)}if(Q){let z=G1(Z,J),U=Z.slice(z.outerStart,z.outerEnd),j=k1(U,{...J,start:0,end:J.end-J.start},X);Z=Z.slice(0,z.outerStart)+j+Z.slice(z.outerEnd),Y=z.outerStart+j.length;continue}let W=T5(J.attrs,"v-model");if(W===null){Y=J.end;continue}if(Zj.has(J.tag.toLowerCase())){let z=J.attrs.replace(/\s*v-model="[^"]*"/g,"")+` @model="${W}"`,U=G1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=k1(j,{...J,start:0,end:J.end-J.start},z);Z=Z.slice(0,U.outerStart)+_+Z.slice(U.outerEnd),Y=U.outerStart+_.length}else{let z=J.attrs.replace(/\s*v-model="[^"]*"/g,"");z+=` :modelValue="${W}" @update:modelValue="${W} = $event"`;let U=G1(Z,J),j=Z.slice(U.outerStart,U.outerEnd),_=k1(j,{...J,start:0,end:J.end-J.start},z);Z=Z.slice(0,U.outerStart)+_+Z.slice(U.outerEnd),Y=U.outerStart+_.length}}return Z}function Wj($){return $.replace(/\bv-bind:([a-zA-Z_][a-zA-Z0-9_-]*)\s*=\s*"([^"]*)"/g,'@bind:$1="$2"')}function qj($){return $.replace(/\bv-on:([a-zA-Z_][a-zA-Z0-9_.-]*)\s*=\s*"([^"]*)"/g,'@$1="$2"')}function zj($){let Z=$,Y=0;while(Y<Z.length){let J=t1(Z,Y);if(!J)break;let X=T5(J.attrs,"v-html");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=G1(Z,J),G=E1(J.attrs,"v-html"),K=J.selfClosing?" /":"",W=`<${J.tag}${G}${K}>{!! ${X} !!}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+W+Z.slice(Q.outerEnd),Y=Q.outerStart+W.length}return Z}function Uj($){let Z=$,Y=0;while(Y<Z.length){let J=t1(Z,Y);if(!J)break;let X=T5(J.attrs,"v-text");if(X===null){Y=J.end;continue}if(J.selfClosing){Y=J.end;continue}let Q=G1(Z,J),G=E1(J.attrs,"v-text"),K=J.selfClosing?" /":"",W=`<${J.tag}${G}${K}>{{ ${X} }}</${J.tag}>`;Z=Z.slice(0,Q.outerStart)+W+Z.slice(Q.outerEnd),Y=Q.outerStart+W.length}return Z}function jj($){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 _j($){let Z=$,Y=0;while(Y<Z.length){let J=t1(Z,Y);if(!J)break;if(!TJ(J.attrs,"v-once")){Y=J.end;continue}let X=E1(J.attrs,"v-once"),Q=G1(Z,J),G=Z.slice(Q.outerStart,Q.outerEnd),W=`@once
9461
+ ${k1(G,{...J,start:0,end:J.end-J.start},X)}
9462
+ @endonce`;Z=Z.slice(0,Q.outerStart)+W+Z.slice(Q.outerEnd),Y=Q.outerStart+W.length}return Z}function Bj($){return $.replace(/\bv-memo="([^"]*)"/g,'data-stx-memo="$1"')}function Hj($){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 IJ($){if(!Jj($))return $;let Z=$;return Z=Xj(Z),Z=Qj(Z),Z=_j(Z),Z=Wj(Z),Z=qj(Z),Z=Kj(Z),Z=Gj(Z),Z=Hj(Z),Z=zj(Z),Z=Uj(Z),Z=jj(Z),Z=Bj(Z),Z}var $j,Zj;var DJ=b(()=>{$j=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),Zj=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 Q7($){return $.replace(/--/g,"- -").replace(/</g,"&lt;").replace(/>/g,"&gt;")}async function EJ($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*)>([\s\S]*?)<\/component>/gi,K=[],W;while((W=G.exec(Q))!==null)K.push({full:W[0],expr:W[1],attrs:W[2],slotContent:W[3],index:W.index});for(let q=K.length-1;q>=0;q--){let z=K[q];try{let U=Z0(z.expr,Z);if(!U||typeof U!=="string"){let O=`<!-- dynamic component: could not resolve "${Q7(z.expr)}" -->`;Q=Q.slice(0,z.index)+O+Q.slice(z.index+z.full.length);continue}let j=z.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]=Z0(F,Z)}catch{_[O]=F}else _[O]=F}let L=J.componentsDir||"components",V=await p1(U,_,z.slotContent,L,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,z.index)+V+Q.slice(z.index+z.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),_=`<!-- dynamic component error: ${Q7(j)} -->`;Q=Q.slice(0,z.index)+_+Q.slice(z.index+z.full.length)}}return Q=await Oj(Q,Z,Y,J,X),Q}async function Oj($,Z,Y,J,X){let Q=$,G=/<component\s+(?::is|v-bind:is)\s*=\s*"([^"]*)"([^>]*?)\/>/gi,K=[],W;while((W=G.exec(Q))!==null)K.push({full:W[0],expr:W[1],attrs:W[2],index:W.index});for(let q=K.length-1;q>=0;q--){let z=K[q];try{let U=Z0(z.expr,Z);if(!U||typeof U!=="string"){let B=`<!-- dynamic component: could not resolve "${Q7(z.expr)}" -->`;Q=Q.slice(0,z.index)+B+Q.slice(z.index+z.full.length);continue}let j=J.componentsDir||"components",_=await p1(U,{},"",j,Z,Y,J,new Set,X??new Set);Q=Q.slice(0,z.index)+_+Q.slice(z.index+z.full.length)}catch(U){let j=U instanceof Error?U.message:String(U),_=`<!-- dynamic component error: ${Q7(j)} -->`;Q=Q.slice(0,z.index)+_+Q.slice(z.index+z.full.length)}}return Q}var kJ=b(()=>{M0();A0()});function bJ($){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>
9463
+ ${$.slice(Z)}`}function Lj($){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 W=Q.match(/^<link\b[^>]*>/i);if(W){Z.push(W[0]),Y+=W[0].length;continue}let q=Q.match(/^<meta\b[^>]*>/i);if(q){Z.push(q[0]),Y+=q[0].length;continue}let z=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(z){Z.push(z[0]),Y+=z[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 W=Q.match(/^<style\b[^>]*>[\s\S]*?<\/style>/i);if(W&&Z.includes(W[0])){X+=W[0].length;continue}J+=$[X],X++}return J+=$.slice(Y),{body:J,hoisted:Z}}function Fj($,Z={},Y={}){let{title:J="stx App",lang:X="en",meta:Q=[],link:G=[],script:K=[],headRaw:W="",bodyClass:q="",bodyAttrs:z={}}=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(`
9464
9464
  `),H=G.map((N)=>{return` <link ${Object.entries(N).map(([T,I])=>`${T}="${I}"`).join(" ")}>`}).join(`
9465
9465
  `),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(`
9466
- `),V=Object.entries(q).map(([N,M])=>` ${N}="${M}"`).join(""),O=z?` class="${z}"`:"",{body:F,hoisted:w}=Uj($),A=[B,` <title>${U}</title>`," <style data-stx-cloak>[x-cloak]{display:none !important}</style>",H,L,W?` ${W}`:"",...(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>
9466
+ `),V=Object.entries(z).map(([N,M])=>` ${N}="${M}"`).join(""),O=q?` class="${q}"`:"",{body:F,hoisted:w}=Lj($),A=[B,` <title>${U}</title>`," <style data-stx-cloak>[x-cloak]{display:none !important}</style>",H,L,W?` ${W}`:"",...(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>
9467
9467
  <html lang="${X}">
9468
9468
  <head>
9469
9469
  ${A.join(`
@@ -9473,37 +9473,37 @@ ${A.join(`
9473
9473
  ${R.join(`
9474
9474
  `)}
9475
9475
  </body>
9476
- </html>`}function d6($){return/<!DOCTYPE\b/i.test($)||/<html[\s>]/i.test($)}function IJ($,Z={}){let Y=$.lastIndexOf("</head>");if(Y===-1)return $;let{meta:J=[],link:X=[],script:Q=[],headRaw:G=""}=Z,K=$.slice(0,Y),W=[];for(let z of J){let q=z.name?`name="${z.name}"`:z.property?`property="${z.property}"`:z.charset!=null?"charset=":z["http-equiv"]?`http-equiv="${z["http-equiv"]}"`:"";if(q&&K.includes(q))continue;W.push(` <meta ${Object.entries(z).map(([U,j])=>`${U}="${j}"`).join(" ")}>`)}for(let z of X){if(z.href&&K.includes(`href="${z.href}"`))continue;W.push(` <link ${Object.entries(z).map(([q,U])=>`${q}="${U}"`).join(" ")}>`)}for(let z of Q)if(z.src){if(K.includes(`src="${z.src}"`))continue;W.push(` <script ${Object.entries(z).filter(([q])=>q!=="content").map(([q,U])=>`${q}="${U}"`).join(" ")}></script>`)}else if(z.content){if(K.includes(z.content))continue;W.push(` <script>${z.content}</script>`)}if(G&&!K.includes(G))W.push(` ${G}`);if(W.length===0)return $;return`${$.slice(0,Y)}${W.join(`
9476
+ </html>`}function p6($){return/<!DOCTYPE\b/i.test($)||/<html[\s>]/i.test($)}function SJ($,Z={}){let Y=$.lastIndexOf("</head>");if(Y===-1)return $;let{meta:J=[],link:X=[],script:Q=[],headRaw:G=""}=Z,K=$.slice(0,Y),W=[];for(let q of J){let z=q.name?`name="${q.name}"`:q.property?`property="${q.property}"`:q.charset!=null?"charset=":q["http-equiv"]?`http-equiv="${q["http-equiv"]}"`:"";if(z&&K.includes(z))continue;W.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;W.push(` <link ${Object.entries(q).map(([z,U])=>`${z}="${U}"`).join(" ")}>`)}for(let q of Q)if(q.src){if(K.includes(`src="${q.src}"`))continue;W.push(` <script ${Object.entries(q).filter(([z])=>z!=="content").map(([z,U])=>`${z}="${U}"`).join(" ")}></script>`)}else if(q.content){if(K.includes(q.content))continue;W.push(` <script>${q.content}</script>`)}if(G&&!K.includes(G))W.push(` ${G}`);if(W.length===0)return $;return`${$.slice(0,Y)}${W.join(`
9477
9477
  `)}
9478
- ${$.slice(Y)}`}function DJ($,Z={},Y={}){if(d6($))return $;return jj($,Z,Y)}import M5 from"path";function EJ($){return $.startsWith("http://")||$.startsWith("https://")||$.startsWith("//")}async function kJ($,Z,Y){try{let J;if($.startsWith("/")){let X=Z;for(let Q=0;Q<5;Q++){let G=M5.join(X,$);if(await Bun.file(G).exists())return G;X=M5.dirname(X)}J=M5.join(Z,$)}else if($.startsWith("./")||$.startsWith("../"))J=M5.resolve(Z,$);else J=M5.resolve(Z,$);if(await Bun.file(J).exists())return J;return null}catch{return null}}async function bJ($,Z,Y){let J=$,X=M5.dirname(Z),Q=/<script\b([^>]*)src=["']([^"']+)["']([^>]*)><\/script>/gi,G;while((G=Q.exec(J))!==null){let[z,q,U,j]=G;if(EJ(U))continue;let _=await kJ(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:l0()});if(L.outputs.length>0)B=await L.outputs[0].text()}let H=`<script>
9478
+ ${$.slice(Y)}`}function yJ($,Z={},Y={}){if(p6($))return $;return Fj($,Z,Y)}import I5 from"path";function PJ($){return $.startsWith("http://")||$.startsWith("https://")||$.startsWith("//")}async function CJ($,Z,Y){try{let J;if($.startsWith("/")){let X=Z;for(let Q=0;Q<5;Q++){let G=I5.join(X,$);if(await Bun.file(G).exists())return G;X=I5.dirname(X)}J=I5.join(Z,$)}else if($.startsWith("./")||$.startsWith("../"))J=I5.resolve(Z,$);else J=I5.resolve(Z,$);if(await Bun.file(J).exists())return J;return null}catch{return null}}async function vJ($,Z,Y){let J=$,X=I5.dirname(Z),Q=/<script\b([^>]*)src=["']([^"']+)["']([^>]*)><\/script>/gi,G;while((G=Q.exec(J))!==null){let[q,z,U,j]=G;if(PJ(U))continue;let _=await CJ(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:c0()});if(L.outputs.length>0)B=await L.outputs[0].text()}let H=`<script>
9479
9479
  // Source: ${U}
9480
9480
  ${B}
9481
- </script>`;J=J.replace(z,H),Q.lastIndex=0}catch(B){}}let K=/<link\b([^>]*)href=["']([^"']+)["']([^>]*)(?:\/?>)/gi,W;while((W=K.exec(J))!==null){let[z,q,U,j]=W,_=q+j;if(EJ(U))continue;if(/rel=["']stylesheet["']/.test(_)||U.endsWith(".css")){let H=await kJ(U,X,Z);if(H)try{let L=await Bun.file(H).text();Y.add(H);let V=`<style>
9481
+ </script>`;J=J.replace(q,H),Q.lastIndex=0}catch(B){}}let K=/<link\b([^>]*)href=["']([^"']+)["']([^>]*)(?:\/?>)/gi,W;while((W=K.exec(J))!==null){let[q,z,U,j]=W,_=z+j;if(PJ(U))continue;if(/rel=["']stylesheet["']/.test(_)||U.endsWith(".css")){let H=await CJ(U,X,Z);if(H)try{let L=await Bun.file(H).text();Y.add(H);let V=`<style>
9482
9482
  /* Source: ${U} */
9483
9483
  ${L}
9484
- </style>`;J=J.replace(z,V),K.lastIndex=0}catch(L){}}}return J}var SJ=b(()=>{S1()});function u6($,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,W=G+1,z=null,q=!1;while(W<Y.length&&K>0){let F=Y[W];if(q){q=!1,W++;continue}if(F==="\\"&&z){q=!0,W++;continue}if(z){if(F===z)z=null;W++;continue}if(F==='"'||F==="'"||F==="`"){z=F,W++;continue}if(F==="(")K++;else if(F===")"){if(K--,K===0)break}W++}if(K!==0)break;let U=Y.substring(G+1,W).trim(),j=Y.substring(Q,W+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(K0(F))w=W0(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(W+1),J.lastIndex=Q+R.length}catch(F){t0.log(F instanceof Error?F:Error(String(F)),{directive:"@json"},"error"),J.lastIndex=Q+j.length}}return Y}function m6($){return $.replace(/@once\s*([\s\S]*?)@endonce/g,"$1")}function yJ($){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,W=G;while(W<Z.length&&K>0){if(Z[W]==="(")K++;else if(Z[W]===")")K--;W++}if(K!==0)continue;let z=Z.slice(G,W-1).trim(),q=W,U=Z.slice(q),j=U.indexOf("@endmemo");if(j===-1)continue;let _=U.slice(0,j),B=q+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="${z}"${I}>`;R=_.slice(0,L)+E+w.slice(N.length)+_.slice(L+w.length)}else R=`${_.slice(0,L)}<div data-stx-memo="${z}">${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 p6($){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 PJ($){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,W=!1,z=!1,q=-1;while(K<$.length){let H=$[K];if(W){if(H==="'")W=!1}else if(z){if(H==='"')z=!1}else if(H==="'")W=!0;else if(H==='"')z=!0;else if(H===">"){q=K;break}K++}if(q===-1)continue;if($.slice(G,q+1).includes("x-cloak"))continue;let j=$.slice(q+1),_=j.indexOf("</"),B=_>=0?j.slice(0,_):j.slice(0,200);if(/\{\{[\s\S]*?\}\}/.test(B))J+=$.slice(X,q)+" x-cloak>",X=q+1}return J+=$.slice(X),J}function CJ($){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,W=!1,z=!1,q=-1;while(K<$.length){let B=$[K];if(W){if(B==="'")W=!1}else if(z){if(B==='"')z=!1}else if(B==="'")W=!0;else if(B==='"')z=!0;else if(B===">"){q=K;break}K++}if(q===-1)continue;let U=$.slice(Q+X[0].length,q);if(/(?:^|\s)x-cloak(?:=|\s|\/|>|$)/.test(U))continue;if(!_j.test(U))continue;let j=$[q-1]==="/",_=j?q-1:q;Y+=`${$.slice(J,_)} x-cloak${j?" ":""}`,J=_}return Y+=$.slice(J),Y}var _j;var l6=b(()=>{q1();w0();_j=/(?:^|\s)(?::else-if|:if|:else|:show|x-else-if|x-if|x-else|x-show|@if|@show)(?:=|\s|\/|>|$)/});function c6($,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:W}of Bj){if(X.some((q)=>K.includes(q)||G.source.includes(q)))continue;G.lastIndex=0;let z=$.match(G);if(z&&z.length>0){let q=$.split(`
9485
- `),U=[];q.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}
9484
+ </style>`;J=J.replace(q,V),K.lastIndex=0}catch(L){}}}return J}var xJ=b(()=>{y1()});function l6($,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,W=G+1,q=null,z=!1;while(W<Y.length&&K>0){let F=Y[W];if(z){z=!1,W++;continue}if(F==="\\"&&q){z=!0,W++;continue}if(q){if(F===q)q=null;W++;continue}if(F==='"'||F==="'"||F==="`"){q=F,W++;continue}if(F==="(")K++;else if(F===")"){if(K--,K===0)break}W++}if(K!==0)break;let U=Y.substring(G+1,W).trim(),j=Y.substring(Q,W+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(W0(F))w=q0(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(W+1),J.lastIndex=Q+R.length}catch(F){e0.log(F instanceof Error?F:Error(String(F)),{directive:"@json"},"error"),J.lastIndex=Q+j.length}}return Y}function c6($){return $.replace(/@once\s*([\s\S]*?)@endonce/g,"$1")}function fJ($){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,W=G;while(W<Z.length&&K>0){if(Z[W]==="(")K++;else if(Z[W]===")")K--;W++}if(K!==0)continue;let q=Z.slice(G,W-1).trim(),z=W,U=Z.slice(z),j=U.indexOf("@endmemo");if(j===-1)continue;let _=U.slice(0,j),B=z+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 i6($){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 gJ($){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,W=!1,q=!1,z=-1;while(K<$.length){let H=$[K];if(W){if(H==="'")W=!1}else if(q){if(H==='"')q=!1}else if(H==="'")W=!0;else if(H==='"')q=!0;else if(H===">"){z=K;break}K++}if(z===-1)continue;if($.slice(G,z+1).includes("x-cloak"))continue;let j=$.slice(z+1),_=j.indexOf("</"),B=_>=0?j.slice(0,_):j.slice(0,200);if(/\{\{[\s\S]*?\}\}/.test(B))J+=$.slice(X,z)+" x-cloak>",X=z+1}return J+=$.slice(X),J}function hJ($){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,W=!1,q=!1,z=-1;while(K<$.length){let B=$[K];if(W){if(B==="'")W=!1}else if(q){if(B==='"')q=!1}else if(B==="'")W=!0;else if(B==='"')q=!0;else if(B===">"){z=K;break}K++}if(z===-1)continue;let U=$.slice(Q+X[0].length,z);if(/(?:^|\s)x-cloak(?:=|\s|\/|>|$)/.test(U))continue;if(!Vj.test(U))continue;let j=$[z-1]==="/",_=j?z-1:z;Y+=`${$.slice(J,_)} x-cloak${j?" ":""}`,J=_}return Y+=$.slice(J),Y}var Vj;var n6=b(()=>{U1();A0();Vj=/(?:^|\s)(?::else-if|:if|:else|:show|x-else-if|x-if|x-else|x-show|@if|@show)(?:=|\s|\/|>|$)/});function o6($,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:W}of wj){if(X.some((z)=>K.includes(z)||G.source.includes(z)))continue;G.lastIndex=0;let q=$.match(G);if(q&&q.length>0){let z=$.split(`
9485
+ `),U=[];z.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}
9486
9486
  \u2192 ${W}`)}}if(Q.length>0&&J.enabled){let K=`[STX] DOM API violation in ${Z.split("/").pop()||Z}:
9487
9487
  ${Q.join(`
9488
9488
  `)}
9489
- Tip: prefer useRef(), navigate(), and composables for component code`;if(J.failOnViolation)throw Error(K);else console.warn(K)}}var Bj;var i6=b(()=>{Bj=[{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 vJ={};a(vJ,{getStoreScript:()=>Hj,clearStoreCache:()=>Oj});import J7 from"path";async function Hj($){let Z;if($)Z=J7.resolve($);else{let q=await U1();Z=J7.resolve(q.root||process.cwd(),q.storesDir||"stores")}let Y=T5.get(Z);if(Y!==void 0)return Y||null;let J=new Bun.Glob("*.ts"),X=[];try{for await(let q of J.scan({cwd:Z,absolute:!0})){let U=J7.basename(q,".ts");if(["index","types"].includes(U))continue;if(q.includes(".d.ts"))continue;X.push(q)}}catch{return T5.set(Z,""),null}if(X.length===0)return T5.set(Z,""),null;let Q=[];for(let q of X){let U=await Bun.file(q).text();Q.push({file:q,hasUseStore:/useStore\s*\(/.test(U)})}Q.sort((q,U)=>{if(q.hasUseStore===U.hasUseStore)return 0;return q.hasUseStore?1:-1});let G=Q.map((q)=>q.file),K=[],W=new Bun.Transpiler({loader:"ts",target:"browser",define:l0()});for(let q of G)try{let U=await Bun.file(q).text(),j=J7.basename(q,".ts");U=U.replace(/^import\s+.*from\s+['"][^'"]+['"]\s*;?\s*$/gm,""),U=U.replace(/^export\s+(default\s+)?/gm,""),U=W.transformSync(U),K.push(`// Store: ${j}
9490
- ${U.trim()}`)}catch(U){console.warn(`[stx] Failed to load store ${q}:`,U)}if(K.length===0)return T5.set(Z,""),null;let z=`;(function(){
9489
+ Tip: prefer useRef(), navigate(), and composables for component code`;if(J.failOnViolation)throw Error(K);else console.warn(K)}}var wj;var s6=b(()=>{wj=[{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 dJ={};a(dJ,{getStoreScript:()=>Aj,clearStoreCache:()=>Rj});import G7 from"path";async function Aj($){let Z;if($)Z=G7.resolve($);else{let z=await j1();Z=G7.resolve(z.root||process.cwd(),z.storesDir||"stores")}let Y=D5.get(Z);if(Y!==void 0)return Y||null;let J=new Bun.Glob("*.ts"),X=[];try{for await(let z of J.scan({cwd:Z,absolute:!0})){let U=G7.basename(z,".ts");if(["index","types"].includes(U))continue;if(z.includes(".d.ts"))continue;X.push(z)}}catch{return D5.set(Z,""),null}if(X.length===0)return D5.set(Z,""),null;let Q=[];for(let z of X){let U=await Bun.file(z).text();Q.push({file:z,hasUseStore:/useStore\s*\(/.test(U)})}Q.sort((z,U)=>{if(z.hasUseStore===U.hasUseStore)return 0;return z.hasUseStore?1:-1});let G=Q.map((z)=>z.file),K=[],W=new Bun.Transpiler({loader:"ts",target:"browser",define:c0()});for(let z of G)try{let U=await Bun.file(z).text(),j=G7.basename(z,".ts");U=U.replace(/^import\s+.*from\s+['"][^'"]+['"]\s*;?\s*$/gm,""),U=U.replace(/^export\s+(default\s+)?/gm,""),U=W.transformSync(U),K.push(`// Store: ${j}
9490
+ ${U.trim()}`)}catch(U){console.warn(`[stx] Failed to load store ${z}:`,U)}if(K.length===0)return D5.set(Z,""),null;let q=`;(function(){
9491
9491
  ${K.join(`
9492
9492
 
9493
9493
  `)}
9494
- })();`;return T5.set(Z,z),z}function Oj(){T5.clear()}var T5;var xJ=b(()=>{i1();S1();T5=new Map});var gJ={};a(gJ,{getComposableScript:()=>wj,clearComposableCache:()=>Aj});import L$ from"path";function fJ($){let Z=L$.basename($,".ts");return Z==="index"||Z==="types"||$.endsWith(".d.ts")}async function Fj($){if($)return L$.resolve($);let Z=`<default>:${process.cwd()}`,Y=n6.get(Z);if(Y!==void 0)return Y;let J=await Vj();return n6.set(Z,J),J}async function Vj(){let $=await U1(),Z=$.root||process.cwd(),Y=$.composablesDir;if(Y)return L$.resolve(Z,Y);for(let J of Lj){let X=L$.resolve(Z,J);try{let Q=new Bun.Glob("**/*.ts");for await(let G of Q.scan({cwd:X,absolute:!0}))if(!fJ(G))return X}catch{}}return null}async function wj($){let Z=await Fj($);if(!Z)return null;let Y=I5.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(fJ(B))continue;J.push(B)}}catch{return I5.set(Z,""),null}if(J.length===0)return I5.set(Z,""),null;J.sort();let X=new Bun.Transpiler({loader:"ts",target:"browser",define:l0()}),Q=[],G=new Set,K=new Set;for(let _ of J)try{let B=await Bun.file(_).text(),H=L$.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=s0(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}
9495
- ${B.trim()}`)}catch(B){console.warn(`[stx] Failed to load composable ${_}:`,B)}if(Q.length===0||G.size===0)return I5.set(Z,""),null;let W=[...G].map((_)=>` try { __c[${JSON.stringify(_)}] = ${_}; } catch (e) {}`).join(`
9496
- `),z=JSON.stringify([...G]),q=Q.join(`
9494
+ })();`;return D5.set(Z,q),q}function Rj(){D5.clear()}var D5;var uJ=b(()=>{o1();y1();D5=new Map});var pJ={};a(pJ,{getComposableScript:()=>Ij,clearComposableCache:()=>Dj});import w$ from"path";function mJ($){let Z=w$.basename($,".ts");return Z==="index"||Z==="types"||$.endsWith(".d.ts")}async function Mj($){if($)return w$.resolve($);let Z=`<default>:${process.cwd()}`,Y=r6.get(Z);if(Y!==void 0)return Y;let J=await Tj();return r6.set(Z,J),J}async function Tj(){let $=await j1(),Z=$.root||process.cwd(),Y=$.composablesDir;if(Y)return w$.resolve(Z,Y);for(let J of Nj){let X=w$.resolve(Z,J);try{let Q=new Bun.Glob("**/*.ts");for await(let G of Q.scan({cwd:X,absolute:!0}))if(!mJ(G))return X}catch{}}return null}async function Ij($){let Z=await Mj($);if(!Z)return null;let Y=E5.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(mJ(B))continue;J.push(B)}}catch{return E5.set(Z,""),null}if(J.length===0)return E5.set(Z,""),null;J.sort();let X=new Bun.Transpiler({loader:"ts",target:"browser",define:c0()}),Q=[],G=new Set,K=new Set;for(let _ of J)try{let B=await Bun.file(_).text(),H=w$.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=r0(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}
9495
+ ${B.trim()}`)}catch(B){console.warn(`[stx] Failed to load composable ${_}:`,B)}if(Q.length===0||G.size===0)return E5.set(Z,""),null;let W=[...G].map((_)=>` try { __c[${JSON.stringify(_)}] = ${_}; } catch (e) {}`).join(`
9496
+ `),q=JSON.stringify([...G]),z=Q.join(`
9497
9497
 
9498
9498
  `),j=`;(function(){
9499
9499
  window.__composables = window.__composables || {};
9500
9500
  var __c = window.__composables;
9501
9501
  var __stx = window.stx || {};
9502
- ${b$.filter((_)=>!K.has(_)&&new RegExp(`\\b${_}\\b`).test(q)).map((_)=>`var ${_} = __stx[${JSON.stringify(_)}];`).join(`
9502
+ ${P$.filter((_)=>!K.has(_)&&new RegExp(`\\b${_}\\b`).test(z)).map((_)=>`var ${_} = __stx[${JSON.stringify(_)}];`).join(`
9503
9503
  `)}
9504
- ${q}
9504
+ ${z}
9505
9505
  ${W}
9506
- var __names = ${z};
9506
+ var __names = ${q};
9507
9507
  for (var __i = 0; __i < __names.length; __i++) {
9508
9508
  var __n = __names[__i];
9509
9509
  if (!(__n in __c)) continue;
@@ -9516,7 +9516,7 @@ ${W}
9516
9516
  }
9517
9517
  window[__n] = __c[__n];
9518
9518
  }
9519
- })();`;return I5.set(Z,j),j}function Aj(){I5.clear(),n6.clear()}var I5,n6,Lj;var hJ=b(()=>{i1();S1();i5();I5=new Map,n6=new Map,Lj=["composables","functions"]});var uJ={};a(uJ,{processDeferDirectives:()=>Ij});function Rj(){return`stx-defer-${++dJ}`}function Nj($){let Z=$.match(/on:\s*['"]?(\w+)(?:\((\d+)\))?['"]?/);if(Z)return{trigger:Z[1],value:Z[2]};return{trigger:"immediate"}}function Mj($,Z,Y){let{trigger:J,value:X}=Nj(Z),Q=Y,G,K,W,z=Y.match(/@placeholder\s*([\s\S]*?)(?=@loading|@error|$)/);if(z)G=z[1].trim(),Q=Q.replace(/@placeholder[\s\S]*?(?=@loading|@error|$)/,"");let q=Y.match(/@loading\s*([\s\S]*?)(?=@error|$)/);if(q)K=q[1].trim(),Q=Q.replace(/@loading[\s\S]*?(?=@error|$)/,"");let U=Y.match(/@error(?:\s*\(\s*(\w+)\s*\))?\s*([\s\S]*)$/);if(U)W=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:W}}function Tj($,Z){let{trigger:Y,triggerValue:J}=Z,X;switch(Y){case"visible":X=`
9519
+ })();`;return E5.set(Z,j),j}function Dj(){E5.clear(),r6.clear()}var E5,r6,Nj;var lJ=b(()=>{o1();y1();s5();E5=new Map,r6=new Map,Nj=["composables","functions"]});var iJ={};a(iJ,{processDeferDirectives:()=>yj});function Ej(){return`stx-defer-${++cJ}`}function kj($){let Z=$.match(/on:\s*['"]?(\w+)(?:\((\d+)\))?['"]?/);if(Z)return{trigger:Z[1],value:Z[2]};return{trigger:"immediate"}}function bj($,Z,Y){let{trigger:J,value:X}=kj(Z),Q=Y,G,K,W,q=Y.match(/@placeholder\s*([\s\S]*?)(?=@loading|@error|$)/);if(q)G=q[1].trim(),Q=Q.replace(/@placeholder[\s\S]*?(?=@loading|@error|$)/,"");let z=Y.match(/@loading\s*([\s\S]*?)(?=@error|$)/);if(z)K=z[1].trim(),Q=Q.replace(/@loading[\s\S]*?(?=@error|$)/,"");let U=Y.match(/@error(?:\s*\(\s*(\w+)\s*\))?\s*([\s\S]*)$/);if(U)W=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:W}}function Sj($,Z){let{trigger:Y,triggerValue:J}=Z,X;switch(Y){case"visible":X=`
9520
9520
  const observer = new IntersectionObserver((entries) => {
9521
9521
  if (entries[0].isIntersecting) {
9522
9522
  observer.disconnect();
@@ -9589,15 +9589,15 @@ else {
9589
9589
  ${X}
9590
9590
  })();
9591
9591
  </script>
9592
- `}function Ij($,Z,Y){dJ=0;let J=/@defer\s*\(([^)]*)\)\s*([\s\S]*?)@enddefer/g;return $.replace(J,(X,Q,G)=>{let K=Rj(),W=Mj(X,Q,G),z=W.placeholder?`<div data-defer-placeholder>${W.placeholder}</div>`:"",q=W.loading?`<div data-defer-loading style="display: none;">${W.loading}</div>`:'<div data-defer-loading style="display: none;"></div>',U=W.error?`<div data-defer-error style="display: none;">${W.error}</div>`:"",j=`<div data-defer-content style="display: none;">${W.content}</div>`,_=Tj(K,W);return`
9592
+ `}function yj($,Z,Y){cJ=0;let J=/@defer\s*\(([^)]*)\)\s*([\s\S]*?)@enddefer/g;return $.replace(J,(X,Q,G)=>{let K=Ej(),W=bj(X,Q,G),q=W.placeholder?`<div data-defer-placeholder>${W.placeholder}</div>`:"",z=W.loading?`<div data-defer-loading style="display: none;">${W.loading}</div>`:'<div data-defer-loading style="display: none;"></div>',U=W.error?`<div data-defer-error style="display: none;">${W.error}</div>`:"",j=`<div data-defer-content style="display: none;">${W.content}</div>`,_=Sj(K,W);return`
9593
9593
  <div id="${K}" class="stx-defer" data-defer-trigger="${W.trigger}">
9594
- ${z}
9595
9594
  ${q}
9595
+ ${z}
9596
9596
  ${j}
9597
9597
  ${U}
9598
9598
  </div>
9599
9599
  ${_}
9600
- `})}var dJ=0;var pJ={};a(pJ,{processTeleportDirectives:()=>bj,ensureTeleportTargets:()=>Sj});function Dj(){return`stx-teleport-${++mJ}`}function Ej($){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 kj($,Z){return`
9600
+ `})}var cJ=0;var oJ={};a(oJ,{processTeleportDirectives:()=>xj,ensureTeleportTargets:()=>fj});function Pj(){return`stx-teleport-${++nJ}`}function Cj($){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 vj($,Z){return`
9601
9601
  <script>
9602
9602
  (function() {
9603
9603
  const source = document.getElementById('${$}');
@@ -9643,12 +9643,12 @@ else {
9643
9643
  });
9644
9644
  })();
9645
9645
  </script>
9646
- `}function bj($,Z,Y){mJ=0;let J=/@teleport\s*\(([^)]+)\)\s*([\s\S]*?)@endteleport/g;return $.replace(J,(X,Q,G)=>{let K=Dj(),{target:W,disabled:z}=Ej(Q),q=G.trim();if(z)try{let j=!1;if(z==="true")j=!0;else if(z==="false")j=!1;else if(z in Z)j=Boolean(Z[z]);if(j)return`<div class="stx-teleport-inline" data-teleport-disabled>${q}</div>`}catch{}let U=kj(K,W);return`
9646
+ `}function xj($,Z,Y){nJ=0;let J=/@teleport\s*\(([^)]+)\)\s*([\s\S]*?)@endteleport/g;return $.replace(J,(X,Q,G)=>{let K=Pj(),{target:W,disabled:q}=Cj(Q),z=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>${z}</div>`}catch{}let U=vj(K,W);return`
9647
9647
  <div id="${K}" class="stx-teleport-source" style="display: none;">
9648
- <template>${q}</template>
9648
+ <template>${z}</template>
9649
9649
  </div>
9650
9650
  ${U}
9651
- `})}function Sj(){return`
9651
+ `})}function fj(){return`
9652
9652
  <script>
9653
9653
  (function() {
9654
9654
  // Common teleport targets
@@ -9665,23 +9665,23 @@ else {
9665
9665
  });
9666
9666
  })();
9667
9667
  </script>
9668
- `}var mJ=0;var nJ={};a(nJ,{processTransitionDirectives:()=>vj,processTransitionAttributes:()=>hj,performLeave:()=>Cj,performEnter:()=>Pj,generateTransitionRuntime:()=>gj,generateTransitionCSS:()=>fj});function lJ($,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 yj($){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 cJ($,Z){return new Promise((Y)=>{let J=Z??yj($);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 iJ($){$.offsetHeight}async function Pj($,Z={}){let Y=Z.name||"stx",J=lJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.enter:Z.duration;if(Z.onBeforeEnter?.($),$.classList.add(J.enterFrom),$.classList.add(J.enterActive),iJ($),$.classList.remove(J.enterFrom),$.classList.add(J.enterTo),Z.onEnter)await new Promise((Q)=>{Z.onEnter($,Q)});else await cJ($,X);$.classList.remove(J.enterActive),$.classList.remove(J.enterTo),Z.onAfterEnter?.($)}async function Cj($,Z={}){let Y=Z.name||"stx",J=lJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.leave:Z.duration;if(Z.onBeforeLeave?.($),$.classList.add(J.leaveFrom),$.classList.add(J.leaveActive),iJ($),$.classList.remove(J.leaveFrom),$.classList.add(J.leaveTo),Z.onLeave)await new Promise((Q)=>{Z.onLeave($,Q)});else await cJ($,X);$.classList.remove(J.leaveActive),$.classList.remove(J.leaveTo),Z.onAfterLeave?.($)}function vj($,Z={},Y){let J=/@transition\s*\(([^)]*)\)([\s\S]*?)@endtransition/gi;return $.replace(J,(X,Q,G)=>{let K=xj(Q),W=K.name||"stx",z=K.duration||300,q=`stx-transition-${Math.random().toString(36).slice(2,9)}`;return`
9668
+ `}var nJ=0;var tJ={};a(tJ,{processTransitionDirectives:()=>uj,processTransitionAttributes:()=>cj,performLeave:()=>dj,performEnter:()=>hj,generateTransitionRuntime:()=>lj,generateTransitionCSS:()=>pj});function sJ($,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 gj($){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 rJ($,Z){return new Promise((Y)=>{let J=Z??gj($);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 aJ($){$.offsetHeight}async function hj($,Z={}){let Y=Z.name||"stx",J=sJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.enter:Z.duration;if(Z.onBeforeEnter?.($),$.classList.add(J.enterFrom),$.classList.add(J.enterActive),aJ($),$.classList.remove(J.enterFrom),$.classList.add(J.enterTo),Z.onEnter)await new Promise((Q)=>{Z.onEnter($,Q)});else await rJ($,X);$.classList.remove(J.enterActive),$.classList.remove(J.enterTo),Z.onAfterEnter?.($)}async function dj($,Z={}){let Y=Z.name||"stx",J=sJ(Y,Z),X=typeof Z.duration==="object"?Z.duration.leave:Z.duration;if(Z.onBeforeLeave?.($),$.classList.add(J.leaveFrom),$.classList.add(J.leaveActive),aJ($),$.classList.remove(J.leaveFrom),$.classList.add(J.leaveTo),Z.onLeave)await new Promise((Q)=>{Z.onLeave($,Q)});else await rJ($,X);$.classList.remove(J.leaveActive),$.classList.remove(J.leaveTo),Z.onAfterLeave?.($)}function uj($,Z={},Y){let J=/@transition\s*\(([^)]*)\)([\s\S]*?)@endtransition/gi;return $.replace(J,(X,Q,G)=>{let K=mj(Q),W=K.name||"stx",q=K.duration||300,z=`stx-transition-${Math.random().toString(36).slice(2,9)}`;return`
9669
9669
  <div
9670
9670
  class="stx-transition-wrapper"
9671
9671
  data-transition="${W}"
9672
- data-transition-id="${q}"
9673
- data-transition-duration="${z}"
9672
+ data-transition-id="${z}"
9673
+ data-transition-duration="${q}"
9674
9674
  ${K.mode?`data-transition-mode="${K.mode}"`:""}
9675
9675
  >
9676
9676
  ${G.trim()}
9677
9677
  </div>
9678
9678
  <script>
9679
9679
  (function() {
9680
- const wrapper = document.querySelector('[data-transition-id="${q}"]');
9680
+ const wrapper = document.querySelector('[data-transition-id="${z}"]');
9681
9681
  if (!wrapper) return;
9682
9682
 
9683
9683
  const name = '${W}';
9684
- const duration = ${z};
9684
+ const duration = ${q};
9685
9685
 
9686
9686
  // Observe for child changes to trigger transitions
9687
9687
  const observer = new MutationObserver(function(mutations) {
@@ -9707,7 +9707,7 @@ else {
9707
9707
  });
9708
9708
  })();
9709
9709
  </script>
9710
- `})}function xj($){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 fj(){return`
9710
+ `})}function mj($){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 pj(){return`
9711
9711
  /* STX Transition Presets */
9712
9712
 
9713
9713
  /* Fade */
@@ -9894,7 +9894,7 @@ else {
9894
9894
  opacity: 1;
9895
9895
  max-height: 1000px;
9896
9896
  }
9897
- `}function gj(){return`
9897
+ `}function lj(){return`
9898
9898
  // STX Transition Runtime
9899
9899
  (function() {
9900
9900
  if (typeof window === 'undefined') return;
@@ -9983,7 +9983,7 @@ else {
9983
9983
 
9984
9984
  console.log('[stx] Transition runtime initialized');
9985
9985
  })();
9986
- `}function hj($){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={};a(sJ,{withErrorBoundary:()=>oJ,processErrorBoundaryDirectives:()=>mj,generateErrorBoundaryRuntime:()=>nj,generateErrorBoundaryCSS:()=>ij,createErrorBoundary:()=>cj});function uj(){return`eb-${++dj}-${Date.now().toString(36)}`}function mj($,Z={},Y){let J=/@errorBoundary(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@enderrorBoundary/gi;return $.replace(J,(X,Q,G,K)=>{let W=uj(),z=pj(Q||"");return lj(W,G.trim(),K.trim(),z)})}function pj($){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 lj($,Z,Y,J){let X=J.logErrors!==!1;return`
9986
+ `}function cj($){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 $X={};a($X,{withErrorBoundary:()=>eJ,processErrorBoundaryDirectives:()=>oj,generateErrorBoundaryRuntime:()=>ej,generateErrorBoundaryCSS:()=>tj,createErrorBoundary:()=>aj});function nj(){return`eb-${++ij}-${Date.now().toString(36)}`}function oj($,Z={},Y){let J=/@errorBoundary(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@enderrorBoundary/gi;return $.replace(J,(X,Q,G,K)=>{let W=nj(),q=sj(Q||"");return rj(W,G.trim(),K.trim(),q)})}function sj($){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 rj($,Z,Y,J){let X=J.logErrors!==!1;return`
9987
9987
  <div class="stx-error-boundary" data-boundary-id="${$}" data-has-error="false">
9988
9988
  <div class="stx-error-boundary-content" data-boundary-content="${$}">
9989
9989
  ${Z}
@@ -10103,7 +10103,7 @@ else {
10103
10103
  };
10104
10104
  })();
10105
10105
  </script>
10106
- `}async function oJ($,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 cj($,Z={}){let Y=Z.onError?(J)=>Z.onError(J,{timestamp:Date.now(),boundaryId:"ssr"}):void 0;return(J)=>oJ(J,$,Y)}function ij(){return`
10106
+ `}async function eJ($,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 aj($,Z={}){let Y=Z.onError?(J)=>Z.onError(J,{timestamp:Date.now(),boundaryId:"ssr"}):void 0;return(J)=>eJ(J,$,Y)}function tj(){return`
10107
10107
  /* STX Error Boundary Styles */
10108
10108
  .stx-error-boundary {
10109
10109
  position: relative;
@@ -10147,7 +10147,7 @@ else {
10147
10147
  color: #fecaca;
10148
10148
  }
10149
10149
  }
10150
- `}function nj(){return`
10150
+ `}function ej(){return`
10151
10151
  // STX Error Boundary Runtime
10152
10152
  (function() {
10153
10153
  if (typeof window === 'undefined') return;
@@ -10212,7 +10212,7 @@ else {
10212
10212
 
10213
10213
  console.log('[stx] Error boundary runtime initialized');
10214
10214
  })();
10215
- `}var dj=0;var rJ={};a(rJ,{renderSSRSuspense:()=>$_,processSuspenseDirectives:()=>rj,generateSuspenseRuntime:()=>Y_,generateSuspenseCSS:()=>Z_,createSSRSuspense:()=>ej});function sj(){return`suspense-${++oj}-${Date.now().toString(36)}`}function rj($,Z={},Y){let J=/@suspense(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@endsuspense/gi;return $.replace(J,(X,Q,G,K)=>{let W=sj(),z=aj(Q||"");return tj(W,G.trim(),K.trim(),z)})}function aj($){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 tj($,Z,Y,J){let X=J.timeout||30000,Q=J.id||$;return`
10215
+ `}var ij=0;var ZX={};a(ZX,{renderSSRSuspense:()=>G_,processSuspenseDirectives:()=>Y_,generateSuspenseRuntime:()=>W_,generateSuspenseCSS:()=>K_,createSSRSuspense:()=>Q_});function Z_(){return`suspense-${++$_}-${Date.now().toString(36)}`}function Y_($,Z={},Y){let J=/@suspense(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@fallback\s*([\s\S]*?)@endsuspense/gi;return $.replace(J,(X,Q,G,K)=>{let W=Z_(),q=J_(Q||"");return X_(W,G.trim(),K.trim(),q)})}function J_($){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 X_($,Z,Y,J){let X=J.timeout||30000,Q=J.id||$;return`
10216
10216
  <div class="stx-suspense" data-suspense-id="${$}" data-custom-id="${Q}" data-status="pending">
10217
10217
  <div class="stx-suspense-fallback" data-suspense-fallback="${$}">
10218
10218
  ${Y}
@@ -10402,7 +10402,7 @@ else {
10402
10402
  }, 0);
10403
10403
  })();
10404
10404
  </script>
10405
- `}function ej($,Z,Y){return{id:$,fallback:Y,content:Z}}async function $_($){let Z=$.map((J)=>`
10405
+ `}function Q_($,Z,Y){return{id:$,fallback:Y,content:Z}}async function G_($){let Z=$.map((J)=>`
10406
10406
  <div id="stx-ssr-suspense-${J.id}" class="stx-ssr-suspense">
10407
10407
  ${J.fallback}
10408
10408
  </div>
@@ -10427,7 +10427,7 @@ else {
10427
10427
  }
10428
10428
  })();
10429
10429
  </script>
10430
- `}}return{initial:Z,streaming:Y()}}function Z_(){return`
10430
+ `}}return{initial:Z,streaming:Y()}}function K_(){return`
10431
10431
  /* STX Suspense Styles */
10432
10432
  .stx-suspense {
10433
10433
  position: relative;
@@ -10483,7 +10483,7 @@ else {
10483
10483
  background-size: 200% 100%;
10484
10484
  }
10485
10485
  }
10486
- `}function Y_(){return`
10486
+ `}function W_(){return`
10487
10487
  // STX Suspense Runtime
10488
10488
  (function() {
10489
10489
  if (typeof window === 'undefined') return;
@@ -10550,7 +10550,7 @@ else {
10550
10550
 
10551
10551
  console.log('[stx] Suspense runtime initialized');
10552
10552
  })();
10553
- `}var oj=0;var $X={};a($X,{processAsyncDirectives:()=>X_,isAsyncComponent:()=>G_,generateAsyncComponentRuntime:()=>W_,generateAsyncComponentCSS:()=>K_,defineAsyncComponent:()=>Q_});function aJ(){return`async-${++J_}-${Date.now().toString(36)}`}function X_($,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,W,z)=>{let q=aJ(),U=tJ(K);return eJ(q,U,W.trim(),z.trim())}),Q=Q.replace(X,(G,K,W)=>{let z=aJ(),q=tJ(K);return eJ(z,q,W.trim(),'<div class="stx-async-error">Failed to load component</div>')}),Q}function tJ($){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 eJ($,Z,Y,J){let{component:X,timeout:Q,delay:G,suspensible:K,retries:W}=Z;return`
10553
+ `}var $_=0;var QX={};a(QX,{processAsyncDirectives:()=>z_,isAsyncComponent:()=>j_,generateAsyncComponentRuntime:()=>B_,generateAsyncComponentCSS:()=>__,defineAsyncComponent:()=>U_});function YX(){return`async-${++q_}-${Date.now().toString(36)}`}function z_($,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,W,q)=>{let z=YX(),U=JX(K);return XX(z,U,W.trim(),q.trim())}),Q=Q.replace(X,(G,K,W)=>{let q=YX(),z=JX(K);return XX(q,z,W.trim(),'<div class="stx-async-error">Failed to load component</div>')}),Q}function JX($){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 XX($,Z,Y,J){let{component:X,timeout:Q,delay:G,suspensible:K,retries:W}=Z;return`
10554
10554
  <div class="stx-async-component" data-async-id="${$}" data-component="${X}" data-status="pending">
10555
10555
  <div class="stx-async-loading" data-async-loading="${$}">
10556
10556
  ${Y}
@@ -10777,7 +10777,7 @@ catch (error) {
10777
10777
  loadComponent();
10778
10778
  })();
10779
10779
  </script>
10780
- `}function Q_($){return{__asyncComponent:!0,...typeof $==="function"?{loader:$}:$}}function G_($){return typeof $==="object"&&$!==null&&"__asyncComponent"in $&&$.__asyncComponent===!0}function K_(){return`
10780
+ `}function U_($){return{__asyncComponent:!0,...typeof $==="function"?{loader:$}:$}}function j_($){return typeof $==="object"&&$!==null&&"__asyncComponent"in $&&$.__asyncComponent===!0}function __(){return`
10781
10781
  /* STX Async Component Styles */
10782
10782
  .stx-async-component {
10783
10783
  position: relative;
@@ -10851,7 +10851,7 @@ catch (error) {
10851
10851
  background-size: 200% 100%;
10852
10852
  }
10853
10853
  }
10854
- `}function W_(){return`
10854
+ `}function B_(){return`
10855
10855
  // STX Async Component Runtime
10856
10856
  (function() {
10857
10857
  if (typeof window === 'undefined') return;
@@ -10905,7 +10905,7 @@ catch (error) {
10905
10905
 
10906
10906
  console.log('[stx] Async component runtime initialized');
10907
10907
  })();
10908
- `}var J_=0;var YX={};a(YX,{shouldCacheComponent:()=>B_,processKeepAliveDirectives:()=>q_,onDeactivated:()=>F_,onActivated:()=>L_,generateKeepAliveRuntime:()=>O_,generateKeepAliveCSS:()=>H_,createKeepAliveCache:()=>__});function ZX(){return`keep-alive-${++z_}-${Date.now().toString(36)}`}function q_($,Z={},Y){let J=/@keepAlive(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@endkeepAlive/gi;return $.replace(J,(X,Q,G)=>{let K=ZX(),W=U_(Q||"");return j_(K,G.trim(),W)})}function U_($){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 j_($,Z,Y){let{max:J,include:X,exclude:Q}=Y,G=Y.id||$;return`
10908
+ `}var q_=0;var KX={};a(KX,{shouldCacheComponent:()=>w_,processKeepAliveDirectives:()=>O_,onDeactivated:()=>M_,onActivated:()=>N_,generateKeepAliveRuntime:()=>R_,generateKeepAliveCSS:()=>A_,createKeepAliveCache:()=>V_});function GX(){return`keep-alive-${++H_}-${Date.now().toString(36)}`}function O_($,Z={},Y){let J=/@keepAlive(?:\s*\(([^)]*)\))?\s*([\s\S]*?)@endkeepAlive/gi;return $.replace(J,(X,Q,G)=>{let K=GX(),W=L_(Q||"");return F_(K,G.trim(),W)})}function L_($){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 F_($,Z,Y){let{max:J,include:X,exclude:Q}=Y,G=Y.id||$;return`
10909
10909
  <div class="stx-keep-alive" data-keep-alive-id="${$}" data-custom-id="${G}">
10910
10910
  <div class="stx-keep-alive-content" data-keep-alive-content="${$}">
10911
10911
  ${Z}
@@ -11192,7 +11192,7 @@ else {
11192
11192
  });
11193
11193
  })();
11194
11194
  </script>
11195
- `}function __($={}){return{id:$.id||ZX(),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 B_($,Z){if(Z.exclude&&Z.exclude.includes($))return!1;if(Z.include&&!Z.include.includes($))return!1;return!0}function H_(){return`
11195
+ `}function V_($={}){return{id:$.id||GX(),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 w_($,Z){if(Z.exclude&&Z.exclude.includes($))return!1;if(Z.include&&!Z.include.includes($))return!1;return!0}function A_(){return`
11196
11196
  /* STX Keep-Alive Styles */
11197
11197
  .stx-keep-alive {
11198
11198
  position: relative;
@@ -11217,7 +11217,7 @@ else {
11217
11217
  .stx-keep-alive-content > [data-activated] {
11218
11218
  opacity: 1;
11219
11219
  }
11220
- `}function O_(){return`
11220
+ `}function R_(){return`
11221
11221
  // STX Keep-Alive Runtime
11222
11222
  (function() {
11223
11223
  if (typeof window === 'undefined') return;
@@ -11253,19 +11253,19 @@ else {
11253
11253
 
11254
11254
  console.log('[stx] Keep-alive runtime initialized');
11255
11255
  })();
11256
- `}function L_($){if(typeof document<"u")document.addEventListener("stx:activated",(Z)=>{$(Z.detail)})}function F_($){if(typeof document<"u")document.addEventListener("stx:deactivated",(Z)=>{$(Z.detail)})}var z_=0;var KX={};a(KX,{useVirtualList:()=>XX,processVirtualListDirectives:()=>s6,processVirtualGridDirectives:()=>GX,processInfiniteListDirectives:()=>QX,generateVirtualListCSS:()=>JX,default:()=>V_,createVirtualList:()=>o6});function o6($,Z){let{itemHeight:Y,containerHeight:J,overscan:X=3,keyProperty:Q="id",dynamicHeight:G=!1,estimatedItemHeight:K=Y,direction:W="vertical"}=Z,z=[...$],q=0,U=new Map;function j(){if(G)return _();let R=Math.max(0,Math.floor(q/Y)-X),N=Math.ceil(J/Y),M=Math.min(z.length-1,R+N+X*2);return{startIndex:R,endIndex:M}}function _(){let R=0,N=0,M=z.length-1;for(let T=0;T<z.length;T++){let I=U.get(T)||K;if(R+I>q){N=Math.max(0,T-X);break}R+=I}R=0;for(let T=0;T<z.length;T++){let I=U.get(T)||K;if(R+=I,R>q+J){M=Math.min(z.length-1,T+X);break}}return{startIndex:N,endIndex:M}}function B(){if(G){let R=0;for(let N=0;N<z.length;N++)R+=U.get(N)||K;return R}return z.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:q,totalHeight:B(),visibleItems:z.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"){q=Math.max(0,Math.min(R,B()-J))}function F(){j()}function w(R){z=[...R],U.clear(),F()}function A(){z=[],U.clear()}return{scrollToIndex:V,scrollToOffset:O,getState:L,refresh:F,setItems:w,destroy:A}}function s6($,Z={},Y){let J=/@virtualList\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualList/gi;return $.replace(J,(X,Q,G,K)=>{let W=Q.trim(),z=Z[W];if(!z||!Array.isArray(z))return`<!-- virtualList: items "${W}" not found or not an array -->`;let q={itemHeight:50,containerHeight:400,overscan:3};if(G)try{let O=G.trim(),F=Function(`return ${O}`)();q={...q,...F}}catch{}let U=`vlist-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(q.containerHeight/q.itemHeight),_=q.overscan||3,B=0,H=Math.min(z.length-1,j+_),L="";for(let O=B;O<=H&&O<z.length;O++){let F=z[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+=`
11257
- <div class="virtual-item ${q.itemClass||""}"
11258
- style="position: absolute; top: ${O*q.itemHeight}px; height: ${q.itemHeight}px; width: 100%;"
11256
+ `}function N_($){if(typeof document<"u")document.addEventListener("stx:activated",(Z)=>{$(Z.detail)})}function M_($){if(typeof document<"u")document.addEventListener("stx:deactivated",(Z)=>{$(Z.detail)})}var H_=0;var jX={};a(jX,{useVirtualList:()=>qX,processVirtualListDirectives:()=>t6,processVirtualGridDirectives:()=>UX,processInfiniteListDirectives:()=>zX,generateVirtualListCSS:()=>WX,default:()=>T_,createVirtualList:()=>a6});function a6($,Z){let{itemHeight:Y,containerHeight:J,overscan:X=3,keyProperty:Q="id",dynamicHeight:G=!1,estimatedItemHeight:K=Y,direction:W="vertical"}=Z,q=[...$],z=0,U=new Map;function j(){if(G)return _();let R=Math.max(0,Math.floor(z/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>z){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>z+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:z,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"){z=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 t6($,Z={},Y){let J=/@virtualList\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualList/gi;return $.replace(J,(X,Q,G,K)=>{let W=Q.trim(),q=Z[W];if(!q||!Array.isArray(q))return`<!-- virtualList: items "${W}" not found or not an array -->`;let z={itemHeight:50,containerHeight:400,overscan:3};if(G)try{let O=G.trim(),F=Function(`return ${O}`)();z={...z,...F}}catch{}let U=`vlist-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(z.containerHeight/z.itemHeight),_=z.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+=`
11257
+ <div class="virtual-item ${z.itemClass||""}"
11258
+ style="position: absolute; top: ${O*z.itemHeight}px; height: ${z.itemHeight}px; width: 100%;"
11259
11259
  data-index="${O}">
11260
11260
  ${w}
11261
- </div>`}let V=z.length*q.itemHeight;return`
11261
+ </div>`}let V=q.length*z.itemHeight;return`
11262
11262
  <div id="${U}"
11263
- class="virtual-list-container ${q.containerClass||""}"
11264
- style="position: relative; height: ${q.containerHeight}px; overflow-y: auto;"
11265
- data-item-height="${q.itemHeight}"
11266
- data-total-items="${z.length}"
11263
+ class="virtual-list-container ${z.containerClass||""}"
11264
+ style="position: relative; height: ${z.containerHeight}px; overflow-y: auto;"
11265
+ data-item-height="${z.itemHeight}"
11266
+ data-total-items="${q.length}"
11267
11267
  data-overscan="${_}">
11268
- <div class="virtual-list-viewport ${q.viewportClass||""}"
11268
+ <div class="virtual-list-viewport ${z.viewportClass||""}"
11269
11269
  style="position: relative; height: ${V}px; width: 100%;">
11270
11270
  ${L}
11271
11271
  </div>
@@ -11276,11 +11276,11 @@ else {
11276
11276
  if (!container) return;
11277
11277
 
11278
11278
  const viewport = container.querySelector('.virtual-list-viewport');
11279
- const itemHeight = ${q.itemHeight};
11280
- const totalItems = ${z.length};
11279
+ const itemHeight = ${z.itemHeight};
11280
+ const totalItems = ${q.length};
11281
11281
  const overscan = ${_};
11282
- const containerHeight = ${q.containerHeight};
11283
- const items = ${JSON.stringify(z)};
11282
+ const containerHeight = ${z.containerHeight};
11283
+ const items = ${JSON.stringify(q)};
11284
11284
  const template = ${JSON.stringify(K.trim())};
11285
11285
 
11286
11286
  let lastStartIndex = 0;
@@ -11299,7 +11299,7 @@ else {
11299
11299
  for (let i = startIndex; i <= endIndex; i++) {
11300
11300
  const item = items[i];
11301
11301
  const div = document.createElement('div');
11302
- div.className = 'virtual-item ${q.itemClass||""}';
11302
+ div.className = 'virtual-item ${z.itemClass||""}';
11303
11303
  div.style.cssText = 'position: absolute; top: ' + (i * itemHeight) + 'px; height: ' + itemHeight + 'px; width: 100%;';
11304
11304
  div.dataset.index = i;
11305
11305
 
@@ -11330,7 +11330,7 @@ else {
11330
11330
  };
11331
11331
  })();
11332
11332
  </script>
11333
- `})}function JX(){return`
11333
+ `})}function WX(){return`
11334
11334
  .virtual-list-container {
11335
11335
  position: relative;
11336
11336
  overflow-y: auto;
@@ -11378,7 +11378,7 @@ else {
11378
11378
  0% { background-position: 200% 0; }
11379
11379
  100% { background-position: -200% 0; }
11380
11380
  }
11381
- `}function XX($,Z){let Y=null,J=()=>{if(!Y)Y=o6($(),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 QX($,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,W)=>{let z=Q.trim(),q=Z[z];if(!q||!Array.isArray(q))return`<!-- infiniteList: items "${z}" 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)}`,_=s6(`@virtualList(${z}, ${JSON.stringify({itemHeight:U.itemHeight,containerHeight:U.containerHeight,overscan:U.overscan,containerClass:U.containerClass})})${K}@endvirtualList`,Z);return _=_.replace("</script>",`
11381
+ `}function qX($,Z){let Y=null,J=()=>{if(!Y)Y=a6($(),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 zX($,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,W)=>{let q=Q.trim(),z=Z[q];if(!z||!Array.isArray(z))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)}`,_=t6(`@virtualList(${q}, ${JSON.stringify({itemHeight:U.itemHeight,containerHeight:U.containerHeight,overscan:U.overscan,containerClass:U.containerClass})})${K}@endvirtualList`,Z);return _=_.replace("</script>",`
11382
11382
  // Infinite scroll detection
11383
11383
  container.addEventListener('scroll', function() {
11384
11384
  const scrollBottom = container.scrollTop + container.clientHeight;
@@ -11396,15 +11396,15 @@ else {
11396
11396
  ${W}
11397
11397
  </div>
11398
11398
  </div>
11399
- `})}function GX($,Z={},Y){let J=/@virtualGrid\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualGrid/gi;return $.replace(J,(X,Q,G,K)=>{let W=Q.trim(),z=Z[W];if(!z||!Array.isArray(z))return`<!-- virtualGrid: items "${W}" not found or not an array -->`;let q={columns:3,rowHeight:100,containerHeight:400,gap:10,overscan:2};if(G)try{let F=Function(`return ${G.trim()}`)();q={...q,...F}}catch{}let U=`vgrid-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(z.length/q.columns),_=j*(q.rowHeight+(q.gap||0)),B=Math.ceil(q.containerHeight/(q.rowHeight+(q.gap||0))),H=q.overscan||2,L=0,V=Math.min(j-1,B+H),O="";for(let F=L;F<=V;F++)for(let w=0;w<q.columns;w++){let A=F*q.columns+w;if(A>=z.length)break;let R=z[A],N=w*(100/q.columns),M=F*(q.rowHeight+(q.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+=`
11399
+ `})}function UX($,Z={},Y){let J=/@virtualGrid\s*\(\s*([^,]+)\s*(?:,\s*(\{[^}]*\}))?\s*\)\s*([\s\S]*?)@endvirtualGrid/gi;return $.replace(J,(X,Q,G,K)=>{let W=Q.trim(),q=Z[W];if(!q||!Array.isArray(q))return`<!-- virtualGrid: items "${W}" not found or not an array -->`;let z={columns:3,rowHeight:100,containerHeight:400,gap:10,overscan:2};if(G)try{let F=Function(`return ${G.trim()}`)();z={...z,...F}}catch{}let U=`vgrid-${Math.random().toString(36).substring(2,9)}`,j=Math.ceil(q.length/z.columns),_=j*(z.rowHeight+(z.gap||0)),B=Math.ceil(z.containerHeight/(z.rowHeight+(z.gap||0))),H=z.overscan||2,L=0,V=Math.min(j-1,B+H),O="";for(let F=L;F<=V;F++)for(let w=0;w<z.columns;w++){let A=F*z.columns+w;if(A>=q.length)break;let R=q[A],N=w*(100/z.columns),M=F*(z.rowHeight+(z.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+=`
11400
11400
  <div class="virtual-grid-item"
11401
- style="position: absolute; top: ${M}px; left: ${N}%; width: calc(${100/q.columns}% - ${q.gap||0}px); height: ${q.rowHeight}px;"
11401
+ style="position: absolute; top: ${M}px; left: ${N}%; width: calc(${100/z.columns}% - ${z.gap||0}px); height: ${z.rowHeight}px;"
11402
11402
  data-index="${A}">
11403
11403
  ${T}
11404
11404
  </div>`}return`
11405
11405
  <div id="${U}"
11406
11406
  class="virtual-grid-container"
11407
- style="position: relative; height: ${q.containerHeight}px; overflow-y: auto;">
11407
+ style="position: relative; height: ${z.containerHeight}px; overflow-y: auto;">
11408
11408
  <div class="virtual-grid-viewport"
11409
11409
  style="position: relative; height: ${_}px; width: 100%;">
11410
11410
  ${O}
@@ -11416,13 +11416,13 @@ else {
11416
11416
  if (!container) return;
11417
11417
 
11418
11418
  const viewport = container.querySelector('.virtual-grid-viewport');
11419
- const columns = ${q.columns};
11420
- const rowHeight = ${q.rowHeight};
11421
- const gap = ${q.gap||0};
11422
- const totalItems = ${z.length};
11419
+ const columns = ${z.columns};
11420
+ const rowHeight = ${z.rowHeight};
11421
+ const gap = ${z.gap||0};
11422
+ const totalItems = ${q.length};
11423
11423
  const overscan = ${H};
11424
- const containerHeight = ${q.containerHeight};
11425
- const items = ${JSON.stringify(z)};
11424
+ const containerHeight = ${z.containerHeight};
11425
+ const items = ${JSON.stringify(q)};
11426
11426
  const template = ${JSON.stringify(K.trim())};
11427
11427
 
11428
11428
  let lastStartRow = 0;
@@ -11466,7 +11466,7 @@ else {
11466
11466
  });
11467
11467
  })();
11468
11468
  </script>
11469
- `})}var V_;var WX=b(()=>{V_={createVirtualList:o6,processVirtualListDirectives:s6,processInfiniteListDirectives:QX,processVirtualGridDirectives:GX,generateVirtualListCSS:JX,useVirtualList:XX}});function zX(){return`<script data-stx-hydration-runtime>
11469
+ `})}var T_;var _X=b(()=>{T_={createVirtualList:a6,processVirtualListDirectives:t6,processInfiniteListDirectives:zX,processVirtualGridDirectives:UX,generateVirtualListCSS:WX,useVirtualList:qX}});function BX(){return`<script data-stx-hydration-runtime>
11470
11470
  (function() {
11471
11471
  'use strict';
11472
11472
 
@@ -11626,7 +11626,7 @@ else {
11626
11626
  stxIslands.initIslands();
11627
11627
  }
11628
11628
  })();
11629
- </script>`}function qX($){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 UX($,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 RX={};a(RX,{processStaticDirectives:()=>wX,processPartialHydrationDirectives:()=>_X,onHydrated:()=>VX,isHydrated:()=>FX,hydrateIsland:()=>HX,hydrateByStrategy:()=>OX,hydrateAll:()=>LX,generatePartialHydrationCSS:()=>BX,generateIslandManifest:()=>AX,default:()=>D_,createIslandRegistry:()=>jX});function jX(){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 w_($){return`
11629
+ </script>`}function HX($){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 OX($,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 DX={};a(DX,{processStaticDirectives:()=>TX,processPartialHydrationDirectives:()=>FX,onHydrated:()=>MX,isHydrated:()=>NX,hydrateIsland:()=>wX,hydrateByStrategy:()=>AX,hydrateAll:()=>RX,generatePartialHydrationCSS:()=>VX,generateIslandManifest:()=>IX,default:()=>P_,createIslandRegistry:()=>LX});function LX(){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 I_($){return`
11630
11630
  <script data-hydrate="${$}">
11631
11631
  (function() {
11632
11632
  const island = document.querySelector('[data-island="${$}"]');
@@ -11637,7 +11637,7 @@ else {
11637
11637
  island.dispatchEvent(new CustomEvent('stx:hydrated', { bubbles: true }));
11638
11638
  })();
11639
11639
  </script>
11640
- `}function A_($,Z){let Y=Z.timeout||2000,J=Z.priority||"low";return`
11640
+ `}function D_($,Z){let Y=Z.timeout||2000,J=Z.priority||"low";return`
11641
11641
  <script data-hydrate="${$}">
11642
11642
  (function() {
11643
11643
  const island = document.querySelector('[data-island="${$}"]');
@@ -11673,7 +11673,7 @@ else {
11673
11673
  }
11674
11674
  })();
11675
11675
  </script>
11676
- `}function R_($,Z){let Y=Z.rootMargin||"0px",J=Z.threshold||0;return`
11676
+ `}function E_($,Z){let Y=Z.rootMargin||"0px",J=Z.threshold||0;return`
11677
11677
  <script data-hydrate="${$}">
11678
11678
  (function() {
11679
11679
  const island = document.querySelector('[data-island="${$}"]');
@@ -11706,7 +11706,7 @@ else {
11706
11706
  }
11707
11707
  })();
11708
11708
  </script>
11709
- `}function N_($,Z){let Y=Z.media||"(min-width: 768px)";return`
11709
+ `}function k_($,Z){let Y=Z.media||"(min-width: 768px)";return`
11710
11710
  <script data-hydrate="${$}">
11711
11711
  (function() {
11712
11712
  const island = document.querySelector('[data-island="${$}"]');
@@ -11735,7 +11735,7 @@ else {
11735
11735
  }
11736
11736
  })();
11737
11737
  </script>
11738
- `}function M_($){return`
11738
+ `}function b_($){return`
11739
11739
  <script data-hydrate="${$}">
11740
11740
  (function() {
11741
11741
  const island = document.querySelector('[data-island="${$}"]');
@@ -11757,7 +11757,7 @@ else {
11757
11757
  events.forEach(e => island.addEventListener(e, handler, { once: true, passive: true }));
11758
11758
  })();
11759
11759
  </script>
11760
- `}function T_($,Z){let Y=Z.event||"stx:activate";return`
11760
+ `}function S_($,Z){let Y=Z.event||"stx:activate";return`
11761
11761
  <script data-hydrate="${$}">
11762
11762
  (function() {
11763
11763
  const island = document.querySelector('[data-island="${$}"]');
@@ -11778,9 +11778,9 @@ else {
11778
11778
  });
11779
11779
  })();
11780
11780
  </script>
11781
- `}function _X($,Z={},Y){let J=$,X=!1,Q=/@client:(load|idle|visible|media|only|hover|event)/i.test($);if(J=D5(J,"load",Z),J=D5(J,"idle",Z),J=D5(J,"visible",Z),J=D5(J,"media",Z),J=I_(J),J=D5(J,"hover",Z),J=D5(J,"event",Z),X=Q&&J!==$,X)J+=`
11782
- `+zX();return J}function D5($,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 W=`island-${Math.random().toString(36).substring(2,9)}`,z=qX(G.trim()),q=UX(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(z)U.push(`data-component="${z}"`);let _=Object.keys(q).length>0?`
11783
- <script type="application/json" data-island-props="${W}">${JSON.stringify(q)}</script>`:"",B="";switch(Z){case"load":B=w_(W);break;case"idle":B=A_(W,K);break;case"visible":B=R_(W,K);break;case"media":B=N_(W,K);break;case"hover":B=M_(W);break;case"event":B=T_(W,K);break}return`
11781
+ `}function FX($,Z={},Y){let J=$,X=!1,Q=/@client:(load|idle|visible|media|only|hover|event)/i.test($);if(J=k5(J,"load",Z),J=k5(J,"idle",Z),J=k5(J,"visible",Z),J=k5(J,"media",Z),J=y_(J),J=k5(J,"hover",Z),J=k5(J,"event",Z),X=Q&&J!==$,X)J+=`
11782
+ `+BX();return J}function k5($,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 W=`island-${Math.random().toString(36).substring(2,9)}`,q=HX(G.trim()),z=OX(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(z).length>0?`
11783
+ <script type="application/json" data-island-props="${W}">${JSON.stringify(z)}</script>`:"",B="";switch(Z){case"load":B=I_(W);break;case"idle":B=D_(W,K);break;case"visible":B=E_(W,K);break;case"media":B=k_(W,K);break;case"hover":B=b_(W);break;case"event":B=S_(W,K);break}return`
11784
11784
  <div data-island="${W}"
11785
11785
  data-strategy="${Z}"
11786
11786
  ${U.join(`
@@ -11790,7 +11790,7 @@ else {
11790
11790
  ${G.trim()}${_}
11791
11791
  </div>
11792
11792
  ${B}
11793
- `})}function I_($){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`
11793
+ `})}function y_($){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`
11794
11794
  <div data-island="${X}"
11795
11795
  data-strategy="only"
11796
11796
  class="stx-island stx-client-only">
@@ -11809,7 +11809,7 @@ else {
11809
11809
  }
11810
11810
  })();
11811
11811
  </script>
11812
- `})}function BX(){return`
11812
+ `})}function VX(){return`
11813
11813
  /* Island base styles */
11814
11814
  .stx-island {
11815
11815
  display: contents;
@@ -11850,11 +11850,11 @@ else {
11850
11850
  .stx-island.hydrated {
11851
11851
  opacity: 1;
11852
11852
  }
11853
- `}function HX($){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 OX($){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 LX(){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 FX($){if(typeof window>"u")return!1;return document.querySelector(`[data-island="${$}"]`)?.classList.contains("hydrated")??!1}function VX($){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 wX($){return $.replace(/@static\s*([\s\S]*?)@endstatic/gi,(Z,Y)=>{return`<div class="stx-static">${Y.trim()}</div>`})}function AX($){let Z=$.map((Y)=>({id:Y.id,component:Y.component,strategy:Y.options.strategy,props:Y.props}));return`
11853
+ `}function wX($){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 AX($){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 RX(){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 NX($){if(typeof window>"u")return!1;return document.querySelector(`[data-island="${$}"]`)?.classList.contains("hydrated")??!1}function MX($){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 TX($){return $.replace(/@static\s*([\s\S]*?)@endstatic/gi,(Z,Y)=>{return`<div class="stx-static">${Y.trim()}</div>`})}function IX($){let Z=$.map((Y)=>({id:Y.id,component:Y.component,strategy:Y.options.strategy,props:Y.props}));return`
11854
11854
  <script type="application/json" id="stx-island-manifest">
11855
11855
  ${JSON.stringify(Z)}
11856
11856
  </script>
11857
- `}var D_;var NX=b(()=>{D_={processPartialHydrationDirectives:_X,processStaticDirectives:wX,generatePartialHydrationCSS:BX,generateIslandManifest:AX,createIslandRegistry:jX,hydrateIsland:HX,hydrateByStrategy:OX,hydrateAll:LX,isHydrated:FX,onHydrated:VX}});var CX={};a(CX,{watchMultiple:()=>EX,watchEffect:()=>kX,watch:()=>DX,unref:()=>MX,toRefs:()=>TX,throttledComputed:()=>PX,stxWatchMultiple:()=>EX,stxWatchEffect:()=>kX,stxWatch:()=>DX,stxUnref:()=>MX,stxToRefs:()=>TX,stxThrottledComputed:()=>PX,stxShallowRef:()=>IX,stxRef:()=>E5,stxIsRef:()=>k1,stxDebouncedComputed:()=>yX,stxComputed:()=>V$,shallowRef:()=>IX,ref:()=>E5,processWatchDirectives:()=>SX,processComputedDirectives:()=>bX,isRef:()=>k1,default:()=>E_,debouncedComputed:()=>yX,computed:()=>V$});function E5($){let Z=$,Y=new Set,J={get value(){if(G1){let X=F$.get(J);if(!X)X=new Set,F$.set(J,X);X.add(G1)}return Z},set value(X){if(!Object.is(Z,X)){Z=X,Y.forEach((G)=>G(X));let Q=F$.get(J);if(Q)Q.forEach((G)=>G())}},subscribe(X){return Y.add(X),()=>Y.delete(X)},peek(){return Z}};return J}function k1($){return $!==null&&typeof $==="object"&&"value"in $&&"subscribe"in $&&"peek"in $}function MX($){return k1($)?$.value:$}function TX($){let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=E5($[Y]);return Z}function IX($){return E5($)}function V$($){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,W=new Set,z=()=>{if(G=!0,W.size>0){let j=U.value;W.forEach((_)=>_(j))}};function q(){K.clear();let j=G1;G1=z,X7.push(z);try{return Y()}finally{X7.pop(),G1=j}}let U={get value(){if(G1){let j=F$.get(U);if(!j)j=new Set,F$.set(U,j);j.add(G1)}if(G){let j=q();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 W.add(j),()=>W.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 DX($,Z,Y={}){let{immediate:J=!1,deep:X=!1,flush:Q="pre",once:G=!1}=Y,K,W=!0,z=!1,q=()=>{if(k1($))return X?a1($.value):$.value;return $()},U=()=>{if(!W||z)return;let B=q();if(K!==void 0&&Object.is(K,B)&&!X)return;let H=()=>{if(Z(B,K),K=X?a1(B):B,G)_()};if(Q==="sync")H();else if(Q==="post")queueMicrotask(H);else Promise.resolve().then(H)},j=null;if(k1($))j=$.subscribe(()=>U());else j=V$($).subscribe(()=>U());if(J)K=void 0,U();else K=q();let _=()=>{if(W=!1,j)j(),j=null};return _.pause=()=>{z=!0},_.resume=()=>{z=!1},_}function EX($,Z,Y={}){let{immediate:J=!1,once:X=!1}=Y,Q=$.map((U)=>k1(U)?U.value:void 0),G=!0,K=!1,W=()=>{if(!G||K)return;let U=$.map((j)=>k1(j)?j.value:void 0);if(Z(U,Q),Q=[...U],X)q()},z=$.map((U)=>{if(k1(U))return U.subscribe(()=>W());return()=>{}});if(J)W();let q=()=>{G=!1,z.forEach((U)=>U())};return q.pause=()=>{K=!0},q.resume=()=>{K=!1},q}function kX($,Z={}){let{flush:Y="pre"}=Z,J,X=!0,Q=!1,G=()=>{if(!X||Q)return;if(J)J();let W=G1;G1=G,X7.push(G);try{J=$()}finally{X7.pop(),G1=W}};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 W=Function(...Object.keys(Z),`return ${G}`)(...Object.values(Z));return Z[Q]=W,`<!-- computed: ${Q} = ${W} -->`}catch(K){return`<!-- computed error: ${Q} - ${K} -->`}})}function SX($,Z={},Y){let J=/@watch\s*\(\s*(\w+)\s*\)\s*([\s\S]*?)@endwatch/gi;return $.replace(J,(X,Q,G)=>{return`
11857
+ `}var P_;var EX=b(()=>{P_={processPartialHydrationDirectives:FX,processStaticDirectives:TX,generatePartialHydrationCSS:VX,generateIslandManifest:IX,createIslandRegistry:LX,hydrateIsland:wX,hydrateByStrategy:AX,hydrateAll:RX,isHydrated:NX,onHydrated:MX}});var hX={};a(hX,{watchMultiple:()=>PX,watchEffect:()=>CX,watch:()=>yX,unref:()=>kX,toRefs:()=>bX,throttledComputed:()=>gX,stxWatchMultiple:()=>PX,stxWatchEffect:()=>CX,stxWatch:()=>yX,stxUnref:()=>kX,stxToRefs:()=>bX,stxThrottledComputed:()=>gX,stxShallowRef:()=>SX,stxRef:()=>b5,stxIsRef:()=>b1,stxDebouncedComputed:()=>fX,stxComputed:()=>R$,shallowRef:()=>SX,ref:()=>b5,processWatchDirectives:()=>xX,processComputedDirectives:()=>vX,isRef:()=>b1,default:()=>C_,debouncedComputed:()=>fX,computed:()=>R$});function b5($){let Z=$,Y=new Set,J={get value(){if(K1){let X=A$.get(J);if(!X)X=new Set,A$.set(J,X);X.add(K1)}return Z},set value(X){if(!Object.is(Z,X)){Z=X,Y.forEach((G)=>G(X));let Q=A$.get(J);if(Q)Q.forEach((G)=>G())}},subscribe(X){return Y.add(X),()=>Y.delete(X)},peek(){return Z}};return J}function b1($){return $!==null&&typeof $==="object"&&"value"in $&&"subscribe"in $&&"peek"in $}function kX($){return b1($)?$.value:$}function bX($){let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=b5($[Y]);return Z}function SX($){return b5($)}function R$($){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,W=new Set,q=()=>{if(G=!0,W.size>0){let j=U.value;W.forEach((_)=>_(j))}};function z(){K.clear();let j=K1;K1=q,K7.push(q);try{return Y()}finally{K7.pop(),K1=j}}let U={get value(){if(K1){let j=A$.get(U);if(!j)j=new Set,A$.set(U,j);j.add(K1)}if(G){let j=z();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 W.add(j),()=>W.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 yX($,Z,Y={}){let{immediate:J=!1,deep:X=!1,flush:Q="pre",once:G=!1}=Y,K,W=!0,q=!1,z=()=>{if(b1($))return X?e1($.value):$.value;return $()},U=()=>{if(!W||q)return;let B=z();if(K!==void 0&&Object.is(K,B)&&!X)return;let H=()=>{if(Z(B,K),K=X?e1(B):B,G)_()};if(Q==="sync")H();else if(Q==="post")queueMicrotask(H);else Promise.resolve().then(H)},j=null;if(b1($))j=$.subscribe(()=>U());else j=R$($).subscribe(()=>U());if(J)K=void 0,U();else K=z();let _=()=>{if(W=!1,j)j(),j=null};return _.pause=()=>{q=!0},_.resume=()=>{q=!1},_}function PX($,Z,Y={}){let{immediate:J=!1,once:X=!1}=Y,Q=$.map((U)=>b1(U)?U.value:void 0),G=!0,K=!1,W=()=>{if(!G||K)return;let U=$.map((j)=>b1(j)?j.value:void 0);if(Z(U,Q),Q=[...U],X)z()},q=$.map((U)=>{if(b1(U))return U.subscribe(()=>W());return()=>{}});if(J)W();let z=()=>{G=!1,q.forEach((U)=>U())};return z.pause=()=>{K=!0},z.resume=()=>{K=!1},z}function CX($,Z={}){let{flush:Y="pre"}=Z,J,X=!0,Q=!1,G=()=>{if(!X||Q)return;if(J)J();let W=K1;K1=G,K7.push(G);try{J=$()}finally{K7.pop(),K1=W}};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 vX($,Z={},Y){let J=/@computed\s*\(\s*(\w+)\s*,\s*(.+?)\s*\)/gi;return $.replace(J,(X,Q,G)=>{try{let W=Function(...Object.keys(Z),`return ${G}`)(...Object.values(Z));return Z[Q]=W,`<!-- computed: ${Q} = ${W} -->`}catch(K){return`<!-- computed error: ${Q} - ${K} -->`}})}function xX($,Z={},Y){let J=/@watch\s*\(\s*(\w+)\s*\)\s*([\s\S]*?)@endwatch/gi;return $.replace(J,(X,Q,G)=>{return`
11858
11858
  <script data-watch="${`watch-${Math.random().toString(36).substring(2,9)}`}">
11859
11859
  (function() {
11860
11860
  // Watch implementation for ${Q}
@@ -11866,9 +11866,9 @@ else {
11866
11866
  }
11867
11867
  })();
11868
11868
  </script>
11869
- `})}function a1($){if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((Y)=>a1(Y));if($ instanceof Date)return new Date($.getTime());if($ instanceof Map){let Y=new Map;return $.forEach((J,X)=>Y.set(a1(X),a1(J))),Y}if($ instanceof Set){let Y=new Set;return $.forEach((J)=>Y.add(a1(J))),Y}let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=a1($[Y]);return Z}function yX($,Z=100){let Y=E5($()),J=null,X=()=>{if(J)clearTimeout(J);J=setTimeout(()=>{Y.value=$()},Z)};return V$($).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 PX($,Z=100){let Y=E5($()),J=0,X=()=>{let G=Date.now();if(G-J>=Z)J=G,Y.value=$()};return V$($).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 G1=null,X7,F$,E_;var vX=b(()=>{X7=[],F$=new WeakMap;E_={ref:E5,computed:V$,watch:DX,watchMultiple:EX,watchEffect:kX,isRef:k1,unref:MX,toRefs:TX,shallowRef:IX,debouncedComputed:yX,throttledComputed:PX,processComputedDirectives:bX,processWatchDirectives:SX}});var hX={};a(hX,{v:()=>k_,processHasErrorsDirective:()=>gX,processFormValidationDirectives:()=>S_,processErrorsDirective:()=>fX,processErrorDirective:()=>xX,defineForm:()=>b_,Validator:()=>k5});class k5{rules=[];defaultValue="";addRule($){let Z=new k5;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 k5;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 k5;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 b_($,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 W=!1;async function z(O){K[O]=!0;let F=await $[O].validate(J[O],J);return X[O]=F,K[O]=!1,F.length===0}async function q(){W=!0;let O=await Promise.all(Y.map(z));return W=!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)z(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 q())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 W||Y.some((O)=>K[O])},get isDirty(){return Y.some((O)=>G[O])},validate:q,validateField:z,reset:U,setValues:j,setFieldValue:_,setFieldTouched:B,getFieldState:H,handleSubmit:L}}function xX($,Z,Y){let J=/@error\s*\(\s*([^)]+)\s*\)([\s\S]*?)@enderror/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),W=Z;for(let q of K)if(W&&typeof W==="object"&&q in W)W=W[q];else return"";let z=W;if(!z||!Array.isArray(z)||z.length===0)return"";return z.map((q)=>{return G.replace(/\{\{\s*message\s*\}\}/g,q)}).join(`
11870
- `)}catch{return""}})}function fX($,Z,Y){let J=/@errors\s*\(\s*([^)]+)\s*\)([\s\S]*?)@enderrors/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),W=Z;for(let q of K)if(W&&typeof W==="object"&&q in W)W=W[q];else return"";let z=W;if(!z||!Array.isArray(z)||z.length===0)return"";return z.map((q)=>G.replace(/\{\{\s*message\s*\}\}/g,q)).join(`
11871
- `)}catch{return""}})}function gX($,Z,Y){let J=/@hasErrors\s*\(\s*([^)]+)\s*\)([\s\S]*?)@endhasErrors/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),W=Z;for(let q of K)if(W&&typeof W==="object"&&q in W)W=W[q];else return"";let z=W;if(!z||!Array.isArray(z)||z.length===0)return"";return G}catch{return""}})}function S_($,Z,Y){let J=$;return J=xX(J,Z,Y),J=fX(J,Z,Y),J=gX(J,Z,Y),J}var k_;var dX=b(()=>{k_=new k5});var pX={};a(pX,{processXElementDirectives:()=>y_,hasXElementDirectives:()=>mX,generateXElementRuntime:()=>uX});function uX(){return`<script data-stx-scoped data-stx-x-element-runtime>
11869
+ `})}function e1($){if($===null||typeof $!=="object")return $;if(Array.isArray($))return $.map((Y)=>e1(Y));if($ instanceof Date)return new Date($.getTime());if($ instanceof Map){let Y=new Map;return $.forEach((J,X)=>Y.set(e1(X),e1(J))),Y}if($ instanceof Set){let Y=new Set;return $.forEach((J)=>Y.add(e1(J))),Y}let Z={};for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))Z[Y]=e1($[Y]);return Z}function fX($,Z=100){let Y=b5($()),J=null,X=()=>{if(J)clearTimeout(J);J=setTimeout(()=>{Y.value=$()},Z)};return R$($).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 gX($,Z=100){let Y=b5($()),J=0,X=()=>{let G=Date.now();if(G-J>=Z)J=G,Y.value=$()};return R$($).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 K1=null,K7,A$,C_;var dX=b(()=>{K7=[],A$=new WeakMap;C_={ref:b5,computed:R$,watch:yX,watchMultiple:PX,watchEffect:CX,isRef:b1,unref:kX,toRefs:bX,shallowRef:SX,debouncedComputed:fX,throttledComputed:gX,processComputedDirectives:vX,processWatchDirectives:xX}});var lX={};a(lX,{v:()=>v_,processHasErrorsDirective:()=>pX,processFormValidationDirectives:()=>f_,processErrorsDirective:()=>mX,processErrorDirective:()=>uX,defineForm:()=>x_,Validator:()=>S5});class S5{rules=[];defaultValue="";addRule($){let Z=new S5;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 S5;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 S5;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 x_($,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 W=!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 z(){W=!0;let O=await Promise.all(Y.map(q));return W=!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 z())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 W||Y.some((O)=>K[O])},get isDirty(){return Y.some((O)=>G[O])},validate:z,validateField:q,reset:U,setValues:j,setFieldValue:_,setFieldTouched:B,getFieldState:H,handleSubmit:L}}function uX($,Z,Y){let J=/@error\s*\(\s*([^)]+)\s*\)([\s\S]*?)@enderror/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),W=Z;for(let z of K)if(W&&typeof W==="object"&&z in W)W=W[z];else return"";let q=W;if(!q||!Array.isArray(q)||q.length===0)return"";return q.map((z)=>{return G.replace(/\{\{\s*message\s*\}\}/g,z)}).join(`
11870
+ `)}catch{return""}})}function mX($,Z,Y){let J=/@errors\s*\(\s*([^)]+)\s*\)([\s\S]*?)@enderrors/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),W=Z;for(let z of K)if(W&&typeof W==="object"&&z in W)W=W[z];else return"";let q=W;if(!q||!Array.isArray(q)||q.length===0)return"";return q.map((z)=>G.replace(/\{\{\s*message\s*\}\}/g,z)).join(`
11871
+ `)}catch{return""}})}function pX($,Z,Y){let J=/@hasErrors\s*\(\s*([^)]+)\s*\)([\s\S]*?)@endhasErrors/g;return $.replace(J,(X,Q,G)=>{try{let K=Q.trim().split("."),W=Z;for(let z of K)if(W&&typeof W==="object"&&z in W)W=W[z];else return"";let q=W;if(!q||!Array.isArray(q)||q.length===0)return"";return G}catch{return""}})}function f_($,Z,Y){let J=$;return J=uX(J,Z,Y),J=mX(J,Z,Y),J=pX(J,Z,Y),J}var v_;var cX=b(()=>{v_=new S5});var oX={};a(oX,{processXElementDirectives:()=>g_,hasXElementDirectives:()=>nX,generateXElementRuntime:()=>iX});function iX(){return`<script data-stx-scoped data-stx-x-element-runtime>
11872
11872
  (function() {
11873
11873
  'use strict';
11874
11874
 
@@ -12152,16 +12152,16 @@ else {
12152
12152
  // Expose for manual initialization
12153
12153
  window.XElement = XElement;
12154
12154
  })();
12155
- </script>`}function mX($){return/\bx-data(?:\s|=)/.test($)}function y_($){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()||uX(),Q=J.lastIndexOf("</body>");if(Q!==-1)return J.slice(0,Q)+X+`
12155
+ </script>`}function nX($){return/\bx-data(?:\s|=)/.test($)}function g_($){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(!nX(J))return J;let X=Y[0]?.trim()||iX(),Q=J.lastIndexOf("</body>");if(Q!==-1)return J.slice(0,Q)+X+`
12156
12156
  `+J.slice(Q);return J+`
12157
- `+X}var lX={};a(lX,{rewriteImagesWithSiblings:()=>v_});import _1 from"path";async function v_($,Z){let Y=Z.formats??C_;if(!Z.publicDir)return $;let J=g_($),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(h_(K.index,J))continue;G.push({idx:K.index,length:U.length,src:j[1],raw:U})}if(G.length===0)return $;let W=await Promise.all(G.map(async(U)=>{let j=await x_(U.src,Z.publicDir,Y);return{match:U,sources:j}}));for(let{match:U,sources:j}of W){if(j.length===0)continue;let B=`<picture>${j.map((H)=>`<source type="${H.mime}" srcset="${d_(H.url)}">`).join("")}${U.raw}</picture>`;X.push({start:U.idx,end:U.idx+U.length,replacement:B})}if(X.length===0)return $;let z="",q=0;for(let U of X)z+=$.slice(q,U.start),z+=U.replacement,q=U.end;return z+=$.slice(q),z}async function x_($,Z,Y){if(!f_($))return[];let J=_1.extname($).toLowerCase();if(!P_.has(J))return[];if(!$.startsWith("/"))return[];let X=_1.join(Z,$.slice(1)),Q=_1.dirname(X),G=_1.basename(X,J),K=_1.resolve(Q),W=_1.resolve(Z);if(!K.startsWith(W))return[];let z=_1.posix.dirname($),q=Y.map(async(j)=>{let _=_1.join(Q,`${G}${j.ext}`);if(!await Bun.file(_).exists())return null;return{url:_1.posix.join(z,`${G}${j.ext}`),mime:j.mime}});return(await Promise.all(q)).filter((j)=>j!==null)}function f_($){if(!$)return!1;if($.startsWith("http://")||$.startsWith("https://"))return!1;if($.startsWith("//"))return!1;if($.startsWith("data:"))return!1;return!0}function g_($){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 h_($,Z){for(let[Y,J]of Z)if($>=Y&&$<J)return!0;return!1}function d_($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;")}var P_,C_;var cX=b(()=>{P_=new Set([".jpg",".jpeg",".png",".gif"]),C_=[{ext:".avif",mime:"image/avif"},{ext:".webp",mime:"image/webp"}]});var iX=()=>{};function r6($){return $.pwa?.serviceWorker?.fileName||"sw.js"}var nX=b(()=>{iX()});var oX={};a(oX,{injectPwaTags:()=>u_,generateThemeColorMeta:()=>l_,generateSwRegistrationScript:()=>m_,generatePwaTags:()=>Q7,generateManifestLink:()=>p_});function Q7($){let Z=$.pwa;if(!Z?.enabled)return"";let Y=Z.manifest,J=Z.icons?.outputDir?`/${Z.icons.outputDir}`:"/pwa-icons",X=r6($),Q=`
12157
+ `+X}var sX={};a(sX,{rewriteImagesWithSiblings:()=>u_});import B1 from"path";async function u_($,Z){let Y=Z.formats??d_;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(c_(K.index,J))continue;G.push({idx:K.index,length:U.length,src:j[1],raw:U})}if(G.length===0)return $;let W=await Promise.all(G.map(async(U)=>{let j=await m_(U.src,Z.publicDir,Y);return{match:U,sources:j}}));for(let{match:U,sources:j}of W){if(j.length===0)continue;let B=`<picture>${j.map((H)=>`<source type="${H.mime}" srcset="${i_(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="",z=0;for(let U of X)q+=$.slice(z,U.start),q+=U.replacement,z=U.end;return q+=$.slice(z),q}async function m_($,Z,Y){if(!p_($))return[];let J=B1.extname($).toLowerCase();if(!h_.has(J))return[];if(!$.startsWith("/"))return[];let X=B1.join(Z,$.slice(1)),Q=B1.dirname(X),G=B1.basename(X,J),K=B1.resolve(Q),W=B1.resolve(Z);if(!K.startsWith(W))return[];let q=B1.posix.dirname($),z=Y.map(async(j)=>{let _=B1.join(Q,`${G}${j.ext}`);if(!await Bun.file(_).exists())return null;return{url:B1.posix.join(q,`${G}${j.ext}`),mime:j.mime}});return(await Promise.all(z)).filter((j)=>j!==null)}function p_($){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 c_($,Z){for(let[Y,J]of Z)if($>=Y&&$<J)return!0;return!1}function i_($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;")}var h_,d_;var rX=b(()=>{h_=new Set([".jpg",".jpeg",".png",".gif"]),d_=[{ext:".avif",mime:"image/avif"},{ext:".webp",mime:"image/webp"}]});var aX=()=>{};function e6($){return $.pwa?.serviceWorker?.fileName||"sw.js"}var tX=b(()=>{aX()});var eX={};a(eX,{injectPwaTags:()=>n_,generateThemeColorMeta:()=>r_,generateSwRegistrationScript:()=>o_,generatePwaTags:()=>W7,generateManifestLink:()=>s_});function W7($){let Z=$.pwa;if(!Z?.enabled)return"";let Y=Z.manifest,J=Z.icons?.outputDir?`/${Z.icons.outputDir}`:"/pwa-icons",X=e6($),Q=`
12158
12158
  <!-- stx PWA Meta Tags -->
12159
12159
  <link rel="manifest" href="/manifest.json">
12160
- <meta name="theme-color" content="${a6(Y?.themeColor||"#000000")}">
12160
+ <meta name="theme-color" content="${$9(Y?.themeColor||"#000000")}">
12161
12161
  <meta name="mobile-web-app-capable" content="yes">
12162
12162
  <meta name="apple-mobile-web-app-capable" content="yes">
12163
12163
  <meta name="apple-mobile-web-app-status-bar-style" content="default">
12164
- <meta name="apple-mobile-web-app-title" content="${a6(Y?.shortName||Y?.name||"App")}">`;if(Z.icons?.generateAppleIcons!==!1)Q+=`
12164
+ <meta name="apple-mobile-web-app-title" content="${$9(Y?.shortName||Y?.name||"App")}">`;if(Z.icons?.generateAppleIcons!==!1)Q+=`
12165
12165
  <link rel="apple-touch-icon" href="${J}/apple-touch-icon.png">
12166
12166
  <link rel="apple-touch-icon" sizes="120x120" href="${J}/apple-touch-icon-120x120.png">
12167
12167
  <link rel="apple-touch-icon" sizes="152x152" href="${J}/apple-touch-icon-152x152.png">
@@ -12198,12 +12198,12 @@ if ('serviceWorker' in navigator) {
12198
12198
  });
12199
12199
  }
12200
12200
  </script>
12201
- <!-- End stx PWA -->`,Q}function u_($,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=Q7(Z);return $.slice(0,X)+Q+`
12202
- `+$.slice(X)}return $+Q7(Z)}let J=Q7(Z);return $.replace("</head>",`${J}
12203
- </head>`)}function m_($){if(!$.pwa?.enabled)return"";return`<script>
12201
+ <!-- End stx PWA -->`,Q}function n_($,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=W7(Z);return $.slice(0,X)+Q+`
12202
+ `+$.slice(X)}return $+W7(Z)}let J=W7(Z);return $.replace("</head>",`${J}
12203
+ </head>`)}function o_($){if(!$.pwa?.enabled)return"";return`<script>
12204
12204
  if ('serviceWorker' in navigator) {
12205
12205
  window.addEventListener('load', function() {
12206
- navigator.serviceWorker.register('/${r6($)}')
12206
+ navigator.serviceWorker.register('/${e6($)}')
12207
12207
  .then(function(registration) {
12208
12208
  console.log('[PWA] Service Worker registered:', registration.scope);
12209
12209
  })
@@ -12212,79 +12212,79 @@ if ('serviceWorker' in navigator) {
12212
12212
  });
12213
12213
  });
12214
12214
  }
12215
- </script>`}function p_(){return'<link rel="manifest" href="/manifest.json">'}function l_($){return`<meta name="theme-color" content="${a6($)}">`}function a6($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var sX=b(()=>{nX()});import g0 from"path";import{deriveLayoutGroup as c_}from"stx-router/layout-metadata";function rX($){return $.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function i_($,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(`
12216
- `,J+2),J===-1)return-1;J+=1,X=!0;continue}if(K==="/"&&$[J+1]==="*"){let W=$.indexOf("*/",J+2);if(W===-1)return-1;J=W+2,X=!0;continue}if(K==="/"&&X){let W=J+1,z=!1;while(W<Y){let q=$[W];if(q==="\\"){W+=2;continue}if(q==="[")z=!0;else if(q==="]")z=!1;else if(q==="/"&&!z){W++;break}else if(q===`
12215
+ </script>`}function s_(){return'<link rel="manifest" href="/manifest.json">'}function r_($){return`<meta name="theme-color" content="${$9($)}">`}function $9($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var $Q=b(()=>{tX()});import h0 from"path";import{deriveLayoutGroup as a_}from"stx-router/layout-metadata";function ZQ($){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(`
12216
+ `,J+2),J===-1)return-1;J+=1,X=!0;continue}if(K==="/"&&$[J+1]==="*"){let W=$.indexOf("*/",J+2);if(W===-1)return-1;J=W+2,X=!0;continue}if(K==="/"&&X){let W=J+1,q=!1;while(W<Y){let z=$[W];if(z==="\\"){W+=2;continue}if(z==="[")q=!0;else if(z==="]")q=!1;else if(z==="/"&&!q){W++;break}else if(z===`
12217
12217
  `){W=-1;break}W++}if(W===-1){J++,X=!1;continue}while(W<Y&&/[a-z]/.test($[W]))W++;J=W,X=!1;continue}if(K==="'"||K==='"'){let W=K;J++;while(J<Y){if($[J]==="\\"){J+=2;continue}if($[J]===W){J++;break}if($[J]===`
12218
- `)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 G7($,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 aX($){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 n_($){let Z=G7($,"data-stx-runtime");if(!Z)return $;let Y=aX($);if(Y===-1||Y===Z.start)return $;let J=$.slice(Z.start,Z.end),X=$.slice(0,Z.start)+$.slice(Z.end),Q=aX(X);if(Q===-1)return J+`
12218
+ `)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 q7($,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 YQ($){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 e_($){let Z=q7($,"data-stx-runtime");if(!Z)return $;let Y=YQ($);if(Y===-1||Y===Z.start)return $;let J=$.slice(Z.start,Z.end),X=$.slice(0,Z.start)+$.slice(Z.end),Q=YQ(X);if(Q===-1)return J+`
12219
12219
  `+X;return X.slice(0,Q)+J+`
12220
- `+X.slice(Q)}async function O0($,Z,Y,J,X){if(J.ssr===!1&&!J.autoShell&&J.buildMode==="spa")return $;let Q=!Z.__stxProcessingDepth;if(Q)E9(Z);if(!Z.__stxProcessingDepth)Z.__stxProcessingDepth=0;if(Z.__stxProcessingDepth++,!Z.__onceStore)Z.__onceStore=new Set;if((J.debug||!J$()&&!D4())&&Y&&Y.endsWith(".stx"))J6($,Y);try{return await a9.timeAsync("template-processing",async()=>{let G=await o_($,Z,Y,J,X);if(Q)G=p6(G);if(Q&&J.autoShell&&J.buildMode!=="compile"){let K=J.app?.head||{},z=(Z.__stx_runtime_head||null)??M7(),q=(Z.__stx_head_raw||"").trim(),U,j=q.match(/<title[^>]*>([\s\S]*?)<\/title>/i);if(j)U=j[1].trim(),q=q.replace(j[0],"").trim();let _=Z.__sections?.title,B=z.title||U||_,H={...K,...B&&{title:B},meta:[...K.meta||[],...z.meta||[]],link:[...K.link||[],...z.link||[]],script:[...K.script||[],...z.script||[]],headRaw:[K.headRaw,q].filter(Boolean).join(`
12221
- `),...z.htmlAttrs&&{htmlAttrs:{...K.htmlAttrs||{},...z.htmlAttrs}},...z.bodyAttrs&&{bodyAttrs:{...K.bodyAttrs||{},...z.bodyAttrs}}},L=d6(G);if(G=DJ(G,H),L)G=IJ(G,K);let V=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(V&&G.includes("<head")){let F=V[1],w=c_(F);G=G.replace("<head>",`<head>
12222
- <meta name="stx-layout" content="${rX(F)}">
12223
- <meta name="stx-layout-group" content="${rX(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=TJ(G),G=n_(G);if(Q)try{let{getStoreScript:K}=await Promise.resolve().then(() => (xJ(),vJ)),W=J.storesDir,z=await K(W);if(z){let q=`<script data-stx-stores>${z}</script>`,U=G7(G,"data-stx-runtime");if(U)G=G.slice(0,U.end)+`
12224
- `+q+G.slice(U.end)}}catch{}if(Q)try{let{getComposableScript:K}=await Promise.resolve().then(() => (hJ(),gJ)),W=J.composablesDir,z=await K(W);if(z){let q=`<script data-stx-composables>${z}</script>`,U=G7(G,"data-stx-stores")||G7(G,"data-stx-runtime");if(U)G=G.slice(0,U.end)+`
12225
- `+q+G.slice(U.end)}}catch{}if(Q&&Z.__stx_inject_css!==!1)G=await K$(G,void 0,J.buildMode==="serve");if(Q)G=Y8(G);return G=G.replace(/\x00STX_ESCAPED_AT\x00/g,"@"),G})}catch(G){if(G instanceof S4)throw G;let K=G instanceof Error?G.message:String(G),W=new l1(`Template processing failed: ${K}`,Y,void 0,void 0,$.substring(0,200)+($.length>200?"...":""));if(t0.log(W,{filePath:Y,context:Z}),b3.logDetailedError(W,{filePath:Y,template:$.substring(0,500)}),J.debug)throw W;return E3.createFallbackContent("Template Processing",W)}}async function o_($,Z,Y,J,X){let Q=process.cwd(),G={...J,partialsDir:J.partialsDir&&!g0.isAbsolute(J.partialsDir)?g0.resolve(Q,J.partialsDir):J.partialsDir,componentsDir:J.componentsDir&&!g0.isAbsolute(J.componentsDir)?g0.resolve(Q,J.componentsDir):J.componentsDir,layoutsDir:J.layoutsDir&&!g0.isAbsolute(J.layoutsDir)?g0.resolve(Q,J.layoutsDir):J.layoutsDir},K=G,W=$;await a_(Y,Z),r_(Z,K),W=await H5(()=>qJ(W,Z,Y,K),W,(O)=>{t0.log(O,{filePath:Y,phase:"pre-processing-middleware"},"warning"),console.warn(`[stx] pre-processing middleware failed for ${Y}: ${O.message}`)}),W=W.replace(/\{\{--[\s\S]*?--\}\}/g,"");let z=Y1(W,m5,(O,F)=>`\x00STX_HTML_COMMENT_${F}\x00`);W=z.output;let q=z.tokens,U=(O)=>q.length===0?O:O.replace(/\x00STX_HTML_COMMENT_(\d+)\x00/g,(F,w)=>q[Number(w)]??""),j="\x00STX_ESCAPED_AT\x00";W=W.replace(/@@/g,j),W=W.replace(/@\{\{([\s\S]*?)\}\}/g,(O,F)=>{return`{{ ${F} }}`}),W=AJ(W),W=await bJ(W,Y,X);let _={};W=f6(W,_);let B={...Z.__sections||{}},H="",L=/@nolayout\b/.test(W);if(L)W=W.replace(/@nolayout\b\s*/g,"");let V=W.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(V)H=V[1],W=W.replace(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/g,"");if(!H&&!L&&K.defaultLayout){let O=/<!DOCTYPE\s/i.test(W),F=/@section\s*\(/.test(W);if(!O||F){let w="",A=g0.dirname(Y),R=K.layoutsDir?g0.dirname(K.layoutsDir):process.cwd();for(let N=0;N<20;N++){let M=g0.join(A,"_layout.stx");if(await c(M)){w=M;break}let T=g0.dirname(A);if(T===A||T.length<R.length)break;A=T}if(w)H=w;else if(K.layoutsDir){let N=g0.isAbsolute(K.layoutsDir)?K.layoutsDir:g0.resolve(process.cwd(),K.layoutsDir),M=g0.join(N,`${K.defaultLayout}.stx`);if(await c(M))H=M}if(H&&!F)W=`@section('content')
12220
+ `+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(Q)P9(Z);if(!Z.__stxProcessingDepth)Z.__stxProcessingDepth=0;if(Z.__stxProcessingDepth++,!Z.__onceStore)Z.__onceStore=new Set;if((J.debug||!G$()&&!b4())&&Y&&Y.endsWith(".stx"))G6($,Y);try{return await Y8.timeAsync("template-processing",async()=>{let G=await $B($,Z,Y,J,X);if(Q)G=i6(G);if(Q&&J.autoShell&&J.buildMode!=="compile"){let K=J.app?.head||{},q=(Z.__stx_runtime_head||null)??D7(),z=(Z.__stx_head_raw||"").trim(),U,j=z.match(/<title[^>]*>([\s\S]*?)<\/title>/i);if(j)U=j[1].trim(),z=z.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,z].filter(Boolean).join(`
12221
+ `),...q.htmlAttrs&&{htmlAttrs:{...K.htmlAttrs||{},...q.htmlAttrs}},...q.bodyAttrs&&{bodyAttrs:{...K.bodyAttrs||{},...q.bodyAttrs}}},L=p6(G);if(G=yJ(G,H),L)G=SJ(G,K);let V=G.match(/<!-- stx-layout: ([^ ]+) -->/);if(V&&G.includes("<head")){let F=V[1],w=a_(F);G=G.replace("<head>",`<head>
12222
+ <meta name="stx-layout" content="${ZQ(F)}">
12223
+ <meta name="stx-layout-group" content="${ZQ(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=bJ(G),G=e_(G);if(Q)try{let{getStoreScript:K}=await t("stx/store-loader",()=>Promise.resolve().then(() => (uJ(),dJ))),W=J.storesDir,q=await K(W);if(q){let z=`<script data-stx-stores>${q}</script>`,U=q7(G,"data-stx-runtime");if(U)G=G.slice(0,U.end)+`
12224
+ `+z+G.slice(U.end)}}catch{}if(Q)try{let{getComposableScript:K}=await t("stx/composable-loader",()=>Promise.resolve().then(() => (lJ(),pJ))),W=J.composablesDir,q=await K(W);if(q){let z=`<script data-stx-composables>${q}</script>`,U=q7(G,"data-stx-stores")||q7(G,"data-stx-runtime");if(U)G=G.slice(0,U.end)+`
12225
+ `+z+G.slice(U.end)}}catch{}if(Q&&Z.__stx_inject_css!==!1)G=await z$(G,void 0,J.buildMode==="serve");if(Q)G=K8(G);return G=G.replace(/\x00STX_ESCAPED_AT\x00/g,"@"),G})}catch(G){if(G instanceof C4)throw G;let K=G instanceof Error?G.message:String(G),W=new i1(`Template processing failed: ${K}`,Y,void 0,void 0,$.substring(0,200)+($.length>200?"...":""));if(e0.log(W,{filePath:Y,context:Z}),P3.logDetailedError(W,{filePath:Y,template:$.substring(0,500)}),J.debug)throw W;return S3.createFallbackContent("Template Processing",W)}}async function $B($,Z,Y,J,X){let Q=process.cwd(),G={...J,partialsDir:J.partialsDir&&!h0.isAbsolute(J.partialsDir)?h0.resolve(Q,J.partialsDir):J.partialsDir,componentsDir:J.componentsDir&&!h0.isAbsolute(J.componentsDir)?h0.resolve(Q,J.componentsDir):J.componentsDir,layoutsDir:J.layoutsDir&&!h0.isAbsolute(J.layoutsDir)?h0.resolve(Q,J.layoutsDir):J.layoutsDir},K=G,W=$;await JB(Y,Z),YB(Z,K),W=await L5(()=>HJ(W,Z,Y,K),W,(O)=>{e0.log(O,{filePath:Y,phase:"pre-processing-middleware"},"warning"),console.warn(`[stx] pre-processing middleware failed for ${Y}: ${O.message}`)}),W=W.replace(/\{\{--[\s\S]*?--\}\}/g,"");let q=J1(W,c5,(O,F)=>`\x00STX_HTML_COMMENT_${F}\x00`);W=q.output;let z=q.tokens,U=(O)=>z.length===0?O:O.replace(/\x00STX_HTML_COMMENT_(\d+)\x00/g,(F,w)=>z[Number(w)]??""),j="\x00STX_ESCAPED_AT\x00";W=W.replace(/@@/g,j),W=W.replace(/@\{\{([\s\S]*?)\}\}/g,(O,F)=>{return`{{ ${F} }}`}),W=IJ(W),W=await vJ(W,Y,X);let _={};W=d6(W,_);let B={...Z.__sections||{}},H="",L=/@nolayout\b/.test(W);if(L)W=W.replace(/@nolayout\b\s*/g,"");let V=W.match(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/);if(V)H=V[1],W=W.replace(/@(?:layout|extends)\(\s*['"]([^'"]+)['"]\s*\)/g,"");if(!H&&!L&&K.defaultLayout){let O=/<!DOCTYPE\s/i.test(W),F=/@section\s*\(/.test(W);if(!O||F){let w="",A=h0.dirname(Y),R=K.layoutsDir?h0.dirname(K.layoutsDir):process.cwd();for(let N=0;N<20;N++){let M=h0.join(A,"_layout.stx");if(await c(M)){w=M;break}let T=h0.dirname(A);if(T===A||T.length<R.length)break;A=T}if(w)H=w;else if(K.layoutsDir){let N=h0.isAbsolute(K.layoutsDir)?K.layoutsDir:h0.resolve(process.cwd(),K.layoutsDir),M=h0.join(N,`${K.defaultLayout}.stx`);if(await c(M))H=M}if(H&&!F)W=`@section('content')
12226
12226
  ${W.trim()}
12227
- @endsection`}}if(W=W.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(O,F,w)=>{return B[F]=w,""}),W=W.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*([^)]+?)\s*\)/g,(O,F,w)=>{if(/^(['"]).*\1$/.test(w.trim()))return O;try{let A=$0(w.trim(),Z);if(A===void 0)return O;return B[F]=String(A??""),""}catch{return O}}),W=W.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@endsection|@show)/g,(O,F,w)=>{if(w.includes("@parent"))B[F]=w.replace("@parent",t1);else B[F]=w.trim();return""}),Z.__sections=B,W=W.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?\)/g,(O,F,w)=>{return B[F]||w||""}),!("slot"in Z)||Z.slot===void 0)W=W.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""});if(W=g6(W,_),H){let O=[],F=V1(W),w=Y1(F.output,X5,(A,R)=>`\x00STX_ORPHAN_STYLE_${R}\x00`);if(W=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(`
12227
+ @endsection`}}if(W=W.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*\)/g,(O,F,w)=>{return B[F]=w,""}),W=W.replace(/@section\(\s*['"]([^'"]+)['"]\s*,\s*([^)]+?)\s*\)/g,(O,F,w)=>{if(/^(['"]).*\1$/.test(w.trim()))return O;try{let A=Z0(w.trim(),Z);if(A===void 0)return O;return B[F]=String(A??""),""}catch{return O}}),W=W.replace(/@section\(\s*['"]([^'"]+)['"]\s*\)([\s\S]*?)(?:@endsection|@show)/g,(O,F,w)=>{if(w.includes("@parent"))B[F]=w.replace("@parent",$5);else B[F]=w.trim();return""}),Z.__sections=B,W=W.replace(/@(?:yield|slot)\(\s*['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?\)/g,(O,F,w)=>{return B[F]||w||""}),!("slot"in Z)||Z.slot===void 0)W=W.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""});if(W=u6(W,_),H){let O=[],F=w1(W),w=J1(F.output,G5,(A,R)=>`\x00STX_ORPHAN_STYLE_${R}\x00`);if(W=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(`
12228
12228
  `);B.content=B.content?`${B.content}
12229
- ${A}`:A,Z.__sections=B}}if(H)try{let O;if(g0.isAbsolute(H))O=H,X.add(H);else O=await H5(()=>n7(H,Y,G,X),null,()=>{throw new l1(`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(t0.log(Error(M),{layoutPath:H,filePath:Y},"warning"),G.debug)throw new l1(M,Y);return W}let F=await H5(()=>Bun.file(O).text(),"",()=>{throw new l1(`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(t1)){let S=B[D].indexOf(t1);B[D]=B[D].slice(0,S)+y+B[D].slice(S+t1.length)}else if(!B[D])B[D]=y;let I={...Z,__sections:B},E=`@layout('${w[1]}')${T}`;return await O0(E,I,O,G,X)}let A=F.replace(/\{\{--[\s\S]*?--\}\}/g,""),R=f6(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(t1)){let D=N[T]||"",y=E.indexOf(t1);E=E.slice(0,y)+D+E.slice(y+t1.length)}return E}return I||""}),R=s_(R,B),R=R.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""}),R=g6(R,_),Z.__originalFilePath=Y,W=await tX(R,Z,O,G,X),W=`<!-- stx-layout: ${H} -->
12230
- ${W}`,U(W)}catch(O){return t0.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 tX(W,Z,Y,G,X))}function s_($,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 r_($,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 a_($,Z){await H5(()=>HJ($,Z),void 0,(Y)=>{t0.log(Y,{filePath:$,phase:"view-composer"},"warning"),console.warn(`[stx] view composer failed for ${$}: ${Y.message}`)})}async function t_($,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:W}=await Promise.resolve().then(() => (r5(),v$));await W(G,Z,Y,{preserveExisting:!0})}catch(W){let z=W instanceof Error?W:Error(String(W));t0.log(z,{filePath:Y,phase:"server-script-extraction"},"warning"),console.warn(`[stx] server <script> extraction failed in ${Y}: ${z.message}`)}}}async function e_($,Z,Y){try{let{interpolateScriptsInTemplate:J}=await Promise.resolve().then(() => (J1(),n9));return J($,Z,{skipServer:!0})}catch(J){let X=J instanceof Error?J:Error(String(J));return t0.log(X,{filePath:Y,phase:"script-expression-interpolation"},"warning"),console.warn(`[stx] script expression interpolation failed in ${Y}: ${X.message}`),$}}async function tX($,Z,Y,J,X){let Q=$,G=J;if(await t_(Q,Z,Y),Q=await e_(Q,Z,Y),Q=await XJ(Q,Z,Y),Q=await QJ(Q,Z,Y),Q=await t2(Q,Z,Y,G),Q5(Q))Q=u7(Q,Z),Q=p7(Q,Z);Q=m7(Q);let{processStreamDirectives:K}=await Promise.resolve().then(() => (Y6(),Z6));Q=K(Q,Z),Q=P6(Q,Z,Y,G),Q=await t4(Q,Z,Y,G,X),Q=await NJ(Q,Z,Y,G,X),Q=z9(Q,Z,Y,G);let{processDeferDirectives:W}=await Promise.resolve().then(() => uJ);Q=W(Q,Z,Y);let{processTeleportDirectives:z}=await Promise.resolve().then(() => pJ);Q=z(Q,Z,Y);let{processTransitionDirectives:q,processTransitionAttributes:U}=await Promise.resolve().then(() => nJ);Q=q(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(() => rJ);Q=_(Q,Z,Y);let{processAsyncDirectives:B}=await Promise.resolve().then(() => $X);Q=B(Q,Z,Y);let{processKeepAliveDirectives:H}=await Promise.resolve().then(() => YX);Q=H(Q,Z,Y);let{processVirtualListDirectives:L,processVirtualGridDirectives:V,processInfiniteListDirectives:O}=await Promise.resolve().then(() => (WX(),KX));Q=L(Q,Z,Y),Q=V(Q,Z,Y),Q=O(Q,Z,Y);let{processPartialHydrationDirectives:F,processStaticDirectives:w}=await Promise.resolve().then(() => (NX(),RX));Q=F(Q,Z,Y),Q=w(Q);let{processComputedDirectives:A,processWatchDirectives:R}=await Promise.resolve().then(() => (vX(),CX));Q=A(Q,Z,Y),Q=R(Q,Z,Y);let{processFormValidationDirectives:N}=await Promise.resolve().then(() => (dX(),hX));Q=N(Q,Z,Y);let{processHeadDirective:M,processTitleDirective:T,processMetaDirective:I,resetHead:E}=await Promise.resolve().then(() => (o5(),I7));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}
12231
- `;if(Q=T(Q,Z),Q=I(Q,Z),Q=_J(Q),Q=m3(Q,Z),Q=r2(Q),Q=WJ(Q),Q=await x6(Q,Z,Y,G,X),Q=await t4(Q,Z,Y,G,X),Z.__stxProcessingDepth===1)Q=b9(Q,Z);if(Q=Q.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/g,""),Q=p6(Q),Q=n1(Q,Z,Y),Q=p3(Q,Z),Q=l3(Q,Z),Q=p4(Q,Z),Q=KY(Q,Z),Q=WY(Q,Z),Q=await g2(Q,Z,Y,G),Q=await i8(Q,Z,Y),Q=await _Y(Q,Z,Y,G),Q=Y9(Q,Z,Y,G),Q=$2(Q,Z,Y,G),Q=Z2(Q,Z,Y),Q=Y2(Q,Z,Y,G),Q=n2(Q,Z,Y,G),Q=u6(Q,Z),Q=m6(Q),Q=yJ(Q),!G.skipEventDirectives)Q=S2(Q,Z,Y);if(Q=x2(Q,Z,Y),G.debug){let n=/\bx-data\s*=/.test(Q),J0=a$($);if(n&&J0)console.warn(`[stx] ${Y}: Template mixes Alpine-style (x-data) and signals (state/derived/effect) reactivity.
12229
+ ${A}`:A,Z.__sections=B}}if(H)try{let O;if(h0.isAbsolute(H))O=H,X.add(H);else O=await L5(()=>r7(H,Y,G,X),null,()=>{throw new i1(`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(e0.log(Error(M),{layoutPath:H,filePath:Y},"warning"),G.debug)throw new i1(M,Y);return W}let F=await L5(()=>Bun.file(O).text(),"",()=>{throw new i1(`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($5)){let S=B[D].indexOf($5);B[D]=B[D].slice(0,S)+y+B[D].slice(S+$5.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=d6(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($5)){let D=N[T]||"",y=E.indexOf($5);E=E.slice(0,y)+D+E.slice(y+$5.length)}return E}return I||""}),R=ZB(R,B),R=R.replace(/\{\{\s*slot\s*\}\}/g,()=>{return B.content||""}),R=u6(R,_),Z.__originalFilePath=Y,W=await JQ(R,Z,O,G,X),W=`<!-- stx-layout: ${H} -->
12230
+ ${W}`,U(W)}catch(O){return e0.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 JQ(W,Z,Y,G,X))}function ZB($,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 YB($,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 JB($,Z){await L5(()=>wJ($,Z),void 0,(Y)=>{e0.log(Y,{filePath:$,phase:"view-composer"},"warning"),console.warn(`[stx] view composer failed for ${$}: ${Y.message}`)})}async function XB($,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:W}=await t("stx/variable-extractor",()=>Promise.resolve().then(() => (e5(),g$)));await W(G,Z,Y,{preserveExisting:!0})}catch(W){let q=W instanceof Error?W:Error(String(W));e0.log(q,{filePath:Y,phase:"server-script-extraction"},"warning"),console.warn(`[stx] server <script> extraction failed in ${Y}: ${q.message}`)}}}async function QB($,Z,Y){try{let{interpolateScriptsInTemplate:J}=await t("stx/expressions",()=>Promise.resolve().then(() => (X1(),t9)));return J($,Z,{skipServer:!0})}catch(J){let X=J instanceof Error?J:Error(String(J));return e0.log(X,{filePath:Y,phase:"script-expression-interpolation"},"warning"),console.warn(`[stx] script expression interpolation failed in ${Y}: ${X.message}`),$}}async function JQ($,Z,Y,J,X){let Q=$,G=J;if(await XB(Q,Z,Y),Q=await QB(Q,Z,Y),Q=await qJ(Q,Z,Y),Q=await zJ(Q,Z,Y),Q=await JY(Q,Z,Y,G),K5(Q))Q=l7(Q,Z),Q=i7(Q,Z);Q=c7(Q);let{processStreamDirectives:K}=await t("stx/streaming",()=>Promise.resolve().then(() => (Q6(),X6)));Q=K(Q,Z),Q=x6(Q,Z,Y,G),Q=await Z7(Q,Z,Y,G,X),Q=await EJ(Q,Z,Y,G,X),Q=j9(Q,Z,Y,G);let{processDeferDirectives:W}=await t("stx/defer",()=>Promise.resolve().then(() => iJ));Q=W(Q,Z,Y);let{processTeleportDirectives:q}=await t("stx/teleport",()=>Promise.resolve().then(() => oJ));Q=q(Q,Z,Y);let{processTransitionDirectives:z,processTransitionAttributes:U}=await t("stx/transitions",()=>Promise.resolve().then(() => tJ));Q=z(Q,Z,Y),Q=U(Q);let{processErrorBoundaryDirectives:j}=await t("stx/error-boundaries",()=>Promise.resolve().then(() => $X));Q=j(Q,Z,Y);let{processSuspenseDirectives:_}=await t("stx/suspense",()=>Promise.resolve().then(() => ZX));Q=_(Q,Z,Y);let{processAsyncDirectives:B}=await t("stx/async-components",()=>Promise.resolve().then(() => QX));Q=B(Q,Z,Y);let{processKeepAliveDirectives:H}=await t("stx/keep-alive",()=>Promise.resolve().then(() => KX));Q=H(Q,Z,Y);let{processVirtualListDirectives:L,processVirtualGridDirectives:V,processInfiniteListDirectives:O}=await t("stx/virtual-scrolling",()=>Promise.resolve().then(() => (_X(),jX)));Q=L(Q,Z,Y),Q=V(Q,Z,Y),Q=O(Q,Z,Y);let{processPartialHydrationDirectives:F,processStaticDirectives:w}=await t("stx/partial-hydration",()=>Promise.resolve().then(() => (EX(),DX)));Q=F(Q,Z,Y),Q=w(Q);let{processComputedDirectives:A,processWatchDirectives:R}=await t("stx/computed",()=>Promise.resolve().then(() => (dX(),hX)));Q=A(Q,Z,Y),Q=R(Q,Z,Y);let{processFormValidationDirectives:N}=await t("stx/forms-validation",()=>Promise.resolve().then(() => (cX(),lX)));Q=N(Q,Z,Y);let{processHeadDirective:M,processTitleDirective:T,processMetaDirective:I,resetHead:E}=await t("stx/head",()=>Promise.resolve().then(() => (a5(),k7)));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}
12231
+ `;if(Q=T(Q,Z),Q=I(Q,Z),Q=FJ(Q),Q=c3(Q,Z),Q=ZY(Q),Q=_J(Q),Q=await h6(Q,Z,Y,G,X),Q=await Z7(Q,Z,Y,G,X),Z.__stxProcessingDepth===1)Q=v9(Q,Z);if(Q=Q.replace(/@push\s*\(\s*['"][^'"]+['"]\s*\)[\s\S]*?@endpush/g,""),Q=i6(Q),Q=s1(Q,Z,Y),Q=i3(Q,Z),Q=n3(Q,Z),Q=i4(Q,Z),Q=jY(Q,Z),Q=_Y(Q,Z),Q=await p2(Q,Z,Y,G),Q=await a8(Q,Z,Y),Q=await FY(Q,Z,Y,G),Q=Q9(Q,Z,Y,G),Q=Q2(Q,Z,Y,G),Q=G2(Q,Z,Y),Q=K2(Q,Z,Y,G),Q=t2(Q,Z,Y,G),Q=l6(Q,Z),Q=c6(Q),Q=fJ(Q),!G.skipEventDirectives)Q=x2(Q,Z,Y);if(Q=u2(Q,Z,Y),G.debug){let n=/\bx-data\s*=/.test(Q),X0=$4($);if(n&&X0)console.warn(`[stx] ${Y}: Template mixes Alpine-style (x-data) and signals (state/derived/effect) reactivity.
12232
12232
  Both work on the same page, but they manage separate scopes.
12233
- Prefer signals (state/derived/effect) for new components.`)}Q=FJ(Q,Z),Q=await w1(Q,Z,Y),Q=PJ(Q),Q=CJ(Q),Q=R2(Q);let{processXElementDirectives:y}=await Promise.resolve().then(() => pX);Q=y(Q);let S=Z.__originalFilePath||Y,k=h5(Z);if(Q=await l7(Q,G,S,k),Q=JY(Q,Z),Q=await UJ(Q,Z,Y,G),G.media?.image?.autoSiblings){let n=G.publicDir||"public",{rewriteImagesWithSiblings:J0}=await Promise.resolve().then(() => (cX(),lX));Q=await J0(Q,{publicDir:n})}if(G.seo?.enabled)Q=J2(Q,Z,G);let v=(n,J0,B0=!0)=>{if(!J0)return n;let I0=J0.match(/<title\b[^>]*>[\s\S]*?<\/title>/i),C=n.match(/<title\b[^>]*>[\s\S]*?<\/title>/i);if(I0&&C){if(B0)n=n.replace(C[0],I0[0]);if(J0=J0.replace(I0[0],"").trim(),!J0)return n}if(/<\/head>/i.test(n))return n.replace(/<\/head>/i,`${J0}
12233
+ Prefer signals (state/derived/effect) for new components.`)}Q=NJ(Q,Z),Q=await A1(Q,Z,Y),Q=gJ(Q),Q=hJ(Q),Q=D2(Q);let{processXElementDirectives:y}=await t("stx/x-element",()=>Promise.resolve().then(() => oX));Q=y(Q);let S=Z.__originalFilePath||Y,k=m5(Z);if(Q=await n7(Q,G,S,k),Q=WY(Q,Z),Q=await OJ(Q,Z,Y,G),G.media?.image?.autoSiblings){let n=G.publicDir||"public",{rewriteImagesWithSiblings:X0}=await t("stx/image-optimization/auto-sibling",()=>Promise.resolve().then(() => (rX(),sX)));Q=await X0(Q,{publicDir:n})}if(G.seo?.enabled)Q=W2(Q,Z,G);let v=(n,X0,H0=!0)=>{if(!X0)return n;let D0=X0.match(/<title\b[^>]*>[\s\S]*?<\/title>/i),C=n.match(/<title\b[^>]*>[\s\S]*?<\/title>/i);if(D0&&C){if(H0)n=n.replace(C[0],D0[0]);if(X0=X0.replace(D0[0],"").trim(),!X0)return n}if(/<\/head>/i.test(n))return n.replace(/<\/head>/i,`${X0}
12234
12234
  </head>`);if(/<head\b[^>]*>/i.test(n))return n.replace(/(<head\b[^>]*>)/i,`$1
12235
- ${J0}`);if(/<html\b[^>]*>/i.test(n))return n.replace(/(<html\b[^>]*>)/i,`$1
12235
+ ${X0}`);if(/<html\b[^>]*>/i.test(n))return n.replace(/(<html\b[^>]*>)/i,`$1
12236
12236
  <head>
12237
- ${J0}
12238
- </head>`);return n},{renderHead:g,getHead:f}=await Promise.resolve().then(() => (o5(),I7)),p=Z.__stx_runtime_head??f();if(p.title||p.meta?.length||p.link?.length){let n=g(p);if(n)Q=v(Q,n)}if(D.headContent)Q=v(Q,D.headContent,!p.title);if(G.csp?.enabled&&G.csp.addMetaTag)Q=c2(Q,G.csp,Z);if(G.analytics?.enabled)Q=M2(Q,G);if(G.heatmap?.enabled)Q=B9(Q,G);if(G.pwa?.enabled&&G.pwa.autoInject!==!1){let{injectPwaTags:n}=await Promise.resolve().then(() => (sX(),oX));Q=n(Q,G)}let X0=/<script\b(?![^>]*\bserver\b)[^>]*>[\s\S]*?<\/script>/i.test(Q),Z0=/\bSTX\.\w+/.test(Q),V0=/window\.STX\s*=/.test(Q);if(X0&&Z0&&!V0){let J0=`<script data-stx-scoped>
12239
- ${F2()}
12240
- </script>`;if(Q.includes("</head>")){let B0=Q.indexOf("</head>"),C=Q.slice(0,B0).indexOf("<script");if(C!==-1){let P=Q.slice(0,C),x=Q.slice(C);Q=P+J0+`
12241
- `+x}else Q=Q.replace("</head>",`${J0}
12237
+ ${X0}
12238
+ </head>`);return n},{renderHead:g,getHead:f}=await t("stx/head",()=>Promise.resolve().then(() => (a5(),k7))),p=Z.__stx_runtime_head??f();if(p.title||p.meta?.length||p.link?.length){let n=g(p);if(n)Q=v(Q,n)}if(D.headContent)Q=v(Q,D.headContent,!p.title);if(G.csp?.enabled&&G.csp.addMetaTag)Q=r2(Q,G.csp,Z);if(G.analytics?.enabled)Q=k2(Q,G);if(G.heatmap?.enabled)Q=L9(Q,G);if(G.pwa?.enabled&&G.pwa.autoInject!==!1){let{injectPwaTags:n}=await t("stx/pwa/inject",()=>Promise.resolve().then(() => ($Q(),eX)));Q=n(Q,G)}let Q0=/<script\b(?![^>]*\bserver\b)[^>]*>[\s\S]*?<\/script>/i.test(Q),Y0=/\bSTX\.\w+/.test(Q),w0=/window\.STX\s*=/.test(Q);if(Q0&&Y0&&!w0){let X0=`<script data-stx-scoped>
12239
+ ${N2()}
12240
+ </script>`;if(Q.includes("</head>")){let H0=Q.indexOf("</head>"),C=Q.slice(0,H0).indexOf("<script");if(C!==-1){let P=Q.slice(0,C),x=Q.slice(C);Q=P+X0+`
12241
+ `+x}else Q=Q.replace("</head>",`${X0}
12242
12242
  </head>`)}else if(Q.includes("<body"))Q=Q.replace(/<body([^>]*)>/,`<body$1>
12243
- ${J0}`);else Q=J0+`
12244
- `+Q}{let{scanScriptTags:n}=await Promise.resolve().then(() => ($$(),t$)),J0=[];for(let B0 of n(Q)){if(!/\bserver\b/i.test(B0.attrs))continue;let I0=B0.start+B0.fullMatch.indexOf(">")+1,C=i_(Q,I0);if(C===-1)continue;let P=C+9;while(P<Q.length&&/\s/.test(Q[P]))P++;J0.push({start:B0.start,end:P})}for(let B0=J0.length-1;B0>=0;B0--){let{start:I0,end:C}=J0[B0];Q=Q.substring(0,I0)+Q.substring(C)}}let r=S$(Q,Y);if(r.hasScoped)Q=r.html;let Q0=Z.__stx_event_bindings||[],k0=!1,n0=[],B1=/\s:[a-z][\w.-]*\s*=/.test(Q),{scanScriptTags:e1}=await Promise.resolve().then(() => ($$(),t$));for(let n of e1(Q,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b|\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/}))n0.push({match:n.fullMatch,attrs:n.attrs,content:n.body});for(let{match:n,attrs:J0,content:B0}of n0){k0=!0;let I0=B0;c6(B0,Y,J.strict);let C=await d5(B0,{eventBindings:Q0,attrs:J0,hasColonDirectives:B1,templateContent:$,filePath:Y,projectRoot:process.cwd(),production:J.buildMode==="compile",serverData:k});Q=Q.replace(n,()=>C)}if(k0)Z.__stx_event_bindings=[];if(G.csp?.enabled&&G.csp.useNonce&&typeof Z.cspNonce==="string")Q=i2(Q,Z.cspNonce);return Q}var t1="<!--PARENT_CONTENT_PLACEHOLDER-->";var Y4=b(()=>{f4();v1();z7();V2();N2();T2();j7();q7();y2();u5();f2();h2();d4();o2();a2();$Y();XY();q1();o5();J1();zY();BY();JJ();KJ();C6();o7();jJ();z5();BJ();S3();N0();OJ();VJ();RJ();MJ();R7();$$();y6();SJ();l6();i6();w0();X6();H7();l6();i6()});import F0 from"fs";import G0 from"path";import{matchRoute as RB,Router as HQ}from"stx-router";import{findErrorPage as TB,formatRoutes as IB,generateRouteManifest as DB,generateRouteTypes as EB,matchRoute as kB}from"stx-router";function W7($,Z={}){return new HQ($,Z).routes}Y4();import{createHash as $B}from"crypto";function ZB($){try{return new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($).replace(/\}(var |let |const |function )/g,"};$1").trim()}catch{return $}}var YB=/<script\s+type="stx\/island"\s+data-stx-island="([^"]+)"([^>]*)>([\s\S]*?)<\/script>/g;function JB($){return Bun.hash($).toString(16)}function eX($,Z={}){if(!$.includes('type="stx/island"'))return{html:$,chunks:[]};let Y=new Map,J=$.replace(YB,(Q,G,K,W)=>{let z=W.trim();if(!z)return Q;if(/\bdata-stx-src=/.test(K))return Q;if(Z.minify)z=ZB(z);let q=JB(z);if(!Y.has(q))Y.set(q,z);let U=Z.integrity?` data-stx-integrity="sha384-${$B("sha384").update(z).digest("base64")}"`:"";return`<script type="stx/island" data-stx-island="${G}" data-stx-src="/_stx/islands/${q}.js"${U}${K}></script>`}),X=Array.from(Y,([Q,G])=>({hash:Q,code:G}));return{html:J,chunks:X}}var XB=new Set(["visible","idle"]);function $Q($){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(XB.has(Z.get(G[1])||""))X.add(G[2]);let K=$.lastIndexOf("</head>");if(X.size===0||K===-1)return $;let W=Array.from(X).filter((z)=>!$.includes(`rel="prefetch" href="${z}"`)).map((z)=>`<link rel="prefetch" href="${z}" as="script">`).join("");if(!W)return $;return $.slice(0,K)+W+$.slice(K)}i1();C5();f4();import{abortNavigation as KN,clearMiddleware as ZQ,createClientCookieManager as WN,createMiddlewareContext as YQ,createRouteLocation as JQ,createServerCookieManager as zN,createStorageManager as qN,defineMiddleware as UN,getMiddleware as jN,getMiddlewareNames as XQ,hasMiddleware as _N,loadMiddlewareFromDirectory as QQ,navigateTo as BN,registerMiddleware as HN,runMiddleware as GQ}from"stx-router";class KQ{cacheDir;cache=new Map;loaded=!1;constructor($){this.cacheDir=$}async load(){if(this.loaded)return;let $=G0.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 F0.promises.mkdir(this.cacheDir,{recursive:!0});let $=G0.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=F0.statSync($),J=`${$}:${Y.mtimeMs}`;for(let Q of Z)if(F0.existsSync(Q)){let G=F0.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 WQ{cacheDir;constructor($){this.cacheDir=$}getFilePath($){let Z=$.replace(/[^a-zA-Z0-9]/g,"_")+".json";return G0.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 F0.promises.mkdir(G0.dirname(Y),{recursive:!0}),await Bun.write(Y,JSON.stringify(Z))}async invalidate($){let Z=this.getFilePath($);if(await Bun.file(Z).exists())await F0.promises.unlink(Z)}async invalidatePattern($){let Z=G0.join(this.cacheDir,"isr");if(!F0.existsSync(Z))return;let Y=await F0.promises.readdir(Z);for(let J of Y){let X=J.replace(/_/g,"/").replace(".json","");if($.test(X))await F0.promises.unlink(G0.join(Z,J))}}async needsRevalidation($){let Z=await this.get($);if(!Z)return!0;return Date.now()>Z.revalidateAfter}}async function QB($){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(`
12243
+ ${X0}`);else Q=X0+`
12244
+ `+Q}{let{scanScriptTags:n}=await t("stx/signal-processing",()=>Promise.resolve().then(() => (J$(),Z4))),X0=[];for(let H0 of n(Q)){if(!/\bserver\b/i.test(H0.attrs))continue;let D0=H0.start+H0.fullMatch.indexOf(">")+1,C=t_(Q,D0);if(C===-1)continue;let P=C+9;while(P<Q.length&&/\s/.test(Q[P]))P++;X0.push({start:H0.start,end:P})}for(let H0=X0.length-1;H0>=0;H0--){let{start:D0,end:C}=X0[H0];Q=Q.substring(0,D0)+Q.substring(C)}}let r=C$(Q,Y);if(r.hasScoped)Q=r.html;let G0=Z.__stx_event_bindings||[],b0=!1,o0=[],H1=/\s:[a-z][\w.-]*\s*=/.test(Q),{scanScriptTags:Z5}=await t("stx/signal-processing",()=>Promise.resolve().then(() => (J$(),Z4)));for(let n of Z5(Q,{skipAttrs:/\bserver\b|\bsrc\s*=|\bdata-stx-scoped\b|\bdata-stx-router\b|\btype\s*=\s*["'](?!(?:text\/javascript|application\/javascript|module)["'])[^"']*["']/}))o0.push({match:n.fullMatch,attrs:n.attrs,content:n.body});for(let{match:n,attrs:X0,content:H0}of o0){b0=!0;let D0=H0;o6(H0,Y,J.strict);let C=await p5(H0,{eventBindings:G0,attrs:X0,hasColonDirectives:H1,templateContent:$,filePath:Y,projectRoot:process.cwd(),production:J.buildMode==="compile",serverData:k});Q=Q.replace(n,()=>C)}if(b0)Z.__stx_event_bindings=[];if(G.csp?.enabled&&G.csp.useNonce&&typeof Z.cspNonce==="string")Q=a2(Q,Z.cspNonce);return Q}var $5="<!--PARENT_CONTENT_PLACEHOLDER-->";var Q4=b(()=>{d4();f1();j7();M2();E2();b2();H7();_7();f2();l5();m2();l2();p4();e2();YY();QY();qY();U1();a5();X1();BY();VY();WJ();jJ();f6();a7();LJ();U5();VJ();C3();M0();AJ();MJ();DJ();kJ();T7();J$();v6();xJ();n6();s6();A0();K6();F7();g5();n6();s6()});import V0 from"fs";import K0 from"path";import{matchRoute as EB,Router as wQ}from"stx-router";import{findErrorPage as SB,formatRoutes as yB,generateRouteManifest as PB,generateRouteTypes as CB,matchRoute as vB}from"stx-router";function U7($,Z={}){return new wQ($,Z).routes}Q4();import{createHash as GB}from"crypto";function KB($){try{return new Bun.Transpiler({loader:"js",minifyWhitespace:!0}).transformSync($).replace(/\}(var |let |const |function )/g,"};$1").trim()}catch{return $}}var WB=/<script\s+type="stx\/island"\s+data-stx-island="([^"]+)"([^>]*)>([\s\S]*?)<\/script>/g;function qB($){return Bun.hash($).toString(16)}function XQ($,Z={}){if(!$.includes('type="stx/island"'))return{html:$,chunks:[]};let Y=new Map,J=$.replace(WB,(Q,G,K,W)=>{let q=W.trim();if(!q)return Q;if(/\bdata-stx-src=/.test(K))return Q;if(Z.minify)q=KB(q);let z=qB(q);if(!Y.has(z))Y.set(z,q);let U=Z.integrity?` data-stx-integrity="sha384-${GB("sha384").update(q).digest("base64")}"`:"";return`<script type="stx/island" data-stx-island="${G}" data-stx-src="/_stx/islands/${z}.js"${U}${K}></script>`}),X=Array.from(Y,([Q,G])=>({hash:Q,code:G}));return{html:J,chunks:X}}var zB=new Set(["visible","idle"]);function QQ($){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(zB.has(Z.get(G[1])||""))X.add(G[2]);let K=$.lastIndexOf("</head>");if(X.size===0||K===-1)return $;let W=Array.from(X).filter((q)=>!$.includes(`rel="prefetch" href="${q}"`)).map((q)=>`<link rel="prefetch" href="${q}" as="script">`).join("");if(!W)return $;return $.slice(0,K)+W+$.slice(K)}o1();x5();d4();import{abortNavigation as FN,clearMiddleware as GQ,createClientCookieManager as VN,createMiddlewareContext as KQ,createRouteLocation as WQ,createServerCookieManager as wN,createStorageManager as AN,defineMiddleware as RN,getMiddleware as NN,getMiddlewareNames as qQ,hasMiddleware as MN,loadMiddlewareFromDirectory as zQ,navigateTo as TN,registerMiddleware as IN,runMiddleware as UQ}from"stx-router";class jQ{cacheDir;cache=new Map;loaded=!1;constructor($){this.cacheDir=$}async load(){if(this.loaded)return;let $=K0.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 $=K0.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 _Q{cacheDir;constructor($){this.cacheDir=$}getFilePath($){let Z=$.replace(/[^a-zA-Z0-9]/g,"_")+".json";return K0.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(K0.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=K0.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(K0.join(Z,J))}}async needsRevalidation($){let Z=await this.get($);if(!Z)return!0;return Date.now()>Z.revalidateAfter}}async function UB($){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(`
12245
12245
  return (async function getStaticPaths() {
12246
12246
  ${X[1]}
12247
12247
  })()
12248
- `)()}catch(Z){return console.error(`Error extracting static paths from ${$}:`,Z),null}}async function GB($){let Z=[];if(!$.isDynamic)Z.push({url:$.pattern,params:{}});else{let Y=await QB($.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 KB($){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 WB($,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",`
12248
+ `)()}catch(Z){return console.error(`Error extracting static paths from ${$}:`,Z),null}}async function jB($){let Z=[];if(!$.isDynamic)Z.push({url:$.pattern,params:{}});else{let Y=await UB($.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 _B($){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 BB($,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",`
12249
12249
  return (async function getStaticProps() {
12250
12250
  ${Q[1]}
12251
12251
  })()
12252
- `)(Z)}catch(Q){return console.error(`Error executing getStaticProps in ${Y}:`,Q),null}}async function zQ($,Z,Y={},J,X){let Q=await Bun.file($.filePath).text(),G=await KB($.filePath),K=await WB(Q,Z,$.filePath),W={...G||{},...K||{},...Y,params:Z,$route:{path:$.pattern,params:Z}},z=new Set,q={...X,debug:!1,cache:!1,autoShell:!0},U=await O0(Q,W,$.filePath,q,z);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}
12252
+ `)(Z)}catch(Q){return console.error(`Error executing getStaticProps in ${Y}:`,Q),null}}async function BQ($,Z,Y={},J,X){let Q=await Bun.file($.filePath).text(),G=await _B($.filePath),K=await BB(Q,Z,$.filePath),W={...G||{},...K||{},...Y,params:Z,$route:{path:$.pattern,params:Z}},q=new Set,z={...X,debug:!1,cache:!1,autoShell:!0},U=await L0(Q,W,$.filePath,z,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}
12253
12253
  </head>`);else U=`${j}
12254
- ${U}`}if(U=await h7(U),U=await K$(U),J.minify!==!1)return{html:zB(U),dependencies:Array.from(z)};return{html:U,dependencies:Array.from(z)}}function zB($){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],W=X[2],z=X[3];W=W.replace(/([^:"\\'`])\/\/(?!\/)(?![*!])([^\n]*)/g,"$1"),Z.push(K+W+z),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 qB($){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 UB($,Z){return`<?xml version="1.0" encoding="UTF-8"?>
12254
+ ${U}`}if(U=await m7(U),U=await z$(U),J.minify!==!1)return{html:HB(U),dependencies:Array.from(q)};return{html:U,dependencies:Array.from(q)}}function HB($){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],W=X[2],q=X[3];W=W.replace(/([^:"\\'`])\/\/(?!\/)(?![*!])([^\n]*)/g,"$1"),Z.push(K+W+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 OB($){let Z=0;for(let Y=0;Y<$.length;Y++){let J=$.charCodeAt(Y);Z=(Z<<5)-Z+J,Z=Z&Z}return`"${Math.abs(Z).toString(36)}"`}function LB($,Z){return`<?xml version="1.0" encoding="UTF-8"?>
12255
12255
  <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
12256
12256
  ${$.map((J)=>{let X=new URL(J.loc,Z).href,Q=` <url>
12257
- <loc>${Z1(X)}</loc>`;if(J.lastmod)Q+=`
12257
+ <loc>${Y1(X)}</loc>`;if(J.lastmod)Q+=`
12258
12258
  <lastmod>${J.lastmod}</lastmod>`;if(J.changefreq)Q+=`
12259
12259
  <changefreq>${J.changefreq}</changefreq>`;if(J.priority!==void 0)Q+=`
12260
12260
  <priority>${J.priority}</priority>`;return Q+=`
12261
12261
  </url>`,Q}).join(`
12262
12262
  `)}
12263
- </urlset>`}function Z1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function jB($,Z){let Y=Z.map((J)=>{let X=" <item>";if(X+=`
12264
- <title>${Z1(J.title)}</title>`,X+=`
12265
- <link>${Z1(J.link)}</link>`,J.description)X+=`
12266
- <description>${Z1(J.description)}</description>`;if(J.pubDate)X+=`
12263
+ </urlset>`}function Y1($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function FB($,Z){let Y=Z.map((J)=>{let X=" <item>";if(X+=`
12264
+ <title>${Y1(J.title)}</title>`,X+=`
12265
+ <link>${Y1(J.link)}</link>`,J.description)X+=`
12266
+ <description>${Y1(J.description)}</description>`;if(J.pubDate)X+=`
12267
12267
  <pubDate>${J.pubDate.toUTCString()}</pubDate>`;if(J.author)X+=`
12268
- <author>${Z1(J.author)}</author>`;if(J.categories)for(let Q of J.categories)X+=`
12269
- <category>${Z1(Q)}</category>`;if(J.guid)X+=`
12270
- <guid>${Z1(J.guid)}</guid>`;return X+=`
12268
+ <author>${Y1(J.author)}</author>`;if(J.categories)for(let Q of J.categories)X+=`
12269
+ <category>${Y1(Q)}</category>`;if(J.guid)X+=`
12270
+ <guid>${Y1(J.guid)}</guid>`;return X+=`
12271
12271
  </item>`,X});return`<?xml version="1.0" encoding="UTF-8"?>
12272
12272
  <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
12273
12273
  <channel>
12274
- <title>${Z1($.title)}</title>
12275
- <link>${Z1($.link)}</link>
12276
- <description>${Z1($.description)}</description>
12274
+ <title>${Y1($.title)}</title>
12275
+ <link>${Y1($.link)}</link>
12276
+ <description>${Y1($.description)}</description>
12277
12277
  ${$.language?`<language>${$.language}</language>`:""}
12278
- ${$.copyright?`<copyright>${Z1($.copyright)}</copyright>`:""}
12278
+ ${$.copyright?`<copyright>${Y1($.copyright)}</copyright>`:""}
12279
12279
  <lastBuildDate>${new Date().toUTCString()}</lastBuildDate>
12280
12280
  <atom:link href="${$.link}/rss.xml" rel="self" type="application/rss+xml"/>
12281
12281
  ${Y.join(`
12282
12282
  `)}
12283
12283
  </channel>
12284
- </rss>`}async function _B($={}){let Z=Date.now(),Y=await U1(),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||O1(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={},W={};await J.hooks.onBuildStart?.();try{if(J.cleanOutput&&F0.existsSync(J.outputDir))await F0.promises.rm(J.outputDir,{recursive:!0});await F0.promises.mkdir(J.outputDir,{recursive:!0});let q=new KQ(J.cacheDir);if(J.cache)await q.load();try{let{generateCrosswindCSS:F}=await Promise.resolve().then(() => (f4(),L2));await F('<div class="bg-black"></div>')}catch{}ZQ();let U=Y?.routeMiddleware?.dir||"middleware";await QQ(process.cwd(),U);let j=XQ();if(j.length>0)console.log(`Loaded ${j.length} middleware: ${j.join(", ")}`);let _=Y?.routeMiddleware?.global||[],B=W7(".",{pagesDir:J.pagesDir});console.log(`Found ${B.length} routes`);let H=[];for(let F of B){let w=await GB(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=LB(I),D=E?.middleware?Array.isArray(E.middleware)?E.middleware:[E.middleware]:[],y=[..._,...D];if(y.length>0){let d=JQ(R,N,E||{}),p=YQ(d,null),X0=await GQ(y,p);if(X0.redirect){let Z0=typeof X0.redirect==="string"?X0.redirect:X0.redirect.path||X0.redirect,V0=FB(String(Z0),R),r=VB(R,J);await F0.promises.mkdir(G0.dirname(r),{recursive:!0}),await Bun.write(r,V0),X.successCount++,X.pages.push({route:R,outputPath:r,size:Buffer.byteLength(V0),cached:!1}),L.push({loc:R,lastmod:new Date().toISOString()}),console.log(` \u21B3 ${R} \u2192 redirect to ${Z0}`);return}if(X0.abort){let Z0=typeof X0.abort==="string"?X0.abort:X0.abort?.error?.message||"aborted";console.warn(` \u21B3 ${R} \u2014 middleware aborted: ${Z0}`);return}}let S=I.match(/definePageMeta\s*\(\s*\{[\s\S]*?validate\s*:\s*((?:\([^)]*\)|[^,}])*(?:\{[\s\S]*?\})?)/m);if(S)try{if(!await Function("route",`
12284
+ </rss>`}async function VB($={}){let Z=Date.now(),Y=await j1(),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||L1(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={},W={};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 z=new jQ(J.cacheDir);if(J.cache)await z.load();try{let{generateCrosswindCSS:F}=await Promise.resolve().then(() => (d4(),R2));await F('<div class="bg-black"></div>')}catch{}GQ();let U=Y?.routeMiddleware?.dir||"middleware";await zQ(process.cwd(),U);let j=qQ();if(j.length>0)console.log(`Loaded ${j.length} middleware: ${j.join(", ")}`);let _=Y?.routeMiddleware?.global||[],B=U7(".",{pagesDir:J.pagesDir});console.log(`Found ${B.length} routes`);let H=[];for(let F of B){let w=await jB(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=NB(I),D=E?.middleware?Array.isArray(E.middleware)?E.middleware:[E.middleware]:[],y=[..._,...D];if(y.length>0){let d=WQ(R,N,E||{}),p=KQ(d,null),Q0=await UQ(y,p);if(Q0.redirect){let Y0=typeof Q0.redirect==="string"?Q0.redirect:Q0.redirect.path||Q0.redirect,w0=MB(String(Y0),R),r=TB(R,J);await V0.promises.mkdir(K0.dirname(r),{recursive:!0}),await Bun.write(r,w0),X.successCount++,X.pages.push({route:R,outputPath:r,size:Buffer.byteLength(w0),cached:!1}),L.push({loc:R,lastmod:new Date().toISOString()}),console.log(` \u21B3 ${R} \u2192 redirect to ${Y0}`);return}if(Q0.abort){let Y0=typeof Q0.abort==="string"?Q0.abort:Q0.abort?.error?.message||"aborted";console.warn(` \u21B3 ${R} \u2014 middleware aborted: ${Y0}`);return}}let S=I.match(/definePageMeta\s*\(\s*\{[\s\S]*?validate\s*:\s*((?:\([^)]*\)|[^,}])*(?:\{[\s\S]*?\})?)/m);if(S)try{if(!await Function("route",`
12285
12285
  const validate = ${S[1]};
12286
12286
  return validate(route);
12287
- `)({params:N})){console.warn(`Validation failed for ${R}, skipping...`);return}}catch{}let k=null,v=!1;if(J.cache){if(k=q.get(R,A.filePath),k)v=!0,X.cachedCount++}if(!k){let d=await zQ(A,N,M,J,Y);if(k=d.html,J.cache)q.set(R,A.filePath,d.dependencies,k)}let g;if(J.trailingSlash)g=G0.join(J.outputDir,R,"index.html");else g=R==="/"?G0.join(J.outputDir,"index.html"):G0.join(J.outputDir,`${R}.html`);if(J.chunkIslands){let{html:d,chunks:p}=eX(k,{integrity:J.integrityIslands,minify:J.minify});if(p.length>0){let X0=G0.join(J.outputDir,"_stx","islands");await F0.promises.mkdir(X0,{recursive:!0});for(let Z0 of p){let V0=G0.join(X0,`${Z0.hash}.js`);if(!await Bun.file(V0).exists())await Bun.write(V0,Z0.code);if(!Q.has(Z0.hash)){Q.add(Z0.hash);let r=Buffer.byteLength(Z0.code,"utf8");G+=r,K[Z0.hash]={bytes:r,file:`/_stx/islands/${Z0.hash}.js`}}}if(W[R]=p.map((Z0)=>Z0.hash),k=d,J.prefetchIslands)k=$Q(k)}}await F0.promises.mkdir(G0.dirname(g),{recursive:!0}),await Bun.write(g,k),L.push({loc:R,lastmod:new Date().toISOString().split("T")[0],priority:R==="/"?1:0.8});let f={route:R,outputPath:g,size:Buffer.byteLength(k,"utf8"),cached:v};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 q.save();if(J.generate404){let F=G0.join(J.pagesDir,"404.stx");if(await Bun.file(F).exists()){let w=new Set,A={...Y,debug:!1,cache:!1},R=await O0(await Bun.file(F).text(),{},F,A,w);await Bun.write(G0.join(J.outputDir,"404.html"),R)}else await Bun.write(G0.join(J.outputDir,"404.html"),`<!DOCTYPE html>
12287
+ `)({params:N})){console.warn(`Validation failed for ${R}, skipping...`);return}}catch{}let k=null,v=!1;if(J.cache){if(k=z.get(R,A.filePath),k)v=!0,X.cachedCount++}if(!k){let d=await BQ(A,N,M,J,Y);if(k=d.html,J.cache)z.set(R,A.filePath,d.dependencies,k)}let g;if(J.trailingSlash)g=K0.join(J.outputDir,R,"index.html");else g=R==="/"?K0.join(J.outputDir,"index.html"):K0.join(J.outputDir,`${R}.html`);if(J.chunkIslands){let{html:d,chunks:p}=XQ(k,{integrity:J.integrityIslands,minify:J.minify});if(p.length>0){let Q0=K0.join(J.outputDir,"_stx","islands");await V0.promises.mkdir(Q0,{recursive:!0});for(let Y0 of p){let w0=K0.join(Q0,`${Y0.hash}.js`);if(!await Bun.file(w0).exists())await Bun.write(w0,Y0.code);if(!Q.has(Y0.hash)){Q.add(Y0.hash);let r=Buffer.byteLength(Y0.code,"utf8");G+=r,K[Y0.hash]={bytes:r,file:`/_stx/islands/${Y0.hash}.js`}}}if(W[R]=p.map((Y0)=>Y0.hash),k=d,J.prefetchIslands)k=QQ(k)}}await V0.promises.mkdir(K0.dirname(g),{recursive:!0}),await Bun.write(g,k),L.push({loc:R,lastmod:new Date().toISOString().split("T")[0],priority:R==="/"?1:0.8});let f={route:R,outputPath:g,size:Buffer.byteLength(k,"utf8"),cached:v};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 z.save();if(J.generate404){let F=K0.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(K0.join(J.outputDir,"404.html"),R)}else await Bun.write(K0.join(J.outputDir,"404.html"),`<!DOCTYPE html>
12288
12288
  <html lang="en">
12289
12289
  <head>
12290
12290
  <meta charset="UTF-8">
@@ -12305,16 +12305,16 @@ ${Y.join(`
12305
12305
  <a href="/">Go home</a>
12306
12306
  </div>
12307
12307
  </body>
12308
- </html>`)}for(let F of[500]){let w=G0.join(J.pagesDir,`${F}.stx`);if(await Bun.file(w).exists()){let A=new Set,R={...Y,debug:!1,cache:!1},N=await O0(await Bun.file(w).text(),{},w,R,A);await Bun.write(G0.join(J.outputDir,`${F}.html`),N)}}let O=G0.join(J.pagesDir,"error.stx");if(await Bun.file(O).exists()){let F=new Set,w={...Y,debug:!1,cache:!1},A=await O0(await Bun.file(O).text(),{},O,w,F);await Bun.write(G0.join(J.outputDir,"error.html"),A)}if(J.sitemap&&L.length>0){let F=UB(L,J.domain),w=G0.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=jB(F,w),R=G0.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&&F0.existsSync(J.publicDir))await qQ(J.publicDir,J.outputDir),console.log(`Copied public assets from ${J.publicDir}`)}catch(q){throw await J.hooks.onError?.(q),q}if(X.buildTime=Date.now()-Z,Q.size>0){X.islandChunks={count:Q.size,totalBytes:G};let q={generatedChunks:Q.size,totalBytes:G,chunks:K,pages:W};await Bun.write(G0.join(J.outputDir,"_stx","islands-manifest.json"),JSON.stringify(q,null,2))}await J.hooks.onBuildEnd?.(X);let z=X.islandChunks?`
12308
+ </html>`)}for(let F of[500]){let w=K0.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(K0.join(J.outputDir,`${F}.html`),N)}}let O=K0.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(K0.join(J.outputDir,"error.html"),A)}if(J.sitemap&&L.length>0){let F=LB(L,J.domain),w=K0.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=FB(F,w),R=K0.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 HQ(J.publicDir,J.outputDir),console.log(`Copied public assets from ${J.publicDir}`)}catch(z){throw await J.hooks.onError?.(z),z}if(X.buildTime=Date.now()-Z,Q.size>0){X.islandChunks={count:Q.size,totalBytes:G};let z={generatedChunks:Q.size,totalBytes:G,chunks:K,pages:W};await Bun.write(K0.join(J.outputDir,"_stx","islands-manifest.json"),JSON.stringify(z,null,2))}await J.hooks.onBuildEnd?.(X);let q=X.islandChunks?`
12309
12309
  Island chunks: ${X.islandChunks.count} (${(X.islandChunks.totalBytes/1024).toFixed(1)} KB lifted out of inline HTML)`:"";return console.log(`
12310
12310
  Build complete!
12311
12311
  Total: ${X.totalPages} pages
12312
12312
  Success: ${X.successCount}
12313
12313
  Cached: ${X.cachedCount}
12314
12314
  Failed: ${X.failedCount}
12315
- Time: ${X.buildTime}ms${z}
12316
- `),X}async function qQ($,Z){let Y=await F0.promises.readdir($,{withFileTypes:!0});for(let J of Y){let X=G0.join($,J.name),Q=G0.join(Z,J.name);if(J.isDirectory())await F0.promises.mkdir(Q,{recursive:!0}),await qQ(X,Q);else await F0.promises.copyFile(X,Q)}}function BB($={}){let Z=$.cacheDir||O1(process.cwd(),"ssg-cache"),Y=new WQ(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=W7(".",{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),W={};if(K)G.params.forEach((U,j)=>{W[U]=K[j+1]});let z=await U1(),{html:q}=await zQ(G,W,{},$,z);await Y.set(X,{html:q,generatedAt:Date.now(),revalidateAfter:Date.now()+J*1000,etag:qB(q)}),console.log(`Revalidated: ${X}`)},async invalidate(X){if(typeof X==="string")await Y.invalidate(X);else await Y.invalidatePattern(X)}}}function HB($){return async()=>{return{paths:await $(),fallback:!1}}}function OB(){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 z=Y[1];X=Z.slice(Y[0].length).trim();for(let q of z.split(`
12317
- `)){let U=q.indexOf(":");if(U>0){let j=q.slice(0,U).trim(),_=q.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,W;while((W=K.exec(Q))!==null){let z=parseInt(W[1],10),q=W[2],U=q.toLowerCase().replace(/[^a-z0-9]+/g,"-");G.push({id:U,text:q,level:z})}return{content:Q,data:J,toc:G}}}}function LB($){let Z=$.match(/definePageMeta\s*\(\s*(\{[\s\S]*?\})\s*\)/m);if(!Z)return null;try{return Function(`return ${Z[1]}`)()}catch{return null}}function FB($,Z){return`<!DOCTYPE html>
12315
+ Time: ${X.buildTime}ms${q}
12316
+ `),X}async function HQ($,Z){let Y=await V0.promises.readdir($,{withFileTypes:!0});for(let J of Y){let X=K0.join($,J.name),Q=K0.join(Z,J.name);if(J.isDirectory())await V0.promises.mkdir(Q,{recursive:!0}),await HQ(X,Q);else await V0.promises.copyFile(X,Q)}}function wB($={}){let Z=$.cacheDir||L1(process.cwd(),"ssg-cache"),Y=new _Q(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=U7(".",{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),W={};if(K)G.params.forEach((U,j)=>{W[U]=K[j+1]});let q=await j1(),{html:z}=await BQ(G,W,{},$,q);await Y.set(X,{html:z,generatedAt:Date.now(),revalidateAfter:Date.now()+J*1000,etag:OB(z)}),console.log(`Revalidated: ${X}`)},async invalidate(X){if(typeof X==="string")await Y.invalidate(X);else await Y.invalidatePattern(X)}}}function AB($){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 z of q.split(`
12317
+ `)){let U=z.indexOf(":");if(U>0){let j=z.slice(0,U).trim(),_=z.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,W;while((W=K.exec(Q))!==null){let q=parseInt(W[1],10),z=W[2],U=z.toLowerCase().replace(/[^a-z0-9]+/g,"-");G.push({id:U,text:z,level:q})}return{content:Q,data:J,toc:G}}}}function NB($){let Z=$.match(/definePageMeta\s*\(\s*(\{[\s\S]*?\})\s*\)/m);if(!Z)return null;try{return Function(`return ${Z[1]}`)()}catch{return null}}function MB($,Z){return`<!DOCTYPE html>
12318
12318
  <html>
12319
12319
  <head>
12320
12320
  <meta charset="utf-8">
@@ -12326,4 +12326,4 @@ Build complete!
12326
12326
  <p>Redirecting to <a href="${$}">${$}</a>...</p>
12327
12327
  <script>window.location.replace('${$}')</script>
12328
12328
  </body>
12329
- </html>`}function VB($,Z){if($==="/"||$==="")return G0.join(Z.outputDir,"index.html");let Y=$.replace(/^\/|\/$/g,"");if(Z.trailingSlash)return G0.join(Z.outputDir,Y,"index.html");return G0.join(Z.outputDir,`${Y}.html`)}var TN={generateStaticSite:_B,createISRHandler:BB,defineStaticPaths:HB,createMarkdownLoader:OB};export{_B as generateStaticSite,HB as defineStaticPaths,TN as default,OB as createMarkdownLoader,BB as createISRHandler};
12329
+ </html>`}function TB($,Z){if($==="/"||$==="")return K0.join(Z.outputDir,"index.html");let Y=$.replace(/^\/|\/$/g,"");if(Z.trailingSlash)return K0.join(Z.outputDir,Y,"index.html");return K0.join(Z.outputDir,`${Y}.html`)}var xN={generateStaticSite:VB,createISRHandler:wB,defineStaticPaths:AB,createMarkdownLoader:RB};export{VB as generateStaticSite,AB as defineStaticPaths,xN as default,RB as createMarkdownLoader,wB as createISRHandler};