@stacksjs/stx-vscode 0.2.357 → 0.2.358

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.
@@ -0,0 +1,42 @@
1
+ var UZ=Object.create;var{getPrototypeOf:GZ,defineProperty:vJ,getOwnPropertyNames:FZ}=Object;var BZ=Object.prototype.hasOwnProperty;function wZ(J){return this[J]}var XZ,MZ,h=(J,Q,Z)=>{var $=J!=null&&typeof J==="object";if($){var z=Q?XZ??=new WeakMap:MZ??=new WeakMap,W=z.get(J);if(W)return W}Z=J!=null?UZ(GZ(J)):{};let j=Q||!J||!J.__esModule?vJ(Z,"default",{value:J,enumerable:!0}):Z;for(let K of FZ(J))if(!BZ.call(j,K))vJ(j,K,{get:wZ.bind(J,K),enumerable:!0});if($)z.set(J,j);return j};var ZZ=require("node:crypto"),g=require("node:fs"),$Z=require("node:os"),k=h(require("node:path"));var KJ=["browserQuery","BrowserQueryBuilder","BrowserQueryError","browserAuth","configureBrowser","getBrowserConfig","createBrowserDb","createBrowserModel","isBrowser","debounce","throttle","retry","sleep","wait","delay","waitUntil","waitWhile","lazy","clamp","rand","readableSize","useActiveElement","useIntervalFn","useObjectUrl","useTimeoutFn"];var WJ=h(require("node:path"));function OZ(J,Q){let Z=J[Q],$=Q+1;while($<J.length){if(J[$]==="\\"){$+=2;continue}if(J[$]===Z)return $+1;$++}return J.length}function vZ(J,Q){let Z=Q+1;while(Z<J.length){if(J[Z]==="\\"){Z+=2;continue}if(J[Z]==="`")return Z+1;if(J[Z]==="$"&&J[Z+1]==="{"){if(Z=DJ(J,Z+2),Z<J.length)Z++;continue}Z++}return J.length}function DJ(J,Q){let Z=1,$=Q;while($<J.length){let z=J[$];if(z==="\\"){$+=2;continue}if(z==='"'||z==="'"){$=OZ(J,$);continue}if(z==="`"){$=vZ(J,$);continue}if(z==="/"&&J[$+1]==="/"){while($<J.length&&J[$]!==`
2
+ `)$++;continue}if(z==="/"&&J[$+1]==="*"){$+=2;while($<J.length&&J.slice($,$+2)!=="*/")$++;$+=2;continue}if(z==="{"){Z++,$++;continue}if(z==="}"){if(Z--,Z===0)return $;$++;continue}$++}return J.length}var DZ=new Set(["return","typeof","instanceof","in","of","new","delete","void","throw","case","do","else","yield","await"]);function IZ(J,Q){if(Q)return DZ.has(Q);return!(J===")"||J==="]"||J===a)}var a="\x00";function PZ(J,Q){let Z=Q+1,$=!1;while(Z<J.length){let z=J[Z];if(z===`
3
+ `)return-1;if(z==="\\"){Z+=2;continue}if(z==="[")$=!0;else if(z==="]")$=!1;else if(z==="/"&&!$){Z++;while(Z<J.length&&/[a-z]/i.test(J[Z]))Z++;return Z}Z++}return-1}function b(J){let Q="",Z=0,$="",z="";while(Z<J.length){let W=J.slice(Z,Z+2);if(W==="//"){while(Z<J.length&&J[Z]!==`
4
+ `)Q+=" ",Z++;continue}if(W==="/*"){while(Z<J.length&&J.slice(Z,Z+2)!=="*/")Q+=J[Z]===`
5
+ `?`
6
+ `:" ",Z++;Q+=" ",Z+=2;continue}let j=J[Z];if(j==='"'||j==="'"){let K=j;Q+=" ",Z++;while(Z<J.length&&J[Z]!==K){if(J[Z]==="\\"){Q+=" ",Z+=2;continue}Q+=J[Z]===`
7
+ `?`
8
+ `:" ",Z++}Q+=" ",Z++,$=a,z="";continue}if(j==="/"&&IZ($,z)){let K=PZ(J,Z);if(K!==-1){Q+=`/${" ".repeat(K-Z-2)}/`,Z=K,$=a,z="";continue}}if(j==="`"){Q+=" ",Z++;while(Z<J.length&&J[Z]!=="`"){if(J[Z]==="\\"){Q+=" ",Z+=2;continue}if(J[Z]==="$"&&J[Z+1]==="{"){let K=Z+2,q=DJ(J,K);if(Q+=" ",Q+=b(J.slice(K,q)),q<J.length)Q+=" ";Z=q+1;continue}Q+=J[Z]===`
9
+ `?`
10
+ `:" ",Z++}Q+=" ",Z++,$=a,z="";continue}if(Q+=j,Z++,/[\w$]/.test(j))z=/[\w$]/.test($)?z+j:j,$=j;else if(!/\s/.test(j))$=j,z=""}return Q}var p=["batch","clearServerData","computed","configureFetch","defineEmits","defineExpose","definePageMeta","defineProps","defineSlots","defineStore","derived","effect","goBack","goForward","inject","invalidateRoute","isDerived","isSignal","navigate","nextTick","onBeforeMount","onBeforeUnmount","onDestroy","onMount","onMounted","onUnmounted","peek","provide","reactive","ref","refresh","registerStoresClient","setRouteParams","state","untrack","useAsync","useClickOutside","useColorMode","useCookie","useCounter","useDark","useDebounce","useDebouncedValue","useDocumentVisibility","useEventListener","useFetch","useFocus","useHead","useId","useInterval","useLocalStorage","useMediaQuery","useModel","useMutation","useOptimistic","usePreferredContrast","usePreferredDark","usePreferredLight","usePreferredReducedMotion","useQuery","useReactiveProp","useRef","useRoute","useRouteParam","useRouteParams","useScrollLock","useSearchParams","useSeoMeta","useSessionStorage","useSlots","useStore","useThrottle","useTimeout","useToggle","useWebSocket","watch","watchEffect","watchMultiple","withDefaults"];var CZ=["defineEmits","defineExpose","definePageMeta","defineProps","defineSlots","withDefaults"];var B0=p.filter((J)=>!CZ.includes(J));var LZ=["x-text","x-html","x-model","x-show","x-if","x-for","x-cloak","x-ref","x-data","x-bind","x-class","x-style","x-tooltip","x-tooltip-position"],AZ=["x-init","x-transition","x-effect","x-on"],w0=[...LZ,...AZ];var o=h(require("node:fs")),m=h(require("node:path"));function IJ(J,Q,Z,$){let z=0;for(let W=Q;W<J.length;W++)if(J[W]===Z)z++;else if(J[W]===$&&!($===">"&&J[W-1]==="=")){if(--z===0)return W}return-1}function yZ(J){let Q=b(J),Z=0,$=0,z=[];for(let W=0;W<Q.length;W++)if("([{".includes(Q[W]))Z++;else if(")]}".includes(Q[W]))Z--;else if(Q[W]===","&&Z===0)z.push(J.slice($,W).trim()),$=W+1;return z.push(J.slice($).trim()),z}function jJ(J,Q){let Z=b(J),$=new RegExp(`\\b(?:${Q.map((z)=>z.replace(/[$]/g,"\\$&")).join("|")})\\s*(?=[<(])`,"g");for(let z of Z.matchAll($)){let W=z.index+z[0].length,j="";if(Z[W]==="<"){let q=IJ(Z,W,"<",">");if(q<0)continue;j=J.slice(W+1,q),W=q+1;while(/\s/.test(Z[W]||"")&&W<Z.length)W++}if(Z[W]!=="(")continue;let K=IJ(Z,W,"(",")");if(K>=0)return{type:j,args:yZ(J.slice(W+1,K))}}return null}var PJ=`
11
+ type __StxCtor<T> = T extends StringConstructor ? string : T extends NumberConstructor ? number : T extends BooleanConstructor ? boolean : T extends ArrayConstructor ? unknown[] : T extends ObjectConstructor ? object : T extends readonly unknown[] ? __StxCtor<T[number]> : T extends abstract new (...args: any[]) => infer V ? V : unknown;
12
+ type __StxWiden<T> = T extends string ? string : T extends number ? number : T extends boolean ? boolean : T;
13
+ type __StxOption<T> = T extends { type: infer C } ? __StxCtor<C> : T extends { default: infer D } ? D extends (...args: any[]) => infer V ? V : __StxWiden<D> : __StxCtor<T>;
14
+ type __StxRequired<O> = { [K in keyof O]-?: O[K] extends { required: true } ? K : never }[keyof O];
15
+ type __StxDefaulted<O> = { [K in keyof O]-?: O[K] extends { default: unknown } ? K : never }[keyof O];
16
+ type __StxOptions<O> = { [K in Exclude<__StxRequired<O>, __StxDefaulted<O>>]: __StxOption<O[K]> } & { [K in Exclude<keyof O, Exclude<__StxRequired<O>, __StxDefaulted<O>>>]?: __StxOption<O[K]> };
17
+ type __StxDefaults<P, K> = Omit<P, Extract<keyof P, K>> & Partial<Pick<P, Extract<keyof P, K>>>;
18
+ `;function CJ(J,Q){let Z=[],$={defineProps:["defineProps"],defineEmits:["defineEmits"],withDefaults:["withDefaults"]},z=b(J),W=J.replace(/\bimport\s+(?:type\s+)?(\{[^}]*\}|\*\s+as\s+[\w$]+|[\w$]+)\s+from\s*(['"])([^'"]+)\2\s*;?/g,(F,D,v,M,O)=>{if(z.slice(O,O+6)!=="import")return F;if(M.endsWith(".stx"))return"";let y=`${Q}Import${Z.length}`;if(Z.push(`import * as ${y} from ${JSON.stringify(M)};`),D.startsWith("*"))return`import ${D.replace(/^\*\s+as\s+/,"")} = ${y};`;if(!D.startsWith("{"))return`import ${D} = ${y}.default;`;return D.slice(1,-1).split(",").map((C)=>{let[P,L=P]=C.trim().replace(/^type\s+/,"").split(/\s+as\s+/);if(!P)return"";if(/^(?:stx|@stacksjs\/stx)(?:\/|$)/.test(M)&&P in $)$[P].push(L);return`import ${L} = ${y}.${P};`}).join(`
19
+ `)}),j=jJ(J,$.defineProps),K=jJ(J,$.defineEmits),q=jJ(J,$.withDefaults);if(!j&&!K)return{declarations:"",props:null,events:null};let U=[],G=null,B=null;if(j){U.push(`const __options = (${j.args[0]||"{}"}) as const;`),U.push(`const __defaults = (${q?.args[1]||"{}"});`);let F=j.type||"__StxOptions<typeof __options>";U.push(`export type __StxProps = __StxDefaults<${F}, keyof typeof __defaults | __StxDefaulted<typeof __options>>;`),G=`${Q}.__StxProps`}if(K)U.push(`const __events = (${K.args[0]||"[]"}) as const;`),U.push(`export type __StxEvents = ${K.type||"Record<(typeof __events)[number], any[]>"};`),B=`${Q}.__StxEvents`;return{declarations:`${Z.join(`
20
+ `)}
21
+ namespace ${Q} {
22
+ ${W}
23
+ ${U.join(`
24
+ `)}
25
+ }`,props:G,events:B}}var r=h(require("node:fs")),R=h(require("node:path")),LJ=new Map;function AJ(J,Q=!0){let Z=LJ.get(J);if(Q&&Z)return Z;let $=new Map,z=[R.default.join(J,"src"),R.default.join(J,"dist"),J];function W(j,K){if(K>6)return;let q;try{q=r.default.readdirSync(j,{withFileTypes:!0})}catch{return}for(let U of q){let G=R.default.join(j,U.name);if(U.isDirectory()){if(U.name==="node_modules"||U.name.startsWith("."))continue;W(G,K+1)}else if(U.isFile()&&U.name.endsWith(".stx")){let B=U.name.slice(0,-4);if(!$.has(B))$.set(B,G);let F=B.toLowerCase();if(!$.has(F))$.set(F,G);let D=B.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();if(!$.has(D))$.set(D,G)}}}for(let j of z)if(W(j,0),$.size>0)break;if(Q)LJ.set(J,$);return $}function yJ(J,Q){if(J.startsWith(".")||J.startsWith("/"))return null;let Z=Q;while(!0){let $=R.default.join(Z,"node_modules",J);try{if(r.default.statSync($).isDirectory())return $}catch{}let z=R.default.dirname(Z);if(z===Z)return null;Z=z}}function RJ(J,Q,Z={}){return[R.default.resolve(R.default.dirname(Q),`${J}.stx`),R.default.resolve(R.default.dirname(Q),J),R.default.resolve(Z.componentsDir||"components",`${J}.stx`),R.default.resolve(Z.componentsDir||"components",J),J.endsWith(".stx")?J:`${J}.stx`]}function _J(J){let Q=J.endsWith(".stx")?J.slice(0,-4):J,Z=Q.split("-").map((z)=>z.charAt(0).toUpperCase()+z.slice(1)).join(""),$=Q.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();return[Q,Z,$]}function RZ(J,Q){let[Z,$,z]=_J(J);for(let W of[Z,Z.toLowerCase(),$,z]){let j=Q?.__importedComponents?.get(W);if(j!==void 0)return j}}function*_Z(J,Q,Z={},$){let z=_J(J);if(z[0].startsWith("./")||z[0].startsWith("../")){yield R.default.resolve(R.default.dirname(Q),`${z[0]}.stx`);return}let W=[...new Set(z.map((q)=>`${q}.stx`))],j=Z.projectRoot||process.cwd(),K=[...$?.__originalFilePath?[R.default.join(R.default.dirname($.__originalFilePath),"components")]:[],...Z.componentsDir?[Z.componentsDir]:[],R.default.join(R.default.dirname(Q),"components"),R.default.resolve(j,"src/components"),R.default.resolve(j,"components"),R.default.resolve("/home/runner/work/stx/stx/packages/stx/src","components")];for(let q of new Set(K)){for(let U of W)yield R.default.join(q,U);try{for(let U of r.default.readdirSync(q,{withFileTypes:!0}))if(U.isDirectory())for(let G of W)yield R.default.join(q,U.name,G)}catch{}}}function SJ(J,Q,Z={},$){let z=RZ(J,$);if(z!==void 0)return z;for(let W of _Z(J,Q,Z,$))try{if(r.default.statSync(W,{throwIfNoEntry:!1})?.isFile())return W}catch{}return null}var kJ=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","component","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","menu","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","path","circle","rect","line","polygon","polyline","ellipse","text","tspan","textPath","g","defs","use","symbol","image","clipPath","mask","pattern","marker","linearGradient","radialGradient","stop","filter","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","foreignObject","animate","animateMotion","animateTransform","set","mpath","desc","metadata","switch","view"]);function TJ(J){if(J.includes("-")||J==="component")return!1;if(/^[A-Z]/.test(J))return!/[a-z]/.test(J)&&[...kJ].some((Q)=>Q.toLowerCase()===J.toLowerCase());return kJ.has(J)||/[A-Z]/.test(J)}function*SZ(J){let Q=/<([A-Za-z][\w.-]*)(?=[\s/>])/g,Z;while(Z=Q.exec(J)){let $=Q.lastIndex,z=[];while($<J.length){while(/\s/.test(J[$]||""))$++;if(J[$]===">"||J.slice($,$+2)==="/>"){$+=J[$]===">"?1:2;break}let W=/^[^\s=/>]+/.exec(J.slice($))?.[0];if(!W){$++;continue}let j=$;$+=W.length;while(/\s/.test(J[$]||""))$++;if(J[$]!=="="){z.push({name:W,value:!0,offset:j,braced:!1});continue}$++;while(/\s/.test(J[$]||""))$++;let K=J[$],q=K==="{",U=K==='"'||K==="'";if(U||q)$++;let G=$;if(q){let B=b(J.slice($)),F=1,D=0;for(;D<B.length;D++){if(B[D]==="{")F++;if(B[D]==="}"&&--F===0)break}$+=D}else if(U)while($<J.length&&J[$]!==K)$++;else while($<J.length&&!/[\s/>]/.test(J[$]))$++;if(z.push({name:W,value:J.slice(G,$),offset:G,braced:q}),U||q)$++}Q.lastIndex=$,yield{name:Z[1],offset:Z.index,attributes:z}}}function EJ(J,Q,Z){let $=[],z=[PJ,"type __StxAssignedValue<T> = T extends { readonly _isSignal: true } | { readonly _isDerived: true } ? T extends () => infer V ? V : T : T;","type __StxProp<P, K> = K extends keyof P ? P[K] : unknown;",'type __StxEvent<E, K> = K extends keyof E ? E[K] extends readonly unknown[] ? Exclude<E[K]["length"], 0 | 1> extends never ? E[K][0] : E[K] : E[K] : any;'],W=new Map,j=new Map,K=new Map,q=Z.scriptCode(J,Z.filePath),U=b(q);for(let v of q.matchAll(/\bimport\s+(\{[^}]+\}|[\w$]+)\s+from\s*['"]([^'"]+)['"]/g)){if(U.slice(v.index,v.index+6)!=="import")continue;let M=v[2],O=m.default.isAbsolute(M)||M.startsWith(".")?m.default.resolve(m.default.dirname(Z.filePath),M):yJ(M,m.default.dirname(Z.filePath));if(!O)continue;let y=O.endsWith(".stx")?O:o.default.existsSync(`${O}.stx`)?`${O}.stx`:void 0,C=y?null:AJ(O,!1),P=v[1].startsWith("{")?v[1].slice(1,-1).split(","):[v[1]];for(let L of P){let[T,A=T]=L.trim().split(/\s+as\s+/),N=y||C?.get(T)||C?.get(T.toLowerCase());if(N)K.set(A,N),K.set(A.toLowerCase(),N),K.set(A.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),N)}}for(let v of Q.matchAll(/@import\s*\(([^)]+)\)/g))for(let M of v[1].matchAll(/['"]([^'"]+)['"]/g)){let O=RJ(M[1],Z.filePath,Z).find((y)=>o.default.statSync(y,{throwIfNoEntry:!1})?.isFile());if(O)K.set(m.default.basename(M[1]).replace(/\.stx$/,""),O)}let G={__importedComponents:K},B=new Map,F=(v,M,O)=>{let y=J.slice(0,v);return{code:M,offset:v,attribute:O,anchor:!0,kind:"directive",line:y.split(`
26
+ `).length,column:v-y.lastIndexOf(`
27
+ `)}},D=(v,M,O)=>$.push({expression:v,statement:{text:M+v.code+O,prefixLength:M.length}});for(let v of SZ(Q)){if(TJ(v.name)||v.name==="component")continue;let M=SJ(v.name,Z.filePath,Z,G);if(!M)continue;let O=B.get(M);if(!O){let C;try{C=Z.readComponent?Z.readComponent(M):o.default.readFileSync(M,"utf8")}catch{continue}if(C===void 0)continue;j.set(M,C),O=CJ(Z.scriptCode(C,M),`__StxComponent${B.size}`),B.set(M,O),z.push(O.declarations)}let y=[];for(let C of v.attributes){let{name:P,offset:L}=C,T=C.value===!0?"true":C.value;if(P.startsWith("@")||P.startsWith("v-on:")){if(O.events&&C.value!==!0)W.set(L,`__StxEvent<${O.events}, ${JSON.stringify(P.replace(/^@|^v-on:/,"").split(".")[0])}>`);continue}let A=/^v-model(?::([\w-]+))?(?:\.[\w-]+)*$/.exec(P);if(P.startsWith("v-")&&!P.startsWith("v-bind:")&&!A)continue;if(/^(?:x-|:)(?:if|for|show|key|else)(?:$|[.:-])/.test(P))continue;let N=(A?A[1]||"modelValue":P.replace(/^:|^v-bind:/,"")).replace(/-([a-z])/g,(x,l)=>l.toUpperCase());if(y.push(N),!O.props)continue;let E=P.startsWith(":")||P.startsWith("v-bind:")||!!A||C.braced?T:C.value!==!0?JSON.stringify(T):"true";D(F(L,E,P),";void ((",`) satisfies __StxProp<${O.props}, ${JSON.stringify(N)}>);`)}if(O.props){let C=[...new Set(y)].map((L)=>`${JSON.stringify(L)}: undefined as any`).join(", "),P=F(v.offset,`<${v.name}>`);$.push({expression:P,statement:{text:`;void ({ ${C} } satisfies ${O.props} & Record<string, unknown>);`,prefixLength:0}})}}return{declarations:B.size?z.join(`
28
+ `):"",checks:$,events:W,dependencies:j}}var xJ=/<script(\s[^>]*)?>([\s\S]*?)<\/script>/gi;function kZ(J){let Q=(Z)=>Z.replace(/[^\n]/g," ");return J.replace(/<!--[\s\S]*?-->/g,Q).replace(/\{\{--[\s\S]*?--\}\}/g,Q)}function e(J){let Q=[],Z=kZ(J);xJ.lastIndex=0;let $;while(($=xJ.exec(Z))!==null){let z=($[1]||"").trim(),W=($[0].match(/^<script(?:\s[^>]*)?>/i)?.[0]??"<script>").length,j=($[0].match(/<\/script\s*>$/i)?.[0]??"</script>").length,K=$.index+W,q=$.index+$[0].length-j,U=J.slice(K,q);if(/\bsrc\s*=/.test(z))continue;let G=z.match(/\btype\s*=\s*["']([^"']+)["']/i);if(G&&!/^(?:module|text\/(?:javascript|typescript))$/i.test(G[1]))continue;let B=/\bserver\b/.test(z)?"server":/\bclient\b/.test(z)?"client":"plain",F=c(J,K);Q.push({kind:B,code:U,startLine:F,startColumn:n(J,K),offset:K,attrs:z})}return Q}function c(J,Q){let Z=1;for(let $=0;$<Q&&$<J.length;$++)if(J.charCodeAt($)===10)Z++;return Z}function n(J,Q){let Z=J.lastIndexOf(`
29
+ `,Q-1)+1;return Q-Z+1}function JJ(J){let Q=J.split(""),Z=(z,W)=>{for(let j=z;j<W&&j<Q.length;j++)if(Q[j]!==`
30
+ `)Q[j]=" "},$=[/<script(?:\s[^>]*)?>[\s\S]*?<\/script>/gi,/<style(?:\s[^>]*)?>[\s\S]*?<\/style>/gi,/<!--[\s\S]*?-->/g,/\{\{--[\s\S]*?--\}\}/g,/@verbatim\b[\s\S]*?@endverbatim\b/g];for(let z of $){z.lastIndex=0;let W;while((W=z.exec(J))!==null)Z(W.index,W.index+W[0].length)}return Q.join("")}function TZ(J){let Q=0,Z="";for(let $=0;$<J.length;$++){let z=J[$];if(Z){if(z==="\\"){$++;continue}if(z===Z)Z="";continue}if(z==='"'||z==="'"||z==="`"){Z=z;continue}if(z==="("||z==="["||z==="{"){Q++;continue}if(z===")"||z==="]"||z==="}"){Q--;continue}if(z==="|"&&Q===0){if(J[$+1]==="|"){$++;continue}if(J[$-1]==="|")continue;return J.slice(0,$)}}return J}var pJ=new Set([":for","x-for","v-for"]),ZJ=/(?:^|\s)((?::|x-|v-|@)[\w.:-]+)\s*=\s*(["'])([\s\S]*?)\2/g,YJ="__stx_interpolated",NJ="__StxElement",mJ="__StxTemplateValue",EZ=`type ${mJ}<T> = T extends { readonly _isSignal: true } | { readonly _isDerived: true } ? (T extends () => infer V ? T & V : T) : T`;function bJ(J){return J.replace(/\{\{[\s\S]*?\}\}/g,YJ).replace(/\{!![\s\S]*?!!\}/g,YJ)}function xZ(J){return J.replace(/\{\{[\s\S]*?\}\}|\{!![\s\S]*?!!\}/g,(Q)=>{let Z=Q.split(`
31
+ `).length-1,$=Q.length-Z;return`0${" ".repeat(Math.max(0,$-1))}${`
32
+ `.repeat(Z)}`})}var NZ=["foreach","endforeach","forelse","endforelse","for","endfor","while","endwhile","empty","if","elseif","else","endif","unless","endunless","isset","endisset","switch","case","default","endswitch","auth","endauth","guest","endguest","env","endenv","once","endonce","break","continue"],bZ=new RegExp(String.raw`^[ \t]*@(?:${NZ.join("|")})\b[ \t]*(\([^\n)]*\))?[ \t]*$`,"gm");function gZ(J){return J.replace(bZ,(Q)=>Q.replace(/[^\n]/g," "))}var gJ=new Set(["x-cloak","x-ref","x-transition","x-teleport","v-slot","x-hydrate",":key","x-tooltip","x-tooltip-position"]);function fZ(J){let Q=JJ(J),Z=[],$=/(@?)\{\{([\s\S]*?)\}\}|(@?)\{!!([\s\S]*?)!!\}/g,z;while((z=$.exec(Q))!==null){if(z[1]||z[3])continue;let K=z[2]??z[4]??"",q=z[2]!==void 0?2:3,U=TZ(K);if(!U.trim())continue;let G=z.index+q+(U.length-U.trimStart().length);Z.push({code:U.trim(),line:c(Q,G),column:n(Q,G),offset:G,kind:"interpolation"})}let W=/@(if|elseif|else\s+if|unless)\b\s*\(/g;while((z=W.exec(Q))!==null){let j=z.index+z[0].length-1,K=0,q=j;for(;q<Q.length;q++){let F=Q[q];if(F==="(")K++;else if(F===")"){if(K--,K===0)break}}if(K!==0)continue;let U=Q.slice(j+1,q),G=U.trim();if(W.lastIndex=q+1,!G)continue;let B=j+1+(U.length-U.trimStart().length);Z.push({code:G,line:c(Q,B),column:n(Q,B),offset:z.index,kind:"condition"})}ZJ.lastIndex=0;while((z=ZJ.exec(Q))!==null){let j=z[1],K=z[3]??"",q=j.replace(/\..*$/,"").replace(/^([^:].*?):.*$/,"$1");if(gJ.has(q)||gJ.has(j))continue;if(!K.trim())continue;let U=z.index+z[0].indexOf(z[2],z[0].indexOf(j)+j.length)+1;if(pJ.has(q)){let B=K.match(/\s+(?:in|of)\s+/);if(!B||B.index===void 0)continue;let F=K.slice(B.index+B[0].length),D=B.index+B[0].length+(F.length-F.trimStart().length);Z.push({code:bJ(F.trim()),line:c(Q,U+D),column:n(Q,U+D),offset:U+D,kind:"directive",attribute:q});continue}let G=K.length-K.trimStart().length;Z.push({code:bJ(K.trim()),line:c(Q,U+G),column:n(Q,U+G),offset:U+G,kind:"directive",attribute:q})}return Z.sort((j,K)=>j.line-K.line||j.column-K.column),Z}var uZ=2000;function hZ(J,Q){let Z=0,$=Math.min(J.length,Q+uZ);for(let z=Q;z<$;z++){let W=J[z];if(W==="(")Z++;else if(W===")"){if(Z--,Z===0)return J.slice(Q+1,z)}}return null}function pZ(J){let Q=new Map,Z=(K,q)=>{let U=K.split(/[,[\]{}()\s]+/).filter(Boolean);for(let G of U){let B=G.replace(/^\.\.\./,"").trim();if(!/^\$?[A-Z_$][\w$]*$/i.test(B))continue;let F=U.length===1?q:void 0,D=Q.get(B);if(!D)Q.set(B,{name:B,iterable:F});else if(D.iterable!==F)D.iterable=void 0}},$=/^\$?[A-Z_$][\w$]*$/i,z=(K)=>{let q=K.trim();return $.test(q)?q:void 0};for(let K of J.matchAll(/@for(?:each|else)\s*\(/g)){let q=hZ(J,K.index+K[0].length-1);if(q===null)continue;let U=q.match(/^([\s\S]*?)\bas\b([\s\S]*)$/);if(!U)continue;Z(U[2].replace(/=>/g," "),z(U[1]))}for(let K of J.matchAll(/@for\s*\(\s*(?:let|const|var)\s+([\w$]+)/g))Z(K[1]);let W=JJ(J);ZJ.lastIndex=0;let j;while((j=ZJ.exec(W))!==null){let K=j[1].replace(/\..*$/,"");if(!pJ.has(K))continue;let q=j[3].match(/\s+(?:in|of)\s+/);if(!q||q.index===void 0)continue;Z(j[3].slice(0,q.index),z(j[3].slice(q.index+q[0].length)))}for(let K of J.matchAll(/@(?:php|js|ts)\b([\s\S]*?)@end(?:php|js|ts)\b/g))for(let q of K[1].matchAll(/\b(?:const|let|var|function|class)\s+([\w$]+)/g))Z(q[1]);return[...Q.values()].sort((K,q)=>K.name.localeCompare(q.name))}function t(J){let Q=new Set;for(let Z of J.matchAll(/^\s*(?:export\s+)?(?:const|let|var)\s+([\w$]+)/gm))Q.add(Z[1]);for(let Z of J.matchAll(/^\s*(?:export\s+)?(?:async\s+)?function\s*\*?\s*([\w$]+)/gm))Q.add(Z[1]);for(let Z of J.matchAll(/^\s*(?:export\s+)?class\s+([\w$]+)/gm))Q.add(Z[1]);for(let Z of J.matchAll(/^\s*(?:export\s+)?(?:const|let|var)\s*[[{]([^\]}]*)[\]}]/gm))for(let $ of Z[1].split(",")){let z=$.split(":").pop().split("=")[0].replace(/^\.\.\./,"").trim();if(/^[A-Z_$][\w$]*$/i.test(z))Q.add(z)}return[...Q].sort()}var fJ=["params","query","cookies","host","ip","setResponseStatus","setResponseHeader","notFound","request","url","definePageMeta","defineClientPayload","defineStore","props","$props"];var uJ=["$env","$user","$slot","$slots","$attrs","$props","$page","$route","$loop","loop","$errors","$csrf","props","slot"];function lJ(J){let Q=new Set,Z=new Set;for(let $ of J){let z=$.kind==="server"?Q:Z;for(let W of t($.code))z.add(W)}return[...Q].filter(($)=>Z.has($)).sort()}var mZ=/^\s*[A-Z_$][\w$]*\s*=[^=]/i;function lZ(J,Q){let Z=/@(if|unless|elseif|else|endif|endunless)\b\s*(\()?/g,$=[],z;while((z=Z.exec(J))!==null){if(z.index>Q)break;let W=z[1];if(z.index===Q){if(W==="elseif"){let K=$[$.length-1];if(K?.current)K.seen.push(K.current);if(K)K.current=null}break}if(W==="endif"||W==="endunless"){$.pop();continue}let j="";if(z[2]==="("){let K=0,q=z.index+z[0].length-1,U=q+1;for(;q<J.length;q++){let G=J[q];if(G==="(")K++;else if(G===")"){if(K--,K===0)break}}j=J.slice(U,q).trim(),Z.lastIndex=q+1}if(W==="if")$.push({seen:[],current:j});else if(W==="unless")$.push({seen:[],current:`!(${j})`});else if(W==="elseif"||W==="else"){let K=$[$.length-1];if(!K)continue;if(K.current)K.seen.push(K.current);K.current=W==="elseif"?j:null}}return $.flatMap((W)=>[...W.seen.map((j)=>`!(${j})`),...W.current?[W.current]:[]]).filter(Boolean)}function dZ(J){let Q=J.code.trim();if(!Q)return null;if(J.attribute?.startsWith("@")){if(mZ.test(Q))return null;let $=";(($event: any): void => { ";return{text:`${$}${Q} });`,prefixLength:$.length}}let Z=";void ((";return{text:`${Z}${Q}));`,prefixLength:Z.length}}var rZ=/(\bfrom\s*|\bimport\s*\(\s*|\bimport\s+)(['"])(\.{1,2}\/[^'"\n]*)\2/g;function hJ(J,Q){if(!Q)return J;return J.replace(rZ,(Z,$,z,W)=>{let j=WJ.default.resolve(Q,W).replace(/\\/g,"/");return`${$}${z}${j}${z}`})}function cZ(J){return" ".repeat(Math.max(0,(J.startColumn??1)-1))}function nZ(J){let Q=new Set,Z=b(J);for(let $ of Z.matchAll(/\bimport\s+(?:type\s+)?([\w$*{}\s,]+?)\s+from\b/g)){let z=$[1],W=/\{([^}]*)\}/.exec(z);for(let U of W?.[1].split(",")??[]){let G=U.trim().replace(/^type\s+/,"").split(/\s+as\s+/).pop()?.trim();if(G&&/^[A-Z_$][\w$]*$/i.test(G))Q.add(G)}let j=z.replace(/\{[^}]*\}/,""),K=/\*\s*as\s+([A-Z_$][\w$]*)/i.exec(j);if(K)Q.add(K[1]);let q=/^\s*([A-Z_$][\w$]*)/i.exec(j);if(q&&q[1]!=="type")Q.add(q[1])}return[...Q].sort()}function dJ(J,Q={}){let Z=e(J),$=J.split(`
33
+ `),z=Array.from({length:$.length},()=>""),W=new Map,j=Q.filePath&&Q.templateExpressions!==!1?EJ(J,JJ(J),{filePath:Q.filePath,componentsDir:Q.componentsDir,projectRoot:Q.projectRoot,readComponent:Q.readComponent,scriptCode:(B,F)=>e(B).map((D)=>hJ(D.code,WJ.default.dirname(F))).join(`
34
+ `)}):void 0,K=new Set,q=[];for(let B of Z){let F=gZ(xZ(B.code)),D=hJ(F,Q.originDir??"").split(`
35
+ `);D.forEach((v,M)=>{let O=B.startLine-1+M;if(O<z.length)z[O]=M===0?cZ(B)+v:v,K.add(O)}),q.push(B.startLine-1+D.length-1)}for(let B of q){let F=z[B]?.trim()===""?B:B+1;if(F<z.length&&z[F].trim()===""&&(F===B||!K.has(F)))z[F]=";"}let U=(B,F)=>{for(let[D,v]of B.split(`
36
+ `).entries())if(z.push(v),F)W.set(z.length,D===0?F:{...F,line:F.line+D,column:1,prefixLength:0})};if(Q.globals!==!1){U("");let B=new Set([...Z.flatMap((M)=>t(M.code)),...Z.flatMap((M)=>nZ(M.code))]),F=(M)=>{if(!B.has(M))U(`declare var ${M}: any`)};if(Q.runtimeGlobals!==!1){if(!B.has("window"))U("declare var window: any");for(let M of p)F(M)}let D=[...new Set([...fJ,...KJ,...uJ])].filter((M)=>Q.runtimeGlobals!==!1||!p.includes(M));if(Q.contextScope==="global"){U("declare global {");for(let M of D)U(` var ${M}: any`);U("}")}else{for(let M of fJ)F(M);for(let M of KJ)F(M);for(let M of uJ)F(M)}U(`declare var ${YJ}: any`);let v=new Set(Z.flatMap((M)=>t(M.code)));U(`type ${NJ}<T> = T extends readonly (infer E)[] ? E : T extends Iterable<infer E2> ? E2 : any`);for(let M of pZ(J)){if(v.has(M.name))continue;let O=M.iterable&&v.has(M.iterable)?`${NJ}<typeof ${M.iterable}>`:"any";U(`declare var ${M.name}: ${O}`)}}if(Q.templateExpressions!==!1){if(j?.declarations)for(let F of j.declarations.split(`
37
+ `))U(F);let B=fZ(J).map((F)=>{let D=j?.events.get(F.offset??-1);if(D){F.anchor=!0;let v=F.code.trim(),M=/^([\w$]+)\s*=\s*([^=][\s\S]*)$/.exec(v),O=M?`void ((${M[2]}) satisfies __StxAssignedValue<typeof ${M[1]}>)`:/^[\w$]+(?:\.[\w$]+)*$/.test(v)?`${v}($event)`:v,y=`;(($event: ${D}): void => { `;return{expression:F,statement:{text:`${y}${O} });`,prefixLength:y.length}}}return{expression:F,statement:dZ(F)}}).filter((F)=>F.statement!==null);if(B.push(...j?.checks||[]),B.length>0){let F=JJ(J),v=[...new Set(Z.flatMap((O)=>t(O.code)))].filter((O)=>/^[A-Z_$][\w$]*$/i.test(O)),M=0;if(v.length>0){U(EZ);for(let O of v)U(`type __StxT_${O} = ${mJ}<typeof ${O}>`);U(`;((${v.map((O)=>`${O}: __StxT_${O}`).join(", ")}) => {`),M=1}for(let{expression:O,statement:y}of B){let C=" ".repeat(M),P=O.offset===void 0?[]:lZ(F,O.offset),L=P.length>0?`${P.map((A)=>`if (${A}) `).join("")}{ `:"",T=P.length>0?" }":"";U(C+L+y.text+T,{line:O.line,column:O.column,expression:O,prefixLength:y.prefixLength+C.length+L.length,guardPrefixLength:C.length+L.length})}if(M>0)U("});")}}let G=!1;if(Q.reference&&z[0]!==void 0&&z[0].trim()==="")z[0]=`/// <reference path=${JSON.stringify(Q.reference.replace(/\\/g,"/"))} />`,G=!0;return U("export {}"),{text:z.join(`
38
+ `),lineMap:W,sourceLineCount:$.length,componentDependencies:j?.dependencies,referenced:G}}function qJ(J){let Q=[0];for(let Z=0;Z<J.length;Z++)if(J.charCodeAt(Z)===10)Q.push(Z+1);return Q}function $J(J,Q){let Z=0,$=J.length-1;while(Z<$){let z=Math.ceil((Z+$)/2);if(J[z]<=Q)Z=z;else $=z-1}return{line:Z+1,column:Q-J[Z]+1}}function QJ(J,Q,Z){let $=Math.min(Math.max(Q,1),J.length)-1,z=$+1<J.length?J[$+1]-1:Number.MAX_SAFE_INTEGER;return Math.min(J[$]+Math.max(Z,1)-1,z)}function rJ(J,Q){if(!J.expression)return!1;return J.inGuard===!0||Q===2774}function cJ(J,Q,Z){let $=J.lineMap.get(Q);if(!$)return Q<=J.sourceLineCount?{line:Q,column:Z}:null;let z=$.expression?.anchor?0:Math.max(0,Z-1-($.prefixLength??0));return{line:$.line,column:$.column+z,expression:$.expression,inGuard:Z<=($.guardPrefixLength??0)}}var nJ=["module","exports","require","props","$props","$bool","defineProps","withDefaults","defineClientPayload","useServerData","useRuntimeConfig","useServerRuntimeConfig","state","derived","effect","batch","onMount","onDestroy","definePageMeta","useRoute","useRouter","useHead","useSeoMeta","setResponseStatus","setResponseHeader","notFound","ref","reactive","computed","watch","onMounted","onUnmounted","nextTick","defineEmits","defineExpose","defineSlots","provide","inject","useColorMode","useDark","useMediaQuery","useScrollLock","usePreferredDark","usePreferredLight","usePreferredReducedMotion","usePreferredContrast","window","document","console","confirm","alert","fetch","params"];var sZ=new Set(["module","exports","require","$bool","window","document","console","confirm","alert","fetch"]),iJ=nJ.filter((J)=>!sZ.has(J)).sort(),aJ=[...p].sort(),iZ=[...new Set([...iJ,...aJ])].sort(),aZ=new Set(iJ),oZ=new Set(aJ),tZ=new Set(iZ),sJ=/\bimport\s+(?!type[\s{])\{([^}]*)\}\s*from\s*(['"])stx\2/g;function eZ(J,Q){if(Q==="server")return`'${J}' is not provided by 'stx' in a <script server> block. The engine binds only its own names there (defineProps, state, useHead, ...); any other name becomes \`await import('stx')\`, which does not resolve, so the whole script fails when the page renders. Import it from '@stacksjs/stx' instead.`;return`'${J}' is not provided by 'stx' in a client <script> block. The import is replaced by the window.stx runtime, which has no '${J}', so it is undefined in the browser.`}function oJ(J,Q){let Z=[];for(let $ of Q){if($.offset===void 0)continue;let z=$.kind==="server"?aZ:oZ;sJ.lastIndex=0;for(let W of $.code.matchAll(sJ)){let j=W.index+W[0].indexOf("{")+1;for(let K of W[1].matchAll(/[^,]+/g)){let q=K[0];if(/^\s*type\s/.test(q))continue;let U=/^\s*([A-Za-z_$][\w$]*)/.exec(q);if(!U)continue;let G=U[1];if(!tZ.has(G)||z.has(G))continue;let B=$.offset+j+K.index+U[0].length-G.length,F=J.slice(0,B),D=F.split(`
39
+ `).length;Z.push({line:D,column:B-(F.lastIndexOf(`
40
+ `)+1)+1,offset:B,length:G.length,name:G,kind:$.kind,message:eZ(G,$.kind)})}}}return Z}var u=h(require("node:path")),J0="@stacksjs/stx-typescript-plugin";function Z0(J,Q){let Z=u.default.resolve(J);for(;;){let $=u.default.join(Z,"tsconfig.json");if(Q($))return $;let z=u.default.dirname(Z);if(z===Z)return;Z=z}}function tJ(J,Q,Z){let $=Z0(J,Z);if(!$)return;let z=new Set,W=(j)=>{if(z.has(j))return;z.add(j);let K=Q(j);if(!K)return;let q=K.compilerOptions?.plugins;if(Array.isArray(q)){let G=q.find((F)=>F?.name===J0),B=Array.isArray(G?.libs)?G.libs.filter((F)=>typeof F==="string"):[];return G?{configPath:j,libs:B.map((F)=>u.default.resolve(u.default.dirname(j),F))}:null}let U=typeof K.extends==="string"?[K.extends]:Array.isArray(K.extends)?K.extends:[];for(let G of[...U].reverse()){if(typeof G!=="string"||!G.startsWith("."))continue;let B=u.default.resolve(u.default.dirname(j),G.endsWith(".json")?G:`${G}.json`),F=W(B);if(F!==void 0)return F}return};return W($)??void 0}var eJ=Symbol.for("@stacksjs/stx-typescript-plugin"),$0=new Set([2300,2451,2403]);function s(J){return J.endsWith(".stx")}function JZ(J){return s(J)||J.endsWith(".md")}function Q0(J){if(!J)return;return g.existsSync(k.default.join(J,"stx-module.d.ts"))&&g.existsSync(k.default.join(J,"stx.d.ts"))?k.default.join(J,"stx-module.d.ts"):void 0}function z0(J,Q=g.existsSync){let Z=J;for(;;){let $=k.default.join(Z,"node_modules","@stacksjs","stx","stx-module.d.ts");if(Q($))return $;let z=k.default.dirname(Z);if(z===Z)return;Z=z}}function K0(J,Q=k.default.join($Z.tmpdir(),"stx-typescript-plugin")){let Z=J.map((z)=>`/// <reference path=${JSON.stringify(z.replace(/\\/g,"/"))} />`).join(`
41
+ `)+`
42
+ `,$=k.default.join(Q,`${ZZ.createHash("sha1").update(Z).digest("hex").slice(0,16)}.d.ts`);if(!g.existsSync($))g.mkdirSync(Q,{recursive:!0}),g.writeFileSync($,Z);return $}function j0(J,Q,Z,$){let z=(K)=>dJ(Q,{templateExpressions:s(J),originDir:k.default.dirname(J),filePath:J,readComponent:$.readComponent,componentsDir:$.componentsDir,projectRoot:$.projectRoot,reference:K,runtimeGlobals:!K,contextScope:"global"}),W=z($.declarations);if($.declarations&&!W.referenced)W=z(void 0);let j=e(Q);return{version:Z,source:Q,virtual:W,blocks:j,sourceStarts:qJ(Q),virtualStarts:qJ(W.text),collisions:new Set(lJ(j))}}function Y0(J,Q){let Z=J.findConfigFile(Q,J.sys.fileExists);if(!Z)return;let $=J.readConfigFile(Z,J.sys.readFile);if($.error)return;let z=J.parseJsonConfigFileContent($.config,J.sys,k.default.dirname(Z),void 0,Z),W={};if(z.options.types)W.types=z.options.types;let j=z.options.paths;if(j){let K=z.options.baseUrl??z.options.pathsBasePath??k.default.dirname(Z);W.paths={};for(let[q,U]of Object.entries(j))W.paths[q]=U.map((G)=>k.default.isAbsolute(G)?G:k.default.resolve(K,G))}return W}function W0(J,Q={}){let Z=J.typescript,$={},z=new Set,W=new WeakSet;return{create(j){let K=(Y)=>{j.project.projectService.logger.info(`[stx-plugin] ${Y}`)};if(j.languageService[eJ])return W.add(j.project),K("already applied to this project by another registration of the plugin; leaving it as it is"),j.languageService;K("TypeScript stx plugin initialized");let{languageService:q,languageServiceHost:U}=j,G=(Y)=>{let V=q[Y];return typeof V==="function"?V.bind(q):()=>{return}},B=U.getScriptSnapshot?.bind(U),F=U.getScriptVersion?.bind(U),D=Q0(Q.declarationsDir);if(!D)K("the bundled stx declarations were not found; apps without their own fall back to `any`");let v=(Y)=>Z.sys?.fileExists(Y)??g.existsSync(Y),M=(Y)=>{let V=Z.readConfigFile?.(Y,(H)=>Z.sys.readFile(H));return V&&!V.error?V.config:void 0},O=new Map,y=(Y)=>{let V=k.default.dirname(Y);if(!O.has(V)){let H=z0(V,v)??D,X=[];try{X=(tJ(V,M,v)?.libs??[]).filter(v)}catch(w){K(`could not read the stx entry of the project's tsconfig: ${String(w)}`)}O.set(V,H&&X.length>0?K0([H,...X]):H)}return O.get(V)},C=new Map,P=(Y)=>{let V=B?.(Y);return V?V.getText(0,V.getLength()):Z.sys?.readFile(Y)},L=()=>$.enabled!==!1;z.add(()=>{C.clear(),j.project.refreshDiagnostics?.()});let T=(Y)=>{if(!JZ(Y)||!B)return;let V=`${F?.(Y)||"0"}:${U.getProjectVersion?.()||""}`,H=C.get(Y);if(H&&H.version===V&&[...H.virtual.componentDependencies||[]].every(([w,I])=>P(w)===I))return H;let X=B(Y);if(!X)return;try{let w=j.project.getCurrentDirectory?.(),I=w?k.default.resolve(w,typeof j.config?.componentsDir==="string"?j.config.componentsDir:"components"):void 0,_=j0(Y,X.getText(0,X.getLength()),V,{declarations:y(Y),readComponent:P,componentsDir:I,projectRoot:w});return C.set(Y,_),_}catch(w){K(`failed to build virtual document for ${Y}: ${String(w)}`);return}},A=(Y)=>s(Y)?T(Y):void 0,N=(Y,V)=>{let H=$J(Y.virtualStarts,V);return cJ(Y.virtual,H.line,H.column)},i=(Y,V)=>{let H=N(Y,V);if(!H)return;return QJ(Y.sourceStarts,H.line,H.column)},E=(Y,V)=>{let H=$J(Y.sourceStarts,V);return QJ(Y.virtualStarts,H.line,H.column)},x=(Y,V)=>{let H=i(Y,V.start);if(H===void 0)return;let X=i(Y,V.start+V.length);return{start:H,length:X!==void 0&&X>=H?X-H:V.length}},l=(Y,V)=>Y.blocks.some((H)=>H.offset!==void 0&&V>=H.offset&&V<=H.offset+H.code.length),HJ=(Y)=>{let V=A(Y.fileName);if(!V)return Y;let H=x(V,Y.textSpan);if(!H)return;let X=Y.contextSpan?x(V,Y.contextSpan):void 0;return{...Y,textSpan:H,contextSpan:X}},VJ=(Y)=>Y?.map(HJ).filter((V)=>V!==void 0),UJ=(Y)=>Y?.filter((V)=>{let H=A(V.fileName);if(!H)return!0;let{line:X}=$J(H.virtualStarts,V.textSpan.start);return X<=H.virtual.sourceLineCount&&!H.virtual.lineMap.has(X)});if(B)U.getScriptSnapshot=(Y)=>{let V=T(Y);if(V)return Z.ScriptSnapshot.fromString(V.virtual.text);return B(Y)};let GJ=U.getCompilationSettings?.bind(U),zZ=Z.server?.ProjectKind!==void 0&&j.project.projectKind===Z.server.ProjectKind.Inferred;if(GJ&&zZ){let Y=null,V;U.getCompilationSettings=()=>{let H=GJ();if(Y===null)try{Y=Y0(Z,j.project.getCurrentDirectory())}catch(X){K(`could not read the project's tsconfig: ${String(X)}`),Y=void 0}if(!Y)return H;if(V?.from!==H)V={from:H,options:{...H,...Y.paths&&!H.paths?{paths:Y.paths}:{},...Y.types&&!H.types?{types:Y.types}:{}}};return V.options}}let zJ=(Y,V)=>{let H=T(Y);if(!H)return V;if(s(Y)&&!L())return[];let X=[];for(let w of V){let I=typeof w.messageText==="string"?w.messageText:w.messageText.messageText;if($0.has(w.code)){let f=I.match(/'([^']+)'/)?.[1];if(f&&H.collisions.has(f))continue}if(w.start===void 0){X.push(w);continue}let _=N(H,w.start);if(!_||rJ(_,w.code))continue;let S=QJ(H.sourceStarts,_.line,_.column),d=i(H,w.start+(w.length??0));X.push({...w,start:S,length:d!==void 0&&d>S?d-S:w.length??0})}return X},KZ=G("getSemanticDiagnostics");q.getSemanticDiagnostics=(Y)=>{let V=zJ(Y,KZ(Y)),H=A(Y);if(!H||!L())return V;let X=q.getProgram?.()?.getSourceFile(Y);for(let w of oJ(H.source,H.blocks))V.push({file:X,start:w.offset,length:w.length,messageText:w.message,category:Z.DiagnosticCategory?.Error??1,code:0,source:"stx"});return V};let jZ=G("getSyntacticDiagnostics");q.getSyntacticDiagnostics=(Y)=>zJ(Y,jZ(Y));let YZ=G("getSuggestionDiagnostics");q.getSuggestionDiagnostics=(Y)=>zJ(Y,YZ(Y));let FJ=G("getQuickInfoAtPosition");q.getQuickInfoAtPosition=(Y,V,...H)=>{let X=A(Y);if(!X)return FJ(Y,V,...H);if(!L())return;let w=FJ(Y,E(X,V),...H);if(!w)return w;let I=x(X,w.textSpan);return I?{...w,textSpan:I}:void 0};let BJ=G("getCompletionsAtPosition");q.getCompletionsAtPosition=(Y,V,H,...X)=>{let w=A(Y);if(!w)return BJ(Y,V,H,...X);if(!L()||!l(w,V))return;let I=BJ(Y,E(w,V),{...H,includeCompletionsForModuleExports:!1},...X);if(!I)return I;let _=(S)=>S&&x(w,S);return{...I,optionalReplacementSpan:_(I.optionalReplacementSpan),entries:I.entries.filter((S)=>!S.name.startsWith("__stx")&&!S.name.startsWith("__Stx")).map((S)=>S.replacementSpan?{...S,replacementSpan:_(S.replacementSpan)}:S)}};let wJ=G("getCompletionEntryDetails");q.getCompletionEntryDetails=(Y,V,...H)=>{let X=A(Y);if(!X)return wJ(Y,V,...H);let w=wJ(Y,E(X,V),...H);return w?{...w,codeActions:void 0}:w};let XJ=G("getSignatureHelpItems");q.getSignatureHelpItems=(Y,V,...H)=>{let X=A(Y);if(!X)return XJ(Y,V,...H);if(!L()||!l(X,V))return;let w=XJ(Y,E(X,V),...H),I=w&&x(X,w.applicableSpan);return w&&I?{...w,applicableSpan:I}:void 0};let MJ=G("getDefinitionAndBoundSpan");q.getDefinitionAndBoundSpan=(Y,V)=>{let H=A(Y);if(!H)return OJ(MJ(Y,V));if(!L())return;let X=MJ(Y,E(H,V)),w=X&&x(H,X.textSpan);return X&&w?{...OJ(X),textSpan:w}:void 0};let OJ=(Y)=>Y&&{...Y,definitions:UJ(Y.definitions)};for(let Y of["getDefinitionAtPosition","getTypeDefinitionAtPosition","getImplementationAtPosition"]){let V=G(Y);q[Y]=(H,X,...w)=>{let I=A(H);if(I&&!L())return;return UJ(V(H,I?E(I,X):X,...w))}}for(let Y of["getReferencesAtPosition"]){let V=G(Y);q[Y]=(H,X,...w)=>{let I=A(H);if(I&&!L())return;return VJ(V(H,I?E(I,X):X,...w))}}let WZ=G("findReferences");q.findReferences=(Y,V)=>{let H=A(Y);if(H&&!L())return;return WZ(Y,H?E(H,V):V)?.map((X)=>{let w=HJ(X.definition);return w?{definition:w,references:VJ(X.references)}:void 0}).filter((X)=>X!==void 0)};let qZ=G("getDocumentHighlights");q.getDocumentHighlights=(Y,V,H)=>{let X=A(Y);if(X&&(!L()||!l(X,V)))return;return qZ(Y,X?E(X,V):V,H)?.map((w)=>{let I=A(w.fileName);if(!I)return w;return{...w,highlightSpans:w.highlightSpans.map((_)=>{let S=x(I,_.textSpan);return S?{..._,textSpan:S,contextSpan:_.contextSpan&&x(I,_.contextSpan)}:void 0}).filter((_)=>_!==void 0)}})};let HZ=G("getNavigationTree");q.getNavigationTree=(Y)=>{let V=HZ(Y),H=A(Y);if(!H)return V;let X=(I)=>{let _=I.spans.map((f)=>x(H,f)).filter((f)=>f!==void 0);if(_.length===0)return;let S=I.nameSpan&&x(H,I.nameSpan),d=I.childItems?.map(X).filter((f)=>f!==void 0);return{...I,spans:_,nameSpan:S,childItems:d}},w={...V,spans:[{start:0,length:H.source.length}]};return L()?{...w,childItems:V.childItems?.map(X).filter((I)=>I!==void 0)}:{...w,childItems:[]}};let VZ={getEncodedSemanticClassifications:()=>{return},getEncodedSyntacticClassifications:()=>{return},getSemanticClassifications:()=>[],getSyntacticClassifications:()=>[],getFormattingEditsForDocument:()=>[],getFormattingEditsForRange:()=>[],getFormattingEditsAfterKeystroke:()=>[],getNavigationBarItems:()=>[],getOutliningSpans:()=>[],getBraceMatchingAtPosition:()=>[],getTodoComments:()=>[],getDocCommentTemplateAtPosition:()=>{return},getJsxClosingTagAtPosition:()=>{return},getLinkedEditingRangeAtPosition:()=>{return},getSpanOfEnclosingComment:()=>{return},getCodeFixesAtPosition:()=>[],getApplicableRefactors:()=>[],getEditsForRefactor:()=>{return},getRenameInfo:()=>({canRename:!1,localizedErrorMessage:"Rename is not supported in .stx files."}),findRenameLocations:()=>{return},provideInlayHints:()=>[],prepareCallHierarchy:()=>{return},provideCallHierarchyIncomingCalls:()=>[],provideCallHierarchyOutgoingCalls:()=>[],getFileReferences:()=>[]};for(let[Y,V]of Object.entries(VZ)){let H=q[Y];if(typeof H!=="function")continue;let X=H.bind(q);q[Y]=(w,...I)=>typeof w==="string"&&s(w)?V():X(w,...I)}return q[eJ]=!0,K("Language service proxy created"),q},getExternalFiles(j){if(W.has(j))return[];return j.getFileNames().filter(JZ)},onConfigurationChanged(j){$={...$,...j};for(let K of z)K()}}}var QZ=W0;module.exports=QZ;
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/stx-vscode",
3
3
  "type": "module",
4
- "version": "0.2.357",
5
- "description": "stx language support for VS Code extensions to embed: the hovers, completions, diagnostics, grammar, snippets and language configuration behind the stx extension.",
4
+ "version": "0.2.358",
5
+ "description": "stx language support for VS Code extensions to embed: the hovers, completions, diagnostics, grammar, snippets, language configuration and TypeScript server plugin behind the stx extension.",
6
6
  "author": "Chris Breuer <chris@stacksjs.org>",
7
7
  "license": "MIT",
8
8
  "homepage": "https://github.com/stacksjs/stx/tree/main/packages/stx-vscode#readme",
@@ -27,7 +27,8 @@
27
27
  "import": "./dist/index.js"
28
28
  },
29
29
  "./contributes.json": "./dist/contributes.json",
30
- "./assets/*": "./dist/assets/*"
30
+ "./assets/*": "./dist/assets/*",
31
+ "./typescript-plugin/*": "./dist/typescript-plugin/*"
31
32
  },
32
33
  "module": "./dist/index.js",
33
34
  "types": "./dist/index.d.ts",