@wise/dynamic-flow-types 3.8.1 → 3.9.0-experimental-1c8f72d

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.
@@ -2,180 +2,53 @@
2
2
  import { z } from 'zod';
3
3
  import type {
4
4
  JsonElement,
5
- DecisionLayoutOption,
6
- Behavior,
7
- ModalLayoutContent,
5
+ Step,
6
+ Schema,
8
7
  Layout,
9
- AlertLayout,
10
- AlertLayoutCallToAction,
11
- ListLayout,
12
- ListLayoutCallToAction,
13
- ListLayoutItem,
14
- SectionLayoutCallToAction,
8
+ Polling,
9
+ LinkHandler,
10
+ ModalResponseBody,
11
+ ModalBehavior,
12
+ PersistAsync,
13
+ Behavior,
14
+ PollingOnError,
15
+ AdditionalInfo,
15
16
  StatusListLayout,
16
17
  StatusListLayoutItem,
17
- TabsLayoutTab,
18
- BoxLayout,
19
- SectionLayout,
20
- ReviewLayout,
18
+ DecisionLayout,
19
+ DecisionLayoutOption,
21
20
  ReviewLayoutField,
22
21
  ReviewLayoutCallToAction,
23
- ButtonLayout,
24
- ItemCallToAction,
25
- DecisionLayout,
26
- AdditionalInfo,
27
22
  ColumnsLayout,
23
+ ButtonLayout,
24
+ SectionLayout,
25
+ SectionLayoutCallToAction,
26
+ ListLayoutCallToAction,
27
+ TabsLayoutTab,
28
28
  ModalLayout,
29
+ ModalLayoutContent,
29
30
  TabsLayout,
30
- Step,
31
- Schema,
32
- Polling,
33
- LinkHandler,
34
- PersistAsync,
35
- ModalBehavior,
36
- PollingOnError,
31
+ ListLayoutItem,
32
+ ItemCallToAction,
33
+ ListLayout,
34
+ AlertLayout,
35
+ BoxLayout,
36
+ ReviewLayout,
37
+ AlertLayoutCallToAction,
38
+ ObjectSchema,
37
39
  BlobSchema,
40
+ AllOfSchema,
41
+ ArraySchema,
42
+ BooleanSchema,
43
+ ConstSchema,
44
+ IntegerSchema,
45
+ NumberSchema,
38
46
  OneOfSchema,
39
- ArraySchemaTuple,
40
47
  StringSchema,
41
- NumberSchema,
42
- IntegerSchema,
43
- ObjectSchema,
44
- ArraySchema,
45
48
  ArraySchemaList,
46
- ConstSchema,
47
- BooleanSchema,
48
- AllOfSchema,
49
- ModalResponseBody,
49
+ ArraySchemaTuple,
50
50
  } from '../next';
51
51
 
