zen-code 4.9.1 → 4.9.2

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 (116) hide show
  1. package/dist/app.js +187 -144
  2. package/dist/{chunk-4nsg4vcd.js → chunk-0pss3s5r.js} +1 -1
  3. package/dist/chunk-0sxrk9sx.js +1 -0
  4. package/dist/{chunk-gcm4jp0d.js → chunk-0zk0m93z.js} +1 -1
  5. package/dist/chunk-178yjjsx.js +1 -0
  6. package/dist/chunk-1p9xzvpt.js +3 -0
  7. package/dist/{chunk-hfve7nf5.js → chunk-2eh0sv3s.js} +2 -2
  8. package/dist/chunk-43xrz4wp.js +2 -0
  9. package/dist/chunk-48ce2wt0.js +1 -0
  10. package/dist/chunk-48vkm1yn.js +5 -0
  11. package/dist/{chunk-va71tsw3.js → chunk-55nx49pj.js} +2 -2
  12. package/dist/chunk-578m1dhj.js +2 -0
  13. package/dist/{chunk-trjpzw1n.js → chunk-5dsevrtz.js} +3 -3
  14. package/dist/{chunk-1y82m5kn.js → chunk-62zh99t6.js} +4 -4
  15. package/dist/chunk-66890qd3.js +2 -0
  16. package/dist/{chunk-9k5d9vf1.js → chunk-6nfpdtn6.js} +1 -1
  17. package/dist/chunk-738m8242.js +53 -0
  18. package/dist/{chunk-98f6hg43.js → chunk-8f2zh5h6.js} +2 -2
  19. package/dist/{chunk-jbf8ve63.js → chunk-8ty2zfve.js} +1 -1
  20. package/dist/{chunk-9dahn9h7.js → chunk-94jawhw7.js} +1 -1
  21. package/dist/chunk-98wjxsna.js +79 -0
  22. package/dist/chunk-9b7nj74j.js +1 -0
  23. package/dist/{chunk-wn43r152.js → chunk-9k64296h.js} +1 -1
  24. package/dist/chunk-9x562s6p.js +1 -0
  25. package/dist/chunk-a90fm6gz.js +278 -0
  26. package/dist/chunk-ac5t2ywn.js +100 -0
  27. package/dist/chunk-ad2hbq42.js +1 -0
  28. package/dist/chunk-afhxxkmv.js +16 -0
  29. package/dist/chunk-b4vvgbav.js +1 -0
  30. package/dist/{chunk-g7pm00z7.js → chunk-b9pcntkv.js} +9 -9
  31. package/dist/chunk-c7y5efa0.js +1 -0
  32. package/dist/chunk-cbjnwrt7.js +2 -0
  33. package/dist/{chunk-g377vrpj.js → chunk-ce53j63y.js} +1 -1
  34. package/dist/{chunk-kba8akjs.js → chunk-dcs1r9as.js} +1 -1
  35. package/dist/chunk-dcwnpdtk.js +9 -0
  36. package/dist/{chunk-b52b0t16.js → chunk-dxec2q4t.js} +1 -1
  37. package/dist/{chunk-13nyfrmm.js → chunk-e3tyc24s.js} +1 -1
  38. package/dist/{chunk-ep2es95e.js → chunk-e8hp8d68.js} +3 -3
  39. package/dist/chunk-fkrydbn4.js +18 -0
  40. package/dist/chunk-frhhpxxy.js +2 -0
  41. package/dist/{chunk-ns6tjjkq.js → chunk-fw3nrwpf.js} +1 -1
  42. package/dist/chunk-gyhxdxb4.js +1 -0
  43. package/dist/chunk-h1enhch1.js +2 -0
  44. package/dist/chunk-hcnx1j2z.js +1 -0
  45. package/dist/chunk-hfegb4pr.js +2 -0
  46. package/dist/{chunk-mmq834zt.js → chunk-hfypkhky.js} +1 -1
  47. package/dist/chunk-hmemx3cw.js +2 -0
  48. package/dist/chunk-hra0748z.js +2 -0
  49. package/dist/chunk-hsev32dg.js +4 -0
  50. package/dist/chunk-hyf24r36.js +2 -0
  51. package/dist/chunk-jb4yt88g.js +6 -0
  52. package/dist/chunk-jjcmm167.js +1 -0
  53. package/dist/chunk-jrepjpft.js +2 -0
  54. package/dist/chunk-k38fjqj7.js +140 -0
  55. package/dist/{chunk-cs73xbzz.js → chunk-kym9tb01.js} +1 -1
  56. package/dist/chunk-mt1g6g89.js +1 -0
  57. package/dist/chunk-p0vzbr7s.js +585 -0
  58. package/dist/{chunk-heasksrr.js → chunk-pndhbee8.js} +2 -2
  59. package/dist/{chunk-cggjws6a.js → chunk-pwrscdkf.js} +1 -1
  60. package/dist/{chunk-j7a40ww9.js → chunk-r019959h.js} +2 -2
  61. package/dist/chunk-r10bn684.js +1 -0
  62. package/dist/{chunk-30sq2w0d.js → chunk-r3pe49q4.js} +3 -3
  63. package/dist/chunk-r4tq44hr.js +1 -0
  64. package/dist/chunk-rjrnaka2.js +1 -0
  65. package/dist/{chunk-8g2zdcy0.js → chunk-rt5mpgbg.js} +2 -2
  66. package/dist/chunk-rztre6k0.js +1 -0
  67. package/dist/chunk-s77qbhtz.js +3 -0
  68. package/dist/chunk-t7rwtc17.js +1 -0
  69. package/dist/chunk-v8g52kan.js +1 -0
  70. package/dist/chunk-vd6c87cm.js +2 -0
  71. package/dist/{chunk-rncpxz1b.js → chunk-vfwbx331.js} +2 -2
  72. package/dist/chunk-vh9zd1v3.js +5 -0
  73. package/dist/chunk-w2hbsa9j.js +86 -0
  74. package/dist/chunk-wabmqprd.js +184 -0
  75. package/dist/chunk-wpy5r9ma.js +40 -0
  76. package/dist/chunk-x552nspp.js +6 -0
  77. package/dist/chunk-x90r4sje.js +1 -0
  78. package/dist/chunk-yndex7hs.js +1 -0
  79. package/dist/{chunk-7kdvr78m.js → chunk-yqwxbcc7.js} +4 -4
  80. package/dist/chunk-z8n7y37k.js +1 -0
  81. package/dist/chunk-zr7sx9hd.js +1 -0
  82. package/dist/chunk-zxqmghzf.js +1 -0
  83. package/dist/cli.js +1 -1
  84. package/dist/nonInteractive.js +2 -2
  85. package/dist/zen-keyboard.js +1 -1
  86. package/package.json +1 -1
  87. package/dist/chunk-02vv5584.js +0 -1
  88. package/dist/chunk-1edvf7b5.js +0 -1
  89. package/dist/chunk-1rmnbdef.js +0 -1
  90. package/dist/chunk-1ttywx0y.js +0 -6
  91. package/dist/chunk-32ase1cw.js +0 -2
  92. package/dist/chunk-3490ntd8.js +0 -1
  93. package/dist/chunk-3pcybja5.js +0 -7
  94. package/dist/chunk-5rr85f28.js +0 -1
  95. package/dist/chunk-5x8nxw0t.js +0 -137
  96. package/dist/chunk-6rfc36jg.js +0 -1
  97. package/dist/chunk-76h8pe7x.js +0 -2
  98. package/dist/chunk-8z38ybz7.js +0 -1
  99. package/dist/chunk-b8dxq9rq.js +0 -1
  100. package/dist/chunk-cjqarwdn.js +0 -1
  101. package/dist/chunk-cyexd09c.js +0 -2
  102. package/dist/chunk-f8ewggk1.js +0 -1
  103. package/dist/chunk-j9aysaeb.js +0 -1
  104. package/dist/chunk-jfhc5c0d.js +0 -1
  105. package/dist/chunk-jxsfzfac.js +0 -2
  106. package/dist/chunk-m76ya904.js +0 -1
  107. package/dist/chunk-mjzeawnq.js +0 -6
  108. package/dist/chunk-nwy6n6b6.js +0 -274
  109. package/dist/chunk-qd305hg1.js +0 -1
  110. package/dist/chunk-qez6ejd4.js +0 -1
  111. package/dist/chunk-r2h3x9zv.js +0 -2
  112. package/dist/chunk-rz3b356n.js +0 -1
  113. package/dist/chunk-xhnvpygg.js +0 -2
  114. package/dist/chunk-xkz5z0zn.js +0 -1
  115. package/dist/chunk-zwxjkwqd.js +0 -26
  116. package/dist/chunk-zz32kgt2.js +0 -1
