langgraph-ui-components 0.0.10 → 0.0.11-testing

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. package/dist/index.es.js +3 -2
  2. package/dist/index.es10.js +25 -6
  3. package/dist/index.es10.js.map +1 -1
  4. package/dist/index.es100.js +131 -64
  5. package/dist/index.es100.js.map +1 -1
  6. package/dist/index.es101.js +65 -32
  7. package/dist/index.es101.js.map +1 -1
  8. package/dist/index.es102.js +34 -34
  9. package/dist/index.es102.js.map +1 -1
  10. package/dist/index.es103.js +35 -164
  11. package/dist/index.es103.js.map +1 -1
  12. package/dist/index.es104.js +156 -193
  13. package/dist/index.es104.js.map +1 -1
  14. package/dist/index.es105.js +202 -13
  15. package/dist/index.es105.js.map +1 -1
  16. package/dist/index.es106.js +13 -29
  17. package/dist/index.es106.js.map +1 -1
  18. package/dist/index.es107.js +25 -29
  19. package/dist/index.es107.js.map +1 -1
  20. package/dist/index.es108.js +24 -3147
  21. package/dist/index.es108.js.map +1 -1
  22. package/dist/index.es109.js +3151 -31
  23. package/dist/index.es109.js.map +1 -1
  24. package/dist/index.es110.js +21 -5
  25. package/dist/index.es110.js.map +1 -1
  26. package/dist/index.es111.js +64 -69
  27. package/dist/index.es111.js.map +1 -1
  28. package/dist/index.es112.js +3 -37
  29. package/dist/index.es112.js.map +1 -1
  30. package/dist/index.es113.js +16 -5
  31. package/dist/index.es113.js.map +1 -1
  32. package/dist/index.es114.js +7 -2
  33. package/dist/index.es114.js.map +1 -1
  34. package/dist/index.es115.js +2 -13
  35. package/dist/index.es115.js.map +1 -1
  36. package/dist/index.es116.js +9 -499
  37. package/dist/index.es116.js.map +1 -1
  38. package/dist/index.es117.js +501 -5
  39. package/dist/index.es117.js.map +1 -1
  40. package/dist/index.es118.js +7 -2
  41. package/dist/index.es118.js.map +1 -1
  42. package/dist/index.es119.js +2 -148
  43. package/dist/index.es119.js.map +1 -1
  44. package/dist/index.es120.js +118 -878
  45. package/dist/index.es120.js.map +1 -1
  46. package/dist/index.es121.js +877 -251
  47. package/dist/index.es121.js.map +1 -1
  48. package/dist/index.es122.js +281 -3
  49. package/dist/index.es122.js.map +1 -1
  50. package/dist/index.es123.js +3 -445
  51. package/dist/index.es123.js.map +1 -1
  52. package/dist/index.es124.js +437 -39
  53. package/dist/index.es124.js.map +1 -1
  54. package/dist/index.es125.js +46 -22
  55. package/dist/index.es125.js.map +1 -1
  56. package/dist/index.es126.js +21 -78
  57. package/dist/index.es126.js.map +1 -1
  58. package/dist/index.es127.js +76 -126
  59. package/dist/index.es127.js.map +1 -1
  60. package/dist/index.es128.js +125 -45
  61. package/dist/index.es128.js.map +1 -1
  62. package/dist/index.es129.js +48 -9
  63. package/dist/index.es129.js.map +1 -1
  64. package/dist/index.es130.js +10 -45
  65. package/dist/index.es130.js.map +1 -1
  66. package/dist/index.es131.js +43 -97
  67. package/dist/index.es131.js.map +1 -1
  68. package/dist/index.es132.js +94 -48
  69. package/dist/index.es132.js.map +1 -1
  70. package/dist/index.es133.js +51 -14
  71. package/dist/index.es133.js.map +1 -1
  72. package/dist/index.es134.js +1 -1
  73. package/dist/index.es135.js +1 -1
  74. package/dist/index.es138.js +1 -1
  75. package/dist/index.es139.js +1 -1
  76. package/dist/index.es140.js +1 -1
  77. package/dist/index.es141.js +1 -1
  78. package/dist/index.es142.js +1 -1
  79. package/dist/index.es143.js +1 -1
  80. package/dist/index.es144.js +1 -1
  81. package/dist/index.es145.js +1 -1
  82. package/dist/index.es146.js +1 -1
  83. package/dist/index.es147.js +1 -1
  84. package/dist/index.es148.js +1 -1
  85. package/dist/index.es149.js +1 -1
  86. package/dist/index.es150.js +1 -1
  87. package/dist/index.es151.js +1 -1
  88. package/dist/index.es152.js +1 -1
  89. package/dist/index.es153.js +1 -1
  90. package/dist/index.es154.js +1 -1
  91. package/dist/index.es155.js +1 -1
  92. package/dist/index.es156.js +1 -1
  93. package/dist/index.es157.js +1 -1
  94. package/dist/index.es158.js +1 -1
  95. package/dist/index.es159.js +1 -1
  96. package/dist/index.es16.js +3 -3
  97. package/dist/index.es16.js.map +1 -1
  98. package/dist/index.es160.js +1 -1
  99. package/dist/index.es161.js +1 -1
  100. package/dist/index.es162.js +1 -1
  101. package/dist/index.es163.js +1 -1
  102. package/dist/index.es164.js +1 -1
  103. package/dist/index.es165.js +1 -1
  104. package/dist/index.es166.js +1 -1
  105. package/dist/index.es167.js +1 -1
  106. package/dist/index.es168.js +1 -1
  107. package/dist/index.es169.js +1 -1
  108. package/dist/index.es170.js +1 -1
  109. package/dist/index.es171.js +1 -1
  110. package/dist/index.es172.js +1 -1
  111. package/dist/index.es173.js +1 -1
  112. package/dist/index.es174.js +1 -1
  113. package/dist/index.es175.js +1 -1
  114. package/dist/index.es176.js +1 -1
  115. package/dist/index.es177.js +1 -1
  116. package/dist/index.es178.js +1 -1
  117. package/dist/index.es179.js +1 -1
  118. package/dist/index.es18.js +15 -15
  119. package/dist/index.es180.js +1 -1
  120. package/dist/index.es181.js +1 -1
  121. package/dist/index.es182.js +1 -1
  122. package/dist/index.es183.js +162 -13
  123. package/dist/index.es183.js.map +1 -1
  124. package/dist/index.es184.js +2 -89
  125. package/dist/index.es184.js.map +1 -1
  126. package/dist/index.es185.js +15 -2
  127. package/dist/index.es185.js.map +1 -1
  128. package/dist/index.es186.js +89 -2
  129. package/dist/index.es186.js.map +1 -1
  130. package/dist/index.es187.js +2 -2
  131. package/dist/index.es188.js +56 -2
  132. package/dist/index.es188.js.map +1 -1
  133. package/dist/index.es189.js +100 -2
  134. package/dist/index.es189.js.map +1 -1
  135. package/dist/index.es190.js +191 -2
  136. package/dist/index.es190.js.map +1 -1
  137. package/dist/index.es191.js +110 -2
  138. package/dist/index.es191.js.map +1 -1
  139. package/dist/index.es192.js +35 -2
  140. package/dist/index.es192.js.map +1 -1
  141. package/dist/index.es193.js +10 -2
  142. package/dist/index.es193.js.map +1 -1
  143. package/dist/index.es194.js +11 -2
  144. package/dist/index.es194.js.map +1 -1
  145. package/dist/index.es195.js +12 -2
  146. package/dist/index.es195.js.map +1 -1
  147. package/dist/index.es196.js +91 -2
  148. package/dist/index.es196.js.map +1 -1
  149. package/dist/index.es197.js +275 -2
  150. package/dist/index.es197.js.map +1 -1
  151. package/dist/index.es198.js +2 -2
  152. package/dist/index.es199.js +164 -2
  153. package/dist/index.es199.js.map +1 -1
  154. package/dist/index.es200.js +51 -2
  155. package/dist/index.es200.js.map +1 -1
  156. package/dist/index.es201.js +40 -2
  157. package/dist/index.es201.js.map +1 -1
  158. package/dist/index.es202.js +35 -2
  159. package/dist/index.es202.js.map +1 -1
  160. package/dist/index.es203.js +40 -2
  161. package/dist/index.es203.js.map +1 -1
  162. package/dist/index.es204.js +24 -2
  163. package/dist/index.es204.js.map +1 -1
  164. package/dist/index.es205.js +591 -2
  165. package/dist/index.es205.js.map +1 -1
  166. package/dist/index.es206.js +125 -2
  167. package/dist/index.es206.js.map +1 -1
  168. package/dist/index.es207.js +2 -2
  169. package/dist/index.es208.js +2 -2
  170. package/dist/index.es209.js +2 -2
  171. package/dist/index.es210.js +2 -2
  172. package/dist/index.es211.js +2 -2
  173. package/dist/index.es212.js +2 -2
  174. package/dist/index.es213.js +2 -2
  175. package/dist/index.es214.js +2 -2
  176. package/dist/index.es215.js +2 -2
  177. package/dist/index.es216.js +2 -2
  178. package/dist/index.es217.js +2 -2
  179. package/dist/index.es218.js +2 -2
  180. package/dist/index.es219.js +2 -2
  181. package/dist/index.es220.js +2 -2
  182. package/dist/index.es221.js +2 -2
  183. package/dist/index.es222.js +2 -2
  184. package/dist/index.es223.js +2 -2
  185. package/dist/index.es224.js +2 -2
  186. package/dist/index.es225.js +2 -2
  187. package/dist/index.es226.js +2 -2
  188. package/dist/index.es227.js +2 -2
  189. package/dist/index.es228.js +2 -2
  190. package/dist/index.es229.js +2 -2
  191. package/dist/index.es230.js +2 -2
  192. package/dist/index.es231.js +2 -56
  193. package/dist/index.es231.js.map +1 -1
  194. package/dist/index.es232.js +2 -100
  195. package/dist/index.es232.js.map +1 -1
  196. package/dist/index.es233.js +2 -191
  197. package/dist/index.es233.js.map +1 -1
  198. package/dist/index.es234.js +2 -110
  199. package/dist/index.es234.js.map +1 -1
  200. package/dist/index.es235.js +2 -35
  201. package/dist/index.es235.js.map +1 -1
  202. package/dist/index.es236.js +2 -10
  203. package/dist/index.es236.js.map +1 -1
  204. package/dist/index.es237.js +2 -11
  205. package/dist/index.es237.js.map +1 -1
  206. package/dist/index.es238.js +2 -12
  207. package/dist/index.es238.js.map +1 -1
  208. package/dist/index.es239.js +2 -91
  209. package/dist/index.es239.js.map +1 -1
  210. package/dist/index.es24.js +1 -1
  211. package/dist/index.es240.js +2 -275
  212. package/dist/index.es240.js.map +1 -1
  213. package/dist/index.es241.js +2 -2
  214. package/dist/index.es242.js +2 -164
  215. package/dist/index.es242.js.map +1 -1
  216. package/dist/index.es243.js +2 -51
  217. package/dist/index.es243.js.map +1 -1
  218. package/dist/index.es244.js +2 -40
  219. package/dist/index.es244.js.map +1 -1
  220. package/dist/index.es245.js +2 -35
  221. package/dist/index.es245.js.map +1 -1
  222. package/dist/index.es246.js +2 -40
  223. package/dist/index.es246.js.map +1 -1
  224. package/dist/index.es247.js +2 -24
  225. package/dist/index.es247.js.map +1 -1
  226. package/dist/index.es248.js +2 -591
  227. package/dist/index.es248.js.map +1 -1
  228. package/dist/index.es249.js +2 -125
  229. package/dist/index.es249.js.map +1 -1
  230. package/dist/index.es25.js +3 -1
  231. package/dist/index.es25.js.map +1 -1
  232. package/dist/index.es250.js +2 -164
  233. package/dist/index.es250.js.map +1 -1
  234. package/dist/index.es251.js +2 -2
  235. package/dist/index.es252.js +2 -2
  236. package/dist/index.es253.js +1 -1
  237. package/dist/index.es258.js +1 -1
  238. package/dist/index.es260.js +2 -2
  239. package/dist/index.es262.js +2 -2
  240. package/dist/index.es265.js +1 -1
  241. package/dist/index.es267.js +1 -1
  242. package/dist/index.es277.js +2 -147
  243. package/dist/index.es277.js.map +1 -1
  244. package/dist/index.es278.js +126 -167
  245. package/dist/index.es278.js.map +1 -1
  246. package/dist/index.es279.js +188 -2
  247. package/dist/index.es279.js.map +1 -1
  248. package/dist/index.es280.js +1 -1
  249. package/dist/index.es283.js +1 -1
  250. package/dist/index.es288.js +1 -1
  251. package/dist/index.es29.js +1 -1
  252. package/dist/index.es3.js +24 -9
  253. package/dist/index.es3.js.map +1 -1
  254. package/dist/index.es300.js +1 -1
  255. package/dist/index.es302.js +1 -1
  256. package/dist/index.es31.js +7 -7
  257. package/dist/index.es314.js +1 -1
  258. package/dist/index.es32.js +1 -1
  259. package/dist/index.es334.js +2 -2
  260. package/dist/index.es35.js +4 -4
  261. package/dist/index.es36.js +1185 -111
  262. package/dist/index.es36.js.map +1 -1
  263. package/dist/index.es37.js +7 -71
  264. package/dist/index.es37.js.map +1 -1
  265. package/dist/index.es38.js +9 -18
  266. package/dist/index.es38.js.map +1 -1
  267. package/dist/index.es39.js +136 -250
  268. package/dist/index.es39.js.map +1 -1
  269. package/dist/index.es4.js +2 -1
  270. package/dist/index.es4.js.map +1 -1
  271. package/dist/index.es40.js +116 -41
  272. package/dist/index.es40.js.map +1 -1
  273. package/dist/index.es41.js +64 -208
  274. package/dist/index.es41.js.map +1 -1
  275. package/dist/index.es42.js +17 -66
  276. package/dist/index.es42.js.map +1 -1
  277. package/dist/index.es43.js +236 -117
  278. package/dist/index.es43.js.map +1 -1
  279. package/dist/index.es44.js +38 -19
  280. package/dist/index.es44.js.map +1 -1
  281. package/dist/index.es45.js +202 -217
  282. package/dist/index.es45.js.map +1 -1
  283. package/dist/index.es46.js +65 -7
  284. package/dist/index.es46.js.map +1 -1
  285. package/dist/index.es47.js +131 -1181
  286. package/dist/index.es47.js.map +1 -1
  287. package/dist/index.es48.js +25 -8
  288. package/dist/index.es48.js.map +1 -1
  289. package/dist/index.es49.js +218 -135
  290. package/dist/index.es49.js.map +1 -1
  291. package/dist/index.es5.js.map +1 -1
  292. package/dist/index.es50.js +5 -208
  293. package/dist/index.es50.js.map +1 -1
  294. package/dist/index.es51.js +208 -5
  295. package/dist/index.es51.js.map +1 -1
  296. package/dist/index.es52.js +90 -7
  297. package/dist/index.es52.js.map +1 -1
  298. package/dist/index.es53.js +6 -92
  299. package/dist/index.es53.js.map +1 -1
  300. package/dist/index.es54.js +14 -3
  301. package/dist/index.es54.js.map +1 -1
  302. package/dist/index.es55.js +8 -36
  303. package/dist/index.es55.js.map +1 -1
  304. package/dist/index.es56.js +83 -61
  305. package/dist/index.es56.js.map +1 -1
  306. package/dist/index.es57.js +3 -37
  307. package/dist/index.es57.js.map +1 -1
  308. package/dist/index.es58.js +34 -304
  309. package/dist/index.es58.js.map +1 -1
  310. package/dist/index.es59.js +72 -9
  311. package/dist/index.es59.js.map +1 -1
  312. package/dist/index.es60.js +32 -85
  313. package/dist/index.es60.js.map +1 -1
  314. package/dist/index.es61.js +304 -6
  315. package/dist/index.es61.js.map +1 -1
  316. package/dist/index.es62.js +9 -15
  317. package/dist/index.es62.js.map +1 -1
  318. package/dist/index.es63.js +3 -3
  319. package/dist/index.es64.js +5 -142
  320. package/dist/index.es64.js.map +1 -1
  321. package/dist/index.es65.js +148 -285
  322. package/dist/index.es65.js.map +1 -1
  323. package/dist/index.es66.js +668 -62
  324. package/dist/index.es66.js.map +1 -1
  325. package/dist/index.es67.js +131 -201
  326. package/dist/index.es67.js.map +1 -1
  327. package/dist/index.es68.js +295 -29
  328. package/dist/index.es68.js.map +1 -1
  329. package/dist/index.es69.js +65 -8
  330. package/dist/index.es69.js.map +1 -1
  331. package/dist/index.es7.js +2 -1
  332. package/dist/index.es7.js.map +1 -1
  333. package/dist/index.es70.js +210 -9
  334. package/dist/index.es70.js.map +1 -1
  335. package/dist/index.es71.js +28 -181
  336. package/dist/index.es71.js.map +1 -1
  337. package/dist/index.es72.js +8 -23
  338. package/dist/index.es72.js.map +1 -1
  339. package/dist/index.es73.js +9 -1397
  340. package/dist/index.es73.js.map +1 -1
  341. package/dist/index.es74.js +187 -9
  342. package/dist/index.es74.js.map +1 -1
  343. package/dist/index.es75.js +24 -8
  344. package/dist/index.es75.js.map +1 -1
  345. package/dist/index.es76.js +1399 -5
  346. package/dist/index.es76.js.map +1 -1
  347. package/dist/index.es77.js +9 -163
  348. package/dist/index.es77.js.map +1 -1
  349. package/dist/index.es78.js +8 -672
  350. package/dist/index.es78.js.map +1 -1
  351. package/dist/index.es79.js +36 -20
  352. package/dist/index.es79.js.map +1 -1
  353. package/dist/index.es80.js +5 -68
  354. package/dist/index.es80.js.map +1 -1
  355. package/dist/index.es81.js +73 -3
  356. package/dist/index.es81.js.map +1 -1
  357. package/dist/index.es82.js +36 -11
  358. package/dist/index.es82.js.map +1 -1
  359. package/dist/index.es83.js +10 -38
  360. package/dist/index.es83.js.map +1 -1
  361. package/dist/index.es84.js +34 -28
  362. package/dist/index.es84.js.map +1 -1
  363. package/dist/index.es85.js +28 -226
  364. package/dist/index.es85.js.map +1 -1
  365. package/dist/index.es86.js +228 -26
  366. package/dist/index.es86.js.map +1 -1
  367. package/dist/index.es87.js +26 -71
  368. package/dist/index.es87.js.map +1 -1
  369. package/dist/index.es88.js +41 -42
  370. package/dist/index.es88.js.map +1 -1
  371. package/dist/index.es89.js +71 -47
  372. package/dist/index.es89.js.map +1 -1
  373. package/dist/index.es90.js +37 -15
  374. package/dist/index.es90.js.map +1 -1
  375. package/dist/index.es91.js +6 -19
  376. package/dist/index.es91.js.map +1 -1
  377. package/dist/index.es92.js +40 -54
  378. package/dist/index.es92.js.map +1 -1
  379. package/dist/index.es93.js +56 -12
  380. package/dist/index.es93.js.map +1 -1
  381. package/dist/index.es94.js +13 -137
  382. package/dist/index.es94.js.map +1 -1
  383. package/dist/index.es95.js +135 -19
  384. package/dist/index.es95.js.map +1 -1
  385. package/dist/index.es96.js +18 -179
  386. package/dist/index.es96.js.map +1 -1
  387. package/dist/index.es97.js +163 -222
  388. package/dist/index.es97.js.map +1 -1
  389. package/dist/index.es98.js +187 -301
  390. package/dist/index.es98.js.map +1 -1
  391. package/dist/index.es99.js +348 -130
  392. package/dist/index.es99.js.map +1 -1
  393. package/package.json +1 -1
