@almadar/std 8.3.0 → 8.4.1

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 (187) hide show
  1. package/behaviors/registry/agent/atoms/std-agent-activity-log.orb +62 -62
  2. package/behaviors/registry/agent/atoms/std-agent-chat-thread.orb +101 -101
  3. package/behaviors/registry/agent/atoms/std-agent-classifier.orb +119 -114
  4. package/behaviors/registry/agent/atoms/std-agent-completion.orb +103 -103
  5. package/behaviors/registry/agent/atoms/std-agent-context-window.orb +413 -404
  6. package/behaviors/registry/agent/atoms/std-agent-conversation.orb +94 -94
  7. package/behaviors/registry/agent/atoms/std-agent-memory.orb +66 -66
  8. package/behaviors/registry/agent/atoms/std-agent-provider.orb +146 -141
  9. package/behaviors/registry/agent/atoms/std-agent-search.orb +61 -61
  10. package/behaviors/registry/agent/atoms/std-agent-session.orb +109 -109
  11. package/behaviors/registry/agent/atoms/std-agent-step-progress.orb +196 -196
  12. package/behaviors/registry/agent/atoms/std-agent-token-gauge.orb +347 -347
  13. package/behaviors/registry/agent/atoms/std-agent-tool-call.orb +61 -60
  14. package/behaviors/registry/agent/molecules/std-agent-fix-loop.orb +187 -187
  15. package/behaviors/registry/agent/molecules/std-agent-learner.orb +180 -180
  16. package/behaviors/registry/agent/molecules/std-agent-planner.orb +108 -108
  17. package/behaviors/registry/agent/molecules/std-agent-rag.orb +107 -107
  18. package/behaviors/registry/agent/molecules/std-agent-tool-loop.orb +184 -184
  19. package/behaviors/registry/agent/organisms/std-agent-assistant.orb +1130 -1130
  20. package/behaviors/registry/agent/organisms/std-agent-builder.orb +2998 -2998
  21. package/behaviors/registry/agent/organisms/std-agent-pipeline.orb +2135 -2135
  22. package/behaviors/registry/agent/organisms/std-agent-reviewer.orb +1033 -1033
  23. package/behaviors/registry/agent/organisms/std-agent-tutor.orb +784 -784
  24. package/behaviors/registry/app/organisms/std-api-gateway.orb +798 -798
  25. package/behaviors/registry/app/organisms/std-booking-system.orb +1139 -1139
  26. package/behaviors/registry/app/organisms/std-cicd-pipeline.orb +776 -776
  27. package/behaviors/registry/app/organisms/std-cms.orb +469 -469
  28. package/behaviors/registry/app/organisms/std-coding-academy.orb +338 -338
  29. package/behaviors/registry/app/organisms/std-crm.orb +832 -832
  30. package/behaviors/registry/app/organisms/std-devops-dashboard.orb +1350 -1350
  31. package/behaviors/registry/app/organisms/std-ecommerce.orb +975 -975
  32. package/behaviors/registry/app/organisms/std-finance-tracker.orb +573 -573
  33. package/behaviors/registry/app/organisms/std-healthcare.orb +1370 -1370
  34. package/behaviors/registry/app/organisms/std-helpdesk.orb +617 -617
  35. package/behaviors/registry/app/organisms/std-hr-portal.orb +1177 -1177
  36. package/behaviors/registry/app/organisms/std-iot-dashboard.orb +871 -871
  37. package/behaviors/registry/app/organisms/std-lms.orb +839 -839
  38. package/behaviors/registry/app/organisms/std-project-manager.orb +667 -667
  39. package/behaviors/registry/app/organisms/std-realtime-chat.orb +667 -667
  40. package/behaviors/registry/app/organisms/std-social-feed.orb +230 -230
  41. package/behaviors/registry/app/organisms/std-trading-dashboard.orb +682 -682
  42. package/behaviors/registry/core/atoms/std-browse.orb +53 -53
  43. package/behaviors/registry/core/atoms/std-cache-aside.orb +89 -89
  44. package/behaviors/registry/core/atoms/std-calendar.orb +57 -57
  45. package/behaviors/registry/core/atoms/std-circuit-breaker.orb +196 -196
  46. package/behaviors/registry/core/atoms/std-confirmation.orb +19 -19
  47. package/behaviors/registry/core/atoms/std-display.orb +383 -383
  48. package/behaviors/registry/core/atoms/std-drawer.orb +56 -56
  49. package/behaviors/registry/core/atoms/std-filter.orb +42 -42
  50. package/behaviors/registry/core/atoms/std-gallery.orb +54 -54
  51. package/behaviors/registry/core/atoms/std-modal.orb +12 -12
  52. package/behaviors/registry/core/atoms/std-pagination.orb +42 -42
  53. package/behaviors/registry/core/atoms/std-push.orb +42 -42
  54. package/behaviors/registry/core/atoms/std-rate-limiter.orb +179 -179
  55. package/behaviors/registry/core/atoms/std-related.orb +34 -34
  56. package/behaviors/registry/core/atoms/std-search.orb +68 -68
  57. package/behaviors/registry/core/atoms/std-selection.orb +90 -90
  58. package/behaviors/registry/core/atoms/std-tabs.orb +52 -52
  59. package/behaviors/registry/core/molecules/std-cart.orb +45 -45
  60. package/behaviors/registry/core/molecules/std-filtered-list.orb +7 -7
  61. package/behaviors/registry/core/molecules/std-form-advanced.orb +127 -127
  62. package/behaviors/registry/core/molecules/std-list.orb +46 -46
  63. package/behaviors/registry/core/molecules/std-wizard-form.orb +147 -147
  64. package/behaviors/registry/game/atoms/std-collision.orb +121 -121
  65. package/behaviors/registry/game/atoms/std-combat.orb +68 -68
  66. package/behaviors/registry/game/atoms/std-dialogue-box.orb +25 -25
  67. package/behaviors/registry/game/atoms/std-game-canvas2d.orb +48 -48
  68. package/behaviors/registry/game/atoms/std-gameflow.orb +37 -37
  69. package/behaviors/registry/game/atoms/std-movement.orb +306 -306
  70. package/behaviors/registry/game/atoms/std-overworld.orb +68 -68
  71. package/behaviors/registry/game/atoms/std-physics2d.orb +76 -76
  72. package/behaviors/registry/game/atoms/std-quest.orb +124 -124
  73. package/behaviors/registry/game/atoms/std-timer.orb +274 -274
  74. package/behaviors/registry/game/organisms/std-arcade-game.orb +145 -145
  75. package/behaviors/registry/game/organisms/std-logic-training.orb +67 -67
  76. package/behaviors/registry/game/organisms/std-platformer-app.orb +218 -218
  77. package/behaviors/registry/game/organisms/std-puzzle-app.orb +90 -90
  78. package/behaviors/registry/game/organisms/std-rpg-game.orb +372 -372
  79. package/behaviors/registry/game/organisms/std-stem-lab.orb +345 -345
  80. package/behaviors/registry/game/organisms/std-strategy-game.orb +540 -540
  81. package/behaviors/registry/probes/molecules/std-source-scope-probe.orb +14 -14
  82. package/behaviors/registry/service/atoms/std-service-custom-bearer.orb +86 -86
  83. package/behaviors/registry/service/atoms/std-service-email.orb +72 -72
  84. package/behaviors/registry/service/atoms/std-service-github.orb +98 -98
  85. package/behaviors/registry/service/atoms/std-service-llm.orb +118 -118
  86. package/behaviors/registry/service/atoms/std-service-oauth.orb +118 -118
  87. package/behaviors/registry/service/atoms/std-service-redis.orb +103 -103
  88. package/behaviors/registry/service/atoms/std-service-storage.orb +105 -105
  89. package/behaviors/registry/service/atoms/std-service-stripe.orb +95 -95
  90. package/behaviors/registry/service/atoms/std-service-twilio.orb +107 -107
  91. package/behaviors/registry/service/atoms/std-service-youtube.orb +104 -104
  92. package/behaviors/registry/service/organisms/std-service-marketplace.orb +966 -966
  93. package/behaviors/registry/service/organisms/std-service-research-assistant.orb +905 -905
  94. package/dist/behaviors/registry/agent/atoms/std-agent-activity-log.orb +62 -62
  95. package/dist/behaviors/registry/agent/atoms/std-agent-chat-thread.orb +101 -101
  96. package/dist/behaviors/registry/agent/atoms/std-agent-classifier.orb +119 -114
  97. package/dist/behaviors/registry/agent/atoms/std-agent-completion.orb +103 -103
  98. package/dist/behaviors/registry/agent/atoms/std-agent-context-window.orb +413 -404
  99. package/dist/behaviors/registry/agent/atoms/std-agent-conversation.orb +94 -94
  100. package/dist/behaviors/registry/agent/atoms/std-agent-memory.orb +66 -66
  101. package/dist/behaviors/registry/agent/atoms/std-agent-provider.orb +146 -141
  102. package/dist/behaviors/registry/agent/atoms/std-agent-search.orb +61 -61
  103. package/dist/behaviors/registry/agent/atoms/std-agent-session.orb +109 -109
  104. package/dist/behaviors/registry/agent/atoms/std-agent-step-progress.orb +196 -196
  105. package/dist/behaviors/registry/agent/atoms/std-agent-token-gauge.orb +347 -347
  106. package/dist/behaviors/registry/agent/atoms/std-agent-tool-call.orb +61 -60
  107. package/dist/behaviors/registry/agent/molecules/std-agent-fix-loop.orb +187 -187
  108. package/dist/behaviors/registry/agent/molecules/std-agent-learner.orb +180 -180
  109. package/dist/behaviors/registry/agent/molecules/std-agent-planner.orb +108 -108
  110. package/dist/behaviors/registry/agent/molecules/std-agent-rag.orb +107 -107
  111. package/dist/behaviors/registry/agent/molecules/std-agent-tool-loop.orb +184 -184
  112. package/dist/behaviors/registry/agent/organisms/std-agent-assistant.orb +1130 -1130
  113. package/dist/behaviors/registry/agent/organisms/std-agent-builder.orb +2998 -2998
  114. package/dist/behaviors/registry/agent/organisms/std-agent-pipeline.orb +2135 -2135
  115. package/dist/behaviors/registry/agent/organisms/std-agent-reviewer.orb +1033 -1033
  116. package/dist/behaviors/registry/agent/organisms/std-agent-tutor.orb +784 -784
  117. package/dist/behaviors/registry/app/organisms/std-api-gateway.orb +798 -798
  118. package/dist/behaviors/registry/app/organisms/std-booking-system.orb +1139 -1139
  119. package/dist/behaviors/registry/app/organisms/std-cicd-pipeline.orb +776 -776
  120. package/dist/behaviors/registry/app/organisms/std-cms.orb +469 -469
  121. package/dist/behaviors/registry/app/organisms/std-coding-academy.orb +338 -338
  122. package/dist/behaviors/registry/app/organisms/std-crm.orb +832 -832
  123. package/dist/behaviors/registry/app/organisms/std-devops-dashboard.orb +1350 -1350
  124. package/dist/behaviors/registry/app/organisms/std-ecommerce.orb +975 -975
  125. package/dist/behaviors/registry/app/organisms/std-finance-tracker.orb +573 -573
  126. package/dist/behaviors/registry/app/organisms/std-healthcare.orb +1370 -1370
  127. package/dist/behaviors/registry/app/organisms/std-helpdesk.orb +617 -617
  128. package/dist/behaviors/registry/app/organisms/std-hr-portal.orb +1177 -1177
  129. package/dist/behaviors/registry/app/organisms/std-iot-dashboard.orb +871 -871
  130. package/dist/behaviors/registry/app/organisms/std-lms.orb +839 -839
  131. package/dist/behaviors/registry/app/organisms/std-project-manager.orb +667 -667
  132. package/dist/behaviors/registry/app/organisms/std-realtime-chat.orb +667 -667
  133. package/dist/behaviors/registry/app/organisms/std-social-feed.orb +230 -230
  134. package/dist/behaviors/registry/app/organisms/std-trading-dashboard.orb +682 -682
  135. package/dist/behaviors/registry/core/atoms/std-browse.orb +53 -53
  136. package/dist/behaviors/registry/core/atoms/std-cache-aside.orb +89 -89
  137. package/dist/behaviors/registry/core/atoms/std-calendar.orb +57 -57
  138. package/dist/behaviors/registry/core/atoms/std-circuit-breaker.orb +196 -196
  139. package/dist/behaviors/registry/core/atoms/std-confirmation.orb +19 -19
  140. package/dist/behaviors/registry/core/atoms/std-display.orb +383 -383
  141. package/dist/behaviors/registry/core/atoms/std-drawer.orb +56 -56
  142. package/dist/behaviors/registry/core/atoms/std-filter.orb +42 -42
  143. package/dist/behaviors/registry/core/atoms/std-gallery.orb +54 -54
  144. package/dist/behaviors/registry/core/atoms/std-modal.orb +12 -12
  145. package/dist/behaviors/registry/core/atoms/std-pagination.orb +42 -42
  146. package/dist/behaviors/registry/core/atoms/std-push.orb +42 -42
  147. package/dist/behaviors/registry/core/atoms/std-rate-limiter.orb +179 -179
  148. package/dist/behaviors/registry/core/atoms/std-related.orb +34 -34
  149. package/dist/behaviors/registry/core/atoms/std-search.orb +68 -68
  150. package/dist/behaviors/registry/core/atoms/std-selection.orb +90 -90
  151. package/dist/behaviors/registry/core/atoms/std-tabs.orb +52 -52
  152. package/dist/behaviors/registry/core/molecules/std-cart.orb +45 -45
  153. package/dist/behaviors/registry/core/molecules/std-filtered-list.orb +7 -7
  154. package/dist/behaviors/registry/core/molecules/std-form-advanced.orb +127 -127
  155. package/dist/behaviors/registry/core/molecules/std-list.orb +46 -46
  156. package/dist/behaviors/registry/core/molecules/std-wizard-form.orb +147 -147
  157. package/dist/behaviors/registry/game/atoms/std-collision.orb +121 -121
  158. package/dist/behaviors/registry/game/atoms/std-combat.orb +68 -68
  159. package/dist/behaviors/registry/game/atoms/std-dialogue-box.orb +25 -25
  160. package/dist/behaviors/registry/game/atoms/std-game-canvas2d.orb +48 -48
  161. package/dist/behaviors/registry/game/atoms/std-gameflow.orb +37 -37
  162. package/dist/behaviors/registry/game/atoms/std-movement.orb +306 -306
  163. package/dist/behaviors/registry/game/atoms/std-overworld.orb +68 -68
  164. package/dist/behaviors/registry/game/atoms/std-physics2d.orb +76 -76
  165. package/dist/behaviors/registry/game/atoms/std-quest.orb +124 -124
  166. package/dist/behaviors/registry/game/atoms/std-timer.orb +274 -274
  167. package/dist/behaviors/registry/game/organisms/std-arcade-game.orb +145 -145
  168. package/dist/behaviors/registry/game/organisms/std-logic-training.orb +67 -67
  169. package/dist/behaviors/registry/game/organisms/std-platformer-app.orb +218 -218
  170. package/dist/behaviors/registry/game/organisms/std-puzzle-app.orb +90 -90
  171. package/dist/behaviors/registry/game/organisms/std-rpg-game.orb +372 -372
  172. package/dist/behaviors/registry/game/organisms/std-stem-lab.orb +345 -345
  173. package/dist/behaviors/registry/game/organisms/std-strategy-game.orb +540 -540
  174. package/dist/behaviors/registry/probes/molecules/std-source-scope-probe.orb +14 -14
  175. package/dist/behaviors/registry/service/atoms/std-service-custom-bearer.orb +86 -86
  176. package/dist/behaviors/registry/service/atoms/std-service-email.orb +72 -72
  177. package/dist/behaviors/registry/service/atoms/std-service-github.orb +98 -98
  178. package/dist/behaviors/registry/service/atoms/std-service-llm.orb +118 -118
  179. package/dist/behaviors/registry/service/atoms/std-service-oauth.orb +118 -118
  180. package/dist/behaviors/registry/service/atoms/std-service-redis.orb +103 -103
  181. package/dist/behaviors/registry/service/atoms/std-service-storage.orb +105 -105
  182. package/dist/behaviors/registry/service/atoms/std-service-stripe.orb +95 -95
  183. package/dist/behaviors/registry/service/atoms/std-service-twilio.orb +107 -107
  184. package/dist/behaviors/registry/service/atoms/std-service-youtube.orb +104 -104
  185. package/dist/behaviors/registry/service/organisms/std-service-marketplace.orb +966 -966
  186. package/dist/behaviors/registry/service/organisms/std-service-research-assistant.orb +905 -905
  187. package/package.json +1 -1
