langgraph-ui-components 0.0.3 → 0.0.4

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 (502) hide show
  1. package/README.md +32 -0
  2. package/dist/index.es100.js +3157 -5
  3. package/dist/index.es100.js.map +1 -1
  4. package/dist/index.es101.js +35 -71
  5. package/dist/index.es101.js.map +1 -1
  6. package/dist/index.es102.js +5 -37
  7. package/dist/index.es102.js.map +1 -1
  8. package/dist/index.es103.js +73 -5
  9. package/dist/index.es103.js.map +1 -1
  10. package/dist/index.es104.js +39 -2
  11. package/dist/index.es104.js.map +1 -1
  12. package/dist/index.es105.js +5 -11
  13. package/dist/index.es105.js.map +1 -1
  14. package/dist/index.es106.js +2 -503
  15. package/dist/index.es106.js.map +1 -1
  16. package/dist/index.es107.js +11 -5
  17. package/dist/index.es107.js.map +1 -1
  18. package/dist/index.es108.js +503 -2
  19. package/dist/index.es108.js.map +1 -1
  20. package/dist/index.es109.js +5 -146
  21. package/dist/index.es109.js.map +1 -1
  22. package/dist/index.es110.js +2 -908
  23. package/dist/index.es110.js.map +1 -1
  24. package/dist/index.es111.js +128 -262
  25. package/dist/index.es111.js.map +1 -1
  26. package/dist/index.es112.js +907 -3
  27. package/dist/index.es112.js.map +1 -1
  28. package/dist/index.es113.js +262 -426
  29. package/dist/index.es113.js.map +1 -1
  30. package/dist/index.es114.js +3 -47
  31. package/dist/index.es114.js.map +1 -1
  32. package/dist/index.es115.js +443 -21
  33. package/dist/index.es115.js.map +1 -1
  34. package/dist/index.es116.js +42 -75
  35. package/dist/index.es116.js.map +1 -1
  36. package/dist/index.es117.js +22 -129
  37. package/dist/index.es117.js.map +1 -1
  38. package/dist/index.es118.js +74 -44
  39. package/dist/index.es118.js.map +1 -1
  40. package/dist/index.es119.js +129 -10
  41. package/dist/index.es119.js.map +1 -1
  42. package/dist/index.es12.js +7 -7
  43. package/dist/index.es12.js.map +1 -1
  44. package/dist/index.es120.js +47 -43
  45. package/dist/index.es120.js.map +1 -1
  46. package/dist/index.es121.js +9 -98
  47. package/dist/index.es121.js.map +1 -1
  48. package/dist/index.es122.js +43 -51
  49. package/dist/index.es122.js.map +1 -1
  50. package/dist/index.es123.js +96 -13
  51. package/dist/index.es123.js.map +1 -1
  52. package/dist/index.es124.js +52 -14
  53. package/dist/index.es124.js.map +1 -1
  54. package/dist/index.es125.js +13 -86
  55. package/dist/index.es125.js.map +1 -1
  56. package/dist/index.es126.js +15 -2
  57. package/dist/index.es126.js.map +1 -1
  58. package/dist/index.es127.js +87 -54
  59. package/dist/index.es127.js.map +1 -1
  60. package/dist/index.es128.js +2 -100
  61. package/dist/index.es128.js.map +1 -1
  62. package/dist/index.es129.js +51 -186
  63. package/dist/index.es129.js.map +1 -1
  64. package/dist/index.es13.js +5 -6
  65. package/dist/index.es13.js.map +1 -1
  66. package/dist/index.es130.js +87 -97
  67. package/dist/index.es130.js.map +1 -1
  68. package/dist/index.es131.js +187 -31
  69. package/dist/index.es131.js.map +1 -1
  70. package/dist/index.es132.js +110 -10
  71. package/dist/index.es132.js.map +1 -1
  72. package/dist/index.es133.js +35 -11
  73. package/dist/index.es133.js.map +1 -1
  74. package/dist/index.es134.js +10 -12
  75. package/dist/index.es134.js.map +1 -1
  76. package/dist/index.es135.js +10 -90
  77. package/dist/index.es135.js.map +1 -1
  78. package/dist/index.es136.js +11 -274
  79. package/dist/index.es136.js.map +1 -1
  80. package/dist/index.es137.js +91 -2
  81. package/dist/index.es137.js.map +1 -1
  82. package/dist/index.es138.js +261 -150
  83. package/dist/index.es138.js.map +1 -1
  84. package/dist/index.es139.js +2 -51
  85. package/dist/index.es139.js.map +1 -1
  86. package/dist/index.es140.js +158 -34
  87. package/dist/index.es140.js.map +1 -1
  88. package/dist/index.es141.js +50 -34
  89. package/dist/index.es141.js.map +1 -1
  90. package/dist/index.es142.js +32 -32
  91. package/dist/index.es142.js.map +1 -1
  92. package/dist/index.es143.js +34 -23
  93. package/dist/index.es143.js.map +1 -1
  94. package/dist/index.es144.js +32 -583
  95. package/dist/index.es144.js.map +1 -1
  96. package/dist/index.es145.js +20 -121
  97. package/dist/index.es145.js.map +1 -1
  98. package/dist/index.es146.js +585 -158
  99. package/dist/index.es146.js.map +1 -1
  100. package/dist/index.es147.js +125 -2
  101. package/dist/index.es147.js.map +1 -1
  102. package/dist/index.es148.js +164 -2
  103. package/dist/index.es148.js.map +1 -1
  104. package/dist/index.es149.js +2 -2
  105. package/dist/index.es15.js +15 -15
  106. package/dist/index.es150.js +2 -22
  107. package/dist/index.es150.js.map +1 -1
  108. package/dist/index.es151.js +2 -2
  109. package/dist/index.es152.js +21 -24
  110. package/dist/index.es152.js.map +1 -1
  111. package/dist/index.es153.js +2 -4
  112. package/dist/index.es153.js.map +1 -1
  113. package/dist/index.es154.js +25 -5
  114. package/dist/index.es154.js.map +1 -1
  115. package/dist/index.es155.js +7 -12
  116. package/dist/index.es155.js.map +1 -1
  117. package/dist/index.es156.js +5 -6
  118. package/dist/index.es156.js.map +1 -1
  119. package/dist/index.es157.js +12 -7
  120. package/dist/index.es157.js.map +1 -1
  121. package/dist/index.es158.js +6 -64
  122. package/dist/index.es158.js.map +1 -1
  123. package/dist/index.es159.js +63 -21
  124. package/dist/index.es159.js.map +1 -1
  125. package/dist/index.es16.js +2 -2
  126. package/dist/index.es160.js +21 -5
  127. package/dist/index.es160.js.map +1 -1
  128. package/dist/index.es161.js +5 -348
  129. package/dist/index.es161.js.map +1 -1
  130. package/dist/index.es162.js +346 -22
  131. package/dist/index.es162.js.map +1 -1
  132. package/dist/index.es163.js +25 -12
  133. package/dist/index.es163.js.map +1 -1
  134. package/dist/index.es164.js +11 -53
  135. package/dist/index.es164.js.map +1 -1
  136. package/dist/index.es165.js +53 -6
  137. package/dist/index.es165.js.map +1 -1
  138. package/dist/index.es166.js +7 -103
  139. package/dist/index.es166.js.map +1 -1
  140. package/dist/index.es167.js +101 -117
  141. package/dist/index.es167.js.map +1 -1
  142. package/dist/index.es168.js +110 -127
  143. package/dist/index.es168.js.map +1 -1
  144. package/dist/index.es169.js +128 -107
  145. package/dist/index.es169.js.map +1 -1
  146. package/dist/index.es17.js +2 -2
  147. package/dist/index.es170.js +115 -6
  148. package/dist/index.es170.js.map +1 -1
  149. package/dist/index.es171.js +6 -2
  150. package/dist/index.es171.js.map +1 -1
  151. package/dist/index.es172.js +3 -141
  152. package/dist/index.es172.js.map +1 -1
  153. package/dist/index.es173.js +2 -2
  154. package/dist/index.es174.js +2 -2
  155. package/dist/index.es175.js +1 -1
  156. package/dist/index.es177.js +2 -2
  157. package/dist/index.es179.js +1 -1
  158. package/dist/index.es182.js +1 -1
  159. package/dist/index.es19.js +15 -119
  160. package/dist/index.es19.js.map +1 -1
  161. package/dist/index.es190.js +142 -32
  162. package/dist/index.es190.js.map +1 -1
  163. package/dist/index.es191.js +2 -6
  164. package/dist/index.es191.js.map +1 -1
  165. package/dist/index.es192.js +31 -105
  166. package/dist/index.es192.js.map +1 -1
  167. package/dist/index.es193.js +6 -13
  168. package/dist/index.es193.js.map +1 -1
  169. package/dist/index.es194.js +105 -17
  170. package/dist/index.es194.js.map +1 -1
  171. package/dist/index.es195.js +11 -29
  172. package/dist/index.es195.js.map +1 -1
  173. package/dist/index.es196.js +17 -3
  174. package/dist/index.es196.js.map +1 -1
  175. package/dist/index.es197.js +30 -4
  176. package/dist/index.es197.js.map +1 -1
  177. package/dist/index.es198.js +4 -5
  178. package/dist/index.es198.js.map +1 -1
  179. package/dist/index.es199.js +4 -36
  180. package/dist/index.es199.js.map +1 -1
  181. package/dist/index.es2.js +2 -2
  182. package/dist/index.es2.js.map +1 -1
  183. package/dist/index.es20.js +68 -17
  184. package/dist/index.es20.js.map +1 -1
  185. package/dist/index.es200.js +5 -8
  186. package/dist/index.es200.js.map +1 -1
  187. package/dist/index.es201.js +36 -5
  188. package/dist/index.es201.js.map +1 -1
  189. package/dist/index.es202.js +5 -4
  190. package/dist/index.es202.js.map +1 -1
  191. package/dist/index.es203.js +5 -41
  192. package/dist/index.es203.js.map +1 -1
  193. package/dist/index.es204.js +4 -10
  194. package/dist/index.es204.js.map +1 -1
  195. package/dist/index.es205.js +39 -239
  196. package/dist/index.es205.js.map +1 -1
  197. package/dist/index.es206.js +10 -48
  198. package/dist/index.es206.js.map +1 -1
  199. package/dist/index.es207.js +239 -32
  200. package/dist/index.es207.js.map +1 -1
  201. package/dist/index.es208.js +49 -11
  202. package/dist/index.es208.js.map +1 -1
  203. package/dist/index.es209.js +33 -6
  204. package/dist/index.es209.js.map +1 -1
  205. package/dist/index.es21.js +36 -67
  206. package/dist/index.es21.js.map +1 -1
  207. package/dist/index.es210.js +12 -6
  208. package/dist/index.es210.js.map +1 -1
  209. package/dist/index.es211.js +7 -64
  210. package/dist/index.es211.js.map +1 -1
  211. package/dist/index.es212.js +6 -40
  212. package/dist/index.es212.js.map +1 -1
  213. package/dist/index.es213.js +63 -30
  214. package/dist/index.es213.js.map +1 -1
  215. package/dist/index.es214.js +35 -56
  216. package/dist/index.es214.js.map +1 -1
  217. package/dist/index.es215.js +32 -15
  218. package/dist/index.es215.js.map +1 -1
  219. package/dist/index.es216.js +60 -21
  220. package/dist/index.es216.js.map +1 -1
  221. package/dist/index.es217.js +15 -5
  222. package/dist/index.es217.js.map +1 -1
  223. package/dist/index.es218.js +21 -15
  224. package/dist/index.es218.js.map +1 -1
  225. package/dist/index.es219.js +4 -32
  226. package/dist/index.es219.js.map +1 -1
  227. package/dist/index.es22.js +25 -34
  228. package/dist/index.es22.js.map +1 -1
  229. package/dist/index.es220.js +16 -4
  230. package/dist/index.es220.js.map +1 -1
  231. package/dist/index.es221.js +32 -4
  232. package/dist/index.es221.js.map +1 -1
  233. package/dist/index.es222.js +5 -5
  234. package/dist/index.es222.js.map +1 -1
  235. package/dist/index.es223.js +4 -7
  236. package/dist/index.es223.js.map +1 -1
  237. package/dist/index.es224.js +4 -91
  238. package/dist/index.es224.js.map +1 -1
  239. package/dist/index.es225.js +7 -17
  240. package/dist/index.es225.js.map +1 -1
  241. package/dist/index.es226.js +90 -760
  242. package/dist/index.es226.js.map +1 -1
  243. package/dist/index.es227.js +18 -66
  244. package/dist/index.es227.js.map +1 -1
  245. package/dist/index.es228.js +749 -161
  246. package/dist/index.es228.js.map +1 -1
  247. package/dist/index.es229.js +66 -38
  248. package/dist/index.es229.js.map +1 -1
  249. package/dist/index.es23.js +144 -29
  250. package/dist/index.es23.js.map +1 -1
  251. package/dist/index.es230.js +172 -135
  252. package/dist/index.es230.js.map +1 -1
  253. package/dist/index.es231.js +37 -92
  254. package/dist/index.es231.js.map +1 -1
  255. package/dist/index.es232.js +135 -31
  256. package/dist/index.es232.js.map +1 -1
  257. package/dist/index.es233.js +92 -284
  258. package/dist/index.es233.js.map +1 -1
  259. package/dist/index.es234.js +31 -24
  260. package/dist/index.es234.js.map +1 -1
  261. package/dist/index.es235.js +284 -23
  262. package/dist/index.es235.js.map +1 -1
  263. package/dist/index.es236.js +24 -13
  264. package/dist/index.es236.js.map +1 -1
  265. package/dist/index.es237.js +22 -13
  266. package/dist/index.es237.js.map +1 -1
  267. package/dist/index.es238.js +13 -24
  268. package/dist/index.es238.js.map +1 -1
  269. package/dist/index.es239.js +12 -43
  270. package/dist/index.es239.js.map +1 -1
  271. package/dist/index.es24.js +291 -133
  272. package/dist/index.es24.js.map +1 -1
  273. package/dist/index.es240.js +24 -10
  274. package/dist/index.es240.js.map +1 -1
  275. package/dist/index.es241.js +45 -11
  276. package/dist/index.es241.js.map +1 -1
  277. package/dist/index.es242.js +10 -10
  278. package/dist/index.es242.js.map +1 -1
  279. package/dist/index.es243.js +11 -14
  280. package/dist/index.es243.js.map +1 -1
  281. package/dist/index.es244.js +10 -10
  282. package/dist/index.es244.js.map +1 -1
  283. package/dist/index.es245.js +14 -11
  284. package/dist/index.es245.js.map +1 -1
  285. package/dist/index.es246.js +11 -11
  286. package/dist/index.es246.js.map +1 -1
  287. package/dist/index.es247.js +11 -15
  288. package/dist/index.es247.js.map +1 -1
  289. package/dist/index.es248.js +11 -11
  290. package/dist/index.es248.js.map +1 -1
  291. package/dist/index.es249.js +15 -11
  292. package/dist/index.es249.js.map +1 -1
  293. package/dist/index.es25.js +116 -96
  294. package/dist/index.es25.js.map +1 -1
  295. package/dist/index.es250.js +11 -11
  296. package/dist/index.es250.js.map +1 -1
  297. package/dist/index.es251.js +11 -11
  298. package/dist/index.es251.js.map +1 -1
  299. package/dist/index.es252.js +10 -10
  300. package/dist/index.es252.js.map +1 -1
  301. package/dist/index.es253.js +10 -10
  302. package/dist/index.es253.js.map +1 -1
  303. package/dist/index.es254.js +10 -10
  304. package/dist/index.es254.js.map +1 -1
  305. package/dist/index.es255.js +10 -10
  306. package/dist/index.es255.js.map +1 -1
  307. package/dist/index.es256.js +11 -56
  308. package/dist/index.es256.js.map +1 -1
  309. package/dist/index.es257.js +11 -49
  310. package/dist/index.es257.js.map +1 -1
  311. package/dist/index.es258.js +51 -114
  312. package/dist/index.es258.js.map +1 -1
  313. package/dist/index.es259.js +43 -378
  314. package/dist/index.es259.js.map +1 -1
  315. package/dist/index.es26.js +5 -70
  316. package/dist/index.es26.js.map +1 -1
  317. package/dist/index.es260.js +117 -16
  318. package/dist/index.es260.js.map +1 -1
  319. package/dist/index.es261.js +384 -11
  320. package/dist/index.es261.js.map +1 -1
  321. package/dist/index.es262.js +13 -26
  322. package/dist/index.es262.js.map +1 -1
  323. package/dist/index.es263.js +10 -30
  324. package/dist/index.es263.js.map +1 -1
  325. package/dist/index.es264.js +25 -56
  326. package/dist/index.es264.js.map +1 -1
  327. package/dist/index.es265.js +25 -11
  328. package/dist/index.es265.js.map +1 -1
  329. package/dist/index.es266.js +49 -64
  330. package/dist/index.es266.js.map +1 -1
  331. package/dist/index.es267.js +17 -11
  332. package/dist/index.es267.js.map +1 -1
  333. package/dist/index.es268.js +77 -11
  334. package/dist/index.es268.js.map +1 -1
  335. package/dist/index.es269.js +11 -15
  336. package/dist/index.es269.js.map +1 -1
  337. package/dist/index.es27.js +91 -168
  338. package/dist/index.es27.js.map +1 -1
  339. package/dist/index.es270.js +11 -52
  340. package/dist/index.es270.js.map +1 -1
  341. package/dist/index.es271.js +13 -164
  342. package/dist/index.es271.js.map +1 -1
  343. package/dist/index.es272.js +53 -2
  344. package/dist/index.es272.js.map +1 -1
  345. package/dist/index.es273.js +166 -10
  346. package/dist/index.es273.js.map +1 -1
  347. package/dist/index.es274.js +2 -20
  348. package/dist/index.es274.js.map +1 -1
  349. package/dist/index.es275.js +10 -38
  350. package/dist/index.es275.js.map +1 -1
  351. package/dist/index.es276.js +23 -0
  352. package/dist/index.es276.js.map +1 -0
  353. package/dist/index.es277.js +42 -0
  354. package/dist/index.es277.js.map +1 -0
  355. package/dist/index.es28.js +68 -24
  356. package/dist/index.es28.js.map +1 -1
  357. package/dist/index.es29.js +178 -12
  358. package/dist/index.es29.js.map +1 -1
  359. package/dist/index.es30.js +23 -437
  360. package/dist/index.es30.js.map +1 -1
  361. package/dist/index.es31.js +13 -15
  362. package/dist/index.es31.js.map +1 -1
  363. package/dist/index.es32.js +429 -107
  364. package/dist/index.es32.js.map +1 -1
  365. package/dist/index.es33.js +13 -70
  366. package/dist/index.es33.js.map +1 -1
  367. package/dist/index.es34.js +119 -19
  368. package/dist/index.es34.js.map +1 -1
  369. package/dist/index.es35.js +66 -256
  370. package/dist/index.es35.js.map +1 -1
  371. package/dist/index.es36.js +17 -42
  372. package/dist/index.es36.js.map +1 -1
  373. package/dist/index.es37.js +239 -193
  374. package/dist/index.es37.js.map +1 -1
  375. package/dist/index.es38.js +17 -41
  376. package/dist/index.es38.js.map +1 -1
  377. package/dist/index.es39.js +193 -120
  378. package/dist/index.es39.js.map +1 -1
  379. package/dist/index.es40.js +60 -17
  380. package/dist/index.es40.js.map +1 -1
  381. package/dist/index.es41.js +123 -211
  382. package/dist/index.es41.js.map +1 -1
  383. package/dist/index.es42.js +22 -7
  384. package/dist/index.es42.js.map +1 -1
  385. package/dist/index.es43.js +214 -1176
  386. package/dist/index.es43.js.map +1 -1
  387. package/dist/index.es44.js +10 -8
  388. package/dist/index.es44.js.map +1 -1
  389. package/dist/index.es45.js +1182 -137
  390. package/dist/index.es45.js.map +1 -1
  391. package/dist/index.es46.js +8 -8
  392. package/dist/index.es46.js.map +1 -1
  393. package/dist/index.es47.js +138 -84
  394. package/dist/index.es47.js.map +1 -1
  395. package/dist/index.es48.js +8 -4
  396. package/dist/index.es48.js.map +1 -1
  397. package/dist/index.es49.js +91 -33
  398. package/dist/index.es49.js.map +1 -1
  399. package/dist/index.es50.js +3 -71
  400. package/dist/index.es50.js.map +1 -1
  401. package/dist/index.es51.js +34 -36
  402. package/dist/index.es51.js.map +1 -1
  403. package/dist/index.es52.js +61 -295
  404. package/dist/index.es52.js.map +1 -1
  405. package/dist/index.es53.js +38 -9
  406. package/dist/index.es53.js.map +1 -1
  407. package/dist/index.es54.js +296 -81
  408. package/dist/index.es54.js.map +1 -1
  409. package/dist/index.es55.js +9 -8
  410. package/dist/index.es55.js.map +1 -1
  411. package/dist/index.es56.js +89 -13
  412. package/dist/index.es56.js.map +1 -1
  413. package/dist/index.es57.js +6 -141
  414. package/dist/index.es57.js.map +1 -1
  415. package/dist/index.es58.js +12 -297
  416. package/dist/index.es58.js.map +1 -1
  417. package/dist/index.es59.js +137 -60
  418. package/dist/index.es59.js.map +1 -1
  419. package/dist/index.es6.js +21 -5
  420. package/dist/index.es6.js.map +1 -1
  421. package/dist/index.es60.js +247 -160
  422. package/dist/index.es60.js.map +1 -1
  423. package/dist/index.es61.js +63 -31
  424. package/dist/index.es61.js.map +1 -1
  425. package/dist/index.es62.js +212 -8
  426. package/dist/index.es62.js.map +1 -1
  427. package/dist/index.es63.js +32 -10
  428. package/dist/index.es63.js.map +1 -1
  429. package/dist/index.es64.js +8 -186
  430. package/dist/index.es64.js.map +1 -1
  431. package/dist/index.es65.js +11 -23
  432. package/dist/index.es65.js.map +1 -1
  433. package/dist/index.es66.js +183 -1396
  434. package/dist/index.es66.js.map +1 -1
  435. package/dist/index.es67.js +24 -9
  436. package/dist/index.es67.js.map +1 -1
  437. package/dist/index.es68.js +1400 -8
  438. package/dist/index.es68.js.map +1 -1
  439. package/dist/index.es69.js +9 -6
  440. package/dist/index.es69.js.map +1 -1
  441. package/dist/index.es70.js +8 -163
  442. package/dist/index.es70.js.map +1 -1
  443. package/dist/index.es71.js +6 -672
  444. package/dist/index.es71.js.map +1 -1
  445. package/dist/index.es72.js +161 -10
  446. package/dist/index.es72.js.map +1 -1
  447. package/dist/index.es73.js +671 -39
  448. package/dist/index.es73.js.map +1 -1
  449. package/dist/index.es74.js +10 -32
  450. package/dist/index.es74.js.map +1 -1
  451. package/dist/index.es75.js +31 -223
  452. package/dist/index.es75.js.map +1 -1
  453. package/dist/index.es76.js +33 -29
  454. package/dist/index.es76.js.map +1 -1
  455. package/dist/index.es77.js +193 -36
  456. package/dist/index.es77.js.map +1 -1
  457. package/dist/index.es78.js +26 -72
  458. package/dist/index.es78.js.map +1 -1
  459. package/dist/index.es79.js +70 -47
  460. package/dist/index.es79.js.map +1 -1
  461. package/dist/index.es80.js +72 -26
  462. package/dist/index.es80.js.map +1 -1
  463. package/dist/index.es81.js +37 -28
  464. package/dist/index.es81.js.map +1 -1
  465. package/dist/index.es82.js +28 -55
  466. package/dist/index.es82.js.map +1 -1
  467. package/dist/index.es83.js +43 -13
  468. package/dist/index.es83.js.map +1 -1
  469. package/dist/index.es84.js +52 -132
  470. package/dist/index.es84.js.map +1 -1
  471. package/dist/index.es85.js +13 -21
  472. package/dist/index.es85.js.map +1 -1
  473. package/dist/index.es86.js +124 -169
  474. package/dist/index.es86.js.map +1 -1
  475. package/dist/index.es87.js +19 -239
  476. package/dist/index.es87.js.map +1 -1
  477. package/dist/index.es88.js +165 -338
  478. package/dist/index.es88.js.map +1 -1
  479. package/dist/index.es89.js +231 -127
  480. package/dist/index.es89.js.map +1 -1
  481. package/dist/index.es90.js +348 -63
  482. package/dist/index.es90.js.map +1 -1
  483. package/dist/index.es91.js +133 -33
  484. package/dist/index.es91.js.map +1 -1
  485. package/dist/index.es92.js +67 -34
  486. package/dist/index.es92.js.map +1 -1
  487. package/dist/index.es93.js +33 -162
  488. package/dist/index.es93.js.map +1 -1
  489. package/dist/index.es94.js +34 -200
  490. package/dist/index.es94.js.map +1 -1
  491. package/dist/index.es95.js +165 -13
  492. package/dist/index.es95.js.map +1 -1
  493. package/dist/index.es96.js +198 -25
  494. package/dist/index.es96.js.map +1 -1
  495. package/dist/index.es97.js +13 -33
  496. package/dist/index.es97.js.map +1 -1
  497. package/dist/index.es98.js +24 -3151
  498. package/dist/index.es98.js.map +1 -1
  499. package/dist/index.es99.js +30 -33
  500. package/dist/index.es99.js.map +1 -1
  501. package/dist/styles.css +1 -1
  502. package/package.json +5 -1
