@almadar/std 14.16.0 → 14.17.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 (121) hide show
  1. package/behaviors/registry/app/atoms/std-branching-logic.orb +84 -84
  2. package/behaviors/registry/app/atoms/std-checkin.orb +60 -60
  3. package/behaviors/registry/app/atoms/std-dunning.orb +44 -44
  4. package/behaviors/registry/app/atoms/std-event.orb +62 -62
  5. package/behaviors/registry/app/atoms/std-flag.orb +72 -72
  6. package/behaviors/registry/app/atoms/std-geosearch.orb +29 -29
  7. package/behaviors/registry/app/atoms/std-image-upload-multi.orb +54 -56
  8. package/behaviors/registry/app/atoms/std-invoice.orb +124 -124
  9. package/behaviors/registry/app/atoms/std-kitchen-display.orb +58 -58
  10. package/behaviors/registry/app/atoms/std-menu.orb +44 -44
  11. package/behaviors/registry/app/atoms/std-mod-queue.orb +38 -38
  12. package/behaviors/registry/app/atoms/std-modifier-group.orb +56 -56
  13. package/behaviors/registry/app/atoms/std-page-tree.orb +55 -55
  14. package/behaviors/registry/app/atoms/std-payout-ledger.orb +66 -66
  15. package/behaviors/registry/app/atoms/std-question-bank.orb +62 -62
  16. package/behaviors/registry/app/atoms/std-rating-review.orb +67 -67
  17. package/behaviors/registry/app/atoms/std-recurring-charge.orb +74 -74
  18. package/behaviors/registry/app/atoms/std-response-collector.orb +44 -44
  19. package/behaviors/registry/app/atoms/std-rich-editor.orb +68 -68
  20. package/behaviors/registry/app/atoms/std-route-optimize.orb +49 -49
  21. package/behaviors/registry/app/atoms/std-saved-search.orb +72 -72
  22. package/behaviors/registry/app/atoms/std-signature-capture.orb +86 -86
  23. package/behaviors/registry/app/atoms/std-table-map.orb +46 -46
  24. package/behaviors/registry/app/atoms/std-tag-taxonomy.orb +73 -92
  25. package/behaviors/registry/app/atoms/std-technician-dispatch.orb +42 -42
  26. package/behaviors/registry/app/atoms/std-thread.orb +59 -59
  27. package/behaviors/registry/app/atoms/std-ticket-tier.orb +53 -53
  28. package/behaviors/registry/app/atoms/std-trial.orb +67 -67
  29. package/behaviors/registry/app/atoms/std-version-history.orb +93 -93
  30. package/behaviors/registry/app/atoms/std-vote.orb +40 -40
  31. package/behaviors/registry/app/atoms/std-waitlist.orb +50 -50
  32. package/behaviors/registry/app/atoms/std-work-order.orb +48 -48
  33. package/behaviors/registry/app/organisms/std-api-gateway.orb +201 -201
  34. package/behaviors/registry/app/organisms/std-booking-system.orb +676 -676
  35. package/behaviors/registry/app/organisms/std-cicd-pipeline.orb +285 -285
  36. package/behaviors/registry/app/organisms/std-cms.orb +265 -265
  37. package/behaviors/registry/app/organisms/std-coding-academy.orb +179 -179
  38. package/behaviors/registry/app/organisms/std-crm.orb +258 -258
  39. package/behaviors/registry/app/organisms/std-devops-dashboard.orb +403 -403
  40. package/behaviors/registry/app/organisms/std-ecommerce.orb +681 -681
  41. package/behaviors/registry/app/organisms/std-event-ticketing.orb +217 -217
  42. package/behaviors/registry/app/organisms/std-field-service.orb +190 -190
  43. package/behaviors/registry/app/organisms/std-finance-tracker.orb +205 -205
  44. package/behaviors/registry/app/organisms/std-forum.orb +141 -141
  45. package/behaviors/registry/app/organisms/std-healthcare.orb +540 -540
  46. package/behaviors/registry/app/organisms/std-helpdesk.orb +175 -175
  47. package/behaviors/registry/app/organisms/std-hr-portal.orb +444 -444
  48. package/behaviors/registry/app/organisms/std-iot-dashboard.orb +344 -344
  49. package/behaviors/registry/app/organisms/std-listings.orb +157 -157
  50. package/behaviors/registry/app/organisms/std-lms.orb +422 -422
  51. package/behaviors/registry/app/organisms/std-marketplace.orb +232 -234
  52. package/behaviors/registry/app/organisms/std-project-manager.orb +193 -193
  53. package/behaviors/registry/app/organisms/std-realtime-chat.orb +248 -248
  54. package/behaviors/registry/app/organisms/std-restaurant-pos.orb +134 -134
  55. package/behaviors/registry/app/organisms/std-social-feed.orb +156 -156
  56. package/behaviors/registry/app/organisms/std-subscription-billing.orb +183 -183
  57. package/behaviors/registry/app/organisms/std-survey.orb +122 -122
  58. package/behaviors/registry/app/organisms/std-trading-dashboard.orb +274 -274
  59. package/behaviors/registry/app/organisms/std-wiki.orb +144 -144
  60. package/dist/behaviors/behaviors-registry.json +1 -1
  61. package/dist/behaviors/registry/app/atoms/std-branching-logic.orb +84 -84
  62. package/dist/behaviors/registry/app/atoms/std-checkin.orb +60 -60
  63. package/dist/behaviors/registry/app/atoms/std-dunning.orb +44 -44
  64. package/dist/behaviors/registry/app/atoms/std-event.orb +62 -62
  65. package/dist/behaviors/registry/app/atoms/std-flag.orb +72 -72
  66. package/dist/behaviors/registry/app/atoms/std-geosearch.orb +29 -29
  67. package/dist/behaviors/registry/app/atoms/std-image-upload-multi.orb +54 -56
  68. package/dist/behaviors/registry/app/atoms/std-invoice.orb +124 -124
  69. package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +58 -58
  70. package/dist/behaviors/registry/app/atoms/std-menu.orb +44 -44
  71. package/dist/behaviors/registry/app/atoms/std-mod-queue.orb +38 -38
  72. package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +56 -56
  73. package/dist/behaviors/registry/app/atoms/std-page-tree.orb +55 -55
  74. package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +66 -66
  75. package/dist/behaviors/registry/app/atoms/std-question-bank.orb +62 -62
  76. package/dist/behaviors/registry/app/atoms/std-rating-review.orb +67 -67
  77. package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +74 -74
  78. package/dist/behaviors/registry/app/atoms/std-response-collector.orb +44 -44
  79. package/dist/behaviors/registry/app/atoms/std-rich-editor.orb +68 -68
  80. package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +49 -49
  81. package/dist/behaviors/registry/app/atoms/std-saved-search.orb +72 -72
  82. package/dist/behaviors/registry/app/atoms/std-signature-capture.orb +86 -86
  83. package/dist/behaviors/registry/app/atoms/std-table-map.orb +46 -46
  84. package/dist/behaviors/registry/app/atoms/std-tag-taxonomy.orb +73 -92
  85. package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +42 -42
  86. package/dist/behaviors/registry/app/atoms/std-thread.orb +59 -59
  87. package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +53 -53
  88. package/dist/behaviors/registry/app/atoms/std-trial.orb +67 -67
  89. package/dist/behaviors/registry/app/atoms/std-version-history.orb +93 -93
  90. package/dist/behaviors/registry/app/atoms/std-vote.orb +40 -40
  91. package/dist/behaviors/registry/app/atoms/std-waitlist.orb +50 -50
  92. package/dist/behaviors/registry/app/atoms/std-work-order.orb +48 -48
  93. package/dist/behaviors/registry/app/organisms/std-api-gateway.orb +201 -201
  94. package/dist/behaviors/registry/app/organisms/std-booking-system.orb +676 -676
  95. package/dist/behaviors/registry/app/organisms/std-cicd-pipeline.orb +285 -285
  96. package/dist/behaviors/registry/app/organisms/std-cms.orb +265 -265
  97. package/dist/behaviors/registry/app/organisms/std-coding-academy.orb +179 -179
  98. package/dist/behaviors/registry/app/organisms/std-crm.orb +258 -258
  99. package/dist/behaviors/registry/app/organisms/std-devops-dashboard.orb +403 -403
  100. package/dist/behaviors/registry/app/organisms/std-ecommerce.orb +681 -681
  101. package/dist/behaviors/registry/app/organisms/std-event-ticketing.orb +217 -217
  102. package/dist/behaviors/registry/app/organisms/std-field-service.orb +190 -190
  103. package/dist/behaviors/registry/app/organisms/std-finance-tracker.orb +205 -205
  104. package/dist/behaviors/registry/app/organisms/std-forum.orb +141 -141
  105. package/dist/behaviors/registry/app/organisms/std-healthcare.orb +540 -540
  106. package/dist/behaviors/registry/app/organisms/std-helpdesk.orb +175 -175
  107. package/dist/behaviors/registry/app/organisms/std-hr-portal.orb +444 -444
  108. package/dist/behaviors/registry/app/organisms/std-iot-dashboard.orb +344 -344
  109. package/dist/behaviors/registry/app/organisms/std-listings.orb +157 -157
  110. package/dist/behaviors/registry/app/organisms/std-lms.orb +422 -422
  111. package/dist/behaviors/registry/app/organisms/std-marketplace.orb +232 -234
  112. package/dist/behaviors/registry/app/organisms/std-project-manager.orb +193 -193
  113. package/dist/behaviors/registry/app/organisms/std-realtime-chat.orb +248 -248
  114. package/dist/behaviors/registry/app/organisms/std-restaurant-pos.orb +134 -134
  115. package/dist/behaviors/registry/app/organisms/std-social-feed.orb +156 -156
  116. package/dist/behaviors/registry/app/organisms/std-subscription-billing.orb +183 -183
  117. package/dist/behaviors/registry/app/organisms/std-survey.orb +122 -122
  118. package/dist/behaviors/registry/app/organisms/std-trading-dashboard.orb +274 -274
  119. package/dist/behaviors/registry/app/organisms/std-wiki.orb +144 -144
  120. package/dist/behaviors-registry.json +1 -1
  121. package/package.json +1 -1