@@ -418,22 +418,22 @@
418
418
  "render-ui",
419
419
  "main",
420
420
  {
421
- "align": "center",
422
- "gap": "md",
423
- "className": "py-12",
424
- "type": "stack",
425
421
  "children": [
426
422
  {
427
423
  "type": "spinner"
428
424
  },
429
425
  {
430
- "content": "Loading…",
431
- "variant": "caption",
432
426
  "type": "typography",
433
- "color": "muted"
427
+ "content": "Loading…",
428
+ "color": "muted",
429
+ "variant": "caption"
434
430
  }
435
431
  ],
436
- "direction": "vertical"
432
+ "gap": "md",
433
+ "align": "center",
434
+ "direction": "vertical",
435
+ "className": "py-12",
436
+ "type": "stack"
437
437
  }
438
438
  ]
439
439
  ]
@@ -447,103 +447,82 @@
447
447
  "render-ui",
448
448
  "main",
449
449
  {
450
+ "type": "dashboard-layout",
450
451
  "navItems": [
451
452
  {
452
- "label": "Courses",
453
453
  "icon": "book-open",
454
+ "label": "Courses",
454
455
  "href": "/courses"
455
456
  },
456
457
  {
457
458
  "icon": "layout-list",
458
- "href": "/enroll",
459
- "label": "Enroll"
459
+ "label": "Enroll",
460
+ "href": "/enroll"
460
461
  },
461
462
  {
463
+ "label": "Progress",
462
464
  "href": "/progress",
463
- "icon": "layout-list",
464
- "label": "Progress"
465
+ "icon": "layout-list"
465
466
  }
466
467
  ],
467
- "appName": "LMS",
468
- "type": "dashboard-layout",
469
468
  "children": [
470
469
  {
471
- "direction": "vertical",
470
+ "type": "stack",
471
+ "gap": "lg",
472
472
  "children": [
473
473
  {
474
- "justify": "between",
474
+ "type": "stack",
475
+ "gap": "md",
475
476
  "children": [
476
477
  {
477
- "align": "center",
478
- "direction": "horizontal",
478
+ "type": "stack",
479
479
  "gap": "sm",
480
+ "direction": "horizontal",
481
+ "align": "center",
480
482
  "children": [
481
483
  {
482
- "name": "book-open",
483
- "type": "icon"
484
+ "type": "icon",
485
+ "name": "book-open"
484
486
  },
485
487
  {
486
- "type": "typography",
487
488
  "content": "Courses",
489
+ "type": "typography",
488
490
  "variant": "h2"
489
491
  }
490
- ],
491
- "type": "stack"
492
+ ]
492
493
  },
493
494
  {
494
495
  "type": "stack",
495
- "direction": "horizontal",
496
496
  "gap": "sm",
497
+ "direction": "horizontal",
497
498
  "children": [
498
499
  {
499
- "icon": "plus",
500
500
  "type": "button",
501
501
  "variant": "primary",
502
+ "icon": "plus",
502
503
  "label": "Add Course",
503
504
  "action": "CREATE"
504
505
  }
505
506
  ]
506
507
  }
507
508
  ],
508
- "align": "center",
509
509
  "direction": "horizontal",
510
- "gap": "md",
511
- "type": "stack"
510
+ "justify": "between",
511
+ "align": "center"
512
512
  },
513
513
  {
514
514
  "type": "divider"
515
515
  },
516
516
  {
517
- "fields": [],
518
- "cols": 2.0,
519
- "entity": "@payload.data",
520
- "type": "data-grid",
521
- "itemActions": [
522
- {
523
- "label": "View",
524
- "event": "VIEW",
525
- "variant": "ghost"
526
- },
527
- {
528
- "label": "Edit",
529
- "event": "EDIT",
530
- "variant": "ghost"
531
- },
532
- {
533
- "variant": "danger",
534
- "event": "DELETE",
535
- "label": "Delete"
536
- }
537
- ],
538
517
  "columns": [
539
518
  {
519
+ "name": "title",
540
520
  "variant": "h3",
541
- "icon": "book-open",
542
- "name": "title"
521
+ "icon": "book-open"
543
522
  },
544
523
  {
545
- "variant": "badge",
546
- "name": "level"
524
+ "name": "level",
525
+ "variant": "badge"
547
526
  },
548
527
  {
549
528
  "name": "instructor",
@@ -558,14 +537,35 @@
558
537
  "name": "description"
559
538
  }
560
539
  ],
561
- "gap": "md"
540
+ "cols": 2.0,
541
+ "entity": "@payload.data",
542
+ "gap": "md",
543
+ "itemActions": [
544
+ {
545
+ "label": "View",
546
+ "event": "VIEW",
547
+ "variant": "ghost"
548
+ },
549
+ {
550
+ "label": "Edit",
551
+ "event": "EDIT",
552
+ "variant": "ghost"
553
+ },
554
+ {
555
+ "event": "DELETE",
556
+ "label": "Delete",
557
+ "variant": "danger"
558
+ }
559
+ ],
560
+ "fields": [],
561
+ "type": "data-grid"
562
562
  }
563
563
  ],
564
- "className": "max-w-5xl mx-auto w-full",
565
- "type": "stack",
566
- "gap": "lg"
564
+ "direction": "vertical",
565
+ "className": "max-w-5xl mx-auto w-full"
567
566
  }
568
- ]
567
+ ],
568
+ "appName": "LMS"
569
569
  }
570
570
  ]
571
571
  ]
@@ -579,36 +579,36 @@
579
579
  "render-ui",
580
580
  "main",
581
581
  {
582
+ "type": "stack",
583
+ "align": "center",
584
+ "direction": "vertical",
585
+ "gap": "md",
582
586
  "className": "py-12",
583
587
  "children": [
584
588
  {
589
+ "color": "destructive",
585
590
  "type": "icon",
586
- "name": "alert-triangle",
587
- "color": "destructive"
591
+ "name": "alert-triangle"
588
592
  },
589
593
  {
594
+ "content": "Failed to load course",
590
595
  "type": "typography",
591
- "variant": "h3",
592
- "content": "Failed to load course"
596
+ "variant": "h3"
593
597
  },
594
598
  {
595
- "variant": "body",
596
- "type": "typography",
599
+ "content": "@payload.error",
597
600
  "color": "muted",
598
- "content": "@payload.error"
601
+ "variant": "body",
602
+ "type": "typography"
599
603
  },
600
604
  {
605
+ "variant": "primary",
601
606
  "label": "Retry",
602
607
  "icon": "rotate-ccw",
603
- "action": "INIT",
604
- "variant": "primary",
605
- "type": "button"
608
+ "type": "button",
609
+ "action": "INIT"
606
610
  }
607
- ],
608
- "type": "stack",
609
- "direction": "vertical",
610
- "gap": "md",
611
- "align": "center"
611
+ ]
612
612
  }
613
613
  ]
614
614
  ]
@@ -801,43 +801,43 @@
801
801
  "render-ui",
802
802
  "modal",
803
803
  {
804
- "type": "stack",
805
- "gap": "md",
806
- "direction": "vertical",
807
804
  "children": [
808
805
  {
809
- "type": "stack",
806
+ "direction": "horizontal",
807
+ "gap": "sm",
810
808
  "children": [
811
809
  {
812
810
  "type": "icon",
813
811
  "name": "plus-circle"
814
812
  },
815
813
  {
816
- "variant": "h3",
817
814
  "content": "New Course",
818
- "type": "typography"
815
+ "type": "typography",
816
+ "variant": "h3"
819
817
  }
820
818
  ],
821
- "direction": "horizontal",
822
- "gap": "sm"
819
+ "type": "stack"
823
820
  },
824
821
  {
825
822
  "type": "divider"
826
823
  },
827
824
  {
828
- "submitEvent": "SAVE",
829
- "type": "form-section",
830
825
  "mode": "create",
831
- "cancelEvent": "CLOSE",
832
826
  "fields": [
833
827
  "title",
834
828
  "description",
835
829
  "instructor",
836
830
  "duration",
837
831
  "level"
838
- ]
832
+ ],
833
+ "type": "form-section",
834
+ "cancelEvent": "CLOSE",
835
+ "submitEvent": "SAVE"
839
836
  }
840
- ]
837
+ ],
838
+ "type": "stack",
839
+ "direction": "vertical",
840
+ "gap": "md"
841
841
  }
842
842
  ]
843
843
  ]
@@ -1101,12 +1101,8 @@
1101
1101
  "render-ui",
1102
1102
  "modal",
1103
1103
  {
1104
- "gap": "md",
1105
- "direction": "vertical",
1106
- "type": "stack",
1107
1104
  "children": [
1108
1105
  {
1109
- "direction": "horizontal",
1110
1106
  "type": "stack",
1111
1107
  "children": [
1112
1108
  {
@@ -1114,21 +1110,20 @@
1114
1110
  "type": "icon"
1115
1111
  },
1116
1112
  {
1117
- "variant": "h3",
1113
+ "content": "Edit Course",
1118
1114
  "type": "typography",
1119
- "content": "Edit Course"
1115
+ "variant": "h3"
1120
1116
  }
1121
1117
  ],
1118
+ "direction": "horizontal",
1122
1119
  "gap": "sm"
1123
1120
  },
1124
1121
  {
1125
1122
  "type": "divider"
1126
1123
  },
1127
1124
  {
1128
- "type": "form-section",
1129
- "mode": "edit",
1130
- "submitEvent": "SAVE",
1131
1125
  "cancelEvent": "CLOSE",
1126
+ "entity": "@payload.row",
1132
1127
  "fields": [
1133
1128
  "title",
1134
1129
  "description",
@@ -1136,9 +1131,14 @@
1136
1131
  "duration",
1137
1132
  "level"
1138
1133
  ],
1139
- "entity": "@payload.row"
1134
+ "submitEvent": "SAVE",
1135
+ "mode": "edit",
1136
+ "type": "form-section"
1140
1137
  }
1141
- ]
1138
+ ],
1139
+ "type": "stack",
1140
+ "gap": "md",
1141
+ "direction": "vertical"
1142
1142
  }
1143
1143
  ]
1144
1144
  ]
@@ -1336,103 +1336,103 @@
1336
1336
  "render-ui",
1337
1337
  "modal",
1338
1338
  {
1339
- "gap": "md",
1340
1339
  "children": [
1341
1340
  {
1341
+ "direction": "horizontal",
1342
1342
  "gap": "sm",
1343
- "align": "center",
1344
1343
  "type": "stack",
1344
+ "align": "center",
1345
1345
  "children": [
1346
1346
  {
1347
- "type": "icon",
1348
- "name": "eye"
1347
+ "name": "eye",
1348
+ "type": "icon"
1349
1349
  },
1350
1350
  {
1351
- "variant": "h3",
1352
1351
  "type": "typography",
1352
+ "variant": "h3",
1353
1353
  "content": "@entity.title"
1354
1354
  }
1355
- ],
1356
- "direction": "horizontal"
1355
+ ]
1357
1356
  },
1358
1357
  {
1359
1358
  "type": "divider"
1360
1359
  },
1361
1360
  {
1362
1361
  "type": "stack",
1362
+ "gap": "md",
1363
+ "direction": "horizontal",
1363
1364
  "children": [
1364
1365
  {
1365
- "type": "typography",
1366
1366
  "content": "Title",
1367
+ "type": "typography",
1367
1368
  "variant": "caption"
1368
1369
  },
1369
1370
  {
1371
+ "type": "typography",
1370
1372
  "variant": "body",
1371
- "content": "@entity.title",
1372
- "type": "typography"
1373
+ "content": "@entity.title"
1373
1374
  }
1374
- ],
1375
- "direction": "horizontal",
1376
- "gap": "md"
1375
+ ]
1377
1376
  },
1378
1377
  {
1378
+ "gap": "md",
1379
1379
  "children": [
1380
1380
  {
1381
1381
  "variant": "caption",
1382
- "content": "Description",
1383
- "type": "typography"
1382
+ "type": "typography",
1383
+ "content": "Description"
1384
1384
  },
1385
1385
  {
1386
- "type": "typography",
1387
1386
  "content": "@entity.description",
1388
- "variant": "body"
1387
+ "variant": "body",
1388
+ "type": "typography"
1389
1389
  }
1390
1390
  ],
1391
- "gap": "md",
1392
- "direction": "horizontal",
1393
- "type": "stack"
1391
+ "type": "stack",
1392
+ "direction": "horizontal"
1394
1393
  },
1395
1394
  {
1395
+ "direction": "horizontal",
1396
+ "type": "stack",
1397
+ "gap": "md",
1396
1398
  "children": [
1397
1399
  {
1398
- "type": "typography",
1400
+ "content": "Instructor",
1399
1401
  "variant": "caption",
1400
- "content": "Instructor"
1402
+ "type": "typography"
1401
1403
  },
1402
1404
  {
1403
1405
  "content": "@entity.instructor",
1404
- "variant": "body",
1405
- "type": "typography"
1406
+ "type": "typography",
1407
+ "variant": "body"
1406
1408
  }
1407
- ],
1408
- "direction": "horizontal",
1409
- "type": "stack",
1410
- "gap": "md"
1409
+ ]
1411
1410
  },
