@almadar/std 14.26.0 → 14.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/behaviors/registry/app/atoms/std-applicant.orb +496 -42
  2. package/behaviors/registry/app/atoms/std-approval-chain.orb +106 -0
  3. package/behaviors/registry/app/atoms/std-approval-request.orb +433 -593
  4. package/behaviors/registry/app/atoms/std-campaign-goal.orb +438 -228
  5. package/behaviors/registry/app/atoms/std-change-order.orb +565 -307
  6. package/behaviors/registry/app/atoms/std-chart-of-accounts.orb +434 -97
  7. package/behaviors/registry/app/atoms/std-checkin.orb +434 -270
  8. package/behaviors/registry/app/atoms/std-class-roster.orb +495 -61
  9. package/behaviors/registry/app/atoms/std-class-session.orb +485 -104
  10. package/behaviors/registry/app/atoms/std-court-deadline.orb +519 -88
  11. package/behaviors/registry/app/atoms/std-customer-account.orb +577 -97
  12. package/behaviors/registry/app/atoms/std-donation-receipt.orb +498 -55
  13. package/behaviors/registry/app/atoms/std-donor.orb +445 -135
  14. package/behaviors/registry/app/atoms/std-drip-sequence.orb +445 -62
  15. package/behaviors/registry/app/atoms/std-driver.orb +465 -480
  16. package/behaviors/registry/app/atoms/std-dunning.orb +450 -512
  17. package/behaviors/registry/app/atoms/std-email-broadcast.orb +517 -64
  18. package/behaviors/registry/app/atoms/std-event.orb +465 -667
  19. package/behaviors/registry/app/atoms/std-health-score.orb +368 -371
  20. package/behaviors/registry/app/atoms/std-help-article.orb +373 -506
  21. package/behaviors/registry/app/atoms/std-help-category.orb +344 -359
  22. package/behaviors/registry/app/atoms/std-interview-slot.orb +490 -48
  23. package/behaviors/registry/app/atoms/std-invoice.orb +494 -291
  24. package/behaviors/registry/app/atoms/std-kitchen-display.orb +588 -96
  25. package/behaviors/registry/app/atoms/std-lease.orb +506 -190
  26. package/behaviors/registry/app/atoms/std-ledger-entry.orb +483 -154
  27. package/behaviors/registry/app/atoms/std-maintenance-request.orb +642 -192
  28. package/behaviors/registry/app/atoms/std-matter.orb +486 -318
  29. package/behaviors/registry/app/atoms/std-membership.orb +512 -102
  30. package/behaviors/registry/app/atoms/std-menu.orb +775 -183
  31. package/behaviors/registry/app/atoms/std-modifier-group.orb +522 -104
  32. package/behaviors/registry/app/atoms/std-multi-party-transaction.orb +130 -0
  33. package/behaviors/registry/app/atoms/std-nps-survey.orb +319 -327
  34. package/behaviors/registry/app/atoms/std-offer-letter.orb +497 -47
  35. package/behaviors/registry/app/atoms/std-payout-ledger.orb +378 -362
  36. package/behaviors/registry/app/atoms/std-pipeline.orb +139 -0
  37. package/behaviors/registry/app/atoms/std-question-bank.orb +379 -346
  38. package/behaviors/registry/app/atoms/std-receipt.orb +553 -44
  39. package/behaviors/registry/app/atoms/std-recurring-charge.orb +419 -832
  40. package/behaviors/registry/app/atoms/std-recurring-schedule.orb +94 -0
  41. package/behaviors/registry/app/atoms/std-renewal-risk.orb +370 -421
  42. package/behaviors/registry/app/atoms/std-rent-charge.orb +657 -55
  43. package/behaviors/registry/app/atoms/std-reorder-rule.orb +510 -59
  44. package/behaviors/registry/app/atoms/std-response-collector.orb +451 -144
  45. package/behaviors/registry/app/atoms/std-rfi.orb +502 -461
  46. package/behaviors/registry/app/atoms/std-route-optimize.orb +448 -158
  47. package/behaviors/registry/app/atoms/std-segment.orb +360 -98
  48. package/behaviors/registry/app/atoms/std-stock-level.orb +486 -103
  49. package/behaviors/registry/app/atoms/std-submittal.orb +538 -526
  50. package/behaviors/registry/app/atoms/std-table-map.orb +88 -51
  51. package/behaviors/registry/app/atoms/std-technician-dispatch.orb +653 -71
  52. package/behaviors/registry/app/atoms/std-telematics-event.orb +310 -215
  53. package/behaviors/registry/app/atoms/std-template-editor.orb +513 -90
  54. package/behaviors/registry/app/atoms/std-tenant.orb +525 -66
  55. package/behaviors/registry/app/atoms/std-ticket-tier.orb +472 -460
  56. package/behaviors/registry/app/atoms/std-time-entry.orb +354 -317
  57. package/behaviors/registry/app/atoms/std-timeline.orb +108 -0
  58. package/behaviors/registry/app/atoms/std-timesheet.orb +551 -284
  59. package/behaviors/registry/app/atoms/std-trial.orb +410 -317
  60. package/behaviors/registry/app/atoms/std-vehicle.orb +398 -563
  61. package/behaviors/registry/app/atoms/std-waitlist.orb +372 -283
  62. package/behaviors/registry/app/atoms/std-warehouse.orb +273 -214
  63. package/behaviors/registry/app/atoms/std-wizard-branching.orb +129 -0
  64. package/behaviors/registry/app/atoms/std-work-order.orb +628 -240
  65. package/behaviors/registry/app/molecules/std-applicant-form.orb +89 -83
  66. package/behaviors/registry/app/molecules/std-application.orb +178 -263
  67. package/behaviors/registry/app/molecules/std-broadcast-builder.orb +67 -176
  68. package/behaviors/registry/app/molecules/std-cart.orb +78 -72
  69. package/behaviors/registry/app/molecules/std-form-builder.orb +437 -176
  70. package/behaviors/registry/app/molecules/std-ledger-entry-form.orb +608 -89
  71. package/behaviors/registry/app/molecules/std-stock-adjustment.orb +501 -102
  72. package/behaviors/registry/app/molecules/std-vendor-onboarding.orb +383 -469
  73. package/behaviors/registry/core/atoms/std-billable-hour.orb +495 -91
  74. package/behaviors/registry/core/atoms/std-board.orb +1367 -0
  75. package/behaviors/registry/core/atoms/std-branching-logic.orb +271 -600
  76. package/behaviors/registry/core/atoms/std-event-log.orb +777 -0
  77. package/behaviors/registry/core/atoms/std-file-store.orb +534 -164
  78. package/behaviors/registry/core/atoms/std-gallery.orb +118 -101
  79. package/behaviors/registry/core/atoms/std-image-upload-multi.orb +87 -57
  80. package/behaviors/registry/core/atoms/std-multi-party-flow.orb +1313 -0
  81. package/behaviors/registry/core/atoms/std-page-tree.orb +342 -484
  82. package/behaviors/registry/core/atoms/std-recurrence.orb +937 -0
  83. package/behaviors/registry/core/atoms/std-rich-editor.orb +288 -416
  84. package/behaviors/registry/core/atoms/std-step-flow.orb +1155 -0
  85. package/behaviors/registry/core/atoms/std-version-history.orb +454 -430
  86. package/behaviors/registry/core/atoms/std-wizard.orb +1085 -0
  87. package/behaviors/registry/core/molecules/std-wizard-form.orb +222 -147
  88. package/dist/behaviors/registry/app/atoms/std-applicant.orb +496 -42
  89. package/dist/behaviors/registry/app/atoms/std-approval-chain.orb +106 -0
  90. package/dist/behaviors/registry/app/atoms/std-approval-request.orb +433 -593
  91. package/dist/behaviors/registry/app/atoms/std-campaign-goal.orb +438 -228
  92. package/dist/behaviors/registry/app/atoms/std-change-order.orb +565 -307
  93. package/dist/behaviors/registry/app/atoms/std-chart-of-accounts.orb +434 -97
  94. package/dist/behaviors/registry/app/atoms/std-checkin.orb +434 -270
  95. package/dist/behaviors/registry/app/atoms/std-class-roster.orb +495 -61
  96. package/dist/behaviors/registry/app/atoms/std-class-session.orb +485 -104
  97. package/dist/behaviors/registry/app/atoms/std-court-deadline.orb +519 -88
  98. package/dist/behaviors/registry/app/atoms/std-customer-account.orb +577 -97
  99. package/dist/behaviors/registry/app/atoms/std-donation-receipt.orb +498 -55
  100. package/dist/behaviors/registry/app/atoms/std-donor.orb +445 -135
  101. package/dist/behaviors/registry/app/atoms/std-drip-sequence.orb +445 -62
  102. package/dist/behaviors/registry/app/atoms/std-driver.orb +465 -480
  103. package/dist/behaviors/registry/app/atoms/std-dunning.orb +450 -512
  104. package/dist/behaviors/registry/app/atoms/std-email-broadcast.orb +517 -64
  105. package/dist/behaviors/registry/app/atoms/std-event.orb +465 -667
  106. package/dist/behaviors/registry/app/atoms/std-health-score.orb +368 -371
  107. package/dist/behaviors/registry/app/atoms/std-help-article.orb +373 -506
  108. package/dist/behaviors/registry/app/atoms/std-help-category.orb +344 -359
  109. package/dist/behaviors/registry/app/atoms/std-interview-slot.orb +490 -48
  110. package/dist/behaviors/registry/app/atoms/std-invoice.orb +494 -291
  111. package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +588 -96
  112. package/dist/behaviors/registry/app/atoms/std-lease.orb +506 -190
  113. package/dist/behaviors/registry/app/atoms/std-ledger-entry.orb +483 -154
  114. package/dist/behaviors/registry/app/atoms/std-maintenance-request.orb +642 -192
  115. package/dist/behaviors/registry/app/atoms/std-matter.orb +486 -318
  116. package/dist/behaviors/registry/app/atoms/std-membership.orb +512 -102
  117. package/dist/behaviors/registry/app/atoms/std-menu.orb +775 -183
  118. package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +522 -104
  119. package/dist/behaviors/registry/app/atoms/std-multi-party-transaction.orb +130 -0
  120. package/dist/behaviors/registry/app/atoms/std-nps-survey.orb +319 -327
  121. package/dist/behaviors/registry/app/atoms/std-offer-letter.orb +497 -47
  122. package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +378 -362
  123. package/dist/behaviors/registry/app/atoms/std-pipeline.orb +139 -0
  124. package/dist/behaviors/registry/app/atoms/std-question-bank.orb +379 -346
  125. package/dist/behaviors/registry/app/atoms/std-receipt.orb +553 -44
  126. package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +419 -832
  127. package/dist/behaviors/registry/app/atoms/std-recurring-schedule.orb +94 -0
  128. package/dist/behaviors/registry/app/atoms/std-renewal-risk.orb +370 -421
  129. package/dist/behaviors/registry/app/atoms/std-rent-charge.orb +657 -55
  130. package/dist/behaviors/registry/app/atoms/std-reorder-rule.orb +510 -59
  131. package/dist/behaviors/registry/app/atoms/std-response-collector.orb +451 -144
  132. package/dist/behaviors/registry/app/atoms/std-rfi.orb +502 -461
  133. package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +448 -158
  134. package/dist/behaviors/registry/app/atoms/std-segment.orb +360 -98
  135. package/dist/behaviors/registry/app/atoms/std-stock-level.orb +486 -103
  136. package/dist/behaviors/registry/app/atoms/std-submittal.orb +538 -526
  137. package/dist/behaviors/registry/app/atoms/std-table-map.orb +88 -51
  138. package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +653 -71
  139. package/dist/behaviors/registry/app/atoms/std-telematics-event.orb +310 -215
  140. package/dist/behaviors/registry/app/atoms/std-template-editor.orb +513 -90
  141. package/dist/behaviors/registry/app/atoms/std-tenant.orb +525 -66
  142. package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +472 -460
  143. package/dist/behaviors/registry/app/atoms/std-time-entry.orb +354 -317
  144. package/dist/behaviors/registry/app/atoms/std-timeline.orb +108 -0
  145. package/dist/behaviors/registry/app/atoms/std-timesheet.orb +551 -284
  146. package/dist/behaviors/registry/app/atoms/std-trial.orb +410 -317
  147. package/dist/behaviors/registry/app/atoms/std-vehicle.orb +398 -563
  148. package/dist/behaviors/registry/app/atoms/std-waitlist.orb +372 -283
  149. package/dist/behaviors/registry/app/atoms/std-warehouse.orb +273 -214
  150. package/dist/behaviors/registry/app/atoms/std-wizard-branching.orb +129 -0
  151. package/dist/behaviors/registry/app/atoms/std-work-order.orb +628 -240
  152. package/dist/behaviors/registry/app/molecules/std-applicant-form.orb +89 -83
  153. package/dist/behaviors/registry/app/molecules/std-application.orb +178 -263
  154. package/dist/behaviors/registry/app/molecules/std-broadcast-builder.orb +67 -176
  155. package/dist/behaviors/registry/app/molecules/std-cart.orb +78 -72
  156. package/dist/behaviors/registry/app/molecules/std-form-builder.orb +437 -176
  157. package/dist/behaviors/registry/app/molecules/std-ledger-entry-form.orb +608 -89
  158. package/dist/behaviors/registry/app/molecules/std-stock-adjustment.orb +501 -102
  159. package/dist/behaviors/registry/app/molecules/std-vendor-onboarding.orb +383 -469
  160. package/dist/behaviors/registry/core/atoms/std-billable-hour.orb +495 -91
  161. package/dist/behaviors/registry/core/atoms/std-board.orb +1367 -0
  162. package/dist/behaviors/registry/core/atoms/std-branching-logic.orb +271 -600
  163. package/dist/behaviors/registry/core/atoms/std-event-log.orb +777 -0
  164. package/dist/behaviors/registry/core/atoms/std-file-store.orb +534 -164
  165. package/dist/behaviors/registry/core/atoms/std-gallery.orb +118 -101
  166. package/dist/behaviors/registry/core/atoms/std-image-upload-multi.orb +87 -57
  167. package/dist/behaviors/registry/core/atoms/std-multi-party-flow.orb +1313 -0
  168. package/dist/behaviors/registry/core/atoms/std-page-tree.orb +342 -484
  169. package/dist/behaviors/registry/core/atoms/std-recurrence.orb +937 -0
  170. package/dist/behaviors/registry/core/atoms/std-rich-editor.orb +288 -416
  171. package/dist/behaviors/registry/core/atoms/std-step-flow.orb +1155 -0
  172. package/dist/behaviors/registry/core/atoms/std-version-history.orb +454 -430
  173. package/dist/behaviors/registry/core/atoms/std-wizard.orb +1085 -0
  174. package/dist/behaviors/registry/core/molecules/std-wizard-form.orb +222 -147
  175. package/package.json +1 -1