@@ -107,22 +107,25 @@
107
107
  "ref": "AppShell.traits.AppLayout",
108
108
  "name": "ArticleAppLayout",
109
109
  "config": {
110
+ "searchEvent": "ARTICLE_SEARCH",
111
+ "notifications": [],
112
+ "appName": "CmsApp",
110
113
  "contentTrait": "@trait.ArticleCatalog",
111
114
  "navItems": [
112
115
  {
113
- "icon": "layout-grid",
114
116
  "label": "CMS Hub",
115
- "href": "/cms-hub"
117
+ "href": "/cms-hub",
118
+ "icon": "layout-grid"
116
119
  },
117
120
  {
118
- "label": "Articles",
119
121
  "icon": "file-text",
120
- "href": "/articles"
122
+ "href": "/articles",
123
+ "label": "Articles"
121
124
  },
122
125
  {
126
+ "label": "Media",
123
127
  "href": "/media",
124
- "icon": "image",
125
- "label": "Media"
128
+ "icon": "image"
126
129
  },
127
130
  {
128
131
  "label": "Categories",
@@ -130,14 +133,11 @@
130
133
  "icon": "folder"
131
134
  }
132
135
  ],
133
- "notifications": [],
134
- "appName": "CmsApp",
135
- "notificationClickEvent": "ARTICLE_NOTIFICATIONS_OPEN",
136
- "searchEvent": "ARTICLE_SEARCH"
136
+ "notificationClickEvent": "ARTICLE_NOTIFICATIONS_OPEN"
137
137
  },
