@assistant-ui/react-generative-ui 0.0.20 → 0.0.22

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.
Files changed (189) hide show
  1. package/LICENSE +1 -1
  2. package/dist/JSONGenerativeUI.client.d.ts.map +1 -1
  3. package/dist/JSONGenerativeUI.client.js +30 -13
  4. package/dist/JSONGenerativeUI.client.js.map +1 -1
  5. package/dist/RadioGroupScope.d.ts +6 -0
  6. package/dist/RadioGroupScope.d.ts.map +1 -0
  7. package/dist/RadioGroupScope.js +25 -0
  8. package/dist/RadioGroupScope.js.map +1 -0
  9. package/dist/a2ui/BindingContext.d.ts +11 -0
  10. package/dist/a2ui/BindingContext.d.ts.map +1 -0
  11. package/dist/a2ui/BindingContext.js +12 -0
  12. package/dist/a2ui/BindingContext.js.map +1 -0
  13. package/dist/a2ui/PresentRenderer.d.ts +11 -0
  14. package/dist/a2ui/PresentRenderer.d.ts.map +1 -0
  15. package/dist/a2ui/PresentRenderer.js +39 -0
  16. package/dist/a2ui/PresentRenderer.js.map +1 -0
  17. package/dist/a2ui/convert.d.ts +6 -0
  18. package/dist/a2ui/convert.d.ts.map +1 -1
  19. package/dist/a2ui/convert.js +369 -87
  20. package/dist/a2ui/convert.js.map +1 -1
  21. package/dist/a2ui/dataModel.d.ts +9 -0
  22. package/dist/a2ui/dataModel.d.ts.map +1 -0
  23. package/dist/a2ui/dataModel.js +44 -0
  24. package/dist/a2ui/dataModel.js.map +1 -0
  25. package/dist/a2ui/reducer.d.ts +5 -0
  26. package/dist/a2ui/reducer.d.ts.map +1 -1
  27. package/dist/a2ui/reducer.js +3 -3
  28. package/dist/a2ui/reducer.js.map +1 -1
  29. package/dist/a2ui/types.d.ts +8 -2
  30. package/dist/a2ui/types.d.ts.map +1 -1
  31. package/dist/a2ui/types.js.map +1 -1
  32. package/dist/a2ui/valueFunctions.d.ts +16 -0
  33. package/dist/a2ui/valueFunctions.d.ts.map +1 -0
  34. package/dist/a2ui/valueFunctions.js +332 -0
  35. package/dist/a2ui/valueFunctions.js.map +1 -0
  36. package/dist/actionRegistry.d.ts +1 -1
  37. package/dist/actionRegistry.js.map +1 -1
  38. package/dist/answeredValues.d.ts +16 -0
  39. package/dist/answeredValues.d.ts.map +1 -0
  40. package/dist/answeredValues.js +37 -0
  41. package/dist/answeredValues.js.map +1 -0
  42. package/dist/constants.d.ts +2 -0
  43. package/dist/constants.d.ts.map +1 -1
  44. package/dist/constants.js +3 -1
  45. package/dist/constants.js.map +1 -1
  46. package/dist/fieldReferences.d.ts +9 -0
  47. package/dist/fieldReferences.d.ts.map +1 -0
  48. package/dist/fieldReferences.js +53 -0
  49. package/dist/fieldReferences.js.map +1 -0
  50. package/dist/generativeUIToJSX.js +3 -3
  51. package/dist/generativeUIToJSX.js.map +1 -1
  52. package/dist/index.js +2 -2
  53. package/dist/index.server.js +2 -2
  54. package/dist/index.shared.js +2 -2
  55. package/dist/ir.d.ts +1 -1
  56. package/dist/ir.js.map +1 -1
  57. package/dist/renderGenerativeUI.d.ts.map +1 -1
  58. package/dist/renderGenerativeUI.js +12 -1
  59. package/dist/renderGenerativeUI.js.map +1 -1
  60. package/dist/slack/constants.d.ts +2 -0
  61. package/dist/slack/constants.d.ts.map +1 -1
  62. package/dist/slack/constants.js +3 -1
  63. package/dist/slack/constants.js.map +1 -1
  64. package/dist/slack/decodeBlockAction.d.ts +3 -1
  65. package/dist/slack/decodeBlockAction.d.ts.map +1 -1
  66. package/dist/slack/decodeBlockAction.js +58 -7
  67. package/dist/slack/decodeBlockAction.js.map +1 -1
  68. package/dist/slack/fromSlackBlocks.d.ts.map +1 -1
  69. package/dist/slack/fromSlackBlocks.js +20 -3
  70. package/dist/slack/fromSlackBlocks.js.map +1 -1
  71. package/dist/slack/toSlackBlocks.d.ts.map +1 -1
  72. package/dist/slack/toSlackBlocks.js +187 -19
  73. package/dist/slack/toSlackBlocks.js.map +1 -1
  74. package/dist/slack/types.d.ts +4 -0
  75. package/dist/slack/types.d.ts.map +1 -1
  76. package/dist/teams/constants.d.ts +1 -1
  77. package/dist/teams/constants.d.ts.map +1 -1
  78. package/dist/teams/constants.js +1 -1
  79. package/dist/teams/constants.js.map +1 -1
  80. package/dist/teams/decodeSubmitData.d.ts +4 -0
  81. package/dist/teams/decodeSubmitData.d.ts.map +1 -1
  82. package/dist/teams/decodeSubmitData.js +6 -1
  83. package/dist/teams/decodeSubmitData.js.map +1 -1
  84. package/dist/teams/toAdaptiveCard.d.ts +5 -4
  85. package/dist/teams/toAdaptiveCard.d.ts.map +1 -1
  86. package/dist/teams/toAdaptiveCard.js +56 -17
  87. package/dist/teams/toAdaptiveCard.js.map +1 -1
  88. package/dist/teams/types.d.ts +4 -1
  89. package/dist/teams/types.d.ts.map +1 -1
  90. package/dist/vocabulary/alert.d.ts +9 -2
  91. package/dist/vocabulary/alert.d.ts.map +1 -1
  92. package/dist/vocabulary/alert.js +116 -19
  93. package/dist/vocabulary/alert.js.map +1 -1
  94. package/dist/vocabulary/collectFormValues.d.ts +2 -1
  95. package/dist/vocabulary/collectFormValues.d.ts.map +1 -1
  96. package/dist/vocabulary/collectFormValues.js +10 -3
  97. package/dist/vocabulary/collectFormValues.js.map +1 -1
  98. package/dist/vocabulary/data.d.ts +22 -5
  99. package/dist/vocabulary/data.d.ts.map +1 -1
  100. package/dist/vocabulary/data.js +278 -83
  101. package/dist/vocabulary/data.js.map +1 -1
  102. package/dist/vocabulary/dispatch.d.ts +3 -2
  103. package/dist/vocabulary/dispatch.d.ts.map +1 -1
  104. package/dist/vocabulary/dispatch.js +33 -4
  105. package/dist/vocabulary/dispatch.js.map +1 -1
  106. package/dist/vocabulary/fact.d.ts +8 -1
  107. package/dist/vocabulary/fact.d.ts.map +1 -1
  108. package/dist/vocabulary/fact.js +37 -11
  109. package/dist/vocabulary/fact.js.map +1 -1
  110. package/dist/vocabulary/form.d.ts.map +1 -1
  111. package/dist/vocabulary/form.js +3 -3
  112. package/dist/vocabulary/form.js.map +1 -1
  113. package/dist/vocabulary/formatValue.d.ts +7 -0
  114. package/dist/vocabulary/formatValue.d.ts.map +1 -0
  115. package/dist/vocabulary/formatValue.js +76 -0
  116. package/dist/vocabulary/formatValue.js.map +1 -0
  117. package/dist/vocabulary/icon.d.ts +1 -1
  118. package/dist/vocabulary/interactive.d.ts +137 -8
  119. package/dist/vocabulary/interactive.d.ts.map +1 -1
  120. package/dist/vocabulary/interactive.js +404 -103
  121. package/dist/vocabulary/interactive.js.map +1 -1
  122. package/dist/vocabulary/layout.d.ts.map +1 -1
  123. package/dist/vocabulary/layout.js +4 -4
  124. package/dist/vocabulary/layout.js.map +1 -1
  125. package/dist/vocabulary/list.js +2 -2
  126. package/dist/vocabulary/list.js.map +1 -1
  127. package/dist/vocabulary/text.d.ts +1 -1
  128. package/package.json +6 -3
  129. package/src/JSONGenerativeUI.client.tsx +84 -40
  130. package/src/JSONGenerativeUI.test.tsx +964 -68
  131. package/src/RadioGroupScope.server.test.tsx +24 -0
  132. package/src/RadioGroupScope.tsx +34 -0
  133. package/src/a2ui/BindingContext.ts +26 -0
  134. package/src/a2ui/PresentRenderer.tsx +83 -0
  135. package/src/a2ui/convert.test.ts +1982 -145
  136. package/src/a2ui/convert.ts +677 -137
  137. package/src/a2ui/dataModel.ts +69 -0
  138. package/src/a2ui/reducer.test.ts +35 -0
  139. package/src/a2ui/reducer.ts +5 -4
  140. package/src/a2ui/types.ts +9 -2
  141. package/src/a2ui/valueFunctions.test.ts +271 -0
  142. package/src/a2ui/valueFunctions.ts +523 -0
  143. package/src/actionRegistry.ts +1 -1
  144. package/src/answeredValues.test.ts +33 -0
  145. package/src/answeredValues.tsx +70 -0
  146. package/src/constants.ts +4 -0
  147. package/src/fieldReferences.test.ts +66 -0
  148. package/src/fieldReferences.ts +83 -0
  149. package/src/generativeUIToJSX.test.ts +18 -0
  150. package/src/generativeUIToJSX.ts +4 -6
  151. package/src/index.server.test.ts +106 -0
  152. package/src/ir.ts +1 -1
  153. package/src/renderGenerativeUI.test.tsx +14 -5
  154. package/src/renderGenerativeUI.tsx +30 -1
  155. package/src/slack/a2uiSlack.test.ts +198 -0
  156. package/src/slack/constants.ts +3 -0
  157. package/src/slack/decodeBlockAction.test.ts +98 -0
  158. package/src/slack/decodeBlockAction.ts +110 -17
  159. package/src/slack/fromSlackBlocks.test.ts +222 -3
  160. package/src/slack/fromSlackBlocks.ts +53 -2
  161. package/src/slack/toSlackBlocks.test.ts +682 -3
  162. package/src/slack/toSlackBlocks.ts +374 -23
  163. package/src/slack/types.ts +4 -0
  164. package/src/teams/constants.ts +1 -1
  165. package/src/teams/decodeSubmitData.test.ts +33 -0
  166. package/src/teams/decodeSubmitData.ts +9 -1
  167. package/src/teams/toAdaptiveCard.test.ts +219 -0
  168. package/src/teams/toAdaptiveCard.ts +93 -19
  169. package/src/teams/types.ts +4 -1
  170. package/src/vocabulary/alert.test.tsx +288 -7
  171. package/src/vocabulary/alert.tsx +168 -26
  172. package/src/vocabulary/collectFormValues.test.ts +28 -1
  173. package/src/vocabulary/collectFormValues.ts +25 -5
  174. package/src/vocabulary/data.test.tsx +248 -6
  175. package/src/vocabulary/data.tsx +398 -100
  176. package/src/vocabulary/dispatch.ts +63 -2
  177. package/src/vocabulary/fact.test.tsx +67 -0
  178. package/src/vocabulary/fact.tsx +40 -9
  179. package/src/vocabulary/form.tsx +7 -2
  180. package/src/vocabulary/formatValue.test.ts +72 -0
  181. package/src/vocabulary/formatValue.ts +127 -0
  182. package/src/vocabulary/index.test.ts +2 -0
  183. package/src/vocabulary/interactive.dispatch.test.tsx +167 -79
  184. package/src/vocabulary/interactive.dom.test.tsx +1699 -0
  185. package/src/vocabulary/interactive.test.tsx +60 -4
  186. package/src/vocabulary/interactive.tsx +770 -151
  187. package/src/vocabulary/layout.test.tsx +6 -4
  188. package/src/vocabulary/layout.tsx +13 -2
  189. package/src/vocabulary/list.tsx +2 -2