1412
1411
  {
1413
1412
  "children": [
1414
1413
  {
1415
- "content": "Duration",
1416
1414
  "variant": "caption",
1415
+ "content": "Duration",
1417
1416
  "type": "typography"
1418
1417
  },
1419
1418
  {
1420
- "content": "@entity.duration",
1421
1419
  "type": "typography",
1420
+ "content": "@entity.duration",
1422
1421
  "variant": "body"
1423
1422
  }
1424
1423
  ],
1425
- "direction": "horizontal",
1426
1424
  "type": "stack",
1425
+ "direction": "horizontal",
1427
1426
  "gap": "md"
1428
1427
  },
1429
1428
  {
1430
- "type": "stack",
1431
1429
  "gap": "md",
1430
+ "direction": "horizontal",
1431
+ "type": "stack",
1432
1432
  "children": [
1433
1433
  {
1434
- "content": "Level",
1435
1434
  "variant": "caption",
1435
+ "content": "Level",
1436
1436
  "type": "typography"
1437
1437
  },
1438
1438
  {
@@ -1440,36 +1440,36 @@
1440
1440
  "variant": "body",
1441
1441
  "content": "@entity.level"
1442
1442
  }
1443
- ],
1444
- "direction": "horizontal"
1443
+ ]
1445
1444
  },
1446
1445
  {
1447
1446
  "type": "divider"
1448
1447
  },
1449
1448
  {
1450
1449
  "gap": "sm",
1451
- "justify": "end",
1452
- "direction": "horizontal",
1453
- "type": "stack",
1454
1450
  "children": [
1455
1451
  {
1456
- "label": "Edit",
1457
- "icon": "edit",
1458
- "type": "button",
1459
1452
  "variant": "primary",
1460
- "action": "EDIT"
1453
+ "action": "EDIT",
1454
+ "icon": "edit",
1455
+ "label": "Edit",
1456
+ "type": "button"
1461
1457
  },
1462
1458
  {
1463
- "label": "Close",
1459
+ "type": "button",
1464
1460
  "action": "CLOSE",
1465
- "variant": "ghost",
1466
- "type": "button"
1461
+ "label": "Close",
1462
+ "variant": "ghost"
1467
1463
  }
1468
- ]
1464
+ ],
1465
+ "direction": "horizontal",
1466
+ "type": "stack",
1467
+ "justify": "end"
1469
1468
  }
1470
1469
  ],
1471
1470
  "type": "stack",
1472
- "direction": "vertical"
1471
+ "direction": "vertical",
1472
+ "gap": "md"
1473
1473
  }
1474
1474
  ]
1475
1475
  ]
@@ -1704,25 +1704,21 @@
1704
1704
  "fetch",
1705
1705
  "Course",
1706
1706
  {
1707
+ "id": "@payload.id",
1707
1708
  "emit": {
1708
1709
  "failure": "CourseLoadFailed",
1709
1710
  "success": "CourseLoaded"
1710
- },
1711
- "id": "@payload.id"
1711
+ }
1712
1712
  }
1713
1713
  ],
1714
1714
  [
1715
1715
  "render-ui",
1716
1716
  "modal",
1717
1717
  {
1718
- "direction": "vertical",
1719
- "gap": "md",
1720
1718
  "type": "stack",
1719
+ "gap": "md",
1721
1720
  "children": [
1722
1721
  {
1723
- "direction": "horizontal",
1724
- "type": "stack",
1725
- "align": "center",
1726
1722
  "gap": "sm",
1727
1723
  "children": [
1728
1724
  {
@@ -1734,20 +1730,21 @@
1734
1730
  "variant": "h3",
1735
1731
  "type": "typography"
1736
1732
  }
1737
- ]
1733
+ ],
1734
+ "align": "center",
1735
+ "type": "stack",
1736
+ "direction": "horizontal"
1738
1737
  },
1739
1738
  {
1740
1739
  "type": "divider"
1741
1740
  },
1742
1741
  {
1743
- "type": "alert",
1744
1742
  "variant": "error",
1743
+ "type": "alert",
1745
1744
  "message": "This action cannot be undone."
1746
1745
  },
1747
1746
  {
1748
- "justify": "end",
1749
1747
  "type": "stack",
1750
- "direction": "horizontal",
1751
1748
  "children": [
1752
1749
  {
1753
1750
  "variant": "ghost",
@@ -1758,14 +1755,17 @@
1758
1755
  {
1759
1756
  "label": "Delete",
1760
1757
  "type": "button",
1758
+ "action": "CONFIRM_DELETE",
1761
1759
  "variant": "danger",
1762
- "icon": "check",
1763
- "action": "CONFIRM_DELETE"
1760
+ "icon": "check"
1764
1761
  }
1765
1762
  ],
1766
- "gap": "sm"
1763
+ "direction": "horizontal",
1764
+ "gap": "sm",
1765
+ "justify": "end"
1767
1766
  }
1768
- ]
1767
+ ],
1768
+ "direction": "vertical"
1769
1769
  }
1770
1770
  ]
1771
1771
  ]
@@ -1782,8 +1782,8 @@
1782
1782
  "@entity.pendingId",
1783
1783
  {
1784
1784
  "emit": {
1785
- "failure": "CourseDeleteFailed",
1786
- "success": "CourseDeleted"
1785
+ "success": "CourseDeleted",
1786
+ "failure": "CourseDeleteFailed"
1787
1787
  }
1788
1788
  }
1789
1789
  ],
@@ -2100,8 +2100,8 @@
2100
2100
  "Enrollment",
2101
2101
  {
2102
2102
  "emit": {
2103
- "failure": "EnrollmentLoadFailed",
2104
- "success": "EnrollmentLoaded"
2103
+ "success": "EnrollmentLoaded",
2104
+ "failure": "EnrollmentLoadFailed"
2105
2105
  }
2106
2106
  }
2107
2107
  ],
@@ -2109,102 +2109,102 @@
2109
2109
  "render-ui",
2110
2110
  "main",
2111
2111
  {
2112
- "appName": "LMS",
2113
- "navItems": [
2114
- {
2115
- "label": "Courses",
2116
- "icon": "book-open",
2117
- "href": "/courses"
2118
- },
2119
- {
2120
- "label": "Enroll",
2121
- "href": "/enroll",
2122
- "icon": "layout-list"
2123
- },
2124
- {
2125
- "label": "Progress",
2126
- "href": "/progress",
2127
- "icon": "layout-list"
2128
- }
2129
- ],
2130
- "type": "dashboard-layout",
2131
- "children": [
2112
+ "children": [
2132
2113
  {
2114
+ "type": "container",
2115
+ "maxWidth": "lg",
2133
2116
  "padding": "lg",
2134
2117
  "children": [
2135
2118
  {
2136
- "gap": "lg",
2137
2119
  "type": "stack",
2138
- "direction": "vertical",
2120
+ "gap": "lg",
2139
2121
  "children": [
2140
2122
  {
2141
- "type": "stack",
2142
- "align": "center",
2123
+ "direction": "horizontal",
2124
+ "gap": "sm",
2143
2125
  "children": [
2144
2126
  {
2145
- "type": "icon",
2146
- "name": "user-plus"
2127
+ "name": "user-plus",
2128
+ "type": "icon"
2147
2129
  },
2148
2130
  {
2149
- "content": "Course Enrollment",
2150
2131
  "variant": "h2",
2151
- "type": "typography"
2132
+ "type": "typography",
2133
+ "content": "Course Enrollment"
2152
2134
  }
2153
2135
  ],
2154
- "gap": "sm",
2155
- "direction": "horizontal"
2136
+ "align": "center",
2137
+ "type": "stack"
2156
2138
  },
2157
2139
  {
2158
- "count": 2.0,
2159
2140
  "currentIndex": 0.0,
2160
- "type": "progress-dots"
2141
+ "type": "progress-dots",
2142
+ "count": 2.0
2161
2143
  },
2162
2144
  {
2145
+ "type": "wizard-progress",
2163
2146
  "steps": [
2164
2147
  "Student Info",
2165
2148
  "Course Selection"
2166
2149
  ],
2167
- "currentStep": 0.0,
2168
- "type": "wizard-progress"
2150
+ "currentStep": 0.0
2169
2151
  },
2170
2152
  {
2171
2153
  "type": "divider"
2172
2154
  },
2173
2155
  {
2174
- "type": "typography",
2175
2156
  "content": "Student Info",
2176
- "variant": "h3"
2157
+ "variant": "h3",
2158
+ "type": "typography"
2177
2159
  },
2178
2160
  {
2179
- "type": "form-section",
2180
- "mode": "create",
2181
2161
  "cancelEvent": "INIT",
2182
2162
  "fields": [
2183
2163
  "studentName",
2184
2164
  "email"
2185
2165
  ],
2166
+ "type": "form-section",
2167
+ "mode": "create",
2186
2168
  "submitEvent": "NEXT"
2187
2169
  },
2188
2170
  {
2189
- "type": "stack",
2190
2171
  "direction": "horizontal",
2172
+ "justify": "end",
2191
2173
  "children": [
2192
2174
  {
2193
- "action": "NEXT",
2194
2175
  "type": "button",
2195
2176
  "label": "Next",
2196
- "variant": "primary",
2197
- "icon": "arrow-right"
2177
+ "action": "NEXT",
2178
+ "icon": "arrow-right",
2179
+ "variant": "primary"
2198
2180
  }
2199
2181
  ],
2200
- "justify": "end",
2182
+ "type": "stack",
2201
2183
  "gap": "sm"
2202
2184
  }
2203
- ]
2185
+ ],
2186
+ "direction": "vertical"
2204
2187
  }
2205
- ],
2206
- "maxWidth": "lg",
2207
- "type": "container"
2188
+ ]
2189
+ }
2190
+ ],
2191
+ "type": "dashboard-layout",
2192
+ "appName": "LMS",
2193
+ "navItems": [
2194
+ {
2195
+ "icon": "book-open",
2196
+ "href": "/courses",
2197
+ "label": "Courses"
2198
+ },
2199
+ {
2200
+ "label": "Enroll",
2201
+ "href": "/enroll",
2202
+ "icon": "layout-list"
2203
+ },
2204
+ {
2205
+ "label": "Progress",
2206
+ "href": "/progress",
2207
+ "icon": "layout-list"
2208
2208
  }
2209
2209
  ]
2210
2210
  }
@@ -2221,8 +2221,8 @@
2221
2221
  "Enrollment",
2222
2222
  {
2223
2223
  "emit": {
2224
- "failure": "EnrollmentLoadFailed",
2225
- "success": "EnrollmentLoaded"
2224
+ "success": "EnrollmentLoaded",
2225
+ "failure": "EnrollmentLoadFailed"
2226
2226
  }
2227
2227
  }
2228
2228
  ],
@@ -2230,19 +2230,37 @@
2230
2230
  "render-ui",
2231
2231
  "main",
2232
2232
  {
2233
+ "navItems": [
2234
+ {
2235
+ "icon": "book-open",
2236
+ "href": "/courses",
2237
+ "label": "Courses"
2238
+ },
2239
+ {
2240
+ "icon": "layout-list",
2241
+ "href": "/enroll",
2242
+ "label": "Enroll"
2243
+ },
2244
+ {
2245
+ "icon": "layout-list",
2246
+ "href": "/progress",
2247
+ "label": "Progress"
2248
+ }
2249
+ ],
2233
2250
  "type": "dashboard-layout",
2234
2251
  "children": [
2235
2252
  {
2236
- "type": "container",
2237
- "padding": "lg",
2238
2253
  "maxWidth": "lg",
2254
+ "padding": "lg",
2255
+ "type": "container",
2239
2256
  "children": [
2240
2257
  {
2241
- "type": "stack",
2242
- "direction": "vertical",
2243
2258
  "gap": "lg",
2259
+ "direction": "vertical",
2260
+ "type": "stack",
2244
2261
  "children": [
2245
2262
  {
2263
+ "align": "center",
2246
2264
  "children": [
2247
2265
  {
2248
2266
  "type": "icon",
@@ -2254,10 +2272,9 @@
2254
2272
  "content": "Course Enrollment"
2255
2273
  }
2256
2274
  ],
2257
- "direction": "horizontal",
2258
- "align": "center",
2275
+ "type": "stack",
2259
2276
  "gap": "sm",
2260
- "type": "stack"
2277
+ "direction": "horizontal"
2261
2278
  },
2262
2279
  {
2263
2280
  "count": 2.0,
@@ -2265,75 +2282,58 @@
2265
2282
  "type": "progress-dots"
2266
2283
  },
2267
2284
  {
2268
- "currentStep": 1.0,
2269
2285
  "steps": [
2270
2286
  "Student Info",
2271
2287
  "Course Selection"
2272
2288
  ],
2273
- "type": "wizard-progress"
2289
+ "type": "wizard-progress",
2290
+ "currentStep": 1.0
2274
2291
  },
2275
2292
  {
2276
2293
  "type": "divider"
2277
2294
  },
2278
2295
  {
2279
- "content": "Course Selection",
2296
+ "variant": "h3",
2280
2297
  "type": "typography",
2281
- "variant": "h3"
2298
+ "content": "Course Selection"
2282
2299
  },
2283
2300
  {
2284
- "cancelEvent": "PREV",
2285
- "type": "form-section",
2286
- "submitEvent": "NEXT",
2287
2301
  "mode": "create",
2288
2302
  "fields": [
2289
2303
  "courseId"
2290
- ]
2304
+ ],
2305
+ "submitEvent": "NEXT",
2306
+ "cancelEvent": "PREV",
2307
+ "type": "form-section"
2291
2308
  },
2292
2309
  {
2293
- "gap": "sm",
2294
2310
  "direction": "horizontal",
2311
+ "type": "stack",
2312
+ "gap": "sm",
2295
2313
  "justify": "end",
2296
2314
  "children": [
2297
2315
  {
2298
2316
  "label": "Back",
2299
- "icon": "arrow-left",
2300
2317
  "type": "button",
2318
+ "icon": "arrow-left",
2301
2319
  "action": "PREV",
2302
2320
  "variant": "ghost"
2303
2321
  },
2304
2322
  {
2305
2323
  "label": "Next",
2306
- "type": "button",
2324
+ "variant": "primary",
2307
2325
  "icon": "arrow-right",
2308
2326
  "action": "NEXT",
2309
- "variant": "primary"
2327
+ "type": "button"
2310
2328
  }
2311
- ],
2312
- "type": "stack"
2329
+ ]
2313
2330
  }
2314
2331
  ]
2315
2332
  }
2316
2333
  ]
2317
2334
  }
2318
2335
  ],
2319
- "appName": "LMS",
2320
- "navItems": [
2321
- {
2322
- "label": "Courses",
2323
- "href": "/courses",
2324
- "icon": "book-open"
2325
- },
2326
- {
2327
- "icon": "layout-list",
2328
- "href": "/enroll",
2329
- "label": "Enroll"
2330
- },
2331
- {
2332
- "icon": "layout-list",
2333
- "href": "/progress",
2334
- "label": "Progress"
2335
- }
2336
- ]
2336
+ "appName": "LMS"
2337
2337
  }
2338
2338
  ]
2339
2339
  ]
@@ -2357,27 +2357,28 @@
2357
2357
  "render-ui",