138
138
  "events": {
139
- "NOTIFY_CLICK": "ARTICLE_NOTIFICATIONS_OPEN",
140
- "SEARCH": "ARTICLE_SEARCH"
139
+ "SEARCH": "ARTICLE_SEARCH",
140
+ "NOTIFY_CLICK": "ARTICLE_NOTIFICATIONS_OPEN"
141
141
  }
142
142
  },
143
143
  {
@@ -220,66 +220,66 @@
220
220
  "render-ui",
221
221
  "main",
222
222
  {
223
- "gap": "lg",
223
+ "type": "stack",
224
+ "direction": "vertical",
224
225
  "children": [
225
226
  {
226
- "type": "stack",
227
- "direction": "horizontal",
228
- "gap": "md",
227
+ "justify": "between",
228
+ "align": "center",
229
229
  "children": [
230
230
  {
231
231
  "children": [
232
232
  {
233
- "name": "file-text",
234
- "type": "icon"
233
+ "type": "icon",
234
+ "name": "file-text"
235
235
  },
236
236
  {
237
- "content": "Articles",
237
+ "type": "typography",
238
238
  "variant": "h2",
239
- "type": "typography"
239
+ "content": "Articles"
240
240
  }
241
241
  ],
242
- "type": "stack",
243
- "direction": "horizontal",
242
+ "gap": "sm",
244
243
  "align": "center",
245
- "gap": "sm"
244
+ "direction": "horizontal",
245
+ "type": "stack"
246
246
  },
247
247
  {
248
- "type": "stack",
249
- "direction": "horizontal",
250
248
  "gap": "sm",
251
249
  "children": [
252
250
  {
251
+ "icon": "plus",
253
252
  "variant": "primary",
254
- "type": "button",
255
253
  "label": "Create Article",
256
- "icon": "plus",
257
- "action": "CREATE"
254
+ "action": "CREATE",
255
+ "type": "button"
258
256
  }
259
- ]
257
+ ],
258
+ "direction": "horizontal",
259
+ "type": "stack"
260
260
  }
261
261
  ],
262
- "align": "center",
263
- "justify": "between"
262
+ "direction": "horizontal",
263
+ "gap": "md",
264
+ "type": "stack"
264
265
  },
265
266
  {
266
267
  "type": "divider"
267
268
  },
268
269
  {
269
- "type": "stack",
270
- "gap": "sm",
271
270
  "direction": "horizontal",
271
+ "gap": "sm",
272
272
  "children": [
273
273
  "@trait.ArticleSearch",
274
274
  "@trait.ArticleFilter"
275
- ]
275
+ ],
276
+ "type": "stack"
276
277
  },
277
278
  "@trait.ArticleStats",
278
279
  "@trait.ArticleGraphs",
279
280
  "@trait.ArticleBrowseList"
280
281
  ],
281
- "type": "stack",
282
- "direction": "vertical"
282
+ "gap": "lg"
283
283
  }
284
284
  ]
285
285
  ]
@@ -298,34 +298,34 @@
298
298
  "render-ui",
299
299
  "main",
300
300
  {
301
- "className": "py-8",
302
- "align": "center",
303
301
  "children": [
304
302
  {
305
303
  "type": "icon",
306
304
  "name": "bell"
307
305
  },
308
306
  {
309
- "type": "typography",
310
307
  "content": "No notifications",
311
- "variant": "h3"
308
+ "variant": "h3",
309
+ "type": "typography"
312
310
  },
313
311
  {
312
+ "type": "typography",
314
313
  "color": "muted",
315
- "content": "You're all caught up.",
316
314
  "variant": "caption",
317
- "type": "typography"
315
+ "content": "You're all caught up."
318
316
  },
319
317
  {
320
- "action": "INIT",
321
318
  "variant": "ghost",
322
- "type": "button",
323
- "label": "Back to articles"
319
+ "label": "Back to articles",
320
+ "action": "INIT",
321
+ "type": "button"
324
322
  }
325
323
  ],
326
324
  "type": "stack",
325
+ "direction": "vertical",
327
326
  "gap": "md",
328
- "direction": "vertical"
327
+ "align": "center",
328
+ "className": "py-8"
329
329
  }
330
330
  ]
331
331
  ]
@@ -339,25 +339,26 @@
339
339
  "name": "ArticleBrowseList",
340
340
  "linkedEntity": "Article",
341
341
  "config": {
342
+ "imageField": "heroImage",
343
+ "gap": "sm",
344
+ "variant": "card",
342
345
  "itemActions": [
343
346
  {
344
- "variant": "ghost",
345
347
  "event": "VIEW",
348
+ "variant": "ghost",
346
349
  "label": "View"
347
350
  },
348
351
  {
349
- "variant": "ghost",
352
+ "event": "EDIT",
350
353
  "label": "Edit",
351
- "event": "EDIT"
354
+ "variant": "ghost"
352
355
  },
353
356
  {
354
357
  "event": "DELETE",
355
- "label": "Delete",
356
- "variant": "danger"
358
+ "variant": "danger",
359
+ "label": "Delete"
357
360
  }
358
361
  ],
359
- "gap": "sm",
360
- "variant": "card",
361
362
  "fields": [
362
363
  {
363
364
  "icon": "file-text",
@@ -377,12 +378,11 @@
377
378
  "variant": "badge"
378
379
  },
379
380
  {
380
- "variant": "caption",
381
- "name": "publishedAt"
381
+ "name": "publishedAt",
382
+ "variant": "caption"
382
383
  }
383
384
  ],
384
- "cols": 1.0,
385
- "imageField": "heroImage"
385
+ "cols": 1.0
386
386
  },
