@almadar/std 14.25.0 → 14.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/behaviors/registry/agent/atoms/std-agent-activity-log.orb +82 -82
  2. package/behaviors/registry/agent/atoms/std-agent-chat-thread.orb +110 -110
  3. package/behaviors/registry/agent/atoms/std-agent-classifier.orb +112 -112
  4. package/behaviors/registry/agent/atoms/std-agent-completion.orb +90 -90
  5. package/behaviors/registry/agent/atoms/std-agent-context-window.orb +406 -406
  6. package/behaviors/registry/agent/atoms/std-agent-conversation.orb +94 -94
  7. package/behaviors/registry/agent/atoms/std-agent-memory.orb +83 -83
  8. package/behaviors/registry/agent/atoms/std-agent-provider.orb +122 -122
  9. package/behaviors/registry/agent/atoms/std-agent-search.orb +51 -51
  10. package/behaviors/registry/agent/atoms/std-agent-session.orb +122 -122
  11. package/behaviors/registry/agent/atoms/std-agent-step-progress.orb +214 -214
  12. package/behaviors/registry/agent/atoms/std-agent-token-gauge.orb +329 -329
  13. package/behaviors/registry/agent/atoms/std-agent-tool-call.orb +67 -67
  14. package/behaviors/registry/agent/molecules/std-agent-fix-loop.orb +202 -202
  15. package/behaviors/registry/agent/molecules/std-agent-learner.orb +185 -185
  16. package/behaviors/registry/agent/molecules/std-agent-planner.orb +122 -122
  17. package/behaviors/registry/agent/molecules/std-agent-rag.orb +114 -114
  18. package/behaviors/registry/agent/molecules/std-agent-tool-loop.orb +209 -209
  19. package/behaviors/registry/agent/organisms/std-agent-assistant.orb +1039 -1039
  20. package/behaviors/registry/agent/organisms/std-agent-builder.orb +2977 -2977
  21. package/behaviors/registry/agent/organisms/std-agent-pipeline.orb +2090 -2090
  22. package/behaviors/registry/agent/organisms/std-agent-reviewer.orb +935 -935
  23. package/behaviors/registry/agent/organisms/std-agent-tutor.orb +760 -760
  24. package/behaviors/registry/app/atoms/std-ap-bill.orb +62 -62
  25. package/behaviors/registry/app/atoms/std-applicant.orb +35 -35
  26. package/behaviors/registry/app/atoms/std-approval-request.orb +152 -166
  27. package/behaviors/registry/app/atoms/std-campaign-goal.orb +120 -125
  28. package/behaviors/registry/app/atoms/std-change-order.orb +65 -65
  29. package/behaviors/registry/app/atoms/std-chart-of-accounts.orb +58 -58
  30. package/behaviors/registry/app/atoms/std-checkin.orb +57 -57
  31. package/behaviors/registry/app/atoms/std-checkout-terminal.orb +458 -260
  32. package/behaviors/registry/app/atoms/std-class-roster.orb +46 -46
  33. package/behaviors/registry/app/atoms/std-class-session.orb +63 -57
  34. package/behaviors/registry/app/atoms/std-court-deadline.orb +60 -60
  35. package/behaviors/registry/app/atoms/std-customer-account.orb +49 -49
  36. package/behaviors/registry/app/atoms/std-donation-receipt.orb +40 -40
  37. package/behaviors/registry/app/atoms/std-donor.orb +52 -75
  38. package/behaviors/registry/app/atoms/std-drip-sequence.orb +46 -46
  39. package/behaviors/registry/app/atoms/std-driver.orb +101 -101
  40. package/behaviors/registry/app/atoms/std-dunning.orb +89 -100
  41. package/behaviors/registry/app/atoms/std-email-broadcast.orb +29 -29
  42. package/behaviors/registry/app/atoms/std-event.orb +59 -59
  43. package/behaviors/registry/app/atoms/std-health-score.orb +134 -196
  44. package/behaviors/registry/app/atoms/std-help-article.orb +110 -135
  45. package/behaviors/registry/app/atoms/std-help-category.orb +79 -86
  46. package/behaviors/registry/app/atoms/std-interview-slot.orb +34 -34
  47. package/behaviors/registry/app/atoms/std-invoice.orb +111 -129
  48. package/behaviors/registry/app/atoms/std-kitchen-display.orb +56 -56
  49. package/behaviors/registry/app/atoms/std-lease.orb +95 -87
  50. package/behaviors/registry/app/atoms/std-ledger-entry.orb +103 -108
  51. package/behaviors/registry/app/atoms/std-maintenance-request.orb +97 -97
  52. package/behaviors/registry/app/atoms/std-matter.orb +139 -161
  53. package/behaviors/registry/app/atoms/std-membership.orb +73 -75
  54. package/behaviors/registry/app/atoms/std-menu.orb +63 -63
  55. package/behaviors/registry/app/atoms/std-modifier-group.orb +52 -52
  56. package/behaviors/registry/app/atoms/std-nps-survey.orb +85 -85
  57. package/behaviors/registry/app/atoms/std-offer-letter.orb +41 -41
  58. package/behaviors/registry/app/atoms/std-payout-ledger.orb +63 -63
  59. package/behaviors/registry/app/atoms/std-question-bank.orb +51 -51
  60. package/behaviors/registry/app/atoms/std-receipt.orb +46 -46
  61. package/behaviors/registry/app/atoms/std-recurring-charge.orb +108 -118
  62. package/behaviors/registry/app/atoms/std-renewal-risk.orb +99 -111
  63. package/behaviors/registry/app/atoms/std-rent-charge.orb +27 -27
  64. package/behaviors/registry/app/atoms/std-reorder-rule.orb +53 -53
  65. package/behaviors/registry/app/atoms/std-response-collector.orb +45 -45
  66. package/behaviors/registry/app/atoms/std-rfi.orb +84 -84
  67. package/behaviors/registry/app/atoms/std-route-optimize.orb +43 -43
  68. package/behaviors/registry/app/atoms/std-segment.orb +43 -51
  69. package/behaviors/registry/app/atoms/std-stock-level.orb +58 -58
  70. package/behaviors/registry/app/atoms/std-submittal.orb +173 -157
  71. package/behaviors/registry/app/atoms/std-table-map.orb +43 -43
  72. package/behaviors/registry/app/atoms/std-technician-dispatch.orb +37 -37
  73. package/behaviors/registry/app/atoms/std-telematics-event.orb +64 -64
  74. package/behaviors/registry/app/atoms/std-template-editor.orb +65 -65
  75. package/behaviors/registry/app/atoms/std-tenant.orb +38 -38
  76. package/behaviors/registry/app/atoms/std-ticket-tier.orb +63 -63
  77. package/behaviors/registry/app/atoms/std-time-entry.orb +114 -114
  78. package/behaviors/registry/app/atoms/std-timesheet.orb +79 -102
  79. package/behaviors/registry/app/atoms/std-trial.orb +78 -85
  80. package/behaviors/registry/app/atoms/std-vehicle.orb +149 -149
  81. package/behaviors/registry/app/atoms/std-waitlist.orb +49 -49
  82. package/behaviors/registry/app/atoms/std-warehouse.orb +125 -130
  83. package/behaviors/registry/app/atoms/std-work-order.orb +71 -71
  84. package/behaviors/registry/app/molecules/std-applicant-form.orb +52 -52
  85. package/behaviors/registry/app/molecules/std-application.orb +152 -152
  86. package/behaviors/registry/app/molecules/std-broadcast-builder.orb +91 -108
  87. package/behaviors/registry/app/molecules/std-cart.orb +62 -62
  88. package/behaviors/registry/app/molecules/std-form-builder.orb +102 -102
  89. package/behaviors/registry/app/molecules/std-ledger-entry-form.orb +67 -118
  90. package/behaviors/registry/app/molecules/std-stock-adjustment.orb +73 -73
  91. package/behaviors/registry/app/molecules/std-vendor-onboarding.orb +269 -269
  92. package/behaviors/registry/app/organisms/std-accounting.orb +120 -120
  93. package/behaviors/registry/app/organisms/std-api-gateway.orb +214 -214
  94. package/behaviors/registry/app/organisms/std-ats-recruiting.orb +143 -143
  95. package/behaviors/registry/app/organisms/std-booking-system.orb +698 -698
  96. package/behaviors/registry/app/organisms/std-cicd-pipeline.orb +282 -282
  97. package/behaviors/registry/app/organisms/std-cms.orb +315 -315
  98. package/behaviors/registry/app/organisms/std-coding-academy.orb +226 -226
  99. package/behaviors/registry/app/organisms/std-construction-pm.orb +159 -159
  100. package/behaviors/registry/app/organisms/std-crm.orb +265 -265
  101. package/behaviors/registry/app/organisms/std-customer-success.orb +106 -106
  102. package/behaviors/registry/app/organisms/std-devops-dashboard.orb +384 -384
  103. package/behaviors/registry/app/organisms/std-document-mgmt.orb +101 -101
  104. package/behaviors/registry/app/organisms/std-ecommerce.orb +735 -735
  105. package/behaviors/registry/app/organisms/std-event-ticketing.orb +207 -207
  106. package/behaviors/registry/app/organisms/std-field-service.orb +181 -181
  107. package/behaviors/registry/app/organisms/std-finance-tracker.orb +227 -227
  108. package/behaviors/registry/app/organisms/std-fitness-studio.orb +145 -145
  109. package/behaviors/registry/app/organisms/std-fleet-mgmt.orb +149 -149
  110. package/behaviors/registry/app/organisms/std-forum.orb +150 -150
  111. package/behaviors/registry/app/organisms/std-healthcare.orb +531 -531
  112. package/behaviors/registry/app/organisms/std-helpdesk.orb +161 -161
  113. package/behaviors/registry/app/organisms/std-hr-portal.orb +455 -455
  114. package/behaviors/registry/app/organisms/std-inventory.orb +162 -162
  115. package/behaviors/registry/app/organisms/std-iot-dashboard.orb +353 -353
  116. package/behaviors/registry/app/organisms/std-legal-case.orb +164 -164
  117. package/behaviors/registry/app/organisms/std-listings.orb +147 -147
  118. package/behaviors/registry/app/organisms/std-lms.orb +409 -409
  119. package/behaviors/registry/app/organisms/std-marketing-campaign.orb +123 -123
  120. package/behaviors/registry/app/organisms/std-marketplace.orb +251 -251
  121. package/behaviors/registry/app/organisms/std-nonprofit-donations.orb +105 -105
  122. package/behaviors/registry/app/organisms/std-notes.orb +112 -112
  123. package/behaviors/registry/app/organisms/std-project-manager.orb +200 -200
  124. package/behaviors/registry/app/organisms/std-property-mgmt.orb +178 -178
  125. package/behaviors/registry/app/organisms/std-public-help-center.orb +133 -133
  126. package/behaviors/registry/app/organisms/std-realtime-chat.orb +245 -245
  127. package/behaviors/registry/app/organisms/std-restaurant-pos.orb +131 -131
  128. package/behaviors/registry/app/organisms/std-retail-pos.orb +129 -129
  129. package/behaviors/registry/app/organisms/std-social-feed.orb +159 -159
  130. package/behaviors/registry/app/organisms/std-subscription-billing.orb +187 -187
  131. package/behaviors/registry/app/organisms/std-survey.orb +129 -129
  132. package/behaviors/registry/app/organisms/std-time-tracking.orb +167 -167
  133. package/behaviors/registry/app/organisms/std-trading-dashboard.orb +263 -263
  134. package/behaviors/registry/app/organisms/std-wiki.orb +139 -139
  135. package/behaviors/registry/core/atoms/std-billable-hour.orb +65 -65
  136. package/behaviors/registry/core/atoms/std-branching-logic.orb +62 -62
  137. package/behaviors/registry/core/atoms/std-browse.orb +58 -58
  138. package/behaviors/registry/core/atoms/std-cache-aside.orb +97 -97
  139. package/behaviors/registry/core/atoms/std-calendar.orb +50 -50
  140. package/behaviors/registry/core/atoms/std-circuit-breaker.orb +184 -184
  141. package/behaviors/registry/core/atoms/std-confirmation.orb +25 -25
  142. package/behaviors/registry/core/atoms/std-display.orb +1 -1
  143. package/behaviors/registry/core/atoms/std-drawer.orb +14 -14
  144. package/behaviors/registry/core/atoms/std-esign-request.orb +29 -29
  145. package/behaviors/registry/core/atoms/std-file-store.orb +91 -79
  146. package/behaviors/registry/core/atoms/std-filter.orb +12 -12
  147. package/behaviors/registry/core/atoms/std-flag.orb +95 -95
  148. package/behaviors/registry/core/atoms/std-gallery.orb +48 -48
  149. package/behaviors/registry/core/atoms/std-geosearch.orb +26 -26
  150. package/behaviors/registry/core/atoms/std-graphs.orb +37 -37
  151. package/behaviors/registry/core/atoms/std-image-upload-multi.orb +56 -56
  152. package/behaviors/registry/core/atoms/std-mod-queue.orb +56 -56
  153. package/behaviors/registry/core/atoms/std-modal.orb +20 -20
  154. package/behaviors/registry/core/atoms/std-page-tree.orb +88 -64
  155. package/behaviors/registry/core/atoms/std-pagination.orb +17 -17
  156. package/behaviors/registry/core/atoms/std-push.orb +38 -38
  157. package/behaviors/registry/core/atoms/std-rate-limiter.orb +168 -168
  158. package/behaviors/registry/core/atoms/std-rating-review.orb +68 -68
  159. package/behaviors/registry/core/atoms/std-related.orb +34 -34
  160. package/behaviors/registry/core/atoms/std-rich-editor.orb +101 -108
  161. package/behaviors/registry/core/atoms/std-saved-search.orb +55 -55
  162. package/behaviors/registry/core/atoms/std-search.orb +9 -9
  163. package/behaviors/registry/core/atoms/std-selection.orb +77 -77
  164. package/behaviors/registry/core/atoms/std-signature-capture.orb +89 -89
  165. package/behaviors/registry/core/atoms/std-stats.orb +104 -104
  166. package/behaviors/registry/core/atoms/std-tabs.orb +27 -27
  167. package/behaviors/registry/core/atoms/std-tag-taxonomy.orb +69 -69
  168. package/behaviors/registry/core/atoms/std-thread.orb +56 -56
  169. package/behaviors/registry/core/atoms/std-version-history.orb +81 -81
  170. package/behaviors/registry/core/atoms/std-vote.orb +39 -39
  171. package/behaviors/registry/core/molecules/std-app-layout.orb +21 -21
  172. package/behaviors/registry/core/molecules/std-dashboard-grid-layout.orb +11 -11
  173. package/behaviors/registry/core/molecules/std-dashboard.orb +52 -52
  174. package/behaviors/registry/core/molecules/std-esign-flow.orb +86 -104
  175. package/behaviors/registry/core/molecules/std-filtered-list.orb +22 -22
  176. package/behaviors/registry/core/molecules/std-form-advanced.orb +133 -133
  177. package/behaviors/registry/core/molecules/std-list.orb +71 -71
  178. package/behaviors/registry/core/molecules/std-master-detail-layout.orb +13 -13
  179. package/behaviors/registry/core/molecules/std-stack-layout.orb +12 -12
  180. package/behaviors/registry/core/molecules/std-tabs-layout.orb +11 -11
  181. package/behaviors/registry/core/molecules/std-wizard-form.orb +152 -152
  182. package/behaviors/registry/core/organisms/std-generic-app.orb +544 -544
  183. package/behaviors/registry/game/atoms/std-collision.orb +0 -595
  184. package/behaviors/registry/game/atoms/std-combat.orb +0 -524
  185. package/behaviors/registry/game/atoms/std-dialogue-box.orb +27 -27
  186. package/behaviors/registry/game/atoms/std-game-canvas2d.orb +40 -40
  187. package/behaviors/registry/game/atoms/std-gameflow.orb +0 -456
  188. package/behaviors/registry/game/atoms/std-movement.orb +0 -1279
  189. package/behaviors/registry/game/atoms/std-overworld.orb +56 -56
  190. package/behaviors/registry/game/atoms/std-physics2d.orb +78 -78
  191. package/behaviors/registry/game/atoms/std-quest.orb +122 -122
  192. package/behaviors/registry/game/atoms/std-timer.orb +266 -266
  193. package/behaviors/registry/game/organisms/std-arcade-game.orb +0 -1446
  194. package/behaviors/registry/game/organisms/std-logic-training.orb +0 -1037
  195. package/behaviors/registry/game/organisms/std-platformer-app.orb +0 -2567
  196. package/behaviors/registry/game/organisms/std-puzzle-app.orb +0 -1197
  197. package/behaviors/registry/game/organisms/std-rpg-game.orb +0 -3509
  198. package/behaviors/registry/game/organisms/std-stem-lab.orb +0 -2003
  199. package/behaviors/registry/game/organisms/std-strategy-game.orb +0 -2686
  200. package/behaviors/registry/probes/molecules/std-source-scope-probe.orb +32 -32
  201. package/behaviors/registry/service/atoms/std-service-calendar-ical.orb +51 -51
  202. package/behaviors/registry/service/atoms/std-service-custom-bearer.orb +69 -69
  203. package/behaviors/registry/service/atoms/std-service-email.orb +55 -55
  204. package/behaviors/registry/service/atoms/std-service-github.orb +70 -70
  205. package/behaviors/registry/service/atoms/std-service-llm.orb +70 -70
  206. package/behaviors/registry/service/atoms/std-service-maps.orb +83 -83
  207. package/behaviors/registry/service/atoms/std-service-oauth.orb +51 -51
  208. package/behaviors/registry/service/atoms/std-service-print.orb +114 -114
  209. package/behaviors/registry/service/atoms/std-service-redis.orb +61 -61
  210. package/behaviors/registry/service/atoms/std-service-storage.orb +51 -51
  211. package/behaviors/registry/service/atoms/std-service-stripe.orb +111 -111
  212. package/behaviors/registry/service/atoms/std-service-twilio.orb +48 -48
  213. package/behaviors/registry/service/atoms/std-service-youtube.orb +45 -45
  214. package/behaviors/registry/service/organisms/std-service-marketplace.orb +911 -911
  215. package/behaviors/registry/service/organisms/std-service-research-assistant.orb +883 -883
  216. package/dist/behaviors/registry/agent/atoms/std-agent-activity-log.orb +82 -82
  217. package/dist/behaviors/registry/agent/atoms/std-agent-chat-thread.orb +110 -110
  218. package/dist/behaviors/registry/agent/atoms/std-agent-classifier.orb +112 -112
  219. package/dist/behaviors/registry/agent/atoms/std-agent-completion.orb +90 -90
  220. package/dist/behaviors/registry/agent/atoms/std-agent-context-window.orb +406 -406
  221. package/dist/behaviors/registry/agent/atoms/std-agent-conversation.orb +94 -94
  222. package/dist/behaviors/registry/agent/atoms/std-agent-memory.orb +83 -83
  223. package/dist/behaviors/registry/agent/atoms/std-agent-provider.orb +122 -122
  224. package/dist/behaviors/registry/agent/atoms/std-agent-search.orb +51 -51
  225. package/dist/behaviors/registry/agent/atoms/std-agent-session.orb +122 -122
  226. package/dist/behaviors/registry/agent/atoms/std-agent-step-progress.orb +214 -214
  227. package/dist/behaviors/registry/agent/atoms/std-agent-token-gauge.orb +329 -329
  228. package/dist/behaviors/registry/agent/atoms/std-agent-tool-call.orb +67 -67
  229. package/dist/behaviors/registry/agent/molecules/std-agent-fix-loop.orb +202 -202
  230. package/dist/behaviors/registry/agent/molecules/std-agent-learner.orb +185 -185
  231. package/dist/behaviors/registry/agent/molecules/std-agent-planner.orb +122 -122
  232. package/dist/behaviors/registry/agent/molecules/std-agent-rag.orb +114 -114
  233. package/dist/behaviors/registry/agent/molecules/std-agent-tool-loop.orb +209 -209
  234. package/dist/behaviors/registry/agent/organisms/std-agent-assistant.orb +1039 -1039
  235. package/dist/behaviors/registry/agent/organisms/std-agent-builder.orb +2977 -2977
  236. package/dist/behaviors/registry/agent/organisms/std-agent-pipeline.orb +2090 -2090
  237. package/dist/behaviors/registry/agent/organisms/std-agent-reviewer.orb +935 -935
  238. package/dist/behaviors/registry/agent/organisms/std-agent-tutor.orb +760 -760
  239. package/dist/behaviors/registry/app/atoms/std-ap-bill.orb +62 -62
  240. package/dist/behaviors/registry/app/atoms/std-applicant.orb +35 -35
  241. package/dist/behaviors/registry/app/atoms/std-approval-request.orb +152 -166
  242. package/dist/behaviors/registry/app/atoms/std-campaign-goal.orb +120 -125
  243. package/dist/behaviors/registry/app/atoms/std-change-order.orb +65 -65
  244. package/dist/behaviors/registry/app/atoms/std-chart-of-accounts.orb +58 -58
  245. package/dist/behaviors/registry/app/atoms/std-checkin.orb +57 -57
  246. package/dist/behaviors/registry/app/atoms/std-checkout-terminal.orb +458 -260
  247. package/dist/behaviors/registry/app/atoms/std-class-roster.orb +46 -46
  248. package/dist/behaviors/registry/app/atoms/std-class-session.orb +63 -57
  249. package/dist/behaviors/registry/app/atoms/std-court-deadline.orb +60 -60
  250. package/dist/behaviors/registry/app/atoms/std-customer-account.orb +49 -49
  251. package/dist/behaviors/registry/app/atoms/std-donation-receipt.orb +40 -40
  252. package/dist/behaviors/registry/app/atoms/std-donor.orb +52 -75
  253. package/dist/behaviors/registry/app/atoms/std-drip-sequence.orb +46 -46
  254. package/dist/behaviors/registry/app/atoms/std-driver.orb +101 -101
  255. package/dist/behaviors/registry/app/atoms/std-dunning.orb +89 -100
  256. package/dist/behaviors/registry/app/atoms/std-email-broadcast.orb +29 -29
  257. package/dist/behaviors/registry/app/atoms/std-event.orb +59 -59
  258. package/dist/behaviors/registry/app/atoms/std-health-score.orb +134 -196
  259. package/dist/behaviors/registry/app/atoms/std-help-article.orb +110 -135
  260. package/dist/behaviors/registry/app/atoms/std-help-category.orb +79 -86
  261. package/dist/behaviors/registry/app/atoms/std-interview-slot.orb +34 -34
  262. package/dist/behaviors/registry/app/atoms/std-invoice.orb +111 -129
  263. package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +56 -56
  264. package/dist/behaviors/registry/app/atoms/std-lease.orb +95 -87
  265. package/dist/behaviors/registry/app/atoms/std-ledger-entry.orb +103 -108
  266. package/dist/behaviors/registry/app/atoms/std-maintenance-request.orb +97 -97
  267. package/dist/behaviors/registry/app/atoms/std-matter.orb +139 -161
  268. package/dist/behaviors/registry/app/atoms/std-membership.orb +73 -75
  269. package/dist/behaviors/registry/app/atoms/std-menu.orb +63 -63
  270. package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +52 -52
  271. package/dist/behaviors/registry/app/atoms/std-nps-survey.orb +85 -85
  272. package/dist/behaviors/registry/app/atoms/std-offer-letter.orb +41 -41
  273. package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +63 -63
  274. package/dist/behaviors/registry/app/atoms/std-question-bank.orb +51 -51
  275. package/dist/behaviors/registry/app/atoms/std-receipt.orb +46 -46
  276. package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +108 -118
  277. package/dist/behaviors/registry/app/atoms/std-renewal-risk.orb +99 -111
  278. package/dist/behaviors/registry/app/atoms/std-rent-charge.orb +27 -27
  279. package/dist/behaviors/registry/app/atoms/std-reorder-rule.orb +53 -53
  280. package/dist/behaviors/registry/app/atoms/std-response-collector.orb +45 -45
  281. package/dist/behaviors/registry/app/atoms/std-rfi.orb +84 -84
  282. package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +43 -43
  283. package/dist/behaviors/registry/app/atoms/std-segment.orb +43 -51
  284. package/dist/behaviors/registry/app/atoms/std-stock-level.orb +58 -58
  285. package/dist/behaviors/registry/app/atoms/std-submittal.orb +173 -157
  286. package/dist/behaviors/registry/app/atoms/std-table-map.orb +43 -43
  287. package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +37 -37
  288. package/dist/behaviors/registry/app/atoms/std-telematics-event.orb +64 -64
  289. package/dist/behaviors/registry/app/atoms/std-template-editor.orb +65 -65
  290. package/dist/behaviors/registry/app/atoms/std-tenant.orb +38 -38
  291. package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +63 -63
  292. package/dist/behaviors/registry/app/atoms/std-time-entry.orb +114 -114
  293. package/dist/behaviors/registry/app/atoms/std-timesheet.orb +79 -102
  294. package/dist/behaviors/registry/app/atoms/std-trial.orb +78 -85
  295. package/dist/behaviors/registry/app/atoms/std-vehicle.orb +149 -149
  296. package/dist/behaviors/registry/app/atoms/std-waitlist.orb +49 -49
  297. package/dist/behaviors/registry/app/atoms/std-warehouse.orb +125 -130
  298. package/dist/behaviors/registry/app/atoms/std-work-order.orb +71 -71
  299. package/dist/behaviors/registry/app/molecules/std-applicant-form.orb +52 -52
  300. package/dist/behaviors/registry/app/molecules/std-application.orb +152 -152
  301. package/dist/behaviors/registry/app/molecules/std-broadcast-builder.orb +91 -108
  302. package/dist/behaviors/registry/app/molecules/std-cart.orb +62 -62
  303. package/dist/behaviors/registry/app/molecules/std-form-builder.orb +102 -102
  304. package/dist/behaviors/registry/app/molecules/std-ledger-entry-form.orb +67 -118
  305. package/dist/behaviors/registry/app/molecules/std-stock-adjustment.orb +73 -73
  306. package/dist/behaviors/registry/app/molecules/std-vendor-onboarding.orb +269 -269
  307. package/dist/behaviors/registry/app/organisms/std-accounting.orb +120 -120
  308. package/dist/behaviors/registry/app/organisms/std-api-gateway.orb +214 -214
  309. package/dist/behaviors/registry/app/organisms/std-ats-recruiting.orb +143 -143
  310. package/dist/behaviors/registry/app/organisms/std-booking-system.orb +698 -698
  311. package/dist/behaviors/registry/app/organisms/std-cicd-pipeline.orb +282 -282
  312. package/dist/behaviors/registry/app/organisms/std-cms.orb +315 -315
  313. package/dist/behaviors/registry/app/organisms/std-coding-academy.orb +226 -226
  314. package/dist/behaviors/registry/app/organisms/std-construction-pm.orb +159 -159
  315. package/dist/behaviors/registry/app/organisms/std-crm.orb +265 -265
  316. package/dist/behaviors/registry/app/organisms/std-customer-success.orb +106 -106
  317. package/dist/behaviors/registry/app/organisms/std-devops-dashboard.orb +384 -384
  318. package/dist/behaviors/registry/app/organisms/std-document-mgmt.orb +101 -101
  319. package/dist/behaviors/registry/app/organisms/std-ecommerce.orb +735 -735
  320. package/dist/behaviors/registry/app/organisms/std-event-ticketing.orb +207 -207
  321. package/dist/behaviors/registry/app/organisms/std-field-service.orb +181 -181
  322. package/dist/behaviors/registry/app/organisms/std-finance-tracker.orb +227 -227
  323. package/dist/behaviors/registry/app/organisms/std-fitness-studio.orb +145 -145
  324. package/dist/behaviors/registry/app/organisms/std-fleet-mgmt.orb +149 -149
  325. package/dist/behaviors/registry/app/organisms/std-forum.orb +150 -150
  326. package/dist/behaviors/registry/app/organisms/std-healthcare.orb +531 -531
  327. package/dist/behaviors/registry/app/organisms/std-helpdesk.orb +161 -161
  328. package/dist/behaviors/registry/app/organisms/std-hr-portal.orb +455 -455
  329. package/dist/behaviors/registry/app/organisms/std-inventory.orb +162 -162
  330. package/dist/behaviors/registry/app/organisms/std-iot-dashboard.orb +353 -353
  331. package/dist/behaviors/registry/app/organisms/std-legal-case.orb +164 -164
  332. package/dist/behaviors/registry/app/organisms/std-listings.orb +147 -147
  333. package/dist/behaviors/registry/app/organisms/std-lms.orb +409 -409
  334. package/dist/behaviors/registry/app/organisms/std-marketing-campaign.orb +123 -123
  335. package/dist/behaviors/registry/app/organisms/std-marketplace.orb +251 -251
  336. package/dist/behaviors/registry/app/organisms/std-nonprofit-donations.orb +105 -105
  337. package/dist/behaviors/registry/app/organisms/std-notes.orb +112 -112
  338. package/dist/behaviors/registry/app/organisms/std-project-manager.orb +200 -200
  339. package/dist/behaviors/registry/app/organisms/std-property-mgmt.orb +178 -178
  340. package/dist/behaviors/registry/app/organisms/std-public-help-center.orb +133 -133
  341. package/dist/behaviors/registry/app/organisms/std-realtime-chat.orb +245 -245
  342. package/dist/behaviors/registry/app/organisms/std-restaurant-pos.orb +131 -131
  343. package/dist/behaviors/registry/app/organisms/std-retail-pos.orb +129 -129
  344. package/dist/behaviors/registry/app/organisms/std-social-feed.orb +159 -159
  345. package/dist/behaviors/registry/app/organisms/std-subscription-billing.orb +187 -187
  346. package/dist/behaviors/registry/app/organisms/std-survey.orb +129 -129
  347. package/dist/behaviors/registry/app/organisms/std-time-tracking.orb +167 -167
  348. package/dist/behaviors/registry/app/organisms/std-trading-dashboard.orb +263 -263
  349. package/dist/behaviors/registry/app/organisms/std-wiki.orb +139 -139
  350. package/dist/behaviors/registry/core/atoms/std-billable-hour.orb +65 -65
  351. package/dist/behaviors/registry/core/atoms/std-branching-logic.orb +62 -62
  352. package/dist/behaviors/registry/core/atoms/std-browse.orb +58 -58
  353. package/dist/behaviors/registry/core/atoms/std-cache-aside.orb +97 -97
  354. package/dist/behaviors/registry/core/atoms/std-calendar.orb +50 -50
  355. package/dist/behaviors/registry/core/atoms/std-circuit-breaker.orb +184 -184
  356. package/dist/behaviors/registry/core/atoms/std-confirmation.orb +25 -25
  357. package/dist/behaviors/registry/core/atoms/std-display.orb +1 -1
  358. package/dist/behaviors/registry/core/atoms/std-drawer.orb +14 -14
  359. package/dist/behaviors/registry/core/atoms/std-esign-request.orb +29 -29
  360. package/dist/behaviors/registry/core/atoms/std-file-store.orb +91 -79
  361. package/dist/behaviors/registry/core/atoms/std-filter.orb +12 -12
  362. package/dist/behaviors/registry/core/atoms/std-flag.orb +95 -95
  363. package/dist/behaviors/registry/core/atoms/std-gallery.orb +48 -48
  364. package/dist/behaviors/registry/core/atoms/std-geosearch.orb +26 -26
  365. package/dist/behaviors/registry/core/atoms/std-graphs.orb +37 -37
  366. package/dist/behaviors/registry/core/atoms/std-image-upload-multi.orb +56 -56
  367. package/dist/behaviors/registry/core/atoms/std-mod-queue.orb +56 -56
  368. package/dist/behaviors/registry/core/atoms/std-modal.orb +20 -20
  369. package/dist/behaviors/registry/core/atoms/std-page-tree.orb +88 -64
  370. package/dist/behaviors/registry/core/atoms/std-pagination.orb +17 -17
  371. package/dist/behaviors/registry/core/atoms/std-push.orb +38 -38
  372. package/dist/behaviors/registry/core/atoms/std-rate-limiter.orb +168 -168
  373. package/dist/behaviors/registry/core/atoms/std-rating-review.orb +68 -68
  374. package/dist/behaviors/registry/core/atoms/std-related.orb +34 -34
  375. package/dist/behaviors/registry/core/atoms/std-rich-editor.orb +101 -108
  376. package/dist/behaviors/registry/core/atoms/std-saved-search.orb +55 -55
  377. package/dist/behaviors/registry/core/atoms/std-search.orb +9 -9
  378. package/dist/behaviors/registry/core/atoms/std-selection.orb +77 -77
  379. package/dist/behaviors/registry/core/atoms/std-signature-capture.orb +89 -89
  380. package/dist/behaviors/registry/core/atoms/std-stats.orb +104 -104
  381. package/dist/behaviors/registry/core/atoms/std-tabs.orb +27 -27
  382. package/dist/behaviors/registry/core/atoms/std-tag-taxonomy.orb +69 -69
  383. package/dist/behaviors/registry/core/atoms/std-thread.orb +56 -56
  384. package/dist/behaviors/registry/core/atoms/std-version-history.orb +81 -81
  385. package/dist/behaviors/registry/core/atoms/std-vote.orb +39 -39
  386. package/dist/behaviors/registry/core/molecules/std-app-layout.orb +21 -21
  387. package/dist/behaviors/registry/core/molecules/std-dashboard-grid-layout.orb +11 -11
  388. package/dist/behaviors/registry/core/molecules/std-dashboard.orb +52 -52
  389. package/dist/behaviors/registry/core/molecules/std-esign-flow.orb +86 -104
  390. package/dist/behaviors/registry/core/molecules/std-filtered-list.orb +22 -22
  391. package/dist/behaviors/registry/core/molecules/std-form-advanced.orb +133 -133
  392. package/dist/behaviors/registry/core/molecules/std-list.orb +71 -71
  393. package/dist/behaviors/registry/core/molecules/std-master-detail-layout.orb +13 -13
  394. package/dist/behaviors/registry/core/molecules/std-stack-layout.orb +12 -12
  395. package/dist/behaviors/registry/core/molecules/std-tabs-layout.orb +11 -11
  396. package/dist/behaviors/registry/core/molecules/std-wizard-form.orb +152 -152
  397. package/dist/behaviors/registry/core/organisms/std-generic-app.orb +544 -544
  398. package/dist/behaviors/registry/game/atoms/std-collision.orb +0 -595
  399. package/dist/behaviors/registry/game/atoms/std-combat.orb +0 -524
  400. package/dist/behaviors/registry/game/atoms/std-dialogue-box.orb +27 -27
  401. package/dist/behaviors/registry/game/atoms/std-game-canvas2d.orb +40 -40
  402. package/dist/behaviors/registry/game/atoms/std-gameflow.orb +0 -456
  403. package/dist/behaviors/registry/game/atoms/std-movement.orb +0 -1279
  404. package/dist/behaviors/registry/game/atoms/std-overworld.orb +56 -56
  405. package/dist/behaviors/registry/game/atoms/std-physics2d.orb +78 -78
  406. package/dist/behaviors/registry/game/atoms/std-quest.orb +122 -122
  407. package/dist/behaviors/registry/game/atoms/std-timer.orb +266 -266
  408. package/dist/behaviors/registry/game/organisms/std-arcade-game.orb +0 -1446
  409. package/dist/behaviors/registry/game/organisms/std-logic-training.orb +0 -1037
  410. package/dist/behaviors/registry/game/organisms/std-platformer-app.orb +0 -2567
  411. package/dist/behaviors/registry/game/organisms/std-puzzle-app.orb +0 -1197
  412. package/dist/behaviors/registry/game/organisms/std-rpg-game.orb +0 -3509
  413. package/dist/behaviors/registry/game/organisms/std-stem-lab.orb +0 -2003
  414. package/dist/behaviors/registry/game/organisms/std-strategy-game.orb +0 -2686
  415. package/dist/behaviors/registry/probes/molecules/std-source-scope-probe.orb +32 -32
  416. package/dist/behaviors/registry/service/atoms/std-service-calendar-ical.orb +51 -51
  417. package/dist/behaviors/registry/service/atoms/std-service-custom-bearer.orb +69 -69
  418. package/dist/behaviors/registry/service/atoms/std-service-email.orb +55 -55
  419. package/dist/behaviors/registry/service/atoms/std-service-github.orb +70 -70
  420. package/dist/behaviors/registry/service/atoms/std-service-llm.orb +70 -70
  421. package/dist/behaviors/registry/service/atoms/std-service-maps.orb +83 -83
  422. package/dist/behaviors/registry/service/atoms/std-service-oauth.orb +51 -51
  423. package/dist/behaviors/registry/service/atoms/std-service-print.orb +114 -114
  424. package/dist/behaviors/registry/service/atoms/std-service-redis.orb +61 -61
  425. package/dist/behaviors/registry/service/atoms/std-service-storage.orb +51 -51
  426. package/dist/behaviors/registry/service/atoms/std-service-stripe.orb +111 -111
  427. package/dist/behaviors/registry/service/atoms/std-service-twilio.orb +48 -48
  428. package/dist/behaviors/registry/service/atoms/std-service-youtube.orb +45 -45
  429. package/dist/behaviors/registry/service/organisms/std-service-marketplace.orb +911 -911
  430. package/dist/behaviors/registry/service/organisms/std-service-research-assistant.orb +883 -883
  431. package/package.json +1 -1