@@ -1,185 +1,24 @@
1
- import { __export } from "./index.es52.js";
2
- import { AsyncLocalStorageProviderSingleton } from "./index.es92.js";
3
- import "./index.es93.js";
4
- import { pickRunnableConfigKeys } from "./index.es94.js";
5
- import { raceWithSignal } from "./index.es95.js";
6
- var stream_exports = {};
7
- __export(stream_exports, {
8
- AsyncGeneratorWithSetup: () => AsyncGeneratorWithSetup,
9
- IterableReadableStream: () => IterableReadableStream,
10
- atee: () => atee,
11
- concat: () => concat,
12
- pipeGeneratorWithSetup: () => pipeGeneratorWithSetup
13
- });
14
- var IterableReadableStream = class IterableReadableStream2 extends ReadableStream {
15
- reader;
16
- ensureReader() {
17
- if (!this.reader) this.reader = this.getReader();
18
- }
19
- async next() {
20
- this.ensureReader();
21
- try {
22
- const result = await this.reader.read();
23
- if (result.done) {
24
- this.reader.releaseLock();
25
- return {
26
- done: true,
27
- value: void 0
28
- };
29
- } else return {
30
- done: false,
31
- value: result.value
32
- };
33
- } catch (e) {
34
- this.reader.releaseLock();
35
- throw e;
36
- }
37
- }
38
- async return() {
39
- this.ensureReader();
40
- if (this.locked) {
41
- const cancelPromise = this.reader.cancel();
42
- this.reader.releaseLock();
43
- await cancelPromise;
44
- }
45
- return {
46
- done: true,
47
- value: void 0
1
+ async function raceWithSignal(promise, signal) {
2
+ if (signal === void 0) return promise;
3
+ let listener;
4
+ return Promise.race([promise.catch((err) => {
5
+ if (!signal?.aborted) throw err;
6
+ else return void 0;
7
+ }), new Promise((_, reject) => {
8
+ listener = () => {
9
+ reject(getAbortSignalError(signal));
48
10
  };
49
- }
50
- async throw(e) {
51
- this.ensureReader();
52
- if (this.locked) {
53
- const cancelPromise = this.reader.cancel();
54
- this.reader.releaseLock();
55
- await cancelPromise;
56
- }
57
- throw e;
58
- }
59
- [Symbol.asyncIterator]() {
60
- return this;
61
- }
62
- async [Symbol.asyncDispose]() {
63
- await this.return();
64
- }
65
- static fromReadableStream(stream) {
66
- const reader = stream.getReader();
67
- return new IterableReadableStream2({
68
- start(controller) {
69
- return pump();
70
- function pump() {
71
- return reader.read().then(({ done, value }) => {
72
- if (done) {
73
- controller.close();
74
- return;
75
- }
76
- controller.enqueue(value);
77
- return pump();
78
- });
79
- }
80
- },
81
- cancel() {
82
- reader.releaseLock();
83
- }
84
- });
85
- }
86
- static fromAsyncGenerator(generator) {
87
- return new IterableReadableStream2({
88
- async pull(controller) {
89
- const { value, done } = await generator.next();
90
- if (done) controller.close();
91
- controller.enqueue(value);
92
- },
93
- async cancel(reason) {
94
- await generator.return(reason);
95
- }
96
- });
97
- }
98
- };
99
- function atee(iter, length = 2) {
100
- const buffers = Array.from({ length }, () => []);
101
- return buffers.map(async function* makeIter(buffer) {
102
- while (true) if (buffer.length === 0) {
103
- const result = await iter.next();
104
- for (const buffer$1 of buffers) buffer$1.push(result);
105
- } else if (buffer[0].done) return;
106
- else yield buffer.shift().value;
107
- });
108
- }
109
- function concat(first, second) {
110
- if (Array.isArray(first) && Array.isArray(second)) return first.concat(second);
111
- else if (typeof first === "string" && typeof second === "string") return first + second;
112
- else if (typeof first === "number" && typeof second === "number") return first + second;
113
- else if ("concat" in first && typeof first.concat === "function") return first.concat(second);
114
- else if (typeof first === "object" && typeof second === "object") {
115
- const chunk = { ...first };
116
- for (const [key, value] of Object.entries(second)) if (key in chunk && !Array.isArray(chunk[key])) chunk[key] = concat(chunk[key], value);
117
- else chunk[key] = value;
118
- return chunk;
119
- } else throw new Error(`Cannot concat ${typeof first} and ${typeof second}`);
11
+ signal.addEventListener("abort", listener);
12
+ if (signal.aborted) reject(getAbortSignalError(signal));
13
+ })]).finally(() => signal.removeEventListener("abort", listener));
120
14
  }
121
- var AsyncGeneratorWithSetup = class {
122
- generator;
123
- setup;
124
- config;
125
- signal;
126
- firstResult;
127
- firstResultUsed = false;
128
- constructor(params) {
129
- this.generator = params.generator;
130
- this.config = params.config;
131
- this.signal = params.signal ?? this.config?.signal;
132
- this.setup = new Promise((resolve, reject) => {
133
- AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(params.config), async () => {
134
- this.firstResult = params.generator.next();
135
- if (params.startSetup) this.firstResult.then(params.startSetup).then(resolve, reject);
136
- else this.firstResult.then((_result) => resolve(void 0), reject);
137
- }, true);
138
- });
139
- }
140
- async next(...args) {
141
- this.signal?.throwIfAborted();
142
- if (!this.firstResultUsed) {
143
- this.firstResultUsed = true;
144
- return this.firstResult;
145
- }
146
- return AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(this.config), this.signal ? async () => {
147
- return raceWithSignal(this.generator.next(...args), this.signal);
148
- } : async () => {
149
- return this.generator.next(...args);
150
- }, true);
151
- }
152
- async return(value) {
153
- return this.generator.return(value);
154
- }
155
- async throw(e) {
156
- return this.generator.throw(e);
157
- }
158
- [Symbol.asyncIterator]() {
159
- return this;
160
- }
161
- async [Symbol.asyncDispose]() {
162
- await this.return();
163
- }
164
- };
165
- async function pipeGeneratorWithSetup(to, generator, startSetup, signal, ...args) {
166
- const gen = new AsyncGeneratorWithSetup({
167
- generator,
168
- startSetup,
169
- signal
170
- });
171
- const setup = await gen.setup;
172
- return {
173
- output: to(gen, setup, ...args),
174
- setup
175
- };
15
+ function getAbortSignalError(signal) {
16
+ if (signal?.reason instanceof Error) return signal.reason;
17
+ if (typeof signal?.reason === "string") return new Error(signal.reason);
18
+ return /* @__PURE__ */ new Error("Aborted");
176
19
  }
177
20
  export {
178
- AsyncGeneratorWithSetup,
179
- IterableReadableStream,
180
- atee,
181
- concat,
182
- pipeGeneratorWithSetup,
183
- stream_exports
21
+ getAbortSignalError,
22
+ raceWithSignal
184
23
  };
185
24
  //# sourceMappingURL=index.es96.js.map
@@ -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/utils/stream.js"],"sourcesContent":["import { __export } from \"../_virtual/rolldown_runtime.js\";\nimport { AsyncLocalStorageProviderSingleton } from \"../singletons/async_local_storage/index.js\";\nimport \"../singletons/index.js\";\nimport { pickRunnableConfigKeys } from \"../runnables/config.js\";\nimport { raceWithSignal } from \"./signal.js\";\n\n//#region src/utils/stream.ts\nvar stream_exports = {};\n__export(stream_exports, {\n\tAsyncGeneratorWithSetup: () => AsyncGeneratorWithSetup,\n\tIterableReadableStream: () => IterableReadableStream,\n\tatee: () => atee,\n\tconcat: () => concat,\n\tpipeGeneratorWithSetup: () => pipeGeneratorWithSetup\n});\nvar IterableReadableStream = class IterableReadableStream extends ReadableStream {\n\treader;\n\tensureReader() {\n\t\tif (!this.reader) this.reader = this.getReader();\n\t}\n\tasync next() {\n\t\tthis.ensureReader();\n\t\ttry {\n\t\t\tconst result = await this.reader.read();\n\t\t\tif (result.done) {\n\t\t\t\tthis.reader.releaseLock();\n\t\t\t\treturn {\n\t\t\t\t\tdone: true,\n\t\t\t\t\tvalue: void 0\n\t\t\t\t};\n\t\t\t} else return {\n\t\t\t\tdone: false,\n\t\t\t\tvalue: result.value\n\t\t\t};\n\t\t} catch (e) {\n\t\t\tthis.reader.releaseLock();\n\t\t\tthrow e;\n\t\t}\n\t}\n\tasync return() {\n\t\tthis.ensureReader();\n\t\tif (this.locked) {\n\t\t\tconst cancelPromise = this.reader.cancel();\n\t\t\tthis.reader.releaseLock();\n\t\t\tawait cancelPromise;\n\t\t}\n\t\treturn {\n\t\t\tdone: true,\n\t\t\tvalue: void 0\n\t\t};\n\t}\n\tasync throw(e) {\n\t\tthis.ensureReader();\n\t\tif (this.locked) {\n\t\t\tconst cancelPromise = this.reader.cancel();\n\t\t\tthis.reader.releaseLock();\n\t\t\tawait cancelPromise;\n\t\t}\n\t\tthrow e;\n\t}\n\t[Symbol.asyncIterator]() {\n\t\treturn this;\n\t}\n\tasync [Symbol.asyncDispose]() {\n\t\tawait this.return();\n\t}\n\tstatic fromReadableStream(stream) {\n\t\tconst reader = stream.getReader();\n\t\treturn new IterableReadableStream({\n\t\t\tstart(controller) {\n\t\t\t\treturn pump();\n\t\t\t\tfunction pump() {\n\t\t\t\t\treturn reader.read().then(({ done, value }) => {\n\t\t\t\t\t\tif (done) {\n\t\t\t\t\t\t\tcontroller.close();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontroller.enqueue(value);\n\t\t\t\t\t\treturn pump();\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t},\n\t\t\tcancel() {\n\t\t\t\treader.releaseLock();\n\t\t\t}\n\t\t});\n\t}\n\tstatic fromAsyncGenerator(generator) {\n\t\treturn new IterableReadableStream({\n\t\t\tasync pull(controller) {\n\t\t\t\tconst { value, done } = await generator.next();\n\t\t\t\tif (done) controller.close();\n\t\t\t\tcontroller.enqueue(value);\n\t\t\t},\n\t\t\tasync cancel(reason) {\n\t\t\t\tawait generator.return(reason);\n\t\t\t}\n\t\t});\n\t}\n};\nfunction atee(iter, length = 2) {\n\tconst buffers = Array.from({ length }, () => []);\n\treturn buffers.map(async function* makeIter(buffer) {\n\t\twhile (true) if (buffer.length === 0) {\n\t\t\tconst result = await iter.next();\n\t\t\tfor (const buffer$1 of buffers) buffer$1.push(result);\n\t\t} else if (buffer[0].done) return;\n\t\telse yield buffer.shift().value;\n\t});\n}\nfunction concat(first, second) {\n\tif (Array.isArray(first) && Array.isArray(second)) return first.concat(second);\n\telse if (typeof first === \"string\" && typeof second === \"string\") return first + second;\n\telse if (typeof first === \"number\" && typeof second === \"number\") return first + second;\n\telse if (\"concat\" in first && typeof first.concat === \"function\") return first.concat(second);\n\telse if (typeof first === \"object\" && typeof second === \"object\") {\n\t\tconst chunk = { ...first };\n\t\tfor (const [key, value] of Object.entries(second)) if (key in chunk && !Array.isArray(chunk[key])) chunk[key] = concat(chunk[key], value);\n\t\telse chunk[key] = value;\n\t\treturn chunk;\n\t} else throw new Error(`Cannot concat ${typeof first} and ${typeof second}`);\n}\nvar AsyncGeneratorWithSetup = class {\n\tgenerator;\n\tsetup;\n\tconfig;\n\tsignal;\n\tfirstResult;\n\tfirstResultUsed = false;\n\tconstructor(params) {\n\t\tthis.generator = params.generator;\n\t\tthis.config = params.config;\n\t\tthis.signal = params.signal ?? this.config?.signal;\n\t\tthis.setup = new Promise((resolve, reject) => {\n\t\t\tAsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(params.config), async () => {\n\t\t\t\tthis.firstResult = params.generator.next();\n\t\t\t\tif (params.startSetup) this.firstResult.then(params.startSetup).then(resolve, reject);\n\t\t\t\telse this.firstResult.then((_result) => resolve(void 0), reject);\n\t\t\t}, true);\n\t\t});\n\t}\n\tasync next(...args) {\n\t\tthis.signal?.throwIfAborted();\n\t\tif (!this.firstResultUsed) {\n\t\t\tthis.firstResultUsed = true;\n\t\t\treturn this.firstResult;\n\t\t}\n\t\treturn AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(this.config), this.signal ? async () => {\n\t\t\treturn raceWithSignal(this.generator.next(...args), this.signal);\n\t\t} : async () => {\n\t\t\treturn this.generator.next(...args);\n\t\t}, true);\n\t}\n\tasync return(value) {\n\t\treturn this.generator.return(value);\n\t}\n\tasync throw(e) {\n\t\treturn this.generator.throw(e);\n\t}\n\t[Symbol.asyncIterator]() {\n\t\treturn this;\n\t}\n\tasync [Symbol.asyncDispose]() {\n\t\tawait this.return();\n\t}\n};\nasync function pipeGeneratorWithSetup(to, generator, startSetup, signal, ...args) {\n\tconst gen = new AsyncGeneratorWithSetup({\n\t\tgenerator,\n\t\tstartSetup,\n\t\tsignal\n\t});\n\tconst setup = await gen.setup;\n\treturn {\n\t\toutput: to(gen, setup, ...args),\n\t\tsetup\n\t};\n}\n\n//#endregion\nexport { AsyncGeneratorWithSetup, IterableReadableStream, atee, concat, pipeGeneratorWithSetup, stream_exports };\n//# sourceMappingURL=stream.js.map"],"names":["IterableReadableStream"],"mappings":"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","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/utils/signal.js"],"sourcesContent":["//#region src/utils/signal.ts\n/**\n* Race a promise with an abort signal. If the signal is aborted, the promise will\n* be rejected with the error from the signal. If the promise is rejected, the signal will be aborted.\n*\n* @param promise - The promise to race.\n* @param signal - The abort signal.\n* @returns The result of the promise.\n*/\nasync function raceWithSignal(promise, signal) {\n\tif (signal === void 0) return promise;\n\tlet listener;\n\treturn Promise.race([promise.catch((err) => {\n\t\tif (!signal?.aborted) throw err;\n\t\telse return void 0;\n\t}), new Promise((_, reject) => {\n\t\tlistener = () => {\n\t\t\treject(getAbortSignalError(signal));\n\t\t};\n\t\tsignal.addEventListener(\"abort\", listener);\n\t\tif (signal.aborted) reject(getAbortSignalError(signal));\n\t})]).finally(() => signal.removeEventListener(\"abort\", listener));\n}\n/**\n* Get the error from an abort signal. Since you can set the reason to anything,\n* we have to do some type gymnastics to get a proper error message.\n*\n* @param signal - The abort signal.\n* @returns The error from the abort signal.\n*/\nfunction getAbortSignalError(signal) {\n\tif (signal?.reason instanceof Error) return signal.reason;\n\tif (typeof signal?.reason === \"string\") return new Error(signal.reason);\n\treturn /* @__PURE__ */ new Error(\"Aborted\");\n}\n\n//#endregion\nexport { getAbortSignalError, raceWithSignal };\n//# sourceMappingURL=signal.js.map"],"names":[],"mappings":"AASA,eAAe,eAAe,SAAS,QAAQ;AAC9C,MAAI,WAAW,OAAQ,QAAO;AAC9B,MAAI;AACJ,SAAO,QAAQ,KAAK,CAAC,QAAQ,MAAM,CAAC,QAAQ;AAC3C,QAAI,CAAC,QAAQ,QAAS,OAAM;AAAA,QACvB,QAAO;AAAA,EACb,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,WAAW;AAC9B,eAAW,MAAM;AAChB,aAAO,oBAAoB,MAAM,CAAC;AAAA,IACnC;AACA,WAAO,iBAAiB,SAAS,QAAQ;AACzC,QAAI,OAAO,QAAS,QAAO,oBAAoB,MAAM,CAAC;AAAA,EACvD,CAAC,CAAC,CAAC,EAAE,QAAQ,MAAM,OAAO,oBAAoB,SAAS,QAAQ,CAAC;AACjE;AAQA,SAAS,oBAAoB,QAAQ;AACpC,MAAI,QAAQ,kBAAkB,MAAO,QAAO,OAAO;AACnD,MAAI,OAAO,QAAQ,WAAW,SAAU,QAAO,IAAI,MAAM,OAAO,MAAM;AACtE,SAAuB,oBAAI,MAAM,SAAS;AAC3C;","x_google_ignoreList":[0]}
@@ -1,244 +1,185 @@
1
- import { __export } from "./index.es52.js";
2
- import { AIMessageChunk } from "./index.es41.js";
3
- import { applyPatch } from "./index.es121.js";
4
- import "./index.es122.js";
5
- import { BaseTracer } from "./index.es123.js";
6
- import { IterableReadableStream } from "./index.es96.js";
7
- var log_stream_exports = {};
8
- __export(log_stream_exports, {
9
- LogStreamCallbackHandler: () => LogStreamCallbackHandler,
10
- RunLog: () => RunLog,
11
- RunLogPatch: () => RunLogPatch,
12
- isLogStreamHandler: () => isLogStreamHandler
1
+ import { __export } from "./index.es55.js";
2
+ import { AsyncLocalStorageProviderSingleton } from "./index.es93.js";
3
+ import "./index.es94.js";
4
+ import { pickRunnableConfigKeys } from "./index.es95.js";
5
+ import { raceWithSignal } from "./index.es96.js";
6
+ var stream_exports = {};
7
+ __export(stream_exports, {
8
+ AsyncGeneratorWithSetup: () => AsyncGeneratorWithSetup,
9
+ IterableReadableStream: () => IterableReadableStream,
10
+ atee: () => atee,
11
+ concat: () => concat,
12
+ pipeGeneratorWithSetup: () => pipeGeneratorWithSetup
13
13
  });
14
- var RunLogPatch = class {
15
- ops;
16
- constructor(fields) {
17
- this.ops = fields.ops ?? [];
14
+ var IterableReadableStream = class IterableReadableStream2 extends ReadableStream {
15
+ reader;
16
+ ensureReader() {
17
+ if (!this.reader) this.reader = this.getReader();
18
18
  }
19
- concat(other) {
20
- const ops = this.ops.concat(other.ops);
21
- const states = applyPatch({}, ops);
22
- return new RunLog({
23
- ops,
24
- state: states[states.length - 1].newDocument
25
- });
19
+ async next() {
20
+ this.ensureReader();
21
+ try {
22
+ const result = await this.reader.read();
23
+ if (result.done) {
24
+ this.reader.releaseLock();
25
+ return {
26
+ done: true,
27
+ value: void 0
28
+ };
29
+ } else return {
30
+ done: false,
31
+ value: result.value
32
+ };
33
+ } catch (e) {
34
+ this.reader.releaseLock();
35
+ throw e;
36
+ }
26
37
  }
27
- };
28
- var RunLog = class RunLog2 extends RunLogPatch {
29
- state;
30
- constructor(fields) {
31
- super(fields);
32
- this.state = fields.state;
38
+ async return() {
39
+ this.ensureReader();
40
+ if (this.locked) {
41
+ const cancelPromise = this.reader.cancel();
42
+ this.reader.releaseLock();
43
+ await cancelPromise;
44
+ }
45
+ return {
46
+ done: true,
47
+ value: void 0
48
+ };
49
+ }
50
+ async throw(e) {
51
+ this.ensureReader();
52
+ if (this.locked) {
53
+ const cancelPromise = this.reader.cancel();
54
+ this.reader.releaseLock();
55
+ await cancelPromise;
56
+ }
57
+ throw e;
33
58
  }
34
- concat(other) {
35
- const ops = this.ops.concat(other.ops);
36
- const states = applyPatch(this.state, other.ops);
37
- return new RunLog2({
38
- ops,
39
- state: states[states.length - 1].newDocument
59
+ [Symbol.asyncIterator]() {
60
+ return this;
61
+ }
62
+ async [Symbol.asyncDispose]() {
63
+ await this.return();
64
+ }
65
+ static fromReadableStream(stream) {
66
+ const reader = stream.getReader();
67
+ return new IterableReadableStream2({
68
+ start(controller) {
69
+ return pump();
70
+ function pump() {
71
+ return reader.read().then(({ done, value }) => {
72
+ if (done) {
73
+ controller.close();
74
+ return;
75
+ }
76
+ controller.enqueue(value);
77
+ return pump();
78
+ });
79
+ }
80
+ },
81
+ cancel() {
82
+ reader.releaseLock();
83
+ }
40
84
  });
41
85
  }
42
- static fromRunLogPatch(patch) {
43
- const states = applyPatch({}, patch.ops);
44
- return new RunLog2({
45
- ops: patch.ops,
46
- state: states[states.length - 1].newDocument
86
+ static fromAsyncGenerator(generator) {
87
+ return new IterableReadableStream2({
88
+ async pull(controller) {
89
+ const { value, done } = await generator.next();
90
+ if (done) controller.close();
91
+ controller.enqueue(value);
92
+ },
93
+ async cancel(reason) {
94
+ await generator.return(reason);
95
+ }
47
96
  });
48
97
  }
49
98
  };
50
- const isLogStreamHandler = (handler) => handler.name === "log_stream_tracer";
51
- async function _getStandardizedInputs(run, schemaFormat) {
52
- if (schemaFormat === "original") throw new Error("Do not assign inputs with original schema drop the key for now. When inputs are added to streamLog they should be added with standardized schema for streaming events.");
53
- const { inputs } = run;
54
- if ([
55
- "retriever",
56
- "llm",
57
- "prompt"
58
- ].includes(run.run_type)) return inputs;
59
- if (Object.keys(inputs).length === 1 && inputs?.input === "") return void 0;
60
- return inputs.input;
61
- }
62
- async function _getStandardizedOutputs(run, schemaFormat) {
63
- const { outputs } = run;
64
- if (schemaFormat === "original") return outputs;
65
- if ([
66
- "retriever",
67
- "llm",
68
- "prompt"
69
- ].includes(run.run_type)) return outputs;
70
- if (outputs !== void 0 && Object.keys(outputs).length === 1 && outputs?.output !== void 0) return outputs.output;
71
- return outputs;
99
+ function atee(iter, length = 2) {
100
+ const buffers = Array.from({ length }, () => []);
101
+ return buffers.map(async function* makeIter(buffer) {
102
+ while (true) if (buffer.length === 0) {
103
+ const result = await iter.next();
104
+ for (const buffer$1 of buffers) buffer$1.push(result);
105
+ } else if (buffer[0].done) return;
106
+ else yield buffer.shift().value;
107
+ });
72
108
  }
73
- function isChatGenerationChunk(x) {
74
- return x !== void 0 && x.message !== void 0;
109
+ function concat(first, second) {
110
+ if (Array.isArray(first) && Array.isArray(second)) return first.concat(second);
111
+ else if (typeof first === "string" && typeof second === "string") return first + second;
112
+ else if (typeof first === "number" && typeof second === "number") return first + second;
113
+ else if ("concat" in first && typeof first.concat === "function") return first.concat(second);
114
+ else if (typeof first === "object" && typeof second === "object") {
115
+ const chunk = { ...first };
116
+ for (const [key, value] of Object.entries(second)) if (key in chunk && !Array.isArray(chunk[key])) chunk[key] = concat(chunk[key], value);
117
+ else chunk[key] = value;
118
+ return chunk;
119
+ } else throw new Error(`Cannot concat ${typeof first} and ${typeof second}`);
75
120
  }
76
- var LogStreamCallbackHandler = class extends BaseTracer {
77
- autoClose = true;
78
- includeNames;
79
- includeTypes;
80
- includeTags;
81
- excludeNames;
82
- excludeTypes;
83
- excludeTags;
84
- _schemaFormat = "original";
85
- rootId;
86
- keyMapByRunId = {};
87
- counterMapByRunName = {};
88
- transformStream;
89
- writer;
90
- receiveStream;
91
- name = "log_stream_tracer";
92
- lc_prefer_streaming = true;
93
- constructor(fields) {
94
- super({
95
- _awaitHandler: true,
96
- ...fields
121
+ var AsyncGeneratorWithSetup = class {
122
+ generator;
123
+ setup;
124
+ config;
125
+ signal;
126
+ firstResult;
127
+ firstResultUsed = false;
128
+ constructor(params) {
129
+ this.generator = params.generator;
130
+ this.config = params.config;
131
+ this.signal = params.signal ?? this.config?.signal;
132
+ this.setup = new Promise((resolve, reject) => {
133
+ AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(params.config), async () => {
134
+ this.firstResult = params.generator.next();
135
+ if (params.startSetup) this.firstResult.then(params.startSetup).then(resolve, reject);
136
+ else this.firstResult.then((_result) => resolve(void 0), reject);
137
+ }, true);
97
138
  });
98
- this.autoClose = fields?.autoClose ?? true;
99
- this.includeNames = fields?.includeNames;
100
- this.includeTypes = fields?.includeTypes;
101
- this.includeTags = fields?.includeTags;
102
- this.excludeNames = fields?.excludeNames;
103
- this.excludeTypes = fields?.excludeTypes;
104
- this.excludeTags = fields?.excludeTags;
105
- this._schemaFormat = fields?._schemaFormat ?? this._schemaFormat;
106
- this.transformStream = new TransformStream();
107
- this.writer = this.transformStream.writable.getWriter();
108
- this.receiveStream = IterableReadableStream.fromReadableStream(this.transformStream.readable);
109
139
  }
110
- [Symbol.asyncIterator]() {
111
- return this.receiveStream;
112
- }
113
- async persistRun(_run) {
114
- }
115
- _includeRun(run) {
116
- if (run.id === this.rootId) return false;
117
- const runTags = run.tags ?? [];
118
- let include = this.includeNames === void 0 && this.includeTags === void 0 && this.includeTypes === void 0;
119
- if (this.includeNames !== void 0) include = include || this.includeNames.includes(run.name);
120
- if (this.includeTypes !== void 0) include = include || this.includeTypes.includes(run.run_type);
121
- if (this.includeTags !== void 0) include = include || runTags.find((tag) => this.includeTags?.includes(tag)) !== void 0;
122
- if (this.excludeNames !== void 0) include = include && !this.excludeNames.includes(run.name);
123
- if (this.excludeTypes !== void 0) include = include && !this.excludeTypes.includes(run.run_type);
124
- if (this.excludeTags !== void 0) include = include && runTags.every((tag) => !this.excludeTags?.includes(tag));
125
- return include;
126
- }
127
- async *tapOutputIterable(runId, output) {
128
- for await (const chunk of output) {
129
- if (runId !== this.rootId) {
130
- const key = this.keyMapByRunId[runId];
131
- if (key) await this.writer.write(new RunLogPatch({ ops: [{
132
- op: "add",
133
- path: `/logs/${key}/streamed_output/-`,
134
- value: chunk
135
- }] }));
136
- }
137
- yield chunk;
140
+ async next(...args) {
141
+ this.signal?.throwIfAborted();
142
+ if (!this.firstResultUsed) {
143
+ this.firstResultUsed = true;
144
+ return this.firstResult;
138
145
  }
146
+ return AsyncLocalStorageProviderSingleton.runWithConfig(pickRunnableConfigKeys(this.config), this.signal ? async () => {
147
+ return raceWithSignal(this.generator.next(...args), this.signal);
148
+ } : async () => {
149
+ return this.generator.next(...args);
150
+ }, true);
139
151
  }
140
- async onRunCreate(run) {
141
- if (this.rootId === void 0) {
142
- this.rootId = run.id;
143
- await this.writer.write(new RunLogPatch({ ops: [{
144
- op: "replace",
145
- path: "",
146
- value: {
147
- id: run.id,
148
- name: run.name,
149
- type: run.run_type,
150
- streamed_output: [],
151
- final_output: void 0,
152
- logs: {}
153
- }
154
- }] }));
155
- }
156
- if (!this._includeRun(run)) return;
157
- if (this.counterMapByRunName[run.name] === void 0) this.counterMapByRunName[run.name] = 0;
158
- this.counterMapByRunName[run.name] += 1;
159
- const count = this.counterMapByRunName[run.name];
160
- this.keyMapByRunId[run.id] = count === 1 ? run.name : `${run.name}:${count}`;
161
- const logEntry = {
162
- id: run.id,
163
- name: run.name,
164
- type: run.run_type,
165
- tags: run.tags ?? [],
166
- metadata: run.extra?.metadata ?? {},
167
- start_time: new Date(run.start_time).toISOString(),
168
- streamed_output: [],
169
- streamed_output_str: [],
170
- final_output: void 0,
171
- end_time: void 0
172
- };
173
- if (this._schemaFormat === "streaming_events") logEntry.inputs = await _getStandardizedInputs(run, this._schemaFormat);
174
- await this.writer.write(new RunLogPatch({ ops: [{
175
- op: "add",
176
- path: `/logs/${this.keyMapByRunId[run.id]}`,
177
- value: logEntry
178
- }] }));
152
+ async return(value) {
153
+ return this.generator.return(value);
179
154
  }
180
- async onRunUpdate(run) {
181
- try {
182
- const runName = this.keyMapByRunId[run.id];
183
- if (runName === void 0) return;
184
- const ops = [];
185
- if (this._schemaFormat === "streaming_events") ops.push({
186
- op: "replace",
187
- path: `/logs/${runName}/inputs`,
188
- value: await _getStandardizedInputs(run, this._schemaFormat)
189
- });
190
- ops.push({
191
- op: "add",
192
- path: `/logs/${runName}/final_output`,
193
- value: await _getStandardizedOutputs(run, this._schemaFormat)
194
- });
195
- if (run.end_time !== void 0) ops.push({
196
- op: "add",
197
- path: `/logs/${runName}/end_time`,
198
- value: new Date(run.end_time).toISOString()
199
- });
200
- const patch = new RunLogPatch({ ops });
201
- await this.writer.write(patch);
202
- } finally {
203
- if (run.id === this.rootId) {
204
- const patch = new RunLogPatch({ ops: [{
205
- op: "replace",
206
- path: "/final_output",
207
- value: await _getStandardizedOutputs(run, this._schemaFormat)
208
- }] });
209
- await this.writer.write(patch);
210
- if (this.autoClose) await this.writer.close();
211
- }
212
- }
155
+ async throw(e) {
156
+ return this.generator.throw(e);
213
157
  }
214
- async onLLMNewToken(run, token, kwargs) {
215
- const runName = this.keyMapByRunId[run.id];
216
- if (runName === void 0) return;
217
- const isChatModel = run.inputs.messages !== void 0;
218
- let streamedOutputValue;
219
- if (isChatModel) if (isChatGenerationChunk(kwargs?.chunk)) streamedOutputValue = kwargs?.chunk;
220
- else streamedOutputValue = new AIMessageChunk({
221
- id: `run-${run.id}`,
222
- content: token
223
- });
224
- else streamedOutputValue = token;
225
- const patch = new RunLogPatch({ ops: [{
226
- op: "add",
227
- path: `/logs/${runName}/streamed_output_str/-`,
228
- value: token
229
- }, {
230
- op: "add",
231
- path: `/logs/${runName}/streamed_output/-`,
232
- value: streamedOutputValue
233
- }] });
234
- await this.writer.write(patch);
158
+ [Symbol.asyncIterator]() {
159
+ return this;
160
+ }
161
+ async [Symbol.asyncDispose]() {
162
+ await this.return();
235
163
  }
236
164
  };
165
+ async function pipeGeneratorWithSetup(to, generator, startSetup, signal, ...args) {
166
+ const gen = new AsyncGeneratorWithSetup({
167
+ generator,
168
+ startSetup,
169
+ signal
170
+ });
171
+ const setup = await gen.setup;
172
+ return {
173
+ output: to(gen, setup, ...args),
174
+ setup
175
+ };
176
+ }
237
177
  export {
238
- LogStreamCallbackHandler,
239
- RunLog,
240
- RunLogPatch,
241
- isLogStreamHandler,
242
- log_stream_exports
178
+ AsyncGeneratorWithSetup,
179
+ IterableReadableStream,
180
+ atee,
181
+ concat,
182
+ pipeGeneratorWithSetup,
183
+ stream_exports
243
184
  };
244
185
  //# sourceMappingURL=index.es97.js.map