agentgraphed 0.2.2 → 0.3.0

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 (121) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +39 -18
  3. package/.next/standalone/.next/app-path-routes-manifest.json +6 -3
  4. package/.next/standalone/.next/build-manifest.json +2 -2
  5. package/.next/standalone/.next/routes-manifest.json +16 -0
  6. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  7. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  8. package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  9. package/.next/standalone/.next/server/app/analytics/page.js +2 -2
  10. package/.next/standalone/.next/server/app/analytics/page.js.nft.json +1 -1
  11. package/.next/standalone/.next/server/app/analytics/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/api/ingest-local/route_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/api/quota-probe/route_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/api/share/dashboard/route.js +1 -0
  15. package/.next/standalone/.next/server/app/api/share/dashboard/route.js.nft.json +1 -0
  16. package/.next/standalone/.next/server/app/api/share/dashboard/route_client-reference-manifest.js +1 -0
  17. package/.next/standalone/.next/server/app/api/share/project/[id]/route.js +1 -0
  18. package/.next/standalone/.next/server/app/api/share/project/[id]/route.js.nft.json +1 -0
  19. package/.next/standalone/.next/server/app/api/share/project/[id]/route_client-reference-manifest.js +1 -0
  20. package/.next/standalone/.next/server/app/api/share/session/[id]/route.js +1 -0
  21. package/.next/standalone/.next/server/app/api/share/session/[id]/route.js.nft.json +1 -0
  22. package/.next/standalone/.next/server/app/api/share/session/[id]/route_client-reference-manifest.js +1 -0
  23. package/.next/standalone/.next/server/app/page.js +46 -2
  24. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/projects/[id]/page.js +1 -1
  27. package/.next/standalone/.next/server/app/projects/[id]/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/projects/[id]/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/projects/page.js +44 -2
  30. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/sessions/[id]/page.js +3 -10
  33. package/.next/standalone/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/sessions/page.js +44 -2
  36. package/.next/standalone/.next/server/app/sessions/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/settings/page.js +8 -19
  39. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/timeline/page.js +44 -2
  42. package/.next/standalone/.next/server/app/timeline/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/timeline/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app-paths-manifest.json +6 -3
  45. package/.next/standalone/.next/server/chunks/165.js +2 -2
  46. package/.next/standalone/.next/server/chunks/191.js +1 -0
  47. package/.next/standalone/.next/server/chunks/367.js +43 -0
  48. package/.next/standalone/.next/server/chunks/660.js +1 -1
  49. package/.next/standalone/.next/server/chunks/693.js +1 -0
  50. package/.next/standalone/.next/server/chunks/837.js +12 -0
  51. package/.next/standalone/.next/server/chunks/944.js +19 -16
  52. package/.next/standalone/.next/server/chunks/970.js +9 -0
  53. package/.next/standalone/.next/server/functions-config-manifest.json +4 -1
  54. package/.next/standalone/.next/server/pages/404.html +1 -1
  55. package/.next/standalone/.next/server/pages/500.html +1 -1
  56. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  58. package/.next/standalone/.next/static/A6dvfHR2KYz42pasM2hyV/_buildManifest.js +1 -0
  59. package/.next/standalone/.next/static/chunks/app/api/ingest-local/route-3bc0072e65861283.js +1 -0
  60. package/.next/standalone/.next/static/chunks/app/api/quota-probe/route-3bc0072e65861283.js +1 -0
  61. package/.next/standalone/.next/static/chunks/app/api/share/dashboard/route-3bc0072e65861283.js +1 -0
  62. package/.next/standalone/.next/static/chunks/app/api/share/project/[id]/route-3bc0072e65861283.js +1 -0
  63. package/.next/standalone/.next/static/chunks/app/api/share/session/[id]/route-3bc0072e65861283.js +1 -0
  64. package/.next/standalone/.next/static/chunks/app/layout-4527370a1e451501.js +1 -0
  65. package/.next/standalone/.next/static/chunks/app/page-aa358006ddd29e91.js +1 -0
  66. package/.next/standalone/.next/static/chunks/app/projects/[id]/page-15f21aaacdacb59c.js +1 -0
  67. package/.next/standalone/.next/static/chunks/app/projects/page-d794cc35674274a4.js +1 -0
  68. package/.next/standalone/.next/static/chunks/app/sessions/[id]/page-a887f742425eb49c.js +1 -0
  69. package/.next/standalone/.next/static/chunks/app/sessions/page-35c503eef7e53742.js +1 -0
  70. package/.next/standalone/.next/static/chunks/app/settings/page-dc0bec0bd2577322.js +1 -0
  71. package/.next/standalone/.next/static/chunks/app/timeline/page-d794cc35674274a4.js +1 -0
  72. package/.next/standalone/.next/static/css/fff107f5d96e58c9.css +3 -0
  73. package/.next/standalone/node_modules/next/dist/compiled/@vercel/og/index.node.js +20180 -0
  74. package/.next/standalone/node_modules/next/dist/compiled/@vercel/og/noto-sans-v27-latin-regular.ttf +0 -0
  75. package/.next/standalone/node_modules/next/dist/compiled/@vercel/og/package.json +16 -0
  76. package/.next/standalone/node_modules/next/dist/compiled/@vercel/og/resvg.wasm +0 -0
  77. package/.next/standalone/node_modules/next/dist/compiled/@vercel/og/yoga.wasm +0 -0
  78. package/.next/standalone/package.json +2 -1
  79. package/.next/static/A6dvfHR2KYz42pasM2hyV/_buildManifest.js +1 -0
  80. package/.next/static/chunks/app/api/ingest-local/route-3bc0072e65861283.js +1 -0
  81. package/.next/static/chunks/app/api/quota-probe/route-3bc0072e65861283.js +1 -0
  82. package/.next/static/chunks/app/api/share/dashboard/route-3bc0072e65861283.js +1 -0
  83. package/.next/static/chunks/app/api/share/project/[id]/route-3bc0072e65861283.js +1 -0
  84. package/.next/static/chunks/app/api/share/session/[id]/route-3bc0072e65861283.js +1 -0
  85. package/.next/static/chunks/app/layout-4527370a1e451501.js +1 -0
  86. package/.next/static/chunks/app/page-aa358006ddd29e91.js +1 -0
  87. package/.next/static/chunks/app/projects/[id]/page-15f21aaacdacb59c.js +1 -0
  88. package/.next/static/chunks/app/projects/page-d794cc35674274a4.js +1 -0
  89. package/.next/static/chunks/app/sessions/[id]/page-a887f742425eb49c.js +1 -0
  90. package/.next/static/chunks/app/sessions/page-35c503eef7e53742.js +1 -0
  91. package/.next/static/chunks/app/settings/page-dc0bec0bd2577322.js +1 -0
  92. package/.next/static/chunks/app/timeline/page-d794cc35674274a4.js +1 -0
  93. package/.next/static/css/fff107f5d96e58c9.css +3 -0
  94. package/CHANGELOG.md +23 -0
  95. package/package.json +2 -1
  96. package/.next/standalone/.next/static/chunks/app/api/ingest-local/route-db04e57ba4c845d6.js +0 -1
  97. package/.next/standalone/.next/static/chunks/app/api/quota-probe/route-db04e57ba4c845d6.js +0 -1
  98. package/.next/standalone/.next/static/chunks/app/layout-359f69bd6ea201be.js +0 -1
  99. package/.next/standalone/.next/static/chunks/app/page-72efdd1b71c43e03.js +0 -1
  100. package/.next/standalone/.next/static/chunks/app/projects/[id]/page-85ce81e040071814.js +0 -1
  101. package/.next/standalone/.next/static/chunks/app/projects/page-85ce81e040071814.js +0 -1
  102. package/.next/standalone/.next/static/chunks/app/sessions/[id]/page-9e268d4cde844722.js +0 -1
  103. package/.next/standalone/.next/static/chunks/app/sessions/page-caef08af2717f525.js +0 -1
  104. package/.next/standalone/.next/static/chunks/app/settings/page-e26a7c386e472178.js +0 -1
  105. package/.next/standalone/.next/static/chunks/app/timeline/page-85ce81e040071814.js +0 -1
  106. package/.next/standalone/.next/static/css/568a2d3dc76080d7.css +0 -3
  107. package/.next/standalone/.next/static/x9UWQ4odHhvHvXGtRm2Bl/_buildManifest.js +0 -1
  108. package/.next/static/chunks/app/api/ingest-local/route-db04e57ba4c845d6.js +0 -1
  109. package/.next/static/chunks/app/api/quota-probe/route-db04e57ba4c845d6.js +0 -1
  110. package/.next/static/chunks/app/layout-359f69bd6ea201be.js +0 -1
  111. package/.next/static/chunks/app/page-72efdd1b71c43e03.js +0 -1
  112. package/.next/static/chunks/app/projects/[id]/page-85ce81e040071814.js +0 -1
  113. package/.next/static/chunks/app/projects/page-85ce81e040071814.js +0 -1
  114. package/.next/static/chunks/app/sessions/[id]/page-9e268d4cde844722.js +0 -1
  115. package/.next/static/chunks/app/sessions/page-caef08af2717f525.js +0 -1
  116. package/.next/static/chunks/app/settings/page-e26a7c386e472178.js +0 -1
  117. package/.next/static/chunks/app/timeline/page-85ce81e040071814.js +0 -1
  118. package/.next/static/css/568a2d3dc76080d7.css +0 -3
  119. package/.next/static/x9UWQ4odHhvHvXGtRm2Bl/_buildManifest.js +0 -1
  120. /package/.next/standalone/.next/static/{x9UWQ4odHhvHvXGtRm2Bl → A6dvfHR2KYz42pasM2hyV}/_ssgManifest.js +0 -0
  121. /package/.next/static/{x9UWQ4odHhvHvXGtRm2Bl → A6dvfHR2KYz42pasM2hyV}/_ssgManifest.js +0 -0