@@ -125,21 +125,21 @@
125
125
  "href": "/courses"
126
126
  },
127
127
  {
128
- "label": "Enroll",
129
128
  "href": "/enroll",
129
+ "label": "Enroll",
130
130
  "icon": "user-plus"
131
131
  },
132
132
  {
133
133
  "href": "/progress",
134
- "icon": "trending-up",
135
- "label": "Progress"
134
+ "label": "Progress",
135
+ "icon": "trending-up"
136
136
  }
137
137
  ],
138
- "notifications": [],
139
- "appName": "LMS",
140
138
  "searchEvent": "COURSE_SEARCH",
141
- "notificationClickEvent": "COURSE_NOTIFICATIONS_OPEN",
142
- "contentTrait": "@trait.CourseCatalog"
139
+ "appName": "LMS",
140
+ "notifications": [],
141
+ "contentTrait": "@trait.CourseCatalog",
142
+ "notificationClickEvent": "COURSE_NOTIFICATIONS_OPEN"
143
143
  },
144
144
  "events": {
145
145
  "SEARCH": "COURSE_SEARCH",
@@ -344,76 +344,76 @@
344
344
  "render-ui",
345
345
  "main",
346
346
  {
347
- "direction": "vertical",
348
- "gap": "lg",
349
347
  "type": "stack",
348
+ "gap": "lg",
349
+ "direction": "vertical",
350
350
  "children": [
351
351
  {
352
+ "align": "center",
352
353
  "type": "stack",
353
354
  "direction": "horizontal",
354
- "justify": "between",
355
- "align": "center",
356
- "gap": "md",
357
355
  "children": [
358
356
  {
357
+ "direction": "horizontal",
358
+ "align": "center",
359
+ "type": "stack",
360
+ "gap": "sm",
359
361
  "children": [
360
362
  {
361
- "type": "icon",
362
- "name": "graduation-cap"
363
+ "name": "graduation-cap",
364
+ "type": "icon"
363
365
  },
364
366
  {
365
367
  "content": "Courses",
366
- "type": "typography",
367
- "variant": "h2"
368
+ "variant": "h2",
369
+ "type": "typography"
368
370
  }
369
- ],
370
- "direction": "horizontal",
371
- "gap": "sm",
372
- "align": "center",
373
- "type": "stack"
371
+ ]
374
372
  },
375
373
  {
376
- "type": "stack",
377
374
  "direction": "horizontal",
375
+ "type": "stack",
378
376
  "gap": "sm",
379
377
  "children": [
380
378
  {
381
379
  "label": "Create Course",
380
+ "action": "CREATE",
382
381
  "variant": "primary",
383
- "type": "button",
384
382
  "icon": "plus",
385
- "action": "CREATE"
383
+ "type": "button"
386
384
  },
387
385
  {
388
- "type": "button",
389
386
  "label": "Edit Selected",
390
387
  "icon": "edit",
391
- "variant": "ghost",
392
- "action": "EDIT_COURSE"
388
+ "type": "button",
389
+ "action": "EDIT_COURSE",
390
+ "variant": "ghost"
393
391
  },
394
392
  {
395
- "type": "button",
396
393
  "variant": "danger",
394
+ "label": "Delete Selected",
395
+ "type": "button",
397
396
  "action": "DELETE_COURSE",
398
- "icon": "trash-2",
399
- "label": "Delete Selected"
397
+ "icon": "trash-2"
400
398
  }
401
399
  ]
402
400
  }
403
- ]
401
+ ],
402
+ "gap": "md",
403
+ "justify": "between"
404
404
  },
405
405
  {
406
406
  "type": "divider"
407
407
  },
408
408
  {
409
- "gap": "md",
410
409
  "align": "center",
411
- "type": "stack",
412
- "direction": "horizontal",
413
410
  "children": [
414
411
  "@trait.CourseSearch",
415
412
  "@trait.CourseFilter"
416
- ]
413
+ ],
414
+ "type": "stack",
415
+ "gap": "md",
416
+ "direction": "horizontal"
417
417
  },