2358
2358
  "main",
2359
2359
  {
2360
- "type": "dashboard-layout",
2361
- "appName": "LMS",
2362
2360
  "children": [
2363
2361
  {
2362
+ "direction": "vertical",
2363
+ "gap": "lg",
2364
+ "type": "stack",
2364
2365
  "children": [
2365
2366
  {
2366
2367
  "type": "stack",
2368
+ "direction": "horizontal",
2369
+ "align": "center",
2367
2370
  "children": [
2368
2371
  {
2369
2372
  "type": "icon",
2370
2373
  "name": "user-plus"
2371
2374
  },
2372
2375
  {
2376
+ "content": "Course Enrollment",
2373
2377
  "variant": "h2",
2374
- "type": "typography",
2375
- "content": "Course Enrollment"
2378
+ "type": "typography"
2376
2379
  }
2377
2380
  ],
2378
- "direction": "horizontal",
2379
- "gap": "sm",
2380
- "align": "center"
2381
+ "gap": "sm"
2381
2382
  },
2382
2383
  {
2383
2384
  "type": "badge",
@@ -2388,138 +2389,137 @@
2388
2389
  "Student Info",
2389
2390
  "Course Selection"
2390
2391
  ],
2391
- "currentStep": 2.0,
2392
- "type": "wizard-progress"
2392
+ "type": "wizard-progress",
2393
+ "currentStep": 2.0
2393
2394
  },
2394
2395
  {
2395
2396
  "type": "divider"
2396
2397
  },
2397
2398
  {
2398
- "type": "stack",
2399
2399
  "gap": "sm",
2400
2400
  "children": [
2401
2401
  {
2402
2402
  "type": "stack",
2403
+ "direction": "horizontal",
2404
+ "gap": "md",
2405
+ "justify": "between",
2403
2406
  "children": [
2404
2407
  {
2405
- "content": "Student Name",
2406
2408
  "variant": "caption",
2409
+ "content": "Student Name",
2407
2410
  "type": "typography"
2408
2411
  },
2409
2412
  {
2410
- "type": "typography",
2411
2413
  "variant": "body",
2412
- "content": "@entity.studentName"
2414
+ "content": "@entity.studentName",
2415
+ "type": "typography"
2413
2416
  }
2414
- ],
2415
- "justify": "between",
2416
- "gap": "md",
2417
- "direction": "horizontal"
2417
+ ]
2418
2418
  },
2419
2419
  {
2420
2420
  "gap": "md",
2421
+ "type": "stack",
2422
+ "justify": "between",
2423
+ "direction": "horizontal",
2421
2424
  "children": [
2422
2425
  {
2423
- "content": "Email",
2424
2426
  "type": "typography",
2425
- "variant": "caption"
2427
+ "variant": "caption",
2428
+ "content": "Email"
2426
2429
  },
2427
2430
  {
2428
- "variant": "body",
2431
+ "content": "@entity.email",
2429
2432
  "type": "typography",
2430
- "content": "@entity.email"
2433
+ "variant": "body"
2431
2434
  }
2432
- ],
2433
- "justify": "between",
2434
- "direction": "horizontal",
2435
- "type": "stack"
2435
+ ]
2436
2436
  },
2437
2437
  {
2438
+ "direction": "horizontal",
2439
+ "type": "stack",
2438
2440
  "children": [
2439
2441
  {
2440
- "content": "Course Id",
2441
2442
  "type": "typography",
2443
+ "content": "Course Id",
2442
2444
  "variant": "caption"
2443
2445
  },
2444
2446
  {
2445
- "variant": "body",
2446
2447
  "content": "@entity.courseId",
2448
+ "variant": "body",
2447
2449
  "type": "typography"
2448
2450
  }
2449
2451
  ],
2450
2452
  "justify": "between",
2451
- "gap": "md",
2452
- "type": "stack",
2453
- "direction": "horizontal"
2453
+ "gap": "md"
2454
2454
  },
2455
2455
  {
2456
+ "gap": "md",
2456
2457
  "justify": "between",
2458
+ "direction": "horizontal",
2457
2459
  "children": [
2458
2460
  {
2459
- "variant": "caption",
2460
2461
  "type": "typography",
2461
- "content": "Enrolled At"
2462
+ "content": "Enrolled At",
2463
+ "variant": "caption"
2462
2464
  },
2463
2465
  {
2464
- "variant": "body",
2465
2466
  "type": "typography",
2467
+ "variant": "body",
2466
2468
  "content": "@entity.enrolledAt"
2467
2469
  }
2468
2470
  ],
2469
- "gap": "md",
2470
- "direction": "horizontal",
2471
2471
  "type": "stack"
2472
2472
  },
2473
2473
  {
2474
- "direction": "horizontal",
2475
2474
  "children": [
2476
2475
  {
2477
- "variant": "caption",
2478
2476
  "content": "Status",
2477
+ "variant": "caption",
2479
2478
  "type": "typography"
2480
2479
  },
2481
2480
  {
2482
- "type": "typography",
2481
+ "variant": "body",
2483
2482
  "content": "@entity.status",
2484
- "variant": "body"
2483
+ "type": "typography"
2485
2484
  }
2486
2485
  ],
2487
- "type": "stack",
2488
2486
  "justify": "between",
2487
+ "type": "stack",
2488
+ "direction": "horizontal",
2489
2489
  "gap": "md"
2490
2490
  }
2491
2491
  ],
2492
+ "type": "stack",
2492
2493
  "direction": "vertical"
2493
2494
  },
2494
2495
  {
2495
- "currentStep": 2.0,
2496
- "showNext": false,
2496
+ "showComplete": true,
2497
2497
  "totalSteps": 3.0,
2498
+ "currentStep": 2.0,
2498
2499
  "showBack": true,
2499
2500
  "type": "wizard-navigation",
2500
- "showComplete": true
2501
+ "showNext": false
2501
2502
  }
2502
- ],
2503
- "direction": "vertical",
2504
- "type": "stack",
2505
- "gap": "lg"
2503
+ ]
2506
2504
  }
2507
2505
  ],
2506
+ "type": "dashboard-layout",
2507
+ "appName": "LMS",
2508
2508
  "navItems": [
2509
2509
  {
2510
- "label": "Courses",
2511
2510
  "href": "/courses",
2511
+ "label": "Courses",
2512
2512
  "icon": "book-open"
2513
2513
  },
2514
2514
  {
2515
- "label": "Enroll",
2515
+ "icon": "layout-list",
2516
2516
  "href": "/enroll",
2517
- "icon": "layout-list"
2517
+ "label": "Enroll"
2518
2518
  },
2519
2519
  {
2520
- "label": "Progress",
2521
2520
  "href": "/progress",
2522
- "icon": "layout-list"
2521
+ "icon": "layout-list",
2522
+ "label": "Progress"
2523
2523
  }
2524
2524
  ]
2525
2525
  }
@@ -2536,8 +2536,8 @@
2536
2536
  "Enrollment",
2537
2537
  {
2538
2538
  "emit": {
2539
- "success": "EnrollmentLoaded",
2540
- "failure": "EnrollmentLoadFailed"
2539
+ "failure": "EnrollmentLoadFailed",
2540
+ "success": "EnrollmentLoaded"
2541
2541
  }
2542
2542
  }
2543
2543
  ],
@@ -2545,13 +2545,11 @@
2545
2545
  "render-ui",
2546
2546
  "main",
2547
2547
  {
2548
- "type": "dashboard-layout",
2549
- "appName": "LMS",
2550
2548
  "navItems": [
2551
2549
  {
2552
- "href": "/courses",
2553
2550
  "icon": "book-open",
2554
- "label": "Courses"
2551
+ "label": "Courses",
2552
+ "href": "/courses"
2555
2553
  },
2556
2554
  {
2557
2555
  "icon": "layout-list",
@@ -2559,88 +2557,90 @@
2559
2557
  "label": "Enroll"
2560
2558
  },
2561
2559
  {
2560
+ "label": "Progress",
2562
2561
  "href": "/progress",
2563
- "icon": "layout-list",
2564
- "label": "Progress"
2562
+ "icon": "layout-list"
2565
2563
  }
2566
2564
  ],
2565
+ "type": "dashboard-layout",
2566
+ "appName": "LMS",
2567
2567
  "children": [
2568
2568
  {
2569
- "type": "container",
2570
2569
  "maxWidth": "lg",
2571
2570
  "padding": "lg",
2572
2571
  "children": [
2573
2572
  {
2573
+ "type": "stack",
2574
+ "gap": "lg",
2574
2575
  "children": [
2575
2576
  {
2576
- "align": "center",
2577
2577
  "children": [
2578
2578
  {
2579
2579
  "name": "user-plus",
2580
2580
  "type": "icon"
2581
2581
  },
2582
2582
  {
2583
+ "type": "typography",
2583
2584
  "content": "Course Enrollment",
2584
- "variant": "h2",
2585
- "type": "typography"
2585
+ "variant": "h2"
2586
2586
  }
2587
2587
  ],
2588
2588
  "direction": "horizontal",
2589
- "type": "stack",
2590
- "gap": "sm"
2589
+ "gap": "sm",
2590
+ "align": "center",
2591
+ "type": "stack"
2591
2592
  },
2592
2593
  {
2594
+ "currentIndex": 0.0,
2593
2595
  "type": "progress-dots",
2594
- "count": 2.0,
2595
- "currentIndex": 0.0
2596
+ "count": 2.0
2596
2597
  },
2597
2598
  {
2598
2599
  "type": "wizard-progress",
2600
+ "currentStep": 0.0,
2599
2601
  "steps": [
2600
2602
  "Student Info",
2601
2603
  "Course Selection"
2602
- ],
2603
- "currentStep": 0.0
2604
+ ]
2604
2605
  },
2605
2606
  {
2606
2607
  "type": "divider"
2607
2608
  },
2608
2609
  {
2609
- "content": "Student Info",
2610
2610
  "type": "typography",
2611
- "variant": "h3"
2611
+ "variant": "h3",
2612
+ "content": "Student Info"
2612
2613
  },
2613
2614
  {
2614
- "submitEvent": "NEXT",
2615
2615
  "type": "form-section",
2616
+ "submitEvent": "NEXT",
2617
+ "cancelEvent": "INIT",
2616
2618
  "fields": [
2617
2619
  "studentName",
2618
2620
  "email"
2619
2621
  ],
2620
- "mode": "create",
2621
- "cancelEvent": "INIT"
2622
+ "mode": "create"
2622
2623
  },
2623
2624
  {
2625
+ "type": "stack",
2626
+ "justify": "end",
2624
2627
  "children": [
2625
2628
  {
2626
- "variant": "primary",
2627
2629
  "label": "Next",
2628
- "icon": "arrow-right",
2630
+ "variant": "primary",
2631
+ "action": "NEXT",
2629
2632
  "type": "button",
2630
- "action": "NEXT"
2633
+ "icon": "arrow-right"
2631
2634
  }
2632
2635
  ],
2633
- "justify": "end",
2634
- "gap": "sm",
2635
2636
  "direction": "horizontal",
2636
- "type": "stack"
2637
+ "gap": "sm"
2637
2638
  }
2638
2639
  ],
2639
- "gap": "lg",
2640
- "direction": "vertical",
2641
- "type": "stack"
2640
+ "direction": "vertical"
2642
2641
  }
2643
- ]
2642
+ ],
2643
+ "type": "container"
2644
2644
  }
2645
2645
  ]
2646
2646
  }
@@ -2666,11 +2666,12 @@
2666
2666
  "render-ui",
2667
2667
  "main",
2668
2668
  {
2669
+ "type": "dashboard-layout",
2669
2670
  "navItems": [
2670
2671
  {
2672
+ "icon": "book-open",
2671
2673
  "label": "Courses",
2672
- "href": "/courses",
2673
- "icon": "book-open"
2674
+ "href": "/courses"
2674
2675
  },
2675
2676
  {
2676
2677
  "label": "Enroll",
@@ -2683,7 +2684,6 @@
2683
2684
  "icon": "layout-list"
2684
2685
  }
2685
2686
  ],
2686
- "type": "dashboard-layout",
2687
2687
  "appName": "LMS",
2688
2688
  "children": [
2689
2689
  {
@@ -2692,7 +2692,7 @@
2692
2692
  "direction": "vertical",
2693
2693
  "children": [
2694
2694
  {
2695
- "type": "stack",
2695
+ "direction": "horizontal",
2696
2696
  "align": "center",
2697
2697
  "children": [
2698
2698
  {
@@ -2700,73 +2700,73 @@
2700
2700
  "type": "icon"
2701
2701
  },
2702
2702
  {
2703
- "variant": "h2",
2704
2703
  "content": "Course Enrollment",
2705
- "type": "typography"
2704
+ "type": "typography",
2705
+ "variant": "h2"
2706
2706
  }
2707
2707
  ],
2708
- "gap": "sm",
2709
- "direction": "horizontal"
2708
+ "type": "stack",
2709
+ "gap": "sm"
2710
2710
  },
2711
2711
  {
2712
2712
  "currentIndex": 1.0,
2713
- "type": "progress-dots",
2714
- "count": 2.0
2713
+ "count": 2.0,
2714
+ "type": "progress-dots"
2715
2715
  },
2716
2716
  {
2717
2717
  "steps": [
2718
2718
  "Student Info",
2719
2719
  "Course Selection"
2720
2720
  ],
2721
- "type": "wizard-progress",
2722
- "currentStep": 1.0
2721
+ "currentStep": 1.0,
2722
+ "type": "wizard-progress"
2723
2723
  },
2724
2724
  {
2725
2725
  "type": "divider"
2726
2726
  },
2727
2727
  {
2728
2728
  "variant": "h3",
2729
- "type": "typography",
2730
- "content": "Course Selection"
2729
+ "content": "Course Selection",
2730
+ "type": "typography"
2731
2731
  },
2732
2732
  {
2733
2733
  "fields": [
2734
2734
  "courseId"
2735
2735
  ],
2736
- "mode": "create",
2737
2736
  "cancelEvent": "PREV",
2737
+ "submitEvent": "NEXT",
2738
2738
  "type": "form-section",
2739
- "submitEvent": "NEXT"
2739
+ "mode": "create"
2740
2740
  },
2741
2741
  {
2742
- "justify": "end",
2743
- "type": "stack",
2744
- "gap": "sm",
2745
2742
  "children": [
2746
2743
  {
2747
- "action": "PREV",
2744
+ "type": "button",
2748
2745
  "label": "Back",
2749
- "icon": "arrow-left",
2750
2746
  "variant": "ghost",
2751
- "type": "button"
2747
+ "icon": "arrow-left",
2748
+ "action": "PREV"
2752
2749
  },
2753
2750
  {
2754
- "label": "Next",
2755
- "variant": "primary",
2756
2751
  "action": "NEXT",
2752
+ "variant": "primary",
2757
2753
  "icon": "arrow-right",
2758
- "type": "button"
2754
+ "type": "button",
2755
+ "label": "Next"
2759
2756
  }
2760
2757
  ],
2761
- "direction": "horizontal"
2758
+ "gap": "sm",
2759
+ "type": "stack",
2760
+ "direction": "horizontal",
2761
+ "justify": "end"
2762
2762
  }
2763
2763
  ],
2764
2764
  "type": "stack",
2765
2765
  "gap": "lg"
2766
2766
  }
2767
2767
  ],
2768
- "padding": "lg",
2769
2768
  "maxWidth": "lg",
2769
+ "padding": "lg",
2770
2770
  "type": "container"
2771
2771
  }
