@stacksjs/dtsx 0.9.13 → 0.9.15

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.
Files changed (86) hide show
  1. package/README.md +4 -8
  2. package/dist/bin/cli.js +6 -6
  3. package/dist/branded-types.d.ts +10 -18
  4. package/dist/chunk-14gh6ezz.js +80 -0
  5. package/dist/chunk-285mqzvx.js +16 -0
  6. package/dist/chunk-2n1bbm2c.js +448 -0
  7. package/dist/chunk-2r21f44d.js +25 -0
  8. package/dist/chunk-3xqchdwd.js +2 -0
  9. package/dist/{chunk-e0gx49tv.js → chunk-3zjt21t1.js} +1 -1
  10. package/dist/chunk-4s9jv983.js +3 -0
  11. package/dist/chunk-5hzvjjt0.js +2 -0
  12. package/dist/chunk-83e9a4fq.js +4 -0
  13. package/dist/chunk-8cv1t8qg.js +2 -0
  14. package/dist/{chunk-pdt5pc9f.js → chunk-8g7jyxbr.js} +1 -1
  15. package/dist/chunk-8z31rkfp.js +3 -0
  16. package/dist/chunk-a3txc27m.js +33 -0
  17. package/dist/chunk-bh9ey0vw.js +2 -0
  18. package/dist/chunk-bsxtpwx6.js +2 -0
  19. package/dist/{chunk-0f9tt1yd.js → chunk-c09v68yx.js} +1 -1
  20. package/dist/{chunk-emwe4zbk.js → chunk-f4c389mj.js} +1 -1
  21. package/dist/{chunk-hbd2nj9p.js → chunk-fef6249b.js} +1 -1
  22. package/dist/{chunk-57agx6g8.js → chunk-gssantc8.js} +1 -1
  23. package/dist/chunk-j2yw0d45.js +6 -0
  24. package/dist/{chunk-ns3hznyf.js → chunk-mcdb3q06.js} +1 -1
  25. package/dist/{chunk-tzrvp0n2.js → chunk-mn46jafe.js} +1 -1
  26. package/dist/{chunk-mrk48ejm.js → chunk-mxam9312.js} +8 -8
  27. package/dist/chunk-nf54b52t.js +6 -0
  28. package/dist/{chunk-f0mvmcmj.js → chunk-npj0c002.js} +1 -1
  29. package/dist/chunk-pep9jyxn.js +2 -0
  30. package/dist/chunk-qrht3d5g.js +2 -0
  31. package/dist/chunk-rh2bqn7v.js +2 -0
  32. package/dist/{chunk-ck86m3vf.js → chunk-sw3m29sw.js} +1 -1
  33. package/dist/{chunk-a592hfkt.js → chunk-tne5n3h1.js} +1 -1
  34. package/dist/{chunk-1t76q5wk.js → chunk-trm0gptj.js} +1 -1
  35. package/dist/chunk-vpjw38x7.js +34 -0
  36. package/dist/chunk-w71syh0b.js +2 -0
  37. package/dist/chunk-w8d9jjsa.js +2 -0
  38. package/dist/{chunk-188ep5ns.js → chunk-xhs0tsnn.js} +1 -1
  39. package/dist/{chunk-e38jw5aa.js → chunk-xmje6xfw.js} +1 -1
  40. package/dist/{chunk-vf7ywnxz.js → chunk-xtee8g1a.js} +1 -1
  41. package/dist/chunk-y581wnfe.js +19 -0
  42. package/dist/{chunk-6qv7p9sg.js → chunk-zf17s33e.js} +18 -11
  43. package/dist/compat.d.ts +5 -2
  44. package/dist/extractor/cache.d.ts +6 -2
  45. package/dist/extractor/directives.d.ts +0 -4
  46. package/dist/generator.d.ts +1 -1
  47. package/dist/logger.d.ts +4 -0
  48. package/dist/optimizer.d.ts +4 -0
  49. package/dist/process-source.d.ts +1 -0
  50. package/dist/processor/cache.d.ts +4 -2
  51. package/dist/processor/imports.d.ts +1 -0
  52. package/dist/src/index.js +52 -51
  53. package/dist/src/plugins/bun.js +1 -1
  54. package/dist/src/plugins/esbuild.js +1 -1
  55. package/dist/src/plugins/index.js +1 -1
  56. package/dist/src/plugins/tsup.js +1 -1
  57. package/dist/src/plugins/vite.js +1 -1
  58. package/dist/src/plugins/webpack.js +1 -1
  59. package/dist/transformers.d.ts +4 -1
  60. package/dist/type-mappings.d.ts +16 -16
  61. package/dist/types.d.ts +2 -0
  62. package/package.json +3 -3
  63. package/dist/chunk-2vw7w2j4.js +0 -23
  64. package/dist/chunk-365avtde.js +0 -32
  65. package/dist/chunk-446n992h.js +0 -2
  66. package/dist/chunk-49b3ran6.js +0 -4
  67. package/dist/chunk-50hbgzrj.js +0 -3
  68. package/dist/chunk-6jpqpjkc.js +0 -3
  69. package/dist/chunk-94h87sgb.js +0 -449
  70. package/dist/chunk-at36dtgx.js +0 -2
  71. package/dist/chunk-b0bkjk0p.js +0 -19
  72. package/dist/chunk-chbk4344.js +0 -2
  73. package/dist/chunk-ez568rby.js +0 -2
  74. package/dist/chunk-hwm87z68.js +0 -2
  75. package/dist/chunk-jfk0hw36.js +0 -75
  76. package/dist/chunk-myvmq7hz.js +0 -2
  77. package/dist/chunk-nd0xbpbz.js +0 -2
  78. package/dist/chunk-nfeqwqca.js +0 -6
  79. package/dist/chunk-nr1gxnen.js +0 -2
  80. package/dist/chunk-pdvve1gm.js +0 -33
  81. package/dist/chunk-sv136qag.js +0 -17
  82. package/dist/chunk-te9r0j9z.js +0 -6
  83. package/dist/chunk-trftkghj.js +0 -2
  84. package/dist/chunk-xqymptjk.js +0 -2
  85. package/dist/extractor/extract.d.ts +0 -10
  86. package/dist/extractor/scanner.d.ts +0 -6