418
418
  "@trait.CourseStats",
419
419
  "@trait.CourseGraphs",
@@ -445,10 +445,7 @@
445
445
  "render-ui",
446
446
  "main",
447
447
  {
448
- "type": "stack",
449
448
  "align": "center",
450
- "direction": "vertical",
451
- "gap": "md",
452
449
  "className": "py-8",
453
450
  "children": [
454
451
  {
@@ -457,22 +454,25 @@
457
454
  },
458
455
  {
459
456
  "variant": "h3",
460
- "content": "No notifications",
461
- "type": "typography"
457
+ "type": "typography",
458
+ "content": "No notifications"
462
459
  },
463
460
  {
464
- "variant": "caption",
465
- "color": "muted",
466
461
  "type": "typography",
462
+ "color": "muted",
463
+ "variant": "caption",
467
464
  "content": "You're all caught up."
468
465
  },
469
466
  {
470
- "action": "INIT",
467
+ "type": "button",
471
468
  "variant": "ghost",
472
469
  "label": "Back to courses",
473
- "type": "button"
470
+ "action": "INIT"
474
471
  }
475
- ]
472
+ ],
473
+ "gap": "md",
474
+ "type": "stack",
475
+ "direction": "vertical"
476
476
  }
477
477
  ]
478
478
  ]
