@almadar/std 3.2.0 → 3.2.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 (262) hide show
  1. package/behaviors/exports/atoms/std-async.orb +41 -24
  2. package/behaviors/exports/atoms/std-browse.orb +12 -5
  3. package/behaviors/exports/atoms/std-cache-aside.orb +256 -42
  4. package/behaviors/exports/atoms/std-circuit-breaker.orb +577 -97
  5. package/behaviors/exports/atoms/std-collision.orb +278 -206
  6. package/behaviors/exports/atoms/std-combat-log.orb +6 -1
  7. package/behaviors/exports/atoms/std-combat.orb +6 -1
  8. package/behaviors/exports/atoms/std-confirmation.orb +212 -7
  9. package/behaviors/exports/atoms/std-dialogue-box.orb +6 -1
  10. package/behaviors/exports/atoms/std-display.orb +166 -21
  11. package/behaviors/exports/atoms/std-drawer.orb +208 -104
  12. package/behaviors/exports/atoms/std-filter.orb +211 -18
  13. package/behaviors/exports/atoms/std-game-audio.orb +6 -1
  14. package/behaviors/exports/atoms/std-game-canvas2d.orb +6 -1
  15. package/behaviors/exports/atoms/std-game-canvas3d.orb +6 -1
  16. package/behaviors/exports/atoms/std-game-hud.orb +6 -1
  17. package/behaviors/exports/atoms/std-game-menu.orb +6 -1
  18. package/behaviors/exports/atoms/std-game-over-screen.orb +6 -1
  19. package/behaviors/exports/atoms/std-gameflow.orb +100 -5
  20. package/behaviors/exports/atoms/std-input.orb +142 -137
  21. package/behaviors/exports/atoms/std-inventory-panel.orb +6 -1
  22. package/behaviors/exports/atoms/std-isometric-canvas.orb +6 -1
  23. package/behaviors/exports/atoms/std-loading.orb +27 -76
  24. package/behaviors/exports/atoms/std-modal.orb +177 -93
  25. package/behaviors/exports/atoms/std-movement.orb +401 -31
  26. package/behaviors/exports/atoms/std-notification.orb +46 -95
  27. package/behaviors/exports/atoms/std-overworld.orb +44 -16
  28. package/behaviors/exports/atoms/std-pagination.orb +26 -89
  29. package/behaviors/exports/atoms/std-physics2d.orb +6 -1
  30. package/behaviors/exports/atoms/std-platformer-canvas.orb +6 -1
  31. package/behaviors/exports/atoms/std-quest.orb +309 -34
  32. package/behaviors/exports/atoms/std-rate-limiter.orb +410 -157
  33. package/behaviors/exports/atoms/std-score-board.orb +6 -1
  34. package/behaviors/exports/atoms/std-score.orb +211 -11
  35. package/behaviors/exports/atoms/std-search.orb +28 -27
  36. package/behaviors/exports/atoms/std-selection.orb +160 -121
  37. package/behaviors/exports/atoms/std-simulation-canvas.orb +6 -1
  38. package/behaviors/exports/atoms/std-sort.orb +134 -24
  39. package/behaviors/exports/atoms/std-sprite.orb +6 -1
  40. package/behaviors/exports/atoms/std-tabs.orb +25 -15
  41. package/behaviors/exports/atoms/std-timer.orb +483 -91
  42. package/behaviors/exports/atoms/std-undo.orb +211 -81
  43. package/behaviors/exports/atoms/std-wizard.orb +31 -34
  44. package/behaviors/exports/molecules/std-builder-game.orb +6 -1
  45. package/behaviors/exports/molecules/std-cart.orb +6 -1
  46. package/behaviors/exports/molecules/std-classifier-game.orb +6 -1
  47. package/behaviors/exports/molecules/std-debugger-game.orb +6 -1
  48. package/behaviors/exports/molecules/std-detail.orb +12 -5
  49. package/behaviors/exports/molecules/std-event-handler-game.orb +6 -1
  50. package/behaviors/exports/molecules/std-geospatial.orb +28 -9
  51. package/behaviors/exports/molecules/std-inventory.orb +28 -9
  52. package/behaviors/exports/molecules/std-list.orb +392 -5
  53. package/behaviors/exports/molecules/std-messaging.orb +12 -5
  54. package/behaviors/exports/molecules/std-negotiator-game.orb +6 -1
  55. package/behaviors/exports/molecules/std-platformer-game.orb +40 -1
  56. package/behaviors/exports/molecules/std-puzzle-game.orb +26 -1
  57. package/behaviors/exports/molecules/std-sequencer-game.orb +6 -1
  58. package/behaviors/exports/molecules/std-simulator-game.orb +6 -1
  59. package/behaviors/exports/molecules/std-turn-based-battle.orb +40 -1
  60. package/behaviors/exports/organisms/std-api-gateway.orb +1145 -403
  61. package/behaviors/exports/organisms/std-arcade-game.orb +214 -16
  62. package/behaviors/exports/organisms/std-booking-system.orb +2165 -1605
  63. package/behaviors/exports/organisms/std-cicd-pipeline.orb +581 -47
  64. package/behaviors/exports/organisms/std-cms.orb +1713 -947
  65. package/behaviors/exports/organisms/std-coding-academy.orb +180 -380
  66. package/behaviors/exports/organisms/std-crm.orb +1669 -1153
  67. package/behaviors/exports/organisms/std-devops-dashboard.orb +1430 -378
  68. package/behaviors/exports/organisms/std-ecommerce.orb +2361 -1601
  69. package/behaviors/exports/organisms/std-finance-tracker.orb +622 -438
  70. package/behaviors/exports/organisms/std-healthcare.orb +1687 -1125
  71. package/behaviors/exports/organisms/std-helpdesk.orb +626 -407
  72. package/behaviors/exports/organisms/std-hr-portal.orb +1309 -714
  73. package/behaviors/exports/organisms/std-iot-dashboard.orb +1247 -335
  74. package/behaviors/exports/organisms/std-lms.orb +658 -362
  75. package/behaviors/exports/organisms/std-platformer-app.orb +56 -8
  76. package/behaviors/exports/organisms/std-project-manager.orb +1697 -1183
  77. package/behaviors/exports/organisms/std-puzzle-app.orb +20 -0
  78. package/behaviors/exports/organisms/std-realtime-chat.orb +552 -28
  79. package/behaviors/exports/organisms/std-rpg-game.orb +397 -56
  80. package/behaviors/exports/organisms/std-social-feed.orb +12 -8
  81. package/behaviors/exports/organisms/std-stem-lab.orb +175 -290
  82. package/behaviors/exports/organisms/std-strategy-game.orb +252 -395
  83. package/behaviors/exports/organisms/std-trading-dashboard.orb +718 -524
  84. package/behaviors/exports/validation-report.json +747 -0
  85. package/behaviors/exports/verify-results.json +13 -0
  86. package/dist/behaviors/exports/atoms/std-async.orb +41 -24
  87. package/dist/behaviors/exports/atoms/std-browse.orb +12 -5
  88. package/dist/behaviors/exports/atoms/std-cache-aside.orb +256 -42
  89. package/dist/behaviors/exports/atoms/std-circuit-breaker.orb +577 -97
  90. package/dist/behaviors/exports/atoms/std-collision.orb +278 -206
  91. package/dist/behaviors/exports/atoms/std-combat-log.orb +6 -1
  92. package/dist/behaviors/exports/atoms/std-combat.orb +6 -1
  93. package/dist/behaviors/exports/atoms/std-confirmation.orb +212 -7
  94. package/dist/behaviors/exports/atoms/std-dialogue-box.orb +6 -1
  95. package/dist/behaviors/exports/atoms/std-display.orb +166 -21
  96. package/dist/behaviors/exports/atoms/std-drawer.orb +208 -104
  97. package/dist/behaviors/exports/atoms/std-filter.orb +211 -18
  98. package/dist/behaviors/exports/atoms/std-game-audio.orb +6 -1
  99. package/dist/behaviors/exports/atoms/std-game-canvas2d.orb +6 -1
  100. package/dist/behaviors/exports/atoms/std-game-canvas3d.orb +6 -1
  101. package/dist/behaviors/exports/atoms/std-game-hud.orb +6 -1
  102. package/dist/behaviors/exports/atoms/std-game-menu.orb +6 -1
  103. package/dist/behaviors/exports/atoms/std-game-over-screen.orb +6 -1
  104. package/dist/behaviors/exports/atoms/std-gameflow.orb +100 -5
  105. package/dist/behaviors/exports/atoms/std-input.orb +142 -137
  106. package/dist/behaviors/exports/atoms/std-inventory-panel.orb +6 -1
  107. package/dist/behaviors/exports/atoms/std-isometric-canvas.orb +6 -1
  108. package/dist/behaviors/exports/atoms/std-loading.orb +27 -76
  109. package/dist/behaviors/exports/atoms/std-modal.orb +177 -93
  110. package/dist/behaviors/exports/atoms/std-movement.orb +401 -31
  111. package/dist/behaviors/exports/atoms/std-notification.orb +46 -95
  112. package/dist/behaviors/exports/atoms/std-overworld.orb +44 -16
  113. package/dist/behaviors/exports/atoms/std-pagination.orb +26 -89
  114. package/dist/behaviors/exports/atoms/std-physics2d.orb +6 -1
  115. package/dist/behaviors/exports/atoms/std-platformer-canvas.orb +6 -1
  116. package/dist/behaviors/exports/atoms/std-quest.orb +309 -34
  117. package/dist/behaviors/exports/atoms/std-rate-limiter.orb +410 -157
  118. package/dist/behaviors/exports/atoms/std-score-board.orb +6 -1
  119. package/dist/behaviors/exports/atoms/std-score.orb +211 -11
  120. package/dist/behaviors/exports/atoms/std-search.orb +28 -27
  121. package/dist/behaviors/exports/atoms/std-selection.orb +160 -121
  122. package/dist/behaviors/exports/atoms/std-simulation-canvas.orb +6 -1
  123. package/dist/behaviors/exports/atoms/std-sort.orb +134 -24
  124. package/dist/behaviors/exports/atoms/std-sprite.orb +6 -1
  125. package/dist/behaviors/exports/atoms/std-tabs.orb +25 -15
  126. package/dist/behaviors/exports/atoms/std-timer.orb +483 -91
  127. package/dist/behaviors/exports/atoms/std-undo.orb +211 -81
  128. package/dist/behaviors/exports/atoms/std-wizard.orb +31 -34
  129. package/dist/behaviors/exports/molecules/std-builder-game.orb +6 -1
  130. package/dist/behaviors/exports/molecules/std-cart.orb +6 -1
  131. package/dist/behaviors/exports/molecules/std-classifier-game.orb +6 -1
  132. package/dist/behaviors/exports/molecules/std-debugger-game.orb +6 -1
  133. package/dist/behaviors/exports/molecules/std-detail.orb +12 -5
  134. package/dist/behaviors/exports/molecules/std-event-handler-game.orb +6 -1
  135. package/dist/behaviors/exports/molecules/std-geospatial.orb +28 -9
  136. package/dist/behaviors/exports/molecules/std-inventory.orb +28 -9
  137. package/dist/behaviors/exports/molecules/std-list.orb +392 -5
  138. package/dist/behaviors/exports/molecules/std-messaging.orb +12 -5
  139. package/dist/behaviors/exports/molecules/std-negotiator-game.orb +6 -1
  140. package/dist/behaviors/exports/molecules/std-platformer-game.orb +40 -1
  141. package/dist/behaviors/exports/molecules/std-puzzle-game.orb +26 -1
  142. package/dist/behaviors/exports/molecules/std-sequencer-game.orb +6 -1
  143. package/dist/behaviors/exports/molecules/std-simulator-game.orb +6 -1
  144. package/dist/behaviors/exports/molecules/std-turn-based-battle.orb +40 -1
  145. package/dist/behaviors/exports/organisms/std-api-gateway.orb +1145 -403
  146. package/dist/behaviors/exports/organisms/std-arcade-game.orb +214 -16
  147. package/dist/behaviors/exports/organisms/std-booking-system.orb +2165 -1605
  148. package/dist/behaviors/exports/organisms/std-cicd-pipeline.orb +581 -47
  149. package/dist/behaviors/exports/organisms/std-cms.orb +1713 -947
  150. package/dist/behaviors/exports/organisms/std-coding-academy.orb +180 -380
  151. package/dist/behaviors/exports/organisms/std-crm.orb +1669 -1153
  152. package/dist/behaviors/exports/organisms/std-devops-dashboard.orb +1430 -378
  153. package/dist/behaviors/exports/organisms/std-ecommerce.orb +2361 -1601
  154. package/dist/behaviors/exports/organisms/std-finance-tracker.orb +622 -438
  155. package/dist/behaviors/exports/organisms/std-healthcare.orb +1687 -1125
  156. package/dist/behaviors/exports/organisms/std-helpdesk.orb +626 -407
  157. package/dist/behaviors/exports/organisms/std-hr-portal.orb +1309 -714
  158. package/dist/behaviors/exports/organisms/std-iot-dashboard.orb +1247 -335
  159. package/dist/behaviors/exports/organisms/std-lms.orb +658 -362
  160. package/dist/behaviors/exports/organisms/std-platformer-app.orb +56 -8
  161. package/dist/behaviors/exports/organisms/std-project-manager.orb +1697 -1183
  162. package/dist/behaviors/exports/organisms/std-puzzle-app.orb +20 -0
  163. package/dist/behaviors/exports/organisms/std-realtime-chat.orb +552 -28
  164. package/dist/behaviors/exports/organisms/std-rpg-game.orb +397 -56
  165. package/dist/behaviors/exports/organisms/std-social-feed.orb +12 -8
  166. package/dist/behaviors/exports/organisms/std-stem-lab.orb +175 -290
  167. package/dist/behaviors/exports/organisms/std-strategy-game.orb +252 -395
  168. package/dist/behaviors/exports/organisms/std-trading-dashboard.orb +718 -524
  169. package/dist/behaviors/exports/validation-report.json +747 -0
  170. package/dist/behaviors/exports/verify-results.json +13 -0
  171. package/dist/behaviors/functions/index.js +715 -593
  172. package/dist/behaviors/functions/index.js.map +1 -1
  173. package/dist/behaviors/index.js +715 -593
  174. package/dist/behaviors/index.js.map +1 -1
  175. package/dist/exports/atoms/std-async.orb +41 -24
  176. package/dist/exports/atoms/std-browse.orb +12 -5
  177. package/dist/exports/atoms/std-cache-aside.orb +256 -42
  178. package/dist/exports/atoms/std-circuit-breaker.orb +577 -97
  179. package/dist/exports/atoms/std-collision.orb +278 -206
  180. package/dist/exports/atoms/std-combat-log.orb +6 -1
  181. package/dist/exports/atoms/std-combat.orb +6 -1
  182. package/dist/exports/atoms/std-confirmation.orb +212 -7
  183. package/dist/exports/atoms/std-dialogue-box.orb +6 -1
  184. package/dist/exports/atoms/std-display.orb +166 -21
  185. package/dist/exports/atoms/std-drawer.orb +208 -104
  186. package/dist/exports/atoms/std-filter.orb +211 -18
  187. package/dist/exports/atoms/std-game-audio.orb +6 -1
  188. package/dist/exports/atoms/std-game-canvas2d.orb +6 -1
  189. package/dist/exports/atoms/std-game-canvas3d.orb +6 -1
  190. package/dist/exports/atoms/std-game-hud.orb +6 -1
  191. package/dist/exports/atoms/std-game-menu.orb +6 -1
  192. package/dist/exports/atoms/std-game-over-screen.orb +6 -1
  193. package/dist/exports/atoms/std-gameflow.orb +100 -5
  194. package/dist/exports/atoms/std-input.orb +142 -137
  195. package/dist/exports/atoms/std-inventory-panel.orb +6 -1
  196. package/dist/exports/atoms/std-isometric-canvas.orb +6 -1
  197. package/dist/exports/atoms/std-loading.orb +27 -76
  198. package/dist/exports/atoms/std-modal.orb +177 -93
  199. package/dist/exports/atoms/std-movement.orb +401 -31
  200. package/dist/exports/atoms/std-notification.orb +46 -95
  201. package/dist/exports/atoms/std-overworld.orb +44 -16
  202. package/dist/exports/atoms/std-pagination.orb +26 -89
  203. package/dist/exports/atoms/std-physics2d.orb +6 -1
  204. package/dist/exports/atoms/std-platformer-canvas.orb +6 -1
  205. package/dist/exports/atoms/std-quest.orb +309 -34
  206. package/dist/exports/atoms/std-rate-limiter.orb +410 -157
  207. package/dist/exports/atoms/std-score-board.orb +6 -1
  208. package/dist/exports/atoms/std-score.orb +211 -11
  209. package/dist/exports/atoms/std-search.orb +28 -27
  210. package/dist/exports/atoms/std-selection.orb +160 -121
  211. package/dist/exports/atoms/std-simulation-canvas.orb +6 -1
  212. package/dist/exports/atoms/std-sort.orb +134 -24
  213. package/dist/exports/atoms/std-sprite.orb +6 -1
  214. package/dist/exports/atoms/std-tabs.orb +25 -15
  215. package/dist/exports/atoms/std-timer.orb +483 -91
  216. package/dist/exports/atoms/std-undo.orb +211 -81
  217. package/dist/exports/atoms/std-wizard.orb +31 -34
  218. package/dist/exports/molecules/std-builder-game.orb +6 -1
  219. package/dist/exports/molecules/std-cart.orb +6 -1
  220. package/dist/exports/molecules/std-classifier-game.orb +6 -1
  221. package/dist/exports/molecules/std-debugger-game.orb +6 -1
  222. package/dist/exports/molecules/std-detail.orb +12 -5
  223. package/dist/exports/molecules/std-event-handler-game.orb +6 -1
  224. package/dist/exports/molecules/std-geospatial.orb +28 -9
  225. package/dist/exports/molecules/std-inventory.orb +28 -9
  226. package/dist/exports/molecules/std-list.orb +392 -5
  227. package/dist/exports/molecules/std-messaging.orb +12 -5
  228. package/dist/exports/molecules/std-negotiator-game.orb +6 -1
  229. package/dist/exports/molecules/std-platformer-game.orb +40 -1
  230. package/dist/exports/molecules/std-puzzle-game.orb +26 -1
  231. package/dist/exports/molecules/std-sequencer-game.orb +6 -1
  232. package/dist/exports/molecules/std-simulator-game.orb +6 -1
  233. package/dist/exports/molecules/std-turn-based-battle.orb +40 -1
  234. package/dist/exports/organisms/std-api-gateway.orb +1145 -403
  235. package/dist/exports/organisms/std-arcade-game.orb +214 -16
  236. package/dist/exports/organisms/std-booking-system.orb +2165 -1605
  237. package/dist/exports/organisms/std-cicd-pipeline.orb +581 -47
  238. package/dist/exports/organisms/std-cms.orb +1713 -947
  239. package/dist/exports/organisms/std-coding-academy.orb +180 -380
  240. package/dist/exports/organisms/std-crm.orb +1669 -1153
  241. package/dist/exports/organisms/std-devops-dashboard.orb +1430 -378
  242. package/dist/exports/organisms/std-ecommerce.orb +2361 -1601
  243. package/dist/exports/organisms/std-finance-tracker.orb +622 -438
  244. package/dist/exports/organisms/std-healthcare.orb +1687 -1125
  245. package/dist/exports/organisms/std-helpdesk.orb +626 -407
  246. package/dist/exports/organisms/std-hr-portal.orb +1309 -714
  247. package/dist/exports/organisms/std-iot-dashboard.orb +1247 -335
  248. package/dist/exports/organisms/std-lms.orb +658 -362
  249. package/dist/exports/organisms/std-platformer-app.orb +56 -8
  250. package/dist/exports/organisms/std-project-manager.orb +1697 -1183
  251. package/dist/exports/organisms/std-puzzle-app.orb +20 -0
  252. package/dist/exports/organisms/std-realtime-chat.orb +552 -28
  253. package/dist/exports/organisms/std-rpg-game.orb +397 -56
  254. package/dist/exports/organisms/std-social-feed.orb +12 -8
  255. package/dist/exports/organisms/std-stem-lab.orb +175 -290
  256. package/dist/exports/organisms/std-strategy-game.orb +252 -395
  257. package/dist/exports/organisms/std-trading-dashboard.orb +718 -524
  258. package/dist/exports/validation-report.json +747 -0
  259. package/dist/exports/verify-results.json +13 -0
  260. package/dist/index.js +715 -593
  261. package/dist/index.js.map +1 -1
  262. package/package.json +1 -1
