@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
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "std-approval-request",
3
3
  "version": "1.0.0",
4
- "description": "std-approval-request — Generic approval step primitive for routing a target (timesheet, expense, PTO, etc.) through requestor + approver decisions.",
4
+ "description": "std-approval-request — generic approval step for routing a target (timesheet, expense, PTO, etc.) through requestor + approver decisions. Lists requests in `browsing`; opens detail in `viewing_single` with Approve / Reject / Request Info / Withdraw actions.",
5
5
  "orbitals": [
6
6
  {
7
7
  "name": "ApprovalRequestOrbital",
@@ -100,58 +100,7 @@
100
100
  "linkedEntity": "ApprovalRequest",
101
101
  "emits": [
102
102
  {
103
- "event": "VIEW",
104
- "payloadSchema": [
105
- {
106
- "name": "id",
107
- "type": "string",
108
- "required": true
109
- },
110
- {
111
- "name": "source",
112
- "type": "string"
113
- }
114
- ]
115
- },
116
- {
117
- "event": "EDIT",
118
- "payloadSchema": [
119
- {
120
- "name": "id",
121
- "type": "string",
122
- "required": true
123
- },
124
- {
125
- "name": "source",
126
- "type": "string"
127
- }
128
- ]
129
- },
130
- {
131
- "event": "CREATE",
132
- "payloadSchema": [
133
- {
134
- "name": "source",
135
- "type": "string"
136
- }
137
- ]
138
- },
139
- {
140
- "event": "REQUEST_DELETE",
141
- "payloadSchema": [
142
- {
143
- "name": "id",
144
- "type": "string",
145
- "required": true
146
- },
147
- {
148
- "name": "source",
149
- "type": "string"
150
- }
151
- ]
152
- },
153
- {
154
- "event": "APPROVE",
103
+ "event": "OPEN_REQUEST",
155
104
  "payloadSchema": [
156
105
  {
157
106
  "name": "id",
@@ -213,64 +162,25 @@
213
162
  ]
214
163
  },
215
164
  {
216
- "event": "REJECT",
165
+ "event": "CLOSE_REQUEST"
166
+ },
167
+ {
168
+ "event": "APPROVE",
217
169
  "payloadSchema": [
218
170
  {
219
171
  "name": "id",
220
172
  "type": "string",
221
173
  "required": true
222
- },
223
- {
224
- "name": "row.id",
225
- "type": "string",
226
- "required": true
227
- },
228
- {
229
- "name": "row.title",
230
- "type": "string",
231
- "required": true
232
- },
233
- {
234
- "name": "row.targetType",
235
- "type": "string"
236
- },
237
- {
238
- "name": "row.targetId",
239
- "type": "string",
240
- "required": true
241
- },
174
+ }
175
+ ]
176
+ },
177
+ {
178
+ "event": "REJECT",
179
+ "payloadSchema": [
242
180
  {
243
- "name": "row.requestedBy",
181
+ "name": "id",
244
182
  "type": "string",
245
183
  "required": true
246
- },
247
- {
248
- "name": "row.requestedAt",
249
- "type": "string"
250
- },
251
- {
252
- "name": "row.assignedApprover",
253
- "type": "string"
254
- },
255
- {
256
- "name": "row.approverDecision",
257
- "type": "string"
258
- },
259
- {
260
- "name": "row.decidedAt",
261
- "type": "string"
262
- },
263
- {
264
- "name": "row.comment",
265
- "type": "string"
266
- },
267
- {
268
- "name": "row.status",
269
- "type": "string"
270
- },
271
- {
272
- "name": "row.pendingId",
273
- "type": "string"
274
184
  }
275
185
  ]
276
186
  },
@@ -281,58 +191,6 @@
281
191
  "name": "id",
282
192
  "type": "string",
283
193
  "required": true
284
- },
285
- {
286
- "name": "row.id",
287
- "type": "string",
288
- "required": true
289
- },
290
- {
291
- "name": "row.title",
292
- "type": "string",
293
- "required": true
294
- },
295
- {
296
- "name": "row.targetType",
297
- "type": "string"
298
- },
299
- {
300
- "name": "row.targetId",
301
- "type": "string",
302
- "required": true
303
- },
304
- {
305
- "name": "row.requestedBy",
306
- "type": "string",
307
- "required": true
308
- },
309
- {
310
- "name": "row.requestedAt",
311
- "type": "string"
312
- },
313
- {
314
- "name": "row.assignedApprover",
315
- "type": "string"
316
- },
317
- {
318
- "name": "row.approverDecision",
319
- "type": "string"
320
- },
321
- {
322
- "name": "row.decidedAt",
323
- "type": "string"
324
- },
325
- {
326
- "name": "row.comment",
327
- "type": "string"
328
- },
329
- {
330
- "name": "row.status",
331
- "type": "string"
332
- },
333
- {
334
- "name": "row.pendingId",
335
- "type": "string"
336
194
  }
337
195
  ]
338
196
  },
