@langchain/langgraph 1.0.7 → 1.0.12

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 (383) hide show
  1. package/package.json +7 -7
  2. package/CHANGELOG.md +0 -286
  3. package/dist/_virtual/rolldown_runtime.cjs +0 -25
  4. package/dist/channels/any_value.cjs +0 -46
  5. package/dist/channels/any_value.cjs.map +0 -1
  6. package/dist/channels/any_value.d.cts +0 -24
  7. package/dist/channels/any_value.d.cts.map +0 -1
  8. package/dist/channels/any_value.d.ts +0 -24
  9. package/dist/channels/any_value.d.ts.map +0 -1
  10. package/dist/channels/any_value.js +0 -46
  11. package/dist/channels/any_value.js.map +0 -1
  12. package/dist/channels/base.cjs +0 -102
  13. package/dist/channels/base.cjs.map +0 -1
  14. package/dist/channels/base.d.cts +0 -79
  15. package/dist/channels/base.d.cts.map +0 -1
  16. package/dist/channels/base.d.ts +0 -79
  17. package/dist/channels/base.d.ts.map +0 -1
  18. package/dist/channels/base.js +0 -97
  19. package/dist/channels/base.js.map +0 -1
  20. package/dist/channels/binop.cjs +0 -49
  21. package/dist/channels/binop.cjs.map +0 -1
  22. package/dist/channels/binop.d.cts +0 -22
  23. package/dist/channels/binop.d.cts.map +0 -1
  24. package/dist/channels/binop.d.ts +0 -22
  25. package/dist/channels/binop.d.ts.map +0 -1
  26. package/dist/channels/binop.js +0 -49
  27. package/dist/channels/binop.js.map +0 -1
  28. package/dist/channels/dynamic_barrier_value.cjs +0 -76
  29. package/dist/channels/dynamic_barrier_value.cjs.map +0 -1
  30. package/dist/channels/dynamic_barrier_value.d.cts +0 -42
  31. package/dist/channels/dynamic_barrier_value.d.cts.map +0 -1
  32. package/dist/channels/dynamic_barrier_value.d.ts +0 -42
  33. package/dist/channels/dynamic_barrier_value.d.ts.map +0 -1
  34. package/dist/channels/dynamic_barrier_value.js +0 -76
  35. package/dist/channels/dynamic_barrier_value.js.map +0 -1
  36. package/dist/channels/ephemeral_value.cjs +0 -46
  37. package/dist/channels/ephemeral_value.cjs.map +0 -1
  38. package/dist/channels/ephemeral_value.d.cts +0 -22
  39. package/dist/channels/ephemeral_value.d.cts.map +0 -1
  40. package/dist/channels/ephemeral_value.d.ts +0 -22
  41. package/dist/channels/ephemeral_value.d.ts.map +0 -1
  42. package/dist/channels/ephemeral_value.js +0 -46
  43. package/dist/channels/ephemeral_value.js.map +0 -1
  44. package/dist/channels/index.cjs +0 -21
  45. package/dist/channels/index.d.cts +0 -9
  46. package/dist/channels/index.d.ts +0 -9
  47. package/dist/channels/index.js +0 -10
  48. package/dist/channels/last_value.cjs +0 -98
  49. package/dist/channels/last_value.cjs.map +0 -1
  50. package/dist/channels/last_value.d.cts +0 -44
  51. package/dist/channels/last_value.d.cts.map +0 -1
  52. package/dist/channels/last_value.d.ts +0 -44
  53. package/dist/channels/last_value.d.ts.map +0 -1
  54. package/dist/channels/last_value.js +0 -97
  55. package/dist/channels/last_value.js.map +0 -1
  56. package/dist/channels/named_barrier_value.cjs +0 -118
  57. package/dist/channels/named_barrier_value.cjs.map +0 -1
  58. package/dist/channels/named_barrier_value.d.cts +0 -46
  59. package/dist/channels/named_barrier_value.d.cts.map +0 -1
  60. package/dist/channels/named_barrier_value.d.ts +0 -46
  61. package/dist/channels/named_barrier_value.d.ts.map +0 -1
  62. package/dist/channels/named_barrier_value.js +0 -116
  63. package/dist/channels/named_barrier_value.js.map +0 -1
  64. package/dist/channels/topic.cjs +0 -65
  65. package/dist/channels/topic.cjs.map +0 -1
  66. package/dist/channels/topic.d.cts +0 -32
  67. package/dist/channels/topic.d.cts.map +0 -1
  68. package/dist/channels/topic.d.ts +0 -32
  69. package/dist/channels/topic.d.ts.map +0 -1
  70. package/dist/channels/topic.js +0 -65
  71. package/dist/channels/topic.js.map +0 -1
  72. package/dist/constants.cjs +0 -406
  73. package/dist/constants.cjs.map +0 -1
  74. package/dist/constants.d.cts +0 -285
  75. package/dist/constants.d.cts.map +0 -1
  76. package/dist/constants.d.ts +0 -285
  77. package/dist/constants.d.ts.map +0 -1
  78. package/dist/constants.js +0 -362
  79. package/dist/constants.js.map +0 -1
  80. package/dist/errors.cjs +0 -163
  81. package/dist/errors.cjs.map +0 -1
  82. package/dist/errors.d.cts +0 -81
  83. package/dist/errors.d.cts.map +0 -1
  84. package/dist/errors.d.ts +0 -81
  85. package/dist/errors.d.ts.map +0 -1
  86. package/dist/errors.js +0 -146
  87. package/dist/errors.js.map +0 -1
  88. package/dist/func/index.cjs +0 -301
  89. package/dist/func/index.cjs.map +0 -1
  90. package/dist/func/index.d.cts +0 -293
  91. package/dist/func/index.d.cts.map +0 -1
  92. package/dist/func/index.d.ts +0 -293
  93. package/dist/func/index.d.ts.map +0 -1
  94. package/dist/func/index.js +0 -298
  95. package/dist/func/index.js.map +0 -1
  96. package/dist/func/types.d.cts +0 -64
  97. package/dist/func/types.d.cts.map +0 -1
  98. package/dist/func/types.d.ts +0 -64
  99. package/dist/func/types.d.ts.map +0 -1
  100. package/dist/graph/annotation.cjs +0 -101
  101. package/dist/graph/annotation.cjs.map +0 -1
  102. package/dist/graph/annotation.d.cts +0 -116
  103. package/dist/graph/annotation.d.cts.map +0 -1
  104. package/dist/graph/annotation.d.ts +0 -116
  105. package/dist/graph/annotation.d.ts.map +0 -1
  106. package/dist/graph/annotation.js +0 -99
  107. package/dist/graph/annotation.js.map +0 -1
  108. package/dist/graph/graph.cjs +0 -423
  109. package/dist/graph/graph.cjs.map +0 -1
  110. package/dist/graph/graph.d.cts +0 -132
  111. package/dist/graph/graph.d.cts.map +0 -1
  112. package/dist/graph/graph.d.ts +0 -132
  113. package/dist/graph/graph.d.ts.map +0 -1
  114. package/dist/graph/graph.js +0 -420
  115. package/dist/graph/graph.js.map +0 -1
  116. package/dist/graph/index.cjs +0 -5
  117. package/dist/graph/index.js +0 -7
  118. package/dist/graph/message.cjs +0 -99
  119. package/dist/graph/message.cjs.map +0 -1
  120. package/dist/graph/message.d.cts +0 -40
  121. package/dist/graph/message.d.cts.map +0 -1
  122. package/dist/graph/message.d.ts +0 -40
  123. package/dist/graph/message.d.ts.map +0 -1
  124. package/dist/graph/message.js +0 -95
  125. package/dist/graph/message.js.map +0 -1
  126. package/dist/graph/messages_annotation.cjs +0 -110
  127. package/dist/graph/messages_annotation.cjs.map +0 -1
  128. package/dist/graph/messages_annotation.d.cts +0 -112
  129. package/dist/graph/messages_annotation.d.cts.map +0 -1
  130. package/dist/graph/messages_annotation.d.ts +0 -112
  131. package/dist/graph/messages_annotation.d.ts.map +0 -1
  132. package/dist/graph/messages_annotation.js +0 -107
  133. package/dist/graph/messages_annotation.js.map +0 -1
  134. package/dist/graph/state.cjs +0 -501
  135. package/dist/graph/state.cjs.map +0 -1
  136. package/dist/graph/state.d.cts +0 -236
  137. package/dist/graph/state.d.cts.map +0 -1
  138. package/dist/graph/state.d.ts +0 -236
  139. package/dist/graph/state.d.ts.map +0 -1
  140. package/dist/graph/state.js +0 -499
  141. package/dist/graph/state.js.map +0 -1
  142. package/dist/graph/zod/index.cjs +0 -10
  143. package/dist/graph/zod/index.d.cts +0 -3
  144. package/dist/graph/zod/index.d.ts +0 -3
  145. package/dist/graph/zod/index.js +0 -5
  146. package/dist/graph/zod/meta.cjs +0 -145
  147. package/dist/graph/zod/meta.cjs.map +0 -1
  148. package/dist/graph/zod/meta.d.cts +0 -116
  149. package/dist/graph/zod/meta.d.cts.map +0 -1
  150. package/dist/graph/zod/meta.d.ts +0 -116
  151. package/dist/graph/zod/meta.d.ts.map +0 -1
  152. package/dist/graph/zod/meta.js +0 -141
  153. package/dist/graph/zod/meta.js.map +0 -1
  154. package/dist/graph/zod/plugin.cjs +0 -41
  155. package/dist/graph/zod/plugin.cjs.map +0 -1
  156. package/dist/graph/zod/plugin.js +0 -41
  157. package/dist/graph/zod/plugin.js.map +0 -1
  158. package/dist/graph/zod/schema.cjs +0 -99
  159. package/dist/graph/zod/schema.cjs.map +0 -1
  160. package/dist/graph/zod/schema.d.cts +0 -38
  161. package/dist/graph/zod/schema.d.cts.map +0 -1
  162. package/dist/graph/zod/schema.d.ts +0 -38
  163. package/dist/graph/zod/schema.d.ts.map +0 -1
  164. package/dist/graph/zod/schema.js +0 -94
  165. package/dist/graph/zod/schema.js.map +0 -1
  166. package/dist/graph/zod/zod-registry.cjs +0 -43
  167. package/dist/graph/zod/zod-registry.cjs.map +0 -1
  168. package/dist/graph/zod/zod-registry.d.cts +0 -51
  169. package/dist/graph/zod/zod-registry.d.cts.map +0 -1
  170. package/dist/graph/zod/zod-registry.d.ts +0 -51
  171. package/dist/graph/zod/zod-registry.d.ts.map +0 -1
  172. package/dist/graph/zod/zod-registry.js +0 -41
  173. package/dist/graph/zod/zod-registry.js.map +0 -1
  174. package/dist/hash.cjs +0 -271
  175. package/dist/hash.cjs.map +0 -1
  176. package/dist/hash.js +0 -269
  177. package/dist/hash.js.map +0 -1
  178. package/dist/index.cjs +0 -112
  179. package/dist/index.cjs.map +0 -1
  180. package/dist/index.d.cts +0 -26
  181. package/dist/index.d.ts +0 -26
  182. package/dist/index.js +0 -22
  183. package/dist/index.js.map +0 -1
  184. package/dist/interrupt.cjs +0 -82
  185. package/dist/interrupt.cjs.map +0 -1
  186. package/dist/interrupt.d.cts +0 -58
  187. package/dist/interrupt.d.cts.map +0 -1
  188. package/dist/interrupt.d.ts +0 -58
  189. package/dist/interrupt.d.ts.map +0 -1
  190. package/dist/interrupt.js +0 -81
  191. package/dist/interrupt.js.map +0 -1
  192. package/dist/prebuilt/agentName.cjs +0 -153
  193. package/dist/prebuilt/agentName.cjs.map +0 -1
  194. package/dist/prebuilt/agentName.d.cts +0 -42
  195. package/dist/prebuilt/agentName.d.cts.map +0 -1
  196. package/dist/prebuilt/agentName.d.ts +0 -42
  197. package/dist/prebuilt/agentName.d.ts.map +0 -1
  198. package/dist/prebuilt/agentName.js +0 -152
  199. package/dist/prebuilt/agentName.js.map +0 -1
  200. package/dist/prebuilt/agent_executor.cjs +0 -44
  201. package/dist/prebuilt/agent_executor.cjs.map +0 -1
  202. package/dist/prebuilt/agent_executor.d.cts +0 -58
  203. package/dist/prebuilt/agent_executor.d.cts.map +0 -1
  204. package/dist/prebuilt/agent_executor.d.ts +0 -58
  205. package/dist/prebuilt/agent_executor.d.ts.map +0 -1
  206. package/dist/prebuilt/agent_executor.js +0 -44
  207. package/dist/prebuilt/agent_executor.js.map +0 -1
  208. package/dist/prebuilt/chat_agent_executor.cjs +0 -68
  209. package/dist/prebuilt/chat_agent_executor.cjs.map +0 -1
  210. package/dist/prebuilt/chat_agent_executor.d.cts +0 -23
  211. package/dist/prebuilt/chat_agent_executor.d.cts.map +0 -1
  212. package/dist/prebuilt/chat_agent_executor.d.ts +0 -23
  213. package/dist/prebuilt/chat_agent_executor.d.ts.map +0 -1
  214. package/dist/prebuilt/chat_agent_executor.js +0 -67
  215. package/dist/prebuilt/chat_agent_executor.js.map +0 -1
  216. package/dist/prebuilt/index.cjs +0 -15
  217. package/dist/prebuilt/index.d.cts +0 -8
  218. package/dist/prebuilt/index.d.ts +0 -8
  219. package/dist/prebuilt/index.js +0 -8
  220. package/dist/prebuilt/interrupt.d.cts +0 -61
  221. package/dist/prebuilt/interrupt.d.cts.map +0 -1
  222. package/dist/prebuilt/interrupt.d.ts +0 -61
  223. package/dist/prebuilt/interrupt.d.ts.map +0 -1
  224. package/dist/prebuilt/react_agent_executor.cjs +0 -344
  225. package/dist/prebuilt/react_agent_executor.cjs.map +0 -1
  226. package/dist/prebuilt/react_agent_executor.d.cts +0 -230
  227. package/dist/prebuilt/react_agent_executor.d.cts.map +0 -1
  228. package/dist/prebuilt/react_agent_executor.d.ts +0 -230
  229. package/dist/prebuilt/react_agent_executor.d.ts.map +0 -1
  230. package/dist/prebuilt/react_agent_executor.js +0 -342
  231. package/dist/prebuilt/react_agent_executor.js.map +0 -1
  232. package/dist/prebuilt/tool_executor.cjs +0 -48
  233. package/dist/prebuilt/tool_executor.cjs.map +0 -1
  234. package/dist/prebuilt/tool_executor.d.cts +0 -42
  235. package/dist/prebuilt/tool_executor.d.cts.map +0 -1
  236. package/dist/prebuilt/tool_executor.d.ts +0 -42
  237. package/dist/prebuilt/tool_executor.d.ts.map +0 -1
  238. package/dist/prebuilt/tool_executor.js +0 -47
  239. package/dist/prebuilt/tool_executor.js.map +0 -1
  240. package/dist/prebuilt/tool_node.cjs +0 -248
  241. package/dist/prebuilt/tool_node.cjs.map +0 -1
  242. package/dist/prebuilt/tool_node.d.cts +0 -182
  243. package/dist/prebuilt/tool_node.d.cts.map +0 -1
  244. package/dist/prebuilt/tool_node.d.ts +0 -182
  245. package/dist/prebuilt/tool_node.d.ts.map +0 -1
  246. package/dist/prebuilt/tool_node.js +0 -246
  247. package/dist/prebuilt/tool_node.js.map +0 -1
  248. package/dist/pregel/algo.cjs +0 -573
  249. package/dist/pregel/algo.cjs.map +0 -1
  250. package/dist/pregel/algo.d.cts +0 -13
  251. package/dist/pregel/algo.d.cts.map +0 -1
  252. package/dist/pregel/algo.d.ts +0 -13
  253. package/dist/pregel/algo.d.ts.map +0 -1
  254. package/dist/pregel/algo.js +0 -567
  255. package/dist/pregel/algo.js.map +0 -1
  256. package/dist/pregel/call.cjs +0 -53
  257. package/dist/pregel/call.cjs.map +0 -1
  258. package/dist/pregel/call.js +0 -50
  259. package/dist/pregel/call.js.map +0 -1
  260. package/dist/pregel/debug.cjs +0 -175
  261. package/dist/pregel/debug.cjs.map +0 -1
  262. package/dist/pregel/debug.js +0 -169
  263. package/dist/pregel/debug.js.map +0 -1
  264. package/dist/pregel/index.cjs +0 -1170
  265. package/dist/pregel/index.cjs.map +0 -1
  266. package/dist/pregel/index.d.cts +0 -546
  267. package/dist/pregel/index.d.cts.map +0 -1
  268. package/dist/pregel/index.d.ts +0 -546
  269. package/dist/pregel/index.d.ts.map +0 -1
  270. package/dist/pregel/index.js +0 -1168
  271. package/dist/pregel/index.js.map +0 -1
  272. package/dist/pregel/io.cjs +0 -140
  273. package/dist/pregel/io.cjs.map +0 -1
  274. package/dist/pregel/io.js +0 -135
  275. package/dist/pregel/io.js.map +0 -1
  276. package/dist/pregel/loop.cjs +0 -548
  277. package/dist/pregel/loop.cjs.map +0 -1
  278. package/dist/pregel/loop.js +0 -547
  279. package/dist/pregel/loop.js.map +0 -1
  280. package/dist/pregel/messages.cjs +0 -108
  281. package/dist/pregel/messages.cjs.map +0 -1
  282. package/dist/pregel/messages.js +0 -107
  283. package/dist/pregel/messages.js.map +0 -1
  284. package/dist/pregel/read.cjs +0 -152
  285. package/dist/pregel/read.cjs.map +0 -1
  286. package/dist/pregel/read.d.cts +0 -51
  287. package/dist/pregel/read.d.cts.map +0 -1
  288. package/dist/pregel/read.d.ts +0 -51
  289. package/dist/pregel/read.d.ts.map +0 -1
  290. package/dist/pregel/read.js +0 -150
  291. package/dist/pregel/read.js.map +0 -1
  292. package/dist/pregel/remote.cjs +0 -349
  293. package/dist/pregel/remote.cjs.map +0 -1
  294. package/dist/pregel/remote.d.cts +0 -123
  295. package/dist/pregel/remote.d.cts.map +0 -1
  296. package/dist/pregel/remote.d.ts +0 -123
  297. package/dist/pregel/remote.d.ts.map +0 -1
  298. package/dist/pregel/remote.js +0 -348
  299. package/dist/pregel/remote.js.map +0 -1
  300. package/dist/pregel/retry.cjs +0 -92
  301. package/dist/pregel/retry.cjs.map +0 -1
  302. package/dist/pregel/retry.js +0 -92
  303. package/dist/pregel/retry.js.map +0 -1
  304. package/dist/pregel/runnable_types.d.cts +0 -49
  305. package/dist/pregel/runnable_types.d.cts.map +0 -1
  306. package/dist/pregel/runnable_types.d.ts +0 -49
  307. package/dist/pregel/runnable_types.d.ts.map +0 -1
  308. package/dist/pregel/runner.cjs +0 -228
  309. package/dist/pregel/runner.cjs.map +0 -1
  310. package/dist/pregel/runner.js +0 -228
  311. package/dist/pregel/runner.js.map +0 -1
  312. package/dist/pregel/stream.cjs +0 -199
  313. package/dist/pregel/stream.cjs.map +0 -1
  314. package/dist/pregel/stream.js +0 -196
  315. package/dist/pregel/stream.js.map +0 -1
  316. package/dist/pregel/types.cjs +0 -27
  317. package/dist/pregel/types.cjs.map +0 -1
  318. package/dist/pregel/types.d.cts +0 -453
  319. package/dist/pregel/types.d.cts.map +0 -1
  320. package/dist/pregel/types.d.ts +0 -453
  321. package/dist/pregel/types.d.ts.map +0 -1
  322. package/dist/pregel/types.js +0 -25
  323. package/dist/pregel/types.js.map +0 -1
  324. package/dist/pregel/utils/config.cjs +0 -122
  325. package/dist/pregel/utils/config.cjs.map +0 -1
  326. package/dist/pregel/utils/config.d.cts +0 -36
  327. package/dist/pregel/utils/config.d.cts.map +0 -1
  328. package/dist/pregel/utils/config.d.ts +0 -36
  329. package/dist/pregel/utils/config.d.ts.map +0 -1
  330. package/dist/pregel/utils/config.js +0 -115
  331. package/dist/pregel/utils/config.js.map +0 -1
  332. package/dist/pregel/utils/index.cjs +0 -103
  333. package/dist/pregel/utils/index.cjs.map +0 -1
  334. package/dist/pregel/utils/index.d.cts +0 -51
  335. package/dist/pregel/utils/index.d.cts.map +0 -1
  336. package/dist/pregel/utils/index.d.ts +0 -51
  337. package/dist/pregel/utils/index.d.ts.map +0 -1
  338. package/dist/pregel/utils/index.js +0 -97
  339. package/dist/pregel/utils/index.js.map +0 -1
  340. package/dist/pregel/utils/subgraph.cjs +0 -19
  341. package/dist/pregel/utils/subgraph.cjs.map +0 -1
  342. package/dist/pregel/utils/subgraph.js +0 -17
  343. package/dist/pregel/utils/subgraph.js.map +0 -1
  344. package/dist/pregel/validate.cjs +0 -45
  345. package/dist/pregel/validate.cjs.map +0 -1
  346. package/dist/pregel/validate.js +0 -44
  347. package/dist/pregel/validate.js.map +0 -1
  348. package/dist/pregel/write.cjs +0 -97
  349. package/dist/pregel/write.cjs.map +0 -1
  350. package/dist/pregel/write.d.cts +0 -35
  351. package/dist/pregel/write.d.cts.map +0 -1
  352. package/dist/pregel/write.d.ts +0 -35
  353. package/dist/pregel/write.d.ts.map +0 -1
  354. package/dist/pregel/write.js +0 -95
  355. package/dist/pregel/write.js.map +0 -1
  356. package/dist/remote.cjs +0 -3
  357. package/dist/remote.d.cts +0 -2
  358. package/dist/remote.d.ts +0 -2
  359. package/dist/remote.js +0 -3
  360. package/dist/setup/async_local_storage.cjs +0 -12
  361. package/dist/setup/async_local_storage.cjs.map +0 -1
  362. package/dist/setup/async_local_storage.js +0 -11
  363. package/dist/setup/async_local_storage.js.map +0 -1
  364. package/dist/utils.cjs +0 -88
  365. package/dist/utils.cjs.map +0 -1
  366. package/dist/utils.d.cts +0 -32
  367. package/dist/utils.d.cts.map +0 -1
  368. package/dist/utils.d.ts +0 -32
  369. package/dist/utils.d.ts.map +0 -1
  370. package/dist/utils.js +0 -81
  371. package/dist/utils.js.map +0 -1
  372. package/dist/web.cjs +0 -96
  373. package/dist/web.d.cts +0 -23
  374. package/dist/web.d.ts +0 -23
  375. package/dist/web.js +0 -15
  376. package/dist/writer.cjs +0 -15
  377. package/dist/writer.cjs.map +0 -1
  378. package/dist/writer.d.cts +0 -7
  379. package/dist/writer.d.cts.map +0 -1
  380. package/dist/writer.d.ts +0 -7
  381. package/dist/writer.d.ts.map +0 -1
  382. package/dist/writer.js +0 -14
  383. package/dist/writer.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.cts","names":["Command","Interrupt","BaseLangGraphErrorFields","BaseLangGraphError","Error","GraphBubbleUp","GraphRecursionError","GraphValueError","GraphInterrupt","NodeInterrupt","ParentCommand","isParentCommand","isGraphBubbleUp","isGraphInterrupt","EmptyInputError","EmptyChannelError","InvalidUpdateError","MultipleSubgraphsError","UnreachableNodeError","RemoteException","getSubgraphsSeenSet"],"sources":["../src/errors.d.ts"],"sourcesContent":["import { Command, Interrupt } from \"./constants.js\";\n// When editing, make sure to update the index found here:\n// https://langchain-ai.github.io/langgraphjs/troubleshooting/errors/\nexport type BaseLangGraphErrorFields = {\n lc_error_code?: \"GRAPH_RECURSION_LIMIT\" | \"INVALID_CONCURRENT_GRAPH_UPDATE\" | \"INVALID_GRAPH_NODE_RETURN_VALUE\" | \"MISSING_CHECKPOINTER\" | \"MULTIPLE_SUBGRAPHS\" | \"UNREACHABLE_NODE\";\n};\n// TODO: Merge with base LangChain error class when we drop support for core@0.2.0\n/** @category Errors */\nexport declare class BaseLangGraphError extends Error {\n lc_error_code?: string;\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n}\nexport declare class GraphBubbleUp extends BaseLangGraphError {\n get is_bubble_up(): boolean;\n}\nexport declare class GraphRecursionError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class GraphValueError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class GraphInterrupt extends GraphBubbleUp {\n interrupts: Interrupt[];\n constructor(interrupts?: Interrupt[], fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/** Raised by a node to interrupt execution. */\nexport declare class NodeInterrupt extends GraphInterrupt {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(message: any, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class ParentCommand extends GraphBubbleUp {\n command: Command;\n constructor(command: Command);\n static get unminifiable_name(): string;\n}\nexport declare function isParentCommand(e?: unknown): e is ParentCommand;\nexport declare function isGraphBubbleUp(e?: unknown): e is GraphBubbleUp;\nexport declare function isGraphInterrupt(e?: unknown): e is GraphInterrupt;\nexport declare class EmptyInputError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class EmptyChannelError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class InvalidUpdateError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/**\n * @deprecated This exception type is no longer thrown.\n */\nexport declare class MultipleSubgraphsError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class UnreachableNodeError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/**\n * Exception raised when an error occurs in the remote graph.\n */\nexport declare class RemoteException extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/**\n * Used for subgraph detection.\n */\nexport declare const getSubgraphsSeenSet: () => any;\n"],"mappings":";;;;;AAGYE,KAAAA,wBAAAA,GAAwB;EAKfC,aAAAA,CAAAA,EAAAA,uBAAkB,GAAA,iCAAA,GAAA,iCAAA,GAAA,sBAAA,GAAA,oBAAA,GAAA,kBAAA;CAAA;;;cAAlBA,kBAAAA,SAA2BC,KAAAA;EAI3BC,aAAAA,CAAAA,EAAa,MAAA;EAGbC,WAAAA,CAAAA,OAAmB,CAAnBA,EAAmB,MAAA,EAAA,MAAA,CAAA,EALGJ,wBAKH;;AACGA,cAJtBG,aAAAA,SAAsBF,kBAAAA,CAIAD;MADMC,YAAAA,CAAAA,CAAAA,EAAAA,OAAAA;;AAI5BI,cAJAD,mBAAAA,SAA4BH,kBAAAA,CAIb;EAAA,WAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAHOD,wBAGP;aACOA,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;cADtBK,eAAAA,SAAwBJ,kBAAAA;EAIxBK,WAAAA,CAAAA,OAAc,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAHQN,wBAGR;EAAA,WAAA,iBAAA,CAAA,CAAA,EAAA,MAAA;;AAEND,cAFRO,cAAAA,SAAuBH,aAAAA,CAEfJ;YAAsBC,EADnCD,SACmCC,EAAAA;aAFPG,CAAAA,UAAAA,CAAAA,EAEfJ,SAFeI,EAAAA,EAAAA,MAAAA,CAAAA,EAEOH,wBAFPG;;AAM5C;;AAEuCH,cAFlBO,aAAAA,SAAsBD,cAAAA,CAEJN;;qCAAAA;EAGlBQ,WAAAA,iBAAa,CAAA,CAAA,EAAA,MAAA;;AACrBV,cADQU,aAAAA,SAAsBL,aAAAA,CAC9BL;SACYA,EADZA,OACYA;aAFkBK,CAAAA,OAAAA,EAElBL,OAFkBK;;AAK3C;AACwBO,iBADAD,eAAAA,CACmCN,CAAAA,CAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,IADAK,aACAL;AACnCQ,iBADAD,eAAAA,CACoCJ,CAAAA,CAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,IADDH,aACCG;AACvCM,iBADGD,gBAAAA,CACY,CAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,IADwBL,cACxB;AAAA,cAAfM,eAAAA,SAAwBX,kBAAAA,CAAT;aACOD,CAAAA,OAAAA,CAAAA,EAAAA,MAAAA,EAAAA,MAAAA,CAAAA,EAAAA,wBAAAA;aADEC,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;AAIxBY,cAAAA,iBAAAA,SAA0BZ,kBAAAA,CAAT;EAAA,WAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EACKD,wBADL;aACKA,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;cAGtBc,kBAAAA,SAA2Bb,kBAAAA;EAA3Ba,WAAAA,CAAAA,OAAkB,CAAlBA,EAAkB,MAAA,EAAA,MAAA,CAAA,EACId,wBADJ;EAAA,WAAA,iBAAA,CAAA,CAAA,EAAA,MAAA;;;;AAOvC;AAA2C,cAAtBe,sBAAAA,SAA+Bd,kBAAAA,CAAT;aACAD,CAAAA,OAAAA,CAAAA,EAAAA,MAAAA,EAAAA,MAAAA,CAAAA,EAAAA,wBAAAA;aADSC,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;AAI/Be,cAAAA,oBAAAA,SAA6Bf,kBAAAA,CAAT;EAAA,WAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EACED,wBADF;aACEA,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;;AAM3C;;AAC2CA,cADtBiB,eAAAA,SAAwBhB,kBAAAA,CACFD;aADEC,CAAAA,OAAAA,CAAAA,EAAAA,MAAAA,EAAAA,MAAAA,CAAAA,EACFD,wBADEC;;AAO7C;;;;cAAqBiB"}
