@lynx-js/genui 0.0.3 → 0.0.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/a2ui/dist/catalog/Button/catalog.json +2 -1
- package/a2ui/dist/catalog/Button/index.d.ts +5 -0
- package/a2ui/dist/catalog/Button/index.jsx +3 -0
- package/a2ui/dist/catalog/Button/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Card/catalog.json +2 -1
- package/a2ui/dist/catalog/Card/index.d.ts +5 -0
- package/a2ui/dist/catalog/Card/index.jsx +3 -0
- package/a2ui/dist/catalog/Card/index.jsx.map +1 -1
- package/a2ui/dist/catalog/CheckBox/catalog.json +2 -1
- package/a2ui/dist/catalog/CheckBox/index.d.ts +5 -0
- package/a2ui/dist/catalog/CheckBox/index.jsx +3 -0
- package/a2ui/dist/catalog/CheckBox/index.jsx.map +1 -1
- package/a2ui/dist/catalog/ChoicePicker/catalog.json +2 -1
- package/a2ui/dist/catalog/ChoicePicker/index.d.ts +5 -0
- package/a2ui/dist/catalog/ChoicePicker/index.jsx +3 -0
- package/a2ui/dist/catalog/ChoicePicker/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Column/catalog.json +2 -1
- package/a2ui/dist/catalog/Column/index.d.ts +5 -0
- package/a2ui/dist/catalog/Column/index.jsx +3 -0
- package/a2ui/dist/catalog/Column/index.jsx.map +1 -1
- package/a2ui/dist/catalog/DateTimeInput/catalog.json +2 -1
- package/a2ui/dist/catalog/DateTimeInput/index.d.ts +5 -0
- package/a2ui/dist/catalog/DateTimeInput/index.jsx +3 -0
- package/a2ui/dist/catalog/DateTimeInput/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Divider/catalog.json +2 -1
- package/a2ui/dist/catalog/Divider/index.d.ts +5 -0
- package/a2ui/dist/catalog/Divider/index.jsx +3 -0
- package/a2ui/dist/catalog/Divider/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Icon/catalog.json +2 -1
- package/a2ui/dist/catalog/Icon/index.d.ts +5 -0
- package/a2ui/dist/catalog/Icon/index.jsx +3 -0
- package/a2ui/dist/catalog/Icon/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Image/catalog.json +2 -1
- package/a2ui/dist/catalog/Image/index.d.ts +5 -0
- package/a2ui/dist/catalog/Image/index.jsx +3 -0
- package/a2ui/dist/catalog/Image/index.jsx.map +1 -1
- package/a2ui/dist/catalog/LazyComponent/catalog.json +37 -0
- package/a2ui/dist/catalog/LazyComponent/index.d.ts +27 -0
- package/a2ui/dist/catalog/LazyComponent/index.jsx +39 -0
- package/a2ui/dist/catalog/LazyComponent/index.jsx.map +1 -0
- package/a2ui/dist/catalog/LineChart/catalog.json +2 -1
- package/a2ui/dist/catalog/LineChart/index.d.ts +8 -0
- package/a2ui/dist/catalog/LineChart/index.jsx +3 -0
- package/a2ui/dist/catalog/LineChart/index.jsx.map +1 -1
- package/a2ui/dist/catalog/List/catalog.json +2 -1
- package/a2ui/dist/catalog/List/index.d.ts +5 -0
- package/a2ui/dist/catalog/List/index.jsx +3 -0
- package/a2ui/dist/catalog/List/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Loading/catalog.json +2 -1
- package/a2ui/dist/catalog/Loading/index.d.ts +5 -0
- package/a2ui/dist/catalog/Loading/index.jsx +3 -0
- package/a2ui/dist/catalog/Loading/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Modal/catalog.json +2 -1
- package/a2ui/dist/catalog/Modal/index.d.ts +5 -0
- package/a2ui/dist/catalog/Modal/index.jsx +3 -0
- package/a2ui/dist/catalog/Modal/index.jsx.map +1 -1
- package/a2ui/dist/catalog/PieChart/catalog.json +2 -1
- package/a2ui/dist/catalog/PieChart/index.d.ts +8 -0
- package/a2ui/dist/catalog/PieChart/index.jsx +3 -0
- package/a2ui/dist/catalog/PieChart/index.jsx.map +1 -1
- package/a2ui/dist/catalog/RadioGroup/catalog.json +2 -1
- package/a2ui/dist/catalog/RadioGroup/index.d.ts +5 -0
- package/a2ui/dist/catalog/RadioGroup/index.jsx +3 -0
- package/a2ui/dist/catalog/RadioGroup/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Row/catalog.json +2 -1
- package/a2ui/dist/catalog/Row/index.d.ts +5 -0
- package/a2ui/dist/catalog/Row/index.jsx +3 -0
- package/a2ui/dist/catalog/Row/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Slider/catalog.json +2 -1
- package/a2ui/dist/catalog/Slider/index.d.ts +5 -0
- package/a2ui/dist/catalog/Slider/index.jsx +3 -0
- package/a2ui/dist/catalog/Slider/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Tabs/catalog.json +2 -1
- package/a2ui/dist/catalog/Tabs/index.d.ts +5 -0
- package/a2ui/dist/catalog/Tabs/index.jsx +3 -0
- package/a2ui/dist/catalog/Tabs/index.jsx.map +1 -1
- package/a2ui/dist/catalog/Text/catalog.json +2 -1
- package/a2ui/dist/catalog/Text/index.d.ts +5 -0
- package/a2ui/dist/catalog/Text/index.jsx +3 -0
- package/a2ui/dist/catalog/Text/index.jsx.map +1 -1
- package/a2ui/dist/catalog/TextField/catalog.json +2 -1
- package/a2ui/dist/catalog/TextField/index.d.ts +5 -0
- package/a2ui/dist/catalog/TextField/index.jsx +3 -0
- package/a2ui/dist/catalog/TextField/index.jsx.map +1 -1
- package/a2ui/dist/catalog/defineCatalog.d.ts +4 -0
- package/a2ui/dist/catalog/defineCatalog.js.map +1 -1
- package/a2ui/dist/catalog/index.d.ts +1 -0
- package/a2ui/dist/catalog/index.js +77 -19
- package/a2ui/dist/catalog/index.js.map +1 -1
- package/a2ui/dist/catalog.json +74 -19
- package/a2ui/dist/index.d.ts +1 -1
- package/a2ui/dist/index.js +1 -1
- package/a2ui/dist/index.js.map +1 -1
- package/a2ui/dist/react/A2UI.d.ts +3 -0
- package/a2ui/dist/react/A2UI.jsx.map +1 -1
- package/a2ui/dist/react/A2UIRenderer.d.ts +5 -18
- package/a2ui/dist/react/A2UIRenderer.jsx.map +1 -1
- package/a2ui/dist/react/useAction.d.ts +7 -0
- package/a2ui/dist/react/useAction.js +4 -0
- package/a2ui/dist/react/useAction.js.map +1 -1
- package/a2ui/dist/react/useDataBinding.d.ts +7 -5
- package/a2ui/dist/react/useDataBinding.js +18 -0
- package/a2ui/dist/react/useDataBinding.js.map +1 -1
- package/a2ui/dist/store/FunctionRegistry.d.ts +7 -0
- package/a2ui/dist/store/FunctionRegistry.js +4 -0
- package/a2ui/dist/store/FunctionRegistry.js.map +1 -1
- package/a2ui/dist/store/MessageProcessor.d.ts +7 -0
- package/a2ui/dist/store/MessageProcessor.js +4 -0
- package/a2ui/dist/store/MessageProcessor.js.map +1 -1
- package/a2ui/dist/store/MessageStore.d.ts +6 -0
- package/a2ui/dist/store/MessageStore.js +3 -0
- package/a2ui/dist/store/MessageStore.js.map +1 -1
- package/a2ui/dist/store/Resource.d.ts +8 -0
- package/a2ui/dist/store/Resource.js +4 -0
- package/a2ui/dist/store/Resource.js.map +1 -1
- package/a2ui/dist/store/SignalStore.d.ts +3 -2
- package/a2ui/dist/store/SignalStore.js +9 -0
- package/a2ui/dist/store/SignalStore.js.map +1 -1
- package/a2ui/dist/store/resolveDynamic.d.ts +4 -3
- package/a2ui/dist/store/resolveDynamic.js +19 -0
- package/a2ui/dist/store/resolveDynamic.js.map +1 -1
- package/a2ui/dist/store/resolveFunctionCall.d.ts +7 -0
- package/a2ui/dist/store/resolveFunctionCall.js +4 -0
- package/a2ui/dist/store/resolveFunctionCall.js.map +1 -1
- package/a2ui/dist/store/types.d.ts +13 -0
- package/a2ui/dist/store/utils.d.ts +6 -4
- package/a2ui/dist/store/utils.js +26 -0
- package/a2ui/dist/store/utils.js.map +1 -1
- package/a2ui/dist/tsconfig.build.tsbuildinfo +1 -1
- package/a2ui/docs/catalog-guide.md +12 -6
- package/a2ui/docs/catalog-guide_zh.md +12 -6
- package/a2ui/src/catalog/index.ts +1 -0
- package/a2ui/src/index.ts +1 -0
- package/a2ui-catalog-extractor/dist/index.d.ts +88 -0
- package/a2ui-catalog-extractor/dist/index.js +39 -0
- package/a2ui-catalog-extractor/dist/index.js.map +1 -1
- package/a2ui-catalog-extractor/dist/tsconfig.build.tsbuildinfo +1 -1
- package/a2ui-prompt/dist/index.d.ts +39 -0
- package/a2ui-prompt/dist/index.js +1 -1
- package/cli/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/index.ts +12 -0
- package/openui/dist/core/context.d.ts +5 -1
- package/openui/dist/core/context.jsx +2 -1
- package/openui/dist/core/context.jsx.map +1 -1
- package/openui/dist/core/createLibrary.d.ts +7 -0
- package/openui/dist/core/createLibrary.jsx +4 -0
- package/openui/dist/core/createLibrary.jsx.map +1 -1
- package/openui/dist/core/hooks/useFormValidation.d.ts +9 -0
- package/openui/dist/core/hooks/useFormValidation.js +6 -0
- package/openui/dist/core/hooks/useFormValidation.js.map +1 -1
- package/openui/dist/core/hooks/useOpenUIState.d.ts +6 -0
- package/openui/dist/core/hooks/useOpenUIState.js.map +1 -1
- package/openui/dist/core/hooks/useStateField.d.ts +3 -0
- package/openui/dist/core/hooks/useStateField.js +3 -0
- package/openui/dist/core/hooks/useStateField.js.map +1 -1
- package/openui/dist/core/library.d.ts +6 -1
- package/openui/dist/core/library.jsx +8 -0
- package/openui/dist/core/library.jsx.map +1 -1
- package/openui/dist/core/renderer.d.ts +10 -0
- package/openui/dist/core/renderer.jsx +3 -0
- package/openui/dist/core/renderer.jsx.map +1 -1
- package/openui/dist/openui-prompt/index.d.ts +47 -0
- package/openui/dist/openui-prompt/index.js +321 -0
- package/openui/dist/openui-prompt/index.js.map +1 -0
- package/package.json +10 -8
|
@@ -2,6 +2,10 @@ export declare const A2UI_PROTOCOL_VERSION = "v0.9";
|
|
|
2
2
|
|
|
3
3
|
export declare const A2UI_SYSTEM_PROMPT: string;
|
|
4
4
|
|
|
5
|
+
/**
|
|
6
|
+
* Prompt-ready A2UI catalog including components, rules, examples, and
|
|
7
|
+
* optional client functions.
|
|
8
|
+
*/
|
|
5
9
|
export declare interface A2UICatalog {
|
|
6
10
|
id: string;
|
|
7
11
|
label: string;
|
|
@@ -12,6 +16,9 @@ export declare interface A2UICatalog {
|
|
|
12
16
|
functions?: A2UIFunctionSpec[];
|
|
13
17
|
}
|
|
14
18
|
|
|
19
|
+
/**
|
|
20
|
+
* Prompt-facing description of a single A2UI component prop.
|
|
21
|
+
*/
|
|
15
22
|
export declare interface A2UIComponentProp {
|
|
16
23
|
name: string;
|
|
17
24
|
type: string;
|
|
@@ -21,6 +28,9 @@ export declare interface A2UIComponentProp {
|
|
|
21
28
|
schema?: JsonSchema;
|
|
22
29
|
}
|
|
23
30
|
|
|
31
|
+
/**
|
|
32
|
+
* Prompt-facing component specification derived from a catalog manifest.
|
|
33
|
+
*/
|
|
24
34
|
export declare interface A2UIComponentSpec {
|
|
25
35
|
name: string;
|
|
26
36
|
summary: string;
|
|
@@ -29,12 +39,19 @@ export declare interface A2UIComponentSpec {
|
|
|
29
39
|
containerShape?: 'children' | 'child' | 'tabs' | 'trigger-content' | 'none';
|
|
30
40
|
}
|
|
31
41
|
|
|
42
|
+
/**
|
|
43
|
+
* Validated user request and message sequence included as an in-context A2UI
|
|
44
|
+
* example.
|
|
45
|
+
*/
|
|
32
46
|
export declare interface A2UIExample {
|
|
33
47
|
name: string;
|
|
34
48
|
user: string;
|
|
35
49
|
messages: unknown[];
|
|
36
50
|
}
|
|
37
51
|
|
|
52
|
+
/**
|
|
53
|
+
* Prompt-facing schema for a client-side function the agent may call.
|
|
54
|
+
*/
|
|
38
55
|
export declare interface A2UIFunctionSpec {
|
|
39
56
|
description?: string;
|
|
40
57
|
name: string;
|
|
@@ -48,13 +65,22 @@ export declare const BASIC_CATALOG_EXAMPLES: A2UIExample[];
|
|
|
48
65
|
|
|
49
66
|
export declare const BASIC_CATALOG_ID = "https://a2ui.org/specification/v0_9/basic_catalog.json";
|
|
50
67
|
|
|
68
|
+
/**
|
|
69
|
+
* Build the full A2UI system prompt for the supplied catalog.
|
|
70
|
+
*/
|
|
51
71
|
export declare function buildA2UISystemPrompt(opts?: BuildSystemPromptOptions): string;
|
|
52
72
|
|
|
73
|
+
/**
|
|
74
|
+
* Options used to customize the generated A2UI system prompt.
|
|
75
|
+
*/
|
|
53
76
|
export declare interface BuildSystemPromptOptions {
|
|
54
77
|
catalog?: A2UICatalog;
|
|
55
78
|
appendix?: string;
|
|
56
79
|
}
|
|
57
80
|
|
|
81
|
+
/**
|
|
82
|
+
* Convert generated component manifests into a prompt-ready A2UI catalog.
|
|
83
|
+
*/
|
|
58
84
|
export declare function createA2UICatalogFromManifests(options: {
|
|
59
85
|
catalogId: string;
|
|
60
86
|
componentManifests: Record<string, JsonSchema>[];
|
|
@@ -65,6 +91,9 @@ export declare function createA2UICatalogFromManifests(options: {
|
|
|
65
91
|
version?: string;
|
|
66
92
|
}): A2UICatalog;
|
|
67
93
|
|
|
94
|
+
/**
|
|
95
|
+
* JSON Schema subset used in prompt-facing catalog descriptions.
|
|
96
|
+
*/
|
|
68
97
|
export declare interface JsonSchema {
|
|
69
98
|
const?: unknown;
|
|
70
99
|
type?: string;
|
|
@@ -78,6 +107,9 @@ export declare interface JsonSchema {
|
|
|
78
107
|
unevaluatedProperties?: unknown;
|
|
79
108
|
}
|
|
80
109
|
|
|
110
|
+
/**
|
|
111
|
+
* Options for loading generated A2UI catalog artifacts from a directory.
|
|
112
|
+
*/
|
|
81
113
|
export declare interface ReadA2UICatalogDirectoryOptions {
|
|
82
114
|
catalogDir: string;
|
|
83
115
|
catalogId: string;
|
|
@@ -86,8 +118,15 @@ export declare interface ReadA2UICatalogDirectoryOptions {
|
|
|
86
118
|
version?: string;
|
|
87
119
|
}
|
|
88
120
|
|
|
121
|
+
/**
|
|
122
|
+
* Read generated component and function manifests and convert them into a
|
|
123
|
+
* prompt-ready A2UI catalog.
|
|
124
|
+
*/
|
|
89
125
|
export declare function readA2UICatalogFromDirectory(options: ReadA2UICatalogDirectoryOptions): A2UICatalog;
|
|
90
126
|
|
|
127
|
+
/**
|
|
128
|
+
* Render an A2UI catalog into the Markdown reference embedded in prompts.
|
|
129
|
+
*/
|
|
91
130
|
export declare function renderCatalogReference(catalog: A2UICatalog): string;
|
|
92
131
|
|
|
93
132
|
export { }
|
|
@@ -334,7 +334,7 @@ const BASIC_CATALOG_EXAMPLES = [
|
|
|
334
334
|
]
|
|
335
335
|
}
|
|
336
336
|
];
|
|
337
|
-
var catalog_namespaceObject = JSON.parse('{"catalogId":"https://unpkg.com/@lynx-js/genui/a2ui/dist/catalog.json","components":{"Button":{"properties":{"child":{"type":"string"},"variant":{"type":"string","enum":["primary","borderless"]},"isValid":{"type":"boolean"},"action":{"oneOf":[{"type":"object","properties":{"event":{"type":"object","properties":{"name":{"type":"string"},"context":{"type":"object","additionalProperties":true,"description":"Context is a JSON object map in v0.9."}},"required":["name"],"additionalProperties":false}},"required":["event"],"additionalProperties":false},{"type":"object","properties":{"functionCall":{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}},"required":["functionCall"],"additionalProperties":false}],"description":"v0.9 actions should use the `event` wrapper for server-dispatched clicks."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"message":{"type":"string"}},"required":["condition","message"],"additionalProperties":false}}},"required":["child","action"]},"Card":{"properties":{"child":{"type":"string"},"variant":{"type":"string","enum":["elevated","outlined","filled","ghost"]},"weight":{"type":"number"}},"required":["child"]},"CheckBox":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"value":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"message":{"type":"string"}},"required":["condition","message"],"additionalProperties":false}}},"required":["label","value"]},"ChoicePicker":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The label for the group of options."},"variant":{"type":"string","enum":["multipleSelection","mutuallyExclusive"],"description":"A hint for how the choice picker should be displayed and behave."},"options":{"type":"array","items":{"type":"object","properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The text to display for this option."},"value":{"type":"string","description":"The stable value associated with this option."}},"required":["label","value"],"additionalProperties":false},"description":"The list of available options to choose from."},"value":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The list of currently selected values."},"displayStyle":{"type":"string","enum":["checkbox","chips"],"description":"The display style of the component."},"filterable":{"type":"boolean","description":"If true, displays a search input to filter the options."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["options","value"]},"Column":{"properties":{"children":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"componentId":{"type":"string"},"path":{"type":"string"}},"required":["componentId","path"],"additionalProperties":false}],"description":"Static child IDs array or template object."},"align":{"type":"string","enum":["start","center","end","stretch"]},"justify":{"type":"string","enum":["start","center","end","stretch","spaceBetween","spaceAround","spaceEvenly"]}},"required":["children"]},"DateTimeInput":{"properties":{"value":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"The current date/time value. Typically bound to a data path."},"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The text label for the input field."},"enableDate":{"type":"boolean","description":"Whether to show the date picker."},"enableTime":{"type":"boolean","description":"Whether to show the time picker."},"outputFormat":{"type":"string","description":"Format string for the output value. Supports YYYY, MM, DD, HH, and mm."},"min":{"type":"string","description":"Minimum allowed date/time value."},"max":{"type":"string","description":"Maximum allowed date/time value."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["value"]},"Divider":{"properties":{"axis":{"type":"string","enum":["horizontal","vertical"]}},"required":[]},"Icon":{"properties":{"name":{"oneOf":[{"type":"string","enum":["account_circle"]},{"type":"string","enum":["add"]},{"type":"string","enum":["arrow_back"]},{"type":"string","enum":["arrow_forward"]},{"type":"string","enum":["camera"]},{"type":"string","enum":["check"]},{"type":"string","enum":["close"]},{"type":"string","enum":["delete"]},{"type":"string","enum":["edit"]},{"type":"string","enum":["error"]},{"type":"string","enum":["favorite"]},{"type":"string","enum":["help"]},{"type":"string","enum":["home"]},{"type":"string","enum":["info"]},{"type":"string","enum":["location_on"]},{"type":"string","enum":["lock"]},{"type":"string","enum":["mail"]},{"type":"string","enum":["menu"]},{"type":"string","enum":["more_vert"]},{"type":"string","enum":["pause"]},{"type":"string","enum":["person"]},{"type":"string","enum":["play_arrow"]},{"type":"string","enum":["refresh"]},{"type":"string","enum":["search"]},{"type":"string","enum":["send"]},{"type":"string","enum":["settings"]},{"type":"string","enum":["share"]},{"type":"string","enum":["star"]},{"type":"string","enum":["warning"]},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"Google Material icon ligature name, e.g. \\"info\\", \\"account_circle\\", \\"arrow_back\\"."},"size":{"type":"string","enum":["sm","md","lg"]},"color":{"type":"string","enum":["primary","muted","inherit"]}},"required":["name"]},"Image":{"properties":{"url":{"type":"string","description":"Image URL or path binding."},"fit":{"type":"string","enum":["contain","cover","fill","none","scale-down"]},"mode":{"type":"string","enum":["center","scaleToFill","aspectFit","aspectFill"]},"variant":{"type":"string","enum":["icon","avatar","smallFeature","mediumFeature","largeFeature","header"]},"weight":{"type":"number"}},"required":["url"]},"LineChart":{"properties":{"labels":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"Category labels shown along the x axis."},"series":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"values":{"type":"array","items":{"type":"number"}},"color":{"type":"string"}},"required":["name","values"],"additionalProperties":false}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"One or more line series to render over the shared labels."},"variant":{"type":"string","enum":["linear","natural","step"]},"xLabel":{"type":"string"},"yLabel":{"type":"string"},"showGrid":{"type":"boolean"},"showLegend":{"type":"boolean"},"height":{"type":"number"}},"required":["labels","series"]},"List":{"properties":{"children":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"componentId":{"type":"string"},"path":{"type":"string"}},"required":["componentId","path"],"additionalProperties":false}],"description":"Static child IDs array or template object."},"direction":{"type":"string","enum":["horizontal","vertical"]},"align":{"type":"string","enum":["start","center","end","stretch"]}},"required":["children"]},"Loading":{"properties":{"variant":{"type":"string","enum":["inline","block"],"description":"Visual density for the skeleton placeholder."}},"required":[]},"Modal":{"properties":{"trigger":{"type":"string","description":"The ID of the component that opens the modal when interacted with."},"content":{"type":"string","description":"The ID of the component to display inside the modal."}},"required":["trigger","content"]},"PieChart":{"properties":{"data":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"},"color":{"type":"string"}},"required":["name","value"],"additionalProperties":false}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"Pie slices to render."},"variant":{"type":"string","enum":["pie","donut"],"description":"Render the chart as a flat pie or a donut."},"title":{"type":"string","description":"Optional title shown above the chart."},"subtitle":{"type":"string","description":"Optional subtitle shown under the title."},"showLegend":{"type":"boolean","description":"Show the legend below the chart."},"showPercentages":{"type":"boolean","description":"Show percentage values in the legend."},"height":{"type":"number","description":"Chart height in pixels."},"paddingAngle":{"type":"number","description":"Padding angle between slices, in degrees."},"colors":{"type":"array","items":{"type":"string"},"description":"Custom color palette for the slices."}},"required":["data"]},"RadioGroup":{"properties":{"items":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The list of string options to display."},"value":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The currently selected value."},"usageHint":{"type":"string","enum":["default","card","row"],"description":"A hint for the visual style of the radio group."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"message":{"type":"string"}},"required":["condition","message"],"additionalProperties":false}}},"required":["items","value"]},"Row":{"properties":{"children":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"componentId":{"type":"string"},"path":{"type":"string"}},"required":["componentId","path"],"additionalProperties":false}],"description":"Static child IDs array or template object."},"justify":{"type":"string","enum":["start","center","end","stretch","spaceBetween","spaceAround","spaceEvenly"]},"align":{"type":"string","enum":["start","center","end","stretch"]}},"required":["children"]},"Slider":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The label for the slider."},"min":{"type":"number","description":"The minimum value of the slider."},"max":{"type":"number","description":"The maximum value of the slider."},"value":{"oneOf":[{"type":"number"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The current value of the slider."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["max","value"]},"Tabs":{"properties":{"tabs":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"child":{"type":"string"}},"required":["title","child"],"additionalProperties":false}}},"required":["tabs"]},"Text":{"properties":{"text":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"Literal text, path binding, or function call."},"variant":{"type":"string","enum":["h1","h2","h3","h4","h5","caption","body","markdown"]},"emphasis":{"type":"string","enum":["medium","strong"]}},"required":["text"]},"TextField":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"The text label for the input field."},"value":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"The value of the text field."},"variant":{"type":"string","enum":["number","longText","shortText","obscured"],"description":"The type of input field to display."},"validationRegexp":{"type":"string","description":"A regular expression used for client-side validation of the input."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}]}},"returnType":{"type":"string","enum":["boolean"]}},"required":["call"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["label"]}},"functions":{"required":{"type":"object","description":"Checks that the value is not null, undefined, or empty.","properties":{"call":{"const":"required"},"args":{"type":"object","properties":{"value":{"description":"The value to check."}},"required":["value"],"additionalProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"regex":{"type":"object","description":"Checks that the value matches a regular expression string.","properties":{"call":{"const":"regex"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"},"pattern":{"type":"string","description":"The regex pattern to match against."}},"required":["value","pattern"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"length":{"type":"object","description":"Checks string length constraints.","properties":{"call":{"const":"length"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"},"min":{"type":"integer","minimum":0,"description":"The minimum allowed length."},"max":{"type":"integer","minimum":0,"description":"The maximum allowed length."}},"required":["value"],"anyOf":[{"required":["min"]},{"required":["max"]}],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"numeric":{"type":"object","description":"Checks numeric range constraints.","properties":{"call":{"const":"numeric"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber"},"min":{"type":"number","description":"The minimum allowed value."},"max":{"type":"number","description":"The maximum allowed value."}},"required":["value"],"anyOf":[{"required":["min"]},{"required":["max"]}],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"email":{"type":"object","description":"Checks that the value is a valid email address.","properties":{"call":{"const":"email"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"formatString":{"type":"object","description":"Performs string interpolation of data model values and other functions in the catalog functions list and returns the resulting string. The value string can contain interpolated expressions in the `${expression}` format. Supported expression types include: JSON Pointer paths to the data model (e.g., `${/absolute/path}` or `${relative/path}`), and client-side function calls (e.g., `${now()}`). Function arguments must be named (e.g., `${formatDate(value:${/currentDate}, format:\'MM-dd\')}`). To include a literal `${` sequence, escape it as `\\\\${`.","properties":{"call":{"const":"formatString"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"formatNumber":{"type":"object","description":"Formats a number with the specified grouping and decimal precision.","properties":{"call":{"const":"formatNumber"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"The number to format."},"decimals":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"Optional. The number of decimal places to show. Defaults to 0 or 2 depending on locale."},"grouping":{"$ref":"common_types.json#/$defs/DynamicBoolean","description":"Optional. If true, uses locale-specific grouping separators (e.g. \'1,000\'). If false, returns raw digits (e.g. \'1000\'). Defaults to true."}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"formatCurrency":{"type":"object","description":"Formats a number as a currency string.","properties":{"call":{"const":"formatCurrency"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"The monetary amount."},"currency":{"$ref":"common_types.json#/$defs/DynamicString","description":"The ISO 4217 currency code (e.g., \'USD\', \'EUR\')."},"decimals":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"Optional. The number of decimal places to show. Defaults to 0 or 2 depending on locale."},"grouping":{"$ref":"common_types.json#/$defs/DynamicBoolean","description":"Optional. If true, uses locale-specific grouping separators (e.g. \'1,000\'). If false, returns raw digits (e.g. \'1000\'). Defaults to true."}},"required":["currency","value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"formatDate":{"type":"object","description":"Formats a timestamp into a string using a pattern.","properties":{"call":{"const":"formatDate"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicValue","description":"The date to format."},"format":{"$ref":"common_types.json#/$defs/DynamicString","description":"A Unicode TR35 date pattern string.\\n\\nToken Reference:\\n- Year: \'yy\' (26), \'yyyy\' (2026)\\n- Month: \'M\' (1), \'MM\' (01), \'MMM\' (Jan), \'MMMM\' (January)\\n- Day: \'d\' (1), \'dd\' (01), \'E\' (Tue), \'EEEE\' (Tuesday)\\n- Hour (12h): \'h\' (1-12), \'hh\' (01-12) - requires \'a\' for AM/PM\\n- Hour (24h): \'H\' (0-23), \'HH\' (00-23) - Military Time\\n- Minute: \'mm\' (00-59)\\n- Second: \'ss\' (00-59)\\n- Period: \'a\' (AM/PM)\\n\\nExamples:\\n- \'MMM dd, yyyy\' -> \'Jan 16, 2026\'\\n- \'HH:mm\' -> \'14:30\' (Military)\\n- \'h:mm a\' -> \'2:30 PM\'\\n- \'EEEE, d MMMM\' -> \'Friday, 16 January\'"}},"required":["format","value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"pluralize":{"type":"object","description":"Returns a localized string based on the Common Locale Data Repository (CLDR) plural category of the count (zero, one, two, few, many, other). Requires an \'other\' fallback. For English, just use \'one\' and \'other\'.","properties":{"call":{"const":"pluralize"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"The numeric value used to determine the plural category."},"zero":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'zero\' category (e.g., 0 items)."},"one":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'one\' category (e.g., 1 item)."},"two":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'two\' category (used in Arabic, Welsh, etc.)."},"few":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'few\' category (e.g., small groups in Slavic languages)."},"many":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'many\' category (e.g., large groups in various languages)."},"other":{"$ref":"common_types.json#/$defs/DynamicString","description":"The default/fallback string (used for general plural cases)."}},"required":["value","other"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"openUrl":{"type":"object","description":"Opens the specified URL in a browser or handler. This function has no return value.","properties":{"call":{"const":"openUrl"},"args":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL to open."}},"required":["url"],"additionalProperties":false},"returnType":{"const":"void"}},"required":["call","args"],"unevaluatedProperties":false},"and":{"type":"object","description":"Performs a logical AND operation on a list of boolean values.","properties":{"call":{"const":"and"},"args":{"type":"object","properties":{"values":{"type":"array","description":"The list of boolean values to evaluate.","items":{"$ref":"common_types.json#/$defs/DynamicBoolean"},"minItems":2}},"required":["values"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"or":{"type":"object","description":"Performs a logical OR operation on a list of boolean values.","properties":{"call":{"const":"or"},"args":{"type":"object","properties":{"values":{"type":"array","description":"The list of boolean values to evaluate.","items":{"$ref":"common_types.json#/$defs/DynamicBoolean"},"minItems":2}},"required":["values"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"not":{"type":"object","description":"Performs a logical NOT operation on a boolean value.","properties":{"call":{"const":"not"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicBoolean","description":"The boolean value to negate."}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false}}}');
|
|
337
|
+
var catalog_namespaceObject = /*#__PURE__*/ JSON.parse('{"catalogId":"https://unpkg.com/@lynx-js/genui/a2ui/dist/catalog.json","components":{"Button":{"properties":{"child":{"type":"string"},"variant":{"type":"string","enum":["primary","borderless"]},"isValid":{"type":"boolean"},"action":{"oneOf":[{"type":"object","properties":{"event":{"type":"object","properties":{"name":{"type":"string"},"context":{"type":"object","additionalProperties":true,"description":"Context is a JSON object map in v0.9."}},"required":["name"],"additionalProperties":false}},"required":["event"],"additionalProperties":false},{"type":"object","properties":{"functionCall":{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}},"required":["functionCall"],"additionalProperties":false}],"description":"v0.9 actions should use the `event` wrapper for server-dispatched clicks."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"message":{"type":"string"}},"required":["condition","message"],"additionalProperties":false}}},"required":["child","action"]},"Card":{"properties":{"child":{"type":"string"},"variant":{"type":"string","enum":["elevated","outlined","filled","ghost"]},"weight":{"type":"number"}},"required":["child"]},"CheckBox":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"value":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"message":{"type":"string"}},"required":["condition","message"],"additionalProperties":false}}},"required":["label","value"]},"ChoicePicker":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The label for the group of options."},"variant":{"type":"string","enum":["multipleSelection","mutuallyExclusive"],"description":"A hint for how the choice picker should be displayed and behave."},"options":{"type":"array","items":{"type":"object","properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The text to display for this option."},"value":{"type":"string","description":"The stable value associated with this option."}},"required":["label","value"],"additionalProperties":false},"description":"The list of available options to choose from."},"value":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The list of currently selected values."},"displayStyle":{"type":"string","enum":["checkbox","chips"],"description":"The display style of the component."},"filterable":{"type":"boolean","description":"If true, displays a search input to filter the options."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["options","value"]},"Column":{"properties":{"children":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"componentId":{"type":"string"},"path":{"type":"string"}},"required":["componentId","path"],"additionalProperties":false}],"description":"Static child IDs array or template object."},"align":{"type":"string","enum":["start","center","end","stretch"]},"justify":{"type":"string","enum":["start","center","end","stretch","spaceBetween","spaceAround","spaceEvenly"]}},"required":["children"]},"DateTimeInput":{"properties":{"value":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"The current date/time value. Typically bound to a data path."},"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The text label for the input field."},"enableDate":{"type":"boolean","description":"Whether to show the date picker."},"enableTime":{"type":"boolean","description":"Whether to show the time picker."},"outputFormat":{"type":"string","description":"Format string for the output value. Supports YYYY, MM, DD, HH, and mm."},"min":{"type":"string","description":"Minimum allowed date/time value."},"max":{"type":"string","description":"Maximum allowed date/time value."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["value"]},"Divider":{"properties":{"axis":{"type":"string","enum":["horizontal","vertical"]}},"required":[]},"Icon":{"properties":{"name":{"oneOf":[{"type":"string","enum":["account_circle"]},{"type":"string","enum":["add"]},{"type":"string","enum":["arrow_back"]},{"type":"string","enum":["arrow_forward"]},{"type":"string","enum":["camera"]},{"type":"string","enum":["check"]},{"type":"string","enum":["close"]},{"type":"string","enum":["delete"]},{"type":"string","enum":["edit"]},{"type":"string","enum":["error"]},{"type":"string","enum":["favorite"]},{"type":"string","enum":["help"]},{"type":"string","enum":["home"]},{"type":"string","enum":["info"]},{"type":"string","enum":["location_on"]},{"type":"string","enum":["lock"]},{"type":"string","enum":["mail"]},{"type":"string","enum":["menu"]},{"type":"string","enum":["more_vert"]},{"type":"string","enum":["pause"]},{"type":"string","enum":["person"]},{"type":"string","enum":["play_arrow"]},{"type":"string","enum":["refresh"]},{"type":"string","enum":["search"]},{"type":"string","enum":["send"]},{"type":"string","enum":["settings"]},{"type":"string","enum":["share"]},{"type":"string","enum":["star"]},{"type":"string","enum":["warning"]},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"Google Material icon ligature name, e.g. \\"info\\", \\"account_circle\\", \\"arrow_back\\"."},"size":{"type":"string","enum":["sm","md","lg"]},"color":{"type":"string","enum":["primary","muted","inherit"]}},"required":["name"]},"Image":{"properties":{"url":{"type":"string","description":"Image URL or path binding."},"fit":{"type":"string","enum":["contain","cover","fill","none","scale-down"]},"mode":{"type":"string","enum":["center","scaleToFill","aspectFit","aspectFill"]},"variant":{"type":"string","enum":["icon","avatar","smallFeature","mediumFeature","largeFeature","header"]},"weight":{"type":"number"}},"required":["url"]},"LineChart":{"properties":{"labels":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"Category labels shown along the x axis."},"series":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"values":{"type":"array","items":{"type":"number"}},"color":{"type":"string"}},"required":["name","values"],"additionalProperties":false}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"One or more line series to render over the shared labels."},"variant":{"type":"string","enum":["linear","natural","step"]},"xLabel":{"type":"string"},"yLabel":{"type":"string"},"showGrid":{"type":"boolean"},"showLegend":{"type":"boolean"},"height":{"type":"number"}},"required":["labels","series"]},"List":{"properties":{"children":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"componentId":{"type":"string"},"path":{"type":"string"}},"required":["componentId","path"],"additionalProperties":false}],"description":"Static child IDs array or template object."},"direction":{"type":"string","enum":["horizontal","vertical"]},"align":{"type":"string","enum":["start","center","end","stretch"]}},"required":["children"]},"Loading":{"properties":{"variant":{"type":"string","enum":["inline","block"],"description":"Visual density for the skeleton placeholder."}},"required":[]},"Modal":{"properties":{"trigger":{"type":"string","description":"The ID of the component that opens the modal when interacted with."},"content":{"type":"string","description":"The ID of the component to display inside the modal."}},"required":["trigger","content"]},"PieChart":{"properties":{"data":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"},"color":{"type":"string"}},"required":["name","value"],"additionalProperties":false}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"Pie slices to render."},"variant":{"type":"string","enum":["pie","donut"],"description":"Render the chart as a flat pie or a donut."},"title":{"type":"string","description":"Optional title shown above the chart."},"subtitle":{"type":"string","description":"Optional subtitle shown under the title."},"showLegend":{"type":"boolean","description":"Show the legend below the chart."},"showPercentages":{"type":"boolean","description":"Show percentage values in the legend."},"height":{"type":"number","description":"Chart height in pixels."},"paddingAngle":{"type":"number","description":"Padding angle between slices, in degrees."},"colors":{"type":"array","items":{"type":"string"},"description":"Custom color palette for the slices."}},"required":["data"]},"RadioGroup":{"properties":{"items":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The list of string options to display."},"value":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The currently selected value."},"usageHint":{"type":"string","enum":["default","card","row"],"description":"A hint for the visual style of the radio group."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}]},"message":{"type":"string"}},"required":["condition","message"],"additionalProperties":false}}},"required":["items","value"]},"Row":{"properties":{"children":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"object","properties":{"componentId":{"type":"string"},"path":{"type":"string"}},"required":["componentId","path"],"additionalProperties":false}],"description":"Static child IDs array or template object."},"justify":{"type":"string","enum":["start","center","end","stretch","spaceBetween","spaceAround","spaceEvenly"]},"align":{"type":"string","enum":["start","center","end","stretch"]}},"required":["children"]},"Slider":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The label for the slider."},"min":{"type":"number","description":"The minimum value of the slider."},"max":{"type":"number","description":"The maximum value of the slider."},"value":{"oneOf":[{"type":"number"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The current value of the slider."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["max","value"]},"Tabs":{"properties":{"tabs":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"child":{"type":"string"}},"required":["title","child"],"additionalProperties":false}}},"required":["tabs"]},"Text":{"properties":{"text":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":true},"returnType":{"type":"string","enum":["string","number","boolean","object","array","any","void"]}},"required":["call","args"],"additionalProperties":false}],"description":"Literal text, path binding, or function call."},"variant":{"type":"string","enum":["h1","h2","h3","h4","h5","caption","body","markdown"]},"emphasis":{"type":"string","enum":["medium","strong"]}},"required":["text"]},"TextField":{"properties":{"label":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"The text label for the input field."},"value":{"oneOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}],"description":"The value of the text field."},"variant":{"type":"string","enum":["number","longText","shortText","obscured"],"description":"The type of input field to display."},"validationRegexp":{"type":"string","description":"A regular expression used for client-side validation of the input."},"checks":{"type":"array","items":{"type":"object","properties":{"condition":{"oneOf":[{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},{"type":"object","properties":{"call":{"type":"string"},"args":{"type":"object","additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false}]}},"returnType":{"type":"string","enum":["boolean"]}},"required":["call"],"additionalProperties":false}],"description":"The condition that indicates whether the check passes."},"message":{"type":"string","description":"The error message to display if the check fails."}},"required":["condition","message"],"additionalProperties":false},"description":"A list of checks to perform."}},"required":["label"]}},"functions":{"required":{"type":"object","description":"Checks that the value is not null, undefined, or empty.","properties":{"call":{"const":"required"},"args":{"type":"object","properties":{"value":{"description":"The value to check."}},"required":["value"],"additionalProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"regex":{"type":"object","description":"Checks that the value matches a regular expression string.","properties":{"call":{"const":"regex"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"},"pattern":{"type":"string","description":"The regex pattern to match against."}},"required":["value","pattern"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"length":{"type":"object","description":"Checks string length constraints.","properties":{"call":{"const":"length"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"},"min":{"type":"integer","minimum":0,"description":"The minimum allowed length."},"max":{"type":"integer","minimum":0,"description":"The maximum allowed length."}},"required":["value"],"anyOf":[{"required":["min"]},{"required":["max"]}],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"numeric":{"type":"object","description":"Checks numeric range constraints.","properties":{"call":{"const":"numeric"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber"},"min":{"type":"number","description":"The minimum allowed value."},"max":{"type":"number","description":"The maximum allowed value."}},"required":["value"],"anyOf":[{"required":["min"]},{"required":["max"]}],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"email":{"type":"object","description":"Checks that the value is a valid email address.","properties":{"call":{"const":"email"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"formatString":{"type":"object","description":"Performs string interpolation of data model values and other functions in the catalog functions list and returns the resulting string. The value string can contain interpolated expressions in the `${expression}` format. Supported expression types include: JSON Pointer paths to the data model (e.g., `${/absolute/path}` or `${relative/path}`), and client-side function calls (e.g., `${now()}`). Function arguments must be named (e.g., `${formatDate(value:${/currentDate}, format:\'MM-dd\')}`). To include a literal `${` sequence, escape it as `\\\\${`.","properties":{"call":{"const":"formatString"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicString"}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"formatNumber":{"type":"object","description":"Formats a number with the specified grouping and decimal precision.","properties":{"call":{"const":"formatNumber"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"The number to format."},"decimals":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"Optional. The number of decimal places to show. Defaults to 0 or 2 depending on locale."},"grouping":{"$ref":"common_types.json#/$defs/DynamicBoolean","description":"Optional. If true, uses locale-specific grouping separators (e.g. \'1,000\'). If false, returns raw digits (e.g. \'1000\'). Defaults to true."}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"formatCurrency":{"type":"object","description":"Formats a number as a currency string.","properties":{"call":{"const":"formatCurrency"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"The monetary amount."},"currency":{"$ref":"common_types.json#/$defs/DynamicString","description":"The ISO 4217 currency code (e.g., \'USD\', \'EUR\')."},"decimals":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"Optional. The number of decimal places to show. Defaults to 0 or 2 depending on locale."},"grouping":{"$ref":"common_types.json#/$defs/DynamicBoolean","description":"Optional. If true, uses locale-specific grouping separators (e.g. \'1,000\'). If false, returns raw digits (e.g. \'1000\'). Defaults to true."}},"required":["currency","value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"formatDate":{"type":"object","description":"Formats a timestamp into a string using a pattern.","properties":{"call":{"const":"formatDate"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicValue","description":"The date to format."},"format":{"$ref":"common_types.json#/$defs/DynamicString","description":"A Unicode TR35 date pattern string.\\n\\nToken Reference:\\n- Year: \'yy\' (26), \'yyyy\' (2026)\\n- Month: \'M\' (1), \'MM\' (01), \'MMM\' (Jan), \'MMMM\' (January)\\n- Day: \'d\' (1), \'dd\' (01), \'E\' (Tue), \'EEEE\' (Tuesday)\\n- Hour (12h): \'h\' (1-12), \'hh\' (01-12) - requires \'a\' for AM/PM\\n- Hour (24h): \'H\' (0-23), \'HH\' (00-23) - Military Time\\n- Minute: \'mm\' (00-59)\\n- Second: \'ss\' (00-59)\\n- Period: \'a\' (AM/PM)\\n\\nExamples:\\n- \'MMM dd, yyyy\' -> \'Jan 16, 2026\'\\n- \'HH:mm\' -> \'14:30\' (Military)\\n- \'h:mm a\' -> \'2:30 PM\'\\n- \'EEEE, d MMMM\' -> \'Friday, 16 January\'"}},"required":["format","value"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"pluralize":{"type":"object","description":"Returns a localized string based on the Common Locale Data Repository (CLDR) plural category of the count (zero, one, two, few, many, other). Requires an \'other\' fallback. For English, just use \'one\' and \'other\'.","properties":{"call":{"const":"pluralize"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicNumber","description":"The numeric value used to determine the plural category."},"zero":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'zero\' category (e.g., 0 items)."},"one":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'one\' category (e.g., 1 item)."},"two":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'two\' category (used in Arabic, Welsh, etc.)."},"few":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'few\' category (e.g., small groups in Slavic languages)."},"many":{"$ref":"common_types.json#/$defs/DynamicString","description":"String for the \'many\' category (e.g., large groups in various languages)."},"other":{"$ref":"common_types.json#/$defs/DynamicString","description":"The default/fallback string (used for general plural cases)."}},"required":["value","other"],"unevaluatedProperties":false},"returnType":{"const":"string"}},"required":["call","args"],"unevaluatedProperties":false},"openUrl":{"type":"object","description":"Opens the specified URL in a browser or handler. This function has no return value.","properties":{"call":{"const":"openUrl"},"args":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL to open."}},"required":["url"],"additionalProperties":false},"returnType":{"const":"void"}},"required":["call","args"],"unevaluatedProperties":false},"and":{"type":"object","description":"Performs a logical AND operation on a list of boolean values.","properties":{"call":{"const":"and"},"args":{"type":"object","properties":{"values":{"type":"array","description":"The list of boolean values to evaluate.","items":{"$ref":"common_types.json#/$defs/DynamicBoolean"},"minItems":2}},"required":["values"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"or":{"type":"object","description":"Performs a logical OR operation on a list of boolean values.","properties":{"call":{"const":"or"},"args":{"type":"object","properties":{"values":{"type":"array","description":"The list of boolean values to evaluate.","items":{"$ref":"common_types.json#/$defs/DynamicBoolean"},"minItems":2}},"required":["values"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false},"not":{"type":"object","description":"Performs a logical NOT operation on a boolean value.","properties":{"call":{"const":"not"},"args":{"type":"object","properties":{"value":{"$ref":"common_types.json#/$defs/DynamicBoolean","description":"The boolean value to negate."}},"required":["value"],"unevaluatedProperties":false},"returnType":{"const":"boolean"}},"required":["call","args"],"unevaluatedProperties":false}}}');
|
|
338
338
|
const a2ui_catalog_BASIC_CATALOG_ID = 'https://a2ui.org/specification/v0_9/basic_catalog.json';
|
|
339
339
|
const COMPONENT_SUMMARIES = {
|
|
340
340
|
Button: 'Clickable button. MUST always include an action. Has no "label" prop; use a child Text component for the visible label.',
|