2772
2772
  ]
@@ -2800,17 +2800,38 @@
2800
2800
  "render-ui",
2801
2801
  "main",
2802
2802
  {
2803
+ "appName": "LMS",
2804
+ "navItems": [
2805
+ {
2806
+ "icon": "book-open",
2807
+ "href": "/courses",
2808
+ "label": "Courses"
2809
+ },
2810
+ {
2811
+ "icon": "layout-list",
2812
+ "label": "Enroll",
2813
+ "href": "/enroll"
2814
+ },
2815
+ {
2816
+ "href": "/progress",
2817
+ "label": "Progress",
2818
+ "icon": "layout-list"
2819
+ }
2820
+ ],
2821
+ "type": "dashboard-layout",
2803
2822
  "children": [
2804
2823
  {
2824
+ "direction": "vertical",
2825
+ "gap": "lg",
2805
2826
  "children": [
2806
2827
  {
2807
- "type": "icon",
2808
- "name": "check-circle"
2828
+ "name": "check-circle",
2829
+ "type": "icon"
2809
2830
  },
2810
2831
  {
2811
2832
  "type": "typography",
2812
- "variant": "h2",
2813
- "content": "Enrolled!"
2833
+ "content": "Enrolled!",
2834
+ "variant": "h2"
2814
2835
  },
2815
2836
  {
2816
2837
  "type": "typography",
@@ -2818,38 +2839,17 @@
2818
2839
  "variant": "body"
2819
2840
  },
2820
2841
  {
2821
- "variant": "primary",
2822
- "icon": "refresh-cw",
2823
2842
  "action": "RESTART",
2843
+ "variant": "primary",
2824
2844
  "label": "Start New",
2825
- "type": "button"
2845
+ "type": "button",
2846
+ "icon": "refresh-cw"
2826
2847
  }
2827
2848
  ],
2828
- "direction": "vertical",
2829
- "type": "stack",
2830
- "gap": "lg",
2831
- "align": "center"
2832
- }
2833
- ],
2834
- "appName": "LMS",
2835
- "navItems": [
2836
- {
2837
- "href": "/courses",
2838
- "icon": "book-open",
2839
- "label": "Courses"
2840
- },
2841
- {
2842
- "href": "/enroll",
2843
- "label": "Enroll",
2844
- "icon": "layout-list"
2845
- },
2846
- {
2847
- "icon": "layout-list",
2848
- "label": "Progress",
2849
- "href": "/progress"
2849
+ "align": "center",
2850
+ "type": "stack"
2850
2851
  }
2851
- ],
2852
- "type": "dashboard-layout"
2852
+ ]
2853
2853
  }
2854
2854
  ]
2855
2855
  ]
@@ -2864,8 +2864,8 @@
2864
2864
  "Enrollment",
2865
2865
  {
2866
2866
  "emit": {
2867
- "failure": "EnrollmentLoadFailed",
2868
- "success": "EnrollmentLoaded"
2867
+ "success": "EnrollmentLoaded",
2868
+ "failure": "EnrollmentLoadFailed"
2869
2869
  }
2870
2870
  }
2871
2871
  ],
@@ -2873,12 +2873,14 @@
2873
2873
  "render-ui",
2874
2874
  "main",
2875
2875
  {
2876
+ "type": "dashboard-layout",
2876
2877
  "children": [
2877
2878
  {
2878
- "type": "container",
2879
- "maxWidth": "lg",
2879
+ "padding": "lg",
2880
2880
  "children": [
2881
2881
  {
2882
+ "type": "stack",
2883
+ "gap": "lg",
2882
2884
  "children": [
2883
2885
  {
2884
2886
  "children": [
@@ -2887,89 +2889,87 @@
2887
2889
  "type": "icon"
2888
2890
  },
2889
2891
  {
2890
- "type": "typography",
2892
+ "content": "Course Enrollment",
2891
2893
  "variant": "h2",
2892
- "content": "Course Enrollment"
2894
+ "type": "typography"
2893
2895
  }
2894
2896
  ],
2895
- "gap": "sm",
2896
- "align": "center",
2897
2897
  "type": "stack",
2898
+ "align": "center",
2899
+ "gap": "sm",
2898
2900
  "direction": "horizontal"
2899
2901
  },
2900
2902
  {
2903
+ "currentIndex": 0.0,
2901
2904
  "count": 2.0,
2902
- "type": "progress-dots",
2903
- "currentIndex": 0.0
2905
+ "type": "progress-dots"
2904
2906
  },
2905
2907
  {
2908
+ "currentStep": 0.0,
2909
+ "type": "wizard-progress",
2906
2910
  "steps": [
2907
2911
  "Student Info",
2908
2912
  "Course Selection"
2909
- ],
2910
- "currentStep": 0.0,
2911
- "type": "wizard-progress"
2913
+ ]
2912
2914
  },
2913
2915
  {
2914
2916
  "type": "divider"
2915
2917
  },
2916
2918
  {
2919
+ "content": "Student Info",
2917
2920
  "variant": "h3",
2918
- "type": "typography",
2919
- "content": "Student Info"
2921
+ "type": "typography"
2920
2922
  },
2921
2923
  {
2922
- "mode": "create",
2923
- "submitEvent": "NEXT",
2924
2924
  "type": "form-section",
2925
2925
  "cancelEvent": "INIT",
2926
+ "mode": "create",
2927
+ "submitEvent": "NEXT",
2926
2928
  "fields": [
2927
2929
  "studentName",
2928
2930
  "email"
2929
2931
  ]
2930
2932
  },
2931
2933
  {
2932
- "direction": "horizontal",
2933
2934
  "justify": "end",
2934
- "gap": "sm",
2935
2935
  "children": [
2936
2936
  {
2937
+ "label": "Next",
2937
2938
  "icon": "arrow-right",
2938
- "action": "NEXT",
2939
- "variant": "primary",
2940
2939
  "type": "button",
2941
- "label": "Next"
2940
+ "variant": "primary",
2941
+ "action": "NEXT"
2942
2942
  }
2943
2943
  ],
2944
- "type": "stack"
2944
+ "type": "stack",
2945
+ "direction": "horizontal",
2946
+ "gap": "sm"
2945
2947
  }
2946
2948
  ],
2947
- "type": "stack",
2948
- "gap": "lg",
2949
2949
  "direction": "vertical"
2950
2950
  }
2951
2951
  ],
2952
- "padding": "lg"
2952
+ "type": "container",
2953
+ "maxWidth": "lg"
2953
2954
  }
2954
2955
  ],
2955
2956
  "navItems": [
2956
2957
  {
2957
- "icon": "book-open",
2958
2958
  "label": "Courses",
2959
- "href": "/courses"
2959
+ "href": "/courses",
2960
+ "icon": "book-open"
2960
2961
  },
2961
2962
  {
2962
- "label": "Enroll",
2963
2963
  "icon": "layout-list",
2964
- "href": "/enroll"
2964
+ "href": "/enroll",
2965
+ "label": "Enroll"
2965
2966
  },
2966
2967
  {
2967
2968
  "label": "Progress",
2968
- "href": "/progress",
2969
- "icon": "layout-list"
2969
+ "icon": "layout-list",
2970
+ "href": "/progress"
2970
2971
  }
2971
2972
  ],
2972
- "type": "dashboard-layout",
2973
2973
  "appName": "LMS"
2974
2974
  }
2975
2975
  ]
@@ -2985,8 +2985,8 @@
2985
2985
  "Enrollment",
2986
2986
  {
2987
2987
  "emit": {
2988
- "failure": "EnrollmentLoadFailed",
2989
- "success": "EnrollmentLoaded"
2988
+ "success": "EnrollmentLoaded",
2989
+ "failure": "EnrollmentLoadFailed"
2990
2990
  }
2991
2991
  }
2992
2992
  ],
@@ -2994,54 +2994,37 @@
2994
2994
  "render-ui",
2995
2995
  "main",
2996
2996
  {
2997
- "navItems": [
2998
- {
2999
- "label": "Courses",
3000
- "href": "/courses",
3001
- "icon": "book-open"
3002
- },
3003
- {
3004
- "href": "/enroll",
3005
- "icon": "layout-list",
3006
- "label": "Enroll"
3007
- },
3008
- {
3009
- "label": "Progress",
3010
- "href": "/progress",
3011
- "icon": "layout-list"
3012
- }
3013
- ],
2997
+ "appName": "LMS",
2998
+ "type": "dashboard-layout",
3014
2999
  "children": [
3015
3000
  {
3016
3001
  "padding": "lg",
3017
3002
  "type": "container",
3003
+ "maxWidth": "lg",
3018
3004
  "children": [
3019
3005
  {
3020
- "type": "stack",
3021
- "direction": "vertical",
3022
- "gap": "lg",
3023
3006
  "children": [
3024
3007
  {
3025
- "direction": "horizontal",
3026
- "gap": "sm",
3027
- "align": "center",
3028
3008
  "children": [
3029
3009
  {
3030
- "name": "user-plus",
3031
- "type": "icon"
3010
+ "type": "icon",
3011
+ "name": "user-plus"
3032
3012
  },
3033
3013
  {
3014
+ "type": "typography",
3034
3015
  "content": "Course Enrollment",
3035
- "variant": "h2",
3036
- "type": "typography"
3016
+ "variant": "h2"
3037
3017
  }
3038
3018
  ],
3039
- "type": "stack"
3019
+ "direction": "horizontal",
3020
+ "gap": "sm",
3021
+ "type": "stack",
3022
+ "align": "center"
3040
3023
  },
3041
3024
  {
3025
+ "count": 2.0,
3042
3026
  "currentIndex": 0.0,
3043
- "type": "progress-dots",
3044
- "count": 2.0
3027
+ "type": "progress-dots"
3045
3028
  },
3046
3029
  {
3047
3030
  "currentStep": 0.0,
@@ -3055,43 +3038,60 @@
3055
3038
  "type": "divider"
3056
3039
  },
3057
3040
  {
3058
- "content": "Student Info",
3059
3041
  "type": "typography",
3042
+ "content": "Student Info",
3060
3043
  "variant": "h3"
3061
3044
  },
3062
3045
  {
3046
+ "cancelEvent": "INIT",
3047
+ "submitEvent": "NEXT",
3063
3048
  "fields": [
3064
3049
  "studentName",
3065
3050
  "email"
3066
3051
  ],
3067
3052
  "mode": "create",
3068
- "submitEvent": "NEXT",
3069
- "type": "form-section",
3070
- "cancelEvent": "INIT"
3053
+ "type": "form-section"
3071
3054
  },
3072
3055
  {
3073
- "justify": "end",
3074
- "type": "stack",
3075
- "direction": "horizontal",
3076
- "gap": "sm",
3077
3056
  "children": [
3078
3057
  {
3079
- "type": "button",
3080
- "variant": "primary",
3081
3058
  "icon": "arrow-right",
3082
3059
  "label": "Next",
3083
- "action": "NEXT"
3060
+ "action": "NEXT",
3061
+ "variant": "primary",
3062
+ "type": "button"
3084
3063
  }
3085
- ]
3064
+ ],
3065
+ "type": "stack",
3066
+ "justify": "end",
3067
+ "gap": "sm",
3068
+ "direction": "horizontal"
3086
3069
  }
3087
- ]
3070
+ ],
3071
+ "type": "stack",
3072
+ "direction": "vertical",
3073
+ "gap": "lg"
3088
3074
  }
3089
- ],
3090
- "maxWidth": "lg"
3075
+ ]
3091
3076
  }
3092
3077
  ],
3093
- "appName": "LMS",
3094
- "type": "dashboard-layout"
3078
+ "navItems": [
3079
+ {
3080
+ "icon": "book-open",
3081
+ "href": "/courses",
3082
+ "label": "Courses"
3083
+ },
3084
+ {
3085
+ "href": "/enroll",
3086
+ "label": "Enroll",
3087
+ "icon": "layout-list"
3088
+ },
3089
+ {
3090
+ "href": "/progress",
3091
+ "label": "Progress",
3092
+ "icon": "layout-list"
3093
+ }
3094
+ ]
3095
3095
  }
3096
3096
  ]
3097
3097
  ]
@@ -3254,8 +3254,8 @@
3254
3254
  "Progress",
3255
3255
  {
3256
3256
  "emit": {
3257
- "failure": "ProgressLoadFailed",
3258
- "success": "ProgressLoaded"
3257
+ "success": "ProgressLoaded",
3258
+ "failure": "ProgressLoadFailed"
3259
3259
  }
3260
3260
  }
3261
3261
  ],
@@ -3264,12 +3264,11 @@
3264
3264
  "main",
