promptfoo 0.120.27 → 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.
Files changed (352) hide show
  1. package/README.md +1 -1
  2. package/dist/src/{ListApp-8WOe2nT6.js → ListApp-Du7YVwj5.js} +2 -4
  3. package/dist/src/accounts-BgNJDBE6.js +206 -0
  4. package/dist/src/{accounts-Fl2J3_Fu.cjs → accounts-Bx-x3bmW.cjs} +77 -78
  5. package/dist/src/{accounts-DVINui-2.js → accounts-CMqkzrVf.js} +39 -34
  6. package/dist/src/{accounts-CPDRAMND.js → accounts-xrUGFA6n.js} +38 -33
  7. package/dist/src/{agentic-utils-D922n6mm.js → agentic-utils-BKIN5PKu.js} +9 -10
  8. package/dist/src/{agents-BO2n8Z0d.cjs → agents-B0f4HICh.cjs} +37 -40
  9. package/dist/src/{agents-BXLmVsxR.js → agents-C-dDThPK.js} +37 -37
  10. package/dist/src/{agents-DgJf2-ez.cjs → agents-CErsqg5U.cjs} +16 -17
  11. package/dist/src/{agents-BcsN_BgB.js → agents-CVIn-Utx.js} +16 -12
  12. package/dist/src/{agents-hqgSV-3o.js → agents-CXknwsFX.js} +37 -40
  13. package/dist/src/{agents-pMfppv9Z.js → agents-DeH4Gu94.js} +18 -18
  14. package/dist/src/{agents-BdUTAwi-.js → agents-Dy2YpZpa.js} +38 -41
  15. package/dist/src/{agents-DNvSH78i.js → agents-aF4-T121.js} +16 -20
  16. package/dist/src/{aimlapi-DOib86oE.js → aimlapi-BAGZDo5G.js} +16 -18
  17. package/dist/src/{aimlapi-DtgPI0nE.js → aimlapi-BNfTBexL.js} +15 -17
  18. package/dist/src/{aimlapi-DTPACCB1.js → aimlapi-DHRKlBEA.js} +15 -4
  19. package/dist/src/{aimlapi-BE_Tg9Fl.cjs → aimlapi-tg0Gkcvr.cjs} +15 -16
  20. package/dist/src/app/assets/index-BFCZg7hQ.js +439 -0
  21. package/dist/src/app/index.html +1 -1
  22. package/dist/src/{audio-BRYU0BFo.js → audio-BRODU0UK.js} +7 -9
  23. package/dist/src/{audio-Cwo68yZS.cjs → audio-BWeaWovU.cjs} +6 -7
  24. package/dist/src/{audio-BnRUGAm_.js → audio-CHQ4r-RV.js} +6 -5
  25. package/dist/src/{audio-MSRki4JU.js → audio-tf_NBjlC.js} +6 -8
  26. package/dist/src/{base-h961VXYk.js → base-B0tcrnq_.js} +11 -13
  27. package/dist/src/{base-XB2tDJrB.js → base-B4QJRyFS.js} +11 -13
  28. package/dist/src/{base-pGVmXNl4.cjs → base-DBtwl2FR.cjs} +36 -38
  29. package/dist/src/base-fEDN28WM.js +193 -0
  30. package/dist/src/{blobs-BM_e6hCa.js → blobs-BAU-dXan.js} +9 -12
  31. package/dist/src/{blobs-CR5C4Ihh.js → blobs-Bpg5rH6i.js} +9 -12
  32. package/dist/src/{blobs-B-KQAFhX.cjs → blobs-DvS-O6be.cjs} +34 -37
  33. package/dist/src/blobs-qTYm-1PY.js +236 -0
  34. package/dist/src/{cache-CIpsoBZR.js → cache-8XhNqPKW.js} +64 -67
  35. package/dist/src/cache-Bbn1Nyrd.cjs +5 -0
  36. package/dist/src/cache-BwsMSda7.js +6 -0
  37. package/dist/src/{cache-jsiwsAJv.js → cache-CG0SlR1d.js} +64 -66
  38. package/dist/src/{cache-BTVYfbka.cjs → cache-COish3-W.cjs} +114 -117
  39. package/dist/src/cache-D3eqDYGU.js +739 -0
  40. package/dist/src/{chat-D31K7C4u.cjs → chat-2K608PeQ.cjs} +20 -21
  41. package/dist/src/chat-BKm79wib.js +764 -0
  42. package/dist/src/{chat-B84t99NW.js → chat-CM_kyI8B.js} +20 -9
  43. package/dist/src/{chat-BcPjZXIp.js → chat-CRWNNq73.js} +41 -44
  44. package/dist/src/{chat-CcUCysjU.js → chat-CznLWr_D.js} +41 -44
  45. package/dist/src/{chat-DwWifjxi.js → chat-DHMH-N64.js} +20 -22
  46. package/dist/src/{chat-BE44YOc6.cjs → chat-DaqekjFr.cjs} +61 -64
  47. package/dist/src/{chat-DZM2GUHO.js → chat-DxysjBvt.js} +21 -23
  48. package/dist/src/{chatkit-D67HS_0b.js → chatkit-65VXf5SR.js} +58 -58
  49. package/dist/src/{chatkit-DAB_qfzI.js → chatkit-Be-Q-a9F.js} +58 -60
  50. package/dist/src/{chatkit-Biqb_wsD.js → chatkit-BxFvW8KY.js} +58 -60
  51. package/dist/src/{chatkit-PGG4ZYIn.cjs → chatkit-DKyPi1Gs.cjs} +58 -60
  52. package/dist/src/chunk-DEq-mXcV.js +15 -0
  53. package/dist/src/chunk-DRamLcfz.js +16 -0
  54. package/dist/src/{claude-agent-sdk-SVM6AdBu.js → claude-agent-sdk-BLTu0WBO.js} +31 -31
  55. package/dist/src/{claude-agent-sdk-C9SiaQub.cjs → claude-agent-sdk-CJH22shf.cjs} +31 -28
  56. package/dist/src/{claude-agent-sdk-C-IOTPfo.js → claude-agent-sdk-D6_k9FKA.js} +31 -29
  57. package/dist/src/{claude-agent-sdk-CiluSyW1.js → claude-agent-sdk-Dy5lT-Tx.js} +33 -20
  58. package/dist/src/{cloud-CZ-q9Ier.js → cloud-Bc9526yV.js} +7 -9
  59. package/dist/src/cloud-DmE0EwsY.js +4 -0
  60. package/dist/src/{cloudflare-ai-BahKHyhh.js → cloudflare-ai-C9r2sRhw.js} +16 -18
  61. package/dist/src/{cloudflare-ai-Dxyt50Nl.js → cloudflare-ai-CWWJCRim.js} +16 -4
  62. package/dist/src/{cloudflare-ai-Dfahv5SY.cjs → cloudflare-ai-ClWSdor4.cjs} +16 -17
  63. package/dist/src/{cloudflare-ai-v_qZD6_q.js → cloudflare-ai-ICsOuD-z.js} +17 -19
  64. package/dist/src/{cloudflare-gateway-BPWoZIzJ.cjs → cloudflare-gateway-C2_-KG5o.cjs} +21 -22
  65. package/dist/src/{cloudflare-gateway-Bi_FpOFy.js → cloudflare-gateway-D6O7AlYb.js} +23 -23
  66. package/dist/src/{cloudflare-gateway-btS7h1OZ.js → cloudflare-gateway-D6xFc5pa.js} +21 -25
  67. package/dist/src/{cloudflare-gateway-C0guUNwk.js → cloudflare-gateway-pXGHxJ47.js} +26 -14
  68. package/dist/src/{codex-sdk-DSxAnbfT.js → codex-sdk-C6UMlxwV.js} +28 -29
  69. package/dist/src/{codex-sdk-IYVi9fuM.js → codex-sdk-DUwKWezN.js} +28 -27
  70. package/dist/src/{codex-sdk-DulY0ZRq.js → codex-sdk-GGAw0qbD.js} +28 -29
  71. package/dist/src/{codex-sdk-DFKMtAyf.cjs → codex-sdk-fAO0c3yA.cjs} +28 -29
  72. package/dist/src/{cometapi-DkNBMk0G.js → cometapi-BasUi7-_.js} +17 -19
  73. package/dist/src/{cometapi-DzrR3SR_.js → cometapi-Bbjp5V4x.js} +16 -4
  74. package/dist/src/{cometapi-C9EEpJzT.js → cometapi-DkXrKi5z.js} +21 -24
  75. package/dist/src/{cometapi-DIO64tf4.cjs → cometapi-vY6aDZgo.cjs} +21 -22
  76. package/dist/src/{completion-CG29bfKX.js → completion-6Mx_iXxK.js} +11 -13
  77. package/dist/src/{completion-Bgf1VJoq.js → completion-C5rtR_9P.js} +11 -13
  78. package/dist/src/{completion-CCRT4kX1.cjs → completion-CDOouNzq.cjs} +21 -23
  79. package/dist/src/completion-C_P3ypkJ.js +120 -0
  80. package/dist/src/{createHash-Dw_iLu31.js → createHash-CTQmL3G2.js} +2 -3
  81. package/dist/src/{createHash-CYQy4YeL.cjs → createHash-CfZSc0b4.cjs} +13 -14
  82. package/dist/src/{createHash-CJcfskIZ.js → createHash-Da8fMwqB.js} +2 -3
  83. package/dist/src/createHash-DmPQkvBh.js +15 -0
  84. package/dist/src/{docker-D-ayp2FW.js → docker-5KcG-_86.js} +18 -20
  85. package/dist/src/{docker-DNcLR4Ig.cjs → docker-BwsKwxFs.cjs} +18 -19
  86. package/dist/src/{docker-egERKxCF.js → docker-CZnqU1XV.js} +18 -7
  87. package/dist/src/{docker-B81N0t4e.js → docker-DzxyDPIj.js} +19 -21
  88. package/dist/src/entrypoint.js +2 -3
  89. package/dist/src/{errors-DnGCbnx8.js → errors-P6ll7XSJ.js} +2 -2
  90. package/dist/src/{esm-B9dPm_BF.js → esm-C03C-mv3.js} +17 -20
  91. package/dist/src/{esm-D2pZ87fL.js → esm-CaIwzWR5.js} +18 -21
  92. package/dist/src/esm-Cd1AjG1D.js +379 -0
  93. package/dist/src/{esm-Ct-Joyue.cjs → esm-CnNt7sI4.cjs} +47 -49
  94. package/dist/src/eval-17JizQIv.js +15 -0
  95. package/dist/src/{eval-C-Nr6wX_.js → eval-DmFyWU7i.js} +47 -54
  96. package/dist/src/{evalResult-4BzI2tmj.js → evalResult-CDQiuUuf.js} +16 -12
  97. package/dist/src/{evalResult-DXMWJ3sx.js → evalResult-CTG2AHOS.js} +10 -11
  98. package/dist/src/evalResult-Cqj8pldJ.js +12 -0
  99. package/dist/src/{evalResult-CX8wQecI.cjs → evalResult-Dap2CekP.cjs} +20 -21
  100. package/dist/src/evalResult-DvcJAWJU.cjs +10 -0
  101. package/dist/src/evalResult-Hftn-S_i.js +10 -0
  102. package/dist/src/evaluator-B2CFNt-P.js +36 -0
  103. package/dist/src/{evaluator-8aGyV12L.js → evaluator-DPFRbFIL.js} +201 -229
  104. package/dist/src/{extractor-CD5yKL-G.js → extractor-CFG6bcWJ.js} +22 -24
  105. package/dist/src/{extractor-C031XmTA.cjs → extractor-DX36oYEv.cjs} +37 -39
  106. package/dist/src/{extractor-V5x_m1i0.js → extractor-M67RUtg6.js} +22 -24
  107. package/dist/src/extractor-YMU_Gvt8.js +374 -0
  108. package/dist/src/{fetch-D3OHf-lV.js → fetch-4M3YRaqL.js} +40 -45
  109. package/dist/src/fetch-60Gzydls.js +777 -0
  110. package/dist/src/{fetch-CXZI9RRr.js → fetch-BMv0O527.js} +23 -35
  111. package/dist/src/{fetch-BmbD-v1L.cjs → fetch-BxUk8odA.cjs} +244 -277
  112. package/dist/src/fetch-KV5kNASw.js +5 -0
  113. package/dist/src/{fileExtensions-ePDqouxn.js → fileExtensions-DnqA1y9x.js} +2 -2
  114. package/dist/src/{fileExtensions-BpuMmaFL.js → fileExtensions-Ds-foDzt.js} +2 -2
  115. package/dist/src/fileExtensions-LcDYkU4v.js +85 -0
  116. package/dist/src/{fileExtensions-DkJYkWUy.cjs → fileExtensions-bYh77CN8.cjs} +27 -28
  117. package/dist/src/{formatDuration-CdevI3An.js → formatDuration-DgBVMN65.js} +2 -2
  118. package/dist/src/{genaiTracer-Ce19n68P.js → genaiTracer-70Z8BIuV.js} +2 -3
  119. package/dist/src/{genaiTracer-CqNnnXrE.js → genaiTracer-C1rxGO8Q.js} +2 -3
  120. package/dist/src/genaiTracer-D3fD9dNV.js +256 -0
  121. package/dist/src/{genaiTracer-Dres3qrN.cjs → genaiTracer-DN4dQywX.cjs} +13 -14
  122. package/dist/src/graders-Bu0H9nXi.js +32 -0
  123. package/dist/src/{graders-DTeBrzWp.js → graders-CHO8EPM4.js} +349 -397
  124. package/dist/src/graders-Cfhkvx-e.js +34 -0
  125. package/dist/src/{graders--1y2u9HO.js → graders-CpdqD9PI.js} +349 -397
  126. package/dist/src/graders-DClJVpGP.cjs +32 -0
  127. package/dist/src/{graders-DohM2dir.cjs → graders-DOXycdlG.cjs} +684 -732
  128. package/dist/src/graders-DcnJsrMO.js +32 -0
  129. package/dist/src/graders-R9rYUM0d.js +13466 -0
  130. package/dist/src/{image-C3wHC9_h.js → image-BmEZqVmk.js} +9 -10
  131. package/dist/src/{image-O1u4bCFg.js → image-CBBVXWuT.js} +9 -10
  132. package/dist/src/{image-DpKl2F15.cjs → image-CDLQOcqT.cjs} +6 -7
  133. package/dist/src/{image-DmE-niFE.js → image-DJEvKveK.js} +6 -5
  134. package/dist/src/{image-CuKHuccK.cjs → image-DTedmQPg.cjs} +29 -30
  135. package/dist/src/{image-B0U4Hqll.js → image-gvmivTEe.js} +7 -9
  136. package/dist/src/image-pAX56tPG.js +257 -0
  137. package/dist/src/{image-DNEIf_aI.js → image-tL5hIOFh.js} +6 -8
  138. package/dist/src/index.cjs +605 -689
  139. package/dist/src/index.d.cts +11 -7
  140. package/dist/src/index.d.ts +11 -3
  141. package/dist/src/index.js +570 -658
  142. package/dist/src/{interactiveCheck-Bxj1Swex.js → interactiveCheck-BgLZUIt3.js} +7 -8
  143. package/dist/src/{invariant-DT20jrBd.js → invariant-BtWWVVhl.js} +2 -2
  144. package/dist/src/{invariant-1pAf2CD1.js → invariant-Ddh24eXh.js} +2 -2
  145. package/dist/src/{invariant-CKcJAQ6M.cjs → invariant-kfQ8Bu82.cjs} +7 -8
  146. package/dist/src/invariant-vgHWClmd.js +25 -0
  147. package/dist/src/{knowledgeBase-Be_zyW4L.js → knowledgeBase-CLJybhnF.js} +16 -16
  148. package/dist/src/{knowledgeBase-CEzQobWX.js → knowledgeBase-CoU-UQBg.js} +14 -9
  149. package/dist/src/{knowledgeBase-BZ41IFwq.js → knowledgeBase-DjWPVqSb.js} +14 -18
  150. package/dist/src/{knowledgeBase-D-5BMXlr.cjs → knowledgeBase-wkxuRFhA.cjs} +14 -15
  151. package/dist/src/{litellm-DnbRJ2if.js → litellm-B9Hysuri.js} +16 -18
  152. package/dist/src/{litellm-CRDqPhNI.js → litellm-CTfa0hqi.js} +15 -17
  153. package/dist/src/{litellm-hUSNM_M2.cjs → litellm-NYpQ8RQu.cjs} +15 -16
  154. package/dist/src/{litellm-9vR8zpfU.js → litellm-ePxtr9F1.js} +15 -4
  155. package/dist/src/{logger-CG1uZPbQ.js → logger-CT3IKMKA.js} +10 -29
  156. package/dist/src/{logger-B7sBeGa0.cjs → logger-Cp1GPUjj.cjs} +152 -180
  157. package/dist/src/logger-DLcq4dWf.js +713 -0
  158. package/dist/src/{logger-LSBxlt7a.js → logger-KkObSCzq.js} +13 -31
  159. package/dist/src/{luma-ray-Hm3d6VJE.cjs → luma-ray-B0GGNRc1.cjs} +20 -21
  160. package/dist/src/{luma-ray-drvgdpP9.js → luma-ray-BE2mOt6N.js} +20 -13
  161. package/dist/src/{luma-ray-4blv9iZ2.js → luma-ray-BW9IRGIc.js} +22 -21
  162. package/dist/src/{luma-ray-B2__8lYH.js → luma-ray-Cm1KZBhs.js} +20 -23
  163. package/dist/src/main.js +1170 -1321
  164. package/dist/src/{messages-XhiwCbi4.cjs → messages-1JrJs91T.cjs} +32 -34
  165. package/dist/src/{messages-CGPPidQr.js → messages-1x9atZmP.js} +22 -24
  166. package/dist/src/{messages-Uee41Mj5.js → messages-BLbWdsyt.js} +22 -24
  167. package/dist/src/messages-D8EA0oDc.js +240 -0
  168. package/dist/src/{meteor-BYykdXrV.js → meteor-44VjEACX.js} +3 -4
  169. package/dist/src/{meteor-CsopaHrH.js → meteor-D-SotUw9.js} +3 -4
  170. package/dist/src/{meteor-e-E-2vVl.cjs → meteor-DLZZ3osF.cjs} +3 -4
  171. package/dist/src/{meteor-C8lGP6P4.js → meteor-DUiCJRC-.js} +3 -4
  172. package/dist/src/{modelslab-yKz-ZNB4.js → modelslab-C1OLRmVX.js} +17 -10
  173. package/dist/src/{modelslab-E9gO-bYd.js → modelslab-CqXBy3U8.js} +18 -20
  174. package/dist/src/{modelslab-lUVW0cmB.cjs → modelslab-DcOSFwKh.cjs} +17 -18
  175. package/dist/src/{modelslab-ClBkr8_9.js → modelslab-X5-4LroM.js} +17 -19
  176. package/dist/src/{nova-reel-Dk8jNpId.js → nova-reel-BgS1ZWuK.js} +20 -13
  177. package/dist/src/{nova-reel-u2eF2Cxm.js → nova-reel-D2ZkOSyr.js} +22 -21
  178. package/dist/src/{nova-reel-D8CuO6QH.cjs → nova-reel-D9xfaMBs.cjs} +20 -21
  179. package/dist/src/{nova-reel-P9bwvtYX.js → nova-reel-DihqLeol.js} +20 -23
  180. package/dist/src/{nova-sonic-Ds1C-dpm.cjs → nova-sonic-DVu3mMIy.cjs} +30 -31
  181. package/dist/src/{nova-sonic-CK2rAiKi.js → nova-sonic-DezhVUYT.js} +30 -26
  182. package/dist/src/{nova-sonic-BaqWlkds.js → nova-sonic-P-CdUMlV.js} +30 -31
  183. package/dist/src/{nova-sonic-yZapPLv7.js → nova-sonic-Q3BOJeig.js} +31 -32
  184. package/dist/src/{openai-DUFopMrH.cjs → openai-Cuif0GEt.cjs} +8 -9
  185. package/dist/src/{openai-PblZ3jUE.js → openai-DElQ-fPX.js} +3 -4
  186. package/dist/src/{openai-CcN1B8Sb.js → openai-DhbB7eWK.js} +3 -4
  187. package/dist/src/openai-j-sE2O7r.js +44 -0
  188. package/dist/src/{openclaw-A-3_loM7.js → openclaw-BiSZPL7J.js} +20 -14
  189. package/dist/src/{openclaw-COn6QzDi.js → openclaw-Bv1DINsX.js} +20 -27
  190. package/dist/src/{openclaw-a3lylB-V.js → openclaw-D1D_ej1z.js} +21 -28
  191. package/dist/src/{openclaw-B6qqDr_u.cjs → openclaw-DAfWQn-o.cjs} +33 -39
  192. package/dist/src/opencode-sdk-C7m-wRfI.js +560 -0
  193. package/dist/src/opencode-sdk-CfaLN8PY.cjs +564 -0
  194. package/dist/src/opencode-sdk-D95s6SnR.js +562 -0
  195. package/dist/src/opencode-sdk-DxUPkLT7.js +560 -0
  196. package/dist/src/{otlpReceiver-oyf5wLGC.js → otlpReceiver--AIRW_S4.js} +53 -51
  197. package/dist/src/{otlpReceiver-BmmTiMjA.js → otlpReceiver-Bn5wGB1v.js} +53 -55
  198. package/dist/src/{otlpReceiver-lXsYVbpj.cjs → otlpReceiver-Diec4cln.cjs} +53 -55
  199. package/dist/src/{otlpReceiver-94URx7UW.js → otlpReceiver-g3ByGaXs.js} +53 -55
  200. package/dist/src/{providerRegistry-Cq_JK_CJ.js → providerRegistry-B0RUOLI_.js} +7 -8
  201. package/dist/src/{providerRegistry-DSSHjMKf.js → providerRegistry-CD8MEar9.js} +7 -8
  202. package/dist/src/{providerRegistry-CvHEVJad.cjs → providerRegistry-Civky8Ar.cjs} +12 -13
  203. package/dist/src/providerRegistry-DM8rZYol.js +45 -0
  204. package/dist/src/providers-B3HvufyI.js +33246 -0
  205. package/dist/src/{providers-BnFpbY_s.js → providers-BKRJTjBz.js} +1536 -1669
  206. package/dist/src/providers-C1rOSHiR.js +32 -0
  207. package/dist/src/{providers-Iil64vk9.js → providers-CFLy1_ji.js} +1543 -1676
  208. package/dist/src/{providers-DHbjzW2e.cjs → providers-CFu-TZl-.cjs} +1896 -2029
  209. package/dist/src/providers-CxmDwEFf.cjs +31 -0
  210. package/dist/src/providers-Dodakqr0.js +30 -0
  211. package/dist/src/providers-GIQ2TcsA.js +30 -0
  212. package/dist/src/{pythonUtils-CcT5LH1M.js → pythonUtils-C3py6GC1.js} +18 -19
  213. package/dist/src/{pythonUtils-DBbuI3QJ.cjs → pythonUtils-CTU3Y3lw.cjs} +42 -43
  214. package/dist/src/{pythonUtils-hZ8LeQLv.js → pythonUtils-D5nxkQ0P.js} +18 -19
  215. package/dist/src/pythonUtils-D6fwaDSg.js +249 -0
  216. package/dist/src/{quiverai-BuI0tE39.js → quiverai-C2jVwbH1.js} +8 -7
  217. package/dist/src/{quiverai-DCGSZt4U.js → quiverai-CI6gYJVI.js} +8 -10
  218. package/dist/src/{quiverai-DiMVJQDz.cjs → quiverai-CLkWkyZc.cjs} +8 -9
  219. package/dist/src/{quiverai-fQNkExW4.js → quiverai-MHSxbmmZ.js} +9 -11
  220. package/dist/src/{render-Dj1smHEb.js → render-Drod8m7K.js} +4 -5
  221. package/dist/src/{responses-DOAFFENS.js → responses-BKqJmhhc.js} +22 -25
  222. package/dist/src/{responses-CxzoQoBe.js → responses-CGw0DCzh.js} +22 -25
  223. package/dist/src/responses-jxdehPkC.js +660 -0
  224. package/dist/src/{responses-ghR3IOfy.cjs → responses-tD4Bd4dc.cjs} +37 -40
  225. package/dist/src/rubyUtils-BUHu6PhO.js +5 -0
  226. package/dist/src/{rubyUtils-CwbGmgYN.js → rubyUtils-BUVePouc.js} +27 -20
  227. package/dist/src/rubyUtils-BcuGX77l.js +222 -0
  228. package/dist/src/{rubyUtils-DudlFZed.js → rubyUtils-Boc4HZzX.js} +18 -19
  229. package/dist/src/rubyUtils-CP42kMvq.cjs +4 -0
  230. package/dist/src/{rubyUtils-C8MhKGHb.cjs → rubyUtils-DhCAlxZr.cjs} +48 -50
  231. package/dist/src/{sagemaker-gmskuyre.js → sagemaker-BK4Zb993.js} +75 -70
  232. package/dist/src/{sagemaker-DuM71dVU.js → sagemaker-BfiWTmvn.js} +77 -77
  233. package/dist/src/{sagemaker-77zbJ2Q2.cjs → sagemaker-CcQHM1jV.cjs} +75 -76
  234. package/dist/src/{sagemaker-CcxhlOAR.js → sagemaker-D2Q1c-sD.js} +75 -79
  235. package/dist/src/{scanner-DJYiSXQj.js → scanner-J8CA3LsV.js} +100 -121
  236. package/dist/src/server/index.js +5505 -67416
  237. package/dist/src/{server-B5v33lvE.cjs → server-B0PPuDw-.cjs} +57 -67
  238. package/dist/src/server-B1vi21hA.js +7 -0
  239. package/dist/src/{server-RV_i_YX5.js → server-BC7XJFgr.js} +19 -24
  240. package/dist/src/server-Cm9Kai_h.cjs +5 -0
  241. package/dist/src/{server-BJ4m4f1D.js → server-DbFphssR.js} +26 -29
  242. package/dist/src/server-OAs3nBRT.js +229 -0
  243. package/dist/src/{signal-BW33JuId.js → signal-BOTbd53Z.js} +9 -11
  244. package/dist/src/{slack-DEURelTy.cjs → slack-BmVAVGaK.cjs} +7 -8
  245. package/dist/src/{slack-BQYeW9L3.js → slack-DCUPTzS2.js} +8 -8
  246. package/dist/src/{slack-BB6yuZzp.js → slack-DOdy_kyv.js} +7 -8
  247. package/dist/src/{slack-2pRrhhgJ.js → slack-DXMKtA-f.js} +7 -9
  248. package/dist/src/store-BNmZ1KAz.cjs +5 -0
  249. package/dist/src/{store-D7CgQzAR.cjs → store-BSc-TF2w.cjs} +44 -45
  250. package/dist/src/store-BltJg2cd.js +6 -0
  251. package/dist/src/{store-s3SftUwF.js → store-D1tv90v3.js} +34 -35
  252. package/dist/src/{store-DJNsD1iC.js → store-DQLEjuEO.js} +40 -36
  253. package/dist/src/store-Ub2vaGJ1.js +228 -0
  254. package/dist/src/{tables-DfTsNN7X.js → tables-5EvT_Bwn.js} +19 -21
  255. package/dist/src/{tables-BKTmd6u7.cjs → tables-C7K-XKWp.cjs} +89 -91
  256. package/dist/src/{tables-DMegD0Xf.js → tables-D36WTqKX.js} +21 -23
  257. package/dist/src/tables-xKANLRBD.js +288 -0
  258. package/dist/src/telemetry-5BCRNBbe.cjs +5 -0
  259. package/dist/src/{telemetry-BedSm-bZ.js → telemetry-C15ziL8u.js} +17 -14
  260. package/dist/src/{telemetry--WAdAfVi.js → telemetry-C2YDkUQH.js} +11 -13
  261. package/dist/src/{telemetry-DQgVBCAb.cjs → telemetry-CbrnxHp_.cjs} +21 -24
  262. package/dist/src/telemetry-D4W5hboe.js +7 -0
  263. package/dist/src/telemetry-DMb2Mpfm.js +171 -0
  264. package/dist/src/{text-oiSbwSOI.js → text-B_UCRPp2.js} +2 -2
  265. package/dist/src/{text-oKzCBnK6.cjs → text-CW1cyrwj.cjs} +12 -13
  266. package/dist/src/{text-B_IrO4GZ.js → text-Db-Wt2u2.js} +2 -2
  267. package/dist/src/text-TIv0QYnd.js +22 -0
  268. package/dist/src/{tokenUsageUtils-FZd5O_4A.js → tokenUsageUtils-BDGe-iyI.js} +2 -2
  269. package/dist/src/{tokenUsageUtils-DmZSD2eU.js → tokenUsageUtils-DflFMjS0.js} +2 -2
  270. package/dist/src/tokenUsageUtils-NYT-WKS6.js +138 -0
  271. package/dist/src/{tokenUsageUtils-CXhxVj72.cjs → tokenUsageUtils-bVa1ga6f.cjs} +32 -33
  272. package/dist/src/{transcription-BO1AHegO.cjs → transcription-CL78qbOU.cjs} +14 -15
  273. package/dist/src/{transcription-mYS9vd5v.js → transcription-DAtxHhAM.js} +14 -7
  274. package/dist/src/{transcription-X2-B4vkX.js → transcription-LNZTNUUL.js} +14 -16
  275. package/dist/src/{transcription-lzBLiTFJ.js → transcription-QHh3AH6Z.js} +15 -17
  276. package/dist/src/{transform-DeGlxb0D.js → transform-Cgi24fJ7.js} +39 -47
  277. package/dist/src/{transform-B1Hi5lWS.cjs → transform-CzK1Q0zl.cjs} +24 -26
  278. package/dist/src/{transform-CYDILYDe.js → transform-DECvGmzp.js} +15 -13
  279. package/dist/src/{transform-Dfl89yi4.js → transform-DGLazrMm.js} +39 -47
  280. package/dist/src/transform-DGxXocjk.js +1506 -0
  281. package/dist/src/{transform-D5PjiWiZ.cjs → transform-DOcQeLld.cjs} +179 -187
  282. package/dist/src/transform-DTGDnAzW.js +6 -0
  283. package/dist/src/{transform-BEgStbHK.js → transform-DilY9wbS.js} +10 -12
  284. package/dist/src/transform-aa6tmVpZ.js +216 -0
  285. package/dist/src/transform-m3qNw4KP.cjs +5 -0
  286. package/dist/src/{transformersAvailability-SZnTS3pJ.js → transformersAvailability-CEVM2GNQ.js} +2 -2
  287. package/dist/src/{transformersAvailability-D-glmEy7.cjs → transformersAvailability-CwayUSlh.cjs} +2 -3
  288. package/dist/src/{transformersAvailability-CjeFXhuJ.js → transformersAvailability-D6c6ROpT.js} +2 -2
  289. package/dist/src/{types-CXQduE9o.js → types-CH3Ge2sE.js} +30 -90
  290. package/dist/src/{types-C5hEkb-x.js → types-CLKiCBW3.js} +25 -89
  291. package/dist/src/types-CN_TZ2GJ.js +3260 -0
  292. package/dist/src/{types-DWNf48sT.cjs → types-LJ0r3wbR.cjs} +500 -564
  293. package/dist/src/util-5cB-L7U3.js +1430 -0
  294. package/dist/src/util-6-GqIvzS.js +599 -0
  295. package/dist/src/{util-CoQjmE3u.js → util-B7T3SiBS.js} +4 -5
  296. package/dist/src/{util-D9eLdGfa.js → util-Betm42rL.js} +5 -6
  297. package/dist/src/{util-Bm_-UMD_.js → util-C-PPYSMq.js} +5 -6
  298. package/dist/src/{util-CyUdMzV0.cjs → util-CchiqXh_.cjs} +34 -35
  299. package/dist/src/{util-Du96oyYS.js → util-DaWTWKBK.js} +4 -5
  300. package/dist/src/{util-1wWM599Z.cjs → util-Db0a0AFH.cjs} +50 -51
  301. package/dist/src/{util-DQ984syk.js → util-Dlz_Wvgm.js} +37 -48
  302. package/dist/src/{util-_h4pVqrz.js → util-YT5HPZaS.js} +37 -48
  303. package/dist/src/{util-aLhtl3fe.cjs → util-Yz-1aEhW.cjs} +209 -220
  304. package/dist/src/util-ZZH-3QZz.js +293 -0
  305. package/dist/src/{utils-BjLy-Q72.cjs → utils-Cz9qXqII.cjs} +29 -32
  306. package/dist/src/{utils-CFMn2yHW.js → utils-XiOAgly5.js} +4 -7
  307. package/dist/src/utils-dLokC-eR.js +94 -0
  308. package/dist/src/{utils-DvWMzuMx.js → utils-f2-Moju7.js} +4 -7
  309. package/dist/tsconfig.tsbuildinfo +1 -1
  310. package/package.json +30 -30
  311. package/dist/src/app/assets/index-B2D0bCSI.js +0 -439
  312. package/dist/src/app/tsconfig.app.tsbuildinfo +0 -1
  313. package/dist/src/cache-ChPcurj7.js +0 -6
  314. package/dist/src/cache-VVu_W-yg.js +0 -8
  315. package/dist/src/cache-YLNCFEM2.cjs +0 -6
  316. package/dist/src/chunk-DHDDz29n.js +0 -22
  317. package/dist/src/chunk-FhC4c-0y.js +0 -21
  318. package/dist/src/cloud-BndfXy4H.js +0 -5
  319. package/dist/src/eval-BhHvMY82.js +0 -17
  320. package/dist/src/evalResult-Dq2gFNQY.js +0 -12
  321. package/dist/src/evalResult-nmcP5VKH.cjs +0 -12
  322. package/dist/src/evalResult-trqZjVYh.js +0 -14
  323. package/dist/src/evaluator-CnfPstzT.js +0 -39
  324. package/dist/src/fetch-IDPDue6F.cjs +0 -4
  325. package/dist/src/fetch-hKJ-It8q.js +0 -6
  326. package/dist/src/fetch-ouKnrWK-.js +0 -4
  327. package/dist/src/graders-CQn7WUsd.cjs +0 -34
  328. package/dist/src/graders-DC6QAbpW.js +0 -35
  329. package/dist/src/graders-DUWz3Y7j.js +0 -37
  330. package/dist/src/opencode-sdk-4bL9n-Gk.js +0 -382
  331. package/dist/src/opencode-sdk-BfC2zWcR.js +0 -376
  332. package/dist/src/opencode-sdk-DMJyuwMg.js +0 -380
  333. package/dist/src/opencode-sdk-Da-9adza.cjs +0 -383
  334. package/dist/src/providers-CsXB2Ix-.js +0 -35
  335. package/dist/src/providers-DO8ltjLC.js +0 -33
  336. package/dist/src/providers-Dtq-xnXd.cjs +0 -33
  337. package/dist/src/rubyUtils-BUbcND2f.js +0 -6
  338. package/dist/src/rubyUtils-Cr55X_KE.js +0 -5
  339. package/dist/src/rubyUtils-DlIiqoYo.cjs +0 -5
  340. package/dist/src/server-C2eQH4Gu.js +0 -6
  341. package/dist/src/server-CXWycu7H.cjs +0 -6
  342. package/dist/src/server-Q6OGlxxT.js +0 -8
  343. package/dist/src/store-B3EDO9Q3.js +0 -7
  344. package/dist/src/store-Dl9F8aw5.js +0 -6
  345. package/dist/src/store-SnrGrlt9.cjs +0 -6
  346. package/dist/src/telemetry-BGhiPZtl.js +0 -8
  347. package/dist/src/telemetry-CFfiYan6.cjs +0 -6
  348. package/dist/src/telemetry-DHzEduxX.js +0 -6
  349. package/dist/src/transform-C1x1ZlMQ.cjs +0 -6
  350. package/dist/src/transform-DYHjFmQu.js +0 -8
  351. package/dist/src/transform-rmwJT5JQ.js +0 -7
  352. package/dist/src/transformersAvailability-eJooj0gX.js +0 -35