387
387
  "listens": [
388
388
  {
@@ -425,8 +425,8 @@
425
425
  "config": {
426
426
  "facets": [
427
427
  {
428
- "field": "status",
429
428
  "label": "Status",
429
+ "field": "status",
430
430
  "values": [
431
431
  "draft",
432
432
  "published",
@@ -435,8 +435,8 @@
435
435
  },
436
436
  {
437
437
  "label": "Category",
438
- "values": [],
439
- "field": "category"
438
+ "field": "category",
439
+ "values": []
440
440
  }
441
441
  ]
442
442
  }
@@ -451,18 +451,18 @@
451
451
  "label": "Total"
452
452
  },
453
453
  {
454
- "label": "Published",
454
+ "aggregation": "count",
455
455
  "filter": {
456
456
  "status": "published"
457
457
  },
458
- "aggregation": "count"
458
+ "label": "Published"
459
459
  },
460
460
  {
461
+ "aggregation": "count",
461
462
  "filter": {
462
463
  "status": "draft"
463
464
  },
464
- "label": "Drafts",
465
- "aggregation": "count"
465
+ "label": "Drafts"
466
466
  }
467
467
  ]
468
468
  },
@@ -481,8 +481,8 @@
481
481
  "ref": "Graphs.traits.GraphItemGraph",
482
482
  "name": "ArticleGraphs",
483
483
  "config": {
484
- "categoryField": "status",
485
484
  "chartType": "pie",
485
+ "categoryField": "status",
486
486
  "title": "Articles by Status"
487
487
  },
488
488
  "listens": [
@@ -502,6 +502,8 @@
502
502
  "linkedEntity": "Article",
503
503
  "config": {
504
504
  "title": "Create Article",
505
+ "mode": "create",
506
+ "icon": "plus-circle",
505
507
  "fields": [
506
508
  "title",
507
509
  "slug",
@@ -511,9 +513,7 @@
511
513
  "status",
512
514
  "publishedAt",
513
515
  "heroImage"
514
- ],
515
- "mode": "create",
516
- "icon": "plus-circle"
516
+ ]
517
517
  },
518
518
  "events": {
519
519
  "OPEN": "CREATE"
@@ -534,8 +534,6 @@
534
534
  "name": "ArticleEdit",
535
535
  "linkedEntity": "Article",
536
536
  "config": {
537
- "mode": "edit",
538
- "icon": "edit",
539
537
  "fields": [
540
538
  "title",
541
539
  "slug",
@@ -546,6 +544,8 @@
546
544
  "publishedAt",
547
545
  "heroImage"
548
546
  ],
547
+ "mode": "edit",
548
+ "icon": "edit",
549
549
  "title": "Edit Article"
550
550
  },
551
551
  "events": {
@@ -567,6 +567,7 @@
567
567
  "name": "ArticleView",
568
568
  "linkedEntity": "Article",
569
569
  "config": {
570
+ "icon": "eye",
570
571
  "fields": [
571
572
  "title",
572
573
  "slug",
@@ -578,8 +579,7 @@
578
579
  "heroImage"
579
580
  ],
580
581
  "title": "View Article",
581
- "mode": "view",
582
- "icon": "eye"
582
+ "mode": "view"
583
583
  },
584
584
  "events": {
585
585
  "OPEN": "VIEW"
@@ -600,14 +600,14 @@
600
600
  "name": "ArticleDelete",
601
601
  "linkedEntity": "Article",
602
602
  "config": {
603
- "alertMessage": "This action cannot be undone.",
604
603
  "confirmLabel": "Delete",
605
604
  "title": "Delete Article",
605
+ "alertMessage": "This action cannot be undone.",
606
606
  "icon": "alert-triangle"
607
607
  },
608
608
  "events": {
609
- "CONFIRM": "CONFIRM_DELETE",
610
- "REQUEST": "DELETE"
609
+ "REQUEST": "DELETE",
610
+ "CONFIRM": "CONFIRM_DELETE"
611
611
  },
612
612
  "listens": [
613
613
  {
@@ -716,6 +716,8 @@
716
716
  "render-ui",
717
717
  "main",
718
718
  {
719
+ "type": "stack",
720
+ "direction": "vertical",
719
721
  "gap": "sm",
720
722
  "children": [
721
723
  {
@@ -725,14 +727,12 @@
725
727
  },
726
728
  {
727
729
  "type": "button",
728
- "action": "UPLOAD",
729
- "label": "Upload Hero",
730
+ "variant": "secondary",
730
731
  "icon": "upload",
731
- "variant": "secondary"
732
+ "label": "Upload Hero",
733
+ "action": "UPLOAD"
732
734
  }
733
- ],
734
- "type": "stack",
735
- "direction": "vertical"
735
+ ]
736
736
  }
737
737
  ]
738
738
  ]
@@ -1073,7 +1073,6 @@
1073
1073
  "name": "MediaAssetAppLayout",
1074
1074
  "linkedEntity": "MediaAsset",
1075
1075
  "config": {
1076
- "searchEvent": "MEDIA_SEARCH",
1077
1076
  "navItems": [
1078
1077
  {
1079
1078
  "label": "CMS Hub",
@@ -1081,25 +1080,26 @@
1081
1080
  "icon": "layout-grid"
1082
1081
  },
1083
1082
  {
1084
- "href": "/articles",
1083
+ "icon": "file-text",
1085
1084
  "label": "Articles",
1086
- "icon": "file-text"
1085
+ "href": "/articles"
1087
1086
  },
1088
1087
  {
1089
- "href": "/media",
1090
1088
  "icon": "image",
1091
- "label": "Media"
1089
+ "label": "Media",
1090
+ "href": "/media"
1092
1091
  },
1093
1092
  {
1094
- "label": "Categories",
1095
1093
  "href": "/categories",
1094
+ "label": "Categories",
1096
1095
  "icon": "folder"
1097
1096
  }
1098
1097
  ],
1099
- "contentTrait": "@trait.MediaCatalog",
1098
+ "searchEvent": "MEDIA_SEARCH",
1099
+ "notifications": [],
1100
1100
  "notificationClickEvent": "MEDIA_NOTIFICATIONS_OPEN",
1101
- "appName": "CmsApp",
1102
- "notifications": []
1101
+ "contentTrait": "@trait.MediaCatalog",
1102
+ "appName": "CmsApp"
1103
1103
  },
1104
1104
  "events": {
1105
1105
  "SEARCH": "MEDIA_SEARCH",
@@ -1148,74 +1148,48 @@
1148
1148
  "render-ui",
1149
1149
  "main",
1150
1150
  {
1151
- "navItems": [
1152
- {
1153
- "label": "CMS Hub",
1154
- "icon": "layout-grid",
1155
- "href": "/cms-hub"
1156
- },
1157
- {
1158
- "label": "Articles",
1159
- "href": "/articles",
1160
- "icon": "file-text"
1161
- },
1162
- {
1163
- "label": "Media",
1164
- "href": "/media",
1165
- "icon": "image"
1166
- },
1167
- {
1168
- "label": "Categories",
1169
- "href": "/categories",
1170
- "icon": "folder"
1171
- }
1172
- ],
1173
- "appName": "CmsApp",
1151
+ "type": "dashboard-layout",
1174
1152
  "children": [
1175
1153
  {
1176
- "type": "stack",
1177
- "direction": "vertical",
1178
- "gap": "lg",
1179
- "className": "max-w-5xl mx-auto w-full",
1180
1154
  "children": [
1181
1155
  {
1182
- "align": "center",
1156
+ "gap": "md",
1183
1157
  "justify": "between",
1184
- "direction": "horizontal",
1185
1158
  "children": [
1186
1159
  {
1187
1160
  "direction": "horizontal",
1188
- "gap": "sm",
1189
1161
  "type": "stack",
1190
- "align": "center",
1162
+ "gap": "sm",
1191
1163
  "children": [
1192
1164
  {
1193
1165
  "type": "icon",
1194
1166
  "name": "image"
1195
1167
  },
1196
1168
  {
1197
- "variant": "h2",
1198
1169
  "type": "typography",
1170
+ "variant": "h2",
1199
1171
  "content": "Media Library"
1200
1172
  }
1201
- ]
1173
+ ],
1174
+ "align": "center"
1202
1175
  },
1203
1176
  {
1204
- "type": "stack",
1177
+ "gap": "sm",
1205
1178
  "children": [
1206
1179
  {
1207
- "label": "Create MediaAsset",
1208
- "action": "CREATE",
1209
1180
  "icon": "plus",
1210
1181
  "type": "button",
1211
- "variant": "secondary"
1182
+ "label": "Create MediaAsset",
1183
+ "variant": "secondary",
1184
+ "action": "CREATE"
1212
1185
  }
1213
1186
  ],
1214
1187
  "direction": "horizontal",
1215
- "gap": "sm"
1188
+ "type": "stack"
1216
1189
  }
1217
1190
  ],
1218
- "gap": "md",
1191
+ "direction": "horizontal",
1192
+ "align": "center",
1219
1193
  "type": "stack"
1220
1194
  },
1221
1195
  {
@@ -1223,10 +1197,36 @@
1223
1197
  },
1224
1198
  "@trait.MediaUpload",
1225
1199
  "@trait.MediaAssetGallery"
1226
- ]
1200
+ ],
1201
+ "type": "stack",
1202
+ "gap": "lg",
1203
+ "direction": "vertical",
1204
+ "className": "max-w-5xl mx-auto w-full"
1227
1205
  }
1228
1206
  ],
1229
- "type": "dashboard-layout"
1207
+ "appName": "CmsApp",
1208
+ "navItems": [
1209
+ {
1210
+ "href": "/cms-hub",
1211
+ "label": "CMS Hub",
1212
+ "icon": "layout-grid"
1213
+ },
1214
+ {
1215
+ "label": "Articles",
1216
+ "href": "/articles",
1217
+ "icon": "file-text"
1218
+ },
1219
+ {
1220
+ "href": "/media",
1221
+ "icon": "image",
1222
+ "label": "Media"
1223
+ },
1224
+ {
1225
+ "icon": "folder",
1226
+ "label": "Categories",
1227
+ "href": "/categories"
1228
+ }
1229
+ ]
1230
1230
  }
1231
1231
  ]
