promptfoo 0.120.26 → 0.121.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/drizzle/0023_wooden_mandrill.sql +2 -0
- package/dist/drizzle/meta/0023_snapshot.json +1496 -0
- package/dist/drizzle/meta/_journal.json +7 -0
- package/dist/src/{ListApp-D3DG0F8h.js → ListApp-Du7YVwj5.js} +2 -4
- package/dist/src/accounts-BgNJDBE6.js +206 -0
- package/dist/src/{accounts-BzEY8H3v.cjs → accounts-Bx-x3bmW.cjs} +99 -80
- package/dist/src/{accounts-DHHiXsy6.js → accounts-CMqkzrVf.js} +61 -36
- package/dist/src/{accounts-R3gfCR_g.js → accounts-xrUGFA6n.js} +60 -35
- package/dist/src/{agentic-utils-D6_gzOUF.js → agentic-utils-BKIN5PKu.js} +9 -10
- package/dist/src/{agents-CwM7re15.cjs → agents-B0f4HICh.cjs} +37 -40
- package/dist/src/{agents-Cnph5GLD.js → agents-C-dDThPK.js} +37 -37
- package/dist/src/{agents-C7BiinFI.cjs → agents-CErsqg5U.cjs} +19 -27
- package/dist/src/{agents-v4cW_ZgC.js → agents-CVIn-Utx.js} +19 -22
- package/dist/src/{agents-GiUianme.js → agents-CXknwsFX.js} +37 -40
- package/dist/src/{agents-DETIQHqF.js → agents-DeH4Gu94.js} +21 -28
- package/dist/src/{agents-DYIT-hQy.js → agents-Dy2YpZpa.js} +38 -41
- package/dist/src/{agents-Cao4i7AX.js → agents-aF4-T121.js} +19 -30
- package/dist/src/{aimlapi-DMF6v_vb.js → aimlapi-BAGZDo5G.js} +16 -18
- package/dist/src/{aimlapi-CMJpKK-B.js → aimlapi-BNfTBexL.js} +15 -17
- package/dist/src/{aimlapi-DtSf1ykJ.js → aimlapi-DHRKlBEA.js} +15 -4
- package/dist/src/{aimlapi-DoGLcQW_.cjs → aimlapi-tg0Gkcvr.cjs} +15 -16
- package/dist/src/app/assets/index-BFCZg7hQ.js +439 -0
- package/dist/src/app/assets/index-NCn4eVBv.css +1 -0
- package/dist/src/app/assets/{vendor-charts-CYyo8R8v.js → vendor-charts-CCl15Imd.js} +1 -1
- package/dist/src/app/assets/{vendor-markdown-DSmzq4Jh.js → vendor-markdown-0tekx3KX.js} +1 -1
- package/dist/src/app/index.html +4 -34
- package/dist/src/{audio-DUH4q0Xq.js → audio-BRODU0UK.js} +7 -9
- package/dist/src/{audio-BWjyvHn9.cjs → audio-BWeaWovU.cjs} +6 -7
- package/dist/src/{audio-U580w8jM.js → audio-CHQ4r-RV.js} +6 -5
- package/dist/src/{audio-BrJBFN2b.js → audio-tf_NBjlC.js} +6 -8
- package/dist/src/base-B0tcrnq_.js +193 -0
- package/dist/src/base-B4QJRyFS.js +194 -0
- package/dist/src/base-DBtwl2FR.cjs +222 -0
- package/dist/src/base-fEDN28WM.js +193 -0
- package/dist/src/{blobs-kt8v3UyH.js → blobs-BAU-dXan.js} +9 -12
- package/dist/src/{blobs-C9J2mVgo.js → blobs-Bpg5rH6i.js} +9 -12
- package/dist/src/{blobs-673H0jCl.cjs → blobs-DvS-O6be.cjs} +34 -37
- package/dist/src/blobs-qTYm-1PY.js +236 -0
- package/dist/src/{cache-BLLayYEN.js → cache-8XhNqPKW.js} +64 -67
- package/dist/src/cache-Bbn1Nyrd.cjs +5 -0
- package/dist/src/cache-BwsMSda7.js +6 -0
- package/dist/src/{cache-mIszOnuz.js → cache-CG0SlR1d.js} +64 -66
- package/dist/src/{cache-7xULbvt3.cjs → cache-COish3-W.cjs} +114 -117
- package/dist/src/cache-D3eqDYGU.js +739 -0
- package/dist/src/{chat-Fl6TZJRS.cjs → chat-2K608PeQ.cjs} +20 -21
- package/dist/src/chat-BKm79wib.js +764 -0
- package/dist/src/{chat-XPN9YHhr.js → chat-CM_kyI8B.js} +20 -9
- package/dist/src/{chat-DIywASPG.js → chat-CRWNNq73.js} +49 -49
- package/dist/src/{chat-C8Ei4f87.js → chat-CznLWr_D.js} +49 -49
- package/dist/src/{chat-CgyGj2hC.js → chat-DHMH-N64.js} +20 -22
- package/dist/src/{chat-C4zqjObh.cjs → chat-DaqekjFr.cjs} +69 -69
- package/dist/src/{chat-Cpz3O-Xl.js → chat-DxysjBvt.js} +21 -23
- package/dist/src/{chatkit-Dpxrq4eD.js → chatkit-65VXf5SR.js} +58 -58
- package/dist/src/{chatkit-DIrJX8xk.js → chatkit-Be-Q-a9F.js} +58 -60
- package/dist/src/{chatkit-DEls11hE.js → chatkit-BxFvW8KY.js} +58 -60
- package/dist/src/{chatkit-e25Ziu17.cjs → chatkit-DKyPi1Gs.cjs} +58 -60
- package/dist/src/chunk-DEq-mXcV.js +15 -0
- package/dist/src/chunk-DRamLcfz.js +16 -0
- package/dist/src/{claude-agent-sdk-6-xTaLwM.js → claude-agent-sdk-BLTu0WBO.js} +45 -31
- package/dist/src/{claude-agent-sdk-BzxF6NIJ.cjs → claude-agent-sdk-CJH22shf.cjs} +44 -29
- package/dist/src/{claude-agent-sdk-CmkTnKGH.js → claude-agent-sdk-D6_k9FKA.js} +45 -33
- package/dist/src/{claude-agent-sdk-rXCBLK_o.js → claude-agent-sdk-Dy5lT-Tx.js} +46 -21
- package/dist/src/{cloud-BMbRVJFw.js → cloud-Bc9526yV.js} +32 -12
- package/dist/src/cloud-DmE0EwsY.js +4 -0
- package/dist/src/{cloudflare-ai-CUg4BTcj.js → cloudflare-ai-C9r2sRhw.js} +16 -18
- package/dist/src/{cloudflare-ai-Z9X219gp.js → cloudflare-ai-CWWJCRim.js} +16 -4
- package/dist/src/{cloudflare-ai-BAQ0u_dg.cjs → cloudflare-ai-ClWSdor4.cjs} +16 -17
- package/dist/src/{cloudflare-ai-CobxMTR4.js → cloudflare-ai-ICsOuD-z.js} +17 -19
- package/dist/src/{cloudflare-gateway-C0sgfr_z.cjs → cloudflare-gateway-C2_-KG5o.cjs} +21 -22
- package/dist/src/{cloudflare-gateway-_itGuXry.js → cloudflare-gateway-D6O7AlYb.js} +23 -23
- package/dist/src/{cloudflare-gateway-D2_yi-Fh.js → cloudflare-gateway-D6xFc5pa.js} +21 -25
- package/dist/src/{cloudflare-gateway-Djf3F3_H.js → cloudflare-gateway-pXGHxJ47.js} +26 -14
- package/dist/src/{codex-sdk-ibXwdglL.js → codex-sdk-C6UMlxwV.js} +49 -32
- package/dist/src/{codex-sdk-BASDNkIl.js → codex-sdk-DUwKWezN.js} +49 -30
- package/dist/src/{codex-sdk-dSnGdgIp.js → codex-sdk-GGAw0qbD.js} +49 -32
- package/dist/src/{codex-sdk-wTEpMM_X.cjs → codex-sdk-fAO0c3yA.cjs} +49 -32
- package/dist/src/{cometapi-B01btbfb.js → cometapi-BasUi7-_.js} +17 -19
- package/dist/src/{cometapi-DHUAH6nK.js → cometapi-Bbjp5V4x.js} +16 -4
- package/dist/src/{cometapi-ChAaRjg5.js → cometapi-DkXrKi5z.js} +21 -24
- package/dist/src/{cometapi-JbvOJSCO.cjs → cometapi-vY6aDZgo.cjs} +21 -22
- package/dist/src/{completion-D9_MDlnd.js → completion-6Mx_iXxK.js} +11 -13
- package/dist/src/{completion-BBJ6zmG3.js → completion-C5rtR_9P.js} +11 -13
- package/dist/src/{completion-DDyL3Cb2.cjs → completion-CDOouNzq.cjs} +21 -23
- package/dist/src/completion-C_P3ypkJ.js +120 -0
- package/dist/src/createHash-CTQmL3G2.js +15 -0
- package/dist/src/createHash-CfZSc0b4.cjs +27 -0
- package/dist/src/createHash-Da8fMwqB.js +16 -0
- package/dist/src/createHash-DmPQkvBh.js +15 -0
- package/dist/src/{docker-JAAubMw3.js → docker-5KcG-_86.js} +18 -20
- package/dist/src/{docker-Ckw-j7Rr.cjs → docker-BwsKwxFs.cjs} +18 -19
- package/dist/src/{docker-vnOg96gi.js → docker-CZnqU1XV.js} +18 -7
- package/dist/src/{docker-BuButc4D.js → docker-DzxyDPIj.js} +19 -21
- package/dist/src/entrypoint.js +2 -3
- package/dist/src/{errors-DnGCbnx8.js → errors-P6ll7XSJ.js} +2 -2
- package/dist/src/{esm-CYhseqj4.js → esm-C03C-mv3.js} +17 -20
- package/dist/src/{esm-rDtG_2rg.js → esm-CaIwzWR5.js} +18 -21
- package/dist/src/esm-Cd1AjG1D.js +379 -0
- package/dist/src/{esm-BQkx5roy.cjs → esm-CnNt7sI4.cjs} +47 -49
- package/dist/src/eval-17JizQIv.js +15 -0
- package/dist/src/{eval-CYrbG57o.js → eval-DmFyWU7i.js} +49 -55
- package/dist/src/{evalResult-COsVttMA.js → evalResult-CDQiuUuf.js} +16 -12
- package/dist/src/{evalResult-6JaUIStC.js → evalResult-CTG2AHOS.js} +10 -11
- package/dist/src/evalResult-Cqj8pldJ.js +12 -0
- package/dist/src/{evalResult-DlRfu_Rq.cjs → evalResult-Dap2CekP.cjs} +20 -21
- package/dist/src/evalResult-DvcJAWJU.cjs +10 -0
- package/dist/src/evalResult-Hftn-S_i.js +10 -0
- package/dist/src/evaluator-B2CFNt-P.js +36 -0
- package/dist/src/{evaluator-3EJCMTs0.js → evaluator-DPFRbFIL.js} +210 -232
- package/dist/src/{extractor-LSYjrhK0.js → extractor-CFG6bcWJ.js} +23 -38
- package/dist/src/{extractor-DbhlYEeo.cjs → extractor-DX36oYEv.cjs} +37 -64
- package/dist/src/{extractor-Hs7la_19.js → extractor-M67RUtg6.js} +23 -38
- package/dist/src/extractor-YMU_Gvt8.js +374 -0
- package/dist/src/fetch-4M3YRaqL.js +780 -0
- package/dist/src/{fetch-18MuNu9i.js → fetch-60Gzydls.js} +60 -46
- package/dist/src/{fetch-SRsE6Ctl.js → fetch-BMv0O527.js} +41 -35
- package/dist/src/{fetch-ZMn_oemb.cjs → fetch-BxUk8odA.cjs} +268 -279
- package/dist/src/fetch-KV5kNASw.js +5 -0
- package/dist/src/{fileExtensions-ePDqouxn.js → fileExtensions-DnqA1y9x.js} +2 -2
- package/dist/src/{fileExtensions-BpuMmaFL.js → fileExtensions-Ds-foDzt.js} +2 -2
- package/dist/src/fileExtensions-LcDYkU4v.js +85 -0
- package/dist/src/{fileExtensions-DkJYkWUy.cjs → fileExtensions-bYh77CN8.cjs} +27 -28
- package/dist/src/{formatDuration-Doo0xq-z.js → formatDuration-DgBVMN65.js} +2 -2
- package/dist/src/{genaiTracer-Ce19n68P.js → genaiTracer-70Z8BIuV.js} +2 -3
- package/dist/src/{genaiTracer-CqNnnXrE.js → genaiTracer-C1rxGO8Q.js} +2 -3
- package/dist/src/genaiTracer-D3fD9dNV.js +256 -0
- package/dist/src/{genaiTracer-CQlpZkrp.cjs → genaiTracer-DN4dQywX.cjs} +13 -14
- package/dist/src/graders-Bu0H9nXi.js +32 -0
- package/dist/src/{graders-BaMCwIKp.js → graders-CHO8EPM4.js} +385 -417
- package/dist/src/graders-Cfhkvx-e.js +34 -0
- package/dist/src/{graders-QsALpIdy.js → graders-CpdqD9PI.js} +385 -417
- package/dist/src/graders-DClJVpGP.cjs +32 -0
- package/dist/src/{graders-DzUUnUjC.cjs → graders-DOXycdlG.cjs} +721 -753
- package/dist/src/graders-DcnJsrMO.js +32 -0
- package/dist/src/graders-R9rYUM0d.js +13466 -0
- package/dist/src/{image-BiEVdpdP.js → image-BmEZqVmk.js} +57 -18
- package/dist/src/{image-mhAGP07h.js → image-CBBVXWuT.js} +57 -18
- package/dist/src/{image-D10zEe1f.cjs → image-CDLQOcqT.cjs} +6 -7
- package/dist/src/{image-COCWy5dX.js → image-DJEvKveK.js} +6 -5
- package/dist/src/{image-C3BjJUAU.cjs → image-DTedmQPg.cjs} +77 -32
- package/dist/src/{image-DB4sHxdJ.js → image-gvmivTEe.js} +7 -9
- package/dist/src/image-pAX56tPG.js +257 -0
- package/dist/src/{image-BXt_7u0v.js → image-tL5hIOFh.js} +6 -8
- package/dist/src/index.cjs +696 -693
- package/dist/src/index.d.cts +113 -10
- package/dist/src/index.d.ts +113 -6
- package/dist/src/index.js +657 -658
- package/dist/src/{interactiveCheck-DU-MAhp5.js → interactiveCheck-BgLZUIt3.js} +7 -8
- package/dist/src/{invariant-DT20jrBd.js → invariant-BtWWVVhl.js} +2 -2
- package/dist/src/{invariant-1pAf2CD1.js → invariant-Ddh24eXh.js} +2 -2
- package/dist/src/{invariant-CKcJAQ6M.cjs → invariant-kfQ8Bu82.cjs} +7 -8
- package/dist/src/invariant-vgHWClmd.js +25 -0
- package/dist/src/{knowledgeBase-DotRBzUE.js → knowledgeBase-CLJybhnF.js} +19 -34
- package/dist/src/{knowledgeBase-XJQ0Qyez.js → knowledgeBase-CoU-UQBg.js} +17 -41
- package/dist/src/{knowledgeBase-CMvMlLZR.js → knowledgeBase-DjWPVqSb.js} +17 -43
- package/dist/src/{knowledgeBase-Bnb00xKs.cjs → knowledgeBase-wkxuRFhA.cjs} +17 -40
- package/dist/src/{litellm-CHrRmPAe.js → litellm-B9Hysuri.js} +16 -18
- package/dist/src/{litellm-CrLJrPIm.js → litellm-CTfa0hqi.js} +15 -17
- package/dist/src/{litellm-BrnZhMcL.cjs → litellm-NYpQ8RQu.cjs} +15 -16
- package/dist/src/{litellm-BECdjOTx.js → litellm-ePxtr9F1.js} +15 -4
- package/dist/src/{logger-w8Ozp0Td.js → logger-CT3IKMKA.js} +24 -41
- package/dist/src/{logger-BdZ-IqBc.cjs → logger-Cp1GPUjj.cjs} +166 -192
- package/dist/src/logger-DLcq4dWf.js +713 -0
- package/dist/src/{logger-BotXmWKW.js → logger-KkObSCzq.js} +27 -43
- package/dist/src/{luma-ray-C0RkI3lt.cjs → luma-ray-B0GGNRc1.cjs} +20 -21
- package/dist/src/{luma-ray-C-w6EsJm.js → luma-ray-BE2mOt6N.js} +20 -13
- package/dist/src/{luma-ray-BOeX-h0M.js → luma-ray-BW9IRGIc.js} +22 -21
- package/dist/src/{luma-ray-DgKLS0BF.js → luma-ray-Cm1KZBhs.js} +20 -23
- package/dist/src/main.js +1985 -2055
- package/dist/src/{messages-DXV3Qh8_.cjs → messages-1JrJs91T.cjs} +35 -34
- package/dist/src/{messages-D61tPFQo.js → messages-1x9atZmP.js} +25 -24
- package/dist/src/{messages-CDZYGNlS.js → messages-BLbWdsyt.js} +25 -24
- package/dist/src/messages-D8EA0oDc.js +240 -0
- package/dist/src/{meteor-P2rUE-Uz.js → meteor-44VjEACX.js} +3 -4
- package/dist/src/{meteor-SLNTgmXm.js → meteor-D-SotUw9.js} +3 -4
- package/dist/src/{meteor-odmwVbyG.cjs → meteor-DLZZ3osF.cjs} +3 -4
- package/dist/src/{meteor-Dj8cTkU_.js → meteor-DUiCJRC-.js} +3 -4
- package/dist/src/modelslab-C1OLRmVX.js +166 -0
- package/dist/src/modelslab-CqXBy3U8.js +168 -0
- package/dist/src/modelslab-DcOSFwKh.cjs +166 -0
- package/dist/src/modelslab-X5-4LroM.js +166 -0
- package/dist/src/{nova-reel-C2LFfVTf.js → nova-reel-BgS1ZWuK.js} +20 -13
- package/dist/src/{nova-reel-DtCjbD5O.js → nova-reel-D2ZkOSyr.js} +22 -21
- package/dist/src/{nova-reel-D9FXq3Mt.cjs → nova-reel-D9xfaMBs.cjs} +20 -21
- package/dist/src/{nova-reel-Bk5npr2q.js → nova-reel-DihqLeol.js} +20 -23
- package/dist/src/{nova-sonic-BoRSY_U6.cjs → nova-sonic-DVu3mMIy.cjs} +30 -31
- package/dist/src/{nova-sonic-D_qERM-K.js → nova-sonic-DezhVUYT.js} +30 -26
- package/dist/src/{nova-sonic-CgaWLDM1.js → nova-sonic-P-CdUMlV.js} +30 -31
- package/dist/src/{nova-sonic-BXRfQyF-.js → nova-sonic-Q3BOJeig.js} +31 -32
- package/dist/src/{openai-Bigwjgo1.cjs → openai-Cuif0GEt.cjs} +8 -9
- package/dist/src/{openai-Dz3surb_.js → openai-DElQ-fPX.js} +3 -4
- package/dist/src/{openai-CT5fwbve.js → openai-DhbB7eWK.js} +3 -4
- package/dist/src/openai-j-sE2O7r.js +44 -0
- package/dist/src/{openclaw-dHLcXUWZ.js → openclaw-BiSZPL7J.js} +20 -14
- package/dist/src/{openclaw-CpPrXwf6.js → openclaw-Bv1DINsX.js} +20 -27
- package/dist/src/{openclaw-B6XY2kUf.js → openclaw-D1D_ej1z.js} +21 -28
- package/dist/src/{openclaw-DDSfq5fp.cjs → openclaw-DAfWQn-o.cjs} +33 -39
- package/dist/src/opencode-sdk-C7m-wRfI.js +560 -0
- package/dist/src/opencode-sdk-CfaLN8PY.cjs +564 -0
- package/dist/src/opencode-sdk-D95s6SnR.js +562 -0
- package/dist/src/opencode-sdk-DxUPkLT7.js +560 -0
- package/dist/src/{otlpReceiver-DmRb0NBj.js → otlpReceiver--AIRW_S4.js} +53 -51
- package/dist/src/{otlpReceiver-Dg817agV.js → otlpReceiver-Bn5wGB1v.js} +53 -55
- package/dist/src/{otlpReceiver-B6Xo4KZM.cjs → otlpReceiver-Diec4cln.cjs} +53 -55
- package/dist/src/{otlpReceiver-BO0rbDzh.js → otlpReceiver-g3ByGaXs.js} +53 -55
- package/dist/src/{providerRegistry-Xf0qdqGQ.js → providerRegistry-B0RUOLI_.js} +7 -8
- package/dist/src/{providerRegistry-wCWd7sKQ.js → providerRegistry-CD8MEar9.js} +7 -8
- package/dist/src/{providerRegistry-lc7a7utN.cjs → providerRegistry-Civky8Ar.cjs} +12 -13
- package/dist/src/providerRegistry-DM8rZYol.js +45 -0
- package/dist/src/providers-B3HvufyI.js +33246 -0
- package/dist/src/{providers-BiNq_Iyc.js → providers-BKRJTjBz.js} +1743 -1795
- package/dist/src/providers-C1rOSHiR.js +32 -0
- package/dist/src/{providers-BlEhY5mi.js → providers-CFLy1_ji.js} +1750 -1802
- package/dist/src/{providers-BNKVY53V.cjs → providers-CFu-TZl-.cjs} +2111 -2163
- package/dist/src/providers-CxmDwEFf.cjs +31 -0
- package/dist/src/providers-Dodakqr0.js +30 -0
- package/dist/src/providers-GIQ2TcsA.js +30 -0
- package/dist/src/{pythonUtils-r1uBuA0n.js → pythonUtils-C3py6GC1.js} +18 -19
- package/dist/src/{pythonUtils-DZ6EbdY4.cjs → pythonUtils-CTU3Y3lw.cjs} +42 -43
- package/dist/src/{pythonUtils-vMlk9Qp5.js → pythonUtils-D5nxkQ0P.js} +18 -19
- package/dist/src/pythonUtils-D6fwaDSg.js +249 -0
- package/dist/src/quiverai-C2jVwbH1.js +213 -0
- package/dist/src/quiverai-CI6gYJVI.js +213 -0
- package/dist/src/quiverai-CLkWkyZc.cjs +213 -0
- package/dist/src/quiverai-MHSxbmmZ.js +215 -0
- package/dist/src/{render-CAZvKKkB.js → render-Drod8m7K.js} +4 -5
- package/dist/src/{responses-DLLjADw5.js → responses-BKqJmhhc.js} +34 -27
- package/dist/src/{responses-TsdODUpm.js → responses-CGw0DCzh.js} +34 -27
- package/dist/src/responses-jxdehPkC.js +660 -0
- package/dist/src/{responses-zOtKtnY_.cjs → responses-tD4Bd4dc.cjs} +49 -42
- package/dist/src/rubyUtils-BUHu6PhO.js +5 -0
- package/dist/src/{rubyUtils-Cs35SDYa.js → rubyUtils-BUVePouc.js} +27 -20
- package/dist/src/rubyUtils-BcuGX77l.js +222 -0
- package/dist/src/{rubyUtils-BtjlqyXt.js → rubyUtils-Boc4HZzX.js} +18 -19
- package/dist/src/rubyUtils-CP42kMvq.cjs +4 -0
- package/dist/src/{rubyUtils-DCVaJ3mc.cjs → rubyUtils-DhCAlxZr.cjs} +48 -50
- package/dist/src/{sagemaker-Du4LIR97.js → sagemaker-BK4Zb993.js} +75 -70
- package/dist/src/{sagemaker-CLdUAv5z.js → sagemaker-BfiWTmvn.js} +77 -77
- package/dist/src/{sagemaker-DwNnEVYt.cjs → sagemaker-CcQHM1jV.cjs} +75 -76
- package/dist/src/{sagemaker-BcgLu0U4.js → sagemaker-D2Q1c-sD.js} +75 -79
- package/dist/src/{scanner-Dyw21Wg_.js → scanner-J8CA3LsV.js} +149 -122
- package/dist/src/server/index.js +5620 -67302
- package/dist/src/{server-CgUQ25qW.cjs → server-B0PPuDw-.cjs} +57 -67
- package/dist/src/server-B1vi21hA.js +7 -0
- package/dist/src/{server-CbMTRQkg.js → server-BC7XJFgr.js} +19 -24
- package/dist/src/server-Cm9Kai_h.cjs +5 -0
- package/dist/src/{server-DWmZLfCy.js → server-DbFphssR.js} +26 -29
- package/dist/src/server-OAs3nBRT.js +229 -0
- package/dist/src/{signal-Bl32q42d.js → signal-BOTbd53Z.js} +9 -11
- package/dist/src/{slack-BtMkB6xP.cjs → slack-BmVAVGaK.cjs} +7 -8
- package/dist/src/{slack-OZYxoVON.js → slack-DCUPTzS2.js} +8 -8
- package/dist/src/{slack-DPqj42Ts.js → slack-DOdy_kyv.js} +7 -8
- package/dist/src/{slack-BfdBx2tO.js → slack-DXMKtA-f.js} +7 -9
- package/dist/src/store-BNmZ1KAz.cjs +5 -0
- package/dist/src/{store-BqwfFEyF.cjs → store-BSc-TF2w.cjs} +44 -45
- package/dist/src/store-BltJg2cd.js +6 -0
- package/dist/src/{store-D4gdn9ih.js → store-D1tv90v3.js} +34 -35
- package/dist/src/{store-2ocbYY9D.js → store-DQLEjuEO.js} +40 -36
- package/dist/src/store-Ub2vaGJ1.js +228 -0
- package/dist/src/{tables-D-NSwNIb.js → tables-5EvT_Bwn.js} +23 -23
- package/dist/src/{tables-B9E1kRp-.cjs → tables-C7K-XKWp.cjs} +93 -93
- package/dist/src/{tables-C7TT2XVn.js → tables-D36WTqKX.js} +25 -25
- package/dist/src/tables-xKANLRBD.js +288 -0
- package/dist/src/telemetry-5BCRNBbe.cjs +5 -0
- package/dist/src/{telemetry-DZ_7PaVq.js → telemetry-C15ziL8u.js} +17 -14
- package/dist/src/{telemetry-BXyVqyAg.js → telemetry-C2YDkUQH.js} +11 -13
- package/dist/src/{telemetry-D0_yFdtU.cjs → telemetry-CbrnxHp_.cjs} +21 -24
- package/dist/src/telemetry-D4W5hboe.js +7 -0
- package/dist/src/telemetry-DMb2Mpfm.js +171 -0
- package/dist/src/{text-Dm78AVGG.js → text-B_UCRPp2.js} +2 -2
- package/dist/src/{text-DF2hMKdg.cjs → text-CW1cyrwj.cjs} +12 -13
- package/dist/src/{text-DgMr_tiM.js → text-Db-Wt2u2.js} +2 -2
- package/dist/src/text-TIv0QYnd.js +22 -0
- package/dist/src/{tokenUsageUtils-FZd5O_4A.js → tokenUsageUtils-BDGe-iyI.js} +2 -2
- package/dist/src/{tokenUsageUtils-DmZSD2eU.js → tokenUsageUtils-DflFMjS0.js} +2 -2
- package/dist/src/tokenUsageUtils-NYT-WKS6.js +138 -0
- package/dist/src/{tokenUsageUtils-CXhxVj72.cjs → tokenUsageUtils-bVa1ga6f.cjs} +32 -33
- package/dist/src/{transcription-FNIz3YOe.cjs → transcription-CL78qbOU.cjs} +14 -15
- package/dist/src/{transcription-C-M81iDA.js → transcription-DAtxHhAM.js} +14 -7
- package/dist/src/{transcription-CYuY5sFO.js → transcription-LNZTNUUL.js} +14 -16
- package/dist/src/{transcription-Ch7S-LWw.js → transcription-QHh3AH6Z.js} +15 -17
- package/dist/src/{transform-CoP2bJ7P.js → transform-Cgi24fJ7.js} +94 -66
- package/dist/src/{transform-Kd6u-oNm.cjs → transform-CzK1Q0zl.cjs} +24 -26
- package/dist/src/{transform-D8dILpfZ.js → transform-DECvGmzp.js} +15 -13
- package/dist/src/{transform-DMaxQwDx.js → transform-DGLazrMm.js} +94 -66
- package/dist/src/transform-DGxXocjk.js +1506 -0
- package/dist/src/{transform-ivxEY4f7.cjs → transform-DOcQeLld.cjs} +234 -206
- package/dist/src/transform-DTGDnAzW.js +6 -0
- package/dist/src/{transform-CqTFr7KR.js → transform-DilY9wbS.js} +10 -12
- package/dist/src/transform-aa6tmVpZ.js +216 -0
- package/dist/src/transform-m3qNw4KP.cjs +5 -0
- package/dist/src/{transformersAvailability-DEU2naS1.js → transformersAvailability-CEVM2GNQ.js} +2 -2
- package/dist/src/{transformersAvailability-Bkep3ka7.cjs → transformersAvailability-CwayUSlh.cjs} +2 -3
- package/dist/src/{transformersAvailability-DwmezkVe.js → transformersAvailability-D6c6ROpT.js} +2 -2
- package/dist/src/{types-t52w-XsS.js → types-CH3Ge2sE.js} +103 -92
- package/dist/src/{types-DMVjYLpx.js → types-CLKiCBW3.js} +98 -91
- package/dist/src/types-CN_TZ2GJ.js +3260 -0
- package/dist/src/{types-BIfttHrT.cjs → types-LJ0r3wbR.cjs} +573 -566
- package/dist/src/util-5cB-L7U3.js +1430 -0
- package/dist/src/util-6-GqIvzS.js +599 -0
- package/dist/src/{util-vjscpUzy.js → util-B7T3SiBS.js} +5 -6
- package/dist/src/{util-Cl0zfT3V.js → util-Betm42rL.js} +44 -17
- package/dist/src/{util-CUEt0Vum.js → util-C-PPYSMq.js} +44 -17
- package/dist/src/{util-DkFTvieG.cjs → util-CchiqXh_.cjs} +35 -36
- package/dist/src/{util-mJ58qbbw.js → util-DaWTWKBK.js} +5 -6
- package/dist/src/{util-C08Kns6-.cjs → util-Db0a0AFH.cjs} +89 -62
- package/dist/src/{util-DiCePfDu.js → util-Dlz_Wvgm.js} +102 -53
- package/dist/src/{util-BSh4a_Q8.js → util-YT5HPZaS.js} +102 -53
- package/dist/src/{util-DUYOvxAy.cjs → util-Yz-1aEhW.cjs} +274 -219
- package/dist/src/util-ZZH-3QZz.js +293 -0
- package/dist/src/{utils-DFaZa6Rf.cjs → utils-Cz9qXqII.cjs} +32 -35
- package/dist/src/{utils-CVzb4YiI.js → utils-XiOAgly5.js} +4 -7
- package/dist/src/utils-dLokC-eR.js +94 -0
- package/dist/src/{utils-JaY9veb5.js → utils-f2-Moju7.js} +4 -7
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +59 -53
- package/dist/src/app/assets/index-BOgkICuY.css +0 -1
- package/dist/src/app/assets/index-CSgqn_Vd.js +0 -428
- package/dist/src/app/tsconfig.app.tsbuildinfo +0 -1
- package/dist/src/base-BaXmtXYp.js +0 -107
- package/dist/src/base-Dtp8b4_N.js +0 -106
- package/dist/src/base-f71xxWai.cjs +0 -111
- package/dist/src/cache-BUPcq0Ad.js +0 -6
- package/dist/src/cache-CVfRb-HD.cjs +0 -6
- package/dist/src/cache-O4EuX2JV.js +0 -8
- package/dist/src/chunk-DHDDz29n.js +0 -22
- package/dist/src/chunk-FhC4c-0y.js +0 -21
- package/dist/src/cloud-CZ4hytdm.js +0 -5
- package/dist/src/eval-CKHWqG9f.js +0 -16
- package/dist/src/evalResult-CxTP-LMm.cjs +0 -11
- package/dist/src/evalResult-CzLURDcP.js +0 -13
- package/dist/src/evalResult-DyttNQ_G.js +0 -11
- package/dist/src/evaluator-0PvfeBYh.js +0 -38
- package/dist/src/fetch-Bi0o-fdp.js +0 -4
- package/dist/src/fetch-CMptBDVg.cjs +0 -4
- package/dist/src/fetch-DAZkv3gV.js +0 -6
- package/dist/src/graders-BCytzXrb.js +0 -34
- package/dist/src/graders-CGZQShfJ.cjs +0 -33
- package/dist/src/graders-spkuVC-E.js +0 -36
- package/dist/src/opencode-sdk-CImWVqy9.js +0 -382
- package/dist/src/opencode-sdk-CuCztr4P.js +0 -380
- package/dist/src/opencode-sdk-DhcfRbBH.js +0 -376
- package/dist/src/opencode-sdk-mqF-Oj3f.cjs +0 -383
- package/dist/src/providers-BMZZmPBJ.cjs +0 -32
- package/dist/src/providers-CQQrNaJk.js +0 -32
- package/dist/src/providers-Ck8HyrC-.js +0 -34
- package/dist/src/quiverai-BNfIwKCO.cjs +0 -54
- package/dist/src/quiverai-BQigKdIH.js +0 -57
- package/dist/src/quiverai-Bfy2WnE2.js +0 -55
- package/dist/src/quiverai-CedIP0PJ.js +0 -43
- package/dist/src/rubyUtils-D7--T12C.js +0 -6
- package/dist/src/rubyUtils-DRRiMFV2.js +0 -5
- package/dist/src/rubyUtils-vb8OYFC-.cjs +0 -5
- package/dist/src/server-BUbS0Qfh.js +0 -6
- package/dist/src/server-XpGXFHkS.cjs +0 -6
- package/dist/src/server-gfOx5Zrk.js +0 -8
- package/dist/src/store-5u2yriTV.js +0 -7
- package/dist/src/store-D_lq_8oQ.js +0 -6
- package/dist/src/store-m5KT6Ly7.cjs +0 -6
- package/dist/src/telemetry-5RHFoCJh.js +0 -6
- package/dist/src/telemetry-Do8wMnA-.js +0 -8
- package/dist/src/telemetry-LojxPoFq.cjs +0 -6
- package/dist/src/transform-8eGmaH-7.js +0 -7
- package/dist/src/transform-BRVvWaG4.cjs +0 -6
- package/dist/src/transform-GybT0X0u.js +0 -8
- package/dist/src/transformersAvailability-DkAWaK5B.js +0 -35
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { i as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { t as OpenAiGenericProvider } from "./openai-
|
|
5
|
-
import { s as formatOpenAiError } from "./util-
|
|
6
|
-
import { t as ellipsize } from "./text-
|
|
7
|
-
|
|
1
|
+
import { i as logger } from "./logger-CT3IKMKA.js";
|
|
2
|
+
import { p as REQUEST_TIMEOUT_MS } from "./fetch-60Gzydls.js";
|
|
3
|
+
import { r as fetchWithCache } from "./cache-8XhNqPKW.js";
|
|
4
|
+
import { t as OpenAiGenericProvider } from "./openai-DElQ-fPX.js";
|
|
5
|
+
import { s as formatOpenAiError } from "./util-Betm42rL.js";
|
|
6
|
+
import { t as ellipsize } from "./text-B_UCRPp2.js";
|
|
8
7
|
//#region src/providers/openai/image.ts
|
|
9
8
|
const DALLE2_VALID_SIZES = [
|
|
10
9
|
"256x256",
|
|
@@ -101,10 +100,48 @@ function validateSizeForModel(size, model) {
|
|
|
101
100
|
}
|
|
102
101
|
return { valid: true };
|
|
103
102
|
}
|
|
104
|
-
function
|
|
103
|
+
function getMimeTypeForOutputFormat(outputFormat) {
|
|
104
|
+
switch (outputFormat) {
|
|
105
|
+
case "jpeg": return "image/jpeg";
|
|
106
|
+
case "webp": return "image/webp";
|
|
107
|
+
default: return "image/png";
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
function inferMimeTypeFromUrl(url) {
|
|
111
|
+
try {
|
|
112
|
+
const pathname = new URL(url).pathname.toLowerCase();
|
|
113
|
+
if (pathname.endsWith(".jpg") || pathname.endsWith(".jpeg")) return "image/jpeg";
|
|
114
|
+
if (pathname.endsWith(".webp")) return "image/webp";
|
|
115
|
+
if (pathname.endsWith(".gif")) return "image/gif";
|
|
116
|
+
if (pathname.endsWith(".svg")) return "image/svg+xml";
|
|
117
|
+
if (pathname.endsWith(".png")) return "image/png";
|
|
118
|
+
} catch {}
|
|
119
|
+
}
|
|
120
|
+
function buildStructuredImageOutputs(data, outputFormat) {
|
|
121
|
+
if (!Array.isArray(data.data) || data.data.length === 0) return;
|
|
122
|
+
return data.data.map((item) => {
|
|
123
|
+
if (item.b64_json) {
|
|
124
|
+
const mimeType = getMimeTypeForOutputFormat(outputFormat);
|
|
125
|
+
return {
|
|
126
|
+
data: `data:${mimeType};base64,${item.b64_json}`,
|
|
127
|
+
mimeType
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
if (item.url) {
|
|
131
|
+
const mimeType = inferMimeTypeFromUrl(item.url);
|
|
132
|
+
return mimeType ? {
|
|
133
|
+
data: item.url,
|
|
134
|
+
mimeType
|
|
135
|
+
} : { data: item.url };
|
|
136
|
+
}
|
|
137
|
+
return null;
|
|
138
|
+
}).filter((item) => item !== null);
|
|
139
|
+
}
|
|
140
|
+
function formatOutput(data, prompt, responseFormat, outputFormat) {
|
|
105
141
|
if (responseFormat === "b64_json") {
|
|
106
|
-
|
|
107
|
-
return JSON.stringify(data);
|
|
142
|
+
const b64Json = data.data[0].b64_json;
|
|
143
|
+
if (!b64Json) return { error: `No base64 image data found in response: ${JSON.stringify(data)}` };
|
|
144
|
+
return `data:${getMimeTypeForOutputFormat(outputFormat)};base64,${b64Json}`;
|
|
108
145
|
} else {
|
|
109
146
|
const url = data.data[0].url;
|
|
110
147
|
if (!url) return { error: `No image URL found in response: ${JSON.stringify(data)}` };
|
|
@@ -148,19 +185,21 @@ async function callOpenAiImageApi(url, body, headers, timeout) {
|
|
|
148
185
|
body: JSON.stringify(body)
|
|
149
186
|
}, timeout);
|
|
150
187
|
}
|
|
151
|
-
async function processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, quality, n = 1) {
|
|
188
|
+
async function processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, quality, n = 1, outputFormat) {
|
|
152
189
|
if (data.error) {
|
|
153
190
|
await data?.deleteFromCache?.();
|
|
154
191
|
return { error: formatOpenAiError(data) };
|
|
155
192
|
}
|
|
156
193
|
try {
|
|
157
|
-
const formattedOutput = formatOutput(data, prompt, responseFormat);
|
|
194
|
+
const formattedOutput = formatOutput(data, prompt, responseFormat, outputFormat);
|
|
158
195
|
if (typeof formattedOutput === "object") return formattedOutput;
|
|
196
|
+
const cost = cached ? 0 : calculateImageCost(model, size, quality, n);
|
|
159
197
|
return {
|
|
160
198
|
output: formattedOutput,
|
|
199
|
+
images: buildStructuredImageOutputs(data, outputFormat),
|
|
161
200
|
cached,
|
|
162
201
|
latencyMs,
|
|
163
|
-
cost
|
|
202
|
+
cost,
|
|
164
203
|
...responseFormat === "b64_json" ? {
|
|
165
204
|
isBase64: true,
|
|
166
205
|
format: "json"
|
|
@@ -205,14 +244,14 @@ var OpenAiImageProvider = class extends OpenAiGenericProvider {
|
|
|
205
244
|
({data, cached, status, statusText, latencyMs} = await callOpenAiImageApi(`${this.getApiUrl()}${endpoint}`, body, headers, REQUEST_TIMEOUT_MS));
|
|
206
245
|
if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
|
|
207
246
|
} catch (err) {
|
|
208
|
-
|
|
247
|
+
logger.error(`API call error: ${String(err)}`);
|
|
209
248
|
await data?.deleteFromCache?.();
|
|
210
249
|
return { error: `API call error: ${String(err)}` };
|
|
211
250
|
}
|
|
212
|
-
return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1);
|
|
251
|
+
return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1, "output_format" in config ? config.output_format : void 0);
|
|
213
252
|
}
|
|
214
253
|
};
|
|
215
|
-
|
|
216
254
|
//#endregion
|
|
217
|
-
export {
|
|
218
|
-
|
|
255
|
+
export { formatOutput as i, buildStructuredImageOutputs as n, callOpenAiImageApi as r, OpenAiImageProvider as t };
|
|
256
|
+
|
|
257
|
+
//# sourceMappingURL=image-BmEZqVmk.js.map
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { o as
|
|
3
|
-
import {
|
|
4
|
-
import { a as fetchWithCache } from "./cache-
|
|
5
|
-
import { t as OpenAiGenericProvider } from "./openai-
|
|
6
|
-
import { s as formatOpenAiError } from "./util-
|
|
7
|
-
import { t as ellipsize } from "./text-
|
|
8
|
-
|
|
2
|
+
import { o as logger } from "./logger-KkObSCzq.js";
|
|
3
|
+
import { f as REQUEST_TIMEOUT_MS } from "./fetch-BMv0O527.js";
|
|
4
|
+
import { a as fetchWithCache } from "./cache-CG0SlR1d.js";
|
|
5
|
+
import { t as OpenAiGenericProvider } from "./openai-DhbB7eWK.js";
|
|
6
|
+
import { s as formatOpenAiError } from "./util-C-PPYSMq.js";
|
|
7
|
+
import { t as ellipsize } from "./text-Db-Wt2u2.js";
|
|
9
8
|
//#region src/providers/openai/image.ts
|
|
10
9
|
const DALLE2_VALID_SIZES = [
|
|
11
10
|
"256x256",
|
|
@@ -102,10 +101,48 @@ function validateSizeForModel(size, model) {
|
|
|
102
101
|
}
|
|
103
102
|
return { valid: true };
|
|
104
103
|
}
|
|
105
|
-
function
|
|
104
|
+
function getMimeTypeForOutputFormat(outputFormat) {
|
|
105
|
+
switch (outputFormat) {
|
|
106
|
+
case "jpeg": return "image/jpeg";
|
|
107
|
+
case "webp": return "image/webp";
|
|
108
|
+
default: return "image/png";
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
function inferMimeTypeFromUrl(url) {
|
|
112
|
+
try {
|
|
113
|
+
const pathname = new URL(url).pathname.toLowerCase();
|
|
114
|
+
if (pathname.endsWith(".jpg") || pathname.endsWith(".jpeg")) return "image/jpeg";
|
|
115
|
+
if (pathname.endsWith(".webp")) return "image/webp";
|
|
116
|
+
if (pathname.endsWith(".gif")) return "image/gif";
|
|
117
|
+
if (pathname.endsWith(".svg")) return "image/svg+xml";
|
|
118
|
+
if (pathname.endsWith(".png")) return "image/png";
|
|
119
|
+
} catch {}
|
|
120
|
+
}
|
|
121
|
+
function buildStructuredImageOutputs(data, outputFormat) {
|
|
122
|
+
if (!Array.isArray(data.data) || data.data.length === 0) return;
|
|
123
|
+
return data.data.map((item) => {
|
|
124
|
+
if (item.b64_json) {
|
|
125
|
+
const mimeType = getMimeTypeForOutputFormat(outputFormat);
|
|
126
|
+
return {
|
|
127
|
+
data: `data:${mimeType};base64,${item.b64_json}`,
|
|
128
|
+
mimeType
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
if (item.url) {
|
|
132
|
+
const mimeType = inferMimeTypeFromUrl(item.url);
|
|
133
|
+
return mimeType ? {
|
|
134
|
+
data: item.url,
|
|
135
|
+
mimeType
|
|
136
|
+
} : { data: item.url };
|
|
137
|
+
}
|
|
138
|
+
return null;
|
|
139
|
+
}).filter((item) => item !== null);
|
|
140
|
+
}
|
|
141
|
+
function formatOutput(data, prompt, responseFormat, outputFormat) {
|
|
106
142
|
if (responseFormat === "b64_json") {
|
|
107
|
-
|
|
108
|
-
return JSON.stringify(data);
|
|
143
|
+
const b64Json = data.data[0].b64_json;
|
|
144
|
+
if (!b64Json) return { error: `No base64 image data found in response: ${JSON.stringify(data)}` };
|
|
145
|
+
return `data:${getMimeTypeForOutputFormat(outputFormat)};base64,${b64Json}`;
|
|
109
146
|
} else {
|
|
110
147
|
const url = data.data[0].url;
|
|
111
148
|
if (!url) return { error: `No image URL found in response: ${JSON.stringify(data)}` };
|
|
@@ -149,19 +186,21 @@ async function callOpenAiImageApi(url, body, headers, timeout) {
|
|
|
149
186
|
body: JSON.stringify(body)
|
|
150
187
|
}, timeout);
|
|
151
188
|
}
|
|
152
|
-
async function processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, quality, n = 1) {
|
|
189
|
+
async function processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, quality, n = 1, outputFormat) {
|
|
153
190
|
if (data.error) {
|
|
154
191
|
await data?.deleteFromCache?.();
|
|
155
192
|
return { error: formatOpenAiError(data) };
|
|
156
193
|
}
|
|
157
194
|
try {
|
|
158
|
-
const formattedOutput = formatOutput(data, prompt, responseFormat);
|
|
195
|
+
const formattedOutput = formatOutput(data, prompt, responseFormat, outputFormat);
|
|
159
196
|
if (typeof formattedOutput === "object") return formattedOutput;
|
|
197
|
+
const cost = cached ? 0 : calculateImageCost(model, size, quality, n);
|
|
160
198
|
return {
|
|
161
199
|
output: formattedOutput,
|
|
200
|
+
images: buildStructuredImageOutputs(data, outputFormat),
|
|
162
201
|
cached,
|
|
163
202
|
latencyMs,
|
|
164
|
-
cost
|
|
203
|
+
cost,
|
|
165
204
|
...responseFormat === "b64_json" ? {
|
|
166
205
|
isBase64: true,
|
|
167
206
|
format: "json"
|
|
@@ -206,14 +245,14 @@ var OpenAiImageProvider = class extends OpenAiGenericProvider {
|
|
|
206
245
|
({data, cached, status, statusText, latencyMs} = await callOpenAiImageApi(`${this.getApiUrl()}${endpoint}`, body, headers, REQUEST_TIMEOUT_MS));
|
|
207
246
|
if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
|
|
208
247
|
} catch (err) {
|
|
209
|
-
|
|
248
|
+
logger.error(`API call error: ${String(err)}`);
|
|
210
249
|
await data?.deleteFromCache?.();
|
|
211
250
|
return { error: `API call error: ${String(err)}` };
|
|
212
251
|
}
|
|
213
|
-
return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1);
|
|
252
|
+
return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1, "output_format" in config ? config.output_format : void 0);
|
|
214
253
|
}
|
|
215
254
|
};
|
|
216
|
-
|
|
217
255
|
//#endregion
|
|
218
|
-
export {
|
|
219
|
-
|
|
256
|
+
export { formatOutput as i, buildStructuredImageOutputs as n, callOpenAiImageApi as r, OpenAiImageProvider as t };
|
|
257
|
+
|
|
258
|
+
//# sourceMappingURL=image-CBBVXWuT.js.map
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
const require_logger = require(
|
|
2
|
-
const require_fetch = require(
|
|
3
|
-
const require_cache = require(
|
|
4
|
-
|
|
1
|
+
const require_logger = require("./logger-Cp1GPUjj.cjs");
|
|
2
|
+
const require_fetch = require("./fetch-BxUk8odA.cjs");
|
|
3
|
+
const require_cache = require("./cache-COish3-W.cjs");
|
|
5
4
|
//#region src/providers/hyperbolic/image.ts
|
|
6
5
|
const HYPERBOLIC_IMAGE_MODELS = [
|
|
7
6
|
{
|
|
@@ -132,7 +131,7 @@ var HyperbolicImageProvider = class {
|
|
|
132
131
|
}, require_fetch.REQUEST_TIMEOUT_MS));
|
|
133
132
|
if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
|
|
134
133
|
} catch (err) {
|
|
135
|
-
require_logger.
|
|
134
|
+
require_logger.logger.error(`API call error: ${String(err)}`);
|
|
136
135
|
return { error: `API call error: ${String(err)}` };
|
|
137
136
|
}
|
|
138
137
|
if (data.error) return { error: typeof data.error === "string" ? data.error : JSON.stringify(data.error) };
|
|
@@ -158,7 +157,7 @@ var HyperbolicImageProvider = class {
|
|
|
158
157
|
function createHyperbolicImageProvider(providerPath, options = {}) {
|
|
159
158
|
return new HyperbolicImageProvider(providerPath.split(":").slice(2).join(":") || "SDXL1.0-base", options);
|
|
160
159
|
}
|
|
161
|
-
|
|
162
160
|
//#endregion
|
|
163
161
|
exports.createHyperbolicImageProvider = createHyperbolicImageProvider;
|
|
164
|
-
|
|
162
|
+
|
|
163
|
+
//# sourceMappingURL=image-CDLQOcqT.cjs.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { b as getEnvString, i as logger } from "./logger-CT3IKMKA.js";
|
|
2
|
+
import { p as REQUEST_TIMEOUT_MS } from "./fetch-60Gzydls.js";
|
|
3
|
+
import { r as fetchWithCache } from "./cache-8XhNqPKW.js";
|
|
3
4
|
//#region src/providers/hyperbolic/image.ts
|
|
4
5
|
const HYPERBOLIC_IMAGE_MODELS = [
|
|
5
6
|
{
|
|
@@ -130,7 +131,7 @@ var HyperbolicImageProvider = class {
|
|
|
130
131
|
}, REQUEST_TIMEOUT_MS));
|
|
131
132
|
if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
|
|
132
133
|
} catch (err) {
|
|
133
|
-
|
|
134
|
+
logger.error(`API call error: ${String(err)}`);
|
|
134
135
|
return { error: `API call error: ${String(err)}` };
|
|
135
136
|
}
|
|
136
137
|
if (data.error) return { error: typeof data.error === "string" ? data.error : JSON.stringify(data.error) };
|
|
@@ -156,7 +157,7 @@ var HyperbolicImageProvider = class {
|
|
|
156
157
|
function createHyperbolicImageProvider(providerPath, options = {}) {
|
|
157
158
|
return new HyperbolicImageProvider(providerPath.split(":").slice(2).join(":") || "SDXL1.0-base", options);
|
|
158
159
|
}
|
|
159
|
-
|
|
160
160
|
//#endregion
|
|
161
161
|
export { createHyperbolicImageProvider };
|
|
162
|
-
|
|
162
|
+
|
|
163
|
+
//# sourceMappingURL=image-DJEvKveK.js.map
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
const require_logger = require(
|
|
2
|
-
const require_fetch = require(
|
|
3
|
-
const require_cache = require(
|
|
4
|
-
const require_openai = require(
|
|
5
|
-
const require_util = require(
|
|
6
|
-
const require_text = require(
|
|
7
|
-
|
|
1
|
+
const require_logger = require("./logger-Cp1GPUjj.cjs");
|
|
2
|
+
const require_fetch = require("./fetch-BxUk8odA.cjs");
|
|
3
|
+
const require_cache = require("./cache-COish3-W.cjs");
|
|
4
|
+
const require_openai = require("./openai-Cuif0GEt.cjs");
|
|
5
|
+
const require_util = require("./util-Db0a0AFH.cjs");
|
|
6
|
+
const require_text = require("./text-CW1cyrwj.cjs");
|
|
8
7
|
//#region src/providers/openai/image.ts
|
|
9
8
|
const DALLE2_VALID_SIZES = [
|
|
10
9
|
"256x256",
|
|
@@ -101,10 +100,48 @@ function validateSizeForModel(size, model) {
|
|
|
101
100
|
}
|
|
102
101
|
return { valid: true };
|
|
103
102
|
}
|
|
104
|
-
function
|
|
103
|
+
function getMimeTypeForOutputFormat(outputFormat) {
|
|
104
|
+
switch (outputFormat) {
|
|
105
|
+
case "jpeg": return "image/jpeg";
|
|
106
|
+
case "webp": return "image/webp";
|
|
107
|
+
default: return "image/png";
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
function inferMimeTypeFromUrl(url) {
|
|
111
|
+
try {
|
|
112
|
+
const pathname = new URL(url).pathname.toLowerCase();
|
|
113
|
+
if (pathname.endsWith(".jpg") || pathname.endsWith(".jpeg")) return "image/jpeg";
|
|
114
|
+
if (pathname.endsWith(".webp")) return "image/webp";
|
|
115
|
+
if (pathname.endsWith(".gif")) return "image/gif";
|
|
116
|
+
if (pathname.endsWith(".svg")) return "image/svg+xml";
|
|
117
|
+
if (pathname.endsWith(".png")) return "image/png";
|
|
118
|
+
} catch {}
|
|
119
|
+
}
|
|
120
|
+
function buildStructuredImageOutputs(data, outputFormat) {
|
|
121
|
+
if (!Array.isArray(data.data) || data.data.length === 0) return;
|
|
122
|
+
return data.data.map((item) => {
|
|
123
|
+
if (item.b64_json) {
|
|
124
|
+
const mimeType = getMimeTypeForOutputFormat(outputFormat);
|
|
125
|
+
return {
|
|
126
|
+
data: `data:${mimeType};base64,${item.b64_json}`,
|
|
127
|
+
mimeType
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
if (item.url) {
|
|
131
|
+
const mimeType = inferMimeTypeFromUrl(item.url);
|
|
132
|
+
return mimeType ? {
|
|
133
|
+
data: item.url,
|
|
134
|
+
mimeType
|
|
135
|
+
} : { data: item.url };
|
|
136
|
+
}
|
|
137
|
+
return null;
|
|
138
|
+
}).filter((item) => item !== null);
|
|
139
|
+
}
|
|
140
|
+
function formatOutput(data, prompt, responseFormat, outputFormat) {
|
|
105
141
|
if (responseFormat === "b64_json") {
|
|
106
|
-
|
|
107
|
-
return JSON.stringify(data);
|
|
142
|
+
const b64Json = data.data[0].b64_json;
|
|
143
|
+
if (!b64Json) return { error: `No base64 image data found in response: ${JSON.stringify(data)}` };
|
|
144
|
+
return `data:${getMimeTypeForOutputFormat(outputFormat)};base64,${b64Json}`;
|
|
108
145
|
} else {
|
|
109
146
|
const url = data.data[0].url;
|
|
110
147
|
if (!url) return { error: `No image URL found in response: ${JSON.stringify(data)}` };
|
|
@@ -148,19 +185,21 @@ async function callOpenAiImageApi(url, body, headers, timeout) {
|
|
|
148
185
|
body: JSON.stringify(body)
|
|
149
186
|
}, timeout);
|
|
150
187
|
}
|
|
151
|
-
async function processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, quality, n = 1) {
|
|
188
|
+
async function processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, quality, n = 1, outputFormat) {
|
|
152
189
|
if (data.error) {
|
|
153
190
|
await data?.deleteFromCache?.();
|
|
154
191
|
return { error: require_util.formatOpenAiError(data) };
|
|
155
192
|
}
|
|
156
193
|
try {
|
|
157
|
-
const formattedOutput = formatOutput(data, prompt, responseFormat);
|
|
194
|
+
const formattedOutput = formatOutput(data, prompt, responseFormat, outputFormat);
|
|
158
195
|
if (typeof formattedOutput === "object") return formattedOutput;
|
|
196
|
+
const cost = cached ? 0 : calculateImageCost(model, size, quality, n);
|
|
159
197
|
return {
|
|
160
198
|
output: formattedOutput,
|
|
199
|
+
images: buildStructuredImageOutputs(data, outputFormat),
|
|
161
200
|
cached,
|
|
162
201
|
latencyMs,
|
|
163
|
-
cost
|
|
202
|
+
cost,
|
|
164
203
|
...responseFormat === "b64_json" ? {
|
|
165
204
|
isBase64: true,
|
|
166
205
|
format: "json"
|
|
@@ -205,31 +244,37 @@ var OpenAiImageProvider = class extends require_openai.OpenAiGenericProvider {
|
|
|
205
244
|
({data, cached, status, statusText, latencyMs} = await callOpenAiImageApi(`${this.getApiUrl()}${endpoint}`, body, headers, require_fetch.REQUEST_TIMEOUT_MS));
|
|
206
245
|
if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
|
|
207
246
|
} catch (err) {
|
|
208
|
-
require_logger.
|
|
247
|
+
require_logger.logger.error(`API call error: ${String(err)}`);
|
|
209
248
|
await data?.deleteFromCache?.();
|
|
210
249
|
return { error: `API call error: ${String(err)}` };
|
|
211
250
|
}
|
|
212
|
-
return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1);
|
|
251
|
+
return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1, "output_format" in config ? config.output_format : void 0);
|
|
213
252
|
}
|
|
214
253
|
};
|
|
215
|
-
|
|
216
254
|
//#endregion
|
|
217
|
-
Object.defineProperty(exports,
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
255
|
+
Object.defineProperty(exports, "OpenAiImageProvider", {
|
|
256
|
+
enumerable: true,
|
|
257
|
+
get: function() {
|
|
258
|
+
return OpenAiImageProvider;
|
|
259
|
+
}
|
|
222
260
|
});
|
|
223
|
-
Object.defineProperty(exports,
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
261
|
+
Object.defineProperty(exports, "buildStructuredImageOutputs", {
|
|
262
|
+
enumerable: true,
|
|
263
|
+
get: function() {
|
|
264
|
+
return buildStructuredImageOutputs;
|
|
265
|
+
}
|
|
228
266
|
});
|
|
229
|
-
Object.defineProperty(exports,
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
267
|
+
Object.defineProperty(exports, "callOpenAiImageApi", {
|
|
268
|
+
enumerable: true,
|
|
269
|
+
get: function() {
|
|
270
|
+
return callOpenAiImageApi;
|
|
271
|
+
}
|
|
234
272
|
});
|
|
235
|
-
|
|
273
|
+
Object.defineProperty(exports, "formatOutput", {
|
|
274
|
+
enumerable: true,
|
|
275
|
+
get: function() {
|
|
276
|
+
return formatOutput;
|
|
277
|
+
}
|
|
278
|
+
});
|
|
279
|
+
|
|
280
|
+
//# sourceMappingURL=image-DTedmQPg.cjs.map
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import "./
|
|
6
|
-
import { a as fetchWithCache } from "./cache-mIszOnuz.js";
|
|
7
|
-
|
|
2
|
+
import { C as getEnvString, o as logger } from "./logger-KkObSCzq.js";
|
|
3
|
+
import { f as REQUEST_TIMEOUT_MS } from "./fetch-BMv0O527.js";
|
|
4
|
+
import "./cloud-Bc9526yV.js";
|
|
5
|
+
import { a as fetchWithCache } from "./cache-CG0SlR1d.js";
|
|
8
6
|
//#region src/providers/hyperbolic/image.ts
|
|
9
7
|
const HYPERBOLIC_IMAGE_MODELS = [
|
|
10
8
|
{
|
|
@@ -135,7 +133,7 @@ var HyperbolicImageProvider = class {
|
|
|
135
133
|
}, REQUEST_TIMEOUT_MS));
|
|
136
134
|
if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
|
|
137
135
|
} catch (err) {
|
|
138
|
-
|
|
136
|
+
logger.error(`API call error: ${String(err)}`);
|
|
139
137
|
return { error: `API call error: ${String(err)}` };
|
|
140
138
|
}
|
|
141
139
|
if (data.error) return { error: typeof data.error === "string" ? data.error : JSON.stringify(data.error) };
|
|
@@ -161,7 +159,7 @@ var HyperbolicImageProvider = class {
|
|
|
161
159
|
function createHyperbolicImageProvider(providerPath, options = {}) {
|
|
162
160
|
return new HyperbolicImageProvider(providerPath.split(":").slice(2).join(":") || "SDXL1.0-base", options);
|
|
163
161
|
}
|
|
164
|
-
|
|
165
162
|
//#endregion
|
|
166
163
|
export { createHyperbolicImageProvider };
|
|
167
|
-
|
|
164
|
+
|
|
165
|
+
//# sourceMappingURL=image-gvmivTEe.js.map
|