@@ -343,58 +201,6 @@
343
201
  "name": "id",
344
202
  "type": "string",
345
203
  "required": true
346
- },
347
- {
348
- "name": "row.id",
349
- "type": "string",
350
- "required": true
351
- },
352
- {
353
- "name": "row.title",
354
- "type": "string",
355
- "required": true
356
- },
357
- {
358
- "name": "row.targetType",
359
- "type": "string"
360
- },
361
- {
362
- "name": "row.targetId",
363
- "type": "string",
364
- "required": true
365
- },
366
- {
367
- "name": "row.requestedBy",
368
- "type": "string",
369
- "required": true
370
- },
371
- {
372
- "name": "row.requestedAt",
373
- "type": "string"
374
- },
375
- {
376
- "name": "row.assignedApprover",
377
- "type": "string"
378
- },
379
- {
380
- "name": "row.approverDecision",
381
- "type": "string"
382
- },
383
- {
384
- "name": "row.decidedAt",
385
- "type": "string"
386
- },
387
- {
388
- "name": "row.comment",
389
- "type": "string"
390
- },
391
- {
392
- "name": "row.status",
393
- "type": "string"
394
- },
395
- {
396
- "name": "row.pendingId",
397
- "type": "string"
398
204
  }
399
205
  ]
400
206
  },
@@ -428,7 +234,10 @@
428
234
  "isInitial": true
429
235
  },
430
236
  {
431
- "name": "viewing"
237
+ "name": "browsing"
238
+ },
239
+ {
240
+ "name": "viewing_single"
432
241
  },
433
242
  {
434
243
  "name": "error"
@@ -464,69 +273,23 @@
464
273
  ]
465
274
  },
466
275
  {
467
- "key": "REFRESH",
468
- "name": "Refresh",
469
- "payloadSchema": [
470
- {
471
- "name": "source",
472
- "type": "string"
473
- }
474
- ]
475
- },
476
- {
477
- "key": "SEARCH",
478
- "name": "Search",
479
- "payloadSchema": [
480
- {
481
- "name": "query",
482
- "type": "string"
483
- }
484
- ]
485
- },
486
- {
487
- "key": "FILTER_STATUS",
488
- "name": "Filter Status",
489
- "payloadSchema": [
490
- {
491
- "name": "status",
492
- "type": "string"
493
- }
494
- ]
495
- },
496
- {
497
- "key": "FILTER_TYPE",
498
- "name": "Filter Type",
499
- "payloadSchema": [
500
- {
501
- "name": "targetType",
502
- "type": "string"
503
- }
504
- ]
505
- },
506
- {
507
- "key": "CREATE",
508
- "name": "Create",
509
- "payloadSchema": [
510
- {
511
- "name": "source",
512
- "type": "string"
513
- }
514
- ]
515
- },
516
- {
517
- "key": "VIEW",
518
- "name": "View",
276
+ "key": "OPEN_REQUEST",
277
+ "name": "Open Request",
519
278
  "payloadSchema": [
520
279
  {
521
280
  "name": "id",
522
281
  "type": "string",
523
282
  "required": true
283
+ },
284
+ {
285
+ "name": "row",
286
+ "type": "ApprovalRequest"
524
287
  }
525
288
  ]
526
289
  },
527
290
  {
528
- "key": "EDIT",
529
- "name": "Edit",
291
+ "key": "WITHDRAW",
292
+ "name": "Withdraw",
530
293
  "payloadSchema": [
531
294
  {
532
295
  "name": "id",
@@ -535,6 +298,10 @@
535
298
  }
536
299
  ]
537
300
  },
301
+ {
302
+ "key": "CLOSE_REQUEST",
303
+ "name": "Close Request"
304
+ },
538
305
  {
539
306
  "key": "APPROVE",
540
307
  "name": "Approve",
@@ -567,31 +334,9 @@
567
334
  "required": true
568
335
  }
569
336
  ]
