@almadar/std 14.6.0 → 14.7.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.
@@ -69,40 +69,40 @@
69
69
  "ref": "AppShell.traits.AppLayout",
70
70
  "name": "ProductAppLayout",
71
71
  "config": {
72
- "notificationClickEvent": "PRODUCT_NOTIFICATIONS_OPEN",
73
72
  "contentTrait": "@trait.ProductCatalog",
73
+ "searchEvent": "PRODUCT_SEARCH",
74
+ "notifications": [],
74
75
  "appName": "EcommerceApp",
76
+ "notificationClickEvent": "PRODUCT_NOTIFICATIONS_OPEN",
75
77
  "navItems": [
76
78
  {
77
- "label": "Products",
78
79
  "href": "/products",
79
- "icon": "package"
80
+ "icon": "package",
81
+ "label": "Products"
80
82
  },
81
83
  {
84
+ "label": "Cart",
82
85
  "href": "/cart",
83
- "icon": "shopping-cart",
84
- "label": "Cart"
86
+ "icon": "shopping-cart"
85
87
  },
86
88
  {
89
+ "href": "/checkout",
87
90
  "label": "Checkout",
88
- "icon": "credit-card",
89
- "href": "/checkout"
91
+ "icon": "credit-card"
90
92
  },
91
93
  {
92
94
  "href": "/orders",
93
- "label": "Orders",
94
- "icon": "clipboard-list"
95
+ "icon": "clipboard-list",
96
+ "label": "Orders"
95
97
  }
96
98
  ],
97
- "searchEvent": "PRODUCT_SEARCH",
98
99
  "topBarActions": [
99
100
  {
100
- "event": "CART_OPEN",
101
101
  "icon": "shopping-cart",
102
+ "event": "CART_OPEN",
102
103
  "label": "Cart"
103
104
  }
104
- ],
105
- "notifications": []
105
+ ]
106
106
  },
107
107
  "events": {
108
108
  "NOTIFY_CLICK": "PRODUCT_NOTIFICATIONS_OPEN",
@@ -189,11 +189,12 @@
189
189
  "render-ui",
190
190
  "main",
191
191
  {
192
- "type": "stack",
192
+ "gap": "lg",
193
193
  "children": [
194
194
  {
195
- "type": "stack",
195
+ "align": "center",
196
196
  "gap": "md",
197
+ "type": "stack",
197
198
  "children": [
198
199
  {
199
200
  "children": [
@@ -202,42 +203,41 @@
202
203
  "name": "package"
203
204
  },
204
205
  {
205
- "type": "typography",
206
206
  "content": "Products",
207
+ "type": "typography",
207
208
  "variant": "h2"
208
209
  }
209
210
  ],
210
- "type": "stack",
211
- "gap": "sm",
211
+ "align": "center",
212
212
  "direction": "horizontal",
213
- "align": "center"
213
+ "type": "stack",
214
+ "gap": "sm"
214
215
  },
215
216
  {
216
- "direction": "horizontal",
217
217
  "gap": "sm",
218
218
  "children": [
219
219
  {
220
220
  "type": "button",
221
221
  "label": "Create Product",
222
- "action": "CREATE",
223
222
  "variant": "primary",
224
- "icon": "plus"
223
+ "icon": "plus",
224
+ "action": "CREATE"
225
225
  }
226
226
  ],
227
- "type": "stack"
227
+ "type": "stack",
228
+ "direction": "horizontal"
228
229
  }
229
230
  ],
230
- "justify": "between",
231
231
  "direction": "horizontal",
232
- "align": "center"
232
+ "justify": "between"
233
233
  },
234
234
  {
235
235
  "type": "divider"
236
236
  },
237
237
  "@trait.ProductBrowseList"
238
238
  ],
239
- "gap": "lg",
240
- "direction": "vertical"
239
+ "direction": "vertical",
240
+ "type": "stack"
241
241
  }
242
242
  ]
243
243
  ]
@@ -256,34 +256,34 @@
256
256
  "render-ui",
257
257
  "main",
258
258
  {
259
+ "className": "py-8",
259
260
  "children": [
260
261
  {
261
262
  "type": "icon",
262
263
  "name": "bell"
263
264
  },
264
265
  {
266
+ "content": "No notifications",
265
267
  "type": "typography",
266
- "variant": "h3",
267
- "content": "No notifications"
268
+ "variant": "h3"
268
269
  },
269
270
  {
271
+ "type": "typography",
270
272
  "content": "You're all caught up.",
271
- "color": "muted",
272
273
  "variant": "caption",
273
- "type": "typography"
274
+ "color": "muted"
274
275
  },
275
276
  {
276
- "variant": "ghost",
277
277
  "label": "Back to products",
278
278
  "action": "INIT",
279
- "type": "button"
279
+ "type": "button",
280
+ "variant": "ghost"
280
281
  }
281
282
  ],
283
+ "gap": "md",
282
284
  "type": "stack",
283
285
  "direction": "vertical",
284
- "gap": "md",
285
- "align": "center",
286
- "className": "py-8"
286
+ "align": "center"
287
287
  }
288
288
  ]
289
289
  ]
@@ -297,6 +297,7 @@
297
297
  "name": "ProductBrowseList",
298
298
  "linkedEntity": "Product",
299
299
  "config": {
300
+ "imageField": "imageUrl",
300
301
  "fields": [
301
302
  {
302
303
  "name": "name",
@@ -309,40 +310,39 @@
309
310
  },
310
311
  {
311
312
  "variant": "h4",
312
- "format": "currency",
313
- "name": "price"
313
+ "name": "price",
314
+ "format": "currency"
314
315
  },
315
316
  {
316
- "variant": "caption",
317
- "name": "sku"
317
+ "name": "sku",
318
+ "variant": "caption"
318
319
  },
319
320
  {
321
+ "format": "boolean",
320
322
  "name": "inStock",
321
- "label": "In Stock",
322
323
  "variant": "body",
323
- "format": "boolean"
324
+ "label": "In Stock"
324
325
  }
325
326
  ],
327
+ "cols": 3.0,
326
328
  "gap": "md",
327
329
  "itemActions": [
328
330
  {
329
- "variant": "ghost",
330
331
  "label": "View",
331
- "event": "VIEW"
332
+ "event": "VIEW",
333
+ "variant": "ghost"
332
334
  },
333
335
  {
334
336
  "variant": "ghost",
335
- "label": "Edit",
336
- "event": "EDIT"
337
+ "event": "EDIT",
338
+ "label": "Edit"
337
339
  },
338
340
  {
339
- "variant": "danger",
341
+ "label": "Delete",
340
342
  "event": "DELETE",
341
- "label": "Delete"
343
+ "variant": "danger"
342
344
  }
343
- ],
344
- "cols": 3.0,
345
- "imageField": "imageUrl"
345
+ ]
346
346
  },
347
347
  "listens": [
348
348
  {
@@ -562,8 +562,8 @@
562
562
  "Product",
563
563
  {
564
564
  "emit": {
565
- "failure": "ProductLoadFailed",
566
- "success": "ProductLoaded"
565
+ "success": "ProductLoaded",
566
+ "failure": "ProductLoadFailed"
567
567
  }
568
568
  }
569
569
  ],
@@ -571,32 +571,29 @@
571
571
  "render-ui",
572
572
  "modal",
573
573
  {
574
- "gap": "md",
574
+ "direction": "vertical",
575
575
  "children": [
576
576
  {
577
+ "gap": "sm",
578
+ "direction": "horizontal",
577
579
  "type": "stack",
578
580
  "children": [
579
581
  {
580
- "type": "icon",
581
- "name": "plus-circle"
582
+ "name": "plus-circle",
583
+ "type": "icon"
582
584
  },
583
585
  {
584
586
  "type": "typography",
585
- "content": "Create Product",
586
- "variant": "h3"
587
+ "variant": "h3",
588
+ "content": "Create Product"
587
589
  }
588
- ],
589
- "direction": "horizontal",
590
- "gap": "sm"
590
+ ]
591
591
  },
592
592
  {
593
593
  "type": "divider"
594
594
  },
595
595
  {
596
596
  "cancelEvent": "CLOSE",
597
- "type": "form-section",
598
- "mode": "create",
599
- "submitEvent": "SAVE",
600
597
  "fields": [
601
598
  "name",
602
599
  "description",
@@ -604,11 +601,14 @@
604
601
  "category",
605
602
  "sku",
606
603
  "inStock"
607
- ]
604
+ ],
605
+ "mode": "create",
606
+ "type": "form-section",
607
+ "submitEvent": "SAVE"
608
608
  }
609
609
  ],
610
- "type": "stack",
611
- "direction": "vertical"
610
+ "gap": "md",
611
+ "type": "stack"
612
612
  }
613
613
  ]
614
614
  ]
@@ -896,29 +896,31 @@
896
896
  "render-ui",
897
897
  "modal",
898
898
  {
899
+ "type": "stack",
899
900
  "direction": "vertical",
900
901
  "children": [
901
902
  {
902
- "gap": "sm",
903
903
  "children": [
904
904
  {
905
- "type": "icon",
906
- "name": "edit"
905
+ "name": "edit",
906
+ "type": "icon"
907
907
  },
908
908
  {
909
- "variant": "h3",
910
909
  "type": "typography",
910
+ "variant": "h3",
911
911
  "content": "Edit Product"
912
912
  }
913
913
  ],
914
914
  "type": "stack",
915
- "direction": "horizontal"
915
+ "direction": "horizontal",
916
+ "gap": "sm"
916
917
  },
917
918
  {
918
919
  "type": "divider"
919
920
  },
920
921
  {
921
- "cancelEvent": "CLOSE",
922
+ "type": "form-section",
923
+ "submitEvent": "SAVE",
922
924
  "fields": [
923
925
  "name",
924
926
  "description",
@@ -927,14 +929,12 @@
927
929
  "sku",
928
930
  "inStock"
929
931
  ],
930
- "mode": "edit",
931
- "type": "form-section",
932
- "submitEvent": "SAVE",
933
- "entity": "@payload.row"
932
+ "entity": "@payload.row",
933
+ "cancelEvent": "CLOSE",
934
+ "mode": "edit"
934
935
  }
935
936
  ],
936
- "gap": "md",
937
- "type": "stack"
937
+ "gap": "md"
938
938
  }
939
939
  ]
940
940
  ]
@@ -1164,8 +1164,8 @@
1164
1164
  "Product",
1165
1165
  {
1166
1166
  "emit": {
1167
- "success": "ProductLoaded",
1168
- "failure": "ProductLoadFailed"
1167
+ "failure": "ProductLoadFailed",
1168
+ "success": "ProductLoaded"
1169
1169
  }
1170
1170
  }
1171
1171
  ]
@@ -1180,73 +1180,71 @@
1180
1180
  "fetch",
1181
1181
  "Product",
1182
1182
  {
1183
- "id": "@payload.id",
1184
1183
  "emit": {
1185
- "success": "ProductLoaded",
1186
- "failure": "ProductLoadFailed"
1187
- }
1184
+ "failure": "ProductLoadFailed",
1185
+ "success": "ProductLoaded"
1186
+ },
1187
+ "id": "@payload.id"
1188
1188
  }
1189
1189
  ],