@@ -485,8 +485,8 @@
485
485
  "ref": "Search.traits.SearchResultSearch",
486
486
  "name": "CourseSearch",
487
487
  "config": {
488
- "placeholder": "Search courses...",
489
- "event": "SEARCH"
488
+ "event": "SEARCH",
489
+ "placeholder": "Search courses..."
490
490
  },
491
491
  "listens": [
492
492
  {
@@ -507,23 +507,23 @@
507
507
  {
508
508
  "field": "category",
509
509
  "filterType": "select",
510
+ "label": "Category",
510
511
  "options": [
511
512
  "programming",
512
513
  "design",
513
514
  "business",
514
515
  "marketing"
515
- ],
516
- "label": "Category"
516
+ ]
517
517
  },
518
518
  {
519
+ "label": "Level",
519
520
  "field": "level",
520
521
  "filterType": "select",
521
522
  "options": [
522
523
  "beginner",
523
524
  "intermediate",
524
525
  "advanced"
525
- ],
526
- "label": "Level"
526
+ ]
527
527
  }
528
528
  ],
529
529
  "event": "FILTER"
@@ -536,35 +536,35 @@
536
536
  "metrics": [
537
537
  {
538
538
  "label": "Total Courses",
539
+ "aggregation": "count",
539
540
  "variant": "primary",
540
541
  "format": "number",
541
- "aggregation": "count",
542
542
  "icon": "graduation-cap"
543
543
  },
544
544
  {
545
+ "label": "Enrolled Students",
546
+ "aggregation": "sum",
545
547
  "format": "number",
546
- "icon": "users",
547
548
  "variant": "info",
548
- "label": "Enrolled Students",
549
549
  "field": "enrolledCount",
550
- "aggregation": "sum"
550
+ "icon": "users"
551
551
  },
552
552
  {
553
- "field": "completionPct",
554
- "icon": "check-circle",
553
+ "label": "Completion Rate",
555
554
  "variant": "success",
555
+ "field": "completionPct",
556
556
  "aggregation": "avg",
557
- "label": "Completion Rate",
557
+ "icon": "check-circle",
558
558
  "format": "percent"
559
559
  },
560
560
  {
561
- "variant": "default",
562
561
  "format": "number",
563
562
  "suffix": "h",
564
- "icon": "clock",
565
- "label": "Avg Duration",
566
563
  "aggregation": "avg",
567
- "field": "durationHours"
564
+ "label": "Avg Duration",
565
+ "icon": "clock",
566
+ "field": "durationHours",
567
+ "variant": "default"
568
568
  }
569
569
  ],
570
570
  "title": "Course Stats"
@@ -584,13 +584,13 @@
584
584
  "ref": "Graphs.traits.GraphItemGraph",
585
585
  "name": "CourseGraphs",
586
586
  "config": {
587
- "title": "Courses by Category",
588
- "showLegend": true,
589
- "aggregation": "count",
590
- "categoryField": "category",
591
587
  "chartType": "bar",
588
+ "categoryField": "category",
589
+ "subtitle": "Catalog distribution",
592
590
  "height": 280.0,
593
- "subtitle": "Catalog distribution"
591
+ "aggregation": "count",
592
+ "showLegend": true,
593
+ "title": "Courses by Category"
594
594
  },
