@almadar/std 3.1.0 → 3.1.2

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 (256) hide show
  1. package/behaviors/exports/atoms/std-async.orb +2 -1
  2. package/behaviors/exports/atoms/std-browse.orb +2 -1
  3. package/behaviors/exports/atoms/std-cache-aside.orb +2 -1
  4. package/behaviors/exports/atoms/std-circuit-breaker.orb +2 -1
  5. package/behaviors/exports/atoms/std-collision.orb +2 -1
  6. package/behaviors/exports/atoms/std-combat-log.orb +2 -1
  7. package/behaviors/exports/atoms/std-combat.orb +2 -1
  8. package/behaviors/exports/atoms/std-confirmation.orb +2 -1
  9. package/behaviors/exports/atoms/std-dialogue-box.orb +2 -1
  10. package/behaviors/exports/atoms/std-display.orb +2 -1
  11. package/behaviors/exports/atoms/std-drawer.orb +2 -1
  12. package/behaviors/exports/atoms/std-filter.orb +2 -1
  13. package/behaviors/exports/atoms/std-game-audio.orb +2 -1
  14. package/behaviors/exports/atoms/std-game-hud.orb +2 -1
  15. package/behaviors/exports/atoms/std-game-menu.orb +2 -1
  16. package/behaviors/exports/atoms/std-game-over-screen.orb +2 -1
  17. package/behaviors/exports/atoms/std-gameflow.orb +2 -1
  18. package/behaviors/exports/atoms/std-input.orb +2 -1
  19. package/behaviors/exports/atoms/std-inventory-panel.orb +2 -1
  20. package/behaviors/exports/atoms/std-isometric-canvas.orb +2 -1
  21. package/behaviors/exports/atoms/std-loading.orb +2 -1
  22. package/behaviors/exports/atoms/std-modal.orb +2 -1
  23. package/behaviors/exports/atoms/std-movement.orb +2 -1
  24. package/behaviors/exports/atoms/std-notification.orb +2 -1
  25. package/behaviors/exports/atoms/std-overworld.orb +2 -1
  26. package/behaviors/exports/atoms/std-pagination.orb +2 -1
  27. package/behaviors/exports/atoms/std-physics2d.orb +2 -1
  28. package/behaviors/exports/atoms/std-platformer-canvas.orb +2 -1
  29. package/behaviors/exports/atoms/std-quest.orb +2 -1
  30. package/behaviors/exports/atoms/std-rate-limiter.orb +2 -1
  31. package/behaviors/exports/atoms/std-score-board.orb +2 -1
  32. package/behaviors/exports/atoms/std-score.orb +2 -1
  33. package/behaviors/exports/atoms/std-search.orb +2 -1
  34. package/behaviors/exports/atoms/std-selection.orb +2 -1
  35. package/behaviors/exports/atoms/std-simulation-canvas.orb +2 -1
  36. package/behaviors/exports/atoms/std-sort.orb +2 -1
  37. package/behaviors/exports/atoms/std-sprite.orb +2 -1
  38. package/behaviors/exports/atoms/std-tabs.orb +2 -1
  39. package/behaviors/exports/atoms/std-timer.orb +2 -1
  40. package/behaviors/exports/atoms/std-undo.orb +2 -1
  41. package/behaviors/exports/atoms/std-wizard.orb +2 -1
  42. package/behaviors/exports/molecules/std-builder-game.orb +2 -1
  43. package/behaviors/exports/molecules/std-cart.orb +2 -1
  44. package/behaviors/exports/molecules/std-classifier-game.orb +2 -1
  45. package/behaviors/exports/molecules/std-debugger-game.orb +2 -1
  46. package/behaviors/exports/molecules/std-detail.orb +2 -1
  47. package/behaviors/exports/molecules/std-event-handler-game.orb +2 -1
  48. package/behaviors/exports/molecules/std-geospatial.orb +2 -1
  49. package/behaviors/exports/molecules/std-inventory.orb +2 -1
  50. package/behaviors/exports/molecules/std-list.orb +2 -1
  51. package/behaviors/exports/molecules/std-messaging.orb +2 -1
  52. package/behaviors/exports/molecules/std-negotiator-game.orb +2 -1
  53. package/behaviors/exports/molecules/std-platformer-game.orb +2 -1
  54. package/behaviors/exports/molecules/std-puzzle-game.orb +2 -1
  55. package/behaviors/exports/molecules/std-sequencer-game.orb +2 -1
  56. package/behaviors/exports/molecules/std-simulator-game.orb +2 -1
  57. package/behaviors/exports/molecules/std-turn-based-battle.orb +2 -1
  58. package/behaviors/exports/organisms/std-api-gateway.orb +2 -1
  59. package/behaviors/exports/organisms/std-arcade-game.orb +2 -1
  60. package/behaviors/exports/organisms/std-booking-system.orb +2 -1
  61. package/behaviors/exports/organisms/std-cicd-pipeline.orb +2 -1
  62. package/behaviors/exports/organisms/std-cms.orb +2 -1
  63. package/behaviors/exports/organisms/std-coding-academy.orb +2 -1
  64. package/behaviors/exports/organisms/std-crm.orb +2 -1
  65. package/behaviors/exports/organisms/std-devops-dashboard.orb +2 -1
  66. package/behaviors/exports/organisms/std-ecommerce.orb +2 -1
  67. package/behaviors/exports/organisms/std-finance-tracker.orb +2 -1
  68. package/behaviors/exports/organisms/std-healthcare.orb +2 -1
  69. package/behaviors/exports/organisms/std-helpdesk.orb +2 -1
  70. package/behaviors/exports/organisms/std-hr-portal.orb +2 -1
  71. package/behaviors/exports/organisms/std-iot-dashboard.orb +2 -1
  72. package/behaviors/exports/organisms/std-lms.orb +2 -1
  73. package/behaviors/exports/organisms/std-logic-training.orb +2 -1
  74. package/behaviors/exports/organisms/std-platformer-app.orb +2 -1
  75. package/behaviors/exports/organisms/std-project-manager.orb +2 -1
  76. package/behaviors/exports/organisms/std-puzzle-app.orb +2 -1
  77. package/behaviors/exports/organisms/std-realtime-chat.orb +2 -1
  78. package/behaviors/exports/organisms/std-rpg-game.orb +2 -1
  79. package/behaviors/exports/organisms/std-social-feed.orb +2 -1
  80. package/behaviors/exports/organisms/std-stem-lab.orb +2 -1
  81. package/behaviors/exports/organisms/std-strategy-game.orb +2 -1
  82. package/behaviors/exports/organisms/std-trading-dashboard.orb +2 -1
  83. package/dist/behaviors/exports/atoms/std-async.orb +421 -0
  84. package/dist/behaviors/exports/atoms/std-browse.orb +174 -0
  85. package/dist/behaviors/exports/atoms/std-cache-aside.orb +882 -0
  86. package/dist/behaviors/exports/atoms/std-circuit-breaker.orb +502 -0
  87. package/dist/behaviors/exports/atoms/std-collision.orb +617 -0
  88. package/dist/behaviors/exports/atoms/std-combat-log.orb +146 -0
  89. package/dist/behaviors/exports/atoms/std-combat.orb +411 -0
  90. package/dist/behaviors/exports/atoms/std-confirmation.orb +283 -0
  91. package/dist/behaviors/exports/atoms/std-dialogue-box.orb +239 -0
  92. package/dist/behaviors/exports/atoms/std-display.orb +843 -0
  93. package/dist/behaviors/exports/atoms/std-drawer.orb +317 -0
  94. package/dist/behaviors/exports/atoms/std-filter.orb +443 -0
  95. package/dist/behaviors/exports/atoms/std-game-audio.orb +114 -0
  96. package/dist/behaviors/exports/atoms/std-game-hud.orb +152 -0
  97. package/dist/behaviors/exports/atoms/std-game-menu.orb +212 -0
  98. package/dist/behaviors/exports/atoms/std-game-over-screen.orb +196 -0
  99. package/dist/behaviors/exports/atoms/std-gameflow.orb +319 -0
  100. package/dist/behaviors/exports/atoms/std-input.orb +630 -0
  101. package/dist/behaviors/exports/atoms/std-inventory-panel.orb +256 -0
  102. package/dist/behaviors/exports/atoms/std-isometric-canvas.orb +632 -0
  103. package/dist/behaviors/exports/atoms/std-loading.orb +512 -0
  104. package/dist/behaviors/exports/atoms/std-modal.orb +271 -0
  105. package/dist/behaviors/exports/atoms/std-movement.orb +1038 -0
  106. package/dist/behaviors/exports/atoms/std-notification.orb +419 -0
  107. package/dist/behaviors/exports/atoms/std-overworld.orb +484 -0
  108. package/dist/behaviors/exports/atoms/std-pagination.orb +332 -0
  109. package/dist/behaviors/exports/atoms/std-physics2d.orb +420 -0
  110. package/dist/behaviors/exports/atoms/std-platformer-canvas.orb +258 -0
  111. package/dist/behaviors/exports/atoms/std-quest.orb +981 -0
  112. package/dist/behaviors/exports/atoms/std-rate-limiter.orb +639 -0
  113. package/dist/behaviors/exports/atoms/std-score-board.orb +239 -0
  114. package/dist/behaviors/exports/atoms/std-score.orb +467 -0
  115. package/dist/behaviors/exports/atoms/std-search.orb +374 -0
  116. package/dist/behaviors/exports/atoms/std-selection.orb +760 -0
  117. package/dist/behaviors/exports/atoms/std-simulation-canvas.orb +184 -0
  118. package/dist/behaviors/exports/atoms/std-sort.orb +579 -0
  119. package/dist/behaviors/exports/atoms/std-sprite.orb +157 -0
  120. package/dist/behaviors/exports/atoms/std-tabs.orb +275 -0
  121. package/dist/behaviors/exports/atoms/std-timer.orb +1031 -0
  122. package/dist/behaviors/exports/atoms/std-undo.orb +695 -0
  123. package/dist/behaviors/exports/atoms/std-wizard.orb +667 -0
  124. package/dist/behaviors/exports/molecules/std-builder-game.orb +184 -0
  125. package/dist/behaviors/exports/molecules/std-cart.orb +592 -0
  126. package/dist/behaviors/exports/molecules/std-classifier-game.orb +184 -0
  127. package/dist/behaviors/exports/molecules/std-debugger-game.orb +184 -0
  128. package/dist/behaviors/exports/molecules/std-detail.orb +590 -0
  129. package/dist/behaviors/exports/molecules/std-event-handler-game.orb +184 -0
  130. package/dist/behaviors/exports/molecules/std-geospatial.orb +650 -0
  131. package/dist/behaviors/exports/molecules/std-inventory.orb +854 -0
  132. package/dist/behaviors/exports/molecules/std-list.orb +955 -0
  133. package/dist/behaviors/exports/molecules/std-messaging.orb +586 -0
  134. package/dist/behaviors/exports/molecules/std-negotiator-game.orb +184 -0
  135. package/dist/behaviors/exports/molecules/std-platformer-game.orb +497 -0
  136. package/dist/behaviors/exports/molecules/std-puzzle-game.orb +528 -0
  137. package/dist/behaviors/exports/molecules/std-sequencer-game.orb +184 -0
  138. package/dist/behaviors/exports/molecules/std-simulator-game.orb +184 -0
  139. package/dist/behaviors/exports/molecules/std-turn-based-battle.orb +444 -0
  140. package/dist/behaviors/exports/organisms/std-api-gateway.orb +2297 -0
  141. package/dist/behaviors/exports/organisms/std-arcade-game.orb +834 -0
  142. package/dist/behaviors/exports/organisms/std-booking-system.orb +3978 -0
  143. package/dist/behaviors/exports/organisms/std-cicd-pipeline.orb +2215 -0
  144. package/dist/behaviors/exports/organisms/std-cms.orb +2645 -0
  145. package/dist/behaviors/exports/organisms/std-coding-academy.orb +1395 -0
  146. package/dist/behaviors/exports/organisms/std-crm.orb +3542 -0
  147. package/dist/behaviors/exports/organisms/std-devops-dashboard.orb +3135 -0
  148. package/dist/behaviors/exports/organisms/std-ecommerce.orb +3744 -0
  149. package/dist/behaviors/exports/organisms/std-finance-tracker.orb +2386 -0
  150. package/dist/behaviors/exports/organisms/std-healthcare.orb +4680 -0
  151. package/dist/behaviors/exports/organisms/std-helpdesk.orb +2565 -0
  152. package/dist/behaviors/exports/organisms/std-hr-portal.orb +4030 -0
  153. package/dist/behaviors/exports/organisms/std-iot-dashboard.orb +2298 -0
  154. package/dist/behaviors/exports/organisms/std-lms.orb +2855 -0
  155. package/dist/behaviors/exports/organisms/std-logic-training.orb +599 -0
  156. package/dist/behaviors/exports/organisms/std-platformer-app.orb +1570 -0
  157. package/dist/behaviors/exports/organisms/std-project-manager.orb +3022 -0
  158. package/dist/behaviors/exports/organisms/std-puzzle-app.orb +744 -0
  159. package/dist/behaviors/exports/organisms/std-realtime-chat.orb +2381 -0
  160. package/dist/behaviors/exports/organisms/std-rpg-game.orb +2805 -0
  161. package/dist/behaviors/exports/organisms/std-social-feed.orb +1222 -0
  162. package/dist/behaviors/exports/organisms/std-stem-lab.orb +1211 -0
  163. package/dist/behaviors/exports/organisms/std-strategy-game.orb +1762 -0
  164. package/dist/behaviors/exports/organisms/std-trading-dashboard.orb +2218 -0
  165. package/dist/behaviors/exports-reader.d.ts +2 -0
  166. package/dist/behaviors/exports-reader.js +5 -3
  167. package/dist/behaviors/exports-reader.js.map +1 -1
  168. package/dist/behaviors/index.js +5 -3
  169. package/dist/behaviors/index.js.map +1 -1
  170. package/dist/exports/atoms/std-async.orb +421 -0
  171. package/dist/exports/atoms/std-browse.orb +174 -0
  172. package/dist/exports/atoms/std-cache-aside.orb +882 -0
  173. package/dist/exports/atoms/std-circuit-breaker.orb +502 -0
  174. package/dist/exports/atoms/std-collision.orb +617 -0
  175. package/dist/exports/atoms/std-combat-log.orb +146 -0
  176. package/dist/exports/atoms/std-combat.orb +411 -0
  177. package/dist/exports/atoms/std-confirmation.orb +283 -0
  178. package/dist/exports/atoms/std-dialogue-box.orb +239 -0
  179. package/dist/exports/atoms/std-display.orb +843 -0
  180. package/dist/exports/atoms/std-drawer.orb +317 -0
  181. package/dist/exports/atoms/std-filter.orb +443 -0
  182. package/dist/exports/atoms/std-game-audio.orb +114 -0
  183. package/dist/exports/atoms/std-game-hud.orb +152 -0
  184. package/dist/exports/atoms/std-game-menu.orb +212 -0
  185. package/dist/exports/atoms/std-game-over-screen.orb +196 -0
  186. package/dist/exports/atoms/std-gameflow.orb +319 -0
  187. package/dist/exports/atoms/std-input.orb +630 -0
  188. package/dist/exports/atoms/std-inventory-panel.orb +256 -0
  189. package/dist/exports/atoms/std-isometric-canvas.orb +632 -0
  190. package/dist/exports/atoms/std-loading.orb +512 -0
  191. package/dist/exports/atoms/std-modal.orb +271 -0
  192. package/dist/exports/atoms/std-movement.orb +1038 -0
  193. package/dist/exports/atoms/std-notification.orb +419 -0
  194. package/dist/exports/atoms/std-overworld.orb +484 -0
  195. package/dist/exports/atoms/std-pagination.orb +332 -0
  196. package/dist/exports/atoms/std-physics2d.orb +420 -0
  197. package/dist/exports/atoms/std-platformer-canvas.orb +258 -0
  198. package/dist/exports/atoms/std-quest.orb +981 -0
  199. package/dist/exports/atoms/std-rate-limiter.orb +639 -0
  200. package/dist/exports/atoms/std-score-board.orb +239 -0
  201. package/dist/exports/atoms/std-score.orb +467 -0
  202. package/dist/exports/atoms/std-search.orb +374 -0
  203. package/dist/exports/atoms/std-selection.orb +760 -0
  204. package/dist/exports/atoms/std-simulation-canvas.orb +184 -0
  205. package/dist/exports/atoms/std-sort.orb +579 -0
  206. package/dist/exports/atoms/std-sprite.orb +157 -0
  207. package/dist/exports/atoms/std-tabs.orb +275 -0
  208. package/dist/exports/atoms/std-timer.orb +1031 -0
  209. package/dist/exports/atoms/std-undo.orb +695 -0
  210. package/dist/exports/atoms/std-wizard.orb +667 -0
  211. package/dist/exports/molecules/std-builder-game.orb +184 -0
  212. package/dist/exports/molecules/std-cart.orb +592 -0
  213. package/dist/exports/molecules/std-classifier-game.orb +184 -0
  214. package/dist/exports/molecules/std-debugger-game.orb +184 -0
  215. package/dist/exports/molecules/std-detail.orb +590 -0
  216. package/dist/exports/molecules/std-event-handler-game.orb +184 -0
  217. package/dist/exports/molecules/std-geospatial.orb +650 -0
  218. package/dist/exports/molecules/std-inventory.orb +854 -0
  219. package/dist/exports/molecules/std-list.orb +955 -0
  220. package/dist/exports/molecules/std-messaging.orb +586 -0
  221. package/dist/exports/molecules/std-negotiator-game.orb +184 -0
  222. package/dist/exports/molecules/std-platformer-game.orb +497 -0
  223. package/dist/exports/molecules/std-puzzle-game.orb +528 -0
  224. package/dist/exports/molecules/std-sequencer-game.orb +184 -0
  225. package/dist/exports/molecules/std-simulator-game.orb +184 -0
  226. package/dist/exports/molecules/std-turn-based-battle.orb +444 -0
  227. package/dist/exports/organisms/std-api-gateway.orb +2297 -0
  228. package/dist/exports/organisms/std-arcade-game.orb +834 -0
  229. package/dist/exports/organisms/std-booking-system.orb +3978 -0
  230. package/dist/exports/organisms/std-cicd-pipeline.orb +2215 -0
  231. package/dist/exports/organisms/std-cms.orb +2645 -0
  232. package/dist/exports/organisms/std-coding-academy.orb +1395 -0
  233. package/dist/exports/organisms/std-crm.orb +3542 -0
  234. package/dist/exports/organisms/std-devops-dashboard.orb +3135 -0
  235. package/dist/exports/organisms/std-ecommerce.orb +3744 -0
  236. package/dist/exports/organisms/std-finance-tracker.orb +2386 -0
  237. package/dist/exports/organisms/std-healthcare.orb +4680 -0
  238. package/dist/exports/organisms/std-helpdesk.orb +2565 -0
  239. package/dist/exports/organisms/std-hr-portal.orb +4030 -0
  240. package/dist/exports/organisms/std-iot-dashboard.orb +2298 -0
  241. package/dist/exports/organisms/std-lms.orb +2855 -0
  242. package/dist/exports/organisms/std-logic-training.orb +599 -0
  243. package/dist/exports/organisms/std-platformer-app.orb +1570 -0
  244. package/dist/exports/organisms/std-project-manager.orb +3022 -0
  245. package/dist/exports/organisms/std-puzzle-app.orb +744 -0
  246. package/dist/exports/organisms/std-realtime-chat.orb +2381 -0
  247. package/dist/exports/organisms/std-rpg-game.orb +2805 -0
  248. package/dist/exports/organisms/std-social-feed.orb +1222 -0
  249. package/dist/exports/organisms/std-stem-lab.orb +1211 -0
  250. package/dist/exports/organisms/std-strategy-game.orb +1762 -0
  251. package/dist/exports/organisms/std-trading-dashboard.orb +2218 -0
  252. package/dist/index.js +5 -3
  253. package/dist/index.js.map +1 -1
  254. package/package.json +1 -1
  255. package/behaviors/exports/atoms/std-game-canvas-2d.orb +0 -135
  256. package/behaviors/exports/atoms/std-game-canvas-3d.orb +0 -224
