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,91 @@
|
|
|
1
|
+
import {
|
|
2
|
+
checkApiKey
|
|
3
|
+
} from "./chunk-DHJKJVY7.mjs";
|
|
4
|
+
import "./chunk-URTD2WOC.mjs";
|
|
5
|
+
|
|
6
|
+
// src/cli/commands/traces/export.ts
|
|
7
|
+
import chalk from "chalk";
|
|
8
|
+
import ora from "ora";
|
|
9
|
+
import fs from "fs";
|
|
10
|
+
var exportTracesCommand = async (options) => {
|
|
11
|
+
var _a, _b, _c, _d;
|
|
12
|
+
checkApiKey();
|
|
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(chalk.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 = ora(`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(chalk.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
|
+
fs.writeFileSync(options.output, output);
|
|
70
|
+
console.log(chalk.green(`Written to ${options.output}`));
|
|
71
|
+
} else {
|
|
72
|
+
process.stdout.write(output);
|
|
73
|
+
}
|
|
74
|
+
} catch (error) {
|
|
75
|
+
spinner.fail();
|
|
76
|
+
console.error(
|
|
77
|
+
chalk.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
|
+
export {
|
|
89
|
+
exportTracesCommand
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=export-TGKA6WA4.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/traces/export.ts"],"sourcesContent":["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"],"mappings":"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","names":["_a","_b","_c","_d"]}
|
|
@@ -0,0 +1,62 @@
|
|
|
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/graphs/get.ts
|
|
7
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
8
|
+
var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
9
|
+
var getGraphCommand = async (id, options) => {
|
|
10
|
+
var _a, _b, _c;
|
|
11
|
+
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
12
|
+
const apiKey = (_a = process.env.LANGWATCH_API_KEY) != null ? _a : "";
|
|
13
|
+
const endpoint = (_b = process.env.LANGWATCH_ENDPOINT) != null ? _b : "https://app.langwatch.ai";
|
|
14
|
+
const spinner = _ora2.default.call(void 0, `Fetching graph "${id}"...`).start();
|
|
15
|
+
try {
|
|
16
|
+
const response = await fetch(`${endpoint}/api/graphs/${id}`, {
|
|
17
|
+
headers: { "X-Auth-Token": apiKey }
|
|
18
|
+
});
|
|
19
|
+
if (!response.ok) {
|
|
20
|
+
const errorBody = await response.text();
|
|
21
|
+
spinner.fail(`Failed to fetch graph (${response.status})`);
|
|
22
|
+
console.error(_chalk2.default.red(`Error: ${errorBody}`));
|
|
23
|
+
process.exit(1);
|
|
24
|
+
}
|
|
25
|
+
const graph = await response.json();
|
|
26
|
+
spinner.succeed(`Graph "${graph.name}"`);
|
|
27
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
28
|
+
console.log(JSON.stringify(graph, null, 2));
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
console.log();
|
|
32
|
+
console.log(` ${_chalk2.default.gray("ID:")} ${_chalk2.default.green(graph.id)}`);
|
|
33
|
+
console.log(` ${_chalk2.default.gray("Name:")} ${_chalk2.default.cyan(graph.name)}`);
|
|
34
|
+
console.log(
|
|
35
|
+
` ${_chalk2.default.gray("Dashboard:")} ${(_c = graph.dashboardId) != null ? _c : _chalk2.default.gray("\u2014")}`
|
|
36
|
+
);
|
|
37
|
+
console.log(
|
|
38
|
+
` ${_chalk2.default.gray("Position:")} (${graph.gridColumn}, ${graph.gridRow})`
|
|
39
|
+
);
|
|
40
|
+
console.log(` ${_chalk2.default.gray("Size:")} ${graph.colSpan}x${graph.rowSpan}`);
|
|
41
|
+
if (graph.graph) {
|
|
42
|
+
const graphType = typeof graph.graph.type === "string" ? graph.graph.type : "custom";
|
|
43
|
+
console.log(` ${_chalk2.default.gray("Type:")} ${graphType}`);
|
|
44
|
+
}
|
|
45
|
+
console.log(
|
|
46
|
+
` ${_chalk2.default.gray("Created:")} ${new Date(graph.createdAt).toLocaleString()}`
|
|
47
|
+
);
|
|
48
|
+
console.log();
|
|
49
|
+
} catch (error) {
|
|
50
|
+
spinner.fail();
|
|
51
|
+
console.error(
|
|
52
|
+
_chalk2.default.red(
|
|
53
|
+
`Error: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
54
|
+
)
|
|
55
|
+
);
|
|
56
|
+
process.exit(1);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
exports.getGraphCommand = getGraphCommand;
|
|
62
|
+
//# sourceMappingURL=get-2AXSP6AP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/get-2AXSP6AP.js","../src/cli/commands/graphs/get.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACA;ACLA,4EAAkB;AAClB,oEAAgB;AAGT,IAAM,gBAAA,EAAkB,MAAA,CAC7B,EAAA,EACA,OAAA,EAAA,GACkB;AAPpB,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAQE,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,CACJ,GAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,kBAAA,EAAA,GAAZ,KAAA,EAAA,GAAA,EAAkC,0BAAA;AAEpC,EAAA,MAAM,QAAA,EAAU,2BAAA,CAAI,gBAAA,EAAmB,EAAE,CAAA,IAAA,CAAM,CAAA,CAAE,KAAA,CAAM,CAAA;AAEvD,EAAA,IAAI;AACF,IAAA,MAAM,SAAA,EAAW,MAAM,KAAA,CAAM,CAAA,EAAA;AACA,MAAA;AAC5B,IAAA;AAEiB,IAAA;AACQ,MAAA;AACX,MAAA;AACW,MAAA;AACV,MAAA;AAChB,IAAA;AAE8B,IAAA;AAcJ,IAAA;AAEtB,IAAA;AACyB,MAAA;AAC3B,MAAA;AACF,IAAA;AAEY,IAAA;AACgB,IAAA;AACA,IAAA;AACpB,IAAA;AACsB,MAAA;AAC9B,IAAA;AACQ,IAAA;AACsB,MAAA;AAC9B,IAAA;AAC4B,IAAA;AACX,IAAA;AACU,MAAA;AACG,MAAA;AAC9B,IAAA;AACQ,IAAA;AACqB,MAAA;AAC7B,IAAA;AACY,IAAA;AACE,EAAA;AACD,IAAA;AACL,IAAA;AACA,MAAA;AACM,QAAA;AACZ,MAAA;AACF,IAAA;AACc,IAAA;AAChB,EAAA;AACF;ADlBkC;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/get-2AXSP6AP.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const getGraphCommand = async (\n id: string,\n options?: { format?: string }\n): Promise<void> => {\n checkApiKey();\n\n const apiKey = process.env.LANGWATCH_API_KEY ?? \"\";\n const endpoint =\n process.env.LANGWATCH_ENDPOINT ?? \"https://app.langwatch.ai\";\n\n const spinner = ora(`Fetching graph \"${id}\"...`).start();\n\n try {\n const response = await fetch(`${endpoint}/api/graphs/${id}`, {\n headers: { \"X-Auth-Token\": apiKey },\n });\n\n if (!response.ok) {\n const errorBody = await response.text();\n spinner.fail(`Failed to fetch graph (${response.status})`);\n console.error(chalk.red(`Error: ${errorBody}`));\n process.exit(1);\n }\n\n const graph = (await response.json()) as {\n id: string;\n name: string;\n dashboardId: string | null;\n graph: Record<string, unknown>;\n filters: Record<string, unknown> | null;\n gridColumn: number;\n gridRow: number;\n colSpan: number;\n rowSpan: number;\n createdAt: string;\n updatedAt: string;\n };\n\n spinner.succeed(`Graph \"${graph.name}\"`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(graph, null, 2));\n return;\n }\n\n console.log();\n console.log(` ${chalk.gray(\"ID:\")} ${chalk.green(graph.id)}`);\n console.log(` ${chalk.gray(\"Name:\")} ${chalk.cyan(graph.name)}`);\n console.log(\n ` ${chalk.gray(\"Dashboard:\")} ${graph.dashboardId ?? chalk.gray(\"—\")}`\n );\n console.log(\n ` ${chalk.gray(\"Position:\")} (${graph.gridColumn}, ${graph.gridRow})`\n );\n console.log(` ${chalk.gray(\"Size:\")} ${graph.colSpan}x${graph.rowSpan}`);\n if (graph.graph) {\n const graphType = typeof graph.graph.type === \"string\" ? graph.graph.type : \"custom\";\n console.log(` ${chalk.gray(\"Type:\")} ${graphType}`);\n }\n console.log(\n ` ${chalk.gray(\"Created:\")} ${new Date(graph.createdAt).toLocaleString()}`\n );\n console.log();\n } catch (error) {\n spinner.fail();\n console.error(\n chalk.red(\n `Error: ${error instanceof Error ? error.message : \"Unknown error\"}`\n )\n );\n process.exit(1);\n }\n};\n"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import {
|
|
2
|
+
WorkflowsApiError,
|
|
3
|
+
WorkflowsApiService
|
|
4
|
+
} from "./chunk-TCO73AV5.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/workflows/get.ts
|
|
13
|
+
import chalk from "chalk";
|
|
14
|
+
import ora from "ora";
|
|
15
|
+
var getWorkflowCommand = async (id, options) => {
|
|
16
|
+
checkApiKey();
|
|
17
|
+
const service = new WorkflowsApiService();
|
|
18
|
+
const spinner = ora(`Fetching workflow "${id}"...`).start();
|
|
19
|
+
try {
|
|
20
|
+
const workflow = await service.get(id);
|
|
21
|
+
spinner.succeed(`Found workflow "${workflow.name}"`);
|
|
22
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
23
|
+
console.log(JSON.stringify(workflow, null, 2));
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
console.log();
|
|
27
|
+
console.log(chalk.bold.cyan(workflow.name));
|
|
28
|
+
console.log(chalk.gray("\u2500".repeat(40)));
|
|
29
|
+
console.log(` ${chalk.gray("ID:")} ${workflow.id}`);
|
|
30
|
+
if (workflow.description) {
|
|
31
|
+
console.log(` ${chalk.gray("Description:")} ${workflow.description}`);
|
|
32
|
+
}
|
|
33
|
+
console.log(` ${chalk.gray("Evaluator:")} ${workflow.isEvaluator ? chalk.green("yes") : "no"}`);
|
|
34
|
+
console.log(` ${chalk.gray("Component:")} ${workflow.isComponent ? chalk.green("yes") : "no"}`);
|
|
35
|
+
console.log(` ${chalk.gray("Created:")} ${new Date(workflow.createdAt).toLocaleString()}`);
|
|
36
|
+
console.log(` ${chalk.gray("Updated:")} ${new Date(workflow.updatedAt).toLocaleString()}`);
|
|
37
|
+
console.log();
|
|
38
|
+
} catch (error) {
|
|
39
|
+
spinner.fail();
|
|
40
|
+
if (error instanceof WorkflowsApiError) {
|
|
41
|
+
console.error(chalk.red(`Error: ${error.message}`));
|
|
42
|
+
} else {
|
|
43
|
+
console.error(
|
|
44
|
+
chalk.red(
|
|
45
|
+
`Error fetching workflow: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
46
|
+
)
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
export {
|
|
53
|
+
getWorkflowCommand
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=get-6UQYEENU.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/workflows/get.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport {\n WorkflowsApiService,\n WorkflowsApiError,\n} from \"@/client-sdk/services/workflows/workflows-api.service\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const getWorkflowCommand = async (id: string, options?: { format?: string }): Promise<void> => {\n checkApiKey();\n\n const service = new WorkflowsApiService();\n const spinner = ora(`Fetching workflow \"${id}\"...`).start();\n\n try {\n const workflow = await service.get(id);\n spinner.succeed(`Found workflow \"${workflow.name}\"`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(workflow, null, 2));\n return;\n }\n\n console.log();\n console.log(chalk.bold.cyan(workflow.name));\n console.log(chalk.gray(\"─\".repeat(40)));\n console.log(` ${chalk.gray(\"ID:\")} ${workflow.id}`);\n if (workflow.description) {\n console.log(` ${chalk.gray(\"Description:\")} ${workflow.description}`);\n }\n console.log(` ${chalk.gray(\"Evaluator:\")} ${workflow.isEvaluator ? chalk.green(\"yes\") : \"no\"}`);\n console.log(` ${chalk.gray(\"Component:\")} ${workflow.isComponent ? chalk.green(\"yes\") : \"no\"}`);\n console.log(` ${chalk.gray(\"Created:\")} ${new Date(workflow.createdAt).toLocaleString()}`);\n console.log(` ${chalk.gray(\"Updated:\")} ${new Date(workflow.updatedAt).toLocaleString()}`);\n console.log();\n } catch (error) {\n spinner.fail();\n if (error instanceof WorkflowsApiError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error fetching workflow: ${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,qBAAqB,OAAO,IAAY,YAAiD;AACpG,cAAY;AAEZ,QAAM,UAAU,IAAI,oBAAoB;AACxC,QAAM,UAAU,IAAI,sBAAsB,EAAE,MAAM,EAAE,MAAM;AAE1D,MAAI;AACF,UAAM,WAAW,MAAM,QAAQ,IAAI,EAAE;AACrC,YAAQ,QAAQ,mBAAmB,SAAS,IAAI,GAAG;AAEnD,SAAI,mCAAS,YAAW,QAAQ;AAC9B,cAAQ,IAAI,KAAK,UAAU,UAAU,MAAM,CAAC,CAAC;AAC7C;AAAA,IACF;AAEA,YAAQ,IAAI;AACZ,YAAQ,IAAI,MAAM,KAAK,KAAK,SAAS,IAAI,CAAC;AAC1C,YAAQ,IAAI,MAAM,KAAK,SAAI,OAAO,EAAE,CAAC,CAAC;AACtC,YAAQ,IAAI,KAAK,MAAM,KAAK,KAAK,CAAC,aAAa,SAAS,EAAE,EAAE;AAC5D,QAAI,SAAS,aAAa;AACxB,cAAQ,IAAI,KAAK,MAAM,KAAK,cAAc,CAAC,IAAI,SAAS,WAAW,EAAE;AAAA,IACvE;AACA,YAAQ,IAAI,KAAK,MAAM,KAAK,YAAY,CAAC,MAAM,SAAS,cAAc,MAAM,MAAM,KAAK,IAAI,IAAI,EAAE;AACjG,YAAQ,IAAI,KAAK,MAAM,KAAK,YAAY,CAAC,MAAM,SAAS,cAAc,MAAM,MAAM,KAAK,IAAI,IAAI,EAAE;AACjG,YAAQ,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,QAAQ,IAAI,KAAK,SAAS,SAAS,EAAE,eAAe,CAAC,EAAE;AAC9F,YAAQ,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,QAAQ,IAAI,KAAK,SAAS,SAAS,EAAE,eAAe,CAAC,EAAE;AAC9F,YAAQ,IAAI;AAAA,EACd,SAAS,OAAO;AACd,YAAQ,KAAK;AACb,QAAI,iBAAiB,mBAAmB;AACtC,cAAQ,MAAM,MAAM,IAAI,UAAU,MAAM,OAAO,EAAE,CAAC;AAAA,IACpD,OAAO;AACL,cAAQ;AAAA,QACN,MAAM;AAAA,UACJ,4BAA4B,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,QACtF;AAAA,MACF;AAAA,IACF;AACA,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;","names":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import {
|
|
2
|
+
checkApiKey
|
|
3
|
+
} from "./chunk-DHJKJVY7.mjs";
|
|
4
|
+
import "./chunk-URTD2WOC.mjs";
|
|
5
|
+
|
|
6
|
+
// src/cli/commands/triggers/get.ts
|
|
7
|
+
import chalk from "chalk";
|
|
8
|
+
import ora from "ora";
|
|
9
|
+
var getTriggerCommand = async (id, options) => {
|
|
10
|
+
var _a, _b, _c, _d;
|
|
11
|
+
checkApiKey();
|
|
12
|
+
const apiKey = (_a = process.env.LANGWATCH_API_KEY) != null ? _a : "";
|
|
13
|
+
const endpoint = (_b = process.env.LANGWATCH_ENDPOINT) != null ? _b : "https://app.langwatch.ai";
|
|
14
|
+
const spinner = ora(`Fetching trigger "${id}"...`).start();
|
|
15
|
+
try {
|
|
16
|
+
const response = await fetch(`${endpoint}/api/triggers/${encodeURIComponent(id)}`, {
|
|
17
|
+
headers: { "X-Auth-Token": apiKey }
|
|
18
|
+
});
|
|
19
|
+
if (!response.ok) {
|
|
20
|
+
spinner.fail(response.status === 404 ? `Trigger "${id}" not found` : `Failed (${response.status})`);
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
const trigger = await response.json();
|
|
24
|
+
spinner.succeed(`Found trigger "${trigger.name}"`);
|
|
25
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
26
|
+
console.log(JSON.stringify(trigger, null, 2));
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
console.log();
|
|
30
|
+
console.log(chalk.bold(" Trigger Details:"));
|
|
31
|
+
console.log(` ${chalk.gray("ID:")} ${chalk.green(trigger.id)}`);
|
|
32
|
+
console.log(` ${chalk.gray("Name:")} ${chalk.cyan(trigger.name)}`);
|
|
33
|
+
console.log(` ${chalk.gray("Action:")} ${trigger.action}`);
|
|
34
|
+
console.log(` ${chalk.gray("Status:")} ${trigger.active ? chalk.green("active") : chalk.gray("inactive")}`);
|
|
35
|
+
console.log(` ${chalk.gray("Alert:")} ${(_c = trigger.alertType) != null ? _c : chalk.gray("\u2014")}`);
|
|
36
|
+
console.log(` ${chalk.gray("Message:")} ${(_d = trigger.message) != null ? _d : chalk.gray("\u2014")}`);
|
|
37
|
+
console.log(` ${chalk.gray("Created:")} ${new Date(trigger.createdAt).toLocaleString()}`);
|
|
38
|
+
if (Object.keys(trigger.filters).length > 0) {
|
|
39
|
+
console.log();
|
|
40
|
+
console.log(chalk.bold(" Filters:"));
|
|
41
|
+
console.log(` ${JSON.stringify(trigger.filters, null, 2).split("\n").join("\n ")}`);
|
|
42
|
+
}
|
|
43
|
+
console.log();
|
|
44
|
+
} catch (error) {
|
|
45
|
+
spinner.fail();
|
|
46
|
+
console.error(chalk.red(`Error: ${error instanceof Error ? error.message : "Unknown error"}`));
|
|
47
|
+
process.exit(1);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
export {
|
|
51
|
+
getTriggerCommand
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=get-73K7EOMU.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/triggers/get.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const getTriggerCommand = async (\n id: string,\n options?: { format?: 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 spinner = ora(`Fetching trigger \"${id}\"...`).start();\n\n try {\n const response = await fetch(`${endpoint}/api/triggers/${encodeURIComponent(id)}`, {\n headers: { \"X-Auth-Token\": apiKey },\n });\n\n if (!response.ok) {\n spinner.fail(response.status === 404 ? `Trigger \"${id}\" not found` : `Failed (${response.status})`);\n process.exit(1);\n }\n\n const trigger = await response.json() as {\n id: string;\n name: string;\n action: string;\n actionParams: Record<string, unknown>;\n filters: Record<string, unknown>;\n active: boolean;\n message: string | null;\n alertType: string | null;\n createdAt: string;\n updatedAt: string;\n };\n\n spinner.succeed(`Found trigger \"${trigger.name}\"`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(trigger, null, 2));\n return;\n }\n\n console.log();\n console.log(chalk.bold(\" Trigger Details:\"));\n console.log(` ${chalk.gray(\"ID:\")} ${chalk.green(trigger.id)}`);\n console.log(` ${chalk.gray(\"Name:\")} ${chalk.cyan(trigger.name)}`);\n console.log(` ${chalk.gray(\"Action:\")} ${trigger.action}`);\n console.log(` ${chalk.gray(\"Status:\")} ${trigger.active ? chalk.green(\"active\") : chalk.gray(\"inactive\")}`);\n console.log(` ${chalk.gray(\"Alert:\")} ${trigger.alertType ?? chalk.gray(\"—\")}`);\n console.log(` ${chalk.gray(\"Message:\")} ${trigger.message ?? chalk.gray(\"—\")}`);\n console.log(` ${chalk.gray(\"Created:\")} ${new Date(trigger.createdAt).toLocaleString()}`);\n\n if (Object.keys(trigger.filters).length > 0) {\n console.log();\n console.log(chalk.bold(\" Filters:\"));\n console.log(` ${JSON.stringify(trigger.filters, null, 2).split(\"\\n\").join(\"\\n \")}`);\n }\n\n console.log();\n } catch (error) {\n spinner.fail();\n console.error(chalk.red(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`));\n process.exit(1);\n }\n};\n"],"mappings":";;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAGT,IAAM,oBAAoB,OAC/B,IACA,YACkB;AAPpB;AAQE,cAAY;AAEZ,QAAM,UAAS,aAAQ,IAAI,sBAAZ,YAAiC;AAChD,QAAM,YAAW,aAAQ,IAAI,uBAAZ,YAAkC;AAEnD,QAAM,UAAU,IAAI,qBAAqB,EAAE,MAAM,EAAE,MAAM;AAEzD,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,GAAG,QAAQ,iBAAiB,mBAAmB,EAAE,CAAC,IAAI;AAAA,MACjF,SAAS,EAAE,gBAAgB,OAAO;AAAA,IACpC,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,cAAQ,KAAK,SAAS,WAAW,MAAM,YAAY,EAAE,gBAAgB,WAAW,SAAS,MAAM,GAAG;AAClG,cAAQ,KAAK,CAAC;AAAA,IAChB;AAEA,UAAM,UAAU,MAAM,SAAS,KAAK;AAapC,YAAQ,QAAQ,kBAAkB,QAAQ,IAAI,GAAG;AAEjD,SAAI,mCAAS,YAAW,QAAQ;AAC9B,cAAQ,IAAI,KAAK,UAAU,SAAS,MAAM,CAAC,CAAC;AAC5C;AAAA,IACF;AAEA,YAAQ,IAAI;AACZ,YAAQ,IAAI,MAAM,KAAK,oBAAoB,CAAC;AAC5C,YAAQ,IAAI,OAAO,MAAM,KAAK,KAAK,CAAC,SAAS,MAAM,MAAM,QAAQ,EAAE,CAAC,EAAE;AACtE,YAAQ,IAAI,OAAO,MAAM,KAAK,OAAO,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,EAAE;AACvE,YAAQ,IAAI,OAAO,MAAM,KAAK,SAAS,CAAC,KAAK,QAAQ,MAAM,EAAE;AAC7D,YAAQ,IAAI,OAAO,MAAM,KAAK,SAAS,CAAC,KAAK,QAAQ,SAAS,MAAM,MAAM,QAAQ,IAAI,MAAM,KAAK,UAAU,CAAC,EAAE;AAC9G,YAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,OAAM,aAAQ,cAAR,YAAqB,MAAM,KAAK,QAAG,CAAC,EAAE;AACnF,YAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,CAAC,KAAI,aAAQ,YAAR,YAAmB,MAAM,KAAK,QAAG,CAAC,EAAE;AACjF,YAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,CAAC,IAAI,IAAI,KAAK,QAAQ,SAAS,EAAE,eAAe,CAAC,EAAE;AAE3F,QAAI,OAAO,KAAK,QAAQ,OAAO,EAAE,SAAS,GAAG;AAC3C,cAAQ,IAAI;AACZ,cAAQ,IAAI,MAAM,KAAK,YAAY,CAAC;AACpC,cAAQ,IAAI,OAAO,KAAK,UAAU,QAAQ,SAAS,MAAM,CAAC,EAAE,MAAM,IAAI,EAAE,KAAK,QAAQ,CAAC,EAAE;AAAA,IAC1F;AAEA,YAAQ,IAAI;AAAA,EACd,SAAS,OAAO;AACd,YAAQ,KAAK;AACb,YAAQ,MAAM,MAAM,IAAI,UAAU,iBAAiB,QAAQ,MAAM,UAAU,eAAe,EAAE,CAAC;AAC7F,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;","names":[]}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import {
|
|
2
|
+
EvaluatorsApiError,
|
|
3
|
+
EvaluatorsApiService
|
|
4
|
+
} from "./chunk-I2LDJPTG.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/evaluators/get.ts
|
|
13
|
+
import chalk from "chalk";
|
|
14
|
+
import ora from "ora";
|
|
15
|
+
var formatEvaluatorDetails = (evaluator) => {
|
|
16
|
+
var _a, _b, _c;
|
|
17
|
+
const config = evaluator.config;
|
|
18
|
+
const evaluatorType = (_b = (_a = config == null ? void 0 : config.evaluatorType) != null ? _a : evaluator.type) != null ? _b : "\u2014";
|
|
19
|
+
console.log();
|
|
20
|
+
console.log(chalk.bold.cyan(evaluator.name));
|
|
21
|
+
console.log(chalk.gray("\u2500".repeat(40)));
|
|
22
|
+
console.log(` ${chalk.gray("ID:")} ${evaluator.id}`);
|
|
23
|
+
console.log(` ${chalk.gray("Slug:")} ${(_c = evaluator.slug) != null ? _c : chalk.gray("\u2014")}`);
|
|
24
|
+
console.log(` ${chalk.gray("Type:")} ${chalk.yellow(evaluatorType)}`);
|
|
25
|
+
console.log(` ${chalk.gray("Created:")} ${new Date(evaluator.createdAt).toLocaleString()}`);
|
|
26
|
+
console.log(` ${chalk.gray("Updated:")} ${new Date(evaluator.updatedAt).toLocaleString()}`);
|
|
27
|
+
if (evaluator.workflowId) {
|
|
28
|
+
console.log(` ${chalk.gray("Workflow ID:")} ${evaluator.workflowId}`);
|
|
29
|
+
}
|
|
30
|
+
if (evaluator.fields.length > 0) {
|
|
31
|
+
console.log();
|
|
32
|
+
console.log(chalk.bold(" Input Fields:"));
|
|
33
|
+
evaluator.fields.forEach((field) => {
|
|
34
|
+
const optional = field.optional ? chalk.gray(" (optional)") : "";
|
|
35
|
+
console.log(` ${chalk.green("\u2022")} ${field.identifier}: ${chalk.gray(field.type)}${optional}`);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
if (evaluator.outputFields.length > 0) {
|
|
39
|
+
console.log();
|
|
40
|
+
console.log(chalk.bold(" Output Fields:"));
|
|
41
|
+
evaluator.outputFields.forEach((field) => {
|
|
42
|
+
const optional = field.optional ? chalk.gray(" (optional)") : "";
|
|
43
|
+
console.log(` ${chalk.green("\u2022")} ${field.identifier}: ${chalk.gray(field.type)}${optional}`);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
if ((config == null ? void 0 : config.settings) && Object.keys(config.settings).length > 0) {
|
|
47
|
+
console.log();
|
|
48
|
+
console.log(chalk.bold(" Settings:"));
|
|
49
|
+
for (const [key, value] of Object.entries(config.settings)) {
|
|
50
|
+
const displayValue = typeof value === "object" ? JSON.stringify(value) : `${value}`;
|
|
51
|
+
console.log(` ${chalk.gray(key + ":")} ${displayValue}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
console.log();
|
|
55
|
+
};
|
|
56
|
+
var getEvaluatorCommand = async (idOrSlug, options) => {
|
|
57
|
+
checkApiKey();
|
|
58
|
+
const service = new EvaluatorsApiService();
|
|
59
|
+
const spinner = ora(`Fetching evaluator "${idOrSlug}"...`).start();
|
|
60
|
+
try {
|
|
61
|
+
const evaluator = await service.get(idOrSlug);
|
|
62
|
+
spinner.succeed(`Found evaluator "${evaluator.name}"`);
|
|
63
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
64
|
+
console.log(JSON.stringify(evaluator, null, 2));
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
formatEvaluatorDetails(evaluator);
|
|
68
|
+
} catch (error) {
|
|
69
|
+
spinner.fail();
|
|
70
|
+
if (error instanceof EvaluatorsApiError) {
|
|
71
|
+
console.error(chalk.red(`Error: ${error.message}`));
|
|
72
|
+
} else {
|
|
73
|
+
console.error(
|
|
74
|
+
chalk.red(
|
|
75
|
+
`Error fetching evaluator: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
76
|
+
)
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
process.exit(1);
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
export {
|
|
83
|
+
getEvaluatorCommand
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=get-7JYKMJXV.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/evaluators/get.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport {\n EvaluatorsApiService,\n EvaluatorsApiError,\n} from \"@/client-sdk/services/evaluators\";\nimport type { EvaluatorResponse } from \"@/client-sdk/services/evaluators\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nconst formatEvaluatorDetails = (evaluator: EvaluatorResponse): void => {\n const config = evaluator.config as\n | { evaluatorType?: string; settings?: Record<string, unknown> }\n | null\n | undefined;\n const evaluatorType = config?.evaluatorType ?? evaluator.type ?? \"—\";\n\n console.log();\n console.log(chalk.bold.cyan(evaluator.name));\n console.log(chalk.gray(\"─\".repeat(40)));\n\n console.log(` ${chalk.gray(\"ID:\")} ${evaluator.id}`);\n console.log(` ${chalk.gray(\"Slug:\")} ${evaluator.slug ?? chalk.gray(\"—\")}`);\n console.log(` ${chalk.gray(\"Type:\")} ${chalk.yellow(evaluatorType)}`);\n console.log(` ${chalk.gray(\"Created:\")} ${new Date(evaluator.createdAt).toLocaleString()}`);\n console.log(` ${chalk.gray(\"Updated:\")} ${new Date(evaluator.updatedAt).toLocaleString()}`);\n\n if (evaluator.workflowId) {\n console.log(` ${chalk.gray(\"Workflow ID:\")} ${evaluator.workflowId}`);\n }\n\n if (evaluator.fields.length > 0) {\n console.log();\n console.log(chalk.bold(\" Input Fields:\"));\n evaluator.fields.forEach((field) => {\n const optional = field.optional ? chalk.gray(\" (optional)\") : \"\";\n console.log(` ${chalk.green(\"•\")} ${field.identifier}: ${chalk.gray(field.type)}${optional}`);\n });\n }\n\n if (evaluator.outputFields.length > 0) {\n console.log();\n console.log(chalk.bold(\" Output Fields:\"));\n evaluator.outputFields.forEach((field) => {\n const optional = field.optional ? chalk.gray(\" (optional)\") : \"\";\n console.log(` ${chalk.green(\"•\")} ${field.identifier}: ${chalk.gray(field.type)}${optional}`);\n });\n }\n\n if (config?.settings && Object.keys(config.settings).length > 0) {\n console.log();\n console.log(chalk.bold(\" Settings:\"));\n for (const [key, value] of Object.entries(config.settings)) {\n const displayValue =\n typeof value === \"object\"\n ? JSON.stringify(value)\n : `${value as string | number | boolean}`;\n console.log(` ${chalk.gray(key + \":\")} ${displayValue}`);\n }\n }\n\n console.log();\n};\n\nexport const getEvaluatorCommand = async (idOrSlug: string, options?: { format?: string }): Promise<void> => {\n checkApiKey();\n\n const service = new EvaluatorsApiService();\n const spinner = ora(`Fetching evaluator \"${idOrSlug}\"...`).start();\n\n try {\n const evaluator = await service.get(idOrSlug);\n spinner.succeed(`Found evaluator \"${evaluator.name}\"`);\n if (options?.format === \"json\") {\n console.log(JSON.stringify(evaluator, null, 2));\n return;\n }\n formatEvaluatorDetails(evaluator);\n } catch (error) {\n spinner.fail();\n if (error instanceof EvaluatorsApiError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error fetching evaluator: ${error instanceof Error ? error.message : \"Unknown error\"}`,\n ),\n );\n }\n process.exit(1);\n }\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,86 @@
|
|
|
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
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
var _chunkCLYXJJ6Cjs = require('./chunk-CLYXJJ6C.js');
|
|
9
|
+
require('./chunk-CGFG5FCC.js');
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
var _chunkF6E4XQQUjs = require('./chunk-F6E4XQQU.js');
|
|
13
|
+
require('./chunk-2VVANTLB.js');
|
|
14
|
+
require('./chunk-2BJPLPLU.js');
|
|
15
|
+
require('./chunk-H6F5OGSL.js');
|
|
16
|
+
require('./chunk-D2FHOR76.js');
|
|
17
|
+
require('./chunk-DB6OJGP4.js');
|
|
18
|
+
require('./chunk-OHM7JUMR.js');
|
|
19
|
+
|
|
20
|
+
// src/cli/commands/dataset/get.ts
|
|
21
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
22
|
+
var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
23
|
+
var getCommand = async (slugOrId, options) => {
|
|
24
|
+
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
25
|
+
const service = _chunkX7QBE6AAjs.createDatasetService.call(void 0, );
|
|
26
|
+
const spinner = _ora2.default.call(void 0, `Fetching dataset "${slugOrId}"...`).start();
|
|
27
|
+
try {
|
|
28
|
+
const dataset = await service.getDataset(slugOrId);
|
|
29
|
+
spinner.succeed(`Dataset: ${_chalk2.default.cyan(dataset.name)}`);
|
|
30
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
31
|
+
console.log(JSON.stringify(dataset, null, 2));
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
console.log();
|
|
35
|
+
console.log(` ${_chalk2.default.bold("Slug:")} ${dataset.slug}`);
|
|
36
|
+
console.log(` ${_chalk2.default.bold("ID:")} ${dataset.id}`);
|
|
37
|
+
if (dataset.columnTypes.length > 0) {
|
|
38
|
+
const colStr = dataset.columnTypes.map((c) => `${c.name}:${c.type}`).join(", ");
|
|
39
|
+
console.log(` ${_chalk2.default.bold("Columns:")} ${colStr}`);
|
|
40
|
+
}
|
|
41
|
+
console.log(` ${_chalk2.default.bold("Records:")} ${dataset.entries.length}`);
|
|
42
|
+
if (dataset.createdAt) {
|
|
43
|
+
console.log(
|
|
44
|
+
` ${_chalk2.default.bold("Created:")} ${_chunkCLYXJJ6Cjs.formatRelativeTime.call(void 0, dataset.createdAt)}`
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
if (dataset.updatedAt) {
|
|
48
|
+
console.log(
|
|
49
|
+
` ${_chalk2.default.bold("Updated:")} ${_chunkCLYXJJ6Cjs.formatRelativeTime.call(void 0, dataset.updatedAt)}`
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
if (dataset.entries.length > 0) {
|
|
53
|
+
console.log();
|
|
54
|
+
console.log(_chalk2.default.bold("Preview (first 10 records):"));
|
|
55
|
+
const previewEntries = dataset.entries.slice(0, 10);
|
|
56
|
+
const allKeys = /* @__PURE__ */ new Set();
|
|
57
|
+
previewEntries.forEach((entry) => {
|
|
58
|
+
Object.keys(entry.entry).forEach((key) => allKeys.add(key));
|
|
59
|
+
});
|
|
60
|
+
const headers = Array.from(allKeys);
|
|
61
|
+
const tableData = previewEntries.map((entry) => {
|
|
62
|
+
const row = {};
|
|
63
|
+
headers.forEach((key) => {
|
|
64
|
+
const value = entry.entry[key];
|
|
65
|
+
row[key] = value === null || value === void 0 ? "" : typeof value === "string" ? value.length > 50 ? value.substring(0, 47) + "..." : value : JSON.stringify(value).substring(0, 50);
|
|
66
|
+
});
|
|
67
|
+
return row;
|
|
68
|
+
});
|
|
69
|
+
_chunkCLYXJJ6Cjs.formatTable.call(void 0, { data: tableData, headers });
|
|
70
|
+
if (dataset.entries.length > 10) {
|
|
71
|
+
console.log(
|
|
72
|
+
_chalk2.default.gray(
|
|
73
|
+
` ... and ${dataset.entries.length - 10} more record(s)`
|
|
74
|
+
)
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
} catch (error) {
|
|
79
|
+
spinner.fail("Failed to fetch dataset");
|
|
80
|
+
_chunkX7QBE6AAjs.handleDatasetCommandError.call(void 0, error, "fetching dataset");
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
exports.getCommand = getCommand;
|
|
86
|
+
//# sourceMappingURL=get-7V7OBWY5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/get-7V7OBWY5.js","../src/cli/commands/dataset/get.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,sDAA4B;AAC5B;AACE;AACA;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B;AACA;ACnBA,4EAAkB;AAClB,oEAAgB;AAST,IAAM,WAAA,EAAa,MAAA,CAAO,QAAA,EAAkB,OAAA,EAAA,GAAiD;AAClG,EAAA,0CAAA,CAAY;AAEZ,EAAA,MAAM,QAAA,EAAU,mDAAA,CAAqB;AACrC,EAAA,MAAM,QAAA,EAAU,2BAAA,CAAI,kBAAA,EAAqB,QAAQ,CAAA,IAAA,CAAM,CAAA,CAAE,KAAA,CAAM,CAAA;AAE/D,EAAA,IAAI;AACF,IAAA,MAAM,QAAA,EAAU,MAAM,OAAA,CAAQ,UAAA,CAAW,QAAQ,CAAA;AAEjD,IAAA,OAAA,CAAQ,OAAA,CAAQ,CAAA,SAAA,EAAY,eAAA,CAAM,IAAA,CAAK,OAAA,CAAQ,IAAI,CAAC,CAAA,CAAA;AAE5B,IAAA;AACsB,MAAA;AAC5C,MAAA;AACF,IAAA;AAEY,IAAA;AACkC,IAAA;AACA,IAAA;AAEV,IAAA;AAEf,MAAA;AAE2B,MAAA;AAChD,IAAA;AAE8C,IAAA;AAEvB,IAAA;AACb,MAAA;AAC4B,QAAA;AACpC,MAAA;AACF,IAAA;AACuB,IAAA;AACb,MAAA;AAC4B,QAAA;AACpC,MAAA;AACF,IAAA;AAGgC,IAAA;AAClB,MAAA;AACW,MAAA;AAE2B,MAAA;AAGlB,MAAA;AACE,MAAA;AACU,QAAA;AAC3C,MAAA;AACiC,MAAA;AAEc,MAAA;AACT,QAAA;AACZ,QAAA;AACM,UAAA;AAEC,UAAA;AAO/B,QAAA;AACM,QAAA;AACR,MAAA;AAEuC,MAAA;AAEP,MAAA;AACvB,QAAA;AACA,UAAA;AACoC,YAAA;AAC1C,UAAA;AACF,QAAA;AACF,MAAA;AACF,IAAA;AACc,EAAA;AACwB,IAAA;AACa,IAAA;AACrD,EAAA;AACF;ADZyD;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/get-7V7OBWY5.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { checkApiKey } from \"../../utils/apiKey\";\nimport { formatTable, formatRelativeTime } from \"../../utils/formatting\";\nimport { createDatasetService } from \"./service-factory\";\nimport { handleDatasetCommandError } from \"./error-handler\";\n\n/**\n * Gets dataset details by slug or ID, showing metadata and a preview of records.\n */\nexport const getCommand = async (slugOrId: string, options?: { format?: string }): Promise<void> => {\n checkApiKey();\n\n const service = createDatasetService();\n const spinner = ora(`Fetching dataset \"${slugOrId}\"...`).start();\n\n try {\n const dataset = await service.getDataset(slugOrId);\n\n spinner.succeed(`Dataset: ${chalk.cyan(dataset.name)}`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(dataset, null, 2));\n return;\n }\n\n console.log();\n console.log(` ${chalk.bold(\"Slug:\")} ${dataset.slug}`);\n console.log(` ${chalk.bold(\"ID:\")} ${dataset.id}`);\n\n if (dataset.columnTypes.length > 0) {\n const colStr = dataset.columnTypes\n .map((c) => `${c.name}:${c.type}`)\n .join(\", \");\n console.log(` ${chalk.bold(\"Columns:\")} ${colStr}`);\n }\n\n console.log(` ${chalk.bold(\"Records:\")} ${dataset.entries.length}`);\n\n if (dataset.createdAt) {\n console.log(\n ` ${chalk.bold(\"Created:\")} ${formatRelativeTime(dataset.createdAt)}`,\n );\n }\n if (dataset.updatedAt) {\n console.log(\n ` ${chalk.bold(\"Updated:\")} ${formatRelativeTime(dataset.updatedAt)}`,\n );\n }\n\n // Show a preview of the first 10 records\n if (dataset.entries.length > 0) {\n console.log();\n console.log(chalk.bold(\"Preview (first 10 records):\"));\n\n const previewEntries = dataset.entries.slice(0, 10);\n\n // Collect all keys from entries\n const allKeys = new Set<string>();\n previewEntries.forEach((entry) => {\n Object.keys(entry.entry).forEach((key) => allKeys.add(key));\n });\n const headers = Array.from(allKeys);\n\n const tableData = previewEntries.map((entry) => {\n const row: Record<string, string> = {};\n headers.forEach((key) => {\n const value = entry.entry[key];\n row[key] =\n value === null || value === undefined\n ? \"\"\n : typeof value === \"string\"\n ? value.length > 50\n ? value.substring(0, 47) + \"...\"\n : value\n : JSON.stringify(value).substring(0, 50);\n });\n return row;\n });\n\n formatTable({ data: tableData, headers });\n\n if (dataset.entries.length > 10) {\n console.log(\n chalk.gray(\n ` ... and ${dataset.entries.length - 10} more record(s)`,\n ),\n );\n }\n }\n } catch (error) {\n spinner.fail(\"Failed to fetch dataset\");\n handleDatasetCommandError(error, \"fetching dataset\");\n }\n};\n"]}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import {
|
|
2
|
+
checkApiKey
|
|
3
|
+
} from "./chunk-DHJKJVY7.mjs";
|
|
4
|
+
import "./chunk-URTD2WOC.mjs";
|
|
5
|
+
|
|
6
|
+
// src/cli/commands/monitors/get.ts
|
|
7
|
+
import chalk from "chalk";
|
|
8
|
+
import ora from "ora";
|
|
9
|
+
var getMonitorCommand = async (id, options) => {
|
|
10
|
+
var _a, _b;
|
|
11
|
+
checkApiKey();
|
|
12
|
+
const apiKey = (_a = process.env.LANGWATCH_API_KEY) != null ? _a : "";
|
|
13
|
+
const endpoint = (_b = process.env.LANGWATCH_ENDPOINT) != null ? _b : "https://app.langwatch.ai";
|
|
14
|
+
const spinner = ora(`Fetching monitor "${id}"...`).start();
|
|
15
|
+
try {
|
|
16
|
+
const response = await fetch(`${endpoint}/api/monitors/${id}`, {
|
|
17
|
+
headers: { "X-Auth-Token": apiKey }
|
|
18
|
+
});
|
|
19
|
+
if (!response.ok) {
|
|
20
|
+
const errorBody = await response.text();
|
|
21
|
+
spinner.fail(`Failed to fetch monitor (${response.status})`);
|
|
22
|
+
console.error(chalk.red(`Error: ${errorBody}`));
|
|
23
|
+
process.exit(1);
|
|
24
|
+
}
|
|
25
|
+
const monitor = await response.json();
|
|
26
|
+
spinner.succeed(`Monitor "${monitor.name}"`);
|
|
27
|
+
if ((options == null ? void 0 : options.format) === "json") {
|
|
28
|
+
console.log(JSON.stringify(monitor, null, 2));
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
console.log();
|
|
32
|
+
console.log(` ${chalk.gray("ID:")} ${chalk.green(monitor.id)}`);
|
|
33
|
+
console.log(` ${chalk.gray("Name:")} ${chalk.cyan(monitor.name)}`);
|
|
34
|
+
console.log(` ${chalk.gray("Slug:")} ${monitor.slug}`);
|
|
35
|
+
console.log(` ${chalk.gray("Type:")} ${monitor.checkType}`);
|
|
36
|
+
console.log(
|
|
37
|
+
` ${chalk.gray("Status:")} ${monitor.enabled ? chalk.green("enabled") : chalk.gray("disabled")}`
|
|
38
|
+
);
|
|
39
|
+
console.log(` ${chalk.gray("Mode:")} ${monitor.executionMode}`);
|
|
40
|
+
console.log(` ${chalk.gray("Sample:")} ${Math.round(monitor.sample * 100)}%`);
|
|
41
|
+
console.log(` ${chalk.gray("Level:")} ${monitor.level}`);
|
|
42
|
+
if (monitor.evaluatorId) {
|
|
43
|
+
console.log(
|
|
44
|
+
` ${chalk.gray("Evaluator:")} ${monitor.evaluatorId}`
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
console.log(
|
|
48
|
+
` ${chalk.gray("Created:")} ${new Date(monitor.createdAt).toLocaleString()}`
|
|
49
|
+
);
|
|
50
|
+
console.log();
|
|
51
|
+
} catch (error) {
|
|
52
|
+
spinner.fail();
|
|
53
|
+
console.error(
|
|
54
|
+
chalk.red(
|
|
55
|
+
`Error: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
56
|
+
)
|
|
57
|
+
);
|
|
58
|
+
process.exit(1);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
export {
|
|
62
|
+
getMonitorCommand
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=get-CBNUMPUN.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/commands/monitors/get.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { checkApiKey } from \"../../utils/apiKey\";\n\nexport const getMonitorCommand = async (\n id: string,\n options?: { format?: string }\n): Promise<void> => {\n checkApiKey();\n\n const apiKey = process.env.LANGWATCH_API_KEY ?? \"\";\n const endpoint =\n process.env.LANGWATCH_ENDPOINT ?? \"https://app.langwatch.ai\";\n\n const spinner = ora(`Fetching monitor \"${id}\"...`).start();\n\n try {\n const response = await fetch(`${endpoint}/api/monitors/${id}`, {\n headers: { \"X-Auth-Token\": apiKey },\n });\n\n if (!response.ok) {\n const errorBody = await response.text();\n spinner.fail(`Failed to fetch monitor (${response.status})`);\n console.error(chalk.red(`Error: ${errorBody}`));\n process.exit(1);\n }\n\n const monitor = (await response.json()) as {\n id: string;\n name: string;\n slug: string;\n checkType: string;\n enabled: boolean;\n executionMode: string;\n sample: number;\n level: string;\n evaluatorId: string | null;\n preconditions: unknown;\n createdAt: string;\n };\n\n spinner.succeed(`Monitor \"${monitor.name}\"`);\n\n if (options?.format === \"json\") {\n console.log(JSON.stringify(monitor, null, 2));\n return;\n }\n\n console.log();\n console.log(` ${chalk.gray(\"ID:\")} ${chalk.green(monitor.id)}`);\n console.log(` ${chalk.gray(\"Name:\")} ${chalk.cyan(monitor.name)}`);\n console.log(` ${chalk.gray(\"Slug:\")} ${monitor.slug}`);\n console.log(` ${chalk.gray(\"Type:\")} ${monitor.checkType}`);\n console.log(\n ` ${chalk.gray(\"Status:\")} ${monitor.enabled ? chalk.green(\"enabled\") : chalk.gray(\"disabled\")}`\n );\n console.log(` ${chalk.gray(\"Mode:\")} ${monitor.executionMode}`);\n console.log(` ${chalk.gray(\"Sample:\")} ${Math.round(monitor.sample * 100)}%`);\n console.log(` ${chalk.gray(\"Level:\")} ${monitor.level}`);\n if (monitor.evaluatorId) {\n console.log(\n ` ${chalk.gray(\"Evaluator:\")} ${monitor.evaluatorId}`\n );\n }\n console.log(\n ` ${chalk.gray(\"Created:\")} ${new Date(monitor.createdAt).toLocaleString()}`\n );\n console.log();\n } catch (error) {\n spinner.fail();\n console.error(\n chalk.red(\n `Error: ${error instanceof Error ? error.message : \"Unknown error\"}`\n )\n );\n process.exit(1);\n }\n};\n"],"mappings":";;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAGT,IAAM,oBAAoB,OAC/B,IACA,YACkB;AAPpB;AAQE,cAAY;AAEZ,QAAM,UAAS,aAAQ,IAAI,sBAAZ,YAAiC;AAChD,QAAM,YACJ,aAAQ,IAAI,uBAAZ,YAAkC;AAEpC,QAAM,UAAU,IAAI,qBAAqB,EAAE,MAAM,EAAE,MAAM;AAEzD,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,GAAG,QAAQ,iBAAiB,EAAE,IAAI;AAAA,MAC7D,SAAS,EAAE,gBAAgB,OAAO;AAAA,IACpC,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,YAAY,MAAM,SAAS,KAAK;AACtC,cAAQ,KAAK,4BAA4B,SAAS,MAAM,GAAG;AAC3D,cAAQ,MAAM,MAAM,IAAI,UAAU,SAAS,EAAE,CAAC;AAC9C,cAAQ,KAAK,CAAC;AAAA,IAChB;AAEA,UAAM,UAAW,MAAM,SAAS,KAAK;AAcrC,YAAQ,QAAQ,YAAY,QAAQ,IAAI,GAAG;AAE3C,SAAI,mCAAS,YAAW,QAAQ;AAC9B,cAAQ,IAAI,KAAK,UAAU,SAAS,MAAM,CAAC,CAAC;AAC5C;AAAA,IACF;AAEA,YAAQ,IAAI;AACZ,YAAQ,IAAI,KAAK,MAAM,KAAK,KAAK,CAAC,WAAW,MAAM,MAAM,QAAQ,EAAE,CAAC,EAAE;AACtE,YAAQ,IAAI,KAAK,MAAM,KAAK,OAAO,CAAC,SAAS,MAAM,KAAK,QAAQ,IAAI,CAAC,EAAE;AACvE,YAAQ,IAAI,KAAK,MAAM,KAAK,OAAO,CAAC,SAAS,QAAQ,IAAI,EAAE;AAC3D,YAAQ,IAAI,KAAK,MAAM,KAAK,OAAO,CAAC,SAAS,QAAQ,SAAS,EAAE;AAChE,YAAQ;AAAA,MACN,KAAK,MAAM,KAAK,SAAS,CAAC,OAAO,QAAQ,UAAU,MAAM,MAAM,SAAS,IAAI,MAAM,KAAK,UAAU,CAAC;AAAA,IACpG;AACA,YAAQ,IAAI,KAAK,MAAM,KAAK,OAAO,CAAC,SAAS,QAAQ,aAAa,EAAE;AACpE,YAAQ,IAAI,KAAK,MAAM,KAAK,SAAS,CAAC,OAAO,KAAK,MAAM,QAAQ,SAAS,GAAG,CAAC,GAAG;AAChF,YAAQ,IAAI,KAAK,MAAM,KAAK,QAAQ,CAAC,QAAQ,QAAQ,KAAK,EAAE;AAC5D,QAAI,QAAQ,aAAa;AACvB,cAAQ;AAAA,QACN,KAAK,MAAM,KAAK,YAAY,CAAC,IAAI,QAAQ,WAAW;AAAA,MACtD;AAAA,IACF;AACA,YAAQ;AAAA,MACN,KAAK,MAAM,KAAK,UAAU,CAAC,MAAM,IAAI,KAAK,QAAQ,SAAS,EAAE,eAAe,CAAC;AAAA,IAC/E;AACA,YAAQ,IAAI;AAAA,EACd,SAAS,OAAO;AACd,YAAQ,KAAK;AACb,YAAQ;AAAA,MACN,MAAM;AAAA,QACJ,UAAU,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,MACpE;AAAA,IACF;AACA,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;","names":[]}
|