595
595
  "listens": [
596
596
  {
@@ -608,11 +608,11 @@
608
608
  "name": "CourseGallery",
609
609
  "linkedEntity": "Course",
610
610
  "config": {
611
- "cols": 4.0,
611
+ "gap": "md",
612
+ "imageField": "thumbnail",
612
613
  "titleField": "title",
613
614
  "subtitleField": "instructor",
614
- "imageField": "thumbnail",
615
- "gap": "md"
615
+ "cols": 4.0
616
616
  },
617
617
  "listens": [
618
618
  {
@@ -655,8 +655,8 @@
655
655
  "name": "CourseCreateModal",
656
656
  "linkedEntity": "Course",
657
657
  "config": {
658
- "title": "Create Course",
659
658
  "icon": "plus-circle",
659
+ "title": "Create Course",
660
660
  "mode": "create",
661
661
  "fields": [
662
662
  "title",
@@ -688,9 +688,8 @@
688
688
  "name": "CourseEditModal",
689
689
  "linkedEntity": "Course",
690
690
  "config": {
691
- "title": "Edit Course",
692
- "mode": "edit",
693
691
  "icon": "edit",
692
+ "mode": "edit",
694
693
  "fields": [
695
694
  "title",
696
695
  "description",
@@ -700,7 +699,8 @@
700
699
  "instructor",
701
700
  "thumbnail",
702
701
  "videoId"
703
- ]
702
+ ],
703
+ "title": "Edit Course"
704
704
  },
705
705
  "events": {
706
706
  "OPEN": "EDIT"
@@ -722,13 +722,13 @@
722
722
  "linkedEntity": "Course",
723
723
  "config": {
724
724
  "alertMessage": "This action cannot be undone.",
725
- "confirmLabel": "Delete",
725
+ "icon": "alert-triangle",
726
726
  "title": "Delete Course",
727
- "icon": "alert-triangle"
727
+ "confirmLabel": "Delete"
728
728
  },
729
729
  "events": {
730
- "REQUEST": "DELETE_COURSE",
731
- "CONFIRM": "CONFIRM_DELETE"
730
+ "CONFIRM": "CONFIRM_DELETE",
731
+ "REQUEST": "DELETE_COURSE"
732
732
  },
733
733
  "listens": [
734
734
  {
@@ -970,24 +970,25 @@
970
970
  "render-ui",
971
971
  "main",
972
972
  {
973
- "type": "stack",
973
+ "direction": "vertical",
974
+ "gap": "md",
974
975
  "children": [
975
976
  {
976
- "type": "stack",
977
- "gap": "sm",
978
- "direction": "horizontal",
979
- "align": "center",
980
977
  "children": [
981
978
  {
982
- "name": "image",
983
- "type": "icon"
979
+ "type": "icon",
980
+ "name": "image"
984
981
  },
985
982
  {
986
- "type": "typography",
987
983
  "variant": "h3",
988
- "content": "Course Thumbnail"
984
+ "content": "Course Thumbnail",
985
+ "type": "typography"
989
986
  }
990
- ]
987
+ ],
988
+ "type": "stack",
989
+ "align": "center",
990
+ "direction": "horizontal",
991
+ "gap": "sm"
991
992
  },
992
993
  {
993
994
  "type": "input",
@@ -995,15 +996,14 @@
995
996
  "placeholder": "Choose image..."
996
997
  },
997
998
  {
998
- "action": "UPLOAD",
999
- "label": "Upload Thumbnail",
1000
- "variant": "primary",
1001
999
  "icon": "upload",
1002
- "type": "button"
1000
+ "label": "Upload Thumbnail",
1001
+ "type": "button",
1002
+ "action": "UPLOAD",
1003
+ "variant": "primary"
1003
1004
  }
1004
1005
  ],
1005
- "direction": "vertical",
1006
- "gap": "md"
1006
+ "type": "stack"
1007
1007
  }
1008
1008
  ]
1009
1009
  ]
@@ -1016,14 +1016,14 @@
1016
1016
  "ref": "Storage.traits.ServiceStorageStorage",
1017
1017
  "name": "CourseThumbnailUpload",
1018
1018
  "config": {
1019
+ "bucket": "course-thumbnails",
1020
+ "acl": "public",
1019
1021
  "allowedMimeTypes": [
1020
1022
  "image/png",
1021
1023
  "image/jpeg",
1022
1024
  "image/webp"
1023
1025
  ],
1024
1026
  "uiTrait": "@trait.CourseThumbnailForm",
1025
- "acl": "public",
1026
- "bucket": "course-thumbnails",
1027
1027
  "maxSize": 5242880.0
1028
1028
  },
1029
1029
  "listens": [
@@ -1041,10 +1041,10 @@
1041
1041
  "ref": "YouTube.traits.ServiceYoutubeYoutube",
1042
1042
  "name": "CourseLessonVideo",
1043
1043
  "config": {
1044
+ "autoplay": false,
1044
1045
  "videoId": "",
1045
1046
  "controls": true,
1046
- "uiTrait": "@trait.CourseLessonPlayer",
1047
- "autoplay": false
1047
+ "uiTrait": "@trait.CourseLessonPlayer"
1048
1048
  }
1049
1049
  },
1050
1050
  {
@@ -1119,36 +1119,34 @@
1119
1119
  "render-ui",
1120
1120
  "main",
1121
1121
  {
1122
- "type": "stack",
1123
- "className": "max-w-3xl mx-auto w-full",
1124
1122
  "children": [
1125
1123
  {
1126
- "gap": "sm",
1127
- "align": "center",
1128
1124
  "type": "stack",
1129
- "direction": "horizontal",
1130
- "justify": "between",
1125
+ "align": "center",
1131
1126
  "children": [
1132
1127
  {
1133
- "type": "button",
1128
+ "icon": "chevron-left",
1129
+ "label": "Previous",
1134
1130
  "action": "PREV_LESSON",
1135
1131
  "variant": "ghost",
1136
- "icon": "chevron-left",
1137
- "label": "Previous"
1132
+ "type": "button"
1138
1133
  },
1139
1134
  {
1140
1135
  "variant": "h3",
1141
- "content": "@entity.title",
1142
- "type": "typography"
1136
+ "type": "typography",
1137
+ "content": "@entity.title"
1143
1138
  },
1144
1139
  {
1145
- "variant": "ghost",
1146
1140
  "icon": "chevron-right",
1147
- "label": "Next",
1148
1141
  "type": "button",
1142
+ "variant": "ghost",
1143
+ "label": "Next",
1149
1144
  "action": "NEXT_LESSON"
1150
1145
  }
1151
- ]
1146
+ ],
1147
+ "direction": "horizontal",
1148
+ "justify": "between",
1149
+ "gap": "sm"
1152
1150
  },
1153
1151
  {
1154
1152
  "type": "divider"
@@ -1156,25 +1154,25 @@
1156
1154
  {
1157
1155
  "children": [
1158
1156
  {
1159
- "type": "stack",
1160
1157
  "gap": "md",
1161
1158
  "direction": "vertical",
1159
+ "type": "stack",
1162
1160
  "align": "center",
1163
1161
  "children": [
1164
1162
  {
1165
- "type": "icon",
1166
- "name": "video"
1163
+ "name": "video",
1164
+ "type": "icon"
1167
1165
  },
1168
1166
  {
1169
- "color": "muted",
1170
1167
  "content": "Lesson video",
1168
+ "color": "muted",
1171
1169
  "type": "typography",
1172
1170
  "variant": "caption"
1173
1171
  },
1174
1172
  {
1175
- "variant": "body",
1176
1173
  "content": "@config.videoId",
1177
- "type": "typography"
1174
+ "type": "typography",
1175
+ "variant": "body"
1178
1176
  }
1179
1177
  ]
1180
1178
  }
@@ -1185,15 +1183,11 @@
1185
1183
  "type": "divider"
1186
1184
  },
1187
1185
  {
1188
- "align": "center",
1186
+ "gap": "sm",
1189
1187
  "justify": "between",
1190
1188
  "type": "stack",
1191
1189
  "children": [
1192
1190
  {
1193
- "gap": "sm",
1194
- "type": "stack",
1195
- "direction": "horizontal",
1196
- "align": "center",
1197
1191
  "children": [
1198
1192
  {
1199
1193
  "type": "input",
@@ -1201,25 +1195,31 @@
1201
1195
  },
1202
1196
  {
1203
1197
  "type": "typography",
1204
- "content": "Mark lesson complete",
1205
- "variant": "body"
1198
+ "variant": "body",
1199
+ "content": "Mark lesson complete"
1206
1200
  }
1207
- ]
1201
+ ],
1202
+ "type": "stack",
1203
+ "direction": "horizontal",
1204
+ "gap": "sm",
1205
+ "align": "center"
1208
1206
  },
1209
1207
  {
1210
- "label": "Complete Lesson",
1211
1208
  "action": "LESSON_COMPLETE",
1212
1209
  "type": "button",
1210
+ "label": "Complete Lesson",
1213
1211
  "variant": "primary",
1214
1212
  "icon": "check"
1215
1213
  }
1216
1214
  ],
1217
- "gap": "sm",
1215
+ "align": "center",
1218
1216
  "direction": "horizontal"
1219
1217
  }
1220
1218
  ],
1219
+ "gap": "md",
1220
+ "className": "max-w-3xl mx-auto w-full",
1221
1221
  "direction": "vertical",
1222
- "gap": "md"
1222
+ "type": "stack"
1223
1223
  }
1224
1224
  ]
1225
1225
  ]
@@ -1381,33 +1381,33 @@
1381
1381
  "name": "EnrollmentAppLayout",
1382
1382
  "linkedEntity": "Enrollment",
1383
1383
  "config": {
1384
+ "notifications": [],
1385
+ "notificationClickEvent": "ENROLLMENT_NOTIFICATIONS_OPEN",
1386
+ "topBarActions": [],
1387
+ "contentTrait": "@trait.EnrollmentWizard",
1388
+ "appName": "LMS",
1384
1389
  "navItems": [
1385
1390
  {
1391
+ "label": "Courses",
1386
1392
  "icon": "graduation-cap",
1387
- "href": "/courses",
1388
- "label": "Courses"
1393
+ "href": "/courses"
1389
1394
  },
1390
1395
  {
1391
- "href": "/enroll",
1396
+ "icon": "user-plus",
1392
1397
  "label": "Enroll",
1393
- "icon": "user-plus"
1398
+ "href": "/enroll"
1394
1399
  },
1395
1400
  {
1396
- "icon": "trending-up",
1397
1401
  "href": "/progress",
1402
+ "icon": "trending-up",
1398
1403
  "label": "Progress"
1399
1404
  }
1400
1405
  ],
1401
- "notifications": [],
1402
- "topBarActions": [],
1403
- "contentTrait": "@trait.EnrollmentWizard",
1404
- "searchEvent": "ENROLLMENT_SEARCH",
1405
- "appName": "LMS",
1406
- "notificationClickEvent": "ENROLLMENT_NOTIFICATIONS_OPEN"
1406
+ "searchEvent": "ENROLLMENT_SEARCH"
1407
1407
  },
1408
1408
  "events": {
1409
- "NOTIFY_CLICK": "ENROLLMENT_NOTIFICATIONS_OPEN",
1410
- "SEARCH": "ENROLLMENT_SEARCH"
1409
+ "SEARCH": "ENROLLMENT_SEARCH",
1410
+ "NOTIFY_CLICK": "ENROLLMENT_NOTIFICATIONS_OPEN"
1411
1411
  }
1412
1412
  },
1413
1413
  {
@@ -1616,8 +1616,8 @@
1616
1616
  "Enrollment",
1617
1617
  {
1618
1618
  "emit": {
1619
- "success": "EnrollmentLoaded",
1620
- "failure": "EnrollmentLoadFailed"
1619
+ "failure": "EnrollmentLoadFailed",
1620
+ "success": "EnrollmentLoaded"
1621
1621
  }
1622
1622
  }
1623
1623
  ],
@@ -1625,47 +1625,47 @@
1625
1625
  "render-ui",
1626
1626
  "main",
1627
1627
  {
1628
+ "type": "stack",
1628
1629
  "children": [
1629
1630
  {
1630
1631
  "type": "stack",
1631
- "gap": "sm",
1632
- "direction": "horizontal",
1633
1632
  "children": [
1634
1633
  {
1635
- "name": "user-plus",
1636
- "type": "icon"
1634
+ "type": "icon",
1635
+ "name": "user-plus"
1637
1636
  },
1638
1637
  {
1639
- "variant": "h2",
1640
1638
  "type": "typography",
1641
- "content": "Course Enrollment"
1639
+ "content": "Course Enrollment",
1640
+ "variant": "h2"
1642
1641
  }
1643
1642
  ],
1644
- "align": "center"
1643
+ "direction": "horizontal",
1644
+ "align": "center",
1645
+ "gap": "sm"
1645
1646
  },
1646
1647
  {
1647
- "type": "wizard-progress",
1648
+ "currentStep": 0.0,
1648
1649
  "steps": [
1649
1650
  "Student Info",
1650
1651
  "Course Selection",
1651
1652
  "Review",
1652
1653
  "Confirm"
1653
1654
  ],
1654
- "currentStep": 0.0
1655
+ "type": "wizard-progress"
1655
1656
  },
1656
1657
  {
1657
1658
  "type": "divider"
1658
1659
  },
1659
1660
  {
1660
- "type": "typography",
1661
1661
  "variant": "h3",
1662
- "content": "Student Info"
1662
+ "content": "Student Info",
1663
+ "type": "typography"
1663
1664
  },
1664
1665
  {
1665
- "submitLabel": "Continue",
1666
- "showCancel": false,
1667
1666
  "type": "form-section",
1668
1667
  "submitEvent": "NEXT",
1668
+ "showCancel": false,
1669
1669
  "mode": "create",
1670
1670
  "fields": [
1671
1671
  {
@@ -1674,14 +1674,14 @@
1674
1674
  "required": true
1675
1675
  },
1676
1676
  {
1677
- "required": true,
1678
1677
  "type": "email",
1678
+ "required": true,
1679
1679
  "name": "email"
1680
1680
  }
1681
- ]
1681
+ ],
1682
+ "submitLabel": "Continue"
1682
1683
  }
1683
1684
  ],
1684
- "type": "stack",
1685
1685
  "className": "max-w-xl mx-auto w-full",
1686
1686
  "direction": "vertical",
1687
1687
  "gap": "lg"
@@ -1713,8 +1713,7 @@
1713
1713
  "render-ui",
1714
1714
  "main",
1715
1715
  {
1716
- "gap": "lg",
1717
- "className": "max-w-xl mx-auto w-full",
1716
+ "direction": "vertical",
1718
1717
  "children": [
1719
1718
  {
1720
1719
  "type": "stack",
@@ -1725,9 +1724,9 @@
1725
1724
  "type": "icon"
1726
1725
  },
1727
1726
  {
1728
- "type": "typography",
1729
1727
  "variant": "h2",
1730
- "content": "Course Enrollment"
1728
+ "content": "Course Enrollment",
1729
+ "type": "typography"
1731
1730
  }
1732
1731
  ],
1733
1732
  "gap": "sm",
@@ -1747,28 +1746,29 @@
1747
1746
  "type": "divider"
1748
1747
  },
1749
1748
  {
1750
- "type": "typography",
1751
1749
  "content": "Course Selection",
1750
+ "type": "typography",
1752
1751
  "variant": "h3"
1753
1752
  },
1754
1753
  {
1755
- "cancelEvent": "PREV",
1756
- "submitLabel": "Continue",
1757
- "mode": "edit",
1758
1754
  "entity": "@entity",
1759
- "type": "form-section",
1760
1755
  "cancelLabel": "Back",
1756
+ "type": "form-section",
1757
+ "submitEvent": "NEXT",
1758
+ "cancelEvent": "PREV",
1759
+ "mode": "edit",
1760
+ "submitLabel": "Continue",
1761
1761
  "fields": [
1762
1762
  {
1763
- "required": true,
1764
- "name": "courseId"
1763
+ "name": "courseId",
1764
+ "required": true
1765
1765
  }
1766
- ],
1767
- "submitEvent": "NEXT"
1766
+ ]
1768
1767
  }
1769
1768
  ],
1770
- "type": "stack",
1771
- "direction": "vertical"
1769
+ "className": "max-w-xl mx-auto w-full",
1770
+ "gap": "lg",
1771
+ "type": "stack"
1772
1772
  }