@@ -266,21 +266,21 @@
266
266
  "render-ui",
267
267
  "main",
268
268
  {
269
+ "className": "py-12",
269
270
  "children": [
270
271
  {
271
272
  "type": "spinner"
272
273
  },
273
274
  {
274
- "variant": "caption",
275
+ "color": "muted",
275
276
  "type": "typography",
276
- "content": "Loading broadcasts…",
277
- "color": "muted"
277
+ "variant": "caption",
278
+ "content": "Loading broadcasts…"
278
279
  }
279
280
  ],
281
+ "gap": "md",
280
282
  "direction": "vertical",
281
283
  "type": "stack",
282
- "gap": "md",
283
- "className": "py-12",
284
284
  "align": "center"
285
285
  }
286
286
  ]
@@ -295,155 +295,71 @@
295
295
  "render-ui",
296
296
  "main",
297
297
  {
298
- "direction": "vertical",
299
298
  "type": "stack",
300
- "gap": "lg",
299
+ "direction": "vertical",
300
+ "gap": "md",
301
301
  "children": [
302
302
  {
303
303
  "direction": "horizontal",
304
+ "type": "stack",
305
+ "gap": "md",
304
306
  "children": [
305
307
  {
308
+ "type": "stack",
309
+ "direction": "horizontal",
310
+ "gap": "sm",
311
+ "align": "center",
306
312
  "children": [
307
313
  {
308
- "name": "send",
309
- "type": "icon"
314
+ "type": "icon",
315
+ "name": "send"
310
316
  },
311
317
  {
312
318
  "content": "Broadcasts",
313
- "variant": "h2",
314
- "type": "typography"
319
+ "type": "typography",
320
+ "variant": "h3"
315
321
  }
316
- ],
317
- "gap": "md",
318
- "type": "stack",
319
- "direction": "horizontal"
322
+ ]
320
323
  },
321
324
  {
322
325
  "action": "CREATE",
326
+ "variant": "primary",
323
327
  "label": "New Broadcast",
324
328
  "icon": "plus",
325
- "type": "button",
326
- "variant": "primary"
329
+ "type": "button"
327
330
  }
328
331
  ],
329
- "gap": "md",
330
- "justify": "between",
331
- "type": "stack"
332
+ "justify": "between"
332
333
  },
333
334
  {
334
- "columns": 4.0,
335
- "type": "stats-grid",
336
- "stats": [
335
+ "children": [
336
+ {
337
+ "type": "stat-display",
338
+ "icon": "send",
339
+ "value": "@payload.data.length",
340
+ "label": "Total drafts"
341
+ },
337
342
  {
338
343
  "value": "128",
339
- "label": "Sent this month"
344
+ "type": "stat-display",
345
+ "label": "Sent this month",
346
+ "icon": "check-circle"
340
347
  },
341
348
  {
349
+ "type": "stat-display",
342
350
  "value": "42%",
351
+ "icon": "mail-open",
343
352
  "label": "Open rate"
344
353
  },
345
354
  {
355
+ "label": "Click rate",
346
356
  "value": "11%",
347
- "label": "Click rate"
348
- },
349
- {
350
- "value": "0.8%",
351
- "label": "Bounce rate"
352
- }
353
- ]
354
- },
355
- {
356
- "type": "wizard-progress",
357
- "steps": [
358
- {
359
- "title": "Audience",
360
- "id": "audience"
361
- },
362
- {
363
- "title": "Template",
364
- "id": "template"
365
- },
366
- {
367
- "id": "schedule",
368
- "title": "Schedule"
369
- },
370
- {
371
- "title": "Review",
372
- "id": "review"
373
- },
374
- {
375
- "title": "Send",
376
- "id": "send"
377
- }
378
- ],
379
- "currentStep": 2.0
380
- },
381
- {
382
- "count": 5.0,
383
- "currentIndex": 2.0,
384
- "size": "md",
385
- "type": "progress-dots"
386
- },
387
- {
388
- "defaultTab": "drafts",
389
- "type": "tabbed-container",
390
- "tabs": [
391
- {
392
- "label": "Drafts",
393
- "id": "drafts",
394
- "content": "Broadcast drafts awaiting completion."
395
- },
396
- {
397
- "id": "scheduled",
398
- "label": "Scheduled",
399
- "content": "Queued for future delivery."
400
- },
401
- {
402
- "content": "Delivered broadcasts and reports.",
403
- "id": "sent",
404
- "label": "Sent"
405
- }
406
- ]
407
- },
408
- {
409
- "background": "gradient",
410
- "subtitle": "Target the right cohort at the right time.",
411
- "title": "Boost engagement with segmented broadcasts",
412
- "type": "cta-banner",
413
- "align": "center"
414
- },
415
- {
416
- "children": [
417
- {
418
- "title": "Audience segmentation",
419
- "icon": "users",
420
- "linkLabel": "View segments",
421
- "description": "Reach the contacts most likely to convert.",
422
- "type": "feature-card"
423
- },
424
- {
425
- "title": "Template library",
426
- "description": "Reusable email and SMS templates.",
427
- "icon": "file-text",
428
- "linkLabel": "Open library",
429
- "type": "feature-card"
430
- },
431
- {
432
- "title": "Send-time scheduling",
433
- "linkLabel": "Schedule",
434
- "description": "Pick send windows that match recipient time zones.",
435
- "type": "feature-card",
436
- "icon": "clock"
357
+ "type": "stat-display",
358
+ "icon": "mouse-pointer"
437
359
  }
438
360
  ],
439
- "type": "stack",
440
- "direction": "horizontal",
441
- "gap": "md"
442
- },
443
- {
444
- "label": "Author a broadcast from the CLI",
445
- "command": "npx almadar broadcast --new",
446
- "type": "install-box"
361
+ "cols": 4.0,
362
+ "type": "simple-grid"
447
363
  },
448
364
  {
449
365
  "type": "divider"
@@ -451,46 +367,48 @@
451
367
  {
452
368
  "itemActions": [
453
369
  {
370
+ "variant": "danger",
454
371
  "label": "Delete",
455
- "event": "REQUEST_DELETE",
456
- "variant": "danger"
372
+ "event": "REQUEST_DELETE"
457
373
  }
458
374
  ],
459
- "type": "data-grid",
460
- "entity": "@payload.data",
461
375
  "fields": [
462
376
  {
463
- "variant": "h4",
464
377
  "name": "name",
378
+ "variant": "caption",
465
379
  "icon": "send",
466
380
  "label": "Name"
467
381
  },
468
382
  {
469
383
  "label": "Subject",
470
- "name": "subject",
471
- "variant": "body"
384
+ "variant": "caption",
385
+ "name": "subject"
472
386
  },
473
387
  {
474
- "variant": "caption",
475
388
  "name": "segmentName",
476
- "label": "Segment"
389
+ "label": "Segment",
390
+ "variant": "caption"
477
391
  },
478
392
  {
393
+ "variant": "caption",
479
394
  "name": "templateName",
480
- "label": "Template",
481
- "variant": "caption"
395
+ "label": "Template"
482
396
  },
483
397
  {
398
+ "variant": "caption",
484
399
  "name": "scheduledAt",
485
- "label": "Scheduled",
486
- "variant": "caption"
400
+ "label": "Scheduled"
487
401
  },
488
402
  {
403
+ "label": "Status",
489
404
  "variant": "badge",
490
- "name": "status",
491
- "label": "Status"
405
+ "name": "status"
492
406
  }
493
- ]
407
+ ],
408
+ "entity": "@payload.data",
409
+ "type": "data-grid",
410
+ "cols": 1.0,
411
+ "gap": "sm"
494
412
  }
495
413
  ]
496
414
  }