@@ -1,22 +1,111 @@
1
- import { type ReactNode } from "react";
1
+ import * as React from "react";
2
2
  import { z } from "zod";
3
3
  import type { Action } from "../ir.js";
4
+ import { BUTTON_STYLES } from "../ir.js";
4
5
  import type { GenerativeUIDispatch, GenerativeUIStatus } from "../types.js";
5
6
  type Option = {
6
7
  label: string;
8
+ description?: string;
7
9
  value: string;
8
10
  };
9
11
  type RadioGroupRenderProps = {
12
+ value?: string;
10
13
  options: Option[];
11
14
  name?: string;
12
15
  label?: string;
13
16
  defaultValue?: string;
14
- children?: ReactNode;
17
+ children?: React.ReactNode;
15
18
  $status: GenerativeUIStatus;
16
19
  $action?: Action;
17
20
  $dispatch?: GenerativeUIDispatch;
18
21
  };
19
- declare function RadioGroupRender({ options, name, label, defaultValue, children, $action, $dispatch, }: RadioGroupRenderProps): import("react").JSX.Element;
22
+ declare function RadioGroupRender({ value, options, name, label, defaultValue, children, $action, $dispatch, }: RadioGroupRenderProps): React.JSX.Element;
23
+ type CheckboxGroupRenderProps = {
24
+ value?: string[];
25
+ options: Option[];
26
+ name?: string;
27
+ label?: string;
28
+ defaultValue?: string[];
29
+ children?: React.ReactNode;
30
+ $status: GenerativeUIStatus;
31
+ $action?: Action;
32
+ $dispatch?: GenerativeUIDispatch;
33
+ };
34
+ declare function CheckboxGroupRender({ value, options, name, label, defaultValue, children, $action, $dispatch, }: CheckboxGroupRenderProps): React.JSX.Element;
35
+ type SelectRenderProps = {
36
+ value?: string;
37
+ options: Option[];
38
+ placeholder?: string;
39
+ label?: string;
40
+ name?: string;
41
+ defaultValue?: string;
42
+ children?: React.ReactNode;
43
+ $status: GenerativeUIStatus;
44
+ $action?: Action;
45
+ $dispatch?: GenerativeUIDispatch;
46
+ };
47
+ declare function SelectRender({ value, options, placeholder, label, name, defaultValue, $action, $dispatch, children, }: SelectRenderProps): React.JSX.Element;
48
+ type InputRenderProps = {
49
+ value?: string;
50
+ inputType?: "text" | "password" | "number";
51
+ placeholder?: string;
52
+ multiline?: boolean;
53
+ label?: string;
54
+ name?: string;
55
+ defaultValue?: string;
56
+ $status: GenerativeUIStatus;
57
+ $action?: Action;
58
+ $dispatch?: GenerativeUIDispatch;
59
+ };
60
+ declare function InputRender({ value, inputType, placeholder, multiline, label, name, defaultValue, $action, $dispatch, }: InputRenderProps): React.JSX.Element;
61
+ type DatePickerRenderProps = {
62
+ value?: string;
63
+ min?: string;
64
+ max?: string;
65
+ label?: string;
66
+ name?: string;
67
+ $status: GenerativeUIStatus;
68
+ $action?: Action;
69
+ $dispatch?: GenerativeUIDispatch;
70
+ };
71
+ declare function DatePickerRender({ value, min, max, label, name, $action, $dispatch, }: DatePickerRenderProps): React.JSX.Element;
72
+ type CheckboxRenderProps = {
73
+ checked?: boolean;
74
+ label: string;
75
+ name?: string;
76
+ defaultChecked?: boolean;
77
+ variant?: "checkbox" | "switch";
78
+ $status: GenerativeUIStatus;
79
+ $action?: Action;
80
+ $dispatch?: GenerativeUIDispatch;
81
+ };
82
+ declare function CheckboxRender({ checked, label, name, defaultChecked, variant, $action, $dispatch, }: CheckboxRenderProps): React.JSX.Element;
83
+ type SliderRenderProps = {
84
+ value?: number;
85
+ name?: string;
86
+ label?: string;
87
+ min: number;
88
+ max: number;
89
+ step?: number;
90
+ defaultValue?: number;
91
+ unit?: string;
92
+ $status: GenerativeUIStatus;
93
+ $action?: Action;
94
+ $dispatch?: GenerativeUIDispatch;
95
+ };
96
+ declare function SliderRender({ value, name, label, min, max, step, defaultValue, unit, $action, $dispatch, }: SliderRenderProps): React.JSX.Element;
97
+ type ButtonRenderProps = {
98
+ label: string;
99
+ buttonStyle?: (typeof BUTTON_STYLES)[number];
100
+ block?: boolean;
101
+ submit?: boolean;
102
+ undoable?: boolean;
103
+ children?: React.ReactNode;
104
+ $status: GenerativeUIStatus;
105
+ $action?: Action;
106
+ $dispatch?: GenerativeUIDispatch;
107
+ };
108
+ declare function ButtonRender({ label, buttonStyle, block, submit, undoable, children, $action, $dispatch, }: ButtonRenderProps): React.JSX.Element;
20
109
  export declare const interactiveVocabulary: {
21
110
  Button: {
22
111
  description: string;
@@ -31,8 +120,9 @@ export declare const interactiveVocabulary: {
31
120
  }>>;
32
121
  block: z.ZodOptional<z.ZodBoolean>;
33
122
  submit: z.ZodOptional<z.ZodBoolean>;
123
+ undoable: z.ZodOptional<z.ZodBoolean>;
34
124
  }, z.core.$strip>;
35
- render: ({ label, buttonStyle, block, submit, $action, $dispatch, children, }: any) => import("react").JSX.Element;
125
+ render: typeof ButtonRender;
36
126
  };