@@ -0,0 +1,25 @@
1
+ // @bun
2
+ function y(D){return D===32||D===9||D===10||D===13}function Bj(D){return D>=65&&D<=90||D>=97&&D<=122||D===95||D===36||D>127}function W(D){return Bj(D)||D>=48&&D<=57}function lj(D){if(D.charCodeAt(0)===82&&D.startsWith("Record<"))return!0;if(D.charCodeAt(0)===65&&D.startsWith("Array<"))return!0;if(D.charCodeAt(0)===123&&D.includes("[")&&D.includes("]:"))return!0;if(D==="any"||D==="object"||D==="unknown")return!0;return!1}var qj=["public","protected","private","readonly","override"];function dj(D,Hj,T=!0,l=!1){let Z=D,n=T,b=l,K=Z.length,L=[],P=new Map,x=new Set,j=0;if(j<K&&Z.charCodeAt(j)===65279)j++;function v(J,H){if(J<H){let U=Z.charCodeAt(J),X=Z.charCodeAt(H-1);if(U!==32&&U!==9&&U!==10&&U!==13&&X!==32&&X!==9&&X!==10&&X!==13)return Z.slice(J,H)}while(J<H&&y(Z.charCodeAt(J)))J++;while(H>J&&y(Z.charCodeAt(H-1)))H--;return Z.slice(J,H)}function O(){if(j>=K)return;let J=Z.charCodeAt(j);if(J!==32&&J!==9&&J!==10&&J!==13&&J!==47)return;while(j<K){let H=Z.charCodeAt(j);if(H===32||H===9||H===10||H===13){j++;continue}if(H===47&&j+1<K){let U=Z.charCodeAt(j+1);if(U===47){let X=Z.indexOf(`
3
+ `,j+2);j=X===-1?K:X+1;continue}if(U===42){let X=Z.indexOf("*/",j+2);j=X===-1?K:X+2;continue}}break}}function Ij(J){let H=J.length,U=0,X=H;for(let Y=0;Y<H;Y++){let $=J.charCodeAt(Y);if(U){if($===92){Y++;continue}if($===U)U=0;continue}if($===39||$===34||$===96){U=$;continue}if($===47&&Y+1<H){let F=J.charCodeAt(Y+1);if(F===47){X=Y;while(X>0&&(J.charCodeAt(X-1)===32||J.charCodeAt(X-1)===9))X--;return J.slice(0,X)}if(F===42){let N=J.indexOf("*/",Y+2);if(N!==-1){J=`${J.slice(0,Y)} ${J.slice(N+2)}`,Y--;continue}}}}X=H;while(X>0&&(J.charCodeAt(X-1)===32||J.charCodeAt(X-1)===9||J.charCodeAt(X-1)===13))X--;return X<H?J.slice(0,X):J}function h(J){j++;let H=J===39?"'":'"';while(j<K){let U=Z.indexOf(H,j);if(U===-1){j=K;return}let X=0,Y=U-1;while(Y>=0&&Z.charCodeAt(Y)===92)X++,Y--;if(X%2===0){j=U+1;return}j=U+1}}function t(){j++;let J=[];while(j<K){let H=Z.charCodeAt(j);if(J.length===0){if(H===92){j+=2;continue}if(H===96){j++;return}if(H===36&&j+1<K&&Z.charCodeAt(j+1)===123){j+=2,J.push(0);continue}j++;continue}if(H===39||H===34){h(H);continue}if(H===96){t();continue}if(H===47&&j+1<K){let U=Z.charCodeAt(j+1);if(U===47){let X=Z.indexOf(`
4
+ `,j+2);j=X===-1?K:X+1;continue}if(U===42){let X=Z.indexOf("*/",j+2);j=X===-1?K:X+2;continue}j++;continue}if(H===123){J[J.length-1]++,j++;continue}if(H===125){let U=J[J.length-1];if(U===0){J.pop(),j++;continue}J[J.length-1]=U-1,j++;continue}j++}}function E(){let J=Z.charCodeAt(j);if(J===39||J===34)return h(J),!0;if(J===96)return t(),!0;if(J===47&&j+1<K){let H=Z.charCodeAt(j+1);if(H===47){let U=Z.indexOf(`
5
+ `,j+2);return j=U===-1?K:U+1,!0}if(H===42){let U=Z.indexOf("*/",j+2);return j=U===-1?K:U+2,!0}if(fj())return Ej(),!0}return!1}function fj(){let J=j-1;while(J>=0&&(Z.charCodeAt(J)===32||Z.charCodeAt(J)===9||Z.charCodeAt(J)===10||Z.charCodeAt(J)===13))J--;if(J<0)return!0;let H=Z.charCodeAt(J);if(H===61||H===40||H===91||H===33||H===38||H===124||H===63||H===58||H===44||H===59||H===123||H===125||H===94||H===126||H===43||H===45||H===42||H===37||H===60||H===62)return!0;if(W(H)){let U=J;while(U>=0&&W(Z.charCodeAt(U)))U--;let X=Z.slice(U+1,J+1);if(X==="return"||X==="typeof"||X==="void"||X==="delete"||X==="throw"||X==="new"||X==="in"||X==="of"||X==="case"||X==="instanceof"||X==="yield"||X==="await")return!0}return!1}function Ej(){j++;let J=!1;while(j<K){let H=Z.charCodeAt(j);if(H===92){j+=2;continue}if(J){if(H===93)J=!1;j++;continue}if(H===91){J=!0,j++;continue}if(H===47){j++;break}if(H===10||H===13)break;j++}while(j<K&&W(Z.charCodeAt(j)))j++}function f(){let J=j;while(j<K&&W(Z.charCodeAt(j)))j++;return Z.slice(J,j)}function z(J){if(j+J.length>K)return!1;for(let H=0;H<J.length;H++)if(Z.charCodeAt(j+H)!==J.charCodeAt(H))return!1;if(j+J.length<K&&W(Z.charCodeAt(j+J.length)))return!1;return!0}function Jj(J){let H=j+J;while(H<K){let U=Z.charCodeAt(H);if(U===32||U===9||U===10||U===13){H++;continue}return U!==46&&U!==61}return!1}function yj(){if(j>=K)return!1;switch(Z.charCodeAt(j)){case 101:return z("export")||z("enum");case 105:return z("import")||z("interface");case 102:return z("function");case 99:return z("class")||z("const");case 116:return z("type");case 108:return z("let");case 118:return z("var");case 100:return z("declare")||z("default");case 109:return z("module");case 110:return z("namespace");case 97:return z("abstract")||z("async");default:return!1}}function p(){let J=Z.charCodeAt(j);if(J!==10&&J!==13)return!1;let H=j;if(j++,J===13&&j<K&&Z.charCodeAt(j)===10)j++;while(j<K){let X=Z.charCodeAt(j);if(X===32||X===9||X===13||X===10){j++;continue}if(X===47&&j+1<K){let Y=Z.charCodeAt(j+1);if(Y===47){let $=Z.indexOf(`
6
+ `,j+2);j=$===-1?K:$+1;continue}if(Y===42){let $=Z.indexOf("*/",j+2);j=$===-1?K:$+2;continue}}break}let U=j>=K||yj()||Z.charCodeAt(j)===125;return j=H,U}function e(){let J=Z.charCodeAt(j);if(J!==10&&J!==13)return!1;let H=j;if(j++,J===13&&j<K&&Z.charCodeAt(j)===10)j++;while(j<K){let X=Z.charCodeAt(j);if(X===32||X===9||X===13||X===10){j++;continue}if(X===47&&j+1<K&&Z.charCodeAt(j+1)===47){let Y=Z.indexOf(`
7
+ `,j+2);j=Y===-1?K:Y+1;continue}break}if(j>=K)return j=H,!0;let U=Z.charCodeAt(j);if(U===124||U===38||U===46||U===63||U===58)return j=H,!1;if(z("extends")||z("keyof")||z("typeof")||z("infer")||z("is")||z("as")||z("in"))return j=H,!1;return j=H,!0}let Aj=/[{}'"`\/]/g,Tj=/[()'"`\/]/g,kj=/[[\]'"`\/]/g,Cj=/[<>'"`\/]/g;function A(J,H){let U=1;j++;let X=J===123?Aj:J===40?Tj:J===91?kj:Cj;X.lastIndex=j;let Y;while((Y=X.exec(Z))!==null){let $=Y.index,F=Z.charCodeAt($);if(F===39||F===34){j=$,h(F),X.lastIndex=j;continue}if(F===96){j=$,t(),X.lastIndex=j;continue}if(F===47){if(j=$,E()){X.lastIndex=j;continue}X.lastIndex=$+1;continue}if(F===J)U++;else if(F===H){if(H===62&&$>0&&Z.charCodeAt($-1)===61){X.lastIndex=$+1;continue}if(U--,U===0)return j=$+1,j}X.lastIndex=$+1}return j=K,j}function S(){return j>0&&Z.charCodeAt(j-1)===61}function Xj(){return j+1<K&&Z.charCodeAt(j+1)===62}let k=/[{};'"`\/\n\r()[\]]/g;function I(){let J=0,H=0,U=0;k.lastIndex=j;let X;while((X=k.exec(Z))!==null){let Y=X.index,$=Z.charCodeAt(Y);if($===39||$===34){j=Y,h($),k.lastIndex=j;continue}if($===96){j=Y,t(),k.lastIndex=j;continue}if($===47){if(j=Y,E()){k.lastIndex=j;continue}k.lastIndex=Y+1;continue}if($===40){H++,k.lastIndex=Y+1;continue}if($===41){H--,k.lastIndex=Y+1;continue}if($===91){U++,k.lastIndex=Y+1;continue}if($===93){U--,k.lastIndex=Y+1;continue}if($===123){J++,k.lastIndex=Y+1;continue}if($===125){if(J--,J<=0&&H<=0&&U<=0){j=Y+1;return}k.lastIndex=Y+1;continue}if($===59&&J===0&&H===0&&U===0){j=Y+1;return}if(($===10||$===13)&&J===0&&H===0&&U===0){if(j=Y,p())return}k.lastIndex=Y+1}j=K}function Nj(){A(123,125);while(j<K&&y(Z.charCodeAt(j)))j++;if(z("from")){j+=4;while(j<K&&y(Z.charCodeAt(j)))j++;if(j<K){let J=Z.charCodeAt(j);if(J===39||J===34)h(J)}}while(j<K&&(Z.charCodeAt(j)===32||Z.charCodeAt(j)===9))j++;if(j<K&&Z.charCodeAt(j)===59)j++}function Rj(){j++;while(j<K&&y(Z.charCodeAt(j)))j++;if(z("as")){j+=2;while(j<K&&y(Z.charCodeAt(j)))j++;f();while(j<K&&y(Z.charCodeAt(j)))j++}if(z("from")){j+=4;while(j<K&&y(Z.charCodeAt(j)))j++;if(j<K){let J=Z.charCodeAt(j);if(J===39||J===34)h(J)}}while(j<K&&(Z.charCodeAt(j)===32||Z.charCodeAt(j)===9))j++;if(j<K&&Z.charCodeAt(j)===59)j++}function Uj(J){let H=J.indexOf("from ");if(H===-1)return;let U=H+5;while(U<J.length&&(J.charCodeAt(U)===32||J.charCodeAt(U)===9))U++;if(U>=J.length)return;let X=J.charCodeAt(U);if(X!==39&&X!==34)return;let Y=J.indexOf(J[U],U+1);if(Y===-1)return;return J.slice(U+1,Y)}function C(J){if(!n)return;let H=J-1;while(H>=0&&y(Z.charCodeAt(H)))H--;if(H<0)return;let U=[],X=!1;while(H>=0){if(H>=1&&Z.charCodeAt(H)===47&&Z.charCodeAt(H-1)===42){let F=Z.lastIndexOf("/*",H-2);if(F>=0){U.push(Z.slice(F,H+1)),X=!0,H=F-1;while(H>=0&&y(Z.charCodeAt(H)))H--;continue}break}let Y=H;while(Y>0&&Z.charCodeAt(Y-1)!==10)Y--;let $=v(Y,H+1);if($.startsWith("//")){if(X)break;let F=[$];H=Y-1;while(H>=0&&(Z.charCodeAt(H)===10||Z.charCodeAt(H)===13))H--;while(H>=0){let N=H;while(N>0&&Z.charCodeAt(N-1)!==10)N--;let V=v(N,H+1);if(V.startsWith("//")){F.push(V),H=N-1;while(H>=0&&(Z.charCodeAt(H)===10||Z.charCodeAt(H)===13))H--}else if(V===""){H=N-1;while(H>=0&&(Z.charCodeAt(H)===10||Z.charCodeAt(H)===13))H--}else break}F.reverse(),U.push(F.join(`
8
+ `));continue}break}if(U.length===0)return;return U.reverse(),U}function Sj(J){let H=J,U=!1;while(j<K){let V=Z.charCodeAt(j);if(V===59){j++;break}if(V===39||V===34){h(V),U=!0;while(j<K&&(Z.charCodeAt(j)===32||Z.charCodeAt(j)===9))j++;if(j<K&&Z.charCodeAt(j)===59)j++;break}if(V===10&&U)break;j++}let X=v(H,j),Y=X.charCodeAt(7)===116&&(X.startsWith("import type ")||X.startsWith("import type{")),$=!1;{let V=6;while(V<X.length&&(X.charCodeAt(V)===32||X.charCodeAt(V)===9))V++;if(V<X.length&&X.charCodeAt(V)===116&&X.startsWith("type",V)){V+=4;while(V<X.length&&(X.charCodeAt(V)===32||X.charCodeAt(V)===9))V++}if(V<X.length){let Q=X.charCodeAt(V);$=Q===39||Q===34}}let F="";{let V=X.indexOf("from ");if(V!==-1){let Q=V+5;while(Q<X.length&&(X.charCodeAt(Q)===32||X.charCodeAt(Q)===9))Q++;if(Q<X.length){let G=X.charCodeAt(Q);if(G===39||G===34){let B=X.indexOf(String.fromCharCode(G),Q+1);if(B!==-1)F=X.slice(Q+1,B)}}}else if($){let Q=6;while(Q<X.length&&X.charCodeAt(Q)!==39&&X.charCodeAt(Q)!==34)Q++;if(Q<X.length){let G=X.charCodeAt(Q),B=X.indexOf(String.fromCharCode(G),Q+1);if(B!==-1)F=X.slice(Q+1,B)}}}let N=C(H);return{kind:"import",name:"",text:X,isExported:!1,isTypeOnly:Y,isSideEffect:$,source:F,leadingComments:N,start:H,end:j}}function Yj(){let J=j;return A(123,125),Z.slice(J,j)}function _j(J){let H=J.indexOf("(");if(H===-1)return J;let U=J.slice(H);if(U.indexOf("=")===-1)return J;let X=!1;for(let V=0;V<U.length;V++)if(U.charCodeAt(V)===61){let G=V>0?U.charCodeAt(V-1):0,B=V+1<U.length?U.charCodeAt(V+1):0;if(G!==61&&G!==33&&G!==60&&G!==62&&B!==61&&B!==62){X=!0;break}}if(!X)return J;let Y=0,$=-1;for(let V=H;V<J.length;V++){let Q=J.charCodeAt(V);if(Q===40)Y++;else if(Q===41){if(Y--,Y===0){$=V;break}}}if($===-1)return J;let F=J.slice(H,$+1),N=c(F);return J.slice(0,H)+N+J.slice($+1)}function gj(J){let H=J.indexOf("//")!==-1||J.indexOf("/*")!==-1,U=J.split(`
9
+ `),X=[],Y=[],$=[],F=!1,N=1/0;for(let G=0;G<U.length;G++){let B=U[G];if(H){if(F){if(B.includes("*/"))F=!1;continue}let _=B.trim();if(_.length===0)continue;let g=_.charCodeAt(0);if(g===47){let w=_.charCodeAt(1);if(w===47)continue;if(w===42){if(!_.includes("*/"))F=!0;continue}}if(g===42)continue;let q=Ij(B);if(q.charCodeAt(q.length-1)===59)q=q.slice(0,-1);q=_j(q);let R=q.trim();if(!R)continue;X.push(q),Y.push(R);let M=0;while(M<q.length&&y(q.charCodeAt(M)))M++;if(R!=="{"&&R!=="}"){if(M<N)N=M}$.push(M)}else{let _=B.length;while(_>0&&(B.charCodeAt(_-1)===32||B.charCodeAt(_-1)===9||B.charCodeAt(_-1)===13))_--;if(_===0)continue;let g=_<B.length?B.slice(0,_):B;if(g.charCodeAt(g.length-1)===59)g=g.slice(0,-1);g=_j(g);let q=g.trim();if(!q)continue;X.push(g),Y.push(q);let R=0;while(R<g.length&&y(g.charCodeAt(R)))R++;if(q!=="{"&&q!=="}"){if(R<N)N=R}$.push(R)}}if(X.length===0)return"{}";if(N===1/0||N<=2)return X.join(`
10
+ `);let V=N-2,Q=Array(X.length);for(let G=0;G<X.length;G++){let B=Y[G];if(B==="{"){Q[G]=B;continue}let _=$[G];if(_>N)Q[G]=X[G];else if(_===N&&(B.charCodeAt(0)===125||B.charCodeAt(0)===93||B.charCodeAt(0)===41))Q[G]=X[G];else{let g=Math.max(0,_-V);Q[G]=" ".repeat(g)+B}}return Q.join(`
11
+ `)}function u(){if(j>=K||Z.charCodeAt(j)!==60)return"";let J=j;A(60,62);let H=Z.slice(J,j);if(H.includes(`
12
+ `)){let U="",X=!1;for(let Y=0;Y<H.length;Y++){let $=H.charCodeAt(Y);if($===32||$===9||$===10||$===13){if(!X&&U.length>0)U+=" ",X=!0}else U+=H[Y],X=!1}if(U.charCodeAt(1)===32)U=`<${U.slice(2)}`;if(U.charCodeAt(U.length-2)===32)U=`${U.slice(0,-2)}>`;return U}return H}function m(){if(j>=K||Z.charCodeAt(j)!==40)return"()";let J=j;return A(40,41),Z.slice(J,j)}function c(J){let H=J.slice(1,-1).trim();if(!H)return"()";if(J.indexOf(`
13
+ `)===-1&&H.indexOf(":")!==-1&&H.indexOf("{")===-1&&H.indexOf("[")===-1&&H.indexOf("=")===-1&&H.indexOf("@")===-1&&H.indexOf("...")===-1){let V=0,Q=0,G=0;for(let B=0;B<H.length;B++){let _=H.charCodeAt(B);if(_===40||_===60||_===123)G++;else if(_===41||_===62||_===125)G--;else if(G===0){if(_===58)V++;else if(_===44)Q++}}if(V>=Q+1){let B=!1;for(let _=0;_<qj.length;_++){let g=qj[_],q=H.indexOf(g);if(q!==-1){let R=q+g.length;if((q===0||!W(H.charCodeAt(q-1)))&&(R>=H.length||!W(H.charCodeAt(R)))){B=!0;break}}}if(!B)return J}}let U=[],X=0,Y=0,$=!1,F=0;for(let V=0;V<=H.length;V++){if(V===H.length){U.push(H.slice(X).trim());break}let Q=H.charCodeAt(V);if($){if(Q===92){V++;continue}if(Q===F)$=!1;continue}if(Q===39||Q===34||Q===96){$=!0,F=Q;continue}if(Q===40||Q===123||Q===91||Q===60)Y++;else if(Q===41||Q===125||Q===93||Q===62&&!(V>0&&H.charCodeAt(V-1)===61))Y--;else if(Q===44&&Y===0)U.push(H.slice(X,V).trim()),X=V+1}let N=[];for(let V of U){if(!V)continue;let Q=V.trim();if(Q.startsWith("//")||Q.startsWith("/*"))continue;let G=V;{let B=!1,_=0,g=0,q=0;for(let R=0;R<G.length-1;R++){let M=G.charCodeAt(R);if(M===10){q=R+1;continue}if(B){if(M===92){R++;continue}if(M===_)B=!1;continue}if(M===39||M===34||M===96){B=!0,_=M;continue}if(M===123||M===91||M===40||M===60){g++;continue}if(M===125||M===93||M===41||M===62){if(g>0)g--;continue}if(M===47&&G.charCodeAt(R+1)===47){if(g===0){G=G.slice(0,R).trimEnd();break}let w=G.indexOf(`
14
+ `,R);if(w===-1){G=G.slice(0,q).trimEnd();break}let s=G.slice(0,q),hj=G.slice(w+1);G=`${s}${hj}`,R=q-1}}}if(!G.trim())continue;N.push(Lj(G))}return`(${N.join(", ")})`}function Wj(J){if(!J.startsWith("{")&&!J.startsWith("["))return J;let H="",U=0,X=0,Y=!1,$=0;while(U<J.length){let F=J.charCodeAt(U);if(Y){if(F===92&&U+1<J.length){H+=J[U]+J[U+1],U+=2;continue}if(F===$)Y=!1;H+=J[U],U++;continue}if(F===39||F===34||F===96){Y=!0,$=F,H+=J[U],U++;continue}if(F===123||F===91||F===40)X++;else if(F===125||F===93||F===41)X--;if(X>=1&&F===61&&(U+1>=J.length||J.charCodeAt(U+1)!==61&&J.charCodeAt(U+1)!==62)){while(H.length>0&&(H[H.length-1]===" "||H[H.length-1]==="\t"||H[H.length-1]===`
15
+ `))H=H.slice(0,-1);U++;let N=0;while(U<J.length){let V=J.charCodeAt(U);if(V===39||V===34||V===96){let Q=V;U++;while(U<J.length){if(J.charCodeAt(U)===92){U+=2;continue}if(J.charCodeAt(U)===Q){U++;break}U++}continue}if(V===123||V===91||V===40)N++;else if(V===125||V===93||V===41){if(N===0)break;N--}else if(V===44&&N===0)break;U++}continue}if(X===1&&F===46&&U+2<J.length&&J.charCodeAt(U+1)===46&&J.charCodeAt(U+2)===46){U+=3;continue}H+=J[U],U++}return H}function Lj(J){let H=J.trim(),U=H.startsWith("...");if(U)H=H.slice(3).trim();while(H.startsWith("@")){let q=1;while(q<H.length&&W(H.charCodeAt(q)))q++;if(q<H.length&&H.charCodeAt(q)===40){let R=1;q++;while(q<H.length&&R>0){if(H.charCodeAt(q)===40)R++;else if(H.charCodeAt(q)===41)R--;q++}}H=H.slice(q).trim()}let X=!0;while(X){X=!1;for(let q of qj)if(H.startsWith(q)&&H.length>q.length&&!W(H.charCodeAt(q.length))){let R=H.slice(q.length).trim();if(R.charCodeAt(0)===58||R.charCodeAt(0)===63&&R.length>1&&R.charCodeAt(1)===58)break;H=R,X=!0;break}}let Y=-1,$=-1,F=0,N=!1,V=0;for(let q=0;q<H.length;q++){let R=H.charCodeAt(q);if(N){if(R===92){q++;continue}if(R===V)N=!1;continue}if(R===39||R===34||R===96){N=!0,V=R;continue}if(R===40||R===123||R===91||R===60)F++;else if(R===41||R===125||R===93||R===62&&!(q>0&&H.charCodeAt(q-1)===61))F--;else if(F===0){if(R===58&&Y===-1)Y=q;else if(R===61&&$===-1&&(q===0||H.charCodeAt(q-1)!==61)&&(q+1>=H.length||H.charCodeAt(q+1)!==61&&H.charCodeAt(q+1)!==62))$=q}}let Q,G,B=$!==-1;if(Y!==-1&&($===-1||Y<$))if(Q=H.slice(0,Y).trim(),$!==-1)G=H.slice(Y+1,$).trim();else G=H.slice(Y+1).trim();else if($!==-1)Q=H.slice(0,$).trim(),G=Zj(H.slice($+1).trim());else Q=H,G="unknown";if(Q=Wj(Q),(Q.startsWith("{")||Q.startsWith("["))&&Q.includes(`
16
+ `)){let q=Q.replace(/\s*\n\s*/g," ").replace(/\s+/g," ");if(q.length<=40)Q=q;else Q=Q.split(`
17
+ `).map((M)=>{let w=M.trim();if(!w)return"";if(w==="{"||w==="}"||w==="["||w==="]"||w.startsWith("}")||w.startsWith("]"))return w;return` ${w}`}).join(`
18
+ `)}let _=Q.endsWith("?")||B;if(Q.endsWith("?"))Q=Q.slice(0,-1).trim();let g=_&&!U?"?":"";if(U)return`...${Q}: ${G}`;return`${Q}${g}: ${G}`}function Mj(J){let H=0;if(H<J.length&&J.charCodeAt(H)===45)H++;if(H>=J.length)return!1;let U=J.charCodeAt(H);if(U<48||U>57)return!1;while(H<J.length&&J.charCodeAt(H)>=48&&J.charCodeAt(H)<=57)H++;if(H<J.length&&J.charCodeAt(H)===46){if(H++,H>=J.length||J.charCodeAt(H)<48||J.charCodeAt(H)>57)return!1;while(H<J.length&&J.charCodeAt(H)>=48&&J.charCodeAt(H)<=57)H++}return H===J.length}function Zj(J){let H=J.trim();if(H==="true"||H==="false")return"boolean";if(Mj(H))return"number";if(H.startsWith("'")&&H.endsWith("'")||H.startsWith('"')&&H.endsWith('"'))return"string";if(H.startsWith("["))return"unknown[]";if(H.startsWith("{"))return"Record<string, unknown>";return"unknown"}function $j(J){let H=J.trim();if(H==="true"||H==="false")return H;if(Mj(H))return H;if(H.startsWith("'")&&H.endsWith("'")||H.startsWith('"')&&H.endsWith('"'))return H;return"unknown"}function Qj(J){if(J.endsWith("as const"))return null;let H=0,U=-1;for(let Y=0;Y<J.length;Y++){let $=J.charCodeAt(Y);if($===123||$===91||$===40)H++;else if($===125||$===93||$===41)H--;else if(H===0&&$===32&&Y+4<=J.length&&J.substring(Y,Y+4)===" as ")U=Y}if(U===-1)return null;return J.slice(U+4).trim()||null}function jj(){if(O(),j<K&&Z.charCodeAt(j)===58){j++,O();let J=j,H=0;while(j<K){if(E())continue;let U=Z.charCodeAt(j);if(U===40||U===91||U===60)H++;else if(U===41||U===93||U===62&&!S())H--;else if(U===123)if(H>0)H++;else{let X=v(J,j),Y=($)=>{let F=X.length-$.length;return F>=0&&X.endsWith($)&&(F===0||!W(X.charCodeAt(F-1)))};if(X.length===0||X.endsWith("|")||X.endsWith("&")||Y("is")||Y("extends"))H++;else break}else if(U===125){if(H===0)break;H--}else if(H===0&&U===59)break;if(H===0&&e())break;j++}return v(J,j)}return""}function d(J,H,U,X){j+=8,O();let Y=j<K&&Z.charCodeAt(j)===42;if(Y)j++,O();let $=f();if(!$&&!X)return null;O();let F=u();O();let N=m();O();let V=jj();if(!V)if(U&&Y)V="AsyncGenerator<unknown, void, unknown>";else if(Y)V="Generator<unknown, void, unknown>";else if(U)V="Promise<void>";else V="void";O();let Q=!1;if(j<K&&Z.charCodeAt(j)===123)Q=!0,A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;let G=c(N),B=`${H?"export ":""}declare function ${$||"default"}${F}${G}: ${V};`,_=C(J);if(Q)x.add(L.length);return{kind:"function",name:$||"default",text:B,isExported:H,isDefault:X,isAsync:U,isGenerator:Y,returnType:V,generics:F||void 0,leadingComments:_,start:J,end:j}}function r(J,H,U){j+=H.length,O();let X=[];do{if(O(),j>=K)break;let Y=Z.charCodeAt(j);if(Y===123||Y===91)return I(),X;let $=f();if(!$)return I(),X;O();let F,N,V=!1;if(j<K&&Z.charCodeAt(j)===58){j++,O();let B=j,_=0;while(j<K){if(E())continue;let g=Z.charCodeAt(j);if(g===40||g===123||g===91||g===60)_++;else if(g===41||g===125||g===93||g===62&&!S())_--;else if(_===0&&(g===59||g===44))break;else if(_===0&&g===61&&!Xj())break;if(_===0&&p())break;j++}F=v(B,j)}if(j<K&&Z.charCodeAt(j)===61)if(b&&F&&!lj(F))I();else{j++,O();let B=j,_=0,g=0;while(j<K){if(E())continue;let q=Z.charCodeAt(j);if(q===40||q===123||q===91)_++;else if(q===41||q===125||q===93)_--;else if(q===60&&_===0){if(j+1>=K||Z.charCodeAt(j+1)!==61)g++}else if(q===62&&_===0&&!S()){if(g>0&&(j+1>=K||Z.charCodeAt(j+1)!==61))g--}else if(_===0&&g===0&&(q===59||q===44))break;if(_===0&&g===0&&p())break;j++}if(N=v(B,j),N.endsWith(" as const")||N==="const"){if(V=!0,!F){let q=N.endsWith(" as const")?N.slice(0,-9).trim():N,R=$j(q);F=R!=="unknown"?R:void 0}}else if(!F){let q=Qj(N);if(q)F=q}}if(j<K){let B=Z.charCodeAt(j);if(B===44){j++;continue}if(B===59)j++}let Q=C(J),G=`${U?"export ":""}declare ${H} ${$}: ${F||"unknown"};`;X.push({kind:"variable",name:$,text:G,isExported:U,typeAnnotation:F,value:N,modifiers:V?[H,"const assertion"]:[H],leadingComments:Q,start:J,end:j});break}while(j<K);return X}function Kj(J,H){j+=9,O();let U=f();O();let X=u();O();let Y="";if(z("extends")){j+=7,O();let Q=j,G=0;while(j<K){if(E())continue;let B=Z.charCodeAt(j);if(B===60)G++;else if(B===62&&!S())G--;else if(B===123&&G===0)break;j++}Y=v(Q,j)}O();let $=j<K&&Z.charCodeAt(j)===123?Yj():"{}",F=gj($),N=`${H?"export ":""}declare interface ${U}${X}${Y?` extends ${Y}`:""} ${F}`,V=C(J);return{kind:"interface",name:U,text:N,isExported:H,extends:Y||void 0,generics:X||void 0,leadingComments:V,start:J,end:j}}function Vj(J,H){j+=4,O();let U=f();O();let X=u();if(O(),j<K&&Z.charCodeAt(j)===61)j++;O();let Y=j,$=0;while(j<K){if(E())continue;let Q=Z.charCodeAt(j);if(Q===40||Q===123||Q===91||Q===60)$++;else if(Q===41||Q===125||Q===93||Q===62&&!S())$--;else if($===0&&Q===59)break;if($===0&&p())break;j++}let F=v(Y,j);if(j<K&&Z.charCodeAt(j)===59)j++;let N=`${H?"export ":""}type ${U}${X} = ${F}`,V=C(J);return{kind:"type",name:U,text:N,isExported:H,generics:X||void 0,leadingComments:V,start:J,end:j}}function i(J,H,U){j+=4,O();let X=f();O();let Y=j;if(j<K&&Z.charCodeAt(j)===123)A(123,125);let $=v(J,j),F=C(J);return{kind:"enum",name:X,text:$,isExported:H,modifiers:U?["const"]:void 0,leadingComments:F,start:J,end:j}}function a(J,H,U){j+=5,O();let X=f()||"AnonymousClass";O();let Y=u();O();let $="";if(z("extends")){j+=7,O();let G=j,B=0;while(j<K){if(E())continue;let _=Z.charCodeAt(j);if(_===60)B++;else if(_===62&&!S())B--;else if(B===0&&(_===123||z("implements")))break;j++}$=v(G,j)}let F;if(z("implements")){j+=10,O();let G=j,B=0;while(j<K){if(E())continue;let g=Z.charCodeAt(j);if(g===60)B++;else if(g===62&&!S())B--;else if(B===0&&g===123)break;j++}let _=v(G,j);if(_)F=_.split(",").map((g)=>g.trim())}O();let N=zj(),V=`${H?"export ":""}declare ${U?"abstract ":""}class ${X}${Y}${$?` extends ${$}`:""}${F&&F.length>0?` implements ${F.join(", ")}`:""} ${N}`,Q=C(J);return{kind:"class",name:X,text:V,isExported:H,extends:$||void 0,implements:F,generics:Y||void 0,modifiers:U?["abstract"]:void 0,leadingComments:Q,start:J,end:j}}function zj(){if(j>=K||Z.charCodeAt(j)!==123)return"{}";j++;let J=[];while(j<K){if(O(),j>=K)break;if(Z.charCodeAt(j)===125){j++;break}if(Z.charCodeAt(j)===59){j++;continue}if(z("static")&&Dj("static")===123){j+=6,O(),A(123,125);continue}let H=!1,U=!1,X=!1,Y=!1,$=!1,F=!1,N=!1,V=!1,Q=!0;while(Q){if(O(),z("private")){H=!0,j+=7;continue}if(z("protected")){U=!0,j+=9;continue}if(z("public")){j+=6;continue}if(z("static")){X=!0,j+=6;continue}if(z("abstract")){Y=!0,j+=8;continue}if(z("readonly")){$=!0,j+=8;continue}if(z("override")){F=!0,j+=8;continue}if(z("accessor")){N=!0,j+=8;continue}if(z("async")){V=!0,j+=5;continue}if(z("declare")){j+=7;continue}break}if(O(),j>=K||Z.charCodeAt(j)===125)break;if(Z.charCodeAt(j)===35)H=!0;if(H){Fj();continue}let G=" ";if(U)G+="protected ";if(X)G+="static ";if(Y)G+="abstract ";if($)G+="readonly ";if(z("constructor")){j+=11,O();let B=m();if(O(),uj(B,J),j<K&&Z.charCodeAt(j)===123)A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;let _=c(B);J.push(` constructor${_};`)}else if(z("get"))if(j+=3,O(),j<K&&(Bj(Z.charCodeAt(j))||Z.charCodeAt(j)===91||Z.charCodeAt(j)===35)){let B=Oj();if(B.startsWith("#")){if(O(),j<K&&Z.charCodeAt(j)===40)m();if(O(),jj(),O(),j<K&&Z.charCodeAt(j)===123)A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;continue}O(),m(),O();let _=jj()||"unknown";if(O(),j<K&&Z.charCodeAt(j)===123)A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;J.push(`${G}get ${B}(): ${_};`)}else Pj("get",G,X,$,V,J);else if(z("set"))if(j+=3,O(),j<K&&(Bj(Z.charCodeAt(j))||Z.charCodeAt(j)===91||Z.charCodeAt(j)===35)){let B=Oj();if(B.startsWith("#")){if(O(),j<K&&Z.charCodeAt(j)===40)m();if(O(),j<K&&Z.charCodeAt(j)===123)A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;continue}O();let _=m();if(O(),j<K&&Z.charCodeAt(j)===123)A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;let g=c(_);J.push(`${G}set ${B}${g};`)}else Pj("set",G,X,$,V,J);else{let B=Z.charCodeAt(j)===42;if(B)j++,O();let _=Oj();if(!_){Fj();continue}bj(_,G,X,$,B,Y,V,J)}}return`{
19
+ ${J.join(`
20
+ `)}
21
+ }`}function Oj(){if(j>=K)return"";let J=Z.charCodeAt(j);if(J===91){let H=j;return A(91,93),Z.slice(H,j)}if(J===35)return j++,`#${f()}`;return f()}function Dj(J){let H=j+J.length;while(H<K&&y(Z.charCodeAt(H)))H++;return H<K?Z.charCodeAt(H):0}function Fj(){let J=0;while(j<K){if(E())continue;let H=Z.charCodeAt(j);if(H===123||H===40)J++;else if(H===125||H===41){if(J===0)return;J--}else if(H===59&&J===0){j++;return}if(J===0&&e())return;j++}}function Pj(J,H,U,X,Y,$){bj(J,H,U,X,!1,!1,Y,$)}function bj(J,H,U,X,Y,$,F,N){if(O(),j>=K)return;let V=Z.charCodeAt(j),Q=!1;if(V===63)Q=!0,j++,O();if(j<K&&Z.charCodeAt(j)===33)j++,O();let G=j<K?Z.charCodeAt(j):0;if(G===40||G===60){let B=G===60?u():"";O();let _=m();O();let g=jj();if(!g)if(F&&Y)g="AsyncGenerator<unknown, void, unknown>";else if(Y)g="Generator<unknown, void, unknown>";else if(F)g="Promise<void>";else g="void";if(O(),j<K&&Z.charCodeAt(j)===123)A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;let q=c(_),R=Q?"?":"",M=Y?"*":"";N.push(`${H}${M}${J}${R}${B}${q}: ${g};`)}else if(G===58||G===61||G===59||G===125||G===10||G===13){let B="";if(G===58){j++,O();let q=j,R=0;while(j<K){if(E())continue;let M=Z.charCodeAt(j);if(M===40||M===123||M===91||M===60)R++;else if(M===41||M===125||M===93||M===62&&!S()){if(R===0)break;R--}else if(R===0&&(M===59||M===44))break;else if(R===0&&M===61&&!Xj())break;if(R===0&&e())break;j++}B=v(q,j)}let _="";if(j<K&&Z.charCodeAt(j)===61)if(b&&B){j++;let q=0;while(j<K){if(E())continue;let R=Z.charCodeAt(j);if(R===40||R===123||R===91)q++;else if(R===41||R===125||R===93){if(q===0&&R===125)break;q--}else if(q===0&&R===59)break;if(q===0&&e())break;j++}}else{j++,O();let q=j,R=0;while(j<K){if(E())continue;let M=Z.charCodeAt(j);if(M===40||M===123||M===91)R++;else if(M===41||M===125||M===93){if(R===0&&M===125)break;R--}else if(R===0&&M===59)break;if(R===0&&e())break;j++}_=v(q,j)}if(j<K&&Z.charCodeAt(j)===59)j++;if(!B)if(_){let q=Qj(_);if(q)B=q;else B=U&&X?$j(_):Zj(_)}else B="unknown";let g=Q?"?":"";N.push(`${H}${J}${g}: ${B};`)}else Fj()}function uj(J,H){let U=J.slice(1,-1).trim();if(!U)return;let X=[],Y=0,$=0,F=!1,N=0;for(let V=0;V<=U.length;V++){if(V===U.length){X.push(U.slice(Y).trim());break}let Q=U.charCodeAt(V);if(F){if(Q===92){V++;continue}if(Q===N)F=!1;continue}if(Q===39||Q===34||Q===96){F=!0,N=Q;continue}if(Q===40||Q===123||Q===91||Q===60)$++;else if(Q===41||Q===125||Q===93||Q===62&&!(V>0&&U.charCodeAt(V-1)===61))$--;else if(Q===44&&$===0)X.push(U.slice(Y,V).trim()),Y=V+1}for(let V of X){let Q=V.startsWith("public ")||V.startsWith("public\t"),G=V.startsWith("protected ")||V.startsWith("protected\t"),B=V.startsWith("private ")||V.startsWith("private\t"),_=V.includes("readonly ");if(!Q&&!G&&!B&&!_)continue;if(B)continue;let g=V,q=[];if(Q){let w=6;while(w<g.length&&y(g.charCodeAt(w)))w++;g=g.slice(w),q.push("public")}if(G){let w=9;while(w<g.length&&y(g.charCodeAt(w)))w++;g=g.slice(w),q.push("protected")}if(_){let w=g.indexOf("readonly ");if(w!==-1){let s=w+8;while(s<g.length&&y(g.charCodeAt(s)))s++;g=g.slice(0,w)+g.slice(s)}q.push("readonly")}let R=q.length>0?`${q.join(" ")} `:"",M=Lj(g);H.push(` ${R}${M};`)}}function Gj(J=" "){if(j>=K||Z.charCodeAt(j)!==123)return"{}";j++;let H=[];while(j<K){if(O(),j>=K)break;if(Z.charCodeAt(j)===125){j++;break}if(Z.charCodeAt(j)===59){j++;continue}let U=!1;if(z("export"))U=!0,j+=6,O();if(z("declare"))j+=7,O();let X=U?"export ":"";if(z("function")||z("async")&&xj("async","function")){let Y=!1;if(z("async"))Y=!0,j+=5,O();if(j+=8,O(),j<K&&Z.charCodeAt(j)===42)j++,O();let F=f();O();let N=u();O();let V=m();O();let Q=jj();if(!Q)Q=Y?"Promise<void>":"void";if(O(),j<K&&Z.charCodeAt(j)===123)A(123,125);else if(j<K&&Z.charCodeAt(j)===59)j++;let G=c(V);H.push(`${J}${X}function ${F}${N}${G}: ${Q};`)}else if(z("const")||z("let")||z("var")){let Y=z("const")?"const":z("let")?"let":"var";j+=Y.length,O();let $=f();if(!$){I();continue}O();let F="";if(j<K&&Z.charCodeAt(j)===58){j++,O();let V=j,Q=0;while(j<K){if(E())continue;let G=Z.charCodeAt(j);if(G===40||G===123||G===91||G===60)Q++;else if(G===41||G===125||G===93||G===62&&!S())Q--;else if(Q===0&&(G===59||G===44))break;else if(Q===0&&G===61&&!Xj())break;if(Q===0&&p())break;j++}F=v(V,j)}let N="";if(j<K&&Z.charCodeAt(j)===61){j++,O();let V=j,Q=0;while(j<K){if(E())continue;let G=Z.charCodeAt(j);if(G===40||G===123||G===91||G===60)Q++;else if(G===41||G===125||G===93||G===62&&!S())Q--;else if(Q===0&&(G===59||G===44))break;if(Q===0&&p())break;j++}N=v(V,j)}if(j<K&&Z.charCodeAt(j)===59)j++;if(!F&&N){let V=Qj(N);if(V)F=V;else if(Y==="const")F=$j(N);else F=Zj(N)}if(!F)F="unknown";H.push(`${J}${X}${Y} ${$}: ${F};`)}else if(z("interface")){j+=9,O();let Y=f();O();let $=u();O();let F="";if(z("extends")){let V=j;while(j<K&&Z.charCodeAt(j)!==123){if(E())continue;j++}F=Z.slice(V,j)}let N=gj(Yj());H.push(`${J}${X}interface ${Y}${$}${F} ${N}`)}else if(z("type")){j+=4,O();let Y=f();O();let $=u();if(O(),j<K&&Z.charCodeAt(j)===61){j++,O();let F=j,N=0;while(j<K){if(E())continue;let Q=Z.charCodeAt(j);if(Q===40||Q===123||Q===91||Q===60)N++;else if(Q===41||Q===125||Q===93||Q===62&&!S())N--;else if(N===0&&Q===59)break;if(N===0&&p())break;j++}let V=v(F,j);if(j<K&&Z.charCodeAt(j)===59)j++;H.push(`${J}${X}type ${Y}${$} = ${V}`)}}else if(z("class")){j+=5,O();let Y=f();O();let $=u();O();let F=j;while(j<K&&Z.charCodeAt(j)!==123){if(E())continue;j++}let N=v(F,j),V=N?` ${N}`:"",Q=zj();H.push(`${J}${X}class ${Y}${$}${V} ${Q}`)}else if(z("enum")){j+=4,O();let Y=f();O();let $=Yj();H.push(`${J}${X}enum ${Y} ${$}`)}else if(z("namespace")||z("module")){let Y=z("namespace")?"namespace":"module";j+=Y.length,O();let $=f();O();let F=Gj(J);H.push(`${J}${X}${Y} ${$} ${F}`)}else if(z("abstract"))if(j+=8,O(),z("class")){j+=5,O();let Y=f();O();let $=u();O();let F=j;while(j<K&&Z.charCodeAt(j)!==123){if(E())continue;j++}let N=v(F,j),V=N?` ${N}`:"",Q=zj();H.push(`${J}${X}abstract class ${Y}${$}${V} ${Q}`)}else I();else if(U&&z("default")){j+=7,O();let Y=j;I();let $=v(Y,j);if($.charCodeAt($.length-1)===59)$=$.slice(0,-1);if($)H.push(`${J}export default ${$};`)}else if(!U&&(Z.charCodeAt(j)===39||Z.charCodeAt(j)===34||Z.charCodeAt(j)===96))I();else I()}if(H.length===0)return"{}";return`{
22
+ ${H.join(`
23
+ `)}
24
+ }`}function xj(J,H){let U=j+J.length;while(U<K&&y(Z.charCodeAt(U)))U++;for(let X=0;X<H.length;X++)if(U+X>=K||Z.charCodeAt(U+X)!==H.charCodeAt(X))return!1;return U+H.length>=K||!W(Z.charCodeAt(U+H.length))}function o(J,H,U){j+=U.length,O();let X="",Y=Z.charCodeAt(j);if(Y===39||Y===34){let Q=j;h(Y),X=Z.slice(Q,j)}else{X=f();while(j<K&&Z.charCodeAt(j)===46)j++,X+=`.${f()}`}O();let $=j<K&&Z.charCodeAt(j)===123?Gj():"{}",F=`${H?"export ":""}declare ${U} ${X} ${$}`,N=C(J),V=X.startsWith("'")||X.startsWith('"');return{kind:"module",name:X,text:F,isExported:H,source:V?X.slice(1,-1):void 0,leadingComments:N,start:J,end:j}}while(j<K){if(O(),j>=K)break;let J=j,H=Z.charCodeAt(j);if(H===105&&z("import"))L.push(Sj(J));else if(H===101&&z("export")){j+=6,O();let U=Z.charCodeAt(j);if(U===100&&z("default")){j+=7,O();let X=Z.charCodeAt(j);if(X===102&&z("function")){let Y=d(J,!0,!1,!0);if(Y)L.push(Y)}else if(X===97&&z("async")&&Dj("async")!==59)if(j+=5,O(),z("function")){let Y=d(J,!0,!0,!0);if(Y)L.push(Y)}else{I();let Y=v(J,j);L.push({kind:"export",name:"default",text:Y,isExported:!0,isTypeOnly:!1,start:J,end:j})}else if(X===99&&z("class")){let Y=a(J,!0,!1);L.push(Y)}else if(X===97&&z("abstract")){if(j+=8,O(),z("class")){let Y=a(J,!0,!0);L.push(Y)}}else{I();let Y=v(J,j),$=C(J);L.push({kind:"export",name:"default",text:Y,isExported:!0,isTypeOnly:!1,leadingComments:$,start:J,end:j})}}else if(U===116&&z("type")){let X=j;if(j+=4,O(),j<K&&Z.charCodeAt(j)===123){Nj();let Y=v(J,j),$=C(J);L.push({kind:"export",name:"",text:Y,isExported:!0,isTypeOnly:!0,source:Uj(Y),leadingComments:$,start:J,end:j})}else if(j<K&&Z.charCodeAt(j)===42){Rj();let Y=v(J,j);L.push({kind:"export",name:"",text:Y,isExported:!0,isTypeOnly:!0,source:Uj(Y),start:J,end:j})}else{j=X;let Y=Vj(J,!0);L.push(Y)}}else if(U===105&&z("interface")){let X=Kj(J,!0);L.push(X)}else if(U===102&&z("function")){let X=d(J,!0,!1,!1);if(X)L.push(X)}else if(U===97&&z("async"))if(j+=5,O(),z("function")){let X=d(J,!0,!0,!1);if(X)L.push(X)}else I();else if(U===99)if(z("class")){let X=a(J,!0,!1);L.push(X)}else if(z("const")){let X=j;if(j+=5,O(),z("enum")){j=X+5,O();let Y=i(J,!0,!0);L.push(Y)}else{j=X;let Y=r(J,"const",!0);for(let $=0;$<Y.length;$++)L.push(Y[$])}}else I();else if(U===97&&z("abstract")){if(j+=8,O(),z("class")){let X=a(J,!0,!0);L.push(X)}}else if(U===108&&z("let")){let X=r(J,"let",!0);for(let Y=0;Y<X.length;Y++)L.push(X[Y])}else if(U===118&&z("var")){let X=r(J,"var",!0);for(let Y=0;Y<X.length;Y++)L.push(X[Y])}else if(U===101&&z("enum")){let X=i(J,!0,!1);L.push(X)}else if(U===100&&z("declare"))j+=7,O(),wj(J,!0);else if(U===110&&z("namespace")&&Jj(9)){let X=o(J,!0,"namespace");L.push(X)}else if(U===109&&z("module")&&Jj(6)){let X=o(J,!0,"module");L.push(X)}else if(U===123){Nj();let X=v(J,j),Y=X.includes("export type"),$=C(J);L.push({kind:"export",name:"",text:X,isExported:!0,isTypeOnly:Y,source:Uj(X),leadingComments:$,start:J,end:j})}else if(U===42){Rj();let X=v(J,j),Y=C(J);L.push({kind:"export",name:"",text:X,isExported:!0,isTypeOnly:!1,source:Uj(X),leadingComments:Y,start:J,end:j})}else{I();let X=v(J,j);if(X)L.push({kind:"export",name:"",text:X,isExported:!0,start:J,end:j})}}else if(H===100&&z("declare"))j+=7,O(),wj(J,!1);else if(H===105&&z("interface")){let U=Kj(J,!1);P.set(U.name,U)}else if(H===116&&z("type")){let U=Vj(J,!1);P.set(U.name,U),L.push(U)}else if(H===102&&z("function")){let U=d(J,!1,!1,!1);if(U)P.set(U.name,U);else I()}else if(H===97)if(z("async")){let U=j;if(j+=5,O(),z("function")){let X=d(J,!1,!0,!1);if(X)P.set(X.name,X);else j=U,I()}else j=U,I()}else if(z("abstract"))if(j+=8,O(),z("class")){let U=a(J,!1,!1);P.set(U.name,U),L.push(U)}else I();else j++,I();else if(H===99)if(z("class")){let U=a(J,!1,!1);P.set(U.name,U),L.push(U)}else if(z("const")){let U=j;if(j+=5,O(),z("enum")){j=U+5,O();let X=i(J,!1,!0);P.set(X.name,X),L.push(X)}else{j=U;let X=r(J,"const",!1);for(let Y=0;Y<X.length;Y++)P.set(X[Y].name,X[Y])}}else j++,I();else if(H===101&&z("enum")){let U=i(J,!1,!1);P.set(U.name,U),L.push(U)}else if(H===108&&z("let"))I();else if(H===118&&z("var"))I();else if(H===109&&z("module")&&Jj(6)){let U=o(J,!1,"module");L.push(U)}else if(H===110&&z("namespace")&&Jj(9)){let U=o(J,!1,"namespace");L.push(U)}else{let U=Z.charCodeAt(j);if(U===39||U===34){if(h(U),j<K&&Z.charCodeAt(j)===59)j++}else if(U===96){if(t(),j<K&&Z.charCodeAt(j)===59)j++}else if(U===64){if(j++,f(),O(),j<K&&Z.charCodeAt(j)===46)j++,f(),O();if(j<K&&Z.charCodeAt(j)===40)A(40,41)}else j++,I()}}if(P.size>0)mj(L,P);if(x.size>0){let J=new Map;for(let U of L)if(U.kind==="function")J.set(U.name,(J.get(U.name)||0)+1);let H=new Set;for(let[U,X]of J)if(X>1)H.add(U);if(H.size>0){let U=new Set;for(let X of H)for(let Y=L.length-1;Y>=0;Y--)if(L[Y].kind==="function"&&L[Y].name===X&&x.has(Y)){U.add(Y);break}if(U.size>0){let X=[...U].sort((Y,$)=>$-Y);for(let Y of X)L.splice(Y,1)}}}return L;function wj(J,H){if(z("function")){let U=d(J,H,!1,!1);if(U)L.push(U)}else if(z("async")){if(j+=5,O(),z("function")){let U=d(J,H,!0,!1);if(U)L.push(U)}}else if(z("class")){let U=a(J,H,!1);L.push(U)}else if(z("abstract")){if(j+=8,O(),z("class")){let U=a(J,H,!0);L.push(U)}}else if(z("interface")){let U=Kj(J,H);L.push(U)}else if(z("type")){let U=Vj(J,H);L.push(U)}else if(z("enum")){let U=i(J,H,!1);L.push(U)}else if(z("const")){let U=j;if(j+=5,O(),z("enum")){j=U+5,O();let X=i(J,H,!0);L.push(X)}else if(H){j=U;let X=r(J,"const",!0);for(let Y=0;Y<X.length;Y++)L.push(X[Y])}else I()}else if(z("let")||z("var"))if(H){let U=z("let")?"let":"var",X=r(J,U,!0);for(let Y=0;Y<X.length;Y++)L.push(X[Y])}else I();else if(z("module")){let U=o(J,H,"module");L.push(U)}else if(z("namespace")){let U=o(J,H,"namespace");L.push(U)}else if(z("global")){j+=6,O();let X=`declare global ${j<K&&Z.charCodeAt(j)===123?Gj():"{}"}`,Y=C(J);L.push({kind:"module",name:"global",text:X,isExported:!1,leadingComments:Y,start:J,end:j})}else I()}}function vj(D,Hj){let T=0,l=D.length;while(T<l){let Z=D.charCodeAt(T);if(Z>=65&&Z<=90||Z>=97&&Z<=122||Z===95||Z===36||Z>127){let n=T;T++;while(T<l){let b=D.charCodeAt(T);if(b>=65&&b<=90||b>=97&&b<=122||b>=48&&b<=57||b===95||b===36||b>127)T++;else break}Hj.add(D.substring(n,T))}else T++}}function mj(D,Hj){let T=new Set,l=new Set;for(let b of D)l.add(b.name);let Z=new Set,n=[];for(let b=0;b<D.length;b++)if(D[b].kind!=="import")n.push(D[b].text),vj(D[b].text,Z);for(;;){let b=[];for(let[P,x]of Hj){if(T.has(P))continue;if(Z.has(P)){if(!l.has(P))b.push(x),l.add(P);T.add(P)}}if(b.length===0)break;b.sort((P,x)=>(P.start??1/0)-(x.start??1/0));let K=[],L=0;for(let P=0;P<D.length;P++){let x=D[P].start??1/0;while(L<b.length&&(b[L].start??1/0)<=x)K.push(b[L++]);K.push(D[P])}while(L<b.length)K.push(b[L++]);D.length=0;for(let P=0;P<K.length;P++)D.push(K[P]);for(let P of b)if(P.kind!=="import")n.push(P.text),vj(P.text,Z)}}
25
+ export{dj as oc};
@@ -0,0 +1,2 @@
1
+ // @bun
2
+ import{$ as c,Z as a,_ as b,aa as d,ba as e}from"./chunk-zf17s33e.js";import"./chunk-gssantc8.js";import"./chunk-mcdb3q06.js";export{c as parallelProcess,b as createWorkerPool,e as calculateOptimalBatchSize,d as batchFiles,a as WorkerPool};
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{$b as G,Ab as e,Bb as g,Cb as h,Db as i,Eb as j,Fb as k,Gb as l,Hb as m,Ib as n,Jb as o,Kb as p,Lb as q,Mb as r,Nb as s,Ob as t,Pb as u,Qb as v,Rb as w,Sb as x,Tb as y,Ub as z,Vb as A,Wb as B,Xb as C,Yb as D,Zb as E,_b as F,ac as H,bc as I,cc as J,dc as K,ec as L,fc as M,gc as N,wb as a,xb as b,yb as c,zb as d}from"./chunk-b0bkjk0p.js";import"./chunk-94h87sgb.js";import"./chunk-50hbgzrj.js";import"./chunk-2vw7w2j4.js";import{Nc as f}from"./chunk-sv136qag.js";import"./chunk-ns3hznyf.js";export{d as shouldUseAsyncParsing,m as shouldIncludeNonExportedInterface,l as shouldIncludeNonExportedFunction,n as isBuiltInType,j as hasExportModifier,k as hasAsyncModifier,a as getSourceFileCacheSize,b as getSourceFileAsync,e as getPendingParseCount,i as getParameterName,g as getNodeText,s as getInterfaceBody,I as findReferencedTypes,C as extractVariableStatement,o as extractTypesFromModuleText,E as extractTypeAliasDeclaration,f as extractTripleSlashDirectives,J as extractReferencedTypeDeclarations,H as extractModuleDeclaration,h as extractJSDocComments,D as extractInterfaceDeclaration,y as extractImportDeclaration,B as extractFunctionDeclaration,z as extractExportDeclaration,A as extractExportAssignment,G as extractEnumDeclaration,M as extractDeclarationsAsync,L as extractDeclarations,F as extractClassDeclaration,K as clearSourceFileCache,q as buildVariableDeclaration,t as buildTypeDeclaration,w as buildModuleDeclaration,x as buildModuleBody,r as buildInterfaceDeclaration,p as buildFunctionSignature,u as buildClassDeclaration,v as buildClassBody,c as batchParseSourceFiles,N as batchExtractDeclarations};
2
+ import{$b as G,Ab as e,Bb as g,Cb as h,Db as i,Eb as j,Fb as k,Gb as l,Hb as m,Ib as n,Jb as o,Kb as p,Lb as q,Mb as r,Nb as s,Ob as t,Pb as u,Qb as v,Rb as w,Sb as x,Tb as y,Ub as z,Vb as A,Wb as B,Xb as C,Yb as D,Zb as E,_b as F,ac as H,bc as I,cc as J,dc as K,ec as L,fc as M,gc as N,wb as a,xb as b,yb as c,zb as d}from"./chunk-y581wnfe.js";import"./chunk-2n1bbm2c.js";import"./chunk-8z31rkfp.js";import"./chunk-2r21f44d.js";import{Oc as f}from"./chunk-285mqzvx.js";import"./chunk-mcdb3q06.js";export{d as shouldUseAsyncParsing,m as shouldIncludeNonExportedInterface,l as shouldIncludeNonExportedFunction,n as isBuiltInType,j as hasExportModifier,k as hasAsyncModifier,a as getSourceFileCacheSize,b as getSourceFileAsync,e as getPendingParseCount,i as getParameterName,g as getNodeText,s as getInterfaceBody,I as findReferencedTypes,C as extractVariableStatement,o as extractTypesFromModuleText,E as extractTypeAliasDeclaration,f as extractTripleSlashDirectives,J as extractReferencedTypeDeclarations,H as extractModuleDeclaration,h as extractJSDocComments,D as extractInterfaceDeclaration,y as extractImportDeclaration,B as extractFunctionDeclaration,z as extractExportDeclaration,A as extractExportAssignment,G as extractEnumDeclaration,M as extractDeclarationsAsync,L as extractDeclarations,F as extractClassDeclaration,K as clearSourceFileCache,q as buildVariableDeclaration,t as buildTypeDeclaration,w as buildModuleDeclaration,x as buildModuleBody,r as buildInterfaceDeclaration,p as buildFunctionSignature,u as buildClassDeclaration,v as buildClassBody,c as batchParseSourceFiles,N as batchExtractDeclarations};
@@ -0,0 +1,3 @@
1
+ // @bun
2
+ import{lc as F,mc as L}from"./chunk-8z31rkfp.js";import{oc as I}from"./chunk-2r21f44d.js";import{Cc as g}from"./chunk-vpjw38x7.js";var R=100,w=0,z=new Map;function U(B,G="stdin.ts",J=!0,W=["bun"],P=!1){let N=F(B),Y=`${G}:${J?1:0}:${P?1:0}`,Q=z.get(Y);if(Q&&Q.contentHash===N)return Q.lastAccess=++w,Q.result;let j=L(B,G,J,P),v=g(j,{filePath:G,sourceCode:B,declarations:j},J,W);if(z.set(Y,{result:v,contentHash:N,lastAccess:++w}),z.size>R){let M=Math.max(1,Math.ceil(z.size*0.1)),V=[];for(let[q,$]of z)V.push([q,$.lastAccess]);V.sort((q,$)=>q[1]-$[1]);for(let q=0;q<M&&q<V.length;q++)z.delete(V[q][0])}return v}function b(){z.clear()}function H(B,G="stdin.ts",J=!0,W=["bun"],P=!1){let N=I(B,G,J,P);return g(N,{filePath:G,sourceCode:B,declarations:N},J,W)}
3
+ export{U as ic,b as jc,H as kc};
@@ -0,0 +1,2 @@
1
+ // @bun
2
+ import"./chunk-mcdb3q06.js";var e="@stacksjs/dtsx",i="module",n="0.9.15",r=!0,o="A modern, fast .d.ts generation tool, powered by Bun.",u="Chris Breuer <chris@stacksjs.org>",c="MIT",p="https://github.com/stacksjs/dtsx#readme",d={type:"git",url:"git+https://github.com/stacksjs/dtsx.git"},a={url:"https://github.com/stacksjs/dtsx/issues"},b=["dts","generation","isolated declarations","development","bun","stacks","typescript","javascript"],m={".":{import:"./dist/index.js"},"./*":{import:"./dist/*"}},l="./dist/index.js",g="./dist/index.d.ts",x={dtsx:"./dist/cli.js"},k=["dist"],h={benchmark:"bun benchmark/index.ts",build:"bun --filter './packages/dtsx' build",test:"bun test",lint:"bunx --bun pickier .","lint:fix":"bunx --bun pickier . --fix",format:"bunx --bun pickier . --format","format:fix":"bunx --bun pickier . --format --write",changelog:"bunx logsmith --verbose","changelog:generate":"bunx logsmith --output CHANGELOG.md",release:"bun --bun run changelog:generate && bunx --bun bumpx prompt --recursive",typecheck:"bunx tsc --noEmit","dev:docs":"bun --bun vitepress dev docs","build:docs":"bun --bun vitepress build docs","preview:docs":"bun --bun vitepress preview docs"},v={"@stacksjs/bumpx":"^0.2.4","@stacksjs/bunpress":"^0.1.4","@stacksjs/clapp":"^0.2.0",pickier:"^0.1.20","@stacksjs/gitlint":"^0.1.5","@stacksjs/logsmith":"^0.2.1","@types/bun":"^1.3.11","@typescript/native-preview":"^7.0.0-dev.20260311.1","buddy-bot":"^0.9.18","bun-git-hooks":"^0.3.1","bun-plugin-dtsx":"workspace:*",mitata:"^1.0.34","oxc-transform":"^0.121.0",typescript:"^5.9.3"},j=["packages/*"],y={name:e,type:i,version:n,private:r,description:o,author:u,license:c,homepage:p,repository:d,bugs:a,keywords:b,exports:m,module:l,types:g,bin:x,files:k,scripts:h,devDependencies:v,workspaces:j,"git-hooks":{"pre-commit":{"staged-lint":{"*.{js,ts,json,yaml,yml,md}":"bunx --bun pickier lint --fix"}},"commit-msg":"bunx gitlint --edit .git/COMMIT_EDITMSG"}};export{j as workspaces,n as version,g as types,i as type,h as scripts,d as repository,r as private,e as name,l as module,c as license,b as keywords,p as homepage,k as files,m as exports,v as devDependencies,o as description,y as default,a as bugs,x as bin,u as author};
@@ -0,0 +1,4 @@
1
+ // @bun
2
+ import{ec as _}from"./chunk-y581wnfe.js";import{existsSync as w,readFileSync as U,writeFileSync as q}from"fs";function Z(G){let j=[],J=/\b([A-Z][a-zA-Z0-9]*)\b/g,L;while((L=J.exec(G))!==null){let K=L[1];if(!N(K))j.push(K)}return[...new Set(j)]}function N(G){return new Set(["Array","Object","String","Number","Boolean","Symbol","BigInt","Function","Promise","Map","Set","WeakMap","WeakSet","Date","RegExp","Error","TypeError","RangeError","SyntaxError","Partial","Required","Readonly","Pick","Omit","Record","Exclude","Extract","NonNullable","ReturnType","Parameters","ConstructorParameters","InstanceType","ThisType","Uppercase","Lowercase","Capitalize","Uncapitalize","Awaited","NoInfer","Generator","AsyncGenerator","IterableIterator","AsyncIterableIterator","PropertyKey","Iterable","AsyncIterable","ArrayLike","PromiseLike","ArrayBuffer","SharedArrayBuffer","DataView","Int8Array","Uint8Array","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"]).has(G)}function C(G){if(G.kind!=="type")return!1;let j=G.typeAnnotation||"";if(G.generics)return!1;if(j.includes("{")||j.includes("(")||j.includes("<"))return!1;return/^[\w\s|&]+$/.test(j)}function E(G){if(G.kind!=="interface")return!1;if(!G.members||G.members.length===0){if(!G.extends)return!0}return!1}function D(G,j){let J={...G,members:[...G.members||[],...j.members||[]],leadingComments:[...G.leadingComments||[],...j.leadingComments||[]]};if(G.extends&&j.extends){let L=G.extends.split(",").map((H)=>H.trim()),K=j.extends.split(",").map((H)=>H.trim());J.extends=[...new Set([...L,...K])].join(", ")}else J.extends=G.extends||j.extends;return J}function F(G){let j={import:0,interface:1,type:2,class:3,enum:4,function:5,variable:6,export:7};return[...G].sort((J,L)=>{let K=j[J.kind]??99,H=j[L.kind]??99;if(K!==H)return K-H;return J.name.localeCompare(L.name)})}function k(G){let j=[],J=[];for(let K=0;K<G.length;K++){let H=G[K];if(H.kind==="import")j.push(H);else J.push(H)}return[...[...j].sort((K,H)=>{let M=K.source||"",O=H.source||"",Q=M.startsWith("node:")||M==="bun",V=O.startsWith("node:")||O==="bun";if(Q&&!V)return-1;if(!Q&&V)return 1;let X=!M.startsWith("."),W=!O.startsWith(".");if(X&&!W)return-1;if(!X&&W)return 1;return M.localeCompare(O)}),...J]}function R(G){let j=new Set;for(let K of G){if(K.kind==="import")continue;let H=K.text||"",M=K.typeAnnotation||"",O=K.returnType||"",Q=K.extends||"",V=K.implements?.join(" ")||"",X=`${H} ${M} ${O} ${Q} ${V}`;for(let W of Z(X))j.add(W);if(K.members)for(let W of K.members){let Y=`${W.typeAnnotation||""} ${W.returnType||""}`;for(let $ of Z(Y))j.add($)}if(K.parameters){for(let W of K.parameters)if(W.type)for(let Y of Z(W.type))j.add(Y)}}let J=0;return{declarations:G.map((K)=>{if(K.kind!=="import"||!K.specifiers)return K;let H=K.specifiers.filter((M)=>{let O=M.alias||M.name;return j.has(O)});if(H.length===0){if(!K.isSideEffect)return J++,null}if(H.length<(K.specifiers?.length||0))return J+=(K.specifiers?.length||0)-H.length,{...K,specifiers:H};return K}).filter((K)=>K!==null),removed:J}}function A(G){let j=new Map,J=0;for(let L of G){if(L.kind==="import"){let H=`import:${L.source}`;if(j.has(H)){let M=j.get(H),O=[...M.specifiers||[],...L.specifiers||[]],Q=Array.from(new Map(O.map((V)=>[V.alias||V.name,V])).values());j.set(H,{...M,specifiers:Q}),J++}else j.set(H,L);continue}let K=`${L.kind}:${L.name}`;if(j.has(K))J++;else j.set(K,L)}return{declarations:Array.from(j.values()),removed:J}}function z(G){let j=new Map,J=[];for(let H of G)if(H.kind==="interface"){let M=H.name;if(!j.has(M))j.set(M,[]);j.get(M).push(H)}else J.push(H);let L=0,K=[];for(let[H,M]of j)if(M.length>1){let O=M[0];for(let Q=1;Q<M.length;Q++)O=D(O,M[Q]),L++;K.push(O)}else K.push(M[0]);return{declarations:[...J,...K],merged:L}}function P(G){let j=new Map,J=new Set;for(let H of G)if(C(H))j.set(H.name,H.typeAnnotation||""),J.add(H.name);if(j.size===0)return{declarations:G,inlined:0};function L(H){let M=H;for(let[O,Q]of j){let V=new RegExp(`\\b${O}\\b`,"g");M=M.replace(V,Q)}return M}return{declarations:G.filter((H)=>H.kind!=="type"||!J.has(H.name)).map((H)=>{if(H.typeAnnotation)H={...H,typeAnnotation:L(H.typeAnnotation)};if(H.returnType)H={...H,returnType:L(H.returnType)};if(H.extends)H={...H,extends:L(H.extends)};return H}),inlined:j.size}}function v(G){let j=G.length,J=G.filter((L)=>!E(L));return{declarations:J,removed:j-J.length}}function B(G,j={}){let J=[...G],L={originalSize:0,optimizedSize:0,savings:0,savingsPercent:0,removedImports:0,removedDeclarations:0,mergedInterfaces:0,inlinedTypes:0};if(j.removeUnusedImports){let{declarations:K,removed:H}=R(J);J=K,L.removedImports=H}if(j.deduplicateDeclarations){let{declarations:K,removed:H}=A(J);J=K,L.removedDeclarations+=H}if(j.mergeInterfaces){let{declarations:K,merged:H}=z(J);J=K,L.mergedInterfaces=H}if(j.removeEmptyInterfaces){let{declarations:K,removed:H}=v(J);J=K,L.removedDeclarations+=H}if(j.inlineSimpleTypes){let{declarations:K,inlined:H}=P(J);J=K,L.inlinedTypes=H}if(j.sortImports)J=k(J);if(j.sortDeclarations)J=F(J);return{declarations:J,result:L}}async function g(G,j={}){if(!w(G))throw Error(`File not found: ${G}`);let J=U(G,"utf-8"),L=Buffer.byteLength(J,"utf-8"),K=_(J,G,!j.removeComments),{declarations:H,result:M}=B(K,j),O=h(H,j);if(j.minify)O=x(O);let Q=Buffer.byteLength(O,"utf-8");return M.originalSize=L,M.optimizedSize=Q,M.savings=L-Q,M.savingsPercent=Math.round(M.savings/L*100),q(G,O),M}function h(G,j){let J=[];for(let L of G){if(!j.removeComments&&L.leadingComments)for(let K of L.leadingComments)J.push(K);if(L.text)J.push(L.text);else J.push(S(L));J.push("")}return J.join(`
3
+ `)}function S(G){let j=[];if(G.isExported)j.push("export");if(G.isDefault)j.push("default");switch(G.kind){case"import":if(G.isTypeOnly)j.push("import type");else j.push("import");if(G.specifiers&&G.specifiers.length>0){let J=G.specifiers.map((L)=>{let K=L.isType?"type ":"";return L.alias?`${K}${L.name} as ${L.alias}`:`${K}${L.name}`}).join(", ");j.push(`{ ${J} }`)}j.push("from"),j.push(`'${G.source}'`);break;case"function":if(j.push("declare function"),j.push(G.name),G.generics)j.push(G.generics);if(j.push(`(${I(G.parameters)})`),G.returnType)j.push(`: ${G.returnType}`);break;case"variable":if(j.push("declare const"),j.push(G.name),G.typeAnnotation)j.push(`: ${G.typeAnnotation}`);break;case"interface":if(j.push("interface"),j.push(G.name),G.generics)j.push(G.generics);if(G.extends)j.push(`extends ${G.extends}`);if(j.push("{"),G.members)for(let J of G.members)j.push(` ${J.name}${J.typeAnnotation?`: ${J.typeAnnotation}`:""}`);j.push("}");break;case"type":if(j.push("type"),j.push(G.name),G.generics)j.push(G.generics);j.push("="),j.push(G.typeAnnotation||"unknown");break;case"class":if(j.push("declare class"),j.push(G.name),G.generics)j.push(G.generics);if(G.extends)j.push(`extends ${G.extends}`);if(G.implements?.length)j.push(`implements ${G.implements.join(", ")}`);j.push("{ }");break;case"enum":j.push("declare enum"),j.push(G.name),j.push("{ }");break;default:return G.text||""}return j.join(" ")}function I(G){if(!G)return"";return G.map((j)=>{let J="";if(j.rest)J+="...";if(J+=j.name,j.optional)J+="?";if(j.type)J+=`: ${j.type}`;return J}).join(", ")}function x(G){return G.replace(/(?<!\/\*\*)\/\/[^\n]*/g,"").replace(/^\s*[\r\n]/gm,"").replace(/ {2,}/g," ").replace(/\s*([{}[\]();,:])\s*/g,"$1").replace(/(\w)(\{)/g,"$1 $2").replace(/(\})([a-z])/gi,"$1 $2").replace(/(export|import|type|interface|class|function|const|let|var|extends|implements|declare)\s*/g,"$1 ").trim()}
4
+ export{B as a,g as b,x as c};
@@ -0,0 +1,2 @@
1
+ // @bun
2
+ import{ic as a,jc as b,kc as c}from"./chunk-4s9jv983.js";import"./chunk-8z31rkfp.js";import"./chunk-2r21f44d.js";import"./chunk-vpjw38x7.js";import"./chunk-285mqzvx.js";import"./chunk-mcdb3q06.js";export{c as processSourceDirect,a as processSource,b as clearResultCache};
@@ -1,3 +1,3 @@
1
1
  // @bun
2
- import{tb as K}from"./chunk-jfk0hw36.js";function L(N={}){let{buildStart:P=!0,buildEnd:Q=!1,writeBundle:T=!1,modes:y,onGenerated:U,onError:H,...W}=N,I="production",z=async()=>{try{let q=await K(W);U?.(q)}catch(q){let J=q instanceof Error?q:Error(String(q));if(H?.(J),!H)console.error("[dtsx] Generation failed:",J.message)}},F=()=>{if(!y||y.length===0)return!0;return y.includes(I)};return{name:"dtsx",apply(q){return I=q.mode,!0},async buildStart(){if(P&&F())await z()},async buildEnd(){if(Q&&F())await z()},async writeBundle(){if(T&&F())await z()}}}var Y=L,_=L;
2
+ import{tb as K}from"./chunk-14gh6ezz.js";function L(N={}){let{buildStart:P=!0,buildEnd:Q=!1,writeBundle:T=!1,modes:y,onGenerated:U,onError:H,...W}=N,I="production",z=async()=>{try{let q=await K(W);U?.(q)}catch(q){let J=q instanceof Error?q:Error(String(q));if(H?.(J),!H)console.error("[dtsx] Generation failed:",J.message)}},F=()=>{if(!y||y.length===0)return!0;return y.includes(I)};return{name:"dtsx",apply(q){return I=q.mode,!0},async buildStart(){if(P&&F())await z()},async buildEnd(){if(Q&&F())await z()},async writeBundle(){if(T&&F())await z()}}}var Y=L,_=L;
3
3
  export{L as ca,Y as da,_ as ea};
@@ -0,0 +1,3 @@
1
+ // @bun
2
+ import{oc as J}from"./chunk-2r21f44d.js";var S=typeof globalThis.Bun?.hash==="function";function z(B){if(S)return Bun.hash(B);let g=0;for(let T=0;T<B.length;T++){let p=B.charCodeAt(T);g=(g<<5)-g+p,g=g&g}return g}var U=100,G=0,f=new Map;function $(B,g,T=!0,p=!1){let b=z(B),j=`${g}:${T?1:0}:${p?1:0}`,w=f.get(j);if(w&&w.contentHash===b)return w.lastAccess=++G,w.declarations;let q=J(B,g,T,p);if(f.set(j,{declarations:q,contentHash:b,lastAccess:++G}),f.size>U){let Q=Math.max(1,Math.ceil(f.size*0.1)),x=[];for(let[u,F]of f)x.push([u,F.lastAccess]);x.sort((u,F)=>u[1]-F[1]);for(let u=0;u<Q&&u<x.length;u++)f.delete(x[u][0])}return q}function v(){f.clear()}
3
+ export{z as lc,$ as mc,v as nc};
@@ -0,0 +1,33 @@
1
+ // @bun
2
+ import{Wc as UX}from"./chunk-gssantc8.js";import{dd as d}from"./chunk-mcdb3q06.js";import{existsSync as IY}from"fs";import{resolve as jY}from"path";import WX from"process";import{pathToFileURL as wY}from"url";import{existsSync as OQ,statSync as TQ}from"fs";import{join as jX,relative as wX,resolve as NQ}from"path";import r from"process";import{Buffer as V}from"buffer";import{createCipheriv as KX,createDecipheriv as LX,randomBytes as JQ}from"crypto";import{closeSync as HQ,createReadStream as CQ,createWriteStream as MX,existsSync as l,fsyncSync as kQ,openSync as xQ,writeFileSync as FX}from"fs";import{access as DX,constants as PQ,mkdir as VX,readdir as n,rename as bQ,stat as C,unlink as i,writeFile as UQ}from"fs/promises";import{isAbsolute as SX,join as k,resolve as EX}from"path";import B from"process";import{pipeline as OX}from"stream/promises";import{createGzip as yQ}from"zlib";import x from"process";import S from"process";import s from"process";import{existsSync as o}from"fs";import{resolve as GQ}from"path";import{existsSync as eX}from"fs";import{existsSync as LQ,mkdirSync as QY,readdirSync as XY,readFileSync as YY,writeFileSync as ZY}from"fs";import{homedir as P}from"os";import{dirname as pQ,resolve as K}from"path";import N from"process";import{existsSync as GY,readdirSync as zY}from"fs";import{extname as zQ,resolve as uQ}from"path";import _Y from"process";var AX=Object.defineProperty,qX=(Q)=>Q;function GX(Q,X){this[Q]=qX.bind(null,X)}var zX=(Q,X)=>{for(var Y in X)AX(Q,Y,{get:X[Y],enumerable:!0,configurable:!0,set:GX.bind(X,Y)})},O=(Q,X)=>()=>(Q&&(X=Q(Q=0)),X),_X=import.meta.require;class MQ{cache=new Map;totalHits=0;totalMisses=0;options;constructor(Q={}){this.options={enabled:!0,ttl:300000,maxSize:100,keyPrefix:"bunfig:",...Q}}generateKey(Q,X){let Y=X?`:${X}`:"";return`${this.options.keyPrefix}${Q}${Y}`}isExpired(Q){return Date.now()-Q.timestamp.getTime()>Q.ttl}estimateSize(Q){try{return JSON.stringify(Q).length}catch{return 1000}}evictIfNeeded(){if(this.cache.size<=this.options.maxSize)return;let Q=Array.from(this.cache.entries()).sort(([,Y],[,Z])=>Y.timestamp.getTime()-Z.timestamp.getTime()),X=Q.length-this.options.maxSize+1;for(let Y=0;Y<X;Y++)this.cache.delete(Q[Y][0])}set(Q,X,Y,Z){if(!this.options.enabled)return;let $=this.generateKey(Q,Y),J=Z??this.options.ttl,H=this.estimateSize(X);this.cache.set($,{value:X,timestamp:new Date,ttl:J,hits:0,size:H}),this.evictIfNeeded()}get(Q,X){if(!this.options.enabled){this.totalMisses++;return}let Y=this.generateKey(Q,X),Z=this.cache.get(Y);if(!Z){this.totalMisses++;return}if(this.isExpired(Z)){this.cache.delete(Y),this.totalMisses++;return}return Z.hits++,this.totalHits++,Z.value}isFileModified(Q,X){try{if(!OQ(Q))return!0;return TQ(Q).mtime>X}catch{return!0}}getWithFileCheck(Q,X){let Y=this.get(Q,X);if(!Y)return;if(this.isFileModified(X,Y.fileTimestamp)){this.delete(Q,X);return}return Y.value}setWithFileCheck(Q,X,Y,Z){try{let $=OQ(Y)?TQ(Y):null,J=$?$.mtime:new Date;this.set(Q,{value:X,fileTimestamp:J},Y,Z)}catch{this.set(Q,X,Y,Z)}}delete(Q,X){let Y=this.generateKey(Q,X);return this.cache.delete(Y)}clear(){this.cache.clear(),this.totalHits=0,this.totalMisses=0}cleanup(){let Q=0;for(let[X,Y]of this.cache.entries())if(this.isExpired(Y))this.cache.delete(X),Q++;return Q}getStats(){let Q=Array.from(this.cache.values()),X=Q.reduce((Z,$)=>Z+$.size,0),Y=Q.map((Z)=>Z.timestamp).sort();return{size:X,maxSize:this.options.maxSize,hitRate:this.totalHits+this.totalMisses>0?this.totalHits/(this.totalHits+this.totalMisses):0,totalHits:this.totalHits,totalMisses:this.totalMisses,entries:this.cache.size,oldestEntry:Y[0],newestEntry:Y[Y.length-1]}}export(){let Q={};for(let[X,Y]of this.cache.entries())Q[X]={value:Y.value,timestamp:Y.timestamp.toISOString(),ttl:Y.ttl,hits:Y.hits,size:Y.size};return Q}import(Q){this.cache.clear();for(let[X,Y]of Object.entries(Q))if(typeof Y==="object"&&Y!==null){let Z=Y;this.cache.set(X,{value:Z.value,timestamp:new Date(Z.timestamp),ttl:Z.ttl,hits:Z.hits,size:Z.size})}}}class FQ{metrics=[];maxMetrics=1000;async track(Q,X,Y={}){let Z=performance.now(),$=new Date;try{let J=await X(),H=performance.now()-Z;return this.recordMetric({operation:Q,duration:H,timestamp:$,...Y}),J}catch(J){let H=performance.now()-Z;throw this.recordMetric({operation:`${Q}:error`,duration:H,timestamp:$,...Y}),J}}recordMetric(Q){if(this.metrics.push(Q),this.metrics.length>this.maxMetrics)this.metrics=this.metrics.slice(-this.maxMetrics)}getStats(Q){let X=Q?this.metrics.filter(($)=>$.operation===Q):this.metrics;if(X.length===0)return{count:0,averageDuration:0,minDuration:0,maxDuration:0,totalDuration:0,recentMetrics:[]};let Y=X.map(($)=>$.duration),Z=Y.reduce(($,J)=>$+J,0);return{count:X.length,averageDuration:Z/X.length,minDuration:Math.min(...Y),maxDuration:Math.max(...Y),totalDuration:Z,recentMetrics:X.slice(-10)}}getAllMetrics(){return[...this.metrics]}clearMetrics(){this.metrics=[]}getSlowOperations(Q){return this.metrics.filter((X)=>X.duration>Q)}}function BX(Q,X={}){let Z=Object.keys(X).sort().map(($)=>`${$}:${X[$]}`).join("|");return Z?`${Q}:${Z}`:Q}function RX(Q,X){try{return JSON.stringify(Q)===JSON.stringify(X)}catch{return Q===X}}function IX(Q){return Q.getStats().size*2}var b,p,cQ,g=O(()=>{b=new MQ,p=new FQ,cQ={createKey:BX,isEquivalent:RX,estimateMemoryUsage:IX}});function TX(Q,X={}){let Y=r.cwd();while(Y.includes("storage"))Y=NQ(Y,"..");let Z=NQ(Y,Q||"");if(X?.relative)return wX(r.cwd(),Z);return Z}function j(){if(S.env.NODE_ENV==="test"||S.env.BUN_ENV==="test")return!1;return typeof window<"u"}async function NX(){if(S.env.NODE_ENV==="test"||S.env.BUN_ENV==="test")return!0;if(typeof navigator<"u"&&navigator.product==="ReactNative")return!0;if(typeof S<"u"){let Q=S.type;if(Q==="renderer"||Q==="worker")return!1;return!!(S.versions&&(S.versions.node||S.versions.bun))}return!1}class lQ{async format(Q){let X=await NX(),Y=await this.getMetadata(X);return JSON.stringify({timestamp:Q.timestamp.toISOString(),level:Q.level,name:Q.name,message:Q.message,metadata:Y})}async getMetadata(Q){if(Q){let{hostname:X}=await import("os");return{pid:x.pid,hostname:X(),environment:x.env.NODE_ENV||"development",platform:x.platform,version:x.version}}return{userAgent:navigator.userAgent,hostname:window.location.hostname||"browser",environment:x.env.NODE_ENV||x.env.BUN_ENV||"development",viewport:{width:window.innerWidth,height:window.innerHeight},language:navigator.language}}}class QQ{name;fileLocks=new Map;currentKeyId=null;keys=new Map;fingersCrossedConfig;fingersCrossedActive=!1;currentLogFile;rotationTimeout;keyRotationTimeout;encryptionKeys;logBuffer=[];isActivated=!1;pendingOperations=[];enabled;fancy;tagFormat;timestampPosition;environment;config;options;formatter;timers=new Set;subLoggers=new Set;fingersCrossedBuffer=[];ANSI_PATTERN=/\u001B\[.*?m/g;activeProgressBar=null;constructor(Q,X={}){this.name=Q,this.config={...h},this.options=this.normalizeOptions(X),this.formatter=this.options.formatter||new lQ,this.enabled=X.enabled??!0,this.fancy=X.fancy??!0,this.tagFormat=X.tagFormat??{prefix:"[",suffix:"]"},this.timestampPosition=X.timestampPosition??"right",this.environment=X.environment??B.env.APP_ENV??"local",this.fingersCrossedConfig=this.initializeFingersCrossedConfig(X);let Y={...X},Z=X.timestamp!==void 0;if(Z)delete Y.timestamp;if(this.config={...this.config,...Y,timestamp:Z||this.config.timestamp,level:this.options.level??"info"},this.currentLogFile=this.generateLogFilename(),this.encryptionKeys=new Map,this.validateEncryptionConfig()){this.setupRotation();let $=this.generateKeyId(),J=this.generateKey();this.currentKeyId=$,this.keys.set($,J),this.encryptionKeys.set($,{key:J,createdAt:new Date}),this.setupKeyRotation()}}shouldActivateFingersCrossed(Q){if(!this.fingersCrossedConfig)return!1;let X={debug:0,info:1,success:2,warning:3,error:4},Y=this.fingersCrossedConfig.activationLevel??"error";return X[Q]>=X[Y]}initializeFingersCrossedConfig(Q){if(!Q.fingersCrossedEnabled&&Q.fingersCrossed)return{...t,...Q.fingersCrossed};if(!Q.fingersCrossedEnabled)return null;if(!Q.fingersCrossed)return{...t};return{...t,...Q.fingersCrossed}}normalizeOptions(Q){let X={format:"json",level:"info",logDirectory:h.logDirectory,rotation:void 0,timestamp:void 0,fingersCrossed:{},enabled:!0,showTags:!1,showIcons:!0,formatter:void 0},Y={...X,...Object.fromEntries(Object.entries(Q).filter(([,Z])=>Z!==void 0))};if(!Y.level||!["debug","info","success","warning","error"].includes(Y.level))Y.level=X.level;return Y}shouldWriteToFile(){return!j()&&this.config.writeToFile===!0}async writeToFile(Q){let Y=(async()=>{let $,J=0,H=3,W=1000;while(J<H)try{try{try{await DX(this.config.logDirectory,PQ.F_OK|PQ.W_OK)}catch(A){if(A instanceof Error&&"code"in A)if(A.code==="ENOENT")await VX(this.config.logDirectory,{recursive:!0,mode:493});else if(A.code==="EACCES")throw Error(`No write permission for log directory: ${this.config.logDirectory}`);else throw A;else throw A}}catch(A){throw console.error("Debug: [writeToFile] Failed to create log directory:",A),A}let U=this.validateEncryptionConfig()?(await this.encrypt(Q)).encrypted:V.from(Q);try{if(!l(this.currentLogFile))await UQ(this.currentLogFile,"",{mode:420});if($=xQ(this.currentLogFile,"a",420),FX($,U,{flag:"a"}),kQ($),$!==void 0)HQ($),$=void 0;if((await C(this.currentLogFile)).size===0){if(await UQ(this.currentLogFile,U,{flag:"w",mode:420}),(await C(this.currentLogFile)).size===0)throw Error("File exists but is empty after retry write")}return}catch(A){let q=A;if(q.code&&["ENETDOWN","ENETUNREACH","ENOTFOUND","ETIMEDOUT"].includes(q.code)){if(J<H-1){let G=typeof q.message==="string"?q.message:"Unknown error";console.error(`Network error during write attempt ${J+1}/${H}:`,G);let z=W*2**J;await new Promise((_)=>setTimeout(_,z)),J++;continue}}if(q?.code&&["ENOSPC","EDQUOT"].includes(q.code))throw Error(`Disk quota exceeded or no space left on device: ${q.message}`);throw console.error("Debug: [writeToFile] Error writing to file:",q),q}finally{if($!==void 0)try{HQ($)}catch(A){console.error("Debug: [writeToFile] Error closing file descriptor:",A)}}}catch(U){if(J===H-1){let q=U,G=typeof q.message==="string"?q.message:"Unknown error";throw console.error("Debug: [writeToFile] Max retries reached. Final error:",G),U}J++;let A=W*2**(J-1);await new Promise((q)=>setTimeout(q,A))}})();this.pendingOperations.push(Y);let Z=this.pendingOperations.length-1;try{await Y}catch($){throw console.error("Debug: [writeToFile] Error in operation:",$),$}finally{this.pendingOperations.splice(Z,1)}}generateLogFilename(){if(this.name.includes("stream-throughput")||this.name.includes("decompress-perf-test")||this.name.includes("decompression-latency")||this.name.includes("concurrent-read-test")||this.name.includes("clock-change-test"))return k(this.config.logDirectory,`${this.name}.log`);if(this.name.includes("pending-test")||this.name.includes("temp-file-test")||this.name==="crash-test"||this.name==="corrupt-test"||this.name.includes("rotation-load-test")||this.name==="sigterm-test"||this.name==="sigint-test"||this.name==="failed-rotation-test"||this.name==="integration-test")return k(this.config.logDirectory,`${this.name}.log`);let Q=new Date().toISOString().split("T")[0];return k(this.config.logDirectory,`${this.name}-${Q}.log`)}setupRotation(){if(j())return;if(!this.shouldWriteToFile())return;if(typeof this.config.rotation==="boolean")return;let Q=this.config.rotation,X;switch(Q.frequency){case"daily":X=86400000;break;case"weekly":X=604800000;break;case"monthly":X=2592000000;break;default:return}this.rotationTimeout=setInterval(()=>{this.rotateLog()},X)}setupKeyRotation(){if(!this.validateEncryptionConfig()){console.error("Invalid encryption configuration detected during key rotation setup");return}let X=this.config.rotation.keyRotation;if(!X?.enabled)return;let Y=typeof X.interval==="number"?X.interval:60,Z=Math.max(Y,60)*1000;this.keyRotationTimeout=setInterval(()=>{this.rotateKeys().catch(($)=>{console.error("Error rotating keys:",$)})},Z)}async rotateKeys(){if(!this.validateEncryptionConfig()){console.error("Invalid encryption configuration detected during key rotation");return}let X=this.config.rotation.keyRotation,Y=this.generateKeyId(),Z=this.generateKey();this.currentKeyId=Y,this.keys.set(Y,Z),this.encryptionKeys.set(Y,{key:Z,createdAt:new Date});let $=Array.from(this.encryptionKeys.entries()).sort(([,W],[,U])=>U.createdAt.getTime()-W.createdAt.getTime()),J=typeof X.maxKeys==="number"?X.maxKeys:1,H=Math.max(1,J);if($.length>H)for(let[W]of $.slice(H))this.encryptionKeys.delete(W),this.keys.delete(W)}generateKeyId(){return JQ(16).toString("hex")}generateKey(){return JQ(32)}getCurrentKey(){if(!this.currentKeyId)throw Error("Encryption is not properly initialized. Make sure encryption is enabled in the configuration.");let Q=this.keys.get(this.currentKeyId);if(!Q)throw Error(`No key found for ID ${this.currentKeyId}. The encryption key may have been rotated or removed.`);return{key:Q,id:this.currentKeyId}}encrypt(Q){let{key:X}=this.getCurrentKey(),Y=JQ(16),Z=KX("aes-256-gcm",X,Y),$=V.isBuffer(Q)?Q:V.from(Q,"utf8"),J=Z.update($),H=Z.final(),W=J.length+H.length,U=Z.getAuthTag(),A=V.allocUnsafe(16+W+16);return Y.copy(A,0),J.copy(A,16),H.copy(A,16+J.length),U.copy(A,16+W),{encrypted:A,iv:Y}}async compressData(Q){return new Promise((X,Y)=>{let Z=yQ(),$=[];Z.on("data",(J)=>$.push(J)),Z.on("end",()=>X(V.from(V.concat($)))),Z.on("error",Y),Z.write(Q),Z.end()})}getEncryptionOptions(){if(!this.config.rotation||typeof this.config.rotation==="boolean"||!this.config.rotation.encrypt)return{};let Q={algorithm:"aes-256-cbc",compress:!1};if(typeof this.config.rotation.encrypt==="object"){let X=this.config.rotation.encrypt;return{...Q,...X}}return Q}async rotateLog(){if(j())return;if(!this.shouldWriteToFile())return;let Q=await C(this.currentLogFile).catch(()=>null);if(!Q)return;let X=this.config.rotation;if(typeof X==="boolean")return;if(X.maxSize&&Q.size>=X.maxSize){let Y=this.currentLogFile,Z=this.generateLogFilename();if(this.name.includes("rotation-load-test")||this.name==="failed-rotation-test"){let $=await n(this.config.logDirectory),J=$.filter((U)=>U.startsWith(this.name)&&/\.log\.\d+$/.test(U)).sort((U,A)=>{let q=Number.parseInt(U.match(/\.log\.(\d+)$/)?.[1]||"0");return Number.parseInt(A.match(/\.log\.(\d+)$/)?.[1]||"0")-q}),H=J.length>0?Number.parseInt(J[0].match(/\.log\.(\d+)$/)?.[1]||"0")+1:1,W=`${Y}.${H}`;if(await C(Y).catch(()=>null))try{if(await bQ(Y,W),X.compress)try{let U=`${W}.gz`;await this.compressLogFile(W,U),await i(W)}catch(U){console.error("Error compressing rotated file:",U)}if(J.length===0&&!$.some((U)=>U.endsWith(".log.1")))try{let U=`${Y}.1`;await UQ(U,"")}catch(U){console.error("Error creating backup file:",U)}}catch(U){console.error(`Error during rotation: ${U instanceof Error?U.message:String(U)}`)}}else{let $=new Date().toISOString().replace(/[:.]/g,"-"),J=Y.replace(/\.log$/,`-${$}.log`);if(await C(Y).catch(()=>null))await bQ(Y,J)}if(this.currentLogFile=Z,X.maxFiles){let J=(await n(this.config.logDirectory)).filter((H)=>H.startsWith(this.name)).sort((H,W)=>W.localeCompare(H));for(let H of J.slice(X.maxFiles))await i(k(this.config.logDirectory,H))}}}async compressLogFile(Q,X){let Y=CQ(Q),Z=MX(X),$=yQ();await OX(Y,$,Z)}async handleFingersCrossedBuffer(Q,X){if(!this.fingersCrossedConfig)return;if(this.shouldActivateFingersCrossed(Q)&&!this.isActivated){this.isActivated=!0;for(let Y of this.logBuffer){let Z=await this.formatter.format(Y);if(this.shouldWriteToFile())await this.writeToFile(Z);console.log(Z)}if(this.fingersCrossedConfig.stopBuffering)this.logBuffer=[]}if(this.isActivated){if(this.shouldWriteToFile())await this.writeToFile(X);console.log(X)}}shouldLog(Q){if(!this.enabled)return!1;let X={debug:0,info:1,success:2,warning:3,error:4};return X[Q]>=X[this.config.level]}async flushPendingWrites(){if(await Promise.all(this.pendingOperations.map((Q)=>{if(Q instanceof Promise)return Q.catch((X)=>{console.error("Error in pending write operation:",X)});return Promise.resolve()})),l(this.currentLogFile))try{let Q=xQ(this.currentLogFile,"r+");kQ(Q),HQ(Q)}catch(Q){console.error(`Error flushing file: ${Q}`)}}async destroy(){if(this.rotationTimeout)clearInterval(this.rotationTimeout);if(this.keyRotationTimeout)clearInterval(this.keyRotationTimeout);this.timers.clear();for(let Q of this.pendingOperations)if(typeof Q.cancel==="function")Q.cancel();return(async()=>{if(this.pendingOperations.length>0)try{await Promise.allSettled(this.pendingOperations)}catch(Q){console.error("Error waiting for pending operations:",Q)}if(!j()&&this.config.rotation&&typeof this.config.rotation!=="boolean"&&this.config.rotation.compress)try{let X=(await n(this.config.logDirectory)).filter((Y)=>(Y.includes("temp")||Y.includes(".tmp"))&&Y.includes(this.name));for(let Y of X)try{await i(k(this.config.logDirectory,Y))}catch(Z){console.error(`Failed to delete temp file ${Y}:`,Z)}}catch(Q){console.error("Error cleaning up temporary files:",Q)}})()}getCurrentLogFilePath(){return this.currentLogFile}formatTag(Q){if(!Q)return"";return`${this.tagFormat.prefix}${Q}${this.tagFormat.suffix}`}formatFileTimestamp(Q){return`[${Q.toISOString()}]`}formatConsoleTimestamp(Q){return this.shouldStyleConsole()?R.gray(Q.toLocaleTimeString()):Q.toLocaleTimeString()}shouldStyleConsole(){if(!this.fancy||j())return!1;let Q=typeof B.env.NO_COLOR<"u",X=B.env.FORCE_COLOR==="0";if(Q||X)return!1;return!!(typeof B.stderr<"u"&&B.stderr.isTTY||typeof B.stdout<"u"&&B.stdout.isTTY)}formatConsoleMessage(Q){let{timestamp:X,icon:Y="",tag:Z="",message:$,level:J,showTimestamp:H=!0}=Q,W=(_)=>_.replace(this.ANSI_PATTERN,"");if(!this.fancy){let _=[];if(H)_.push(X);if(J==="warning")_.push("WARN");else if(J==="error")_.push("ERROR");else if(Y)_.push(Y.replace(/[^\p{L}\p{N}\p{P}\p{Z}]/gu,""));if(Z)_.push(Z.replace(/[[\]]/g,""));return _.push($),_.join(" ")}let U=B.stdout.columns||120,A="";if(J==="warning"||J==="error")A=`${Y} ${$}`;else if(J==="info"||J==="success")A=`${Y} ${Z} ${$}`;else A=`${Y} ${Z} ${R.cyan($)}`;if(!H)return A.trim();let q=W(A).trim().length,G=W(X).length,z=Math.max(1,U-2-q-G);return`${A.trim()}${" ".repeat(z)}${X}`}formatMessage(Q,X){if(X.length===1&&Array.isArray(X[0]))return Q.replace(/\{(\d+)\}/g,(J,H)=>{let W=Number.parseInt(H,10);return W<X[0].length?String(X[0][W]):J});let Y=/%([sdijfo%])/g,Z=0,$=Q.replace(Y,(J,H)=>{if(H==="%")return"%";if(Z>=X.length)return J;let W=X[Z++];switch(H){case"s":return String(W);case"d":case"i":return Number(W).toString();case"j":case"o":return JSON.stringify(W,null,2);default:return J}});if(Z<X.length)$+=` ${X.slice(Z).map((J)=>typeof J==="object"?JSON.stringify(J,null,2):String(J)).join(" ")}`;return $}formatMarkdown(Q){if(!Q)return Q;let X=Q;return X=X.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(Y,Z,$)=>{let J=R.underline(R.blue(Z)),H=this.toAbsoluteFilePath($);if(H&&this.shouldStyleConsole()&&this.supportsHyperlinks()){let W=`file://${encodeURI(H)}`,U="\x1B]8;;",A="\x1B\\";return`\x1B]8;;${W}\x1B\\${J}\x1B]8;;\x1B\\`}if(this.shouldStyleConsole()&&this.supportsHyperlinks())return`\x1B]8;;${$}\x1B\\${J}\x1B]8;;\x1B\\`;return J}),X=X.replace(/`([^`]+)`/g,(Y,Z)=>R.bgGray(Z)),X=X.replace(/\*\*([^*]+)\*\*/g,(Y,Z)=>R.bold(Z)),X=X.replace(/(?<!\*)\*([^*]+)\*(?!\*)/g,(Y,Z)=>R.italic(Z)),X=X.replace(/(?<!_)_([^_]+)_(?!_)/g,(Y,Z)=>R.italic(Z)),X=X.replace(/~([^~]+)~/g,(Y,Z)=>R.strikethrough(Z)),X}supportsHyperlinks(){if(j())return!1;let Q=B.env;if(!Q)return!1;if(Q.TERM_PROGRAM==="iTerm.app"||Q.TERM_PROGRAM==="vscode"||Q.TERM_PROGRAM==="WezTerm")return!0;if(Q.WT_SESSION)return!0;if(Q.TERM==="xterm-kitty")return!0;let X=Q.VTE_VERSION?Number.parseInt(Q.VTE_VERSION,10):0;if(!Number.isNaN(X)&&X>=5000)return!0;return!1}toAbsoluteFilePath(Q){try{let X=Q;if(X.startsWith("file://"))X=X.replace(/^file:\/\//,"");if(X.startsWith("~")){let Y=B.env.HOME||"";if(Y)X=X.replace(/^~(?=$|\/)/,Y)}if(SX(X)||X.startsWith("./")||X.startsWith("../"))X=EX(X);else return null;return l(X)?X:null}catch{return null}}buildOutputTexts(Q){let X=this.shouldStyleConsole()?this.formatMarkdown(Q):Q,Y=Q.replace(this.ANSI_PATTERN,"");return{consoleText:X,fileText:Y}}async log(Q,X,...Y){if(!this.shouldLog(Q))return;let Z=new Date,$=this.formatConsoleTimestamp(Z),J=this.formatFileTimestamp(Z),H,W;if(X instanceof Error)H=X.message,W=X.stack;else H=this.formatMessage(X,Y);let{consoleText:U,fileText:A}=this.buildOutputTexts(H);if(this.shouldStyleConsole()){let G=this.options.showIcons===!1?"":nQ[Q],z=this.options.showTags!==!1&&this.name?R.gray(this.formatTag(this.name)):"",_;switch(Q){case"debug":_=this.formatConsoleMessage({timestamp:$,icon:G,tag:z,message:R.gray(U),level:Q}),console.error(_);break;case"info":_=this.formatConsoleMessage({timestamp:$,icon:G,tag:z,message:U,level:Q}),console.warn(_);break;case"success":_=this.formatConsoleMessage({timestamp:$,icon:G,tag:z,message:R.green(U),level:Q}),console.error(_);break;case"warning":_=this.formatConsoleMessage({timestamp:$,icon:G,tag:z,message:U,level:Q}),console.warn(_);break;case"error":if(_=this.formatConsoleMessage({timestamp:$,icon:G,tag:z,message:U,level:Q}),console.error(_),W){let D=W.split(`
3
+ `);for(let I of D)if(I.trim()&&!I.includes(H))console.error(this.formatConsoleMessage({timestamp:$,message:R.gray(` ${I}`),level:Q,showTimestamp:!1}))}break}}else if(!j()){if(console.error(`${J} ${this.environment}.${Q.toUpperCase()}: ${H}`),W)console.error(W)}let q=`${J} ${this.environment}.${Q.toUpperCase()}: ${A}
4
+ `;if(W)q+=`${W}
5
+ `;if(q=q.replace(this.ANSI_PATTERN,""),this.shouldWriteToFile())await this.writeToFile(q)}progress(Q,X=""){let Y={update:(W,U)=>{},finish:(W)=>{},interrupt:(W,U)=>{}};if(!this.enabled)return Y;let Z=30;if(this.activeProgressBar={total:Math.max(1,Q||1),current:0,message:X||"",barLength:Z,lastRenderedLine:""},this.shouldStyleConsole()&&!j()&&B.stdout.isTTY)this.renderProgressBar(this.activeProgressBar);return{update:(W,U)=>{if(!this.enabled||!this.activeProgressBar)return;if(this.activeProgressBar.current=Math.min(Math.max(0,W),this.activeProgressBar.total),U!==void 0)this.activeProgressBar.message=U;if(this.shouldStyleConsole()&&!j()&&B.stdout.isTTY)this.renderProgressBar(this.activeProgressBar)},finish:(W)=>{if(!this.activeProgressBar)return;this.finishProgressBar(this.activeProgressBar,W)},interrupt:(W,U="info")=>{if(!j()&&B.stdout.isTTY)B.stdout.write(`
6
+ `);if(this[U==="warning"?"warn":U](W),this.activeProgressBar&&this.shouldStyleConsole()&&!j()&&B.stdout.isTTY)this.renderProgressBar(this.activeProgressBar)}}}time(Q){let X=performance.now();if(this.shouldStyleConsole()){let Y=this.options.showTags!==!1&&this.name?R.gray(this.formatTag(this.name)):"",Z=this.formatConsoleTimestamp(new Date);console.error(this.formatConsoleMessage({timestamp:Z,icon:this.options.showIcons===!1?"":R.blue("\u25D0"),tag:Y,message:`${R.cyan(Q)}...`}))}return async(Y)=>{if(!this.enabled)return;let Z=performance.now(),$=Math.round(Z-X),J=`${Q} completed in ${$}ms`,H=new Date,W=this.formatConsoleTimestamp(H),A=`${this.formatFileTimestamp(H)} ${this.environment}.INFO: ${J}`;if(Y)A+=` ${JSON.stringify(Y)}`;if(A+=`
7
+ `,A=A.replace(this.ANSI_PATTERN,""),this.shouldStyleConsole()){let q=this.options.showTags!==!1&&this.name?R.gray(this.formatTag(this.name)):"";console.error(this.formatConsoleMessage({timestamp:W,icon:this.options.showIcons===!1?"":R.green("\u2713"),tag:q,message:`${J}${Y?` ${JSON.stringify(Y)}`:""}`}))}else if(!j())console.error(A.trim());if(this.shouldWriteToFile())await this.writeToFile(A)}}async debug(Q,...X){await this.log("debug",Q,...X)}async info(Q,...X){await this.log("info",Q,...X)}async success(Q,...X){await this.log("success",Q,...X)}async warn(Q,...X){await this.log("warning",Q,...X)}async error(Q,...X){await this.log("error",Q,...X)}validateEncryptionConfig(){if(!this.config.rotation)return!1;if(typeof this.config.rotation==="boolean")return!1;let Q=this.config.rotation,{encrypt:X}=Q;return!!X}async only(Q){if(!this.enabled)return;return await Q()}isEnabled(){return this.enabled}setEnabled(Q){this.enabled=Q}extend(Q){let X=`${this.name}:${Q}`,Y=new QQ(X,{...this.options,logDirectory:this.config.logDirectory,level:this.config.level,format:this.config.format,rotation:typeof this.config.rotation==="boolean"?void 0:this.config.rotation,timestamp:typeof this.config.timestamp==="boolean"?void 0:this.config.timestamp});return this.subLoggers.add(Y),Y}createReadStream(){if(j())throw Error("createReadStream is not supported in browser environments");if(!l(this.currentLogFile))throw Error(`Log file does not exist: ${this.currentLogFile}`);return CQ(this.currentLogFile,{encoding:"utf8"})}async decrypt(Q){if(!this.validateEncryptionConfig())throw Error("Encryption is not configured");let X=this.config.rotation;if(!X.encrypt||typeof X.encrypt==="boolean")throw Error("Invalid encryption configuration");if(!this.currentKeyId||!this.keys.has(this.currentKeyId))throw Error("No valid encryption key available");let Y=this.keys.get(this.currentKeyId);try{let Z=V.isBuffer(Q)?Q:V.from(Q,"base64"),$=Z.subarray(0,16),J=Z.subarray(Z.length-16),H=Z.subarray(16,Z.length-16),W=LX("aes-256-gcm",Y,$);W.setAuthTag(J);let U=W.update(H),A=W.final(),q=U.length+A.length,G=V.allocUnsafe(q);return U.copy(G,0),A.copy(G,U.length),G.toString("utf8")}catch(Z){throw Error(`Decryption failed: ${Z instanceof Error?Z.message:String(Z)}`)}}getLevel(){return this.config.level}getLogDirectory(){return this.config.logDirectory}getFormat(){return this.config.format}getRotationConfig(){return this.config.rotation}isBrowserMode(){return j()}isServerMode(){return!j()}setTestEncryptionKey(Q,X){this.currentKeyId=Q,this.keys.set(Q,X)}getTestCurrentKey(){if(!this.currentKeyId||!this.keys.has(this.currentKeyId))return null;return{id:this.currentKeyId,key:this.keys.get(this.currentKeyId)}}getConfig(){return this.config}async box(Q){if(!this.enabled)return;let X=new Date,Y=this.formatConsoleTimestamp(X),Z=this.formatFileTimestamp(X),{consoleText:$,fileText:J}=this.buildOutputTexts(Q);if(this.shouldStyleConsole()){let W=$.split(`
8
+ `),U=Math.max(...W.map((z)=>z.length))+2,A=`\u250C${"\u2500".repeat(U)}\u2510`,q=`\u2514${"\u2500".repeat(U)}\u2518`,G=W.map((z)=>{return this.formatConsoleMessage({timestamp:Y,message:R.cyan(z),showTimestamp:!1})});console.error(this.formatConsoleMessage({timestamp:Y,message:R.cyan(A),showTimestamp:!1})),G.forEach((z)=>console.error(z)),console.error(this.formatConsoleMessage({timestamp:Y,message:R.cyan(q),showTimestamp:!1}))}else if(!j())console.error(`${Z} ${this.environment}.INFO: [BOX] ${J}`);let H=`${Z} ${this.environment}.INFO: [BOX] ${J}
9
+ `.replace(this.ANSI_PATTERN,"");if(this.shouldWriteToFile())await this.writeToFile(H)}async prompt(Q){if(j())return Promise.resolve(!0);return new Promise((X)=>{console.error(`${R.cyan("?")} ${Q} (y/n) `);let Y=(Z)=>{let $=Z.toString().trim().toLowerCase();B.stdin.removeListener("data",Y);try{if(typeof B.stdin.setRawMode==="function")B.stdin.setRawMode(!1)}catch{}B.stdin.pause(),console.error(""),X($==="y"||$==="yes")};try{if(typeof B.stdin.setRawMode==="function")B.stdin.setRawMode(!0)}catch{}B.stdin.resume(),B.stdin.once("data",Y)})}setFancy(Q){this.fancy=Q}isFancy(){return this.fancy}pause(){this.enabled=!1}resume(){this.enabled=!0}async start(Q,...X){if(!this.enabled)return;let Y=Q;if(X&&X.length>0){let U=/%([sdijfo%])/g,A=0;if(Y=Q.replace(U,(q,G)=>{if(G==="%")return"%";if(A>=X.length)return q;let z=X[A++];switch(G){case"s":return String(z);case"d":case"i":return Number(z).toString();case"j":case"o":return JSON.stringify(z,null,2);default:return q}}),A<X.length)Y+=` ${X.slice(A).map((q)=>typeof q==="object"?JSON.stringify(q,null,2):String(q)).join(" ")}`}let{consoleText:Z,fileText:$}=this.buildOutputTexts(Y);if(this.shouldStyleConsole()){let U=this.options.showTags!==!1&&this.name?R.gray(this.formatTag(this.name)):"",A=this.options.showIcons===!1?"":`${R.blue("\u25D0")} `;console.error(`${A}${U} ${R.cyan(Z)}`)}let W=`[${new Date().toISOString()}] ${this.environment}.INFO: [START] ${$}
10
+ `.replace(this.ANSI_PATTERN,"");if(this.shouldWriteToFile())await this.writeToFile(W)}renderProgressBar(Q,X=!1){if(!this.enabled||!this.shouldStyleConsole()||!B.stdout.isTTY)return;let Y=Math.min(100,Math.max(0,Math.round(Q.current/Q.total*100))),Z=Math.round(Q.barLength*Y/100),$=Q.barLength-Z,J=R.green("\u2501".repeat(Z)),H=R.gray("\u2501".repeat($)),W=`[${J}${H}]`,U=`${Y}%`.padStart(4),A=Q.message?` ${Q.message}`:"",q=this.options.showIcons===!1?"":X||Y===100?R.green("\u2713"):R.blue("\u25B6"),G=this.options.showTags!==!1&&this.name?` ${R.gray(this.formatTag(this.name))}`:"",z=`\r${q}${G} ${W} ${U}${A}`,_=B.stdout.columns||80,D=" ".repeat(Math.max(0,_-z.replace(this.ANSI_PATTERN,"").length));if(Q.lastRenderedLine=`${z}${D}`,B.stdout.write(Q.lastRenderedLine),X)B.stdout.write(`
11
+ `)}finishProgressBar(Q,X){if(!this.enabled||!this.fancy||j()||!B.stdout.isTTY){this.activeProgressBar=null;return}if(Q.current<Q.total)Q.current=Q.total;if(X)Q.message=X;this.renderProgressBar(Q,!0),this.activeProgressBar=null}async clear(Q={}){if(j()){console.warn("Log clearing is not supported in browser environments.");return}try{console.warn("Clearing logs...",this.config.logDirectory);let X=await n(this.config.logDirectory),Y=[];for(let Z of X){if(!(Q.name?new RegExp(Q.name.replace("*",".*")).test(Z):Z.startsWith(this.name))||!Z.endsWith(".log"))continue;let J=k(this.config.logDirectory,Z);if(Q.before)try{if((await C(J)).mtime>=Q.before)continue}catch(H){console.error(`Failed to get stats for file ${J}:`,H);continue}Y.push(J)}if(Y.length===0){console.warn("No log files matched the criteria for clearing.");return}console.warn(`Preparing to delete ${Y.length} log file(s)...`);for(let Z of Y)try{await i(Z),console.warn(`Deleted log file: ${Z}`)}catch($){console.error(`Failed to delete log file ${Z}:`,$)}console.warn("Log clearing process finished.")}catch(X){console.error("Error during log clearing process:",X)}}}var vQ,WQ,h,CX,w,R,kX,dQ,xX,hQ,PX,bX,AQ,yX,fQ,mQ,vX,qQ,dX,hX,fX,mX,pX,t,nQ,gX,uX=O(()=>{vQ=r.env.CLARITY_LOG_DIR||jX(TX(),"logs"),WQ={level:"info",defaultName:"clarity",timestamp:!0,colors:!0,format:"text",maxLogSize:10485760,logDatePattern:"YYYY-MM-DD",logDirectory:vQ,rotation:{frequency:"daily",maxSize:10485760,maxFiles:5,compress:!1,rotateHour:0,rotateMinute:0,rotateDayOfWeek:0,rotateDayOfMonth:1,encrypt:!1},verbose:!1,writeToFile:!1},h={...WQ},CX=(async()=>{try{let{loadConfig:Q}=await Promise.resolve().then(()=>(HX(),JX)),X=await Q({name:"clarity",alias:"logging",defaultConfig:WQ,cwd:r.cwd()});if(X)Object.assign(h,X)}catch{}return h})(),w={red:(Q)=>`\x1B[31m${Q}\x1B[0m`,green:(Q)=>`\x1B[32m${Q}\x1B[0m`,yellow:(Q)=>`\x1B[33m${Q}\x1B[0m`,blue:(Q)=>`\x1B[34m${Q}\x1B[0m`,magenta:(Q)=>`\x1B[35m${Q}\x1B[0m`,cyan:(Q)=>`\x1B[36m${Q}\x1B[0m`,white:(Q)=>`\x1B[37m${Q}\x1B[0m`,gray:(Q)=>`\x1B[90m${Q}\x1B[0m`,bgRed:(Q)=>`\x1B[41m${Q}\x1B[0m`,bgYellow:(Q)=>`\x1B[43m${Q}\x1B[0m`,bgGray:(Q)=>`\x1B[100m${Q}\x1B[0m`,bold:(Q)=>`\x1B[1m${Q}\x1B[0m`,dim:(Q)=>`\x1B[2m${Q}\x1B[0m`,italic:(Q)=>`\x1B[3m${Q}\x1B[0m`,underline:(Q)=>`\x1B[4m${Q}\x1B[0m`,strikethrough:(Q)=>`\x1B[9m${Q}\x1B[0m`,reset:"\x1B[0m"},R=w,kX=w.red,dQ=w.green,xX=w.yellow,hQ=w.blue,PX=w.magenta,bX=w.cyan,AQ=w.white,yX=w.gray,fQ=w.bgRed,mQ=w.bgYellow,vX=w.bgGray,qQ=w.bold,dX=w.dim,hX=w.italic,fX=w.underline,mX=w.strikethrough,pX=w.reset,t={activationLevel:"error",bufferSize:50,flushOnDeactivation:!0,stopBuffering:!1},nQ={debug:"\uD83D\uDD0D",info:hQ("\u2139"),success:dQ("\u2713"),warning:mQ(AQ(qQ(" WARN "))),error:fQ(AQ(qQ(" ERROR ")))},gX=new QQ("stacks")}),cX="0.15.9",lX=()=>{};async function iQ(Q,X={}){let{maxRetries:Y=3,retryDelay:Z=1000,isRetryable:$=()=>!0,fallback:J}=X,H=Error("Unknown error occurred");for(let W=0;W<=Y;W++)try{return await Q()}catch(U){if(H=U instanceof Error?U:Error(String(U)),W===Y||!$(H))break;if(Z>0)await new Promise((A)=>setTimeout(A,Z))}if(J!==void 0)return J;throw H instanceof Error?H:Error(`Unknown error: ${String(H)}`)}function sQ(Q){return Q instanceof L}function nX(Q){return Q instanceof a}function iX(Q){if(sQ(Q))return Q.code==="FILE_SYSTEM_ERROR"||Q.code==="BROWSER_CONFIG_ERROR";return["ENOENT","EACCES","EMFILE","ENFILE","EBUSY","network","timeout","connection"].some((Y)=>Q.message.toLowerCase().includes(Y.toLowerCase()))}var L,a,f,_Q,BQ,e,RQ,IQ,m,jQ,wQ,T,y=O(()=>{L=class extends Error{timestamp;context;constructor(X,Y={}){super(X);if(this.name=this.constructor.name,this.timestamp=new Date,this.context=Y,Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}toJSON(){return{name:this.name,code:this.code,message:this.message,timestamp:this.timestamp.toISOString(),context:this.context,stack:this.stack}}toString(){let X=Object.keys(this.context).length>0?` (${Object.entries(this.context).map(([Y,Z])=>`${Y}: ${Z}`).join(", ")})`:"";return`${this.name} [${this.code}]: ${this.message}${X}`}},a=class extends L{code="CONFIG_NOT_FOUND";constructor(X,Y,Z){let $=Z===void 0?[]:Array.isArray(Z)?Z.filter(Boolean):[Z],J="";if($.length===1)J=` or alias "${$[0]}"`;else if($.length>1)J=` or aliases ${$.map((H)=>`"${H}"`).join(", ")}`;super(`Configuration "${X}"${J} not found`,{configName:X,alias:Z,searchPaths:Y,searchPathCount:Y.length})}},f=class extends L{code="CONFIG_LOAD_ERROR";constructor(X,Y,Z){super(`Failed to load configuration from "${X}": ${Y.message}`,{configPath:X,configName:Z,originalError:Y.name,originalMessage:Y.message});this.cause=Y}},_Q=class extends L{code="CONFIG_VALIDATION_ERROR";constructor(X,Y,Z){super(`Configuration validation failed for "${X}"`,{configPath:X,configName:Z,validationErrors:Y,errorCount:Y.length})}},BQ=class extends L{code="CONFIG_MERGE_ERROR";constructor(X,Y,Z,$){super(`Failed to merge configuration from "${X}" with "${Y}": ${Z.message}`,{sourcePath:X,targetPath:Y,configName:$,originalError:Z.name,originalMessage:Z.message});this.cause=Z}},e=class extends L{code="ENV_VAR_ERROR";constructor(X,Y,Z,$){super(`Failed to parse environment variable "${X}" with value "${Y}" as ${Z}`,{envKey:X,envValue:Y,expectedType:Z,configName:$})}},RQ=class extends L{code="FILE_SYSTEM_ERROR";constructor(X,Y,Z){super(`File system ${X} failed for "${Y}": ${Z.message}`,{operation:X,path:Y,originalError:Z.name,originalMessage:Z.message});this.cause=Z}},IQ=class extends L{code="TYPE_GENERATION_ERROR";constructor(X,Y,Z){super(`Failed to generate types from "${X}" to "${Y}": ${Z.message}`,{configDir:X,outputPath:Y,originalError:Z.name,originalMessage:Z.message});this.cause=Z}},m=class extends L{code="SCHEMA_VALIDATION_ERROR";constructor(X,Y,Z){super(`Schema validation failed${Z?` for config "${Z}"`:""}`,{schemaPath:X,configName:Z,validationErrors:Y,errorCount:Y.length})}},jQ=class extends L{code="BROWSER_CONFIG_ERROR";constructor(X,Y,Z,$){super(`Failed to fetch configuration from "${X}": ${Y} ${Z}`,{endpoint:X,status:Y,statusText:Z,configName:$})}},wQ=class extends L{code="PLUGIN_ERROR";constructor(X,Y,Z){super(`Plugin "${X}" failed during ${Y}: ${Z.message}`,{pluginName:X,operation:Y,originalError:Z.name,originalMessage:Z.message});this.cause=Z}},T={configNotFound(Q,X,Y){return new a(Q,X,Y)},configLoad(Q,X,Y){return new f(Q,X,Y)},configValidation(Q,X,Y){return new _Q(Q,X,Y)},configMerge(Q,X,Y,Z){return new BQ(Q,X,Y,Z)},envVar(Q,X,Y,Z){return new e(Q,X,Y,Z)},fileSystem(Q,X,Y){return new RQ(Q,X,Y)},typeGeneration(Q,X,Y){return new IQ(Q,X,Y)},schemaValidation(Q,X,Y){return new m(Q,X,Y)},browserConfig(Q,X,Y,Z){return new jQ(Q,X,Y,Z)},plugin(Q,X,Y){return new wQ(Q,X,Y)}}});class XQ{defaultParsers;constructor(){this.defaultParsers=[{name:"boolean",canParse:(Q,X)=>X==="boolean"||["true","false","1","0","yes","no"].includes(Q.toLowerCase()),parse:(Q)=>{let X=Q.toLowerCase();return["true","1","yes"].includes(X)}},{name:"number",canParse:(Q,X)=>X==="number"||!Number.isNaN(Number(Q))&&!Number.isNaN(Number.parseFloat(Q)),parse:(Q)=>{let X=Number(Q);if(Number.isNaN(X))throw TypeError(`Cannot parse "${Q}" as number`);return X}},{name:"array",canParse:(Q,X)=>X==="array"||Q.startsWith("[")||Q.includes(","),parse:(Q)=>{try{let X=JSON.parse(Q);if(Array.isArray(X))return X}catch{}return Q.split(",").map((X)=>X.trim())}},{name:"json",canParse:(Q,X)=>X==="object"||(Q.startsWith("{")&&Q.endsWith("}")||Q.startsWith("[")&&Q.endsWith("]")),parse:(Q)=>{try{return JSON.parse(Q)}catch(X){throw Error(`Cannot parse "${Q}" as JSON: ${X}`)}}}]}async applyEnvironmentVariables(Q,X,Y={}){let{prefix:Z,useCamelCase:$=!0,useBackwardCompatibility:J=!0,customParsers:H={},verbose:W=!1,trackPerformance:U=!0}=Y,A=async()=>{if(!Q)return{config:X,source:{type:"environment",priority:50,timestamp:new Date}};let q=Z||this.generateEnvPrefix(Q),G={...X};return this.processObject(G,[],q,{useCamelCase:$,useBackwardCompatibility:J,customParsers:H,verbose:W,configName:Q}),{config:G,source:{type:"environment",priority:50,timestamp:new Date}}};if(U)return p.track("applyEnvironmentVariables",A,{configName:Q});return A()}generateEnvPrefix(Q){return Q.toUpperCase().replace(/-/g,"_")}formatEnvKey(Q,X){if(!X)return Q.toUpperCase();return Q.replace(/([A-Z])/g,"_$1").toUpperCase()}processObject(Q,X,Y,Z){for(let[$,J]of Object.entries(Q)){let H=[...X,$],W=H.map((q)=>this.formatEnvKey(q,Z.useCamelCase)),U=`${Y}_${W.join("_")}`,A=Z.useBackwardCompatibility?`${Y}_${H.map((q)=>q.toUpperCase()).join("_")}`:null;if(Z.verbose);if(typeof J==="object"&&J!==null&&!Array.isArray(J))this.processObject(J,H,Y,Z);else{let q=s.env[U]||(A?s.env[A]:void 0);if(q!==void 0){if(Z.verbose){let G=s.env[U]?U:A}try{Q[$]=this.parseEnvironmentValue(q,typeof J,U,Z.customParsers,Z.configName)}catch(G){if(G instanceof e)throw G;throw T.envVar(U,q,typeof J,Z.configName)}}}}}parseEnvironmentValue(Q,X,Y,Z,$){for(let[J,H]of Object.entries(Z))try{return H(Q)}catch{continue}for(let J of this.defaultParsers)if(J.canParse(Q,X))try{return J.parse(Q)}catch{throw T.envVar(Y,Q,`${X} (via ${J.name} parser)`,$)}return Q}getEnvironmentVariables(Q){let X={},Y=Q.toUpperCase();for(let[Z,$]of Object.entries(s.env))if(Z.startsWith(Y)&&$!==void 0)X[Z]=$;return X}validateEnvironmentVariable(Q,X,Y){let Z=[];if(!/^[A-Z_][A-Z0-9_]*$/.test(Q))Z.push(`Environment variable key "${Q}" should only contain uppercase letters, numbers, and underscores`);if(Y)try{this.parseEnvironmentValue(Q,X,Y,{})}catch($){Z.push(`Cannot parse value "${X}" as ${Y}: ${$}`)}return{isValid:Z.length===0,errors:Z}}generateEnvVarDocs(Q,X,Y={}){let{prefix:Z,format:$="text"}=Y,J=Z||this.generateEnvPrefix(Q),H=[];switch(this.extractEnvVarInfo(X,[],J,H),$){case"markdown":return this.formatAsMarkdown(H,Q);case"json":return JSON.stringify(H,null,2);default:return this.formatAsText(H,Q)}}extractEnvVarInfo(Q,X,Y,Z){for(let[$,J]of Object.entries(Q)){let H=[...X,$],W=`${Y}_${H.map((U)=>this.formatEnvKey(U,!0)).join("_")}`;if(typeof J==="object"&&J!==null&&!Array.isArray(J))this.extractEnvVarInfo(J,H,Y,Z);else Z.push({key:W,type:Array.isArray(J)?"array":typeof J,description:`Configuration for ${H.join(".")}`,example:this.generateExample(J)})}}generateExample(Q){if(Array.isArray(Q))return JSON.stringify(Q);if(typeof Q==="object"&&Q!==null)return JSON.stringify(Q);return String(Q)}formatAsText(Q,X){let Y=`Environment Variables for ${X}:
12
+
13
+ `;for(let Z of Q)Y+=`${Z.key}
14
+ `,Y+=` Type: ${Z.type}
15
+ `,Y+=` Description: ${Z.description}
16
+ `,Y+=` Example: ${Z.example}
17
+
18
+ `;return Y}formatAsMarkdown(Q,X){let Y=`# Environment Variables for ${X}
19
+
20
+ `;Y+=`| Variable | Type | Description | Example |
21
+ `,Y+=`|----------|------|-------------|----------|
22
+ `;for(let Z of Q)Y+=`| \`${Z.key}\` | ${Z.type} | ${Z.description} | \`${Z.example}\` |
23
+ `;return Y}}var oQ=O(()=>{g(),y()});function sX(Q,X){let Y=_X("process");if(typeof Y>"u"||!Y.env)return X;let Z=Y.env[Q];return Z!==void 0?Z:X}function tQ(Q,X,Y={}){return rQ(Q,X,Y,new WeakMap)}function rQ(Q,X,Y,Z){let{arrayMergeMode:$="replace",skipNullish:J=!1,customMerger:H}=Y;if(X===null||X===void 0)return J?Q:X;if(H){let W=H(Q,X);if(W!==void 0)return W}if(Array.isArray(X)||Array.isArray(Q))return aQ(Q,X,$,Z);if(!F(X)||!F(Q))return X;return aX(Q,X,Y,Z)}function aQ(Q,X,Y,Z){if(Array.isArray(X)&&!Array.isArray(Q))return X;if(Array.isArray(Q)&&!Array.isArray(X))return X;if(Array.isArray(X)&&Array.isArray(Q))switch(Y){case"replace":return X;case"concat":return oX(Q,X);case"smart":return tX(Q,X,Z);default:return X}return X}function oX(Q,X){let Y=[...X];for(let Z of Q)if(!Y.some(($)=>KQ($,Z)))Y.push(Z);return Y}function tX(Q,X,Y){if(X.length===0)return Q;if(Q.length===0)return X;if(F(X[0])&&F(Q[0]))return rX(Q,X,Y);if(X.every((Z)=>typeof Z==="string")&&Q.every((Z)=>typeof Z==="string")){let Z=[...X];for(let $ of Q)if(!Z.includes($))Z.push($);return Z}return X}function rX(Q,X,Y){let Z=[...X];for(let $ of Q){if(!F($)){Z.push($);continue}let J=["id","name","key","path","type"],H=!1;for(let W of J)if(W in $){if(Z.find((A)=>F(A)&&(W in A)&&A[W]===$[W])){H=!0;break}}if(!H)Z.push($)}return Z}function aX(Q,X,Y,Z){let $=X;if(F($)&&Z.has($))return Z.get($);let J={...Q};if(F($))Z.set($,J);for(let H in $){if(!Object.prototype.hasOwnProperty.call($,H))continue;let W=$[H],U=J[H];if(Y.skipNullish&&(W===null||W===void 0))continue;if(W===null||W===void 0){J[H]=W;continue}if(F(W)&&F(U))J[H]=rQ(U,W,Y,Z);else if(Array.isArray(W)||Array.isArray(U))J[H]=aQ(U,W,Y.arrayMergeMode||"smart",Z);else J[H]=W}return J}function DQ(Q,X,Y="replace"){return tQ(Q,X,{arrayMergeMode:Y==="replace"?"replace":"smart",skipNullish:!0})}function KQ(Q,X){if(Q===X)return!0;if(Array.isArray(Q)&&Array.isArray(X)){if(Q.length!==X.length)return!1;for(let Y=0;Y<Q.length;Y++)if(!KQ(Q[Y],X[Y]))return!1;return!0}if(F(Q)&&F(X)){let Y=Object.keys(Q),Z=Object.keys(X);if(Y.length!==Z.length)return!1;for(let $ of Y){if(!Object.prototype.hasOwnProperty.call(X,$))return!1;if(!KQ(Q[$],X[$]))return!1}return!0}return!1}function F(Q){return Boolean(Q&&typeof Q==="object"&&!Array.isArray(Q))}var eQ,VQ=O(()=>{eQ={replace:"replace",concat:"concat",smart:"smart"}});class YQ{extensions=[".ts",".js",".mjs",".cjs",".json",".mts",".cts"];async loadFromPath(Q,X,Y={}){let{arrayStrategy:Z="replace",useCache:$=!0,cacheTtl:J,trackPerformance:H=!0,verbose:W=!1}=Y;if($){let A=b.getWithFileCheck("file",Q);if(A){if(W)console.log(`Configuration loaded from cache: ${Q}`);return A}}let U=async()=>{if(!o(Q))return null;try{let A=`?t=${Date.now()}`,q=await import(Q+A),G=q.default||q,z="default"in q,_=Object.keys(q).length>0;if(!z&&!_)throw new f(Q,Error("Configuration file is empty and exports nothing"),"unknown");if(typeof G!=="object"||G===null||Array.isArray(G))throw new f(Q,Error("Configuration must export a valid object"),"unknown");let $Q={config:DQ(X,G,Z),source:{type:"file",path:Q,priority:100,timestamp:new Date}};if($)b.setWithFileCheck("file",$Q,Q,J);return $Q}catch(A){throw A instanceof Error?T.configLoad(Q,A):T.configLoad(Q,Error(String(A)))}};if(H)return p.track("loadFromPath",U,{path:Q});return U()}async tryLoadFromPaths(Q,X,Y={}){for(let Z of Q)try{let $=await this.loadFromPath(Z,X,Y);if($)return $}catch($){if($ instanceof Error&&$.name==="ConfigLoadError")throw $;if(Y.verbose)console.warn(`Failed to load config from ${Z}:`,$)}return null}generateConfigPaths(Q,X,Y){let Z=this.generateNamePatterns(Q,Y),$=[];for(let J of Z)for(let H of this.extensions)$.push(GQ(X,`${J}${H}`));return $}generateNamePatterns(Q,X){let Y=[];if(Y.push("config",".config"),Q)Y.push(Q,`.${Q}.config`,`${Q}.config`,`.${Q}`);let Z=X===void 0?[]:Array.isArray(X)?X:[X];for(let J of Z){if(!J)continue;if(Y.push(J,`.${J}.config`,`${J}.config`,`.${J}`),Q)Y.push(`${Q}.${J}.config`,`.${Q}.${J}.config`)}let $=new Set;return Y.filter((J)=>{if(!J||$.has(J))return!1;return $.add(J),!0})}checkFileAccess(Q){return iQ(async()=>{return o(Q)},{maxRetries:2,retryDelay:100,fallback:!1})}async discoverConfigFiles(Q,X,Y){let Z=[];if(!o(Q))return Z;if(X||Y){let $=this.generateNamePatterns(X||"",Y);for(let J of $)for(let H of this.extensions){let W=GQ(Q,`${J}${H}`);if(await this.checkFileAccess(W))Z.push(W)}}else try{let{readdirSync:$}=await import("fs"),J=$(Q);for(let H of J)if(this.looksLikeConfigFile(H)){let W=GQ(Q,H);if(await this.checkFileAccess(W))Z.push(W)}}catch{return[]}return Z}looksLikeConfigFile(Q){return[/\.config\.(ts|js|mjs|cjs|json|mts|cts)$/,/^\..*\.(ts|js|mjs|cjs|json|mts|cts)$/,/config\.(ts|js|mjs|cjs|json|mts|cts)$/].some((Y)=>Y.test(Q))}async validateConfigFile(Q){let X=[];try{if(!o(Q))return X.push("Configuration file does not exist"),X;let Y=await import(Q),Z=Y.default||Y;if(Z===void 0)X.push("Configuration file must export a default value or named exports");else if(typeof Z!=="object"||Z===null)X.push("Configuration must be an object");else if(Array.isArray(Z))X.push("Configuration cannot be an array at the root level");if(Q.endsWith(".json"))try{let{readFileSync:$}=await import("fs"),J=$(Q,"utf8");JSON.parse(J)}catch($){X.push(`Invalid JSON syntax: ${$}`)}}catch(Y){X.push(`Failed to load configuration file: ${Y}`)}return X}async getFileModificationTime(Q){try{let{statSync:X}=await import("fs");return X(Q).mtime}catch{return null}}async preloadConfigurations(Q,X={}){let Y=new Map;return await Promise.allSettled(Q.map(async(Z)=>{try{let $=await this.loadFromPath(Z,{},X);if($)Y.set(Z,$.config)}catch($){if(X.verbose)console.warn(`Failed to preload ${Z}:`,$)}})),Y}}var QX=O(()=>{g(),y(),VQ()});class SQ{async validateConfiguration(Q,X,Y={}){let{stopOnFirstError:Z=!1,validateRequired:$=!0,validateTypes:J=!0,customRules:H=[],trackPerformance:W=!0,verbose:U=!1}=Y,A=async()=>{let q=[],G=[],z={stopOnFirstError:Z,validateRequired:$,validateTypes:J,customRules:H,trackPerformance:W,verbose:U};try{if(typeof X==="string")return await this.validateWithSchemaFile(Q,X,z);else if(Array.isArray(X))return this.validateWithRules(Q,[...X,...H],z);else return this.validateWithJSONSchema(Q,X,z)}catch(_){return q.push({path:"",message:`Validation failed: ${_}`,rule:"system"}),{isValid:!1,errors:q,warnings:G}}};if(W)return await p.track("validateConfiguration",A);return A()}async validateWithSchemaFile(Q,X,Y){try{if(!eX(X))throw new m(X,[{path:"",message:"Schema file does not exist"}]);let Z=await import(X),$=Z.default||Z;if(Array.isArray($))return this.validateWithRules(Q,$,Y);else return this.validateWithJSONSchema(Q,$,Y)}catch(Z){throw new m(X,[{path:"",message:`Failed to load schema: ${Z}`}])}}validateWithJSONSchema(Q,X,Y){let Z=[],$=[];return this.validateObjectAgainstSchema(Q,X,"",Z,$,Y),{isValid:Z.length===0,errors:Z,warnings:$}}validateObjectAgainstSchema(Q,X,Y,Z,$,J){if(J.validateTypes&&X.type){let H=Array.isArray(Q)?"array":typeof Q,W=Array.isArray(X.type)?X.type:[X.type];if(!W.includes(H)){if(Z.push({path:Y,message:`Expected type ${W.join(" or ")}, got ${H}`,expected:W.join(" or "),actual:H,rule:"type"}),J.stopOnFirstError)return}}if(X.enum&&!X.enum.includes(Q)){if(Z.push({path:Y,message:`Value must be one of: ${X.enum.join(", ")}`,expected:X.enum.join(", "),actual:Q,rule:"enum"}),J.stopOnFirstError)return}if(typeof Q==="string"){if(X.minLength!==void 0&&Q.length<X.minLength)Z.push({path:Y,message:`String length must be at least ${X.minLength}`,expected:`>= ${X.minLength}`,actual:Q.length,rule:"minLength"});if(X.maxLength!==void 0&&Q.length>X.maxLength)Z.push({path:Y,message:`String length must not exceed ${X.maxLength}`,expected:`<= ${X.maxLength}`,actual:Q.length,rule:"maxLength"});if(X.pattern){if(!new RegExp(X.pattern).test(Q))Z.push({path:Y,message:`String does not match pattern ${X.pattern}`,expected:X.pattern,actual:Q,rule:"pattern"})}}if(typeof Q==="number"){if(X.minimum!==void 0&&Q<X.minimum)Z.push({path:Y,message:`Value must be at least ${X.minimum}`,expected:`>= ${X.minimum}`,actual:Q,rule:"minimum"});if(X.maximum!==void 0&&Q>X.maximum)Z.push({path:Y,message:`Value must not exceed ${X.maximum}`,expected:`<= ${X.maximum}`,actual:Q,rule:"maximum"})}if(Array.isArray(Q)&&X.items)for(let H=0;H<Q.length;H++){let W=Y?`${Y}[${H}]`:`[${H}]`;if(this.validateObjectAgainstSchema(Q[H],X.items,W,Z,$,J),J.stopOnFirstError&&Z.length>0)return}if(Q&&typeof Q==="object"&&!Array.isArray(Q)){let H=Q;if(J.validateRequired&&X.required){for(let W of X.required)if(!(W in H)){if(Z.push({path:Y?`${Y}.${W}`:W,message:`Missing required property '${W}'`,expected:"required",rule:"required"}),J.stopOnFirstError)return}}if(X.properties){for(let[W,U]of Object.entries(X.properties))if(W in H){let A=Y?`${Y}.${W}`:W;if(this.validateObjectAgainstSchema(H[W],U,A,Z,$,J),J.stopOnFirstError&&Z.length>0)return}}if(X.additionalProperties===!1){let W=new Set(Object.keys(X.properties||{}));for(let U of Object.keys(H))if(!W.has(U))$.push({path:Y?`${Y}.${U}`:U,message:`Additional property '${U}' is not allowed`,rule:"additionalProperties"})}}}validateWithRules(Q,X,Y){let Z=[],$=[];for(let J of X)try{let H=this.getValueByPath(Q,J.path),W=this.validateWithRule(H,J,J.path);if(Z.push(...W),Y.stopOnFirstError&&Z.length>0)break}catch(H){Z.push({path:J.path,message:`Rule validation failed: ${H}`,rule:"system"})}return{isValid:Z.length===0,errors:Z,warnings:$}}validateWithRule(Q,X,Y){let Z=[];if(X.required&&(Q===void 0||Q===null))return Z.push({path:Y,message:X.message||`Property '${Y}' is required`,expected:"required",rule:"required"}),Z;if(Q===void 0||Q===null)return Z;if(X.type){let $=Array.isArray(Q)?"array":typeof Q;if($!==X.type)Z.push({path:Y,message:X.message||`Expected type ${X.type}, got ${$}`,expected:X.type,actual:$,rule:"type"})}if(X.min!==void 0){let $=Array.isArray(Q)?Q.length:typeof Q==="string"?Q.length:typeof Q==="number"?Q:0;if($<X.min)Z.push({path:Y,message:X.message||`Value must be at least ${X.min}`,expected:`>= ${X.min}`,actual:$,rule:"min"})}if(X.max!==void 0){let $=Array.isArray(Q)?Q.length:typeof Q==="string"?Q.length:typeof Q==="number"?Q:0;if($>X.max)Z.push({path:Y,message:X.message||`Value must not exceed ${X.max}`,expected:`<= ${X.max}`,actual:$,rule:"max"})}if(X.pattern&&typeof Q==="string"){if(!X.pattern.test(Q))Z.push({path:Y,message:X.message||`Value does not match pattern ${X.pattern}`,expected:X.pattern.toString(),actual:Q,rule:"pattern"})}if(X.enum&&!X.enum.includes(Q))Z.push({path:Y,message:X.message||`Value must be one of: ${X.enum.join(", ")}`,expected:X.enum.join(", "),actual:Q,rule:"enum"});if(X.validator){let $=X.validator(Q);if($)Z.push({path:Y,message:X.message||$,rule:"custom"})}return Z}getValueByPath(Q,X){if(!X)return Q;let Y=X.split("."),Z=Q;for(let $ of Y)if(Z&&typeof Z==="object"&&$ in Z)Z=Z[$];else return;return Z}generateRulesFromInterface(Q){let X=[],Y=Q.matchAll(/(\w+)(\?)?:\s*(\w+)/g);for(let Z of Y){let[,$,J,H]=Z;X.push({path:$,required:!J,type:this.mapTypeScriptType(H)})}return X}mapTypeScriptType(Q){switch(Q.toLowerCase()){case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"array":return"array";case"object":return"object";default:return"object"}}static createCommonRules(){return{server:[{path:"port",required:!0,type:"number",min:1,max:65535},{path:"host",required:!0,type:"string",min:1},{path:"ssl",type:"boolean"}],database:[{path:"url",required:!0,type:"string",min:1},{path:"pool",type:"number",min:1,max:100},{path:"timeout",type:"number",min:0}],api:[{path:"baseUrl",required:!0,type:"string",pattern:XX},{path:"timeout",type:"number",min:0},{path:"retries",type:"number",min:0,max:10}]}}}var XX,YX=O(()=>{g(),y(),XX=/^https?:\/\//});function $Y(Q){if(!Q)return"";let X=Array.isArray(Q)?Q.filter(Boolean):[Q];if(X.length===0)return"";if(X.length===1)return` or alias "${X[0]}"`;return` or aliases ${X.map((Y)=>`"${Y}"`).join(", ")}`}class EQ{fileLoader=new YQ;envProcessor=new XQ;validator=new SQ;async loadConfig(Q){let X=Date.now(),{cache:Y,performance:Z,schema:$,validate:J,...H}=Q;try{if(Y?.enabled){let U=this.checkCache(H.name||"",H);if(U)return U}let W;try{W=await this.loadConfigurationStrategies(H,!0,Y)}catch(U){let A=H.__strictErrorHandling;if(U instanceof Error&&U.name==="ConfigNotFoundError"){if(A)throw U;W={...await this.applyEnvironmentVariables(H.name||"",H.defaultConfig,H.checkEnv!==!1,H.verbose||!1),warnings:[`No configuration file found for "${H.name||"config"}", using defaults with environment variables`]}}else if(U instanceof Error&&U.name==="ConfigLoadError"){let q=U.message.includes("EACCES")||U.message.includes("EPERM")||U.message.includes("permission denied"),G=!q&&(U.message.includes("syntax")||U.message.includes("Expected")||U.message.includes("Unexpected")||U.message.includes("BuildMessage")||U.message.includes("errors building")),z=U.message.includes("Configuration must export a valid object")||U.message.includes("Configuration file is empty and exports nothing");if(A&&(z||q))throw U;if(G&&(!A||!z))W={...await this.applyEnvironmentVariables(H.name||"",H.defaultConfig,H.checkEnv!==!1,H.verbose||!1),warnings:["Configuration file has syntax errors, using defaults with environment variables"]};else if(!A)W={...await this.applyEnvironmentVariables(H.name||"",H.defaultConfig,H.checkEnv!==!1,H.verbose||!1),warnings:[`Configuration loading error, using defaults: ${U.message}`]};else throw U}else W={...await this.applyEnvironmentVariables(H.name||"",H.defaultConfig,H.checkEnv!==!1,H.verbose||!1),warnings:[`Configuration loading failed, using defaults: ${U instanceof Error?U.message:String(U)}`]}}if($||J)await this.validateConfiguration(W.config,$,J,H.name);if(Y?.enabled&&W)this.cacheResult(H.name||"",W,Y,H);if(Z?.enabled){let U={operation:"loadConfig",duration:Date.now()-X,configName:H.name,timestamp:new Date};if(Z.onMetrics)Z.onMetrics(U);if(Z.slowThreshold&&U.duration>Z.slowThreshold)M.warn(`Slow configuration loading detected: ${U.duration}ms for ${H.name}`);W.metrics=U}return W}catch(W){let U=Date.now()-X;throw M.error(`Configuration loading failed after ${U}ms:`,[W instanceof Error?W:Error(String(W))]),W}}async loadConfigurationStrategies(Q,X=!1,Y){let{name:Z="",alias:$,cwd:J,configDir:H,defaultConfig:W,checkEnv:U=!0,arrayStrategy:A="replace",verbose:q=!1}=Q,G=J||N.cwd(),z=[],_=await this.loadLocalConfiguration(Z,$,G,H,W,A,q,U,Y);if(_)return z.push(...this.getLocalSearchPaths(Z,$,G,H)),this.finalizeResult(_,z,U,Z,q);let D=await this.loadHomeConfiguration(Z,$,W,A,q,U);if(D)return z.push(...this.getHomeSearchPaths(Z,$)),this.finalizeResult(D,z,U,Z,q);let I=await this.loadPackageJsonConfiguration(Z,$,G,W,A,q,U);if(I)return z.push(K(G,"package.json")),this.finalizeResult(I,z,U,Z,q);if(z.push(...this.getAllSearchPaths(Z,$,G,H)),X)throw T.configNotFound(Z,z,$);return{...await this.applyEnvironmentVariables(Z,W,U,q),warnings:[`No configuration file found for "${Z}"${$Y($)}, using defaults with environment variables`]}}async loadLocalConfiguration(Q,X,Y,Z,$,J,H,W,U){let A=W?v(Q,$,H):$,q=this.getLocalDirectories(Y,Z);for(let G of q){if(H)M.info(`Searching for configuration in: ${G}`);let z=this.fileLoader.generateConfigPaths(Q,G,X),_=await this.fileLoader.tryLoadFromPaths(z,A,{arrayStrategy:J,verbose:H,cacheTtl:U?.ttl,useCache:!U?.ttl||U.ttl>100});if(_){if(H)M.success(`Configuration loaded from: ${_.source.path}`);return _}}return null}async loadHomeConfiguration(Q,X,Y,Z,$,J){if(!Q)return null;let H=J?v(Q,Y,$):Y,W=[K(P(),".config",Q),K(P(),".config"),P()];for(let U of W){if($)M.info(`Checking home directory: ${U}`);let A=this.fileLoader.generateConfigPaths(Q,U,X),q=await this.fileLoader.tryLoadFromPaths(A,H,{arrayStrategy:Z,verbose:$});if(q){if($)M.success(`Configuration loaded from home directory: ${q.source.path}`);return q}}return null}async loadPackageJsonConfiguration(Q,X,Y,Z,$,J,H){let W=H?v(Q,Z,J):Z;try{let U=K(Y,"package.json");if(!LQ(U))return null;let A={};try{A=JSON.parse(YY(U,"utf8"))}catch(z){if(J)M.warn("Failed to parse package.json:",[z instanceof Error?z:Error(String(z))]);return null}let q=A[Q],G=Q;if(!q&&X){let z=Array.isArray(X)?X:[X];for(let _ of z){if(!_)continue;if(A[_]){q=A[_],G=_;break}}}if(q&&typeof q==="object"&&!Array.isArray(q)){if(J)M.success(`Configuration loaded from package.json: ${G}`);return{config:DQ(W,q,$),source:{type:"package.json",path:U,priority:30,timestamp:new Date}}}}catch(U){if(J)M.warn("Failed to load package.json:",[U instanceof Error?U:Error(String(U))])}return null}async applyEnvironmentVariables(Q,X,Y,Z){if(!Y||!Q||typeof X!=="object"||X===null||Array.isArray(X))return{config:X,source:{type:"default",priority:10,timestamp:new Date}};return{config:v(Q,X,Z),source:{type:"environment",priority:20,timestamp:new Date}}}async finalizeResult(Q,X,Y,Z,$){return{config:Q.config,source:Q.source,path:Q.source.path}}async validateConfiguration(Q,X,Y,Z){let $=[];if(Y){let J=Y(Q);if(J)$.push(...J)}if(X){let J=await this.validator.validateConfiguration(Q,X);if(!J.isValid)$.push(...J.errors.map((H)=>H.path?`${H.path}: ${H.message}`:H.message))}if($.length>0)throw T.configValidation(Z||"unknown",$,Z)}checkCache(Q,X){let Y=this.generateCacheKey(Q,X);return b.get(Y)||null}cacheResult(Q,X,Y,Z){let $=this.generateCacheKey(Q,Z);b.set($,X,void 0,Y.ttl)}generateCacheKey(Q,X){let Y=[Q];if(X.alias){let Z=Array.isArray(X.alias)?X.alias.join(","):X.alias;Y.push(`alias:${Z}`)}if(X.cwd)Y.push(`cwd:${X.cwd}`);if(X.configDir)Y.push(`configDir:${X.configDir}`);if("checkEnv"in X)Y.push(`checkEnv:${X.checkEnv}`);return Y.join("|")}getLocalDirectories(Q,X){return Array.from(new Set([Q,K(Q,"config"),K(Q,".config"),X?K(Q,X):void 0].filter(Boolean)))}getAllSearchPaths(Q,X,Y,Z){let $=[];return $.push(...this.getLocalSearchPaths(Q,X,Y,Z)),$.push(...this.getHomeSearchPaths(Q,X)),$.push(K(Y,"package.json")),$}getLocalSearchPaths(Q,X,Y,Z){let $=this.getLocalDirectories(Y,Z),J=[];for(let H of $)J.push(...this.fileLoader.generateConfigPaths(Q,H,X));return J}getHomeSearchPaths(Q,X){if(!Q)return[];let Y=[K(P(),".config",Q),K(P(),".config"),P()],Z=[];for(let $ of Y)Z.push(...this.fileLoader.generateConfigPaths(Q,$,X));return Z}async loadConfigWithResult(Q){return this.loadConfig(Q)}}function gQ(Q){let Y=!(Q.message.includes("EACCES")||Q.message.includes("EPERM")||Q.message.includes("permission denied"))&&(Q.message.includes("syntax")||Q.message.includes("Expected")||Q.message.includes("Unexpected")||Q.message.includes("BuildMessage")),Z=Q.message.includes("Configuration must export a valid object")||Q.message.includes("Configuration file is empty and exports nothing");return Y||Z}async function JY(Q){return E.loadConfig({...Q,__strictErrorHandling:!0})}async function ZQ(Q){let X="defaultConfig"in Q&&Q.defaultConfig!==void 0?Q.defaultConfig:{},Y="cache"in Q||"performance"in Q||"schema"in Q||"validate"in Q;try{let Z;if(Y)Z=await E.loadConfig(Q);else Z=await E.loadConfig({...Q,defaultConfig:X,cache:{enabled:!0},performance:{enabled:!1}});return Z?.config??X}catch(Z){let $=Z instanceof Error?Z.name:"UnknownError",J=Z instanceof Error?Z.message:String(Z);if(!($==="ConfigNotFoundError"||$==="ConfigLoadError"||$==="ConfigValidationError"||J.includes("config"))&&Q.verbose)M.warn("Unexpected error loading config, using defaults:",[Z instanceof Error?Z:Error(String(Z))]);let W=Y?{...Q,defaultConfig:X}:{...Q,defaultConfig:X,cache:{enabled:!0},performance:{enabled:!1}};if("checkEnv"in Q?Q.checkEnv!==!1:!0)return(await E.applyEnvironmentVariables(W.name||"",X,!0,W.verbose||!1))?.config??X;return X}}async function HY(Q={defaultConfig:{}}){if(typeof Q==="string"){let{cwd:X}=await import("process");try{return(await E.loadConfig({name:Q,cwd:X(),generatedDir:"./generated",configDir:"./config",defaultConfig:{},checkEnv:!0,arrayStrategy:"replace"})).config}catch(Y){if(Y instanceof Error&&(Y.name==="ConfigNotFoundError"||Y.name==="ConfigLoadError"&&gQ(Y)))return(await E.applyEnvironmentVariables(Q,{},!0,!1)).config;throw Y}}try{return(await E.loadConfig({...Q,cwd:Q.cwd||N.cwd(),cache:{enabled:!0},performance:{enabled:!1}})).config}catch(X){if(X instanceof Error&&(X.name==="ConfigNotFoundError"||X.name==="ConfigLoadError"&&gQ(X)))return(await E.applyEnvironmentVariables(Q.name||"",Q.defaultConfig||{},Q.checkEnv!==!1,Q.verbose||!1)).config;throw X}}async function UY(Q,X,Y="replace"){let Z=new YQ;try{let $=await Z.loadFromPath(Q,X,{arrayStrategy:Y,useCache:!1,trackPerformance:!1});return $?$.config:null}catch{return null}}function v(Q,X,Y=!1){let Z=new XQ,$=Q.toUpperCase().replace(/[^A-Z0-9]/g,"_");function J(H,W=[]){let U={...H};for(let[A,q]of Object.entries(H)){let G=[...W,A],z=[`${$}_${G.join("_").toUpperCase()}`,`${$}_${G.map((I)=>I.toUpperCase()).join("")}`,`${$}_${G.map((I)=>I.replace(/([A-Z])/g,"_$1").toUpperCase()).join("")}`],_,D;for(let I of z)if(_=N.env[I],_!==void 0){D=I;break}if(_!==void 0&&D)if(typeof q==="boolean")U[A]=["true","1","yes"].includes(_.toLowerCase());else if(typeof q==="number"){let I=Number(_);if(!Number.isNaN(I))U[A]=I}else if(Array.isArray(q))try{U[A]=JSON.parse(_)}catch{U[A]=_.split(",").map((I)=>I.trim())}else U[A]=_;else if(q&&typeof q==="object"&&!Array.isArray(q))U[A]=J(q,G)}return U}return J(X)}function WY(Q){let X=K(N.cwd(),Q.configDir),Y=K(N.cwd(),Q.generatedDir),Z=K(Y,"config-types.ts");if(!LQ(pQ(Z)))QY(pQ(Z),{recursive:!0,mode:511});let $=LQ(X)?XY(X).map((H)=>H.replace(/\.(ts|js|mjs|cjs|mts|cts|json)$/,"")).sort():[],J=`// Generated by bunfig v${cX}
24
+ export type ConfigNames = ${$.length?`'${$.join("' | '")}'`:"string"}
25
+ `;ZY(Z,J,{mode:438})}function AY(Q){let X=null,Y=null,Z=()=>{if(!Y)Y=ZQ(Q).then((J)=>{return X=J,J},(J)=>{let H="defaultConfig"in Q?Q.defaultConfig:{};if(X=H,"verbose"in Q&&Q.verbose)M.warn("Config loading failed, using defaults:",[J instanceof Error?J:Error(String(J))]);return H});return Y},$="defaultConfig"in Q?Q.defaultConfig:{};return X=$,Z(),new Proxy({},{get(J,H){if(X)return X[H];let W=$[H];return Z(),W},has(J,H){return H in(X||$)},ownKeys(){return Object.keys(X||$)},getOwnPropertyDescriptor(J,H){return Object.getOwnPropertyDescriptor(X||$,H)},set(J,H,W){if(!X)X={...$};return X[H]=W,!0}})}var M,E,ZX,$X,qY=O(()=>{uX(),lX(),g(),y(),oQ(),QX(),YX(),VQ(),M=new QQ("bunfig",{showTags:!0}),E=new EQ,ZX=K(N.cwd(),"config"),$X=K(N.cwd(),"src/generated")});function BY(Q){let X=uQ(_Y.cwd(),Q?.configDir||"./config");function Y(){if(!GY(X))return[];let $=new Set([".ts",".js",".mjs",".cjs",".mts",".cts",".json"]),J=[".ts",".mts",".cts",".js",".mjs",".cjs",".json"],H=zY(X).filter((U)=>$.has(zQ(U))).map((U)=>({base:U.replace(/\.(?:ts|js|mjs|cjs|mts|cts|json)$/i,""),file:U})),W=new Map;for(let{base:U,file:A}of H){let q=zQ(A).toLowerCase(),G=W.get(U);if(!G){W.set(U,A);continue}let z=zQ(G).toLowerCase();if(J.indexOf(q)<J.indexOf(z))W.set(U,A)}return Array.from(W.entries()).map(([U,A])=>({base:U,file:A})).sort((U,A)=>U.base.localeCompare(A.base))}function Z(){let $=Y(),J=$.map((A)=>A.base),H=J.length?J.map((A)=>`'${A}'`).join(" | "):"string",W=$.length?`{
26
+ ${$.map((A)=>{let q=uQ(X,A.file).replace(/\\/g,"/");return` '${A.base}': typeof import('${q}').default`}).join(`,
27
+ `)}
28
+ }`:"Record<string, any>";return`export type ConfigNames = ${H}
29
+ export type ConfigByName = ${W}
30
+ export type Config<N extends ConfigNames> = N extends keyof ConfigByName ? ConfigByName[N] : unknown
31
+ export type ConfigOf = Config
32
+ `}return{name:"bunfig-plugin",setup($){$.onResolve({filter:/^virtual:bunfig-types$/},(J)=>{return{path:J.path,namespace:"bunfig-virtual"}}),$.onLoad({filter:/^virtual:bunfig-types$/,namespace:"bunfig-virtual"},()=>{return{contents:Z(),loader:"ts"}})}}}var RY=()=>{},JX={};zX(JX,{withErrorRecovery:()=>iQ,tryLoadConfig:()=>UY,loadConfigWithResult:()=>JY,loadConfig:()=>ZQ,isRetryableError:()=>iX,isConfigNotFoundError:()=>nX,isBunfigError:()=>sQ,globalPerformanceMonitor:()=>p,globalCache:()=>b,getEnvOrDefault:()=>sX,generateConfigTypes:()=>WY,defaultGeneratedDir:()=>$X,defaultConfigDir:()=>ZX,deepMergeWithArrayStrategy:()=>DQ,deepMerge:()=>tQ,createLibraryConfig:()=>AY,config:()=>HY,bunfigPlugin:()=>BY,applyEnvVarsToConfig:()=>v,TypeGenerationError:()=>IQ,SchemaValidationError:()=>m,PluginError:()=>wQ,PerformanceMonitor:()=>FQ,FileSystemError:()=>RQ,ErrorFactory:()=>T,EnvVarError:()=>e,EnvProcessor:()=>XQ,ConfigValidator:()=>SQ,ConfigValidationError:()=>_Q,ConfigNotFoundError:()=>a,ConfigMergeError:()=>BQ,ConfigLoader:()=>EQ,ConfigLoadError:()=>f,ConfigFileLoader:()=>YQ,ConfigCache:()=>MQ,CacheUtils:()=>cQ,BunfigError:()=>L,BrowserConfigError:()=>jQ,ArrayMergeStrategies:()=>eQ});var HX=O(()=>{qY(),y(),g(),y(),RY(),oQ(),QX(),YX(),VQ()});HX();var c={cwd:WX.cwd(),root:"./src",entrypoints:["**/*.ts"],outdir:"./dist",keepComments:!0,clean:!0,tsconfigPath:"./tsconfig.json",outputStructure:"mirror",verbose:!1,importOrder:["bun"],declarationMap:!1},KY=["dtsx.config.ts","dtsx.config.js","dtsx.config.mjs","dtsx.config.mts","dts.config.ts","dts.config.js"];async function LY(Q=WX.cwd()){for(let X of KY){let Y=jY(Q,X);if(IY(Y))try{let $=await import(wY(Y).href),J=$.default||$.config||$,H=typeof J==="function"?await J():J;return{...c,...H,cwd:Q}}catch(Z){let $=Z instanceof Error?Z.message:String(Z);UX.warn(`Failed to load config from ${X}: ${$}`)}}return null}var u=null;async function aY(Q){if(!u){let X=await LY(Q);if(X)u=X;else u=await ZQ({name:"dts",defaultConfig:c})}return u}function eY(){u=null}function QZ(Q){return{...c,...Q}}function XZ(Q){return async()=>{let X=await Q();return{...c,...X}}}var YZ=c;
33
+ export{c as Pc,aY as Qc,eY as Rc,QZ as Sc,XZ as Tc,YZ as Uc};
@@ -0,0 +1,2 @@
1
+ // @bun
2
+ import{oc as a}from"./chunk-2r21f44d.js";import"./chunk-mcdb3q06.js";export{a as scanDeclarations};
@@ -0,0 +1,2 @@
1
+ // @bun
2
+ import{d as a,e as b,f as c,g as d,h as e,i as f,j as g,k as h}from"./chunk-f4c389mj.js";import"./chunk-y581wnfe.js";import"./chunk-2n1bbm2c.js";import"./chunk-8z31rkfp.js";import"./chunk-2r21f44d.js";import"./chunk-285mqzvx.js";import"./chunk-gssantc8.js";import"./chunk-mcdb3q06.js";export{a as parseJSDoc,f as generateTypeDocJSON,c as generateMarkdown,e as generateJSON,d as generateHTML,g as generateDocs,b as extractDocumentation,h as createDocsGenerator};
@@ -1,3 +1,3 @@
1
1
  // @bun
2
- import{tb as I}from"./chunk-jfk0hw36.js";class H{options;generateOptions;constructor(j={}){let{onCompile:F=!1,afterEmit:w=!0,onWatchRun:q=!1,onGenerated:z,onError:B,...J}=j;this.options={onCompile:F,afterEmit:w,onWatchRun:q,onGenerated:z,onError:B},this.generateOptions=J}apply(j){if(!this.generateOptions.outdir&&j.options.output?.path)this.generateOptions.outdir=j.options.output.path;if(!this.generateOptions.cwd&&j.options.context)this.generateOptions.cwd=j.options.context;if(!this.generateOptions.entrypoints&&j.options.entry){let w=j.options.entry;if(typeof w==="string")this.generateOptions.entrypoints=[w];else if(Array.isArray(w))this.generateOptions.entrypoints=w;else if(typeof w==="object"&&w!==null){let q=[];for(let z of Object.values(w))if(typeof z==="string")q.push(z);else if(Array.isArray(z))q.push(...z.filter((B)=>typeof B==="string"));else if(typeof z==="object"&&z!==null&&"import"in z){let B=z.import;if(typeof B==="string")q.push(B);else if(Array.isArray(B))q.push(...B)}if(q.length>0)this.generateOptions.entrypoints=q}}if(this.options.onCompile)j.hooks.compile.tap("DtsxWebpackPlugin",()=>{this.runGenerate()});if(this.options.afterEmit)j.hooks.afterEmit.tapAsync("DtsxWebpackPlugin",async(w,q)=>{await this.runGenerate(),q()});if(this.options.onWatchRun)j.hooks.watchRun.tapAsync("DtsxWebpackPlugin",async(w,q)=>{await this.runGenerate(),q()})}async runGenerate(){try{let j=await I(this.generateOptions);this.options.onGenerated?.(j)}catch(j){let F=j instanceof Error?j:Error(String(j));if(this.options.onError?.(F),!this.options.onError)console.error("[dtsx] Generation failed:",F.message)}}}function K(j={}){return new H(j)}var M=K,Q=H;
2
+ import{tb as I}from"./chunk-14gh6ezz.js";class H{options;generateOptions;constructor(j={}){let{onCompile:F=!1,afterEmit:w=!0,onWatchRun:q=!1,onGenerated:z,onError:B,...J}=j;this.options={onCompile:F,afterEmit:w,onWatchRun:q,onGenerated:z,onError:B},this.generateOptions=J}apply(j){if(!this.generateOptions.outdir&&j.options.output?.path)this.generateOptions.outdir=j.options.output.path;if(!this.generateOptions.cwd&&j.options.context)this.generateOptions.cwd=j.options.context;if(!this.generateOptions.entrypoints&&j.options.entry){let w=j.options.entry;if(typeof w==="string")this.generateOptions.entrypoints=[w];else if(Array.isArray(w))this.generateOptions.entrypoints=w;else if(typeof w==="object"&&w!==null){let q=[];for(let z of Object.values(w))if(typeof z==="string")q.push(z);else if(Array.isArray(z))q.push(...z.filter((B)=>typeof B==="string"));else if(typeof z==="object"&&z!==null&&"import"in z){let B=z.import;if(typeof B==="string")q.push(B);else if(Array.isArray(B))q.push(...B)}if(q.length>0)this.generateOptions.entrypoints=q}}if(this.options.onCompile)j.hooks.compile.tap("DtsxWebpackPlugin",()=>{this.runGenerate()});if(this.options.afterEmit)j.hooks.afterEmit.tapAsync("DtsxWebpackPlugin",async(w,q)=>{await this.runGenerate(),q()});if(this.options.onWatchRun)j.hooks.watchRun.tapAsync("DtsxWebpackPlugin",async(w,q)=>{await this.runGenerate(),q()})}async runGenerate(){try{let j=await I(this.generateOptions);this.options.onGenerated?.(j)}catch(j){let F=j instanceof Error?j:Error(String(j));if(this.options.onError?.(F),!this.options.onError)console.error("[dtsx] Generation failed:",F.message)}}}function K(j={}){return new H(j)}var M=K,Q=H;
3
3
  export{H as qa,K as ra,M as sa,Q as ta};
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{ec as K}from"./chunk-b0bkjk0p.js";import{Vc as _}from"./chunk-57agx6g8.js";import{existsSync as j,mkdirSync as w,readFileSync as b,writeFileSync as V}from"fs";import{basename as H,join as R}from"path";function N(q){let z={description:"",params:[],examples:[],tags:{},see:[],throws:[]};if(!q||q.length===0)return z;for(let A of q){let G=A.replace(/^\/\*\*/,"").replace(/\*\/$/,"").split(`
2
+ import{ec as K}from"./chunk-y581wnfe.js";import{Wc as _}from"./chunk-gssantc8.js";import{existsSync as j,mkdirSync as w,readFileSync as b,writeFileSync as V}from"fs";import{basename as H,join as R}from"path";function N(q){let z={description:"",params:[],examples:[],tags:{},see:[],throws:[]};if(!q||q.length===0)return z;for(let A of q){let G=A.replace(/^\/\*\*/,"").replace(/\*\/$/,"").split(`
3
3
  `).map((X)=>X.replace(/^\s*\*\s?/,"")).join(`
4
4
  `).trim(),Q=G.search(/@\w+/);if(Q===-1){z.description=G;continue}else if(Q>0)z.description=G.slice(0,Q).trim(),G=G.slice(Q);let U=/@(\w+)(?:\s+\{([^}]+)\})?\s*([^\n@]*(?:\n(?!@)[^\n@]*)*)/g,W;while((W=U.exec(G))!==null){let[,X,Y,Z]=W,$=Z.trim();switch(X){case"param":{let v=$.match(/^(\[)?(\w+)\]?\s*(?:-\s*)?(.*)/);if(v)z.params.push({name:v[2],type:Y,description:v[3].trim(),optional:!!v[1]});break}case"returns":case"return":z.returns={type:Y,description:$};break;case"example":z.examples.push($);break;case"deprecated":z.deprecated=$||"Deprecated";break;case"since":z.since=$;break;case"see":z.see.push($);break;case"throws":case"throw":z.throws.push({type:Y,description:$});break;case"category":z.category=$;break;default:if(!z.tags[X])z.tags[X]=[];z.tags[X].push($)}}}return z}function M(q,z){let A=N(q.leadingComments),G="";switch(q.kind){case"function":G=h(q);break;case"variable":G=T(q);break;case"interface":G=F(q);break;case"type":G=S(q);break;case"class":G=k(q);break;case"enum":G=x(q);break;default:G=q.text||q.name}let Q={name:q.name,kind:q.kind,signature:G,jsdoc:A,isExported:q.isExported,isDefault:q.isDefault,sourceFile:z};if(q.members&&q.members.length>0)Q.members=q.members.map((U)=>M(U,z));return Q}function h(q){let z=[];if(q.isExported)z.push("export");if(q.isDefault)z.push("default");if(z.push("function"),z.push(q.name),q.generics)z.push(q.generics);if(q.parameters){let A=q.parameters.map((G)=>{let Q="";if(G.rest)Q+="...";if(Q+=G.name,G.optional)Q+="?";if(G.type)Q+=`: ${G.type}`;return Q}).join(", ");z.push(`(${A})`)}else z.push("()");if(q.returnType)z.push(`: ${q.returnType}`);return z.join(" ").replace(/\s+/g," ")}function T(q){let z=[];if(q.isExported)z.push("export");if(z.push("const"),z.push(q.name),q.typeAnnotation)z.push(`: ${q.typeAnnotation}`);return z.join(" ")}function F(q){let z=[];if(q.isExported)z.push("export");if(z.push("interface"),z.push(q.name),q.generics)z.push(q.generics);if(q.extends)z.push(`extends ${q.extends}`);return z.join(" ")}function S(q){let z=[];if(q.isExported)z.push("export");if(z.push("type"),z.push(q.name),q.generics)z.push(q.generics);if(z.push("="),q.typeAnnotation)z.push(q.typeAnnotation);return z.join(" ")}function k(q){let z=[];if(q.isExported)z.push("export");if(q.isDefault)z.push("default");if(z.push("class"),z.push(q.name),q.generics)z.push(q.generics);if(q.extends)z.push(`extends ${q.extends}`);if(q.implements&&q.implements.length>0)z.push(`implements ${q.implements.join(", ")}`);return z.join(" ")}function x(q){let z=[];if(q.isExported)z.push("export");return z.push("enum"),z.push(q.name),z.join(" ")}async function P(q,z={}){let A=[],G=new Map;for(let Q of q){if(!j(Q)){_.warn(`File not found: ${Q}`);continue}let U=b(Q,"utf-8"),W=K(U,Q,!0);for(let X of W){if(X.kind==="import")continue;if(!z.includePrivate&&X.name.startsWith("_"))continue;if(!z.includeInternal&&X.leadingComments?.some((Z)=>Z.includes("@internal")))continue;let Y=M(X,Q);if(A.push(Y),z.groupByCategory&&Y.jsdoc.category){let Z=Y.jsdoc.category;if(!G.has(Z))G.set(Z,[]);G.get(Z).push(Y)}}}return{title:z.title||"API Documentation",description:z.description,entries:A,categories:G,generatedAt:new Date}}function B(q,z={}){let A=[];if(A.push(`# ${q.title}`),A.push(""),q.description)A.push(q.description),A.push("");if(A.push(`> Generated on ${q.generatedAt.toISOString()}`),A.push(""),A.push("## Table of Contents"),A.push(""),z.groupByCategory&&q.categories.size>0)for(let G of q.categories.keys())A.push(`- [${G}](#${E(G)})`);else{let G=I(q.entries);for(let[Q,U]of G)if(U.length>0)A.push(`- [${O(Q)}](#${E(O(Q))})`)}if(A.push(""),z.groupByCategory&&q.categories.size>0)for(let[G,Q]of q.categories){A.push(`## ${G}`),A.push("");for(let U of Q)A.push(...L(U,z))}else{let G=I(q.entries);for(let[Q,U]of G)if(U.length>0){A.push(`## ${O(Q)}`),A.push("");for(let W of U)A.push(...L(W,z))}}return A.join(`
5
5
  `)}function L(q,z){let A=[];if(A.push(`### ${q.name}`),A.push(""),q.jsdoc.deprecated)A.push(`> **Deprecated:** ${q.jsdoc.deprecated}`),A.push("");if(A.push("```typescript"),A.push(q.signature),A.push("```"),A.push(""),q.jsdoc.description)A.push(q.jsdoc.description),A.push("");if(q.jsdoc.params.length>0){A.push("**Parameters:**"),A.push(""),A.push("| Name | Type | Description |"),A.push("|------|------|-------------|");for(let G of q.jsdoc.params){let Q=G.optional?" (optional)":"",U=G.type||"any";A.push(`| \`${G.name}\`${Q} | \`${U}\` | ${G.description} |`)}A.push("")}if(q.jsdoc.returns){A.push("**Returns:**"),A.push("");let G=q.jsdoc.returns.type?`\`${q.jsdoc.returns.type}\``:"";A.push(`${G} ${q.jsdoc.returns.description}`),A.push("")}if(q.jsdoc.throws.length>0){A.push("**Throws:**"),A.push("");for(let G of q.jsdoc.throws){let Q=G.type?`\`${G.type}\``:"";A.push(`- ${Q} ${G.description}`)}A.push("")}if(q.jsdoc.examples.length>0){A.push("**Examples:**"),A.push("");for(let G of q.jsdoc.examples)A.push("```typescript"),A.push(G),A.push("```"),A.push("")}if(q.jsdoc.see.length>0){A.push("**See also:**"),A.push("");for(let G of q.jsdoc.see)A.push(`- ${G}`);A.push("")}if(q.jsdoc.since)A.push(`*Since: ${q.jsdoc.since}*`),A.push("");if(z.includeSourceLinks&&q.sourceFile){let G=q.sourceFile;if(z.sourceBaseUrl)A.push(`[Source](${z.sourceBaseUrl}/${G})`);else A.push(`*Source: ${G}*`);A.push("")}if(q.members&&q.members.length>0){A.push("**Members:**"),A.push("");for(let G of q.members)if(A.push(`#### ${G.name}`),A.push(""),A.push("```typescript"),A.push(G.signature),A.push("```"),A.push(""),G.jsdoc.description)A.push(G.jsdoc.description),A.push("")}return A.push("---"),A.push(""),A}function C(q,z={}){let A=B(q,z);return`<!DOCTYPE html>
@@ -1,3 +1,3 @@
1
1
  // @bun
2
- import{tb as I}from"./chunk-jfk0hw36.js";function z(J={}){let{onBuildStart:K=!1,onBuildEnd:L=!0,onGenerated:M,onError:C,...N}=J,w,q,F=async()=>{let j={...N};if(!j.outdir&&w)j.outdir=w;if(!j.entrypoints&&q)j.entrypoints=q;try{let k=await I(j);M?.(k)}catch(k){let H=k instanceof Error?k:Error(String(k));if(C?.(H),!C)console.error("[dtsx] Generation failed:",H.message)}};return{name:"dtsx",esbuildOptions(j){if(j.outdir&&typeof j.outdir==="string")w=j.outdir;if(j.entryPoints){if(Array.isArray(j.entryPoints))q=j.entryPoints;else if(typeof j.entryPoints==="object")q=Object.values(j.entryPoints)}},async buildStart(){if(K)await F()},async buildEnd(j){if(L)await F()}}}var R=z,T=z,V=z;
2
+ import{tb as I}from"./chunk-14gh6ezz.js";function z(J={}){let{onBuildStart:K=!1,onBuildEnd:L=!0,onGenerated:M,onError:C,...N}=J,w,q,F=async()=>{let j={...N};if(!j.outdir&&w)j.outdir=w;if(!j.entrypoints&&q)j.entrypoints=q;try{let k=await I(j);M?.(k)}catch(k){let H=k instanceof Error?k:Error(String(k));if(C?.(H),!C)console.error("[dtsx] Generation failed:",H.message)}};return{name:"dtsx",esbuildOptions(j){if(j.outdir&&typeof j.outdir==="string")w=j.outdir;if(j.entryPoints){if(Array.isArray(j.entryPoints))q=j.entryPoints;else if(typeof j.entryPoints==="object")q=Object.values(j.entryPoints)}},async buildStart(){if(K)await F()},async buildEnd(j){if(L)await F()}}}var R=z,T=z,V=z;
3
3
  export{z as ma,R as na,T as oa,V as pa};
@@ -1,3 +1,3 @@
1
1
  // @bun
2
2
  var K={debug:0,info:1,warn:2,error:3,silent:4},B="info",F="[dtsx]",I=!1,H=null;function y(j){return K[j]>=K[B]}function Q(){if(!I)return"";return`[${new Date().toISOString().slice(11,23)}] `}function S(j,C){let k=Q();if(j||k)return[`${k}${j}`,...C];return C}function z(j,C,k){let q=S(C,k);if(H){H(j,...q);return}switch(j){case"debug":console.debug(...q);break;case"info":console.log(...q);break;case"warn":console.warn(...q);break;case"error":console.error(...q);break}}function J(j){return{debug:(...k)=>{if(y("debug"))z("debug",j,k)},info:(...k)=>{if(y("info"))z("info",j,k)},warn:(...k)=>{if(y("warn"))z("warn",j,k)},error:(...k)=>{if(y("error"))z("error",j,k)},setLevel:(k)=>{B=k},getLevel:()=>B,child:(k)=>{let q=j?`${j}:${k}`:`[${k}]`;return J(q)},time:(k)=>{let q=performance.now();return()=>{let M=performance.now()-q;if(y("debug"))z("debug",j,[`${k}: ${M.toFixed(2)}ms`])}},progress:(k)=>{if(y("info"))if(typeof process<"u"&&process.stdout?.isTTY)process.stdout.write(`\r${j} ${k}`);else z("info",j,[k])}}}function Y(j={}){if(j.level)B=j.level;if(j.prefix!==void 0)F=j.prefix;if(j.timestamps!==void 0)I=j.timestamps;if(j.output)H=j.output;return J(F)}var U=J(F);function Z(j){return U.child(j)}function $(j){B=j}function N(){return B}function D(j){F=j}function G(j){I=j}var X={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{},setLevel:()=>{},getLevel:()=>"silent",child:()=>X,time:()=>()=>{},progress:()=>{}};
3
- export{Y as Uc,U as Vc,Z as Wc,$ as Xc,N as Yc,D as Zc,G as _c,X as $c};
3
+ export{Y as Vc,U as Wc,Z as Xc,$ as Yc,N as Zc,D as _c,G as $c,X as ad};
@@ -0,0 +1,6 @@
1
+ // @bun
2
+ import{tb as y}from"./chunk-14gh6ezz.js";import{Wc as H,Yc as F}from"./chunk-gssantc8.js";import{dd as R}from"./chunk-mcdb3q06.js";import{existsSync as V,readFileSync as G}from"fs";import{dirname as M,join as X,resolve as x}from"path";async function S(E){let A=[],z=new Set;async function q(I,O){let w=x(I);if(z.has(w))return;if(z.add(w),!V(w)){H.warn(`tsconfig not found: ${w}`);return}try{let K=G(w,"utf-8"),Q=K.indexOf("//")!==-1||K.indexOf("/*")!==-1?K.replace(/\/\*[\s\S]*?\*\/|\/\/.*/g,""):K,L=JSON.parse(Q),U=M(w),Y=B(U,O),W=[];if(L.references)for(let D of L.references){let $=x(U,D.path),J=V(X($,"tsconfig.json"))?X($,"tsconfig.json"):$;await q(J,Y);let b=B(M(J),Y);W.push(b)}let Z="./src";if(L.compilerOptions?.rootDir)Z=L.compilerOptions.rootDir;else if(L.include&&L.include.length>0){if(L.include[0].startsWith("src/"))Z="./src"}let _="./dist";if(L.compilerOptions?.outDir)_=L.compilerOptions.outDir;else if(L.compilerOptions?.declarationDir)_=L.compilerOptions.declarationDir;A.push({name:Y,root:U,tsconfigPath:w,references:W,config:{root:Z,outdir:_}})}catch(K){let Q=K instanceof Error?K.message:String(K);H.warn(`Failed to parse ${w}: ${Q}`)}}return await q(E),A}function B(E,A){let z=X(E,"package.json");if(V(z))try{let I=G(z,"utf-8"),O=JSON.parse(I);if(O.name)return O.name}catch{}let q=E.split("/").pop()||"unknown";return A?`${A}/${q}`:q}function N(E){let A=new Map(E.map((w)=>[w.name,w])),z=[],q=new Set,I=new Set;function O(w){if(q.has(w))return;if(I.has(w)){H.warn(`Circular dependency detected involving: ${w}`);return}I.add(w);let K=A.get(w);if(K){for(let Q of K.references)O(Q);z.push(K)}I.delete(w),q.add(w)}for(let w of E)O(w.name);return z}async function T(E){let A=Date.now(),z=N(E.projects);H.info(`Generating declarations for ${z.length} projects...`);let q=[],I=!0;for(let Q of z){H.info(`
3
+ [${Q.name}] Generating...`);try{let L={...E.sharedConfig,...Q.config,cwd:Q.root,tsconfigPath:Q.tsconfigPath},U=await y(L),Y=U.filesFailed===0;if(!Y)I=!1;q.push({name:Q.name,stats:U,success:Y}),H.info(`[${Q.name}] Generated ${U.filesGenerated} files`)}catch(L){I=!1;let U=L instanceof Error?L.message:String(L);q.push({name:Q.name,stats:{filesProcessed:0,filesGenerated:0,filesFailed:0,filesValidated:0,validationErrors:0,declarationsFound:0,importsProcessed:0,exportsProcessed:0,durationMs:0,errors:[]},success:!1,error:U}),H.error(`[${Q.name}] Failed: ${U}`)}}let O=Date.now()-A,w=q.filter((Q)=>Q.success).length,K=q.length-w;if(H.info(`
4
+ --- Workspace Generation Summary ---`),H.info(`Projects processed: ${q.length}`),H.info(`Successful: ${w}`),K>0)H.info(`Failed: ${K}`);return H.info(`Total duration: ${O}ms`),H.info(`------------------------------------
5
+ `),{success:I,projects:q,durationMs:O}}async function f(E,A){if(A?.logLevel)F(A.logLevel);let z=X(E,"tsconfig.json");if(!V(z))throw Error(`Root tsconfig.json not found at: ${z}`);H.info("Discovering workspace projects...");let q=await S(z);if(q.length===0)return H.warn("No projects found in workspace"),{success:!0,projects:[],durationMs:0};return H.info(`Found ${q.length} projects`),T({root:E,projects:q,sharedConfig:A})}async function v(E){let A=X(E,"package.json");if(!V(A))return[];try{let z=G(A,"utf-8"),q=JSON.parse(z),I=[];if(Array.isArray(q.workspaces))I=q.workspaces;else if(q.workspaces?.packages)I=q.workspaces.packages;return I}catch{return[]}}async function C(E,A){let{Glob:z}=awaitPromise.resolve(globalThis.Bun),q=[];for(let I of A){let O=new z(I);for await(let w of O.scan({cwd:E,absolute:!0,onlyFiles:!1})){let K=X(w,"package.json");if(V(K))q.push(w)}}return q}async function l(E,A){if(A?.logLevel)F(A.logLevel);let z=await v(E);if(z.length===0)return H.warn("No workspace patterns found in package.json"),{success:!0,projects:[],durationMs:0};H.info(`Found workspace patterns: ${z.join(", ")}`);let q=await C(E,z);if(q.length===0)return H.warn("No projects found matching workspace patterns"),{success:!0,projects:[],durationMs:0};H.info(`Found ${q.length} workspace packages`);let I=q.map((O)=>{let w=X(O,"tsconfig.json");return{name:B(O),root:O,tsconfigPath:V(w)?w:"",references:[]}});return T({root:E,projects:I,sharedConfig:A})}
6
+ export{S as l,N as m,T as n,f as o,v as p,C as q,l as r};
@@ -1,3 +1,3 @@
1
1
  // @bun
2
2
  var j=Object.create;var{getPrototypeOf:k,defineProperty:i,getOwnPropertyNames:l}=Object;var m=Object.prototype.hasOwnProperty;function n(a){return this[a]}var o,p,q=(a,b,d)=>{var f=a!=null&&typeof a==="object";if(f){var g=b?o??=new WeakMap:p??=new WeakMap,h=g.get(a);if(h)return h}d=a!=null?j(k(a)):{};let c=b||!a||!a.__esModule?i(d,"default",{value:a,enumerable:!0}):d;for(let e of l(a))if(!m.call(c,e))i(c,e,{get:n.bind(a,e),enumerable:!0});if(f)g.set(a,c);return c};var r=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports);var s=import.meta.require;
3
- export{q as ad,r as bd,s as cd};
3
+ export{q as bd,r as cd,s as dd};
@@ -1,3 +1,3 @@
1
1
  // @bun
2
- import{tb as z}from"./chunk-jfk0hw36.js";function C(F={}){let{preBuild:H=!1,postBuild:I=!0,onGenerated:J,onError:w,...q}=F,y=async()=>{try{let j=await z(q);J?.(j)}catch(j){let k=j instanceof Error?j:Error(String(j));if(w?.(k),!w)console.error("[dtsx] Generation failed:",k.message)}};return{name:"dtsx",async setup(j){let k=j.config;if(!q.entrypoints&&k.entrypoints)q.entrypoints=k.entrypoints;if(!q.outdir&&k.outdir)q.outdir=k.outdir;if(!q.root&&k.root)q.root=k.root;if(H)j.onStart(async()=>{await y()});if(I){let v=!1;j.onLoad({filter:/.*/},async(K)=>{if(!v)queueMicrotask(async()=>{if(!v)v=!0,await y()});return})}}}}var M=C,P=C;
2
+ import{tb as z}from"./chunk-14gh6ezz.js";function C(F={}){let{preBuild:H=!1,postBuild:I=!0,onGenerated:J,onError:w,...q}=F,y=async()=>{try{let j=await z(q);J?.(j)}catch(j){let k=j instanceof Error?j:Error(String(j));if(w?.(k),!w)console.error("[dtsx] Generation failed:",k.message)}};return{name:"dtsx",async setup(j){let k=j.config;if(!q.entrypoints&&k.entrypoints)q.entrypoints=k.entrypoints;if(!q.outdir&&k.outdir)q.outdir=k.outdir;if(!q.root&&k.root)q.root=k.root;if(H)j.onStart(async()=>{await y()});if(I){let v=!1;j.onLoad({filter:/.*/},async(K)=>{if(!v)queueMicrotask(async()=>{if(!v)v=!0,await y()});return})}}}}var M=C,P=C;
3
3
  export{C as fa,M as ga,P as ha};
@@ -1,13 +1,13 @@
1
1
  // @bun
2
- import{hc as y}from"./chunk-94h87sgb.js";import{ad as k}from"./chunk-ns3hznyf.js";var H=k(y(),1);import{dirname as C,resolve as F}from"path";function v(q,j){let B=H.default.readConfigFile(q,H.default.sys.readFile);if(B.error)throw Error(`Error reading tsconfig.json: ${b(B.error)}`);let J=H.default.parseJsonConfigFileContent(B.config,H.default.sys,C(q));if(J.errors.length>0){let I=J.errors.map(b).join(`
2
+ import{hc as C}from"./chunk-2n1bbm2c.js";import{bd as y}from"./chunk-mcdb3q06.js";var H=y(C(),1);import{dirname as P,resolve as F}from"path";function A(q,j){let B=H.default.readConfigFile(q,H.default.sys.readFile);if(B.error)throw Error(`Error reading tsconfig.json: ${b(B.error)}`);let J=H.default.parseJsonConfigFileContent(B.config,H.default.sys,P(q));if(J.errors.length>0){let I=J.errors.map(b).join(`
3
3
  `);throw Error(`Error parsing tsconfig.json:
4
4
  ${I}`)}return{...J.options,...j}}function b(q){if(q.file&&q.start!==void 0){let{line:j,character:B}=q.file.getLineAndCharacterOfPosition(q.start),J=H.default.flattenDiagnosticMessageText(q.messageText,`
5
5
  `);return`${q.file.fileName}(${j+1},${B+1}): ${J}`}return H.default.flattenDiagnosticMessageText(q.messageText,`
6
- `)}function x(q){switch(q){case H.default.DiagnosticCategory.Error:return"error";case H.default.DiagnosticCategory.Warning:return"warning";case H.default.DiagnosticCategory.Suggestion:return"hint";case H.default.DiagnosticCategory.Message:default:return"info"}}function S(q){switch(q){case H.default.DiagnosticCategory.Error:return"Error";case H.default.DiagnosticCategory.Warning:return"Warning";case H.default.DiagnosticCategory.Suggestion:return"Suggestion";case H.default.DiagnosticCategory.Message:return"Message";default:return"Unknown"}}function P(q){let j=H.default.flattenDiagnosticMessageText(q.messageText,`
7
- `);if(q.file&&q.start!==void 0){let{line:B,character:J}=q.file.getLineAndCharacterOfPosition(q.start),I=q.file,R;if(q.length){let K=B,Q=q.start+q.length,{line:X}=I.getLineAndCharacterOfPosition(Q),$=I.text.split(`
8
- `),V=Math.max(0,K-1),G=Math.min($.length,X+2);R=$.slice(V,G).join(`
9
- `)}return{file:I.fileName,line:B+1,column:J+1,message:j,code:q.code,severity:x(q.category),source:R,category:S(q.category)}}return{file:"<unknown>",line:0,column:0,message:j,code:q.code,severity:x(q.category),category:S(q.category)}}function L(q,j){let B=H.default.createCompilerHost(j);return H.default.createProgram(q,j,B)}async function E(q,j={}){let B=Date.now(),J;if(j.tsconfigPath)J=v(j.tsconfigPath,j.compilerOptions);else J={target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler,strict:j.strict??!0,skipLibCheck:j.skipLibCheck??!0,noEmit:!0,declaration:!0,...j.compilerOptions};let I=q;if(j.declarationsOnly)I=q.filter((G)=>G.endsWith(".d.ts"));if(j.include?.length){let G=j.include.map((U)=>new RegExp(U.replace(/\*/g,".*")));I=I.filter((U)=>G.some((W)=>W.test(U)))}if(j.exclude?.length){let G=j.exclude.map((U)=>new RegExp(U.replace(/\*/g,".*")));I=I.filter((U)=>!G.some((W)=>W.test(U)))}let R=L(I,J),Q=[...R.getConfigFileParsingDiagnostics(),...R.getSyntacticDiagnostics(),...R.getSemanticDiagnostics(),...R.getDeclarationDiagnostics()].map(P);if(j.maxErrors&&Q.length>j.maxErrors)Q=Q.slice(0,j.maxErrors);let X=Q.filter((G)=>G.severity==="error").length,$=Q.filter((G)=>G.severity==="warning").length,V=Q.filter((G)=>G.severity==="info"||G.severity==="hint").length;if(j.warningsAsErrors)Q=Q.map((G)=>G.severity==="warning"?{...G,severity:"error"}:G),X+=$;return{success:X===0,diagnostics:Q,errorCount:X,warningCount:j.warningsAsErrors?0:$,infoCount:V,filesChecked:I,durationMs:Date.now()-B}}async function u(q,j={}){return E(q,{...j,declarationsOnly:!0,skipLibCheck:!0,compilerOptions:{...j.compilerOptions,noEmit:!0,declaration:!1}})}async function m(q,j){let B=new Map,I={...j?v(j):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},isolatedDeclarations:!0,declaration:!0,noEmit:!0},R=L(q,I);for(let K of q){let Q=R.getSourceFile(K);if(!Q){B.set(K,{compatible:!0,issues:[]});continue}let X=[],V=[...R.getSyntacticDiagnostics(Q),...R.getSemanticDiagnostics(Q)].filter((G)=>G.code>=9006&&G.code<=9099);for(let G of V)if(G.start!==void 0){let{line:U,character:W}=Q.getLineAndCharacterOfPosition(G.start),Y=H.default.flattenDiagnosticMessageText(G.messageText,`
10
- `),Z;if(Y.includes("return type"))Z="return";else if(Y.includes("parameter"))Z="parameter";else if(Y.includes("variable"))Z="variable";else if(Y.includes("property"))Z="property";X.push({line:U+1,column:W+1,message:Y,missingAnnotation:Z})}B.set(K,{compatible:X.length===0,issues:X})}return B}function f(q,j,B,J){try{let U=function(Z){if(V>=Z.getStart()&&V<Z.getEnd())return H.default.forEachChild(Z,U)||Z;return},I=J?v(J):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},R=L([q],I),K=R.getSourceFile(q);if(!K)return null;let Q=K.getLineStarts().length;if(j<1||j>Q)return null;let X=K.getLineStarts()[j-1],$=j<Q?K.getLineStarts()[j]:K.text.length;if(B<1||B>$-X)return null;let V=K.getPositionOfLineAndCharacter(j-1,B-1),G=R.getTypeChecker(),W=U(K);if(!W)return null;let Y=G.getTypeAtLocation(W);return G.typeToString(Y)}catch{return null}}function d(q,j,B,J){try{let U=function(M){if(V>=M.getStart()&&V<M.getEnd())return H.default.forEachChild(M,U)||M;return},I=J?v(J):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},R=L([q],I),K=R.getSourceFile(q);if(!K)return null;let Q=K.getLineStarts().length;if(j<1||j>Q)return null;let X=K.getLineStarts()[j-1],$=j<Q?K.getLineStarts()[j]:K.text.length;if(B<1||B>$-X)return null;let V=K.getPositionOfLineAndCharacter(j-1,B-1),G=R.getTypeChecker(),W=U(K);if(!W)return null;let Y=G.getSymbolAtLocation(W);if(!Y){let M=G.getTypeAtLocation(W);return{type:G.typeToString(M)}}let Z=G.typeToString(G.getTypeOfSymbolAtLocation(Y,W)),A=H.default.displayPartsToString(Y.getDocumentationComment(G));return{type:Z,documentation:A||void 0}}catch{return null}}function g(q){let j=[];if(q.success)j.push(`\u2713 Type check passed (${q.filesChecked.length} files checked in ${q.durationMs}ms)`);else{j.push("\u2717 Type check failed"),j.push(` ${q.errorCount} error(s), ${q.warningCount} warning(s)`),j.push("");for(let B of q.diagnostics){let J=B.severity==="error"?"\u2717":B.severity==="warning"?"\u26A0":"\u2139";if(j.push(`${J} ${B.file}:${B.line}:${B.column}`),j.push(` ${B.message}`),B.source){let I=B.source.split(`
6
+ `)}function x(q){switch(q){case H.default.DiagnosticCategory.Error:return"error";case H.default.DiagnosticCategory.Warning:return"warning";case H.default.DiagnosticCategory.Suggestion:return"hint";case H.default.DiagnosticCategory.Message:default:return"info"}}function S(q){switch(q){case H.default.DiagnosticCategory.Error:return"Error";case H.default.DiagnosticCategory.Warning:return"Warning";case H.default.DiagnosticCategory.Suggestion:return"Suggestion";case H.default.DiagnosticCategory.Message:return"Message";default:return"Unknown"}}var E=new WeakMap;function h(q){let j=H.default.flattenDiagnosticMessageText(q.messageText,`
7
+ `);if(q.file&&q.start!==void 0){let{line:B,character:J}=q.file.getLineAndCharacterOfPosition(q.start),I=q.file,R;if(q.length){let K=B,Q=q.start+q.length,{line:X}=I.getLineAndCharacterOfPosition(Q),Y=E.get(I);if(!Y)Y=I.text.split(`
8
+ `),E.set(I,Y);let V=Math.max(0,K-1),G=Math.min(Y.length,X+2);R=Y.slice(V,G).join(`
9
+ `)}return{file:I.fileName,line:B+1,column:J+1,message:j,code:q.code,severity:x(q.category),source:R,category:S(q.category)}}return{file:"<unknown>",line:0,column:0,message:j,code:q.code,severity:x(q.category),category:S(q.category)}}function v(q,j){let B=H.default.createCompilerHost(j);return H.default.createProgram(q,j,B)}async function O(q,j={}){let B=Date.now(),J;if(j.tsconfigPath)J=A(j.tsconfigPath,j.compilerOptions);else J={target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler,strict:j.strict??!0,skipLibCheck:j.skipLibCheck??!0,noEmit:!0,declaration:!0,...j.compilerOptions};let I=q;if(j.declarationsOnly)I=q.filter((G)=>G.endsWith(".d.ts"));if(j.include?.length){let G=j.include.map((U)=>new RegExp(U.replace(/\*/g,".*")));I=I.filter((U)=>G.some((W)=>W.test(U)))}if(j.exclude?.length){let G=j.exclude.map((U)=>new RegExp(U.replace(/\*/g,".*")));I=I.filter((U)=>!G.some((W)=>W.test(U)))}let R=v(I,J),Q=[...R.getConfigFileParsingDiagnostics(),...R.getSyntacticDiagnostics(),...R.getSemanticDiagnostics(),...R.getDeclarationDiagnostics()].map(h);if(j.maxErrors&&Q.length>j.maxErrors)Q=Q.slice(0,j.maxErrors);let X=Q.filter((G)=>G.severity==="error").length,Y=Q.filter((G)=>G.severity==="warning").length,V=Q.filter((G)=>G.severity==="info"||G.severity==="hint").length;if(j.warningsAsErrors)Q=Q.map((G)=>G.severity==="warning"?{...G,severity:"error"}:G),X+=Y;return{success:X===0,diagnostics:Q,errorCount:X,warningCount:j.warningsAsErrors?0:Y,infoCount:V,filesChecked:I,durationMs:Date.now()-B}}async function u(q,j={}){return O(q,{...j,declarationsOnly:!0,skipLibCheck:!0,compilerOptions:{...j.compilerOptions,noEmit:!0,declaration:!1}})}async function f(q,j){let B=new Map,I={...j?A(j):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},isolatedDeclarations:!0,declaration:!0,noEmit:!0},R=v(q,I);for(let K of q){let Q=R.getSourceFile(K);if(!Q){B.set(K,{compatible:!0,issues:[]});continue}let X=[],V=[...R.getSyntacticDiagnostics(Q),...R.getSemanticDiagnostics(Q)].filter((G)=>G.code>=9006&&G.code<=9099);for(let G of V)if(G.start!==void 0){let{line:U,character:W}=Q.getLineAndCharacterOfPosition(G.start),Z=H.default.flattenDiagnosticMessageText(G.messageText,`
10
+ `),$;if(Z.includes("return type"))$="return";else if(Z.includes("parameter"))$="parameter";else if(Z.includes("variable"))$="variable";else if(Z.includes("property"))$="property";X.push({line:U+1,column:W+1,message:Z,missingAnnotation:$})}B.set(K,{compatible:X.length===0,issues:X})}return B}function d(q,j,B,J){try{let U=function($){if(V>=$.getStart()&&V<$.getEnd())return H.default.forEachChild($,U)||$;return},I=J?A(J):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},R=v([q],I),K=R.getSourceFile(q);if(!K)return null;let Q=K.getLineStarts().length;if(j<1||j>Q)return null;let X=K.getLineStarts()[j-1],Y=j<Q?K.getLineStarts()[j]:K.text.length;if(B<1||B>Y-X)return null;let V=K.getPositionOfLineAndCharacter(j-1,B-1),G=R.getTypeChecker(),W=U(K);if(!W)return null;let Z=G.getTypeAtLocation(W);return G.typeToString(Z)}catch{return null}}function g(q,j,B,J){try{let U=function(M){if(V>=M.getStart()&&V<M.getEnd())return H.default.forEachChild(M,U)||M;return},I=J?A(J):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},R=v([q],I),K=R.getSourceFile(q);if(!K)return null;let Q=K.getLineStarts().length;if(j<1||j>Q)return null;let X=K.getLineStarts()[j-1],Y=j<Q?K.getLineStarts()[j]:K.text.length;if(B<1||B>Y-X)return null;let V=K.getPositionOfLineAndCharacter(j-1,B-1),G=R.getTypeChecker(),W=U(K);if(!W)return null;let Z=G.getSymbolAtLocation(W);if(!Z){let M=G.getTypeAtLocation(W);return{type:G.typeToString(M)}}let $=G.typeToString(G.getTypeOfSymbolAtLocation(Z,W)),L=H.default.displayPartsToString(Z.getDocumentationComment(G));return{type:$,documentation:L||void 0}}catch{return null}}function l(q){let j=[];if(q.success)j.push(`\u2713 Type check passed (${q.filesChecked.length} files checked in ${q.durationMs}ms)`);else{j.push("\u2717 Type check failed"),j.push(` ${q.errorCount} error(s), ${q.warningCount} warning(s)`),j.push("");for(let B of q.diagnostics){let J=B.severity==="error"?"\u2717":B.severity==="warning"?"\u26A0":"\u2139";if(j.push(`${J} ${B.file}:${B.line}:${B.column}`),j.push(` ${B.message}`),B.source){let I=B.source.split(`
11
11
  `);for(let R of I)j.push(` \u2502 ${R}`)}if(B.suggestion)j.push(` \uD83D\uDCA1 ${B.suggestion}`);j.push("")}}return j.join(`
12
- `)}async function l(q){let j=q.entrypoints.map((B)=>F(q.cwd,B));return E(j,{tsconfigPath:q.tsconfigPath,rootDir:q.root})}async function a(q,j,B){let J=q,I=j,R=B,K=[],Q=R?v(R):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},X=L(J,Q),$=L(I,{...Q,declaration:!1}),V=X.getTypeChecker(),G=$.getTypeChecker();for(let U=0;U<J.length;U++){let W=X.getSourceFile(J[U]),Y=$.getSourceFile(I[U]);if(!W||!Y)continue;let Z=V.getSymbolAtLocation(W),A=G.getSymbolAtLocation(Y);if(!Z||!A)continue;let M=V.getExportsOfModule(Z),O=G.getExportsOfModule(A),T=new Map(O.map((w)=>[w.getName(),w]));for(let w of M){let N=w.getName(),D=T.get(N);if(!D){K.push({sourceName:N,sourceType:V.typeToString(V.getTypeOfSymbolAtLocation(w,W)),dtsType:"<missing>"});continue}let _=V.typeToString(V.getTypeOfSymbolAtLocation(w,W)),z=G.typeToString(G.getTypeOfSymbolAtLocation(D,Y));if(_!==z&&!h(_,z))K.push({sourceName:N,sourceType:_,dtsType:z})}}return{valid:K.length===0,mismatches:K}}function h(q,j){let B=(R)=>R.replace(/\s+/g," ").replace(/\s*([<>,{}()[\]:;])\s*/g,"$1").trim(),J=B(q),I=B(j);if(J===I)return!0;if(I==="any")return!0;if(J.startsWith("Promise<")&&I.startsWith("PromiseLike<"))return!0;return!1}
13
- export{v as z,E as A,u as B,m as C,f as D,d as E,g as F,l as G,a as H};
12
+ `)}async function a(q){let j=q.entrypoints.map((B)=>F(q.cwd,B));return O(j,{tsconfigPath:q.tsconfigPath,rootDir:q.root})}async function r(q,j,B){let J=q,I=j,R=B,K=[],Q=R?A(R):{target:H.default.ScriptTarget.ESNext,module:H.default.ModuleKind.ESNext,moduleResolution:H.default.ModuleResolutionKind.Bundler},X=v(J,Q),Y=v(I,{...Q,declaration:!1}),V=X.getTypeChecker(),G=Y.getTypeChecker();for(let U=0;U<J.length;U++){let W=X.getSourceFile(J[U]),Z=Y.getSourceFile(I[U]);if(!W||!Z)continue;let $=V.getSymbolAtLocation(W),L=G.getSymbolAtLocation(Z);if(!$||!L)continue;let M=V.getExportsOfModule($),T=G.getExportsOfModule(L),k=new Map(T.map((w)=>[w.getName(),w]));for(let w of M){let N=w.getName(),D=k.get(N);if(!D){K.push({sourceName:N,sourceType:V.typeToString(V.getTypeOfSymbolAtLocation(w,W)),dtsType:"<missing>"});continue}let _=V.typeToString(V.getTypeOfSymbolAtLocation(w,W)),z=G.typeToString(G.getTypeOfSymbolAtLocation(D,Z));if(_!==z&&!p(_,z))K.push({sourceName:N,sourceType:_,dtsType:z})}}return{valid:K.length===0,mismatches:K}}function p(q,j){let B=(R)=>R.replace(/\s+/g," ").replace(/\s*([<>,{}()[\]:;])\s*/g,"$1").trim(),J=B(q),I=B(j);if(J===I)return!0;if(I==="any")return!0;if(J.startsWith("Promise<")&&I.startsWith("PromiseLike<"))return!0;return!1}
13
+ export{A as z,O as A,u as B,f as C,d as D,g as E,l as F,a as G,r as H};
@@ -0,0 +1,6 @@
1
+ // @bun
2
+ import{hc as z}from"./chunk-2n1bbm2c.js";import{bd as k}from"./chunk-mcdb3q06.js";var Q=k(z(),1);import{readFile as T}from"fs/promises";import{dirname as M,relative as $,resolve as b}from"path";async function E(j,A={}){let w=new Map,B=A.rootDir||process.cwd(),H=[];for(let K of j){if(A.ignore?.some((U)=>I(K,U)))continue;if(!A.includeNodeModules&&K.includes("node_modules"))continue;H.push(K)}let L=await Promise.all(H.map((K)=>F(K,B)));for(let K=0;K<H.length;K++){let U=L[K];if(U)w.set(H[K],U)}for(let[K,U]of w)for(let W of U.dependencies){let V=w.get(W);if(V)V.dependents.add(K)}return w}async function F(j,A){try{let w=await T(j,"utf-8"),B=Q.default.createSourceFile(j,w,Q.default.ScriptTarget.Latest,!0,Q.default.ScriptKind.TS),H={path:j,exports:new Set,imports:new Map,dependencies:new Set,dependents:new Set};return Q.default.forEachChild(B,(L)=>{q(L,H,j,A)}),H}catch{return null}}function q(j,A,w,B){if(Q.default.isImportDeclaration(j)){let H=j.moduleSpecifier;if(Q.default.isStringLiteral(H)){let L=O(H.text,w,B);if(L){A.dependencies.add(L);let K=j.importClause;if(K){if(K.name)A.imports.set(K.name.text,L);if(K.namedBindings){if(Q.default.isNamedImports(K.namedBindings))for(let U of K.namedBindings.elements)A.imports.set(U.name.text,L);else if(Q.default.isNamespaceImport(K.namedBindings))A.imports.set(K.namedBindings.name.text,L)}}}}}if(Q.default.isExportDeclaration(j)){if(j.moduleSpecifier&&Q.default.isStringLiteral(j.moduleSpecifier)){let H=O(j.moduleSpecifier.text,w,B);if(H)A.dependencies.add(H)}if(j.exportClause&&Q.default.isNamedExports(j.exportClause))for(let H of j.exportClause.elements)A.exports.add(H.name.text)}if(Q.default.isFunctionDeclaration(j)&&j.name&&X(j))A.exports.add(j.name.text);if(Q.default.isClassDeclaration(j)&&j.name&&X(j))A.exports.add(j.name.text);if(Q.default.isInterfaceDeclaration(j)&&X(j))A.exports.add(j.name.text);if(Q.default.isTypeAliasDeclaration(j)&&X(j))A.exports.add(j.name.text);if(Q.default.isEnumDeclaration(j)&&X(j))A.exports.add(j.name.text);if(Q.default.isVariableStatement(j)&&X(j)){for(let H of j.declarationList.declarations)if(Q.default.isIdentifier(H.name))A.exports.add(H.name.text)}}function X(j){return(Q.default.canHaveModifiers(j)?Q.default.getModifiers(j):void 0)?.some((w)=>w.kind===Q.default.SyntaxKind.ExportKeyword)??!1}function O(j,A,w){if(!j.startsWith(".")&&!j.startsWith("/"))return null;let B=M(A),H=b(B,j);if(H.includes("node_modules"))return null;if(H.endsWith(".ts")||H.endsWith(".tsx"))return H.replace(/\.tsx?$/,".ts");return`${H}.ts`}function I(j,A){let w=A.replace(/\./g,"\\.").replace(/\*/g,".*").replace(/\?/g,".");return new RegExp(w).test(j)}function S(j,A={}){let w=[],B=new Set,H=new Set,L=[],K=new Map,U=A.maxDepth||100;function W(V,G){if(G>U)return;if(H.has(V)){let Z=K.get(V)??L.indexOf(V),Y=L.slice(Z);Y.push(V);let R=v(Y,j),_=x(Y,j);if(!A.typesOnly||_)w.push({chain:Y,symbols:R,severity:_?"error":"warning",reason:_?"Type-level circular dependency can cause compilation issues":"Value-level circular dependency may cause runtime issues"});return}if(B.has(V))return;let J=j.get(V);if(!J)return;H.add(V),K.set(V,L.length),L.push(V);for(let Z of J.dependencies)W(Z,G+1);H.delete(V),L.pop(),K.delete(V),B.add(V)}for(let V of j.keys())if(!B.has(V))W(V,0);return C(w)}function v(j,A){let w=[];for(let B=0;B<j.length-1;B++){let H=A.get(j[B]),L=j[B+1];if(H){for(let[K,U]of H.imports)if(U===L)w.push(K)}}return[...new Set(w)]}function x(j,A){return j.some((w)=>w.endsWith(".d.ts")||A.get(w)?.exports.has("type")||[...A.get(w)?.imports.keys()||[]].some((B)=>B.startsWith("type ")||B==="type"))}function C(j){let A=new Set,w=[];for(let B of j){let H=N(B.chain),L=H.join(" -> ");if(!A.has(L))A.add(L),w.push({...B,chain:H})}return w}function N(j){if(j.length<=1)return j;let A=j.slice(0,-1),w=A;for(let B=1;B<A.length;B++){let H=[...A.slice(B),...A.slice(0,B)];if(H.join("")<w.join(""))w=H}return[...w,w[0]]}async function y(j,A={}){let w=Date.now(),B=await E(j,A),H=S(B,A);return{hasCircular:H.length>0,cycles:H,graph:B,filesAnalyzed:j,durationMs:Date.now()-w}}function m(j,A){let w=[];if(!j.hasCircular)return w.push(`\u2713 No circular dependencies found (${j.filesAnalyzed.length} files analyzed in ${j.durationMs}ms)`),w.join(`
3
+ `);w.push(`\u2717 Found ${j.cycles.length} circular dependency chain(s)`),w.push("");for(let B of j.cycles){let H=B.severity==="error"?"\uD83D\uDD34":"\uD83D\uDFE1";w.push(`${H} ${B.severity.toUpperCase()}: Circular dependency`);let L=B.chain.map((K)=>A?$(A,K):K);if(w.push(` ${L.join(" \u2192 ")}`),B.symbols.length>0)w.push(` Symbols: ${B.symbols.join(", ")}`);w.push(` ${B.reason}`),w.push("")}return w.push(`Analyzed ${j.filesAnalyzed.length} files in ${j.durationMs}ms`),w.join(`
4
+ `)}function u(j){let A=0,w={file:"",count:0},B={file:"",count:0},H=[];for(let[L,K]of j){let U=K.dependencies.size;if(A+=U,U>w.count)w={file:L,count:U};if(U===0&&K.dependents.size===0)H.push(L);if(K.dependents.size>B.count)B={file:L,count:K.dependents.size}}return{totalFiles:j.size,totalDependencies:A,avgDependencies:j.size>0?A/j.size:0,maxDependencies:w,isolatedFiles:H,mostDepended:B}}function P(j,A){let w=new Set,B=[j];while(B.length>0){let H=B.shift(),L=A.get(H);if(L){for(let K of L.dependents)if(!w.has(K))w.add(K),B.push(K)}}return w}function f(j,A){let w=new Set,B=[j];while(B.length>0){let H=B.shift(),L=A.get(H);if(L){for(let K of L.dependencies)if(!w.has(K))w.add(K),B.push(K)}}return w}function c(j,A){let w=["digraph dependencies {"," rankdir=LR;"," node [shape=box];",""];for(let[B,H]of j){let L=A?$(A,B):B,K=B.replace(/[^a-z0-9]/gi,"_");w.push(` ${K} [label="${L}"];`);for(let U of H.dependencies){let W=U.replace(/[^a-z0-9]/gi,"_");w.push(` ${K} -> ${W};`)}}return w.push("}"),w.join(`
5
+ `)}function h(j,A){let w=[];for(let[B,H]of j){let L=A?$(A,B):B;w.push({id:B,path:L,exports:[...H.exports],imports:Object.fromEntries(H.imports),dependencies:[...H.dependencies],dependents:[...H.dependents]})}return JSON.stringify({nodes:w},null,2)}
6
+ export{E as Q,S as R,y as S,m as T,u as U,P as V,f as W,c as X,h as Y};