package/dist/errors.d.ts DELETED
@@ -1,81 +0,0 @@
1
- import { Command, Interrupt } from "./constants.js";
2
-
3
- //#region src/errors.d.ts
4
- // When editing, make sure to update the index found here:
5
- // https://langchain-ai.github.io/langgraphjs/troubleshooting/errors/
6
- type BaseLangGraphErrorFields = {
7
- lc_error_code?: "GRAPH_RECURSION_LIMIT" | "INVALID_CONCURRENT_GRAPH_UPDATE" | "INVALID_GRAPH_NODE_RETURN_VALUE" | "MISSING_CHECKPOINTER" | "MULTIPLE_SUBGRAPHS" | "UNREACHABLE_NODE";
8
- };
9
- // TODO: Merge with base LangChain error class when we drop support for core@0.2.0
10
- /** @category Errors */
11
- declare class BaseLangGraphError extends Error {
12
- lc_error_code?: string;
13
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
14
- }
15
- declare class GraphBubbleUp extends BaseLangGraphError {
16
- get is_bubble_up(): boolean;
17
- }
18
- declare class GraphRecursionError extends BaseLangGraphError {
19
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
20
- static get unminifiable_name(): string;
21
- }
22
- declare class GraphValueError extends BaseLangGraphError {
23
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
24
- static get unminifiable_name(): string;
25
- }
26
- declare class GraphInterrupt extends GraphBubbleUp {
27
- interrupts: Interrupt[];
28
- constructor(interrupts?: Interrupt[], fields?: BaseLangGraphErrorFields);
29
- static get unminifiable_name(): string;
30
- }
31
- /** Raised by a node to interrupt execution. */
32
- declare class NodeInterrupt extends GraphInterrupt {
33
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
34
- constructor(message: any, fields?: BaseLangGraphErrorFields);
35
- static get unminifiable_name(): string;
36
- }
37
- declare class ParentCommand extends GraphBubbleUp {
38
- command: Command;
39
- constructor(command: Command);
40
- static get unminifiable_name(): string;
41
- }
42
- declare function isParentCommand(e?: unknown): e is ParentCommand;
43
- declare function isGraphBubbleUp(e?: unknown): e is GraphBubbleUp;
44
- declare function isGraphInterrupt(e?: unknown): e is GraphInterrupt;
45
- declare class EmptyInputError extends BaseLangGraphError {
46
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
47
- static get unminifiable_name(): string;
48
- }
49
- declare class EmptyChannelError extends BaseLangGraphError {
50
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
51
- static get unminifiable_name(): string;
52
- }
53
- declare class InvalidUpdateError extends BaseLangGraphError {
54
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
55
- static get unminifiable_name(): string;
56
- }
57
- /**
58
- * @deprecated This exception type is no longer thrown.
59
- */
60
- declare class MultipleSubgraphsError extends BaseLangGraphError {
61
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
62
- static get unminifiable_name(): string;
63
- }
64
- declare class UnreachableNodeError extends BaseLangGraphError {
65
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
66
- static get unminifiable_name(): string;
67
- }
68
- /**
69
- * Exception raised when an error occurs in the remote graph.
70
- */
71
- declare class RemoteException extends BaseLangGraphError {
72
- constructor(message?: string, fields?: BaseLangGraphErrorFields);
73
- static get unminifiable_name(): string;
74
- }
75
- /**
76
- * Used for subgraph detection.
77
- */
78
- declare const getSubgraphsSeenSet: () => any;
79
- //#endregion
80
- export { BaseLangGraphError, BaseLangGraphErrorFields, EmptyChannelError, EmptyInputError, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, InvalidUpdateError, MultipleSubgraphsError, NodeInterrupt, ParentCommand, RemoteException, UnreachableNodeError, getSubgraphsSeenSet, isGraphBubbleUp, isGraphInterrupt, isParentCommand };
81
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","names":["Command","Interrupt","BaseLangGraphErrorFields","BaseLangGraphError","Error","GraphBubbleUp","GraphRecursionError","GraphValueError","GraphInterrupt","NodeInterrupt","ParentCommand","isParentCommand","isGraphBubbleUp","isGraphInterrupt","EmptyInputError","EmptyChannelError","InvalidUpdateError","MultipleSubgraphsError","UnreachableNodeError","RemoteException","getSubgraphsSeenSet"],"sources":["../src/errors.d.ts"],"sourcesContent":["import { Command, Interrupt } from \"./constants.js\";\n// When editing, make sure to update the index found here:\n// https://langchain-ai.github.io/langgraphjs/troubleshooting/errors/\nexport type BaseLangGraphErrorFields = {\n lc_error_code?: \"GRAPH_RECURSION_LIMIT\" | \"INVALID_CONCURRENT_GRAPH_UPDATE\" | \"INVALID_GRAPH_NODE_RETURN_VALUE\" | \"MISSING_CHECKPOINTER\" | \"MULTIPLE_SUBGRAPHS\" | \"UNREACHABLE_NODE\";\n};\n// TODO: Merge with base LangChain error class when we drop support for core@0.2.0\n/** @category Errors */\nexport declare class BaseLangGraphError extends Error {\n lc_error_code?: string;\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n}\nexport declare class GraphBubbleUp extends BaseLangGraphError {\n get is_bubble_up(): boolean;\n}\nexport declare class GraphRecursionError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class GraphValueError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class GraphInterrupt extends GraphBubbleUp {\n interrupts: Interrupt[];\n constructor(interrupts?: Interrupt[], fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/** Raised by a node to interrupt execution. */\nexport declare class NodeInterrupt extends GraphInterrupt {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(message: any, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class ParentCommand extends GraphBubbleUp {\n command: Command;\n constructor(command: Command);\n static get unminifiable_name(): string;\n}\nexport declare function isParentCommand(e?: unknown): e is ParentCommand;\nexport declare function isGraphBubbleUp(e?: unknown): e is GraphBubbleUp;\nexport declare function isGraphInterrupt(e?: unknown): e is GraphInterrupt;\nexport declare class EmptyInputError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class EmptyChannelError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class InvalidUpdateError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/**\n * @deprecated This exception type is no longer thrown.\n */\nexport declare class MultipleSubgraphsError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\nexport declare class UnreachableNodeError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/**\n * Exception raised when an error occurs in the remote graph.\n */\nexport declare class RemoteException extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields);\n static get unminifiable_name(): string;\n}\n/**\n * Used for subgraph detection.\n */\nexport declare const getSubgraphsSeenSet: () => any;\n"],"mappings":";;;;;AAGYE,KAAAA,wBAAAA,GAAwB;EAKfC,aAAAA,CAAAA,EAAAA,uBAAkB,GAAA,iCAAA,GAAA,iCAAA,GAAA,sBAAA,GAAA,oBAAA,GAAA,kBAAA;CAAA;;;cAAlBA,kBAAAA,SAA2BC,KAAAA;EAI3BC,aAAAA,CAAAA,EAAa,MAAA;EAGbC,WAAAA,CAAAA,OAAmB,CAAnBA,EAAmB,MAAA,EAAA,MAAA,CAAA,EALGJ,wBAKH;;AACGA,cAJtBG,aAAAA,SAAsBF,kBAAAA,CAIAD;MADMC,YAAAA,CAAAA,CAAAA,EAAAA,OAAAA;;AAI5BI,cAJAD,mBAAAA,SAA4BH,kBAAAA,CAIb;EAAA,WAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAHOD,wBAGP;aACOA,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;cADtBK,eAAAA,SAAwBJ,kBAAAA;EAIxBK,WAAAA,CAAAA,OAAc,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAHQN,wBAGR;EAAA,WAAA,iBAAA,CAAA,CAAA,EAAA,MAAA;;AAEND,cAFRO,cAAAA,SAAuBH,aAAAA,CAEfJ;YAAsBC,EADnCD,SACmCC,EAAAA;aAFPG,CAAAA,UAAAA,CAAAA,EAEfJ,SAFeI,EAAAA,EAAAA,MAAAA,CAAAA,EAEOH,wBAFPG;;AAM5C;;AAEuCH,cAFlBO,aAAAA,SAAsBD,cAAAA,CAEJN;;qCAAAA;EAGlBQ,WAAAA,iBAAa,CAAA,CAAA,EAAA,MAAA;;AACrBV,cADQU,aAAAA,SAAsBL,aAAAA,CAC9BL;SACYA,EADZA,OACYA;aAFkBK,CAAAA,OAAAA,EAElBL,OAFkBK;;AAK3C;AACwBO,iBADAD,eAAAA,CACmCN,CAAAA,CAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,IADAK,aACAL;AACnCQ,iBADAD,eAAAA,CACoCJ,CAAAA,CAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,IADDH,aACCG;AACvCM,iBADGD,gBAAAA,CACY,CAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,IADwBL,cACxB;AAAA,cAAfM,eAAAA,SAAwBX,kBAAAA,CAAT;aACOD,CAAAA,OAAAA,CAAAA,EAAAA,MAAAA,EAAAA,MAAAA,CAAAA,EAAAA,wBAAAA;aADEC,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;AAIxBY,cAAAA,iBAAAA,SAA0BZ,kBAAAA,CAAT;EAAA,WAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EACKD,wBADL;aACKA,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;cAGtBc,kBAAAA,SAA2Bb,kBAAAA;EAA3Ba,WAAAA,CAAAA,OAAkB,CAAlBA,EAAkB,MAAA,EAAA,MAAA,CAAA,EACId,wBADJ;EAAA,WAAA,iBAAA,CAAA,CAAA,EAAA,MAAA;;;;AAOvC;AAA2C,cAAtBe,sBAAAA,SAA+Bd,kBAAAA,CAAT;aACAD,CAAAA,OAAAA,CAAAA,EAAAA,MAAAA,EAAAA,MAAAA,CAAAA,EAAAA,wBAAAA;aADSC,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;AAI/Be,cAAAA,oBAAAA,SAA6Bf,kBAAAA,CAAT;EAAA,WAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EACED,wBADF;aACEA,iBAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;;AAM3C;;AAC2CA,cADtBiB,eAAAA,SAAwBhB,kBAAAA,CACFD;aADEC,CAAAA,OAAAA,CAAAA,EAAAA,MAAAA,EAAAA,MAAAA,CAAAA,EACFD,wBADEC;;AAO7C;;;;cAAqBiB"}
package/dist/errors.js DELETED
@@ -1,146 +0,0 @@
1
- //#region src/errors.ts
2
- /** @category Errors */
3
- var BaseLangGraphError = class extends Error {
4
- lc_error_code;
5
- constructor(message, fields) {
6
- let finalMessage = message ?? "";
7
- if (fields?.lc_error_code) finalMessage = `${finalMessage}\n\nTroubleshooting URL: https://docs.langchain.com/oss/javascript/langgraph/${fields.lc_error_code}/\n`;
8
- super(finalMessage);
9
- this.lc_error_code = fields?.lc_error_code;
10
- }
11
- };
12
- var GraphBubbleUp = class extends BaseLangGraphError {
13
- get is_bubble_up() {
14
- return true;
15
- }
16
- };
17
- var GraphRecursionError = class extends BaseLangGraphError {
18
- constructor(message, fields) {
19
- super(message, fields);
20
- this.name = "GraphRecursionError";
21
- }
22
- static get unminifiable_name() {
23
- return "GraphRecursionError";
24
- }
25
- };
26
- var GraphValueError = class extends BaseLangGraphError {
27
- constructor(message, fields) {
28
- super(message, fields);
29
- this.name = "GraphValueError";
30
- }
31
- static get unminifiable_name() {
32
- return "GraphValueError";
33
- }
34
- };
35
- var GraphInterrupt = class extends GraphBubbleUp {
36
- interrupts;
37
- constructor(interrupts, fields) {
38
- super(JSON.stringify(interrupts, null, 2), fields);
39
- this.name = "GraphInterrupt";
40
- this.interrupts = interrupts ?? [];
41
- }
42
- static get unminifiable_name() {
43
- return "GraphInterrupt";
44
- }
45
- };
46
- /** Raised by a node to interrupt execution. */
47
- var NodeInterrupt = class extends GraphInterrupt {
48
- constructor(message, fields) {
49
- super([{ value: message }], fields);
50
- this.name = "NodeInterrupt";
51
- }
52
- static get unminifiable_name() {
53
- return "NodeInterrupt";
54
- }
55
- };
56
- var ParentCommand = class extends GraphBubbleUp {
57
- command;
58
- constructor(command) {
59
- super();
60
- this.name = "ParentCommand";
61
- this.command = command;
62
- }
63
- static get unminifiable_name() {
64
- return "ParentCommand";
65
- }
66
- };
67
- function isParentCommand(e) {
68
- return e !== void 0 && e.name === ParentCommand.unminifiable_name;
69
- }
70
- function isGraphBubbleUp(e) {
71
- return e !== void 0 && e.is_bubble_up === true;
72
- }
73
- function isGraphInterrupt(e) {
74
- return e !== void 0 && [GraphInterrupt.unminifiable_name, NodeInterrupt.unminifiable_name].includes(e.name);
75
- }
76
- var EmptyInputError = class extends BaseLangGraphError {
77
- constructor(message, fields) {
78
- super(message, fields);
79
- this.name = "EmptyInputError";
80
- }
81
- static get unminifiable_name() {
82
- return "EmptyInputError";
83
- }
84
- };
85
- var EmptyChannelError = class extends BaseLangGraphError {
86
- constructor(message, fields) {
87
- super(message, fields);
88
- this.name = "EmptyChannelError";
89
- }
90
- static get unminifiable_name() {
91
- return "EmptyChannelError";
92
- }
93
- };
94
- var InvalidUpdateError = class extends BaseLangGraphError {
95
- constructor(message, fields) {
96
- super(message, fields);
97
- this.name = "InvalidUpdateError";
98
- }
99
- static get unminifiable_name() {
100
- return "InvalidUpdateError";
101
- }
102
- };
103
- /**
104
- * @deprecated This exception type is no longer thrown.
105
- */
106
- var MultipleSubgraphsError = class extends BaseLangGraphError {
107
- constructor(message, fields) {
108
- super(message, fields);
109
- this.name = "MultipleSubgraphError";
110
- }
111
- static get unminifiable_name() {
112
- return "MultipleSubgraphError";
113
- }
114
- };
115
- var UnreachableNodeError = class extends BaseLangGraphError {
116
- constructor(message, fields) {
117
- super(message, fields);
118
- this.name = "UnreachableNodeError";
119
- }
120
- static get unminifiable_name() {
121
- return "UnreachableNodeError";
122
- }
123
- };
124
- /**
125
- * Exception raised when an error occurs in the remote graph.
126
- */
127
- var RemoteException = class extends BaseLangGraphError {
128
- constructor(message, fields) {
129
- super(message, fields);
130
- this.name = "RemoteException";
131
- }
132
- static get unminifiable_name() {
133
- return "RemoteException";
134
- }
135
- };
136
- /**
137
- * Used for subgraph detection.
138
- */
139
- const getSubgraphsSeenSet = () => {
140
- if (globalThis[Symbol.for("LG_CHECKPOINT_SEEN_NS_SET")] === void 0) globalThis[Symbol.for("LG_CHECKPOINT_SEEN_NS_SET")] = /* @__PURE__ */ new Set();
141
- return globalThis[Symbol.for("LG_CHECKPOINT_SEEN_NS_SET")];
142
- };
143
-
144
- //#endregion
145
- export { BaseLangGraphError, EmptyChannelError, EmptyInputError, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, InvalidUpdateError, MultipleSubgraphsError, NodeInterrupt, ParentCommand, RemoteException, UnreachableNodeError, getSubgraphsSeenSet, isGraphBubbleUp, isGraphInterrupt, isParentCommand };
146
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","names":[],"sources":["../src/errors.ts"],"sourcesContent":["import { Command, Interrupt } from \"./constants.js\";\n\n// When editing, make sure to update the index found here:\n// https://langchain-ai.github.io/langgraphjs/troubleshooting/errors/\nexport type BaseLangGraphErrorFields = {\n lc_error_code?:\n | \"GRAPH_RECURSION_LIMIT\"\n | \"INVALID_CONCURRENT_GRAPH_UPDATE\"\n | \"INVALID_GRAPH_NODE_RETURN_VALUE\"\n | \"MISSING_CHECKPOINTER\"\n | \"MULTIPLE_SUBGRAPHS\"\n | \"UNREACHABLE_NODE\";\n};\n\n// TODO: Merge with base LangChain error class when we drop support for core@0.2.0\n/** @category Errors */\nexport class BaseLangGraphError extends Error {\n lc_error_code?: string;\n\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n let finalMessage = message ?? \"\";\n if (fields?.lc_error_code) {\n finalMessage = `${finalMessage}\\n\\nTroubleshooting URL: https://docs.langchain.com/oss/javascript/langgraph/${fields.lc_error_code}/\\n`;\n }\n super(finalMessage);\n this.lc_error_code = fields?.lc_error_code;\n }\n}\n\nexport class GraphBubbleUp extends BaseLangGraphError {\n get is_bubble_up() {\n return true;\n }\n}\n\nexport class GraphRecursionError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"GraphRecursionError\";\n }\n\n static get unminifiable_name() {\n return \"GraphRecursionError\";\n }\n}\n\nexport class GraphValueError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"GraphValueError\";\n }\n\n static get unminifiable_name() {\n return \"GraphValueError\";\n }\n}\n\nexport class GraphInterrupt extends GraphBubbleUp {\n interrupts: Interrupt[];\n\n constructor(interrupts?: Interrupt[], fields?: BaseLangGraphErrorFields) {\n super(JSON.stringify(interrupts, null, 2), fields);\n this.name = \"GraphInterrupt\";\n this.interrupts = interrupts ?? [];\n }\n\n static get unminifiable_name() {\n return \"GraphInterrupt\";\n }\n}\n\n/** Raised by a node to interrupt execution. */\nexport class NodeInterrupt extends GraphInterrupt {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(message: any, fields?: BaseLangGraphErrorFields) {\n super([{ value: message }], fields);\n this.name = \"NodeInterrupt\";\n }\n\n static get unminifiable_name() {\n return \"NodeInterrupt\";\n }\n}\n\nexport class ParentCommand extends GraphBubbleUp {\n command: Command;\n\n constructor(command: Command) {\n super();\n this.name = \"ParentCommand\";\n this.command = command;\n }\n\n static get unminifiable_name() {\n return \"ParentCommand\";\n }\n}\n\nexport function isParentCommand(e?: unknown): e is ParentCommand {\n return (\n e !== undefined &&\n (e as ParentCommand).name === ParentCommand.unminifiable_name\n );\n}\n\nexport function isGraphBubbleUp(e?: unknown): e is GraphBubbleUp {\n return e !== undefined && (e as GraphBubbleUp).is_bubble_up === true;\n}\n\nexport function isGraphInterrupt(e?: unknown): e is GraphInterrupt {\n return (\n e !== undefined &&\n [\n GraphInterrupt.unminifiable_name,\n NodeInterrupt.unminifiable_name,\n ].includes((e as Error).name)\n );\n}\n\nexport class EmptyInputError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"EmptyInputError\";\n }\n\n static get unminifiable_name() {\n return \"EmptyInputError\";\n }\n}\n\nexport class EmptyChannelError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"EmptyChannelError\";\n }\n\n static get unminifiable_name() {\n return \"EmptyChannelError\";\n }\n}\n\nexport class InvalidUpdateError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"InvalidUpdateError\";\n }\n\n static get unminifiable_name() {\n return \"InvalidUpdateError\";\n }\n}\n\n/**\n * @deprecated This exception type is no longer thrown.\n */\nexport class MultipleSubgraphsError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"MultipleSubgraphError\";\n }\n\n static get unminifiable_name() {\n return \"MultipleSubgraphError\";\n }\n}\n\nexport class UnreachableNodeError extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"UnreachableNodeError\";\n }\n\n static get unminifiable_name() {\n return \"UnreachableNodeError\";\n }\n}\n\n/**\n * Exception raised when an error occurs in the remote graph.\n */\nexport class RemoteException extends BaseLangGraphError {\n constructor(message?: string, fields?: BaseLangGraphErrorFields) {\n super(message, fields);\n this.name = \"RemoteException\";\n }\n\n static get unminifiable_name() {\n return \"RemoteException\";\n }\n}\n\n/**\n * Used for subgraph detection.\n */\nexport const getSubgraphsSeenSet = () => {\n if (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (globalThis as any)[Symbol.for(\"LG_CHECKPOINT_SEEN_NS_SET\")] === undefined\n ) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (globalThis as any)[Symbol.for(\"LG_CHECKPOINT_SEEN_NS_SET\")] = new Set();\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (globalThis as any)[Symbol.for(\"LG_CHECKPOINT_SEEN_NS_SET\")];\n};\n"],"mappings":";;AAgBA,IAAa,qBAAb,cAAwC,MAAM;CAC5C;CAEA,YAAY,SAAkB,QAAmC;EAC/D,IAAI,eAAe,WAAW;AAC9B,MAAI,QAAQ,cACV,gBAAe,GAAG,aAAa,+EAA+E,OAAO,cAAc;AAErI,QAAM;AACN,OAAK,gBAAgB,QAAQ;;;AAIjC,IAAa,gBAAb,cAAmC,mBAAmB;CACpD,IAAI,eAAe;AACjB,SAAO;;;AAIX,IAAa,sBAAb,cAAyC,mBAAmB;CAC1D,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;AAIX,IAAa,kBAAb,cAAqC,mBAAmB;CACtD,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;AAIX,IAAa,iBAAb,cAAoC,cAAc;CAChD;CAEA,YAAY,YAA0B,QAAmC;AACvE,QAAM,KAAK,UAAU,YAAY,MAAM,IAAI;AAC3C,OAAK,OAAO;AACZ,OAAK,aAAa,cAAc;;CAGlC,WAAW,oBAAoB;AAC7B,SAAO;;;;AAKX,IAAa,gBAAb,cAAmC,eAAe;CAEhD,YAAY,SAAc,QAAmC;AAC3D,QAAM,CAAC,EAAE,OAAO,YAAY;AAC5B,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;AAIX,IAAa,gBAAb,cAAmC,cAAc;CAC/C;CAEA,YAAY,SAAkB;AAC5B;AACA,OAAK,OAAO;AACZ,OAAK,UAAU;;CAGjB,WAAW,oBAAoB;AAC7B,SAAO;;;AAIX,SAAgB,gBAAgB,GAAiC;AAC/D,QACE,MAAM,UACL,EAAoB,SAAS,cAAc;;AAIhD,SAAgB,gBAAgB,GAAiC;AAC/D,QAAO,MAAM,UAAc,EAAoB,iBAAiB;;AAGlE,SAAgB,iBAAiB,GAAkC;AACjE,QACE,MAAM,UACN,CACE,eAAe,mBACf,cAAc,mBACd,SAAU,EAAY;;AAI5B,IAAa,kBAAb,cAAqC,mBAAmB;CACtD,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;AAIX,IAAa,oBAAb,cAAuC,mBAAmB;CACxD,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;AAIX,IAAa,qBAAb,cAAwC,mBAAmB;CACzD,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;;;;AAOX,IAAa,yBAAb,cAA4C,mBAAmB;CAC7D,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;AAIX,IAAa,uBAAb,cAA0C,mBAAmB;CAC3D,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;;;;AAOX,IAAa,kBAAb,cAAqC,mBAAmB;CACtD,YAAY,SAAkB,QAAmC;AAC/D,QAAM,SAAS;AACf,OAAK,OAAO;;CAGd,WAAW,oBAAoB;AAC7B,SAAO;;;;;;AAOX,MAAa,4BAA4B;AACvC,KAEG,WAAmB,OAAO,IAAI,kCAAkC,OAGjE,CAAC,WAAmB,OAAO,IAAI,gDAAgC,IAAI;AAGrE,QAAQ,WAAmB,OAAO,IAAI"}
@@ -1,301 +0,0 @@
1
- const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
- const require_last_value = require('../channels/last_value.cjs');
3
- const require_constants = require('../constants.cjs');
4
- const require_utils = require('../utils.cjs');
5
- const require_write = require('../pregel/write.cjs');
6
- const require_read = require('../pregel/read.cjs');
7
- const require_call = require('../pregel/call.cjs');
8
- const require_pregel_index = require('../pregel/index.cjs');
9
- const require_ephemeral_value = require('../channels/ephemeral_value.cjs');
10
- const __langchain_core_singletons = require_rolldown_runtime.__toESM(require("@langchain/core/singletons"));
11
-
12
- //#region src/func/index.ts
13
- /**
14
- * Define a LangGraph task using the `task` function.
15
- *
16
- * Tasks can only be called from within an {@link entrypoint} or from within a StateGraph.
17
- * A task can be called like a regular function with the following differences:
18
- *
19
- * - When a checkpointer is enabled, the function inputs and outputs must be serializable.
20
- * - The wrapped function can only be called from within an entrypoint or StateGraph.
21
- * - Calling the function produces a promise. This makes it easy to parallelize tasks.
22
- *
23
- * @typeParam ArgsT - The type of arguments the task function accepts
24
- * @typeParam OutputT - The type of value the task function returns
25
- * @param optionsOrName - Either an {@link TaskOptions} object, or a string for the name of the task
26
- * @param func - The function that executes this task
27
- * @returns A proxy function that accepts the same arguments as the original and always returns the result as a Promise
28
- *
29
- * @example basic example
30
- * ```typescript
31
- * const addOne = task("add", async (a: number) => a + 1);
32
- *
33
- * const workflow = entrypoint("example", async (numbers: number[]) => {
34
- * const promises = numbers.map(n => addOne(n));
35
- * const results = await Promise.all(promises);
36
- * return results;
37
- * });
38
- *
39
- * // Call the entrypoint
40
- * await workflow.invoke([1, 2, 3]); // Returns [2, 3, 4]
41
- * ```
42
- *
43
- * @example using a retry policy
44
- * ```typescript
45
- * const addOne = task({
46
- * name: "add",
47
- * retry: { maxAttempts: 3 }
48
- * },
49
- * async (a: number) => a + 1
50
- * );
51
- *
52
- * const workflow = entrypoint("example", async (numbers: number[]) => {
53
- * const promises = numbers.map(n => addOne(n));
54
- * const results = await Promise.all(promises);
55
- * return results;
56
- * });
57
- * ```
58
- * @category Functional API
59
- */
60
- function task(optionsOrName, func) {
61
- const options = typeof optionsOrName === "string" ? {
62
- name: optionsOrName,
63
- retry: void 0,
64
- cachePolicy: void 0
65
- } : optionsOrName;
66
- const { name, retry } = options;
67
- if (require_utils.isAsyncGeneratorFunction(func) || require_utils.isGeneratorFunction(func)) throw new Error("Generators are disallowed as tasks. For streaming responses, use config.write.");
68
- const cachePolicy = options.cachePolicy ?? ("cache" in options ? options.cache : void 0);
69
- let cache;
70
- if (typeof cachePolicy === "boolean") cache = cachePolicy ? {} : void 0;
71
- else cache = cachePolicy;
72
- return (...args) => {
73
- return require_call.call({
74
- func,
75
- name,
76
- retry,
77
- cache
78
- }, ...args);
79
- };
80
- }
81
- /**
82
- * Define a LangGraph workflow using the `entrypoint` function.
83
- *
84
- * ### Function signature
85
- *
86
- * The wrapped function must accept at most **two parameters**. The first parameter
87
- * is the input to the function. The second (optional) parameter is a
88
- * {@link LangGraphRunnableConfig} object. If you wish to pass multiple parameters to
89
- * the function, you can pass them as an object.
90
- *
91
- * ### Helper functions
92
- *
93
- * #### Streaming
94
- * To write data to the "custom" stream, use the {@link getWriter} function, or the
95
- * {@link LangGraphRunnableConfig.writer} property.
96
- *
97
- * #### State management
98
- * The {@link getPreviousState} function can be used to access the previous state
99
- * that was returned from the last invocation of the entrypoint on the same thread id.
100
- *
101
- * If you wish to save state other than the return value, you can use the
102
- * {@link entrypoint.final} function.
103
- *
104
- * @typeParam InputT - The type of input the entrypoint accepts
105
- * @typeParam OutputT - The type of output the entrypoint produces
106
- * @param optionsOrName - Either an {@link EntrypointOptions} object, or a string for the name of the entrypoint
107
- * @param func - The function that executes this entrypoint
108
- * @returns A {@link Pregel} instance that can be run to execute the workflow
109
- *
110
- * @example Using entrypoint and tasks
111
- * ```typescript
112
- * import { task, entrypoint } from "@langchain/langgraph";
113
- * import { MemorySaver } from "@langchain/langgraph-checkpoint";
114
- * import { interrupt, Command } from "@langchain/langgraph";
115
- *
116
- * const composeEssay = task("compose", async (topic: string) => {
117
- * await new Promise(r => setTimeout(r, 1000)); // Simulate slow operation
118
- * return `An essay about ${topic}`;
119
- * });
120
- *
121
- * const reviewWorkflow = entrypoint({
122
- * name: "review",
123
- * checkpointer: new MemorySaver()
124
- * }, async (topic: string) => {
125
- * const essay = await composeEssay(topic);
126
- * const humanReview = await interrupt({
127
- * question: "Please provide a review",
128
- * essay
129
- * });
130
- * return {
131
- * essay,
132
- * review: humanReview
133
- * };
134
- * });
135
- *
136
- * // Example configuration for the workflow
137
- * const config = {
138
- * configurable: {
139
- * thread_id: "some_thread"
140
- * }
141
- * };
142
- *
143
- * // Topic for the essay
144
- * const topic = "cats";
145
- *
146
- * // Stream the workflow to generate the essay and await human review
147
- * for await (const result of reviewWorkflow.stream(topic, config)) {
148
- * console.log(result);
149
- * }
150
- *
151
- * // Example human review provided after the interrupt
152
- * const humanReview = "This essay is great.";
153
- *
154
- * // Resume the workflow with the provided human review
155
- * for await (const result of reviewWorkflow.stream(new Command({ resume: humanReview }), config)) {
156
- * console.log(result);
157
- * }
158
- * ```
159
- *
160
- * @example Accessing the previous return value
161
- * ```typescript
162
- * import { entrypoint, getPreviousState } from "@langchain/langgraph";
163
- * import { MemorySaver } from "@langchain/langgraph-checkpoint";
164
- *
165
- * const accumulator = entrypoint({
166
- * name: "accumulator",
167
- * checkpointer: new MemorySaver()
168
- * }, async (input: string) => {
169
- * const previous = getPreviousState<number>();
170
- * return previous !== undefined ? `${previous } ${input}` : input;
171
- * });
172
- *
173
- * const config = {
174
- * configurable: {
175
- * thread_id: "some_thread"
176
- * }
177
- * };
178
- * await accumulator.invoke("hello", config); // returns "hello"
179
- * await accumulator.invoke("world", config); // returns "hello world"
180
- * ```
181
- *
182
- * @example Using entrypoint.final to save a value
183
- * ```typescript
184
- * import { entrypoint, getPreviousState } from "@langchain/langgraph";
185
- * import { MemorySaver } from "@langchain/langgraph-checkpoint";
186
- *
187
- * const myWorkflow = entrypoint({
188
- * name: "accumulator",
189
- * checkpointer: new MemorySaver()
190
- * }, async (num: number) => {
191
- * const previous = getPreviousState<number>();
192
- *
193
- * // This will return the previous value to the caller, saving
194
- * // 2 * num to the checkpoint, which will be used in the next invocation
195
- * // for the `previous` parameter.
196
- * return entrypoint.final({
197
- * value: previous ?? 0,
198
- * save: 2 * num
199
- * });
200
- * });
201
- *
202
- * const config = {
203
- * configurable: {
204
- * thread_id: "some_thread"
205
- * }
206
- * };
207
- *
208
- * await myWorkflow.invoke(3, config); // 0 (previous was undefined)
209
- * await myWorkflow.invoke(1, config); // 6 (previous was 3 * 2 from the previous invocation)
210
- * ```
211
- * @category Functional API
212
- */
213
- const entrypoint = function entrypoint$1(optionsOrName, func) {
214
- const { name, checkpointer, store, cache } = typeof optionsOrName === "string" ? {
215
- name: optionsOrName,
216
- checkpointer: void 0,
217
- store: void 0
218
- } : optionsOrName;
219
- if (require_utils.isAsyncGeneratorFunction(func) || require_utils.isGeneratorFunction(func)) throw new Error("Generators are disallowed as entrypoints. For streaming responses, use config.write.");
220
- const streamMode = "updates";
221
- const bound = require_call.getRunnableForEntrypoint(name, func);
222
- function isEntrypointFinal(value) {
223
- return typeof value === "object" && value !== null && "__lg_type" in value && value.__lg_type === "__pregel_final";
224
- }
225
- const pluckReturnValue = new require_utils.RunnableCallable({
226
- name: "pluckReturnValue",
227
- func: (value) => {
228
- return isEntrypointFinal(value) ? value.value : value;
229
- }
230
- });
231
- const pluckSaveValue = new require_utils.RunnableCallable({
232
- name: "pluckSaveValue",
233
- func: (value) => {
234
- return isEntrypointFinal(value) ? value.save : value;
235
- }
236
- });
237
- const entrypointNode = new require_read.PregelNode({
238
- bound,
239
- triggers: [require_constants.START],
240
- channels: [require_constants.START],
241
- writers: [new require_write.ChannelWrite([{
242
- channel: require_constants.END,
243
- value: require_write.PASSTHROUGH,
244
- mapper: pluckReturnValue
245
- }, {
246
- channel: require_constants.PREVIOUS,
247
- value: require_write.PASSTHROUGH,
248
- mapper: pluckSaveValue
249
- }], [require_constants.TAG_HIDDEN])]
250
- });
251
- return new require_pregel_index.Pregel({
252
- name,
253
- checkpointer,
254
- nodes: { [name]: entrypointNode },
255
- channels: {
256
- [require_constants.START]: new require_ephemeral_value.EphemeralValue(),
257
- [require_constants.END]: new require_last_value.LastValue(),
258
- [require_constants.PREVIOUS]: new require_last_value.LastValue()
259
- },
260
- inputChannels: require_constants.START,
261
- outputChannels: require_constants.END,
262
- streamChannels: require_constants.END,
263
- streamMode,
264
- store,
265
- cache
266
- });
267
- };
268
- entrypoint.final = function final({ value, save }) {
269
- return {
270
- value,
271
- save,
272
- __lg_type: "__pregel_final"
273
- };
274
- };
275
- /**
276
- * A helper utility function for use with the functional API that returns the previous
277
- * state from the checkpoint from the last invocation of the current thread.
278
- *
279
- * This function allows workflows to access state that was saved in previous runs
280
- * using {@link entrypoint.final}.
281
- *
282
- * @typeParam StateT - The type of the state that was previously saved
283
- * @returns The previous saved state from the last invocation of the current thread
284
- *
285
- * @example
286
- * ```typescript
287
- * const previousState = getPreviousState<{ counter: number }>();
288
- * const newCount = (previousState?.counter ?? 0) + 1;
289
- * ```
290
- * @category Functional API
291
- */
292
- function getPreviousState() {
293
- const config = __langchain_core_singletons.AsyncLocalStorageProviderSingleton.getRunnableConfig();
294
- return config.configurable?.[require_constants.CONFIG_KEY_PREVIOUS_STATE];
295
- }
296
-
297
- //#endregion
298
- exports.entrypoint = entrypoint;
299
- exports.getPreviousState = getPreviousState;
300
- exports.task = task;
301
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","names":["isAsyncGeneratorFunction","isGeneratorFunction","cache: CachePolicy | undefined","call","entrypoint","getRunnableForEntrypoint","RunnableCallable","PregelNode","START","ChannelWrite","END","PASSTHROUGH","PREVIOUS","TAG_HIDDEN","Pregel","EphemeralValue","LastValue","config: LangGraphRunnableConfig","AsyncLocalStorageProviderSingleton","CONFIG_KEY_PREVIOUS_STATE"],"sources":["../../src/func/index.ts"],"sourcesContent":["import {\n BaseCache,\n BaseCheckpointSaver,\n BaseStore,\n} from \"@langchain/langgraph-checkpoint\";\nimport { AsyncLocalStorageProviderSingleton } from \"@langchain/core/singletons\";\nimport { Pregel } from \"../pregel/index.js\";\nimport { PregelNode } from \"../pregel/read.js\";\nimport {\n CONFIG_KEY_PREVIOUS_STATE,\n END,\n PREVIOUS,\n START,\n TAG_HIDDEN,\n} from \"../constants.js\";\nimport { EphemeralValue } from \"../channels/ephemeral_value.js\";\nimport { call, getRunnableForEntrypoint } from \"../pregel/call.js\";\nimport type { CachePolicy, RetryPolicy } from \"../pregel/utils/index.js\";\nimport { LastValue } from \"../channels/last_value.js\";\nimport {\n EntrypointFinal,\n EntrypointReturnT,\n EntrypointFinalSaveT,\n EntrypointFunc,\n TaskFunc,\n} from \"./types.js\";\nimport { LangGraphRunnableConfig } from \"../pregel/runnable_types.js\";\nimport {\n RunnableCallable,\n isAsyncGeneratorFunction,\n isGeneratorFunction,\n} from \"../utils.js\";\nimport { ChannelWrite, PASSTHROUGH } from \"../pregel/write.js\";\n\n/**\n * Options for the {@link task} function\n */\nexport interface TaskOptions {\n /**\n * The name of the task, analogous to the node name in {@link StateGraph}.\n */\n name: string;\n /**\n * The retry policy for the task. Configures how many times and under what conditions\n * the task should be retried if it fails.\n */\n retry?: RetryPolicy;\n\n /**\n * The cache policy for the task. Configures how the task should be cached.\n */\n cachePolicy?: CachePolicy;\n}\n\n/**\n * Define a LangGraph task using the `task` function.\n *\n * Tasks can only be called from within an {@link entrypoint} or from within a StateGraph.\n * A task can be called like a regular function with the following differences:\n *\n * - When a checkpointer is enabled, the function inputs and outputs must be serializable.\n * - The wrapped function can only be called from within an entrypoint or StateGraph.\n * - Calling the function produces a promise. This makes it easy to parallelize tasks.\n *\n * @typeParam ArgsT - The type of arguments the task function accepts\n * @typeParam OutputT - The type of value the task function returns\n * @param optionsOrName - Either an {@link TaskOptions} object, or a string for the name of the task\n * @param func - The function that executes this task\n * @returns A proxy function that accepts the same arguments as the original and always returns the result as a Promise\n *\n * @example basic example\n * ```typescript\n * const addOne = task(\"add\", async (a: number) => a + 1);\n *\n * const workflow = entrypoint(\"example\", async (numbers: number[]) => {\n * const promises = numbers.map(n => addOne(n));\n * const results = await Promise.all(promises);\n * return results;\n * });\n *\n * // Call the entrypoint\n * await workflow.invoke([1, 2, 3]); // Returns [2, 3, 4]\n * ```\n *\n * @example using a retry policy\n * ```typescript\n * const addOne = task({\n * name: \"add\",\n * retry: { maxAttempts: 3 }\n * },\n * async (a: number) => a + 1\n * );\n *\n * const workflow = entrypoint(\"example\", async (numbers: number[]) => {\n * const promises = numbers.map(n => addOne(n));\n * const results = await Promise.all(promises);\n * return results;\n * });\n * ```\n * @category Functional API\n */\nexport function task<ArgsT extends unknown[], OutputT>(\n optionsOrName: TaskOptions | string,\n func: TaskFunc<ArgsT, OutputT>\n): (...args: ArgsT) => Promise<OutputT> {\n const options =\n typeof optionsOrName === \"string\"\n ? { name: optionsOrName, retry: undefined, cachePolicy: undefined }\n : optionsOrName;\n\n const { name, retry } = options;\n if (isAsyncGeneratorFunction(func) || isGeneratorFunction(func)) {\n throw new Error(\n \"Generators are disallowed as tasks. For streaming responses, use config.write.\"\n );\n }\n\n const cachePolicy =\n options.cachePolicy ??\n // `cache` was mistakingly used as an alias for `cachePolicy` in v0.3.x,\n // TODO: remove in 1.x\n (\"cache\" in options ? (options.cache as CachePolicy) : undefined);\n\n let cache: CachePolicy | undefined;\n if (typeof cachePolicy === \"boolean\") {\n cache = cachePolicy ? {} : undefined;\n } else {\n cache = cachePolicy;\n }\n\n return (...args: ArgsT) => {\n return call({ func, name, retry, cache }, ...args);\n };\n}\n\n/**\n * Options for the {@link entrypoint} function\n */\nexport type EntrypointOptions = {\n /**\n * The name of the {@link entrypoint}, analogous to the node name in {@link StateGraph}.\n * This name is used for logging, debugging, and checkpoint identification.\n */\n name: string;\n /**\n * The checkpointer for the {@link entrypoint}. Used to save and restore state between\n * invocations of the workflow.\n */\n checkpointer?: BaseCheckpointSaver;\n /**\n * The store for the {@link entrypoint}. Used to persist data across workflow runs.\n */\n store?: BaseStore;\n\n /**\n * The cache for the {@link entrypoint}. Used to cache values between workflow runs.\n */\n cache?: BaseCache;\n};\n\n/**\n * Type declaration for the entrypoint function with its properties\n * @category Functional API\n */\nexport interface EntrypointFunction {\n <InputT, OutputT>(\n optionsOrName: EntrypointOptions | string,\n func: EntrypointFunc<InputT, OutputT>\n ): Pregel<\n Record<string, PregelNode<InputT, EntrypointReturnT<OutputT>>>,\n {\n [START]: EphemeralValue<InputT>;\n [END]: LastValue<EntrypointReturnT<OutputT>>;\n [PREVIOUS]: LastValue<EntrypointFinalSaveT<OutputT>>;\n },\n Record<string, unknown>,\n InputT,\n EntrypointReturnT<OutputT>,\n // Because the update type is an return type union of tasks + entrypoint,\n // thus we can't type it properly.\n any, // eslint-disable-line @typescript-eslint/no-explicit-any\n Awaited<EntrypointReturnT<OutputT>>\n >;\n\n /**\n * A helper utility for use with the functional API that returns a value to the caller,\n * as well as a separate state value to persist to the checkpoint. This allows workflows\n * to maintain state between runs while returning different values to the caller.\n *\n * @typeParam ValueT - The type of the value to return to the caller\n * @typeParam SaveT - The type of the state to save to the checkpoint\n * @param options.value - The value to return to the caller\n * @param options.save - The value to save to the checkpoint\n * @returns An object with the value and save properties\n *\n * @example\n * ```typescript\n * return entrypoint.final({\n * value: \"result for caller\",\n * save: { counter: currentCount + 1 }\n * });\n * ```\n */\n final<ValueT, SaveT>(options: {\n value?: ValueT;\n save?: SaveT;\n }): EntrypointFinal<ValueT, SaveT>;\n}\n\n/**\n * Define a LangGraph workflow using the `entrypoint` function.\n *\n * ### Function signature\n *\n * The wrapped function must accept at most **two parameters**. The first parameter\n * is the input to the function. The second (optional) parameter is a\n * {@link LangGraphRunnableConfig} object. If you wish to pass multiple parameters to\n * the function, you can pass them as an object.\n *\n * ### Helper functions\n *\n * #### Streaming\n * To write data to the \"custom\" stream, use the {@link getWriter} function, or the\n * {@link LangGraphRunnableConfig.writer} property.\n *\n * #### State management\n * The {@link getPreviousState} function can be used to access the previous state\n * that was returned from the last invocation of the entrypoint on the same thread id.\n *\n * If you wish to save state other than the return value, you can use the\n * {@link entrypoint.final} function.\n *\n * @typeParam InputT - The type of input the entrypoint accepts\n * @typeParam OutputT - The type of output the entrypoint produces\n * @param optionsOrName - Either an {@link EntrypointOptions} object, or a string for the name of the entrypoint\n * @param func - The function that executes this entrypoint\n * @returns A {@link Pregel} instance that can be run to execute the workflow\n *\n * @example Using entrypoint and tasks\n * ```typescript\n * import { task, entrypoint } from \"@langchain/langgraph\";\n * import { MemorySaver } from \"@langchain/langgraph-checkpoint\";\n * import { interrupt, Command } from \"@langchain/langgraph\";\n *\n * const composeEssay = task(\"compose\", async (topic: string) => {\n * await new Promise(r => setTimeout(r, 1000)); // Simulate slow operation\n * return `An essay about ${topic}`;\n * });\n *\n * const reviewWorkflow = entrypoint({\n * name: \"review\",\n * checkpointer: new MemorySaver()\n * }, async (topic: string) => {\n * const essay = await composeEssay(topic);\n * const humanReview = await interrupt({\n * question: \"Please provide a review\",\n * essay\n * });\n * return {\n * essay,\n * review: humanReview\n * };\n * });\n *\n * // Example configuration for the workflow\n * const config = {\n * configurable: {\n * thread_id: \"some_thread\"\n * }\n * };\n *\n * // Topic for the essay\n * const topic = \"cats\";\n *\n * // Stream the workflow to generate the essay and await human review\n * for await (const result of reviewWorkflow.stream(topic, config)) {\n * console.log(result);\n * }\n *\n * // Example human review provided after the interrupt\n * const humanReview = \"This essay is great.\";\n *\n * // Resume the workflow with the provided human review\n * for await (const result of reviewWorkflow.stream(new Command({ resume: humanReview }), config)) {\n * console.log(result);\n * }\n * ```\n *\n * @example Accessing the previous return value\n * ```typescript\n * import { entrypoint, getPreviousState } from \"@langchain/langgraph\";\n * import { MemorySaver } from \"@langchain/langgraph-checkpoint\";\n *\n * const accumulator = entrypoint({\n * name: \"accumulator\",\n * checkpointer: new MemorySaver()\n * }, async (input: string) => {\n * const previous = getPreviousState<number>();\n * return previous !== undefined ? `${previous } ${input}` : input;\n * });\n *\n * const config = {\n * configurable: {\n * thread_id: \"some_thread\"\n * }\n * };\n * await accumulator.invoke(\"hello\", config); // returns \"hello\"\n * await accumulator.invoke(\"world\", config); // returns \"hello world\"\n * ```\n *\n * @example Using entrypoint.final to save a value\n * ```typescript\n * import { entrypoint, getPreviousState } from \"@langchain/langgraph\";\n * import { MemorySaver } from \"@langchain/langgraph-checkpoint\";\n *\n * const myWorkflow = entrypoint({\n * name: \"accumulator\",\n * checkpointer: new MemorySaver()\n * }, async (num: number) => {\n * const previous = getPreviousState<number>();\n *\n * // This will return the previous value to the caller, saving\n * // 2 * num to the checkpoint, which will be used in the next invocation\n * // for the `previous` parameter.\n * return entrypoint.final({\n * value: previous ?? 0,\n * save: 2 * num\n * });\n * });\n *\n * const config = {\n * configurable: {\n * thread_id: \"some_thread\"\n * }\n * };\n *\n * await myWorkflow.invoke(3, config); // 0 (previous was undefined)\n * await myWorkflow.invoke(1, config); // 6 (previous was 3 * 2 from the previous invocation)\n * ```\n * @category Functional API\n */\nexport const entrypoint = function entrypoint<InputT, OutputT>(\n optionsOrName: EntrypointOptions | string,\n func: EntrypointFunc<InputT, OutputT>\n) {\n const { name, checkpointer, store, cache } =\n typeof optionsOrName === \"string\"\n ? { name: optionsOrName, checkpointer: undefined, store: undefined }\n : optionsOrName;\n if (isAsyncGeneratorFunction(func) || isGeneratorFunction(func)) {\n throw new Error(\n \"Generators are disallowed as entrypoints. For streaming responses, use config.write.\"\n );\n }\n const streamMode = \"updates\";\n const bound = getRunnableForEntrypoint(name, func);\n\n // Helper to check if a value is an EntrypointFinal\n function isEntrypointFinal(\n value: unknown\n ): value is EntrypointFinal<unknown, unknown> {\n return (\n typeof value === \"object\" &&\n value !== null &&\n \"__lg_type\" in value &&\n value.__lg_type === \"__pregel_final\"\n );\n }\n\n // Helper function to pluck the return value from EntrypointFinal or passthrough\n const pluckReturnValue = new RunnableCallable({\n name: \"pluckReturnValue\",\n func: (value: unknown) => {\n return isEntrypointFinal(value) ? value.value : value;\n },\n });\n\n // Helper function to pluck the save value from EntrypointFinal or passthrough\n const pluckSaveValue = new RunnableCallable({\n name: \"pluckSaveValue\",\n func: (value: unknown) => {\n return isEntrypointFinal(value) ? value.save : value;\n },\n });\n\n const entrypointNode = new PregelNode<InputT, EntrypointReturnT<OutputT>>({\n bound,\n triggers: [START],\n channels: [START],\n writers: [\n new ChannelWrite(\n [\n { channel: END, value: PASSTHROUGH, mapper: pluckReturnValue },\n { channel: PREVIOUS, value: PASSTHROUGH, mapper: pluckSaveValue },\n ],\n [TAG_HIDDEN]\n ),\n ],\n });\n\n return new Pregel<\n Record<string, PregelNode<InputT, EntrypointReturnT<OutputT>>>, // node types\n {\n [START]: EphemeralValue<InputT>;\n [END]: LastValue<EntrypointReturnT<OutputT>>;\n [PREVIOUS]: LastValue<EntrypointFinalSaveT<OutputT>>;\n }, // channel types\n Record<string, unknown>, // configurable types\n InputT, // input type\n EntrypointReturnT<OutputT> // output type\n >({\n name,\n checkpointer,\n nodes: {\n [name]: entrypointNode,\n },\n channels: {\n [START]: new EphemeralValue<InputT>(),\n [END]: new LastValue<EntrypointReturnT<OutputT>>(),\n [PREVIOUS]: new LastValue<EntrypointFinalSaveT<OutputT>>(),\n },\n inputChannels: START,\n outputChannels: END,\n streamChannels: END,\n streamMode,\n store,\n cache,\n });\n} as EntrypointFunction;\n\n// documented by the EntrypointFunction interface\nentrypoint.final = function final<ValueT, SaveT>({\n value,\n save,\n}: {\n value?: ValueT;\n save?: SaveT;\n}): EntrypointFinal<ValueT, SaveT> {\n return { value, save, __lg_type: \"__pregel_final\" };\n};\n\n/**\n * A helper utility function for use with the functional API that returns the previous\n * state from the checkpoint from the last invocation of the current thread.\n *\n * This function allows workflows to access state that was saved in previous runs\n * using {@link entrypoint.final}.\n *\n * @typeParam StateT - The type of the state that was previously saved\n * @returns The previous saved state from the last invocation of the current thread\n *\n * @example\n * ```typescript\n * const previousState = getPreviousState<{ counter: number }>();\n * const newCount = (previousState?.counter ?? 0) + 1;\n * ```\n * @category Functional API\n */\nexport function getPreviousState<StateT>(): StateT {\n const config: LangGraphRunnableConfig =\n AsyncLocalStorageProviderSingleton.getRunnableConfig();\n return config.configurable?.[CONFIG_KEY_PREVIOUS_STATE] as StateT;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqGA,SAAgB,KACd,eACA,MACsC;CACtC,MAAM,UACJ,OAAO,kBAAkB,WACrB;EAAE,MAAM;EAAe,OAAO;EAAW,aAAa;KACtD;CAEN,MAAM,EAAE,MAAM,UAAU;AACxB,KAAIA,uCAAyB,SAASC,kCAAoB,MACxD,OAAM,IAAI,MACR;CAIJ,MAAM,cACJ,QAAQ,gBAGP,WAAW,UAAW,QAAQ,QAAwB;CAEzD,IAAIC;AACJ,KAAI,OAAO,gBAAgB,UACzB,SAAQ,cAAc,KAAK;KAE3B,SAAQ;AAGV,SAAQ,GAAG,SAAgB;AACzB,SAAOC,kBAAK;GAAE;GAAM;GAAM;GAAO;KAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkNjD,MAAa,aAAa,SAASC,aACjC,eACA,MACA;CACA,MAAM,EAAE,MAAM,cAAc,OAAO,UACjC,OAAO,kBAAkB,WACrB;EAAE,MAAM;EAAe,cAAc;EAAW,OAAO;KACvD;AACN,KAAIJ,uCAAyB,SAASC,kCAAoB,MACxD,OAAM,IAAI,MACR;CAGJ,MAAM,aAAa;CACnB,MAAM,QAAQI,sCAAyB,MAAM;CAG7C,SAAS,kBACP,OAC4C;AAC5C,SACE,OAAO,UAAU,YACjB,UAAU,QACV,eAAe,SACf,MAAM,cAAc;;CAKxB,MAAM,mBAAmB,IAAIC,+BAAiB;EAC5C,MAAM;EACN,OAAO,UAAmB;AACxB,UAAO,kBAAkB,SAAS,MAAM,QAAQ;;;CAKpD,MAAM,iBAAiB,IAAIA,+BAAiB;EAC1C,MAAM;EACN,OAAO,UAAmB;AACxB,UAAO,kBAAkB,SAAS,MAAM,OAAO;;;CAInD,MAAM,iBAAiB,IAAIC,wBAA+C;EACxE;EACA,UAAU,CAACC;EACX,UAAU,CAACA;EACX,SAAS,CACP,IAAIC,2BACF,CACE;GAAE,SAASC;GAAK,OAAOC;GAAa,QAAQ;KAC5C;GAAE,SAASC;GAAU,OAAOD;GAAa,QAAQ;MAEnD,CAACE;;AAKP,QAAO,IAAIC,4BAUT;EACA;EACA;EACA,OAAO,GACJ,OAAO;EAEV,UAAU;IACPN,0BAAQ,IAAIO;IACZL,wBAAM,IAAIM;IACVJ,6BAAW,IAAII;;EAElB,eAAeR;EACf,gBAAgBE;EAChB,gBAAgBA;EAChB;EACA;EACA;;;AAKJ,WAAW,QAAQ,SAAS,MAAqB,EAC/C,OACA,QAIiC;AACjC,QAAO;EAAE;EAAO;EAAM,WAAW;;;;;;;;;;;;;;;;;;;;AAoBnC,SAAgB,mBAAmC;CACjD,MAAMO,SACJC,+DAAmC;AACrC,QAAO,OAAO,eAAeC"}