570
- },
571
- {
572
- "key": "WITHDRAW",
573
- "name": "Withdraw",
574
- "payloadSchema": [
575
- {
576
- "name": "id",
577
- "type": "string",
578
- "required": true
579
- }
580
- ]
581
- },
582
- {
583
- "key": "REQUEST_DELETE",
584
- "name": "Request Delete",
585
- "payloadSchema": [
586
- {
587
- "name": "id",
588
- "type": "string",
589
- "required": true
590
- }
591
- ]
592
- }
593
- ],
594
- "transitions": [
337
+ }
338
+ ],
339
+ "transitions": [
595
340
  {
596
341
  "from": "loading",
597
342
  "to": "loading",
@@ -602,8 +347,8 @@
602
347
  "ApprovalRequest",
603
348
  {
604
349
  "emit": {
605
- "failure": "ApprovalRequestLoadFailed",
606
- "success": "ApprovalRequestLoaded"
350
+ "success": "ApprovalRequestLoaded",
351
+ "failure": "ApprovalRequestLoadFailed"
607
352
  }
608
353
  }
609
354
  ],
@@ -611,41 +356,43 @@
611
356
  "render-ui",
612
357
  "main",
613
358
  {
614
- "className": "py-12",
615
- "gap": "md",
616
359
  "children": [
617
360
  {
618
361
  "type": "spinner"
619
362
  },
620
363
  {
364
+ "variant": "caption",
621
365
  "content": "Loading approval requests…",
622
- "type": "typography",
623
366
  "color": "muted",
624
- "variant": "caption"
367
+ "type": "typography"
625
368
  }
626
369
  ],
627
370
  "direction": "vertical",
628
371
  "type": "stack",
629
- "align": "center"
372
+ "align": "center",
373
+ "className": "py-12",
374
+ "gap": "md"
630
375
  }
631
376
  ]
632
377
  ]
633
378
  },
