@moltzap/protocol 2026.503.4 → 2026.504.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/dist/brands.d.ts +11 -0
  2. package/dist/brands.d.ts.map +1 -0
  3. package/dist/brands.js +14 -0
  4. package/dist/brands.js.map +1 -0
  5. package/dist/helpers.d.ts +29 -26
  6. package/dist/helpers.d.ts.map +1 -1
  7. package/dist/helpers.js +34 -16
  8. package/dist/helpers.js.map +1 -1
  9. package/dist/index.d.ts +6 -3
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +6 -3
  12. package/dist/index.js.map +1 -1
  13. package/dist/internal/ajv.d.ts +5 -0
  14. package/dist/internal/ajv.d.ts.map +1 -0
  15. package/dist/internal/ajv.js +22 -0
  16. package/dist/internal/ajv.js.map +1 -0
  17. package/dist/notification.d.ts +14 -0
  18. package/dist/notification.d.ts.map +1 -0
  19. package/dist/notification.js +11 -0
  20. package/dist/notification.js.map +1 -0
  21. package/dist/rpc-errors.d.ts +30 -0
  22. package/dist/rpc-errors.d.ts.map +1 -0
  23. package/dist/rpc-errors.js +23 -0
  24. package/dist/rpc-errors.js.map +1 -0
  25. package/dist/rpc-groups.d.ts +120 -0
  26. package/dist/rpc-groups.d.ts.map +1 -0
  27. package/dist/rpc-groups.js +131 -0
  28. package/dist/rpc-groups.js.map +1 -0
  29. package/dist/rpc-registry.d.ts +1238 -278
  30. package/dist/rpc-registry.d.ts.map +1 -1
  31. package/dist/rpc-registry.js +11 -22
  32. package/dist/rpc-registry.js.map +1 -1
  33. package/dist/rpc.d.ts +26 -5
  34. package/dist/rpc.d.ts.map +1 -1
  35. package/dist/rpc.js +21 -11
  36. package/dist/rpc.js.map +1 -1
  37. package/dist/schema/apps.d.ts +13 -23
  38. package/dist/schema/apps.d.ts.map +1 -1
  39. package/dist/schema/apps.js +2 -12
  40. package/dist/schema/apps.js.map +1 -1
  41. package/dist/schema/contacts.d.ts +6 -2
  42. package/dist/schema/contacts.d.ts.map +1 -1
  43. package/dist/schema/conversations.d.ts +15 -5
  44. package/dist/schema/conversations.d.ts.map +1 -1
  45. package/dist/schema/delivery.d.ts +9 -3
  46. package/dist/schema/delivery.d.ts.map +1 -1
  47. package/dist/schema/errors.d.ts +0 -4
  48. package/dist/schema/errors.d.ts.map +1 -1
  49. package/dist/schema/errors.js +0 -4
  50. package/dist/schema/errors.js.map +1 -1
  51. package/dist/schema/frames.d.ts +48 -51
  52. package/dist/schema/frames.d.ts.map +1 -1
  53. package/dist/schema/frames.js +28 -50
  54. package/dist/schema/frames.js.map +1 -1
  55. package/dist/schema/identity.d.ts +17 -9
  56. package/dist/schema/identity.d.ts.map +1 -1
  57. package/dist/schema/index.d.ts +3 -4
  58. package/dist/schema/index.d.ts.map +1 -1
  59. package/dist/schema/index.js +3 -4
  60. package/dist/schema/index.js.map +1 -1
  61. package/dist/schema/internal-frames.d.ts +10 -0
  62. package/dist/schema/internal-frames.d.ts.map +1 -0
  63. package/dist/schema/internal-frames.js +5 -0
  64. package/dist/schema/internal-frames.js.map +1 -0
  65. package/dist/schema/invites.d.ts +6 -2
  66. package/dist/schema/invites.d.ts.map +1 -1
  67. package/dist/schema/json-rpc.d.ts +27 -0
  68. package/dist/schema/json-rpc.d.ts.map +1 -0
  69. package/dist/schema/json-rpc.js +32 -0
  70. package/dist/schema/json-rpc.js.map +1 -0
  71. package/dist/schema/messages.d.ts +15 -5
  72. package/dist/schema/messages.d.ts.map +1 -1
  73. package/dist/schema/methods/apps.d.ts +138 -85
  74. package/dist/schema/methods/apps.d.ts.map +1 -1
  75. package/dist/schema/methods/apps.js +4 -45
  76. package/dist/schema/methods/apps.js.map +1 -1
  77. package/dist/schema/methods/auth.d.ts +62 -34
  78. package/dist/schema/methods/auth.d.ts.map +1 -1
  79. package/dist/schema/methods/contacts.d.ts +27 -9
  80. package/dist/schema/methods/contacts.d.ts.map +1 -1
  81. package/dist/schema/methods/conversations.d.ts +91 -18
  82. package/dist/schema/methods/conversations.d.ts.map +1 -1
  83. package/dist/schema/methods/conversations.js +2 -2
  84. package/dist/schema/methods/conversations.js.map +1 -1
  85. package/dist/schema/methods/messages.d.ts +39 -13
  86. package/dist/schema/methods/messages.d.ts.map +1 -1
  87. package/dist/schema/methods/presence.d.ts +6 -2
  88. package/dist/schema/methods/presence.d.ts.map +1 -1
  89. package/dist/schema/notifications.d.ts +791 -0
  90. package/dist/schema/notifications.d.ts.map +1 -0
  91. package/dist/schema/notifications.js +173 -0
  92. package/dist/schema/notifications.js.map +1 -0
  93. package/dist/schema/presence.d.ts +3 -1
  94. package/dist/schema/presence.d.ts.map +1 -1
  95. package/dist/schema/primitives.d.ts +21 -5
  96. package/dist/schema/primitives.d.ts.map +1 -1
  97. package/dist/schema/primitives.js +6 -0
  98. package/dist/schema/primitives.js.map +1 -1
  99. package/dist/test-fixtures/seed-data.d.ts +0 -1388
  100. package/dist/test-fixtures/seed-data.d.ts.map +1 -1
  101. package/dist/test-fixtures/seed-data.js +0 -987
  102. package/dist/test-fixtures/seed-data.js.map +1 -1
  103. package/dist/testing/agent-registration.d.ts +3 -1
  104. package/dist/testing/agent-registration.d.ts.map +1 -1
  105. package/dist/testing/agent-registration.js +2 -14
  106. package/dist/testing/agent-registration.js.map +1 -1
  107. package/dist/testing/arbitraries/frames.d.ts +2 -2
  108. package/dist/testing/arbitraries/frames.d.ts.map +1 -1
  109. package/dist/testing/arbitraries/frames.js +7 -6
  110. package/dist/testing/arbitraries/frames.js.map +1 -1
  111. package/dist/testing/arbitraries/index.d.ts +1 -1
  112. package/dist/testing/arbitraries/index.d.ts.map +1 -1
  113. package/dist/testing/arbitraries/index.js +1 -1
  114. package/dist/testing/arbitraries/index.js.map +1 -1
  115. package/dist/testing/arbitraries/rpc.d.ts +3 -2
  116. package/dist/testing/arbitraries/rpc.d.ts.map +1 -1
  117. package/dist/testing/arbitraries/rpc.js +1 -0
  118. package/dist/testing/arbitraries/rpc.js.map +1 -1
  119. package/dist/testing/codec.d.ts +13 -11
  120. package/dist/testing/codec.d.ts.map +1 -1
  121. package/dist/testing/codec.js +30 -45
  122. package/dist/testing/codec.js.map +1 -1
  123. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.d.ts.map +1 -1
  124. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js +10 -3
  125. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js.map +1 -1
  126. package/dist/testing/conformance/_helpers.d.ts +6 -6
  127. package/dist/testing/conformance/_helpers.d.ts.map +1 -1
  128. package/dist/testing/conformance/_helpers.js +6 -7
  129. package/dist/testing/conformance/_helpers.js.map +1 -1
  130. package/dist/testing/conformance/adversity.d.ts.map +1 -1
  131. package/dist/testing/conformance/adversity.js +14 -31
  132. package/dist/testing/conformance/adversity.js.map +1 -1
  133. package/dist/testing/conformance/boundary.d.ts +1 -1
  134. package/dist/testing/conformance/boundary.d.ts.map +1 -1
  135. package/dist/testing/conformance/boundary.js +13 -18
  136. package/dist/testing/conformance/boundary.js.map +1 -1
  137. package/dist/testing/conformance/client/_fixtures.d.ts +7 -5
  138. package/dist/testing/conformance/client/_fixtures.d.ts.map +1 -1
  139. package/dist/testing/conformance/client/_fixtures.js +17 -8
  140. package/dist/testing/conformance/client/_fixtures.js.map +1 -1
  141. package/dist/testing/conformance/client/adversity.d.ts.map +1 -1
  142. package/dist/testing/conformance/client/adversity.js +8 -7
  143. package/dist/testing/conformance/client/adversity.js.map +1 -1
  144. package/dist/testing/conformance/client/boundary.d.ts +2 -2
  145. package/dist/testing/conformance/client/boundary.d.ts.map +1 -1
  146. package/dist/testing/conformance/client/boundary.js +13 -12
  147. package/dist/testing/conformance/client/boundary.js.map +1 -1
  148. package/dist/testing/conformance/client/delivery.d.ts +5 -5
  149. package/dist/testing/conformance/client/delivery.d.ts.map +1 -1
  150. package/dist/testing/conformance/client/delivery.js +53 -55
  151. package/dist/testing/conformance/client/delivery.js.map +1 -1
  152. package/dist/testing/conformance/client/index.d.ts +2 -2
  153. package/dist/testing/conformance/client/index.d.ts.map +1 -1
  154. package/dist/testing/conformance/client/index.js +1 -1
  155. package/dist/testing/conformance/client/index.js.map +1 -1
  156. package/dist/testing/conformance/client/rpc-semantics.d.ts.map +1 -1
  157. package/dist/testing/conformance/client/rpc-semantics.js +13 -22
  158. package/dist/testing/conformance/client/rpc-semantics.js.map +1 -1
  159. package/dist/testing/conformance/client/runner.d.ts +25 -24
  160. package/dist/testing/conformance/client/runner.d.ts.map +1 -1
  161. package/dist/testing/conformance/client/runner.js +20 -22
  162. package/dist/testing/conformance/client/runner.js.map +1 -1
  163. package/dist/testing/conformance/client/schema-conformance.d.ts +8 -8
  164. package/dist/testing/conformance/client/schema-conformance.d.ts.map +1 -1
  165. package/dist/testing/conformance/client/schema-conformance.js +34 -34
  166. package/dist/testing/conformance/client/schema-conformance.js.map +1 -1
  167. package/dist/testing/conformance/client/suite.js +2 -2
  168. package/dist/testing/conformance/client/suite.js.map +1 -1
  169. package/dist/testing/conformance/delivery.d.ts.map +1 -1
  170. package/dist/testing/conformance/delivery.js +58 -53
  171. package/dist/testing/conformance/delivery.js.map +1 -1
  172. package/dist/testing/conformance/dispatcher-concurrency.js +12 -12
  173. package/dist/testing/conformance/dispatcher-concurrency.js.map +1 -1
  174. package/dist/testing/conformance/presence.d.ts.map +1 -1
  175. package/dist/testing/conformance/presence.js +32 -23
  176. package/dist/testing/conformance/presence.js.map +1 -1
  177. package/dist/testing/conformance/rpc-semantics.d.ts +12 -12
  178. package/dist/testing/conformance/rpc-semantics.d.ts.map +1 -1
  179. package/dist/testing/conformance/rpc-semantics.js +43 -41
  180. package/dist/testing/conformance/rpc-semantics.js.map +1 -1
  181. package/dist/testing/conformance/schema-conformance.d.ts +3 -40
  182. package/dist/testing/conformance/schema-conformance.d.ts.map +1 -1
  183. package/dist/testing/conformance/schema-conformance.js +38 -244
  184. package/dist/testing/conformance/schema-conformance.js.map +1 -1
  185. package/dist/testing/conformance/suite.d.ts.map +1 -1
  186. package/dist/testing/conformance/suite.js +5 -9
  187. package/dist/testing/conformance/suite.js.map +1 -1
  188. package/dist/testing/index.d.ts +1 -1
  189. package/dist/testing/index.d.ts.map +1 -1
  190. package/dist/testing/models/dispatch.d.ts +5 -5
  191. package/dist/testing/models/dispatch.d.ts.map +1 -1
  192. package/dist/testing/models/dispatch.js +1 -18
  193. package/dist/testing/models/dispatch.js.map +1 -1
  194. package/dist/testing/models/state.d.ts +2 -2
  195. package/dist/testing/models/state.d.ts.map +1 -1
  196. package/dist/testing/test-client.d.ts +36 -44
  197. package/dist/testing/test-client.d.ts.map +1 -1
  198. package/dist/testing/test-client.js +117 -105
  199. package/dist/testing/test-client.js.map +1 -1
  200. package/dist/testing/test-server.d.ts +5 -5
  201. package/dist/testing/test-server.d.ts.map +1 -1
  202. package/dist/testing/test-server.js +4 -4
  203. package/dist/testing/test-server.js.map +1 -1
  204. package/dist/types.d.ts +3 -5
  205. package/dist/types.d.ts.map +1 -1
  206. package/dist/types.js.map +1 -1
  207. package/dist/validators.d.ts +366 -101
  208. package/dist/validators.d.ts.map +1 -1
  209. package/dist/validators.js +23 -30
  210. package/dist/validators.js.map +1 -1
  211. package/dist/version.d.ts +1 -1
  212. package/dist/version.js +1 -1
  213. package/package.json +2 -2
  214. package/dist/schema/events.d.ts +0 -213
  215. package/dist/schema/events.d.ts.map +0 -1
  216. package/dist/schema/events.js +0 -122
  217. package/dist/schema/events.js.map +0 -1
  218. package/dist/schema/methods/push.d.ts +0 -21
  219. package/dist/schema/methods/push.d.ts.map +0 -1
  220. package/dist/schema/methods/push.js +0 -28
  221. package/dist/schema/methods/push.js.map +0 -1
  222. package/dist/schema/surfaces.d.ts +0 -55
  223. package/dist/schema/surfaces.d.ts.map +0 -1
  224. package/dist/schema/surfaces.js +0 -55
  225. package/dist/schema/surfaces.js.map +0 -1