1773
1773
  ]
1774
1774
  ]
@@ -1793,34 +1793,36 @@
1793
1793
  "render-ui",
1794
1794
  "main",
1795
1795
  {
1796
+ "direction": "vertical",
1797
+ "gap": "lg",
1796
1798
  "type": "stack",
1797
1799
  "children": [
1798
1800
  {
1799
- "direction": "horizontal",
1801
+ "type": "stack",
1800
1802
  "children": [
1801
1803
  {
1802
- "type": "icon",
1803
- "name": "user-plus"
1804
+ "name": "user-plus",
1805
+ "type": "icon"
1804
1806
  },
1805
1807
  {
1806
1808
  "variant": "h2",
1807
- "type": "typography",
1808
- "content": "Course Enrollment"
1809
+ "content": "Course Enrollment",
1810
+ "type": "typography"
1809
1811
  }
1810
1812
  ],
1811
- "type": "stack",
1812
- "align": "center",
1813
- "gap": "sm"
1813
+ "gap": "sm",
1814
+ "direction": "horizontal",
1815
+ "align": "center"
1814
1816
  },
1815
1817
  {
1818
+ "type": "wizard-progress",
1816
1819
  "steps": [
1817
1820
  "Student Info",
1818
1821
  "Course Selection",
1819
1822
  "Review",
1820
1823
  "Confirm"
1821
1824
  ],
1822
- "currentStep": 2.0,
1823
- "type": "wizard-progress"
1825
+ "currentStep": 2.0
1824
1826
  },
1825
1827
  {
1826
1828
  "type": "divider"
@@ -1831,92 +1833,90 @@
1831
1833
  "type": "typography"
1832
1834
  },
1833
1835
  {
1834
- "direction": "vertical",
1835
- "gap": "sm",
1836
+ "type": "stack",
1836
1837
  "children": [
1837
1838
  {
1838
- "type": "stack",
1839
1839
  "direction": "horizontal",
1840
+ "gap": "md",
1840
1841
  "children": [
1841
1842
  {
1842
- "type": "typography",
1843
+ "content": "Student",
1843
1844
  "variant": "caption",
1844
- "content": "Student"
1845
+ "type": "typography"
1845
1846
  },
1846
1847
  {
1848
+ "variant": "body",
1847
1849
  "content": "@entity.studentName",
1848
- "type": "typography",
1849
- "variant": "body"
1850
+ "type": "typography"
1850
1851
  }
1851
1852
  ],
1852
1853
  "justify": "between",
1853
- "gap": "md"
1854
+ "type": "stack"
1854
1855
  },
1855
1856
  {
1856
- "type": "stack",
1857
- "gap": "md",
1858
1857
  "children": [
1859
1858
  {
1860
1859
  "type": "typography",
1861
- "content": "Email",
1862
- "variant": "caption"
1860
+ "variant": "caption",
1861
+ "content": "Email"
1863
1862
  },
1864
1863
  {
1865
- "type": "typography",
1864
+ "variant": "body",
1866
1865
  "content": "@entity.email",
1867
- "variant": "body"
1866
+ "type": "typography"
1868
1867
  }
1869
1868
  ],
1870
1869
  "justify": "between",
1871
- "direction": "horizontal"
1872
- },
1873
- {
1874
1870
  "direction": "horizontal",
1875
1871
  "gap": "md",
1872
+ "type": "stack"
1873
+ },
1874
+ {
1876
1875
  "type": "stack",
1877
1876
  "children": [
1878
1877
  {
1879
- "content": "Course",
1880
1878
  "variant": "caption",
1879
+ "content": "Course",
1881
1880
  "type": "typography"
1882
1881
  },
1883
1882
  {
1884
- "type": "typography",
1885
1883
  "content": "@entity.courseId",
1886
- "variant": "body"
1884
+ "variant": "body",
1885
+ "type": "typography"
1887
1886
  }
1888
1887
  ],
1889
- "justify": "between"
1888
+ "justify": "between",
1889
+ "direction": "horizontal",
1890
+ "gap": "md"
1890
1891
  }
1891
1892
  ],
1892
- "type": "stack"
1893
+ "gap": "sm",
1894
+ "direction": "vertical"
1893
1895
  },
1894
1896
  {
1897
+ "gap": "sm",
1895
1898
  "direction": "horizontal",
1896
- "justify": "between",
1897
1899
  "type": "stack",
1898
- "gap": "sm",
1900
+ "justify": "between",
1899
1901
  "children": [
1900
1902
  {
1901
- "type": "button",
1902
1903
  "icon": "arrow-left",
1903
- "action": "PREV",
1904
+ "variant": "ghost",
1904
1905
  "label": "Back",
1905
- "variant": "ghost"
1906
+ "type": "button",
1907
+ "action": "PREV"
1906
1908
  },
1907
1909
  {
1908
1910
  "label": "Continue",
1909
1911
  "action": "NEXT",
1910
- "type": "button",
1911
1912
  "variant": "primary",
1912
- "icon": "arrow-right"
1913
+ "icon": "arrow-right",
1914
+ "type": "button"
1913
1915
  }
1914
1916
  ]
1915
1917
  }
1916
1918
  ],
1917
- "direction": "vertical",
1918
- "className": "max-w-xl mx-auto w-full",
1919
- "gap": "lg"
1919
+ "className": "max-w-xl mx-auto w-full"
1920
1920
  }
1921
1921
  ]
1922
1922
  ]
@@ -1930,8 +1930,8 @@
1930
1930
  "render-ui",
1931
1931
  "main",
1932
1932
  {
1933
- "className": "max-w-xl mx-auto w-full",
1934
- "gap": "lg",
1933
+ "type": "stack",
1934
+ "direction": "vertical",
1935
1935
  "children": [
1936
1936
  {
1937
1937
  "variant": "h2",
@@ -1939,46 +1939,46 @@
1939
1939
  "type": "typography"
1940
1940
  },
1941
1941
  {
1942
- "currentStep": 0.0,
1943
- "type": "wizard-progress",
1944
1942
  "steps": [
1945
1943
  "Student Info",
1946
1944
  "Course Selection",
1947
1945
  "Review",
1948
1946
  "Confirm"
1949
- ]
1947
+ ],
1948
+ "currentStep": 0.0,
1949
+ "type": "wizard-progress"
1950
1950
  },
1951
1951
  {
1952
1952
  "type": "divider"
1953
1953
  },
1954
1954
  {
1955
- "type": "typography",
1956
1955
  "content": "Student Info",
1956
+ "type": "typography",
1957
1957
  "variant": "h3"
1958
1958
  },
1959
1959
  {
1960
- "type": "form-section",
1961
1960
  "entity": "@entity",
1962
- "submitLabel": "Continue",
1963
- "showCancel": false,
1964
1961
  "fields": [
1965
1962
  {
1966
- "min": 2.0,
1967
1963
  "required": true,
1968
- "name": "studentName"
1964
+ "name": "studentName",
1965
+ "min": 2.0
1969
1966
  },
1970
1967
  {
1971
1968
  "type": "email",
1972
- "name": "email",
1973
- "required": true
1969
+ "required": true,
1970
+ "name": "email"
1974
1971
  }
1975
1972
  ],
1976
1973
  "mode": "edit",
1977
- "submitEvent": "NEXT"
1974
+ "submitEvent": "NEXT",
1975
+ "type": "form-section",
1976
+ "submitLabel": "Continue",
1977
+ "showCancel": false
1978
1978
  }
1979
1979
  ],
1980
- "type": "stack",
1981
- "direction": "vertical"
1980
+ "className": "max-w-xl mx-auto w-full",
1981
+ "gap": "lg"
1982
1982
  }
1983
1983
  ]
1984
1984
  ]
@@ -1998,63 +1998,58 @@
1998
1998
  "render-ui",
1999
1999
  "main",