634
379
  {
635
380
  "from": "loading",
636
- "to": "viewing",
381
+ "to": "browsing",
637
382
  "event": "ApprovalRequestLoaded",
638
383
  "effects": [
639
384
  [
640
385
  "render-ui",
641
386
  "main",
642
387
  {
643
- "type": "stack",
644
388
  "direction": "vertical",
645
389
  "gap": "md",
390
+ "type": "stack",
646
391
  "children": [
647
392
  {
393
+ "direction": "horizontal",
648
394
  "type": "stack",
395
+ "gap": "sm",
649
396
  "align": "center",
650
397
  "children": [
651
398
  {
@@ -653,204 +400,99 @@
653
400
  "type": "icon"
654
401
  },
655
402
  {
656
- "content": "@config.title",
657
403
  "variant": "h3",
658
- "type": "typography"
659
- },
660
- {
661
- "variant": "primary",
662
- "type": "button",
663
- "label": "New Approval Request",
664
- "action": "CREATE"
665
- }
666
- ],
667
- "direction": "horizontal",
668
- "gap": "sm"
669
- },
670
- {
671
- "currentStep": 1.0,
672
- "type": "wizard-progress",
673
- "steps": [
674
- {
675
- "title": "Submitted",
676
- "id": "submitted"
677
- },
678
- {
679
- "title": "Review",
680
- "id": "review"
681
- },
682
- {
683
- "title": "Decision",
684
- "id": "decision"
685
- },
686
- {
687
- "title": "Closed",
688
- "id": "closed"
404
+ "type": "typography",
405
+ "content": "@config.title"
689
406
  }
690
407
  ]
691
408
  },
692
409
  {
693
- "type": "stack",
694
- "align": "center",
695
- "direction": "horizontal",
696
410
  "children": [
697
411
  {
698
- "maxTurns": 4.0,
699
- "currentTurn": 2.0,
700
- "phase": "Review",
701
- "type": "turn-indicator",
702
- "activeTeam": "Approver",
703
- "size": "md"
704
- },
705
- {
706
- "type": "trend-indicator",
707
- "value": 12.5,
708
- "direction": "up",
709
- "label": "Approval rate trend",
710
- "size": "md",
711
- "showValue": true
712
- }
713
- ],
714
- "gap": "md"
715
- },
716
- {
717
- "phase": "Review",
718
- "actions": [
719
- {
720
- "label": "Approve",
721
- "event": "APPROVE"
722
- },
723
- {
724
- "label": "Reject",
725
- "event": "REJECT"
726
- }
727
- ],
728
- "currentTurn": 2.0,
729
- "maxTurns": 4.0,
730
- "type": "turn-panel",
731
- "activeTeam": "Approver"
732
- },
733
- {
734
- "type": "timeline",
735
- "title": "Approval Chronology",
736
- "items": [
737
- {
738
- "title": "Submitted",
739
- "id": "submitted",
740
- "description": "Request submitted",
741
- "status": "complete",
742
- "date": "2026-05-08"
412
+ "icon": "inbox",
413
+ "value": "@payload.data.length",
414
+ "type": "stat-display",
415
+ "label": "Total requests"
743
416
  },
744
417
  {
745
- "date": "2026-05-09",
746
- "status": "complete",
747
- "title": "Assigned",
748
- "description": "Approver assigned",
749
- "id": "assigned"
418
+ "value": "14",
419
+ "icon": "clock",
420
+ "type": "stat-display",
421
+ "label": "Pending"
750
422
  },
751
423
  {
752
- "date": "2026-05-11",
753
- "title": "Review",
754
- "id": "review",
755
- "status": "active",
756
- "description": "Approver reviewing"
424
+ "icon": "check-circle",
425
+ "type": "stat-display",
426
+ "label": "Approved",
427
+ "value": "82%"
757
428
  },
758
429
  {
759
- "title": "Decision",
760
- "date": "2026-05-12",
761
- "description": "Pending decision",
762
- "status": "pending",
763
- "id": "decision"
430
+ "label": "Avg cycle",
431
+ "value": "1.4 days",
432
+ "type": "stat-display",
433
+ "icon": "timer"
764
434
  }
765
435
  ],
766
- "fields": [
767
- "title",
768
- "date",
769
- "status",
770
- "description"
771
- ]
436
+ "type": "simple-grid",
437
+ "cols": 4.0
772
438
  },
773
439
  {
774
440
  "type": "divider"
775
441
  },
776
442
  {
777
443
  "cols": 1.0,
778
- "gap": "sm",
779
- "type": "data-grid",
780
444
  "fields": [
781
445
  {
782
446
  "label": "Title",
783
- "variant": "caption",
784
- "name": "title"
447
+ "name": "title",
448
+ "variant": "caption"
785
449
  },
786
450
  {
787
- "label": "Target",
788
451
  "name": "targetType",
452
+ "label": "Target",
789
453
  "variant": "badge"
790
454
  },
791
455
  {
456
+ "label": "Requested By",
792
457
  "variant": "caption",
793
- "name": "requestedBy",
794
- "label": "Requested By"
458
+ "name": "requestedBy"
795
459
  },
796
460
  {
797
- "variant": "caption",
798
461
  "name": "assignedApprover",
462
+ "variant": "caption",
799
463
  "label": "Approver"
800
464
  },
801
465
  {
802
- "label": "Decision",
803
466
  "name": "approverDecision",
804
- "variant": "badge"
467
+ "variant": "badge",
468
+ "label": "Decision"
805
469
  },
806
470
  {
807
- "name": "status",
471
+ "label": "Status",
808
472
  "variant": "badge",
809
- "label": "Status"
473
+ "name": "status"
810
474
  },
811
475
  {
812
- "name": "decidedAt",
476
+ "label": "Decided",
813
477
  "variant": "caption",
814
- "label": "Decided"
478
+ "name": "decidedAt"
815
479
  }
816
480
  ],
481
+ "gap": "sm",
817
482
  "itemActions": [
818
483
  {
819
- "variant": "secondary",
820
- "label": "View",
821
- "event": "VIEW"
822
- },
823
- {
824
- "label": "Edit",
825
- "event": "EDIT",
826
- "variant": "secondary"
827
- },
828
- {
829
- "event": "APPROVE",
830
- "label": "Approve",
484
+ "label": "Open",
485
+ "icon": "arrow-right",
486
+ "event": "OPEN_REQUEST",
831
487
  "variant": "primary"
832
488
  },
833
489
  {
834
- "variant": "danger",
835
- "event": "REJECT",
836
- "label": "Reject"
837
- },
838
- {
839
- "label": "Request Info",
840
- "event": "REQUEST_INFO",
841
- "variant": "ghost"
842
- },
843
- {
490
+ "event": "WITHDRAW",
844
491
  "label": "Withdraw",
845
- "variant": "ghost",
846
- "event": "WITHDRAW"
847
- },
848
- {
849
- "event": "REQUEST_DELETE",
850
- "label": "Delete",
851
492
  "variant": "danger"
852
493
  }
853
494
  ],
495
+ "type": "data-grid",
854
496
  "entity": "@payload.data"
855
497
  }
856
498
  ]
@@ -875,56 +517,280 @@
875
517
  ]
876
518
  },
877
519
  {
878
- "from": "viewing",
879
- "to": "loading",
880
- "event": "REFRESH",
520
+ "from": "browsing",
521
+ "to": "viewing_single",
522
+ "event": "OPEN_REQUEST",
881
523
  "effects": [
882
524
  [
883
- "fetch",
884
- "ApprovalRequest",
885
- {
886
- "emit": {
887
- "success": "ApprovalRequestLoaded",
888
- "failure": "ApprovalRequestLoadFailed"
889
- }
890
- }
525
+ "set",
526
+ "@entity.id",
527
+ "@payload.row.id"
528
+ ],
529
+ [
530
+ "set",
531
+ "@entity.title",
532
+ "@payload.row.title"
533
+ ],
534
+ [
535
+ "set",
536
+ "@entity.targetType",
537
+ "@payload.row.targetType"
538
+ ],
539
+ [
540
+ "set",
541
+ "@entity.targetId",
542
+ "@payload.row.targetId"
543
+ ],
544
+ [
545
+ "set",
546
+ "@entity.requestedBy",
547
+ "@payload.row.requestedBy"
548
+ ],
549
+ [
550
+ "set",
551
+ "@entity.requestedAt",
552
+ "@payload.row.requestedAt"
553
+ ],
554
+ [
555
+ "set",
556
+ "@entity.assignedApprover",
557
+ "@payload.row.assignedApprover"
558
+ ],
559
+ [
560
+ "set",
561
+ "@entity.approverDecision",
562
+ "@payload.row.approverDecision"
563
+ ],
564
+ [
565
+ "set",
566
+ "@entity.decidedAt",
567
+ "@payload.row.decidedAt"
568
+ ],
569
+ [
570
+ "set",
571
+ "@entity.comment",
572
+ "@payload.row.comment"
573
+ ],
574
+ [
575
+ "set",
576
+ "@entity.status",
577
+ "@payload.row.status"
891
578
  ],
892
579
  [
893
580
  "render-ui",
894
581
  "main",
895
582
  {
896
- "gap": "md",
897
583
  "type": "stack",
898
- "className": "py-12",
899
- "direction": "vertical",
900
- "align": "center",
901
584
  "children": [
902
585
  {
903
- "type": "spinner"
586
+ "children": [
587
+ {
588
+ "variant": "ghost",
589
+ "type": "button",
590
+ "label": "Back",
591
+ "action": "CLOSE_REQUEST"
592
+ },
593
+ {
594
+ "name": "check-circle",
595
+ "type": "icon"
596
+ },
597
+ {
598
+ "variant": "h3",
599
+ "type": "typography",
600
+ "content": "@entity.title"
601
+ },
602
+ {
603
+ "type": "badge",
604
+ "variant": "default",
605
+ "label": "@entity.status"
606
+ },
607
+ {
608
+ "variant": "primary",
609
+ "label": "@entity.approverDecision",
610
+ "type": "badge"
611
+ }
612
+ ],
613
+ "direction": "horizontal",
614
+ "gap": "sm",
615
+ "align": "center",
616
+ "type": "stack"
904
617
  },
905
618
  {
906
- "variant": "caption",
907
- "content": "Refreshing approval requests…",
908
- "type": "typography",
909
- "color": "muted"
619
+ "type": "divider"
620
+ },
621
+ {
622
+ "gap": "sm",
623
+ "direction": "vertical",
624
+ "type": "stack",
625
+ "children": [
626
+ {
627
+ "children": [
628
+ {
629
+ "type": "typography",
630
+ "variant": "caption",
631
+ "content": "Target",
632
+ "color": "muted"
633
+ },
634
+ {
635
+ "content": "@entity.targetType",
636
+ "type": "typography",
637
+ "variant": "body"
638
+ },
639
+ {
640
+ "content": "@entity.targetId",
641
+ "type": "typography",
642
+ "variant": "body"
643
+ }
644
+ ],
645
+ "direction": "horizontal",
646
+ "type": "stack",
647
+ "gap": "md"
648
+ },
649
+ {
650
+ "direction": "horizontal",
651
+ "type": "stack",
652
+ "children": [
653
+ {
654
+ "type": "typography",
655
+ "variant": "caption",
656
+ "content": "Requested by",
657
+ "color": "muted"
658
+ },
659
+ {
660
+ "type": "typography",
661
+ "variant": "body",
662
+ "content": "@entity.requestedBy"
663
+ }
664
+ ],
665
+ "gap": "md"
666
+ },
667
+ {
668
+ "direction": "horizontal",
669
+ "gap": "md",
670
+ "type": "stack",
671
+ "children": [
672
+ {
673
+ "variant": "caption",
674
+ "type": "typography",
675
+ "color": "muted",
676
+ "content": "Approver"
677
+ },
678
+ {
679
+ "content": "@entity.assignedApprover",
680
+ "variant": "body",
681
+ "type": "typography"
682
+ }
683
+ ]
684
+ },
685
+ {
686
+ "type": "stack",
687
+ "direction": "horizontal",
688
+ "gap": "md",
689
+ "children": [
690
+ {
691
+ "variant": "caption",
692
+ "color": "muted",
693
+ "type": "typography",
694
+ "content": "Comment"
695
+ },
696
+ {
697
+ "variant": "body",
698
+ "type": "typography",
699
+ "content": "@entity.comment"
700
+ }
701
+ ]
702
+ }
703
+ ]
704
+ },
705
+ {
706
+ "type": "divider"
707
+ },
708
+ {
709
+ "children": [
710
+ {
711
+ "icon": "calendar",
712
+ "type": "stat-display",
713
+ "label": "Requested at",
714
+ "value": "@entity.requestedAt"
715
+ },
716
+ {
717
+ "label": "Decided at",
718
+ "icon": "calendar-check",
719
+ "type": "stat-display",
720
+ "value": "@entity.decidedAt"
721
+ }
722
+ ],
723
+ "type": "simple-grid",
724
+ "cols": 2.0
725
+ },
726
+ {
727
+ "align": "center",
728
+ "type": "stack",
729
+ "gap": "sm",
730
+ "direction": "horizontal",
731
+ "children": [
732
+ {
733
+ "label": "Approve",
734
+ "type": "button",
735
+ "action": "APPROVE",
736
+ "variant": "primary",
737
+ "actionPayload": {
738
+ "id": "@entity.id"
739
+ }
740
+ },
741
+ {
742
+ "type": "button",
743
+ "actionPayload": {
744
+ "id": "@entity.id"
745
+ },
746
+ "action": "REJECT",
747
+ "variant": "danger",
748
+ "label": "Reject"
749
+ },
750
+ {
751
+ "actionPayload": {
752
+ "id": "@entity.id"
753
+ },
754
+ "action": "REQUEST_INFO",
755
+ "label": "Request Info",
756
+ "type": "button",
757
+ "variant": "secondary"
758
+ },
759
+ {
760
+ "action": "WITHDRAW",
761
+ "type": "button",
762
+ "label": "Withdraw",
763
+ "actionPayload": {
764
+ "id": "@entity.id"
765
+ },
766
+ "variant": "ghost"
767
+ }
768
+ ]
910
769
  }
911
- ]
770
+ ],
771
+ "gap": "md",
772
+ "direction": "vertical"
912
773
  }
913
774
  ]
914
775
  ]
915
776
  },
916
777
  {
917
- "from": "viewing",
778
+ "from": "browsing",
918
779
  "to": "loading",
919
- "event": "SEARCH",
780
+ "event": "WITHDRAW",
920
781
  "effects": [
782
+ [
783
+ "set",
784
+ "@entity.id",
785
+ "@payload.id"
786
+ ],
921
787
  [
922
788
  "fetch",
923
789
  "ApprovalRequest",
924
790
  {
925
791
  "emit": {
926
- "success": "ApprovalRequestLoaded",
927
- "failure": "ApprovalRequestLoadFailed"
792
+ "failure": "ApprovalRequestLoadFailed",
793
+ "success": "ApprovalRequestLoaded"
928
794
  }
929
795
  }
930
796
  ],
@@ -932,30 +798,30 @@
932
798
  "render-ui",
933
799
  "main",
934
800
  {
935
- "type": "stack",
936
- "gap": "md",
937
- "className": "py-12",
801
+ "direction": "vertical",
938
802
  "children": [
939
803
  {
940
804
  "type": "spinner"
941
805
  },
942
806
  {
943
- "type": "typography",
944
807
  "color": "muted",
808
+ "content": "Withdrawing request…",
945
809
  "variant": "caption",
946
- "content": "Searching approval requests…"
810
+ "type": "typography"
947
811
  }
948
812
  ],
813
+ "className": "py-12",
949
814
  "align": "center",
950
- "direction": "vertical"
815
+ "gap": "md",
816
+ "type": "stack"
951
817
  }
952
818
  ]
953
819
  ]
954
820
  },