@@ -0,0 +1,586 @@
1
+ {
2
+ "name": "ItemOrbital",
3
+ "orbitals": [
4
+ {
5
+ "name": "ItemOrbital",
6
+ "entity": {
7
+ "name": "Item",
8
+ "persistence": "runtime",
9
+ "fields": [
10
+ {
11
+ "name": "id",
12
+ "type": "string"
13
+ },
14
+ {
15
+ "name": "name",
16
+ "type": "string"
17
+ },
18
+ {
19
+ "name": "description",
20
+ "type": "string"
21
+ },
22
+ {
23
+ "name": "status",
24
+ "type": "string",
25
+ "default": "active"
26
+ },
27
+ {
28
+ "name": "createdAt",
29
+ "type": "string"
30
+ }
31
+ ]
32
+ },
33
+ "traits": [
34
+ {
35
+ "name": "ItemBrowse",
36
+ "linkedEntity": "Item",
37
+ "category": "interaction",
38
+ "listens": [
39
+ {
40
+ "event": "SEND",
41
+ "triggers": "SEND"
42
+ }
43
+ ],
44
+ "stateMachine": {
45
+ "states": [
46
+ {
47
+ "name": "browsing",
48
+ "isInitial": true
49
+ }
50
+ ],
51
+ "events": [
52
+ {
53
+ "key": "INIT",
54
+ "name": "Initialize"
55
+ },
56
+ {
57
+ "key": "COMPOSE",
58
+ "name": "COMPOSE"
59
+ },
60
+ {
61
+ "key": "VIEW",
62
+ "name": "VIEW",
63
+ "payload": [
64
+ {
65
+ "name": "id",
66
+ "type": "string",
67
+ "required": true
68
+ }
69
+ ]
70
+ },
71
+ {
72
+ "key": "SEND",
73
+ "name": "SEND",
74
+ "payload": [
75
+ {
76
+ "name": "data",
77
+ "type": "object",
78
+ "required": true
79
+ }
80
+ ]
81
+ }
82
+ ],
83
+ "transitions": [
84
+ {
85
+ "from": "browsing",
86
+ "to": "browsing",
87
+ "event": "INIT",
88
+ "effects": [
89
+ [
90
+ "fetch",
91
+ "Item"
92
+ ],
93
+ [
94
+ "render-ui",
95
+ "main",
96
+ {
97
+ "type": "stack",
98
+ "direction": "vertical",
99
+ "gap": "lg",
100
+ "children": [
101
+ {
102
+ "type": "stack",
103
+ "direction": "horizontal",
104
+ "gap": "md",
105
+ "justify": "space-between",
106
+ "children": [
107
+ {
108
+ "type": "stack",
109
+ "direction": "horizontal",
110
+ "gap": "sm",
111
+ "align": "center",
112
+ "children": [
113
+ {
114
+ "type": "icon",
115
+ "name": "message-circle",
116
+ "size": "lg"
117
+ },
118
+ {
119
+ "type": "typography",
120
+ "content": "Items",
121
+ "variant": "h2"
122
+ }
123
+ ]
124
+ },
125
+ {
126
+ "type": "stack",
127
+ "direction": "horizontal",
128
+ "gap": "sm",
129
+ "children": [
130
+ {
131
+ "type": "button",
132
+ "label": "Compose",
133
+ "event": "COMPOSE",
134
+ "variant": "primary",
135
+ "icon": "edit"
136
+ }
137
+ ]
138
+ }
139
+ ]
140
+ },
141
+ {
142
+ "type": "divider"
143
+ },
144
+ {
145
+ "type": "data-grid",
146
+ "entity": "Item",
147
+ "emptyIcon": "inbox",
148
+ "emptyTitle": "No messages yet",
149
+ "emptyDescription": "Start a new conversation.",
150
+ "itemActions": [
151
+ {
152
+ "label": "View",
153
+ "event": "VIEW"
154
+ }
155
+ ],
156
+ "className": "transition-shadow hover:shadow-md cursor-pointer",
157
+ "children": [
158
+ {
159
+ "type": "stack",
160
+ "direction": "vertical",
161
+ "gap": "sm",
162
+ "children": [
163
+ {
164
+ "type": "stack",
165
+ "direction": "horizontal",
166
+ "justify": "space-between",
167
+ "align": "center",
168
+ "children": [
169
+ {
170
+ "type": "stack",
171
+ "direction": "horizontal",
172
+ "gap": "sm",
173
+ "align": "center",
174
+ "children": [
175
+ {
176
+ "type": "icon",
177
+ "name": "message-circle",
178
+ "size": "sm"
179
+ },
180
+ {
181
+ "type": "typography",
182
+ "variant": "h4",
183
+ "content": "@entity.name"
184
+ }
185
+ ]
186
+ },
187
+ {
188
+ "type": "badge",
189
+ "label": "@entity.description"
190
+ }
191
+ ]
192
+ },
193
+ {
194
+ "type": "typography",
195
+ "variant": "caption",
196
+ "color": "muted",
197
+ "content": "@entity.status"
198
+ }
199
+ ]
200
+ }
201
+ ]
202
+ }
203
+ ]
204
+ }
205
+ ]
206
+ ]
207
+ },
208
+ {
209
+ "from": "browsing",
210
+ "to": "browsing",
211
+ "event": "SEND",
212
+ "effects": [
213
+ [
214
+ "fetch",
215
+ "Item"
216
+ ]
217
+ ]
218
+ }
219
+ ]
220
+ }
221
+ },
222
+ {
223
+ "name": "ItemCompose",
224
+ "linkedEntity": "Item",
225
+ "category": "interaction",
226
+ "emits": [
227
+ {
228
+ "event": "SEND"
229
+ }
230
+ ],
231
+ "stateMachine": {
232
+ "states": [
233
+ {
234
+ "name": "closed",
235
+ "isInitial": true
236
+ },
237
+ {
238
+ "name": "open"
239
+ }
240
+ ],
241
+ "events": [
242
+ {
243
+ "key": "INIT",
244
+ "name": "Initialize"
245
+ },
246
+ {
247
+ "key": "COMPOSE",
248
+ "name": "Open"
249
+ },
250
+ {
251
+ "key": "CLOSE",
252
+ "name": "Close"
253
+ },
254
+ {
255
+ "key": "SEND",
256
+ "name": "Save",
257
+ "payload": [
258
+ {
259
+ "name": "data",
260
+ "type": "object",
261
+ "required": true
262
+ }
263
+ ]
264
+ }
265
+ ],
266
+ "transitions": [
267
+ {
268
+ "from": "closed",
269
+ "to": "closed",
270
+ "event": "INIT",
271
+ "effects": [
272
+ [
273
+ "fetch",
274
+ "Item"
275
+ ]
276
+ ]
277
+ },
278
+ {
279
+ "from": "closed",
280
+ "to": "open",
281
+ "event": "COMPOSE",
282
+ "effects": [
283
+ [
284
+ "render-ui",
285
+ "modal",
286
+ {
287
+ "type": "stack",
288
+ "direction": "vertical",
289
+ "gap": "md",
290
+ "children": [
291
+ {
292
+ "type": "stack",
293
+ "direction": "horizontal",
294
+ "gap": "sm",
295
+ "children": [
296
+ {
297
+ "type": "icon",
298
+ "name": "edit",
299
+ "size": "md"
300
+ },
301
+ {
302
+ "type": "typography",
303
+ "content": "New Item",
304
+ "variant": "h3"
305
+ }
306
+ ]
307
+ },
308
+ {
309
+ "type": "divider"
310
+ },
311
+ {
312
+ "type": "form-section",
313
+ "entity": "Item",
314
+ "mode": "create",
315
+ "submitEvent": "SEND",
316
+ "cancelEvent": "CLOSE",
317
+ "fields": [
318
+ "name",
319
+ "description",
320
+ "status",
321
+ "createdAt"
322
+ ]
323
+ }
324
+ ]
325
+ }
326
+ ]
327
+ ]
328
+ },
329
+ {
330
+ "from": "open",
331
+ "to": "closed",
332
+ "event": "CLOSE",
333
+ "effects": [
334
+ [
335
+ "render-ui",
336
+ "modal",
337
+ null
338
+ ]
339
+ ]
340
+ },
341
+ {
342
+ "from": "open",
343
+ "to": "closed",
344
+ "event": "SEND",
345
+ "effects": [
346
+ [
347
+ "persist",
348
+ "create",
349
+ "Item",
350
+ "@payload.data"
351
+ ],
352
+ [
353
+ "fetch",
354
+ "Item"
355
+ ],
356
+ [
357
+ "render-ui",
358
+ "modal",
359
+ null
360
+ ],
361
+ [
362
+ "emit",
363
+ "SEND"
364
+ ],
365
+ [
366
+ "notify",
367
+ "Item created successfully"
368
+ ]
369
+ ]
370
+ }
371
+ ]
372
+ }
373
+ },
374
+ {
375
+ "name": "ItemView",
376
+ "linkedEntity": "Item",
377
+ "category": "interaction",
378
+ "stateMachine": {
379
+ "states": [
380
+ {
381
+ "name": "closed",
382
+ "isInitial": true
383
+ },
384
+ {
385
+ "name": "open"
386
+ }
387
+ ],
388
+ "events": [
389
+ {
390
+ "key": "INIT",
391
+ "name": "Initialize"
392
+ },
393
+ {
394
+ "key": "VIEW",
395
+ "name": "Open",
396
+ "payload": [
397
+ {
398
+ "name": "id",
399
+ "type": "string",
400
+ "required": true
401
+ }
402
+ ]
403
+ },
404
+ {
405
+ "key": "CLOSE",
406
+ "name": "Close"
407
+ }
408
+ ],
409
+ "transitions": [
410
+ {
411
+ "from": "closed",
412
+ "to": "closed",
413
+ "event": "INIT",
414
+ "effects": [
415
+ [
416
+ "fetch",
417
+ "Item"
418
+ ]
419
+ ]
420
+ },
421
+ {
422
+ "from": "closed",
423
+ "to": "open",
424
+ "event": "VIEW",
425
+ "effects": [
426
+ [
427
+ "fetch",
428
+ "Item",
429
+ "@payload.id"
430
+ ],
431
+ [
432
+ "render-ui",
433
+ "modal",
434
+ {
435
+ "type": "stack",
436
+ "direction": "vertical",
437
+ "gap": "md",
438
+ "children": [
439
+ {
440
+ "type": "stack",
441
+ "direction": "horizontal",
442
+ "gap": "sm",
443
+ "align": "center",
444
+ "children": [
445
+ {
446
+ "type": "icon",
447
+ "name": "eye",
448
+ "size": "md"
449
+ },
450
+ {
451
+ "type": "typography",
452
+ "variant": "h3",
453
+ "content": "@entity.name"
454
+ }
455
+ ]
456
+ },
457
+ {
458
+ "type": "divider"
459
+ },
460
+ {
461
+ "type": "stack",
462
+ "direction": "horizontal",
463
+ "gap": "md",
464
+ "children": [
465
+ {
466
+ "type": "typography",
467
+ "variant": "caption",
468
+ "content": "Name"
469
+ },
470
+ {
471
+ "type": "typography",
472
+ "variant": "body",
473
+ "content": "@entity.name"
474
+ }
475
+ ]
476
+ },
477
+ {
478
+ "type": "stack",
479
+ "direction": "horizontal",
480
+ "gap": "md",
481
+ "children": [
482
+ {
483
+ "type": "typography",
484
+ "variant": "caption",
485
+ "content": "Description"
486
+ },
487
+ {
488
+ "type": "typography",
489
+ "variant": "body",
490
+ "content": "@entity.description"
491
+ }
492
+ ]
493
+ },
494
+ {
495
+ "type": "stack",
496
+ "direction": "horizontal",
497
+ "gap": "md",
498
+ "children": [
499
+ {
500
+ "type": "typography",
501
+ "variant": "caption",
502
+ "content": "Status"
503
+ },
504
+ {
505
+ "type": "typography",
506
+ "variant": "body",
507
+ "content": "@entity.status"
508
+ }
509
+ ]
510
+ },
511
+ {
512
+ "type": "stack",
513
+ "direction": "horizontal",
514
+ "gap": "md",
515
+ "children": [
516
+ {
517
+ "type": "typography",
518
+ "variant": "caption",
519
+ "content": "CreatedAt"
520
+ },
521
+ {
522
+ "type": "typography",
523
+ "variant": "body",
524
+ "content": "@entity.createdAt"
525
+ }
526
+ ]
527
+ },
528
+ {
529
+ "type": "divider"
530
+ },
531
+ {
532
+ "type": "stack",
533
+ "direction": "horizontal",
534
+ "gap": "sm",
535
+ "justify": "end",
536
+ "children": [
537
+ {
538
+ "type": "button",
539
+ "label": "Close",
540
+ "event": "CLOSE",
541
+ "variant": "ghost"
542
+ }
543
+ ]
544
+ }
545
+ ]
546
+ }
547
+ ]
548
+ ]
549
+ },
550
+ {
551
+ "from": "open",
552
+ "to": "closed",
553
+ "event": "CLOSE",
554
+ "effects": [
555
+ [
556
+ "render-ui",
557
+ "modal",
558
+ null
559
+ ]
560
+ ]
561
+ }
562
+ ]
563
+ }
564
+ }
565
+ ],
566
+ "pages": [
567
+ {
568
+ "name": "ItemPage",
569
+ "path": "/items",
570
+ "traits": [
571
+ {
572
+ "ref": "ItemBrowse"
573
+ },
574
+ {
575
+ "ref": "ItemCompose"
576
+ },
577
+ {
578
+ "ref": "ItemView"
579
+ }
580
+ ]
581
+ }
582
+ ]
583
+ }
584
+ ],
585
+ "description": "Messaging molecule. Composes atoms via shared event bus: - stdBrowse: message list with \"Compose\" header action, \"View\" item action - stdModal (compose): compose/send message form (COMPOSE -> SEND) - stdModal (view): view message detail (VIEW with id payload) No emits/listens wiring. Traits on the same page share the event bus. Only the trait with a matching transition from its current state responds."
586
+ }