@copilotkit/a2ui-renderer 1.55.0-next.8 → 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,4 +1,3 @@
|
|
|
1
|
-
import { ComponentRegistry } from "../registry/ComponentRegistry.mjs";
|
|
2
1
|
import * as react from "react";
|
|
3
2
|
import { ReactNode } from "react";
|
|
4
3
|
|
|
@@ -12,27 +11,14 @@ interface A2UIRendererProps {
|
|
|
12
11
|
fallback?: ReactNode;
|
|
13
12
|
/** Loading fallback for lazy-loaded components */
|
|
14
13
|
loadingFallback?: ReactNode;
|
|
15
|
-
/**
|
|
16
|
-
registry?:
|
|
14
|
+
/** @deprecated - No longer needed in v0.9, components come from catalog */
|
|
15
|
+
registry?: any;
|
|
17
16
|
}
|
|
18
17
|
/**
|
|
19
|
-
* A2UIRenderer - renders an A2UI surface.
|
|
18
|
+
* A2UIRenderer - renders an A2UI surface using the v0.9 renderer.
|
|
20
19
|
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* Memoized to prevent unnecessary re-renders when props haven't changed.
|
|
25
|
-
*
|
|
26
|
-
* @example
|
|
27
|
-
* ```tsx
|
|
28
|
-
* function App() {
|
|
29
|
-
* return (
|
|
30
|
-
* <A2UIProvider onAction={handleAction}>
|
|
31
|
-
* <A2UIRenderer surfaceId="main" />
|
|
32
|
-
* </A2UIProvider>
|
|
33
|
-
* );
|
|
34
|
-
* }
|
|
35
|
-
* ```
|
|
20
|
+
* Uses A2uiSurface from a2ui-react which handles all component
|
|
21
|
+
* rendering internally via the catalog system.
|
|
36
22
|
*/
|
|
37
23
|
declare const A2UIRenderer: react.NamedExoticComponent<A2UIRendererProps>;
|
|
38
24
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A2UIRenderer.d.mts","names":[],"sources":["../../../src/react-renderer/core/A2UIRenderer.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"A2UIRenderer.d.mts","names":[],"sources":["../../../src/react-renderer/core/A2UIRenderer.tsx"],"mappings":";;;;UAciB,iBAAA;;EAEf,SAAA;EAFe;EAIf,SAAA;;EAEA,QAAA,GAAW,SAAA;EAJX;EAMA,eAAA,GAAkB,SAAA;EAFlB;EAIA,QAAA;AAAA;;;;;AASF;;cAAa,YAAA,EAAY,KAAA,CAAA,oBAAA,CAAA,iBAAA"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { A2uiSurface } from "../a2ui-react/A2uiSurface.mjs";
|
|
2
|
+
import "../a2ui-react/index.mjs";
|
|
1
3
|
import { useA2UI } from "../hooks/useA2UI.mjs";
|
|
2
|
-
import ComponentNode from "./ComponentNode.mjs";
|
|
3
4
|
import { cn } from "../lib/utils.mjs";
|
|
4
|
-
import { Suspense, memo
|
|
5
|
+
import { Suspense, memo } from "react";
|
|
5
6
|
import { Fragment, jsx } from "react/jsx-runtime";
|
|
6
7
|
|
|
7
8
|
//#region src/react-renderer/core/A2UIRenderer.tsx
|
|
@@ -17,72 +18,23 @@ const DefaultLoadingFallback = memo(function DefaultLoadingFallback() {
|
|
|
17
18
|
});
|
|
18
19
|
});
|
|
19
20
|
/**
|
|
20
|
-
* A2UIRenderer - renders an A2UI surface.
|
|
21
|
+
* A2UIRenderer - renders an A2UI surface using the v0.9 renderer.
|
|
21
22
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* Memoized to prevent unnecessary re-renders when props haven't changed.
|
|
26
|
-
*
|
|
27
|
-
* @example
|
|
28
|
-
* ```tsx
|
|
29
|
-
* function App() {
|
|
30
|
-
* return (
|
|
31
|
-
* <A2UIProvider onAction={handleAction}>
|
|
32
|
-
* <A2UIRenderer surfaceId="main" />
|
|
33
|
-
* </A2UIProvider>
|
|
34
|
-
* );
|
|
35
|
-
* }
|
|
36
|
-
* ```
|
|
23
|
+
* Uses A2uiSurface from a2ui-react which handles all component
|
|
24
|
+
* rendering internally via the catalog system.
|
|
37
25
|
*/
|
|
38
|
-
const A2UIRenderer = memo(function A2UIRenderer({ surfaceId, className, fallback = null, loadingFallback
|
|
26
|
+
const A2UIRenderer = memo(function A2UIRenderer({ surfaceId, className, fallback = null, loadingFallback }) {
|
|
39
27
|
const { getSurface, version } = useA2UI();
|
|
40
28
|
const surface = getSurface(surfaceId);
|
|
41
|
-
|
|
42
|
-
if (!surface?.styles) return {};
|
|
43
|
-
const styles = {};
|
|
44
|
-
for (const [key, value] of Object.entries(surface.styles)) switch (key) {
|
|
45
|
-
case "primaryColor":
|
|
46
|
-
styles["--p-100"] = "#ffffff";
|
|
47
|
-
styles["--p-99"] = `color-mix(in srgb, ${value} 2%, white 98%)`;
|
|
48
|
-
styles["--p-98"] = `color-mix(in srgb, ${value} 4%, white 96%)`;
|
|
49
|
-
styles["--p-95"] = `color-mix(in srgb, ${value} 10%, white 90%)`;
|
|
50
|
-
styles["--p-90"] = `color-mix(in srgb, ${value} 20%, white 80%)`;
|
|
51
|
-
styles["--p-80"] = `color-mix(in srgb, ${value} 40%, white 60%)`;
|
|
52
|
-
styles["--p-70"] = `color-mix(in srgb, ${value} 60%, white 40%)`;
|
|
53
|
-
styles["--p-60"] = `color-mix(in srgb, ${value} 80%, white 20%)`;
|
|
54
|
-
styles["--p-50"] = String(value);
|
|
55
|
-
styles["--p-40"] = `color-mix(in srgb, ${value} 80%, black 20%)`;
|
|
56
|
-
styles["--p-35"] = `color-mix(in srgb, ${value} 70%, black 30%)`;
|
|
57
|
-
styles["--p-30"] = `color-mix(in srgb, ${value} 60%, black 40%)`;
|
|
58
|
-
styles["--p-25"] = `color-mix(in srgb, ${value} 50%, black 50%)`;
|
|
59
|
-
styles["--p-20"] = `color-mix(in srgb, ${value} 40%, black 60%)`;
|
|
60
|
-
styles["--p-15"] = `color-mix(in srgb, ${value} 30%, black 70%)`;
|
|
61
|
-
styles["--p-10"] = `color-mix(in srgb, ${value} 20%, black 80%)`;
|
|
62
|
-
styles["--p-5"] = `color-mix(in srgb, ${value} 10%, black 90%)`;
|
|
63
|
-
styles["--p-0"] = "#000000";
|
|
64
|
-
break;
|
|
65
|
-
case "font":
|
|
66
|
-
styles["--font-family"] = String(value);
|
|
67
|
-
styles["--font-family-flex"] = String(value);
|
|
68
|
-
break;
|
|
69
|
-
}
|
|
70
|
-
return styles;
|
|
71
|
-
}, [surface?.styles]);
|
|
72
|
-
if (!surface || !surface.componentTree) return /* @__PURE__ */ jsx(Fragment, { children: fallback });
|
|
29
|
+
if (!surface) return /* @__PURE__ */ jsx(Fragment, { children: fallback });
|
|
73
30
|
const actualLoadingFallback = loadingFallback ?? /* @__PURE__ */ jsx(DefaultLoadingFallback, {});
|
|
74
31
|
return /* @__PURE__ */ jsx("div", {
|
|
75
32
|
className: cn("a2ui-surface", className),
|
|
76
|
-
style: surfaceStyles,
|
|
77
33
|
"data-surface-id": surfaceId,
|
|
78
34
|
"data-version": version,
|
|
79
35
|
children: /* @__PURE__ */ jsx(Suspense, {
|
|
80
36
|
fallback: actualLoadingFallback,
|
|
81
|
-
children: /* @__PURE__ */ jsx(
|
|
82
|
-
node: surface.componentTree,
|
|
83
|
-
surfaceId,
|
|
84
|
-
registry
|
|
85
|
-
})
|
|
37
|
+
children: /* @__PURE__ */ jsx(A2uiSurface, { surface })
|
|
86
38
|
})
|
|
87
39
|
});
|
|
88
40
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A2UIRenderer.mjs","names":[],"sources":["../../../src/react-renderer/core/A2UIRenderer.tsx"],"sourcesContent":["import { Suspense,
|
|
1
|
+
{"version":3,"file":"A2UIRenderer.mjs","names":[],"sources":["../../../src/react-renderer/core/A2UIRenderer.tsx"],"sourcesContent":["import { Suspense, memo, type ReactNode } from \"react\";\nimport { useA2UI } from \"../hooks/useA2UI\";\nimport { A2uiSurface } from \"../a2ui-react\";\nimport { cn } from \"../lib/utils\";\n\n/** Default loading fallback - memoized to prevent recreation */\nconst DefaultLoadingFallback = memo(function DefaultLoadingFallback() {\n return (\n <div className=\"a2ui-loading\" style={{ padding: \"16px\", opacity: 0.5 }}>\n Loading...\n </div>\n );\n});\n\nexport interface A2UIRendererProps {\n /** The surface ID to render */\n surfaceId: string;\n /** Additional CSS classes for the surface container */\n className?: string;\n /** Fallback content when surface is not yet available */\n fallback?: ReactNode;\n /** Loading fallback for lazy-loaded components */\n loadingFallback?: ReactNode;\n /** @deprecated - No longer needed in v0.9, components come from catalog */\n registry?: any;\n}\n\n/**\n * A2UIRenderer - renders an A2UI surface using the v0.9 renderer.\n *\n * Uses A2uiSurface from a2ui-react which handles all component\n * rendering internally via the catalog system.\n */\nexport const A2UIRenderer = memo(function A2UIRenderer({\n surfaceId,\n className,\n fallback = null,\n loadingFallback,\n}: A2UIRendererProps) {\n const { getSurface, version } = useA2UI();\n\n // Get v0.9 SurfaceModel - this will re-render when version changes\n const surface = getSurface(surfaceId);\n\n // No surface yet\n if (!surface) {\n return <>{fallback}</>;\n }\n\n // Use provided fallback or default memoized component\n const actualLoadingFallback = loadingFallback ?? <DefaultLoadingFallback />;\n\n return (\n <div\n className={cn(\"a2ui-surface\", className)}\n data-surface-id={surfaceId}\n data-version={version}\n >\n <Suspense fallback={actualLoadingFallback}>\n <A2uiSurface surface={surface} />\n </Suspense>\n </div>\n );\n});\n\nexport default A2UIRenderer;\n"],"mappings":";;;;;;;;;AAMA,MAAM,yBAAyB,KAAK,SAAS,yBAAyB;AACpE,QACE,oBAAC;EAAI,WAAU;EAAe,OAAO;GAAE,SAAS;GAAQ,SAAS;GAAK;YAAE;GAElE;EAER;;;;;;;AAqBF,MAAa,eAAe,KAAK,SAAS,aAAa,EACrD,WACA,WACA,WAAW,MACX,mBACoB;CACpB,MAAM,EAAE,YAAY,YAAY,SAAS;CAGzC,MAAM,UAAU,WAAW,UAAU;AAGrC,KAAI,CAAC,QACH,QAAO,0CAAG,WAAY;CAIxB,MAAM,wBAAwB,mBAAmB,oBAAC,2BAAyB;AAE3E,QACE,oBAAC;EACC,WAAW,GAAG,gBAAgB,UAAU;EACxC,mBAAiB;EACjB,gBAAc;YAEd,oBAAC;GAAS,UAAU;aAClB,oBAAC,eAAqB,UAAW;IACxB;GACP;EAER"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { OnActionCallback } from "../types.cjs";
|
|
2
|
-
import { Types } from "@a2ui/lit/0.8";
|
|
3
2
|
|
|
4
3
|
//#region src/react-renderer/core/store.d.ts
|
|
5
4
|
/**
|
|
@@ -7,30 +6,20 @@ import { Types } from "@a2ui/lit/0.8";
|
|
|
7
6
|
* These are stored in a ref and exposed via A2UIActionsContext.
|
|
8
7
|
*/
|
|
9
8
|
interface A2UIActions {
|
|
10
|
-
/** Process incoming
|
|
11
|
-
processMessages: (messages:
|
|
12
|
-
/** Update data in the data model (for two-way binding) */
|
|
13
|
-
setData: (node: Types.AnyComponentNode | null, path: string, value: Types.DataValue, surfaceId: string) => void;
|
|
9
|
+
/** Process incoming v0.9 A2UI messages */
|
|
10
|
+
processMessages: (messages: Array<Record<string, unknown>>) => void;
|
|
14
11
|
/** Dispatch a user action to the server */
|
|
15
|
-
dispatch: (message:
|
|
16
|
-
/**
|
|
12
|
+
dispatch: (message: any) => void;
|
|
13
|
+
/** Get a surface model by ID */
|
|
14
|
+
getSurface: (surfaceId: string) => any | undefined;
|
|
15
|
+
/** Clear all surfaces (creates a new processor) */
|
|
17
16
|
clearSurfaces: () => void;
|
|
18
|
-
/** Get a surface by ID */
|
|
19
|
-
getSurface: (surfaceId: string) => Types.Surface | undefined;
|
|
20
|
-
/** Get all surfaces */
|
|
21
|
-
getSurfaces: () => ReadonlyMap<string, Types.Surface>;
|
|
22
|
-
/** Get data from the data model */
|
|
23
|
-
getData: (node: Types.AnyComponentNode, path: string, surfaceId: string) => Types.DataValue | null;
|
|
24
|
-
/** Resolve a relative path to an absolute path */
|
|
25
|
-
resolvePath: (path: string, dataContextPath?: string) => string;
|
|
26
17
|
}
|
|
27
18
|
/**
|
|
28
19
|
* The shape of the A2UI context value.
|
|
29
20
|
* Combines stable actions with reactive state.
|
|
30
21
|
*/
|
|
31
22
|
interface A2UIContextValue extends A2UIActions {
|
|
32
|
-
/** The underlying message processor from @a2ui/lit */
|
|
33
|
-
processor: Types.MessageProcessor;
|
|
34
23
|
/** Version counter for triggering React re-renders */
|
|
35
24
|
version: number;
|
|
36
25
|
/** Callback for dispatching actions to the server */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.cts","names":[],"sources":["../../../src/react-renderer/core/store.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"store.d.cts","names":[],"sources":["../../../src/react-renderer/core/store.ts"],"mappings":";;;;;AAMA;;UAAiB,WAAA;EAEkB;EAAjC,eAAA,GAAkB,QAAA,EAAU,KAAA,CAAM,MAAA;EAAN;EAG5B,QAAA,GAAW,OAAA;EAHO;EAMlB,UAAA,GAAa,SAAA;EAHF;EAMX,aAAA;AAAA;;;;AAOF;UAAiB,gBAAA,SAAyB,WAAA;;EAExC,OAAA;EAFwC;EAKxC,QAAA,EAAU,gBAAA;AAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { OnActionCallback } from "../types.mjs";
|
|
2
|
-
import { Types } from "@a2ui/lit/0.8";
|
|
3
2
|
|
|
4
3
|
//#region src/react-renderer/core/store.d.ts
|
|
5
4
|
/**
|
|
@@ -7,30 +6,20 @@ import { Types } from "@a2ui/lit/0.8";
|
|
|
7
6
|
* These are stored in a ref and exposed via A2UIActionsContext.
|
|
8
7
|
*/
|
|
9
8
|
interface A2UIActions {
|
|
10
|
-
/** Process incoming
|
|
11
|
-
processMessages: (messages:
|
|
12
|
-
/** Update data in the data model (for two-way binding) */
|
|
13
|
-
setData: (node: Types.AnyComponentNode | null, path: string, value: Types.DataValue, surfaceId: string) => void;
|
|
9
|
+
/** Process incoming v0.9 A2UI messages */
|
|
10
|
+
processMessages: (messages: Array<Record<string, unknown>>) => void;
|
|
14
11
|
/** Dispatch a user action to the server */
|
|
15
|
-
dispatch: (message:
|
|
16
|
-
/**
|
|
12
|
+
dispatch: (message: any) => void;
|
|
13
|
+
/** Get a surface model by ID */
|
|
14
|
+
getSurface: (surfaceId: string) => any | undefined;
|
|
15
|
+
/** Clear all surfaces (creates a new processor) */
|
|
17
16
|
clearSurfaces: () => void;
|
|
18
|
-
/** Get a surface by ID */
|
|
19
|
-
getSurface: (surfaceId: string) => Types.Surface | undefined;
|
|
20
|
-
/** Get all surfaces */
|
|
21
|
-
getSurfaces: () => ReadonlyMap<string, Types.Surface>;
|
|
22
|
-
/** Get data from the data model */
|
|
23
|
-
getData: (node: Types.AnyComponentNode, path: string, surfaceId: string) => Types.DataValue | null;
|
|
24
|
-
/** Resolve a relative path to an absolute path */
|
|
25
|
-
resolvePath: (path: string, dataContextPath?: string) => string;
|
|
26
17
|
}
|
|
27
18
|
/**
|
|
28
19
|
* The shape of the A2UI context value.
|
|
29
20
|
* Combines stable actions with reactive state.
|
|
30
21
|
*/
|
|
31
22
|
interface A2UIContextValue extends A2UIActions {
|
|
32
|
-
/** The underlying message processor from @a2ui/lit */
|
|
33
|
-
processor: Types.MessageProcessor;
|
|
34
23
|
/** Version counter for triggering React re-renders */
|
|
35
24
|
version: number;
|
|
36
25
|
/** Callback for dispatching actions to the server */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.mts","names":[],"sources":["../../../src/react-renderer/core/store.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"store.d.mts","names":[],"sources":["../../../src/react-renderer/core/store.ts"],"mappings":";;;;;AAMA;;UAAiB,WAAA;EAEkB;EAAjC,eAAA,GAAkB,QAAA,EAAU,KAAA,CAAM,MAAA;EAAN;EAG5B,QAAA,GAAW,OAAA;EAHO;EAMlB,UAAA,GAAa,SAAA;EAHF;EAMX,aAAA;AAAA;;;;AAOF;UAAiB,gBAAA,SAAyB,WAAA;;EAExC,OAAA;EAFwC;EAKxC,QAAA,EAAU,gBAAA;AAAA"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
2
|
+
const require_adapter = require('./a2ui-react/adapter.cjs');
|
|
3
|
+
const require_index = require('./a2ui-react/catalog/basic/index.cjs');
|
|
4
|
+
require('./a2ui-react/index.cjs');
|
|
5
|
+
let _a2ui_web_core_v0_9 = require("@a2ui/web_core/v0_9");
|
|
6
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
7
|
+
|
|
8
|
+
//#region src/react-renderer/create-catalog.tsx
|
|
9
|
+
/**
|
|
10
|
+
* Create an A2UI catalog from definitions and renderers.
|
|
11
|
+
*
|
|
12
|
+
* Definitions are platform-agnostic (Zod schemas + descriptions).
|
|
13
|
+
* Renderers are platform-specific (React components).
|
|
14
|
+
* TypeScript enforces that renderers match definitions exactly.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* // schema.ts (platform-agnostic)
|
|
19
|
+
* export const demoCatalogDefinitions = {
|
|
20
|
+
* Card: {
|
|
21
|
+
* description: "A card container",
|
|
22
|
+
* props: z.object({ title: z.string(), child: z.string().optional() }),
|
|
23
|
+
* },
|
|
24
|
+
* } satisfies CatalogDefinitions;
|
|
25
|
+
*
|
|
26
|
+
* // catalog.tsx (React renderers)
|
|
27
|
+
* export const demoCatalog = createCatalog(demoCatalogDefinitions, {
|
|
28
|
+
* Card: ({ props, children }) => (
|
|
29
|
+
* <div>{props.title}{props.child && children(props.child)}</div>
|
|
30
|
+
* ),
|
|
31
|
+
* });
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
function createCatalog(definitions, renderers, options) {
|
|
35
|
+
const catalogId = options?.catalogId ?? "copilotkit://custom-catalog";
|
|
36
|
+
const includeBasic = options?.includeBasicCatalog === true;
|
|
37
|
+
const customComponents = [];
|
|
38
|
+
for (const [name, def] of Object.entries(definitions)) {
|
|
39
|
+
const api = {
|
|
40
|
+
name,
|
|
41
|
+
schema: def.props
|
|
42
|
+
};
|
|
43
|
+
const renderer = renderers[name];
|
|
44
|
+
const wrapped = require_adapter.createReactComponent(api, ({ props, buildChild, context }) => {
|
|
45
|
+
const Render = renderer;
|
|
46
|
+
const dispatch = (action) => context.dispatchAction(action);
|
|
47
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Render, {
|
|
48
|
+
props,
|
|
49
|
+
children: buildChild,
|
|
50
|
+
dispatch
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
customComponents.push(wrapped);
|
|
54
|
+
}
|
|
55
|
+
return new _a2ui_web_core_v0_9.Catalog(catalogId, includeBasic ? [...Array.from(require_index.basicCatalog.components.values()), ...customComponents] : customComponents, includeBasic ? Array.from(require_index.basicCatalog.functions.values()) : []);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Extract a JSON-serializable schema from catalog definitions.
|
|
59
|
+
* Suitable for passing to the runtime's `a2ui.schema` config.
|
|
60
|
+
*/
|
|
61
|
+
function extractSchema(definitions) {
|
|
62
|
+
return Object.entries(definitions).map(([name, def]) => ({
|
|
63
|
+
name,
|
|
64
|
+
description: def.description,
|
|
65
|
+
props: zodSchemaToSimpleObject(def.props)
|
|
66
|
+
}));
|
|
67
|
+
}
|
|
68
|
+
function zodSchemaToSimpleObject(schema) {
|
|
69
|
+
const shape = schema.shape;
|
|
70
|
+
const properties = {};
|
|
71
|
+
for (const [key, value] of Object.entries(shape)) {
|
|
72
|
+
const zodValue = value;
|
|
73
|
+
properties[key] = {
|
|
74
|
+
type: zodValue._def?.typeName ?? "unknown",
|
|
75
|
+
...zodValue.description ? { description: zodValue.description } : {}
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
return {
|
|
79
|
+
type: "object",
|
|
80
|
+
properties
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* @deprecated Use `createCatalog(definitions, renderers)` instead.
|
|
85
|
+
*/
|
|
86
|
+
function createA2UICatalog(components, options) {
|
|
87
|
+
const definitions = {};
|
|
88
|
+
const renderers = {};
|
|
89
|
+
for (const [name, def] of Object.entries(components)) {
|
|
90
|
+
definitions[name] = {
|
|
91
|
+
props: def.props,
|
|
92
|
+
description: def.description
|
|
93
|
+
};
|
|
94
|
+
renderers[name] = def.render;
|
|
95
|
+
}
|
|
96
|
+
return createCatalog(definitions, renderers, options);
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* @deprecated Use `extractSchema(definitions)` instead.
|
|
100
|
+
*/
|
|
101
|
+
function extractA2UISchema(components) {
|
|
102
|
+
const definitions = {};
|
|
103
|
+
for (const [name, def] of Object.entries(components)) definitions[name] = {
|
|
104
|
+
props: def.props,
|
|
105
|
+
description: def.description
|
|
106
|
+
};
|
|
107
|
+
return extractSchema(definitions);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
//#endregion
|
|
111
|
+
exports.createA2UICatalog = createA2UICatalog;
|
|
112
|
+
exports.createCatalog = createCatalog;
|
|
113
|
+
exports.extractA2UISchema = extractA2UISchema;
|
|
114
|
+
exports.extractSchema = extractSchema;
|
|
115
|
+
//# sourceMappingURL=create-catalog.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-catalog.cjs","names":["createReactComponent","Catalog","basicCatalog"],"sources":["../../src/react-renderer/create-catalog.tsx"],"sourcesContent":["import { z, type ZodObject, type ZodRawShape } from \"zod\";\nimport { Catalog } from \"@a2ui/web_core/v0_9\";\nimport { BASIC_FUNCTIONS } from \"@a2ui/web_core/v0_9/basic_catalog\";\nimport { basicCatalog, createReactComponent } from \"./a2ui-react\";\nimport type { ReactComponentImplementation } from \"./a2ui-react\";\nimport type { ComponentApi } from \"@a2ui/web_core/v0_9\";\n\n// ─── Catalog Definitions (platform-agnostic) ─────────────────────────\n\n/**\n * A single component definition — Zod props schema + optional description.\n * Platform-agnostic: no React or rendering details.\n */\nexport interface CatalogComponentDefinition<\n T extends ZodRawShape = ZodRawShape,\n> {\n /** Zod schema for component props */\n props: ZodObject<T>;\n /** Description for the AI agent */\n description?: string;\n}\n\n/**\n * A record mapping component names to their definitions.\n * This is the platform-agnostic \"contract\" that agents use.\n */\nexport type CatalogDefinitions = Record<\n string,\n CatalogComponentDefinition<any>\n>;\n\n/**\n * Infer the props type for a specific component in the definitions.\n */\nexport type PropsOf<D extends CatalogDefinitions, K extends keyof D> = z.infer<\n D[K][\"props\"]\n>;\n\n// ─── Catalog Renderers (platform-specific) ───────────────────────────\n\n/**\n * Props passed to a renderer function.\n */\nexport interface RendererProps<T = Record<string, unknown>> {\n /** Resolved prop values from the A2UI data model */\n props: T;\n /** Render a child component by ID */\n children: (id: string) => React.ReactNode;\n /** Dispatch an A2UI action from this component (e.g., on button click) */\n dispatch?: (action: any) => void;\n}\n\n/**\n * A renderer function for a component.\n */\nexport type ComponentRenderer<T = Record<string, unknown>> = React.FC<\n RendererProps<T>\n>;\n\n/**\n * A record mapping component names to React renderer functions.\n * Type-checked against the catalog definitions.\n */\nexport type CatalogRenderers<D extends CatalogDefinitions> = {\n [K in keyof D]: ComponentRenderer<z.infer<D[K][\"props\"]>>;\n};\n\n// ─── Create Catalog ──────────────────────────────────────────────────\n\n/**\n * Create an A2UI catalog from definitions and renderers.\n *\n * Definitions are platform-agnostic (Zod schemas + descriptions).\n * Renderers are platform-specific (React components).\n * TypeScript enforces that renderers match definitions exactly.\n *\n * @example\n * ```tsx\n * // schema.ts (platform-agnostic)\n * export const demoCatalogDefinitions = {\n * Card: {\n * description: \"A card container\",\n * props: z.object({ title: z.string(), child: z.string().optional() }),\n * },\n * } satisfies CatalogDefinitions;\n *\n * // catalog.tsx (React renderers)\n * export const demoCatalog = createCatalog(demoCatalogDefinitions, {\n * Card: ({ props, children }) => (\n * <div>{props.title}{props.child && children(props.child)}</div>\n * ),\n * });\n * ```\n */\nexport function createCatalog<D extends CatalogDefinitions>(\n definitions: D,\n renderers: CatalogRenderers<D>,\n options?: {\n /** Catalog ID. Defaults to a generated URI. */\n catalogId?: string;\n /** If true, merge the built-in basic catalog components (Text, Button, Row, etc.) into this catalog. Default: false */\n includeBasicCatalog?: boolean;\n },\n): Catalog<ReactComponentImplementation> {\n const catalogId = options?.catalogId ?? \"copilotkit://custom-catalog\";\n const includeBasic = options?.includeBasicCatalog === true;\n\n const customComponents: ReactComponentImplementation[] = [];\n\n for (const [name, def] of Object.entries(definitions)) {\n const api: ComponentApi = {\n name,\n schema: def.props,\n };\n\n const renderer = (renderers as Record<string, ComponentRenderer<any>>)[\n name\n ];\n const wrapped = createReactComponent(\n api,\n ({ props, buildChild, context }) => {\n const Render = renderer;\n const dispatch = (action: any) => context.dispatchAction(action);\n return (\n <Render props={props} children={buildChild} dispatch={dispatch} />\n );\n },\n );\n\n customComponents.push(wrapped);\n }\n\n const allComponents = includeBasic\n ? [...Array.from(basicCatalog.components.values()), ...customComponents]\n : customComponents;\n\n const functions = includeBasic\n ? Array.from(basicCatalog.functions.values())\n : [];\n\n return new Catalog<ReactComponentImplementation>(\n catalogId,\n allComponents,\n functions,\n );\n}\n\n// ─── Extract Schema (for runtime) ────────────────────────────────────\n\n/**\n * Extract a JSON-serializable schema from catalog definitions.\n * Suitable for passing to the runtime's `a2ui.schema` config.\n */\nexport function extractSchema(definitions: CatalogDefinitions): Array<{\n name: string;\n description?: string;\n props?: Record<string, unknown>;\n}> {\n return Object.entries(definitions).map(([name, def]) => ({\n name,\n description: def.description,\n props: zodSchemaToSimpleObject(def.props),\n }));\n}\n\nfunction zodSchemaToSimpleObject(\n schema: ZodObject<any>,\n): Record<string, unknown> {\n const shape = schema.shape;\n const properties: Record<string, { type: string; description?: string }> = {};\n for (const [key, value] of Object.entries(shape)) {\n const zodValue = value as any;\n properties[key] = {\n type: zodValue._def?.typeName ?? \"unknown\",\n ...(zodValue.description ? { description: zodValue.description } : {}),\n };\n }\n return { type: \"object\", properties };\n}\n\n// ─── Backward Compatibility ──────────────────────────────────────────\n\n// Old API — definitions + renderers combined in one object\nexport interface A2UIComponentDefinition<T extends ZodRawShape = ZodRawShape> {\n props: ZodObject<T>;\n description?: string;\n render: React.FC<RendererProps<z.infer<ZodObject<T>>>>;\n}\n\nexport type A2UIComponentMap = Record<string, A2UIComponentDefinition<any>>;\n\n/**\n * @deprecated Use `createCatalog(definitions, renderers)` instead.\n */\nexport function createA2UICatalog(\n components: A2UIComponentMap,\n options?: {\n catalogId?: string;\n includeBasicCatalog?: boolean;\n },\n): Catalog<ReactComponentImplementation> {\n const definitions: CatalogDefinitions = {};\n const renderers: Record<string, ComponentRenderer<any>> = {};\n\n for (const [name, def] of Object.entries(components)) {\n definitions[name] = { props: def.props, description: def.description };\n renderers[name] = def.render;\n }\n\n return createCatalog(definitions, renderers as any, options);\n}\n\n/**\n * @deprecated Use `extractSchema(definitions)` instead.\n */\nexport function extractA2UISchema(components: A2UIComponentMap): Array<{\n name: string;\n description?: string;\n props?: Record<string, unknown>;\n}> {\n const definitions: CatalogDefinitions = {};\n for (const [name, def] of Object.entries(components)) {\n definitions[name] = { props: def.props, description: def.description };\n }\n return extractSchema(definitions);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8FA,SAAgB,cACd,aACA,WACA,SAMuC;CACvC,MAAM,YAAY,SAAS,aAAa;CACxC,MAAM,eAAe,SAAS,wBAAwB;CAEtD,MAAM,mBAAmD,EAAE;AAE3D,MAAK,MAAM,CAAC,MAAM,QAAQ,OAAO,QAAQ,YAAY,EAAE;EACrD,MAAM,MAAoB;GACxB;GACA,QAAQ,IAAI;GACb;EAED,MAAM,WAAY,UAChB;EAEF,MAAM,UAAUA,qCACd,MACC,EAAE,OAAO,YAAY,cAAc;GAClC,MAAM,SAAS;GACf,MAAM,YAAY,WAAgB,QAAQ,eAAe,OAAO;AAChE,UACE,2CAAC;IAAc;IAAO,UAAU;IAAsB;KAAY;IAGvE;AAED,mBAAiB,KAAK,QAAQ;;AAWhC,QAAO,IAAIC,4BACT,WAToB,eAClB,CAAC,GAAG,MAAM,KAAKC,2BAAa,WAAW,QAAQ,CAAC,EAAE,GAAG,iBAAiB,GACtE,kBAEc,eACd,MAAM,KAAKA,2BAAa,UAAU,QAAQ,CAAC,GAC3C,EAAE,CAML;;;;;;AASH,SAAgB,cAAc,aAI3B;AACD,QAAO,OAAO,QAAQ,YAAY,CAAC,KAAK,CAAC,MAAM,UAAU;EACvD;EACA,aAAa,IAAI;EACjB,OAAO,wBAAwB,IAAI,MAAM;EAC1C,EAAE;;AAGL,SAAS,wBACP,QACyB;CACzB,MAAM,QAAQ,OAAO;CACrB,MAAM,aAAqE,EAAE;AAC7E,MAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,MAAM,EAAE;EAChD,MAAM,WAAW;AACjB,aAAW,OAAO;GAChB,MAAM,SAAS,MAAM,YAAY;GACjC,GAAI,SAAS,cAAc,EAAE,aAAa,SAAS,aAAa,GAAG,EAAE;GACtE;;AAEH,QAAO;EAAE,MAAM;EAAU;EAAY;;;;;AAiBvC,SAAgB,kBACd,YACA,SAIuC;CACvC,MAAM,cAAkC,EAAE;CAC1C,MAAM,YAAoD,EAAE;AAE5D,MAAK,MAAM,CAAC,MAAM,QAAQ,OAAO,QAAQ,WAAW,EAAE;AACpD,cAAY,QAAQ;GAAE,OAAO,IAAI;GAAO,aAAa,IAAI;GAAa;AACtE,YAAU,QAAQ,IAAI;;AAGxB,QAAO,cAAc,aAAa,WAAkB,QAAQ;;;;;AAM9D,SAAgB,kBAAkB,YAI/B;CACD,MAAM,cAAkC,EAAE;AAC1C,MAAK,MAAM,CAAC,MAAM,QAAQ,OAAO,QAAQ,WAAW,CAClD,aAAY,QAAQ;EAAE,OAAO,IAAI;EAAO,aAAa,IAAI;EAAa;AAExE,QAAO,cAAc,YAAY"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { ReactComponentImplementation } from "./a2ui-react/adapter.cjs";
|
|
2
|
+
import "./a2ui-react/index.cjs";
|
|
3
|
+
import { Catalog } from "@a2ui/web_core/v0_9";
|
|
4
|
+
import { ZodObject, ZodRawShape, z } from "zod";
|
|
5
|
+
|
|
6
|
+
//#region src/react-renderer/create-catalog.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* A single component definition — Zod props schema + optional description.
|
|
9
|
+
* Platform-agnostic: no React or rendering details.
|
|
10
|
+
*/
|
|
11
|
+
interface CatalogComponentDefinition<T extends ZodRawShape = ZodRawShape> {
|
|
12
|
+
/** Zod schema for component props */
|
|
13
|
+
props: ZodObject<T>;
|
|
14
|
+
/** Description for the AI agent */
|
|
15
|
+
description?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A record mapping component names to their definitions.
|
|
19
|
+
* This is the platform-agnostic "contract" that agents use.
|
|
20
|
+
*/
|
|
21
|
+
type CatalogDefinitions = Record<string, CatalogComponentDefinition<any>>;
|
|
22
|
+
/**
|
|
23
|
+
* Infer the props type for a specific component in the definitions.
|
|
24
|
+
*/
|
|
25
|
+
type PropsOf<D extends CatalogDefinitions, K extends keyof D> = z.infer<D[K]["props"]>;
|
|
26
|
+
/**
|
|
27
|
+
* Props passed to a renderer function.
|
|
28
|
+
*/
|
|
29
|
+
interface RendererProps<T = Record<string, unknown>> {
|
|
30
|
+
/** Resolved prop values from the A2UI data model */
|
|
31
|
+
props: T;
|
|
32
|
+
/** Render a child component by ID */
|
|
33
|
+
children: (id: string) => React.ReactNode;
|
|
34
|
+
/** Dispatch an A2UI action from this component (e.g., on button click) */
|
|
35
|
+
dispatch?: (action: any) => void;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* A renderer function for a component.
|
|
39
|
+
*/
|
|
40
|
+
type ComponentRenderer<T = Record<string, unknown>> = React.FC<RendererProps<T>>;
|
|
41
|
+
/**
|
|
42
|
+
* A record mapping component names to React renderer functions.
|
|
43
|
+
* Type-checked against the catalog definitions.
|
|
44
|
+
*/
|
|
45
|
+
type CatalogRenderers<D extends CatalogDefinitions> = { [K in keyof D]: ComponentRenderer<z.infer<D[K]["props"]>> };
|
|
46
|
+
/**
|
|
47
|
+
* Create an A2UI catalog from definitions and renderers.
|
|
48
|
+
*
|
|
49
|
+
* Definitions are platform-agnostic (Zod schemas + descriptions).
|
|
50
|
+
* Renderers are platform-specific (React components).
|
|
51
|
+
* TypeScript enforces that renderers match definitions exactly.
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```tsx
|
|
55
|
+
* // schema.ts (platform-agnostic)
|
|
56
|
+
* export const demoCatalogDefinitions = {
|
|
57
|
+
* Card: {
|
|
58
|
+
* description: "A card container",
|
|
59
|
+
* props: z.object({ title: z.string(), child: z.string().optional() }),
|
|
60
|
+
* },
|
|
61
|
+
* } satisfies CatalogDefinitions;
|
|
62
|
+
*
|
|
63
|
+
* // catalog.tsx (React renderers)
|
|
64
|
+
* export const demoCatalog = createCatalog(demoCatalogDefinitions, {
|
|
65
|
+
* Card: ({ props, children }) => (
|
|
66
|
+
* <div>{props.title}{props.child && children(props.child)}</div>
|
|
67
|
+
* ),
|
|
68
|
+
* });
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
declare function createCatalog<D extends CatalogDefinitions>(definitions: D, renderers: CatalogRenderers<D>, options?: {
|
|
72
|
+
/** Catalog ID. Defaults to a generated URI. */catalogId?: string; /** If true, merge the built-in basic catalog components (Text, Button, Row, etc.) into this catalog. Default: false */
|
|
73
|
+
includeBasicCatalog?: boolean;
|
|
74
|
+
}): Catalog<ReactComponentImplementation>;
|
|
75
|
+
/**
|
|
76
|
+
* Extract a JSON-serializable schema from catalog definitions.
|
|
77
|
+
* Suitable for passing to the runtime's `a2ui.schema` config.
|
|
78
|
+
*/
|
|
79
|
+
declare function extractSchema(definitions: CatalogDefinitions): Array<{
|
|
80
|
+
name: string;
|
|
81
|
+
description?: string;
|
|
82
|
+
props?: Record<string, unknown>;
|
|
83
|
+
}>;
|
|
84
|
+
interface A2UIComponentDefinition<T extends ZodRawShape = ZodRawShape> {
|
|
85
|
+
props: ZodObject<T>;
|
|
86
|
+
description?: string;
|
|
87
|
+
render: React.FC<RendererProps<z.infer<ZodObject<T>>>>;
|
|
88
|
+
}
|
|
89
|
+
type A2UIComponentMap = Record<string, A2UIComponentDefinition<any>>;
|
|
90
|
+
/**
|
|
91
|
+
* @deprecated Use `createCatalog(definitions, renderers)` instead.
|
|
92
|
+
*/
|
|
93
|
+
declare function createA2UICatalog(components: A2UIComponentMap, options?: {
|
|
94
|
+
catalogId?: string;
|
|
95
|
+
includeBasicCatalog?: boolean;
|
|
96
|
+
}): Catalog<ReactComponentImplementation>;
|
|
97
|
+
/**
|
|
98
|
+
* @deprecated Use `extractSchema(definitions)` instead.
|
|
99
|
+
*/
|
|
100
|
+
declare function extractA2UISchema(components: A2UIComponentMap): Array<{
|
|
101
|
+
name: string;
|
|
102
|
+
description?: string;
|
|
103
|
+
props?: Record<string, unknown>;
|
|
104
|
+
}>;
|
|
105
|
+
//#endregion
|
|
106
|
+
export { A2UIComponentDefinition, A2UIComponentMap, CatalogComponentDefinition, CatalogDefinitions, CatalogRenderers, ComponentRenderer, PropsOf, RendererProps, createA2UICatalog, createCatalog, extractA2UISchema, extractSchema };
|
|
107
|
+
//# sourceMappingURL=create-catalog.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-catalog.d.cts","names":[],"sources":["../../src/react-renderer/create-catalog.tsx"],"mappings":";;;;;;;;;AAaA;UAAiB,0BAAA,WACL,WAAA,GAAc,WAAA;EADiB;EAIzC,KAAA,EAAO,SAAA,CAAU,CAAA;EAHO;EAKxB,WAAA;AAAA;;;;;KAOU,kBAAA,GAAqB,MAAA,SAE/B,0BAAA;;;;KAMU,OAAA,WAAkB,kBAAA,kBAAoC,CAAA,IAAK,CAAA,CAAE,KAAA,CACvE,CAAA,CAAE,CAAA;;;AATJ;UAiBiB,aAAA,KAAkB,MAAA;;EAEjC,KAAA,EAAO,CAAA;EAjBmB;EAmB1B,QAAA,GAAW,EAAA,aAAe,KAAA,CAAM,SAAA;EAbf;EAejB,QAAA,IAAY,MAAA;AAAA;;;;KAMF,iBAAA,KAAsB,MAAA,qBAA2B,KAAA,CAAM,EAAA,CACjE,aAAA,CAAc,CAAA;;;;;KAOJ,gBAAA,WAA2B,kBAAA,kBACzB,CAAA,GAAI,iBAAA,CAAkB,CAAA,CAAE,KAAA,CAAM,CAAA,CAAE,CAAA;;;;;;AArB9C;;;;;;;;;;;;;;;;;;;;iBAmDgB,aAAA,WAAwB,kBAAA,CAAA,CACtC,WAAA,EAAa,CAAA,EACb,SAAA,EAAW,gBAAA,CAAiB,CAAA,GAC5B,OAAA;EA1C2B,+CA4CzB,SAAA,WA5C8B;EA8C9B,mBAAA;AAAA,IAED,OAAA,CAAQ,4BAAA;;;;;iBAkDK,aAAA,CAAc,WAAA,EAAa,kBAAA,GAAqB,KAAA;EAC9D,IAAA;EACA,WAAA;EACA,KAAA,GAAQ,MAAA;AAAA;AAAA,UA2BO,uBAAA,WAAkC,WAAA,GAAc,WAAA;EAC/D,KAAA,EAAO,SAAA,CAAU,CAAA;EACjB,WAAA;EACA,MAAA,EAAQ,KAAA,CAAM,EAAA,CAAG,aAAA,CAAc,CAAA,CAAE,KAAA,CAAM,SAAA,CAAU,CAAA;AAAA;AAAA,KAGvC,gBAAA,GAAmB,MAAA,SAAe,uBAAA;;;;iBAK9B,iBAAA,CACd,UAAA,EAAY,gBAAA,EACZ,OAAA;EACE,SAAA;EACA,mBAAA;AAAA,IAED,OAAA,CAAQ,4BAAA;;;;iBAeK,iBAAA,CAAkB,UAAA,EAAY,gBAAA,GAAmB,KAAA;EAC/D,IAAA;EACA,WAAA;EACA,KAAA,GAAQ,MAAA;AAAA"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { ReactComponentImplementation } from "./a2ui-react/adapter.mjs";
|
|
2
|
+
import "./a2ui-react/index.mjs";
|
|
3
|
+
import { Catalog } from "@a2ui/web_core/v0_9";
|
|
4
|
+
import { ZodObject, ZodRawShape, z } from "zod";
|
|
5
|
+
|
|
6
|
+
//#region src/react-renderer/create-catalog.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* A single component definition — Zod props schema + optional description.
|
|
9
|
+
* Platform-agnostic: no React or rendering details.
|
|
10
|
+
*/
|
|
11
|
+
interface CatalogComponentDefinition<T extends ZodRawShape = ZodRawShape> {
|
|
12
|
+
/** Zod schema for component props */
|
|
13
|
+
props: ZodObject<T>;
|
|
14
|
+
/** Description for the AI agent */
|
|
15
|
+
description?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A record mapping component names to their definitions.
|
|
19
|
+
* This is the platform-agnostic "contract" that agents use.
|
|
20
|
+
*/
|
|
21
|
+
type CatalogDefinitions = Record<string, CatalogComponentDefinition<any>>;
|
|
22
|
+
/**
|
|
23
|
+
* Infer the props type for a specific component in the definitions.
|
|
24
|
+
*/
|
|
25
|
+
type PropsOf<D extends CatalogDefinitions, K extends keyof D> = z.infer<D[K]["props"]>;
|
|
26
|
+
/**
|
|
27
|
+
* Props passed to a renderer function.
|
|
28
|
+
*/
|
|
29
|
+
interface RendererProps<T = Record<string, unknown>> {
|
|
30
|
+
/** Resolved prop values from the A2UI data model */
|
|
31
|
+
props: T;
|
|
32
|
+
/** Render a child component by ID */
|
|
33
|
+
children: (id: string) => React.ReactNode;
|
|
34
|
+
/** Dispatch an A2UI action from this component (e.g., on button click) */
|
|
35
|
+
dispatch?: (action: any) => void;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* A renderer function for a component.
|
|
39
|
+
*/
|
|
40
|
+
type ComponentRenderer<T = Record<string, unknown>> = React.FC<RendererProps<T>>;
|
|
41
|
+
/**
|
|
42
|
+
* A record mapping component names to React renderer functions.
|
|
43
|
+
* Type-checked against the catalog definitions.
|
|
44
|
+
*/
|
|
45
|
+
type CatalogRenderers<D extends CatalogDefinitions> = { [K in keyof D]: ComponentRenderer<z.infer<D[K]["props"]>> };
|
|
46
|
+
/**
|
|
47
|
+
* Create an A2UI catalog from definitions and renderers.
|
|
48
|
+
*
|
|
49
|
+
* Definitions are platform-agnostic (Zod schemas + descriptions).
|
|
50
|
+
* Renderers are platform-specific (React components).
|
|
51
|
+
* TypeScript enforces that renderers match definitions exactly.
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```tsx
|
|
55
|
+
* // schema.ts (platform-agnostic)
|
|
56
|
+
* export const demoCatalogDefinitions = {
|
|
57
|
+
* Card: {
|
|
58
|
+
* description: "A card container",
|
|
59
|
+
* props: z.object({ title: z.string(), child: z.string().optional() }),
|
|
60
|
+
* },
|
|
61
|
+
* } satisfies CatalogDefinitions;
|
|
62
|
+
*
|
|
63
|
+
* // catalog.tsx (React renderers)
|
|
64
|
+
* export const demoCatalog = createCatalog(demoCatalogDefinitions, {
|
|
65
|
+
* Card: ({ props, children }) => (
|
|
66
|
+
* <div>{props.title}{props.child && children(props.child)}</div>
|
|
67
|
+
* ),
|
|
68
|
+
* });
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
declare function createCatalog<D extends CatalogDefinitions>(definitions: D, renderers: CatalogRenderers<D>, options?: {
|
|
72
|
+
/** Catalog ID. Defaults to a generated URI. */catalogId?: string; /** If true, merge the built-in basic catalog components (Text, Button, Row, etc.) into this catalog. Default: false */
|
|
73
|
+
includeBasicCatalog?: boolean;
|
|
74
|
+
}): Catalog<ReactComponentImplementation>;
|
|
75
|
+
/**
|
|
76
|
+
* Extract a JSON-serializable schema from catalog definitions.
|
|
77
|
+
* Suitable for passing to the runtime's `a2ui.schema` config.
|
|
78
|
+
*/
|
|
79
|
+
declare function extractSchema(definitions: CatalogDefinitions): Array<{
|
|
80
|
+
name: string;
|
|
81
|
+
description?: string;
|
|
82
|
+
props?: Record<string, unknown>;
|
|
83
|
+
}>;
|
|
84
|
+
interface A2UIComponentDefinition<T extends ZodRawShape = ZodRawShape> {
|
|
85
|
+
props: ZodObject<T>;
|
|
86
|
+
description?: string;
|
|
87
|
+
render: React.FC<RendererProps<z.infer<ZodObject<T>>>>;
|
|
88
|
+
}
|
|
89
|
+
type A2UIComponentMap = Record<string, A2UIComponentDefinition<any>>;
|
|
90
|
+
/**
|
|
91
|
+
* @deprecated Use `createCatalog(definitions, renderers)` instead.
|
|
92
|
+
*/
|
|
93
|
+
declare function createA2UICatalog(components: A2UIComponentMap, options?: {
|
|
94
|
+
catalogId?: string;
|
|
95
|
+
includeBasicCatalog?: boolean;
|
|
96
|
+
}): Catalog<ReactComponentImplementation>;
|
|
97
|
+
/**
|
|
98
|
+
* @deprecated Use `extractSchema(definitions)` instead.
|
|
99
|
+
*/
|
|
100
|
+
declare function extractA2UISchema(components: A2UIComponentMap): Array<{
|
|
101
|
+
name: string;
|
|
102
|
+
description?: string;
|
|
103
|
+
props?: Record<string, unknown>;
|
|
104
|
+
}>;
|
|
105
|
+
//#endregion
|
|
106
|
+
export { A2UIComponentDefinition, A2UIComponentMap, CatalogComponentDefinition, CatalogDefinitions, CatalogRenderers, ComponentRenderer, PropsOf, RendererProps, createA2UICatalog, createCatalog, extractA2UISchema, extractSchema };
|
|
107
|
+
//# sourceMappingURL=create-catalog.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-catalog.d.mts","names":[],"sources":["../../src/react-renderer/create-catalog.tsx"],"mappings":";;;;;;;;;AAaA;UAAiB,0BAAA,WACL,WAAA,GAAc,WAAA;EADiB;EAIzC,KAAA,EAAO,SAAA,CAAU,CAAA;EAHO;EAKxB,WAAA;AAAA;;;;;KAOU,kBAAA,GAAqB,MAAA,SAE/B,0BAAA;;;;KAMU,OAAA,WAAkB,kBAAA,kBAAoC,CAAA,IAAK,CAAA,CAAE,KAAA,CACvE,CAAA,CAAE,CAAA;;;AATJ;UAiBiB,aAAA,KAAkB,MAAA;;EAEjC,KAAA,EAAO,CAAA;EAjBmB;EAmB1B,QAAA,GAAW,EAAA,aAAe,KAAA,CAAM,SAAA;EAbf;EAejB,QAAA,IAAY,MAAA;AAAA;;;;KAMF,iBAAA,KAAsB,MAAA,qBAA2B,KAAA,CAAM,EAAA,CACjE,aAAA,CAAc,CAAA;;;;;KAOJ,gBAAA,WAA2B,kBAAA,kBACzB,CAAA,GAAI,iBAAA,CAAkB,CAAA,CAAE,KAAA,CAAM,CAAA,CAAE,CAAA;;;;;;AArB9C;;;;;;;;;;;;;;;;;;;;iBAmDgB,aAAA,WAAwB,kBAAA,CAAA,CACtC,WAAA,EAAa,CAAA,EACb,SAAA,EAAW,gBAAA,CAAiB,CAAA,GAC5B,OAAA;EA1C2B,+CA4CzB,SAAA,WA5C8B;EA8C9B,mBAAA;AAAA,IAED,OAAA,CAAQ,4BAAA;;;;;iBAkDK,aAAA,CAAc,WAAA,EAAa,kBAAA,GAAqB,KAAA;EAC9D,IAAA;EACA,WAAA;EACA,KAAA,GAAQ,MAAA;AAAA;AAAA,UA2BO,uBAAA,WAAkC,WAAA,GAAc,WAAA;EAC/D,KAAA,EAAO,SAAA,CAAU,CAAA;EACjB,WAAA;EACA,MAAA,EAAQ,KAAA,CAAM,EAAA,CAAG,aAAA,CAAc,CAAA,CAAE,KAAA,CAAM,SAAA,CAAU,CAAA;AAAA;AAAA,KAGvC,gBAAA,GAAmB,MAAA,SAAe,uBAAA;;;;iBAK9B,iBAAA,CACd,UAAA,EAAY,gBAAA,EACZ,OAAA;EACE,SAAA;EACA,mBAAA;AAAA,IAED,OAAA,CAAQ,4BAAA;;;;iBAeK,iBAAA,CAAkB,UAAA,EAAY,gBAAA,GAAmB,KAAA;EAC/D,IAAA;EACA,WAAA;EACA,KAAA,GAAQ,MAAA;AAAA"}
|