@@ -225,7 +225,9 @@
225
225
  }
226
226
  ],
227
227
  "className": "transition-shadow hover:shadow-md cursor-pointer",
228
- "children": [
228
+ "renderItem": [
229
+ "fn",
230
+ "item",
229
231
  {
230
232
  "type": "stack",
231
233
  "direction": "vertical",
@@ -251,13 +253,13 @@
251
253
  {
252
254
  "type": "typography",
253
255
  "variant": "h4",
254
- "content": "@entity.name"
256
+ "content": "@item.name"
255
257
  }
256
258
  ]
257
259
  },
258
260
  {
259
261
  "type": "badge",
260
- "label": "@entity.email"
262
+ "label": "@item.email"
261
263
  }
262
264
  ]
263
265
  },
@@ -265,7 +267,7 @@
265
267
  "type": "typography",
266
268
  "variant": "caption",
267
269
  "color": "muted",
268
- "content": "@entity.department"
270
+ "content": "@item.department"
269
271
  }
270
272
  ]
271
273
  }
@@ -383,144 +385,55 @@
383
385
  "modal",
384
386
  null
385
387
  ],
386
- [
387
- "fetch",
388
- "Employee"
389
- ],
390
- [
391
- "notify",
392
- "Employee deleted successfully"
393
- ]
394
- ]
395
- },
396
- {
397
- "from": "deleting",
398
- "to": "browsing",
399
- "event": "CANCEL",
400
- "effects": [
401
- [
402
- "render-ui",
403
- "modal",
404
- null
405
- ]
406
- ]
407
- },
408
- {
409
- "from": "deleting",
410
- "to": "browsing",
411
- "event": "CLOSE",
412
- "effects": [
413
- [
414
- "render-ui",
415
- "modal",
416
- null
417
- ]
418
- ]
419
- }
420
- ]
421
- },
422
- "emits": [
423
- {
424
- "event": "ONBOARD",
425
- "description": "Start onboarding for a new employee",
426
- "payload": [
427
- {
428
- "name": "id",
429
- "type": "string",
430
- "required": true
431
- }
432
- ],
433
- "scope": "external"
434
- }
435
- ]
436
- },
437
- {
438
- "name": "EmployeeCreate",
439
- "linkedEntity": "Employee",
440
- "category": "interaction",
441
- "emits": [
442
- {
443
- "event": "EMPLOYEE_CREATED"
444
- }
445
- ],
446
- "stateMachine": {
447
- "states": [
448
- {
449
- "name": "closed",
450
- "isInitial": true
451
- },
452
- {
453
- "name": "open"
454
- }
455
- ],
456
- "events": [
457
- {
458
- "key": "INIT",
459
- "name": "Initialize"
460
- },
461
- {
462
- "key": "CREATE",
463
- "name": "Open"
464
- },
465
- {
466
- "key": "CLOSE",
467
- "name": "Close"
468
- },
469
- {
470
- "key": "SAVE",
471
- "name": "Save",
472
- "payload": [
473
- {
474
- "name": "data",
475
- "type": "object",
476
- "required": true
477
- }
478
- ]
479
- }
480
- ],
481
- "transitions": [
482
- {
483
- "from": "closed",
484
- "to": "closed",
485
- "event": "INIT",
486
- "effects": [
487
- [
488
- "fetch",
489
- "Employee"
490
- ]
491
- ]
492
- },
493
- {
494
- "from": "closed",
495
- "to": "open",
496
- "event": "CREATE",
497
- "effects": [
498
388
  [
499
389
  "fetch",
500
390
  "Employee"
501
391
  ],
502
392
  [
503
393
  "render-ui",
504
- "modal",
394
+ "main",
505
395
  {
506
396
  "type": "stack",
507
397
  "direction": "vertical",
508
- "gap": "md",
398
+ "gap": "lg",
509
399
  "children": [
510
400
  {
511
401
  "type": "stack",
512
402
  "direction": "horizontal",
513
- "gap": "sm",
403
+ "gap": "md",
404
+ "justify": "space-between",
514
405
  "children": [
515
406
  {
516
- "type": "icon",
517
- "name": "plus-circle",
518
- "size": "md"
407
+ "type": "stack",
408
+ "direction": "horizontal",
409
+ "gap": "sm",
410
+ "align": "center",
411
+ "children": [
412
+ {
413
+ "type": "icon",
414
+ "name": "users",
415
+ "size": "lg"
416
+ },
417
+ {
418
+ "type": "typography",
419
+ "content": "Employees",
420
+ "variant": "h2"
421
+ }
422
+ ]
519
423
  },
520
424
  {
521
- "type": "typography",
522
- "content": "New Employee",
523
- "variant": "h3"
425
+ "type": "stack",
426
+ "direction": "horizontal",
427
+ "gap": "sm",
428
+ "children": [
429
+ {
430
+ "type": "button",
431
+ "label": "Add Employee",
432
+ "event": "CREATE",
433
+ "variant": "primary",
434
+ "icon": "plus"
435
+ }
436
+ ]
524
437
  }
525
438
  ]
526
439
  },
@@ -528,46 +441,93 @@
528
441
  "type": "divider"
529
442
  },
530
443
  {
531
- "type": "form-section",
444
+ "type": "data-grid",
532
445
  "entity": "Employee",
533
- "mode": "create",
534
- "submitEvent": "SAVE",
535
- "cancelEvent": "CLOSE",
536
- "fields": [
537
- "name",
538
- "email",
539
- "department",
540
- "role",
541
- "startDate"
446
+ "emptyIcon": "inbox",
447
+ "emptyTitle": "No employees yet",
448
+ "emptyDescription": "Create your first employee to get started.",
449
+ "itemActions": [
450
+ {
451
+ "label": "View",
452
+ "event": "VIEW"
453
+ },
454
+ {
455
+ "label": "Edit",
456
+ "event": "EDIT"
457
+ },
458
+ {
459
+ "label": "Delete",
460
+ "event": "DELETE",
461
+ "variant": "danger"
462
+ }
463
+ ],
464
+ "className": "transition-shadow hover:shadow-md cursor-pointer",
465
+ "renderItem": [
466
+ "fn",
467
+ "item",
468
+ {
469
+ "type": "stack",
470
+ "direction": "vertical",
471
+ "gap": "sm",
472
+ "children": [
473
+ {
474
+ "type": "stack",
475
+ "direction": "horizontal",
476
+ "justify": "space-between",
477
+ "align": "center",
478
+ "children": [
479
+ {
480
+ "type": "stack",
481
+ "direction": "horizontal",
482
+ "gap": "sm",
483
+ "align": "center",
484
+ "children": [
485
+ {
486
+ "type": "icon",
487
+ "name": "users",
488
+ "size": "sm"
489
+ },
490
+ {
491
+ "type": "typography",
492
+ "variant": "h4",
493
+ "content": "@item.name"
494
+ }
495
+ ]
496
+ },
497
+ {
498
+ "type": "badge",
499
+ "label": "@item.email"
500
+ }
501
+ ]
502
+ },
503
+ {
504
+ "type": "typography",
505
+ "variant": "caption",
506
+ "color": "muted",
507
+ "content": "@item.department"
508
+ }
509
+ ]
510
+ }
542
511
  ]
543
512
  }
544
513
  ]
545
514
  }
515
+ ],
516
+ [
517
+ "notify",
518
+ "Employee deleted successfully"
546
519
  ]
547
520
  ]
548
521
  },
549
522
  {
550
- "from": "open",
551
- "to": "closed",
552
- "event": "CLOSE",
523
+ "from": "deleting",
524
+ "to": "browsing",
525
+ "event": "CANCEL",
553
526
  "effects": [
554
527
  [
555
528
  "render-ui",
556
529
  "modal",
557
530
  null
558
- ]
559
- ]
560
- },
561
- {
562
- "from": "open",
563
- "to": "closed",
564
- "event": "SAVE",
565
- "effects": [
566
- [
567
- "persist",
568
- "create",
569
- "Employee",
570
- "@payload.data"
571
531
  ],
572
532
  [
573
533
  "fetch",
@@ -575,15 +535,437 @@
575
535
  ],
576
536
  [
577
537
  "render-ui",
578
- "modal",
579
- null
580
- ],
581
- [
582
- "emit",
583
- "EMPLOYEE_CREATED"
584
- ],
585
- [
586
- "notify",
538
+ "main",
539
+ {
540
+ "type": "stack",
541
+ "direction": "vertical",
542
+ "gap": "lg",
543
+ "children": [
544
+ {
545
+ "type": "stack",
546
+ "direction": "horizontal",
547
+ "gap": "md",
548
+ "justify": "space-between",
549
+ "children": [
550
+ {
551
+ "type": "stack",
552
+ "direction": "horizontal",
553
+ "gap": "sm",
554
+ "align": "center",
555
+ "children": [
556
+ {
557
+ "type": "icon",
558
+ "name": "users",
559
+ "size": "lg"
560
+ },
561
+ {
562
+ "type": "typography",
563
+ "content": "Employees",
564
+ "variant": "h2"
565
+ }
566
+ ]
567
+ },
568
+ {
569
+ "type": "stack",
570
+ "direction": "horizontal",
571
+ "gap": "sm",
572
+ "children": [
573
+ {
574
+ "type": "button",
575
+ "label": "Add Employee",
576
+ "event": "CREATE",
577
+ "variant": "primary",
578
+ "icon": "plus"
579
+ }
580
+ ]
581
+ }
582
+ ]
583
+ },
584
+ {
585
+ "type": "divider"
586
+ },
587
+ {
588
+ "type": "data-grid",
589
+ "entity": "Employee",
590
+ "emptyIcon": "inbox",
591
+ "emptyTitle": "No employees yet",
592
+ "emptyDescription": "Create your first employee to get started.",
593
+ "itemActions": [
594
+ {
595
+ "label": "View",
596
+ "event": "VIEW"
597
+ },
598
+ {
599
+ "label": "Edit",
600
+ "event": "EDIT"
601
+ },
602
+ {
603
+ "label": "Delete",
604
+ "event": "DELETE",
605
+ "variant": "danger"
606
+ }
607
+ ],
608
+ "className": "transition-shadow hover:shadow-md cursor-pointer",
609
+ "renderItem": [
610
+ "fn",
611
+ "item",
612
+ {
613
+ "type": "stack",
614
+ "direction": "vertical",
615
+ "gap": "sm",
616
+ "children": [
617
+ {
618
+ "type": "stack",
619
+ "direction": "horizontal",
620
+ "justify": "space-between",
621
+ "align": "center",
622
+ "children": [
623
+ {
624
+ "type": "stack",
625
+ "direction": "horizontal",
626
+ "gap": "sm",
627
+ "align": "center",
628
+ "children": [
629
+ {
630
+ "type": "icon",
631
+ "name": "users",
632
+ "size": "sm"
633
+ },
634
+ {
635
+ "type": "typography",
636
+ "variant": "h4",
637
+ "content": "@item.name"
638
+ }
639
+ ]
640
+ },
641
+ {
642
+ "type": "badge",
643
+ "label": "@item.email"
644
+ }
645
+ ]
646
+ },
647
+ {
648
+ "type": "typography",
649
+ "variant": "caption",
650
+ "color": "muted",
651
+ "content": "@item.department"
652
+ }
653
+ ]
654
+ }
655
+ ]
656
+ }
657
+ ]
658
+ }
659
+ ]
660
+ ]
661
+ },
662
+ {
663
+ "from": "deleting",
664
+ "to": "browsing",
665
+ "event": "CLOSE",
666
+ "effects": [
667
+ [
668
+ "render-ui",
669
+ "modal",
670
+ null
671
+ ],
672
+ [
673
+ "fetch",
674
+ "Employee"
675
+ ],
676
+ [
677
+ "render-ui",
678
+ "main",
679
+ {
680
+ "type": "stack",
681
+ "direction": "vertical",
682
+ "gap": "lg",
683
+ "children": [
684
+ {
685
+ "type": "stack",
686
+ "direction": "horizontal",
687
+ "gap": "md",
688
+ "justify": "space-between",
689
+ "children": [
690
+ {
691
+ "type": "stack",
692
+ "direction": "horizontal",
693
+ "gap": "sm",
694
+ "align": "center",
695
+ "children": [
696
+ {
697
+ "type": "icon",
698
+ "name": "users",
699
+ "size": "lg"
700
+ },
701
+ {
702
+ "type": "typography",
703
+ "content": "Employees",
704
+ "variant": "h2"
705
+ }
706
+ ]
707
+ },
708
+ {
709
+ "type": "stack",
710
+ "direction": "horizontal",
711
+ "gap": "sm",
712
+ "children": [
713
+ {
714
+ "type": "button",
715
+ "label": "Add Employee",
716
+ "event": "CREATE",
717
+ "variant": "primary",
718
+ "icon": "plus"
719
+ }
720
+ ]
721
+ }
722
+ ]
723
+ },
724
+ {
725
+ "type": "divider"
726
+ },
727
+ {
728
+ "type": "data-grid",
729
+ "entity": "Employee",
730
+ "emptyIcon": "inbox",
731
+ "emptyTitle": "No employees yet",
732
+ "emptyDescription": "Create your first employee to get started.",
733
+ "itemActions": [
734
+ {
735
+ "label": "View",
736
+ "event": "VIEW"
737
+ },
738
+ {
739
+ "label": "Edit",
740
+ "event": "EDIT"
741
+ },
742
+ {
743
+ "label": "Delete",
744
+ "event": "DELETE",
745
+ "variant": "danger"
746
+ }
747
+ ],
748
+ "className": "transition-shadow hover:shadow-md cursor-pointer",
749
+ "renderItem": [
750
+ "fn",
751
+ "item",
752
+ {
753
+ "type": "stack",
754
+ "direction": "vertical",
755
+ "gap": "sm",
756
+ "children": [
757
+ {
758
+ "type": "stack",
759
+ "direction": "horizontal",
760
+ "justify": "space-between",
761
+ "align": "center",
762
+ "children": [
763
+ {
764
+ "type": "stack",
765
+ "direction": "horizontal",
766
+ "gap": "sm",
767
+ "align": "center",
768
+ "children": [
769
+ {
770
+ "type": "icon",
771
+ "name": "users",
772
+ "size": "sm"
773
+ },
774
+ {
775
+ "type": "typography",
776
+ "variant": "h4",
777
+ "content": "@item.name"
778
+ }
779
+ ]
780
+ },
781
+ {
782
+ "type": "badge",
783
+ "label": "@item.email"
784
+ }
785
+ ]
786
+ },
787
+ {
788
+ "type": "typography",
789
+ "variant": "caption",
790
+ "color": "muted",
791
+ "content": "@item.department"
792
+ }
793
+ ]
794
+ }
795
+ ]
796
+ }
797
+ ]
798
+ }
799
+ ]
800
+ ]
801
+ }
802
+ ]
803
+ },
804
+ "emits": [
805
+ {
806
+ "event": "ONBOARD",
807
+ "description": "Start onboarding for a new employee",
808
+ "payload": [
809
+ {
810
+ "name": "id",
811
+ "type": "string",
812
+ "required": true
813
+ }
814
+ ],
815
+ "scope": "external"
816
+ }
817
+ ]
818
+ },
819
+ {
820
+ "name": "EmployeeCreate",
821
+ "linkedEntity": "Employee",
822
+ "category": "interaction",
823
+ "emits": [
824
+ {
825
+ "event": "EMPLOYEE_CREATED"
826
+ }
827
+ ],
828
+ "stateMachine": {
829
+ "states": [
830
+ {
831
+ "name": "closed",
832
+ "isInitial": true
833
+ },
834
+ {
835
+ "name": "open"
836
+ }
837
+ ],
838
+ "events": [
839
+ {
840
+ "key": "INIT",
841
+ "name": "Initialize"
842
+ },
843
+ {
844
+ "key": "CREATE",
845
+ "name": "Open"
846
+ },
847
+ {
848
+ "key": "CLOSE",
849
+ "name": "Close"
850
+ },
851
+ {
852
+ "key": "SAVE",
853
+ "name": "Save",
854
+ "payload": [
855
+ {
856
+ "name": "data",
857
+ "type": "object",
858
+ "required": true
859
+ }
860
+ ]
861
+ }
862
+ ],
863
+ "transitions": [
864
+ {
865
+ "from": "closed",
866
+ "to": "closed",
867
+ "event": "INIT",
868
+ "effects": [
869
+ [
870
+ "fetch",
871
+ "Employee"
872
+ ]
873
+ ]
874
+ },
875
+ {
876
+ "from": "closed",
877
+ "to": "open",
878
+ "event": "CREATE",
879
+ "effects": [
880
+ [
881
+ "fetch",
882
+ "Employee"
883
+ ],
884
+ [
885
+ "render-ui",
886
+ "modal",
887
+ {
888
+ "type": "stack",
889
+ "direction": "vertical",
890
+ "gap": "md",
891
+ "children": [
892
+ {
893
+ "type": "stack",
894
+ "direction": "horizontal",
895
+ "gap": "sm",
896
+ "children": [
897
+ {
898
+ "type": "icon",
899
+ "name": "plus-circle",
900
+ "size": "md"
901
+ },
902
+ {
903
+ "type": "typography",
904
+ "content": "New Employee",
905
+ "variant": "h3"
906
+ }
907
+ ]
908
+ },
909
+ {
910
+ "type": "divider"
911
+ },
912
+ {
913
+ "type": "form-section",
914
+ "entity": "Employee",
915
+ "mode": "create",
916
+ "submitEvent": "SAVE",
917
+ "cancelEvent": "CLOSE",
918
+ "fields": [
919
+ "name",
920
+ "email",
921
+ "department",
922
+ "role",
923
+ "startDate"
924
+ ]
925
+ }
926
+ ]
927
+ }
928
+ ]
929
+ ]
930
+ },
931
+ {
932
+ "from": "open",
933
+ "to": "closed",
934
+ "event": "CLOSE",
935
+ "effects": [
936
+ [
937
+ "render-ui",
938
+ "modal",
939
+ null
940
+ ]
941
+ ]
942
+ },
943
+ {
944
+ "from": "open",
945
+ "to": "closed",
946
+ "event": "SAVE",
947
+ "effects": [
948
+ [
949
+ "persist",
950
+ "create",
951
+ "Employee",
952
+ "@payload.data"
953
+ ],
954
+ [
955
+ "fetch",
956
+ "Employee"
957
+ ],
958
+ [
959
+ "render-ui",
960
+ "modal",
961
+ null
962
+ ],
963
+ [
964
+ "emit",
965
+ "EMPLOYEE_CREATED"
966
+ ],
967
+ [
968
+ "notify",
587
969
  "Employee created successfully"
588
970
  ]
589
971
  ]
@@ -1130,8 +1512,9 @@
1130
1512
  ]
1131
1513
  },
1132
1514
  {
1133
- "type": "badge",
1134
- "label": "Step 1 of 3"
1515
+ "type": "progress-dots",
1516
+ "count": 3,
1517
+ "currentIndex": 0
1135
1518
  },
1136
1519
  {
1137
1520
  "type": "wizard-progress",
@@ -1217,8 +1600,9 @@
1217
1600
  ]
1218
1601
  },
1219
1602
  {
1220
- "type": "badge",
1221
- "label": "Step 2 of 3"
1603
+ "type": "progress-dots",
1604
+ "count": 3,
1605
+ "currentIndex": 1
1222
1606
  },
1223
1607
  {
1224
1608
  "type": "wizard-progress",
@@ -1310,8 +1694,9 @@
1310
1694
  ]
1311
1695
  },
