@copilotkitnext/react 0.0.22-alpha.4 → 0.0.22-alpha.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 (397) hide show
  1. package/dist/index.d.mts +635 -46
  2. package/dist/index.d.ts +635 -46
  3. package/dist/index.js +325 -22
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +4286 -109
  6. package/dist/index.mjs.map +1 -1
  7. package/package.json +6 -6
  8. package/dist/chunk-32YJ5VJ4.mjs +0 -157
  9. package/dist/chunk-32YJ5VJ4.mjs.map +0 -1
  10. package/dist/chunk-36HFWACS.mjs +0 -1
  11. package/dist/chunk-36HFWACS.mjs.map +0 -1
  12. package/dist/chunk-46BZRXWT.mjs +0 -16
  13. package/dist/chunk-46BZRXWT.mjs.map +0 -1
  14. package/dist/chunk-4UDBR75C.mjs +0 -106
  15. package/dist/chunk-4UDBR75C.mjs.map +0 -1
  16. package/dist/chunk-4XJK5IVQ.mjs +0 -83
  17. package/dist/chunk-4XJK5IVQ.mjs.map +0 -1
  18. package/dist/chunk-5JNWVLQI.mjs +0 -72
  19. package/dist/chunk-5JNWVLQI.mjs.map +0 -1
  20. package/dist/chunk-5SC3CO5Q.mjs +0 -69
  21. package/dist/chunk-5SC3CO5Q.mjs.map +0 -1
  22. package/dist/chunk-6VUKDHOD.mjs +0 -1
  23. package/dist/chunk-6VUKDHOD.mjs.map +0 -1
  24. package/dist/chunk-7HM7CU5A.mjs +0 -122
  25. package/dist/chunk-7HM7CU5A.mjs.map +0 -1
  26. package/dist/chunk-AEFM73CL.mjs +0 -32
  27. package/dist/chunk-AEFM73CL.mjs.map +0 -1
  28. package/dist/chunk-AI3Z3CHN.mjs +0 -97
  29. package/dist/chunk-AI3Z3CHN.mjs.map +0 -1
  30. package/dist/chunk-AXFRCGH6.mjs +0 -107
  31. package/dist/chunk-AXFRCGH6.mjs.map +0 -1
  32. package/dist/chunk-BNT754Z2.mjs +0 -185
  33. package/dist/chunk-BNT754Z2.mjs.map +0 -1
  34. package/dist/chunk-BT6C5OPU.mjs +0 -278
  35. package/dist/chunk-BT6C5OPU.mjs.map +0 -1
  36. package/dist/chunk-CDSO65ZY.mjs +0 -157
  37. package/dist/chunk-CDSO65ZY.mjs.map +0 -1
  38. package/dist/chunk-CGLGXQAU.mjs +0 -78
  39. package/dist/chunk-CGLGXQAU.mjs.map +0 -1
  40. package/dist/chunk-DVUQO72Z.mjs +0 -1
  41. package/dist/chunk-DVUQO72Z.mjs.map +0 -1
  42. package/dist/chunk-E56GYBP3.mjs +0 -101
  43. package/dist/chunk-E56GYBP3.mjs.map +0 -1
  44. package/dist/chunk-ETWJDCGE.mjs +0 -1
  45. package/dist/chunk-ETWJDCGE.mjs.map +0 -1
  46. package/dist/chunk-FIBK3DYE.mjs +0 -26
  47. package/dist/chunk-FIBK3DYE.mjs.map +0 -1
  48. package/dist/chunk-FVURPXQK.mjs +0 -45
  49. package/dist/chunk-FVURPXQK.mjs.map +0 -1
  50. package/dist/chunk-FZR2XQKR.mjs +0 -44
  51. package/dist/chunk-FZR2XQKR.mjs.map +0 -1
  52. package/dist/chunk-GK4NXPLC.mjs +0 -60
  53. package/dist/chunk-GK4NXPLC.mjs.map +0 -1
  54. package/dist/chunk-IA4CLXDM.mjs +0 -76
  55. package/dist/chunk-IA4CLXDM.mjs.map +0 -1
  56. package/dist/chunk-IICUCI5S.mjs +0 -43
  57. package/dist/chunk-IICUCI5S.mjs.map +0 -1
  58. package/dist/chunk-JLVGSNAO.mjs +0 -311
  59. package/dist/chunk-JLVGSNAO.mjs.map +0 -1
  60. package/dist/chunk-JWOIINVV.mjs +0 -237
  61. package/dist/chunk-JWOIINVV.mjs.map +0 -1
  62. package/dist/chunk-KCVDFZJX.mjs +0 -873
  63. package/dist/chunk-KCVDFZJX.mjs.map +0 -1
  64. package/dist/chunk-KPRUSQ3K.mjs +0 -1
  65. package/dist/chunk-KPRUSQ3K.mjs.map +0 -1
  66. package/dist/chunk-MWC5OV7Z.mjs +0 -1
  67. package/dist/chunk-MWC5OV7Z.mjs.map +0 -1
  68. package/dist/chunk-N5EP5OD5.mjs +0 -1
  69. package/dist/chunk-N5EP5OD5.mjs.map +0 -1
  70. package/dist/chunk-N5HC66HU.mjs +0 -311
  71. package/dist/chunk-N5HC66HU.mjs.map +0 -1
  72. package/dist/chunk-NB2GZAKG.mjs +0 -131
  73. package/dist/chunk-NB2GZAKG.mjs.map +0 -1
  74. package/dist/chunk-NB4DFAZH.mjs +0 -185
  75. package/dist/chunk-NB4DFAZH.mjs.map +0 -1
  76. package/dist/chunk-NNAYEAP2.mjs +0 -49
  77. package/dist/chunk-NNAYEAP2.mjs.map +0 -1
  78. package/dist/chunk-NNPKBGD6.mjs +0 -37
  79. package/dist/chunk-NNPKBGD6.mjs.map +0 -1
  80. package/dist/chunk-OMPVTGXH.mjs +0 -122
  81. package/dist/chunk-OMPVTGXH.mjs.map +0 -1
  82. package/dist/chunk-R5OLAA3L.mjs +0 -135
  83. package/dist/chunk-R5OLAA3L.mjs.map +0 -1
  84. package/dist/chunk-RF2CGPHQ.mjs +0 -215
  85. package/dist/chunk-RF2CGPHQ.mjs.map +0 -1
  86. package/dist/chunk-RGD2L3Z4.mjs +0 -96
  87. package/dist/chunk-RGD2L3Z4.mjs.map +0 -1
  88. package/dist/chunk-RK5P2LG6.mjs +0 -57
  89. package/dist/chunk-RK5P2LG6.mjs.map +0 -1
  90. package/dist/chunk-RRXDJCXI.mjs +0 -60
  91. package/dist/chunk-RRXDJCXI.mjs.map +0 -1
  92. package/dist/chunk-SPDE34WC.mjs +0 -283
  93. package/dist/chunk-SPDE34WC.mjs.map +0 -1
  94. package/dist/chunk-TAUOEJH2.mjs +0 -120
  95. package/dist/chunk-TAUOEJH2.mjs.map +0 -1
  96. package/dist/chunk-TBE7ZI5G.mjs +0 -45
  97. package/dist/chunk-TBE7ZI5G.mjs.map +0 -1
  98. package/dist/chunk-UOX5D73C.mjs +0 -22
  99. package/dist/chunk-UOX5D73C.mjs.map +0 -1
  100. package/dist/chunk-US4KNAAV.mjs +0 -1
  101. package/dist/chunk-US4KNAAV.mjs.map +0 -1
  102. package/dist/chunk-UZB3CTOY.mjs +0 -873
  103. package/dist/chunk-UZB3CTOY.mjs.map +0 -1
  104. package/dist/chunk-VBI6JXPC.mjs +0 -1
  105. package/dist/chunk-VBI6JXPC.mjs.map +0 -1
  106. package/dist/chunk-VVAXSF3M.mjs +0 -61
  107. package/dist/chunk-VVAXSF3M.mjs.map +0 -1
  108. package/dist/chunk-XO4IRKSC.mjs +0 -11
  109. package/dist/chunk-XO4IRKSC.mjs.map +0 -1
  110. package/dist/chunk-XU5CEPYQ.mjs +0 -75
  111. package/dist/chunk-XU5CEPYQ.mjs.map +0 -1
  112. package/dist/chunk-YPH4BHOY.mjs +0 -39
  113. package/dist/chunk-YPH4BHOY.mjs.map +0 -1
  114. package/dist/chunk-YZUPVMHC.mjs +0 -1
  115. package/dist/chunk-YZUPVMHC.mjs.map +0 -1
  116. package/dist/components/CopilotKitInspector.d.mts +0 -13
  117. package/dist/components/CopilotKitInspector.d.ts +0 -13
  118. package/dist/components/CopilotKitInspector.js +0 -69
  119. package/dist/components/CopilotKitInspector.js.map +0 -1
  120. package/dist/components/CopilotKitInspector.mjs +0 -7
  121. package/dist/components/CopilotKitInspector.mjs.map +0 -1
  122. package/dist/components/WildcardToolCallRender.d.mts +0 -7
  123. package/dist/components/WildcardToolCallRender.d.ts +0 -7
  124. package/dist/components/WildcardToolCallRender.js +0 -106
  125. package/dist/components/WildcardToolCallRender.js.map +0 -1
  126. package/dist/components/WildcardToolCallRender.mjs +0 -8
  127. package/dist/components/WildcardToolCallRender.mjs.map +0 -1
  128. package/dist/components/chat/CopilotChat.d.mts +0 -30
  129. package/dist/components/chat/CopilotChat.d.ts +0 -30
  130. package/dist/components/chat/CopilotChat.js +0 -2934
  131. package/dist/components/chat/CopilotChat.js.map +0 -1
  132. package/dist/components/chat/CopilotChat.mjs +0 -37
  133. package/dist/components/chat/CopilotChat.mjs.map +0 -1
  134. package/dist/components/chat/CopilotChatAssistantMessage.d.mts +0 -45
  135. package/dist/components/chat/CopilotChatAssistantMessage.d.ts +0 -45
  136. package/dist/components/chat/CopilotChatAssistantMessage.js +0 -735
  137. package/dist/components/chat/CopilotChatAssistantMessage.js.map +0 -1
  138. package/dist/components/chat/CopilotChatAssistantMessage.mjs +0 -29
  139. package/dist/components/chat/CopilotChatAssistantMessage.mjs.map +0 -1
  140. package/dist/components/chat/CopilotChatAudioRecorder.d.mts +0 -11
  141. package/dist/components/chat/CopilotChatAudioRecorder.d.ts +0 -11
  142. package/dist/components/chat/CopilotChatAudioRecorder.js +0 -131
  143. package/dist/components/chat/CopilotChatAudioRecorder.js.map +0 -1
  144. package/dist/components/chat/CopilotChatAudioRecorder.mjs +0 -9
  145. package/dist/components/chat/CopilotChatAudioRecorder.mjs.map +0 -1
  146. package/dist/components/chat/CopilotChatInput.d.mts +0 -67
  147. package/dist/components/chat/CopilotChatInput.d.ts +0 -67
  148. package/dist/components/chat/CopilotChatInput.js +0 -1305
  149. package/dist/components/chat/CopilotChatInput.js.map +0 -1
  150. package/dist/components/chat/CopilotChatInput.mjs +0 -16
  151. package/dist/components/chat/CopilotChatInput.mjs.map +0 -1
  152. package/dist/components/chat/CopilotChatMessageView.d.mts +0 -29
  153. package/dist/components/chat/CopilotChatMessageView.d.ts +0 -29
  154. package/dist/components/chat/CopilotChatMessageView.js +0 -1164
  155. package/dist/components/chat/CopilotChatMessageView.js.map +0 -1
  156. package/dist/components/chat/CopilotChatMessageView.mjs +0 -31
  157. package/dist/components/chat/CopilotChatMessageView.mjs.map +0 -1
  158. package/dist/components/chat/CopilotChatSuggestionPill.d.mts +0 -11
  159. package/dist/components/chat/CopilotChatSuggestionPill.d.ts +0 -11
  160. package/dist/components/chat/CopilotChatSuggestionPill.js +0 -76
  161. package/dist/components/chat/CopilotChatSuggestionPill.js.map +0 -1
  162. package/dist/components/chat/CopilotChatSuggestionPill.mjs +0 -10
  163. package/dist/components/chat/CopilotChatSuggestionPill.mjs.map +0 -1
  164. package/dist/components/chat/CopilotChatSuggestionView.d.mts +0 -33
  165. package/dist/components/chat/CopilotChatSuggestionView.d.ts +0 -33
  166. package/dist/components/chat/CopilotChatSuggestionView.js +0 -179
  167. package/dist/components/chat/CopilotChatSuggestionView.js.map +0 -1
  168. package/dist/components/chat/CopilotChatSuggestionView.mjs +0 -12
  169. package/dist/components/chat/CopilotChatSuggestionView.mjs.map +0 -1
  170. package/dist/components/chat/CopilotChatToggleButton.d.mts +0 -14
  171. package/dist/components/chat/CopilotChatToggleButton.d.ts +0 -14
  172. package/dist/components/chat/CopilotChatToggleButton.js +0 -222
  173. package/dist/components/chat/CopilotChatToggleButton.js.map +0 -1
  174. package/dist/components/chat/CopilotChatToggleButton.mjs +0 -16
  175. package/dist/components/chat/CopilotChatToggleButton.mjs.map +0 -1
  176. package/dist/components/chat/CopilotChatToolCallsView.d.mts +0 -10
  177. package/dist/components/chat/CopilotChatToolCallsView.d.ts +0 -10
  178. package/dist/components/chat/CopilotChatToolCallsView.js +0 -264
  179. package/dist/components/chat/CopilotChatToolCallsView.js.map +0 -1
  180. package/dist/components/chat/CopilotChatToolCallsView.mjs +0 -24
  181. package/dist/components/chat/CopilotChatToolCallsView.mjs.map +0 -1
  182. package/dist/components/chat/CopilotChatUserMessage.d.mts +0 -52
  183. package/dist/components/chat/CopilotChatUserMessage.d.ts +0 -52
  184. package/dist/components/chat/CopilotChatUserMessage.js +0 -523
  185. package/dist/components/chat/CopilotChatUserMessage.js.map +0 -1
  186. package/dist/components/chat/CopilotChatUserMessage.mjs +0 -14
  187. package/dist/components/chat/CopilotChatUserMessage.mjs.map +0 -1
  188. package/dist/components/chat/CopilotChatView.d.mts +0 -54
  189. package/dist/components/chat/CopilotChatView.d.ts +0 -54
  190. package/dist/components/chat/CopilotChatView.js +0 -2640
  191. package/dist/components/chat/CopilotChatView.js.map +0 -1
  192. package/dist/components/chat/CopilotChatView.mjs +0 -38
  193. package/dist/components/chat/CopilotChatView.mjs.map +0 -1
  194. package/dist/components/chat/CopilotModalHeader.d.mts +0 -22
  195. package/dist/components/chat/CopilotModalHeader.d.ts +0 -22
  196. package/dist/components/chat/CopilotModalHeader.js +0 -186
  197. package/dist/components/chat/CopilotModalHeader.js.map +0 -1
  198. package/dist/components/chat/CopilotModalHeader.mjs +0 -12
  199. package/dist/components/chat/CopilotModalHeader.mjs.map +0 -1
  200. package/dist/components/chat/CopilotPopup.d.mts +0 -33
  201. package/dist/components/chat/CopilotPopup.d.ts +0 -33
  202. package/dist/components/chat/CopilotPopup.js +0 -3343
  203. package/dist/components/chat/CopilotPopup.js.map +0 -1
  204. package/dist/components/chat/CopilotPopup.mjs +0 -43
  205. package/dist/components/chat/CopilotPopup.mjs.map +0 -1
  206. package/dist/components/chat/CopilotPopupView.d.mts +0 -30
  207. package/dist/components/chat/CopilotPopupView.d.ts +0 -30
  208. package/dist/components/chat/CopilotPopupView.js +0 -3003
  209. package/dist/components/chat/CopilotPopupView.js.map +0 -1
  210. package/dist/components/chat/CopilotPopupView.mjs +0 -41
  211. package/dist/components/chat/CopilotPopupView.mjs.map +0 -1
  212. package/dist/components/chat/CopilotSidebar.d.mts +0 -31
  213. package/dist/components/chat/CopilotSidebar.d.ts +0 -31
  214. package/dist/components/chat/CopilotSidebar.js +0 -3266
  215. package/dist/components/chat/CopilotSidebar.js.map +0 -1
  216. package/dist/components/chat/CopilotSidebar.mjs +0 -43
  217. package/dist/components/chat/CopilotSidebar.mjs.map +0 -1
  218. package/dist/components/chat/CopilotSidebarView.d.mts +0 -28
  219. package/dist/components/chat/CopilotSidebarView.d.ts +0 -28
  220. package/dist/components/chat/CopilotSidebarView.js +0 -2941
  221. package/dist/components/chat/CopilotSidebarView.js.map +0 -1
  222. package/dist/components/chat/CopilotSidebarView.mjs +0 -41
  223. package/dist/components/chat/CopilotSidebarView.mjs.map +0 -1
  224. package/dist/components/chat/index.d.mts +0 -23
  225. package/dist/components/chat/index.d.ts +0 -23
  226. package/dist/components/chat/index.js +0 -3503
  227. package/dist/components/chat/index.js.map +0 -1
  228. package/dist/components/chat/index.mjs +0 -95
  229. package/dist/components/chat/index.mjs.map +0 -1
  230. package/dist/components/index.d.mts +0 -29
  231. package/dist/components/index.d.ts +0 -29
  232. package/dist/components/index.js +0 -3583
  233. package/dist/components/index.js.map +0 -1
  234. package/dist/components/index.mjs +0 -104
  235. package/dist/components/index.mjs.map +0 -1
  236. package/dist/components/ui/button.d.mts +0 -14
  237. package/dist/components/ui/button.d.ts +0 -14
  238. package/dist/components/ui/button.js +0 -150
  239. package/dist/components/ui/button.js.map +0 -1
  240. package/dist/components/ui/button.mjs +0 -10
  241. package/dist/components/ui/button.mjs.map +0 -1
  242. package/dist/components/ui/dropdown-menu.d.mts +0 -28
  243. package/dist/components/ui/dropdown-menu.d.ts +0 -28
  244. package/dist/components/ui/dropdown-menu.js +0 -291
  245. package/dist/components/ui/dropdown-menu.js.map +0 -1
  246. package/dist/components/ui/dropdown-menu.mjs +0 -37
  247. package/dist/components/ui/dropdown-menu.mjs.map +0 -1
  248. package/dist/components/ui/tooltip.d.mts +0 -10
  249. package/dist/components/ui/tooltip.d.ts +0 -10
  250. package/dist/components/ui/tooltip.js +0 -103
  251. package/dist/components/ui/tooltip.js.map +0 -1
  252. package/dist/components/ui/tooltip.mjs +0 -14
  253. package/dist/components/ui/tooltip.mjs.map +0 -1
  254. package/dist/hooks/index.d.mts +0 -19
  255. package/dist/hooks/index.d.ts +0 -19
  256. package/dist/hooks/index.js +0 -691
  257. package/dist/hooks/index.js.map +0 -1
  258. package/dist/hooks/index.mjs +0 -45
  259. package/dist/hooks/index.mjs.map +0 -1
  260. package/dist/hooks/use-agent-context.d.mts +0 -5
  261. package/dist/hooks/use-agent-context.d.ts +0 -5
  262. package/dist/hooks/use-agent-context.js +0 -116
  263. package/dist/hooks/use-agent-context.js.map +0 -1
  264. package/dist/hooks/use-agent-context.mjs +0 -10
  265. package/dist/hooks/use-agent-context.mjs.map +0 -1
  266. package/dist/hooks/use-agent.d.mts +0 -16
  267. package/dist/hooks/use-agent.d.ts +0 -16
  268. package/dist/hooks/use-agent.js +0 -171
  269. package/dist/hooks/use-agent.js.map +0 -1
  270. package/dist/hooks/use-agent.mjs +0 -12
  271. package/dist/hooks/use-agent.mjs.map +0 -1
  272. package/dist/hooks/use-configure-suggestions.d.mts +0 -13
  273. package/dist/hooks/use-configure-suggestions.d.ts +0 -13
  274. package/dist/hooks/use-configure-suggestions.js +0 -232
  275. package/dist/hooks/use-configure-suggestions.js.map +0 -1
  276. package/dist/hooks/use-configure-suggestions.mjs +0 -11
  277. package/dist/hooks/use-configure-suggestions.mjs.map +0 -1
  278. package/dist/hooks/use-frontend-tool.d.mts +0 -8
  279. package/dist/hooks/use-frontend-tool.d.ts +0 -8
  280. package/dist/hooks/use-frontend-tool.js +0 -137
  281. package/dist/hooks/use-frontend-tool.js.map +0 -1
  282. package/dist/hooks/use-frontend-tool.mjs +0 -10
  283. package/dist/hooks/use-frontend-tool.mjs.map +0 -1
  284. package/dist/hooks/use-human-in-the-loop.d.mts +0 -7
  285. package/dist/hooks/use-human-in-the-loop.d.ts +0 -7
  286. package/dist/hooks/use-human-in-the-loop.js +0 -206
  287. package/dist/hooks/use-human-in-the-loop.js.map +0 -1
  288. package/dist/hooks/use-human-in-the-loop.mjs +0 -11
  289. package/dist/hooks/use-human-in-the-loop.mjs.map +0 -1
  290. package/dist/hooks/use-keyboard-height.d.mts +0 -15
  291. package/dist/hooks/use-keyboard-height.d.ts +0 -15
  292. package/dist/hooks/use-keyboard-height.js +0 -68
  293. package/dist/hooks/use-keyboard-height.js.map +0 -1
  294. package/dist/hooks/use-keyboard-height.mjs +0 -7
  295. package/dist/hooks/use-keyboard-height.mjs.map +0 -1
  296. package/dist/hooks/use-render-activity-message.d.mts +0 -5
  297. package/dist/hooks/use-render-activity-message.d.ts +0 -5
  298. package/dist/hooks/use-render-activity-message.js +0 -158
  299. package/dist/hooks/use-render-activity-message.js.map +0 -1
  300. package/dist/hooks/use-render-activity-message.mjs +0 -12
  301. package/dist/hooks/use-render-activity-message.mjs.map +0 -1
  302. package/dist/hooks/use-render-custom-messages.d.mts +0 -11
  303. package/dist/hooks/use-render-custom-messages.d.ts +0 -11
  304. package/dist/hooks/use-render-custom-messages.js +0 -170
  305. package/dist/hooks/use-render-custom-messages.js.map +0 -1
  306. package/dist/hooks/use-render-custom-messages.mjs +0 -12
  307. package/dist/hooks/use-render-custom-messages.mjs.map +0 -1
  308. package/dist/hooks/use-render-tool-call.d.mts +0 -16
  309. package/dist/hooks/use-render-tool-call.d.ts +0 -16
  310. package/dist/hooks/use-render-tool-call.js +0 -208
  311. package/dist/hooks/use-render-tool-call.js.map +0 -1
  312. package/dist/hooks/use-render-tool-call.mjs +0 -11
  313. package/dist/hooks/use-render-tool-call.mjs.map +0 -1
  314. package/dist/hooks/use-suggestions.d.mts +0 -14
  315. package/dist/hooks/use-suggestions.d.ts +0 -14
  316. package/dist/hooks/use-suggestions.js +0 -176
  317. package/dist/hooks/use-suggestions.js.map +0 -1
  318. package/dist/hooks/use-suggestions.mjs +0 -11
  319. package/dist/hooks/use-suggestions.mjs.map +0 -1
  320. package/dist/lib/react-core.d.mts +0 -33
  321. package/dist/lib/react-core.d.ts +0 -33
  322. package/dist/lib/react-core.js +0 -73
  323. package/dist/lib/react-core.js.map +0 -1
  324. package/dist/lib/react-core.mjs +0 -7
  325. package/dist/lib/react-core.mjs.map +0 -1
  326. package/dist/lib/slots.d.mts +0 -16
  327. package/dist/lib/slots.d.ts +0 -16
  328. package/dist/lib/slots.js +0 -60
  329. package/dist/lib/slots.js.map +0 -1
  330. package/dist/lib/slots.mjs +0 -7
  331. package/dist/lib/slots.mjs.map +0 -1
  332. package/dist/lib/utils.d.mts +0 -5
  333. package/dist/lib/utils.d.ts +0 -5
  334. package/dist/lib/utils.js +0 -35
  335. package/dist/lib/utils.js.map +0 -1
  336. package/dist/lib/utils.mjs +0 -7
  337. package/dist/lib/utils.mjs.map +0 -1
  338. package/dist/providers/CopilotChatConfigurationProvider.d.mts +0 -43
  339. package/dist/providers/CopilotChatConfigurationProvider.d.ts +0 -43
  340. package/dist/providers/CopilotChatConfigurationProvider.js +0 -109
  341. package/dist/providers/CopilotChatConfigurationProvider.js.map +0 -1
  342. package/dist/providers/CopilotChatConfigurationProvider.mjs +0 -11
  343. package/dist/providers/CopilotChatConfigurationProvider.mjs.map +0 -1
  344. package/dist/providers/CopilotKitProvider.d.mts +0 -33
  345. package/dist/providers/CopilotKitProvider.d.ts +0 -33
  346. package/dist/providers/CopilotKitProvider.js +0 -314
  347. package/dist/providers/CopilotKitProvider.js.map +0 -1
  348. package/dist/providers/CopilotKitProvider.mjs +0 -12
  349. package/dist/providers/CopilotKitProvider.mjs.map +0 -1
  350. package/dist/providers/index.d.mts +0 -13
  351. package/dist/providers/index.d.ts +0 -13
  352. package/dist/providers/index.js +0 -396
  353. package/dist/providers/index.js.map +0 -1
  354. package/dist/providers/index.mjs +0 -18
  355. package/dist/providers/index.mjs.map +0 -1
  356. package/dist/types/defineToolCallRenderer.d.mts +0 -41
  357. package/dist/types/defineToolCallRenderer.d.ts +0 -41
  358. package/dist/types/defineToolCallRenderer.js +0 -40
  359. package/dist/types/defineToolCallRenderer.js.map +0 -1
  360. package/dist/types/defineToolCallRenderer.mjs +0 -7
  361. package/dist/types/defineToolCallRenderer.mjs.map +0 -1
  362. package/dist/types/frontend-tool.d.mts +0 -9
  363. package/dist/types/frontend-tool.d.ts +0 -9
  364. package/dist/types/frontend-tool.js +0 -19
  365. package/dist/types/frontend-tool.js.map +0 -1
  366. package/dist/types/frontend-tool.mjs +0 -2
  367. package/dist/types/frontend-tool.mjs.map +0 -1
  368. package/dist/types/human-in-the-loop.d.mts +0 -29
  369. package/dist/types/human-in-the-loop.d.ts +0 -29
  370. package/dist/types/human-in-the-loop.js +0 -19
  371. package/dist/types/human-in-the-loop.js.map +0 -1
  372. package/dist/types/human-in-the-loop.mjs +0 -2
  373. package/dist/types/human-in-the-loop.mjs.map +0 -1
  374. package/dist/types/index.d.mts +0 -11
  375. package/dist/types/index.d.ts +0 -11
  376. package/dist/types/index.js +0 -42
  377. package/dist/types/index.js.map +0 -1
  378. package/dist/types/index.mjs +0 -13
  379. package/dist/types/index.mjs.map +0 -1
  380. package/dist/types/react-activity-message-renderer.d.mts +0 -29
  381. package/dist/types/react-activity-message-renderer.d.ts +0 -29
  382. package/dist/types/react-activity-message-renderer.js +0 -19
  383. package/dist/types/react-activity-message-renderer.js.map +0 -1
  384. package/dist/types/react-activity-message-renderer.mjs +0 -2
  385. package/dist/types/react-activity-message-renderer.mjs.map +0 -1
  386. package/dist/types/react-custom-message-renderer.d.mts +0 -18
  387. package/dist/types/react-custom-message-renderer.d.ts +0 -18
  388. package/dist/types/react-custom-message-renderer.js +0 -19
  389. package/dist/types/react-custom-message-renderer.js.map +0 -1
  390. package/dist/types/react-custom-message-renderer.mjs +0 -2
  391. package/dist/types/react-custom-message-renderer.mjs.map +0 -1
  392. package/dist/types/react-tool-call-renderer.d.mts +0 -30
  393. package/dist/types/react-tool-call-renderer.d.ts +0 -30
  394. package/dist/types/react-tool-call-renderer.js +0 -19
  395. package/dist/types/react-tool-call-renderer.js.map +0 -1
  396. package/dist/types/react-tool-call-renderer.mjs +0 -2
  397. package/dist/types/react-tool-call-renderer.mjs.map +0 -1