1232
1232
  ]
@@ -1241,8 +1241,8 @@
1241
1241
  "linkedEntity": "MediaAsset",
1242
1242
  "config": {
1243
1243
  "titleField": "name",
1244
- "gap": "md",
1245
1244
  "cols": 4.0,
1245
+ "gap": "md",
1246
1246
  "imageField": "url"
1247
1247
  },
1248
1248
  "listens": [
@@ -1409,22 +1409,22 @@
1409
1409
  {
1410
1410
  "direction": "vertical",
1411
1411
  "gap": "sm",
1412
- "type": "stack",
1413
- "align": "center",
1414
1412
  "children": [
1415
1413
  {
1416
- "placeholder": "Paste file URL...",
1417
1414
  "type": "input",
1418
- "inputType": "text"
1415
+ "inputType": "text",
1416
+ "placeholder": "Paste file URL..."
1419
1417
  },
1420
1418
  {
1421
1419
  "variant": "primary",
1422
- "label": "Upload File",
1423
- "icon": "upload",
1424
1420
  "type": "button",
1425
- "action": "UPLOAD"
1421
+ "action": "UPLOAD",
1422
+ "icon": "upload",
1423
+ "label": "Upload File"
1426
1424
  }
1427
- ]
1425
+ ],
1426
+ "type": "stack",
1427
+ "align": "center"
1428
1428
  }
1429
1429
  ]
1430
1430
  ]
@@ -1439,9 +1439,9 @@
1439
1439
  "storage",
1440
1440
  "upload",
1441
1441
  {
1442
- "bucket": "media",
1442
+ "acl": "public",
1443
1443
  "file": "@payload.file",
1444
- "acl": "public"
1444
+ "bucket": "media"
1445
1445
  },
1446
1446
  {
1447
1447
  "emit": {
@@ -1477,8 +1477,8 @@
1477
1477
  },
1478
1478
  {
1479
1479
  "emit": {
1480
- "success": "MediaSaved",
1481
- "failure": "MediaUploadFailed"
1480
+ "failure": "MediaUploadFailed",
1481
+ "success": "MediaSaved"
1482
1482
  }
1483
1483
  }
1484
1484
  ],
@@ -1486,35 +1486,35 @@
1486
1486
  "emit",