955
821
  {
956
- "from": "viewing",
822
+ "from": "viewing_single",
957
823
  "to": "loading",
958
- "event": "FILTER_STATUS",
824
+ "event": "CLOSE_REQUEST",
959
825
  "effects": [
960
826
  [
961
827
  "fetch",
@@ -971,31 +837,36 @@
971
837
  "render-ui",
972
838
  "main",
973
839
  {
974
- "align": "center",
840
+ "type": "stack",
975
841
  "className": "py-12",
976
- "gap": "md",
842
+ "direction": "vertical",
843
+ "align": "center",
977
844
  "children": [
978
845
  {
979
846
  "type": "spinner"
980
847
  },
981
848
  {
982
- "content": "Filtering approval requests…",
983
- "variant": "caption",
849
+ "content": "Loading approval requests…",
984
850
  "type": "typography",
985
- "color": "muted"
851
+ "color": "muted",
852
+ "variant": "caption"
986
853
  }
987
854
  ],
988
- "type": "stack",
989
- "direction": "vertical"
855
+ "gap": "md"
990
856
  }
991
857
  ]
992
858
  ]
993
859
  },
994
860
  {
995
- "from": "viewing",
861
+ "from": "viewing_single",
996
862
  "to": "loading",
997
- "event": "FILTER_TYPE",
863
+ "event": "APPROVE",
998
864
  "effects": [
865
+ [
866
+ "set",
867
+ "@entity.id",
868
+ "@payload.id"
869
+ ],
999
870
  [
1000
871
  "fetch",
1001
872
  "ApprovalRequest",
@@ -1010,67 +881,30 @@
1010
881
  "render-ui",
1011
882
  "main",
1012
883
  {
1013
- "align": "center",
1014
- "direction": "vertical",
1015
- "className": "py-12",
1016
884
  "children": [
1017
885
  {
1018
886
  "type": "spinner"
1019
887
  },
1020
888
  {
1021
- "content": "Filtering approval requests…",
1022
889
  "type": "typography",
1023
- "color": "muted",
1024
- "variant": "caption"
890
+ "content": "Recording approval…",
891
+ "variant": "caption",
892
+ "color": "muted"
1025
893
  }
1026
894
  ],
895
+ "type": "stack",
1027
896
  "gap": "md",
1028
- "type": "stack"
1029
- }
1030
- ]
1031
- ]
1032
- },
1033
- {
1034
- "from": "viewing",
1035
- "to": "viewing",
1036
- "event": "CREATE",
1037
- "effects": [
1038
- [
1039
- "render-ui",
1040
- "main",
1041
- {
1042
- "variant": "info",
1043
- "type": "alert",
1044
- "message": "Creating new approval request"
1045
- }
1046
- ]
1047
- ]
1048
- },
1049
- {
1050
- "from": "viewing",
1051
- "to": "viewing",
1052
- "event": "VIEW",
1053
- "effects": [
1054
- [
1055
- "set",
1056
- "@entity.id",
1057
- "@payload.id"
1058
- ],
1059
- [
1060
- "render-ui",
1061
- "main",
1062
- {
1063
- "type": "alert",
1064
- "variant": "info",
1065
- "message": "Viewing approval request"
897
+ "align": "center",
898
+ "className": "py-12",
899
+ "direction": "vertical"
1066
900
  }
1067
901
  ]
1068
902
  ]
1069
903
  },
