langgraph-ui-components 0.0.3 → 0.0.6

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 (536) hide show
  1. package/README.md +32 -0
  2. package/dist/index.es10.js +31 -16
  3. package/dist/index.es10.js.map +1 -1
  4. package/dist/index.es100.js +37 -5
  5. package/dist/index.es100.js.map +1 -1
  6. package/dist/index.es101.js +160 -67
  7. package/dist/index.es101.js.map +1 -1
  8. package/dist/index.es102.js +196 -30
  9. package/dist/index.es102.js.map +1 -1
  10. package/dist/index.es103.js +14 -5
  11. package/dist/index.es103.js.map +1 -1
  12. package/dist/index.es104.js +32 -2
  13. package/dist/index.es104.js.map +1 -1
  14. package/dist/index.es105.js +33 -10
  15. package/dist/index.es105.js.map +1 -1
  16. package/dist/index.es106.js +3110 -454
  17. package/dist/index.es106.js.map +1 -1
  18. package/dist/index.es107.js +5 -5
  19. package/dist/index.es108.js +2 -2
  20. package/dist/index.es109.js +12 -142
  21. package/dist/index.es109.js.map +1 -1
  22. package/dist/index.es11.js +146 -120
  23. package/dist/index.es11.js.map +1 -1
  24. package/dist/index.es110.js +11 -906
  25. package/dist/index.es110.js.map +1 -1
  26. package/dist/index.es111.js +483 -262
  27. package/dist/index.es111.js.map +1 -1
  28. package/dist/index.es112.js +7 -4
  29. package/dist/index.es112.js.map +1 -1
  30. package/dist/index.es113.js +2 -446
  31. package/dist/index.es113.js.map +1 -1
  32. package/dist/index.es114.js +141 -41
  33. package/dist/index.es114.js.map +1 -1
  34. package/dist/index.es115.js +904 -20
  35. package/dist/index.es115.js.map +1 -1
  36. package/dist/index.es116.js +267 -66
  37. package/dist/index.es116.js.map +1 -1
  38. package/dist/index.es117.js +3 -130
  39. package/dist/index.es117.js.map +1 -1
  40. package/dist/index.es118.js +437 -42
  41. package/dist/index.es118.js.map +1 -1
  42. package/dist/index.es119.js +46 -10
  43. package/dist/index.es119.js.map +1 -1
  44. package/dist/index.es12.js +13 -103
  45. package/dist/index.es12.js.map +1 -1
  46. package/dist/index.es120.js +22 -45
  47. package/dist/index.es120.js.map +1 -1
  48. package/dist/index.es121.js +72 -92
  49. package/dist/index.es121.js.map +1 -1
  50. package/dist/index.es122.js +126 -50
  51. package/dist/index.es122.js.map +1 -1
  52. package/dist/index.es123.js +46 -13
  53. package/dist/index.es123.js.map +1 -1
  54. package/dist/index.es124.js +9 -14
  55. package/dist/index.es124.js.map +1 -1
  56. package/dist/index.es125.js +45 -89
  57. package/dist/index.es125.js.map +1 -1
  58. package/dist/index.es126.js +99 -2
  59. package/dist/index.es126.js.map +1 -1
  60. package/dist/index.es127.js +48 -51
  61. package/dist/index.es127.js.map +1 -1
  62. package/dist/index.es128.js +14 -99
  63. package/dist/index.es128.js.map +1 -1
  64. package/dist/index.es129.js +88 -190
  65. package/dist/index.es129.js.map +1 -1
  66. package/dist/index.es13.js +126 -33
  67. package/dist/index.es13.js.map +1 -1
  68. package/dist/index.es130.js +2 -110
  69. package/dist/index.es130.js.map +1 -1
  70. package/dist/index.es131.js +163 -34
  71. package/dist/index.es131.js.map +1 -1
  72. package/dist/index.es132.js +2 -10
  73. package/dist/index.es132.js.map +1 -1
  74. package/dist/index.es133.js +55 -10
  75. package/dist/index.es133.js.map +1 -1
  76. package/dist/index.es134.js +99 -11
  77. package/dist/index.es134.js.map +1 -1
  78. package/dist/index.es135.js +181 -81
  79. package/dist/index.es135.js.map +1 -1
  80. package/dist/index.es136.js +105 -270
  81. package/dist/index.es136.js.map +1 -1
  82. package/dist/index.es137.js +35 -2
  83. package/dist/index.es137.js.map +1 -1
  84. package/dist/index.es138.js +10 -164
  85. package/dist/index.es138.js.map +1 -1
  86. package/dist/index.es139.js +11 -51
  87. package/dist/index.es139.js.map +1 -1
  88. package/dist/index.es140.js +11 -39
  89. package/dist/index.es140.js.map +1 -1
  90. package/dist/index.es141.js +89 -33
  91. package/dist/index.es141.js.map +1 -1
  92. package/dist/index.es142.js +264 -29
  93. package/dist/index.es142.js.map +1 -1
  94. package/dist/index.es143.js +2 -24
  95. package/dist/index.es143.js.map +1 -1
  96. package/dist/index.es144.js +158 -585
  97. package/dist/index.es144.js.map +1 -1
  98. package/dist/index.es145.js +44 -118
  99. package/dist/index.es145.js.map +1 -1
  100. package/dist/index.es146.js +34 -158
  101. package/dist/index.es146.js.map +1 -1
  102. package/dist/index.es147.js +35 -2
  103. package/dist/index.es147.js.map +1 -1
  104. package/dist/index.es148.js +40 -2
  105. package/dist/index.es148.js.map +1 -1
  106. package/dist/index.es149.js +24 -2
  107. package/dist/index.es149.js.map +1 -1
  108. package/dist/index.es15.js +15 -15
  109. package/dist/index.es150.js +589 -20
  110. package/dist/index.es150.js.map +1 -1
  111. package/dist/index.es151.js +125 -2
  112. package/dist/index.es151.js.map +1 -1
  113. package/dist/index.es152.js +3 -24
  114. package/dist/index.es152.js.map +1 -1
  115. package/dist/index.es153.js +2 -4
  116. package/dist/index.es153.js.map +1 -1
  117. package/dist/index.es154.js +2 -5
  118. package/dist/index.es154.js.map +1 -1
  119. package/dist/index.es155.js +22 -13
  120. package/dist/index.es155.js.map +1 -1
  121. package/dist/index.es156.js +2 -6
  122. package/dist/index.es156.js.map +1 -1
  123. package/dist/index.es157.js +25 -8
  124. package/dist/index.es157.js.map +1 -1
  125. package/dist/index.es158.js +5 -64
  126. package/dist/index.es158.js.map +1 -1
  127. package/dist/index.es159.js +12 -21
  128. package/dist/index.es159.js.map +1 -1
  129. package/dist/index.es16.js +2 -2
  130. package/dist/index.es160.js +5 -5
  131. package/dist/index.es160.js.map +1 -1
  132. package/dist/index.es161.js +8 -349
  133. package/dist/index.es161.js.map +1 -1
  134. package/dist/index.es162.js +1 -1
  135. package/dist/index.es163.js +1 -1
  136. package/dist/index.es164.js +3 -3
  137. package/dist/index.es165.js +63 -6
  138. package/dist/index.es165.js.map +1 -1
  139. package/dist/index.es166.js +21 -102
  140. package/dist/index.es166.js.map +1 -1
  141. package/dist/index.es167.js +5 -118
  142. package/dist/index.es167.js.map +1 -1
  143. package/dist/index.es168.js +330 -117
  144. package/dist/index.es168.js.map +1 -1
  145. package/dist/index.es169.js +6 -114
  146. package/dist/index.es169.js.map +1 -1
  147. package/dist/index.es17.js +2 -2
  148. package/dist/index.es170.js +103 -6
  149. package/dist/index.es170.js.map +1 -1
  150. package/dist/index.es171.js +119 -2
  151. package/dist/index.es171.js.map +1 -1
  152. package/dist/index.es172.js +134 -140
  153. package/dist/index.es172.js.map +1 -1
  154. package/dist/index.es173.js +115 -2
  155. package/dist/index.es173.js.map +1 -1
  156. package/dist/index.es174.js +6 -3737
  157. package/dist/index.es174.js.map +1 -1
  158. package/dist/index.es175.js +2 -342
  159. package/dist/index.es175.js.map +1 -1
  160. package/dist/index.es176.js +138 -105
  161. package/dist/index.es176.js.map +1 -1
  162. package/dist/index.es177.js +2 -133
  163. package/dist/index.es177.js.map +1 -1
  164. package/dist/index.es178.js +3734 -12
  165. package/dist/index.es178.js.map +1 -1
  166. package/dist/index.es179.js +326 -136
  167. package/dist/index.es179.js.map +1 -1
  168. package/dist/index.es180.js +107 -13
  169. package/dist/index.es180.js.map +1 -1
  170. package/dist/index.es181.js +131 -6
  171. package/dist/index.es181.js.map +1 -1
  172. package/dist/index.es182.js +13 -19
  173. package/dist/index.es182.js.map +1 -1
  174. package/dist/index.es183.js +139 -77
  175. package/dist/index.es183.js.map +1 -1
  176. package/dist/index.es184.js +13 -241
  177. package/dist/index.es184.js.map +1 -1
  178. package/dist/index.es185.js +8 -24
  179. package/dist/index.es185.js.map +1 -1
  180. package/dist/index.es186.js +21 -6
  181. package/dist/index.es186.js.map +1 -1
  182. package/dist/index.es187.js +90 -4
  183. package/dist/index.es187.js.map +1 -1
  184. package/dist/index.es188.js +240 -15
  185. package/dist/index.es188.js.map +1 -1
  186. package/dist/index.es189.js +24 -8
  187. package/dist/index.es189.js.map +1 -1
  188. package/dist/index.es19.js +15 -119
  189. package/dist/index.es19.js.map +1 -1
  190. package/dist/index.es190.js +5 -31
  191. package/dist/index.es190.js.map +1 -1
  192. package/dist/index.es191.js +4 -6
  193. package/dist/index.es191.js.map +1 -1
  194. package/dist/index.es192.js +17 -105
  195. package/dist/index.es192.js.map +1 -1
  196. package/dist/index.es193.js +6 -11
  197. package/dist/index.es193.js.map +1 -1
  198. package/dist/index.es194.js +32 -18
  199. package/dist/index.es194.js.map +1 -1
  200. package/dist/index.es195.js +6 -31
  201. package/dist/index.es195.js.map +1 -1
  202. package/dist/index.es196.js +106 -4
  203. package/dist/index.es196.js.map +1 -1
  204. package/dist/index.es197.js +12 -4
  205. package/dist/index.es197.js.map +1 -1
  206. package/dist/index.es198.js +17 -4
  207. package/dist/index.es198.js.map +1 -1
  208. package/dist/index.es199.js +21 -27
  209. package/dist/index.es199.js.map +1 -1
  210. package/dist/index.es2.js +25 -16
  211. package/dist/index.es2.js.map +1 -1
  212. package/dist/index.es20.js +37 -17
  213. package/dist/index.es20.js.map +1 -1
  214. package/dist/index.es200.js +3 -7
  215. package/dist/index.es200.js.map +1 -1
  216. package/dist/index.es201.js +3 -4
  217. package/dist/index.es201.js.map +1 -1
  218. package/dist/index.es202.js +5 -7
  219. package/dist/index.es202.js.map +1 -1
  220. package/dist/index.es203.js +36 -41
  221. package/dist/index.es203.js.map +1 -1
  222. package/dist/index.es204.js +5 -10
  223. package/dist/index.es204.js.map +1 -1
  224. package/dist/index.es205.js +5 -241
  225. package/dist/index.es205.js.map +1 -1
  226. package/dist/index.es206.js +5 -49
  227. package/dist/index.es206.js.map +1 -1
  228. package/dist/index.es207.js +29 -22
  229. package/dist/index.es207.js.map +1 -1
  230. package/dist/index.es208.js +10 -10
  231. package/dist/index.es208.js.map +1 -1
  232. package/dist/index.es209.js +241 -7
  233. package/dist/index.es209.js.map +1 -1
  234. package/dist/index.es21.js +27 -67
  235. package/dist/index.es21.js.map +1 -1
  236. package/dist/index.es210.js +50 -6
  237. package/dist/index.es210.js.map +1 -1
  238. package/dist/index.es211.js +30 -60
  239. package/dist/index.es211.js.map +1 -1
  240. package/dist/index.es212.js +11 -39
  241. package/dist/index.es212.js.map +1 -1
  242. package/dist/index.es213.js +7 -31
  243. package/dist/index.es213.js.map +1 -1
  244. package/dist/index.es214.js +6 -61
  245. package/dist/index.es214.js.map +1 -1
  246. package/dist/index.es215.js +58 -8
  247. package/dist/index.es215.js.map +1 -1
  248. package/dist/index.es216.js +34 -16
  249. package/dist/index.es216.js.map +1 -1
  250. package/dist/index.es217.js +31 -4
  251. package/dist/index.es217.js.map +1 -1
  252. package/dist/index.es218.js +58 -13
  253. package/dist/index.es218.js.map +1 -1
  254. package/dist/index.es219.js +14 -32
  255. package/dist/index.es219.js.map +1 -1
  256. package/dist/index.es22.js +140 -30
  257. package/dist/index.es22.js.map +1 -1
  258. package/dist/index.es220.js +23 -5
  259. package/dist/index.es220.js.map +1 -1
  260. package/dist/index.es221.js +4 -4
  261. package/dist/index.es221.js.map +1 -1
  262. package/dist/index.es222.js +16 -4
  263. package/dist/index.es222.js.map +1 -1
  264. package/dist/index.es223.js +32 -7
  265. package/dist/index.es223.js.map +1 -1
  266. package/dist/index.es224.js +4 -91
  267. package/dist/index.es224.js.map +1 -1
  268. package/dist/index.es225.js +4 -17
  269. package/dist/index.es225.js.map +1 -1
  270. package/dist/index.es226.js +5 -762
  271. package/dist/index.es226.js.map +1 -1
  272. package/dist/index.es227.js +8 -66
  273. package/dist/index.es227.js.map +1 -1
  274. package/dist/index.es228.js +83 -165
  275. package/dist/index.es228.js.map +1 -1
  276. package/dist/index.es229.js +16 -36
  277. package/dist/index.es229.js.map +1 -1
  278. package/dist/index.es23.js +17 -32
  279. package/dist/index.es23.js.map +1 -1
  280. package/dist/index.es230.js +761 -136
  281. package/dist/index.es230.js.map +1 -1
  282. package/dist/index.es231.js +66 -93
  283. package/dist/index.es231.js.map +1 -1
  284. package/dist/index.es232.js +172 -31
  285. package/dist/index.es232.js.map +1 -1
  286. package/dist/index.es233.js +129 -277
  287. package/dist/index.es233.js.map +1 -1
  288. package/dist/index.es234.js +92 -25
  289. package/dist/index.es234.js.map +1 -1
  290. package/dist/index.es235.js +31 -22
  291. package/dist/index.es235.js.map +1 -1
  292. package/dist/index.es236.js +284 -14
  293. package/dist/index.es236.js.map +1 -1
  294. package/dist/index.es237.js +24 -13
  295. package/dist/index.es237.js.map +1 -1
  296. package/dist/index.es238.js +17 -19
  297. package/dist/index.es238.js.map +1 -1
  298. package/dist/index.es239.js +12 -43
  299. package/dist/index.es239.js.map +1 -1
  300. package/dist/index.es24.js +57 -136
  301. package/dist/index.es24.js.map +1 -1
  302. package/dist/index.es240.js +14 -11
  303. package/dist/index.es240.js.map +1 -1
  304. package/dist/index.es241.js +24 -10
  305. package/dist/index.es241.js.map +1 -1
  306. package/dist/index.es242.js +45 -11
  307. package/dist/index.es242.js.map +1 -1
  308. package/dist/index.es243.js +11 -14
  309. package/dist/index.es243.js.map +1 -1
  310. package/dist/index.es244.js +10 -10
  311. package/dist/index.es244.js.map +1 -1
  312. package/dist/index.es245.js +11 -11
  313. package/dist/index.es245.js.map +1 -1
  314. package/dist/index.es246.js +14 -11
  315. package/dist/index.es246.js.map +1 -1
  316. package/dist/index.es247.js +10 -14
  317. package/dist/index.es247.js.map +1 -1
  318. package/dist/index.es248.js +11 -11
  319. package/dist/index.es248.js.map +1 -1
  320. package/dist/index.es249.js +11 -11
  321. package/dist/index.es249.js.map +1 -1
  322. package/dist/index.es25.js +298 -94
  323. package/dist/index.es25.js.map +1 -1
  324. package/dist/index.es250.js +15 -11
  325. package/dist/index.es250.js.map +1 -1
  326. package/dist/index.es251.js +11 -11
  327. package/dist/index.es251.js.map +1 -1
  328. package/dist/index.es252.js +11 -11
  329. package/dist/index.es252.js.map +1 -1
  330. package/dist/index.es253.js +10 -10
  331. package/dist/index.es253.js.map +1 -1
  332. package/dist/index.es254.js +10 -10
  333. package/dist/index.es254.js.map +1 -1
  334. package/dist/index.es255.js +10 -10
  335. package/dist/index.es255.js.map +1 -1
  336. package/dist/index.es256.js +11 -56
  337. package/dist/index.es256.js.map +1 -1
  338. package/dist/index.es257.js +11 -49
  339. package/dist/index.es257.js.map +1 -1
  340. package/dist/index.es258.js +11 -119
  341. package/dist/index.es258.js.map +1 -1
  342. package/dist/index.es259.js +56 -384
  343. package/dist/index.es259.js.map +1 -1
  344. package/dist/index.es26.js +116 -65
  345. package/dist/index.es26.js.map +1 -1
  346. package/dist/index.es260.js +47 -16
  347. package/dist/index.es260.js.map +1 -1
  348. package/dist/index.es261.js +118 -10
  349. package/dist/index.es261.js.map +1 -1
  350. package/dist/index.es262.js +379 -26
  351. package/dist/index.es262.js.map +1 -1
  352. package/dist/index.es263.js +13 -26
  353. package/dist/index.es263.js.map +1 -1
  354. package/dist/index.es264.js +10 -61
  355. package/dist/index.es264.js.map +1 -1
  356. package/dist/index.es265.js +25 -11
  357. package/dist/index.es265.js.map +1 -1
  358. package/dist/index.es266.js +25 -71
  359. package/dist/index.es266.js.map +1 -1
  360. package/dist/index.es267.js +62 -11
  361. package/dist/index.es267.js.map +1 -1
  362. package/dist/index.es268.js +17 -11
  363. package/dist/index.es268.js.map +1 -1
  364. package/dist/index.es269.js +75 -13
  365. package/dist/index.es269.js.map +1 -1
  366. package/dist/index.es27.js +91 -168
  367. package/dist/index.es27.js.map +1 -1
  368. package/dist/index.es270.js +11 -52
  369. package/dist/index.es270.js.map +1 -1
  370. package/dist/index.es271.js +11 -166
  371. package/dist/index.es271.js.map +1 -1
  372. package/dist/index.es272.js +16 -2
  373. package/dist/index.es272.js.map +1 -1
  374. package/dist/index.es273.js +51 -9
  375. package/dist/index.es273.js.map +1 -1
  376. package/dist/index.es274.js +165 -18
  377. package/dist/index.es274.js.map +1 -1
  378. package/dist/index.es275.js +36 -37
  379. package/dist/index.es275.js.map +1 -1
  380. package/dist/index.es276.js +5 -0
  381. package/dist/index.es276.js.map +1 -0
  382. package/dist/index.es277.js +14 -0
  383. package/dist/index.es277.js.map +1 -0
  384. package/dist/index.es278.js +23 -0
  385. package/dist/index.es278.js.map +1 -0
  386. package/dist/index.es279.js +42 -0
  387. package/dist/index.es279.js.map +1 -0
  388. package/dist/index.es28.js +68 -24
  389. package/dist/index.es28.js.map +1 -1
  390. package/dist/index.es29.js +178 -12
  391. package/dist/index.es29.js.map +1 -1
  392. package/dist/index.es30.js +23 -437
  393. package/dist/index.es30.js.map +1 -1
  394. package/dist/index.es31.js +13 -15
  395. package/dist/index.es31.js.map +1 -1
  396. package/dist/index.es32.js +429 -107
  397. package/dist/index.es32.js.map +1 -1
  398. package/dist/index.es33.js +112 -65
  399. package/dist/index.es33.js.map +1 -1
  400. package/dist/index.es34.js +71 -18
  401. package/dist/index.es34.js.map +1 -1
  402. package/dist/index.es35.js +17 -260
  403. package/dist/index.es35.js.map +1 -1
  404. package/dist/index.es36.js +249 -31
  405. package/dist/index.es36.js.map +1 -1
  406. package/dist/index.es37.js +27 -199
  407. package/dist/index.es37.js.map +1 -1
  408. package/dist/index.es38.js +198 -50
  409. package/dist/index.es38.js.map +1 -1
  410. package/dist/index.es39.js +45 -120
  411. package/dist/index.es39.js.map +1 -1
  412. package/dist/index.es40.js +132 -14
  413. package/dist/index.es40.js.map +1 -1
  414. package/dist/index.es41.js +19 -225
  415. package/dist/index.es41.js.map +1 -1
  416. package/dist/index.es42.js +229 -8
  417. package/dist/index.es42.js.map +1 -1
  418. package/dist/index.es43.js +7 -1190
  419. package/dist/index.es43.js.map +1 -1
  420. package/dist/index.es44.js +1191 -6
  421. package/dist/index.es44.js.map +1 -1
  422. package/dist/index.es45.js +6 -146
  423. package/dist/index.es45.js.map +1 -1
  424. package/dist/index.es46.js +147 -7
  425. package/dist/index.es46.js.map +1 -1
  426. package/dist/index.es47.js +15 -92
  427. package/dist/index.es47.js.map +1 -1
  428. package/dist/index.es49.js +5 -35
  429. package/dist/index.es49.js.map +1 -1
  430. package/dist/index.es50.js +7 -71
  431. package/dist/index.es50.js.map +1 -1
  432. package/dist/index.es51.js +89 -33
  433. package/dist/index.es51.js.map +1 -1
  434. package/dist/index.es52.js +3 -305
  435. package/dist/index.es52.js.map +1 -1
  436. package/dist/index.es53.js +36 -9
  437. package/dist/index.es53.js.map +1 -1
  438. package/dist/index.es54.js +64 -83
  439. package/dist/index.es54.js.map +1 -1
  440. package/dist/index.es55.js +36 -6
  441. package/dist/index.es55.js.map +1 -1
  442. package/dist/index.es56.js +303 -12
  443. package/dist/index.es56.js.map +1 -1
  444. package/dist/index.es57.js +9 -143
  445. package/dist/index.es57.js.map +1 -1
  446. package/dist/index.es58.js +83 -292
  447. package/dist/index.es58.js.map +1 -1
  448. package/dist/index.es59.js +6 -64
  449. package/dist/index.es59.js.map +1 -1
  450. package/dist/index.es6.js +21 -5
  451. package/dist/index.es6.js.map +1 -1
  452. package/dist/index.es60.js +12 -210
  453. package/dist/index.es60.js.map +1 -1
  454. package/dist/index.es61.js +138 -29
  455. package/dist/index.es61.js.map +1 -1
  456. package/dist/index.es62.js +299 -8
  457. package/dist/index.es62.js.map +1 -1
  458. package/dist/index.es63.js +65 -11
  459. package/dist/index.es63.js.map +1 -1
  460. package/dist/index.es64.js +201 -175
  461. package/dist/index.es64.js.map +1 -1
  462. package/dist/index.es65.js +33 -23
  463. package/dist/index.es65.js.map +1 -1
  464. package/dist/index.es66.js +8 -1399
  465. package/dist/index.es66.js.map +1 -1
  466. package/dist/index.es67.js +12 -9
  467. package/dist/index.es67.js.map +1 -1
  468. package/dist/index.es68.js +187 -8
  469. package/dist/index.es68.js.map +1 -1
  470. package/dist/index.es69.js +24 -6
  471. package/dist/index.es69.js.map +1 -1
  472. package/dist/index.es70.js +1384 -147
  473. package/dist/index.es70.js.map +1 -1
  474. package/dist/index.es71.js +9 -672
  475. package/dist/index.es71.js.map +1 -1
  476. package/dist/index.es72.js +8 -12
  477. package/dist/index.es72.js.map +1 -1
  478. package/dist/index.es73.js +6 -40
  479. package/dist/index.es73.js.map +1 -1
  480. package/dist/index.es74.js +155 -26
  481. package/dist/index.es74.js.map +1 -1
  482. package/dist/index.es75.js +657 -217
  483. package/dist/index.es75.js.map +1 -1
  484. package/dist/index.es76.js +11 -29
  485. package/dist/index.es76.js.map +1 -1
  486. package/dist/index.es77.js +37 -72
  487. package/dist/index.es77.js.map +1 -1
  488. package/dist/index.es78.js +32 -74
  489. package/dist/index.es78.js.map +1 -1
  490. package/dist/index.es79.js +226 -46
  491. package/dist/index.es79.js.map +1 -1
  492. package/dist/index.es80.js +6 -6
  493. package/dist/index.es80.js.map +1 -1
  494. package/dist/index.es81.js +71 -39
  495. package/dist/index.es81.js.map +1 -1
  496. package/dist/index.es82.js +73 -54
  497. package/dist/index.es82.js.map +1 -1
  498. package/dist/index.es83.js +52 -13
  499. package/dist/index.es83.js.map +1 -1
  500. package/dist/index.es84.js +28 -135
  501. package/dist/index.es84.js.map +1 -1
  502. package/dist/index.es85.js +42 -20
  503. package/dist/index.es85.js.map +1 -1
  504. package/dist/index.es86.js +36 -181
  505. package/dist/index.es86.js.map +1 -1
  506. package/dist/index.es87.js +5 -241
  507. package/dist/index.es87.js.map +1 -1
  508. package/dist/index.es88.js +65 -347
  509. package/dist/index.es88.js.map +1 -1
  510. package/dist/index.es89.js +31 -131
  511. package/dist/index.es89.js.map +1 -1
  512. package/dist/index.es90.js +49 -62
  513. package/dist/index.es90.js.map +1 -1
  514. package/dist/index.es91.js +13 -37
  515. package/dist/index.es91.js.map +1 -1
  516. package/dist/index.es92.js +134 -34
  517. package/dist/index.es92.js.map +1 -1
  518. package/dist/index.es93.js +20 -165
  519. package/dist/index.es93.js.map +1 -1
  520. package/dist/index.es94.js +162 -183
  521. package/dist/index.es94.js.map +1 -1
  522. package/dist/index.es95.js +240 -13
  523. package/dist/index.es95.js.map +1 -1
  524. package/dist/index.es96.js +352 -27
  525. package/dist/index.es96.js.map +1 -1
  526. package/dist/index.es97.js +130 -27
  527. package/dist/index.es97.js.map +1 -1
  528. package/dist/index.es98.js +64 -3151
  529. package/dist/index.es98.js.map +1 -1
  530. package/dist/index.es99.js +34 -34
  531. package/dist/index.es99.js.map +1 -1
  532. package/dist/langgraph-ui-components.css +107 -0
  533. package/dist/styles.css +1 -1
  534. package/package.json +8 -7
  535. package/dist/index.es48.js +0 -7
  536. package/dist/index.es48.js.map +0 -1