1487
1487
  "MEDIA_UPLOADED",
1488
1488
  {
1489
- "url": "@payload.url",
1490
- "id": "@payload.id"
1489
+ "id": "@payload.id",
1490
+ "url": "@payload.url"
1491
1491
  }
1492
1492
  ],
1493
1493
  [
1494
1494
  "render-ui",
1495
1495
  "main",
1496
1496
  {
1497
- "direction": "vertical",
1498
1497
  "align": "center",
1499
- "gap": "sm",
1500
- "type": "stack",
1501
1498
  "children": [
1502
1499
  {
1503
- "name": "check-circle",
1504
- "type": "icon"
1500
+ "type": "icon",
1501
+ "name": "check-circle"
1505
1502
  },
1506
1503
  {
1507
- "variant": "success",
1508
1504
  "message": "Upload complete.",
1509
- "type": "alert"
1505
+ "type": "alert",
1506
+ "variant": "success"
1510
1507
  },
1511
1508
  {
1509
+ "type": "button",
1512
1510
  "action": "INIT",
1513
- "label": "Upload Another",
1514
1511
  "variant": "ghost",
1515
- "type": "button"
1512
+ "label": "Upload Another"
1516
1513
  }
1517
- ]
1514
+ ],
1515
+ "type": "stack",
1516
+ "gap": "sm",
1517
+ "direction": "vertical"
1518
1518
  }
1519
1519
  ]
1520
1520
  ]
@@ -1529,9 +1529,9 @@
1529
1529
  "main",
1530
1530
  {
1531
1531
  "type": "error-state",
1532
- "message": "@payload.error",
1532
+ "title": "Upload Failed",
1533
1533
  "onRetry": "INIT",
1534
- "title": "Upload Failed"
1534
+ "message": "@payload.error"
1535
1535
  }
1536
1536
  ]
1537
1537
  ]
@@ -1547,13 +1547,13 @@
1547
1547
  "config": {
1548
1548
  "mode": "create",
1549
1549
  "icon": "plus-circle",
1550
- "title": "Add Media Asset",
1551
1550
  "fields": [
1552
1551
  "name",
1553
1552
  "altText",
1554
1553
  "type",
1555
1554
  "url"
1556
- ]
1555
+ ],
1556
+ "title": "Add Media Asset"
1557
1557
  },
1558
1558
  "events": {
1559
1559
  "OPEN": "CREATE"
@@ -1574,8 +1574,8 @@
1574
1574
  "name": "MediaAssetView",
1575
1575
  "linkedEntity": "MediaAsset",
1576
1576
  "config": {
1577
- "mode": "view",
1578
1577
  "title": "View Media Asset",
1578
+ "mode": "view",
1579
1579
  "icon": "eye",
1580
1580
  "fields": [
1581
1581
  "name",
@@ -1789,33 +1789,33 @@
1789
1789
  "name": "CategoryAppLayout",
1790
1790
  "linkedEntity": "Category",
1791
1791
  "config": {
1792
- "notificationClickEvent": "CATEGORY_NOTIFICATIONS_OPEN",
1793
- "appName": "CmsApp",
1794
1792
  "searchEvent": "CATEGORY_SEARCH",
1795
- "contentTrait": "@trait.CategoryCatalog",
1796
1793
  "notifications": [],
1794
+ "notificationClickEvent": "CATEGORY_NOTIFICATIONS_OPEN",
1797
1795
  "navItems": [
1798
1796
  {
1799
- "icon": "layout-grid",
1800
1797
  "label": "CMS Hub",
1801
- "href": "/cms-hub"
1798
+ "href": "/cms-hub",
1799
+ "icon": "layout-grid"
1802
1800
  },
1803
1801
  {
1804
- "icon": "file-text",
1805
1802
  "href": "/articles",
1803
+ "icon": "file-text",
1806
1804
  "label": "Articles"
1807
1805
  },
1808
1806
  {
1807
+ "label": "Media",
1809
1808
  "icon": "image",
1810
- "href": "/media",
1811
- "label": "Media"
1809
+ "href": "/media"
1812
1810
  },
1813
1811
  {
1814
- "label": "Categories",
1812
+ "href": "/categories",
1815
1813
  "icon": "folder",
1816
- "href": "/categories"
1814
+ "label": "Categories"
1817
1815
  }
1818
- ]
1816
+ ],
1817
+ "contentTrait": "@trait.CategoryCatalog",
1818
+ "appName": "CmsApp"
1819
1819
  },
1820
1820
  "events": {
1821
1821
  "SEARCH": "CATEGORY_SEARCH",
@@ -1864,84 +1864,84 @@
1864
1864
  "render-ui",
1865
1865
  "main",
1866
1866
  {
1867
+ "appName": "CmsApp",
1867
1868
  "type": "dashboard-layout",
1868
1869
  "navItems": [
1869
1870
  {
1870
- "label": "CMS Hub",
1871
1871
  "href": "/cms-hub",
1872
- "icon": "layout-grid"
1872
+ "icon": "layout-grid",
1873
+ "label": "CMS Hub"
1873
1874
  },
1874
1875
  {
1875
1876
  "icon": "file-text",
1876
- "href": "/articles",
1877
- "label": "Articles"
1877
+ "label": "Articles",
1878
+ "href": "/articles"
1878
1879
  },
1879
1880
  {
1881
+ "href": "/media",
1880
1882
  "icon": "image",
1881
- "label": "Media",
1882
- "href": "/media"
1883
+ "label": "Media"
1883
1884
  },
1884
1885
  {
1885
- "href": "/categories",
1886
+ "icon": "folder",
1886
1887
  "label": "Categories",
1887
- "icon": "folder"
1888
+ "href": "/categories"
1888
1889
  }
1889
1890
  ],
1890
1891
  "children": [
1891
1892
  {
1892
- "className": "max-w-5xl mx-auto w-full",
1893
1893
  "gap": "lg",
1894
+ "direction": "vertical",
1895
+ "className": "max-w-5xl mx-auto w-full",
1894
1896
  "children": [
1895
1897
  {
1896
- "direction": "horizontal",
1897
1898
  "gap": "md",
1899
+ "type": "stack",
1900
+ "direction": "horizontal",
1898
1901
  "justify": "between",
1899
- "align": "center",
1900
1902
  "children": [
1901
1903
  {
1902
- "gap": "sm",
1903
1904
  "align": "center",
1904
- "type": "stack",
1905
- "direction": "horizontal",
1906
1905
  "children": [
1907
1906
  {
1908
1907
  "name": "folder",
1909
1908
  "type": "icon"
1910
1909
  },
1911
1910
  {
1912
- "content": "Categories",
1913
1911
  "type": "typography",
1912
+ "content": "Categories",
1914
1913
  "variant": "h2"
1915
1914
  }
1916
- ]
1915
+ ],
1916
+ "gap": "sm",
1917
+ "type": "stack",
1918
+ "direction": "horizontal"
1917
1919
  },
1918
1920
  {
1919
- "direction": "horizontal",
1920
1921
  "type": "stack",
1922
+ "direction": "horizontal",
1921
1923
  "gap": "sm",
1922
1924
  "children": [
1923
1925
  {
1924
1926
  "label": "Create Category",
1925
- "action": "CREATE",
1926
1927
  "type": "button",
1927
- "icon": "plus",
1928
- "variant": "primary"
1928
+ "variant": "primary",
1929
+ "action": "CREATE",
1930
+ "icon": "plus"
1929
1931
  }
1930
1932
  ]
1931
1933
  }
1932
1934
  ],
1933
- "type": "stack"
1935
+ "align": "center"
1934
1936
  },
1935
1937
  {
1936
1938
  "type": "divider"
1937
1939
  },
1938
1940
  "@trait.CategoryBrowseList"
1939
1941
  ],
1940
- "type": "stack",
1941
- "direction": "vertical"
1942
+ "type": "stack"
1942
1943
  }
1943
- ],
1944
- "appName": "CmsApp"
1944
+ ]
1945
1945
  }
1946
1946
  ]