1070
904
  {
1071
- "from": "viewing",
1072
- "to": "viewing",
1073
- "event": "EDIT",
905
+ "from": "viewing_single",
906
+ "to": "loading",
907
+ "event": "REJECT",
1074
908
  "effects": [
1075
909
  [
1076
910
  "set",
@@ -1078,41 +912,43 @@
1078
912
  "@payload.id"
1079
913
  ],
1080
914
  [
1081
- "render-ui",
1082
- "main",
915
+ "fetch",
916
+ "ApprovalRequest",
1083
917
  {
1084
- "variant": "info",
1085
- "type": "alert",
1086
- "message": "Editing approval request"
918
+ "emit": {
919
+ "failure": "ApprovalRequestLoadFailed",
920
+ "success": "ApprovalRequestLoaded"
921
+ }
1087
922
  }
1088
- ]
1089
- ]
1090
- },
1091
- {
1092
- "from": "viewing",
1093
- "to": "viewing",
1094
- "event": "APPROVE",
1095
- "effects": [
1096
- [
1097
- "set",
1098
- "@entity.id",
1099
- "@payload.id"
1100
923
  ],
1101
924
  [
1102
925
  "render-ui",
1103
926
  "main",
1104
927
  {
1105
- "variant": "success",
1106
- "message": "Approval recorded",
1107
- "type": "alert"
928
+ "className": "py-12",
929
+ "children": [
930
+ {
931
+ "type": "spinner"
932
+ },
933
+ {
934
+ "variant": "caption",
935
+ "content": "Recording rejection…",
936
+ "color": "muted",
937
+ "type": "typography"
938
+ }
939
+ ],
940
+ "direction": "vertical",
941
+ "gap": "md",
942
+ "type": "stack",
943
+ "align": "center"
1108
944
  }
1109
945
  ]
1110
946
  ]
1111
947
  },