@@ -1,10 +1,9 @@
1
- import { i as logger_default } from "./logger-CG1uZPbQ.js";
2
- import { h as REQUEST_TIMEOUT_MS } from "./fetch-D3OHf-lV.js";
3
- import { a as fetchWithCache } from "./cache-CIpsoBZR.js";
4
- import { t as OpenAiGenericProvider } from "./openai-PblZ3jUE.js";
5
- import { s as formatOpenAiError } from "./util-D9eLdGfa.js";
6
- import { t as ellipsize } from "./text-oiSbwSOI.js";
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",
@@ -245,14 +244,14 @@ var OpenAiImageProvider = class extends OpenAiGenericProvider {
245
244
  ({data, cached, status, statusText, latencyMs} = await callOpenAiImageApi(`${this.getApiUrl()}${endpoint}`, body, headers, REQUEST_TIMEOUT_MS));
246
245
  if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
247
246
  } catch (err) {
248
- logger_default.error(`API call error: ${String(err)}`);
247
+ logger.error(`API call error: ${String(err)}`);
249
248
  await data?.deleteFromCache?.();
250
249
  return { error: `API call error: ${String(err)}` };
251
250
  }
252
251
  return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1, "output_format" in config ? config.output_format : void 0);
253
252
  }
254
253
  };
