pulls.review 0.2.1 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/dist/client/assets/ActionButton-V4dY2wPS.js +1 -0
- package/dist/client/assets/ActionIconButton-4b5xelMn.js +1 -0
- package/dist/client/assets/ChatMessage-Ccffh_8Z.js +80 -0
- package/dist/client/assets/ChatWidget-BFjNWi3R.js +1 -0
- package/dist/client/assets/DisplayFileIcon-DWj5Zxib.js +151 -0
- package/dist/client/assets/GithubAvatar-DGJrpCsX.js +1 -0
- package/dist/client/assets/LandingHero-DWdx6_8g.js +1 -0
- package/dist/client/assets/LocalAgentSettings-COjAszEL.js +1 -0
- package/dist/client/assets/ModelPicker-CDTiUMZ3.js +3 -0
- package/dist/client/assets/SelectViewport-DF4P4Akh.js +1 -0
- package/dist/client/assets/_repo_-D3lApLQL.js +22 -0
- package/dist/client/assets/analyze-BgWIIbl3.js +1 -0
- package/dist/client/assets/anthropic-messages-Btz8sjqp.js +41 -0
- package/dist/client/assets/browser-agent-rpc-BXhoSh1z-DrvKG05N.js +1 -0
- package/dist/client/assets/core-messages-ClW97ZVa.js +1 -0
- package/dist/client/assets/de-BoIOg_UW.js +1 -0
- package/dist/client/assets/diagnostics-wATZy2jc.js +1 -0
- package/dist/client/assets/diff-CNRGXNmw.js +1 -0
- package/dist/client/assets/{diff-BKQFn0my.js → diff-Cx43r-a6.js} +3 -3
- package/dist/client/assets/diffs-store-D3BzIMVi.js +1431 -0
- package/dist/client/assets/en-CbWYrCM5.js +1 -0
- package/dist/client/assets/es-CqEudTln.js +1 -0
- package/dist/client/assets/floating-ui.dom-CfpSQvPs.js +1 -0
- package/dist/client/assets/fr-qiQQ-4AO.js +1 -0
- package/dist/client/assets/i18n-Cx8anq4V.js +2 -0
- package/dist/client/assets/{id-NIGs9Xhn.js → id-BkDzu8gq.js} +1 -1
- package/dist/client/assets/index-De-UtOit.css +1 -0
- package/dist/client/assets/index-KDAJXf4E.js +2 -0
- package/dist/client/assets/install-D-S32JY7.js +4 -0
- package/dist/client/assets/it-tZZZbUKN.js +1 -0
- package/dist/client/assets/{ja-BAKkDsQ5.js → ja-kGPK4Fmt.js} +1 -1
- package/dist/client/assets/ko-CULiae40.js +1 -0
- package/dist/client/assets/llm-Le5CPsNn.js +88 -0
- package/dist/client/assets/llm-store-CzMnTJNa.js +1 -0
- package/dist/client/assets/local-agents-BQLn-Ppw.js +1 -0
- package/dist/client/assets/models-D651LTTp.js +8 -0
- package/dist/client/assets/nanoid-Cya-tyvy.js +1 -0
- package/dist/client/assets/node.browser-C0q8i5sA.js +1 -0
- package/dist/client/assets/{openai-completions-CSvY9IVo.js → openai-completions-DvmbMyzl.js} +5 -5
- package/dist/client/assets/pages-ByEfDjFa.js +1 -0
- package/dist/client/assets/pages-local-CVPpEWZ_.js +1 -0
- package/dist/client/assets/pages-web-BLxMupU5.js +21 -0
- package/dist/client/assets/portalTarget-DQg8GgWm.js +1 -0
- package/dist/client/assets/pt-BR-BcwoZLSs.js +1 -0
- package/dist/client/assets/rpc-backends-DYtuJyeF.js +1 -0
- package/dist/client/assets/ru-DOordgLF.js +1 -0
- package/dist/client/assets/runtime-dom.esm-bundler-Du_ZCcVN.js +2 -0
- package/dist/client/assets/{source-hSji-yvG.js → source-CvnvCX42.js} +1 -1
- package/dist/client/assets/sync-interval-oKvsW-lT.js +1 -0
- package/dist/client/assets/{transform-messages-C8U1xonk.js → transform-messages-Cg_2u7I2.js} +1 -1
- package/dist/client/assets/upload-DRO7bkBV.js +1 -0
- package/dist/client/assets/useDocumentTitle-BQJCa6Lm.js +92 -0
- package/dist/client/assets/useNonce-CwUrgryd.js +1 -0
- package/dist/client/assets/{vue-i18n-DVI_S4Q5.js → vue-i18n-CGHHpbTP.js} +3 -3
- package/dist/client/assets/zh-CN-CmTqGY9s.js +1 -0
- package/dist/client/assets/zh-TW-DKGtbJQy.js +1 -0
- package/dist/client/index.html +9 -8
- package/dist/devframe-DH2vpasJ.mjs +1124 -0
- package/dist/devframe.mjs +1 -1
- package/dist/index.mjs +28 -8
- package/package.json +7 -3
- package/dist/client/assets/ChatWidget-BsnoQ6oS.js +0 -1
- package/dist/client/assets/DisplayFileIcon-DzBo3Ez5.js +0 -151
- package/dist/client/assets/GithubAvatar-CSsUV5vf.js +0 -1
- package/dist/client/assets/LandingHero-BkTBSu71.js +0 -1
- package/dist/client/assets/_repo_-Dcgj3PGg.js +0 -22
- package/dist/client/assets/analyze-509KQQBC.js +0 -1
- package/dist/client/assets/anthropic-messages-Cd2DkgOC.js +0 -41
- package/dist/client/assets/browser-agent-rpc-BXhoSh1z-DrxWeI3_.js +0 -1
- package/dist/client/assets/de-Bq9RfdAn.js +0 -1
- package/dist/client/assets/diff-Bx6SazPw.js +0 -1
- package/dist/client/assets/diffs-store-ncE62OUU.js +0 -1510
- package/dist/client/assets/dist-Dh0a8u-Y.js +0 -1
- package/dist/client/assets/en-8hQdak1X.js +0 -1
- package/dist/client/assets/es-QcvEBShr.js +0 -1
- package/dist/client/assets/fr-DAWKVvDP.js +0 -1
- package/dist/client/assets/i18n-CGV_MDS8.js +0 -2
- package/dist/client/assets/index-BCCy9wJJ.js +0 -2
- package/dist/client/assets/index-BDPZiDIt.css +0 -1
- package/dist/client/assets/install-B-q5w2uE.js +0 -4
- package/dist/client/assets/it-DjRuurmk.js +0 -1
- package/dist/client/assets/ko-DHculY2W.js +0 -1
- package/dist/client/assets/llm-DYDmh8Ki.js +0 -2
- package/dist/client/assets/llm-store-CVM33nlB.js +0 -2
- package/dist/client/assets/node.browser-BX-QLlU2.js +0 -1
- package/dist/client/assets/pages-B5mEqsbn.js +0 -1
- package/dist/client/assets/pages-local-x_ACBinc.js +0 -1
- package/dist/client/assets/pages-web-DitAPN6U.js +0 -21
- package/dist/client/assets/portalTarget-C60SzJiK.js +0 -1
- package/dist/client/assets/pt-BR-LLtJ99P6.js +0 -1
- package/dist/client/assets/ru-DvkrOLxc.js +0 -1
- package/dist/client/assets/runtime-dom.esm-bundler-CqL7__VR.js +0 -2
- package/dist/client/assets/upload-GnI9kmJu.js +0 -1
- package/dist/client/assets/useDocumentTitle-nuqxXiNo.js +0 -185
- package/dist/client/assets/zh-CN-BIibd6kG.js +0 -1
- package/dist/client/assets/zh-TW-3FtUHjoZ.js +0 -1
- package/dist/devframe-CX5butdC.mjs +0 -493
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{H as e,Hn as t,Wn as n,Yn as r,jn as i,qn as a,zn as o}from"./vue-i18n-CGHHpbTP.js";import{n as s}from"./i18n-Cx8anq4V.js";import{n as c,t as l}from"./core-messages-ClW97ZVa.js";function u(e){return e?.role===`assistant`&&e.stopReason===`error`}function d({runner:t,diff:l,session:d,onSessionChange:f,onGroupingUpdate:p}){let m=n(!1),h=n(),g=a(),_,v=e(()=>d.value!==void 0),y=e(()=>((g.value?.session===d.value?g.value?.messages:void 0)??d.value?.messages??[]).slice(d.value?.chatStartIndex??0));async function b(e,n){let i=r(l.value),a=d.value;if(!i||!a||m.value)return;let o=()=>d.value!==a||r(l.value)!==i;h.value=void 0,m.value=!0;let v=new AbortController;_=v;try{let r=await t.chat({diff:i,session:{...a,messages:n},text:e,signal:v.signal,onMessages:e=>g.value={session:a,messages:e},onGroupingUpdate:e=>o()?void 0:p(e)});if(o()||v.signal.aborted)return;await f({...a,messages:r});let c=r.at(-1);u(c)&&(h.value=Error(c.errorMessage??s(`analyze.chatFailed`)))}catch(e){!o()&&!v.signal.aborted&&(h.value=c(e))}finally{_===v&&(_=void 0),g.value=void 0,m.value=!1}}async function x(e){e.trim()&&d.value&&await b(e,r(d.value.messages))}async function S(){let e=r(d.value?.messages);e&&u(e.at(-1))&&await b(void 0,e.slice(0,-1))}function C(){_?.abort()}i()&&o(C);async function w(){let e=d.value;e&&(C(),h.value=void 0,await f({...e,messages:r(e.messages).slice(0,e.chatStartIndex)}))}return{available:v,messages:y,isStreaming:m,error:h,send:x,retry:S,stop:C,clear:w}}function f(r){let i=n(!1),o=n(),s=a([]),u=n(),f=e(()=>r.runner.isSetup()),p;async function m(e){r.session.value=e;let t=r.getCacheKey();t&&await r.cache.diffs.setLlmSession(t,e)}async function h(e){r.setResult(e);let t=r.getCacheKey();t&&await r.cache.diffs.setAnalyzedResult(t,`llm`,e)}let g=d({runner:r.runner,diff:r.diff,session:r.session,onSessionChange:m,onGroupingUpdate:h});async function _(){let e=r.diff.value;if(!e)return;g.stop(),u.value=void 0,s.value=[],i.value=!0;let t=new AbortController;p=t;try{let{result:n,transcript:i,agent:a}=await r.runner.analyze(e,{onProgress:e=>o.value={step:e.step,message:l(e)},onTranscript:e=>s.value=e,signal:t.signal});if(t.signal.aborted)return;await h(n),await m({messages:i,chatStartIndex:i.length,agent:a})}catch(e){t.signal.aborted||(u.value=c(e))}finally{p===t&&(p=void 0),o.value=void 0,i.value=!1}await r.showLlmResult()}function v(){g.stop(),p?.abort()}return t({isSetup:f,isAnalyzing:i,progress:o,transcript:s,error:u,reanalyze:_,chat:t(g),abort:v})}export{f as createLlmStore};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{bt as e}from"./vue-i18n-CGHHpbTP.js";var t=Symbol(`local-agents`);function n(){return e(t,void 0)}export{n,t};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{t as e}from"./preload-helper-BaNbYf_w.js";var t=class{incoming=[];outgoing=[];get length(){return this.incoming.length+this.outgoing.length}enqueue(e){this.incoming.push(e)}dequeue(){if(this.outgoing.length===0)for(;this.incoming.length>0;)this.outgoing.push(this.incoming.pop());return this.outgoing.pop()}},n=class{queue=new t;waiting=new t;done=!1;finalResultPromise;resolveFinalResult;isComplete;extractResult;constructor(e,t){this.isComplete=e,this.extractResult=t,this.finalResultPromise=new Promise(e=>{this.resolveFinalResult=e})}push(e){if(this.done)return;this.isComplete(e)&&(this.done=!0,this.resolveFinalResult(this.extractResult(e)));let t=this.waiting.dequeue();t?t({value:e,done:!1}):this.queue.enqueue(e)}end(e){for(this.done=!0,e!==void 0&&this.resolveFinalResult(e);this.waiting.length>0;)this.waiting.dequeue()({value:void 0,done:!0})}async*[Symbol.asyncIterator](){for(;;)if(this.queue.length>0)yield this.queue.dequeue();else if(this.done)return;else{let e=await new Promise(e=>this.waiting.enqueue(e));if(e.done)return;yield e.value}}result(){return this.finalResultPromise}},r=class extends n{constructor(){super(e=>e.type===`done`||e.type===`error`,e=>{if(e.type===`done`)return e.message;if(e.type===`error`)return e.error;throw Error(`Unexpected event type for final result`)})}};function i(e,t){return{role:`assistant`,content:[],api:e.api,provider:e.provider,model:e.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`error`,errorMessage:t instanceof Error?t.message:String(t),timestamp:Date.now()}}function a(e){return typeof e.result==`function`}async function o(e,t){for await(let n of t)e.push(n);e.end(a(t)?await t.result():void 0)}function s(e,t){let n=new r;return t().then(e=>o(n,e)).catch(t=>{let r=i(e,t);n.push({type:`error`,reason:`error`,error:r}),n.end(r)}),n}function c(e,t){let n={stream:(t,n,r)=>s(t,async()=>(await e()).stream(t,n,r)),streamSimple:(t,n,r)=>s(t,async()=>(await e()).streamSimple(t,n,r))};return t?.fetchDeferred&&(n.fetchDeferred=(t,n,r)=>s(t,async()=>{let i=await e();if(!i.fetchDeferred)throw Error(`API does not support deferred responses`);return i.fetchDeferred(t,n,r)})),t?.cancelDeferred&&(n.cancelDeferred=async(t,n,r)=>{let i=await e();if(!i.cancelDeferred)throw Error(`API cannot cancel deferred responses`);await i.cancelDeferred(t,n,r)}),n}var l=function(e,t){return typeof e==`string`&&/^\.\.?\//.test(e)?e.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(e,n,r,i,a){return n?t?`.jsx`:`.js`:r&&(!i||!a)?e:r+i+`.`+a.toLowerCase()+`js`}):e},u=t=>e(()=>import(l(t)),[],import.meta.url);function d(){return globalThis.process?.env}function f(){return{async env(e){let t=d()?.[e];return typeof t==`string`&&t.trim().length>0?t:void 0},async fileExists(e){try{let t=await u(`node:fs/promises`),n=e;return n.startsWith(`~`)&&(n=(await u(`node:os`)).homedir()+n.slice(1)),await t.access(n),!0}catch{return!1}}}}function p(e){if(e.reason!==void 0)return e.reason;let t=Error(`The operation was aborted`);return t.name=`AbortError`,t}function m(e){return e??new AbortController().signal}function h(e,t){return t.aborted?(e.catch(()=>{}),Promise.reject(p(t))):new Promise((n,r)=>{let i=!1,a=()=>t.removeEventListener(`abort`,o),o=()=>{i||(i=!0,a(),r(p(t)))};t.addEventListener(`abort`,o,{once:!0}),e.then(e=>{i||(i=!0,a(),n(e))},e=>{i||(i=!0,a(),r(e))}),t.aborted&&o()})}var g=class{credentials=new Map;chains=new Map;enqueue(e,t,n){let r=m(n?.signal),i=this.chains.get(e)??Promise.resolve(),a=(async()=>(await i.catch(()=>{}),r.throwIfAborted(),t()))(),o=a.catch(()=>{});return this.chains.set(e,o),o.then(()=>{this.chains.get(e)===o&&this.chains.delete(e)}),h(a,r)}async read(e,t){return t?.signal?.throwIfAborted(),this.credentials.get(e)}async list(e){return e?.signal?.throwIfAborted(),[...this.credentials].map(([e,t])=>({providerId:e,type:t.type}))}modify(e,t,n){return this.enqueue(e,async()=>{let r=this.credentials.get(e),i=await t(r);return n?.signal?.throwIfAborted(),i!==void 0&&this.credentials.set(e,i),i??r},n)}delete(e,t){return this.enqueue(e,async()=>{this.credentials.delete(e)},t)}};function _(e){return e instanceof Error?e.message||e.name:typeof e==`string`?e:String(e)}function v(e,t){e.diagnostics=[...e.diagnostics??[],t]}var y=class extends Error{code;constructor(e,t,n){super(b(t,n?.cause),n),this.name=`ModelsError`,this.code=e}};function b(e,t){if(t==null)return e;let n=_(t).trim();return!n||e.includes(n)?e:`${e}: ${n}`}function x(e,t,n,r){let i=m(r?.signal);return h(S(e,t,n,r,i),i)}async function S(e,t,n,r,i){i.throwIfAborted();let a=r?.env?C(n,r.env):n;if(r?.apiKey!==void 0&&e.auth.apiKey)return E(a,e.auth.apiKey,e.id,{type:`api_key`,key:r.apiKey,env:r.env},i);let o=await D(t,e.id,i);if(o){if(o.type===`oauth`&&e.auth.oauth)return T(t,e.id,e.auth.oauth,o,i,r?.minOAuthValidityMs);if(o.type===`api_key`&&e.auth.apiKey){let t=r?.env?{...o,env:{...o.env,...r.env}}:o;return E(a,e.auth.apiKey,e.id,t,i)}return}return e.auth.apiKey?E(a,e.auth.apiKey,e.id,void 0,i):void 0}function C(e,t){return{env:async n=>t[n]||await e.env(n),fileExists:t=>e.fileExists(t)}}var ee=3e5,w=15e3;async function T(e,t,n,r,i,a){let o=Math.max(ee,a??0),s=e=>Date.now()+o>=e.expires,c=r;if(s(c)){let r;try{r=await e.modify(t,async e=>{if(e?.type===`oauth`&&s(e))try{let t=AbortSignal.any([i,AbortSignal.timeout(w)]);return await n.refresh(e,t)}catch(e){throw new y(`oauth`,`OAuth refresh failed for ${t}`,{cause:e})}},{signal:i})}catch(e){throw e instanceof y?e:new y(`auth`,`Credential store modify failed for ${t}`,{cause:e})}if(r?.type!==`oauth`)return;if(c=r,a!==void 0&&s(c))throw new y(`oauth`,`OAuth refresh returned a token that expires too soon for ${t}`)}try{return{auth:await n.toAuth(c),source:`OAuth`}}catch(e){throw new y(`oauth`,`OAuth auth derivation failed for ${t}`,{cause:e})}}async function E(e,t,n,r,i){try{return await t.resolve({ctx:e,credential:r,signal:i})}catch(e){throw new y(`auth`,`API key auth failed for provider ${n}`,{cause:e})}}async function D(e,t,n){try{return await e.read(t,{signal:n})}catch(e){throw new y(`auth`,`Credential store read failed for ${t}`,{cause:e})}}var O=class{entries=new Map;async read(e,t){t?.signal?.throwIfAborted();let n=this.entries.get(e);return n?structuredClone(n):void 0}async write(e,t,n){n?.signal?.throwIfAborted(),this.entries.set(e,structuredClone(t))}async delete(e,t){t?.signal?.throwIfAborted(),this.entries.delete(e)}};function k(e,t=`
|
|
2
|
+
`){return typeof e==`string`?e:e.filter(e=>e.type===`text`).map(e=>e.text).join(t)}function A(e){let t=[k(e.content)];for(let n of Object.values(e.sections??{}))n!==null&&t.push(n);return t.filter(e=>e.length>0).join(`
|
|
3
|
+
|
|
4
|
+
`)}function j(e){let t=[],n=k(e.content);n.length>0&&t.push(n);for(let[n,r]of Object.entries(e.sections??{}))t.push(r===null?`Removed system prompt section "${n}".`:`Updated system prompt section "${n}":\n\n${r}`);return t.join(`
|
|
5
|
+
|
|
6
|
+
`)}function M(e,t){let n=e!==void 0&&e.length>0,r=t!==void 0&&t.length>0;if(n||r)return{role:`system`,content:e??``,...r?{toolsAdded:t}:{},timestamp:0}}function N(e){let t=M(e.systemPrompt,e.tools);return{messages:t?[t,...e.messages]:e.messages}}function P(e){return e.role===`system`}function F(e){let t=e[0];return t&&P(t)?t:void 0}function I(e){let t=new Map;for(let n of e)if(P(n)){for(let e of n.toolsRemoved??[])t.delete(e.name);for(let e of n.toolsAdded??[])t.set(e.name,e)}return[...t.values()]}function L(e){let t=[],n=new Map,r;for(let i of e){if(!P(i))continue;r??=i.timestamp;let e=k(i.content);e.length>0&&t.push(e);for(let[e,t]of Object.entries(i.sections??{}))t===null?n.delete(e):n.set(e,t)}let i=I(e);if(r!==void 0||i.length!==0)return{role:`system`,content:t.join(`
|
|
7
|
+
|
|
8
|
+
`),...n.size>0?{sections:Object.fromEntries(n)}:{},...i.length>0?{toolsAdded:i}:{},timestamp:r??0}}function R(e){let t=L(e);return t?A(t):``}function z(e){let t=L(e.messages),n=e.messages.filter(e=>e.role!==`system`);return{messages:t?[t,...n]:n}}function B(e,t){return t?e:z(e)}function V(e){return{name:e.name,description:e.description,parameters:JSON.parse(JSON.stringify(e.parameters)),...e.constrainedSampling===void 0?{}:{constrainedSampling:e.constrainedSampling}}}function H(e,t){return JSON.stringify(V(e))===JSON.stringify(V(t))}function U(e,t){let n=new Map(e.map(e=>[e.name,e])),r=new Map(t.map(e=>[e.name,e]));return{toolsAdded:t.filter(e=>{let t=n.get(e.name);return t===void 0||!H(t,e)}).map(V),toolsRemoved:e.filter(e=>{let t=r.get(e.name);return t===void 0||!H(e,t)}).map(e=>({name:e.name}))}}function W(e){let t=new Map;for(let n of e)if(P(n))for(let e of n.toolsAdded??[])t.set(e.name,e);return[...t.values()]}function G(e){let t=new Map;for(let n of e)if(P(n))for(let e of n.toolsAdded??[]){let n=t.get(e.name);if(n!==void 0&&!H(n,e))return!0;t.set(e.name,e)}return!1}function K(e){let t=new Set;for(let n of e)if(P(n)){if((n.toolsRemoved?.length??0)>0)return!0;for(let e of n.toolsAdded??[]){if(t.has(e.name))return!0;t.add(e.name)}}return!1}function q(e,t){let n=t&&!K(e);return{requestTools:n?F(e)?.toolsAdded??[]:I(e),anchorsAdditions:n}}function J(e,t){if(!e&&!t)return;let n={...e};for(let[e,r]of Object.entries(t??{})){let t=e.toLowerCase();for(let e of Object.keys(n))e.toLowerCase()===t&&delete n[e];n[e]=r}return n}var Y=class{providers=new Map;credentials;modelsStore;authContext;refreshGenerations=new Map;refreshControllers=new Map;publicationChains=new Map;constructor(e){this.credentials=e?.credentials??new g,this.modelsStore=e?.modelsStore??new O,this.authContext=e?.authContext??f()}setProvider(e){this.supersedeProviderRefresh(e.id),this.providers.set(e.id,e)}deleteProvider(e){this.supersedeProviderRefresh(e),this.providers.delete(e)}clearProviders(){for(let e of new Set([...this.providers.keys(),...this.refreshControllers.keys()]))this.supersedeProviderRefresh(e);this.providers.clear()}getProviders(){return Array.from(this.providers.values())}getProvider(e){return this.providers.get(e)}getModels(e){if(e!==void 0){let t=this.providers.get(e);if(!t)return[];try{return t.getModels()}catch{return[]}}let t=[];for(let e of this.providers.values())try{t.push(...e.getModels())}catch{}return t}getModel(e,t){return this.getModels(e).find(e=>e.id===t)}supersedeProviderRefresh(e){let t=(this.refreshGenerations.get(e)??0)+1;this.refreshGenerations.set(e,t);let n=this.refreshControllers.get(e);return n&&(this.refreshControllers.delete(e),n.abort()),t}beginProviderRefresh(e){let t=this.supersedeProviderRefresh(e),n=new AbortController;return this.refreshControllers.set(e,n),{generation:t,controller:n}}publishProviderModels(e,t,n,r){let i=this.publicationChains.get(e)??Promise.resolve(),a=(async()=>(await i.catch(()=>{}),n.aborted||this.refreshGenerations.get(e)!==t||(r.persist===null?await this.modelsStore.delete(e,{signal:n}):r.persist!==void 0&&await this.modelsStore.write(e,structuredClone(r.persist),{signal:n}),n.aborted||this.refreshGenerations.get(e)!==t)?!1:(r.update?.(),!0)))(),o=a.catch(()=>{});return this.publicationChains.set(e,o),o.then(()=>{this.publicationChains.get(e)===o&&this.publicationChains.delete(e)}),h(a,n)}async runProviderRefreshPhase(e,t,n,r,i,a){let o=await this.modelsStore.read(e.id,{signal:a});await e.refreshModels({credential:t,stored:o?structuredClone(o):void 0,publish:t=>this.publishProviderModels(e.id,i,a,t),allowNetwork:n,force:n?r:void 0,signal:a})}async refresh(e={}){let t=e.allowNetwork??!0,n=m(e.signal),r=new Map;if(n.aborted)return{aborted:!0,errors:r};let i=e.providers?new Set(e.providers):void 0,a=Array.from(this.providers.values()).filter(e=>e.refreshModels!==void 0&&(!i||i.has(e.id))),o=Promise.all(a.map(async i=>{let{generation:a,controller:o}=this.beginProviderRefresh(i.id),s=AbortSignal.any([n,o.signal]),c=(async()=>{let n,r;try{n=await this.readCredential(i.id,s)}catch(e){r=e}if(await this.runProviderRefreshPhase(i,n,!1,void 0,a,s),r!==void 0)throw r;if(!t||s.aborted)return;let o=await this.resolveRefreshCredential(i,n,s);o&&await this.runProviderRefreshPhase(i,o,!0,e.force,a,s)})();try{await h(c,s)}catch(e){s.aborted||r.set(i.id,e instanceof Error?e:new y(`model_source`,`Model refresh failed for ${i.id}`,{cause:e}))}finally{this.refreshControllers.get(i.id)===o&&this.refreshControllers.delete(i.id)}}));try{await h(o,n)}catch(e){if(!n.aborted)throw e}return{aborted:n.aborted,errors:new Map(r)}}async resolveRefreshCredential(e,t,n){if(t?.type===`oauth`){let r=e.auth.oauth;if(!r)return;if(Date.now()<t.expires)return t;if(n.aborted)return;let i=await this.credentials.modify(e.id,async e=>{if(!(e?.type!==`oauth`||Date.now()<e.expires))return r.refresh(e,n)},{signal:n});return i?.type===`oauth`?i:void 0}let r=e.auth.apiKey;if(!r)return;let i=t?.type===`api_key`?t:void 0,a=await r.resolve({ctx:this.authContext,credential:i,signal:n});if(a)return{type:`api_key`,key:a.auth.apiKey,env:a.env}}async readCredential(e,t){try{return await this.credentials.read(e,{signal:t})}catch(t){throw new y(`auth`,`Credential store read failed for ${e}`,{cause:t})}}async checkProviderAuth(e,t,n){if(t?.type===`oauth`)return e.auth.oauth?{source:`OAuth`,type:`oauth`}:void 0;let r=e.auth.apiKey;if(!r)return;if(r.check)try{return await r.check({ctx:this.authContext,credential:t?.type===`api_key`?t:void 0,signal:n})}catch(t){throw new y(`auth`,`API key auth check failed for provider ${e.id}`,{cause:t})}let i=await x(e,this.credentials,this.authContext,{signal:n});return i?{source:i.source,type:`api_key`}:void 0}checkAuth(e,t){let n=m(t?.signal);return h((async()=>{n.throwIfAborted();let t=this.providers.get(e);if(t)return this.checkProviderAuth(t,await this.readCredential(e,n),n)})(),n)}getAvailable(e,t){let n=m(t?.signal);return h((async()=>{n.throwIfAborted();let t=e?[this.providers.get(e)].filter(e=>e!==void 0):this.getProviders();return(await Promise.all(t.map(async e=>{let t=await this.readCredential(e.id,n);return{provider:e,credential:t,auth:await this.checkProviderAuth(e,t,n)}}))).flatMap(({provider:e,credential:t,auth:n})=>{if(!n)return[];let r=e.getModels();return e.filterModels?.(r,t)??r})})(),n)}async getAuth(e,t){let n=m(t?.signal),r=typeof e==`string`?e:e.provider,i=this.providers.get(r);if(!i)return;let a=await x(i,this.credentials,this.authContext,{...t,signal:n});return!a||typeof e==`string`||!e.headers?a:{...a,auth:{...a.auth,headers:J(a.auth.headers,e.headers)}}}async login(e,t,n){let r=m(n.signal);r.throwIfAborted();let i=this.providers.get(e);if(!i)throw new y(`provider`,`Unknown provider: ${e}`);let a=t===`oauth`?i.auth.oauth:i.auth.apiKey;if(!a?.login)throw new y(`auth`,`${i.name} does not support ${t} login`);let o=await h(a.login({...n,signal:r}),r),s=!1,c,l=new Promise(e=>{c=e}),u=this.credentials.modify(e,async()=>(s=!0,c?.(),o),{signal:r});u.catch(()=>{});try{await new Promise((e,t)=>{let n=()=>{s||t(r.reason)};r.addEventListener(`abort`,n,{once:!0}),Promise.race([l,u]).then(()=>{r.removeEventListener(`abort`,n),e()},e=>{r.removeEventListener(`abort`,n),t(e)}),r.aborted&&n()}),await u}catch(t){throw r.throwIfAborted(),new y(`auth`,`Credential store modify failed for ${e}`,{cause:t})}return o}async logout(e,t){let n=m(t?.signal);n.throwIfAborted();try{await this.credentials.delete(e,{signal:n})}catch(t){throw n.throwIfAborted(),new y(`auth`,`Credential store delete failed for ${e}`,{cause:t})}}requireProvider(e){let t=this.providers.get(e.provider);if(!t)throw new y(`provider`,`Unknown provider: ${e.provider}`);return t}async applyAuth(e,t){this.requireProvider(e);let n=await this.getAuth(e,{apiKey:t?.apiKey,env:t?.env,signal:t?.signal});if(!n)throw new y(`auth`,`Provider is not configured: ${e.provider}`);let r=n.auth,i=t?.apiKey??r.apiKey,a=J(r.headers,t?.headers);t?.transformHeaders&&(a=await t.transformHeaders(a??{}));let o=n.env||t?.env?{...n.env??{},...t?.env??{}}:void 0,s=r.baseUrl?{...e,baseUrl:r.baseUrl}:e,{transformHeaders:c,...l}=t??{};return{requestModel:s,requestOptions:{...l,apiKey:i,headers:a,env:o}}}stream(e,t,n){let r=N(t);return s(e,async()=>{let t=this.requireProvider(e),{requestModel:i,requestOptions:a}=await this.applyAuth(e,n);return t.stream(i,r,a)})}async complete(e,t,n){return this.stream(e,t,n).result()}streamSimple(e,t,n){let r=N(t);return s(e,async()=>{let t=this.requireProvider(e),{requestModel:i,requestOptions:a}=await this.applyAuth(e,n);return t.streamSimple(i,r,a)})}async completeSimple(e,t,n){return this.streamSimple(e,t,n).result()}streamDeferred(e,t,n){return s(e,async()=>{let r=this.requireProvider(e);if(!r.fetchDeferred)throw new y(`provider`,`Provider ${e.provider} does not support deferred responses`);let{requestModel:i,requestOptions:a}=await this.applyAuth(e,n);return r.fetchDeferred(i,t,a)})}async fetchDeferred(e,t,n){return this.streamDeferred(e,t,n).result()}async cancelDeferred(e,t,n){let r=this.requireProvider(e);if(!r.cancelDeferred)throw new y(`provider`,`Provider ${e.provider} does not support deferred responses`);let{requestModel:i,requestOptions:a}=await this.applyAuth(e,n);await r.cancelDeferred(i,t,a)}};function X(e){return new Y(e)}function Z(e){let t=e.models,n=[],r=e.fetchModels,i=()=>{let e=[...t];for(let t of n){let n=e.findIndex(e=>e.id===t.id);n>=0?e[n]=t:e.push(t)}return e},a=typeof e.api.stream==`function`?e.api:void 0,o=a?void 0:e.api,c=e=>a??o?.[e.api],l=(t,n)=>{let r=c(t);return r?n(r):s(t,async()=>{throw new y(`stream`,`Provider ${e.id} has no API implementation for "${t.api}"`)})},u={id:e.id,name:e.name??e.id,baseUrl:e.baseUrl,headers:e.headers,auth:e.auth,getModels:i,refreshModels:r?async t=>{if(t.stored){let r=t.stored.models.filter(t=>t.provider===e.id).map(e=>e);if(!await t.publish({update:()=>{n=r}}))return}if(!t.allowNetwork||t.signal.aborted)return;let i=await r(t);t.signal.aborted||await t.publish({persist:{models:i,checkedAt:Date.now()},update:()=>{n=i}})}:void 0,filterModels:e.filterModels,stream:(e,t,n)=>l(e,r=>r.stream(e,t,n)),streamSimple:(e,t,n)=>l(e,r=>r.streamSimple(e,t,n))},d=a?[a]:Object.values(o??{}).filter(e=>e!==void 0);return d.some(e=>e.fetchDeferred!==void 0)&&(u.fetchDeferred=(t,n,r)=>s(t,async()=>{let i=c(t);if(!i?.fetchDeferred)throw new y(`provider`,`Provider ${e.id} does not support deferred responses for "${t.api}"`);return i.fetchDeferred(t,n,r)})),d.some(e=>e.cancelDeferred!==void 0)&&(u.cancelDeferred=async(t,n,r)=>{let i=c(t);if(!i?.cancelDeferred)throw new y(`provider`,`Provider ${e.id} cannot cancel deferred responses for "${t.api}"`);await i.cancelDeferred(t,n,r)}),u}function Q(e,t){let n=t.input+t.cacheRead+t.cacheWrite,r=e.cost,i=-1;for(let t of e.cost.tiers??[])n>t.inputTokensAbove&&t.inputTokensAbove>i&&(r=t,i=t.inputTokensAbove);let a=t.cacheWrite1h??0,o=t.cacheWrite-a;return t.cost.input=r.input/1e6*t.input,t.cost.output=r.output/1e6*t.output,t.cost.cacheRead=r.cacheRead/1e6*t.cacheRead,t.cost.cacheWrite=(r.cacheWrite*o+r.input*2*a)/1e6,t.cost.total=t.cost.input+t.cost.output+t.cost.cacheRead+t.cost.cacheWrite,t.cost}var $=[`off`,`minimal`,`low`,`medium`,`high`,`xhigh`,`max`];function te(e){return e.reasoning?$.filter(t=>{let n=e.thinkingLevelMap?.[t];return n===null?!1:t===`xhigh`||t===`max`?n!==void 0:!0}):[`off`]}function ne(e,t){let n=te(e);if(n.includes(t))return t;let r=$.indexOf(t);if(r===-1)return n[0]??`off`;for(let e=r;e<$.length;e++){let t=$[e];if(n.includes(t))return t}for(let e=r-1;e>=0;e--){let t=$[e];if(n.includes(t))return t}return n[0]??`off`}export{A as _,M as a,c as b,I as c,U as d,G as f,V as g,q as h,Z as i,W as l,B as m,ne as n,L as o,N as p,X as r,R as s,Q as t,F as u,j as v,r as x,v as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e=21){let t=``,n=e;for(;n--;)t+=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`[Math.random()*64|0];return t}export{e as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./error-CJ3RHG07.js";import{n as t,t as n}from"./sync-interval-oKvsW-lT.js";function r(t){throw new e(`${t} requires Node.js or a Node-compatible runtime`)}var i=3e4,a=`.anthropic-memory-store`,o=class extends e{constructor(e,t){super(e),this.name=`SessionMemoryError`,t!==void 0&&(this.cause=t)}},s=class{constructor(e,t){r(`SessionMemoryStores`)}get roots(){return r(`SessionMemoryStores`)}get readOnlyRoots(){return r(`SessionMemoryStores`)}download(e){return r(`SessionMemoryStores`)}finish(){return r(`SessionMemoryStores`)}syncAll(e){return r(`SessionMemoryStores`)}syncIfDue(){return r(`SessionMemoryStores`)}flushWrites(e){return r(`SessionMemoryStores`)}dispose(){return r(`SessionMemoryStores`)}};function c(e){return r(`setupSkills`)}function l(e,t){return r(`extractSkillArchive`)}function u(e){return r(`betaAgentToolset20260401`)}function d(e,t){return r(`resolvePath`)}var f=class extends e{constructor(e){super(`bash command timed out after ${e}ms`),this.name=`BashTimeoutError`,this.timeoutMs=e}},p=class{constructor(e,t){r(`BashSession`)}get closed(){return r(`BashSession`)}exec(e,t={}){return r(`BashSession`)}close(){r(`BashSession`)}};function m(e){return r(`betaBashTool`)}function h(e){return r(`betaReadTool`)}function g(e){return r(`betaWriteTool`)}function _(e){return r(`betaEditTool`)}function v(e){return r(`betaGlobTool`)}function y(e){return r(`betaGrepTool`)}export{p as BashSession,f as BashTimeoutError,n as DEFAULT_MEMORY_SYNC_INTERVAL_MS,a as MARKER_PATH,i as MEMORY_FLUSH_TIMEOUT_MS,t as MIN_MEMORY_SYNC_INTERVAL_MS,o as SessionMemoryError,s as SessionMemoryStores,u as betaAgentToolset20260401,m as betaBashTool,_ as betaEditTool,v as betaGlobTool,y as betaGrepTool,h as betaReadTool,g as betaWriteTool,l as extractSkillArchive,d as resolvePath,c as setupSkills};
|
package/dist/client/assets/{openai-completions-CSvY9IVo.js → openai-completions-DvmbMyzl.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Kt as e,Qt as t,Ut as n,Wt as r,Xt as i,Yt as a,Zt as o,en as s}from"./useDocumentTitle-nuqxXiNo.js";import{_ as c,a as l,b as u,c as d,d as f,f as p,g as m,h,l as g,m as ee,o as _,p as v,r as te,s as ne,t as y,u as re,v as b,x as ie}from"./transform-messages-C8U1xonk.js";function x(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n}function S(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)}var ae=function(){let{crypto:e}=globalThis;if(e?.randomUUID)return ae=e.randomUUID.bind(e),e.randomUUID();let t=new Uint8Array(1),n=e?()=>e.getRandomValues(t)[0]:()=>Math.random()*255&255;return`10000000-1000-4000-8000-100000000000`.replace(/[018]/g,e=>(+e^n()&15>>e/4).toString(16))};function C(e){return typeof e==`object`&&!!e&&(`name`in e&&e.name===`AbortError`||`message`in e&&String(e.message).includes(`FetchRequestCanceledException`))}var w=e=>{if(e instanceof Error)return e;if(typeof e==`object`&&e){try{if(Object.prototype.toString.call(e)===`[object Error]`){let t=Error(e.message,e.cause?{cause:e.cause}:{});return e.stack&&(t.stack=e.stack),e.cause&&!t.cause&&(t.cause=e.cause),e.name&&(t.name=e.name),t}}catch{}try{return Error(JSON.stringify(e))}catch{}}return Error(e)},T=class extends Error{},E=class e extends T{constructor(t,n,r,i){super(`${e.makeMessage(t,n,r)}`),this.status=t,this.headers=i,this.requestID=i?.get(`x-request-id`),this.error=n;let a=n;this.code=a?.code,this.param=a?.param,this.type=a?.type}static makeMessage(e,t,n){let r=t?.message?typeof t.message==`string`?t.message:JSON.stringify(t.message):t?JSON.stringify(t):n;return e&&r?`${e} ${r}`:e?`${e} status code (no body)`:r||`(no status code or body)`}static generate(t,n,r,i){if(!t||!i)return new oe({message:r,cause:w(n)});let a=n?.error;return t===400?new ce(t,a,r,i):t===401?new le(t,a,r,i):t===403?new ue(t,a,r,i):t===404?new de(t,a,r,i):t===409?new fe(t,a,r,i):t===422?new pe(t,a,r,i):t===429?new me(t,a,r,i):t>=500?new he(t,a,r,i):new e(t,a,r,i)}},D=class extends E{constructor({message:e}={}){super(void 0,void 0,e||`Request was aborted.`,void 0)}},oe=class extends E{constructor({message:e,cause:t}){super(void 0,void 0,e||`Connection error.`,void 0),t&&(this.cause=t)}},se=class extends oe{constructor({message:e}={}){super({message:e??`Request timed out.`})}},ce=class extends E{},le=class extends E{},ue=class extends E{},de=class extends E{},fe=class extends E{},pe=class extends E{},me=class extends E{},he=class extends E{},ge=class extends T{constructor(){super(`Could not parse response content as the length limit was reached`)}},_e=class extends T{constructor(){super(`Could not parse response content as the request was rejected by the content filter`)}},ve=class extends Error{constructor(e){super(e)}},ye=class extends E{constructor(e,t,n){let r=`OAuth2 authentication error`,i;if(t&&typeof t==`object`){let e=t;i=e.error;let n=e.error_description;n&&typeof n==`string`?r=n:i&&(r=i)}super(e,t,r,n),this.error_code=i}},be=class extends T{constructor(e,t,n){super(e),this.provider=t,this.cause=n}},xe=/^[a-z][a-z0-9+.-]*:/i,Se=e=>xe.test(e),O=e=>(O=Array.isArray,O(e)),Ce=O;function we(e){return typeof e==`object`?e??{}:{}}function Te(e){if(!e)return!0;for(let t in e)return!1;return!0}function Ee(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function De(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Oe=(e,t)=>{if(typeof t!=`number`||!Number.isInteger(t))throw new T(`${e} must be an integer`);if(t<0)throw new T(`${e} must be a positive integer`);return t},ke=e=>{try{return JSON.parse(e)}catch{return}},Ae=e=>new Promise(t=>setTimeout(t,e)),je=`6.40.0`,Me=()=>typeof window<`u`&&window.document!==void 0&&typeof navigator<`u`;function Ne(){return typeof Deno<`u`&&Deno.build!=null?`deno`:typeof EdgeRuntime<`u`?`edge`:Object.prototype.toString.call(globalThis.process===void 0?0:globalThis.process)===`[object process]`?`node`:`unknown`}var Pe=()=>{let e=Ne();if(e===`deno`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":Le(Deno.build.os),"X-Stainless-Arch":Ie(Deno.build.arch),"X-Stainless-Runtime":`deno`,"X-Stainless-Runtime-Version":typeof Deno.version==`string`?Deno.version:Deno.version?.deno??`unknown`};if(typeof EdgeRuntime<`u`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":`edge`,"X-Stainless-Runtime-Version":globalThis.process.version};if(e===`node`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":Le(globalThis.process.platform??`unknown`),"X-Stainless-Arch":Ie(globalThis.process.arch??`unknown`),"X-Stainless-Runtime":`node`,"X-Stainless-Runtime-Version":globalThis.process.version??`unknown`};let t=Fe();return t?{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`browser:${t.browser}`,"X-Stainless-Runtime-Version":t.version}:{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`unknown`,"X-Stainless-Runtime-Version":`unknown`}};function Fe(){if(typeof navigator>`u`||!navigator)return null;for(let{key:e,pattern:t}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 n=t.exec(navigator.userAgent);if(n)return{browser:e,version:`${n[1]||0}.${n[2]||0}.${n[3]||0}`}}return null}var Ie=e=>e===`x32`?`x32`:e===`x86_64`||e===`x64`?`x64`:e===`arm`?`arm`:e===`aarch64`||e===`arm64`?`arm64`:e?`other:${e}`:`unknown`,Le=e=>(e=e.toLowerCase(),e.includes(`ios`)?`iOS`:e===`android`?`Android`:e===`darwin`?`MacOS`:e===`win32`?`Windows`:e===`freebsd`?`FreeBSD`:e===`openbsd`?`OpenBSD`:e===`linux`?`Linux`:e?`Other:${e}`:`Unknown`),Re,ze=()=>Re??=Pe();function Be(){if(typeof fetch<`u`)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 Ve(...e){let t=globalThis.ReadableStream;if(t===void 0)throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new t(...e)}function He(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():e[Symbol.iterator]();return Ve({start(){},async pull(e){let{done:n,value:r}=await t.next();n?e.close():e.enqueue(r)},async cancel(){await t.return?.()}})}function Ue(e){if(e[Symbol.asyncIterator])return e;let t=e.getReader();return{async next(){try{let e=await t.read();return e?.done&&t.releaseLock(),e}catch(e){throw t.releaseLock(),e}},async return(){let e=t.cancel();return t.releaseLock(),await e,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function We(e){if(typeof e!=`object`||!e)return;if(e[Symbol.asyncIterator]){await e[Symbol.asyncIterator]().return?.();return}let t=e.getReader(),n=t.cancel();t.releaseLock(),await n}var Ge=({headers:e,body:t})=>({bodyHeaders:{"content-type":`application/json`},body:JSON.stringify(t)}),Ke=`RFC3986`,qe=e=>String(e),Je={RFC1738:e=>String(e).replace(/%20/g,`+`),RFC3986:qe},Ye=(e,t)=>(Ye=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty),Ye(e,t)),k=(()=>{let e=[];for(let t=0;t<256;++t)e.push(`%`+((t<16?`0`:``)+t.toString(16)).toUpperCase());return e})(),Xe=1024,Ze=(e,t,n,r,i)=>{if(e.length===0)return e;let a=e;if(typeof e==`symbol`?a=Symbol.prototype.toString.call(e):typeof e!=`string`&&(a=String(e)),n===`iso-8859-1`)return escape(a).replace(/%u[0-9a-f]{4}/gi,function(e){return`%26%23`+parseInt(e.slice(2),16)+`%3B`});let o=``;for(let e=0;e<a.length;e+=Xe){let t=a.length>=Xe?a.slice(e,e+Xe):a,n=[];for(let e=0;e<t.length;++e){let r=t.charCodeAt(e);if(r===45||r===46||r===95||r===126||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||i===`RFC1738`&&(r===40||r===41)){n[n.length]=t.charAt(e);continue}if(r<128){n[n.length]=k[r];continue}if(r<2048){n[n.length]=k[192|r>>6]+k[128|r&63];continue}if(r<55296||r>=57344){n[n.length]=k[224|r>>12]+k[128|r>>6&63]+k[128|r&63];continue}e+=1,r=65536+((r&1023)<<10|t.charCodeAt(e)&1023),n[n.length]=k[240|r>>18]+k[128|r>>12&63]+k[128|r>>6&63]+k[128|r&63]}o+=n.join(``)}return o};function Qe(e){return!e||typeof e!=`object`?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))}function $e(e,t){if(O(e)){let n=[];for(let r=0;r<e.length;r+=1)n.push(t(e[r]));return n}return t(e)}var et={brackets(e){return String(e)+`[]`},comma:`comma`,indices(e,t){return String(e)+`[`+t+`]`},repeat(e){return String(e)}},tt=function(e,t){Array.prototype.push.apply(e,O(t)?t:[t])},nt,A={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:`indices`,charset:`utf-8`,charsetSentinel:!1,delimiter:`&`,encode:!0,encodeDotInKeys:!1,encoder:Ze,encodeValuesOnly:!1,format:Ke,formatter:qe,indices:!1,serializeDate(e){return(nt??=Function.prototype.call.bind(Date.prototype.toISOString))(e)},skipNulls:!1,strictNullHandling:!1};function rt(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||typeof e==`symbol`||typeof e==`bigint`}var it={};function at(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,ee){let _=e,v=ee,te=0,ne=!1;for(;(v=v.get(it))!==void 0&&!ne;){let t=v.get(e);if(te+=1,t!==void 0){if(t===te)throw RangeError(`Cyclic object value`);ne=!0}v.get(it)===void 0&&(te=0)}if(typeof l==`function`?_=l(t,_):_ instanceof Date?_=f?.(_):n===`comma`&&O(_)&&(_=$e(_,function(e){return e instanceof Date?f?.(e):e})),_===null){if(a)return c&&!h?c(t,A.encoder,g,`key`,p):t;_=``}if(rt(_)||Qe(_)){if(c){let e=h?t:c(t,A.encoder,g,`key`,p);return[m?.(e)+`=`+m?.(c(_,A.encoder,g,`value`,p))]}return[m?.(t)+`=`+m?.(String(_))]}let y=[];if(_===void 0)return y;let re;if(n===`comma`&&O(_))h&&c&&(_=$e(_,c)),re=[{value:_.length>0?_.join(`,`)||null:void 0}];else if(O(l))re=l;else{let e=Object.keys(_);re=u?e.sort(u):e}let b=s?String(t).replace(/\./g,`%2E`):String(t),ie=r&&O(_)&&_.length===1?b+`[]`:b;if(i&&O(_)&&_.length===0)return ie+`[]`;for(let t=0;t<re.length;++t){let v=re[t],ne=typeof v==`object`&&v.value!==void 0?v.value:_[v];if(o&&ne===null)continue;let b=d&&s?v.replace(/\./g,`%2E`):v,x=O(_)?typeof n==`function`?n(ie,b):ie:ie+(d?`.`+b:`[`+b+`]`);ee.set(e,te);let S=new WeakMap;S.set(it,ee),tt(y,at(ne,x,n,r,i,a,o,s,n===`comma`&&h&&O(_)?null:c,l,u,d,f,p,m,h,g,S))}return y}function ot(e=A){if(e.allowEmptyArrays!==void 0&&typeof e.allowEmptyArrays!=`boolean`)throw TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(e.encodeDotInKeys!==void 0&&typeof e.encodeDotInKeys!=`boolean`)throw TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(e.encoder!==null&&e.encoder!==void 0&&typeof e.encoder!=`function`)throw TypeError(`Encoder has to be a function.`);let t=e.charset||A.charset;if(e.charset!==void 0&&e.charset!==`utf-8`&&e.charset!==`iso-8859-1`)throw TypeError(`The charset option must be either utf-8, iso-8859-1, or undefined`);let n=Ke;if(e.format!==void 0){if(!Ye(Je,e.format))throw TypeError(`Unknown format option provided.`);n=e.format}let r=Je[n],i=A.filter;(typeof e.filter==`function`||O(e.filter))&&(i=e.filter);let a;if(a=e.arrayFormat&&e.arrayFormat in et?e.arrayFormat:`indices`in e?e.indices?`indices`:`repeat`:A.arrayFormat,`commaRoundTrip`in e&&typeof e.commaRoundTrip!=`boolean`)throw TypeError("`commaRoundTrip` must be a boolean, or absent");let o=e.allowDots===void 0?e.encodeDotInKeys?!0:A.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix==`boolean`?e.addQueryPrefix:A.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays==`boolean`?!!e.allowEmptyArrays:A.allowEmptyArrays,arrayFormat:a,charset:t,charsetSentinel:typeof e.charsetSentinel==`boolean`?e.charsetSentinel:A.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:e.delimiter===void 0?A.delimiter:e.delimiter,encode:typeof e.encode==`boolean`?e.encode:A.encode,encodeDotInKeys:typeof e.encodeDotInKeys==`boolean`?e.encodeDotInKeys:A.encodeDotInKeys,encoder:typeof e.encoder==`function`?e.encoder:A.encoder,encodeValuesOnly:typeof e.encodeValuesOnly==`boolean`?e.encodeValuesOnly:A.encodeValuesOnly,filter:i,format:n,formatter:r,serializeDate:typeof e.serializeDate==`function`?e.serializeDate:A.serializeDate,skipNulls:typeof e.skipNulls==`boolean`?e.skipNulls:A.skipNulls,sort:typeof e.sort==`function`?e.sort:null,strictNullHandling:typeof e.strictNullHandling==`boolean`?e.strictNullHandling:A.strictNullHandling}}function st(e,t={}){let n=e,r=ot(t),i,a;typeof r.filter==`function`?(a=r.filter,n=a(``,n)):O(r.filter)&&(a=r.filter,i=a);let o=[];if(typeof n!=`object`||!n)return``;let s=et[r.arrayFormat],c=s===`comma`&&r.commaRoundTrip;i||=Object.keys(n),r.sort&&i.sort(r.sort);let l=new WeakMap;for(let e=0;e<i.length;++e){let t=i[e];r.skipNulls&&n[t]===null||tt(o,at(n[t],t,s,c,r.allowEmptyArrays,r.strictNullHandling,r.skipNulls,r.encodeDotInKeys,r.encode?r.encoder:null,r.filter,r.sort,r.allowDots,r.serializeDate,r.format,r.formatter,r.encodeValuesOnly,r.charset,l))}let u=o.join(r.delimiter),d=r.addQueryPrefix===!0?`?`:``;return r.charsetSentinel&&(r.charset===`iso-8859-1`?d+=`utf8=%26%2310003%3B&`:d+=`utf8=%E2%9C%93&`),u.length>0?d+u:``}function ct(e){return st(e,{arrayFormat:`brackets`})}function lt(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}var ut;function dt(e){let t;return(ut??=(t=new globalThis.TextEncoder,t.encode.bind(t)))(e)}var ft;function pt(e){let t;return(ft??=(t=new globalThis.TextDecoder,t.decode.bind(t)))(e)}var j,M,mt=class{constructor(){j.set(this,void 0),M.set(this,void 0),x(this,j,new Uint8Array,`f`),x(this,M,null,`f`)}decode(e){if(e==null)return[];let t=e instanceof ArrayBuffer?new Uint8Array(e):typeof e==`string`?dt(e):e;x(this,j,lt([S(this,j,`f`),t]),`f`);let n=[],r;for(;(r=ht(S(this,j,`f`),S(this,M,`f`)))!=null;){if(r.carriage&&S(this,M,`f`)==null){x(this,M,r.index,`f`);continue}if(S(this,M,`f`)!=null&&(r.index!==S(this,M,`f`)+1||r.carriage)){n.push(pt(S(this,j,`f`).subarray(0,S(this,M,`f`)-1))),x(this,j,S(this,j,`f`).subarray(S(this,M,`f`)),`f`),x(this,M,null,`f`);continue}let e=S(this,M,`f`)===null?r.preceding:r.preceding-1,t=pt(S(this,j,`f`).subarray(0,e));n.push(t),x(this,j,S(this,j,`f`).subarray(r.index),`f`),x(this,M,null,`f`)}return n}flush(){return S(this,j,`f`).length?this.decode(`
|
|
1
|
+
import{_ as e,h as t,l as n,m as r,n as i,t as a,v as o,x as s}from"./models-D651LTTp.js";import{_ as c,a as l,b as u,c as d,d as f,f as p,g as m,h,l as g,m as ee,o as _,p as v,r as te,s as ne,t as y,u as re,v as b,x as ie}from"./transform-messages-Cg_2u7I2.js";function x(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n}function S(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)}var ae=function(){let{crypto:e}=globalThis;if(e?.randomUUID)return ae=e.randomUUID.bind(e),e.randomUUID();let t=new Uint8Array(1),n=e?()=>e.getRandomValues(t)[0]:()=>Math.random()*255&255;return`10000000-1000-4000-8000-100000000000`.replace(/[018]/g,e=>(+e^n()&15>>e/4).toString(16))};function C(e){return typeof e==`object`&&!!e&&(`name`in e&&e.name===`AbortError`||`message`in e&&String(e.message).includes(`FetchRequestCanceledException`))}var w=e=>{if(e instanceof Error)return e;if(typeof e==`object`&&e){try{if(Object.prototype.toString.call(e)===`[object Error]`){let t=Error(e.message,e.cause?{cause:e.cause}:{});return e.stack&&(t.stack=e.stack),e.cause&&!t.cause&&(t.cause=e.cause),e.name&&(t.name=e.name),t}}catch{}try{return Error(JSON.stringify(e))}catch{}}return Error(e)},T=class extends Error{},E=class e extends T{constructor(t,n,r,i){super(`${e.makeMessage(t,n,r)}`),this.status=t,this.headers=i,this.requestID=i?.get(`x-request-id`),this.error=n;let a=n;this.code=a?.code,this.param=a?.param,this.type=a?.type}static makeMessage(e,t,n){let r=t?.message?typeof t.message==`string`?t.message:JSON.stringify(t.message):t?JSON.stringify(t):n;return e&&r?`${e} ${r}`:e?`${e} status code (no body)`:r||`(no status code or body)`}static generate(t,n,r,i){if(!t||!i)return new oe({message:r,cause:w(n)});let a=n?.error;return t===400?new ce(t,a,r,i):t===401?new le(t,a,r,i):t===403?new ue(t,a,r,i):t===404?new de(t,a,r,i):t===409?new fe(t,a,r,i):t===422?new pe(t,a,r,i):t===429?new me(t,a,r,i):t>=500?new he(t,a,r,i):new e(t,a,r,i)}},D=class extends E{constructor({message:e}={}){super(void 0,void 0,e||`Request was aborted.`,void 0)}},oe=class extends E{constructor({message:e,cause:t}){super(void 0,void 0,e||`Connection error.`,void 0),t&&(this.cause=t)}},se=class extends oe{constructor({message:e}={}){super({message:e??`Request timed out.`})}},ce=class extends E{},le=class extends E{},ue=class extends E{},de=class extends E{},fe=class extends E{},pe=class extends E{},me=class extends E{},he=class extends E{},ge=class extends T{constructor(){super(`Could not parse response content as the length limit was reached`)}},_e=class extends T{constructor(){super(`Could not parse response content as the request was rejected by the content filter`)}},ve=class extends Error{constructor(e){super(e)}},ye=class extends E{constructor(e,t,n){let r=`OAuth2 authentication error`,i;if(t&&typeof t==`object`){let e=t;i=e.error;let n=e.error_description;n&&typeof n==`string`?r=n:i&&(r=i)}super(e,t,r,n),this.error_code=i}},be=class extends T{constructor(e,t,n){super(e),this.provider=t,this.cause=n}},xe=/^[a-z][a-z0-9+.-]*:/i,Se=e=>xe.test(e),O=e=>(O=Array.isArray,O(e)),Ce=O;function we(e){return typeof e==`object`?e??{}:{}}function Te(e){if(!e)return!0;for(let t in e)return!1;return!0}function Ee(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function De(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Oe=(e,t)=>{if(typeof t!=`number`||!Number.isInteger(t))throw new T(`${e} must be an integer`);if(t<0)throw new T(`${e} must be a positive integer`);return t},ke=e=>{try{return JSON.parse(e)}catch{return}},Ae=e=>new Promise(t=>setTimeout(t,e)),je=`6.40.0`,Me=()=>typeof window<`u`&&window.document!==void 0&&typeof navigator<`u`;function Ne(){return typeof Deno<`u`&&Deno.build!=null?`deno`:typeof EdgeRuntime<`u`?`edge`:Object.prototype.toString.call(globalThis.process===void 0?0:globalThis.process)===`[object process]`?`node`:`unknown`}var Pe=()=>{let e=Ne();if(e===`deno`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":Le(Deno.build.os),"X-Stainless-Arch":Ie(Deno.build.arch),"X-Stainless-Runtime":`deno`,"X-Stainless-Runtime-Version":typeof Deno.version==`string`?Deno.version:Deno.version?.deno??`unknown`};if(typeof EdgeRuntime<`u`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":`edge`,"X-Stainless-Runtime-Version":globalThis.process.version};if(e===`node`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":Le(globalThis.process.platform??`unknown`),"X-Stainless-Arch":Ie(globalThis.process.arch??`unknown`),"X-Stainless-Runtime":`node`,"X-Stainless-Runtime-Version":globalThis.process.version??`unknown`};let t=Fe();return t?{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`browser:${t.browser}`,"X-Stainless-Runtime-Version":t.version}:{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":je,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`unknown`,"X-Stainless-Runtime-Version":`unknown`}};function Fe(){if(typeof navigator>`u`||!navigator)return null;for(let{key:e,pattern:t}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 n=t.exec(navigator.userAgent);if(n)return{browser:e,version:`${n[1]||0}.${n[2]||0}.${n[3]||0}`}}return null}var Ie=e=>e===`x32`?`x32`:e===`x86_64`||e===`x64`?`x64`:e===`arm`?`arm`:e===`aarch64`||e===`arm64`?`arm64`:e?`other:${e}`:`unknown`,Le=e=>(e=e.toLowerCase(),e.includes(`ios`)?`iOS`:e===`android`?`Android`:e===`darwin`?`MacOS`:e===`win32`?`Windows`:e===`freebsd`?`FreeBSD`:e===`openbsd`?`OpenBSD`:e===`linux`?`Linux`:e?`Other:${e}`:`Unknown`),Re,ze=()=>Re??=Pe();function Be(){if(typeof fetch<`u`)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 Ve(...e){let t=globalThis.ReadableStream;if(t===void 0)throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new t(...e)}function He(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():e[Symbol.iterator]();return Ve({start(){},async pull(e){let{done:n,value:r}=await t.next();n?e.close():e.enqueue(r)},async cancel(){await t.return?.()}})}function Ue(e){if(e[Symbol.asyncIterator])return e;let t=e.getReader();return{async next(){try{let e=await t.read();return e?.done&&t.releaseLock(),e}catch(e){throw t.releaseLock(),e}},async return(){let e=t.cancel();return t.releaseLock(),await e,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function We(e){if(typeof e!=`object`||!e)return;if(e[Symbol.asyncIterator]){await e[Symbol.asyncIterator]().return?.();return}let t=e.getReader(),n=t.cancel();t.releaseLock(),await n}var Ge=({headers:e,body:t})=>({bodyHeaders:{"content-type":`application/json`},body:JSON.stringify(t)}),Ke=`RFC3986`,qe=e=>String(e),Je={RFC1738:e=>String(e).replace(/%20/g,`+`),RFC3986:qe},Ye=(e,t)=>(Ye=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty),Ye(e,t)),k=(()=>{let e=[];for(let t=0;t<256;++t)e.push(`%`+((t<16?`0`:``)+t.toString(16)).toUpperCase());return e})(),Xe=1024,Ze=(e,t,n,r,i)=>{if(e.length===0)return e;let a=e;if(typeof e==`symbol`?a=Symbol.prototype.toString.call(e):typeof e!=`string`&&(a=String(e)),n===`iso-8859-1`)return escape(a).replace(/%u[0-9a-f]{4}/gi,function(e){return`%26%23`+parseInt(e.slice(2),16)+`%3B`});let o=``;for(let e=0;e<a.length;e+=Xe){let t=a.length>=Xe?a.slice(e,e+Xe):a,n=[];for(let e=0;e<t.length;++e){let r=t.charCodeAt(e);if(r===45||r===46||r===95||r===126||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||i===`RFC1738`&&(r===40||r===41)){n[n.length]=t.charAt(e);continue}if(r<128){n[n.length]=k[r];continue}if(r<2048){n[n.length]=k[192|r>>6]+k[128|r&63];continue}if(r<55296||r>=57344){n[n.length]=k[224|r>>12]+k[128|r>>6&63]+k[128|r&63];continue}e+=1,r=65536+((r&1023)<<10|t.charCodeAt(e)&1023),n[n.length]=k[240|r>>18]+k[128|r>>12&63]+k[128|r>>6&63]+k[128|r&63]}o+=n.join(``)}return o};function Qe(e){return!e||typeof e!=`object`?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))}function $e(e,t){if(O(e)){let n=[];for(let r=0;r<e.length;r+=1)n.push(t(e[r]));return n}return t(e)}var et={brackets(e){return String(e)+`[]`},comma:`comma`,indices(e,t){return String(e)+`[`+t+`]`},repeat(e){return String(e)}},tt=function(e,t){Array.prototype.push.apply(e,O(t)?t:[t])},nt,A={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:`indices`,charset:`utf-8`,charsetSentinel:!1,delimiter:`&`,encode:!0,encodeDotInKeys:!1,encoder:Ze,encodeValuesOnly:!1,format:Ke,formatter:qe,indices:!1,serializeDate(e){return(nt??=Function.prototype.call.bind(Date.prototype.toISOString))(e)},skipNulls:!1,strictNullHandling:!1};function rt(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||typeof e==`symbol`||typeof e==`bigint`}var it={};function at(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,ee){let _=e,v=ee,te=0,ne=!1;for(;(v=v.get(it))!==void 0&&!ne;){let t=v.get(e);if(te+=1,t!==void 0){if(t===te)throw RangeError(`Cyclic object value`);ne=!0}v.get(it)===void 0&&(te=0)}if(typeof l==`function`?_=l(t,_):_ instanceof Date?_=f?.(_):n===`comma`&&O(_)&&(_=$e(_,function(e){return e instanceof Date?f?.(e):e})),_===null){if(a)return c&&!h?c(t,A.encoder,g,`key`,p):t;_=``}if(rt(_)||Qe(_)){if(c){let e=h?t:c(t,A.encoder,g,`key`,p);return[m?.(e)+`=`+m?.(c(_,A.encoder,g,`value`,p))]}return[m?.(t)+`=`+m?.(String(_))]}let y=[];if(_===void 0)return y;let re;if(n===`comma`&&O(_))h&&c&&(_=$e(_,c)),re=[{value:_.length>0?_.join(`,`)||null:void 0}];else if(O(l))re=l;else{let e=Object.keys(_);re=u?e.sort(u):e}let b=s?String(t).replace(/\./g,`%2E`):String(t),ie=r&&O(_)&&_.length===1?b+`[]`:b;if(i&&O(_)&&_.length===0)return ie+`[]`;for(let t=0;t<re.length;++t){let v=re[t],ne=typeof v==`object`&&v.value!==void 0?v.value:_[v];if(o&&ne===null)continue;let b=d&&s?v.replace(/\./g,`%2E`):v,x=O(_)?typeof n==`function`?n(ie,b):ie:ie+(d?`.`+b:`[`+b+`]`);ee.set(e,te);let S=new WeakMap;S.set(it,ee),tt(y,at(ne,x,n,r,i,a,o,s,n===`comma`&&h&&O(_)?null:c,l,u,d,f,p,m,h,g,S))}return y}function ot(e=A){if(e.allowEmptyArrays!==void 0&&typeof e.allowEmptyArrays!=`boolean`)throw TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(e.encodeDotInKeys!==void 0&&typeof e.encodeDotInKeys!=`boolean`)throw TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(e.encoder!==null&&e.encoder!==void 0&&typeof e.encoder!=`function`)throw TypeError(`Encoder has to be a function.`);let t=e.charset||A.charset;if(e.charset!==void 0&&e.charset!==`utf-8`&&e.charset!==`iso-8859-1`)throw TypeError(`The charset option must be either utf-8, iso-8859-1, or undefined`);let n=Ke;if(e.format!==void 0){if(!Ye(Je,e.format))throw TypeError(`Unknown format option provided.`);n=e.format}let r=Je[n],i=A.filter;(typeof e.filter==`function`||O(e.filter))&&(i=e.filter);let a;if(a=e.arrayFormat&&e.arrayFormat in et?e.arrayFormat:`indices`in e?e.indices?`indices`:`repeat`:A.arrayFormat,`commaRoundTrip`in e&&typeof e.commaRoundTrip!=`boolean`)throw TypeError("`commaRoundTrip` must be a boolean, or absent");let o=e.allowDots===void 0?e.encodeDotInKeys?!0:A.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix==`boolean`?e.addQueryPrefix:A.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays==`boolean`?!!e.allowEmptyArrays:A.allowEmptyArrays,arrayFormat:a,charset:t,charsetSentinel:typeof e.charsetSentinel==`boolean`?e.charsetSentinel:A.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:e.delimiter===void 0?A.delimiter:e.delimiter,encode:typeof e.encode==`boolean`?e.encode:A.encode,encodeDotInKeys:typeof e.encodeDotInKeys==`boolean`?e.encodeDotInKeys:A.encodeDotInKeys,encoder:typeof e.encoder==`function`?e.encoder:A.encoder,encodeValuesOnly:typeof e.encodeValuesOnly==`boolean`?e.encodeValuesOnly:A.encodeValuesOnly,filter:i,format:n,formatter:r,serializeDate:typeof e.serializeDate==`function`?e.serializeDate:A.serializeDate,skipNulls:typeof e.skipNulls==`boolean`?e.skipNulls:A.skipNulls,sort:typeof e.sort==`function`?e.sort:null,strictNullHandling:typeof e.strictNullHandling==`boolean`?e.strictNullHandling:A.strictNullHandling}}function st(e,t={}){let n=e,r=ot(t),i,a;typeof r.filter==`function`?(a=r.filter,n=a(``,n)):O(r.filter)&&(a=r.filter,i=a);let o=[];if(typeof n!=`object`||!n)return``;let s=et[r.arrayFormat],c=s===`comma`&&r.commaRoundTrip;i||=Object.keys(n),r.sort&&i.sort(r.sort);let l=new WeakMap;for(let e=0;e<i.length;++e){let t=i[e];r.skipNulls&&n[t]===null||tt(o,at(n[t],t,s,c,r.allowEmptyArrays,r.strictNullHandling,r.skipNulls,r.encodeDotInKeys,r.encode?r.encoder:null,r.filter,r.sort,r.allowDots,r.serializeDate,r.format,r.formatter,r.encodeValuesOnly,r.charset,l))}let u=o.join(r.delimiter),d=r.addQueryPrefix===!0?`?`:``;return r.charsetSentinel&&(r.charset===`iso-8859-1`?d+=`utf8=%26%2310003%3B&`:d+=`utf8=%E2%9C%93&`),u.length>0?d+u:``}function ct(e){return st(e,{arrayFormat:`brackets`})}function lt(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}var ut;function dt(e){let t;return(ut??=(t=new globalThis.TextEncoder,t.encode.bind(t)))(e)}var ft;function pt(e){let t;return(ft??=(t=new globalThis.TextDecoder,t.decode.bind(t)))(e)}var j,M,mt=class{constructor(){j.set(this,void 0),M.set(this,void 0),x(this,j,new Uint8Array,`f`),x(this,M,null,`f`)}decode(e){if(e==null)return[];let t=e instanceof ArrayBuffer?new Uint8Array(e):typeof e==`string`?dt(e):e;x(this,j,lt([S(this,j,`f`),t]),`f`);let n=[],r;for(;(r=ht(S(this,j,`f`),S(this,M,`f`)))!=null;){if(r.carriage&&S(this,M,`f`)==null){x(this,M,r.index,`f`);continue}if(S(this,M,`f`)!=null&&(r.index!==S(this,M,`f`)+1||r.carriage)){n.push(pt(S(this,j,`f`).subarray(0,S(this,M,`f`)-1))),x(this,j,S(this,j,`f`).subarray(S(this,M,`f`)),`f`),x(this,M,null,`f`);continue}let e=S(this,M,`f`)===null?r.preceding:r.preceding-1,t=pt(S(this,j,`f`).subarray(0,e));n.push(t),x(this,j,S(this,j,`f`).subarray(r.index),`f`),x(this,M,null,`f`)}return n}flush(){return S(this,j,`f`).length?this.decode(`
|
|
2
2
|
`):[]}};j=new WeakMap,M=new WeakMap,mt.NEWLINE_CHARS=new Set([`
|
|
3
3
|
`,`\r`]),mt.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function ht(e,t){for(let n=t??0;n<e.length;n++){if(e[n]===10)return{preceding:n,index:n+1,carriage:!1};if(e[n]===13)return{preceding:n,index:n+1,carriage:!0}}return null}function gt(e){for(let t=0;t<e.length-1;t++){if(e[t]===10&&e[t+1]===10||e[t]===13&&e[t+1]===13)return t+2;if(e[t]===13&&e[t+1]===10&&t+3<e.length&&e[t+2]===13&&e[t+3]===10)return t+4}return-1}var _t={off:0,error:200,warn:300,info:400,debug:500},vt=(e,t,n)=>{if(e){if(Ee(_t,e))return e;N(n).warn(`${t} was set to ${JSON.stringify(e)}, expected one of ${JSON.stringify(Object.keys(_t))}`)}};function yt(){}function bt(e,t,n){return!t||_t[e]>_t[n]?yt:t[e].bind(t)}var xt={error:yt,warn:yt,info:yt,debug:yt},St=new WeakMap;function N(e){let t=e.logger,n=e.logLevel??`off`;if(!t)return xt;let r=St.get(t);if(r&&r[0]===n)return r[1];let i={error:bt(`error`,t,n),warn:bt(`warn`,t,n),info:bt(`info`,t,n),debug:bt(`debug`,t,n)};return St.set(t,[n,i]),i}var Ct=e=>(e.options&&(e.options={...e.options},delete e.options.headers),e.headers&&=Object.fromEntries((e.headers instanceof Headers?[...e.headers]:Object.entries(e.headers)).map(([e,t])=>[e,e.toLowerCase()===`authorization`||e.toLowerCase()===`api-key`||e.toLowerCase()===`x-api-key`||e.toLowerCase()===`cookie`||e.toLowerCase()===`set-cookie`?`***`:t])),`retryOfRequestLogID`in e&&(e.retryOfRequestLogID&&(e.retryOf=e.retryOfRequestLogID),delete e.retryOfRequestLogID),e),wt,Tt=class e{constructor(e,t,n){this.iterator=e,wt.set(this,void 0),this.controller=t,x(this,wt,n,`f`)}static fromSSEResponse(t,n,r,i){let a=!1,o=r?N(r):console;async function*s(){if(a)throw new T("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");a=!0;let e=!1;try{for await(let r of Et(t,n))if(!e){if(r.data.startsWith(`[DONE]`)){e=!0;continue}if(r.event===null||!r.event.startsWith(`thread.`)){let e;try{e=JSON.parse(r.data)}catch(e){throw o.error(`Could not parse message into JSON:`,r.data),o.error(`From chunk:`,r.raw),e}if(e&&e.error)throw new E(void 0,e.error,void 0,t.headers);yield i?{event:r.event,data:e}:e}else{let e;try{e=JSON.parse(r.data)}catch(e){throw console.error(`Could not parse message into JSON:`,r.data),console.error(`From chunk:`,r.raw),e}if(r.event==`error`)throw new E(void 0,e.error,e.message,void 0);yield{event:r.event,data:e}}}e=!0}catch(e){if(C(e))return;throw e}finally{e||n.abort()}}return new e(s,n,r)}static fromReadableStream(t,n,r){let i=!1;async function*a(){let e=new mt,n=Ue(t);for await(let t of n)for(let n of e.decode(t))yield n;for(let t of e.flush())yield t}async function*o(){if(i)throw new T("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");i=!0;let e=!1;try{for await(let t of a())e||t&&(yield JSON.parse(t));e=!0}catch(e){if(C(e))return;throw e}finally{e||n.abort()}}return new e(o,n,r)}[(wt=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let t=[],n=[],r=this.iterator(),i=e=>({next:()=>{if(e.length===0){let e=r.next();t.push(e),n.push(e)}return e.shift()}});return[new e(()=>i(t),this.controller,S(this,wt,`f`)),new e(()=>i(n),this.controller,S(this,wt,`f`))]}toReadableStream(){let e=this,t;return Ve({async start(){t=e[Symbol.asyncIterator]()},async pull(e){try{let{value:n,done:r}=await t.next();if(r)return e.close();let i=dt(JSON.stringify(n)+`
|
|
4
4
|
`);e.enqueue(i)}catch(t){e.error(t)}},async cancel(){await t.return?.()}})}};async function*Et(e,t){if(!e.body)throw t.abort(),globalThis.navigator!==void 0&&globalThis.navigator.product===`ReactNative`?new T(`The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api`):new T(`Attempted to iterate over a response with no body`);let n=new Ot,r=new mt,i=Ue(e.body);for await(let e of Dt(i))for(let t of r.decode(e)){let e=n.decode(t);e&&(yield e)}for(let e of r.flush()){let t=n.decode(e);t&&(yield t)}}async function*Dt(e){let t=new Uint8Array;for await(let n of e){if(n==null)continue;let e=n instanceof ArrayBuffer?new Uint8Array(n):typeof n==`string`?dt(n):n,r=new Uint8Array(t.length+e.length);r.set(t),r.set(e,t.length),t=r;let i;for(;(i=gt(t))!==-1;)yield t.slice(0,i),t=t.slice(i)}t.length>0&&(yield t)}var Ot=class{constructor(){this.event=null,this.data=[],this.chunks=[]}decode(e){if(e.endsWith(`\r`)&&(e=e.substring(0,e.length-1)),!e){if(!this.event&&!this.data.length)return null;let e={event:this.event,data:this.data.join(`
|
|
@@ -14,8 +14,8 @@ new OpenAI({ apiKey, dangerouslyAllowBrowser: true });
|
|
|
14
14
|
|
|
15
15
|
https://help.openai.com/en/articles/5112595-best-practices-for-api-key-safety
|
|
16
16
|
`);this.baseURL=c.baseURL,this.timeout=c.timeout??Ia.DEFAULT_TIMEOUT,this.logger=c.logger??console;let l=`warn`;this.logLevel=l,this.logLevel=vt(c.logLevel,`ClientOptions.logLevel`,this)??vt(ni(`OPENAI_LOG`),`process.env['OPENAI_LOG']`,this)??l,this.fetchOptions=c.fetchOptions,this.maxRetries=c.maxRetries??2,this.fetch=c.fetch??Be(),x(this,La,Ge,`f`);let u=ni(`OPENAI_CUSTOM_HEADERS`);if(u){let e={};for(let t of u.split(`
|
|
17
|
-
`)){let n=t.indexOf(`:`);n>=0&&(e[t.substring(0,n).trim()]=t.substring(n+1).trim())}c.defaultHeaders=J([e,c.defaultHeaders])}this._options=c,o&&(this._workloadIdentityAuth=new Bt(o,this.fetch)),this.apiKey=typeof t==`string`?t:null,this.adminAPIKey=n,this.organization=r,this.project=i,this.webhookSecret=a}withOptions(e){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,...e})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:e,nulls:t},n={bearerAuth:!0,adminAPIKeyAuth:!0}){if(!(e.get(`authorization`)||e.get(`api-key`))&&!(t.has(`authorization`)||t.has(`api-key`))&&!(this._workloadIdentityAuth&&n.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(e,t={bearerAuth:!0,adminAPIKeyAuth:!0}){return J([t.bearerAuth?await this.bearerAuth(e):null,t.adminAPIKeyAuth?await this.adminAPIKeyAuth(e):null])}async bearerAuth(e){if(this._workloadIdentityAuth)return J([{Authorization:`Bearer ${await this._workloadIdentityAuth.getToken()}`}]);if(this.apiKey!=null)return J([{Authorization:`Bearer ${this.apiKey}`}])}async adminAPIKeyAuth(e){if(this.adminAPIKey!=null)return J([{Authorization:`Bearer ${this.adminAPIKey}`}])}stringifyQuery(e){return ct(e)}getUserAgent(){return`${this.constructor.name}/JS ${je}`}defaultIdempotencyKey(){return`stainless-node-retry-${ae()}`}makeStatusError(e,t,n,r){return E.generate(e,t,n,r)}async _callApiKey(){let e=this._options.apiKey;if(typeof e!=`function`)return!1;let t;try{t=await e()}catch(e){throw e instanceof T?e:new T(`Failed to get token from 'apiKey' function: ${e.message}`,{cause:e})}if(typeof t!=`string`||!t)throw new T(`Expected 'apiKey' function argument to return a string but it returned ${t}`);return this.apiKey=t,!0}buildURL(e,t,n){let r=!S(this,Fa,`m`,Ra).call(this)&&n||this.baseURL,i=Se(e)?new URL(e):new URL(r+(r.endsWith(`/`)&&e.startsWith(`/`)?e.slice(1):e)),a=this.defaultQuery(),o=Object.fromEntries(i.searchParams);return(!Te(a)||!Te(o))&&(t={...o,...a,...t}),typeof t==`object`&&t&&!Array.isArray(t)&&(i.search=this.stringifyQuery(t)),i.toString()}async prepareOptions(e){(e.__security??{bearerAuth:!0}).bearerAuth&&await this._callApiKey()}async prepareRequest(e,{url:t,options:n}){}get(e,t){return this.methodRequest(`get`,e,t)}post(e,t){return this.methodRequest(`post`,e,t)}patch(e,t){return this.methodRequest(`patch`,e,t)}put(e,t){return this.methodRequest(`put`,e,t)}delete(e,t){return this.methodRequest(`delete`,e,t)}methodRequest(e,t,n){return this.request(Promise.resolve(n).then(n=>({method:e,path:t,...n})))}request(e,t=null){return new Nt(this,this.makeRequest(e,t,void 0))}async makeRequest(e,t,n){let r=await e,i=r.maxRetries??this.maxRetries;t??=i,await this.prepareOptions(r);let{req:a,url:o,timeout:s}=await this.buildRequest(r,{retryCount:i-t});await this.prepareRequest(a,{url:o,options:r});let c=`log_`+(Math.random()*(1<<24)|0).toString(16).padStart(6,`0`),l=n===void 0?``:`, retryOf: ${n}`,u=Date.now();if(N(this).debug(`[${c}] sending request`,Ct({retryOfRequestLogID:n,method:r.method,url:o,options:r,headers:a.headers})),r.signal?.aborted)throw new D;let d=r.__security??{bearerAuth:!0},f=new AbortController,p=await this.fetchWithAuth(o,a,s,f,d).catch(w),m=Date.now();if(p instanceof globalThis.Error){let e=`retrying, ${t} attempts remaining`;if(r.signal?.aborted)throw new D;let i=C(p)||/timed? ?out/i.test(String(p)+(`cause`in p?String(p.cause):``));if(t)return N(this).info(`[${c}] connection ${i?`timed out`:`failed`} - ${e}`),N(this).debug(`[${c}] connection ${i?`timed out`:`failed`} (${e})`,Ct({retryOfRequestLogID:n,url:o,durationMs:m-u,message:p.message})),this.retryRequest(r,t,n??c);throw N(this).info(`[${c}] connection ${i?`timed out`:`failed`} - error; no more retries left`),N(this).debug(`[${c}] connection ${i?`timed out`:`failed`} (error; no more retries left)`,Ct({retryOfRequestLogID:n,url:o,durationMs:m-u,message:p.message})),p instanceof ye||p instanceof be?p:i?new se:new oe({message:Ba(p),cause:p})}let h=`[${c}${l}${[...p.headers.entries()].filter(([e])=>e===`x-request-id`).map(([e,t])=>`, `+e+`: `+JSON.stringify(t)).join(``)}] ${a.method} ${o} ${p.ok?`succeeded`:`failed`} with status ${p.status} in ${m-u}ms`;if(!p.ok){if(p.status===401&&this._workloadIdentityAuth&&d.bearerAuth&&!r.__metadata?.hasStreamingBody&&!r.__metadata?.workloadIdentityTokenRefreshed)return await We(p.body),this._workloadIdentityAuth.invalidateToken(),this.makeRequest({...r,__metadata:{...r.__metadata,workloadIdentityTokenRefreshed:!0}},t,n??c);let e=await this.shouldRetry(p);if(t&&e){let e=`retrying, ${t} attempts remaining`;return await We(p.body),N(this).info(`${h} - ${e}`),N(this).debug(`[${c}] response error (${e})`,Ct({retryOfRequestLogID:n,url:p.url,status:p.status,headers:p.headers,durationMs:m-u})),this.retryRequest(r,t,n??c,p.headers)}let i=e?`error; no more retries left`:`error; not retryable`;N(this).info(`${h} - ${i}`);let a=await p.text().catch(e=>w(e).message),o=ke(a),s=o?void 0:a;throw N(this).debug(`[${c}] response error (${i})`,Ct({retryOfRequestLogID:n,url:p.url,status:p.status,headers:p.headers,message:s,durationMs:Date.now()-u})),this.makeStatusError(p.status,o,s,p.headers)}return N(this).info(h),N(this).debug(`[${c}] response start`,Ct({retryOfRequestLogID:n,url:p.url,status:p.status,headers:p.headers,durationMs:m-u})),{response:p,options:r,controller:f,requestLogID:c,retryOfRequestLogID:n,startTime:u}}getAPIList(e,t,n){return this.requestAPIList(t,n&&`then`in n?n.then(t=>({method:`get`,path:e,...t})):{method:`get`,path:e,...n})}requestAPIList(e,t){let n=this.makeRequest(t,null,void 0);return new It(this,n,e)}async fetchWithAuth(e,t,n,r,i={bearerAuth:!0,adminAPIKeyAuth:!0}){if(this._workloadIdentityAuth&&i.bearerAuth){let e=t.headers,n=e.get(`Authorization`);if(!n||n===`Bearer ${za}`){let t=await this._workloadIdentityAuth.getToken();e.set(`Authorization`,`Bearer ${t}`)}}return await this.fetchWithTimeout(e,t,n,r)}async fetchWithTimeout(e,t,n,r){let{signal:i,method:a,...o}=t||{},s=this._makeAbort(r);i&&i.addEventListener(`abort`,s,{once:!0});let c=setTimeout(s,n),l=globalThis.ReadableStream&&o.body instanceof globalThis.ReadableStream||typeof o.body==`object`&&o.body!==null&&Symbol.asyncIterator in o.body,u={signal:r.signal,...l?{duplex:`half`}:{},method:`GET`,...o};a&&(u.method=a.toUpperCase());try{return await this.fetch.call(void 0,e,u)}finally{clearTimeout(c)}}async shouldRetry(e){let t=e.headers.get(`x-should-retry`);return t===`true`?!0:t===`false`?!1:e.status===408||e.status===409||e.status===429||e.status>=500}async retryRequest(e,t,n,r){let i,a=r?.get(`retry-after-ms`);if(a){let e=parseFloat(a);Number.isNaN(e)||(i=e)}let o=r?.get(`retry-after`);if(o&&!i){let e=parseFloat(o);i=Number.isNaN(e)?Date.parse(o)-Date.now():e*1e3}if(i===void 0){let n=e.maxRetries??this.maxRetries;i=this.calculateDefaultRetryTimeoutMillis(t,n)}return await Ae(i),this.makeRequest(e,t-1,n)}calculateDefaultRetryTimeoutMillis(e,t){let n=t-e;return Math.min(.5*2**n,8)*(1-Math.random()*.25)*1e3}async buildRequest(e,{retryCount:t=0}={}){let n={...e},{method:r,path:i,query:a,defaultBaseURL:o}=n,s=this.buildURL(i,a,o);`timeout`in n&&Oe(`timeout`,n.timeout),n.timeout=n.timeout??this.timeout;let{bodyHeaders:c,body:l,isStreamingBody:u}=this.buildBody({options:n});return u&&(e.__metadata={...e.__metadata,hasStreamingBody:!0}),{req:{method:r,headers:await this.buildHeaders({options:e,method:r,bodyHeaders:c,retryCount:t}),...n.signal&&{signal:n.signal},...globalThis.ReadableStream&&l instanceof globalThis.ReadableStream&&{duplex:`half`},...l&&{body:l},...this.fetchOptions??{},...n.fetchOptions??{}},url:s,timeout:n.timeout}}async buildHeaders({options:e,method:t,bodyHeaders:n,retryCount:r}){let i={};this.idempotencyHeader&&t!==`get`&&(e.idempotencyKey||=this.defaultIdempotencyKey(),i[this.idempotencyHeader]=e.idempotencyKey);let a=J([i,{Accept:`application/json`,"User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(r),...e.timeout?{"X-Stainless-Timeout":String(Math.trunc(e.timeout/1e3))}:{},...ze(),"OpenAI-Organization":this.organization,"OpenAI-Project":this.project},await this.authHeaders(e,e.__security??{bearerAuth:!0}),this._options.defaultHeaders,n,e.headers]);return this.validateHeaders(a,e.__security??{bearerAuth:!0}),a.values}_makeAbort(e){return()=>e.abort()}buildBody({options:{body:e,headers:t}}){if(!e)return{bodyHeaders:void 0,body:void 0,isStreamingBody:!1};let n=J([t]),r=globalThis.ReadableStream!==void 0&&e instanceof globalThis.ReadableStream,i=!r&&(typeof e==`string`||e instanceof ArrayBuffer||ArrayBuffer.isView(e)||globalThis.Blob!==void 0&&e instanceof globalThis.Blob||e instanceof URLSearchParams||e instanceof FormData);return ArrayBuffer.isView(e)||e instanceof ArrayBuffer||e instanceof DataView||typeof e==`string`&&n.values.has(`content-type`)||globalThis.Blob&&e instanceof globalThis.Blob||e instanceof FormData||e instanceof URLSearchParams||r?{bodyHeaders:void 0,body:e,isStreamingBody:!i}:typeof e==`object`&&(Symbol.asyncIterator in e||Symbol.iterator in e&&`next`in e&&typeof e.next==`function`)?{bodyHeaders:void 0,body:He(e),isStreamingBody:!0}:typeof e==`object`&&n.values.get(`content-type`)===`application/x-www-form-urlencoded`?{bodyHeaders:{"content-type":`application/x-www-form-urlencoded`},body:this.stringifyQuery(e),isStreamingBody:!1}:{...S(this,La,`f`).call(this,{body:e,headers:n}),isStreamingBody:!1}}};Ia=$,La=new WeakMap,Fa=new WeakSet,Ra=function(){return this.baseURL!==`https://api.openai.com/v1`},$.OpenAI=Ia,$.DEFAULT_TIMEOUT=6e5,$.OpenAIError=T,$.APIError=E,$.APIConnectionError=oe,$.APIConnectionTimeoutError=se,$.APIUserAbortError=D,$.NotFoundError=de,$.ConflictError=fe,$.RateLimitError=me,$.BadRequestError=ce,$.AuthenticationError=le,$.InternalServerError=he,$.PermissionDeniedError=ue,$.UnprocessableEntityError=pe,$.InvalidWebhookSignatureError=ve,$.toFile=nn,$.Completions=Ei,$.Chat=dr,$.Embeddings=Mi,$.Files=Ii,$.Images=qi,$.Audio=Wr,$.Moderations=Yi,$.Models=Ji,$.FineTuning=Wi,$.Graders=Ki,$.VectorStores=ka,$.Webhooks=Pa,$.Beta=Ti,$.Batches=Gr,$.Uploads=Ta,$.Admin=Rr,$.Responses=ya,$.Realtime=Qi,$.Conversations=ji,$.Evals=Fi,$.Containers=ki,$.Skills=Ca,$.Videos=Aa;function Ba(e){if(Va(e))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(...) } });`}function Va(e){let t=e;for(let e=0;e<8&&t&&typeof t==`object`;e++){let e=t;if(e.code===`UND_ERR_INVALID_ARG`&&typeof e.message==`string`&&e.message.includes(`invalid onRequestStart method`))return!0;t=e.cause}return!1}var Ha=4e3;function Ua(e){if(!(e instanceof Error))return{message:Za(e),messageCarriesBody:!1};let t=e,n=Wa(t),r=Ga(t),i=r===void 0||e.message.includes(r);return{status:n,body:r,message:e.message,messageCarriesBody:i}}function Wa(e){if(typeof e.statusCode==`number`)return e.statusCode;if(typeof e.status==`number`)return e.status;if(typeof e.$metadata?.httpStatusCode==`number`)return e.$metadata.httpStatusCode;if(typeof e.$response?.statusCode==`number`)return e.$response.statusCode}function Ga(e){let t=Ka(e);if(t===void 0)return;let n=t.trim();if(n.length!==0)return Xa(n,Ha)}function Ka(e){if(typeof e.body==`string`)return e.body;if(Ja(e.error))return Za(e.error);let t=e.$response?.body;if(typeof t==`string`)return t;if(!qa(t)&&Ja(t))return Za(t)}function qa(e){return typeof e==`object`&&!!e&&`pipe`in e&&typeof e.pipe==`function`}function Ja(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==Object.prototype&&t!==null?!1:Object.keys(e).length>0}function Ya(e,t){return e.messageCarriesBody||e.status===void 0||e.body===void 0?t!==void 0&&e.status!==void 0?`${t} (${e.status}): ${e.message}`:e.message:t===void 0?`${e.status}: ${e.body}`:`${t} (${e.status}): ${e.body}`}function Xa(e,t){return e.length<=t?e:`${e.slice(0,t)}... [truncated ${e.length-t} chars]`}function Za(e){try{let t=JSON.stringify(e);return t===void 0?String(e):t}catch{return String(e)}}function Qa(e){let t=3735928559,n=1103547991;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);t=Math.imul(t^i,2654435761),n=Math.imul(n^i,1597334677)}return t=Math.imul(t^t>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),n=Math.imul(n^n>>>16,2246822507)^Math.imul(t^t>>>13,3266489909),(n>>>0).toString(36)+(t>>>0).toString(36)}function $a(e){if(e===void 0)return;let t=Array.from(e);return t.length<=64?e:t.slice(0,64).join(``)}function eo(e,t){if(!e)return!1;let n=t.toLowerCase();for(let[t,r]of Object.entries(e))if(t.toLowerCase()===n&&r!==null&&r.trim().length>0)return!0;return!1}function to(e,t,n){if(t)return t;if(eo(n,`authorization`)||eo(n,`cf-aig-authorization`))return`unused`;throw Error(`No API key for provider: ${e}`)}function no(e){for(let t of e)if(t.role===`toolResult`||t.role===`assistant`&&t.content.some(e=>e.type===`toolCall`))return!0;return!1}function ro(e){return e.type===`text`}function io(e){return e.type===`thinking`}function ao(e){return e.type===`toolCall`}function oo(e){return e.type===`image`}function so(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function co(e){return(e.id===void 0||e.id===null||typeof e.id==`string`)&&(e.format===void 0||typeof e.format==`string`)&&(e.index===void 0||typeof e.index==`number`)}function lo(e){if(!so(e)||!co(e))return!1;switch(e.type){case`reasoning.summary`:return typeof e.summary==`string`;case`reasoning.encrypted`:return typeof e.data==`string`;case`reasoning.text`:return typeof e.text==`string`&&(e.signature===void 0||e.signature===null||typeof e.signature==`string`);default:return!1}}function uo(e){if(e)try{let t=JSON.parse(e);return Array.isArray(t)&&t.length>0&&t.every(lo)?t:void 0}catch{return}}function fo(e){if(e)try{let t=JSON.parse(e);return lo(t)&&t.type===`reasoning.encrypted`&&typeof t.id==`string`&&t.id.length>0&&t.data.length>0?t:void 0}catch{return}}function po(e,t){e.id??=t.id,e.format||=t.format,e.index??=t.index}function mo(e,t){let n=e[e.length-1];if(t.type===`reasoning.text`&&n?.type===`reasoning.text`){n.text+=t.text,n.signature||=t.signature,po(n,t);return}if(t.type===`reasoning.summary`&&n?.type===`reasoning.summary`){n.summary+=t.summary,po(n,t);return}e.push({...t})}var ho=[`reasoning`,`reasoning_content`,`reasoning_text`];function go(e){return ho.includes(e)}function _o(e,t){return e||(c(`PI_CACHE_RETENTION`,t)===`long`?`long`:`short`)}var vo=(t,n,r)=>{let i=new s,o=a(n,zo(t).supportsMidConvoSystemMessages);return(async()=>{let n={role:`assistant`,content:[],api:t.api,provider:t.provider,model:t.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`pending`,timestamp:Date.now()},a,s=e=>{a!==void 0&&(e.thinkingSignature=JSON.stringify(a))};try{let c=to(t.provider,r?.apiKey,r?.headers),l=zo(t),d=re(e(o.messages),l.supportsOpenAIGrammarTools),f=_o(r?.cacheRetention,r?.env),p=f===`none`?void 0:r?.sessionId,h=bo(t,o,c,r?.headers,r?.fetch,p,l),ee=xo(t,o,r,l,f,d),_=await r?.onPayload?.(ee,t);_!==void 0&&(ee=_);let v={...r?.signal?{signal:r.signal}:{},...r?.timeoutMs===void 0?{}:{timeout:r.timeoutMs},maxRetries:0},{data:te,response:ne}=await m(()=>h.chat.completions.create(ee,v).withResponse(),{maxRetries:r?.maxRetries,maxRetryDelayMs:r?.maxRetryDelayMs,signal:r?.signal});await r?.onResponse?.({status:ne.status,headers:ie(ne.headers)},t),i.push({type:`start`,partial:n});let y=null,b=null,x=!1,S=new Map,ae=new Map,C=n.content,w=e=>C.indexOf(e),T=e=>{let t=e.customInput?.property;if(t===void 0)return``;let n=e.arguments[t];return typeof n==`string`?n:``},E=(e,t,n)=>{let r=e.customInput;if(!r)return;let i=g(r.jsonBuffer,r.property,t,n);return e.arguments={[r.property]:t},i},D=e=>{let t=w(e);if(t!==-1){if(e.type===`text`)i.push({type:`text_end`,contentIndex:t,content:e.text,partial:n});else if(e.type===`thinking`)s(e),i.push({type:`thinking_end`,contentIndex:t,content:e.thinking,partial:n});else if(e.type===`toolCall`){if(e.customInput){let r=E(e,T(e),!0);r!==void 0&&i.push({type:`toolcall_delta`,contentIndex:t,delta:r,partial:n})}else e.arguments=u(e.partialArgs);delete e.partialArgs,delete e.customInput,delete e.streamIndex,i.push({type:`toolcall_end`,contentIndex:t,toolCall:e,partial:n})}}},oe=()=>(y||(y={type:`text`,text:``},C.push(y),i.push({type:`text_start`,contentIndex:w(y),partial:n})),y),se=e=>(b||(b={type:`thinking`,thinking:``,thinkingSignature:e},C.push(b),i.push({type:`thinking_start`,contentIndex:w(b),partial:n})),b),ce=e=>{let t=typeof e.index==`number`?e.index:void 0,r=e.function?.name??e.custom?.name??``,a=t===void 0?void 0:S.get(t);if(!a&&e.id&&(a=ae.get(e.id)),!a){let o=e.custom&&!e.function?d.get(r)??`input`:void 0,s=o!==void 0;a={type:`toolCall`,id:e.id||``,name:r,arguments:s?{[o]:``}:{},partialArgs:s?void 0:``,customInput:s?{property:o,jsonBuffer:{input:``,started:!1,closed:!1}}:void 0,streamIndex:t},t!==void 0&&S.set(t,a),e.id&&ae.set(e.id,a),C.push(a),i.push({type:`toolcall_start`,contentIndex:w(a),partial:n})}if(t!==void 0&&a.streamIndex===void 0&&(a.streamIndex=t,S.set(t,a)),e.id&&ae.set(e.id,a),!a.name&&r&&(a.name=r),e.custom&&!e.function&&!a.customInput){let e=d.get(a.name)??`input`;a.arguments={[e]:``},a.customInput={property:e,jsonBuffer:{input:``,started:!1,closed:!1}},delete a.partialArgs}return a};for await(let e of te){if(!e||typeof e!=`object`)continue;n.responseId||=e.id,typeof e.model==`string`&&e.model.length>0&&e.model!==t.id&&(n.responseModel||=e.model),e.usage&&(n.usage=Io(e.usage,t));let r=Array.isArray(e.choices)?e.choices[0]:void 0;if(r){if(!e.usage&&r.usage&&(n.usage=Io(r.usage,t)),r.finish_reason){n.rawStopReason=r.finish_reason;let e=Lo(r.finish_reason);n.stopReason=e.stopReason,e.errorMessage&&(n.errorMessage=e.errorMessage),x=!0}if(r.delta){if(r.delta.content!==null&&r.delta.content!==void 0&&r.delta.content.length>0){let e=oe();e.text+=r.delta.content,i.push({type:`text_delta`,contentIndex:w(e),delta:r.delta.content,partial:n})}let e=[`reasoning_content`,`reasoning`,`reasoning_text`],o=r.delta,s=null;for(let t of e){let e=o[t];if(typeof e==`string`&&e.length>0){s=t;break}}if(s){let e=o[s];if(typeof e==`string`&&e.length>0){let r=se(t.provider===`opencode-go`&&s===`reasoning`?`reasoning_content`:s);r.thinking+=e,i.push({type:`thinking_delta`,contentIndex:w(r),delta:e,partial:n})}}if(r?.delta?.tool_calls)for(let e of r.delta.tool_calls){let t=ce(e);!t.id&&e.id&&(t.id=e.id,ae.set(e.id,t));let r=e.function?.name??e.custom?.name;!t.name&&r&&(t.name=r);let a=``;e.function?.arguments?(a=e.function.arguments,t.partialArgs=(t.partialArgs??``)+e.function.arguments,t.arguments=u(t.partialArgs)):e.custom?.input&&(a=E(t,T(t)+e.custom.input,!1)??``),i.push({type:`toolcall_delta`,contentIndex:w(t),delta:a,partial:n})}let c=r.delta.reasoning_details;if(Array.isArray(c))for(let e of c)lo(e)&&(se(``),a??=[],mo(a,e))}}}for(let e of C)D(e);if(r?.signal?.aborted||n.stopReason===`aborted`)throw Error(`Request was aborted`);if(!x&&!l.supportsFinishReason&&(n.stopReason=n.content.some(e=>e.type===`toolCall`)?`toolUse`:`stop`),n.stopReason===`error`)throw Error(n.errorMessage||`Provider returned an error stop reason`);if(l.supportsFinishReason&&!x||n.stopReason===`pending`)throw Error(`Stream ended without finish_reason`);i.push({type:`done`,reason:n.stopReason,message:n}),i.end()}catch(e){for(let e of n.content)e.type===`thinking`&&s(e),delete e.index,delete e.partialArgs,delete e.customInput,delete e.streamIndex;n.stopReason=r?.signal?.aborted?`aborted`:`error`,n.errorMessage=Ya(Ua(e));let t=e?.error?.metadata?.raw;t&&!n.errorMessage.includes(String(t))&&(n.errorMessage+=`\n${t}`),i.push({type:`error`,reason:n.stopReason,error:n}),i.end()}})(),i},yo=(e,t,n)=>{to(e.provider,n?.apiKey,n?.headers);let i={...te(e,t,n,n?.apiKey),toolChoice:n?.toolChoice},a=n?.reasoning?r(e,n.reasoning):void 0,o=a===`off`?void 0:a;return vo(e,t,{...i,reasoningEffort:o,thinkingBudgets:n?.thinkingBudgets})};function bo(e,t,n,r,i,a,o=zo(e)){let s={"User-Agent":b(),...e.headers};if(e.provider===`github-copilot`){let e=d(t.messages),n=ne({messages:t.messages,hasImages:e});Object.assign(s,n)}return a&&o.sendSessionAffinityHeaders&&(o.sessionAffinityFormat===`openrouter`?s[`x-session-id`]=a:(o.sessionAffinityFormat===`openai`&&(s.session_id=a),s[`x-client-request-id`]=a,s[`x-session-affinity`]=a)),r&&Object.assign(s,r),new $({apiKey:n,baseURL:e.baseUrl,dangerouslyAllowBrowser:!0,fetch:i,defaultHeaders:s})}function xo(t,n,r,a=zo(t),o=_o(r?.cacheRetention,r?.env),s=re(e(n.messages),a.supportsOpenAIGrammarTools)){let c=i(n.messages,a.supportsMidConvoSystemMessages===!0&&a.supportsMidConvoToolAdditions===!0),l=Po(t,n,a,{grammarToolInputProperties:s}),u=Eo(a,o),d={model:t.id,messages:l,stream:!0,prompt_cache_key:t.baseUrl.includes(`api.openai.com`)&&o!==`none`||o===`long`&&a.supportsLongCacheRetention?$a(r?.sessionId):void 0,prompt_cache_retention:o===`long`&&a.supportsLongCacheRetention?`24h`:void 0};a.supportsUsageInStreaming!==!1&&(d.stream_options={include_usage:!0}),a.supportsStore&&(d.store=!1),r?.maxTokens&&(a.maxTokensField===`max_tokens`?d.max_tokens=r.maxTokens:d.max_completion_tokens=r.maxTokens),r?.temperature!==void 0&&(d.temperature=r.temperature),c.requestTools.length>0?(d.tools=Fo(c.requestTools,a),a.zaiToolStream&&(d.tool_stream=!0)):no(n.messages)&&(d.tools=[]),u&&Do(l,d.tools,u),r?.toolChoice&&(d.tool_choice=r.toolChoice),a.vllmPriority!==void 0&&(d.priority=a.vllmPriority);let f=So(a),p=Co(t,r,d);if(a.thinkingFormat===`zai`&&t.reasoning){let e=d;if(e.thinking=r?.reasoningEffort?{type:`enabled`,clear_thinking:!1}:{type:`disabled`},r?.reasoningEffort&&a.supportsReasoningEffort){let n=t.thinkingLevelMap?.[r.reasoningEffort],i=n===void 0?r.reasoningEffort:n;typeof i==`string`&&(e.reasoning_effort=i)}}else if(a.thinkingFormat===`qwen`&&t.reasoning){if(d.enable_thinking=!!r?.reasoningEffort,r?.reasoningEffort&&a.supportsReasoningEffort){let e=t.thinkingLevelMap?.[r.reasoningEffort]??r.reasoningEffort;typeof e==`string`&&(d.reasoning_effort=e)}}else if(a.thinkingFormat===`qwen-chat-template`&&t.reasoning)d.chat_template_kwargs={enable_thinking:!!r?.reasoningEffort,preserve_thinking:!0};else if(a.thinkingFormat===`chat-template`&&t.reasoning){let e=wo(t,r,a.chatTemplateKwargs,p);e&&(d.chat_template_kwargs=e)}else if(a.thinkingFormat===`baseten`&&t.reasoning){let e=d,n=wo(t,r,a.chatTemplateArgs,p);if(n&&(e.chat_template_args=n),a.supportsReasoningEffort){let n=r?.reasoningEffort,i=n?t.thinkingLevelMap?.[n]:t.thinkingLevelMap?.off,a=i===void 0?n:i;typeof a==`string`&&(e.reasoning_effort=a)}}else if(a.thinkingFormat===`deepseek`&&t.reasoning)r?.reasoningEffort?d.thinking={type:`enabled`}:t.thinkingLevelMap?.off!==null&&(d.thinking={type:`disabled`}),r?.reasoningEffort&&a.supportsReasoningEffort&&(d.reasoning_effort=t.thinkingLevelMap?.[r.reasoningEffort]??r.reasoningEffort);else if(a.thinkingFormat===`openrouter`&&t.reasoning){let e=d;r?.reasoningEffort?e.reasoning={effort:t.thinkingLevelMap?.[r.reasoningEffort]??r.reasoningEffort}:t.thinkingLevelMap?.off!==null&&(e.reasoning={effort:t.thinkingLevelMap?.off??`none`})}else if(a.thinkingFormat===`ant-ling`&&t.reasoning&&r?.reasoningEffort){let e=t.thinkingLevelMap?.[r.reasoningEffort];typeof e==`string`&&(d.reasoning={effort:e})}else if(a.thinkingFormat===`together`&&t.reasoning){let e=d;e.reasoning={enabled:!!r?.reasoningEffort},r?.reasoningEffort&&a.supportsReasoningEffort&&(e.reasoning_effort=t.thinkingLevelMap?.[r.reasoningEffort]??r.reasoningEffort)}else if(a.thinkingFormat===`string-thinking`&&t.reasoning){let e=d;r?.reasoningEffort?e.thinking=t.thinkingLevelMap?.[r.reasoningEffort]??r.reasoningEffort:t.thinkingLevelMap?.off!==null&&(e.thinking=t.thinkingLevelMap?.off??`none`)}else if(r?.reasoningEffort&&t.reasoning&&a.supportsReasoningEffort)d.reasoning_effort=t.thinkingLevelMap?.[r.reasoningEffort]??r.reasoningEffort;else if(!r?.reasoningEffort&&t.reasoning&&a.supportsReasoningEffort){let e=t.thinkingLevelMap?.off;typeof e==`string`&&(d.reasoning_effort=e)}if(f&&p!==void 0&&Object.assign(d,{[f]:p}),t.compat?.openRouterRouting&&(d.provider=t.compat.openRouterRouting),t.compat?.vercelGatewayRouting){let e=t.compat.vercelGatewayRouting;if(e.only||e.order){let t={};e.only&&(t.only=e.only),e.order&&(t.order=e.order),d.providerOptions={gateway:t}}}return r?.samplingParams&&Object.assign(d,r.samplingParams),d}function So(e){if(e.thinkingTokenBudgetField)return e.thinkingTokenBudgetField;if(e.supportsThinkingTokenBudget)return`thinking_token_budget`}function Co(e,t,n){if(!t?.reasoningEffort||!e.reasoning)return;let r=n.max_tokens??n.max_completion_tokens??e.maxTokens,i=l(_(t.reasoningEffort,t.thinkingBudgets),r);return i>0?i:void 0}function wo(e,t,n,r){let i={};for(let[a,o]of Object.entries(n)){let n=To(e,t,o,r);n!==void 0&&(i[a]=n)}return Object.keys(i).length>0?i:void 0}function To(e,t,n,r){if(typeof n!=`object`||!n)return n;let i=t?.reasoningEffort;if(!i&&n.omitWhenOff)return;if(n.$var===`thinking.enabled`)return!!i;if(n.$var===`thinking.budget`)return r;let a=i?e.thinkingLevelMap?.[i]:e.thinkingLevelMap?.off;return a===void 0?i:typeof a==`string`?a:void 0}function Eo(e,t){if(e.cacheControlFormat!==`anthropic`||t===`none`)return;let n=t===`long`&&e.supportsLongCacheRetention?`1h`:void 0;return{type:`ephemeral`,...n?{ttl:n}:{}}}function Do(e,t,n){Oo(e,n),Ao(t,n),ko(e,n)}function Oo(e,t){for(let n of e)if(n.role===`system`||n.role===`developer`){jo(n,t);return}}function ko(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if((r.role===`user`||r.role===`assistant`||r.role===`tool`)&&Mo(r,t))return}}function Ao(e,t){if(!e||e.length===0)return;let n=e[e.length-1];n.cache_control=t}function jo(e,t){return No(e,t)}function Mo(e,t){return e.role===`user`||e.role===`assistant`||e.role===`tool`?No(e,t):!1}function No(e,t){let n=e.content;if(typeof n==`string`)return n.length!==0&&(e.content=[{type:`text`,text:n,cache_control:t}],!0);if(!Array.isArray(n))return!1;for(let e=n.length-1;e>=0;e--){let r=n[e];if(r?.type===`text`){let e=r;return e.cache_control=t,!0}}return!1}function Po(e,n,r,s){let c=a(n,r.supportsMidConvoSystemMessages),l=[],u=t=>{if(t.includes(`|`)){let e=t.indexOf(`|`),n=t.slice(0,e).replace(/[^a-zA-Z0-9_-]/g,`_`),r=t.slice(e+1).replace(/[^a-zA-Z0-9_-]/g,`_`),i=r.length>0?`${n}_${r}`:n;if(i.length<=40)return i;let a=Qa(t).slice(0,8);return`${n.slice(0,Math.max(1,40-a.length-1))}_${a}`}return e.provider===`openai`&&t.length>40?t.slice(0,40):t},d=y(c.messages,e,e=>u(e)),p=i(c.messages,r.supportsMidConvoSystemMessages===!0&&r.supportsMidConvoToolAdditions===!0),m=e.reasoning&&r.supportsDeveloperRole?`developer`:`system`,g=null;for(let n=0;n<d.length;n++){let i=d[n];if(r.requiresAssistantAfterToolResult&&g===`toolResult`&&i.role===`user`&&l.push({role:`assistant`,content:`I have processed the tool results.`}),i.role===`system`){let e=n>0&&p.anchorsAdditions?i.toolsAdded??[]:[];if(e.length>0){let t={role:`system`,tools:Fo(e,r)};l.push(t)}let a=n===0?o(i):t(i);a.length>0&&l.push({role:m,content:h(a)})}else if(i.role===`user`){if(typeof i.content==`string`)l.push({role:`user`,content:h(i.content)});else{let e=i.content.filter(e=>e.type!==`text`||e.text.length>0).map(e=>e.type===`text`?{type:`text`,text:h(e.text)}:{type:`image_url`,image_url:{url:`data:${e.mimeType};base64,${e.data}`}});if(e.length===0)continue;l.push({role:`user`,content:e})}}else if(i.role===`assistant`){let t={role:`assistant`,content:r.requiresAssistantAfterToolResult?``:null},n=i.content.filter(ro).filter(e=>e.text.trim().length>0).map(e=>({type:`text`,text:h(e.text)})),a=n.map(e=>e.text).join(``),o=i.content.filter(io),c=i.content.filter(ao),u=o.map(e=>uo(e.thinkingSignature)).find(e=>e!==void 0),d=c.map(e=>fo(e.thoughtSignature)).filter(e=>e!==void 0),p=u??(d.length>0?d:void 0),m=o.filter(e=>e.thinking.trim().length>0);if(m.length>0){if(r.requiresThinkingAsText)t.content=[{type:`text`,text:m.map(e=>h(e.thinking)).join(`
|
|
17
|
+
`)){let n=t.indexOf(`:`);n>=0&&(e[t.substring(0,n).trim()]=t.substring(n+1).trim())}c.defaultHeaders=J([e,c.defaultHeaders])}this._options=c,o&&(this._workloadIdentityAuth=new Bt(o,this.fetch)),this.apiKey=typeof t==`string`?t:null,this.adminAPIKey=n,this.organization=r,this.project=i,this.webhookSecret=a}withOptions(e){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,...e})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:e,nulls:t},n={bearerAuth:!0,adminAPIKeyAuth:!0}){if(!(e.get(`authorization`)||e.get(`api-key`))&&!(t.has(`authorization`)||t.has(`api-key`))&&!(this._workloadIdentityAuth&&n.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(e,t={bearerAuth:!0,adminAPIKeyAuth:!0}){return J([t.bearerAuth?await this.bearerAuth(e):null,t.adminAPIKeyAuth?await this.adminAPIKeyAuth(e):null])}async bearerAuth(e){if(this._workloadIdentityAuth)return J([{Authorization:`Bearer ${await this._workloadIdentityAuth.getToken()}`}]);if(this.apiKey!=null)return J([{Authorization:`Bearer ${this.apiKey}`}])}async adminAPIKeyAuth(e){if(this.adminAPIKey!=null)return J([{Authorization:`Bearer ${this.adminAPIKey}`}])}stringifyQuery(e){return ct(e)}getUserAgent(){return`${this.constructor.name}/JS ${je}`}defaultIdempotencyKey(){return`stainless-node-retry-${ae()}`}makeStatusError(e,t,n,r){return E.generate(e,t,n,r)}async _callApiKey(){let e=this._options.apiKey;if(typeof e!=`function`)return!1;let t;try{t=await e()}catch(e){throw e instanceof T?e:new T(`Failed to get token from 'apiKey' function: ${e.message}`,{cause:e})}if(typeof t!=`string`||!t)throw new T(`Expected 'apiKey' function argument to return a string but it returned ${t}`);return this.apiKey=t,!0}buildURL(e,t,n){let r=!S(this,Fa,`m`,Ra).call(this)&&n||this.baseURL,i=Se(e)?new URL(e):new URL(r+(r.endsWith(`/`)&&e.startsWith(`/`)?e.slice(1):e)),a=this.defaultQuery(),o=Object.fromEntries(i.searchParams);return(!Te(a)||!Te(o))&&(t={...o,...a,...t}),typeof t==`object`&&t&&!Array.isArray(t)&&(i.search=this.stringifyQuery(t)),i.toString()}async prepareOptions(e){(e.__security??{bearerAuth:!0}).bearerAuth&&await this._callApiKey()}async prepareRequest(e,{url:t,options:n}){}get(e,t){return this.methodRequest(`get`,e,t)}post(e,t){return this.methodRequest(`post`,e,t)}patch(e,t){return this.methodRequest(`patch`,e,t)}put(e,t){return this.methodRequest(`put`,e,t)}delete(e,t){return this.methodRequest(`delete`,e,t)}methodRequest(e,t,n){return this.request(Promise.resolve(n).then(n=>({method:e,path:t,...n})))}request(e,t=null){return new Nt(this,this.makeRequest(e,t,void 0))}async makeRequest(e,t,n){let r=await e,i=r.maxRetries??this.maxRetries;t??=i,await this.prepareOptions(r);let{req:a,url:o,timeout:s}=await this.buildRequest(r,{retryCount:i-t});await this.prepareRequest(a,{url:o,options:r});let c=`log_`+(Math.random()*(1<<24)|0).toString(16).padStart(6,`0`),l=n===void 0?``:`, retryOf: ${n}`,u=Date.now();if(N(this).debug(`[${c}] sending request`,Ct({retryOfRequestLogID:n,method:r.method,url:o,options:r,headers:a.headers})),r.signal?.aborted)throw new D;let d=r.__security??{bearerAuth:!0},f=new AbortController,p=await this.fetchWithAuth(o,a,s,f,d).catch(w),m=Date.now();if(p instanceof globalThis.Error){let e=`retrying, ${t} attempts remaining`;if(r.signal?.aborted)throw new D;let i=C(p)||/timed? ?out/i.test(String(p)+(`cause`in p?String(p.cause):``));if(t)return N(this).info(`[${c}] connection ${i?`timed out`:`failed`} - ${e}`),N(this).debug(`[${c}] connection ${i?`timed out`:`failed`} (${e})`,Ct({retryOfRequestLogID:n,url:o,durationMs:m-u,message:p.message})),this.retryRequest(r,t,n??c);throw N(this).info(`[${c}] connection ${i?`timed out`:`failed`} - error; no more retries left`),N(this).debug(`[${c}] connection ${i?`timed out`:`failed`} (error; no more retries left)`,Ct({retryOfRequestLogID:n,url:o,durationMs:m-u,message:p.message})),p instanceof ye||p instanceof be?p:i?new se:new oe({message:Ba(p),cause:p})}let h=`[${c}${l}${[...p.headers.entries()].filter(([e])=>e===`x-request-id`).map(([e,t])=>`, `+e+`: `+JSON.stringify(t)).join(``)}] ${a.method} ${o} ${p.ok?`succeeded`:`failed`} with status ${p.status} in ${m-u}ms`;if(!p.ok){if(p.status===401&&this._workloadIdentityAuth&&d.bearerAuth&&!r.__metadata?.hasStreamingBody&&!r.__metadata?.workloadIdentityTokenRefreshed)return await We(p.body),this._workloadIdentityAuth.invalidateToken(),this.makeRequest({...r,__metadata:{...r.__metadata,workloadIdentityTokenRefreshed:!0}},t,n??c);let e=await this.shouldRetry(p);if(t&&e){let e=`retrying, ${t} attempts remaining`;return await We(p.body),N(this).info(`${h} - ${e}`),N(this).debug(`[${c}] response error (${e})`,Ct({retryOfRequestLogID:n,url:p.url,status:p.status,headers:p.headers,durationMs:m-u})),this.retryRequest(r,t,n??c,p.headers)}let i=e?`error; no more retries left`:`error; not retryable`;N(this).info(`${h} - ${i}`);let a=await p.text().catch(e=>w(e).message),o=ke(a),s=o?void 0:a;throw N(this).debug(`[${c}] response error (${i})`,Ct({retryOfRequestLogID:n,url:p.url,status:p.status,headers:p.headers,message:s,durationMs:Date.now()-u})),this.makeStatusError(p.status,o,s,p.headers)}return N(this).info(h),N(this).debug(`[${c}] response start`,Ct({retryOfRequestLogID:n,url:p.url,status:p.status,headers:p.headers,durationMs:m-u})),{response:p,options:r,controller:f,requestLogID:c,retryOfRequestLogID:n,startTime:u}}getAPIList(e,t,n){return this.requestAPIList(t,n&&`then`in n?n.then(t=>({method:`get`,path:e,...t})):{method:`get`,path:e,...n})}requestAPIList(e,t){let n=this.makeRequest(t,null,void 0);return new It(this,n,e)}async fetchWithAuth(e,t,n,r,i={bearerAuth:!0,adminAPIKeyAuth:!0}){if(this._workloadIdentityAuth&&i.bearerAuth){let e=t.headers,n=e.get(`Authorization`);if(!n||n===`Bearer ${za}`){let t=await this._workloadIdentityAuth.getToken();e.set(`Authorization`,`Bearer ${t}`)}}return await this.fetchWithTimeout(e,t,n,r)}async fetchWithTimeout(e,t,n,r){let{signal:i,method:a,...o}=t||{},s=this._makeAbort(r);i&&i.addEventListener(`abort`,s,{once:!0});let c=setTimeout(s,n),l=globalThis.ReadableStream&&o.body instanceof globalThis.ReadableStream||typeof o.body==`object`&&o.body!==null&&Symbol.asyncIterator in o.body,u={signal:r.signal,...l?{duplex:`half`}:{},method:`GET`,...o};a&&(u.method=a.toUpperCase());try{return await this.fetch.call(void 0,e,u)}finally{clearTimeout(c)}}async shouldRetry(e){let t=e.headers.get(`x-should-retry`);return t===`true`?!0:t===`false`?!1:e.status===408||e.status===409||e.status===429||e.status>=500}async retryRequest(e,t,n,r){let i,a=r?.get(`retry-after-ms`);if(a){let e=parseFloat(a);Number.isNaN(e)||(i=e)}let o=r?.get(`retry-after`);if(o&&!i){let e=parseFloat(o);i=Number.isNaN(e)?Date.parse(o)-Date.now():e*1e3}if(i===void 0){let n=e.maxRetries??this.maxRetries;i=this.calculateDefaultRetryTimeoutMillis(t,n)}return await Ae(i),this.makeRequest(e,t-1,n)}calculateDefaultRetryTimeoutMillis(e,t){let n=t-e;return Math.min(.5*2**n,8)*(1-Math.random()*.25)*1e3}async buildRequest(e,{retryCount:t=0}={}){let n={...e},{method:r,path:i,query:a,defaultBaseURL:o}=n,s=this.buildURL(i,a,o);`timeout`in n&&Oe(`timeout`,n.timeout),n.timeout=n.timeout??this.timeout;let{bodyHeaders:c,body:l,isStreamingBody:u}=this.buildBody({options:n});return u&&(e.__metadata={...e.__metadata,hasStreamingBody:!0}),{req:{method:r,headers:await this.buildHeaders({options:e,method:r,bodyHeaders:c,retryCount:t}),...n.signal&&{signal:n.signal},...globalThis.ReadableStream&&l instanceof globalThis.ReadableStream&&{duplex:`half`},...l&&{body:l},...this.fetchOptions??{},...n.fetchOptions??{}},url:s,timeout:n.timeout}}async buildHeaders({options:e,method:t,bodyHeaders:n,retryCount:r}){let i={};this.idempotencyHeader&&t!==`get`&&(e.idempotencyKey||=this.defaultIdempotencyKey(),i[this.idempotencyHeader]=e.idempotencyKey);let a=J([i,{Accept:`application/json`,"User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(r),...e.timeout?{"X-Stainless-Timeout":String(Math.trunc(e.timeout/1e3))}:{},...ze(),"OpenAI-Organization":this.organization,"OpenAI-Project":this.project},await this.authHeaders(e,e.__security??{bearerAuth:!0}),this._options.defaultHeaders,n,e.headers]);return this.validateHeaders(a,e.__security??{bearerAuth:!0}),a.values}_makeAbort(e){return()=>e.abort()}buildBody({options:{body:e,headers:t}}){if(!e)return{bodyHeaders:void 0,body:void 0,isStreamingBody:!1};let n=J([t]),r=globalThis.ReadableStream!==void 0&&e instanceof globalThis.ReadableStream,i=!r&&(typeof e==`string`||e instanceof ArrayBuffer||ArrayBuffer.isView(e)||globalThis.Blob!==void 0&&e instanceof globalThis.Blob||e instanceof URLSearchParams||e instanceof FormData);return ArrayBuffer.isView(e)||e instanceof ArrayBuffer||e instanceof DataView||typeof e==`string`&&n.values.has(`content-type`)||globalThis.Blob&&e instanceof globalThis.Blob||e instanceof FormData||e instanceof URLSearchParams||r?{bodyHeaders:void 0,body:e,isStreamingBody:!i}:typeof e==`object`&&(Symbol.asyncIterator in e||Symbol.iterator in e&&`next`in e&&typeof e.next==`function`)?{bodyHeaders:void 0,body:He(e),isStreamingBody:!0}:typeof e==`object`&&n.values.get(`content-type`)===`application/x-www-form-urlencoded`?{bodyHeaders:{"content-type":`application/x-www-form-urlencoded`},body:this.stringifyQuery(e),isStreamingBody:!1}:{...S(this,La,`f`).call(this,{body:e,headers:n}),isStreamingBody:!1}}};Ia=$,La=new WeakMap,Fa=new WeakSet,Ra=function(){return this.baseURL!==`https://api.openai.com/v1`},$.OpenAI=Ia,$.DEFAULT_TIMEOUT=6e5,$.OpenAIError=T,$.APIError=E,$.APIConnectionError=oe,$.APIConnectionTimeoutError=se,$.APIUserAbortError=D,$.NotFoundError=de,$.ConflictError=fe,$.RateLimitError=me,$.BadRequestError=ce,$.AuthenticationError=le,$.InternalServerError=he,$.PermissionDeniedError=ue,$.UnprocessableEntityError=pe,$.InvalidWebhookSignatureError=ve,$.toFile=nn,$.Completions=Ei,$.Chat=dr,$.Embeddings=Mi,$.Files=Ii,$.Images=qi,$.Audio=Wr,$.Moderations=Yi,$.Models=Ji,$.FineTuning=Wi,$.Graders=Ki,$.VectorStores=ka,$.Webhooks=Pa,$.Beta=Ti,$.Batches=Gr,$.Uploads=Ta,$.Admin=Rr,$.Responses=ya,$.Realtime=Qi,$.Conversations=ji,$.Evals=Fi,$.Containers=ki,$.Skills=Ca,$.Videos=Aa;function Ba(e){if(Va(e))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(...) } });`}function Va(e){let t=e;for(let e=0;e<8&&t&&typeof t==`object`;e++){let e=t;if(e.code===`UND_ERR_INVALID_ARG`&&typeof e.message==`string`&&e.message.includes(`invalid onRequestStart method`))return!0;t=e.cause}return!1}var Ha=4e3;function Ua(e){if(!(e instanceof Error))return{message:Za(e),messageCarriesBody:!1};let t=e,n=Wa(t),r=Ga(t),i=r===void 0||e.message.includes(r);return{status:n,body:r,message:e.message,messageCarriesBody:i}}function Wa(e){if(typeof e.statusCode==`number`)return e.statusCode;if(typeof e.status==`number`)return e.status;if(typeof e.$metadata?.httpStatusCode==`number`)return e.$metadata.httpStatusCode;if(typeof e.$response?.statusCode==`number`)return e.$response.statusCode}function Ga(e){let t=Ka(e);if(t===void 0)return;let n=t.trim();if(n.length!==0)return Xa(n,Ha)}function Ka(e){if(typeof e.body==`string`)return e.body;if(Ja(e.error))return Za(e.error);let t=e.$response?.body;if(typeof t==`string`)return t;if(!qa(t)&&Ja(t))return Za(t)}function qa(e){return typeof e==`object`&&!!e&&`pipe`in e&&typeof e.pipe==`function`}function Ja(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==Object.prototype&&t!==null?!1:Object.keys(e).length>0}function Ya(e,t){return e.messageCarriesBody||e.status===void 0||e.body===void 0?t!==void 0&&e.status!==void 0?`${t} (${e.status}): ${e.message}`:e.message:t===void 0?`${e.status}: ${e.body}`:`${t} (${e.status}): ${e.body}`}function Xa(e,t){return e.length<=t?e:`${e.slice(0,t)}... [truncated ${e.length-t} chars]`}function Za(e){try{let t=JSON.stringify(e);return t===void 0?String(e):t}catch{return String(e)}}function Qa(e){let t=3735928559,n=1103547991;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);t=Math.imul(t^i,2654435761),n=Math.imul(n^i,1597334677)}return t=Math.imul(t^t>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),n=Math.imul(n^n>>>16,2246822507)^Math.imul(t^t>>>13,3266489909),(n>>>0).toString(36)+(t>>>0).toString(36)}function $a(e){if(e===void 0)return;let t=Array.from(e);return t.length<=64?e:t.slice(0,64).join(``)}function eo(e,t){if(!e)return!1;let n=t.toLowerCase();for(let[t,r]of Object.entries(e))if(t.toLowerCase()===n&&r!==null&&r.trim().length>0)return!0;return!1}function to(e,t,n){if(t)return t;if(eo(n,`authorization`)||eo(n,`cf-aig-authorization`))return`unused`;throw Error(`No API key for provider: ${e}`)}function no(e){for(let t of e)if(t.role===`toolResult`||t.role===`assistant`&&t.content.some(e=>e.type===`toolCall`))return!0;return!1}function ro(e){return e.type===`text`}function io(e){return e.type===`thinking`}function ao(e){return e.type===`toolCall`}function oo(e){return e.type===`image`}function so(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function co(e){return(e.id===void 0||e.id===null||typeof e.id==`string`)&&(e.format===void 0||typeof e.format==`string`)&&(e.index===void 0||typeof e.index==`number`)}function lo(e){if(!so(e)||!co(e))return!1;switch(e.type){case`reasoning.summary`:return typeof e.summary==`string`;case`reasoning.encrypted`:return typeof e.data==`string`;case`reasoning.text`:return typeof e.text==`string`&&(e.signature===void 0||e.signature===null||typeof e.signature==`string`);default:return!1}}function uo(e){if(e)try{let t=JSON.parse(e);return Array.isArray(t)&&t.length>0&&t.every(lo)?t:void 0}catch{return}}function fo(e){if(e)try{let t=JSON.parse(e);return lo(t)&&t.type===`reasoning.encrypted`&&typeof t.id==`string`&&t.id.length>0&&t.data.length>0?t:void 0}catch{return}}function po(e,t){e.id??=t.id,e.format||=t.format,e.index??=t.index}function mo(e,t){let n=e[e.length-1];if(t.type===`reasoning.text`&&n?.type===`reasoning.text`){n.text+=t.text,n.signature||=t.signature,po(n,t);return}if(t.type===`reasoning.summary`&&n?.type===`reasoning.summary`){n.summary+=t.summary,po(n,t);return}e.push({...t})}var ho=[`reasoning`,`reasoning_content`,`reasoning_text`];function go(e){return ho.includes(e)}function _o(e,t){return e||(c(`PI_CACHE_RETENTION`,t)===`long`?`long`:`short`)}var vo=(e,t,i)=>{let a=new s,o=r(t,zo(e).supportsMidConvoSystemMessages);return(async()=>{let t={role:`assistant`,content:[],api:e.api,provider:e.provider,model:e.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`pending`,timestamp:Date.now()},r,s=e=>{r!==void 0&&(e.thinkingSignature=JSON.stringify(r))};try{let c=to(e.provider,i?.apiKey,i?.headers),l=zo(e),d=re(n(o.messages),l.supportsOpenAIGrammarTools),f=_o(i?.cacheRetention,i?.env),p=f===`none`?void 0:i?.sessionId,h=bo(e,o,c,i?.headers,i?.fetch,p,l),ee=xo(e,o,i,l,f,d),_=await i?.onPayload?.(ee,e);_!==void 0&&(ee=_);let v={...i?.signal?{signal:i.signal}:{},...i?.timeoutMs===void 0?{}:{timeout:i.timeoutMs},maxRetries:0},{data:te,response:ne}=await m(()=>h.chat.completions.create(ee,v).withResponse(),{maxRetries:i?.maxRetries,maxRetryDelayMs:i?.maxRetryDelayMs,signal:i?.signal});await i?.onResponse?.({status:ne.status,headers:ie(ne.headers)},e),a.push({type:`start`,partial:t});let y=null,b=null,x=!1,S=new Map,ae=new Map,C=t.content,w=e=>C.indexOf(e),T=e=>{let t=e.customInput?.property;if(t===void 0)return``;let n=e.arguments[t];return typeof n==`string`?n:``},E=(e,t,n)=>{let r=e.customInput;if(!r)return;let i=g(r.jsonBuffer,r.property,t,n);return e.arguments={[r.property]:t},i},D=e=>{let n=w(e);if(n!==-1){if(e.type===`text`)a.push({type:`text_end`,contentIndex:n,content:e.text,partial:t});else if(e.type===`thinking`)s(e),a.push({type:`thinking_end`,contentIndex:n,content:e.thinking,partial:t});else if(e.type===`toolCall`){if(e.customInput){let r=E(e,T(e),!0);r!==void 0&&a.push({type:`toolcall_delta`,contentIndex:n,delta:r,partial:t})}else e.arguments=u(e.partialArgs);delete e.partialArgs,delete e.customInput,delete e.streamIndex,a.push({type:`toolcall_end`,contentIndex:n,toolCall:e,partial:t})}}},oe=()=>(y||(y={type:`text`,text:``},C.push(y),a.push({type:`text_start`,contentIndex:w(y),partial:t})),y),se=e=>(b||(b={type:`thinking`,thinking:``,thinkingSignature:e},C.push(b),a.push({type:`thinking_start`,contentIndex:w(b),partial:t})),b),ce=e=>{let n=typeof e.index==`number`?e.index:void 0,r=e.function?.name??e.custom?.name??``,i=n===void 0?void 0:S.get(n);if(!i&&e.id&&(i=ae.get(e.id)),!i){let o=e.custom&&!e.function?d.get(r)??`input`:void 0,s=o!==void 0;i={type:`toolCall`,id:e.id||``,name:r,arguments:s?{[o]:``}:{},partialArgs:s?void 0:``,customInput:s?{property:o,jsonBuffer:{input:``,started:!1,closed:!1}}:void 0,streamIndex:n},n!==void 0&&S.set(n,i),e.id&&ae.set(e.id,i),C.push(i),a.push({type:`toolcall_start`,contentIndex:w(i),partial:t})}if(n!==void 0&&i.streamIndex===void 0&&(i.streamIndex=n,S.set(n,i)),e.id&&ae.set(e.id,i),!i.name&&r&&(i.name=r),e.custom&&!e.function&&!i.customInput){let e=d.get(i.name)??`input`;i.arguments={[e]:``},i.customInput={property:e,jsonBuffer:{input:``,started:!1,closed:!1}},delete i.partialArgs}return i};for await(let n of te){if(!n||typeof n!=`object`)continue;t.responseId||=n.id,typeof n.model==`string`&&n.model.length>0&&n.model!==e.id&&(t.responseModel||=n.model),n.usage&&(t.usage=Io(n.usage,e));let i=Array.isArray(n.choices)?n.choices[0]:void 0;if(i){if(!n.usage&&i.usage&&(t.usage=Io(i.usage,e)),i.finish_reason){t.rawStopReason=i.finish_reason;let e=Lo(i.finish_reason);t.stopReason=e.stopReason,e.errorMessage&&(t.errorMessage=e.errorMessage),x=!0}if(i.delta){if(i.delta.content!==null&&i.delta.content!==void 0&&i.delta.content.length>0){let e=oe();e.text+=i.delta.content,a.push({type:`text_delta`,contentIndex:w(e),delta:i.delta.content,partial:t})}let n=[`reasoning_content`,`reasoning`,`reasoning_text`],o=i.delta,s=null;for(let e of n){let t=o[e];if(typeof t==`string`&&t.length>0){s=e;break}}if(s){let n=o[s];if(typeof n==`string`&&n.length>0){let r=se(e.provider===`opencode-go`&&s===`reasoning`?`reasoning_content`:s);r.thinking+=n,a.push({type:`thinking_delta`,contentIndex:w(r),delta:n,partial:t})}}if(i?.delta?.tool_calls)for(let e of i.delta.tool_calls){let n=ce(e);!n.id&&e.id&&(n.id=e.id,ae.set(e.id,n));let r=e.function?.name??e.custom?.name;!n.name&&r&&(n.name=r);let i=``;e.function?.arguments?(i=e.function.arguments,n.partialArgs=(n.partialArgs??``)+e.function.arguments,n.arguments=u(n.partialArgs)):e.custom?.input&&(i=E(n,T(n)+e.custom.input,!1)??``),a.push({type:`toolcall_delta`,contentIndex:w(n),delta:i,partial:t})}let c=i.delta.reasoning_details;if(Array.isArray(c))for(let e of c)lo(e)&&(se(``),r??=[],mo(r,e))}}}for(let e of C)D(e);if(i?.signal?.aborted||t.stopReason===`aborted`)throw Error(`Request was aborted`);if(!x&&!l.supportsFinishReason&&(t.stopReason=t.content.some(e=>e.type===`toolCall`)?`toolUse`:`stop`),t.stopReason===`error`)throw Error(t.errorMessage||`Provider returned an error stop reason`);if(l.supportsFinishReason&&!x||t.stopReason===`pending`)throw Error(`Stream ended without finish_reason`);a.push({type:`done`,reason:t.stopReason,message:t}),a.end()}catch(e){for(let e of t.content)e.type===`thinking`&&s(e),delete e.index,delete e.partialArgs,delete e.customInput,delete e.streamIndex;t.stopReason=i?.signal?.aborted?`aborted`:`error`,t.errorMessage=Ya(Ua(e));let n=e?.error?.metadata?.raw;n&&!t.errorMessage.includes(String(n))&&(t.errorMessage+=`\n${n}`),a.push({type:`error`,reason:t.stopReason,error:t}),a.end()}})(),a},yo=(e,t,n)=>{to(e.provider,n?.apiKey,n?.headers);let r={...te(e,t,n,n?.apiKey),toolChoice:n?.toolChoice},a=n?.reasoning?i(e,n.reasoning):void 0,o=a===`off`?void 0:a;return vo(e,t,{...r,reasoningEffort:o,thinkingBudgets:n?.thinkingBudgets})};function bo(e,t,n,r,i,a,o=zo(e)){let s={"User-Agent":b(),...e.headers};if(e.provider===`github-copilot`){let e=d(t.messages),n=ne({messages:t.messages,hasImages:e});Object.assign(s,n)}return a&&o.sendSessionAffinityHeaders&&(o.sessionAffinityFormat===`openrouter`?s[`x-session-id`]=a:(o.sessionAffinityFormat===`openai`&&(s.session_id=a),s[`x-client-request-id`]=a,s[`x-session-affinity`]=a)),r&&Object.assign(s,r),new $({apiKey:n,baseURL:e.baseUrl,dangerouslyAllowBrowser:!0,fetch:i,defaultHeaders:s})}function xo(e,r,i,a=zo(e),o=_o(i?.cacheRetention,i?.env),s=re(n(r.messages),a.supportsOpenAIGrammarTools)){let c=t(r.messages,a.supportsMidConvoSystemMessages===!0&&a.supportsMidConvoToolAdditions===!0),l=Po(e,r,a,{grammarToolInputProperties:s}),u=Eo(a,o),d={model:e.id,messages:l,stream:!0,prompt_cache_key:e.baseUrl.includes(`api.openai.com`)&&o!==`none`||o===`long`&&a.supportsLongCacheRetention?$a(i?.sessionId):void 0,prompt_cache_retention:o===`long`&&a.supportsLongCacheRetention?`24h`:void 0};a.supportsUsageInStreaming!==!1&&(d.stream_options={include_usage:!0}),a.supportsStore&&(d.store=!1),i?.maxTokens&&(a.maxTokensField===`max_tokens`?d.max_tokens=i.maxTokens:d.max_completion_tokens=i.maxTokens),i?.temperature!==void 0&&(d.temperature=i.temperature),c.requestTools.length>0?(d.tools=Fo(c.requestTools,a),a.zaiToolStream&&(d.tool_stream=!0)):no(r.messages)&&(d.tools=[]),u&&Do(l,d.tools,u),i?.toolChoice&&(d.tool_choice=i.toolChoice),a.vllmPriority!==void 0&&(d.priority=a.vllmPriority);let f=So(a),p=Co(e,i,d);if(a.thinkingFormat===`zai`&&e.reasoning){let t=d;if(t.thinking=i?.reasoningEffort?{type:`enabled`,clear_thinking:!1}:{type:`disabled`},i?.reasoningEffort&&a.supportsReasoningEffort){let n=e.thinkingLevelMap?.[i.reasoningEffort],r=n===void 0?i.reasoningEffort:n;typeof r==`string`&&(t.reasoning_effort=r)}}else if(a.thinkingFormat===`qwen`&&e.reasoning){if(d.enable_thinking=!!i?.reasoningEffort,i?.reasoningEffort&&a.supportsReasoningEffort){let t=e.thinkingLevelMap?.[i.reasoningEffort]??i.reasoningEffort;typeof t==`string`&&(d.reasoning_effort=t)}}else if(a.thinkingFormat===`qwen-chat-template`&&e.reasoning)d.chat_template_kwargs={enable_thinking:!!i?.reasoningEffort,preserve_thinking:!0};else if(a.thinkingFormat===`chat-template`&&e.reasoning){let t=wo(e,i,a.chatTemplateKwargs,p);t&&(d.chat_template_kwargs=t)}else if(a.thinkingFormat===`baseten`&&e.reasoning){let t=d,n=wo(e,i,a.chatTemplateArgs,p);if(n&&(t.chat_template_args=n),a.supportsReasoningEffort){let n=i?.reasoningEffort,r=n?e.thinkingLevelMap?.[n]:e.thinkingLevelMap?.off,a=r===void 0?n:r;typeof a==`string`&&(t.reasoning_effort=a)}}else if(a.thinkingFormat===`deepseek`&&e.reasoning)i?.reasoningEffort?d.thinking={type:`enabled`}:e.thinkingLevelMap?.off!==null&&(d.thinking={type:`disabled`}),i?.reasoningEffort&&a.supportsReasoningEffort&&(d.reasoning_effort=e.thinkingLevelMap?.[i.reasoningEffort]??i.reasoningEffort);else if(a.thinkingFormat===`openrouter`&&e.reasoning){let t=d;i?.reasoningEffort?t.reasoning={effort:e.thinkingLevelMap?.[i.reasoningEffort]??i.reasoningEffort}:e.thinkingLevelMap?.off!==null&&(t.reasoning={effort:e.thinkingLevelMap?.off??`none`})}else if(a.thinkingFormat===`ant-ling`&&e.reasoning&&i?.reasoningEffort){let t=e.thinkingLevelMap?.[i.reasoningEffort];typeof t==`string`&&(d.reasoning={effort:t})}else if(a.thinkingFormat===`together`&&e.reasoning){let t=d;t.reasoning={enabled:!!i?.reasoningEffort},i?.reasoningEffort&&a.supportsReasoningEffort&&(t.reasoning_effort=e.thinkingLevelMap?.[i.reasoningEffort]??i.reasoningEffort)}else if(a.thinkingFormat===`string-thinking`&&e.reasoning){let t=d;i?.reasoningEffort?t.thinking=e.thinkingLevelMap?.[i.reasoningEffort]??i.reasoningEffort:e.thinkingLevelMap?.off!==null&&(t.thinking=e.thinkingLevelMap?.off??`none`)}else if(i?.reasoningEffort&&e.reasoning&&a.supportsReasoningEffort)d.reasoning_effort=e.thinkingLevelMap?.[i.reasoningEffort]??i.reasoningEffort;else if(!i?.reasoningEffort&&e.reasoning&&a.supportsReasoningEffort){let t=e.thinkingLevelMap?.off;typeof t==`string`&&(d.reasoning_effort=t)}if(f&&p!==void 0&&Object.assign(d,{[f]:p}),e.compat?.openRouterRouting&&(d.provider=e.compat.openRouterRouting),e.compat?.vercelGatewayRouting){let t=e.compat.vercelGatewayRouting;if(t.only||t.order){let e={};t.only&&(e.only=t.only),t.order&&(e.order=t.order),d.providerOptions={gateway:e}}}return i?.samplingParams&&Object.assign(d,i.samplingParams),d}function So(e){if(e.thinkingTokenBudgetField)return e.thinkingTokenBudgetField;if(e.supportsThinkingTokenBudget)return`thinking_token_budget`}function Co(e,t,n){if(!t?.reasoningEffort||!e.reasoning)return;let r=n.max_tokens??n.max_completion_tokens??e.maxTokens,i=l(_(t.reasoningEffort,t.thinkingBudgets),r);return i>0?i:void 0}function wo(e,t,n,r){let i={};for(let[a,o]of Object.entries(n)){let n=To(e,t,o,r);n!==void 0&&(i[a]=n)}return Object.keys(i).length>0?i:void 0}function To(e,t,n,r){if(typeof n!=`object`||!n)return n;let i=t?.reasoningEffort;if(!i&&n.omitWhenOff)return;if(n.$var===`thinking.enabled`)return!!i;if(n.$var===`thinking.budget`)return r;let a=i?e.thinkingLevelMap?.[i]:e.thinkingLevelMap?.off;return a===void 0?i:typeof a==`string`?a:void 0}function Eo(e,t){if(e.cacheControlFormat!==`anthropic`||t===`none`)return;let n=t===`long`&&e.supportsLongCacheRetention?`1h`:void 0;return{type:`ephemeral`,...n?{ttl:n}:{}}}function Do(e,t,n){Oo(e,n),Ao(t,n),ko(e,n)}function Oo(e,t){for(let n of e)if(n.role===`system`||n.role===`developer`){jo(n,t);return}}function ko(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if((r.role===`user`||r.role===`assistant`||r.role===`tool`)&&Mo(r,t))return}}function Ao(e,t){if(!e||e.length===0)return;let n=e[e.length-1];n.cache_control=t}function jo(e,t){return No(e,t)}function Mo(e,t){return e.role===`user`||e.role===`assistant`||e.role===`tool`?No(e,t):!1}function No(e,t){let n=e.content;if(typeof n==`string`)return n.length!==0&&(e.content=[{type:`text`,text:n,cache_control:t}],!0);if(!Array.isArray(n))return!1;for(let e=n.length-1;e>=0;e--){let r=n[e];if(r?.type===`text`){let e=r;return e.cache_control=t,!0}}return!1}function Po(n,i,a,s){let c=r(i,a.supportsMidConvoSystemMessages),l=[],u=e=>{if(e.includes(`|`)){let t=e.indexOf(`|`),n=e.slice(0,t).replace(/[^a-zA-Z0-9_-]/g,`_`),r=e.slice(t+1).replace(/[^a-zA-Z0-9_-]/g,`_`),i=r.length>0?`${n}_${r}`:n;if(i.length<=40)return i;let a=Qa(e).slice(0,8);return`${n.slice(0,Math.max(1,40-a.length-1))}_${a}`}return n.provider===`openai`&&e.length>40?e.slice(0,40):e},d=y(c.messages,n,e=>u(e)),p=t(c.messages,a.supportsMidConvoSystemMessages===!0&&a.supportsMidConvoToolAdditions===!0),m=n.reasoning&&a.supportsDeveloperRole?`developer`:`system`,g=null;for(let t=0;t<d.length;t++){let r=d[t];if(a.requiresAssistantAfterToolResult&&g===`toolResult`&&r.role===`user`&&l.push({role:`assistant`,content:`I have processed the tool results.`}),r.role===`system`){let n=t>0&&p.anchorsAdditions?r.toolsAdded??[]:[];if(n.length>0){let e={role:`system`,tools:Fo(n,a)};l.push(e)}let i=t===0?e(r):o(r);i.length>0&&l.push({role:m,content:h(i)})}else if(r.role===`user`){if(typeof r.content==`string`)l.push({role:`user`,content:h(r.content)});else{let e=r.content.filter(e=>e.type!==`text`||e.text.length>0).map(e=>e.type===`text`?{type:`text`,text:h(e.text)}:{type:`image_url`,image_url:{url:`data:${e.mimeType};base64,${e.data}`}});if(e.length===0)continue;l.push({role:`user`,content:e})}}else if(r.role===`assistant`){let e={role:`assistant`,content:a.requiresAssistantAfterToolResult?``:null},t=r.content.filter(ro).filter(e=>e.text.trim().length>0).map(e=>({type:`text`,text:h(e.text)})),i=t.map(e=>e.text).join(``),o=r.content.filter(io),c=r.content.filter(ao),u=o.map(e=>uo(e.thinkingSignature)).find(e=>e!==void 0),d=c.map(e=>fo(e.thoughtSignature)).filter(e=>e!==void 0),p=u??(d.length>0?d:void 0),m=o.filter(e=>e.thinking.trim().length>0);if(m.length>0){if(a.requiresThinkingAsText)e.content=[{type:`text`,text:m.map(e=>h(e.thinking)).join(`
|
|
18
18
|
|
|
19
|
-
`)},...
|
|
20
|
-
`))}}else
|
|
21
|
-
`),o=
|
|
19
|
+
`)},...t];else if(i.length>0&&(e.content=i),!p){let t=m[0].thinkingSignature;n.provider===`opencode-go`&&t===`reasoning`&&(t=`reasoning_content`),t&&go(t)&&(e[t]=m.map(e=>e.thinking).join(`
|
|
20
|
+
`))}}else i.length>0&&(e.content=i);c.length>0&&(e.tool_calls=c.map(e=>{let t=s?.grammarToolInputProperties?.get(e.name);return t===void 0?{id:e.id,type:`function`,function:{name:e.name,arguments:JSON.stringify(e.arguments)}}:{id:e.id,type:`custom`,custom:{name:e.name,input:h(f(e.name,e.arguments,t))}}})),p&&(e.reasoning_details=p),a.requiresReasoningContentOnAssistantMessages&&n.reasoning&&e.reasoning_content===void 0&&(e.reasoning_content=``);let g=e.content;if(!(g!=null&&g.length>0)&&!e.tool_calls)continue;l.push(e)}else if(r.role===`toolResult`){let e=[],r=t;for(;r<d.length&&d[r].role===`toolResult`;r++){let t=d[r],i=t.content.filter(ro).map(e=>e.text).join(`
|
|
21
|
+
`),o=t.content.some(e=>e.type===`image`),s=i.length>0?i:o?`(see attached image)`:`(no tool output)`,c={role:`tool`,content:h(s),tool_call_id:t.toolCallId};if(a.requiresToolResultName&&t.toolName&&(c.name=t.toolName),l.push(c),o&&n.input.includes(`image`))for(let n of t.content)oo(n)&&e.push({type:`image_url`,image_url:{url:`data:${n.mimeType};base64,${n.data}`}})}t=r-1,e.length>0?(a.requiresAssistantAfterToolResult&&l.push({role:`assistant`,content:`I have processed the tool results.`}),l.push({role:`user`,content:[{type:`text`,text:`Attached image(s) from tool result:`},...e]}),g=`user`):g=`toolResult`;continue}g=r.role}return l}function Fo(e,t){return e.map(e=>{let n=v(e,t.supportsOpenAIGrammarTools);if(n)return{type:`custom`,custom:{name:e.name,description:e.description,format:{type:`grammar`,grammar:{syntax:n.format,definition:n.definition}}}};let r=ee(e,t.supportsStrictMode!==!1);return{type:`function`,function:{name:e.name,description:e.description,parameters:p(e,r),...t.supportsStrictMode!==!1&&{strict:r??!1}}}})}function Io(e,t){let n=e.prompt_tokens||0,r=e.prompt_tokens_details?.cached_tokens??e.prompt_cache_hit_tokens??e.cached_tokens??0,i=e.prompt_tokens_details?.cache_write_tokens||0,o=Math.max(0,n-r-i),s=e.completion_tokens||0,c={input:o,output:s,cacheRead:r,cacheWrite:i,reasoning:e.completion_tokens_details?.reasoning_tokens||0,totalTokens:o+s+r+i,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}};return a(t,c),c}function Lo(e){if(e===null)return{stopReason:`stop`};switch(e){case`stop`:case`end`:return{stopReason:`stop`};case`length`:return{stopReason:`length`};case`function_call`:case`tool_calls`:return{stopReason:`toolUse`};case`content_filter`:return{stopReason:`error`,errorMessage:`Provider finish_reason: content_filter`};case`network_error`:return{stopReason:`error`,errorMessage:`Provider finish_reason: network_error`};default:return{stopReason:`error`,errorMessage:`Provider finish_reason: ${e}`}}}function Ro(e){let t=e.provider,n=e.baseUrl,r=t===`zai`||t===`zai-coding-cn`||n.includes(`api.z.ai`)||n.includes(`open.bigmodel.cn`),i=t===`together`||n.includes(`api.together.ai`)||n.includes(`api.together.xyz`),a=t===`moonshotai`||t===`moonshotai-cn`||n.includes(`api.moonshot.`),o=t===`openrouter`||n.includes(`openrouter.ai`),s=t===`cloudflare-workers-ai`||n.includes(`api.cloudflare.com`),c=t===`cloudflare-ai-gateway`||n.includes(`gateway.ai.cloudflare.com`),l=t===`nvidia`||n.includes(`integrate.api.nvidia.com`),u=t===`ant-ling`||n.includes(`api.ant-ling.com`),d=t===`cerebras`||n.includes(`cerebras.ai`),f=t===`deepseek`||n.toLowerCase().includes(`deepseek.com`),p=l||d||t===`xai`||n.includes(`api.x.ai`)||i||n.includes(`chutes.ai`)||f||r||a||t===`opencode`||n.includes(`opencode.ai`)||s||c||u,m=n.includes(`chutes.ai`)||f||a||c||i||l||u||r,h=t===`xai`||n.includes(`api.x.ai`),g=o&&(e.id.startsWith(`anthropic/`)||e.id.startsWith(`openai/`)),ee=t===`openrouter`&&e.id.startsWith(`anthropic/`)?`anthropic`:void 0;return{supportsStore:!p,supportsDeveloperRole:g||!p&&!o,supportsReasoningEffort:!h&&!r&&!a&&!i&&!c&&!l&&!u,supportsUsageInStreaming:!0,supportsFinishReason:!0,maxTokensField:m?`max_tokens`:`max_completion_tokens`,requiresToolResultName:!1,requiresAssistantAfterToolResult:!1,requiresThinkingAsText:!1,requiresReasoningContentOnAssistantMessages:f,thinkingFormat:f?`deepseek`:r?`zai`:i?`together`:u?`ant-ling`:o?`openrouter`:`openai`,openRouterRouting:{},vercelGatewayRouting:{},chatTemplateKwargs:{},chatTemplateArgs:{},zaiToolStream:!1,supportsThinkingTokenBudget:!1,thinkingTokenBudgetField:void 0,supportsStrictMode:!1,supportsOpenAIGrammarTools:!1,supportsMidConvoSystemMessages:!1,supportsMidConvoToolAdditions:!1,cacheControlFormat:ee,sendSessionAffinityHeaders:o,sessionAffinityFormat:o?`openrouter`:`openai`,supportsLongCacheRetention:!(i||s||c||l||u)}}function zo(e){let t=Ro(e);return e.compat?{supportsStore:e.compat.supportsStore??t.supportsStore,supportsDeveloperRole:e.compat.supportsDeveloperRole??t.supportsDeveloperRole,supportsReasoningEffort:e.compat.supportsReasoningEffort??t.supportsReasoningEffort,supportsUsageInStreaming:e.compat.supportsUsageInStreaming??t.supportsUsageInStreaming,supportsFinishReason:e.compat.supportsFinishReason??t.supportsFinishReason,maxTokensField:e.compat.maxTokensField??t.maxTokensField,requiresToolResultName:e.compat.requiresToolResultName??t.requiresToolResultName,requiresAssistantAfterToolResult:e.compat.requiresAssistantAfterToolResult??t.requiresAssistantAfterToolResult,requiresThinkingAsText:e.compat.requiresThinkingAsText??t.requiresThinkingAsText,requiresReasoningContentOnAssistantMessages:e.compat.requiresReasoningContentOnAssistantMessages??t.requiresReasoningContentOnAssistantMessages,thinkingFormat:e.compat.thinkingFormat??t.thinkingFormat,openRouterRouting:e.compat.openRouterRouting??{},vercelGatewayRouting:e.compat.vercelGatewayRouting??t.vercelGatewayRouting,chatTemplateKwargs:e.compat.chatTemplateKwargs??t.chatTemplateKwargs,chatTemplateArgs:e.compat.chatTemplateArgs??t.chatTemplateArgs,zaiToolStream:e.compat.zaiToolStream??t.zaiToolStream,supportsThinkingTokenBudget:e.compat.supportsThinkingTokenBudget??t.supportsThinkingTokenBudget,thinkingTokenBudgetField:e.compat.thinkingTokenBudgetField??t.thinkingTokenBudgetField,supportsStrictMode:e.compat.supportsStrictMode??t.supportsStrictMode,supportsOpenAIGrammarTools:e.compat.supportsOpenAIGrammarTools??t.supportsOpenAIGrammarTools,supportsMidConvoSystemMessages:e.compat.supportsMidConvoSystemMessages??t.supportsMidConvoSystemMessages,supportsMidConvoToolAdditions:e.compat.supportsMidConvoToolAdditions??t.supportsMidConvoToolAdditions,cacheControlFormat:e.compat.cacheControlFormat??t.cacheControlFormat,sendSessionAffinityHeaders:e.compat.sendSessionAffinityHeaders??t.sendSessionAffinityHeaders,sessionAffinityFormat:e.compat.sessionAffinityFormat??t.sessionAffinityFormat,supportsLongCacheRetention:e.compat.supportsLongCacheRetention??t.supportsLongCacheRetention,vllmPriority:e.compat.vllmPriority}:t}export{Po as convertMessages,vo as stream,yo as streamSimple};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./i18n-Cx8anq4V.js";import{D as t,S as n,T as r,a as i,b as a,f as o,g as s,h as c,i as l,o as u,x as d,y as f}from"./source-CvnvCX42.js";var p=`pulls.review`,m={repoInfo:`repo-info`,sourceKey:`source-key`,sourceFetch:`source-fetch`,sourceFingerprint:`source-fingerprint`,sourceLoadFile:`source-load-file`,storageGetItem:`storage-get-item`,storageSetItem:`storage-set-item`,storageRemoveItem:`storage-remove-item`,storageGetKeys:`storage-get-keys`,githubToken:`github-token`,agentList:`agent-list`,agentAnalyze:`agent-analyze`,agentChat:`agent-chat`,agentAbort:`agent-abort`},h=`agent`,g=f({name:n(e),label:r(),version:r(),models:o(f({id:r(),name:r()}))}),_=s({role:r()}),v=t(`kind`,[f({kind:c(`messages`),messages:o(_)}),f({kind:c(`progress`),progress:i}),f({kind:c(`result`),result:u}),f({kind:c(`end`),stopReason:n([`done`,`error`,`aborted`]),agent:a(l),error:a(r()),code:a(r())})]),y=`agent-session-lost`,b=Symbol(`local-rpc`),x=f({currentBranch:a(r()),defaultBranch:a(f({name:r(),ref:r()})),branches:o(r()),tags:o(r()),commits:o(f({sha:r(),subject:r()}))});async function S(e){return d(x,await e.call(m.repoInfo))}function C(e){switch(e.kind){case`compare`:return`/compare/${e.range}`;case`branch`:return`/branch/${e.branch}`;case`worktree`:return`/worktree`;case`commit`:return`/commit/${e.sha}`}}async function w(e,t){switch(e.kind){case`compare`:return e.range;case`branch`:{let n=(await S(t)).defaultBranch;if(!n)throw Error(`No default branch (origin/HEAD, main or master) to compare against.`);return`${n.ref}...${e.branch}`}case`worktree`:return``;case`commit`:return e.sha}}function T(e){let t=(e,t)=>String(e.params[t]);return[{path:`/compare/:range(.+)`,component:e,props:e=>({page:{kind:`compare`,range:t(e,`range`)}})},{path:`/branch/:branch(.+)`,component:e,props:e=>({page:{kind:`branch`,branch:t(e,`branch`)}})},{path:`/worktree`,component:e,props:{page:{kind:`worktree`}}},{path:`/commit/:sha`,component:e,props:e=>({page:{kind:`commit`,sha:t(e,`sha`)}})}]}export{b as a,h as c,g as d,w as i,p as l,S as n,y as o,C as r,v as s,T as t,m as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,Bt as t,Cr as n,Dr as r,Dt as i,Et as a,G as o,H as s,In as c,Jt as l,K as u,Kt as d,M as f,Pt as p,Q as m,Rt as h,Sn as g,Tr as _,Tt as v,U as y,W as b,Wn as x,Xt as S,Zn as C,_ as w,_n as T,bt as E,dt as D,er as O,lt as k,mn as A,n as j,qt as M,rn as N,sn as P,tt as F,v as I,w as L,x as ee,yn as R}from"./vue-i18n-CGHHpbTP.js";import{C as z,w as B}from"./runtime-dom.esm-bundler-Du_ZCcVN.js";import{D as V,E as H,O as U,S as W,T as G,_ as te,a as ne,b as re,c as ie,d as K,f as q,g as ae,h as oe,i as J,l as se,m as Y,n as ce,p as le,r as ue,s as de,u as fe,v as X,x as pe,y as me}from"./ModelPicker-CDTiUMZ3.js";import{ct as he,st as ge,t as _e}from"./useDocumentTitle-BQJCa6Lm.js";import{i as ve,s as ye}from"./index-KDAJXf4E.js";import{t as be}from"./ActionButton-V4dY2wPS.js";import{n as xe,t as Se}from"./useNonce-CwUrgryd.js";import{a as Ce,n as we,r as Z}from"./pages-ByEfDjFa.js";import{i as Te,n as Ee,r as De,t as Oe}from"./LandingHero-DWdx6_8g.js";import{t as ke}from"./portalTarget-DQg8GgWm.js";function Ae(e,t,n){let r=e.findIndex(e=>U(e,t)),i=e.findIndex(e=>U(e,n));if(r===-1||i===-1)return[];let[a,o]=[r,i].sort((e,t)=>e-t);return e.slice(a,o+1)}var je=/[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Bopomofo}]/u,Me=/android/i;function Ne(){return typeof navigator<`u`&&Me.test(navigator.userAgent)}function Pe(e){let t=x(!1),n=x(!0),r=x(!1),a=s(()=>t.value&&n.value);function o(){t.value=!0,n.value=!0,r.value=!1}function c(e){e.data&&(je.test(e.data)?(n.value=!0,r.value=!0):Ne()&&!r.value&&(n.value=!1))}function l(n){i(()=>{t.value=!1,e?.(n)})}return{isComposing:t,shouldDeferInput:a,handleCompositionStart:o,handleCompositionUpdate:c,handleCompositionEnd:l}}function Fe(e){let t=s(()=>O(e)),n=s(()=>new Intl.Collator(`en`,{usage:`search`,...t.value}));return{startsWith:(e,t)=>t.length===0||(e=e.normalize(`NFC`),t=t.normalize(`NFC`),n.value.compare(e.slice(0,t.length),t)===0),endsWith:(e,t)=>t.length===0||(e=e.normalize(`NFC`),t=t.normalize(`NFC`),n.value.compare(e.slice(-t.length),t)===0),contains:(e,t)=>{if(t.length===0)return!0;if(e=e.normalize(`NFC`),t=t.normalize(`NFC`),t.length>e.length)return!1;let r=n.value.compare;if(e.includes(t))return!0;let i=t.length;for(let n=0;n+i<=e.length;n++)if(r(t,e.slice(n,n+i))===0)return!0;return!1}}}function Ie(){return{ALT:`Alt`,ARROW_DOWN:`ArrowDown`,ARROW_LEFT:`ArrowLeft`,ARROW_RIGHT:`ArrowRight`,ARROW_UP:`ArrowUp`,BACKSPACE:`Backspace`,CAPS_LOCK:`CapsLock`,CONTROL:`Control`,DELETE:`Delete`,END:`End`,ENTER:`Enter`,ESCAPE:`Escape`,F1:`F1`,F10:`F10`,F11:`F11`,F12:`F12`,F2:`F2`,F3:`F3`,F4:`F4`,F5:`F5`,F6:`F6`,F7:`F7`,F8:`F8`,F9:`F9`,HOME:`Home`,META:`Meta`,PAGE_DOWN:`PageDown`,PAGE_UP:`PageUp`,SHIFT:`Shift`,SPACE:` `,TAB:`Tab`,CTRL:`Control`,ASTERISK:`*`,SPACE_CODE:`Space`}}function Le(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>Q(e,t,n)):Q(e,t,n)}function Q(e,t,n){return e===void 0||t===void 0?!1:typeof e==`string`?e===t:typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]===t?.[n]:U(e,t)}var[Re,ze]=V(`ListboxRoot`),[Be,Ve]=V(`ListboxHighlightScroll`),He=F({__name:`ListboxRoot`,props:{modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},orientation:{type:String,required:!1,default:`vertical`},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},selectionBehavior:{type:String,required:!1,default:`toggle`},highlightOnHover:{type:Boolean,required:!1},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`,`highlight`,`entryFocus`,`leave`],setup(e,{expose:n,emit:r}){let a=e,s=r,{multiple:c,highlightOnHover:l,orientation:u,disabled:d,selectionBehavior:f,dir:p}=C(a),{getItems:m,getItem:h}=de({isProvider:!0}),{handleTypeaheadSearch:g}=xe(),{primitiveElement:_,currentElement:v}=K(),y=Ie(),S=pe(p),T=Be(null);Ve({suppressHighlightScroll:x(!1),onHighlightScrollRequest:()=>{}});let E=me(v),D=x(),k=x(!1),j=x(!0),N=w(a,`modelValue`,s,{defaultValue:a.defaultValue??(c.value?[]:void 0),passive:a.modelValue===void 0,deep:!0});function P(e){if(k.value=!0,a.multiple){let t=Array.isArray(N.value)?[...N.value]:[],n=t.findIndex(t=>Q(t,e,a.by));a.selectionBehavior===`toggle`?(n===-1?t.push(e):t.splice(n,1),N.value=t):(N.value=[e],D.value=e)}else a.selectionBehavior===`toggle`&&Q(N.value,e,a.by)?N.value=void 0:N.value=e;setTimeout(()=>{k.value=!1},1)}let F=x(null),L=x(null),z=x(!1),B=x(!1),V=I(),H=I(),U=I();function W(){return m().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)}function G(e,t=!0,n){if(!e)return;F.value=e;let r=T?.suppressHighlightScroll.value??!1;(n??j.value)&&(r?F.value.focus({preventScroll:!0}):F.value.focus()),r?T?.onHighlightScrollRequest(t?()=>{let e=F.value;e?.isConnected&&e.scrollIntoView({block:`nearest`})}:void 0):t&&F.value.scrollIntoView({block:`nearest`});let i=h(e);s(`highlight`,i)}function te(e){if(z.value)U.trigger(e);else{let t=m().find(t=>Q(t.value,e,a.by));t&&(F.value=t.ref,G(t.ref))}}function ne(e){if(F.value&&F.value.isConnected){if(e.ctrlKey||e.metaKey||e.altKey)return;e.preventDefault(),e.stopPropagation(),B.value||F.value.click()}}function re(e){if(j.value){if(k.value=!0,z.value)H.trigger(e);else{let t=e.altKey||e.ctrlKey||e.metaKey;if(t&&e.key===`a`&&c.value){let t=m(),n=t.map(e=>e.value);N.value=[...n],e.preventDefault();let r=t.at(-1);r&&G(r.ref)}else if(!t){let t=g(e.key,m());t&&G(t)}}setTimeout(()=>{k.value=!1},1)}}function ie(){B.value=!0}function ae(){i(()=>{B.value=!1})}function oe(){i(()=>{Y(new KeyboardEvent(`keydown`,{key:`PageUp`}))})}function J(e){let t=F.value;t?.isConnected&&(L.value=t),F.value=null,s(`leave`,e)}function se(e){let t=new CustomEvent(`listbox.entryFocus`,{bubbles:!1,cancelable:!0});if(e.currentTarget?.dispatchEvent(t),s(`entryFocus`,t),!t.defaultPrevented){if(L.value)G(L.value);else{let e=W()?.[0];G(e)}}}function Y(e){let t=ge(e,u.value,S.value);if(!t)return;let n=W();if(F.value){if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let e=n.indexOf(F.value);n=n.slice(e+1)}ce(e,n[0])}if(n.length){let e=!F.value&&t===`prev`?n.length-1:0;G(n[e])}if(z.value)return H.trigger(e)}function ce(e,t){if(!z.value&&a.selectionBehavior===`replace`&&c.value&&Array.isArray(N.value)&&(!e.altKey&&!e.ctrlKey&&!e.metaKey||e.shiftKey)&&e.shiftKey){let n=m().filter(e=>e.ref.dataset.disabled!==``),r=n.find(e=>e.ref===t)?.value;if(e.key===y.END?r=n.at(-1)?.value:e.key===y.HOME&&(r=n[0]?.value),!r||!D.value)return;let i=Ae(n.map(e=>e.value),D.value,r);N.value=i}}async function le(e,t=!0){if(ee){if(await i(),z.value)V.trigger({event:e,scroll:t});else{let e=W(),n=e.find(e=>e.dataset.state===`checked`),r=t?void 0:!1;n?G(n,t,r):e.length&&G(e[0],t,r)}}}let ue=!1;return A(N,()=>{if(!k.value){let e=ue;ue=!0,i(()=>{le(void 0,e)})}},{immediate:!0,deep:!0}),n({highlightedElement:F,highlightItem:te,highlightFirstItem:oe,highlightSelected:le,getItems:m}),ze({modelValue:N,onValueChange:P,multiple:c,orientation:u,dir:S,disabled:d,highlightOnHover:l,highlightedElement:F,isVirtual:z,virtualFocusHook:V,virtualKeydownHook:H,virtualHighlightHook:U,by:a.by,firstValue:D,selectionBehavior:f,focusable:j,onLeave:J,onEnter:se,changeHighlight:G,onKeydownEnter:ne,onKeydownNavigation:Y,onKeydownTypeAhead:re,onCompositionStart:ie,onCompositionEnd:ae,highlightFirstItem:oe}),(e,n)=>(t(),b(O(q),{ref_key:`primitiveElement`,ref:_,as:e.as,"as-child":e.asChild,dir:O(S),"data-disabled":O(d)?``:void 0,onPointerleave:J,onFocusout:n[0]||=async e=>{let t=e.relatedTarget||e.target;await i(),F.value&&O(v)&&!O(v).contains(t)&&J(e)}},{default:R(()=>[M(e.$slots,`default`,{modelValue:O(N)}),O(E)&&e.name?(t(),b(O(he),{key:0,name:e.name,value:O(N),disabled:O(d),required:e.required},null,8,[`name`,`value`,`disabled`,`required`])):o(`v-if`,!0)]),_:3},8,[`as`,`as-child`,`dir`,`data-disabled`]))}}),Ue=F({__name:`ListboxContent`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(n){let{CollectionSlot:r}=de(),i=Re(),a=L(!1,10);return(n,o)=>(t(),b(O(r),null,{default:R(()=>[e(O(q),{role:`listbox`,as:n.as,"as-child":n.asChild,tabindex:O(i).focusable.value?O(i).highlightedElement.value?`-1`:`0`:`-1`,"aria-orientation":O(i).orientation.value,"aria-multiselectable":!!O(i).multiple.value,"data-orientation":O(i).orientation.value,onMousedown:o[0]||=B(e=>a.value=!0,[`left`]),onFocus:o[1]||=e=>{O(a)||O(i).onEnter(e)},onKeydown:[o[2]||=z(e=>{(O(i).orientation.value!==`vertical`||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)&&(O(i).orientation.value!==`horizontal`||e.key!==`ArrowUp`&&e.key!==`ArrowDown`)&&(e.preventDefault(),O(i).focusable.value&&O(i).onKeydownNavigation(e))},[`down`,`up`,`left`,`right`,`home`,`end`]),z(O(i).onKeydownEnter,[`enter`]),O(i).onKeydownTypeAhead]},{default:R(()=>[M(n.$slots,`default`)]),_:3},8,[`as`,`as-child`,`tabindex`,`aria-orientation`,`aria-multiselectable`,`data-orientation`,`onKeydown`])]),_:3}))}}),We=F({__name:`ListboxFilter`,props:{modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`input`}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,i=w(r,`modelValue`,n,{defaultValue:``,passive:r.modelValue===void 0}),a=Re(),{primitiveElement:o,currentElement:c}=K(),l=s(()=>r.disabled||a.disabled.value||!1),u=x();T(()=>u.value=a.highlightedElement.value?.id),p(()=>{a.focusable.value=!1,setTimeout(()=>{r.autoFocus&&c.value?.focus()},1)}),h(()=>{a.focusable.value=!0});let{isComposing:d,shouldDeferInput:f,handleCompositionStart:m,handleCompositionUpdate:g,handleCompositionEnd:_}=Pe(e=>{i.value=e.target.value,a.onCompositionEnd(),a.highlightFirstItem()});function v(){a.onCompositionStart(),m()}function y(e){f.value||(i.value=e.target.value,a.highlightFirstItem())}function S(e){d.value||(e.preventDefault(),a.onKeydownNavigation(e))}function C(e){d.value||a.onKeydownEnter(e)}return(e,n)=>(t(),b(O(q),{ref_key:`primitiveElement`,ref:o,as:e.as,"as-child":e.asChild,value:O(i),disabled:l.value?``:void 0,"data-disabled":l.value?``:void 0,"aria-disabled":l.value??void 0,"aria-activedescendant":u.value,type:`text`,onKeydown:[z(S,[`down`,`up`,`home`,`end`]),z(C,[`enter`])],onInput:y,onCompositionstart:v,onCompositionupdate:O(g),onCompositionend:O(_)},{default:R(()=>[M(e.$slots,`default`,{modelValue:O(i)})]),_:3},8,[`as`,`as-child`,`value`,`disabled`,`data-disabled`,`aria-disabled`,`aria-activedescendant`,`onCompositionupdate`,`onCompositionend`]))}}),Ge=`listbox.select`,[Ke,qe]=V(`ListboxItem`),Je=F({__name:`ListboxItem`,props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`div`}},emits:[`select`],setup(n,{emit:r}){let i=n,o=r,c=Y(void 0,`reka-listbox-item`),{CollectionItem:l}=de(),{forwardRef:u,currentElement:d}=X(),f=Re(),p=s(()=>d.value!=null&&d.value===f.highlightedElement.value),m=s(()=>Le(f.modelValue.value,i.value,f.by)),h=s(()=>f.disabled.value||i.disabled);async function _(e){o(`select`,e),!e?.defaultPrevented&&!h.value&&e&&(f.onValueChange(i.value),f.changeHighlight(d.value))}function v(e){let t={originalEvent:e,value:i.value};G(Ge,_,t)}return qe({isSelected:m}),(n,r)=>(t(),b(O(l),{value:n.value},{default:R(()=>[g([p.value,m.value,h.value,O(f).focusable.value,...Object.entries(n.$attrs).flat()],()=>e(O(q),a({id:O(c)},n.$attrs,{ref:O(u),role:`option`,tabindex:O(f).focusable.value?p.value?`0`:`-1`:-1,"aria-selected":m.value,as:n.as,"as-child":n.asChild,disabled:h.value?``:void 0,"data-disabled":h.value?``:void 0,"data-highlighted":p.value?``:void 0,"data-state":m.value?`checked`:`unchecked`,onClick:v,onKeydown:z(B(v,[`prevent`]),[`space`]),onPointermove:r[0]||=()=>{O(f).highlightedElement.value!==O(d)&&O(f).highlightOnHover.value&&O(f).changeHighlight(O(d),!1,!1)}}),{default:R(()=>[M(n.$slots,`default`)]),_:3},16,[`id`,`tabindex`,`aria-selected`,`as`,`as-child`,`disabled`,`data-disabled`,`data-highlighted`,`data-state`,`onKeydown`]),r,1)]),_:3},8,[`value`]))}});function Ye(e){let t=x(`inline`),n=x(!1),r=x(),i=s(()=>t.value===`popper`&&!n.value),a;Ve({suppressHighlightScroll:i,onHighlightScrollRequest(e){a=e}});function o(e,i){(r.value!==e||t.value!==i)&&(n.value=!1,a=void 0),r.value=e,t.value=i}function c(i){if(r.value!==i||t.value!==`popper`||n.value)return;n.value=!0;let o=a;a=void 0,e.value&&o?.()}function l(e){r.value===e&&(r.value=void 0,t.value=`inline`,n.value=!1,a=void 0)}return{onContentPositionChange:o,onContentPlaced:c,onContentUnmount:l}}var[$,Xe]=V(`ComboboxRoot`),[Ze,Qe]=V(`AutocompleteRoot`),$e=F({__name:`AutocompleteRoot`,props:{modelValue:{type:String,required:!1},defaultValue:{type:String,required:!1},open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},dir:{type:String,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!1},openOnFocus:{type:Boolean,required:!1,default:!1},openOnClick:{type:Boolean,required:!1,default:!1},ignoreFilter:{type:Boolean,required:!1},highlightOnHover:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:modelValue`,`highlight`,`update:open`],setup(n,{expose:r,emit:o}){let c=n,l=o,{primitiveElement:u,currentElement:d}=K(),{disabled:f,ignoreFilter:m,openOnFocus:h,openOnClick:g,dir:_,highlightOnHover:v}=C(c),y=pe(_),S=w(c,`modelValue`,l,{defaultValue:c.defaultValue??``,passive:c.modelValue===void 0}),T=w(c,`open`,l,{defaultValue:c.defaultOpen,passive:c.open===void 0}),E=s({get:()=>S.value,set:e=>{e==null?S.value=``:S.value=String(e)}});async function D(e){T.value=e,e?(H.value=S.value||``,await i(),u.value?.highlightSelected(),j.value=!0,P.value?.focus()):(j.value=!1,H.value=``,setTimeout(()=>{!e&&c.resetSearchTermOnBlur&&A.trigger()},1))}let A=I(),j=x(!1),N=x(!1),P=x(),F=x(),L=s(()=>u.value?.highlightedElement??void 0),ee=Ye(T),z=x(new Map),B=x(new Map),{contains:V}=Fe({sensitivity:`base`}),H=x(``),U=s(e=>{if(!H.value||c.ignoreFilter||N.value)return{count:z.value.size,items:e?.items??new Map,groups:e?.groups??new Set(B.value.keys())};let t=0,n=new Map,r=new Set;for(let[e,r]of z.value){let i=V(r,H.value);n.set(e,+!!i),i&&t++}for(let[e,t]of B.value)for(let i of t)if(n.get(i)>0){r.add(e);break}return{count:t,items:n,groups:r}}),W=k();return p(()=>{W?.exposed&&(W.exposed.highlightItem=u.value?.highlightItem,W.exposed.highlightFirstItem=u.value?.highlightFirstItem,W.exposed.highlightSelected=u.value?.highlightSelected)}),r({filtered:U,highlightedElement:L,highlightItem:u.value?.highlightItem,highlightFirstItem:u.value?.highlightFirstItem,highlightSelected:u.value?.highlightSelected}),Xe({modelValue:E,multiple:x(!1),disabled:f,open:T,onOpenChange:D,...ee,contentId:``,isUserInputted:j,isVirtual:N,inputElement:P,highlightedElement:L,onInputElementChange:e=>P.value=e,triggerElement:F,onTriggerElementChange:e=>F.value=e,parentElement:d,resetSearchTermOnSelect:x(!1),onResetSearchTerm:A.on,allItems:z,allGroups:B,filterSearch:H,filterState:U,ignoreFilter:m,openOnFocus:h,openOnClick:g,resetModelValueOnClear:x(!0)}),Qe({modelValue:S}),(n,r)=>(t(),b(O(ne),null,{default:R(()=>[e(O(He),a({ref_key:`primitiveElement`,ref:u},n.$attrs,{modelValue:E.value,"onUpdate:modelValue":r[0]||=e=>E.value=e,style:{pointerEvents:O(T)?`auto`:void 0},as:n.as,"as-child":n.asChild,dir:O(y),name:n.name,required:n.required,disabled:O(f),"highlight-on-hover":O(v),onHighlight:r[1]||=e=>l(`highlight`,e)}),{default:R(()=>[M(n.$slots,`default`,{open:O(T),modelValue:O(S)})]),_:3},16,[`modelValue`,`style`,`as`,`as-child`,`dir`,`name`,`required`,`disabled`,`highlight-on-hover`])]),_:3}))}}),et=F({__name:`AutocompleteInput`,props:{modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`input`}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,a=n,o=$(),s=Ze(),l=Re(),{primitiveElement:u,currentElement:d}=K(),f=w(r,`modelValue`,a,{passive:r.modelValue===void 0});s.modelValue.value&&(f.value=s.modelValue.value),p(()=>{d.value&&o.onInputElementChange(d.value)});let{isComposing:m,shouldDeferInput:h,handleCompositionStart:g,handleCompositionUpdate:_,handleCompositionEnd:v}=Pe(e=>{let t=e.target;t&&x(t.value)});function y(e){m.value||(e.preventDefault(),o.open.value||o.onOpenChange(!0))}function x(e){o.open.value?o.filterSearch.value=e:(o.onOpenChange(!0),i(()=>{e&&(o.filterSearch.value=e,l.highlightFirstItem())})),s.modelValue.value=e}function S(e){h.value||x(e.target.value)}function C(){o.openOnFocus.value&&!o.open.value&&o.onOpenChange(!0)}function T(){o.openOnClick.value&&!o.open.value&&o.onOpenChange(!0)}return A(s.modelValue,e=>{let t=e??``;f.value!==t&&(f.value=t)}),o.onResetSearchTerm(()=>{f.value=s.modelValue.value??``}),A(o.filterState,(e,t)=>{!o.isVirtual.value&&t.count===0&&l.highlightFirstItem()}),(e,n)=>(t(),b(O(We),{ref_key:`primitiveElement`,ref:u,modelValue:O(f),"onUpdate:modelValue":n[0]||=e=>c(f)?f.value=e:null,as:e.as,"as-child":e.asChild,"auto-focus":e.autoFocus,disabled:e.disabled,"aria-expanded":O(o).open.value,"aria-controls":O(o).contentId,"aria-autocomplete":`list`,role:`combobox`,autocomplete:`off`,onClick:T,onInput:S,onKeydown:z(y,[`down`,`up`]),onFocus:C,onCompositionstart:O(g),onCompositionupdate:O(_),onCompositionend:O(v)},{default:R(()=>[M(e.$slots,`default`)]),_:3},8,[`modelValue`,`as`,`as-child`,`auto-focus`,`disabled`,`aria-expanded`,`aria-controls`,`onCompositionstart`,`onCompositionupdate`,`onCompositionend`]))}}),tt=F({__name:`ComboboxAnchor`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(n){let{forwardRef:r}=X();return(n,i)=>(t(),b(O(J),{"as-child":``,reference:n.reference},{default:R(()=>[e(O(q),a({ref:O(r),"as-child":n.asChild,as:n.as},n.$attrs),{default:R(()=>[M(n.$slots,`default`)]),_:3},16,[`as-child`,`as`])]),_:3},8,[`reference`]))}}),[nt,rt]=V(`ComboboxContent`),it=F({__name:`ComboboxContentImpl`,props:{position:{type:String,required:!1,default:`inline`},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},memoDependencies:{type:Array,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},dir:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(n,{emit:r}){let i=n,o=r,{position:c}=C(i),l=$(),u=Symbol(`ComboboxContent`);A(c,e=>l.onContentPositionChange(u,e),{immediate:!0});let d=s(()=>l.ignoreFilter.value?l.allItems.value.size===0:l.filterState.value.count===0),{forwardRef:f,currentElement:m}=X();W(i.bodyLock),re(),oe(l.parentElement);let g=s(()=>i.position===`popper`?i:{}),_=te(g.value),v={boxSizing:`border-box`,"--reka-combobox-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-combobox-content-available-width":`var(--reka-popper-available-width)`,"--reka-combobox-content-available-height":`var(--reka-popper-available-height)`,"--reka-combobox-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-combobox-trigger-height":`var(--reka-popper-anchor-height)`};rt({position:c});let y=x(!1);p(()=>{l.inputElement.value&&(y.value=m.value.contains(l.inputElement.value),y.value&&l.inputElement.value.focus())}),h(()=>{l.onContentUnmount(u);let e=H();y.value&&(!e||e===document.body)&&l.triggerElement.value?.focus()});function w(e){if(l.parentElement.value?.contains(e))return!0;let t=(e instanceof Element?e.closest(`label`):null)?.control;return!!t&&!!l.parentElement.value?.contains(t)}let T={placed:()=>l.onContentPlaced(u)};return(n,r)=>(t(),b(O(Ue),{"as-child":``},{default:R(()=>[e(O(se),{"as-child":``,onMountAutoFocus:r[5]||=B(()=>{},[`prevent`]),onUnmountAutoFocus:r[6]||=B(()=>{},[`prevent`])},{default:R(()=>[e(O(fe),{"as-child":``,"disable-outside-pointer-events":n.disableOutsidePointerEvents,onDismiss:r[0]||=e=>O(l).onOpenChange(!1),onFocusOutside:r[1]||=e=>{w(e.target)&&e.preventDefault(),o(`focusOutside`,e)},onInteractOutside:r[2]||=e=>o(`interactOutside`,e),onEscapeKeyDown:r[3]||=e=>o(`escapeKeyDown`,e),onPointerDownOutside:r[4]||=e=>{w(e.target)&&e.preventDefault(),o(`pointerDownOutside`,e)}},{default:R(()=>[(t(),b(S(O(c)===`popper`?O(ue):O(q)),a({...n.$attrs,...O(_)},{id:O(l).contentId,ref:O(f),"memo-dependencies":O(c)===`popper`?[O(l).filterSearch.value,O(l).filterState.value]:void 0,"data-state":O(l).open.value?`open`:`closed`,"data-empty":d.value?``:void 0,style:{display:i.hideWhenEmpty&&d.value?`none`:`flex`,flexDirection:`column`,outline:`none`,...O(c)===`popper`?v:{}}},N(O(c)===`popper`?T:{})),{default:R(()=>[M(n.$slots,`default`)]),_:3},16,[`id`,`memo-dependencies`,`data-state`,`data-empty`,`style`]))]),_:3},8,[`disable-outside-pointer-events`])]),_:3})]),_:3}))}}),at=F({__name:`ComboboxContent`,props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},memoDependencies:{type:Array,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},dir:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(n,{emit:r}){let i=ae(n,r),{forwardRef:o}=X(),s=$();return s.contentId||=Y(void 0,`reka-combobox-content`),(n,r)=>(t(),b(O(le),{present:n.forceMount||O(s).open.value},{default:R(()=>[e(it,a({...O(i),...n.$attrs},{ref:O(o)}),{default:R(()=>[M(n.$slots,`default`)]),_:3},16)]),_:3},8,[`present`]))}}),[ot,st]=V(`ComboboxGroup`),ct=F({__name:`ComboboxItem`,props:{textValue:{type:String,required:!1},value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`select`],setup(e,{emit:n}){let i=e,c=n,l=Y(void 0,`reka-combobox-item`),u=$(),d=ot(null),{primitiveElement:f,currentElement:_}=K();if(i.value===``)throw Error(`A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.`);let v=s(()=>{if(u.isVirtual.value||u.ignoreFilter.value||!u.filterSearch.value)return!0;{let e=u.filterState.value.items.get(l);return e===void 0||e>0}});return p(()=>{u.allItems.value.set(l,i.textValue||_.value.textContent||_.value.innerText);let e=d?.id;e&&(u.allGroups.value.has(e)?u.allGroups.value.get(e)?.add(l):u.allGroups.value.set(e,new Set([l])))}),h(()=>{u.allItems.value.delete(l)}),(e,n)=>v.value?g([v.value,O(u).filterSearch.value,O(u).disabled.value,e.disabled,i.value,i.as,i.asChild,...Object.values(e.$attrs)],()=>(t(),b(O(Je),a({key:0},i,{id:O(l),ref_key:`primitiveElement`,ref:f,disabled:O(u).disabled.value||e.disabled,onSelect:n[0]||=t=>{c(`select`,t),!t.defaultPrevented&&(!O(u).multiple.value&&!e.disabled&&!O(u).disabled.value?(t.preventDefault(),O(u).onOpenChange(!1),O(u).modelValue.value=i.value):O(u).multiple.value&&O(u).inputElement.value?.focus())}}),{default:R(()=>[M(e.$slots,`default`,{},()=>[m(r(e.value),1)])]),_:3},16,[`id`,`disabled`])),n,1):o(`v-if`,!0)}}),lt=F({__name:`ComboboxPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let n=e;return(e,r)=>(t(),b(O(ie),_(D(n)),{default:R(()=>[M(e.$slots,`default`)]),_:3},16))}}),ut=F({__name:`ComboboxViewport`,props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(n){let r=n,{forwardRef:i}=X(),{nonce:o}=C(r),s=Se(o),c=$();return(n,o)=>(t(),u(f,null,[e(O(q),a({...n.$attrs,...r},{ref:O(i),"data-reka-combobox-viewport":``,role:`presentation`,style:{position:`relative`,flex:O(c).isVirtual.value?void 0:1,overflow:`auto`}}),{default:R(()=>[M(n.$slots,`default`)]),_:3},16,[`style`]),e(O(q),{as:`style`,nonce:O(s)},{default:R(()=>o[0]||=[m(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-combobox-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-combobox-viewport]::-webkit-scrollbar { display: none; } `)]),_:1,__:[0]},8,[`nonce`])],64))}}),dt={class:`truncate`},ft=F({inheritAttrs:!1,__name:`RefAutocomplete`,props:v({suggestions:{},placeholder:{},icon:{}},{modelValue:{default:``},modelModifiers:{}}),emits:[`update:modelValue`],setup(i){let s=P(i,`modelValue`),c=ke(()=>void 0),l={branch:`i-ph:git-branch-duotone`,tag:`i-ph:tag-duotone`};return(p,m)=>(t(),b(O($e),{modelValue:s.value,"onUpdate:modelValue":m[0]||=e=>s.value=e,"open-on-focus":``,"open-on-click":``},{default:R(()=>[e(O(tt),a(p.$attrs,{class:`h-9 min-w-0 inline-flex items-center gap-2 border border-base rounded bg-raised px-2 text-sm transition focus-within:ring-2 focus-within:ring-primary-500/40`}),{default:R(()=>[i.icon?(t(),u(`span`,{key:0,class:n([i.icon,`shrink-0 op-fade`]),"aria-hidden":`true`},null,2)):o(``,!0),e(O(et),{placeholder:i.placeholder,"aria-label":i.placeholder,class:`min-w-0 flex-1 bg-transparent color-base font-mono outline-none placeholder:op-mute`},null,8,[`placeholder`,`aria-label`])]),_:1},16),e(O(lt),{to:O(c)},{default:R(()=>[e(O(at),{position:`popper`,"side-offset":6,class:`z-dropdown max-h-72 min-w-[--reka-combobox-trigger-width] overflow-auto border border-base rounded-lg bg-glass:75 p-1 shadow-lg`,"data-af-animate":``},{default:R(()=>[e(O(ut),null,{default:R(()=>[(t(!0),u(f,null,d(i.suggestions,e=>(t(),b(O(ct),{key:`${e.kind}:${e.name}`,value:e.name,class:`flex cursor-pointer select-none items-center gap-2 rounded-md px-2 py-1.5 text-sm color-base font-mono outline-none transition data-[highlighted]:bg-hover`},{default:R(()=>[y(`span`,{class:n([l[e.kind],`shrink-0 op-fade`]),"aria-hidden":`true`},null,2),y(`span`,dt,r(e.name),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1})]),_:1},8,[`to`])]),_:1},8,[`modelValue`]))}}),pt={class:`relative min-h-screen flex flex-col`},mt={class:`mxa max-w-6xl w-full flex flex-1 flex-col px-6 py-16 sm:py-20`},ht={class:`grid items-start gap-12 lg:grid-cols-[minmax(0,1fr)_minmax(0,30rem)] lg:gap-16`},gt={class:`flex flex-col gap-8`},_t={class:`max-w-md text-sm leading-relaxed op-fade`},vt={class:`flex flex-col gap-3`},yt={class:`text-xs font-mono op-fade`},bt={class:`flex flex-wrap gap-2`},xt={class:`text-xs op-fade`},St={class:`max-w-md flex flex-col gap-3`},Ct={class:`text-xs font-mono op-fade`},wt={class:`min-w-0 flex flex-col gap-6`},Tt={key:0,class:`flex flex-col gap-2`},Et={class:`text-xs font-mono op-fade`},Dt={class:`flex flex-col border border-base rounded-lg py-1`},Ot={class:`min-w-0 flex-1 truncate font-mono`},kt=[`title`],At={key:1,class:`flex flex-col gap-2`},jt={class:`text-xs font-mono op-fade`},Mt={class:`flex flex-col border border-base rounded-lg py-1`},Nt={class:`shrink-0 text-xs op-fade`},Pt={class:`min-w-0 flex-1 truncate`},Ft=10,It=F({__name:`index`,setup(n){let i=E(Ce),a=ye(),{t:c}=j(),h=x(),g=x(``),_=x(``),v=s(()=>[...(h.value?.branches??[]).map(e=>({name:e,kind:`branch`})),...(h.value?.tags??[]).map(e=>({name:e,kind:`tag`}))]),S=s(()=>{let e=h.value?.currentBranch;return e&&e!==h.value?.defaultBranch?.name?e:void 0}),C=s(()=>(h.value?.branches??[]).filter(e=>e!==h.value?.defaultBranch?.name).slice(0,Ft));p(async()=>{h.value=await we(i),g.value||=h.value.defaultBranch?.ref??``,_.value||=h.value.currentBranch??`HEAD`});function w(){a.push(Z({kind:`compare`,range:`${g.value.trim()}...${_.value.trim()}`}))}let T=x(``),D=s(()=>ve(T.value));function k(){D.value&&a.push(D.value)}return _e(()=>c(`local.picker.title`)),(n,i)=>{let a=l(`RouterLink`);return t(),u(`div`,pt,[e(De),y(`main`,mt,[y(`section`,ht,[y(`div`,gt,[e(Oe),y(`p`,_t,r(n.$t(`local.picker.tagline`)),1),y(`form`,{class:`max-w-md flex items-stretch gap-2`,onSubmit:B(w,[`prevent`])},[e(ft,{modelValue:g.value,"onUpdate:modelValue":i[0]||=e=>g.value=e,suggestions:v.value,placeholder:n.$t(`local.picker.base`),icon:`i-ph:git-branch-duotone`,class:`flex-1`},null,8,[`modelValue`,`suggestions`,`placeholder`]),i[3]||=y(`span`,{class:`self-center font-mono op-fade`,"aria-hidden":`true`},`...`,-1),e(ft,{modelValue:_.value,"onUpdate:modelValue":i[1]||=e=>_.value=e,suggestions:v.value,placeholder:n.$t(`local.picker.head`),class:`flex-1`},null,8,[`modelValue`,`suggestions`,`placeholder`]),e(be,{type:`submit`,variant:`primary`,class:`pl-3 pr-4`,icon:`i-ph-arrow-right-bold`,disabled:!g.value.trim()||!_.value.trim()},{default:R(()=>[m(r(n.$t(`local.picker.compare`)),1)]),_:1},8,[`disabled`])],32),y(`div`,vt,[y(`h2`,yt,r(n.$t(`local.picker.shortcuts`)),1),y(`div`,bt,[S.value&&h.value?.defaultBranch?(t(),b(Ee,{key:0,to:O(Z)({kind:`branch`,branch:S.value}),parent:S.value},{default:R(()=>[y(`span`,xt,r(n.$t(`local.picker.against`,{base:h.value.defaultBranch.ref})),1)]),_:1},8,[`to`,`parent`])):o(``,!0),e(Ee,{to:O(Z)({kind:`worktree`}),parent:n.$t(`local.picker.worktree`)},null,8,[`to`,`parent`])])]),y(`div`,St,[y(`h2`,Ct,r(n.$t(`local.picker.github`)),1),y(`form`,{class:`flex items-stretch gap-2`,onSubmit:B(k,[`prevent`])},[e(ce,{modelValue:T.value,"onUpdate:modelValue":i[2]||=e=>T.value=e,icon:`i-ph:link-simple-duotone`,placeholder:`https://github.com/owner/repo/pull/123`,class:`flex-1`},null,8,[`modelValue`]),e(be,{type:`submit`,variant:`primary`,class:`pl-3 pr-4`,icon:`i-ph-arrow-right-bold`,disabled:!D.value},{default:R(()=>[m(r(n.$t(`landing.open`)),1)]),_:1},8,[`disabled`])],32)])]),y(`div`,wt,[C.value.length&&h.value?.defaultBranch?(t(),u(`section`,Tt,[y(`h2`,Et,r(n.$t(`local.picker.branches`)),1),y(`ul`,Dt,[(t(!0),u(f,null,d(C.value,s=>(t(),u(`li`,{key:s},[e(a,{to:O(Z)({kind:`branch`,branch:s}),class:`flex items-center gap-2 px-3 py-1.5 text-sm transition hover:bg-hover`},{default:R(()=>[i[4]||=y(`span`,{class:`i-ph:git-branch-duotone shrink-0 op-fade`,"aria-hidden":`true`},null,-1),y(`span`,Ot,r(s),1),s===S.value?(t(),u(`span`,{key:0,class:`i-ph:check-circle-duotone shrink-0 color-accent-teal`,title:n.$t(`local.picker.current`)},null,8,kt)):o(``,!0)]),_:2},1032,[`to`])]))),128))])])):o(``,!0),h.value?.commits.length?(t(),u(`section`,At,[y(`h2`,jt,r(n.$t(`local.picker.recentCommits`)),1),y(`ul`,Mt,[(t(!0),u(f,null,d(h.value.commits,n=>(t(),u(`li`,{key:n.sha},[e(a,{to:O(Z)({kind:`commit`,sha:n.sha}),title:n.subject,class:`flex items-center gap-3 px-3 py-1.5 text-sm transition hover:bg-hover`},{default:R(()=>[y(`code`,Nt,r(n.sha.slice(0,7)),1),y(`span`,Pt,r(n.subject),1)]),_:2},1032,[`to`,`title`])]))),128))])])):o(``,!0)])])]),e(Te)])}}});export{It as default};
|