@@ -506,36 +424,9 @@
506
424
  "render-ui",
507
425
  "main",
508
426
  {
509
- "children": [
510
- {
511
- "name": "alert-triangle",
512
- "color": "destructive",
513
- "type": "icon"
514
- },
515
- {
516
- "type": "typography",
517
- "content": "Failed to load broadcasts",
518
- "variant": "h3"
519
- },
520
- {
521
- "color": "muted",
522
- "type": "typography",
523
- "content": "@payload.error",
524
- "variant": "body"
525
- },
526
- {
527
- "type": "button",
528
- "variant": "primary",
529
- "label": "Retry",
530
- "icon": "rotate-ccw",
531
- "action": "INIT"
532
- }
533
- ],
534
- "gap": "md",
535
- "align": "center",
536
- "direction": "vertical",
537
- "className": "py-12",
538
- "type": "stack"
427
+ "type": "alert",
428
+ "variant": "error",
429
+ "message": "@payload.error"
539
430
  }
540
431
  ]
541
432
  ]
@@ -574,8 +465,8 @@
574
465
  "BroadcastDraft",
575
466
  {
576
467
  "emit": {
577
- "success": "BroadcastDraftLoaded",
578
- "failure": "BroadcastDraftLoadFailed"
468
+ "failure": "BroadcastDraftLoadFailed",
469
+ "success": "BroadcastDraftLoaded"
579
470
  }
580
471
  }