1312
1696
  {
1313
- "type": "badge",
1314
- "label": "Step 3 of 3"
1697
+ "type": "progress-dots",
1698
+ "count": 3,
1699
+ "currentIndex": 2
1315
1700
  },
1316
1701
  {
1317
1702
  "type": "wizard-progress",
@@ -1422,7 +1807,9 @@
1422
1807
  {
1423
1808
  "type": "data-list",
1424
1809
  "entity": "Onboarding",
1425
- "children": [
1810
+ "renderItem": [
1811
+ "fn",
1812
+ "item",
1426
1813
  {
1427
1814
  "type": "stack",
1428
1815
  "direction": "vertical",
@@ -1442,7 +1829,7 @@
1442
1829
  {
1443
1830
  "type": "typography",
1444
1831
  "variant": "body",
1445
- "content": "@entity.employeeName"
1832
+ "content": "@item.employeeName"
1446
1833
  }
1447
1834
  ]
1448
1835
  },
@@ -1460,7 +1847,7 @@
1460
1847
  {
1461
1848
  "type": "typography",
1462
1849
  "variant": "body",
1463
- "content": "@entity.department"
1850
+ "content": "@item.department"
1464
1851
  }
1465
1852
  ]
1466
1853
  },
@@ -1478,7 +1865,7 @@
1478
1865
  {
1479
1866
  "type": "typography",
1480
1867
  "variant": "body",
1481
- "content": "@entity.manager"
1868
+ "content": "@item.manager"
1482
1869
  }
1483
1870
  ]