2000
2000
  {
2001
- "direction": "vertical",
2002
- "gap": "lg",
2003
2001
  "children": [
2004
2002
  {
2005
- "content": "Course Enrollment",
2006
2003
  "type": "typography",
2004
+ "content": "Course Enrollment",
2007
2005
  "variant": "h2"
2008
2006
  },
2009
2007
  {
2010
- "type": "wizard-progress",
2011
- "currentStep": 3.0,
2012
2008
  "steps": [
2013
2009
  "Student Info",
2014
2010
  "Course Selection",
2015
2011
  "Review",
2016
2012
  "Confirm"
2017
- ]
2013
+ ],
2014
+ "type": "wizard-progress",
2015
+ "currentStep": 3.0
2018
2016
  },
2019
2017
  {
2020
2018
  "type": "divider"
2021
2019
  },
2022
2020
  {
2023
- "message": "Please confirm your enrollment.",
2024
2021
  "type": "alert",
2025
- "variant": "info"
2022
+ "variant": "info",
2023
+ "message": "Please confirm your enrollment."
2026
2024
  },
2027
2025
  {
2028
- "direction": "vertical",
2029
2026
  "type": "stack",
2030
- "gap": "sm",
2027
+ "direction": "vertical",
2031
2028
  "children": [
2032
2029
  {
2033
- "type": "stack",
2034
- "gap": "md",
2035
- "justify": "between",
2036
- "direction": "horizontal",
2037
2030
  "children": [
2038
2031
  {
2039
2032
  "type": "typography",
2040
- "content": "Student",
2041
- "variant": "caption"
2033
+ "variant": "caption",
2034
+ "content": "Student"
2042
2035
  },
2043
2036
  {
2044
- "type": "typography",
2045
2037
  "variant": "body",
2038
+ "type": "typography",
2046
2039
  "content": "@entity.studentName"
2047
2040
  }
2048
- ]
2041
+ ],
2042
+ "gap": "md",
2043
+ "type": "stack",
2044
+ "direction": "horizontal",
2045
+ "justify": "between"
2049
2046
  },
2050
2047
  {
2051
- "justify": "between",
2052
- "direction": "horizontal",
2053
2048
  "children": [
2054
2049
  {
2050
+ "type": "typography",
2055
2051
  "variant": "caption",
2056
- "content": "Email",
2057
- "type": "typography"
2052
+ "content": "Email"
2058
2053
  },
2059
2054
  {
2060
2055
  "variant": "body",
@@ -2063,10 +2058,12 @@
2063
2058
  }
2064
2059
  ],
2065
2060
  "type": "stack",
2066
- "gap": "md"
2061
+ "gap": "md",
2062
+ "justify": "between",
2063
+ "direction": "horizontal"
2067
2064
  },
2068
2065
  {
2069
- "direction": "horizontal",
2066
+ "type": "stack",
2070
2067
  "gap": "md",
2071
2068
  "children": [
2072
2069
  {
@@ -2075,41 +2072,44 @@
2075
2072
  "type": "typography"
2076
2073
  },
2077
2074
  {
2078
- "type": "typography",
2079
2075
  "variant": "body",
2076
+ "type": "typography",
2080
2077
  "content": "@entity.courseId"
2081
2078
  }
2082
2079
  ],
2083
2080
  "justify": "between",
2084
- "type": "stack"
2081
+ "direction": "horizontal"
2085
2082
  }
2086
- ]
2083
+ ],
2084
+ "gap": "sm"
2087
2085
  },
2088
2086
  {
2089
2087
  "direction": "horizontal",
2088
+ "gap": "sm",
2090
2089
  "type": "stack",
2091
2090
  "justify": "between",
2092
- "gap": "sm",
2093
2091
  "children": [
2094
2092
  {
2095
2093
  "label": "Back",
2096
- "icon": "arrow-left",
2097
2094
  "type": "button",
2098
- "variant": "ghost",
2099
- "action": "PREV"
2095
+ "icon": "arrow-left",
2096
+ "action": "PREV",
2097
+ "variant": "ghost"
2100
2098
  },
2101
2099
  {
2102
- "action": "COMPLETE",
2103
2100
  "variant": "primary",
2104
2101
  "type": "button",
2105
- "label": "Enroll",
2106
- "icon": "check"
2102
+ "action": "COMPLETE",
2103
+ "icon": "check",
2104
+ "label": "Enroll"
2107
2105
  }
2108
2106
  ]
2109
2107
  }
2110
2108
  ],
2109
+ "type": "stack",
2111
2110
  "className": "max-w-xl mx-auto w-full",
2112
- "type": "stack"
2111
+ "gap": "lg",
2112
+ "direction": "vertical"
2113
2113
  }
2114
2114
  ]
2115
2115
  ]
@@ -2123,50 +2123,50 @@
2123
2123
  "render-ui",
2124
2124
  "main",
2125
2125
  {
2126
- "className": "max-w-xl mx-auto w-full",
2127
- "direction": "vertical",
2128
- "gap": "lg",
2129
2126
  "type": "stack",
2130
2127
  "children": [
2131
2128
  {
2132
2129
  "type": "typography",
2133
- "variant": "h2",
2134
- "content": "Course Enrollment"
2130
+ "content": "Course Enrollment",
2131
+ "variant": "h2"
2135
2132
  },
2136
2133
  {
2137
2134
  "type": "wizard-progress",
2135
+ "currentStep": 1.0,
2138
2136
  "steps": [
2139
2137
  "Student Info",
2140
2138
  "Course Selection",
2141
2139
  "Review",
2142
2140
  "Confirm"
2143
- ],
2144
- "currentStep": 1.0
2141
+ ]
2145
2142
  },
2146
2143
  {
2147
2144
  "type": "divider"
2148
2145
  },
2149
2146
  {
2147
+ "variant": "h3",
2150
2148
  "type": "typography",
2151
- "content": "Course Selection",
2152
- "variant": "h3"
2149
+ "content": "Course Selection"
2153
2150
  },
2154
2151
  {
2152
+ "cancelEvent": "PREV",
2153
+ "type": "form-section",
2155
2154
  "cancelLabel": "Back",
2156
- "submitLabel": "Continue",
2157
2155
  "fields": [
2158
2156
  {
2159
- "name": "courseId",
2160
- "required": true
2157
+ "required": true,
2158
+ "name": "courseId"
2161
2159
  }
2162
2160
  ],
2163
- "type": "form-section",
2164
- "mode": "edit",
2165
- "entity": "@entity",
2166
2161
  "submitEvent": "NEXT",
2167
- "cancelEvent": "PREV"
2162
+ "entity": "@entity",
2163
+ "mode": "edit",
2164
+ "submitLabel": "Continue"
2168
2165
  }
2169
- ]
2166
+ ],
2167
+ "direction": "vertical",
2168
+ "gap": "lg",
2169
+ "className": "max-w-xl mx-auto w-full"
2170
2170
  }
2171
2171
  ]
2172
2172
  ]
@@ -2194,8 +2194,8 @@
2194
2194
  "@entity",
2195
2195
  {
2196
2196
  "emit": {
2197
- "failure": "EnrollmentSaveFailed",
2198
- "success": "EnrollmentSaved"
2197
+ "success": "EnrollmentSaved",
2198
+ "failure": "EnrollmentSaveFailed"
2199
2199
  }
2200
2200
  }
2201
2201
  ],
@@ -2216,35 +2216,35 @@
2216
2216
  "render-ui",
2217
2217
  "main",
2218
2218
  {
2219
- "type": "stack",
2220
- "gap": "lg",
2221
- "align": "center",
2219
+ "direction": "vertical",
2220
+ "className": "max-w-xl mx-auto w-full py-12",
2222
2221
  "children": [
2223
2222
  {
2224
- "type": "icon",
2225
- "name": "check-circle"
2223
+ "name": "check-circle",
2224
+ "type": "icon"
2226
2225
  },
2227
2226
  {
2228
- "variant": "h2",
2229
2227
  "content": "Enrolled!",
2230
- "type": "typography"
2228
+ "type": "typography",
2229
+ "variant": "h2"
2231
2230
  },
2232
2231
  {
2233
- "variant": "body",
2234
- "type": "typography",
2232
+ "color": "muted",
2235
2233
  "content": "You have been enrolled in the course.",
2236
- "color": "muted"
2234
+ "type": "typography",
2235
+ "variant": "body"
2237
2236
  },
2238
2237
  {
2239
- "type": "button",
2240
- "action": "RESTART",
2241
- "variant": "ghost",
2242
2238
  "icon": "rotate-ccw",
2243
- "label": "Enroll another student"
2239
+ "action": "RESTART",
2240
+ "label": "Enroll another student",
2241
+ "type": "button",
2242
+ "variant": "ghost"
2244
2243
  }
2245
2244
  ],
2246
- "direction": "vertical",
2247
- "className": "max-w-xl mx-auto w-full py-12"
2245
+ "align": "center",
2246
+ "type": "stack",
2247
+ "gap": "lg"
2248
2248
  }
2249
2249
  ]
2250
2250
  ]
@@ -2258,56 +2258,56 @@
2258
2258
  "render-ui",
2259
2259
  "main",
2260
2260
  {
2261
- "gap": "lg",
2262
- "className": "max-w-xl mx-auto w-full",
2263
- "type": "stack",
2264
2261
  "children": [
2265
2262
  {
2263
+ "variant": "h2",
2266
2264
  "type": "typography",
2267
- "content": "Course Enrollment",
2268
- "variant": "h2"
2265
+ "content": "Course Enrollment"
2269
2266
  },
2270
2267
  {
2271
2268
  "type": "wizard-progress",
2269
+ "currentStep": 2.0,
2272
2270
  "steps": [
2273
2271
  "Student Info",
2274
2272
  "Course Selection",
2275
2273
  "Review",
2276
2274
  "Confirm"
2277
- ],
2278
- "currentStep": 2.0
2275
+ ]
2279
2276
  },
2280
2277
  {
2281
2278
  "type": "divider"
2282
2279
  },
2283
2280
  {
2284
2281
  "variant": "h3",
2285
- "content": "Review",
2286
- "type": "typography"
2282
+ "type": "typography",
2283
+ "content": "Review"
2287
2284
  },
2288
2285
  {
2289
- "justify": "between",
2290
- "direction": "horizontal",
2291
2286
  "gap": "sm",
2292
2287
  "type": "stack",
2288
+ "direction": "horizontal",
2289
+ "justify": "between",
2293
2290
  "children": [
2294
2291
  {
2295
2292
  "label": "Back",
2296
- "variant": "ghost",
2297
- "icon": "arrow-left",
2298
2293
  "action": "PREV",
2299
- "type": "button"
2294
+ "icon": "arrow-left",
2295
+ "type": "button",
2296
+ "variant": "ghost"
2300
2297
  },
2301
2298
  {
2299
+ "type": "button",
2300
+ "label": "Continue",
2302
2301
  "icon": "arrow-right",
2303
2302
  "action": "NEXT",
2304
- "label": "Continue",
2305
- "variant": "primary",
2306
- "type": "button"
2303
+ "variant": "primary"
2307
2304
  }
2308
2305
  ]
2309
2306
  }
2310
2307
  ],
2308
+ "className": "max-w-xl mx-auto w-full",
2309
+ "gap": "lg",
2310
+ "type": "stack",
2311
2311
  "direction": "vertical"
2312
2312
  }
2313
2313
  ]
@@ -2347,6 +2347,8 @@
2347
2347
  "render-ui",
2348
2348
  "main",
