@copilotkit/a2ui-renderer 1.51.4 → 1.51.5-next.1

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 (338) hide show
  1. package/dist/A2UIMessageRenderer.cjs +135 -0
  2. package/dist/A2UIMessageRenderer.cjs.map +1 -0
  3. package/dist/A2UIMessageRenderer.d.cts +11 -0
  4. package/dist/A2UIMessageRenderer.d.cts.map +1 -0
  5. package/dist/A2UIMessageRenderer.d.mts +11 -0
  6. package/dist/A2UIMessageRenderer.d.mts.map +1 -0
  7. package/dist/A2UIMessageRenderer.mjs +134 -0
  8. package/dist/A2UIMessageRenderer.mjs.map +1 -0
  9. package/dist/A2UIViewer.cjs +154 -0
  10. package/dist/A2UIViewer.cjs.map +1 -0
  11. package/dist/A2UIViewer.d.cts +39 -0
  12. package/dist/A2UIViewer.d.cts.map +1 -0
  13. package/dist/A2UIViewer.d.mts +39 -0
  14. package/dist/A2UIViewer.d.mts.map +1 -0
  15. package/dist/A2UIViewer.mjs +152 -0
  16. package/dist/A2UIViewer.mjs.map +1 -0
  17. package/dist/_virtual/_rolldown/runtime.cjs +29 -0
  18. package/dist/index.cjs +8 -0
  19. package/dist/index.d.cts +15 -0
  20. package/dist/index.d.cts.map +1 -0
  21. package/dist/index.d.mts +15 -0
  22. package/dist/index.d.mts.map +1 -0
  23. package/dist/index.mjs +5 -0
  24. package/dist/index.umd.js +3070 -2
  25. package/dist/index.umd.js.map +1 -1
  26. package/dist/react-renderer/components/content/AudioPlayer.cjs +34 -0
  27. package/dist/react-renderer/components/content/AudioPlayer.cjs.map +1 -0
  28. package/dist/react-renderer/components/content/AudioPlayer.mjs +33 -0
  29. package/dist/react-renderer/components/content/AudioPlayer.mjs.map +1 -0
  30. package/dist/react-renderer/components/content/Divider.cjs +31 -0
  31. package/dist/react-renderer/components/content/Divider.cjs.map +1 -0
  32. package/dist/react-renderer/components/content/Divider.mjs +30 -0
  33. package/dist/react-renderer/components/content/Divider.mjs.map +1 -0
  34. package/dist/react-renderer/components/content/Icon.cjs +50 -0
  35. package/dist/react-renderer/components/content/Icon.cjs.map +1 -0
  36. package/dist/react-renderer/components/content/Icon.mjs +49 -0
  37. package/dist/react-renderer/components/content/Icon.mjs.map +1 -0
  38. package/dist/react-renderer/components/content/Image.cjs +43 -0
  39. package/dist/react-renderer/components/content/Image.cjs.map +1 -0
  40. package/dist/react-renderer/components/content/Image.mjs +42 -0
  41. package/dist/react-renderer/components/content/Image.mjs.map +1 -0
  42. package/dist/react-renderer/components/content/Text.cjs +131 -0
  43. package/dist/react-renderer/components/content/Text.cjs.map +1 -0
  44. package/dist/react-renderer/components/content/Text.mjs +129 -0
  45. package/dist/react-renderer/components/content/Text.mjs.map +1 -0
  46. package/dist/react-renderer/components/content/Video.cjs +56 -0
  47. package/dist/react-renderer/components/content/Video.cjs.map +1 -0
  48. package/dist/react-renderer/components/content/Video.mjs +55 -0
  49. package/dist/react-renderer/components/content/Video.mjs.map +1 -0
  50. package/dist/react-renderer/components/interactive/Button.cjs +39 -0
  51. package/dist/react-renderer/components/interactive/Button.cjs.map +1 -0
  52. package/dist/react-renderer/components/interactive/Button.mjs +38 -0
  53. package/dist/react-renderer/components/interactive/Button.mjs.map +1 -0
  54. package/dist/react-renderer/components/interactive/CheckBox.cjs +58 -0
  55. package/dist/react-renderer/components/interactive/CheckBox.cjs.map +1 -0
  56. package/dist/react-renderer/components/interactive/CheckBox.mjs +57 -0
  57. package/dist/react-renderer/components/interactive/CheckBox.mjs.map +1 -0
  58. package/dist/react-renderer/components/interactive/DateTimeInput.cjs +65 -0
  59. package/dist/react-renderer/components/interactive/DateTimeInput.cjs.map +1 -0
  60. package/dist/react-renderer/components/interactive/DateTimeInput.mjs +64 -0
  61. package/dist/react-renderer/components/interactive/DateTimeInput.mjs.map +1 -0
  62. package/dist/react-renderer/components/interactive/MultipleChoice.cjs +54 -0
  63. package/dist/react-renderer/components/interactive/MultipleChoice.cjs.map +1 -0
  64. package/dist/react-renderer/components/interactive/MultipleChoice.mjs +53 -0
  65. package/dist/react-renderer/components/interactive/MultipleChoice.mjs.map +1 -0
  66. package/dist/react-renderer/components/interactive/Slider.cjs +72 -0
  67. package/dist/react-renderer/components/interactive/Slider.cjs.map +1 -0
  68. package/dist/react-renderer/components/interactive/Slider.mjs +71 -0
  69. package/dist/react-renderer/components/interactive/Slider.mjs.map +1 -0
  70. package/dist/react-renderer/components/interactive/TextField.cjs +74 -0
  71. package/dist/react-renderer/components/interactive/TextField.cjs.map +1 -0
  72. package/dist/react-renderer/components/interactive/TextField.mjs +73 -0
  73. package/dist/react-renderer/components/interactive/TextField.mjs.map +1 -0
  74. package/dist/react-renderer/components/layout/Card.cjs +46 -0
  75. package/dist/react-renderer/components/layout/Card.cjs.map +1 -0
  76. package/dist/react-renderer/components/layout/Card.mjs +45 -0
  77. package/dist/react-renderer/components/layout/Card.mjs.map +1 -0
  78. package/dist/react-renderer/components/layout/Column.cjs +43 -0
  79. package/dist/react-renderer/components/layout/Column.cjs.map +1 -0
  80. package/dist/react-renderer/components/layout/Column.mjs +42 -0
  81. package/dist/react-renderer/components/layout/Column.mjs.map +1 -0
  82. package/dist/react-renderer/components/layout/List.cjs +41 -0
  83. package/dist/react-renderer/components/layout/List.cjs.map +1 -0
  84. package/dist/react-renderer/components/layout/List.mjs +40 -0
  85. package/dist/react-renderer/components/layout/List.mjs.map +1 -0
  86. package/dist/react-renderer/components/layout/Modal.cjs +92 -0
  87. package/dist/react-renderer/components/layout/Modal.cjs.map +1 -0
  88. package/dist/react-renderer/components/layout/Modal.mjs +91 -0
  89. package/dist/react-renderer/components/layout/Modal.mjs.map +1 -0
  90. package/dist/react-renderer/components/layout/Row.cjs +43 -0
  91. package/dist/react-renderer/components/layout/Row.cjs.map +1 -0
  92. package/dist/react-renderer/components/layout/Row.mjs +42 -0
  93. package/dist/react-renderer/components/layout/Row.mjs.map +1 -0
  94. package/dist/react-renderer/components/layout/Tabs.cjs +47 -0
  95. package/dist/react-renderer/components/layout/Tabs.cjs.map +1 -0
  96. package/dist/react-renderer/components/layout/Tabs.mjs +46 -0
  97. package/dist/react-renderer/components/layout/Tabs.mjs.map +1 -0
  98. package/dist/react-renderer/core/A2UIProvider.cjs +123 -0
  99. package/dist/react-renderer/core/A2UIProvider.cjs.map +1 -0
  100. package/dist/react-renderer/core/A2UIProvider.mjs +120 -0
  101. package/dist/react-renderer/core/A2UIProvider.mjs.map +1 -0
  102. package/dist/react-renderer/core/A2UIRenderer.cjs +93 -0
  103. package/dist/react-renderer/core/A2UIRenderer.cjs.map +1 -0
  104. package/dist/react-renderer/core/A2UIRenderer.mjs +92 -0
  105. package/dist/react-renderer/core/A2UIRenderer.mjs.map +1 -0
  106. package/dist/react-renderer/core/ComponentNode.cjs +53 -0
  107. package/dist/react-renderer/core/ComponentNode.cjs.map +1 -0
  108. package/dist/react-renderer/core/ComponentNode.mjs +52 -0
  109. package/dist/react-renderer/core/ComponentNode.mjs.map +1 -0
  110. package/dist/react-renderer/hooks/useA2UI.cjs +46 -0
  111. package/dist/react-renderer/hooks/useA2UI.cjs.map +1 -0
  112. package/dist/react-renderer/hooks/useA2UI.mjs +46 -0
  113. package/dist/react-renderer/hooks/useA2UI.mjs.map +1 -0
  114. package/dist/react-renderer/hooks/useA2UIComponent.cjs +173 -0
  115. package/dist/react-renderer/hooks/useA2UIComponent.cjs.map +1 -0
  116. package/dist/react-renderer/hooks/useA2UIComponent.mjs +172 -0
  117. package/dist/react-renderer/hooks/useA2UIComponent.mjs.map +1 -0
  118. package/dist/react-renderer/lib/utils.cjs +39 -0
  119. package/dist/react-renderer/lib/utils.cjs.map +1 -0
  120. package/dist/react-renderer/lib/utils.mjs +37 -0
  121. package/dist/react-renderer/lib/utils.mjs.map +1 -0
  122. package/dist/react-renderer/registry/ComponentRegistry.cjs +114 -0
  123. package/dist/react-renderer/registry/ComponentRegistry.cjs.map +1 -0
  124. package/dist/react-renderer/registry/ComponentRegistry.mjs +113 -0
  125. package/dist/react-renderer/registry/ComponentRegistry.mjs.map +1 -0
  126. package/dist/react-renderer/registry/defaultCatalog.cjs +57 -0
  127. package/dist/react-renderer/registry/defaultCatalog.cjs.map +1 -0
  128. package/dist/react-renderer/registry/defaultCatalog.mjs +57 -0
  129. package/dist/react-renderer/registry/defaultCatalog.mjs.map +1 -0
  130. package/dist/react-renderer/styles/index.cjs +458 -0
  131. package/dist/react-renderer/styles/index.cjs.map +1 -0
  132. package/dist/react-renderer/styles/{index.js → index.mjs} +47 -64
  133. package/dist/react-renderer/styles/index.mjs.map +1 -0
  134. package/dist/react-renderer/styles/reset.cjs +29 -0
  135. package/dist/react-renderer/styles/reset.cjs.map +1 -0
  136. package/dist/react-renderer/styles/reset.mjs +28 -0
  137. package/dist/react-renderer/styles/reset.mjs.map +1 -0
  138. package/dist/react-renderer/theme/ThemeContext.cjs +35 -0
  139. package/dist/react-renderer/theme/ThemeContext.cjs.map +1 -0
  140. package/dist/react-renderer/theme/ThemeContext.mjs +33 -0
  141. package/dist/react-renderer/theme/ThemeContext.mjs.map +1 -0
  142. package/dist/react-renderer/theme/litTheme.cjs +368 -0
  143. package/dist/react-renderer/theme/litTheme.cjs.map +1 -0
  144. package/dist/react-renderer/theme/litTheme.mjs +367 -0
  145. package/dist/react-renderer/theme/litTheme.mjs.map +1 -0
  146. package/dist/react-renderer/theme/utils.cjs +41 -0
  147. package/dist/react-renderer/theme/utils.cjs.map +1 -0
  148. package/dist/react-renderer/theme/utils.mjs +39 -0
  149. package/dist/react-renderer/theme/utils.mjs.map +1 -0
  150. package/dist/theme/viewer-theme.cjs +366 -0
  151. package/dist/theme/viewer-theme.cjs.map +1 -0
  152. package/dist/theme/viewer-theme.d.cts +7 -0
  153. package/dist/theme/viewer-theme.d.cts.map +1 -0
  154. package/dist/theme/viewer-theme.d.mts +7 -0
  155. package/dist/theme/viewer-theme.d.mts.map +1 -0
  156. package/dist/theme/viewer-theme.mjs +365 -0
  157. package/dist/theme/viewer-theme.mjs.map +1 -0
  158. package/package.json +14 -9
  159. package/dist/.tsbuildinfo +0 -1
  160. package/dist/A2UIMessageRenderer.d.ts +0 -7
  161. package/dist/A2UIMessageRenderer.d.ts.map +0 -1
  162. package/dist/A2UIMessageRenderer.js +0 -126
  163. package/dist/A2UIMessageRenderer.js.map +0 -1
  164. package/dist/A2UIViewer.d.ts +0 -32
  165. package/dist/A2UIViewer.d.ts.map +0 -1
  166. package/dist/A2UIViewer.js +0 -121
  167. package/dist/A2UIViewer.js.map +0 -1
  168. package/dist/__tests__/A2UIMessageRenderer.test.d.ts +0 -2
  169. package/dist/__tests__/A2UIMessageRenderer.test.d.ts.map +0 -1
  170. package/dist/__tests__/A2UIMessageRenderer.test.js +0 -229
  171. package/dist/__tests__/A2UIMessageRenderer.test.js.map +0 -1
  172. package/dist/__tests__/clsx-shim.d.ts +0 -8
  173. package/dist/__tests__/clsx-shim.d.ts.map +0 -1
  174. package/dist/__tests__/clsx-shim.js +0 -24
  175. package/dist/__tests__/clsx-shim.js.map +0 -1
  176. package/dist/__tests__/setup.d.ts +0 -2
  177. package/dist/__tests__/setup.d.ts.map +0 -1
  178. package/dist/__tests__/setup.js +0 -29
  179. package/dist/__tests__/setup.js.map +0 -1
  180. package/dist/index.d.ts +0 -13
  181. package/dist/index.d.ts.map +0 -1
  182. package/dist/index.js +0 -19
  183. package/dist/index.js.map +0 -1
  184. package/dist/react-renderer/components/content/AudioPlayer.d.ts +0 -8
  185. package/dist/react-renderer/components/content/AudioPlayer.d.ts.map +0 -1
  186. package/dist/react-renderer/components/content/AudioPlayer.js +0 -23
  187. package/dist/react-renderer/components/content/AudioPlayer.js.map +0 -1
  188. package/dist/react-renderer/components/content/Divider.d.ts +0 -13
  189. package/dist/react-renderer/components/content/Divider.d.ts.map +0 -1
  190. package/dist/react-renderer/components/content/Divider.js +0 -22
  191. package/dist/react-renderer/components/content/Divider.js.map +0 -1
  192. package/dist/react-renderer/components/content/Icon.d.ts +0 -16
  193. package/dist/react-renderer/components/content/Icon.d.ts.map +0 -1
  194. package/dist/react-renderer/components/content/Icon.js +0 -40
  195. package/dist/react-renderer/components/content/Icon.js.map +0 -1
  196. package/dist/react-renderer/components/content/Image.d.ts +0 -11
  197. package/dist/react-renderer/components/content/Image.d.ts.map +0 -1
  198. package/dist/react-renderer/components/content/Image.js +0 -34
  199. package/dist/react-renderer/components/content/Image.js.map +0 -1
  200. package/dist/react-renderer/components/content/Text.d.ts +0 -28
  201. package/dist/react-renderer/components/content/Text.d.ts.map +0 -1
  202. package/dist/react-renderer/components/content/Text.js +0 -134
  203. package/dist/react-renderer/components/content/Text.js.map +0 -1
  204. package/dist/react-renderer/components/content/Video.d.ts +0 -10
  205. package/dist/react-renderer/components/content/Video.d.ts.map +0 -1
  206. package/dist/react-renderer/components/content/Video.js +0 -41
  207. package/dist/react-renderer/components/content/Video.js.map +0 -1
  208. package/dist/react-renderer/components/content/index.d.ts +0 -7
  209. package/dist/react-renderer/components/content/index.d.ts.map +0 -1
  210. package/dist/react-renderer/components/content/index.js +0 -7
  211. package/dist/react-renderer/components/content/index.js.map +0 -1
  212. package/dist/react-renderer/components/interactive/Button.d.ts +0 -11
  213. package/dist/react-renderer/components/interactive/Button.d.ts.map +0 -1
  214. package/dist/react-renderer/components/interactive/Button.js +0 -27
  215. package/dist/react-renderer/components/interactive/Button.js.map +0 -1
  216. package/dist/react-renderer/components/interactive/CheckBox.d.ts +0 -10
  217. package/dist/react-renderer/components/interactive/CheckBox.d.ts.map +0 -1
  218. package/dist/react-renderer/components/interactive/CheckBox.js +0 -55
  219. package/dist/react-renderer/components/interactive/CheckBox.js.map +0 -1
  220. package/dist/react-renderer/components/interactive/DateTimeInput.d.ts +0 -10
  221. package/dist/react-renderer/components/interactive/DateTimeInput.d.ts.map +0 -1
  222. package/dist/react-renderer/components/interactive/DateTimeInput.js +0 -68
  223. package/dist/react-renderer/components/interactive/DateTimeInput.js.map +0 -1
  224. package/dist/react-renderer/components/interactive/MultipleChoice.d.ts +0 -11
  225. package/dist/react-renderer/components/interactive/MultipleChoice.d.ts.map +0 -1
  226. package/dist/react-renderer/components/interactive/MultipleChoice.js +0 -43
  227. package/dist/react-renderer/components/interactive/MultipleChoice.js.map +0 -1
  228. package/dist/react-renderer/components/interactive/Slider.d.ts +0 -10
  229. package/dist/react-renderer/components/interactive/Slider.d.ts.map +0 -1
  230. package/dist/react-renderer/components/interactive/Slider.js +0 -62
  231. package/dist/react-renderer/components/interactive/Slider.js.map +0 -1
  232. package/dist/react-renderer/components/interactive/TextField.d.ts +0 -10
  233. package/dist/react-renderer/components/interactive/TextField.d.ts.map +0 -1
  234. package/dist/react-renderer/components/interactive/TextField.js +0 -59
  235. package/dist/react-renderer/components/interactive/TextField.js.map +0 -1
  236. package/dist/react-renderer/components/interactive/index.d.ts +0 -7
  237. package/dist/react-renderer/components/interactive/index.d.ts.map +0 -1
  238. package/dist/react-renderer/components/interactive/index.js +0 -7
  239. package/dist/react-renderer/components/interactive/index.js.map +0 -1
  240. package/dist/react-renderer/components/layout/Card.d.ts +0 -17
  241. package/dist/react-renderer/components/layout/Card.d.ts.map +0 -1
  242. package/dist/react-renderer/components/layout/Card.js +0 -39
  243. package/dist/react-renderer/components/layout/Card.js.map +0 -1
  244. package/dist/react-renderer/components/layout/Column.d.ts +0 -10
  245. package/dist/react-renderer/components/layout/Column.d.ts.map +0 -1
  246. package/dist/react-renderer/components/layout/Column.js +0 -33
  247. package/dist/react-renderer/components/layout/Column.js.map +0 -1
  248. package/dist/react-renderer/components/layout/List.d.ts +0 -10
  249. package/dist/react-renderer/components/layout/List.d.ts.map +0 -1
  250. package/dist/react-renderer/components/layout/List.js +0 -32
  251. package/dist/react-renderer/components/layout/List.js.map +0 -1
  252. package/dist/react-renderer/components/layout/Modal.d.ts +0 -15
  253. package/dist/react-renderer/components/layout/Modal.d.ts.map +0 -1
  254. package/dist/react-renderer/components/layout/Modal.js +0 -65
  255. package/dist/react-renderer/components/layout/Modal.js.map +0 -1
  256. package/dist/react-renderer/components/layout/Row.d.ts +0 -10
  257. package/dist/react-renderer/components/layout/Row.d.ts.map +0 -1
  258. package/dist/react-renderer/components/layout/Row.js +0 -33
  259. package/dist/react-renderer/components/layout/Row.js.map +0 -1
  260. package/dist/react-renderer/components/layout/Tabs.d.ts +0 -8
  261. package/dist/react-renderer/components/layout/Tabs.d.ts.map +0 -1
  262. package/dist/react-renderer/components/layout/Tabs.js +0 -29
  263. package/dist/react-renderer/components/layout/Tabs.js.map +0 -1
  264. package/dist/react-renderer/components/layout/index.d.ts +0 -7
  265. package/dist/react-renderer/components/layout/index.d.ts.map +0 -1
  266. package/dist/react-renderer/components/layout/index.js +0 -7
  267. package/dist/react-renderer/components/layout/index.js.map +0 -1
  268. package/dist/react-renderer/core/A2UIProvider.d.ts +0 -82
  269. package/dist/react-renderer/core/A2UIProvider.d.ts.map +0 -1
  270. package/dist/react-renderer/core/A2UIProvider.js +0 -156
  271. package/dist/react-renderer/core/A2UIProvider.js.map +0 -1
  272. package/dist/react-renderer/core/A2UIRenderer.d.ts +0 -36
  273. package/dist/react-renderer/core/A2UIRenderer.d.ts.map +0 -1
  274. package/dist/react-renderer/core/A2UIRenderer.js +0 -83
  275. package/dist/react-renderer/core/A2UIRenderer.js.map +0 -1
  276. package/dist/react-renderer/core/A2UIViewer.d.ts +0 -56
  277. package/dist/react-renderer/core/A2UIViewer.d.ts.map +0 -1
  278. package/dist/react-renderer/core/A2UIViewer.js +0 -135
  279. package/dist/react-renderer/core/A2UIViewer.js.map +0 -1
  280. package/dist/react-renderer/core/ComponentNode.d.ts +0 -25
  281. package/dist/react-renderer/core/ComponentNode.d.ts.map +0 -1
  282. package/dist/react-renderer/core/ComponentNode.js +0 -43
  283. package/dist/react-renderer/core/ComponentNode.js.map +0 -1
  284. package/dist/react-renderer/core/store.d.ts +0 -37
  285. package/dist/react-renderer/core/store.d.ts.map +0 -1
  286. package/dist/react-renderer/core/store.js +0 -2
  287. package/dist/react-renderer/core/store.js.map +0 -1
  288. package/dist/react-renderer/hooks/useA2UI.d.ts +0 -46
  289. package/dist/react-renderer/hooks/useA2UI.d.ts.map +0 -1
  290. package/dist/react-renderer/hooks/useA2UI.js +0 -41
  291. package/dist/react-renderer/hooks/useA2UI.js.map +0 -1
  292. package/dist/react-renderer/hooks/useA2UIComponent.d.ts +0 -52
  293. package/dist/react-renderer/hooks/useA2UIComponent.d.ts.map +0 -1
  294. package/dist/react-renderer/hooks/useA2UIComponent.js +0 -175
  295. package/dist/react-renderer/hooks/useA2UIComponent.js.map +0 -1
  296. package/dist/react-renderer/index.d.ts +0 -37
  297. package/dist/react-renderer/index.d.ts.map +0 -1
  298. package/dist/react-renderer/index.js +0 -40
  299. package/dist/react-renderer/index.js.map +0 -1
  300. package/dist/react-renderer/lib/utils.d.ts +0 -32
  301. package/dist/react-renderer/lib/utils.d.ts.map +0 -1
  302. package/dist/react-renderer/lib/utils.js +0 -41
  303. package/dist/react-renderer/lib/utils.js.map +0 -1
  304. package/dist/react-renderer/registry/ComponentRegistry.d.ts +0 -78
  305. package/dist/react-renderer/registry/ComponentRegistry.d.ts.map +0 -1
  306. package/dist/react-renderer/registry/ComponentRegistry.js +0 -113
  307. package/dist/react-renderer/registry/ComponentRegistry.js.map +0 -1
  308. package/dist/react-renderer/registry/defaultCatalog.d.ts +0 -13
  309. package/dist/react-renderer/registry/defaultCatalog.d.ts.map +0 -1
  310. package/dist/react-renderer/registry/defaultCatalog.js +0 -59
  311. package/dist/react-renderer/registry/defaultCatalog.js.map +0 -1
  312. package/dist/react-renderer/styles/index.d.ts +0 -41
  313. package/dist/react-renderer/styles/index.d.ts.map +0 -1
  314. package/dist/react-renderer/styles/index.js.map +0 -1
  315. package/dist/react-renderer/styles/reset.d.ts +0 -18
  316. package/dist/react-renderer/styles/reset.d.ts.map +0 -1
  317. package/dist/react-renderer/styles/reset.js +0 -24
  318. package/dist/react-renderer/styles/reset.js.map +0 -1
  319. package/dist/react-renderer/theme/ThemeContext.d.ts +0 -29
  320. package/dist/react-renderer/theme/ThemeContext.d.ts.map +0 -1
  321. package/dist/react-renderer/theme/ThemeContext.js +0 -35
  322. package/dist/react-renderer/theme/ThemeContext.js.map +0 -1
  323. package/dist/react-renderer/theme/litTheme.d.ts +0 -8
  324. package/dist/react-renderer/theme/litTheme.d.ts.map +0 -1
  325. package/dist/react-renderer/theme/litTheme.js +0 -401
  326. package/dist/react-renderer/theme/litTheme.js.map +0 -1
  327. package/dist/react-renderer/theme/utils.d.ts +0 -23
  328. package/dist/react-renderer/theme/utils.d.ts.map +0 -1
  329. package/dist/react-renderer/theme/utils.js +0 -46
  330. package/dist/react-renderer/theme/utils.js.map +0 -1
  331. package/dist/react-renderer/types.d.ts +0 -53
  332. package/dist/react-renderer/types.d.ts.map +0 -1
  333. package/dist/react-renderer/types.js +0 -2
  334. package/dist/react-renderer/types.js.map +0 -1
  335. package/dist/theme/viewer-theme.d.ts +0 -3
  336. package/dist/theme/viewer-theme.d.ts.map +0 -1
  337. package/dist/theme/viewer-theme.js +0 -391
  338. package/dist/theme/viewer-theme.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Modal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKtD;;;;;;;;;GASG;AACH,eAAO,MAAM,KAAK,2EA8FhB,CAAC;AAEH,eAAe,KAAK,CAAC"}