1484
1871
  },
@@ -1496,7 +1883,7 @@
1496
1883
  {
1497
1884
  "type": "typography",
1498
1885
  "variant": "body",
1499
- "content": "@entity.equipmentReady"
1886
+ "content": "@item.equipmentReady"
1500
1887
  }
1501
1888
  ]
1502
1889
  },
@@ -1514,7 +1901,7 @@
1514
1901
  {
1515
1902
  "type": "typography",
1516
1903
  "variant": "body",
1517
- "content": "@entity.accessGranted"
1904
+ "content": "@item.accessGranted"
1518
1905
  }
1519
1906
  ]
1520
1907
  }
@@ -1523,26 +1910,12 @@
1523
1910
  ]
1524
1911
  },
1525
1912
  {
1526
- "type": "stack",
1527
- "direction": "horizontal",
1528
- "gap": "sm",
1529
- "justify": "end",
1530
- "children": [
1531
- {
1532
- "type": "button",
1533
- "label": "Back",
1534
- "event": "PREV",
1535
- "variant": "ghost",
1536
- "icon": "arrow-left"
1537
- },
1538
- {
1539
- "type": "button",
1540
- "label": "Complete",
1541
- "event": "COMPLETE",
1542
- "variant": "primary",
1543
- "icon": "check"
1544
- }
1545
- ]
1913
+ "type": "wizard-navigation",
1914
+ "currentStep": 3,
1915
+ "totalSteps": 4,
1916
+ "showBack": true,
1917
+ "showComplete": true,
1918
+ "showNext": false
1546
1919
  }