3265
3265
  {
3266
3266
  "type": "dashboard-layout",
3267
- "appName": "LMS",
3268
3267
  "navItems": [
3269
3268
  {
3269
+ "icon": "book-open",
3270
3270
  "label": "Courses",
3271
- "href": "/courses",
3272
- "icon": "book-open"
3271
+ "href": "/courses"
3273
3272
  },
3274
3273
  {
3275
3274
  "href": "/enroll",
@@ -3278,16 +3277,17 @@
3278
3277
  },
3279
3278
  {
3280
3279
  "href": "/progress",
3281
- "icon": "layout-list",
3282
- "label": "Progress"
3280
+ "label": "Progress",
3281
+ "icon": "layout-list"
3283
3282
  }
3284
3283
  ],
3284
+ "appName": "LMS",
3285
3285
  "children": [
3286
3286
  {
3287
- "type": "scaled-diagram",
3288
3287
  "children": [
3289
3288
  {
3290
- "direction": "vertical",
3289
+ "type": "stack",
3290
+ "gap": "lg",
3291
3291
  "children": [
3292
3292
  {
3293
3293
  "items": [
@@ -3302,49 +3302,52 @@
3302
3302
  "type": "breadcrumb"
3303
3303
  },
3304
3304
  {
3305
+ "direction": "horizontal",
3305
3306
  "children": [
3306
3307
  {
3308
+ "type": "stack",
3307
3309
  "gap": "md",
3310
+ "direction": "horizontal",
3308
3311
  "children": [
3309
3312
  {
3310
3313
  "type": "icon",
3311
3314
  "name": "trending-up"
3312
3315
  },
3313
3316
  {
3314
- "type": "typography",
3315
3317
  "content": "Progress",
3318
+ "type": "typography",
3316
3319
  "variant": "h2"
3317
3320
  }
3318
- ],
3319
- "direction": "horizontal",
3320
- "type": "stack"
3321
+ ]
3321
3322
  },
3322
3323
  {
3323
3324
  "label": "Refresh",
3324
3325
  "type": "button",
3325
3326
  "variant": "secondary",
3326
- "action": "REFRESH",
3327
- "icon": "refresh-cw"
3327
+ "icon": "refresh-cw",
3328
+ "action": "REFRESH"
3328
3329
  }
3329
3330
  ],
3330
- "type": "stack",
3331
3331
  "gap": "md",
3332
- "justify": "between",
3333
- "direction": "horizontal"
3332
+ "type": "stack",
3333
+ "justify": "between"
3334
3334
  },
3335
3335
  {
3336
3336
  "type": "divider"
3337
3337
  },
3338
3338
  {
3339
3339
  "type": "box",
3340
- "padding": "md",
3341
3340
  "children": [
3342
3341
  {
3343
3342
  "cols": 3.0,
3344
3343
  "children": [
3345
3344
  {
3345
+ "type": "card",
3346
3346
  "children": [
3347
3347
  {
3348
+ "type": "stack",
3349
+ "gap": "sm",
3350
+ "direction": "vertical",
3348
3351
  "children": [
3349
3352
  {
3350
3353
  "type": "typography",
@@ -3352,27 +3355,23 @@
3352
3355
  "content": "CourseName"
3353
3356
  },
3354
3357
  {
3355
- "type": "typography",
3356
3358
  "content": "@entity.courseName",
3359
+ "type": "typography",
3357
3360
  "variant": "h3"
3358
3361
  }
3359
- ],
3360
- "direction": "vertical",
3361
- "type": "stack",
3362
- "gap": "sm"
3362
+ ]
3363
3363
  }
3364
- ],
3365
- "type": "card"
3364
+ ]
3366
3365
  },
3367
3366
  {
3368
- "type": "stat-display",
3367
+ "value": "@entity.lessonsCompleted",
3369
3368
  "label": "LessonsCompleted",
3370
- "value": "@entity.lessonsCompleted"
3369
+ "type": "stat-display"
3371
3370
  },
3372
3371
  {
3373
- "value": "@entity.totalLessons",
3374
3372
  "type": "stat-display",
3375
- "label": "TotalLessons"
3373
+ "label": "TotalLessons",
3374
+ "value": "@entity.totalLessons"
3376
3375
  },
3377
3376
  {
3378
3377
  "value": "@entity.percentComplete",
@@ -3382,19 +3381,19 @@
3382
3381
  {
3383
3382
  "children": [
3384
3383
  {
3385
- "gap": "sm",
3386
3384
  "type": "stack",
3385
+ "gap": "sm",
3387
3386
  "direction": "vertical",
3388
3387
  "children": [
3389
3388
  {
3389
+ "variant": "caption",
3390
3390
  "content": "LastActivity",
3391
- "type": "typography",
3392
- "variant": "caption"
3391
+ "type": "typography"
3393
3392
  },
3394
3393
  {
3395
- "content": "@entity.lastActivity",
3396
3394
  "type": "typography",
3397
- "variant": "h3"
3395
+ "variant": "h3",
3396
+ "content": "@entity.lastActivity"
3398
3397
  }
3399
3398
  ]
3400
3399
  }
@@ -3404,22 +3403,21 @@
3404
3403
  ],
3405
3404
  "type": "simple-grid"
3406
3405
  }
3407
- ]
3406
+ ],
3407
+ "padding": "md"
3408
3408
  },
3409
3409
  {
3410
3410
  "type": "divider"
3411
3411
  },
3412
3412
  {
3413
- "gap": "md",
3414
- "type": "grid",
3415
3413
  "children": [
3416
3414
  {
3417
3415
  "type": "card",
3418
3416
  "children": [
3419
3417
  {
3418
+ "content": "Chart View",
3420
3419
  "type": "typography",
3421
- "variant": "caption",
3422
- "content": "Chart View"
3420
+ "variant": "caption"
3423
3421
  }
3424
3422
  ]
3425
3423
  },
@@ -3428,45 +3426,46 @@
3428
3426
  "children": [
3429
3427
  {
3430
3428
  "content": "Graph View",
3431
- "type": "typography",
3432
- "variant": "caption"
3429
+ "variant": "caption",
3430
+ "type": "typography"
3433
3431
  }
3434
3432
  ]
3435
3433
  }
3436
3434
  ],
3435
+ "type": "grid",
3436
+ "gap": "md",
3437
3437
  "cols": 2.0
3438
3438
  },
3439
3439
  {
3440
3440
  "type": "line-chart",
3441
3441
  "data": [
3442
3442
  {
3443
- "date": "Jan",
3444
- "value": 12.0
3443
+ "value": 12.0,
3444
+ "date": "Jan"
3445
3445
  },
3446
3446
  {
3447
3447
  "value": 19.0,
3448
3448
  "date": "Feb"
3449
3449
  },
3450
3450
  {
3451
- "value": 15.0,
3452
- "date": "Mar"
3451
+ "date": "Mar",
3452
+ "value": 15.0
3453
3453
  },
3454
3454
  {
3455
- "value": 25.0,
3456
- "date": "Apr"
3455
+ "date": "Apr",
3456
+ "value": 25.0
3457
3457
  },
3458
3458
  {
3459
3459
  "date": "May",
3460
3460
  "value": 22.0
3461
3461
  },
3462
3462
  {
3463
- "value": 30.0,
3464
- "date": "Jun"
3463
+ "date": "Jun",
3464
+ "value": 30.0
3465
3465
  }
3466
3466
  ]
3467
3467
  },
3468
3468
  {
3469
- "type": "chart-legend",
3470
3469
  "items": [
3471
3470
  {
3472
3471
  "label": "Current",
@@ -3476,20 +3475,12 @@
3476
3475
  "color": "muted",
3477
3476
  "label": "Previous"
3478
3477
  }
3479
- ]
3478
+ ],
3479
+ "type": "chart-legend"
3480
3480
  },
3481
3481
  {
3482
- "type": "graph-view",
3483
- "edges": [
3484
- {
3485
- "target": "b",
3486
- "source": "a"
3487
- },
3488
- {
3489
- "target": "c",
3490
- "source": "b"
3491
- }
3492
- ],
3482
+ "width": 400.0,
3483
+ "height": 200.0,
3493
3484
  "nodes": [
3494
3485
  {
3495
3486
  "id": "a",
@@ -3504,14 +3495,23 @@
3504
3495
  "id": "c"
3505
3496
  }
3506
3497
  ],
3507
- "height": 200.0,
3508
- "width": 400.0
3498
+ "type": "graph-view",
3499
+ "edges": [
3500
+ {
3501
+ "target": "b",
3502
+ "source": "a"
3503
+ },
3504
+ {
3505
+ "target": "c",
3506
+ "source": "b"
3507
+ }
3508
+ ]
3509
3509
  }
3510
3510
  ],
3511
- "type": "stack",
3512
- "gap": "lg"
3511
+ "direction": "vertical"
3513
3512
  }
3514
- ]
3513
+ ],
3514
+ "type": "scaled-diagram"
3515
3515
  }
3516
3516
  ]
3517
3517
  }
@@ -3537,39 +3537,17 @@
3537
3537
  "render-ui",
3538
3538
  "main",
3539
3539
  {
3540
- "type": "dashboard-layout",
3541
- "navItems": [
3542
- {
3543
- "icon": "book-open",
3544
- "label": "Courses",
3545
- "href": "/courses"
3546
- },
3547
- {
3548
- "href": "/enroll",
3549
- "label": "Enroll",
3550
- "icon": "layout-list"
3551
- },
3552
- {
3553
- "icon": "layout-list",
3554
- "href": "/progress",
3555
- "label": "Progress"
3556
- }
3557
- ],
3558
- "appName": "LMS",
3559
3540
  "children": [
3560
3541
  {
3561
- "type": "scaled-diagram",
3562
3542
  "children": [
3563
3543
  {
3564
- "type": "stack",
3565
- "direction": "vertical",
3566
3544
  "children": [
3567
3545
  {
3568
3546
  "type": "breadcrumb",
3569
3547
  "items": [
3570
3548
  {
3571
- "label": "Home",
3572
- "href": "/"
3549
+ "href": "/",
3550
+ "label": "Home"
3573
3551
  },
3574
3552
  {
3575
3553
  "label": "Progress"
@@ -3577,134 +3555,134 @@
3577
3555
  ]
3578
3556
  },
3579
3557
  {
3558
+ "justify": "between",
3559
+ "type": "stack",
3560
+ "direction": "horizontal",
3580
3561
  "children": [
3581
3562
  {
3563
+ "type": "stack",
3582
3564
  "children": [
3583
3565
  {
3584
- "name": "trending-up",
3585
- "type": "icon"
3566
+ "type": "icon",
3567
+ "name": "trending-up"
3586
3568
  },
3587
3569
  {
3588
- "type": "typography",
3589
3570
  "content": "Progress",
3590
- "variant": "h2"
3571
+ "variant": "h2",
3572
+ "type": "typography"
3591
3573
  }
3592
3574
  ],
3593
- "type": "stack",
3594
3575
  "gap": "md",
3595
3576
  "direction": "horizontal"
3596
3577
  },
3597
3578
  {
3598
3579
  "type": "button",
3599
- "icon": "refresh-cw",
3600
3580
  "variant": "secondary",
3601
3581
  "label": "Refresh",
3582
+ "icon": "refresh-cw",
3602
3583
  "action": "REFRESH"
3603
3584
  }
3604
3585
  ],
3605
- "type": "stack",
3606
- "gap": "md",
3607
- "justify": "between",
3608
- "direction": "horizontal"
3586
+ "gap": "md"
3609
3587
  },
3610
3588
  {
3611
3589
  "type": "divider"
3612
3590
  },
3613
3591
  {
3592
+ "padding": "md",
3593
+ "type": "box",
3614
3594
  "children": [
3615
3595
  {
3616
- "cols": 3.0,
3617
3596
  "type": "simple-grid",
3597
+ "cols": 3.0,
3618
3598
  "children": [
3619
3599
  {
3600
+ "type": "card",
3620
3601
  "children": [
3621
3602
  {
3622
- "type": "stack",
3623
- "gap": "sm",
3624
3603
  "children": [
3625
3604
  {
3605
+ "type": "typography",
3626
3606
  "content": "CourseName",
3627
- "variant": "caption",
3628
- "type": "typography"
3607
+ "variant": "caption"
3629
3608
  },
3630
3609
  {
3631
- "variant": "h3",
3632
3610
  "type": "typography",
3611
+ "variant": "h3",
3633
3612
  "content": "@entity.courseName"
3634
3613
  }
3635
3614
  ],
3615
+ "type": "stack",
3616
+ "gap": "sm",
3636
3617
  "direction": "vertical"
3637
3618
  }
3638
- ],
3639
- "type": "card"
3619
+ ]
3640
3620
  },
3641
3621
  {
3622
+ "value": "@entity.lessonsCompleted",
3642
3623
  "type": "stat-display",
3643
- "label": "LessonsCompleted",
3644
- "value": "@entity.lessonsCompleted"
3624
+ "label": "LessonsCompleted"
3645
3625
  },
3646
3626
  {
3647
- "value": "@entity.totalLessons",
3627
+ "label": "TotalLessons",
3648
3628
  "type": "stat-display",
3649
- "label": "TotalLessons"
3629
+ "value": "@entity.totalLessons"
3650
3630
  },
3651
3631
  {
3652
- "type": "stat-display",
3632
+ "value": "@entity.percentComplete",
3653
3633
  "label": "PercentComplete",
3654
- "value": "@entity.percentComplete"
3634
+ "type": "stat-display"
3655
3635
  },
3656
3636
  {
3657
3637
  "type": "card",
3658
3638
  "children": [
3659
3639
  {
3660
- "direction": "vertical",
3661
3640
  "children": [
3662
3641
  {
3663
- "variant": "caption",
3642
+ "content": "LastActivity",
3664
3643
  "type": "typography",
3665
- "content": "LastActivity"
3644
+ "variant": "caption"
3666
3645
  },
3667
3646
  {
3647
+ "variant": "h3",
3668
3648
  "content": "@entity.lastActivity",
3669
- "type": "typography",
3670
- "variant": "h3"
3649
+ "type": "typography"
3671
3650
  }
3672
3651
  ],
3652
+ "gap": "sm",
3673
3653
  "type": "stack",
3674
- "gap": "sm"
3654
+ "direction": "vertical"
3675
3655
  }
3676
3656
  ]
3677
3657
  }
3678
3658
  ]
3679
3659
  }
3680
- ],
3681
- "type": "box",
3682
- "padding": "md"
3660
+ ]
3683
3661
  },
3684
3662
  {
3685
3663
  "type": "divider"
3686
3664
  },
3687
3665
  {
3688
- "type": "grid",
3689
- "gap": "md",
3690
3666
  "cols": 2.0,
3667
+ "gap": "md",
3668
+ "type": "grid",
3691
3669
  "children": [
3692
3670
  {
3693
3671
  "type": "card",
3694
3672
  "children": [
3695
3673
  {
3674
+ "variant": "caption",
3696
3675
  "content": "Chart View",
3697
- "type": "typography",
3698
- "variant": "caption"
3676
+ "type": "typography"
3699
3677
  }
3700
3678
  ]
3701
3679
  },
3702
3680
  {
3703
3681
  "children": [
3704
3682
  {
3705
- "variant": "caption",
3706
3683
  "content": "Graph View",
3707
- "type": "typography"
3684
+ "type": "typography",
3685
+ "variant": "caption"
3708
3686
  }
3709
3687
  ],
3710
3688
  "type": "card"
@@ -3712,23 +3690,22 @@
3712
3690
  ]
3713
3691
  },
3714
3692
  {
3715
- "type": "line-chart",
3716
3693
  "data": [
3717
3694
  {
3718
- "value": 12.0,
3719
- "date": "Jan"
3695
+ "date": "Jan",
3696
+ "value": 12.0
3720
3697
  },
3721
3698
  {
3722
- "date": "Feb",
3723
- "value": 19.0
3699
+ "value": 19.0,
3700
+ "date": "Feb"
3724
3701
  },
3725
3702
  {
3726
3703
  "value": 15.0,
3727
3704
  "date": "Mar"
3728
3705
  },
3729
3706
  {
3730
- "value": 25.0,
3731
- "date": "Apr"
3707
+ "date": "Apr",
3708
+ "value": 25.0
3732
3709
  },
3733
3710
  {
3734
3711
  "date": "May",
@@ -3738,26 +3715,28 @@
3738
3715
  "date": "Jun",
3739
3716
  "value": 30.0
3740
3717
  }
3741
- ]
3718
+ ],
3719
+ "type": "line-chart"
3742
3720
  },
3743
3721
  {
3744
3722
  "items": [
3745
3723
  {
3746
- "color": "primary",
3747
- "label": "Current"
3724
+ "label": "Current",
3725
+ "color": "primary"
3748
3726
  },
3749
3727
  {
3750
- "label": "Previous",
3751
- "color": "muted"
3728
+ "color": "muted",
3729
+ "label": "Previous"
3752
3730
  }
3753
3731
  ],
3754
3732
  "type": "chart-legend"
3755
3733
  },
3756
3734
  {
3735
+ "width": 400.0,
3757
3736
  "nodes": [
3758
3737
  {
3759
- "label": "Start",
3760
- "id": "a"
3738
+ "id": "a",
3739
+ "label": "Start"
3761
3740
  },
3762
3741
  {
3763
3742
  "id": "b",
@@ -3768,26 +3747,47 @@
3768
3747
  "label": "End"
3769
3748
  }
3770
3749
  ],
3750
+ "type": "graph-view",
3771
3751
  "edges": [
3772
3752
  {
3773
- "source": "a",
3774
- "target": "b"
3753
+ "target": "b",
3754
+ "source": "a"
3775
3755
  },
3776
3756
  {
3777
3757
  "target": "c",
3778
3758
  "source": "b"
3779
3759
  }
3780
3760
  ],
3781
- "type": "graph-view",
3782
- "width": 400.0,
3783
3761
  "height": 200.0
3784
3762
  }
3785
3763
  ],
3786
- "gap": "lg"
3764
+ "gap": "lg",
3765
+ "type": "stack",
3766
+ "direction": "vertical"
3787
3767
  }
3788
- ]
3768
+ ],
3769
+ "type": "scaled-diagram"
3789
3770
  }