581
472
  ],
@@ -597,8 +488,8 @@
597
488
  "name": "BroadcastDraftCreate",
598
489
  "linkedEntity": "BroadcastDraft",
599
490
  "config": {
600
- "icon": "plus-circle",
601
491
  "title": "New Broadcast",
492
+ "icon": "plus-circle",
602
493
  "mode": "create",
603
494
  "fields": [
604
495
  "name",
@@ -627,14 +518,14 @@
627
518
  "name": "BroadcastDraftDelete",
628
519
  "linkedEntity": "BroadcastDraft",
629
520
  "config": {
630
- "alertMessage": "This will discard the draft.",
631
- "title": "Delete Draft",
632
521
  "icon": "alert-triangle",
633
- "confirmLabel": "Delete"
522
+ "confirmLabel": "Delete",
523
+ "title": "Delete Draft",
524
+ "alertMessage": "This will discard the draft."
634
525
  },
635
526
  "events": {
636
- "CONFIRM": "CONFIRM_DELETE",
637
- "REQUEST": "DELETE"
527
+ "REQUEST": "DELETE",
528
+ "CONFIRM": "CONFIRM_DELETE"
638
529
  },
639
530
  "listens": [
640
531
  {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "std-cart",
3
3
  "version": "1.0.0",
4
- "description": "std-cart as a Function",
4
+ "description": "std-cart shopping cart molecule composing CartItemCartBrowse + Modal-driven add + Confirmation-driven remove + persistor coordinator.",
5
5
  "orbitals": [
6
6
  {
7
7
  "name": "CartItemOrbital",
@@ -207,8 +207,8 @@
207
207
  "CartItem",
208
208
  {
209
209
  "emit": {
210
- "success": "CartItemLoaded",
211
- "failure": "CartItemLoadFailed"
210
+ "failure": "CartItemLoadFailed",
211
+ "success": "CartItemLoaded"
212
212
  }
213
213
  }
214
214
  ],
@@ -216,22 +216,22 @@
216
216
  "render-ui",
217
217
  "main",
218
218
  {
219
- "gap": "md",
219
+ "direction": "vertical",
220
+ "align": "center",
220
221
  "className": "py-12",
221
- "type": "stack",
222
222
  "children": [
223
223
  {
224
224
  "type": "spinner"
225
225
  },
226
226
  {
227
+ "variant": "caption",
227
228
  "color": "muted",
228
- "content": "Loading cart…",
229
229
  "type": "typography",
230
- "variant": "caption"
230
+ "content": "Loading cart…"
231
231
  }
232
232
  ],
233
- "direction": "vertical",
234
- "align": "center"
233
+ "type": "stack",
234
+ "gap": "md"
235
235
  }
236
236
  ]
237
237
  ]
@@ -246,73 +246,106 @@
246
246
  "main",
247
247
  {
248
248
  "direction": "vertical",
249
+ "type": "stack",
249
250
  "children": [
250
251
  {
252
+ "justify": "between",
251
253
  "children": [
252
254
  {
253
- "direction": "horizontal",
254
- "gap": "md",
255
+ "align": "center",
255
256
  "children": [
256
257
  {
257
- "type": "icon",
258
- "name": "shopping-cart"
258
+ "name": "shopping-cart",
259
+ "type": "icon"
259
260
  },
260
261
  {
261
262
  "content": "Shopping Cart",
262
- "variant": "h2",
263
- "type": "typography"
263
+ "type": "typography",
264
+ "variant": "h3"
264
265
  }
265
266
  ],
266
- "type": "stack"
267
+ "type": "stack",
268
+ "direction": "horizontal",
269
+ "gap": "sm"
267
270
  },
268
271
  {
269
- "type": "button",
270
- "icon": "plus",
271
- "label": "Add Item",
272
272
  "variant": "primary",
273
- "action": "ADD_ITEM"
273
+ "label": "Add Item",
274
+ "action": "ADD_ITEM",
275
+ "icon": "plus",
276
+ "type": "button"
274
277
  }
275
278
  ],
276
- "justify": "between",
277
- "gap": "md",
278
279
  "direction": "horizontal",
280
+ "gap": "md",
279
281
  "type": "stack"
280
282
  },
283
+ {
284
+ "cols": 4.0,
285
+ "children": [
286
+ {
287
+ "icon": "shopping-cart",
288
+ "type": "stat-display",
289
+ "value": "@payload.data.length",
290
+ "label": "Items in cart"
291
+ },
292
+ {
293
+ "label": "Active",
294
+ "value": "3",
295
+ "icon": "check-circle",
296
+ "type": "stat-display"
297
+ },
298
+ {
299
+ "icon": "clock",
300
+ "value": "1",
301
+ "type": "stat-display",
302
+ "label": "Pending"
303
+ },
304
+ {
305
+ "type": "stat-display",
306
+ "value": "5",
307
+ "icon": "bookmark",
308
+ "label": "Saved for later"
309
+ }
310
+ ],
311
+ "type": "simple-grid"
312
+ },
281
313
  {
282
314
  "type": "divider"
283
315
  },
284
316
  {
285
317
  "type": "data-grid",
318
+ "entity": "@payload.data",
286
319
  "itemActions": [
287
320
  {
288
- "label": "Remove",
321
+ "variant": "danger",
289
322
  "event": "REQUEST_REMOVE",
290
- "variant": "danger"
323
+ "label": "Remove"
291
324
  }
292
325
  ],
293
- "entity": "@payload.data",
294
326
  "fields": [
295
327
  {
296
328
  "label": "Name",
297
- "variant": "h4",
298
- "icon": "shopping-cart",
299
- "name": "name"
329
+ "variant": "caption",
330
+ "name": "name",
331
+ "icon": "shopping-cart"
300
332
  },
301
333
  {
302
334
  "variant": "caption",
303
- "name": "description",
304
- "label": "Description"
335
+ "label": "Description",
336
+ "name": "description"
305
337
  },
306
338
  {
307
- "name": "status",
308
339
  "label": "Status",
309
- "variant": "badge"
340
+ "variant": "badge",
341
+ "name": "status"
310
342
  }
311
- ]
343
+ ],
344
+ "cols": 1.0,
345
+ "gap": "sm"
312
346
  }
313
347
  ],
314
- "gap": "lg",
315
- "type": "stack"
348
+ "gap": "md"
316
349
  }
317
350
  ]
318
351
  ]