1547
1920
  ]
1548
1921
  }
@@ -1585,8 +1958,9 @@
1585
1958
  ]
1586
1959
  },
1587
1960
  {
1588
- "type": "badge",
1589
- "label": "Step 1 of 3"
1961
+ "type": "progress-dots",
1962
+ "count": 3,
1963
+ "currentIndex": 0
1590
1964
  },
1591
1965
  {
1592
1966
  "type": "wizard-progress",
@@ -1672,8 +2046,9 @@
1672
2046
  ]
1673
2047
  },
1674
2048
  {
1675
- "type": "badge",
1676
- "label": "Step 2 of 3"
2049
+ "type": "progress-dots",
2050
+ "count": 3,
2051
+ "currentIndex": 1
1677
2052
  },
1678
2053
  {
1679
2054
  "type": "wizard-progress",
@@ -1765,8 +2140,9 @@
1765
2140
  ]
1766
2141
  },
1767
2142
  {
1768
- "type": "badge",
1769
- "label": "Step 3 of 3"
2143
+ "type": "progress-dots",
2144
+ "count": 3,
2145
+ "currentIndex": 2
1770
2146
  },
1771
2147
  {
1772
2148
  "type": "wizard-progress",
@@ -1911,8 +2287,9 @@
1911
2287
  ]
1912
2288
  },
1913
2289
  {
1914
- "type": "badge",
1915
- "label": "Step 1 of 3"
2290
+ "type": "progress-dots",
2291
+ "count": 3,
2292
+ "currentIndex": 0
1916
2293
  },
1917
2294
  {
1918
2295
  "type": "wizard-progress",
@@ -1998,8 +2375,9 @@
1998
2375
  ]
1999
2376
  },
2000
2377
  {
2001
- "type": "badge",
2002
- "label": "Step 1 of 3"
2378
+ "type": "progress-dots",
2379
+ "count": 3,
2380
+ "currentIndex": 0
2003
2381
  },
2004
2382
  {
2005
2383
  "type": "wizard-progress",
@@ -2200,24 +2578,261 @@
2200
2578
  ]
2201
2579
  },
2202
2580
  {
2203
- "key": "CONFIRM_DELETE",
2204
- "name": "Confirm Delete"
2205
- },
2206
- {
2207
- "key": "CANCEL",
2208
- "name": "Cancel"
2209
- },
2210
- {
2211
- "key": "CLOSE",
2212
- "name": "Close"
2213
- }
2214
- ],
2215
- "transitions": [
2216
- {
2217
- "from": "browsing",
2581
+ "key": "CONFIRM_DELETE",
2582
+ "name": "Confirm Delete"
2583
+ },
2584
+ {
2585
+ "key": "CANCEL",
2586
+ "name": "Cancel"
2587
+ },
2588
+ {
2589
+ "key": "CLOSE",
2590
+ "name": "Close"
2591
+ }
2592
+ ],
2593
+ "transitions": [
2594
+ {
2595
+ "from": "browsing",
2596
+ "to": "browsing",
2597
+ "event": "INIT",
2598
+ "effects": [
2599
+ [
2600
+ "fetch",
2601
+ "TimeOff"
2602
+ ],
2603
+ [
2604
+ "render-ui",
2605
+ "main",
2606
+ {
2607
+ "type": "stack",
2608
+ "direction": "vertical",
2609
+ "gap": "lg",
2610
+ "children": [
2611
+ {
2612
+ "type": "stack",
2613
+ "direction": "horizontal",
2614
+ "gap": "md",
2615
+ "justify": "space-between",
2616
+ "children": [
2617
+ {
2618
+ "type": "stack",
2619
+ "direction": "horizontal",
2620
+ "gap": "sm",
2621
+ "align": "center",
2622
+ "children": [
2623
+ {
2624
+ "type": "icon",
2625
+ "name": "calendar",
2626
+ "size": "lg"
2627
+ },
2628
+ {
2629
+ "type": "typography",
2630
+ "content": "Time Off Requests",
2631
+ "variant": "h2"
2632
+ }
2633
+ ]
2634
+ },
2635
+ {
2636
+ "type": "stack",
2637
+ "direction": "horizontal",
2638
+ "gap": "sm",
2639
+ "children": [
2640
+ {
2641
+ "type": "button",
2642
+ "label": "Request Time Off",
2643
+ "event": "CREATE",
2644
+ "variant": "primary",
2645
+ "icon": "plus"
2646
+ }
2647
+ ]
2648
+ }
2649
+ ]
2650
+ },
2651
+ {
2652
+ "type": "divider"
2653
+ },
2654
+ {
2655
+ "type": "data-grid",
2656
+ "entity": "TimeOff",
2657
+ "emptyIcon": "inbox",
2658
+ "emptyTitle": "No timeoffs yet",
2659
+ "emptyDescription": "Create your first timeoff to get started.",
2660
+ "itemActions": [
2661
+ {
2662
+ "label": "View",
2663
+ "event": "VIEW"
2664
+ },
2665
+ {
2666
+ "label": "Edit",
2667
+ "event": "EDIT"
2668
+ },
2669
+ {
2670
+ "label": "Delete",
2671
+ "event": "DELETE",
2672
+ "variant": "danger"
2673
+ }
2674
+ ],
2675
+ "className": "transition-shadow hover:shadow-md cursor-pointer",
2676
+ "renderItem": [
2677
+ "fn",
2678
+ "item",
2679
+ {
2680
+ "type": "stack",
2681
+ "direction": "vertical",
2682
+ "gap": "sm",
2683
+ "children": [
2684
+ {
2685
+ "type": "stack",
2686
+ "direction": "horizontal",
2687
+ "justify": "space-between",
2688
+ "align": "center",
2689
+ "children": [
2690
+ {
2691
+ "type": "stack",
2692
+ "direction": "horizontal",
2693
+ "gap": "sm",
2694
+ "align": "center",
2695
+ "children": [
2696
+ {
2697
+ "type": "icon",
2698
+ "name": "calendar",
2699
+ "size": "sm"
2700
+ },
2701
+ {
2702
+ "type": "typography",
2703
+ "variant": "h4",
2704
+ "content": "@item.employeeName"
2705
+ }
2706
+ ]
2707
+ },
2708
+ {
2709
+ "type": "badge",
2710
+ "label": "@item.leaveType"
2711
+ }
2712
+ ]
2713
+ },
2714
+ {
2715
+ "type": "typography",
2716
+ "variant": "caption",
2717
+ "color": "muted",
2718
+ "content": "@item.startDate"
2719
+ }
2720
+ ]
2721
+ }
2722
+ ]
2723
+ }
2724
+ ]
2725
+ }
2726
+ ]
2727
+ ]
2728
+ },
2729
+ {
2730
+ "from": "browsing",
2731
+ "to": "browsing",
2732
+ "event": "TIME_OFF_CREATED",
2733
+ "effects": [
2734
+ [
2735
+ "fetch",
2736
+ "TimeOff"
2737
+ ]
2738
+ ]
2739
+ },
2740
+ {
2741
+ "from": "browsing",
2742
+ "to": "browsing",
2743
+ "event": "TIME_OFF_UPDATED",
2744
+ "effects": [
2745
+ [
2746
+ "fetch",
2747
+ "TimeOff"
2748
+ ]
2749
+ ]
2750
+ },
2751
+ {
2752
+ "from": "browsing",
2753
+ "to": "deleting",
2754
+ "event": "DELETE",
2755
+ "effects": [
2756
+ [
2757
+ "fetch",
2758
+ "TimeOff",
2759
+ "@payload.id"
2760
+ ],
2761
+ [
2762
+ "render-ui",
2763
+ "modal",
2764
+ {
2765
+ "type": "stack",
2766
+ "direction": "vertical",
2767
+ "gap": "md",
2768
+ "children": [
2769
+ {
2770
+ "type": "stack",
2771
+ "direction": "horizontal",
2772
+ "gap": "sm",
2773
+ "children": [
2774
+ {
2775
+ "type": "icon",
2776
+ "name": "trash-2",
2777
+ "size": "md"
2778
+ },
2779
+ {
2780
+ "type": "typography",
2781
+ "content": "Delete TimeOff",
2782
+ "variant": "h3"
2783
+ }
2784
+ ]
2785
+ },
2786
+ {
2787
+ "type": "divider"
2788
+ },
2789
+ {
2790
+ "type": "typography",
2791
+ "content": "Are you sure you want to delete this timeoff?",
2792
+ "variant": "body"
2793
+ },
2794
+ {
2795
+ "type": "stack",
2796
+ "direction": "horizontal",
2797
+ "gap": "sm",
2798
+ "justify": "end",
2799
+ "children": [
2800
+ {
2801
+ "type": "button",
2802
+ "label": "Cancel",
2803
+ "event": "CANCEL",
2804
+ "variant": "ghost"
2805
+ },
2806
+ {
2807
+ "type": "button",
2808
+ "label": "Delete",
2809
+ "event": "CONFIRM_DELETE",
2810
+ "variant": "danger",
2811
+ "icon": "trash"
2812
+ }
2813
+ ]
2814
+ }
2815
+ ]
2816
+ }
2817
+ ]
2818
+ ]
2819
+ },
2820
+ {
2821
+ "from": "deleting",
2218
2822
  "to": "browsing",
2219
- "event": "INIT",
2823
+ "event": "CONFIRM_DELETE",
2220
2824
  "effects": [
2825
+ [
2826
+ "persist",
2827
+ "delete",
2828
+ "TimeOff",
2829
+ "@entity.id"
2830
+ ],
2831
+ [
2832
+ "render-ui",
2833
+ "modal",
2834
+ null
2835
+ ],
2221
2836
  [
2222
2837
  "fetch",
2223
2838
  "TimeOff"
@@ -2295,7 +2910,9 @@
2295
2910
  }
2296
2911
  ],
2297
2912
  "className": "transition-shadow hover:shadow-md cursor-pointer",
2298
- "children": [
2913
+ "renderItem": [
2914
+ "fn",
2915
+ "item",
2299
2916
  {
2300
2917
  "type": "stack",
2301
2918
  "direction": "vertical",
@@ -2321,13 +2938,13 @@
2321
2938
  {
2322
2939
  "type": "typography",
2323
2940
  "variant": "h4",
2324
- "content": "@entity.employeeName"
2941
+ "content": "@item.employeeName"
2325
2942
  }
2326
2943
  ]
2327
2944
  },
2328
2945
  {
2329
2946
  "type": "badge",
2330
- "label": "@entity.leaveType"
2947
+ "label": "@item.leaveType"
2331
2948
  }
2332
2949
  ]
2333
2950
  },
@@ -2335,7 +2952,7 @@
2335
2952
  "type": "typography",
2336
2953
  "variant": "caption",
2337
2954
  "color": "muted",
2338
- "content": "@entity.startDate"
2955
+ "content": "@item.startDate"
2339
2956
  }
