@a2ui/web_core 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/README.md +13 -0
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/src/v0_8/data/guards.d.ts +24 -0
  4. package/dist/src/v0_8/data/guards.d.ts.map +1 -0
  5. package/dist/src/v0_8/data/guards.js +153 -0
  6. package/dist/src/v0_8/data/guards.js.map +1 -0
  7. package/dist/src/v0_8/data/model-processor.d.ts +79 -0
  8. package/dist/src/v0_8/data/model-processor.d.ts.map +1 -0
  9. package/dist/src/v0_8/data/model-processor.js +627 -0
  10. package/dist/src/v0_8/data/model-processor.js.map +1 -0
  11. package/dist/src/v0_8/events/base.d.ts +24 -0
  12. package/dist/src/v0_8/events/base.d.ts.map +1 -0
  13. package/dist/src/v0_8/events/base.js +17 -0
  14. package/dist/src/v0_8/events/base.js.map +1 -0
  15. package/dist/src/v0_8/events/index.d.ts +18 -0
  16. package/dist/src/v0_8/events/index.d.ts.map +1 -0
  17. package/dist/src/v0_8/events/index.js +18 -0
  18. package/dist/src/v0_8/events/index.js.map +1 -0
  19. package/dist/src/v0_8/events/validation-event.d.ts +46 -0
  20. package/dist/src/v0_8/events/validation-event.d.ts.map +1 -0
  21. package/dist/src/v0_8/events/validation-event.js +33 -0
  22. package/dist/src/v0_8/events/validation-event.js.map +1 -0
  23. package/dist/src/v0_8/index.d.ts +743 -0
  24. package/dist/src/v0_8/index.d.ts.map +1 -0
  25. package/dist/src/v0_8/index.js +12 -0
  26. package/dist/src/v0_8/index.js.map +1 -0
  27. package/dist/src/v0_8/schemas/a2ui_client_capabilities_schema.json +23 -0
  28. package/dist/src/v0_8/schemas/catalog_description_schema.json +34 -0
  29. package/dist/src/v0_8/schemas/client_to_server.json +53 -0
  30. package/dist/src/v0_8/schemas/server_to_client.json +148 -0
  31. package/dist/src/v0_8/schemas/server_to_client_with_standard_catalog.json +823 -0
  32. package/dist/src/v0_8/schemas/standard_catalog_definition.json +772 -0
  33. package/dist/src/v0_8/styles/behavior.d.ts +2 -0
  34. package/dist/src/v0_8/styles/behavior.d.ts.map +1 -0
  35. package/dist/src/v0_8/styles/behavior.js +54 -0
  36. package/dist/src/v0_8/styles/behavior.js.map +1 -0
  37. package/dist/src/v0_8/styles/border.d.ts +2 -0
  38. package/dist/src/v0_8/styles/border.d.ts.map +1 -0
  39. package/dist/src/v0_8/styles/border.js +41 -0
  40. package/dist/src/v0_8/styles/border.js.map +1 -0
  41. package/dist/src/v0_8/styles/colors.d.ts +2 -0
  42. package/dist/src/v0_8/styles/colors.d.ts.map +1 -0
  43. package/dist/src/v0_8/styles/colors.js +80 -0
  44. package/dist/src/v0_8/styles/colors.js.map +1 -0
  45. package/dist/src/v0_8/styles/icons.d.ts +11 -0
  46. package/dist/src/v0_8/styles/icons.d.ts.map +1 -0
  47. package/dist/src/v0_8/styles/icons.js +60 -0
  48. package/dist/src/v0_8/styles/icons.js.map +1 -0
  49. package/dist/src/v0_8/styles/index.d.ts +3 -0
  50. package/dist/src/v0_8/styles/index.d.ts.map +1 -0
  51. package/dist/src/v0_8/styles/index.js +35 -0
  52. package/dist/src/v0_8/styles/index.js.map +1 -0
  53. package/dist/src/v0_8/styles/layout.d.ts +2 -0
  54. package/dist/src/v0_8/styles/layout.d.ts.map +1 -0
  55. package/dist/src/v0_8/styles/layout.js +232 -0
  56. package/dist/src/v0_8/styles/layout.js.map +1 -0
  57. package/dist/src/v0_8/styles/opacity.d.ts +2 -0
  58. package/dist/src/v0_8/styles/opacity.d.ts.map +1 -0
  59. package/dist/src/v0_8/styles/opacity.js +24 -0
  60. package/dist/src/v0_8/styles/opacity.js.map +1 -0
  61. package/dist/src/v0_8/styles/shared.d.ts +2 -0
  62. package/dist/src/v0_8/styles/shared.d.ts.map +1 -0
  63. package/dist/src/v0_8/styles/shared.js +17 -0
  64. package/dist/src/v0_8/styles/shared.js.map +1 -0
  65. package/dist/src/v0_8/styles/type.d.ts +2 -0
  66. package/dist/src/v0_8/styles/type.d.ts.map +1 -0
  67. package/dist/src/v0_8/styles/type.js +156 -0
  68. package/dist/src/v0_8/styles/type.js.map +1 -0
  69. package/dist/src/v0_8/styles/utils.d.ts +6 -0
  70. package/dist/src/v0_8/styles/utils.d.ts.map +1 -0
  71. package/dist/src/v0_8/styles/utils.js +81 -0
  72. package/dist/src/v0_8/styles/utils.js.map +1 -0
  73. package/dist/src/v0_8/types/client-event.d.ts +66 -0
  74. package/dist/src/v0_8/types/client-event.d.ts.map +1 -0
  75. package/dist/src/v0_8/types/client-event.js +17 -0
  76. package/dist/src/v0_8/types/client-event.js.map +1 -0
  77. package/dist/src/v0_8/types/colors.d.ts +25 -0
  78. package/dist/src/v0_8/types/colors.d.ts.map +1 -0
  79. package/dist/src/v0_8/types/colors.js +19 -0
  80. package/dist/src/v0_8/types/colors.js.map +1 -0
  81. package/dist/src/v0_8/types/components.d.ts +176 -0
  82. package/dist/src/v0_8/types/components.d.ts.map +1 -0
  83. package/dist/src/v0_8/types/components.js +17 -0
  84. package/dist/src/v0_8/types/components.js.map +1 -0
  85. package/dist/src/v0_8/types/primitives.d.ts +43 -0
  86. package/dist/src/v0_8/types/primitives.d.ts.map +1 -0
  87. package/dist/src/v0_8/types/primitives.js +17 -0
  88. package/dist/src/v0_8/types/primitives.js.map +1 -0
  89. package/dist/src/v0_8/types/types.d.ts +411 -0
  90. package/dist/src/v0_8/types/types.d.ts.map +1 -0
  91. package/dist/src/v0_8/types/types.js +17 -0
  92. package/dist/src/v0_8/types/types.js.map +1 -0
  93. package/dist/src/v0_9/catalog/types.d.ts +27 -0
  94. package/dist/src/v0_9/catalog/types.d.ts.map +1 -0
  95. package/dist/src/v0_9/catalog/types.js +11 -0
  96. package/dist/src/v0_9/catalog/types.js.map +1 -0
  97. package/dist/src/v0_9/common/events.d.ts +24 -0
  98. package/dist/src/v0_9/common/events.d.ts.map +1 -0
  99. package/dist/src/v0_9/common/events.js +29 -0
  100. package/dist/src/v0_9/common/events.js.map +1 -0
  101. package/dist/src/v0_9/index.d.ts +11 -0
  102. package/dist/src/v0_9/index.d.ts.map +1 -0
  103. package/dist/src/v0_9/index.js +11 -0
  104. package/dist/src/v0_9/index.js.map +1 -0
  105. package/dist/src/v0_9/processing/message-processor.d.ts +34 -0
  106. package/dist/src/v0_9/processing/message-processor.d.ts.map +1 -0
  107. package/dist/src/v0_9/processing/message-processor.js +128 -0
  108. package/dist/src/v0_9/processing/message-processor.js.map +1 -0
  109. package/dist/src/v0_9/processing/message-processor.test.d.ts +2 -0
  110. package/dist/src/v0_9/processing/message-processor.test.d.ts.map +1 -0
  111. package/dist/src/v0_9/processing/message-processor.test.js +112 -0
  112. package/dist/src/v0_9/processing/message-processor.test.js.map +1 -0
  113. package/dist/src/v0_9/rendering/component-context.d.ts +17 -0
  114. package/dist/src/v0_9/rendering/component-context.d.ts.map +1 -0
  115. package/dist/src/v0_9/rendering/component-context.js +21 -0
  116. package/dist/src/v0_9/rendering/component-context.js.map +1 -0
  117. package/dist/src/v0_9/rendering/data-context.d.ts +37 -0
  118. package/dist/src/v0_9/rendering/data-context.d.ts.map +1 -0
  119. package/dist/src/v0_9/rendering/data-context.js +97 -0
  120. package/dist/src/v0_9/rendering/data-context.js.map +1 -0
  121. package/dist/src/v0_9/rendering/data-context.test.d.ts +2 -0
  122. package/dist/src/v0_9/rendering/data-context.test.d.ts.map +1 -0
  123. package/dist/src/v0_9/rendering/data-context.test.js +71 -0
  124. package/dist/src/v0_9/rendering/data-context.test.js.map +1 -0
  125. package/dist/src/v0_9/schema/common-types.d.ts +608 -0
  126. package/dist/src/v0_9/schema/common-types.d.ts.map +1 -0
  127. package/dist/src/v0_9/schema/common-types.js +92 -0
  128. package/dist/src/v0_9/schema/common-types.js.map +1 -0
  129. package/dist/src/v0_9/schema/index.d.ts +3 -0
  130. package/dist/src/v0_9/schema/index.d.ts.map +1 -0
  131. package/dist/src/v0_9/schema/index.js +3 -0
  132. package/dist/src/v0_9/schema/index.js.map +1 -0
  133. package/dist/src/v0_9/schema/server-to-client.d.ts +84 -0
  134. package/dist/src/v0_9/schema/server-to-client.d.ts.map +1 -0
  135. package/dist/src/v0_9/schema/server-to-client.js +21 -0
  136. package/dist/src/v0_9/schema/server-to-client.js.map +1 -0
  137. package/dist/src/v0_9/state/component-model.d.ts +16 -0
  138. package/dist/src/v0_9/state/component-model.d.ts.map +1 -0
  139. package/dist/src/v0_9/state/component-model.js +24 -0
  140. package/dist/src/v0_9/state/component-model.js.map +1 -0
  141. package/dist/src/v0_9/state/component-model.test.d.ts +2 -0
  142. package/dist/src/v0_9/state/component-model.test.d.ts.map +1 -0
  143. package/dist/src/v0_9/state/component-model.test.js +39 -0
  144. package/dist/src/v0_9/state/component-model.test.js.map +1 -0
  145. package/dist/src/v0_9/state/data-model.d.ts +47 -0
  146. package/dist/src/v0_9/state/data-model.d.ts.map +1 -0
  147. package/dist/src/v0_9/state/data-model.js +191 -0
  148. package/dist/src/v0_9/state/data-model.js.map +1 -0
  149. package/dist/src/v0_9/state/data-model.test.d.ts +2 -0
  150. package/dist/src/v0_9/state/data-model.test.d.ts.map +1 -0
  151. package/dist/src/v0_9/state/data-model.test.js +204 -0
  152. package/dist/src/v0_9/state/data-model.test.js.map +1 -0
  153. package/dist/src/v0_9/state/surface-components-model.d.ts +19 -0
  154. package/dist/src/v0_9/state/surface-components-model.d.ts.map +1 -0
  155. package/dist/src/v0_9/state/surface-components-model.js +42 -0
  156. package/dist/src/v0_9/state/surface-components-model.js.map +1 -0
  157. package/dist/src/v0_9/state/surface-components-model.test.d.ts +2 -0
  158. package/dist/src/v0_9/state/surface-components-model.test.d.ts.map +1 -0
  159. package/dist/src/v0_9/state/surface-components-model.test.js +49 -0
  160. package/dist/src/v0_9/state/surface-components-model.test.js.map +1 -0
  161. package/dist/src/v0_9/state/surface-group-model.d.ts +25 -0
  162. package/dist/src/v0_9/state/surface-group-model.d.ts.map +1 -0
  163. package/dist/src/v0_9/state/surface-group-model.js +56 -0
  164. package/dist/src/v0_9/state/surface-group-model.js.map +1 -0
  165. package/dist/src/v0_9/state/surface-group-model.test.d.ts +2 -0
  166. package/dist/src/v0_9/state/surface-group-model.test.d.ts.map +1 -0
  167. package/dist/src/v0_9/state/surface-group-model.test.js +67 -0
  168. package/dist/src/v0_9/state/surface-group-model.test.js.map +1 -0
  169. package/dist/src/v0_9/state/surface-model.d.ts +23 -0
  170. package/dist/src/v0_9/state/surface-model.d.ts.map +1 -0
  171. package/dist/src/v0_9/state/surface-model.js +28 -0
  172. package/dist/src/v0_9/state/surface-model.js.map +1 -0
  173. package/dist/src/v0_9/state/surface-model.test.d.ts +2 -0
  174. package/dist/src/v0_9/state/surface-model.test.d.ts.map +1 -0
  175. package/dist/src/v0_9/state/surface-model.test.js +39 -0
  176. package/dist/src/v0_9/state/surface-model.test.js.map +1 -0
  177. package/dist/src/v0_9/test/test-utils.d.ts +8 -0
  178. package/dist/src/v0_9/test/test-utils.d.ts.map +1 -0
  179. package/dist/src/v0_9/test/test-utils.js +18 -0
  180. package/dist/src/v0_9/test/test-utils.js.map +1 -0
  181. package/package.json +94 -0
  182. package/src/v0_8/data/guards.ts +236 -0
  183. package/src/v0_8/data/model-processor.ts +855 -0
  184. package/src/v0_8/events/base.ts +24 -0
  185. package/src/v0_8/events/index.ts +18 -0
  186. package/src/v0_8/events/validation-event.ts +66 -0
  187. package/src/v0_8/index.ts +12 -0
  188. package/src/v0_8/schemas/server_to_client_with_standard_catalog.json +823 -0
  189. package/src/v0_8/styles/behavior.ts +55 -0
  190. package/src/v0_8/styles/border.ts +42 -0
  191. package/src/v0_8/styles/colors.ts +100 -0
  192. package/src/v0_8/styles/icons.ts +60 -0
  193. package/src/v0_8/styles/index.ts +37 -0
  194. package/src/v0_8/styles/layout.ts +235 -0
  195. package/src/v0_8/styles/opacity.ts +24 -0
  196. package/src/v0_8/styles/shared.ts +17 -0
  197. package/src/v0_8/styles/type.ts +156 -0
  198. package/src/v0_8/styles/utils.ts +104 -0
  199. package/src/v0_8/types/client-event.ts +80 -0
  200. package/src/v0_8/types/colors.ts +66 -0
  201. package/src/v0_8/types/components.ts +213 -0
  202. package/src/v0_8/types/primitives.ts +60 -0
  203. package/src/v0_8/types/types.ts +557 -0
  204. package/src/v0_9/catalog/types.ts +38 -0
  205. package/src/v0_9/common/events.ts +44 -0
  206. package/src/v0_9/index.ts +12 -0
  207. package/src/v0_9/processing/message-processor.test.ts +133 -0
  208. package/src/v0_9/processing/message-processor.ts +150 -0
  209. package/src/v0_9/rendering/component-context.ts +36 -0
  210. package/src/v0_9/rendering/data-context.test.ts +85 -0
  211. package/src/v0_9/rendering/data-context.ts +110 -0
  212. package/src/v0_9/schema/common-types.ts +125 -0
  213. package/src/v0_9/schema/index.ts +2 -0
  214. package/src/v0_9/schema/server-to-client.ts +23 -0
  215. package/src/v0_9/state/component-model.test.ts +50 -0
  216. package/src/v0_9/state/component-model.ts +32 -0
  217. package/src/v0_9/state/data-model.test.ts +257 -0
  218. package/src/v0_9/state/data-model.ts +239 -0
  219. package/src/v0_9/state/surface-components-model.test.ts +59 -0
  220. package/src/v0_9/state/surface-components-model.ts +48 -0
  221. package/src/v0_9/state/surface-group-model.test.ts +82 -0
  222. package/src/v0_9/state/surface-group-model.ts +66 -0
  223. package/src/v0_9/state/surface-model.test.ts +44 -0
  224. package/src/v0_9/state/surface-model.ts +39 -0
  225. package/src/v0_9/test/test-utils.ts +22 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../../../src/v0_8/types/primitives.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
