langwatch 0.20.0 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (534) hide show
  1. package/dist/{add-2I554R6L.mjs → add-7QFHK67E.mjs} +10 -7
  2. package/dist/{add-2I554R6L.mjs.map → add-7QFHK67E.mjs.map} +1 -1
  3. package/dist/{add-FJ2SMVQE.js → add-EJSXUSD6.js} +13 -10
  4. package/dist/add-EJSXUSD6.js.map +1 -0
  5. package/dist/assign-5UEB6AJU.js +50 -0
  6. package/dist/assign-5UEB6AJU.js.map +1 -0
  7. package/dist/assign-JCCQ5D7I.mjs +50 -0
  8. package/dist/assign-JCCQ5D7I.mjs.map +1 -0
  9. package/dist/chunk-2BJPLPLU.js +33 -0
  10. package/dist/chunk-2BJPLPLU.js.map +1 -0
  11. package/dist/chunk-2OHGLTXZ.mjs +51 -0
  12. package/dist/chunk-2OHGLTXZ.mjs.map +1 -0
  13. package/dist/chunk-2VVANTLB.js +68 -0
  14. package/dist/chunk-2VVANTLB.js.map +1 -0
  15. package/dist/{chunk-L5Z7F7MG.mjs → chunk-43STSE3B.mjs} +2 -2
  16. package/dist/chunk-47F7UDHN.js +76 -0
  17. package/dist/chunk-47F7UDHN.js.map +1 -0
  18. package/dist/chunk-5PMWRY5J.js +80 -0
  19. package/dist/chunk-5PMWRY5J.js.map +1 -0
  20. package/dist/chunk-7FD7BEJP.mjs +63 -0
  21. package/dist/chunk-7FD7BEJP.mjs.map +1 -0
  22. package/dist/{chunk-PIF2RJWZ.js → chunk-AK4YCKWK.js} +107 -108
  23. package/dist/chunk-AK4YCKWK.js.map +1 -0
  24. package/dist/chunk-AMPLL3EP.js +70 -0
  25. package/dist/chunk-AMPLL3EP.js.map +1 -0
  26. package/dist/chunk-CGFG5FCC.js +674 -0
  27. package/dist/chunk-CGFG5FCC.js.map +1 -0
  28. package/dist/chunk-CLYXJJ6C.js +66 -0
  29. package/dist/chunk-CLYXJJ6C.js.map +1 -0
  30. package/dist/{chunk-WSESRS6L.mjs → chunk-COKOLKOR.mjs} +8 -6
  31. package/dist/{chunk-WSESRS6L.mjs.map → chunk-COKOLKOR.mjs.map} +1 -1
  32. package/dist/chunk-COMOCQA6.mjs +13 -0
  33. package/dist/chunk-COMOCQA6.mjs.map +1 -0
  34. package/dist/chunk-CYRJSLKD.js +68 -0
  35. package/dist/chunk-CYRJSLKD.js.map +1 -0
  36. package/dist/{chunk-BJUXJHMQ.js → chunk-D2FHOR76.js} +2 -2
  37. package/dist/{chunk-BJUXJHMQ.js.map → chunk-D2FHOR76.js.map} +1 -1
  38. package/dist/{chunk-5LYWRKDF.js → chunk-DB6OJGP4.js} +2 -60
  39. package/dist/chunk-DB6OJGP4.js.map +1 -0
  40. package/dist/chunk-DTEKJ3UD.mjs +66 -0
  41. package/dist/chunk-DTEKJ3UD.mjs.map +1 -0
  42. package/dist/{chunk-NW32UPEI.js → chunk-DUG35J5N.js} +17 -17
  43. package/dist/{chunk-NW32UPEI.js.map → chunk-DUG35J5N.js.map} +1 -1
  44. package/dist/chunk-DWHR6QJK.mjs +46 -0
  45. package/dist/chunk-DWHR6QJK.mjs.map +1 -0
  46. package/dist/{chunk-A7CF6ZGH.mjs → chunk-ESGWN42J.mjs} +2 -2
  47. package/dist/{chunk-FMYG6IOZ.mjs → chunk-FARZEN6T.mjs} +2 -2
  48. package/dist/chunk-FG3JQBJB.mjs +68 -0
  49. package/dist/chunk-FG3JQBJB.mjs.map +1 -0
  50. package/dist/chunk-FKIH4XCX.js +63 -0
  51. package/dist/chunk-FKIH4XCX.js.map +1 -0
  52. package/dist/chunk-GLCAOVJA.js +100 -0
  53. package/dist/chunk-GLCAOVJA.js.map +1 -0
  54. package/dist/{chunk-VCC7F6B7.js → chunk-H6F5OGSL.js} +11 -11
  55. package/dist/{chunk-VCC7F6B7.js.map → chunk-H6F5OGSL.js.map} +1 -1
  56. package/dist/chunk-HHRXMHVH.js +54 -0
  57. package/dist/chunk-HHRXMHVH.js.map +1 -0
  58. package/dist/{chunk-ZLCERT3X.js → chunk-HPQFHP6K.js} +12 -10
  59. package/dist/chunk-HPQFHP6K.js.map +1 -0
  60. package/dist/chunk-I2LDJPTG.mjs +100 -0
  61. package/dist/chunk-I2LDJPTG.mjs.map +1 -0
  62. package/dist/chunk-ILLEMTW3.mjs +674 -0
  63. package/dist/chunk-ILLEMTW3.mjs.map +1 -0
  64. package/dist/{chunk-OLI6GF46.js → chunk-JWF5KHWM.js} +16 -14
  65. package/dist/chunk-JWF5KHWM.js.map +1 -0
  66. package/dist/{chunk-CWXQ53NE.mjs → chunk-JYR4TXSB.mjs} +10 -8
  67. package/dist/chunk-JYR4TXSB.mjs.map +1 -0
  68. package/dist/chunk-KH64V3CL.mjs +54 -0
  69. package/dist/chunk-KH64V3CL.mjs.map +1 -0
  70. package/dist/chunk-KJSFJ5Z3.js +51 -0
  71. package/dist/chunk-KJSFJ5Z3.js.map +1 -0
  72. package/dist/{chunk-WASZSPD7.mjs → chunk-L3IOXWDG.mjs} +100 -101
  73. package/dist/chunk-L3IOXWDG.mjs.map +1 -0
  74. package/dist/{chunk-SSONRNFB.mjs → chunk-LN33ZL4Z.mjs} +2 -2
  75. package/dist/{chunk-SSONRNFB.mjs.map → chunk-LN33ZL4Z.mjs.map} +1 -1
  76. package/dist/{chunk-5M66X6SZ.mjs → chunk-LULJYN3P.mjs} +3 -3
  77. package/dist/chunk-M3WJZUOE.js +13 -0
  78. package/dist/chunk-M3WJZUOE.js.map +1 -0
  79. package/dist/{chunk-JVIQJFUE.mjs → chunk-M4IBRWUC.mjs} +2 -60
  80. package/dist/chunk-M4IBRWUC.mjs.map +1 -0
  81. package/dist/chunk-NIW2SFZZ.mjs +85 -0
  82. package/dist/chunk-NIW2SFZZ.mjs.map +1 -0
  83. package/dist/chunk-NMACMKQN.mjs +68 -0
  84. package/dist/chunk-NMACMKQN.mjs.map +1 -0
  85. package/dist/chunk-OAAMDWSK.js +65 -0
  86. package/dist/chunk-OAAMDWSK.js.map +1 -0
  87. package/dist/chunk-PO6XRHYW.mjs +80 -0
  88. package/dist/chunk-PO6XRHYW.mjs.map +1 -0
  89. package/dist/chunk-QH3WUSKF.mjs +33 -0
  90. package/dist/chunk-QH3WUSKF.mjs.map +1 -0
  91. package/dist/chunk-RKJDDUGQ.mjs +65 -0
  92. package/dist/chunk-RKJDDUGQ.mjs.map +1 -0
  93. package/dist/chunk-TCO73AV5.mjs +53 -0
  94. package/dist/chunk-TCO73AV5.mjs.map +1 -0
  95. package/dist/chunk-TQYUM3WH.mjs +70 -0
  96. package/dist/chunk-TQYUM3WH.mjs.map +1 -0
  97. package/dist/chunk-TV6ZXLE5.mjs +76 -0
  98. package/dist/chunk-TV6ZXLE5.mjs.map +1 -0
  99. package/dist/chunk-VMDYRBQ7.js +85 -0
  100. package/dist/chunk-VMDYRBQ7.js.map +1 -0
  101. package/dist/chunk-WE2PHCFS.js +53 -0
  102. package/dist/chunk-WE2PHCFS.js.map +1 -0
  103. package/dist/chunk-WLMXMXHE.js +54 -0
  104. package/dist/chunk-WLMXMXHE.js.map +1 -0
  105. package/dist/chunk-X7QBE6AA.js +46 -0
  106. package/dist/chunk-X7QBE6AA.js.map +1 -0
  107. package/dist/chunk-YTR56IZO.mjs +54 -0
  108. package/dist/chunk-YTR56IZO.mjs.map +1 -0
  109. package/dist/{chunk-QLBNSGWC.js → chunk-Z6MQQXMS.js} +4 -4
  110. package/dist/{chunk-QLBNSGWC.js.map → chunk-Z6MQQXMS.js.map} +1 -1
  111. package/dist/{chunk-QNT5P6VV.js → chunk-ZZL6VZZU.js} +2 -2
  112. package/dist/{chunk-QNT5P6VV.js.map → chunk-ZZL6VZZU.js.map} +1 -1
  113. package/dist/cli/index.js +467 -20
  114. package/dist/cli/index.js.map +1 -1
  115. package/dist/cli/index.mjs +467 -20
  116. package/dist/cli/index.mjs.map +1 -1
  117. package/dist/create-45FMHT6B.mjs +78 -0
  118. package/dist/create-45FMHT6B.mjs.map +1 -0
  119. package/dist/create-4OA73B7I.mjs +44 -0
  120. package/dist/create-4OA73B7I.mjs.map +1 -0
  121. package/dist/create-4U5BPFCT.mjs +51 -0
  122. package/dist/create-4U5BPFCT.mjs.map +1 -0
  123. package/dist/create-ARJEJDYU.mjs +18 -0
  124. package/dist/create-CQ7W2OAA.js +78 -0
  125. package/dist/create-CQ7W2OAA.js.map +1 -0
  126. package/dist/create-FI6HBFTB.mjs +63 -0
  127. package/dist/create-FI6HBFTB.mjs.map +1 -0
  128. package/dist/create-FYLUSZTP.js +38 -0
  129. package/dist/create-FYLUSZTP.js.map +1 -0
  130. package/dist/create-GGYYU5KM.mjs +51 -0
  131. package/dist/create-GGYYU5KM.mjs.map +1 -0
  132. package/dist/create-K5LFAS4E.mjs +61 -0
  133. package/dist/create-K5LFAS4E.mjs.map +1 -0
  134. package/dist/create-KAPF2AOL.js +44 -0
  135. package/dist/create-KAPF2AOL.js.map +1 -0
  136. package/dist/create-LWG7ZHEW.mjs +71 -0
  137. package/dist/create-LWG7ZHEW.mjs.map +1 -0
  138. package/dist/create-MXYMAFMF.js +71 -0
  139. package/dist/create-MXYMAFMF.js.map +1 -0
  140. package/dist/create-NFYHBFF5.mjs +50 -0
  141. package/dist/create-NFYHBFF5.mjs.map +1 -0
  142. package/dist/create-OSAXTSUC.js +51 -0
  143. package/dist/create-OSAXTSUC.js.map +1 -0
  144. package/dist/create-RPHO5TZX.js +51 -0
  145. package/dist/create-RPHO5TZX.js.map +1 -0
  146. package/dist/create-RRI5ZTMI.mjs +51 -0
  147. package/dist/create-RRI5ZTMI.mjs.map +1 -0
  148. package/dist/create-UKLLNRXV.js +61 -0
  149. package/dist/create-UKLLNRXV.js.map +1 -0
  150. package/dist/create-UZ5NDYPV.js +88 -0
  151. package/dist/create-UZ5NDYPV.js.map +1 -0
  152. package/dist/create-WV2NQDV5.js +63 -0
  153. package/dist/create-WV2NQDV5.js.map +1 -0
  154. package/dist/create-XGD3GULQ.js +50 -0
  155. package/dist/create-XGD3GULQ.js.map +1 -0
  156. package/dist/create-XZXVGMKU.js +51 -0
  157. package/dist/create-XZXVGMKU.js.map +1 -0
  158. package/dist/create-Z2XFL2HX.js +18 -0
  159. package/dist/create-Z2XFL2HX.js.map +1 -0
  160. package/dist/create-Z7DUMMQ4.mjs +38 -0
  161. package/dist/create-Z7DUMMQ4.mjs.map +1 -0
  162. package/dist/create-ZU4L3XOF.mjs +88 -0
  163. package/dist/create-ZU4L3XOF.mjs.map +1 -0
  164. package/dist/delete-22LDMLNG.mjs +61 -0
  165. package/dist/delete-22LDMLNG.mjs.map +1 -0
  166. package/dist/delete-2S67GS6A.mjs +40 -0
  167. package/dist/delete-2S67GS6A.mjs.map +1 -0
  168. package/dist/delete-3WCCA5O2.mjs +44 -0
  169. package/dist/delete-3WCCA5O2.mjs.map +1 -0
  170. package/dist/delete-4QNGDUH6.js +44 -0
  171. package/dist/delete-4QNGDUH6.js.map +1 -0
  172. package/dist/delete-555RUBQA.js +55 -0
  173. package/dist/delete-555RUBQA.js.map +1 -0
  174. package/dist/delete-5NINT2KV.mjs +42 -0
  175. package/dist/delete-5NINT2KV.mjs.map +1 -0
  176. package/dist/delete-5VDH4Q3Z.js +44 -0
  177. package/dist/delete-5VDH4Q3Z.js.map +1 -0
  178. package/dist/delete-6JPJPG4B.js +38 -0
  179. package/dist/delete-6JPJPG4B.js.map +1 -0
  180. package/dist/delete-6ZD3ARMB.js +61 -0
  181. package/dist/delete-6ZD3ARMB.js.map +1 -0
  182. package/dist/delete-AOSVEVNL.mjs +44 -0
  183. package/dist/delete-AOSVEVNL.mjs.map +1 -0
  184. package/dist/delete-BLTSYYZQ.js +40 -0
  185. package/dist/delete-BLTSYYZQ.js.map +1 -0
  186. package/dist/delete-CTE3RNKB.mjs +42 -0
  187. package/dist/delete-CTE3RNKB.mjs.map +1 -0
  188. package/dist/delete-HEF4DLSV.mjs +38 -0
  189. package/dist/delete-HEF4DLSV.mjs.map +1 -0
  190. package/dist/delete-I36NLS2V.mjs +65 -0
  191. package/dist/delete-I36NLS2V.mjs.map +1 -0
  192. package/dist/delete-J2P2Y2BW.mjs +63 -0
  193. package/dist/delete-J2P2Y2BW.mjs.map +1 -0
  194. package/dist/delete-KIXZ73DF.mjs +38 -0
  195. package/dist/delete-KIXZ73DF.mjs.map +1 -0
  196. package/dist/delete-L3SU34X6.mjs +44 -0
  197. package/dist/delete-L3SU34X6.mjs.map +1 -0
  198. package/dist/delete-N6OZW65U.js +44 -0
  199. package/dist/delete-N6OZW65U.js.map +1 -0
  200. package/dist/delete-PPEXA2V4.js +42 -0
  201. package/dist/delete-PPEXA2V4.js.map +1 -0
  202. package/dist/delete-PXGB35PF.js +65 -0
  203. package/dist/delete-PXGB35PF.js.map +1 -0
  204. package/dist/delete-QVE52G3Q.mjs +42 -0
  205. package/dist/delete-QVE52G3Q.mjs.map +1 -0
  206. package/dist/delete-R5TSAZOU.js +42 -0
  207. package/dist/delete-R5TSAZOU.js.map +1 -0
  208. package/dist/delete-RIHVCQ6G.mjs +55 -0
  209. package/dist/delete-RIHVCQ6G.mjs.map +1 -0
  210. package/dist/delete-UWPOVLSO.js +38 -0
  211. package/dist/delete-UWPOVLSO.js.map +1 -0
  212. package/dist/delete-XKF7KO4Y.js +63 -0
  213. package/dist/delete-XKF7KO4Y.js.map +1 -0
  214. package/dist/delete-ZY2UCN3W.js +42 -0
  215. package/dist/delete-ZY2UCN3W.js.map +1 -0
  216. package/dist/download-2Q5T4WW2.js +96 -0
  217. package/dist/download-2Q5T4WW2.js.map +1 -0
  218. package/dist/download-7RBJ3GZM.mjs +96 -0
  219. package/dist/download-7RBJ3GZM.mjs.map +1 -0
  220. package/dist/duplicate-7N6B5PJD.mjs +48 -0
  221. package/dist/duplicate-7N6B5PJD.mjs.map +1 -0
  222. package/dist/duplicate-HZGUFROD.js +48 -0
  223. package/dist/duplicate-HZGUFROD.js.map +1 -0
  224. package/dist/export-PP5LG6Q7.js +91 -0
  225. package/dist/export-PP5LG6Q7.js.map +1 -0
  226. package/dist/export-TGKA6WA4.mjs +91 -0
  227. package/dist/export-TGKA6WA4.mjs.map +1 -0
  228. package/dist/get-2AXSP6AP.js +62 -0
  229. package/dist/get-2AXSP6AP.js.map +1 -0
  230. package/dist/get-6UQYEENU.mjs +55 -0
  231. package/dist/get-6UQYEENU.mjs.map +1 -0
  232. package/dist/get-73K7EOMU.mjs +53 -0
  233. package/dist/get-73K7EOMU.mjs.map +1 -0
  234. package/dist/get-7JYKMJXV.mjs +85 -0
  235. package/dist/get-7JYKMJXV.mjs.map +1 -0
  236. package/dist/get-7V7OBWY5.js +86 -0
  237. package/dist/get-7V7OBWY5.js.map +1 -0
  238. package/dist/get-CBNUMPUN.mjs +64 -0
  239. package/dist/get-CBNUMPUN.mjs.map +1 -0
  240. package/dist/get-E2RIDN65.mjs +70 -0
  241. package/dist/get-E2RIDN65.mjs.map +1 -0
  242. package/dist/get-EN3CQXA7.js +51 -0
  243. package/dist/get-EN3CQXA7.js.map +1 -0
  244. package/dist/get-GHUHFWC3.js +58 -0
  245. package/dist/get-GHUHFWC3.js.map +1 -0
  246. package/dist/get-GQTPK2MW.mjs +51 -0
  247. package/dist/get-GQTPK2MW.mjs.map +1 -0
  248. package/dist/get-I2CQCKFW.mjs +62 -0
  249. package/dist/get-I2CQCKFW.mjs.map +1 -0
  250. package/dist/get-IDYGZX5O.mjs +51 -0
  251. package/dist/get-IDYGZX5O.mjs.map +1 -0
  252. package/dist/get-JAWJ5RIB.mjs +66 -0
  253. package/dist/get-JAWJ5RIB.mjs.map +1 -0
  254. package/dist/get-JYN765FP.js +53 -0
  255. package/dist/get-JYN765FP.js.map +1 -0
  256. package/dist/get-MHGIJVZ5.js +51 -0
  257. package/dist/get-MHGIJVZ5.js.map +1 -0
  258. package/dist/get-NIA7XUS2.mjs +56 -0
  259. package/dist/get-NIA7XUS2.mjs.map +1 -0
  260. package/dist/get-PM5HD5BJ.js +64 -0
  261. package/dist/get-PM5HD5BJ.js.map +1 -0
  262. package/dist/get-PR65PTQ5.mjs +86 -0
  263. package/dist/get-PR65PTQ5.mjs.map +1 -0
  264. package/dist/get-PYWLY7QQ.mjs +71 -0
  265. package/dist/get-PYWLY7QQ.mjs.map +1 -0
  266. package/dist/get-QMCMYTDV.mjs +58 -0
  267. package/dist/get-QMCMYTDV.mjs.map +1 -0
  268. package/dist/get-QNYINIDO.mjs +95 -0
  269. package/dist/get-QNYINIDO.mjs.map +1 -0
  270. package/dist/get-S7MFACWM.js +70 -0
  271. package/dist/get-S7MFACWM.js.map +1 -0
  272. package/dist/get-SBMD2X2P.js +66 -0
  273. package/dist/get-SBMD2X2P.js.map +1 -0
  274. package/dist/get-T754IOEI.js +85 -0
  275. package/dist/get-T754IOEI.js.map +1 -0
  276. package/dist/get-TOXTYIN5.js +71 -0
  277. package/dist/get-TOXTYIN5.js.map +1 -0
  278. package/dist/get-UCHL4WHT.js +95 -0
  279. package/dist/get-UCHL4WHT.js.map +1 -0
  280. package/dist/get-Y22XVMEO.js +55 -0
  281. package/dist/get-Y22XVMEO.js.map +1 -0
  282. package/dist/get-ZEUJA3KA.js +56 -0
  283. package/dist/get-ZEUJA3KA.js.map +1 -0
  284. package/dist/{implementation-8fGNr_Mq.d.ts → implementation-7POf4yX4.d.ts} +1 -1
  285. package/dist/{implementation-DPQ9ez-J.d.mts → implementation-BbuGM8_W.d.mts} +1 -1
  286. package/dist/index.d.mts +395 -28
  287. package/dist/index.d.ts +395 -28
  288. package/dist/index.js +49 -196
  289. package/dist/index.js.map +1 -1
  290. package/dist/index.mjs +35 -182
  291. package/dist/index.mjs.map +1 -1
  292. package/dist/list-3JR4HKGF.mjs +70 -0
  293. package/dist/list-3JR4HKGF.mjs.map +1 -0
  294. package/dist/list-6BRQWVVV.js +74 -0
  295. package/dist/list-6BRQWVVV.js.map +1 -0
  296. package/dist/list-6JTFDJAI.mjs +93 -0
  297. package/dist/list-6JTFDJAI.mjs.map +1 -0
  298. package/dist/list-7LV6GOZO.js +85 -0
  299. package/dist/list-7LV6GOZO.js.map +1 -0
  300. package/dist/list-AEX4S72W.mjs +74 -0
  301. package/dist/list-AEX4S72W.mjs.map +1 -0
  302. package/dist/list-AGELVAP7.js +70 -0
  303. package/dist/list-AGELVAP7.js.map +1 -0
  304. package/dist/list-ARBOOOYN.mjs +81 -0
  305. package/dist/list-ARBOOOYN.mjs.map +1 -0
  306. package/dist/list-AYOW6OF7.js +73 -0
  307. package/dist/list-AYOW6OF7.js.map +1 -0
  308. package/dist/list-BAKCZVTL.mjs +78 -0
  309. package/dist/list-BAKCZVTL.mjs.map +1 -0
  310. package/dist/list-BDNGLOLK.mjs +77 -0
  311. package/dist/list-BDNGLOLK.mjs.map +1 -0
  312. package/dist/list-C6DPYHQ2.js +109 -0
  313. package/dist/list-C6DPYHQ2.js.map +1 -0
  314. package/dist/list-E7YPBCAF.mjs +85 -0
  315. package/dist/list-E7YPBCAF.mjs.map +1 -0
  316. package/dist/list-EPB36Y7W.mjs +49 -0
  317. package/dist/list-EPB36Y7W.mjs.map +1 -0
  318. package/dist/list-FLTPMAHR.js +93 -0
  319. package/dist/list-FLTPMAHR.js.map +1 -0
  320. package/dist/list-FPIWJ65T.mjs +83 -0
  321. package/dist/list-FPIWJ65T.mjs.map +1 -0
  322. package/dist/list-GN3SAZG2.js +83 -0
  323. package/dist/list-GN3SAZG2.js.map +1 -0
  324. package/dist/list-JK36QVS2.js +73 -0
  325. package/dist/list-JK36QVS2.js.map +1 -0
  326. package/dist/list-JRWFJU5H.js +81 -0
  327. package/dist/list-JRWFJU5H.js.map +1 -0
  328. package/dist/list-KIJ4ILEN.mjs +78 -0
  329. package/dist/list-KIJ4ILEN.mjs.map +1 -0
  330. package/dist/list-KQKELE44.mjs +73 -0
  331. package/dist/list-KQKELE44.mjs.map +1 -0
  332. package/dist/list-LMMRRFZC.js +77 -0
  333. package/dist/list-LMMRRFZC.js.map +1 -0
  334. package/dist/{list-53QTWXGF.mjs → list-N7WIOJ5A.mjs} +29 -68
  335. package/dist/list-N7WIOJ5A.mjs.map +1 -0
  336. package/dist/list-RS4QL7NE.mjs +83 -0
  337. package/dist/list-RS4QL7NE.mjs.map +1 -0
  338. package/dist/list-SDMJ2GJE.js +81 -0
  339. package/dist/list-SDMJ2GJE.js.map +1 -0
  340. package/dist/list-UKGJOVJE.js +49 -0
  341. package/dist/list-UKGJOVJE.js.map +1 -0
  342. package/dist/list-UOTJUE2P.js +79 -0
  343. package/dist/list-UOTJUE2P.js.map +1 -0
  344. package/dist/list-W2MYF4RU.js +78 -0
  345. package/dist/list-W2MYF4RU.js.map +1 -0
  346. package/dist/list-WYYGGV5V.mjs +81 -0
  347. package/dist/list-WYYGGV5V.mjs.map +1 -0
  348. package/dist/list-WZ4KHBMF.mjs +73 -0
  349. package/dist/list-WZ4KHBMF.mjs.map +1 -0
  350. package/dist/list-XTOWXYB2.js +83 -0
  351. package/dist/list-XTOWXYB2.js.map +1 -0
  352. package/dist/list-Z5EEMYRQ.js +78 -0
  353. package/dist/list-Z5EEMYRQ.js.map +1 -0
  354. package/dist/list-ZB53NL6Z.mjs +79 -0
  355. package/dist/list-ZB53NL6Z.mjs.map +1 -0
  356. package/dist/{login-QWXRNDAM.mjs → login-4AX6AOKI.mjs} +20 -3
  357. package/dist/login-4AX6AOKI.mjs.map +1 -0
  358. package/dist/{login-XBFOVP6G.js → login-H3SQDBT7.js} +21 -4
  359. package/dist/login-H3SQDBT7.js.map +1 -0
  360. package/dist/observability-sdk/index.d.mts +3 -3
  361. package/dist/observability-sdk/index.d.ts +3 -3
  362. package/dist/observability-sdk/index.js +8 -6
  363. package/dist/observability-sdk/index.js.map +1 -1
  364. package/dist/observability-sdk/index.mjs +8 -6
  365. package/dist/observability-sdk/instrumentation/langchain/index.d.mts +1 -1
  366. package/dist/observability-sdk/instrumentation/langchain/index.d.ts +1 -1
  367. package/dist/observability-sdk/instrumentation/langchain/index.js +17 -16
  368. package/dist/observability-sdk/instrumentation/langchain/index.js.map +1 -1
  369. package/dist/observability-sdk/instrumentation/langchain/index.mjs +3 -2
  370. package/dist/observability-sdk/instrumentation/langchain/index.mjs.map +1 -1
  371. package/dist/observability-sdk/setup/node/index.js +6 -5
  372. package/dist/observability-sdk/setup/node/index.js.map +1 -1
  373. package/dist/observability-sdk/setup/node/index.mjs +5 -4
  374. package/dist/pull-64HVVOBC.mjs +23 -0
  375. package/dist/pull-QIANBELG.js +23 -0
  376. package/dist/pull-QIANBELG.js.map +1 -0
  377. package/dist/push-GXLGORLM.mjs +23 -0
  378. package/dist/push-GXLGORLM.mjs.map +1 -0
  379. package/dist/push-I3BJSL6N.js +23 -0
  380. package/dist/push-I3BJSL6N.js.map +1 -0
  381. package/dist/query-UF2LDBR4.js +158 -0
  382. package/dist/query-UF2LDBR4.js.map +1 -0
  383. package/dist/query-ZI7HJSIY.mjs +158 -0
  384. package/dist/query-ZI7HJSIY.mjs.map +1 -0
  385. package/dist/records-add-4LX4JHLO.mjs +94 -0
  386. package/dist/records-add-4LX4JHLO.mjs.map +1 -0
  387. package/dist/records-add-WTIGBJV4.js +94 -0
  388. package/dist/records-add-WTIGBJV4.js.map +1 -0
  389. package/dist/records-delete-IY37NWPN.mjs +42 -0
  390. package/dist/records-delete-IY37NWPN.mjs.map +1 -0
  391. package/dist/records-delete-MLOG4DM4.js +42 -0
  392. package/dist/records-delete-MLOG4DM4.js.map +1 -0
  393. package/dist/records-list-EP6OCFH5.js +85 -0
  394. package/dist/records-list-EP6OCFH5.js.map +1 -0
  395. package/dist/records-list-RIDOAE2V.mjs +85 -0
  396. package/dist/records-list-RIDOAE2V.mjs.map +1 -0
  397. package/dist/records-update-5QZBDYUJ.js +49 -0
  398. package/dist/records-update-5QZBDYUJ.js.map +1 -0
  399. package/dist/records-update-JINO26IA.mjs +49 -0
  400. package/dist/records-update-JINO26IA.mjs.map +1 -0
  401. package/dist/{remove-Q573N52S.mjs → remove-HLVK7VUB.mjs} +10 -7
  402. package/dist/{remove-Q573N52S.mjs.map → remove-HLVK7VUB.mjs.map} +1 -1
  403. package/dist/{remove-KIZPGE7J.js → remove-LDX2BSUH.js} +12 -9
  404. package/dist/remove-LDX2BSUH.js.map +1 -0
  405. package/dist/rename-FP7X3GJJ.mjs +38 -0
  406. package/dist/rename-FP7X3GJJ.mjs.map +1 -0
  407. package/dist/rename-PUSZYLZ7.js +38 -0
  408. package/dist/rename-PUSZYLZ7.js.map +1 -0
  409. package/dist/restore-5L5MLISA.mjs +63 -0
  410. package/dist/restore-5L5MLISA.mjs.map +1 -0
  411. package/dist/restore-OXNQMRMJ.js +63 -0
  412. package/dist/restore-OXNQMRMJ.js.map +1 -0
  413. package/dist/run-AIGCDUDF.mjs +143 -0
  414. package/dist/run-AIGCDUDF.mjs.map +1 -0
  415. package/dist/run-CKZ6VNKK.js +143 -0
  416. package/dist/run-CKZ6VNKK.js.map +1 -0
  417. package/dist/run-FE4QMJO5.mjs +67 -0
  418. package/dist/run-FE4QMJO5.mjs.map +1 -0
  419. package/dist/run-FJDOSV5E.js +128 -0
  420. package/dist/run-FJDOSV5E.js.map +1 -0
  421. package/dist/run-GUSPWLCC.mjs +128 -0
  422. package/dist/run-GUSPWLCC.mjs.map +1 -0
  423. package/dist/run-KNCB7OEA.js +86 -0
  424. package/dist/run-KNCB7OEA.js.map +1 -0
  425. package/dist/run-KZKAHFBR.js +67 -0
  426. package/dist/run-KZKAHFBR.js.map +1 -0
  427. package/dist/run-QW2HL4EK.mjs +86 -0
  428. package/dist/run-QW2HL4EK.mjs.map +1 -0
  429. package/dist/run-UZVJBWGG.js +130 -0
  430. package/dist/run-UZVJBWGG.js.map +1 -0
  431. package/dist/run-WZ4CSMTP.mjs +130 -0
  432. package/dist/run-WZ4CSMTP.mjs.map +1 -0
  433. package/dist/search-5B32YGSP.mjs +112 -0
  434. package/dist/search-5B32YGSP.mjs.map +1 -0
  435. package/dist/search-J5GDX5JK.js +112 -0
  436. package/dist/search-J5GDX5JK.js.map +1 -0
  437. package/dist/set-2DYJNVS5.mjs +62 -0
  438. package/dist/set-2DYJNVS5.mjs.map +1 -0
  439. package/dist/set-S5L5QSYZ.js +62 -0
  440. package/dist/set-S5L5QSYZ.js.map +1 -0
  441. package/dist/status-OIXOYFH4.mjs +101 -0
  442. package/dist/status-OIXOYFH4.mjs.map +1 -0
  443. package/dist/status-Q2PEMYJT.mjs +70 -0
  444. package/dist/status-Q2PEMYJT.mjs.map +1 -0
  445. package/dist/status-QRK56VLF.js +70 -0
  446. package/dist/status-QRK56VLF.js.map +1 -0
  447. package/dist/status-T7NOWM4X.js +101 -0
  448. package/dist/status-T7NOWM4X.js.map +1 -0
  449. package/dist/{sync-YPJIIHKC.js → sync-IDSAYUGO.js} +16 -13
  450. package/dist/sync-IDSAYUGO.js.map +1 -0
  451. package/dist/{sync-TM7JZNNW.mjs → sync-LA27E4UB.mjs} +12 -9
  452. package/dist/{sync-TM7JZNNW.mjs.map → sync-LA27E4UB.mjs.map} +1 -1
  453. package/dist/{types-DQiByKdr.d.ts → types-B4TSe7JR.d.ts} +6546 -2251
  454. package/dist/{types-CoHIwxng.d.mts → types-CWY5yQki.d.mts} +6546 -2251
  455. package/dist/update-3B43ZW4X.mjs +53 -0
  456. package/dist/update-3B43ZW4X.mjs.map +1 -0
  457. package/dist/update-3C6Y2Y2P.js +53 -0
  458. package/dist/update-3C6Y2Y2P.js.map +1 -0
  459. package/dist/update-4D7R3VYO.js +75 -0
  460. package/dist/update-4D7R3VYO.js.map +1 -0
  461. package/dist/update-4FC4YPW7.mjs +71 -0
  462. package/dist/update-4FC4YPW7.mjs.map +1 -0
  463. package/dist/update-4YMVL4UT.mjs +74 -0
  464. package/dist/update-4YMVL4UT.mjs.map +1 -0
  465. package/dist/update-7ZEJO5SB.js +74 -0
  466. package/dist/update-7ZEJO5SB.js.map +1 -0
  467. package/dist/update-BADZ6GRL.js +66 -0
  468. package/dist/update-BADZ6GRL.js.map +1 -0
  469. package/dist/update-DLFJBCI2.js +68 -0
  470. package/dist/update-DLFJBCI2.js.map +1 -0
  471. package/dist/update-EB7WMPOP.js +53 -0
  472. package/dist/update-EB7WMPOP.js.map +1 -0
  473. package/dist/update-EG6BZOLC.mjs +51 -0
  474. package/dist/update-EG6BZOLC.mjs.map +1 -0
  475. package/dist/update-FKL5Y73R.js +69 -0
  476. package/dist/update-FKL5Y73R.js.map +1 -0
  477. package/dist/update-GWTLCIAT.mjs +69 -0
  478. package/dist/update-GWTLCIAT.mjs.map +1 -0
  479. package/dist/update-MFZOMTRJ.mjs +51 -0
  480. package/dist/update-MFZOMTRJ.mjs.map +1 -0
  481. package/dist/update-PSY46JJD.mjs +68 -0
  482. package/dist/update-PSY46JJD.mjs.map +1 -0
  483. package/dist/update-PXCMJWY3.mjs +53 -0
  484. package/dist/update-PXCMJWY3.mjs.map +1 -0
  485. package/dist/update-R72C65QF.mjs +66 -0
  486. package/dist/update-R72C65QF.mjs.map +1 -0
  487. package/dist/update-RCZ47II5.js +52 -0
  488. package/dist/update-RCZ47II5.js.map +1 -0
  489. package/dist/update-RPD2OXXQ.js +51 -0
  490. package/dist/update-RPD2OXXQ.js.map +1 -0
  491. package/dist/update-VLY6LJVM.js +51 -0
  492. package/dist/update-VLY6LJVM.js.map +1 -0
  493. package/dist/update-WKM6XI4V.mjs +75 -0
  494. package/dist/update-WKM6XI4V.mjs.map +1 -0
  495. package/dist/update-WQK5Q34V.mjs +52 -0
  496. package/dist/update-WQK5Q34V.mjs.map +1 -0
  497. package/dist/update-YMWBN55I.js +71 -0
  498. package/dist/update-YMWBN55I.js.map +1 -0
  499. package/dist/upload-6LF5GVLP.js +73 -0
  500. package/dist/upload-6LF5GVLP.js.map +1 -0
  501. package/dist/upload-QWAITH5R.mjs +73 -0
  502. package/dist/upload-QWAITH5R.mjs.map +1 -0
  503. package/dist/versions-HIYVXIKM.js +82 -0
  504. package/dist/versions-HIYVXIKM.js.map +1 -0
  505. package/dist/versions-JPUSBSTF.mjs +82 -0
  506. package/dist/versions-JPUSBSTF.mjs.map +1 -0
  507. package/package.json +1 -1
  508. package/dist/add-FJ2SMVQE.js.map +0 -1
  509. package/dist/chunk-5LYWRKDF.js.map +0 -1
  510. package/dist/chunk-CWXQ53NE.mjs.map +0 -1
  511. package/dist/chunk-JVIQJFUE.mjs.map +0 -1
  512. package/dist/chunk-OLI6GF46.js.map +0 -1
  513. package/dist/chunk-PIF2RJWZ.js.map +0 -1
  514. package/dist/chunk-WASZSPD7.mjs.map +0 -1
  515. package/dist/chunk-ZLCERT3X.js.map +0 -1
  516. package/dist/list-53QTWXGF.mjs.map +0 -1
  517. package/dist/list-LBDUK454.js +0 -148
  518. package/dist/list-LBDUK454.js.map +0 -1
  519. package/dist/login-QWXRNDAM.mjs.map +0 -1
  520. package/dist/login-XBFOVP6G.js.map +0 -1
  521. package/dist/pull-3B3CBSSM.js +0 -20
  522. package/dist/pull-3B3CBSSM.js.map +0 -1
  523. package/dist/pull-WK6P7KS2.mjs +0 -20
  524. package/dist/push-G457CXVG.mjs +0 -20
  525. package/dist/push-GKFQL6GO.js +0 -20
  526. package/dist/push-GKFQL6GO.js.map +0 -1
  527. package/dist/remove-KIZPGE7J.js.map +0 -1
  528. package/dist/sync-YPJIIHKC.js.map +0 -1
  529. /package/dist/{chunk-L5Z7F7MG.mjs.map → chunk-43STSE3B.mjs.map} +0 -0
  530. /package/dist/{chunk-A7CF6ZGH.mjs.map → chunk-ESGWN42J.mjs.map} +0 -0
  531. /package/dist/{chunk-FMYG6IOZ.mjs.map → chunk-FARZEN6T.mjs.map} +0 -0
  532. /package/dist/{chunk-5M66X6SZ.mjs.map → chunk-LULJYN3P.mjs.map} +0 -0
  533. /package/dist/{pull-WK6P7KS2.mjs.map → create-ARJEJDYU.mjs.map} +0 -0
  534. /package/dist/{push-G457CXVG.mjs.map → pull-64HVVOBC.mjs.map} +0 -0