3790
- ]
3771
+ ],
3772
+ "appName": "LMS",
3773
+ "navItems": [
3774
+ {
3775
+ "label": "Courses",
3776
+ "href": "/courses",
3777
+ "icon": "book-open"
3778
+ },
3779
+ {
3780
+ "href": "/enroll",
3781
+ "label": "Enroll",
3782
+ "icon": "layout-list"
3783
+ },
3784
+ {
3785
+ "label": "Progress",
3786
+ "href": "/progress",
3787
+ "icon": "layout-list"
3788
+ }
3789
+ ],
3790
+ "type": "dashboard-layout"
3791
3791
  }
3792
3792
  ]
3793
3793
  ]
@@ -3802,8 +3802,8 @@
3802
3802
  "Progress",
3803
3803
  {
3804
3804
  "emit": {
3805
- "failure": "ProgressLoadFailed",
3806
- "success": "ProgressLoaded"
3805
+ "success": "ProgressLoaded",
3806
+ "failure": "ProgressLoadFailed"
3807
3807
  }
3808
3808
  }
3809
3809
  ],
@@ -3811,38 +3811,36 @@
3811
3811
  "render-ui",
3812
3812
  "main",
3813
3813
  {
3814
- "appName": "LMS",
3815
3814
  "navItems": [
3816
3815
  {
3817
- "href": "/courses",
3818
3816
  "label": "Courses",
3817
+ "href": "/courses",
3819
3818
  "icon": "book-open"
3820
3819
  },
3821
3820
  {
3822
- "icon": "layout-list",
3823
3821
  "label": "Enroll",
3822
+ "icon": "layout-list",
3824
3823
  "href": "/enroll"
3825
3824
  },
3826
3825
  {
3827
- "href": "/progress",
3826
+ "label": "Progress",
3828
3827
  "icon": "layout-list",
3829
- "label": "Progress"
3828
+ "href": "/progress"
3830
3829
  }
3831
3830
  ],
3832
- "type": "dashboard-layout",
3833
3831
  "children": [
3834
3832
  {
3833
+ "type": "scaled-diagram",
3835
3834
  "children": [
3836
3835
  {
3837
3836
  "type": "stack",
3838
- "gap": "lg",
3839
3837
  "children": [
3840
3838
  {
3841
3839
  "type": "breadcrumb",
3842
3840
  "items": [
3843
3841
  {
3844
- "label": "Home",
3845
- "href": "/"
3842
+ "href": "/",
3843
+ "label": "Home"
3846
3844
  },
3847
3845
  {
3848
3846
  "label": "Progress"
@@ -3850,42 +3848,45 @@
3850
3848
  ]
3851
3849
  },
3852
3850
  {
3851
+ "type": "stack",
3852
+ "direction": "horizontal",
3853
+ "gap": "md",
3854
+ "justify": "between",
3853
3855
  "children": [
3854
3856
  {
3857
+ "direction": "horizontal",
3858
+ "gap": "md",
3855
3859
  "children": [
3856
3860
  {
3857
- "type": "icon",
3858
- "name": "trending-up"
3861
+ "name": "trending-up",
3862
+ "type": "icon"
3859
3863
  },
3860
3864
  {
3861
- "variant": "h2",
3865
+ "content": "Progress",
3862
3866
  "type": "typography",
3863
- "content": "Progress"
3867
+ "variant": "h2"
3864
3868
  }
3865
3869
  ],
3866
- "direction": "horizontal",
3867
- "type": "stack",
3868
- "gap": "md"
3870
+ "type": "stack"
3869
3871
  },
3870
3872
  {
3871
3873
  "variant": "secondary",
3874
+ "label": "Refresh",
3872
3875
  "action": "REFRESH",
3873
3876
  "icon": "refresh-cw",
3874
- "type": "button",
3875
- "label": "Refresh"
3877
+ "type": "button"
3876
3878
  }
3877
- ],
3878
- "gap": "md",
3879
- "direction": "horizontal",
3880
- "type": "stack",
3881
- "justify": "between"
3879
+ ]
3882
3880
  },
3883
3881
  {
3884
3882
  "type": "divider"
3885
3883
  },
3886
3884
  {
3885
+ "padding": "md",
3887
3886
  "children": [
3888
3887
  {
3888
+ "type": "simple-grid",
3889
+ "cols": 3.0,
3889
3890
  "children": [
3890
3891
  {
3891
3892
  "type": "card",
@@ -3898,21 +3899,21 @@
3898
3899
  "variant": "caption"
3899
3900
  },
3900
3901
  {
3901
- "variant": "h3",
3902
+ "type": "typography",
3902
3903
  "content": "@entity.courseName",
3903
- "type": "typography"
3904
+ "variant": "h3"
3904
3905
  }
3905
3906
  ],
3906
3907
  "type": "stack",
3907
- "direction": "vertical",
3908
- "gap": "sm"
3908
+ "gap": "sm",
3909
+ "direction": "vertical"
3909
3910
  }
3910
3911
  ]
3911
3912
  },
3912
3913
  {
3913
3914
  "type": "stat-display",
3914
- "label": "LessonsCompleted",
3915
- "value": "@entity.lessonsCompleted"
3915
+ "value": "@entity.lessonsCompleted",
3916
+ "label": "LessonsCompleted"
3916
3917
  },
3917
3918
  {
3918
3919
  "value": "@entity.totalLessons",
@@ -3920,13 +3921,14 @@
3920
3921
  "label": "TotalLessons"
3921
3922
  },
3922
3923
  {
3924
+ "value": "@entity.percentComplete",
3923
3925
  "type": "stat-display",
3924
- "label": "PercentComplete",
3925
- "value": "@entity.percentComplete"
3926
+ "label": "PercentComplete"
3926
3927
  },
3927
3928
  {
3928
3929
  "children": [
3929
3930
  {
3931
+ "direction": "vertical",
3930
3932
  "children": [
3931
3933
  {
3932
3934
  "type": "typography",
@@ -3934,55 +3936,51 @@
3934
3936
  "content": "LastActivity"
3935
3937
  },
3936
3938
  {
3939
+ "content": "@entity.lastActivity",
3937
3940
  "variant": "h3",
3938
- "type": "typography",
3939
- "content": "@entity.lastActivity"
3941
+ "type": "typography"
3940
3942
  }
3941
3943
  ],
3942
- "gap": "sm",
3943
3944
  "type": "stack",
3944
- "direction": "vertical"
3945
+ "gap": "sm"
3945
3946
  }
3946
3947
  ],
3947
3948
  "type": "card"
3948
3949
  }
3949
- ],
3950
- "type": "simple-grid",
3951
- "cols": 3.0
3950
+ ]
3952
3951
  }
3953
3952
  ],
3954
- "type": "box",
3955
- "padding": "md"
3953
+ "type": "box"
3956
3954
  },
3957
3955
  {
3958
3956
  "type": "divider"
3959
3957
  },
3960
3958
  {
3959
+ "cols": 2.0,
3961
3960
  "children": [
3962
3961
  {
3963
3962
  "type": "card",
3964
3963
  "children": [
3965
3964
  {
3966
- "type": "typography",
3965
+ "variant": "caption",
3967
3966
  "content": "Chart View",
3968
- "variant": "caption"
3967
+ "type": "typography"
3969
3968
  }
3970
3969
  ]
3971
3970
  },
3972
3971
  {
3973
3972
  "children": [
3974
3973
  {
3974
+ "variant": "caption",
3975
3975
  "content": "Graph View",
3976
- "type": "typography",
3977
- "variant": "caption"
3976
+ "type": "typography"
3978
3977
  }
3979
3978
  ],
3980
3979
  "type": "card"
3981
3980
  }
3982
3981
  ],
3983
3982
  "type": "grid",
3984
- "gap": "md",
3985
- "cols": 2.0
3983
+ "gap": "md"
3986
3984
  },
3987
3985
  {
3988
3986
  "type": "line-chart",
@@ -3992,8 +3990,8 @@
3992
3990
  "value": 12.0
3993
3991
  },
3994
3992
  {
3995
- "value": 19.0,
3996
- "date": "Feb"
3993
+ "date": "Feb",
3994
+ "value": 19.0
3997
3995
  },
3998
3996
  {
3999
3997
  "date": "Mar",
@@ -4008,23 +4006,23 @@
4008
4006
  "value": 22.0
4009
4007
  },
4010
4008
  {
4011
- "value": 30.0,
4012
- "date": "Jun"
4009
+ "date": "Jun",
4010
+ "value": 30.0
4013
4011
  }
4014
4012
  ]
4015
4013
  },
4016
4014
  {
4015
+ "type": "chart-legend",
4017
4016
  "items": [
4018
4017
  {
4019
- "color": "primary",
4020
- "label": "Current"
4018
+ "label": "Current",
4019
+ "color": "primary"
4021
4020
  },
4022
4021
  {
4023
- "color": "muted",
4024
- "label": "Previous"
4022
+ "label": "Previous",
4023
+ "color": "muted"
4025
4024
  }
4026
- ],
4027
- "type": "chart-legend"
4025
+ ]
4028
4026
  },
4029
4027
  {
4030
4028
  "nodes": [
@@ -4033,35 +4031,37 @@
4033
4031
  "label": "Start"
4034
4032
  },
4035
4033
  {
4036
- "label": "Process",
4037
- "id": "b"
4034
+ "id": "b",
4035
+ "label": "Process"
4038
4036
  },
4039
4037
  {
4040
4038
  "id": "c",
4041
4039
  "label": "End"
4042
4040
  }
4043
4041
  ],
4044
- "width": 400.0,
4045
4042
  "height": 200.0,
4046
- "type": "graph-view",
4047
4043
  "edges": [
4048
4044
  {
4049
- "target": "b",
4050
- "source": "a"
4045
+ "source": "a",
4046
+ "target": "b"
4051
4047
  },
4052
4048
  {
4053
4049
  "target": "c",
4054
4050
  "source": "b"
4055
4051
  }
4056
- ]
4052
+ ],
4053
+ "type": "graph-view",
4054
+ "width": 400.0
4057
4055
  }
4058
4056
  ],
4057
+ "gap": "lg",
4059
4058
  "direction": "vertical"
4060
4059
  }
4061
- ],
4062
- "type": "scaled-diagram"
4060
+ ]
4063
4061
  }
4064
- ]
4062
+ ],
4063
+ "appName": "LMS",
4064
+ "type": "dashboard-layout"
4065
4065
  }
4066
4066
  ]
4067
4067
  ]
@@ -4085,10 +4085,14 @@
4085
4085
  "render-ui",
4086
4086
  "main",