@@ -1,2 +1,2 @@
1
- import{ub as X,vb as U}from"./chunk-kba8akjs.js";var S=U((Z,Q)=>{var V=Object.prototype.hasOwnProperty,H="~";function O(){}if(Object.create){if(O.prototype=Object.create(null),!new O().__proto__)H=!1}function W(B,q,y){this.fn=B,this.context=q,this.once=y||!1}function R(B,q,y,z,I){if(typeof y!=="function")throw TypeError("The listener must be a function");var F=new W(y,z||B,I),C=H?H+q:q;if(!B._events[C])B._events[C]=F,B._eventsCount++;else if(!B._events[C].fn)B._events[C].push(F);else B._events[C]=[B._events[C],F];return B}function P(B,q){if(--B._eventsCount===0)B._events=new O;else delete B._events[q]}function G(){this._events=new O,this._eventsCount=0}G.prototype.eventNames=function(){var q=[],y,z;if(this._eventsCount===0)return q;for(z in y=this._events)if(V.call(y,z))q.push(H?z.slice(1):z);if(Object.getOwnPropertySymbols)return q.concat(Object.getOwnPropertySymbols(y));return q};G.prototype.listeners=function(q){var y=H?H+q:q,z=this._events[y];if(!z)return[];if(z.fn)return[z.fn];for(var I=0,F=z.length,C=Array(F);I<F;I++)C[I]=z[I].fn;return C};G.prototype.listenerCount=function(q){var y=H?H+q:q,z=this._events[y];if(!z)return 0;if(z.fn)return 1;return z.length};G.prototype.emit=function(q,y,z,I,F,C){var J=H?H+q:q;if(!this._events[J])return!1;var k=this._events[J],K=arguments.length,M,D;if(k.fn){if(k.once)this.removeListener(q,k.fn,void 0,!0);switch(K){case 1:return k.fn.call(k.context),!0;case 2:return k.fn.call(k.context,y),!0;case 3:return k.fn.call(k.context,y,z),!0;case 4:return k.fn.call(k.context,y,z,I),!0;case 5:return k.fn.call(k.context,y,z,I,F),!0;case 6:return k.fn.call(k.context,y,z,I,F,C),!0}for(D=1,M=Array(K-1);D<K;D++)M[D-1]=arguments[D];k.fn.apply(k.context,M)}else{var T=k.length,N;for(D=0;D<T;D++){if(k[D].once)this.removeListener(q,k[D].fn,void 0,!0);switch(K){case 1:k[D].fn.call(k[D].context);break;case 2:k[D].fn.call(k[D].context,y);break;case 3:k[D].fn.call(k[D].context,y,z);break;case 4:k[D].fn.call(k[D].context,y,z,I);break;default:if(!M)for(N=1,M=Array(K-1);N<K;N++)M[N-1]=arguments[N];k[D].fn.apply(k[D].context,M)}}}return!0};G.prototype.on=function(q,y,z){return R(this,q,y,z,!1)};G.prototype.once=function(q,y,z){return R(this,q,y,z,!0)};G.prototype.removeListener=function(q,y,z,I){var F=H?H+q:q;if(!this._events[F])return this;if(!y)return P(this,F),this;var C=this._events[F];if(C.fn){if(C.fn===y&&(!I||C.once)&&(!z||C.context===z))P(this,F)}else{for(var J=0,k=[],K=C.length;J<K;J++)if(C[J].fn!==y||I&&!C[J].once||z&&C[J].context!==z)k.push(C[J]);if(k.length)this._events[F]=k.length===1?k[0]:k;else P(this,F)}return this};G.prototype.removeAllListeners=function(q){var y;if(q){if(y=H?H+q:q,this._events[y])P(this,y)}else this._events=new O,this._eventsCount=0;return this};G.prototype.off=G.prototype.removeListener;G.prototype.addListener=G.prototype.on;G.prefixed=H;G.EventEmitter=G;if(typeof Q<"u")Q.exports=G});var Y=X(S(),1);
2
- export{Y as w};
1
+ import{pq as X,qq as U}from"./chunk-dcs1r9as.js";var S=U((Z,Q)=>{var V=Object.prototype.hasOwnProperty,H="~";function O(){}if(Object.create){if(O.prototype=Object.create(null),!new O().__proto__)H=!1}function W(B,q,y){this.fn=B,this.context=q,this.once=y||!1}function R(B,q,y,z,I){if(typeof y!=="function")throw TypeError("The listener must be a function");var F=new W(y,z||B,I),C=H?H+q:q;if(!B._events[C])B._events[C]=F,B._eventsCount++;else if(!B._events[C].fn)B._events[C].push(F);else B._events[C]=[B._events[C],F];return B}function P(B,q){if(--B._eventsCount===0)B._events=new O;else delete B._events[q]}function G(){this._events=new O,this._eventsCount=0}G.prototype.eventNames=function(){var q=[],y,z;if(this._eventsCount===0)return q;for(z in y=this._events)if(V.call(y,z))q.push(H?z.slice(1):z);if(Object.getOwnPropertySymbols)return q.concat(Object.getOwnPropertySymbols(y));return q};G.prototype.listeners=function(q){var y=H?H+q:q,z=this._events[y];if(!z)return[];if(z.fn)return[z.fn];for(var I=0,F=z.length,C=Array(F);I<F;I++)C[I]=z[I].fn;return C};G.prototype.listenerCount=function(q){var y=H?H+q:q,z=this._events[y];if(!z)return 0;if(z.fn)return 1;return z.length};G.prototype.emit=function(q,y,z,I,F,C){var J=H?H+q:q;if(!this._events[J])return!1;var k=this._events[J],K=arguments.length,M,D;if(k.fn){if(k.once)this.removeListener(q,k.fn,void 0,!0);switch(K){case 1:return k.fn.call(k.context),!0;case 2:return k.fn.call(k.context,y),!0;case 3:return k.fn.call(k.context,y,z),!0;case 4:return k.fn.call(k.context,y,z,I),!0;case 5:return k.fn.call(k.context,y,z,I,F),!0;case 6:return k.fn.call(k.context,y,z,I,F,C),!0}for(D=1,M=Array(K-1);D<K;D++)M[D-1]=arguments[D];k.fn.apply(k.context,M)}else{var T=k.length,N;for(D=0;D<T;D++){if(k[D].once)this.removeListener(q,k[D].fn,void 0,!0);switch(K){case 1:k[D].fn.call(k[D].context);break;case 2:k[D].fn.call(k[D].context,y);break;case 3:k[D].fn.call(k[D].context,y,z);break;case 4:k[D].fn.call(k[D].context,y,z,I);break;default:if(!M)for(N=1,M=Array(K-1);N<K;N++)M[N-1]=arguments[N];k[D].fn.apply(k[D].context,M)}}}return!0};G.prototype.on=function(q,y,z){return R(this,q,y,z,!1)};G.prototype.once=function(q,y,z){return R(this,q,y,z,!0)};G.prototype.removeListener=function(q,y,z,I){var F=H?H+q:q;if(!this._events[F])return this;if(!y)return P(this,F),this;var C=this._events[F];if(C.fn){if(C.fn===y&&(!I||C.once)&&(!z||C.context===z))P(this,F)}else{for(var J=0,k=[],K=C.length;J<K;J++)if(C[J].fn!==y||I&&!C[J].once||z&&C[J].context!==z)k.push(C[J]);if(k.length)this._events[F]=k.length===1?k[0]:k;else P(this,F)}return this};G.prototype.removeAllListeners=function(q){var y;if(q){if(y=H?H+q:q,this._events[y])P(this,y)}else this._events=new O,this._eventsCount=0;return this};G.prototype.off=G.prototype.removeListener;G.prototype.addListener=G.prototype.on;G.prefixed=H;G.EventEmitter=G;if(typeof Q<"u")Q.exports=G});var Y=X(S(),1);
2
+ export{Y as Z};
@@ -1,2 +1,2 @@
1
1
  import k from"fs/promises";import q from"path";import z from"os";class A{pluginsDir;constructor(){let b=z.homedir();this.pluginsDir=q.join(b,".zen-code","plugins")}async listPlugins(){try{let b=await k.readdir(this.pluginsDir,{withFileTypes:!0}),d=[];for(let j of b)if(j.isDirectory()){let v=q.join(this.pluginsDir,j.name,"plugin.json");try{let x=await k.readFile(v,"utf-8"),w=JSON.parse(x);d.push({name:j.name,version:w.version||"0.0.0",enabled:w.enabled!==!1})}catch{}}return d}catch{return[]}}async getPluginConfig(b){let d=q.join(this.pluginsDir,b,"plugin.json");try{let j=await k.readFile(d,"utf-8");return JSON.parse(j)}catch{return null}}async updatePluginConfig(b,d){let j=q.join(this.pluginsDir,b);await k.mkdir(j,{recursive:!0});let v=q.join(j,"plugin.json");await k.writeFile(v,JSON.stringify(d,null,2),"utf-8")}async installPlugin(b,d){let j=q.join(this.pluginsDir,b);await k.mkdir(j,{recursive:!0});let v={name:b,version:"0.0.1",enabled:!0,source:d};await this.updatePluginConfig(b,v)}async uninstallPlugin(b){let d=q.join(this.pluginsDir,b);await k.rm(d,{recursive:!0,force:!0})}}