1190
1190
  [
1191
1191
  "render-ui",
1192
1192
  "modal",
1193
1193
  {
1194
- "direction": "vertical",
1195
- "gap": "md",
1196
1194
  "children": [
1197
1195
  {
1198
- "direction": "horizontal",
1199
- "type": "stack",
1200
- "gap": "sm",
1201
- "align": "center",
1202
1196
  "children": [
1203
1197
  {
1204
- "name": "eye",
1205
- "type": "icon"
1198
+ "type": "icon",
1199
+ "name": "eye"
1206
1200
  },
1207
1201
  {
1202
+ "variant": "h3",
1208
1203
  "content": "@entity.name",
1209
- "type": "typography",
1210
- "variant": "h3"
1204
+ "type": "typography"
1211
1205
  }
1212
- ]
1206
+ ],
1207
+ "type": "stack",
1208
+ "gap": "sm",
1209
+ "align": "center",
1210
+ "direction": "horizontal"
1213
1211
  },
1214
1212
  {
1215
1213
  "type": "divider"
1216
1214
  },
1217
1215
  {
1216
+ "type": "stack",
1218
1217
  "gap": "md",
1219
1218
  "direction": "horizontal",
1220
- "type": "stack",
1221
1219
  "children": [
1222
1220
  {
1223
- "type": "typography",
1221
+ "variant": "caption",
1224
1222
  "content": "Name",
1225
- "variant": "caption"
1223
+ "type": "typography"
1226
1224
  },
1227
1225
  {
1228
- "content": "@entity.name",
1229
1226
  "type": "typography",
1230
- "variant": "body"
1227
+ "variant": "body",
1228
+ "content": "@entity.name"
1231
1229
  }
1232
1230
  ]
1233
1231
  },
1234
1232
  {
1235
1233
  "direction": "horizontal",
1236
- "type": "stack",
1237
- "gap": "md",
1238
1234
  "children": [
1239
1235
  {
1240
1236
  "variant": "caption",
1241
- "type": "typography",
1242
- "content": "Description"
1237
+ "content": "Description",
1238
+ "type": "typography"
1243
1239
  },
1244
1240
  {
1241
+ "content": "@entity.description",
1245
1242
  "type": "typography",
1246
- "variant": "body",
1247
- "content": "@entity.description"
1243
+ "variant": "body"
1248
1244
  }
1249
- ]
1245
+ ],
1246
+ "type": "stack",
1247
+ "gap": "md"
1250
1248
  },
1251
1249
  {
1252
1250
  "children": [
@@ -1256,65 +1254,65 @@
1256
1254
  "content": "Price"
1257
1255
  },
1258
1256
  {
1259
- "type": "typography",
1260
1257
  "variant": "body",
1261
- "content": "@entity.price"
1258
+ "content": "@entity.price",
1259
+ "type": "typography"
1262
1260
  }
1263
1261
  ],
1262
+ "type": "stack",
1264
1263
  "direction": "horizontal",
1265
- "gap": "md",
1266
- "type": "stack"
1264
+ "gap": "md"
1267
1265
  },
1268
1266
  {
1269
- "gap": "md",
1270
- "direction": "horizontal",
1271
1267
  "type": "stack",
1268
+ "direction": "horizontal",
1272
1269
  "children": [
1273
1270
  {
1274
- "variant": "caption",
1275
1271
  "type": "typography",
1276
- "content": "Category"
1272
+ "content": "Category",
1273
+ "variant": "caption"
1277
1274
  },
1278
1275
  {
1279
- "type": "typography",
1280
1276
  "variant": "body",
1277
+ "type": "typography",
1281
1278
  "content": "@entity.category"
1282
1279
  }
1283
- ]
1280
+ ],
1281
+ "gap": "md"
1284
1282
  },
1285
1283
  {
1286
- "type": "stack",
1287
- "direction": "horizontal",
1288
1284
  "children": [
1289
1285
  {
1290
1286
  "variant": "caption",
1291
- "type": "typography",
1292
- "content": "Sku"
1287
+ "content": "Sku",
1288
+ "type": "typography"
1293
1289
  },
1294
1290
  {
1295
1291
  "variant": "body",
1296
- "content": "@entity.sku",
1297
- "type": "typography"
1292
+ "type": "typography",
1293
+ "content": "@entity.sku"
1298
1294
  }
1299
1295
  ],
1300
- "gap": "md"
1296
+ "type": "stack",
1297
+ "gap": "md",
1298
+ "direction": "horizontal"
1301
1299
  },
1302
1300
  {
1301
+ "type": "stack",
1303
1302
  "direction": "horizontal",
1303
+ "gap": "md",
1304
1304
  "children": [
1305
1305
  {
1306
- "content": "In Stock",
1306
+ "variant": "caption",
1307
1307
  "type": "typography",
1308
- "variant": "caption"
1308
+ "content": "In Stock"
1309
1309
  },
1310
1310
  {
1311
- "variant": "body",
1312
1311
  "type": "typography",
1313
- "content": "@entity.inStock"
1312
+ "content": "@entity.inStock",
1313
+ "variant": "body"
1314
1314
  }
1315
- ],
1316
- "type": "stack",
1317
- "gap": "md"
1315
+ ]
1318
1316
  },
1319
1317
  {
1320
1318
  "type": "divider"
@@ -1323,25 +1321,27 @@
1323
1321
  "direction": "horizontal",
1324
1322
  "justify": "end",
1325
1323
  "type": "stack",
1324
+ "gap": "sm",
1326
1325
  "children": [
1327
1326
  {
1328
- "label": "Edit",
1329
- "type": "button",
1330
1327
  "variant": "primary",
1328
+ "icon": "edit",
1331
1329
  "action": "EDIT",
1332
- "icon": "edit"
1330
+ "type": "button",
1331
+ "label": "Edit"
1333
1332
  },
1334
1333
  {
1335
- "label": "Close",
1336
1334
  "variant": "ghost",
1337
1335
  "type": "button",
1338
- "action": "CLOSE"
1336
+ "action": "CLOSE",
1337
+ "label": "Close"
1339
1338
  }
1340
- ],
1341
- "gap": "sm"
1339
+ ]
1342
1340
  }
1343
1341
  ],
1344
- "type": "stack"
1342
+ "gap": "md",
1343
+ "type": "stack",
1344
+ "direction": "vertical"
1345
1345
  }
1346
1346
  ]
1347
1347
  ]
@@ -1592,68 +1592,68 @@
1592
1592
  "fetch",
1593
1593
  "Product",
1594
1594
  {
1595
+ "id": "@payload.id",
1595
1596
  "emit": {
1596
- "failure": "ProductLoadFailed",
1597
- "success": "ProductLoaded"
1598
- },
1599
- "id": "@payload.id"
1597
+ "success": "ProductLoaded",
1598
+ "failure": "ProductLoadFailed"
1599
+ }
1600
1600
  }
1601
1601
  ],
1602
1602
  [
1603
1603
  "render-ui",
1604
1604
  "modal",
1605
1605
  {
1606
- "type": "stack",
1607
- "gap": "md",
1608
- "direction": "vertical",
1609
1606
  "children": [
1610
1607
  {
1611
1608
  "direction": "horizontal",
1609
+ "align": "center",
1612
1610
  "children": [
1613
1611
  {
1614
- "type": "icon",
1615
- "name": "alert-triangle"
1612
+ "name": "alert-triangle",
1613
+ "type": "icon"
1616
1614
  },
1617
1615
  {
1618
1616
  "type": "typography",
1619
- "variant": "h3",
1620
- "content": "Delete Product"
1617
+ "content": "Delete Product",
1618
+ "variant": "h3"
1621
1619
  }
1622
1620
  ],
1623
1621
  "type": "stack",
1624
- "gap": "sm",
1625
- "align": "center"
1622
+ "gap": "sm"
1626
1623
  },
1627
1624
  {
1628
1625
  "type": "divider"
1629
1626
  },
1630
1627
  {
1631
- "type": "alert",
1632
1628
  "variant": "error",
1633
- "message": "This action cannot be undone."
1629
+ "message": "This action cannot be undone.",
1630
+ "type": "alert"
1634
1631
  },
1635
1632
  {
1636
- "gap": "sm",
1637
1633
  "type": "stack",
1638
- "justify": "end",
1634
+ "direction": "horizontal",
1635
+ "gap": "sm",
1639
1636
  "children": [
1640
1637
  {
1641
- "variant": "ghost",
1638
+ "label": "Cancel",
1642
1639
  "type": "button",
1643
1640
  "action": "CANCEL",
1644
- "label": "Cancel"
1641
+ "variant": "ghost"
1645
1642
  },
1646
1643
  {
1644
+ "type": "button",
1645
+ "label": "Delete",
1647
1646
  "variant": "danger",
1648
1647
  "action": "CONFIRM_DELETE",
1649
- "label": "Delete",
1650
- "icon": "check",
1651
- "type": "button"
1648
+ "icon": "check"
1652
1649
  }
1653
1650
  ],
1654
- "direction": "horizontal"
1651
+ "justify": "end"
1655
1652
  }
1656
- ]
1653
+ ],
1654
+ "gap": "md",
1655
+ "direction": "vertical",
1656
+ "type": "stack"
1657
1657
  }
1658
1658
  ]
1659
1659
  ]
@@ -1670,8 +1670,8 @@
1670
1670
  "@entity.pendingId",
1671
1671
  {
1672
1672
  "emit": {
1673
- "success": "ProductDeleted",
1674
- "failure": "ProductDeleteFailed"
1673
+ "failure": "ProductDeleteFailed",
1674
+ "success": "ProductDeleted"
1675
1675
  }
1676
1676
  }
1677
1677
  ],
@@ -1692,8 +1692,8 @@
1692
1692
  "Product",
1693
1693
  {
1694
1694
  "emit": {
1695
- "failure": "ProductLoadFailed",
1696
- "success": "ProductLoaded"
1695
+ "success": "ProductLoaded",
1696
+ "failure": "ProductLoadFailed"
1697
1697
  }
1698
1698
  }
1699
1699
  ],
@@ -1725,8 +1725,8 @@
1725
1725
  "Product",
1726
1726
  {
1727
1727
  "emit": {
1728
- "failure": "ProductLoadFailed",
1729
- "success": "ProductLoaded"
1728
+ "success": "ProductLoaded",
1729
+ "failure": "ProductLoadFailed"
1730
1730
  }
1731
1731
  }
1732
1732
  ]
@@ -2002,22 +2002,22 @@
2002
2002
  "render-ui",
2003
2003
  "main",
2004
2004
  {
2005
+ "align": "center",
2006
+ "gap": "md",
2005
2007
  "children": [
2006
2008
  {
2007
2009
  "type": "spinner"
2008
2010
  },
2009
2011
  {
2010
- "type": "typography",
2011
2012
  "color": "muted",
2013
+ "variant": "caption",
2012
2014
  "content": "Loading…",
2013
- "variant": "caption"
2015
+ "type": "typography"
2014
2016
  }
2015
2017
  ],
2016
- "type": "stack",
2017
2018
  "className": "py-12",
2018
- "gap": "md",
2019
- "direction": "vertical",
2020
- "align": "center"
2019
+ "type": "stack",
2020
+ "direction": "vertical"
2021
2021
  }
2022
2022
  ]
2023
2023
  ]
@@ -2031,137 +2031,137 @@
2031
2031
  "render-ui",
2032
2032
  "main",