@@ -0,0 +1,674 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunk2VVANTLBjs = require('./chunk-2VVANTLB.js');
4
+
5
+
6
+ var _chunkH6F5OGSLjs = require('./chunk-H6F5OGSL.js');
7
+
8
+
9
+
10
+ var _chunkD2FHOR76js = require('./chunk-D2FHOR76.js');
11
+
12
+
13
+
14
+
15
+ var _chunkOHM7JUMRjs = require('./chunk-OHM7JUMR.js');
16
+
17
+ // src/client-sdk/services/datasets/errors.ts
18
+ var DatasetError = class extends Error {
19
+ constructor(message) {
20
+ super(message);
21
+ this.name = "DatasetError";
22
+ }
23
+ };
24
+ var DatasetNotFoundError = class extends DatasetError {
25
+ constructor(slugOrId) {
26
+ super(`Dataset not found: ${slugOrId}`);
27
+ this.name = "DatasetNotFoundError";
28
+ }
29
+ };
30
+ var DatasetApiError = class extends DatasetError {
31
+ constructor(message, status, operation, originalError) {
32
+ super(message);
33
+ this.name = "DatasetApiError";
34
+ this.status = status;
35
+ this.operation = operation;
36
+ this.originalError = originalError;
37
+ }
38
+ };
39
+ var DatasetValidationError = class extends DatasetError {
40
+ constructor(message) {
41
+ super(message);
42
+ this.name = "DatasetValidationError";
43
+ }
44
+ };
45
+ var DatasetPlanLimitError = class extends DatasetError {
46
+ constructor(message, originalError) {
47
+ super(message);
48
+ this.name = "DatasetPlanLimitError";
49
+ if (originalError != null && typeof originalError === "object") {
50
+ const err = originalError;
51
+ this.limitType = typeof err.limitType === "string" ? err.limitType : "datasets";
52
+ this.current = typeof err.current === "number" ? err.current : void 0;
53
+ this.max = typeof err.max === "number" ? err.max : void 0;
54
+ } else {
55
+ this.limitType = "datasets";
56
+ }
57
+ }
58
+ };
59
+
60
+ // src/client-sdk/services/datasets/tracing/tracer.ts
61
+ var tracer = _chunkH6F5OGSLjs.getLangWatchTracer.call(void 0, `${_chunkD2FHOR76js.LANGWATCH_SDK_NAME_CLIENT}.datasets`, _chunkD2FHOR76js.LANGWATCH_SDK_VERSION);
62
+
63
+ // src/client-sdk/services/datasets/dataset.service.ts
64
+ var DatasetService = class {
65
+ constructor(config) {
66
+ this.config = config;
67
+ return _chunk2VVANTLBjs.createTracingProxy.call(void 0, this, tracer);
68
+ }
69
+ /**
70
+ * Handles API errors by mapping status codes to appropriate error types.
71
+ * @param operation - Description of the operation being performed
72
+ * @param error - The error object from the API response
73
+ * @param status - The HTTP status code
74
+ * @param slugOrId - The dataset identifier (only passed for operations targeting an existing resource)
75
+ */
76
+ handleApiError(operation, error, status, slugOrId) {
77
+ if (status === 404 && slugOrId) {
78
+ throw new DatasetNotFoundError(slugOrId);
79
+ }
80
+ if (status === 403) {
81
+ const errorMessage2 = this.extractErrorMessage(error, status);
82
+ throw new DatasetPlanLimitError(errorMessage2, error);
83
+ }
84
+ const errorMessage = this.extractErrorMessage(error, status);
85
+ throw new DatasetApiError(
86
+ `Failed to ${operation}: ${errorMessage}`,
87
+ status,
88
+ operation,
89
+ error
90
+ );
91
+ }
92
+ /**
93
+ * Extracts a human-readable error message from an API error response.
94
+ */
95
+ extractErrorMessage(error, status) {
96
+ var _a;
97
+ if (typeof error === "string") return error;
98
+ if (error != null && typeof error === "object") {
99
+ if ("message" in error && typeof error.message === "string") {
100
+ return error.message;
101
+ }
102
+ if ("error" in error) {
103
+ const inner = error.error;
104
+ if (typeof inner === "string") return inner;
105
+ if (inner != null && typeof inner === "object" && "message" in inner) {
106
+ return (_a = inner.message) != null ? _a : JSON.stringify(inner);
107
+ }
108
+ }
109
+ }
110
+ return `HTTP ${status}`;
111
+ }
112
+ /**
113
+ * Wrapper for API calls to endpoints not yet in the generated OpenAPI types.
114
+ * Quarantines `as any` casts to a single location.
115
+ */
116
+ untypedRequest(method, path, options) {
117
+ return this.config.langwatchApiClient[method](path, options);
118
+ }
119
+ /**
120
+ * Unwraps an API response, throwing a mapped error if the response contains an error.
121
+ * Centralizes the repeated `if (error) handleApiError; return data` pattern.
122
+ */
123
+ unwrapResponse(response, operation, slugOrId) {
124
+ if (response.error) {
125
+ this.handleApiError(operation, response.error, response.response.status, slugOrId);
126
+ }
127
+ return response.data;
128
+ }
129
+ /**
130
+ * Fetches a dataset by its slug or ID, returning metadata and entries.
131
+ *
132
+ * @param slugOrId - The slug or ID of the dataset
133
+ * @param _options - Optional configuration
134
+ * @returns The dataset with metadata and entries
135
+ */
136
+ async getDataset(slugOrId, _options) {
137
+ this.config.logger.debug(`Fetching dataset: ${slugOrId}`);
138
+ const response = await this.config.langwatchApiClient.GET(
139
+ "/api/dataset/{slugOrId}",
140
+ {
141
+ params: {
142
+ path: {
143
+ slugOrId
144
+ }
145
+ }
146
+ }
147
+ );
148
+ const data = this.unwrapResponse(
149
+ response,
150
+ `fetch dataset "${slugOrId}"`,
151
+ slugOrId
152
+ );
153
+ const entries = data.data.map((item) => ({
154
+ id: item.id,
155
+ datasetId: item.datasetId,
156
+ projectId: item.projectId,
157
+ entry: item.entry,
158
+ createdAt: item.createdAt,
159
+ updatedAt: item.updatedAt
160
+ }));
161
+ this.config.logger.debug(
162
+ `Fetched dataset ${slugOrId} with ${entries.length} entries`
163
+ );
164
+ return {
165
+ id: data.id,
166
+ name: data.name,
167
+ slug: data.slug,
168
+ columnTypes: data.columnTypes,
169
+ createdAt: data.createdAt,
170
+ updatedAt: data.updatedAt,
171
+ entries
172
+ };
173
+ }
174
+ /**
175
+ * Lists all datasets for the project, with optional pagination.
176
+ */
177
+ async listDatasets(options) {
178
+ this.config.logger.debug("Listing datasets");
179
+ const response = await this.untypedRequest("GET", "/api/dataset", {
180
+ params: {
181
+ query: {
182
+ page: options == null ? void 0 : options.page,
183
+ limit: options == null ? void 0 : options.limit
184
+ }
185
+ }
186
+ });
187
+ return this.unwrapResponse(
188
+ response,
189
+ "list datasets"
190
+ );
191
+ }
192
+ /**
193
+ * Creates a new dataset.
194
+ */
195
+ async createDataset(options) {
196
+ var _a;
197
+ this.config.logger.debug(`Creating dataset: ${options.name}`);
198
+ const response = await this.untypedRequest("POST", "/api/dataset", {
199
+ body: {
200
+ name: options.name,
201
+ columnTypes: (_a = options.columnTypes) != null ? _a : []
202
+ }
203
+ });
204
+ return this.unwrapResponse(
205
+ response,
206
+ `create dataset "${options.name}"`
207
+ );
208
+ }
209
+ /**
210
+ * Updates a dataset by its slug or ID.
211
+ */
212
+ async updateDataset(slugOrId, options) {
213
+ this.config.logger.debug(`Updating dataset: ${slugOrId}`);
214
+ const response = await this.untypedRequest("PATCH", "/api/dataset/{slugOrId}", {
215
+ params: {
216
+ path: { slugOrId }
217
+ },
218
+ body: options
219
+ });
220
+ return this.unwrapResponse(
221
+ response,
222
+ `update dataset "${slugOrId}"`,
223
+ slugOrId
224
+ );
225
+ }
226
+ /**
227
+ * Deletes (archives) a dataset by its slug or ID.
228
+ */
229
+ async deleteDataset(slugOrId) {
230
+ this.config.logger.debug(`Deleting dataset: ${slugOrId}`);
231
+ const response = await this.untypedRequest("DELETE", "/api/dataset/{slugOrId}", {
232
+ params: {
233
+ path: { slugOrId }
234
+ }
235
+ });
236
+ return this.unwrapResponse(
237
+ response,
238
+ `delete dataset "${slugOrId}"`,
239
+ slugOrId
240
+ );
241
+ }
242
+ /**
243
+ * Creates records in a dataset in batch.
244
+ */
245
+ async createRecords(slugOrId, entries) {
246
+ this.config.logger.debug(`Creating ${entries.length} records in dataset: ${slugOrId}`);
247
+ const response = await this.untypedRequest("POST", "/api/dataset/{slugOrId}/records", {
248
+ params: {
249
+ path: { slugOrId }
250
+ },
251
+ body: { entries }
252
+ });
253
+ return this.unwrapResponse(
254
+ response,
255
+ `create records in dataset "${slugOrId}"`,
256
+ slugOrId
257
+ );
258
+ }
259
+ /**
260
+ * Updates a single record in a dataset.
261
+ */
262
+ async updateRecord(slugOrId, recordId, entry) {
263
+ this.config.logger.debug(`Updating record ${recordId} in dataset: ${slugOrId}`);
264
+ const response = await this.untypedRequest("PATCH", "/api/dataset/{slugOrId}/records/{recordId}", {
265
+ params: {
266
+ path: { slugOrId, recordId }
267
+ },
268
+ body: { entry }
269
+ });
270
+ return this.unwrapResponse(
271
+ response,
272
+ `update record "${recordId}" in dataset "${slugOrId}"`,
273
+ slugOrId
274
+ );
275
+ }
276
+ /**
277
+ * Deletes records from a dataset by IDs.
278
+ */
279
+ async deleteRecords(slugOrId, recordIds) {
280
+ this.config.logger.debug(`Deleting ${recordIds.length} records from dataset: ${slugOrId}`);
281
+ const response = await this.untypedRequest("DELETE", "/api/dataset/{slugOrId}/records", {
282
+ params: {
283
+ path: { slugOrId }
284
+ },
285
+ body: { recordIds }
286
+ });
287
+ return this.unwrapResponse(
288
+ response,
289
+ `delete records from dataset "${slugOrId}"`,
290
+ slugOrId
291
+ );
292
+ }
293
+ /**
294
+ * Lists records in a dataset with optional pagination.
295
+ *
296
+ * @param slugOrId - The slug or ID of the dataset
297
+ * @param options - Pagination options (page, limit)
298
+ * @returns Paginated list of records
299
+ */
300
+ async listRecords(slugOrId, options) {
301
+ this.config.logger.debug(`Listing records for dataset: ${slugOrId}`);
302
+ const response = await this.untypedRequest("GET", "/api/dataset/{slugOrId}/records", {
303
+ params: {
304
+ path: { slugOrId },
305
+ query: {
306
+ page: options == null ? void 0 : options.page,
307
+ limit: options == null ? void 0 : options.limit
308
+ }
309
+ }
310
+ });
311
+ return this.unwrapResponse(
312
+ response,
313
+ `list records in dataset "${slugOrId}"`,
314
+ slugOrId
315
+ );
316
+ }
317
+ /**
318
+ * Sends a multipart/form-data request using raw fetch.
319
+ * openapi-fetch hardcodes content-type: application/json, so file uploads
320
+ * must bypass it. This helper centralizes URL building, auth headers,
321
+ * error parsing, and response unwrapping.
322
+ *
323
+ * @param path - The API path (appended to the endpoint)
324
+ * @param formData - The FormData payload
325
+ * @param operation - Human-readable operation name for error messages
326
+ * @param slugOrId - Optional dataset identifier (passed to handleApiError for 404 mapping)
327
+ */
328
+ async fetchMultipart(path, formData, operation, slugOrId) {
329
+ const { endpoint, apiKey } = this.config;
330
+ const url = `${endpoint.replace(/\/$/, "")}${path}`;
331
+ const response = await fetch(url, {
332
+ method: "POST",
333
+ headers: {
334
+ "X-Auth-Token": apiKey,
335
+ authorization: `Bearer ${apiKey}`
336
+ },
337
+ body: formData
338
+ });
339
+ if (!response.ok) {
340
+ const rawBody = await response.text();
341
+ let errorBody = rawBody;
342
+ if (rawBody) {
343
+ try {
344
+ errorBody = JSON.parse(rawBody);
345
+ } catch (e) {
346
+ }
347
+ }
348
+ this.handleApiError(operation, errorBody, response.status, slugOrId);
349
+ }
350
+ return await response.json();
351
+ }
352
+ /**
353
+ * Creates a new dataset from a file upload.
354
+ *
355
+ * @param options - The dataset name and file to upload
356
+ * @returns The created dataset metadata with record count
357
+ */
358
+ async createDatasetFromUpload(options) {
359
+ this.config.logger.debug(`Creating dataset from upload: ${options.name}`);
360
+ const formData = new FormData();
361
+ formData.append("name", options.name);
362
+ formData.append("file", options.file);
363
+ return this.fetchMultipart(
364
+ "/api/dataset/upload",
365
+ formData,
366
+ `create dataset from upload "${options.name}"`
367
+ );
368
+ }
369
+ /**
370
+ * Uploads a file with a strategy for handling existing datasets.
371
+ *
372
+ * @param slugOrId - The slug or ID of the dataset
373
+ * @param file - The file to upload (File or Blob)
374
+ * @param ifExists - Strategy when dataset exists: "append" (default), "replace", or "error"
375
+ * @returns The upload result
376
+ */
377
+ async uploadWithStrategy(slugOrId, file, ifExists = "append") {
378
+ switch (ifExists) {
379
+ case "append":
380
+ return this._uploadAppend(slugOrId, file);
381
+ case "replace":
382
+ return this._uploadReplace(slugOrId, file);
383
+ case "error":
384
+ return this._uploadError(slugOrId, file);
385
+ }
386
+ }
387
+ /**
388
+ * Converts a CreateFromUploadResponse to the unified UploadResponse shape.
389
+ */
390
+ toUploadResponse(result) {
391
+ return {
392
+ dataset: {
393
+ id: result.id,
394
+ name: result.name,
395
+ slug: result.slug,
396
+ columnTypes: result.columnTypes,
397
+ createdAt: result.createdAt,
398
+ updatedAt: result.updatedAt
399
+ },
400
+ recordsCreated: result.recordsCreated,
401
+ datasetId: result.id
402
+ };
403
+ }
404
+ /**
405
+ * Append strategy: try uploading to existing dataset; if not found, create from file.
406
+ */
407
+ async _uploadAppend(slugOrId, file) {
408
+ try {
409
+ return await this.uploadFile(slugOrId, file);
410
+ } catch (error) {
411
+ if (error instanceof DatasetNotFoundError) {
412
+ return this.toUploadResponse(await this.createDatasetFromUpload({ name: slugOrId, file }));
413
+ }
414
+ throw error;
415
+ }
416
+ }
417
+ /**
418
+ * Replace strategy: if dataset exists, delete all records then upload; if not found, create from file.
419
+ */
420
+ async _uploadReplace(slugOrId, file) {
421
+ try {
422
+ await this.getDataset(slugOrId);
423
+ await this._deleteAllRecords(slugOrId);
424
+ return await this.uploadFile(slugOrId, file);
425
+ } catch (error) {
426
+ if (error instanceof DatasetNotFoundError) {
427
+ return this.toUploadResponse(await this.createDatasetFromUpload({ name: slugOrId, file }));
428
+ }
429
+ throw error;
430
+ }
431
+ }
432
+ /**
433
+ * Error strategy: if dataset exists, throw 409; if not found, create from file.
434
+ */
435
+ async _uploadError(slugOrId, file) {
436
+ let datasetExists = false;
437
+ try {
438
+ await this.getDataset(slugOrId);
439
+ datasetExists = true;
440
+ } catch (error) {
441
+ if (!(error instanceof DatasetNotFoundError)) {
442
+ throw error;
443
+ }
444
+ }
445
+ if (datasetExists) {
446
+ throw new DatasetApiError(
447
+ `Dataset already exists: ${slugOrId}`,
448
+ 409,
449
+ "upload"
450
+ );
451
+ }
452
+ return this.toUploadResponse(await this.createDatasetFromUpload({ name: slugOrId, file }));
453
+ }
454
+ /**
455
+ * Deletes all records from a dataset by iterating through pages.
456
+ * Always fetches page 1 since records shift after deletion.
457
+ * Includes a safety valve to prevent infinite loops.
458
+ */
459
+ async _deleteAllRecords(slugOrId) {
460
+ const BATCH_SIZE = 1e3;
461
+ const MAX_DELETE_ITERATIONS = 100;
462
+ let iteration = 0;
463
+ while (iteration < MAX_DELETE_ITERATIONS) {
464
+ const page = await this.listRecords(slugOrId, { page: 1, limit: BATCH_SIZE });
465
+ if (page.data.length === 0) {
466
+ return;
467
+ }
468
+ const ids = page.data.map((record) => record.id);
469
+ await this.deleteRecords(slugOrId, ids);
470
+ iteration++;
471
+ }
472
+ throw new DatasetApiError(
473
+ `Failed to delete all records from dataset "${slugOrId}": exceeded ${MAX_DELETE_ITERATIONS} iterations`,
474
+ 0,
475
+ `delete all records from dataset "${slugOrId}"`
476
+ );
477
+ }
478
+ /**
479
+ * Uploads a file to an existing dataset.
480
+ */
481
+ async uploadFile(slugOrId, file) {
482
+ this.config.logger.debug(`Uploading file to dataset: ${slugOrId}`);
483
+ const formData = new FormData();
484
+ formData.append("file", file);
485
+ return this.fetchMultipart(
486
+ `/api/dataset/${encodeURIComponent(slugOrId)}/upload`,
487
+ formData,
488
+ `upload file to dataset "${slugOrId}"`,
489
+ slugOrId
490
+ );
491
+ }
492
+ };
493
+
494
+ // src/client-sdk/services/datasets/datasets.facade.ts
495
+ var _datasetService;
496
+ var DatasetsFacade = class {
497
+ constructor(config) {
498
+ _chunkOHM7JUMRjs.__privateAdd.call(void 0, this, _datasetService);
499
+ /**
500
+ * Lists all datasets for the project, with optional pagination.
501
+ *
502
+ * @param options - Pagination options (page, limit)
503
+ * @returns Paginated list of datasets with metadata
504
+ */
505
+ this.list = (options) => {
506
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).listDatasets(options);
507
+ };
508
+ /**
509
+ * Creates a new dataset.
510
+ *
511
+ * @param options - Dataset creation options (name, columnTypes)
512
+ * @returns The created dataset metadata
513
+ */
514
+ this.create = (options) => {
515
+ if (!options.name || options.name.trim().length === 0) {
516
+ throw new DatasetValidationError("Dataset name must not be empty");
517
+ }
518
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).createDataset(options);
519
+ };
520
+ /**
521
+ * Fetches a dataset by its slug or ID, returning metadata and entries.
522
+ *
523
+ * @param slugOrId - The slug or ID of the dataset to fetch
524
+ * @param options - Optional configuration
525
+ * @returns The dataset with metadata and entries
526
+ *
527
+ * @example
528
+ * ```typescript
529
+ * // Get dataset by slug
530
+ * const dataset = await langwatch.datasets.get("product-qa");
531
+ *
532
+ * // Typed dataset
533
+ * type MyDatasetEntry = { input: string; expected_output: string; };
534
+ * const dataset = await langwatch.datasets.get<MyDatasetEntry>("my-dataset");
535
+ *
536
+ * // Iterate over entries
537
+ * for (const entry of dataset.entries) {
538
+ * console.log(entry.entry.input);
539
+ * }
540
+ * ```
541
+ */
542
+ this.get = (slugOrId, options) => {
543
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).getDataset(slugOrId, options);
544
+ };
545
+ /**
546
+ * Updates a dataset by its slug or ID.
547
+ *
548
+ * @param slugOrId - The slug or ID of the dataset to update
549
+ * @param options - Fields to update (name, columnTypes)
550
+ * @returns The updated dataset metadata
551
+ */
552
+ this.update = (slugOrId, options) => {
553
+ if (options.name == null && options.columnTypes == null) {
554
+ throw new DatasetValidationError(
555
+ "At least one field (name or columnTypes) must be provided for update"
556
+ );
557
+ }
558
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).updateDataset(slugOrId, options);
559
+ };
560
+ /**
561
+ * Deletes (archives) a dataset by its slug or ID.
562
+ *
563
+ * @param slugOrId - The slug or ID of the dataset to delete
564
+ * @returns The archived dataset metadata
565
+ */
566
+ this.delete = (slugOrId) => {
567
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).deleteDataset(slugOrId);
568
+ };
569
+ /**
570
+ * Creates records in a dataset in batch.
571
+ *
572
+ * @param slugOrId - The slug or ID of the dataset
573
+ * @param entries - Array of record entries to create
574
+ * @returns The created records with IDs
575
+ */
576
+ this.createRecords = (slugOrId, entries) => {
577
+ if (!entries || entries.length === 0) {
578
+ throw new DatasetValidationError("Entries must not be empty");
579
+ }
580
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).createRecords(slugOrId, entries);
581
+ };
582
+ /**
583
+ * Updates a single record in a dataset.
584
+ *
585
+ * @param slugOrId - The slug or ID of the dataset
586
+ * @param recordId - The ID of the record to update
587
+ * @param entry - The updated entry data
588
+ * @returns The updated record
589
+ */
590
+ this.updateRecord = (slugOrId, recordId, entry) => {
591
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).updateRecord(slugOrId, recordId, entry);
592
+ };
593
+ /**
594
+ * Deletes records from a dataset by IDs.
595
+ *
596
+ * @param slugOrId - The slug or ID of the dataset
597
+ * @param recordIds - Array of record IDs to delete
598
+ * @returns Object with the count of deleted records
599
+ */
600
+ this.deleteRecords = (slugOrId, recordIds) => {
601
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).deleteRecords(slugOrId, recordIds);
602
+ };
603
+ /**
604
+ * Lists records in a dataset with optional pagination.
605
+ *
606
+ * @param slugOrId - The slug or ID of the dataset
607
+ * @param options - Pagination options (page, limit)
608
+ * @returns Paginated list of records
609
+ *
610
+ * @example
611
+ * ```typescript
612
+ * // List first page of records
613
+ * const result = await langwatch.datasets.listRecords("my-dataset");
614
+ *
615
+ * // With pagination
616
+ * const page2 = await langwatch.datasets.listRecords("my-dataset", { page: 2, limit: 25 });
617
+ * ```
618
+ */
619
+ this.listRecords = (slugOrId, options) => {
620
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).listRecords(slugOrId, options);
621
+ };
622
+ /**
623
+ * Uploads a file to a dataset with a configurable strategy for handling existing datasets.
624
+ *
625
+ * Strategies:
626
+ * - `"append"` (default): Upload to existing dataset; if not found, create a new one.
627
+ * - `"replace"`: Delete all existing records, then upload; if not found, create a new one.
628
+ * - `"error"`: Throw a 409 error if the dataset already exists; if not found, create a new one.
629
+ *
630
+ * @param slugOrId - The slug or ID of the dataset
631
+ * @param file - The file to upload (File or Blob)
632
+ * @param options - Upload options including the ifExists strategy
633
+ * @returns The upload result
634
+ *
635
+ * @example
636
+ * ```typescript
637
+ * const file = new File(["input,output\nhello,world"], "data.csv", { type: "text/csv" });
638
+ *
639
+ * // Append to existing or create new
640
+ * await langwatch.datasets.upload("my-dataset", file);
641
+ *
642
+ * // Replace all records
643
+ * await langwatch.datasets.upload("my-dataset", file, { ifExists: "replace" });
644
+ *
645
+ * // Fail if dataset already exists
646
+ * await langwatch.datasets.upload("my-dataset", file, { ifExists: "error" });
647
+ * ```
648
+ */
649
+ this.upload = (slugOrId, file, options) => {
650
+ var _a;
651
+ if (!file) {
652
+ throw new DatasetValidationError("File must be provided for upload");
653
+ }
654
+ return _chunkOHM7JUMRjs.__privateGet.call(void 0, this, _datasetService).uploadWithStrategy(
655
+ slugOrId,
656
+ file,
657
+ (_a = options == null ? void 0 : options.ifExists) != null ? _a : "append"
658
+ );
659
+ };
660
+ _chunkOHM7JUMRjs.__privateSet.call(void 0, this, _datasetService, new DatasetService(config));
661
+ }
662
+ };
663
+ _datasetService = new WeakMap();
664
+
665
+
666
+
667
+
668
+
669
+
670
+
671
+
672
+
673
+ exports.DatasetError = DatasetError; exports.DatasetNotFoundError = DatasetNotFoundError; exports.DatasetApiError = DatasetApiError; exports.DatasetValidationError = DatasetValidationError; exports.DatasetPlanLimitError = DatasetPlanLimitError; exports.DatasetService = DatasetService; exports.DatasetsFacade = DatasetsFacade;
674
+ //# sourceMappingURL=chunk-CGFG5FCC.js.map