@langchain/langgraph 0.4.8 → 1.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (494) hide show
  1. package/CHANGELOG.md +7 -2
  2. package/README.md +1 -2
  3. package/dist/_virtual/rolldown_runtime.cjs +25 -0
  4. package/dist/channels/any_value.d.cts +26 -0
  5. package/dist/channels/any_value.d.cts.map +1 -0
  6. package/dist/channels/any_value.d.ts +16 -9
  7. package/dist/channels/any_value.d.ts.map +1 -0
  8. package/dist/channels/base.cjs +97 -133
  9. package/dist/channels/base.cjs.map +1 -0
  10. package/dist/channels/base.d.cts +73 -0
  11. package/dist/channels/base.d.cts.map +1 -0
  12. package/dist/channels/base.d.ts +73 -74
  13. package/dist/channels/base.d.ts.map +1 -0
  14. package/dist/channels/base.js +94 -127
  15. package/dist/channels/base.js.map +1 -1
  16. package/dist/channels/binop.cjs +47 -77
  17. package/dist/channels/binop.cjs.map +1 -0
  18. package/dist/channels/binop.d.cts +22 -0
  19. package/dist/channels/binop.d.cts.map +1 -0
  20. package/dist/channels/binop.d.ts +17 -12
  21. package/dist/channels/binop.d.ts.map +1 -0
  22. package/dist/channels/binop.js +45 -71
  23. package/dist/channels/binop.js.map +1 -1
  24. package/dist/channels/dynamic_barrier_value.d.cts +43 -0
  25. package/dist/channels/dynamic_barrier_value.d.cts.map +1 -0
  26. package/dist/channels/dynamic_barrier_value.d.ts +20 -34
  27. package/dist/channels/dynamic_barrier_value.d.ts.map +1 -0
  28. package/dist/channels/ephemeral_value.cjs +46 -70
  29. package/dist/channels/ephemeral_value.cjs.map +1 -0
  30. package/dist/channels/ephemeral_value.d.cts +23 -0
  31. package/dist/channels/ephemeral_value.d.cts.map +1 -0
  32. package/dist/channels/ephemeral_value.d.ts +18 -11
  33. package/dist/channels/ephemeral_value.d.ts.map +1 -0
  34. package/dist/channels/ephemeral_value.js +45 -65
  35. package/dist/channels/ephemeral_value.js.map +1 -1
  36. package/dist/channels/index.cjs +2 -10
  37. package/dist/channels/index.js +4 -3
  38. package/dist/channels/last_value.cjs +91 -140
  39. package/dist/channels/last_value.cjs.map +1 -0
  40. package/dist/channels/last_value.d.cts +30 -0
  41. package/dist/channels/last_value.d.cts.map +1 -0
  42. package/dist/channels/last_value.d.ts +15 -23
  43. package/dist/channels/last_value.d.ts.map +1 -0
  44. package/dist/channels/last_value.js +88 -133
  45. package/dist/channels/last_value.js.map +1 -1
  46. package/dist/channels/named_barrier_value.cjs +114 -170
  47. package/dist/channels/named_barrier_value.cjs.map +1 -0
  48. package/dist/channels/named_barrier_value.d.cts +33 -0
  49. package/dist/channels/named_barrier_value.d.cts.map +1 -0
  50. package/dist/channels/named_barrier_value.d.ts +19 -29
  51. package/dist/channels/named_barrier_value.d.ts.map +1 -0
  52. package/dist/channels/named_barrier_value.js +112 -163
  53. package/dist/channels/named_barrier_value.js.map +1 -1
  54. package/dist/channels/topic.cjs +63 -96
  55. package/dist/channels/topic.cjs.map +1 -0
  56. package/dist/channels/topic.d.cts +26 -0
  57. package/dist/channels/topic.d.cts.map +1 -0
  58. package/dist/channels/topic.d.ts +21 -18
  59. package/dist/channels/topic.d.ts.map +1 -0
  60. package/dist/channels/topic.js +61 -90
  61. package/dist/channels/topic.js.map +1 -1
  62. package/dist/constants.cjs +373 -452
  63. package/dist/constants.cjs.map +1 -0
  64. package/dist/constants.d.cts +284 -0
  65. package/dist/constants.d.cts.map +1 -0
  66. package/dist/constants.d.ts +112 -148
  67. package/dist/constants.d.ts.map +1 -0
  68. package/dist/constants.js +333 -444
  69. package/dist/constants.js.map +1 -1
  70. package/dist/errors.cjs +150 -179
  71. package/dist/errors.cjs.map +1 -0
  72. package/dist/errors.d.cts +80 -0
  73. package/dist/errors.d.cts.map +1 -0
  74. package/dist/errors.d.ts +55 -46
  75. package/dist/errors.d.ts.map +1 -0
  76. package/dist/errors.js +139 -165
  77. package/dist/errors.js.map +1 -1
  78. package/dist/func/index.cjs +289 -290
  79. package/dist/func/index.cjs.map +1 -0
  80. package/dist/func/index.d.cts +289 -0
  81. package/dist/func/index.d.cts.map +1 -0
  82. package/dist/func/index.d.ts +81 -71
  83. package/dist/func/index.d.ts.map +1 -0
  84. package/dist/func/index.js +285 -284
  85. package/dist/func/index.js.map +1 -1
  86. package/dist/func/types.d.cts +64 -0
  87. package/dist/func/types.d.cts.map +1 -0
  88. package/dist/func/types.d.ts +24 -19
  89. package/dist/func/types.d.ts.map +1 -0
  90. package/dist/graph/annotation.cjs +96 -120
  91. package/dist/graph/annotation.cjs.map +1 -0
  92. package/dist/graph/annotation.d.cts +116 -0
  93. package/dist/graph/annotation.d.cts.map +1 -0
  94. package/dist/graph/annotation.d.ts +33 -34
  95. package/dist/graph/annotation.d.ts.map +1 -0
  96. package/dist/graph/annotation.js +91 -112
  97. package/dist/graph/annotation.js.map +1 -1
  98. package/dist/graph/graph.cjs +419 -723
  99. package/dist/graph/graph.cjs.map +1 -0
  100. package/dist/graph/graph.d.cts +131 -0
  101. package/dist/graph/graph.d.cts.map +1 -0
  102. package/dist/graph/graph.d.ts +122 -91
  103. package/dist/graph/graph.d.ts.map +1 -0
  104. package/dist/graph/graph.js +412 -713
  105. package/dist/graph/graph.js.map +1 -1
  106. package/dist/graph/index.cjs +4 -17
  107. package/dist/graph/index.js +6 -5
  108. package/dist/graph/message.cjs +59 -104
  109. package/dist/graph/message.cjs.map +1 -0
  110. package/dist/graph/message.d.cts +19 -0
  111. package/dist/graph/message.d.cts.map +1 -0
  112. package/dist/graph/message.d.ts +11 -10
  113. package/dist/graph/message.d.ts.map +1 -0
  114. package/dist/graph/message.js +56 -98
  115. package/dist/graph/message.js.map +1 -1
  116. package/dist/graph/messages_annotation.cjs +106 -106
  117. package/dist/graph/messages_annotation.cjs.map +1 -0
  118. package/dist/graph/messages_annotation.d.cts +111 -0
  119. package/dist/graph/messages_annotation.d.cts.map +1 -0
  120. package/dist/graph/messages_annotation.d.ts +18 -9
  121. package/dist/graph/messages_annotation.d.ts.map +1 -0
  122. package/dist/graph/messages_annotation.js +100 -100
  123. package/dist/graph/messages_annotation.js.map +1 -1
  124. package/dist/graph/state.cjs +476 -777
  125. package/dist/graph/state.cjs.map +1 -0
  126. package/dist/graph/state.d.cts +216 -0
  127. package/dist/graph/state.d.cts.map +1 -0
  128. package/dist/graph/state.d.ts +129 -134
  129. package/dist/graph/state.d.ts.map +1 -0
  130. package/dist/graph/state.js +470 -768
  131. package/dist/graph/state.js.map +1 -1
  132. package/dist/graph/zod/index.cjs +10 -21
  133. package/dist/graph/zod/index.d.cts +3 -0
  134. package/dist/graph/zod/index.d.ts +3 -3
  135. package/dist/graph/zod/index.js +4 -4
  136. package/dist/graph/zod/meta.cjs +142 -177
  137. package/dist/graph/zod/meta.cjs.map +1 -0
  138. package/dist/graph/zod/meta.d.cts +116 -0
  139. package/dist/graph/zod/meta.d.cts.map +1 -0
  140. package/dist/graph/zod/meta.d.ts +99 -97
  141. package/dist/graph/zod/meta.d.ts.map +1 -0
  142. package/dist/graph/zod/meta.js +136 -170
  143. package/dist/graph/zod/meta.js.map +1 -1
  144. package/dist/graph/zod/plugin.cjs +36 -39
  145. package/dist/graph/zod/plugin.cjs.map +1 -0
  146. package/dist/graph/zod/plugin.js +34 -35
  147. package/dist/graph/zod/plugin.js.map +1 -1
  148. package/dist/graph/zod/schema.cjs +82 -110
  149. package/dist/graph/zod/schema.cjs.map +1 -0
  150. package/dist/graph/zod/schema.d.cts +38 -0
  151. package/dist/graph/zod/schema.d.cts.map +1 -0
  152. package/dist/graph/zod/schema.d.ts +12 -6
  153. package/dist/graph/zod/schema.d.ts.map +1 -0
  154. package/dist/graph/zod/schema.js +77 -103
  155. package/dist/graph/zod/schema.js.map +1 -1
  156. package/dist/graph/zod/zod-registry.cjs +41 -47
  157. package/dist/graph/zod/zod-registry.cjs.map +1 -0
  158. package/dist/graph/zod/zod-registry.d.cts +51 -0
  159. package/dist/graph/zod/zod-registry.d.cts.map +1 -0
  160. package/dist/graph/zod/zod-registry.d.ts +34 -26
  161. package/dist/graph/zod/zod-registry.d.ts.map +1 -0
  162. package/dist/graph/zod/zod-registry.js +37 -41
  163. package/dist/graph/zod/zod-registry.js.map +1 -1
  164. package/dist/hash.cjs +205 -267
  165. package/dist/hash.cjs.map +1 -0
  166. package/dist/hash.js +205 -265
  167. package/dist/hash.js.map +1 -1
  168. package/dist/index.cjs +110 -33
  169. package/dist/index.cjs.map +1 -0
  170. package/dist/index.d.cts +25 -0
  171. package/dist/index.d.ts +25 -5
  172. package/dist/index.js +18 -7
  173. package/dist/index.js.map +1 -1
  174. package/dist/interrupt.cjs +79 -85
  175. package/dist/interrupt.cjs.map +1 -0
  176. package/dist/interrupt.d.cts +49 -0
  177. package/dist/interrupt.d.cts.map +1 -0
  178. package/dist/interrupt.d.ts +6 -1
  179. package/dist/interrupt.d.ts.map +1 -0
  180. package/dist/interrupt.js +76 -80
  181. package/dist/interrupt.js.map +1 -1
  182. package/dist/prebuilt/agentName.cjs +139 -172
  183. package/dist/prebuilt/agentName.cjs.map +1 -0
  184. package/dist/prebuilt/agentName.d.cts +42 -0
  185. package/dist/prebuilt/agentName.d.cts.map +1 -0
  186. package/dist/prebuilt/agentName.d.ts +13 -21
  187. package/dist/prebuilt/agentName.d.ts.map +1 -0
  188. package/dist/prebuilt/agentName.js +139 -168
  189. package/dist/prebuilt/agentName.js.map +1 -1
  190. package/dist/prebuilt/agent_executor.cjs +42 -80
  191. package/dist/prebuilt/agent_executor.cjs.map +1 -0
  192. package/dist/prebuilt/agent_executor.d.cts +57 -0
  193. package/dist/prebuilt/agent_executor.d.cts.map +1 -0
  194. package/dist/prebuilt/agent_executor.d.ts +46 -37
  195. package/dist/prebuilt/agent_executor.d.ts.map +1 -0
  196. package/dist/prebuilt/agent_executor.js +40 -75
  197. package/dist/prebuilt/agent_executor.js.map +1 -1
  198. package/dist/prebuilt/chat_agent_executor.cjs +66 -128
  199. package/dist/prebuilt/chat_agent_executor.cjs.map +1 -0
  200. package/dist/prebuilt/chat_agent_executor.d.cts +23 -0
  201. package/dist/prebuilt/chat_agent_executor.d.cts.map +1 -0
  202. package/dist/prebuilt/chat_agent_executor.d.ts +18 -10
  203. package/dist/prebuilt/chat_agent_executor.d.ts.map +1 -0
  204. package/dist/prebuilt/chat_agent_executor.js +63 -123
  205. package/dist/prebuilt/chat_agent_executor.js.map +1 -1
  206. package/dist/prebuilt/index.cjs +15 -18
  207. package/dist/prebuilt/index.d.cts +8 -0
  208. package/dist/prebuilt/index.d.ts +8 -8
  209. package/dist/prebuilt/index.js +8 -7
  210. package/dist/prebuilt/interrupt.d.cts +73 -0
  211. package/dist/prebuilt/interrupt.d.cts.map +1 -0
  212. package/dist/prebuilt/interrupt.d.ts +32 -15
  213. package/dist/prebuilt/interrupt.d.ts.map +1 -0
  214. package/dist/prebuilt/react_agent_executor.cjs +317 -473
  215. package/dist/prebuilt/react_agent_executor.cjs.map +1 -0
  216. package/dist/prebuilt/react_agent_executor.d.cts +229 -0
  217. package/dist/prebuilt/react_agent_executor.d.cts.map +1 -0
  218. package/dist/prebuilt/react_agent_executor.d.ts +171 -143
  219. package/dist/prebuilt/react_agent_executor.d.ts.map +1 -0
  220. package/dist/prebuilt/react_agent_executor.js +315 -465
  221. package/dist/prebuilt/react_agent_executor.js.map +1 -1
  222. package/dist/prebuilt/tool_executor.cjs +45 -67
  223. package/dist/prebuilt/tool_executor.cjs.map +1 -0
  224. package/dist/prebuilt/tool_executor.d.cts +42 -0
  225. package/dist/prebuilt/tool_executor.d.cts.map +1 -0
  226. package/dist/prebuilt/tool_executor.d.ts +30 -24
  227. package/dist/prebuilt/tool_executor.d.ts.map +1 -0
  228. package/dist/prebuilt/tool_executor.js +44 -63
  229. package/dist/prebuilt/tool_executor.js.map +1 -1
  230. package/dist/prebuilt/tool_node.cjs +213 -275
  231. package/dist/prebuilt/tool_node.cjs.map +1 -0
  232. package/dist/prebuilt/tool_node.d.cts +151 -0
  233. package/dist/prebuilt/tool_node.d.cts.map +1 -0
  234. package/dist/prebuilt/tool_node.d.ts +30 -17
  235. package/dist/prebuilt/tool_node.d.ts.map +1 -0
  236. package/dist/prebuilt/tool_node.js +209 -268
  237. package/dist/prebuilt/tool_node.js.map +1 -1
  238. package/dist/pregel/algo.cjs +521 -692
  239. package/dist/pregel/algo.cjs.map +1 -0
  240. package/dist/pregel/algo.d.cts +13 -0
  241. package/dist/pregel/algo.d.cts.map +1 -0
  242. package/dist/pregel/algo.d.ts +8 -38
  243. package/dist/pregel/algo.d.ts.map +1 -0
  244. package/dist/pregel/algo.js +516 -683
  245. package/dist/pregel/algo.js.map +1 -1
  246. package/dist/pregel/call.cjs +46 -42
  247. package/dist/pregel/call.cjs.map +1 -0
  248. package/dist/pregel/call.js +43 -37
  249. package/dist/pregel/call.js.map +1 -1
  250. package/dist/pregel/debug.cjs +153 -223
  251. package/dist/pregel/debug.cjs.map +1 -0
  252. package/dist/pregel/debug.js +152 -215
  253. package/dist/pregel/debug.js.map +1 -1
  254. package/dist/pregel/index.cjs +1134 -1604
  255. package/dist/pregel/index.cjs.map +1 -0
  256. package/dist/pregel/index.d.cts +534 -0
  257. package/dist/pregel/index.d.cts.map +1 -0
  258. package/dist/pregel/index.d.ts +458 -422
  259. package/dist/pregel/index.d.ts.map +1 -0
  260. package/dist/pregel/index.js +1125 -1592
  261. package/dist/pregel/index.js.map +1 -1
  262. package/dist/pregel/io.cjs +127 -234
  263. package/dist/pregel/io.cjs.map +1 -0
  264. package/dist/pregel/io.js +122 -225
  265. package/dist/pregel/io.js.map +1 -1
  266. package/dist/pregel/loop.cjs +539 -954
  267. package/dist/pregel/loop.cjs.map +1 -0
  268. package/dist/pregel/loop.js +536 -948
  269. package/dist/pregel/loop.js.map +1 -1
  270. package/dist/pregel/messages.cjs +104 -196
  271. package/dist/pregel/messages.cjs.map +1 -0
  272. package/dist/pregel/messages.js +102 -191
  273. package/dist/pregel/messages.js.map +1 -1
  274. package/dist/pregel/read.cjs +150 -280
  275. package/dist/pregel/read.cjs.map +1 -0
  276. package/dist/pregel/read.d.cts +51 -0
  277. package/dist/pregel/read.d.cts.map +1 -0
  278. package/dist/pregel/read.d.ts +48 -46
  279. package/dist/pregel/read.d.ts.map +1 -0
  280. package/dist/pregel/read.js +147 -274
  281. package/dist/pregel/read.js.map +1 -1
  282. package/dist/pregel/remote.cjs +339 -458
  283. package/dist/pregel/remote.cjs.map +1 -0
  284. package/dist/pregel/remote.d.cts +121 -0
  285. package/dist/pregel/remote.d.cts.map +1 -0
  286. package/dist/pregel/remote.d.ts +79 -69
  287. package/dist/pregel/remote.d.ts.map +1 -0
  288. package/dist/pregel/remote.js +337 -453
  289. package/dist/pregel/remote.js.map +1 -1
  290. package/dist/pregel/retry.cjs +87 -138
  291. package/dist/pregel/retry.cjs.map +1 -0
  292. package/dist/pregel/retry.js +83 -130
  293. package/dist/pregel/retry.js.map +1 -1
  294. package/dist/pregel/runnable_types.d.cts +25 -0
  295. package/dist/pregel/runnable_types.d.cts.map +1 -0
  296. package/dist/pregel/runnable_types.d.ts +22 -16
  297. package/dist/pregel/runnable_types.d.ts.map +1 -0
  298. package/dist/pregel/runner.cjs +222 -315
  299. package/dist/pregel/runner.cjs.map +1 -0
  300. package/dist/pregel/runner.js +219 -308
  301. package/dist/pregel/runner.js.map +1 -1
  302. package/dist/pregel/stream.cjs +89 -130
  303. package/dist/pregel/stream.cjs.map +1 -0
  304. package/dist/pregel/stream.js +87 -125
  305. package/dist/pregel/stream.js.map +1 -1
  306. package/dist/pregel/types.cjs +25 -62
  307. package/dist/pregel/types.cjs.map +1 -0
  308. package/dist/pregel/types.d.cts +437 -0
  309. package/dist/pregel/types.d.cts.map +1 -0
  310. package/dist/pregel/types.d.ts +377 -431
  311. package/dist/pregel/types.d.ts.map +1 -0
  312. package/dist/pregel/types.js +23 -57
  313. package/dist/pregel/types.js.map +1 -1
  314. package/dist/pregel/utils/config.cjs +100 -147
  315. package/dist/pregel/utils/config.cjs.map +1 -0
  316. package/dist/pregel/utils/config.d.cts +36 -0
  317. package/dist/pregel/utils/config.d.cts.map +1 -0
  318. package/dist/pregel/utils/config.d.ts +12 -9
  319. package/dist/pregel/utils/config.d.ts.map +1 -0
  320. package/dist/pregel/utils/config.js +98 -143
  321. package/dist/pregel/utils/config.js.map +1 -1
  322. package/dist/pregel/utils/index.cjs +87 -125
  323. package/dist/pregel/utils/index.cjs.map +1 -0
  324. package/dist/pregel/utils/index.d.cts +51 -0
  325. package/dist/pregel/utils/index.d.cts.map +1 -0
  326. package/dist/pregel/utils/index.d.ts +45 -61
  327. package/dist/pregel/utils/index.d.ts.map +1 -0
  328. package/dist/pregel/utils/index.js +86 -120
  329. package/dist/pregel/utils/index.js.map +1 -1
  330. package/dist/pregel/utils/subgraph.cjs +15 -26
  331. package/dist/pregel/utils/subgraph.cjs.map +1 -0
  332. package/dist/pregel/utils/subgraph.js +12 -21
  333. package/dist/pregel/utils/subgraph.js.map +1 -1
  334. package/dist/pregel/validate.cjs +42 -92
  335. package/dist/pregel/validate.cjs.map +1 -0
  336. package/dist/pregel/validate.js +39 -84
  337. package/dist/pregel/validate.js.map +1 -1
  338. package/dist/pregel/write.cjs +87 -137
  339. package/dist/pregel/write.cjs.map +1 -0
  340. package/dist/pregel/write.d.cts +35 -0
  341. package/dist/pregel/write.d.cts.map +1 -0
  342. package/dist/pregel/write.d.ts +27 -23
  343. package/dist/pregel/write.d.ts.map +1 -0
  344. package/dist/pregel/write.js +83 -131
  345. package/dist/pregel/write.js.map +1 -1
  346. package/dist/remote.cjs +3 -6
  347. package/dist/remote.d.cts +2 -0
  348. package/dist/remote.d.ts +2 -1
  349. package/dist/remote.js +3 -2
  350. package/dist/setup/async_local_storage.cjs +10 -7
  351. package/dist/setup/async_local_storage.cjs.map +1 -0
  352. package/dist/setup/async_local_storage.js +7 -2
  353. package/dist/setup/async_local_storage.js.map +1 -1
  354. package/dist/ui/index.cjs +4 -0
  355. package/dist/ui/index.d.cts +5 -0
  356. package/dist/ui/index.d.ts +5 -0
  357. package/dist/ui/index.js +3 -0
  358. package/dist/ui/stream.cjs +145 -0
  359. package/dist/ui/stream.cjs.map +1 -0
  360. package/dist/ui/stream.d.cts +25 -0
  361. package/dist/ui/stream.d.cts.map +1 -0
  362. package/dist/ui/stream.d.ts +25 -0
  363. package/dist/ui/stream.d.ts.map +1 -0
  364. package/dist/ui/stream.js +143 -0
  365. package/dist/ui/stream.js.map +1 -0
  366. package/dist/ui/types.infer.d.cts +53 -0
  367. package/dist/ui/types.infer.d.cts.map +1 -0
  368. package/dist/ui/types.infer.d.ts +53 -0
  369. package/dist/ui/types.infer.d.ts.map +1 -0
  370. package/dist/ui/types.message.d.cts +95 -0
  371. package/dist/ui/types.message.d.cts.map +1 -0
  372. package/dist/ui/types.message.d.ts +95 -0
  373. package/dist/ui/types.message.d.ts.map +1 -0
  374. package/dist/ui/types.schema.d.cts +228 -0
  375. package/dist/ui/types.schema.d.cts.map +1 -0
  376. package/dist/ui/types.schema.d.ts +228 -0
  377. package/dist/ui/types.schema.d.ts.map +1 -0
  378. package/dist/utils.cjs +77 -147
  379. package/dist/utils.cjs.map +1 -0
  380. package/dist/utils.d.cts +32 -0
  381. package/dist/utils.d.cts.map +1 -0
  382. package/dist/utils.d.ts +29 -25
  383. package/dist/utils.d.ts.map +1 -0
  384. package/dist/utils.js +73 -140
  385. package/dist/utils.js.map +1 -1
  386. package/dist/web.cjs +97 -55
  387. package/dist/web.d.cts +23 -0
  388. package/dist/web.d.ts +23 -14
  389. package/dist/web.js +15 -8
  390. package/package.json +83 -86
  391. package/dist/channels/any_value.cjs +0 -65
  392. package/dist/channels/any_value.js +0 -61
  393. package/dist/channels/any_value.js.map +0 -1
  394. package/dist/channels/dynamic_barrier_value.cjs +0 -212
  395. package/dist/channels/dynamic_barrier_value.js +0 -207
  396. package/dist/channels/dynamic_barrier_value.js.map +0 -1
  397. package/dist/channels/index.d.ts +0 -7
  398. package/dist/channels/index.js.map +0 -1
  399. package/dist/func/types.cjs +0 -15
  400. package/dist/func/types.js +0 -12
  401. package/dist/func/types.js.map +0 -1
  402. package/dist/graph/index.d.ts +0 -4
  403. package/dist/graph/index.js.map +0 -1
  404. package/dist/graph/message.test.cjs +0 -196
  405. package/dist/graph/message.test.d.ts +0 -1
  406. package/dist/graph/message.test.js +0 -194
  407. package/dist/graph/message.test.js.map +0 -1
  408. package/dist/graph/zod/index.js.map +0 -1
  409. package/dist/graph/zod/plugin.d.ts +0 -28
  410. package/dist/hash.d.ts +0 -2
  411. package/dist/prebuilt/index.js.map +0 -1
  412. package/dist/prebuilt/interrupt.cjs +0 -3
  413. package/dist/prebuilt/interrupt.js +0 -2
  414. package/dist/prebuilt/interrupt.js.map +0 -1
  415. package/dist/pregel/call.d.ts +0 -16
  416. package/dist/pregel/debug.d.ts +0 -41
  417. package/dist/pregel/debug.test.cjs +0 -258
  418. package/dist/pregel/debug.test.d.ts +0 -1
  419. package/dist/pregel/debug.test.js +0 -256
  420. package/dist/pregel/debug.test.js.map +0 -1
  421. package/dist/pregel/io.d.ts +0 -30
  422. package/dist/pregel/io.mapCommand.test.cjs +0 -150
  423. package/dist/pregel/io.mapCommand.test.d.ts +0 -1
  424. package/dist/pregel/io.mapCommand.test.js +0 -148
  425. package/dist/pregel/io.mapCommand.test.js.map +0 -1
  426. package/dist/pregel/loop.d.ts +0 -147
  427. package/dist/pregel/messages.d.ts +0 -30
  428. package/dist/pregel/messages.test.cjs +0 -369
  429. package/dist/pregel/messages.test.d.ts +0 -1
  430. package/dist/pregel/messages.test.js +0 -367
  431. package/dist/pregel/messages.test.js.map +0 -1
  432. package/dist/pregel/read.test.cjs +0 -194
  433. package/dist/pregel/read.test.d.ts +0 -1
  434. package/dist/pregel/read.test.js +0 -192
  435. package/dist/pregel/read.test.js.map +0 -1
  436. package/dist/pregel/retry.d.ts +0 -17
  437. package/dist/pregel/runnable_types.cjs +0 -3
  438. package/dist/pregel/runnable_types.js +0 -2
  439. package/dist/pregel/runnable_types.js.map +0 -1
  440. package/dist/pregel/runner.d.ts +0 -79
  441. package/dist/pregel/runner.test.cjs +0 -66
  442. package/dist/pregel/runner.test.d.ts +0 -1
  443. package/dist/pregel/runner.test.js +0 -64
  444. package/dist/pregel/runner.test.js.map +0 -1
  445. package/dist/pregel/stream.d.ts +0 -40
  446. package/dist/pregel/utils/config.test.cjs +0 -214
  447. package/dist/pregel/utils/config.test.d.ts +0 -1
  448. package/dist/pregel/utils/config.test.js +0 -212
  449. package/dist/pregel/utils/config.test.js.map +0 -1
  450. package/dist/pregel/utils/subgraph.d.ts +0 -4
  451. package/dist/pregel/utils/subgraph.test.cjs +0 -83
  452. package/dist/pregel/utils/subgraph.test.d.ts +0 -1
  453. package/dist/pregel/utils/subgraph.test.js +0 -81
  454. package/dist/pregel/utils/subgraph.test.js.map +0 -1
  455. package/dist/pregel/validate.d.ts +0 -16
  456. package/dist/pregel/validate.test.cjs +0 -220
  457. package/dist/pregel/validate.test.d.ts +0 -1
  458. package/dist/pregel/validate.test.js +0 -218
  459. package/dist/pregel/validate.test.js.map +0 -1
  460. package/dist/pregel/write.test.cjs +0 -181
  461. package/dist/pregel/write.test.d.ts +0 -1
  462. package/dist/pregel/write.test.js +0 -179
  463. package/dist/pregel/write.test.js.map +0 -1
  464. package/dist/remote.js.map +0 -1
  465. package/dist/setup/async_local_storage.d.ts +0 -1
  466. package/dist/web.js.map +0 -1
  467. package/index.cjs +0 -1
  468. package/index.d.cts +0 -1
  469. package/index.d.ts +0 -1
  470. package/index.js +0 -1
  471. package/prebuilt.cjs +0 -1
  472. package/prebuilt.d.cts +0 -1
  473. package/prebuilt.d.ts +0 -1
  474. package/prebuilt.js +0 -1
  475. package/pregel.cjs +0 -1
  476. package/pregel.d.cts +0 -1
  477. package/pregel.d.ts +0 -1
  478. package/pregel.js +0 -1
  479. package/remote.cjs +0 -1
  480. package/remote.d.cts +0 -1
  481. package/remote.d.ts +0 -1
  482. package/remote.js +0 -1
  483. package/web.cjs +0 -1
  484. package/web.d.cts +0 -1
  485. package/web.d.ts +0 -1
  486. package/web.js +0 -1
  487. package/zod/schema.cjs +0 -1
  488. package/zod/schema.d.cts +0 -1
  489. package/zod/schema.d.ts +0 -1
  490. package/zod/schema.js +0 -1
  491. package/zod.cjs +0 -1
  492. package/zod.d.cts +0 -1
  493. package/zod.d.ts +0 -1
  494. package/zod.js +0 -1