2033
2033
  {
2034
+ "navItems": [
2035
+ {
2036
+ "icon": "package",
2037
+ "label": "Products",
2038
+ "href": "/products"
2039
+ },
2040
+ {
2041
+ "label": "Cart",
2042
+ "icon": "shopping-cart",
2043
+ "href": "/cart"
2044
+ },
2045
+ {
2046
+ "href": "/checkout",
2047
+ "icon": "credit-card",
2048
+ "label": "Checkout"
2049
+ },
2050
+ {
2051
+ "icon": "clipboard-list",
2052
+ "label": "Orders",
2053
+ "href": "/orders"
2054
+ }
2055
+ ],
2056
+ "type": "dashboard-layout",
2034
2057
  "children": [
2035
2058
  {
2036
- "type": "stack",
2037
2059
  "direction": "vertical",
2060
+ "gap": "lg",
2038
2061
  "children": [
2039
2062
  {
2040
- "direction": "horizontal",
2041
2063
  "justify": "between",
2064
+ "type": "stack",
2042
2065
  "children": [
2043
2066
  {
2067
+ "type": "stack",
2044
2068
  "gap": "md",
2069
+ "direction": "horizontal",
2045
2070
  "children": [
2046
2071
  {
2047
- "name": "shopping-cart",
2048
- "type": "icon"
2072
+ "type": "icon",
2073
+ "name": "shopping-cart"
2049
2074
  },
2050
2075
  {
2051
2076
  "content": "Shopping Cart",
2052
2077
  "type": "typography",
2053
2078
  "variant": "h2"
2054
2079
  }
2055
- ],
2056
- "direction": "horizontal",
2057
- "type": "stack"
2080
+ ]
2058
2081
  },
2059
2082
  {
2060
2083
  "icon": "plus",
2084
+ "action": "ADD_ITEM",
2061
2085
  "type": "button",
2062
- "variant": "primary",
2063
2086
  "label": "Add Item",
2064
- "action": "ADD_ITEM"
2087
+ "variant": "primary"
2065
2088
  }
2066
2089
  ],
2067
- "type": "stack",
2090
+ "direction": "horizontal",
2068
2091
  "gap": "md"
2069
2092
  },
2070
2093
  {
2071
2094
  "type": "divider"
2072
2095
  },
2073
2096
  {
2074
- "type": "simple-grid",
2097
+ "cols": 3.0,
2075
2098
  "children": [
2076
2099
  {
2077
- "type": "stat-display",
2078
2100
  "label": "Items",
2079
- "value": "@payload.data.length",
2080
- "icon": "package"
2101
+ "icon": "package",
2102
+ "type": "stat-display",
2103
+ "value": "@payload.data.length"
2081
2104
  },
2082
2105
  {
2083
- "type": "stat-display",
2084
- "label": "Subtotal",
2085
2106
  "icon": "dollar-sign",
2086
- "value": "@payload.data.length"
2107
+ "value": "@payload.data.length",
2108
+ "label": "Subtotal",
2109
+ "type": "stat-display"
2087
2110
  },
2088
2111
  {
2112
+ "type": "stat-display",
2089
2113
  "label": "Total",
2090
- "value": "@payload.data.length",
2091
2114
  "icon": "receipt",
2092
- "type": "stat-display"
2115
+ "value": "@payload.data.length"
2093
2116
  }
2094
2117
  ],
2095
- "cols": 3.0
2118
+ "type": "simple-grid"
2096
2119
  },
2097
2120
  {
2098
2121
  "type": "divider"
2099
2122
  },
2100
2123
  {
2101
- "entity": "@payload.data",
2102
2124
  "type": "data-grid",
2103
2125
  "fields": [
2104
2126
  {
2127
+ "variant": "h4",
2105
2128
  "label": "Product Name",
2106
2129
  "icon": "shopping-cart",
2107
- "variant": "h4",
2108
2130
  "name": "productName"
2109
2131
  },
2110
2132
  {
2111
- "name": "quantity",
2112
- "variant": "caption",
2113
2133
  "label": "Quantity",
2114
- "format": "currency"
2134
+ "name": "quantity",
2135
+ "format": "currency",
2136
+ "variant": "caption"
2115
2137
  },
2116
2138
  {
2139
+ "name": "unitPrice",
2117
2140
  "label": "Unit Price",
2118
- "variant": "badge",
2119
- "name": "unitPrice"
2141
+ "variant": "badge"
2120
2142
  }
2121
2143
  ],
2144
+ "entity": "@payload.data",
2122
2145
  "itemActions": [
2123
2146
  {
2124
- "variant": "danger",
2125
2147
  "label": "Remove",
2148
+ "variant": "danger",
2126
2149
  "event": "REQUEST_REMOVE"
2127
2150
  }
2128
2151
  ]
2129
2152
  },
2130
2153
  {
2131
2154
  "icon": "arrow-right",
2155
+ "variant": "primary",
2132
2156
  "label": "Proceed to Checkout",
2133
2157
  "action": "PROCEED_CHECKOUT",
2134
- "variant": "primary",
2135
2158
  "type": "button"
2136
2159
  }
2137
2160
  ],
2138
- "gap": "lg"
2161
+ "type": "stack"
2139
2162
  }
2140
2163
  ],
2141
- "appName": "EcommerceApp",
2142
- "type": "dashboard-layout",
2143
- "navItems": [
2144
- {
2145
- "label": "Products",
2146
- "href": "/products",
2147
- "icon": "package"
2148
- },
2149
- {
2150
- "href": "/cart",
2151
- "label": "Cart",
2152
- "icon": "shopping-cart"
2153
- },
2154
- {
2155
- "label": "Checkout",
2156
- "href": "/checkout",
2157
- "icon": "credit-card"
2158
- },
2159
- {
2160
- "label": "Orders",
2161
- "icon": "clipboard-list",
2162
- "href": "/orders"
2163
- }
2164
- ]
2164
+ "appName": "EcommerceApp"
2165
2165
  }
2166
2166
  ]
2167
2167
  ]
@@ -2175,20 +2175,16 @@
2175
2175
  "render-ui",
2176
2176
  "main",
2177
2177
  {
2178
- "type": "stack",
2179
- "align": "center",
2180
- "gap": "md",
2181
- "className": "py-12",
2182
2178
  "children": [
2183
2179
  {
2184
2180
  "name": "alert-triangle",
2185
- "color": "destructive",
2186
- "type": "icon"
2181
+ "type": "icon",
2182
+ "color": "destructive"
2187
2183
  },
2188
2184
  {
2189
- "type": "typography",
2185
+ "variant": "h3",
2190
2186
  "content": "Failed to load cartitem",
2191
- "variant": "h3"
2187
+ "type": "typography"
2192
2188
  },
2193
2189
  {
2194
2190
  "variant": "body",
@@ -2197,14 +2193,18 @@
2197
2193
  "color": "muted"
2198
2194
  },
2199
2195
  {
2200
- "variant": "primary",
2201
- "label": "Retry",
2202
2196
  "type": "button",
2197
+ "icon": "rotate-ccw",
2203
2198
  "action": "INIT",
2204
- "icon": "rotate-ccw"
2199
+ "variant": "primary",
2200
+ "label": "Retry"
2205
2201
  }
2206
2202
  ],
2207
- "direction": "vertical"
2203
+ "className": "py-12",
2204
+ "direction": "vertical",
2205
+ "gap": "md",
2206
+ "type": "stack",
2207
+ "align": "center"
2208
2208
  }
2209
2209
  ]
2210
2210
  ]
@@ -2219,8 +2219,8 @@
2219
2219
  "CartItem",
2220
2220
  {
2221
2221
  "emit": {
2222
- "failure": "CartItemLoadFailed",
2223
- "success": "CartItemLoaded"
2222
+ "success": "CartItemLoaded",
2223
+ "failure": "CartItemLoadFailed"
2224
2224
  }
2225
2225
  }
2226
2226
  ],
@@ -2228,22 +2228,22 @@
2228
2228
  "render-ui",
2229
2229
  "main",
2230
2230
  {
2231
- "className": "py-12",
2232
2231
  "direction": "vertical",
2232
+ "gap": "md",
2233
+ "className": "py-12",
2234
+ "type": "stack",
2233
2235
  "align": "center",
2234
2236
  "children": [
2235
2237
  {
2236
2238
  "type": "spinner"
2237
2239
  },
2238
2240
  {
2241
+ "variant": "caption",
2239
2242
  "color": "muted",
2240
2243
  "content": "Preparing checkout…",
2241
- "variant": "caption",
2242
2244
  "type": "typography"
2243
2245
  }
2244
- ],
2245
- "gap": "md",
2246
- "type": "stack"
2246
+ ]
2247
2247
  }
2248
2248
  ]
2249
2249
  ]
@@ -2258,31 +2258,11 @@
2258
2258
  "main",
2259
2259
  {
2260
2260
  "type": "dashboard-layout",
2261
- "appName": "EcommerceApp",
2262
- "navItems": [
2263
- {
2264
- "href": "/products",
2265
- "label": "Products",
2266
- "icon": "package"
2267
- },
2268
- {
2269
- "icon": "shopping-cart",
2270
- "label": "Cart",
2271
- "href": "/cart"
2272
- },
2273
- {
2274
- "icon": "credit-card",
2275
- "label": "Checkout",
2276
- "href": "/checkout"
2277
- },
2278
- {
2279
- "label": "Orders",
2280
- "icon": "clipboard-list",
2281
- "href": "/orders"
2282
- }
2283
- ],
2284
2261
  "children": [
2285
2262
  {
2263
+ "type": "stack",
2264
+ "gap": "lg",
2265
+ "direction": "vertical",
2286
2266
  "children": [
2287
2267
  {
2288
2268
  "type": "stack",
@@ -2292,19 +2272,18 @@
2292
2272
  "name": "clipboard"
2293
2273
  },
2294
2274
  {
2295
- "type": "typography",
2296
2275
  "variant": "h2",
2276
+ "type": "typography",
2297
2277
  "content": "Checkout"
2298
2278
  }
2299
2279
  ],
2300
- "direction": "horizontal",
2301
- "gap": "sm"
2280
+ "gap": "sm",
2281
+ "direction": "horizontal"
2302
2282
  },
2303
2283
  {
2304
2284
  "type": "divider"
2305
2285
  },
2306
2286
  {
2307
- "entity": "@payload.data",
2308
2287
  "type": "data-grid",
2309
2288
  "itemActions": [
2310
2289
  {
@@ -2315,52 +2294,73 @@
2315
2294
  ],
2316
2295
  "fields": [
2317
2296
  {
2318
- "icon": "shopping-cart",
2319
2297
  "variant": "h4",
2298
+ "icon": "shopping-cart",
2320
2299
  "label": "Product Name",
2321
2300
  "name": "productName"
2322
2301
  },
2323
2302
  {
2324
2303
  "format": "currency",
2325
2304
  "variant": "caption",
2326
- "label": "Quantity",
2327
- "name": "quantity"
2305
+ "name": "quantity",
2306
+ "label": "Quantity"
2328
2307
  },
2329
2308
  {
2330
- "name": "unitPrice",
2331
2309
  "label": "Unit Price",
2310
+ "name": "unitPrice",
2332
2311
  "variant": "badge"
2333
2312
  }
2334
- ]
2313
+ ],
2314
+ "entity": "@payload.data"
2335
2315
  },
2336
2316
  {
2337
- "type": "stack",
2317
+ "direction": "horizontal",
2338
2318
  "justify": "end",
2319
+ "type": "stack",
2339
2320
  "gap": "sm",
2340
- "direction": "horizontal",
2341
2321
  "children": [
2342
2322
  {
2343
- "icon": "arrow-left",
2344
2323
  "label": "Back to Cart",
2345
- "type": "button",
2346
2324
  "variant": "ghost",
2347
- "action": "BACK_TO_CART"
2325
+ "icon": "arrow-left",
2326
+ "action": "BACK_TO_CART",
2327
+ "type": "button"
2348
2328
  },
2349
2329
  {
2350
- "label": "Confirm Order",
2351
- "variant": "primary",
2352
2330
  "action": "CONFIRM_ORDER",
2353
2331
  "type": "button",
2354
- "icon": "check"
2332
+ "variant": "primary",
2333
+ "icon": "check",
2334
+ "label": "Confirm Order"
2355
2335
  }
2356
2336
  ]
2357
2337
  }
2358
- ],
2359
- "gap": "lg",
2360
- "type": "stack",
2361
- "direction": "vertical"
2338
+ ]
2362
2339
  }