37
127
  Select: {
38
128
  description: string;
@@ -44,18 +134,25 @@ export declare const interactiveVocabulary: {
44
134
  placeholder: z.ZodOptional<z.ZodString>;
45
135
  label: z.ZodOptional<z.ZodString>;
46
136
  name: z.ZodOptional<z.ZodString>;
137
+ defaultValue: z.ZodOptional<z.ZodString>;
47
138
  }, z.core.$strip>;
48
- render: ({ options, placeholder, label, name, $action, $dispatch, children, }: any) => import("react").JSX.Element;
139
+ render: typeof SelectRender;
49
140
  };
50
141
  Input: {
51
142
  description: string;
52
143
  properties: z.ZodObject<{
144
+ inputType: z.ZodOptional<z.ZodEnum<{
145
+ number: "number";
146
+ text: "text";
147
+ password: "password";
148
+ }>>;
53
149
  placeholder: z.ZodOptional<z.ZodString>;
54
150
  multiline: z.ZodOptional<z.ZodBoolean>;
55
151
  label: z.ZodOptional<z.ZodString>;
56
152
  name: z.ZodOptional<z.ZodString>;
153
+ defaultValue: z.ZodOptional<z.ZodString>;
57
154
  }, z.core.$strip>;
58
- render: ({ placeholder, multiline, label, name, $action, $dispatch }: any) => import("react").JSX.Element;
155
+ render: typeof InputRender;
59
156
  };