255
-
256
254
  //#endregion
257
255
  export { formatOutput as i, buildStructuredImageOutputs as n, callOpenAiImageApi as r, OpenAiImageProvider as t };
258
- //# sourceMappingURL=image-C3wHC9_h.js.map
256
+
257
+ //# sourceMappingURL=image-BmEZqVmk.js.map
@@ -1,11 +1,10 @@
1
1
  #!/usr/bin/env node
2
- import { o as logger_default } from "./logger-LSBxlt7a.js";
3
- import { f as REQUEST_TIMEOUT_MS } from "./fetch-CXZI9RRr.js";
4
- import { a as fetchWithCache } from "./cache-jsiwsAJv.js";
5
- import { t as OpenAiGenericProvider } from "./openai-CcN1B8Sb.js";
6
- import { s as formatOpenAiError } from "./util-Bm_-UMD_.js";
7
- import { t as ellipsize } from "./text-B_IrO4GZ.js";
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",
@@ -246,14 +245,14 @@ var OpenAiImageProvider = class extends OpenAiGenericProvider {
246
245
  ({data, cached, status, statusText, latencyMs} = await callOpenAiImageApi(`${this.getApiUrl()}${endpoint}`, body, headers, REQUEST_TIMEOUT_MS));
247
246
  if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
248
247
  } catch (err) {
249
- logger_default.error(`API call error: ${String(err)}`);
248
+ logger.error(`API call error: ${String(err)}`);
250
249
  await data?.deleteFromCache?.();
251
250
  return { error: `API call error: ${String(err)}` };
252
251
  }