2363
- ]
2340
+ ],
2341
+ "navItems": [
2342
+ {
2343
+ "href": "/products",
2344
+ "icon": "package",
2345
+ "label": "Products"
2346
+ },
2347
+ {
2348
+ "icon": "shopping-cart",
2349
+ "href": "/cart",
2350
+ "label": "Cart"
2351
+ },
2352
+ {
2353
+ "icon": "credit-card",
2354
+ "href": "/checkout",
2355
+ "label": "Checkout"
2356
+ },
2357
+ {
2358
+ "label": "Orders",
2359
+ "href": "/orders",
2360
+ "icon": "clipboard-list"
2361
+ }
2362
+ ],
2363
+ "appName": "EcommerceApp"
2364
2364
  }
2365
2365
  ]
2366
2366
  ]
@@ -2375,8 +2375,8 @@
2375
2375
  "CartItem",
2376
2376
  {
2377
2377
  "emit": {
2378
- "success": "CartItemLoaded",
2379
- "failure": "CartItemLoadFailed"
2378
+ "failure": "CartItemLoadFailed",
2379
+ "success": "CartItemLoaded"
2380
2380
  }
2381
2381
  }
2382
2382
  ]
@@ -2401,15 +2401,38 @@
2401
2401
  "render-ui",
2402
2402
  "main",
2403
2403
  {
2404
+ "navItems": [
2405
+ {
2406
+ "icon": "package",
2407
+ "label": "Products",
2408
+ "href": "/products"
2409
+ },
2410
+ {
2411
+ "icon": "shopping-cart",
2412
+ "href": "/cart",
2413
+ "label": "Cart"
2414
+ },
2415
+ {
2416
+ "href": "/checkout",
2417
+ "icon": "credit-card",
2418
+ "label": "Checkout"
2419
+ },
2420
+ {
2421
+ "icon": "clipboard-list",
2422
+ "href": "/orders",
2423
+ "label": "Orders"
2424
+ }
2425
+ ],
2426
+ "appName": "EcommerceApp",
2404
2427
  "children": [
2405
2428
  {
2406
- "gap": "lg",
2407
- "align": "center",
2429
+ "type": "stack",
2408
2430
  "direction": "vertical",
2431
+ "gap": "lg",
2409
2432
  "children": [
2410
2433
  {
2411
- "type": "icon",
2412
- "name": "check-circle"
2434
+ "name": "check-circle",
2435
+ "type": "icon"
2413
2436
  },
2414
2437
  {
2415
2438
  "type": "typography",
@@ -2417,44 +2440,21 @@
2417
2440
  "variant": "h2"
2418
2441
  },
2419
2442
  {
2443
+ "content": "Your order has been placed successfully.",
2420
2444
  "variant": "body",
2421
- "type": "typography",
2422
- "content": "Your order has been placed successfully."
2445
+ "type": "typography"
2423
2446
  },
2424
2447
  {
2425
- "type": "button",
2448
+ "label": "Continue Shopping",
2426
2449
  "action": "INIT",
2427
- "variant": "primary",
2428
- "label": "Continue Shopping"
2450
+ "type": "button",
2451
+ "variant": "primary"
2429
2452
  }
2430
2453
  ],
2431
- "type": "stack"
2432
- }
2433
- ],
2434
- "navItems": [
2435
- {
2436
- "label": "Products",
2437
- "icon": "package",
2438
- "href": "/products"
2439
- },
2440
- {
2441
- "href": "/cart",
2442
- "label": "Cart",
2443
- "icon": "shopping-cart"
2444
- },
2445
- {
2446
- "icon": "credit-card",
2447
- "label": "Checkout",
2448
- "href": "/checkout"
2449
- },
2450
- {
2451
- "label": "Orders",
2452
- "href": "/orders",
2453
- "icon": "clipboard-list"
2454
+ "align": "center"
2454
2455
  }
2455
2456
  ],
2456
- "type": "dashboard-layout",
2457
- "appName": "EcommerceApp"
2457
+ "type": "dashboard-layout"
2458
2458
  }
2459
2459
  ]
2460
2460
  ]
@@ -2648,11 +2648,11 @@
2648
2648
  "render-ui",
2649
2649
  "modal",
2650
2650
  {
2651
- "type": "stack",
2652
2651
  "gap": "md",
2652
+ "direction": "vertical",
2653
+ "type": "stack",
2653
2654
  "children": [
2654
2655
  {
2655
- "type": "stack",
2656
2656
  "direction": "horizontal",
2657
2657
  "children": [
2658
2658
  {
@@ -2665,7 +2665,8 @@
2665
2665
  "variant": "h3"
2666
2666
  }
2667
2667
  ],
2668
- "gap": "sm"
2668
+ "gap": "sm",
2669
+ "type": "stack"
2669
2670
  },
2670
2671
  {
2671
2672
  "type": "divider"
@@ -2678,12 +2679,11 @@
2678
2679
  "unitPrice",
2679
2680
  "totalPrice"
2680
2681
  ],
2682
+ "type": "form-section",
2681
2683
  "mode": "create",
2682
- "submitEvent": "SAVE",
2683
- "type": "form-section"
2684
+ "submitEvent": "SAVE"
2684
2685
  }
2685
- ],
2686
- "direction": "vertical"
2686
+ ]
2687
2687
  }
2688
2688
  ]
2689
2689
  ]
@@ -2931,11 +2931,11 @@
2931
2931
  "fetch",
2932
2932
  "CartItem",
2933
2933
  {
2934
+ "id": "@payload.id",
2934
2935
  "emit": {
2935
- "success": "CartItemLoaded",
2936
- "failure": "CartItemLoadFailed"
2937
- },
2938
- "id": "@payload.id"
2936
+ "failure": "CartItemLoadFailed",
2937
+ "success": "CartItemLoaded"
2938
+ }
2939
2939
  }
2940
2940
  ],
2941
2941
  [
@@ -2943,56 +2943,56 @@
2943
2943
  "modal",
2944
2944
  {
2945
2945
  "direction": "vertical",
2946
- "type": "stack",
2947
- "gap": "md",
2948
2946
  "children": [
2949
2947
  {
2948
+ "direction": "horizontal",
2949
+ "align": "center",
2950
+ "gap": "sm",
2951
+ "type": "stack",
2950
2952
  "children": [
2951
2953
  {
2952
- "type": "icon",
2953
- "name": "alert-triangle"
2954
+ "name": "alert-triangle",
2955
+ "type": "icon"
2954
2956
  },
2955
2957
  {
2956
- "content": "Remove Item",
2958
+ "variant": "h3",
2957
2959
  "type": "typography",
2958
- "variant": "h3"
2960
+ "content": "Remove Item"
2959
2961
  }
2960
- ],
2961
- "type": "stack",
2962
- "direction": "horizontal",
2963
- "gap": "sm",
2964
- "align": "center"
2962
+ ]
2965
2963
  },
2966
2964
  {
2967
2965
  "type": "divider"
2968
2966
  },
2969
2967
  {
2970
2968
  "message": "Are you sure you want to remove this item from your cart?",
2971
- "variant": "error",
2972
- "type": "alert"
2969
+ "type": "alert",
2970
+ "variant": "error"
2973
2971
  },
2974
2972
  {
2973
+ "direction": "horizontal",
2975
2974
  "justify": "end",
2976
2975
  "children": [
2977
2976
  {
2977
+ "label": "Cancel",
2978
2978
  "variant": "ghost",
2979
2979
  "type": "button",
2980
- "action": "CANCEL",
2981
- "label": "Cancel"
2980
+ "action": "CANCEL"
2982
2981
  },
2983
2982
  {
2984
2983
  "label": "Remove",
2984
+ "action": "CONFIRM_REMOVE",
2985
2985
  "type": "button",
2986
2986
  "icon": "check",
2987
- "action": "CONFIRM_REMOVE",
2988
2987
  "variant": "danger"
2989
2988
  }
2990
2989
  ],
2991
- "direction": "horizontal",
2992
- "gap": "sm",
2993
- "type": "stack"
2990
+ "type": "stack",
2991
+ "gap": "sm"
2994
2992
  }
2995
- ]
2993
+ ],
2994
+ "gap": "md",
2995
+ "type": "stack"
2996
2996
  }
2997
2997
  ]
2998
2998
  ]
@@ -3060,8 +3060,8 @@
3060
3060
  "CartItem",
3061
3061
  {
3062
3062
  "emit": {
3063
- "failure": "CartItemLoadFailed",
3064
- "success": "CartItemLoaded"
3063
+ "success": "CartItemLoaded",
3064
+ "failure": "CartItemLoadFailed"
3065
3065
  }
3066
3066
  }
3067
3067
  ]
@@ -3165,10 +3165,10 @@
3165
3165
  "ref": "Stripe.traits.ServiceStripeStripe",
3166
3166
  "name": "CheckoutPayment",
3167
3167
  "config": {
3168
- "uiTrait": "@trait.CheckoutPaymentForm",
3168
+ "currency": "usd",
3169
3169
  "amount": 0.0,
3170
3170
  "metadata": {},
3171
- "currency": "usd"
3171
+ "uiTrait": "@trait.CheckoutPaymentForm"
3172
3172
  },
3173
3173
  "listens": [
3174
3174
  {
@@ -3223,45 +3223,45 @@
3223
3223
  "render-ui",
3224
3224
  "main",
3225
3225
  {
3226
- "type": "stack",
3227
3226
  "gap": "md",
3227
+ "direction": "vertical",
3228
3228
  "children": [
3229
3229
  {
3230
+ "type": "alert",
3230
3231
  "variant": "info",
3231
- "message": "Enter card details to complete your order.",
3232
- "type": "alert"
3232
+ "message": "Enter card details to complete your order."
3233
3233
  },
3234
3234
  {
3235
- "type": "input",
3236
3235
  "inputType": "text",
3236
+ "type": "input",
3237
3237
  "placeholder": "Card number"
3238
3238
  },
3239
3239
  {
3240
- "direction": "horizontal",
3241
- "gap": "sm",
3242
3240
  "type": "stack",
3243
3241
  "children": [
3244
3242
  {
3243
+ "inputType": "text",
3245
3244
  "placeholder": "MM/YY",
3246
- "type": "input",
3247
- "inputType": "text"
3245
+ "type": "input"
3248
3246
  },
3249
3247
  {
3248
+ "type": "input",
3250
3249
  "inputType": "text",
3251
- "placeholder": "CVC",
3252
- "type": "input"
3250
+ "placeholder": "CVC"
3253
3251
  }
3254
- ]
3252
+ ],
3253
+ "gap": "sm",
3254
+ "direction": "horizontal"
3255
3255
  },
3256
3256
  {
3257
- "label": "Pay now",
3258
3257
  "icon": "credit-card",
3258
+ "variant": "primary",
3259
+ "label": "Pay now",
3259
3260
  "action": "CREATE_PAYMENT",
3260
- "type": "button",
3261
- "variant": "primary"
3261
+ "type": "button"
3262
3262
  }
3263
3263
  ],
3264
- "direction": "vertical"
3264
+ "type": "stack"
3265
3265
  }
3266
3266
  ]