@@ -1,196 +1,107 @@
1
- import { BaseCallbackHandler, } from "@langchain/core/callbacks/base";
2
- import { AIMessageChunk, isBaseMessage, isBaseMessageChunk, isToolMessage, } from "@langchain/core/messages";
3
1
  import { TAG_HIDDEN, TAG_NOSTREAM } from "../constants.js";
2
+ import { BaseCallbackHandler } from "@langchain/core/callbacks/base";
3
+ import { AIMessageChunk, isBaseMessage, isBaseMessageChunk, isToolMessage } from "@langchain/core/messages";
4
+
5
+ //#region src/pregel/messages.ts
4
6
  function isChatGenerationChunk(x) {
5
- return isBaseMessage(x?.message);
7
+ return isBaseMessage(x?.message);
6
8
  }
7
9
  /**
8
- * A callback handler that implements stream_mode=messages.
9
- * Collects messages from (1) chat model stream events and (2) node outputs.
10
- */
11
- // TODO: Make this import and explicitly implement the
12
- // CallbackHandlerPrefersStreaming interface once we drop support for core 0.2
13
- export class StreamMessagesHandler extends BaseCallbackHandler {
14
- constructor(streamFn) {
15
- super();
16
- Object.defineProperty(this, "name", {
17
- enumerable: true,
18
- configurable: true,
19
- writable: true,
20
- value: "StreamMessagesHandler"
21
- });
22
- Object.defineProperty(this, "streamFn", {
23
- enumerable: true,
24
- configurable: true,
25
- writable: true,
26
- value: void 0
27
- });
28
- Object.defineProperty(this, "metadatas", {
29
- enumerable: true,
30
- configurable: true,
31
- writable: true,
32
- value: {}
33
- });
34
- Object.defineProperty(this, "seen", {
35
- enumerable: true,
36
- configurable: true,
37
- writable: true,
38
- value: {}
39
- });
40
- Object.defineProperty(this, "emittedChatModelRunIds", {
41
- enumerable: true,
42
- configurable: true,
43
- writable: true,
44
- value: {}
45
- });
46
- Object.defineProperty(this, "stableMessageIdMap", {
47
- enumerable: true,
48
- configurable: true,
49
- writable: true,
50
- value: {}
51
- });
52
- Object.defineProperty(this, "lc_prefer_streaming", {
53
- enumerable: true,
54
- configurable: true,
55
- writable: true,
56
- value: true
57
- });
58
- this.streamFn = streamFn;
59
- }
60
- _emit(meta, message, runId, dedupe = false) {
61
- if (dedupe &&
62
- message.id !== undefined &&
63
- this.seen[message.id] !== undefined) {
64
- return;
65
- }
66
- let messageId = message.id;
67
- if (runId != null) {
68
- if (isToolMessage(message)) {
69
- // Distinguish tool messages by tool call ID.
70
- messageId ??= `run-${runId}-tool-${message.tool_call_id}`;
71
- }
72
- else {
73
- // For instance in ChatAnthropic, the first chunk has an message ID
74
- // but the subsequent chunks do not. To avoid clients seeing two messages
75
- // we rename the message ID if it's being auto-set to `run-${runId}`
76
- // (see https://github.com/langchain-ai/langchainjs/pull/6646).
77
- if (messageId == null || messageId === `run-${runId}`) {
78
- messageId =
79
- this.stableMessageIdMap[runId] ?? messageId ?? `run-${runId}`;
80
- }
81
- this.stableMessageIdMap[runId] ??= messageId;
82
- }
83
- }
84
- if (messageId !== message.id) {
85
- // eslint-disable-next-line no-param-reassign
86
- message.id = messageId;
87
- // eslint-disable-next-line no-param-reassign
88
- message.lc_kwargs.id = messageId;
89
- }
90
- if (message.id != null)
91
- this.seen[message.id] = message;
92
- this.streamFn([meta[0], "messages", [message, meta[1]]]);
93
- }
94
- handleChatModelStart(_llm, _messages, runId, _parentRunId, _extraParams, tags, metadata, name) {
95
- if (metadata &&
96
- // Include legacy LangGraph SDK tag
97
- (!tags || (!tags.includes(TAG_NOSTREAM) && !tags.includes("nostream")))) {
98
- this.metadatas[runId] = [
99
- metadata.langgraph_checkpoint_ns.split("|"),
100
- { tags, name, ...metadata },
101
- ];
102
- }
103
- }
104
- handleLLMNewToken(token, _idx, runId, _parentRunId, _tags, fields) {
105
- const chunk = fields?.chunk;
106
- this.emittedChatModelRunIds[runId] = true;
107
- if (this.metadatas[runId] !== undefined) {
108
- if (isChatGenerationChunk(chunk)) {
109
- this._emit(this.metadatas[runId], chunk.message, runId);
110
- }
111
- else {
112
- this._emit(this.metadatas[runId], new AIMessageChunk({ content: token }), runId);
113
- }
114
- }
115
- }
116
- handleLLMEnd(output, runId) {
117
- // Filter out runs that we do not have metadata for
118
- if (this.metadatas[runId] === undefined)
119
- return;
120
- // In JS, non-streaming runs do not call handleLLMNewToken at the model level
121
- if (!this.emittedChatModelRunIds[runId]) {
122
- const chatGeneration = output.generations?.[0]?.[0];
123
- if (isBaseMessage(chatGeneration?.message)) {
124
- this._emit(this.metadatas[runId], chatGeneration?.message, runId, true);
125
- }
126
- delete this.emittedChatModelRunIds[runId];
127
- }
128
- delete this.metadatas[runId];
129
- delete this.stableMessageIdMap[runId];
130
- }
131
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
132
- handleLLMError(_err, runId) {
133
- delete this.metadatas[runId];
134
- }
135
- handleChainStart(_chain, inputs, runId, _parentRunId, tags, metadata, _runType, name) {
136
- if (metadata !== undefined &&
137
- name === metadata.langgraph_node &&
138
- (tags === undefined || !tags.includes(TAG_HIDDEN))) {
139
- this.metadatas[runId] = [
140
- metadata.langgraph_checkpoint_ns.split("|"),
141
- { tags, name, ...metadata },
142
- ];
143
- if (typeof inputs === "object") {
144
- for (const value of Object.values(inputs)) {
145
- if ((isBaseMessage(value) || isBaseMessageChunk(value)) &&
146
- value.id !== undefined) {
147
- this.seen[value.id] = value;
148
- }
149
- else if (Array.isArray(value)) {
150
- for (const item of value) {
151
- if ((isBaseMessage(item) || isBaseMessageChunk(item)) &&
152
- item.id !== undefined) {
153
- this.seen[item.id] = item;
154
- }
155
- }
156
- }
157
- }
158
- }
159
- }
160
- }
161
- handleChainEnd(outputs, runId) {
162
- const metadata = this.metadatas[runId];
163
- delete this.metadatas[runId];
164
- if (metadata !== undefined) {
165
- if (isBaseMessage(outputs)) {
166
- this._emit(metadata, outputs, runId, true);
167
- }
168
- else if (Array.isArray(outputs)) {
169
- for (const value of outputs) {
170
- if (isBaseMessage(value)) {
171
- this._emit(metadata, value, runId, true);
172
- }
173
- }
174
- }
175
- else if (outputs != null && typeof outputs === "object") {
176
- for (const value of Object.values(outputs)) {
177
- if (isBaseMessage(value)) {
178
- this._emit(metadata, value, runId, true);
179
- }
180
- else if (Array.isArray(value)) {
181
- for (const item of value) {
182
- if (isBaseMessage(item)) {
183
- this._emit(metadata, item, runId, true);
184
- }
185
- }
186
- }
187
- }
188
- }
189
- }
190
- }
191
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
192
- handleChainError(_err, runId) {
193
- delete this.metadatas[runId];
194
- }
195
- }
10
+ * A callback handler that implements stream_mode=messages.
11
+ * Collects messages from (1) chat model stream events and (2) node outputs.
12
+ */
13
+ var StreamMessagesHandler = class extends BaseCallbackHandler {
14
+ name = "StreamMessagesHandler";
15
+ streamFn;
16
+ metadatas = {};
17
+ seen = {};
18
+ emittedChatModelRunIds = {};
19
+ stableMessageIdMap = {};
20
+ lc_prefer_streaming = true;
21
+ constructor(streamFn) {
22
+ super();
23
+ this.streamFn = streamFn;
24
+ }
25
+ _emit(meta, message, runId, dedupe = false) {
26
+ if (dedupe && message.id !== void 0 && this.seen[message.id] !== void 0) return;
27
+ let messageId = message.id;
28
+ if (runId != null) if (isToolMessage(message)) messageId ??= `run-${runId}-tool-${message.tool_call_id}`;
29
+ else {
30
+ if (messageId == null || messageId === `run-${runId}`) messageId = this.stableMessageIdMap[runId] ?? messageId ?? `run-${runId}`;
31
+ this.stableMessageIdMap[runId] ??= messageId;
32
+ }
33
+ if (messageId !== message.id) {
34
+ message.id = messageId;
35
+ message.lc_kwargs.id = messageId;
36
+ }
37
+ if (message.id != null) this.seen[message.id] = message;
38
+ this.streamFn([
39
+ meta[0],
40
+ "messages",
41
+ [message, meta[1]]
42
+ ]);
43
+ }
44
+ handleChatModelStart(_llm, _messages, runId, _parentRunId, _extraParams, tags, metadata, name) {
45
+ if (metadata && (!tags || !tags.includes(TAG_NOSTREAM) && !tags.includes("nostream"))) this.metadatas[runId] = [metadata.langgraph_checkpoint_ns.split("|"), {
46
+ tags,
47
+ name,
48
+ ...metadata
49
+ }];
50
+ }
51
+ handleLLMNewToken(token, _idx, runId, _parentRunId, _tags, fields) {
52
+ const chunk = fields?.chunk;
53
+ this.emittedChatModelRunIds[runId] = true;
54
+ if (this.metadatas[runId] !== void 0) if (isChatGenerationChunk(chunk)) this._emit(this.metadatas[runId], chunk.message, runId);
55
+ else this._emit(this.metadatas[runId], new AIMessageChunk({ content: token }), runId);
56
+ }
57
+ handleLLMEnd(output, runId) {
58
+ if (this.metadatas[runId] === void 0) return;
59
+ if (!this.emittedChatModelRunIds[runId]) {
60
+ const chatGeneration = output.generations?.[0]?.[0];
61
+ if (isBaseMessage(chatGeneration?.message)) this._emit(this.metadatas[runId], chatGeneration?.message, runId, true);
62
+ delete this.emittedChatModelRunIds[runId];
63
+ }
64
+ delete this.metadatas[runId];
65
+ delete this.stableMessageIdMap[runId];
66
+ }
67
+ handleLLMError(_err, runId) {
68
+ delete this.metadatas[runId];
69
+ }
70
+ handleChainStart(_chain, inputs, runId, _parentRunId, tags, metadata, _runType, name) {
71
+ if (metadata !== void 0 && name === metadata.langgraph_node && (tags === void 0 || !tags.includes(TAG_HIDDEN))) {
72
+ this.metadatas[runId] = [metadata.langgraph_checkpoint_ns.split("|"), {
73
+ tags,
74
+ name,
75
+ ...metadata
76
+ }];
77
+ if (typeof inputs === "object") {
78
+ for (const value of Object.values(inputs)) if ((isBaseMessage(value) || isBaseMessageChunk(value)) && value.id !== void 0) this.seen[value.id] = value;
79
+ else if (Array.isArray(value)) {
80
+ for (const item of value) if ((isBaseMessage(item) || isBaseMessageChunk(item)) && item.id !== void 0) this.seen[item.id] = item;
81
+ }
82
+ }
83
+ }
84
+ }
85
+ handleChainEnd(outputs, runId) {
86
+ const metadata = this.metadatas[runId];
87
+ delete this.metadatas[runId];
88
+ if (metadata !== void 0) {
89
+ if (isBaseMessage(outputs)) this._emit(metadata, outputs, runId, true);
90
+ else if (Array.isArray(outputs)) {
91
+ for (const value of outputs) if (isBaseMessage(value)) this._emit(metadata, value, runId, true);
92
+ } else if (outputs != null && typeof outputs === "object") {
93
+ for (const value of Object.values(outputs)) if (isBaseMessage(value)) this._emit(metadata, value, runId, true);
94
+ else if (Array.isArray(value)) {
95
+ for (const item of value) if (isBaseMessage(item)) this._emit(metadata, item, runId, true);
96
+ }
97
+ }
98
+ }
99
+ }
100
+ handleChainError(_err, runId) {
101
+ delete this.metadatas[runId];
102
+ }
103
+ };
104
+
105
+ //#endregion
106
+ export { StreamMessagesHandler };
196
107
  //# sourceMappingURL=messages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/pregel/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.js","names":[],"sources":["../../src/pregel/messages.ts"],"sourcesContent":["import {\n BaseCallbackHandler,\n HandleLLMNewTokenCallbackFields,\n NewTokenIndices,\n} from \"@langchain/core/callbacks/base\";\nimport {\n AIMessageChunk,\n BaseMessage,\n isBaseMessage,\n isBaseMessageChunk,\n isToolMessage,\n} from \"@langchain/core/messages\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport {\n ChatGeneration,\n ChatGenerationChunk,\n LLMResult,\n} from \"@langchain/core/outputs\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\n\nimport { TAG_HIDDEN, TAG_NOSTREAM } from \"../constants.js\";\nimport { StreamChunk } from \"./stream.js\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Meta = [string[], Record<string, any>];\n\nfunction isChatGenerationChunk(x: unknown): x is ChatGenerationChunk {\n return isBaseMessage((x as ChatGenerationChunk)?.message);\n}\n\n/**\n * A callback handler that implements stream_mode=messages.\n * Collects messages from (1) chat model stream events and (2) node outputs.\n */\n// TODO: Make this import and explicitly implement the\n// CallbackHandlerPrefersStreaming interface once we drop support for core 0.2\nexport class StreamMessagesHandler extends BaseCallbackHandler {\n name = \"StreamMessagesHandler\";\n\n streamFn: (streamChunk: StreamChunk) => void;\n\n metadatas: Record<string, Meta | undefined> = {};\n\n seen: Record<string, BaseMessage> = {};\n\n emittedChatModelRunIds: Record<string, boolean> = {};\n\n stableMessageIdMap: Record<string, string> = {};\n\n lc_prefer_streaming = true;\n\n constructor(streamFn: (streamChunk: StreamChunk) => void) {\n super();\n this.streamFn = streamFn;\n }\n\n _emit(\n meta: Meta,\n message: BaseMessage,\n runId: string | undefined,\n dedupe = false\n ) {\n if (\n dedupe &&\n message.id !== undefined &&\n this.seen[message.id] !== undefined\n ) {\n return;\n }\n\n let messageId = message.id;\n\n if (runId != null) {\n if (isToolMessage(message)) {\n // Distinguish tool messages by tool call ID.\n messageId ??= `run-${runId}-tool-${message.tool_call_id}`;\n } else {\n // For instance in ChatAnthropic, the first chunk has an message ID\n // but the subsequent chunks do not. To avoid clients seeing two messages\n // we rename the message ID if it's being auto-set to `run-${runId}`\n // (see https://github.com/langchain-ai/langchainjs/pull/6646).\n if (messageId == null || messageId === `run-${runId}`) {\n messageId =\n this.stableMessageIdMap[runId] ?? messageId ?? `run-${runId}`;\n }\n\n this.stableMessageIdMap[runId] ??= messageId;\n }\n }\n\n if (messageId !== message.id) {\n // eslint-disable-next-line no-param-reassign\n message.id = messageId;\n\n // eslint-disable-next-line no-param-reassign\n message.lc_kwargs.id = messageId;\n }\n\n if (message.id != null) this.seen[message.id] = message;\n this.streamFn([meta[0], \"messages\", [message, meta[1]]]);\n }\n\n handleChatModelStart(\n _llm: Serialized,\n _messages: BaseMessage[][],\n runId: string,\n _parentRunId?: string,\n _extraParams?: Record<string, unknown>,\n tags?: string[],\n metadata?: Record<string, unknown>,\n name?: string\n ) {\n if (\n metadata &&\n // Include legacy LangGraph SDK tag\n (!tags || (!tags.includes(TAG_NOSTREAM) && !tags.includes(\"nostream\")))\n ) {\n this.metadatas[runId] = [\n (metadata.langgraph_checkpoint_ns as string).split(\"|\"),\n { tags, name, ...metadata },\n ];\n }\n }\n\n handleLLMNewToken(\n token: string,\n _idx: NewTokenIndices,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n fields?: HandleLLMNewTokenCallbackFields\n ) {\n const chunk = fields?.chunk;\n this.emittedChatModelRunIds[runId] = true;\n if (this.metadatas[runId] !== undefined) {\n if (isChatGenerationChunk(chunk)) {\n this._emit(this.metadatas[runId], chunk.message, runId);\n } else {\n this._emit(\n this.metadatas[runId],\n new AIMessageChunk({ content: token }),\n runId\n );\n }\n }\n }\n\n handleLLMEnd(output: LLMResult, runId: string) {\n // Filter out runs that we do not have metadata for\n if (this.metadatas[runId] === undefined) return;\n\n // In JS, non-streaming runs do not call handleLLMNewToken at the model level\n if (!this.emittedChatModelRunIds[runId]) {\n const chatGeneration = output.generations?.[0]?.[0] as ChatGeneration;\n if (isBaseMessage(chatGeneration?.message)) {\n this._emit(this.metadatas[runId], chatGeneration?.message, runId, true);\n }\n delete this.emittedChatModelRunIds[runId];\n }\n delete this.metadatas[runId];\n delete this.stableMessageIdMap[runId];\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n handleLLMError(_err: any, runId: string) {\n delete this.metadatas[runId];\n }\n\n handleChainStart(\n _chain: Serialized,\n inputs: ChainValues,\n runId: string,\n _parentRunId?: string,\n tags?: string[],\n metadata?: Record<string, unknown>,\n _runType?: string,\n name?: string\n ) {\n if (\n metadata !== undefined &&\n name === metadata.langgraph_node &&\n (tags === undefined || !tags.includes(TAG_HIDDEN))\n ) {\n this.metadatas[runId] = [\n (metadata.langgraph_checkpoint_ns as string).split(\"|\"),\n { tags, name, ...metadata },\n ];\n\n if (typeof inputs === \"object\") {\n for (const value of Object.values(inputs)) {\n if (\n (isBaseMessage(value) || isBaseMessageChunk(value)) &&\n value.id !== undefined\n ) {\n this.seen[value.id] = value;\n } else if (Array.isArray(value)) {\n for (const item of value) {\n if (\n (isBaseMessage(item) || isBaseMessageChunk(item)) &&\n item.id !== undefined\n ) {\n this.seen[item.id] = item;\n }\n }\n }\n }\n }\n }\n }\n\n handleChainEnd(outputs: ChainValues, runId: string) {\n const metadata = this.metadatas[runId];\n delete this.metadatas[runId];\n if (metadata !== undefined) {\n if (isBaseMessage(outputs)) {\n this._emit(metadata, outputs, runId, true);\n } else if (Array.isArray(outputs)) {\n for (const value of outputs) {\n if (isBaseMessage(value)) {\n this._emit(metadata, value, runId, true);\n }\n }\n } else if (outputs != null && typeof outputs === \"object\") {\n for (const value of Object.values(outputs)) {\n if (isBaseMessage(value)) {\n this._emit(metadata, value, runId, true);\n } else if (Array.isArray(value)) {\n for (const item of value) {\n if (isBaseMessage(item)) {\n this._emit(metadata, item, runId, true);\n }\n }\n }\n }\n }\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n handleChainError(_err: any, runId: string) {\n delete this.metadatas[runId];\n }\n}\n"],"mappings":"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"}