253
252
  return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1, "output_format" in config ? config.output_format : void 0);
254
253
  }
255
254
  };
256
-
257
255
  //#endregion
258
256
  export { formatOutput as i, buildStructuredImageOutputs as n, callOpenAiImageApi as r, OpenAiImageProvider as t };
259
- //# sourceMappingURL=image-O1u4bCFg.js.map
257
+
258
+ //# sourceMappingURL=image-CBBVXWuT.js.map
@@ -1,7 +1,6 @@
1
- const require_logger = require('./logger-B7sBeGa0.cjs');
2
- const require_fetch = require('./fetch-BmbD-v1L.cjs');
3
- const require_cache = require('./cache-BTVYfbka.cjs');
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.logger_default.error(`API call error: ${String(err)}`);
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
- //# sourceMappingURL=image-DpKl2F15.cjs.map
162
+
163
+ //# sourceMappingURL=image-CDLQOcqT.cjs.map
@@ -1,5 +1,6 @@
1
- import { M as REQUEST_TIMEOUT_MS, P as logger_default, y as fetchWithCache, z as getEnvString } from "./server/index.js";
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
- logger_default.error(`API call error: ${String(err)}`);
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
- //# sourceMappingURL=image-DmE-niFE.js.map
162
+
163
+ //# sourceMappingURL=image-DJEvKveK.js.map
@@ -1,10 +1,9 @@
1
- const require_logger = require('./logger-B7sBeGa0.cjs');
2
- const require_fetch = require('./fetch-BmbD-v1L.cjs');
3
- const require_cache = require('./cache-BTVYfbka.cjs');
4
- const require_openai = require('./openai-DUFopMrH.cjs');
5
- const require_util = require('./util-1wWM599Z.cjs');
6
- const require_text = require('./text-oKzCBnK6.cjs');
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",
@@ -245,37 +244,37 @@ var OpenAiImageProvider = class extends require_openai.OpenAiGenericProvider {
245
244
  ({data, cached, status, statusText, latencyMs} = await callOpenAiImageApi(`${this.getApiUrl()}${endpoint}`, body, headers, require_fetch.REQUEST_TIMEOUT_MS));
246
245
  if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
247
246
  } catch (err) {
248
- require_logger.logger_default.error(`API call error: ${String(err)}`);
247
+ require_logger.logger.error(`API call error: ${String(err)}`);
249
248
  await data?.deleteFromCache?.();
250
249
  return { error: `API call error: ${String(err)}` };
251
250
  }