3267
3267
  ]
@@ -3502,46 +3502,54 @@
3502
3502
  "render-ui",
3503
3503
  "main",
3504
3504
  {
3505
- "gap": "lg",
3506
- "type": "stack",
3507
- "direction": "vertical",
3508
- "className": "max-w-xl mx-auto w-full",
3509
3505
  "children": [
3510
3506
  {
3511
- "content": "Checkout",
3512
3507
  "type": "typography",
3513
- "variant": "h2"
3508
+ "variant": "h2",
3509
+ "content": "Checkout"
3514
3510
  },
3515
3511
  {
3516
- "type": "wizard-progress",
3517
3512
  "steps": [
3518
3513
  "Customer Info",
3519
3514
  "Shipping",
3520
3515
  "Payment",
3521
3516
  "Review"
3522
3517
  ],
3523
- "currentStep": 0.0
3518
+ "currentStep": 0.0,
3519
+ "type": "wizard-progress"
3524
3520
  },
3525
3521
  {
3526
3522
  "type": "divider"
3527
3523
  },
3528
3524
  {
3529
3525
  "type": "typography",
3530
- "content": "Customer Info",
3531
- "variant": "h3"
3526
+ "variant": "h3",
3527
+ "content": "Customer Info"
3532
3528
  },
3533
3529
  {
3534
- "type": "form-section",
3535
- "submitLabel": "Continue",
3536
3530
  "showCancel": false,
3531
+ "submitLabel": "Continue",
3532
+ "mode": "create",
3537
3533
  "fields": [
3538
- "customerName",
3539
- "email"
3534
+ {
3535
+ "name": "customerName",
3536
+ "required": true,
3537
+ "min": 2.0
3538
+ },
3539
+ {
3540
+ "name": "email",
3541
+ "type": "email",
3542
+ "required": true
3543
+ }
3540
3544
  ],
3541
- "mode": "create",
3545
+ "type": "form-section",
3542
3546
  "submitEvent": "NEXT"
3543
3547
  }
3544
- ]
3548
+ ],
3549
+ "gap": "lg",
3550
+ "className": "max-w-xl mx-auto w-full",
3551
+ "direction": "vertical",
3552
+ "type": "stack"
3545
3553
  }
3546
3554
  ]
3547
3555
  ]
@@ -3566,46 +3574,50 @@
3566
3574
  "main",
3567
3575
  {
3568
3576
  "type": "stack",
3569
- "gap": "lg",
3570
- "direction": "vertical",
3571
3577
  "className": "max-w-xl mx-auto w-full",
3578
+ "gap": "lg",
3572
3579
  "children": [
3573
3580
  {
3574
- "type": "typography",
3581
+ "variant": "h2",
3575
3582
  "content": "Checkout",
3576
- "variant": "h2"
3583
+ "type": "typography"
3577
3584
  },
3578
3585
  {
3586
+ "type": "wizard-progress",
3579
3587
  "steps": [
3580
3588
  "Customer Info",
3581
3589
  "Shipping",
3582
3590
  "Payment",
3583
3591
  "Review"
3584
3592
  ],
3585
- "type": "wizard-progress",
3586
3593
  "currentStep": 1.0
3587
3594
  },
3588
3595
  {
3589
3596
  "type": "divider"
3590
3597
  },
3591
3598
  {
3592
- "content": "Shipping Address",
3593
3599
  "type": "typography",
3594
- "variant": "h3"
3600
+ "variant": "h3",
3601
+ "content": "Shipping Address"
3595
3602
  },
3596
3603
  {
3597
- "fields": [
3598
- "shippingAddress"
3599
- ],
3604
+ "entity": "@entity",
3600
3605
  "submitEvent": "NEXT",
3601
3606
  "submitLabel": "Continue",
3602
- "mode": "edit",
3603
3607
  "cancelLabel": "Back",
3604
3608
  "cancelEvent": "PREV",
3605
- "entity": "@entity",
3609
+ "mode": "edit",
3610
+ "fields": [
3611
+ {
3612
+ "required": true,
3613
+ "min": 5.0,
3614
+ "name": "shippingAddress"
3615
+ }
3616
+ ],
3606
3617
  "type": "form-section"
3607
3618
  }
3608
- ]
3619
+ ],
3620
+ "direction": "vertical"
3609
3621
  }
3610
3622
  ]
3611
3623
  ]
@@ -3624,23 +3636,21 @@
3624
3636
  "render-ui",
3625
3637
  "main",
3626
3638
  {
3627
- "className": "max-w-xl mx-auto w-full",
3628
- "type": "stack",
3629
3639
  "children": [
3630
3640
  {
3631
- "type": "typography",
3632
3641
  "content": "Checkout",
3642
+ "type": "typography",
3633
3643
  "variant": "h2"
3634
3644
  },
3635
3645
  {
3636
- "currentStep": 2.0,
3637
- "type": "wizard-progress",
3638
3646
  "steps": [
3639
3647
  "Customer Info",
3640
3648
  "Shipping",
3641
3649
  "Payment",
3642
3650
  "Review"
3643
- ]
3651
+ ],
3652
+ "currentStep": 2.0,
3653
+ "type": "wizard-progress"
3644
3654
  },
3645
3655
  {
3646
3656
  "type": "divider"
@@ -3652,23 +3662,25 @@
3652
3662
  },
3653
3663
  "@trait.CheckoutPayment",
3654
3664
  {
3655
- "direction": "horizontal",
3665
+ "gap": "sm",
3666
+ "type": "stack",
3667
+ "justify": "start",
3656
3668
  "children": [
3657
3669
  {
3658
- "icon": "arrow-left",
3659
- "variant": "ghost",
3660
- "label": "Back",
3670
+ "action": "PREV",
3661
3671
  "type": "button",
3662
- "action": "PREV"
3672
+ "label": "Back",
3673
+ "variant": "ghost",
3674
+ "icon": "arrow-left"
3663
3675
  }
3664
3676
  ],
3665
- "gap": "sm",
3666
- "justify": "start",
3667
- "type": "stack"
3677
+ "direction": "horizontal"
3668
3678
  }
3669
3679
  ],
3680
+ "direction": "vertical",
3670
3681
  "gap": "lg",
3671
- "direction": "vertical"
3682
+ "type": "stack",
3683
+ "className": "max-w-xl mx-auto w-full"
3672
3684
  }
3673
3685
  ]
3674
3686
  ]
@@ -3682,47 +3694,55 @@
3682
3694
  "render-ui",
3683
3695
  "main",
3684
3696
  {
3685
- "direction": "vertical",
3697
+ "gap": "lg",
3698
+ "type": "stack",
3699
+ "className": "max-w-xl mx-auto w-full",
3686
3700
  "children": [
3687
3701
  {
3702
+ "variant": "h2",
3688
3703
  "content": "Checkout",
3689
- "type": "typography",
3690
- "variant": "h2"
3704
+ "type": "typography"
3691
3705
  },
3692
3706
  {
3707
+ "type": "wizard-progress",
3693
3708
  "steps": [
3694
3709
  "Customer Info",
3695
3710
  "Shipping",
3696
3711
  "Payment",
3697
3712
  "Review"
3698
3713
  ],
3699
- "currentStep": 0.0,
3700
- "type": "wizard-progress"
3714
+ "currentStep": 0.0
3701
3715
  },
3702
3716
  {
3703
3717
  "type": "divider"
3704
3718
  },
3705
3719
  {
3706
- "type": "typography",
3707
3720
  "variant": "h3",
3721
+ "type": "typography",
3708
3722
  "content": "Customer Info"
3709
3723
  },
3710
3724
  {
3711
- "mode": "edit",
3712
- "fields": [
3713
- "customerName",
3714
- "email"
3715
- ],
3716
3725
  "type": "form-section",
3717
3726
  "entity": "@entity",
3727
+ "fields": [
3728
+ {
3729
+ "required": true,
3730
+ "min": 2.0,
3731
+ "name": "customerName"
3732
+ },
3733
+ {
3734
+ "name": "email",
3735
+ "type": "email",
3736
+ "required": true
3737
+ }
3738
+ ],
3739
+ "mode": "edit",
3718
3740
  "showCancel": false,
3719
- "submitEvent": "NEXT",
3720
- "submitLabel": "Continue"
3741
+ "submitLabel": "Continue",
3742
+ "submitEvent": "NEXT"
3721
3743
  }
3722
3744
  ],
3723
- "className": "max-w-xl mx-auto w-full",
3724
- "type": "stack",
3725
- "gap": "lg"
3745
+ "direction": "vertical"
3726
3746
  }
3727
3747
  ]
3728
3748
  ]
@@ -3736,15 +3756,14 @@
3736
3756
  "render-ui",
3737
3757
  "main",
3738
3758
  {
3739
- "direction": "vertical",
3740
3759
  "type": "stack",
3760
+ "direction": "vertical",
3741
3761
  "className": "max-w-xl mx-auto w-full",
3742
- "gap": "lg",
3743
3762
  "children": [
3744
3763
  {
3745
- "type": "typography",
3746
3764
  "variant": "h2",
3747
- "content": "Review your order"
3765
+ "content": "Review your order",
3766
+ "type": "typography"
3748
3767
  },
3749
3768
  {
3750
3769
  "steps": [
@@ -3753,21 +3772,26 @@
3753
3772
  "Payment",
3754
3773
  "Review"
3755
3774
  ],
3756
- "type": "wizard-progress",
3757
- "currentStep": 3.0
3775
+ "currentStep": 3.0,
3776
+ "type": "wizard-progress"
3758
3777
  },
3759
3778
  {
3760
3779
  "type": "divider"
3761
3780
  },
3762
3781
  {
3782
+ "direction": "vertical",
3783
+ "gap": "sm",
3784
+ "type": "stack",
3763
3785
  "children": [
3764
3786
  {
3765
3787
  "type": "stack",
3788
+ "direction": "horizontal",
3789
+ "justify": "between",
3766
3790
  "children": [
3767
3791
  {
3768
- "content": "Customer",
3792
+ "type": "typography",
3769
3793
  "variant": "caption",
3770
- "type": "typography"
3794
+ "content": "Customer"
3771
3795
  },
3772
3796
  {
3773
3797
  "variant": "body",
@@ -3775,95 +3799,91 @@
3775
3799
  "content": "@entity.customerName"
3776
3800
  }
3777
3801
  ],
3778
- "gap": "md",
3779
- "justify": "between",
3780
- "direction": "horizontal"
3802
+ "gap": "md"
3781
3803
  },
3782
3804
  {
3783
- "direction": "horizontal",
3784
3805
  "type": "stack",
3785
3806
  "gap": "md",
3786
- "justify": "between",
3807
+ "direction": "horizontal",
3787
3808
  "children": [
3788
3809
  {
3789
3810
  "type": "typography",
3790
- "variant": "caption",
3791
- "content": "Email"
3811
+ "content": "Email",
3812
+ "variant": "caption"
3792
3813
  },
3793
3814
  {
3815
+ "type": "typography",
3794
3816
  "variant": "body",
3795
- "content": "@entity.email",
3796
- "type": "typography"
3817
+ "content": "@entity.email"
3797
3818
  }
3798
- ]
3819
+ ],
3820
+ "justify": "between"
3799
3821
  },
3800
3822
  {
3801
- "direction": "horizontal",
3802
3823
  "type": "stack",
3824
+ "direction": "horizontal",
3825
+ "justify": "between",
3826
+ "gap": "md",
3803
3827
  "children": [
3804
3828
  {
3805
- "type": "typography",
3806
3829
  "variant": "caption",
3830
+ "type": "typography",
3807
3831
  "content": "Shipping"
3808
3832
  },
3809
3833
  {
3810
- "content": "@entity.shippingAddress",
3811
3834
  "variant": "body",
3835
+ "content": "@entity.shippingAddress",
3812
3836
  "type": "typography"
3813
3837
  }
3814
- ],
3815
- "gap": "md",
3816
- "justify": "between"
3838
+ ]
3817
3839
  },
3818
3840
  {
3819
- "justify": "between",
3820
3841
  "children": [
3821
3842
  {
3822
- "type": "typography",
3843
+ "content": "Order total",
3823
3844
  "variant": "caption",
3824
- "content": "Order total"
3845
+ "type": "typography"
3825
3846
  },
3826
3847
  {
3827
- "type": "typography",
3828
3848
  "variant": "body",
3829
- "content": "@entity.orderTotal"
3849
+ "content": "@entity.orderTotal",
3850
+ "type": "typography"
3830
3851
  }
3831
3852
  ],
3832
3853
  "type": "stack",
3833
3854
  "direction": "horizontal",
3834
- "gap": "md"
3855
+ "gap": "md",
3856
+ "justify": "between"
3835
3857
  }
3836
- ],
3837
- "gap": "sm",
3838
- "direction": "vertical",
3839
- "type": "stack"
3858
+ ]
3840
3859
  },