2
- export{A as nb};
2
+ export{A as Nf};
@@ -1,2 +1,2 @@
1
- import{N as c}from"./chunk-hfve7nf5.js";import{T as R,V as D}from"./chunk-va71tsw3.js";import{ea as t,fa as B,ga as q,oa as x,pa as E,qa as m}from"./chunk-nwy6n6b6.js";import{ub as S}from"./chunk-kba8akjs.js";var i=30000;function V(){let z=new AbortController,G=setTimeout(()=>{z.abort(),G=null},i);return{controller:z,cleanup:()=>{if(G!==null)clearTimeout(G),G=null}}}async function a(z,G){let{controller:N,cleanup:Q}=V();try{let H=await fetch(`${G}/models`,{method:"GET",headers:{Authorization:`Bearer ${z}`,"Content-Type":"application/json"},signal:N.signal});if(!H.ok){let Z=await H.text();throw Error(`OpenAI API error (${H.status}): ${H.statusText}`)}return(await H.json()).data.map((Z)=>({id:Z.id,name:Z.id,provider:"openai"})).sort((Z,g)=>Z.id.localeCompare(g.id))}catch(H){if(H.name==="AbortError")throw Error("OpenAI API request timeout (30s)");throw H}finally{Q()}}async function n(z,G){let{controller:N,cleanup:Q}=V();try{let H=await fetch(`${G}/v1/models`,{method:"GET",headers:{"x-api-key":z,"anthropic-version":"2023-06-01","Content-Type":"application/json"},signal:N.signal});if(!H.ok){let Z=await H.text();throw Error(`Anthropic API error (${H.status}): ${H.statusText}`)}return(await H.json()).data.map((Z)=>({id:Z.id,name:Z.display_name||Z.id,provider:"anthropic"}))}catch(H){if(H.name==="AbortError")throw Error("Anthropic API request timeout (30s)");throw H}finally{Q()}}async function d(z,G){let{controller:N,cleanup:Q}=V();try{let H=await fetch(G+"/v1beta/models",{method:"GET",headers:{Authorization:"Bearer "+z},signal:N.signal});if(!H.ok)throw Error(`Gemini API error (${H.status}): Invalid API key`);return(await H.json()).models.map((Z)=>({id:Z.name,name:Z.displayName||Z.name,provider:"gemini"}))}catch(H){if(H.name==="AbortError")throw Error("Gemini API request timeout (30s)");throw H}finally{Q()}}function zz({provider:z,enabled:G=!0}){return R({queryKey:D.models.list(z?.id||"unknown"),queryFn:async()=>{if(!z||!z.apiKey||!z.baseUrl)return[];try{if(z.type==="openai")return await a(z.apiKey,z.baseUrl);else if(z.type==="anthropic")return await n(z.apiKey,z.baseUrl);else if(z.type==="gemini")return await d(z.apiKey,z.baseUrl);return[]}catch(N){throw N}},enabled:G&&!!z&&!!z.apiKey&&!!z.baseUrl,staleTime:600000,retry:(N,Q)=>{if(Q?.message?.includes("timeout"))return N<2;if(Q?.name==="TypeError"||Q?.message?.includes("fetch"))return N<2;return!1}})}var J=S(t(),1);var $=S(E(),1),L=[{id:"openai",label:"OpenAI",defaultUrl:"https://api.openai.com/v1"},{id:"anthropic",label:"Anthropic",defaultUrl:"https://api.anthropic.com"},{id:"gemini",label:"Gemini",defaultUrl:"https://generativelanguage.googleapis.com/v1beta"}],_=[{key:"id",label:"ID",placeholder:"my-provider"},{key:"name",label:"Name",placeholder:"My Provider"},{key:"apiKey",label:"API Key",placeholder:"sk-xxx..."},{key:"url",label:"URL",placeholder:"https://api.xxx.com"}],o=({provider:z,onCancel:G,onSave:N})=>{let{config:Q}=c(),[H,O]=J.useState({id:z?.id||"",type:z?.type||"openai",name:z?.id||"",apiKey:z?.apiKey||"",baseUrl:z?.baseUrl||L[0].defaultUrl}),[Z,g]=J.useState({}),[U,v]=J.useState(0),w=J.useRef(H),C=J.useRef(U),f=J.useRef(Z);J.useEffect(()=>{w.current=H},[H]),J.useEffect(()=>{C.current=U},[U]),J.useEffect(()=>{f.current=Z},[Z]);let u=J.useMemo(()=>{return L.find((X)=>X.id===H.type)||L[0]},[H.type]),k=J.useCallback(()=>{let X=w.current,W={},A=Q?.providers||[];if(!X.id||X.id.length<3||X.id.length>32)W.id="ID 必须为 3-32 个字符";else if(!/^[a-zA-Z0-9_]+$/.test(X.id))W.id="ID 只能包含字母、数字和下划线";else if(A.some((M)=>M.id===X.id&&M.id!==z?.id))W.id="ID 已存在";if(!X.name||X.name.length<2||X.name.length>50)W.name="名称必须为 2-50 个字符";if(!X.apiKey)W.apiKey="API Key 不能为空";if(!X.baseUrl)W.baseUrl="Base URL 不能为空";else if(!X.baseUrl.startsWith("https://"))W.baseUrl="Base URL 必须以 https:// 开头";return g(W),Object.keys(W).length===0},[Q?.providers,z?.id]),h=J.useRef(k);J.useEffect(()=>{h.current=k},[k]);let K=J.useCallback(()=>{if(h.current())N(w.current)},[N]),P=J.useCallback(()=>{let X=w.current.type,A=(L.findIndex((Y)=>Y.id===X)+1)%L.length,M=L[A];O((Y)=>({...Y,type:M.id,baseUrl:Y.baseUrl||M.defaultUrl}))},[]),b=J.useCallback((X)=>{let W=C.current,A=X==="next"?(W+1)%_.length:(W-1+_.length)%_.length;v(A)},[]),p=(X)=>{let W=_[X];if(W.key==="url")return"baseUrl";return W.key},I=J.useRef(K),T=J.useRef(b),F=J.useRef(P),y=J.useRef(G);J.useEffect(()=>{I.current=K},[K]),J.useEffect(()=>{T.current=b},[b]),J.useEffect(()=>{F.current=P},[P]),J.useEffect(()=>{y.current=G},[G]),x((X,W)=>{if(W.return)I.current();else if(W.escape)y.current();else if(W.tab)T.current(W.shift?"prev":"next");else if(X===" ")F.current()},{isActive:!0});let j=(X)=>{let W=_[X],A=p(X),M=Z[A],Y=U===X;return $.jsxDEV(B,{marginBottom:0,children:[$.jsxDEV(q,{color:Y?"cyan":M?"red":"gray",children:[W.label,": "]},void 0,!0,void 0,this),Y?$.jsxDEV(B,{width:50,children:$.jsxDEV(m,{value:H[A],onChange:(l)=>O((s)=>({...s,[A]:l})),onSubmit:K,placeholder:W.placeholder,maxVisibleLines:1,showCursor:!0},void 0,!1,void 0,this)},void 0,!1,void 0,this):$.jsxDEV(q,{children:H[A]||W.placeholder},void 0,!1,void 0,this),M&&$.jsxDEV(q,{color:"red",children:[" ",M]},void 0,!0,void 0,this)]},W.key,!0,void 0,this)};return $.jsxDEV(B,{flexDirection:"column",paddingX:2,children:[$.jsxDEV(B,{marginTop:1,flexDirection:"column",gap:1,children:[j(0),$.jsxDEV(B,{marginBottom:0,children:[$.jsxDEV(q,{color:U===0?"cyan":"gray",children:"Type: "},void 0,!1,void 0,this),$.jsxDEV(q,{color:"cyan",bold:!0,children:u.label},void 0,!1,void 0,this),$.jsxDEV(q,{color:"gray",children:" [空格切换]"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),j(1),j(2),j(3)]},void 0,!0,void 0,this),$.jsxDEV(B,{marginTop:1,children:$.jsxDEV(q,{color:"gray",dimColor:!0,children:[$.jsxDEV(q,{color:"cyan",children:"Enter"},void 0,!1,void 0,this)," 保存 ",$.jsxDEV(q,{color:"cyan",children:"Tab"},void 0,!1,void 0,this)," 切换字段"," ",$.jsxDEV(q,{color:"cyan",children:"Esc"},void 0,!1,void 0,this)," 取消"]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},Nz=o;
2
- export{zz as d,Nz as e};
1
+ import{I as c}from"./chunk-2eh0sv3s.js";import{O as R,Q as D}from"./chunk-55nx49pj.js";import{Ae as B,Be as q,Je as x,Ke as E,Le as m,ye as t}from"./chunk-a90fm6gz.js";import{pq as S}from"./chunk-dcs1r9as.js";var i=30000;function V(){let z=new AbortController,G=setTimeout(()=>{z.abort(),G=null},i);return{controller:z,cleanup:()=>{if(G!==null)clearTimeout(G),G=null}}}async function a(z,G){let{controller:N,cleanup:Q}=V();try{let H=await fetch(`${G}/models`,{method:"GET",headers:{Authorization:`Bearer ${z}`,"Content-Type":"application/json"},signal:N.signal});if(!H.ok){let Z=await H.text();throw Error(`OpenAI API error (${H.status}): ${H.statusText}`)}return(await H.json()).data.map((Z)=>({id:Z.id,name:Z.id,provider:"openai"})).sort((Z,g)=>Z.id.localeCompare(g.id))}catch(H){if(H.name==="AbortError")throw Error("OpenAI API request timeout (30s)");throw H}finally{Q()}}async function n(z,G){let{controller:N,cleanup:Q}=V();try{let H=await fetch(`${G}/v1/models`,{method:"GET",headers:{"x-api-key":z,"anthropic-version":"2023-06-01","Content-Type":"application/json"},signal:N.signal});if(!H.ok){let Z=await H.text();throw Error(`Anthropic API error (${H.status}): ${H.statusText}`)}return(await H.json()).data.map((Z)=>({id:Z.id,name:Z.display_name||Z.id,provider:"anthropic"}))}catch(H){if(H.name==="AbortError")throw Error("Anthropic API request timeout (30s)");throw H}finally{Q()}}async function d(z,G){let{controller:N,cleanup:Q}=V();try{let H=await fetch(G+"/v1beta/models",{method:"GET",headers:{Authorization:"Bearer "+z},signal:N.signal});if(!H.ok)throw Error(`Gemini API error (${H.status}): Invalid API key`);return(await H.json()).models.map((Z)=>({id:Z.name,name:Z.displayName||Z.name,provider:"gemini"}))}catch(H){if(H.name==="AbortError")throw Error("Gemini API request timeout (30s)");throw H}finally{Q()}}function zz({provider:z,enabled:G=!0}){return R({queryKey:D.models.list(z?.id||"unknown"),queryFn:async()=>{if(!z||!z.apiKey||!z.baseUrl)return[];try{if(z.type==="openai")return await a(z.apiKey,z.baseUrl);else if(z.type==="anthropic")return await n(z.apiKey,z.baseUrl);else if(z.type==="gemini")return await d(z.apiKey,z.baseUrl);return[]}catch(N){throw N}},enabled:G&&!!z&&!!z.apiKey&&!!z.baseUrl,staleTime:600000,retry:(N,Q)=>{if(Q?.message?.includes("timeout"))return N<2;if(Q?.name==="TypeError"||Q?.message?.includes("fetch"))return N<2;return!1}})}var J=S(t(),1);var $=S(E(),1),L=[{id:"openai",label:"OpenAI",defaultUrl:"https://api.openai.com/v1"},{id:"anthropic",label:"Anthropic",defaultUrl:"https://api.anthropic.com"},{id:"gemini",label:"Gemini",defaultUrl:"https://generativelanguage.googleapis.com/v1beta"}],_=[{key:"id",label:"ID",placeholder:"my-provider"},{key:"name",label:"Name",placeholder:"My Provider"},{key:"apiKey",label:"API Key",placeholder:"sk-xxx..."},{key:"url",label:"URL",placeholder:"https://api.xxx.com"}],o=({provider:z,onCancel:G,onSave:N})=>{let{config:Q}=c(),[H,O]=J.useState({id:z?.id||"",type:z?.type||"openai",name:z?.id||"",apiKey:z?.apiKey||"",baseUrl:z?.baseUrl||L[0].defaultUrl}),[Z,g]=J.useState({}),[U,v]=J.useState(0),w=J.useRef(H),C=J.useRef(U),f=J.useRef(Z);J.useEffect(()=>{w.current=H},[H]),J.useEffect(()=>{C.current=U},[U]),J.useEffect(()=>{f.current=Z},[Z]);let u=J.useMemo(()=>{return L.find((X)=>X.id===H.type)||L[0]},[H.type]),k=J.useCallback(()=>{let X=w.current,W={},A=Q?.providers||[];if(!X.id||X.id.length<3||X.id.length>32)W.id="ID 必须为 3-32 个字符";else if(!/^[a-zA-Z0-9_]+$/.test(X.id))W.id="ID 只能包含字母、数字和下划线";else if(A.some((M)=>M.id===X.id&&M.id!==z?.id))W.id="ID 已存在";if(!X.name||X.name.length<2||X.name.length>50)W.name="名称必须为 2-50 个字符";if(!X.apiKey)W.apiKey="API Key 不能为空";if(!X.baseUrl)W.baseUrl="Base URL 不能为空";else if(!X.baseUrl.startsWith("https://"))W.baseUrl="Base URL 必须以 https:// 开头";return g(W),Object.keys(W).length===0},[Q?.providers,z?.id]),h=J.useRef(k);J.useEffect(()=>{h.current=k},[k]);let K=J.useCallback(()=>{if(h.current())N(w.current)},[N]),P=J.useCallback(()=>{let X=w.current.type,A=(L.findIndex((Y)=>Y.id===X)+1)%L.length,M=L[A];O((Y)=>({...Y,type:M.id,baseUrl:Y.baseUrl||M.defaultUrl}))},[]),b=J.useCallback((X)=>{let W=C.current,A=X==="next"?(W+1)%_.length:(W-1+_.length)%_.length;v(A)},[]),p=(X)=>{let W=_[X];if(W.key==="url")return"baseUrl";return W.key},I=J.useRef(K),T=J.useRef(b),F=J.useRef(P),y=J.useRef(G);J.useEffect(()=>{I.current=K},[K]),J.useEffect(()=>{T.current=b},[b]),J.useEffect(()=>{F.current=P},[P]),J.useEffect(()=>{y.current=G},[G]),x((X,W)=>{if(W.return)I.current();else if(W.escape)y.current();else if(W.tab)T.current(W.shift?"prev":"next");else if(X===" ")F.current()},{isActive:!0});let j=(X)=>{let W=_[X],A=p(X),M=Z[A],Y=U===X;return $.jsxDEV(B,{marginBottom:0,children:[$.jsxDEV(q,{color:Y?"cyan":M?"red":"gray",children:[W.label,": "]},void 0,!0,void 0,this),Y?$.jsxDEV(B,{width:50,children:$.jsxDEV(m,{value:H[A],onChange:(l)=>O((s)=>({...s,[A]:l})),onSubmit:K,placeholder:W.placeholder,maxVisibleLines:1,showCursor:!0},void 0,!1,void 0,this)},void 0,!1,void 0,this):$.jsxDEV(q,{children:H[A]||W.placeholder},void 0,!1,void 0,this),M&&$.jsxDEV(q,{color:"red",children:[" ",M]},void 0,!0,void 0,this)]},W.key,!0,void 0,this)};return $.jsxDEV(B,{flexDirection:"column",paddingX:2,children:[$.jsxDEV(B,{marginTop:1,flexDirection:"column",gap:1,children:[j(0),$.jsxDEV(B,{marginBottom:0,children:[$.jsxDEV(q,{color:U===0?"cyan":"gray",children:"Type: "},void 0,!1,void 0,this),$.jsxDEV(q,{color:"cyan",bold:!0,children:u.label},void 0,!1,void 0,this),$.jsxDEV(q,{color:"gray",children:" [空格切换]"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),j(1),j(2),j(3)]},void 0,!0,void 0,this),$.jsxDEV(B,{marginTop:1,children:$.jsxDEV(q,{color:"gray",dimColor:!0,children:[$.jsxDEV(q,{color:"cyan",children:"Enter"},void 0,!1,void 0,this)," 保存 ",$.jsxDEV(q,{color:"cyan",children:"Tab"},void 0,!1,void 0,this)," 切换字段"," ",$.jsxDEV(q,{color:"cyan",children:"Esc"},void 0,!1,void 0,this)," 取消"]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},Nz=o;
2
+ export{zz as z,Nz as A};
@@ -0,0 +1 @@
1
+ import{A as e,z as d}from"./chunk-r019959h.js";import{H as o}from"./chunk-vfwbx331.js";import{I as u}from"./chunk-2eh0sv3s.js";import"./chunk-55nx49pj.js";import{Ae as N,Be as J,Ee as c,Je as x,Ke as f,Le as s,Me as i,Oe as t,ye as l}from"./chunk-a90fm6gz.js";import"./chunk-ad2hbq42.js";import"./chunk-pwrscdkf.js";import"./chunk-fkrydbn4.js";import"./chunk-43xrz4wp.js";import"./chunk-cbjnwrt7.js";import"./chunk-wpy5r9ma.js";import"./chunk-hyf24r36.js";import"./chunk-578m1dhj.js";import"./chunk-1p9xzvpt.js";import"./chunk-hra0748z.js";import"./chunk-jb4yt88g.js";import"./chunk-k38fjqj7.js";import{pq as S}from"./chunk-dcs1r9as.js";var zq=S(l(),1);var U=S(l(),1);var H=S(f(),1),a={openai:"\uD83E\uDD16",anthropic:"\uD83E\uDDE0",gemini:"✨",default:"\uD83D\uDD2E"};var Jq=({defaultValue:O,onSubmit:F,onSwitchProvider:X})=>{let[_,W]=U.useState(O),B=U.useCallback((G)=>{if(!G.trim())return;F(G.trim())},[F]),R=U.useCallback((G,K)=>{if(K.tab)return X?.(K.shift?"left":"right"),!1;if(K.leftArrow)return X?.("left"),!1;if(K.rightArrow)return X?.("right"),!1;return!0},[X]);return H.jsxDEV(N,{paddingX:2,paddingY:1,flexDirection:"column",gap:1,children:[H.jsxDEV(J,{color:"gray",children:"请输入模型名称(Enter 确认):"},void 0,!1,void 0,this),H.jsxDEV(s,{value:_,onChange:W,onSubmit:B,onHotKey:R,maxVisibleLines:1,placeholder:"例如:gpt-4o"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},Qq=({onClose:O})=>{let{extraParams:F,config:X,updateConfig:_}=u(),[W,B]=U.useState(""),R=U.useRef([]),G=U.useMemo(()=>{if(!X?.providers||X.providers.length===0)return[];return X.providers.map((q)=>{let $=q.type||"default";return{id:q.id,label:q.id,icon:a[$]||a.default,config:q}})},[X?.providers]);U.useMemo(()=>{if(G.length>0&&!W){let q=G.find(($)=>$.id===F.provider_id);B(q?.id||G[0].id)}},[G,F.provider_id,W]);let K=G.find((q)=>q.id===W),{data:V,isLoading:y,error:v}=d({provider:K?.config||null,enabled:!!W}),b=U.useMemo(()=>{let q=(V||[]).map(($)=>({id:$.id,name:$.name}));return R.current=q,q},[V]),D=U.useCallback(async()=>{return R.current},[]),j=U.useCallback((q,$,C)=>{let M=q.id===F.provider_id+"-"+q.id;return H.jsxDEV(i,{isSelected:C,isCurrent:M,children:[H.jsxDEV(J,{bold:!0,children:[$+1,". ",q.id]},void 0,!0,void 0,this),H.jsxDEV(J,{dimColor:!0,children:[" ",q.name!==q.id?`(${q.name})`:""]},void 0,!0,void 0,this)]},`model-${$}-${q.id}`,!0,void 0,this)},[F.provider_id]),P=U.useCallback((q)=>{return q.id===F.provider_id+"-"+q.id},[F.provider_id]),g=U.useCallback(async(q)=>{await _({model_id:q}),O()},[_,O]),E=U.useCallback(async(q)=>{let C=G.find((M)=>M.id===W)?.config.type||"openai";await _({provider_id:W,provider_type:C,model_id:q.id}),O()},[_,W,O,G]),k=U.useCallback(async(q)=>{if(G.length<=1)return;let $=G.findIndex((p)=>p.id===W),C=q==="left"?($-1+G.length)%G.length:($+1)%G.length,M=G[C];B(M.id),await _({provider_id:M.id,provider_type:M.config.type})},[W,G,_]),m=U.useMemo(()=>{let q=K?.label||"加载中...";return{id:`model-${W}`,title:`模型选择 - ${q}`,icon:K?.icon||"\uD83D\uDD2E",dataSource:D,searchable:!0,searchFields:["id","name"],searchPlaceholder:"搜索模型...",itemHeight:1,visibleCount:10,renderItem:j,isSelected:P,onSelect:E,showCount:!0,keyMap:{leftArrow:($)=>{k("left")},rightArrow:($)=>{k("right")}}}},[W,K,D,j,P,E,k]);if(G.length===0)return H.jsxDEV(N,{flexDirection:"column",paddingX:2,paddingY:1,children:[H.jsxDEV(J,{color:"yellow",children:"⚠️ 未配置任何 Provider"},void 0,!1,void 0,this),H.jsxDEV(J,{color:"gray",dimColor:!0,children:"请先配置 Provider 后再查看模型列表"},void 0,!1,void 0,this)]},void 0,!0,void 0,this);let T=K?.config.apiKey;return H.jsxDEV(N,{flexDirection:"column",children:[H.jsxDEV(N,{gap:1,paddingX:1,paddingY:1,children:G.map((q,$)=>H.jsxDEV(J,{bold:q.id===W,color:q.id===W?"cyan":"gray",children:[q.icon," ",q.label,q.id===W&&" [当前]",q.id===W&&!T&&" (未配置 API Key)"]},`provider-tab-${$}-${q.id}`,!0,void 0,this))},void 0,!1,void 0,this),y?H.jsxDEV(N,{paddingX:2,paddingY:1,children:H.jsxDEV(J,{color:"gray",children:"加载模型列表中..."},void 0,!1,void 0,this)},void 0,!1,void 0,this):v||b.length===0?H.jsxDEV(Jq,{defaultValue:X?.model_id||"",onSubmit:g,onSwitchProvider:k},void 0,!1,void 0,this):!T?H.jsxDEV(N,{paddingX:2,paddingY:1,children:H.jsxDEV(J,{color:"yellow",children:"请先配置 API Key"},void 0,!1,void 0,this)},void 0,!1,void 0,this):H.jsxDEV(t,{config:m,onClose:O},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},r=Qq;var z=S(l(),1);var Z=S(f(),1),Wq=({onClose:O})=>{let{config:F,updateConfig:X}=u(),[_,W]=z.useState("list"),[B,R]=z.useState(null),[G,K]=z.useState(0),[V,y]=z.useState(null),v=z.useCallback(()=>y(null),[]);o(v,V?3000:null);let b=z.useRef(_),D=z.useRef(G),j=z.useRef([]),P=z.useRef(!0);z.useEffect(()=>{b.current=_},[_]),z.useEffect(()=>{D.current=G},[G]);let g=F?.providers||[];z.useEffect(()=>{j.current=g},[g]);let E=z.useCallback(()=>{P.current=!0,R(null),W("form"),y(null)},[]),k=z.useCallback(()=>{let Q=j.current,Y=D.current,L=Q[Y];if(!L)return;P.current=!1,R(L),W("form"),y(null)},[]),m=z.useCallback(()=>{W("list"),R(null),y(null)},[]),T=z.useCallback(async(Q)=>{let Y=j.current,L=P.current,A=L?[...Y,Q]:Y.map((w)=>w.id===Q.id?Q:w);if(await X({providers:A}),y(L?`已添加 Provider: ${Q.id}`:`已更新 Provider: ${Q.id}`),L){let w=A.findIndex((I)=>I.id===Q.id);K(w>=0?w:0)}W("list"),R(null),y(null)},[X]),q=z.useCallback(async()=>{let Q=j.current,Y=D.current,L=Q[Y];if(!L)return;if(Q.length<=1){y("无法删除最后一个 Provider");return}let A=Q.filter((I)=>I.id!==L.id);await X({providers:A});let w=Math.min(Y,A.length-1);K(w>=0?w:0),y(`已删除 Provider: ${L.id}`)},[X]),$=z.useRef(E),C=z.useRef(k),M=z.useRef(q),p=z.useRef(m),n=z.useRef(O);z.useEffect(()=>{$.current=E},[E]),z.useEffect(()=>{C.current=k},[k]),z.useEffect(()=>{M.current=q},[q]),z.useEffect(()=>{p.current=m},[m]),z.useEffect(()=>{n.current=O},[O]),x((Q,Y)=>{let L=b.current,A=j.current,w=D.current;if(L==="form"){if(Y.escape)p.current();return}if(Y.upArrow)K((I)=>I>0?I-1:A.length-1);else if(Y.downArrow)K((I)=>I<A.length-1?I+1:0);else if(Q==="n"||Q==="N")$.current();else if((Q==="e"||Q==="E"||Y.return)&&A[w])C.current();else if((Q==="d"||Q==="D")&&A[w])M.current();else if(Y.escape)n.current()},{isActive:!0});let Gq=z.useMemo(()=>{if(g.length===0)return Z.jsxDEV(N,{paddingX:2,paddingY:1,children:Z.jsxDEV(J,{color:"yellow",children:"未配置任何 Provider"},void 0,!1,void 0,this)},void 0,!1,void 0,this);return Z.jsxDEV(N,{flexDirection:"column",paddingX:2,gap:1,children:[g.map((Q,Y)=>{let L=!!Q.apiKey,A=L?"green":"yellow";return Z.jsxDEV(N,{marginBottom:0,gap:1,children:[Z.jsxDEV(J,{color:Y===G?"cyan":"gray",bold:Y===G,children:Y===G?">":" "},void 0,!1,void 0,this),Z.jsxDEV(J,{bold:Y===G,color:Y===G?"cyan":void 0,children:Q.id},void 0,!1,void 0,this),Z.jsxDEV(c,{},void 0,!1,void 0,this),Z.jsxDEV(J,{color:"gray",dimColor:Y!==G,children:[" ",Q.type]},void 0,!0,void 0,this),Z.jsxDEV(J,{color:A,dimColor:Y!==G,children:[" ","[",L?"已配置":"未配置","]"]},void 0,!0,void 0,this)]},`provider-${Y}-${Q.id}`,!0,void 0,this)}),Z.jsxDEV(N,{marginTop:1,children:Z.jsxDEV(J,{color:"gray",dimColor:!0,children:[Z.jsxDEV(J,{color:"cyan",children:"↑↓"},void 0,!1,void 0,this)," 导航 ",Z.jsxDEV(J,{color:"cyan",children:"n"},void 0,!1,void 0,this)," 新增 ",Z.jsxDEV(J,{color:"cyan",children:"d"},void 0,!1,void 0,this)," ","删除 ",Z.jsxDEV(J,{color:"cyan",children:"Esc"},void 0,!1,void 0,this)," 关闭"]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},[g,G]);return Z.jsxDEV(N,{flexDirection:"column",children:[Z.jsxDEV(N,{paddingX:2,paddingY:1,children:Z.jsxDEV(J,{bold:!0,color:"cyan",children:"Providers"},void 0,!1,void 0,this)},void 0,!1,void 0,this),_==="list"?Gq:Z.jsxDEV(e,{provider:B||void 0,onCancel:m,onSave:T},void 0,!1,void 0,this),V&&Z.jsxDEV(N,{paddingX:2,paddingY:0,children:Z.jsxDEV(J,{color:"green",children:V},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},qq=Wq;var h=S(f(),1),Xq=({onClose:O,initialTab:F="model"})=>{let[X,_]=zq.useState(F);return x((W,B)=>{if(B.leftArrow&&B.alt)_("model");else if(B.rightArrow&&B.alt)_("provider");else if(B.escape)O()},{isActive:!0}),h.jsxDEV(N,{flexDirection:"column",width:"100%",borderStyle:"single",borderDimColor:!0,children:[h.jsxDEV(N,{flexDirection:"column",paddingX:0,paddingY:0,children:[X==="model"&&h.jsxDEV(r,{onClose:O},void 0,!1,void 0,this),X==="provider"&&h.jsxDEV(qq,{onClose:O},void 0,!1,void 0,this)]},void 0,!0,void 0,this),h.jsxDEV(N,{flexDirection:"row",gap:2,paddingX:2,paddingY:1,borderTop:!0,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",borderColor:"gray",children:[h.jsxDEV(J,{bold:X==="model",color:X==="model"?"cyan":"gray",children:"\uD83E\uDD16 Model"},void 0,!1,void 0,this),h.jsxDEV(J,{bold:X==="provider",color:X==="provider"?"cyan":"gray",children:"\uD83D\uDD0C Provider"},void 0,!1,void 0,this),h.jsxDEV(c,{},void 0,!1,void 0,this),h.jsxDEV(J,{dimColor:!0,children:"Alt+ < >"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},jq=Xq;export{jq as default};
@@ -1,8 +1,8 @@
1
- import{ea as c0,fa as j,ga as E,pa as t}from"./chunk-nwy6n6b6.js";import{Ka as g}from"./chunk-5x8nxw0t.js";import{ub as h,vb as P,yb as M}from"./chunk-kba8akjs.js";var b=P((IA,X0)=>{var n0=M("child_process").spawn;function p0(A,G,X,L){if(typeof X==="function")L=X,X=void 0;let J=!1,H=n0(A,G,X),K="",Y="";H.stdout.on("data",function($){K+=$.toString()}),H.stderr.on("data",function($){Y+=$.toString()}),H.on("error",function($){if(J)return;J=!0,L(Error($))}),H.on("close",function($,Q){if(J)return;if(J=!0,Y)return L(Error(Y));L(null,K,$)})}X0.exports=p0});var y=P((OA,L0)=>{var B={},w={},x={},n=0,R=null;function a0(A,G){if(G<=0)return;if(w[A]!==void 0)B[A]=Date.now()+(G||60000);return w[A]}function i0(A,G,X,L){if(G===void 0||X<=0)return;if(B[A]=Date.now()+(X||60000),w[A]===void 0)n++,G0(X);if(w[A]=G,L)x[A]=L}function G0(A){if(n>0){if(R===null){if(R=setInterval(d0,(A||60000)/2),typeof R.unref==="function")R.unref()}return}if(R!==null)clearInterval(R),R=null}function d0(){let A=Date.now(),G=Object.keys(B);for(let X=0;X<G.length;X++){let L=G[X];if(B[L]<A){if(n--,x[L])x[L](w[L]);delete w[L],delete B[L],delete x[L]}}G0()}function c(A){for(let G in A)delete A[G]}function o0(){if(R!==null)clearInterval(R),R=null;c(w),c(B),c(x)}L0.exports={get:a0,set:i0,clear:o0}});var W0=P((EA,Q0)=>{var K0=M("os"),r0=b(),H0=y(),f=K0.platform();function J0(A,G){let X=0,L=A.split(/-|:|\./),J=L.length-1;if(J>=0&&G&&f==="darwin")X+=parseInt(L[J--],10)*10;if(J>=0)X+=parseInt(L[J--],10)*1000;if(J>=0)X+=parseInt(L[J--],10)*60000;if(J>=0)X+=parseInt(L[J--],10)*3600000;if(J>=0)X+=parseInt(L[J--],10)*86400000;return X}function s0(A,G,X){let L=A.join(","),J=["-o","etime,pid,ppid,pcpu,rss,time","-p",L];if(f==="aix"||f==="os400")J=["-o","etime,pid,ppid,pcpu,rssize,time","-p",L];r0("ps",J,function(H,K,Y){if(H){if(f==="os390"&&/no matching processes found/.test(H))H=Error("No matching pid found"),H.code="ENOENT";return X(H)}if(Y===1){let N=Error("No matching pid found");return N.code="ENOENT",X(N)}if(Y!==0)return X(Error("pidusage ps command exited with code "+Y));let $=Date.now();K=K.split(K0.EOL);let Q={};for(let N=1;N<K.length;N++){let U=K[N].trim().split(/\s+/);if(!U||U.length!==6)continue;let W=parseInt(U[1],10),q=H0.get(W,G.maxage);if(q===void 0)q={};let Z=parseInt(U[2],10),F=parseInt(U[4],10)*1024,v=J0(U[0]),C=J0(U[5],!0),T=C-(q.ctime||0),I=Math.abs(q.elapsed!==void 0?v-q.elapsed:v),D=I>0?T/I*100:0;Q[W]={cpu:D,memory:F,ppid:Z,pid:W,ctime:C,elapsed:v,timestamp:$},H0.set(W,Q[W],G.maxage)}X(null,Q)})}Q0.exports=s0});var p=P((SA,Y0)=>{function t0(A,G,X){if(typeof G==="function")X=G,G={};let L;if(!Array.isArray(A))L=Object.keys(A);let J=L?L.length:A.length,H=J,K=L?{}:[];function Y($,Q,N){if(K[$]=N,--H===0||Q&&!G.graceful){if(G.graceful&&Q&&J>1)Q=null;X&&X(Q,K),X=null}}if(L)L.forEach(function($){A[$](function(Q,N){Y($,Q,N)})});else A.forEach(function($,Q){$(function(N,U){Y(Q,N,U)})})}Y0.exports=t0});var Z0=P((jA,q0)=>{var e0=M("os"),AA=M("fs"),XA=M("child_process").exec,U0=p();function GA(A,G){if(A!==null){$0(function(X,L){if(X)return G(X);A.uptime=L,G(null,A)});return}U0([LA,$0],function(X,L){if(X)return G(X);A={clockTick:L[0].clockTick,pageSize:L[0].pageSize,uptime:L[1]},G(null,A)})}q0.exports=GA;function $0(A){AA.readFile("/proc/uptime","utf8",function(G,X){if(G||X===void 0){if(!process.env.PIDUSAGE_SILENT)console.warn("[pidusage] We couldn't find uptime from /proc/uptime, using os.uptime() value");return A(null,e0.uptime()||new Date/1000)}return A(null,parseFloat(X.split(" ")[0]))})}function LA(A){U0([function(X){N0("CLK_TCK",{default:100},X)},function(X){N0("PAGESIZE",{default:4096},X)}],function(G,X){if(G)return A(G);A(null,{clockTick:X[0],pageSize:X[1]})})}function N0(A,G,X){if(typeof G==="function")X=G,G={default:""};XA("getconf "+A,function(L,J,H){if(L!==null){if(!process.env.PIDUSAGE_SILENT)console.error('Error while calling "getconf '+A+'"',L);return X(null,G.default)}if(J=parseInt(J),!isNaN(J))return X(null,J);return X(null,G.default)})}});var M0=P((a,F0)=>{/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */var l=M("buffer"),V=l.Buffer;function _0(A,G){for(var X in A)G[X]=A[X]}if(V.from&&V.alloc&&V.allocUnsafe&&V.allocUnsafeSlow)F0.exports=l;else _0(l,a),a.Buffer=z;function z(A,G,X){return V(A,G,X)}z.prototype=Object.create(V.prototype);_0(V,z);z.from=function(A,G,X){if(typeof A==="number")throw TypeError("Argument must not be a number");return V(A,G,X)};z.alloc=function(A,G,X){if(typeof A!=="number")throw TypeError("Argument must be a number");var L=V(A);if(G!==void 0)if(typeof X==="string")L.fill(G,X);else L.fill(G);else L.fill(0);return L};z.allocUnsafe=function(A){if(typeof A!=="number")throw TypeError("Argument must be a number");return V(A)};z.allocUnsafeSlow=function(A){if(typeof A!=="number")throw TypeError("Argument must be a number");return l.SlowBuffer(A)}});var R0=P((wA,P0)=>{var d=M("fs"),HA=M("path"),JA=Z0(),KA=p(),v0=y(),O=null,C0=M0().Buffer,i=1024;function QA(){}function WA(A,G,X){if(G.fd)return X(null,G.fd);d.open(A,"r",X)}function YA(A){if(A.fd)d.close(A.fd,QA)}function T0(A,G,X){let L=!1;if(typeof G==="function")X=G,G=C0.alloc(i),L=!0;d.read(A,G,0,i,0,function(J,H,K){if(J){X(J);return}let Y=C0.concat([G,K],L?H:G.length+H);if(H===i){T0(A,Y,X);return}X(null,G)})}function D0(A,G,X){let L=v0.get(A,G.maxage),J=!1;if(L===void 0)J=!0,L={};WA(HA.join("/proc",""+A,"stat"),L,function(H,K){if(H){if(H.code==="ENOENT")H.message="No matching pid found";return X(H,null)}if(H)return X(H);T0(K,function(Y,$){if(Y)return X(Y);let Q=$.toString("utf8"),N=Date.now(),U=Q.lastIndexOf(")");Q=Q.substr(U+2).split(" ");let W={ppid:parseInt(Q[1]),utime:parseFloat(Q[11])*1000/O.clockTick,stime:parseFloat(Q[12])*1000/O.clockTick,cutime:parseFloat(Q[13])*1000/O.clockTick,cstime:parseFloat(Q[14])*1000/O.clockTick,start:parseFloat(Q[19])*1000/O.clockTick,rss:parseFloat(Q[21]),uptime:O.uptime*1000,fd:K},q=W.rss*O.pageSize,Z=G.childrens?W.cutime+W.cstime:0,F=W.stime-(L.stime||0)+W.utime-(L.utime||0)+Z,v=Math.abs(L.uptime!==void 0?W.uptime-L.uptime:W.start-W.uptime),C=v>0?F/v*100:0;if(v0.set(A,W,G.maxage,YA),J)return D0(A,G,X);return X(null,{cpu:C,memory:q,ctime:W.utime+W.stime,elapsed:W.uptime-W.start,timestamp:N,pid:A,ppid:W.ppid})})})}function $A(A,G,X){JA(O,function(L,J){if(L)return X(L);O=J;let H={};A.forEach(function(K,Y){H[K]=function($){D0(K,G,$)}}),KA(H,{graceful:!0},X)})}P0.exports=$A});var S0=P((zA,E0)=>{var V0=M("os"),NA=b(),I0=y();function UA(A){let G=A.substring(0,4),X=A.substring(4,6),L=A.substring(6,8),J=A.substring(8,10),H=A.substring(10,12),K=A.substring(12,14),Y=A.substring(15,21),$=A.substring(21,22),Q=parseInt(A.substring(22,25),10),N=Math.floor(Q/60),U=Q%60;return new Date(G+"-"+X+"-"+L+"T"+J+":"+H+":"+K+"."+Y+$+(N>9?N:"0"+N)+(U>9?U:"0"+U))}function O0(A,G,X){let L="ProcessId="+A[0];for(let H=1;H<A.length;H++)L+=" or ProcessId="+A[H];let J=["PROCESS","where",'"'+L+'"',"get","CreationDate,KernelModeTime,ParentProcessId,ProcessId,UserModeTime,WorkingSetSize"];NA("wmic",J,{windowsHide:!0,windowsVerbatimArguments:!0},function(H,K,Y){if(H){if(H.message.indexOf("No Instance(s) Available.")!==-1){let W=Error("No matching pid found");return W.code="ENOENT",X(W)}return X(H)}if(Y!==0)return X(Error("pidusage wmic command exited with code "+Y));let $=Date.now(),Q=Math.floor(V0.uptime()||$/1000);K=K.split(V0.EOL);let N=!1,U={};for(let W=1;W<K.length;W++){let q=K[W].trim().split(/\s+/);if(!q||q.length!==6)continue;let Z=UA(q[0]),F=parseInt(q[2],10),v=parseInt(q[3],10),C=Math.round(parseInt(q[1],10)/1e4),T=Math.round(parseInt(q[4],10)/1e4),I=parseInt(q[5],10),D=I0.get(v,G.maxage);if(D===void 0)N=!0,D={ctime:C+T,uptime:Q};let u=(C+T-D.ctime)/1000,S=Q-D.uptime,m=S>0?u/S*100:0;I0.set(v,{ctime:T+C,uptime:Q},G.maxage),U[v]={cpu:m,memory:I,ppid:F,pid:v,ctime:T+C,elapsed:$-Z.getTime(),timestamp:$}}if(N)return O0(A,G,function(W,q){if(W)return X(W);X(null,Object.assign(U,q))});X(null,U)})}E0.exports=O0});var y0=P((BA,B0)=>{var j0=M("os"),qA=b(),w0=y();function ZA(A){let G=A.substring(0,4),X=A.substring(4,6),L=A.substring(6,8),J=A.substring(8,10),H=A.substring(10,12),K=A.substring(12,14),Y=A.substring(15,21),$=A.substring(21,22),Q=parseInt(A.substring(22,25),10),N=Math.floor(Q/60),U=Q%60;return new Date(G+"-"+X+"-"+L+"T"+J+":"+H+":"+K+"."+Y+$+(N>9?N:"0"+N)+(U>9?U:"0"+U))}function z0(A,G,X){let L="ProcessId="+A[0];for(let K=1;K<A.length;K++)L+=" or ProcessId="+A[K];let J="CreationDate,KernelModeTime,ParentProcessId,ProcessId,UserModeTime,WorkingSetSize",H=["win32_process","-Filter","'"+L+"'","| select "+J,"| format-table"];qA("gwmi",H,{windowsHide:!0,windowsVerbatimArguments:!0,shell:"powershell.exe"},function(K,Y,$){if(K){if(K.message.indexOf("No Instance(s) Available.")!==-1){let Z=Error("No matching pid found");return Z.code="ENOENT",X(Z)}return X(K)}if($!==0)return X(Error("pidusage gwmi command exited with code "+$));let Q=Date.now(),N=Math.floor(j0.uptime()||Q/1000);Y=Y.split(j0.EOL).slice(1);let U=Y.findIndex((Z)=>!!Z);if(Y=Y.slice(U+2),!Y.length){let Z=Error("No matching pid found");return Z.code="ENOENT",X(Z)}let W=!1,q={};for(let Z=0;Z<Y.length;Z++){let F=Y[Z].trim().split(/\s+/);if(!F||F.length===1)continue;let v=ZA(F[0]),C=parseInt(F[2],10),T=parseInt(F[3],10),I=Math.round(parseInt(F[1],10)/1e4),D=Math.round(parseInt(F[4],10)/1e4),u=parseInt(F[5],10),S=w0.get(T,G.maxage);if(S===void 0)W=!0,S={ctime:I+D,uptime:N};let m=(I+D-S.ctime)/1000,s=N-S.uptime,m0=s>0?m/s*100:0;w0.set(T,{ctime:D+I,uptime:N},G.maxage),q[T]={cpu:m0,memory:u,ppid:C,pid:T,ctime:D+I,elapsed:Q-v.getTime(),timestamp:Q}}if(W)return z0(A,G,function(Z,F){if(Z)return X(Z);X(null,Object.assign(q,F))});X(null,q)})}B0.exports=z0});var h0=P((yA,g0)=>{var _A=M("fs"),k0=M("os"),FA=M("child_process").spawn,o={ps:()=>W0(),procfile:()=>R0(),wmic:()=>S0(),gwmi:()=>y0()},MA={aix:"ps",os400:"ps",android:"procfile",alpine:"procfile",darwin:"ps",freebsd:"ps",os390:"ps",linux:"procfile",netbsd:"procfile",openbsd:"ps",sunos:"ps",win:"wmic"},k=k0.platform();if(_A.existsSync("/etc/alpine-release"))k="alpine";if(k.match(/^win/))k="win";var x0;try{x0=o[MA[k]]()}catch(A){}function vA(A,G,X){let L=x0;if(k!=="win"&&G.usePs===!0)L=o.ps();if(k==="win"){let H;try{H=FA("wmic",function(K){if(K)throw Error(K)})}catch(K){L=o.gwmi()}finally{if(H)H.kill()}}if(L===void 0)return X(Error(k0.platform()+" is not supported yet, please open an issue (https://github.com/soyuka/pidusage)"));let J=!1;if(!Array.isArray(A))J=!0,A=[A];if(A.length===0)return X(TypeError("You must provide at least one pid"));for(let H=0;H<A.length;H++)if(A[H]=parseInt(A[H],10),isNaN(A[H])||A[H]<0)return X(TypeError("One of the pids provided is invalid"));L(A,G,function(H,K){if(H)return X(H);if(J)X(null,K[A[0]]);else X(null,K)})}g0.exports=vA});var f0=P((kA,r)=>{var b0=h0();function CA(A,G,X){if(typeof G==="function")X=G,G={};if(G===void 0)G={};if(G=Object.assign({usePs:/^true$/i.test(process.env.PIDUSAGE_USE_PS),maxage:process.env.PIDUSAGE_MAXAGE},G),typeof X==="function"){b0(A,G,X);return}return new Promise(function(L,J){b0(A,G,function(H,K){if(H)return J(H);L(K)})})}r.exports=CA;r.exports.clear=y().clear});var e=h(c0(),1);var _=h(t(),1);class A0 extends e.Component{state={hasError:!1,error:null,errorInfo:null};static getDerivedStateFromError(A){return{hasError:!0,error:A}}componentDidCatch(A,G){let{name:X="ErrorBoundary"}=this.props;console.error(`
1
+ import{Ae as j,Be as E,Ke as t,ye as c0}from"./chunk-a90fm6gz.js";import{hf as g}from"./chunk-wabmqprd.js";import{pq as h,qq as P,tq as M}from"./chunk-dcs1r9as.js";var b=P((IA,X0)=>{var n0=M("child_process").spawn;function p0(A,G,X,L){if(typeof X==="function")L=X,X=void 0;let J=!1,H=n0(A,G,X),K="",Y="";H.stdout.on("data",function($){K+=$.toString()}),H.stderr.on("data",function($){Y+=$.toString()}),H.on("error",function($){if(J)return;J=!0,L(Error($))}),H.on("close",function($,Q){if(J)return;if(J=!0,Y)return L(Error(Y));L(null,K,$)})}X0.exports=p0});var y=P((OA,L0)=>{var B={},w={},x={},n=0,R=null;function a0(A,G){if(G<=0)return;if(w[A]!==void 0)B[A]=Date.now()+(G||60000);return w[A]}function i0(A,G,X,L){if(G===void 0||X<=0)return;if(B[A]=Date.now()+(X||60000),w[A]===void 0)n++,G0(X);if(w[A]=G,L)x[A]=L}function G0(A){if(n>0){if(R===null){if(R=setInterval(d0,(A||60000)/2),typeof R.unref==="function")R.unref()}return}if(R!==null)clearInterval(R),R=null}function d0(){let A=Date.now(),G=Object.keys(B);for(let X=0;X<G.length;X++){let L=G[X];if(B[L]<A){if(n--,x[L])x[L](w[L]);delete w[L],delete B[L],delete x[L]}}G0()}function c(A){for(let G in A)delete A[G]}function o0(){if(R!==null)clearInterval(R),R=null;c(w),c(B),c(x)}L0.exports={get:a0,set:i0,clear:o0}});var W0=P((EA,Q0)=>{var K0=M("os"),r0=b(),H0=y(),f=K0.platform();function J0(A,G){let X=0,L=A.split(/-|:|\./),J=L.length-1;if(J>=0&&G&&f==="darwin")X+=parseInt(L[J--],10)*10;if(J>=0)X+=parseInt(L[J--],10)*1000;if(J>=0)X+=parseInt(L[J--],10)*60000;if(J>=0)X+=parseInt(L[J--],10)*3600000;if(J>=0)X+=parseInt(L[J--],10)*86400000;return X}function s0(A,G,X){let L=A.join(","),J=["-o","etime,pid,ppid,pcpu,rss,time","-p",L];if(f==="aix"||f==="os400")J=["-o","etime,pid,ppid,pcpu,rssize,time","-p",L];r0("ps",J,function(H,K,Y){if(H){if(f==="os390"&&/no matching processes found/.test(H))H=Error("No matching pid found"),H.code="ENOENT";return X(H)}if(Y===1){let N=Error("No matching pid found");return N.code="ENOENT",X(N)}if(Y!==0)return X(Error("pidusage ps command exited with code "+Y));let $=Date.now();K=K.split(K0.EOL);let Q={};for(let N=1;N<K.length;N++){let U=K[N].trim().split(/\s+/);if(!U||U.length!==6)continue;let W=parseInt(U[1],10),q=H0.get(W,G.maxage);if(q===void 0)q={};let Z=parseInt(U[2],10),F=parseInt(U[4],10)*1024,v=J0(U[0]),C=J0(U[5],!0),T=C-(q.ctime||0),I=Math.abs(q.elapsed!==void 0?v-q.elapsed:v),D=I>0?T/I*100:0;Q[W]={cpu:D,memory:F,ppid:Z,pid:W,ctime:C,elapsed:v,timestamp:$},H0.set(W,Q[W],G.maxage)}X(null,Q)})}Q0.exports=s0});var p=P((SA,Y0)=>{function t0(A,G,X){if(typeof G==="function")X=G,G={};let L;if(!Array.isArray(A))L=Object.keys(A);let J=L?L.length:A.length,H=J,K=L?{}:[];function Y($,Q,N){if(K[$]=N,--H===0||Q&&!G.graceful){if(G.graceful&&Q&&J>1)Q=null;X&&X(Q,K),X=null}}if(L)L.forEach(function($){A[$](function(Q,N){Y($,Q,N)})});else A.forEach(function($,Q){$(function(N,U){Y(Q,N,U)})})}Y0.exports=t0});var Z0=P((jA,q0)=>{var e0=M("os"),AA=M("fs"),XA=M("child_process").exec,U0=p();function GA(A,G){if(A!==null){$0(function(X,L){if(X)return G(X);A.uptime=L,G(null,A)});return}U0([LA,$0],function(X,L){if(X)return G(X);A={clockTick:L[0].clockTick,pageSize:L[0].pageSize,uptime:L[1]},G(null,A)})}q0.exports=GA;function $0(A){AA.readFile("/proc/uptime","utf8",function(G,X){if(G||X===void 0){if(!process.env.PIDUSAGE_SILENT)console.warn("[pidusage] We couldn't find uptime from /proc/uptime, using os.uptime() value");return A(null,e0.uptime()||new Date/1000)}return A(null,parseFloat(X.split(" ")[0]))})}function LA(A){U0([function(X){N0("CLK_TCK",{default:100},X)},function(X){N0("PAGESIZE",{default:4096},X)}],function(G,X){if(G)return A(G);A(null,{clockTick:X[0],pageSize:X[1]})})}function N0(A,G,X){if(typeof G==="function")X=G,G={default:""};XA("getconf "+A,function(L,J,H){if(L!==null){if(!process.env.PIDUSAGE_SILENT)console.error('Error while calling "getconf '+A+'"',L);return X(null,G.default)}if(J=parseInt(J),!isNaN(J))return X(null,J);return X(null,G.default)})}});var M0=P((a,F0)=>{/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */var l=M("buffer"),V=l.Buffer;function _0(A,G){for(var X in A)G[X]=A[X]}if(V.from&&V.alloc&&V.allocUnsafe&&V.allocUnsafeSlow)F0.exports=l;else _0(l,a),a.Buffer=z;function z(A,G,X){return V(A,G,X)}z.prototype=Object.create(V.prototype);_0(V,z);z.from=function(A,G,X){if(typeof A==="number")throw TypeError("Argument must not be a number");return V(A,G,X)};z.alloc=function(A,G,X){if(typeof A!=="number")throw TypeError("Argument must be a number");var L=V(A);if(G!==void 0)if(typeof X==="string")L.fill(G,X);else L.fill(G);else L.fill(0);return L};z.allocUnsafe=function(A){if(typeof A!=="number")throw TypeError("Argument must be a number");return V(A)};z.allocUnsafeSlow=function(A){if(typeof A!=="number")throw TypeError("Argument must be a number");return l.SlowBuffer(A)}});var R0=P((wA,P0)=>{var d=M("fs"),HA=M("path"),JA=Z0(),KA=p(),v0=y(),O=null,C0=M0().Buffer,i=1024;function QA(){}function WA(A,G,X){if(G.fd)return X(null,G.fd);d.open(A,"r",X)}function YA(A){if(A.fd)d.close(A.fd,QA)}function T0(A,G,X){let L=!1;if(typeof G==="function")X=G,G=C0.alloc(i),L=!0;d.read(A,G,0,i,0,function(J,H,K){if(J){X(J);return}let Y=C0.concat([G,K],L?H:G.length+H);if(H===i){T0(A,Y,X);return}X(null,G)})}function D0(A,G,X){let L=v0.get(A,G.maxage),J=!1;if(L===void 0)J=!0,L={};WA(HA.join("/proc",""+A,"stat"),L,function(H,K){if(H){if(H.code==="ENOENT")H.message="No matching pid found";return X(H,null)}if(H)return X(H);T0(K,function(Y,$){if(Y)return X(Y);let Q=$.toString("utf8"),N=Date.now(),U=Q.lastIndexOf(")");Q=Q.substr(U+2).split(" ");let W={ppid:parseInt(Q[1]),utime:parseFloat(Q[11])*1000/O.clockTick,stime:parseFloat(Q[12])*1000/O.clockTick,cutime:parseFloat(Q[13])*1000/O.clockTick,cstime:parseFloat(Q[14])*1000/O.clockTick,start:parseFloat(Q[19])*1000/O.clockTick,rss:parseFloat(Q[21]),uptime:O.uptime*1000,fd:K},q=W.rss*O.pageSize,Z=G.childrens?W.cutime+W.cstime:0,F=W.stime-(L.stime||0)+W.utime-(L.utime||0)+Z,v=Math.abs(L.uptime!==void 0?W.uptime-L.uptime:W.start-W.uptime),C=v>0?F/v*100:0;if(v0.set(A,W,G.maxage,YA),J)return D0(A,G,X);return X(null,{cpu:C,memory:q,ctime:W.utime+W.stime,elapsed:W.uptime-W.start,timestamp:N,pid:A,ppid:W.ppid})})})}function $A(A,G,X){JA(O,function(L,J){if(L)return X(L);O=J;let H={};A.forEach(function(K,Y){H[K]=function($){D0(K,G,$)}}),KA(H,{graceful:!0},X)})}P0.exports=$A});var S0=P((zA,E0)=>{var V0=M("os"),NA=b(),I0=y();function UA(A){let G=A.substring(0,4),X=A.substring(4,6),L=A.substring(6,8),J=A.substring(8,10),H=A.substring(10,12),K=A.substring(12,14),Y=A.substring(15,21),$=A.substring(21,22),Q=parseInt(A.substring(22,25),10),N=Math.floor(Q/60),U=Q%60;return new Date(G+"-"+X+"-"+L+"T"+J+":"+H+":"+K+"."+Y+$+(N>9?N:"0"+N)+(U>9?U:"0"+U))}function O0(A,G,X){let L="ProcessId="+A[0];for(let H=1;H<A.length;H++)L+=" or ProcessId="+A[H];let J=["PROCESS","where",'"'+L+'"',"get","CreationDate,KernelModeTime,ParentProcessId,ProcessId,UserModeTime,WorkingSetSize"];NA("wmic",J,{windowsHide:!0,windowsVerbatimArguments:!0},function(H,K,Y){if(H){if(H.message.indexOf("No Instance(s) Available.")!==-1){let W=Error("No matching pid found");return W.code="ENOENT",X(W)}return X(H)}if(Y!==0)return X(Error("pidusage wmic command exited with code "+Y));let $=Date.now(),Q=Math.floor(V0.uptime()||$/1000);K=K.split(V0.EOL);let N=!1,U={};for(let W=1;W<K.length;W++){let q=K[W].trim().split(/\s+/);if(!q||q.length!==6)continue;let Z=UA(q[0]),F=parseInt(q[2],10),v=parseInt(q[3],10),C=Math.round(parseInt(q[1],10)/1e4),T=Math.round(parseInt(q[4],10)/1e4),I=parseInt(q[5],10),D=I0.get(v,G.maxage);if(D===void 0)N=!0,D={ctime:C+T,uptime:Q};let u=(C+T-D.ctime)/1000,S=Q-D.uptime,m=S>0?u/S*100:0;I0.set(v,{ctime:T+C,uptime:Q},G.maxage),U[v]={cpu:m,memory:I,ppid:F,pid:v,ctime:T+C,elapsed:$-Z.getTime(),timestamp:$}}if(N)return O0(A,G,function(W,q){if(W)return X(W);X(null,Object.assign(U,q))});X(null,U)})}E0.exports=O0});var y0=P((BA,B0)=>{var j0=M("os"),qA=b(),w0=y();function ZA(A){let G=A.substring(0,4),X=A.substring(4,6),L=A.substring(6,8),J=A.substring(8,10),H=A.substring(10,12),K=A.substring(12,14),Y=A.substring(15,21),$=A.substring(21,22),Q=parseInt(A.substring(22,25),10),N=Math.floor(Q/60),U=Q%60;return new Date(G+"-"+X+"-"+L+"T"+J+":"+H+":"+K+"."+Y+$+(N>9?N:"0"+N)+(U>9?U:"0"+U))}function z0(A,G,X){let L="ProcessId="+A[0];for(let K=1;K<A.length;K++)L+=" or ProcessId="+A[K];let J="CreationDate,KernelModeTime,ParentProcessId,ProcessId,UserModeTime,WorkingSetSize",H=["win32_process","-Filter","'"+L+"'","| select "+J,"| format-table"];qA("gwmi",H,{windowsHide:!0,windowsVerbatimArguments:!0,shell:"powershell.exe"},function(K,Y,$){if(K){if(K.message.indexOf("No Instance(s) Available.")!==-1){let Z=Error("No matching pid found");return Z.code="ENOENT",X(Z)}return X(K)}if($!==0)return X(Error("pidusage gwmi command exited with code "+$));let Q=Date.now(),N=Math.floor(j0.uptime()||Q/1000);Y=Y.split(j0.EOL).slice(1);let U=Y.findIndex((Z)=>!!Z);if(Y=Y.slice(U+2),!Y.length){let Z=Error("No matching pid found");return Z.code="ENOENT",X(Z)}let W=!1,q={};for(let Z=0;Z<Y.length;Z++){let F=Y[Z].trim().split(/\s+/);if(!F||F.length===1)continue;let v=ZA(F[0]),C=parseInt(F[2],10),T=parseInt(F[3],10),I=Math.round(parseInt(F[1],10)/1e4),D=Math.round(parseInt(F[4],10)/1e4),u=parseInt(F[5],10),S=w0.get(T,G.maxage);if(S===void 0)W=!0,S={ctime:I+D,uptime:N};let m=(I+D-S.ctime)/1000,s=N-S.uptime,m0=s>0?m/s*100:0;w0.set(T,{ctime:D+I,uptime:N},G.maxage),q[T]={cpu:m0,memory:u,ppid:C,pid:T,ctime:D+I,elapsed:Q-v.getTime(),timestamp:Q}}if(W)return z0(A,G,function(Z,F){if(Z)return X(Z);X(null,Object.assign(q,F))});X(null,q)})}B0.exports=z0});var h0=P((yA,g0)=>{var _A=M("fs"),k0=M("os"),FA=M("child_process").spawn,o={ps:()=>W0(),procfile:()=>R0(),wmic:()=>S0(),gwmi:()=>y0()},MA={aix:"ps",os400:"ps",android:"procfile",alpine:"procfile",darwin:"ps",freebsd:"ps",os390:"ps",linux:"procfile",netbsd:"procfile",openbsd:"ps",sunos:"ps",win:"wmic"},k=k0.platform();if(_A.existsSync("/etc/alpine-release"))k="alpine";if(k.match(/^win/))k="win";var x0;try{x0=o[MA[k]]()}catch(A){}function vA(A,G,X){let L=x0;if(k!=="win"&&G.usePs===!0)L=o.ps();if(k==="win"){let H;try{H=FA("wmic",function(K){if(K)throw Error(K)})}catch(K){L=o.gwmi()}finally{if(H)H.kill()}}if(L===void 0)return X(Error(k0.platform()+" is not supported yet, please open an issue (https://github.com/soyuka/pidusage)"));let J=!1;if(!Array.isArray(A))J=!0,A=[A];if(A.length===0)return X(TypeError("You must provide at least one pid"));for(let H=0;H<A.length;H++)if(A[H]=parseInt(A[H],10),isNaN(A[H])||A[H]<0)return X(TypeError("One of the pids provided is invalid"));L(A,G,function(H,K){if(H)return X(H);if(J)X(null,K[A[0]]);else X(null,K)})}g0.exports=vA});var f0=P((kA,r)=>{var b0=h0();function CA(A,G,X){if(typeof G==="function")X=G,G={};if(G===void 0)G={};if(G=Object.assign({usePs:/^true$/i.test(process.env.PIDUSAGE_USE_PS),maxage:process.env.PIDUSAGE_MAXAGE},G),typeof X==="function"){b0(A,G,X);return}return new Promise(function(L,J){b0(A,G,function(H,K){if(H)return J(H);L(K)})})}r.exports=CA;r.exports.clear=y().clear});var e=h(c0(),1);var _=h(t(),1);class A0 extends e.Component{state={hasError:!1,error:null,errorInfo:null};static getDerivedStateFromError(A){return{hasError:!0,error:A}}componentDidCatch(A,G){let{name:X="ErrorBoundary"}=this.props;console.error(`
2
2
  ========================================`),console.error(`[${X}] React Error Caught`),console.error("========================================"),console.error("Error:",A.message),console.error("Stack:",A.stack),console.error("Component Stack:",G.componentStack),console.error(`========================================
3
- `),import("./chunk-ns6tjjkq.js").then(({logAgentError:L})=>{L(X,A)}).catch((L)=>{console.warn("Failed to log React error:",L)}),this.setState({errorInfo:G})}render(){let{hasError:A,error:G,errorInfo:X}=this.state,{name:L="ErrorBoundary",fallback:J,children:H}=this.props;if(A){if(J)return _.jsxDEV(_.Fragment,{children:J},void 0,!1,void 0,this);return _.jsxDEV(j,{flexDirection:"column",padding:1,borderStyle:"double",borderColor:"red",children:[_.jsxDEV(j,{marginBottom:1,children:_.jsxDEV(E,{color:"red",bold:!0,children:["✗ [",L,"] Render Error"]},void 0,!0,void 0,this)},void 0,!1,void 0,this),_.jsxDEV(j,{marginBottom:1,children:_.jsxDEV(E,{color:"red",children:["Message: ",G?.message||"Unknown error"]},void 0,!0,void 0,this)},void 0,!1,void 0,this),G?.stack&&_.jsxDEV(j,{flexDirection:"column",marginBottom:1,children:[_.jsxDEV(E,{color:"yellow",bold:!0,children:"Stack Trace:"},void 0,!1,void 0,this),_.jsxDEV(E,{color:"gray",children:G.stack.split(`
3
+ `),import("./chunk-fw3nrwpf.js").then(({logAgentError:L})=>{L(X,A)}).catch((L)=>{console.warn("Failed to log React error:",L)}),this.setState({errorInfo:G})}render(){let{hasError:A,error:G,errorInfo:X}=this.state,{name:L="ErrorBoundary",fallback:J,children:H}=this.props;if(A){if(J)return _.jsxDEV(_.Fragment,{children:J},void 0,!1,void 0,this);return _.jsxDEV(j,{flexDirection:"column",padding:1,borderStyle:"double",borderColor:"red",children:[_.jsxDEV(j,{marginBottom:1,children:_.jsxDEV(E,{color:"red",bold:!0,children:["✗ [",L,"] Render Error"]},void 0,!0,void 0,this)},void 0,!1,void 0,this),_.jsxDEV(j,{marginBottom:1,children:_.jsxDEV(E,{color:"red",children:["Message: ",G?.message||"Unknown error"]},void 0,!0,void 0,this)},void 0,!1,void 0,this),G?.stack&&_.jsxDEV(j,{flexDirection:"column",marginBottom:1,children:[_.jsxDEV(E,{color:"yellow",bold:!0,children:"Stack Trace:"},void 0,!1,void 0,this),_.jsxDEV(E,{color:"gray",children:G.stack.split(`
4
4
  `).slice(0,5).join(`
5
5
  `)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),X?.componentStack&&_.jsxDEV(j,{flexDirection:"column",children:[_.jsxDEV(E,{color:"yellow",bold:!0,children:"Component Stack:"},void 0,!1,void 0,this),_.jsxDEV(E,{color:"gray",dimColor:!0,children:X.componentStack.split(`
6
6
  `).slice(0,5).join(`
7
7
  `)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),_.jsxDEV(j,{marginTop:1,children:_.jsxDEV(E,{color:"blue",dimColor:!0,children:"Press Ctrl+C to exit"},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}return _.jsxDEV(_.Fragment,{children:H},void 0,!1,void 0,this)}}var VA=A0;var l0=h(f0(),1);class u0{async getProcessList(){let A=[];for(let[G,X]of g)try{let L=await l0.default(G);A.push({pid:G,command:X.command,startTime:X.startTime,duration:Date.now()-X.startTime,cpu:L.cpu,memory:L.memory,status:this.checkStatus(X)})}catch{A.push({pid:G,command:X.command,startTime:X.startTime,duration:Date.now()-X.startTime,cpu:0,memory:0,status:"stopped"})}return A}killProcess(A){let G=g.get(A);if(!G)return!1;return G.process.kill("SIGTERM"),g.delete(A),!0}getProcessOutput(A){let G=g.get(A);if(!G)return null;return{stdout:G.stdout.join(""),stderr:G.stderr.join("")}}checkStatus(A){try{return process.kill(A.process.pid,0),"running"}catch{return"stopped"}}}var gA=new u0;
8
- export{VA as f,gA as g};
8
+ export{VA as h,gA as i};
@@ -0,0 +1 @@
1
+ import{nq as a}from"./chunk-jb4yt88g.js";import"./chunk-k38fjqj7.js";import"./chunk-dcs1r9as.js";export{a as FileSystemSkillStore};
@@ -0,0 +1 @@
1
+ import{$ as b,$a as ba,$b as bb,$c as bc,$d as bd,Aa as C,Ab as Ca,Ac as Cb,Ad as Cc,Ba as D,Bb as Da,Bc as Db,Bd as Dc,Ca as E,Cb as Ea,Cc as Eb,Cd as Ec,Da as F,Db as Fa,Dc as Fb,Dd as Fc,Ea as G,Eb as Ga,Ec as Gb,Ed as Gc,Fa as H,Fb as Ha,Fc as Hb,Fd as Hc,Ga as I,Gb as Ia,Gc as Ib,Gd as Ic,Ha as J,Hb as Ja,Hc as Jb,Hd as Jc,Ia as K,Ib as Ka,Ic as Kb,Id as Kc,Ja as L,Jb as La,Jc as Lb,Jd as Lc,Ka as M,Kb as Ma,Kc as Mb,Kd as Mc,La as N,Lb as Na,Lc as Nb,Ld as Nc,Ma as O,Mb as Oa,Mc as Ob,Md as Oc,Na as P,Nb as Pa,Nc as Pb,Nd as Pc,Oa as Q,Ob as Qa,Oc as Qb,Od as Qc,Pa as R,Pb as Ra,Pc as Rb,Pd as Rc,Qa as S,Qb as Sa,Qc as Sb,Qd as Sc,Ra as T,Rb as Ta,Rc as Tb,Rd as Tc,Sa as U,Sb as Ua,Sc as Ub,Sd as Uc,Ta as V,Tb as Va,Tc as Vb,Td as Vc,Ua as W,Ub as Wa,Uc as Wb,Ud as Wc,Va as X,Vb as Xa,Vc as Xb,Vd as Xc,Wa as Y,Wb as Ya,Wc as Yb,Wd as Yc,Xa as Z,Xb as Za,Xc as Zb,Xd as Zc,Ya as _,Yb as _a,Yc as _b,Yd as _c,Za as $,Zb as $a,Zc as $b,Zd as $c,_ as a,_a as aa,_b as ab,_c as ac,_d as ad,aa as c,ab as ca,ac as cb,ad as cc,ae as cd,ba as d,bb as da,bc as db,bd as dc,be as dd,ca as e,cb as ea,cc as eb,cd as ec,ce as ed,da as f,db as fa,dc as fb,dd as fc,de as fd,ea as g,eb as ga,ec as gb,ed as gc,ee as gd,fa as h,fb as ha,fc as hb,fd as hc,fe as hd,ga as i,gb as ia,gc as ib,gd as ic,ge as id,ha as j,hb as ja,hc as jb,hd as jc,he as jd,ia as k,ib as ka,ic as kb,id as kc,ie as kd,ja as l,jb as la,jc as lb,jd as lc,je as ld,ka as m,kb as ma,kc as mb,kd as mc,ke as md,la as n,lb as na,lc as nb,ld as nc,le as nd,ma as o,mb as oa,mc as ob,md as oc,me as od,na as p,nb as pa,nc as pb,nd as pc,ne as pd,oa as q,ob as qa,oc as qb,od as qc,oe as qd,pa as r,pb as ra,pc as rb,pd as rc,pe as rd,qa as s,qb as sa,qc as sb,qd as sc,qe as sd,ra as t,rb as ta,rc as tb,rd as tc,re as td,sa as u,sb as ua,sc as ub,sd as uc,se as ud,ta as v,tb as va,tc as vb,td as vc,te as vd,ua as w,ub as wa,uc as wb,ud as wc,ue as wd,va as x,vb as xa,vc as xb,vd as xc,wa as y,wb as ya,wc as yb,wd as yc,xa as z,xb as za,xc as zb,xd as zc,ya as A,yb as Aa,yc as Ab,yd as Ac,za as B,zb as Ba,zc as Bb,zd as Bc}from"./chunk-hsev32dg.js";import"./chunk-dcs1r9as.js";export{zc as validateTransactionSettings,Mc as sql,vd as replaceWithNoncontingentExpression,wd as pushValueIntoList,R as logOnce,D as isOperator,m as isOperationNodeSource,za as isNoResultErrorConstructor,Fc as isKyselyProps,H as isJSONOperator,n as isExpression,M as isDynamicReferenceBuilder,Cc as isCompilable,F as isComparisonOperator,zb as isColumnDataType,E as isBinaryOperator,G as isArithmeticOperator,o as isAliasedExpression,Eb as isAliasedDynamicTableBuilder,Bb as expressionBuilder,hb as createSelectQueryBuilder,Lc as createRawBuilder,Pa as createQueryId,mb as createFunctionModule,Ra as WithSchemaPlugin,Oa as WithNode,ia as WhereNode,Xa as WheneableMergeQueryBuilder,la as WhenNode,ta as ValuesNode,X as ValueNode,W as ValueListNode,ga as UsingNode,Ka as UpdateResult,fa as UpdateQueryNode,La as UpdateQueryBuilder,Tb as UniqueConstraintNode,nb as UnaryOperationNode,A as UNARY_OPERATORS,z as UNARY_FILTER_OPERATORS,xb as TupleNode,vb as TraversedJSONPathBuilder,Hc as TransactionBuilder,Ec as Transaction,Ea as TopNode,l as TableNode,yc as TRANSACTION_ISOLATION_LEVELS,xc as TRANSACTION_ACCESS_MODES,Tc as SqliteQueryCompiler,_c as SqliteIntrospector,Sc as SqliteDriver,ad as SqliteDialect,$c as SqliteAdapter,wc as SingleConnectionProvider,bb as SetOperationNode,sa as SelectionNode,pa as SelectQueryNode,p as SelectModifierNode,J as SelectAllNode,g as SchemableIdentifierNode,sc as SchemaModule,ja as ReturningNode,$b as RenameConstraintNode,Ib as RenameColumnNode,qc as RefreshMaterializedViewNode,rc as RefreshMaterializedViewBuilder,Lb as ReferencesNode,K as ReferenceNode,O as RawNode,oa as QueryNode,_a as QueryCreator,V as PrimitiveValueListNode,Yb as PrimaryKeyConstraintNode,Zb as PrimaryConstraintNode,bd as PostgresQueryCompiler,cd as PostgresIntrospector,jd as PostgresDriver,kd as PostgresDialect,dd as PostgresAdapter,_ as PartitionByNode,ra as PartitionByItemNode,td as ParseJSONResultsPlugin,Y as ParensNode,$ as OverNode,na as OutputNode,Z as OrderByNode,N as OrderByItemNode,Q as OrderByItemBuilder,eb as OrWrapper,r as OrNode,Fa as OrActionNode,C as OperatorNode,Nc as OperationNodeVisitor,Qa as OperationNodeTransformer,s as OnNode,wa as OnDuplicateKeyNode,Da as OnConflictUpdateBuilder,Aa as OnConflictNode,Ca as OnConflictDoNothingBuilder,Ba as OnConflictBuilder,$a as OffsetNode,B as OPERATORS,Kb as ON_MODIFY_FOREIGN_ACTIONS,e as ON_COMMIT_ACTIONS,Za as NotMatchedThenableMergeQueryBuilder,Ta as NoopQueryExecutor,ya as NoResultError,Yc as NO_MIGRATIONS,Ua as NOOP_QUERY_EXECUTOR,fd as MysqlQueryCompiler,gd as MysqlIntrospector,ed as MysqlDriver,id as MysqlDialect,hd as MysqlAdapter,od as MssqlQueryCompiler,nd as MssqlIntrospector,md as MssqlDriver,pd as MssqlDialect,ld as MssqlAdapter,Pb as ModifyColumnNode,Zc as Migrator,Va as MergeResult,ma as MergeQueryNode,Wa as MergeQueryBuilder,Ya as MatchedThenableMergeQueryBuilder,Sa as MatchedNode,Xc as MIGRATION_LOCK_ID,Bc as Log,ea as ListNode,Ia as LimitNode,Ac as LOG_LEVELS,Dc as Kysely,t as JoinNode,qa as JoinBuilder,x as JSON_OPERATORS,S as JSONReferenceNode,U as JSONPathNode,tb as JSONPathLegNode,ub as JSONPathBuilder,T as JSONOperatorChainNode,xa as InsertResult,da as InsertQueryNode,Ga as InsertQueryBuilder,b as IdentifierNode,ca as HavingNode,ud as HandleEmptyInListsPlugin,ba as GroupByNode,ab as GroupByItemNode,Mb as GeneratedNode,jb as FunctionNode,aa as FromNode,Qb as ForeignKeyConstraintNode,Rb as ForeignKeyConstraintBuilder,qd as FileMigrationProvider,gb as FetchNode,cb as ExpressionWrapper,ka as ExplainNode,Cb as DynamicTableBuilder,L as DynamicReferenceBuilder,tc as DynamicModule,Qc as DummyDriver,kc as DropViewNode,lc as DropViewBuilder,oc as DropTypeNode,pc as DropTypeBuilder,j as DropTableNode,hc as DropTableBuilder,i as DropSchemaNode,gc as DropSchemaBuilder,h as DropIndexNode,fc as DropIndexBuilder,Ub as DropConstraintNode,Hb as DropColumnNode,Rc as DialectAdapterBase,Ha as DeleteResult,ha as DeleteQueryNode,Ja as DeleteQueryBuilder,Nb as DefaultValueNode,vc as DefaultQueryExecutor,Oc as DefaultQueryCompiler,ua as DefaultInsertValueNode,uc as DefaultConnectionProvider,sd as DeduplicateJoinsPlugin,yb as DataTypeNode,Uc as DEFAULT_MIGRATION_TABLE,Vc as DEFAULT_MIGRATION_LOCK_TABLE,Wc as DEFAULT_ALLOW_UNORDERED_MIGRATIONS,ic as CreateViewNode,jc as CreateViewBuilder,mc as CreateTypeNode,nc as CreateTypeBuilder,f as CreateTableNode,ec as CreateTableBuilder,d as CreateSchemaNode,dc as CreateSchemaBuilder,c as CreateIndexNode,cc as CreateIndexBuilder,Ic as ControlledTransactionBuilder,Jc as ControlledTransaction,Gc as ConnectionBuilder,Pc as CompiledQuery,Na as CommonTableExpressionNode,Ma as CommonTableExpressionNameNode,Kc as Command,va as ColumnUpdateNode,I as ColumnNode,Gb as ColumnDefinitionNode,Ob as ColumnDefinitionBuilder,P as CollateNode,Jb as CheckConstraintNode,Ab as CastNode,rb as CaseWhenBuilder,qb as CaseThenBuilder,ob as CaseNode,sb as CaseEndBuilder,pb as CaseBuilder,rd as CamelCasePlugin,v as COMPARISON_OPERATORS,u as BinaryOperationNode,y as BINARY_OPERATORS,fb as AndWrapper,q as AndNode,Xb as AlteredColumnBuilder,a as AlterTableNode,bc as AlterTableColumnAlteringBuilder,ac as AlterTableBuilder,Vb as AlterColumnNode,Wb as AlterColumnBuilder,wb as AliasedJSONPathBuilder,db as AliasedExpressionWrapper,Db as AliasedDynamicTableBuilder,lb as AliasedAggregateFunctionBuilder,k as AliasNode,ib as AggregateFunctionNode,kb as AggregateFunctionBuilder,_b as AddIndexNode,Sb as AddConstraintNode,Fb as AddColumnNode,w as ARITHMETIC_OPERATORS};