@copilotkit/a2ui-renderer 1.51.4-next.7 → 1.51.4
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/.tsbuildinfo +1 -1
- package/dist/A2UIMessageRenderer.d.ts.map +1 -1
- package/dist/A2UIMessageRenderer.js +6 -5
- package/dist/A2UIMessageRenderer.js.map +1 -1
- package/dist/A2UIViewer.d.ts.map +1 -1
- package/dist/A2UIViewer.js +1 -1
- package/dist/A2UIViewer.js.map +1 -1
- package/dist/__tests__/A2UIMessageRenderer.test.js +43 -12
- package/dist/__tests__/A2UIMessageRenderer.test.js.map +1 -1
- package/dist/__tests__/clsx-shim.d.ts +8 -0
- package/dist/__tests__/clsx-shim.d.ts.map +1 -0
- package/dist/__tests__/clsx-shim.js +24 -0
- package/dist/__tests__/clsx-shim.js.map +1 -0
- package/dist/index.umd.js.map +1 -1
- package/dist/react-renderer/components/content/AudioPlayer.d.ts +2 -2
- package/dist/react-renderer/components/content/AudioPlayer.d.ts.map +1 -1
- package/dist/react-renderer/components/content/AudioPlayer.js +5 -5
- package/dist/react-renderer/components/content/AudioPlayer.js.map +1 -1
- package/dist/react-renderer/components/content/Divider.d.ts +2 -2
- package/dist/react-renderer/components/content/Divider.d.ts.map +1 -1
- package/dist/react-renderer/components/content/Divider.js +5 -5
- package/dist/react-renderer/components/content/Divider.js.map +1 -1
- package/dist/react-renderer/components/content/Icon.d.ts +2 -2
- package/dist/react-renderer/components/content/Icon.d.ts.map +1 -1
- package/dist/react-renderer/components/content/Icon.js +6 -6
- package/dist/react-renderer/components/content/Icon.js.map +1 -1
- package/dist/react-renderer/components/content/Image.d.ts +2 -2
- package/dist/react-renderer/components/content/Image.d.ts.map +1 -1
- package/dist/react-renderer/components/content/Image.js +7 -7
- package/dist/react-renderer/components/content/Image.js.map +1 -1
- package/dist/react-renderer/components/content/Text.d.ts +2 -2
- package/dist/react-renderer/components/content/Text.d.ts.map +1 -1
- package/dist/react-renderer/components/content/Text.js +19 -17
- package/dist/react-renderer/components/content/Text.js.map +1 -1
- package/dist/react-renderer/components/content/Video.d.ts +2 -2
- package/dist/react-renderer/components/content/Video.d.ts.map +1 -1
- package/dist/react-renderer/components/content/Video.js +6 -6
- package/dist/react-renderer/components/content/Video.js.map +1 -1
- package/dist/react-renderer/components/content/index.d.ts +6 -6
- package/dist/react-renderer/components/content/index.js +6 -6
- package/dist/react-renderer/components/interactive/Button.d.ts +2 -2
- package/dist/react-renderer/components/interactive/Button.d.ts.map +1 -1
- package/dist/react-renderer/components/interactive/Button.js +6 -6
- package/dist/react-renderer/components/interactive/Button.js.map +1 -1
- package/dist/react-renderer/components/interactive/CheckBox.d.ts +2 -2
- package/dist/react-renderer/components/interactive/CheckBox.d.ts.map +1 -1
- package/dist/react-renderer/components/interactive/CheckBox.js +5 -5
- package/dist/react-renderer/components/interactive/CheckBox.js.map +1 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.d.ts +2 -2
- package/dist/react-renderer/components/interactive/DateTimeInput.d.ts.map +1 -1
- package/dist/react-renderer/components/interactive/DateTimeInput.js +12 -12
- package/dist/react-renderer/components/interactive/DateTimeInput.js.map +1 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.d.ts +2 -2
- package/dist/react-renderer/components/interactive/MultipleChoice.d.ts.map +1 -1
- package/dist/react-renderer/components/interactive/MultipleChoice.js +5 -5
- package/dist/react-renderer/components/interactive/MultipleChoice.js.map +1 -1
- package/dist/react-renderer/components/interactive/Slider.d.ts +2 -2
- package/dist/react-renderer/components/interactive/Slider.js +6 -6
- package/dist/react-renderer/components/interactive/Slider.js.map +1 -1
- package/dist/react-renderer/components/interactive/TextField.d.ts +2 -2
- package/dist/react-renderer/components/interactive/TextField.d.ts.map +1 -1
- package/dist/react-renderer/components/interactive/TextField.js +8 -12
- package/dist/react-renderer/components/interactive/TextField.js.map +1 -1
- package/dist/react-renderer/components/interactive/index.d.ts +6 -6
- package/dist/react-renderer/components/interactive/index.js +6 -6
- package/dist/react-renderer/components/layout/Card.d.ts +2 -2
- package/dist/react-renderer/components/layout/Card.d.ts.map +1 -1
- package/dist/react-renderer/components/layout/Card.js +9 -9
- package/dist/react-renderer/components/layout/Card.js.map +1 -1
- package/dist/react-renderer/components/layout/Column.d.ts +2 -2
- package/dist/react-renderer/components/layout/Column.d.ts.map +1 -1
- package/dist/react-renderer/components/layout/Column.js +11 -11
- package/dist/react-renderer/components/layout/Column.js.map +1 -1
- package/dist/react-renderer/components/layout/List.d.ts +2 -2
- package/dist/react-renderer/components/layout/List.d.ts.map +1 -1
- package/dist/react-renderer/components/layout/List.js +10 -10
- package/dist/react-renderer/components/layout/List.js.map +1 -1
- package/dist/react-renderer/components/layout/Modal.d.ts +2 -2
- package/dist/react-renderer/components/layout/Modal.d.ts.map +1 -1
- package/dist/react-renderer/components/layout/Modal.js +10 -10
- package/dist/react-renderer/components/layout/Modal.js.map +1 -1
- package/dist/react-renderer/components/layout/Row.d.ts +2 -2
- package/dist/react-renderer/components/layout/Row.d.ts.map +1 -1
- package/dist/react-renderer/components/layout/Row.js +11 -11
- package/dist/react-renderer/components/layout/Row.js.map +1 -1
- package/dist/react-renderer/components/layout/Tabs.d.ts +2 -2
- package/dist/react-renderer/components/layout/Tabs.d.ts.map +1 -1
- package/dist/react-renderer/components/layout/Tabs.js +6 -6
- package/dist/react-renderer/components/layout/Tabs.js.map +1 -1
- package/dist/react-renderer/components/layout/index.d.ts +6 -6
- package/dist/react-renderer/components/layout/index.js +6 -6
- package/dist/react-renderer/core/A2UIProvider.d.ts +4 -4
- package/dist/react-renderer/core/A2UIProvider.d.ts.map +1 -1
- package/dist/react-renderer/core/A2UIProvider.js +5 -5
- package/dist/react-renderer/core/A2UIProvider.js.map +1 -1
- package/dist/react-renderer/core/A2UIRenderer.d.ts +2 -2
- package/dist/react-renderer/core/A2UIRenderer.js +28 -28
- package/dist/react-renderer/core/A2UIViewer.d.ts +1 -1
- package/dist/react-renderer/core/A2UIViewer.js +14 -14
- package/dist/react-renderer/core/ComponentNode.d.ts +2 -2
- package/dist/react-renderer/core/ComponentNode.d.ts.map +1 -1
- package/dist/react-renderer/core/ComponentNode.js +5 -5
- package/dist/react-renderer/core/ComponentNode.js.map +1 -1
- package/dist/react-renderer/core/store.d.ts +2 -2
- package/dist/react-renderer/hooks/useA2UI.d.ts +1 -1
- package/dist/react-renderer/hooks/useA2UI.js +1 -1
- package/dist/react-renderer/hooks/useA2UIComponent.d.ts +1 -1
- package/dist/react-renderer/hooks/useA2UIComponent.d.ts.map +1 -1
- package/dist/react-renderer/hooks/useA2UIComponent.js +16 -7
- package/dist/react-renderer/hooks/useA2UIComponent.js.map +1 -1
- package/dist/react-renderer/index.d.ts +35 -35
- package/dist/react-renderer/index.d.ts.map +1 -1
- package/dist/react-renderer/index.js +29 -29
- package/dist/react-renderer/index.js.map +1 -1
- package/dist/react-renderer/lib/utils.d.ts +2 -2
- package/dist/react-renderer/lib/utils.d.ts.map +1 -1
- package/dist/react-renderer/lib/utils.js +3 -3
- package/dist/react-renderer/lib/utils.js.map +1 -1
- package/dist/react-renderer/registry/ComponentRegistry.d.ts +3 -3
- package/dist/react-renderer/registry/ComponentRegistry.d.ts.map +1 -1
- package/dist/react-renderer/registry/ComponentRegistry.js +2 -2
- package/dist/react-renderer/registry/ComponentRegistry.js.map +1 -1
- package/dist/react-renderer/registry/defaultCatalog.d.ts +1 -1
- package/dist/react-renderer/registry/defaultCatalog.js +37 -37
- package/dist/react-renderer/styles/index.d.ts.map +1 -1
- package/dist/react-renderer/styles/index.js +10 -9
- package/dist/react-renderer/styles/index.js.map +1 -1
- package/dist/react-renderer/theme/ThemeContext.d.ts +2 -2
- package/dist/react-renderer/theme/ThemeContext.d.ts.map +1 -1
- package/dist/react-renderer/theme/ThemeContext.js +3 -3
- package/dist/react-renderer/theme/ThemeContext.js.map +1 -1
- package/dist/react-renderer/theme/litTheme.d.ts +1 -1
- package/dist/react-renderer/theme/litTheme.js +193 -193
- package/dist/react-renderer/theme/utils.d.ts.map +1 -1
- package/dist/react-renderer/theme/utils.js +3 -3
- package/dist/react-renderer/theme/utils.js.map +1 -1
- package/dist/react-renderer/types.d.ts +2 -2
- package/dist/react-renderer/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Modal.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAGvE,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;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Modal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Types } from
|
|
2
|
-
import type { A2UIComponentProps } from
|
|
1
|
+
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
+
import type { A2UIComponentProps } from "../../types";
|
|
3
3
|
/**
|
|
4
4
|
* Row component - arranges children horizontally using flexbox.
|
|
5
5
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Row.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKtD;;;;GAIG;AACH,eAAO,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Row.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKtD;;;;GAIG;AACH,eAAO,MAAM,GAAG,yEAkDd,CAAC;AAEH,eAAe,GAAG,CAAC"}
|
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { memo } from
|
|
3
|
-
import { useA2UIComponent } from
|
|
4
|
-
import { classMapToString, stylesToObject } from
|
|
5
|
-
import { ComponentNode } from
|
|
2
|
+
import { memo } from "react";
|
|
3
|
+
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
+
import { classMapToString, stylesToObject } from "../../lib/utils";
|
|
5
|
+
import { ComponentNode } from "../../core/ComponentNode";
|
|
6
6
|
/**
|
|
7
7
|
* Row component - arranges children horizontally using flexbox.
|
|
8
8
|
*
|
|
9
9
|
* Supports distribution (justify-content) and alignment (align-items) properties.
|
|
10
10
|
*/
|
|
11
|
-
export const Row = memo(function Row({ node, surfaceId }) {
|
|
11
|
+
export const Row = memo(function Row({ node, surfaceId, }) {
|
|
12
12
|
const { theme } = useA2UIComponent(node, surfaceId);
|
|
13
13
|
const props = node.properties;
|
|
14
14
|
// Match Lit's default values
|
|
15
|
-
const alignment = props.alignment ??
|
|
16
|
-
const distribution = props.distribution ??
|
|
15
|
+
const alignment = props.alignment ?? "stretch";
|
|
16
|
+
const distribution = props.distribution ?? "start";
|
|
17
17
|
const children = Array.isArray(props.children) ? props.children : [];
|
|
18
18
|
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
19
19
|
const hostStyle = node.weight !== undefined
|
|
20
|
-
? {
|
|
20
|
+
? { "--weight": node.weight }
|
|
21
21
|
: {};
|
|
22
22
|
return (_jsx("div", { className: "a2ui-row", "data-alignment": alignment, "data-distribution": distribution, style: hostStyle, children: _jsx("section", { className: classMapToString(theme.components.Row), style: stylesToObject(theme.additionalStyles?.Row), children: children.map((child, index) => {
|
|
23
|
-
const childId = typeof child ===
|
|
23
|
+
const childId = typeof child === "object" && child !== null && "id" in child
|
|
24
24
|
? child.id
|
|
25
25
|
: `child-${index}`;
|
|
26
|
-
const childNode = typeof child ===
|
|
26
|
+
const childNode = typeof child === "object" && child !== null && "type" in child
|
|
27
27
|
? child
|
|
28
28
|
: null;
|
|
29
|
-
return _jsx(ComponentNode, { node: childNode, surfaceId: surfaceId }, childId);
|
|
29
|
+
return (_jsx(ComponentNode, { node: childNode, surfaceId: surfaceId }, childId));
|
|
30
30
|
}) }) }));
|
|
31
31
|
});
|
|
32
32
|
export default Row;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Row.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Row.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"Row.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Row.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,EACnC,IAAI,EACJ,SAAS,GACyB;IAClC,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,6BAA6B;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC;IAC/C,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,OAAO,CAAC;IAEnD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAErE,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cACE,SAAS,EAAC,UAAU,oBACJ,SAAS,uBACN,YAAY,EAC/B,KAAK,EAAE,SAAS,YAEhB,kBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EACjD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,YAEjD,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBAC7B,MAAM,OAAO,GACX,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK;oBAC1D,CAAC,CAAE,KAAgC,CAAC,EAAE;oBACtC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC;gBACvB,MAAM,SAAS,GACb,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK;oBAC5D,CAAC,CAAE,KAAgC;oBACnC,CAAC,CAAC,IAAI,CAAC;gBACX,OAAO,CACL,KAAC,aAAa,IAEZ,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,SAAS,IAFf,OAAO,CAGZ,CACH,CAAC;YACJ,CAAC,CAAC,GACM,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,GAAG,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Types } from
|
|
2
|
-
import type { A2UIComponentProps } from
|
|
1
|
+
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
+
import type { A2UIComponentProps } from "../../types";
|
|
3
3
|
/**
|
|
4
4
|
* Tabs component - displays content in switchable tabs.
|
|
5
5
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Tabs.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Tabs.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAStD;;GAEG;AACH,eAAO,MAAM,IAAI,0EA+Df,CAAC;AAEH,eAAe,IAAI,CAAC"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useState, memo } from
|
|
3
|
-
import { useA2UIComponent } from
|
|
4
|
-
import { classMapToString, stylesToObject, mergeClassMaps } from
|
|
5
|
-
import { ComponentNode } from
|
|
2
|
+
import { useState, memo } from "react";
|
|
3
|
+
import { useA2UIComponent } from "../../hooks/useA2UIComponent";
|
|
4
|
+
import { classMapToString, stylesToObject, mergeClassMaps, } from "../../lib/utils";
|
|
5
|
+
import { ComponentNode } from "../../core/ComponentNode";
|
|
6
6
|
/**
|
|
7
7
|
* Tabs component - displays content in switchable tabs.
|
|
8
8
|
*/
|
|
9
|
-
export const Tabs = memo(function Tabs({ node, surfaceId }) {
|
|
9
|
+
export const Tabs = memo(function Tabs({ node, surfaceId, }) {
|
|
10
10
|
const { theme, resolveString } = useA2UIComponent(node, surfaceId);
|
|
11
11
|
const props = node.properties;
|
|
12
12
|
const [selectedIndex, setSelectedIndex] = useState(0);
|
|
13
13
|
const tabItems = props.tabItems ?? [];
|
|
14
14
|
// Apply --weight CSS variable on root div (:host equivalent) for flex layouts
|
|
15
15
|
const hostStyle = node.weight !== undefined
|
|
16
|
-
? {
|
|
16
|
+
? { "--weight": node.weight }
|
|
17
17
|
: {};
|
|
18
18
|
return (_jsx("div", { className: "a2ui-tabs", style: hostStyle, children: _jsxs("section", { className: classMapToString(theme.components.Tabs.container), style: stylesToObject(theme.additionalStyles?.Tabs), children: [_jsx("div", { id: "buttons", className: classMapToString(theme.components.Tabs.element), children: tabItems.map((tab, index) => {
|
|
19
19
|
const title = resolveString(tab.title);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Tabs.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,
|
|
1
|
+
{"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../../src/react-renderer/components/layout/Tabs.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,EACrC,IAAI,EACJ,SAAS,GAC0B;IACnC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAE9B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;IAEtC,8EAA8E;IAC9E,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,KAAK,SAAS;QACvB,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAA0B;QACtD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACL,cAAK,SAAS,EAAC,WAAW,EAAC,KAAK,EAAE,SAAS,YACzC,mBACE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAC5D,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAGnD,cACE,EAAE,EAAC,SAAS,EACZ,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,YAEzD,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;wBAC3B,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACvC,MAAM,UAAU,GAAG,KAAK,KAAK,aAAa,CAAC;wBAE3C,kDAAkD;wBAClD,MAAM,OAAO,GAAG,UAAU;4BACxB,CAAC,CAAC,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAClC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACxC;4BACH,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;wBAEvC,OAAO,CACL,iBAEE,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,EACpC,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAErC,KAAK,IALD,KAAK,CAMH,CACV,CAAC;oBACJ,CAAC,CAAC,GACE,EAGL,QAAQ,CAAC,aAAa,CAAC,IAAI,CAC1B,KAAC,aAAa,IACZ,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,KAAK,EACnC,SAAS,EAAE,SAAS,GACpB,CACH,IACO,GACN,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { Row } from
|
|
2
|
-
export { Column } from
|
|
3
|
-
export { List } from
|
|
4
|
-
export { Card } from
|
|
5
|
-
export { Tabs } from
|
|
6
|
-
export { Modal } from
|
|
1
|
+
export { Row } from "./Row";
|
|
2
|
+
export { Column } from "./Column";
|
|
3
|
+
export { List } from "./List";
|
|
4
|
+
export { Card } from "./Card";
|
|
5
|
+
export { Tabs } from "./Tabs";
|
|
6
|
+
export { Modal } from "./Modal";
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { Row } from
|
|
2
|
-
export { Column } from
|
|
3
|
-
export { List } from
|
|
4
|
-
export { Card } from
|
|
5
|
-
export { Tabs } from
|
|
6
|
-
export { Modal } from
|
|
1
|
+
export { Row } from "./Row";
|
|
2
|
+
export { Column } from "./Column";
|
|
3
|
+
export { List } from "./List";
|
|
4
|
+
export { Card } from "./Card";
|
|
5
|
+
export { Tabs } from "./Tabs";
|
|
6
|
+
export { Modal } from "./Modal";
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { type ReactNode } from
|
|
2
|
-
import { type Types } from
|
|
3
|
-
import type { A2UIContextValue, A2UIActions } from
|
|
4
|
-
import type { OnActionCallback } from
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import { type Types } from "@a2ui/lit/0.8";
|
|
3
|
+
import type { A2UIContextValue, A2UIActions } from "./store";
|
|
4
|
+
import type { OnActionCallback } from "../types";
|
|
5
5
|
/**
|
|
6
6
|
* Props for the A2UIProvider component.
|
|
7
7
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A2UIProvider.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAQ,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAcjD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,wEAAwE;IACxE,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;IACpB,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"A2UIProvider.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAQ,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAcjD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,wEAAwE;IACxE,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;IACpB,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CA8E5E;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAM5C;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,IAAI;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAMlD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,IAAI,gBAAgB,CAejD;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,uBAAiB,CAAC;AAE3C;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,CAAC,GACvC,CAAC,CAGH"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { createContext, useContext, useRef, useState, useMemo, } from
|
|
3
|
-
import { Data } from
|
|
4
|
-
import { ThemeProvider } from
|
|
2
|
+
import { createContext, useContext, useRef, useState, useMemo, } from "react";
|
|
3
|
+
import { Data } from "@a2ui/lit/0.8";
|
|
4
|
+
import { ThemeProvider } from "../theme/ThemeContext";
|
|
5
5
|
/**
|
|
6
6
|
* Context for stable actions (never changes reference, prevents re-renders).
|
|
7
7
|
* Components that only need to dispatch actions or read data won't re-render.
|
|
@@ -100,7 +100,7 @@ export function A2UIProvider({ onAction, theme, children }) {
|
|
|
100
100
|
export function useA2UIActions() {
|
|
101
101
|
const actions = useContext(A2UIActionsContext);
|
|
102
102
|
if (!actions) {
|
|
103
|
-
throw new Error(
|
|
103
|
+
throw new Error("useA2UIActions must be used within an A2UIProvider");
|
|
104
104
|
}
|
|
105
105
|
return actions;
|
|
106
106
|
}
|
|
@@ -114,7 +114,7 @@ export function useA2UIActions() {
|
|
|
114
114
|
export function useA2UIState() {
|
|
115
115
|
const state = useContext(A2UIStateContext);
|
|
116
116
|
if (!state) {
|
|
117
|
-
throw new Error(
|
|
117
|
+
throw new Error("useA2UIState must be used within an A2UIProvider");
|
|
118
118
|
}
|
|
119
119
|
return state;
|
|
120
120
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A2UIProvider.js","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EACb,UAAU,EACV,MAAM,EACN,QAAQ,EACR,OAAO,GAER,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,IAAI,EAAc,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;GAGG;AACH,MAAM,kBAAkB,GAAG,aAAa,CAAqB,IAAI,CAAC,CAAC;AAEnE;;;GAGG;AACH,MAAM,gBAAgB,GAAG,aAAa,CAA6B,IAAI,CAAC,CAAC;AAczE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAqB;IAC3E,+CAA+C;IAC/C,MAAM,YAAY,GAAG,MAAM,CAAgC,IAAI,CAAC,CAAC;IACjE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,gCAAgC,EAAE,CAAC;IACjE,CAAC;IACD,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;IAEvC,4CAA4C;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE1C,oEAAoE;IACpE,MAAM,WAAW,GAAG,MAAM,CAA0B,QAAQ,IAAI,IAAI,CAAC,CAAC;IACtE,WAAW,CAAC,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC;IAEvC,mEAAmE;IACnE,MAAM,UAAU,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,UAAU,CAAC,OAAO,GAAG;YACnB,eAAe,EAAE,CAAC,QAAuC,EAAE,EAAE;gBAC3D,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;gBACpC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YAED,OAAO,EAAE,CACP,IAAmC,EACnC,IAAY,EACZ,KAAsB,EACtB,SAAiB,EACjB,EAAE;gBACF,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;gBAChD,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YAED,QAAQ,EAAE,CAAC,OAAqC,EAAE,EAAE;gBAClD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACxB,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,aAAa,EAAE,GAAG,EAAE;gBAClB,SAAS,CAAC,aAAa,EAAE,CAAC;gBAC1B,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YAED,UAAU,EAAE,CAAC,SAAiB,EAAE,EAAE;gBAChC,OAAO,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAChD,CAAC;YAED,WAAW,EAAE,GAAG,EAAE;gBAChB,OAAO,SAAS,CAAC,WAAW,EAAE,CAAC;YACjC,CAAC;YAED,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"A2UIProvider.js","sourceRoot":"","sources":["../../../src/react-renderer/core/A2UIProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EACb,UAAU,EACV,MAAM,EACN,QAAQ,EACR,OAAO,GAER,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,IAAI,EAAc,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;GAGG;AACH,MAAM,kBAAkB,GAAG,aAAa,CAAqB,IAAI,CAAC,CAAC;AAEnE;;;GAGG;AACH,MAAM,gBAAgB,GAAG,aAAa,CAA6B,IAAI,CAAC,CAAC;AAczE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAqB;IAC3E,+CAA+C;IAC/C,MAAM,YAAY,GAAG,MAAM,CAAgC,IAAI,CAAC,CAAC;IACjE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,gCAAgC,EAAE,CAAC;IACjE,CAAC;IACD,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;IAEvC,4CAA4C;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE1C,oEAAoE;IACpE,MAAM,WAAW,GAAG,MAAM,CAA0B,QAAQ,IAAI,IAAI,CAAC,CAAC;IACtE,WAAW,CAAC,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC;IAEvC,mEAAmE;IACnE,MAAM,UAAU,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,UAAU,CAAC,OAAO,GAAG;YACnB,eAAe,EAAE,CAAC,QAAuC,EAAE,EAAE;gBAC3D,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;gBACpC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YAED,OAAO,EAAE,CACP,IAAmC,EACnC,IAAY,EACZ,KAAsB,EACtB,SAAiB,EACjB,EAAE;gBACF,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;gBAChD,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YAED,QAAQ,EAAE,CAAC,OAAqC,EAAE,EAAE;gBAClD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACxB,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,aAAa,EAAE,GAAG,EAAE;gBAClB,SAAS,CAAC,aAAa,EAAE,CAAC;gBAC1B,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YAED,UAAU,EAAE,CAAC,SAAiB,EAAE,EAAE;gBAChC,OAAO,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAChD,CAAC;YAED,WAAW,EAAE,GAAG,EAAE;gBAChB,OAAO,SAAS,CAAC,WAAW,EAAE,CAAC;YACjC,CAAC;YAED,OAAO,EAAE,CACP,IAA4B,EAC5B,IAAY,EACZ,SAAiB,EACjB,EAAE;gBACF,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YAClD,CAAC;YAED,WAAW,EAAE,CAAC,IAAY,EAAE,eAAwB,EAAE,EAAE;gBACtD,OAAO,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACtD,CAAC;SACF,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;IAEnC,0DAA0D;IAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAE3D,OAAO,CACL,KAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,YACzC,KAAC,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,UAAU,YAC1C,KAAC,aAAa,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAAiB,GAC7B,GACA,CAC/B,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,OAAO,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;IAE7B,2DAA2D;IAC3D,mEAAmE;IACnE,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,GAAG,OAAO;QACV,SAAS,EAAE,IAAyC,EAAE,uBAAuB;QAC7E,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,IAAI,EAAE,uBAAuB;KACxC,CAAC,EACF,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CACzB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC;AAE3C;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAwC;IAExC,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type ReactNode } from
|
|
2
|
-
import { type ComponentRegistry } from
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import { type ComponentRegistry } from "../registry/ComponentRegistry";
|
|
3
3
|
export interface A2UIRendererProps {
|
|
4
4
|
/** The surface ID to render */
|
|
5
5
|
surfaceId: string;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { Suspense, useMemo, memo } from
|
|
3
|
-
import { useA2UI } from
|
|
4
|
-
import { ComponentNode } from
|
|
5
|
-
import { cn } from
|
|
2
|
+
import { Suspense, useMemo, memo } from "react";
|
|
3
|
+
import { useA2UI } from "../hooks/useA2UI";
|
|
4
|
+
import { ComponentNode } from "./ComponentNode";
|
|
5
|
+
import { cn } from "../lib/utils";
|
|
6
6
|
/** Default loading fallback - memoized to prevent recreation */
|
|
7
7
|
const DefaultLoadingFallback = memo(function DefaultLoadingFallback() {
|
|
8
|
-
return (_jsx("div", { className: "a2ui-loading", style: { padding:
|
|
8
|
+
return (_jsx("div", { className: "a2ui-loading", style: { padding: "16px", opacity: 0.5 }, children: "Loading..." }));
|
|
9
9
|
});
|
|
10
10
|
/**
|
|
11
11
|
* A2UIRenderer - renders an A2UI surface.
|
|
@@ -41,30 +41,30 @@ export const A2UIRenderer = memo(function A2UIRenderer({ surfaceId, className, f
|
|
|
41
41
|
// Generate a color palette from the primary color.
|
|
42
42
|
// Values range from 0-100 where 0=black, 100=white, 50=primary color.
|
|
43
43
|
// Uses color-mix to create intermediate values.
|
|
44
|
-
case
|
|
45
|
-
styles[
|
|
46
|
-
styles[
|
|
47
|
-
styles[
|
|
48
|
-
styles[
|
|
49
|
-
styles[
|
|
50
|
-
styles[
|
|
51
|
-
styles[
|
|
52
|
-
styles[
|
|
53
|
-
styles[
|
|
54
|
-
styles[
|
|
55
|
-
styles[
|
|
56
|
-
styles[
|
|
57
|
-
styles[
|
|
58
|
-
styles[
|
|
59
|
-
styles[
|
|
60
|
-
styles[
|
|
61
|
-
styles[
|
|
62
|
-
styles[
|
|
44
|
+
case "primaryColor": {
|
|
45
|
+
styles["--p-100"] = "#ffffff";
|
|
46
|
+
styles["--p-99"] = `color-mix(in srgb, ${value} 2%, white 98%)`;
|
|
47
|
+
styles["--p-98"] = `color-mix(in srgb, ${value} 4%, white 96%)`;
|
|
48
|
+
styles["--p-95"] = `color-mix(in srgb, ${value} 10%, white 90%)`;
|
|
49
|
+
styles["--p-90"] = `color-mix(in srgb, ${value} 20%, white 80%)`;
|
|
50
|
+
styles["--p-80"] = `color-mix(in srgb, ${value} 40%, white 60%)`;
|
|
51
|
+
styles["--p-70"] = `color-mix(in srgb, ${value} 60%, white 40%)`;
|
|
52
|
+
styles["--p-60"] = `color-mix(in srgb, ${value} 80%, white 20%)`;
|
|
53
|
+
styles["--p-50"] = String(value);
|
|
54
|
+
styles["--p-40"] = `color-mix(in srgb, ${value} 80%, black 20%)`;
|
|
55
|
+
styles["--p-35"] = `color-mix(in srgb, ${value} 70%, black 30%)`;
|
|
56
|
+
styles["--p-30"] = `color-mix(in srgb, ${value} 60%, black 40%)`;
|
|
57
|
+
styles["--p-25"] = `color-mix(in srgb, ${value} 50%, black 50%)`;
|
|
58
|
+
styles["--p-20"] = `color-mix(in srgb, ${value} 40%, black 60%)`;
|
|
59
|
+
styles["--p-15"] = `color-mix(in srgb, ${value} 30%, black 70%)`;
|
|
60
|
+
styles["--p-10"] = `color-mix(in srgb, ${value} 20%, black 80%)`;
|
|
61
|
+
styles["--p-5"] = `color-mix(in srgb, ${value} 10%, black 90%)`;
|
|
62
|
+
styles["--p-0"] = "#000000";
|
|
63
63
|
break;
|
|
64
64
|
}
|
|
65
|
-
case
|
|
66
|
-
styles[
|
|
67
|
-
styles[
|
|
65
|
+
case "font": {
|
|
66
|
+
styles["--font-family"] = String(value);
|
|
67
|
+
styles["--font-family-flex"] = String(value);
|
|
68
68
|
break;
|
|
69
69
|
}
|
|
70
70
|
}
|
|
@@ -77,7 +77,7 @@ export const A2UIRenderer = memo(function A2UIRenderer({ surfaceId, className, f
|
|
|
77
77
|
}
|
|
78
78
|
// Use provided fallback or default memoized component
|
|
79
79
|
const actualLoadingFallback = loadingFallback ?? _jsx(DefaultLoadingFallback, {});
|
|
80
|
-
return (_jsx("div", { className: cn(
|
|
80
|
+
return (_jsx("div", { className: cn("a2ui-surface", className), style: surfaceStyles, "data-surface-id": surfaceId, "data-version": version, children: _jsx(Suspense, { fallback: actualLoadingFallback, children: _jsx(ComponentNode, { node: surface.componentTree, surfaceId: surfaceId, registry: registry }) }) }));
|
|
81
81
|
});
|
|
82
82
|
export default A2UIRenderer;
|
|
83
83
|
//# sourceMappingURL=A2UIRenderer.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { useId, useMemo, useEffect, useRef } from
|
|
4
|
-
import { A2UIProvider, useA2UIActions } from
|
|
5
|
-
import { A2UIRenderer } from
|
|
6
|
-
import { initializeDefaultCatalog } from
|
|
7
|
-
import { litTheme } from
|
|
8
|
-
import { injectStyles } from
|
|
3
|
+
import { useId, useMemo, useEffect, useRef } from "react";
|
|
4
|
+
import { A2UIProvider, useA2UIActions } from "./A2UIProvider";
|
|
5
|
+
import { A2UIRenderer } from "./A2UIRenderer";
|
|
6
|
+
import { initializeDefaultCatalog } from "../registry/defaultCatalog";
|
|
7
|
+
import { litTheme } from "../theme/litTheme";
|
|
8
|
+
import { injectStyles } from "../styles";
|
|
9
9
|
// Initialize the component catalog and styles once
|
|
10
10
|
let initialized = false;
|
|
11
11
|
function ensureInitialized() {
|
|
@@ -49,7 +49,7 @@ export function A2UIViewer({ root, components, data = {}, onAction, theme = litT
|
|
|
49
49
|
hash = (hash << 5) - hash + char;
|
|
50
50
|
hash = hash & hash;
|
|
51
51
|
}
|
|
52
|
-
return `surface${baseId.replace(/:/g,
|
|
52
|
+
return `surface${baseId.replace(/:/g, "-")}${hash}`;
|
|
53
53
|
}, [baseId, root, components]);
|
|
54
54
|
// Convert onAction callback to internal format
|
|
55
55
|
const handleAction = useMemo(() => {
|
|
@@ -74,7 +74,7 @@ export function A2UIViewer({ root, components, data = {}, onAction, theme = litT
|
|
|
74
74
|
*/
|
|
75
75
|
function A2UIViewerInner({ surfaceId, root, components, data, className, }) {
|
|
76
76
|
const { processMessages } = useA2UIActions();
|
|
77
|
-
const lastProcessedRef = useRef(
|
|
77
|
+
const lastProcessedRef = useRef("");
|
|
78
78
|
// Process messages when props change
|
|
79
79
|
useEffect(() => {
|
|
80
80
|
const key = `${surfaceId}-${JSON.stringify(components)}-${JSON.stringify(data)}`;
|
|
@@ -90,7 +90,7 @@ function A2UIViewerInner({ surfaceId, root, components, data, className, }) {
|
|
|
90
90
|
const contents = objectToValueMaps(data);
|
|
91
91
|
if (contents.length > 0) {
|
|
92
92
|
messages.push({
|
|
93
|
-
dataModelUpdate: { surfaceId, path:
|
|
93
|
+
dataModelUpdate: { surfaceId, path: "/", contents },
|
|
94
94
|
});
|
|
95
95
|
}
|
|
96
96
|
}
|
|
@@ -109,13 +109,13 @@ function objectToValueMaps(obj) {
|
|
|
109
109
|
* Converts a single key-value pair to a ValueMap.
|
|
110
110
|
*/
|
|
111
111
|
function valueToValueMap(key, value) {
|
|
112
|
-
if (typeof value ===
|
|
112
|
+
if (typeof value === "string") {
|
|
113
113
|
return { key, valueString: value };
|
|
114
114
|
}
|
|
115
|
-
if (typeof value ===
|
|
115
|
+
if (typeof value === "number") {
|
|
116
116
|
return { key, valueNumber: value };
|
|
117
117
|
}
|
|
118
|
-
if (typeof value ===
|
|
118
|
+
if (typeof value === "boolean") {
|
|
119
119
|
return { key, valueBoolean: value };
|
|
120
120
|
}
|
|
121
121
|
if (value === null || value === undefined) {
|
|
@@ -125,7 +125,7 @@ function valueToValueMap(key, value) {
|
|
|
125
125
|
const valueMap = value.map((item, index) => valueToValueMap(String(index), item));
|
|
126
126
|
return { key, valueMap };
|
|
127
127
|
}
|
|
128
|
-
if (typeof value ===
|
|
128
|
+
if (typeof value === "object") {
|
|
129
129
|
const valueMap = objectToValueMaps(value);
|
|
130
130
|
return { key, valueMap };
|
|
131
131
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Types } from
|
|
2
|
-
import { ComponentRegistry } from
|
|
1
|
+
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
+
import { ComponentRegistry } from "../registry/ComponentRegistry";
|
|
3
3
|
interface ComponentNodeProps {
|
|
4
4
|
/** The component node to render (can be null/undefined for safety) */
|
|
5
5
|
node: Types.AnyComponentNode | null | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentNode.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/core/ComponentNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAWlE,UAAU,kBAAkB;IAC1B,sEAAsE;IACtE,IAAI,EAAE,KAAK,CAAC,gBAAgB,GAAG,IAAI,GAAG,SAAS,CAAC;IAChD,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"ComponentNode.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/core/ComponentNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAWlE,UAAU,kBAAkB;IAC1B,sEAAsE;IACtE,IAAI,EAAE,KAAK,CAAC,gBAAgB,GAAG,IAAI,GAAG,SAAS,CAAC;IAChD,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,0DAsCxB,CAAC;AAEH,eAAe,aAAa,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Suspense, useMemo, memo } from
|
|
3
|
-
import { ComponentRegistry } from
|
|
2
|
+
import { Suspense, useMemo, memo } from "react";
|
|
3
|
+
import { ComponentRegistry } from "../registry/ComponentRegistry";
|
|
4
4
|
/** Memoized loading fallback to avoid recreating on each render */
|
|
5
5
|
const LoadingFallback = memo(function LoadingFallback() {
|
|
6
|
-
return (_jsx("div", { className: "a2ui-loading", style: { padding:
|
|
6
|
+
return (_jsx("div", { className: "a2ui-loading", style: { padding: "8px", opacity: 0.5 }, children: "Loading..." }));
|
|
7
7
|
});
|
|
8
8
|
/**
|
|
9
9
|
* ComponentNode - dynamically renders an A2UI component based on its type.
|
|
@@ -21,12 +21,12 @@ export const ComponentNode = memo(function ComponentNode({ node, surfaceId, regi
|
|
|
21
21
|
const actualRegistry = registry ?? ComponentRegistry.getInstance();
|
|
22
22
|
// useMemo must be called unconditionally (Rules of Hooks)
|
|
23
23
|
// We handle invalid nodes by returning null component type
|
|
24
|
-
const nodeType = node && typeof node ===
|
|
24
|
+
const nodeType = node && typeof node === "object" && "type" in node ? node.type : null;
|
|
25
25
|
const Component = useMemo(() => (nodeType ? actualRegistry.get(nodeType) : null), [actualRegistry, nodeType]);
|
|
26
26
|
// Handle null/undefined/invalid nodes gracefully
|
|
27
27
|
if (!nodeType) {
|
|
28
28
|
if (node) {
|
|
29
|
-
console.warn(
|
|
29
|
+
console.warn("[A2UI] Invalid component node (not resolved?):", node);
|
|
30
30
|
}
|
|
31
31
|
return null;
|
|
32
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentNode.js","sourceRoot":"","sources":["../../../src/react-renderer/core/ComponentNode.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,mEAAmE;AACnE,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,eAAe;IACnD,OAAO,CACL,cAAK,SAAS,EAAC,cAAc,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,2BAE/D,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAWH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,aAAa,CAAC,EACvD,IAAI,EACJ,SAAS,EACT,QAAQ,GACW;IACnB,MAAM,cAAc,GAAG,QAAQ,IAAI,iBAAiB,CAAC,WAAW,EAAE,CAAC;IAEnE,0DAA0D;IAC1D,2DAA2D;IAC3D,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"ComponentNode.js","sourceRoot":"","sources":["../../../src/react-renderer/core/ComponentNode.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,mEAAmE;AACnE,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,eAAe;IACnD,OAAO,CACL,cAAK,SAAS,EAAC,cAAc,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,2BAE/D,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAWH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,aAAa,CAAC,EACvD,IAAI,EACJ,SAAS,EACT,QAAQ,GACW;IACnB,MAAM,cAAc,GAAG,QAAQ,IAAI,iBAAiB,CAAC,WAAW,EAAE,CAAC;IAEnE,0DAA0D;IAC1D,2DAA2D;IAC3D,MAAM,QAAQ,GACZ,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAExE,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EACtD,CAAC,cAAc,EAAE,QAAQ,CAAC,CAC3B,CAAC;IAEF,iDAAiD;IACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,gDAAgD,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gEAAgE;IAChE,sEAAsE;IACtE,uFAAuF;IACvF,OAAO,CACL,KAAC,QAAQ,IAAC,QAAQ,EAAE,KAAC,eAAe,KAAG,YACrC,KAAC,SAAS,IAAC,IAAI,EAAE,IAA8B,EAAE,SAAS,EAAE,SAAS,GAAI,GAChE,CACZ,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,aAAa,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Types } from
|
|
2
|
-
import type { OnActionCallback } from
|
|
1
|
+
import type { Types } from "@a2ui/lit/0.8";
|
|
2
|
+
import type { OnActionCallback } from "../types";
|
|
3
3
|
/**
|
|
4
4
|
* Stable actions that never change (won't cause re-renders).
|
|
5
5
|
* These are stored in a ref and exposed via A2UIActionsContext.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useA2UIComponent.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/hooks/useA2UIComponent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIvD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,wBAAwB;IACxB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;IAEnB,uDAAuD;IACvD,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"useA2UIComponent.d.ts","sourceRoot":"","sources":["../../../src/react-renderer/hooks/useA2UIComponent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIvD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,wBAAwB;IACxB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;IAEnB,uDAAuD;IACvD,aAAa,EAAE,CACb,KAAK,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,KAC7C,MAAM,GAAG,IAAI,CAAC;IAEnB,uDAAuD;IACvD,aAAa,EAAE,CACb,KAAK,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,KAC7C,MAAM,GAAG,IAAI,CAAC;IAEnB,yDAAyD;IACzD,cAAc,EAAE,CACd,KAAK,EAAE,UAAU,CAAC,YAAY,GAAG,IAAI,GAAG,SAAS,KAC9C,OAAO,GAAG,IAAI,CAAC;IAEpB,0DAA0D;IAC1D,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAEzD,sCAAsC;IACtC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IAEnD,6BAA6B;IAC7B,UAAU,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;IAE3C,6CAA6C;IAC7C,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,KAAK,CAAC,gBAAgB,EAC/D,IAAI,EAAE,CAAC,EACP,SAAS,EAAE,MAAM,GAChB,sBAAsB,CAkLxB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { useCallback, useId, useMemo } from
|
|
2
|
-
import { useA2UIActions, useA2UIState } from
|
|
3
|
-
import { useTheme } from
|
|
1
|
+
import { useCallback, useId, useMemo } from "react";
|
|
2
|
+
import { useA2UIActions, useA2UIState } from "../core/A2UIProvider";
|
|
3
|
+
import { useTheme } from "../theme/ThemeContext";
|
|
4
4
|
/**
|
|
5
5
|
* Base hook for A2UI components. Provides data binding, theme access,
|
|
6
6
|
* and action dispatching.
|
|
@@ -46,7 +46,7 @@ export function useA2UIComponent(node, surfaceId) {
|
|
|
46
46
|
const resolveString = useCallback((value) => {
|
|
47
47
|
if (!value)
|
|
48
48
|
return null;
|
|
49
|
-
if (typeof value !==
|
|
49
|
+
if (typeof value !== "object")
|
|
50
50
|
return null;
|
|
51
51
|
if (value.literalString !== undefined) {
|
|
52
52
|
return value.literalString;
|
|
@@ -66,7 +66,7 @@ export function useA2UIComponent(node, surfaceId) {
|
|
|
66
66
|
const resolveNumber = useCallback((value) => {
|
|
67
67
|
if (!value)
|
|
68
68
|
return null;
|
|
69
|
-
if (typeof value !==
|
|
69
|
+
if (typeof value !== "object")
|
|
70
70
|
return null;
|
|
71
71
|
if (value.literalNumber !== undefined) {
|
|
72
72
|
return value.literalNumber;
|
|
@@ -86,7 +86,7 @@ export function useA2UIComponent(node, surfaceId) {
|
|
|
86
86
|
const resolveBoolean = useCallback((value) => {
|
|
87
87
|
if (!value)
|
|
88
88
|
return null;
|
|
89
|
-
if (typeof value !==
|
|
89
|
+
if (typeof value !== "object")
|
|
90
90
|
return null;
|
|
91
91
|
if (value.literalBoolean !== undefined) {
|
|
92
92
|
return value.literalBoolean;
|
|
@@ -161,6 +161,15 @@ export function useA2UIComponent(node, surfaceId) {
|
|
|
161
161
|
getValue,
|
|
162
162
|
sendAction,
|
|
163
163
|
getUniqueId,
|
|
164
|
-
}), [
|
|
164
|
+
}), [
|
|
165
|
+
theme,
|
|
166
|
+
resolveString,
|
|
167
|
+
resolveNumber,
|
|
168
|
+
resolveBoolean,
|
|
169
|
+
setValue,
|
|
170
|
+
getValue,
|
|
171
|
+
sendAction,
|
|
172
|
+
getUniqueId,
|
|
173
|
+
]);
|
|
165
174
|
}
|
|
166
175
|
//# sourceMappingURL=useA2UIComponent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useA2UIComponent.js","sourceRoot":"","sources":["../../../src/react-renderer/hooks/useA2UIComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useA2UIComponent.js","sourceRoot":"","sources":["../../../src/react-renderer/hooks/useA2UIComponent.ts"],"names":[],"mappings":"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"}
|