@copilotkit/a2ui-renderer 1.51.4 → 1.51.5-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/A2UIMessageRenderer.cjs +135 -0
- package/dist/A2UIMessageRenderer.cjs.map +1 -0
- package/dist/A2UIMessageRenderer.d.cts +11 -0
- package/dist/A2UIMessageRenderer.d.cts.map +1 -0
- package/dist/A2UIMessageRenderer.d.mts +11 -0
- package/dist/A2UIMessageRenderer.d.mts.map +1 -0
- package/dist/A2UIMessageRenderer.mjs +134 -0
- package/dist/A2UIMessageRenderer.mjs.map +1 -0
- package/dist/A2UIViewer.cjs +154 -0
- package/dist/A2UIViewer.cjs.map +1 -0
- package/dist/A2UIViewer.d.cts +39 -0
- package/dist/A2UIViewer.d.cts.map +1 -0
- package/dist/A2UIViewer.d.mts +39 -0
- package/dist/A2UIViewer.d.mts.map +1 -0
- package/dist/A2UIViewer.mjs +152 -0
- package/dist/A2UIViewer.mjs.map +1 -0
- package/dist/_virtual/_rolldown/runtime.cjs +29 -0
- package/dist/index.cjs +8 -0
- package/dist/index.d.cts +15 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +15 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +5 -0
- package/dist/index.umd.js +3070 -2
- package/dist/index.umd.js.map +1 -1
- package/dist/react-renderer/components/content/AudioPlayer.cjs +34 -0
- package/dist/react-renderer/components/content/AudioPlayer.cjs.map +1 -0
- package/dist/react-renderer/components/content/AudioPlayer.mjs +33 -0
- package/dist/react-renderer/components/content/AudioPlayer.mjs.map +1 -0
- package/dist/react-renderer/components/content/Divider.cjs +31 -0
- package/dist/react-renderer/components/content/Divider.cjs.map +1 -0
- package/dist/react-renderer/components/content/Divider.mjs +30 -0
- package/dist/react-renderer/components/content/Divider.mjs.map +1 -0
- package/dist/react-renderer/components/content/Icon.cjs +50 -0
- package/dist/react-renderer/components/content/Icon.cjs.map +1 -0
- package/dist/react-renderer/components/content/Icon.mjs +49 -0
- package/dist/react-renderer/components/content/Icon.mjs.map +1 -0
- package/dist/react-renderer/components/content/Image.cjs +43 -0
- package/dist/react-renderer/components/content/Image.cjs.map +1 -0
- package/dist/react-renderer/components/content/Image.mjs +42 -0
- package/dist/react-renderer/components/content/Image.mjs.map +1 -0
- package/dist/react-renderer/components/content/Text.cjs +131 -0
- package/dist/react-renderer/components/content/Text.cjs.map +1 -0
- package/dist/react-renderer/components/content/Text.mjs +129 -0
- package/dist/react-renderer/components/content/Text.mjs.map +1 -0
- package/dist/react-renderer/components/content/Video.cjs +56 -0
- package/dist/react-renderer/components/content/Video.cjs.map +1 -0
- package/dist/react-renderer/components/content/Video.mjs +55 -0
- package/dist/react-renderer/components/content/Video.mjs.map +1 -0
- package/dist/react-renderer/components/interactive/Button.cjs +39 -0
- package/dist/react-renderer/components/interactive/Button.cjs.map +1 -0
- package/dist/react-renderer/components/interactive/Button.mjs +38 -0
- package/dist/react-renderer/components/interactive/Button.mjs.map +1 -0
- package/dist/react-renderer/components/interactive/CheckBox.cjs +58 -0
- package/dist/react-renderer/components/interactive/CheckBox.cjs.map +1 -0
- package/dist/react-renderer/components/interactive/CheckBox.mjs +57 -0
- package/dist/react-renderer/components/interactive/CheckBox.mjs.map +1 -0
- package/dist/react-renderer/components/interactive/DateTimeInput.cjs +65 -0
- package/dist/react-renderer/components/interactive/DateTimeInput.cjs.map +1 -0
- package/dist/react-renderer/components/interactive/DateTimeInput.mjs +64 -0
- package/dist/react-renderer/components/interactive/DateTimeInput.mjs.map +1 -0
- package/dist/react-renderer/components/interactive/MultipleChoice.cjs +54 -0
- package/dist/react-renderer/components/interactive/MultipleChoice.cjs.map +1 -0
- package/dist/react-renderer/components/interactive/MultipleChoice.mjs +53 -0
- package/dist/react-renderer/components/interactive/MultipleChoice.mjs.map +1 -0
- package/dist/react-renderer/components/interactive/Slider.cjs +72 -0
- package/dist/react-renderer/components/interactive/Slider.cjs.map +1 -0
- package/dist/react-renderer/components/interactive/Slider.mjs +71 -0
- package/dist/react-renderer/components/interactive/Slider.mjs.map +1 -0
- package/dist/react-renderer/components/interactive/TextField.cjs +74 -0
- package/dist/react-renderer/components/interactive/TextField.cjs.map +1 -0
- package/dist/react-renderer/components/interactive/TextField.mjs +73 -0
- package/dist/react-renderer/components/interactive/TextField.mjs.map +1 -0
- package/dist/react-renderer/components/layout/Card.cjs +46 -0
- package/dist/react-renderer/components/layout/Card.cjs.map +1 -0
- package/dist/react-renderer/components/layout/Card.mjs +45 -0
- package/dist/react-renderer/components/layout/Card.mjs.map +1 -0
- package/dist/react-renderer/components/layout/Column.cjs +43 -0
- package/dist/react-renderer/components/layout/Column.cjs.map +1 -0
- package/dist/react-renderer/components/layout/Column.mjs +42 -0
- package/dist/react-renderer/components/layout/Column.mjs.map +1 -0
- package/dist/react-renderer/components/layout/List.cjs +41 -0
- package/dist/react-renderer/components/layout/List.cjs.map +1 -0
- package/dist/react-renderer/components/layout/List.mjs +40 -0
- package/dist/react-renderer/components/layout/List.mjs.map +1 -0
- package/dist/react-renderer/components/layout/Modal.cjs +92 -0
- package/dist/react-renderer/components/layout/Modal.cjs.map +1 -0
- package/dist/react-renderer/components/layout/Modal.mjs +91 -0
- package/dist/react-renderer/components/layout/Modal.mjs.map +1 -0
- package/dist/react-renderer/components/layout/Row.cjs +43 -0
- package/dist/react-renderer/components/layout/Row.cjs.map +1 -0
- package/dist/react-renderer/components/layout/Row.mjs +42 -0
- package/dist/react-renderer/components/layout/Row.mjs.map +1 -0
- package/dist/react-renderer/components/layout/Tabs.cjs +47 -0
- package/dist/react-renderer/components/layout/Tabs.cjs.map +1 -0
- package/dist/react-renderer/components/layout/Tabs.mjs +46 -0
- package/dist/react-renderer/components/layout/Tabs.mjs.map +1 -0
- package/dist/react-renderer/core/A2UIProvider.cjs +123 -0
- package/dist/react-renderer/core/A2UIProvider.cjs.map +1 -0
- package/dist/react-renderer/core/A2UIProvider.mjs +120 -0
- package/dist/react-renderer/core/A2UIProvider.mjs.map +1 -0
- package/dist/react-renderer/core/A2UIRenderer.cjs +93 -0
- package/dist/react-renderer/core/A2UIRenderer.cjs.map +1 -0
- package/dist/react-renderer/core/A2UIRenderer.mjs +92 -0
- package/dist/react-renderer/core/A2UIRenderer.mjs.map +1 -0
- package/dist/react-renderer/core/ComponentNode.cjs +53 -0
- package/dist/react-renderer/core/ComponentNode.cjs.map +1 -0
- package/dist/react-renderer/core/ComponentNode.mjs +52 -0
- package/dist/react-renderer/core/ComponentNode.mjs.map +1 -0
- package/dist/react-renderer/hooks/useA2UI.cjs +46 -0
- package/dist/react-renderer/hooks/useA2UI.cjs.map +1 -0
- package/dist/react-renderer/hooks/useA2UI.mjs +46 -0
- package/dist/react-renderer/hooks/useA2UI.mjs.map +1 -0
- package/dist/react-renderer/hooks/useA2UIComponent.cjs +173 -0
- package/dist/react-renderer/hooks/useA2UIComponent.cjs.map +1 -0
- package/dist/react-renderer/hooks/useA2UIComponent.mjs +172 -0
- package/dist/react-renderer/hooks/useA2UIComponent.mjs.map +1 -0
- package/dist/react-renderer/lib/utils.cjs +39 -0
- package/dist/react-renderer/lib/utils.cjs.map +1 -0
- package/dist/react-renderer/lib/utils.mjs +37 -0
- package/dist/react-renderer/lib/utils.mjs.map +1 -0
- package/dist/react-renderer/registry/ComponentRegistry.cjs +114 -0
- package/dist/react-renderer/registry/ComponentRegistry.cjs.map +1 -0
- package/dist/react-renderer/registry/ComponentRegistry.mjs +113 -0
- package/dist/react-renderer/registry/ComponentRegistry.mjs.map +1 -0
- package/dist/react-renderer/registry/defaultCatalog.cjs +57 -0
- package/dist/react-renderer/registry/defaultCatalog.cjs.map +1 -0
- package/dist/react-renderer/registry/defaultCatalog.mjs +57 -0
- package/dist/react-renderer/registry/defaultCatalog.mjs.map +1 -0
- package/dist/react-renderer/styles/index.cjs +458 -0
- package/dist/react-renderer/styles/index.cjs.map +1 -0
- package/dist/react-renderer/styles/{index.js → index.mjs} +47 -64
- package/dist/react-renderer/styles/index.mjs.map +1 -0
- package/dist/react-renderer/styles/reset.cjs +29 -0
- package/dist/react-renderer/styles/reset.cjs.map +1 -0
- package/dist/react-renderer/styles/reset.mjs +28 -0
- package/dist/react-renderer/styles/reset.mjs.map +1 -0
- package/dist/react-renderer/theme/ThemeContext.cjs +35 -0
- package/dist/react-renderer/theme/ThemeContext.cjs.map +1 -0
- package/dist/react-renderer/theme/ThemeContext.mjs +33 -0
- package/dist/react-renderer/theme/ThemeContext.mjs.map +1 -0
- package/dist/react-renderer/theme/litTheme.cjs +368 -0
- package/dist/react-renderer/theme/litTheme.cjs.map +1 -0
- package/dist/react-renderer/theme/litTheme.mjs +367 -0
- package/dist/react-renderer/theme/litTheme.mjs.map +1 -0
- package/dist/react-renderer/theme/utils.cjs +41 -0
- package/dist/react-renderer/theme/utils.cjs.map +1 -0
- package/dist/react-renderer/theme/utils.mjs +39 -0
- package/dist/react-renderer/theme/utils.mjs.map +1 -0
- package/dist/theme/viewer-theme.cjs +366 -0
- package/dist/theme/viewer-theme.cjs.map +1 -0
- package/dist/theme/viewer-theme.d.cts +7 -0
- package/dist/theme/viewer-theme.d.cts.map +1 -0
- package/dist/theme/viewer-theme.d.mts +7 -0
- package/dist/theme/viewer-theme.d.mts.map +1 -0
- package/dist/theme/viewer-theme.mjs +365 -0
- package/dist/theme/viewer-theme.mjs.map +1 -0
- package/package.json +14 -9
- package/dist/.tsbuildinfo +0 -1
- package/dist/A2UIMessageRenderer.d.ts +0 -7
- package/dist/A2UIMessageRenderer.d.ts.map +0 -1
- package/dist/A2UIMessageRenderer.js +0 -126
- package/dist/A2UIMessageRenderer.js.map +0 -1
- package/dist/A2UIViewer.d.ts +0 -32
- package/dist/A2UIViewer.d.ts.map +0 -1
- package/dist/A2UIViewer.js +0 -121
- package/dist/A2UIViewer.js.map +0 -1
- package/dist/__tests__/A2UIMessageRenderer.test.d.ts +0 -2
- package/dist/__tests__/A2UIMessageRenderer.test.d.ts.map +0 -1
- package/dist/__tests__/A2UIMessageRenderer.test.js +0 -229
- package/dist/__tests__/A2UIMessageRenderer.test.js.map +0 -1
- package/dist/__tests__/clsx-shim.d.ts +0 -8
- package/dist/__tests__/clsx-shim.d.ts.map +0 -1
- package/dist/__tests__/clsx-shim.js +0 -24
- package/dist/__tests__/clsx-shim.js.map +0 -1
- package/dist/__tests__/setup.d.ts +0 -2
- package/dist/__tests__/setup.d.ts.map +0 -1
- package/dist/__tests__/setup.js +0 -29
- package/dist/__tests__/setup.js.map +0 -1
- package/dist/index.d.ts +0 -13
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -19
- package/dist/index.js.map +0 -1
- package/dist/react-renderer/components/content/AudioPlayer.d.ts +0 -8
- package/dist/react-renderer/components/content/AudioPlayer.d.ts.map +0 -1
- package/dist/react-renderer/components/content/AudioPlayer.js +0 -23
- package/dist/react-renderer/components/content/AudioPlayer.js.map +0 -1
- package/dist/react-renderer/components/content/Divider.d.ts +0 -13
- package/dist/react-renderer/components/content/Divider.d.ts.map +0 -1
- package/dist/react-renderer/components/content/Divider.js +0 -22
- package/dist/react-renderer/components/content/Divider.js.map +0 -1
- package/dist/react-renderer/components/content/Icon.d.ts +0 -16
- package/dist/react-renderer/components/content/Icon.d.ts.map +0 -1
- package/dist/react-renderer/components/content/Icon.js +0 -40
- package/dist/react-renderer/components/content/Icon.js.map +0 -1
- package/dist/react-renderer/components/content/Image.d.ts +0 -11
- package/dist/react-renderer/components/content/Image.d.ts.map +0 -1
- package/dist/react-renderer/components/content/Image.js +0 -34
- package/dist/react-renderer/components/content/Image.js.map +0 -1
- package/dist/react-renderer/components/content/Text.d.ts +0 -28
- package/dist/react-renderer/components/content/Text.d.ts.map +0 -1
- package/dist/react-renderer/components/content/Text.js +0 -134
- package/dist/react-renderer/components/content/Text.js.map +0 -1
- package/dist/react-renderer/components/content/Video.d.ts +0 -10
- package/dist/react-renderer/components/content/Video.d.ts.map +0 -1
- package/dist/react-renderer/components/content/Video.js +0 -41
- package/dist/react-renderer/components/content/Video.js.map +0 -1
- package/dist/react-renderer/components/content/index.d.ts +0 -7
- package/dist/react-renderer/components/content/index.d.ts.map +0 -1
- package/dist/react-renderer/components/content/index.js +0 -7
- package/dist/react-renderer/components/content/index.js.map +0 -1
- package/dist/react-renderer/components/interactive/Button.d.ts +0 -11
- package/dist/react-renderer/components/interactive/Button.d.ts.map +0 -1
- package/dist/react-renderer/components/interactive/Button.js +0 -27
- package/dist/react-renderer/components/interactive/Button.js.map +0 -1
- package/dist/react-renderer/components/interactive/CheckBox.d.ts +0 -10
- package/dist/react-renderer/components/interactive/CheckBox.d.ts.map +0 -1
- package/dist/react-renderer/components/interactive/CheckBox.js +0 -55
- package/dist/react-renderer/components/interactive/CheckBox.js.map +0 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.d.ts +0 -10
- package/dist/react-renderer/components/interactive/DateTimeInput.d.ts.map +0 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.js +0 -68
- package/dist/react-renderer/components/interactive/DateTimeInput.js.map +0 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.d.ts +0 -11
- package/dist/react-renderer/components/interactive/MultipleChoice.d.ts.map +0 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.js +0 -43
- package/dist/react-renderer/components/interactive/MultipleChoice.js.map +0 -1
- package/dist/react-renderer/components/interactive/Slider.d.ts +0 -10
- package/dist/react-renderer/components/interactive/Slider.d.ts.map +0 -1
- package/dist/react-renderer/components/interactive/Slider.js +0 -62
- package/dist/react-renderer/components/interactive/Slider.js.map +0 -1
- package/dist/react-renderer/components/interactive/TextField.d.ts +0 -10
- package/dist/react-renderer/components/interactive/TextField.d.ts.map +0 -1
- package/dist/react-renderer/components/interactive/TextField.js +0 -59
- package/dist/react-renderer/components/interactive/TextField.js.map +0 -1
- package/dist/react-renderer/components/interactive/index.d.ts +0 -7
- package/dist/react-renderer/components/interactive/index.d.ts.map +0 -1
- package/dist/react-renderer/components/interactive/index.js +0 -7
- package/dist/react-renderer/components/interactive/index.js.map +0 -1
- package/dist/react-renderer/components/layout/Card.d.ts +0 -17
- package/dist/react-renderer/components/layout/Card.d.ts.map +0 -1
- package/dist/react-renderer/components/layout/Card.js +0 -39
- package/dist/react-renderer/components/layout/Card.js.map +0 -1
- package/dist/react-renderer/components/layout/Column.d.ts +0 -10
- package/dist/react-renderer/components/layout/Column.d.ts.map +0 -1
- package/dist/react-renderer/components/layout/Column.js +0 -33
- package/dist/react-renderer/components/layout/Column.js.map +0 -1
- package/dist/react-renderer/components/layout/List.d.ts +0 -10
- package/dist/react-renderer/components/layout/List.d.ts.map +0 -1
- package/dist/react-renderer/components/layout/List.js +0 -32
- package/dist/react-renderer/components/layout/List.js.map +0 -1
- package/dist/react-renderer/components/layout/Modal.d.ts +0 -15
- package/dist/react-renderer/components/layout/Modal.d.ts.map +0 -1
- package/dist/react-renderer/components/layout/Modal.js +0 -65
- package/dist/react-renderer/components/layout/Modal.js.map +0 -1
- package/dist/react-renderer/components/layout/Row.d.ts +0 -10
- package/dist/react-renderer/components/layout/Row.d.ts.map +0 -1
- package/dist/react-renderer/components/layout/Row.js +0 -33
- package/dist/react-renderer/components/layout/Row.js.map +0 -1
- package/dist/react-renderer/components/layout/Tabs.d.ts +0 -8
- package/dist/react-renderer/components/layout/Tabs.d.ts.map +0 -1
- package/dist/react-renderer/components/layout/Tabs.js +0 -29
- package/dist/react-renderer/components/layout/Tabs.js.map +0 -1
- package/dist/react-renderer/components/layout/index.d.ts +0 -7
- package/dist/react-renderer/components/layout/index.d.ts.map +0 -1
- package/dist/react-renderer/components/layout/index.js +0 -7
- package/dist/react-renderer/components/layout/index.js.map +0 -1
- package/dist/react-renderer/core/A2UIProvider.d.ts +0 -82
- package/dist/react-renderer/core/A2UIProvider.d.ts.map +0 -1
- package/dist/react-renderer/core/A2UIProvider.js +0 -156
- package/dist/react-renderer/core/A2UIProvider.js.map +0 -1
- package/dist/react-renderer/core/A2UIRenderer.d.ts +0 -36
- package/dist/react-renderer/core/A2UIRenderer.d.ts.map +0 -1
- package/dist/react-renderer/core/A2UIRenderer.js +0 -83
- package/dist/react-renderer/core/A2UIRenderer.js.map +0 -1
- package/dist/react-renderer/core/A2UIViewer.d.ts +0 -56
- package/dist/react-renderer/core/A2UIViewer.d.ts.map +0 -1
- package/dist/react-renderer/core/A2UIViewer.js +0 -135
- package/dist/react-renderer/core/A2UIViewer.js.map +0 -1
- package/dist/react-renderer/core/ComponentNode.d.ts +0 -25
- package/dist/react-renderer/core/ComponentNode.d.ts.map +0 -1
- package/dist/react-renderer/core/ComponentNode.js +0 -43
- package/dist/react-renderer/core/ComponentNode.js.map +0 -1
- package/dist/react-renderer/core/store.d.ts +0 -37
- package/dist/react-renderer/core/store.d.ts.map +0 -1
- package/dist/react-renderer/core/store.js +0 -2
- package/dist/react-renderer/core/store.js.map +0 -1
- package/dist/react-renderer/hooks/useA2UI.d.ts +0 -46
- package/dist/react-renderer/hooks/useA2UI.d.ts.map +0 -1
- package/dist/react-renderer/hooks/useA2UI.js +0 -41
- package/dist/react-renderer/hooks/useA2UI.js.map +0 -1
- package/dist/react-renderer/hooks/useA2UIComponent.d.ts +0 -52
- package/dist/react-renderer/hooks/useA2UIComponent.d.ts.map +0 -1
- package/dist/react-renderer/hooks/useA2UIComponent.js +0 -175
- package/dist/react-renderer/hooks/useA2UIComponent.js.map +0 -1
- package/dist/react-renderer/index.d.ts +0 -37
- package/dist/react-renderer/index.d.ts.map +0 -1
- package/dist/react-renderer/index.js +0 -40
- package/dist/react-renderer/index.js.map +0 -1
- package/dist/react-renderer/lib/utils.d.ts +0 -32
- package/dist/react-renderer/lib/utils.d.ts.map +0 -1
- package/dist/react-renderer/lib/utils.js +0 -41
- package/dist/react-renderer/lib/utils.js.map +0 -1
- package/dist/react-renderer/registry/ComponentRegistry.d.ts +0 -78
- package/dist/react-renderer/registry/ComponentRegistry.d.ts.map +0 -1
- package/dist/react-renderer/registry/ComponentRegistry.js +0 -113
- package/dist/react-renderer/registry/ComponentRegistry.js.map +0 -1
- package/dist/react-renderer/registry/defaultCatalog.d.ts +0 -13
- package/dist/react-renderer/registry/defaultCatalog.d.ts.map +0 -1
- package/dist/react-renderer/registry/defaultCatalog.js +0 -59
- package/dist/react-renderer/registry/defaultCatalog.js.map +0 -1
- package/dist/react-renderer/styles/index.d.ts +0 -41
- package/dist/react-renderer/styles/index.d.ts.map +0 -1
- package/dist/react-renderer/styles/index.js.map +0 -1
- package/dist/react-renderer/styles/reset.d.ts +0 -18
- package/dist/react-renderer/styles/reset.d.ts.map +0 -1
- package/dist/react-renderer/styles/reset.js +0 -24
- package/dist/react-renderer/styles/reset.js.map +0 -1
- package/dist/react-renderer/theme/ThemeContext.d.ts +0 -29
- package/dist/react-renderer/theme/ThemeContext.d.ts.map +0 -1
- package/dist/react-renderer/theme/ThemeContext.js +0 -35
- package/dist/react-renderer/theme/ThemeContext.js.map +0 -1
- package/dist/react-renderer/theme/litTheme.d.ts +0 -8
- package/dist/react-renderer/theme/litTheme.d.ts.map +0 -1
- package/dist/react-renderer/theme/litTheme.js +0 -401
- package/dist/react-renderer/theme/litTheme.js.map +0 -1
- package/dist/react-renderer/theme/utils.d.ts +0 -23
- package/dist/react-renderer/theme/utils.d.ts.map +0 -1
- package/dist/react-renderer/theme/utils.js +0 -46
- package/dist/react-renderer/theme/utils.js.map +0 -1
- package/dist/react-renderer/types.d.ts +0 -53
- package/dist/react-renderer/types.d.ts.map +0 -1
- package/dist/react-renderer/types.js +0 -2
- package/dist/react-renderer/types.js.map +0 -1
- package/dist/theme/viewer-theme.d.ts +0 -3
- package/dist/theme/viewer-theme.d.ts.map +0 -1
- package/dist/theme/viewer-theme.js +0 -391
- package/dist/theme/viewer-theme.js.map +0 -1
package/dist/index.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export { createA2UIMessageRenderer } from "./A2UIMessageRenderer.js";
|
|
2
|
-
export type { A2UIMessageRendererOptions } from "./A2UIMessageRenderer.js";
|
|
3
|
-
export { A2UIViewer } from "./A2UIViewer.js";
|
|
4
|
-
export type { A2UIViewerProps } from "./A2UIViewer.js";
|
|
5
|
-
export { theme as viewerTheme } from "./theme/viewer-theme.js";
|
|
6
|
-
import { v0_8 } from "@a2ui/lit";
|
|
7
|
-
export type ComponentInstance = v0_8.Types.ComponentInstance;
|
|
8
|
-
export type UserAction = v0_8.Types.UserAction;
|
|
9
|
-
export type Action = v0_8.Types.Action;
|
|
10
|
-
export type ServerToClientMessage = v0_8.Types.ServerToClientMessage;
|
|
11
|
-
export type Surface = v0_8.Types.Surface;
|
|
12
|
-
export type AnyComponentNode = v0_8.Types.AnyComponentNode;
|
|
13
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,YAAY,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;AAC7D,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;AAC/C,MAAM,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;AACvC,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC;AACrE,MAAM,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AACzC,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC"}
|
package/dist/index.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
Copyright 2025 Google LLC
|
|
3
|
-
|
|
4
|
-
Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
-
you may not use this file except in compliance with the License.
|
|
6
|
-
You may obtain a copy of the License at
|
|
7
|
-
|
|
8
|
-
https://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
-
|
|
10
|
-
Unless required by applicable law or agreed to in writing, software
|
|
11
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
-
See the License for the specific language governing permissions and
|
|
14
|
-
limitations under the License.
|
|
15
|
-
*/
|
|
16
|
-
export { createA2UIMessageRenderer } from "./A2UIMessageRenderer.js";
|
|
17
|
-
export { A2UIViewer } from "./A2UIViewer.js";
|
|
18
|
-
export { theme as viewerTheme } from "./theme/viewer-theme.js";
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* AudioPlayer component - renders an audio player with optional description.
|
|
5
|
-
*/
|
|
6
|
-
export declare const AudioPlayer: import("react").NamedExoticComponent<A2UIComponentProps<Types.AudioPlayerNode>>;
|
|
7
|
-
export default AudioPlayer;
|
|
8
|
-
//# sourceMappingURL=AudioPlayer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AudioPlayer.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/AudioPlayer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAItD;;GAEG;AACH,eAAO,MAAM,WAAW,iFA+BtB,CAAC;AAEH,eAAe,WAAW,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { memo } from "react";
|
|
3
|
-
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
-
import { classMapToString, stylesToObject } from "../../lib/utils";
|
|
5
|
-
/**
|
|
6
|
-
* AudioPlayer component - renders an audio player with optional description.
|
|
7
|
-
*/
|
|
8
|
-
export const AudioPlayer = memo(function AudioPlayer({ node, surfaceId, }) {
|
|
9
|
-
const { theme, resolveString } = useA2UIComponent(node, surfaceId);
|
|
10
|
-
const props = node.properties;
|
|
11
|
-
const url = resolveString(props.url);
|
|
12
|
-
const description = resolveString(props.description ?? null);
|
|
13
|
-
if (!url) {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
17
|
-
const hostStyle = node.weight !== undefined
|
|
18
|
-
? { "--weight": node.weight }
|
|
19
|
-
: {};
|
|
20
|
-
return (_jsx("div", { className: "a2ui-audio", style: hostStyle, children: _jsxs("section", { className: classMapToString(theme.components.AudioPlayer), style: stylesToObject(theme.additionalStyles?.AudioPlayer), children: [description && _jsx("p", { children: description }), _jsx("audio", { src: url, controls: true })] }) }));
|
|
21
|
-
});
|
|
22
|
-
export default AudioPlayer;
|
|
23
|
-
//# sourceMappingURL=AudioPlayer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AudioPlayer.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/AudioPlayer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,WAAW,CAAC,EACnD,IAAI,EACJ,SAAS,GACiC;IAC1C,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;IAE7D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,YAAY,EAAC,KAAK,EAAE,SAAS,YAC1C,mBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,EACzD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,WAAW,CAAC,aAEzD,WAAW,IAAI,sBAAI,WAAW,GAAK,EACpC,gBAAO,GAAG,EAAE,GAAG,EAAE,QAAQ,SAAG,IACpB,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,WAAW,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* Divider component - renders a visual separator line.
|
|
5
|
-
*
|
|
6
|
-
* Structure mirrors Lit's Divider component:
|
|
7
|
-
* <div class="a2ui-divider"> ← :host equivalent
|
|
8
|
-
* <hr class="..."> ← internal element
|
|
9
|
-
* </div>
|
|
10
|
-
*/
|
|
11
|
-
export declare const Divider: import("react").NamedExoticComponent<A2UIComponentProps<Types.DividerNode>>;
|
|
12
|
-
export default Divider;
|
|
13
|
-
//# sourceMappingURL=Divider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Divider.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Divider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAItD;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,6EAoBlB,CAAC;AAEH,eAAe,OAAO,CAAC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { memo } from "react";
|
|
3
|
-
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
-
import { classMapToString, stylesToObject } from "../../lib/utils";
|
|
5
|
-
/**
|
|
6
|
-
* Divider component - renders a visual separator line.
|
|
7
|
-
*
|
|
8
|
-
* Structure mirrors Lit's Divider component:
|
|
9
|
-
* <div class="a2ui-divider"> ← :host equivalent
|
|
10
|
-
* <hr class="..."> ← internal element
|
|
11
|
-
* </div>
|
|
12
|
-
*/
|
|
13
|
-
export const Divider = memo(function Divider({ node, surfaceId, }) {
|
|
14
|
-
const { theme } = useA2UIComponent(node, surfaceId);
|
|
15
|
-
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
16
|
-
const hostStyle = node.weight !== undefined
|
|
17
|
-
? { "--weight": node.weight }
|
|
18
|
-
: {};
|
|
19
|
-
return (_jsx("div", { className: "a2ui-divider", style: hostStyle, children: _jsx("hr", { className: classMapToString(theme.components.Divider), style: stylesToObject(theme.additionalStyles?.Divider) }) }));
|
|
20
|
-
});
|
|
21
|
-
export default Divider;
|
|
22
|
-
//# sourceMappingURL=Divider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Divider.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Divider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEnE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,OAAO,CAAC,EAC3C,IAAI,EACJ,SAAS,GAC6B;IACtC,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAEpD,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,cAAc,EAAC,KAAK,EAAE,SAAS,YAC5C,aACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EACrD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,GACtD,GACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,OAAO,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* Icon component - renders an icon using Material Symbols Outlined font.
|
|
5
|
-
*
|
|
6
|
-
* This matches the Lit renderer's approach using the g-icon class with
|
|
7
|
-
* Material Symbols Outlined font.
|
|
8
|
-
*
|
|
9
|
-
* @example Add Material Symbols font to your HTML:
|
|
10
|
-
* ```html
|
|
11
|
-
* <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined" rel="stylesheet">
|
|
12
|
-
* ```
|
|
13
|
-
*/
|
|
14
|
-
export declare const Icon: import("react").NamedExoticComponent<A2UIComponentProps<Types.IconNode>>;
|
|
15
|
-
export default Icon;
|
|
16
|
-
//# sourceMappingURL=Icon.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Icon.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAatD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,IAAI,0EAgCf,CAAC;AAEH,eAAe,IAAI,CAAC"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { memo } from "react";
|
|
3
|
-
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
-
import { classMapToString, stylesToObject } from "../../lib/utils";
|
|
5
|
-
/**
|
|
6
|
-
* Convert camelCase to snake_case for Material Symbols font.
|
|
7
|
-
* e.g., "shoppingCart" -> "shopping_cart"
|
|
8
|
-
* This matches the Lit renderer's approach.
|
|
9
|
-
*/
|
|
10
|
-
function toSnakeCase(str) {
|
|
11
|
-
return str.replace(/([A-Z])/g, "_$1").toLowerCase();
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Icon component - renders an icon using Material Symbols Outlined font.
|
|
15
|
-
*
|
|
16
|
-
* This matches the Lit renderer's approach using the g-icon class with
|
|
17
|
-
* Material Symbols Outlined font.
|
|
18
|
-
*
|
|
19
|
-
* @example Add Material Symbols font to your HTML:
|
|
20
|
-
* ```html
|
|
21
|
-
* <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined" rel="stylesheet">
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
export const Icon = memo(function Icon({ node, surfaceId, }) {
|
|
25
|
-
const { theme, resolveString } = useA2UIComponent(node, surfaceId);
|
|
26
|
-
const props = node.properties;
|
|
27
|
-
const iconName = resolveString(props.name);
|
|
28
|
-
if (!iconName) {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
// Convert camelCase to snake_case for Material Symbols
|
|
32
|
-
const snakeCaseName = toSnakeCase(iconName);
|
|
33
|
-
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
34
|
-
const hostStyle = node.weight !== undefined
|
|
35
|
-
? { "--weight": node.weight }
|
|
36
|
-
: {};
|
|
37
|
-
return (_jsx("div", { className: "a2ui-icon", style: hostStyle, children: _jsx("section", { className: classMapToString(theme.components.Icon), style: stylesToObject(theme.additionalStyles?.Icon), children: _jsx("span", { className: "g-icon", children: snakeCaseName }) }) }));
|
|
38
|
-
});
|
|
39
|
-
export default Icon;
|
|
40
|
-
//# sourceMappingURL=Icon.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Icon.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEnE;;;;GAIG;AACH,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,EACrC,IAAI,EACJ,SAAS,GAC0B;IACnC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uDAAuD;IACvD,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE5C,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,WAAW,EAAC,KAAK,EAAE,SAAS,YACzC,kBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAClD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,YAEnD,eAAM,SAAS,EAAC,QAAQ,YAAE,aAAa,GAAQ,GACvC,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* Image component - renders an image from a URL with optional sizing and fit modes.
|
|
5
|
-
*
|
|
6
|
-
* Supports usageHint values: icon, avatar, smallFeature, mediumFeature, largeFeature, header
|
|
7
|
-
* Supports fit values: contain, cover, fill, none, scale-down (maps to object-fit via CSS variable)
|
|
8
|
-
*/
|
|
9
|
-
export declare const Image: import("react").NamedExoticComponent<A2UIComponentProps<Types.ImageNode>>;
|
|
10
|
-
export default Image;
|
|
11
|
-
//# sourceMappingURL=Image.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Image.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAiBtD;;;;;GAKG;AACH,eAAO,MAAM,KAAK,2EAwChB,CAAC;AAEH,eAAe,KAAK,CAAC"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { memo } from "react";
|
|
3
|
-
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
-
import { classMapToString, stylesToObject, mergeClassMaps, } from "../../lib/utils";
|
|
5
|
-
/**
|
|
6
|
-
* Image component - renders an image from a URL with optional sizing and fit modes.
|
|
7
|
-
*
|
|
8
|
-
* Supports usageHint values: icon, avatar, smallFeature, mediumFeature, largeFeature, header
|
|
9
|
-
* Supports fit values: contain, cover, fill, none, scale-down (maps to object-fit via CSS variable)
|
|
10
|
-
*/
|
|
11
|
-
export const Image = memo(function Image({ node, surfaceId, }) {
|
|
12
|
-
const { theme, resolveString } = useA2UIComponent(node, surfaceId);
|
|
13
|
-
const props = node.properties;
|
|
14
|
-
const url = resolveString(props.url);
|
|
15
|
-
const usageHint = props.usageHint;
|
|
16
|
-
const fit = props.fit ?? "fill";
|
|
17
|
-
// Get merged classes for section (matches Lit's Styles.merge)
|
|
18
|
-
const classes = mergeClassMaps(theme.components.Image.all, usageHint ? theme.components.Image[usageHint] : {});
|
|
19
|
-
// Build style object with object-fit as CSS variable (matches Lit)
|
|
20
|
-
const style = {
|
|
21
|
-
...stylesToObject(theme.additionalStyles?.Image),
|
|
22
|
-
"--object-fit": fit,
|
|
23
|
-
};
|
|
24
|
-
if (!url) {
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
28
|
-
const hostStyle = node.weight !== undefined
|
|
29
|
-
? { "--weight": node.weight }
|
|
30
|
-
: {};
|
|
31
|
-
return (_jsx("div", { className: "a2ui-image", style: hostStyle, children: _jsx("section", { className: classMapToString(classes), style: style, children: _jsx("img", { src: url, alt: "" }) }) }));
|
|
32
|
-
});
|
|
33
|
-
export default Image;
|
|
34
|
-
//# sourceMappingURL=Image.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Image.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,cAAc,GACf,MAAM,iBAAiB,CAAC;AAWzB;;;;;GAKG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,KAAK,CAAC,EACvC,IAAI,EACJ,SAAS,GAC2B;IACpC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAkC,CAAC;IAC3D,MAAM,GAAG,GAAI,KAAK,CAAC,GAAe,IAAI,MAAM,CAAC;IAE7C,8DAA8D;IAC9D,MAAM,OAAO,GAAG,cAAc,CAC5B,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAC1B,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CACnD,CAAC;IAEF,mEAAmE;IACnE,MAAM,KAAK,GAAwB;QACjC,GAAG,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC;QAChD,cAAc,EAAE,GAAG;KACG,CAAC;IAEzB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,YAAY,EAAC,KAAK,EAAE,SAAS,YAC1C,kBAAS,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,YACzD,cAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAC,EAAE,GAAG,GAChB,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,KAAK,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* Text component - renders text content with markdown support.
|
|
5
|
-
*
|
|
6
|
-
* Structure mirrors Lit's Text component:
|
|
7
|
-
* <div class="a2ui-text"> ← :host equivalent
|
|
8
|
-
* <section class="..."> ← theme classes
|
|
9
|
-
* <h2>...</h2> ← rendered markdown content
|
|
10
|
-
* </section>
|
|
11
|
-
* </div>
|
|
12
|
-
*
|
|
13
|
-
* Text is parsed as markdown and rendered as HTML (matches Lit renderer behavior).
|
|
14
|
-
* Supports usageHint values: h1, h2, h3, h4, h5, caption, body
|
|
15
|
-
*
|
|
16
|
-
* Markdown features supported:
|
|
17
|
-
* - **Bold** and *italic* text
|
|
18
|
-
* - Lists (ordered and unordered)
|
|
19
|
-
* - `inline code` and code blocks
|
|
20
|
-
* - [Links](url) (auto-linkified URLs too)
|
|
21
|
-
* - Blockquotes
|
|
22
|
-
* - Horizontal rules
|
|
23
|
-
*
|
|
24
|
-
* Note: Raw HTML is disabled for security.
|
|
25
|
-
*/
|
|
26
|
-
export declare const Text: import("react").NamedExoticComponent<A2UIComponentProps<Types.TextNode>>;
|
|
27
|
-
export default Text;
|
|
28
|
-
//# sourceMappingURL=Text.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Text.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA0EtD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,IAAI,0EAmFf,CAAC;AAEH,eAAe,IAAI,CAAC"}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo, memo } from "react";
|
|
3
|
-
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
-
import { classMapToString, stylesToObject, mergeClassMaps, } from "../../lib/utils";
|
|
5
|
-
import MarkdownIt from "markdown-it";
|
|
6
|
-
function isHintedStyles(styles) {
|
|
7
|
-
if (typeof styles !== "object" || !styles || Array.isArray(styles))
|
|
8
|
-
return false;
|
|
9
|
-
const expected = ["h1", "h2", "h3", "h4", "h5", "caption", "body"];
|
|
10
|
-
return expected.some((v) => v in styles);
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Markdown-it instance for rendering markdown text.
|
|
14
|
-
* Uses synchronous import to ensure availability at first render (matches Lit renderer).
|
|
15
|
-
*
|
|
16
|
-
* Configuration matches Lit's markdown directive (uses MarkdownIt defaults):
|
|
17
|
-
* - html: false (default) - Security: disable raw HTML
|
|
18
|
-
* - linkify: false (default) - Don't auto-convert URLs/emails to links
|
|
19
|
-
* - breaks: false (default) - Don't convert \n to <br>
|
|
20
|
-
* - typographer: false (default) - Don't use smart quotes/dashes
|
|
21
|
-
*/
|
|
22
|
-
const markdownRenderer = new MarkdownIt();
|
|
23
|
-
/**
|
|
24
|
-
* Apply theme classes to markdown HTML elements.
|
|
25
|
-
* Replaces default element tags with themed versions.
|
|
26
|
-
*/
|
|
27
|
-
function applyMarkdownTheme(html, markdownTheme) {
|
|
28
|
-
if (!markdownTheme)
|
|
29
|
-
return html;
|
|
30
|
-
// Map of element -> classes
|
|
31
|
-
const replacements = [];
|
|
32
|
-
for (const [element, classes] of Object.entries(markdownTheme)) {
|
|
33
|
-
if (!classes || (Array.isArray(classes) && classes.length === 0))
|
|
34
|
-
continue;
|
|
35
|
-
const classString = Array.isArray(classes)
|
|
36
|
-
? classes.join(" ")
|
|
37
|
-
: classMapToString(classes);
|
|
38
|
-
if (!classString)
|
|
39
|
-
continue;
|
|
40
|
-
// Create regex to match opening tags (handles self-closing and regular)
|
|
41
|
-
const tagRegex = new RegExp(`<${element}(?=\\s|>|/>)`, "gi");
|
|
42
|
-
replacements.push([tagRegex, `<${element} class="${classString}"`]);
|
|
43
|
-
}
|
|
44
|
-
let result = html;
|
|
45
|
-
for (const [regex, replacement] of replacements) {
|
|
46
|
-
result = result.replace(regex, replacement);
|
|
47
|
-
}
|
|
48
|
-
return result;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Text component - renders text content with markdown support.
|
|
52
|
-
*
|
|
53
|
-
* Structure mirrors Lit's Text component:
|
|
54
|
-
* <div class="a2ui-text"> ← :host equivalent
|
|
55
|
-
* <section class="..."> ← theme classes
|
|
56
|
-
* <h2>...</h2> ← rendered markdown content
|
|
57
|
-
* </section>
|
|
58
|
-
* </div>
|
|
59
|
-
*
|
|
60
|
-
* Text is parsed as markdown and rendered as HTML (matches Lit renderer behavior).
|
|
61
|
-
* Supports usageHint values: h1, h2, h3, h4, h5, caption, body
|
|
62
|
-
*
|
|
63
|
-
* Markdown features supported:
|
|
64
|
-
* - **Bold** and *italic* text
|
|
65
|
-
* - Lists (ordered and unordered)
|
|
66
|
-
* - `inline code` and code blocks
|
|
67
|
-
* - [Links](url) (auto-linkified URLs too)
|
|
68
|
-
* - Blockquotes
|
|
69
|
-
* - Horizontal rules
|
|
70
|
-
*
|
|
71
|
-
* Note: Raw HTML is disabled for security.
|
|
72
|
-
*/
|
|
73
|
-
export const Text = memo(function Text({ node, surfaceId, }) {
|
|
74
|
-
const { theme, resolveString } = useA2UIComponent(node, surfaceId);
|
|
75
|
-
const props = node.properties;
|
|
76
|
-
const textValue = resolveString(props.text);
|
|
77
|
-
const usageHint = props.usageHint;
|
|
78
|
-
// Get merged classes (matches Lit's Styles.merge)
|
|
79
|
-
const classes = mergeClassMaps(theme.components.Text.all, usageHint ? theme.components.Text[usageHint] : {});
|
|
80
|
-
// Get additional styles based on usage hint
|
|
81
|
-
const additionalStyles = useMemo(() => {
|
|
82
|
-
const textStyles = theme.additionalStyles?.Text;
|
|
83
|
-
if (!textStyles)
|
|
84
|
-
return undefined;
|
|
85
|
-
if (isHintedStyles(textStyles)) {
|
|
86
|
-
const hint = usageHint ?? "body";
|
|
87
|
-
return stylesToObject(textStyles[hint]);
|
|
88
|
-
}
|
|
89
|
-
return stylesToObject(textStyles);
|
|
90
|
-
}, [theme.additionalStyles?.Text, usageHint]);
|
|
91
|
-
// Render markdown content (matches Lit behavior - always uses markdown)
|
|
92
|
-
const renderedContent = useMemo(() => {
|
|
93
|
-
if (textValue === null || textValue === undefined) {
|
|
94
|
-
return null;
|
|
95
|
-
}
|
|
96
|
-
// Add markdown prefix based on usageHint (matches Lit behavior)
|
|
97
|
-
let markdownText = textValue;
|
|
98
|
-
switch (usageHint) {
|
|
99
|
-
case "h1":
|
|
100
|
-
markdownText = `# ${markdownText}`;
|
|
101
|
-
break;
|
|
102
|
-
case "h2":
|
|
103
|
-
markdownText = `## ${markdownText}`;
|
|
104
|
-
break;
|
|
105
|
-
case "h3":
|
|
106
|
-
markdownText = `### ${markdownText}`;
|
|
107
|
-
break;
|
|
108
|
-
case "h4":
|
|
109
|
-
markdownText = `#### ${markdownText}`;
|
|
110
|
-
break;
|
|
111
|
-
case "h5":
|
|
112
|
-
markdownText = `##### ${markdownText}`;
|
|
113
|
-
break;
|
|
114
|
-
case "caption":
|
|
115
|
-
markdownText = `*${markdownText}*`;
|
|
116
|
-
break;
|
|
117
|
-
default:
|
|
118
|
-
break; // Body - no prefix
|
|
119
|
-
}
|
|
120
|
-
const rawHtml = markdownRenderer.render(markdownText);
|
|
121
|
-
const themedHtml = applyMarkdownTheme(rawHtml, theme.markdown);
|
|
122
|
-
return { __html: themedHtml };
|
|
123
|
-
}, [textValue, theme.markdown, usageHint]);
|
|
124
|
-
if (!renderedContent) {
|
|
125
|
-
return null;
|
|
126
|
-
}
|
|
127
|
-
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
128
|
-
const hostStyle = node.weight !== undefined
|
|
129
|
-
? { "--weight": node.weight }
|
|
130
|
-
: {};
|
|
131
|
-
return (_jsx("div", { className: "a2ui-text", style: hostStyle, children: _jsx("section", { className: classMapToString(classes), style: additionalStyles, dangerouslySetInnerHTML: renderedContent }) }));
|
|
132
|
-
});
|
|
133
|
-
export default Text;
|
|
134
|
-
//# sourceMappingURL=Text.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Text.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* Video component - renders a video player.
|
|
5
|
-
*
|
|
6
|
-
* Supports regular video URLs and YouTube URLs (renders as embedded iframe).
|
|
7
|
-
*/
|
|
8
|
-
export declare const Video: import("react").NamedExoticComponent<A2UIComponentProps<Types.VideoNode>>;
|
|
9
|
-
export default Video;
|
|
10
|
-
//# sourceMappingURL=Video.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Video.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Video.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAsBtD;;;;GAIG;AACH,eAAO,MAAM,KAAK,2EAyChB,CAAC;AAEH,eAAe,KAAK,CAAC"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { memo } from "react";
|
|
3
|
-
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
-
import { classMapToString, stylesToObject } from "../../lib/utils";
|
|
5
|
-
/**
|
|
6
|
-
* Check if a URL is a YouTube URL and extract the video ID.
|
|
7
|
-
*/
|
|
8
|
-
function getYouTubeVideoId(url) {
|
|
9
|
-
const patterns = [
|
|
10
|
-
/(?:youtube\.com\/watch\?v=|youtu\.be\/|youtube\.com\/embed\/)([^&\s?]+)/,
|
|
11
|
-
];
|
|
12
|
-
for (const pattern of patterns) {
|
|
13
|
-
const match = url.match(pattern);
|
|
14
|
-
if (match && match.length > 1) {
|
|
15
|
-
// Non-null assertion is safe here since we checked match.length > 1
|
|
16
|
-
return match[1];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return null;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Video component - renders a video player.
|
|
23
|
-
*
|
|
24
|
-
* Supports regular video URLs and YouTube URLs (renders as embedded iframe).
|
|
25
|
-
*/
|
|
26
|
-
export const Video = memo(function Video({ node, surfaceId, }) {
|
|
27
|
-
const { theme, resolveString } = useA2UIComponent(node, surfaceId);
|
|
28
|
-
const props = node.properties;
|
|
29
|
-
const url = resolveString(props.url);
|
|
30
|
-
if (!url) {
|
|
31
|
-
return null;
|
|
32
|
-
}
|
|
33
|
-
const youtubeId = getYouTubeVideoId(url);
|
|
34
|
-
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
35
|
-
const hostStyle = node.weight !== undefined
|
|
36
|
-
? { "--weight": node.weight }
|
|
37
|
-
: {};
|
|
38
|
-
return (_jsx("div", { className: "a2ui-video", style: hostStyle, children: _jsx("section", { className: classMapToString(theme.components.Video), style: stylesToObject(theme.additionalStyles?.Video), children: youtubeId ? (_jsx("iframe", { src: `https://www.youtube.com/embed/${youtubeId}`, title: "YouTube video player", allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture", allowFullScreen: true, style: { border: "none", width: "100%", aspectRatio: "16/9" } })) : (_jsx("video", { src: url, controls: true })) }) }));
|
|
39
|
-
});
|
|
40
|
-
export default Video;
|
|
41
|
-
//# sourceMappingURL=Video.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Video.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/Video.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEnE;;GAEG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,QAAQ,GAAG;QACf,yEAAyE;KAC1E,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,oEAAoE;YAEpE,OAAO,KAAK,CAAC,CAAC,CAAE,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,KAAK,CAAC,EACvC,IAAI,EACJ,SAAS,GAC2B;IACpC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEzC,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,YAAY,EAAC,KAAK,EAAE,SAAS,YAC1C,kBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,EACnD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,YAEnD,SAAS,CAAC,CAAC,CAAC,CACX,iBACE,GAAG,EAAE,iCAAiC,SAAS,EAAE,EACjD,KAAK,EAAC,sBAAsB,EAC5B,KAAK,EAAC,0FAA0F,EAChG,eAAe,QACf,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAC7D,CACH,CAAC,CAAC,CAAC,CACF,gBAAO,GAAG,EAAE,GAAG,EAAE,QAAQ,SAAG,CAC7B,GACO,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,KAAK,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* Button component - a clickable element that triggers an action.
|
|
5
|
-
*
|
|
6
|
-
* Contains a child component (usually Text or Icon) and dispatches
|
|
7
|
-
* a user action when clicked.
|
|
8
|
-
*/
|
|
9
|
-
export declare const Button: import("react").NamedExoticComponent<A2UIComponentProps<Types.ButtonNode>>;
|
|
10
|
-
export default Button;
|
|
11
|
-
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/interactive/Button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKtD;;;;;GAKG;AACH,eAAO,MAAM,MAAM,4EA8BjB,CAAC;AAEH,eAAe,MAAM,CAAC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useCallback, memo } from "react";
|
|
3
|
-
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
-
import { classMapToString, stylesToObject } from "../../lib/utils";
|
|
5
|
-
import { ComponentNode } from "../../core/ComponentNode";
|
|
6
|
-
/**
|
|
7
|
-
* Button component - a clickable element that triggers an action.
|
|
8
|
-
*
|
|
9
|
-
* Contains a child component (usually Text or Icon) and dispatches
|
|
10
|
-
* a user action when clicked.
|
|
11
|
-
*/
|
|
12
|
-
export const Button = memo(function Button({ node, surfaceId, }) {
|
|
13
|
-
const { theme, sendAction } = useA2UIComponent(node, surfaceId);
|
|
14
|
-
const props = node.properties;
|
|
15
|
-
const handleClick = useCallback(() => {
|
|
16
|
-
if (props.action) {
|
|
17
|
-
sendAction(props.action);
|
|
18
|
-
}
|
|
19
|
-
}, [props.action, sendAction]);
|
|
20
|
-
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
21
|
-
const hostStyle = node.weight !== undefined
|
|
22
|
-
? { "--weight": node.weight }
|
|
23
|
-
: {};
|
|
24
|
-
return (_jsx("div", { className: "a2ui-button", style: hostStyle, children: _jsx("button", { className: classMapToString(theme.components.Button), style: stylesToObject(theme.additionalStyles?.Button), onClick: handleClick, children: _jsx(ComponentNode, { node: props.child, surfaceId: surfaceId }) }) }));
|
|
25
|
-
});
|
|
26
|
-
export default Button;
|
|
27
|
-
//# sourceMappingURL=Button.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/interactive/Button.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,MAAM,CAAC,EACzC,IAAI,EACJ,SAAS,GAC4B;IACrC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAE/B,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,aAAa,EAAC,KAAK,EAAE,SAAS,YAC3C,iBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EACpD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,MAAM,CAAC,EACrD,OAAO,EAAE,WAAW,YAEpB,KAAC,aAAa,IAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,GAAI,GACnD,GACL,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,MAAM,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
-
import type { A2UIComponentProps } from "../../types";
|
|
3
|
-
/**
|
|
4
|
-
* CheckBox component - a boolean toggle with a label.
|
|
5
|
-
*
|
|
6
|
-
* Supports two-way data binding for the checked state.
|
|
7
|
-
*/
|
|
8
|
-
export declare const CheckBox: import("react").NamedExoticComponent<A2UIComponentProps<Types.CheckboxNode>>;
|
|
9
|
-
export default CheckBox;
|
|
10
|
-
//# sourceMappingURL=CheckBox.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBox.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/interactive/CheckBox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAItD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,8EAmFnB,CAAC;AAEH,eAAe,QAAQ,CAAC"}
|