4087
4087
  {
4088
+ "type": "dashboard-layout",
4088
4089
  "children": [
4089
4090
  {
4090
4091
  "children": [
4091
4092
  {
4093
+ "type": "stack",
4094
+ "gap": "lg",
4095
+ "direction": "vertical",
4092
4096
  "children": [
4093
4097
  {
4094
4098
  "type": "breadcrumb",
@@ -4103,14 +4107,15 @@
4103
4107
  ]
4104
4108
  },
4105
4109
  {
4110
+ "direction": "horizontal",
4106
4111
  "type": "stack",
4107
- "gap": "md",
4108
4112
  "justify": "between",
4109
- "direction": "horizontal",
4113
+ "gap": "md",
4110
4114
  "children": [
4111
4115
  {
4112
- "direction": "horizontal",
4113
4116
  "type": "stack",
4117
+ "direction": "horizontal",
4118
+ "gap": "md",
4114
4119
  "children": [
4115
4120
  {
4116
4121
  "name": "trending-up",
@@ -4121,14 +4126,13 @@
4121
4126
  "content": "Progress",
4122
4127
  "variant": "h2"
4123
4128
  }
4124
- ],
4125
- "gap": "md"
4129
+ ]
4126
4130
  },
4127
4131
  {
4128
4132
  "label": "Refresh",
4129
- "action": "REFRESH",
4130
- "type": "button",
4131
4133
  "icon": "refresh-cw",
4134
+ "type": "button",
4135
+ "action": "REFRESH",
4132
4136
  "variant": "secondary"
4133
4137
  }
4134
4138
  ]
@@ -4138,22 +4142,22 @@
4138
4142
  },
4139
4143
  {
4140
4144
  "type": "box",
4141
- "padding": "md",
4142
4145
  "children": [
4143
4146
  {
4147
+ "cols": 3.0,
4144
4148
  "children": [
4145
4149
  {
4146
4150
  "type": "card",
4147
4151
  "children": [
4148
4152
  {
4149
4153
  "type": "stack",
4150
- "gap": "sm",
4151
4154
  "direction": "vertical",
4155
+ "gap": "sm",
4152
4156
  "children": [
4153
4157
  {
4154
- "variant": "caption",
4155
4158
  "content": "CourseName",
4156
- "type": "typography"
4159
+ "type": "typography",
4160
+ "variant": "caption"
4157
4161
  },
4158
4162
  {
4159
4163
  "variant": "h3",
@@ -4165,79 +4169,80 @@
4165
4169
  ]
4166
4170
  },
4167
4171
  {
4172
+ "type": "stat-display",
4168
4173
  "label": "LessonsCompleted",
4169
- "value": "@entity.lessonsCompleted",
4170
- "type": "stat-display"
4174
+ "value": "@entity.lessonsCompleted"
4171
4175
  },
4172
4176
  {
4177
+ "type": "stat-display",
4173
4178
  "label": "TotalLessons",
4174
- "value": "@entity.totalLessons",
4175
- "type": "stat-display"
4179
+ "value": "@entity.totalLessons"
4176
4180
  },
4177
4181
  {
4178
4182
  "value": "@entity.percentComplete",
4179
- "label": "PercentComplete",
4180
- "type": "stat-display"
4183
+ "type": "stat-display",
4184
+ "label": "PercentComplete"
4181
4185
  },
4182
4186
  {
4183
4187
  "children": [
4184
4188
  {
4185
4189
  "type": "stack",
4190
+ "direction": "vertical",
4186
4191
  "gap": "sm",
4187
4192
  "children": [
4188
4193
  {
4194
+ "content": "LastActivity",
4189
4195
  "variant": "caption",
4190
- "type": "typography",
4191
- "content": "LastActivity"
4196
+ "type": "typography"
4192
4197
  },
4193
4198
  {
4194
- "variant": "h3",
4195
4199
  "content": "@entity.lastActivity",
4196
- "type": "typography"
4200
+ "type": "typography",
4201
+ "variant": "h3"
4197
4202
  }
4198
- ],
4199
- "direction": "vertical"
4203
+ ]
4200
4204
  }
4201
4205
  ],
4202
4206
  "type": "card"
4203
4207
  }
4204
4208
  ],
4205
- "type": "simple-grid",
4206
- "cols": 3.0
4209
+ "type": "simple-grid"
4207
4210
  }
4208
- ]
4211
+ ],
4212
+ "padding": "md"
4209
4213
  },
4210
4214
  {
4211
4215
  "type": "divider"
4212
4216
  },
4213
4217
  {
4214
4218
  "type": "grid",
4215
- "cols": 2.0,
4216
4219
  "children": [
4217
4220
  {
4218
- "type": "card",
4219
4221
  "children": [
4220
4222
  {
4221
4223
  "type": "typography",
4222
- "variant": "caption",
4223
- "content": "Chart View"
4224
+ "content": "Chart View",
4225
+ "variant": "caption"
4224
4226
  }
4225
- ]
4227
+ ],
4228
+ "type": "card"
4226
4229
  },
4227
4230
  {
4228
4231
  "type": "card",
4229
4232
  "children": [
4230
4233
  {
4231
- "type": "typography",
4232
4234
  "variant": "caption",
4235
+ "type": "typography",
4233
4236
  "content": "Graph View"
4234
4237
  }
4235
4238
  ]
4236
4239
  }
4237
4240
  ],
4241
+ "cols": 2.0,
4238
4242
  "gap": "md"
4239
4243
  },
4240
4244
  {
4245
+ "type": "line-chart",
4241
4246
  "data": [
4242
4247
  {
4243
4248
  "date": "Jan",
@@ -4248,50 +4253,39 @@
4248
4253
  "date": "Feb"
4249
4254
  },
4250
4255
  {
4251
- "value": 15.0,
4252
- "date": "Mar"
4256
+ "date": "Mar",
4257
+ "value": 15.0
4253
4258
  },
4254
4259
  {
4255
4260
  "date": "Apr",
4256
4261
  "value": 25.0
4257
4262
  },
4258
4263
  {
4259
- "date": "May",
4260
- "value": 22.0
4264
+ "value": 22.0,
4265
+ "date": "May"
4261
4266
  },
4262
4267
  {
4263
- "date": "Jun",
4264
- "value": 30.0
4268
+ "value": 30.0,
4269
+ "date": "Jun"
4265
4270
  }
4266
- ],
4267
- "type": "line-chart"
4271
+ ]
4268
4272
  },
4269
4273
  {
4270
- "type": "chart-legend",
4271
4274
  "items": [
4272
4275
  {
4273
- "label": "Current",
4274
- "color": "primary"
4276
+ "color": "primary",
4277
+ "label": "Current"
4275
4278
  },
4276
4279
  {
4277
4280
  "label": "Previous",
4278
4281
  "color": "muted"
4279
4282
  }
4280
- ]
4283
+ ],
4284
+ "type": "chart-legend"
4281
4285
  },
4282
4286
  {
4283
4287
  "width": 400.0,
4284
- "edges": [
4285
- {
4286
- "target": "b",
4287
- "source": "a"
4288
- },
4289
- {
4290
- "source": "b",
4291
- "target": "c"
4292
- }
4293
- ],
4294
- "type": "graph-view",
4288
+ "height": 200.0,
4295
4289
  "nodes": [
4296
4290
  {
4297
4291
  "id": "a",
@@ -4302,21 +4296,29 @@
4302
4296
  "id": "b"
4303
4297
  },
4304
4298
  {
4305
- "id": "c",
4306
- "label": "End"
4299
+ "label": "End",
4300
+ "id": "c"
4307
4301
  }
4308
4302
  ],
4309
- "height": 200.0
4303
+ "edges": [
4304
+ {
4305
+ "source": "a",
4306
+ "target": "b"
4307
+ },
4308
+ {
4309
+ "target": "c",
4310
+ "source": "b"
4311
+ }
4312
+ ],
4313
+ "type": "graph-view"
4310
4314
  }
4311
- ],
4312
- "type": "stack",
4313
- "gap": "lg",
4314
- "direction": "vertical"
4315
+ ]
4315
4316
  }
4316
4317
  ],
4317
4318
  "type": "scaled-diagram"
4318
4319
  }
4319
4320
  ],
4321
+ "appName": "LMS",
4320
4322
  "navItems": [
4321
4323
  {
4322
4324
  "label": "Courses",
@@ -4329,13 +4331,11 @@
4329
4331
  "href": "/enroll"
4330
4332
  },
4331
4333
  {
4332
- "href": "/progress",
4333
4334
  "label": "Progress",
4334
- "icon": "layout-list"
4335
+ "icon": "layout-list",
4336
+ "href": "/progress"
4335
4337
  }
4336
- ],
4337
- "type": "dashboard-layout",
4338
- "appName": "LMS"
4338
+ ]
4339
4339
  }
4340
4340
  ]
4341
4341
  ]
@@ -4350,8 +4350,8 @@
4350
4350
  "Progress",
4351
4351
  {
4352
4352
  "emit": {
4353
- "success": "ProgressLoaded",
4354
- "failure": "ProgressLoadFailed"
4353
+ "failure": "ProgressLoadFailed",
4354
+ "success": "ProgressLoaded"
4355
4355
  }
4356
4356
  }
4357
4357
  ],
@@ -4359,30 +4359,33 @@
4359
4359
  "render-ui",
4360
4360
  "main",
4361
4361
  {
4362
+ "appName": "LMS",
4363
+ "type": "dashboard-layout",
4362
4364
  "navItems": [
4363
4365
  {
4364
- "label": "Courses",
4365
4366
  "href": "/courses",
4366
- "icon": "book-open"
4367
+ "icon": "book-open",
4368
+ "label": "Courses"
4367
4369
  },
4368
4370
  {
4369
- "href": "/enroll",
4370
4371
  "label": "Enroll",
4371
- "icon": "layout-list"
4372
+ "icon": "layout-list",
4373
+ "href": "/enroll"
4372
4374
  },
4373
4375
  {
4374
- "icon": "layout-list",
4376
+ "label": "Progress",
4375
4377
  "href": "/progress",
4376
- "label": "Progress"
4378
+ "icon": "layout-list"
4377
4379
  }
4378
4380
  ],
4379
- "type": "dashboard-layout",
4380
- "appName": "LMS",
4381
4381
  "children": [
4382
4382
  {
4383
4383
  "type": "scaled-diagram",
4384
4384
  "children": [
4385
4385
  {
4386
+ "direction": "vertical",
4387
+ "type": "stack",
4388
+ "gap": "lg",
4386
4389
  "children": [
4387
4390
  {
4388
4391
  "type": "breadcrumb",
@@ -4398,30 +4401,30 @@
4398
4401
  },
4399
4402
  {
4400
4403
  "type": "stack",
4401
- "justify": "between",
4402
4404
  "gap": "md",
4403
4405
  "direction": "horizontal",
4406
+ "justify": "between",
4404
4407
  "children": [
4405
4408
  {
4406
4409
  "gap": "md",
4407
4410
  "type": "stack",
4408
- "direction": "horizontal",
4409
4411
  "children": [
4410
4412
  {
4411
- "name": "trending-up",
4412
- "type": "icon"
4413
+ "type": "icon",
4414
+ "name": "trending-up"
4413
4415
  },
4414
4416
  {
4415
- "variant": "h2",
4417
+ "content": "Progress",
4416
4418
  "type": "typography",
4417
- "content": "Progress"
4419
+ "variant": "h2"
4418
4420
  }
4419
- ]
4421
+ ],
4422
+ "direction": "horizontal"
4420
4423
  },
4421
4424
  {
4422
- "action": "REFRESH",
4423
4425
  "icon": "refresh-cw",
4424
4426
  "type": "button",
4427
+ "action": "REFRESH",
4425
4428
  "variant": "secondary",
4426
4429
  "label": "Refresh"
4427
4430
  }
@@ -4431,24 +4434,24 @@
4431
4434
  "type": "divider"
4432
4435
  },
4433
4436
  {
4434
- "type": "box",
4435
4437
  "padding": "md",
4436
4438
  "children": [
4437
4439
  {
4440
+ "cols": 3.0,
4438
4441
  "type": "simple-grid",
4439
4442
  "children": [
4440
4443
  {
4441
4444
  "type": "card",
4442
4445
  "children": [
4443
4446
  {
4444
- "gap": "sm",
4445
4447
  "type": "stack",
4446
4448
  "direction": "vertical",
4449
+ "gap": "sm",
4447
4450
  "children": [
4448
4451
  {
4449
- "type": "typography",
4450
4452
  "variant": "caption",
4451
- "content": "CourseName"
4453
+ "content": "CourseName",
4454
+ "type": "typography"
4452
4455
  },
4453
4456
  {
4454
4457
  "type": "typography",
@@ -4461,45 +4464,45 @@
4461
4464
  },
4462
4465
  {
4463
4466
  "type": "stat-display",
4464
- "label": "LessonsCompleted",
4465
- "value": "@entity.lessonsCompleted"
4467
+ "value": "@entity.lessonsCompleted",
4468
+ "label": "LessonsCompleted"
4466
4469
  },
4467
4470
  {
4468
- "type": "stat-display",
4469
4471
  "value": "@entity.totalLessons",
4472
+ "type": "stat-display",
4470
4473
  "label": "TotalLessons"
4471
4474
  },
4472
4475
  {
4473
4476
  "type": "stat-display",
4474
- "label": "PercentComplete",
4475
- "value": "@entity.percentComplete"
4477
+ "value": "@entity.percentComplete",
4478
+ "label": "PercentComplete"
4476
4479
  },
4477
4480
  {
4478
- "type": "card",
4479
4481
  "children": [
4480
4482
  {
4481
4483
  "direction": "vertical",
4482
4484
  "type": "stack",
4485
+ "gap": "sm",
4483
4486
  "children": [
4484
4487
  {
4485
- "variant": "caption",
4486
4488
  "content": "LastActivity",
4487
- "type": "typography"
4489
+ "type": "typography",
4490
+ "variant": "caption"
4488
4491
  },
4489
4492
  {
4490
4493
  "variant": "h3",
4491
4494
  "type": "typography",
4492
4495
  "content": "@entity.lastActivity"
4493
4496
  }
4494
- ],
4495
- "gap": "sm"
4497
+ ]
4496
4498
  }
4497
- ]
4499
+ ],
4500
+ "type": "card"
4498
4501
  }
4499
- ],
4500
- "cols": 3.0
4502
+ ]
4501
4503
  }
4502
- ]
4504
+ ],
4505
+ "type": "box"
4503
4506
  },
4504
4507
  {
4505
4508
  "type": "divider"
@@ -4508,57 +4511,57 @@
4508
4511
  "type": "grid",
4509
4512
  "children": [
4510
4513
  {
4511
- "type": "card",
4512
4514
  "children": [
4513
4515
  {
4514
- "content": "Chart View",
4515
4516
  "type": "typography",
4517
+ "content": "Chart View",
4516
4518
  "variant": "caption"
4517
4519
  }
4518
- ]
4520
+ ],
4521
+ "type": "card"
4519
4522
  },
4520
4523
  {
4521
4524
  "type": "card",
4522
4525
  "children": [
4523
4526
  {
4524
4527
  "content": "Graph View",
4525
- "type": "typography",
4526
- "variant": "caption"
4528
+ "variant": "caption",
4529
+ "type": "typography"
4527
4530
  }
4528
4531
  ]
4529
4532
  }
4530
4533
  ],
4531
- "cols": 2.0,
4532
- "gap": "md"
4534
+ "gap": "md",
4535
+ "cols": 2.0
4533
4536
  },
4534
4537
  {
4535
- "type": "line-chart",
4536
4538
  "data": [
4537
4539
  {
4538
4540
  "date": "Jan",
4539
4541
  "value": 12.0
4540
4542
  },
4541
4543
  {
4542
- "value": 19.0,
4543
- "date": "Feb"
4544
+ "date": "Feb",
4545
+ "value": 19.0
4544
4546
  },
4545
4547
  {
4546
- "value": 15.0,
4547
- "date": "Mar"
4548
+ "date": "Mar",
4549
+ "value": 15.0
4548
4550
  },
4549
4551
  {
4550
- "date": "Apr",
4551
- "value": 25.0
4552
+ "value": 25.0,
4553
+ "date": "Apr"
4552
4554
  },
4553
4555
  {
4554
- "value": 22.0,
4555
- "date": "May"
4556
+ "date": "May",
4557
+ "value": 22.0
4556
4558
  },
4557
4559
  {
4558
4560
  "date": "Jun",
4559
4561
  "value": 30.0
4560
4562
  }
4561
- ]
4563
+ ],
4564
+ "type": "line-chart"
4562
4565
  },
4563
4566
  {
4564
4567
  "items": [
@@ -4567,15 +4570,27 @@
4567
4570
  "color": "primary"
4568
4571
  },
4569
4572
  {
4570
- "label": "Previous",
4571
- "color": "muted"
4573
+ "color": "muted",
4574
+ "label": "Previous"
4572
4575
  }
4573
4576
  ],
4574
4577
  "type": "chart-legend"
4575
4578
  },
4576
4579
  {
4577
- "width": 400.0,
4578
- "height": 200.0,
4580
+ "nodes": [
4581
+ {
4582
+ "label": "Start",
4583
+ "id": "a"
4584
+ },
4585
+ {
4586
+ "label": "Process",
4587
+ "id": "b"
4588
+ },
4589
+ {
4590
+ "id": "c",
4591
+ "label": "End"
4592
+ }
4593
+ ],
4579
4594
  "edges": [
4580
4595
  {
4581
4596
  "target": "b",
@@ -4586,26 +4601,11 @@
4586
4601
  "target": "c"
4587
4602
  }
4588
4603
  ],
4604
+ "width": 400.0,
4589
4605
  "type": "graph-view",
4590
- "nodes": [
4591
- {
4592
- "id": "a",
4593
- "label": "Start"
4594
- },
4595
- {
4596
- "id": "b",
4597
- "label": "Process"
4598
- },
4599
- {
4600
- "label": "End",
4601
- "id": "c"
4602
- }
4603
- ]
4606
+ "height": 200.0
4604
4607
  }
4605
- ],
4606
- "gap": "lg",
4607
- "direction": "vertical",
4608
- "type": "stack"
4608
+ ]
4609
4609
  }
4610
4610
  ]
4611
4611
  }