@@ -326,36 +359,9 @@
326
359
  "render-ui",
327
360
  "main",
328
361
  {
329
- "children": [
330
- {
331
- "color": "destructive",
332
- "type": "icon",
333
- "name": "alert-triangle"
334
- },
335
- {
336
- "variant": "h3",
337
- "content": "Failed to load cart",
338
- "type": "typography"
339
- },
340
- {
341
- "color": "muted",
342
- "type": "typography",
343
- "variant": "body",
344
- "content": "@payload.error"
345
- },
346
- {
347
- "variant": "primary",
348
- "type": "button",
349
- "icon": "rotate-ccw",
350
- "action": "INIT",
351
- "label": "Retry"
352
- }
353
- ],
354
- "className": "py-12",
355
- "direction": "vertical",
356
- "align": "center",
357
- "gap": "md",
358
- "type": "stack"
362
+ "variant": "error",
363
+ "message": "@payload.error",
364
+ "type": "alert"
359
365
  }
360
366
  ]
361
367
  ]
@@ -417,13 +423,13 @@
417
423
  "name": "CartItemAddItem",
418
424
  "linkedEntity": "CartItem",
419
425
  "config": {
420
- "title": "Add Item",
421
- "mode": "create",
422
426
  "fields": [
423
427
  "name",
424
428
  "description",
425
429
  "status"
426
430
  ],
431
+ "mode": "create",
432
+ "title": "Add Item",
427
433
  "openButtonLabel": "Add Item",
428
434
  "icon": "plus-circle"
429
435
  },
@@ -446,14 +452,14 @@
446
452
  "name": "CartItemRemoveConfirm",
447
453
  "linkedEntity": "CartItem",
448
454
  "config": {
449
- "icon": "alert-triangle",
450
455
  "title": "Remove Item",
451
- "confirmLabel": "Remove",
452
- "alertMessage": "Are you sure you want to remove this item from your cart?"
456
+ "alertMessage": "Are you sure you want to remove this item from your cart?",
457
+ "icon": "alert-triangle",
458
+ "confirmLabel": "Remove"
453
459
  },
454
460
  "events": {
455
- "REQUEST": "REQUEST_REMOVE",
456
- "CONFIRM": "CONFIRM_REMOVE"
461
+ "CONFIRM": "CONFIRM_REMOVE",
462
+ "REQUEST": "REQUEST_REMOVE"
457
463
  },
458
464
  "listens": [
459
465
  {