@@ -279,1392 +279,4 @@ export declare const SEED_CONTROL_MESSAGES: readonly [{
279
279
  readonly senderType: "agent";
280
280
  readonly text: "Done! I confirmed the booking and asked about the hot tub. I'll let you know when Lisa's agent responds.";
281
281
  }];
282
- export declare const SEED_SURFACES: readonly [{
283
- readonly convIndex: 0;
284
- readonly title: "Tahoe Ski Weekend";
285
- readonly agentIndex: 1;
286
- readonly version: 3;
287
- readonly spec: {
288
- readonly root: "trip-root";
289
- readonly state: {
290
- readonly activeTab: "overview";
291
- readonly weather: {
292
- readonly temp: "28°F";
293
- readonly snow: "42\"";
294
- readonly wind: "12 mph";
295
- };
296
- readonly route: {
297
- readonly from: "San Francisco";
298
- readonly to: "Palisades Tahoe";
299
- readonly distance: "196 mi";
300
- readonly time: "3h 30m";
301
- readonly countdown: "Depart in 3 days";
302
- };
303
- readonly people: readonly [{
304
- readonly name: "Alex";
305
- readonly detail: "Intermediate";
306
- readonly note: "Can drive";
307
- }, {
308
- readonly name: "Mike";
309
- readonly detail: "Intermediate";
310
- readonly note: "Has SUV";
311
- }, {
312
- readonly name: "Sarah";
313
- readonly detail: "Advanced";
314
- readonly note: "Leaves Sun early";
315
- }, {
316
- readonly name: "Lisa";
317
- readonly detail: "Beginner";
318
- readonly note: "Needs lesson";
319
- }, {
320
- readonly name: "Palisades";
321
- readonly detail: "Agent";
322
- readonly note: "Resort agent";
323
- }];
324
- readonly progress: 0.72;
325
- readonly perPerson: "~$340";
326
- readonly remaining: readonly ["Finalize dinner restaurant", "Confirm Lisa's lesson", "Assign rooms"];
327
- };
328
- readonly elements: {
329
- readonly "trip-root": {
330
- readonly type: "Stack";
331
- readonly props: {
332
- readonly direction: "vertical";
333
- readonly gap: 16;
334
- readonly padding: 16;
335
- };
336
- readonly children: readonly ["tabs"];
337
- };
338
- readonly tabs: {
339
- readonly type: "Tabs";
340
- readonly props: {
341
- readonly items: readonly ["Overview", "Itinerary", "Costs", "Packing"];
342
- readonly value: {
343
- readonly $state: "/activeTab";
344
- };
345
- };
346
- readonly children: readonly ["overview-panel", "itinerary-panel", "costs-panel", "packing-panel"];
347
- };
348
- readonly "overview-panel": {
349
- readonly type: "Stack";
350
- readonly props: {
351
- readonly direction: "vertical";
352
- readonly gap: 16;
353
- };
354
- readonly children: readonly ["weather-banner", "route-card", "people-section", "progress-card"];
355
- readonly visible: {
356
- readonly $state: "/activeTab";
357
- readonly eq: "overview";
358
- };
359
- };
360
- readonly "itinerary-panel": {
361
- readonly type: "Stack";
362
- readonly props: {
363
- readonly direction: "vertical";
364
- readonly gap: 12;
365
- };
366
- readonly children: readonly ["itinerary-content"];
367
- readonly visible: {
368
- readonly $state: "/activeTab";
369
- readonly eq: "itinerary";
370
- };
371
- };
372
- readonly "itinerary-content": {
373
- readonly type: "Card";
374
- readonly props: {
375
- readonly title: null;
376
- readonly accent: null;
377
- };
378
- readonly children: readonly ["itinerary-text"];
379
- };
380
- readonly "itinerary-text": {
381
- readonly type: "Text";
382
- readonly props: {
383
- readonly text: "Friday: Depart SF 5pm → Arrive Tahoe 8:30pm. Saturday: Ski all day, dinner at PlumpJack. Sunday: Morning run, depart by noon.";
384
- readonly variant: "body";
385
- };
386
- readonly children: readonly [];
387
- };
388
- readonly "costs-panel": {
389
- readonly type: "Stack";
390
- readonly props: {
391
- readonly direction: "vertical";
392
- readonly gap: 12;
393
- };
394
- readonly children: readonly ["costs-content"];
395
- readonly visible: {
396
- readonly $state: "/activeTab";
397
- readonly eq: "costs";
398
- };
399
- };
400
- readonly "costs-content": {
401
- readonly type: "StatCard";
402
- readonly props: {
403
- readonly label: "Total per person";
404
- readonly value: "$447";
405
- readonly sublabel: "Lift $178 · Lodge $199 · Gas $25 · Dinner ~$45";
406
- readonly color: null;
407
- };
408
- readonly children: readonly [];
409
- };
410
- readonly "packing-panel": {
411
- readonly type: "Stack";
412
- readonly props: {
413
- readonly direction: "vertical";
414
- readonly gap: 12;
415
- };
416
- readonly children: readonly ["packing-content"];
417
- readonly visible: {
418
- readonly $state: "/activeTab";
419
- readonly eq: "packing";
420
- };
421
- };
422
- readonly "packing-content": {
423
- readonly type: "Card";
424
- readonly props: {
425
- readonly title: null;
426
- readonly accent: null;
427
- };
428
- readonly children: readonly ["packing-text"];
429
- };
430
- readonly "packing-text": {
431
- readonly type: "Text";
432
- readonly props: {
433
- readonly text: "Ski jacket, goggles, gloves, base layers, boots (or rent at Palisades). Lisa needs full rental package.";
434
- readonly variant: "body";
435
- };
436
- readonly children: readonly [];
437
- };
438
- readonly "weather-banner": {
439
- readonly type: "GradientBanner";
440
- readonly props: {
441
- readonly gradient: "linear-gradient(135deg, #1a3a5c 0%, #2d6a9f 50%, #e8eef5 100%)";
442
- readonly title: {
443
- readonly $state: "/weather/temp";
444
- };
445
- readonly subtitle: "Perfect conditions for Saturday skiing. Lisa’s beginner lesson starts 8:30, everyone else on Alpine side by 9.";
446
- readonly badges: readonly [{
447
- readonly $template: "❄️ ${/weather/snow} base";
448
- }, {
449
- readonly $template: "🌡 ${/weather/temp}";
450
- }, {
451
- readonly $template: "💨 ${/weather/wind}";
452
- }];
453
- };
454
- readonly children: readonly [];
455
- };
456
- readonly "route-card": {
457
- readonly type: "Card";
458
- readonly props: {
459
- readonly title: null;
460
- };
461
- readonly children: readonly ["route-header", "route-endpoints", "carpool-section"];
462
- readonly on: {
463
- readonly press: {
464
- readonly action: "viewRouteDetail";
465
- readonly params: {};
466
- };
467
- };
468
- };
469
- readonly "route-header": {
470
- readonly type: "Stack";
471
- readonly props: {
472
- readonly direction: "horizontal";
473
- readonly gap: 8;
474
- };
475
- readonly children: readonly ["route-info", "route-countdown"];
476
- };
477
- readonly "route-info": {
478
- readonly type: "Stack";
479
- readonly props: {
480
- readonly direction: "vertical";
481
- readonly gap: 2;
482
- };
483
- readonly children: readonly ["route-label", "route-distance"];
484
- };
485
- readonly "route-label": {
486
- readonly type: "Text";
487
- readonly props: {
488
- readonly text: "Route";
489
- readonly variant: "caption";
490
- };
491
- readonly children: readonly [];
492
- };
493
- readonly "route-distance": {
494
- readonly type: "Text";
495
- readonly props: {
496
- readonly text: {
497
- readonly $template: "${/route/distance} · ${/route/time}";
498
- };
499
- readonly variant: "heading";
500
- };
501
- readonly children: readonly [];
502
- };
503
- readonly "route-countdown": {
504
- readonly type: "Pill";
505
- readonly props: {
506
- readonly text: {
507
- readonly $state: "/route/countdown";
508
- };
509
- readonly color: "accent";
510
- };
511
- readonly children: readonly [];
512
- };
513
- readonly "route-endpoints": {
514
- readonly type: "Stack";
515
- readonly props: {
516
- readonly direction: "horizontal";
517
- readonly gap: 8;
518
- };
519
- readonly children: readonly ["route-from", "route-to"];
520
- };
521
- readonly "route-from": {
522
- readonly type: "Badge";
523
- readonly props: {
524
- readonly text: {
525
- readonly $state: "/route/from";
526
- };
527
- readonly variant: "secondary";
528
- };
529
- readonly children: readonly [];
530
- };
531
- readonly "route-to": {
532
- readonly type: "Badge";
533
- readonly props: {
534
- readonly text: {
535
- readonly $state: "/route/to";
536
- };
537
- readonly variant: "secondary";
538
- };
539
- readonly children: readonly [];
540
- };
541
- readonly "carpool-section": {
542
- readonly type: "Stack";
543
- readonly props: {
544
- readonly direction: "vertical";
545
- readonly gap: 8;
546
- };
547
- readonly children: readonly ["carpool-1", "carpool-2"];
548
- };
549
- readonly "carpool-1": {
550
- readonly type: "Stack";
551
- readonly props: {
552
- readonly direction: "horizontal";
553
- readonly gap: 8;
554
- };
555
- readonly children: readonly ["carpool-1-icon", "carpool-1-info"];
556
- };
557
- readonly "carpool-1-icon": {
558
- readonly type: "IconBox";
559
- readonly props: {
560
- readonly icon: "🚗";
561
- readonly size: 32;
562
- };
563
- readonly children: readonly [];
564
- };
565
- readonly "carpool-1-info": {
566
- readonly type: "Stack";
567
- readonly props: {
568
- readonly direction: "vertical";
569
- readonly gap: 2;
570
- };
571
- readonly children: readonly ["carpool-1-driver", "carpool-1-avatars"];
572
- };
573
- readonly "carpool-1-driver": {
574
- readonly type: "Text";
575
- readonly props: {
576
- readonly text: "Sarah · Sedan";
577
- readonly variant: "body";
578
- };
579
- readonly children: readonly [];
580
- };
581
- readonly "carpool-1-avatars": {
582
- readonly type: "AvatarRow";
583
- readonly props: {
584
- readonly names: readonly ["Sarah", "Lisa"];
585
- readonly size: 20;
586
- readonly max: null;
587
- };
588
- readonly children: readonly [];
589
- };
590
- readonly "carpool-2": {
591
- readonly type: "Stack";
592
- readonly props: {
593
- readonly direction: "horizontal";
594
- readonly gap: 8;
595
- };
596
- readonly children: readonly ["carpool-2-icon", "carpool-2-info"];
597
- };
598
- readonly "carpool-2-icon": {
599
- readonly type: "IconBox";
600
- readonly props: {
601
- readonly icon: "🚗";
602
- readonly size: 32;
603
- };
604
- readonly children: readonly [];
605
- };
606
- readonly "carpool-2-info": {
607
- readonly type: "Stack";
608
- readonly props: {
609
- readonly direction: "vertical";
610
- readonly gap: 2;
611
- };
612
- readonly children: readonly ["carpool-2-driver", "carpool-2-avatars"];
613
- };
614
- readonly "carpool-2-driver": {
615
- readonly type: "Text";
616
- readonly props: {
617
- readonly text: "Mike · SUV";
618
- readonly variant: "body";
619
- };
620
- readonly children: readonly [];
621
- };
622
- readonly "carpool-2-avatars": {
623
- readonly type: "AvatarRow";
624
- readonly props: {
625
- readonly names: readonly ["Mike", "Alex"];
626
- readonly size: 20;
627
- readonly max: null;
628
- };
629
- readonly children: readonly [];
630
- };
631
- readonly "people-section": {
632
- readonly type: "Stack";
633
- readonly props: {
634
- readonly direction: "vertical";
635
- readonly gap: 8;
636
- };
637
- readonly children: readonly ["people-header", "people-strip"];
638
- };
639
- readonly "people-header": {
640
- readonly type: "SectionHeader";
641
- readonly props: {
642
- readonly text: "Who’s going";
643
- };
644
- readonly children: readonly [];
645
- };
646
- readonly "people-strip": {
647
- readonly type: "PersonStrip";
648
- readonly props: {
649
- readonly people: {
650
- readonly $state: "/people";
651
- };
652
- };
653
- readonly children: readonly [];
654
- readonly on: {
655
- readonly press: {
656
- readonly action: "viewPersonDetail";
657
- readonly params: {};
658
- };
659
- };
660
- };
661
- readonly "progress-card": {
662
- readonly type: "Card";
663
- readonly props: {
664
- readonly title: null;
665
- };
666
- readonly children: readonly ["progress-row", "remaining-list"];
667
- };
668
- readonly "progress-row": {
669
- readonly type: "Stack";
670
- readonly props: {
671
- readonly direction: "horizontal";
672
- readonly gap: 16;
673
- };
674
- readonly children: readonly ["progress-ring", "progress-info"];
675
- };
676
- readonly "progress-ring": {
677
- readonly type: "ProgressRing";
678
- readonly props: {
679
- readonly value: {
680
- readonly $state: "/progress";
681
- };
682
- readonly size: 56;
683
- readonly color: null;
684
- readonly label: "72%";
685
- };
686
- readonly children: readonly [];
687
- };
688
- readonly "progress-info": {
689
- readonly type: "Stack";
690
- readonly props: {
691
- readonly direction: "vertical";
692
- readonly gap: 2;
693
- };
694
- readonly children: readonly ["progress-label", "progress-per-person"];
695
- };
696
- readonly "progress-label": {
697
- readonly type: "Text";
698
- readonly props: {
699
- readonly text: "72% planned";
700
- readonly variant: "heading";
701
- };
702
- readonly children: readonly [];
703
- };
704
- readonly "progress-per-person": {
705
- readonly type: "Text";
706
- readonly props: {
707
- readonly text: {
708
- readonly $template: "${/perPerson}/person";
709
- };
710
- readonly variant: "body";
711
- };
712
- readonly children: readonly [];
713
- };
714
- readonly "remaining-list": {
715
- readonly type: "Stack";
716
- readonly props: {
717
- readonly direction: "vertical";
718
- readonly gap: 6;
719
- };
720
- readonly children: readonly ["remaining-1", "remaining-2", "remaining-3"];
721
- };
722
- readonly "remaining-1": {
723
- readonly type: "Stack";
724
- readonly props: {
725
- readonly direction: "horizontal";
726
- readonly gap: 8;
727
- };
728
- readonly children: readonly ["remaining-1-check", "remaining-1-text"];
729
- };
730
- readonly "remaining-1-check": {
731
- readonly type: "Checkbox";
732
- readonly props: {
733
- readonly checked: false;
734
- readonly label: null;
735
- };
736
- readonly children: readonly [];
737
- };
738
- readonly "remaining-1-text": {
739
- readonly type: "Text";
740
- readonly props: {
741
- readonly text: "Finalize dinner restaurant";
742
- readonly variant: "body";
743
- };
744
- readonly children: readonly [];
745
- readonly on: {
746
- readonly press: {
747
- readonly action: "completeTask";
748
- readonly params: {
749
- readonly task: "Finalize dinner restaurant";
750
- };
751
- };
752
- };
753
- };
754
- readonly "remaining-2": {
755
- readonly type: "Stack";
756
- readonly props: {
757
- readonly direction: "horizontal";
758
- readonly gap: 8;
759
- };
760
- readonly children: readonly ["remaining-2-check", "remaining-2-text"];
761
- };
762
- readonly "remaining-2-check": {
763
- readonly type: "Checkbox";
764
- readonly props: {
765
- readonly checked: false;
766
- readonly label: null;
767
- };
768
- readonly children: readonly [];
769
- };
770
- readonly "remaining-2-text": {
771
- readonly type: "Text";
772
- readonly props: {
773
- readonly text: "Confirm Lisa’s lesson";
774
- readonly variant: "body";
775
- };
776
- readonly children: readonly [];
777
- readonly on: {
778
- readonly press: {
779
- readonly action: "completeTask";
780
- readonly params: {
781
- readonly task: "Confirm Lisa's lesson";
782
- };
783
- };
784
- };
785
- };
786
- readonly "remaining-3": {
787
- readonly type: "Stack";
788
- readonly props: {
789
- readonly direction: "horizontal";
790
- readonly gap: 8;
791
- };
792
- readonly children: readonly ["remaining-3-check", "remaining-3-text"];
793
- };
794
- readonly "remaining-3-check": {
795
- readonly type: "Checkbox";
796
- readonly props: {
797
- readonly checked: false;
798
- readonly label: null;
799
- };
800
- readonly children: readonly [];
801
- };
802
- readonly "remaining-3-text": {
803
- readonly type: "Text";
804
- readonly props: {
805
- readonly text: "Assign rooms";
806
- readonly variant: "body";
807
- };
808
- readonly children: readonly [];
809
- readonly on: {
810
- readonly press: {
811
- readonly action: "completeTask";
812
- readonly params: {
813
- readonly task: "Assign rooms";
814
- };
815
- };
816
- };
817
- };
818
- };
819
- };
820
- }, {
821
- readonly convIndex: 1;
822
- readonly title: "Expense Split";
823
- readonly agentIndex: 2;
824
- readonly version: 1;
825
- readonly spec: {
826
- readonly root: "expense-root";
827
- readonly state: {
828
- readonly balance: {
829
- readonly amount: 127;
830
- readonly direction: "owed";
831
- readonly total: 486;
832
- };
833
- readonly people: readonly [{
834
- readonly name: "Alex";
835
- readonly avatar: "you";
836
- readonly paid: 234;
837
- readonly owes: 162;
838
- readonly net: 72;
839
- }, {
840
- readonly name: "Mike";
841
- readonly avatar: "mike";
842
- readonly paid: 155;
843
- readonly owes: 162;
844
- readonly net: -7;
845
- }, {
846
- readonly name: "Sarah";
847
- readonly avatar: "sarah";
848
- readonly paid: 97;
849
- readonly owes: 162;
850
- readonly net: -65;
851
- }];
852
- readonly expenses: readonly [{
853
- readonly id: "exp-1";
854
- readonly desc: "Dinner at Foreign Cinema";
855
- readonly amount: 186;
856
- readonly paidBy: "Alex";
857
- readonly paidByAvatar: "you";
858
- readonly icon: "🍽";
859
- }, {
860
- readonly id: "exp-2";
861
- readonly desc: "Uber to restaurant";
862
- readonly amount: 32;
863
- readonly paidBy: "Mike";
864
- readonly paidByAvatar: "mike";
865
- readonly icon: "🚗";
866
- }, {
867
- readonly id: "exp-3";
868
- readonly desc: "Groceries";
869
- readonly amount: 119;
870
- readonly paidBy: "Alex";
871
- readonly paidByAvatar: "you";
872
- readonly icon: "🛒";
873
- }, {
874
- readonly id: "exp-4";
875
- readonly desc: "Movie tickets";
876
- readonly amount: 54;
877
- readonly paidBy: "Sarah";
878
- readonly paidByAvatar: "sarah";
879
- readonly icon: "🎬";
880
- }, {
881
- readonly id: "exp-5";
882
- readonly desc: "Coffee & pastries";
883
- readonly amount: 28;
884
- readonly paidBy: "Mike";
885
- readonly paidByAvatar: "mike";
886
- readonly icon: "☕";
887
- }, {
888
- readonly id: "exp-6";
889
- readonly desc: "Gas for road trip";
890
- readonly amount: 67;
891
- readonly paidBy: "Alex";
892
- readonly paidByAvatar: "you";
893
- readonly icon: "⛽";
894
- }];
895
- readonly settlements: readonly [{
896
- readonly from: "Mike";
897
- readonly fromAvatar: "mike";
898
- readonly to: "Alex";
899
- readonly toAvatar: "you";
900
- readonly amount: 7;
901
- }, {
902
- readonly from: "Sarah";
903
- readonly fromAvatar: "sarah";
904
- readonly to: "Alex";
905
- readonly toAvatar: "you";
906
- readonly amount: 65;
907
- }];
908
- };
909
- readonly elements: {
910
- readonly "expense-root": {
911
- readonly type: "Stack";
912
- readonly props: {
913
- readonly direction: "vertical";
914
- readonly gap: 16;
915
- readonly padding: 16;
916
- };
917
- readonly children: readonly ["balance-hero", "people-strip", "expenses-section", "settle-section"];
918
- };
919
- readonly "balance-hero": {
920
- readonly type: "StatCard";
921
- readonly props: {
922
- readonly label: "You’re owed";
923
- readonly value: {
924
- readonly $template: "$${/balance/amount}";
925
- };
926
- readonly sublabel: {
927
- readonly $template: "from $${/balance/total} total";
928
- };
929
- readonly color: "green";
930
- };
931
- readonly children: readonly [];
932
- };
933
- readonly "people-strip": {
934
- readonly type: "PersonStrip";
935
- readonly props: {
936
- readonly people: readonly [{
937
- readonly name: "Alex";
938
- readonly detail: "+$72";
939
- readonly note: null;
940
- }, {
941
- readonly name: "Mike";
942
- readonly detail: "-$7";
943
- readonly note: null;
944
- }, {
945
- readonly name: "Sarah";
946
- readonly detail: "-$65";
947
- readonly note: null;
948
- }];
949
- };
950
- readonly children: readonly [];
951
- readonly on: {
952
- readonly press: {
953
- readonly action: "viewPersonExpenses";
954
- readonly params: {};
955
- };
956
- };
957
- };
958
- readonly "expenses-section": {
959
- readonly type: "Stack";
960
- readonly props: {
961
- readonly direction: "vertical";
962
- readonly gap: 8;
963
- };
964
- readonly children: readonly ["expenses-header", "expense-1", "expense-2", "expense-3", "expense-4", "expense-5", "expense-6"];
965
- };
966
- readonly "expenses-header": {
967
- readonly type: "SectionHeader";
968
- readonly props: {
969
- readonly text: "Expenses";
970
- };
971
- readonly children: readonly [];
972
- };
973
- readonly "expense-1": {
974
- readonly type: "Card";
975
- readonly props: {
976
- readonly title: null;
977
- };
978
- readonly children: readonly ["expense-1-row"];
979
- readonly on: {
980
- readonly press: {
981
- readonly action: "viewExpenseDetail";
982
- readonly params: {
983
- readonly expenseId: "exp-1";
984
- };
985
- };
986
- };
987
- };
988
- readonly "expense-1-row": {
989
- readonly type: "Stack";
990
- readonly props: {
991
- readonly direction: "horizontal";
992
- readonly gap: 10;
993
- };
994
- readonly children: readonly ["expense-1-icon", "expense-1-info", "expense-1-amount"];
995
- };
996
- readonly "expense-1-icon": {
997
- readonly type: "IconBox";
998
- readonly props: {
999
- readonly icon: "🍽";
1000
- readonly size: 38;
1001
- };
1002
- readonly children: readonly [];
1003
- };
1004
- readonly "expense-1-info": {
1005
- readonly type: "Stack";
1006
- readonly props: {
1007
- readonly direction: "vertical";
1008
- readonly gap: 2;
1009
- };
1010
- readonly children: readonly ["expense-1-desc", "expense-1-paid-by"];
1011
- };
1012
- readonly "expense-1-desc": {
1013
- readonly type: "Text";
1014
- readonly props: {
1015
- readonly text: "Dinner at Foreign Cinema";
1016
- readonly variant: "body";
1017
- };
1018
- readonly children: readonly [];
1019
- };
1020
- readonly "expense-1-paid-by": {
1021
- readonly type: "Stack";
1022
- readonly props: {
1023
- readonly direction: "horizontal";
1024
- readonly gap: 4;
1025
- };
1026
- readonly children: readonly ["expense-1-paid-label", "expense-1-paid-avatar", "expense-1-paid-name"];
1027
- };
1028
- readonly "expense-1-paid-label": {
1029
- readonly type: "Text";
1030
- readonly props: {
1031
- readonly text: "Paid by";
1032
- readonly variant: "caption";
1033
- };
1034
- readonly children: readonly [];
1035
- };
1036
- readonly "expense-1-paid-avatar": {
1037
- readonly type: "Avatar";
1038
- readonly props: {
1039
- readonly name: "Alex";
1040
- readonly size: 16;
1041
- };
1042
- readonly children: readonly [];
1043
- };
1044
- readonly "expense-1-paid-name": {
1045
- readonly type: "Text";
1046
- readonly props: {
1047
- readonly text: "Alex";
1048
- readonly variant: "caption";
1049
- };
1050
- readonly children: readonly [];
1051
- };
1052
- readonly "expense-1-amount": {
1053
- readonly type: "Heading";
1054
- readonly props: {
1055
- readonly text: "$186";
1056
- readonly level: 3;
1057
- };
1058
- readonly children: readonly [];
1059
- };
1060
- readonly "expense-2": {
1061
- readonly type: "Card";
1062
- readonly props: {
1063
- readonly title: null;
1064
- };
1065
- readonly children: readonly ["expense-2-row"];
1066
- readonly on: {
1067
- readonly press: {
1068
- readonly action: "viewExpenseDetail";
1069
- readonly params: {
1070
- readonly expenseId: "exp-2";
1071
- };
1072
- };
1073
- };
1074
- };
1075
- readonly "expense-2-row": {
1076
- readonly type: "Stack";
1077
- readonly props: {
1078
- readonly direction: "horizontal";
1079
- readonly gap: 10;
1080
- };
1081
- readonly children: readonly ["expense-2-icon", "expense-2-info", "expense-2-amount"];
1082
- };
1083
- readonly "expense-2-icon": {
1084
- readonly type: "IconBox";
1085
- readonly props: {
1086
- readonly icon: "🚗";
1087
- readonly size: 38;
1088
- };
1089
- readonly children: readonly [];
1090
- };
1091
- readonly "expense-2-info": {
1092
- readonly type: "Stack";
1093
- readonly props: {
1094
- readonly direction: "vertical";
1095
- readonly gap: 2;
1096
- };
1097
- readonly children: readonly ["expense-2-desc", "expense-2-paid-by"];
1098
- };
1099
- readonly "expense-2-desc": {
1100
- readonly type: "Text";
1101
- readonly props: {
1102
- readonly text: "Uber to restaurant";
1103
- readonly variant: "body";
1104
- };
1105
- readonly children: readonly [];
1106
- };
1107
- readonly "expense-2-paid-by": {
1108
- readonly type: "Stack";
1109
- readonly props: {
1110
- readonly direction: "horizontal";
1111
- readonly gap: 4;
1112
- };
1113
- readonly children: readonly ["expense-2-paid-label", "expense-2-paid-avatar", "expense-2-paid-name"];
1114
- };
1115
- readonly "expense-2-paid-label": {
1116
- readonly type: "Text";
1117
- readonly props: {
1118
- readonly text: "Paid by";
1119
- readonly variant: "caption";
1120
- };
1121
- readonly children: readonly [];
1122
- };
1123
- readonly "expense-2-paid-avatar": {
1124
- readonly type: "Avatar";
1125
- readonly props: {
1126
- readonly name: "Mike";
1127
- readonly size: 16;
1128
- };
1129
- readonly children: readonly [];
1130
- };
1131
- readonly "expense-2-paid-name": {
1132
- readonly type: "Text";
1133
- readonly props: {
1134
- readonly text: "Mike";
1135
- readonly variant: "caption";
1136
- };
1137
- readonly children: readonly [];
1138
- };
1139
- readonly "expense-2-amount": {
1140
- readonly type: "Heading";
1141
- readonly props: {
1142
- readonly text: "$32";
1143
- readonly level: 3;
1144
- };
1145
- readonly children: readonly [];
1146
- };
1147
- readonly "expense-3": {
1148
- readonly type: "Card";
1149
- readonly props: {
1150
- readonly title: null;
1151
- };
1152
- readonly children: readonly ["expense-3-row"];
1153
- readonly on: {
1154
- readonly press: {
1155
- readonly action: "viewExpenseDetail";
1156
- readonly params: {
1157
- readonly expenseId: "exp-3";
1158
- };
1159
- };
1160
- };
1161
- };
1162
- readonly "expense-3-row": {
1163
- readonly type: "Stack";
1164
- readonly props: {
1165
- readonly direction: "horizontal";
1166
- readonly gap: 10;
1167
- };
1168
- readonly children: readonly ["expense-3-icon", "expense-3-info", "expense-3-amount"];
1169
- };
1170
- readonly "expense-3-icon": {
1171
- readonly type: "IconBox";
1172
- readonly props: {
1173
- readonly icon: "🛒";
1174
- readonly size: 38;
1175
- };
1176
- readonly children: readonly [];
1177
- };
1178
- readonly "expense-3-info": {
1179
- readonly type: "Stack";
1180
- readonly props: {
1181
- readonly direction: "vertical";
1182
- readonly gap: 2;
1183
- };
1184
- readonly children: readonly ["expense-3-desc", "expense-3-paid-by"];
1185
- };
1186
- readonly "expense-3-desc": {
1187
- readonly type: "Text";
1188
- readonly props: {
1189
- readonly text: "Groceries";
1190
- readonly variant: "body";
1191
- };
1192
- readonly children: readonly [];
1193
- };
1194
- readonly "expense-3-paid-by": {
1195
- readonly type: "Stack";
1196
- readonly props: {
1197
- readonly direction: "horizontal";
1198
- readonly gap: 4;
1199
- };
1200
- readonly children: readonly ["expense-3-paid-label", "expense-3-paid-avatar", "expense-3-paid-name"];
1201
- };
1202
- readonly "expense-3-paid-label": {
1203
- readonly type: "Text";
1204
- readonly props: {
1205
- readonly text: "Paid by";
1206
- readonly variant: "caption";
1207
- };
1208
- readonly children: readonly [];
1209
- };
1210
- readonly "expense-3-paid-avatar": {
1211
- readonly type: "Avatar";
1212
- readonly props: {
1213
- readonly name: "Alex";
1214
- readonly size: 16;
1215
- };
1216
- readonly children: readonly [];
1217
- };
1218
- readonly "expense-3-paid-name": {
1219
- readonly type: "Text";
1220
- readonly props: {
1221
- readonly text: "Alex";
1222
- readonly variant: "caption";
1223
- };
1224
- readonly children: readonly [];
1225
- };
1226
- readonly "expense-3-amount": {
1227
- readonly type: "Heading";
1228
- readonly props: {
1229
- readonly text: "$119";
1230
- readonly level: 3;
1231
- };
1232
- readonly children: readonly [];
1233
- };
1234
- readonly "expense-4": {
1235
- readonly type: "Card";
1236
- readonly props: {
1237
- readonly title: null;
1238
- };
1239
- readonly children: readonly ["expense-4-row"];
1240
- readonly on: {
1241
- readonly press: {
1242
- readonly action: "viewExpenseDetail";
1243
- readonly params: {
1244
- readonly expenseId: "exp-4";
1245
- };
1246
- };
1247
- };
1248
- };
1249
- readonly "expense-4-row": {
1250
- readonly type: "Stack";
1251
- readonly props: {
1252
- readonly direction: "horizontal";
1253
- readonly gap: 10;
1254
- };
1255
- readonly children: readonly ["expense-4-icon", "expense-4-info", "expense-4-amount"];
1256
- };
1257
- readonly "expense-4-icon": {
1258
- readonly type: "IconBox";
1259
- readonly props: {
1260
- readonly icon: "🎬";
1261
- readonly size: 38;
1262
- };
1263
- readonly children: readonly [];
1264
- };
1265
- readonly "expense-4-info": {
1266
- readonly type: "Stack";
1267
- readonly props: {
1268
- readonly direction: "vertical";
1269
- readonly gap: 2;
1270
- };
1271
- readonly children: readonly ["expense-4-desc", "expense-4-paid-by"];
1272
- };
1273
- readonly "expense-4-desc": {
1274
- readonly type: "Text";
1275
- readonly props: {
1276
- readonly text: "Movie tickets";
1277
- readonly variant: "body";
1278
- };
1279
- readonly children: readonly [];
1280
- };
1281
- readonly "expense-4-paid-by": {
1282
- readonly type: "Stack";
1283
- readonly props: {
1284
- readonly direction: "horizontal";
1285
- readonly gap: 4;
1286
- };
1287
- readonly children: readonly ["expense-4-paid-label", "expense-4-paid-avatar", "expense-4-paid-name"];
1288
- };
1289
- readonly "expense-4-paid-label": {
1290
- readonly type: "Text";
1291
- readonly props: {
1292
- readonly text: "Paid by";
1293
- readonly variant: "caption";
1294
- };
1295
- readonly children: readonly [];
1296
- };
1297
- readonly "expense-4-paid-avatar": {
1298
- readonly type: "Avatar";
1299
- readonly props: {
1300
- readonly name: "Sarah";
1301
- readonly size: 16;
1302
- };
1303
- readonly children: readonly [];
1304
- };
1305
- readonly "expense-4-paid-name": {
1306
- readonly type: "Text";
1307
- readonly props: {
1308
- readonly text: "Sarah";
1309
- readonly variant: "caption";
1310
- };
1311
- readonly children: readonly [];
1312
- };
1313
- readonly "expense-4-amount": {
1314
- readonly type: "Heading";
1315
- readonly props: {
1316
- readonly text: "$54";
1317
- readonly level: 3;
1318
- };
1319
- readonly children: readonly [];
1320
- };
1321
- readonly "expense-5": {
1322
- readonly type: "Card";
1323
- readonly props: {
1324
- readonly title: null;
1325
- };
1326
- readonly children: readonly ["expense-5-row"];
1327
- readonly on: {
1328
- readonly press: {
1329
- readonly action: "viewExpenseDetail";
1330
- readonly params: {
1331
- readonly expenseId: "exp-5";
1332
- };
1333
- };
1334
- };
1335
- };
1336
- readonly "expense-5-row": {
1337
- readonly type: "Stack";
1338
- readonly props: {
1339
- readonly direction: "horizontal";
1340
- readonly gap: 10;
1341
- };
1342
- readonly children: readonly ["expense-5-icon", "expense-5-info", "expense-5-amount"];
1343
- };
1344
- readonly "expense-5-icon": {
1345
- readonly type: "IconBox";
1346
- readonly props: {
1347
- readonly icon: "☕";
1348
- readonly size: 38;
1349
- };
1350
- readonly children: readonly [];
1351
- };
1352
- readonly "expense-5-info": {
1353
- readonly type: "Stack";
1354
- readonly props: {
1355
- readonly direction: "vertical";
1356
- readonly gap: 2;
1357
- };
1358
- readonly children: readonly ["expense-5-desc", "expense-5-paid-by"];
1359
- };
1360
- readonly "expense-5-desc": {
1361
- readonly type: "Text";
1362
- readonly props: {
1363
- readonly text: "Coffee & pastries";
1364
- readonly variant: "body";
1365
- };
1366
- readonly children: readonly [];
1367
- };
1368
- readonly "expense-5-paid-by": {
1369
- readonly type: "Stack";
1370
- readonly props: {
1371
- readonly direction: "horizontal";
1372
- readonly gap: 4;
1373
- };
1374
- readonly children: readonly ["expense-5-paid-label", "expense-5-paid-avatar", "expense-5-paid-name"];
1375
- };
1376
- readonly "expense-5-paid-label": {
1377
- readonly type: "Text";
1378
- readonly props: {
1379
- readonly text: "Paid by";
1380
- readonly variant: "caption";
1381
- };
1382
- readonly children: readonly [];
1383
- };
1384
- readonly "expense-5-paid-avatar": {
1385
- readonly type: "Avatar";
1386
- readonly props: {
1387
- readonly name: "Mike";
1388
- readonly size: 16;
1389
- };
1390
- readonly children: readonly [];
1391
- };
1392
- readonly "expense-5-paid-name": {
1393
- readonly type: "Text";
1394
- readonly props: {
1395
- readonly text: "Mike";
1396
- readonly variant: "caption";
1397
- };
1398
- readonly children: readonly [];
1399
- };
1400
- readonly "expense-5-amount": {
1401
- readonly type: "Heading";
1402
- readonly props: {
1403
- readonly text: "$28";
1404
- readonly level: 3;
1405
- };
1406
- readonly children: readonly [];
1407
- };
1408
- readonly "expense-6": {
1409
- readonly type: "Card";
1410
- readonly props: {
1411
- readonly title: null;
1412
- };
1413
- readonly children: readonly ["expense-6-row"];
1414
- readonly on: {
1415
- readonly press: {
1416
- readonly action: "viewExpenseDetail";
1417
- readonly params: {
1418
- readonly expenseId: "exp-6";
1419
- };
1420
- };
1421
- };
1422
- };
1423
- readonly "expense-6-row": {
1424
- readonly type: "Stack";
1425
- readonly props: {
1426
- readonly direction: "horizontal";
1427
- readonly gap: 10;
1428
- };
1429
- readonly children: readonly ["expense-6-icon", "expense-6-info", "expense-6-amount"];
1430
- };
1431
- readonly "expense-6-icon": {
1432
- readonly type: "IconBox";
1433
- readonly props: {
1434
- readonly icon: "⛽";
1435
- readonly size: 38;
1436
- };
1437
- readonly children: readonly [];
1438
- };
1439
- readonly "expense-6-info": {
1440
- readonly type: "Stack";
1441
- readonly props: {
1442
- readonly direction: "vertical";
1443
- readonly gap: 2;
1444
- };
1445
- readonly children: readonly ["expense-6-desc", "expense-6-paid-by"];
1446
- };
1447
- readonly "expense-6-desc": {
1448
- readonly type: "Text";
1449
- readonly props: {
1450
- readonly text: "Gas for road trip";
1451
- readonly variant: "body";
1452
- };
1453
- readonly children: readonly [];
1454
- };
1455
- readonly "expense-6-paid-by": {
1456
- readonly type: "Stack";
1457
- readonly props: {
1458
- readonly direction: "horizontal";
1459
- readonly gap: 4;
1460
- };
1461
- readonly children: readonly ["expense-6-paid-label", "expense-6-paid-avatar", "expense-6-paid-name"];
1462
- };
1463
- readonly "expense-6-paid-label": {
1464
- readonly type: "Text";
1465
- readonly props: {
1466
- readonly text: "Paid by";
1467
- readonly variant: "caption";
1468
- };
1469
- readonly children: readonly [];
1470
- };
1471
- readonly "expense-6-paid-avatar": {
1472
- readonly type: "Avatar";
1473
- readonly props: {
1474
- readonly name: "Alex";
1475
- readonly size: 16;
1476
- };
1477
- readonly children: readonly [];
1478
- };
1479
- readonly "expense-6-paid-name": {
1480
- readonly type: "Text";
1481
- readonly props: {
1482
- readonly text: "Alex";
1483
- readonly variant: "caption";
1484
- };
1485
- readonly children: readonly [];
1486
- };
1487
- readonly "expense-6-amount": {
1488
- readonly type: "Heading";
1489
- readonly props: {
1490
- readonly text: "$67";
1491
- readonly level: 3;
1492
- };
1493
- readonly children: readonly [];
1494
- };
1495
- readonly "settle-section": {
1496
- readonly type: "Stack";
1497
- readonly props: {
1498
- readonly direction: "vertical";
1499
- readonly gap: 8;
1500
- };
1501
- readonly children: readonly ["settle-header", "settle-1", "settle-2"];
1502
- };
1503
- readonly "settle-header": {
1504
- readonly type: "SectionHeader";
1505
- readonly props: {
1506
- readonly text: "Settle Up";
1507
- };
1508
- readonly children: readonly [];
1509
- };
1510
- readonly "settle-1": {
1511
- readonly type: "Card";
1512
- readonly props: {
1513
- readonly title: null;
1514
- };
1515
- readonly children: readonly ["settle-1-row", "settle-1-btn"];
1516
- };
1517
- readonly "settle-1-row": {
1518
- readonly type: "Stack";
1519
- readonly props: {
1520
- readonly direction: "horizontal";
1521
- readonly gap: 10;
1522
- };
1523
- readonly children: readonly ["settle-1-from", "settle-1-info", "settle-1-to"];
1524
- };
1525
- readonly "settle-1-from": {
1526
- readonly type: "Avatar";
1527
- readonly props: {
1528
- readonly name: "Mike";
1529
- readonly size: 32;
1530
- };
1531
- readonly children: readonly [];
1532
- };
1533
- readonly "settle-1-info": {
1534
- readonly type: "Stack";
1535
- readonly props: {
1536
- readonly direction: "vertical";
1537
- readonly gap: 2;
1538
- };
1539
- readonly children: readonly ["settle-1-label", "settle-1-amount"];
1540
- };
1541
- readonly "settle-1-label": {
1542
- readonly type: "Text";
1543
- readonly props: {
1544
- readonly text: "Mike owes";
1545
- readonly variant: "caption";
1546
- };
1547
- readonly children: readonly [];
1548
- };
1549
- readonly "settle-1-amount": {
1550
- readonly type: "Heading";
1551
- readonly props: {
1552
- readonly text: "$7";
1553
- readonly level: 3;
1554
- };
1555
- readonly children: readonly [];
1556
- };
1557
- readonly "settle-1-to": {
1558
- readonly type: "Avatar";
1559
- readonly props: {
1560
- readonly name: "Alex";
1561
- readonly size: 32;
1562
- };
1563
- readonly children: readonly [];
1564
- };
1565
- readonly "settle-1-btn": {
1566
- readonly type: "Button";
1567
- readonly props: {
1568
- readonly label: "Settle $7";
1569
- readonly variant: "primary";
1570
- };
1571
- readonly children: readonly [];
1572
- readonly on: {
1573
- readonly press: {
1574
- readonly action: "settleUp";
1575
- readonly params: {
1576
- readonly from: "mike";
1577
- readonly to: "you";
1578
- readonly amount: 7;
1579
- };
1580
- };
1581
- };
1582
- };
1583
- readonly "settle-2": {
1584
- readonly type: "Card";
1585
- readonly props: {
1586
- readonly title: null;
1587
- };
1588
- readonly children: readonly ["settle-2-row", "settle-2-btn"];
1589
- };
1590
- readonly "settle-2-row": {
1591
- readonly type: "Stack";
1592
- readonly props: {
1593
- readonly direction: "horizontal";
1594
- readonly gap: 10;
1595
- };
1596
- readonly children: readonly ["settle-2-from", "settle-2-info", "settle-2-to"];
1597
- };
1598
- readonly "settle-2-from": {
1599
- readonly type: "Avatar";
1600
- readonly props: {
1601
- readonly name: "Sarah";
1602
- readonly size: 32;
1603
- };
1604
- readonly children: readonly [];
1605
- };
1606
- readonly "settle-2-info": {
1607
- readonly type: "Stack";
1608
- readonly props: {
1609
- readonly direction: "vertical";
1610
- readonly gap: 2;
1611
- };
1612
- readonly children: readonly ["settle-2-label", "settle-2-amount"];
1613
- };
1614
- readonly "settle-2-label": {
1615
- readonly type: "Text";
1616
- readonly props: {
1617
- readonly text: "Sarah owes";
1618
- readonly variant: "caption";
1619
- };
1620
- readonly children: readonly [];
1621
- };
1622
- readonly "settle-2-amount": {
1623
- readonly type: "Heading";
1624
- readonly props: {
1625
- readonly text: "$65";
1626
- readonly level: 3;
1627
- };
1628
- readonly children: readonly [];
1629
- };
1630
- readonly "settle-2-to": {
1631
- readonly type: "Avatar";
1632
- readonly props: {
1633
- readonly name: "Alex";
1634
- readonly size: 32;
1635
- };
1636
- readonly children: readonly [];
1637
- };
1638
- readonly "settle-2-btn": {
1639
- readonly type: "Button";
1640
- readonly props: {
1641
- readonly label: "Settle $65";
1642
- readonly variant: "primary";
1643
- };
1644
- readonly children: readonly [];
1645
- readonly on: {
1646
- readonly press: {
1647
- readonly action: "settleUp";
1648
- readonly params: {
1649
- readonly from: "sarah";
1650
- readonly to: "you";
1651
- readonly amount: 65;
1652
- };
1653
- };
1654
- };
1655
- };
1656
- };
1657
- };
1658
- }];
1659
- export declare const SEED_SURFACE_HISTORY: readonly [{
1660
- readonly convIndex: 0;
1661
- readonly version: 2;
1662
- readonly title: "Tahoe Ski Weekend";
1663
- readonly agentIndex: 1;
1664
- readonly spec: {
1665
- readonly root: "trip-root";
1666
- readonly elements: {};
1667
- readonly state: {};
1668
- };
1669
- }];
1670
282
  //# sourceMappingURL=seed-data.d.ts.map