2349
2349
  {
2350
+ "gap": "lg",
2351
+ "className": "max-w-xl mx-auto w-full",
2350
2352
  "children": [
2351
2353
  {
2352
2354
  "type": "typography",
@@ -2367,16 +2369,20 @@
2367
2369
  "type": "divider"
2368
2370
  },
2369
2371
  {
2370
- "content": "Student Info",
2371
2372
  "type": "typography",
2373
+ "content": "Student Info",
2372
2374
  "variant": "h3"
2373
2375
  },
2374
2376
  {
2377
+ "type": "form-section",
2378
+ "mode": "create",
2379
+ "submitEvent": "NEXT",
2380
+ "submitLabel": "Continue",
2375
2381
  "showCancel": false,
2376
2382
  "fields": [
2377
2383
  {
2378
- "name": "studentName",
2379
2384
  "min": 2.0,
2385
+ "name": "studentName",
2380
2386
  "required": true
2381
2387
  },
2382
2388
  {
@@ -2384,17 +2390,11 @@
2384
2390
  "type": "email",
2385
2391
  "required": true
2386
2392
  }
2387
- ],
2388
- "mode": "create",
2389
- "type": "form-section",
2390
- "submitLabel": "Continue",
2391
- "submitEvent": "NEXT"
2393
+ ]
2392
2394
  }
2393
2395
  ],
2394
- "direction": "vertical",
2395
2396
  "type": "stack",
2396
- "gap": "lg",
2397
- "className": "max-w-xl mx-auto w-full"
2397
+ "direction": "vertical"
2398
2398
  }
2399
2399
  ]
2400
2400
  ]
@@ -2490,20 +2490,18 @@
2490
2490
  "linkedEntity": "Progress",
2491
2491
  "config": {
2492
2492
  "searchEvent": "PROGRESS_SEARCH",
2493
- "notifications": [],
2494
2493
  "contentTrait": "@trait.ProgressDisplay",
2495
- "notificationClickEvent": "PROGRESS_NOTIFICATIONS_OPEN",
2496
2494
  "appName": "LMS",
2497
- "topBarActions": [],
2495
+ "notifications": [],
2498
2496
  "navItems": [
2499
2497
  {
2500
- "label": "Courses",
2498
+ "icon": "graduation-cap",
2501
2499
  "href": "/courses",
2502
- "icon": "graduation-cap"
2500
+ "label": "Courses"
2503
2501
  },
2504
2502
  {
2505
- "label": "Enroll",
2506
2503
  "icon": "user-plus",
2504
+ "label": "Enroll",
2507
2505
  "href": "/enroll"
2508
2506
  },
2509
2507
  {
@@ -2511,7 +2509,9 @@
2511
2509
  "label": "Progress",
2512
2510
  "href": "/progress"
2513
2511
  }
2514
- ]
2512
+ ],
2513
+ "topBarActions": [],
2514
+ "notificationClickEvent": "PROGRESS_NOTIFICATIONS_OPEN"
2515
2515
  },
2516
2516
  "events": {
2517
2517
  "SEARCH": "PROGRESS_SEARCH",
@@ -2544,24 +2544,27 @@
2544
2544
  "render-ui",
2545
2545
  "main",
2546
2546
  {
2547
+ "className": "max-w-5xl mx-auto w-full",
2547
2548
  "gap": "lg",
2549
+ "type": "stack",
2550
+ "direction": "vertical",
2548
2551
  "children": [
2549
2552
  {
2550
- "align": "center",
2553
+ "type": "stack",
2554
+ "direction": "horizontal",
2555
+ "gap": "sm",
2551
2556
  "children": [
2552
2557
  {
2553
- "name": "trending-up",
2554
- "type": "icon"
2558
+ "type": "icon",
2559
+ "name": "trending-up"
2555
2560
  },
2556
2561
  {
2562
+ "content": "Progress",
2557
2563
  "type": "typography",
2558
- "variant": "h2",
2559
- "content": "Progress"
2564
+ "variant": "h2"
2560
2565
  }
2561
2566
  ],
2562
- "gap": "sm",
2563
- "type": "stack",
2564
- "direction": "horizontal"
2567
+ "align": "center"
2565
2568
  },
2566
2569
  {
2567
2570
  "type": "divider"
@@ -2572,10 +2575,7 @@
2572
2575
  "type": "divider"
2573
2576
  },
2574
2577
  "@trait.ProgressBrowseList"
2575
- ],
2576
- "type": "stack",
2577
- "direction": "vertical",
2578
- "className": "max-w-5xl mx-auto w-full"
2578
+ ]
2579
2579
  }
2580
2580
  ]
2581
2581
  ]
@@ -2673,45 +2673,45 @@
2673
2673
  "render-ui",
2674
2674
  "main",
2675
2675
  {
2676
+ "type": "simple-grid",
2677
+ "gap": "md",
2676
2678
  "children": [
2677
2679
  {
2678
- "value": 0.0,
2679
- "type": "stat-display",
2680
- "icon": "check-circle",
2681
2680
  "variant": "success",
2682
2681
  "format": "percent",
2683
- "label": "Completion %"
2682
+ "icon": "check-circle",
2683
+ "label": "Completion %",
2684
+ "value": 0.0,
2685
+ "type": "stat-display"
2684
2686
  },
2685
2687
  {
2686
- "label": "Time Spent",
2688
+ "suffix": "h",
2687
2689
  "value": 0.0,
2690
+ "label": "Time Spent",
2688
2691
  "type": "stat-display",
2689
- "icon": "clock",
2692
+ "variant": "info",
2690
2693
  "format": "number",
2691
- "suffix": "h",
2692
- "variant": "info"
2694
+ "icon": "clock"
2693
2695
  },
2694
2696
  {
2697
+ "variant": "default",
2698
+ "format": "number",
2695
2699
  "value": 0.0,
2696
2700
  "type": "stat-display",
2697
2701
  "label": "Lessons Remaining",
2698
- "icon": "list",
2699
- "variant": "default",
2700
- "format": "number"
2702
+ "icon": "list"
2701
2703
  },
2702
2704
  {
2705
+ "label": "Streak",
2703
2706
  "format": "number",
2704
- "type": "stat-display",
2705
- "value": 0.0,
2706
2707
  "icon": "flame",
2707
- "variant": "warning",
2708
2708
  "suffix": "d",
2709
- "label": "Streak"
2709
+ "variant": "warning",
2710
+ "type": "stat-display",
2711
+ "value": 0.0
2710
2712
  }
2711
2713
  ],
2712
- "cols": 4.0,
2713
- "gap": "md",
2714
- "type": "simple-grid"
2714
+ "cols": 4.0
2715
2715
  }
2716
2716
  ]
2717
2717
  ]
@@ -2725,43 +2725,43 @@
2725
2725
  "render-ui",
2726
2726
  "main",
2727
2727
  {
2728
- "cols": 4.0,
2729
2728
  "type": "simple-grid",
2730
2729
  "gap": "md",
2730
+ "cols": 4.0,
2731
2731
  "children": [
2732
2732
  {
2733
- "label": "Completion %",
2733
+ "icon": "check-circle",
2734
+ "variant": "success",
2734
2735
  "format": "percent",
2735
2736
  "type": "stat-display",
2736
2737
  "value": 0.0,
2737
- "icon": "check-circle",
2738
- "variant": "success"
2738
+ "label": "Completion %"
2739
2739
  },
2740
2740
  {
2741
- "variant": "info",
2742
- "icon": "clock",
2743
- "format": "number",
2744
2741
  "suffix": "h",
2745
- "value": 0.0,
2742
+ "type": "stat-display",
2743
+ "icon": "clock",
2746
2744
  "label": "Time Spent",
2747
- "type": "stat-display"
2745
+ "value": 0.0,
2746
+ "variant": "info",
2747
+ "format": "number"
2748
2748
  },
2749
2749
  {
2750
- "variant": "default",
2751
- "label": "Lessons Remaining",
2752
2750
  "format": "number",
2753
2751
  "type": "stat-display",
2754
- "value": 0.0,
2755
- "icon": "list"
2752
+ "icon": "list",
2753
+ "label": "Lessons Remaining",
2754
+ "variant": "default",
2755
+ "value": 0.0
2756
2756
  },
2757
2757
  {
2758
- "icon": "flame",
2758
+ "format": "number",
2759
+ "variant": "warning",
2759
2760
  "value": 0.0,
2760
2761
  "type": "stat-display",
2761
- "format": "number",
2762
2762
  "label": "Streak",
2763
- "suffix": "d",
2764
- "variant": "warning"
2763
+ "icon": "flame",
2764
+ "suffix": "d"
2765
2765
  }
2766
2766
  ]
2767
2767
  }
@@ -2852,8 +2852,8 @@
2852
2852
  "Progress",
2853
2853
  {
2854
2854
  "emit": {
2855
- "failure": "ProgressLoadFailed",
2856
- "success": "ProgressLoaded"
2855
+ "success": "ProgressLoaded",
2856
+ "failure": "ProgressLoadFailed"
2857
2857
  }
2858
2858
  }
2859
2859
  ],
@@ -2861,13 +2861,13 @@
2861
2861
  "render-ui",
2862
2862
  "main",
2863
2863
  {
2864
- "subtitle": "Average completion % per week",
2865
2864
  "title": "Progress over time",
2866
- "type": "chart",
2867
- "data": [],
2868
2865
  "chartType": "line",
2866
+ "data": [],
2867
+ "type": "chart",
2869
2868
  "height": 280.0,
2870
- "showLegend": true
2869
+ "showLegend": true,
2870
+ "subtitle": "Average completion % per week"
2871
2871
  }
2872
2872
  ]
2873
2873
  ]
@@ -2881,13 +2881,13 @@
2881
2881
  "render-ui",
2882
2882
  "main",
2883
2883
  {
2884
+ "chartType": "line",
2885
+ "data": "@payload.data",
2884
2886
  "showLegend": true,
2885
2887
  "subtitle": "Average completion % per week",
2886
- "data": "@payload.data",
2887
2888
  "type": "chart",
2888
- "title": "Progress over time",
2889
- "chartType": "line",
2890
- "height": 280.0
2889
+ "height": 280.0,
2890
+ "title": "Progress over time"
2891
2891
  }
2892
2892
  ]
2893
2893
  ]
@@ -2902,38 +2902,38 @@
2902
2902
  "linkedEntity": "Progress",
2903
2903
  "config": {
2904
2904
  "itemActions": [],
2905
+ "gap": "sm",
2905
2906
  "cols": 1.0,
2906
2907
  "fields": [
2907
2908
  {
2908
- "name": "courseName",
2909
- "label": "Course",
2910
2909
  "variant": "h4",
2911
- "icon": "book-open"
2910
+ "name": "courseName",
2911
+ "icon": "book-open",
2912
+ "label": "Course"
2912
2913
  },
2913
2914
  {
2914
- "name": "completionPct",
2915
- "label": "Completion",
2916
2915
  "format": "percent",
2917
- "variant": "badge"
2916
+ "variant": "badge",
2917
+ "label": "Completion",
2918
+ "name": "completionPct"
2918
2919
  },
2919
2920
  {
2920
- "label": "Lessons Completed",
2921
2921
  "name": "lessonsCompleted",
2922
+ "label": "Lessons Completed",
2922
2923
  "variant": "body"
2923
2924
  },
2924
2925
  {
2926
+ "name": "totalLessons",
2925
2927
  "label": "Total Lessons",
2926
- "variant": "body",
2927
- "name": "totalLessons"
2928
+ "variant": "body"
2928
2929
  },
2929
2930
  {
2930
- "label": "Last Activity",
2931
- "name": "lastActivity",
2931
+ "format": "date",
2932
2932
  "variant": "caption",
2933
- "format": "date"
2933
+ "label": "Last Activity",
2934
+ "name": "lastActivity"
2934
2935
  }
2935
- ],
2936
- "gap": "sm"
2936
+ ]
2937
2937
  },
2938
2938
  "listens": [
2939
2939
  {
@@ -3088,4 +3088,4 @@
3088
3088
  ]
3089
3089
  }
3090
3090
  ]
3091
- }
3091
+ }