@@ -1,12 +1,5 @@
1
- (()=>{var a={};a.id=824,a.ids=[824],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},9998:(a,b,c)=>{"use strict";c.d(b,{SessionActions:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call SessionActions() from the server but SessionActions is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/mikekuehn/devProjects/agentgraphed/oss/src/components/SessionActions.tsx","SessionActions")},10386:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,65169,23)),Promise.resolve().then(c.bind(c,9998))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11997:a=>{"use strict";a.exports=require("punycode")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},25799:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unstable_rethrow",{enumerable:!0,get:function(){return function a(b){if((0,g.isNextRouterError)(b)||(0,f.isBailoutToCSRError)(b)||(0,i.isDynamicServerError)(b)||(0,h.isDynamicPostpone)(b)||(0,e.isPostpone)(b)||(0,d.isHangingPromiseRejectionError)(b))throw b;b instanceof Error&&"cause"in b&&a(b.cause)}}});let d=c(82831),e=c(43740),f=c(29305),g=c(61981),h=c(26906),i=c(69168);("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29088:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unauthorized",{enumerable:!0,get:function(){return d}}),c(98541).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},36541:(a,b,c)=>{"use strict";let d,e,f,g;c.r(b),c.d(b,{default:()=>d9,dynamic:()=>d8});var h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,aA,aB,aC,aD=c(75338),aE=c(82161),aF=c(65169),aG=c.n(aF),aH=c(40753),aI=c(73169),aJ=c(92490),aK=c(9998),aL=c(10944),aM=c(46145),aN=c(97064);function aO(a,b,c,d,e){if("m"===d)throw TypeError("Private method is not writable");if("a"===d&&!e)throw TypeError("Private accessor was defined without a setter");if("function"==typeof b?a!==b||!e:!b.has(a))throw TypeError("Cannot write private member to an object whose class did not declare it");return"a"===d?e.call(a,c):e?e.value=c:b.set(a,c),c}function aP(a,b,c,d){if("a"===c&&!d)throw TypeError("Private accessor was defined without a getter");if("function"==typeof b?a!==b||!d:!b.has(a))throw TypeError("Cannot read private member from an object whose class did not declare it");return"m"===c?d:"a"===c?d.call(a):d?d.value:b.get(a)}let aQ=function(){let{crypto:a}=globalThis;if(a?.randomUUID)return aQ=a.randomUUID.bind(a),a.randomUUID();let b=new Uint8Array(1),c=a?()=>a.getRandomValues(b)[0]:()=>255*Math.random()&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,a=>(a^c()&15>>a/4).toString(16))};function aR(a){return"object"==typeof a&&null!==a&&("name"in a&&"AbortError"===a.name||"message"in a&&String(a.message).includes("FetchRequestCanceledException"))}let aS=a=>{if(a instanceof Error)return a;if("object"==typeof a&&null!==a){try{if("[object Error]"===Object.prototype.toString.call(a)){let b=Error(a.message,a.cause?{cause:a.cause}:{});return a.stack&&(b.stack=a.stack),a.cause&&!b.cause&&(b.cause=a.cause),a.name&&(b.name=a.name),b}}catch{}try{return Error(JSON.stringify(a))}catch{}}return Error(a)};class aT extends Error{}class aU extends aT{constructor(a,b,c,d){super(`${aU.makeMessage(a,b,c)}`),this.status=a,this.headers=d,this.requestID=d?.get("x-request-id"),this.error=b,this.code=b?.code,this.param=b?.param,this.type=b?.type}static makeMessage(a,b,c){let d=b?.message?"string"==typeof b.message?b.message:JSON.stringify(b.message):b?JSON.stringify(b):c;return a&&d?`${a} ${d}`:a?`${a} status code (no body)`:d||"(no status code or body)"}static generate(a,b,c,d){if(!a||!d)return new aW({message:c,cause:aS(b)});let e=b?.error;return 400===a?new aY(a,e,c,d):401===a?new aZ(a,e,c,d):403===a?new a$(a,e,c,d):404===a?new a_(a,e,c,d):409===a?new a0(a,e,c,d):422===a?new a1(a,e,c,d):429===a?new a2(a,e,c,d):a>=500?new a3(a,e,c,d):new aU(a,e,c,d)}}class aV extends aU{constructor({message:a}={}){super(void 0,void 0,a||"Request was aborted.",void 0)}}class aW extends aU{constructor({message:a,cause:b}){super(void 0,void 0,a||"Connection error.",void 0),b&&(this.cause=b)}}class aX extends aW{constructor({message:a}={}){super({message:a??"Request timed out."})}}class aY extends aU{}class aZ extends aU{}class a$ extends aU{}class a_ extends aU{}class a0 extends aU{}class a1 extends aU{}class a2 extends aU{}class a3 extends aU{}class a4 extends aT{constructor(){super("Could not parse response content as the length limit was reached")}}class a5 extends aT{constructor(){super("Could not parse response content as the request was rejected by the content filter")}}class a6 extends Error{constructor(a){super(a)}}class a7 extends aU{constructor(a,b,c){let d,e="OAuth2 authentication error";if(b&&"object"==typeof b){d=b.error;let a=b.error_description;a&&"string"==typeof a?e=a:d&&(e=d)}super(a,b,e,c),this.error_code=d}}class a8 extends aT{constructor(a,b,c){super(a),this.provider=b,this.cause=c}}let a9=/^[a-z][a-z0-9+.-]*:/i,ba=a=>(ba=Array.isArray)(a),bb=ba;function bc(a){return"object"!=typeof a?{}:a??{}}function bd(a){if(!a)return!0;for(let b in a)return!1;return!0}function be(a){return null!=a&&"object"==typeof a&&!Array.isArray(a)}let bf=a=>new Promise(b=>setTimeout(b,a)),bg="6.42.0",bh=a=>"x32"===a?"x32":"x86_64"===a||"x64"===a?"x64":"arm"===a?"arm":"aarch64"===a||"arm64"===a?"arm64":a?`other:${a}`:"unknown",bi=a=>(a=a.toLowerCase()).includes("ios")?"iOS":"android"===a?"Android":"darwin"===a?"MacOS":"win32"===a?"Windows":"freebsd"===a?"FreeBSD":"openbsd"===a?"OpenBSD":"linux"===a?"Linux":a?`Other:${a}`:"Unknown";function bj(){if("undefined"!=typeof fetch)return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new OpenAI({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function bk(...a){let b=globalThis.ReadableStream;if(void 0===b)throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new b(...a)}function bl(a){let b=Symbol.asyncIterator in a?a[Symbol.asyncIterator]():a[Symbol.iterator]();return bk({start(){},async pull(a){let{done:c,value:d}=await b.next();c?a.close():a.enqueue(d)},async cancel(){await b.return?.()}})}function bm(a){if(a[Symbol.asyncIterator])return a;let b=a.getReader();return{async next(){try{let a=await b.read();return a?.done&&b.releaseLock(),a}catch(a){throw b.releaseLock(),a}},async return(){let a=b.cancel();return b.releaseLock(),await a,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function bn(a){if(null===a||"object"!=typeof a)return;if(a[Symbol.asyncIterator])return void await a[Symbol.asyncIterator]().return?.();let b=a.getReader(),c=b.cancel();b.releaseLock(),await c}let bo=({headers:a,body:b})=>({bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(b)}),bp="RFC3986",bq=a=>String(a),br={RFC1738:a=>String(a).replace(/%20/g,"+"),RFC3986:bq},bs=(a,b)=>(bs=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty))(a,b),bt=(()=>{let a=[];for(let b=0;b<256;++b)a.push("%"+((b<16?"0":"")+b.toString(16)).toUpperCase());return a})();function bu(a,b){if(ba(a)){let c=[];for(let d=0;d<a.length;d+=1)c.push(b(a[d]));return c}return b(a)}let bv={brackets:a=>String(a)+"[]",comma:"comma",indices:(a,b)=>String(a)+"["+b+"]",repeat:a=>String(a)},bw=function(a,b){Array.prototype.push.apply(a,ba(b)?b:[b])},bx={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:(a,b,c,d,e)=>{if(0===a.length)return a;let f=a;if("symbol"==typeof a?f=Symbol.prototype.toString.call(a):"string"!=typeof a&&(f=String(a)),"iso-8859-1"===c)return escape(f).replace(/%u[0-9a-f]{4}/gi,function(a){return"%26%23"+parseInt(a.slice(2),16)+"%3B"});let g="";for(let a=0;a<f.length;a+=1024){let b=f.length>=1024?f.slice(a,a+1024):f,c=[];for(let a=0;a<b.length;++a){let d=b.charCodeAt(a);if(45===d||46===d||95===d||126===d||d>=48&&d<=57||d>=65&&d<=90||d>=97&&d<=122||"RFC1738"===e&&(40===d||41===d)){c[c.length]=b.charAt(a);continue}if(d<128){c[c.length]=bt[d];continue}if(d<2048){c[c.length]=bt[192|d>>6]+bt[128|63&d];continue}if(d<55296||d>=57344){c[c.length]=bt[224|d>>12]+bt[128|d>>6&63]+bt[128|63&d];continue}a+=1,d=65536+((1023&d)<<10|1023&b.charCodeAt(a)),c[c.length]=bt[240|d>>18]+bt[128|d>>12&63]+bt[128|d>>6&63]+bt[128|63&d]}g+=c.join("")}return g},encodeValuesOnly:!1,format:bp,formatter:bq,indices:!1,serializeDate:a=>(e??(e=Function.prototype.call.bind(Date.prototype.toISOString)))(a),skipNulls:!1,strictNullHandling:!1},by={};function bz(a){let b;return(f??(f=(b=new globalThis.TextEncoder).encode.bind(b)))(a)}function bA(a){let b;return(g??(g=(b=new globalThis.TextDecoder).decode.bind(b)))(a)}class bB{constructor(){h.set(this,void 0),i.set(this,void 0),aO(this,h,new Uint8Array,"f"),aO(this,i,null,"f")}decode(a){let b;if(null==a)return[];let c=a instanceof ArrayBuffer?new Uint8Array(a):"string"==typeof a?bz(a):a;aO(this,h,function(a){let b=0;for(let c of a)b+=c.length;let c=new Uint8Array(b),d=0;for(let b of a)c.set(b,d),d+=b.length;return c}([aP(this,h,"f"),c]),"f");let d=[];for(;null!=(b=function(a,b){for(let c=b??0;c<a.length;c++){if(10===a[c])return{preceding:c,index:c+1,carriage:!1};if(13===a[c])return{preceding:c,index:c+1,carriage:!0}}return null}(aP(this,h,"f"),aP(this,i,"f")));){if(b.carriage&&null==aP(this,i,"f")){aO(this,i,b.index,"f");continue}if(null!=aP(this,i,"f")&&(b.index!==aP(this,i,"f")+1||b.carriage)){d.push(bA(aP(this,h,"f").subarray(0,aP(this,i,"f")-1))),aO(this,h,aP(this,h,"f").subarray(aP(this,i,"f")),"f"),aO(this,i,null,"f");continue}let a=null!==aP(this,i,"f")?b.preceding-1:b.preceding,c=bA(aP(this,h,"f").subarray(0,a));d.push(c),aO(this,h,aP(this,h,"f").subarray(b.index),"f"),aO(this,i,null,"f")}return d}flush(){return aP(this,h,"f").length?this.decode("\n"):[]}}h=new WeakMap,i=new WeakMap,bB.NEWLINE_CHARS=new Set(["\n","\r"]),bB.NEWLINE_REGEXP=/\r\n|[\n\r]/g;let bC={off:0,error:200,warn:300,info:400,debug:500},bD=(a,b,c)=>{if(a){if(Object.prototype.hasOwnProperty.call(bC,a))return a;bI(c).warn(`${b} was set to ${JSON.stringify(a)}, expected one of ${JSON.stringify(Object.keys(bC))}`)}};function bE(){}function bF(a,b,c){return!b||bC[a]>bC[c]?bE:b[a].bind(b)}let bG={error:bE,warn:bE,info:bE,debug:bE},bH=new WeakMap;function bI(a){let b=a.logger,c=a.logLevel??"off";if(!b)return bG;let d=bH.get(b);if(d&&d[0]===c)return d[1];let e={error:bF("error",b,c),warn:bF("warn",b,c),info:bF("info",b,c),debug:bF("debug",b,c)};return bH.set(b,[c,e]),e}let bJ=a=>(a.options&&(a.options={...a.options},delete a.options.headers),a.headers&&(a.headers=Object.fromEntries((a.headers instanceof Headers?[...a.headers]:Object.entries(a.headers)).map(([a,b])=>[a,"authorization"===a.toLowerCase()||"api-key"===a.toLowerCase()||"x-api-key"===a.toLowerCase()||"cookie"===a.toLowerCase()||"set-cookie"===a.toLowerCase()?"***":b]))),"retryOfRequestLogID"in a&&(a.retryOfRequestLogID&&(a.retryOf=a.retryOfRequestLogID),delete a.retryOfRequestLogID),a);class bK{constructor(a,b,c){this.iterator=a,j.set(this,void 0),this.controller=b,aO(this,j,c,"f")}static fromSSEResponse(a,b,c,d){let e=!1,f=c?bI(c):console;async function*g(){if(e)throw new aT("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");e=!0;let c=!1;try{for await(let e of bL(a,b))if(!c){if(e.data.startsWith("[DONE]")){c=!0;continue}if(null!==e.event&&e.event.startsWith("thread.")){let a;try{a=JSON.parse(e.data)}catch(a){throw console.error("Could not parse message into JSON:",e.data),console.error("From chunk:",e.raw),a}if("error"==e.event)throw new aU(void 0,a.error,a.message,void 0);yield{event:e.event,data:a}}else{let b;try{b=JSON.parse(e.data)}catch(a){throw f.error("Could not parse message into JSON:",e.data),f.error("From chunk:",e.raw),a}if(b&&b.error)throw new aU(void 0,b.error,void 0,a.headers);yield d?{event:e.event,data:b}:b}}c=!0}catch(a){if(aR(a))return;throw a}finally{c||b.abort()}}return new bK(g,b,c)}static fromReadableStream(a,b,c){let d=!1;async function*e(){let b=new bB;for await(let c of bm(a))for(let a of b.decode(c))yield a;for(let a of b.flush())yield a}return new bK(async function*(){if(d)throw new aT("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");d=!0;let a=!1;try{for await(let b of e())!a&&b&&(yield JSON.parse(b));a=!0}catch(a){if(aR(a))return;throw a}finally{a||b.abort()}},b,c)}[(j=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let a=[],b=[],c=this.iterator(),d=d=>({next:()=>{if(0===d.length){let d=c.next();a.push(d),b.push(d)}return d.shift()}});return[new bK(()=>d(a),this.controller,aP(this,j,"f")),new bK(()=>d(b),this.controller,aP(this,j,"f"))]}toReadableStream(){let a,b=this;return bk({async start(){a=b[Symbol.asyncIterator]()},async pull(b){try{let{value:c,done:d}=await a.next();if(d)return b.close();let e=bz(JSON.stringify(c)+"\n");b.enqueue(e)}catch(a){b.error(a)}},async cancel(){await a.return?.()}})}}async function*bL(a,b){if(!a.body){if(b.abort(),void 0!==globalThis.navigator&&"ReactNative"===globalThis.navigator.product)throw new aT("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api");throw new aT("Attempted to iterate over a response with no body")}let c=new bN,d=new bB;for await(let b of bM(bm(a.body)))for(let a of d.decode(b)){let b=c.decode(a);b&&(yield b)}for(let a of d.flush()){let b=c.decode(a);b&&(yield b)}}async function*bM(a){let b=new Uint8Array;for await(let c of a){let a;if(null==c)continue;let d=c instanceof ArrayBuffer?new Uint8Array(c):"string"==typeof c?bz(c):c,e=new Uint8Array(b.length+d.length);for(e.set(b),e.set(d,b.length),b=e;-1!==(a=function(a){for(let b=0;b<a.length-1;b++){if(10===a[b]&&10===a[b+1]||13===a[b]&&13===a[b+1])return b+2;if(13===a[b]&&10===a[b+1]&&b+3<a.length&&13===a[b+2]&&10===a[b+3])return b+4}return -1}(b));)yield b.slice(0,a),b=b.slice(a)}b.length>0&&(yield b)}class bN{constructor(){this.event=null,this.data=[],this.chunks=[]}decode(a){if(a.endsWith("\r")&&(a=a.substring(0,a.length-1)),!a){if(!this.event&&!this.data.length)return null;let a={event:this.event,data:this.data.join("\n"),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],a}if(this.chunks.push(a),a.startsWith(":"))return null;let[b,c,d]=function(a,b){let c=a.indexOf(":");return -1!==c?[a.substring(0,c),b,a.substring(c+b.length)]:[a,"",""]}(a,":");return d.startsWith(" ")&&(d=d.substring(1)),"event"===b?this.event=d:"data"===b&&this.data.push(d),null}}async function bO(a,b){let{response:c,requestLogID:d,retryOfRequestLogID:e,startTime:f}=b,g=await (async()=>{if(b.options.stream)return(bI(a).debug("response",c.status,c.url,c.headers,c.body),b.options.__streamClass)?b.options.__streamClass.fromSSEResponse(c,b.controller,a,b.options.__synthesizeEventData):bK.fromSSEResponse(c,b.controller,a,b.options.__synthesizeEventData);if(204===c.status)return null;if(b.options.__binaryResponse)return c;let d=c.headers.get("content-type"),e=d?.split(";")[0]?.trim();if(e?.includes("application/json")||e?.endsWith("+json")){if("0"===c.headers.get("content-length"))return;return bP(await c.json(),c)}return await c.text()})();return bI(a).debug(`[${d}] response parsed`,bJ({retryOfRequestLogID:e,url:c.url,status:c.status,body:g,durationMs:Date.now()-f})),g}function bP(a,b){return!a||"object"!=typeof a||Array.isArray(a)?a:Object.defineProperty(a,"_request_id",{value:b.headers.get("x-request-id"),enumerable:!1})}class bQ extends Promise{constructor(a,b,c=bO){super(a=>{a(null)}),this.responsePromise=b,this.parseResponse=c,k.set(this,void 0),aO(this,k,a,"f")}_thenUnwrap(a){return new bQ(aP(this,k,"f"),this.responsePromise,async(b,c)=>bP(a(await this.parseResponse(b,c),c),c.response))}asResponse(){return this.responsePromise.then(a=>a.response)}async withResponse(){let[a,b]=await Promise.all([this.parse(),this.asResponse()]);return{data:a,response:b,request_id:b.headers.get("x-request-id")}}parse(){return this.parsedPromise||(this.parsedPromise=this.responsePromise.then(a=>this.parseResponse(aP(this,k,"f"),a))),this.parsedPromise}then(a,b){return this.parse().then(a,b)}catch(a){return this.parse().catch(a)}finally(a){return this.parse().finally(a)}}k=new WeakMap;class bR{constructor(a,b,c,d){l.set(this,void 0),aO(this,l,a,"f"),this.options=d,this.response=b,this.body=c}hasNextPage(){return!!this.getPaginatedItems().length&&null!=this.nextPageRequestOptions()}async getNextPage(){let a=this.nextPageRequestOptions();if(!a)throw new aT("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");return await aP(this,l,"f").requestAPIList(this.constructor,a)}async *iterPages(){let a=this;for(yield a;a.hasNextPage();)a=await a.getNextPage(),yield a}async *[(l=new WeakMap,Symbol.asyncIterator)](){for await(let a of this.iterPages())for(let b of a.getPaginatedItems())yield b}}class bS extends bQ{constructor(a,b,c){super(a,b,async(a,b)=>new c(a,b.response,await bO(a,b),b.options))}async *[Symbol.asyncIterator](){for await(let a of(await this))yield a}}class bT extends bR{constructor(a,b,c,d){super(a,b,c,d),this.data=c.data||[],this.object=c.object}getPaginatedItems(){return this.data??[]}nextPageRequestOptions(){return null}}class bU extends bR{constructor(a,b,c,d){super(a,b,c,d),this.data=c.data||[],this.has_more=c.has_more||!1}getPaginatedItems(){return this.data??[]}hasNextPage(){return!1!==this.has_more&&super.hasNextPage()}nextPageRequestOptions(){let a=this.getPaginatedItems(),b=a[a.length-1]?.id;return b?{...this.options,query:{...bc(this.options.query),after:b}}:null}}class bV extends bR{constructor(a,b,c,d){super(a,b,c,d),this.data=c.data||[],this.has_more=c.has_more||!1,this.last_id=c.last_id||""}getPaginatedItems(){return this.data??[]}hasNextPage(){return!1!==this.has_more&&super.hasNextPage()}nextPageRequestOptions(){let a=this.last_id;return a?{...this.options,query:{...bc(this.options.query),after:a}}:null}}class bW extends bR{constructor(a,b,c,d){super(a,b,c,d),this.data=c.data||[],this.has_more=c.has_more||!1,this.next=c.next||null}getPaginatedItems(){return this.data??[]}hasNextPage(){return!1!==this.has_more&&super.hasNextPage()}nextPageRequestOptions(){let a=this.next;return a?{...this.options,query:{...bc(this.options.query),after:a}}:null}}let bX={jwt:"urn:ietf:params:oauth:token-type:jwt",id:"urn:ietf:params:oauth:token-type:id_token"};class bY{constructor(a,b){this.cachedToken=null,this.refreshPromise=null,this.tokenExchangeUrl="https://auth.openai.com/oauth/token",this.config=a,this.fetch=b??bj()}async getToken(){if(!this.cachedToken||this.isTokenExpired(this.cachedToken)){if(this.refreshPromise)return await this.refreshPromise;this.refreshPromise=this.refreshToken();try{return await this.refreshPromise}finally{this.refreshPromise=null}}return this.needsRefresh(this.cachedToken)&&!this.refreshPromise&&(this.refreshPromise=this.refreshToken().finally(()=>{this.refreshPromise=null})),this.cachedToken.token}async refreshToken(){let a={grant_type:"urn:ietf:params:oauth:grant-type:token-exchange",subject_token:await this.config.provider.getToken(),subject_token_type:bX[this.config.provider.tokenType],identity_provider_id:this.config.identityProviderId,service_account_id:this.config.serviceAccountId};this.config.clientId&&(a.client_id=this.config.clientId);let b=await this.fetch(this.tokenExchangeUrl,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok){let a,c=await b.text();try{a=JSON.parse(c)}catch{}if(400===b.status||401===b.status||403===b.status)throw new a7(b.status,a,b.headers);throw aU.generate(b.status,a,`Token exchange failed with status ${b.status}`,b.headers)}let c=await b.json(),d=c.expires_in||3600,e=Date.now()+1e3*d;return this.cachedToken={token:c.access_token,expiresAt:e},c.access_token}isTokenExpired(a){return Date.now()>=a.expiresAt}needsRefresh(a){let b=this.config.refreshBufferSeconds??1200;return Date.now()>=a.expiresAt-1e3*b}invalidateToken(){this.cachedToken=null,this.refreshPromise=null}}let bZ=()=>{if("undefined"==typeof File){let{process:a}=globalThis;throw Error("`File` is not defined as a global, which is required for file uploads."+("string"==typeof a?.versions?.node&&20>parseInt(a.versions.node.split("."))?" Update to Node 20 LTS or newer, or set `globalThis.File` to `import('node:buffer').File`.":""))}};function b$(a,b,c){return bZ(),new File(a,b??"unknown_file",c)}function b_(a){return("object"==typeof a&&null!==a&&("name"in a&&a.name&&String(a.name)||"url"in a&&a.url&&String(a.url)||"filename"in a&&a.filename&&String(a.filename)||"path"in a&&a.path&&String(a.path))||"").split(/[\\/]/).pop()||void 0}let b0=a=>null!=a&&"object"==typeof a&&"function"==typeof a[Symbol.asyncIterator],b1=async(a,b)=>b6(a.body)?{...a,body:await b4(a.body,b)}:a,b2=async(a,b)=>({...a,body:await b4(a.body,b)}),b3=new WeakMap,b4=async(a,b)=>{if(!await function(a){let b="function"==typeof a?a:a.fetch,c=b3.get(b);if(c)return c;let d=(async()=>{try{let a="Response"in b?b.Response:(await b("data:,")).constructor,c=new FormData;if(c.toString()===await new a(c).text())return!1;return!0}catch{return!0}})();return b3.set(b,d),d}(b))throw TypeError("The provided fetch function does not support file uploads with the current global FormData class.");let c=new FormData;return await Promise.all(Object.entries(a||{}).map(([a,b])=>b7(c,a,b))),c},b5=a=>a instanceof Blob&&"name"in a,b6=a=>{if((a=>"object"==typeof a&&null!==a&&(a instanceof Response||b0(a)||b5(a)))(a))return!0;if(Array.isArray(a))return a.some(b6);if(a&&"object"==typeof a){for(let b in a)if(b6(a[b]))return!0}return!1},b7=async(a,b,c)=>{if(void 0!==c){if(null==c)throw TypeError(`Received null for "${b}"; to pass null in FormData, you must use the string 'null'`);if("string"==typeof c||"number"==typeof c||"boolean"==typeof c)a.append(b,String(c));else if(c instanceof Response)a.append(b,b$([await c.blob()],b_(c)));else if(b0(c))a.append(b,b$([await new Response(bl(c)).blob()],b_(c)));else if(b5(c))a.append(b,c,b_(c));else if(Array.isArray(c))await Promise.all(c.map(c=>b7(a,b+"[]",c)));else if("object"==typeof c)await Promise.all(Object.entries(c).map(([c,d])=>b7(a,`${b}[${c}]`,d)));else throw TypeError(`Invalid value given to form, expected a string, number, boolean, object, Array, File or Blob but got ${c} instead`)}},b8=a=>null!=a&&"object"==typeof a&&"number"==typeof a.size&&"string"==typeof a.type&&"function"==typeof a.text&&"function"==typeof a.slice&&"function"==typeof a.arrayBuffer;async function b9(a,b,c){let d,e;if(bZ(),null!=(d=a=await a)&&"object"==typeof d&&"string"==typeof d.name&&"number"==typeof d.lastModified&&b8(d))return a instanceof File?a:b$([await a.arrayBuffer()],a.name);if(null!=(e=a)&&"object"==typeof e&&"string"==typeof e.url&&"function"==typeof e.blob){let d=await a.blob();return b||(b=new URL(a.url).pathname.split(/[\\/]/).pop()),b$(await ca(d),b,c)}let f=await ca(a);if(b||(b=b_(a)),!c?.type){let a=f.find(a=>"object"==typeof a&&"type"in a&&a.type);"string"==typeof a&&(c={...c,type:a})}return b$(f,b,c)}async function ca(a){let b=[];if("string"==typeof a||ArrayBuffer.isView(a)||a instanceof ArrayBuffer)b.push(a);else if(b8(a))b.push(a instanceof Blob?a:await a.arrayBuffer());else if(b0(a))for await(let c of a)b.push(...await ca(c));else{let b=a?.constructor?.name;throw Error(`Unexpected data type: ${typeof a}${b?`; constructor: ${b}`:""}${function(a){if("object"!=typeof a||null===a)return"";let b=Object.getOwnPropertyNames(a);return`; props: [${b.map(a=>`"${a}"`).join(", ")}]`}(a)}`)}return b}class cb{constructor(a){this._client=a}}function cc(a){return a.replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/g,encodeURIComponent)}let cd=Object.freeze(Object.create(null)),ce=((a=cc)=>function(b,...c){let d;if(1===b.length)return b[0];let e=!1,f=[],g=b.reduce((b,d,g)=>{/[?#]/.test(d)&&(e=!0);let h=c[g],i=(e?encodeURIComponent:a)(""+h);return g!==c.length&&(null==h||"object"==typeof h&&h.toString===Object.getPrototypeOf(Object.getPrototypeOf(h.hasOwnProperty??cd)??cd)?.toString)&&(i=h+"",f.push({start:b.length+d.length,length:i.length,error:`Value of type ${Object.prototype.toString.call(h).slice(8,-1)} is not a valid path parameter`})),b+d+(g===c.length?"":i)},""),h=g.split(/[?#]/,1)[0],i=/(?<=^|\/)(?:\.|%2e){1,2}(?=\/|$)/gi;for(;null!==(d=i.exec(h));)f.push({start:d.index,length:d[0].length,error:`Value "${d[0]}" can't be safely passed as a path parameter`});if(f.sort((a,b)=>a.start-b.start),f.length>0){let a=0,b=f.reduce((b,c)=>{let d=" ".repeat(c.start-a),e="^".repeat(c.length);return a=c.start+c.length,b+d+e},"");throw new aT(`Path parameters result in path with invalid segments:
2
- ${f.map(a=>a.error).join("\n")}
3
- ${g}
4
- ${b}`)}return g})(cc);class cf extends cb{list(a,b={},c){return this._client.getAPIList(ce`/chat/completions/${a}/messages`,bU,{query:b,...c,__security:{bearerAuth:!0}})}}function cg(a){return void 0!==a&&"function"in a&&void 0!==a.function}function ch(a){return a?.$brand==="auto-parseable-response-format"}function ci(a){return a?.$brand==="auto-parseable-tool"}function cj(a,b){let c=a.choices.map(a=>{var c,d;if("length"===a.finish_reason)throw new a4;if("content_filter"===a.finish_reason)throw new a5;return cl(a.message.tool_calls),{...a,message:{...a.message,...a.message.tool_calls?{tool_calls:a.message.tool_calls?.map(a=>(function(a,b){let c=a.tools?.find(a=>cg(a)&&a.function?.name===b.function.name);return{...b,function:{...b.function,parsed_arguments:ci(c)?c.$parseRaw(b.function.arguments):c?.function.strict?JSON.parse(b.function.arguments):null}}})(b,a))??void 0}:void 0,parsed:a.message.content&&!a.message.refusal?(c=b,d=a.message.content,c.response_format?.type!=="json_schema"?null:c.response_format?.type==="json_schema"?"$parseRaw"in c.response_format?c.response_format.$parseRaw(d):JSON.parse(d):null):null}}});return{...a,choices:c}}function ck(a){return!!ch(a.response_format)||(a.tools?.some(a=>ci(a)||"function"===a.type&&!0===a.function.strict)??!1)}function cl(a){for(let b of a||[])if("function"!==b.type)throw new aT(`Currently only \`function\` tool calls are supported; Received \`${b.type}\``)}let cm=a=>a?.role==="assistant",cn=a=>a?.role==="tool";class co{constructor(){m.add(this),this.controller=new AbortController,n.set(this,void 0),o.set(this,()=>{}),p.set(this,()=>{}),q.set(this,void 0),r.set(this,()=>{}),s.set(this,()=>{}),t.set(this,{}),u.set(this,!1),v.set(this,!1),w.set(this,!1),x.set(this,!1),aO(this,n,new Promise((a,b)=>{aO(this,o,a,"f"),aO(this,p,b,"f")}),"f"),aO(this,q,new Promise((a,b)=>{aO(this,r,a,"f"),aO(this,s,b,"f")}),"f"),aP(this,n,"f").catch(()=>{}),aP(this,q,"f").catch(()=>{})}_run(a){setTimeout(()=>{a().then(()=>{this._emitFinal(),this._emit("end")},aP(this,m,"m",y).bind(this))},0)}_connected(){this.ended||(aP(this,o,"f").call(this),this._emit("connect"))}get ended(){return aP(this,u,"f")}get errored(){return aP(this,v,"f")}get aborted(){return aP(this,w,"f")}abort(){this.controller.abort()}on(a,b){return(aP(this,t,"f")[a]||(aP(this,t,"f")[a]=[])).push({listener:b}),this}off(a,b){let c=aP(this,t,"f")[a];if(!c)return this;let d=c.findIndex(a=>a.listener===b);return d>=0&&c.splice(d,1),this}once(a,b){return(aP(this,t,"f")[a]||(aP(this,t,"f")[a]=[])).push({listener:b,once:!0}),this}emitted(a){return new Promise((b,c)=>{aO(this,x,!0,"f"),"error"!==a&&this.once("error",c),this.once(a,b)})}async done(){aO(this,x,!0,"f"),await aP(this,q,"f")}_emit(a,...b){if(aP(this,u,"f"))return;"end"===a&&(aO(this,u,!0,"f"),aP(this,r,"f").call(this));let c=aP(this,t,"f")[a];if(c&&(aP(this,t,"f")[a]=c.filter(a=>!a.once),c.forEach(({listener:a})=>a(...b))),"abort"===a){let a=b[0];aP(this,x,"f")||c?.length||Promise.reject(a),aP(this,p,"f").call(this,a),aP(this,s,"f").call(this,a),this._emit("end");return}if("error"===a){let a=b[0];aP(this,x,"f")||c?.length||Promise.reject(a),aP(this,p,"f").call(this,a),aP(this,s,"f").call(this,a),this._emit("end")}}_emitFinal(){}}n=new WeakMap,o=new WeakMap,p=new WeakMap,q=new WeakMap,r=new WeakMap,s=new WeakMap,t=new WeakMap,u=new WeakMap,v=new WeakMap,w=new WeakMap,x=new WeakMap,m=new WeakSet,y=function(a){if(aO(this,v,!0,"f"),a instanceof Error&&"AbortError"===a.name&&(a=new aV),a instanceof aV)return aO(this,w,!0,"f"),this._emit("abort",a);if(a instanceof aT)return this._emit("error",a);if(a instanceof Error){let b=new aT(a.message);return b.cause=a,this._emit("error",b)}return this._emit("error",new aT(String(a)))};class cp extends co{constructor(){super(...arguments),z.add(this),this._chatCompletions=[],this.messages=[]}_addChatCompletion(a){this._chatCompletions.push(a),this._emit("chatCompletion",a);let b=a.choices[0]?.message;return b&&this._addMessage(b),a}_addMessage(a,b=!0){if("content"in a||(a.content=null),this.messages.push(a),b){if(this._emit("message",a),cn(a)&&a.content)this._emit("functionToolCallResult",a.content);else if(cm(a)&&a.tool_calls)for(let b of a.tool_calls)"function"===b.type&&this._emit("functionToolCall",b.function)}}async finalChatCompletion(){await this.done();let a=this._chatCompletions[this._chatCompletions.length-1];if(!a)throw new aT("stream ended without producing a ChatCompletion");return a}async finalContent(){return await this.done(),aP(this,z,"m",A).call(this)}async finalMessage(){return await this.done(),aP(this,z,"m",B).call(this)}async finalFunctionToolCall(){return await this.done(),aP(this,z,"m",C).call(this)}async finalFunctionToolCallResult(){return await this.done(),aP(this,z,"m",D).call(this)}async totalUsage(){return await this.done(),aP(this,z,"m",E).call(this)}allChatCompletions(){return[...this._chatCompletions]}_emitFinal(){let a=this._chatCompletions[this._chatCompletions.length-1];a&&this._emit("finalChatCompletion",a);let b=aP(this,z,"m",B).call(this);b&&this._emit("finalMessage",b);let c=aP(this,z,"m",A).call(this);c&&this._emit("finalContent",c);let d=aP(this,z,"m",C).call(this);d&&this._emit("finalFunctionToolCall",d);let e=aP(this,z,"m",D).call(this);null!=e&&this._emit("finalFunctionToolCallResult",e),this._chatCompletions.some(a=>a.usage)&&this._emit("totalUsage",aP(this,z,"m",E).call(this))}async _createChatCompletion(a,b,c){let d=c?.signal;d&&(d.aborted&&this.controller.abort(),d.addEventListener("abort",()=>this.controller.abort())),aP(this,z,"m",F).call(this,b);let e=await a.chat.completions.create({...b,stream:!1},{...c,signal:this.controller.signal});return this._connected(),this._addChatCompletion(cj(e,b))}async _runChatCompletion(a,b,c){for(let a of b.messages)this._addMessage(a,!1);return await this._createChatCompletion(a,b,c)}async _runTools(a,b,c){let d="tool",{tool_choice:e="auto",stream:f,...g}=b,h="string"!=typeof e&&"function"===e.type&&e?.function?.name,{maxChatCompletions:i=10}=c||{},j=b.tools.map(a=>{if(ci(a)){if(!a.$callback)throw new aT("Tool given to `.runTools()` that does not have an associated function");return{type:"function",function:{function:a.$callback,name:a.function.name,description:a.function.description||"",parameters:a.function.parameters,parse:a.$parseRaw,strict:!0}}}return a}),k={};for(let a of j)"function"===a.type&&(k[a.function.name||a.function.function.name]=a.function);let l="tools"in b?j.map(a=>"function"===a.type?{type:"function",function:{name:a.function.name||a.function.function.name,parameters:a.function.parameters,description:a.function.description,strict:a.function.strict}}:a):void 0;for(let a of b.messages)this._addMessage(a,!1);for(let b=0;b<i;++b){let b=await this._createChatCompletion(a,{...g,tool_choice:e,tools:l,messages:[...this.messages]},c),f=b.choices[0]?.message;if(!f)throw new aT("missing message in ChatCompletion response");if(!f.tool_calls?.length)break;for(let a of f.tool_calls){let b;if("function"!==a.type)continue;let c=a.id,{name:e,arguments:f}=a.function,g=k[e];if(g){if(h&&h!==e){let a=`Invalid tool_call: ${JSON.stringify(e)}. ${JSON.stringify(h)} requested. Please try again`;this._addMessage({role:d,tool_call_id:c,content:a});continue}}else{let a=`Invalid tool_call: ${JSON.stringify(e)}. Available options are: ${Object.keys(k).map(a=>JSON.stringify(a)).join(", ")}. Please try again`;this._addMessage({role:d,tool_call_id:c,content:a});continue}try{b="function"==typeof g.parse?await g.parse(f):f}catch(b){let a=b instanceof Error?b.message:String(b);this._addMessage({role:d,tool_call_id:c,content:a});continue}let i=await g.function(b,this),j=aP(this,z,"m",G).call(this,i);if(this._addMessage({role:d,tool_call_id:c,content:j}),h)return}}}}z=new WeakSet,A=function(){return aP(this,z,"m",B).call(this).content??null},B=function(){let a=this.messages.length;for(;a-- >0;){let b=this.messages[a];if(cm(b))return{...b,content:b.content??null,refusal:b.refusal??null}}throw new aT("stream ended without producing a ChatCompletionMessage with role=assistant")},C=function(){for(let a=this.messages.length-1;a>=0;a--){let b=this.messages[a];if(cm(b)&&b?.tool_calls?.length)return b.tool_calls.filter(a=>"function"===a.type).at(-1)?.function}},D=function(){for(let a=this.messages.length-1;a>=0;a--){let b=this.messages[a];if(cn(b)&&null!=b.content&&"string"==typeof b.content&&this.messages.some(a=>"assistant"===a.role&&a.tool_calls?.some(a=>"function"===a.type&&a.id===b.tool_call_id)))return b.content}},E=function(){let a={completion_tokens:0,prompt_tokens:0,total_tokens:0};for(let{usage:b}of this._chatCompletions)b&&(a.completion_tokens+=b.completion_tokens,a.prompt_tokens+=b.prompt_tokens,a.total_tokens+=b.total_tokens);return a},F=function(a){if(null!=a.n&&a.n>1)throw new aT("ChatCompletion convenience helpers only support n=1 at this time. To use n>1, please use chat.completions.create() directly.")},G=function(a){return"string"==typeof a?a:void 0===a?"undefined":JSON.stringify(a)};class cq extends cp{static runTools(a,b,c){let d=new cq,e={...c,headers:{...c?.headers,"X-Stainless-Helper-Method":"runTools"}};return d._run(()=>d._runTools(a,b,e)),d}_addMessage(a,b=!0){super._addMessage(a,b),cm(a)&&a.content&&this._emit("content",a.content)}}let cr={STR:1,NUM:2,ARR:4,OBJ:8,NULL:16,BOOL:32,NAN:64,INFINITY:128,MINUS_INFINITY:256,INF:384,ALL:511};class cs extends Error{}class ct extends Error{}let cu=a=>(function(a,b=cr.ALL){if("string"!=typeof a)throw TypeError(`expecting str, got ${typeof a}`);if(!a.trim())throw Error(`${a} is empty`);return((a,b)=>{let c=a.length,d=0,e=a=>{throw new cs(`${a} at position ${d}`)},f=a=>{throw new ct(`${a} at position ${d}`)},g=()=>(l(),d>=c&&e("Unexpected end of input"),'"'===a[d])?h():"{"===a[d]?i():"["===a[d]?j():"null"===a.substring(d,d+4)||cr.NULL&b&&c-d<4&&"null".startsWith(a.substring(d))?(d+=4,null):"true"===a.substring(d,d+4)||cr.BOOL&b&&c-d<4&&"true".startsWith(a.substring(d))?(d+=4,!0):"false"===a.substring(d,d+5)||cr.BOOL&b&&c-d<5&&"false".startsWith(a.substring(d))?(d+=5,!1):"Infinity"===a.substring(d,d+8)||cr.INFINITY&b&&c-d<8&&"Infinity".startsWith(a.substring(d))?(d+=8,1/0):"-Infinity"===a.substring(d,d+9)||cr.MINUS_INFINITY&b&&1<c-d&&c-d<9&&"-Infinity".startsWith(a.substring(d))?(d+=9,-1/0):"NaN"===a.substring(d,d+3)||cr.NAN&b&&c-d<3&&"NaN".startsWith(a.substring(d))?(d+=3,NaN):k(),h=()=>{let g=d,h=!1;for(d++;d<c&&('"'!==a[d]||h&&"\\"===a[d-1]);)h="\\"===a[d]&&!h,d++;if('"'==a.charAt(d))try{return JSON.parse(a.substring(g,++d-Number(h)))}catch(a){f(String(a))}else if(cr.STR&b)try{return JSON.parse(a.substring(g,d-Number(h))+'"')}catch(b){return JSON.parse(a.substring(g,a.lastIndexOf("\\"))+'"')}e("Unterminated string literal")},i=()=>{d++,l();let f={};try{for(;"}"!==a[d];){if(l(),d>=c&&cr.OBJ&b)return f;let e=h();l(),d++;try{let a=g();Object.defineProperty(f,e,{value:a,writable:!0,enumerable:!0,configurable:!0})}catch(a){if(cr.OBJ&b)return f;throw a}l(),","===a[d]&&d++}}catch(a){if(cr.OBJ&b)return f;e("Expected '}' at end of object")}return d++,f},j=()=>{d++;let c=[];try{for(;"]"!==a[d];)c.push(g()),l(),","===a[d]&&d++}catch(a){if(cr.ARR&b)return c;e("Expected ']' at end of array")}return d++,c},k=()=>{if(0===d){"-"===a&&cr.NUM&b&&e("Not sure what '-' is");try{return JSON.parse(a)}catch(c){if(cr.NUM&b)try{if("."===a[a.length-1])return JSON.parse(a.substring(0,a.lastIndexOf(".")));return JSON.parse(a.substring(0,a.lastIndexOf("e")))}catch(a){}f(String(c))}}let g=d;for("-"===a[d]&&d++;a[d]&&!",]}".includes(a[d]);)d++;d!=c||cr.NUM&b||e("Unterminated number literal");try{return JSON.parse(a.substring(g,d))}catch(c){"-"===a.substring(g,d)&&cr.NUM&b&&e("Not sure what '-' is");try{return JSON.parse(a.substring(g,a.lastIndexOf("e")))}catch(a){f(String(a))}}},l=()=>{for(;d<c&&" \n\r ".includes(a[d]);)d++};return g()})(a.trim(),b)})(a,cr.ALL^cr.NUM);class cv extends cp{constructor(a){super(),H.add(this),I.set(this,void 0),J.set(this,void 0),K.set(this,void 0),aO(this,I,a,"f"),aO(this,J,[],"f")}get currentChatCompletionSnapshot(){return aP(this,K,"f")}static fromReadableStream(a){let b=new cv(null);return b._run(()=>b._fromReadableStream(a)),b}static createChatCompletion(a,b,c){let d=new cv(b);return d._run(()=>d._runChatCompletion(a,{...b,stream:!0},{...c,headers:{...c?.headers,"X-Stainless-Helper-Method":"stream"}})),d}async _createChatCompletion(a,b,c){super._createChatCompletion;let d=c?.signal;d&&(d.aborted&&this.controller.abort(),d.addEventListener("abort",()=>this.controller.abort())),aP(this,H,"m",L).call(this);let e=await a.chat.completions.create({...b,stream:!0},{...c,signal:this.controller.signal});for await(let a of(this._connected(),e))aP(this,H,"m",N).call(this,a);if(e.controller.signal?.aborted)throw new aV;return this._addChatCompletion(aP(this,H,"m",Q).call(this))}async _fromReadableStream(a,b){let c,d=b?.signal;d&&(d.aborted&&this.controller.abort(),d.addEventListener("abort",()=>this.controller.abort())),aP(this,H,"m",L).call(this),this._connected();let e=bK.fromReadableStream(a,this.controller);for await(let a of e)c&&c!==a.id&&this._addChatCompletion(aP(this,H,"m",Q).call(this)),aP(this,H,"m",N).call(this,a),c=a.id;if(e.controller.signal?.aborted)throw new aV;return this._addChatCompletion(aP(this,H,"m",Q).call(this))}[(I=new WeakMap,J=new WeakMap,K=new WeakMap,H=new WeakSet,L=function(){this.ended||aO(this,K,void 0,"f")},M=function(a){let b=aP(this,J,"f")[a.index];return b||(b={content_done:!1,refusal_done:!1,logprobs_content_done:!1,logprobs_refusal_done:!1,done_tool_calls:new Set,current_tool_call_index:null},aP(this,J,"f")[a.index]=b),b},N=function(a){if(this.ended)return;let b=aP(this,H,"m",S).call(this,a);for(let c of(this._emit("chunk",a,b),a.choices)){let a=b.choices[c.index];null!=c.delta.content&&a.message?.role==="assistant"&&a.message?.content&&(this._emit("content",c.delta.content,a.message.content),this._emit("content.delta",{delta:c.delta.content,snapshot:a.message.content,parsed:a.message.parsed})),null!=c.delta.refusal&&a.message?.role==="assistant"&&a.message?.refusal&&this._emit("refusal.delta",{delta:c.delta.refusal,snapshot:a.message.refusal}),c.logprobs?.content!=null&&a.message?.role==="assistant"&&this._emit("logprobs.content.delta",{content:c.logprobs?.content,snapshot:a.logprobs?.content??[]}),c.logprobs?.refusal!=null&&a.message?.role==="assistant"&&this._emit("logprobs.refusal.delta",{refusal:c.logprobs?.refusal,snapshot:a.logprobs?.refusal??[]});let d=aP(this,H,"m",M).call(this,a);for(let b of(a.finish_reason&&(aP(this,H,"m",P).call(this,a),null!=d.current_tool_call_index&&aP(this,H,"m",O).call(this,a,d.current_tool_call_index)),c.delta.tool_calls??[]))d.current_tool_call_index!==b.index&&(aP(this,H,"m",P).call(this,a),null!=d.current_tool_call_index&&aP(this,H,"m",O).call(this,a,d.current_tool_call_index)),d.current_tool_call_index=b.index;for(let b of c.delta.tool_calls??[]){let c=a.message.tool_calls?.[b.index];c?.type&&(c?.type==="function"?this._emit("tool_calls.function.arguments.delta",{name:c.function?.name,index:b.index,arguments:c.function.arguments,parsed_arguments:c.function.parsed_arguments,arguments_delta:b.function?.arguments??""}):c?.type)}}},O=function(a,b){if(aP(this,H,"m",M).call(this,a).done_tool_calls.has(b))return;let c=a.message.tool_calls?.[b];if(!c)throw Error("no tool call snapshot");if(!c.type)throw Error("tool call snapshot missing `type`");if("function"===c.type){let a=aP(this,I,"f")?.tools?.find(a=>cg(a)&&a.function.name===c.function.name);this._emit("tool_calls.function.arguments.done",{name:c.function.name,index:b,arguments:c.function.arguments,parsed_arguments:ci(a)?a.$parseRaw(c.function.arguments):a?.function.strict?JSON.parse(c.function.arguments):null})}else c.type},P=function(a){let b=aP(this,H,"m",M).call(this,a);if(a.message.content&&!b.content_done){b.content_done=!0;let c=aP(this,H,"m",R).call(this);this._emit("content.done",{content:a.message.content,parsed:c?c.$parseRaw(a.message.content):null})}a.message.refusal&&!b.refusal_done&&(b.refusal_done=!0,this._emit("refusal.done",{refusal:a.message.refusal})),a.logprobs?.content&&!b.logprobs_content_done&&(b.logprobs_content_done=!0,this._emit("logprobs.content.done",{content:a.logprobs.content})),a.logprobs?.refusal&&!b.logprobs_refusal_done&&(b.logprobs_refusal_done=!0,this._emit("logprobs.refusal.done",{refusal:a.logprobs.refusal}))},Q=function(){if(this.ended)throw new aT("stream has ended, this shouldn't happen");let a=aP(this,K,"f");if(!a)throw new aT("request ended without sending any chunks");return aO(this,K,void 0,"f"),aO(this,J,[],"f"),function(a,b){var c;let{id:d,choices:e,created:f,model:g,system_fingerprint:h,...i}=a;return c={...i,id:d,choices:e.map(({message:b,finish_reason:c,index:d,logprobs:e,...f})=>{if(!c)throw new aT(`missing finish_reason for choice ${d}`);let{content:g=null,function_call:h,tool_calls:i,...j}=b,k=b.role;if(!k)throw new aT(`missing role for choice ${d}`);if(h){let{arguments:a,name:i}=h;if(null==a)throw new aT(`missing function_call.arguments for choice ${d}`);if(!i)throw new aT(`missing function_call.name for choice ${d}`);return{...f,message:{content:g,function_call:{arguments:a,name:i},role:k,refusal:b.refusal??null},finish_reason:c,index:d,logprobs:e}}return i?{...f,index:d,finish_reason:c,logprobs:e,message:{...j,role:k,content:g,refusal:b.refusal??null,tool_calls:i.map((b,c)=>{let{function:e,type:f,id:g,...h}=b,{arguments:i,name:j,...k}=e||{};if(null==g)throw new aT(`missing choices[${d}].tool_calls[${c}].id
5
- ${cw(a)}`);if(null==f)throw new aT(`missing choices[${d}].tool_calls[${c}].type
6
- ${cw(a)}`);if(null==j)throw new aT(`missing choices[${d}].tool_calls[${c}].function.name
7
- ${cw(a)}`);if(null==i)throw new aT(`missing choices[${d}].tool_calls[${c}].function.arguments
8
- ${cw(a)}`);return{...h,id:g,type:f,function:{...k,name:j,arguments:i}}})}}:{...f,message:{...j,content:g,role:k,refusal:b.refusal??null},finish_reason:c,index:d,logprobs:e}}),created:f,model:g,object:"chat.completion",...h?{system_fingerprint:h}:{}},b&&ck(b)?cj(c,b):{...c,choices:c.choices.map(a=>(cl(a.message.tool_calls),{...a,message:{...a.message,parsed:null,...a.message.tool_calls?{tool_calls:a.message.tool_calls}:void 0}}))}}(a,aP(this,I,"f"))},R=function(){let a=aP(this,I,"f")?.response_format;return ch(a)?a:null},S=function(a){var b,c,d,e;let f=aP(this,K,"f"),{choices:g,...h}=a;for(let{delta:g,finish_reason:i,index:j,logprobs:k=null,...l}of(f?Object.assign(f,h):f=aO(this,K,{...h,choices:[]},"f"),a.choices)){let a=f.choices[j];if(a||(a=f.choices[j]={finish_reason:i,index:j,message:{},logprobs:k,...l}),k)if(a.logprobs){let{content:d,refusal:e,...f}=k;Object.assign(a.logprobs,f),d&&((b=a.logprobs).content??(b.content=[]),a.logprobs.content.push(...d)),e&&((c=a.logprobs).refusal??(c.refusal=[]),a.logprobs.refusal.push(...e))}else a.logprobs=Object.assign({},k);if(i&&(a.finish_reason=i,aP(this,I,"f")&&ck(aP(this,I,"f")))){if("length"===i)throw new a4;if("content_filter"===i)throw new a5}if(Object.assign(a,l),!g)continue;let{content:h,refusal:m,function_call:n,role:o,tool_calls:p,...q}=g;if(Object.assign(a.message,q),m&&(a.message.refusal=(a.message.refusal||"")+m),o&&(a.message.role=o),n&&(a.message.function_call?(n.name&&(a.message.function_call.name=n.name),n.arguments&&((d=a.message.function_call).arguments??(d.arguments=""),a.message.function_call.arguments+=n.arguments)):a.message.function_call=n),h&&(a.message.content=(a.message.content||"")+h,!a.message.refusal&&aP(this,H,"m",R).call(this)&&(a.message.parsed=cu(a.message.content))),p)for(let{index:b,id:c,type:d,function:f,...g}of(a.message.tool_calls||(a.message.tool_calls=[]),p)){let h=(e=a.message.tool_calls)[b]??(e[b]={});Object.assign(h,g),c&&(h.id=c),d&&(h.type=d),f&&(h.function??(h.function={name:f.name??"",arguments:""})),f?.name&&(h.function.name=f.name),f?.arguments&&(h.function.arguments+=f.arguments,function(a,b){if(!a||!("tools"in a)||!a.tools)return!1;let c=a.tools?.find(a=>cg(a)&&a.function?.name===b.function.name);return cg(c)&&(ci(c)||c?.function.strict||!1)}(aP(this,I,"f"),h)&&(h.function.parsed_arguments=cu(h.function.arguments)))}}return f},Symbol.asyncIterator)](){let a=[],b=[],c=!1;return this.on("chunk",c=>{let d=b.shift();d?d.resolve(c):a.push(c)}),this.on("end",()=>{for(let a of(c=!0,b))a.resolve(void 0);b.length=0}),this.on("abort",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),this.on("error",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),{next:async()=>a.length?{value:a.shift(),done:!1}:c?{value:void 0,done:!0}:new Promise((a,c)=>b.push({resolve:a,reject:c})).then(a=>a?{value:a,done:!1}:{value:void 0,done:!0}),return:async()=>(this.abort(),{value:void 0,done:!0})}}toReadableStream(){return new bK(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}function cw(a){return JSON.stringify(a)}class cx extends cv{static fromReadableStream(a){let b=new cx(null);return b._run(()=>b._fromReadableStream(a)),b}static runTools(a,b,c){let d=new cx(b),e={...c,headers:{...c?.headers,"X-Stainless-Helper-Method":"runTools"}};return d._run(()=>d._runTools(a,b,e)),d}}class cy extends cb{constructor(){super(...arguments),this.messages=new cf(this._client)}create(a,b){return this._client.post("/chat/completions",{body:a,...b,stream:a.stream??!1,__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/chat/completions/${a}`,{...b,__security:{bearerAuth:!0}})}update(a,b,c){return this._client.post(ce`/chat/completions/${a}`,{body:b,...c,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/chat/completions",bU,{query:a,...b,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/chat/completions/${a}`,{...b,__security:{bearerAuth:!0}})}parse(a,b){for(let b of a.tools??[]){if("function"!==b.type)throw new aT(`Currently only \`function\` tool types support auto-parsing; Received \`${b.type}\``);if(!0!==b.function.strict)throw new aT(`The \`${b.function.name}\` tool is not marked with \`strict: true\`. Only strict function tools can be auto-parsed`)}return this._client.chat.completions.create(a,{...b,headers:{...b?.headers,"X-Stainless-Helper-Method":"chat.completions.parse"}})._thenUnwrap(b=>cj(b,a))}runTools(a,b){return a.stream?cx.runTools(this._client,a,b):cq.runTools(this._client,a,b)}stream(a,b){return cv.createChatCompletion(this._client,a,b)}}cy.Messages=cf;class cz extends cb{constructor(){super(...arguments),this.completions=new cy(this._client)}}cz.Completions=cy;class cA extends cb{create(a,b){return this._client.post("/organization/admin_api_keys",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b){return this._client.get(ce`/organization/admin_api_keys/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/admin_api_keys",bU,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/admin_api_keys/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}}class cB extends cb{list(a={},b){return this._client.getAPIList("/organization/audit_logs",bV,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}}class cC extends cb{create(a,b){return this._client.post("/organization/certificates",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b={},c){return this._client.get(ce`/organization/certificates/${a}`,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/certificates/${a}`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/certificates",bV,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/certificates/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}activate(a,b){return this._client.getAPIList("/organization/certificates/activate",bT,{body:a,method:"post",...b,__security:{adminAPIKeyAuth:!0}})}deactivate(a,b){return this._client.getAPIList("/organization/certificates/deactivate",bT,{body:a,method:"post",...b,__security:{adminAPIKeyAuth:!0}})}}class cD extends cb{retrieve(a){return this._client.get("/organization/data_retention",{...a,__security:{adminAPIKeyAuth:!0}})}update(a,b){return this._client.post("/organization/data_retention",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}}class cE extends cb{create(a,b){return this._client.post("/organization/invites",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b){return this._client.get(ce`/organization/invites/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/invites",bV,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/invites/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}}class cF extends cb{create(a,b){return this._client.post("/organization/roles",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b){return this._client.get(ce`/organization/roles/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/roles/${a}`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/roles",bW,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/roles/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}}class cG extends cb{create(a,b){return this._client.post("/organization/spend_alerts",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/spend_alerts/${a}`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/spend_alerts",bV,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/spend_alerts/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}}class cH extends cb{audioSpeeches(a,b){return this._client.get("/organization/usage/audio_speeches",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}audioTranscriptions(a,b){return this._client.get("/organization/usage/audio_transcriptions",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}codeInterpreterSessions(a,b){return this._client.get("/organization/usage/code_interpreter_sessions",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}completions(a,b){return this._client.get("/organization/usage/completions",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}costs(a,b){return this._client.get("/organization/costs",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}embeddings(a,b){return this._client.get("/organization/usage/embeddings",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}fileSearchCalls(a,b){return this._client.get("/organization/usage/file_search_calls",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}images(a,b){return this._client.get("/organization/usage/images",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}moderations(a,b){return this._client.get("/organization/usage/moderations",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}vectorStores(a,b){return this._client.get("/organization/usage/vector_stores",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}webSearchCalls(a,b){return this._client.get("/organization/usage/web_search_calls",{query:a,...b,__security:{adminAPIKeyAuth:!0}})}}class cI extends cb{create(a,b,c){return this._client.post(ce`/organization/groups/${a}/roles`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{group_id:d}=b;return this._client.get(ce`/organization/groups/${d}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/groups/${a}/roles`,bW,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{group_id:d}=b;return this._client.delete(ce`/organization/groups/${d}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cJ extends cb{create(a,b,c){return this._client.post(ce`/organization/groups/${a}/users`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{group_id:d}=b;return this._client.get(ce`/organization/groups/${d}/users/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/groups/${a}/users`,bW,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{group_id:d}=b;return this._client.delete(ce`/organization/groups/${d}/users/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cK extends cb{constructor(){super(...arguments),this.users=new cJ(this._client),this.roles=new cI(this._client)}create(a,b){return this._client.post("/organization/groups",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b){return this._client.get(ce`/organization/groups/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/groups/${a}`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/groups",bW,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/groups/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}}cK.Users=cJ,cK.Roles=cI;class cL extends cb{retrieve(a,b,c){let{project_id:d}=b;return this._client.get(ce`/organization/projects/${d}/api_keys/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/projects/${a}/api_keys`,bV,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d}=b;return this._client.delete(ce`/organization/projects/${d}/api_keys/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cM extends cb{list(a,b={},c){return this._client.getAPIList(ce`/organization/projects/${a}/certificates`,bV,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}activate(a,b,c){return this._client.getAPIList(ce`/organization/projects/${a}/certificates/activate`,bT,{body:b,method:"post",...c,__security:{adminAPIKeyAuth:!0}})}deactivate(a,b,c){return this._client.getAPIList(ce`/organization/projects/${a}/certificates/deactivate`,bT,{body:b,method:"post",...c,__security:{adminAPIKeyAuth:!0}})}}class cN extends cb{retrieve(a,b){return this._client.get(ce`/organization/projects/${a}/data_retention`,{...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/projects/${a}/data_retention`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}}class cO extends cb{retrieve(a,b){return this._client.get(ce`/organization/projects/${a}/hosted_tool_permissions`,{...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/projects/${a}/hosted_tool_permissions`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}}class cP extends cb{retrieve(a,b){return this._client.get(ce`/organization/projects/${a}/model_permissions`,{...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/projects/${a}/model_permissions`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/projects/${a}/model_permissions`,{...b,__security:{adminAPIKeyAuth:!0}})}}class cQ extends cb{listRateLimits(a,b={},c){return this._client.getAPIList(ce`/organization/projects/${a}/rate_limits`,bV,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}updateRateLimit(a,b,c){let{project_id:d,...e}=b;return this._client.post(ce`/organization/projects/${d}/rate_limits/${a}`,{body:e,...c,__security:{adminAPIKeyAuth:!0}})}}class cR extends cb{create(a,b,c){return this._client.post(ce`/projects/${a}/roles`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{project_id:d}=b;return this._client.get(ce`/projects/${d}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){let{project_id:d,...e}=b;return this._client.post(ce`/projects/${d}/roles/${a}`,{body:e,...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/projects/${a}/roles`,bW,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d}=b;return this._client.delete(ce`/projects/${d}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cS extends cb{create(a,b,c){return this._client.post(ce`/organization/projects/${a}/service_accounts`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{project_id:d}=b;return this._client.get(ce`/organization/projects/${d}/service_accounts/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){let{project_id:d,...e}=b;return this._client.post(ce`/organization/projects/${d}/service_accounts/${a}`,{body:e,...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/projects/${a}/service_accounts`,bV,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d}=b;return this._client.delete(ce`/organization/projects/${d}/service_accounts/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cT extends cb{create(a,b,c){return this._client.post(ce`/organization/projects/${a}/spend_alerts`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){let{project_id:d,...e}=b;return this._client.post(ce`/organization/projects/${d}/spend_alerts/${a}`,{body:e,...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/projects/${a}/spend_alerts`,bV,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d}=b;return this._client.delete(ce`/organization/projects/${d}/spend_alerts/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cU extends cb{create(a,b,c){let{project_id:d,...e}=b;return this._client.post(ce`/projects/${d}/groups/${a}/roles`,{body:e,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{project_id:d,group_id:e}=b;return this._client.get(ce`/projects/${d}/groups/${e}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}list(a,b,c){let{project_id:d,...e}=b;return this._client.getAPIList(ce`/projects/${d}/groups/${a}/roles`,bW,{query:e,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d,group_id:e}=b;return this._client.delete(ce`/projects/${d}/groups/${e}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cV extends cb{constructor(){super(...arguments),this.roles=new cU(this._client)}create(a,b,c){return this._client.post(ce`/organization/projects/${a}/groups`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{project_id:d,...e}=b;return this._client.get(ce`/organization/projects/${d}/groups/${a}`,{query:e,...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/projects/${a}/groups`,bW,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d}=b;return this._client.delete(ce`/organization/projects/${d}/groups/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}cV.Roles=cU;class cW extends cb{create(a,b,c){let{project_id:d,...e}=b;return this._client.post(ce`/projects/${d}/users/${a}/roles`,{body:e,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{project_id:d,user_id:e}=b;return this._client.get(ce`/projects/${d}/users/${e}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}list(a,b,c){let{project_id:d,...e}=b;return this._client.getAPIList(ce`/projects/${d}/users/${a}/roles`,bW,{query:e,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d,user_id:e}=b;return this._client.delete(ce`/projects/${d}/users/${e}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class cX extends cb{constructor(){super(...arguments),this.roles=new cW(this._client)}create(a,b,c){return this._client.post(ce`/organization/projects/${a}/users`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{project_id:d}=b;return this._client.get(ce`/organization/projects/${d}/users/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){let{project_id:d,...e}=b;return this._client.post(ce`/organization/projects/${d}/users/${a}`,{body:e,...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/projects/${a}/users`,bV,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{project_id:d}=b;return this._client.delete(ce`/organization/projects/${d}/users/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}cX.Roles=cW;class cY extends cb{constructor(){super(...arguments),this.users=new cX(this._client),this.serviceAccounts=new cS(this._client),this.apiKeys=new cL(this._client),this.rateLimits=new cQ(this._client),this.modelPermissions=new cP(this._client),this.hostedToolPermissions=new cO(this._client),this.groups=new cV(this._client),this.roles=new cR(this._client),this.dataRetention=new cN(this._client),this.spendAlerts=new cT(this._client),this.certificates=new cM(this._client)}create(a,b){return this._client.post("/organization/projects",{body:a,...b,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b){return this._client.get(ce`/organization/projects/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/projects/${a}`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/projects",bV,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}archive(a,b){return this._client.post(ce`/organization/projects/${a}/archive`,{...b,__security:{adminAPIKeyAuth:!0}})}}cY.Users=cX,cY.ServiceAccounts=cS,cY.APIKeys=cL,cY.RateLimits=cQ,cY.ModelPermissions=cP,cY.HostedToolPermissions=cO,cY.Groups=cV,cY.Roles=cR,cY.DataRetention=cN,cY.SpendAlerts=cT,cY.Certificates=cM;class cZ extends cb{create(a,b,c){return this._client.post(ce`/organization/users/${a}/roles`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b,c){let{user_id:d}=b;return this._client.get(ce`/organization/users/${d}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/organization/users/${a}/roles`,bW,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{user_id:d}=b;return this._client.delete(ce`/organization/users/${d}/roles/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class c$ extends cb{constructor(){super(...arguments),this.roles=new cZ(this._client)}retrieve(a,b){return this._client.get(ce`/organization/users/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}update(a,b,c){return this._client.post(ce`/organization/users/${a}`,{body:b,...c,__security:{adminAPIKeyAuth:!0}})}list(a={},b){return this._client.getAPIList("/organization/users",bV,{query:a,...b,__security:{adminAPIKeyAuth:!0}})}delete(a,b){return this._client.delete(ce`/organization/users/${a}`,{...b,__security:{adminAPIKeyAuth:!0}})}}c$.Roles=cZ;class c_ extends cb{constructor(){super(...arguments),this.auditLogs=new cB(this._client),this.adminAPIKeys=new cA(this._client),this.usage=new cH(this._client),this.invites=new cE(this._client),this.users=new c$(this._client),this.groups=new cK(this._client),this.roles=new cF(this._client),this.dataRetention=new cD(this._client),this.spendAlerts=new cG(this._client),this.certificates=new cC(this._client),this.projects=new cY(this._client)}}c_.AuditLogs=cB,c_.AdminAPIKeys=cA,c_.Usage=cH,c_.Invites=cE,c_.Users=c$,c_.Groups=cK,c_.Roles=cF,c_.DataRetention=cD,c_.SpendAlerts=cG,c_.Certificates=cC,c_.Projects=cY;class c0 extends cb{constructor(){super(...arguments),this.organization=new c_(this._client)}}c0.Organization=c_;let c1=Symbol("brand.privateNullableHeaders"),c2=a=>{let b=new Headers,c=new Set;for(let d of a){let a=new Set;for(let[e,f]of function*(a){let b;if(!a)return;if(c1 in a){let{values:b,nulls:c}=a;for(let a of(yield*b.entries(),c))yield[a,null];return}let c=!1;for(let d of(a instanceof Headers?b=a.entries():bb(a)?b=a:(c=!0,b=Object.entries(a??{})),b)){let a=d[0];if("string"!=typeof a)throw TypeError("expected header name to be a string");let b=bb(d[1])?d[1]:[d[1]],e=!1;for(let d of b)void 0!==d&&(c&&!e&&(e=!0,yield[a,null]),yield[a,d])}}(d)){let d=e.toLowerCase();a.has(d)||(b.delete(e),a.add(d)),null===f?(b.delete(e),c.add(d)):(b.append(e,f),c.delete(d))}}return{[c1]:!0,values:b,nulls:c}};class c3 extends cb{create(a,b){return this._client.post("/audio/speech",{body:a,...b,headers:c2([{Accept:"application/octet-stream"},b?.headers]),__security:{bearerAuth:!0},__binaryResponse:!0})}}class c4 extends cb{create(a,b){return this._client.post("/audio/transcriptions",b2({body:a,...b,stream:a.stream??!1,__metadata:{model:a.model},__security:{bearerAuth:!0}},this._client))}}class c5 extends cb{create(a,b){return this._client.post("/audio/translations",b2({body:a,...b,__metadata:{model:a.model},__security:{bearerAuth:!0}},this._client))}}class c6 extends cb{constructor(){super(...arguments),this.transcriptions=new c4(this._client),this.translations=new c5(this._client),this.speech=new c3(this._client)}}c6.Transcriptions=c4,c6.Translations=c5,c6.Speech=c3;class c7 extends cb{create(a,b){return this._client.post("/batches",{body:a,...b,__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/batches/${a}`,{...b,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/batches",bU,{query:a,...b,__security:{bearerAuth:!0}})}cancel(a,b){return this._client.post(ce`/batches/${a}/cancel`,{...b,__security:{bearerAuth:!0}})}}class c8 extends cb{create(a,b){return this._client.post("/assistants",{body:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/assistants/${a}`,{...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}update(a,b,c){return this._client.post(ce`/assistants/${a}`,{body:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/assistants",bU,{query:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/assistants/${a}`,{...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}}class c9 extends cb{create(a,b){return this._client.post("/realtime/sessions",{body:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}}class da extends cb{create(a,b){return this._client.post("/realtime/transcription_sessions",{body:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}}class db extends cb{constructor(){super(...arguments),this.sessions=new c9(this._client),this.transcriptionSessions=new da(this._client)}}db.Sessions=c9,db.TranscriptionSessions=da;class dc extends cb{create(a,b){return this._client.post("/chatkit/sessions",{body:a,...b,headers:c2([{"OpenAI-Beta":"chatkit_beta=v1"},b?.headers]),__security:{bearerAuth:!0}})}cancel(a,b){return this._client.post(ce`/chatkit/sessions/${a}/cancel`,{...b,headers:c2([{"OpenAI-Beta":"chatkit_beta=v1"},b?.headers]),__security:{bearerAuth:!0}})}}class dd extends cb{retrieve(a,b){return this._client.get(ce`/chatkit/threads/${a}`,{...b,headers:c2([{"OpenAI-Beta":"chatkit_beta=v1"},b?.headers]),__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/chatkit/threads",bV,{query:a,...b,headers:c2([{"OpenAI-Beta":"chatkit_beta=v1"},b?.headers]),__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/chatkit/threads/${a}`,{...b,headers:c2([{"OpenAI-Beta":"chatkit_beta=v1"},b?.headers]),__security:{bearerAuth:!0}})}listItems(a,b={},c){return this._client.getAPIList(ce`/chatkit/threads/${a}/items`,bV,{query:b,...c,headers:c2([{"OpenAI-Beta":"chatkit_beta=v1"},c?.headers]),__security:{bearerAuth:!0}})}}class de extends cb{constructor(){super(...arguments),this.sessions=new dc(this._client),this.threads=new dd(this._client)}}de.Sessions=dc,de.Threads=dd;class df extends cb{create(a,b,c){return this._client.post(ce`/threads/${a}/messages`,{body:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}retrieve(a,b,c){let{thread_id:d}=b;return this._client.get(ce`/threads/${d}/messages/${a}`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}update(a,b,c){let{thread_id:d,...e}=b;return this._client.post(ce`/threads/${d}/messages/${a}`,{body:e,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/threads/${a}/messages`,bU,{query:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}delete(a,b,c){let{thread_id:d}=b;return this._client.delete(ce`/threads/${d}/messages/${a}`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}}class dg extends cb{retrieve(a,b,c){let{thread_id:d,run_id:e,...f}=b;return this._client.get(ce`/threads/${d}/runs/${e}/steps/${a}`,{query:f,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}list(a,b,c){let{thread_id:d,...e}=b;return this._client.getAPIList(ce`/threads/${d}/runs/${a}/steps`,bU,{query:e,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}}let dh=a=>void 0!==globalThis.process?globalThis.process.env?.[a]?.trim()||void 0:void 0!==globalThis.Deno&&globalThis.Deno.env?.get?.(a)?.trim()||void 0;class di extends co{constructor(){super(...arguments),T.add(this),V.set(this,[]),W.set(this,{}),X.set(this,{}),Y.set(this,void 0),Z.set(this,void 0),$.set(this,void 0),_.set(this,void 0),aa.set(this,void 0),ab.set(this,void 0),ac.set(this,void 0),ad.set(this,void 0),ae.set(this,void 0)}[(V=new WeakMap,W=new WeakMap,X=new WeakMap,Y=new WeakMap,Z=new WeakMap,$=new WeakMap,_=new WeakMap,aa=new WeakMap,ab=new WeakMap,ac=new WeakMap,ad=new WeakMap,ae=new WeakMap,T=new WeakSet,Symbol.asyncIterator)](){let a=[],b=[],c=!1;return this.on("event",c=>{let d=b.shift();d?d.resolve(c):a.push(c)}),this.on("end",()=>{for(let a of(c=!0,b))a.resolve(void 0);b.length=0}),this.on("abort",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),this.on("error",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),{next:async()=>a.length?{value:a.shift(),done:!1}:c?{value:void 0,done:!0}:new Promise((a,c)=>b.push({resolve:a,reject:c})).then(a=>a?{value:a,done:!1}:{value:void 0,done:!0}),return:async()=>(this.abort(),{value:void 0,done:!0})}}static fromReadableStream(a){let b=new U;return b._run(()=>b._fromReadableStream(a)),b}async _fromReadableStream(a,b){let c=b?.signal;c&&(c.aborted&&this.controller.abort(),c.addEventListener("abort",()=>this.controller.abort())),this._connected();let d=bK.fromReadableStream(a,this.controller);for await(let a of d)aP(this,T,"m",af).call(this,a);if(d.controller.signal?.aborted)throw new aV;return this._addRun(aP(this,T,"m",ag).call(this))}toReadableStream(){return new bK(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}static createToolAssistantStream(a,b,c,d){let e=new U;return e._run(()=>e._runToolAssistantStream(a,b,c,{...d,headers:{...d?.headers,"X-Stainless-Helper-Method":"stream"}})),e}async _createToolAssistantStream(a,b,c,d){let e=d?.signal;e&&(e.aborted&&this.controller.abort(),e.addEventListener("abort",()=>this.controller.abort()));let f={...c,stream:!0},g=await a.submitToolOutputs(b,f,{...d,signal:this.controller.signal});for await(let a of(this._connected(),g))aP(this,T,"m",af).call(this,a);if(g.controller.signal?.aborted)throw new aV;return this._addRun(aP(this,T,"m",ag).call(this))}static createThreadAssistantStream(a,b,c){let d=new U;return d._run(()=>d._threadAssistantStream(a,b,{...c,headers:{...c?.headers,"X-Stainless-Helper-Method":"stream"}})),d}static createAssistantStream(a,b,c,d){let e=new U;return e._run(()=>e._runAssistantStream(a,b,c,{...d,headers:{...d?.headers,"X-Stainless-Helper-Method":"stream"}})),e}currentEvent(){return aP(this,ac,"f")}currentRun(){return aP(this,ad,"f")}currentMessageSnapshot(){return aP(this,Y,"f")}currentRunStepSnapshot(){return aP(this,ae,"f")}async finalRunSteps(){return await this.done(),Object.values(aP(this,W,"f"))}async finalMessages(){return await this.done(),Object.values(aP(this,X,"f"))}async finalRun(){if(await this.done(),!aP(this,Z,"f"))throw Error("Final run was not received.");return aP(this,Z,"f")}async _createThreadAssistantStream(a,b,c){let d=c?.signal;d&&(d.aborted&&this.controller.abort(),d.addEventListener("abort",()=>this.controller.abort()));let e={...b,stream:!0},f=await a.createAndRun(e,{...c,signal:this.controller.signal});for await(let a of(this._connected(),f))aP(this,T,"m",af).call(this,a);if(f.controller.signal?.aborted)throw new aV;return this._addRun(aP(this,T,"m",ag).call(this))}async _createAssistantStream(a,b,c,d){let e=d?.signal;e&&(e.aborted&&this.controller.abort(),e.addEventListener("abort",()=>this.controller.abort()));let f={...c,stream:!0},g=await a.create(b,f,{...d,signal:this.controller.signal});for await(let a of(this._connected(),g))aP(this,T,"m",af).call(this,a);if(g.controller.signal?.aborted)throw new aV;return this._addRun(aP(this,T,"m",ag).call(this))}static accumulateDelta(a,b){for(let[c,d]of Object.entries(b)){if(!a.hasOwnProperty(c)){a[c]=d;continue}let b=a[c];if(null==b||"index"===c||"type"===c){a[c]=d;continue}if("string"==typeof b&&"string"==typeof d)b+=d;else if("number"==typeof b&&"number"==typeof d)b+=d;else if(be(b)&&be(d))b=this.accumulateDelta(b,d);else if(Array.isArray(b)&&Array.isArray(d)){if(b.every(a=>"string"==typeof a||"number"==typeof a)){b.push(...d);continue}for(let a of d){if(!be(a))throw Error(`Expected array delta entry to be an object but got: ${a}`);let c=a.index;if(null==c)throw console.error(a),Error("Expected array delta entry to have an `index` property");if("number"!=typeof c)throw Error(`Expected array delta entry \`index\` property to be a number but got ${c}`);let d=b[c];null==d?b.push(a):b[c]=this.accumulateDelta(d,a)}continue}else throw Error(`Unhandled record type: ${c}, deltaValue: ${d}, accValue: ${b}`);a[c]=b}return a}_addRun(a){return a}async _threadAssistantStream(a,b,c){return await this._createThreadAssistantStream(b,a,c)}async _runAssistantStream(a,b,c,d){return await this._createAssistantStream(b,a,c,d)}async _runToolAssistantStream(a,b,c,d){return await this._createToolAssistantStream(b,a,c,d)}}U=di,af=function(a){if(!this.ended)switch(aO(this,ac,a,"f"),aP(this,T,"m",aj).call(this,a),a.event){case"thread.created":break;case"thread.run.created":case"thread.run.queued":case"thread.run.in_progress":case"thread.run.requires_action":case"thread.run.completed":case"thread.run.incomplete":case"thread.run.failed":case"thread.run.cancelling":case"thread.run.cancelled":case"thread.run.expired":aP(this,T,"m",an).call(this,a);break;case"thread.run.step.created":case"thread.run.step.in_progress":case"thread.run.step.delta":case"thread.run.step.completed":case"thread.run.step.failed":case"thread.run.step.cancelled":case"thread.run.step.expired":aP(this,T,"m",ai).call(this,a);break;case"thread.message.created":case"thread.message.in_progress":case"thread.message.delta":case"thread.message.completed":case"thread.message.incomplete":aP(this,T,"m",ah).call(this,a);break;case"error":throw Error("Encountered an error event in event processing - errors should be processed earlier")}},ag=function(){if(this.ended)throw new aT("stream has ended, this shouldn't happen");if(!aP(this,Z,"f"))throw Error("Final run has not been received");return aP(this,Z,"f")},ah=function(a){let[b,c]=aP(this,T,"m",al).call(this,a,aP(this,Y,"f"));for(let a of(aO(this,Y,b,"f"),aP(this,X,"f")[b.id]=b,c)){let c=b.content[a.index];c?.type=="text"&&this._emit("textCreated",c.text)}switch(a.event){case"thread.message.created":this._emit("messageCreated",a.data);break;case"thread.message.in_progress":break;case"thread.message.delta":if(this._emit("messageDelta",a.data.delta,b),a.data.delta.content)for(let c of a.data.delta.content){if("text"==c.type&&c.text){let a=c.text,d=b.content[c.index];if(d&&"text"==d.type)this._emit("textDelta",a,d.text);else throw Error("The snapshot associated with this text delta is not text or missing")}if(c.index!=aP(this,$,"f")){if(aP(this,_,"f"))switch(aP(this,_,"f").type){case"text":this._emit("textDone",aP(this,_,"f").text,aP(this,Y,"f"));break;case"image_file":this._emit("imageFileDone",aP(this,_,"f").image_file,aP(this,Y,"f"))}aO(this,$,c.index,"f")}aO(this,_,b.content[c.index],"f")}break;case"thread.message.completed":case"thread.message.incomplete":if(void 0!==aP(this,$,"f")){let b=a.data.content[aP(this,$,"f")];if(b)switch(b.type){case"image_file":this._emit("imageFileDone",b.image_file,aP(this,Y,"f"));break;case"text":this._emit("textDone",b.text,aP(this,Y,"f"))}}aP(this,Y,"f")&&this._emit("messageDone",a.data),aO(this,Y,void 0,"f")}},ai=function(a){let b=aP(this,T,"m",ak).call(this,a);switch(aO(this,ae,b,"f"),a.event){case"thread.run.step.created":this._emit("runStepCreated",a.data);break;case"thread.run.step.delta":let c=a.data.delta;if(c.step_details&&"tool_calls"==c.step_details.type&&c.step_details.tool_calls&&"tool_calls"==b.step_details.type)for(let a of c.step_details.tool_calls)a.index==aP(this,aa,"f")?this._emit("toolCallDelta",a,b.step_details.tool_calls[a.index]):(aP(this,ab,"f")&&this._emit("toolCallDone",aP(this,ab,"f")),aO(this,aa,a.index,"f"),aO(this,ab,b.step_details.tool_calls[a.index],"f"),aP(this,ab,"f")&&this._emit("toolCallCreated",aP(this,ab,"f")));this._emit("runStepDelta",a.data.delta,b);break;case"thread.run.step.completed":case"thread.run.step.failed":case"thread.run.step.cancelled":case"thread.run.step.expired":aO(this,ae,void 0,"f"),"tool_calls"==a.data.step_details.type&&aP(this,ab,"f")&&(this._emit("toolCallDone",aP(this,ab,"f")),aO(this,ab,void 0,"f")),this._emit("runStepDone",a.data,b)}},aj=function(a){aP(this,V,"f").push(a),this._emit("event",a)},ak=function(a){switch(a.event){case"thread.run.step.created":return aP(this,W,"f")[a.data.id]=a.data,a.data;case"thread.run.step.delta":let b=aP(this,W,"f")[a.data.id];if(!b)throw Error("Received a RunStepDelta before creation of a snapshot");let c=a.data;if(c.delta){let d=U.accumulateDelta(b,c.delta);aP(this,W,"f")[a.data.id]=d}return aP(this,W,"f")[a.data.id];case"thread.run.step.completed":case"thread.run.step.failed":case"thread.run.step.cancelled":case"thread.run.step.expired":case"thread.run.step.in_progress":aP(this,W,"f")[a.data.id]=a.data}if(aP(this,W,"f")[a.data.id])return aP(this,W,"f")[a.data.id];throw Error("No snapshot available")},al=function(a,b){let c=[];switch(a.event){case"thread.message.created":return[a.data,c];case"thread.message.delta":if(!b)throw Error("Received a delta with no existing snapshot (there should be one from message creation)");let d=a.data;if(d.delta.content)for(let a of d.delta.content)if(a.index in b.content){let c=b.content[a.index];b.content[a.index]=aP(this,T,"m",am).call(this,a,c)}else b.content[a.index]=a,c.push(a);return[b,c];case"thread.message.in_progress":case"thread.message.completed":case"thread.message.incomplete":if(b)return[b,c];throw Error("Received thread message event with no existing snapshot")}throw Error("Tried to accumulate a non-message event")},am=function(a,b){return U.accumulateDelta(b,a)},an=function(a){switch(aO(this,ad,a.data,"f"),a.event){case"thread.run.created":case"thread.run.queued":case"thread.run.in_progress":break;case"thread.run.requires_action":case"thread.run.cancelled":case"thread.run.failed":case"thread.run.completed":case"thread.run.expired":case"thread.run.incomplete":aO(this,Z,a.data,"f"),aP(this,ab,"f")&&(this._emit("toolCallDone",aP(this,ab,"f")),aO(this,ab,void 0,"f"))}};class dj extends cb{constructor(){super(...arguments),this.steps=new dg(this._client)}create(a,b,c){let{include:d,...e}=b;return this._client.post(ce`/threads/${a}/runs`,{query:{include:d},body:e,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),stream:b.stream??!1,__synthesizeEventData:!0,__security:{bearerAuth:!0}})}retrieve(a,b,c){let{thread_id:d}=b;return this._client.get(ce`/threads/${d}/runs/${a}`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}update(a,b,c){let{thread_id:d,...e}=b;return this._client.post(ce`/threads/${d}/runs/${a}`,{body:e,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/threads/${a}/runs`,bU,{query:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}cancel(a,b,c){let{thread_id:d}=b;return this._client.post(ce`/threads/${d}/runs/${a}/cancel`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}async createAndPoll(a,b,c){let d=await this.create(a,b,c);return await this.poll(d.id,{thread_id:a},c)}createAndStream(a,b,c){return di.createAssistantStream(a,this._client.beta.threads.runs,b,c)}async poll(a,b,c){let d=c2([c?.headers,{"X-Stainless-Poll-Helper":"true","X-Stainless-Custom-Poll-Interval":c?.pollIntervalMs?.toString()??void 0}]);for(;;){let{data:e,response:f}=await this.retrieve(a,b,{...c,headers:{...c?.headers,...d}}).withResponse();switch(e.status){case"queued":case"in_progress":case"cancelling":let g=5e3;if(c?.pollIntervalMs)g=c.pollIntervalMs;else{let a=f.headers.get("openai-poll-after-ms");if(a){let b=parseInt(a);isNaN(b)||(g=b)}}await bf(g);break;case"requires_action":case"incomplete":case"cancelled":case"completed":case"failed":case"expired":return e}}}stream(a,b,c){return di.createAssistantStream(a,this._client.beta.threads.runs,b,c)}submitToolOutputs(a,b,c){let{thread_id:d,...e}=b;return this._client.post(ce`/threads/${d}/runs/${a}/submit_tool_outputs`,{body:e,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),stream:b.stream??!1,__synthesizeEventData:!0,__security:{bearerAuth:!0}})}async submitToolOutputsAndPoll(a,b,c){let d=await this.submitToolOutputs(a,b,c);return await this.poll(d.id,b,c)}submitToolOutputsStream(a,b,c){return di.createToolAssistantStream(a,this._client.beta.threads.runs,b,c)}}dj.Steps=dg;class dk extends cb{constructor(){super(...arguments),this.runs=new dj(this._client),this.messages=new df(this._client)}create(a={},b){return this._client.post("/threads",{body:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/threads/${a}`,{...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}update(a,b,c){return this._client.post(ce`/threads/${a}`,{body:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/threads/${a}`,{...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}createAndRun(a,b){return this._client.post("/threads/runs",{body:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),stream:a.stream??!1,__synthesizeEventData:!0,__security:{bearerAuth:!0}})}async createAndRunPoll(a,b){let c=await this.createAndRun(a,b);return await this.runs.poll(c.id,{thread_id:c.thread_id},b)}createAndRunStream(a,b){return di.createThreadAssistantStream(a,this._client.beta.threads,b)}}dk.Runs=dj,dk.Messages=df;class dl extends cb{constructor(){super(...arguments),this.realtime=new db(this._client),this.chatkit=new de(this._client),this.assistants=new c8(this._client),this.threads=new dk(this._client)}}dl.Realtime=db,dl.ChatKit=de,dl.Assistants=c8,dl.Threads=dk;class dm extends cb{create(a,b){return this._client.post("/completions",{body:a,...b,stream:a.stream??!1,__security:{bearerAuth:!0}})}}class dn extends cb{retrieve(a,b,c){let{container_id:d}=b;return this._client.get(ce`/containers/${d}/files/${a}/content`,{...c,headers:c2([{Accept:"application/binary"},c?.headers]),__security:{bearerAuth:!0},__binaryResponse:!0})}}class dp extends cb{constructor(){super(...arguments),this.content=new dn(this._client)}create(a,b,c){return this._client.post(ce`/containers/${a}/files`,b1({body:b,...c,__security:{bearerAuth:!0}},this._client))}retrieve(a,b,c){let{container_id:d}=b;return this._client.get(ce`/containers/${d}/files/${a}`,{...c,__security:{bearerAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/containers/${a}/files`,bU,{query:b,...c,__security:{bearerAuth:!0}})}delete(a,b,c){let{container_id:d}=b;return this._client.delete(ce`/containers/${d}/files/${a}`,{...c,headers:c2([{Accept:"*/*"},c?.headers]),__security:{bearerAuth:!0}})}}dp.Content=dn;class dq extends cb{constructor(){super(...arguments),this.files=new dp(this._client)}create(a,b){return this._client.post("/containers",{body:a,...b,__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/containers/${a}`,{...b,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/containers",bU,{query:a,...b,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/containers/${a}`,{...b,headers:c2([{Accept:"*/*"},b?.headers]),__security:{bearerAuth:!0}})}}dq.Files=dp;class dr extends cb{create(a,b,c){let{include:d,...e}=b;return this._client.post(ce`/conversations/${a}/items`,{query:{include:d},body:e,...c,__security:{bearerAuth:!0}})}retrieve(a,b,c){let{conversation_id:d,...e}=b;return this._client.get(ce`/conversations/${d}/items/${a}`,{query:e,...c,__security:{bearerAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/conversations/${a}/items`,bV,{query:b,...c,__security:{bearerAuth:!0}})}delete(a,b,c){let{conversation_id:d}=b;return this._client.delete(ce`/conversations/${d}/items/${a}`,{...c,__security:{bearerAuth:!0}})}}class ds extends cb{constructor(){super(...arguments),this.items=new dr(this._client)}create(a={},b){return this._client.post("/conversations",{body:a,...b,__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/conversations/${a}`,{...b,__security:{bearerAuth:!0}})}update(a,b,c){return this._client.post(ce`/conversations/${a}`,{body:b,...c,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/conversations/${a}`,{...b,__security:{bearerAuth:!0}})}}ds.Items=dr;class dt extends cb{create(a,b){let c=!!a.encoding_format,d=c?a.encoding_format:"base64";c&&bI(this._client).debug("embeddings/user defined encoding_format:",a.encoding_format);let e=this._client.post("/embeddings",{body:{...a,encoding_format:d},...b,__security:{bearerAuth:!0}});return c?e:(bI(this._client).debug("embeddings/decoding base64 embeddings from base64"),e._thenUnwrap(a=>(a&&a.data&&a.data.forEach(a=>{let b=a.embedding;a.embedding=(a=>{if("undefined"!=typeof Buffer){let b=Buffer.from(a,"base64");return Array.from(new Float32Array(b.buffer,b.byteOffset,b.length/Float32Array.BYTES_PER_ELEMENT))}{let b=atob(a),c=b.length,d=new Uint8Array(c);for(let a=0;a<c;a++)d[a]=b.charCodeAt(a);return Array.from(new Float32Array(d.buffer))}})(b)}),a)))}}class du extends cb{retrieve(a,b,c){let{eval_id:d,run_id:e}=b;return this._client.get(ce`/evals/${d}/runs/${e}/output_items/${a}`,{...c,__security:{bearerAuth:!0}})}list(a,b,c){let{eval_id:d,...e}=b;return this._client.getAPIList(ce`/evals/${d}/runs/${a}/output_items`,bU,{query:e,...c,__security:{bearerAuth:!0}})}}class dv extends cb{constructor(){super(...arguments),this.outputItems=new du(this._client)}create(a,b,c){return this._client.post(ce`/evals/${a}/runs`,{body:b,...c,__security:{bearerAuth:!0}})}retrieve(a,b,c){let{eval_id:d}=b;return this._client.get(ce`/evals/${d}/runs/${a}`,{...c,__security:{bearerAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/evals/${a}/runs`,bU,{query:b,...c,__security:{bearerAuth:!0}})}delete(a,b,c){let{eval_id:d}=b;return this._client.delete(ce`/evals/${d}/runs/${a}`,{...c,__security:{bearerAuth:!0}})}cancel(a,b,c){let{eval_id:d}=b;return this._client.post(ce`/evals/${d}/runs/${a}`,{...c,__security:{bearerAuth:!0}})}}dv.OutputItems=du;class dw extends cb{constructor(){super(...arguments),this.runs=new dv(this._client)}create(a,b){return this._client.post("/evals",{body:a,...b,__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/evals/${a}`,{...b,__security:{bearerAuth:!0}})}update(a,b,c){return this._client.post(ce`/evals/${a}`,{body:b,...c,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/evals",bU,{query:a,...b,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/evals/${a}`,{...b,__security:{bearerAuth:!0}})}}dw.Runs=dv;class dx extends cb{create(a,b){return this._client.post("/files",b2({body:a,...b,__security:{bearerAuth:!0}},this._client))}retrieve(a,b){return this._client.get(ce`/files/${a}`,{...b,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/files",bU,{query:a,...b,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/files/${a}`,{...b,__security:{bearerAuth:!0}})}content(a,b){return this._client.get(ce`/files/${a}/content`,{...b,headers:c2([{Accept:"application/binary"},b?.headers]),__security:{bearerAuth:!0},__binaryResponse:!0})}async waitForProcessing(a,{pollInterval:b=5e3,maxWait:c=18e5}={}){let d=new Set(["processed","error","deleted"]),e=Date.now(),f=await this.retrieve(a);for(;!f.status||!d.has(f.status);)if(await bf(b),f=await this.retrieve(a),Date.now()-e>c)throw new aX({message:`Giving up on waiting for file ${a} to finish processing after ${c} milliseconds.`});return f}}class dy extends cb{}class dz extends cb{run(a,b){return this._client.post("/fine_tuning/alpha/graders/run",{body:a,...b,__security:{bearerAuth:!0}})}validate(a,b){return this._client.post("/fine_tuning/alpha/graders/validate",{body:a,...b,__security:{bearerAuth:!0}})}}class dA extends cb{constructor(){super(...arguments),this.graders=new dz(this._client)}}dA.Graders=dz;class dB extends cb{create(a,b,c){return this._client.getAPIList(ce`/fine_tuning/checkpoints/${a}/permissions`,bT,{body:b,method:"post",...c,__security:{adminAPIKeyAuth:!0}})}retrieve(a,b={},c){return this._client.get(ce`/fine_tuning/checkpoints/${a}/permissions`,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/fine_tuning/checkpoints/${a}/permissions`,bV,{query:b,...c,__security:{adminAPIKeyAuth:!0}})}delete(a,b,c){let{fine_tuned_model_checkpoint:d}=b;return this._client.delete(ce`/fine_tuning/checkpoints/${d}/permissions/${a}`,{...c,__security:{adminAPIKeyAuth:!0}})}}class dC extends cb{constructor(){super(...arguments),this.permissions=new dB(this._client)}}dC.Permissions=dB;class dD extends cb{list(a,b={},c){return this._client.getAPIList(ce`/fine_tuning/jobs/${a}/checkpoints`,bU,{query:b,...c,__security:{bearerAuth:!0}})}}class dE extends cb{constructor(){super(...arguments),this.checkpoints=new dD(this._client)}create(a,b){return this._client.post("/fine_tuning/jobs",{body:a,...b,__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/fine_tuning/jobs/${a}`,{...b,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/fine_tuning/jobs",bU,{query:a,...b,__security:{bearerAuth:!0}})}cancel(a,b){return this._client.post(ce`/fine_tuning/jobs/${a}/cancel`,{...b,__security:{bearerAuth:!0}})}listEvents(a,b={},c){return this._client.getAPIList(ce`/fine_tuning/jobs/${a}/events`,bU,{query:b,...c,__security:{bearerAuth:!0}})}pause(a,b){return this._client.post(ce`/fine_tuning/jobs/${a}/pause`,{...b,__security:{bearerAuth:!0}})}resume(a,b){return this._client.post(ce`/fine_tuning/jobs/${a}/resume`,{...b,__security:{bearerAuth:!0}})}}dE.Checkpoints=dD;class dF extends cb{constructor(){super(...arguments),this.methods=new dy(this._client),this.jobs=new dE(this._client),this.checkpoints=new dC(this._client),this.alpha=new dA(this._client)}}dF.Methods=dy,dF.Jobs=dE,dF.Checkpoints=dC,dF.Alpha=dA;class dG extends cb{}class dH extends cb{constructor(){super(...arguments),this.graderModels=new dG(this._client)}}dH.GraderModels=dG;class dI extends cb{createVariation(a,b){return this._client.post("/images/variations",b2({body:a,...b,__security:{bearerAuth:!0}},this._client))}edit(a,b){return this._client.post("/images/edits",b2({body:a,...b,stream:a.stream??!1,__security:{bearerAuth:!0}},this._client))}generate(a,b){return this._client.post("/images/generations",{body:a,...b,stream:a.stream??!1,__security:{bearerAuth:!0}})}}class dJ extends cb{retrieve(a,b){return this._client.get(ce`/models/${a}`,{...b,__security:{bearerAuth:!0}})}list(a){return this._client.getAPIList("/models",bT,{...a,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/models/${a}`,{...b,__security:{bearerAuth:!0}})}}class dK extends cb{create(a,b){return this._client.post("/moderations",{body:a,...b,__security:{bearerAuth:!0}})}}class dL extends cb{accept(a,b,c){return this._client.post(ce`/realtime/calls/${a}/accept`,{body:b,...c,headers:c2([{Accept:"*/*"},c?.headers]),__security:{bearerAuth:!0}})}hangup(a,b){return this._client.post(ce`/realtime/calls/${a}/hangup`,{...b,headers:c2([{Accept:"*/*"},b?.headers]),__security:{bearerAuth:!0}})}refer(a,b,c){return this._client.post(ce`/realtime/calls/${a}/refer`,{body:b,...c,headers:c2([{Accept:"*/*"},c?.headers]),__security:{bearerAuth:!0}})}reject(a,b={},c){return this._client.post(ce`/realtime/calls/${a}/reject`,{body:b,...c,headers:c2([{Accept:"*/*"},c?.headers]),__security:{bearerAuth:!0}})}}class dM extends cb{create(a,b){return this._client.post("/realtime/client_secrets",{body:a,...b,__security:{bearerAuth:!0}})}}class dN extends cb{constructor(){super(...arguments),this.clientSecrets=new dM(this._client),this.calls=new dL(this._client)}}function dO(a,b){let c=a.output.map(a=>{if("function_call"===a.type)return{...a,parsed_arguments:function(a,b){var c,d;let e=(c=a.tools??[],d=b.name,c.find(a=>"function"===a.type&&a.name===d));return{...b,...b,parsed_arguments:e?.$brand==="auto-parseable-tool"?e.$parseRaw(b.arguments):e?.strict?JSON.parse(b.arguments):null}}(b,a)};if("message"===a.type){let c=a.content.map(a=>{var c,d;return"output_text"===a.type?{...a,parsed:(c=b,d=a.text,c.text?.format?.type!=="json_schema"?null:"$parseRaw"in c.text?.format?(c.text?.format).$parseRaw(d):JSON.parse(d))}:a});return{...a,content:c}}return a}),d=Object.assign({},a,{output:c});return Object.getOwnPropertyDescriptor(a,"output_text")||dP(d),Object.defineProperty(d,"output_parsed",{enumerable:!0,get(){for(let a of d.output)if("message"===a.type){for(let b of a.content)if("output_text"===b.type&&null!==b.parsed)return b.parsed}return null}}),d}function dP(a){let b=[];for(let c of a.output)if("message"===c.type)for(let a of c.content)"output_text"===a.type&&b.push(a.text);a.output_text=b.join("")}dN.ClientSecrets=dM,dN.Calls=dL;class dQ extends co{constructor(a){super(),ao.add(this),ap.set(this,void 0),aq.set(this,void 0),ar.set(this,void 0),aO(this,ap,a,"f")}static createResponse(a,b,c){let d=new dQ(b);return d._run(()=>d._createOrRetrieveResponse(a,b,{...c,headers:{...c?.headers,"X-Stainless-Helper-Method":"stream"}})),d}async _createOrRetrieveResponse(a,b,c){let d,e=c?.signal;e&&(e.aborted&&this.controller.abort(),e.addEventListener("abort",()=>this.controller.abort())),aP(this,ao,"m",as).call(this);let f=null;for await(let e of("response_id"in b?(d=await a.responses.retrieve(b.response_id,{stream:!0},{...c,signal:this.controller.signal,stream:!0}),f=b.starting_after??null):d=await a.responses.create({...b,stream:!0},{...c,signal:this.controller.signal}),this._connected(),d))aP(this,ao,"m",at).call(this,e,f);if(d.controller.signal?.aborted)throw new aV;return aP(this,ao,"m",au).call(this)}[(ap=new WeakMap,aq=new WeakMap,ar=new WeakMap,ao=new WeakSet,as=function(){this.ended||aO(this,aq,void 0,"f")},at=function(a,b){if(this.ended)return;let c=(a,c)=>{(null==b||c.sequence_number>b)&&this._emit(a,c)},d=aP(this,ao,"m",av).call(this,a);switch(c("event",a),a.type){case"response.output_text.delta":{let b=d.output[a.output_index];if(!b)throw new aT(`missing output at index ${a.output_index}`);if("message"===b.type){let d=b.content[a.content_index];if(!d)throw new aT(`missing content at index ${a.content_index}`);if("output_text"!==d.type)throw new aT(`expected content to be 'output_text', got ${d.type}`);c("response.output_text.delta",{...a,snapshot:d.text})}break}case"response.function_call_arguments.delta":{let b=d.output[a.output_index];if(!b)throw new aT(`missing output at index ${a.output_index}`);"function_call"===b.type&&c("response.function_call_arguments.delta",{...a,snapshot:b.arguments});break}default:c(a.type,a)}},au=function(){if(this.ended)throw new aT("stream has ended, this shouldn't happen");let a=aP(this,aq,"f");if(!a)throw new aT("request ended without sending any events");aO(this,aq,void 0,"f");let b=function(a,b){var c;return b&&(c=b,ch(c.text?.format))?dO(a,b):{...a,output_parsed:null,output:a.output.map(a=>"function_call"===a.type?{...a,parsed_arguments:null}:"message"===a.type?{...a,content:a.content.map(a=>({...a,parsed:null}))}:a)}}(a,aP(this,ap,"f"));return aO(this,ar,b,"f"),b},av=function(a){let b=aP(this,aq,"f");if(!b){if("response.created"!==a.type)throw new aT(`When snapshot hasn't been set yet, expected 'response.created' event, got ${a.type}`);return aO(this,aq,a.response,"f")}switch(a.type){case"response.output_item.added":b.output.push(a.item);break;case"response.content_part.added":{let c=b.output[a.output_index];if(!c)throw new aT(`missing output at index ${a.output_index}`);let d=c.type,e=a.part;"message"===d&&"reasoning_text"!==e.type?c.content.push(e):"reasoning"===d&&"reasoning_text"===e.type&&(c.content||(c.content=[]),c.content.push(e));break}case"response.output_text.delta":{let c=b.output[a.output_index];if(!c)throw new aT(`missing output at index ${a.output_index}`);if("message"===c.type){let b=c.content[a.content_index];if(!b)throw new aT(`missing content at index ${a.content_index}`);if("output_text"!==b.type)throw new aT(`expected content to be 'output_text', got ${b.type}`);b.text+=a.delta}break}case"response.function_call_arguments.delta":{let c=b.output[a.output_index];if(!c)throw new aT(`missing output at index ${a.output_index}`);"function_call"===c.type&&(c.arguments+=a.delta);break}case"response.reasoning_text.delta":{let c=b.output[a.output_index];if(!c)throw new aT(`missing output at index ${a.output_index}`);if("reasoning"===c.type){let b=c.content?.[a.content_index];if(!b)throw new aT(`missing content at index ${a.content_index}`);if("reasoning_text"!==b.type)throw new aT(`expected content to be 'reasoning_text', got ${b.type}`);b.text+=a.delta}break}case"response.completed":aO(this,aq,a.response,"f")}return b},Symbol.asyncIterator)](){let a=[],b=[],c=!1;return this.on("event",c=>{let d=b.shift();d?d.resolve(c):a.push(c)}),this.on("end",()=>{for(let a of(c=!0,b))a.resolve(void 0);b.length=0}),this.on("abort",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),this.on("error",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),{next:async()=>a.length?{value:a.shift(),done:!1}:c?{value:void 0,done:!0}:new Promise((a,c)=>b.push({resolve:a,reject:c})).then(a=>a?{value:a,done:!1}:{value:void 0,done:!0}),return:async()=>(this.abort(),{value:void 0,done:!0})}}async finalResponse(){await this.done();let a=aP(this,ar,"f");if(!a)throw new aT("stream ended without producing a ChatCompletion");return a}}class dR extends cb{list(a,b={},c){return this._client.getAPIList(ce`/responses/${a}/input_items`,bU,{query:b,...c,__security:{bearerAuth:!0}})}}class dS extends cb{count(a={},b){return this._client.post("/responses/input_tokens",{body:a,...b,__security:{bearerAuth:!0}})}}class dT extends cb{constructor(){super(...arguments),this.inputItems=new dR(this._client),this.inputTokens=new dS(this._client)}create(a,b){return this._client.post("/responses",{body:a,...b,stream:a.stream??!1,__security:{bearerAuth:!0}})._thenUnwrap(a=>("object"in a&&"response"===a.object&&dP(a),a))}retrieve(a,b={},c){return this._client.get(ce`/responses/${a}`,{query:b,...c,stream:b?.stream??!1,__security:{bearerAuth:!0}})._thenUnwrap(a=>("object"in a&&"response"===a.object&&dP(a),a))}delete(a,b){return this._client.delete(ce`/responses/${a}`,{...b,headers:c2([{Accept:"*/*"},b?.headers]),__security:{bearerAuth:!0}})}parse(a,b){return this._client.responses.create(a,b)._thenUnwrap(b=>dO(b,a))}stream(a,b){return dQ.createResponse(this._client,a,b)}cancel(a,b){return this._client.post(ce`/responses/${a}/cancel`,{...b,__security:{bearerAuth:!0}})}compact(a,b){return this._client.post("/responses/compact",{body:a,...b,__security:{bearerAuth:!0}})}}dT.InputItems=dR,dT.InputTokens=dS;class dU extends cb{retrieve(a,b){return this._client.get(ce`/skills/${a}/content`,{...b,headers:c2([{Accept:"application/binary"},b?.headers]),__security:{bearerAuth:!0},__binaryResponse:!0})}}class dV extends cb{retrieve(a,b,c){let{skill_id:d}=b;return this._client.get(ce`/skills/${d}/versions/${a}/content`,{...c,headers:c2([{Accept:"application/binary"},c?.headers]),__security:{bearerAuth:!0},__binaryResponse:!0})}}class dW extends cb{constructor(){super(...arguments),this.content=new dV(this._client)}create(a,b={},c){return this._client.post(ce`/skills/${a}/versions`,b1({body:b,...c,__security:{bearerAuth:!0}},this._client))}retrieve(a,b,c){let{skill_id:d}=b;return this._client.get(ce`/skills/${d}/versions/${a}`,{...c,__security:{bearerAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/skills/${a}/versions`,bU,{query:b,...c,__security:{bearerAuth:!0}})}delete(a,b,c){let{skill_id:d}=b;return this._client.delete(ce`/skills/${d}/versions/${a}`,{...c,__security:{bearerAuth:!0}})}}dW.Content=dV;class dX extends cb{constructor(){super(...arguments),this.content=new dU(this._client),this.versions=new dW(this._client)}create(a={},b){return this._client.post("/skills",b1({body:a,...b,__security:{bearerAuth:!0}},this._client))}retrieve(a,b){return this._client.get(ce`/skills/${a}`,{...b,__security:{bearerAuth:!0}})}update(a,b,c){return this._client.post(ce`/skills/${a}`,{body:b,...c,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/skills",bU,{query:a,...b,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/skills/${a}`,{...b,__security:{bearerAuth:!0}})}}dX.Content=dU,dX.Versions=dW;class dY extends cb{create(a,b,c){return this._client.post(ce`/uploads/${a}/parts`,b2({body:b,...c,__security:{bearerAuth:!0}},this._client))}}class dZ extends cb{constructor(){super(...arguments),this.parts=new dY(this._client)}create(a,b){return this._client.post("/uploads",{body:a,...b,__security:{bearerAuth:!0}})}cancel(a,b){return this._client.post(ce`/uploads/${a}/cancel`,{...b,__security:{bearerAuth:!0}})}complete(a,b,c){return this._client.post(ce`/uploads/${a}/complete`,{body:b,...c,__security:{bearerAuth:!0}})}}dZ.Parts=dY;let d$=async a=>{let b=await Promise.allSettled(a),c=b.filter(a=>"rejected"===a.status);if(c.length){for(let a of c)console.error(a.reason);throw Error(`${c.length} promise(s) failed - see the above errors`)}let d=[];for(let a of b)"fulfilled"===a.status&&d.push(a.value);return d};class d_ extends cb{create(a,b,c){return this._client.post(ce`/vector_stores/${a}/file_batches`,{body:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}retrieve(a,b,c){let{vector_store_id:d}=b;return this._client.get(ce`/vector_stores/${d}/file_batches/${a}`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}cancel(a,b,c){let{vector_store_id:d}=b;return this._client.post(ce`/vector_stores/${d}/file_batches/${a}/cancel`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}async createAndPoll(a,b,c){let d=await this.create(a,b);return await this.poll(a,d.id,c)}listFiles(a,b,c){let{vector_store_id:d,...e}=b;return this._client.getAPIList(ce`/vector_stores/${d}/file_batches/${a}/files`,bU,{query:e,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}async poll(a,b,c){let d=c2([c?.headers,{"X-Stainless-Poll-Helper":"true","X-Stainless-Custom-Poll-Interval":c?.pollIntervalMs?.toString()??void 0}]);for(;;){let{data:e,response:f}=await this.retrieve(b,{vector_store_id:a},{...c,headers:d}).withResponse();switch(e.status){case"in_progress":let g=5e3;if(c?.pollIntervalMs)g=c.pollIntervalMs;else{let a=f.headers.get("openai-poll-after-ms");if(a){let b=parseInt(a);isNaN(b)||(g=b)}}await bf(g);break;case"failed":case"cancelled":case"completed":return e}}}async uploadAndPoll(a,{files:b,fileIds:c=[]},d){if(null==b||0==b.length)throw Error("No `files` provided to process. If you've already uploaded files you should use `.createAndPoll()` instead");let e=Math.min(d?.maxConcurrency??5,b.length),f=this._client,g=b.values(),h=[...c];async function i(a){for(let b of a){let a=await f.files.create({file:b,purpose:"assistants"},d);h.push(a.id)}}let j=Array(e).fill(g).map(i);return await d$(j),await this.createAndPoll(a,{file_ids:h})}}class d0 extends cb{create(a,b,c){return this._client.post(ce`/vector_stores/${a}/files`,{body:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}retrieve(a,b,c){let{vector_store_id:d}=b;return this._client.get(ce`/vector_stores/${d}/files/${a}`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}update(a,b,c){let{vector_store_id:d,...e}=b;return this._client.post(ce`/vector_stores/${d}/files/${a}`,{body:e,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}list(a,b={},c){return this._client.getAPIList(ce`/vector_stores/${a}/files`,bU,{query:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}delete(a,b,c){let{vector_store_id:d}=b;return this._client.delete(ce`/vector_stores/${d}/files/${a}`,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}async createAndPoll(a,b,c){let d=await this.create(a,b,c);return await this.poll(a,d.id,c)}async poll(a,b,c){let d=c2([c?.headers,{"X-Stainless-Poll-Helper":"true","X-Stainless-Custom-Poll-Interval":c?.pollIntervalMs?.toString()??void 0}]);for(;;){let e=await this.retrieve(b,{vector_store_id:a},{...c,headers:d}).withResponse(),f=e.data;switch(f.status){case"in_progress":let g=5e3;if(c?.pollIntervalMs)g=c.pollIntervalMs;else{let a=e.response.headers.get("openai-poll-after-ms");if(a){let b=parseInt(a);isNaN(b)||(g=b)}}await bf(g);break;case"failed":case"completed":return f}}}async upload(a,b,c){let d=await this._client.files.create({file:b,purpose:"assistants"},c);return this.create(a,{file_id:d.id},c)}async uploadAndPoll(a,b,c){let d=await this.upload(a,b,c);return await this.poll(a,d.id,c)}content(a,b,c){let{vector_store_id:d}=b;return this._client.getAPIList(ce`/vector_stores/${d}/files/${a}/content`,bT,{...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}}class d1 extends cb{constructor(){super(...arguments),this.files=new d0(this._client),this.fileBatches=new d_(this._client)}create(a,b){return this._client.post("/vector_stores",{body:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}retrieve(a,b){return this._client.get(ce`/vector_stores/${a}`,{...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}update(a,b,c){return this._client.post(ce`/vector_stores/${a}`,{body:b,...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/vector_stores",bU,{query:a,...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/vector_stores/${a}`,{...b,headers:c2([{"OpenAI-Beta":"assistants=v2"},b?.headers]),__security:{bearerAuth:!0}})}search(a,b,c){return this._client.getAPIList(ce`/vector_stores/${a}/search`,bT,{body:b,method:"post",...c,headers:c2([{"OpenAI-Beta":"assistants=v2"},c?.headers]),__security:{bearerAuth:!0}})}}d1.Files=d0,d1.FileBatches=d_;class d2 extends cb{create(a,b){return this._client.post("/videos",b2({body:a,...b,__security:{bearerAuth:!0}},this._client))}retrieve(a,b){return this._client.get(ce`/videos/${a}`,{...b,__security:{bearerAuth:!0}})}list(a={},b){return this._client.getAPIList("/videos",bV,{query:a,...b,__security:{bearerAuth:!0}})}delete(a,b){return this._client.delete(ce`/videos/${a}`,{...b,__security:{bearerAuth:!0}})}createCharacter(a,b){return this._client.post("/videos/characters",b2({body:a,...b,__security:{bearerAuth:!0}},this._client))}downloadContent(a,b={},c){return this._client.get(ce`/videos/${a}/content`,{query:b,...c,headers:c2([{Accept:"application/binary"},c?.headers]),__security:{bearerAuth:!0},__binaryResponse:!0})}edit(a,b){return this._client.post("/videos/edits",b2({body:a,...b,__security:{bearerAuth:!0}},this._client))}extend(a,b){return this._client.post("/videos/extensions",b2({body:a,...b,__security:{bearerAuth:!0}},this._client))}getCharacter(a,b){return this._client.get(ce`/videos/characters/${a}`,{...b,__security:{bearerAuth:!0}})}remix(a,b,c){return this._client.post(ce`/videos/${a}/remix`,b1({body:b,...c,__security:{bearerAuth:!0}},this._client))}}class d3 extends cb{constructor(){super(...arguments),aw.add(this)}async unwrap(a,b,c=this._client.webhookSecret,d=300){return await this.verifySignature(a,b,c,d),JSON.parse(a)}async verifySignature(a,b,c=this._client.webhookSecret,d=300){if("undefined"==typeof crypto||"function"!=typeof crypto.subtle.importKey||"function"!=typeof crypto.subtle.verify)throw Error("Webhook signature verification is only supported when the `crypto` global is defined");aP(this,aw,"m",ax).call(this,c);let e=c2([b]).values,f=aP(this,aw,"m",ay).call(this,e,"webhook-signature"),g=aP(this,aw,"m",ay).call(this,e,"webhook-timestamp"),h=aP(this,aw,"m",ay).call(this,e,"webhook-id"),i=parseInt(g,10);if(isNaN(i))throw new a6("Invalid webhook timestamp format");let j=Math.floor(Date.now()/1e3);if(j-i>d)throw new a6("Webhook timestamp is too old");if(i>j+d)throw new a6("Webhook timestamp is too new");let k=f.split(" ").map(a=>a.startsWith("v1,")?a.substring(3):a),l=c.startsWith("whsec_")?Buffer.from(c.replace("whsec_",""),"base64"):Buffer.from(c,"utf-8"),m=h?`${h}.${g}.${a}`:`${g}.${a}`,n=await crypto.subtle.importKey("raw",l,{name:"HMAC",hash:"SHA-256"},!1,["verify"]);for(let a of k)try{let b=Buffer.from(a,"base64");if(await crypto.subtle.verify("HMAC",n,b,new TextEncoder().encode(m)))return}catch{continue}throw new a6("The given webhook signature does not match the expected signature")}}aw=new WeakSet,ax=function(a){if("string"!=typeof a||0===a.length)throw Error("The webhook secret must either be set using the env var, OPENAI_WEBHOOK_SECRET, on the client class, OpenAI({ webhookSecret: '123' }), or passed to this function")},ay=function(a,b){if(!a)throw Error("Headers are required");let c=a.get(b);if(null==c)throw Error(`Missing required header: ${b}`);return c};class d4{constructor({baseURL:a=dh("OPENAI_BASE_URL"),apiKey:b=dh("OPENAI_API_KEY")??null,adminAPIKey:c=dh("OPENAI_ADMIN_KEY")??null,organization:d=dh("OPENAI_ORG_ID")??null,project:e=dh("OPENAI_PROJECT_ID")??null,webhookSecret:f=dh("OPENAI_WEBHOOK_SECRET")??null,workloadIdentity:g,...h}={}){az.add(this),aB.set(this,void 0),this.completions=new dm(this),this.chat=new cz(this),this.embeddings=new dt(this),this.files=new dx(this),this.images=new dI(this),this.audio=new c6(this),this.moderations=new dK(this),this.models=new dJ(this),this.fineTuning=new dF(this),this.graders=new dH(this),this.vectorStores=new d1(this),this.webhooks=new d3(this),this.beta=new dl(this),this.batches=new c7(this),this.uploads=new dZ(this),this.admin=new c0(this),this.responses=new dT(this),this.realtime=new dN(this),this.conversations=new ds(this),this.evals=new dw(this),this.containers=new dq(this),this.skills=new dX(this),this.videos=new d2(this);let i={apiKey:b,adminAPIKey:c,organization:d,project:e,webhookSecret:f,workloadIdentity:g,...h,baseURL:a||"https://api.openai.com/v1"};if(b&&g)throw new aT("The `apiKey` and `workloadIdentity` options are mutually exclusive");if(!b&&!c&&!g)throw new aT("Missing credentials. Please pass an `apiKey`, `workloadIdentity`, `adminAPIKey`, or set the `OPENAI_API_KEY` or `OPENAI_ADMIN_KEY` environment variable.");if(!i.dangerouslyAllowBrowser&&"undefined"!=typeof window&&void 0!==window.document&&"undefined"!=typeof navigator)throw new aT("It looks like you're running in a browser-like environment.\n\nThis is disabled by default, as it risks exposing your secret API credentials to attackers.\nIf you understand the risks and have appropriate mitigations in place,\nyou can set the `dangerouslyAllowBrowser` option to `true`, e.g.,\n\nnew OpenAI({ apiKey, dangerouslyAllowBrowser: true });\n\nhttps://help.openai.com/en/articles/5112595-best-practices-for-api-key-safety\n");this.baseURL=i.baseURL,this.timeout=i.timeout??aA.DEFAULT_TIMEOUT,this.logger=i.logger??console;let j="warn";this.logLevel=j,this.logLevel=bD(i.logLevel,"ClientOptions.logLevel",this)??bD(dh("OPENAI_LOG"),"process.env['OPENAI_LOG']",this)??j,this.fetchOptions=i.fetchOptions,this.maxRetries=i.maxRetries??2,this.fetch=i.fetch??bj(),aO(this,aB,bo,"f");let k=dh("OPENAI_CUSTOM_HEADERS");if(k){let a={};for(let b of k.split("\n")){let c=b.indexOf(":");c>=0&&(a[b.substring(0,c).trim()]=b.substring(c+1).trim())}i.defaultHeaders=c2([a,i.defaultHeaders])}this._options=i,g&&(this._workloadIdentityAuth=new bY(g,this.fetch)),this.apiKey="string"==typeof b?b:null,this.adminAPIKey=c,this.organization=d,this.project=e,this.webhookSecret=f}withOptions(a){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._options.apiKey,adminAPIKey:this.adminAPIKey,workloadIdentity:this._options.workloadIdentity,organization:this.organization,project:this.project,webhookSecret:this.webhookSecret,...a})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:a,nulls:b},c={bearerAuth:!0,adminAPIKeyAuth:!0}){if(!(a.get("authorization")||a.get("api-key")||b.has("authorization")||b.has("api-key"))&&(!this._workloadIdentityAuth||!c.bearerAuth))throw Error('Could not resolve authentication method. Expected either apiKey or adminAPIKey to be set. Or for one of the "Authorization" or "api-key" headers to be explicitly omitted')}async authHeaders(a,b={bearerAuth:!0,adminAPIKeyAuth:!0}){return c2([b.bearerAuth?await this.bearerAuth(a):null,b.adminAPIKeyAuth?await this.adminAPIKeyAuth(a):null])}async bearerAuth(a){return this._workloadIdentityAuth?c2([{Authorization:`Bearer ${await this._workloadIdentityAuth.getToken()}`}]):null!=this.apiKey?c2([{Authorization:`Bearer ${this.apiKey}`}]):void 0}async adminAPIKeyAuth(a){if(null!=this.adminAPIKey)return c2([{Authorization:`Bearer ${this.adminAPIKey}`}])}stringifyQuery(a){return function(a,b={}){let c,d=a,e=function(a=bx){let b;if(void 0!==a.allowEmptyArrays&&"boolean"!=typeof a.allowEmptyArrays)throw TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(void 0!==a.encodeDotInKeys&&"boolean"!=typeof a.encodeDotInKeys)throw TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==a.encoder&&void 0!==a.encoder&&"function"!=typeof a.encoder)throw TypeError("Encoder has to be a function.");let c=a.charset||bx.charset;if(void 0!==a.charset&&"utf-8"!==a.charset&&"iso-8859-1"!==a.charset)throw TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");let d=bp;if(void 0!==a.format){if(!bs(br,a.format))throw TypeError("Unknown format option provided.");d=a.format}let e=br[d],f=bx.filter;if(("function"==typeof a.filter||ba(a.filter))&&(f=a.filter),b=a.arrayFormat&&a.arrayFormat in bv?a.arrayFormat:"indices"in a?a.indices?"indices":"repeat":bx.arrayFormat,"commaRoundTrip"in a&&"boolean"!=typeof a.commaRoundTrip)throw TypeError("`commaRoundTrip` must be a boolean, or absent");let g=void 0===a.allowDots?!0==!!a.encodeDotInKeys||bx.allowDots:!!a.allowDots;return{addQueryPrefix:"boolean"==typeof a.addQueryPrefix?a.addQueryPrefix:bx.addQueryPrefix,allowDots:g,allowEmptyArrays:"boolean"==typeof a.allowEmptyArrays?!!a.allowEmptyArrays:bx.allowEmptyArrays,arrayFormat:b,charset:c,charsetSentinel:"boolean"==typeof a.charsetSentinel?a.charsetSentinel:bx.charsetSentinel,commaRoundTrip:!!a.commaRoundTrip,delimiter:void 0===a.delimiter?bx.delimiter:a.delimiter,encode:"boolean"==typeof a.encode?a.encode:bx.encode,encodeDotInKeys:"boolean"==typeof a.encodeDotInKeys?a.encodeDotInKeys:bx.encodeDotInKeys,encoder:"function"==typeof a.encoder?a.encoder:bx.encoder,encodeValuesOnly:"boolean"==typeof a.encodeValuesOnly?a.encodeValuesOnly:bx.encodeValuesOnly,filter:f,format:d,formatter:e,serializeDate:"function"==typeof a.serializeDate?a.serializeDate:bx.serializeDate,skipNulls:"boolean"==typeof a.skipNulls?a.skipNulls:bx.skipNulls,sort:"function"==typeof a.sort?a.sort:null,strictNullHandling:"boolean"==typeof a.strictNullHandling?a.strictNullHandling:bx.strictNullHandling}}(b);"function"==typeof e.filter?d=(0,e.filter)("",d):ba(e.filter)&&(c=e.filter);let f=[];if("object"!=typeof d||null===d)return"";let g=bv[e.arrayFormat],h="comma"===g&&e.commaRoundTrip;c||(c=Object.keys(d)),e.sort&&c.sort(e.sort);let i=new WeakMap;for(let a=0;a<c.length;++a){let b=c[a];e.skipNulls&&null===d[b]||bw(f,function a(b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){var t,u;let v,w=b,x=s,y=0,z=!1;for(;void 0!==(x=x.get(by))&&!z;){let a=x.get(b);if(y+=1,void 0!==a)if(a===y)throw RangeError("Cyclic object value");else z=!0;void 0===x.get(by)&&(y=0)}if("function"==typeof k?w=k(c,w):w instanceof Date?w=n?.(w):"comma"===d&&ba(w)&&(w=bu(w,function(a){return a instanceof Date?n?.(a):a})),null===w){if(g)return j&&!q?j(c,bx.encoder,r,"key",o):c;w=""}if("string"==typeof(t=w)||"number"==typeof t||"boolean"==typeof t||"symbol"==typeof t||"bigint"==typeof t||(u=w)&&"object"==typeof u&&u.constructor&&u.constructor.isBuffer&&u.constructor.isBuffer(u)){if(j){let a=q?c:j(c,bx.encoder,r,"key",o);return[p?.(a)+"="+p?.(j(w,bx.encoder,r,"value",o))]}return[p?.(c)+"="+p?.(String(w))]}let A=[];if(void 0===w)return A;if("comma"===d&&ba(w))q&&j&&(w=bu(w,j)),v=[{value:w.length>0?w.join(",")||null:void 0}];else if(ba(k))v=k;else{let a=Object.keys(w);v=l?a.sort(l):a}let B=i?String(c).replace(/\./g,"%2E"):String(c),C=e&&ba(w)&&1===w.length?B+"[]":B;if(f&&ba(w)&&0===w.length)return C+"[]";for(let c=0;c<v.length;++c){let t=v[c],u="object"==typeof t&&void 0!==t.value?t.value:w[t];if(h&&null===u)continue;let x=m&&i?t.replace(/\./g,"%2E"):t,z=ba(w)?"function"==typeof d?d(C,x):C:C+(m?"."+x:"["+x+"]");s.set(b,y);let B=new WeakMap;B.set(by,s),bw(A,a(u,z,d,e,f,g,h,i,"comma"===d&&q&&ba(w)?null:j,k,l,m,n,o,p,q,r,B))}return A}(d[b],b,g,h,e.allowEmptyArrays,e.strictNullHandling,e.skipNulls,e.encodeDotInKeys,e.encode?e.encoder:null,e.filter,e.sort,e.allowDots,e.serializeDate,e.format,e.formatter,e.encodeValuesOnly,e.charset,i))}let j=f.join(e.delimiter),k=!0===e.addQueryPrefix?"?":"";return e.charsetSentinel&&("iso-8859-1"===e.charset?k+="utf8=%26%2310003%3B&":k+="utf8=%E2%9C%93&"),j.length>0?k+j:""}(a,{arrayFormat:"brackets"})}getUserAgent(){return`${this.constructor.name}/JS ${bg}`}defaultIdempotencyKey(){return`stainless-node-retry-${aQ()}`}makeStatusError(a,b,c,d){return aU.generate(a,b,c,d)}async _callApiKey(){let a,b=this._options.apiKey;if("function"!=typeof b)return!1;try{a=await b()}catch(a){if(a instanceof aT)throw a;throw new aT(`Failed to get token from 'apiKey' function: ${a.message}`,{cause:a})}if("string"!=typeof a||!a)throw new aT(`Expected 'apiKey' function argument to return a string but it returned ${a}`);return this.apiKey=a,!0}buildURL(a,b,c){let d=!aP(this,az,"m",aC).call(this)&&c||this.baseURL,e=new URL(a9.test(a)?a:d+(d.endsWith("/")&&a.startsWith("/")?a.slice(1):a)),f=this.defaultQuery(),g=Object.fromEntries(e.searchParams);return bd(f)&&bd(g)||(b={...g,...f,...b}),"object"==typeof b&&b&&!Array.isArray(b)&&(e.search=this.stringifyQuery(b)),e.toString()}async prepareOptions(a){(a.__security??{bearerAuth:!0}).bearerAuth&&await this._callApiKey()}async prepareRequest(a,{url:b,options:c}){}get(a,b){return this.methodRequest("get",a,b)}post(a,b){return this.methodRequest("post",a,b)}patch(a,b){return this.methodRequest("patch",a,b)}put(a,b){return this.methodRequest("put",a,b)}delete(a,b){return this.methodRequest("delete",a,b)}methodRequest(a,b,c){return this.request(Promise.resolve(c).then(c=>({method:a,path:b,...c})))}request(a,b=null){return new bQ(this,this.makeRequest(a,b,void 0))}async makeRequest(a,b,c){let d=await a,e=d.maxRetries??this.maxRetries;null==b&&(b=e),await this.prepareOptions(d);let{req:f,url:g,timeout:h}=await this.buildRequest(d,{retryCount:e-b});await this.prepareRequest(f,{url:g,options:d});let i="log_"+(0x1000000*Math.random()|0).toString(16).padStart(6,"0"),j=void 0===c?"":`, retryOf: ${c}`,k=Date.now();if(bI(this).debug(`[${i}] sending request`,bJ({retryOfRequestLogID:c,method:d.method,url:g,options:d,headers:f.headers})),d.signal?.aborted)throw new aV;let l=d.__security??{bearerAuth:!0},m=new AbortController,n=await this.fetchWithAuth(g,f,h,m,l).catch(aS),o=Date.now();if(n instanceof globalThis.Error){let a=`retrying, ${b} attempts remaining`;if(d.signal?.aborted)throw new aV;let e=aR(n)||/timed? ?out/i.test(String(n)+("cause"in n?String(n.cause):""));if(b)return bI(this).info(`[${i}] connection ${e?"timed out":"failed"} - ${a}`),bI(this).debug(`[${i}] connection ${e?"timed out":"failed"} (${a})`,bJ({retryOfRequestLogID:c,url:g,durationMs:o-k,message:n.message})),this.retryRequest(d,b,c??i);if(bI(this).info(`[${i}] connection ${e?"timed out":"failed"} - error; no more retries left`),bI(this).debug(`[${i}] connection ${e?"timed out":"failed"} (error; no more retries left)`,bJ({retryOfRequestLogID:c,url:g,durationMs:o-k,message:n.message})),n instanceof a7||n instanceof a8)throw n;if(e)throw new aX;throw new aW({message:function(a){if(function(a){let b=a;for(let a=0;a<8&&b&&"object"==typeof b;a++){let a=b;if("UND_ERR_INVALID_ARG"===a.code&&"string"==typeof a.message&&a.message.includes("invalid onRequestStart method"))return!0;b=a.cause}return!1}(a))return"Connection error. This may be caused by passing an undici dispatcher, such as ProxyAgent, that is incompatible with the fetch implementation. If you are using undici's ProxyAgent, pass the fetch implementation from the same undici package: import { fetch, ProxyAgent } from 'undici'; new OpenAI({ fetch, fetchOptions: { dispatcher: new ProxyAgent(...) } });"}(n),cause:n})}let p=[...n.headers.entries()].filter(([a])=>"x-request-id"===a).map(([a,b])=>", "+a+": "+JSON.stringify(b)).join(""),q=`[${i}${j}${p}] ${f.method} ${g} ${n.ok?"succeeded":"failed"} with status ${n.status} in ${o-k}ms`;if(!n.ok){if(401===n.status&&this._workloadIdentityAuth&&l.bearerAuth&&!d.__metadata?.hasStreamingBody&&!d.__metadata?.workloadIdentityTokenRefreshed)return await bn(n.body),this._workloadIdentityAuth.invalidateToken(),this.makeRequest({...d,__metadata:{...d.__metadata,workloadIdentityTokenRefreshed:!0}},b,c??i);let a=await this.shouldRetry(n);if(b&&a){let a=`retrying, ${b} attempts remaining`;return await bn(n.body),bI(this).info(`${q} - ${a}`),bI(this).debug(`[${i}] response error (${a})`,bJ({retryOfRequestLogID:c,url:n.url,status:n.status,headers:n.headers,durationMs:o-k})),this.retryRequest(d,b,c??i,n.headers)}let e=a?"error; no more retries left":"error; not retryable";bI(this).info(`${q} - ${e}`);let f=await n.text().catch(a=>aS(a).message),g=(a=>{try{return JSON.parse(a)}catch(a){return}})(f),h=g?void 0:f;throw bI(this).debug(`[${i}] response error (${e})`,bJ({retryOfRequestLogID:c,url:n.url,status:n.status,headers:n.headers,message:h,durationMs:Date.now()-k})),this.makeStatusError(n.status,g,h,n.headers)}return bI(this).info(q),bI(this).debug(`[${i}] response start`,bJ({retryOfRequestLogID:c,url:n.url,status:n.status,headers:n.headers,durationMs:o-k})),{response:n,options:d,controller:m,requestLogID:i,retryOfRequestLogID:c,startTime:k}}getAPIList(a,b,c){return this.requestAPIList(b,c&&"then"in c?c.then(b=>({method:"get",path:a,...b})):{method:"get",path:a,...c})}requestAPIList(a,b){return new bS(this,this.makeRequest(b,null,void 0),a)}async fetchWithAuth(a,b,c,d,e={bearerAuth:!0,adminAPIKeyAuth:!0}){if(this._workloadIdentityAuth&&e.bearerAuth){let a=b.headers,c=a.get("Authorization");if(!c||"Bearer workload-identity-auth"===c){let b=await this._workloadIdentityAuth.getToken();a.set("Authorization",`Bearer ${b}`)}}return await this.fetchWithTimeout(a,b,c,d)}async fetchWithTimeout(a,b,c,d){let{signal:e,method:f,...g}=b||{},h=this._makeAbort(d);e&&e.addEventListener("abort",h,{once:!0});let i=setTimeout(h,c),j=globalThis.ReadableStream&&g.body instanceof globalThis.ReadableStream||"object"==typeof g.body&&null!==g.body&&Symbol.asyncIterator in g.body,k={signal:d.signal,...j?{duplex:"half"}:{},method:"GET",...g};f&&(k.method=f.toUpperCase());try{return await this.fetch.call(void 0,a,k)}finally{clearTimeout(i)}}async shouldRetry(a){let b=a.headers.get("x-should-retry");return"true"===b||"false"!==b&&(408===a.status||409===a.status||429===a.status||!!(a.status>=500))}async retryRequest(a,b,c,d){let e,f=d?.get("retry-after-ms");if(f){let a=parseFloat(f);Number.isNaN(a)||(e=a)}let g=d?.get("retry-after");if(g&&!e){let a=parseFloat(g);e=Number.isNaN(a)?Date.parse(g)-Date.now():1e3*a}if(void 0===e){let c=a.maxRetries??this.maxRetries;e=this.calculateDefaultRetryTimeoutMillis(b,c)}return await bf(e),this.makeRequest(a,b-1,c)}calculateDefaultRetryTimeoutMillis(a,b){return Math.min(.5*Math.pow(2,b-a),8)*(1-.25*Math.random())*1e3}async buildRequest(a,{retryCount:b=0}={}){let c={...a},{method:d,path:e,query:f,defaultBaseURL:g}=c,h=this.buildURL(e,f,g);"timeout"in c&&((a,b)=>{if("number"!=typeof b||!Number.isInteger(b))throw new aT(`${a} must be an integer`);if(b<0)throw new aT(`${a} must be a positive integer`)})("timeout",c.timeout),c.timeout=c.timeout??this.timeout;let{bodyHeaders:i,body:j,isStreamingBody:k}=this.buildBody({options:c});k&&(a.__metadata={...a.__metadata,hasStreamingBody:!0});let l=await this.buildHeaders({options:a,method:d,bodyHeaders:i,retryCount:b});return{req:{method:d,headers:l,...c.signal&&{signal:c.signal},...globalThis.ReadableStream&&j instanceof globalThis.ReadableStream&&{duplex:"half"},...j&&{body:j},...this.fetchOptions??{},...c.fetchOptions??{}},url:h,timeout:c.timeout}}async buildHeaders({options:a,method:b,bodyHeaders:c,retryCount:e}){let f={};this.idempotencyHeader&&"get"!==b&&(a.idempotencyKey||(a.idempotencyKey=this.defaultIdempotencyKey()),f[this.idempotencyHeader]=a.idempotencyKey);let g=c2([f,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(e),...a.timeout?{"X-Stainless-Timeout":String(Math.trunc(a.timeout/1e3))}:{},...d??(d=(()=>{let a="undefined"!=typeof Deno&&null!=Deno.build?"deno":"undefined"!=typeof EdgeRuntime?"edge":"[object process]"===Object.prototype.toString.call(void 0!==globalThis.process?globalThis.process:0)?"node":"unknown";if("deno"===a)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":bg,"X-Stainless-OS":bi(Deno.build.os),"X-Stainless-Arch":bh(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":"string"==typeof Deno.version?Deno.version:Deno.version?.deno??"unknown"};if("undefined"!=typeof EdgeRuntime)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":bg,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if("node"===a)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":bg,"X-Stainless-OS":bi(globalThis.process.platform??"unknown"),"X-Stainless-Arch":bh(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let b=function(){if("undefined"==typeof navigator||!navigator)return null;for(let{key:a,pattern:b}of[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}]){let c=b.exec(navigator.userAgent);if(c){let b=c[1]||0,d=c[2]||0,e=c[3]||0;return{browser:a,version:`${b}.${d}.${e}`}}}return null}();return b?{"X-Stainless-Lang":"js","X-Stainless-Package-Version":bg,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${b.browser}`,"X-Stainless-Runtime-Version":b.version}:{"X-Stainless-Lang":"js","X-Stainless-Package-Version":bg,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}})()),"OpenAI-Organization":this.organization,"OpenAI-Project":this.project},await this.authHeaders(a,a.__security??{bearerAuth:!0}),this._options.defaultHeaders,c,a.headers]);return this.validateHeaders(g,a.__security??{bearerAuth:!0}),g.values}_makeAbort(a){return()=>a.abort()}buildBody({options:{body:a,headers:b}}){if(!a)return{bodyHeaders:void 0,body:void 0,isStreamingBody:!1};let c=c2([b]),d=void 0!==globalThis.ReadableStream&&a instanceof globalThis.ReadableStream,e=!d&&("string"==typeof a||a instanceof ArrayBuffer||ArrayBuffer.isView(a)||void 0!==globalThis.Blob&&a instanceof globalThis.Blob||a instanceof URLSearchParams||a instanceof FormData);return ArrayBuffer.isView(a)||a instanceof ArrayBuffer||a instanceof DataView||"string"==typeof a&&c.values.has("content-type")||globalThis.Blob&&a instanceof globalThis.Blob||a instanceof FormData||a instanceof URLSearchParams||d?{bodyHeaders:void 0,body:a,isStreamingBody:!e}:"object"==typeof a&&(Symbol.asyncIterator in a||Symbol.iterator in a&&"next"in a&&"function"==typeof a.next)?{bodyHeaders:void 0,body:bl(a),isStreamingBody:!0}:"object"==typeof a&&"application/x-www-form-urlencoded"===c.values.get("content-type")?{bodyHeaders:{"content-type":"application/x-www-form-urlencoded"},body:this.stringifyQuery(a),isStreamingBody:!1}:{...aP(this,aB,"f").call(this,{body:a,headers:c}),isStreamingBody:!1}}}aA=d4,aB=new WeakMap,az=new WeakSet,aC=function(){return"https://api.openai.com/v1"!==this.baseURL},d4.OpenAI=aA,d4.DEFAULT_TIMEOUT=6e5,d4.OpenAIError=aT,d4.APIError=aU,d4.APIConnectionError=aW,d4.APIConnectionTimeoutError=aX,d4.APIUserAbortError=aV,d4.NotFoundError=a_,d4.ConflictError=a0,d4.RateLimitError=a2,d4.BadRequestError=aY,d4.AuthenticationError=aZ,d4.InternalServerError=a3,d4.PermissionDeniedError=a$,d4.UnprocessableEntityError=a1,d4.InvalidWebhookSignatureError=a6,d4.toFile=b9,d4.Completions=dm,d4.Chat=cz,d4.Embeddings=dt,d4.Files=dx,d4.Images=dI,d4.Audio=c6,d4.Moderations=dK,d4.Models=dJ,d4.FineTuning=dF,d4.Graders=dH,d4.VectorStores=d1,d4.Webhooks=d3,d4.Beta=dl,d4.Batches=c7,d4.Uploads=dZ,d4.Admin=c0,d4.Responses=dT,d4.Realtime=dN,d4.Conversations=ds,d4.Evals=dw,d4.Containers=dq,d4.Skills=dX,d4.Videos=d2;var d5=c(92568),d6=c(22446);async function d7(a){let b=(0,d6.x)().prepare("SELECT context, generated_at, model FROM session_contexts WHERE session_id = ?").get(a);return b?{context:b.context,generatedAt:b.generated_at,model:b.model}:null}let d8="force-dynamic";async function d9({params:a}){let{id:b}=await a,c=(0,aL.Ht)(b);c||(0,aE.notFound)();let d=(0,aL.lS)(b),e=(0,aN.x)(c),f=c.input_tokens+c.output_tokens+c.cache_read_tokens+c.cache_write_tokens,g=null!==function(){let a=(0,aL.PL)("llm_provider")||"anthropic",b="openai"===a?"openai_api_key":"anthropic_api_key",c=(0,aL.PL)(b)||process.env["openai"===a?"OPENAI_API_KEY":"ANTHROPIC_API_KEY"]||"";if(!c)return null;let d=(0,aL.PL)("classifier_model")||(0,d5.$I)(a),e=(0,aL.PL)("summarizer_model")||(0,d5.$I)(a);return{provider:a,apiKey:c,classifierModel:d,summarizerModel:e}}(),h=await d7(b);return(0,aD.jsxs)("div",{children:[(0,aD.jsx)(aH.z,{title:e,subtitle:(0,aD.jsxs)("span",{className:"flex items-center gap-2 flex-wrap",children:[(0,aL.LQ)(c).map(a=>(0,aD.jsx)(aJ.i,{category:a},a)),(0,aD.jsx)(aG(),{href:`/projects/${c.project_id}`,className:"hover:text-primary",children:c.project_name}),(0,aD.jsx)("span",{className:"text-ink-mute",children:"\xb7"}),(0,aD.jsx)("span",{className:"font-mono",children:c.model||"unknown model"}),(0,aD.jsx)("span",{className:"text-ink-mute",children:"\xb7"}),(0,aD.jsx)("span",{children:new Date(c.started_at).toLocaleString()})]}),right:(0,aD.jsx)(aK.SessionActions,{sessionId:b,provider:c.provider,cwd:c.cwd,hasLlmKey:g,cachedContext:h?.context??null})}),(0,aD.jsxs)("div",{className:"p-7 space-y-7",children:[(0,aD.jsxs)("div",{className:"grid grid-cols-5 gap-4",children:[(0,aD.jsx)(aI.f,{label:"Tokens",value:(0,aM.yj)(f)}),(0,aD.jsx)(aI.f,{label:"Input",value:(0,aM.yj)(c.input_tokens)}),(0,aD.jsx)(aI.f,{label:"Output",value:(0,aM.yj)(c.output_tokens)}),(0,aD.jsx)(aI.f,{label:"Cache Read",value:(0,aM.yj)(c.cache_read_tokens)}),(0,aD.jsx)(aI.f,{label:"Est. Cost",value:(0,aM.F0)(c.est_cost_usd),accent:"secondary"})]}),(0,aD.jsxs)("div",{className:"card",children:[(0,aD.jsxs)("div",{className:"card-header flex items-center justify-between",children:[(0,aD.jsx)("span",{children:"Conversation"}),(0,aD.jsxs)("span",{className:"normal-case tracking-normal font-normal text-ink-mute",children:[c.user_message_count," user messages \xb7 ",(0,aM.c5)(c.duration_ms)]})]}),(0,aD.jsxs)("div",{className:"p-5 space-y-3",children:[d.map(a=>{let b="user"===a.role;return(0,aD.jsx)("div",{className:`flex ${b?"justify-end":"justify-start"}`,children:(0,aD.jsxs)("div",{className:`flex flex-col max-w-[78%] ${b?"items-end":"items-start"}`,children:[(0,aD.jsxs)("div",{className:"text-[10px] font-mono text-ink-mute mb-1 px-1 flex items-center gap-2",children:[(0,aD.jsx)("span",{className:"uppercase tracking-wider",children:b?"you":"assistant"}),(0,aD.jsx)("span",{children:"\xb7"}),(0,aD.jsx)("span",{children:(0,aM.ME)(a.timestamp)}),!b&&a.model&&(0,aD.jsxs)(aD.Fragment,{children:[(0,aD.jsx)("span",{children:"\xb7"}),(0,aD.jsx)("span",{children:a.model})]})]}),(0,aD.jsx)("div",{className:`rounded-lg px-4 py-2.5 text-body-md leading-relaxed whitespace-pre-wrap break-words ${b?"bg-primary/10 border border-primary/30 text-ink rounded-br-sm":"bg-surface-2 border border-surface-3 text-ink-dim rounded-bl-sm"}`,children:a.content})]})},a.id)}),0===d.length&&(0,aD.jsx)("div",{className:"p-6 text-center text-ink-mute text-body-sm",children:"No message content captured for this session."})]})]}),(0,aD.jsxs)("div",{className:"card",children:[(0,aD.jsx)("div",{className:"card-header",children:"Session Metadata"}),(0,aD.jsxs)("div",{className:"p-4 grid grid-cols-2 gap-3 font-mono text-code-sm",children:[(0,aD.jsx)(ea,{k:"Session ID",v:c.id}),(0,aD.jsx)(ea,{k:"Provider",v:c.provider}),(0,aD.jsx)(ea,{k:"cwd",v:c.cwd}),(0,aD.jsx)(ea,{k:"git branch",v:c.git_branch||"—"})]})]})]})]})}function ea({k:a,v:b}){return(0,aD.jsxs)("div",{className:"flex gap-3",children:[(0,aD.jsx)("span",{className:"text-ink-mute min-w-[100px]",children:a}),(0,aD.jsx)("span",{className:"text-ink-dim break-all",children:b})]})}},37830:a=>{"use strict";a.exports=require("node:stream/web")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},47614:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getRedirectError:function(){return g},getRedirectStatusCodeFromError:function(){return l},getRedirectTypeFromError:function(){return k},getURLFromRedirectError:function(){return j},permanentRedirect:function(){return i},redirect:function(){return h}});let d=c(91203),e=c(92781),f=c(19121).actionAsyncStorage;function g(a,b,c){void 0===c&&(c=d.RedirectStatusCode.TemporaryRedirect);let f=Object.defineProperty(Error(e.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return f.digest=e.REDIRECT_ERROR_CODE+";"+b+";"+a+";"+c+";",f}function h(a,b){var c;throw null!=b||(b=(null==f||null==(c=f.getStore())?void 0:c.isAction)?e.RedirectType.push:e.RedirectType.replace),g(a,b,d.RedirectStatusCode.TemporaryRedirect)}function i(a,b){throw void 0===b&&(b=e.RedirectType.replace),g(a,b,d.RedirectStatusCode.PermanentRedirect)}function j(a){return(0,e.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function k(a){if(!(0,e.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return a.digest.split(";",2)[1]}function l(a){if(!(0,e.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(a.digest.split(";").at(-2))}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},48161:a=>{"use strict";a.exports=require("node:os")},51533:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>E.a,__next_app__:()=>K,handler:()=>M,pages:()=>J,routeModule:()=>L,tree:()=>I});var d=c(49754),e=c(9117),f=c(46595),g=c(32324),h=c(39326),i=c(38928),j=c(20175),k=c(12),l=c(54290),m=c(12696),n=c(52574),o=c(82802),p=c(77533),q=c(45229),r=c(32822),s=c(261),t=c(26453),u=c(52474),v=c(26713),w=c(51356),x=c(62685),y=c(36225),z=c(63446),A=c(2762),B=c(45742),C=c(86439),D=c(81170),E=c.n(D),F=c(62506),G=c(91203),H={};for(let a in F)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(H[a]=()=>F[a]);c.d(b,H);let I={children:["",{children:["sessions",{children:["[id]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,36541)),"/Users/mikekuehn/devProjects/agentgraphed/oss/src/app/sessions/[id]/page.tsx"]}]},{}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,51472)),"/Users/mikekuehn/devProjects/agentgraphed/oss/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,81170,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,87028,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,90461,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,32768,23)),"next/dist/client/components/builtin/unauthorized.js"]}]}.children,J=["/Users/mikekuehn/devProjects/agentgraphed/oss/src/app/sessions/[id]/page.tsx"],K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/sessions/[id]/page",pathname:"/sessions/[id]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:I},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var D;let H="/sessions/[id]/page";"/index"===H&&(H="/");let N=(0,h.getRequestMeta)(a,"postponed"),O=(0,h.getRequestMeta)(a,"minimalMode"),P=await L.prepare(a,b,{srcPage:H,multiZoneDraftMode:!1});if(!P)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Q,query:R,params:S,parsedUrl:T,pageIsDynamic:U,buildManifest:V,nextFontManifest:W,reactLoadableManifest:X,serverActionsManifest:Y,clientReferenceManifest:Z,subresourceIntegrityManifest:$,prerenderManifest:_,isDraftMode:aa,resolvedPathname:ab,revalidateOnlyGenerated:ac,routerServerContext:ad,nextConfig:ae,interceptionRoutePatterns:af}=P,ag=T.pathname||"/",ah=(0,s.normalizeAppPath)(H),{isOnDemandRevalidate:ai}=P,aj=L.match(ag,_),ak=!!_.routes[ab],al=!!(aj||ak||_.routes[ah]),am=a.headers["user-agent"]||"",an=(0,v.getBotType)(am),ao=(0,q.isHtmlBotRequest)(a),ap=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[u.NEXT_ROUTER_PREFETCH_HEADER],aq=(0,h.getRequestMeta)(a,"isRSCRequest")??(0,n.f)(a.headers[u.RSC_HEADER]),ar=(0,t.getIsPossibleServerAction)(a),as=(0,m.checkIsAppPPREnabled)(ae.experimental.ppr)&&(null==(D=_.routes[ah]??_.dynamicRoutes[ah])?void 0:D.renderingMode)==="PARTIALLY_STATIC",at=!1,au=!1,av=as?N:void 0,aw=as&&aq&&!ap,ax=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ay=!am||(0,q.shouldServeStreamingMetadata)(am,ae.htmlLimitedBots);ao&&as&&(al=!1,ay=!1);let az=!0===L.isDev||!al||"string"==typeof N||aw,aA=ao&&as,aB=null;aa||!al||az||ar||av||aw||(aB=ab);let aC=aB;!aC&&L.isDev&&(aC=ab),L.isDev||aa||!al||!aq||aw||(0,k.d)(a.headers);let aD={...F,tree:I,pages:J,GlobalError:E(),handler:M,routeModule:L,__next_app__:K};Y&&Z&&(0,p.setReferenceManifestsSingleton)({page:H,clientReferenceManifest:Z,serverActionsManifest:Y,serverModuleMap:(0,r.createServerModuleMap)({serverActionsManifest:Y})});let aE=a.method||"GET",aF=(0,g.getTracer)(),aG=aF.getActiveScopeSpan();try{let f=L.getVaryHeader(ab,af);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return L.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aF.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aE} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aE} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:R,params:S,page:ah,sharedContext:{buildId:Q},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aD,Component:(0,j.T)(aD),params:S,routeModule:L,page:H,postponed:f,shouldWaitOnAllReady:aA,serveStreamingMetadata:ay,supportsDynamicResponse:"string"==typeof f||az,buildManifest:V,nextFontManifest:W,reactLoadableManifest:X,subresourceIntegrityManifest:$,serverActionsManifest:Y,clientReferenceManifest:Z,setIsrStatus:null==ad?void 0:ad.setIsrStatus,dir:c(33873).join(process.cwd(),L.relativeProjectDir),isDraftMode:aa,isRevalidate:al&&!f&&!aw,botType:an,isOnDemandRevalidate:ai,isPossibleServerAction:ar,assetPrefix:ae.assetPrefix,nextConfigOutput:ae.output,crossOrigin:ae.crossOrigin,trailingSlash:ae.trailingSlash,previewProps:_.preview,deploymentId:ae.deploymentId,enableTainting:ae.experimental.taint,htmlLimitedBots:ae.htmlLimitedBots,devtoolSegmentExplorer:ae.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ae.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ae.experimental.cacheLife,basePath:ae.basePath,serverActions:ae.experimental.serverActions,...at?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:at}:{},experimental:{isRoutePPREnabled:as,expireTime:ae.expireTime,staleTimes:ae.experimental.staleTimes,cacheComponents:!!ae.experimental.cacheComponents,clientSegmentCache:!!ae.experimental.clientSegmentCache,clientParamParsing:!!ae.experimental.clientParamParsing,dynamicOnHover:!!ae.experimental.dynamicOnHover,inlineCss:!!ae.experimental.inlineCss,authInterrupts:!!ae.experimental.authInterrupts,clientTraceMetadata:ae.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>L.onRequestError(a,b,d,ad),err:(0,h.getRequestMeta)(a,"invokeError"),dev:L.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[z.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,al&&(null==n?void 0:n.revalidate)===0&&!L.isDev&&!as){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ab}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
9
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:w.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},n=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===L.isDev,l=c||b.writableEnded;if(ai&&ac&&!f&&!O)return(null==ad?void 0:ad.render404)?await ad.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(aj&&(j=(0,x.parseFallbackField)(aj.fallback)),j===x.FallbackMode.PRERENDER&&(0,v.isBot)(am)&&(!as||ao)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ai=!0),ai&&(j!==x.FallbackMode.NOT_FOUND||f)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),!O&&j!==x.FallbackMode.BLOCKING_STATIC_RENDER&&aC&&!l&&!aa&&U&&(k||!ak)){let b;if((k||aj)&&j===x.FallbackMode.NOT_FOUND)throw new C.NoFallbackError;if(as&&!aq){let c="string"==typeof(null==aj?void 0:aj.fallback)?aj.fallback:k?ah:null;if(b=await L.handleResponse({cacheKey:c,req:a,nextConfig:ae,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:_,isRoutePPREnabled:as,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||au?(0,o.u)(ah):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let n=ai||g||!av?void 0:av;if(at&&void 0!==n)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:w.CachedRouteKind.PAGES,html:y.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=U&&as&&((0,h.getRequestMeta)(a,"renderFallbackShell")||au)?(0,o.u)(ag):null;return m({span:i,postponed:n,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,o=await L.handleResponse({cacheKey:aB,responseGenerator:a=>n({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ai,isRoutePPREnabled:as,req:a,nextConfig:ae,prerenderManifest:_,waitUntil:d.waitUntil});if(aa&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!o){if(aB)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=o.value)?void 0:f.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=o.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof o.value.postponed;al&&!aw&&(!p||ap)&&(O||b.setHeader("x-nextjs-cache",ai?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),b.setHeader(u.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=o;if(av)l={revalidate:0,expire:void 0};else if(O&&aq&&!ap&&as)l={revalidate:0,expire:void 0};else if(!L.isDev)if(aa)l={revalidate:0,expire:void 0};else if(al){if(o.cacheControl)if("number"==typeof o.cacheControl.revalidate){if(o.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${o.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:o.cacheControl.revalidate,expire:(null==(j=o.cacheControl)?void 0:j.expire)??ae.expireTime}}else l={revalidate:z.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(o.cacheControl=l,"string"==typeof ax&&(null==q?void 0:q.kind)===w.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[z.NEXT_CACHE_TAGS_HEADER];O&&al&&c&&"string"==typeof c&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(ax);return void 0!==d?(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(d,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl}):(b.statusCode=204,(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.EMPTY,cacheControl:o.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...o,value:{...o.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&av)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(O&&al||delete a[z.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[z.NEXT_CACHE_TAGS_HEADER];if(O&&al&&s&&"string"==typeof s&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,s),!q.status||aq&&as||(b.statusCode=q.status),!O&&q.status&&G.RedirectStatusCode[q.status]&&aq&&(b.statusCode=200),p&&b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"1"),aq&&!aa){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:q.html,cacheControl:aw?{revalidate:0,expire:void 0}:o.cacheControl})}return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(q.rscData,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl})}let t=q.html;if(!p||O||aq)return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:o.cacheControl});if(at)return t.push(new ReadableStream({start(a){a.enqueue(A.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}});let v=new TransformStream;return t.push(v.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(v.writable)}).catch(a=>{v.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}})};if(!aG)return await aF.withPropagatedContext(a.headers,()=>aF.trace(i.BaseServerSpan.handleRequest,{spanName:`${aE} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aE,"http.target":a.url}},p));await p(aG)}catch(b){throw b instanceof C.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:al,isOnDemandRevalidate:ai})},ad),b}}},55591:a=>{"use strict";a.exports=require("https")},57075:a=>{"use strict";a.exports=require("node:stream")},57242:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,3991,23)),Promise.resolve().then(c.bind(c,92437))},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64404:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"notFound",{enumerable:!0,get:function(){return e}});let d=""+c(98541).HTTP_ERROR_FALLBACK_ERROR_CODE+";404";function e(){let a=Object.defineProperty(Error(d),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw a.digest=d,a}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},64712:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unstable_rethrow",{enumerable:!0,get:function(){return d}});let d=c(25799).unstable_rethrow;("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},65169:(a,b,c)=>{let{createProxy:d}=c(39893);a.exports=d("/Users/mikekuehn/devProjects/agentgraphed/oss/node_modules/next/dist/client/app-dir/link.js")},67837:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"forbidden",{enumerable:!0,get:function(){return d}}),c(98541).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73169:(a,b,c)=>{"use strict";c.d(b,{f:()=>e});var d=c(75338);function e({label:a,value:b,hint:c,accent:e}){return(0,d.jsxs)("div",{className:"card p-4",children:[(0,d.jsx)("div",{className:"metric-label",children:a}),(0,d.jsx)("div",{className:`metric-value tabular mt-1 ${"primary"===e?"text-primary":"secondary"===e?"text-secondary":"text-ink"}`,children:b}),c&&(0,d.jsx)("div",{className:"text-[11px] text-ink-mute mt-1",children:c})]})}},73566:a=>{"use strict";a.exports=require("worker_threads")},74075:a=>{"use strict";a.exports=require("zlib")},76760:a=>{"use strict";a.exports=require("node:path")},79551:a=>{"use strict";a.exports=require("url")},81630:a=>{"use strict";a.exports=require("http")},82161:(a,b,c)=>{"use strict";var d=c(93045);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}})},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},90692:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"409df161bd853257579b553d81125acb8a9b5b40c8":()=>k});var d=c(91488);c(27806);var e=c(53223),f=c(94450),g=c(88009);let h=`You write context primers that let a fresh AI coding session pick up exactly where a previous one left off.
1
+ (()=>{var a={};a.id=824,a.ids=[824],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3800:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,65169,23)),Promise.resolve().then(c.bind(c,63186)),Promise.resolve().then(c.bind(c,9998)),Promise.resolve().then(c.bind(c,35530))},9998:(a,b,c)=>{"use strict";c.d(b,{SessionActions:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call SessionActions() from the server but SessionActions is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/mikekuehn/devProjects/agentgraphed/oss/src/components/SessionActions.tsx","SessionActions")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11997:a=>{"use strict";a.exports=require("punycode")},13528:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,3991,23)),Promise.resolve().then(c.bind(c,28380)),Promise.resolve().then(c.bind(c,92437)),Promise.resolve().then(c.bind(c,22412))},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},25512:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>v,dynamic:()=>u});var d=c(75338),e=c(82161),f=c(65169),g=c.n(f),h=c(40753),i=c(73169),j=c(92490),k=c(9998),l=c(63186),m=c(35530),n=c(10944),o=c(46145),p=c(97064),q=c(99044),r=c(71277),s=c(22446);async function t(a){let b=(0,s.x)().prepare("SELECT context, generated_at, model FROM session_contexts WHERE session_id = ?").get(a);return b?{context:b.context,generatedAt:b.generated_at,model:b.model}:null}c(92568);let u="force-dynamic";async function v({params:a}){let{id:b}=await a,c=(0,n.Ht)(b);c||(0,e.notFound)();let f=(0,n.lS)(b),s=(0,n.cL)(b),u=(0,p.xU)(c),v=c.input_tokens+c.output_tokens+c.cache_read_tokens+c.cache_write_tokens,x=null!==(0,r.Q)(),y=await t(b);return(0,d.jsxs)("div",{children:[(0,d.jsx)(h.z,{title:u,subtitle:(0,d.jsxs)("span",{className:"flex items-center gap-2 flex-wrap",children:[(0,n.LQ)(c).map(a=>(0,d.jsx)(j.i,{category:a},a)),(0,d.jsx)(g(),{href:`/projects/${c.project_id}`,className:"hover:text-primary",children:c.project_name}),(0,d.jsx)("span",{className:"text-ink-mute",children:"\xb7"}),(0,d.jsx)("span",{className:"font-mono",children:c.model||"unknown model"}),(0,d.jsx)("span",{className:"text-ink-mute",children:"\xb7"}),(0,d.jsx)("span",{children:new Date(c.started_at).toLocaleString()})]}),right:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(k.SessionActions,{sessionId:b,hasLlmKey:x,cachedContext:y?.context??null}),(0,d.jsx)(m.ShareButton,{imageUrl:`/api/share/session/${b}`})]})}),(0,d.jsxs)("div",{className:"p-7 space-y-7",children:[(0,d.jsx)(l.ResumePanel,{provider:c.provider,cwd:(0,q.G)(c.cwd),sessionId:b}),(0,d.jsxs)("div",{className:"grid grid-cols-5 gap-4",children:[(0,d.jsx)(i.f,{label:"Tokens",value:(0,o.yj)(v)}),(0,d.jsx)(i.f,{label:"Input",value:(0,o.yj)(c.input_tokens)}),(0,d.jsx)(i.f,{label:"Output",value:(0,o.yj)(c.output_tokens)}),(0,d.jsx)(i.f,{label:"Cache Read",value:(0,o.yj)(c.cache_read_tokens)}),(0,d.jsx)(i.f,{label:"Est. Cost",value:(0,o.F0)(c.est_cost_usd),accent:"secondary"})]}),(0,d.jsxs)("div",{className:"card",children:[(0,d.jsxs)("div",{className:"card-header flex items-center justify-between",children:[(0,d.jsx)("span",{children:"Conversation"}),(0,d.jsxs)("span",{className:"normal-case tracking-normal font-normal text-ink-mute",children:[c.user_message_count," user messages \xb7 ",(0,o.c5)(c.duration_ms)]})]}),(0,d.jsxs)("div",{className:"p-5 space-y-3",children:[f.map(a=>{let b="user"===a.role;return(0,d.jsx)("div",{className:`flex ${b?"justify-end":"justify-start"}`,children:(0,d.jsxs)("div",{className:`flex flex-col max-w-[78%] ${b?"items-end":"items-start"}`,children:[(0,d.jsxs)("div",{className:"text-[10px] font-mono text-ink-mute mb-1 px-1 flex items-center gap-2",children:[(0,d.jsx)("span",{className:"uppercase tracking-wider",children:b?"you":"assistant"}),(0,d.jsx)("span",{children:"\xb7"}),(0,d.jsx)("span",{children:(0,o.ME)(a.timestamp)}),!b&&a.model&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{children:"\xb7"}),(0,d.jsx)("span",{children:a.model})]})]}),(0,d.jsx)("div",{className:`rounded-lg px-4 py-2.5 text-body-md leading-relaxed whitespace-pre-wrap break-words ${b?"bg-primary/10 border border-primary/30 text-ink rounded-br-sm":"bg-surface-2 border border-surface-3 text-ink-dim rounded-bl-sm"}`,children:a.content})]})},a.id)}),0===f.length&&(0,d.jsx)("div",{className:"p-6 text-center text-ink-mute text-body-sm",children:"No message content captured for this session."})]})]}),s.length>0&&(0,d.jsxs)("div",{className:"card",children:[(0,d.jsxs)("div",{className:"card-header flex items-center justify-between",children:[(0,d.jsx)("span",{children:"Models in this session"}),(0,d.jsx)("span",{className:"normal-case tracking-normal font-normal text-ink-mute text-[11px]",children:"assistant messages"})]}),(0,d.jsx)("div",{className:"p-4 space-y-2",children:s.map(a=>{let b=Math.max(...s.map(a=>a.messages),1),c=a.messages/b*100;return(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsxs)("div",{className:"flex items-baseline justify-between text-body-sm",children:[(0,d.jsx)("span",{className:"text-ink",children:a.family}),(0,d.jsxs)("span",{className:"font-mono text-ink-mute tabular text-code-sm",children:[a.messages," ",1===a.messages?"message":"messages"]})]}),(0,d.jsx)("div",{className:"h-1 bg-surface-2 rounded-full overflow-hidden",children:(0,d.jsx)("div",{className:"h-full bg-primary/60",style:{width:`${c}%`}})})]},a.family)})})]}),(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("div",{className:"card-header",children:"Session Metadata"}),(0,d.jsxs)("div",{className:"p-4 grid grid-cols-2 gap-3 font-mono text-code-sm",children:[(0,d.jsx)(w,{k:"Session ID",v:c.id}),(0,d.jsx)(w,{k:"Provider",v:c.provider}),(0,d.jsx)(w,{k:"cwd",v:(0,q.G)(c.cwd)}),(0,d.jsx)(w,{k:"git branch",v:c.git_branch||"—"})]})]})]})]})}function w({k:a,v:b}){return(0,d.jsxs)("div",{className:"flex gap-3",children:[(0,d.jsx)("span",{className:"text-ink-mute min-w-[100px]",children:a}),(0,d.jsx)("span",{className:"text-ink-dim break-all",children:b})]})}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},28380:(a,b,c)=>{"use strict";c.d(b,{ResumePanel:()=>f});var d=c(21124),e=c(38301);function f({provider:a,cwd:b,sessionId:c}){let[f,i]=(0,e.useState)(!1),j=function(a,b,c){let d=`cd "${b}"`;return"claude"===a?`${d} && claude --resume ${c}`:"codex"===a?`${d} && codex resume ${c}`:d}(a,b,c),k=async()=>{await navigator.clipboard.writeText(j),i(!0),setTimeout(()=>i(!1),2e3)};return(0,d.jsxs)("div",{className:"card",children:[(0,d.jsxs)("div",{className:"card-header flex items-center justify-between",children:[(0,d.jsx)("span",{children:"Resume in your terminal"}),(0,d.jsxs)("span",{className:"normal-case tracking-normal font-normal text-ink-mute text-[11px]",children:["paste into ","claude"===a?"Claude Code":"codex"===a?"Codex CLI":a]})]}),(0,d.jsxs)("div",{className:"p-3 flex items-stretch gap-2",children:[(0,d.jsx)("code",{className:"flex-1 bg-canvas border border-surface-3 rounded px-3 py-2 font-mono text-code-sm text-ink-dim overflow-x-auto whitespace-nowrap leading-relaxed",title:j,children:j}),(0,d.jsx)("button",{onClick:k,className:`btn ${f?"text-secondary":""} flex-shrink-0`,title:"Copy command to clipboard",children:f?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(h,{}),(0,d.jsx)("span",{children:"Copied"})]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g,{}),(0,d.jsx)("span",{children:"Copy"})]})})]})]})}function g(){return(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),(0,d.jsx)("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]})}function h(){return(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("polyline",{points:"20 6 9 17 4 12"})})}},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},37830:a=>{"use strict";a.exports=require("node:stream/web")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},48161:a=>{"use strict";a.exports=require("node:os")},51533:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>E.a,__next_app__:()=>K,handler:()=>M,pages:()=>J,routeModule:()=>L,tree:()=>I});var d=c(49754),e=c(9117),f=c(46595),g=c(32324),h=c(39326),i=c(38928),j=c(20175),k=c(12),l=c(54290),m=c(12696),n=c(52574),o=c(82802),p=c(77533),q=c(45229),r=c(32822),s=c(261),t=c(26453),u=c(52474),v=c(26713),w=c(51356),x=c(62685),y=c(36225),z=c(63446),A=c(2762),B=c(45742),C=c(86439),D=c(81170),E=c.n(D),F=c(62506),G=c(91203),H={};for(let a in F)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(H[a]=()=>F[a]);c.d(b,H);let I={children:["",{children:["sessions",{children:["[id]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,25512)),"/Users/mikekuehn/devProjects/agentgraphed/oss/src/app/sessions/[id]/page.tsx"]}]},{}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,51472)),"/Users/mikekuehn/devProjects/agentgraphed/oss/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,81170,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,87028,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,90461,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,32768,23)),"next/dist/client/components/builtin/unauthorized.js"]}]}.children,J=["/Users/mikekuehn/devProjects/agentgraphed/oss/src/app/sessions/[id]/page.tsx"],K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/sessions/[id]/page",pathname:"/sessions/[id]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:I},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var D;let H="/sessions/[id]/page";"/index"===H&&(H="/");let N=(0,h.getRequestMeta)(a,"postponed"),O=(0,h.getRequestMeta)(a,"minimalMode"),P=await L.prepare(a,b,{srcPage:H,multiZoneDraftMode:!1});if(!P)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Q,query:R,params:S,parsedUrl:T,pageIsDynamic:U,buildManifest:V,nextFontManifest:W,reactLoadableManifest:X,serverActionsManifest:Y,clientReferenceManifest:Z,subresourceIntegrityManifest:$,prerenderManifest:_,isDraftMode:aa,resolvedPathname:ab,revalidateOnlyGenerated:ac,routerServerContext:ad,nextConfig:ae,interceptionRoutePatterns:af}=P,ag=T.pathname||"/",ah=(0,s.normalizeAppPath)(H),{isOnDemandRevalidate:ai}=P,aj=L.match(ag,_),ak=!!_.routes[ab],al=!!(aj||ak||_.routes[ah]),am=a.headers["user-agent"]||"",an=(0,v.getBotType)(am),ao=(0,q.isHtmlBotRequest)(a),ap=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[u.NEXT_ROUTER_PREFETCH_HEADER],aq=(0,h.getRequestMeta)(a,"isRSCRequest")??(0,n.f)(a.headers[u.RSC_HEADER]),ar=(0,t.getIsPossibleServerAction)(a),as=(0,m.checkIsAppPPREnabled)(ae.experimental.ppr)&&(null==(D=_.routes[ah]??_.dynamicRoutes[ah])?void 0:D.renderingMode)==="PARTIALLY_STATIC",at=!1,au=!1,av=as?N:void 0,aw=as&&aq&&!ap,ax=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ay=!am||(0,q.shouldServeStreamingMetadata)(am,ae.htmlLimitedBots);ao&&as&&(al=!1,ay=!1);let az=!0===L.isDev||!al||"string"==typeof N||aw,aA=ao&&as,aB=null;aa||!al||az||ar||av||aw||(aB=ab);let aC=aB;!aC&&L.isDev&&(aC=ab),L.isDev||aa||!al||!aq||aw||(0,k.d)(a.headers);let aD={...F,tree:I,pages:J,GlobalError:E(),handler:M,routeModule:L,__next_app__:K};Y&&Z&&(0,p.setReferenceManifestsSingleton)({page:H,clientReferenceManifest:Z,serverActionsManifest:Y,serverModuleMap:(0,r.createServerModuleMap)({serverActionsManifest:Y})});let aE=a.method||"GET",aF=(0,g.getTracer)(),aG=aF.getActiveScopeSpan();try{let f=L.getVaryHeader(ab,af);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return L.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aF.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aE} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aE} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:R,params:S,page:ah,sharedContext:{buildId:Q},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aD,Component:(0,j.T)(aD),params:S,routeModule:L,page:H,postponed:f,shouldWaitOnAllReady:aA,serveStreamingMetadata:ay,supportsDynamicResponse:"string"==typeof f||az,buildManifest:V,nextFontManifest:W,reactLoadableManifest:X,subresourceIntegrityManifest:$,serverActionsManifest:Y,clientReferenceManifest:Z,setIsrStatus:null==ad?void 0:ad.setIsrStatus,dir:c(33873).join(process.cwd(),L.relativeProjectDir),isDraftMode:aa,isRevalidate:al&&!f&&!aw,botType:an,isOnDemandRevalidate:ai,isPossibleServerAction:ar,assetPrefix:ae.assetPrefix,nextConfigOutput:ae.output,crossOrigin:ae.crossOrigin,trailingSlash:ae.trailingSlash,previewProps:_.preview,deploymentId:ae.deploymentId,enableTainting:ae.experimental.taint,htmlLimitedBots:ae.htmlLimitedBots,devtoolSegmentExplorer:ae.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ae.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ae.experimental.cacheLife,basePath:ae.basePath,serverActions:ae.experimental.serverActions,...at?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:at}:{},experimental:{isRoutePPREnabled:as,expireTime:ae.expireTime,staleTimes:ae.experimental.staleTimes,cacheComponents:!!ae.experimental.cacheComponents,clientSegmentCache:!!ae.experimental.clientSegmentCache,clientParamParsing:!!ae.experimental.clientParamParsing,dynamicOnHover:!!ae.experimental.dynamicOnHover,inlineCss:!!ae.experimental.inlineCss,authInterrupts:!!ae.experimental.authInterrupts,clientTraceMetadata:ae.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>L.onRequestError(a,b,d,ad),err:(0,h.getRequestMeta)(a,"invokeError"),dev:L.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[z.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,al&&(null==n?void 0:n.revalidate)===0&&!L.isDev&&!as){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ab}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:w.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},n=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===L.isDev,l=c||b.writableEnded;if(ai&&ac&&!f&&!O)return(null==ad?void 0:ad.render404)?await ad.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(aj&&(j=(0,x.parseFallbackField)(aj.fallback)),j===x.FallbackMode.PRERENDER&&(0,v.isBot)(am)&&(!as||ao)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ai=!0),ai&&(j!==x.FallbackMode.NOT_FOUND||f)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),!O&&j!==x.FallbackMode.BLOCKING_STATIC_RENDER&&aC&&!l&&!aa&&U&&(k||!ak)){let b;if((k||aj)&&j===x.FallbackMode.NOT_FOUND)throw new C.NoFallbackError;if(as&&!aq){let c="string"==typeof(null==aj?void 0:aj.fallback)?aj.fallback:k?ah:null;if(b=await L.handleResponse({cacheKey:c,req:a,nextConfig:ae,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:_,isRoutePPREnabled:as,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||au?(0,o.u)(ah):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let n=ai||g||!av?void 0:av;if(at&&void 0!==n)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:w.CachedRouteKind.PAGES,html:y.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=U&&as&&((0,h.getRequestMeta)(a,"renderFallbackShell")||au)?(0,o.u)(ag):null;return m({span:i,postponed:n,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,o=await L.handleResponse({cacheKey:aB,responseGenerator:a=>n({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ai,isRoutePPREnabled:as,req:a,nextConfig:ae,prerenderManifest:_,waitUntil:d.waitUntil});if(aa&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!o){if(aB)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=o.value)?void 0:f.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=o.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof o.value.postponed;al&&!aw&&(!p||ap)&&(O||b.setHeader("x-nextjs-cache",ai?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),b.setHeader(u.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=o;if(av)l={revalidate:0,expire:void 0};else if(O&&aq&&!ap&&as)l={revalidate:0,expire:void 0};else if(!L.isDev)if(aa)l={revalidate:0,expire:void 0};else if(al){if(o.cacheControl)if("number"==typeof o.cacheControl.revalidate){if(o.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${o.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:o.cacheControl.revalidate,expire:(null==(j=o.cacheControl)?void 0:j.expire)??ae.expireTime}}else l={revalidate:z.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(o.cacheControl=l,"string"==typeof ax&&(null==q?void 0:q.kind)===w.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[z.NEXT_CACHE_TAGS_HEADER];O&&al&&c&&"string"==typeof c&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(ax);return void 0!==d?(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(d,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl}):(b.statusCode=204,(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.EMPTY,cacheControl:o.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...o,value:{...o.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&av)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(O&&al||delete a[z.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[z.NEXT_CACHE_TAGS_HEADER];if(O&&al&&s&&"string"==typeof s&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,s),!q.status||aq&&as||(b.statusCode=q.status),!O&&q.status&&G.RedirectStatusCode[q.status]&&aq&&(b.statusCode=200),p&&b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"1"),aq&&!aa){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:q.html,cacheControl:aw?{revalidate:0,expire:void 0}:o.cacheControl})}return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(q.rscData,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl})}let t=q.html;if(!p||O||aq)return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:o.cacheControl});if(at)return t.push(new ReadableStream({start(a){a.enqueue(A.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}});let v=new TransformStream;return t.push(v.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(v.writable)}).catch(a=>{v.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}})};if(!aG)return await aF.withPropagatedContext(a.headers,()=>aF.trace(i.BaseServerSpan.handleRequest,{spanName:`${aE} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aE,"http.target":a.url}},p));await p(aG)}catch(b){throw b instanceof C.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:al,isOnDemandRevalidate:ai})},ad),b}}},55591:a=>{"use strict";a.exports=require("https")},57075:a=>{"use strict";a.exports=require("node:stream")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63186:(a,b,c)=>{"use strict";c.d(b,{ResumePanel:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call ResumePanel() from the server but ResumePanel is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/mikekuehn/devProjects/agentgraphed/oss/src/components/ResumePanel.tsx","ResumePanel")},71277:(a,b,c)=>{"use strict";c.d(b,{M:()=>i,Q:()=>h});var d=c(19283),e=c(9244),f=c(10944),g=c(92568);function h(){let a=(0,f.PL)("llm_provider")||"anthropic",b="openai"===a?"openai_api_key":"anthropic_api_key",c=(0,f.PL)(b)||process.env["openai"===a?"OPENAI_API_KEY":"ANTHROPIC_API_KEY"]||"";if(!c)return null;let d=(0,f.PL)("classifier_model")||(0,g.$I)(a),e=(0,f.PL)("summarizer_model")||(0,g.$I)(a);return{provider:a,apiKey:c,classifierModel:d,summarizerModel:e}}async function i(a){let b=h();if(!b)throw Error("No LLM provider configured");let c=(0,g.P6)(a.model)??(0,g.P6)(b.classifierModel);if(!c)throw Error(`Unknown model: ${a.model}`);if("anthropic"===c.provider){let e=new d.Ay({apiKey:b.apiKey}),f=await e.messages.create({model:c.id,max_tokens:a.maxTokens??1024,system:a.systemPrompt,messages:[{role:"user",content:a.userPrompt}]});return{text:f.content.map(a=>"text"in a?a.text:"").join("").trim(),inputTokens:f.usage.input_tokens,outputTokens:f.usage.output_tokens}}{let d=new e.Ay({apiKey:b.apiKey}),f=/^gpt-5/i.test(c.id)||/^o\d/i.test(c.id),g=await d.chat.completions.create({model:c.id,messages:[...a.systemPrompt?[{role:"system",content:a.systemPrompt}]:[],{role:"user",content:a.userPrompt}],max_completion_tokens:a.maxTokens??1024,...f?{reasoning_effort:"minimal"}:{},..."json"===a.responseFormat?{response_format:{type:"json_object"}}:{}}),h=g.choices[0]?.message?.content?.trim()||"",i=g.usage?.completion_tokens_details?.reasoning_tokens??0,j=g.choices[0]?.finish_reason;if(!h)throw Error("length"===j&&i>0?`model used all ${i} output tokens on reasoning before producing any visible content; raise the token budget or use a non-reasoning model`:`model returned empty content (finish_reason=${j})`);return{text:h,inputTokens:g.usage?.prompt_tokens??0,outputTokens:g.usage?.completion_tokens??0}}}},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73566:a=>{"use strict";a.exports=require("worker_threads")},74075:a=>{"use strict";a.exports=require("zlib")},76760:a=>{"use strict";a.exports=require("node:path")},79551:a=>{"use strict";a.exports=require("url")},81630:a=>{"use strict";a.exports=require("http")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},90692:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"409df161bd853257579b553d81125acb8a9b5b40c8":()=>k});var d=c(91488);c(27806);var e=c(53223),f=c(94450),g=c(88009);let h=`You write context primers that let a fresh AI coding session pick up exactly where a previous one left off.
10
3
 
11
4
  You will receive a structured dump of a past session: the project, the original goal, and the user's messages in order.
12
5
 
@@ -40,4 +33,4 @@ Original goal:
40
33
  ${(a.firstPrompt||"(not captured)").slice(0,1500)}
41
34
 
42
35
  User messages from the session:
43
- ${b}`}({projectName:k.project_name,cwd:k.cwd,firstPrompt:k.first_prompt,messages:l}),n=(0,g.P6)(c.summarizerModel),{text:o,inputTokens:p,outputTokens:q}=await (0,f.M)({model:c.summarizerModel,systemPrompt:h,userPrompt:m,maxTokens:800}),r=(0,g.nG)(n,p,q);return d.prepare("INSERT OR REPLACE INTO session_contexts (session_id, context, generated_at, model) VALUES (?, ?, ?, ?)").run(a,o,Date.now(),n.id),{context:o,costUsd:r}}async function k(a){try{if(!(0,f.Q)())return{ok:!1,error:"No API key configured. Add one in Settings."};let b=await i(a);if(b)return{ok:!0,context:b.context,costUsd:0,cached:!0};let c=await j(a,!1);if(!c)return{ok:!1,error:"Could not generate context for this session."};return{ok:!0,context:c.context,costUsd:c.costUsd,cached:!1}}catch(a){return{ok:!1,error:a.message}}}(0,c(40410).D)([k]),(0,d.A)(k,"409df161bd853257579b553d81125acb8a9b5b40c8",null)},92437:(a,b,c)=>{"use strict";c.d(b,{SessionActions:()=>h});var d=c(21124),e=c(38301),f=c(85708);let g=(0,f.createServerReference)("409df161bd853257579b553d81125acb8a9b5b40c8",f.callServer,void 0,f.findSourceMapURL,"generateContextAction");function h({sessionId:a,provider:b,cwd:c,hasLlmKey:f,cachedContext:h}){let[i,j]=(0,e.useState)(!1),[k,l]=(0,e.useState)(h),[m,n]=(0,e.useState)(!1),[o,p]=(0,e.useState)(null),[q,r]=(0,e.useState)(null),[s,t]=(0,e.useTransition)(),u=function(a,b,c){let d=`cd "${b}"`;return"claude"===a?`${d} && claude --resume ${c}`:"codex"===a?`${d} && codex resume ${c}`:d}(b,c,a),v=async()=>{await navigator.clipboard.writeText(u),j(!0),setTimeout(()=>j(!1),1800)};return(0,d.jsxs)("div",{className:"flex flex-col items-end gap-1.5",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("button",{onClick:v,className:"btn",title:u,children:i?"✓ Copied":"⟲ Resume session"}),(0,d.jsx)("button",{onClick:()=>{p(null),t(async()=>{if(k){await navigator.clipboard.writeText(k),n(!0),setTimeout(()=>n(!1),1800);return}let b=await g(a);if(!b.ok)return void p(b.error);l(b.context),r(b.costUsd),await navigator.clipboard.writeText(b.context),n(!0),setTimeout(()=>n(!1),1800)})},disabled:!f||s,title:f?"Generate a short primer for a fresh chat":"Add an API key in Settings to enable",className:`btn ${f?"btn-primary":""} disabled:opacity-50 disabled:cursor-not-allowed`,children:s?"… generating":m?"✓ Copied":k?"Copy context":" Generate & copy context"})]}),o&&(0,d.jsx)("div",{className:"text-body-sm text-error",children:o}),null!==q&&q>0&&(0,d.jsxs)("div",{className:"text-[10px] font-mono text-ink-mute",children:["cost: $",q.toFixed(4)]}),!f&&(0,d.jsxs)("div",{className:"text-[11px] text-ink-mute",children:["“Copy context” needs an API key —"," ",(0,d.jsx)("a",{href:"/settings",className:"text-primary hover:underline",children:"add one in Settings"})]})]})}},92490:(a,b,c)=>{"use strict";c.d(b,{i:()=>f});var d=c(75338);let e={Planning:"bg-tertiary-soft text-ink-dim border-ink-mute/30",Debugging:"bg-error/15 text-error border-error/30",Refactor:"bg-primary/10 text-primary border-primary/30",Feature:"bg-secondary/10 text-secondary border-secondary/30",Styling:"bg-fuchsia-400/10 text-fuchsia-300 border-fuchsia-400/30","SEO/Content":"bg-amber-400/10 text-amber-300 border-amber-400/30",DevOps:"bg-orange-400/10 text-orange-300 border-orange-400/30",Data:"bg-sky-400/10 text-sky-300 border-sky-400/30",Payments:"bg-emerald-400/10 text-emerald-300 border-emerald-400/30",Docs:"bg-violet-400/10 text-violet-300 border-violet-400/30",Unknown:"bg-surface-3 text-ink-mute border-surface-4"};function f({category:a,size:b="sm"}){let c=e[a]||e.Unknown;return(0,d.jsx)("span",{className:`inline-block ${"xs"===b?"text-[9px] px-1 py-0":"text-[10px] px-1.5 py-0.5"} rounded font-mono uppercase tracking-wider border ${c} shrink-0`,children:a})}},93045:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{ReadonlyURLSearchParams:function(){return k},RedirectType:function(){return e.RedirectType},forbidden:function(){return g.forbidden},notFound:function(){return f.notFound},permanentRedirect:function(){return d.permanentRedirect},redirect:function(){return d.redirect},unauthorized:function(){return h.unauthorized},unstable_isUnrecognizedActionError:function(){return l},unstable_rethrow:function(){return i.unstable_rethrow}});let d=c(47614),e=c(92781),f=c(64404),g=c(67837),h=c(29088),i=c(64712);class j extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class k extends URLSearchParams{append(){throw new j}delete(){throw new j}set(){throw new j}sort(){throw new j}}function l(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[873,609,564,927,944,660,165],()=>b(b.s=51533));module.exports=c})();
36
+ ${b}`}({projectName:k.project_name,cwd:k.cwd,firstPrompt:k.first_prompt,messages:l}),n=(0,g.P6)(c.summarizerModel),{text:o,inputTokens:p,outputTokens:q}=await (0,f.M)({model:c.summarizerModel,systemPrompt:h,userPrompt:m,maxTokens:800}),r=(0,g.nG)(n,p,q);return d.prepare("INSERT OR REPLACE INTO session_contexts (session_id, context, generated_at, model) VALUES (?, ?, ?, ?)").run(a,o,Date.now(),n.id),{context:o,costUsd:r}}async function k(a){try{if(!(0,f.Q)())return{ok:!1,error:"No API key configured. Add one in Settings."};let b=await i(a);if(b)return{ok:!0,context:b.context,costUsd:0,cached:!0};let c=await j(a,!1);if(!c)return{ok:!1,error:"Could not generate context for this session."};return{ok:!0,context:c.context,costUsd:c.costUsd,cached:!1}}catch(a){return{ok:!1,error:a.message}}}(0,c(40410).D)([k]),(0,d.A)(k,"409df161bd853257579b553d81125acb8a9b5b40c8",null)},92437:(a,b,c)=>{"use strict";c.d(b,{SessionActions:()=>j});var d=c(21124),e=c(38301),f=c(3991),g=c.n(f),h=c(85708);let i=(0,h.createServerReference)("409df161bd853257579b553d81125acb8a9b5b40c8",h.callServer,void 0,h.findSourceMapURL,"generateContextAction");function j({sessionId:a,hasLlmKey:b,cachedContext:c}){let[f,h]=(0,e.useState)(c),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(null),[n,o]=(0,e.useState)(null),[p,q]=(0,e.useTransition)();return(0,d.jsxs)("div",{className:"flex items-center gap-2 relative",children:[(0,d.jsx)("button",{onClick:()=>{m(null),q(async()=>{if(f){await navigator.clipboard.writeText(f),k(!0),setTimeout(()=>k(!1),1800);return}let b=await i(a);if(!b.ok)return void m(b.error);h(b.context),o(b.costUsd),await navigator.clipboard.writeText(b.context),k(!0),setTimeout(()=>k(!1),1800)})},disabled:!b||p,title:b?"Summarize this session so you can paste it into a fresh chat":"Add an API key in Settings to enable",className:`btn ${b?"btn-primary":""} disabled:opacity-50 disabled:cursor-not-allowed`,children:p?"… summarizing":j?"✓ Copied":f?"Copy summary":"Summarize for new chat"}),(l||null!==n&&n>0||!b)&&(0,d.jsxs)("div",{className:"absolute top-full right-0 mt-2 text-[11px] text-ink-mute flex items-center gap-2 whitespace-nowrap",children:[l&&(0,d.jsx)("span",{className:"text-error",children:l}),null!==n&&n>0&&(0,d.jsxs)("span",{className:"font-mono",children:["cost $",n.toFixed(4)]}),!b&&(0,d.jsxs)("span",{children:["summary needs ",(0,d.jsx)(g(),{href:"/settings",className:"text-primary hover:underline",children:"an API key"})]})]})]})}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[873,609,564,970,927,944,660,165,191],()=>b(b.s=51533));module.exports=c})();
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../node_modules/better-sqlite3/package.json","../../../../../node_modules/bindings/bindings.js","../../../../../node_modules/bindings/package.json","../../../../../node_modules/file-uri-to-path/index.js","../../../../../node_modules/file-uri-to-path/package.json","../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../node_modules/next/dist/lib/constants.js","../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../node_modules/next/dist/lib/is-error.js","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../../src/lib/pricing-data/litellm.json","../../../../package.json","../../../chunks/165.js","../../../chunks/564.js","../../../chunks/609.js","../../../chunks/660.js","../../../chunks/873.js","../../../chunks/927.js","../../../chunks/929.js","../../../chunks/944.js","../../../webpack-runtime.js","page_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../node_modules/better-sqlite3/package.json","../../../../../node_modules/bindings/bindings.js","../../../../../node_modules/bindings/package.json","../../../../../node_modules/file-uri-to-path/index.js","../../../../../node_modules/file-uri-to-path/package.json","../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../node_modules/next/dist/lib/constants.js","../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../node_modules/next/dist/lib/is-error.js","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../../src/lib/pricing-data/litellm.json","../../../../package.json","../../../chunks/165.js","../../../chunks/191.js","../../../chunks/564.js","../../../chunks/609.js","../../../chunks/660.js","../../../chunks/693.js","../../../chunks/873.js","../../../chunks/927.js","../../../chunks/929.js","../../../chunks/944.js","../../../chunks/970.js","../../../webpack-runtime.js","page_client-reference-manifest.js"]}