@@ -0,0 +1,411 @@
1
+ export { type ClientToServerMessage as A2UIClientEventMessage, type ClientCapabilitiesDynamic, } from "./client-event.js";
2
+ export { type Action } from "./components.js";
3
+ import { AudioPlayer, Button, Checkbox, DateTimeInput, Divider, Icon, Image, MultipleChoice, Slider, Text, TextField, Video } from "./components";
4
+ import { StringValue } from "./primitives";
5
+ export type MessageProcessor = {
6
+ getSurfaces(): ReadonlyMap<string, Surface>;
7
+ clearSurfaces(): void;
8
+ processMessages(messages: ServerToClientMessage[]): void;
9
+ /**
10
+ * Retrieves the data for a given component node and a relative path string.
11
+ * This correctly handles the special `.` path, which refers to the node's
12
+ * own data context.
13
+ */
14
+ getData(node: AnyComponentNode, relativePath: string, surfaceId: string): DataValue | null;
15
+ setData(node: AnyComponentNode | null, relativePath: string, value: DataValue, surfaceId: string): void;
16
+ resolvePath(path: string, dataContextPath?: string): string;
17
+ };
18
+ export declare type Theme = {
19
+ components: {
20
+ AudioPlayer: Record<string, boolean>;
21
+ Button: Record<string, boolean>;
22
+ Card: Record<string, boolean>;
23
+ Column: Record<string, boolean>;
24
+ CheckBox: {
25
+ container: Record<string, boolean>;
26
+ element: Record<string, boolean>;
27
+ label: Record<string, boolean>;
28
+ };
29
+ DateTimeInput: {
30
+ container: Record<string, boolean>;
31
+ element: Record<string, boolean>;
32
+ label: Record<string, boolean>;
33
+ };
34
+ Divider: Record<string, boolean>;
35
+ Image: {
36
+ all: Record<string, boolean>;
37
+ icon: Record<string, boolean>;
38
+ avatar: Record<string, boolean>;
39
+ smallFeature: Record<string, boolean>;
40
+ mediumFeature: Record<string, boolean>;
41
+ largeFeature: Record<string, boolean>;
42
+ header: Record<string, boolean>;
43
+ };
44
+ Icon: Record<string, boolean>;
45
+ List: Record<string, boolean>;
46
+ Modal: {
47
+ backdrop: Record<string, boolean>;
48
+ element: Record<string, boolean>;
49
+ };
50
+ MultipleChoice: {
51
+ container: Record<string, boolean>;
52
+ element: Record<string, boolean>;
53
+ label: Record<string, boolean>;
54
+ };
55
+ Row: Record<string, boolean>;
56
+ Slider: {
57
+ container: Record<string, boolean>;
58
+ element: Record<string, boolean>;
59
+ label: Record<string, boolean>;
60
+ };
61
+ Tabs: {
62
+ container: Record<string, boolean>;
63
+ element: Record<string, boolean>;
64
+ controls: {
65
+ all: Record<string, boolean>;
66
+ selected: Record<string, boolean>;
67
+ };
68
+ };
69
+ Text: {
70
+ all: Record<string, boolean>;
71
+ h1: Record<string, boolean>;
72
+ h2: Record<string, boolean>;
73
+ h3: Record<string, boolean>;
74
+ h4: Record<string, boolean>;
75
+ h5: Record<string, boolean>;
76
+ caption: Record<string, boolean>;
77
+ body: Record<string, boolean>;
78
+ };
79
+ TextField: {
80
+ container: Record<string, boolean>;
81
+ element: Record<string, boolean>;
82
+ label: Record<string, boolean>;
83
+ };
84
+ Video: Record<string, boolean>;
85
+ };
86
+ elements: {
87
+ a: Record<string, boolean>;
88
+ audio: Record<string, boolean>;
89
+ body: Record<string, boolean>;
90
+ button: Record<string, boolean>;
91
+ h1: Record<string, boolean>;
92
+ h2: Record<string, boolean>;
93
+ h3: Record<string, boolean>;
94
+ h4: Record<string, boolean>;
95
+ h5: Record<string, boolean>;
96
+ iframe: Record<string, boolean>;
97
+ input: Record<string, boolean>;
98
+ p: Record<string, boolean>;
99
+ pre: Record<string, boolean>;
100
+ textarea: Record<string, boolean>;
101
+ video: Record<string, boolean>;
102
+ };
103
+ markdown: {
104
+ p: string[];
105
+ h1: string[];
106
+ h2: string[];
107
+ h3: string[];
108
+ h4: string[];
109
+ h5: string[];
110
+ ul: string[];
111
+ ol: string[];
112
+ li: string[];
113
+ a: string[];
114
+ strong: string[];
115
+ em: string[];
116
+ };
117
+ additionalStyles?: {
118
+ AudioPlayer?: Record<string, string>;
119
+ Button?: Record<string, string>;
120
+ Card?: Record<string, string>;
121
+ Column?: Record<string, string>;
122
+ CheckBox?: Record<string, string>;
123
+ DateTimeInput?: Record<string, string>;
124
+ Divider?: Record<string, string>;
125
+ Heading?: Record<string, string>;
126
+ Icon?: Record<string, string>;
127
+ Image?: Record<string, string>;
128
+ List?: Record<string, string>;
129
+ Modal?: Record<string, string>;
130
+ MultipleChoice?: Record<string, string>;
131
+ Row?: Record<string, string>;
132
+ Slider?: Record<string, string>;
133
+ Tabs?: Record<string, string>;
134
+ Text?: Record<string, string> | {
135
+ h1: Record<string, string>;
136
+ h2: Record<string, string>;
137
+ h3: Record<string, string>;
138
+ h4: Record<string, string>;
139
+ h5: Record<string, string>;
140
+ body: Record<string, string>;
141
+ caption: Record<string, string>;
142
+ };
143
+ TextField?: Record<string, string>;
144
+ Video?: Record<string, string>;
145
+ };
146
+ };
147
+ /**
148
+ * Represents a user-initiated action, sent from the client to the server.
149
+ */
150
+ export declare interface UserAction {
151
+ /**
152
+ * The name of the action, taken from the component's `action.action`
153
+ * property.
154
+ */
155
+ actionName: string;
156
+ /**
157
+ * The `id` of the component that triggered the event.
158
+ */
159
+ sourceComponentId: string;
160
+ /**
161
+ * An ISO 8601 timestamp of when the event occurred.
162
+ */
163
+ timestamp: string;
164
+ /**
165
+ * A JSON object containing the key-value pairs from the component's
166
+ * `action.context`, after resolving all data bindings.
167
+ */
168
+ context?: {
169
+ [k: string]: unknown;
170
+ };
171
+ }
172
+ /** A recursive type for any valid JSON-like value in the data model. */
173
+ export declare type DataValue = string | number | boolean | null | DataMap | DataObject | DataArray;
174
+ export declare type DataObject = {
175
+ [key: string]: DataValue;
176
+ };
177
+ export declare type DataMap = Map<string, DataValue>;
178
+ export declare type DataArray = DataValue[];
179
+ /** A template for creating components from a list in the data model. */
180
+ export declare interface ComponentArrayTemplate {
181
+ componentId: string;
182
+ dataBinding: string;
183
+ }
184
+ /** Defines a list of child components, either explicitly or via a template. */
185
+ export declare interface ComponentArrayReference {
186
+ explicitList?: string[];
187
+ template?: ComponentArrayTemplate;
188
+ }
189
+ /** Represents the general shape of a component's properties. */
190
+ export declare type ComponentProperties = {
191
+ children?: ComponentArrayReference;
192
+ child?: string;
193
+ [k: string]: unknown;
194
+ };
195
+ /** A raw component instance from a SurfaceUpdate message. */
196
+ export declare interface ComponentInstance {
197
+ id: string;
198
+ weight?: number;
199
+ component?: ComponentProperties;
200
+ }
201
+ export declare interface BeginRenderingMessage {
202
+ surfaceId: string;
203
+ root: string;
204
+ styles?: Record<string, string>;
205
+ }
206
+ export declare interface SurfaceUpdateMessage {
207
+ surfaceId: string;
208
+ components: ComponentInstance[];
209
+ }
210
+ export declare interface DataModelUpdate {
211
+ surfaceId: string;
212
+ path?: string;
213
+ contents: ValueMap[];
214
+ }
215
+ export declare type ValueMap = DataObject & {
216
+ key: string;
217
+ /** May be JSON */
218
+ valueString?: string;
219
+ valueNumber?: number;
220
+ valueBoolean?: boolean;
221
+ valueMap?: ValueMap[];
222
+ };
223
+ export declare interface DeleteSurfaceMessage {
224
+ surfaceId: string;
225
+ }
226
+ export declare interface ServerToClientMessage {
227
+ beginRendering?: BeginRenderingMessage;
228
+ surfaceUpdate?: SurfaceUpdateMessage;
229
+ dataModelUpdate?: DataModelUpdate;
230
+ deleteSurface?: DeleteSurfaceMessage;
231
+ }
232
+ /**
233
+ * A recursive type for any value that can appear within a resolved component
234
+ * tree. This is the main type that makes the recursive resolution possible.
235
+ */
236
+ export declare type ResolvedValue = string | number | boolean | null | AnyComponentNode | ResolvedMap | ResolvedArray;
237
+ /** A generic map where each value has been recursively resolved. */
238
+ export declare type ResolvedMap = {
239
+ [key: string]: ResolvedValue;
240
+ };
241
+ /** A generic array where each item has been recursively resolved. */
242
+ export declare type ResolvedArray = ResolvedValue[];
243
+ /**
244
+ * A base interface that all component nodes share.
245
+ */
246
+ interface BaseComponentNode {
247
+ id: string;
248
+ weight?: number;
249
+ dataContextPath?: string;
250
+ slotName?: string;
251
+ }
252
+ export declare interface TextNode extends BaseComponentNode {
253
+ type: "Text";
254
+ properties: ResolvedText;
255
+ }
256
+ export declare interface ImageNode extends BaseComponentNode {
257
+ type: "Image";
258
+ properties: ResolvedImage;
259
+ }
260
+ export declare interface IconNode extends BaseComponentNode {
261
+ type: "Icon";
262
+ properties: ResolvedIcon;
263
+ }
264
+ export declare interface VideoNode extends BaseComponentNode {
265
+ type: "Video";
266
+ properties: ResolvedVideo;
267
+ }
268
+ export declare interface AudioPlayerNode extends BaseComponentNode {
269
+ type: "AudioPlayer";
270
+ properties: ResolvedAudioPlayer;
271
+ }
272
+ export declare interface RowNode extends BaseComponentNode {
273
+ type: "Row";
274
+ properties: ResolvedRow;
275
+ }
276
+ export declare interface ColumnNode extends BaseComponentNode {
277
+ type: "Column";
278
+ properties: ResolvedColumn;
279
+ }
280
+ export declare interface ListNode extends BaseComponentNode {
281
+ type: "List";
282
+ properties: ResolvedList;
283
+ }
284
+ export declare interface CardNode extends BaseComponentNode {
285
+ type: "Card";
286
+ properties: ResolvedCard;
287
+ }
288
+ export declare interface TabsNode extends BaseComponentNode {
289
+ type: "Tabs";
290
+ properties: ResolvedTabs;
291
+ }
292
+ export declare interface DividerNode extends BaseComponentNode {
293
+ type: "Divider";
294
+ properties: ResolvedDivider;
295
+ }
296
+ export declare interface ModalNode extends BaseComponentNode {
297
+ type: "Modal";
298
+ properties: ResolvedModal;
299
+ }
300
+ export declare interface ButtonNode extends BaseComponentNode {
301
+ type: "Button";
302
+ properties: ResolvedButton;
303
+ }
304
+ export declare interface CheckboxNode extends BaseComponentNode {
305
+ type: "CheckBox";
306
+ properties: ResolvedCheckbox;
307
+ }
308
+ export declare interface TextFieldNode extends BaseComponentNode {
309
+ type: "TextField";
310
+ properties: ResolvedTextField;
311
+ }
312
+ export declare interface DateTimeInputNode extends BaseComponentNode {
313
+ type: "DateTimeInput";
314
+ properties: ResolvedDateTimeInput;
315
+ }
316
+ export declare interface MultipleChoiceNode extends BaseComponentNode {
317
+ type: "MultipleChoice";
318
+ properties: ResolvedMultipleChoice;
319
+ }
320
+ export declare interface SliderNode extends BaseComponentNode {
321
+ type: "Slider";
322
+ properties: ResolvedSlider;
323
+ }
324
+ export declare interface CustomNode extends BaseComponentNode {
325
+ type: string;
326
+ properties: CustomNodeProperties;
327
+ }
328
+ /**
329
+ * The complete discriminated union of all possible resolved component nodes.
330
+ * A renderer would use this type for any given node in the component tree.
331
+ */
332
+ export declare type AnyComponentNode = TextNode | IconNode | ImageNode | VideoNode | AudioPlayerNode | RowNode | ColumnNode | ListNode | CardNode | TabsNode | DividerNode | ModalNode | ButtonNode | CheckboxNode | TextFieldNode | DateTimeInputNode | MultipleChoiceNode | SliderNode | CustomNode;
333
+ export declare type ResolvedText = Text;
334
+ export declare type ResolvedIcon = Icon;
335
+ export declare type ResolvedImage = Image;
336
+ export declare type ResolvedVideo = Video;
337
+ export declare type ResolvedAudioPlayer = AudioPlayer;
338
+ export declare type ResolvedDivider = Divider;
339
+ export declare type ResolvedCheckbox = Checkbox;
340
+ export declare type ResolvedTextField = TextField;
341
+ export declare type ResolvedDateTimeInput = DateTimeInput;
342
+ export declare type ResolvedMultipleChoice = MultipleChoice;
343
+ export declare type ResolvedSlider = Slider;
344
+ export declare interface ResolvedRow {
345
+ children: AnyComponentNode[];
346
+ distribution?: "start" | "center" | "end" | "spaceBetween" | "spaceAround" | "spaceEvenly";
347
+ alignment?: "start" | "center" | "end" | "stretch";
348
+ }
349
+ export declare interface ResolvedColumn {
350
+ children: AnyComponentNode[];
351
+ distribution?: "start" | "center" | "end" | "spaceBetween" | "spaceAround" | "spaceEvenly";
352
+ alignment?: "start" | "center" | "end" | "stretch";
353
+ }
354
+ export declare interface ResolvedButton {
355
+ child: AnyComponentNode;
356
+ action: Button["action"];
357
+ }
358
+ export declare interface ResolvedList {
359
+ children: AnyComponentNode[];
360
+ direction?: "vertical" | "horizontal";
361
+ alignment?: "start" | "center" | "end" | "stretch";
362
+ }
363
+ export declare interface ResolvedCard {
364
+ child: AnyComponentNode;
365
+ children: AnyComponentNode[];
366
+ }
367
+ export declare interface ResolvedTabItem {
368
+ title: StringValue;
369
+ child: AnyComponentNode;
370
+ }
371
+ export declare interface ResolvedTabs {
372
+ tabItems: ResolvedTabItem[];
373
+ }
374
+ export declare interface ResolvedModal {
375
+ entryPointChild: AnyComponentNode;
376
+ contentChild: AnyComponentNode;
377
+ }
378
+ export declare interface CustomNodeProperties {
379
+ [k: string]: ResolvedValue;
380
+ }
381
+ export declare type SurfaceID = string;
382
+ /** The complete state of a single UI surface. */
383
+ export declare interface Surface {
384
+ rootComponentId: string | null;
385
+ componentTree: AnyComponentNode | null;
386
+ dataModel: DataMap;
387
+ components: Map<string, ComponentInstance>;
388
+ styles: Record<string, string>;
389
+ }
390
+ /**
391
+ * Renders `markdown` using `options`.
392
+ * @returns The rendered HTML as a string.
393
+ */
394
+ export declare type MarkdownRenderer = (markdown: string, options?: MarkdownRendererOptions) => string;
395
+ /**
396
+ * A map of tag names to a list of classnames to be applied to a tag.
397
+ *
398
+ * For example, if you want to apply the class "my-class" to all "h1" tags,
399
+ * you would use `{"h1": ["my-class"]}`.
400
+ */
401
+ export declare type MarkdownRendererTagClassMap = Record<string, string[]>;
402
+ /**
403
+ * The options for the markdown renderer passed from A2UI.
404
+ *
405
+ * This includes the tagClassMap, which is a map of tag names to a list of
406
+ * classnames to be applied to each tag, and configuration for the sanitizer.
407
+ */
408
+ export declare type MarkdownRendererOptions = {
409
+ tagClassMap?: MarkdownRendererTagClassMap;
410
+ };
411
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/v0_8/types/types.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,KAAK,qBAAqB,IAAI,sBAAsB,EACpD,KAAK,yBAAyB,GAC/B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EACL,WAAW,EACX,MAAM,EACN,QAAQ,EACR,aAAa,EACb,OAAO,EACP,IAAI,EACJ,KAAK,EACL,cAAc,EACd,MAAM,EACN,IAAI,EACJ,SAAS,EACT,KAAK,EACN,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,IAAI,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,aAAa,IAAI,IAAI,CAAC;IACtB,eAAe,CAAC,QAAQ,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC;IAEzD;;;;OAIG;IACH,OAAO,CACL,IAAI,EAAE,gBAAgB,EACtB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,GAChB,SAAS,GAAG,IAAI,CAAC;IAEpB,OAAO,CACL,IAAI,EAAE,gBAAgB,GAAG,IAAI,EAC7B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,MAAM,GAChB,IAAI,CAAC;IAER,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7D,CAAC;AAEF,MAAM,CAAC,OAAO,MAAM,KAAK,GAAG;IAC1B,UAAU,EAAE;QACV,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACrC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,QAAQ,EAAE;YACR,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChC,CAAC;QACF,aAAa,EAAE;YACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChC,CAAC;QACF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,KAAK,EAAE;YACL,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAChC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACtC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SACjC,CAAC;QACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,KAAK,EAAE;YACL,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAClC,CAAC;QACF,cAAc,EAAE;YACd,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChC,CAAC;QACF,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7B,MAAM,EAAE;YACN,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChC,CAAC;QACF,IAAI,EAAE;YACJ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,QAAQ,EAAE;gBACR,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;aACnC,CAAC;SACH,CAAC;QACF,IAAI,EAAE;YACJ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC7B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAC/B,CAAC;QACF,SAAS,EAAE;YACT,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChC,CAAC;QACF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,CAAC;IACF,QAAQ,EAAE;QACR,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,CAAC;IACF,QAAQ,EAAE;QACR,CAAC,EAAE,MAAM,EAAE,CAAC;QACZ,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,CAAC,EAAE,MAAM,EAAE,CAAC;QACZ,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,EAAE,EAAE,MAAM,EAAE,CAAC;KACd,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAClC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,EACD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtB;YACE,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SACjC,CAAC;QACN,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACnC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAChC,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,UAAU;IACjC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;KACtB,CAAC;CACH;AAED,wEAAwE;AACxE,MAAM,CAAC,OAAO,MAAM,SAAS,GACzB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,OAAO,GACP,UAAU,GACV,SAAS,CAAC;AACd,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAC9D,MAAM,CAAC,OAAO,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACrD,MAAM,CAAC,OAAO,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;AAE5C,wEAAwE;AACxE,MAAM,CAAC,OAAO,WAAW,sBAAsB;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,+EAA+E;AAC/E,MAAM,CAAC,OAAO,WAAW,uBAAuB;IAC9C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,gEAAgE;AAChE,MAAM,CAAC,OAAO,MAAM,mBAAmB,GAAG;IAExC,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB,CAAC;AAEF,6DAA6D;AAC7D,MAAM,CAAC,OAAO,WAAW,iBAAiB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,CAAC,OAAO,WAAW,qBAAqB;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,CAAC,OAAO,WAAW,oBAAoB;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,iBAAiB,EAAE,CAAC;CACjC;AAED,MAAM,CAAC,OAAO,WAAW,eAAe;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,EAAE,CAAC;CACtB;AAGD,MAAM,CAAC,OAAO,MAAM,QAAQ,GAAG,UAAU,GAAG;IAC1C,GAAG,EAAE,MAAM,CAAC;IACZ,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,CAAC,OAAO,WAAW,oBAAoB;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,CAAC,OAAO,WAAW,qBAAqB;IAC5C,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,MAAM,aAAa,GAC7B,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,gBAAgB,GAChB,WAAW,GACX,aAAa,CAAC;AAElB,oEAAoE;AACpE,MAAM,CAAC,OAAO,MAAM,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAA;CAAE,CAAC;AAEnE,qEAAqE;AACrE,MAAM,CAAC,OAAO,MAAM,aAAa,GAAG,aAAa,EAAE,CAAC;AAEpD;;GAEG;AACH,UAAU,iBAAiB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,CAAC,OAAO,WAAW,QAAS,SAAQ,iBAAiB;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,YAAY,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,WAAW,SAAU,SAAQ,iBAAiB;IAC1D,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,aAAa,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,WAAW,QAAS,SAAQ,iBAAiB;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,YAAY,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,WAAW,SAAU,SAAQ,iBAAiB;IAC1D,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,aAAa,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,WAAW,eAAgB,SAAQ,iBAAiB;IAChE,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,CAAC,OAAO,WAAW,OAAQ,SAAQ,iBAAiB;IACxD,IAAI,EAAE,KAAK,CAAC;IACZ,UAAU,EAAE,WAAW,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,WAAW,UAAW,SAAQ,iBAAiB;IAC3D,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,WAAW,QAAS,SAAQ,iBAAiB;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,YAAY,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,WAAW,QAAS,SAAQ,iBAAiB;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,YAAY,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,WAAW,QAAS,SAAQ,iBAAiB;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,YAAY,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,WAAW,WAAY,SAAQ,iBAAiB;IAC5D,IAAI,EAAE,SAAS,CAAC;IAChB,UAAU,EAAE,eAAe,CAAC;CAC7B;AAED,MAAM,CAAC,OAAO,WAAW,SAAU,SAAQ,iBAAiB;IAC1D,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,aAAa,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,WAAW,UAAW,SAAQ,iBAAiB;IAC3D,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,WAAW,YAAa,SAAQ,iBAAiB;IAC7D,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED,MAAM,CAAC,OAAO,WAAW,aAAc,SAAQ,iBAAiB;IAC9D,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;CAC/B;AAED,MAAM,CAAC,OAAO,WAAW,iBAAkB,SAAQ,iBAAiB;IAClE,IAAI,EAAE,eAAe,CAAC;IACtB,UAAU,EAAE,qBAAqB,CAAC;CACnC;AAED,MAAM,CAAC,OAAO,WAAW,kBAAmB,SAAQ,iBAAiB;IACnE,IAAI,EAAE,gBAAgB,CAAC;IACvB,UAAU,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,CAAC,OAAO,WAAW,UAAW,SAAQ,iBAAiB;IAC3D,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,WAAW,UAAW,SAAQ,iBAAiB;IAC3D,IAAI,EAAE,MAAM,CAAC;IAEb,UAAU,EAAE,oBAAoB,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,MAAM,gBAAgB,GAChC,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,eAAe,GACf,OAAO,GACP,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,SAAS,GACT,UAAU,GACV,YAAY,GACZ,aAAa,GACb,iBAAiB,GACjB,kBAAkB,GAClB,UAAU,GACV,UAAU,CAAC;AAIf,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,IAAI,CAAC;AACxC,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,IAAI,CAAC;AACxC,MAAM,CAAC,OAAO,MAAM,aAAa,GAAG,KAAK,CAAC;AAC1C,MAAM,CAAC,OAAO,MAAM,aAAa,GAAG,KAAK,CAAC;AAC1C,MAAM,CAAC,OAAO,MAAM,mBAAmB,GAAG,WAAW,CAAC;AACtD,MAAM,CAAC,OAAO,MAAM,eAAe,GAAG,OAAO,CAAC;AAC9C,MAAM,CAAC,OAAO,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAChD,MAAM,CAAC,OAAO,MAAM,iBAAiB,GAAG,SAAS,CAAC;AAClD,MAAM,CAAC,OAAO,MAAM,qBAAqB,GAAG,aAAa,CAAC;AAC1D,MAAM,CAAC,OAAO,MAAM,sBAAsB,GAAG,cAAc,CAAC;AAC5D,MAAM,CAAC,OAAO,MAAM,cAAc,GAAG,MAAM,CAAC;AAE5C,MAAM,CAAC,OAAO,WAAW,WAAW;IAClC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,YAAY,CAAC,EACX,OAAO,GACP,QAAQ,GACR,KAAK,GACL,cAAc,GACd,aAAa,GACb,aAAa,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;CACpD;AAED,MAAM,CAAC,OAAO,WAAW,cAAc;IACrC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,YAAY,CAAC,EACX,OAAO,GACP,QAAQ,GACR,KAAK,GACL,cAAc,GACd,aAAa,GACb,aAAa,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;CACpD;AAED,MAAM,CAAC,OAAO,WAAW,cAAc;IACrC,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,WAAW,YAAY;IACnC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;CACpD;AAED,MAAM,CAAC,OAAO,WAAW,YAAY;IACnC,KAAK,EAAE,gBAAgB,CAAC;IACxB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED,MAAM,CAAC,OAAO,WAAW,eAAe;IACtC,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,WAAW,YAAY;IACnC,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,CAAC,OAAO,WAAW,aAAa;IACpC,eAAe,EAAE,gBAAgB,CAAC;IAClC,YAAY,EAAE,gBAAgB,CAAC;CAChC;AAED,MAAM,CAAC,OAAO,WAAW,oBAAoB;IAC3C,CAAC,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,MAAM,SAAS,GAAG,MAAM,CAAC;AAEvC,iDAAiD;AACjD,MAAM,CAAC,OAAO,WAAW,OAAO;IAC9B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAGD;;;GAGG;AACH,MAAM,CAAC,OAAO,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,KAAK,MAAM,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,CAAC,OAAO,MAAM,2BAA2B,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,CAAC,OAAO,MAAM,uBAAuB,GAAG;IAC5C,WAAW,CAAC,EAAE,2BAA2B,CAAC;CAC3C,CAAA"}
@@ -0,0 +1,17 @@
1
+ /*
2
+ Copyright 2025 Google LLC
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ https://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ */
16
+ export {};
17
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v0_8/types/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
@@ -0,0 +1,27 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * A definition of a UI component's API.
4
+ * This interface defines the contract for a component's capabilities and properties,
5
+ * independent of any specific rendering implementation.
6
+ */
7
+ export interface ComponentApi {
8
+ /** The name of the component as it appears in the A2UI JSON (e.g., 'Button'). */
9
+ name: string;
10
+ /**
11
+ * The Zod schema describing the **properties** of this component.
12
+ *
13
+ * - MUST include catalog-specific common properties (e.g. 'weight', 'accessibility').
14
+ * - MUST NOT include 'component' or 'id' as those are handled by the framework/envelope.
15
+ */
16
+ readonly schema: z.ZodType<any>;
17
+ }
18
+ export declare class Catalog<T extends ComponentApi> {
19
+ readonly id: string;
20
+ /**
21
+ * A map of available components.
22
+ * This is readonly to encourage immutable extension patterns.
23
+ */
24
+ readonly components: ReadonlyMap<string, T>;
25
+ constructor(id: string, components: T[]);
26
+ }
27
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/v0_9/catalog/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;CACjC;AAED,qBAAa,OAAO,CAAC,CAAC,SAAS,YAAY;IACzC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAEhC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE;CAQxC"}
@@ -0,0 +1,11 @@
1
+ export class Catalog {
2
+ constructor(id, components) {
3
+ this.id = id;
4
+ const map = new Map();
5
+ for (const comp of components) {
6
+ map.set(comp.name, comp);
7
+ }
8
+ this.components = map;
9
+ }
10
+ }
11
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v0_9/catalog/types.ts"],"names":[],"mappings":"AAoBA,MAAM,OAAO,OAAO;IASlB,YAAY,EAAU,EAAE,UAAe;QACrC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,IAAI,GAAG,EAAa,CAAC;QACjC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;IACxB,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ /** Standard cleanup interface returned by all subscriptions. */
2
+ export interface Subscription {
3
+ unsubscribe(): void;
4
+ }
5
+ /** The listener function signature. */
6
+ export type EventListener<T> = (data: T) => void | Promise<void>;
7
+ /**
8
+ * Public interface exposed by models.
9
+ * Allows ONLY subscribing to events.
10
+ */
11
+ export interface EventSource<T> {
12
+ subscribe(listener: EventListener<T>): Subscription;
13
+ }
14
+ /**
15
+ * Internal implementation used by the model.
16
+ * Implements EventSource but also provides the 'emit' method.
17
+ */
18
+ export declare class EventEmitter<T> implements EventSource<T> {
19
+ private listeners;
20
+ subscribe(listener: EventListener<T>): Subscription;
21
+ emit(data: T): Promise<void>;
22
+ dispose(): void;
23
+ }
24
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/v0_9/common/events.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,MAAM,WAAW,YAAY;IAC3B,WAAW,IAAI,IAAI,CAAC;CACrB;AAED,uCAAuC;AACvC,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;CACrD;AAED;;;GAGG;AACH,qBAAa,YAAY,CAAC,CAAC,CAAE,YAAW,WAAW,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,SAAS,CAA+B;IAEhD,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,YAAY;IAO7C,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAUlC,OAAO,IAAI,IAAI;CAGhB"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Internal implementation used by the model.
3
+ * Implements EventSource but also provides the 'emit' method.
4
+ */
5
+ export class EventEmitter {
6
+ constructor() {
7
+ this.listeners = new Set();
8
+ }
9
+ subscribe(listener) {
10
+ this.listeners.add(listener);
11
+ return {
12
+ unsubscribe: () => this.listeners.delete(listener)
13
+ };
14
+ }
15
+ async emit(data) {
16
+ for (const listener of this.listeners) {
17
+ try {
18
+ await listener(data);
19
+ }
20
+ catch (e) {
21
+ console.error('EventEmitter error:', e);
22
+ }
23
+ }
24
+ }
25
+ dispose() {
26
+ this.listeners.clear();
27
+ }
28
+ }
29
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/v0_9/common/events.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,MAAM,OAAO,YAAY;IAAzB;QACU,cAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAsBlD,CAAC;IApBC,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO;YACL,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;SACnD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAO;QAChB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ export * from './state/data-model.js';
2
+ export * from './common/events.js';
3
+ export * from './rendering/data-context.js';
4
+ export * from './state/surface-model.js';
5
+ export * from './processing/message-processor.js';
6
+ export * from './catalog/types.js';
7
+ export * from './rendering/component-context.js';
8
+ export * from './state/surface-group-model.js';
9
+ export * from './state/surface-components-model.js';
10
+ export * from './schema/index.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v0_9/index.ts"],"names":[],"mappings":"AACA,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,11 @@
1
+ export * from './state/data-model.js';
2
+ export * from './common/events.js';
3
+ export * from './rendering/data-context.js';
4
+ export * from './state/surface-model.js';
5
+ export * from './processing/message-processor.js';
6
+ export * from './catalog/types.js';
7
+ export * from './rendering/component-context.js';
8
+ export * from './state/surface-group-model.js';
9
+ export * from './state/surface-components-model.js';
10
+ export * from './schema/index.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v0_9/index.ts"],"names":[],"mappings":"AACA,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { SurfaceModel, ActionListener } from '../state/surface-model.js';
2
+ import { Catalog, ComponentApi } from '../catalog/types.js';
3
+ import { SurfaceGroupModel } from '../state/surface-group-model.js';
4
+ import { Subscription } from '../common/events.js';
5
+ import { A2uiMessage } from '../schema/server-to-client.js';
6
+ /**
7
+ * The central processor for A2UI messages.
8
+ * @template T The concrete type of the ComponentApi.
9
+ */
10
+ export declare class MessageProcessor<T extends ComponentApi> {
11
+ private catalogs;
12
+ private actionHandler;
13
+ readonly model: SurfaceGroupModel<T>;
14
+ /**
15
+ * @param catalogs A list of available catalogs.
16
+ * @param actionHandler A global handler for actions from all surfaces.
17
+ */
18
+ constructor(catalogs: Catalog<T>[], actionHandler: ActionListener);
19
+ /**
20
+ * Subscribes to surface creation events.
21
+ */
22
+ onSurfaceCreated(handler: (surface: SurfaceModel<T>) => void): Subscription;
23
+ /**
24
+ * Subscribes to surface deletion events.
25
+ */
26
+ onSurfaceDeleted(handler: (id: string) => void): Subscription;
27
+ processMessages(messages: A2uiMessage[]): void;
28
+ private processMessage;
29
+ private processCreateSurfaceMessage;
30
+ private processDeleteSurfaceMessage;
31
+ private processUpdateComponentsMessage;
32
+ private processUpdateDataModelMessage;
33
+ }
34
+ //# sourceMappingURL=message-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-processor.d.ts","sourceRoot":"","sources":["../../../../src/v0_9/processing/message-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAE5D;;;GAGG;AACH,qBAAa,gBAAgB,CAAC,CAAC,SAAS,YAAY;IAQhD,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,aAAa;IARvB,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAErC;;;OAGG;gBAEO,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EACtB,aAAa,EAAE,cAAc;IAMvC;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,YAAY;IAI3E;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAAG,YAAY;IAI7D,eAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI;IAM9C,OAAO,CAAC,cAAc;IA4BtB,OAAO,CAAC,2BAA2B;IAoBnC,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,8BAA8B;IAkCtC,OAAO,CAAC,6BAA6B;CActC"}