1112
948
  {
1113
- "from": "viewing",
1114
- "to": "viewing",
1115
- "event": "REJECT",
949
+ "from": "viewing_single",
950
+ "to": "loading",
951
+ "event": "REQUEST_INFO",
1116
952
  "effects": [
1117
953
  [
1118
954
  "set",
@@ -1120,40 +956,42 @@
1120
956
  "@payload.id"
1121
957
  ],
1122
958
  [
1123
- "render-ui",
1124
- "main",
959
+ "fetch",
960
+ "ApprovalRequest",
1125
961
  {
1126
- "type": "alert",
1127
- "variant": "warning",
1128
- "message": "Rejection recorded"
962
+ "emit": {
963
+ "success": "ApprovalRequestLoaded",
964
+ "failure": "ApprovalRequestLoadFailed"
965
+ }
1129
966
  }
1130
- ]
1131
- ]
1132
- },
1133
- {
1134
- "from": "viewing",
1135
- "to": "viewing",
1136
- "event": "REQUEST_INFO",
1137
- "effects": [
1138
- [
1139
- "set",
1140
- "@entity.id",
1141
- "@payload.id"
1142
967
  ],
1143
968
  [
1144
969
  "render-ui",
1145
970
  "main",
1146
971
  {
1147
- "message": "More information requested",
1148
- "type": "alert",
1149
- "variant": "info"
972
+ "children": [
973
+ {
974
+ "type": "spinner"
975
+ },
976
+ {
977
+ "variant": "caption",
978
+ "content": "Requesting more info…",
979
+ "type": "typography",
980
+ "color": "muted"
981
+ }
982
+ ],
983
+ "className": "py-12",
984
+ "gap": "md",
985
+ "type": "stack",
986
+ "align": "center",
987
+ "direction": "vertical"
1150
988
  }
1151
989
  ]
1152
990
  ]
1153
991
  },