3841
3860
  {
3842
3861
  "type": "divider"
3843
3862
  },
3844
3863
  {
3864
+ "type": "stack",
3845
3865
  "gap": "sm",
3846
3866
  "children": [
3847
3867
  {
3868
+ "action": "PREV",
3869
+ "label": "Back",
3848
3870
  "type": "button",
3849
- "icon": "arrow-left",
3850
3871
  "variant": "ghost",
3851
- "label": "Back",
3852
- "action": "PREV"
3872
+ "icon": "arrow-left"
3853
3873
  },
3854
3874
  {
3875
+ "icon": "check",
3855
3876
  "type": "button",
3856
- "label": "Place order",
3857
3877
  "action": "COMPLETE",
3858
- "variant": "primary",
3859
- "icon": "check"
3878
+ "label": "Place order",
3879
+ "variant": "primary"
3860
3880
  }
3861
3881
  ],
3862
- "type": "stack",
3863
- "direction": "horizontal",
3864
- "justify": "between"
3882
+ "justify": "between",
3883
+ "direction": "horizontal"
3865
3884
  }
3866
- ]
3885
+ ],
3886
+ "gap": "lg"
3867
3887
  }
3868
3888
  ]
3869
3889
  ]
@@ -3877,47 +3897,51 @@
3877
3897
  "render-ui",
3878
3898
  "main",
3879
3899
  {
3880
- "gap": "lg",
3881
- "type": "stack",
3900
+ "direction": "vertical",
3882
3901
  "className": "max-w-xl mx-auto w-full",
3902
+ "type": "stack",
3883
3903
  "children": [
3884
3904
  {
3905
+ "content": "Checkout",
3885
3906
  "type": "typography",
3886
- "variant": "h2",
3887
- "content": "Checkout"
3907
+ "variant": "h2"
3888
3908
  },
3889
3909
  {
3890
- "type": "wizard-progress",
3891
3910
  "steps": [
3892
3911
  "Customer Info",
3893
3912
  "Shipping",
3894
3913
  "Payment",
3895
3914
  "Review"
3896
3915
  ],
3897
- "currentStep": 1.0
3916
+ "currentStep": 1.0,
3917
+ "type": "wizard-progress"
3898
3918
  },
3899
3919
  {
3900
3920
  "type": "divider"
3901
3921
  },
3902
3922
  {
3923
+ "variant": "h3",
3903
3924
  "content": "Shipping Address",
3904
- "type": "typography",
3905
- "variant": "h3"
3925
+ "type": "typography"
3906
3926
  },
3907
3927
  {
3908
- "submitEvent": "NEXT",
3909
- "submitLabel": "Continue",
3910
3928
  "type": "form-section",
3929
+ "submitLabel": "Continue",
3911
3930
  "fields": [
3912
- "shippingAddress"
3931
+ {
3932
+ "min": 5.0,
3933
+ "name": "shippingAddress",
3934
+ "required": true
3935
+ }
3913
3936
  ],
3914
- "cancelLabel": "Back",
3915
- "entity": "@entity",
3916
3937
  "mode": "edit",
3938
+ "entity": "@entity",
3939
+ "cancelLabel": "Back",
3940
+ "submitEvent": "NEXT",
3917
3941
  "cancelEvent": "PREV"
3918
3942
  }
3919
3943
  ],
3920
- "direction": "vertical"
3944
+ "gap": "lg"
3921
3945
  }
3922
3946
  ]
3923
3947
  ]
@@ -3960,9 +3984,6 @@
3960
3984
  "render-ui",
3961
3985
  "main",
3962
3986
  {
3963
- "align": "center",
3964
- "className": "max-w-xl mx-auto w-full py-12",
3965
- "type": "stack",
3966
3987
  "gap": "lg",
3967
3988
  "children": [
3968
3989
  {
@@ -3970,25 +3991,28 @@
3970
3991
  "name": "check-circle"
3971
3992
  },
3972
3993
  {
3973
- "type": "typography",
3974
3994
  "variant": "h2",
3975
- "content": "Order placed"
3995
+ "content": "Order placed",
3996
+ "type": "typography"
3976
3997
  },
3977
3998
  {
3978
- "content": "Your order is confirmed and on its way.",
3979
- "color": "muted",
3980
3999
  "type": "typography",
3981
- "variant": "body"
4000
+ "color": "muted",
4001
+ "variant": "body",
4002
+ "content": "Your order is confirmed and on its way."
3982
4003
  },
3983
4004
  {
3984
- "icon": "rotate-ccw",
3985
4005
  "action": "RESTART",
3986
- "variant": "ghost",
4006
+ "icon": "rotate-ccw",
3987
4007
  "type": "button",
4008
+ "variant": "ghost",
3988
4009
  "label": "Start new order"
3989
4010
  }
3990
4011
  ],
3991
- "direction": "vertical"
4012
+ "type": "stack",
4013
+ "direction": "vertical",
4014
+ "align": "center",
4015
+ "className": "max-w-xl mx-auto w-full py-12"
3992
4016
  }
3993
4017
  ]
3994
4018
  ]
@@ -4002,51 +4026,51 @@
4002
4026
  "render-ui",
4003
4027
  "main",
4004
4028
  {
4029
+ "type": "stack",
4005
4030
  "direction": "vertical",
4006
- "gap": "lg",
4007
4031
  "className": "max-w-xl mx-auto w-full",
4008
- "type": "stack",
4009
4032
  "children": [
4010
4033
  {
4011
- "variant": "h2",
4012
4034
  "type": "typography",
4035
+ "variant": "h2",
4013
4036
  "content": "Checkout"
4014
4037
  },
4015
4038
  {
4016
- "currentStep": 2.0,
4017
4039
  "steps": [
4018
4040
  "Customer Info",
4019
4041
  "Shipping",
4020
4042
  "Payment",
4021
4043
  "Review"
4022
4044
  ],
4023
- "type": "wizard-progress"
4045
+ "type": "wizard-progress",
4046
+ "currentStep": 2.0
4024
4047
  },
4025
4048
  {
4026
4049
  "type": "divider"
4027
4050
  },
4028
4051
  {
4029
- "content": "Payment",
4052
+ "type": "typography",
4030
4053
  "variant": "h3",
4031
- "type": "typography"
4054
+ "content": "Payment"
4032
4055
  },
4033
4056
  "@trait.CheckoutPayment",
4034
4057
  {
4058
+ "direction": "horizontal",
4059
+ "type": "stack",
4060
+ "gap": "sm",
4035
4061
  "justify": "start",
4036
4062
  "children": [
4037
4063
  {
4038
4064
  "type": "button",
4039
- "action": "PREV",
4065
+ "label": "Back",
4040
4066
  "variant": "ghost",
4041
- "icon": "arrow-left",
4042
- "label": "Back"
4067
+ "action": "PREV",
4068
+ "icon": "arrow-left"
4043
4069
  }
4044
- ],
4045
- "type": "stack",
4046
- "gap": "sm",
4047
- "direction": "horizontal"
4070
+ ]
4048
4071
  }
4049
- ]
4072
+ ],
4073
+ "gap": "lg"
4050
4074
  }
4051
4075
  ]
4052
4076
  ]
@@ -4085,14 +4109,14 @@
4085
4109
  "render-ui",
4086
4110
  "main",
4087
4111
  {
4112
+ "direction": "vertical",
4088
4113
  "className": "max-w-xl mx-auto w-full",
4089
4114
  "type": "stack",
4090
4115
  "gap": "lg",
4091
- "direction": "vertical",
4092
4116
  "children": [
4093
4117
  {
4094
- "type": "typography",
4095
4118
  "variant": "h2",
4119
+ "type": "typography",
4096
4120
  "content": "Checkout"
4097
4121
  },
4098
4122
  {
@@ -4109,20 +4133,28 @@
4109
4133
  "type": "divider"
4110
4134
  },
4111
4135
  {
4112
- "type": "typography",
4113
4136
  "content": "Customer Info",
4137
+ "type": "typography",
4114
4138
  "variant": "h3"
4115
4139
  },
4116
4140
  {
4117
- "mode": "create",
4118
4141
  "type": "form-section",
4119
- "submitEvent": "NEXT",
4120
- "showCancel": false,
4142
+ "submitLabel": "Continue",
4121
4143
  "fields": [
4122
- "customerName",
4123
- "email"
4144
+ {
4145
+ "min": 2.0,
4146
+ "required": true,
4147
+ "name": "customerName"
4148
+ },
4149
+ {
4150
+ "required": true,
4151
+ "type": "email",
4152
+ "name": "email"
4153
+ }
4124
4154
  ],
4125
- "submitLabel": "Continue"
4155
+ "mode": "create",
4156
+ "showCancel": false,
4157
+ "submitEvent": "NEXT"
4126
4158
  }
4127
4159
  ]
4128
4160
  }
@@ -4475,31 +4507,31 @@
4475
4507
  "OrderRecord",
4476
4508
  {
4477
4509
  "emit": {
4478
- "failure": "OrderRecordLoadFailed",
4479
- "success": "OrderRecordLoaded"
4510
+ "success": "OrderRecordLoaded",
4511
+ "failure": "OrderRecordLoadFailed"
4480
4512
  }
4481
4513
  }
4482
4514
  ],
4483
4515
  [
4484
4516
  "render-ui",
4485
- "main",
4486
- {
4487
- "type": "stack",
4488
- "gap": "md",
4489
- "className": "py-12",
4490
- "align": "center",
4517
+ "main",
4518
+ {
4491
4519
  "children": [
4492
4520
  {
4493
4521
  "type": "spinner"
4494
4522
  },
4495
4523
  {
4496
- "content": "Loading…",
4524
+ "type": "typography",
4497
4525
  "variant": "caption",
4498
- "color": "muted",
4499
- "type": "typography"
4526
+ "content": "Loading…",
4527
+ "color": "muted"
4500
4528
  }
4501
4529
  ],
4502
- "direction": "vertical"
4530
+ "className": "py-12",
4531
+ "type": "stack",
4532
+ "direction": "vertical",
4533
+ "gap": "md",
4534
+ "align": "center"
4503
4535
  }
4504
4536
  ]
4505
4537
  ]
@@ -4513,18 +4545,17 @@
4513
4545
  "render-ui",