2340
2957
  ]
2341
2958
  }
@@ -2343,63 +2960,212 @@
2343
2960
  }
2344
2961
  ]
2345
2962
  }
2963
+ ],
2964
+ [
2965
+ "notify",
2966
+ "TimeOff deleted successfully"
2346
2967
  ]
2347
2968
  ]
2348
2969
  },
2349
2970
  {
2350
- "from": "browsing",
2971
+ "from": "deleting",
2351
2972
  "to": "browsing",
2352
- "event": "TIME_OFF_CREATED",
2973
+ "event": "CANCEL",
2353
2974
  "effects": [
2975
+ [
2976
+ "render-ui",
2977
+ "modal",
2978
+ null
2979
+ ],
2354
2980
  [
2355
2981
  "fetch",
2356
2982
  "TimeOff"
2983
+ ],
2984
+ [
2985
+ "render-ui",
2986
+ "main",
2987
+ {
2988
+ "type": "stack",
2989
+ "direction": "vertical",
2990
+ "gap": "lg",
2991
+ "children": [
2992
+ {
2993
+ "type": "stack",
2994
+ "direction": "horizontal",
2995
+ "gap": "md",
2996
+ "justify": "space-between",
2997
+ "children": [
2998
+ {
2999
+ "type": "stack",
3000
+ "direction": "horizontal",
3001
+ "gap": "sm",
3002
+ "align": "center",
3003
+ "children": [
3004
+ {
3005
+ "type": "icon",
3006
+ "name": "calendar",
3007
+ "size": "lg"
3008
+ },
3009
+ {
3010
+ "type": "typography",
3011
+ "content": "Time Off Requests",
3012
+ "variant": "h2"
3013
+ }
3014
+ ]
3015
+ },
3016
+ {
3017
+ "type": "stack",
3018
+ "direction": "horizontal",
3019
+ "gap": "sm",
3020
+ "children": [
3021
+ {
3022
+ "type": "button",
3023
+ "label": "Request Time Off",
3024
+ "event": "CREATE",
3025
+ "variant": "primary",
3026
+ "icon": "plus"
3027
+ }
3028
+ ]
3029
+ }
3030
+ ]
3031
+ },
3032
+ {
3033
+ "type": "divider"
3034
+ },
3035
+ {
3036
+ "type": "data-grid",
3037
+ "entity": "TimeOff",
3038
+ "emptyIcon": "inbox",
3039
+ "emptyTitle": "No timeoffs yet",
3040
+ "emptyDescription": "Create your first timeoff to get started.",
3041
+ "itemActions": [
3042
+ {
3043
+ "label": "View",
3044
+ "event": "VIEW"
3045
+ },
3046
+ {
3047
+ "label": "Edit",
3048
+ "event": "EDIT"
3049
+ },
3050
+ {
3051
+ "label": "Delete",
3052
+ "event": "DELETE",
3053
+ "variant": "danger"
3054
+ }
3055
+ ],
3056
+ "className": "transition-shadow hover:shadow-md cursor-pointer",
3057
+ "renderItem": [
3058
+ "fn",
3059
+ "item",
3060
+ {
3061
+ "type": "stack",
3062
+ "direction": "vertical",
3063
+ "gap": "sm",
3064
+ "children": [
3065
+ {
3066
+ "type": "stack",
3067
+ "direction": "horizontal",
3068
+ "justify": "space-between",
3069
+ "align": "center",
3070
+ "children": [
3071
+ {
3072
+ "type": "stack",
3073
+ "direction": "horizontal",
3074
+ "gap": "sm",
3075
+ "align": "center",
3076
+ "children": [
3077
+ {
3078
+ "type": "icon",
3079
+ "name": "calendar",
3080
+ "size": "sm"
3081
+ },
3082
+ {
3083
+ "type": "typography",
3084
+ "variant": "h4",
3085
+ "content": "@item.employeeName"
3086
+ }
3087
+ ]
3088
+ },
3089
+ {
3090
+ "type": "badge",
3091
+ "label": "@item.leaveType"
3092
+ }
3093
+ ]
3094
+ },
3095
+ {
3096
+ "type": "typography",
3097
+ "variant": "caption",
3098
+ "color": "muted",
3099
+ "content": "@item.startDate"
3100
+ }
3101
+ ]
3102
+ }
3103
+ ]
3104
+ }
3105
+ ]
3106
+ }
2357
3107
  ]
2358
3108
  ]
2359
3109
  },
2360
3110
  {
2361
- "from": "browsing",
3111
+ "from": "deleting",
2362
3112
  "to": "browsing",
2363
- "event": "TIME_OFF_UPDATED",
3113
+ "event": "CLOSE",
2364
3114
  "effects": [
2365
3115
  [
2366
- "fetch",
2367
- "TimeOff"
2368
- ]
2369
- ]
2370
- },
2371
- {
2372
- "from": "browsing",
2373
- "to": "deleting",
2374
- "event": "DELETE",
2375
- "effects": [
3116
+ "render-ui",
3117
+ "modal",
3118
+ null
3119
+ ],
2376
3120
  [
2377
3121
  "fetch",
2378
- "TimeOff",
2379
- "@payload.id"
3122
+ "TimeOff"
2380
3123
  ],
2381
3124
  [
2382
3125
  "render-ui",
2383
- "modal",
3126
+ "main",
2384
3127
  {
2385
3128
  "type": "stack",
2386
3129
  "direction": "vertical",
2387
- "gap": "md",
3130
+ "gap": "lg",
2388
3131
  "children": [
2389
3132
  {
2390
3133
  "type": "stack",
2391
3134
  "direction": "horizontal",
2392
- "gap": "sm",
3135
+ "gap": "md",
3136
+ "justify": "space-between",
2393
3137
  "children": [
2394
3138
  {
2395
- "type": "icon",
2396
- "name": "trash-2",
2397
- "size": "md"
3139
+ "type": "stack",
3140
+ "direction": "horizontal",
3141
+ "gap": "sm",
3142
+ "align": "center",
3143
+ "children": [
3144
+ {
3145
+ "type": "icon",
3146
+ "name": "calendar",
3147
+ "size": "lg"
3148
+ },
3149
+ {
3150
+ "type": "typography",
3151
+ "content": "Time Off Requests",
3152
+ "variant": "h2"
3153
+ }
3154
+ ]
2398
3155
  },
2399
3156
  {
2400
- "type": "typography",
2401
- "content": "Delete TimeOff",
2402
- "variant": "h3"
3157
+ "type": "stack",
3158
+ "direction": "horizontal",
3159
+ "gap": "sm",
3160
+ "children": [
3161
+ {
3162
+ "type": "button",
3163
+ "label": "Request Time Off",
3164
+ "event": "CREATE",
3165
+ "variant": "primary",
3166
+ "icon": "plus"
3167
+ }
3168
+ ]
2403
3169
  }
2404
3170
  ]
2405
3171
  },
@@ -2407,28 +3173,72 @@
2407
3173
  "type": "divider"
2408
3174
  },
2409
3175
  {
2410
- "type": "typography",
2411
- "content": "Are you sure you want to delete this timeoff?",
2412
- "variant": "body"
2413
- },
2414
- {
2415
- "type": "stack",
2416
- "direction": "horizontal",
2417
- "gap": "sm",
2418
- "justify": "end",
2419
- "children": [
3176
+ "type": "data-grid",
3177
+ "entity": "TimeOff",
3178
+ "emptyIcon": "inbox",
3179
+ "emptyTitle": "No timeoffs yet",
3180
+ "emptyDescription": "Create your first timeoff to get started.",
3181
+ "itemActions": [
2420
3182
  {
2421
- "type": "button",
2422
- "label": "Cancel",
2423
- "event": "CANCEL",
2424
- "variant": "ghost"
3183
+ "label": "View",
3184
+ "event": "VIEW"
3185
+ },
3186
+ {
3187
+ "label": "Edit",
3188
+ "event": "EDIT"
2425
3189
  },
2426
3190
  {
2427
- "type": "button",
2428
3191
  "label": "Delete",
2429
- "event": "CONFIRM_DELETE",
2430
- "variant": "danger",
2431
- "icon": "trash"
3192
+ "event": "DELETE",
3193
+ "variant": "danger"
3194
+ }
3195
+ ],
3196
+ "className": "transition-shadow hover:shadow-md cursor-pointer",
3197
+ "renderItem": [
3198
+ "fn",
3199
+ "item",
3200
+ {
3201
+ "type": "stack",
3202
+ "direction": "vertical",
3203
+ "gap": "sm",
3204
+ "children": [
3205
+ {
3206
+ "type": "stack",
3207
+ "direction": "horizontal",
3208
+ "justify": "space-between",
3209
+ "align": "center",
3210
+ "children": [
3211
+ {
3212
+ "type": "stack",
3213
+ "direction": "horizontal",
3214
+ "gap": "sm",
3215
+ "align": "center",
3216
+ "children": [
3217
+ {
3218
+ "type": "icon",
3219
+ "name": "calendar",
3220
+ "size": "sm"
3221
+ },
3222
+ {
3223
+ "type": "typography",
3224
+ "variant": "h4",
3225
+ "content": "@item.employeeName"
3226
+ }
3227
+ ]
3228
+ },
3229
+ {
3230
+ "type": "badge",
3231
+ "label": "@item.leaveType"
3232
+ }
3233
+ ]
3234
+ },
3235
+ {
3236
+ "type": "typography",
3237
+ "variant": "caption",
3238
+ "color": "muted",
3239
+ "content": "@item.startDate"
3240
+ }
3241
+ ]
2432
3242
  }
2433
3243
  ]
2434
3244
  }
@@ -2436,56 +3246,6 @@
2436
3246
  }
2437
3247
  ]
2438
3248
  ]
2439
- },
2440
- {
2441
- "from": "deleting",
2442
- "to": "browsing",
2443
- "event": "CONFIRM_DELETE",
2444
- "effects": [
2445
- [
2446
- "persist",
2447
- "delete",
2448
- "TimeOff",
2449
- "@entity.id"
2450
- ],
2451
- [
2452
- "render-ui",
2453
- "modal",
2454
- null
2455
- ],
2456
- [
2457
- "fetch",
2458
- "TimeOff"
2459
- ],
2460
- [
2461
- "notify",
2462
- "TimeOff deleted successfully"
2463
- ]
2464
- ]
2465
- },
2466
- {
2467
- "from": "deleting",
2468
- "to": "browsing",
2469
- "event": "CANCEL",
2470
- "effects": [
2471
- [
2472
- "render-ui",
2473
- "modal",
2474
- null
2475
- ]
2476
- ]
2477
- },
2478
- {
2479
- "from": "deleting",
2480
- "to": "browsing",
2481
- "event": "CLOSE",
2482
- "effects": [
2483
- [
2484
- "render-ui",
2485
- "modal",
2486
- null
2487
- ]
2488
- ]
2489
3249
  }
