@copilotkit/a2ui-renderer 1.55.0-next.9 → 1.55.0
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.
- package/dist/a2ui-types.cjs +2 -3
- package/dist/a2ui-types.cjs.map +1 -1
- package/dist/a2ui-types.d.cts +21 -5
- package/dist/a2ui-types.d.cts.map +1 -1
- package/dist/a2ui-types.d.mts +21 -5
- package/dist/a2ui-types.d.mts.map +1 -1
- package/dist/a2ui-types.mjs +2 -3
- package/dist/a2ui-types.mjs.map +1 -1
- package/dist/index.cjs +40 -61
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +10 -39
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +10 -39
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +12 -29
- package/dist/index.mjs.map +1 -0
- package/dist/index.umd.js +1743 -2783
- package/dist/index.umd.js.map +1 -1
- package/dist/react-renderer/a2ui-react/A2uiSurface.cjs +110 -0
- package/dist/react-renderer/a2ui-react/A2uiSurface.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/A2uiSurface.d.cts +2 -0
- package/dist/react-renderer/a2ui-react/A2uiSurface.d.mts +3 -0
- package/dist/react-renderer/a2ui-react/A2uiSurface.mjs +107 -0
- package/dist/react-renderer/a2ui-react/A2uiSurface.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/adapter.cjs +63 -0
- package/dist/react-renderer/a2ui-react/adapter.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/adapter.d.cts +23 -0
- package/dist/react-renderer/a2ui-react/adapter.d.cts.map +1 -0
- package/dist/react-renderer/a2ui-react/adapter.d.mts +23 -0
- package/dist/react-renderer/a2ui-react/adapter.d.mts.map +1 -0
- package/dist/react-renderer/a2ui-react/adapter.mjs +61 -0
- package/dist/react-renderer/a2ui-react/adapter.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/AudioPlayer.cjs +53 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/AudioPlayer.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/AudioPlayer.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/AudioPlayer.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/AudioPlayer.mjs +36 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/AudioPlayer.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Button.cjs +48 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Button.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Button.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Button.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Button.mjs +31 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Button.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Card.cjs +39 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Card.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Card.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Card.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Card.mjs +22 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Card.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/CheckBox.cjs +73 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/CheckBox.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/CheckBox.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/CheckBox.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/CheckBox.mjs +71 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/CheckBox.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChildList.cjs +36 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChildList.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChildList.mjs +34 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChildList.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChoicePicker.cjs +110 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChoicePicker.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChoicePicker.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChoicePicker.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChoicePicker.mjs +108 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/ChoicePicker.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Column.cjs +45 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Column.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Column.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Column.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Column.mjs +44 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Column.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/DateTimeInput.cjs +69 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/DateTimeInput.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/DateTimeInput.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/DateTimeInput.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/DateTimeInput.mjs +67 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/DateTimeInput.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Divider.cjs +44 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Divider.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Divider.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Divider.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Divider.mjs +27 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Divider.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Icon.cjs +44 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Icon.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Icon.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Icon.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Icon.mjs +27 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Icon.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Image.cjs +59 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Image.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Image.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Image.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Image.mjs +42 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Image.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/List.cjs +49 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/List.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/List.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/List.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/List.mjs +32 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/List.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Modal.cjs +81 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Modal.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Modal.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Modal.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Modal.mjs +80 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Modal.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Row.cjs +45 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Row.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Row.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Row.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Row.mjs +44 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Row.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Slider.cjs +74 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Slider.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Slider.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Slider.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Slider.mjs +72 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Slider.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Tabs.cjs +63 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Tabs.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Tabs.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Tabs.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Tabs.mjs +62 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Tabs.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Text.cjs +69 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Text.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Text.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Text.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Text.mjs +52 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Text.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/TextField.cjs +88 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/TextField.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/TextField.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/TextField.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/TextField.mjs +86 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/TextField.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Video.cjs +40 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Video.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Video.d.cts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Video.d.mts +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Video.mjs +23 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/components/Video.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.cjs +63 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.d.cts +26 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.d.cts.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.d.mts +26 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.d.mts.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.mjs +62 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/index.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/utils.cjs +52 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/utils.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/utils.mjs +45 -0
- package/dist/react-renderer/a2ui-react/catalog/basic/utils.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Button.cjs +51 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Button.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Button.d.cts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Button.d.mts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Button.mjs +34 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Button.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/ChildList.cjs +36 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/ChildList.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/ChildList.mjs +34 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/ChildList.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Column.cjs +85 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Column.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Column.d.cts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Column.d.mts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Column.mjs +84 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Column.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Row.cjs +84 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Row.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Row.d.cts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Row.d.mts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Row.mjs +83 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Row.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Text.cjs +54 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Text.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Text.d.cts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Text.d.mts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Text.mjs +53 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/Text.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/TextField.cjs +85 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/TextField.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/TextField.d.cts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/TextField.d.mts +2 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/TextField.mjs +68 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/components/TextField.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/index.cjs +44 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/index.cjs.map +1 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/index.d.cts +7 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/index.d.mts +7 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/index.mjs +44 -0
- package/dist/react-renderer/a2ui-react/catalog/minimal/index.mjs.map +1 -0
- package/dist/react-renderer/a2ui-react/index.cjs +22 -0
- package/dist/react-renderer/a2ui-react/index.d.cts +4 -0
- package/dist/react-renderer/a2ui-react/index.d.mts +4 -0
- package/dist/react-renderer/a2ui-react/index.mjs +24 -0
- package/dist/react-renderer/catalog-utils.cjs +84 -0
- package/dist/react-renderer/catalog-utils.cjs.map +1 -0
- package/dist/react-renderer/catalog-utils.d.cts +39 -0
- package/dist/react-renderer/catalog-utils.d.cts.map +1 -0
- package/dist/react-renderer/catalog-utils.d.mts +39 -0
- package/dist/react-renderer/catalog-utils.d.mts.map +1 -0
- package/dist/react-renderer/catalog-utils.mjs +79 -0
- package/dist/react-renderer/catalog-utils.mjs.map +1 -0
- package/dist/react-renderer/core/A2UIProvider.cjs +48 -70
- package/dist/react-renderer/core/A2UIProvider.cjs.map +1 -1
- package/dist/react-renderer/core/A2UIProvider.d.cts +13 -47
- package/dist/react-renderer/core/A2UIProvider.d.cts.map +1 -1
- package/dist/react-renderer/core/A2UIProvider.d.mts +13 -47
- package/dist/react-renderer/core/A2UIProvider.d.mts.map +1 -1
- package/dist/react-renderer/core/A2UIProvider.mjs +48 -71
- package/dist/react-renderer/core/A2UIProvider.mjs.map +1 -1
- package/dist/react-renderer/core/A2UIRenderer.cjs +8 -56
- package/dist/react-renderer/core/A2UIRenderer.cjs.map +1 -1
- package/dist/react-renderer/core/A2UIRenderer.d.cts +5 -19
- package/dist/react-renderer/core/A2UIRenderer.d.cts.map +1 -1
- package/dist/react-renderer/core/A2UIRenderer.d.mts +5 -19
- package/dist/react-renderer/core/A2UIRenderer.d.mts.map +1 -1
- package/dist/react-renderer/core/A2UIRenderer.mjs +9 -57
- package/dist/react-renderer/core/A2UIRenderer.mjs.map +1 -1
- package/dist/react-renderer/core/store.d.cts +6 -17
- package/dist/react-renderer/core/store.d.cts.map +1 -1
- package/dist/react-renderer/core/store.d.mts +6 -17
- package/dist/react-renderer/core/store.d.mts.map +1 -1
- package/dist/react-renderer/create-catalog.cjs +115 -0
- package/dist/react-renderer/create-catalog.cjs.map +1 -0
- package/dist/react-renderer/create-catalog.d.cts +107 -0
- package/dist/react-renderer/create-catalog.d.cts.map +1 -0
- package/dist/react-renderer/create-catalog.d.mts +107 -0
- package/dist/react-renderer/create-catalog.d.mts.map +1 -0
- package/dist/react-renderer/create-catalog.mjs +111 -0
- package/dist/react-renderer/create-catalog.mjs.map +1 -0
- package/dist/react-renderer/hooks/useA2UI.cjs +1 -26
- package/dist/react-renderer/hooks/useA2UI.cjs.map +1 -1
- package/dist/react-renderer/hooks/useA2UI.d.cts +5 -33
- package/dist/react-renderer/hooks/useA2UI.d.cts.map +1 -1
- package/dist/react-renderer/hooks/useA2UI.d.mts +5 -33
- package/dist/react-renderer/hooks/useA2UI.d.mts.map +1 -1
- package/dist/react-renderer/hooks/useA2UI.mjs +1 -26
- package/dist/react-renderer/hooks/useA2UI.mjs.map +1 -1
- package/dist/react-renderer/index.cjs +21 -27
- package/dist/react-renderer/index.cjs.map +1 -0
- package/dist/react-renderer/index.d.cts +17 -27
- package/dist/react-renderer/index.d.cts.map +1 -0
- package/dist/react-renderer/index.d.mts +17 -27
- package/dist/react-renderer/index.d.mts.map +1 -0
- package/dist/react-renderer/index.mjs +15 -27
- package/dist/react-renderer/index.mjs.map +1 -0
- package/dist/react-renderer/lib/utils.cjs +0 -25
- package/dist/react-renderer/lib/utils.cjs.map +1 -1
- package/dist/react-renderer/lib/utils.d.cts +0 -8
- package/dist/react-renderer/lib/utils.d.cts.map +1 -1
- package/dist/react-renderer/lib/utils.d.mts +0 -8
- package/dist/react-renderer/lib/utils.d.mts.map +1 -1
- package/dist/react-renderer/lib/utils.mjs +1 -25
- package/dist/react-renderer/lib/utils.mjs.map +1 -1
- package/dist/react-renderer/styles/index.cjs +4 -459
- package/dist/react-renderer/styles/index.cjs.map +1 -1
- package/dist/react-renderer/styles/index.d.mts +2 -18
- package/dist/react-renderer/styles/index.d.mts.map +1 -1
- package/dist/react-renderer/styles/index.mjs +4 -459
- package/dist/react-renderer/styles/index.mjs.map +1 -1
- package/dist/react-renderer/theme/ThemeContext.cjs +2 -19
- package/dist/react-renderer/theme/ThemeContext.cjs.map +1 -1
- package/dist/react-renderer/theme/ThemeContext.d.cts +4 -23
- package/dist/react-renderer/theme/ThemeContext.d.cts.map +1 -1
- package/dist/react-renderer/theme/ThemeContext.d.mts +4 -23
- package/dist/react-renderer/theme/ThemeContext.d.mts.map +1 -1
- package/dist/react-renderer/theme/ThemeContext.mjs +2 -19
- package/dist/react-renderer/theme/ThemeContext.mjs.map +1 -1
- package/dist/react-renderer/types.d.cts +24 -29
- package/dist/react-renderer/types.d.cts.map +1 -1
- package/dist/react-renderer/types.d.mts +24 -29
- package/dist/react-renderer/types.d.mts.map +1 -1
- package/package.json +29 -29
- package/dist/A2UIViewer.cjs +0 -154
- package/dist/A2UIViewer.cjs.map +0 -1
- package/dist/A2UIViewer.d.cts +0 -39
- package/dist/A2UIViewer.d.cts.map +0 -1
- package/dist/A2UIViewer.d.mts +0 -39
- package/dist/A2UIViewer.d.mts.map +0 -1
- package/dist/A2UIViewer.mjs +0 -152
- package/dist/A2UIViewer.mjs.map +0 -1
- package/dist/react-renderer/components/content/AudioPlayer.cjs +0 -34
- package/dist/react-renderer/components/content/AudioPlayer.cjs.map +0 -1
- package/dist/react-renderer/components/content/AudioPlayer.d.cts +0 -12
- package/dist/react-renderer/components/content/AudioPlayer.d.cts.map +0 -1
- package/dist/react-renderer/components/content/AudioPlayer.d.mts +0 -12
- package/dist/react-renderer/components/content/AudioPlayer.d.mts.map +0 -1
- package/dist/react-renderer/components/content/AudioPlayer.mjs +0 -33
- package/dist/react-renderer/components/content/AudioPlayer.mjs.map +0 -1
- package/dist/react-renderer/components/content/Divider.cjs +0 -31
- package/dist/react-renderer/components/content/Divider.cjs.map +0 -1
- package/dist/react-renderer/components/content/Divider.d.cts +0 -17
- package/dist/react-renderer/components/content/Divider.d.cts.map +0 -1
- package/dist/react-renderer/components/content/Divider.d.mts +0 -17
- package/dist/react-renderer/components/content/Divider.d.mts.map +0 -1
- package/dist/react-renderer/components/content/Divider.mjs +0 -30
- package/dist/react-renderer/components/content/Divider.mjs.map +0 -1
- package/dist/react-renderer/components/content/Icon.cjs +0 -50
- package/dist/react-renderer/components/content/Icon.cjs.map +0 -1
- package/dist/react-renderer/components/content/Icon.d.cts +0 -20
- package/dist/react-renderer/components/content/Icon.d.cts.map +0 -1
- package/dist/react-renderer/components/content/Icon.d.mts +0 -20
- package/dist/react-renderer/components/content/Icon.d.mts.map +0 -1
- package/dist/react-renderer/components/content/Icon.mjs +0 -49
- package/dist/react-renderer/components/content/Icon.mjs.map +0 -1
- package/dist/react-renderer/components/content/Image.cjs +0 -43
- package/dist/react-renderer/components/content/Image.cjs.map +0 -1
- package/dist/react-renderer/components/content/Image.d.cts +0 -15
- package/dist/react-renderer/components/content/Image.d.cts.map +0 -1
- package/dist/react-renderer/components/content/Image.d.mts +0 -15
- package/dist/react-renderer/components/content/Image.d.mts.map +0 -1
- package/dist/react-renderer/components/content/Image.mjs +0 -42
- package/dist/react-renderer/components/content/Image.mjs.map +0 -1
- package/dist/react-renderer/components/content/Text.cjs +0 -131
- package/dist/react-renderer/components/content/Text.cjs.map +0 -1
- package/dist/react-renderer/components/content/Text.d.cts +0 -32
- package/dist/react-renderer/components/content/Text.d.cts.map +0 -1
- package/dist/react-renderer/components/content/Text.d.mts +0 -32
- package/dist/react-renderer/components/content/Text.d.mts.map +0 -1
- package/dist/react-renderer/components/content/Text.mjs +0 -129
- package/dist/react-renderer/components/content/Text.mjs.map +0 -1
- package/dist/react-renderer/components/content/Video.cjs +0 -56
- package/dist/react-renderer/components/content/Video.cjs.map +0 -1
- package/dist/react-renderer/components/content/Video.d.cts +0 -14
- package/dist/react-renderer/components/content/Video.d.cts.map +0 -1
- package/dist/react-renderer/components/content/Video.d.mts +0 -14
- package/dist/react-renderer/components/content/Video.d.mts.map +0 -1
- package/dist/react-renderer/components/content/Video.mjs +0 -55
- package/dist/react-renderer/components/content/Video.mjs.map +0 -1
- package/dist/react-renderer/components/interactive/Button.cjs +0 -39
- package/dist/react-renderer/components/interactive/Button.cjs.map +0 -1
- package/dist/react-renderer/components/interactive/Button.d.cts +0 -15
- package/dist/react-renderer/components/interactive/Button.d.cts.map +0 -1
- package/dist/react-renderer/components/interactive/Button.d.mts +0 -15
- package/dist/react-renderer/components/interactive/Button.d.mts.map +0 -1
- package/dist/react-renderer/components/interactive/Button.mjs +0 -38
- package/dist/react-renderer/components/interactive/Button.mjs.map +0 -1
- package/dist/react-renderer/components/interactive/CheckBox.cjs +0 -58
- package/dist/react-renderer/components/interactive/CheckBox.cjs.map +0 -1
- package/dist/react-renderer/components/interactive/CheckBox.d.cts +0 -14
- package/dist/react-renderer/components/interactive/CheckBox.d.cts.map +0 -1
- package/dist/react-renderer/components/interactive/CheckBox.d.mts +0 -14
- package/dist/react-renderer/components/interactive/CheckBox.d.mts.map +0 -1
- package/dist/react-renderer/components/interactive/CheckBox.mjs +0 -57
- package/dist/react-renderer/components/interactive/CheckBox.mjs.map +0 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.cjs +0 -65
- package/dist/react-renderer/components/interactive/DateTimeInput.cjs.map +0 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.d.cts +0 -14
- package/dist/react-renderer/components/interactive/DateTimeInput.d.cts.map +0 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.d.mts +0 -14
- package/dist/react-renderer/components/interactive/DateTimeInput.d.mts.map +0 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.mjs +0 -64
- package/dist/react-renderer/components/interactive/DateTimeInput.mjs.map +0 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.cjs +0 -54
- package/dist/react-renderer/components/interactive/MultipleChoice.cjs.map +0 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.d.cts +0 -15
- package/dist/react-renderer/components/interactive/MultipleChoice.d.cts.map +0 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.d.mts +0 -15
- package/dist/react-renderer/components/interactive/MultipleChoice.d.mts.map +0 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.mjs +0 -53
- package/dist/react-renderer/components/interactive/MultipleChoice.mjs.map +0 -1
- package/dist/react-renderer/components/interactive/Slider.cjs +0 -72
- package/dist/react-renderer/components/interactive/Slider.cjs.map +0 -1
- package/dist/react-renderer/components/interactive/Slider.d.cts +0 -14
- package/dist/react-renderer/components/interactive/Slider.d.cts.map +0 -1
- package/dist/react-renderer/components/interactive/Slider.d.mts +0 -14
- package/dist/react-renderer/components/interactive/Slider.d.mts.map +0 -1
- package/dist/react-renderer/components/interactive/Slider.mjs +0 -71
- package/dist/react-renderer/components/interactive/Slider.mjs.map +0 -1
- package/dist/react-renderer/components/interactive/TextField.cjs +0 -74
- package/dist/react-renderer/components/interactive/TextField.cjs.map +0 -1
- package/dist/react-renderer/components/interactive/TextField.d.cts +0 -14
- package/dist/react-renderer/components/interactive/TextField.d.cts.map +0 -1
- package/dist/react-renderer/components/interactive/TextField.d.mts +0 -14
- package/dist/react-renderer/components/interactive/TextField.d.mts.map +0 -1
- package/dist/react-renderer/components/interactive/TextField.mjs +0 -73
- package/dist/react-renderer/components/interactive/TextField.mjs.map +0 -1
- package/dist/react-renderer/components/layout/Card.cjs +0 -46
- package/dist/react-renderer/components/layout/Card.cjs.map +0 -1
- package/dist/react-renderer/components/layout/Card.d.cts +0 -21
- package/dist/react-renderer/components/layout/Card.d.cts.map +0 -1
- package/dist/react-renderer/components/layout/Card.d.mts +0 -21
- package/dist/react-renderer/components/layout/Card.d.mts.map +0 -1
- package/dist/react-renderer/components/layout/Card.mjs +0 -45
- package/dist/react-renderer/components/layout/Card.mjs.map +0 -1
- package/dist/react-renderer/components/layout/Column.cjs +0 -43
- package/dist/react-renderer/components/layout/Column.cjs.map +0 -1
- package/dist/react-renderer/components/layout/Column.d.cts +0 -14
- package/dist/react-renderer/components/layout/Column.d.cts.map +0 -1
- package/dist/react-renderer/components/layout/Column.d.mts +0 -14
- package/dist/react-renderer/components/layout/Column.d.mts.map +0 -1
- package/dist/react-renderer/components/layout/Column.mjs +0 -42
- package/dist/react-renderer/components/layout/Column.mjs.map +0 -1
- package/dist/react-renderer/components/layout/List.cjs +0 -41
- package/dist/react-renderer/components/layout/List.cjs.map +0 -1
- package/dist/react-renderer/components/layout/List.d.cts +0 -14
- package/dist/react-renderer/components/layout/List.d.cts.map +0 -1
- package/dist/react-renderer/components/layout/List.d.mts +0 -14
- package/dist/react-renderer/components/layout/List.d.mts.map +0 -1
- package/dist/react-renderer/components/layout/List.mjs +0 -40
- package/dist/react-renderer/components/layout/List.mjs.map +0 -1
- package/dist/react-renderer/components/layout/Modal.cjs +0 -92
- package/dist/react-renderer/components/layout/Modal.cjs.map +0 -1
- package/dist/react-renderer/components/layout/Modal.d.cts +0 -19
- package/dist/react-renderer/components/layout/Modal.d.cts.map +0 -1
- package/dist/react-renderer/components/layout/Modal.d.mts +0 -19
- package/dist/react-renderer/components/layout/Modal.d.mts.map +0 -1
- package/dist/react-renderer/components/layout/Modal.mjs +0 -91
- package/dist/react-renderer/components/layout/Modal.mjs.map +0 -1
- package/dist/react-renderer/components/layout/Row.cjs +0 -43
- package/dist/react-renderer/components/layout/Row.cjs.map +0 -1
- package/dist/react-renderer/components/layout/Row.d.cts +0 -14
- package/dist/react-renderer/components/layout/Row.d.cts.map +0 -1
- package/dist/react-renderer/components/layout/Row.d.mts +0 -14
- package/dist/react-renderer/components/layout/Row.d.mts.map +0 -1
- package/dist/react-renderer/components/layout/Row.mjs +0 -42
- package/dist/react-renderer/components/layout/Row.mjs.map +0 -1
- package/dist/react-renderer/components/layout/Tabs.cjs +0 -47
- package/dist/react-renderer/components/layout/Tabs.cjs.map +0 -1
- package/dist/react-renderer/components/layout/Tabs.d.cts +0 -12
- package/dist/react-renderer/components/layout/Tabs.d.cts.map +0 -1
- package/dist/react-renderer/components/layout/Tabs.d.mts +0 -12
- package/dist/react-renderer/components/layout/Tabs.d.mts.map +0 -1
- package/dist/react-renderer/components/layout/Tabs.mjs +0 -46
- package/dist/react-renderer/components/layout/Tabs.mjs.map +0 -1
- package/dist/react-renderer/core/A2UIViewer.cjs +0 -11
- package/dist/react-renderer/core/A2UIViewer.d.cts +0 -16
- package/dist/react-renderer/core/A2UIViewer.d.cts.map +0 -1
- package/dist/react-renderer/core/A2UIViewer.d.mts +0 -16
- package/dist/react-renderer/core/A2UIViewer.d.mts.map +0 -1
- package/dist/react-renderer/core/A2UIViewer.mjs +0 -11
- package/dist/react-renderer/core/ComponentNode.cjs +0 -53
- package/dist/react-renderer/core/ComponentNode.cjs.map +0 -1
- package/dist/react-renderer/core/ComponentNode.d.cts +0 -29
- package/dist/react-renderer/core/ComponentNode.d.cts.map +0 -1
- package/dist/react-renderer/core/ComponentNode.d.mts +0 -29
- package/dist/react-renderer/core/ComponentNode.d.mts.map +0 -1
- package/dist/react-renderer/core/ComponentNode.mjs +0 -52
- package/dist/react-renderer/core/ComponentNode.mjs.map +0 -1
- package/dist/react-renderer/hooks/useA2UIComponent.cjs +0 -173
- package/dist/react-renderer/hooks/useA2UIComponent.cjs.map +0 -1
- package/dist/react-renderer/hooks/useA2UIComponent.d.cts +0 -56
- package/dist/react-renderer/hooks/useA2UIComponent.d.cts.map +0 -1
- package/dist/react-renderer/hooks/useA2UIComponent.d.mts +0 -56
- package/dist/react-renderer/hooks/useA2UIComponent.d.mts.map +0 -1
- package/dist/react-renderer/hooks/useA2UIComponent.mjs +0 -172
- package/dist/react-renderer/hooks/useA2UIComponent.mjs.map +0 -1
- package/dist/react-renderer/registry/ComponentRegistry.cjs +0 -114
- package/dist/react-renderer/registry/ComponentRegistry.cjs.map +0 -1
- package/dist/react-renderer/registry/ComponentRegistry.d.cts +0 -82
- package/dist/react-renderer/registry/ComponentRegistry.d.cts.map +0 -1
- package/dist/react-renderer/registry/ComponentRegistry.d.mts +0 -82
- package/dist/react-renderer/registry/ComponentRegistry.d.mts.map +0 -1
- package/dist/react-renderer/registry/ComponentRegistry.mjs +0 -113
- package/dist/react-renderer/registry/ComponentRegistry.mjs.map +0 -1
- package/dist/react-renderer/registry/defaultCatalog.cjs +0 -58
- package/dist/react-renderer/registry/defaultCatalog.cjs.map +0 -1
- package/dist/react-renderer/registry/defaultCatalog.d.cts +0 -17
- package/dist/react-renderer/registry/defaultCatalog.d.cts.map +0 -1
- package/dist/react-renderer/registry/defaultCatalog.d.mts +0 -17
- package/dist/react-renderer/registry/defaultCatalog.d.mts.map +0 -1
- package/dist/react-renderer/registry/defaultCatalog.mjs +0 -57
- package/dist/react-renderer/registry/defaultCatalog.mjs.map +0 -1
- package/dist/react-renderer/styles/reset.cjs +0 -29
- package/dist/react-renderer/styles/reset.cjs.map +0 -1
- package/dist/react-renderer/styles/reset.mjs +0 -28
- package/dist/react-renderer/styles/reset.mjs.map +0 -1
- package/dist/react-renderer/theme/litTheme.cjs +0 -386
- package/dist/react-renderer/theme/litTheme.cjs.map +0 -1
- package/dist/react-renderer/theme/litTheme.d.cts +0 -12
- package/dist/react-renderer/theme/litTheme.d.cts.map +0 -1
- package/dist/react-renderer/theme/litTheme.d.mts +0 -12
- package/dist/react-renderer/theme/litTheme.d.mts.map +0 -1
- package/dist/react-renderer/theme/litTheme.mjs +0 -384
- package/dist/react-renderer/theme/litTheme.mjs.map +0 -1
- package/dist/react-renderer/theme/utils.cjs +0 -41
- package/dist/react-renderer/theme/utils.cjs.map +0 -1
- package/dist/react-renderer/theme/utils.d.cts +0 -26
- package/dist/react-renderer/theme/utils.d.cts.map +0 -1
- package/dist/react-renderer/theme/utils.d.mts +0 -26
- package/dist/react-renderer/theme/utils.d.mts.map +0 -1
- package/dist/react-renderer/theme/utils.mjs +0 -39
- package/dist/react-renderer/theme/utils.mjs.map +0 -1
- package/dist/theme/viewer-theme.cjs +0 -395
- package/dist/theme/viewer-theme.cjs.map +0 -1
- package/dist/theme/viewer-theme.d.cts +0 -7
- package/dist/theme/viewer-theme.d.cts.map +0 -1
- package/dist/theme/viewer-theme.d.mts +0 -7
- package/dist/theme/viewer-theme.d.mts.map +0 -1
- package/dist/theme/viewer-theme.mjs +0 -394
- package/dist/theme/viewer-theme.mjs.map +0 -1
|
@@ -1,37 +1,18 @@
|
|
|
1
1
|
import { ReactNode } from "react";
|
|
2
|
-
import { Types } from "@a2ui/lit/0.8";
|
|
3
2
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
3
|
|
|
5
4
|
//#region src/react-renderer/theme/ThemeContext.d.ts
|
|
6
|
-
|
|
7
|
-
* Props for the ThemeProvider component.
|
|
8
|
-
*/
|
|
5
|
+
type ThemeType = Record<string, unknown>;
|
|
9
6
|
interface ThemeProviderProps {
|
|
10
|
-
|
|
11
|
-
theme?: Types.Theme;
|
|
12
|
-
/** Child components that will have access to the theme */
|
|
7
|
+
theme?: ThemeType;
|
|
13
8
|
children: ReactNode;
|
|
14
9
|
}
|
|
15
|
-
/**
|
|
16
|
-
* Provider component that makes the A2UI theme available to descendant components.
|
|
17
|
-
*/
|
|
18
10
|
declare function ThemeProvider({
|
|
19
11
|
theme,
|
|
20
12
|
children
|
|
21
13
|
}: ThemeProviderProps): react_jsx_runtime0.JSX.Element;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
*
|
|
25
|
-
* @returns The current theme
|
|
26
|
-
* @throws If used outside of a ThemeProvider
|
|
27
|
-
*/
|
|
28
|
-
declare function useTheme(): Types.Theme;
|
|
29
|
-
/**
|
|
30
|
-
* Hook to optionally access the current A2UI theme.
|
|
31
|
-
*
|
|
32
|
-
* @returns The current theme, or undefined if not within a provider
|
|
33
|
-
*/
|
|
34
|
-
declare function useThemeOptional(): Types.Theme | undefined;
|
|
14
|
+
declare function useTheme(): ThemeType;
|
|
15
|
+
declare function useThemeOptional(): ThemeType | undefined;
|
|
35
16
|
//#endregion
|
|
36
17
|
export { ThemeProvider, useTheme, useThemeOptional };
|
|
37
18
|
//# sourceMappingURL=ThemeContext.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeContext.d.mts","names":[],"sources":["../../../src/react-renderer/theme/ThemeContext.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ThemeContext.d.mts","names":[],"sources":["../../../src/react-renderer/theme/ThemeContext.tsx"],"mappings":";;;;KAEK,SAAA,GAAY,MAAA;AAAA,UAKA,kBAAA;EACf,KAAA,GAAQ,SAAA;EACR,QAAA,EAAU,SAAA;AAAA;AAAA,iBAGI,aAAA,CAAA;EAAgB,KAAA;EAAO;AAAA,GAAY,kBAAA,GAAkB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAQrD,QAAA,CAAA,GAAY,SAAA;AAAA,iBAUZ,gBAAA,CAAA,GAAoB,SAAA"}
|
|
@@ -1,37 +1,20 @@
|
|
|
1
|
-
import { defaultTheme } from "./litTheme.mjs";
|
|
2
1
|
import { createContext, useContext } from "react";
|
|
3
2
|
import { jsx } from "react/jsx-runtime";
|
|
4
3
|
|
|
5
4
|
//#region src/react-renderer/theme/ThemeContext.tsx
|
|
6
|
-
/**
|
|
7
|
-
* React context for the A2UI theme.
|
|
8
|
-
*/
|
|
5
|
+
/** React context for the A2UI theme. */
|
|
9
6
|
const ThemeContext = createContext(void 0);
|
|
10
|
-
/**
|
|
11
|
-
* Provider component that makes the A2UI theme available to descendant components.
|
|
12
|
-
*/
|
|
13
7
|
function ThemeProvider({ theme, children }) {
|
|
14
8
|
return /* @__PURE__ */ jsx(ThemeContext.Provider, {
|
|
15
|
-
value: theme ??
|
|
9
|
+
value: theme ?? {},
|
|
16
10
|
children
|
|
17
11
|
});
|
|
18
12
|
}
|
|
19
|
-
/**
|
|
20
|
-
* Hook to access the current A2UI theme.
|
|
21
|
-
*
|
|
22
|
-
* @returns The current theme
|
|
23
|
-
* @throws If used outside of a ThemeProvider
|
|
24
|
-
*/
|
|
25
13
|
function useTheme() {
|
|
26
14
|
const theme = useContext(ThemeContext);
|
|
27
15
|
if (!theme) throw new Error("useTheme must be used within a ThemeProvider or A2UIProvider");
|
|
28
16
|
return theme;
|
|
29
17
|
}
|
|
30
|
-
/**
|
|
31
|
-
* Hook to optionally access the current A2UI theme.
|
|
32
|
-
*
|
|
33
|
-
* @returns The current theme, or undefined if not within a provider
|
|
34
|
-
*/
|
|
35
18
|
function useThemeOptional() {
|
|
36
19
|
return useContext(ThemeContext);
|
|
37
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeContext.mjs","names":[],"sources":["../../../src/react-renderer/theme/ThemeContext.tsx"],"sourcesContent":["import { createContext, useContext, type ReactNode } from \"react\";\
|
|
1
|
+
{"version":3,"file":"ThemeContext.mjs","names":[],"sources":["../../../src/react-renderer/theme/ThemeContext.tsx"],"sourcesContent":["import { createContext, useContext, type ReactNode } from \"react\";\n\ntype ThemeType = Record<string, unknown>;\n\n/** React context for the A2UI theme. */\nconst ThemeContext = createContext<ThemeType | undefined>(undefined);\n\nexport interface ThemeProviderProps {\n theme?: ThemeType;\n children: ReactNode;\n}\n\nexport function ThemeProvider({ theme, children }: ThemeProviderProps) {\n return (\n <ThemeContext.Provider value={theme ?? {}}>\n {children}\n </ThemeContext.Provider>\n );\n}\n\nexport function useTheme(): ThemeType {\n const theme = useContext(ThemeContext);\n if (!theme) {\n throw new Error(\n \"useTheme must be used within a ThemeProvider or A2UIProvider\",\n );\n }\n return theme;\n}\n\nexport function useThemeOptional(): ThemeType | undefined {\n return useContext(ThemeContext);\n}\n"],"mappings":";;;;;AAKA,MAAM,eAAe,cAAqC,OAAU;AAOpE,SAAgB,cAAc,EAAE,OAAO,YAAgC;AACrE,QACE,oBAAC,aAAa;EAAS,OAAO,SAAS,EAAE;EACtC;GACqB;;AAI5B,SAAgB,WAAsB;CACpC,MAAM,QAAQ,WAAW,aAAa;AACtC,KAAI,CAAC,MACH,OAAM,IAAI,MACR,+DACD;AAEH,QAAO;;AAGT,SAAgB,mBAA0C;AACxD,QAAO,WAAW,aAAa"}
|
|
@@ -1,50 +1,45 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Primitives as Primitives$1, Types as Types$1 } from "@a2ui/lit/0.8";
|
|
1
|
+
import { A2UIClientEventMessage, Theme } from "../a2ui-types.cjs";
|
|
3
2
|
|
|
4
3
|
//#region src/react-renderer/types.d.ts
|
|
5
|
-
type
|
|
6
|
-
type
|
|
7
|
-
type
|
|
8
|
-
type
|
|
9
|
-
type
|
|
10
|
-
type
|
|
4
|
+
type Types = Record<string, any>;
|
|
5
|
+
type Primitives = Record<string, any>;
|
|
6
|
+
type AnyComponentNode = any;
|
|
7
|
+
type Surface = any;
|
|
8
|
+
type SurfaceID = string;
|
|
9
|
+
type ServerToClientMessage = Record<string, unknown>;
|
|
10
|
+
type Action = any;
|
|
11
|
+
type DataValue = any;
|
|
12
|
+
type MessageProcessor = any;
|
|
13
|
+
type StringValue = any;
|
|
14
|
+
type NumberValue = any;
|
|
15
|
+
type BooleanValue = any;
|
|
11
16
|
/**
|
|
12
|
-
*
|
|
17
|
+
* @deprecated - v0.9 components are handled by the catalog system.
|
|
13
18
|
*/
|
|
14
|
-
interface A2UIComponentProps<T
|
|
15
|
-
/** The resolved component node from the A2UI message processor */
|
|
19
|
+
interface A2UIComponentProps<T = any> {
|
|
16
20
|
node: T;
|
|
17
|
-
/** The surface ID this component belongs to */
|
|
18
21
|
surfaceId: string;
|
|
19
22
|
}
|
|
20
|
-
/**
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
type ComponentLoader<T extends Types$1.AnyComponentNode = Types$1.AnyComponentNode> = () => Promise<{
|
|
24
|
-
default: ComponentType<A2UIComponentProps<T>>;
|
|
23
|
+
/** @deprecated - v0.9 components are loaded by the catalog. */
|
|
24
|
+
type ComponentLoader<T = any> = () => Promise<{
|
|
25
|
+
default: any;
|
|
25
26
|
}>;
|
|
26
|
-
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
interface ComponentRegistration<T extends Types$1.AnyComponentNode = Types$1.AnyComponentNode> {
|
|
30
|
-
/** The React component or a loader function for lazy loading */
|
|
31
|
-
component: ComponentType<A2UIComponentProps<T>> | ComponentLoader<T>;
|
|
32
|
-
/** If true, the component will be lazy loaded */
|
|
27
|
+
/** @deprecated - v0.9 uses Catalog instead of ComponentRegistration. */
|
|
28
|
+
interface ComponentRegistration<T = any> {
|
|
29
|
+
component: any;
|
|
33
30
|
lazy?: boolean;
|
|
34
31
|
}
|
|
35
32
|
/**
|
|
36
33
|
* Callback for when a user action is dispatched.
|
|
37
34
|
*/
|
|
38
|
-
type OnActionCallback = (message:
|
|
35
|
+
type OnActionCallback = (message: A2UIClientEventMessage) => void | Promise<void>;
|
|
39
36
|
/**
|
|
40
37
|
* Configuration options for the A2UI provider.
|
|
41
38
|
*/
|
|
42
39
|
interface A2UIProviderConfig {
|
|
43
|
-
/** Callback invoked when a user action is dispatched (button click, etc.) */
|
|
44
40
|
onAction?: OnActionCallback;
|
|
45
|
-
|
|
46
|
-
theme?: Types$1.Theme;
|
|
41
|
+
theme?: Theme;
|
|
47
42
|
}
|
|
48
43
|
//#endregion
|
|
49
|
-
export { A2UIComponentProps, A2UIProviderConfig, BooleanValue, ComponentLoader, ComponentRegistration, DataValue, MessageProcessor, NumberValue, OnActionCallback,
|
|
44
|
+
export { A2UIComponentProps, A2UIProviderConfig, Action, AnyComponentNode, BooleanValue, ComponentLoader, ComponentRegistration, DataValue, MessageProcessor, NumberValue, OnActionCallback, Primitives, ServerToClientMessage, StringValue, Surface, SurfaceID, Types };
|
|
50
45
|
//# sourceMappingURL=types.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.cts","names":[],"sources":["../../src/react-renderer/types.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.cts","names":[],"sources":["../../src/react-renderer/types.ts"],"mappings":";;;KAMY,KAAA,GAAQ,MAAA;AAAA,KACR,UAAA,GAAa,MAAA;AAAA,KACb,gBAAA;AAAA,KACA,OAAA;AAAA,KACA,SAAA;AAAA,KACA,qBAAA,GAAwB,MAAA;AAAA,KACxB,MAAA;AAAA,KACA,SAAA;AAAA,KACA,gBAAA;AAAA,KACA,WAAA;AAAA,KACA,WAAA;AAAA,KACA,YAAA;;;;UAKK,kBAAA;EACf,IAAA,EAAM,CAAA;EACN,SAAA;AAAA;;KAIU,eAAA,kBAAiC,OAAA;EAC3C,OAAA;AAAA;;UAIe,qBAAA;EACf,SAAA;EACA,IAAA;AAAA;;;;KAMU,gBAAA,IACV,OAAA,EAAS,sBAAA,YACC,OAAA;;;;UAKK,kBAAA;EACf,QAAA,GAAW,gBAAA;EACX,KAAA,GAAQ,KAAA;AAAA"}
|
|
@@ -1,50 +1,45 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Primitives as Primitives$1, Types as Types$1 } from "@a2ui/lit/0.8";
|
|
1
|
+
import { A2UIClientEventMessage, Theme } from "../a2ui-types.mjs";
|
|
3
2
|
|
|
4
3
|
//#region src/react-renderer/types.d.ts
|
|
5
|
-
type
|
|
6
|
-
type
|
|
7
|
-
type
|
|
8
|
-
type
|
|
9
|
-
type
|
|
10
|
-
type
|
|
4
|
+
type Types = Record<string, any>;
|
|
5
|
+
type Primitives = Record<string, any>;
|
|
6
|
+
type AnyComponentNode = any;
|
|
7
|
+
type Surface = any;
|
|
8
|
+
type SurfaceID = string;
|
|
9
|
+
type ServerToClientMessage = Record<string, unknown>;
|
|
10
|
+
type Action = any;
|
|
11
|
+
type DataValue = any;
|
|
12
|
+
type MessageProcessor = any;
|
|
13
|
+
type StringValue = any;
|
|
14
|
+
type NumberValue = any;
|
|
15
|
+
type BooleanValue = any;
|
|
11
16
|
/**
|
|
12
|
-
*
|
|
17
|
+
* @deprecated - v0.9 components are handled by the catalog system.
|
|
13
18
|
*/
|
|
14
|
-
interface A2UIComponentProps<T
|
|
15
|
-
/** The resolved component node from the A2UI message processor */
|
|
19
|
+
interface A2UIComponentProps<T = any> {
|
|
16
20
|
node: T;
|
|
17
|
-
/** The surface ID this component belongs to */
|
|
18
21
|
surfaceId: string;
|
|
19
22
|
}
|
|
20
|
-
/**
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
type ComponentLoader<T extends Types$1.AnyComponentNode = Types$1.AnyComponentNode> = () => Promise<{
|
|
24
|
-
default: ComponentType<A2UIComponentProps<T>>;
|
|
23
|
+
/** @deprecated - v0.9 components are loaded by the catalog. */
|
|
24
|
+
type ComponentLoader<T = any> = () => Promise<{
|
|
25
|
+
default: any;
|
|
25
26
|
}>;
|
|
26
|
-
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
interface ComponentRegistration<T extends Types$1.AnyComponentNode = Types$1.AnyComponentNode> {
|
|
30
|
-
/** The React component or a loader function for lazy loading */
|
|
31
|
-
component: ComponentType<A2UIComponentProps<T>> | ComponentLoader<T>;
|
|
32
|
-
/** If true, the component will be lazy loaded */
|
|
27
|
+
/** @deprecated - v0.9 uses Catalog instead of ComponentRegistration. */
|
|
28
|
+
interface ComponentRegistration<T = any> {
|
|
29
|
+
component: any;
|
|
33
30
|
lazy?: boolean;
|
|
34
31
|
}
|
|
35
32
|
/**
|
|
36
33
|
* Callback for when a user action is dispatched.
|
|
37
34
|
*/
|
|
38
|
-
type OnActionCallback = (message:
|
|
35
|
+
type OnActionCallback = (message: A2UIClientEventMessage) => void | Promise<void>;
|
|
39
36
|
/**
|
|
40
37
|
* Configuration options for the A2UI provider.
|
|
41
38
|
*/
|
|
42
39
|
interface A2UIProviderConfig {
|
|
43
|
-
/** Callback invoked when a user action is dispatched (button click, etc.) */
|
|
44
40
|
onAction?: OnActionCallback;
|
|
45
|
-
|
|
46
|
-
theme?: Types$1.Theme;
|
|
41
|
+
theme?: Theme;
|
|
47
42
|
}
|
|
48
43
|
//#endregion
|
|
49
|
-
export { A2UIComponentProps, A2UIProviderConfig, BooleanValue, ComponentLoader, ComponentRegistration, DataValue, MessageProcessor, NumberValue, OnActionCallback,
|
|
44
|
+
export { A2UIComponentProps, A2UIProviderConfig, Action, AnyComponentNode, BooleanValue, ComponentLoader, ComponentRegistration, DataValue, MessageProcessor, NumberValue, OnActionCallback, Primitives, ServerToClientMessage, StringValue, Surface, SurfaceID, Types };
|
|
50
45
|
//# sourceMappingURL=types.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.mts","names":[],"sources":["../../src/react-renderer/types.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.mts","names":[],"sources":["../../src/react-renderer/types.ts"],"mappings":";;;KAMY,KAAA,GAAQ,MAAA;AAAA,KACR,UAAA,GAAa,MAAA;AAAA,KACb,gBAAA;AAAA,KACA,OAAA;AAAA,KACA,SAAA;AAAA,KACA,qBAAA,GAAwB,MAAA;AAAA,KACxB,MAAA;AAAA,KACA,SAAA;AAAA,KACA,gBAAA;AAAA,KACA,WAAA;AAAA,KACA,WAAA;AAAA,KACA,YAAA;;;;UAKK,kBAAA;EACf,IAAA,EAAM,CAAA;EACN,SAAA;AAAA;;KAIU,eAAA,kBAAiC,OAAA;EAC3C,OAAA;AAAA;;UAIe,qBAAA;EACf,SAAA;EACA,IAAA;AAAA;;;;KAMU,gBAAA,IACV,OAAA,EAAS,sBAAA,YACC,OAAA;;;;UAKK,kBAAA;EACf,QAAA,GAAW,gBAAA;EACX,KAAA,GAAQ,KAAA;AAAA"}
|
package/package.json
CHANGED
|
@@ -1,20 +1,32 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@copilotkit/a2ui-renderer",
|
|
3
|
+
"version": "1.55.0",
|
|
3
4
|
"private": false,
|
|
4
|
-
"version": "1.55.0-next.9",
|
|
5
5
|
"description": "A2UI Renderer for CopilotKit - render A2UI surfaces in React applications",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"a2ui",
|
|
8
|
+
"ai",
|
|
9
|
+
"copilotkit",
|
|
10
|
+
"react",
|
|
11
|
+
"renderer",
|
|
12
|
+
"ui"
|
|
13
|
+
],
|
|
6
14
|
"homepage": "https://github.com/CopilotKit/CopilotKit",
|
|
15
|
+
"license": "MIT",
|
|
7
16
|
"repository": {
|
|
8
17
|
"type": "git",
|
|
9
18
|
"url": "https://github.com/CopilotKit/CopilotKit.git",
|
|
10
19
|
"directory": "packages/a2ui-renderer"
|
|
11
20
|
},
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
|
|
15
|
-
"license": "MIT",
|
|
16
|
-
"types": "./dist/index.d.cts",
|
|
21
|
+
"files": [
|
|
22
|
+
"dist"
|
|
23
|
+
],
|
|
17
24
|
"type": "module",
|
|
25
|
+
"main": "./dist/index.cjs",
|
|
26
|
+
"module": "./dist/index.mjs",
|
|
27
|
+
"types": "./dist/index.d.cts",
|
|
28
|
+
"unpkg": "./dist/index.umd.js",
|
|
29
|
+
"jsdelivr": "./dist/index.umd.js",
|
|
18
30
|
"exports": {
|
|
19
31
|
".": {
|
|
20
32
|
"import": "./dist/index.mjs",
|
|
@@ -22,41 +34,29 @@
|
|
|
22
34
|
},
|
|
23
35
|
"./package.json": "./package.json"
|
|
24
36
|
},
|
|
25
|
-
"
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"dist"
|
|
29
|
-
],
|
|
30
|
-
"keywords": [
|
|
31
|
-
"copilotkit",
|
|
32
|
-
"a2ui",
|
|
33
|
-
"react",
|
|
34
|
-
"ai",
|
|
35
|
-
"ui",
|
|
36
|
-
"renderer"
|
|
37
|
-
],
|
|
37
|
+
"publishConfig": {
|
|
38
|
+
"access": "public"
|
|
39
|
+
},
|
|
38
40
|
"dependencies": {
|
|
39
|
-
"@a2ui/
|
|
41
|
+
"@a2ui/web_core": "0.9.0",
|
|
40
42
|
"clsx": "^2.1.1",
|
|
41
|
-
"
|
|
42
|
-
"zod": "^3.
|
|
43
|
-
},
|
|
44
|
-
"peerDependencies": {
|
|
45
|
-
"react": "^18 || ^19 || ^19.0.0-rc",
|
|
46
|
-
"react-dom": "^18 || ^19 || ^19.0.0-rc"
|
|
43
|
+
"zod": "^3.25.75",
|
|
44
|
+
"zod-to-json-schema": "^3.24.1"
|
|
47
45
|
},
|
|
48
46
|
"devDependencies": {
|
|
49
47
|
"@testing-library/react": "^16.0.0",
|
|
50
|
-
"tsdown": "^0.20.3",
|
|
51
48
|
"@types/markdown-it": "^14.1.2",
|
|
52
49
|
"@types/react": "^19.2.3",
|
|
53
50
|
"@types/react-dom": "^19.2.3",
|
|
54
51
|
"jsdom": "^26.1.0",
|
|
52
|
+
"tsdown": "^0.20.3",
|
|
55
53
|
"typescript": "5.9.2",
|
|
56
54
|
"vitest": "^3.2.4"
|
|
57
55
|
},
|
|
58
|
-
"
|
|
59
|
-
|
|
56
|
+
"peerDependencies": {
|
|
57
|
+
"react": "^18 || ^19 || ^19.0.0-rc",
|
|
58
|
+
"react-dom": "^18 || ^19 || ^19.0.0-rc"
|
|
59
|
+
},
|
|
60
60
|
"scripts": {
|
|
61
61
|
"build": "tsdown",
|
|
62
62
|
"check-types": "tsc --noEmit -p tsconfig.json",
|
package/dist/A2UIViewer.cjs
DELETED
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
|
|
4
|
-
const require_A2UIProvider = require('./react-renderer/core/A2UIProvider.cjs');
|
|
5
|
-
const require_A2UIRenderer = require('./react-renderer/core/A2UIRenderer.cjs');
|
|
6
|
-
const require_defaultCatalog = require('./react-renderer/registry/defaultCatalog.cjs');
|
|
7
|
-
const require_index = require('./react-renderer/styles/index.cjs');
|
|
8
|
-
const require_viewer_theme = require('./theme/viewer-theme.cjs');
|
|
9
|
-
let react = require("react");
|
|
10
|
-
react = require_runtime.__toESM(react);
|
|
11
|
-
let react_jsx_runtime = require("react/jsx-runtime");
|
|
12
|
-
|
|
13
|
-
//#region src/A2UIViewer.tsx
|
|
14
|
-
let initialized = false;
|
|
15
|
-
function ensureInitialized() {
|
|
16
|
-
if (!initialized) {
|
|
17
|
-
require_defaultCatalog.initializeDefaultCatalog();
|
|
18
|
-
require_index.injectStyles();
|
|
19
|
-
initialized = true;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* A2UIViewer renders an A2UI component tree from a JSON definition and data.
|
|
24
|
-
* It re-renders cleanly when props change, discarding previous state.
|
|
25
|
-
*/
|
|
26
|
-
function A2UIViewer({ root, components, data, onAction, styles, className }) {
|
|
27
|
-
ensureInitialized();
|
|
28
|
-
const baseId = (0, react.useId)();
|
|
29
|
-
const surfaceId = (0, react.useMemo)(() => {
|
|
30
|
-
const definitionKey = `${root}-${JSON.stringify(components)}`;
|
|
31
|
-
let hash = 0;
|
|
32
|
-
for (let i = 0; i < definitionKey.length; i++) {
|
|
33
|
-
const char = definitionKey.charCodeAt(i);
|
|
34
|
-
hash = (hash << 5) - hash + char;
|
|
35
|
-
hash = hash & hash;
|
|
36
|
-
}
|
|
37
|
-
return `surface${baseId.replace(/:/g, "-")}${hash}`;
|
|
38
|
-
}, [
|
|
39
|
-
baseId,
|
|
40
|
-
root,
|
|
41
|
-
components
|
|
42
|
-
]);
|
|
43
|
-
const handleAction = (0, react.useMemo)(() => {
|
|
44
|
-
if (!onAction) return void 0;
|
|
45
|
-
return (message) => {
|
|
46
|
-
const userAction = message.userAction;
|
|
47
|
-
if (userAction) onAction({
|
|
48
|
-
actionName: userAction.name,
|
|
49
|
-
sourceComponentId: userAction.sourceComponentId,
|
|
50
|
-
timestamp: userAction.timestamp,
|
|
51
|
-
context: userAction.context ?? {}
|
|
52
|
-
});
|
|
53
|
-
};
|
|
54
|
-
}, [onAction]);
|
|
55
|
-
if (!components || components.length === 0) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
56
|
-
className,
|
|
57
|
-
style: {
|
|
58
|
-
padding: 16,
|
|
59
|
-
color: "#666",
|
|
60
|
-
fontFamily: "system-ui"
|
|
61
|
-
},
|
|
62
|
-
children: "No content to display"
|
|
63
|
-
});
|
|
64
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_A2UIProvider.A2UIProvider, {
|
|
65
|
-
onAction: handleAction,
|
|
66
|
-
theme: require_viewer_theme.theme,
|
|
67
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(A2UIViewerInner, {
|
|
68
|
-
surfaceId,
|
|
69
|
-
root,
|
|
70
|
-
components,
|
|
71
|
-
data: data ?? {},
|
|
72
|
-
styles,
|
|
73
|
-
className
|
|
74
|
-
})
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Inner component that processes messages within the provider context.
|
|
79
|
-
*/
|
|
80
|
-
function A2UIViewerInner({ surfaceId, root, components, data, styles, className }) {
|
|
81
|
-
const { processMessages } = require_A2UIProvider.useA2UIActions();
|
|
82
|
-
const lastProcessedRef = (0, react.useRef)("");
|
|
83
|
-
(0, react.useEffect)(() => {
|
|
84
|
-
const key = `${surfaceId}-${JSON.stringify(components)}-${JSON.stringify(data)}`;
|
|
85
|
-
if (key === lastProcessedRef.current) return;
|
|
86
|
-
lastProcessedRef.current = key;
|
|
87
|
-
const messages = [{ beginRendering: {
|
|
88
|
-
surfaceId,
|
|
89
|
-
root,
|
|
90
|
-
styles: styles ?? {}
|
|
91
|
-
} }, { surfaceUpdate: {
|
|
92
|
-
surfaceId,
|
|
93
|
-
components
|
|
94
|
-
} }];
|
|
95
|
-
if (data && Object.keys(data).length > 0) {
|
|
96
|
-
const contents = objectToValueMaps(data);
|
|
97
|
-
if (contents.length > 0) messages.push({ dataModelUpdate: {
|
|
98
|
-
surfaceId,
|
|
99
|
-
path: "/",
|
|
100
|
-
contents
|
|
101
|
-
} });
|
|
102
|
-
}
|
|
103
|
-
processMessages(messages);
|
|
104
|
-
}, [
|
|
105
|
-
processMessages,
|
|
106
|
-
surfaceId,
|
|
107
|
-
root,
|
|
108
|
-
components,
|
|
109
|
-
data,
|
|
110
|
-
styles
|
|
111
|
-
]);
|
|
112
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
113
|
-
className,
|
|
114
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_A2UIRenderer.default, { surfaceId })
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Converts a nested JavaScript object to the ValueMap[] format
|
|
119
|
-
* expected by A2UI's dataModelUpdate message.
|
|
120
|
-
*/
|
|
121
|
-
function objectToValueMaps(obj) {
|
|
122
|
-
return Object.entries(obj).map(([key, value]) => valueToValueMap(key, value));
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Converts a single key-value pair to a ValueMap.
|
|
126
|
-
*/
|
|
127
|
-
function valueToValueMap(key, value) {
|
|
128
|
-
if (typeof value === "string") return {
|
|
129
|
-
key,
|
|
130
|
-
valueString: value
|
|
131
|
-
};
|
|
132
|
-
if (typeof value === "number") return {
|
|
133
|
-
key,
|
|
134
|
-
valueNumber: value
|
|
135
|
-
};
|
|
136
|
-
if (typeof value === "boolean") return {
|
|
137
|
-
key,
|
|
138
|
-
valueBoolean: value
|
|
139
|
-
};
|
|
140
|
-
if (value === null || value === void 0) return { key };
|
|
141
|
-
if (Array.isArray(value)) return {
|
|
142
|
-
key,
|
|
143
|
-
valueMap: value.map((item, index) => valueToValueMap(String(index), item))
|
|
144
|
-
};
|
|
145
|
-
if (typeof value === "object") return {
|
|
146
|
-
key,
|
|
147
|
-
valueMap: objectToValueMaps(value)
|
|
148
|
-
};
|
|
149
|
-
return { key };
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
//#endregion
|
|
153
|
-
exports.A2UIViewer = A2UIViewer;
|
|
154
|
-
//# sourceMappingURL=A2UIViewer.cjs.map
|
package/dist/A2UIViewer.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A2UIViewer.cjs","names":["A2UIProvider","viewerTheme","useA2UIActions","A2UIRenderer"],"sources":["../src/A2UIViewer.tsx"],"sourcesContent":["\"use client\";\n\nimport React, { useId, useMemo, useEffect, useRef } from \"react\";\nimport type { Types } from \"@a2ui/lit/0.8\";\nimport { v0_8 } from \"@a2ui/lit\";\nimport {\n A2UIProvider,\n useA2UIActions,\n} from \"./react-renderer/core/A2UIProvider\";\nimport { A2UIRenderer } from \"./react-renderer/core/A2UIRenderer\";\nimport { initializeDefaultCatalog } from \"./react-renderer/registry/defaultCatalog\";\nimport { litTheme } from \"./react-renderer/theme/litTheme\";\nimport { injectStyles } from \"./react-renderer/styles\";\nimport { theme as viewerTheme } from \"./theme/viewer-theme.js\";\n\n// Re-export types that consumers may need\nexport interface ComponentInstance {\n id: string;\n component: Record<string, unknown>;\n}\n\nexport interface A2UIActionEvent {\n actionName: string;\n sourceComponentId: string;\n timestamp: string;\n context: Record<string, unknown>;\n}\n\nexport interface A2UIViewerProps {\n /** ID of the root component to render */\n root: string;\n /** Component definitions - array of ComponentInstance */\n components: v0_8.Types.ComponentInstance[];\n /** Data model - nested object, e.g. { user: { name: \"John\" }, items: [\"a\", \"b\"] } */\n data?: Record<string, unknown>;\n /** Called when user triggers an action (button click, etc.) */\n onAction?: (action: A2UIActionEvent) => void;\n /** Surface styles (primaryColor, font, logoUrl) */\n styles?: Record<string, string>;\n /** Optional className for the container */\n className?: string;\n}\n\n// Initialize the React renderer's component catalog and styles once\nlet initialized = false;\nfunction ensureInitialized() {\n if (!initialized) {\n initializeDefaultCatalog();\n injectStyles();\n initialized = true;\n }\n}\n\n/**\n * A2UIViewer renders an A2UI component tree from a JSON definition and data.\n * It re-renders cleanly when props change, discarding previous state.\n */\nexport function A2UIViewer({\n root,\n components,\n data,\n onAction,\n styles,\n className,\n}: A2UIViewerProps): React.JSX.Element {\n ensureInitialized();\n\n // Use React's useId for SSR-safe base ID\n const baseId = useId();\n\n // Generate a stable surfaceId that changes when definition changes\n const surfaceId = useMemo(() => {\n const definitionKey = `${root}-${JSON.stringify(components)}`;\n let hash = 0;\n for (let i = 0; i < definitionKey.length; i++) {\n const char = definitionKey.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n hash = hash & hash;\n }\n return `surface${baseId.replace(/:/g, \"-\")}${hash}`;\n }, [baseId, root, components]);\n\n // Convert onAction callback to internal format\n const handleAction = useMemo(() => {\n if (!onAction) return undefined;\n\n return (message: Types.A2UIClientEventMessage) => {\n const userAction = message.userAction;\n if (userAction) {\n onAction({\n actionName: userAction.name,\n sourceComponentId: userAction.sourceComponentId,\n timestamp: userAction.timestamp,\n context: userAction.context ?? {},\n });\n }\n };\n }, [onAction]);\n\n // Show placeholder if no components provided\n if (!components || components.length === 0) {\n return (\n <div\n className={className}\n style={{ padding: 16, color: \"#666\", fontFamily: \"system-ui\" }}\n >\n No content to display\n </div>\n );\n }\n\n return (\n <A2UIProvider onAction={handleAction} theme={viewerTheme}>\n <A2UIViewerInner\n surfaceId={surfaceId}\n root={root}\n components={components}\n data={data ?? {}}\n styles={styles}\n className={className}\n />\n </A2UIProvider>\n );\n}\n\n/**\n * Inner component that processes messages within the provider context.\n */\nfunction A2UIViewerInner({\n surfaceId,\n root,\n components,\n data,\n styles,\n className,\n}: {\n surfaceId: string;\n root: string;\n components: v0_8.Types.ComponentInstance[];\n data: Record<string, unknown>;\n styles?: Record<string, string>;\n className?: string;\n}) {\n const { processMessages } = useA2UIActions();\n const lastProcessedRef = useRef<string>(\"\");\n\n // Process messages when props change\n useEffect(() => {\n const key = `${surfaceId}-${JSON.stringify(components)}-${JSON.stringify(data)}`;\n if (key === lastProcessedRef.current) return;\n lastProcessedRef.current = key;\n\n const messages: Types.ServerToClientMessage[] = [\n { beginRendering: { surfaceId, root, styles: styles ?? {} } },\n { surfaceUpdate: { surfaceId, components } },\n ];\n\n // Add data model updates\n if (data && Object.keys(data).length > 0) {\n const contents = objectToValueMaps(data);\n if (contents.length > 0) {\n messages.push({\n dataModelUpdate: { surfaceId, path: \"/\", contents },\n });\n }\n }\n\n processMessages(messages);\n }, [processMessages, surfaceId, root, components, data, styles]);\n\n return (\n <div className={className}>\n <A2UIRenderer surfaceId={surfaceId} />\n </div>\n );\n}\n\n/**\n * Converts a nested JavaScript object to the ValueMap[] format\n * expected by A2UI's dataModelUpdate message.\n */\nfunction objectToValueMaps(obj: Record<string, unknown>): Types.ValueMap[] {\n return Object.entries(obj).map(([key, value]) => valueToValueMap(key, value));\n}\n\n/**\n * Converts a single key-value pair to a ValueMap.\n */\nfunction valueToValueMap(key: string, value: unknown): Types.ValueMap {\n if (typeof value === \"string\") {\n return { key, valueString: value };\n }\n if (typeof value === \"number\") {\n return { key, valueNumber: value };\n }\n if (typeof value === \"boolean\") {\n return { key, valueBoolean: value };\n }\n if (value === null || value === undefined) {\n return { key };\n }\n if (Array.isArray(value)) {\n const valueMap = value.map((item, index) =>\n valueToValueMap(String(index), item),\n );\n return { key, valueMap };\n }\n if (typeof value === \"object\") {\n const valueMap = objectToValueMaps(value as Record<string, unknown>);\n return { key, valueMap };\n }\n return { key };\n}\n"],"mappings":";;;;;;;;;;;;;AA4CA,IAAI,cAAc;AAClB,SAAS,oBAAoB;AAC3B,KAAI,CAAC,aAAa;AAChB,mDAA0B;AAC1B,8BAAc;AACd,gBAAc;;;;;;;AAQlB,SAAgB,WAAW,EACzB,MACA,YACA,MACA,UACA,QACA,aACqC;AACrC,oBAAmB;CAGnB,MAAM,2BAAgB;CAGtB,MAAM,qCAA0B;EAC9B,MAAM,gBAAgB,GAAG,KAAK,GAAG,KAAK,UAAU,WAAW;EAC3D,IAAI,OAAO;AACX,OAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;GAC7C,MAAM,OAAO,cAAc,WAAW,EAAE;AACxC,WAAQ,QAAQ,KAAK,OAAO;AAC5B,UAAO,OAAO;;AAEhB,SAAO,UAAU,OAAO,QAAQ,MAAM,IAAI,GAAG;IAC5C;EAAC;EAAQ;EAAM;EAAW,CAAC;CAG9B,MAAM,wCAA6B;AACjC,MAAI,CAAC,SAAU,QAAO;AAEtB,UAAQ,YAA0C;GAChD,MAAM,aAAa,QAAQ;AAC3B,OAAI,WACF,UAAS;IACP,YAAY,WAAW;IACvB,mBAAmB,WAAW;IAC9B,WAAW,WAAW;IACtB,SAAS,WAAW,WAAW,EAAE;IAClC,CAAC;;IAGL,CAAC,SAAS,CAAC;AAGd,KAAI,CAAC,cAAc,WAAW,WAAW,EACvC,QACE,2CAAC;EACY;EACX,OAAO;GAAE,SAAS;GAAI,OAAO;GAAQ,YAAY;GAAa;YAC/D;GAEK;AAIV,QACE,2CAACA;EAAa,UAAU;EAAc,OAAOC;YAC3C,2CAAC;GACY;GACL;GACM;GACZ,MAAM,QAAQ,EAAE;GACR;GACG;IACX;GACW;;;;;AAOnB,SAAS,gBAAgB,EACvB,WACA,MACA,YACA,MACA,QACA,aAQC;CACD,MAAM,EAAE,oBAAoBC,qCAAgB;CAC5C,MAAM,qCAAkC,GAAG;AAG3C,4BAAgB;EACd,MAAM,MAAM,GAAG,UAAU,GAAG,KAAK,UAAU,WAAW,CAAC,GAAG,KAAK,UAAU,KAAK;AAC9E,MAAI,QAAQ,iBAAiB,QAAS;AACtC,mBAAiB,UAAU;EAE3B,MAAM,WAA0C,CAC9C,EAAE,gBAAgB;GAAE;GAAW;GAAM,QAAQ,UAAU,EAAE;GAAE,EAAE,EAC7D,EAAE,eAAe;GAAE;GAAW;GAAY,EAAE,CAC7C;AAGD,MAAI,QAAQ,OAAO,KAAK,KAAK,CAAC,SAAS,GAAG;GACxC,MAAM,WAAW,kBAAkB,KAAK;AACxC,OAAI,SAAS,SAAS,EACpB,UAAS,KAAK,EACZ,iBAAiB;IAAE;IAAW,MAAM;IAAK;IAAU,EACpD,CAAC;;AAIN,kBAAgB,SAAS;IACxB;EAAC;EAAiB;EAAW;EAAM;EAAY;EAAM;EAAO,CAAC;AAEhE,QACE,2CAAC;EAAe;YACd,2CAACC,gCAAwB,YAAa;GAClC;;;;;;AAQV,SAAS,kBAAkB,KAAgD;AACzE,QAAO,OAAO,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,WAAW,gBAAgB,KAAK,MAAM,CAAC;;;;;AAM/E,SAAS,gBAAgB,KAAa,OAAgC;AACpE,KAAI,OAAO,UAAU,SACnB,QAAO;EAAE;EAAK,aAAa;EAAO;AAEpC,KAAI,OAAO,UAAU,SACnB,QAAO;EAAE;EAAK,aAAa;EAAO;AAEpC,KAAI,OAAO,UAAU,UACnB,QAAO;EAAE;EAAK,cAAc;EAAO;AAErC,KAAI,UAAU,QAAQ,UAAU,OAC9B,QAAO,EAAE,KAAK;AAEhB,KAAI,MAAM,QAAQ,MAAM,CAItB,QAAO;EAAE;EAAK,UAHG,MAAM,KAAK,MAAM,UAChC,gBAAgB,OAAO,MAAM,EAAE,KAAK,CACrC;EACuB;AAE1B,KAAI,OAAO,UAAU,SAEnB,QAAO;EAAE;EAAK,UADG,kBAAkB,MAAiC;EAC5C;AAE1B,QAAO,EAAE,KAAK"}
|
package/dist/A2UIViewer.d.cts
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { v0_8 } from "@a2ui/lit";
|
|
3
|
-
|
|
4
|
-
//#region src/A2UIViewer.d.ts
|
|
5
|
-
interface A2UIActionEvent {
|
|
6
|
-
actionName: string;
|
|
7
|
-
sourceComponentId: string;
|
|
8
|
-
timestamp: string;
|
|
9
|
-
context: Record<string, unknown>;
|
|
10
|
-
}
|
|
11
|
-
interface A2UIViewerProps {
|
|
12
|
-
/** ID of the root component to render */
|
|
13
|
-
root: string;
|
|
14
|
-
/** Component definitions - array of ComponentInstance */
|
|
15
|
-
components: v0_8.Types.ComponentInstance[];
|
|
16
|
-
/** Data model - nested object, e.g. { user: { name: "John" }, items: ["a", "b"] } */
|
|
17
|
-
data?: Record<string, unknown>;
|
|
18
|
-
/** Called when user triggers an action (button click, etc.) */
|
|
19
|
-
onAction?: (action: A2UIActionEvent) => void;
|
|
20
|
-
/** Surface styles (primaryColor, font, logoUrl) */
|
|
21
|
-
styles?: Record<string, string>;
|
|
22
|
-
/** Optional className for the container */
|
|
23
|
-
className?: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* A2UIViewer renders an A2UI component tree from a JSON definition and data.
|
|
27
|
-
* It re-renders cleanly when props change, discarding previous state.
|
|
28
|
-
*/
|
|
29
|
-
declare function A2UIViewer({
|
|
30
|
-
root,
|
|
31
|
-
components,
|
|
32
|
-
data,
|
|
33
|
-
onAction,
|
|
34
|
-
styles,
|
|
35
|
-
className
|
|
36
|
-
}: A2UIViewerProps): React.JSX.Element;
|
|
37
|
-
//#endregion
|
|
38
|
-
export { A2UIViewer, A2UIViewerProps };
|
|
39
|
-
//# sourceMappingURL=A2UIViewer.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A2UIViewer.d.cts","names":[],"sources":["../src/A2UIViewer.tsx"],"mappings":";;;;UAqBiB,eAAA;EACf,UAAA;EACA,iBAAA;EACA,SAAA;EACA,OAAA,EAAS,MAAA;AAAA;AAAA,UAGM,eAAA;EAHA;EAKf,IAAA;EAFe;EAIf,UAAA,EAAY,IAAA,CAAK,KAAA,CAAM,iBAAA;;EAEvB,IAAA,GAAO,MAAA;EAAA;EAEP,QAAA,IAAY,MAAA,EAAQ,eAAA;EAEX;EAAT,MAAA,GAAS,MAAA;EAAM;EAEf,SAAA;AAAA;;;;;iBAiBc,UAAA,CAAA;EACd,IAAA;EACA,UAAA;EACA,IAAA;EACA,QAAA;EACA,MAAA;EACA;AAAA,GACC,eAAA,GAAkB,KAAA,CAAM,GAAA,CAAI,OAAA"}
|
package/dist/A2UIViewer.d.mts
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { v0_8 } from "@a2ui/lit";
|
|
3
|
-
|
|
4
|
-
//#region src/A2UIViewer.d.ts
|
|
5
|
-
interface A2UIActionEvent {
|
|
6
|
-
actionName: string;
|
|
7
|
-
sourceComponentId: string;
|
|
8
|
-
timestamp: string;
|
|
9
|
-
context: Record<string, unknown>;
|
|
10
|
-
}
|
|
11
|
-
interface A2UIViewerProps {
|
|
12
|
-
/** ID of the root component to render */
|
|
13
|
-
root: string;
|
|
14
|
-
/** Component definitions - array of ComponentInstance */
|
|
15
|
-
components: v0_8.Types.ComponentInstance[];
|
|
16
|
-
/** Data model - nested object, e.g. { user: { name: "John" }, items: ["a", "b"] } */
|
|
17
|
-
data?: Record<string, unknown>;
|
|
18
|
-
/** Called when user triggers an action (button click, etc.) */
|
|
19
|
-
onAction?: (action: A2UIActionEvent) => void;
|
|
20
|
-
/** Surface styles (primaryColor, font, logoUrl) */
|
|
21
|
-
styles?: Record<string, string>;
|
|
22
|
-
/** Optional className for the container */
|
|
23
|
-
className?: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* A2UIViewer renders an A2UI component tree from a JSON definition and data.
|
|
27
|
-
* It re-renders cleanly when props change, discarding previous state.
|
|
28
|
-
*/
|
|
29
|
-
declare function A2UIViewer({
|
|
30
|
-
root,
|
|
31
|
-
components,
|
|
32
|
-
data,
|
|
33
|
-
onAction,
|
|
34
|
-
styles,
|
|
35
|
-
className
|
|
36
|
-
}: A2UIViewerProps): React.JSX.Element;
|
|
37
|
-
//#endregion
|
|
38
|
-
export { A2UIViewer, A2UIViewerProps };
|
|
39
|
-
//# sourceMappingURL=A2UIViewer.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A2UIViewer.d.mts","names":[],"sources":["../src/A2UIViewer.tsx"],"mappings":";;;;UAqBiB,eAAA;EACf,UAAA;EACA,iBAAA;EACA,SAAA;EACA,OAAA,EAAS,MAAA;AAAA;AAAA,UAGM,eAAA;EAHA;EAKf,IAAA;EAFe;EAIf,UAAA,EAAY,IAAA,CAAK,KAAA,CAAM,iBAAA;;EAEvB,IAAA,GAAO,MAAA;EAAA;EAEP,QAAA,IAAY,MAAA,EAAQ,eAAA;EAEX;EAAT,MAAA,GAAS,MAAA;EAAM;EAEf,SAAA;AAAA;;;;;iBAiBc,UAAA,CAAA;EACd,IAAA;EACA,UAAA;EACA,IAAA;EACA,QAAA;EACA,MAAA;EACA;AAAA,GACC,eAAA,GAAkB,KAAA,CAAM,GAAA,CAAI,OAAA"}
|