4514
4546
  "main",
4515
4547
  {
4548
+ "appName": "EcommerceApp",
4549
+ "type": "dashboard-layout",
4516
4550
  "children": [
4517
4551
  {
4552
+ "gap": "lg",
4518
4553
  "children": [
4519
4554
  {
4520
- "align": "center",
4521
4555
  "gap": "md",
4522
4556
  "direction": "horizontal",
4523
- "type": "stack",
4524
4557
  "children": [
4525
4558
  {
4526
- "gap": "sm",
4527
- "direction": "horizontal",
4528
4559
  "align": "center",
4529
4560
  "type": "stack",
4530
4561
  "children": [
@@ -4533,27 +4564,31 @@
4533
4564
  "type": "icon"
4534
4565
  },
4535
4566
  {
4567
+ "type": "typography",
4536
4568
  "variant": "h2",
4537
- "content": "Order History",
4538
- "type": "typography"
4569
+ "content": "Order History"
4539
4570
  }
4540
- ]
4571
+ ],
4572
+ "gap": "sm",
4573
+ "direction": "horizontal"
4541
4574
  },
4542
4575
  {
4543
- "type": "stack",
4544
4576
  "gap": "sm",
4577
+ "type": "stack",
4578
+ "direction": "horizontal",
4545
4579
  "children": [
4546
4580
  {
4547
- "icon": "plus",
4548
- "action": "CREATE",
4549
4581
  "type": "button",
4550
4582
  "variant": "primary",
4551
- "label": "Create OrderRecord"
4583
+ "label": "Create OrderRecord",
4584
+ "action": "CREATE",
4585
+ "icon": "plus"
4552
4586
  }
4553
- ],
4554
- "direction": "horizontal"
4587
+ ]
4555
4588
  }
4556
4589
  ],
4590
+ "align": "center",
4591
+ "type": "stack",
4557
4592
  "justify": "between"
4558
4593
  },
4559
4594
  {
@@ -4562,84 +4597,81 @@
4562
4597
  {
4563
4598
  "itemActions": [
4564
4599
  {
4565
- "variant": "ghost",
4566
4600
  "event": "VIEW",
4567
- "label": "View"
4601
+ "label": "View",
4602
+ "variant": "ghost"
4568
4603
  },
4569
4604
  {
4605
+ "label": "Edit",
4570
4606
  "event": "EDIT",
4571
- "variant": "ghost",
4572
- "label": "Edit"
4607
+ "variant": "ghost"
4573
4608
  },
4574
4609
  {
4575
4610
  "variant": "danger",
4576
- "label": "Delete",
4577
- "event": "DELETE"
4611
+ "event": "DELETE",
4612
+ "label": "Delete"
4578
4613
  }
4579
4614
  ],
4580
- "type": "data-list",
4615
+ "gap": "sm",
4616
+ "entity": "@payload.data",
4617
+ "variant": "card",
4581
4618
  "fields": [
4582
4619
  {
4583
- "name": "customerName",
4584
- "variant": "h3",
4620
+ "icon": "clipboard-list",
4585
4621
  "label": "Customer",
4586
- "icon": "clipboard-list"
4622
+ "variant": "h3",
4623
+ "name": "customerName"
4587
4624
  },
4588
4625
  {
4589
4626
  "name": "status",
4590
4627
  "variant": "badge"
4591
4628
  },
4592
4629
  {
4593
- "name": "orderTotal",
4594
4630
  "format": "currency",
4631
+ "name": "orderTotal",
4595
4632
  "label": "Total",
4596
4633
  "variant": "h4"
4597
4634
  },
4598
4635
  {
4599
- "variant": "caption",
4600
- "name": "email"
4636
+ "name": "email",
4637
+ "variant": "caption"
4601
4638
  },
4602
4639
  {
4640
+ "variant": "caption",
4603
4641
  "label": "Address",
4604
- "name": "shippingAddress",
4605
- "variant": "caption"
4642
+ "name": "shippingAddress"
4606
4643
  }
4607
4644
  ],
4608
- "variant": "card",
4609
- "gap": "sm",
4610
- "entity": "@payload.data"
4645
+ "type": "data-list"
4611
4646
  }
4612
4647
  ],
4613
- "gap": "lg",
4614
4648
  "direction": "vertical",
4615
- "className": "max-w-5xl mx-auto w-full",
4616
- "type": "stack"
4649
+ "type": "stack",
4650
+ "className": "max-w-5xl mx-auto w-full"
4617
4651
  }
4618
4652
  ],
4619
4653
  "navItems": [
4620
4654
  {
4655
+ "icon": "package",
4621
4656
  "label": "Products",
4622
- "href": "/products",
4623
- "icon": "package"
4657
+ "href": "/products"
4624
4658
  },
4625
4659
  {
4626
- "label": "Cart",
4627
4660
  "href": "/cart",
4661
+ "label": "Cart",
4628
4662
  "icon": "shopping-cart"
4629
4663
  },
4630
4664
  {
4631
- "label": "Checkout",
4632
4665
  "href": "/checkout",
4633
- "icon": "credit-card"
4666
+ "icon": "credit-card",
4667
+ "label": "Checkout"
4634
4668
  },
4635
4669
  {
4636
- "href": "/orders",
4670
+ "icon": "clipboard-list",
4637
4671
  "label": "Orders",
4638
- "icon": "clipboard-list"
4672
+ "href": "/orders"
4639
4673
  }
4640
- ],
4641
- "appName": "EcommerceApp",
4642
- "type": "dashboard-layout"
4674
+ ]
4643
4675
  }
4644
4676
  ]
4645
4677
  ]
@@ -4653,36 +4685,36 @@
4653
4685
  "render-ui",
4654
4686
  "main",
4655
4687
  {
4656
- "className": "py-12",
4657
4688
  "gap": "md",
4689
+ "className": "py-12",
4690
+ "direction": "vertical",
4658
4691
  "align": "center",
4659
- "type": "stack",
4660
4692
  "children": [
4661
4693
  {
4662
- "name": "alert-triangle",
4663
4694
  "color": "destructive",
4695
+ "name": "alert-triangle",
4664
4696
  "type": "icon"
4665
4697
  },
4666
4698
  {
4667
4699
  "content": "Failed to load orderrecord",
4668
- "variant": "h3",
4669
- "type": "typography"
4700
+ "type": "typography",
4701
+ "variant": "h3"
4670
4702
  },
4671
4703
  {
4672
- "type": "typography",
4673
4704
  "color": "muted",
4674
- "content": "@payload.error",
4675
- "variant": "body"
4705
+ "variant": "body",
4706
+ "type": "typography",
4707
+ "content": "@payload.error"
4676
4708
  },
4677
4709
  {
4678
4710
  "icon": "rotate-ccw",
4679
4711
  "type": "button",
4680
- "label": "Retry",
4681
4712
  "variant": "primary",
4713
+ "label": "Retry",
4682
4714
  "action": "INIT"
4683
4715
  }
4684
4716
  ],
4685
- "direction": "vertical"
4717
+ "type": "stack"
4686
4718
  }
4687
4719
  ]
4688
4720
  ]
@@ -4857,8 +4889,8 @@
4857
4889
  "OrderRecord",
4858
4890
  {
4859
4891
  "emit": {
4860
- "failure": "OrderRecordLoadFailed",
4861
- "success": "OrderRecordLoaded"
4892
+ "success": "OrderRecordLoaded",
4893
+ "failure": "OrderRecordLoadFailed"
4862
4894
  }
4863
4895
  }
4864
4896
  ]
@@ -4883,8 +4915,8 @@
4883
4915
  "render-ui",
4884
4916
  "modal",
4885
4917
  {
4886
- "gap": "md",
4887
4918
  "direction": "vertical",
4919
+ "type": "stack",
4888
4920
  "children": [
4889
4921
  {
4890
4922
  "gap": "sm",
@@ -4892,12 +4924,12 @@
4892
4924
  "type": "stack",
4893
4925
  "children": [
4894
4926
  {
4895
- "type": "icon",
4896
- "name": "plus-circle"
4927
+ "name": "plus-circle",
4928
+ "type": "icon"
4897
4929
  },
4898
4930
  {
4899
- "type": "typography",
4900
4931
  "content": "Create OrderRecord",
4932
+ "type": "typography",
4901
4933
  "variant": "h3"
4902
4934
  }
4903
4935
  ]
@@ -4907,6 +4939,8 @@
4907
4939
  },
4908
4940
  {
4909
4941
  "cancelEvent": "CLOSE",
4942
+ "type": "form-section",
4943
+ "submitEvent": "SAVE",
4910
4944
  "fields": [
4911
4945
  "customerName",
4912
4946
  "email",
@@ -4915,12 +4949,10 @@
4915
4949
  "orderTotal",
4916
4950
  "status"
4917
4951
  ],
4918
- "type": "form-section",
4919
- "mode": "create",
4920
- "submitEvent": "SAVE"
4952
+ "mode": "create"
4921
4953
  }
4922
4954
  ],
4923
- "type": "stack"
4955
+ "gap": "md"
4924
4956
  }
4925
4957
  ]
4926
4958
  ]
@@ -4961,8 +4993,8 @@
4961
4993
  "@payload.data",
4962
4994
  {
4963
4995
  "emit": {
4964
- "failure": "OrderRecordSaveFailed",
4965
- "success": "OrderRecordSaved"
4996
+ "success": "OrderRecordSaved",
4997
+ "failure": "OrderRecordSaveFailed"
4966
4998
  }
4967
4999
  }
4968
5000
  ],
@@ -5189,8 +5221,8 @@
5189
5221
  "OrderRecord",
5190
5222
  {
5191
5223
  "emit": {
5192
- "success": "OrderRecordLoaded",
5193
- "failure": "OrderRecordLoadFailed"
5224
+ "failure": "OrderRecordLoadFailed",
5225
+ "success": "OrderRecordLoaded"
5194
5226
  },
5195
5227
  "id": "@payload.id"
5196
5228
  }
@@ -5199,25 +5231,25 @@
5199
5231
  "render-ui",
5200
5232
  "modal",
5201
5233
  {
5202
- "type": "stack",
5203
- "gap": "md",
5204
5234
  "direction": "vertical",
5235
+ "gap": "md",
5236
+ "type": "stack",
5205
5237
  "children": [
5206
5238
  {
5207
5239
  "type": "stack",
5240
+ "gap": "sm",
5241
+ "direction": "horizontal",
5208
5242
  "children": [
5209
5243
  {
5210
- "type": "icon",
5211
- "name": "edit"
5244
+ "name": "edit",
5245
+ "type": "icon"
5212
5246
  },
5213
5247
  {
5214
5248
  "type": "typography",
5215
5249
  "content": "Edit OrderRecord",
5216
5250
  "variant": "h3"
5217
5251
  }
5218
- ],
5219
- "gap": "sm",
5220
- "direction": "horizontal"
5252
+ ]
5221
5253
  },
5222
5254
  {
5223
5255
  "type": "divider"
@@ -5232,10 +5264,10 @@
5232
5264
  "status"
5233
5265
  ],
5234
5266
  "cancelEvent": "CLOSE",
5235
- "entity": "@payload.row",
5236
- "submitEvent": "SAVE",
5267
+ "type": "form-section",
5237
5268
  "mode": "edit",
5238
- "type": "form-section"
5269
+ "entity": "@payload.row",
5270
+ "submitEvent": "SAVE"
5239
5271
  }
5240
5272
  ]
5241
5273
  }
@@ -5278,8 +5310,8 @@
5278
5310
  "@payload.data",