2490
3250
  ]
2491
3251
  },
@@ -3196,69 +3956,39 @@
3196
3956
  "columns": 3,
3197
3957
  "children": [
3198
3958
  {
3199
- "type": "card",
3200
- "children": [
3201
- {
3202
- "type": "stack",
3203
- "direction": "vertical",
3204
- "gap": "sm",
3205
- "children": [
3206
- {
3207
- "type": "typography",
3208
- "variant": "caption",
3209
- "content": "TotalEmployees"
3210
- },
3211
- {
3212
- "type": "typography",
3213
- "variant": "h3",
3214
- "content": "@entity.totalEmployees"
3215
- }
3216
- ]
3217
- }
3959
+ "type": "stat-display",
3960
+ "label": "TotalEmployees",
3961
+ "value": [
3962
+ "object/get",
3963
+ [
3964
+ "array/first",
3965
+ "@entity"
3966
+ ],
3967
+ "totalEmployees"
3218
3968
  ]
3219
3969
  },
3220
3970
  {
3221
- "type": "card",
3222
- "children": [
3223
- {
3224
- "type": "stack",
3225
- "direction": "vertical",
3226
- "gap": "sm",
3227
- "children": [
3228
- {
3229
- "type": "typography",
3230
- "variant": "caption",
3231
- "content": "Departments"
3232
- },
3233
- {
3234
- "type": "typography",
3235
- "variant": "h3",
3236
- "content": "@entity.departments"
3237
- }
3238
- ]
3239
- }
3971
+ "type": "stat-display",
3972
+ "label": "Departments",
3973
+ "value": [
3974
+ "object/get",
3975
+ [
3976
+ "array/first",
3977
+ "@entity"
3978
+ ],
3979
+ "departments"
3240
3980
  ]
3241
3981
  },
3242
3982
  {
3243
- "type": "card",
3244
- "children": [
3245
- {
3246
- "type": "stack",
3247
- "direction": "vertical",
3248
- "gap": "sm",
3249
- "children": [
3250
- {
3251
- "type": "typography",
3252
- "variant": "caption",
3253
- "content": "OpenPositions"
3254
- },
3255
- {
3256
- "type": "typography",
3257
- "variant": "h3",
3258
- "content": "@entity.openPositions"
3259
- }
3260
- ]
3261
- }
3983
+ "type": "stat-display",
3984
+ "label": "OpenPositions",
3985
+ "value": [
3986
+ "object/get",
3987
+ [
3988
+ "array/first",
3989
+ "@entity"
3990
+ ],
3991
+ "openPositions"
3262
3992
  ]
3263
3993
  },
3264
3994
  {
@@ -3277,32 +4007,29 @@
3277
4007
  {
3278
4008
  "type": "typography",
3279
4009
  "variant": "h3",
3280
- "content": "@entity.avgTenure"
4010
+ "content": [
4011
+ "object/get",
4012
+ [
4013
+ "array/first",
4014
+ "@entity"
4015
+ ],
4016
+ "avgTenure"
4017
+ ]
3281
4018
  }
3282
4019
  ]
3283
4020
  }
3284
4021
  ]
3285
4022
  },
3286
4023
  {
3287
- "type": "card",
3288
- "children": [
3289
- {
3290
- "type": "stack",
3291
- "direction": "vertical",
3292
- "gap": "sm",
3293
- "children": [
3294
- {
3295
- "type": "typography",
3296
- "variant": "caption",
3297
- "content": "Headcount"
3298
- },
3299
- {
3300
- "type": "typography",
3301
- "variant": "h3",
3302
- "content": "@entity.headcount"
3303
- }
3304
- ]
3305
- }
4024
+ "type": "stat-display",
4025
+ "label": "Headcount",
4026
+ "value": [
4027
+ "object/get",
4028
+ [
4029
+ "array/first",
4030
+ "@entity"
4031
+ ],
4032
+ "headcount"
3306
4033
  ]
3307
4034
  }
3308
4035
  ]
@@ -3358,80 +4085,50 @@
3358
4085
  "event": "REFRESH",
3359
4086
  "variant": "secondary",
3360
4087
  "icon": "refresh-cw"
3361
- }
3362
- ]
3363
- },
3364
- {
3365
- "type": "divider"
3366
- },
3367
- {
3368
- "type": "simple-grid",
3369
- "columns": 3,
3370
- "children": [
3371
- {
3372
- "type": "card",
3373
- "children": [
3374
- {
3375
- "type": "stack",
3376
- "direction": "vertical",
3377
- "gap": "sm",
3378
- "children": [
3379
- {
3380
- "type": "typography",
3381
- "variant": "caption",
3382
- "content": "TotalEmployees"
3383
- },
3384
- {
3385
- "type": "typography",
3386
- "variant": "h3",
3387
- "content": "@entity.totalEmployees"
3388
- }
3389
- ]
3390
- }
3391
- ]
3392
- },
3393
- {
3394
- "type": "card",
3395
- "children": [
3396
- {
3397
- "type": "stack",
3398
- "direction": "vertical",
3399
- "gap": "sm",
3400
- "children": [
3401
- {
3402
- "type": "typography",
3403
- "variant": "caption",
3404
- "content": "Departments"
3405
- },
3406
- {
3407
- "type": "typography",
3408
- "variant": "h3",
3409
- "content": "@entity.departments"
3410
- }
3411
- ]
3412
- }
4088
+ }
4089
+ ]
4090
+ },
4091
+ {
4092
+ "type": "divider"
4093
+ },
4094
+ {
4095
+ "type": "simple-grid",
4096
+ "columns": 3,
4097
+ "children": [
4098
+ {
4099
+ "type": "stat-display",
4100
+ "label": "TotalEmployees",
4101
+ "value": [
4102
+ "object/get",
4103
+ [
4104
+ "array/first",
4105
+ "@entity"
4106
+ ],
4107
+ "totalEmployees"
3413
4108
  ]
3414
4109
  },
3415
4110
  {
3416
- "type": "card",
3417
- "children": [
3418
- {
3419
- "type": "stack",
3420
- "direction": "vertical",
3421
- "gap": "sm",
3422
- "children": [
3423
- {
3424
- "type": "typography",
3425
- "variant": "caption",
3426
- "content": "OpenPositions"
3427
- },
3428
- {
3429
- "type": "typography",
3430
- "variant": "h3",
3431
- "content": "@entity.openPositions"
3432
- }
3433
- ]
3434
- }
4111
+ "type": "stat-display",
4112
+ "label": "Departments",
4113
+ "value": [
4114
+ "object/get",
4115
+ [
4116
+ "array/first",
4117
+ "@entity"
4118
+ ],
4119
+ "departments"
4120
+ ]
4121
+ },
4122
+ {
4123
+ "type": "stat-display",
4124
+ "label": "OpenPositions",
4125
+ "value": [
4126
+ "object/get",
4127
+ [
4128
+ "array/first",
4129
+ "@entity"
4130
+ ],
4131
+ "openPositions"
3435
4132
  ]
3436
4133
  },
3437
4134
  {
@@ -3450,32 +4147,29 @@
3450
4147
  {
3451
4148
  "type": "typography",
3452
4149
  "variant": "h3",
3453
- "content": "@entity.avgTenure"
4150
+ "content": [
4151
+ "object/get",
4152
+ [
4153
+ "array/first",
4154
+ "@entity"
4155
+ ],
4156
+ "avgTenure"
4157
+ ]
3454
4158
  }
3455
4159
  ]
3456
4160
  }
3457
4161
  ]
3458
4162
  },
3459
4163
  {
3460
- "type": "card",
3461
- "children": [
3462
- {
3463
- "type": "stack",
3464
- "direction": "vertical",
3465
- "gap": "sm",
3466
- "children": [
3467
- {
3468
- "type": "typography",
3469
- "variant": "caption",
3470
- "content": "Headcount"
3471
- },
3472
- {
3473
- "type": "typography",
3474
- "variant": "h3",
3475
- "content": "@entity.headcount"
3476
- }
3477
- ]
3478
- }
4164
+ "type": "stat-display",
4165
+ "label": "Headcount",
4166
+ "value": [
4167
+ "object/get",
4168
+ [
4169
+ "array/first",
4170
+ "@entity"
4171
+ ],
4172
+ "headcount"
3479
4173
  ]
3480
4174
  }
3481
4175
  ]
@@ -3542,69 +4236,39 @@
3542
4236
  "columns": 3,
3543
4237
  "children": [
3544
4238
  {
3545
- "type": "card",
3546
- "children": [
3547
- {
3548
- "type": "stack",
3549
- "direction": "vertical",
3550
- "gap": "sm",
3551
- "children": [
3552
- {
3553
- "type": "typography",
3554
- "variant": "caption",
3555
- "content": "TotalEmployees"
3556
- },
3557
- {
3558
- "type": "typography",
3559
- "variant": "h3",
3560
- "content": "@entity.totalEmployees"
3561
- }
3562
- ]
3563
- }
4239
+ "type": "stat-display",
4240
+ "label": "TotalEmployees",
4241
+ "value": [
4242
+ "object/get",
4243
+ [
4244
+ "array/first",
4245
+ "@entity"
4246
+ ],
4247
+ "totalEmployees"
3564
4248
  ]
3565
4249
  },
3566
4250
  {
3567
- "type": "card",
3568
- "children": [
3569
- {
3570
- "type": "stack",
3571
- "direction": "vertical",
3572
- "gap": "sm",
3573
- "children": [
3574
- {
3575
- "type": "typography",
3576
- "variant": "caption",
3577
- "content": "Departments"
3578
- },
3579
- {
3580
- "type": "typography",
3581
- "variant": "h3",
3582
- "content": "@entity.departments"
3583
- }
3584
- ]
3585
- }
4251
+ "type": "stat-display",
4252
+ "label": "Departments",
4253
+ "value": [
4254
+ "object/get",
4255
+ [
4256
+ "array/first",
4257
+ "@entity"
4258
+ ],
4259
+ "departments"
3586
4260
  ]
3587
4261
  },
3588
4262
  {
3589
- "type": "card",
3590
- "children": [
3591
- {
3592
- "type": "stack",
3593
- "direction": "vertical",
3594
- "gap": "sm",
3595
- "children": [
3596
- {
3597
- "type": "typography",
3598
- "variant": "caption",
3599
- "content": "OpenPositions"
3600
- },
3601
- {
3602
- "type": "typography",
3603
- "variant": "h3",
3604
- "content": "@entity.openPositions"
3605
- }
3606
- ]
3607
- }
4263
+ "type": "stat-display",
4264
+ "label": "OpenPositions",
4265
+ "value": [
4266
+ "object/get",
4267
+ [
4268
+ "array/first",
4269
+ "@entity"
4270
+ ],
4271
+ "openPositions"
3608
4272
  ]
3609
4273
  },
3610
4274
  {
@@ -3623,32 +4287,29 @@
3623
4287
  {
3624
4288
  "type": "typography",
3625
4289
  "variant": "h3",
3626
- "content": "@entity.avgTenure"
4290
+ "content": [
4291
+ "object/get",
4292
+ [
4293
+ "array/first",
4294
+ "@entity"
4295
+ ],
4296
+ "avgTenure"
4297
+ ]
3627
4298
  }
3628
4299
  ]
3629
4300
  }
3630
4301
  ]
3631
4302
  },
3632
4303
  {
3633
- "type": "card",
3634
- "children": [
3635
- {
3636
- "type": "stack",
3637
- "direction": "vertical",
3638
- "gap": "sm",
3639
- "children": [
3640
- {
3641
- "type": "typography",
3642
- "variant": "caption",
3643
- "content": "Headcount"
3644
- },
3645
- {
3646
- "type": "typography",
3647
- "variant": "h3",
3648
- "content": "@entity.headcount"
3649
- }
3650
- ]
3651
- }
4304
+ "type": "stat-display",
4305
+ "label": "Headcount",
4306
+ "value": [
4307
+ "object/get",
4308
+ [
4309
+ "array/first",
4310
+ "@entity"
4311
+ ],
4312
+ "headcount"
3652
4313
  ]
3653
4314
  }
3654
4315
  ]
@@ -3715,69 +4376,39 @@
3715
4376
  "columns": 3,
3716
4377
  "children": [
3717
4378
  {
3718
- "type": "card",
3719
- "children": [
3720
- {
3721
- "type": "stack",
3722
- "direction": "vertical",
3723
- "gap": "sm",
3724
- "children": [
3725
- {
3726
- "type": "typography",
3727
- "variant": "caption",
3728
- "content": "TotalEmployees"
3729
- },
3730
- {
3731
- "type": "typography",
3732
- "variant": "h3",
3733
- "content": "@entity.totalEmployees"
3734
- }
3735
- ]
3736
- }
4379
+ "type": "stat-display",
4380
+ "label": "TotalEmployees",
4381
+ "value": [
4382
+ "object/get",
4383
+ [
4384
+ "array/first",
4385
+ "@entity"
4386
+ ],
4387
+ "totalEmployees"
3737
4388
  ]
3738
4389
  },
3739
4390
  {
3740
- "type": "card",
3741
- "children": [
3742
- {
3743
- "type": "stack",
3744
- "direction": "vertical",
3745
- "gap": "sm",
3746
- "children": [
3747
- {
3748
- "type": "typography",
3749
- "variant": "caption",
3750
- "content": "Departments"
3751
- },
3752
- {
3753
- "type": "typography",
3754
- "variant": "h3",
3755
- "content": "@entity.departments"
3756
- }
3757
- ]
3758
- }
4391
+ "type": "stat-display",
4392
+ "label": "Departments",
4393
+ "value": [
4394
+ "object/get",
4395
+ [
4396
+ "array/first",
4397
+ "@entity"
4398
+ ],
4399
+ "departments"
3759
4400
  ]
3760
4401
  },
3761
4402
  {
3762
- "type": "card",
3763
- "children": [
3764
- {
3765
- "type": "stack",
3766
- "direction": "vertical",
3767
- "gap": "sm",
3768
- "children": [
3769
- {
3770
- "type": "typography",
3771
- "variant": "caption",
3772
- "content": "OpenPositions"
3773
- },
3774
- {
3775
- "type": "typography",
3776
- "variant": "h3",
3777
- "content": "@entity.openPositions"
3778
- }
3779
- ]
3780
- }
4403
+ "type": "stat-display",
4404
+ "label": "OpenPositions",
4405
+ "value": [
4406
+ "object/get",
4407
+ [
4408
+ "array/first",
4409
+ "@entity"
4410
+ ],
4411
+ "openPositions"
3781
4412
  ]
3782
4413
  },
3783
4414
  {
@@ -3796,32 +4427,29 @@
3796
4427
  {
3797
4428
  "type": "typography",
3798
4429
  "variant": "h3",
3799
- "content": "@entity.avgTenure"
4430
+ "content": [
4431
+ "object/get",
4432
+ [
4433
+ "array/first",
4434
+ "@entity"
4435
+ ],
4436
+ "avgTenure"
4437
+ ]
3800
4438
  }
3801
4439
  ]
3802
4440
  }
3803
4441
  ]
3804
4442
  },
3805
4443
  {
3806
- "type": "card",
3807
- "children": [
3808
- {
3809
- "type": "stack",
3810
- "direction": "vertical",
3811
- "gap": "sm",
3812
- "children": [
3813
- {
3814
- "type": "typography",
3815
- "variant": "caption",
3816
- "content": "Headcount"
3817
- },
3818
- {
3819
- "type": "typography",
3820
- "variant": "h3",
3821
- "content": "@entity.headcount"
3822
- }
3823
- ]
3824
- }
4444
+ "type": "stat-display",
4445
+ "label": "Headcount",
4446
+ "value": [
4447
+ "object/get",
4448
+ [
4449
+ "array/first",
4450
+ "@entity"
4451
+ ],
4452
+ "headcount"
3825
4453
  ]
3826
4454
  }
3827
4455
  ]
@@ -3888,69 +4516,39 @@
3888
4516
  "columns": 3,
3889
4517
  "children": [
3890
4518
  {
3891
- "type": "card",
3892
- "children": [
3893
- {
3894
- "type": "stack",
3895
- "direction": "vertical",
3896
- "gap": "sm",
3897
- "children": [
3898
- {
3899
- "type": "typography",
3900
- "variant": "caption",
3901
- "content": "TotalEmployees"
3902
- },
3903
- {
3904
- "type": "typography",
3905
- "variant": "h3",
3906
- "content": "@entity.totalEmployees"
3907
- }
3908
- ]
3909
- }
4519
+ "type": "stat-display",
4520
+ "label": "TotalEmployees",
4521
+ "value": [
4522
+ "object/get",
4523
+ [
4524
+ "array/first",
4525
+ "@entity"
4526
+ ],
4527
+ "totalEmployees"
3910
4528
  ]
3911
4529
  },
3912
4530
  {
3913
- "type": "card",
3914
- "children": [
3915
- {
3916
- "type": "stack",
3917
- "direction": "vertical",
3918
- "gap": "sm",
3919
- "children": [
3920
- {
3921
- "type": "typography",
3922
- "variant": "caption",
3923
- "content": "Departments"
3924
- },
3925
- {
3926
- "type": "typography",
3927
- "variant": "h3",
3928
- "content": "@entity.departments"
3929
- }
3930
- ]
3931
- }
4531
+ "type": "stat-display",
4532
+ "label": "Departments",
4533
+ "value": [
4534
+ "object/get",
4535
+ [
4536
+ "array/first",
4537
+ "@entity"
4538
+ ],
4539
+ "departments"
3932
4540
  ]
3933
4541
  },
3934
4542
  {
3935
- "type": "card",
3936
- "children": [
3937
- {
3938
- "type": "stack",
3939
- "direction": "vertical",
3940
- "gap": "sm",
3941
- "children": [
3942
- {
3943
- "type": "typography",
3944
- "variant": "caption",
3945
- "content": "OpenPositions"
3946
- },
3947
- {
3948
- "type": "typography",
3949
- "variant": "h3",
3950
- "content": "@entity.openPositions"
3951
- }
3952
- ]
3953
- }
4543
+ "type": "stat-display",
4544
+ "label": "OpenPositions",
4545
+ "value": [
4546
+ "object/get",
4547
+ [
4548
+ "array/first",
4549
+ "@entity"
4550
+ ],
4551
+ "openPositions"
3954
4552
  ]
3955
4553
  },
3956
4554
  {
@@ -3969,32 +4567,29 @@
3969
4567
  {
3970
4568
  "type": "typography",
3971
4569
  "variant": "h3",
3972
- "content": "@entity.avgTenure"
4570
+ "content": [
4571
+ "object/get",
4572
+ [
4573
+ "array/first",
4574
+ "@entity"
4575
+ ],
4576
+ "avgTenure"
4577
+ ]
3973
4578
  }
3974
4579
  ]
3975
4580
  }
3976
4581
  ]
3977
4582
  },
3978
4583
  {
3979
- "type": "card",
3980
- "children": [
3981
- {
3982
- "type": "stack",
3983
- "direction": "vertical",
3984
- "gap": "sm",
3985
- "children": [
3986
- {
3987
- "type": "typography",
3988
- "variant": "caption",
3989
- "content": "Headcount"
3990
- },
3991
- {
3992
- "type": "typography",
3993
- "variant": "h3",
3994
- "content": "@entity.headcount"
3995
- }
3996
- ]
3997
- }
4584
+ "type": "stat-display",
4585
+ "label": "Headcount",
4586
+ "value": [
4587
+ "object/get",
4588
+ [
4589
+ "array/first",
4590
+ "@entity"
4591
+ ],
4592
+ "headcount"
3998
4593
  ]
3999
4594
  }
4000
4595
  ]