@@ -1,12 +0,0 @@
1
- import {
2
- UseAgentUpdate,
3
- useAgent
4
- } from "../chunk-IA4CLXDM.mjs";
5
- import "../chunk-RF2CGPHQ.mjs";
6
- import "../chunk-NNAYEAP2.mjs";
7
- import "../chunk-YPH4BHOY.mjs";
8
- export {
9
- UseAgentUpdate,
10
- useAgent
11
- };
12
- //# sourceMappingURL=use-agent.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,13 +0,0 @@
1
- import { DynamicSuggestionsConfig, StaticSuggestionsConfig, Suggestion } from '@copilotkitnext/core';
2
-
3
- type StaticSuggestionInput = Omit<Suggestion, "isLoading"> & Partial<Pick<Suggestion, "isLoading">>;
4
- type StaticSuggestionsConfigInput = Omit<StaticSuggestionsConfig, "suggestions"> & {
5
- suggestions: StaticSuggestionInput[];
6
- };
7
- type SuggestionsConfigInput = DynamicSuggestionsConfig | StaticSuggestionsConfigInput;
8
- interface UseConfigureSuggestionsOptions {
9
- deps?: ReadonlyArray<unknown>;
10
- }
11
- declare function useConfigureSuggestions(config: SuggestionsConfigInput | null | undefined, options?: UseConfigureSuggestionsOptions): void;
12
-
13
- export { type UseConfigureSuggestionsOptions, useConfigureSuggestions };
@@ -1,13 +0,0 @@
1
- import { DynamicSuggestionsConfig, StaticSuggestionsConfig, Suggestion } from '@copilotkitnext/core';
2
-
3
- type StaticSuggestionInput = Omit<Suggestion, "isLoading"> & Partial<Pick<Suggestion, "isLoading">>;
4
- type StaticSuggestionsConfigInput = Omit<StaticSuggestionsConfig, "suggestions"> & {
5
- suggestions: StaticSuggestionInput[];
6
- };
7
- type SuggestionsConfigInput = DynamicSuggestionsConfig | StaticSuggestionsConfigInput;
8
- interface UseConfigureSuggestionsOptions {
9
- deps?: ReadonlyArray<unknown>;
10
- }
11
- declare function useConfigureSuggestions(config: SuggestionsConfigInput | null | undefined, options?: UseConfigureSuggestionsOptions): void;
12
-
13
- export { type UseConfigureSuggestionsOptions, useConfigureSuggestions };
@@ -1,232 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // src/hooks/use-configure-suggestions.tsx
31
- var use_configure_suggestions_exports = {};
32
- __export(use_configure_suggestions_exports, {
33
- useConfigureSuggestions: () => useConfigureSuggestions
34
- });
35
- module.exports = __toCommonJS(use_configure_suggestions_exports);
36
- var import_react4 = require("react");
37
-
38
- // src/providers/CopilotKitProvider.tsx
39
- var import_react2 = require("react");
40
- var import_zod = require("zod");
41
-
42
- // src/lib/react-core.ts
43
- var import_core = require("@copilotkitnext/core");
44
-
45
- // src/components/CopilotKitInspector.tsx
46
- var React = __toESM(require("react"));
47
- var import_react = require("@lit-labs/react");
48
- var import_web_inspector = require("@copilotkitnext/web-inspector");
49
- var import_jsx_runtime = require("react/jsx-runtime");
50
- (0, import_web_inspector.defineWebInspector)();
51
- var CopilotKitInspectorBase = (0, import_react.createComponent)({
52
- tagName: import_web_inspector.WEB_INSPECTOR_TAG,
53
- elementClass: import_web_inspector.WebInspectorElement,
54
- react: React
55
- });
56
- var CopilotKitInspector = React.forwardRef(
57
- ({ core, ...rest }, ref) => {
58
- const innerRef = React.useRef(null);
59
- React.useImperativeHandle(ref, () => innerRef.current, []);
60
- React.useEffect(() => {
61
- if (innerRef.current) {
62
- innerRef.current.core = core ?? null;
63
- }
64
- }, [core]);
65
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
66
- CopilotKitInspectorBase,
67
- {
68
- ...rest,
69
- ref: innerRef
70
- }
71
- );
72
- }
73
- );
74
- CopilotKitInspector.displayName = "CopilotKitInspector";
75
-
76
- // src/providers/CopilotKitProvider.tsx
77
- var import_jsx_runtime2 = require("react/jsx-runtime");
78
- var CopilotKitContext = (0, import_react2.createContext)({
79
- copilotkit: null
80
- });
81
- var useCopilotKit = () => {
82
- const context = (0, import_react2.useContext)(CopilotKitContext);
83
- const [, forceUpdate] = (0, import_react2.useReducer)((x) => x + 1, 0);
84
- if (!context) {
85
- throw new Error("useCopilotKit must be used within CopilotKitProvider");
86
- }
87
- (0, import_react2.useEffect)(() => {
88
- const unsubscribe = context.copilotkit.subscribe({
89
- onRuntimeConnectionStatusChanged: () => {
90
- forceUpdate();
91
- }
92
- });
93
- return () => {
94
- unsubscribe();
95
- };
96
- }, []);
97
- return context;
98
- };
99
-
100
- // src/providers/CopilotChatConfigurationProvider.tsx
101
- var import_react3 = require("react");
102
- var import_shared = require("@copilotkitnext/shared");
103
- var import_jsx_runtime3 = require("react/jsx-runtime");
104
- var CopilotChatConfiguration = (0, import_react3.createContext)(null);
105
- var useCopilotChatConfiguration = () => {
106
- const configuration = (0, import_react3.useContext)(CopilotChatConfiguration);
107
- return configuration;
108
- };
109
-
110
- // src/hooks/use-configure-suggestions.tsx
111
- var import_shared2 = require("@copilotkitnext/shared");
112
- var EMPTY_DEPS = [];
113
- function useConfigureSuggestions(config, options) {
114
- const { copilotkit } = useCopilotKit();
115
- const chatConfig = useCopilotChatConfiguration();
116
- const extraDeps = options?.deps ?? EMPTY_DEPS;
117
- const resolvedConsumerAgentId = (0, import_react4.useMemo)(() => chatConfig?.agentId ?? import_shared2.DEFAULT_AGENT_ID, [chatConfig?.agentId]);
118
- const rawConsumerAgentId = (0, import_react4.useMemo)(() => config ? config.consumerAgentId : void 0, [config]);
119
- const normalizationCacheRef = (0, import_react4.useRef)({
120
- serialized: null,
121
- config: null
122
- });
123
- const { normalizedConfig, serializedConfig } = (0, import_react4.useMemo)(() => {
124
- if (!config) {
125
- normalizationCacheRef.current = { serialized: null, config: null };
126
- return { normalizedConfig: null, serializedConfig: null };
127
- }
128
- if (config.available === "disabled") {
129
- normalizationCacheRef.current = { serialized: null, config: null };
130
- return { normalizedConfig: null, serializedConfig: null };
131
- }
132
- let built;
133
- if (isDynamicConfig(config)) {
134
- built = {
135
- ...config
136
- };
137
- } else {
138
- const normalizedSuggestions = normalizeStaticSuggestions(config.suggestions);
139
- const baseConfig = {
140
- ...config,
141
- suggestions: normalizedSuggestions
142
- };
143
- built = baseConfig;
144
- }
145
- const serialized = JSON.stringify(built);
146
- const cache = normalizationCacheRef.current;
147
- if (cache.serialized === serialized && cache.config) {
148
- return { normalizedConfig: cache.config, serializedConfig: serialized };
149
- }
150
- normalizationCacheRef.current = { serialized, config: built };
151
- return { normalizedConfig: built, serializedConfig: serialized };
152
- }, [config, resolvedConsumerAgentId, ...extraDeps]);
153
- const latestConfigRef = (0, import_react4.useRef)(null);
154
- latestConfigRef.current = normalizedConfig;
155
- const previousSerializedConfigRef = (0, import_react4.useRef)(null);
156
- const targetAgentId = (0, import_react4.useMemo)(() => {
157
- if (!normalizedConfig) {
158
- return resolvedConsumerAgentId;
159
- }
160
- const consumer = normalizedConfig.consumerAgentId;
161
- if (!consumer || consumer === "*") {
162
- return resolvedConsumerAgentId;
163
- }
164
- return consumer;
165
- }, [normalizedConfig, resolvedConsumerAgentId]);
166
- const isGlobalConfig = rawConsumerAgentId === void 0 || rawConsumerAgentId === "*";
167
- const requestReload = (0, import_react4.useCallback)(() => {
168
- if (!normalizedConfig) {
169
- return;
170
- }
171
- if (isGlobalConfig) {
172
- const agents = Object.values(copilotkit.agents ?? {});
173
- for (const entry of agents) {
174
- const agentId = entry.agentId;
175
- if (!agentId) {
176
- continue;
177
- }
178
- if (!entry.isRunning) {
179
- copilotkit.reloadSuggestions(agentId);
180
- }
181
- }
182
- return;
183
- }
184
- if (!targetAgentId) {
185
- return;
186
- }
187
- copilotkit.reloadSuggestions(targetAgentId);
188
- }, [copilotkit, isGlobalConfig, normalizedConfig, targetAgentId]);
189
- (0, import_react4.useEffect)(() => {
190
- if (!serializedConfig || !latestConfigRef.current) {
191
- return;
192
- }
193
- const id = copilotkit.addSuggestionsConfig(latestConfigRef.current);
194
- requestReload();
195
- return () => {
196
- copilotkit.removeSuggestionsConfig(id);
197
- };
198
- }, [copilotkit, serializedConfig, requestReload]);
199
- (0, import_react4.useEffect)(() => {
200
- if (!normalizedConfig) {
201
- previousSerializedConfigRef.current = null;
202
- return;
203
- }
204
- if (serializedConfig && previousSerializedConfigRef.current === serializedConfig) {
205
- return;
206
- }
207
- if (serializedConfig) {
208
- previousSerializedConfigRef.current = serializedConfig;
209
- }
210
- requestReload();
211
- }, [normalizedConfig, requestReload, serializedConfig]);
212
- (0, import_react4.useEffect)(() => {
213
- if (!normalizedConfig || extraDeps.length === 0) {
214
- return;
215
- }
216
- requestReload();
217
- }, [extraDeps.length, normalizedConfig, requestReload, ...extraDeps]);
218
- }
219
- function isDynamicConfig(config) {
220
- return "instructions" in config;
221
- }
222
- function normalizeStaticSuggestions(suggestions) {
223
- return suggestions.map((suggestion) => ({
224
- ...suggestion,
225
- isLoading: suggestion.isLoading ?? false
226
- }));
227
- }
228
- // Annotate the CommonJS export names for ESM import in node:
229
- 0 && (module.exports = {
230
- useConfigureSuggestions
231
- });
232
- //# sourceMappingURL=use-configure-suggestions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/use-configure-suggestions.tsx","../../src/providers/CopilotKitProvider.tsx","../../src/lib/react-core.ts","../../src/components/CopilotKitInspector.tsx","../../src/providers/CopilotChatConfigurationProvider.tsx"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport { useCopilotKit } from \"@/providers/CopilotKitProvider\";\nimport { useCopilotChatConfiguration } from \"@/providers/CopilotChatConfigurationProvider\";\nimport { DEFAULT_AGENT_ID } from \"@copilotkitnext/shared\";\nimport {\n DynamicSuggestionsConfig,\n StaticSuggestionsConfig,\n SuggestionsConfig,\n Suggestion,\n} from \"@copilotkitnext/core\";\n\ntype StaticSuggestionInput = Omit<Suggestion, \"isLoading\"> & Partial<Pick<Suggestion, \"isLoading\">>;\n\ntype StaticSuggestionsConfigInput = Omit<StaticSuggestionsConfig, \"suggestions\"> & {\n suggestions: StaticSuggestionInput[];\n};\n\ntype SuggestionsConfigInput = DynamicSuggestionsConfig | StaticSuggestionsConfigInput;\n\nconst EMPTY_DEPS: ReadonlyArray<unknown> = [];\n\nexport interface UseConfigureSuggestionsOptions {\n deps?: ReadonlyArray<unknown>;\n}\n\nexport function useConfigureSuggestions(\n config: SuggestionsConfigInput | null | undefined,\n options?: UseConfigureSuggestionsOptions,\n): void {\n const { copilotkit } = useCopilotKit();\n const chatConfig = useCopilotChatConfiguration();\n const extraDeps = options?.deps ?? EMPTY_DEPS;\n\n const resolvedConsumerAgentId = useMemo(() => chatConfig?.agentId ?? DEFAULT_AGENT_ID, [chatConfig?.agentId]);\n\n const rawConsumerAgentId = useMemo(() => (config ? (config as SuggestionsConfigInput).consumerAgentId : undefined), [config]);\n\n const normalizationCacheRef = useRef<{ serialized: string | null; config: SuggestionsConfig | null }>({\n serialized: null,\n config: null,\n });\n\n const { normalizedConfig, serializedConfig } = useMemo(() => {\n if (!config) {\n normalizationCacheRef.current = { serialized: null, config: null };\n return { normalizedConfig: null, serializedConfig: null };\n }\n\n if (config.available === \"disabled\") {\n normalizationCacheRef.current = { serialized: null, config: null };\n return { normalizedConfig: null, serializedConfig: null };\n }\n\n let built: SuggestionsConfig;\n if (isDynamicConfig(config)) {\n built = {\n ...config,\n } satisfies DynamicSuggestionsConfig;\n } else {\n const normalizedSuggestions = normalizeStaticSuggestions(config.suggestions);\n const baseConfig: StaticSuggestionsConfig = {\n ...config,\n suggestions: normalizedSuggestions,\n };\n built = baseConfig;\n }\n\n const serialized = JSON.stringify(built);\n const cache = normalizationCacheRef.current;\n if (cache.serialized === serialized && cache.config) {\n return { normalizedConfig: cache.config, serializedConfig: serialized };\n }\n\n normalizationCacheRef.current = { serialized, config: built };\n return { normalizedConfig: built, serializedConfig: serialized };\n }, [config, resolvedConsumerAgentId, ...extraDeps]);\n const latestConfigRef = useRef<SuggestionsConfig | null>(null);\n latestConfigRef.current = normalizedConfig;\n const previousSerializedConfigRef = useRef<string | null>(null);\n\n const targetAgentId = useMemo(() => {\n if (!normalizedConfig) {\n return resolvedConsumerAgentId;\n }\n const consumer = (normalizedConfig as StaticSuggestionsConfig | DynamicSuggestionsConfig).consumerAgentId;\n if (!consumer || consumer === \"*\") {\n return resolvedConsumerAgentId;\n }\n return consumer;\n }, [normalizedConfig, resolvedConsumerAgentId]);\n\n const isGlobalConfig = rawConsumerAgentId === undefined || rawConsumerAgentId === \"*\";\n\n const requestReload = useCallback(() => {\n if (!normalizedConfig) {\n return;\n }\n\n if (isGlobalConfig) {\n const agents = Object.values(copilotkit.agents ?? {});\n for (const entry of agents) {\n const agentId = entry.agentId;\n if (!agentId) {\n continue;\n }\n if (!entry.isRunning) {\n copilotkit.reloadSuggestions(agentId);\n }\n }\n return;\n }\n\n if (!targetAgentId) {\n return;\n }\n\n copilotkit.reloadSuggestions(targetAgentId);\n }, [copilotkit, isGlobalConfig, normalizedConfig, targetAgentId]);\n\n useEffect(() => {\n if (!serializedConfig || !latestConfigRef.current) {\n return;\n }\n\n const id = copilotkit.addSuggestionsConfig(latestConfigRef.current);\n\n requestReload();\n\n return () => {\n copilotkit.removeSuggestionsConfig(id);\n };\n }, [copilotkit, serializedConfig, requestReload]);\n\n useEffect(() => {\n if (!normalizedConfig) {\n previousSerializedConfigRef.current = null;\n return;\n }\n if (serializedConfig && previousSerializedConfigRef.current === serializedConfig) {\n return;\n }\n if (serializedConfig) {\n previousSerializedConfigRef.current = serializedConfig;\n }\n requestReload();\n }, [normalizedConfig, requestReload, serializedConfig]);\n\n useEffect(() => {\n if (!normalizedConfig || extraDeps.length === 0) {\n return;\n }\n requestReload();\n }, [extraDeps.length, normalizedConfig, requestReload, ...extraDeps]);\n\n}\n\nfunction isDynamicConfig(config: SuggestionsConfigInput): config is DynamicSuggestionsConfig {\n return \"instructions\" in config;\n}\n\nfunction normalizeStaticSuggestions(suggestions: StaticSuggestionInput[]): Suggestion[] {\n return suggestions.map((suggestion) => ({\n ...suggestion,\n isLoading: suggestion.isLoading ?? false,\n }));\n}\n","\"use client\";\n\nimport React, {\n createContext,\n useContext,\n ReactNode,\n useMemo,\n useEffect,\n useReducer,\n useRef,\n useState,\n} from \"react\";\nimport { ReactActivityMessageRenderer, ReactToolCallRenderer } from \"../types\";\nimport { ReactCustomMessageRenderer } from \"../types/react-custom-message-renderer\";\nimport { ReactFrontendTool } from \"../types/frontend-tool\";\nimport { ReactHumanInTheLoop } from \"../types/human-in-the-loop\";\nimport { z } from \"zod\";\nimport { FrontendTool } from \"@copilotkitnext/core\";\nimport { AbstractAgent } from \"@ag-ui/client\";\nimport { CopilotKitCoreReact } from \"../lib/react-core\";\nimport { CopilotKitInspector } from \"../components/CopilotKitInspector\";\n\n// Define the context value interface - idiomatic React naming\nexport interface CopilotKitContextValue {\n copilotkit: CopilotKitCoreReact;\n}\n\n// Create the CopilotKit context\nconst CopilotKitContext = createContext<CopilotKitContextValue>({\n copilotkit: null!,\n});\n\n// Provider props interface\nexport interface CopilotKitProviderProps {\n children: ReactNode;\n runtimeUrl?: string;\n headers?: Record<string, string>;\n properties?: Record<string, unknown>;\n useSingleEndpoint?: boolean;\n agents__unsafe_dev_only?: Record<string, AbstractAgent>;\n renderToolCalls?: ReactToolCallRenderer<any>[];\n renderActivityMessages?: ReactActivityMessageRenderer<any>[];\n renderCustomMessages?: ReactCustomMessageRenderer[];\n frontendTools?: ReactFrontendTool[];\n humanInTheLoop?: ReactHumanInTheLoop[];\n showDevConsole?: boolean | \"auto\";\n}\n\n// Small helper to normalize array props to a stable reference and warn\nfunction useStableArrayProp<T>(\n prop: T[] | undefined,\n warningMessage?: string,\n isMeaningfulChange?: (initial: T[], next: T[]) => boolean,\n): T[] {\n const empty = useMemo<T[]>(() => [], []);\n const value = prop ?? empty;\n const initial = useRef(value);\n\n useEffect(() => {\n if (\n warningMessage &&\n value !== initial.current &&\n (isMeaningfulChange ? isMeaningfulChange(initial.current, value) : true)\n ) {\n console.error(warningMessage);\n }\n }, [value, warningMessage]);\n\n return value;\n}\n\n// Provider component\nexport const CopilotKitProvider: React.FC<CopilotKitProviderProps> = ({\n children,\n runtimeUrl,\n headers = {},\n properties = {},\n agents__unsafe_dev_only: agents = {},\n renderToolCalls,\n renderActivityMessages,\n renderCustomMessages,\n frontendTools,\n humanInTheLoop,\n showDevConsole = false,\n useSingleEndpoint = false,\n}) => {\n const [shouldRenderInspector, setShouldRenderInspector] = useState(false);\n\n useEffect(() => {\n if (typeof window === \"undefined\") {\n return;\n }\n\n if (showDevConsole === true) {\n // Explicitly show the inspector\n setShouldRenderInspector(true);\n } else if (showDevConsole === \"auto\") {\n // Show on localhost or 127.0.0.1 only\n const localhostHosts = new Set([\"localhost\", \"127.0.0.1\"]);\n if (localhostHosts.has(window.location.hostname)) {\n setShouldRenderInspector(true);\n } else {\n setShouldRenderInspector(false);\n }\n } else {\n // showDevConsole is false or undefined (default false)\n setShouldRenderInspector(false);\n }\n }, [showDevConsole]);\n\n // Normalize array props to stable references with clear dev warnings\n const renderToolCallsList = useStableArrayProp<ReactToolCallRenderer<any>>(\n renderToolCalls,\n \"renderToolCalls must be a stable array. If you want to dynamically add or remove tools, use `useFrontendTool` instead.\",\n (initial, next) => {\n // Only warn if the shape (names+agentId) changed. Allow identity changes\n // to support updated closures from parents (e.g., Storybook state).\n const key = (rc?: ReactToolCallRenderer<unknown>) => `${rc?.agentId ?? \"\"}:${rc?.name ?? \"\"}`;\n const setFrom = (arr: ReactToolCallRenderer<unknown>[]) => new Set(arr.map(key));\n const a = setFrom(initial);\n const b = setFrom(next);\n if (a.size !== b.size) return true;\n for (const k of a) if (!b.has(k)) return true;\n return false;\n },\n );\n\n const renderCustomMessagesList = useStableArrayProp<ReactCustomMessageRenderer>(\n renderCustomMessages,\n \"renderCustomMessages must be a stable array.\",\n );\n\n const renderActivityMessagesList = useStableArrayProp<ReactActivityMessageRenderer<any>>(\n renderActivityMessages,\n \"renderActivityMessages must be a stable array.\",\n );\n\n const frontendToolsList = useStableArrayProp<ReactFrontendTool>(\n frontendTools,\n \"frontendTools must be a stable array. If you want to dynamically add or remove tools, use `useFrontendTool` instead.\",\n );\n const humanInTheLoopList = useStableArrayProp<ReactHumanInTheLoop>(\n humanInTheLoop,\n \"humanInTheLoop must be a stable array. If you want to dynamically add or remove human-in-the-loop tools, use `useHumanInTheLoop` instead.\",\n );\n\n // Note: warnings for array identity changes are handled by useStableArrayProp\n\n // Process humanInTheLoop tools to create handlers and add render components\n const processedHumanInTheLoopTools = useMemo(() => {\n const processedTools: FrontendTool[] = [];\n const processedRenderToolCalls: ReactToolCallRenderer<unknown>[] = [];\n\n humanInTheLoopList.forEach((tool) => {\n // Create a promise-based handler for each human-in-the-loop tool\n const frontendTool: FrontendTool = {\n name: tool.name,\n description: tool.description,\n parameters: tool.parameters,\n followUp: tool.followUp,\n ...(tool.agentId && { agentId: tool.agentId }),\n handler: async () => {\n // This handler will be replaced by the hook when it runs\n // For provider-level tools, we create a basic handler that waits for user interaction\n return new Promise((resolve) => {\n // The actual implementation will be handled by the render component\n // This is a placeholder that the hook will override\n console.warn(`Human-in-the-loop tool '${tool.name}' called but no interactive handler is set up.`);\n resolve(undefined);\n });\n },\n };\n processedTools.push(frontendTool);\n\n // Add the render component to renderToolCalls\n if (tool.render) {\n processedRenderToolCalls.push({\n name: tool.name,\n args: tool.parameters!,\n render: tool.render,\n ...(tool.agentId && { agentId: tool.agentId }),\n } as ReactToolCallRenderer<unknown>);\n }\n });\n\n return { tools: processedTools, renderToolCalls: processedRenderToolCalls };\n }, [humanInTheLoopList]);\n\n // Combine all tools for CopilotKitCore\n const allTools = useMemo(() => {\n const tools: FrontendTool[] = [];\n\n // Add frontend tools\n tools.push(...frontendToolsList);\n\n // Add processed human-in-the-loop tools\n tools.push(...processedHumanInTheLoopTools.tools);\n\n return tools;\n }, [frontendToolsList, processedHumanInTheLoopTools]);\n\n // Combine all render tool calls\n const allRenderToolCalls = useMemo(() => {\n const combined: ReactToolCallRenderer<unknown>[] = [...renderToolCallsList];\n\n // Add render components from frontend tools\n frontendToolsList.forEach((tool) => {\n if (tool.render) {\n // For wildcard tools without parameters, default to z.any()\n const args = tool.parameters || (tool.name === \"*\" ? z.any() : undefined);\n if (args) {\n combined.push({\n name: tool.name,\n args: args,\n render: tool.render,\n } as ReactToolCallRenderer<unknown>);\n }\n }\n });\n\n // Add render components from human-in-the-loop tools\n combined.push(...processedHumanInTheLoopTools.renderToolCalls);\n\n return combined;\n }, [renderToolCallsList, frontendToolsList, processedHumanInTheLoopTools]);\n\n const copilotkit = useMemo(() => {\n const copilotkit = new CopilotKitCoreReact({\n runtimeUrl,\n runtimeTransport: useSingleEndpoint ? \"single\" : \"rest\",\n headers,\n properties,\n agents__unsafe_dev_only: agents,\n tools: allTools,\n renderToolCalls: allRenderToolCalls,\n renderActivityMessages: renderActivityMessagesList,\n renderCustomMessages: renderCustomMessagesList,\n });\n\n return copilotkit;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [allTools, allRenderToolCalls, renderActivityMessagesList, renderCustomMessagesList, useSingleEndpoint]);\n\n // Subscribe to render tool calls changes to force re-renders\n const [, forceUpdate] = useReducer((x) => x + 1, 0);\n\n useEffect(() => {\n const unsubscribe = copilotkit.subscribe({\n onRenderToolCallsChanged: () => {\n forceUpdate();\n },\n });\n\n return () => {\n unsubscribe();\n };\n }, [copilotkit]);\n\n useEffect(() => {\n copilotkit.setRuntimeUrl(runtimeUrl);\n copilotkit.setRuntimeTransport(useSingleEndpoint ? \"single\" : \"rest\");\n copilotkit.setHeaders(headers);\n copilotkit.setProperties(properties);\n copilotkit.setAgents__unsafe_dev_only(agents);\n }, [runtimeUrl, headers, properties, agents, useSingleEndpoint]);\n\n return (\n <CopilotKitContext.Provider\n value={{\n copilotkit,\n }}\n >\n {children}\n {shouldRenderInspector ? <CopilotKitInspector core={copilotkit} /> : null}\n </CopilotKitContext.Provider>\n );\n};\n\n// Hook to use the CopilotKit instance - returns the full context value\nexport const useCopilotKit = (): CopilotKitContextValue => {\n const context = useContext(CopilotKitContext);\n const [, forceUpdate] = useReducer((x) => x + 1, 0);\n\n if (!context) {\n throw new Error(\"useCopilotKit must be used within CopilotKitProvider\");\n }\n useEffect(() => {\n const unsubscribe = context.copilotkit.subscribe({\n onRuntimeConnectionStatusChanged: () => {\n forceUpdate();\n },\n });\n return () => {\n unsubscribe();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return context;\n};\n","import { ReactActivityMessageRenderer, ReactToolCallRenderer } from \"@/types\";\nimport { ReactCustomMessageRenderer } from \"@/types/react-custom-message-renderer\";\nimport { CopilotKitCore, CopilotKitCoreConfig, CopilotKitCoreSubscriber } from \"@copilotkitnext/core\";\n\nexport interface CopilotKitCoreReactConfig extends CopilotKitCoreConfig {\n // Add any additional configuration properties specific to the React implementation\n renderToolCalls?: ReactToolCallRenderer<any>[];\n renderActivityMessages?: ReactActivityMessageRenderer<any>[];\n\n // Add custom message renderers\n renderCustomMessages?: ReactCustomMessageRenderer[];\n}\n\nexport interface CopilotKitCoreReactSubscriber extends CopilotKitCoreSubscriber {\n onRenderToolCallsChanged?: (event: {\n copilotkit: CopilotKitCore;\n renderToolCalls: ReactToolCallRenderer<any>[];\n }) => void | Promise<void>;\n}\n\nexport class CopilotKitCoreReact extends CopilotKitCore {\n private _renderToolCalls: ReactToolCallRenderer<any>[] = [];\n private _renderCustomMessages: ReactCustomMessageRenderer[] = [];\n private _renderActivityMessages: ReactActivityMessageRenderer<any>[] = [];\n\n constructor(config: CopilotKitCoreReactConfig) {\n super(config);\n this._renderToolCalls = config.renderToolCalls ?? [];\n this._renderCustomMessages = config.renderCustomMessages ?? [];\n this._renderActivityMessages = config.renderActivityMessages ?? [];\n }\n\n get renderCustomMessages(): Readonly<ReactCustomMessageRenderer[]> {\n return this._renderCustomMessages;\n }\n\n get renderActivityMessages(): Readonly<ReactActivityMessageRenderer<any>>[] {\n return this._renderActivityMessages;\n }\n\n get renderToolCalls(): Readonly<ReactToolCallRenderer<any>>[] {\n return this._renderToolCalls;\n }\n\n setRenderToolCalls(renderToolCalls: ReactToolCallRenderer<any>[]): void {\n this._renderToolCalls = renderToolCalls;\n\n // Notify React-specific subscribers\n void this.notifySubscribers(\n (subscriber) => {\n const reactSubscriber = subscriber as CopilotKitCoreReactSubscriber;\n if (reactSubscriber.onRenderToolCallsChanged) {\n reactSubscriber.onRenderToolCallsChanged({\n copilotkit: this,\n renderToolCalls: this.renderToolCalls,\n });\n }\n },\n \"Subscriber onRenderToolCallsChanged error:\"\n );\n }\n\n // Override to accept React-specific subscriber type\n subscribe(subscriber: CopilotKitCoreReactSubscriber): () => void {\n return super.subscribe(subscriber);\n }\n\n unsubscribe(subscriber: CopilotKitCoreReactSubscriber): void {\n super.unsubscribe(subscriber);\n }\n}\n","import * as React from \"react\";\nimport { createComponent } from \"@lit-labs/react\";\nimport {\n WEB_INSPECTOR_TAG,\n WebInspectorElement,\n defineWebInspector,\n} from \"@copilotkitnext/web-inspector\";\nimport type { CopilotKitCore } from \"@copilotkitnext/core\";\n\ndefineWebInspector();\n\nconst CopilotKitInspectorBase = createComponent({\n tagName: WEB_INSPECTOR_TAG,\n elementClass: WebInspectorElement,\n react: React,\n});\n\nexport type CopilotKitInspectorBaseProps = React.ComponentProps<typeof CopilotKitInspectorBase>;\n\nexport interface CopilotKitInspectorProps extends Omit<CopilotKitInspectorBaseProps, \"core\"> {\n core?: CopilotKitCore | null;\n}\n\nexport const CopilotKitInspector = React.forwardRef<\n WebInspectorElement,\n CopilotKitInspectorProps\n>(\n ({ core, ...rest }, ref) => {\n const innerRef = React.useRef<WebInspectorElement>(null);\n\n React.useImperativeHandle(ref, () => innerRef.current as WebInspectorElement, []);\n\n React.useEffect(() => {\n if (innerRef.current) {\n innerRef.current.core = core ?? null;\n }\n }, [core]);\n\n return (\n <CopilotKitInspectorBase\n {...(rest as CopilotKitInspectorBaseProps)}\n ref={innerRef}\n />\n ); // eslint-disable-line react/jsx-props-no-spreading\n },\n);\n\nCopilotKitInspector.displayName = \"CopilotKitInspector\";\n","import React, { createContext, useContext, ReactNode, useMemo, useState } from \"react\";\nimport { DEFAULT_AGENT_ID, randomUUID } from \"@copilotkitnext/shared\";\n\n// Default labels\nexport const CopilotChatDefaultLabels = {\n chatInputPlaceholder: \"Type a message...\",\n chatInputToolbarStartTranscribeButtonLabel: \"Transcribe\",\n chatInputToolbarCancelTranscribeButtonLabel: \"Cancel\",\n chatInputToolbarFinishTranscribeButtonLabel: \"Finish\",\n chatInputToolbarAddButtonLabel: \"Add photos or files\",\n chatInputToolbarToolsButtonLabel: \"Tools\",\n assistantMessageToolbarCopyCodeLabel: \"Copy\",\n assistantMessageToolbarCopyCodeCopiedLabel: \"Copied\",\n assistantMessageToolbarCopyMessageLabel: \"Copy\",\n assistantMessageToolbarThumbsUpLabel: \"Good response\",\n assistantMessageToolbarThumbsDownLabel: \"Bad response\",\n assistantMessageToolbarReadAloudLabel: \"Read aloud\",\n assistantMessageToolbarRegenerateLabel: \"Regenerate\",\n userMessageToolbarCopyMessageLabel: \"Copy\",\n userMessageToolbarEditMessageLabel: \"Edit\",\n chatDisclaimerText: \"AI can make mistakes. Please verify important information.\",\n chatToggleOpenLabel: \"Open chat\",\n chatToggleCloseLabel: \"Close chat\",\n modalHeaderTitle: \"CopilotKit Chat\",\n};\n\nexport type CopilotChatLabels = typeof CopilotChatDefaultLabels;\n\n// Define the full configuration interface\nexport interface CopilotChatConfigurationValue {\n labels: CopilotChatLabels;\n agentId: string;\n threadId: string;\n isModalOpen: boolean;\n setModalOpen: (open: boolean) => void;\n isModalDefaultOpen: boolean;\n}\n\n// Create the configuration context\nconst CopilotChatConfiguration =\n createContext<CopilotChatConfigurationValue | null>(null);\n\n// Provider props interface\nexport interface CopilotChatConfigurationProviderProps {\n children: ReactNode;\n labels?: Partial<CopilotChatLabels>;\n agentId?: string;\n threadId?: string;\n isModalDefaultOpen?: boolean;\n}\n\n// Provider component\nexport const CopilotChatConfigurationProvider: React.FC<\n CopilotChatConfigurationProviderProps\n> = ({ children, labels, agentId, threadId, isModalDefaultOpen }) => {\n const parentConfig = useContext(CopilotChatConfiguration);\n\n const mergedLabels: CopilotChatLabels = useMemo(\n () => ({\n ...CopilotChatDefaultLabels,\n ...(parentConfig?.labels ?? {}),\n ...(labels ?? {}),\n }),\n [labels, parentConfig?.labels],\n );\n\n const resolvedAgentId = agentId ?? parentConfig?.agentId ?? DEFAULT_AGENT_ID;\n\n const resolvedThreadId = useMemo(() => {\n if (threadId) {\n return threadId;\n }\n if (parentConfig?.threadId) {\n return parentConfig.threadId;\n }\n return randomUUID();\n }, [threadId, parentConfig?.threadId]);\n\n const resolvedDefaultOpen = isModalDefaultOpen ?? parentConfig?.isModalDefaultOpen ?? true;\n\n const [internalModalOpen, setInternalModalOpen] = useState<boolean>(\n parentConfig?.isModalOpen ?? resolvedDefaultOpen,\n );\n\n const resolvedIsModalOpen = parentConfig?.isModalOpen ?? internalModalOpen;\n const resolvedSetModalOpen = parentConfig?.setModalOpen ?? setInternalModalOpen;\n\n const configurationValue: CopilotChatConfigurationValue = useMemo(\n () => ({\n labels: mergedLabels,\n agentId: resolvedAgentId,\n threadId: resolvedThreadId,\n isModalOpen: resolvedIsModalOpen,\n setModalOpen: resolvedSetModalOpen,\n isModalDefaultOpen: resolvedDefaultOpen,\n }),\n [\n mergedLabels,\n resolvedAgentId,\n resolvedThreadId,\n resolvedIsModalOpen,\n resolvedSetModalOpen,\n resolvedDefaultOpen,\n ],\n );\n\n return (\n <CopilotChatConfiguration.Provider value={configurationValue}>\n {children}\n </CopilotChatConfiguration.Provider>\n );\n};\n\n// Hook to use the full configuration\nexport const useCopilotChatConfiguration =\n (): CopilotChatConfigurationValue | null => {\n const configuration = useContext(CopilotChatConfiguration);\n return configuration;\n };\n"],"mappings":"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","names":["import_react","import_react","import_jsx_runtime","import_react","import_jsx_runtime","import_shared"]}
@@ -1,11 +0,0 @@
1
- import {
2
- useConfigureSuggestions
3
- } from "../chunk-NB2GZAKG.mjs";
4
- import "../chunk-4XJK5IVQ.mjs";
5
- import "../chunk-RF2CGPHQ.mjs";
6
- import "../chunk-NNAYEAP2.mjs";
7
- import "../chunk-YPH4BHOY.mjs";
8
- export {
9
- useConfigureSuggestions
10
- };
11
- //# sourceMappingURL=use-configure-suggestions.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,8 +0,0 @@
1
- import { ReactFrontendTool } from '../types/frontend-tool.mjs';
2
- import '@copilotkitnext/core';
3
- import '../types/react-tool-call-renderer.mjs';
4
- import 'zod';
5
-
6
- declare function useFrontendTool<T extends Record<string, unknown> = Record<string, unknown>>(tool: ReactFrontendTool<T>): void;
7
-
8
- export { useFrontendTool };
@@ -1,8 +0,0 @@
1
- import { ReactFrontendTool } from '../types/frontend-tool.js';
2
- import '@copilotkitnext/core';
3
- import '../types/react-tool-call-renderer.js';
4
- import 'zod';
5
-
6
- declare function useFrontendTool<T extends Record<string, unknown> = Record<string, unknown>>(tool: ReactFrontendTool<T>): void;
7
-
8
- export { useFrontendTool };
@@ -1,137 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // src/hooks/use-frontend-tool.tsx
31
- var use_frontend_tool_exports = {};
32
- __export(use_frontend_tool_exports, {
33
- useFrontendTool: () => useFrontendTool
34
- });
35
- module.exports = __toCommonJS(use_frontend_tool_exports);
36
- var import_react3 = require("react");
37
-
38
- // src/providers/CopilotKitProvider.tsx
39
- var import_react2 = require("react");
40
- var import_zod = require("zod");
41
-
42
- // src/lib/react-core.ts
43
- var import_core = require("@copilotkitnext/core");
44
-
45
- // src/components/CopilotKitInspector.tsx
46
- var React = __toESM(require("react"));
47
- var import_react = require("@lit-labs/react");
48
- var import_web_inspector = require("@copilotkitnext/web-inspector");
49
- var import_jsx_runtime = require("react/jsx-runtime");
50
- (0, import_web_inspector.defineWebInspector)();
51
- var CopilotKitInspectorBase = (0, import_react.createComponent)({
52
- tagName: import_web_inspector.WEB_INSPECTOR_TAG,
53
- elementClass: import_web_inspector.WebInspectorElement,
54
- react: React
55
- });
56
- var CopilotKitInspector = React.forwardRef(
57
- ({ core, ...rest }, ref) => {
58
- const innerRef = React.useRef(null);
59
- React.useImperativeHandle(ref, () => innerRef.current, []);
60
- React.useEffect(() => {
61
- if (innerRef.current) {
62
- innerRef.current.core = core ?? null;
63
- }
64
- }, [core]);
65
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
66
- CopilotKitInspectorBase,
67
- {
68
- ...rest,
69
- ref: innerRef
70
- }
71
- );
72
- }
73
- );
74
- CopilotKitInspector.displayName = "CopilotKitInspector";
75
-
76
- // src/providers/CopilotKitProvider.tsx
77
- var import_jsx_runtime2 = require("react/jsx-runtime");
78
- var CopilotKitContext = (0, import_react2.createContext)({
79
- copilotkit: null
80
- });
81
- var useCopilotKit = () => {
82
- const context = (0, import_react2.useContext)(CopilotKitContext);
83
- const [, forceUpdate] = (0, import_react2.useReducer)((x) => x + 1, 0);
84
- if (!context) {
85
- throw new Error("useCopilotKit must be used within CopilotKitProvider");
86
- }
87
- (0, import_react2.useEffect)(() => {
88
- const unsubscribe = context.copilotkit.subscribe({
89
- onRuntimeConnectionStatusChanged: () => {
90
- forceUpdate();
91
- }
92
- });
93
- return () => {
94
- unsubscribe();
95
- };
96
- }, []);
97
- return context;
98
- };
99
-
100
- // src/hooks/use-frontend-tool.tsx
101
- function useFrontendTool(tool) {
102
- const { copilotkit } = useCopilotKit();
103
- (0, import_react3.useEffect)(() => {
104
- const name = tool.name;
105
- if (copilotkit.getTool({ toolName: name, agentId: tool.agentId })) {
106
- console.warn(
107
- `Tool '${name}' already exists for agent '${tool.agentId || "global"}'. Overriding with latest registration.`
108
- );
109
- copilotkit.removeTool(name, tool.agentId);
110
- }
111
- copilotkit.addTool(tool);
112
- if (tool.render) {
113
- const keyOf = (rc) => `${rc.agentId ?? ""}:${rc.name}`;
114
- const currentRenderToolCalls = copilotkit.renderToolCalls;
115
- const mergedMap = /* @__PURE__ */ new Map();
116
- for (const rc of currentRenderToolCalls) {
117
- mergedMap.set(keyOf(rc), rc);
118
- }
119
- const newEntry = {
120
- name,
121
- args: tool.parameters,
122
- agentId: tool.agentId,
123
- render: tool.render
124
- };
125
- mergedMap.set(keyOf(newEntry), newEntry);
126
- copilotkit.setRenderToolCalls(Array.from(mergedMap.values()));
127
- }
128
- return () => {
129
- copilotkit.removeTool(name, tool.agentId);
130
- };
131
- }, [tool.name, copilotkit]);
132
- }
133
- // Annotate the CommonJS export names for ESM import in node:
134
- 0 && (module.exports = {
135
- useFrontendTool
136
- });
137
- //# sourceMappingURL=use-frontend-tool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/use-frontend-tool.tsx","../../src/providers/CopilotKitProvider.tsx","../../src/lib/react-core.ts","../../src/components/CopilotKitInspector.tsx"],"sourcesContent":["import { useEffect } from \"react\";\nimport { useCopilotKit } from \"../providers/CopilotKitProvider\";\nimport { ReactFrontendTool } from \"../types/frontend-tool\";\nimport { ReactToolCallRenderer } from \"../types/react-tool-call-renderer\";\n\nexport function useFrontendTool<\n T extends Record<string, unknown> = Record<string, unknown>,\n>(tool: ReactFrontendTool<T>) {\n const { copilotkit } = useCopilotKit();\n\n useEffect(() => {\n const name = tool.name;\n\n // Always register/override the tool for this name on mount\n if (copilotkit.getTool({ toolName: name, agentId: tool.agentId })) {\n console.warn(\n `Tool '${name}' already exists for agent '${tool.agentId || 'global'}'. Overriding with latest registration.`\n );\n copilotkit.removeTool(name, tool.agentId);\n }\n copilotkit.addTool(tool);\n\n // Register/override renderer by name and agentId through core\n if (tool.render) {\n // Get current render tool calls and merge with new entry\n const keyOf = (rc: ReactToolCallRenderer<any>) => `${rc.agentId ?? \"\"}:${rc.name}`;\n const currentRenderToolCalls = copilotkit.renderToolCalls as ReactToolCallRenderer<any>[];\n\n // Build map from existing entries\n const mergedMap = new Map<string, ReactToolCallRenderer<any>>();\n for (const rc of currentRenderToolCalls) {\n mergedMap.set(keyOf(rc), rc);\n }\n\n // Add/overwrite with new entry\n const newEntry = {\n name,\n args: tool.parameters,\n agentId: tool.agentId,\n render: tool.render,\n } as ReactToolCallRenderer<any>;\n mergedMap.set(keyOf(newEntry), newEntry);\n\n // Set the merged list back\n copilotkit.setRenderToolCalls(Array.from(mergedMap.values()));\n }\n\n return () => {\n copilotkit.removeTool(name, tool.agentId);\n // we are intentionally not removing the render here so that the tools can still render in the chat history\n };\n // Depend only on stable keys to avoid re-register loops due to object identity\n }, [tool.name, copilotkit]);\n}\n","\"use client\";\n\nimport React, {\n createContext,\n useContext,\n ReactNode,\n useMemo,\n useEffect,\n useReducer,\n useRef,\n useState,\n} from \"react\";\nimport { ReactActivityMessageRenderer, ReactToolCallRenderer } from \"../types\";\nimport { ReactCustomMessageRenderer } from \"../types/react-custom-message-renderer\";\nimport { ReactFrontendTool } from \"../types/frontend-tool\";\nimport { ReactHumanInTheLoop } from \"../types/human-in-the-loop\";\nimport { z } from \"zod\";\nimport { FrontendTool } from \"@copilotkitnext/core\";\nimport { AbstractAgent } from \"@ag-ui/client\";\nimport { CopilotKitCoreReact } from \"../lib/react-core\";\nimport { CopilotKitInspector } from \"../components/CopilotKitInspector\";\n\n// Define the context value interface - idiomatic React naming\nexport interface CopilotKitContextValue {\n copilotkit: CopilotKitCoreReact;\n}\n\n// Create the CopilotKit context\nconst CopilotKitContext = createContext<CopilotKitContextValue>({\n copilotkit: null!,\n});\n\n// Provider props interface\nexport interface CopilotKitProviderProps {\n children: ReactNode;\n runtimeUrl?: string;\n headers?: Record<string, string>;\n properties?: Record<string, unknown>;\n useSingleEndpoint?: boolean;\n agents__unsafe_dev_only?: Record<string, AbstractAgent>;\n renderToolCalls?: ReactToolCallRenderer<any>[];\n renderActivityMessages?: ReactActivityMessageRenderer<any>[];\n renderCustomMessages?: ReactCustomMessageRenderer[];\n frontendTools?: ReactFrontendTool[];\n humanInTheLoop?: ReactHumanInTheLoop[];\n showDevConsole?: boolean | \"auto\";\n}\n\n// Small helper to normalize array props to a stable reference and warn\nfunction useStableArrayProp<T>(\n prop: T[] | undefined,\n warningMessage?: string,\n isMeaningfulChange?: (initial: T[], next: T[]) => boolean,\n): T[] {\n const empty = useMemo<T[]>(() => [], []);\n const value = prop ?? empty;\n const initial = useRef(value);\n\n useEffect(() => {\n if (\n warningMessage &&\n value !== initial.current &&\n (isMeaningfulChange ? isMeaningfulChange(initial.current, value) : true)\n ) {\n console.error(warningMessage);\n }\n }, [value, warningMessage]);\n\n return value;\n}\n\n// Provider component\nexport const CopilotKitProvider: React.FC<CopilotKitProviderProps> = ({\n children,\n runtimeUrl,\n headers = {},\n properties = {},\n agents__unsafe_dev_only: agents = {},\n renderToolCalls,\n renderActivityMessages,\n renderCustomMessages,\n frontendTools,\n humanInTheLoop,\n showDevConsole = false,\n useSingleEndpoint = false,\n}) => {\n const [shouldRenderInspector, setShouldRenderInspector] = useState(false);\n\n useEffect(() => {\n if (typeof window === \"undefined\") {\n return;\n }\n\n if (showDevConsole === true) {\n // Explicitly show the inspector\n setShouldRenderInspector(true);\n } else if (showDevConsole === \"auto\") {\n // Show on localhost or 127.0.0.1 only\n const localhostHosts = new Set([\"localhost\", \"127.0.0.1\"]);\n if (localhostHosts.has(window.location.hostname)) {\n setShouldRenderInspector(true);\n } else {\n setShouldRenderInspector(false);\n }\n } else {\n // showDevConsole is false or undefined (default false)\n setShouldRenderInspector(false);\n }\n }, [showDevConsole]);\n\n // Normalize array props to stable references with clear dev warnings\n const renderToolCallsList = useStableArrayProp<ReactToolCallRenderer<any>>(\n renderToolCalls,\n \"renderToolCalls must be a stable array. If you want to dynamically add or remove tools, use `useFrontendTool` instead.\",\n (initial, next) => {\n // Only warn if the shape (names+agentId) changed. Allow identity changes\n // to support updated closures from parents (e.g., Storybook state).\n const key = (rc?: ReactToolCallRenderer<unknown>) => `${rc?.agentId ?? \"\"}:${rc?.name ?? \"\"}`;\n const setFrom = (arr: ReactToolCallRenderer<unknown>[]) => new Set(arr.map(key));\n const a = setFrom(initial);\n const b = setFrom(next);\n if (a.size !== b.size) return true;\n for (const k of a) if (!b.has(k)) return true;\n return false;\n },\n );\n\n const renderCustomMessagesList = useStableArrayProp<ReactCustomMessageRenderer>(\n renderCustomMessages,\n \"renderCustomMessages must be a stable array.\",\n );\n\n const renderActivityMessagesList = useStableArrayProp<ReactActivityMessageRenderer<any>>(\n renderActivityMessages,\n \"renderActivityMessages must be a stable array.\",\n );\n\n const frontendToolsList = useStableArrayProp<ReactFrontendTool>(\n frontendTools,\n \"frontendTools must be a stable array. If you want to dynamically add or remove tools, use `useFrontendTool` instead.\",\n );\n const humanInTheLoopList = useStableArrayProp<ReactHumanInTheLoop>(\n humanInTheLoop,\n \"humanInTheLoop must be a stable array. If you want to dynamically add or remove human-in-the-loop tools, use `useHumanInTheLoop` instead.\",\n );\n\n // Note: warnings for array identity changes are handled by useStableArrayProp\n\n // Process humanInTheLoop tools to create handlers and add render components\n const processedHumanInTheLoopTools = useMemo(() => {\n const processedTools: FrontendTool[] = [];\n const processedRenderToolCalls: ReactToolCallRenderer<unknown>[] = [];\n\n humanInTheLoopList.forEach((tool) => {\n // Create a promise-based handler for each human-in-the-loop tool\n const frontendTool: FrontendTool = {\n name: tool.name,\n description: tool.description,\n parameters: tool.parameters,\n followUp: tool.followUp,\n ...(tool.agentId && { agentId: tool.agentId }),\n handler: async () => {\n // This handler will be replaced by the hook when it runs\n // For provider-level tools, we create a basic handler that waits for user interaction\n return new Promise((resolve) => {\n // The actual implementation will be handled by the render component\n // This is a placeholder that the hook will override\n console.warn(`Human-in-the-loop tool '${tool.name}' called but no interactive handler is set up.`);\n resolve(undefined);\n });\n },\n };\n processedTools.push(frontendTool);\n\n // Add the render component to renderToolCalls\n if (tool.render) {\n processedRenderToolCalls.push({\n name: tool.name,\n args: tool.parameters!,\n render: tool.render,\n ...(tool.agentId && { agentId: tool.agentId }),\n } as ReactToolCallRenderer<unknown>);\n }\n });\n\n return { tools: processedTools, renderToolCalls: processedRenderToolCalls };\n }, [humanInTheLoopList]);\n\n // Combine all tools for CopilotKitCore\n const allTools = useMemo(() => {\n const tools: FrontendTool[] = [];\n\n // Add frontend tools\n tools.push(...frontendToolsList);\n\n // Add processed human-in-the-loop tools\n tools.push(...processedHumanInTheLoopTools.tools);\n\n return tools;\n }, [frontendToolsList, processedHumanInTheLoopTools]);\n\n // Combine all render tool calls\n const allRenderToolCalls = useMemo(() => {\n const combined: ReactToolCallRenderer<unknown>[] = [...renderToolCallsList];\n\n // Add render components from frontend tools\n frontendToolsList.forEach((tool) => {\n if (tool.render) {\n // For wildcard tools without parameters, default to z.any()\n const args = tool.parameters || (tool.name === \"*\" ? z.any() : undefined);\n if (args) {\n combined.push({\n name: tool.name,\n args: args,\n render: tool.render,\n } as ReactToolCallRenderer<unknown>);\n }\n }\n });\n\n // Add render components from human-in-the-loop tools\n combined.push(...processedHumanInTheLoopTools.renderToolCalls);\n\n return combined;\n }, [renderToolCallsList, frontendToolsList, processedHumanInTheLoopTools]);\n\n const copilotkit = useMemo(() => {\n const copilotkit = new CopilotKitCoreReact({\n runtimeUrl,\n runtimeTransport: useSingleEndpoint ? \"single\" : \"rest\",\n headers,\n properties,\n agents__unsafe_dev_only: agents,\n tools: allTools,\n renderToolCalls: allRenderToolCalls,\n renderActivityMessages: renderActivityMessagesList,\n renderCustomMessages: renderCustomMessagesList,\n });\n\n return copilotkit;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [allTools, allRenderToolCalls, renderActivityMessagesList, renderCustomMessagesList, useSingleEndpoint]);\n\n // Subscribe to render tool calls changes to force re-renders\n const [, forceUpdate] = useReducer((x) => x + 1, 0);\n\n useEffect(() => {\n const unsubscribe = copilotkit.subscribe({\n onRenderToolCallsChanged: () => {\n forceUpdate();\n },\n });\n\n return () => {\n unsubscribe();\n };\n }, [copilotkit]);\n\n useEffect(() => {\n copilotkit.setRuntimeUrl(runtimeUrl);\n copilotkit.setRuntimeTransport(useSingleEndpoint ? \"single\" : \"rest\");\n copilotkit.setHeaders(headers);\n copilotkit.setProperties(properties);\n copilotkit.setAgents__unsafe_dev_only(agents);\n }, [runtimeUrl, headers, properties, agents, useSingleEndpoint]);\n\n return (\n <CopilotKitContext.Provider\n value={{\n copilotkit,\n }}\n >\n {children}\n {shouldRenderInspector ? <CopilotKitInspector core={copilotkit} /> : null}\n </CopilotKitContext.Provider>\n );\n};\n\n// Hook to use the CopilotKit instance - returns the full context value\nexport const useCopilotKit = (): CopilotKitContextValue => {\n const context = useContext(CopilotKitContext);\n const [, forceUpdate] = useReducer((x) => x + 1, 0);\n\n if (!context) {\n throw new Error(\"useCopilotKit must be used within CopilotKitProvider\");\n }\n useEffect(() => {\n const unsubscribe = context.copilotkit.subscribe({\n onRuntimeConnectionStatusChanged: () => {\n forceUpdate();\n },\n });\n return () => {\n unsubscribe();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return context;\n};\n","import { ReactActivityMessageRenderer, ReactToolCallRenderer } from \"@/types\";\nimport { ReactCustomMessageRenderer } from \"@/types/react-custom-message-renderer\";\nimport { CopilotKitCore, CopilotKitCoreConfig, CopilotKitCoreSubscriber } from \"@copilotkitnext/core\";\n\nexport interface CopilotKitCoreReactConfig extends CopilotKitCoreConfig {\n // Add any additional configuration properties specific to the React implementation\n renderToolCalls?: ReactToolCallRenderer<any>[];\n renderActivityMessages?: ReactActivityMessageRenderer<any>[];\n\n // Add custom message renderers\n renderCustomMessages?: ReactCustomMessageRenderer[];\n}\n\nexport interface CopilotKitCoreReactSubscriber extends CopilotKitCoreSubscriber {\n onRenderToolCallsChanged?: (event: {\n copilotkit: CopilotKitCore;\n renderToolCalls: ReactToolCallRenderer<any>[];\n }) => void | Promise<void>;\n}\n\nexport class CopilotKitCoreReact extends CopilotKitCore {\n private _renderToolCalls: ReactToolCallRenderer<any>[] = [];\n private _renderCustomMessages: ReactCustomMessageRenderer[] = [];\n private _renderActivityMessages: ReactActivityMessageRenderer<any>[] = [];\n\n constructor(config: CopilotKitCoreReactConfig) {\n super(config);\n this._renderToolCalls = config.renderToolCalls ?? [];\n this._renderCustomMessages = config.renderCustomMessages ?? [];\n this._renderActivityMessages = config.renderActivityMessages ?? [];\n }\n\n get renderCustomMessages(): Readonly<ReactCustomMessageRenderer[]> {\n return this._renderCustomMessages;\n }\n\n get renderActivityMessages(): Readonly<ReactActivityMessageRenderer<any>>[] {\n return this._renderActivityMessages;\n }\n\n get renderToolCalls(): Readonly<ReactToolCallRenderer<any>>[] {\n return this._renderToolCalls;\n }\n\n setRenderToolCalls(renderToolCalls: ReactToolCallRenderer<any>[]): void {\n this._renderToolCalls = renderToolCalls;\n\n // Notify React-specific subscribers\n void this.notifySubscribers(\n (subscriber) => {\n const reactSubscriber = subscriber as CopilotKitCoreReactSubscriber;\n if (reactSubscriber.onRenderToolCallsChanged) {\n reactSubscriber.onRenderToolCallsChanged({\n copilotkit: this,\n renderToolCalls: this.renderToolCalls,\n });\n }\n },\n \"Subscriber onRenderToolCallsChanged error:\"\n );\n }\n\n // Override to accept React-specific subscriber type\n subscribe(subscriber: CopilotKitCoreReactSubscriber): () => void {\n return super.subscribe(subscriber);\n }\n\n unsubscribe(subscriber: CopilotKitCoreReactSubscriber): void {\n super.unsubscribe(subscriber);\n }\n}\n","import * as React from \"react\";\nimport { createComponent } from \"@lit-labs/react\";\nimport {\n WEB_INSPECTOR_TAG,\n WebInspectorElement,\n defineWebInspector,\n} from \"@copilotkitnext/web-inspector\";\nimport type { CopilotKitCore } from \"@copilotkitnext/core\";\n\ndefineWebInspector();\n\nconst CopilotKitInspectorBase = createComponent({\n tagName: WEB_INSPECTOR_TAG,\n elementClass: WebInspectorElement,\n react: React,\n});\n\nexport type CopilotKitInspectorBaseProps = React.ComponentProps<typeof CopilotKitInspectorBase>;\n\nexport interface CopilotKitInspectorProps extends Omit<CopilotKitInspectorBaseProps, \"core\"> {\n core?: CopilotKitCore | null;\n}\n\nexport const CopilotKitInspector = React.forwardRef<\n WebInspectorElement,\n CopilotKitInspectorProps\n>(\n ({ core, ...rest }, ref) => {\n const innerRef = React.useRef<WebInspectorElement>(null);\n\n React.useImperativeHandle(ref, () => innerRef.current as WebInspectorElement, []);\n\n React.useEffect(() => {\n if (innerRef.current) {\n innerRef.current.core = core ?? null;\n }\n }, [core]);\n\n return (\n <CopilotKitInspectorBase\n {...(rest as CopilotKitInspectorBaseProps)}\n ref={innerRef}\n />\n ); // eslint-disable-line react/jsx-props-no-spreading\n },\n);\n\nCopilotKitInspector.displayName = \"CopilotKitInspector\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,gBAA0B;;;ACE1B,IAAAC,gBASO;AAKP,iBAAkB;;;ACdlB,kBAA+E;;;ACF/E,YAAuB;AACvB,mBAAgC;AAChC,2BAIO;AAiCD;AAAA,IA9BN,yCAAmB;AAEnB,IAAM,8BAA0B,8BAAgB;AAAA,EAC9C,SAAS;AAAA,EACT,cAAc;AAAA,EACd,OAAO;AACT,CAAC;AAQM,IAAM,sBAA4B;AAAA,EAIvC,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ;AAC1B,UAAM,WAAiB,aAA4B,IAAI;AAEvD,IAAM,0BAAoB,KAAK,MAAM,SAAS,SAAgC,CAAC,CAAC;AAEhF,IAAM,gBAAU,MAAM;AACpB,UAAI,SAAS,SAAS;AACpB,iBAAS,QAAQ,OAAO,QAAQ;AAAA,MAClC;AAAA,IACF,GAAG,CAAC,IAAI,CAAC;AAET,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAI;AAAA,QACL,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ;AACF;AAEA,oBAAoB,cAAc;;;AF4N9B,IAAAC,sBAAA;AA/OJ,IAAM,wBAAoB,6BAAsC;AAAA,EAC9D,YAAY;AACd,CAAC;AAyPM,IAAM,gBAAgB,MAA8B;AACzD,QAAM,cAAU,0BAAW,iBAAiB;AAC5C,QAAM,CAAC,EAAE,WAAW,QAAI,0BAAW,CAAC,MAAM,IAAI,GAAG,CAAC;AAElD,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,sDAAsD;AAAA,EACxE;AACA,+BAAU,MAAM;AACd,UAAM,cAAc,QAAQ,WAAW,UAAU;AAAA,MAC/C,kCAAkC,MAAM;AACtC,oBAAY;AAAA,MACd;AAAA,IACF,CAAC;AACD,WAAO,MAAM;AACX,kBAAY;AAAA,IACd;AAAA,EAEF,GAAG,CAAC,CAAC;AAEL,SAAO;AACT;;;ADtSO,SAAS,gBAEd,MAA4B;AAC5B,QAAM,EAAE,WAAW,IAAI,cAAc;AAErC,+BAAU,MAAM;AACd,UAAM,OAAO,KAAK;AAGlB,QAAI,WAAW,QAAQ,EAAE,UAAU,MAAM,SAAS,KAAK,QAAQ,CAAC,GAAG;AACjE,cAAQ;AAAA,QACN,SAAS,IAAI,+BAA+B,KAAK,WAAW,QAAQ;AAAA,MACtE;AACA,iBAAW,WAAW,MAAM,KAAK,OAAO;AAAA,IAC1C;AACA,eAAW,QAAQ,IAAI;AAGvB,QAAI,KAAK,QAAQ;AAEf,YAAM,QAAQ,CAAC,OAAmC,GAAG,GAAG,WAAW,EAAE,IAAI,GAAG,IAAI;AAChF,YAAM,yBAAyB,WAAW;AAG1C,YAAM,YAAY,oBAAI,IAAwC;AAC9D,iBAAW,MAAM,wBAAwB;AACvC,kBAAU,IAAI,MAAM,EAAE,GAAG,EAAE;AAAA,MAC7B;AAGA,YAAM,WAAW;AAAA,QACf;AAAA,QACA,MAAM,KAAK;AAAA,QACX,SAAS,KAAK;AAAA,QACd,QAAQ,KAAK;AAAA,MACf;AACA,gBAAU,IAAI,MAAM,QAAQ,GAAG,QAAQ;AAGvC,iBAAW,mBAAmB,MAAM,KAAK,UAAU,OAAO,CAAC,CAAC;AAAA,IAC9D;AAEA,WAAO,MAAM;AACX,iBAAW,WAAW,MAAM,KAAK,OAAO;AAAA,IAE1C;AAAA,EAEF,GAAG,CAAC,KAAK,MAAM,UAAU,CAAC;AAC5B;","names":["import_react","import_react","import_jsx_runtime"]}
@@ -1,10 +0,0 @@
1
- import {
2
- useFrontendTool
3
- } from "../chunk-IICUCI5S.mjs";
4
- import "../chunk-RF2CGPHQ.mjs";
5
- import "../chunk-NNAYEAP2.mjs";
6
- import "../chunk-YPH4BHOY.mjs";
7
- export {
8
- useFrontendTool
9
- };
10
- //# sourceMappingURL=use-frontend-tool.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,7 +0,0 @@
1
- import { ReactHumanInTheLoop } from '../types/human-in-the-loop.mjs';
2
- import '@copilotkitnext/core';
3
- import 'react';
4
-
5
- declare function useHumanInTheLoop<T extends Record<string, unknown> = Record<string, unknown>>(tool: ReactHumanInTheLoop<T>): void;
6
-
7
- export { useHumanInTheLoop };
@@ -1,7 +0,0 @@
1
- import { ReactHumanInTheLoop } from '../types/human-in-the-loop.js';
2
- import '@copilotkitnext/core';
3
- import 'react';
4
-
5
- declare function useHumanInTheLoop<T extends Record<string, unknown> = Record<string, unknown>>(tool: ReactHumanInTheLoop<T>): void;
6
-
7
- export { useHumanInTheLoop };