@a2ui/web_core 0.9.2 → 0.10.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.
- package/.tsbuildinfo +1 -1
- package/LICENSE +25 -1
- package/README.md +1 -1
- package/package.json +1 -1
- package/src/v0_8/data/guards.d.ts +1 -1
- package/src/v0_8/data/guards.d.ts.map +1 -1
- package/src/v0_8/data/guards.js +37 -41
- package/src/v0_8/data/guards.js.map +1 -1
- package/src/v0_8/data/guards.test.js +51 -51
- package/src/v0_8/data/guards.test.js.map +1 -1
- package/src/v0_8/data/model-processor.d.ts +1 -1
- package/src/v0_8/data/model-processor.d.ts.map +1 -1
- package/src/v0_8/data/model-processor.js +85 -88
- package/src/v0_8/data/model-processor.js.map +1 -1
- package/src/v0_8/data/model-processor.test.js +288 -323
- package/src/v0_8/data/model-processor.test.js.map +1 -1
- package/src/v0_8/errors.js +5 -5
- package/src/v0_8/events/index.d.ts +2 -2
- package/src/v0_8/events/index.js +2 -2
- package/src/v0_8/events/validation-event.d.ts +4 -4
- package/src/v0_8/events/validation-event.d.ts.map +1 -1
- package/src/v0_8/events/validation-event.js +1 -1
- package/src/v0_8/events/validation-event.js.map +1 -1
- package/src/v0_8/index.d.ts +8 -8
- package/src/v0_8/index.js +9 -9
- package/src/v0_8/index.js.map +1 -1
- package/src/v0_8/schema/common-types.d.ts +4 -4
- package/src/v0_8/schema/common-types.d.ts.map +1 -1
- package/src/v0_8/schema/common-types.js +36 -84
- package/src/v0_8/schema/common-types.js.map +1 -1
- package/src/v0_8/schema/server-to-client.d.ts +562 -562
- package/src/v0_8/schema/server-to-client.d.ts.map +1 -1
- package/src/v0_8/schema/server-to-client.js +28 -38
- package/src/v0_8/schema/server-to-client.js.map +1 -1
- package/src/v0_8/schema/verify-schema.test.js +31 -43
- package/src/v0_8/schema/verify-schema.test.js.map +1 -1
- package/src/v0_8/schemas/catalog_description_schema.json +1 -5
- package/src/v0_8/schemas/client_to_server.json +2 -11
- package/src/v0_8/schemas/server_to_client_with_standard_catalog.json +3 -23
- package/src/v0_8/schemas/standard_catalog_definition.json +36 -159
- package/src/v0_8/styles/behavior.js +1 -1
- package/src/v0_8/styles/border.js +2 -2
- package/src/v0_8/styles/border.js.map +1 -1
- package/src/v0_8/styles/colors.js +13 -13
- package/src/v0_8/styles/colors.js.map +1 -1
- package/src/v0_8/styles/index.d.ts +1 -1
- package/src/v0_8/styles/index.d.ts.map +1 -1
- package/src/v0_8/styles/index.js +10 -18
- package/src/v0_8/styles/index.js.map +1 -1
- package/src/v0_8/styles/layout.d.ts.map +1 -1
- package/src/v0_8/styles/layout.js +10 -12
- package/src/v0_8/styles/layout.js.map +1 -1
- package/src/v0_8/styles/opacity.js +1 -1
- package/src/v0_8/styles/styles.test.js +43 -43
- package/src/v0_8/styles/styles.test.js.map +1 -1
- package/src/v0_8/styles/type.js +1 -1
- package/src/v0_8/styles/utils.d.ts +1 -1
- package/src/v0_8/styles/utils.d.ts.map +1 -1
- package/src/v0_8/styles/utils.js +4 -4
- package/src/v0_8/styles/utils.js.map +1 -1
- package/src/v0_8/types/client-event.d.ts.map +1 -1
- package/src/v0_8/types/colors.d.ts +13 -13
- package/src/v0_8/types/colors.d.ts.map +1 -1
- package/src/v0_8/types/components.d.ts +2 -2
- package/src/v0_8/types/components.d.ts.map +1 -1
- package/src/v0_8/types/primitives.d.ts +2 -2
- package/src/v0_8/types/primitives.d.ts.map +1 -1
- package/src/v0_8/types/types.d.ts +32 -32
- package/src/v0_8/types/types.d.ts.map +1 -1
- package/src/v0_9/basic_catalog/components/basic_components.d.ts +84 -68
- package/src/v0_9/basic_catalog/components/basic_components.d.ts.map +1 -1
- package/src/v0_9/basic_catalog/components/basic_components.js +17 -46
- package/src/v0_9/basic_catalog/components/basic_components.js.map +1 -1
- package/src/v0_9/basic_catalog/expressions/expression_parser.d.ts.map +1 -1
- package/src/v0_9/basic_catalog/expressions/expression_parser.js +5 -11
- package/src/v0_9/basic_catalog/expressions/expression_parser.js.map +1 -1
- package/src/v0_9/basic_catalog/expressions/expression_parser.test.js +6 -26
- package/src/v0_9/basic_catalog/expressions/expression_parser.test.js.map +1 -1
- package/src/v0_9/basic_catalog/functions/basic_functions.d.ts.map +1 -1
- package/src/v0_9/basic_catalog/functions/basic_functions.js.map +1 -1
- package/src/v0_9/basic_catalog/functions/basic_functions.test.js +1 -3
- package/src/v0_9/basic_catalog/functions/basic_functions.test.js.map +1 -1
- package/src/v0_9/basic_catalog/functions/basic_functions_api.d.ts.map +1 -1
- package/src/v0_9/basic_catalog/functions/basic_functions_api.js.map +1 -1
- package/src/v0_9/basic_catalog/index.d.ts +2 -1
- package/src/v0_9/basic_catalog/index.d.ts.map +1 -1
- package/src/v0_9/basic_catalog/index.js +1 -1
- package/src/v0_9/basic_catalog/index.js.map +1 -1
- package/src/v0_9/basic_catalog/styles/default.d.ts +34 -0
- package/src/v0_9/basic_catalog/styles/default.d.ts.map +1 -1
- package/src/v0_9/basic_catalog/styles/default.js +29 -6
- package/src/v0_9/basic_catalog/styles/default.js.map +1 -1
- package/src/v0_9/catalog/types.d.ts.map +1 -1
- package/src/v0_9/catalog/types.js.map +1 -1
- package/src/v0_9/catalog/types.test.js.map +1 -1
- package/src/v0_9/processing/message-processor.d.ts.map +1 -1
- package/src/v0_9/processing/message-processor.js +1 -2
- package/src/v0_9/processing/message-processor.js.map +1 -1
- package/src/v0_9/processing/message-processor.test.js +7 -19
- package/src/v0_9/processing/message-processor.test.js.map +1 -1
- package/src/v0_9/reactivity/signals.test.d.ts.map +1 -1
- package/src/v0_9/reactivity/signals.test.js +1 -1
- package/src/v0_9/reactivity/signals.test.js.map +1 -1
- package/src/v0_9/rendering/component-context.d.ts.map +1 -1
- package/src/v0_9/rendering/component-context.js.map +1 -1
- package/src/v0_9/rendering/data-context.d.ts.map +1 -1
- package/src/v0_9/rendering/data-context.js.map +1 -1
- package/src/v0_9/rendering/data-context.test.js +1 -4
- package/src/v0_9/rendering/data-context.test.js.map +1 -1
- package/src/v0_9/rendering/generic-binder.d.ts.map +1 -1
- package/src/v0_9/rendering/generic-binder.js +9 -17
- package/src/v0_9/rendering/generic-binder.js.map +1 -1
- package/src/v0_9/rendering/generic-binder.test.js +3 -9
- package/src/v0_9/rendering/generic-binder.test.js.map +1 -1
- package/src/v0_9/schema/client-capabilities.d.ts.map +1 -1
- package/src/v0_9/schema/client-to-server.d.ts +52 -52
- package/src/v0_9/schema/client-to-server.d.ts.map +1 -1
- package/src/v0_9/schema/client-to-server.js +7 -24
- package/src/v0_9/schema/client-to-server.js.map +1 -1
- package/src/v0_9/schema/client-to-server.test.js +1 -1
- package/src/v0_9/schema/client-to-server.test.js.map +1 -1
- package/src/v0_9/schema/common-types.d.ts +2 -0
- package/src/v0_9/schema/common-types.d.ts.map +1 -1
- package/src/v0_9/schema/common-types.js +4 -13
- package/src/v0_9/schema/common-types.js.map +1 -1
- package/src/v0_9/schema/server-to-client.d.ts +28 -28
- package/src/v0_9/schema/server-to-client.d.ts.map +1 -1
- package/src/v0_9/schema/server-to-client.js +6 -19
- package/src/v0_9/schema/server-to-client.js.map +1 -1
- package/src/v0_9/schema/verify-schema.test.js +4 -16
- package/src/v0_9/schema/verify-schema.test.js.map +1 -1
- package/src/v0_9/schemas/basic_catalog.json +6 -10
- package/src/v0_9/schemas/client_capabilities.json +1 -9
- package/src/v0_9/schemas/client_to_server.json +1 -7
- package/src/v0_9/schemas/client_to_server_list_wrapper.json +1 -3
- package/src/v0_9/schemas/common_types.json +2 -12
- package/src/v0_9/schemas/server_to_client.json +1 -1
- package/src/v0_9/schemas/server_to_client_list_wrapper.json +1 -3
- package/src/v0_9/state/data-model.d.ts.map +1 -1
- package/src/v0_9/state/data-model.js +1 -2
- package/src/v0_9/state/data-model.js.map +1 -1
- package/src/v0_9/state/data-model.test.js.map +1 -1
- package/src/v0_9/state/surface-components-model.d.ts.map +1 -1
- package/src/v0_9/state/surface-components-model.js.map +1 -1
- package/src/v0_9/state/surface-group-model.d.ts.map +1 -1
- package/src/v0_9/state/surface-group-model.js.map +1 -1
- package/src/v0_9/state/surface-model.d.ts +1 -1
- package/src/v0_9/state/surface-model.d.ts.map +1 -1
- package/src/v0_9/state/surface-model.js +2 -5
- package/src/v0_9/state/surface-model.js.map +1 -1
- package/src/v0_9/state/surface-model.test.js.map +1 -1
- package/src/v0_9/test/function_execution.spec.js.map +1 -1
- package/src/v0_9/test/test-utils.d.ts.map +1 -1
- package/src/v0_9/test/test-utils.js.map +1 -1
|
@@ -13,15 +13,15 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { A2uiMessageSchema } from
|
|
17
|
-
import { A2uiStateError, A2uiValidationError } from
|
|
18
|
-
import { isComponentArrayReference, isObject, isPath, isResolvedAudioPlayer, isResolvedButton, isResolvedCard, isResolvedCheckbox, isResolvedColumn, isResolvedDateTimeInput, isResolvedDivider, isResolvedIcon, isResolvedImage, isResolvedList, isResolvedModal, isResolvedMultipleChoice, isResolvedRow, isResolvedSlider, isResolvedTabs, isResolvedText, isResolvedTextField, isResolvedVideo, } from
|
|
16
|
+
import { A2uiMessageSchema } from '../schema/server-to-client.js';
|
|
17
|
+
import { A2uiStateError, A2uiValidationError } from '../errors.js';
|
|
18
|
+
import { isComponentArrayReference, isObject, isPath, isResolvedAudioPlayer, isResolvedButton, isResolvedCard, isResolvedCheckbox, isResolvedColumn, isResolvedDateTimeInput, isResolvedDivider, isResolvedIcon, isResolvedImage, isResolvedList, isResolvedModal, isResolvedMultipleChoice, isResolvedRow, isResolvedSlider, isResolvedTabs, isResolvedText, isResolvedTextField, isResolvedVideo, } from './guards.js';
|
|
19
19
|
/**
|
|
20
20
|
* Processes and consolidates A2UIProtocolMessage objects into a structured,
|
|
21
21
|
* hierarchical model of UI surfaces.
|
|
22
22
|
*/
|
|
23
23
|
export class A2uiMessageProcessor {
|
|
24
|
-
static { this.DEFAULT_SURFACE_ID =
|
|
24
|
+
static { this.DEFAULT_SURFACE_ID = '@default'; }
|
|
25
25
|
constructor(opts = { mapCtor: Map, arrayCtor: Array, setCtor: Set, objCtor: Object }) {
|
|
26
26
|
this.opts = opts;
|
|
27
27
|
this.mapCtor = Map;
|
|
@@ -80,8 +80,8 @@ export class A2uiMessageProcessor {
|
|
|
80
80
|
let finalPath;
|
|
81
81
|
// The special `.` path means the final path is the node's data context
|
|
82
82
|
// path and so we return the dataContextPath as-is.
|
|
83
|
-
if (relativePath ===
|
|
84
|
-
finalPath = node.dataContextPath ??
|
|
83
|
+
if (relativePath === '.' || relativePath === '') {
|
|
84
|
+
finalPath = node.dataContextPath ?? '/';
|
|
85
85
|
}
|
|
86
86
|
else {
|
|
87
87
|
// For all other paths, resolve them against the node's context.
|
|
@@ -91,7 +91,7 @@ export class A2uiMessageProcessor {
|
|
|
91
91
|
}
|
|
92
92
|
setData(node, relativePath, value, surfaceId = A2uiMessageProcessor.DEFAULT_SURFACE_ID) {
|
|
93
93
|
if (!node) {
|
|
94
|
-
console.warn(
|
|
94
|
+
console.warn('No component node set');
|
|
95
95
|
return;
|
|
96
96
|
}
|
|
97
97
|
const surface = this.getOrCreateSurface(surfaceId);
|
|
@@ -100,8 +100,8 @@ export class A2uiMessageProcessor {
|
|
|
100
100
|
let finalPath;
|
|
101
101
|
// The special `.` path means the final path is the node's data context
|
|
102
102
|
// path and so we return the dataContextPath as-is.
|
|
103
|
-
if (relativePath ===
|
|
104
|
-
finalPath = node.dataContextPath ??
|
|
103
|
+
if (relativePath === '.' || relativePath === '') {
|
|
104
|
+
finalPath = node.dataContextPath ?? '/';
|
|
105
105
|
}
|
|
106
106
|
else {
|
|
107
107
|
// For all other paths, resolve them against the node's context.
|
|
@@ -111,12 +111,12 @@ export class A2uiMessageProcessor {
|
|
|
111
111
|
}
|
|
112
112
|
resolvePath(path, dataContextPath) {
|
|
113
113
|
// If the path is absolute, it overrides any context.
|
|
114
|
-
if (path.startsWith(
|
|
114
|
+
if (path.startsWith('/')) {
|
|
115
115
|
return path;
|
|
116
116
|
}
|
|
117
|
-
if (dataContextPath && dataContextPath !==
|
|
117
|
+
if (dataContextPath && dataContextPath !== '/') {
|
|
118
118
|
// Ensure there's exactly one slash between the context and the path.
|
|
119
|
-
return dataContextPath.endsWith(
|
|
119
|
+
return dataContextPath.endsWith('/')
|
|
120
120
|
? `${dataContextPath}${path}`
|
|
121
121
|
: `${dataContextPath}/${path}`;
|
|
122
122
|
}
|
|
@@ -124,12 +124,12 @@ export class A2uiMessageProcessor {
|
|
|
124
124
|
return `/${path}`;
|
|
125
125
|
}
|
|
126
126
|
parseIfJsonString(value) {
|
|
127
|
-
if (typeof value !==
|
|
127
|
+
if (typeof value !== 'string') {
|
|
128
128
|
return value;
|
|
129
129
|
}
|
|
130
130
|
const trimmedValue = value.trim();
|
|
131
|
-
if ((trimmedValue.startsWith(
|
|
132
|
-
(trimmedValue.startsWith(
|
|
131
|
+
if ((trimmedValue.startsWith('{') && trimmedValue.endsWith('}')) ||
|
|
132
|
+
(trimmedValue.startsWith('[') && trimmedValue.endsWith(']'))) {
|
|
133
133
|
try {
|
|
134
134
|
// It looks like JSON, attempt to parse it.
|
|
135
135
|
return JSON.parse(value);
|
|
@@ -151,7 +151,7 @@ export class A2uiMessageProcessor {
|
|
|
151
151
|
convertKeyValueArrayToMap(arr) {
|
|
152
152
|
const map = new this.mapCtor();
|
|
153
153
|
for (const item of arr) {
|
|
154
|
-
if (!isObject(item) || !(
|
|
154
|
+
if (!isObject(item) || !('key' in item))
|
|
155
155
|
continue;
|
|
156
156
|
const key = item.key;
|
|
157
157
|
// Find the value, which is in a property prefixed with "value".
|
|
@@ -160,10 +160,10 @@ export class A2uiMessageProcessor {
|
|
|
160
160
|
continue;
|
|
161
161
|
let value = item[valueKey];
|
|
162
162
|
// It's a valueMap. We must recursively convert it.
|
|
163
|
-
if (valueKey ===
|
|
163
|
+
if (valueKey === 'valueMap' && Array.isArray(value)) {
|
|
164
164
|
value = this.convertKeyValueArrayToMap(value);
|
|
165
165
|
}
|
|
166
|
-
else if (typeof value ===
|
|
166
|
+
else if (typeof value === 'string') {
|
|
167
167
|
value = this.parseIfJsonString(value);
|
|
168
168
|
}
|
|
169
169
|
this.setDataByPath(map, key, value);
|
|
@@ -172,11 +172,10 @@ export class A2uiMessageProcessor {
|
|
|
172
172
|
}
|
|
173
173
|
setDataByPath(root, path, value) {
|
|
174
174
|
// Check if the incoming value is the special key-value array format.
|
|
175
|
-
if (Array.isArray(value) &&
|
|
176
|
-
(value.length === 0 || (isObject(value[0]) && "key" in value[0]))) {
|
|
175
|
+
if (Array.isArray(value) && (value.length === 0 || (isObject(value[0]) && 'key' in value[0]))) {
|
|
177
176
|
// Check for "set primitive at path" convention:
|
|
178
177
|
// path: "/messages/123", contents: [{ key: ".", valueString: "hi" }]
|
|
179
|
-
if (value.length === 1 && isObject(value[0]) && value[0].key ===
|
|
178
|
+
if (value.length === 1 && isObject(value[0]) && value[0].key === '.') {
|
|
180
179
|
const item = value[0];
|
|
181
180
|
const valueKey = this.findValueKey(item);
|
|
182
181
|
if (valueKey) {
|
|
@@ -184,10 +183,10 @@ export class A2uiMessageProcessor {
|
|
|
184
183
|
value = item[valueKey];
|
|
185
184
|
// We must still process this value in case it's a valueMap or
|
|
186
185
|
// a JSON string.
|
|
187
|
-
if (valueKey ===
|
|
186
|
+
if (valueKey === 'valueMap' && Array.isArray(value)) {
|
|
188
187
|
value = this.convertKeyValueArrayToMap(value);
|
|
189
188
|
}
|
|
190
|
-
else if (typeof value ===
|
|
189
|
+
else if (typeof value === 'string') {
|
|
191
190
|
value = this.parseIfJsonString(value);
|
|
192
191
|
}
|
|
193
192
|
// Now, `value` is the primitive (e.g., "hi"), and we continue
|
|
@@ -203,8 +202,8 @@ export class A2uiMessageProcessor {
|
|
|
203
202
|
}
|
|
204
203
|
}
|
|
205
204
|
const segments = this.normalizePath(path)
|
|
206
|
-
.split(
|
|
207
|
-
.filter(
|
|
205
|
+
.split('/')
|
|
206
|
+
.filter(s => s);
|
|
208
207
|
if (segments.length === 0) {
|
|
209
208
|
// Root data can either be a Map or an Object. If we receive an Object,
|
|
210
209
|
// however, we will normalize it to a proper Map.
|
|
@@ -219,7 +218,7 @@ export class A2uiMessageProcessor {
|
|
|
219
218
|
}
|
|
220
219
|
}
|
|
221
220
|
else {
|
|
222
|
-
console.error(
|
|
221
|
+
console.error('Cannot set root of DataModel to a non-Map value.');
|
|
223
222
|
}
|
|
224
223
|
return;
|
|
225
224
|
}
|
|
@@ -233,9 +232,7 @@ export class A2uiMessageProcessor {
|
|
|
233
232
|
else if (Array.isArray(current) && /^\d+$/.test(segment)) {
|
|
234
233
|
target = current[parseInt(segment, 10)];
|
|
235
234
|
}
|
|
236
|
-
if (target === undefined ||
|
|
237
|
-
typeof target !== "object" ||
|
|
238
|
-
target === null) {
|
|
235
|
+
if (target === undefined || typeof target !== 'object' || target === null) {
|
|
239
236
|
target = new this.mapCtor();
|
|
240
237
|
if (current instanceof this.mapCtor) {
|
|
241
238
|
current.set(segment, target);
|
|
@@ -263,16 +260,16 @@ export class A2uiMessageProcessor {
|
|
|
263
260
|
*/
|
|
264
261
|
normalizePath(path) {
|
|
265
262
|
// 1. Replace all bracket accessors `[index]` with dot accessors `.index`
|
|
266
|
-
const dotPath = path.replace(/\[(\d+)\]/g,
|
|
263
|
+
const dotPath = path.replace(/\[(\d+)\]/g, '.$1');
|
|
267
264
|
// 2. Split by dots
|
|
268
|
-
const segments = dotPath.split(
|
|
265
|
+
const segments = dotPath.split('.');
|
|
269
266
|
// 3. Join with slashes and ensure it starts with a slash
|
|
270
|
-
return
|
|
267
|
+
return '/' + segments.filter(s => s.length > 0).join('/');
|
|
271
268
|
}
|
|
272
269
|
getDataByPath(root, path) {
|
|
273
270
|
const segments = this.normalizePath(path)
|
|
274
|
-
.split(
|
|
275
|
-
.filter(
|
|
271
|
+
.split('/')
|
|
272
|
+
.filter(s => s);
|
|
276
273
|
let current = root;
|
|
277
274
|
for (const segment of segments) {
|
|
278
275
|
if (current === undefined || current === null)
|
|
@@ -322,7 +319,7 @@ export class A2uiMessageProcessor {
|
|
|
322
319
|
}
|
|
323
320
|
handleDataModelUpdate(message, surfaceId) {
|
|
324
321
|
const surface = this.getOrCreateSurface(surfaceId);
|
|
325
|
-
const path = message.path ??
|
|
322
|
+
const path = message.path ?? '/';
|
|
326
323
|
this.setDataByPath(surface.dataModel, path, message.contents);
|
|
327
324
|
this.rebuildComponentTree(surface);
|
|
328
325
|
}
|
|
@@ -344,16 +341,16 @@ export class A2uiMessageProcessor {
|
|
|
344
341
|
}
|
|
345
342
|
// Track visited nodes to avoid circular references.
|
|
346
343
|
const visited = new this.setCtor();
|
|
347
|
-
surface.componentTree = this.buildNodeRecursive(surface.rootComponentId, surface, visited,
|
|
344
|
+
surface.componentTree = this.buildNodeRecursive(surface.rootComponentId, surface, visited, '/', '');
|
|
348
345
|
}
|
|
349
346
|
/** Finds a value key in a map. */
|
|
350
347
|
findValueKey(value) {
|
|
351
|
-
return Object.keys(value).find(
|
|
348
|
+
return Object.keys(value).find(k => k.startsWith('value'));
|
|
352
349
|
}
|
|
353
350
|
/**
|
|
354
351
|
* Builds out the nodes recursively.
|
|
355
352
|
*/
|
|
356
|
-
buildNodeRecursive(baseComponentId, surface, visited, dataContextPath, idSuffix =
|
|
353
|
+
buildNodeRecursive(baseComponentId, surface, visited, dataContextPath, idSuffix = '') {
|
|
357
354
|
const fullId = `${baseComponentId}${idSuffix}`; // Construct the full ID
|
|
358
355
|
const { components } = surface;
|
|
359
356
|
if (!components.has(baseComponentId)) {
|
|
@@ -382,169 +379,169 @@ export class A2uiMessageProcessor {
|
|
|
382
379
|
const baseNode = {
|
|
383
380
|
id: fullId,
|
|
384
381
|
dataContextPath,
|
|
385
|
-
weight: componentData.weight ??
|
|
382
|
+
weight: componentData.weight ?? 'initial',
|
|
386
383
|
};
|
|
387
384
|
switch (componentType) {
|
|
388
|
-
case
|
|
385
|
+
case 'Text':
|
|
389
386
|
if (!isResolvedText(resolvedProperties)) {
|
|
390
387
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
391
388
|
}
|
|
392
389
|
return new this.objCtor({
|
|
393
390
|
...baseNode,
|
|
394
|
-
type:
|
|
391
|
+
type: 'Text',
|
|
395
392
|
properties: resolvedProperties,
|
|
396
393
|
});
|
|
397
|
-
case
|
|
394
|
+
case 'Image':
|
|
398
395
|
if (!isResolvedImage(resolvedProperties)) {
|
|
399
396
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
400
397
|
}
|
|
401
398
|
return new this.objCtor({
|
|
402
399
|
...baseNode,
|
|
403
|
-
type:
|
|
400
|
+
type: 'Image',
|
|
404
401
|
properties: resolvedProperties,
|
|
405
402
|
});
|
|
406
|
-
case
|
|
403
|
+
case 'Icon':
|
|
407
404
|
if (!isResolvedIcon(resolvedProperties)) {
|
|
408
405
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
409
406
|
}
|
|
410
407
|
return new this.objCtor({
|
|
411
408
|
...baseNode,
|
|
412
|
-
type:
|
|
409
|
+
type: 'Icon',
|
|
413
410
|
properties: resolvedProperties,
|
|
414
411
|
});
|
|
415
|
-
case
|
|
412
|
+
case 'Video':
|
|
416
413
|
if (!isResolvedVideo(resolvedProperties)) {
|
|
417
414
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
418
415
|
}
|
|
419
416
|
return new this.objCtor({
|
|
420
417
|
...baseNode,
|
|
421
|
-
type:
|
|
418
|
+
type: 'Video',
|
|
422
419
|
properties: resolvedProperties,
|
|
423
420
|
});
|
|
424
|
-
case
|
|
421
|
+
case 'AudioPlayer':
|
|
425
422
|
if (!isResolvedAudioPlayer(resolvedProperties)) {
|
|
426
423
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
427
424
|
}
|
|
428
425
|
return new this.objCtor({
|
|
429
426
|
...baseNode,
|
|
430
|
-
type:
|
|
427
|
+
type: 'AudioPlayer',
|
|
431
428
|
properties: resolvedProperties,
|
|
432
429
|
});
|
|
433
|
-
case
|
|
430
|
+
case 'Row':
|
|
434
431
|
if (!isResolvedRow(resolvedProperties)) {
|
|
435
432
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
436
433
|
}
|
|
437
434
|
return new this.objCtor({
|
|
438
435
|
...baseNode,
|
|
439
|
-
type:
|
|
436
|
+
type: 'Row',
|
|
440
437
|
properties: resolvedProperties,
|
|
441
438
|
});
|
|
442
|
-
case
|
|
439
|
+
case 'Column':
|
|
443
440
|
if (!isResolvedColumn(resolvedProperties)) {
|
|
444
441
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
445
442
|
}
|
|
446
443
|
return new this.objCtor({
|
|
447
444
|
...baseNode,
|
|
448
|
-
type:
|
|
445
|
+
type: 'Column',
|
|
449
446
|
properties: resolvedProperties,
|
|
450
447
|
});
|
|
451
|
-
case
|
|
448
|
+
case 'List':
|
|
452
449
|
if (!isResolvedList(resolvedProperties)) {
|
|
453
450
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
454
451
|
}
|
|
455
452
|
return new this.objCtor({
|
|
456
453
|
...baseNode,
|
|
457
|
-
type:
|
|
454
|
+
type: 'List',
|
|
458
455
|
properties: resolvedProperties,
|
|
459
456
|
});
|
|
460
|
-
case
|
|
457
|
+
case 'Card':
|
|
461
458
|
if (!isResolvedCard(resolvedProperties)) {
|
|
462
459
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
463
460
|
}
|
|
464
461
|
return new this.objCtor({
|
|
465
462
|
...baseNode,
|
|
466
|
-
type:
|
|
463
|
+
type: 'Card',
|
|
467
464
|
properties: resolvedProperties,
|
|
468
465
|
});
|
|
469
|
-
case
|
|
466
|
+
case 'Tabs':
|
|
470
467
|
if (!isResolvedTabs(resolvedProperties)) {
|
|
471
468
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
472
469
|
}
|
|
473
470
|
return new this.objCtor({
|
|
474
471
|
...baseNode,
|
|
475
|
-
type:
|
|
472
|
+
type: 'Tabs',
|
|
476
473
|
properties: resolvedProperties,
|
|
477
474
|
});
|
|
478
|
-
case
|
|
475
|
+
case 'Divider':
|
|
479
476
|
if (!isResolvedDivider(resolvedProperties)) {
|
|
480
477
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
481
478
|
}
|
|
482
479
|
return new this.objCtor({
|
|
483
480
|
...baseNode,
|
|
484
|
-
type:
|
|
481
|
+
type: 'Divider',
|
|
485
482
|
properties: resolvedProperties,
|
|
486
483
|
});
|
|
487
|
-
case
|
|
484
|
+
case 'Modal':
|
|
488
485
|
if (!isResolvedModal(resolvedProperties)) {
|
|
489
486
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
490
487
|
}
|
|
491
488
|
return new this.objCtor({
|
|
492
489
|
...baseNode,
|
|
493
|
-
type:
|
|
490
|
+
type: 'Modal',
|
|
494
491
|
properties: resolvedProperties,
|
|
495
492
|
});
|
|
496
|
-
case
|
|
493
|
+
case 'Button':
|
|
497
494
|
if (!isResolvedButton(resolvedProperties)) {
|
|
498
495
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
499
496
|
}
|
|
500
497
|
return new this.objCtor({
|
|
501
498
|
...baseNode,
|
|
502
|
-
type:
|
|
499
|
+
type: 'Button',
|
|
503
500
|
properties: resolvedProperties,
|
|
504
501
|
});
|
|
505
|
-
case
|
|
502
|
+
case 'CheckBox':
|
|
506
503
|
if (!isResolvedCheckbox(resolvedProperties)) {
|
|
507
504
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
508
505
|
}
|
|
509
506
|
return new this.objCtor({
|
|
510
507
|
...baseNode,
|
|
511
|
-
type:
|
|
508
|
+
type: 'CheckBox',
|
|
512
509
|
properties: resolvedProperties,
|
|
513
510
|
});
|
|
514
|
-
case
|
|
511
|
+
case 'TextField':
|
|
515
512
|
if (!isResolvedTextField(resolvedProperties)) {
|
|
516
513
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
517
514
|
}
|
|
518
515
|
return new this.objCtor({
|
|
519
516
|
...baseNode,
|
|
520
|
-
type:
|
|
517
|
+
type: 'TextField',
|
|
521
518
|
properties: resolvedProperties,
|
|
522
519
|
});
|
|
523
|
-
case
|
|
520
|
+
case 'DateTimeInput':
|
|
524
521
|
if (!isResolvedDateTimeInput(resolvedProperties)) {
|
|
525
522
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
526
523
|
}
|
|
527
524
|
return new this.objCtor({
|
|
528
525
|
...baseNode,
|
|
529
|
-
type:
|
|
526
|
+
type: 'DateTimeInput',
|
|
530
527
|
properties: resolvedProperties,
|
|
531
528
|
});
|
|
532
|
-
case
|
|
529
|
+
case 'MultipleChoice':
|
|
533
530
|
if (!isResolvedMultipleChoice(resolvedProperties)) {
|
|
534
531
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
535
532
|
}
|
|
536
533
|
return new this.objCtor({
|
|
537
534
|
...baseNode,
|
|
538
|
-
type:
|
|
535
|
+
type: 'MultipleChoice',
|
|
539
536
|
properties: resolvedProperties,
|
|
540
537
|
});
|
|
541
|
-
case
|
|
538
|
+
case 'Slider':
|
|
542
539
|
if (!isResolvedSlider(resolvedProperties)) {
|
|
543
540
|
throw new A2uiValidationError(`Invalid data; expected ${componentType}`);
|
|
544
541
|
}
|
|
545
542
|
return new this.objCtor({
|
|
546
543
|
...baseNode,
|
|
547
|
-
type:
|
|
544
|
+
type: 'Slider',
|
|
548
545
|
properties: resolvedProperties,
|
|
549
546
|
});
|
|
550
547
|
default:
|
|
@@ -561,16 +558,16 @@ export class A2uiMessageProcessor {
|
|
|
561
558
|
* a child node (a string that matches a component ID), an explicitList of
|
|
562
559
|
* children, or a template, these will be built out here.
|
|
563
560
|
*/
|
|
564
|
-
resolvePropertyValue(value, surface, visited, dataContextPath, idSuffix =
|
|
561
|
+
resolvePropertyValue(value, surface, visited, dataContextPath, idSuffix = '') {
|
|
565
562
|
// 1. If it's a string that matches a component ID, build that node.
|
|
566
|
-
if (typeof value ===
|
|
563
|
+
if (typeof value === 'string' && surface.components.has(value)) {
|
|
567
564
|
return this.buildNodeRecursive(value, surface, visited, dataContextPath, idSuffix);
|
|
568
565
|
}
|
|
569
566
|
// 2. If it's a ComponentArrayReference (e.g., a `children` property),
|
|
570
567
|
// resolve the list and return an array of nodes.
|
|
571
568
|
if (isComponentArrayReference(value)) {
|
|
572
569
|
if (value.explicitList) {
|
|
573
|
-
return value.explicitList.map(
|
|
570
|
+
return value.explicitList.map(id => this.buildNodeRecursive(id, surface, visited, dataContextPath, idSuffix));
|
|
574
571
|
}
|
|
575
572
|
if (value.template) {
|
|
576
573
|
const fullDataPath = this.resolvePath(value.template.dataBinding, dataContextPath);
|
|
@@ -582,10 +579,10 @@ export class A2uiMessageProcessor {
|
|
|
582
579
|
// Create a synthetic ID based on the template ID and the
|
|
583
580
|
// full index path of the data (e.g., template-id:0:1)
|
|
584
581
|
const parentIndices = dataContextPath
|
|
585
|
-
.split(
|
|
586
|
-
.filter(
|
|
582
|
+
.split('/')
|
|
583
|
+
.filter(segment => /^\d+$/.test(segment));
|
|
587
584
|
const newIndices = [...parentIndices, index];
|
|
588
|
-
const newSuffix = `:${newIndices.join(
|
|
585
|
+
const newSuffix = `:${newIndices.join(':')}`;
|
|
589
586
|
const childDataContextPath = `${fullDataPath}/${index}`;
|
|
590
587
|
return this.buildNodeRecursive(template.componentId, // baseId
|
|
591
588
|
surface, visited, childDataContextPath, newSuffix);
|
|
@@ -594,7 +591,7 @@ export class A2uiMessageProcessor {
|
|
|
594
591
|
// Handle Map data.
|
|
595
592
|
const mapCtor = this.mapCtor;
|
|
596
593
|
if (data instanceof mapCtor) {
|
|
597
|
-
return Array.from(data.keys(),
|
|
594
|
+
return Array.from(data.keys(), key => {
|
|
598
595
|
const newSuffix = `:${key}`;
|
|
599
596
|
const childDataContextPath = `${fullDataPath}/${key}`;
|
|
600
597
|
return this.buildNodeRecursive(template.componentId, // baseId
|
|
@@ -607,7 +604,7 @@ export class A2uiMessageProcessor {
|
|
|
607
604
|
}
|
|
608
605
|
// 3. If it's a plain array, resolve each of its items.
|
|
609
606
|
if (Array.isArray(value)) {
|
|
610
|
-
return value.map(
|
|
607
|
+
return value.map(item => this.resolvePropertyValue(item, surface, visited, dataContextPath, idSuffix));
|
|
611
608
|
}
|
|
612
609
|
// 4. If it's a plain object, resolve each of its properties.
|
|
613
610
|
if (isObject(value)) {
|
|
@@ -618,12 +615,12 @@ export class A2uiMessageProcessor {
|
|
|
618
615
|
// dataContextPath and if 1) it's not the default and 2) we also see the
|
|
619
616
|
// path beginning with /item/ or ./we trim it.
|
|
620
617
|
let propertyValue = propValue;
|
|
621
|
-
if (isPath(key, propValue) && dataContextPath !==
|
|
618
|
+
if (isPath(key, propValue) && dataContextPath !== '/') {
|
|
622
619
|
propertyValue = propValue
|
|
623
|
-
.replace(/^\.?\/item/,
|
|
624
|
-
.replace(/^\.?\/text/,
|
|
625
|
-
.replace(/^\.?\/label/,
|
|
626
|
-
.replace(/^\.?\//,
|
|
620
|
+
.replace(/^\.?\/item/, '')
|
|
621
|
+
.replace(/^\.?\/text/, '')
|
|
622
|
+
.replace(/^\.?\/label/, '')
|
|
623
|
+
.replace(/^\.?\//, '');
|
|
627
624
|
newObj[key] = propertyValue;
|
|
628
625
|
continue;
|
|
629
626
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-processor.js","sourceRoot":"","sources":["../../../../src/v0_8/data/model-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmBH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EACL,yBAAyB,EACzB,QAAQ,EACR,MAAM,EACN,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,wBAAwB,EACxB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,MAAM,OAAO,oBAAoB;aACf,uBAAkB,GAAG,UAAU,AAAb,CAAc;IAQhD,YACW,OAKL,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE;QAL5D,SAAI,GAAJ,IAAI,CAKwD;QAZ/D,YAAO,GAAmB,GAAG,CAAC;QAC9B,cAAS,GAAqB,KAAK,CAAC;QACpC,YAAO,GAAmB,GAAG,CAAC;QAC9B,YAAO,GAAsB,MAAM,CAAC;QAW1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;IAED,WAAW;QACT,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;QAClC,oEAAoE;QACpE,uEAAuE;QACvE,iEAAiE;QACjE,qBAAqB;QACrB,MAAM,eAAe,GAAG,IAAI,GAAG,EAAmB,CAAC;QACnD,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;YAC/C,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;gBAC5B,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAED,eAAe,CAAC,QAAiC;QAC/C,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAEpD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3B,IAAI,CAAC,oBAAoB,CACvB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,cAAc,CAAC,SAAS,CACjC,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC1B,IAAI,CAAC,mBAAmB,CACtB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,aAAa,CAAC,SAAS,CAChC,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;gBAC5B,IAAI,CAAC,qBAAqB,CACxB,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,eAAe,CAAC,SAAS,CAClC,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC1B,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,OAAO,CACL,IAAsB,EACtB,YAAoB,EACpB,SAAS,GAAG,oBAAoB,CAAC,kBAAkB;QAEnD,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,IAAI,SAAiB,CAAC;QAEtB,uEAAuE;QACvE,mDAAmD;QACnD,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;YAChD,SAAS,GAAG,IAAI,CAAC,eAAe,IAAI,GAAG,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,gEAAgE;YAChE,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,CACL,IAA6B,EAC7B,YAAoB,EACpB,KAAgB,EAChB,SAAS,GAAG,oBAAoB,CAAC,kBAAkB;QAEnD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,IAAI,SAAiB,CAAC;QAEtB,uEAAuE;QACvE,mDAAmD;QACnD,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;YAChD,SAAS,GAAG,IAAI,CAAC,eAAe,IAAI,GAAG,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,gEAAgE;YAChE,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,eAAwB;QAChD,qDAAqD;QACrD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,eAAe,IAAI,eAAe,KAAK,GAAG,EAAE,CAAC;YAC/C,qEAAqE;YACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAClC,CAAC,CAAC,GAAG,eAAe,GAAG,IAAI,EAAE;gBAC7B,CAAC,CAAC,GAAG,eAAe,IAAI,IAAI,EAAE,CAAC;QACnC,CAAC;QAED,qEAAqE;QACrE,OAAO,IAAI,IAAI,EAAE,CAAC;IACpB,CAAC;IAEO,iBAAiB,CAAC,KAAgB;QACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAClC,IACE,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC5D,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAC5D,CAAC;YACD,IAAI,CAAC;gBACH,2CAA2C;gBAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,4DAA4D;gBAC5D,OAAO,CAAC,IAAI,CACV,2CAA2C,KAAK,CAAC,SAAS,CACxD,CAAC,EACD,EAAE,CACH,MAAM,EACP,CAAC,CACF,CAAC;gBACF,OAAO,KAAK,CAAC,CAAC,yBAAyB;YACzC,CAAC;QACH,CAAC;QAED,oCAAoC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,yBAAyB,CAAC,GAAc;QAC9C,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,OAAO,EAAqB,CAAC;QAClD,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC;gBAAE,SAAS;YAElD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAa,CAAC;YAE/B,gEAAgE;YAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,QAAQ;gBAAE,SAAS;YAExB,IAAI,KAAK,GAAc,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtC,mDAAmD;YACnD,IAAI,QAAQ,KAAK,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpD,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;YAChD,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,aAAa,CAAC,IAAa,EAAE,IAAY,EAAE,KAA6B;QAC9E,qEAAqE;QACrE,IACE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACpB,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EACjE,CAAC;YACD,gDAAgD;YAChD,qEAAqE;YACrE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBACrE,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAEzC,IAAI,QAAQ,EAAE,CAAC;oBACb,8BAA8B;oBAC9B,KAAK,GAAG,IAAI,CAAC,QAAQ,CAA2B,CAAC;oBAEjD,8DAA8D;oBAC9D,iBAAiB;oBACjB,IAAI,QAAQ,KAAK,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;wBACpD,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAkB,CAAC,CAAC;oBAC7D,CAAC;yBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACrC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;oBACxC,CAAC;oBACD,8DAA8D;oBAC9D,gBAAgB;gBAClB,CAAC;qBAAM,CAAC;oBACN,iDAAiD;oBACjD,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAkB,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAkB,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;aACtC,KAAK,CAAC,GAAG,CAAC;aACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,uEAAuE;YACvE,iDAAiD;YACjD,IAAI,KAAK,YAAY,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,gCAAgC;gBAChC,IAAI,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC/C,KAAK,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBAClD,CAAC;gBAED,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;oBACvC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACpE,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,OAAO,GAAwB,IAAI,CAAC;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,MAA6B,CAAC;YAElC,IAAI,OAAO,YAAY,GAAG,EAAE,CAAC;gBAC3B,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3D,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;YAED,IACE,MAAM,KAAK,SAAS;gBACpB,OAAO,MAAM,KAAK,QAAQ;gBAC1B,MAAM,KAAK,IAAI,EACf,CAAC;gBACD,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC5B,IAAI,OAAO,YAAY,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC/B,CAAC;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC;gBAC1C,CAAC;YACH,CAAC;YACD,OAAO,GAAG,MAA6B,CAAC;QAC1C,CAAC;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,KAAkB,CAAC;QACvC,IAAI,OAAO,YAAY,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAChE,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,aAAa,CAAC,IAAY;QAChC,yEAAyE;QACzE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAElD,mBAAmB;QACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEpC,yDAAyD;QACzD,OAAO,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9D,CAAC;IAEO,aAAa,CAAC,IAAa,EAAE,IAAY;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;aACtC,KAAK,CAAC,GAAG,CAAC;aACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAEpB,IAAI,OAAO,GAAc,IAAI,CAAC;QAC9B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YAE3D,IAAI,OAAO,YAAY,GAAG,EAAE,CAAC;gBAC3B,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAY,CAAC;YAC5C,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3D,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAC3C,CAAC;iBAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,mFAAmF;gBACnF,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,kBAAkB,CAAC,SAAiB;QAC1C,IAAI,OAAO,GAAwB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;gBACzB,eAAe,EAAE,IAAI;gBACrB,aAAa,EAAE,IAAI;gBACnB,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;gBAC7B,UAAU,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;gBAC9B,MAAM,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;aAC3B,CAAY,CAAC;YAEd,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,oBAAoB,CAC1B,OAA8B,EAC9B,SAAoB;QAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;QACvC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,mBAAmB,CACzB,OAA6B,EAC7B,SAAoB;QAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YAC3C,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,qBAAqB,CAC3B,OAAwB,EACxB,SAAoB;QAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC;QACjC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,mBAAmB,CAAC,OAA6B;QACvD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;OAOG;IACK,oBAAoB,CAAC,OAAgB;QAC3C,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,oDAAoD;QACpD,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAU,CAAC;QAC3C,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAC7C,OAAO,CAAC,eAAe,EACvB,OAAO,EACP,OAAO,EACP,GAAG,EACH,EAAE,CACH,CAAC;IACJ,CAAC;IAED,kCAAkC;IAC1B,YAAY,CAAC,KAA8B;QACjD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACK,kBAAkB,CACxB,eAAuB,EACvB,OAAgB,EAChB,OAAoB,EACpB,eAAuB,EACvB,QAAQ,GAAG,EAAE;QAEb,MAAM,MAAM,GAAG,GAAG,eAAe,GAAG,QAAQ,EAAE,CAAC,CAAC,wBAAwB;QACxE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QAE/B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,cAAc,CACtB,sCAAsC,MAAM,IAAI,CACjD,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpB,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,eAAe,CAAE,CAAC;QACvD,MAAM,cAAc,GAAG,aAAa,CAAC,SAAS,IAAI,EAAE,CAAC;QACrD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,oBAAoB,GACxB,cAAc,CAAC,aAA4C,CAAC,CAAC;QAE/D,0EAA0E;QAC1E,8BAA8B;QAC9B,MAAM,kBAAkB,GAAgB,IAAI,IAAI,CAAC,OAAO,EAAiB,CAAC;QAC1E,IAAI,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACnC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAChE,kBAAkB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,oBAAoB,CACjD,KAAK,EACL,OAAO,EACP,OAAO,EACP,eAAe,EACf,QAAQ,CACT,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEvB,wEAAwE;QACxE,qEAAqE;QACrE,kDAAkD;QAClD,MAAM,QAAQ,GAAG;YACf,EAAE,EAAE,MAAM;YACV,eAAe;YACf,MAAM,EAAE,aAAa,CAAC,MAAM,IAAI,SAAS;SAC1C,CAAC;QACF,QAAQ,aAAa,EAAE,CAAC;YACtB,KAAK,MAAM;gBACT,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACxC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,MAAM;oBACZ,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,OAAO;gBACV,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACzC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,MAAM;gBACT,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACxC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,MAAM;oBACZ,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,OAAO;gBACV,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACzC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,aAAa;gBAChB,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC/C,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,KAAK;gBACR,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBAED,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,KAAK;oBACX,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,QAAQ;gBACX,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC1C,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBAED,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,MAAM;gBACT,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACxC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,MAAM;oBACZ,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,MAAM;gBACT,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACxC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,MAAM;oBACZ,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,MAAM;gBACT,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACxC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,MAAM;oBACZ,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,SAAS;gBACZ,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC3C,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,SAAS;oBACf,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,OAAO;gBACV,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACzC,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,QAAQ;gBACX,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC1C,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,UAAU;gBACb,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC5C,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,UAAU;oBAChB,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,WAAW;gBACd,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC7C,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,WAAW;oBACjB,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,eAAe;gBAClB,IAAI,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACjD,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,eAAe;oBACrB,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,gBAAgB;gBACnB,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAClD,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,gBAAgB;oBACtB,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB,KAAK,QAAQ;gBACX,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC1C,MAAM,IAAI,mBAAmB,CAC3B,0BAA0B,aAAa,EAAE,CAC1C,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;YAEzB;gBACE,8CAA8C;gBAC9C,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;oBACtB,GAAG,QAAQ;oBACX,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,kBAAkB;iBAC/B,CAAqB,CAAC;QAC3B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,oBAAoB,CAC1B,KAAc,EACd,OAAgB,EAChB,OAAoB,EACpB,eAAuB,EACvB,QAAQ,GAAG,EAAE;QAEb,oEAAoE;QACpE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC,kBAAkB,CAC5B,KAAK,EACL,OAAO,EACP,OAAO,EACP,eAAe,EACf,QAAQ,CACT,CAAC;QACJ,CAAC;QAED,sEAAsE;QACtE,oDAAoD;QACpD,IAAI,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,kBAAkB,CACrB,EAAE,EACF,OAAO,EACP,OAAO,EACP,eAAe,EACf,QAAQ,CACT,CACF,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CACnC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAC1B,eAAe,CAChB,CAAC;gBACF,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;gBAEhC,qBAAqB;gBACrB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;wBAC3B,yDAAyD;wBACzD,sDAAsD;wBACtD,MAAM,aAAa,GAAG,eAAe;6BAClC,KAAK,CAAC,GAAG,CAAC;6BACV,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;wBAE9C,MAAM,UAAU,GAAG,CAAC,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC;wBAC7C,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC7C,MAAM,oBAAoB,GAAG,GAAG,YAAY,IAAI,KAAK,EAAE,CAAC;wBAExD,OAAO,IAAI,CAAC,kBAAkB,CAC5B,QAAQ,CAAC,WAAW,EAAE,SAAS;wBAC/B,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,SAAS,CACV,CAAC;oBACJ,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,mBAAmB;gBACnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC7B,IAAI,IAAI,YAAY,OAAO,EAAE,CAAC;oBAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;wBACrC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;wBAC5B,MAAM,oBAAoB,GAAG,GAAG,YAAY,IAAI,GAAG,EAAE,CAAC;wBAEtD,OAAO,IAAI,CAAC,kBAAkB,CAC5B,QAAQ,CAAC,WAAW,EAAE,SAAS;wBAC/B,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,SAAS,CACV,CAAC;oBACJ,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,mDAAmD;gBACnD,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,uDAAuD;QACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACxB,IAAI,CAAC,oBAAoB,CACvB,IAAI,EACJ,OAAO,EACP,OAAO,EACP,eAAe,EACf,QAAQ,CACT,CACF,CAAC;QACJ,CAAC;QAED,6DAA6D;QAC7D,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,MAAM,GAAgB,IAAI,IAAI,CAAC,OAAO,EAAiB,CAAC;YAC9D,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrD,sEAAsE;gBACtE,kEAAkE;gBAClE,wEAAwE;gBACxE,8CAA8C;gBAC9C,IAAI,aAAa,GAAG,SAAS,CAAC;gBAC9B,IAAI,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,eAAe,KAAK,GAAG,EAAE,CAAC;oBACtD,aAAa,GAAG,SAAS;yBACtB,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;yBACzB,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;yBACzB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;yBAC1B,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACzB,MAAM,CAAC,GAAG,CAAC,GAAG,aAA8B,CAAC;oBAC7C,SAAS;gBACX,CAAC;gBAED,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,oBAAoB,CACrC,aAAa,EACb,OAAO,EACP,OAAO,EACP,eAAe,EACf,QAAQ,CACT,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,wCAAwC;QACxC,OAAO,KAAsB,CAAC;IAChC,CAAC"}
|
|
1
|
+
{"version":3,"file":"model-processor.js","sourceRoot":"","sources":["../../../../src/v0_8/data/model-processor.ts"],"names":[],"mappings":"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"}
|