@@ -1,65 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, useCallback, useRef, useEffect, memo } from "react";
3
- import { useA2UIComponent } from "../../hooks/useA2UIComponent";
4
- import { classMapToString, stylesToObject } from "../../lib/utils";
5
- import { ComponentNode } from "../../core/ComponentNode";
6
- /**
7
- * Modal component - displays content in a dialog overlay.
8
- *
9
- * Matches Lit's rendering approach:
10
- * - When closed: renders section with entry point child
11
- * - When open: renders dialog with content child (entry point is replaced)
12
- *
13
- * The dialog is rendered in place (no portal) so it stays inside .a2ui-surface
14
- * and CSS selectors work correctly. showModal() handles the top-layer overlay.
15
- */
16
- export const Modal = memo(function Modal({ node, surfaceId, }) {
17
- const { theme } = useA2UIComponent(node, surfaceId);
18
- const props = node.properties;
19
- const [isOpen, setIsOpen] = useState(false);
20
- const dialogRef = useRef(null);
21
- const openModal = useCallback(() => {
22
- setIsOpen(true);
23
- }, []);
24
- const closeModal = useCallback(() => {
25
- setIsOpen(false);
26
- }, []);
27
- // Show dialog when isOpen becomes true, and sync state when dialog closes (e.g., via Escape)
28
- useEffect(() => {
29
- const dialog = dialogRef.current;
30
- if (!dialog)
31
- return;
32
- if (isOpen && !dialog.open) {
33
- dialog.showModal();
34
- }
35
- // Listen for native close event (triggered by Escape key)
36
- const handleClose = () => {
37
- setIsOpen(false);
38
- };
39
- dialog.addEventListener("close", handleClose);
40
- return () => dialog.removeEventListener("close", handleClose);
41
- }, [isOpen]);
42
- // Handle backdrop clicks (only close if clicking directly on dialog, not its content)
43
- const handleBackdropClick = useCallback((e) => {
44
- if (e.target === e.currentTarget) {
45
- closeModal();
46
- }
47
- }, [closeModal]);
48
- // Handle Escape key (for jsdom test compatibility - real browsers use native dialog behavior)
49
- const handleKeyDown = useCallback((e) => {
50
- if (e.key === "Escape") {
51
- closeModal();
52
- }
53
- }, [closeModal]);
54
- // Apply --weight CSS variable on root div (:host equivalent) for flex layouts
55
- const hostStyle = node.weight !== undefined
56
- ? { "--weight": node.weight }
57
- : {};
58
- // Match Lit's render approach: closed shows section with entry, open shows dialog
59
- if (!isOpen) {
60
- return (_jsx("div", { className: "a2ui-modal", style: hostStyle, children: _jsx("section", { onClick: openModal, style: { cursor: "pointer" }, children: _jsx(ComponentNode, { node: props.entryPointChild, surfaceId: surfaceId }) }) }));
61
- }
62
- return (_jsx("div", { className: "a2ui-modal", style: hostStyle, children: _jsx("dialog", { ref: dialogRef, className: classMapToString(theme.components.Modal.backdrop), onClick: handleBackdropClick, onKeyDown: handleKeyDown, children: _jsxs("section", { className: classMapToString(theme.components.Modal.element), style: stylesToObject(theme.additionalStyles?.Modal), children: [_jsx("div", { id: "controls", children: _jsx("button", { onClick: closeModal, "aria-label": "Close modal", children: _jsx("span", { className: "g-icon", children: "close" }) }) }), _jsx(ComponentNode, { node: props.contentChild, surfaceId: surfaceId })] }) }) }));
63
- });
64
- export default Modal;
65
- //# sourceMappingURL=Modal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Modal.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { Types } from "@a2ui/lit/0.8";
2
- import type { A2UIComponentProps } from "../../types";
3
- /**
4
- * Row component - arranges children horizontally using flexbox.
5
- *
6
- * Supports distribution (justify-content) and alignment (align-items) properties.
7
- */
8
- export declare const Row: import("react").NamedExoticComponent<A2UIComponentProps<Types.RowNode>>;
9
- export default Row;
10
- //# sourceMappingURL=Row.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Row.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKtD;;;;GAIG;AACH,eAAO,MAAM,GAAG,yEAkDd,CAAC;AAEH,eAAe,GAAG,CAAC"}
@@ -1,33 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { memo } from "react";
3
- import { useA2UIComponent } from "../../hooks/useA2UIComponent";
4
- import { classMapToString, stylesToObject } from "../../lib/utils";
5
- import { ComponentNode } from "../../core/ComponentNode";
6
- /**
7
- * Row component - arranges children horizontally using flexbox.
8
- *
9
- * Supports distribution (justify-content) and alignment (align-items) properties.
10
- */
11
- export const Row = memo(function Row({ node, surfaceId, }) {
12
- const { theme } = useA2UIComponent(node, surfaceId);
13
- const props = node.properties;
14
- // Match Lit's default values
15
- const alignment = props.alignment ?? "stretch";
16
- const distribution = props.distribution ?? "start";
17
- const children = Array.isArray(props.children) ? props.children : [];
18
- // Apply --weight CSS variable on root div (:host equivalent) for flex layouts
19
- const hostStyle = node.weight !== undefined
20
- ? { "--weight": node.weight }
21
- : {};
22
- return (_jsx("div", { className: "a2ui-row", "data-alignment": alignment, "data-distribution": distribution, style: hostStyle, children: _jsx("section", { className: classMapToString(theme.components.Row), style: stylesToObject(theme.additionalStyles?.Row), children: children.map((child, index) => {
23
- const childId = typeof child === "object" && child !== null && "id" in child
24
- ? child.id
25
- : `child-${index}`;
26
- const childNode = typeof child === "object" && child !== null && "type" in child
27
- ? child
28
- : null;
29
- return (_jsx(ComponentNode, { node: childNode, surfaceId: surfaceId }, childId));
30
- }) }) }));
31
- });
32
- export default Row;
33
- //# sourceMappingURL=Row.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Row.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Row.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,EACnC,IAAI,EACJ,SAAS,GACyB;IAClC,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,6BAA6B;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC;IAC/C,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,OAAO,CAAC;IAEnD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAErE,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cACE,SAAS,EAAC,UAAU,oBACJ,SAAS,uBACN,YAAY,EAC/B,KAAK,EAAE,SAAS,YAEhB,kBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EACjD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,YAEjD,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBAC7B,MAAM,OAAO,GACX,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK;oBAC1D,CAAC,CAAE,KAAgC,CAAC,EAAE;oBACtC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC;gBACvB,MAAM,SAAS,GACb,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK;oBAC5D,CAAC,CAAE,KAAgC;oBACnC,CAAC,CAAC,IAAI,CAAC;gBACX,OAAO,CACL,KAAC,aAAa,IAEZ,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,SAAS,IAFf,OAAO,CAGZ,CACH,CAAC;YACJ,CAAC,CAAC,GACM,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,GAAG,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { Types } from "@a2ui/lit/0.8";
2
- import type { A2UIComponentProps } from "../../types";
3
- /**
4
- * Tabs component - displays content in switchable tabs.
5
- */
6
- export declare const Tabs: import("react").NamedExoticComponent<A2UIComponentProps<Types.TabsNode>>;
7
- export default Tabs;
8
- //# sourceMappingURL=Tabs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Tabs.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAStD;;GAEG;AACH,eAAO,MAAM,IAAI,0EA+Df,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,29 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, memo } from "react";
3
- import { useA2UIComponent } from "../../hooks/useA2UIComponent";
4
- import { classMapToString, stylesToObject, mergeClassMaps, } from "../../lib/utils";
5
- import { ComponentNode } from "../../core/ComponentNode";
6
- /**
7
- * Tabs component - displays content in switchable tabs.
8
- */
9
- export const Tabs = memo(function Tabs({ node, surfaceId, }) {
10
- const { theme, resolveString } = useA2UIComponent(node, surfaceId);
11
- const props = node.properties;
12
- const [selectedIndex, setSelectedIndex] = useState(0);
13
- const tabItems = props.tabItems ?? [];
14
- // Apply --weight CSS variable on root div (:host equivalent) for flex layouts
15
- const hostStyle = node.weight !== undefined
16
- ? { "--weight": node.weight }
17
- : {};
18
- return (_jsx("div", { className: "a2ui-tabs", style: hostStyle, children: _jsxs("section", { className: classMapToString(theme.components.Tabs.container), style: stylesToObject(theme.additionalStyles?.Tabs), children: [_jsx("div", { id: "buttons", className: classMapToString(theme.components.Tabs.element), children: tabItems.map((tab, index) => {
19
- const title = resolveString(tab.title);
20
- const isSelected = index === selectedIndex;
21
- // Lit merges all + selected classes when selected
22
- const classes = isSelected
23
- ? mergeClassMaps(theme.components.Tabs.controls.all, theme.components.Tabs.controls.selected)
24
- : theme.components.Tabs.controls.all;
25
- return (_jsx("button", { disabled: isSelected, className: classMapToString(classes), onClick: () => setSelectedIndex(index), children: title }, index));
26
- }) }), tabItems[selectedIndex] && (_jsx(ComponentNode, { node: tabItems[selectedIndex].child, surfaceId: surfaceId }))] }) }));
27
- });
28
- export default Tabs;
29
- //# sourceMappingURL=Tabs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Tabs.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,EACrC,IAAI,EACJ,SAAS,GAC0B;IACnC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;IAEtC,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,WAAW,EAAC,KAAK,EAAE,SAAS,YACzC,mBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAC5D,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAGnD,cACE,EAAE,EAAC,SAAS,EACZ,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,YAEzD,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;wBAC3B,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACvC,MAAM,UAAU,GAAG,KAAK,KAAK,aAAa,CAAC;wBAE3C,kDAAkD;wBAClD,MAAM,OAAO,GAAG,UAAU;4BACxB,CAAC,CAAC,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAClC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACxC;4BACH,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;wBAEvC,OAAO,CACL,iBAEE,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,EACpC,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAErC,KAAK,IALD,KAAK,CAMH,CACV,CAAC;oBACJ,CAAC,CAAC,GACE,EAGL,QAAQ,CAAC,aAAa,CAAC,IAAI,CAC1B,KAAC,aAAa,IACZ,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,KAAK,EACnC,SAAS,EAAE,SAAS,GACpB,CACH,IACO,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,7 +0,0 @@
1
- export { Row } from "./Row";
2
- export { Column } from "./Column";
3
- export { List } from "./List";
4
- export { Card } from "./Card";
5
- export { Tabs } from "./Tabs";
6
- export { Modal } from "./Modal";
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
@@ -1,7 +0,0 @@
1
- export { Row } from "./Row";
2
- export { Column } from "./Column";
3
- export { List } from "./List";
4
- export { Card } from "./Card";
5
- export { Tabs } from "./Tabs";
6
- export { Modal } from "./Modal";
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
@@ -1,82 +0,0 @@
1
- import { type ReactNode } from "react";
2
- import { type Types } from "@a2ui/lit/0.8";
3
- import type { A2UIContextValue, A2UIActions } from "./store";
4
- import type { OnActionCallback } from "../types";
5
- /**
6
- * Props for the A2UIProvider component.
7
- */
8
- export interface A2UIProviderProps {
9
- /** Callback invoked when a user action is dispatched (button click, etc.) */
10
- onAction?: OnActionCallback;
11
- /** Theme configuration. Falls back to default theme if not provided. */
12
- theme?: Types.Theme;
13
- /** Child components */
14
- children: ReactNode;
15
- }
16
- /**
17
- * Provider component that sets up the A2UI context for descendant components.
18
- *
19
- * This provider uses a two-context architecture for performance:
20
- * - A2UIActionsContext: Stable actions that never change (no re-renders)
21
- * - A2UIStateContext: Reactive state that triggers re-renders when needed
22
- *
23
- * @example
24
- * ```tsx
25
- * function App() {
26
- * const handleAction = async (message) => {
27
- * const response = await fetch('/api/a2ui', {
28
- * method: 'POST',
29
- * body: JSON.stringify(message)
30
- * });
31
- * const newMessages = await response.json();
32
- * };
33
- *
34
- * return (
35
- * <A2UIProvider onAction={handleAction}>
36
- * <A2UIRenderer surfaceId="main" />
37
- * </A2UIProvider>
38
- * );
39
- * }
40
- * ```
41
- */
42
- export declare function A2UIProvider({ onAction, theme, children }: A2UIProviderProps): import("react/jsx-runtime").JSX.Element;
43
- /**
44
- * Hook to access stable A2UI actions (won't cause re-renders).
45
- * Use this when you only need to dispatch actions or read data.
46
- *
47
- * @returns Stable actions object
48
- * @throws If used outside of an A2UIProvider
49
- */
50
- export declare function useA2UIActions(): A2UIActions;
51
- /**
52
- * Hook to subscribe to A2UI state changes.
53
- * Components using this will re-render when state changes.
54
- *
55
- * @returns Current version number
56
- * @throws If used outside of an A2UIProvider
57
- */
58
- export declare function useA2UIState(): {
59
- version: number;
60
- };
61
- /**
62
- * Hook to access the full A2UI context (actions + state).
63
- * Components using this will re-render when state changes.
64
- *
65
- * @returns The A2UI context value
66
- * @throws If used outside of an A2UIProvider
67
- */
68
- export declare function useA2UIContext(): A2UIContextValue;
69
- /**
70
- * @deprecated Use useA2UIContext instead. This alias exists for backward compatibility only.
71
- */
72
- export declare const useA2UIStore: typeof useA2UIContext;
73
- /**
74
- * @deprecated This selector pattern does not provide performance benefits with React Context.
75
- * Components will re-render on any context change regardless of what you select.
76
- * Use useA2UIContext() or useA2UI() directly instead.
77
- *
78
- * @param selector - Function to select a slice of state
79
- * @returns The selected state
80
- */
81
- export declare function useA2UIStoreSelector<T>(selector: (state: A2UIContextValue) => T): T;
82
- //# sourceMappingURL=A2UIProvider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"A2UIProvider.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAQ,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAcjD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,wEAAwE;IACxE,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;IACpB,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CA8E5E;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAM5C;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,IAAI;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAMlD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,IAAI,gBAAgB,CAejD;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,uBAAiB,CAAC;AAE3C;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,CAAC,GACvC,CAAC,CAGH"}
@@ -1,156 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { createContext, useContext, useRef, useState, useMemo, } from "react";
3
- import { Data } from "@a2ui/lit/0.8";
4
- import { ThemeProvider } from "../theme/ThemeContext";
5
- /**
6
- * Context for stable actions (never changes reference, prevents re-renders).
7
- * Components that only need to dispatch actions or read data won't re-render.
8
- */
9
- const A2UIActionsContext = createContext(null);
10
- /**
11
- * Context for reactive state (changes trigger re-renders).
12
- * Only components that need to react to state changes subscribe to this.
13
- */
14
- const A2UIStateContext = createContext(null);
15
- /**
16
- * Provider component that sets up the A2UI context for descendant components.
17
- *
18
- * This provider uses a two-context architecture for performance:
19
- * - A2UIActionsContext: Stable actions that never change (no re-renders)
20
- * - A2UIStateContext: Reactive state that triggers re-renders when needed
21
- *
22
- * @example
23
- * ```tsx
24
- * function App() {
25
- * const handleAction = async (message) => {
26
- * const response = await fetch('/api/a2ui', {
27
- * method: 'POST',
28
- * body: JSON.stringify(message)
29
- * });
30
- * const newMessages = await response.json();
31
- * };
32
- *
33
- * return (
34
- * <A2UIProvider onAction={handleAction}>
35
- * <A2UIRenderer surfaceId="main" />
36
- * </A2UIProvider>
37
- * );
38
- * }
39
- * ```
40
- */
41
- export function A2UIProvider({ onAction, theme, children }) {
42
- // Create message processor only once using ref
43
- const processorRef = useRef(null);
44
- if (!processorRef.current) {
45
- processorRef.current = Data.createSignalA2uiMessageProcessor();
46
- }
47
- const processor = processorRef.current;
48
- // Version counter for triggering re-renders
49
- const [version, setVersion] = useState(0);
50
- // Store onAction in a ref so callbacks always have the latest value
51
- const onActionRef = useRef(onAction ?? null);
52
- onActionRef.current = onAction ?? null;
53
- // Create stable actions object once - stored in ref, never changes
54
- const actionsRef = useRef(null);
55
- if (!actionsRef.current) {
56
- actionsRef.current = {
57
- processMessages: (messages) => {
58
- processor.processMessages(messages);
59
- setVersion((v) => v + 1);
60
- },
61
- setData: (node, path, value, surfaceId) => {
62
- processor.setData(node, path, value, surfaceId);
63
- setVersion((v) => v + 1);
64
- },
65
- dispatch: (message) => {
66
- if (onActionRef.current) {
67
- onActionRef.current(message);
68
- }
69
- },
70
- clearSurfaces: () => {
71
- processor.clearSurfaces();
72
- setVersion((v) => v + 1);
73
- },
74
- getSurface: (surfaceId) => {
75
- return processor.getSurfaces().get(surfaceId);
76
- },
77
- getSurfaces: () => {
78
- return processor.getSurfaces();
79
- },
80
- getData: (node, path, surfaceId) => {
81
- return processor.getData(node, path, surfaceId);
82
- },
83
- resolvePath: (path, dataContextPath) => {
84
- return processor.resolvePath(path, dataContextPath);
85
- },
86
- };
87
- }
88
- const actions = actionsRef.current;
89
- // State context value - only changes when version changes
90
- const stateValue = useMemo(() => ({ version }), [version]);
91
- return (_jsx(A2UIActionsContext.Provider, { value: actions, children: _jsx(A2UIStateContext.Provider, { value: stateValue, children: _jsx(ThemeProvider, { theme: theme, children: children }) }) }));
92
- }
93
- /**
94
- * Hook to access stable A2UI actions (won't cause re-renders).
95
- * Use this when you only need to dispatch actions or read data.
96
- *
97
- * @returns Stable actions object
98
- * @throws If used outside of an A2UIProvider
99
- */
100
- export function useA2UIActions() {
101
- const actions = useContext(A2UIActionsContext);
102
- if (!actions) {
103
- throw new Error("useA2UIActions must be used within an A2UIProvider");
104
- }
105
- return actions;
106
- }
107
- /**
108
- * Hook to subscribe to A2UI state changes.
109
- * Components using this will re-render when state changes.
110
- *
111
- * @returns Current version number
112
- * @throws If used outside of an A2UIProvider
113
- */
114
- export function useA2UIState() {
115
- const state = useContext(A2UIStateContext);
116
- if (!state) {
117
- throw new Error("useA2UIState must be used within an A2UIProvider");
118
- }
119
- return state;
120
- }
121
- /**
122
- * Hook to access the full A2UI context (actions + state).
123
- * Components using this will re-render when state changes.
124
- *
125
- * @returns The A2UI context value
126
- * @throws If used outside of an A2UIProvider
127
- */
128
- export function useA2UIContext() {
129
- const actions = useA2UIActions();
130
- const state = useA2UIState();
131
- // Memoize combined value - only changes when state changes
132
- // Actions are stable, so this only re-creates when version changes
133
- return useMemo(() => ({
134
- ...actions,
135
- processor: null, // Not exposed directly
136
- version: state.version,
137
- onAction: null, // Use dispatch instead
138
- }), [actions, state.version]);
139
- }
140
- /**
141
- * @deprecated Use useA2UIContext instead. This alias exists for backward compatibility only.
142
- */
143
- export const useA2UIStore = useA2UIContext;
144
- /**
145
- * @deprecated This selector pattern does not provide performance benefits with React Context.
146
- * Components will re-render on any context change regardless of what you select.
147
- * Use useA2UIContext() or useA2UI() directly instead.
148
- *
149
- * @param selector - Function to select a slice of state
150
- * @returns The selected state
151
- */
152
- export function useA2UIStoreSelector(selector) {
153
- const context = useA2UIContext();
154
- return selector(context);
155
- }
156
- //# sourceMappingURL=A2UIProvider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"A2UIProvider.js","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIProvider.tsx"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- import { type ReactNode } from "react";
2
- import { type ComponentRegistry } from "../registry/ComponentRegistry";
3
- export interface A2UIRendererProps {
4
- /** The surface ID to render */
5
- surfaceId: string;
6
- /** Additional CSS classes for the surface container */
7
- className?: string;
8
- /** Fallback content when surface is not yet available */
9
- fallback?: ReactNode;
10
- /** Loading fallback for lazy-loaded components */
11
- loadingFallback?: ReactNode;
12
- /** Optional custom component registry */
13
- registry?: ComponentRegistry;
14
- }
15
- /**
16
- * A2UIRenderer - renders an A2UI surface.
17
- *
18
- * This is the main entry point for rendering A2UI content in your React app.
19
- * It reads the surface state from the A2UI store and renders the component tree.
20
- *
21
- * Memoized to prevent unnecessary re-renders when props haven't changed.
22
- *
23
- * @example
24
- * ```tsx
25
- * function App() {
26
- * return (
27
- * <A2UIProvider onAction={handleAction}>
28
- * <A2UIRenderer surfaceId="main" />
29
- * </A2UIProvider>
30
- * );
31
- * }
32
- * ```
33
- */
34
- export declare const A2UIRenderer: import("react").NamedExoticComponent<A2UIRendererProps>;
35
- export default A2UIRenderer;
36
- //# sourceMappingURL=A2UIRenderer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"A2UIRenderer.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGhE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAYvE,MAAM,WAAW,iBAAiB;IAChC,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,kDAAkD;IAClD,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,YAAY,yDAgFvB,CAAC;AAEH,eAAe,YAAY,CAAC"}
@@ -1,83 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Suspense, useMemo, memo } from "react";
3
- import { useA2UI } from "../hooks/useA2UI";
4
- import { ComponentNode } from "./ComponentNode";
5
- import { cn } from "../lib/utils";
6
- /** Default loading fallback - memoized to prevent recreation */
7
- const DefaultLoadingFallback = memo(function DefaultLoadingFallback() {
8
- return (_jsx("div", { className: "a2ui-loading", style: { padding: "16px", opacity: 0.5 }, children: "Loading..." }));
9
- });
10
- /**
11
- * A2UIRenderer - renders an A2UI surface.
12
- *
13
- * This is the main entry point for rendering A2UI content in your React app.
14
- * It reads the surface state from the A2UI store and renders the component tree.
15
- *
16
- * Memoized to prevent unnecessary re-renders when props haven't changed.
17
- *
18
- * @example
19
- * ```tsx
20
- * function App() {
21
- * return (
22
- * <A2UIProvider onAction={handleAction}>
23
- * <A2UIRenderer surfaceId="main" />
24
- * </A2UIProvider>
25
- * );
26
- * }
27
- * ```
28
- */
29
- export const A2UIRenderer = memo(function A2UIRenderer({ surfaceId, className, fallback = null, loadingFallback, registry, }) {
30
- const { getSurface, version } = useA2UI();
31
- // Get surface - this will re-render when version changes
32
- const surface = getSurface(surfaceId);
33
- // Memoize surface styles to prevent object recreation
34
- // Matches Lit renderer's transformation logic in surface.ts
35
- const surfaceStyles = useMemo(() => {
36
- if (!surface?.styles)
37
- return {};
38
- const styles = {};
39
- for (const [key, value] of Object.entries(surface.styles)) {
40
- switch (key) {
41
- // Generate a color palette from the primary color.
42
- // Values range from 0-100 where 0=black, 100=white, 50=primary color.
43
- // Uses color-mix to create intermediate values.
44
- case "primaryColor": {
45
- styles["--p-100"] = "#ffffff";
46
- styles["--p-99"] = `color-mix(in srgb, ${value} 2%, white 98%)`;
47
- styles["--p-98"] = `color-mix(in srgb, ${value} 4%, white 96%)`;
48
- styles["--p-95"] = `color-mix(in srgb, ${value} 10%, white 90%)`;
49
- styles["--p-90"] = `color-mix(in srgb, ${value} 20%, white 80%)`;
50
- styles["--p-80"] = `color-mix(in srgb, ${value} 40%, white 60%)`;
51
- styles["--p-70"] = `color-mix(in srgb, ${value} 60%, white 40%)`;
52
- styles["--p-60"] = `color-mix(in srgb, ${value} 80%, white 20%)`;
53
- styles["--p-50"] = String(value);
54
- styles["--p-40"] = `color-mix(in srgb, ${value} 80%, black 20%)`;
55
- styles["--p-35"] = `color-mix(in srgb, ${value} 70%, black 30%)`;
56
- styles["--p-30"] = `color-mix(in srgb, ${value} 60%, black 40%)`;
57
- styles["--p-25"] = `color-mix(in srgb, ${value} 50%, black 50%)`;
58
- styles["--p-20"] = `color-mix(in srgb, ${value} 40%, black 60%)`;
59
- styles["--p-15"] = `color-mix(in srgb, ${value} 30%, black 70%)`;
60
- styles["--p-10"] = `color-mix(in srgb, ${value} 20%, black 80%)`;
61
- styles["--p-5"] = `color-mix(in srgb, ${value} 10%, black 90%)`;
62
- styles["--p-0"] = "#000000";
63
- break;
64
- }
65
- case "font": {
66
- styles["--font-family"] = String(value);
67
- styles["--font-family-flex"] = String(value);
68
- break;
69
- }
70
- }
71
- }
72
- return styles;
73
- }, [surface?.styles]);
74
- // No surface yet
75
- if (!surface || !surface.componentTree) {
76
- return _jsx(_Fragment, { children: fallback });
77
- }
78
- // Use provided fallback or default memoized component
79
- const actualLoadingFallback = loadingFallback ?? _jsx(DefaultLoadingFallback, {});
80
- return (_jsx("div", { className: cn("a2ui-surface", className), style: surfaceStyles, "data-surface-id": surfaceId, "data-version": version, children: _jsx(Suspense, { fallback: actualLoadingFallback, children: _jsx(ComponentNode, { node: surface.componentTree, surfaceId: surfaceId, registry: registry }) }) }));
81
- });
82
- export default A2UIRenderer;
83
- //# sourceMappingURL=A2UIRenderer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"A2UIRenderer.js","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIRenderer.tsx"],"names":[],"mappings":"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"}