1154
992
  {
1155
- "from": "viewing",
1156
- "to": "viewing",
993
+ "from": "viewing_single",
994
+ "to": "loading",
1157
995
  "event": "WITHDRAW",
1158
996
  "effects": [
1159
997
  [
@@ -1162,33 +1000,35 @@
1162
1000
  "@payload.id"
1163
1001
  ],
1164
1002
  [
1165
- "render-ui",
1166
- "main",
1003
+ "fetch",
1004
+ "ApprovalRequest",
1167
1005
  {
1168
- "type": "alert",
1169
- "variant": "info",
1170
- "message": "Request withdrawn"
1006
+ "emit": {
1007
+ "failure": "ApprovalRequestLoadFailed",
1008
+ "success": "ApprovalRequestLoaded"
1009
+ }
1171
1010
  }
1172
- ]
1173
- ]
1174
- },
1175
- {
1176
- "from": "viewing",
1177
- "to": "viewing",
1178
- "event": "REQUEST_DELETE",
1179
- "effects": [
1180
- [
1181
- "set",
1182
- "@entity.id",
1183
- "@payload.id"
1184
1011
  ],
1185
1012
  [
1186
1013
  "render-ui",
1187
1014
  "main",
1188
1015
  {
1189
- "type": "alert",
1190
- "message": "Delete requested",
1191
- "variant": "warning"
1016
+ "children": [
1017
+ {
1018
+ "type": "spinner"
1019
+ },
1020
+ {
1021
+ "color": "muted",
1022
+ "content": "Withdrawing request…",
1023
+ "type": "typography",
1024
+ "variant": "caption"
1025
+ }
1026
+ ],
1027
+ "direction": "vertical",
1028
+ "className": "py-12",
1029
+ "type": "stack",
1030
+ "gap": "md",
1031
+ "align": "center"
1192
1032
  }
1193
1033
  ]
1194
1034
  ]