sliccy 6.43.0 → 6.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/node-server/electron-controller.d.ts +34 -2
- package/dist/node-server/electron-controller.js +21 -4
- package/dist/node-server/index.js +8 -0
- package/dist/ui/assets/{account-store-BzC0x752.js → account-store-BfqIrMMe.js} +30 -30
- package/dist/ui/assets/account-store-BkG4BDQC.js +42 -0
- package/dist/ui/assets/{adobe-KfCyFC0w.js → adobe-AHM3MRvp.js} +1 -1
- package/dist/ui/assets/{adobe-CoeG8AXw.js → adobe-C6T_0i0A.js} +1 -1
- package/dist/ui/assets/{anthropic-messages-CwKCE8PD.js → anthropic-messages-CTRXVqwn.js} +2 -2
- package/dist/ui/assets/{anthropic-messages-DPd961JX.js → anthropic-messages-EYoOyCX6.js} +2 -2
- package/dist/ui/assets/{apply-layout-Bt4lk2Me.js → apply-layout-DPvksNi2.js} +1 -1
- package/dist/ui/assets/{apps-4osfSnfB.js → apps-3MvdDBMc.js} +1 -1
- package/dist/ui/assets/{azure-openai-B8P4TPnO.js → azure-openai-ChaObvN0.js} +1 -1
- package/dist/ui/assets/{azure-openai-Bmb5Ncn6.js → azure-openai-DauBJZ6w.js} +1 -1
- package/dist/ui/assets/azure-openai-responses-DhklLm0Z.js +1 -0
- package/dist/ui/assets/azure-openai-responses-eJTO6o5G.js +1 -0
- package/dist/ui/assets/bedrock-camp-BfNg24Ce.js +1 -0
- package/dist/ui/assets/bedrock-camp-DMGplF70.js +1 -0
- package/dist/ui/assets/{cerebras-DXkRDNk9.js → cerebras-B1M_Nhi8.js} +1 -1
- package/dist/ui/assets/{cerebras-DTX8p8iF.js → cerebras-M2wuTTRu.js} +1 -1
- package/dist/ui/assets/compat-C0CyHyoL.js +2 -0
- package/dist/ui/assets/{composer-speech-CNhvMpkj.js → composer-speech-DjrdK6qX.js} +1 -1
- package/dist/ui/assets/{connect-surface-EVVLAHmG.js → connect-surface-C1kBb_wz.js} +1 -1
- package/dist/ui/assets/{context-compaction-DDaM9TWa.js → context-compaction-MXRS4Kb2.js} +1 -1
- package/dist/ui/assets/{ensure-speech-assets-Djt8o5f7.js → ensure-speech-assets-DO-sSGi6.js} +1 -1
- package/dist/ui/assets/{error-body-CqsCxuQ4.js → error-body-pkrba6pf.js} +1 -1
- package/dist/ui/assets/fs-CEdcSaaF.js +2 -0
- package/dist/ui/assets/fs-CwhZvLDc.js +1 -0
- package/dist/ui/assets/{github-copilot-BYeR_g6J.js → github-copilot-DzYB2zAw.js} +1 -1
- package/dist/ui/assets/{github-copilot-CVI88qdz.js → github-copilot-q5qtLl1S.js} +1 -1
- package/dist/ui/assets/{github-TCKAE5Uh.js → github-h8ItWdXm.js} +1 -1
- package/dist/ui/assets/{github-install-BuPC3YZw.js → github-install-DIeJprV5.js} +1 -1
- package/dist/ui/assets/github-xXbjvj_q.js +2 -0
- package/dist/ui/assets/{github-zip-Dlg-Q2ue.js → github-zip-DSYHJoT0.js} +1 -1
- package/dist/ui/assets/google-generative-ai-DEcgNsJh.js +1 -0
- package/dist/ui/assets/google-generative-ai-u7R_TH9o.js +1 -0
- package/dist/ui/assets/google-shared-BPNUreTT.js +371 -0
- package/dist/ui/assets/google-shared-CjO3-4_Q.js +11 -0
- package/dist/ui/assets/google-vertex-CTrzlewG.js +1 -0
- package/dist/ui/assets/google-vertex-bmq-ZPFH.js +1 -0
- package/dist/ui/assets/{hear-krvcqhL7.js → hear-CorI8zW2.js} +1 -1
- package/dist/ui/assets/{hear-C4KEOBVf.js → hear-DyYjYZXw.js} +1 -1
- package/dist/ui/assets/{kernel-worker-DEHxwjq6.js → kernel-worker-BksrbsiK.js} +117 -117
- package/dist/ui/assets/{kokoro-engine-CiPWAMSR.js → kokoro-engine-u_9YkV7P.js} +1 -1
- package/dist/ui/assets/{legacy-api-aliases-DAkrHYf9.js → legacy-api-aliases-C0CAIWhd.js} +1 -1
- package/dist/ui/assets/{legacy-api-aliases-BVP0Ho8x.js → legacy-api-aliases-qI5FdR49.js} +1 -1
- package/dist/ui/assets/{local-llm-D8ts0-Qm.js → local-llm-B1inFenw.js} +1 -1
- package/dist/ui/assets/{local-llm-CB_9Ui8j.js → local-llm-Bi8giqeq.js} +1 -1
- package/dist/ui/assets/{main-CYhcxAYn.js → main-BgdEVXnN.js} +3 -3
- package/dist/ui/assets/{mistral-conversations-Cyp2kssI.js → mistral-conversations-CunWHeDt.js} +2 -2
- package/dist/ui/assets/{mistral-conversations-gFwkX5N9.js → mistral-conversations-DWRsBsfa.js} +1 -1
- package/dist/ui/assets/models-BSkXF4T6.js +1 -0
- package/dist/ui/assets/{mount-Wax857ht.js → mount-BhXjPSMe.js} +1 -1
- package/dist/ui/assets/{mount-Dh40D48l.js → mount-DsBbQvRx.js} +2 -2
- package/dist/ui/assets/{mount-recovery-D3-N1o_E.js → mount-recovery-DapDhhBv.js} +1 -1
- package/dist/ui/assets/{new-session-PVPeVFQc.js → new-session-D0GziV3t.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-onRgf3Is.js → oauth-bootstrap-exJhjKek.js} +2 -2
- package/dist/ui/assets/{openai-codex-DgZ9eDkQ.js → openai-codex-B5d5fatr.js} +1 -1
- package/dist/ui/assets/{openai-codex-DF2vOI8z.js → openai-codex-_wi2GlfO.js} +1 -1
- package/dist/ui/assets/openai-codex-responses-8wXA5Dto.js +7 -0
- package/dist/ui/assets/openai-codex-responses-BYAXyTDg.js +7 -0
- package/dist/ui/assets/openai-completions-CfjF1o-N.js +5 -0
- package/dist/ui/assets/openai-completions-DAIm60Lb.js +5 -0
- package/dist/ui/assets/openai-responses-01Q5Zv3q.js +1 -0
- package/dist/ui/assets/openai-responses-B7rl8DAX.js +1 -0
- package/dist/ui/assets/{openai-responses-shared-uSSusU2w.js → openai-responses-shared-B_T0yMQn.js} +3 -3
- package/dist/ui/assets/{openai-responses-shared-DajOm-sC.js → openai-responses-shared-BrIGUa2e.js} +3 -3
- package/dist/ui/assets/{openrouter-KaXerwGG.js → openrouter-DF11pL27.js} +1 -1
- package/dist/ui/assets/{openrouter-BbF3Yuh_.js → openrouter-PxN34b-T.js} +1 -1
- package/dist/ui/assets/{openrouter-images-7cFnqg4_.js → openrouter-images-CeBDTy7a.js} +1 -1
- package/dist/ui/assets/{openrouter-images-eEy7Fej8.js → openrouter-images-JzygwjVz.js} +1 -1
- package/dist/ui/assets/{openrouter-models-gCCUSdgw.js → openrouter-models-BVfLgK5R.js} +1 -1
- package/dist/ui/assets/{openrouter-models-DmontTTG.js → openrouter-models-Ds9BfRxR.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-CyGkjg56.js → openrouter-oauth-6UZDhQTB.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-Dx8hVsUq.js → openrouter-oauth-DQLx11_A.js} +1 -1
- package/dist/ui/assets/openrouter.models-CrhNqqEN.js +1 -0
- package/dist/ui/assets/openrouter.models-DkPWoMvu.js +1 -0
- package/dist/ui/assets/{panel-rpc-handlers-B7p25iL1.js → panel-rpc-handlers-CDZ2M3GK.js} +2 -2
- package/dist/ui/assets/{provider-C3zSzTlr.js → provider-Bw_Z5wgp.js} +1 -1
- package/dist/ui/assets/{provider-CdACKvd3.js → provider-Cg9DqCH6.js} +2 -2
- package/dist/ui/assets/{provider-settings-B8PQoEsb.js → provider-settings-0ASsdEo7.js} +1 -1
- package/dist/ui/assets/{provider-settings-DBbKsRoG.js → provider-settings-CqsZtmc2.js} +1 -1
- package/dist/ui/assets/provider-store-access-BJPtEdx_.js +2 -0
- package/dist/ui/assets/provider-store-access-Zeas5UVO.js +1 -0
- package/dist/ui/assets/{providers-CQOF0OxI.js → providers-D2SzyuS_.js} +2 -2
- package/dist/ui/assets/{providers-DW9h25Xk.js → providers-DTkQsdaJ.js} +1 -1
- package/dist/ui/assets/{quick-llm-YdXmDgWO.js → quick-llm-B1IKnoro.js} +1 -1
- package/dist/ui/assets/{recovery-screen-BBq0CbOW.js → recovery-screen-vCthBaZL.js} +1 -1
- package/dist/ui/assets/{redirect-uri-BtFxK4OI.js → redirect-uri-pK4MGnYj.js} +1 -1
- package/dist/ui/assets/{session-freezer-D2xY_37i.js → session-freezer-CWeTl5Ug.js} +3 -3
- package/dist/ui/assets/{setup-feature-flags-remote-Dq70lhlj.js → setup-feature-flags-remote-DCnULnlG.js} +1 -1
- package/dist/ui/assets/{setup-standalone-prelude-TJXZI1xV.js → setup-standalone-prelude-CFakSgWH.js} +1 -1
- package/dist/ui/assets/{setup-sudo-DqKSTbxO.js → setup-sudo-DLsSOUDP.js} +2 -2
- package/dist/ui/assets/sidecar-merge-ChbmI6Wr.js +1 -0
- package/dist/ui/assets/sidecar-merge-DP5Rveo5.js +1 -0
- package/dist/ui/assets/sidecar-repair-CfVdKYNb.js +1 -0
- package/dist/ui/assets/sidecar-repair-cn5xY6Gb.js +1 -0
- package/dist/ui/assets/{skills-BXWN2lD6.js → skills-BAv4QH3_.js} +1 -1
- package/dist/ui/assets/{speak-DLj1bEBh.js → speak-3ERYo9mh.js} +1 -1
- package/dist/ui/assets/{speak-BqGkX52J.js → speak-BJfvdDl7.js} +1 -1
- package/dist/ui/assets/{store-C-oC5Dsv.js → store-DmIA09wr.js} +1 -1
- package/dist/ui/assets/{store-DsiNO53b.js → store-VHFEG-KZ.js} +1 -1
- package/dist/ui/assets/{sudo-BIuk1k1q.js → sudo-DMWEEnXF.js} +1 -1
- package/dist/ui/assets/transform-messages-DEFauvrq.js +1 -0
- package/dist/ui/assets/transform-messages-XkZ1QnTb.js +1 -0
- package/dist/ui/assets/{transformers-env-CflaNVb-.js → transformers-env-B2igCBi6.js} +1 -1
- package/dist/ui/assets/{transformers-env-XCYT1oxA.js → transformers-env-DU9KkwRf.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-DrziRNRB.js → upgrade-detection-kOnlsa6m.js} +1 -1
- package/dist/ui/assets/{voice-reply-AGGoZ9Ey.js → voice-reply-DuabCBM2.js} +1 -1
- package/dist/ui/assets/{wc-extension-VX3ZakVl.js → wc-extension-Csg9tKxf.js} +2 -2
- package/dist/ui/assets/{wc-follower-DzPdgiZN.js → wc-follower-C5ErFyaa.js} +3 -3
- package/dist/ui/assets/{wc-live-B5H5aWbX.js → wc-live-DiqRwfJl.js} +3 -3
- package/dist/ui/assets/{wc-nav-DYKStk4A.js → wc-nav-_JOvFwfI.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-fMXbJHE6.js → wc-onboarding-BSs6x2FR.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-zyLzZm58.js → wc-placeholder-UxILszwu.js} +2 -2
- package/dist/ui/assets/{wc-settings-BXhukZUh.js → wc-settings-CzWoxwvc.js} +2 -2
- package/dist/ui/assets/{wc-shell-C5zb79_R.js → wc-shell-FLfdSQyK.js} +7 -7
- package/dist/ui/assets/{wc-sprinkles-DBXkVV3r.js → wc-sprinkles-CCAwa0Z7.js} +2 -2
- package/dist/ui/assets/{wc-tray-DyqmeJQK.js → wc-tray-DV5jBUwL.js} +2 -2
- package/dist/ui/assets/{whisper-engine-i7jnYUoj.js → whisper-engine-DKSa8auO.js} +1 -1
- package/dist/ui/assets/{whisper-session-hMgosjVG.js → whisper-session-CnbZ_WW2.js} +2 -2
- package/dist/ui/assets/{xai-grok-DxaYAHiB.js → xai-grok-BANdowXb.js} +1 -1
- package/dist/ui/assets/{xai-grok-CGVh0Pwi.js → xai-grok-DgvHKcEu.js} +1 -1
- package/dist/ui/index.html +12 -12
- package/dist/ui/packages/webapp/index.html +12 -12
- package/package.json +2 -2
- package/dist/ui/assets/account-store-C1tZH-mA.js +0 -42
- package/dist/ui/assets/azure-openai-responses-CtOKUN00.js +0 -1
- package/dist/ui/assets/azure-openai-responses-oRGXQA3K.js +0 -1
- package/dist/ui/assets/bedrock-camp-BDCjQMZx.js +0 -1
- package/dist/ui/assets/bedrock-camp-CFmElpzZ.js +0 -1
- package/dist/ui/assets/compat-Bn8HnC3L.js +0 -2
- package/dist/ui/assets/fs-DJwfGyA1.js +0 -2
- package/dist/ui/assets/fs-DOqDOgs2.js +0 -1
- package/dist/ui/assets/github-t4MIUh5J.js +0 -2
- package/dist/ui/assets/google-generative-ai-BL_SqY5W.js +0 -1
- package/dist/ui/assets/google-generative-ai-DDF2tpZq.js +0 -1
- package/dist/ui/assets/google-shared-DPuPo5mO.js +0 -11
- package/dist/ui/assets/google-shared-biiFuSpC.js +0 -371
- package/dist/ui/assets/google-vertex-CobhNXpX.js +0 -1
- package/dist/ui/assets/google-vertex-VXUUgM7o.js +0 -1
- package/dist/ui/assets/models-DgdVqaw5.js +0 -1
- package/dist/ui/assets/openai-codex-responses-BJOy6BEd.js +0 -7
- package/dist/ui/assets/openai-codex-responses-BfT5s3yO.js +0 -7
- package/dist/ui/assets/openai-completions-CmslRX3-.js +0 -5
- package/dist/ui/assets/openai-completions-DDas47cy.js +0 -5
- package/dist/ui/assets/openai-responses-CHXkcom_.js +0 -1
- package/dist/ui/assets/openai-responses-DWlnQ-B0.js +0 -1
- package/dist/ui/assets/openrouter.models-Byp0hyfF.js +0 -1
- package/dist/ui/assets/openrouter.models-C8HitxAG.js +0 -1
- package/dist/ui/assets/provider-store-access-ChzjVdqD.js +0 -1
- package/dist/ui/assets/provider-store-access-Dcy68Vs8.js +0 -2
- package/dist/ui/assets/sidecar-repair-B31h6Aw0.js +0 -1
- package/dist/ui/assets/sidecar-repair-DVW7uarV.js +0 -1
- package/dist/ui/assets/transform-messages-D27pVLZ-.js +0 -1
- package/dist/ui/assets/transform-messages-DgR3h-Ck.js +0 -1
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{i as e}from"./diagnostics-DN_idNHx.js";import{n as t,t as n}from"./models-BSkXF4T6.js";import{n as r}from"./json-parse-CgFfIg4Q.js";import{t as i}from"./provider-env-CTOcDKrQ.js";import{i as a,n as o,o as s,t as c}from"./transform-messages-XkZ1QnTb.js";import{t as l}from"./headers-CbDaTl3c.js";import{t as u}from"./provider-retry-C8PJzY_l.js";import{t as d}from"./sanitize-unicode-DmIE6hZJ.js";import{a as f,i as p,n as m,r as h,t as g}from"./constrained-sampling-DafcjXU6.js";import{n as _,t as v}from"./github-copilot-headers-DRgtIyTm.js";import{n as y}from"./openai-DQxsE__c.js";import{n as b,t as x}from"./error-body-pkrba6pf.js";import{t as S}from"./openai-prompt-cache-DXo9f3w5.js";import{t as C}from"./hash-yQufAZII.js";function w(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 T(e,t,n){if(t)return t;if(w(n,`authorization`)||w(n,`cf-aig-authorization`))return`unused`;throw Error(`No API key for provider: ${e}`)}function E(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 D(e){let t=new Set;for(let n of e)if(n.role===`toolResult`)for(let e of n.addedToolNames??[])t.add(e);return t}function O(e,t){if(!e)return[];let n=new Map(e.map(e=>[e.name,e]));return Array.from(t).map(e=>n.get(e)).filter(e=>e!==void 0)}function k(e){return e.type===`text`}function A(e){return e.type===`thinking`}function j(e){return e.type===`toolCall`}function M(e){return e.type===`image`}function N(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.type===`reasoning.encrypted`&&typeof t.id==`string`&&t.id.length>0&&typeof t.data==`string`&&t.data.length>0}function P(e,t){return e||(i(`PI_CACHE_RETENTION`,t)===`long`?`long`:`short`)}var F=(t,n,i)=>{let a=new e;return(async()=>{let e={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()};try{let o=T(t.provider,i?.apiKey,i?.headers),s=$(t),c=m(n.tools,s.supportsOpenAIGrammarTools),d=P(i?.cacheRetention,i?.env),f=d===`none`?void 0:i?.sessionId,p=L(t,n,o,i?.headers,i?.fetch,f,s),h=R(t,n,i,s,d,c),_=await i?.onPayload?.(h,t);_!==void 0&&(h=_);let v={...i?.signal?{signal:i.signal}:{},...i?.timeoutMs===void 0?{}:{timeout:i.timeoutMs},maxRetries:0},{data:y,response:b}=await u(()=>p.chat.completions.create(h,v).withResponse(),{maxRetries:i?.maxRetries,maxRetryDelayMs:i?.maxRetryDelayMs,signal:i?.signal});await i?.onResponse?.({status:b.status,headers:l(b.headers)},t),a.push({type:`start`,partial:e});let x=null,S=null,C=!1,w=new Map,E=new Map,D=new Map,O=e.content,k=e=>O.indexOf(e),A=e=>{let t=e.customInput?.property;if(t===void 0)return``;let n=e.arguments[t];return typeof n==`string`?n:``},j=(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},M=t=>{let n=k(t);if(n!==-1){if(t.type===`text`)a.push({type:`text_end`,contentIndex:n,content:t.text,partial:e});else if(t.type===`thinking`)a.push({type:`thinking_end`,contentIndex:n,content:t.thinking,partial:e});else if(t.type===`toolCall`){if(t.customInput){let r=j(t,A(t),!0);r!==void 0&&a.push({type:`toolcall_delta`,contentIndex:n,delta:r,partial:e})}else t.arguments=r(t.partialArgs);delete t.partialArgs,delete t.customInput,delete t.streamIndex,a.push({type:`toolcall_end`,contentIndex:n,toolCall:t,partial:e})}}},F=()=>(x||(x={type:`text`,text:``},O.push(x),a.push({type:`text_start`,contentIndex:k(x),partial:e})),x),I=t=>(S||(S={type:`thinking`,thinking:``,thinkingSignature:t},O.push(S),a.push({type:`thinking_start`,contentIndex:k(S),partial:e})),S),z=e=>{if(!e.id)return;let t=D.get(e.id);t&&(e.thoughtSignature=t,D.delete(e.id))},B=t=>{let n=typeof t.index==`number`?t.index:void 0,r=t.function?.name??t.custom?.name??``,i=n===void 0?void 0:w.get(n);if(!i&&t.id&&(i=E.get(t.id)),!i){let o=t.custom&&!t.function?c.get(r)??`input`:void 0,s=o!==void 0;i={type:`toolCall`,id:t.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&&w.set(n,i),t.id&&E.set(t.id,i),O.push(i),a.push({type:`toolcall_start`,contentIndex:k(i),partial:e})}if(n!==void 0&&i.streamIndex===void 0&&(i.streamIndex=n,w.set(n,i)),t.id&&E.set(t.id,i),!i.name&&r&&(i.name=r),t.custom&&!t.function&&!i.customInput){let e=c.get(i.name)??`input`;i.arguments={[e]:``},i.customInput={property:e,jsonBuffer:{input:``,started:!1,closed:!1}},delete i.partialArgs}return z(i),i};for await(let n of y){if(!n||typeof n!=`object`)continue;e.responseId||=n.id,typeof n.model==`string`&&n.model.length>0&&n.model!==t.id&&(e.responseModel||=n.model),n.usage&&(e.usage=Z(n.usage,t));let i=Array.isArray(n.choices)?n.choices[0]:void 0;if(i){if(!n.usage&&i.usage&&(e.usage=Z(i.usage,t)),i.finish_reason){e.rawStopReason=i.finish_reason;let t=Q(i.finish_reason);e.stopReason=t.stopReason,t.errorMessage&&(e.errorMessage=t.errorMessage),C=!0}if(i.delta){if(i.delta.content!==null&&i.delta.content!==void 0&&i.delta.content.length>0){let t=F();t.text+=i.delta.content,a.push({type:`text_delta`,contentIndex:k(t),delta:i.delta.content,partial:e})}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=I(t.provider===`opencode-go`&&s===`reasoning`?`reasoning_content`:s);r.thinking+=n,a.push({type:`thinking_delta`,contentIndex:k(r),delta:n,partial:e})}}if(i?.delta?.tool_calls)for(let t of i.delta.tool_calls){let n=B(t);!n.id&&t.id&&(n.id=t.id,E.set(t.id,n));let i=t.function?.name??t.custom?.name;!n.name&&i&&(n.name=i);let o=``;t.function?.arguments?(o=t.function.arguments,n.partialArgs=(n.partialArgs??``)+t.function.arguments,n.arguments=r(n.partialArgs)):t.custom?.input&&(o=j(n,A(n)+t.custom.input,!1)??``),a.push({type:`toolcall_delta`,contentIndex:k(n),delta:o,partial:e})}let c=i.delta.reasoning_details;if(Array.isArray(c)){for(let e of c)if(N(e)){let t=JSON.stringify(e),n=E.get(e.id);n?n.thoughtSignature=t:D.set(e.id,t)}}}}}for(let e of O)M(e);if(i?.signal?.aborted||e.stopReason===`aborted`)throw Error(`Request was aborted`);if(!C&&!s.supportsFinishReason&&(e.stopReason=e.content.some(e=>e.type===`toolCall`)?`toolUse`:`stop`),e.stopReason===`error`)throw Error(e.errorMessage||`Provider returned an error stop reason`);if(s.supportsFinishReason&&!C||e.stopReason===`pending`)throw Error(`Stream ended without finish_reason`);a.push({type:`done`,reason:e.stopReason,message:e}),a.end()}catch(t){for(let t of e.content)delete t.index,delete t.partialArgs,delete t.customInput,delete t.streamIndex;e.stopReason=i?.signal?.aborted?`aborted`:`error`,e.errorMessage=x(b(t));let n=t?.error?.metadata?.raw;n&&!e.errorMessage.includes(String(n))&&(e.errorMessage+=`\n${n}`),a.push({type:`error`,reason:e.stopReason,error:e}),a.end()}})(),a},I=(e,n,r)=>{T(e.provider,r?.apiKey,r?.headers);let i=a(e,n,r,r?.apiKey),o=r?.reasoning?t(e,r.reasoning):void 0,s=o===`off`?void 0:o,c=r?.toolChoice;return F(e,n,{...i,reasoningEffort:s,toolChoice:c,thinkingBudgets:r?.thinkingBudgets})};function L(e,t,n,r,i,a,o=$(e)){let s={...e.headers};if(e.provider===`github-copilot`){let e=_(t.messages),n=v({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 y({apiKey:n,baseURL:e.baseUrl,dangerouslyAllowBrowser:!0,fetch:i,defaultHeaders:s})}function R(e,t,n,r=$(e),i=P(n?.cacheRetention,n?.env),a=m(t.tools,r.supportsOpenAIGrammarTools)){let c=Y(e,t,r,{grammarToolInputProperties:a}),l=V(r,i),u={model:e.id,messages:c,stream:!0,prompt_cache_key:e.baseUrl.includes(`api.openai.com`)&&i!==`none`||i===`long`&&r.supportsLongCacheRetention?S(n?.sessionId):void 0,prompt_cache_retention:i===`long`&&r.supportsLongCacheRetention?`24h`:void 0};r.supportsUsageInStreaming!==!1&&(u.stream_options={include_usage:!0}),r.supportsStore&&(u.store=!1),n?.maxTokens&&(r.maxTokensField===`max_tokens`?u.max_tokens=n.maxTokens:u.max_completion_tokens=n.maxTokens),n?.temperature!==void 0&&(u.temperature=n.temperature);let d=r.deferredToolsMode===`kimi`?D(t.messages):new Set,f=t.tools?.filter(e=>!d.has(e.name));if(f&&f.length>0?(u.tools=X(f,r),r.zaiToolStream&&(u.tool_stream=!0)):E(t.messages)&&(u.tools=[]),l&&H(c,u.tools,l),n?.toolChoice&&(u.tool_choice=n.toolChoice),r.thinkingFormat===`zai`&&e.reasoning){let t=u;if(t.thinking=n?.reasoningEffort?{type:`enabled`,clear_thinking:!1}:{type:`disabled`},n?.reasoningEffort&&r.supportsReasoningEffort){let r=e.thinkingLevelMap?.[n.reasoningEffort],i=r===void 0?n.reasoningEffort:r;typeof i==`string`&&(t.reasoning_effort=i)}}else if(r.thinkingFormat===`qwen`&&e.reasoning){if(u.enable_thinking=!!n?.reasoningEffort,n?.reasoningEffort&&r.supportsReasoningEffort){let t=e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort;typeof t==`string`&&(u.reasoning_effort=t)}}else if(r.thinkingFormat===`qwen-chat-template`&&e.reasoning)u.chat_template_kwargs={enable_thinking:!!n?.reasoningEffort,preserve_thinking:!0};else if(r.thinkingFormat===`chat-template`&&e.reasoning){let t=z(e,n,r.chatTemplateKwargs);t&&(u.chat_template_kwargs=t)}else if(r.thinkingFormat===`baseten`&&e.reasoning){let t=u,i=z(e,n,r.chatTemplateArgs);if(i&&(t.chat_template_args=i),r.supportsReasoningEffort){let r=n?.reasoningEffort,i=r?e.thinkingLevelMap?.[r]:e.thinkingLevelMap?.off,a=i===void 0?r:i;typeof a==`string`&&(t.reasoning_effort=a)}}else if(r.thinkingFormat===`deepseek`&&e.reasoning)n?.reasoningEffort?u.thinking={type:`enabled`}:e.thinkingLevelMap?.off!==null&&(u.thinking={type:`disabled`}),n?.reasoningEffort&&r.supportsReasoningEffort&&(u.reasoning_effort=e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort);else if(r.thinkingFormat===`openrouter`&&e.reasoning){let t=u;n?.reasoningEffort?t.reasoning={effort:e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort}:e.thinkingLevelMap?.off!==null&&(t.reasoning={effort:e.thinkingLevelMap?.off??`none`})}else if(r.thinkingFormat===`ant-ling`&&e.reasoning&&n?.reasoningEffort){let t=e.thinkingLevelMap?.[n.reasoningEffort];typeof t==`string`&&(u.reasoning={effort:t})}else if(r.thinkingFormat===`together`&&e.reasoning){let t=u;t.reasoning={enabled:!!n?.reasoningEffort},n?.reasoningEffort&&r.supportsReasoningEffort&&(t.reasoning_effort=e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort)}else if(r.thinkingFormat===`string-thinking`&&e.reasoning){let t=u;n?.reasoningEffort?t.thinking=e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort:e.thinkingLevelMap?.off!==null&&(t.thinking=e.thinkingLevelMap?.off??`none`)}else if(n?.reasoningEffort&&e.reasoning&&r.supportsReasoningEffort)u.reasoning_effort=e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort;else if(!n?.reasoningEffort&&e.reasoning&&r.supportsReasoningEffort){let t=e.thinkingLevelMap?.off;typeof t==`string`&&(u.reasoning_effort=t)}if(r.supportsThinkingTokenBudget&&n?.reasoningEffort&&e.reasoning){let t=s(n.reasoningEffort),r={minimal:1024,low:2048,medium:8192,high:16384,...n.thinkingBudgets},i=u.max_tokens??u.max_completion_tokens??e.maxTokens,a=Math.min(r[t],Math.max(0,i-o));a>0&&(u.thinking_token_budget=a)}if(e.compat?.openRouterRouting&&(u.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),u.providerOptions={gateway:e}}}return n?.samplingParams&&Object.assign(u,n.samplingParams),u}function z(e,t,n){let r={};for(let[i,a]of Object.entries(n)){let n=B(e,t,a);n!==void 0&&(r[i]=n)}return Object.keys(r).length>0?r:void 0}function B(e,t,n){if(typeof n!=`object`||!n)return n;let r=t?.reasoningEffort;if(!r&&n.omitWhenOff)return;if(n.$var===`thinking.enabled`)return!!r;let i=r?e.thinkingLevelMap?.[r]:e.thinkingLevelMap?.off;return i===void 0?r:typeof i==`string`?i:void 0}function V(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 H(e,t,n){U(e,n),G(t,n),W(e,n)}function U(e,t){for(let n of e)if(n.role===`system`||n.role===`developer`){K(n,t);return}}function W(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`)&&q(r,t))return}}function G(e,t){if(!e||e.length===0)return;let n=e[e.length-1];n.cache_control=t}function K(e,t){return J(e,t)}function q(e,t){return e.role===`user`||e.role===`assistant`||e.role===`tool`?J(e,t):!1}function J(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 Y(e,t,n,r){let i=[],a=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=C(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},o=c(t.messages,e,e=>a(e));if(t.systemPrompt){let r=e.reasoning&&n.supportsDeveloperRole?`developer`:`system`;i.push({role:r,content:d(t.systemPrompt)})}let s=null;for(let a=0;a<o.length;a++){let c=o[a];if(n.requiresAssistantAfterToolResult&&s===`toolResult`&&c.role===`user`&&i.push({role:`assistant`,content:`I have processed the tool results.`}),c.role===`user`)if(typeof c.content==`string`)i.push({role:`user`,content:d(c.content)});else{let e=c.content.map(e=>e.type===`text`?{type:`text`,text:d(e.text)}:{type:`image_url`,image_url:{url:`data:${e.mimeType};base64,${e.data}`}});if(e.length===0)continue;i.push({role:`user`,content:e})}else if(c.role===`assistant`){let t={role:`assistant`,content:n.requiresAssistantAfterToolResult?``:null},a=c.content.filter(k).filter(e=>e.text.trim().length>0).map(e=>({type:`text`,text:d(e.text)})),o=a.map(e=>e.text).join(``),s=c.content.filter(A).filter(e=>e.thinking.trim().length>0);if(s.length>0)if(n.requiresThinkingAsText)t.content=[{type:`text`,text:s.map(e=>d(e.thinking)).join(`
|
|
2
|
+
|
|
3
|
+
`)},...a];else{o.length>0&&(t.content=o);let n=s[0].thinkingSignature;e.provider===`opencode-go`&&n===`reasoning`&&(n=`reasoning_content`),n&&n.length>0&&(t[n]=s.map(e=>e.thinking).join(`
|
|
4
|
+
`))}else o.length>0&&(t.content=o);let l=c.content.filter(j);if(l.length>0){t.tool_calls=l.map(e=>{let t=r?.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:d(h(e.name,e.arguments,t))}}});let e=l.filter(e=>e.thoughtSignature).map(e=>{try{return JSON.parse(e.thoughtSignature)}catch{return null}}).filter(Boolean);e.length>0&&(t.reasoning_details=e)}n.requiresReasoningContentOnAssistantMessages&&e.reasoning&&t.reasoning_content===void 0&&(t.reasoning_content=``);let u=t.content;if(!(u!=null&&u.length>0)&&!t.tool_calls)continue;i.push(t)}else if(c.role===`toolResult`){let r=[],c=new Set,l=a;for(;l<o.length&&o[l].role===`toolResult`;l++){let t=o[l],a=t.content.filter(k).map(e=>e.text).join(`
|
|
5
|
+
`),s=t.content.some(e=>e.type===`image`),u=a.length>0?a:s?`(see attached image)`:`(no tool output)`,f={role:`tool`,content:d(u),tool_call_id:t.toolCallId};if(n.requiresToolResultName&&t.toolName&&(f.name=t.toolName),i.push(f),n.deferredToolsMode===`kimi`)for(let e of t.addedToolNames??[])c.add(e);if(s&&e.input.includes(`image`))for(let e of t.content)M(e)&&r.push({type:`image_url`,image_url:{url:`data:${e.mimeType};base64,${e.data}`}})}if(a=l-1,r.length>0?(n.requiresAssistantAfterToolResult&&i.push({role:`assistant`,content:`I have processed the tool results.`}),i.push({role:`user`,content:[{type:`text`,text:`Attached image(s) from tool result:`},...r]}),s=`user`):s=`toolResult`,c.size>0){let e=O(t.tools,c);if(e.length>0){let t={role:`system`,tools:X(e,n)};i.push(t)}}continue}s=c.role}return i}function X(e,t){return e.map(e=>{let n=p(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=f(e,t.supportsStrictMode!==!1);return{type:`function`,function:{name:e.name,description:e.description,parameters:e.parameters,...t.supportsStrictMode!==!1&&{strict:r??!1}}}})}function Z(e,t){let r=e.prompt_tokens||0,i=e.prompt_tokens_details?.cached_tokens??e.prompt_cache_hit_tokens??0,a=e.prompt_tokens_details?.cache_write_tokens||0,o=Math.max(0,r-i-a),s=e.completion_tokens||0,c={input:o,output:s,cacheRead:i,cacheWrite:a,reasoning:e.completion_tokens_details?.reasoning_tokens||0,totalTokens:o+s+i+a,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}};return n(t,c),c}function Q(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 ee(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=l||t===`cerebras`||n.includes(`cerebras.ai`)||t===`xai`||n.includes(`api.x.ai`)||i||n.includes(`chutes.ai`)||n.includes(`deepseek.com`)||r||a||t===`opencode`||n.includes(`opencode.ai`)||s||c||u,f=n.includes(`chutes.ai`)||a||c||i||l||u||r,p=t===`xai`||n.includes(`api.x.ai`),m=t===`deepseek`||n.includes(`deepseek.com`),h=o&&(e.id.startsWith(`anthropic/`)||e.id.startsWith(`openai/`)),g=t===`openrouter`&&e.id.startsWith(`anthropic/`)?`anthropic`:void 0;return{supportsStore:!d,supportsDeveloperRole:h||!d&&!o,supportsReasoningEffort:!p&&!r&&!a&&!i&&!c&&!l&&!u,supportsUsageInStreaming:!0,supportsFinishReason:!0,maxTokensField:f?`max_tokens`:`max_completion_tokens`,requiresToolResultName:!1,requiresAssistantAfterToolResult:!1,requiresThinkingAsText:!1,requiresReasoningContentOnAssistantMessages:m,thinkingFormat:m?`deepseek`:r?`zai`:i?`together`:u?`ant-ling`:o?`openrouter`:`openai`,openRouterRouting:{},vercelGatewayRouting:{},chatTemplateKwargs:{},chatTemplateArgs:{},zaiToolStream:!1,supportsThinkingTokenBudget:!1,supportsStrictMode:!a&&!i&&!c&&!l,supportsOpenAIGrammarTools:!1,cacheControlFormat:g,sendSessionAffinityHeaders:!1,deferredToolsMode:void 0,sessionAffinityFormat:o?`openrouter`:`openai`,supportsLongCacheRetention:!(i||s||c||l||u)}}function $(e){let t=ee(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,supportsStrictMode:e.compat.supportsStrictMode??t.supportsStrictMode,supportsOpenAIGrammarTools:e.compat.supportsOpenAIGrammarTools??t.supportsOpenAIGrammarTools,cacheControlFormat:e.compat.cacheControlFormat??t.cacheControlFormat,sendSessionAffinityHeaders:e.compat.sendSessionAffinityHeaders??t.sendSessionAffinityHeaders,deferredToolsMode:e.compat.deferredToolsMode??t.deferredToolsMode,sessionAffinityFormat:e.compat.sessionAffinityFormat??t.sessionAffinityFormat,supportsLongCacheRetention:e.compat.supportsLongCacheRetention??t.supportsLongCacheRetention}:t}export{Y as convertMessages,F as stream,I as streamSimple};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./diagnostics-DN_idNHx.js";import{n as t}from"./models-BSkXF4T6.js";import{t as n}from"./provider-env-CTOcDKrQ.js";import{i as r}from"./transform-messages-XkZ1QnTb.js";import{t as i}from"./deferred-tools-C1IEsG5C.js";import{t as a}from"./headers-CbDaTl3c.js";import{t as o}from"./provider-retry-C8PJzY_l.js";import{n as s}from"./constrained-sampling-DafcjXU6.js";import{n as c,t as l}from"./github-copilot-headers-DRgtIyTm.js";import{n as u}from"./openai-DQxsE__c.js";import{n as d,t as f}from"./error-body-pkrba6pf.js";import{t as p}from"./openai-prompt-cache-DXo9f3w5.js";import{n as m,r as h,t as g}from"./openai-responses-shared-BrIGUa2e.js";var _=new Set([`openai`,`openai-codex`,`opencode`]),v=16;function y(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 b(e,t,n){if(t)return t;if(y(n,`authorization`)||y(n,`cf-aig-authorization`))return`unused`;throw Error(`No API key for provider: ${e}`)}function x(e){return e.provider===`openrouter`||e.baseUrl.includes(`openrouter.ai`)?`openrouter`:`openai`}function S(e,t){return e||(n(`PI_CACHE_RETENTION`,t)===`long`?`long`:`short`)}function C(e){return{supportsDeveloperRole:e.compat?.supportsDeveloperRole??!0,sessionAffinityFormat:e.compat?.sessionAffinityFormat??x(e),supportsLongCacheRetention:e.compat?.supportsLongCacheRetention??!0,supportsStrictMode:e.compat?.supportsStrictMode??!1,supportsOpenAIGrammarTools:e.compat?.supportsOpenAIGrammarTools??!1,supportsToolSearch:e.compat?.supportsToolSearch??!1,supportsExplicitPromptCacheMode:e.compat?.supportsExplicitPromptCacheMode??!1}}function w(e,t){return t===`long`&&e.supportsLongCacheRetention?`24h`:void 0}function T(e){return f(d(e),`OpenAI API error`)}var E=(t,n,r)=>{let i=new e;return(async()=>{let e={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()};try{let c=b(t.provider,r?.apiKey,r?.headers),l=S(r?.cacheRetention,r?.env)===`none`?void 0:r?.sessionId,u=C(t),d=s(n.tools,u.supportsOpenAIGrammarTools),f=O(t,n,c,r?.headers,r?.fetch,l),p=k(t,n,r,u,d),m=await r?.onPayload?.(p,t);m!==void 0&&(p=m);let g={...r?.signal?{signal:r.signal}:{},...r?.timeoutMs===void 0?{}:{timeout:r.timeoutMs},maxRetries:0},{data:_,response:v}=await o(()=>f.responses.create(p,g).withResponse(),{maxRetries:r?.maxRetries,maxRetryDelayMs:r?.maxRetryDelayMs,signal:r?.signal});if(await r?.onResponse?.({status:v.status,headers:a(v.headers)},t),i.push({type:`start`,partial:e}),await h(_,e,i,t,{serviceTier:r?.serviceTier,grammarToolInputProperties:d,applyServiceTierPricing:(e,n)=>j(e,n,t)}),r?.signal?.aborted)throw Error(`Request was aborted`);if(e.stopReason===`pending`)throw Error(`OpenAI Responses stream ended without a stop reason`);if(e.stopReason===`aborted`||e.stopReason===`error`)throw Error(e.errorMessage||`An unknown error occurred`);i.push({type:`done`,reason:e.stopReason,message:e}),i.end()}catch(t){for(let t of e.content)delete t.index,delete t.partialJson,delete t.customInput;e.stopReason=r?.signal?.aborted?`aborted`:`error`,e.errorMessage=T(t),i.push({type:`error`,reason:e.stopReason,error:e}),i.end()}})(),i},D=(e,n,i)=>{b(e.provider,i?.apiKey,i?.headers);let a=r(e,n,i,i?.apiKey),o=i?.reasoning?t(e,i.reasoning):void 0,s=o===`off`?void 0:o;return E(e,n,{...a,reasoningEffort:s})};function O(e,t,n,r,i,a){let o=C(e),s={...e.headers};if(e.provider===`github-copilot`){let e=c(t.messages),n=l({messages:t.messages,hasImages:e});Object.assign(s,n)}return a&&(o.sessionAffinityFormat===`openrouter`?s[`x-session-id`]=a:(o.sessionAffinityFormat===`openai`&&(s.session_id=a),s[`x-client-request-id`]=a)),r&&Object.assign(s,r),new u({apiKey:n,baseURL:e.baseUrl,dangerouslyAllowBrowser:!0,fetch:i,defaultHeaders:s})}function k(e,t,n,r=C(e),a=s(t.tools,r.supportsOpenAIGrammarTools)){let o=i(t,r.supportsToolSearch),c=g(e,t,_,{grammarToolInputProperties:a,deferredTools:o.deferred,toolOptions:{supportsStrictMode:r.supportsStrictMode,supportsOpenAIGrammarTools:r.supportsOpenAIGrammarTools}}),l=S(n?.cacheRetention,n?.env),u=l===`none`&&r.supportsExplicitPromptCacheMode,d={model:e.id,input:c,stream:!0,prompt_cache_key:l===`none`?void 0:p(n?.sessionId),prompt_cache_retention:w(r,l),prompt_cache_options:u?{mode:`explicit`}:void 0,store:!1};return n?.maxTokens&&(d.max_output_tokens=Math.max(n.maxTokens,v)),n?.temperature!==void 0&&(d.temperature=n?.temperature),n?.serviceTier!==void 0&&(d.service_tier=n.serviceTier),o.immediate.length>0&&(d.tools=m(o.immediate,{supportsStrictMode:r.supportsStrictMode,supportsOpenAIGrammarTools:r.supportsOpenAIGrammarTools})),n?.toolChoice!==void 0&&(d.tool_choice=n.toolChoice),e.reasoning&&(n?.reasoningEffort||n?.reasoningSummary?(d.reasoning={effort:n?.reasoningEffort?e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort:`medium`,summary:n?.reasoningSummary||`auto`},d.include=[`reasoning.encrypted_content`]):e.provider!==`github-copilot`&&e.thinkingLevelMap?.off!==null&&(d.reasoning={effort:e.thinkingLevelMap?.off??`none`}),e.provider===`xai`&&(d.include=[`reasoning.encrypted_content`])),n?.samplingParams&&Object.assign(d,n.samplingParams),d}function A(e,t){switch(t){case`flex`:return .5;case`priority`:return e.id===`gpt-5.5`?2.5:2;default:return 1}}function j(e,t,n){let r=A(n,t);r!==1&&(e.cost.input*=r,e.cost.output*=r,e.cost.cacheRead*=r,e.cost.cacheWrite*=r,e.cost.total=e.cost.input+e.cost.output+e.cost.cacheRead+e.cost.cacheWrite)}export{E as stream,D as streamSimple};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./diagnostics-DN_idNHx.js";import{c as t,i as n}from"./transform-messages-DEFauvrq.js";import{t as r}from"./provider-env-CILujRmO.js";import{t as i}from"./deferred-tools-DNuoafg8.js";import{t as a}from"./headers-CbDaTl3c.js";import{t as o}from"./provider-retry-C8PJzY_l.js";import{n as s}from"./constrained-sampling-DafcjXU6.js";import{n as c,t as l}from"./github-copilot-headers-DRgtIyTm.js";import{n as u}from"./openai-DehfWK3N.js";import{n as d,t as f}from"./error-body-pkrba6pf.js";import{t as p}from"./openai-prompt-cache-DXo9f3w5.js";import{n as m,r as h,t as g}from"./openai-responses-shared-B_T0yMQn.js";const _=new Set([`openai`,`openai-codex`,`opencode`]);function v(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 y(e,t,n){if(t)return t;if(v(n,`authorization`)||v(n,`cf-aig-authorization`))return`unused`;throw Error(`No API key for provider: ${e}`)}function b(e){return e.provider===`openrouter`||e.baseUrl.includes(`openrouter.ai`)?`openrouter`:`openai`}function x(e,t){return e||(r(`PI_CACHE_RETENTION`,t)===`long`?`long`:`short`)}function S(e){return{supportsDeveloperRole:e.compat?.supportsDeveloperRole??!0,sessionAffinityFormat:e.compat?.sessionAffinityFormat??b(e),supportsLongCacheRetention:e.compat?.supportsLongCacheRetention??!0,supportsStrictMode:e.compat?.supportsStrictMode??!1,supportsOpenAIGrammarTools:e.compat?.supportsOpenAIGrammarTools??!1,supportsToolSearch:e.compat?.supportsToolSearch??!1,supportsExplicitPromptCacheMode:e.compat?.supportsExplicitPromptCacheMode??!1}}function C(e,t){return t===`long`&&e.supportsLongCacheRetention?`24h`:void 0}function w(e){return f(d(e),`OpenAI API error`)}const T=(t,n,r)=>{let i=new e;return(async()=>{let e={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()};try{let c=y(t.provider,r?.apiKey,r?.headers),l=x(r?.cacheRetention,r?.env)===`none`?void 0:r?.sessionId,u=S(t),d=s(n.tools,u.supportsOpenAIGrammarTools),f=D(t,n,c,r?.headers,r?.fetch,l),p=O(t,n,r,u,d),m=await r?.onPayload?.(p,t);m!==void 0&&(p=m);let g={...r?.signal?{signal:r.signal}:{},...r?.timeoutMs===void 0?{}:{timeout:r.timeoutMs},maxRetries:0},{data:_,response:v}=await o(()=>f.responses.create(p,g).withResponse(),{maxRetries:r?.maxRetries,maxRetryDelayMs:r?.maxRetryDelayMs,signal:r?.signal});if(await r?.onResponse?.({status:v.status,headers:a(v.headers)},t),i.push({type:`start`,partial:e}),await h(_,e,i,t,{serviceTier:r?.serviceTier,grammarToolInputProperties:d,applyServiceTierPricing:(e,n)=>A(e,n,t)}),r?.signal?.aborted)throw Error(`Request was aborted`);if(e.stopReason===`pending`)throw Error(`OpenAI Responses stream ended without a stop reason`);if(e.stopReason===`aborted`||e.stopReason===`error`)throw Error(e.errorMessage||`An unknown error occurred`);i.push({type:`done`,reason:e.stopReason,message:e}),i.end()}catch(t){for(let t of e.content)delete t.index,delete t.partialJson,delete t.customInput;e.stopReason=r?.signal?.aborted?`aborted`:`error`,e.errorMessage=w(t),i.push({type:`error`,reason:e.stopReason,error:e}),i.end()}})(),i},E=(e,r,i)=>{y(e.provider,i?.apiKey,i?.headers);let a=n(e,r,i,i?.apiKey),o=i?.reasoning?t(e,i.reasoning):void 0,s=o===`off`?void 0:o;return T(e,r,{...a,reasoningEffort:s})};function D(e,t,n,r,i,a){let o=S(e),s={...e.headers};if(e.provider===`github-copilot`){let e=c(t.messages),n=l({messages:t.messages,hasImages:e});Object.assign(s,n)}return a&&(o.sessionAffinityFormat===`openrouter`?s[`x-session-id`]=a:(o.sessionAffinityFormat===`openai`&&(s.session_id=a),s[`x-client-request-id`]=a)),r&&Object.assign(s,r),new u({apiKey:n,baseURL:e.baseUrl,dangerouslyAllowBrowser:!0,fetch:i,defaultHeaders:s})}function O(e,t,n,r=S(e),a=s(t.tools,r.supportsOpenAIGrammarTools)){let o=i(t,r.supportsToolSearch),c=g(e,t,_,{grammarToolInputProperties:a,deferredTools:o.deferred,toolOptions:{supportsStrictMode:r.supportsStrictMode,supportsOpenAIGrammarTools:r.supportsOpenAIGrammarTools}}),l=x(n?.cacheRetention,n?.env),u=l===`none`&&r.supportsExplicitPromptCacheMode,d={model:e.id,input:c,stream:!0,prompt_cache_key:l===`none`?void 0:p(n?.sessionId),prompt_cache_retention:C(r,l),prompt_cache_options:u?{mode:`explicit`}:void 0,store:!1};return n?.maxTokens&&(d.max_output_tokens=Math.max(n.maxTokens,16)),n?.temperature!==void 0&&(d.temperature=n?.temperature),n?.serviceTier!==void 0&&(d.service_tier=n.serviceTier),o.immediate.length>0&&(d.tools=m(o.immediate,{supportsStrictMode:r.supportsStrictMode,supportsOpenAIGrammarTools:r.supportsOpenAIGrammarTools})),n?.toolChoice!==void 0&&(d.tool_choice=n.toolChoice),e.reasoning&&(n?.reasoningEffort||n?.reasoningSummary?(d.reasoning={effort:n?.reasoningEffort?e.thinkingLevelMap?.[n.reasoningEffort]??n.reasoningEffort:`medium`,summary:n?.reasoningSummary||`auto`},d.include=[`reasoning.encrypted_content`]):e.provider!==`github-copilot`&&e.thinkingLevelMap?.off!==null&&(d.reasoning={effort:e.thinkingLevelMap?.off??`none`}),e.provider===`xai`&&(d.include=[`reasoning.encrypted_content`])),n?.samplingParams&&Object.assign(d,n.samplingParams),d}function k(e,t){switch(t){case`flex`:return .5;case`priority`:return e.id===`gpt-5.5`?2.5:2;default:return 1}}function A(e,t,n){let r=k(n,t);r!==1&&(e.cost.input*=r,e.cost.output*=r,e.cost.cacheRead*=r,e.cost.cacheWrite*=r,e.cost.total=e.cost.input+e.cost.output+e.cost.cacheRead+e.cost.cacheWrite)}export{T as stream,E as streamSimple};
|
package/dist/ui/assets/{openai-responses-shared-uSSusU2w.js → openai-responses-shared-B_T0yMQn.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{
|
|
2
|
-
`),i=t.filter(e=>e.type===`image`),a=n.length>0;if(i.length===0||!e.input.includes(`image`))return r(a?n:i.length>0?`(see attached image)`:`(no tool output)`);let o=[];a&&o.push({type:`input_text`,text:r(n)});for(let e of i)o.push({type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});return o}function f(e,n,i,a){let s=[],l=new Set,f=e=>{let t=e.replace(/[^a-zA-Z0-9_-]/g,`_`);return(t.length>64?t.slice(0,64):t).replace(/_+$/,``)},m=e=>{let t=`fc_${c(e)}`;return t.length>64?t.slice(0,64):t},h=t(n.messages,e,(t,n,r)=>{if(!i.has(e.provider)||!t.includes(`|`))return f(t);let[a,o]=t.split(`|`),s=f(a),c=r.provider!==e.provider||r.api!==e.api?m(o):f(o);return c.startsWith(`fc_`)||(c=f(`fc_${c}`)),`${s}|${c}`});if((a?.includeSystemPrompt??!0)&&n.systemPrompt){let t=e.compat,i=e.reasoning&&t?.supportsDeveloperRole!==!1?`developer`:`system`;s.push({role:i,content:r(n.systemPrompt)})}let g=0;for(let t of h){if(t.role===`user`)if(typeof t.content==`string`)s.push({role:`user`,content:[{type:`input_text`,text:r(t.content)}]});else{let e=t.content.map(e=>e.type===`text`?{type:`input_text`,text:r(e.text)}:{type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});if(e.length===0)continue;s.push({role:`user`,content:e})}else if(t.role===`assistant`){let n=[],i=t,l=i.model!==e.id&&i.provider===e.provider&&i.api===e.api,d=0;for(let e of t.content)if(e.type===`thinking`){if(e.thinkingSignature){let t=JSON.parse(e.thinkingSignature);n.push(t)}}else if(e.type===`text`){let t=e,i=u(t.textSignature),a=d===0?`msg_pi_${g}`:`msg_pi_${g}_${d}`;d++;let o=i?.id;o?o.length>64&&(o=`msg_${c(o)}`):o=a,n.push({type:`message`,role:`assistant`,content:[{type:`output_text`,text:r(t.text),annotations:[]}],status:`completed`,id:o,phase:i?.phase})}else if(e.type===`toolCall`){let t=e,[i,s]=t.id.split(`|`),c=a?.grammarToolInputProperties?.get(t.name),u=s;(l&&u?.startsWith(`fc_`)||c===void 0&&!u?.startsWith(`fc_`))&&(u=void 0),c===void 0?n.push({type:`function_call`,id:u,call_id:i,name:t.name,arguments:JSON.stringify(t.arguments)}):n.push({type:`custom_tool_call`,id:u,call_id:i,name:t.name,input:r(o(t.name,t.arguments,c))})}if(n.length===0)continue;s.push(...n)}else if(t.role===`toolResult`){let[n]=t.toolCallId.split(`|`),r=d(e,t.content);a?.grammarToolInputProperties?.has(t.toolName)?s.push({type:`custom_tool_call_output`,call_id:n,output:r}):s.push({type:`function_call_output`,call_id:n,output:r});let i=[];for(let e of t.addedToolNames??[]){let t=a?.deferredTools?.get(e);!t||l.has(e)||(l.add(e),i.push(t))}if(i.length>0){let e=i.map(e=>e.name),n=`pi_tool_load_${c(`${t.toolCallId}:${e.join(`,`)}`)}`;s.push({type:`tool_search_call`,call_id:n,execution:`client`,status:`completed`,arguments:{query:e.join(` `),limit:e.length}}),s.push({type:`tool_search_output`,call_id:n,execution:`client`,status:`completed`,tools:p(i,{...a?.toolOptions,deferLoading:!0})})}}g++}return s}function p(e,t){let n=t?.strict!==void 0&&t.strict,r=t?.supportsStrictMode??!0,o=t?.supportsOpenAIGrammarTools??!1;return e.map(e=>{let s=a(e,o);if(s)return{type:`custom`,name:e.name,description:e.description,format:{type:`grammar`,syntax:s.format,definition:s.definition},...t?.deferLoading?{defer_loading:!0}:{}};let c=i(e,r),l={type:`function`,name:e.name,description:e.description,parameters:e.parameters,...t?.deferLoading?{defer_loading:!0}:{}};return r&&(l.strict=c??n),l})}function m(e){let t=e.customInput?.property;if(t===void 0)return``;let n=e.arguments[t];return typeof n==`string`?n:``}function h(e,t,n){let r=e.customInput;if(!r)return;let i=s(r.jsonBuffer,r.property,t,n);return e.arguments={[r.property]:t},i}async function g(t,r,i,a,o){let s=!1,c=new Map,u=new Map,d=e=>{e.type===`message`&&e.phase===`final_answer`&&(r.stopReason=`stop`)},f=(e,t)=>{let n=c.get(e);return n?.type===t?n:void 0},p=(e,t)=>{t!==void 0&&i.push({type:`toolcall_delta`,contentIndex:e.contentIndex,delta:t,partial:r})},g=(e,t)=>{if(t.type===`reasoning`){let t={type:`thinking`,thinking:``};r.content.push(t);let n={type:`thinking`,block:t,contentIndex:r.content.length-1};return c.set(e,n),i.push({type:`thinking_start`,contentIndex:n.contentIndex,partial:r}),n}if(t.type===`message`){d(t);let n={type:`text`,text:``};r.content.push(n);let a={type:`text`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`text_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`function_call`){let n={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{},partialJson:t.arguments||``};r.content.push(n);let a={type:`toolCall`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`toolcall_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`custom_tool_call`){let n=o?.grammarToolInputProperties?.get(t.name)??`input`,a=t.input||``,s={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{[n]:a},customInput:{property:n,jsonBuffer:{input:``,started:!1,closed:!1}}};r.content.push(s);let l={type:`toolCall`,block:s,contentIndex:r.content.length-1};return c.set(e,l),i.push({type:`toolcall_start`,contentIndex:l.contentIndex,partial:r}),l}},v=(e,t)=>c.get(e)??g(e,t),y=e=>{for(let t of e){if(t.type!==`reasoning`||!t.encrypted_content)continue;let e=u.get(t.id);if(!e?.thinkingSignature)continue;let n=JSON.parse(e.thinkingSignature);n.encrypted_content||(e.thinkingSignature=JSON.stringify({...n,encrypted_content:t.encrypted_content}))}},b=t=>{if(s=!0,y(t.output??[]),t?.id&&(r.responseId=t.id),t?.usage){let e=t.usage.input_tokens_details,n=e?.cached_tokens||0,i=e?.cache_write_tokens||0;r.usage={input:Math.max(0,(t.usage.input_tokens||0)-n-i),output:t.usage.output_tokens||0,cacheRead:n,cacheWrite:i,reasoning:t.usage.output_tokens_details?.reasoning_tokens||0,totalTokens:t.usage.total_tokens||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}if(e(a,r.usage),o?.applyServiceTierPricing){let e=o.resolveServiceTier?o.resolveServiceTier(t?.service_tier,o.serviceTier):t?.service_tier??o.serviceTier;o.applyServiceTierPricing(r.usage,e)}let n=t?.status;r.rawStopReason=n,r.stopReason=
|
|
1
|
+
import{s as e,t}from"./transform-messages-DEFauvrq.js";import{n}from"./json-parse-ClXMvBdK.js";import{t as r}from"./sanitize-unicode-DmIE6hZJ.js";import{a as i,i as a,r as o,t as s}from"./constrained-sampling-DafcjXU6.js";import{t as c}from"./hash-yQufAZII.js";function l(e,t){let n={v:1,id:e};return t&&(n.phase=t),JSON.stringify(n)}function u(e){if(e){if(e.startsWith(`{`))try{let t=JSON.parse(e);if(t.v===1&&typeof t.id==`string`)return t.phase===`commentary`||t.phase===`final_answer`?{id:t.id,phase:t.phase}:{id:t.id}}catch{}return{id:e}}}function d(e,t){let n=t.filter(e=>e.type===`text`).map(e=>e.text).join(`
|
|
2
|
+
`),i=t.filter(e=>e.type===`image`),a=n.length>0;if(i.length===0||!e.input.includes(`image`))return r(a?n:i.length>0?`(see attached image)`:`(no tool output)`);let o=[];a&&o.push({type:`input_text`,text:r(n)});for(let e of i)o.push({type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});return o}function f(e,n,i,a){let s=[],l=new Set,f=e=>{let t=e.replace(/[^a-zA-Z0-9_-]/g,`_`);return(t.length>64?t.slice(0,64):t).replace(/_+$/,``)},m=e=>{let t=`fc_${c(e)}`;return t.length>64?t.slice(0,64):t},h=t(n.messages,e,(t,n,r)=>{if(!i.has(e.provider)||!t.includes(`|`))return f(t);let[a,o]=t.split(`|`),s=f(a),c=r.provider!==e.provider||r.api!==e.api?m(o):f(o);return c.startsWith(`fc_`)||(c=f(`fc_${c}`)),`${s}|${c}`});if((a?.includeSystemPrompt??!0)&&n.systemPrompt){let t=e.compat,i=e.reasoning&&t?.supportsDeveloperRole!==!1?`developer`:`system`;s.push({role:i,content:r(n.systemPrompt)})}let g=0;for(let t of h){if(t.role===`user`)if(typeof t.content==`string`)s.push({role:`user`,content:[{type:`input_text`,text:r(t.content)}]});else{let e=t.content.map(e=>e.type===`text`?{type:`input_text`,text:r(e.text)}:{type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});if(e.length===0)continue;s.push({role:`user`,content:e})}else if(t.role===`assistant`){let n=[],i=t,l=i.model!==e.id&&i.provider===e.provider&&i.api===e.api,d=0;for(let e of t.content)if(e.type===`thinking`){if(e.thinkingSignature){let t=JSON.parse(e.thinkingSignature);n.push(t)}}else if(e.type===`text`){let t=e,i=u(t.textSignature),a=d===0?`msg_pi_${g}`:`msg_pi_${g}_${d}`;d++;let o=i?.id;o?o.length>64&&(o=`msg_${c(o)}`):o=a,n.push({type:`message`,role:`assistant`,content:[{type:`output_text`,text:r(t.text),annotations:[]}],status:`completed`,id:o,phase:i?.phase})}else if(e.type===`toolCall`){let t=e,[i,s]=t.id.split(`|`),c=a?.grammarToolInputProperties?.get(t.name),u=s;(l&&u?.startsWith(`fc_`)||c===void 0&&!u?.startsWith(`fc_`))&&(u=void 0),c===void 0?n.push({type:`function_call`,id:u,call_id:i,name:t.name,arguments:JSON.stringify(t.arguments)}):n.push({type:`custom_tool_call`,id:u,call_id:i,name:t.name,input:r(o(t.name,t.arguments,c))})}if(n.length===0)continue;s.push(...n)}else if(t.role===`toolResult`){let[n]=t.toolCallId.split(`|`),r=d(e,t.content);a?.grammarToolInputProperties?.has(t.toolName)?s.push({type:`custom_tool_call_output`,call_id:n,output:r}):s.push({type:`function_call_output`,call_id:n,output:r});let i=[];for(let e of t.addedToolNames??[]){let t=a?.deferredTools?.get(e);!t||l.has(e)||(l.add(e),i.push(t))}if(i.length>0){let e=i.map(e=>e.name),n=`pi_tool_load_${c(`${t.toolCallId}:${e.join(`,`)}`)}`;s.push({type:`tool_search_call`,call_id:n,execution:`client`,status:`completed`,arguments:{query:e.join(` `),limit:e.length}}),s.push({type:`tool_search_output`,call_id:n,execution:`client`,status:`completed`,tools:p(i,{...a?.toolOptions,deferLoading:!0})})}}g++}return s}function p(e,t){let n=t?.strict!==void 0&&t.strict,r=t?.supportsStrictMode??!0,o=t?.supportsOpenAIGrammarTools??!1;return e.map(e=>{let s=a(e,o);if(s)return{type:`custom`,name:e.name,description:e.description,format:{type:`grammar`,syntax:s.format,definition:s.definition},...t?.deferLoading?{defer_loading:!0}:{}};let c=i(e,r),l={type:`function`,name:e.name,description:e.description,parameters:e.parameters,...t?.deferLoading?{defer_loading:!0}:{}};return r&&(l.strict=c??n),l})}function m(e){let t=e.customInput?.property;if(t===void 0)return``;let n=e.arguments[t];return typeof n==`string`?n:``}function h(e,t,n){let r=e.customInput;if(!r)return;let i=s(r.jsonBuffer,r.property,t,n);return e.arguments={[r.property]:t},i}async function g(t,r,i,a,o){let s=!1,c=new Map,u=new Map,d=e=>{e.type===`message`&&e.phase===`final_answer`&&(r.stopReason=`stop`)},f=(e,t)=>{let n=c.get(e);return n?.type===t?n:void 0},p=(e,t)=>{t!==void 0&&i.push({type:`toolcall_delta`,contentIndex:e.contentIndex,delta:t,partial:r})},g=(e,t)=>{if(t.type===`reasoning`){let t={type:`thinking`,thinking:``};r.content.push(t);let n={type:`thinking`,block:t,contentIndex:r.content.length-1};return c.set(e,n),i.push({type:`thinking_start`,contentIndex:n.contentIndex,partial:r}),n}if(t.type===`message`){d(t);let n={type:`text`,text:``};r.content.push(n);let a={type:`text`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`text_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`function_call`){let n={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{},partialJson:t.arguments||``};r.content.push(n);let a={type:`toolCall`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`toolcall_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`custom_tool_call`){let n=o?.grammarToolInputProperties?.get(t.name)??`input`,a=t.input||``,s={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{[n]:a},customInput:{property:n,jsonBuffer:{input:``,started:!1,closed:!1}}};r.content.push(s);let l={type:`toolCall`,block:s,contentIndex:r.content.length-1};return c.set(e,l),i.push({type:`toolcall_start`,contentIndex:l.contentIndex,partial:r}),l}},v=(e,t)=>c.get(e)??g(e,t),y=e=>{for(let t of e){if(t.type!==`reasoning`||!t.encrypted_content)continue;let e=u.get(t.id);if(!e?.thinkingSignature)continue;let n=JSON.parse(e.thinkingSignature);n.encrypted_content||(e.thinkingSignature=JSON.stringify({...n,encrypted_content:t.encrypted_content}))}},b=t=>{if(s=!0,y(t.output??[]),t?.id&&(r.responseId=t.id),t?.usage){let e=t.usage.input_tokens_details,n=e?.cached_tokens||0,i=e?.cache_write_tokens||0;r.usage={input:Math.max(0,(t.usage.input_tokens||0)-n-i),output:t.usage.output_tokens||0,cacheRead:n,cacheWrite:i,reasoning:t.usage.output_tokens_details?.reasoning_tokens||0,totalTokens:t.usage.total_tokens||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}if(e(a,r.usage),o?.applyServiceTierPricing){let e=o.resolveServiceTier?o.resolveServiceTier(t?.service_tier,o.serviceTier):t?.service_tier??o.serviceTier;o.applyServiceTierPricing(r.usage,e)}let n=t?.status,i=t?.incomplete_details,c=typeof i?.reason==`string`?i.reason:void 0;r.rawStopReason=c?`${n}.${c}`:n;let l=_(n,c);r.stopReason=l.stopReason,r.errorMessage=l.errorMessage,r.content.some(e=>e.type===`toolCall`)&&r.stopReason===`stop`&&(r.stopReason=`toolUse`)};for await(let e of t)if(e.type===`response.created`)r.responseId=e.response.id;else if(e.type===`response.output_item.added`)g(e.output_index,e.item);else if(e.type===`response.reasoning_summary_text.delta`){let t=f(e.output_index,`thinking`);if(!t)continue;t.block.thinking+=e.delta,i.push({type:`thinking_delta`,contentIndex:t.contentIndex,delta:e.delta,partial:r})}else if(e.type===`response.reasoning_summary_part.done`){let t=f(e.output_index,`thinking`);if(!t)continue;t.block.thinking+=`
|
|
3
3
|
|
|
4
4
|
`,i.push({type:`thinking_delta`,contentIndex:t.contentIndex,delta:`
|
|
5
5
|
|
|
@@ -7,4 +7,4 @@ import{o as e,t}from"./transform-messages-D27pVLZ-.js";import{n}from"./json-pars
|
|
|
7
7
|
|
|
8
8
|
`)||``,o=t.content?.map(e=>e.text).join(`
|
|
9
9
|
|
|
10
|
-
`)||``;a.block.thinking=n||o||a.block.thinking,a.block.thinkingSignature=JSON.stringify(t),u.set(t.id,a.block),i.push({type:`thinking_end`,contentIndex:a.contentIndex,content:a.block.thinking,partial:r}),c.delete(e.output_index)}else t.type===`message`&&a?.type===`text`?(a.block.text=t.content?.map(e=>e.type===`output_text`?e.text:e.refusal).join(``)||``,a.block.textSignature=l(t.id,t.phase??void 0),i.push({type:`text_end`,contentIndex:a.contentIndex,content:a.block.text,partial:r}),c.delete(e.output_index)):t.type===`function_call`&&a?.type===`toolCall`&&a.block.partialJson!==void 0?(a.block.arguments=n(t.arguments||a.block.partialJson||`{}`),delete a.block.partialJson,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index)):t.type===`custom_tool_call`&&a?.type===`toolCall`&&a.block.customInput&&(p(a,h(a.block,t.input??m(a.block),!0)),delete a.block.customInput,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index))}else if(e.type===`response.completed`||e.type===`response.incomplete`)b(e.response);else if(e.type===`error`)throw Error(`Error Code ${e.code}: ${e.message}`||`Unknown error`);else if(e.type===`response.failed`){s=!0,r.rawStopReason=e.response?.status;let t=e.response?.error,n=e.response?.incomplete_details,i=t?`${t.code||`unknown`}: ${t.message||`no message`}`:n?.reason?`incomplete: ${n.reason}`:`Unknown error (no error details in response)`;throw Error(i)}if(!s)throw Error(`OpenAI Responses stream ended before a terminal response event`)}function _(e){if(!e)return`
|
|
10
|
+
`)||``;a.block.thinking=n||o||a.block.thinking,a.block.thinkingSignature=JSON.stringify(t),u.set(t.id,a.block),i.push({type:`thinking_end`,contentIndex:a.contentIndex,content:a.block.thinking,partial:r}),c.delete(e.output_index)}else t.type===`message`&&a?.type===`text`?(a.block.text=t.content?.map(e=>e.type===`output_text`?e.text:e.refusal).join(``)||``,a.block.textSignature=l(t.id,t.phase??void 0),i.push({type:`text_end`,contentIndex:a.contentIndex,content:a.block.text,partial:r}),c.delete(e.output_index)):t.type===`function_call`&&a?.type===`toolCall`&&a.block.partialJson!==void 0?(a.block.arguments=n(t.arguments||a.block.partialJson||`{}`),delete a.block.partialJson,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index)):t.type===`custom_tool_call`&&a?.type===`toolCall`&&a.block.customInput&&(p(a,h(a.block,t.input??m(a.block),!0)),delete a.block.customInput,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index))}else if(e.type===`response.completed`||e.type===`response.incomplete`)b(e.response);else if(e.type===`error`)throw Error(`Error Code ${e.code}: ${e.message}`||`Unknown error`);else if(e.type===`response.failed`){s=!0,r.rawStopReason=e.response?.status;let t=e.response?.error,n=e.response?.incomplete_details,i=t?`${t.code||`unknown`}: ${t.message||`no message`}`:n?.reason?`incomplete: ${n.reason}`:`Unknown error (no error details in response)`;throw Error(i)}if(!s)throw Error(`OpenAI Responses stream ended before a terminal response event`)}function _(e,t){if(!e)return{stopReason:`stop`};switch(e){case`completed`:return{stopReason:`stop`};case`incomplete`:return t===`max_output_tokens`?{stopReason:`length`}:{stopReason:`error`,errorMessage:t?`Response incomplete: ${t}`:`Response incomplete without a provider reason`};case`failed`:case`cancelled`:return{stopReason:`error`};case`in_progress`:case`queued`:return{stopReason:`stop`};default:throw Error(`Unhandled stop reason: ${e}`)}}export{p as n,g as r,f as t};
|
package/dist/ui/assets/{openai-responses-shared-DajOm-sC.js → openai-responses-shared-BrIGUa2e.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{t as e}from"./models-
|
|
2
|
-
`),i=t.filter(e=>e.type===`image`),a=n.length>0;if(i.length===0||!e.input.includes(`image`))return r(a?n:i.length>0?`(see attached image)`:`(no tool output)`);let o=[];a&&o.push({type:`input_text`,text:r(n)});for(let e of i)o.push({type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});return o}function f(e,t,i,a){let s=[],l=new Set,f=e=>{let t=e.replace(/[^a-zA-Z0-9_-]/g,`_`);return(t.length>64?t.slice(0,64):t).replace(/_+$/,``)},m=e=>{let t=`fc_${c(e)}`;return t.length>64?t.slice(0,64):t},h=n(t.messages,e,(t,n,r)=>{if(!i.has(e.provider)||!t.includes(`|`))return f(t);let[a,o]=t.split(`|`),s=f(a),c=r.provider!==e.provider||r.api!==e.api?m(o):f(o);return c.startsWith(`fc_`)||(c=f(`fc_${c}`)),`${s}|${c}`});if((a?.includeSystemPrompt??!0)&&t.systemPrompt){let n=e.compat,i=e.reasoning&&n?.supportsDeveloperRole!==!1?`developer`:`system`;s.push({role:i,content:r(t.systemPrompt)})}let g=0;for(let t of h){if(t.role===`user`)if(typeof t.content==`string`)s.push({role:`user`,content:[{type:`input_text`,text:r(t.content)}]});else{let e=t.content.map(e=>e.type===`text`?{type:`input_text`,text:r(e.text)}:{type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});if(e.length===0)continue;s.push({role:`user`,content:e})}else if(t.role===`assistant`){let n=[],i=t,l=i.model!==e.id&&i.provider===e.provider&&i.api===e.api,d=0;for(let e of t.content)if(e.type===`thinking`){if(e.thinkingSignature){let t=JSON.parse(e.thinkingSignature);n.push(t)}}else if(e.type===`text`){let t=e,i=u(t.textSignature),a=d===0?`msg_pi_${g}`:`msg_pi_${g}_${d}`;d++;let o=i?.id;o?o.length>64&&(o=`msg_${c(o)}`):o=a,n.push({type:`message`,role:`assistant`,content:[{type:`output_text`,text:r(t.text),annotations:[]}],status:`completed`,id:o,phase:i?.phase})}else if(e.type===`toolCall`){let t=e,[i,s]=t.id.split(`|`),c=a?.grammarToolInputProperties?.get(t.name),u=s;(l&&u?.startsWith(`fc_`)||c===void 0&&!u?.startsWith(`fc_`))&&(u=void 0),c===void 0?n.push({type:`function_call`,id:u,call_id:i,name:t.name,arguments:JSON.stringify(t.arguments)}):n.push({type:`custom_tool_call`,id:u,call_id:i,name:t.name,input:r(o(t.name,t.arguments,c))})}if(n.length===0)continue;s.push(...n)}else if(t.role===`toolResult`){let[n]=t.toolCallId.split(`|`),r=d(e,t.content);a?.grammarToolInputProperties?.has(t.toolName)?s.push({type:`custom_tool_call_output`,call_id:n,output:r}):s.push({type:`function_call_output`,call_id:n,output:r});let i=[];for(let e of t.addedToolNames??[]){let t=a?.deferredTools?.get(e);!t||l.has(e)||(l.add(e),i.push(t))}if(i.length>0){let e=i.map(e=>e.name),n=`pi_tool_load_${c(`${t.toolCallId}:${e.join(`,`)}`)}`;s.push({type:`tool_search_call`,call_id:n,execution:`client`,status:`completed`,arguments:{query:e.join(` `),limit:e.length}}),s.push({type:`tool_search_output`,call_id:n,execution:`client`,status:`completed`,tools:p(i,{...a?.toolOptions,deferLoading:!0})})}}g++}return s}function p(e,t){let n=t?.strict!==void 0&&t.strict,r=t?.supportsStrictMode??!0,o=t?.supportsOpenAIGrammarTools??!1;return e.map(e=>{let s=a(e,o);if(s)return{type:`custom`,name:e.name,description:e.description,format:{type:`grammar`,syntax:s.format,definition:s.definition},...t?.deferLoading?{defer_loading:!0}:{}};let c=i(e,r),l={type:`function`,name:e.name,description:e.description,parameters:e.parameters,...t?.deferLoading?{defer_loading:!0}:{}};return r&&(l.strict=c??n),l})}function m(e){let t=e.customInput?.property;if(t===void 0)return``;let n=e.arguments[t];return typeof n==`string`?n:``}function h(e,t,n){let r=e.customInput;if(!r)return;let i=s(r.jsonBuffer,r.property,t,n);return e.arguments={[r.property]:t},i}async function g(n,r,i,a,o){let s=!1,c=new Map,u=new Map,d=e=>{e.type===`message`&&e.phase===`final_answer`&&(r.stopReason=`stop`)},f=(e,t)=>{let n=c.get(e);return n?.type===t?n:void 0},p=(e,t)=>{t!==void 0&&i.push({type:`toolcall_delta`,contentIndex:e.contentIndex,delta:t,partial:r})},g=(e,t)=>{if(t.type===`reasoning`){let t={type:`thinking`,thinking:``};r.content.push(t);let n={type:`thinking`,block:t,contentIndex:r.content.length-1};return c.set(e,n),i.push({type:`thinking_start`,contentIndex:n.contentIndex,partial:r}),n}if(t.type===`message`){d(t);let n={type:`text`,text:``};r.content.push(n);let a={type:`text`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`text_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`function_call`){let n={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{},partialJson:t.arguments||``};r.content.push(n);let a={type:`toolCall`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`toolcall_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`custom_tool_call`){let n=o?.grammarToolInputProperties?.get(t.name)??`input`,a=t.input||``,s={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{[n]:a},customInput:{property:n,jsonBuffer:{input:``,started:!1,closed:!1}}};r.content.push(s);let l={type:`toolCall`,block:s,contentIndex:r.content.length-1};return c.set(e,l),i.push({type:`toolcall_start`,contentIndex:l.contentIndex,partial:r}),l}},v=(e,t)=>c.get(e)??g(e,t),y=e=>{for(let t of e){if(t.type!==`reasoning`||!t.encrypted_content)continue;let e=u.get(t.id);if(!e?.thinkingSignature)continue;let n=JSON.parse(e.thinkingSignature);n.encrypted_content||(e.thinkingSignature=JSON.stringify({...n,encrypted_content:t.encrypted_content}))}},b=t=>{if(s=!0,y(t.output??[]),t?.id&&(r.responseId=t.id),t?.usage){let e=t.usage.input_tokens_details,n=e?.cached_tokens||0,i=e?.cache_write_tokens||0;r.usage={input:Math.max(0,(t.usage.input_tokens||0)-n-i),output:t.usage.output_tokens||0,cacheRead:n,cacheWrite:i,reasoning:t.usage.output_tokens_details?.reasoning_tokens||0,totalTokens:t.usage.total_tokens||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}if(e(a,r.usage),o?.applyServiceTierPricing){let e=o.resolveServiceTier?o.resolveServiceTier(t?.service_tier,o.serviceTier):t?.service_tier??o.serviceTier;o.applyServiceTierPricing(r.usage,e)}let n=t?.status;r.rawStopReason=n,r.stopReason=
|
|
1
|
+
import{t as e}from"./models-BSkXF4T6.js";import{n as t}from"./json-parse-CgFfIg4Q.js";import{t as n}from"./transform-messages-XkZ1QnTb.js";import{t as r}from"./sanitize-unicode-DmIE6hZJ.js";import{a as i,i as a,r as o,t as s}from"./constrained-sampling-DafcjXU6.js";import{t as c}from"./hash-yQufAZII.js";function l(e,t){let n={v:1,id:e};return t&&(n.phase=t),JSON.stringify(n)}function u(e){if(e){if(e.startsWith(`{`))try{let t=JSON.parse(e);if(t.v===1&&typeof t.id==`string`)return t.phase===`commentary`||t.phase===`final_answer`?{id:t.id,phase:t.phase}:{id:t.id}}catch{}return{id:e}}}function d(e,t){let n=t.filter(e=>e.type===`text`).map(e=>e.text).join(`
|
|
2
|
+
`),i=t.filter(e=>e.type===`image`),a=n.length>0;if(i.length===0||!e.input.includes(`image`))return r(a?n:i.length>0?`(see attached image)`:`(no tool output)`);let o=[];a&&o.push({type:`input_text`,text:r(n)});for(let e of i)o.push({type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});return o}function f(e,t,i,a){let s=[],l=new Set,f=e=>{let t=e.replace(/[^a-zA-Z0-9_-]/g,`_`);return(t.length>64?t.slice(0,64):t).replace(/_+$/,``)},m=e=>{let t=`fc_${c(e)}`;return t.length>64?t.slice(0,64):t},h=n(t.messages,e,(t,n,r)=>{if(!i.has(e.provider)||!t.includes(`|`))return f(t);let[a,o]=t.split(`|`),s=f(a),c=r.provider!==e.provider||r.api!==e.api?m(o):f(o);return c.startsWith(`fc_`)||(c=f(`fc_${c}`)),`${s}|${c}`});if((a?.includeSystemPrompt??!0)&&t.systemPrompt){let n=e.compat,i=e.reasoning&&n?.supportsDeveloperRole!==!1?`developer`:`system`;s.push({role:i,content:r(t.systemPrompt)})}let g=0;for(let t of h){if(t.role===`user`)if(typeof t.content==`string`)s.push({role:`user`,content:[{type:`input_text`,text:r(t.content)}]});else{let e=t.content.map(e=>e.type===`text`?{type:`input_text`,text:r(e.text)}:{type:`input_image`,detail:`auto`,image_url:`data:${e.mimeType};base64,${e.data}`});if(e.length===0)continue;s.push({role:`user`,content:e})}else if(t.role===`assistant`){let n=[],i=t,l=i.model!==e.id&&i.provider===e.provider&&i.api===e.api,d=0;for(let e of t.content)if(e.type===`thinking`){if(e.thinkingSignature){let t=JSON.parse(e.thinkingSignature);n.push(t)}}else if(e.type===`text`){let t=e,i=u(t.textSignature),a=d===0?`msg_pi_${g}`:`msg_pi_${g}_${d}`;d++;let o=i?.id;o?o.length>64&&(o=`msg_${c(o)}`):o=a,n.push({type:`message`,role:`assistant`,content:[{type:`output_text`,text:r(t.text),annotations:[]}],status:`completed`,id:o,phase:i?.phase})}else if(e.type===`toolCall`){let t=e,[i,s]=t.id.split(`|`),c=a?.grammarToolInputProperties?.get(t.name),u=s;(l&&u?.startsWith(`fc_`)||c===void 0&&!u?.startsWith(`fc_`))&&(u=void 0),c===void 0?n.push({type:`function_call`,id:u,call_id:i,name:t.name,arguments:JSON.stringify(t.arguments)}):n.push({type:`custom_tool_call`,id:u,call_id:i,name:t.name,input:r(o(t.name,t.arguments,c))})}if(n.length===0)continue;s.push(...n)}else if(t.role===`toolResult`){let[n]=t.toolCallId.split(`|`),r=d(e,t.content);a?.grammarToolInputProperties?.has(t.toolName)?s.push({type:`custom_tool_call_output`,call_id:n,output:r}):s.push({type:`function_call_output`,call_id:n,output:r});let i=[];for(let e of t.addedToolNames??[]){let t=a?.deferredTools?.get(e);!t||l.has(e)||(l.add(e),i.push(t))}if(i.length>0){let e=i.map(e=>e.name),n=`pi_tool_load_${c(`${t.toolCallId}:${e.join(`,`)}`)}`;s.push({type:`tool_search_call`,call_id:n,execution:`client`,status:`completed`,arguments:{query:e.join(` `),limit:e.length}}),s.push({type:`tool_search_output`,call_id:n,execution:`client`,status:`completed`,tools:p(i,{...a?.toolOptions,deferLoading:!0})})}}g++}return s}function p(e,t){let n=t?.strict!==void 0&&t.strict,r=t?.supportsStrictMode??!0,o=t?.supportsOpenAIGrammarTools??!1;return e.map(e=>{let s=a(e,o);if(s)return{type:`custom`,name:e.name,description:e.description,format:{type:`grammar`,syntax:s.format,definition:s.definition},...t?.deferLoading?{defer_loading:!0}:{}};let c=i(e,r),l={type:`function`,name:e.name,description:e.description,parameters:e.parameters,...t?.deferLoading?{defer_loading:!0}:{}};return r&&(l.strict=c??n),l})}function m(e){let t=e.customInput?.property;if(t===void 0)return``;let n=e.arguments[t];return typeof n==`string`?n:``}function h(e,t,n){let r=e.customInput;if(!r)return;let i=s(r.jsonBuffer,r.property,t,n);return e.arguments={[r.property]:t},i}async function g(n,r,i,a,o){let s=!1,c=new Map,u=new Map,d=e=>{e.type===`message`&&e.phase===`final_answer`&&(r.stopReason=`stop`)},f=(e,t)=>{let n=c.get(e);return n?.type===t?n:void 0},p=(e,t)=>{t!==void 0&&i.push({type:`toolcall_delta`,contentIndex:e.contentIndex,delta:t,partial:r})},g=(e,t)=>{if(t.type===`reasoning`){let t={type:`thinking`,thinking:``};r.content.push(t);let n={type:`thinking`,block:t,contentIndex:r.content.length-1};return c.set(e,n),i.push({type:`thinking_start`,contentIndex:n.contentIndex,partial:r}),n}if(t.type===`message`){d(t);let n={type:`text`,text:``};r.content.push(n);let a={type:`text`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`text_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`function_call`){let n={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{},partialJson:t.arguments||``};r.content.push(n);let a={type:`toolCall`,block:n,contentIndex:r.content.length-1};return c.set(e,a),i.push({type:`toolcall_start`,contentIndex:a.contentIndex,partial:r}),a}if(t.type===`custom_tool_call`){let n=o?.grammarToolInputProperties?.get(t.name)??`input`,a=t.input||``,s={type:`toolCall`,id:`${t.call_id}|${t.id}`,name:t.name,arguments:{[n]:a},customInput:{property:n,jsonBuffer:{input:``,started:!1,closed:!1}}};r.content.push(s);let l={type:`toolCall`,block:s,contentIndex:r.content.length-1};return c.set(e,l),i.push({type:`toolcall_start`,contentIndex:l.contentIndex,partial:r}),l}},v=(e,t)=>c.get(e)??g(e,t),y=e=>{for(let t of e){if(t.type!==`reasoning`||!t.encrypted_content)continue;let e=u.get(t.id);if(!e?.thinkingSignature)continue;let n=JSON.parse(e.thinkingSignature);n.encrypted_content||(e.thinkingSignature=JSON.stringify({...n,encrypted_content:t.encrypted_content}))}},b=t=>{if(s=!0,y(t.output??[]),t?.id&&(r.responseId=t.id),t?.usage){let e=t.usage.input_tokens_details,n=e?.cached_tokens||0,i=e?.cache_write_tokens||0;r.usage={input:Math.max(0,(t.usage.input_tokens||0)-n-i),output:t.usage.output_tokens||0,cacheRead:n,cacheWrite:i,reasoning:t.usage.output_tokens_details?.reasoning_tokens||0,totalTokens:t.usage.total_tokens||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}if(e(a,r.usage),o?.applyServiceTierPricing){let e=o.resolveServiceTier?o.resolveServiceTier(t?.service_tier,o.serviceTier):t?.service_tier??o.serviceTier;o.applyServiceTierPricing(r.usage,e)}let n=t?.status,i=t?.incomplete_details,c=typeof i?.reason==`string`?i.reason:void 0;r.rawStopReason=c?`${n}.${c}`:n;let l=_(n,c);r.stopReason=l.stopReason,r.errorMessage=l.errorMessage,r.content.some(e=>e.type===`toolCall`)&&r.stopReason===`stop`&&(r.stopReason=`toolUse`)};for await(let e of n)if(e.type===`response.created`)r.responseId=e.response.id;else if(e.type===`response.output_item.added`)g(e.output_index,e.item);else if(e.type===`response.reasoning_summary_text.delta`){let t=f(e.output_index,`thinking`);if(!t)continue;t.block.thinking+=e.delta,i.push({type:`thinking_delta`,contentIndex:t.contentIndex,delta:e.delta,partial:r})}else if(e.type===`response.reasoning_summary_part.done`){let t=f(e.output_index,`thinking`);if(!t)continue;t.block.thinking+=`
|
|
3
3
|
|
|
4
4
|
`,i.push({type:`thinking_delta`,contentIndex:t.contentIndex,delta:`
|
|
5
5
|
|
|
@@ -7,4 +7,4 @@ import{t as e}from"./models-DgdVqaw5.js";import{n as t}from"./json-parse-CgFfIg4
|
|
|
7
7
|
|
|
8
8
|
`)||``,o=n.content?.map(e=>e.text).join(`
|
|
9
9
|
|
|
10
|
-
`)||``;a.block.thinking=t||o||a.block.thinking,a.block.thinkingSignature=JSON.stringify(n),u.set(n.id,a.block),i.push({type:`thinking_end`,contentIndex:a.contentIndex,content:a.block.thinking,partial:r}),c.delete(e.output_index)}else n.type===`message`&&a?.type===`text`?(a.block.text=n.content?.map(e=>e.type===`output_text`?e.text:e.refusal).join(``)||``,a.block.textSignature=l(n.id,n.phase??void 0),i.push({type:`text_end`,contentIndex:a.contentIndex,content:a.block.text,partial:r}),c.delete(e.output_index)):n.type===`function_call`&&a?.type===`toolCall`&&a.block.partialJson!==void 0?(a.block.arguments=t(n.arguments||a.block.partialJson||`{}`),delete a.block.partialJson,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index)):n.type===`custom_tool_call`&&a?.type===`toolCall`&&a.block.customInput&&(p(a,h(a.block,n.input??m(a.block),!0)),delete a.block.customInput,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index))}else if(e.type===`response.completed`||e.type===`response.incomplete`)b(e.response);else if(e.type===`error`)throw Error(`Error Code ${e.code}: ${e.message}`||`Unknown error`);else if(e.type===`response.failed`){s=!0,r.rawStopReason=e.response?.status;let t=e.response?.error,n=e.response?.incomplete_details,i=t?`${t.code||`unknown`}: ${t.message||`no message`}`:n?.reason?`incomplete: ${n.reason}`:`Unknown error (no error details in response)`;throw Error(i)}if(!s)throw Error(`OpenAI Responses stream ended before a terminal response event`)}function _(e){if(!e)return`
|
|
10
|
+
`)||``;a.block.thinking=t||o||a.block.thinking,a.block.thinkingSignature=JSON.stringify(n),u.set(n.id,a.block),i.push({type:`thinking_end`,contentIndex:a.contentIndex,content:a.block.thinking,partial:r}),c.delete(e.output_index)}else n.type===`message`&&a?.type===`text`?(a.block.text=n.content?.map(e=>e.type===`output_text`?e.text:e.refusal).join(``)||``,a.block.textSignature=l(n.id,n.phase??void 0),i.push({type:`text_end`,contentIndex:a.contentIndex,content:a.block.text,partial:r}),c.delete(e.output_index)):n.type===`function_call`&&a?.type===`toolCall`&&a.block.partialJson!==void 0?(a.block.arguments=t(n.arguments||a.block.partialJson||`{}`),delete a.block.partialJson,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index)):n.type===`custom_tool_call`&&a?.type===`toolCall`&&a.block.customInput&&(p(a,h(a.block,n.input??m(a.block),!0)),delete a.block.customInput,i.push({type:`toolcall_end`,contentIndex:a.contentIndex,toolCall:a.block,partial:r}),c.delete(e.output_index))}else if(e.type===`response.completed`||e.type===`response.incomplete`)b(e.response);else if(e.type===`error`)throw Error(`Error Code ${e.code}: ${e.message}`||`Unknown error`);else if(e.type===`response.failed`){s=!0,r.rawStopReason=e.response?.status;let t=e.response?.error,n=e.response?.incomplete_details,i=t?`${t.code||`unknown`}: ${t.message||`no message`}`:n?.reason?`incomplete: ${n.reason}`:`Unknown error (no error details in response)`;throw Error(i)}if(!s)throw Error(`OpenAI Responses stream ended before a terminal response event`)}function _(e,t){if(!e)return{stopReason:`stop`};switch(e){case`completed`:return{stopReason:`stop`};case`incomplete`:return t===`max_output_tokens`?{stopReason:`length`}:{stopReason:`error`,errorMessage:t?`Response incomplete: ${t}`:`Response incomplete without a provider reason`};case`failed`:case`cancelled`:return{stopReason:`error`};case`in_progress`:case`queued`:return{stopReason:`stop`};default:throw Error(`Unhandled stop reason: ${e}`)}}export{p as n,g as r,f as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as e,z as t}from"./account-store-
|
|
1
|
+
import{h as e,z as t}from"./account-store-BfqIrMMe.js";import{p as n}from"./bedrock-camp-BfNg24Ce.js";import{r,s as i}from"./legacy-api-aliases-qI5FdR49.js";import"./provider-settings-0ASsdEo7.js";import{fetchModels as a,getCatalog as o}from"./openrouter-models-Ds9BfRxR.js";import{loginIntercepted as s}from"./openrouter-oauth-6UZDhQTB.js";const c=`openrouter`,l=`${c}-openai`,u={"HTTP-Referer":`https://sliccy.ai`,"X-Title":`SLICC`};function d(e){return{...e,baseUrl:`https://openrouter.ai/api/v1`,api:`openai-completions`}}function f(e){return{...e??{},...u}}const p=(t,n,i={})=>r(d(t),n,{...i,apiKey:e(c)??i.apiKey,headers:f(i.headers)}),m=(t,n,r={})=>i(d(t),n,{...r,apiKey:e(c)??r.apiKey,headers:f(r.headers)}),h={id:c,name:`OpenRouter`,description:`Access OpenRouter models with one-click PKCE login. No pasted API key is required.`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,defaultModelId:`anthropic/claude-sonnet-4.6`,oauthTokenDomains:[`openrouter.ai`,`*.openrouter.ai`],getModelIds:o,refreshModels:async()=>{await a()},onOAuthLoginIntercepted:async(e,t,n)=>{await s(e,()=>void 0,n),await a().catch(()=>void 0),t()},onOAuthLogout:async()=>{await t({providerId:c,accessToken:``})}};function g(){n({api:l,stream:p,streamSimple:m})}export{h as config,g as register};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as e,z as t}from"./account-store-
|
|
1
|
+
import{h as e,z as t}from"./account-store-BkG4BDQC.js";import{a as n}from"./compat-C0CyHyoL.js";import{r,s as i}from"./legacy-api-aliases-C0CAIWhd.js";import"./provider-settings-CqsZtmc2.js";import{fetchModels as a,getCatalog as o}from"./openrouter-models-BVfLgK5R.js";import{loginIntercepted as s}from"./openrouter-oauth-DQLx11_A.js";var c=`openrouter`,l=`https://openrouter.ai/api/v1`,u=`openai-completions`,d=`${c}-openai`,f={"HTTP-Referer":`https://sliccy.ai`,"X-Title":`SLICC`};function p(e){return{...e,baseUrl:l,api:u}}function m(e){return{...e??{},...f}}var h=(t,n,i={})=>r(p(t),n,{...i,apiKey:e(c)??i.apiKey,headers:m(i.headers)}),g=(t,n,r={})=>i(p(t),n,{...r,apiKey:e(c)??r.apiKey,headers:m(r.headers)}),_={id:c,name:`OpenRouter`,description:`Access OpenRouter models with one-click PKCE login. No pasted API key is required.`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,defaultModelId:`anthropic/claude-sonnet-4.6`,oauthTokenDomains:[`openrouter.ai`,`*.openrouter.ai`],getModelIds:o,refreshModels:async()=>{await a()},onOAuthLoginIntercepted:async(e,t,n)=>{await s(e,()=>void 0,n),await a().catch(()=>void 0),t()},onOAuthLogout:async()=>{await t({providerId:c,accessToken:``})}};function v(){n({api:d,stream:h,streamSimple:g})}export{_ as config,v as register};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,t}from"./headers-CbDaTl3c.js";import{t as n}from"./provider-retry-C8PJzY_l.js";import{t as r}from"./sanitize-unicode-DmIE6hZJ.js";import{n as i}from"./openai-DehfWK3N.js";import{n as a,t as o}from"./error-body-
|
|
1
|
+
import{n as e,t}from"./headers-CbDaTl3c.js";import{t as n}from"./provider-retry-C8PJzY_l.js";import{t as r}from"./sanitize-unicode-DmIE6hZJ.js";import{n as i}from"./openai-DehfWK3N.js";import{n as a,t as o}from"./error-body-pkrba6pf.js";const s=async(e,r,i)=>{let s={api:e.api,provider:e.provider,model:e.id,output:[],stopReason:`stop`,timestamp:Date.now()};try{let a=i?.apiKey;if(!a)throw Error(`No API key for provider: ${e.provider}`);let o=c(e,a,i?.headers,i?.fetch),d=l(e,r),f=await i?.onPayload?.(d,e);f!==void 0&&(d=f);let p={...i?.signal?{signal:i.signal}:{},...i?.timeoutMs===void 0?{}:{timeout:i.timeoutMs},maxRetries:0},{data:m,response:h}=await n(()=>o.chat.completions.create(d,p).withResponse(),{maxRetries:i?.maxRetries,maxRetryDelayMs:i?.maxRetryDelayMs,signal:i?.signal});await i?.onResponse?.({status:h.status,headers:t(h.headers)},e);let g=m;s.responseId=g.id,g.usage&&(s.usage=u(g.usage,e));let _=g.choices[0];if(_){let e=_.message.content;typeof e==`string`&&e.length>0&&s.output.push({type:`text`,text:e});for(let e of _.message.images??[]){let t=typeof e.image_url==`string`?e.image_url:e.image_url?.url;if(!t?.startsWith(`data:`))continue;let n=t.match(/^data:([^;]+);base64,(.+)$/);n&&s.output.push({type:`image`,mimeType:n[1],data:n[2]})}}return s}catch(e){return s.stopReason=i?.signal?.aborted?`aborted`:`error`,s.errorMessage=o(a(e)),s}};function c(t,n,r,a){return new i({apiKey:n,baseURL:t.baseUrl,dangerouslyAllowBrowser:!0,fetch:a,defaultHeaders:e({...t.headers,...r})})}function l(e,t){let n=t.input.map(e=>e.type===`text`?{type:`text`,text:r(e.text)}:{type:`image_url`,image_url:{url:`data:${e.mimeType};base64,${e.data}`}});return{model:e.id,messages:[{role:`user`,content:n}],stream:!1,modalities:e.output.includes(`text`)?[`image`,`text`]:[`image`]}}function u(e,t){let n=e.prompt_tokens||0,r=e.prompt_tokens_details?.cached_tokens||0,i=e.prompt_tokens_details?.cache_write_tokens||0,a=i>0?Math.max(0,r-i):r,o=Math.max(0,n-a-i),s=e.completion_tokens||0,c={input:o,output:s,cacheRead:a,cacheWrite:i,totalTokens:o+s+a+i,cost:{input:t.cost.input/1e6*o,output:t.cost.output/1e6*s,cacheRead:t.cost.cacheRead/1e6*a,cacheWrite:t.cost.cacheWrite/1e6*i,total:0}};return c.cost.total=c.cost.input+c.cost.output+c.cost.cacheRead+c.cost.cacheWrite,c}export{s as generateImages};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,t}from"./headers-CbDaTl3c.js";import{t as n}from"./provider-retry-C8PJzY_l.js";import{t as r}from"./sanitize-unicode-DmIE6hZJ.js";import{n as i}from"./openai-DQxsE__c.js";import{n as a,t as o}from"./error-body-
|
|
1
|
+
import{n as e,t}from"./headers-CbDaTl3c.js";import{t as n}from"./provider-retry-C8PJzY_l.js";import{t as r}from"./sanitize-unicode-DmIE6hZJ.js";import{n as i}from"./openai-DQxsE__c.js";import{n as a,t as o}from"./error-body-pkrba6pf.js";var s=async(e,r,i)=>{let s={api:e.api,provider:e.provider,model:e.id,output:[],stopReason:`stop`,timestamp:Date.now()};try{let a=i?.apiKey;if(!a)throw Error(`No API key for provider: ${e.provider}`);let o=c(e,a,i?.headers,i?.fetch),d=l(e,r),f=await i?.onPayload?.(d,e);f!==void 0&&(d=f);let p={...i?.signal?{signal:i.signal}:{},...i?.timeoutMs===void 0?{}:{timeout:i.timeoutMs},maxRetries:0},{data:m,response:h}=await n(()=>o.chat.completions.create(d,p).withResponse(),{maxRetries:i?.maxRetries,maxRetryDelayMs:i?.maxRetryDelayMs,signal:i?.signal});await i?.onResponse?.({status:h.status,headers:t(h.headers)},e);let g=m;s.responseId=g.id,g.usage&&(s.usage=u(g.usage,e));let _=g.choices[0];if(_){let e=_.message.content;typeof e==`string`&&e.length>0&&s.output.push({type:`text`,text:e});for(let e of _.message.images??[]){let t=typeof e.image_url==`string`?e.image_url:e.image_url?.url;if(!t?.startsWith(`data:`))continue;let n=t.match(/^data:([^;]+);base64,(.+)$/);n&&s.output.push({type:`image`,mimeType:n[1],data:n[2]})}}return s}catch(e){return s.stopReason=i?.signal?.aborted?`aborted`:`error`,s.errorMessage=o(a(e)),s}};function c(t,n,r,a){return new i({apiKey:n,baseURL:t.baseUrl,dangerouslyAllowBrowser:!0,fetch:a,defaultHeaders:e({...t.headers,...r})})}function l(e,t){let n=t.input.map(e=>e.type===`text`?{type:`text`,text:r(e.text)}:{type:`image_url`,image_url:{url:`data:${e.mimeType};base64,${e.data}`}});return{model:e.id,messages:[{role:`user`,content:n}],stream:!1,modalities:e.output.includes(`text`)?[`image`,`text`]:[`image`]}}function u(e,t){let n=e.prompt_tokens||0,r=e.prompt_tokens_details?.cached_tokens||0,i=e.prompt_tokens_details?.cache_write_tokens||0,a=i>0?Math.max(0,r-i):r,o=Math.max(0,n-a-i),s=e.completion_tokens||0,c={input:o,output:s,cacheRead:a,cacheWrite:i,totalTokens:o+s+a+i,cost:{input:t.cost.input/1e6*o,output:t.cost.output/1e6*s,cacheRead:t.cost.cacheRead/1e6*a,cacheWrite:t.cost.cacheWrite/1e6*i,total:0}};return c.cost.total=c.cost.input+c.cost.output+c.cost.cacheRead+c.cost.cacheWrite,c}export{s as generateImages};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./openrouter.models-
|
|
1
|
+
import{t as e}from"./openrouter.models-CrhNqqEN.js";var t=`https://openrouter.ai/api/v1/models`,n=`slicc.openrouter.models`,r=`slicc.openrouter.modelFilter`,i=1e4,a=[`*`],o=null;function s(){if(typeof localStorage>`u`)return[];try{let e=localStorage.getItem(n);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function c(e){if(!(typeof localStorage>`u`))try{localStorage.setItem(n,JSON.stringify(e))}catch{}}async function l(){let e=await fetch(t,{headers:{Accept:`application/json`},signal:AbortSignal.timeout(i)});if(!e.ok)throw Error(`Failed to fetch OpenRouter models: ${e.status} ${e.statusText}`.trim());let n=await e.json();if(!Array.isArray(n.data))throw Error(`Failed to fetch OpenRouter models: response did not contain a data array`);let r=n.data;return o=r,c(r),r}function u(e){let t=e.replace(/[.+?^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`.*`);return RegExp(`^${t}$`)}function d(e,t=a){let n=(t.length>0?t:a).map(u);return e.filter(e=>n.some(t=>t.test(e.id)))}function f(){if(typeof localStorage>`u`)return[...a];try{let e=localStorage.getItem(r);if(!e)return[...a];let t=JSON.parse(e);if(!Array.isArray(t))return[...a];let n=t.filter(e=>typeof e==`string`&&e.length>0);return n.length>0?n:[...a]}catch{return[...a]}}function p(e){let t=e.architecture?.input_modalities??e.input??[`text`];return{id:e.id,name:e.name,api:`openai`,context_window:e.context_length??e.contextWindow??128e3,max_tokens:e.top_provider?.max_completion_tokens??e.maxTokens??16384,reasoning:e.supported_parameters?.includes(`include_reasoning`)??e.reasoning??!1,input:t.includes(`image`)?[`text`,`image`]:[`text`]}}function m(){let t=s();return d(o??(t.length>0?t:Object.values(e)),f()).map(p)}export{l as fetchModels,d as filterModels,m as getCatalog,s as loadCache,f as loadFilterPatterns,c as saveCache,p as toModelMetadata};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./openrouter.models-
|
|
1
|
+
import{t as e}from"./openrouter.models-DkPWoMvu.js";const t=`slicc.openrouter.models`,n=[`*`];let r=null;function i(){if(typeof localStorage>`u`)return[];try{let e=localStorage.getItem(t);if(!e)return[];let n=JSON.parse(e);return Array.isArray(n)?n:[]}catch{return[]}}function a(e){if(!(typeof localStorage>`u`))try{localStorage.setItem(t,JSON.stringify(e))}catch{}}async function o(){let e=await fetch(`https://openrouter.ai/api/v1/models`,{headers:{Accept:`application/json`},signal:AbortSignal.timeout(1e4)});if(!e.ok)throw Error(`Failed to fetch OpenRouter models: ${e.status} ${e.statusText}`.trim());let t=await e.json();if(!Array.isArray(t.data))throw Error(`Failed to fetch OpenRouter models: response did not contain a data array`);let n=t.data;return r=n,a(n),n}function s(e){let t=e.replace(/[.+?^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`.*`);return RegExp(`^${t}$`)}function c(e,t=n){let r=(t.length>0?t:n).map(s);return e.filter(e=>r.some(t=>t.test(e.id)))}function l(){if(typeof localStorage>`u`)return[...n];try{let e=localStorage.getItem(`slicc.openrouter.modelFilter`);if(!e)return[...n];let t=JSON.parse(e);if(!Array.isArray(t))return[...n];let r=t.filter(e=>typeof e==`string`&&e.length>0);return r.length>0?r:[...n]}catch{return[...n]}}function u(e){let t=e.architecture?.input_modalities??e.input??[`text`];return{id:e.id,name:e.name,api:`openai`,context_window:e.context_length??e.contextWindow??128e3,max_tokens:e.top_provider?.max_completion_tokens??e.maxTokens??16384,reasoning:e.supported_parameters?.includes(`include_reasoning`)??e.reasoning??!1,input:t.includes(`image`)?[`text`,`image`]:[`text`]}}function d(){let t=i();return c(r??(t.length>0?t:Object.values(e)),l()).map(u)}export{o as fetchModels,c as filterModels,d as getCatalog,i as loadCache,l as loadFilterPatterns,a as saveCache,u as toModelMetadata};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{z as e}from"./account-store-
|
|
1
|
+
import{z as e}from"./account-store-BfqIrMMe.js";import"./provider-settings-0ASsdEo7.js";import{n as t,t as n}from"./pkce-hGf_TEnP.js";const r=`http://127.0.0.1:3000/callback`,i=`http://127.0.0.1:3000/*`;function a(e,t){let n=new URL(`https://openrouter.ai/auth`);return n.searchParams.set(`callback_url`,e),n.searchParams.set(`code_challenge`,t),n.searchParams.set(`code_challenge_method`,`S256`),n.toString()}function o(e){if(!e)throw Error(`OpenRouter OAuth login was cancelled or timed out`);let t;try{t=new URL(e)}catch{throw Error(`OpenRouter OAuth returned an invalid callback URL`)}let n=t.searchParams.get(`code`);if(!n)throw Error(`OpenRouter OAuth redirect did not include an authorization code`);return n}async function s(e,t,n=fetch){let r=await n(`https://openrouter.ai/api/v1/auth/keys`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({code:e,code_verifier:t,code_challenge_method:`S256`}),signal:AbortSignal.timeout(3e4)});if(!r.ok){let e=await r.text();throw Error(`OpenRouter key exchange failed (${r.status}): ${e||`(empty response body)`}`)}let i;try{i=await r.json()}catch{throw Error(`OpenRouter key exchange returned invalid JSON`)}let a=i&&typeof i==`object`&&typeof i.key==`string`?i.key.trim():``;if(!a)throw Error(`OpenRouter key exchange returned an empty or invalid API key`);return a}async function c(c,l,u){let d=t(),f=await n(d),p=await s(o(await c({authorizeUrl:a(r,f),redirectUriPattern:i,onCapture:`close`})),d);await e({providerId:`openrouter`,accessToken:p,tokenExpiresAt:2**53-1,baseUrl:`https://openrouter.ai/api/v1`}),l()}export{r as OPENROUTER_CALLBACK_URL,i as OPENROUTER_REDIRECT_URI_PATTERN,a as buildAuthorizeUrl,n as deriveCodeChallenge,s as exchangeCodeForKey,t as generateCodeVerifier,c as loginIntercepted,o as parseCallbackCode};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{z as e}from"./account-store-
|
|
1
|
+
import{z as e}from"./account-store-BkG4BDQC.js";import"./provider-settings-CqsZtmc2.js";import{n as t,t as n}from"./pkce-hGf_TEnP.js";var r=`https://openrouter.ai/auth`,i=`https://openrouter.ai/api/v1/auth/keys`,a=`https://openrouter.ai/api/v1`,o=`http://127.0.0.1:3000/callback`,s=`http://127.0.0.1:3000/*`;function c(e,t){let n=new URL(r);return n.searchParams.set(`callback_url`,e),n.searchParams.set(`code_challenge`,t),n.searchParams.set(`code_challenge_method`,`S256`),n.toString()}function l(e){if(!e)throw Error(`OpenRouter OAuth login was cancelled or timed out`);let t;try{t=new URL(e)}catch{throw Error(`OpenRouter OAuth returned an invalid callback URL`)}let n=t.searchParams.get(`code`);if(!n)throw Error(`OpenRouter OAuth redirect did not include an authorization code`);return n}async function u(e,t,n=fetch){let r=await n(i,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({code:e,code_verifier:t,code_challenge_method:`S256`}),signal:AbortSignal.timeout(3e4)});if(!r.ok){let e=await r.text();throw Error(`OpenRouter key exchange failed (${r.status}): ${e||`(empty response body)`}`)}let a;try{a=await r.json()}catch{throw Error(`OpenRouter key exchange returned invalid JSON`)}let o=a&&typeof a==`object`&&typeof a.key==`string`?a.key.trim():``;if(!o)throw Error(`OpenRouter key exchange returned an empty or invalid API key`);return o}async function d(r,i,d){let f=t(),p=await u(l(await r({authorizeUrl:c(o,await n(f)),redirectUriPattern:s,onCapture:`close`})),f);await e({providerId:`openrouter`,accessToken:p,tokenExpiresAt:2**53-1,baseUrl:a}),i()}export{o as OPENROUTER_CALLBACK_URL,s as OPENROUTER_REDIRECT_URI_PATTERN,c as buildAuthorizeUrl,n as deriveCodeChallenge,u as exchangeCodeForKey,t as generateCodeVerifier,d as loginIntercepted,l as parseCallbackCode};
|