@shumai-one/shumai-agent 0.2.0 → 0.2.1

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 (94) hide show
  1. package/bin/chunk-09wm68m9.js +3 -0
  2. package/bin/{chunk-4vs22x1t.js → chunk-0bdvgych.js} +3 -3
  3. package/bin/{chunk-7mtn96c1.js → chunk-22m0y0fs.js} +1 -1
  4. package/bin/{chunk-tf62s7rv.js → chunk-2dm6jcp4.js} +1 -1
  5. package/bin/chunk-2gefycgt.js +3 -0
  6. package/bin/chunk-2t47accr.js +3 -0
  7. package/bin/{chunk-092vhedy.js → chunk-2w4hxpqr.js} +1 -1
  8. package/bin/chunk-3nbbx6x7.js +3 -0
  9. package/bin/{chunk-5h8q2pjz.js → chunk-5190gazn.js} +1 -1
  10. package/bin/{chunk-a44n1b4f.js → chunk-633f49yv.js} +1 -1
  11. package/bin/chunk-6k9j5xzb.js +3 -0
  12. package/bin/chunk-6xzgjgh4.js +2 -0
  13. package/bin/{chunk-edhaz54y.js → chunk-74zq8r33.js} +1 -1
  14. package/bin/chunk-7m8a8vhh.js +2 -0
  15. package/bin/{chunk-9pfvgwrc.js → chunk-7qwd1bfq.js} +1 -1
  16. package/bin/{chunk-etda2aqf.js → chunk-85swzdas.js} +1 -1
  17. package/bin/{chunk-196gwx9k.js → chunk-98fyskbt.js} +1 -1
  18. package/bin/{chunk-1xnqw6rd.js → chunk-98zfcdae.js} +2 -2
  19. package/bin/chunk-aw167aaq.js +8 -0
  20. package/bin/chunk-b35kbsh7.js +3 -0
  21. package/bin/chunk-b77c23jm.js +2 -0
  22. package/bin/chunk-ba518ea4.js +12 -0
  23. package/bin/{chunk-vhfqr7n5.js → chunk-bq4j07gf.js} +2 -2
  24. package/bin/chunk-bwvq03ga.js +12 -0
  25. package/bin/chunk-c55dg49y.js +7 -0
  26. package/bin/{chunk-n7qv08c3.js → chunk-ceg8d25c.js} +1 -1
  27. package/bin/{chunk-ej5ed8pg.js → chunk-cpmyq7y4.js} +1 -1
  28. package/bin/chunk-d5rvr87v.js +3 -0
  29. package/bin/{chunk-9ea4dgez.js → chunk-db5dg26j.js} +2 -2
  30. package/bin/chunk-dgxfdzaf.js +4 -0
  31. package/bin/chunk-dja3b5qj.js +8 -0
  32. package/bin/{chunk-gj059qs2.js → chunk-e0mazw0r.js} +1 -1
  33. package/bin/chunk-e0np0fc1.js +2 -0
  34. package/bin/chunk-epkgpyvw.js +3 -0
  35. package/bin/{chunk-q0f0cac4.js → chunk-fvmb8en4.js} +1 -1
  36. package/bin/chunk-fy6ak60v.js +2 -0
  37. package/bin/{chunk-gehabk8h.js → chunk-geqqct8k.js} +1 -1
  38. package/bin/{chunk-en6m9d5x.js → chunk-gx72kpkb.js} +1 -1
  39. package/bin/{chunk-6pqt1p9h.js → chunk-hbnpkkay.js} +1 -1
  40. package/bin/chunk-hf7g4s7z.js +8 -0
  41. package/bin/chunk-hrckvejt.js +6 -0
  42. package/bin/{chunk-kkr0jwz3.js → chunk-j4w76sg7.js} +1 -1
  43. package/bin/chunk-jr7ndn0h.js +4 -0
  44. package/bin/{chunk-vfw5hbnf.js → chunk-jrnczqc1.js} +2 -2
  45. package/bin/{chunk-cm44rgmn.js → chunk-k4gc54nc.js} +1 -1
  46. package/bin/chunk-m0mp7pd2.js +3 -0
  47. package/bin/chunk-m6rw11kp.js +2 -0
  48. package/bin/chunk-mdmba231.js +7 -0
  49. package/bin/{chunk-31hmzhh3.js → chunk-n8m6vtk4.js} +1 -1
  50. package/bin/{chunk-4sgazeqh.js → chunk-nbvdnrcb.js} +2 -2
  51. package/bin/{chunk-zzwyep2y.js → chunk-nvze6c2k.js} +2 -2
  52. package/bin/{chunk-9cgjmctw.js → chunk-p0yhjbsx.js} +1 -1
  53. package/bin/{chunk-evkfqc0n.js → chunk-p3egm13v.js} +2 -2
  54. package/bin/{chunk-wpthjy5r.js → chunk-p67v44jc.js} +1 -1
  55. package/bin/{chunk-4yppzd09.js → chunk-p69bnq4x.js} +1 -1
  56. package/bin/{chunk-0hsekj7q.js → chunk-pwm0zg91.js} +1 -1
  57. package/bin/{chunk-k30n4wwk.js → chunk-r3r0643t.js} +2 -2
  58. package/bin/chunk-ryyybwjr.js +3 -0
  59. package/bin/{chunk-4xh97fm8.js → chunk-t9qt4a80.js} +1 -1
  60. package/bin/chunk-tg1x6f4h.js +2 -0
  61. package/bin/{chunk-09qk3khg.js → chunk-tn22n12j.js} +1 -1
  62. package/bin/chunk-wr1gq0mr.js +3 -0
  63. package/bin/{chunk-p8c02x99.js → chunk-xeg1gre0.js} +1 -1
  64. package/bin/chunk-xepkfmkj.js +3 -0
  65. package/bin/chunk-xy7jrz8f.js +2 -0
  66. package/bin/{chunk-c11capf1.js → chunk-y50ys5g5.js} +3 -3
  67. package/bin/{chunk-jxp0ghqf.js → chunk-ywhm8gh6.js} +1 -1
  68. package/bin/{chunk-0zzvpjyx.js → chunk-zkjpc8zs.js} +1 -1
  69. package/bin/chunk-zmeynqb0.js +6 -0
  70. package/bin/shumai-agent-app.js +308 -307
  71. package/package.json +7 -7
  72. package/prisma/migrations/20260722022359_add_skill_permission/migration.sql +2 -0
  73. package/prisma/schema.prisma +1 -0
  74. package/bin/chunk-04047smt.js +0 -2
  75. package/bin/chunk-62cczr32.js +0 -3
  76. package/bin/chunk-722awnh3.js +0 -4
  77. package/bin/chunk-7xm669xc.js +0 -6
  78. package/bin/chunk-8eg1rj5q.js +0 -12
  79. package/bin/chunk-8pdrt7yn.js +0 -2
  80. package/bin/chunk-bqb5hsbe.js +0 -3
  81. package/bin/chunk-jdhnsqss.js +0 -11
  82. package/bin/chunk-nerm3qbg.js +0 -3
  83. package/bin/chunk-nqbz5n9d.js +0 -2
  84. package/bin/chunk-nts78x0z.js +0 -2
  85. package/bin/chunk-p7dw998p.js +0 -3
  86. package/bin/chunk-q5tv58nz.js +0 -14
  87. package/bin/chunk-r3vpwnnb.js +0 -2
  88. package/bin/chunk-t1c8qk5y.js +0 -3
  89. package/bin/chunk-tsevmz6j.js +0 -8
  90. package/bin/chunk-vfrddwfj.js +0 -2
  91. package/bin/chunk-wsgbp0ae.js +0 -7
  92. package/bin/chunk-x7pbj6bf.js +0 -3
  93. package/bin/chunk-yqhefh7z.js +0 -2
  94. package/bin/chunk-zmr5jvxg.js +0 -4