60
157
  DatePicker: {
61
158
  description: string;
@@ -66,7 +163,7 @@ export declare const interactiveVocabulary: {
66
163
  label: z.ZodOptional<z.ZodString>;
67
164
  name: z.ZodOptional<z.ZodString>;
68
165
  }, z.core.$strip>;
69
- render: ({ value, min, max, label, name, $action, $dispatch }: any) => import("react").JSX.Element;
166
+ render: typeof DatePickerRender;
70
167
  };
71
168
  Checkbox: {
72
169
  description: string;
@@ -74,8 +171,25 @@ export declare const interactiveVocabulary: {
74
171
  label: z.ZodString;
75
172
  name: z.ZodOptional<z.ZodString>;
76
173
  defaultChecked: z.ZodOptional<z.ZodBoolean>;
174
+ variant: z.ZodOptional<z.ZodEnum<{
175
+ switch: "switch";
176
+ checkbox: "checkbox";
177
+ }>>;
77
178
  }, z.core.$strip>;
78
- render: ({ label, name, defaultChecked, $action, $dispatch }: any) => import("react").JSX.Element;
179
+ render: typeof CheckboxRender;
180
+ };
181
+ Slider: {
182
+ description: string;
183
+ properties: z.ZodObject<{
184
+ name: z.ZodOptional<z.ZodString>;
185
+ label: z.ZodOptional<z.ZodString>;
186
+ min: z.ZodNumber;
187
+ max: z.ZodNumber;
188
+ step: z.ZodOptional<z.ZodNumber>;
189
+ defaultValue: z.ZodOptional<z.ZodNumber>;
190
+ unit: z.ZodOptional<z.ZodString>;
191
+ }, z.core.$strip>;
192
+ render: typeof SliderRender;
79
193
  };