1947
1947
  ]
@@ -1955,12 +1955,11 @@
1955
1955
  "name": "CategoryBrowseList",
1956
1956
  "linkedEntity": "Category",
1957
1957
  "config": {
1958
- "variant": "card",
1959
1958
  "itemActions": [
1960
1959
  {
1961
- "variant": "ghost",
1960
+ "event": "VIEW",
1962
1961
  "label": "View",
1963
- "event": "VIEW"
1962
+ "variant": "ghost"
1964
1963
  },
1965
1964
  {
1966
1965
  "label": "Edit",
@@ -1968,21 +1967,22 @@
1968
1967
  "variant": "ghost"
1969
1968
  },
1970
1969
  {
1971
- "event": "DELETE",
1972
1970
  "variant": "danger",
1973
- "label": "Delete"
1971
+ "label": "Delete",
1972
+ "event": "DELETE"
1974
1973
  }
1975
1974
  ],
1975
+ "variant": "card",
1976
1976
  "fields": [
1977
1977
  {
1978
- "icon": "folder",
1979
1978
  "name": "name",
1979
+ "icon": "folder",
1980
1980
  "variant": "h3"
1981
1981
  },
1982
1982
  {
1983
1983
  "variant": "badge",
1984
- "name": "articleCount",
1985
1984
  "label": "Articles",
1985
+ "name": "articleCount",
1986
1986
  "format": "number"
1987
1987
  },
1988
1988
  {
@@ -1990,8 +1990,8 @@
1990
1990
  "variant": "body"
1991
1991
  },
1992
1992
  {
1993
- "name": "slug",
1994
- "variant": "caption"
1993
+ "variant": "caption",
1994
+ "name": "slug"
1995
1995
  }
1996
1996
  ],
1997
1997
  "cols": 1.0,
@@ -2029,16 +2029,16 @@
2029
2029
  "name": "CategoryCreate",
2030
2030
  "linkedEntity": "Category",
2031
2031
  "config": {
2032
- "icon": "plus-circle",
2033
- "title": "Create Category",
2034
- "mode": "create",
2035
2032
  "fields": [
2036
2033
  "name",
2037
2034
  "slug",
2038
2035
  "description",
2039
2036
  "parentCategory",
2040
2037
  "articleCount"
2041
- ]
2038
+ ],
2039
+ "mode": "create",
2040
+ "title": "Create Category",
2041
+ "icon": "plus-circle"
2042
2042
  },
2043
2043
  "events": {
2044
2044
  "OPEN": "CREATE"
@@ -2060,15 +2060,15 @@
2060
2060
  "linkedEntity": "Category",
2061
2061
  "config": {
2062
2062
  "mode": "edit",
2063
+ "icon": "edit",
2064
+ "title": "Edit Category",
2063
2065
  "fields": [
2064
2066
  "name",
2065
2067
  "slug",
2066
2068
  "description",
2067
2069
  "parentCategory",
2068
2070
  "articleCount"
2069
- ],
2070
- "icon": "edit",
2071
- "title": "Edit Category"
2071
+ ]
2072
2072
  },