@@ -1,3 +1,3 @@
1
1
  // @bun
2
2
  function q(k){let b=3735928559,d=1103547991;for(let f=0;f<k.length;f++){let l=k.charCodeAt(f);b=Math.imul(b^l,2654435761),d=Math.imul(d^l,1597334677)}return b=Math.imul(b^b>>>16,2246822507)^Math.imul(d^d>>>13,3266489909),d=Math.imul(d^d>>>16,2246822507)^Math.imul(b^b>>>13,3266489909),(d>>>0).toString(36)+(b>>>0).toString(36)}
3
- export{q as h};
3
+ export{q as g};
@@ -38,4 +38,4 @@ If you understand the risks and have appropriate mitigations in place,
38
38
  you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
39
39
 
40
40
  new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
41
- `);this.baseURL=W.baseURL,this.timeout=W.timeout??C0.DEFAULT_TIMEOUT,this.logger=W.logger??console;let J="warn";this.logLevel=J,this.logLevel=iZ(W.logLevel,"ClientOptions.logLevel",this)??iZ(GZ("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??J,this.fetchOptions=W.fetchOptions,this.maxRetries=W.maxRetries??2,this.fetch=W.fetch??D0(),G(this,vZ,P0,"f"),this._options=W,this.apiKey=typeof Z==="string"?Z:null,this.authToken=$}withOptions(X){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:this.apiKey,authToken:this.authToken,...X})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:X,nulls:Z}){if(X.get("x-api-key")||X.get("authorization"))return;if(this.apiKey&&X.get("x-api-key"))return;if(Z.has("x-api-key"))return;if(this.authToken&&X.get("authorization"))return;if(Z.has("authorization"))return;throw Error('Could not resolve authentication method. Expected either apiKey or authToken to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}async authHeaders(X){return w([await this.apiKeyAuth(X),await this.bearerAuth(X)])}async apiKeyAuth(X){if(this.apiKey==null)return;return w([{"X-Api-Key":this.apiKey}])}async bearerAuth(X){if(this.authToken==null)return;return w([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery(X){return k0(X)}getUserAgent(){return`${this.constructor.name}/JS ${m}`}defaultIdempotencyKey(){return`stainless-node-retry-${cZ()}`}makeStatusError(X,Z,$,z){return A.generate(X,Z,$,z)}buildURL(X,Z,$){let z=!Y(this,U0,"m",Q1).call(this)&&$||this.baseURL,W=E0(X)?new URL(X):new URL(z+(z.endsWith("/")&&X.startsWith("/")?X.slice(1):X)),J=this.defaultQuery(),Q=Object.fromEntries(W.searchParams);if(!uZ(J)||!uZ(Q))Z={...Q,...J,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))W.search=this.stringifyQuery(Z);return W.toString()}_calculateNonstreamingTimeout(X){if(3600*X/128000>600)throw new N("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 600000}async prepareOptions(X){}async prepareRequest(X,{url:Z,options:$}){}get(X,Z){return this.methodRequest("get",X,Z)}post(X,Z){return this.methodRequest("post",X,Z)}patch(X,Z){return this.methodRequest("patch",X,Z)}put(X,Z){return this.methodRequest("put",X,Z)}delete(X,Z){return this.methodRequest("delete",X,Z)}methodRequest(X,Z,$){return this.request(Promise.resolve($).then((z)=>{return{method:X,path:Z,...z}}))}request(X,Z=null){return new r(this,this.makeRequest(X,Z,void 0))}async makeRequest(X,Z,$){let z=await X,W=z.maxRetries??this.maxRetries;if(Z==null)Z=W;await this.prepareOptions(z);let{req:J,url:Q,timeout:K}=await this.buildRequest(z,{retryCount:W-Z});await this.prepareRequest(J,{url:Q,options:z});let x="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),E=$===void 0?"":`, retryOf: ${$}`,O=Date.now();if(T(this).debug(`[${x}] sending request`,g({retryOfRequestLogID:$,method:z.method,url:Q,options:z,headers:J.headers})),z.signal?.aborted)throw new L;let k=new AbortController,C=await this.fetchWithTimeout(Q,J,K,k).catch(MX),F=Date.now();if(C instanceof globalThis.Error){let h=`retrying, ${Z} attempts remaining`;if(z.signal?.aborted)throw new L;let _=b(C)||/timed? ?out/i.test(String(C)+("cause"in C?String(C.cause):""));if(Z)return T(this).info(`[${x}] connection ${_?"timed out":"failed"} - ${h}`),T(this).debug(`[${x}] connection ${_?"timed out":"failed"} (${h})`,g({retryOfRequestLogID:$,url:Q,durationMs:F-O,message:C.message})),this.retryRequest(z,Z,$??x);if(T(this).info(`[${x}] connection ${_?"timed out":"failed"} - error; no more retries left`),T(this).debug(`[${x}] connection ${_?"timed out":"failed"} (error; no more retries left)`,g({retryOfRequestLogID:$,url:Q,durationMs:F-O,message:C.message})),_)throw new EX;throw new o({cause:C})}let a=[...C.headers.entries()].filter(([h])=>h==="request-id").map(([h,_])=>", "+h+": "+JSON.stringify(_)).join(""),OX=`[${x}${E}${a}] ${J.method} ${Q} ${C.ok?"succeeded":"failed"} with status ${C.status} in ${F-O}ms`;if(!C.ok){let h=await this.shouldRetry(C);if(Z&&h){let NZ=`retrying, ${Z} attempts remaining`;return await f0(C.body),T(this).info(`${OX} - ${NZ}`),T(this).debug(`[${x}] response error (${NZ})`,g({retryOfRequestLogID:$,url:C.url,status:C.status,headers:C.headers,durationMs:F-O})),this.retryRequest(z,Z,$??x,C.headers)}let _=h?"error; no more retries left":"error; not retryable";T(this).info(`${OX} - ${_}`);let q0=await C.text().catch((NZ)=>MX(NZ).message),O0=UZ(q0),M0=O0?void 0:q0;throw T(this).debug(`[${x}] response error (${_})`,g({retryOfRequestLogID:$,url:C.url,status:C.status,headers:C.headers,message:M0,durationMs:Date.now()-O})),this.makeStatusError(C.status,O0,M0,C.headers)}return T(this).info(OX),T(this).debug(`[${x}] response start`,g({retryOfRequestLogID:$,url:C.url,status:C.status,headers:C.headers,durationMs:F-O})),{response:C,options:z,controller:k,requestLogID:x,retryOfRequestLogID:$,startTime:O}}getAPIList(X,Z,$){return this.requestAPIList(Z,$&&"then"in $?$.then((z)=>({method:"get",path:X,...z})):{method:"get",path:X,...$})}requestAPIList(X,Z){let $=this.makeRequest(Z,null,void 0);return new AZ(this,$,X)}async fetchWithTimeout(X,Z,$,z){let{signal:W,method:J,...Q}=Z||{},K=this._makeAbort(z);if(W)W.addEventListener("abort",K,{once:!0});let x=setTimeout(K,$),E=globalThis.ReadableStream&&Q.body instanceof globalThis.ReadableStream||typeof Q.body==="object"&&Q.body!==null&&Symbol.asyncIterator in Q.body,O={signal:z.signal,...E?{duplex:"half"}:{},method:"GET",...Q};if(J)O.method=J.toUpperCase();try{return await this.fetch.call(void 0,X,O)}finally{clearTimeout(x)}}async shouldRetry(X){let Z=X.headers.get("x-should-retry");if(Z==="true")return!0;if(Z==="false")return!1;if(X.status===408)return!0;if(X.status===409)return!0;if(X.status===429)return!0;if(X.status>=500)return!0;return!1}async retryRequest(X,Z,$,z){let W,J=z?.get("retry-after-ms");if(J){let K=parseFloat(J);if(!Number.isNaN(K))W=K}let Q=z?.get("retry-after");if(Q&&!W){let K=parseFloat(Q);if(!Number.isNaN(K))W=K*1000;else W=Date.parse(Q)-Date.now()}if(W===void 0){let K=X.maxRetries??this.maxRetries;W=this.calculateDefaultRetryTimeoutMillis(Z,K)}return await F0(W),this.makeRequest(X,Z-1,$)}calculateDefaultRetryTimeoutMillis(X,Z){let W=Z-X,J=Math.min(0.5*Math.pow(2,W),8),Q=1-Math.random()*0.25;return J*Q*1000}calculateNonstreamingTimeout(X,Z){if(3600000*X/128000>600000||Z!=null&&X>Z)throw new N("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 600000}async buildRequest(X,{retryCount:Z=0}={}){let $={...X},{method:z,path:W,query:J,defaultBaseURL:Q}=$,K=this.buildURL(W,J,Q);if("timeout"in $)H0("timeout",$.timeout);$.timeout=$.timeout??this.timeout;let{bodyHeaders:x,body:E}=this.buildBody({options:$}),O=await this.buildHeaders({options:X,method:z,bodyHeaders:x,retryCount:Z});return{req:{method:z,headers:O,...$.signal&&{signal:$.signal},...globalThis.ReadableStream&&E instanceof globalThis.ReadableStream&&{duplex:"half"},...E&&{body:E},...this.fetchOptions??{},...$.fetchOptions??{}},url:K,timeout:$.timeout}}async buildHeaders({options:X,method:Z,bodyHeaders:$,retryCount:z}){let W={};if(this.idempotencyHeader&&Z!=="get"){if(!X.idempotencyKey)X.idempotencyKey=this.defaultIdempotencyKey();W[this.idempotencyHeader]=X.idempotencyKey}let J=w([W,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(z),...X.timeout?{"X-Stainless-Timeout":String(Math.trunc(X.timeout/1000))}:{},...B0(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders(X),this._options.defaultHeaders,$,X.headers]);return this.validateHeaders(J),J.values}_makeAbort(X){return()=>X.abort()}buildBody({options:{body:X,headers:Z}}){if(!X)return{bodyHeaders:void 0,body:void 0};let $=w([Z]);if(ArrayBuffer.isView(X)||X instanceof ArrayBuffer||X instanceof DataView||typeof X==="string"&&$.values.has("content-type")||globalThis.Blob&&X instanceof globalThis.Blob||X instanceof FormData||X instanceof URLSearchParams||globalThis.ReadableStream&&X instanceof globalThis.ReadableStream)return{bodyHeaders:void 0,body:X};else if(typeof X==="object"&&((Symbol.asyncIterator in X)||(Symbol.iterator in X)&&("next"in X)&&typeof X.next==="function"))return{bodyHeaders:void 0,body:CZ(X)};else if(typeof X==="object"&&$.values.get("content-type")==="application/x-www-form-urlencoded")return{bodyHeaders:{"content-type":"application/x-www-form-urlencoded"},body:this.stringifyQuery(X)};else return Y(this,vZ,"f").call(this,{body:X,headers:$})}}C0=M,vZ=new WeakMap,U0=new WeakSet,Q1=function(){return this.baseURL!=="https://api.anthropic.com"};M.Anthropic=C0;M.HUMAN_PROMPT=V1;M.AI_PROMPT=G1;M.DEFAULT_TIMEOUT=600000;M.AnthropicError=N;M.APIError=A;M.APIConnectionError=o;M.APIConnectionTimeoutError=EX;M.APIUserAbortError=L;M.NotFoundError=TX;M.ConflictError=LX;M.RateLimitError=jX;M.BadRequestError=AX;M.AuthenticationError=HX;M.InternalServerError=BX;M.PermissionDeniedError=FX;M.UnprocessableEntityError=SX;M.toFile=HZ;class WX extends M{constructor(){super(...arguments);this.completions=new UX(this),this.messages=new zX(this),this.models=new qX(this),this.beta=new S(this)}}WX.Completions=UX;WX.Messages=zX;WX.Models=qX;WX.Beta=S;export{WX as Hb};
41
+ `);this.baseURL=W.baseURL,this.timeout=W.timeout??C0.DEFAULT_TIMEOUT,this.logger=W.logger??console;let J="warn";this.logLevel=J,this.logLevel=iZ(W.logLevel,"ClientOptions.logLevel",this)??iZ(GZ("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??J,this.fetchOptions=W.fetchOptions,this.maxRetries=W.maxRetries??2,this.fetch=W.fetch??D0(),G(this,vZ,P0,"f"),this._options=W,this.apiKey=typeof Z==="string"?Z:null,this.authToken=$}withOptions(X){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:this.apiKey,authToken:this.authToken,...X})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:X,nulls:Z}){if(X.get("x-api-key")||X.get("authorization"))return;if(this.apiKey&&X.get("x-api-key"))return;if(Z.has("x-api-key"))return;if(this.authToken&&X.get("authorization"))return;if(Z.has("authorization"))return;throw Error('Could not resolve authentication method. Expected either apiKey or authToken to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}async authHeaders(X){return w([await this.apiKeyAuth(X),await this.bearerAuth(X)])}async apiKeyAuth(X){if(this.apiKey==null)return;return w([{"X-Api-Key":this.apiKey}])}async bearerAuth(X){if(this.authToken==null)return;return w([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery(X){return k0(X)}getUserAgent(){return`${this.constructor.name}/JS ${m}`}defaultIdempotencyKey(){return`stainless-node-retry-${cZ()}`}makeStatusError(X,Z,$,z){return A.generate(X,Z,$,z)}buildURL(X,Z,$){let z=!Y(this,U0,"m",Q1).call(this)&&$||this.baseURL,W=E0(X)?new URL(X):new URL(z+(z.endsWith("/")&&X.startsWith("/")?X.slice(1):X)),J=this.defaultQuery(),Q=Object.fromEntries(W.searchParams);if(!uZ(J)||!uZ(Q))Z={...Q,...J,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))W.search=this.stringifyQuery(Z);return W.toString()}_calculateNonstreamingTimeout(X){if(3600*X/128000>600)throw new N("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 600000}async prepareOptions(X){}async prepareRequest(X,{url:Z,options:$}){}get(X,Z){return this.methodRequest("get",X,Z)}post(X,Z){return this.methodRequest("post",X,Z)}patch(X,Z){return this.methodRequest("patch",X,Z)}put(X,Z){return this.methodRequest("put",X,Z)}delete(X,Z){return this.methodRequest("delete",X,Z)}methodRequest(X,Z,$){return this.request(Promise.resolve($).then((z)=>{return{method:X,path:Z,...z}}))}request(X,Z=null){return new r(this,this.makeRequest(X,Z,void 0))}async makeRequest(X,Z,$){let z=await X,W=z.maxRetries??this.maxRetries;if(Z==null)Z=W;await this.prepareOptions(z);let{req:J,url:Q,timeout:K}=await this.buildRequest(z,{retryCount:W-Z});await this.prepareRequest(J,{url:Q,options:z});let x="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),E=$===void 0?"":`, retryOf: ${$}`,O=Date.now();if(T(this).debug(`[${x}] sending request`,g({retryOfRequestLogID:$,method:z.method,url:Q,options:z,headers:J.headers})),z.signal?.aborted)throw new L;let k=new AbortController,C=await this.fetchWithTimeout(Q,J,K,k).catch(MX),F=Date.now();if(C instanceof globalThis.Error){let h=`retrying, ${Z} attempts remaining`;if(z.signal?.aborted)throw new L;let _=b(C)||/timed? ?out/i.test(String(C)+("cause"in C?String(C.cause):""));if(Z)return T(this).info(`[${x}] connection ${_?"timed out":"failed"} - ${h}`),T(this).debug(`[${x}] connection ${_?"timed out":"failed"} (${h})`,g({retryOfRequestLogID:$,url:Q,durationMs:F-O,message:C.message})),this.retryRequest(z,Z,$??x);if(T(this).info(`[${x}] connection ${_?"timed out":"failed"} - error; no more retries left`),T(this).debug(`[${x}] connection ${_?"timed out":"failed"} (error; no more retries left)`,g({retryOfRequestLogID:$,url:Q,durationMs:F-O,message:C.message})),_)throw new EX;throw new o({cause:C})}let a=[...C.headers.entries()].filter(([h])=>h==="request-id").map(([h,_])=>", "+h+": "+JSON.stringify(_)).join(""),OX=`[${x}${E}${a}] ${J.method} ${Q} ${C.ok?"succeeded":"failed"} with status ${C.status} in ${F-O}ms`;if(!C.ok){let h=await this.shouldRetry(C);if(Z&&h){let NZ=`retrying, ${Z} attempts remaining`;return await f0(C.body),T(this).info(`${OX} - ${NZ}`),T(this).debug(`[${x}] response error (${NZ})`,g({retryOfRequestLogID:$,url:C.url,status:C.status,headers:C.headers,durationMs:F-O})),this.retryRequest(z,Z,$??x,C.headers)}let _=h?"error; no more retries left":"error; not retryable";T(this).info(`${OX} - ${_}`);let q0=await C.text().catch((NZ)=>MX(NZ).message),O0=UZ(q0),M0=O0?void 0:q0;throw T(this).debug(`[${x}] response error (${_})`,g({retryOfRequestLogID:$,url:C.url,status:C.status,headers:C.headers,message:M0,durationMs:Date.now()-O})),this.makeStatusError(C.status,O0,M0,C.headers)}return T(this).info(OX),T(this).debug(`[${x}] response start`,g({retryOfRequestLogID:$,url:C.url,status:C.status,headers:C.headers,durationMs:F-O})),{response:C,options:z,controller:k,requestLogID:x,retryOfRequestLogID:$,startTime:O}}getAPIList(X,Z,$){return this.requestAPIList(Z,$&&"then"in $?$.then((z)=>({method:"get",path:X,...z})):{method:"get",path:X,...$})}requestAPIList(X,Z){let $=this.makeRequest(Z,null,void 0);return new AZ(this,$,X)}async fetchWithTimeout(X,Z,$,z){let{signal:W,method:J,...Q}=Z||{},K=this._makeAbort(z);if(W)W.addEventListener("abort",K,{once:!0});let x=setTimeout(K,$),E=globalThis.ReadableStream&&Q.body instanceof globalThis.ReadableStream||typeof Q.body==="object"&&Q.body!==null&&Symbol.asyncIterator in Q.body,O={signal:z.signal,...E?{duplex:"half"}:{},method:"GET",...Q};if(J)O.method=J.toUpperCase();try{return await this.fetch.call(void 0,X,O)}finally{clearTimeout(x)}}async shouldRetry(X){let Z=X.headers.get("x-should-retry");if(Z==="true")return!0;if(Z==="false")return!1;if(X.status===408)return!0;if(X.status===409)return!0;if(X.status===429)return!0;if(X.status>=500)return!0;return!1}async retryRequest(X,Z,$,z){let W,J=z?.get("retry-after-ms");if(J){let K=parseFloat(J);if(!Number.isNaN(K))W=K}let Q=z?.get("retry-after");if(Q&&!W){let K=parseFloat(Q);if(!Number.isNaN(K))W=K*1000;else W=Date.parse(Q)-Date.now()}if(W===void 0){let K=X.maxRetries??this.maxRetries;W=this.calculateDefaultRetryTimeoutMillis(Z,K)}return await F0(W),this.makeRequest(X,Z-1,$)}calculateDefaultRetryTimeoutMillis(X,Z){let W=Z-X,J=Math.min(0.5*Math.pow(2,W),8),Q=1-Math.random()*0.25;return J*Q*1000}calculateNonstreamingTimeout(X,Z){if(3600000*X/128000>600000||Z!=null&&X>Z)throw new N("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 600000}async buildRequest(X,{retryCount:Z=0}={}){let $={...X},{method:z,path:W,query:J,defaultBaseURL:Q}=$,K=this.buildURL(W,J,Q);if("timeout"in $)H0("timeout",$.timeout);$.timeout=$.timeout??this.timeout;let{bodyHeaders:x,body:E}=this.buildBody({options:$}),O=await this.buildHeaders({options:X,method:z,bodyHeaders:x,retryCount:Z});return{req:{method:z,headers:O,...$.signal&&{signal:$.signal},...globalThis.ReadableStream&&E instanceof globalThis.ReadableStream&&{duplex:"half"},...E&&{body:E},...this.fetchOptions??{},...$.fetchOptions??{}},url:K,timeout:$.timeout}}async buildHeaders({options:X,method:Z,bodyHeaders:$,retryCount:z}){let W={};if(this.idempotencyHeader&&Z!=="get"){if(!X.idempotencyKey)X.idempotencyKey=this.defaultIdempotencyKey();W[this.idempotencyHeader]=X.idempotencyKey}let J=w([W,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(z),...X.timeout?{"X-Stainless-Timeout":String(Math.trunc(X.timeout/1000))}:{},...B0(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders(X),this._options.defaultHeaders,$,X.headers]);return this.validateHeaders(J),J.values}_makeAbort(X){return()=>X.abort()}buildBody({options:{body:X,headers:Z}}){if(!X)return{bodyHeaders:void 0,body:void 0};let $=w([Z]);if(ArrayBuffer.isView(X)||X instanceof ArrayBuffer||X instanceof DataView||typeof X==="string"&&$.values.has("content-type")||globalThis.Blob&&X instanceof globalThis.Blob||X instanceof FormData||X instanceof URLSearchParams||globalThis.ReadableStream&&X instanceof globalThis.ReadableStream)return{bodyHeaders:void 0,body:X};else if(typeof X==="object"&&((Symbol.asyncIterator in X)||(Symbol.iterator in X)&&("next"in X)&&typeof X.next==="function"))return{bodyHeaders:void 0,body:CZ(X)};else if(typeof X==="object"&&$.values.get("content-type")==="application/x-www-form-urlencoded")return{bodyHeaders:{"content-type":"application/x-www-form-urlencoded"},body:this.stringifyQuery(X)};else return Y(this,vZ,"f").call(this,{body:X,headers:$})}}C0=M,vZ=new WeakMap,U0=new WeakSet,Q1=function(){return this.baseURL!=="https://api.anthropic.com"};M.Anthropic=C0;M.HUMAN_PROMPT=V1;M.AI_PROMPT=G1;M.DEFAULT_TIMEOUT=600000;M.AnthropicError=N;M.APIError=A;M.APIConnectionError=o;M.APIConnectionTimeoutError=EX;M.APIUserAbortError=L;M.NotFoundError=TX;M.ConflictError=LX;M.RateLimitError=jX;M.BadRequestError=AX;M.AuthenticationError=HX;M.InternalServerError=BX;M.PermissionDeniedError=FX;M.UnprocessableEntityError=SX;M.toFile=HZ;class WX extends M{constructor(){super(...arguments);this.completions=new UX(this),this.messages=new zX(this),this.models=new qX(this),this.beta=new S(this)}}WX.Completions=UX;WX.Messages=zX;WX.Models=qX;WX.Beta=S;export{WX as xc};
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{Pb as T,Qb as A,Rb as G,Sb as C,Tb as I,Ub as M}from"./chunk-vfw5hbnf.js";import{Zb as v}from"./chunk-4vs22x1t.js";import{dc as P}from"./chunk-092vhedy.js";import{gc as K,hc as O,ic as S}from"./chunk-09qk3khg.js";import{jc as y}from"./chunk-4yppzd09.js";import"./chunk-7mtn96c1.js";var B=0,z=(q,V,J)=>{let N=new S;return(async()=>{let w={role:"assistant",content:[],api:"google-generative-ai",provider:q.provider,model:q.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:"stop",timestamp:Date.now()};try{let X=J?.apiKey;if(!X)throw Error(`No API key for provider: ${q.provider}`);let $=x(q,X,J?.headers),Y=f(q,V,J),H=await J?.onPayload?.(Y,q);if(H!==void 0)Y=H;let h=await $.models.generateContentStream(Y);N.push({type:"start",partial:w});let Q=null,R=w.content,Z=()=>R.length-1;for await(let _ of h){w.responseId||=_.responseId;let E=_.candidates?.[0];if(E?.content?.parts)for(let W of E.content.parts){if(W.text!==void 0){let D=T(W);if(!Q||D&&Q.type!=="thinking"||!D&&Q.type!=="text"){if(Q)if(Q.type==="text")N.push({type:"text_end",contentIndex:R.length-1,content:Q.text,partial:w});else N.push({type:"thinking_end",contentIndex:Z(),content:Q.thinking,partial:w});if(D)Q={type:"thinking",thinking:"",thinkingSignature:void 0},w.content.push(Q),N.push({type:"thinking_start",contentIndex:Z(),partial:w});else Q={type:"text",text:""},w.content.push(Q),N.push({type:"text_start",contentIndex:Z(),partial:w})}if(Q.type==="thinking")Q.thinking+=W.text,Q.thinkingSignature=A(Q.thinkingSignature,W.thoughtSignature),N.push({type:"thinking_delta",contentIndex:Z(),delta:W.text,partial:w});else Q.text+=W.text,Q.textSignature=A(Q.textSignature,W.thoughtSignature),N.push({type:"text_delta",contentIndex:Z(),delta:W.text,partial:w})}if(W.functionCall){if(Q){if(Q.type==="text")N.push({type:"text_end",contentIndex:Z(),content:Q.text,partial:w});else N.push({type:"thinking_end",contentIndex:Z(),content:Q.thinking,partial:w});Q=null}let D=W.functionCall.id,U={type:"toolCall",id:!D||w.content.some((j)=>j.type==="toolCall"&&j.id===D)?`${W.functionCall.name}_${Date.now()}_${++B}`:D,name:W.functionCall.name||"",arguments:W.functionCall.args??{},...W.thoughtSignature&&{thoughtSignature:W.thoughtSignature}};w.content.push(U),N.push({type:"toolcall_start",contentIndex:Z(),partial:w}),N.push({type:"toolcall_delta",contentIndex:Z(),delta:JSON.stringify(U.arguments),partial:w}),N.push({type:"toolcall_end",contentIndex:Z(),toolCall:U,partial:w})}}if(E?.finishReason){if(w.stopReason=M(E.finishReason),w.content.some((W)=>W.type==="toolCall"))w.stopReason="toolUse"}if(_.usageMetadata)w.usage={input:(_.usageMetadata.promptTokenCount||0)-(_.usageMetadata.cachedContentTokenCount||0),output:(_.usageMetadata.candidatesTokenCount||0)+(_.usageMetadata.thoughtsTokenCount||0),cacheRead:_.usageMetadata.cachedContentTokenCount||0,cacheWrite:0,totalTokens:_.usageMetadata.totalTokenCount||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},K(q,w.usage)}if(Q)if(Q.type==="text")N.push({type:"text_end",contentIndex:Z(),content:Q.text,partial:w});else N.push({type:"thinking_end",contentIndex:Z(),content:Q.thinking,partial:w});if(J?.signal?.aborted)throw Error("Request was aborted");if(w.stopReason==="aborted"||w.stopReason==="error")throw Error("An unknown error occurred");N.push({type:"done",reason:w.stopReason,message:w}),N.end()}catch(X){for(let $ of w.content)if("index"in $)delete $.index;w.stopReason=J?.signal?.aborted?"aborted":"error",w.errorMessage=X instanceof Error?X.message:JSON.stringify(X),N.push({type:"error",reason:w.stopReason,error:w}),N.end()}})(),N},l=(q,V,J)=>{let N=J?.apiKey;if(!N)throw Error(`No API key for provider: ${q.provider}`);let w=P(q,J,N);if(!J?.reasoning)return z(q,V,{...w,thinking:{enabled:!1}});let X=O(q,J.reasoning),$=X==="off"?"high":X,Y=q;if(L(Y)||b(Y)||F(Y))return z(q,V,{...w,thinking:{enabled:!0,level:g($,Y)}});return z(q,V,{...w,thinking:{enabled:!0,budgetTokens:a(Y,$,J.thinkingBudgets)}})};function x(q,V,J){let N={};if(q.baseUrl)N.baseUrl=q.baseUrl,N.apiVersion="";if(q.headers||J)N.headers={...q.headers,...J};return new v({apiKey:V,httpOptions:Object.keys(N).length>0?N:void 0})}function f(q,V,J={}){let N=G(q,V),w={};if(J.temperature!==void 0)w.temperature=J.temperature;if(J.maxTokens!==void 0)w.maxOutputTokens=J.maxTokens;let X={...Object.keys(w).length>0&&w,...V.systemPrompt&&{systemInstruction:y(V.systemPrompt)},...V.tools&&V.tools.length>0&&{tools:C(V.tools)}};if(V.tools&&V.tools.length>0&&J.toolChoice)X.toolConfig={functionCallingConfig:{mode:I(J.toolChoice)}};else X.toolConfig=void 0;if(J.thinking?.enabled&&q.reasoning){let Y={includeThoughts:!0};if(J.thinking.level!==void 0)Y.thinkingLevel=J.thinking.level;else if(J.thinking.budgetTokens!==void 0)Y.thinkingBudget=J.thinking.budgetTokens;X.thinkingConfig=Y}else if(q.reasoning&&J.thinking&&!J.thinking.enabled)X.thinkingConfig=k(q);if(J.signal){if(J.signal.aborted)throw Error("Request aborted");X.abortSignal=J.signal}return{model:q.id,contents:N,config:X}}function F(q){return/gemma-?4/.test(q.id.toLowerCase())}function L(q){return/gemini-3(?:\.\d+)?-pro/.test(q.id.toLowerCase())}function b(q){return/gemini-3(?:\.\d+)?-flash/.test(q.id.toLowerCase())}function k(q){if(L(q))return{thinkingLevel:"LOW"};if(b(q))return{thinkingLevel:"MINIMAL"};if(F(q))return{thinkingLevel:"MINIMAL"};return{thinkingBudget:0}}function g(q,V){if(L(V))switch(q){case"minimal":case"low":return"LOW";case"medium":case"high":return"HIGH"}if(F(V))switch(q){case"minimal":case"low":return"MINIMAL";case"medium":case"high":return"HIGH"}switch(q){case"minimal":return"MINIMAL";case"low":return"LOW";case"medium":return"MEDIUM";case"high":return"HIGH"}}function a(q,V,J){if(J?.[V]!==void 0)return J[V];if(q.id.includes("2.5-pro"))return{minimal:128,low:2048,medium:8192,high:32768}[V];if(q.id.includes("2.5-flash-lite"))return{minimal:512,low:2048,medium:8192,high:24576}[V];if(q.id.includes("2.5-flash"))return{minimal:128,low:2048,medium:8192,high:24576}[V];return-1}export{l as streamSimpleGoogle,z as streamGoogle};
2
+ import{Fc as T,Gc as A,Hc as G,Ic as C,Jc as I,Kc as M}from"./chunk-jrnczqc1.js";import{Pc as v}from"./chunk-0bdvgych.js";import{Vc as P}from"./chunk-2w4hxpqr.js";import{Yc as K,Zc as O,_c as S}from"./chunk-tn22n12j.js";import{$c as y}from"./chunk-p69bnq4x.js";import"./chunk-22m0y0fs.js";var B=0,z=(q,V,J)=>{let N=new S;return(async()=>{let w={role:"assistant",content:[],api:"google-generative-ai",provider:q.provider,model:q.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:"stop",timestamp:Date.now()};try{let X=J?.apiKey;if(!X)throw Error(`No API key for provider: ${q.provider}`);let $=x(q,X,J?.headers),Y=f(q,V,J),H=await J?.onPayload?.(Y,q);if(H!==void 0)Y=H;let h=await $.models.generateContentStream(Y);N.push({type:"start",partial:w});let Q=null,R=w.content,Z=()=>R.length-1;for await(let _ of h){w.responseId||=_.responseId;let E=_.candidates?.[0];if(E?.content?.parts)for(let W of E.content.parts){if(W.text!==void 0){let D=T(W);if(!Q||D&&Q.type!=="thinking"||!D&&Q.type!=="text"){if(Q)if(Q.type==="text")N.push({type:"text_end",contentIndex:R.length-1,content:Q.text,partial:w});else N.push({type:"thinking_end",contentIndex:Z(),content:Q.thinking,partial:w});if(D)Q={type:"thinking",thinking:"",thinkingSignature:void 0},w.content.push(Q),N.push({type:"thinking_start",contentIndex:Z(),partial:w});else Q={type:"text",text:""},w.content.push(Q),N.push({type:"text_start",contentIndex:Z(),partial:w})}if(Q.type==="thinking")Q.thinking+=W.text,Q.thinkingSignature=A(Q.thinkingSignature,W.thoughtSignature),N.push({type:"thinking_delta",contentIndex:Z(),delta:W.text,partial:w});else Q.text+=W.text,Q.textSignature=A(Q.textSignature,W.thoughtSignature),N.push({type:"text_delta",contentIndex:Z(),delta:W.text,partial:w})}if(W.functionCall){if(Q){if(Q.type==="text")N.push({type:"text_end",contentIndex:Z(),content:Q.text,partial:w});else N.push({type:"thinking_end",contentIndex:Z(),content:Q.thinking,partial:w});Q=null}let D=W.functionCall.id,U={type:"toolCall",id:!D||w.content.some((j)=>j.type==="toolCall"&&j.id===D)?`${W.functionCall.name}_${Date.now()}_${++B}`:D,name:W.functionCall.name||"",arguments:W.functionCall.args??{},...W.thoughtSignature&&{thoughtSignature:W.thoughtSignature}};w.content.push(U),N.push({type:"toolcall_start",contentIndex:Z(),partial:w}),N.push({type:"toolcall_delta",contentIndex:Z(),delta:JSON.stringify(U.arguments),partial:w}),N.push({type:"toolcall_end",contentIndex:Z(),toolCall:U,partial:w})}}if(E?.finishReason){if(w.stopReason=M(E.finishReason),w.content.some((W)=>W.type==="toolCall"))w.stopReason="toolUse"}if(_.usageMetadata)w.usage={input:(_.usageMetadata.promptTokenCount||0)-(_.usageMetadata.cachedContentTokenCount||0),output:(_.usageMetadata.candidatesTokenCount||0)+(_.usageMetadata.thoughtsTokenCount||0),cacheRead:_.usageMetadata.cachedContentTokenCount||0,cacheWrite:0,totalTokens:_.usageMetadata.totalTokenCount||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},K(q,w.usage)}if(Q)if(Q.type==="text")N.push({type:"text_end",contentIndex:Z(),content:Q.text,partial:w});else N.push({type:"thinking_end",contentIndex:Z(),content:Q.thinking,partial:w});if(J?.signal?.aborted)throw Error("Request was aborted");if(w.stopReason==="aborted"||w.stopReason==="error")throw Error("An unknown error occurred");N.push({type:"done",reason:w.stopReason,message:w}),N.end()}catch(X){for(let $ of w.content)if("index"in $)delete $.index;w.stopReason=J?.signal?.aborted?"aborted":"error",w.errorMessage=X instanceof Error?X.message:JSON.stringify(X),N.push({type:"error",reason:w.stopReason,error:w}),N.end()}})(),N},l=(q,V,J)=>{let N=J?.apiKey;if(!N)throw Error(`No API key for provider: ${q.provider}`);let w=P(q,J,N);if(!J?.reasoning)return z(q,V,{...w,thinking:{enabled:!1}});let X=O(q,J.reasoning),$=X==="off"?"high":X,Y=q;if(L(Y)||b(Y)||F(Y))return z(q,V,{...w,thinking:{enabled:!0,level:g($,Y)}});return z(q,V,{...w,thinking:{enabled:!0,budgetTokens:a(Y,$,J.thinkingBudgets)}})};function x(q,V,J){let N={};if(q.baseUrl)N.baseUrl=q.baseUrl,N.apiVersion="";if(q.headers||J)N.headers={...q.headers,...J};return new v({apiKey:V,httpOptions:Object.keys(N).length>0?N:void 0})}function f(q,V,J={}){let N=G(q,V),w={};if(J.temperature!==void 0)w.temperature=J.temperature;if(J.maxTokens!==void 0)w.maxOutputTokens=J.maxTokens;let X={...Object.keys(w).length>0&&w,...V.systemPrompt&&{systemInstruction:y(V.systemPrompt)},...V.tools&&V.tools.length>0&&{tools:C(V.tools)}};if(V.tools&&V.tools.length>0&&J.toolChoice)X.toolConfig={functionCallingConfig:{mode:I(J.toolChoice)}};else X.toolConfig=void 0;if(J.thinking?.enabled&&q.reasoning){let Y={includeThoughts:!0};if(J.thinking.level!==void 0)Y.thinkingLevel=J.thinking.level;else if(J.thinking.budgetTokens!==void 0)Y.thinkingBudget=J.thinking.budgetTokens;X.thinkingConfig=Y}else if(q.reasoning&&J.thinking&&!J.thinking.enabled)X.thinkingConfig=k(q);if(J.signal){if(J.signal.aborted)throw Error("Request aborted");X.abortSignal=J.signal}return{model:q.id,contents:N,config:X}}function F(q){return/gemma-?4/.test(q.id.toLowerCase())}function L(q){return/gemini-3(?:\.\d+)?-pro/.test(q.id.toLowerCase())}function b(q){return/gemini-3(?:\.\d+)?-flash/.test(q.id.toLowerCase())}function k(q){if(L(q))return{thinkingLevel:"LOW"};if(b(q))return{thinkingLevel:"MINIMAL"};if(F(q))return{thinkingLevel:"MINIMAL"};return{thinkingBudget:0}}function g(q,V){if(L(V))switch(q){case"minimal":case"low":return"LOW";case"medium":case"high":return"HIGH"}if(F(V))switch(q){case"minimal":case"low":return"MINIMAL";case"medium":case"high":return"HIGH"}switch(q){case"minimal":return"MINIMAL";case"low":return"LOW";case"medium":return"MEDIUM";case"high":return"HIGH"}}function a(q,V,J){if(J?.[V]!==void 0)return J[V];if(q.id.includes("2.5-pro"))return{minimal:128,low:2048,medium:8192,high:32768}[V];if(q.id.includes("2.5-flash-lite"))return{minimal:512,low:2048,medium:8192,high:24576}[V];if(q.id.includes("2.5-flash"))return{minimal:128,low:2048,medium:8192,high:24576}[V];return-1}export{l as streamSimpleGoogle,z as streamGoogle};
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{$b as J}from"./chunk-6pqt1p9h.js";import{bc as w}from"./chunk-zzwyep2y.js";import{fc as R}from"./chunk-092vhedy.js";import{gc as j}from"./chunk-09qk3khg.js";import{jc as V}from"./chunk-4yppzd09.js";function M(Q,E){let W={v:1,id:Q};if(E)W.phase=E;return JSON.stringify(W)}function C(Q){if(!Q)return;if(Q.startsWith("{"))try{let E=JSON.parse(Q);if(E.v===1&&typeof E.id==="string"){if(E.phase==="commentary"||E.phase==="final_answer")return{id:E.id,phase:E.phase};return{id:E.id}}}catch{}return{id:Q}}function x(Q,E,W,U){let _=[],N=(G)=>{let O=G.replace(/[^a-zA-Z0-9_-]/g,"_");return(O.length>64?O.slice(0,64):O).replace(/_+$/,"")},A=(G)=>{let O=`fc_${J(G)}`;return O.length>64?O.slice(0,64):O},y=(G,O,Y)=>{if(!W.has(Q.provider))return N(G);if(!G.includes("|"))return N(G);let[H,L]=G.split("|"),$=N(H),D=Y.provider!==Q.provider||Y.api!==Q.api?A(L):N(L);if(!D.startsWith("fc_"))D=N(`fc_${D}`);return`${$}|${D}`},Z=R(E.messages,Q,y);if((U?.includeSystemPrompt??!0)&&E.systemPrompt){let G=Q.reasoning?"developer":"system";_.push({role:G,content:V(E.systemPrompt)})}let q=0;for(let G of Z){if(G.role==="user")if(typeof G.content==="string")_.push({role:"user",content:[{type:"input_text",text:V(G.content)}]});else{let O=G.content.map((Y)=>{if(Y.type==="text")return{type:"input_text",text:V(Y.text)};return{type:"input_image",detail:"auto",image_url:`data:${Y.mimeType};base64,${Y.data}`}});if(O.length===0)continue;_.push({role:"user",content:O})}else if(G.role==="assistant"){let O=[],Y=G,H=Y.model!==Q.id&&Y.provider===Q.provider&&Y.api===Q.api,L=0;for(let $ of G.content)if($.type==="thinking"){if($.thinkingSignature){let X=JSON.parse($.thinkingSignature);O.push(X)}}else if($.type==="text"){let X=$,D=C(X.textSignature),f=L===0?`msg_pi_${q}`:`msg_pi_${q}_${L}`;L++;let F=D?.id;if(!F)F=f;else if(F.length>64)F=`msg_${J(F)}`;O.push({type:"message",role:"assistant",content:[{type:"output_text",text:V(X.text),annotations:[]}],status:"completed",id:F,phase:D?.phase})}else if($.type==="toolCall"){let X=$,[D,f]=X.id.split("|"),F=f;if(H&&F?.startsWith("fc_"))F=void 0;O.push({type:"function_call",id:F,call_id:D,name:X.name,arguments:JSON.stringify(X.arguments)})}if(O.length===0)continue;_.push(...O)}else if(G.role==="toolResult"){let O=G.content.filter((X)=>X.type==="text").map((X)=>X.text).join(`
2
+ import{Rc as J}from"./chunk-hbnpkkay.js";import{Tc as w}from"./chunk-bq4j07gf.js";import{Xc as R}from"./chunk-2w4hxpqr.js";import{Yc as j}from"./chunk-tn22n12j.js";import{$c as V}from"./chunk-p69bnq4x.js";function M(Q,E){let W={v:1,id:Q};if(E)W.phase=E;return JSON.stringify(W)}function C(Q){if(!Q)return;if(Q.startsWith("{"))try{let E=JSON.parse(Q);if(E.v===1&&typeof E.id==="string"){if(E.phase==="commentary"||E.phase==="final_answer")return{id:E.id,phase:E.phase};return{id:E.id}}}catch{}return{id:Q}}function x(Q,E,W,U){let _=[],N=(G)=>{let O=G.replace(/[^a-zA-Z0-9_-]/g,"_");return(O.length>64?O.slice(0,64):O).replace(/_+$/,"")},A=(G)=>{let O=`fc_${J(G)}`;return O.length>64?O.slice(0,64):O},y=(G,O,Y)=>{if(!W.has(Q.provider))return N(G);if(!G.includes("|"))return N(G);let[H,L]=G.split("|"),$=N(H),D=Y.provider!==Q.provider||Y.api!==Q.api?A(L):N(L);if(!D.startsWith("fc_"))D=N(`fc_${D}`);return`${$}|${D}`},Z=R(E.messages,Q,y);if((U?.includeSystemPrompt??!0)&&E.systemPrompt){let G=Q.reasoning?"developer":"system";_.push({role:G,content:V(E.systemPrompt)})}let q=0;for(let G of Z){if(G.role==="user")if(typeof G.content==="string")_.push({role:"user",content:[{type:"input_text",text:V(G.content)}]});else{let O=G.content.map((Y)=>{if(Y.type==="text")return{type:"input_text",text:V(Y.text)};return{type:"input_image",detail:"auto",image_url:`data:${Y.mimeType};base64,${Y.data}`}});if(O.length===0)continue;_.push({role:"user",content:O})}else if(G.role==="assistant"){let O=[],Y=G,H=Y.model!==Q.id&&Y.provider===Q.provider&&Y.api===Q.api,L=0;for(let $ of G.content)if($.type==="thinking"){if($.thinkingSignature){let X=JSON.parse($.thinkingSignature);O.push(X)}}else if($.type==="text"){let X=$,D=C(X.textSignature),f=L===0?`msg_pi_${q}`:`msg_pi_${q}_${L}`;L++;let F=D?.id;if(!F)F=f;else if(F.length>64)F=`msg_${J(F)}`;O.push({type:"message",role:"assistant",content:[{type:"output_text",text:V(X.text),annotations:[]}],status:"completed",id:F,phase:D?.phase})}else if($.type==="toolCall"){let X=$,[D,f]=X.id.split("|"),F=f;if(H&&F?.startsWith("fc_"))F=void 0;O.push({type:"function_call",id:F,call_id:D,name:X.name,arguments:JSON.stringify(X.arguments)})}if(O.length===0)continue;_.push(...O)}else if(G.role==="toolResult"){let O=G.content.filter((X)=>X.type==="text").map((X)=>X.text).join(`
3
3
  `),Y=G.content.some((X)=>X.type==="image"),H=O.length>0,[L]=G.toolCallId.split("|"),$;if(Y&&Q.input.includes("image")){let X=[];if(H)X.push({type:"input_text",text:V(O)});for(let D of G.content)if(D.type==="image")X.push({type:"input_image",detail:"auto",image_url:`data:${D.mimeType};base64,${D.data}`});$=X}else $=V(H?O:"(see attached image)");_.push({type:"function_call_output",call_id:L,output:$})}q++}return _}function v(Q,E){let W=E?.strict===void 0?!1:E.strict;return Q.map((U)=>({type:"function",name:U.name,description:U.description,parameters:U.parameters,strict:W}))}async function B(Q,E,W,U,_){let N=null,A=null,y=E.content,Z=()=>y.length-1;for await(let K of Q)if(K.type==="response.created")E.responseId=K.response.id;else if(K.type==="response.output_item.added"){let q=K.item;if(q.type==="reasoning")N=q,A={type:"thinking",thinking:""},E.content.push(A),W.push({type:"thinking_start",contentIndex:Z(),partial:E});else if(q.type==="message")N=q,A={type:"text",text:""},E.content.push(A),W.push({type:"text_start",contentIndex:Z(),partial:E});else if(q.type==="function_call")N=q,A={type:"toolCall",id:`${q.call_id}|${q.id}`,name:q.name,arguments:{},partialJson:q.arguments||""},E.content.push(A),W.push({type:"toolcall_start",contentIndex:Z(),partial:E})}else if(K.type==="response.reasoning_summary_part.added"){if(N&&N.type==="reasoning")N.summary=N.summary||[],N.summary.push(K.part)}else if(K.type==="response.reasoning_summary_text.delta"){if(N?.type==="reasoning"&&A?.type==="thinking"){N.summary=N.summary||[];let q=N.summary[N.summary.length-1];if(q)A.thinking+=K.delta,q.text+=K.delta,W.push({type:"thinking_delta",contentIndex:Z(),delta:K.delta,partial:E})}}else if(K.type==="response.reasoning_summary_part.done"){if(N?.type==="reasoning"&&A?.type==="thinking"){N.summary=N.summary||[];let q=N.summary[N.summary.length-1];if(q)A.thinking+=`
4
4
 
5
5
  `,q.text+=`
@@ -11,4 +11,4 @@ import{$b as J}from"./chunk-6pqt1p9h.js";import{bc as w}from"./chunk-zzwyep2y.js
11
11
  `)||"",O=q.content?.map((Y)=>Y.text).join(`
12
12
 
13
13
  `)||"";A.thinking=G||O||A.thinking,A.thinkingSignature=JSON.stringify(q),W.push({type:"thinking_end",contentIndex:Z(),content:A.thinking,partial:E}),A=null}else if(q.type==="message"&&A?.type==="text")A.text=q.content.map((G)=>G.type==="output_text"?G.text:G.refusal).join(""),A.textSignature=M(q.id,q.phase??void 0),W.push({type:"text_end",contentIndex:Z(),content:A.text,partial:E}),A=null;else if(q.type==="function_call"){let G=A?.type==="toolCall"&&A.partialJson?w(A.partialJson):w(q.arguments||"{}"),O;if(A?.type==="toolCall")A.arguments=G,delete A.partialJson,O=A;else O={type:"toolCall",id:`${q.call_id}|${q.id}`,name:q.name,arguments:G};A=null,W.push({type:"toolcall_end",contentIndex:Z(),toolCall:O,partial:E})}}else if(K.type==="response.completed"){let q=K.response;if(q?.id)E.responseId=q.id;if(q?.usage){let G=q.usage.input_tokens_details?.cached_tokens||0;E.usage={input:(q.usage.input_tokens||0)-G,output:q.usage.output_tokens||0,cacheRead:G,cacheWrite:0,totalTokens:q.usage.total_tokens||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}if(j(U,E.usage),_?.applyServiceTierPricing){let G=_.resolveServiceTier?_.resolveServiceTier(q?.service_tier,_.serviceTier):q?.service_tier??_.serviceTier;_.applyServiceTierPricing(E.usage,G)}if(E.stopReason=T(q?.status),E.content.some((G)=>G.type==="toolCall")&&E.stopReason==="stop")E.stopReason="toolUse"}else if(K.type==="error")throw Error(`Error Code ${K.code}: ${K.message}`||"Unknown error");else if(K.type==="response.failed"){let q=K.response?.error,G=K.response?.incomplete_details,O=q?`${q.code||"unknown"}: ${q.message||"no message"}`:G?.reason?`incomplete: ${G.reason}`:"Unknown error (no error details in response)";throw Error(O)}}function T(Q){if(!Q)return"stop";switch(Q){case"completed":return"stop";case"incomplete":return"length";case"failed":case"cancelled":return"error";case"in_progress":case"queued":return"stop";default:throw Error(`Unhandled stop reason: ${Q}`)}}
14
- export{x as Ib,v as Jb,B as Kb};
14
+ export{x as yc,v as zc,B as Ac};