package/dist/index.es2.js CHANGED
@@ -1,20 +1,17 @@
1
1
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { v4 } from "uuid";
3
- import { useState, useEffect } from "react";
4
- import ChatButton from "./index.es10.js";
5
- import { AnimatePresence, motion } from "framer-motion";
6
- import ChatInput from "./index.es11.js";
7
- import ChatBody from "./index.es12.js";
8
- import { useStreamContext } from "./index.es6.js";
9
- import { X } from "lucide-react";
2
+ import Suggestion from "./index.es10.js";
10
3
  import { useFileProvider } from "./index.es7.js";
11
- import Suggestion from "./index.es13.js";
4
+ import { useStreamContext } from "./index.es6.js";
12
5
  import { useThread } from "./index.es5.js";
13
- function Sidebar({
14
- header = "AI Assistant",
15
- chatProps
16
- }) {
17
- const { handleFileSelect, callThisOnSubmit } = chatProps ?? {};
6
+ import { AnimatePresence, motion } from "framer-motion";
7
+ import { X } from "lucide-react";
8
+ import { useState, useEffect } from "react";
9
+ import { v4 } from "uuid";
10
+ import ChatBody from "./index.es11.js";
11
+ import ChatButton from "./index.es12.js";
12
+ import ChatInput from "./index.es13.js";
13
+ function Sidebar({ chatProps }) {
14
+ const { handleFileSelect, callThisOnSubmit, enableToolCallIndicator, header } = chatProps ?? {};
18
15
  const [open, setOpen] = useState(false);
19
16
  const [input, setInput] = useState("");
20
17
  const { fileInput, setFileInput } = useFileProvider();
@@ -76,6 +73,7 @@ function Sidebar({
76
73
  setFileInput((prevFile) => [...prevFile, ...fileDetails]);
77
74
  };
78
75
  const onFileSelect = handleFileSelect || defaultHandleFileSelect;
76
+ console.log("HEADER LOGO URL:", header);
79
77
  return /* @__PURE__ */ jsxs(Fragment, { children: [
80
78
  /* @__PURE__ */ jsx(AnimatePresence, { children: open && /* @__PURE__ */ jsxs(Fragment, { children: [
81
79
  /* @__PURE__ */ jsx(
@@ -98,7 +96,18 @@ function Sidebar({
98
96
  transition: { type: "spring", stiffness: 260, damping: 30 },
99
97
  children: /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col", children: [
100
98
  /* @__PURE__ */ jsxs("div", { className: "flex border-b border-zinc-800 py-4 px-6 justify-between items-center", children: [
101
- /* @__PURE__ */ jsx("div", { className: "text-start text-2xl font-bold", children: header }),
99
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
100
+ header?.logoUrl && // Render provided logo image if present
101
+ /* @__PURE__ */ jsx(
102
+ "img",
103
+ {
104
+ src: header?.logoUrl,
105
+ alt: header?.title ? `${header.title} logo` : "AI Assistant logo",
106
+ className: "h-8 w-8 object-contain rounded-sm"
107
+ }
108
+ ),
109
+ /* @__PURE__ */ jsx("div", { className: "text-start text-2xl font-bold", children: header?.title || "AI Assistant" })
110
+ ] }),
102
111
  /* @__PURE__ */ jsx(
103
112
  X,
104
113
  {
@@ -107,7 +116,7 @@ function Sidebar({
107
116
  }
108
117
  )
109
118
  ] }),
110
- /* @__PURE__ */ jsx("div", { className: "flex-1 overflow-auto scrollbar-none", children: /* @__PURE__ */ jsx("div", { className: "p-4", children: /* @__PURE__ */ jsx(ChatBody, {}) }) }),
119
+ /* @__PURE__ */ jsx("div", { className: "flex-1 overflow-auto scrollbar-none", children: /* @__PURE__ */ jsx("div", { className: "p-4", children: /* @__PURE__ */ jsx(ChatBody, { enableToolCallIndicator }) }) }),
111
120
  /* @__PURE__ */ jsx(Suggestion, {}),
112
121
  /* @__PURE__ */ jsx("div", { className: "sticky bottom-0 border-t border-zinc-800 m-2", children: /* @__PURE__ */ jsx(
113
122
  ChatInput,
@@ -1 +1 @@
1
- {"version":3,"file":"index.es2.js","sources":["../src/pages/Sidebar/sidebar.tsx"],"sourcesContent":["import { v4 as uuidv4 } from \"uuid\";\nimport { useEffect, useState, type FormEvent } from \"react\";\nimport ChatButton from \"../../components/ChatButton\";\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport ChatInput from \"../../components/sidebar/ChatInput\";\nimport ChatBody from \"../../components/ChatBody\";\nimport { useStreamContext } from \"@/providers/Stream\";\nimport type { Message } from \"@langchain/langgraph-sdk\";\nimport { X } from \"lucide-react\";\nimport type { FileInfo } from \"@/types/fileInput\";\nimport type { ChatSidebarProps } from \"@/types/ChatProps\";\nimport { useFileProvider } from \"@/providers/FileProvider\";\nimport Suggestion from \"@/components/Suggestion\";\nimport { useThread } from \"@/providers/Thread\";\n\n/**\n * Main sidebar chat interface component.\n * Displays a chat button that opens a sliding sidebar with full chat functionality.\n * \n * @param header - Custom header text for the chat sidebar (default: \"AI Assistant\")\n * @param handleFileSelect - Optional custom file selection handler\n * @param callThisOnSubmit - Optional callback invoked before message submission, can return updated file list\n * \n * @example\n * ```tsx\n * <Sidebar \n * header=\"My Custom AI\"\n * callThisOnSubmit={async () => {\n * // Upload files to your backend\n * return updatedFiles;\n * }}\n * />\n * ```\n */\nexport default function Sidebar({\n header = \"AI Assistant\",\n chatProps,\n}: ChatSidebarProps) {\n\n const { handleFileSelect, callThisOnSubmit } = chatProps ?? {};\n\n const [open, setOpen] = useState(false);\n const [input, setInput] = useState(\"\");\n const { fileInput, setFileInput } = useFileProvider();\n\n const stream = useStreamContext();\n const isLoading = stream.isLoading;\n const { setMode } = useThread();\n\n // Set thread mode to single when using Sidebar\n useEffect(() => {\n setMode(\"single\");\n }, [setMode]);\n\n const defaultHandleSubmit = async (e: FormEvent) => {\n e.preventDefault();\n\n if ((input.trim().length === 0 && fileInput.length === 0) || isLoading)\n return;\n\n // Call the custom upload and get the latest files\n let latestFiles: FileInfo[] = fileInput;\n if (callThisOnSubmit) {\n const result = await callThisOnSubmit();\n if (result && result.length > 0) latestFiles = result;\n }\n\n const contentBlocks = [\n ...(input.trim().length > 0 ? [{ type: \"text\", text: input }] : []),\n ...latestFiles.map((file) => ({\n type: \"document\" as const,\n ...file,\n cache_control: { type: \"ephemeral\" as const },\n })),\n ] as unknown as Message[\"content\"];\n\n const newHumanMessage: Message = {\n id: uuidv4(),\n type: \"human\",\n content: contentBlocks,\n };\n\n // Use the unified submitMessage function\n await stream.submitMessage(newHumanMessage);\n\n setInput(\"\");\n setFileInput([]);\n };\n\n const defaultHandleFileSelect = async (\n event: React.ChangeEvent<HTMLInputElement>\n ) => {\n const files = event.target.files;\n if (!files) return;\n\n // Convert files to base64 for sending\n const fileDetails: FileInfo[] = await Promise.all(\n Array.from(files).map(async (file) => {\n const base64Data = await new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => {\n const result = reader.result as string;\n resolve(result.split(\",\")[1]); // Remove data:...;base64, prefix\n };\n reader.onerror = reject;\n reader.readAsDataURL(file);\n });\n\n return {\n fileName: file.name,\n fileType: file.type,\n file: file,\n fileData: base64Data, // Add this to your FileInfo type\n };\n })\n );\n\n setFileInput((prevFile) => [...prevFile, ...fileDetails]);\n };\n\n const onFileSelect = handleFileSelect || defaultHandleFileSelect;\n\n return (\n <>\n <AnimatePresence>\n {open && (\n <>\n {/* Overlay */}\n <motion.div\n className=\"fixed inset-0 z-40 bg-black/30\"\n onClick={() => setOpen(false)}\n initial={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n />\n\n {/* Sidebar */}\n <motion.aside\n className=\"fixed right-0 top-0 z-50 h-screen w-[520px] bg-black flex flex-col text-white\"\n initial={{ x: \"100%\" }}\n animate={{ x: 0 }}\n exit={{ x: \"100%\" }}\n transition={{ type: \"spring\", stiffness: 260, damping: 30 }}\n >\n <div className=\"flex h-full flex-col\">\n <div className=\"flex border-b border-zinc-800 py-4 px-6 justify-between items-center\">\n <div className=\"text-start text-2xl font-bold\">{header}</div>\n <X\n className=\"text-zinc-400 cursor-pointer\"\n onClick={() => setOpen(false)}\n />\n </div>\n\n <div className=\"flex-1 overflow-auto scrollbar-none\">\n <div className=\"p-4\">\n <ChatBody />\n </div>\n </div>\n <Suggestion />\n <div className=\"sticky bottom-0 border-t border-zinc-800 m-2\">\n <ChatInput\n input={input}\n inputFileAccept={chatProps?.inputFileAccept}\n setInput={setInput}\n handleSubmit={defaultHandleSubmit}\n isLoading={isLoading}\n fileInput={fileInput}\n handleFileSelect={onFileSelect}\n setFileInput={setFileInput}\n onCancel={() => stream.stop?.()}\n />\n </div>\n </div>\n </motion.aside>\n </>\n )}\n </AnimatePresence>\n\n <ChatButton isVisible={!open} setOpen={setOpen} />\n </>\n );\n}\n"],"names":["uuidv4"],"mappings":"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"}
1
+ {"version":3,"file":"index.es2.js","sources":["../src/pages/Sidebar/sidebar.tsx"],"sourcesContent":["import Suggestion from \"@/components/Suggestion\";\nimport { useFileProvider } from \"@/providers/FileProvider\";\nimport { useStreamContext } from \"@/providers/Stream\";\nimport { useThread } from \"@/providers/Thread\";\nimport type { ChatSidebarProps } from \"@/types/ChatProps\";\nimport type { FileInfo } from \"@/types/fileInput\";\nimport type { Message } from \"@langchain/langgraph-sdk\";\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport { X } from \"lucide-react\";\nimport { useEffect, useState, type FormEvent } from \"react\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport ChatBody from \"../../components/ChatBody\";\nimport ChatButton from \"../../components/ChatButton\";\nimport ChatInput from \"../../components/sidebar/ChatInput\";\n\n/**\n * Main sidebar chat interface component.\n * Displays a chat button that opens a sliding sidebar with full chat functionality.\n * \n * @param header - Custom header text for the chat sidebar (default: \"AI Assistant\")\n * @param handleFileSelect - Optional custom file selection handler\n * @param callThisOnSubmit - Optional callback invoked before message submission, can return updated file list\n * \n * @example\n * ```tsx\n * <Sidebar \n * header=\"My Custom AI\"\n * callThisOnSubmit={async () => {\n * // Upload files to your backend\n * return updatedFiles;\n * }}\n * />\n * ```\n */\nexport default function Sidebar({ chatProps }: { chatProps: ChatSidebarProps }) {\n\n const { handleFileSelect, callThisOnSubmit, enableToolCallIndicator, header } = chatProps ?? {};\n const [open, setOpen] = useState(false);\n const [input, setInput] = useState(\"\");\n const { fileInput, setFileInput } = useFileProvider();\n\n const stream = useStreamContext();\n const isLoading = stream.isLoading;\n const { setMode } = useThread();\n\n // Set thread mode to single when using Sidebar\n useEffect(() => {\n setMode(\"single\");\n }, [setMode]);\n\n const defaultHandleSubmit = async (e: FormEvent) => {\n e.preventDefault();\n\n if ((input.trim().length === 0 && fileInput.length === 0) || isLoading)\n return;\n\n // Call the custom upload and get the latest files\n let latestFiles: FileInfo[] = fileInput;\n if (callThisOnSubmit) {\n const result = await callThisOnSubmit();\n if (result && result.length > 0) latestFiles = result;\n }\n\n const contentBlocks = [\n ...(input.trim().length > 0 ? [{ type: \"text\", text: input }] : []),\n ...latestFiles.map((file) => ({\n type: \"document\" as const,\n ...file,\n cache_control: { type: \"ephemeral\" as const },\n })),\n ] as unknown as Message[\"content\"];\n\n const newHumanMessage: Message = {\n id: uuidv4(),\n type: \"human\",\n content: contentBlocks,\n };\n\n // Use the unified submitMessage function\n await stream.submitMessage(newHumanMessage);\n\n setInput(\"\");\n setFileInput([]);\n };\n\n const defaultHandleFileSelect = async (\n event: React.ChangeEvent<HTMLInputElement>\n ) => {\n const files = event.target.files;\n if (!files) return;\n\n // Convert files to base64 for sending\n const fileDetails: FileInfo[] = await Promise.all(\n Array.from(files).map(async (file) => {\n const base64Data = await new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => {\n const result = reader.result as string;\n resolve(result.split(\",\")[1]); // Remove data:...;base64, prefix\n };\n reader.onerror = reject;\n reader.readAsDataURL(file);\n });\n\n return {\n fileName: file.name,\n fileType: file.type,\n file: file,\n fileData: base64Data, // Add this to your FileInfo type\n };\n })\n );\n\n setFileInput((prevFile) => [...prevFile, ...fileDetails]);\n };\n\n const onFileSelect = handleFileSelect || defaultHandleFileSelect;\n console.log(\"HEADER LOGO URL:\", header);\n return (\n <>\n <AnimatePresence>\n {open && (\n <>\n {/* Overlay */}\n <motion.div\n className=\"fixed inset-0 z-40 bg-black/30\"\n onClick={() => setOpen(false)}\n initial={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n />\n\n {/* Sidebar */}\n <motion.aside\n className=\"fixed right-0 top-0 z-50 h-screen w-[520px] bg-black flex flex-col text-white\"\n initial={{ x: \"100%\" }}\n animate={{ x: 0 }}\n exit={{ x: \"100%\" }}\n transition={{ type: \"spring\", stiffness: 260, damping: 30 }}\n >\n <div className=\"flex h-full flex-col\">\n <div className=\"flex border-b border-zinc-800 py-4 px-6 justify-between items-center\">\n <div className=\"flex items-center gap-3\">\n {header?.logoUrl && (\n // Render provided logo image if present\n <img\n src={header?.logoUrl}\n alt={header?.title ? `${header.title} logo` : \"AI Assistant logo\"}\n className=\"h-8 w-8 object-contain rounded-sm\"\n />\n )}\n <div className=\"text-start text-2xl font-bold\">{header?.title || \"AI Assistant\"}</div>\n </div>\n <X\n className=\"text-zinc-400 cursor-pointer\"\n onClick={() => setOpen(false)}\n />\n </div>\n\n <div className=\"flex-1 overflow-auto scrollbar-none\">\n <div className=\"p-4\">\n <ChatBody enableToolCallIndicator={enableToolCallIndicator} />\n </div>\n </div>\n <Suggestion />\n <div className=\"sticky bottom-0 border-t border-zinc-800 m-2\">\n <ChatInput\n input={input}\n inputFileAccept={chatProps?.inputFileAccept}\n setInput={setInput}\n handleSubmit={defaultHandleSubmit}\n isLoading={isLoading}\n fileInput={fileInput}\n handleFileSelect={onFileSelect}\n setFileInput={setFileInput}\n onCancel={() => stream.stop?.()}\n />\n </div>\n </div>\n </motion.aside>\n </>\n )}\n </AnimatePresence>\n\n <ChatButton isVisible={!open} setOpen={setOpen} />\n </>\n );\n}\n"],"names":["uuidv4"],"mappings":"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"}
@@ -1,21 +1,41 @@
1
- function getContentString(content) {
2
- if (typeof content === "string") return content;
3
- const texts = content.filter((c) => c.type === "text").map((c) => c.text);
4
- return texts.join(" ");
5
- }
6
- function isAIMessage(message) {
7
- return message.type === "ai";
8
- }
9
- function isAiWithToolCalls(message) {
10
- return isAIMessage(message) && message.tool_calls && message.tool_calls.length > 0;
11
- }
12
- function isToolMessage(message) {
13
- return message.type === "tool";
1
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
+ import { getContentString } from "./index.es19.js";
3
+ import { BotMessageSquare, Loader2 } from "lucide-react";
4
+ import React__default from "react";
5
+ import { AgentMarkdown } from "./index.es47.js";
6
+ function AgentMessage({
7
+ message,
8
+ isStreaming = false
9
+ }) {
10
+ const content = getContentString(message?.content);
11
+ return /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3 w-full", children: [
12
+ /* @__PURE__ */ jsx(
13
+ "div",
14
+ {
15
+ className: "rounded-full size-8 shrink-0 bg-zinc-800 border border-zinc-700 flex items-center justify-center p-2",
16
+ "data-alt": "AI Avatar",
17
+ children: /* @__PURE__ */ jsx(BotMessageSquare, { className: "text-sm", color: "white" })
18
+ }
19
+ ),
20
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col gap-1 items-start min-w-0", children: [
21
+ /* @__PURE__ */ jsx("span", { className: "text-zinc-500 text-xs ml-1", children: "Agent" }),
22
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-normal leading-relaxed rounded-2xl rounded-tl-none px-4 py-2 text-left bg-zinc-900 border border-zinc-800 text-zinc-200 shadow-sm max-w-full break-words overflow-wrap-anywhere markdown-content", children: content ? /* @__PURE__ */ jsx(AgentMarkdown, { content }) : /* @__PURE__ */ jsxs(Fragment, { children: [
23
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-zinc-500", children: [
24
+ /* @__PURE__ */ jsx(Loader2, { className: "animate-spin", size: 16 }),
25
+ /* @__PURE__ */ jsx("span", { children: "Thinking..." })
26
+ ] }),
27
+ isStreaming && content && /* @__PURE__ */ jsx("span", { className: "inline-block w-2 h-4 ml-1 bg-zinc-400 animate-pulse" })
28
+ ] }) })
29
+ ] })
30
+ ] });
14
31
  }
32
+ const AgentMessage$1 = React__default.memo(AgentMessage, (prevProps, nextProps) => {
33
+ if (nextProps.isStreaming) {
34
+ return false;
35
+ }
36
+ return prevProps.message.id === nextProps.message.id && prevProps.isStreaming === nextProps.isStreaming;
37
+ });
15
38
  export {
16
- getContentString,
17
- isAIMessage,
18
- isAiWithToolCalls,
19
- isToolMessage
39
+ AgentMessage$1 as default
20
40
  };
21
41
  //# sourceMappingURL=index.es20.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es20.js","sources":["../src/utils/utils.ts"],"sourcesContent":["import type { AIMessage, Message } from \"@langchain/langgraph-sdk\";\n\n/**\n * Extracts a string summary from a message's content, supporting multimodal (text, image, file, etc.).\n * - If text is present, returns the joined text.\n * - If not, returns a label for the first non-text modality (e.g., 'Image', 'Other').\n * - If unknown, returns 'Multimodal message'.\n */\nexport function getContentString(content: Message[\"content\"]): string {\n if (typeof content === \"string\") return content;\n const texts = content\n .filter((c): c is { type: \"text\"; text: string } => c.type === \"text\")\n .map((c) => c.text);\n return texts.join(\" \");\n}\n\nexport function isAIMessage(message: Message): message is AIMessage {\n return message.type === \"ai\";\n}\n\nexport function isAiWithToolCalls(message: Message) {\n return (\n isAIMessage(message) && message.tool_calls && message.tool_calls.length > 0\n );\n}\n\nexport function isToolMessage(message: Message) {\n return message.type === \"tool\";\n}\n"],"names":[],"mappings":"AAQO,SAAS,iBAAiB,SAAqC;AACpE,MAAI,OAAO,YAAY,SAAU,QAAO;AACxC,QAAM,QAAQ,QACX,OAAO,CAAC,MAA2C,EAAE,SAAS,MAAM,EACpE,IAAI,CAAC,MAAM,EAAE,IAAI;AACpB,SAAO,MAAM,KAAK,GAAG;AACvB;AAEO,SAAS,YAAY,SAAwC;AAClE,SAAO,QAAQ,SAAS;AAC1B;AAEO,SAAS,kBAAkB,SAAkB;AAClD,SACE,YAAY,OAAO,KAAK,QAAQ,cAAc,QAAQ,WAAW,SAAS;AAE9E;AAEO,SAAS,cAAc,SAAkB;AAC9C,SAAO,QAAQ,SAAS;AAC1B;"}
1
+ {"version":3,"file":"index.es20.js","sources":["../src/components/messages/AgentMessage.tsx"],"sourcesContent":["import { getContentString } from \"@/utils/utils\";\nimport type { Message } from \"@langchain/langgraph-sdk\";\nimport { BotMessageSquare, Loader2 } from \"lucide-react\";\nimport React from \"react\";\nimport { AgentMarkdown } from \"./AgentMarkdown\";\n\nfunction AgentMessage({\n message,\n isStreaming = false,\n}: {\n message: Message;\n isStreaming?: boolean;\n}) {\n const content = getContentString(message?.content);\n\n return (\n <div className=\"flex items-start gap-3 w-full\">\n <div\n className=\"rounded-full size-8 shrink-0 bg-zinc-800 border border-zinc-700 flex items-center justify-center p-2\"\n data-alt=\"AI Avatar\"\n >\n <BotMessageSquare className=\"text-sm\" color=\"white\" />\n </div>\n\n <div className=\"flex flex-1 flex-col gap-1 items-start min-w-0\">\n <span className=\"text-zinc-500 text-xs ml-1\">Agent</span>\n <div className=\"text-sm font-normal leading-relaxed rounded-2xl rounded-tl-none px-4 py-2 text-left bg-zinc-900 border border-zinc-800 text-zinc-200 shadow-sm max-w-full break-words overflow-wrap-anywhere markdown-content\">\n { content ? (<AgentMarkdown content={content} />) : (\n <>\n <div className=\"flex items-center gap-2 text-zinc-500\">\n <Loader2 className=\"animate-spin\" size={16} />\n <span>Thinking...</span>\n </div>\n {isStreaming && content && (\n <span className=\"inline-block w-2 h-4 ml-1 bg-zinc-400 animate-pulse\" />\n )}\n </>\n )}\n </div>\n </div>\n </div>\n );\n}\n\n// Memoize - only re-render if message ID changes or streaming state changes\nexport default React.memo(AgentMessage, (prevProps, nextProps) => {\n // If it's streaming, we need to re-render to show updates\n if (nextProps.isStreaming) {\n return false; // Always re-render when streaming\n }\n\n // Otherwise, only re-render if the message ID changed\n return (\n prevProps.message.id === nextProps.message.id &&\n prevProps.isStreaming === nextProps.isStreaming\n );\n});\n"],"names":["React"],"mappings":";;;;;AAMA,SAAS,aAAa;AAAA,EACpB;AAAA,EACA,cAAc;AAChB,GAGG;AACD,QAAM,UAAU,iBAAiB,SAAS,OAAO;AAEjD,SACE,qBAAC,OAAA,EAAI,WAAU,iCACb,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,YAAS;AAAA,QAET,UAAA,oBAAC,kBAAA,EAAiB,WAAU,WAAU,OAAM,QAAA,CAAQ;AAAA,MAAA;AAAA,IAAA;AAAA,IAGtD,qBAAC,OAAA,EAAI,WAAU,kDACb,UAAA;AAAA,MAAA,oBAAC,QAAA,EAAK,WAAU,8BAA6B,UAAA,SAAK;AAAA,MAClD,oBAAC,SAAI,WAAU,iNACX,oBAAW,oBAAC,eAAA,EAAc,QAAA,CAAkB,IAC5C,qBAAA,UAAA,EACE,UAAA;AAAA,QAAA,qBAAC,OAAA,EAAI,WAAU,yCACb,UAAA;AAAA,UAAA,oBAAC,SAAA,EAAQ,WAAU,gBAAe,MAAM,IAAI;AAAA,UAC5C,oBAAC,UAAK,UAAA,cAAA,CAAW;AAAA,QAAA,GACnB;AAAA,QACC,eAAe,WACd,oBAAC,QAAA,EAAK,WAAU,sDAAA,CAAsD;AAAA,MAAA,EAAA,CAE1E,EAAA,CAEJ;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;AAGA,MAAA,iBAAeA,eAAM,KAAK,cAAc,CAAC,WAAW,cAAc;AAEhE,MAAI,UAAU,aAAa;AACzB,WAAO;AAAA,EACT;AAGA,SACE,UAAU,QAAQ,OAAO,UAAU,QAAQ,MAC3C,UAAU,gBAAgB,UAAU;AAExC,CAAC;"}
@@ -1,11 +1,7 @@
1
- import { parseDef } from "./index.es164.js";
2
- function parseDefaultDef(_def, refs) {
3
- return {
4
- ...parseDef(_def.innerType._def, refs),
5
- default: _def.defaultValue()
6
- };
1
+ function parseBooleanDef() {
2
+ return { type: "boolean" };
7
3
  }
8
4
  export {
9
- parseDefaultDef
5
+ parseBooleanDef
10
6
  };
11
7
  //# sourceMappingURL=index.es200.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es200.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/default.js"],"sourcesContent":["import { parseDef } from \"../parseDef.js\";\n\n//#region src/utils/zod-to-json-schema/parsers/default.ts\nfunction parseDefaultDef(_def, refs) {\n\treturn {\n\t\t...parseDef(_def.innerType._def, refs),\n\t\tdefault: _def.defaultValue()\n\t};\n}\n\n//#endregion\nexport { parseDefaultDef };\n//# sourceMappingURL=default.js.map"],"names":[],"mappings":";AAGA,SAAS,gBAAgB,MAAM,MAAM;AACpC,SAAO;AAAA,IACN,GAAG,SAAS,KAAK,UAAU,MAAM,IAAI;AAAA,IACrC,SAAS,KAAK,aAAY;AAAA,EAC5B;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es200.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/boolean.js"],"sourcesContent":["//#region src/utils/zod-to-json-schema/parsers/boolean.ts\nfunction parseBooleanDef() {\n\treturn { type: \"boolean\" };\n}\n\n//#endregion\nexport { parseBooleanDef };\n//# sourceMappingURL=boolean.js.map"],"names":[],"mappings":"AACA,SAAS,kBAAkB;AAC1B,SAAO,EAAE,MAAM,UAAS;AACzB;","x_google_ignoreList":[0]}
@@ -1,9 +1,8 @@
1
- import { parseAnyDef } from "./index.es163.js";
2
1
  import { parseDef } from "./index.es164.js";
3
- function parseEffectsDef(_def, refs) {
4
- return refs.effectStrategy === "input" ? parseDef(_def.schema._def, refs) : parseAnyDef(refs);
2
+ function parseBrandedDef(_def, refs) {
3
+ return parseDef(_def.type._def, refs);
5
4
  }
6
5
  export {
7
- parseEffectsDef
6
+ parseBrandedDef
8
7
  };
9
8
  //# sourceMappingURL=index.es201.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es201.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/effects.js"],"sourcesContent":["import { parseAnyDef } from \"./any.js\";\nimport { parseDef } from \"../parseDef.js\";\n\n//#region src/utils/zod-to-json-schema/parsers/effects.ts\nfunction parseEffectsDef(_def, refs) {\n\treturn refs.effectStrategy === \"input\" ? parseDef(_def.schema._def, refs) : parseAnyDef(refs);\n}\n\n//#endregion\nexport { parseEffectsDef };\n//# sourceMappingURL=effects.js.map"],"names":[],"mappings":";;AAIA,SAAS,gBAAgB,MAAM,MAAM;AACpC,SAAO,KAAK,mBAAmB,UAAU,SAAS,KAAK,OAAO,MAAM,IAAI,IAAI,YAAY,IAAI;AAC7F;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es201.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/branded.js"],"sourcesContent":["import { parseDef } from \"../parseDef.js\";\n\n//#region src/utils/zod-to-json-schema/parsers/branded.ts\nfunction parseBrandedDef(_def, refs) {\n\treturn parseDef(_def.type._def, refs);\n}\n\n//#endregion\nexport { parseBrandedDef };\n//# sourceMappingURL=branded.js.map"],"names":[],"mappings":";AAGA,SAAS,gBAAgB,MAAM,MAAM;AACpC,SAAO,SAAS,KAAK,KAAK,MAAM,IAAI;AACrC;","x_google_ignoreList":[0]}
@@ -1,10 +1,8 @@
1
- function parseEnumDef(def) {
2
- return {
3
- type: "string",
4
- enum: Array.from(def.values)
5
- };
6
- }
1
+ import { parseDef } from "./index.es164.js";
2
+ const parseCatchDef = (def, refs) => {
3
+ return parseDef(def.innerType._def, refs);
4
+ };
7
5
  export {
8
- parseEnumDef
6
+ parseCatchDef
9
7
  };
10
8
  //# sourceMappingURL=index.es202.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es202.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/enum.js"],"sourcesContent":["//#region src/utils/zod-to-json-schema/parsers/enum.ts\nfunction parseEnumDef(def) {\n\treturn {\n\t\ttype: \"string\",\n\t\tenum: Array.from(def.values)\n\t};\n}\n\n//#endregion\nexport { parseEnumDef };\n//# sourceMappingURL=enum.js.map"],"names":[],"mappings":"AACA,SAAS,aAAa,KAAK;AAC1B,SAAO;AAAA,IACN,MAAM;AAAA,IACN,MAAM,MAAM,KAAK,IAAI,MAAM;AAAA,EAC7B;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es202.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/catch.js"],"sourcesContent":["import { parseDef } from \"../parseDef.js\";\n\n//#region src/utils/zod-to-json-schema/parsers/catch.ts\nconst parseCatchDef = (def, refs) => {\n\treturn parseDef(def.innerType._def, refs);\n};\n\n//#endregion\nexport { parseCatchDef };\n//# sourceMappingURL=catch.js.map"],"names":[],"mappings":";AAGK,MAAC,gBAAgB,CAAC,KAAK,SAAS;AACpC,SAAO,SAAS,IAAI,UAAU,MAAM,IAAI;AACzC;","x_google_ignoreList":[0]}
@@ -1,45 +1,40 @@
1
- import { parseDef } from "./index.es164.js";
2
- const isJsonSchema7AllOfType = (type) => {
3
- if ("type" in type && type.type === "string") return false;
4
- return "allOf" in type;
5
- };
6
- function parseIntersectionDef(def, refs) {
7
- const allOf = [parseDef(def.left._def, {
8
- ...refs,
9
- currentPath: [
10
- ...refs.currentPath,
11
- "allOf",
12
- "0"
13
- ]
14
- }), parseDef(def.right._def, {
15
- ...refs,
16
- currentPath: [
17
- ...refs.currentPath,
18
- "allOf",
19
- "1"
20
- ]
21
- })].filter((x) => !!x);
22
- let unevaluatedProperties = refs.target === "jsonSchema2019-09" ? { unevaluatedProperties: false } : void 0;
23
- const mergedAllOf = [];
24
- allOf.forEach((schema) => {
25
- if (isJsonSchema7AllOfType(schema)) {
26
- mergedAllOf.push(...schema.allOf);
27
- if (schema.unevaluatedProperties === void 0) unevaluatedProperties = void 0;
28
- } else {
29
- let nestedSchema = schema;
30
- if ("additionalProperties" in schema && schema.additionalProperties === false) {
31
- const { additionalProperties, ...rest } = schema;
32
- nestedSchema = rest;
33
- } else unevaluatedProperties = void 0;
34
- mergedAllOf.push(nestedSchema);
35
- }
36
- });
37
- return mergedAllOf.length ? {
38
- allOf: mergedAllOf,
39
- ...unevaluatedProperties
40
- } : void 0;
1
+ import { setResponseValueAndErrors } from "./index.es197.js";
2
+ function parseDateDef(def, refs, overrideDateStrategy) {
3
+ const strategy = overrideDateStrategy ?? refs.dateStrategy;
4
+ if (Array.isArray(strategy)) return { anyOf: strategy.map((item) => parseDateDef(def, refs, item)) };
5
+ switch (strategy) {
6
+ case "string":
7
+ case "format:date-time":
8
+ return {
9
+ type: "string",
10
+ format: "date-time"
11
+ };
12
+ case "format:date":
13
+ return {
14
+ type: "string",
15
+ format: "date"
16
+ };
17
+ case "integer":
18
+ return integerDateParser(def, refs);
19
+ }
41
20
  }
21
+ const integerDateParser = (def, refs) => {
22
+ const res = {
23
+ type: "integer",
24
+ format: "unix-time"
25
+ };
26
+ if (refs.target === "openApi3") return res;
27
+ for (const check of def.checks) switch (check.kind) {
28
+ case "min":
29
+ setResponseValueAndErrors(res, "minimum", check.value, check.message, refs);
30
+ break;
31
+ case "max":
32
+ setResponseValueAndErrors(res, "maximum", check.value, check.message, refs);
33
+ break;
34
+ }
35
+ return res;
36
+ };
42
37
  export {
43
- parseIntersectionDef
38
+ parseDateDef
44
39
  };
45
40
  //# sourceMappingURL=index.es203.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es203.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/intersection.js"],"sourcesContent":["import { parseDef } from \"../parseDef.js\";\n\n//#region src/utils/zod-to-json-schema/parsers/intersection.ts\nconst isJsonSchema7AllOfType = (type) => {\n\tif (\"type\" in type && type.type === \"string\") return false;\n\treturn \"allOf\" in type;\n};\nfunction parseIntersectionDef(def, refs) {\n\tconst allOf = [parseDef(def.left._def, {\n\t\t...refs,\n\t\tcurrentPath: [\n\t\t\t...refs.currentPath,\n\t\t\t\"allOf\",\n\t\t\t\"0\"\n\t\t]\n\t}), parseDef(def.right._def, {\n\t\t...refs,\n\t\tcurrentPath: [\n\t\t\t...refs.currentPath,\n\t\t\t\"allOf\",\n\t\t\t\"1\"\n\t\t]\n\t})].filter((x) => !!x);\n\tlet unevaluatedProperties = refs.target === \"jsonSchema2019-09\" ? { unevaluatedProperties: false } : void 0;\n\tconst mergedAllOf = [];\n\tallOf.forEach((schema) => {\n\t\tif (isJsonSchema7AllOfType(schema)) {\n\t\t\tmergedAllOf.push(...schema.allOf);\n\t\t\tif (schema.unevaluatedProperties === void 0) unevaluatedProperties = void 0;\n\t\t} else {\n\t\t\tlet nestedSchema = schema;\n\t\t\tif (\"additionalProperties\" in schema && schema.additionalProperties === false) {\n\t\t\t\tconst { additionalProperties,...rest } = schema;\n\t\t\t\tnestedSchema = rest;\n\t\t\t} else unevaluatedProperties = void 0;\n\t\t\tmergedAllOf.push(nestedSchema);\n\t\t}\n\t});\n\treturn mergedAllOf.length ? {\n\t\tallOf: mergedAllOf,\n\t\t...unevaluatedProperties\n\t} : void 0;\n}\n\n//#endregion\nexport { parseIntersectionDef };\n//# sourceMappingURL=intersection.js.map"],"names":[],"mappings":";AAGA,MAAM,yBAAyB,CAAC,SAAS;AACxC,MAAI,UAAU,QAAQ,KAAK,SAAS,SAAU,QAAO;AACrD,SAAO,WAAW;AACnB;AACA,SAAS,qBAAqB,KAAK,MAAM;AACxC,QAAM,QAAQ,CAAC,SAAS,IAAI,KAAK,MAAM;AAAA,IACtC,GAAG;AAAA,IACH,aAAa;AAAA,MACZ,GAAG,KAAK;AAAA,MACR;AAAA,MACA;AAAA,IACH;AAAA,EACA,CAAE,GAAG,SAAS,IAAI,MAAM,MAAM;AAAA,IAC5B,GAAG;AAAA,IACH,aAAa;AAAA,MACZ,GAAG,KAAK;AAAA,MACR;AAAA,MACA;AAAA,IACH;AAAA,EACA,CAAE,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AACrB,MAAI,wBAAwB,KAAK,WAAW,sBAAsB,EAAE,uBAAuB,MAAK,IAAK;AACrG,QAAM,cAAc,CAAA;AACpB,QAAM,QAAQ,CAAC,WAAW;AACzB,QAAI,uBAAuB,MAAM,GAAG;AACnC,kBAAY,KAAK,GAAG,OAAO,KAAK;AAChC,UAAI,OAAO,0BAA0B,OAAQ,yBAAwB;AAAA,IACtE,OAAO;AACN,UAAI,eAAe;AACnB,UAAI,0BAA0B,UAAU,OAAO,yBAAyB,OAAO;AAC9E,cAAM,EAAE,sBAAqB,GAAG,KAAI,IAAK;AACzC,uBAAe;AAAA,MAChB,MAAO,yBAAwB;AAC/B,kBAAY,KAAK,YAAY;AAAA,IAC9B;AAAA,EACD,CAAC;AACD,SAAO,YAAY,SAAS;AAAA,IAC3B,OAAO;AAAA,IACP,GAAG;AAAA,EACL,IAAK;AACL;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es203.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/date.js"],"sourcesContent":["import { setResponseValueAndErrors } from \"../errorMessages.js\";\n\n//#region src/utils/zod-to-json-schema/parsers/date.ts\nfunction parseDateDef(def, refs, overrideDateStrategy) {\n\tconst strategy = overrideDateStrategy ?? refs.dateStrategy;\n\tif (Array.isArray(strategy)) return { anyOf: strategy.map((item) => parseDateDef(def, refs, item)) };\n\tswitch (strategy) {\n\t\tcase \"string\":\n\t\tcase \"format:date-time\": return {\n\t\t\ttype: \"string\",\n\t\t\tformat: \"date-time\"\n\t\t};\n\t\tcase \"format:date\": return {\n\t\t\ttype: \"string\",\n\t\t\tformat: \"date\"\n\t\t};\n\t\tcase \"integer\": return integerDateParser(def, refs);\n\t}\n}\nconst integerDateParser = (def, refs) => {\n\tconst res = {\n\t\ttype: \"integer\",\n\t\tformat: \"unix-time\"\n\t};\n\tif (refs.target === \"openApi3\") return res;\n\tfor (const check of def.checks) switch (check.kind) {\n\t\tcase \"min\":\n\t\t\tsetResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n\t\t\tbreak;\n\t\tcase \"max\":\n\t\t\tsetResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n\t\t\tbreak;\n\t}\n\treturn res;\n};\n\n//#endregion\nexport { parseDateDef };\n//# sourceMappingURL=date.js.map"],"names":[],"mappings":";AAGA,SAAS,aAAa,KAAK,MAAM,sBAAsB;AACtD,QAAM,WAAW,wBAAwB,KAAK;AAC9C,MAAI,MAAM,QAAQ,QAAQ,EAAG,QAAO,EAAE,OAAO,SAAS,IAAI,CAAC,SAAS,aAAa,KAAK,MAAM,IAAI,CAAC,EAAC;AAClG,UAAQ,UAAQ;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AAAoB,aAAO;AAAA,QAC/B,MAAM;AAAA,QACN,QAAQ;AAAA,MACX;AAAA,IACE,KAAK;AAAe,aAAO;AAAA,QAC1B,MAAM;AAAA,QACN,QAAQ;AAAA,MACX;AAAA,IACE,KAAK;AAAW,aAAO,kBAAkB,KAAK,IAAI;AAAA,EACpD;AACA;AACA,MAAM,oBAAoB,CAAC,KAAK,SAAS;AACxC,QAAM,MAAM;AAAA,IACX,MAAM;AAAA,IACN,QAAQ;AAAA,EACV;AACC,MAAI,KAAK,WAAW,WAAY,QAAO;AACvC,aAAW,SAAS,IAAI,OAAQ,SAAQ,MAAM,MAAI;AAAA,IACjD,KAAK;AACJ,gCAA0B,KAAK,WAAW,MAAM,OAAO,MAAM,SAAS,IAAI;AAC1E;AAAA,IACD,KAAK;AACJ,gCAA0B,KAAK,WAAW,MAAM,OAAO,MAAM,SAAS,IAAI;AAC1E;AAAA,EACH;AACC,SAAO;AACR;","x_google_ignoreList":[0]}
@@ -1,16 +1,11 @@
1
- function parseLiteralDef(def, refs) {
2
- const parsedType = typeof def.value;
3
- if (parsedType !== "bigint" && parsedType !== "number" && parsedType !== "boolean" && parsedType !== "string") return { type: Array.isArray(def.value) ? "array" : "object" };
4
- if (refs.target === "openApi3") return {
5
- type: parsedType === "bigint" ? "integer" : parsedType,
6
- enum: [def.value]
7
- };
1
+ import { parseDef } from "./index.es164.js";
2
+ function parseDefaultDef(_def, refs) {
8
3
  return {
9
- type: parsedType === "bigint" ? "integer" : parsedType,
10
- const: def.value
4
+ ...parseDef(_def.innerType._def, refs),
5
+ default: _def.defaultValue()
11
6
  };
12
7
  }
13
8
  export {
14
- parseLiteralDef
9
+ parseDefaultDef
15
10
  };
16
11
  //# sourceMappingURL=index.es204.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es204.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/literal.js"],"sourcesContent":["//#region src/utils/zod-to-json-schema/parsers/literal.ts\nfunction parseLiteralDef(def, refs) {\n\tconst parsedType = typeof def.value;\n\tif (parsedType !== \"bigint\" && parsedType !== \"number\" && parsedType !== \"boolean\" && parsedType !== \"string\") return { type: Array.isArray(def.value) ? \"array\" : \"object\" };\n\tif (refs.target === \"openApi3\") return {\n\t\ttype: parsedType === \"bigint\" ? \"integer\" : parsedType,\n\t\tenum: [def.value]\n\t};\n\treturn {\n\t\ttype: parsedType === \"bigint\" ? \"integer\" : parsedType,\n\t\tconst: def.value\n\t};\n}\n\n//#endregion\nexport { parseLiteralDef };\n//# sourceMappingURL=literal.js.map"],"names":[],"mappings":"AACA,SAAS,gBAAgB,KAAK,MAAM;AACnC,QAAM,aAAa,OAAO,IAAI;AAC9B,MAAI,eAAe,YAAY,eAAe,YAAY,eAAe,aAAa,eAAe,SAAU,QAAO,EAAE,MAAM,MAAM,QAAQ,IAAI,KAAK,IAAI,UAAU,SAAQ;AAC3K,MAAI,KAAK,WAAW,WAAY,QAAO;AAAA,IACtC,MAAM,eAAe,WAAW,YAAY;AAAA,IAC5C,MAAM,CAAC,IAAI,KAAK;AAAA,EAClB;AACC,SAAO;AAAA,IACN,MAAM,eAAe,WAAW,YAAY;AAAA,IAC5C,OAAO,IAAI;AAAA,EACb;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es204.js","sources":["../node_modules/.pnpm/@langchain+core@1.1.13_openai@6.16.0_zod@4.3.5_/node_modules/@langchain/core/dist/utils/zod-to-json-schema/parsers/default.js"],"sourcesContent":["import { parseDef } from \"../parseDef.js\";\n\n//#region src/utils/zod-to-json-schema/parsers/default.ts\nfunction parseDefaultDef(_def, refs) {\n\treturn {\n\t\t...parseDef(_def.innerType._def, refs),\n\t\tdefault: _def.defaultValue()\n\t};\n}\n\n//#endregion\nexport { parseDefaultDef };\n//# sourceMappingURL=default.js.map"],"names":[],"mappings":";AAGA,SAAS,gBAAgB,MAAM,MAAM;AACpC,SAAO;AAAA,IACN,GAAG,SAAS,KAAK,UAAU,MAAM,IAAI;AAAA,IACrC,SAAS,KAAK,aAAY;AAAA,EAC5B;AACA;","x_google_ignoreList":[0]}