252
251
  return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1, "output_format" in config ? config.output_format : void 0);
253
252
  }
254
253
  };
255
-
256
254
  //#endregion
257
- Object.defineProperty(exports, 'OpenAiImageProvider', {
258
- enumerable: true,
259
- get: function () {
260
- return OpenAiImageProvider;
261
- }
255
+ Object.defineProperty(exports, "OpenAiImageProvider", {
256
+ enumerable: true,
257
+ get: function() {
258
+ return OpenAiImageProvider;
259
+ }
262
260
  });
263
- Object.defineProperty(exports, 'buildStructuredImageOutputs', {
264
- enumerable: true,
265
- get: function () {
266
- return buildStructuredImageOutputs;
267
- }
261
+ Object.defineProperty(exports, "buildStructuredImageOutputs", {
262
+ enumerable: true,
263
+ get: function() {
264
+ return buildStructuredImageOutputs;
265
+ }
268
266
  });
269
- Object.defineProperty(exports, 'callOpenAiImageApi', {
270
- enumerable: true,
271
- get: function () {
272
- return callOpenAiImageApi;
273
- }
267
+ Object.defineProperty(exports, "callOpenAiImageApi", {
268
+ enumerable: true,
269
+ get: function() {
270
+ return callOpenAiImageApi;
271
+ }
274
272
  });
275
- Object.defineProperty(exports, 'formatOutput', {
276
- enumerable: true,
277
- get: function () {
278
- return formatOutput;
279
- }
273
+ Object.defineProperty(exports, "formatOutput", {
274
+ enumerable: true,
275
+ get: function() {
276
+ return formatOutput;
277
+ }
280
278
  });
281
- //# sourceMappingURL=image-CuKHuccK.cjs.map
279
+
280
+ //# sourceMappingURL=image-DTedmQPg.cjs.map
@@ -1,10 +1,8 @@
1
1
  #!/usr/bin/env node
2
- import "./chunk-DHDDz29n.js";
3
- import { C as getEnvString, o as logger_default } from "./logger-LSBxlt7a.js";
4
- import { f as REQUEST_TIMEOUT_MS } from "./fetch-CXZI9RRr.js";
5
- import "./cloud-CZ-q9Ier.js";
6
- import { a as fetchWithCache } from "./cache-jsiwsAJv.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
- logger_default.error(`API call error: ${String(err)}`);
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
- //# sourceMappingURL=image-B0U4Hqll.js.map
164
+
165
+ //# sourceMappingURL=image-gvmivTEe.js.map
@@ -0,0 +1,257 @@
1
+ import { i as logger } from "./logger-DLcq4dWf.js";
2
+ import { p as REQUEST_TIMEOUT_MS } from "./fetch-4M3YRaqL.js";
3
+ import { r as fetchWithCache } from "./cache-D3eqDYGU.js";
4
+ import { t as OpenAiGenericProvider } from "./openai-j-sE2O7r.js";
5
+ import { s as formatOpenAiError } from "./util-6-GqIvzS.js";
6
+ import { t as ellipsize } from "./text-TIv0QYnd.js";
7
+ //#region src/providers/openai/image.ts
8
+ const DALLE2_VALID_SIZES = [
9
+ "256x256",
10
+ "512x512",
11
+ "1024x1024"
12
+ ];
13
+ const DALLE3_VALID_SIZES = [
14
+ "1024x1024",
15
+ "1792x1024",
16
+ "1024x1792"
17
+ ];
18
+ const GPT_IMAGE1_VALID_SIZES = [
19
+ "1024x1024",
20
+ "1024x1536",
21
+ "1536x1024"
22
+ ];
23
+ const DEFAULT_SIZE = "1024x1024";
24
+ const DALLE2_COSTS = {
25
+ "256x256": .016,
26
+ "512x512": .018,
27
+ "1024x1024": .02
28
+ };
29
+ const DALLE3_COSTS = {
30
+ standard_1024x1024: .04,
31
+ standard_1024x1792: .08,
32
+ standard_1792x1024: .08,
33
+ hd_1024x1024: .08,
34
+ hd_1024x1792: .12,
35
+ hd_1792x1024: .12
36
+ };
37
+ const GPT_IMAGE1_COSTS = {
38
+ low_1024x1024: .011,
39
+ low_1024x1536: .016,
40
+ low_1536x1024: .016,
41
+ medium_1024x1024: .042,
42
+ medium_1024x1536: .063,
43
+ medium_1536x1024: .063,
44
+ high_1024x1024: .167,
45
+ high_1024x1536: .25,
46
+ high_1536x1024: .25
47
+ };
48
+ const GPT_IMAGE1_MINI_COSTS = {
49
+ low_1024x1024: .005,
50
+ low_1024x1536: .006,
51
+ low_1536x1024: .006,
52
+ medium_1024x1024: .011,
53
+ medium_1024x1536: .015,
54
+ medium_1536x1024: .015,
55
+ high_1024x1024: .036,
56
+ high_1024x1536: .052,
57
+ high_1536x1024: .052
58
+ };
59
+ const GPT_IMAGE1_5_COSTS = {
60
+ low_1024x1024: .064,
61
+ low_1024x1536: .096,
62
+ low_1536x1024: .096,
63
+ medium_1024x1024: .128,
64
+ medium_1024x1536: .192,
65
+ medium_1536x1024: .192,
66
+ high_1024x1024: .192,
67
+ high_1024x1536: .288,
68
+ high_1536x1024: .288
69
+ };
70
+ function isGptImage1(model) {
71
+ return model === "gpt-image-1" || model.startsWith("gpt-image-1-2025");
72
+ }
73
+ function isGptImage1Mini(model) {
74
+ return model === "gpt-image-1-mini" || model.startsWith("gpt-image-1-mini-2025");
75
+ }
76
+ function isGptImage15(model) {
77
+ return model === "gpt-image-1.5" || model.startsWith("gpt-image-1.5-2025");
78
+ }
79
+ function isGptImageModel(model) {
80
+ return isGptImage1(model) || isGptImage1Mini(model) || isGptImage15(model);
81
+ }
82
+ function validateSizeForModel(size, model) {
83
+ if (model === "dall-e-3" && !DALLE3_VALID_SIZES.includes(size)) return {
84
+ valid: false,
85
+ message: `Invalid size "${size}" for DALL-E 3. Valid sizes are: ${DALLE3_VALID_SIZES.join(", ")}`
86
+ };
87
+ if (model === "dall-e-2" && !DALLE2_VALID_SIZES.includes(size)) return {
88
+ valid: false,
89
+ message: `Invalid size "${size}" for DALL-E 2. Valid sizes are: ${DALLE2_VALID_SIZES.join(", ")}`
90
+ };
91
+ if (isGptImageModel(model) && size !== "auto" && !GPT_IMAGE1_VALID_SIZES.includes(size)) {
92
+ let modelName = model;
93
+ if (isGptImage15(model)) modelName = "GPT Image 1.5";
94
+ else if (isGptImage1Mini(model)) modelName = "GPT Image 1 Mini";
95
+ else if (isGptImage1(model)) modelName = "GPT Image 1";
96
+ return {
97
+ valid: false,
98
+ message: `Invalid size "${size}" for ${modelName}. Valid sizes are: ${GPT_IMAGE1_VALID_SIZES.join(", ")}, auto`
99
+ };
100
+ }
101
+ return { valid: true };
102
+ }
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) {
141
+ if (responseFormat === "b64_json") {
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}`;
145
+ } else {
146
+ const url = data.data[0].url;
147
+ if (!url) return { error: `No image URL found in response: ${JSON.stringify(data)}` };
148
+ return `![${ellipsize(prompt.replace(/\r?\n|\r/g, " ").replace(/\[/g, "(").replace(/\]/g, ")"), 50)}](${url})`;
149
+ }
150
+ }
151
+ function prepareRequestBody(model, prompt, size, responseFormat, config) {
152
+ const body = {
153
+ model,
154
+ prompt,
155
+ n: config.n || 1,
156
+ size
157
+ };
158
+ if (!isGptImageModel(model)) body.response_format = responseFormat;
159
+ if (model === "dall-e-3") {
160
+ if ("quality" in config && config.quality) body.quality = config.quality;
161
+ if ("style" in config && config.style) body.style = config.style;
162
+ }
163
+ if (isGptImageModel(model)) {
164
+ if ("quality" in config && config.quality) body.quality = config.quality;
165
+ if ("background" in config && config.background) body.background = config.background;
166
+ if ("output_format" in config && config.output_format) body.output_format = config.output_format;
167
+ if ("output_compression" in config && config.output_compression !== void 0) body.output_compression = config.output_compression;
168
+ if ("moderation" in config && config.moderation) body.moderation = config.moderation;
169
+ }
170
+ return body;
171
+ }
172
+ function calculateImageCost(model, size, quality, n = 1) {
173
+ const imageQuality = quality || "standard";
174
+ if (model === "dall-e-3") return (DALLE3_COSTS[`${imageQuality}_${size}`] || DALLE3_COSTS["standard_1024x1024"]) * n;
175
+ else if (model === "dall-e-2") return (DALLE2_COSTS[size] || DALLE2_COSTS["1024x1024"]) * n;
176
+ else if (isGptImage1(model)) return (GPT_IMAGE1_COSTS[`${quality || "low"}_${size}`] || GPT_IMAGE1_COSTS["low_1024x1024"]) * n;
177
+ else if (isGptImage1Mini(model)) return (GPT_IMAGE1_MINI_COSTS[`${quality || "low"}_${size}`] || GPT_IMAGE1_MINI_COSTS["low_1024x1024"]) * n;
178
+ else if (isGptImage15(model)) return (GPT_IMAGE1_5_COSTS[`${quality || "low"}_${size}`] || GPT_IMAGE1_5_COSTS["low_1024x1024"]) * n;
179
+ return .04 * n;
180
+ }
181
+ async function callOpenAiImageApi(url, body, headers, timeout) {
182
+ return await fetchWithCache(url, {
183
+ method: "POST",
184
+ headers,
185
+ body: JSON.stringify(body)
186
+ }, timeout);
187
+ }
188
+ async function processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, quality, n = 1, outputFormat) {
189
+ if (data.error) {
190
+ await data?.deleteFromCache?.();
191
+ return { error: formatOpenAiError(data) };
192
+ }
193
+ try {
194
+ const formattedOutput = formatOutput(data, prompt, responseFormat, outputFormat);
195
+ if (typeof formattedOutput === "object") return formattedOutput;
196
+ const cost = cached ? 0 : calculateImageCost(model, size, quality, n);
197
+ return {
198
+ output: formattedOutput,
199
+ images: buildStructuredImageOutputs(data, outputFormat),
200
+ cached,
201
+ latencyMs,
202
+ cost,
203
+ ...responseFormat === "b64_json" ? {
204
+ isBase64: true,
205
+ format: "json"
206
+ } : {}
207
+ };
208
+ } catch (err) {
209
+ await data?.deleteFromCache?.();
210
+ return { error: `API error: ${String(err)}: ${JSON.stringify(data)}` };
211
+ }
212
+ }
213
+ var OpenAiImageProvider = class extends OpenAiGenericProvider {
214
+ config;
215
+ constructor(modelName, options = {}) {
216
+ super(modelName, options);
217
+ this.config = options.config || {};
218
+ }
219
+ async callApi(prompt, context, _callApiOptions) {
220
+ if (this.requiresApiKey() && !this.getApiKey()) throw new Error("OpenAI API key is not set. Set the OPENAI_API_KEY environment variable or add `apiKey` to the provider config.");
221
+ const config = {
222
+ ...this.config,
223
+ ...context?.prompt?.config
224
+ };
225
+ const model = config.model || this.modelName;
226
+ const operation = "operation" in config && config.operation || "generation";
227
+ const responseFormat = isGptImageModel(model) ? "b64_json" : config.response_format || "url";
228
+ if (operation !== "generation") return { error: `Only 'generation' operations are currently supported. '${operation}' operations are not implemented.` };
229
+ const endpoint = "/images/generations";
230
+ const size = config.size || DEFAULT_SIZE;
231
+ const sizeValidation = validateSizeForModel(size, model);
232
+ if (!sizeValidation.valid) return { error: sizeValidation.message };
233
+ const body = prepareRequestBody(model, prompt, size, responseFormat, config);
234
+ const headers = {
235
+ "Content-Type": "application/json",
236
+ ...this.getApiKey() ? { Authorization: `Bearer ${this.getApiKey()}` } : {},
237
+ ...this.getOrganization() ? { "OpenAI-Organization": this.getOrganization() } : {},
238
+ ...config.headers
239
+ };
240
+ let data, status, statusText;
241
+ let cached = false;
242
+ let latencyMs;
243
+ try {
244
+ ({data, cached, status, statusText, latencyMs} = await callOpenAiImageApi(`${this.getApiUrl()}${endpoint}`, body, headers, REQUEST_TIMEOUT_MS));
245
+ if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
246
+ } catch (err) {
247
+ logger.error(`API call error: ${String(err)}`);
248
+ await data?.deleteFromCache?.();
249
+ return { error: `API call error: ${String(err)}` };
250
+ }
251
+ return processApiResponse(data, prompt, responseFormat, cached, model, size, latencyMs, config.quality, config.n || 1, "output_format" in config ? config.output_format : void 0);
252
+ }
253
+ };
254
+ //#endregion
255
+ export { formatOutput as i, buildStructuredImageOutputs as n, callOpenAiImageApi as r, OpenAiImageProvider as t };
256
+
257
+ //# sourceMappingURL=image-pAX56tPG.js.map
@@ -1,8 +1,6 @@
1
- import "./chunk-FhC4c-0y.js";
2
- import { b as getEnvString, i as logger_default } from "./logger-CG1uZPbQ.js";
3
- import { h as REQUEST_TIMEOUT_MS } from "./fetch-D3OHf-lV.js";
4
- import { a as fetchWithCache } from "./cache-CIpsoBZR.js";
5
-
1
+ import { b as getEnvString, i as logger } from "./logger-DLcq4dWf.js";
2
+ import { p as REQUEST_TIMEOUT_MS } from "./fetch-4M3YRaqL.js";
3
+ import { r as fetchWithCache } from "./cache-D3eqDYGU.js";
6
4
  //#region src/providers/hyperbolic/image.ts
7
5
  const HYPERBOLIC_IMAGE_MODELS = [
8
6
  {
@@ -133,7 +131,7 @@ var HyperbolicImageProvider = class {
133
131
  }, REQUEST_TIMEOUT_MS));
134
132
  if (status < 200 || status >= 300) return { error: `API error: ${status} ${statusText}\n${typeof data === "string" ? data : JSON.stringify(data)}` };
135
133
  } catch (err) {
136
- logger_default.error(`API call error: ${String(err)}`);
134
+ logger.error(`API call error: ${String(err)}`);
137
135
  return { error: `API call error: ${String(err)}` };
138
136
  }
139
137
  if (data.error) return { error: typeof data.error === "string" ? data.error : JSON.stringify(data.error) };
@@ -159,7 +157,7 @@ var HyperbolicImageProvider = class {
159
157
  function createHyperbolicImageProvider(providerPath, options = {}) {
160
158
  return new HyperbolicImageProvider(providerPath.split(":").slice(2).join(":") || "SDXL1.0-base", options);
161
159
  }
162
-
163
160
  //#endregion
164
161
  export { createHyperbolicImageProvider };
165
- //# sourceMappingURL=image-DNEIf_aI.js.map
162
+
163
+ //# sourceMappingURL=image-tL5hIOFh.js.map