langgraph-ui-components 0.0.2 → 0.0.3

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 (533) hide show
  1. package/dist/index.es100.js +5 -40
  2. package/dist/index.es100.js.map +1 -1
  3. package/dist/index.es101.js +68 -86
  4. package/dist/index.es101.js.map +1 -1
  5. package/dist/index.es102.js +37 -2
  6. package/dist/index.es102.js.map +1 -1
  7. package/dist/index.es103.js +5 -2
  8. package/dist/index.es103.js.map +1 -1
  9. package/dist/index.es104.js +2 -24
  10. package/dist/index.es104.js.map +1 -1
  11. package/dist/index.es105.js +11 -2
  12. package/dist/index.es105.js.map +1 -1
  13. package/dist/index.es106.js +500 -24
  14. package/dist/index.es106.js.map +1 -1
  15. package/dist/index.es107.js +5 -5
  16. package/dist/index.es108.js +2 -2
  17. package/dist/index.es109.js +146 -11
  18. package/dist/index.es109.js.map +1 -1
  19. package/dist/index.es11.js +13 -8
  20. package/dist/index.es11.js.map +1 -1
  21. package/dist/index.es110.js +857 -452
  22. package/dist/index.es110.js.map +1 -1
  23. package/dist/index.es111.js +282 -2
  24. package/dist/index.es111.js.map +1 -1
  25. package/dist/index.es112.js +4 -148
  26. package/dist/index.es112.js.map +1 -1
  27. package/dist/index.es113.js +408 -850
  28. package/dist/index.es113.js.map +1 -1
  29. package/dist/index.es114.js +40 -274
  30. package/dist/index.es114.js.map +1 -1
  31. package/dist/index.es115.js +24 -4
  32. package/dist/index.es115.js.map +1 -1
  33. package/dist/index.es116.js +72 -437
  34. package/dist/index.es116.js.map +1 -1
  35. package/dist/index.es117.js +125 -42
  36. package/dist/index.es117.js.map +1 -1
  37. package/dist/index.es118.js +48 -21
  38. package/dist/index.es118.js.map +1 -1
  39. package/dist/index.es119.js +8 -77
  40. package/dist/index.es119.js.map +1 -1
  41. package/dist/index.es12.js +46 -39
  42. package/dist/index.es12.js.map +1 -1
  43. package/dist/index.es120.js +43 -127
  44. package/dist/index.es120.js.map +1 -1
  45. package/dist/index.es121.js +91 -41
  46. package/dist/index.es121.js.map +1 -1
  47. package/dist/index.es122.js +52 -9
  48. package/dist/index.es122.js.map +1 -1
  49. package/dist/index.es123.js +15 -44
  50. package/dist/index.es123.js.map +1 -1
  51. package/dist/index.es124.js +13 -97
  52. package/dist/index.es124.js.map +1 -1
  53. package/dist/index.es125.js +88 -52
  54. package/dist/index.es125.js.map +1 -1
  55. package/dist/index.es126.js +2 -2
  56. package/dist/index.es127.js +54 -135
  57. package/dist/index.es127.js.map +1 -1
  58. package/dist/index.es128.js +100 -2
  59. package/dist/index.es128.js.map +1 -1
  60. package/dist/index.es129.js +190 -14
  61. package/dist/index.es129.js.map +1 -1
  62. package/dist/index.es13.js +1 -1
  63. package/dist/index.es13.js.map +1 -1
  64. package/dist/index.es130.js +105 -84
  65. package/dist/index.es130.js.map +1 -1
  66. package/dist/index.es131.js +35 -2
  67. package/dist/index.es131.js.map +1 -1
  68. package/dist/index.es132.js +9 -55
  69. package/dist/index.es132.js.map +1 -1
  70. package/dist/index.es133.js +10 -99
  71. package/dist/index.es133.js.map +1 -1
  72. package/dist/index.es134.js +12 -191
  73. package/dist/index.es134.js.map +1 -1
  74. package/dist/index.es135.js +80 -99
  75. package/dist/index.es135.js.map +1 -1
  76. package/dist/index.es136.js +273 -33
  77. package/dist/index.es136.js.map +1 -1
  78. package/dist/index.es137.js +2 -10
  79. package/dist/index.es137.js.map +1 -1
  80. package/dist/index.es138.js +164 -11
  81. package/dist/index.es138.js.map +1 -1
  82. package/dist/index.es139.js +50 -11
  83. package/dist/index.es139.js.map +1 -1
  84. package/dist/index.es14.js +8 -145
  85. package/dist/index.es14.js.map +1 -1
  86. package/dist/index.es140.js +36 -87
  87. package/dist/index.es140.js.map +1 -1
  88. package/dist/index.es141.js +3 -3
  89. package/dist/index.es141.js.map +1 -1
  90. package/dist/index.es143.js +1 -1
  91. package/dist/index.es144.js +2 -2
  92. package/dist/index.es145.js +1 -1
  93. package/dist/index.es146.js +163 -3
  94. package/dist/index.es146.js.map +1 -1
  95. package/dist/index.es147.js +2 -5
  96. package/dist/index.es147.js.map +1 -1
  97. package/dist/index.es148.js +2 -13
  98. package/dist/index.es148.js.map +1 -1
  99. package/dist/index.es149.js +2 -6
  100. package/dist/index.es149.js.map +1 -1
  101. package/dist/index.es15.js +145 -12
  102. package/dist/index.es15.js.map +1 -1
  103. package/dist/index.es150.js +22 -8
  104. package/dist/index.es150.js.map +1 -1
  105. package/dist/index.es151.js +2 -25
  106. package/dist/index.es151.js.map +1 -1
  107. package/dist/index.es152.js +24 -11
  108. package/dist/index.es152.js.map +1 -1
  109. package/dist/index.es153.js +3 -53
  110. package/dist/index.es153.js.map +1 -1
  111. package/dist/index.es154.js +5 -64
  112. package/dist/index.es154.js.map +1 -1
  113. package/dist/index.es155.js +12 -21
  114. package/dist/index.es155.js.map +1 -1
  115. package/dist/index.es156.js +5 -5
  116. package/dist/index.es156.js.map +1 -1
  117. package/dist/index.es157.js +8 -349
  118. package/dist/index.es157.js.map +1 -1
  119. package/dist/index.es158.js +63 -6
  120. package/dist/index.es158.js.map +1 -1
  121. package/dist/index.es159.js +21 -102
  122. package/dist/index.es159.js.map +1 -1
  123. package/dist/index.es16.js +12 -5
  124. package/dist/index.es16.js.map +1 -1
  125. package/dist/index.es160.js +5 -118
  126. package/dist/index.es160.js.map +1 -1
  127. package/dist/index.es161.js +330 -117
  128. package/dist/index.es161.js.map +1 -1
  129. package/dist/index.es162.js +24 -114
  130. package/dist/index.es162.js.map +1 -1
  131. package/dist/index.es163.js +12 -6
  132. package/dist/index.es163.js.map +1 -1
  133. package/dist/index.es164.js +53 -141
  134. package/dist/index.es164.js.map +1 -1
  135. package/dist/index.es165.js +7 -2
  136. package/dist/index.es165.js.map +1 -1
  137. package/dist/index.es166.js +98 -3677
  138. package/dist/index.es166.js.map +1 -1
  139. package/dist/index.es167.js +109 -332
  140. package/dist/index.es167.js.map +1 -1
  141. package/dist/index.es168.js +130 -103
  142. package/dist/index.es168.js.map +1 -1
  143. package/dist/index.es169.js +105 -123
  144. package/dist/index.es169.js.map +1 -1
  145. package/dist/index.es17.js +5 -33
  146. package/dist/index.es17.js.map +1 -1
  147. package/dist/index.es170.js +6 -15
  148. package/dist/index.es170.js.map +1 -1
  149. package/dist/index.es171.js +2 -152
  150. package/dist/index.es171.js.map +1 -1
  151. package/dist/index.es172.js +141 -14
  152. package/dist/index.es172.js.map +1 -1
  153. package/dist/index.es173.js +2 -8
  154. package/dist/index.es173.js.map +1 -1
  155. package/dist/index.es174.js +3732 -16
  156. package/dist/index.es174.js.map +1 -1
  157. package/dist/index.es175.js +322 -70
  158. package/dist/index.es175.js.map +1 -1
  159. package/dist/index.es176.js +106 -21
  160. package/dist/index.es176.js.map +1 -1
  161. package/dist/index.es177.js +133 -6
  162. package/dist/index.es177.js.map +1 -1
  163. package/dist/index.es178.js +15 -4
  164. package/dist/index.es178.js.map +1 -1
  165. package/dist/index.es179.js +149 -15
  166. package/dist/index.es179.js.map +1 -1
  167. package/dist/index.es18.js +29 -119
  168. package/dist/index.es18.js.map +1 -1
  169. package/dist/index.es180.js +15 -32
  170. package/dist/index.es180.js.map +1 -1
  171. package/dist/index.es181.js +8 -6
  172. package/dist/index.es181.js.map +1 -1
  173. package/dist/index.es182.js +20 -105
  174. package/dist/index.es182.js.map +1 -1
  175. package/dist/index.es183.js +88 -11
  176. package/dist/index.es183.js.map +1 -1
  177. package/dist/index.es184.js +242 -17
  178. package/dist/index.es184.js.map +1 -1
  179. package/dist/index.es185.js +23 -30
  180. package/dist/index.es185.js.map +1 -1
  181. package/dist/index.es186.js +6 -4
  182. package/dist/index.es186.js.map +1 -1
  183. package/dist/index.es187.js +4 -5
  184. package/dist/index.es187.js.map +1 -1
  185. package/dist/index.es188.js +18 -5
  186. package/dist/index.es188.js.map +1 -1
  187. package/dist/index.es189.js +7 -36
  188. package/dist/index.es189.js.map +1 -1
  189. package/dist/index.es19.js +120 -36
  190. package/dist/index.es19.js.map +1 -1
  191. package/dist/index.es190.js +32 -8
  192. package/dist/index.es190.js.map +1 -1
  193. package/dist/index.es191.js +6 -6
  194. package/dist/index.es191.js.map +1 -1
  195. package/dist/index.es192.js +106 -7
  196. package/dist/index.es192.js.map +1 -1
  197. package/dist/index.es193.js +12 -41
  198. package/dist/index.es193.js.map +1 -1
  199. package/dist/index.es194.js +17 -12
  200. package/dist/index.es194.js.map +1 -1
  201. package/dist/index.es195.js +22 -233
  202. package/dist/index.es195.js.map +1 -1
  203. package/dist/index.es196.js +3 -50
  204. package/dist/index.es196.js.map +1 -1
  205. package/dist/index.es197.js +4 -34
  206. package/dist/index.es197.js.map +1 -1
  207. package/dist/index.es198.js +5 -13
  208. package/dist/index.es198.js.map +1 -1
  209. package/dist/index.es199.js +36 -7
  210. package/dist/index.es199.js.map +1 -1
  211. package/dist/index.es2.js +9 -15
  212. package/dist/index.es2.js.map +1 -1
  213. package/dist/index.es20.js +17 -42
  214. package/dist/index.es20.js.map +1 -1
  215. package/dist/index.es200.js +7 -6
  216. package/dist/index.es200.js.map +1 -1
  217. package/dist/index.es201.js +5 -64
  218. package/dist/index.es201.js.map +1 -1
  219. package/dist/index.es202.js +6 -40
  220. package/dist/index.es202.js.map +1 -1
  221. package/dist/index.es203.js +41 -31
  222. package/dist/index.es203.js.map +1 -1
  223. package/dist/index.es204.js +11 -60
  224. package/dist/index.es204.js.map +1 -1
  225. package/dist/index.es205.js +241 -14
  226. package/dist/index.es205.js.map +1 -1
  227. package/dist/index.es206.js +51 -23
  228. package/dist/index.es206.js.map +1 -1
  229. package/dist/index.es207.js +34 -4
  230. package/dist/index.es207.js.map +1 -1
  231. package/dist/index.es208.js +10 -14
  232. package/dist/index.es208.js.map +1 -1
  233. package/dist/index.es209.js +7 -32
  234. package/dist/index.es209.js.map +1 -1
  235. package/dist/index.es21.js +68 -17
  236. package/dist/index.es21.js.map +1 -1
  237. package/dist/index.es210.js +6 -4
  238. package/dist/index.es210.js.map +1 -1
  239. package/dist/index.es211.js +64 -4
  240. package/dist/index.es211.js.map +1 -1
  241. package/dist/index.es212.js +41 -5
  242. package/dist/index.es212.js.map +1 -1
  243. package/dist/index.es213.js +31 -7
  244. package/dist/index.es213.js.map +1 -1
  245. package/dist/index.es214.js +56 -86
  246. package/dist/index.es214.js.map +1 -1
  247. package/dist/index.es215.js +15 -18
  248. package/dist/index.es215.js.map +1 -1
  249. package/dist/index.es216.js +23 -762
  250. package/dist/index.es216.js.map +1 -1
  251. package/dist/index.es217.js +5 -66
  252. package/dist/index.es217.js.map +1 -1
  253. package/dist/index.es218.js +14 -171
  254. package/dist/index.es218.js.map +1 -1
  255. package/dist/index.es219.js +32 -37
  256. package/dist/index.es219.js.map +1 -1
  257. package/dist/index.es22.js +36 -71
  258. package/dist/index.es22.js.map +1 -1
  259. package/dist/index.es220.js +4 -136
  260. package/dist/index.es220.js.map +1 -1
  261. package/dist/index.es221.js +4 -92
  262. package/dist/index.es221.js.map +1 -1
  263. package/dist/index.es222.js +5 -33
  264. package/dist/index.es222.js.map +1 -1
  265. package/dist/index.es223.js +7 -284
  266. package/dist/index.es223.js.map +1 -1
  267. package/dist/index.es224.js +91 -25
  268. package/dist/index.es224.js.map +1 -1
  269. package/dist/index.es225.js +15 -21
  270. package/dist/index.es225.js.map +1 -1
  271. package/dist/index.es226.js +761 -14
  272. package/dist/index.es226.js.map +1 -1
  273. package/dist/index.es227.js +66 -15
  274. package/dist/index.es227.js.map +1 -1
  275. package/dist/index.es228.js +169 -21
  276. package/dist/index.es228.js.map +1 -1
  277. package/dist/index.es229.js +37 -45
  278. package/dist/index.es229.js.map +1 -1
  279. package/dist/index.es23.js +6 -4
  280. package/dist/index.es23.js.map +1 -1
  281. package/dist/index.es230.js +136 -11
  282. package/dist/index.es230.js.map +1 -1
  283. package/dist/index.es231.js +92 -11
  284. package/dist/index.es231.js.map +1 -1
  285. package/dist/index.es232.js +32 -11
  286. package/dist/index.es232.js.map +1 -1
  287. package/dist/index.es233.js +284 -14
  288. package/dist/index.es233.js.map +1 -1
  289. package/dist/index.es234.js +25 -11
  290. package/dist/index.es234.js.map +1 -1
  291. package/dist/index.es235.js +23 -11
  292. package/dist/index.es235.js.map +1 -1
  293. package/dist/index.es236.js +14 -11
  294. package/dist/index.es236.js.map +1 -1
  295. package/dist/index.es237.js +13 -14
  296. package/dist/index.es237.js.map +1 -1
  297. package/dist/index.es238.js +25 -11
  298. package/dist/index.es238.js.map +1 -1
  299. package/dist/index.es239.js +45 -11
  300. package/dist/index.es239.js.map +1 -1
  301. package/dist/index.es24.js +142 -88
  302. package/dist/index.es24.js.map +1 -1
  303. package/dist/index.es240.js +11 -11
  304. package/dist/index.es240.js.map +1 -1
  305. package/dist/index.es241.js +11 -11
  306. package/dist/index.es241.js.map +1 -1
  307. package/dist/index.es242.js +11 -11
  308. package/dist/index.es242.js.map +1 -1
  309. package/dist/index.es243.js +14 -11
  310. package/dist/index.es243.js.map +1 -1
  311. package/dist/index.es244.js +11 -11
  312. package/dist/index.es244.js.map +1 -1
  313. package/dist/index.es245.js +10 -10
  314. package/dist/index.es245.js.map +1 -1
  315. package/dist/index.es246.js +11 -56
  316. package/dist/index.es246.js.map +1 -1
  317. package/dist/index.es247.js +13 -47
  318. package/dist/index.es247.js.map +1 -1
  319. package/dist/index.es248.js +11 -119
  320. package/dist/index.es248.js.map +1 -1
  321. package/dist/index.es249.js +11 -384
  322. package/dist/index.es249.js.map +1 -1
  323. package/dist/index.es25.js +99 -68
  324. package/dist/index.es25.js.map +1 -1
  325. package/dist/index.es250.js +11 -18
  326. package/dist/index.es250.js.map +1 -1
  327. package/dist/index.es251.js +11 -11
  328. package/dist/index.es251.js.map +1 -1
  329. package/dist/index.es252.js +11 -31
  330. package/dist/index.es252.js.map +1 -1
  331. package/dist/index.es253.js +11 -31
  332. package/dist/index.es253.js.map +1 -1
  333. package/dist/index.es254.js +11 -62
  334. package/dist/index.es254.js.map +1 -1
  335. package/dist/index.es255.js +11 -17
  336. package/dist/index.es255.js.map +1 -1
  337. package/dist/index.es256.js +48 -69
  338. package/dist/index.es256.js.map +1 -1
  339. package/dist/index.es257.js +49 -11
  340. package/dist/index.es257.js.map +1 -1
  341. package/dist/index.es258.js +119 -11
  342. package/dist/index.es258.js.map +1 -1
  343. package/dist/index.es259.js +384 -15
  344. package/dist/index.es259.js.map +1 -1
  345. package/dist/index.es26.js +64 -170
  346. package/dist/index.es26.js.map +1 -1
  347. package/dist/index.es260.js +16 -50
  348. package/dist/index.es260.js.map +1 -1
  349. package/dist/index.es261.js +10 -165
  350. package/dist/index.es261.js.map +1 -1
  351. package/dist/index.es262.js +32 -2
  352. package/dist/index.es262.js.map +1 -1
  353. package/dist/index.es263.js +30 -9
  354. package/dist/index.es263.js.map +1 -1
  355. package/dist/index.es264.js +59 -16
  356. package/dist/index.es264.js.map +1 -1
  357. package/dist/index.es265.js +16 -37
  358. package/dist/index.es265.js.map +1 -1
  359. package/dist/index.es266.js +81 -0
  360. package/dist/index.es266.js.map +1 -0
  361. package/dist/index.es267.js +15 -0
  362. package/dist/index.es267.js.map +1 -0
  363. package/dist/index.es268.js +15 -0
  364. package/dist/index.es268.js.map +1 -0
  365. package/dist/index.es269.js +19 -0
  366. package/dist/index.es269.js.map +1 -0
  367. package/dist/index.es27.js +178 -12
  368. package/dist/index.es27.js.map +1 -1
  369. package/dist/index.es270.js +56 -0
  370. package/dist/index.es270.js.map +1 -0
  371. package/dist/index.es271.js +170 -0
  372. package/dist/index.es271.js.map +1 -0
  373. package/dist/index.es272.js +5 -0
  374. package/dist/index.es272.js.map +1 -0
  375. package/dist/index.es273.js +14 -0
  376. package/dist/index.es273.js.map +1 -0
  377. package/dist/index.es274.js +23 -0
  378. package/dist/index.es274.js.map +1 -0
  379. package/dist/index.es275.js +42 -0
  380. package/dist/index.es275.js.map +1 -0
  381. package/dist/index.es28.js +23 -434
  382. package/dist/index.es28.js.map +1 -1
  383. package/dist/index.es29.js +13 -119
  384. package/dist/index.es29.js.map +1 -1
  385. package/dist/index.es3.js +2 -3
  386. package/dist/index.es3.js.map +1 -1
  387. package/dist/index.es30.js +432 -65
  388. package/dist/index.es30.js.map +1 -1
  389. package/dist/index.es31.js +15 -12
  390. package/dist/index.es31.js.map +1 -1
  391. package/dist/index.es32.js +112 -252
  392. package/dist/index.es32.js.map +1 -1
  393. package/dist/index.es33.js +68 -40
  394. package/dist/index.es33.js.map +1 -1
  395. package/dist/index.es34.js +17 -210
  396. package/dist/index.es34.js.map +1 -1
  397. package/dist/index.es35.js +247 -53
  398. package/dist/index.es35.js.map +1 -1
  399. package/dist/index.es36.js +24 -123
  400. package/dist/index.es36.js.map +1 -1
  401. package/dist/index.es37.js +205 -14
  402. package/dist/index.es37.js.map +1 -1
  403. package/dist/index.es38.js +58 -215
  404. package/dist/index.es38.js.map +1 -1
  405. package/dist/index.es39.js +140 -7
  406. package/dist/index.es39.js.map +1 -1
  407. package/dist/index.es40.js +17 -1192
  408. package/dist/index.es40.js.map +1 -1
  409. package/dist/index.es41.js +229 -7
  410. package/dist/index.es41.js.map +1 -1
  411. package/dist/index.es42.js +8 -146
  412. package/dist/index.es42.js.map +1 -1
  413. package/dist/index.es43.js +1191 -13
  414. package/dist/index.es43.js.map +1 -1
  415. package/dist/index.es44.js +8 -8
  416. package/dist/index.es44.js.map +1 -1
  417. package/dist/index.es45.js +138 -84
  418. package/dist/index.es45.js.map +1 -1
  419. package/dist/index.es46.js +8 -4
  420. package/dist/index.es46.js.map +1 -1
  421. package/dist/index.es47.js +91 -33
  422. package/dist/index.es47.js.map +1 -1
  423. package/dist/index.es48.js +3 -71
  424. package/dist/index.es48.js.map +1 -1
  425. package/dist/index.es49.js +34 -36
  426. package/dist/index.es49.js.map +1 -1
  427. package/dist/index.es5.js +44 -2
  428. package/dist/index.es5.js.map +1 -1
  429. package/dist/index.es50.js +61 -295
  430. package/dist/index.es50.js.map +1 -1
  431. package/dist/index.es51.js +38 -9
  432. package/dist/index.es51.js.map +1 -1
  433. package/dist/index.es52.js +296 -75
  434. package/dist/index.es52.js.map +1 -1
  435. package/dist/index.es53.js +9 -8
  436. package/dist/index.es53.js.map +1 -1
  437. package/dist/index.es54.js +89 -13
  438. package/dist/index.es54.js.map +1 -1
  439. package/dist/index.es55.js +6 -139
  440. package/dist/index.es55.js.map +1 -1
  441. package/dist/index.es56.js +12 -297
  442. package/dist/index.es56.js.map +1 -1
  443. package/dist/index.es57.js +137 -60
  444. package/dist/index.es57.js.map +1 -1
  445. package/dist/index.es58.js +247 -160
  446. package/dist/index.es58.js.map +1 -1
  447. package/dist/index.es59.js +63 -31
  448. package/dist/index.es59.js.map +1 -1
  449. package/dist/index.es6.js +105 -41
  450. package/dist/index.es6.js.map +1 -1
  451. package/dist/index.es60.js +212 -8
  452. package/dist/index.es60.js.map +1 -1
  453. package/dist/index.es61.js +32 -10
  454. package/dist/index.es61.js.map +1 -1
  455. package/dist/index.es62.js +8 -186
  456. package/dist/index.es62.js.map +1 -1
  457. package/dist/index.es63.js +11 -15
  458. package/dist/index.es63.js.map +1 -1
  459. package/dist/index.es64.js +183 -1396
  460. package/dist/index.es64.js.map +1 -1
  461. package/dist/index.es65.js +24 -9
  462. package/dist/index.es65.js.map +1 -1
  463. package/dist/index.es66.js +1400 -8
  464. package/dist/index.es66.js.map +1 -1
  465. package/dist/index.es67.js +9 -6
  466. package/dist/index.es67.js.map +1 -1
  467. package/dist/index.es68.js +8 -5
  468. package/dist/index.es68.js.map +1 -1
  469. package/dist/index.es69.js +6 -5
  470. package/dist/index.es69.js.map +1 -1
  471. package/dist/index.es70.js +161 -10
  472. package/dist/index.es70.js.map +1 -1
  473. package/dist/index.es71.js +671 -22
  474. package/dist/index.es71.js.map +1 -1
  475. package/dist/index.es72.js +10 -32
  476. package/dist/index.es72.js.map +1 -1
  477. package/dist/index.es73.js +31 -223
  478. package/dist/index.es73.js.map +1 -1
  479. package/dist/index.es74.js +32 -66
  480. package/dist/index.es74.js.map +1 -1
  481. package/dist/index.es75.js +203 -40
  482. package/dist/index.es75.js.map +1 -1
  483. package/dist/index.es76.js +28 -55
  484. package/dist/index.es76.js.map +1 -1
  485. package/dist/index.es77.js +75 -13
  486. package/dist/index.es77.js.map +1 -1
  487. package/dist/index.es78.js +72 -133
  488. package/dist/index.es78.js.map +1 -1
  489. package/dist/index.es79.js +51 -20
  490. package/dist/index.es79.js.map +1 -1
  491. package/dist/index.es80.js +26 -178
  492. package/dist/index.es80.js.map +1 -1
  493. package/dist/index.es81.js +38 -236
  494. package/dist/index.es81.js.map +1 -1
  495. package/dist/index.es82.js +50 -348
  496. package/dist/index.es82.js.map +1 -1
  497. package/dist/index.es83.js +13 -137
  498. package/dist/index.es83.js.map +1 -1
  499. package/dist/index.es84.js +132 -65
  500. package/dist/index.es84.js.map +1 -1
  501. package/dist/index.es85.js +21 -37
  502. package/dist/index.es85.js.map +1 -1
  503. package/dist/index.es86.js +179 -34
  504. package/dist/index.es86.js.map +1 -1
  505. package/dist/index.es87.js +230 -155
  506. package/dist/index.es87.js.map +1 -1
  507. package/dist/index.es88.js +341 -189
  508. package/dist/index.es88.js.map +1 -1
  509. package/dist/index.es89.js +136 -13
  510. package/dist/index.es89.js.map +1 -1
  511. package/dist/index.es90.js +68 -28
  512. package/dist/index.es90.js.map +1 -1
  513. package/dist/index.es91.js +33 -30
  514. package/dist/index.es91.js.map +1 -1
  515. package/dist/index.es92.js +36 -3156
  516. package/dist/index.es92.js.map +1 -1
  517. package/dist/index.es93.js +162 -77
  518. package/dist/index.es93.js.map +1 -1
  519. package/dist/index.es94.js +203 -2
  520. package/dist/index.es94.js.map +1 -1
  521. package/dist/index.es95.js +13 -9
  522. package/dist/index.es95.js.map +1 -1
  523. package/dist/index.es96.js +28 -273
  524. package/dist/index.es96.js.map +1 -1
  525. package/dist/index.es97.js +34 -2
  526. package/dist/index.es97.js.map +1 -1
  527. package/dist/index.es98.js +3138 -145
  528. package/dist/index.es98.js.map +1 -1
  529. package/dist/index.es99.js +35 -49
  530. package/dist/index.es99.js.map +1 -1
  531. package/dist/styles.css +1 -1
  532. package/package.json +6 -7
  533. package/src/App.tsx +4 -1