80
194
  RadioGroup: {
81
195
  description: string;
@@ -83,6 +197,7 @@ export declare const interactiveVocabulary: {
83
197
  options: z.ZodArray<z.ZodObject<{
84
198
  label: z.ZodString;
85
199
  value: z.ZodString;
200
+ description: z.ZodOptional<z.ZodString>;
86
201
  }, z.core.$strip>>;
87
202
  name: z.ZodOptional<z.ZodString>;
88
203
  label: z.ZodOptional<z.ZodString>;
@@ -90,6 +205,20 @@ export declare const interactiveVocabulary: {
90
205
  }, z.core.$strip>;
91
206
  render: typeof RadioGroupRender;
92
207
  };
208
+ CheckboxGroup: {
209
+ description: string;
210
+ properties: z.ZodObject<{
211
+ options: z.ZodArray<z.ZodObject<{
212
+ label: z.ZodString;
213
+ value: z.ZodString;
214
+ description: z.ZodOptional<z.ZodString>;
215
+ }, z.core.$strip>>;
216
+ name: z.ZodOptional<z.ZodString>;
217
+ label: z.ZodOptional<z.ZodString>;
218
+ defaultValue: z.ZodOptional<z.ZodArray<z.ZodString>>;
219
+ }, z.core.$strip>;
220
+ render: typeof CheckboxGroupRender;
221
+ };
93
222
  };
94
223
  export {};
95
224
  //# sourceMappingURL=interactive.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/vocabulary/interactive.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAc;AAEpC,OAAO,KAAK,EACV,oBAAoB,EAEpB,kBAAkB,EACnB,oBAAiB;AASlB,KAAK,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAU/C,KAAK,qBAAqB,GAAG;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC,CAAC;AAEF,iBAAS,gBAAgB,CAAC,EACxB,OAAO,EACP,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,SAAS,GACV,EAAE,qBAAqB,+BA4BvB;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuNH,CAAC"}
1
+ {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/vocabulary/interactive.tsx"],"names":[],"mappings":"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"}