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.
- package/dist/{add-2I554R6L.mjs → add-7QFHK67E.mjs} +10 -7
- package/dist/{add-2I554R6L.mjs.map → add-7QFHK67E.mjs.map} +1 -1
- package/dist/{add-FJ2SMVQE.js → add-EJSXUSD6.js} +13 -10
- package/dist/add-EJSXUSD6.js.map +1 -0
- package/dist/assign-5UEB6AJU.js +50 -0
- package/dist/assign-5UEB6AJU.js.map +1 -0
- package/dist/assign-JCCQ5D7I.mjs +50 -0
- package/dist/assign-JCCQ5D7I.mjs.map +1 -0
- package/dist/chunk-2BJPLPLU.js +33 -0
- package/dist/chunk-2BJPLPLU.js.map +1 -0
- package/dist/chunk-2OHGLTXZ.mjs +51 -0
- package/dist/chunk-2OHGLTXZ.mjs.map +1 -0
- package/dist/chunk-2VVANTLB.js +68 -0
- package/dist/chunk-2VVANTLB.js.map +1 -0
- package/dist/{chunk-L5Z7F7MG.mjs → chunk-43STSE3B.mjs} +2 -2
- package/dist/chunk-47F7UDHN.js +76 -0
- package/dist/chunk-47F7UDHN.js.map +1 -0
- package/dist/chunk-5PMWRY5J.js +80 -0
- package/dist/chunk-5PMWRY5J.js.map +1 -0
- package/dist/chunk-7FD7BEJP.mjs +63 -0
- package/dist/chunk-7FD7BEJP.mjs.map +1 -0
- package/dist/{chunk-PIF2RJWZ.js → chunk-AK4YCKWK.js} +107 -108
- package/dist/chunk-AK4YCKWK.js.map +1 -0
- package/dist/chunk-AMPLL3EP.js +70 -0
- package/dist/chunk-AMPLL3EP.js.map +1 -0
- package/dist/chunk-CGFG5FCC.js +674 -0
- package/dist/chunk-CGFG5FCC.js.map +1 -0
- package/dist/chunk-CLYXJJ6C.js +66 -0
- package/dist/chunk-CLYXJJ6C.js.map +1 -0
- package/dist/{chunk-WSESRS6L.mjs → chunk-COKOLKOR.mjs} +8 -6
- package/dist/{chunk-WSESRS6L.mjs.map → chunk-COKOLKOR.mjs.map} +1 -1
- package/dist/chunk-COMOCQA6.mjs +13 -0
- package/dist/chunk-COMOCQA6.mjs.map +1 -0
- package/dist/chunk-CYRJSLKD.js +68 -0
- package/dist/chunk-CYRJSLKD.js.map +1 -0
- package/dist/{chunk-BJUXJHMQ.js → chunk-D2FHOR76.js} +2 -2
- package/dist/{chunk-BJUXJHMQ.js.map → chunk-D2FHOR76.js.map} +1 -1
- package/dist/{chunk-5LYWRKDF.js → chunk-DB6OJGP4.js} +2 -60
- package/dist/chunk-DB6OJGP4.js.map +1 -0
- package/dist/chunk-DTEKJ3UD.mjs +66 -0
- package/dist/chunk-DTEKJ3UD.mjs.map +1 -0
- package/dist/{chunk-NW32UPEI.js → chunk-DUG35J5N.js} +17 -17
- package/dist/{chunk-NW32UPEI.js.map → chunk-DUG35J5N.js.map} +1 -1
- package/dist/chunk-DWHR6QJK.mjs +46 -0
- package/dist/chunk-DWHR6QJK.mjs.map +1 -0
- package/dist/{chunk-A7CF6ZGH.mjs → chunk-ESGWN42J.mjs} +2 -2
- package/dist/{chunk-FMYG6IOZ.mjs → chunk-FARZEN6T.mjs} +2 -2
- package/dist/chunk-FG3JQBJB.mjs +68 -0
- package/dist/chunk-FG3JQBJB.mjs.map +1 -0
- package/dist/chunk-FKIH4XCX.js +63 -0
- package/dist/chunk-FKIH4XCX.js.map +1 -0
- package/dist/chunk-GLCAOVJA.js +100 -0
- package/dist/chunk-GLCAOVJA.js.map +1 -0
- package/dist/{chunk-VCC7F6B7.js → chunk-H6F5OGSL.js} +11 -11
- package/dist/{chunk-VCC7F6B7.js.map → chunk-H6F5OGSL.js.map} +1 -1
- package/dist/chunk-HHRXMHVH.js +54 -0
- package/dist/chunk-HHRXMHVH.js.map +1 -0
- package/dist/{chunk-ZLCERT3X.js → chunk-HPQFHP6K.js} +12 -10
- package/dist/chunk-HPQFHP6K.js.map +1 -0
- package/dist/chunk-I2LDJPTG.mjs +100 -0
- package/dist/chunk-I2LDJPTG.mjs.map +1 -0
- package/dist/chunk-ILLEMTW3.mjs +674 -0
- package/dist/chunk-ILLEMTW3.mjs.map +1 -0
- package/dist/{chunk-OLI6GF46.js → chunk-JWF5KHWM.js} +16 -14
- package/dist/chunk-JWF5KHWM.js.map +1 -0
- package/dist/{chunk-CWXQ53NE.mjs → chunk-JYR4TXSB.mjs} +10 -8
- package/dist/chunk-JYR4TXSB.mjs.map +1 -0
- package/dist/chunk-KH64V3CL.mjs +54 -0
- package/dist/chunk-KH64V3CL.mjs.map +1 -0
- package/dist/chunk-KJSFJ5Z3.js +51 -0
- package/dist/chunk-KJSFJ5Z3.js.map +1 -0
- package/dist/{chunk-WASZSPD7.mjs → chunk-L3IOXWDG.mjs} +100 -101
- package/dist/chunk-L3IOXWDG.mjs.map +1 -0
- package/dist/{chunk-SSONRNFB.mjs → chunk-LN33ZL4Z.mjs} +2 -2
- package/dist/{chunk-SSONRNFB.mjs.map → chunk-LN33ZL4Z.mjs.map} +1 -1
- package/dist/{chunk-5M66X6SZ.mjs → chunk-LULJYN3P.mjs} +3 -3
- package/dist/chunk-M3WJZUOE.js +13 -0
- package/dist/chunk-M3WJZUOE.js.map +1 -0
- package/dist/{chunk-JVIQJFUE.mjs → chunk-M4IBRWUC.mjs} +2 -60
- package/dist/chunk-M4IBRWUC.mjs.map +1 -0
- package/dist/chunk-NIW2SFZZ.mjs +85 -0
- package/dist/chunk-NIW2SFZZ.mjs.map +1 -0
- package/dist/chunk-NMACMKQN.mjs +68 -0
- package/dist/chunk-NMACMKQN.mjs.map +1 -0
- package/dist/chunk-OAAMDWSK.js +65 -0
- package/dist/chunk-OAAMDWSK.js.map +1 -0
- package/dist/chunk-PO6XRHYW.mjs +80 -0
- package/dist/chunk-PO6XRHYW.mjs.map +1 -0
- package/dist/chunk-QH3WUSKF.mjs +33 -0
- package/dist/chunk-QH3WUSKF.mjs.map +1 -0
- package/dist/chunk-RKJDDUGQ.mjs +65 -0
- package/dist/chunk-RKJDDUGQ.mjs.map +1 -0
- package/dist/chunk-TCO73AV5.mjs +53 -0
- package/dist/chunk-TCO73AV5.mjs.map +1 -0
- package/dist/chunk-TQYUM3WH.mjs +70 -0
- package/dist/chunk-TQYUM3WH.mjs.map +1 -0
- package/dist/chunk-TV6ZXLE5.mjs +76 -0
- package/dist/chunk-TV6ZXLE5.mjs.map +1 -0
- package/dist/chunk-VMDYRBQ7.js +85 -0
- package/dist/chunk-VMDYRBQ7.js.map +1 -0
- package/dist/chunk-WE2PHCFS.js +53 -0
- package/dist/chunk-WE2PHCFS.js.map +1 -0
- package/dist/chunk-WLMXMXHE.js +54 -0
- package/dist/chunk-WLMXMXHE.js.map +1 -0
- package/dist/chunk-X7QBE6AA.js +46 -0
- package/dist/chunk-X7QBE6AA.js.map +1 -0
- package/dist/chunk-YTR56IZO.mjs +54 -0
- package/dist/chunk-YTR56IZO.mjs.map +1 -0
- package/dist/{chunk-QLBNSGWC.js → chunk-Z6MQQXMS.js} +4 -4
- package/dist/{chunk-QLBNSGWC.js.map → chunk-Z6MQQXMS.js.map} +1 -1
- package/dist/{chunk-QNT5P6VV.js → chunk-ZZL6VZZU.js} +2 -2
- package/dist/{chunk-QNT5P6VV.js.map → chunk-ZZL6VZZU.js.map} +1 -1
- package/dist/cli/index.js +467 -20
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/index.mjs +467 -20
- package/dist/cli/index.mjs.map +1 -1
- package/dist/create-45FMHT6B.mjs +78 -0
- package/dist/create-45FMHT6B.mjs.map +1 -0
- package/dist/create-4OA73B7I.mjs +44 -0
- package/dist/create-4OA73B7I.mjs.map +1 -0
- package/dist/create-4U5BPFCT.mjs +51 -0
- package/dist/create-4U5BPFCT.mjs.map +1 -0
- package/dist/create-ARJEJDYU.mjs +18 -0
- package/dist/create-CQ7W2OAA.js +78 -0
- package/dist/create-CQ7W2OAA.js.map +1 -0
- package/dist/create-FI6HBFTB.mjs +63 -0
- package/dist/create-FI6HBFTB.mjs.map +1 -0
- package/dist/create-FYLUSZTP.js +38 -0
- package/dist/create-FYLUSZTP.js.map +1 -0
- package/dist/create-GGYYU5KM.mjs +51 -0
- package/dist/create-GGYYU5KM.mjs.map +1 -0
- package/dist/create-K5LFAS4E.mjs +61 -0
- package/dist/create-K5LFAS4E.mjs.map +1 -0
- package/dist/create-KAPF2AOL.js +44 -0
- package/dist/create-KAPF2AOL.js.map +1 -0
- package/dist/create-LWG7ZHEW.mjs +71 -0
- package/dist/create-LWG7ZHEW.mjs.map +1 -0
- package/dist/create-MXYMAFMF.js +71 -0
- package/dist/create-MXYMAFMF.js.map +1 -0
- package/dist/create-NFYHBFF5.mjs +50 -0
- package/dist/create-NFYHBFF5.mjs.map +1 -0
- package/dist/create-OSAXTSUC.js +51 -0
- package/dist/create-OSAXTSUC.js.map +1 -0
- package/dist/create-RPHO5TZX.js +51 -0
- package/dist/create-RPHO5TZX.js.map +1 -0
- package/dist/create-RRI5ZTMI.mjs +51 -0
- package/dist/create-RRI5ZTMI.mjs.map +1 -0
- package/dist/create-UKLLNRXV.js +61 -0
- package/dist/create-UKLLNRXV.js.map +1 -0
- package/dist/create-UZ5NDYPV.js +88 -0
- package/dist/create-UZ5NDYPV.js.map +1 -0
- package/dist/create-WV2NQDV5.js +63 -0
- package/dist/create-WV2NQDV5.js.map +1 -0
- package/dist/create-XGD3GULQ.js +50 -0
- package/dist/create-XGD3GULQ.js.map +1 -0
- package/dist/create-XZXVGMKU.js +51 -0
- package/dist/create-XZXVGMKU.js.map +1 -0
- package/dist/create-Z2XFL2HX.js +18 -0
- package/dist/create-Z2XFL2HX.js.map +1 -0
- package/dist/create-Z7DUMMQ4.mjs +38 -0
- package/dist/create-Z7DUMMQ4.mjs.map +1 -0
- package/dist/create-ZU4L3XOF.mjs +88 -0
- package/dist/create-ZU4L3XOF.mjs.map +1 -0
- package/dist/delete-22LDMLNG.mjs +61 -0
- package/dist/delete-22LDMLNG.mjs.map +1 -0
- package/dist/delete-2S67GS6A.mjs +40 -0
- package/dist/delete-2S67GS6A.mjs.map +1 -0
- package/dist/delete-3WCCA5O2.mjs +44 -0
- package/dist/delete-3WCCA5O2.mjs.map +1 -0
- package/dist/delete-4QNGDUH6.js +44 -0
- package/dist/delete-4QNGDUH6.js.map +1 -0
- package/dist/delete-555RUBQA.js +55 -0
- package/dist/delete-555RUBQA.js.map +1 -0
- package/dist/delete-5NINT2KV.mjs +42 -0
- package/dist/delete-5NINT2KV.mjs.map +1 -0
- package/dist/delete-5VDH4Q3Z.js +44 -0
- package/dist/delete-5VDH4Q3Z.js.map +1 -0
- package/dist/delete-6JPJPG4B.js +38 -0
- package/dist/delete-6JPJPG4B.js.map +1 -0
- package/dist/delete-6ZD3ARMB.js +61 -0
- package/dist/delete-6ZD3ARMB.js.map +1 -0
- package/dist/delete-AOSVEVNL.mjs +44 -0
- package/dist/delete-AOSVEVNL.mjs.map +1 -0
- package/dist/delete-BLTSYYZQ.js +40 -0
- package/dist/delete-BLTSYYZQ.js.map +1 -0
- package/dist/delete-CTE3RNKB.mjs +42 -0
- package/dist/delete-CTE3RNKB.mjs.map +1 -0
- package/dist/delete-HEF4DLSV.mjs +38 -0
- package/dist/delete-HEF4DLSV.mjs.map +1 -0
- package/dist/delete-I36NLS2V.mjs +65 -0
- package/dist/delete-I36NLS2V.mjs.map +1 -0
- package/dist/delete-J2P2Y2BW.mjs +63 -0
- package/dist/delete-J2P2Y2BW.mjs.map +1 -0
- package/dist/delete-KIXZ73DF.mjs +38 -0
- package/dist/delete-KIXZ73DF.mjs.map +1 -0
- package/dist/delete-L3SU34X6.mjs +44 -0
- package/dist/delete-L3SU34X6.mjs.map +1 -0
- package/dist/delete-N6OZW65U.js +44 -0
- package/dist/delete-N6OZW65U.js.map +1 -0
- package/dist/delete-PPEXA2V4.js +42 -0
- package/dist/delete-PPEXA2V4.js.map +1 -0
- package/dist/delete-PXGB35PF.js +65 -0
- package/dist/delete-PXGB35PF.js.map +1 -0
- package/dist/delete-QVE52G3Q.mjs +42 -0
- package/dist/delete-QVE52G3Q.mjs.map +1 -0
- package/dist/delete-R5TSAZOU.js +42 -0
- package/dist/delete-R5TSAZOU.js.map +1 -0
- package/dist/delete-RIHVCQ6G.mjs +55 -0
- package/dist/delete-RIHVCQ6G.mjs.map +1 -0
- package/dist/delete-UWPOVLSO.js +38 -0
- package/dist/delete-UWPOVLSO.js.map +1 -0
- package/dist/delete-XKF7KO4Y.js +63 -0
- package/dist/delete-XKF7KO4Y.js.map +1 -0
- package/dist/delete-ZY2UCN3W.js +42 -0
- package/dist/delete-ZY2UCN3W.js.map +1 -0
- package/dist/download-2Q5T4WW2.js +96 -0
- package/dist/download-2Q5T4WW2.js.map +1 -0
- package/dist/download-7RBJ3GZM.mjs +96 -0
- package/dist/download-7RBJ3GZM.mjs.map +1 -0
- package/dist/duplicate-7N6B5PJD.mjs +48 -0
- package/dist/duplicate-7N6B5PJD.mjs.map +1 -0
- package/dist/duplicate-HZGUFROD.js +48 -0
- package/dist/duplicate-HZGUFROD.js.map +1 -0
- package/dist/export-PP5LG6Q7.js +91 -0
- package/dist/export-PP5LG6Q7.js.map +1 -0
- package/dist/export-TGKA6WA4.mjs +91 -0
- package/dist/export-TGKA6WA4.mjs.map +1 -0
- package/dist/get-2AXSP6AP.js +62 -0
- package/dist/get-2AXSP6AP.js.map +1 -0
- package/dist/get-6UQYEENU.mjs +55 -0
- package/dist/get-6UQYEENU.mjs.map +1 -0
- package/dist/get-73K7EOMU.mjs +53 -0
- package/dist/get-73K7EOMU.mjs.map +1 -0
- package/dist/get-7JYKMJXV.mjs +85 -0
- package/dist/get-7JYKMJXV.mjs.map +1 -0
- package/dist/get-7V7OBWY5.js +86 -0
- package/dist/get-7V7OBWY5.js.map +1 -0
- package/dist/get-CBNUMPUN.mjs +64 -0
- package/dist/get-CBNUMPUN.mjs.map +1 -0
- package/dist/get-E2RIDN65.mjs +70 -0
- package/dist/get-E2RIDN65.mjs.map +1 -0
- package/dist/get-EN3CQXA7.js +51 -0
- package/dist/get-EN3CQXA7.js.map +1 -0
- package/dist/get-GHUHFWC3.js +58 -0
- package/dist/get-GHUHFWC3.js.map +1 -0
- package/dist/get-GQTPK2MW.mjs +51 -0
- package/dist/get-GQTPK2MW.mjs.map +1 -0
- package/dist/get-I2CQCKFW.mjs +62 -0
- package/dist/get-I2CQCKFW.mjs.map +1 -0
- package/dist/get-IDYGZX5O.mjs +51 -0
- package/dist/get-IDYGZX5O.mjs.map +1 -0
- package/dist/get-JAWJ5RIB.mjs +66 -0
- package/dist/get-JAWJ5RIB.mjs.map +1 -0
- package/dist/get-JYN765FP.js +53 -0
- package/dist/get-JYN765FP.js.map +1 -0
- package/dist/get-MHGIJVZ5.js +51 -0
- package/dist/get-MHGIJVZ5.js.map +1 -0
- package/dist/get-NIA7XUS2.mjs +56 -0
- package/dist/get-NIA7XUS2.mjs.map +1 -0
- package/dist/get-PM5HD5BJ.js +64 -0
- package/dist/get-PM5HD5BJ.js.map +1 -0
- package/dist/get-PR65PTQ5.mjs +86 -0
- package/dist/get-PR65PTQ5.mjs.map +1 -0
- package/dist/get-PYWLY7QQ.mjs +71 -0
- package/dist/get-PYWLY7QQ.mjs.map +1 -0
- package/dist/get-QMCMYTDV.mjs +58 -0
- package/dist/get-QMCMYTDV.mjs.map +1 -0
- package/dist/get-QNYINIDO.mjs +95 -0
- package/dist/get-QNYINIDO.mjs.map +1 -0
- package/dist/get-S7MFACWM.js +70 -0
- package/dist/get-S7MFACWM.js.map +1 -0
- package/dist/get-SBMD2X2P.js +66 -0
- package/dist/get-SBMD2X2P.js.map +1 -0
- package/dist/get-T754IOEI.js +85 -0
- package/dist/get-T754IOEI.js.map +1 -0
- package/dist/get-TOXTYIN5.js +71 -0
- package/dist/get-TOXTYIN5.js.map +1 -0
- package/dist/get-UCHL4WHT.js +95 -0
- package/dist/get-UCHL4WHT.js.map +1 -0
- package/dist/get-Y22XVMEO.js +55 -0
- package/dist/get-Y22XVMEO.js.map +1 -0
- package/dist/get-ZEUJA3KA.js +56 -0
- package/dist/get-ZEUJA3KA.js.map +1 -0
- package/dist/{implementation-8fGNr_Mq.d.ts → implementation-7POf4yX4.d.ts} +1 -1
- package/dist/{implementation-DPQ9ez-J.d.mts → implementation-BbuGM8_W.d.mts} +1 -1
- package/dist/index.d.mts +395 -28
- package/dist/index.d.ts +395 -28
- package/dist/index.js +49 -196
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +35 -182
- package/dist/index.mjs.map +1 -1
- package/dist/list-3JR4HKGF.mjs +70 -0
- package/dist/list-3JR4HKGF.mjs.map +1 -0
- package/dist/list-6BRQWVVV.js +74 -0
- package/dist/list-6BRQWVVV.js.map +1 -0
- package/dist/list-6JTFDJAI.mjs +93 -0
- package/dist/list-6JTFDJAI.mjs.map +1 -0
- package/dist/list-7LV6GOZO.js +85 -0
- package/dist/list-7LV6GOZO.js.map +1 -0
- package/dist/list-AEX4S72W.mjs +74 -0
- package/dist/list-AEX4S72W.mjs.map +1 -0
- package/dist/list-AGELVAP7.js +70 -0
- package/dist/list-AGELVAP7.js.map +1 -0
- package/dist/list-ARBOOOYN.mjs +81 -0
- package/dist/list-ARBOOOYN.mjs.map +1 -0
- package/dist/list-AYOW6OF7.js +73 -0
- package/dist/list-AYOW6OF7.js.map +1 -0
- package/dist/list-BAKCZVTL.mjs +78 -0
- package/dist/list-BAKCZVTL.mjs.map +1 -0
- package/dist/list-BDNGLOLK.mjs +77 -0
- package/dist/list-BDNGLOLK.mjs.map +1 -0
- package/dist/list-C6DPYHQ2.js +109 -0
- package/dist/list-C6DPYHQ2.js.map +1 -0
- package/dist/list-E7YPBCAF.mjs +85 -0
- package/dist/list-E7YPBCAF.mjs.map +1 -0
- package/dist/list-EPB36Y7W.mjs +49 -0
- package/dist/list-EPB36Y7W.mjs.map +1 -0
- package/dist/list-FLTPMAHR.js +93 -0
- package/dist/list-FLTPMAHR.js.map +1 -0
- package/dist/list-FPIWJ65T.mjs +83 -0
- package/dist/list-FPIWJ65T.mjs.map +1 -0
- package/dist/list-GN3SAZG2.js +83 -0
- package/dist/list-GN3SAZG2.js.map +1 -0
- package/dist/list-JK36QVS2.js +73 -0
- package/dist/list-JK36QVS2.js.map +1 -0
- package/dist/list-JRWFJU5H.js +81 -0
- package/dist/list-JRWFJU5H.js.map +1 -0
- package/dist/list-KIJ4ILEN.mjs +78 -0
- package/dist/list-KIJ4ILEN.mjs.map +1 -0
- package/dist/list-KQKELE44.mjs +73 -0
- package/dist/list-KQKELE44.mjs.map +1 -0
- package/dist/list-LMMRRFZC.js +77 -0
- package/dist/list-LMMRRFZC.js.map +1 -0
- package/dist/{list-53QTWXGF.mjs → list-N7WIOJ5A.mjs} +29 -68
- package/dist/list-N7WIOJ5A.mjs.map +1 -0
- package/dist/list-RS4QL7NE.mjs +83 -0
- package/dist/list-RS4QL7NE.mjs.map +1 -0
- package/dist/list-SDMJ2GJE.js +81 -0
- package/dist/list-SDMJ2GJE.js.map +1 -0
- package/dist/list-UKGJOVJE.js +49 -0
- package/dist/list-UKGJOVJE.js.map +1 -0
- package/dist/list-UOTJUE2P.js +79 -0
- package/dist/list-UOTJUE2P.js.map +1 -0
- package/dist/list-W2MYF4RU.js +78 -0
- package/dist/list-W2MYF4RU.js.map +1 -0
- package/dist/list-WYYGGV5V.mjs +81 -0
- package/dist/list-WYYGGV5V.mjs.map +1 -0
- package/dist/list-WZ4KHBMF.mjs +73 -0
- package/dist/list-WZ4KHBMF.mjs.map +1 -0
- package/dist/list-XTOWXYB2.js +83 -0
- package/dist/list-XTOWXYB2.js.map +1 -0
- package/dist/list-Z5EEMYRQ.js +78 -0
- package/dist/list-Z5EEMYRQ.js.map +1 -0
- package/dist/list-ZB53NL6Z.mjs +79 -0
- package/dist/list-ZB53NL6Z.mjs.map +1 -0
- package/dist/{login-QWXRNDAM.mjs → login-4AX6AOKI.mjs} +20 -3
- package/dist/login-4AX6AOKI.mjs.map +1 -0
- package/dist/{login-XBFOVP6G.js → login-H3SQDBT7.js} +21 -4
- package/dist/login-H3SQDBT7.js.map +1 -0
- package/dist/observability-sdk/index.d.mts +3 -3
- package/dist/observability-sdk/index.d.ts +3 -3
- package/dist/observability-sdk/index.js +8 -6
- package/dist/observability-sdk/index.js.map +1 -1
- package/dist/observability-sdk/index.mjs +8 -6
- package/dist/observability-sdk/instrumentation/langchain/index.d.mts +1 -1
- package/dist/observability-sdk/instrumentation/langchain/index.d.ts +1 -1
- package/dist/observability-sdk/instrumentation/langchain/index.js +17 -16
- package/dist/observability-sdk/instrumentation/langchain/index.js.map +1 -1
- package/dist/observability-sdk/instrumentation/langchain/index.mjs +3 -2
- package/dist/observability-sdk/instrumentation/langchain/index.mjs.map +1 -1
- package/dist/observability-sdk/setup/node/index.js +6 -5
- package/dist/observability-sdk/setup/node/index.js.map +1 -1
- package/dist/observability-sdk/setup/node/index.mjs +5 -4
- package/dist/pull-64HVVOBC.mjs +23 -0
- package/dist/pull-QIANBELG.js +23 -0
- package/dist/pull-QIANBELG.js.map +1 -0
- package/dist/push-GXLGORLM.mjs +23 -0
- package/dist/push-GXLGORLM.mjs.map +1 -0
- package/dist/push-I3BJSL6N.js +23 -0
- package/dist/push-I3BJSL6N.js.map +1 -0
- package/dist/query-UF2LDBR4.js +158 -0
- package/dist/query-UF2LDBR4.js.map +1 -0
- package/dist/query-ZI7HJSIY.mjs +158 -0
- package/dist/query-ZI7HJSIY.mjs.map +1 -0
- package/dist/records-add-4LX4JHLO.mjs +94 -0
- package/dist/records-add-4LX4JHLO.mjs.map +1 -0
- package/dist/records-add-WTIGBJV4.js +94 -0
- package/dist/records-add-WTIGBJV4.js.map +1 -0
- package/dist/records-delete-IY37NWPN.mjs +42 -0
- package/dist/records-delete-IY37NWPN.mjs.map +1 -0
- package/dist/records-delete-MLOG4DM4.js +42 -0
- package/dist/records-delete-MLOG4DM4.js.map +1 -0
- package/dist/records-list-EP6OCFH5.js +85 -0
- package/dist/records-list-EP6OCFH5.js.map +1 -0
- package/dist/records-list-RIDOAE2V.mjs +85 -0
- package/dist/records-list-RIDOAE2V.mjs.map +1 -0
- package/dist/records-update-5QZBDYUJ.js +49 -0
- package/dist/records-update-5QZBDYUJ.js.map +1 -0
- package/dist/records-update-JINO26IA.mjs +49 -0
- package/dist/records-update-JINO26IA.mjs.map +1 -0
- package/dist/{remove-Q573N52S.mjs → remove-HLVK7VUB.mjs} +10 -7
- package/dist/{remove-Q573N52S.mjs.map → remove-HLVK7VUB.mjs.map} +1 -1
- package/dist/{remove-KIZPGE7J.js → remove-LDX2BSUH.js} +12 -9
- package/dist/remove-LDX2BSUH.js.map +1 -0
- package/dist/rename-FP7X3GJJ.mjs +38 -0
- package/dist/rename-FP7X3GJJ.mjs.map +1 -0
- package/dist/rename-PUSZYLZ7.js +38 -0
- package/dist/rename-PUSZYLZ7.js.map +1 -0
- package/dist/restore-5L5MLISA.mjs +63 -0
- package/dist/restore-5L5MLISA.mjs.map +1 -0
- package/dist/restore-OXNQMRMJ.js +63 -0
- package/dist/restore-OXNQMRMJ.js.map +1 -0
- package/dist/run-AIGCDUDF.mjs +143 -0
- package/dist/run-AIGCDUDF.mjs.map +1 -0
- package/dist/run-CKZ6VNKK.js +143 -0
- package/dist/run-CKZ6VNKK.js.map +1 -0
- package/dist/run-FE4QMJO5.mjs +67 -0
- package/dist/run-FE4QMJO5.mjs.map +1 -0
- package/dist/run-FJDOSV5E.js +128 -0
- package/dist/run-FJDOSV5E.js.map +1 -0
- package/dist/run-GUSPWLCC.mjs +128 -0
- package/dist/run-GUSPWLCC.mjs.map +1 -0
- package/dist/run-KNCB7OEA.js +86 -0
- package/dist/run-KNCB7OEA.js.map +1 -0
- package/dist/run-KZKAHFBR.js +67 -0
- package/dist/run-KZKAHFBR.js.map +1 -0
- package/dist/run-QW2HL4EK.mjs +86 -0
- package/dist/run-QW2HL4EK.mjs.map +1 -0
- package/dist/run-UZVJBWGG.js +130 -0
- package/dist/run-UZVJBWGG.js.map +1 -0
- package/dist/run-WZ4CSMTP.mjs +130 -0
- package/dist/run-WZ4CSMTP.mjs.map +1 -0
- package/dist/search-5B32YGSP.mjs +112 -0
- package/dist/search-5B32YGSP.mjs.map +1 -0
- package/dist/search-J5GDX5JK.js +112 -0
- package/dist/search-J5GDX5JK.js.map +1 -0
- package/dist/set-2DYJNVS5.mjs +62 -0
- package/dist/set-2DYJNVS5.mjs.map +1 -0
- package/dist/set-S5L5QSYZ.js +62 -0
- package/dist/set-S5L5QSYZ.js.map +1 -0
- package/dist/status-OIXOYFH4.mjs +101 -0
- package/dist/status-OIXOYFH4.mjs.map +1 -0
- package/dist/status-Q2PEMYJT.mjs +70 -0
- package/dist/status-Q2PEMYJT.mjs.map +1 -0
- package/dist/status-QRK56VLF.js +70 -0
- package/dist/status-QRK56VLF.js.map +1 -0
- package/dist/status-T7NOWM4X.js +101 -0
- package/dist/status-T7NOWM4X.js.map +1 -0
- package/dist/{sync-YPJIIHKC.js → sync-IDSAYUGO.js} +16 -13
- package/dist/sync-IDSAYUGO.js.map +1 -0
- package/dist/{sync-TM7JZNNW.mjs → sync-LA27E4UB.mjs} +12 -9
- package/dist/{sync-TM7JZNNW.mjs.map → sync-LA27E4UB.mjs.map} +1 -1
- package/dist/{types-DQiByKdr.d.ts → types-B4TSe7JR.d.ts} +6546 -2251
- package/dist/{types-CoHIwxng.d.mts → types-CWY5yQki.d.mts} +6546 -2251
- package/dist/update-3B43ZW4X.mjs +53 -0
- package/dist/update-3B43ZW4X.mjs.map +1 -0
- package/dist/update-3C6Y2Y2P.js +53 -0
- package/dist/update-3C6Y2Y2P.js.map +1 -0
- package/dist/update-4D7R3VYO.js +75 -0
- package/dist/update-4D7R3VYO.js.map +1 -0
- package/dist/update-4FC4YPW7.mjs +71 -0
- package/dist/update-4FC4YPW7.mjs.map +1 -0
- package/dist/update-4YMVL4UT.mjs +74 -0
- package/dist/update-4YMVL4UT.mjs.map +1 -0
- package/dist/update-7ZEJO5SB.js +74 -0
- package/dist/update-7ZEJO5SB.js.map +1 -0
- package/dist/update-BADZ6GRL.js +66 -0
- package/dist/update-BADZ6GRL.js.map +1 -0
- package/dist/update-DLFJBCI2.js +68 -0
- package/dist/update-DLFJBCI2.js.map +1 -0
- package/dist/update-EB7WMPOP.js +53 -0
- package/dist/update-EB7WMPOP.js.map +1 -0
- package/dist/update-EG6BZOLC.mjs +51 -0
- package/dist/update-EG6BZOLC.mjs.map +1 -0
- package/dist/update-FKL5Y73R.js +69 -0
- package/dist/update-FKL5Y73R.js.map +1 -0
- package/dist/update-GWTLCIAT.mjs +69 -0
- package/dist/update-GWTLCIAT.mjs.map +1 -0
- package/dist/update-MFZOMTRJ.mjs +51 -0
- package/dist/update-MFZOMTRJ.mjs.map +1 -0
- package/dist/update-PSY46JJD.mjs +68 -0
- package/dist/update-PSY46JJD.mjs.map +1 -0
- package/dist/update-PXCMJWY3.mjs +53 -0
- package/dist/update-PXCMJWY3.mjs.map +1 -0
- package/dist/update-R72C65QF.mjs +66 -0
- package/dist/update-R72C65QF.mjs.map +1 -0
- package/dist/update-RCZ47II5.js +52 -0
- package/dist/update-RCZ47II5.js.map +1 -0
- package/dist/update-RPD2OXXQ.js +51 -0
- package/dist/update-RPD2OXXQ.js.map +1 -0
- package/dist/update-VLY6LJVM.js +51 -0
- package/dist/update-VLY6LJVM.js.map +1 -0
- package/dist/update-WKM6XI4V.mjs +75 -0
- package/dist/update-WKM6XI4V.mjs.map +1 -0
- package/dist/update-WQK5Q34V.mjs +52 -0
- package/dist/update-WQK5Q34V.mjs.map +1 -0
- package/dist/update-YMWBN55I.js +71 -0
- package/dist/update-YMWBN55I.js.map +1 -0
- package/dist/upload-6LF5GVLP.js +73 -0
- package/dist/upload-6LF5GVLP.js.map +1 -0
- package/dist/upload-QWAITH5R.mjs +73 -0
- package/dist/upload-QWAITH5R.mjs.map +1 -0
- package/dist/versions-HIYVXIKM.js +82 -0
- package/dist/versions-HIYVXIKM.js.map +1 -0
- package/dist/versions-JPUSBSTF.mjs +82 -0
- package/dist/versions-JPUSBSTF.mjs.map +1 -0
- package/package.json +1 -1
- package/dist/add-FJ2SMVQE.js.map +0 -1
- package/dist/chunk-5LYWRKDF.js.map +0 -1
- package/dist/chunk-CWXQ53NE.mjs.map +0 -1
- package/dist/chunk-JVIQJFUE.mjs.map +0 -1
- package/dist/chunk-OLI6GF46.js.map +0 -1
- package/dist/chunk-PIF2RJWZ.js.map +0 -1
- package/dist/chunk-WASZSPD7.mjs.map +0 -1
- package/dist/chunk-ZLCERT3X.js.map +0 -1
- package/dist/list-53QTWXGF.mjs.map +0 -1
- package/dist/list-LBDUK454.js +0 -148
- package/dist/list-LBDUK454.js.map +0 -1
- package/dist/login-QWXRNDAM.mjs.map +0 -1
- package/dist/login-XBFOVP6G.js.map +0 -1
- package/dist/pull-3B3CBSSM.js +0 -20
- package/dist/pull-3B3CBSSM.js.map +0 -1
- package/dist/pull-WK6P7KS2.mjs +0 -20
- package/dist/push-G457CXVG.mjs +0 -20
- package/dist/push-GKFQL6GO.js +0 -20
- package/dist/push-GKFQL6GO.js.map +0 -1
- package/dist/remove-KIZPGE7J.js.map +0 -1
- package/dist/sync-YPJIIHKC.js.map +0 -1
- /package/dist/{chunk-L5Z7F7MG.mjs.map → chunk-43STSE3B.mjs.map} +0 -0
- /package/dist/{chunk-A7CF6ZGH.mjs.map → chunk-ESGWN42J.mjs.map} +0 -0
- /package/dist/{chunk-FMYG6IOZ.mjs.map → chunk-FARZEN6T.mjs.map} +0 -0
- /package/dist/{chunk-5M66X6SZ.mjs.map → chunk-LULJYN3P.mjs.map} +0 -0
- /package/dist/{pull-WK6P7KS2.mjs.map → create-ARJEJDYU.mjs.map} +0 -0
- /package/dist/{push-G457CXVG.mjs.map → pull-64HVVOBC.mjs.map} +0 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunk47F7UDHNjs = require('./chunk-47F7UDHN.js');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkF6E4XQQUjs = require('./chunk-F6E4XQQU.js');
|
|
8
|
+
require('./chunk-2BJPLPLU.js');
|
|
9
|
+
require('./chunk-D2FHOR76.js');
|
|
10
|
+
require('./chunk-OHM7JUMR.js');
|
|
11
|
+
|
|
12
|
+
// src/cli/commands/scenarios/delete.ts
|
|
13
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
14
|
+
var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
15
|
+
var deleteScenarioCommand = async (id, options) => {
|
|
16
|
+
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
17
|
+
const service = new (0, _chunk47F7UDHNjs.ScenariosApiService)();
|
|
18
|
+
const resolveSpinner = _ora2.default.call(void 0, `Finding scenario "${id}"...`).start();
|
|
19
|
+
let scenarioName;
|
|
20
|
+
try {
|
|
21
|
+
const scenario = await service.get(id);
|
|
22
|
+
scenarioName = scenario.name;
|
|
23
|
+
resolveSpinner.succeed(`Found scenario "${scenarioName}"`);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
resolveSpinner.fail();
|
|
26
|
+
if (error instanceof _chunk47F7UDHNjs.ScenariosApiError) {
|
|
27
|
+
console.error(_chalk2.default.red(`Error: ${error.message}`));
|
|
28
|
+
} else {
|
|
29
|
+
console.error(
|
|
30
|
+
_chalk2.default.red(
|
|
31
|
+
`Error finding scenario: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
32
|
+
)
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
process.exit(1);
|
|
36
|
+
}
|
|
37
|
+
const deleteSpinner = _ora2.default.call(void 0, `Archiving scenario "${scenarioName}"...`).start();
|
|
38
|
+
try {
|
|
39
|
+
await service.delete(id);
|
|
40
|
+
deleteSpinner.succeed(
|
|
41
|
+
`Archived scenario "${_chalk2.default.cyan(scenarioName)}"`
|
|
42
|
+
);
|
|
43
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
44
|
+
console.log(JSON.stringify({ id, name: scenarioName, archived: true }, null, 2));
|
|
45
|
+
}
|
|
46
|
+
} catch (error) {
|
|
47
|
+
deleteSpinner.fail();
|
|
48
|
+
if (error instanceof _chunk47F7UDHNjs.ScenariosApiError) {
|
|
49
|
+
console.error(_chalk2.default.red(`Error: ${error.message}`));
|
|
50
|
+
} else {
|
|
51
|
+
console.error(
|
|
52
|
+
_chalk2.default.red(
|
|
53
|
+
`Error archiving scenario: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
54
|
+
)
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
process.exit(1);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
exports.deleteScenarioCommand = deleteScenarioCommand;
|
|
63
|
+
//# sourceMappingURL=delete-XKF7KO4Y.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/delete-XKF7KO4Y.js","../src/cli/commands/scenarios/delete.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B;AACA;ACXA,4EAAkB;AAClB,oEAAgB;AAOT,IAAM,sBAAA,EAAwB,MAAA,CAAO,EAAA,EAAY,OAAA,EAAA,GAAiD;AACvG,EAAA,0CAAA,CAAY;AAEZ,EAAA,MAAM,QAAA,EAAU,IAAI,yCAAA,CAAoB,CAAA;AAExC,EAAA,MAAM,eAAA,EAAiB,2BAAA,CAAI,kBAAA,EAAqB,EAAE,CAAA,IAAA,CAAM,CAAA,CAAE,KAAA,CAAM,CAAA;AAEhE,EAAA,IAAI,YAAA;AACJ,EAAA,IAAI;AACF,IAAA,MAAM,SAAA,EAAW,MAAM,OAAA,CAAQ,GAAA,CAAI,EAAE,CAAA;AACrC,IAAA,aAAA,EAAe,QAAA,CAAS,IAAA;AACxB,IAAA,cAAA,CAAe,OAAA,CAAQ,CAAA,gBAAA,EAAmB,YAAY,CAAA,CAAA,CAAG,CAAA;AAAA,EAC3D,EAAA,MAAA,CAAS,KAAA,EAAO;AACd,IAAA,cAAA,CAAe,IAAA,CAAK,CAAA;AACpB,IAAA,GAAA,CAAI,MAAA,WAAiB,kCAAA,EAAmB;AACtC,MAAA,OAAA,CAAQ,KAAA,CAAM,eAAA,CAAM,GAAA,CAAI,CAAA,OAAA,EAAU,KAAA,CAAM,OAAO,CAAA,CAAA;AAC1C,IAAA;AACG,MAAA;AACA,QAAA;AACwC,UAAA;AAC9C,QAAA;AACF,MAAA;AACF,IAAA;AACc,IAAA;AAChB,EAAA;AAEiD,EAAA;AAE7C,EAAA;AACqB,IAAA;AACT,IAAA;AACkC,MAAA;AAChD,IAAA;AAEa,IAAA;AAC4B,MAAA;AACzC,IAAA;AACc,EAAA;AACK,IAAA;AACqB,IAAA;AACS,MAAA;AAC1C,IAAA;AACG,MAAA;AACA,QAAA;AACyB,UAAA;AAC/B,QAAA;AACF,MAAA;AACF,IAAA;AACc,IAAA;AAChB,EAAA;AACF;ADCsD;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/delete-XKF7KO4Y.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport {\n ScenariosApiService,\n ScenariosApiError,\n} from \"@/client-sdk/services/scenarios\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const deleteScenarioCommand = async (id: string, options?: { format?: string }): Promise<void> => {\n checkApiKey();\n\n const service = new ScenariosApiService();\n\n const resolveSpinner = ora(`Finding scenario \"${id}\"...`).start();\n\n let scenarioName: string;\n try {\n const scenario = await service.get(id);\n scenarioName = scenario.name;\n resolveSpinner.succeed(`Found scenario \"${scenarioName}\"`);\n } catch (error) {\n resolveSpinner.fail();\n if (error instanceof ScenariosApiError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error finding scenario: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n ),\n );\n }\n process.exit(1);\n }\n\n const deleteSpinner = ora(`Archiving scenario \"${scenarioName}\"...`).start();\n\n try {\n await service.delete(id);\n deleteSpinner.succeed(\n `Archived scenario \"${chalk.cyan(scenarioName)}\"`,\n );\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify({ id, name: scenarioName, archived: true }, null, 2));\n }\n } catch (error) {\n deleteSpinner.fail();\n if (error instanceof ScenariosApiError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error archiving scenario: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n ),\n );\n }\n process.exit(1);\n }\n};\n"]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkCYRJSLKDjs = require('./chunk-CYRJSLKD.js');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkF6E4XQQUjs = require('./chunk-F6E4XQQU.js');
|
|
8
|
+
require('./chunk-2BJPLPLU.js');
|
|
9
|
+
require('./chunk-D2FHOR76.js');
|
|
10
|
+
require('./chunk-OHM7JUMR.js');
|
|
11
|
+
|
|
12
|
+
// src/cli/commands/dashboards/delete.ts
|
|
13
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
14
|
+
var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
15
|
+
var deleteDashboardCommand = async (id, options) => {
|
|
16
|
+
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
17
|
+
const service = new (0, _chunkCYRJSLKDjs.DashboardsApiService)();
|
|
18
|
+
const spinner = _ora2.default.call(void 0, `Deleting dashboard "${id}"...`).start();
|
|
19
|
+
try {
|
|
20
|
+
const result = await service.delete(id);
|
|
21
|
+
spinner.succeed(`Deleted dashboard "${_chalk2.default.cyan(result.name)}" ${_chalk2.default.gray(`(id: ${result.id})`)}`);
|
|
22
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
23
|
+
console.log(JSON.stringify(result, null, 2));
|
|
24
|
+
}
|
|
25
|
+
} catch (error) {
|
|
26
|
+
spinner.fail();
|
|
27
|
+
if (error instanceof _chunkCYRJSLKDjs.DashboardsApiError) {
|
|
28
|
+
console.error(_chalk2.default.red(`Error: ${error.message}`));
|
|
29
|
+
} else {
|
|
30
|
+
console.error(
|
|
31
|
+
_chalk2.default.red(
|
|
32
|
+
`Error deleting dashboard: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
33
|
+
)
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
process.exit(1);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
exports.deleteDashboardCommand = deleteDashboardCommand;
|
|
42
|
+
//# sourceMappingURL=delete-ZY2UCN3W.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/delete-ZY2UCN3W.js","../src/cli/commands/dashboards/delete.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B;AACA;ACXA,4EAAkB;AAClB,oEAAgB;AAOT,IAAM,uBAAA,EAAyB,MAAA,CAAO,EAAA,EAAY,OAAA,EAAA,GAAiD;AACxG,EAAA,0CAAA,CAAY;AAEZ,EAAA,MAAM,QAAA,EAAU,IAAI,0CAAA,CAAqB,CAAA;AACzC,EAAA,MAAM,QAAA,EAAU,2BAAA,CAAI,oBAAA,EAAuB,EAAE,CAAA,IAAA,CAAM,CAAA,CAAE,KAAA,CAAM,CAAA;AAE3D,EAAA,IAAI;AACF,IAAA,MAAM,OAAA,EAAS,MAAM,OAAA,CAAQ,MAAA,CAAO,EAAE,CAAA;AACtC,IAAA,OAAA,CAAQ,OAAA,CAAQ,CAAA,mBAAA,EAAsB,eAAA,CAAM,IAAA,CAAK,MAAA,CAAO,IAAI,CAAC,CAAA,EAAA,EAAK,eAAA,CAAM,IAAA,CAAK,CAAA,KAAA,EAAQ,MAAA,CAAO,EAAE,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA;AAElE,IAAA;AACa,MAAA;AAC7C,IAAA;AACc,EAAA;AACD,IAAA;AAC4B,IAAA;AACW,MAAA;AAC7C,IAAA;AACG,MAAA;AACA,QAAA;AACiF,UAAA;AACvF,QAAA;AACF,MAAA;AACF,IAAA;AACc,IAAA;AAChB,EAAA;AACF;ADIuG;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/delete-ZY2UCN3W.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport {\n DashboardsApiService,\n DashboardsApiError,\n} from \"@/client-sdk/services/dashboards/dashboards-api.service\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const deleteDashboardCommand = async (id: string, options?: { format?: string }): Promise<void> => {\n checkApiKey();\n\n const service = new DashboardsApiService();\n const spinner = ora(`Deleting dashboard \"${id}\"...`).start();\n\n try {\n const result = await service.delete(id);\n spinner.succeed(`Deleted dashboard \"${chalk.cyan(result.name)}\" ${chalk.gray(`(id: ${result.id})`)}`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(result, null, 2));\n }\n } catch (error) {\n spinner.fail();\n if (error instanceof DashboardsApiError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error deleting dashboard: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n ),\n );\n }\n process.exit(1);\n }\n};\n"]}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkX7QBE6AAjs = require('./chunk-X7QBE6AA.js');
|
|
5
|
+
require('./chunk-CGFG5FCC.js');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
var _chunkF6E4XQQUjs = require('./chunk-F6E4XQQU.js');
|
|
9
|
+
require('./chunk-2VVANTLB.js');
|
|
10
|
+
require('./chunk-2BJPLPLU.js');
|
|
11
|
+
require('./chunk-H6F5OGSL.js');
|
|
12
|
+
require('./chunk-D2FHOR76.js');
|
|
13
|
+
require('./chunk-DB6OJGP4.js');
|
|
14
|
+
require('./chunk-OHM7JUMR.js');
|
|
15
|
+
|
|
16
|
+
// src/cli/commands/dataset/download.ts
|
|
17
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
18
|
+
var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
19
|
+
var escapeCsvField = (value) => {
|
|
20
|
+
if (value === null || value === void 0) return "";
|
|
21
|
+
const str = typeof value === "string" ? value : JSON.stringify(value);
|
|
22
|
+
if (str.includes(",") || str.includes('"') || str.includes("\n")) {
|
|
23
|
+
return `"${str.replace(/"/g, '""')}"`;
|
|
24
|
+
}
|
|
25
|
+
return str;
|
|
26
|
+
};
|
|
27
|
+
var toCsv = (records) => {
|
|
28
|
+
if (records.length === 0) return "";
|
|
29
|
+
const allKeys = /* @__PURE__ */ new Set();
|
|
30
|
+
records.forEach((record) => {
|
|
31
|
+
Object.keys(record.entry).forEach((key) => allKeys.add(key));
|
|
32
|
+
});
|
|
33
|
+
const headers = Array.from(allKeys);
|
|
34
|
+
const headerRow = headers.map(escapeCsvField).join(",");
|
|
35
|
+
const dataRows = records.map(
|
|
36
|
+
(record) => headers.map((key) => escapeCsvField(record.entry[key])).join(",")
|
|
37
|
+
);
|
|
38
|
+
return [headerRow, ...dataRows].join("\n");
|
|
39
|
+
};
|
|
40
|
+
var toJsonl = (records) => {
|
|
41
|
+
return records.map((record) => JSON.stringify(record.entry)).join("\n");
|
|
42
|
+
};
|
|
43
|
+
var downloadCommand = async (slugOrId, options) => {
|
|
44
|
+
var _a;
|
|
45
|
+
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
46
|
+
const format = (_a = options.format) != null ? _a : "csv";
|
|
47
|
+
if (format !== "csv" && format !== "jsonl") {
|
|
48
|
+
console.error(
|
|
49
|
+
_chalk2.default.red(`Invalid format "${format}". Use "csv" or "jsonl".`)
|
|
50
|
+
);
|
|
51
|
+
process.exit(1);
|
|
52
|
+
}
|
|
53
|
+
const service = _chunkX7QBE6AAjs.createDatasetService.call(void 0, );
|
|
54
|
+
const spinner = _ora2.default.call(void 0,
|
|
55
|
+
`Downloading dataset "${slugOrId}" as ${format.toUpperCase()}...`
|
|
56
|
+
).start();
|
|
57
|
+
try {
|
|
58
|
+
const allRecords = [];
|
|
59
|
+
let page = 1;
|
|
60
|
+
const limit = 1e3;
|
|
61
|
+
let result;
|
|
62
|
+
do {
|
|
63
|
+
result = await service.listRecords(slugOrId, { page, limit });
|
|
64
|
+
allRecords.push(...result.data);
|
|
65
|
+
page++;
|
|
66
|
+
} while (page <= result.pagination.totalPages);
|
|
67
|
+
spinner.stop();
|
|
68
|
+
if (format === "csv") {
|
|
69
|
+
const output = toCsv(allRecords);
|
|
70
|
+
if (output) {
|
|
71
|
+
process.stdout.write(output + "\n");
|
|
72
|
+
}
|
|
73
|
+
} else {
|
|
74
|
+
const output = toJsonl(allRecords);
|
|
75
|
+
if (output) {
|
|
76
|
+
process.stdout.write(output + "\n");
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
process.stderr.write(
|
|
80
|
+
_chalk2.default.green(
|
|
81
|
+
`Downloaded ${allRecords.length} record${allRecords.length !== 1 ? "s" : ""} from "${slugOrId}"
|
|
82
|
+
`
|
|
83
|
+
)
|
|
84
|
+
);
|
|
85
|
+
} catch (error) {
|
|
86
|
+
spinner.fail("Failed to download dataset");
|
|
87
|
+
_chunkX7QBE6AAjs.handleDatasetCommandError.call(void 0, error, "downloading dataset");
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
exports.downloadCommand = downloadCommand; exports.escapeCsvField = escapeCsvField; exports.toCsv = toCsv; exports.toJsonl = toJsonl;
|
|
96
|
+
//# sourceMappingURL=download-2Q5T4WW2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/download-2Q5T4WW2.js","../src/cli/commands/dataset/download.ts"],"names":[],"mappings":"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","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/download-2Q5T4WW2.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport type { DatasetRecordResponse } from \"@/client-sdk/services/datasets/types\";\nimport { checkApiKey } from \"../../utils/apiKey\";\nimport { createDatasetService } from \"./service-factory\";\nimport { handleDatasetCommandError } from \"./error-handler\";\n\n/**\n * Escapes a value for inclusion in a CSV field.\n * Wraps in quotes if the value contains commas, quotes, or newlines.\n */\nexport const escapeCsvField = (value: unknown): string => {\n if (value === null || value === undefined) return \"\";\n const str = typeof value === \"string\" ? value : JSON.stringify(value);\n if (str.includes(\",\") || str.includes('\"') || str.includes(\"\\n\")) {\n return `\"${str.replace(/\"/g, '\"\"')}\"`;\n }\n return str;\n};\n\n/**\n * Converts records to CSV format.\n *\n * @param records - Array of dataset record responses\n * @returns CSV string with header row\n */\nexport const toCsv = (records: DatasetRecordResponse[]): string => {\n if (records.length === 0) return \"\";\n\n // Collect all keys from all entries\n const allKeys = new Set<string>();\n records.forEach((record) => {\n Object.keys(record.entry).forEach((key) => allKeys.add(key));\n });\n const headers = Array.from(allKeys);\n\n const headerRow = headers.map(escapeCsvField).join(\",\");\n const dataRows = records.map((record) =>\n headers.map((key) => escapeCsvField(record.entry[key])).join(\",\"),\n );\n\n return [headerRow, ...dataRows].join(\"\\n\");\n};\n\n/**\n * Converts records to JSONL format (one JSON object per line).\n */\nexport const toJsonl = (records: DatasetRecordResponse[]): string => {\n return records.map((record) => JSON.stringify(record.entry)).join(\"\\n\");\n};\n\n/**\n * Downloads all records from a dataset and outputs as CSV or JSONL to stdout.\n */\nexport const downloadCommand = async (\n slugOrId: string,\n options: { format?: string },\n): Promise<void> => {\n checkApiKey();\n\n const format = options.format ?? \"csv\";\n if (format !== \"csv\" && format !== \"jsonl\") {\n console.error(\n chalk.red(`Invalid format \"${format}\". Use \"csv\" or \"jsonl\".`),\n );\n process.exit(1);\n }\n\n const service = createDatasetService();\n const spinner = ora(\n `Downloading dataset \"${slugOrId}\" as ${format.toUpperCase()}...`,\n ).start();\n\n try {\n // Fetch all records by paging through results\n const allRecords: DatasetRecordResponse[] = [];\n let page = 1;\n const limit = 1000;\n\n let result;\n do {\n result = await service.listRecords(slugOrId, { page, limit });\n allRecords.push(...result.data);\n page++;\n } while (page <= result.pagination.totalPages);\n\n spinner.stop();\n\n // Output to stdout\n if (format === \"csv\") {\n const output = toCsv(allRecords);\n if (output) {\n process.stdout.write(output + \"\\n\");\n }\n } else {\n const output = toJsonl(allRecords);\n if (output) {\n process.stdout.write(output + \"\\n\");\n }\n }\n\n // Summary to stderr so it doesn't pollute piped output\n process.stderr.write(\n chalk.green(\n `Downloaded ${allRecords.length} record${allRecords.length !== 1 ? \"s\" : \"\"} from \"${slugOrId}\"\\n`,\n ),\n );\n } catch (error) {\n spinner.fail(\"Failed to download dataset\");\n handleDatasetCommandError(error, \"downloading dataset\");\n }\n};\n"]}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createDatasetService,
|
|
3
|
+
handleDatasetCommandError
|
|
4
|
+
} from "./chunk-DWHR6QJK.mjs";
|
|
5
|
+
import "./chunk-ILLEMTW3.mjs";
|
|
6
|
+
import {
|
|
7
|
+
checkApiKey
|
|
8
|
+
} from "./chunk-DHJKJVY7.mjs";
|
|
9
|
+
import "./chunk-FG3JQBJB.mjs";
|
|
10
|
+
import "./chunk-QH3WUSKF.mjs";
|
|
11
|
+
import "./chunk-43STSE3B.mjs";
|
|
12
|
+
import "./chunk-LN33ZL4Z.mjs";
|
|
13
|
+
import "./chunk-M4IBRWUC.mjs";
|
|
14
|
+
import "./chunk-URTD2WOC.mjs";
|
|
15
|
+
|
|
16
|
+
// src/cli/commands/dataset/download.ts
|
|
17
|
+
import chalk from "chalk";
|
|
18
|
+
import ora from "ora";
|
|
19
|
+
var escapeCsvField = (value) => {
|
|
20
|
+
if (value === null || value === void 0) return "";
|
|
21
|
+
const str = typeof value === "string" ? value : JSON.stringify(value);
|
|
22
|
+
if (str.includes(",") || str.includes('"') || str.includes("\n")) {
|
|
23
|
+
return `"${str.replace(/"/g, '""')}"`;
|
|
24
|
+
}
|
|
25
|
+
return str;
|
|
26
|
+
};
|
|
27
|
+
var toCsv = (records) => {
|
|
28
|
+
if (records.length === 0) return "";
|
|
29
|
+
const allKeys = /* @__PURE__ */ new Set();
|
|
30
|
+
records.forEach((record) => {
|
|
31
|
+
Object.keys(record.entry).forEach((key) => allKeys.add(key));
|
|
32
|
+
});
|
|
33
|
+
const headers = Array.from(allKeys);
|
|
34
|
+
const headerRow = headers.map(escapeCsvField).join(",");
|
|
35
|
+
const dataRows = records.map(
|
|
36
|
+
(record) => headers.map((key) => escapeCsvField(record.entry[key])).join(",")
|
|
37
|
+
);
|
|
38
|
+
return [headerRow, ...dataRows].join("\n");
|
|
39
|
+
};
|
|
40
|
+
var toJsonl = (records) => {
|
|
41
|
+
return records.map((record) => JSON.stringify(record.entry)).join("\n");
|
|
42
|
+
};
|
|
43
|
+
var downloadCommand = async (slugOrId, options) => {
|
|
44
|
+
var _a;
|
|
45
|
+
checkApiKey();
|
|
46
|
+
const format = (_a = options.format) != null ? _a : "csv";
|
|
47
|
+
if (format !== "csv" && format !== "jsonl") {
|
|
48
|
+
console.error(
|
|
49
|
+
chalk.red(`Invalid format "${format}". Use "csv" or "jsonl".`)
|
|
50
|
+
);
|
|
51
|
+
process.exit(1);
|
|
52
|
+
}
|
|
53
|
+
const service = createDatasetService();
|
|
54
|
+
const spinner = ora(
|
|
55
|
+
`Downloading dataset "${slugOrId}" as ${format.toUpperCase()}...`
|
|
56
|
+
).start();
|
|
57
|
+
try {
|
|
58
|
+
const allRecords = [];
|
|
59
|
+
let page = 1;
|
|
60
|
+
const limit = 1e3;
|
|
61
|
+
let result;
|
|
62
|
+
do {
|
|
63
|
+
result = await service.listRecords(slugOrId, { page, limit });
|
|
64
|
+
allRecords.push(...result.data);
|
|
65
|
+
page++;
|
|
66
|
+
} while (page <= result.pagination.totalPages);
|
|
67
|
+
spinner.stop();
|
|
68
|
+
if (format === "csv") {
|
|
69
|
+
const output = toCsv(allRecords);
|
|
70
|
+
if (output) {
|
|
71
|
+
process.stdout.write(output + "\n");
|
|
72
|
+
}
|
|
73
|
+
} else {
|
|
74
|
+
const output = toJsonl(allRecords);
|
|
75
|
+
if (output) {
|
|
76
|
+
process.stdout.write(output + "\n");
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
process.stderr.write(
|
|
80
|
+
chalk.green(
|
|
81
|
+
`Downloaded ${allRecords.length} record${allRecords.length !== 1 ? "s" : ""} from "${slugOrId}"
|
|
82
|
+
`
|
|
83
|
+
)
|
|
84
|
+
);
|
|
85
|
+
} catch (error) {
|
|
86
|
+
spinner.fail("Failed to download dataset");
|
|
87
|
+
handleDatasetCommandError(error, "downloading dataset");
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
export {
|
|
91
|
+
downloadCommand,
|
|
92
|
+
escapeCsvField,
|
|
93
|
+
toCsv,
|
|
94
|
+
toJsonl
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=download-7RBJ3GZM.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/dataset/download.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport type { DatasetRecordResponse } from \"@/client-sdk/services/datasets/types\";\nimport { checkApiKey } from \"../../utils/apiKey\";\nimport { createDatasetService } from \"./service-factory\";\nimport { handleDatasetCommandError } from \"./error-handler\";\n\n/**\n * Escapes a value for inclusion in a CSV field.\n * Wraps in quotes if the value contains commas, quotes, or newlines.\n */\nexport const escapeCsvField = (value: unknown): string => {\n if (value === null || value === undefined) return \"\";\n const str = typeof value === \"string\" ? value : JSON.stringify(value);\n if (str.includes(\",\") || str.includes('\"') || str.includes(\"\\n\")) {\n return `\"${str.replace(/\"/g, '\"\"')}\"`;\n }\n return str;\n};\n\n/**\n * Converts records to CSV format.\n *\n * @param records - Array of dataset record responses\n * @returns CSV string with header row\n */\nexport const toCsv = (records: DatasetRecordResponse[]): string => {\n if (records.length === 0) return \"\";\n\n // Collect all keys from all entries\n const allKeys = new Set<string>();\n records.forEach((record) => {\n Object.keys(record.entry).forEach((key) => allKeys.add(key));\n });\n const headers = Array.from(allKeys);\n\n const headerRow = headers.map(escapeCsvField).join(\",\");\n const dataRows = records.map((record) =>\n headers.map((key) => escapeCsvField(record.entry[key])).join(\",\"),\n );\n\n return [headerRow, ...dataRows].join(\"\\n\");\n};\n\n/**\n * Converts records to JSONL format (one JSON object per line).\n */\nexport const toJsonl = (records: DatasetRecordResponse[]): string => {\n return records.map((record) => JSON.stringify(record.entry)).join(\"\\n\");\n};\n\n/**\n * Downloads all records from a dataset and outputs as CSV or JSONL to stdout.\n */\nexport const downloadCommand = async (\n slugOrId: string,\n options: { format?: string },\n): Promise<void> => {\n checkApiKey();\n\n const format = options.format ?? \"csv\";\n if (format !== \"csv\" && format !== \"jsonl\") {\n console.error(\n chalk.red(`Invalid format \"${format}\". Use \"csv\" or \"jsonl\".`),\n );\n process.exit(1);\n }\n\n const service = createDatasetService();\n const spinner = ora(\n `Downloading dataset \"${slugOrId}\" as ${format.toUpperCase()}...`,\n ).start();\n\n try {\n // Fetch all records by paging through results\n const allRecords: DatasetRecordResponse[] = [];\n let page = 1;\n const limit = 1000;\n\n let result;\n do {\n result = await service.listRecords(slugOrId, { page, limit });\n allRecords.push(...result.data);\n page++;\n } while (page <= result.pagination.totalPages);\n\n spinner.stop();\n\n // Output to stdout\n if (format === \"csv\") {\n const output = toCsv(allRecords);\n if (output) {\n process.stdout.write(output + \"\\n\");\n }\n } else {\n const output = toJsonl(allRecords);\n if (output) {\n process.stdout.write(output + \"\\n\");\n }\n }\n\n // Summary to stderr so it doesn't pollute piped output\n process.stderr.write(\n chalk.green(\n `Downloaded ${allRecords.length} record${allRecords.length !== 1 ? \"s\" : \"\"} from \"${slugOrId}\"\\n`,\n ),\n );\n } catch (error) {\n spinner.fail(\"Failed to download dataset\");\n handleDatasetCommandError(error, \"downloading dataset\");\n }\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAUT,IAAM,iBAAiB,CAAC,UAA2B;AACxD,MAAI,UAAU,QAAQ,UAAU,OAAW,QAAO;AAClD,QAAM,MAAM,OAAO,UAAU,WAAW,QAAQ,KAAK,UAAU,KAAK;AACpE,MAAI,IAAI,SAAS,GAAG,KAAK,IAAI,SAAS,GAAG,KAAK,IAAI,SAAS,IAAI,GAAG;AAChE,WAAO,IAAI,IAAI,QAAQ,MAAM,IAAI,CAAC;AAAA,EACpC;AACA,SAAO;AACT;AAQO,IAAM,QAAQ,CAAC,YAA6C;AACjE,MAAI,QAAQ,WAAW,EAAG,QAAO;AAGjC,QAAM,UAAU,oBAAI,IAAY;AAChC,UAAQ,QAAQ,CAAC,WAAW;AAC1B,WAAO,KAAK,OAAO,KAAK,EAAE,QAAQ,CAAC,QAAQ,QAAQ,IAAI,GAAG,CAAC;AAAA,EAC7D,CAAC;AACD,QAAM,UAAU,MAAM,KAAK,OAAO;AAElC,QAAM,YAAY,QAAQ,IAAI,cAAc,EAAE,KAAK,GAAG;AACtD,QAAM,WAAW,QAAQ;AAAA,IAAI,CAAC,WAC5B,QAAQ,IAAI,CAAC,QAAQ,eAAe,OAAO,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG;AAAA,EAClE;AAEA,SAAO,CAAC,WAAW,GAAG,QAAQ,EAAE,KAAK,IAAI;AAC3C;AAKO,IAAM,UAAU,CAAC,YAA6C;AACnE,SAAO,QAAQ,IAAI,CAAC,WAAW,KAAK,UAAU,OAAO,KAAK,CAAC,EAAE,KAAK,IAAI;AACxE;AAKO,IAAM,kBAAkB,OAC7B,UACA,YACkB;AAzDpB;AA0DE,cAAY;AAEZ,QAAM,UAAS,aAAQ,WAAR,YAAkB;AACjC,MAAI,WAAW,SAAS,WAAW,SAAS;AAC1C,YAAQ;AAAA,MACN,MAAM,IAAI,mBAAmB,MAAM,0BAA0B;AAAA,IAC/D;AACA,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,UAAU,qBAAqB;AACrC,QAAM,UAAU;AAAA,IACd,wBAAwB,QAAQ,QAAQ,OAAO,YAAY,CAAC;AAAA,EAC9D,EAAE,MAAM;AAER,MAAI;AAEF,UAAM,aAAsC,CAAC;AAC7C,QAAI,OAAO;AACX,UAAM,QAAQ;AAEd,QAAI;AACJ,OAAG;AACD,eAAS,MAAM,QAAQ,YAAY,UAAU,EAAE,MAAM,MAAM,CAAC;AAC5D,iBAAW,KAAK,GAAG,OAAO,IAAI;AAC9B;AAAA,IACF,SAAS,QAAQ,OAAO,WAAW;AAEnC,YAAQ,KAAK;AAGb,QAAI,WAAW,OAAO;AACpB,YAAM,SAAS,MAAM,UAAU;AAC/B,UAAI,QAAQ;AACV,gBAAQ,OAAO,MAAM,SAAS,IAAI;AAAA,MACpC;AAAA,IACF,OAAO;AACL,YAAM,SAAS,QAAQ,UAAU;AACjC,UAAI,QAAQ;AACV,gBAAQ,OAAO,MAAM,SAAS,IAAI;AAAA,MACpC;AAAA,IACF;AAGA,YAAQ,OAAO;AAAA,MACb,MAAM;AAAA,QACJ,cAAc,WAAW,MAAM,UAAU,WAAW,WAAW,IAAI,MAAM,EAAE,UAAU,QAAQ;AAAA;AAAA,MAC/F;AAAA,IACF;AAAA,EACF,SAAS,OAAO;AACd,YAAQ,KAAK,4BAA4B;AACzC,8BAA0B,OAAO,qBAAqB;AAAA,EACxD;AACF;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SuitesApiError,
|
|
3
|
+
SuitesApiService
|
|
4
|
+
} from "./chunk-NIW2SFZZ.mjs";
|
|
5
|
+
import {
|
|
6
|
+
checkApiKey
|
|
7
|
+
} from "./chunk-DHJKJVY7.mjs";
|
|
8
|
+
import "./chunk-QH3WUSKF.mjs";
|
|
9
|
+
import "./chunk-LN33ZL4Z.mjs";
|
|
10
|
+
import "./chunk-URTD2WOC.mjs";
|
|
11
|
+
|
|
12
|
+
// src/cli/commands/suites/duplicate.ts
|
|
13
|
+
import chalk from "chalk";
|
|
14
|
+
import ora from "ora";
|
|
15
|
+
var duplicateSuiteCommand = async (id, options) => {
|
|
16
|
+
checkApiKey();
|
|
17
|
+
const service = new SuitesApiService();
|
|
18
|
+
const spinner = ora(`Duplicating suite "${id}"...`).start();
|
|
19
|
+
try {
|
|
20
|
+
const suite = await service.duplicate(id);
|
|
21
|
+
spinner.succeed(`Suite duplicated as "${suite.name}" (${suite.id})`);
|
|
22
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
23
|
+
console.log(JSON.stringify(suite, null, 2));
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
console.log();
|
|
27
|
+
console.log(` ${chalk.gray("New ID:")} ${chalk.green(suite.id)}`);
|
|
28
|
+
console.log(` ${chalk.gray("Name:")} ${chalk.cyan(suite.name)}`);
|
|
29
|
+
console.log(` ${chalk.gray("Slug:")} ${chalk.yellow(suite.slug)}`);
|
|
30
|
+
console.log();
|
|
31
|
+
} catch (error) {
|
|
32
|
+
spinner.fail();
|
|
33
|
+
if (error instanceof SuitesApiError) {
|
|
34
|
+
console.error(chalk.red(`Error: ${error.message}`));
|
|
35
|
+
} else {
|
|
36
|
+
console.error(
|
|
37
|
+
chalk.red(
|
|
38
|
+
`Error: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
39
|
+
)
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
export {
|
|
46
|
+
duplicateSuiteCommand
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=duplicate-7N6B5PJD.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/suites/duplicate.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport {\n SuitesApiService,\n SuitesApiError,\n} from \"@/client-sdk/services/suites\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const duplicateSuiteCommand = async (\n id: string,\n options?: { format?: string },\n): Promise<void> => {\n checkApiKey();\n\n const service = new SuitesApiService();\n const spinner = ora(`Duplicating suite \"${id}\"...`).start();\n\n try {\n const suite = await service.duplicate(id);\n\n spinner.succeed(`Suite duplicated as \"${suite.name}\" (${suite.id})`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(suite, null, 2));\n return;\n }\n\n console.log();\n console.log(` ${chalk.gray(\"New ID:\")} ${chalk.green(suite.id)}`);\n console.log(` ${chalk.gray(\"Name:\")} ${chalk.cyan(suite.name)}`);\n console.log(` ${chalk.gray(\"Slug:\")} ${chalk.yellow(suite.slug)}`);\n console.log();\n } catch (error) {\n spinner.fail();\n if (error instanceof SuitesApiError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n ),\n );\n }\n process.exit(1);\n }\n};\n"],"mappings":";;;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAOT,IAAM,wBAAwB,OACnC,IACA,YACkB;AAClB,cAAY;AAEZ,QAAM,UAAU,IAAI,iBAAiB;AACrC,QAAM,UAAU,IAAI,sBAAsB,EAAE,MAAM,EAAE,MAAM;AAE1D,MAAI;AACF,UAAM,QAAQ,MAAM,QAAQ,UAAU,EAAE;AAExC,YAAQ,QAAQ,wBAAwB,MAAM,IAAI,MAAM,MAAM,EAAE,GAAG;AAEnE,SAAI,mCAAS,YAAW,QAAQ;AAC9B,cAAQ,IAAI,KAAK,UAAU,OAAO,MAAM,CAAC,CAAC;AAC1C;AAAA,IACF;AAEA,YAAQ,IAAI;AACZ,YAAQ,IAAI,KAAK,MAAM,KAAK,SAAS,CAAC,MAAM,MAAM,MAAM,MAAM,EAAE,CAAC,EAAE;AACnE,YAAQ,IAAI,KAAK,MAAM,KAAK,OAAO,CAAC,QAAQ,MAAM,KAAK,MAAM,IAAI,CAAC,EAAE;AACpE,YAAQ,IAAI,KAAK,MAAM,KAAK,OAAO,CAAC,QAAQ,MAAM,OAAO,MAAM,IAAI,CAAC,EAAE;AACtE,YAAQ,IAAI;AAAA,EACd,SAAS,OAAO;AACd,YAAQ,KAAK;AACb,QAAI,iBAAiB,gBAAgB;AACnC,cAAQ,MAAM,MAAM,IAAI,UAAU,MAAM,OAAO,EAAE,CAAC;AAAA,IACpD,OAAO;AACL,cAAQ;AAAA,QACN,MAAM;AAAA,UACJ,UAAU,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,QACpE;AAAA,MACF;AAAA,IACF;AACA,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkVMDYRBQ7js = require('./chunk-VMDYRBQ7.js');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkF6E4XQQUjs = require('./chunk-F6E4XQQU.js');
|
|
8
|
+
require('./chunk-2BJPLPLU.js');
|
|
9
|
+
require('./chunk-D2FHOR76.js');
|
|
10
|
+
require('./chunk-OHM7JUMR.js');
|
|
11
|
+
|
|
12
|
+
// src/cli/commands/suites/duplicate.ts
|
|
13
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
14
|
+
var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
15
|
+
var duplicateSuiteCommand = async (id, options) => {
|
|
16
|
+
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
17
|
+
const service = new (0, _chunkVMDYRBQ7js.SuitesApiService)();
|
|
18
|
+
const spinner = _ora2.default.call(void 0, `Duplicating suite "${id}"...`).start();
|
|
19
|
+
try {
|
|
20
|
+
const suite = await service.duplicate(id);
|
|
21
|
+
spinner.succeed(`Suite duplicated as "${suite.name}" (${suite.id})`);
|
|
22
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
23
|
+
console.log(JSON.stringify(suite, null, 2));
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
console.log();
|
|
27
|
+
console.log(` ${_chalk2.default.gray("New ID:")} ${_chalk2.default.green(suite.id)}`);
|
|
28
|
+
console.log(` ${_chalk2.default.gray("Name:")} ${_chalk2.default.cyan(suite.name)}`);
|
|
29
|
+
console.log(` ${_chalk2.default.gray("Slug:")} ${_chalk2.default.yellow(suite.slug)}`);
|
|
30
|
+
console.log();
|
|
31
|
+
} catch (error) {
|
|
32
|
+
spinner.fail();
|
|
33
|
+
if (error instanceof _chunkVMDYRBQ7js.SuitesApiError) {
|
|
34
|
+
console.error(_chalk2.default.red(`Error: ${error.message}`));
|
|
35
|
+
} else {
|
|
36
|
+
console.error(
|
|
37
|
+
_chalk2.default.red(
|
|
38
|
+
`Error: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
39
|
+
)
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
exports.duplicateSuiteCommand = duplicateSuiteCommand;
|
|
48
|
+
//# sourceMappingURL=duplicate-HZGUFROD.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/duplicate-HZGUFROD.js","../src/cli/commands/suites/duplicate.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B;AACA;ACXA,4EAAkB;AAClB,oEAAgB;AAOT,IAAM,sBAAA,EAAwB,MAAA,CACnC,EAAA,EACA,OAAA,EAAA,GACkB;AAClB,EAAA,0CAAA,CAAY;AAEZ,EAAA,MAAM,QAAA,EAAU,IAAI,sCAAA,CAAiB,CAAA;AACrC,EAAA,MAAM,QAAA,EAAU,2BAAA,CAAI,mBAAA,EAAsB,EAAE,CAAA,IAAA,CAAM,CAAA,CAAE,KAAA,CAAM,CAAA;AAE1D,EAAA,IAAI;AACF,IAAA,MAAM,MAAA,EAAQ,MAAM,OAAA,CAAQ,SAAA,CAAU,EAAE,CAAA;AAExC,IAAA,OAAA,CAAQ,OAAA,CAAQ,CAAA,qBAAA,EAAwB,KAAA,CAAM,IAAI,CAAA,GAAA,EAAM,KAAA,CAAM,EAAE,CAAA,CAAA,CAAG,CAAA;AAEnE,IAAA,GAAA,CAAA,CAAI,QAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,OAAA,CAAS,MAAA,EAAA,IAAW,MAAA,EAAQ;AAC9B,MAAA,OAAA,CAAQ,GAAA,CAAI,IAAA,CAAK,SAAA,CAAU,KAAA,EAAO,IAAA,EAAM,CAAC,CAAC,CAAA;AAC1C,MAAA,MAAA;AAAA,IACF;AAEA,IAAA,OAAA,CAAQ,GAAA,CAAI,CAAA;AACZ,IAAA,OAAA,CAAQ,GAAA,CAAI,CAAA,EAAA,EAAK,eAAA,CAAM,IAAA,CAAK,SAAS,CAAC,CAAA,GAAA,EAAM,eAAA,CAAM,KAAA,CAAM,KAAA,CAAM,EAAE,CAAC,CAAA,CAAA;AACC,IAAA;AACH,IAAA;AACnD,IAAA;AACE,EAAA;AACD,IAAA;AACwB,IAAA;AACe,MAAA;AAC7C,IAAA;AACG,MAAA;AACA,QAAA;AAC+C,UAAA;AACrD,QAAA;AACF,MAAA;AACF,IAAA;AACc,IAAA;AAChB,EAAA;AACF;ADDsE;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/duplicate-HZGUFROD.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport {\n SuitesApiService,\n SuitesApiError,\n} from \"@/client-sdk/services/suites\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const duplicateSuiteCommand = async (\n id: string,\n options?: { format?: string },\n): Promise<void> => {\n checkApiKey();\n\n const service = new SuitesApiService();\n const spinner = ora(`Duplicating suite \"${id}\"...`).start();\n\n try {\n const suite = await service.duplicate(id);\n\n spinner.succeed(`Suite duplicated as \"${suite.name}\" (${suite.id})`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(suite, null, 2));\n return;\n }\n\n console.log();\n console.log(` ${chalk.gray(\"New ID:\")} ${chalk.green(suite.id)}`);\n console.log(` ${chalk.gray(\"Name:\")} ${chalk.cyan(suite.name)}`);\n console.log(` ${chalk.gray(\"Slug:\")} ${chalk.yellow(suite.slug)}`);\n console.log();\n } catch (error) {\n spinner.fail();\n if (error instanceof SuitesApiError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n ),\n );\n }\n process.exit(1);\n }\n};\n"]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
|
+
|
|
3
|
+
var _chunkF6E4XQQUjs = require('./chunk-F6E4XQQU.js');
|
|
4
|
+
require('./chunk-OHM7JUMR.js');
|
|
5
|
+
|
|
6
|
+
// src/cli/commands/traces/export.ts
|
|
7
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
8
|
+
var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
9
|
+
var _fs = require('fs'); var _fs2 = _interopRequireDefault(_fs);
|
|
10
|
+
var exportTracesCommand = async (options) => {
|
|
11
|
+
var _a, _b, _c, _d;
|
|
12
|
+
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
13
|
+
const apiKey = (_a = process.env.LANGWATCH_API_KEY) != null ? _a : "";
|
|
14
|
+
const endpoint = (_b = process.env.LANGWATCH_ENDPOINT) != null ? _b : "https://app.langwatch.ai";
|
|
15
|
+
const format = (_c = options.format) != null ? _c : "jsonl";
|
|
16
|
+
if (format !== "csv" && format !== "jsonl" && format !== "json") {
|
|
17
|
+
console.error(_chalk2.default.red("Error: --format must be csv, jsonl, or json"));
|
|
18
|
+
process.exit(1);
|
|
19
|
+
}
|
|
20
|
+
const now = Date.now();
|
|
21
|
+
const startDate = options.startDate ? new Date(options.startDate).getTime() : now - 7 * 24 * 60 * 60 * 1e3;
|
|
22
|
+
const endDate = options.endDate ? new Date(options.endDate).getTime() : now;
|
|
23
|
+
const limit = options.limit ? parseInt(options.limit, 10) : 1e3;
|
|
24
|
+
const spinner = _ora2.default.call(void 0, `Exporting traces (${format})...`).start();
|
|
25
|
+
try {
|
|
26
|
+
const response = await fetch(`${endpoint}/api/traces/search`, {
|
|
27
|
+
method: "POST",
|
|
28
|
+
headers: {
|
|
29
|
+
"Content-Type": "application/json",
|
|
30
|
+
"X-Auth-Token": apiKey
|
|
31
|
+
},
|
|
32
|
+
body: JSON.stringify({
|
|
33
|
+
query: options.query,
|
|
34
|
+
startDate,
|
|
35
|
+
endDate,
|
|
36
|
+
pageSize: Math.min(limit, 100),
|
|
37
|
+
format: "json"
|
|
38
|
+
})
|
|
39
|
+
});
|
|
40
|
+
if (!response.ok) {
|
|
41
|
+
const errorBody = await response.text();
|
|
42
|
+
spinner.fail(`Export failed (${response.status})`);
|
|
43
|
+
console.error(_chalk2.default.red(`Error: ${errorBody}`));
|
|
44
|
+
process.exit(1);
|
|
45
|
+
}
|
|
46
|
+
const data = await response.json();
|
|
47
|
+
const traces = data.traces;
|
|
48
|
+
spinner.succeed(`Exported ${traces.length} trace${traces.length !== 1 ? "s" : ""}${((_d = data.pagination) == null ? void 0 : _d.totalHits) ? ` (${data.pagination.totalHits} total)` : ""}`);
|
|
49
|
+
let output;
|
|
50
|
+
if (format === "json") {
|
|
51
|
+
output = JSON.stringify(traces, null, 2);
|
|
52
|
+
} else if (format === "jsonl") {
|
|
53
|
+
output = traces.map((t) => JSON.stringify(t)).join("\n") + "\n";
|
|
54
|
+
} else {
|
|
55
|
+
const headers = ["trace_id", "input", "output", "started_at", "error"];
|
|
56
|
+
const rows = traces.map((t) => {
|
|
57
|
+
var _a2, _b2, _c2, _d2, _e;
|
|
58
|
+
return [
|
|
59
|
+
t.trace_id,
|
|
60
|
+
csvEscape((_b2 = (_a2 = t.input) == null ? void 0 : _a2.value) != null ? _b2 : ""),
|
|
61
|
+
csvEscape((_d2 = (_c2 = t.output) == null ? void 0 : _c2.value) != null ? _d2 : ""),
|
|
62
|
+
((_e = t.timestamps) == null ? void 0 : _e.started_at) ? new Date(t.timestamps.started_at).toISOString() : "",
|
|
63
|
+
t.error ? csvEscape(JSON.stringify(t.error)) : ""
|
|
64
|
+
];
|
|
65
|
+
});
|
|
66
|
+
output = [headers.join(","), ...rows.map((r) => r.join(","))].join("\n") + "\n";
|
|
67
|
+
}
|
|
68
|
+
if (options.output) {
|
|
69
|
+
_fs2.default.writeFileSync(options.output, output);
|
|
70
|
+
console.log(_chalk2.default.green(`Written to ${options.output}`));
|
|
71
|
+
} else {
|
|
72
|
+
process.stdout.write(output);
|
|
73
|
+
}
|
|
74
|
+
} catch (error) {
|
|
75
|
+
spinner.fail();
|
|
76
|
+
console.error(
|
|
77
|
+
_chalk2.default.red(`Error: ${error instanceof Error ? error.message : "Unknown error"}`)
|
|
78
|
+
);
|
|
79
|
+
process.exit(1);
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
function csvEscape(value) {
|
|
83
|
+
if (value.includes(",") || value.includes('"') || value.includes("\n")) {
|
|
84
|
+
return `"${value.replace(/"/g, '""')}"`;
|
|
85
|
+
}
|
|
86
|
+
return value;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
exports.exportTracesCommand = exportTracesCommand;
|
|
91
|
+
//# sourceMappingURL=export-PP5LG6Q7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/export-PP5LG6Q7.js","../src/cli/commands/traces/export.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACA;ACLA,4EAAkB;AAClB,oEAAgB;AAChB,gEAAe;AAGR,IAAM,oBAAA,EAAsB,MAAA,CAAO,OAAA,EAAA,GAOrB;AAZrB,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAaE,EAAA,0CAAA,CAAY;AAEZ,EAAA,MAAM,OAAA,EAAA,CAAS,GAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,iBAAA,EAAA,GAAZ,KAAA,EAAA,GAAA,EAAiC,EAAA;AAChD,EAAA,MAAM,SAAA,EAAA,CAAW,GAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,kBAAA,EAAA,GAAZ,KAAA,EAAA,GAAA,EAAkC,0BAAA;AAEnD,EAAA,MAAM,OAAA,EAAA,CAAS,GAAA,EAAA,OAAA,CAAQ,MAAA,EAAA,GAAR,KAAA,EAAA,GAAA,EAAkB,OAAA;AACjC,EAAA,GAAA,CAAI,OAAA,IAAW,MAAA,GAAS,OAAA,IAAW,QAAA,GAAW,OAAA,IAAW,MAAA,EAAQ;AAC/D,IAAA,OAAA,CAAQ,KAAA,CAAM,eAAA,CAAM,GAAA,CAAI,6CAA6C,CAAC,CAAA;AACtE,IAAA,OAAA,CAAQ,IAAA,CAAK,CAAC,CAAA;AAAA,EAChB;AAEA,EAAA,MAAM,IAAA,EAAM,IAAA,CAAK,GAAA,CAAI,CAAA;AACrB,EAAA,MAAM,UAAA,EAAY,OAAA,CAAQ,UAAA,EACtB,IAAI,IAAA,CAAK,OAAA,CAAQ,SAAS,CAAA,CAAE,OAAA,CAAQ,EAAA,EACpC,IAAA,EAAM,EAAA,EAAI,GAAA,EAAK,GAAA,EAAK,GAAA,EAAK,GAAA;AAC7B,EAAA,MAAM,QAAA,EAAU,OAAA,CAAQ,QAAA,EACpB,IAAI,IAAA,CAAK,OAAA,CAAQ,OAAO,CAAA,CAAE,OAAA,CAAQ,EAAA,EAClC,GAAA;AAEJ,EAAA,MAAM,MAAA,EAAQ,OAAA,CAAQ,MAAA,EAAQ,QAAA,CAAS,OAAA,CAAQ,KAAA,EAAO,EAAE,EAAA,EAAI,GAAA;AAC5D,EAAA,MAAM,QAAA,EAAU,2BAAA,CAAI,kBAAA,EAAqB,MAAM,CAAA,IAAA,CAAM,CAAA,CAAE,KAAA,CAAM,CAAA;AAE7D,EAAA,IAAI;AACF,IAAA,MAAM,SAAA,EAAW,MAAM,KAAA,CAAM,CAAA,EAAA;AACnB,MAAA;AACC,MAAA;AACS,QAAA;AACA,QAAA;AAClB,MAAA;AACqB,MAAA;AACJ,QAAA;AACf,QAAA;AACA,QAAA;AAC0B,QAAA;AAClB,QAAA;AACT,MAAA;AACF,IAAA;AAEiB,IAAA;AACQ,MAAA;AACX,MAAA;AACW,MAAA;AACV,MAAA;AAChB,IAAA;AAE4B,IAAA;AAYR,IAAA;AACQ,IAAA;AAExB,IAAA;AAEmB,IAAA;AACG,MAAA;AACJ,IAAA;AACO,MAAA;AACtB,IAAA;AAEY,MAAA;AACQ,MAAA;AAlF/B,QAAA;AAkFqC,QAAA;AAC3B,UAAA;AACQ,UAAA;AACA,UAAA;AACV,UAAA;AACoB,UAAA;AACtB,QAAA;AAAC,MAAA;AACyB,MAAA;AAC5B,IAAA;AAEoB,IAAA;AACO,MAAA;AACD,MAAA;AACnB,IAAA;AACsB,MAAA;AAC7B,IAAA;AACc,EAAA;AACD,IAAA;AACL,IAAA;AACc,MAAA;AACtB,IAAA;AACc,IAAA;AAChB,EAAA;AACF;AAE0C;AACb,EAAA;AACA,IAAA;AAC3B,EAAA;AACO,EAAA;AACT;ADzBkC;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/export-PP5LG6Q7.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport fs from \"fs\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const exportTracesCommand = async (options: {\n startDate?: string;\n endDate?: string;\n query?: string;\n format?: string;\n output?: string;\n limit?: string;\n}): Promise<void> => {\n checkApiKey();\n\n const apiKey = process.env.LANGWATCH_API_KEY ?? \"\";\n const endpoint = process.env.LANGWATCH_ENDPOINT ?? \"https://app.langwatch.ai\";\n\n const format = options.format ?? \"jsonl\";\n if (format !== \"csv\" && format !== \"jsonl\" && format !== \"json\") {\n console.error(chalk.red(\"Error: --format must be csv, jsonl, or json\"));\n process.exit(1);\n }\n\n const now = Date.now();\n const startDate = options.startDate\n ? new Date(options.startDate).getTime()\n : now - 7 * 24 * 60 * 60 * 1000; // 7 days ago\n const endDate = options.endDate\n ? new Date(options.endDate).getTime()\n : now;\n\n const limit = options.limit ? parseInt(options.limit, 10) : 1000;\n const spinner = ora(`Exporting traces (${format})...`).start();\n\n try {\n const response = await fetch(`${endpoint}/api/traces/search`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"X-Auth-Token\": apiKey,\n },\n body: JSON.stringify({\n query: options.query,\n startDate,\n endDate,\n pageSize: Math.min(limit, 100),\n format: \"json\",\n }),\n });\n\n if (!response.ok) {\n const errorBody = await response.text();\n spinner.fail(`Export failed (${response.status})`);\n console.error(chalk.red(`Error: ${errorBody}`));\n process.exit(1);\n }\n\n const data = await response.json() as {\n traces: Array<{\n trace_id: string;\n input?: { value: string };\n output?: { value: string };\n timestamps?: { started_at?: number };\n metadata?: Record<string, unknown>;\n error?: Record<string, unknown>;\n }>;\n pagination?: { totalHits?: number };\n };\n\n const traces = data.traces;\n spinner.succeed(`Exported ${traces.length} trace${traces.length !== 1 ? \"s\" : \"\"}${data.pagination?.totalHits ? ` (${data.pagination.totalHits} total)` : \"\"}`);\n\n let output: string;\n\n if (format === \"json\") {\n output = JSON.stringify(traces, null, 2);\n } else if (format === \"jsonl\") {\n output = traces.map((t) => JSON.stringify(t)).join(\"\\n\") + \"\\n\";\n } else {\n // CSV format\n const headers = [\"trace_id\", \"input\", \"output\", \"started_at\", \"error\"];\n const rows = traces.map((t) => [\n t.trace_id,\n csvEscape(t.input?.value ?? \"\"),\n csvEscape(t.output?.value ?? \"\"),\n t.timestamps?.started_at ? new Date(t.timestamps.started_at).toISOString() : \"\",\n t.error ? csvEscape(JSON.stringify(t.error)) : \"\",\n ]);\n output = [headers.join(\",\"), ...rows.map((r) => r.join(\",\"))].join(\"\\n\") + \"\\n\";\n }\n\n if (options.output) {\n fs.writeFileSync(options.output, output);\n console.log(chalk.green(`Written to ${options.output}`));\n } else {\n process.stdout.write(output);\n }\n } catch (error) {\n spinner.fail();\n console.error(\n chalk.red(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`),\n );\n process.exit(1);\n }\n};\n\nfunction csvEscape(value: string): string {\n if (value.includes(\",\") || value.includes('\"') || value.includes(\"\\n\")) {\n return `\"${value.replace(/\"/g, '\"\"')}\"`;\n }\n return value;\n}\n"]}
|