2073
2073
  "events": {
2074
2074
  "OPEN": "EDIT"
@@ -2089,8 +2089,7 @@
2089
2089
  "name": "CategoryView",
2090
2090
  "linkedEntity": "Category",
2091
2091
  "config": {
2092
- "icon": "eye",
2093
- "title": "View Category",
2092
+ "mode": "view",
2094
2093
  "fields": [
2095
2094
  "name",
2096
2095
  "slug",
@@ -2098,7 +2097,8 @@
2098
2097
  "parentCategory",
2099
2098
  "articleCount"
2100
2099
  ],
2101
- "mode": "view"
2100
+ "icon": "eye",
2101
+ "title": "View Category"
2102
2102
  },
2103
2103
  "events": {
2104
2104
  "OPEN": "VIEW"
@@ -2424,33 +2424,33 @@
2424
2424
  "name": "CmsHubAppLayout",
2425
2425
  "linkedEntity": "HubArticle",
2426
2426
  "config": {
2427
+ "notifications": [],
2428
+ "notificationClickEvent": "CMS_HUB_NOTIFICATIONS_OPEN",
2427
2429
  "contentTrait": "@trait.CmsHubDisplay",
2428
2430
  "appName": "CmsApp",
2429
2431
  "navItems": [
2430
2432
  {
2431
- "icon": "layout-grid",
2432
2433
  "label": "CMS Hub",
2434
+ "icon": "layout-grid",
2433
2435
  "href": "/cms-hub"
2434
2436
  },
2435
2437
  {
2436
- "label": "Articles",
2437
2438
  "href": "/articles",
2438
- "icon": "file-text"
2439
+ "icon": "file-text",
2440
+ "label": "Articles"
2439
2441
  },
2440
2442
  {
2441
- "href": "/media",
2443
+ "icon": "image",
2442
2444
  "label": "Media",
2443
- "icon": "image"
2445
+ "href": "/media"
2444
2446
  },
2445
2447
  {
2448
+ "label": "Categories",
2446
2449
  "href": "/categories",
2447
- "icon": "folder",
2448
- "label": "Categories"
2450
+ "icon": "folder"
2449
2451
  }
2450
2452
  ],
2451
- "searchEvent": "CMS_HUB_SEARCH",
2452
- "notifications": [],
2453
- "notificationClickEvent": "CMS_HUB_NOTIFICATIONS_OPEN"
2453
+ "searchEvent": "CMS_HUB_SEARCH"
2454
2454
  },
2455
2455
  "events": {
2456
2456
  "SEARCH": "CMS_HUB_SEARCH",
@@ -2483,19 +2483,43 @@
2483
2483
  "render-ui",
2484
2484
  "main",
2485
2485
  {
2486
- "type": "dashboard-layout",
2486
+ "navItems": [
2487
+ {
2488
+ "icon": "layout-grid",
2489
+ "label": "CMS Hub",
2490
+ "href": "/cms-hub"
2491
+ },
2492
+ {
2493
+ "href": "/articles",
2494
+ "label": "Articles",
2495
+ "icon": "file-text"
2496
+ },
2497
+ {
2498
+ "href": "/media",
2499
+ "label": "Media",
2500
+ "icon": "image"
2501
+ },
2502
+ {
2503
+ "icon": "folder",
2504
+ "label": "Categories",
2505
+ "href": "/categories"
2506
+ }
2507
+ ],
2487
2508
  "appName": "CmsApp",
2488
2509
  "children": [
2489
2510
  {
2511
+ "type": "stack",
2512
+ "gap": "lg",
2513
+ "direction": "vertical",
2514
+ "className": "max-w-5xl mx-auto w-full",
2490
2515
  "children": [
2491
2516
  {
2492
2517
  "gap": "sm",
2493
2518
  "align": "center",
2494
- "direction": "horizontal",
2495
2519
  "children": [
2496
2520
  {
2497
- "type": "icon",
2498
- "name": "layout-grid"
2521
+ "name": "layout-grid",
2522
+ "type": "icon"
2499
2523
  },
2500
2524
  {
2501
2525
  "content": "CMS Hub",
@@ -2503,47 +2527,23 @@
2503
2527
  "variant": "h2"
2504
2528
  }
2505
2529
  ],
2530
+ "direction": "horizontal",
2506
2531
  "type": "stack"
2507
2532
  },
2508
2533
  {
2509
2534
  "type": "divider"
2510
2535
  },
2511
2536
  {
2512
- "content": "Recent articles across the platform",
2513
2537
  "type": "typography",
2538
+ "content": "Recent articles across the platform",
2514
2539
  "variant": "caption",
2515
2540
  "color": "muted"
2516
2541
  },
2517
2542
  "@trait.HubBrowseList"
2518
- ],
2519
- "className": "max-w-5xl mx-auto w-full",
2520
- "direction": "vertical",
2521
- "type": "stack",
2522
- "gap": "lg"
2543
+ ]
2523
2544
  }
2524
2545
  ],
2525
- "navItems": [
2526
- {
2527
- "icon": "layout-grid",
2528
- "label": "CMS Hub",
2529
- "href": "/cms-hub"
2530
- },
2531
- {
2532
- "label": "Articles",
2533
- "icon": "file-text",
2534
- "href": "/articles"
2535
- },
2536
- {
2537
- "icon": "image",
2538
- "label": "Media",
2539
- "href": "/media"
2540
- },
2541
- {
2542
- "label": "Categories",
2543
- "icon": "folder",
2544
- "href": "/categories"
2545
- }
2546
- ]
2546
+ "type": "dashboard-layout"
2547
2547
  }
2548
2548
  ]
2549
2549
  ]
@@ -2557,30 +2557,30 @@
2557
2557
  "name": "HubBrowseList",
2558
2558
  "linkedEntity": "HubArticle",
2559
2559
  "config": {
2560
- "variant": "card",
2561
2560
  "fields": [
2562
2561
  {
2562
+ "icon": "file-text",
2563
2563
  "name": "title",
2564
- "variant": "h3",
2565
- "icon": "file-text"
2564
+ "variant": "h3"
2566
2565
  },
2567
2566
  {
2568
2567
  "name": "status",
2569
2568
  "variant": "badge"
2570
2569
  },
2571
2570
  {
2572
- "name": "author",
2573
- "variant": "caption"
2571
+ "variant": "caption",
2572
+ "name": "author"
2574
2573
  },
2575
2574
  {
2576
2575
  "name": "category",
2577
2576
  "variant": "badge"
2578
2577
  }
2579
2578
  ],
2579
+ "variant": "card",
2580
+ "cols": 1.0,
2580
2581
  "imageField": "heroImage",
2581
- "gap": "sm",
2582
2582
  "itemActions": [],
2583
- "cols": 1.0
2583
+ "gap": "sm"
2584
2584
  }
2585
2585
  }
2586
2586
  ],