5279
5311
  {
5280
5312
  "emit": {
5281
- "success": "OrderRecordUpdated",
5282
- "failure": "OrderRecordUpdateFailed"
5313
+ "failure": "OrderRecordUpdateFailed",
5314
+ "success": "OrderRecordUpdated"
5283
5315
  }
5284
5316
  }
5285
5317
  ],
@@ -5459,8 +5491,8 @@
5459
5491
  "OrderRecord",
5460
5492
  {
5461
5493
  "emit": {
5462
- "failure": "OrderRecordLoadFailed",
5463
- "success": "OrderRecordLoaded"
5494
+ "success": "OrderRecordLoaded",
5495
+ "failure": "OrderRecordLoadFailed"
5464
5496
  }
5465
5497
  }
5466
5498
  ]
@@ -5475,58 +5507,59 @@
5475
5507
  "fetch",
5476
5508
  "OrderRecord",
5477
5509
  {
5478
- "id": "@payload.id",
5479
5510
  "emit": {
5480
- "failure": "OrderRecordLoadFailed",
5481
- "success": "OrderRecordLoaded"
5482
- }
5511
+ "success": "OrderRecordLoaded",
5512
+ "failure": "OrderRecordLoadFailed"
5513
+ },
5514
+ "id": "@payload.id"
5483
5515
  }
5484
5516
  ],
5485
5517
  [
5486
5518
  "render-ui",
5487
5519
  "modal",
5488
5520
  {
5521
+ "gap": "md",
5522
+ "direction": "vertical",
5523
+ "type": "stack",
5489
5524
  "children": [
5490
5525
  {
5491
5526
  "type": "stack",
5527
+ "direction": "horizontal",
5528
+ "align": "center",
5529
+ "gap": "sm",
5492
5530
  "children": [
5493
5531
  {
5494
- "name": "eye",
5495
- "type": "icon"
5532
+ "type": "icon",
5533
+ "name": "eye"
5496
5534
  },
5497
5535
  {
5536
+ "type": "typography",
5498
5537
  "variant": "h3",
5499
- "content": "@entity.customerName",
5500
- "type": "typography"
5538
+ "content": "@entity.customerName"
5501
5539
  }
5502
- ],
5503
- "gap": "sm",
5504
- "align": "center",
5505
- "direction": "horizontal"
5540
+ ]
5506
5541
  },
5507
5542
  {
5508
5543
  "type": "divider"
5509
5544
  },
5510
5545
  {
5511
- "direction": "horizontal",
5512
5546
  "gap": "md",
5547
+ "type": "stack",
5513
5548
  "children": [
5514
5549
  {
5515
5550
  "content": "Customer Name",
5516
- "type": "typography",
5517
- "variant": "caption"
5551
+ "variant": "caption",
5552
+ "type": "typography"
5518
5553
  },
5519
5554
  {
5520
- "content": "@entity.customerName",
5521
5555
  "type": "typography",
5522
- "variant": "body"
5556
+ "variant": "body",
5557
+ "content": "@entity.customerName"
5523
5558
  }
5524
5559
  ],
5525
- "type": "stack"
5560
+ "direction": "horizontal"
5526
5561
  },
5527
5562
  {
5528
- "type": "stack",
5529
- "gap": "md",
5530
5563
  "children": [
5531
5564
  {
5532
5565
  "type": "typography",
@@ -5534,36 +5567,40 @@
5534
5567
  "content": "Email"
5535
5568
  },
5536
5569
  {
5537
- "type": "typography",
5538
5570
  "variant": "body",
5539
- "content": "@entity.email"
5571
+ "content": "@entity.email",
5572
+ "type": "typography"
5540
5573
  }
5541
5574
  ],
5575
+ "gap": "md",
5576
+ "type": "stack",
5542
5577
  "direction": "horizontal"
5543
5578
  },
5544
5579
  {
5545
5580
  "gap": "md",
5581
+ "type": "stack",
5582
+ "direction": "horizontal",
5546
5583
  "children": [
5547
5584
  {
5548
5585
  "type": "typography",
5549
- "variant": "caption",
5550
- "content": "Shipping Address"
5586
+ "content": "Shipping Address",
5587
+ "variant": "caption"
5551
5588
  },
5552
5589
  {
5553
- "variant": "body",
5554
5590
  "content": "@entity.shippingAddress",
5591
+ "variant": "body",
5555
5592
  "type": "typography"
5556
5593
  }
5557
- ],
5558
- "direction": "horizontal",
5559
- "type": "stack"
5594
+ ]
5560
5595
  },
5561
5596
  {
5597
+ "type": "stack",
5598
+ "direction": "horizontal",
5562
5599
  "children": [
5563
5600
  {
5564
- "type": "typography",
5565
5601
  "variant": "caption",
5566
- "content": "Payment Method"
5602
+ "content": "Payment Method",
5603
+ "type": "typography"
5567
5604
  },
5568
5605
  {
5569
5606
  "variant": "body",
@@ -5571,34 +5608,33 @@
5571
5608
  "type": "typography"
5572
5609
  }
5573
5610
  ],
5574
- "type": "stack",
5575
- "direction": "horizontal",
5576
5611
  "gap": "md"
5577
5612
  },
5578
5613
  {
5579
5614
  "children": [
5580
5615
  {
5581
5616
  "type": "typography",
5582
- "variant": "caption",
5583
- "content": "Order Total"
5617
+ "content": "Order Total",
5618
+ "variant": "caption"
5584
5619
  },
5585
5620
  {
5621
+ "content": "@entity.orderTotal",
5586
5622
  "type": "typography",
5587
- "variant": "body",
5588
- "content": "@entity.orderTotal"
5623
+ "variant": "body"
5589
5624
  }
5590
5625
  ],
5591
- "gap": "md",
5626
+ "direction": "horizontal",
5592
5627
  "type": "stack",
5593
- "direction": "horizontal"
5628
+ "gap": "md"
5594
5629
  },
5595
5630
  {
5596
5631
  "gap": "md",
5632
+ "direction": "horizontal",
5597
5633
  "children": [
5598
5634
  {
5635
+ "content": "Status",
5599
5636
  "variant": "caption",
5600
- "type": "typography",
5601
- "content": "Status"
5637
+ "type": "typography"
5602
5638
  },
5603
5639
  {
5604
5640
  "content": "@entity.status",
@@ -5606,37 +5642,33 @@
5606
5642
  "type": "typography"
5607
5643
  }
5608
5644
  ],
5609
- "direction": "horizontal",
5610
5645
  "type": "stack"
5611
5646
  },
5612
5647
  {
5613
5648
  "type": "divider"
5614
5649
  },
5615
5650
  {
5616
- "direction": "horizontal",
5617
5651
  "type": "stack",
5652
+ "direction": "horizontal",
5618
5653
  "children": [
5619
5654
  {
5620
- "variant": "primary",
5621
- "icon": "edit",
5622
5655
  "type": "button",
5656
+ "label": "Edit",
5623
5657
  "action": "EDIT",
5624
- "label": "Edit"
5658
+ "variant": "primary",
5659
+ "icon": "edit"
5625
5660
  },
5626
5661
  {
5627
5662
  "label": "Close",
5663
+ "variant": "ghost",
5628
5664
  "type": "button",
5629
- "action": "CLOSE",
5630
- "variant": "ghost"
5665
+ "action": "CLOSE"
5631
5666
  }
5632
5667
  ],
5633
- "justify": "end",
5634
- "gap": "sm"
5668
+ "gap": "sm",
5669
+ "justify": "end"
5635
5670
  }
5636
- ],
5637
- "type": "stack",
5638
- "direction": "vertical",
5639
- "gap": "md"
5671
+ ]
5640
5672
  }
5641
5673
  ]
5642
5674
  ]
@@ -5858,8 +5890,8 @@
5858
5890
  "OrderRecord",
5859
5891
  {
5860
5892
  "emit": {
5861
- "success": "OrderRecordLoaded",
5862
- "failure": "OrderRecordLoadFailed"
5893
+ "failure": "OrderRecordLoadFailed",
5894
+ "success": "OrderRecordLoaded"
5863
5895
  }
5864
5896
  }
5865
5897
  ]
@@ -5881,8 +5913,8 @@
5881
5913
  {
5882
5914
  "id": "@payload.id",
5883
5915
  "emit": {
5884
- "failure": "OrderRecordLoadFailed",
5885
- "success": "OrderRecordLoaded"
5916
+ "success": "OrderRecordLoaded",
5917
+ "failure": "OrderRecordLoadFailed"
5886
5918
  }
5887
5919
  }
5888
5920
  ],
@@ -5890,22 +5922,21 @@
5890
5922
  "render-ui",
5891
5923
  "modal",
5892
5924
  {
5893
- "type": "stack",
5894
5925
  "children": [
5895
5926
  {
5896
- "direction": "horizontal",
5897
- "gap": "sm",
5898
5927
  "type": "stack",
5899
5928
  "align": "center",
5929
+ "direction": "horizontal",
5930
+ "gap": "sm",
5900
5931
  "children": [
5901
5932
  {
5902
- "name": "alert-triangle",
5903
- "type": "icon"
5933
+ "type": "icon",
5934
+ "name": "alert-triangle"
5904
5935
  },
5905
5936
  {
5906
5937
  "content": "Delete OrderRecord",
5907
- "type": "typography",
5908
- "variant": "h3"
5938
+ "variant": "h3",
5939
+ "type": "typography"
5909
5940
  }
5910
5941
  ]
5911
5942
  },
@@ -5913,12 +5944,14 @@
5913
5944
  "type": "divider"
5914
5945
  },
5915
5946
  {
5916
- "type": "alert",
5917
5947
  "variant": "error",
5948
+ "type": "alert",
5918
5949
  "message": "This action cannot be undone."
5919
5950
  },
5920
5951
  {
5921
5952
  "direction": "horizontal",
5953
+ "type": "stack",
5954
+ "gap": "sm",
5922
5955
  "justify": "end",
5923
5956
  "children": [
5924
5957
  {
@@ -5928,18 +5961,17 @@
5928
5961
  "label": "Cancel"
5929
5962
  },
5930
5963
  {
5931
- "action": "CONFIRM_DELETE",
5932
5964
  "type": "button",
5933
- "variant": "danger",
5934
5965
  "label": "Delete",
5966
+ "action": "CONFIRM_DELETE",
5967
+ "variant": "danger",
5935
5968
  "icon": "check"
5936
5969
  }
5937
- ],
5938
- "gap": "sm",
5939
- "type": "stack"
5970
+ ]
5940
5971
  }
5941
5972
  ],
5942
5973
  "direction": "vertical",
5974
+ "type": "stack",
5943
5975
  "gap": "md"
5944
5976
  }
5945
5977
  ]
@@ -5957,8 +5989,8 @@
5957
5989
  "@entity.pendingId",
5958
5990
  {
5959
5991
  "emit": {
5960
- "failure": "OrderRecordDeleteFailed",
5961
- "success": "OrderRecordDeleted"
5992
+ "success": "OrderRecordDeleted",
5993
+ "failure": "OrderRecordDeleteFailed"
5962
5994
  }
5963
5995
  }
5964
5996
  ],
@@ -6041,8 +6073,8 @@
6041
6073
  "OrderRecord",
6042
6074
  {
6043
6075
  "emit": {
6044
- "failure": "OrderRecordLoadFailed",
6045
- "success": "OrderRecordLoaded"
6076
+ "success": "OrderRecordLoaded",
6077
+ "failure": "OrderRecordLoadFailed"
6046
6078
  }
6047
6079
  }
6048
6080
  ]