@@ -1,75 +1,18 @@
1
- import { isNetworkError } from "./index.es34.js";
2
- var MaxReconnectAttemptsError = class extends Error {
3
- constructor(maxAttempts, cause) {
4
- super(`Exceeded maximum SSE reconnection attempts (${maxAttempts})`);
5
- this.name = "MaxReconnectAttemptsError";
6
- this.cause = cause;
7
- }
8
- };
9
- async function* streamWithRetry(makeRequest, options = {}) {
10
- const maxRetries = options.maxRetries ?? 5;
11
- let attempt = 0;
12
- let lastEventId;
13
- let reconnectPath;
14
- while (true) {
15
- let shouldRetry = false;
16
- let lastError;
17
- let reader;
18
- try {
19
- if (options.signal?.aborted) return;
20
- const { response, stream } = await makeRequest(reconnectPath ? {
21
- lastEventId,
22
- reconnectPath
23
- } : void 0);
24
- const locationHeader = response.headers.get("location");
25
- if (locationHeader) reconnectPath = locationHeader;
26
- const contentType = response.headers.get("content-type")?.split(";")[0];
27
- if (contentType && !contentType.includes("text/event-stream")) throw new Error(`Expected response header Content-Type to contain 'text/event-stream', got '${contentType}'`);
28
- reader = stream.getReader();
29
- try {
30
- while (true) {
31
- if (options.signal?.aborted) {
32
- await reader.cancel();
33
- return;
34
- }
35
- const { done, value } = await reader.read();
36
- if (done) break;
37
- if (value.id) lastEventId = value.id;
38
- yield value;
39
- }
40
- break;
41
- } catch (error) {
42
- if (reconnectPath && !options.signal?.aborted) shouldRetry = true;
43
- else throw error;
44
- } finally {
45
- if (reader) try {
46
- reader.releaseLock();
47
- } catch {
48
- }
49
- }
50
- } catch (error) {
51
- lastError = error;
52
- if (isNetworkError(error) && reconnectPath && !options.signal?.aborted) shouldRetry = true;
53
- else throw error;
54
- }
55
- if (shouldRetry) {
56
- attempt += 1;
57
- if (attempt > maxRetries) throw new MaxReconnectAttemptsError(maxRetries, lastError);
58
- options.onReconnect?.({
59
- attempt,
60
- lastEventId,
61
- cause: lastError
62
- });
63
- const delay = Math.min(1e3 * 2 ** (attempt - 1), 5e3) + Math.random() * 1e3;
64
- await new Promise((resolve) => {
65
- setTimeout(resolve, delay);
66
- });
67
- continue;
1
+ import { jsx } from "react/jsx-runtime";
2
+ import ReactMarkdown from "react-markdown";
3
+ import remarkGfm from "remark-gfm";
4
+ import rehypeHighlight from "rehype-highlight";
5
+ function AgentMarkdown({ content }) {
6
+ return /* @__PURE__ */ jsx(
7
+ ReactMarkdown,
8
+ {
9
+ remarkPlugins: [remarkGfm],
10
+ rehypePlugins: [rehypeHighlight],
11
+ children: content
68
12
  }
69
- break;
70
- }
13
+ );
71
14
  }
72
15
  export {
73
- streamWithRetry
16
+ AgentMarkdown
74
17
  };
75
18
  //# sourceMappingURL=index.es33.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es33.js","sources":["../node_modules/.pnpm/@langchain+langgraph-sdk@1.5.3_@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5___react-d_6e8116ad15c37793c6138fe0d58aa04e/node_modules/@langchain/langgraph-sdk/dist/utils/stream.js"],"sourcesContent":["import { isNetworkError } from \"./error.js\";\n\n//#region src/utils/stream.ts\n/**\n* Error thrown when maximum reconnection attempts are exceeded.\n*/\nvar MaxReconnectAttemptsError = class extends Error {\n\tconstructor(maxAttempts, cause) {\n\t\tsuper(`Exceeded maximum SSE reconnection attempts (${maxAttempts})`);\n\t\tthis.name = \"MaxReconnectAttemptsError\";\n\t\tthis.cause = cause;\n\t}\n};\n/**\n* Stream with automatic retry logic for SSE connections.\n* Implements reconnection behavior similar to the Python SDK.\n*\n* @param makeRequest Function to make requests. When `params` is undefined/empty, it's the initial request.\n* When `params.reconnectPath` is provided, it's a reconnection request.\n* @param options Configuration options\n* @returns AsyncGenerator yielding stream events\n*/\nasync function* streamWithRetry(makeRequest, options = {}) {\n\tconst maxRetries = options.maxRetries ?? 5;\n\tlet attempt = 0;\n\tlet lastEventId;\n\tlet reconnectPath;\n\twhile (true) {\n\t\tlet shouldRetry = false;\n\t\tlet lastError;\n\t\tlet reader;\n\t\ttry {\n\t\t\tif (options.signal?.aborted) return;\n\t\t\tconst { response, stream } = await makeRequest(reconnectPath ? {\n\t\t\t\tlastEventId,\n\t\t\t\treconnectPath\n\t\t\t} : void 0);\n\t\t\tconst locationHeader = response.headers.get(\"location\");\n\t\t\tif (locationHeader) reconnectPath = locationHeader;\n\t\t\tconst contentType = response.headers.get(\"content-type\")?.split(\";\")[0];\n\t\t\tif (contentType && !contentType.includes(\"text/event-stream\")) throw new Error(`Expected response header Content-Type to contain 'text/event-stream', got '${contentType}'`);\n\t\t\treader = stream.getReader();\n\t\t\ttry {\n\t\t\t\twhile (true) {\n\t\t\t\t\tif (options.signal?.aborted) {\n\t\t\t\t\t\tawait reader.cancel();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\t\tif (done) break;\n\t\t\t\t\tif (value.id) lastEventId = value.id;\n\t\t\t\t\tyield value;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t} catch (error) {\n\t\t\t\tif (reconnectPath && !options.signal?.aborted) shouldRetry = true;\n\t\t\t\telse throw error;\n\t\t\t} finally {\n\t\t\t\tif (reader) try {\n\t\t\t\t\treader.releaseLock();\n\t\t\t\t} catch {}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tlastError = error;\n\t\t\tif (isNetworkError(error) && reconnectPath && !options.signal?.aborted) shouldRetry = true;\n\t\t\telse throw error;\n\t\t}\n\t\tif (shouldRetry) {\n\t\t\tattempt += 1;\n\t\t\tif (attempt > maxRetries) throw new MaxReconnectAttemptsError(maxRetries, lastError);\n\t\t\toptions.onReconnect?.({\n\t\t\t\tattempt,\n\t\t\t\tlastEventId,\n\t\t\t\tcause: lastError\n\t\t\t});\n\t\t\tconst delay = Math.min(1e3 * 2 ** (attempt - 1), 5e3) + Math.random() * 1e3;\n\t\t\tawait new Promise((resolve) => {\n\t\t\t\tsetTimeout(resolve, delay);\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tbreak;\n\t}\n}\nvar IterableReadableStream = class IterableReadableStream extends ReadableStream {\n\treader;\n\tensureReader() {\n\t\tif (!this.reader) this.reader = this.getReader();\n\t}\n\tasync next() {\n\t\tthis.ensureReader();\n\t\ttry {\n\t\t\tconst result = await this.reader.read();\n\t\t\tif (result.done) {\n\t\t\t\tthis.reader.releaseLock();\n\t\t\t\treturn {\n\t\t\t\t\tdone: true,\n\t\t\t\t\tvalue: void 0\n\t\t\t\t};\n\t\t\t} else return {\n\t\t\t\tdone: false,\n\t\t\t\tvalue: result.value\n\t\t\t};\n\t\t} catch (e) {\n\t\t\tthis.reader.releaseLock();\n\t\t\tthrow e;\n\t\t}\n\t}\n\tasync return() {\n\t\tthis.ensureReader();\n\t\tif (this.locked) {\n\t\t\tconst cancelPromise = this.reader.cancel();\n\t\t\tthis.reader.releaseLock();\n\t\t\tawait cancelPromise;\n\t\t}\n\t\treturn {\n\t\t\tdone: true,\n\t\t\tvalue: void 0\n\t\t};\n\t}\n\tasync throw(e) {\n\t\tthis.ensureReader();\n\t\tif (this.locked) {\n\t\t\tconst cancelPromise = this.reader.cancel();\n\t\t\tthis.reader.releaseLock();\n\t\t\tawait cancelPromise;\n\t\t}\n\t\tthrow e;\n\t}\n\tasync [Symbol.asyncDispose]() {\n\t\tawait this.return();\n\t}\n\t[Symbol.asyncIterator]() {\n\t\treturn this;\n\t}\n\tstatic fromReadableStream(stream) {\n\t\tconst reader = stream.getReader();\n\t\treturn new IterableReadableStream({\n\t\t\tstart(controller) {\n\t\t\t\treturn pump();\n\t\t\t\tfunction pump() {\n\t\t\t\t\treturn reader.read().then(({ done, value }) => {\n\t\t\t\t\t\tif (done) {\n\t\t\t\t\t\t\tcontroller.close();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontroller.enqueue(value);\n\t\t\t\t\t\treturn pump();\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t},\n\t\t\tcancel() {\n\t\t\t\treader.releaseLock();\n\t\t\t}\n\t\t});\n\t}\n\tstatic fromAsyncGenerator(generator) {\n\t\treturn new IterableReadableStream({\n\t\t\tasync pull(controller) {\n\t\t\t\tconst { value, done } = await generator.next();\n\t\t\t\tif (done) controller.close();\n\t\t\t\tcontroller.enqueue(value);\n\t\t\t},\n\t\t\tasync cancel(reason) {\n\t\t\t\tawait generator.return(reason);\n\t\t\t}\n\t\t});\n\t}\n};\n\n//#endregion\nexport { IterableReadableStream, streamWithRetry };\n//# sourceMappingURL=stream.js.map"],"names":[],"mappings":";AAMA,IAAI,4BAA4B,cAAc,MAAM;AAAA,EACnD,YAAY,aAAa,OAAO;AAC/B,UAAM,+CAA+C,WAAW,GAAG;AACnE,SAAK,OAAO;AACZ,SAAK,QAAQ;AAAA,EACd;AACD;AAUA,gBAAgB,gBAAgB,aAAa,UAAU,IAAI;AAC1D,QAAM,aAAa,QAAQ,cAAc;AACzC,MAAI,UAAU;AACd,MAAI;AACJ,MAAI;AACJ,SAAO,MAAM;AACZ,QAAI,cAAc;AAClB,QAAI;AACJ,QAAI;AACJ,QAAI;AACH,UAAI,QAAQ,QAAQ,QAAS;AAC7B,YAAM,EAAE,UAAU,OAAM,IAAK,MAAM,YAAY,gBAAgB;AAAA,QAC9D;AAAA,QACA;AAAA,MACJ,IAAO,MAAM;AACV,YAAM,iBAAiB,SAAS,QAAQ,IAAI,UAAU;AACtD,UAAI,eAAgB,iBAAgB;AACpC,YAAM,cAAc,SAAS,QAAQ,IAAI,cAAc,GAAG,MAAM,GAAG,EAAE,CAAC;AACtE,UAAI,eAAe,CAAC,YAAY,SAAS,mBAAmB,EAAG,OAAM,IAAI,MAAM,8EAA8E,WAAW,GAAG;AAC3K,eAAS,OAAO,UAAS;AACzB,UAAI;AACH,eAAO,MAAM;AACZ,cAAI,QAAQ,QAAQ,SAAS;AAC5B,kBAAM,OAAO,OAAM;AACnB;AAAA,UACD;AACA,gBAAM,EAAE,MAAM,MAAK,IAAK,MAAM,OAAO,KAAI;AACzC,cAAI,KAAM;AACV,cAAI,MAAM,GAAI,eAAc,MAAM;AAClC,gBAAM;AAAA,QACP;AACA;AAAA,MACD,SAAS,OAAO;AACf,YAAI,iBAAiB,CAAC,QAAQ,QAAQ,QAAS,eAAc;AAAA,YACxD,OAAM;AAAA,MACZ,UAAC;AACA,YAAI,OAAQ,KAAI;AACf,iBAAO,YAAW;AAAA,QACnB,QAAQ;AAAA,QAAC;AAAA,MACV;AAAA,IACD,SAAS,OAAO;AACf,kBAAY;AACZ,UAAI,eAAe,KAAK,KAAK,iBAAiB,CAAC,QAAQ,QAAQ,QAAS,eAAc;AAAA,UACjF,OAAM;AAAA,IACZ;AACA,QAAI,aAAa;AAChB,iBAAW;AACX,UAAI,UAAU,WAAY,OAAM,IAAI,0BAA0B,YAAY,SAAS;AACnF,cAAQ,cAAc;AAAA,QACrB;AAAA,QACA;AAAA,QACA,OAAO;AAAA,MACX,CAAI;AACD,YAAM,QAAQ,KAAK,IAAI,MAAM,MAAM,UAAU,IAAI,GAAG,IAAI,KAAK,OAAM,IAAK;AACxE,YAAM,IAAI,QAAQ,CAAC,YAAY;AAC9B,mBAAW,SAAS,KAAK;AAAA,MAC1B,CAAC;AACD;AAAA,IACD;AACA;AAAA,EACD;AACD;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es33.js","sources":["../src/components/messages/AgentMarkdown.tsx"],"sourcesContent":["import ReactMarkdown from \"react-markdown\";\nimport remarkGfm from \"remark-gfm\";\nimport rehypeHighlight from \"rehype-highlight\";\n// import \"highlight.js/styles/github.css\";\n\nexport function AgentMarkdown({ content }: { content: string }) {\n return (\n <ReactMarkdown\n remarkPlugins={[remarkGfm]}\n rehypePlugins={[rehypeHighlight]}\n >\n {content}\n </ReactMarkdown>\n );\n}\n"],"names":[],"mappings":";;;;AAKO,SAAS,cAAc,EAAE,WAAgC;AAC9D,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,eAAe,CAAC,SAAS;AAAA,MACzB,eAAe,CAAC,eAAe;AAAA,MAE9B,UAAA;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -1,22 +1,122 @@
1
- const isError = (error) => {
2
- if ("isError" in Error && typeof Error.isError === "function") return Error.isError(error);
3
- const stringTag = Object.prototype.toString.call(error);
4
- return stringTag === "[object Error]" || stringTag === "[object DOMException]" || stringTag === "[object DOMError]" || stringTag === "[object Exception]";
5
- };
6
- const getCauseError = (error) => {
7
- const { cause } = error;
8
- if (typeof cause !== "object" || cause == null) return null;
9
- if (!isError(cause)) return null;
10
- return cause;
11
- };
12
- const isNetworkError = (error) => {
13
- if (!isError(error)) return false;
14
- if (error.name !== "TypeError" || typeof error.message !== "string") return false;
15
- const msg = error.message.toLowerCase();
16
- const causeMsg = getCauseError(error)?.message?.toLowerCase() ?? "";
17
- return msg.includes("fetch") || msg.includes("network") || msg.includes("connection") || msg.includes("error sending request") || msg.includes("load failed") || msg.includes("terminated") || causeMsg.includes("other side closed") || causeMsg.includes("socket");
18
- };
1
+ const CR = "\r".charCodeAt(0);
2
+ const LF = "\n".charCodeAt(0);
3
+ const NULL = "\0".charCodeAt(0);
4
+ const COLON = ":".charCodeAt(0);
5
+ const SPACE = " ".charCodeAt(0);
6
+ const TRAILING_NEWLINE = [CR, LF];
7
+ function BytesLineDecoder() {
8
+ let buffer = [];
9
+ let trailingCr = false;
10
+ return new TransformStream({
11
+ start() {
12
+ buffer = [];
13
+ trailingCr = false;
14
+ },
15
+ transform(chunk, controller) {
16
+ let text = chunk;
17
+ if (trailingCr) {
18
+ text = joinArrays([[CR], text]);
19
+ trailingCr = false;
20
+ }
21
+ if (text.length > 0 && text.at(-1) === CR) {
22
+ trailingCr = true;
23
+ text = text.subarray(0, -1);
24
+ }
25
+ if (!text.length) return;
26
+ const trailingNewline = TRAILING_NEWLINE.includes(text.at(-1));
27
+ const lastIdx = text.length - 1;
28
+ const { lines } = text.reduce((acc, cur, idx) => {
29
+ if (acc.from > idx) return acc;
30
+ if (cur === CR || cur === LF) {
31
+ acc.lines.push(text.subarray(acc.from, idx));
32
+ if (cur === CR && text[idx + 1] === LF) acc.from = idx + 2;
33
+ else acc.from = idx + 1;
34
+ }
35
+ if (idx === lastIdx && acc.from <= lastIdx) acc.lines.push(text.subarray(acc.from));
36
+ return acc;
37
+ }, {
38
+ lines: [],
39
+ from: 0
40
+ });
41
+ if (lines.length === 1 && !trailingNewline) {
42
+ buffer.push(lines[0]);
43
+ return;
44
+ }
45
+ if (buffer.length) {
46
+ buffer.push(lines[0]);
47
+ lines[0] = joinArrays(buffer);
48
+ buffer = [];
49
+ }
50
+ if (!trailingNewline) {
51
+ if (lines.length) buffer = [lines.pop()];
52
+ }
53
+ for (const line of lines) controller.enqueue(line);
54
+ },
55
+ flush(controller) {
56
+ if (buffer.length) controller.enqueue(joinArrays(buffer));
57
+ }
58
+ });
59
+ }
60
+ function SSEDecoder() {
61
+ let event = "";
62
+ let data = [];
63
+ let lastEventId = "";
64
+ let retry = null;
65
+ const decoder = new TextDecoder();
66
+ return new TransformStream({
67
+ transform(chunk, controller) {
68
+ if (!chunk.length) {
69
+ if (!event && !data.length && !lastEventId && retry == null) return;
70
+ const sse = {
71
+ id: lastEventId || void 0,
72
+ event,
73
+ data: data.length ? decodeArraysToJson(decoder, data) : null
74
+ };
75
+ event = "";
76
+ data = [];
77
+ retry = null;
78
+ controller.enqueue(sse);
79
+ return;
80
+ }
81
+ if (chunk[0] === COLON) return;
82
+ const sepIdx = chunk.indexOf(COLON);
83
+ if (sepIdx === -1) return;
84
+ const fieldName = decoder.decode(chunk.subarray(0, sepIdx));
85
+ let value = chunk.subarray(sepIdx + 1);
86
+ if (value[0] === SPACE) value = value.subarray(1);
87
+ if (fieldName === "event") event = decoder.decode(value);
88
+ else if (fieldName === "data") data.push(value);
89
+ else if (fieldName === "id") {
90
+ if (value.indexOf(NULL) === -1) lastEventId = decoder.decode(value);
91
+ } else if (fieldName === "retry") {
92
+ const retryNum = Number.parseInt(decoder.decode(value), 10);
93
+ if (!Number.isNaN(retryNum)) retry = retryNum;
94
+ }
95
+ },
96
+ flush(controller) {
97
+ if (event) controller.enqueue({
98
+ id: lastEventId || void 0,
99
+ event,
100
+ data: data.length ? decodeArraysToJson(decoder, data) : null
101
+ });
102
+ }
103
+ });
104
+ }
105
+ function joinArrays(data) {
106
+ const totalLength = data.reduce((acc, curr) => acc + curr.length, 0);
107
+ const merged = new Uint8Array(totalLength);
108
+ let offset = 0;
109
+ for (const c of data) {
110
+ merged.set(c, offset);
111
+ offset += c.length;
112
+ }
113
+ return merged;
114
+ }
115
+ function decodeArraysToJson(decoder, data) {
116
+ return JSON.parse(decoder.decode(joinArrays(data)));
117
+ }
19
118
  export {
20
- isNetworkError
119
+ BytesLineDecoder,
120
+ SSEDecoder
21
121
  };
22
122
  //# sourceMappingURL=index.es34.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es34.js","sources":["../node_modules/.pnpm/@langchain+langgraph-sdk@1.5.3_@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5___react-d_6e8116ad15c37793c6138fe0d58aa04e/node_modules/@langchain/langgraph-sdk/dist/utils/error.js"],"sourcesContent":["//#region src/utils/error.ts\nconst isError = (error) => {\n\tif (\"isError\" in Error && typeof Error.isError === \"function\") return Error.isError(error);\n\tconst stringTag = Object.prototype.toString.call(error);\n\treturn stringTag === \"[object Error]\" || stringTag === \"[object DOMException]\" || stringTag === \"[object DOMError]\" || stringTag === \"[object Exception]\";\n};\nconst getCauseError = (error) => {\n\tconst { cause } = error;\n\tif (typeof cause !== \"object\" || cause == null) return null;\n\tif (!isError(cause)) return null;\n\treturn cause;\n};\nconst isNetworkError = (error) => {\n\tif (!isError(error)) return false;\n\tif (error.name !== \"TypeError\" || typeof error.message !== \"string\") return false;\n\tconst msg = error.message.toLowerCase();\n\tconst causeMsg = getCauseError(error)?.message?.toLowerCase() ?? \"\";\n\treturn msg.includes(\"fetch\") || msg.includes(\"network\") || msg.includes(\"connection\") || msg.includes(\"error sending request\") || msg.includes(\"load failed\") || msg.includes(\"terminated\") || causeMsg.includes(\"other side closed\") || causeMsg.includes(\"socket\");\n};\n\n//#endregion\nexport { isNetworkError };\n//# sourceMappingURL=error.js.map"],"names":[],"mappings":"AACA,MAAM,UAAU,CAAC,UAAU;AAC1B,MAAI,aAAa,SAAS,OAAO,MAAM,YAAY,WAAY,QAAO,MAAM,QAAQ,KAAK;AACzF,QAAM,YAAY,OAAO,UAAU,SAAS,KAAK,KAAK;AACtD,SAAO,cAAc,oBAAoB,cAAc,2BAA2B,cAAc,uBAAuB,cAAc;AACtI;AACA,MAAM,gBAAgB,CAAC,UAAU;AAChC,QAAM,EAAE,MAAK,IAAK;AAClB,MAAI,OAAO,UAAU,YAAY,SAAS,KAAM,QAAO;AACvD,MAAI,CAAC,QAAQ,KAAK,EAAG,QAAO;AAC5B,SAAO;AACR;AACK,MAAC,iBAAiB,CAAC,UAAU;AACjC,MAAI,CAAC,QAAQ,KAAK,EAAG,QAAO;AAC5B,MAAI,MAAM,SAAS,eAAe,OAAO,MAAM,YAAY,SAAU,QAAO;AAC5E,QAAM,MAAM,MAAM,QAAQ,YAAW;AACrC,QAAM,WAAW,cAAc,KAAK,GAAG,SAAS,YAAW,KAAM;AACjE,SAAO,IAAI,SAAS,OAAO,KAAK,IAAI,SAAS,SAAS,KAAK,IAAI,SAAS,YAAY,KAAK,IAAI,SAAS,uBAAuB,KAAK,IAAI,SAAS,aAAa,KAAK,IAAI,SAAS,YAAY,KAAK,SAAS,SAAS,mBAAmB,KAAK,SAAS,SAAS,QAAQ;AACpQ;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es34.js","sources":["../node_modules/.pnpm/@langchain+langgraph-sdk@1.5.3_@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5___react-d_6e8116ad15c37793c6138fe0d58aa04e/node_modules/@langchain/langgraph-sdk/dist/utils/sse.js"],"sourcesContent":["//#region src/utils/sse.ts\nconst CR = \"\\r\".charCodeAt(0);\nconst LF = \"\\n\".charCodeAt(0);\nconst NULL = \"\\0\".charCodeAt(0);\nconst COLON = \":\".charCodeAt(0);\nconst SPACE = \" \".charCodeAt(0);\nconst TRAILING_NEWLINE = [CR, LF];\nfunction BytesLineDecoder() {\n\tlet buffer = [];\n\tlet trailingCr = false;\n\treturn new TransformStream({\n\t\tstart() {\n\t\t\tbuffer = [];\n\t\t\ttrailingCr = false;\n\t\t},\n\t\ttransform(chunk, controller) {\n\t\t\tlet text = chunk;\n\t\t\tif (trailingCr) {\n\t\t\t\ttext = joinArrays([[CR], text]);\n\t\t\t\ttrailingCr = false;\n\t\t\t}\n\t\t\tif (text.length > 0 && text.at(-1) === CR) {\n\t\t\t\ttrailingCr = true;\n\t\t\t\ttext = text.subarray(0, -1);\n\t\t\t}\n\t\t\tif (!text.length) return;\n\t\t\tconst trailingNewline = TRAILING_NEWLINE.includes(text.at(-1));\n\t\t\tconst lastIdx = text.length - 1;\n\t\t\tconst { lines } = text.reduce((acc, cur, idx) => {\n\t\t\t\tif (acc.from > idx) return acc;\n\t\t\t\tif (cur === CR || cur === LF) {\n\t\t\t\t\tacc.lines.push(text.subarray(acc.from, idx));\n\t\t\t\t\tif (cur === CR && text[idx + 1] === LF) acc.from = idx + 2;\n\t\t\t\t\telse acc.from = idx + 1;\n\t\t\t\t}\n\t\t\t\tif (idx === lastIdx && acc.from <= lastIdx) acc.lines.push(text.subarray(acc.from));\n\t\t\t\treturn acc;\n\t\t\t}, {\n\t\t\t\tlines: [],\n\t\t\t\tfrom: 0\n\t\t\t});\n\t\t\tif (lines.length === 1 && !trailingNewline) {\n\t\t\t\tbuffer.push(lines[0]);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (buffer.length) {\n\t\t\t\tbuffer.push(lines[0]);\n\t\t\t\tlines[0] = joinArrays(buffer);\n\t\t\t\tbuffer = [];\n\t\t\t}\n\t\t\tif (!trailingNewline) {\n\t\t\t\tif (lines.length) buffer = [lines.pop()];\n\t\t\t}\n\t\t\tfor (const line of lines) controller.enqueue(line);\n\t\t},\n\t\tflush(controller) {\n\t\t\tif (buffer.length) controller.enqueue(joinArrays(buffer));\n\t\t}\n\t});\n}\nfunction SSEDecoder() {\n\tlet event = \"\";\n\tlet data = [];\n\tlet lastEventId = \"\";\n\tlet retry = null;\n\tconst decoder = new TextDecoder();\n\treturn new TransformStream({\n\t\ttransform(chunk, controller) {\n\t\t\tif (!chunk.length) {\n\t\t\t\tif (!event && !data.length && !lastEventId && retry == null) return;\n\t\t\t\tconst sse = {\n\t\t\t\t\tid: lastEventId || void 0,\n\t\t\t\t\tevent,\n\t\t\t\t\tdata: data.length ? decodeArraysToJson(decoder, data) : null\n\t\t\t\t};\n\t\t\t\tevent = \"\";\n\t\t\t\tdata = [];\n\t\t\t\tretry = null;\n\t\t\t\tcontroller.enqueue(sse);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (chunk[0] === COLON) return;\n\t\t\tconst sepIdx = chunk.indexOf(COLON);\n\t\t\tif (sepIdx === -1) return;\n\t\t\tconst fieldName = decoder.decode(chunk.subarray(0, sepIdx));\n\t\t\tlet value = chunk.subarray(sepIdx + 1);\n\t\t\tif (value[0] === SPACE) value = value.subarray(1);\n\t\t\tif (fieldName === \"event\") event = decoder.decode(value);\n\t\t\telse if (fieldName === \"data\") data.push(value);\n\t\t\telse if (fieldName === \"id\") {\n\t\t\t\tif (value.indexOf(NULL) === -1) lastEventId = decoder.decode(value);\n\t\t\t} else if (fieldName === \"retry\") {\n\t\t\t\tconst retryNum = Number.parseInt(decoder.decode(value), 10);\n\t\t\t\tif (!Number.isNaN(retryNum)) retry = retryNum;\n\t\t\t}\n\t\t},\n\t\tflush(controller) {\n\t\t\tif (event) controller.enqueue({\n\t\t\t\tid: lastEventId || void 0,\n\t\t\t\tevent,\n\t\t\t\tdata: data.length ? decodeArraysToJson(decoder, data) : null\n\t\t\t});\n\t\t}\n\t});\n}\nfunction joinArrays(data) {\n\tconst totalLength = data.reduce((acc, curr) => acc + curr.length, 0);\n\tconst merged = new Uint8Array(totalLength);\n\tlet offset = 0;\n\tfor (const c of data) {\n\t\tmerged.set(c, offset);\n\t\toffset += c.length;\n\t}\n\treturn merged;\n}\nfunction decodeArraysToJson(decoder, data) {\n\treturn JSON.parse(decoder.decode(joinArrays(data)));\n}\n\n//#endregion\nexport { BytesLineDecoder, SSEDecoder };\n//# sourceMappingURL=sse.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,265 +1,75 @@
1
- import { Serializable } from "./index.es57.js";
2
- import { isDataContentBlock } from "./index.es47.js";
3
- import { convertToV1FromAnthropicInput } from "./index.es58.js";
4
- import { convertToV1FromDataContent } from "./index.es59.js";
5
- import { convertToV1FromChatCompletionsInput } from "./index.es60.js";
6
- import { isMessage } from "./index.es48.js";
7
- import { convertToFormattedString } from "./index.es61.js";
8
- const MESSAGE_SYMBOL = /* @__PURE__ */ Symbol.for("langchain.message");
9
- function mergeContent(firstContent, secondContent) {
10
- if (typeof firstContent === "string") {
11
- if (firstContent === "") return secondContent;
12
- if (typeof secondContent === "string") return firstContent + secondContent;
13
- else if (Array.isArray(secondContent) && secondContent.length === 0) return firstContent;
14
- else if (Array.isArray(secondContent) && secondContent.some((c) => isDataContentBlock(c))) return [{
15
- type: "text",
16
- source_type: "text",
17
- text: firstContent
18
- }, ...secondContent];
19
- else return [{
20
- type: "text",
21
- text: firstContent
22
- }, ...secondContent];
23
- } else if (Array.isArray(secondContent)) return _mergeLists(firstContent, secondContent) ?? [...firstContent, ...secondContent];
24
- else if (secondContent === "") return firstContent;
25
- else if (Array.isArray(firstContent) && firstContent.some((c) => isDataContentBlock(c))) return [...firstContent, {
26
- type: "file",
27
- source_type: "text",
28
- text: secondContent
29
- }];
30
- else return [...firstContent, {
31
- type: "text",
32
- text: secondContent
33
- }];
34
- }
35
- function _mergeStatus(left, right) {
36
- if (left === "error" || right === "error") return "error";
37
- return "success";
38
- }
39
- function stringifyWithDepthLimit(obj, depthLimit) {
40
- function helper(obj$1, currentDepth) {
41
- if (typeof obj$1 !== "object" || obj$1 === null || obj$1 === void 0) return obj$1;
42
- if (currentDepth >= depthLimit) {
43
- if (Array.isArray(obj$1)) return "[Array]";
44
- return "[Object]";
45
- }
46
- if (Array.isArray(obj$1)) return obj$1.map((item) => helper(item, currentDepth + 1));
47
- const result = {};
48
- for (const key of Object.keys(obj$1)) result[key] = helper(obj$1[key], currentDepth + 1);
49
- return result;
50
- }
51
- return JSON.stringify(helper(obj, 0), null, 2);
52
- }
53
- var BaseMessage = class extends Serializable {
54
- lc_namespace = ["langchain_core", "messages"];
55
- lc_serializable = true;
56
- get lc_aliases() {
57
- return {
58
- additional_kwargs: "additional_kwargs",
59
- response_metadata: "response_metadata"
60
- };
61
- }
62
- [MESSAGE_SYMBOL] = true;
63
- id;
64
- /** @inheritdoc */
65
- name;
66
- content;
67
- additional_kwargs;
68
- response_metadata;
69
- /**
70
- * @deprecated Use .getType() instead or import the proper typeguard.
71
- * For example:
72
- *
73
- * ```ts
74
- * import { isAIMessage } from "@langchain/core/messages";
75
- *
76
- * const message = new AIMessage("Hello!");
77
- * isAIMessage(message); // true
78
- * ```
79
- */
80
- _getType() {
81
- return this.type;
82
- }
83
- /**
84
- * @deprecated Use .type instead
85
- * The type of the message.
86
- */
87
- getType() {
88
- return this._getType();
89
- }
90
- constructor(arg) {
91
- const fields = typeof arg === "string" || Array.isArray(arg) ? { content: arg } : arg;
92
- if (!fields.additional_kwargs) fields.additional_kwargs = {};
93
- if (!fields.response_metadata) fields.response_metadata = {};
94
- super(fields);
95
- this.name = fields.name;
96
- if (fields.content === void 0 && fields.contentBlocks !== void 0) {
97
- this.content = fields.contentBlocks;
98
- this.response_metadata = {
99
- output_version: "v1",
100
- ...fields.response_metadata
101
- };
102
- } else if (fields.content !== void 0) {
103
- this.content = fields.content ?? [];
104
- this.response_metadata = fields.response_metadata;
105
- } else {
106
- this.content = [];
107
- this.response_metadata = fields.response_metadata;
108
- }
109
- this.additional_kwargs = fields.additional_kwargs;
110
- this.id = fields.id;
111
- }
112
- /** Get text content of the message. */
113
- get text() {
114
- if (typeof this.content === "string") return this.content;
115
- if (!Array.isArray(this.content)) return "";
116
- return this.content.map((c) => {
117
- if (typeof c === "string") return c;
118
- if (c.type === "text") return c.text;
119
- return "";
120
- }).join("");
121
- }
122
- get contentBlocks() {
123
- const blocks = typeof this.content === "string" ? [{
124
- type: "text",
125
- text: this.content
126
- }] : this.content;
127
- const parsingSteps = [
128
- convertToV1FromDataContent,
129
- convertToV1FromChatCompletionsInput,
130
- convertToV1FromAnthropicInput
131
- ];
132
- const parsedBlocks = parsingSteps.reduce((blocks$1, step) => step(blocks$1), blocks);
133
- return parsedBlocks;
134
- }
135
- toDict() {
136
- return {
137
- type: this.getType(),
138
- data: this.toJSON().kwargs
139
- };
140
- }
141
- static lc_name() {
142
- return "BaseMessage";
143
- }
144
- get _printableFields() {
145
- return {
146
- id: this.id,
147
- content: this.content,
148
- name: this.name,
149
- additional_kwargs: this.additional_kwargs,
150
- response_metadata: this.response_metadata
151
- };
152
- }
153
- static isInstance(obj) {
154
- return typeof obj === "object" && obj !== null && MESSAGE_SYMBOL in obj && obj[MESSAGE_SYMBOL] === true && isMessage(obj);
155
- }
156
- _updateId(value) {
157
- this.id = value;
158
- this.lc_kwargs.id = value;
159
- }
160
- get [Symbol.toStringTag]() {
161
- return this.constructor.lc_name();
162
- }
163
- [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")](depth) {
164
- if (depth === null) return this;
165
- const printable = stringifyWithDepthLimit(this._printableFields, Math.max(4, depth));
166
- return `${this.constructor.lc_name()} ${printable}`;
167
- }
168
- toFormattedString(format = "pretty") {
169
- return convertToFormattedString(this, format);
1
+ import { isNetworkError } from "./index.es36.js";
2
+ var MaxReconnectAttemptsError = class extends Error {
3
+ constructor(maxAttempts, cause) {
4
+ super(`Exceeded maximum SSE reconnection attempts (${maxAttempts})`);
5
+ this.name = "MaxReconnectAttemptsError";
6
+ this.cause = cause;
170
7
  }
171
8
  };
172
- function isOpenAIToolCallArray(value) {
173
- return Array.isArray(value) && value.every((v) => typeof v.index === "number");
174
- }
175
- function _mergeDicts(left, right) {
176
- if (left === void 0 && right === void 0) return void 0;
177
- if (left === void 0 || right === void 0) return left ?? right;
178
- const merged = { ...left };
179
- for (const [key, value] of Object.entries(right)) if (merged[key] == null) merged[key] = value;
180
- else if (value == null) continue;
181
- else if (typeof merged[key] !== typeof value || Array.isArray(merged[key]) !== Array.isArray(value)) throw new Error(`field[${key}] already exists in the message chunk, but with a different type.`);
182
- else if (typeof merged[key] === "string") if (key === "type") continue;
183
- else if ([
184
- "id",
185
- "name",
186
- "output_version",
187
- "model_provider"
188
- ].includes(key)) {
189
- if (value) merged[key] = value;
190
- } else merged[key] += value;
191
- else if (typeof merged[key] === "number") merged[key] = merged[key] + value;
192
- else if (typeof merged[key] === "object" && !Array.isArray(merged[key])) merged[key] = _mergeDicts(merged[key], value);
193
- else if (Array.isArray(merged[key])) merged[key] = _mergeLists(merged[key], value);
194
- else if (merged[key] === value) continue;
195
- else console.warn(`field[${key}] already exists in this message chunk and value has unsupported type.`);
196
- return merged;
197
- }
198
- function _mergeLists(left, right) {
199
- if (left === void 0 && right === void 0) return void 0;
200
- else if (left === void 0 || right === void 0) return left || right;
201
- else {
202
- const merged = [...left];
203
- for (const item of right) if (typeof item === "object" && item !== null && "index" in item && typeof item.index === "number") {
204
- const toMerge = merged.findIndex((leftItem) => {
205
- const isObject = typeof leftItem === "object";
206
- const indiciesMatch = "index" in leftItem && leftItem.index === item.index;
207
- const idsMatch = "id" in leftItem && "id" in item && leftItem?.id === item?.id;
208
- const eitherItemMissingID = !("id" in leftItem) || !leftItem?.id || !("id" in item) || !item?.id;
209
- return isObject && indiciesMatch && (idsMatch || eitherItemMissingID);
9
+ async function* streamWithRetry(makeRequest, options = {}) {
10
+ const maxRetries = options.maxRetries ?? 5;
11
+ let attempt = 0;
12
+ let lastEventId;
13
+ let reconnectPath;
14
+ while (true) {
15
+ let shouldRetry = false;
16
+ let lastError;
17
+ let reader;
18
+ try {
19
+ if (options.signal?.aborted) return;
20
+ const { response, stream } = await makeRequest(reconnectPath ? {
21
+ lastEventId,
22
+ reconnectPath
23
+ } : void 0);
24
+ const locationHeader = response.headers.get("location");
25
+ if (locationHeader) reconnectPath = locationHeader;
26
+ const contentType = response.headers.get("content-type")?.split(";")[0];
27
+ if (contentType && !contentType.includes("text/event-stream")) throw new Error(`Expected response header Content-Type to contain 'text/event-stream', got '${contentType}'`);
28
+ reader = stream.getReader();
29
+ try {
30
+ while (true) {
31
+ if (options.signal?.aborted) {
32
+ await reader.cancel();
33
+ return;
34
+ }
35
+ const { done, value } = await reader.read();
36
+ if (done) break;
37
+ if (value.id) lastEventId = value.id;
38
+ yield value;
39
+ }
40
+ break;
41
+ } catch (error) {
42
+ if (reconnectPath && !options.signal?.aborted) shouldRetry = true;
43
+ else throw error;
44
+ } finally {
45
+ if (reader) try {
46
+ reader.releaseLock();
47
+ } catch {
48
+ }
49
+ }
50
+ } catch (error) {
51
+ lastError = error;
52
+ if (isNetworkError(error) && reconnectPath && !options.signal?.aborted) shouldRetry = true;
53
+ else throw error;
54
+ }
55
+ if (shouldRetry) {
56
+ attempt += 1;
57
+ if (attempt > maxRetries) throw new MaxReconnectAttemptsError(maxRetries, lastError);
58
+ options.onReconnect?.({
59
+ attempt,
60
+ lastEventId,
61
+ cause: lastError
210
62
  });
211
- if (toMerge !== -1 && typeof merged[toMerge] === "object" && merged[toMerge] !== null) merged[toMerge] = _mergeDicts(merged[toMerge], item);
212
- else merged.push(item);
213
- } else if (typeof item === "object" && item !== null && "text" in item && item.text === "") continue;
214
- else merged.push(item);
215
- return merged;
216
- }
217
- }
218
- function _mergeObj(left, right) {
219
- if (left === void 0 && right === void 0) return void 0;
220
- if (left === void 0 || right === void 0) return left ?? right;
221
- else if (typeof left !== typeof right) throw new Error(`Cannot merge objects of different types.
222
- Left ${typeof left}
223
- Right ${typeof right}`);
224
- else if (typeof left === "string" && typeof right === "string") return left + right;
225
- else if (Array.isArray(left) && Array.isArray(right)) return _mergeLists(left, right);
226
- else if (typeof left === "object" && typeof right === "object") return _mergeDicts(left, right);
227
- else if (left === right) return left;
228
- else throw new Error(`Can not merge objects of different types.
229
- Left ${left}
230
- Right ${right}`);
231
- }
232
- var BaseMessageChunk = class BaseMessageChunk2 extends BaseMessage {
233
- static isInstance(obj) {
234
- if (!super.isInstance(obj)) return false;
235
- let proto = Object.getPrototypeOf(obj);
236
- while (proto !== null) {
237
- if (proto === BaseMessageChunk2.prototype) return true;
238
- proto = Object.getPrototypeOf(proto);
63
+ const delay = Math.min(1e3 * 2 ** (attempt - 1), 5e3) + Math.random() * 1e3;
64
+ await new Promise((resolve) => {
65
+ setTimeout(resolve, delay);
66
+ });
67
+ continue;
239
68
  }
240
- return false;
69
+ break;
241
70
  }
242
- };
243
- function _isMessageFieldWithRole(x) {
244
- return typeof x.role === "string";
245
- }
246
- function isBaseMessage(messageLike) {
247
- return typeof messageLike?._getType === "function";
248
- }
249
- function isBaseMessageChunk(messageLike) {
250
- return BaseMessageChunk.isInstance(messageLike);
251
71
  }
252
72
  export {
253
- BaseMessage,
254
- BaseMessageChunk,
255
- _isMessageFieldWithRole,
256
- _mergeDicts,
257
- _mergeLists,
258
- _mergeObj,
259
- _mergeStatus,
260
- isBaseMessage,
261
- isBaseMessageChunk,
262
- isOpenAIToolCallArray,
263
- mergeContent
73
+ streamWithRetry
264
74
  };
265
75
  //# sourceMappingURL=index.es35.js.map