@@ -1,39 +1,97 @@
1
- import { _mergeDicts } from "./index.es32.js";
2
- function mergeResponseMetadata(a, b) {
3
- const output = _mergeDicts(a ?? {}, b ?? {});
4
- return output;
5
- }
6
- function mergeModalitiesTokenDetails(a, b) {
7
- const output = {};
8
- if (a?.audio !== void 0 || b?.audio !== void 0) output.audio = (a?.audio ?? 0) + (b?.audio ?? 0);
9
- if (a?.image !== void 0 || b?.image !== void 0) output.image = (a?.image ?? 0) + (b?.image ?? 0);
10
- if (a?.video !== void 0 || b?.video !== void 0) output.video = (a?.video ?? 0) + (b?.video ?? 0);
11
- if (a?.document !== void 0 || b?.document !== void 0) output.document = (a?.document ?? 0) + (b?.document ?? 0);
12
- if (a?.text !== void 0 || b?.text !== void 0) output.text = (a?.text ?? 0) + (b?.text ?? 0);
13
- return output;
14
- }
15
- function mergeInputTokenDetails(a, b) {
16
- const output = { ...mergeModalitiesTokenDetails(a, b) };
17
- if (a?.cache_read !== void 0 || b?.cache_read !== void 0) output.cache_read = (a?.cache_read ?? 0) + (b?.cache_read ?? 0);
18
- if (a?.cache_creation !== void 0 || b?.cache_creation !== void 0) output.cache_creation = (a?.cache_creation ?? 0) + (b?.cache_creation ?? 0);
19
- return output;
20
- }
21
- function mergeOutputTokenDetails(a, b) {
22
- const output = { ...mergeModalitiesTokenDetails(a, b) };
23
- if (a?.reasoning !== void 0 || b?.reasoning !== void 0) output.reasoning = (a?.reasoning ?? 0) + (b?.reasoning ?? 0);
24
- return output;
25
- }
26
- function mergeUsageMetadata(a, b) {
1
+ function isDataContentBlock(content_block) {
2
+ return typeof content_block === "object" && content_block !== null && "type" in content_block && typeof content_block.type === "string" && "source_type" in content_block && (content_block.source_type === "url" || content_block.source_type === "base64" || content_block.source_type === "text" || content_block.source_type === "id");
3
+ }
4
+ function isURLContentBlock(content_block) {
5
+ return isDataContentBlock(content_block) && content_block.source_type === "url" && "url" in content_block && typeof content_block.url === "string";
6
+ }
7
+ function isBase64ContentBlock(content_block) {
8
+ return isDataContentBlock(content_block) && content_block.source_type === "base64" && "data" in content_block && typeof content_block.data === "string";
9
+ }
10
+ function isPlainTextContentBlock(content_block) {
11
+ return isDataContentBlock(content_block) && content_block.source_type === "text" && "text" in content_block && typeof content_block.text === "string";
12
+ }
13
+ function isIDContentBlock(content_block) {
14
+ return isDataContentBlock(content_block) && content_block.source_type === "id" && "id" in content_block && typeof content_block.id === "string";
15
+ }
16
+ function convertToOpenAIImageBlock(content_block) {
17
+ if (isDataContentBlock(content_block)) {
18
+ if (content_block.source_type === "url") return {
19
+ type: "image_url",
20
+ image_url: { url: content_block.url }
21
+ };
22
+ if (content_block.source_type === "base64") {
23
+ if (!content_block.mime_type) throw new Error("mime_type key is required for base64 data.");
24
+ const mime_type = content_block.mime_type;
25
+ return {
26
+ type: "image_url",
27
+ image_url: { url: `data:${mime_type};base64,${content_block.data}` }
28
+ };
29
+ }
30
+ }
31
+ throw new Error("Unsupported source type. Only 'url' and 'base64' are supported.");
32
+ }
33
+ function parseMimeType(mime_type) {
34
+ const parts = mime_type.split(";")[0].split("/");
35
+ if (parts.length !== 2) throw new Error(`Invalid mime type: "${mime_type}" - does not match type/subtype format.`);
36
+ const type = parts[0].trim();
37
+ const subtype = parts[1].trim();
38
+ if (type === "" || subtype === "") throw new Error(`Invalid mime type: "${mime_type}" - type or subtype is empty.`);
39
+ const parameters = {};
40
+ for (const parameterKvp of mime_type.split(";").slice(1)) {
41
+ const parameterParts = parameterKvp.split("=");
42
+ if (parameterParts.length !== 2) throw new Error(`Invalid parameter syntax in mime type: "${mime_type}".`);
43
+ const key = parameterParts[0].trim();
44
+ const value = parameterParts[1].trim();
45
+ if (key === "") throw new Error(`Invalid parameter syntax in mime type: "${mime_type}".`);
46
+ parameters[key] = value;
47
+ }
27
48
  return {
28
- input_tokens: (a?.input_tokens ?? 0) + (b?.input_tokens ?? 0),
29
- output_tokens: (a?.output_tokens ?? 0) + (b?.output_tokens ?? 0),
30
- total_tokens: (a?.total_tokens ?? 0) + (b?.total_tokens ?? 0),
31
- input_token_details: mergeInputTokenDetails(a?.input_token_details, b?.input_token_details),
32
- output_token_details: mergeOutputTokenDetails(a?.output_token_details, b?.output_token_details)
49
+ type,
50
+ subtype,
51
+ parameters
33
52
  };
34
53
  }
54
+ function parseBase64DataUrl({ dataUrl: data_url, asTypedArray = false }) {
55
+ const formatMatch = data_url.match(/^data:(\w+\/\w+);base64,([A-Za-z0-9+/]+=*)$/);
56
+ let mime_type;
57
+ if (formatMatch) {
58
+ mime_type = formatMatch[1].toLowerCase();
59
+ const data = asTypedArray ? Uint8Array.from(atob(formatMatch[2]), (c) => c.charCodeAt(0)) : formatMatch[2];
60
+ return {
61
+ mime_type,
62
+ data
63
+ };
64
+ }
65
+ return void 0;
66
+ }
67
+ function convertToProviderContentBlock(block, converter) {
68
+ if (block.type === "text") {
69
+ if (!converter.fromStandardTextBlock) throw new Error(`Converter for ${converter.providerName} does not implement \`fromStandardTextBlock\` method.`);
70
+ return converter.fromStandardTextBlock(block);
71
+ }
72
+ if (block.type === "image") {
73
+ if (!converter.fromStandardImageBlock) throw new Error(`Converter for ${converter.providerName} does not implement \`fromStandardImageBlock\` method.`);
74
+ return converter.fromStandardImageBlock(block);
75
+ }
76
+ if (block.type === "audio") {
77
+ if (!converter.fromStandardAudioBlock) throw new Error(`Converter for ${converter.providerName} does not implement \`fromStandardAudioBlock\` method.`);
78
+ return converter.fromStandardAudioBlock(block);
79
+ }
80
+ if (block.type === "file") {
81
+ if (!converter.fromStandardFileBlock) throw new Error(`Converter for ${converter.providerName} does not implement \`fromStandardFileBlock\` method.`);
82
+ return converter.fromStandardFileBlock(block);
83
+ }
84
+ throw new Error(`Unable to convert content block type '${block.type}' to provider-specific format: not recognized.`);
85
+ }
35
86
  export {
36
- mergeResponseMetadata,
37
- mergeUsageMetadata
87
+ convertToOpenAIImageBlock,
88
+ convertToProviderContentBlock,
89
+ isBase64ContentBlock,
90
+ isDataContentBlock,
91
+ isIDContentBlock,
92
+ isPlainTextContentBlock,
93
+ isURLContentBlock,
94
+ parseBase64DataUrl,
95
+ parseMimeType
38
96
  };
39
97
  //# sourceMappingURL=index.es47.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es47.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.8_openai@6.15.0_zod@4.3.5_/node_modules/@langchain/core/dist/messages/metadata.js"],"sourcesContent":["import { _mergeDicts } from \"./base.js\";\n\n//#region src/messages/metadata.ts\nfunction mergeResponseMetadata(a, b) {\n\tconst output = _mergeDicts(a ?? {}, b ?? {});\n\treturn output;\n}\nfunction mergeModalitiesTokenDetails(a, b) {\n\tconst output = {};\n\tif (a?.audio !== void 0 || b?.audio !== void 0) output.audio = (a?.audio ?? 0) + (b?.audio ?? 0);\n\tif (a?.image !== void 0 || b?.image !== void 0) output.image = (a?.image ?? 0) + (b?.image ?? 0);\n\tif (a?.video !== void 0 || b?.video !== void 0) output.video = (a?.video ?? 0) + (b?.video ?? 0);\n\tif (a?.document !== void 0 || b?.document !== void 0) output.document = (a?.document ?? 0) + (b?.document ?? 0);\n\tif (a?.text !== void 0 || b?.text !== void 0) output.text = (a?.text ?? 0) + (b?.text ?? 0);\n\treturn output;\n}\nfunction mergeInputTokenDetails(a, b) {\n\tconst output = { ...mergeModalitiesTokenDetails(a, b) };\n\tif (a?.cache_read !== void 0 || b?.cache_read !== void 0) output.cache_read = (a?.cache_read ?? 0) + (b?.cache_read ?? 0);\n\tif (a?.cache_creation !== void 0 || b?.cache_creation !== void 0) output.cache_creation = (a?.cache_creation ?? 0) + (b?.cache_creation ?? 0);\n\treturn output;\n}\nfunction mergeOutputTokenDetails(a, b) {\n\tconst output = { ...mergeModalitiesTokenDetails(a, b) };\n\tif (a?.reasoning !== void 0 || b?.reasoning !== void 0) output.reasoning = (a?.reasoning ?? 0) + (b?.reasoning ?? 0);\n\treturn output;\n}\nfunction mergeUsageMetadata(a, b) {\n\treturn {\n\t\tinput_tokens: (a?.input_tokens ?? 0) + (b?.input_tokens ?? 0),\n\t\toutput_tokens: (a?.output_tokens ?? 0) + (b?.output_tokens ?? 0),\n\t\ttotal_tokens: (a?.total_tokens ?? 0) + (b?.total_tokens ?? 0),\n\t\tinput_token_details: mergeInputTokenDetails(a?.input_token_details, b?.input_token_details),\n\t\toutput_token_details: mergeOutputTokenDetails(a?.output_token_details, b?.output_token_details)\n\t};\n}\n\n//#endregion\nexport { mergeResponseMetadata, mergeUsageMetadata };\n//# sourceMappingURL=metadata.js.map"],"names":[],"mappings":";AAGA,SAAS,sBAAsB,GAAG,GAAG;AACpC,QAAM,SAAS,YAAY,KAAK,CAAA,GAAI,KAAK,CAAA,CAAE;AAC3C,SAAO;AACR;AACA,SAAS,4BAA4B,GAAG,GAAG;AAC1C,QAAM,SAAS,CAAA;AACf,MAAI,GAAG,UAAU,UAAU,GAAG,UAAU,OAAQ,QAAO,SAAS,GAAG,SAAS,MAAM,GAAG,SAAS;AAC9F,MAAI,GAAG,UAAU,UAAU,GAAG,UAAU,OAAQ,QAAO,SAAS,GAAG,SAAS,MAAM,GAAG,SAAS;AAC9F,MAAI,GAAG,UAAU,UAAU,GAAG,UAAU,OAAQ,QAAO,SAAS,GAAG,SAAS,MAAM,GAAG,SAAS;AAC9F,MAAI,GAAG,aAAa,UAAU,GAAG,aAAa,OAAQ,QAAO,YAAY,GAAG,YAAY,MAAM,GAAG,YAAY;AAC7G,MAAI,GAAG,SAAS,UAAU,GAAG,SAAS,OAAQ,QAAO,QAAQ,GAAG,QAAQ,MAAM,GAAG,QAAQ;AACzF,SAAO;AACR;AACA,SAAS,uBAAuB,GAAG,GAAG;AACrC,QAAM,SAAS,EAAE,GAAG,4BAA4B,GAAG,CAAC,EAAC;AACrD,MAAI,GAAG,eAAe,UAAU,GAAG,eAAe,OAAQ,QAAO,cAAc,GAAG,cAAc,MAAM,GAAG,cAAc;AACvH,MAAI,GAAG,mBAAmB,UAAU,GAAG,mBAAmB,OAAQ,QAAO,kBAAkB,GAAG,kBAAkB,MAAM,GAAG,kBAAkB;AAC3I,SAAO;AACR;AACA,SAAS,wBAAwB,GAAG,GAAG;AACtC,QAAM,SAAS,EAAE,GAAG,4BAA4B,GAAG,CAAC,EAAC;AACrD,MAAI,GAAG,cAAc,UAAU,GAAG,cAAc,OAAQ,QAAO,aAAa,GAAG,aAAa,MAAM,GAAG,aAAa;AAClH,SAAO;AACR;AACA,SAAS,mBAAmB,GAAG,GAAG;AACjC,SAAO;AAAA,IACN,eAAe,GAAG,gBAAgB,MAAM,GAAG,gBAAgB;AAAA,IAC3D,gBAAgB,GAAG,iBAAiB,MAAM,GAAG,iBAAiB;AAAA,IAC9D,eAAe,GAAG,gBAAgB,MAAM,GAAG,gBAAgB;AAAA,IAC3D,qBAAqB,uBAAuB,GAAG,qBAAqB,GAAG,mBAAmB;AAAA,IAC1F,sBAAsB,wBAAwB,GAAG,sBAAsB,GAAG,oBAAoB;AAAA,EAChG;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es47.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/messages/content/data.js"],"sourcesContent":["//#region src/messages/content/data.ts\n/**\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction isDataContentBlock(content_block) {\n\treturn typeof content_block === \"object\" && content_block !== null && \"type\" in content_block && typeof content_block.type === \"string\" && \"source_type\" in content_block && (content_block.source_type === \"url\" || content_block.source_type === \"base64\" || content_block.source_type === \"text\" || content_block.source_type === \"id\");\n}\n/**\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction isURLContentBlock(content_block) {\n\treturn isDataContentBlock(content_block) && content_block.source_type === \"url\" && \"url\" in content_block && typeof content_block.url === \"string\";\n}\n/**\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction isBase64ContentBlock(content_block) {\n\treturn isDataContentBlock(content_block) && content_block.source_type === \"base64\" && \"data\" in content_block && typeof content_block.data === \"string\";\n}\n/**\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction isPlainTextContentBlock(content_block) {\n\treturn isDataContentBlock(content_block) && content_block.source_type === \"text\" && \"text\" in content_block && typeof content_block.text === \"string\";\n}\n/**\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction isIDContentBlock(content_block) {\n\treturn isDataContentBlock(content_block) && content_block.source_type === \"id\" && \"id\" in content_block && typeof content_block.id === \"string\";\n}\n/**\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction convertToOpenAIImageBlock(content_block) {\n\tif (isDataContentBlock(content_block)) {\n\t\tif (content_block.source_type === \"url\") return {\n\t\t\ttype: \"image_url\",\n\t\t\timage_url: { url: content_block.url }\n\t\t};\n\t\tif (content_block.source_type === \"base64\") {\n\t\t\tif (!content_block.mime_type) throw new Error(\"mime_type key is required for base64 data.\");\n\t\t\tconst mime_type = content_block.mime_type;\n\t\t\treturn {\n\t\t\t\ttype: \"image_url\",\n\t\t\t\timage_url: { url: `data:${mime_type};base64,${content_block.data}` }\n\t\t\t};\n\t\t}\n\t}\n\tthrow new Error(\"Unsupported source type. Only 'url' and 'base64' are supported.\");\n}\n/**\n* Utility function for ChatModelProviders. Parses a mime type into a type, subtype, and parameters.\n*\n* @param mime_type - The mime type to parse.\n* @returns An object containing the type, subtype, and parameters.\n*\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction parseMimeType(mime_type) {\n\tconst parts = mime_type.split(\";\")[0].split(\"/\");\n\tif (parts.length !== 2) throw new Error(`Invalid mime type: \"${mime_type}\" - does not match type/subtype format.`);\n\tconst type = parts[0].trim();\n\tconst subtype = parts[1].trim();\n\tif (type === \"\" || subtype === \"\") throw new Error(`Invalid mime type: \"${mime_type}\" - type or subtype is empty.`);\n\tconst parameters = {};\n\tfor (const parameterKvp of mime_type.split(\";\").slice(1)) {\n\t\tconst parameterParts = parameterKvp.split(\"=\");\n\t\tif (parameterParts.length !== 2) throw new Error(`Invalid parameter syntax in mime type: \"${mime_type}\".`);\n\t\tconst key = parameterParts[0].trim();\n\t\tconst value = parameterParts[1].trim();\n\t\tif (key === \"\") throw new Error(`Invalid parameter syntax in mime type: \"${mime_type}\".`);\n\t\tparameters[key] = value;\n\t}\n\treturn {\n\t\ttype,\n\t\tsubtype,\n\t\tparameters\n\t};\n}\n/**\n* Utility function for ChatModelProviders. Parses a base64 data URL into a typed array or string.\n*\n* @param dataUrl - The base64 data URL to parse.\n* @param asTypedArray - Whether to return the data as a typed array.\n* @returns The parsed data and mime type, or undefined if the data URL is invalid.\n*\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction parseBase64DataUrl({ dataUrl: data_url, asTypedArray = false }) {\n\tconst formatMatch = data_url.match(/^data:(\\w+\\/\\w+);base64,([A-Za-z0-9+/]+=*)$/);\n\tlet mime_type;\n\tif (formatMatch) {\n\t\tmime_type = formatMatch[1].toLowerCase();\n\t\tconst data = asTypedArray ? Uint8Array.from(atob(formatMatch[2]), (c) => c.charCodeAt(0)) : formatMatch[2];\n\t\treturn {\n\t\t\tmime_type,\n\t\t\tdata\n\t\t};\n\t}\n\treturn void 0;\n}\n/**\n* Convert from a standard data content block to a provider's proprietary data content block format.\n*\n* Don't override this method. Instead, override the more specific conversion methods and use this\n* method unmodified.\n*\n* @param block - The standard data content block to convert.\n* @returns The provider data content block.\n* @throws An error if the standard data content block type is not supported.\n*\n* @deprecated Don't use data content blocks. Use {@link ContentBlock.Multimodal.Data} instead.\n*/\nfunction convertToProviderContentBlock(block, converter) {\n\tif (block.type === \"text\") {\n\t\tif (!converter.fromStandardTextBlock) throw new Error(`Converter for ${converter.providerName} does not implement \\`fromStandardTextBlock\\` method.`);\n\t\treturn converter.fromStandardTextBlock(block);\n\t}\n\tif (block.type === \"image\") {\n\t\tif (!converter.fromStandardImageBlock) throw new Error(`Converter for ${converter.providerName} does not implement \\`fromStandardImageBlock\\` method.`);\n\t\treturn converter.fromStandardImageBlock(block);\n\t}\n\tif (block.type === \"audio\") {\n\t\tif (!converter.fromStandardAudioBlock) throw new Error(`Converter for ${converter.providerName} does not implement \\`fromStandardAudioBlock\\` method.`);\n\t\treturn converter.fromStandardAudioBlock(block);\n\t}\n\tif (block.type === \"file\") {\n\t\tif (!converter.fromStandardFileBlock) throw new Error(`Converter for ${converter.providerName} does not implement \\`fromStandardFileBlock\\` method.`);\n\t\treturn converter.fromStandardFileBlock(block);\n\t}\n\tthrow new Error(`Unable to convert content block type '${block.type}' to provider-specific format: not recognized.`);\n}\n\n//#endregion\nexport { convertToOpenAIImageBlock, convertToProviderContentBlock, isBase64ContentBlock, isDataContentBlock, isIDContentBlock, isPlainTextContentBlock, isURLContentBlock, parseBase64DataUrl, parseMimeType };\n//# sourceMappingURL=data.js.map"],"names":[],"mappings":"AAIA,SAAS,mBAAmB,eAAe;AAC1C,SAAO,OAAO,kBAAkB,YAAY,kBAAkB,QAAQ,UAAU,iBAAiB,OAAO,cAAc,SAAS,YAAY,iBAAiB,kBAAkB,cAAc,gBAAgB,SAAS,cAAc,gBAAgB,YAAY,cAAc,gBAAgB,UAAU,cAAc,gBAAgB;AACtU;AAIA,SAAS,kBAAkB,eAAe;AACzC,SAAO,mBAAmB,aAAa,KAAK,cAAc,gBAAgB,SAAS,SAAS,iBAAiB,OAAO,cAAc,QAAQ;AAC3I;AAIA,SAAS,qBAAqB,eAAe;AAC5C,SAAO,mBAAmB,aAAa,KAAK,cAAc,gBAAgB,YAAY,UAAU,iBAAiB,OAAO,cAAc,SAAS;AAChJ;AAIA,SAAS,wBAAwB,eAAe;AAC/C,SAAO,mBAAmB,aAAa,KAAK,cAAc,gBAAgB,UAAU,UAAU,iBAAiB,OAAO,cAAc,SAAS;AAC9I;AAIA,SAAS,iBAAiB,eAAe;AACxC,SAAO,mBAAmB,aAAa,KAAK,cAAc,gBAAgB,QAAQ,QAAQ,iBAAiB,OAAO,cAAc,OAAO;AACxI;AAIA,SAAS,0BAA0B,eAAe;AACjD,MAAI,mBAAmB,aAAa,GAAG;AACtC,QAAI,cAAc,gBAAgB,MAAO,QAAO;AAAA,MAC/C,MAAM;AAAA,MACN,WAAW,EAAE,KAAK,cAAc,IAAG;AAAA,IACtC;AACE,QAAI,cAAc,gBAAgB,UAAU;AAC3C,UAAI,CAAC,cAAc,UAAW,OAAM,IAAI,MAAM,4CAA4C;AAC1F,YAAM,YAAY,cAAc;AAChC,aAAO;AAAA,QACN,MAAM;AAAA,QACN,WAAW,EAAE,KAAK,QAAQ,SAAS,WAAW,cAAc,IAAI,GAAE;AAAA,MACtE;AAAA,IACE;AAAA,EACD;AACA,QAAM,IAAI,MAAM,iEAAiE;AAClF;AASA,SAAS,cAAc,WAAW;AACjC,QAAM,QAAQ,UAAU,MAAM,GAAG,EAAE,CAAC,EAAE,MAAM,GAAG;AAC/C,MAAI,MAAM,WAAW,EAAG,OAAM,IAAI,MAAM,uBAAuB,SAAS,yCAAyC;AACjH,QAAM,OAAO,MAAM,CAAC,EAAE,KAAI;AAC1B,QAAM,UAAU,MAAM,CAAC,EAAE,KAAI;AAC7B,MAAI,SAAS,MAAM,YAAY,GAAI,OAAM,IAAI,MAAM,uBAAuB,SAAS,+BAA+B;AAClH,QAAM,aAAa,CAAA;AACnB,aAAW,gBAAgB,UAAU,MAAM,GAAG,EAAE,MAAM,CAAC,GAAG;AACzD,UAAM,iBAAiB,aAAa,MAAM,GAAG;AAC7C,QAAI,eAAe,WAAW,EAAG,OAAM,IAAI,MAAM,2CAA2C,SAAS,IAAI;AACzG,UAAM,MAAM,eAAe,CAAC,EAAE,KAAI;AAClC,UAAM,QAAQ,eAAe,CAAC,EAAE,KAAI;AACpC,QAAI,QAAQ,GAAI,OAAM,IAAI,MAAM,2CAA2C,SAAS,IAAI;AACxF,eAAW,GAAG,IAAI;AAAA,EACnB;AACA,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACA;AAUA,SAAS,mBAAmB,EAAE,SAAS,UAAU,eAAe,MAAK,GAAI;AACxE,QAAM,cAAc,SAAS,MAAM,6CAA6C;AAChF,MAAI;AACJ,MAAI,aAAa;AAChB,gBAAY,YAAY,CAAC,EAAE,YAAW;AACtC,UAAM,OAAO,eAAe,WAAW,KAAK,KAAK,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,IAAI,YAAY,CAAC;AACzG,WAAO;AAAA,MACN;AAAA,MACA;AAAA,IACH;AAAA,EACC;AACA,SAAO;AACR;AAaA,SAAS,8BAA8B,OAAO,WAAW;AACxD,MAAI,MAAM,SAAS,QAAQ;AAC1B,QAAI,CAAC,UAAU,sBAAuB,OAAM,IAAI,MAAM,iBAAiB,UAAU,YAAY,uDAAuD;AACpJ,WAAO,UAAU,sBAAsB,KAAK;AAAA,EAC7C;AACA,MAAI,MAAM,SAAS,SAAS;AAC3B,QAAI,CAAC,UAAU,uBAAwB,OAAM,IAAI,MAAM,iBAAiB,UAAU,YAAY,wDAAwD;AACtJ,WAAO,UAAU,uBAAuB,KAAK;AAAA,EAC9C;AACA,MAAI,MAAM,SAAS,SAAS;AAC3B,QAAI,CAAC,UAAU,uBAAwB,OAAM,IAAI,MAAM,iBAAiB,UAAU,YAAY,wDAAwD;AACtJ,WAAO,UAAU,uBAAuB,KAAK;AAAA,EAC9C;AACA,MAAI,MAAM,SAAS,QAAQ;AAC1B,QAAI,CAAC,UAAU,sBAAuB,OAAM,IAAI,MAAM,iBAAiB,UAAU,YAAY,uDAAuD;AACpJ,WAAO,UAAU,sBAAsB,KAAK;AAAA,EAC7C;AACA,QAAM,IAAI,MAAM,yCAAyC,MAAM,IAAI,gDAAgD;AACpH;","x_google_ignoreList":[0]}
@@ -1,75 +1,7 @@
1
- import { BaseMessageChunk, _mergeDicts, mergeContent, BaseMessage } from "./index.es32.js";
2
- var ChatMessage = class ChatMessage2 extends BaseMessage {
3
- static lc_name() {
4
- return "ChatMessage";
5
- }
6
- type = "generic";
7
- role;
8
- static _chatMessageClass() {
9
- return ChatMessage2;
10
- }
11
- constructor(fields, role) {
12
- if (typeof fields === "string" || Array.isArray(fields)) fields = {
13
- content: fields,
14
- role
15
- };
16
- super(fields);
17
- this.role = fields.role;
18
- }
19
- static isInstance(obj) {
20
- return super.isInstance(obj) && obj.type === "generic";
21
- }
22
- get _printableFields() {
23
- return {
24
- ...super._printableFields,
25
- role: this.role
26
- };
27
- }
28
- };
29
- var ChatMessageChunk = class extends BaseMessageChunk {
30
- static lc_name() {
31
- return "ChatMessageChunk";
32
- }
33
- type = "generic";
34
- role;
35
- constructor(fields, role) {
36
- if (typeof fields === "string" || Array.isArray(fields)) fields = {
37
- content: fields,
38
- role
39
- };
40
- super(fields);
41
- this.role = fields.role;
42
- }
43
- concat(chunk) {
44
- const Cls = this.constructor;
45
- return new Cls({
46
- content: mergeContent(this.content, chunk.content),
47
- additional_kwargs: _mergeDicts(this.additional_kwargs, chunk.additional_kwargs),
48
- response_metadata: _mergeDicts(this.response_metadata, chunk.response_metadata),
49
- role: this.role,
50
- id: this.id ?? chunk.id
51
- });
52
- }
53
- static isInstance(obj) {
54
- return super.isInstance(obj) && obj.type === "generic";
55
- }
56
- get _printableFields() {
57
- return {
58
- ...super._printableFields,
59
- role: this.role
60
- };
61
- }
62
- };
63
- function isChatMessage(x) {
64
- return x._getType() === "generic";
65
- }
66
- function isChatMessageChunk(x) {
67
- return x._getType() === "generic";
1
+ function isMessage(message) {
2
+ return typeof message === "object" && message !== null && "type" in message && "content" in message && (typeof message.content === "string" || Array.isArray(message.content));
68
3
  }
69
4
  export {
70
- ChatMessage,
71
- ChatMessageChunk,
72
- isChatMessage,
73
- isChatMessageChunk
5
+ isMessage
74
6
  };
75
7
  //# sourceMappingURL=index.es48.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es48.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.8_openai@6.15.0_zod@4.3.5_/node_modules/@langchain/core/dist/messages/chat.js"],"sourcesContent":["import { BaseMessage, BaseMessageChunk, _mergeDicts, mergeContent } from \"./base.js\";\n\n//#region src/messages/chat.ts\n/**\n* Represents a chat message in a conversation.\n*/\nvar ChatMessage = class ChatMessage extends BaseMessage {\n\tstatic lc_name() {\n\t\treturn \"ChatMessage\";\n\t}\n\ttype = \"generic\";\n\trole;\n\tstatic _chatMessageClass() {\n\t\treturn ChatMessage;\n\t}\n\tconstructor(fields, role) {\n\t\tif (typeof fields === \"string\" || Array.isArray(fields)) fields = {\n\t\t\tcontent: fields,\n\t\t\trole\n\t\t};\n\t\tsuper(fields);\n\t\tthis.role = fields.role;\n\t}\n\tstatic isInstance(obj) {\n\t\treturn super.isInstance(obj) && obj.type === \"generic\";\n\t}\n\tget _printableFields() {\n\t\treturn {\n\t\t\t...super._printableFields,\n\t\t\trole: this.role\n\t\t};\n\t}\n};\n/**\n* Represents a chunk of a chat message, which can be concatenated with\n* other chat message chunks.\n*/\nvar ChatMessageChunk = class extends BaseMessageChunk {\n\tstatic lc_name() {\n\t\treturn \"ChatMessageChunk\";\n\t}\n\ttype = \"generic\";\n\trole;\n\tconstructor(fields, role) {\n\t\tif (typeof fields === \"string\" || Array.isArray(fields)) fields = {\n\t\t\tcontent: fields,\n\t\t\trole\n\t\t};\n\t\tsuper(fields);\n\t\tthis.role = fields.role;\n\t}\n\tconcat(chunk) {\n\t\tconst Cls = this.constructor;\n\t\treturn new Cls({\n\t\t\tcontent: mergeContent(this.content, chunk.content),\n\t\t\tadditional_kwargs: _mergeDicts(this.additional_kwargs, chunk.additional_kwargs),\n\t\t\tresponse_metadata: _mergeDicts(this.response_metadata, chunk.response_metadata),\n\t\t\trole: this.role,\n\t\t\tid: this.id ?? chunk.id\n\t\t});\n\t}\n\tstatic isInstance(obj) {\n\t\treturn super.isInstance(obj) && obj.type === \"generic\";\n\t}\n\tget _printableFields() {\n\t\treturn {\n\t\t\t...super._printableFields,\n\t\t\trole: this.role\n\t\t};\n\t}\n};\n/**\n* @deprecated Use {@link ChatMessage.isInstance} instead\n*/\nfunction isChatMessage(x) {\n\treturn x._getType() === \"generic\";\n}\n/**\n* @deprecated Use {@link ChatMessageChunk.isInstance} instead\n*/\nfunction isChatMessageChunk(x) {\n\treturn x._getType() === \"generic\";\n}\n\n//#endregion\nexport { ChatMessage, ChatMessageChunk, isChatMessage, isChatMessageChunk };\n//# sourceMappingURL=chat.js.map"],"names":["ChatMessage"],"mappings":";AAMG,IAAC,cAAc,MAAMA,qBAAoB,YAAY;AAAA,EACvD,OAAO,UAAU;AAChB,WAAO;AAAA,EACR;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,OAAO,oBAAoB;AAC1B,WAAOA;AAAA,EACR;AAAA,EACA,YAAY,QAAQ,MAAM;AACzB,QAAI,OAAO,WAAW,YAAY,MAAM,QAAQ,MAAM,EAAG,UAAS;AAAA,MACjE,SAAS;AAAA,MACT;AAAA,IACH;AACE,UAAM,MAAM;AACZ,SAAK,OAAO,OAAO;AAAA,EACpB;AAAA,EACA,OAAO,WAAW,KAAK;AACtB,WAAO,MAAM,WAAW,GAAG,KAAK,IAAI,SAAS;AAAA,EAC9C;AAAA,EACA,IAAI,mBAAmB;AACtB,WAAO;AAAA,MACN,GAAG,MAAM;AAAA,MACT,MAAM,KAAK;AAAA,IACd;AAAA,EACC;AACD;AAKG,IAAC,mBAAmB,cAAc,iBAAiB;AAAA,EACrD,OAAO,UAAU;AAChB,WAAO;AAAA,EACR;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,YAAY,QAAQ,MAAM;AACzB,QAAI,OAAO,WAAW,YAAY,MAAM,QAAQ,MAAM,EAAG,UAAS;AAAA,MACjE,SAAS;AAAA,MACT;AAAA,IACH;AACE,UAAM,MAAM;AACZ,SAAK,OAAO,OAAO;AAAA,EACpB;AAAA,EACA,OAAO,OAAO;AACb,UAAM,MAAM,KAAK;AACjB,WAAO,IAAI,IAAI;AAAA,MACd,SAAS,aAAa,KAAK,SAAS,MAAM,OAAO;AAAA,MACjD,mBAAmB,YAAY,KAAK,mBAAmB,MAAM,iBAAiB;AAAA,MAC9E,mBAAmB,YAAY,KAAK,mBAAmB,MAAM,iBAAiB;AAAA,MAC9E,MAAM,KAAK;AAAA,MACX,IAAI,KAAK,MAAM,MAAM;AAAA,IACxB,CAAG;AAAA,EACF;AAAA,EACA,OAAO,WAAW,KAAK;AACtB,WAAO,MAAM,WAAW,GAAG,KAAK,IAAI,SAAS;AAAA,EAC9C;AAAA,EACA,IAAI,mBAAmB;AACtB,WAAO;AAAA,MACN,GAAG,MAAM;AAAA,MACT,MAAM,KAAK;AAAA,IACd;AAAA,EACC;AACD;AAIA,SAAS,cAAc,GAAG;AACzB,SAAO,EAAE,SAAQ,MAAO;AACzB;AAIA,SAAS,mBAAmB,GAAG;AAC9B,SAAO,EAAE,SAAQ,MAAO;AACzB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es48.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/messages/message.js"],"sourcesContent":["//#region src/messages/message.ts\n/**\n* Type guard to check if a value is a valid Message object.\n*\n* @param message - The value to check\n* @returns true if the value is a valid Message object, false otherwise\n*/\nfunction isMessage(message) {\n\treturn typeof message === \"object\" && message !== null && \"type\" in message && \"content\" in message && (typeof message.content === \"string\" || Array.isArray(message.content));\n}\n\n//#endregion\nexport { isMessage };\n//# sourceMappingURL=message.js.map"],"names":[],"mappings":"AAOA,SAAS,UAAU,SAAS;AAC3B,SAAO,OAAO,YAAY,YAAY,YAAY,QAAQ,UAAU,WAAW,aAAa,YAAY,OAAO,QAAQ,YAAY,YAAY,MAAM,QAAQ,QAAQ,OAAO;AAC7K;","x_google_ignoreList":[0]}
@@ -1,41 +1,39 @@
1
- import { BaseMessageChunk, _mergeDicts, mergeContent, BaseMessage } from "./index.es32.js";
2
- var FunctionMessage = class extends BaseMessage {
3
- static lc_name() {
4
- return "FunctionMessage";
5
- }
6
- type = "function";
7
- name;
8
- constructor(fields) {
9
- super(fields);
10
- this.name = fields.name;
11
- }
12
- };
13
- var FunctionMessageChunk = class extends BaseMessageChunk {
14
- static lc_name() {
15
- return "FunctionMessageChunk";
16
- }
17
- type = "function";
18
- concat(chunk) {
19
- const Cls = this.constructor;
20
- return new Cls({
21
- content: mergeContent(this.content, chunk.content),
22
- additional_kwargs: _mergeDicts(this.additional_kwargs, chunk.additional_kwargs),
23
- response_metadata: _mergeDicts(this.response_metadata, chunk.response_metadata),
24
- name: this.name ?? "",
25
- id: this.id ?? chunk.id
26
- });
27
- }
28
- };
29
- function isFunctionMessage(x) {
30
- return x._getType() === "function";
1
+ import { _mergeDicts } from "./index.es35.js";
2
+ function mergeResponseMetadata(a, b) {
3
+ const output = _mergeDicts(a, b) ?? {};
4
+ return output;
5
+ }
6
+ function mergeModalitiesTokenDetails(a, b) {
7
+ const output = {};
8
+ if (a?.audio !== void 0 || b?.audio !== void 0) output.audio = (a?.audio ?? 0) + (b?.audio ?? 0);
9
+ if (a?.image !== void 0 || b?.image !== void 0) output.image = (a?.image ?? 0) + (b?.image ?? 0);
10
+ if (a?.video !== void 0 || b?.video !== void 0) output.video = (a?.video ?? 0) + (b?.video ?? 0);
11
+ if (a?.document !== void 0 || b?.document !== void 0) output.document = (a?.document ?? 0) + (b?.document ?? 0);
12
+ if (a?.text !== void 0 || b?.text !== void 0) output.text = (a?.text ?? 0) + (b?.text ?? 0);
13
+ return output;
14
+ }
15
+ function mergeInputTokenDetails(a, b) {
16
+ const output = { ...mergeModalitiesTokenDetails(a, b) };
17
+ if (a?.cache_read !== void 0 || b?.cache_read !== void 0) output.cache_read = (a?.cache_read ?? 0) + (b?.cache_read ?? 0);
18
+ if (a?.cache_creation !== void 0 || b?.cache_creation !== void 0) output.cache_creation = (a?.cache_creation ?? 0) + (b?.cache_creation ?? 0);
19
+ return output;
20
+ }
21
+ function mergeOutputTokenDetails(a, b) {
22
+ const output = { ...mergeModalitiesTokenDetails(a, b) };
23
+ if (a?.reasoning !== void 0 || b?.reasoning !== void 0) output.reasoning = (a?.reasoning ?? 0) + (b?.reasoning ?? 0);
24
+ return output;
31
25
  }
32
- function isFunctionMessageChunk(x) {
33
- return x._getType() === "function";
26
+ function mergeUsageMetadata(a, b) {
27
+ return {
28
+ input_tokens: (a?.input_tokens ?? 0) + (b?.input_tokens ?? 0),
29
+ output_tokens: (a?.output_tokens ?? 0) + (b?.output_tokens ?? 0),
30
+ total_tokens: (a?.total_tokens ?? 0) + (b?.total_tokens ?? 0),
31
+ input_token_details: mergeInputTokenDetails(a?.input_token_details, b?.input_token_details),
32
+ output_token_details: mergeOutputTokenDetails(a?.output_token_details, b?.output_token_details)
33
+ };
34
34
  }
35
35
  export {
36
- FunctionMessage,
37
- FunctionMessageChunk,
38
- isFunctionMessage,
39
- isFunctionMessageChunk
36
+ mergeResponseMetadata,
37
+ mergeUsageMetadata
40
38
  };
41
39
  //# sourceMappingURL=index.es49.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es49.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.8_openai@6.15.0_zod@4.3.5_/node_modules/@langchain/core/dist/messages/function.js"],"sourcesContent":["import { BaseMessage, BaseMessageChunk, _mergeDicts, mergeContent } from \"./base.js\";\n\n//#region src/messages/function.ts\n/**\n* Represents a function message in a conversation.\n*/\nvar FunctionMessage = class extends BaseMessage {\n\tstatic lc_name() {\n\t\treturn \"FunctionMessage\";\n\t}\n\ttype = \"function\";\n\tname;\n\tconstructor(fields) {\n\t\tsuper(fields);\n\t\tthis.name = fields.name;\n\t}\n};\n/**\n* Represents a chunk of a function message, which can be concatenated\n* with other function message chunks.\n*/\nvar FunctionMessageChunk = class extends BaseMessageChunk {\n\tstatic lc_name() {\n\t\treturn \"FunctionMessageChunk\";\n\t}\n\ttype = \"function\";\n\tconcat(chunk) {\n\t\tconst Cls = this.constructor;\n\t\treturn new Cls({\n\t\t\tcontent: mergeContent(this.content, chunk.content),\n\t\t\tadditional_kwargs: _mergeDicts(this.additional_kwargs, chunk.additional_kwargs),\n\t\t\tresponse_metadata: _mergeDicts(this.response_metadata, chunk.response_metadata),\n\t\t\tname: this.name ?? \"\",\n\t\t\tid: this.id ?? chunk.id\n\t\t});\n\t}\n};\nfunction isFunctionMessage(x) {\n\treturn x._getType() === \"function\";\n}\nfunction isFunctionMessageChunk(x) {\n\treturn x._getType() === \"function\";\n}\n\n//#endregion\nexport { FunctionMessage, FunctionMessageChunk, isFunctionMessage, isFunctionMessageChunk };\n//# sourceMappingURL=function.js.map"],"names":[],"mappings":";AAMG,IAAC,kBAAkB,cAAc,YAAY;AAAA,EAC/C,OAAO,UAAU;AAChB,WAAO;AAAA,EACR;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,YAAY,QAAQ;AACnB,UAAM,MAAM;AACZ,SAAK,OAAO,OAAO;AAAA,EACpB;AACD;AAKG,IAAC,uBAAuB,cAAc,iBAAiB;AAAA,EACzD,OAAO,UAAU;AAChB,WAAO;AAAA,EACR;AAAA,EACA,OAAO;AAAA,EACP,OAAO,OAAO;AACb,UAAM,MAAM,KAAK;AACjB,WAAO,IAAI,IAAI;AAAA,MACd,SAAS,aAAa,KAAK,SAAS,MAAM,OAAO;AAAA,MACjD,mBAAmB,YAAY,KAAK,mBAAmB,MAAM,iBAAiB;AAAA,MAC9E,mBAAmB,YAAY,KAAK,mBAAmB,MAAM,iBAAiB;AAAA,MAC9E,MAAM,KAAK,QAAQ;AAAA,MACnB,IAAI,KAAK,MAAM,MAAM;AAAA,IACxB,CAAG;AAAA,EACF;AACD;AACA,SAAS,kBAAkB,GAAG;AAC7B,SAAO,EAAE,SAAQ,MAAO;AACzB;AACA,SAAS,uBAAuB,GAAG;AAClC,SAAO,EAAE,SAAQ,MAAO;AACzB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es49.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/messages/metadata.js"],"sourcesContent":["import { _mergeDicts } from \"./base.js\";\n\n//#region src/messages/metadata.ts\nfunction mergeResponseMetadata(a, b) {\n\tconst output = _mergeDicts(a, b) ?? {};\n\treturn output;\n}\nfunction mergeModalitiesTokenDetails(a, b) {\n\tconst output = {};\n\tif (a?.audio !== void 0 || b?.audio !== void 0) output.audio = (a?.audio ?? 0) + (b?.audio ?? 0);\n\tif (a?.image !== void 0 || b?.image !== void 0) output.image = (a?.image ?? 0) + (b?.image ?? 0);\n\tif (a?.video !== void 0 || b?.video !== void 0) output.video = (a?.video ?? 0) + (b?.video ?? 0);\n\tif (a?.document !== void 0 || b?.document !== void 0) output.document = (a?.document ?? 0) + (b?.document ?? 0);\n\tif (a?.text !== void 0 || b?.text !== void 0) output.text = (a?.text ?? 0) + (b?.text ?? 0);\n\treturn output;\n}\nfunction mergeInputTokenDetails(a, b) {\n\tconst output = { ...mergeModalitiesTokenDetails(a, b) };\n\tif (a?.cache_read !== void 0 || b?.cache_read !== void 0) output.cache_read = (a?.cache_read ?? 0) + (b?.cache_read ?? 0);\n\tif (a?.cache_creation !== void 0 || b?.cache_creation !== void 0) output.cache_creation = (a?.cache_creation ?? 0) + (b?.cache_creation ?? 0);\n\treturn output;\n}\nfunction mergeOutputTokenDetails(a, b) {\n\tconst output = { ...mergeModalitiesTokenDetails(a, b) };\n\tif (a?.reasoning !== void 0 || b?.reasoning !== void 0) output.reasoning = (a?.reasoning ?? 0) + (b?.reasoning ?? 0);\n\treturn output;\n}\nfunction mergeUsageMetadata(a, b) {\n\treturn {\n\t\tinput_tokens: (a?.input_tokens ?? 0) + (b?.input_tokens ?? 0),\n\t\toutput_tokens: (a?.output_tokens ?? 0) + (b?.output_tokens ?? 0),\n\t\ttotal_tokens: (a?.total_tokens ?? 0) + (b?.total_tokens ?? 0),\n\t\tinput_token_details: mergeInputTokenDetails(a?.input_token_details, b?.input_token_details),\n\t\toutput_token_details: mergeOutputTokenDetails(a?.output_token_details, b?.output_token_details)\n\t};\n}\n\n//#endregion\nexport { mergeResponseMetadata, mergeUsageMetadata };\n//# sourceMappingURL=metadata.js.map"],"names":[],"mappings":";AAGA,SAAS,sBAAsB,GAAG,GAAG;AACpC,QAAM,SAAS,YAAY,GAAG,CAAC,KAAK,CAAA;AACpC,SAAO;AACR;AACA,SAAS,4BAA4B,GAAG,GAAG;AAC1C,QAAM,SAAS,CAAA;AACf,MAAI,GAAG,UAAU,UAAU,GAAG,UAAU,OAAQ,QAAO,SAAS,GAAG,SAAS,MAAM,GAAG,SAAS;AAC9F,MAAI,GAAG,UAAU,UAAU,GAAG,UAAU,OAAQ,QAAO,SAAS,GAAG,SAAS,MAAM,GAAG,SAAS;AAC9F,MAAI,GAAG,UAAU,UAAU,GAAG,UAAU,OAAQ,QAAO,SAAS,GAAG,SAAS,MAAM,GAAG,SAAS;AAC9F,MAAI,GAAG,aAAa,UAAU,GAAG,aAAa,OAAQ,QAAO,YAAY,GAAG,YAAY,MAAM,GAAG,YAAY;AAC7G,MAAI,GAAG,SAAS,UAAU,GAAG,SAAS,OAAQ,QAAO,QAAQ,GAAG,QAAQ,MAAM,GAAG,QAAQ;AACzF,SAAO;AACR;AACA,SAAS,uBAAuB,GAAG,GAAG;AACrC,QAAM,SAAS,EAAE,GAAG,4BAA4B,GAAG,CAAC,EAAC;AACrD,MAAI,GAAG,eAAe,UAAU,GAAG,eAAe,OAAQ,QAAO,cAAc,GAAG,cAAc,MAAM,GAAG,cAAc;AACvH,MAAI,GAAG,mBAAmB,UAAU,GAAG,mBAAmB,OAAQ,QAAO,kBAAkB,GAAG,kBAAkB,MAAM,GAAG,kBAAkB;AAC3I,SAAO;AACR;AACA,SAAS,wBAAwB,GAAG,GAAG;AACtC,QAAM,SAAS,EAAE,GAAG,4BAA4B,GAAG,CAAC,EAAC;AACrD,MAAI,GAAG,cAAc,UAAU,GAAG,cAAc,OAAQ,QAAO,aAAa,GAAG,aAAa,MAAM,GAAG,aAAa;AAClH,SAAO;AACR;AACA,SAAS,mBAAmB,GAAG,GAAG;AACjC,SAAO;AAAA,IACN,eAAe,GAAG,gBAAgB,MAAM,GAAG,gBAAgB;AAAA,IAC3D,gBAAgB,GAAG,iBAAiB,MAAM,GAAG,iBAAiB;AAAA,IAC9D,eAAe,GAAG,gBAAgB,MAAM,GAAG,gBAAgB;AAAA,IAC3D,qBAAqB,uBAAuB,GAAG,qBAAqB,GAAG,mBAAmB;AAAA,IAC1F,sBAAsB,wBAAwB,GAAG,sBAAsB,GAAG,oBAAoB;AAAA,EAChG;AACA;","x_google_ignoreList":[0]}
package/dist/index.es5.js CHANGED
@@ -1,13 +1,55 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { createContext, useState, useContext } from "react";
2
+ import { getApiKey } from "@langchain/langgraph-sdk";
3
+ import { createContext, useContext, useState, useCallback } from "react";
4
+ import { validate } from "uuid";
5
+ import { useChatRuntime } from "./index.es4.js";
6
+ import { createClient } from "./index.es14.js";
3
7
  const ThreadContext = createContext(void 0);
8
+ function getThreadSearchMetadata(assistantId) {
9
+ if (validate(assistantId)) {
10
+ return { assistant_id: assistantId };
11
+ } else {
12
+ return { graph_id: assistantId };
13
+ }
14
+ }
4
15
  function ThreadProvider({ children }) {
16
+ const { apiUrl, assistantId } = useChatRuntime();
17
+ const [threads, setThreads] = useState([]);
18
+ const [threadsLoading, setThreadsLoading] = useState(false);
5
19
  const [threadId, setThreadId] = useState(null);
6
20
  const [configuration, setConfiguration] = useState();
21
+ const [mode, setMode] = useState("single");
22
+ const getThreads = useCallback(async () => {
23
+ if (!apiUrl || !assistantId) return [];
24
+ const client = createClient(apiUrl, getApiKey("") ?? void 0);
25
+ const threads2 = await client.threads.search({
26
+ metadata: {
27
+ ...getThreadSearchMetadata(assistantId)
28
+ },
29
+ limit: 100
30
+ });
31
+ return threads2;
32
+ }, [apiUrl, assistantId]);
33
+ const deleteThread = useCallback(async (threadIdToDelete) => {
34
+ if (!apiUrl) return;
35
+ const client = createClient(apiUrl, getApiKey("") ?? void 0);
36
+ await client.threads.delete(threadIdToDelete);
37
+ setThreads((prev) => prev.filter((t) => t.thread_id !== threadIdToDelete));
38
+ if (threadId === threadIdToDelete) {
39
+ setThreadId(null);
40
+ }
41
+ }, [apiUrl, threadId]);
42
+ const updateThread = useCallback(async (threadIdToUpdate, metadata) => {
43
+ if (!apiUrl) return;
44
+ const client = createClient(apiUrl, getApiKey("") ?? void 0);
45
+ await client.threads.update(threadIdToUpdate, { metadata });
46
+ const updatedThreads = await getThreads();
47
+ setThreads(updatedThreads);
48
+ }, [apiUrl, getThreads]);
7
49
  return /* @__PURE__ */ jsx(
8
50
  ThreadContext.Provider,
9
51
  {
10
- value: { threadId, setThreadId, configuration, setConfiguration },
52
+ value: { mode, setMode, threadId, setThreadId, getThreads, threads, setThreads, configuration, setConfiguration, threadsLoading, setThreadsLoading, deleteThread, updateThread },
11
53
  children
12
54
  }
13
55
  );
@@ -1 +1 @@
1
- {"version":3,"file":"index.es5.js","sources":["../src/providers/Thread.tsx"],"sourcesContent":["import { createContext, useContext, type ReactNode, useState } from \"react\";\n\n/**\n * Thread context manages the current conversation thread ID and configuration.\n * A thread represents a single conversation session with the AI.\n */\n\ninterface ThreadContextType {\n /** Current thread ID, null if no thread exists yet */\n threadId: string | null;\n /** Set or update the current thread ID */\n setThreadId: (id: string) => void;\n /** Thread-specific configuration passed to the LangGraph API */\n configuration: any;\n /** Update thread configuration */\n setConfiguration: (config: any) => void;\n}\n\nconst ThreadContext = createContext<ThreadContextType | undefined>(undefined);\n\n/**\n * Provides thread management for chat conversations.\n * Stores the current thread ID and configuration.\n * \n * @example\n * ```tsx\n * <ThreadProvider>\n * <YourChatComponent />\n * </ThreadProvider>\n * ```\n */\nexport function ThreadProvider({ children }: { children: ReactNode }) {\n const [threadId, setThreadId] = useState<string | null>(null);\n const [configuration, setConfiguration] = useState<any>();\n\n return (\n <ThreadContext.Provider\n value={{ threadId, setThreadId, configuration, setConfiguration }}\n >\n {children}\n </ThreadContext.Provider>\n );\n}\n\n/**\n * Hook to access the current thread context.\n * Use this to get or set the thread ID and configuration.\n * \n * @throws {Error} If used outside of ThreadProvider\n * \n * @example\n * ```tsx\n * const { threadId, setThreadId, configuration, setConfiguration } = useThread();\n * ```\n */\nexport function useThread() {\n const context = useContext(ThreadContext);\n if (!context) {\n throw new Error(\"useThread must be used within a ThreadProvider\");\n }\n return context;\n}\n"],"names":[],"mappings":";;AAkBA,MAAM,gBAAgB,cAA6C,MAAS;AAarE,SAAS,eAAe,EAAE,YAAqC;AACpE,QAAM,CAAC,UAAU,WAAW,IAAI,SAAwB,IAAI;AAC5D,QAAM,CAAC,eAAe,gBAAgB,IAAI,SAAA;AAE1C,SACE;AAAA,IAAC,cAAc;AAAA,IAAd;AAAA,MACC,OAAO,EAAE,UAAU,aAAa,eAAe,iBAAA;AAAA,MAE9C;AAAA,IAAA;AAAA,EAAA;AAGP;AAaO,SAAS,YAAY;AAC1B,QAAM,UAAU,WAAW,aAAa;AACxC,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,gDAAgD;AAAA,EAClE;AACA,SAAO;AACT;"}
1
+ {"version":3,"file":"index.es5.js","sources":["../src/providers/Thread.tsx"],"sourcesContent":["import { getApiKey, type Thread } from \"@langchain/langgraph-sdk\";\nimport { createContext, useCallback, useContext, useState, type Dispatch, type ReactNode, type SetStateAction } from \"react\";\nimport { validate } from \"uuid\";\nimport { useChatRuntime } from \"./ChatRuntime\";\nimport { createClient } from \"./client\";\n/**\n * Thread context manages the current conversation thread ID and configuration.\n * A thread represents a single conversation session with the AI.\n */\n\nexport type ThreadMode = \"single\" | \"multi\";\n\n\ninterface ThreadContextType {\n /** Current thread ID, null if no thread exists yet */\n threadId: string | null;\n /** Set or update the current thread ID */\n setThreadId: (id: string | null) => void;\n /** List of existing threads */\n threads: Thread[];\n /** Function to fetch existing threads from the API */\n getThreads: () => Promise<Thread[]>;\n /** Function to update the list of threads */\n setThreads: Dispatch<SetStateAction<Thread[]>>;\n /** Thread-specific configuration passed to the LangGraph API */\n configuration: any;\n /** Update thread configuration */\n setConfiguration: (config: any) => void;\n /** Whether threads are currently being loaded */\n threadsLoading: boolean;\n /** Set the loading state for threads */\n setThreadsLoading: Dispatch<SetStateAction<boolean>>;\n\n mode: ThreadMode;\n setMode: Dispatch<SetStateAction<ThreadMode>>;\n /** Delete a thread by ID */\n deleteThread: (threadId: string) => Promise<void>;\n /** Update thread metadata */\n updateThread: (threadId: string, metadata: Record<string, any>) => Promise<void>;\n // createNewThread: () => void;\n // clearThread: () => void;\n}\n\n\nconst ThreadContext = createContext<ThreadContextType | undefined>(undefined);\n\nfunction getThreadSearchMetadata(\n assistantId: string,\n): { graph_id: string } | { assistant_id: string } {\n if (validate(assistantId)) {\n return { assistant_id: assistantId };\n } else {\n return { graph_id: assistantId };\n }\n}\n\n/**\n * Provides thread management for chat conversations.\n * Stores the current thread ID and configuration.\n * \n * @example\n * ```tsx\n * <ThreadProvider>\n * <YourChatComponent />\n * </ThreadProvider>\n * ```\n */\nexport function ThreadProvider({ children }: { children: ReactNode }) {\n\n const { apiUrl, assistantId } = useChatRuntime();\n const [threads, setThreads] = useState<Thread[]>([]);\n const [threadsLoading, setThreadsLoading] = useState(false);\n\n const [threadId, setThreadId] = useState<string | null>(null);\n const [configuration, setConfiguration] = useState<any>();\n\n const [mode, setMode] = useState<ThreadMode>(\"single\");\n\n\n const getThreads = useCallback(async (): Promise<Thread[]> => {\n if (!apiUrl || !assistantId) return [];\n const client = createClient(apiUrl, getApiKey(\"\") ?? undefined);\n\n const threads = await client.threads.search({\n metadata: {\n ...getThreadSearchMetadata(assistantId),\n },\n limit: 100,\n });\n\n return threads;\n }, [apiUrl, assistantId]);\n\n const deleteThread = useCallback(async (threadIdToDelete: string) => {\n if (!apiUrl) return;\n const client = createClient(apiUrl, getApiKey(\"\") ?? undefined);\n \n await client.threads.delete(threadIdToDelete);\n \n // Update local state\n setThreads(prev => prev.filter(t => t.thread_id !== threadIdToDelete));\n \n // Clear current thread if it was deleted\n if (threadId === threadIdToDelete) {\n setThreadId(null);\n }\n }, [apiUrl, threadId]);\n\n const updateThread = useCallback(async (threadIdToUpdate: string, metadata: Record<string, any>) => {\n if (!apiUrl) return;\n const client = createClient(apiUrl, getApiKey(\"\") ?? undefined);\n \n await client.threads.update(threadIdToUpdate, { metadata });\n \n // Refresh threads to get updated data\n const updatedThreads = await getThreads();\n setThreads(updatedThreads);\n }, [apiUrl, getThreads]);\n\n return (\n <ThreadContext.Provider\n value={{ mode, setMode, threadId, setThreadId, getThreads, threads, setThreads, configuration, setConfiguration, threadsLoading, setThreadsLoading, deleteThread, updateThread }}\n >\n {children}\n </ThreadContext.Provider>\n );\n}\n\n/**\n * Hook to access the current thread context.\n * Use this to get or set the thread ID and configuration.\n * \n * @throws {Error} If used outside of ThreadProvider\n * \n * @example\n * ```tsx\n * const { threadId, setThreadId, configuration, setConfiguration } = useThread();\n * ```\n */\nexport function useThread() {\n const context = useContext(ThreadContext);\n if (!context) {\n throw new Error(\"useThread must be used within a ThreadProvider\");\n }\n return context;\n}\n"],"names":["threads"],"mappings":";;;;;;AA4CA,MAAM,gBAAgB,cAA6C,MAAS;AAE5E,SAAS,wBACP,aACiD;AACjD,MAAI,SAAS,WAAW,GAAG;AACzB,WAAO,EAAE,cAAc,YAAA;AAAA,EACzB,OAAO;AACL,WAAO,EAAE,UAAU,YAAA;AAAA,EACrB;AACF;AAaO,SAAS,eAAe,EAAE,YAAqC;AAEpE,QAAM,EAAE,QAAQ,YAAA,IAAgB,eAAA;AAChC,QAAM,CAAC,SAAS,UAAU,IAAI,SAAmB,CAAA,CAAE;AACnD,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,SAAS,KAAK;AAE1D,QAAM,CAAC,UAAU,WAAW,IAAI,SAAwB,IAAI;AAC5D,QAAM,CAAC,eAAe,gBAAgB,IAAI,SAAA;AAE1C,QAAM,CAAC,MAAM,OAAO,IAAI,SAAqB,QAAQ;AAGrD,QAAM,aAAa,YAAY,YAA+B;AAC5D,QAAI,CAAC,UAAU,CAAC,oBAAoB,CAAA;AACpC,UAAM,SAAS,aAAa,QAAQ,UAAU,EAAE,KAAK,MAAS;AAE9D,UAAMA,WAAU,MAAM,OAAO,QAAQ,OAAO;AAAA,MAC1C,UAAU;AAAA,QACR,GAAG,wBAAwB,WAAW;AAAA,MAAA;AAAA,MAExC,OAAO;AAAA,IAAA,CACR;AAED,WAAOA;AAAAA,EACT,GAAG,CAAC,QAAQ,WAAW,CAAC;AAExB,QAAM,eAAe,YAAY,OAAO,qBAA6B;AACnE,QAAI,CAAC,OAAQ;AACb,UAAM,SAAS,aAAa,QAAQ,UAAU,EAAE,KAAK,MAAS;AAE9D,UAAM,OAAO,QAAQ,OAAO,gBAAgB;AAG5C,eAAW,UAAQ,KAAK,OAAO,OAAK,EAAE,cAAc,gBAAgB,CAAC;AAGrE,QAAI,aAAa,kBAAkB;AACjC,kBAAY,IAAI;AAAA,IAClB;AAAA,EACF,GAAG,CAAC,QAAQ,QAAQ,CAAC;AAErB,QAAM,eAAe,YAAY,OAAO,kBAA0B,aAAkC;AAClG,QAAI,CAAC,OAAQ;AACb,UAAM,SAAS,aAAa,QAAQ,UAAU,EAAE,KAAK,MAAS;AAE9D,UAAM,OAAO,QAAQ,OAAO,kBAAkB,EAAE,UAAU;AAG1D,UAAM,iBAAiB,MAAM,WAAA;AAC7B,eAAW,cAAc;AAAA,EAC3B,GAAG,CAAC,QAAQ,UAAU,CAAC;AAEvB,SACE;AAAA,IAAC,cAAc;AAAA,IAAd;AAAA,MACC,OAAO,EAAE,MAAM,SAAS,UAAU,aAAa,YAAY,SAAS,YAAY,eAAe,kBAAkB,gBAAgB,mBAAmB,cAAc,aAAA;AAAA,MAEjK;AAAA,IAAA;AAAA,EAAA;AAGP;AAaO,SAAS,YAAY;AAC1B,QAAM,UAAU,WAAW,aAAa;AACxC,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,gDAAgD;AAAA,EAClE;AACA,SAAO;AACT;"}