52
- export const listLayoutStatusSchema = z.union([
53
- z.literal('warning'),
54
- z.literal('neutral'),
55
- z.literal('positive'),
56
- ]);
57
-
58
- export const alignSchema = z.union([z.literal('left'), z.literal('center'), z.literal('right')]);
59
-
60
- export const sizeSchema = z.union([
61
- z.literal('xs'),
62
- z.literal('sm'),
63
- z.literal('md'),
64
- z.literal('lg'),
65
- z.literal('xl'),
66
- ]);
67
-
68
- export const formLayoutSchemaReferenceSchema = z.object({
69
- $ref: z.string(),
70
- });
71
-
72
- export const imageSchema = z.object({
73
- text: z.string().optional(),
74
- url: z.string().optional(),
75
- uri: z.string().optional(),
76
- accessibilityDescription: z.string().optional(),
77
- });
78
-
79
- export const supportingValuesSchema = z.object({
80
- value: z.string().optional(),
81
- subvalue: z.string().optional(),
82
- });
83
-
84
- export const headingLayoutSchema = z.object({
85
- type: z.literal('heading'),
86
- text: z.string(),
87
- size: sizeSchema.optional(),
88
- align: alignSchema.optional(),
89
- control: z.string().optional(),
90
- margin: sizeSchema.optional(),
91
- analyticsId: z.string().optional(),
92
- });
93
-
94
- export const columnsLayoutBiasSchema = z.union([
95
- z.literal('none'),
96
- z.literal('left'),
97
- z.literal('right'),
98
- ]);
99
-
100
- export const contextSchema = z.union([
101
- z.literal('positive'),
102
- z.literal('neutral'),
103
- z.literal('warning'),
104
- z.literal('negative'),
105
- z.literal('success'),
106
- z.literal('failure'),
107
- z.literal('info'),
108
- z.literal('primary'),
109
- ]);
110
-
111
- export const markdownLayoutSchema = z.object({
112
- type: z.literal('markdown'),
113
- content: z.string(),
114
- align: alignSchema.optional(),
115
- control: z.string().optional(),
116
- margin: sizeSchema.optional(),
117
- analyticsId: z.string().optional(),
118
- });
119
-
120
- export const imageLayoutSchema = z.object({
121
- type: z.literal('image'),
122
- text: z.string().optional(),
123
- url: z.string().optional(),
124
- accessibilityDescription: z.string().optional(),
125
- content: imageSchema.optional(),
126
- size: sizeSchema.optional(),
127
- control: z.string().optional(),
128
- margin: sizeSchema.optional(),
129
- align: alignSchema.optional(),
130
- analyticsId: z.string().optional(),
131
- });
132
-
133
- export const modalLayoutTriggerSchema = z.object({
134
- title: z.string(),
135
- });
136
-
137
- export const statusListLayoutStatusSchema = z.union([
138
- z.literal('not-done'),
139
- z.literal('pending'),
140
- z.literal('done'),
141
- ]);
142
-
143
- export const loadingIndicatorLayoutSchema = z.object({
144
- type: z.literal('loading-indicator'),
145
- size: sizeSchema.optional(),
146
- control: z.string().optional(),
147
- margin: sizeSchema.optional(),
148
- analyticsId: z.string().optional(),
149
- });
150
-
151
- export const helpSchema = z.object({
152
- markdown: z.string(),
153
- });
154
-
155
- export const dividerLayoutSchema = z.object({
156
- type: z.literal('divider'),
157
- control: z.string().optional(),
158
- margin: sizeSchema.optional(),
159
- analyticsId: z.string().optional(),
160
- });
161
-
162
- export const paragraphLayoutSchema = z.object({
163
- type: z.literal('paragraph'),
164
- text: z.string(),
165
- align: alignSchema.optional(),
166
- control: z.string().optional(),
167
- margin: sizeSchema.optional(),
168
- analyticsId: z.string().optional(),
169
- });
170
-
171
- export const httpMethodSchema = z.union([
172
- z.literal('GET'),
173
- z.literal('POST'),
174
- z.literal('PUT'),
175
- z.literal('PATCH'),
176
- z.literal('DELETE'),
177
- ]);
178
-
179
52
  export const jsonElementSchema: z.ZodSchema<JsonElement> = z.lazy(() =>
180
53
  z
181
54
  .union([
@@ -197,6 +70,37 @@ export const stepErrorSchema = z.object({
197
70
  validation: jsonElementSchema.optional(),
198
71
  });
199
72
 
73
+ export const httpMethodSchema = z.union([
74
+ z.literal('GET'),
75
+ z.literal('POST'),
76
+ z.literal('PUT'),
77
+ z.literal('PATCH'),
78
+ z.literal('DELETE'),
79
+ ]);
80
+
81
+ export const imageSchema = z.object({
82
+ text: z.string().optional(),
83
+ url: z.string().optional(),
84
+ uri: z.string().optional(),
85
+ accessibilityDescription: z.string().optional(),
86
+ });
87
+
88
+ export const errorResponseBodySchema = z.object({
89
+ refreshFormUrl: z.string().optional(),
90
+ analytics: z.record(z.string()).optional(),
91
+ error: z.string().optional(),
92
+ validation: jsonElementSchema.optional(),
93
+ refreshUrl: z.string().optional(),
94
+ });
95
+
96
+ export const linkSchema = z.object({
97
+ url: z.string(),
98
+ });
99
+
100
+ export const refreshBehaviorSchema = z.object({
101
+ type: z.literal('refresh'),
102
+ });
103
+
200
104
  export const summaryProviderSchema = z.object({
201
105
  providesTitle: z.boolean().optional(),
202
106
  providesDescription: z.boolean().optional(),
@@ -204,18 +108,26 @@ export const summaryProviderSchema = z.object({
204
108
  providesImage: z.boolean().optional(),
205
109
  });
206
110
 
207
- export const uploadSourceSchema = z.union([z.literal('camera'), z.literal('file')]);
111
+ export const copyBehaviorSchema = z.object({
112
+ type: z.literal('copy'),
113
+ content: z.string(),
114
+ });
208
115
 
209
- export const linkSchema = z.object({
210
- url: z.string(),
116
+ export const dismissBehaviorSchema = z.object({
117
+ type: z.literal('dismiss'),
211
118
  });
212
119
 
213
- export const validateAsyncSchema = z.object({
214
- param: z.string(),
215
- method: httpMethodSchema,
120
+ export const linkBehaviorSchema = z.object({
121
+ type: z.literal('link'),
216
122
  url: z.string(),
217
123
  });
218
124
 
125
+ export const uploadSourceSchema = z.union([z.literal('camera'), z.literal('file')]);
126
+
127
+ export const helpSchema = z.object({
128
+ markdown: z.string(),
129
+ });
130
+
219
131
  export const actionTypeSchema = z.union([
220
132
  z.literal('primary'),
221
133
  z.literal('secondary'),
@@ -224,6 +136,12 @@ export const actionTypeSchema = z.union([
224
136
  z.literal('negative'),
225
137
  ]);
226
138
 
139
+ export const validateAsyncSchema = z.object({
140
+ param: z.string(),
141
+ method: httpMethodSchema,
142
+ url: z.string(),
143
+ });
144
+
227
145
  export const navigationStackBehaviorSchema = z.union([
228
146
  z.literal('default'),
229
147
  z.literal('remove-previous'),
@@ -231,17 +149,49 @@ export const navigationStackBehaviorSchema = z.union([
231
149
  z.literal('replace-current'),
232
150
  ]);
233
151
 
234
- export const dismissBehaviorSchema = z.object({
235
- type: z.literal('dismiss'),
152
+ export const contextSchema = z.union([
153
+ z.literal('positive'),
154
+ z.literal('neutral'),
155
+ z.literal('warning'),
156
+ z.literal('negative'),
157
+ z.literal('success'),
158
+ z.literal('failure'),
159
+ z.literal('info'),
160
+ z.literal('primary'),
161
+ ]);
162
+
163
+ export const supportingValuesSchema = z.object({
164
+ value: z.string().optional(),
165
+ subvalue: z.string().optional(),
236
166
  });
237
167
 
238
- export const linkBehaviorSchema = z.object({
239
- type: z.literal('link'),
240
- url: z.string(),
168
+ export const alignSchema = z.union([z.literal('left'), z.literal('center'), z.literal('right')]);
169
+
170
+ export const inlineAlertSchema = z.object({
171
+ content: z.string(),
172
+ context: contextSchema.optional(),
241
173
  });
242
174
 
243
- export const refreshBehaviorSchema = z.object({
244
- type: z.literal('refresh'),
175
+ export const mediaImageSchema = z.object({
176
+ type: z.literal('image'),
177
+ uri: z.string(),
178
+ accessibilityDescription: z.string().optional(),
179
+ });
180
+
181
+ export const avatarTextContentSchema = z.object({
182
+ type: z.literal('text'),
183
+ text: z.string(),
184
+ badgeUri: z.string().optional(),
185
+ });
186
+
187
+ export const avatarUriContentSchema = z.object({
188
+ type: z.literal('uri'),
189
+ uri: z.string(),
190
+ badgeUri: z.string().optional(),
191
+ });
192
+
193
+ export const iconTextSchema = z.object({
194
+ text: z.string(),
245
195
  });
246
196
 
247
197
  export const autocompleteTokenSchema = z.union([
@@ -310,14 +260,9 @@ export const autocompleteTokenSchema = z.union([
310
260
  z.literal('pager'),
311
261
  ]);
312
262
 
313
- export const stringSchemaFormatSchema = z.union([
314
- z.literal('date'),
315
- z.literal('email'),
316
- z.literal('numeric'),
317
- z.literal('password'),
318
- z.literal('phone-number'),
319
- z.literal('base64url'),
320
- ]);
263
+ export const iconNamedSchema = z.object({
264
+ name: z.string(),
265
+ });
321
266
 
322
267
  export const autocapitalizationTypeSchema = z.union([
323
268
  z.literal('none'),
@@ -326,65 +271,133 @@ export const autocapitalizationTypeSchema = z.union([
326
271
  z.literal('words'),
327
272
  ]);
328
273
 
329
- export const searchSearchRequestSchema = z.object({
330
- url: z.string(),
331
- method: httpMethodSchema,
332
- param: z.string(),
333
- query: z.string(),
274
+ export const sizeSchema = z.union([
275
+ z.literal('xs'),
276
+ z.literal('sm'),
277
+ z.literal('md'),
278
+ z.literal('lg'),
279
+ z.literal('xl'),
280
+ ]);
281
+
282
+ export const columnsLayoutBiasSchema = z.union([
283
+ z.literal('none'),
284
+ z.literal('left'),
285
+ z.literal('right'),
286
+ ]);
287
+
288
+ export const formLayoutSchemaReferenceSchema = z.object({
289
+ $ref: z.string(),
334
290
  });
335
291
 
336
- export const errorResponseBodySchema = z.object({
337
- refreshFormUrl: z.string().optional(),
338
- analytics: z.record(z.string()).optional(),
339
- error: z.string().optional(),
340
- validation: jsonElementSchema.optional(),
341
- refreshUrl: z.string().optional(),
292
+ export const markdownLayoutSchema = z.object({
293
+ type: z.literal('markdown'),
294
+ content: z.string(),
295
+ align: alignSchema.optional(),
296
+ control: z.string().optional(),
297
+ margin: sizeSchema.optional(),
298
+ analyticsId: z.string().optional(),
299
+ });
300
+
301
+ export const instructionsLayoutItemSchema = z.object({
302
+ text: z.string(),
303
+ context: contextSchema,
304
+ tag: z.string().optional(),
305
+ analyticsId: z.string().optional(),
306
+ });
307
+
308
+ export const modalLayoutTriggerSchema = z.object({
309
+ title: z.string(),
310
+ });
311
+
312
+ export const infoLayoutSchema = z.object({
313
+ type: z.literal('info'),
314
+ markdown: z.string(),
315
+ align: alignSchema.optional(),
316
+ control: z.string().optional(),
317
+ margin: sizeSchema.optional(),
318
+ analyticsId: z.string().optional(),
342
319
  });
343
320
 
344
- export const iconTextSchema = z.object({
321
+ export const paragraphLayoutSchema = z.object({
322
+ type: z.literal('paragraph'),
345
323
  text: z.string(),
324
+ align: alignSchema.optional(),
325
+ control: z.string().optional(),
326
+ margin: sizeSchema.optional(),
327
+ analyticsId: z.string().optional(),
346
328
  });
347
329
 
348
- export const iconNamedSchema = z.object({
349
- name: z.string(),
350
- });
330
+ export const statusListLayoutStatusSchema = z.union([
331
+ z.literal('not-done'),
332
+ z.literal('pending'),
333
+ z.literal('done'),
334
+ ]);
351
335
 
352
- export const mediaImageSchema = z.object({
336
+ export const imageLayoutSchema = z.object({
353
337
  type: z.literal('image'),
354
- uri: z.string(),
338
+ text: z.string().optional(),
339
+ url: z.string().optional(),
355
340
  accessibilityDescription: z.string().optional(),
341
+ content: imageSchema.optional(),
342
+ size: sizeSchema.optional(),
343
+ control: z.string().optional(),
344
+ margin: sizeSchema.optional(),
345
+ align: alignSchema.optional(),
346
+ analyticsId: z.string().optional(),
356
347
  });
357
348
 
358
- export const avatarTextContentSchema = z.object({
359
- type: z.literal('text'),
360
- text: z.string(),
361
- badgeUri: z.string().optional(),
349
+ export const listLayoutStatusSchema = z.union([
350
+ z.literal('warning'),
351
+ z.literal('neutral'),
352
+ z.literal('positive'),
353
+ ]);
354
+
355
+ export const loadingIndicatorLayoutSchema = z.object({
356
+ type: z.literal('loading-indicator'),
357
+ size: sizeSchema.optional(),
358
+ control: z.string().optional(),
359
+ margin: sizeSchema.optional(),
360
+ analyticsId: z.string().optional(),
362
361
  });
363
362
 
364
- export const avatarUriContentSchema = z.object({
365
- type: z.literal('uri'),
366
- uri: z.string(),
367
- badgeUri: z.string().optional(),
363
+ export const dividerLayoutSchema = z.object({
364
+ type: z.literal('divider'),
365
+ control: z.string().optional(),
366
+ margin: sizeSchema.optional(),
367
+ analyticsId: z.string().optional(),
368
368
  });
369
369
 
370
- export const infoLayoutSchema = z.object({
371
- type: z.literal('info'),
372
- markdown: z.string(),
370
+ export const headingLayoutSchema = z.object({
371
+ type: z.literal('heading'),
372
+ text: z.string(),
373
+ size: sizeSchema.optional(),
373
374
  align: alignSchema.optional(),
374
375
  control: z.string().optional(),
375
376
  margin: sizeSchema.optional(),
376
377
  analyticsId: z.string().optional(),
377
378
  });
378
379
 
379
- export const formLayoutSchema = z.object({
380
- type: z.literal('form'),
381
- schema: formLayoutSchemaReferenceSchema.optional(),
382
- schemaId: z.string(),
380
+ export const searchLayoutSchema = z.object({
381
+ type: z.literal('search'),
382
+ title: z.string(),
383
+ method: httpMethodSchema,
384
+ url: z.string(),
385
+ param: z.string(),
386
+ emptyMessage: z.string().optional(),
383
387
  control: z.string().optional(),
384
388
  margin: sizeSchema.optional(),
385
389
  analyticsId: z.string().optional(),
386
390
  });
387
391
 
392
+ export const stringSchemaFormatSchema = z.union([
393
+ z.literal('date'),
394
+ z.literal('email'),
395
+ z.literal('numeric'),
396
+ z.literal('password'),
397
+ z.literal('phone-number'),
398
+ z.literal('base64url'),
399
+ ]);
400
+
388
401
  export const actionSchema = z.object({
389
402
  title: z.string().optional(),
390
403
  type: actionTypeSchema.optional(),
@@ -401,30 +414,36 @@ export const actionSchema = z.object({
401
414
  skipValidation: z.boolean().optional(),
402
415
  });
403
416
 
404
- export const iconSchema = z.union([iconNamedSchema, iconTextSchema]);
417
+ export const actionResponseBodySchema = z.object({
418
+ action: actionSchema,
419
+ });
405
420
 
406
- export const inlineAlertSchema = z.object({
407
- content: z.string(),
408
- context: contextSchema.optional(),
421
+ export const searchSearchRequestSchema = z.object({
422
+ url: z.string(),
423
+ method: httpMethodSchema,
424
+ param: z.string(),
425
+ query: z.string(),
409
426
  });
410
427
 
411
- export const instructionsLayoutItemSchema = z.object({
412
- text: z.string(),
413
- context: contextSchema,
428
+ export const iconSchema = z.union([iconNamedSchema, iconTextSchema]);
429
+
430
+ export const suggestionsValueSchema = z.object({
431
+ label: z.string(),
432
+ value: jsonElementSchema,
433
+ icon: iconSchema.optional(),
434
+ image: imageSchema.optional(),
414
435
  tag: z.string().optional(),
415
436
  analyticsId: z.string().optional(),
416
437
  });
417
438
 
418
- export const searchLayoutSchema = z.object({
419
- type: z.literal('search'),
420
- title: z.string(),
421
- method: httpMethodSchema,
422
- url: z.string(),
423
- param: z.string(),
424
- emptyMessage: z.string().optional(),
425
- control: z.string().optional(),
426
- margin: sizeSchema.optional(),
427
- analyticsId: z.string().optional(),
439
+ export const containerBehaviorSchema = z.object({
440
+ action: actionSchema.optional(),
441
+ link: linkSchema.optional(),
442
+ });
443
+
444
+ export const actionBehaviorSchema = z.object({
445
+ type: z.literal('action'),
446
+ action: actionSchema,
428
447
  });
429
448
 
430
449
  export const summarySummariserSchema = z.object({
@@ -438,36 +457,37 @@ export const summarySummariserSchema = z.object({
438
457
  providesImage: z.boolean().optional(),
439
458
  });
440
459
 
441
- export const containerBehaviorSchema = z.object({
442
- action: actionSchema.optional(),
443
- link: linkSchema.optional(),
444
- });
460
+ export const summarySchema = z.union([summaryProviderSchema, summarySummariserSchema]);
445
461
 
446
462
  export const navigationBackBehaviorSchema = z.object({
447
463
  title: z.string().optional(),
448
464
  action: actionSchema,
449
465
  });
450
466
 
451
- export const suggestionsValueSchema = z.object({
452
- label: z.string(),
453
- value: jsonElementSchema,
454
- icon: iconSchema.optional(),
455
- image: imageSchema.optional(),
456
- tag: z.string().optional(),
457
- analyticsId: z.string().optional(),
458
- });
467
+ export const avatarContentSchema = z.union([avatarTextContentSchema, avatarUriContentSchema]);
459
468
 
460
- export const actionBehaviorSchema = z.object({
461
- type: z.literal('action'),
462
- action: actionSchema,
469
+ export const formLayoutSchema = z.object({
470
+ type: z.literal('form'),
471
+ schema: formLayoutSchemaReferenceSchema.optional(),
472
+ schemaId: z.string(),
473
+ control: z.string().optional(),
474
+ margin: sizeSchema.optional(),
475
+ analyticsId: z.string().optional(),
463
476
  });
464
477
 
465
- export const suggestionsSchema = z.object({
466
- values: z.array(suggestionsValueSchema),
478
+ export const instructionsLayoutSchema = z.object({
479
+ type: z.literal('instructions'),
480
+ title: z.string().optional(),
481
+ items: z.array(instructionsLayoutItemSchema),
482
+ control: z.string().optional(),
483
+ margin: sizeSchema.optional(),
484
+ analyticsId: z.string().optional(),
467
485
  });
468
486
 
469
- export const actionResponseBodySchema = z.object({
470
- action: actionSchema,
487
+ export const navigationSchema = z.object({
488
+ backButton: navigationBackBehaviorSchema.optional(),
489
+ back: navigationBackBehaviorSchema.optional(),
490
+ stackBehavior: navigationStackBehaviorSchema.optional(),
471
491
  });
472
492
 
473
493
  export const searchResultActionSchema = z.object({
@@ -488,29 +508,8 @@ export const searchResultSearchSchema = z.object({
488
508
  value: searchSearchRequestSchema,
489
509
  });
490
510
 
491
- export const avatarContentSchema = z.union([avatarTextContentSchema, avatarUriContentSchema]);
492
-
493
- export const instructionsLayoutSchema = z.object({
494
- type: z.literal('instructions'),
495
- title: z.string().optional(),
496
- items: z.array(instructionsLayoutItemSchema),
497
- control: z.string().optional(),
498
- margin: sizeSchema.optional(),
499
- analyticsId: z.string().optional(),
500
- });
501
-
502
- export const navigationSchema = z.object({
503
- backButton: navigationBackBehaviorSchema.optional(),
504
- back: navigationBackBehaviorSchema.optional(),
505
- stackBehavior: navigationStackBehaviorSchema.optional(),
506
- });
507
-
508
- export const summarySchema = z.union([summaryProviderSchema, summarySummariserSchema]);
509
-
510
- export const searchResultSchema = z.union([searchResultActionSchema, searchResultSearchSchema]);
511
-
512
- export const searchResponseBodySchema = z.object({
513
- results: z.array(searchResultSchema),
511
+ export const suggestionsSchema = z.object({
512
+ values: z.array(suggestionsValueSchema),
514
513
  });
515
514
 
516
515
  export const mediaAvatarSchema = z.object({
@@ -519,43 +518,53 @@ export const mediaAvatarSchema = z.object({
519
518
  accessibilityDescription: z.string().optional(),
520
519
  });
521
520
 
521
+ export const searchResultSchema = z.union([searchResultActionSchema, searchResultSearchSchema]);
522
+
522
523
  export const mediaSchema = z.union([mediaAvatarSchema, mediaImageSchema]);
523
524
 
524
- export const decisionLayoutOptionSchema: z.ZodSchema<DecisionLayoutOption> = z.lazy(() =>
525
+ export const searchResponseBodySchema = z.object({
526
+ results: z.array(searchResultSchema),
527
+ });
528
+
529
+ export const stepSchema: z.ZodSchema<Step> = z.lazy(() =>
525
530
  z.object({
526
- action: actionSchema.optional(),
531
+ key: z.string().optional(),
532
+ type: z.string().optional(),
533
+ actions: z.array(actionSchema).optional(),
534
+ refreshFormUrl: z.string().optional(),
535
+ id: z.string(),
527
536
  title: z.string(),
537
+ schemas: z.array(schemaSchema),
538
+ layout: z.array(layoutSchema),
528
539
  description: z.string().optional(),
529
- disabled: z.boolean().optional(),
530
- icon: iconSchema.optional(),
531
- image: imageSchema.optional(),
532
- behavior: behaviorSchema.optional(),
533
- tag: z.string().optional(),
534
- additionalText: z.string().optional(),
535
- supportingValues: supportingValuesSchema.optional(),
536
- inlineAlert: inlineAlertSchema.optional(),
537
- analyticsId: z.string().optional(),
540
+ model: jsonElementSchema.optional(),
541
+ external: externalSchema.optional(),
542
+ polling: pollingSchema.optional(),
543
+ linkHandlers: z.array(linkHandlerSchema).optional(),
544
+ analytics: z.record(z.string()).optional(),
545
+ errors: stepErrorSchema.optional(),
546
+ navigation: navigationSchema.optional(),
547
+ refreshUrl: z.string().optional(),
548
+ control: z.string().optional(),
549
+ refreshAfter: z.string().optional(),
538
550
  }),
539
551
  );
540
552
 
541
- export const behaviorSchema: z.ZodSchema<Behavior> = z.lazy(() =>
553
+ export const schemaSchema: z.ZodSchema<Schema> = z.lazy(() =>
542
554
  z.union([
543
- actionBehaviorSchema,
544
- containerBehaviorSchema,
545
- dismissBehaviorSchema,
546
- linkBehaviorSchema,
547
- modalBehaviorSchema,
548
- refreshBehaviorSchema,
555
+ allOfSchemaSchema,
556
+ arraySchemaSchema,
557
+ blobSchemaSchema,
558
+ booleanSchemaSchema,
559
+ constSchemaSchema,
560
+ integerSchemaSchema,
561
+ numberSchemaSchema,
562
+ objectSchemaSchema,
563
+ oneOfSchemaSchema,
564
+ stringSchemaSchema,
549
565
  ]),
550
566
  );
551
567
 
552
- export const modalLayoutContentSchema: z.ZodSchema<ModalLayoutContent> = z.lazy(() =>
553
- z.object({
554
- title: z.string().optional(),
555
- components: z.array(layoutSchema),
556
- }),
557
- );
558
-
559
568
  export const layoutSchema: z.ZodSchema<Layout> = z.lazy(() =>
560
569
  z.union([
561
570
  alertLayoutSchema,
@@ -582,69 +591,73 @@ export const layoutSchema: z.ZodSchema<Layout> = z.lazy(() =>
582
591
  ]),
583
592
  );
584
593
 
585
- export const alertLayoutSchema: z.ZodSchema<AlertLayout> = z.lazy(() =>
594
+ export const pollingSchema: z.ZodSchema<Polling> = z.lazy(() =>
595
+ z.object({
596
+ interval: z.number().optional(),
597
+ url: z.string(),
598
+ delay: z.number().optional(),
599
+ timeout: z.number().optional(),
600
+ maxAttempts: z.number(),
601
+ onError: pollingOnErrorSchema,
602
+ }),
603
+ );
604
+
605
+ export const linkHandlerSchema: z.ZodSchema<LinkHandler> = z.lazy(() =>
586
606
  z.object({
587
- type: z.literal('alert'),
588
- markdown: z.string(),
589
- context: contextSchema.optional(),
590
- control: z.string().optional(),
591
- margin: sizeSchema.optional(),
592
- callToAction: alertLayoutCallToActionSchema.optional(),
593
- analyticsId: z.string().optional(),
607
+ regexPattern: z.string(),
608
+ behavior: behaviorSchema.optional(),
594
609
  }),
595
610
  );
596
611
 
597
- export const alertLayoutCallToActionSchema: z.ZodSchema<AlertLayoutCallToAction> = z.lazy(() =>
612
+ export const modalResponseBodySchema: z.ZodSchema<ModalResponseBody> = z.lazy(() =>
598
613
  z.object({
599
- title: z.string(),
600
- accessibilityDescription: z.string().optional(),
601
- behavior: behaviorSchema,
614
+ title: z.string().optional(),
615
+ content: z.array(layoutSchema),
602
616
  }),
603
617
  );
604
618
 
605
- export const listLayoutSchema: z.ZodSchema<ListLayout> = z.lazy(() =>
619
+ export const modalBehaviorSchema: z.ZodSchema<ModalBehavior> = z.lazy(() =>
606
620
  z.object({
607
- type: z.literal('list'),
621
+ type: z.literal('modal'),
608
622
  title: z.string().optional(),
609
- callToAction: listLayoutCallToActionSchema.optional(),
610
- items: z.array(listLayoutItemSchema),
611
- control: z.string().optional(),
612
- margin: sizeSchema.optional(),
613
- analyticsId: z.string().optional(),
623
+ content: z.array(layoutSchema),
614
624
  }),
615
625
  );
616
626
 
617
- export const listLayoutCallToActionSchema: z.ZodSchema<ListLayoutCallToAction> = z.lazy(() =>
627
+ export const persistAsyncSchema: z.ZodSchema<PersistAsync> = z.lazy(() =>
618
628
  z.object({
619
- title: z.string(),
620
- accessibilityDescription: z.string().optional(),
621
- behavior: behaviorSchema,
629
+ param: z.string(),
630
+ idProperty: z.string(),
631
+ schema: schemaSchema,
632
+ url: z.string(),
633
+ method: httpMethodSchema,
622
634
  }),
623
635
  );
624
636
 
625
- export const listLayoutItemSchema: z.ZodSchema<ListLayoutItem> = z.lazy(() =>
637
+ export const behaviorSchema: z.ZodSchema<Behavior> = z.lazy(() =>
638
+ z.union([
639
+ actionBehaviorSchema,
640
+ containerBehaviorSchema,
641
+ copyBehaviorSchema,
642
+ dismissBehaviorSchema,
643
+ linkBehaviorSchema,
644
+ modalBehaviorSchema,
645
+ refreshBehaviorSchema,
646
+ ]),
647
+ );
648
+
649
+ export const pollingOnErrorSchema: z.ZodSchema<PollingOnError> = z.lazy(() =>
626
650
  z.object({
627
- status: listLayoutStatusSchema.optional(),
628
- icon: iconSchema.optional(),
629
- image: imageSchema.optional(),
630
- title: z.string().optional(),
631
- subtitle: z.string().optional(),
632
- value: z.string().optional(),
633
- subvalue: z.string().optional(),
634
- tag: z.string().optional(),
635
- additionalInfo: additionalInfoSchema.optional(),
636
- supportingValues: supportingValuesSchema.optional(),
637
- inlineAlert: inlineAlertSchema.optional(),
638
- description: z.string().optional(),
639
- analyticsId: z.string().optional(),
651
+ action: actionSchema.optional(),
652
+ behavior: behaviorSchema.optional(),
640
653
  }),
641
654
  );
642
655
 
643
- export const sectionLayoutCallToActionSchema: z.ZodSchema<SectionLayoutCallToAction> = z.lazy(() =>
656
+ export const additionalInfoSchema: z.ZodSchema<AdditionalInfo> = z.lazy(() =>
644
657
  z.object({
645
- title: z.string(),
658
+ text: z.string(),
659
+ behavior: behaviorSchema.optional(),
646
660
  accessibilityDescription: z.string().optional(),
647
- behavior: behaviorSchema,
648
661
  }),
649
662
  );
650
663
 
@@ -671,49 +684,30 @@ export const statusListLayoutItemSchema: z.ZodSchema<StatusListLayoutItem> = z.l
671
684
  }),
672
685
  );
673
686
 
674
- export const tabsLayoutTabSchema: z.ZodSchema<TabsLayoutTab> = z.lazy(() =>
675
- z.object({
676
- title: z.string(),
677
- components: z.array(layoutSchema),
678
- tag: z.string().optional(),
679
- analyticsId: z.string().optional(),
680
- }),
681
- );
682
-
683
- export const boxLayoutSchema: z.ZodSchema<BoxLayout> = z.lazy(() =>
684
- z.object({
685
- type: z.literal('box'),
686
- components: z.array(layoutSchema),
687
- width: sizeSchema.optional(),
688
- border: z.boolean().optional(),
689
- control: z.string().optional(),
690
- margin: sizeSchema.optional(),
691
- analyticsId: z.string().optional(),
692
- }),
693
- );
694
-
695
- export const sectionLayoutSchema: z.ZodSchema<SectionLayout> = z.lazy(() =>
687
+ export const decisionLayoutSchema: z.ZodSchema<DecisionLayout> = z.lazy(() =>
696
688
  z.object({
697
- type: z.literal('section'),
698
- components: z.array(layoutSchema),
699
- title: z.string(),
700
- callToAction: sectionLayoutCallToActionSchema.optional(),
689
+ type: z.literal('decision'),
690
+ title: z.string().optional(),
691
+ options: z.array(decisionLayoutOptionSchema),
701
692
  control: z.string().optional(),
702
693
  margin: sizeSchema.optional(),
703
694
  analyticsId: z.string().optional(),
704
695
  }),
705
696
  );
706
697
 
707
- export const reviewLayoutSchema: z.ZodSchema<ReviewLayout> = z.lazy(() =>
698
+ export const decisionLayoutOptionSchema: z.ZodSchema<DecisionLayoutOption> = z.lazy(() =>
708
699
  z.object({
709
- type: z.literal('review'),
710
- orientation: z.string().optional(),
711
700
  action: actionSchema.optional(),
712
- fields: z.array(reviewLayoutFieldSchema),
713
- title: z.string().optional(),
714
- callToAction: reviewLayoutCallToActionSchema.optional(),
715
- control: z.string().optional(),
716
- margin: sizeSchema.optional(),
701
+ title: z.string(),
702
+ description: z.string().optional(),
703
+ disabled: z.boolean().optional(),
704
+ icon: iconSchema.optional(),
705
+ image: imageSchema.optional(),
706
+ behavior: behaviorSchema.optional(),
707
+ tag: z.string().optional(),
708
+ additionalText: z.string().optional(),
709
+ supportingValues: supportingValuesSchema.optional(),
710
+ inlineAlert: inlineAlertSchema.optional(),
717
711
  analyticsId: z.string().optional(),
718
712
  }),
719
713
  );
@@ -743,6 +737,18 @@ export const reviewLayoutCallToActionSchema: z.ZodSchema<ReviewLayoutCallToActio
743
737
  }),
744
738
  );
745
739
 
740
+ export const columnsLayoutSchema: z.ZodSchema<ColumnsLayout> = z.lazy(() =>
741
+ z.object({
742
+ type: z.literal('columns'),
743
+ left: z.array(layoutSchema),
744
+ right: z.array(layoutSchema),
745
+ bias: columnsLayoutBiasSchema.optional(),
746
+ control: z.string().optional(),
747
+ margin: sizeSchema.optional(),
748
+ analyticsId: z.string().optional(),
749
+ }),
750
+ );
751
+
746
752
  export const buttonLayoutSchema: z.ZodSchema<ButtonLayout> = z.lazy(() =>
747
753
  z.object({
748
754
  type: z.literal('button'),
@@ -759,41 +765,39 @@ export const buttonLayoutSchema: z.ZodSchema<ButtonLayout> = z.lazy(() =>
759
765
  }),
760
766
  );
761
767
 
762
- export const itemCallToActionSchema: z.ZodSchema<ItemCallToAction> = z.lazy(() =>
768
+ export const sectionLayoutSchema: z.ZodSchema<SectionLayout> = z.lazy(() =>
763
769
  z.object({
770
+ type: z.literal('section'),
771
+ components: z.array(layoutSchema),
764
772
  title: z.string(),
765
- accessibilityDescription: z.string().optional(),
766
- behavior: behaviorSchema,
773
+ callToAction: sectionLayoutCallToActionSchema.optional(),
774
+ control: z.string().optional(),
775
+ margin: sizeSchema.optional(),
776
+ analyticsId: z.string().optional(),
767
777
  }),
768
778
  );
769
779
 
770
- export const decisionLayoutSchema: z.ZodSchema<DecisionLayout> = z.lazy(() =>
780
+ export const sectionLayoutCallToActionSchema: z.ZodSchema<SectionLayoutCallToAction> = z.lazy(() =>
771
781
  z.object({
772
- type: z.literal('decision'),
773
- title: z.string().optional(),
774
- options: z.array(decisionLayoutOptionSchema),
775
- control: z.string().optional(),
776
- margin: sizeSchema.optional(),
777
- analyticsId: z.string().optional(),
782
+ title: z.string(),
783
+ accessibilityDescription: z.string().optional(),
784
+ behavior: behaviorSchema,
778
785
  }),
779
786
  );
780
787
 
781
- export const additionalInfoSchema: z.ZodSchema<AdditionalInfo> = z.lazy(() =>
788
+ export const listLayoutCallToActionSchema: z.ZodSchema<ListLayoutCallToAction> = z.lazy(() =>
782
789
  z.object({
783
- text: z.string(),
784
- behavior: behaviorSchema.optional(),
790
+ title: z.string(),
785
791
  accessibilityDescription: z.string().optional(),
792
+ behavior: behaviorSchema,
786
793
  }),
787
794
  );
788
795
 
789
- export const columnsLayoutSchema: z.ZodSchema<ColumnsLayout> = z.lazy(() =>
796
+ export const tabsLayoutTabSchema: z.ZodSchema<TabsLayoutTab> = z.lazy(() =>
790
797
  z.object({
791
- type: z.literal('columns'),
792
- left: z.array(layoutSchema),
793
- right: z.array(layoutSchema),
794
- bias: columnsLayoutBiasSchema.optional(),
795
- control: z.string().optional(),
796
- margin: sizeSchema.optional(),
798
+ title: z.string(),
799
+ components: z.array(layoutSchema),
800
+ tag: z.string().optional(),
797
801
  analyticsId: z.string().optional(),
798
802
  }),
799
803
  );
@@ -809,6 +813,13 @@ export const modalLayoutSchema: z.ZodSchema<ModalLayout> = z.lazy(() =>
809
813
  }),
810
814
  );
811
815
 
816
+ export const modalLayoutContentSchema: z.ZodSchema<ModalLayoutContent> = z.lazy(() =>
817
+ z.object({
818
+ title: z.string().optional(),
819
+ components: z.array(layoutSchema),
820
+ }),
821
+ );
822
+
812
823
  export const tabsLayoutSchema: z.ZodSchema<TabsLayout> = z.lazy(() =>
813
824
  z.object({
814
825
  type: z.literal('tabs'),
@@ -819,85 +830,110 @@ export const tabsLayoutSchema: z.ZodSchema<TabsLayout> = z.lazy(() =>
819
830
  }),
820
831
  );
821
832
 
822
- export const stepSchema: z.ZodSchema<Step> = z.lazy(() =>
833
+ export const listLayoutItemSchema: z.ZodSchema<ListLayoutItem> = z.lazy(() =>
823
834
  z.object({
824
- key: z.string().optional(),
825
- type: z.string().optional(),
826
- actions: z.array(actionSchema).optional(),
827
- refreshFormUrl: z.string().optional(),
828
- id: z.string(),
829
- title: z.string(),
830
- schemas: z.array(schemaSchema),
831
- layout: z.array(layoutSchema),
835
+ status: listLayoutStatusSchema.optional(),
836
+ icon: iconSchema.optional(),
837
+ image: imageSchema.optional(),
838
+ title: z.string().optional(),
839
+ subtitle: z.string().optional(),
840
+ value: z.string().optional(),
841
+ subvalue: z.string().optional(),
842
+ tag: z.string().optional(),
843
+ additionalInfo: additionalInfoSchema.optional(),
844
+ supportingValues: supportingValuesSchema.optional(),
845
+ inlineAlert: inlineAlertSchema.optional(),
832
846
  description: z.string().optional(),
833
- model: jsonElementSchema.optional(),
834
- external: externalSchema.optional(),
835
- polling: pollingSchema.optional(),
836
- linkHandlers: z.array(linkHandlerSchema).optional(),
837
- analytics: z.record(z.string()).optional(),
838
- errors: stepErrorSchema.optional(),
839
- navigation: navigationSchema.optional(),
840
- refreshUrl: z.string().optional(),
841
- control: z.string().optional(),
842
- refreshAfter: z.string().optional(),
847
+ analyticsId: z.string().optional(),
843
848
  }),
844
849
  );
845
850
 
846
- export const schemaSchema: z.ZodSchema<Schema> = z.lazy(() =>
847
- z.union([
848
- allOfSchemaSchema,
849
- arraySchemaSchema,
850
- blobSchemaSchema,
851
- booleanSchemaSchema,
852
- constSchemaSchema,
853
- integerSchemaSchema,
854
- numberSchemaSchema,
855
- objectSchemaSchema,
856
- oneOfSchemaSchema,
857
- stringSchemaSchema,
858
- ]),
851
+ export const itemCallToActionSchema: z.ZodSchema<ItemCallToAction> = z.lazy(() =>
852
+ z.object({
853
+ title: z.string(),
854
+ accessibilityDescription: z.string().optional(),
855
+ behavior: behaviorSchema,
856
+ }),
859
857
  );
860
858
 
861
- export const pollingSchema: z.ZodSchema<Polling> = z.lazy(() =>
859
+ export const listLayoutSchema: z.ZodSchema<ListLayout> = z.lazy(() =>
862
860
  z.object({
863
- interval: z.number().optional(),
864
- url: z.string(),
865
- delay: z.number().optional(),
866
- timeout: z.number().optional(),
867
- maxAttempts: z.number(),
868
- onError: pollingOnErrorSchema,
861
+ type: z.literal('list'),
862
+ title: z.string().optional(),
863
+ callToAction: listLayoutCallToActionSchema.optional(),
864
+ items: z.array(listLayoutItemSchema),
865
+ control: z.string().optional(),
866
+ margin: sizeSchema.optional(),
867
+ analyticsId: z.string().optional(),
868
+ }),
869
+ );
870
+
871
+ export const alertLayoutSchema: z.ZodSchema<AlertLayout> = z.lazy(() =>
872
+ z.object({
873
+ type: z.literal('alert'),
874
+ markdown: z.string(),
875
+ context: contextSchema.optional(),
876
+ control: z.string().optional(),
877
+ margin: sizeSchema.optional(),
878
+ callToAction: alertLayoutCallToActionSchema.optional(),
879
+ analyticsId: z.string().optional(),
869
880
  }),
870
881
  );
871
882
 
872
- export const linkHandlerSchema: z.ZodSchema<LinkHandler> = z.lazy(() =>
883
+ export const boxLayoutSchema: z.ZodSchema<BoxLayout> = z.lazy(() =>
873
884
  z.object({
874
- regexPattern: z.string(),
875
- behavior: behaviorSchema.optional(),
885
+ type: z.literal('box'),
886
+ components: z.array(layoutSchema),
887
+ width: sizeSchema.optional(),
888
+ border: z.boolean().optional(),
889
+ control: z.string().optional(),
890
+ margin: sizeSchema.optional(),
891
+ analyticsId: z.string().optional(),
876
892
  }),
877
893
  );
878
894
 
879
- export const persistAsyncSchema: z.ZodSchema<PersistAsync> = z.lazy(() =>
895
+ export const reviewLayoutSchema: z.ZodSchema<ReviewLayout> = z.lazy(() =>
880
896
  z.object({
881
- param: z.string(),
882
- idProperty: z.string(),
883
- schema: schemaSchema,
884
- url: z.string(),
885
- method: httpMethodSchema,
897
+ type: z.literal('review'),
898
+ orientation: z.string().optional(),
899
+ action: actionSchema.optional(),
900
+ fields: z.array(reviewLayoutFieldSchema),
901
+ title: z.string().optional(),
902
+ callToAction: reviewLayoutCallToActionSchema.optional(),
903
+ control: z.string().optional(),
904
+ margin: sizeSchema.optional(),
905
+ analyticsId: z.string().optional(),
886
906
  }),
887
907
  );
888
908
 
889
- export const modalBehaviorSchema: z.ZodSchema<ModalBehavior> = z.lazy(() =>
909
+ export const alertLayoutCallToActionSchema: z.ZodSchema<AlertLayoutCallToAction> = z.lazy(() =>
890
910
  z.object({
891
- type: z.literal('modal'),
892
- title: z.string().optional(),
893
- content: z.array(layoutSchema),
911
+ title: z.string(),
912
+ accessibilityDescription: z.string().optional(),
913
+ behavior: behaviorSchema,
894
914
  }),
895
915
  );
896
916
 
897
- export const pollingOnErrorSchema: z.ZodSchema<PollingOnError> = z.lazy(() =>
917
+ export const objectSchemaSchema: z.ZodSchema<ObjectSchema> = z.lazy(() =>
898
918
  z.object({
899
- action: actionSchema.optional(),
900
- behavior: behaviorSchema.optional(),
919
+ type: z.literal('object'),
920
+ disabled: z.boolean().optional(),
921
+ promoted: z.boolean().optional(),
922
+ help: helpSchema.optional(),
923
+ properties: z.record(schemaSchema),
924
+ displayOrder: z.array(z.string()),
925
+ required: z.array(z.string()).optional(),
926
+ $id: z.string().optional(),
927
+ title: z.string().optional(),
928
+ description: z.string().optional(),
929
+ control: z.string().optional(),
930
+ hidden: z.boolean().optional(),
931
+ icon: iconSchema.optional(),
932
+ image: imageSchema.optional(),
933
+ keywords: z.array(z.string()).optional(),
934
+ summary: summaryProviderSchema.optional(),
935
+ analyticsId: z.string().optional(),
936
+ alert: alertLayoutSchema.optional(),
901
937
  }),
902
938
  );
903
939
 
@@ -926,82 +962,94 @@ export const blobSchemaSchema: z.ZodSchema<BlobSchema> = z.lazy(() =>
926
962
  }),
927
963
  );
928
964
 
929
- export const oneOfSchemaSchema: z.ZodSchema<OneOfSchema> = z.lazy(() =>
965
+ export const allOfSchemaSchema: z.ZodSchema<AllOfSchema> = z.lazy(() =>
930
966
  z.object({
967
+ disabled: z.boolean().optional(),
968
+ promoted: z.boolean().optional(),
969
+ allOf: z.array(schemaSchema),
970
+ $id: z.string().optional(),
971
+ title: z.string().optional(),
972
+ description: z.string().optional(),
973
+ control: z.string().optional(),
974
+ hidden: z.boolean().optional(),
975
+ icon: iconSchema.optional(),
976
+ image: imageSchema.optional(),
977
+ keywords: z.array(z.string()).optional(),
978
+ summary: summaryProviderSchema.optional(),
979
+ analyticsId: z.string().optional(),
980
+ alert: alertLayoutSchema.optional(),
981
+ }),
982
+ );
983
+
984
+ export const arraySchemaSchema: z.ZodSchema<ArraySchema> = z.lazy(() =>
985
+ z.union([arraySchemaListSchema, arraySchemaTupleSchema]),
986
+ );
987
+
988
+ export const booleanSchemaSchema: z.ZodSchema<BooleanSchema> = z.lazy(() =>
989
+ z.object({
990
+ type: z.literal('boolean'),
931
991
  autofillProvider: z.string().optional(),
932
992
  promoted: z.boolean().optional(),
933
993
  refreshFormOnChange: z.boolean().optional(),
934
994
  refreshUrl: z.string().optional(),
935
995
  refreshFormUrl: z.string().optional(),
936
- promotion: jsonElementSchema.optional(),
937
- oneOf: z.array(schemaSchema),
938
- placeholder: z.string().optional(),
939
996
  $id: z.string().optional(),
940
997
  title: z.string().optional(),
941
998
  description: z.string().optional(),
942
999
  control: z.string().optional(),
943
- default: jsonElementSchema.optional(),
1000
+ default: z.boolean().optional(),
944
1001
  hidden: z.boolean().optional(),
1002
+ disabled: z.boolean().optional(),
945
1003
  icon: iconSchema.optional(),
946
1004
  image: imageSchema.optional(),
947
1005
  keywords: z.array(z.string()).optional(),
948
1006
  summary: summaryProviderSchema.optional(),
949
1007
  analyticsId: z.string().optional(),
1008
+ persistAsync: persistAsyncSchema.optional(),
950
1009
  refreshStepOnChange: z.boolean().optional(),
1010
+ validationAsync: validateAsyncSchema.optional(),
951
1011
  alert: alertLayoutSchema.optional(),
952
- help: helpSchema.optional(),
953
- autocompleteHint: z.array(autocompleteTokenSchema).optional(),
954
1012
  autofillKey: z.string().optional(),
955
- validationMessages: z.record(z.string()).optional(),
956
- disabled: z.boolean().optional(),
1013
+ help: helpSchema.optional(),
957
1014
  onChange: behaviorSchema.optional(),
958
1015
  }),
959
1016
  );
960
1017
 
961
- export const arraySchemaTupleSchema: z.ZodSchema<ArraySchemaTuple> = z.lazy(() =>
1018
+ export const constSchemaSchema: z.ZodSchema<ConstSchema> = z.lazy(() =>
962
1019
  z.object({
963
- type: z.literal('array'),
1020
+ hidden: z.boolean().optional(),
1021
+ alert: alertLayoutSchema.optional(),
1022
+ control: z.string().optional(),
964
1023
  promoted: z.boolean().optional(),
965
1024
  $id: z.string().optional(),
966
- items: z.array(schemaSchema),
1025
+ const: jsonElementSchema,
967
1026
  title: z.string().optional(),
968
1027
  description: z.string().optional(),
969
- control: z.string().optional(),
970
- hidden: z.boolean().optional(),
971
1028
  icon: iconSchema.optional(),
972
1029
  image: imageSchema.optional(),
973
1030
  keywords: z.array(z.string()).optional(),
974
1031
  summary: summaryProviderSchema.optional(),
975
1032
  analyticsId: z.string().optional(),
976
- persistAsync: persistAsyncSchema.optional(),
977
- validationAsync: validateAsyncSchema.optional(),
978
- alert: alertLayoutSchema.optional(),
1033
+ disabled: z.boolean().optional(),
979
1034
  }),
980
1035
  );
981
1036
 
982
- export const stringSchemaSchema: z.ZodSchema<StringSchema> = z.lazy(() =>
1037
+ export const integerSchemaSchema: z.ZodSchema<IntegerSchema> = z.lazy(() =>
983
1038
  z.object({
984
- type: z.literal('string'),
1039
+ type: z.literal('integer'),
985
1040
  autofillProvider: z.string().optional(),
986
1041
  promoted: z.boolean().optional(),
987
1042
  refreshFormOnChange: z.boolean().optional(),
988
1043
  refreshUrl: z.string().optional(),
989
1044
  refreshFormUrl: z.string().optional(),
990
- format: stringSchemaFormatSchema.optional(),
991
- displayFormat: z.string().optional(),
992
1045
  placeholder: z.string().optional(),
993
- minLength: z.number().optional(),
994
- maxLength: z.number().optional(),
995
- minimum: z.string().optional(),
996
- maximum: z.string().optional(),
997
- pattern: z.string().optional(),
998
- autocapitalization: autocapitalizationTypeSchema.optional(),
999
- autocorrect: z.boolean().optional(),
1046
+ minimum: z.number().optional(),
1047
+ maximum: z.number().optional(),
1000
1048
  $id: z.string().optional(),
1001
1049
  title: z.string().optional(),
1002
1050
  description: z.string().optional(),
1003
1051
  control: z.string().optional(),
1004
- default: z.string().optional(),
1052
+ default: z.number().optional(),
1005
1053
  hidden: z.boolean().optional(),
1006
1054
  disabled: z.boolean().optional(),
1007
1055
  icon: iconSchema.optional(),
@@ -1014,14 +1062,9 @@ export const stringSchemaSchema: z.ZodSchema<StringSchema> = z.lazy(() =>
1014
1062
  validationAsync: validateAsyncSchema.optional(),
1015
1063
  validationMessages: z.record(z.string()).optional(),
1016
1064
  alert: alertLayoutSchema.optional(),
1017
- cameraConfig: jsonElementSchema.optional(),
1018
- accepts: z.array(z.string()).optional(),
1019
- maxSize: z.number().optional(),
1020
- source: uploadSourceSchema.optional(),
1021
1065
  autocompleteHint: z.array(autocompleteTokenSchema).optional(),
1022
1066
  autofillKey: z.string().optional(),
1023
1067
  help: helpSchema.optional(),
1024
- suggestions: suggestionsSchema.optional(),
1025
1068
  onChange: behaviorSchema.optional(),
1026
1069
  }),
1027
1070
  );
@@ -1061,68 +1104,85 @@ export const numberSchemaSchema: z.ZodSchema<NumberSchema> = z.lazy(() =>
1061
1104
  }),
1062
1105
  );
1063
1106
 
1064
- export const integerSchemaSchema: z.ZodSchema<IntegerSchema> = z.lazy(() =>
1107
+ export const oneOfSchemaSchema: z.ZodSchema<OneOfSchema> = z.lazy(() =>
1065
1108
  z.object({
1066
- type: z.literal('integer'),
1067
1109
  autofillProvider: z.string().optional(),
1068
1110
  promoted: z.boolean().optional(),
1069
1111
  refreshFormOnChange: z.boolean().optional(),
1070
1112
  refreshUrl: z.string().optional(),
1071
1113
  refreshFormUrl: z.string().optional(),
1114
+ promotion: jsonElementSchema.optional(),
1115
+ oneOf: z.array(schemaSchema),
1072
1116
  placeholder: z.string().optional(),
1073
- minimum: z.number().optional(),
1074
- maximum: z.number().optional(),
1075
1117
  $id: z.string().optional(),
1076
1118
  title: z.string().optional(),
1077
1119
  description: z.string().optional(),
1078
1120
  control: z.string().optional(),
1079
- default: z.number().optional(),
1121
+ default: jsonElementSchema.optional(),
1080
1122
  hidden: z.boolean().optional(),
1081
- disabled: z.boolean().optional(),
1082
1123
  icon: iconSchema.optional(),
1083
1124
  image: imageSchema.optional(),
1084
1125
  keywords: z.array(z.string()).optional(),
1085
1126
  summary: summaryProviderSchema.optional(),
1086
1127
  analyticsId: z.string().optional(),
1087
- persistAsync: persistAsyncSchema.optional(),
1088
1128
  refreshStepOnChange: z.boolean().optional(),
1089
- validationAsync: validateAsyncSchema.optional(),
1090
- validationMessages: z.record(z.string()).optional(),
1091
1129
  alert: alertLayoutSchema.optional(),
1130
+ help: helpSchema.optional(),
1092
1131
  autocompleteHint: z.array(autocompleteTokenSchema).optional(),
1093
1132
  autofillKey: z.string().optional(),
1094
- help: helpSchema.optional(),
1133
+ validationMessages: z.record(z.string()).optional(),
1134
+ disabled: z.boolean().optional(),
1095
1135
  onChange: behaviorSchema.optional(),
1096
1136
  }),
1097
1137
  );
1098
1138
 
1099
- export const objectSchemaSchema: z.ZodSchema<ObjectSchema> = z.lazy(() =>
1139
+ export const stringSchemaSchema: z.ZodSchema<StringSchema> = z.lazy(() =>
1100
1140
  z.object({
1101
- type: z.literal('object'),
1102
- disabled: z.boolean().optional(),
1141
+ type: z.literal('string'),
1142
+ autofillProvider: z.string().optional(),
1103
1143
  promoted: z.boolean().optional(),
1104
- help: helpSchema.optional(),
1105
- properties: z.record(schemaSchema),
1106
- displayOrder: z.array(z.string()),
1107
- required: z.array(z.string()).optional(),
1144
+ refreshFormOnChange: z.boolean().optional(),
1145
+ refreshUrl: z.string().optional(),
1146
+ refreshFormUrl: z.string().optional(),
1147
+ format: stringSchemaFormatSchema.optional(),
1148
+ displayFormat: z.string().optional(),
1149
+ placeholder: z.string().optional(),
1150
+ minLength: z.number().optional(),
1151
+ maxLength: z.number().optional(),
1152
+ minimum: z.string().optional(),
1153
+ maximum: z.string().optional(),
1154
+ pattern: z.string().optional(),
1155
+ autocapitalization: autocapitalizationTypeSchema.optional(),
1156
+ autocorrect: z.boolean().optional(),
1108
1157
  $id: z.string().optional(),
1109
1158
  title: z.string().optional(),
1110
1159
  description: z.string().optional(),
1111
1160
  control: z.string().optional(),
1161
+ default: z.string().optional(),
1112
1162
  hidden: z.boolean().optional(),
1163
+ disabled: z.boolean().optional(),
1113
1164
  icon: iconSchema.optional(),
1114
1165
  image: imageSchema.optional(),
1115
1166
  keywords: z.array(z.string()).optional(),
1116
1167
  summary: summaryProviderSchema.optional(),
1117
1168
  analyticsId: z.string().optional(),
1169
+ persistAsync: persistAsyncSchema.optional(),
1170
+ refreshStepOnChange: z.boolean().optional(),
1171
+ validationAsync: validateAsyncSchema.optional(),
1172
+ validationMessages: z.record(z.string()).optional(),
1118
1173
  alert: alertLayoutSchema.optional(),
1174
+ cameraConfig: jsonElementSchema.optional(),
1175
+ accepts: z.array(z.string()).optional(),
1176
+ maxSize: z.number().optional(),
1177
+ source: uploadSourceSchema.optional(),
1178
+ autocompleteHint: z.array(autocompleteTokenSchema).optional(),
1179
+ autofillKey: z.string().optional(),
1180
+ help: helpSchema.optional(),
1181
+ suggestions: suggestionsSchema.optional(),
1182
+ onChange: behaviorSchema.optional(),
1119
1183
  }),
1120
1184
  );
1121
1185
 
1122
- export const arraySchemaSchema: z.ZodSchema<ArraySchema> = z.lazy(() =>
1123
- z.union([arraySchemaListSchema, arraySchemaTupleSchema]),
1124
- );
1125
-
1126
1186
  export const arraySchemaListSchema: z.ZodSchema<ArraySchemaList> = z.lazy(() =>
1127
1187
  z.object({
1128
1188
  type: z.literal('array'),
@@ -1151,77 +1211,23 @@ export const arraySchemaListSchema: z.ZodSchema<ArraySchemaList> = z.lazy(() =>
1151
1211
  }),
1152
1212
  );
1153
1213
 
1154
- export const constSchemaSchema: z.ZodSchema<ConstSchema> = z.lazy(() =>
1155
- z.object({
1156
- hidden: z.boolean().optional(),
1157
- alert: alertLayoutSchema.optional(),
1158
- control: z.string().optional(),
1159
- promoted: z.boolean().optional(),
1160
- $id: z.string().optional(),
1161
- const: jsonElementSchema,
1162
- title: z.string().optional(),
1163
- description: z.string().optional(),
1164
- icon: iconSchema.optional(),
1165
- image: imageSchema.optional(),
1166
- keywords: z.array(z.string()).optional(),
1167
- summary: summaryProviderSchema.optional(),
1168
- analyticsId: z.string().optional(),
1169
- disabled: z.boolean().optional(),
1170
- }),
1171
- );
1172
-
1173
- export const booleanSchemaSchema: z.ZodSchema<BooleanSchema> = z.lazy(() =>
1214
+ export const arraySchemaTupleSchema: z.ZodSchema<ArraySchemaTuple> = z.lazy(() =>
1174
1215
  z.object({
1175
- type: z.literal('boolean'),
1176
- autofillProvider: z.string().optional(),
1216
+ type: z.literal('array'),
1177
1217
  promoted: z.boolean().optional(),
1178
- refreshFormOnChange: z.boolean().optional(),
1179
- refreshUrl: z.string().optional(),
1180
- refreshFormUrl: z.string().optional(),
1181
1218
  $id: z.string().optional(),
1219
+ items: z.array(schemaSchema),
1182
1220
  title: z.string().optional(),
1183
1221
  description: z.string().optional(),
1184
1222
  control: z.string().optional(),
1185
- default: z.boolean().optional(),
1186
1223
  hidden: z.boolean().optional(),
1187
- disabled: z.boolean().optional(),
1188
1224
  icon: iconSchema.optional(),
1189
1225
  image: imageSchema.optional(),
1190
1226
  keywords: z.array(z.string()).optional(),
1191
1227
  summary: summaryProviderSchema.optional(),
1192
1228
  analyticsId: z.string().optional(),
1193
1229
  persistAsync: persistAsyncSchema.optional(),
1194
- refreshStepOnChange: z.boolean().optional(),
1195
1230
  validationAsync: validateAsyncSchema.optional(),
1196
1231
  alert: alertLayoutSchema.optional(),
1197
- autofillKey: z.string().optional(),
1198
- help: helpSchema.optional(),
1199
- onChange: behaviorSchema.optional(),
1200
- }),
1201
- );
1202
-
1203
- export const allOfSchemaSchema: z.ZodSchema<AllOfSchema> = z.lazy(() =>
1204
- z.object({
1205
- disabled: z.boolean().optional(),
1206
- promoted: z.boolean().optional(),
1207
- allOf: z.array(schemaSchema),
1208
- $id: z.string().optional(),
1209
- title: z.string().optional(),
1210
- description: z.string().optional(),
1211
- control: z.string().optional(),
1212
- hidden: z.boolean().optional(),
1213
- icon: iconSchema.optional(),
1214
- image: imageSchema.optional(),
1215
- keywords: z.array(z.string()).optional(),
1216
- summary: summaryProviderSchema.optional(),
1217
- analyticsId: z.string().optional(),
1218
- alert: alertLayoutSchema.optional(),
1219
- }),
1220
- );
1221
-
1222
- export const modalResponseBodySchema: z.ZodSchema<ModalResponseBody> = z.lazy(() =>
1223
- z.object({
1224
- title: z.string().optional(),
1225
- content: z.array(layoutSchema),
1226
1232
  }),
1227
1233
  );