langgraph-ui-components 0.0.3 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -0
- package/dist/index.es10.js +31 -16
- package/dist/index.es10.js.map +1 -1
- package/dist/index.es100.js +37 -5
- package/dist/index.es100.js.map +1 -1
- package/dist/index.es101.js +160 -67
- package/dist/index.es101.js.map +1 -1
- package/dist/index.es102.js +196 -30
- package/dist/index.es102.js.map +1 -1
- package/dist/index.es103.js +14 -5
- package/dist/index.es103.js.map +1 -1
- package/dist/index.es104.js +32 -2
- package/dist/index.es104.js.map +1 -1
- package/dist/index.es105.js +33 -10
- package/dist/index.es105.js.map +1 -1
- package/dist/index.es106.js +3110 -454
- package/dist/index.es106.js.map +1 -1
- package/dist/index.es107.js +5 -5
- package/dist/index.es108.js +2 -2
- package/dist/index.es109.js +12 -142
- package/dist/index.es109.js.map +1 -1
- package/dist/index.es11.js +146 -120
- package/dist/index.es11.js.map +1 -1
- package/dist/index.es110.js +11 -906
- package/dist/index.es110.js.map +1 -1
- package/dist/index.es111.js +483 -262
- package/dist/index.es111.js.map +1 -1
- package/dist/index.es112.js +7 -4
- package/dist/index.es112.js.map +1 -1
- package/dist/index.es113.js +2 -446
- package/dist/index.es113.js.map +1 -1
- package/dist/index.es114.js +141 -41
- package/dist/index.es114.js.map +1 -1
- package/dist/index.es115.js +904 -20
- package/dist/index.es115.js.map +1 -1
- package/dist/index.es116.js +267 -66
- package/dist/index.es116.js.map +1 -1
- package/dist/index.es117.js +3 -130
- package/dist/index.es117.js.map +1 -1
- package/dist/index.es118.js +437 -42
- package/dist/index.es118.js.map +1 -1
- package/dist/index.es119.js +46 -10
- package/dist/index.es119.js.map +1 -1
- package/dist/index.es12.js +13 -103
- package/dist/index.es12.js.map +1 -1
- package/dist/index.es120.js +22 -45
- package/dist/index.es120.js.map +1 -1
- package/dist/index.es121.js +72 -92
- package/dist/index.es121.js.map +1 -1
- package/dist/index.es122.js +126 -50
- package/dist/index.es122.js.map +1 -1
- package/dist/index.es123.js +46 -13
- package/dist/index.es123.js.map +1 -1
- package/dist/index.es124.js +9 -14
- package/dist/index.es124.js.map +1 -1
- package/dist/index.es125.js +45 -89
- package/dist/index.es125.js.map +1 -1
- package/dist/index.es126.js +99 -2
- package/dist/index.es126.js.map +1 -1
- package/dist/index.es127.js +48 -51
- package/dist/index.es127.js.map +1 -1
- package/dist/index.es128.js +14 -99
- package/dist/index.es128.js.map +1 -1
- package/dist/index.es129.js +88 -190
- package/dist/index.es129.js.map +1 -1
- package/dist/index.es13.js +126 -33
- package/dist/index.es13.js.map +1 -1
- package/dist/index.es130.js +2 -110
- package/dist/index.es130.js.map +1 -1
- package/dist/index.es131.js +163 -34
- package/dist/index.es131.js.map +1 -1
- package/dist/index.es132.js +2 -10
- package/dist/index.es132.js.map +1 -1
- package/dist/index.es133.js +55 -10
- package/dist/index.es133.js.map +1 -1
- package/dist/index.es134.js +99 -11
- package/dist/index.es134.js.map +1 -1
- package/dist/index.es135.js +181 -81
- package/dist/index.es135.js.map +1 -1
- package/dist/index.es136.js +105 -270
- package/dist/index.es136.js.map +1 -1
- package/dist/index.es137.js +35 -2
- package/dist/index.es137.js.map +1 -1
- package/dist/index.es138.js +10 -164
- package/dist/index.es138.js.map +1 -1
- package/dist/index.es139.js +11 -51
- package/dist/index.es139.js.map +1 -1
- package/dist/index.es140.js +11 -39
- package/dist/index.es140.js.map +1 -1
- package/dist/index.es141.js +89 -33
- package/dist/index.es141.js.map +1 -1
- package/dist/index.es142.js +264 -29
- package/dist/index.es142.js.map +1 -1
- package/dist/index.es143.js +2 -24
- package/dist/index.es143.js.map +1 -1
- package/dist/index.es144.js +158 -585
- package/dist/index.es144.js.map +1 -1
- package/dist/index.es145.js +44 -118
- package/dist/index.es145.js.map +1 -1
- package/dist/index.es146.js +34 -158
- package/dist/index.es146.js.map +1 -1
- package/dist/index.es147.js +35 -2
- package/dist/index.es147.js.map +1 -1
- package/dist/index.es148.js +40 -2
- package/dist/index.es148.js.map +1 -1
- package/dist/index.es149.js +24 -2
- package/dist/index.es149.js.map +1 -1
- package/dist/index.es15.js +15 -15
- package/dist/index.es150.js +589 -20
- package/dist/index.es150.js.map +1 -1
- package/dist/index.es151.js +125 -2
- package/dist/index.es151.js.map +1 -1
- package/dist/index.es152.js +3 -24
- package/dist/index.es152.js.map +1 -1
- package/dist/index.es153.js +2 -4
- package/dist/index.es153.js.map +1 -1
- package/dist/index.es154.js +2 -5
- package/dist/index.es154.js.map +1 -1
- package/dist/index.es155.js +22 -13
- package/dist/index.es155.js.map +1 -1
- package/dist/index.es156.js +2 -6
- package/dist/index.es156.js.map +1 -1
- package/dist/index.es157.js +25 -8
- package/dist/index.es157.js.map +1 -1
- package/dist/index.es158.js +5 -64
- package/dist/index.es158.js.map +1 -1
- package/dist/index.es159.js +12 -21
- package/dist/index.es159.js.map +1 -1
- package/dist/index.es16.js +2 -2
- package/dist/index.es160.js +5 -5
- package/dist/index.es160.js.map +1 -1
- package/dist/index.es161.js +8 -349
- package/dist/index.es161.js.map +1 -1
- package/dist/index.es162.js +1 -1
- package/dist/index.es163.js +1 -1
- package/dist/index.es164.js +3 -3
- package/dist/index.es165.js +63 -6
- package/dist/index.es165.js.map +1 -1
- package/dist/index.es166.js +21 -102
- package/dist/index.es166.js.map +1 -1
- package/dist/index.es167.js +5 -118
- package/dist/index.es167.js.map +1 -1
- package/dist/index.es168.js +330 -117
- package/dist/index.es168.js.map +1 -1
- package/dist/index.es169.js +6 -114
- package/dist/index.es169.js.map +1 -1
- package/dist/index.es17.js +2 -2
- package/dist/index.es170.js +103 -6
- package/dist/index.es170.js.map +1 -1
- package/dist/index.es171.js +119 -2
- package/dist/index.es171.js.map +1 -1
- package/dist/index.es172.js +134 -140
- package/dist/index.es172.js.map +1 -1
- package/dist/index.es173.js +115 -2
- package/dist/index.es173.js.map +1 -1
- package/dist/index.es174.js +6 -3737
- package/dist/index.es174.js.map +1 -1
- package/dist/index.es175.js +2 -342
- package/dist/index.es175.js.map +1 -1
- package/dist/index.es176.js +138 -105
- package/dist/index.es176.js.map +1 -1
- package/dist/index.es177.js +2 -133
- package/dist/index.es177.js.map +1 -1
- package/dist/index.es178.js +3734 -12
- package/dist/index.es178.js.map +1 -1
- package/dist/index.es179.js +326 -136
- package/dist/index.es179.js.map +1 -1
- package/dist/index.es180.js +107 -13
- package/dist/index.es180.js.map +1 -1
- package/dist/index.es181.js +131 -6
- package/dist/index.es181.js.map +1 -1
- package/dist/index.es182.js +13 -19
- package/dist/index.es182.js.map +1 -1
- package/dist/index.es183.js +139 -77
- package/dist/index.es183.js.map +1 -1
- package/dist/index.es184.js +13 -241
- package/dist/index.es184.js.map +1 -1
- package/dist/index.es185.js +8 -24
- package/dist/index.es185.js.map +1 -1
- package/dist/index.es186.js +21 -6
- package/dist/index.es186.js.map +1 -1
- package/dist/index.es187.js +90 -4
- package/dist/index.es187.js.map +1 -1
- package/dist/index.es188.js +240 -15
- package/dist/index.es188.js.map +1 -1
- package/dist/index.es189.js +24 -8
- package/dist/index.es189.js.map +1 -1
- package/dist/index.es19.js +15 -119
- package/dist/index.es19.js.map +1 -1
- package/dist/index.es190.js +5 -31
- package/dist/index.es190.js.map +1 -1
- package/dist/index.es191.js +4 -6
- package/dist/index.es191.js.map +1 -1
- package/dist/index.es192.js +17 -105
- package/dist/index.es192.js.map +1 -1
- package/dist/index.es193.js +6 -11
- package/dist/index.es193.js.map +1 -1
- package/dist/index.es194.js +32 -18
- package/dist/index.es194.js.map +1 -1
- package/dist/index.es195.js +6 -31
- package/dist/index.es195.js.map +1 -1
- package/dist/index.es196.js +106 -4
- package/dist/index.es196.js.map +1 -1
- package/dist/index.es197.js +12 -4
- package/dist/index.es197.js.map +1 -1
- package/dist/index.es198.js +17 -4
- package/dist/index.es198.js.map +1 -1
- package/dist/index.es199.js +21 -27
- package/dist/index.es199.js.map +1 -1
- package/dist/index.es2.js +25 -16
- package/dist/index.es2.js.map +1 -1
- package/dist/index.es20.js +37 -17
- package/dist/index.es20.js.map +1 -1
- package/dist/index.es200.js +3 -7
- package/dist/index.es200.js.map +1 -1
- package/dist/index.es201.js +3 -4
- package/dist/index.es201.js.map +1 -1
- package/dist/index.es202.js +5 -7
- package/dist/index.es202.js.map +1 -1
- package/dist/index.es203.js +36 -41
- package/dist/index.es203.js.map +1 -1
- package/dist/index.es204.js +5 -10
- package/dist/index.es204.js.map +1 -1
- package/dist/index.es205.js +5 -241
- package/dist/index.es205.js.map +1 -1
- package/dist/index.es206.js +5 -49
- package/dist/index.es206.js.map +1 -1
- package/dist/index.es207.js +29 -22
- package/dist/index.es207.js.map +1 -1
- package/dist/index.es208.js +10 -10
- package/dist/index.es208.js.map +1 -1
- package/dist/index.es209.js +241 -7
- package/dist/index.es209.js.map +1 -1
- package/dist/index.es21.js +27 -67
- package/dist/index.es21.js.map +1 -1
- package/dist/index.es210.js +50 -6
- package/dist/index.es210.js.map +1 -1
- package/dist/index.es211.js +30 -60
- package/dist/index.es211.js.map +1 -1
- package/dist/index.es212.js +11 -39
- package/dist/index.es212.js.map +1 -1
- package/dist/index.es213.js +7 -31
- package/dist/index.es213.js.map +1 -1
- package/dist/index.es214.js +6 -61
- package/dist/index.es214.js.map +1 -1
- package/dist/index.es215.js +58 -8
- package/dist/index.es215.js.map +1 -1
- package/dist/index.es216.js +34 -16
- package/dist/index.es216.js.map +1 -1
- package/dist/index.es217.js +31 -4
- package/dist/index.es217.js.map +1 -1
- package/dist/index.es218.js +58 -13
- package/dist/index.es218.js.map +1 -1
- package/dist/index.es219.js +14 -32
- package/dist/index.es219.js.map +1 -1
- package/dist/index.es22.js +140 -30
- package/dist/index.es22.js.map +1 -1
- package/dist/index.es220.js +23 -5
- package/dist/index.es220.js.map +1 -1
- package/dist/index.es221.js +4 -4
- package/dist/index.es221.js.map +1 -1
- package/dist/index.es222.js +16 -4
- package/dist/index.es222.js.map +1 -1
- package/dist/index.es223.js +32 -7
- package/dist/index.es223.js.map +1 -1
- package/dist/index.es224.js +4 -91
- package/dist/index.es224.js.map +1 -1
- package/dist/index.es225.js +4 -17
- package/dist/index.es225.js.map +1 -1
- package/dist/index.es226.js +5 -762
- package/dist/index.es226.js.map +1 -1
- package/dist/index.es227.js +8 -66
- package/dist/index.es227.js.map +1 -1
- package/dist/index.es228.js +83 -165
- package/dist/index.es228.js.map +1 -1
- package/dist/index.es229.js +16 -36
- package/dist/index.es229.js.map +1 -1
- package/dist/index.es23.js +17 -32
- package/dist/index.es23.js.map +1 -1
- package/dist/index.es230.js +761 -136
- package/dist/index.es230.js.map +1 -1
- package/dist/index.es231.js +66 -93
- package/dist/index.es231.js.map +1 -1
- package/dist/index.es232.js +172 -31
- package/dist/index.es232.js.map +1 -1
- package/dist/index.es233.js +129 -277
- package/dist/index.es233.js.map +1 -1
- package/dist/index.es234.js +92 -25
- package/dist/index.es234.js.map +1 -1
- package/dist/index.es235.js +31 -22
- package/dist/index.es235.js.map +1 -1
- package/dist/index.es236.js +284 -14
- package/dist/index.es236.js.map +1 -1
- package/dist/index.es237.js +24 -13
- package/dist/index.es237.js.map +1 -1
- package/dist/index.es238.js +17 -19
- package/dist/index.es238.js.map +1 -1
- package/dist/index.es239.js +12 -43
- package/dist/index.es239.js.map +1 -1
- package/dist/index.es24.js +57 -136
- package/dist/index.es24.js.map +1 -1
- package/dist/index.es240.js +14 -11
- package/dist/index.es240.js.map +1 -1
- package/dist/index.es241.js +24 -10
- package/dist/index.es241.js.map +1 -1
- package/dist/index.es242.js +45 -11
- package/dist/index.es242.js.map +1 -1
- package/dist/index.es243.js +11 -14
- package/dist/index.es243.js.map +1 -1
- package/dist/index.es244.js +10 -10
- package/dist/index.es244.js.map +1 -1
- package/dist/index.es245.js +11 -11
- package/dist/index.es245.js.map +1 -1
- package/dist/index.es246.js +14 -11
- package/dist/index.es246.js.map +1 -1
- package/dist/index.es247.js +10 -14
- package/dist/index.es247.js.map +1 -1
- package/dist/index.es248.js +11 -11
- package/dist/index.es248.js.map +1 -1
- package/dist/index.es249.js +11 -11
- package/dist/index.es249.js.map +1 -1
- package/dist/index.es25.js +298 -94
- package/dist/index.es25.js.map +1 -1
- package/dist/index.es250.js +15 -11
- package/dist/index.es250.js.map +1 -1
- package/dist/index.es251.js +11 -11
- package/dist/index.es251.js.map +1 -1
- package/dist/index.es252.js +11 -11
- package/dist/index.es252.js.map +1 -1
- package/dist/index.es253.js +10 -10
- package/dist/index.es253.js.map +1 -1
- package/dist/index.es254.js +10 -10
- package/dist/index.es254.js.map +1 -1
- package/dist/index.es255.js +10 -10
- package/dist/index.es255.js.map +1 -1
- package/dist/index.es256.js +11 -56
- package/dist/index.es256.js.map +1 -1
- package/dist/index.es257.js +11 -49
- package/dist/index.es257.js.map +1 -1
- package/dist/index.es258.js +11 -119
- package/dist/index.es258.js.map +1 -1
- package/dist/index.es259.js +56 -384
- package/dist/index.es259.js.map +1 -1
- package/dist/index.es26.js +116 -65
- package/dist/index.es26.js.map +1 -1
- package/dist/index.es260.js +47 -16
- package/dist/index.es260.js.map +1 -1
- package/dist/index.es261.js +118 -10
- package/dist/index.es261.js.map +1 -1
- package/dist/index.es262.js +379 -26
- package/dist/index.es262.js.map +1 -1
- package/dist/index.es263.js +13 -26
- package/dist/index.es263.js.map +1 -1
- package/dist/index.es264.js +10 -61
- package/dist/index.es264.js.map +1 -1
- package/dist/index.es265.js +25 -11
- package/dist/index.es265.js.map +1 -1
- package/dist/index.es266.js +25 -71
- package/dist/index.es266.js.map +1 -1
- package/dist/index.es267.js +62 -11
- package/dist/index.es267.js.map +1 -1
- package/dist/index.es268.js +17 -11
- package/dist/index.es268.js.map +1 -1
- package/dist/index.es269.js +75 -13
- package/dist/index.es269.js.map +1 -1
- package/dist/index.es27.js +91 -168
- package/dist/index.es27.js.map +1 -1
- package/dist/index.es270.js +11 -52
- package/dist/index.es270.js.map +1 -1
- package/dist/index.es271.js +11 -166
- package/dist/index.es271.js.map +1 -1
- package/dist/index.es272.js +16 -2
- package/dist/index.es272.js.map +1 -1
- package/dist/index.es273.js +51 -9
- package/dist/index.es273.js.map +1 -1
- package/dist/index.es274.js +165 -18
- package/dist/index.es274.js.map +1 -1
- package/dist/index.es275.js +36 -37
- package/dist/index.es275.js.map +1 -1
- package/dist/index.es276.js +5 -0
- package/dist/index.es276.js.map +1 -0
- package/dist/index.es277.js +14 -0
- package/dist/index.es277.js.map +1 -0
- package/dist/index.es278.js +23 -0
- package/dist/index.es278.js.map +1 -0
- package/dist/index.es279.js +42 -0
- package/dist/index.es279.js.map +1 -0
- package/dist/index.es28.js +68 -24
- package/dist/index.es28.js.map +1 -1
- package/dist/index.es29.js +178 -12
- package/dist/index.es29.js.map +1 -1
- package/dist/index.es30.js +23 -437
- package/dist/index.es30.js.map +1 -1
- package/dist/index.es31.js +13 -15
- package/dist/index.es31.js.map +1 -1
- package/dist/index.es32.js +429 -107
- package/dist/index.es32.js.map +1 -1
- package/dist/index.es33.js +112 -65
- package/dist/index.es33.js.map +1 -1
- package/dist/index.es34.js +71 -18
- package/dist/index.es34.js.map +1 -1
- package/dist/index.es35.js +17 -260
- package/dist/index.es35.js.map +1 -1
- package/dist/index.es36.js +249 -31
- package/dist/index.es36.js.map +1 -1
- package/dist/index.es37.js +27 -199
- package/dist/index.es37.js.map +1 -1
- package/dist/index.es38.js +198 -50
- package/dist/index.es38.js.map +1 -1
- package/dist/index.es39.js +45 -120
- package/dist/index.es39.js.map +1 -1
- package/dist/index.es40.js +132 -14
- package/dist/index.es40.js.map +1 -1
- package/dist/index.es41.js +19 -225
- package/dist/index.es41.js.map +1 -1
- package/dist/index.es42.js +229 -8
- package/dist/index.es42.js.map +1 -1
- package/dist/index.es43.js +7 -1190
- package/dist/index.es43.js.map +1 -1
- package/dist/index.es44.js +1191 -6
- package/dist/index.es44.js.map +1 -1
- package/dist/index.es45.js +6 -146
- package/dist/index.es45.js.map +1 -1
- package/dist/index.es46.js +147 -7
- package/dist/index.es46.js.map +1 -1
- package/dist/index.es47.js +15 -92
- package/dist/index.es47.js.map +1 -1
- package/dist/index.es49.js +5 -35
- package/dist/index.es49.js.map +1 -1
- package/dist/index.es50.js +7 -71
- package/dist/index.es50.js.map +1 -1
- package/dist/index.es51.js +89 -33
- package/dist/index.es51.js.map +1 -1
- package/dist/index.es52.js +3 -305
- package/dist/index.es52.js.map +1 -1
- package/dist/index.es53.js +36 -9
- package/dist/index.es53.js.map +1 -1
- package/dist/index.es54.js +64 -83
- package/dist/index.es54.js.map +1 -1
- package/dist/index.es55.js +36 -6
- package/dist/index.es55.js.map +1 -1
- package/dist/index.es56.js +303 -12
- package/dist/index.es56.js.map +1 -1
- package/dist/index.es57.js +9 -143
- package/dist/index.es57.js.map +1 -1
- package/dist/index.es58.js +83 -292
- package/dist/index.es58.js.map +1 -1
- package/dist/index.es59.js +6 -64
- package/dist/index.es59.js.map +1 -1
- package/dist/index.es6.js +21 -5
- package/dist/index.es6.js.map +1 -1
- package/dist/index.es60.js +12 -210
- package/dist/index.es60.js.map +1 -1
- package/dist/index.es61.js +138 -29
- package/dist/index.es61.js.map +1 -1
- package/dist/index.es62.js +299 -8
- package/dist/index.es62.js.map +1 -1
- package/dist/index.es63.js +65 -11
- package/dist/index.es63.js.map +1 -1
- package/dist/index.es64.js +201 -175
- package/dist/index.es64.js.map +1 -1
- package/dist/index.es65.js +33 -23
- package/dist/index.es65.js.map +1 -1
- package/dist/index.es66.js +8 -1399
- package/dist/index.es66.js.map +1 -1
- package/dist/index.es67.js +12 -9
- package/dist/index.es67.js.map +1 -1
- package/dist/index.es68.js +187 -8
- package/dist/index.es68.js.map +1 -1
- package/dist/index.es69.js +24 -6
- package/dist/index.es69.js.map +1 -1
- package/dist/index.es70.js +1384 -147
- package/dist/index.es70.js.map +1 -1
- package/dist/index.es71.js +9 -672
- package/dist/index.es71.js.map +1 -1
- package/dist/index.es72.js +8 -12
- package/dist/index.es72.js.map +1 -1
- package/dist/index.es73.js +6 -40
- package/dist/index.es73.js.map +1 -1
- package/dist/index.es74.js +155 -26
- package/dist/index.es74.js.map +1 -1
- package/dist/index.es75.js +657 -217
- package/dist/index.es75.js.map +1 -1
- package/dist/index.es76.js +11 -29
- package/dist/index.es76.js.map +1 -1
- package/dist/index.es77.js +37 -72
- package/dist/index.es77.js.map +1 -1
- package/dist/index.es78.js +32 -74
- package/dist/index.es78.js.map +1 -1
- package/dist/index.es79.js +226 -46
- package/dist/index.es79.js.map +1 -1
- package/dist/index.es80.js +6 -6
- package/dist/index.es80.js.map +1 -1
- package/dist/index.es81.js +71 -39
- package/dist/index.es81.js.map +1 -1
- package/dist/index.es82.js +73 -54
- package/dist/index.es82.js.map +1 -1
- package/dist/index.es83.js +52 -13
- package/dist/index.es83.js.map +1 -1
- package/dist/index.es84.js +28 -135
- package/dist/index.es84.js.map +1 -1
- package/dist/index.es85.js +42 -20
- package/dist/index.es85.js.map +1 -1
- package/dist/index.es86.js +36 -181
- package/dist/index.es86.js.map +1 -1
- package/dist/index.es87.js +5 -241
- package/dist/index.es87.js.map +1 -1
- package/dist/index.es88.js +65 -347
- package/dist/index.es88.js.map +1 -1
- package/dist/index.es89.js +31 -131
- package/dist/index.es89.js.map +1 -1
- package/dist/index.es90.js +49 -62
- package/dist/index.es90.js.map +1 -1
- package/dist/index.es91.js +13 -37
- package/dist/index.es91.js.map +1 -1
- package/dist/index.es92.js +134 -34
- package/dist/index.es92.js.map +1 -1
- package/dist/index.es93.js +20 -165
- package/dist/index.es93.js.map +1 -1
- package/dist/index.es94.js +162 -183
- package/dist/index.es94.js.map +1 -1
- package/dist/index.es95.js +240 -13
- package/dist/index.es95.js.map +1 -1
- package/dist/index.es96.js +352 -27
- package/dist/index.es96.js.map +1 -1
- package/dist/index.es97.js +130 -27
- package/dist/index.es97.js.map +1 -1
- package/dist/index.es98.js +64 -3151
- package/dist/index.es98.js.map +1 -1
- package/dist/index.es99.js +34 -34
- package/dist/index.es99.js.map +1 -1
- package/dist/langgraph-ui-components.css +107 -0
- package/dist/styles.css +1 -1
- package/package.json +8 -7
- package/dist/index.es48.js +0 -7
- package/dist/index.es48.js.map +0 -1
package/dist/index.es96.js
CHANGED
|
@@ -1,33 +1,358 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "./index.
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { AIMessageChunk } from "./index.es38.js";
|
|
2
|
+
import { BaseTracer } from "./index.es118.js";
|
|
3
|
+
import { IterableReadableStream } from "./index.es94.js";
|
|
4
|
+
import { GenerationChunk } from "./index.es119.js";
|
|
5
|
+
function assignName({ name, serialized }) {
|
|
6
|
+
if (name !== void 0) return name;
|
|
7
|
+
if (serialized?.name !== void 0) return serialized.name;
|
|
8
|
+
else if (serialized?.id !== void 0 && Array.isArray(serialized?.id)) return serialized.id[serialized.id.length - 1];
|
|
9
|
+
return "Unnamed";
|
|
6
10
|
}
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
const isStreamEventsHandler = (handler) => handler.name === "event_stream_tracer";
|
|
12
|
+
var EventStreamCallbackHandler = class extends BaseTracer {
|
|
13
|
+
autoClose = true;
|
|
14
|
+
includeNames;
|
|
15
|
+
includeTypes;
|
|
16
|
+
includeTags;
|
|
17
|
+
excludeNames;
|
|
18
|
+
excludeTypes;
|
|
19
|
+
excludeTags;
|
|
20
|
+
runInfoMap = /* @__PURE__ */ new Map();
|
|
21
|
+
tappedPromises = /* @__PURE__ */ new Map();
|
|
22
|
+
transformStream;
|
|
23
|
+
writer;
|
|
24
|
+
receiveStream;
|
|
25
|
+
readableStreamClosed = false;
|
|
26
|
+
name = "event_stream_tracer";
|
|
27
|
+
lc_prefer_streaming = true;
|
|
28
|
+
constructor(fields) {
|
|
29
|
+
super({
|
|
30
|
+
_awaitHandler: true,
|
|
31
|
+
...fields
|
|
32
|
+
});
|
|
33
|
+
this.autoClose = fields?.autoClose ?? true;
|
|
34
|
+
this.includeNames = fields?.includeNames;
|
|
35
|
+
this.includeTypes = fields?.includeTypes;
|
|
36
|
+
this.includeTags = fields?.includeTags;
|
|
37
|
+
this.excludeNames = fields?.excludeNames;
|
|
38
|
+
this.excludeTypes = fields?.excludeTypes;
|
|
39
|
+
this.excludeTags = fields?.excludeTags;
|
|
40
|
+
this.transformStream = new TransformStream({ flush: () => {
|
|
41
|
+
this.readableStreamClosed = true;
|
|
42
|
+
} });
|
|
43
|
+
this.writer = this.transformStream.writable.getWriter();
|
|
44
|
+
this.receiveStream = IterableReadableStream.fromReadableStream(this.transformStream.readable);
|
|
16
45
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const iterator = iter[Symbol.asyncIterator]();
|
|
20
|
-
while (true) {
|
|
21
|
-
const { value, done } = await AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(context), iterator.next.bind(iter), true);
|
|
22
|
-
if (done) break;
|
|
23
|
-
else yield value;
|
|
46
|
+
[Symbol.asyncIterator]() {
|
|
47
|
+
return this.receiveStream;
|
|
24
48
|
}
|
|
25
|
-
|
|
49
|
+
async persistRun(_run) {
|
|
50
|
+
}
|
|
51
|
+
_includeRun(run) {
|
|
52
|
+
const runTags = run.tags ?? [];
|
|
53
|
+
let include = this.includeNames === void 0 && this.includeTags === void 0 && this.includeTypes === void 0;
|
|
54
|
+
if (this.includeNames !== void 0) include = include || this.includeNames.includes(run.name);
|
|
55
|
+
if (this.includeTypes !== void 0) include = include || this.includeTypes.includes(run.runType);
|
|
56
|
+
if (this.includeTags !== void 0) include = include || runTags.find((tag) => this.includeTags?.includes(tag)) !== void 0;
|
|
57
|
+
if (this.excludeNames !== void 0) include = include && !this.excludeNames.includes(run.name);
|
|
58
|
+
if (this.excludeTypes !== void 0) include = include && !this.excludeTypes.includes(run.runType);
|
|
59
|
+
if (this.excludeTags !== void 0) include = include && runTags.every((tag) => !this.excludeTags?.includes(tag));
|
|
60
|
+
return include;
|
|
61
|
+
}
|
|
62
|
+
async *tapOutputIterable(runId, outputStream) {
|
|
63
|
+
const firstChunk = await outputStream.next();
|
|
64
|
+
if (firstChunk.done) return;
|
|
65
|
+
const runInfo = this.runInfoMap.get(runId);
|
|
66
|
+
if (runInfo === void 0) {
|
|
67
|
+
yield firstChunk.value;
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
function _formatOutputChunk(eventType, data) {
|
|
71
|
+
if (eventType === "llm" && typeof data === "string") return new GenerationChunk({ text: data });
|
|
72
|
+
return data;
|
|
73
|
+
}
|
|
74
|
+
let tappedPromise = this.tappedPromises.get(runId);
|
|
75
|
+
if (tappedPromise === void 0) {
|
|
76
|
+
let tappedPromiseResolver;
|
|
77
|
+
tappedPromise = new Promise((resolve) => {
|
|
78
|
+
tappedPromiseResolver = resolve;
|
|
79
|
+
});
|
|
80
|
+
this.tappedPromises.set(runId, tappedPromise);
|
|
81
|
+
try {
|
|
82
|
+
const event = {
|
|
83
|
+
event: `on_${runInfo.runType}_stream`,
|
|
84
|
+
run_id: runId,
|
|
85
|
+
name: runInfo.name,
|
|
86
|
+
tags: runInfo.tags,
|
|
87
|
+
metadata: runInfo.metadata,
|
|
88
|
+
data: {}
|
|
89
|
+
};
|
|
90
|
+
await this.send({
|
|
91
|
+
...event,
|
|
92
|
+
data: { chunk: _formatOutputChunk(runInfo.runType, firstChunk.value) }
|
|
93
|
+
}, runInfo);
|
|
94
|
+
yield firstChunk.value;
|
|
95
|
+
for await (const chunk of outputStream) {
|
|
96
|
+
if (runInfo.runType !== "tool" && runInfo.runType !== "retriever") await this.send({
|
|
97
|
+
...event,
|
|
98
|
+
data: { chunk: _formatOutputChunk(runInfo.runType, chunk) }
|
|
99
|
+
}, runInfo);
|
|
100
|
+
yield chunk;
|
|
101
|
+
}
|
|
102
|
+
} finally {
|
|
103
|
+
tappedPromiseResolver?.();
|
|
104
|
+
}
|
|
105
|
+
} else {
|
|
106
|
+
yield firstChunk.value;
|
|
107
|
+
for await (const chunk of outputStream) yield chunk;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
async send(payload, run) {
|
|
111
|
+
if (this.readableStreamClosed) return;
|
|
112
|
+
if (this._includeRun(run)) await this.writer.write(payload);
|
|
113
|
+
}
|
|
114
|
+
async sendEndEvent(payload, run) {
|
|
115
|
+
const tappedPromise = this.tappedPromises.get(payload.run_id);
|
|
116
|
+
if (tappedPromise !== void 0) tappedPromise.then(() => {
|
|
117
|
+
this.send(payload, run);
|
|
118
|
+
});
|
|
119
|
+
else await this.send(payload, run);
|
|
120
|
+
}
|
|
121
|
+
async onLLMStart(run) {
|
|
122
|
+
const runName = assignName(run);
|
|
123
|
+
const runType = run.inputs.messages !== void 0 ? "chat_model" : "llm";
|
|
124
|
+
const runInfo = {
|
|
125
|
+
tags: run.tags ?? [],
|
|
126
|
+
metadata: run.extra?.metadata ?? {},
|
|
127
|
+
name: runName,
|
|
128
|
+
runType,
|
|
129
|
+
inputs: run.inputs
|
|
130
|
+
};
|
|
131
|
+
this.runInfoMap.set(run.id, runInfo);
|
|
132
|
+
const eventName = `on_${runType}_start`;
|
|
133
|
+
await this.send({
|
|
134
|
+
event: eventName,
|
|
135
|
+
data: { input: run.inputs },
|
|
136
|
+
name: runName,
|
|
137
|
+
tags: run.tags ?? [],
|
|
138
|
+
run_id: run.id,
|
|
139
|
+
metadata: run.extra?.metadata ?? {}
|
|
140
|
+
}, runInfo);
|
|
141
|
+
}
|
|
142
|
+
async onLLMNewToken(run, token, kwargs) {
|
|
143
|
+
const runInfo = this.runInfoMap.get(run.id);
|
|
144
|
+
let chunk;
|
|
145
|
+
let eventName;
|
|
146
|
+
if (runInfo === void 0) throw new Error(`onLLMNewToken: Run ID ${run.id} not found in run map.`);
|
|
147
|
+
if (this.runInfoMap.size === 1) return;
|
|
148
|
+
if (runInfo.runType === "chat_model") {
|
|
149
|
+
eventName = "on_chat_model_stream";
|
|
150
|
+
if (kwargs?.chunk === void 0) chunk = new AIMessageChunk({
|
|
151
|
+
content: token,
|
|
152
|
+
id: `run-${run.id}`
|
|
153
|
+
});
|
|
154
|
+
else chunk = kwargs.chunk.message;
|
|
155
|
+
} else if (runInfo.runType === "llm") {
|
|
156
|
+
eventName = "on_llm_stream";
|
|
157
|
+
if (kwargs?.chunk === void 0) chunk = new GenerationChunk({ text: token });
|
|
158
|
+
else chunk = kwargs.chunk;
|
|
159
|
+
} else throw new Error(`Unexpected run type ${runInfo.runType}`);
|
|
160
|
+
await this.send({
|
|
161
|
+
event: eventName,
|
|
162
|
+
data: { chunk },
|
|
163
|
+
run_id: run.id,
|
|
164
|
+
name: runInfo.name,
|
|
165
|
+
tags: runInfo.tags,
|
|
166
|
+
metadata: runInfo.metadata
|
|
167
|
+
}, runInfo);
|
|
168
|
+
}
|
|
169
|
+
async onLLMEnd(run) {
|
|
170
|
+
const runInfo = this.runInfoMap.get(run.id);
|
|
171
|
+
this.runInfoMap.delete(run.id);
|
|
172
|
+
let eventName;
|
|
173
|
+
if (runInfo === void 0) throw new Error(`onLLMEnd: Run ID ${run.id} not found in run map.`);
|
|
174
|
+
const generations = run.outputs?.generations;
|
|
175
|
+
let output;
|
|
176
|
+
if (runInfo.runType === "chat_model") {
|
|
177
|
+
for (const generation of generations ?? []) {
|
|
178
|
+
if (output !== void 0) break;
|
|
179
|
+
output = generation[0]?.message;
|
|
180
|
+
}
|
|
181
|
+
eventName = "on_chat_model_end";
|
|
182
|
+
} else if (runInfo.runType === "llm") {
|
|
183
|
+
output = {
|
|
184
|
+
generations: generations?.map((generation) => {
|
|
185
|
+
return generation.map((chunk) => {
|
|
186
|
+
return {
|
|
187
|
+
text: chunk.text,
|
|
188
|
+
generationInfo: chunk.generationInfo
|
|
189
|
+
};
|
|
190
|
+
});
|
|
191
|
+
}),
|
|
192
|
+
llmOutput: run.outputs?.llmOutput ?? {}
|
|
193
|
+
};
|
|
194
|
+
eventName = "on_llm_end";
|
|
195
|
+
} else throw new Error(`onLLMEnd: Unexpected run type: ${runInfo.runType}`);
|
|
196
|
+
await this.sendEndEvent({
|
|
197
|
+
event: eventName,
|
|
198
|
+
data: {
|
|
199
|
+
output,
|
|
200
|
+
input: runInfo.inputs
|
|
201
|
+
},
|
|
202
|
+
run_id: run.id,
|
|
203
|
+
name: runInfo.name,
|
|
204
|
+
tags: runInfo.tags,
|
|
205
|
+
metadata: runInfo.metadata
|
|
206
|
+
}, runInfo);
|
|
207
|
+
}
|
|
208
|
+
async onChainStart(run) {
|
|
209
|
+
const runName = assignName(run);
|
|
210
|
+
const runType = run.run_type ?? "chain";
|
|
211
|
+
const runInfo = {
|
|
212
|
+
tags: run.tags ?? [],
|
|
213
|
+
metadata: run.extra?.metadata ?? {},
|
|
214
|
+
name: runName,
|
|
215
|
+
runType: run.run_type
|
|
216
|
+
};
|
|
217
|
+
let eventData = {};
|
|
218
|
+
if (run.inputs.input === "" && Object.keys(run.inputs).length === 1) {
|
|
219
|
+
eventData = {};
|
|
220
|
+
runInfo.inputs = {};
|
|
221
|
+
} else if (run.inputs.input !== void 0) {
|
|
222
|
+
eventData.input = run.inputs.input;
|
|
223
|
+
runInfo.inputs = run.inputs.input;
|
|
224
|
+
} else {
|
|
225
|
+
eventData.input = run.inputs;
|
|
226
|
+
runInfo.inputs = run.inputs;
|
|
227
|
+
}
|
|
228
|
+
this.runInfoMap.set(run.id, runInfo);
|
|
229
|
+
await this.send({
|
|
230
|
+
event: `on_${runType}_start`,
|
|
231
|
+
data: eventData,
|
|
232
|
+
name: runName,
|
|
233
|
+
tags: run.tags ?? [],
|
|
234
|
+
run_id: run.id,
|
|
235
|
+
metadata: run.extra?.metadata ?? {}
|
|
236
|
+
}, runInfo);
|
|
237
|
+
}
|
|
238
|
+
async onChainEnd(run) {
|
|
239
|
+
const runInfo = this.runInfoMap.get(run.id);
|
|
240
|
+
this.runInfoMap.delete(run.id);
|
|
241
|
+
if (runInfo === void 0) throw new Error(`onChainEnd: Run ID ${run.id} not found in run map.`);
|
|
242
|
+
const eventName = `on_${run.run_type}_end`;
|
|
243
|
+
const inputs = run.inputs ?? runInfo.inputs ?? {};
|
|
244
|
+
const outputs = run.outputs?.output ?? run.outputs;
|
|
245
|
+
const data = {
|
|
246
|
+
output: outputs,
|
|
247
|
+
input: inputs
|
|
248
|
+
};
|
|
249
|
+
if (inputs.input && Object.keys(inputs).length === 1) {
|
|
250
|
+
data.input = inputs.input;
|
|
251
|
+
runInfo.inputs = inputs.input;
|
|
252
|
+
}
|
|
253
|
+
await this.sendEndEvent({
|
|
254
|
+
event: eventName,
|
|
255
|
+
data,
|
|
256
|
+
run_id: run.id,
|
|
257
|
+
name: runInfo.name,
|
|
258
|
+
tags: runInfo.tags,
|
|
259
|
+
metadata: runInfo.metadata ?? {}
|
|
260
|
+
}, runInfo);
|
|
261
|
+
}
|
|
262
|
+
async onToolStart(run) {
|
|
263
|
+
const runName = assignName(run);
|
|
264
|
+
const runInfo = {
|
|
265
|
+
tags: run.tags ?? [],
|
|
266
|
+
metadata: run.extra?.metadata ?? {},
|
|
267
|
+
name: runName,
|
|
268
|
+
runType: "tool",
|
|
269
|
+
inputs: run.inputs ?? {}
|
|
270
|
+
};
|
|
271
|
+
this.runInfoMap.set(run.id, runInfo);
|
|
272
|
+
await this.send({
|
|
273
|
+
event: "on_tool_start",
|
|
274
|
+
data: { input: run.inputs ?? {} },
|
|
275
|
+
name: runName,
|
|
276
|
+
run_id: run.id,
|
|
277
|
+
tags: run.tags ?? [],
|
|
278
|
+
metadata: run.extra?.metadata ?? {}
|
|
279
|
+
}, runInfo);
|
|
280
|
+
}
|
|
281
|
+
async onToolEnd(run) {
|
|
282
|
+
const runInfo = this.runInfoMap.get(run.id);
|
|
283
|
+
this.runInfoMap.delete(run.id);
|
|
284
|
+
if (runInfo === void 0) throw new Error(`onToolEnd: Run ID ${run.id} not found in run map.`);
|
|
285
|
+
if (runInfo.inputs === void 0) throw new Error(`onToolEnd: Run ID ${run.id} is a tool call, and is expected to have traced inputs.`);
|
|
286
|
+
const output = run.outputs?.output === void 0 ? run.outputs : run.outputs.output;
|
|
287
|
+
await this.sendEndEvent({
|
|
288
|
+
event: "on_tool_end",
|
|
289
|
+
data: {
|
|
290
|
+
output,
|
|
291
|
+
input: runInfo.inputs
|
|
292
|
+
},
|
|
293
|
+
run_id: run.id,
|
|
294
|
+
name: runInfo.name,
|
|
295
|
+
tags: runInfo.tags,
|
|
296
|
+
metadata: runInfo.metadata
|
|
297
|
+
}, runInfo);
|
|
298
|
+
}
|
|
299
|
+
async onRetrieverStart(run) {
|
|
300
|
+
const runName = assignName(run);
|
|
301
|
+
const runType = "retriever";
|
|
302
|
+
const runInfo = {
|
|
303
|
+
tags: run.tags ?? [],
|
|
304
|
+
metadata: run.extra?.metadata ?? {},
|
|
305
|
+
name: runName,
|
|
306
|
+
runType,
|
|
307
|
+
inputs: { query: run.inputs.query }
|
|
308
|
+
};
|
|
309
|
+
this.runInfoMap.set(run.id, runInfo);
|
|
310
|
+
await this.send({
|
|
311
|
+
event: "on_retriever_start",
|
|
312
|
+
data: { input: { query: run.inputs.query } },
|
|
313
|
+
name: runName,
|
|
314
|
+
tags: run.tags ?? [],
|
|
315
|
+
run_id: run.id,
|
|
316
|
+
metadata: run.extra?.metadata ?? {}
|
|
317
|
+
}, runInfo);
|
|
318
|
+
}
|
|
319
|
+
async onRetrieverEnd(run) {
|
|
320
|
+
const runInfo = this.runInfoMap.get(run.id);
|
|
321
|
+
this.runInfoMap.delete(run.id);
|
|
322
|
+
if (runInfo === void 0) throw new Error(`onRetrieverEnd: Run ID ${run.id} not found in run map.`);
|
|
323
|
+
await this.sendEndEvent({
|
|
324
|
+
event: "on_retriever_end",
|
|
325
|
+
data: {
|
|
326
|
+
output: run.outputs?.documents ?? run.outputs,
|
|
327
|
+
input: runInfo.inputs
|
|
328
|
+
},
|
|
329
|
+
run_id: run.id,
|
|
330
|
+
name: runInfo.name,
|
|
331
|
+
tags: runInfo.tags,
|
|
332
|
+
metadata: runInfo.metadata
|
|
333
|
+
}, runInfo);
|
|
334
|
+
}
|
|
335
|
+
async handleCustomEvent(eventName, data, runId) {
|
|
336
|
+
const runInfo = this.runInfoMap.get(runId);
|
|
337
|
+
if (runInfo === void 0) throw new Error(`handleCustomEvent: Run ID ${runId} not found in run map.`);
|
|
338
|
+
await this.send({
|
|
339
|
+
event: "on_custom_event",
|
|
340
|
+
run_id: runId,
|
|
341
|
+
name: eventName,
|
|
342
|
+
tags: runInfo.tags,
|
|
343
|
+
metadata: runInfo.metadata,
|
|
344
|
+
data
|
|
345
|
+
}, runInfo);
|
|
346
|
+
}
|
|
347
|
+
async finish() {
|
|
348
|
+
const pendingPromises = [...this.tappedPromises.values()];
|
|
349
|
+
Promise.all(pendingPromises).finally(() => {
|
|
350
|
+
this.writer.close();
|
|
351
|
+
});
|
|
352
|
+
}
|
|
353
|
+
};
|
|
26
354
|
export {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
isAsyncIterable,
|
|
30
|
-
isIterableIterator,
|
|
31
|
-
isIterator
|
|
355
|
+
EventStreamCallbackHandler,
|
|
356
|
+
isStreamEventsHandler
|
|
32
357
|
};
|
|
33
358
|
//# sourceMappingURL=index.es96.js.map
|
package/dist/index.es96.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es96.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/runnables/iter.js"],"sourcesContent":["import { AsyncLocalStorageProviderSingleton } from \"../singletons/async_local_storage/index.js\";\nimport \"../singletons/index.js\";\nimport { pickRunnableConfigKeys } from \"./config.js\";\n\n//#region src/runnables/iter.ts\nfunction isIterableIterator(thing) {\n\treturn typeof thing === \"object\" && thing !== null && typeof thing[Symbol.iterator] === \"function\" && typeof thing.next === \"function\";\n}\nconst isIterator = (x) => x != null && typeof x === \"object\" && \"next\" in x && typeof x.next === \"function\";\nfunction isAsyncIterable(thing) {\n\treturn typeof thing === \"object\" && thing !== null && typeof thing[Symbol.asyncIterator] === \"function\";\n}\nfunction* consumeIteratorInContext(context, iter) {\n\twhile (true) {\n\t\tconst { value, done } = AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(context), iter.next.bind(iter), true);\n\t\tif (done) break;\n\t\telse yield value;\n\t}\n}\nasync function* consumeAsyncIterableInContext(context, iter) {\n\tconst iterator = iter[Symbol.asyncIterator]();\n\twhile (true) {\n\t\tconst { value, done } = await AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(context), iterator.next.bind(iter), true);\n\t\tif (done) break;\n\t\telse yield value;\n\t}\n}\n\n//#endregion\nexport { consumeAsyncIterableInContext, consumeIteratorInContext, isAsyncIterable, isIterableIterator, isIterator };\n//# sourceMappingURL=iter.js.map"],"names":[],"mappings":";;;AAKA,SAAS,mBAAmB,OAAO;AAClC,SAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,OAAO,MAAM,OAAO,QAAQ,MAAM,cAAc,OAAO,MAAM,SAAS;AAC7H;AACK,MAAC,aAAa,CAAC,MAAM,KAAK,QAAQ,OAAO,MAAM,YAAY,UAAU,KAAK,OAAO,EAAE,SAAS;AACjG,SAAS,gBAAgB,OAAO;AAC/B,SAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,OAAO,MAAM,OAAO,aAAa,MAAM;AAC9F;AACA,UAAU,yBAAyB,SAAS,MAAM;AACjD,SAAO,MAAM;AACZ,UAAM,EAAE,OAAO,KAAI,IAAK,mCAAmC,cAAc,uBAAuB,OAAO,GAAG,KAAK,KAAK,KAAK,IAAI,GAAG,IAAI;AACpI,QAAI,KAAM;AAAA,QACL,OAAM;AAAA,EACZ;AACD;AACA,gBAAgB,8BAA8B,SAAS,MAAM;AAC5D,QAAM,WAAW,KAAK,OAAO,aAAa,EAAC;AAC3C,SAAO,MAAM;AACZ,UAAM,EAAE,OAAO,KAAI,IAAK,MAAM,mCAAmC,cAAc,uBAAuB,OAAO,GAAG,SAAS,KAAK,KAAK,IAAI,GAAG,IAAI;AAC9I,QAAI,KAAM;AAAA,QACL,OAAM;AAAA,EACZ;AACD;","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.es96.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/tracers/event_stream.js"],"sourcesContent":["import { AIMessageChunk } from \"../messages/ai.js\";\nimport { BaseTracer } from \"./base.js\";\nimport { IterableReadableStream } from \"../utils/stream.js\";\nimport { GenerationChunk } from \"../outputs.js\";\n\n//#region src/tracers/event_stream.ts\nfunction assignName({ name, serialized }) {\n\tif (name !== void 0) return name;\n\tif (serialized?.name !== void 0) return serialized.name;\n\telse if (serialized?.id !== void 0 && Array.isArray(serialized?.id)) return serialized.id[serialized.id.length - 1];\n\treturn \"Unnamed\";\n}\nconst isStreamEventsHandler = (handler) => handler.name === \"event_stream_tracer\";\n/**\n* Class that extends the `BaseTracer` class from the\n* `langchain.callbacks.tracers.base` module. It represents a callback\n* handler that logs the execution of runs and emits `RunLog` instances to a\n* `RunLogStream`.\n*/\nvar EventStreamCallbackHandler = class extends BaseTracer {\n\tautoClose = true;\n\tincludeNames;\n\tincludeTypes;\n\tincludeTags;\n\texcludeNames;\n\texcludeTypes;\n\texcludeTags;\n\trunInfoMap = /* @__PURE__ */ new Map();\n\ttappedPromises = /* @__PURE__ */ new Map();\n\ttransformStream;\n\twriter;\n\treceiveStream;\n\treadableStreamClosed = false;\n\tname = \"event_stream_tracer\";\n\tlc_prefer_streaming = true;\n\tconstructor(fields) {\n\t\tsuper({\n\t\t\t_awaitHandler: true,\n\t\t\t...fields\n\t\t});\n\t\tthis.autoClose = fields?.autoClose ?? true;\n\t\tthis.includeNames = fields?.includeNames;\n\t\tthis.includeTypes = fields?.includeTypes;\n\t\tthis.includeTags = fields?.includeTags;\n\t\tthis.excludeNames = fields?.excludeNames;\n\t\tthis.excludeTypes = fields?.excludeTypes;\n\t\tthis.excludeTags = fields?.excludeTags;\n\t\tthis.transformStream = new TransformStream({ flush: () => {\n\t\t\tthis.readableStreamClosed = true;\n\t\t} });\n\t\tthis.writer = this.transformStream.writable.getWriter();\n\t\tthis.receiveStream = IterableReadableStream.fromReadableStream(this.transformStream.readable);\n\t}\n\t[Symbol.asyncIterator]() {\n\t\treturn this.receiveStream;\n\t}\n\tasync persistRun(_run) {}\n\t_includeRun(run) {\n\t\tconst runTags = run.tags ?? [];\n\t\tlet include = this.includeNames === void 0 && this.includeTags === void 0 && this.includeTypes === void 0;\n\t\tif (this.includeNames !== void 0) include = include || this.includeNames.includes(run.name);\n\t\tif (this.includeTypes !== void 0) include = include || this.includeTypes.includes(run.runType);\n\t\tif (this.includeTags !== void 0) include = include || runTags.find((tag) => this.includeTags?.includes(tag)) !== void 0;\n\t\tif (this.excludeNames !== void 0) include = include && !this.excludeNames.includes(run.name);\n\t\tif (this.excludeTypes !== void 0) include = include && !this.excludeTypes.includes(run.runType);\n\t\tif (this.excludeTags !== void 0) include = include && runTags.every((tag) => !this.excludeTags?.includes(tag));\n\t\treturn include;\n\t}\n\tasync *tapOutputIterable(runId, outputStream) {\n\t\tconst firstChunk = await outputStream.next();\n\t\tif (firstChunk.done) return;\n\t\tconst runInfo = this.runInfoMap.get(runId);\n\t\tif (runInfo === void 0) {\n\t\t\tyield firstChunk.value;\n\t\t\treturn;\n\t\t}\n\t\tfunction _formatOutputChunk(eventType, data) {\n\t\t\tif (eventType === \"llm\" && typeof data === \"string\") return new GenerationChunk({ text: data });\n\t\t\treturn data;\n\t\t}\n\t\tlet tappedPromise = this.tappedPromises.get(runId);\n\t\tif (tappedPromise === void 0) {\n\t\t\tlet tappedPromiseResolver;\n\t\t\ttappedPromise = new Promise((resolve) => {\n\t\t\t\ttappedPromiseResolver = resolve;\n\t\t\t});\n\t\t\tthis.tappedPromises.set(runId, tappedPromise);\n\t\t\ttry {\n\t\t\t\tconst event = {\n\t\t\t\t\tevent: `on_${runInfo.runType}_stream`,\n\t\t\t\t\trun_id: runId,\n\t\t\t\t\tname: runInfo.name,\n\t\t\t\t\ttags: runInfo.tags,\n\t\t\t\t\tmetadata: runInfo.metadata,\n\t\t\t\t\tdata: {}\n\t\t\t\t};\n\t\t\t\tawait this.send({\n\t\t\t\t\t...event,\n\t\t\t\t\tdata: { chunk: _formatOutputChunk(runInfo.runType, firstChunk.value) }\n\t\t\t\t}, runInfo);\n\t\t\t\tyield firstChunk.value;\n\t\t\t\tfor await (const chunk of outputStream) {\n\t\t\t\t\tif (runInfo.runType !== \"tool\" && runInfo.runType !== \"retriever\") await this.send({\n\t\t\t\t\t\t...event,\n\t\t\t\t\t\tdata: { chunk: _formatOutputChunk(runInfo.runType, chunk) }\n\t\t\t\t\t}, runInfo);\n\t\t\t\t\tyield chunk;\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\ttappedPromiseResolver?.();\n\t\t\t}\n\t\t} else {\n\t\t\tyield firstChunk.value;\n\t\t\tfor await (const chunk of outputStream) yield chunk;\n\t\t}\n\t}\n\tasync send(payload, run) {\n\t\tif (this.readableStreamClosed) return;\n\t\tif (this._includeRun(run)) await this.writer.write(payload);\n\t}\n\tasync sendEndEvent(payload, run) {\n\t\tconst tappedPromise = this.tappedPromises.get(payload.run_id);\n\t\tif (tappedPromise !== void 0) tappedPromise.then(() => {\n\t\t\tthis.send(payload, run);\n\t\t});\n\t\telse await this.send(payload, run);\n\t}\n\tasync onLLMStart(run) {\n\t\tconst runName = assignName(run);\n\t\tconst runType = run.inputs.messages !== void 0 ? \"chat_model\" : \"llm\";\n\t\tconst runInfo = {\n\t\t\ttags: run.tags ?? [],\n\t\t\tmetadata: run.extra?.metadata ?? {},\n\t\t\tname: runName,\n\t\t\trunType,\n\t\t\tinputs: run.inputs\n\t\t};\n\t\tthis.runInfoMap.set(run.id, runInfo);\n\t\tconst eventName = `on_${runType}_start`;\n\t\tawait this.send({\n\t\t\tevent: eventName,\n\t\t\tdata: { input: run.inputs },\n\t\t\tname: runName,\n\t\t\ttags: run.tags ?? [],\n\t\t\trun_id: run.id,\n\t\t\tmetadata: run.extra?.metadata ?? {}\n\t\t}, runInfo);\n\t}\n\tasync onLLMNewToken(run, token, kwargs) {\n\t\tconst runInfo = this.runInfoMap.get(run.id);\n\t\tlet chunk;\n\t\tlet eventName;\n\t\tif (runInfo === void 0) throw new Error(`onLLMNewToken: Run ID ${run.id} not found in run map.`);\n\t\tif (this.runInfoMap.size === 1) return;\n\t\tif (runInfo.runType === \"chat_model\") {\n\t\t\teventName = \"on_chat_model_stream\";\n\t\t\tif (kwargs?.chunk === void 0) chunk = new AIMessageChunk({\n\t\t\t\tcontent: token,\n\t\t\t\tid: `run-${run.id}`\n\t\t\t});\n\t\t\telse chunk = kwargs.chunk.message;\n\t\t} else if (runInfo.runType === \"llm\") {\n\t\t\teventName = \"on_llm_stream\";\n\t\t\tif (kwargs?.chunk === void 0) chunk = new GenerationChunk({ text: token });\n\t\t\telse chunk = kwargs.chunk;\n\t\t} else throw new Error(`Unexpected run type ${runInfo.runType}`);\n\t\tawait this.send({\n\t\t\tevent: eventName,\n\t\t\tdata: { chunk },\n\t\t\trun_id: run.id,\n\t\t\tname: runInfo.name,\n\t\t\ttags: runInfo.tags,\n\t\t\tmetadata: runInfo.metadata\n\t\t}, runInfo);\n\t}\n\tasync onLLMEnd(run) {\n\t\tconst runInfo = this.runInfoMap.get(run.id);\n\t\tthis.runInfoMap.delete(run.id);\n\t\tlet eventName;\n\t\tif (runInfo === void 0) throw new Error(`onLLMEnd: Run ID ${run.id} not found in run map.`);\n\t\tconst generations = run.outputs?.generations;\n\t\tlet output;\n\t\tif (runInfo.runType === \"chat_model\") {\n\t\t\tfor (const generation of generations ?? []) {\n\t\t\t\tif (output !== void 0) break;\n\t\t\t\toutput = generation[0]?.message;\n\t\t\t}\n\t\t\teventName = \"on_chat_model_end\";\n\t\t} else if (runInfo.runType === \"llm\") {\n\t\t\toutput = {\n\t\t\t\tgenerations: generations?.map((generation) => {\n\t\t\t\t\treturn generation.map((chunk) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\ttext: chunk.text,\n\t\t\t\t\t\t\tgenerationInfo: chunk.generationInfo\n\t\t\t\t\t\t};\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t\tllmOutput: run.outputs?.llmOutput ?? {}\n\t\t\t};\n\t\t\teventName = \"on_llm_end\";\n\t\t} else throw new Error(`onLLMEnd: Unexpected run type: ${runInfo.runType}`);\n\t\tawait this.sendEndEvent({\n\t\t\tevent: eventName,\n\t\t\tdata: {\n\t\t\t\toutput,\n\t\t\t\tinput: runInfo.inputs\n\t\t\t},\n\t\t\trun_id: run.id,\n\t\t\tname: runInfo.name,\n\t\t\ttags: runInfo.tags,\n\t\t\tmetadata: runInfo.metadata\n\t\t}, runInfo);\n\t}\n\tasync onChainStart(run) {\n\t\tconst runName = assignName(run);\n\t\tconst runType = run.run_type ?? \"chain\";\n\t\tconst runInfo = {\n\t\t\ttags: run.tags ?? [],\n\t\t\tmetadata: run.extra?.metadata ?? {},\n\t\t\tname: runName,\n\t\t\trunType: run.run_type\n\t\t};\n\t\tlet eventData = {};\n\t\tif (run.inputs.input === \"\" && Object.keys(run.inputs).length === 1) {\n\t\t\teventData = {};\n\t\t\trunInfo.inputs = {};\n\t\t} else if (run.inputs.input !== void 0) {\n\t\t\teventData.input = run.inputs.input;\n\t\t\trunInfo.inputs = run.inputs.input;\n\t\t} else {\n\t\t\teventData.input = run.inputs;\n\t\t\trunInfo.inputs = run.inputs;\n\t\t}\n\t\tthis.runInfoMap.set(run.id, runInfo);\n\t\tawait this.send({\n\t\t\tevent: `on_${runType}_start`,\n\t\t\tdata: eventData,\n\t\t\tname: runName,\n\t\t\ttags: run.tags ?? [],\n\t\t\trun_id: run.id,\n\t\t\tmetadata: run.extra?.metadata ?? {}\n\t\t}, runInfo);\n\t}\n\tasync onChainEnd(run) {\n\t\tconst runInfo = this.runInfoMap.get(run.id);\n\t\tthis.runInfoMap.delete(run.id);\n\t\tif (runInfo === void 0) throw new Error(`onChainEnd: Run ID ${run.id} not found in run map.`);\n\t\tconst eventName = `on_${run.run_type}_end`;\n\t\tconst inputs = run.inputs ?? runInfo.inputs ?? {};\n\t\tconst outputs = run.outputs?.output ?? run.outputs;\n\t\tconst data = {\n\t\t\toutput: outputs,\n\t\t\tinput: inputs\n\t\t};\n\t\tif (inputs.input && Object.keys(inputs).length === 1) {\n\t\t\tdata.input = inputs.input;\n\t\t\trunInfo.inputs = inputs.input;\n\t\t}\n\t\tawait this.sendEndEvent({\n\t\t\tevent: eventName,\n\t\t\tdata,\n\t\t\trun_id: run.id,\n\t\t\tname: runInfo.name,\n\t\t\ttags: runInfo.tags,\n\t\t\tmetadata: runInfo.metadata ?? {}\n\t\t}, runInfo);\n\t}\n\tasync onToolStart(run) {\n\t\tconst runName = assignName(run);\n\t\tconst runInfo = {\n\t\t\ttags: run.tags ?? [],\n\t\t\tmetadata: run.extra?.metadata ?? {},\n\t\t\tname: runName,\n\t\t\trunType: \"tool\",\n\t\t\tinputs: run.inputs ?? {}\n\t\t};\n\t\tthis.runInfoMap.set(run.id, runInfo);\n\t\tawait this.send({\n\t\t\tevent: \"on_tool_start\",\n\t\t\tdata: { input: run.inputs ?? {} },\n\t\t\tname: runName,\n\t\t\trun_id: run.id,\n\t\t\ttags: run.tags ?? [],\n\t\t\tmetadata: run.extra?.metadata ?? {}\n\t\t}, runInfo);\n\t}\n\tasync onToolEnd(run) {\n\t\tconst runInfo = this.runInfoMap.get(run.id);\n\t\tthis.runInfoMap.delete(run.id);\n\t\tif (runInfo === void 0) throw new Error(`onToolEnd: Run ID ${run.id} not found in run map.`);\n\t\tif (runInfo.inputs === void 0) throw new Error(`onToolEnd: Run ID ${run.id} is a tool call, and is expected to have traced inputs.`);\n\t\tconst output = run.outputs?.output === void 0 ? run.outputs : run.outputs.output;\n\t\tawait this.sendEndEvent({\n\t\t\tevent: \"on_tool_end\",\n\t\t\tdata: {\n\t\t\t\toutput,\n\t\t\t\tinput: runInfo.inputs\n\t\t\t},\n\t\t\trun_id: run.id,\n\t\t\tname: runInfo.name,\n\t\t\ttags: runInfo.tags,\n\t\t\tmetadata: runInfo.metadata\n\t\t}, runInfo);\n\t}\n\tasync onRetrieverStart(run) {\n\t\tconst runName = assignName(run);\n\t\tconst runType = \"retriever\";\n\t\tconst runInfo = {\n\t\t\ttags: run.tags ?? [],\n\t\t\tmetadata: run.extra?.metadata ?? {},\n\t\t\tname: runName,\n\t\t\trunType,\n\t\t\tinputs: { query: run.inputs.query }\n\t\t};\n\t\tthis.runInfoMap.set(run.id, runInfo);\n\t\tawait this.send({\n\t\t\tevent: \"on_retriever_start\",\n\t\t\tdata: { input: { query: run.inputs.query } },\n\t\t\tname: runName,\n\t\t\ttags: run.tags ?? [],\n\t\t\trun_id: run.id,\n\t\t\tmetadata: run.extra?.metadata ?? {}\n\t\t}, runInfo);\n\t}\n\tasync onRetrieverEnd(run) {\n\t\tconst runInfo = this.runInfoMap.get(run.id);\n\t\tthis.runInfoMap.delete(run.id);\n\t\tif (runInfo === void 0) throw new Error(`onRetrieverEnd: Run ID ${run.id} not found in run map.`);\n\t\tawait this.sendEndEvent({\n\t\t\tevent: \"on_retriever_end\",\n\t\t\tdata: {\n\t\t\t\toutput: run.outputs?.documents ?? run.outputs,\n\t\t\t\tinput: runInfo.inputs\n\t\t\t},\n\t\t\trun_id: run.id,\n\t\t\tname: runInfo.name,\n\t\t\ttags: runInfo.tags,\n\t\t\tmetadata: runInfo.metadata\n\t\t}, runInfo);\n\t}\n\tasync handleCustomEvent(eventName, data, runId) {\n\t\tconst runInfo = this.runInfoMap.get(runId);\n\t\tif (runInfo === void 0) throw new Error(`handleCustomEvent: Run ID ${runId} not found in run map.`);\n\t\tawait this.send({\n\t\t\tevent: \"on_custom_event\",\n\t\t\trun_id: runId,\n\t\t\tname: eventName,\n\t\t\ttags: runInfo.tags,\n\t\t\tmetadata: runInfo.metadata,\n\t\t\tdata\n\t\t}, runInfo);\n\t}\n\tasync finish() {\n\t\tconst pendingPromises = [...this.tappedPromises.values()];\n\t\tPromise.all(pendingPromises).finally(() => {\n\t\t\tthis.writer.close();\n\t\t});\n\t}\n};\n\n//#endregion\nexport { EventStreamCallbackHandler, isStreamEventsHandler };\n//# sourceMappingURL=event_stream.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/index.es97.js
CHANGED
|
@@ -1,37 +1,140 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
1
|
+
import { isNetworkError } from "./index.es120.js";
|
|
2
|
+
function validateRetries(retries) {
|
|
3
|
+
if (typeof retries === "number") {
|
|
4
|
+
if (retries < 0) throw new TypeError("Expected `retries` to be a non-negative number.");
|
|
5
|
+
if (Number.isNaN(retries)) throw new TypeError("Expected `retries` to be a valid number or Infinity, got NaN.");
|
|
6
|
+
} else if (retries !== void 0) throw new TypeError("Expected `retries` to be a number or Infinity.");
|
|
8
7
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
8
|
+
function validateNumberOption(name, value, { min = 0, allowInfinity = false } = {}) {
|
|
9
|
+
if (value === void 0) return;
|
|
10
|
+
if (typeof value !== "number" || Number.isNaN(value)) throw new TypeError(`Expected \`${name}\` to be a number${allowInfinity ? " or Infinity" : ""}.`);
|
|
11
|
+
if (!allowInfinity && !Number.isFinite(value)) throw new TypeError(`Expected \`${name}\` to be a finite number.`);
|
|
12
|
+
if (value < min) throw new TypeError(`Expected \`${name}\` to be ≥ ${min}.`);
|
|
13
|
+
}
|
|
14
|
+
var AbortError = class extends Error {
|
|
15
|
+
constructor(message) {
|
|
16
|
+
super();
|
|
17
|
+
if (message instanceof Error) {
|
|
18
|
+
this.originalError = message;
|
|
19
|
+
({ message } = message);
|
|
20
|
+
} else {
|
|
21
|
+
this.originalError = new Error(message);
|
|
22
|
+
this.originalError.stack = this.stack;
|
|
18
23
|
}
|
|
24
|
+
this.name = "AbortError";
|
|
25
|
+
this.message = message;
|
|
19
26
|
}
|
|
27
|
+
};
|
|
28
|
+
function calculateDelay(retriesConsumed, options) {
|
|
29
|
+
const attempt = Math.max(1, retriesConsumed + 1);
|
|
30
|
+
const random = options.randomize ? Math.random() + 1 : 1;
|
|
31
|
+
let timeout = Math.round(random * options.minTimeout * options.factor ** (attempt - 1));
|
|
32
|
+
timeout = Math.min(timeout, options.maxTimeout);
|
|
33
|
+
return timeout;
|
|
20
34
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
35
|
+
function calculateRemainingTime(start, max) {
|
|
36
|
+
if (!Number.isFinite(max)) return max;
|
|
37
|
+
return max - (performance.now() - start);
|
|
38
|
+
}
|
|
39
|
+
async function onAttemptFailure({ error, attemptNumber, retriesConsumed, startTime, options }) {
|
|
40
|
+
const normalizedError = error instanceof Error ? error : /* @__PURE__ */ new TypeError(`Non-error was thrown: "${error}". You should only throw errors.`);
|
|
41
|
+
if (normalizedError instanceof AbortError) throw normalizedError.originalError;
|
|
42
|
+
const retriesLeft = Number.isFinite(options.retries) ? Math.max(0, options.retries - retriesConsumed) : options.retries;
|
|
43
|
+
const maxRetryTime = options.maxRetryTime ?? Number.POSITIVE_INFINITY;
|
|
44
|
+
const context = Object.freeze({
|
|
45
|
+
error: normalizedError,
|
|
46
|
+
attemptNumber,
|
|
47
|
+
retriesLeft,
|
|
48
|
+
retriesConsumed
|
|
49
|
+
});
|
|
50
|
+
await options.onFailedAttempt(context);
|
|
51
|
+
if (calculateRemainingTime(startTime, maxRetryTime) <= 0) throw normalizedError;
|
|
52
|
+
const consumeRetry = await options.shouldConsumeRetry(context);
|
|
53
|
+
const remainingTime = calculateRemainingTime(startTime, maxRetryTime);
|
|
54
|
+
if (remainingTime <= 0 || retriesLeft <= 0) throw normalizedError;
|
|
55
|
+
if (normalizedError instanceof TypeError && !isNetworkError(normalizedError)) {
|
|
56
|
+
if (consumeRetry) throw normalizedError;
|
|
57
|
+
options.signal?.throwIfAborted();
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
if (!await options.shouldRetry(context)) throw normalizedError;
|
|
61
|
+
if (!consumeRetry) {
|
|
62
|
+
options.signal?.throwIfAborted();
|
|
63
|
+
return false;
|
|
26
64
|
}
|
|
27
|
-
|
|
65
|
+
const delayTime = calculateDelay(retriesConsumed, options);
|
|
66
|
+
const finalDelay = Math.min(delayTime, remainingTime);
|
|
67
|
+
if (finalDelay > 0) await new Promise((resolve, reject) => {
|
|
68
|
+
const onAbort = () => {
|
|
69
|
+
clearTimeout(timeoutToken);
|
|
70
|
+
options.signal?.removeEventListener("abort", onAbort);
|
|
71
|
+
reject(options.signal.reason);
|
|
72
|
+
};
|
|
73
|
+
const timeoutToken = setTimeout(() => {
|
|
74
|
+
options.signal?.removeEventListener("abort", onAbort);
|
|
75
|
+
resolve();
|
|
76
|
+
}, finalDelay);
|
|
77
|
+
if (options.unref) timeoutToken.unref?.();
|
|
78
|
+
options.signal?.addEventListener("abort", onAbort, { once: true });
|
|
79
|
+
});
|
|
80
|
+
options.signal?.throwIfAborted();
|
|
81
|
+
return true;
|
|
28
82
|
}
|
|
29
|
-
function
|
|
30
|
-
|
|
83
|
+
async function pRetry(input, options = {}) {
|
|
84
|
+
options = { ...options };
|
|
85
|
+
validateRetries(options.retries);
|
|
86
|
+
if (Object.hasOwn(options, "forever")) throw new Error("The `forever` option is no longer supported. For many use-cases, you can set `retries: Infinity` instead.");
|
|
87
|
+
options.retries ??= 10;
|
|
88
|
+
options.factor ??= 2;
|
|
89
|
+
options.minTimeout ??= 1e3;
|
|
90
|
+
options.maxTimeout ??= Number.POSITIVE_INFINITY;
|
|
91
|
+
options.maxRetryTime ??= Number.POSITIVE_INFINITY;
|
|
92
|
+
options.randomize ??= false;
|
|
93
|
+
options.onFailedAttempt ??= () => {
|
|
94
|
+
};
|
|
95
|
+
options.shouldRetry ??= () => true;
|
|
96
|
+
options.shouldConsumeRetry ??= () => true;
|
|
97
|
+
validateNumberOption("factor", options.factor, {
|
|
98
|
+
min: 0,
|
|
99
|
+
allowInfinity: false
|
|
100
|
+
});
|
|
101
|
+
validateNumberOption("minTimeout", options.minTimeout, {
|
|
102
|
+
min: 0,
|
|
103
|
+
allowInfinity: false
|
|
104
|
+
});
|
|
105
|
+
validateNumberOption("maxTimeout", options.maxTimeout, {
|
|
106
|
+
min: 0,
|
|
107
|
+
allowInfinity: true
|
|
108
|
+
});
|
|
109
|
+
validateNumberOption("maxRetryTime", options.maxRetryTime, {
|
|
110
|
+
min: 0,
|
|
111
|
+
allowInfinity: true
|
|
112
|
+
});
|
|
113
|
+
if (!(options.factor > 0)) options.factor = 1;
|
|
114
|
+
options.signal?.throwIfAborted();
|
|
115
|
+
let attemptNumber = 0;
|
|
116
|
+
let retriesConsumed = 0;
|
|
117
|
+
const startTime = performance.now();
|
|
118
|
+
while (Number.isFinite(options.retries) ? retriesConsumed <= options.retries : true) {
|
|
119
|
+
attemptNumber++;
|
|
120
|
+
try {
|
|
121
|
+
options.signal?.throwIfAborted();
|
|
122
|
+
const result = await input(attemptNumber);
|
|
123
|
+
options.signal?.throwIfAborted();
|
|
124
|
+
return result;
|
|
125
|
+
} catch (error) {
|
|
126
|
+
if (await onAttemptFailure({
|
|
127
|
+
error,
|
|
128
|
+
attemptNumber,
|
|
129
|
+
retriesConsumed,
|
|
130
|
+
startTime,
|
|
131
|
+
options
|
|
132
|
+
})) retriesConsumed++;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
throw new Error("Retry attempts exhausted without throwing an error.");
|
|
31
136
|
}
|
|
32
137
|
export {
|
|
33
|
-
|
|
34
|
-
getCurrentRunTree,
|
|
35
|
-
isTraceableFunction
|
|
138
|
+
pRetry
|
|
36
139
|
};
|
|
37
140
|
//# sourceMappingURL=index.es97.js.map
|
package/dist/index.es97.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es97.js","sources":["../node_modules/.pnpm
|
|
1
|
+
{"version":3,"file":"index.es97.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/p-retry/index.js"],"sourcesContent":["import { isNetworkError } from \"../is-network-error/index.js\";\n\n//#region src/utils/p-retry/index.js\nfunction validateRetries(retries) {\n\tif (typeof retries === \"number\") {\n\t\tif (retries < 0) throw new TypeError(\"Expected `retries` to be a non-negative number.\");\n\t\tif (Number.isNaN(retries)) throw new TypeError(\"Expected `retries` to be a valid number or Infinity, got NaN.\");\n\t} else if (retries !== void 0) throw new TypeError(\"Expected `retries` to be a number or Infinity.\");\n}\nfunction validateNumberOption(name, value, { min = 0, allowInfinity = false } = {}) {\n\tif (value === void 0) return;\n\tif (typeof value !== \"number\" || Number.isNaN(value)) throw new TypeError(`Expected \\`${name}\\` to be a number${allowInfinity ? \" or Infinity\" : \"\"}.`);\n\tif (!allowInfinity && !Number.isFinite(value)) throw new TypeError(`Expected \\`${name}\\` to be a finite number.`);\n\tif (value < min) throw new TypeError(`Expected \\`${name}\\` to be \\u2265 ${min}.`);\n}\nvar AbortError = class extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tif (message instanceof Error) {\n\t\t\tthis.originalError = message;\n\t\t\t({message} = message);\n\t\t} else {\n\t\t\tthis.originalError = new Error(message);\n\t\t\tthis.originalError.stack = this.stack;\n\t\t}\n\t\tthis.name = \"AbortError\";\n\t\tthis.message = message;\n\t}\n};\nfunction calculateDelay(retriesConsumed, options) {\n\tconst attempt = Math.max(1, retriesConsumed + 1);\n\tconst random = options.randomize ? Math.random() + 1 : 1;\n\tlet timeout = Math.round(random * options.minTimeout * options.factor ** (attempt - 1));\n\ttimeout = Math.min(timeout, options.maxTimeout);\n\treturn timeout;\n}\nfunction calculateRemainingTime(start, max) {\n\tif (!Number.isFinite(max)) return max;\n\treturn max - (performance.now() - start);\n}\nasync function onAttemptFailure({ error, attemptNumber, retriesConsumed, startTime, options }) {\n\tconst normalizedError = error instanceof Error ? error : /* @__PURE__ */ new TypeError(`Non-error was thrown: \"${error}\". You should only throw errors.`);\n\tif (normalizedError instanceof AbortError) throw normalizedError.originalError;\n\tconst retriesLeft = Number.isFinite(options.retries) ? Math.max(0, options.retries - retriesConsumed) : options.retries;\n\tconst maxRetryTime = options.maxRetryTime ?? Number.POSITIVE_INFINITY;\n\tconst context = Object.freeze({\n\t\terror: normalizedError,\n\t\tattemptNumber,\n\t\tretriesLeft,\n\t\tretriesConsumed\n\t});\n\tawait options.onFailedAttempt(context);\n\tif (calculateRemainingTime(startTime, maxRetryTime) <= 0) throw normalizedError;\n\tconst consumeRetry = await options.shouldConsumeRetry(context);\n\tconst remainingTime = calculateRemainingTime(startTime, maxRetryTime);\n\tif (remainingTime <= 0 || retriesLeft <= 0) throw normalizedError;\n\tif (normalizedError instanceof TypeError && !isNetworkError(normalizedError)) {\n\t\tif (consumeRetry) throw normalizedError;\n\t\toptions.signal?.throwIfAborted();\n\t\treturn false;\n\t}\n\tif (!await options.shouldRetry(context)) throw normalizedError;\n\tif (!consumeRetry) {\n\t\toptions.signal?.throwIfAborted();\n\t\treturn false;\n\t}\n\tconst delayTime = calculateDelay(retriesConsumed, options);\n\tconst finalDelay = Math.min(delayTime, remainingTime);\n\tif (finalDelay > 0) await new Promise((resolve, reject) => {\n\t\tconst onAbort = () => {\n\t\t\tclearTimeout(timeoutToken);\n\t\t\toptions.signal?.removeEventListener(\"abort\", onAbort);\n\t\t\treject(options.signal.reason);\n\t\t};\n\t\tconst timeoutToken = setTimeout(() => {\n\t\t\toptions.signal?.removeEventListener(\"abort\", onAbort);\n\t\t\tresolve();\n\t\t}, finalDelay);\n\t\tif (options.unref) timeoutToken.unref?.();\n\t\toptions.signal?.addEventListener(\"abort\", onAbort, { once: true });\n\t});\n\toptions.signal?.throwIfAborted();\n\treturn true;\n}\nasync function pRetry(input, options = {}) {\n\toptions = { ...options };\n\tvalidateRetries(options.retries);\n\tif (Object.hasOwn(options, \"forever\")) throw new Error(\"The `forever` option is no longer supported. For many use-cases, you can set `retries: Infinity` instead.\");\n\toptions.retries ??= 10;\n\toptions.factor ??= 2;\n\toptions.minTimeout ??= 1e3;\n\toptions.maxTimeout ??= Number.POSITIVE_INFINITY;\n\toptions.maxRetryTime ??= Number.POSITIVE_INFINITY;\n\toptions.randomize ??= false;\n\toptions.onFailedAttempt ??= () => {};\n\toptions.shouldRetry ??= () => true;\n\toptions.shouldConsumeRetry ??= () => true;\n\tvalidateNumberOption(\"factor\", options.factor, {\n\t\tmin: 0,\n\t\tallowInfinity: false\n\t});\n\tvalidateNumberOption(\"minTimeout\", options.minTimeout, {\n\t\tmin: 0,\n\t\tallowInfinity: false\n\t});\n\tvalidateNumberOption(\"maxTimeout\", options.maxTimeout, {\n\t\tmin: 0,\n\t\tallowInfinity: true\n\t});\n\tvalidateNumberOption(\"maxRetryTime\", options.maxRetryTime, {\n\t\tmin: 0,\n\t\tallowInfinity: true\n\t});\n\tif (!(options.factor > 0)) options.factor = 1;\n\toptions.signal?.throwIfAborted();\n\tlet attemptNumber = 0;\n\tlet retriesConsumed = 0;\n\tconst startTime = performance.now();\n\twhile (Number.isFinite(options.retries) ? retriesConsumed <= options.retries : true) {\n\t\tattemptNumber++;\n\t\ttry {\n\t\t\toptions.signal?.throwIfAborted();\n\t\t\tconst result = await input(attemptNumber);\n\t\t\toptions.signal?.throwIfAborted();\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tif (await onAttemptFailure({\n\t\t\t\terror,\n\t\t\t\tattemptNumber,\n\t\t\t\tretriesConsumed,\n\t\t\t\tstartTime,\n\t\t\t\toptions\n\t\t\t})) retriesConsumed++;\n\t\t}\n\t}\n\tthrow new Error(\"Retry attempts exhausted without throwing an error.\");\n}\n\n//#endregion\nexport { pRetry };\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|