@almadar/std 14.26.0 → 14.27.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 (151) hide show
  1. package/behaviors/registry/app/atoms/std-applicant.orb +496 -42
  2. package/behaviors/registry/app/atoms/std-approval-request.orb +433 -593
  3. package/behaviors/registry/app/atoms/std-campaign-goal.orb +438 -228
  4. package/behaviors/registry/app/atoms/std-change-order.orb +565 -307
  5. package/behaviors/registry/app/atoms/std-chart-of-accounts.orb +434 -97
  6. package/behaviors/registry/app/atoms/std-checkin.orb +434 -270
  7. package/behaviors/registry/app/atoms/std-class-roster.orb +495 -61
  8. package/behaviors/registry/app/atoms/std-class-session.orb +485 -104
  9. package/behaviors/registry/app/atoms/std-court-deadline.orb +519 -88
  10. package/behaviors/registry/app/atoms/std-customer-account.orb +577 -97
  11. package/behaviors/registry/app/atoms/std-donation-receipt.orb +498 -55
  12. package/behaviors/registry/app/atoms/std-donor.orb +445 -135
  13. package/behaviors/registry/app/atoms/std-drip-sequence.orb +445 -62
  14. package/behaviors/registry/app/atoms/std-driver.orb +465 -480
  15. package/behaviors/registry/app/atoms/std-dunning.orb +450 -512
  16. package/behaviors/registry/app/atoms/std-email-broadcast.orb +517 -64
  17. package/behaviors/registry/app/atoms/std-event.orb +465 -667
  18. package/behaviors/registry/app/atoms/std-health-score.orb +368 -371
  19. package/behaviors/registry/app/atoms/std-help-article.orb +373 -506
  20. package/behaviors/registry/app/atoms/std-help-category.orb +344 -359
  21. package/behaviors/registry/app/atoms/std-interview-slot.orb +490 -48
  22. package/behaviors/registry/app/atoms/std-invoice.orb +494 -291
  23. package/behaviors/registry/app/atoms/std-kitchen-display.orb +588 -96
  24. package/behaviors/registry/app/atoms/std-lease.orb +506 -190
  25. package/behaviors/registry/app/atoms/std-ledger-entry.orb +483 -154
  26. package/behaviors/registry/app/atoms/std-maintenance-request.orb +642 -192
  27. package/behaviors/registry/app/atoms/std-matter.orb +486 -318
  28. package/behaviors/registry/app/atoms/std-membership.orb +512 -102
  29. package/behaviors/registry/app/atoms/std-menu.orb +775 -183
  30. package/behaviors/registry/app/atoms/std-modifier-group.orb +522 -104
  31. package/behaviors/registry/app/atoms/std-nps-survey.orb +319 -327
  32. package/behaviors/registry/app/atoms/std-offer-letter.orb +497 -47
  33. package/behaviors/registry/app/atoms/std-payout-ledger.orb +378 -362
  34. package/behaviors/registry/app/atoms/std-question-bank.orb +379 -346
  35. package/behaviors/registry/app/atoms/std-receipt.orb +553 -44
  36. package/behaviors/registry/app/atoms/std-recurring-charge.orb +419 -832
  37. package/behaviors/registry/app/atoms/std-renewal-risk.orb +370 -421
  38. package/behaviors/registry/app/atoms/std-rent-charge.orb +657 -55
  39. package/behaviors/registry/app/atoms/std-reorder-rule.orb +510 -59
  40. package/behaviors/registry/app/atoms/std-response-collector.orb +451 -144
  41. package/behaviors/registry/app/atoms/std-rfi.orb +502 -461
  42. package/behaviors/registry/app/atoms/std-route-optimize.orb +448 -158
  43. package/behaviors/registry/app/atoms/std-segment.orb +360 -98
  44. package/behaviors/registry/app/atoms/std-stock-level.orb +486 -103
  45. package/behaviors/registry/app/atoms/std-submittal.orb +538 -526
  46. package/behaviors/registry/app/atoms/std-table-map.orb +88 -51
  47. package/behaviors/registry/app/atoms/std-technician-dispatch.orb +653 -71
  48. package/behaviors/registry/app/atoms/std-telematics-event.orb +310 -215
  49. package/behaviors/registry/app/atoms/std-template-editor.orb +513 -90
  50. package/behaviors/registry/app/atoms/std-tenant.orb +525 -66
  51. package/behaviors/registry/app/atoms/std-ticket-tier.orb +472 -460
  52. package/behaviors/registry/app/atoms/std-time-entry.orb +354 -317
  53. package/behaviors/registry/app/atoms/std-timesheet.orb +551 -284
  54. package/behaviors/registry/app/atoms/std-trial.orb +410 -317
  55. package/behaviors/registry/app/atoms/std-vehicle.orb +398 -563
  56. package/behaviors/registry/app/atoms/std-waitlist.orb +372 -283
  57. package/behaviors/registry/app/atoms/std-warehouse.orb +273 -214
  58. package/behaviors/registry/app/atoms/std-work-order.orb +628 -240
  59. package/behaviors/registry/app/molecules/std-applicant-form.orb +89 -83
  60. package/behaviors/registry/app/molecules/std-application.orb +178 -263
  61. package/behaviors/registry/app/molecules/std-broadcast-builder.orb +67 -176
  62. package/behaviors/registry/app/molecules/std-cart.orb +78 -72
  63. package/behaviors/registry/app/molecules/std-form-builder.orb +437 -176
  64. package/behaviors/registry/app/molecules/std-ledger-entry-form.orb +608 -89
  65. package/behaviors/registry/app/molecules/std-stock-adjustment.orb +501 -102
  66. package/behaviors/registry/app/molecules/std-vendor-onboarding.orb +383 -469
  67. package/behaviors/registry/core/atoms/std-billable-hour.orb +495 -91
  68. package/behaviors/registry/core/atoms/std-branching-logic.orb +271 -600
  69. package/behaviors/registry/core/atoms/std-file-store.orb +534 -164
  70. package/behaviors/registry/core/atoms/std-gallery.orb +118 -101
  71. package/behaviors/registry/core/atoms/std-image-upload-multi.orb +87 -57
  72. package/behaviors/registry/core/atoms/std-page-tree.orb +342 -484
  73. package/behaviors/registry/core/atoms/std-rich-editor.orb +288 -416
  74. package/behaviors/registry/core/atoms/std-version-history.orb +454 -430
  75. package/behaviors/registry/core/molecules/std-wizard-form.orb +222 -147
  76. package/dist/behaviors/registry/app/atoms/std-applicant.orb +496 -42
  77. package/dist/behaviors/registry/app/atoms/std-approval-request.orb +433 -593
  78. package/dist/behaviors/registry/app/atoms/std-campaign-goal.orb +438 -228
  79. package/dist/behaviors/registry/app/atoms/std-change-order.orb +565 -307
  80. package/dist/behaviors/registry/app/atoms/std-chart-of-accounts.orb +434 -97
  81. package/dist/behaviors/registry/app/atoms/std-checkin.orb +434 -270
  82. package/dist/behaviors/registry/app/atoms/std-class-roster.orb +495 -61
  83. package/dist/behaviors/registry/app/atoms/std-class-session.orb +485 -104
  84. package/dist/behaviors/registry/app/atoms/std-court-deadline.orb +519 -88
  85. package/dist/behaviors/registry/app/atoms/std-customer-account.orb +577 -97
  86. package/dist/behaviors/registry/app/atoms/std-donation-receipt.orb +498 -55
  87. package/dist/behaviors/registry/app/atoms/std-donor.orb +445 -135
  88. package/dist/behaviors/registry/app/atoms/std-drip-sequence.orb +445 -62
  89. package/dist/behaviors/registry/app/atoms/std-driver.orb +465 -480
  90. package/dist/behaviors/registry/app/atoms/std-dunning.orb +450 -512
  91. package/dist/behaviors/registry/app/atoms/std-email-broadcast.orb +517 -64
  92. package/dist/behaviors/registry/app/atoms/std-event.orb +465 -667
  93. package/dist/behaviors/registry/app/atoms/std-health-score.orb +368 -371
  94. package/dist/behaviors/registry/app/atoms/std-help-article.orb +373 -506
  95. package/dist/behaviors/registry/app/atoms/std-help-category.orb +344 -359
  96. package/dist/behaviors/registry/app/atoms/std-interview-slot.orb +490 -48
  97. package/dist/behaviors/registry/app/atoms/std-invoice.orb +494 -291
  98. package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +588 -96
  99. package/dist/behaviors/registry/app/atoms/std-lease.orb +506 -190
  100. package/dist/behaviors/registry/app/atoms/std-ledger-entry.orb +483 -154
  101. package/dist/behaviors/registry/app/atoms/std-maintenance-request.orb +642 -192
  102. package/dist/behaviors/registry/app/atoms/std-matter.orb +486 -318
  103. package/dist/behaviors/registry/app/atoms/std-membership.orb +512 -102
  104. package/dist/behaviors/registry/app/atoms/std-menu.orb +775 -183
  105. package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +522 -104
  106. package/dist/behaviors/registry/app/atoms/std-nps-survey.orb +319 -327
  107. package/dist/behaviors/registry/app/atoms/std-offer-letter.orb +497 -47
  108. package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +378 -362
  109. package/dist/behaviors/registry/app/atoms/std-question-bank.orb +379 -346
  110. package/dist/behaviors/registry/app/atoms/std-receipt.orb +553 -44
  111. package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +419 -832
  112. package/dist/behaviors/registry/app/atoms/std-renewal-risk.orb +370 -421
  113. package/dist/behaviors/registry/app/atoms/std-rent-charge.orb +657 -55
  114. package/dist/behaviors/registry/app/atoms/std-reorder-rule.orb +510 -59
  115. package/dist/behaviors/registry/app/atoms/std-response-collector.orb +451 -144
  116. package/dist/behaviors/registry/app/atoms/std-rfi.orb +502 -461
  117. package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +448 -158
  118. package/dist/behaviors/registry/app/atoms/std-segment.orb +360 -98
  119. package/dist/behaviors/registry/app/atoms/std-stock-level.orb +486 -103
  120. package/dist/behaviors/registry/app/atoms/std-submittal.orb +538 -526
  121. package/dist/behaviors/registry/app/atoms/std-table-map.orb +88 -51
  122. package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +653 -71
  123. package/dist/behaviors/registry/app/atoms/std-telematics-event.orb +310 -215
  124. package/dist/behaviors/registry/app/atoms/std-template-editor.orb +513 -90
  125. package/dist/behaviors/registry/app/atoms/std-tenant.orb +525 -66
  126. package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +472 -460
  127. package/dist/behaviors/registry/app/atoms/std-time-entry.orb +354 -317
  128. package/dist/behaviors/registry/app/atoms/std-timesheet.orb +551 -284
  129. package/dist/behaviors/registry/app/atoms/std-trial.orb +410 -317
  130. package/dist/behaviors/registry/app/atoms/std-vehicle.orb +398 -563
  131. package/dist/behaviors/registry/app/atoms/std-waitlist.orb +372 -283
  132. package/dist/behaviors/registry/app/atoms/std-warehouse.orb +273 -214
  133. package/dist/behaviors/registry/app/atoms/std-work-order.orb +628 -240
  134. package/dist/behaviors/registry/app/molecules/std-applicant-form.orb +89 -83
  135. package/dist/behaviors/registry/app/molecules/std-application.orb +178 -263
  136. package/dist/behaviors/registry/app/molecules/std-broadcast-builder.orb +67 -176
  137. package/dist/behaviors/registry/app/molecules/std-cart.orb +78 -72
  138. package/dist/behaviors/registry/app/molecules/std-form-builder.orb +437 -176
  139. package/dist/behaviors/registry/app/molecules/std-ledger-entry-form.orb +608 -89
  140. package/dist/behaviors/registry/app/molecules/std-stock-adjustment.orb +501 -102
  141. package/dist/behaviors/registry/app/molecules/std-vendor-onboarding.orb +383 -469
  142. package/dist/behaviors/registry/core/atoms/std-billable-hour.orb +495 -91
  143. package/dist/behaviors/registry/core/atoms/std-branching-logic.orb +271 -600
  144. package/dist/behaviors/registry/core/atoms/std-file-store.orb +534 -164
  145. package/dist/behaviors/registry/core/atoms/std-gallery.orb +118 -101
  146. package/dist/behaviors/registry/core/atoms/std-image-upload-multi.orb +87 -57
  147. package/dist/behaviors/registry/core/atoms/std-page-tree.orb +342 -484
  148. package/dist/behaviors/registry/core/atoms/std-rich-editor.orb +288 -416
  149. package/dist/behaviors/registry/core/atoms/std-version-history.orb +454 -430
  150. package/dist/behaviors/registry/core/molecules/std-wizard-form.orb +222 -147
  151. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "std-rfi",
3
3
  "version": "1.0.0",
4
- "description": "std-rfi — Request For Information primitive tracking formal questions raised during construction with response and deadline.",
4
+ "description": "std-rfi — Request For Information primitive for construction projects. Lists RFIs in `browsing`; opens detail in `viewing_single` with Submit / Answer / Close actions.",
5
5
  "orbitals": [
6
6
  {
7
7
  "name": "RfiOrbital",
@@ -85,58 +85,7 @@
85
85
  "linkedEntity": "Rfi",
86
86
  "emits": [
87
87
  {
88
- "event": "VIEW",
89
- "payloadSchema": [
90
- {
91
- "name": "id",
92
- "type": "string",
93
- "required": true
94
- },
95
- {
96
- "name": "source",
97
- "type": "string"
98
- }
99
- ]
100
- },
101
- {
102
- "event": "EDIT",
103
- "payloadSchema": [
104
- {
105
- "name": "id",
106
- "type": "string",
107
- "required": true
108
- },
109
- {
110
- "name": "source",
111
- "type": "string"
112
- }
113
- ]
114
- },
115
- {
116
- "event": "CREATE",
117
- "payloadSchema": [
118
- {
119
- "name": "source",
120
- "type": "string"
121
- }
122
- ]
123
- },
124
- {
125
- "event": "REQUEST_DELETE",
126
- "payloadSchema": [
127
- {
128
- "name": "id",
129
- "type": "string",
130
- "required": true
131
- },
132
- {
133
- "name": "source",
134
- "type": "string"
135
- }
136
- ]
137
- },
138
- {
139
- "event": "SUBMIT",
88
+ "event": "OPEN_RFI",
140
89
  "payloadSchema": [
141
90
  {
142
91
  "name": "id",
@@ -197,63 +146,25 @@
197
146
  ]
198
147
  },
199
148
  {
200
- "event": "ANSWER",
149
+ "event": "CLOSE_VIEW"
150
+ },
151
+ {
152
+ "event": "SUBMIT",
201
153
  "payloadSchema": [
202
154
  {
203
155
  "name": "id",
204
156
  "type": "string",
205
157
  "required": true
206
- },
207
- {
208
- "name": "row.id",
209
- "type": "string",
210
- "required": true
211
- },
212
- {
213
- "name": "row.rfiNumber",
214
- "type": "string",
215
- "required": true
216
- },
158
+ }
159
+ ]
160
+ },
161
+ {
162
+ "event": "ANSWER",
163
+ "payloadSchema": [
217
164
  {
218
- "name": "row.subject",
165
+ "name": "id",
219
166
  "type": "string",
220
167
  "required": true
221
- },
222
- {
223
- "name": "row.question",
224
- "type": "string"
225
- },
226
- {
227
- "name": "row.response",
228
- "type": "string"
229
- },
230
- {
231
- "name": "row.status",
232
- "type": "string"
233
- },
234
- {
235
- "name": "row.raisedBy",
236
- "type": "string"
237
- },
238
- {
239
- "name": "row.assignedTo",
240
- "type": "string"
241
- },
242
- {
243
- "name": "row.raisedAt",
244
- "type": "string"
245
- },
246
- {
247
- "name": "row.dueAt",
248
- "type": "string"
249
- },
250
- {
251
- "name": "row.answeredAt",
252
- "type": "string"
253
- },
254
- {
255
- "name": "row.pendingId",
256
- "type": "string"
257
168
  }
258
169
  ]
259
170
  },
@@ -264,57 +175,6 @@
264
175
  "name": "id",
265
176
  "type": "string",
266
177
  "required": true
267
- },
268
- {
269
- "name": "row.id",
270
- "type": "string",
271
- "required": true
272
- },
273
- {
274
- "name": "row.rfiNumber",
275
- "type": "string",
276
- "required": true
277
- },
278
- {
279
- "name": "row.subject",
280
- "type": "string",
281
- "required": true
282
- },
283
- {
284
- "name": "row.question",
285
- "type": "string"
286
- },
287
- {
288
- "name": "row.response",
289
- "type": "string"
290
- },
291
- {
292
- "name": "row.status",
293
- "type": "string"
294
- },
295
- {
296
- "name": "row.raisedBy",
297
- "type": "string"
298
- },
299
- {
300
- "name": "row.assignedTo",
301
- "type": "string"
302
- },
303
- {
304
- "name": "row.raisedAt",
305
- "type": "string"
306
- },
307
- {
308
- "name": "row.dueAt",
309
- "type": "string"
310
- },
311
- {
312
- "name": "row.answeredAt",
313
- "type": "string"
314
- },
315
- {
316
- "name": "row.pendingId",
317
- "type": "string"
318
178
  }
319
179
  ]
320
180
  },
@@ -352,7 +212,10 @@
352
212
  "isInitial": true
353
213
  },
354
214
  {
355
- "name": "viewing"
215
+ "name": "browsing"
216
+ },
217
+ {
218
+ "name": "viewing_single"
356
219
  },
357
220
  {
358
221
  "name": "error"
@@ -392,32 +255,17 @@
392
255
  ]
393
256
  },
394
257
  {
395
- "key": "REFRESH",
396
- "name": "Refresh",
397
- "payloadSchema": [
398
- {
399
- "name": "source",
400
- "type": "string"
401
- }
402
- ]
403
- },
404
- {
405
- "key": "SEARCH",
406
- "name": "Search",
258
+ "key": "OPEN_RFI",
259
+ "name": "Open Rfi",
407
260
  "payloadSchema": [
408
261
  {
409
- "name": "query",
410
- "type": "string"
411
- }
412
- ]
413
- },
414
- {
415
- "key": "FILTER_STATUS",
416
- "name": "Filter Status",
417
- "payloadSchema": [
262
+ "name": "id",
263
+ "type": "string",
264
+ "required": true
265
+ },
418
266
  {
419
- "name": "status",
420
- "type": "string"
267
+ "name": "row",
268
+ "type": "Rfi"
421
269
  }
422
270
  ]
423
271
  },
@@ -455,47 +303,8 @@
455
303
  ]
456
304
  },
457
305
  {
458
- "key": "CREATE",
459
- "name": "Create",
460
- "payloadSchema": [
461
- {
462
- "name": "source",
463
- "type": "string"
464
- }
465
- ]
466
- },
467
- {
468
- "key": "VIEW",
469
- "name": "View",
470
- "payloadSchema": [
471
- {
472
- "name": "id",
473
- "type": "string",
474
- "required": true
475
- }
476
- ]
477
- },
478
- {
479
- "key": "EDIT",
480
- "name": "Edit",
481
- "payloadSchema": [
482
- {
483
- "name": "id",
484
- "type": "string",
485
- "required": true
486
- }
487
- ]
488
- },
489
- {
490
- "key": "REQUEST_DELETE",
491
- "name": "Request Delete",
492
- "payloadSchema": [
493
- {
494
- "name": "id",
495
- "type": "string",
496
- "required": true
497
- }
498
- ]
306
+ "key": "CLOSE_VIEW",
307
+ "name": "Close View"
499
308
  }
500
309
  ],
501
310
  "transitions": [
@@ -518,6 +327,9 @@
518
327
  "render-ui",
519
328
  "main",
520
329
  {
330
+ "type": "stack",
331
+ "align": "center",
332
+ "gap": "md",
521
333
  "direction": "vertical",
522
334
  "children": [
523
335
  {
@@ -525,181 +337,133 @@
525
337
  },
526
338
  {
527
339
  "type": "typography",
528
- "variant": "caption",
529
340
  "color": "muted",
341
+ "variant": "caption",
530
342
  "content": "Loading RFIs…"
531
343
  }
532
344
  ],
533
- "type": "stack",
534
- "align": "center",
535
- "className": "py-12",
536
- "gap": "md"
345
+ "className": "py-12"
537
346
  }
538
347
  ]
539
348
  ]
540
349
  },
541
350
  {
542
351
  "from": "loading",
543
- "to": "viewing",
352
+ "to": "browsing",
544
353
  "event": "RfiLoaded",
545
354
  "effects": [
546
355
  [
547
356
  "render-ui",
548
357
  "main",
549
358
  {
550
- "gap": "md",
551
- "direction": "vertical",
552
359
  "type": "stack",
553
360
  "children": [
554
361
  {
362
+ "gap": "sm",
363
+ "type": "stack",
364
+ "direction": "horizontal",
365
+ "align": "center",
555
366
  "children": [
556
367
  {
557
368
  "type": "icon",
558
369
  "name": "help-circle"
559
370
  },
560
371
  {
561
- "variant": "h3",
562
372
  "type": "typography",
563
- "content": "@config.title"
373
+ "content": "@config.title",
374
+ "variant": "h3"
375
+ }
376
+ ]
377
+ },
378
+ {
379
+ "children": [
380
+ {
381
+ "type": "stat-display",
382
+ "icon": "help-circle",
383
+ "value": "@payload.data.length",
384
+ "label": "Total RFIs"
564
385
  },
565
386
  {
566
- "type": "badge",
387
+ "value": "18",
388
+ "type": "stat-display",
567
389
  "label": "Open",
568
- "variant": "warning"
390
+ "icon": "mail"
569
391
  },
570
392
  {
571
- "type": "button",
572
- "label": "New RFI",
573
- "action": "CREATE",
574
- "variant": "primary"
393
+ "icon": "alert-triangle",
394
+ "label": "Overdue",
395
+ "value": "5",
396
+ "type": "stat-display"
397
+ },
398
+ {
399
+ "label": "Avg response",
400
+ "icon": "clock",
401
+ "value": "3.2d",
402
+ "type": "stat-display"
575
403
  }
576
404
  ],
577
- "gap": "sm",
578
- "align": "center",
579
- "direction": "horizontal",
580
- "type": "stack"
581
- },
582
- {
583
- "type": "divider"
584
- },
585
- {
586
- "type": "master-detail-layout",
587
- "master": {
588
- "entity": "@payload.data",
589
- "type": "data-grid",
590
- "fields": [
591
- {
592
- "label": "RFI #",
593
- "name": "rfiNumber",
594
- "variant": "caption"
595
- },
596
- {
597
- "variant": "caption",
598
- "name": "subject",
599
- "label": "Subject"
600
- },
601
- {
602
- "variant": "badge",
603
- "label": "Status",
604
- "name": "status"
605
- },
606
- {
607
- "name": "raisedBy",
608
- "label": "Raised By",
609
- "variant": "caption"
610
- },
611
- {
612
- "variant": "caption",
613
- "label": "Due",
614
- "name": "dueAt"
615
- }
616
- ],
617
- "gap": "sm",
618
- "cols": 1.0,
619
- "itemActions": [
620
- {
621
- "label": "View",
622
- "variant": "secondary",
623
- "event": "VIEW"
624
- },
625
- {
626
- "event": "EDIT",
627
- "variant": "secondary",
628
- "label": "Edit"
629
- },
630
- {
631
- "label": "Submit",
632
- "event": "SUBMIT",
633
- "variant": "primary"
634
- },
635
- {
636
- "variant": "primary",
637
- "event": "ANSWER",
638
- "label": "Answer"
639
- },
640
- {
641
- "event": "CLOSE",
642
- "variant": "ghost",
643
- "label": "Close"
644
- },
645
- {
646
- "label": "Delete",
647
- "event": "REQUEST_DELETE",
648
- "variant": "danger"
649
- }
650
- ]
651
- },
652
- "detail": {
653
- "direction": "vertical",
654
- "children": [
655
- {
656
- "variant": "h4",
657
- "content": "RFI Detail",
658
- "type": "typography"
659
- },
660
- {
661
- "type": "stack",
662
- "direction": "horizontal",
663
- "children": [
664
- {
665
- "label": "Closed",
666
- "variant": "success",
667
- "type": "badge"
668
- },
669
- {
670
- "label": "Resolved",
671
- "variant": "primary",
672
- "type": "badge"
673
- }
674
- ],
675
- "gap": "sm",
676
- "align": "center"
677
- },
678
- {
679
- "color": "muted",
680
- "content": "Select an RFI to view question, response, and audit trail.",
681
- "variant": "caption",
682
- "type": "typography"
683
- }
684
- ],
685
- "type": "stack",
686
- "gap": "sm"
687
- }
405
+ "cols": 4.0,
406
+ "type": "simple-grid"
688
407
  },
689
408
  {
690
409
  "type": "divider"
691
410
  },
692
411
  {
693
- "variant": "h4",
694
- "type": "typography",
695
- "content": "Deadline Calendar"
696
- },
697
- {
698
- "type": "calendar-grid"
699
- }
700
- ]
701
- }
702
- ]
412
+ "itemActions": [
413
+ {
414
+ "label": "Open",
415
+ "icon": "arrow-right",
416
+ "event": "OPEN_RFI",
417
+ "variant": "primary"
418
+ },
419
+ {
420
+ "event": "CLOSE",
421
+ "variant": "danger",
422
+ "label": "Close"
423
+ }
424
+ ],
425
+ "gap": "sm",
426
+ "entity": "@payload.data",
427
+ "fields": [
428
+ {
429
+ "name": "rfiNumber",
430
+ "variant": "caption",
431
+ "label": "RFI #"
432
+ },
433
+ {
434
+ "label": "Subject",
435
+ "name": "subject",
436
+ "variant": "caption"
437
+ },
438
+ {
439
+ "name": "status",
440
+ "label": "Status",
441
+ "variant": "badge"
442
+ },
443
+ {
444
+ "name": "raisedBy",
445
+ "label": "Raised By",
446
+ "variant": "caption"
447
+ },
448
+ {
449
+ "label": "Assigned",
450
+ "variant": "caption",
451
+ "name": "assignedTo"
452
+ },
453
+ {
454
+ "variant": "caption",
455
+ "label": "Due",
456
+ "name": "dueAt"
457
+ }
458
+ ],
459
+ "cols": 1.0,
460
+ "type": "data-grid"
461
+ }
462
+ ],
463
+ "gap": "md",
464
+ "direction": "vertical"
465
+ }
466
+ ]
703
467
  ]
704
468
  },
705
469
  {
@@ -711,18 +475,256 @@
711
475
  "render-ui",
712
476
  "main",
713
477
  {
714
- "variant": "error",
478
+ "message": "@payload.error",
715
479
  "type": "alert",
716
- "message": "@payload.error"
480
+ "variant": "error"
481
+ }
482
+ ]
483
+ ]
484
+ },
485
+ {
486
+ "from": "browsing",
487
+ "to": "viewing_single",
488
+ "event": "OPEN_RFI",
489
+ "effects": [
490
+ [
491
+ "set",
492
+ "@entity.id",
493
+ "@payload.row.id"
494
+ ],
495
+ [
496
+ "set",
497
+ "@entity.rfiNumber",
498
+ "@payload.row.rfiNumber"
499
+ ],
500
+ [
501
+ "set",
502
+ "@entity.subject",
503
+ "@payload.row.subject"
504
+ ],
505
+ [
506
+ "set",
507
+ "@entity.question",
508
+ "@payload.row.question"
509
+ ],
510
+ [
511
+ "set",
512
+ "@entity.response",
513
+ "@payload.row.response"
514
+ ],
515
+ [
516
+ "set",
517
+ "@entity.status",
518
+ "@payload.row.status"
519
+ ],
520
+ [
521
+ "set",
522
+ "@entity.raisedBy",
523
+ "@payload.row.raisedBy"
524
+ ],
525
+ [
526
+ "set",
527
+ "@entity.assignedTo",
528
+ "@payload.row.assignedTo"
529
+ ],
530
+ [
531
+ "set",
532
+ "@entity.raisedAt",
533
+ "@payload.row.raisedAt"
534
+ ],
535
+ [
536
+ "set",
537
+ "@entity.dueAt",
538
+ "@payload.row.dueAt"
539
+ ],
540
+ [
541
+ "set",
542
+ "@entity.answeredAt",
543
+ "@payload.row.answeredAt"
544
+ ],
545
+ [
546
+ "render-ui",
547
+ "main",
548
+ {
549
+ "gap": "md",
550
+ "type": "stack",
551
+ "direction": "vertical",
552
+ "children": [
553
+ {
554
+ "direction": "horizontal",
555
+ "children": [
556
+ {
557
+ "type": "button",
558
+ "variant": "ghost",
559
+ "action": "CLOSE_VIEW",
560
+ "label": "Back"
561
+ },
562
+ {
563
+ "name": "help-circle",
564
+ "type": "icon"
565
+ },
566
+ {
567
+ "content": "@entity.subject",
568
+ "variant": "h3",
569
+ "type": "typography"
570
+ },
571
+ {
572
+ "variant": "default",
573
+ "label": "@entity.status",
574
+ "type": "badge"
575
+ }
576
+ ],
577
+ "type": "stack",
578
+ "gap": "sm",
579
+ "align": "center"
580
+ },
581
+ {
582
+ "type": "divider"
583
+ },
584
+ {
585
+ "children": [
586
+ {
587
+ "direction": "horizontal",
588
+ "gap": "md",
589
+ "type": "stack",
590
+ "children": [
591
+ {
592
+ "content": "RFI #",
593
+ "variant": "caption",
594
+ "color": "muted",
595
+ "type": "typography"
596
+ },
597
+ {
598
+ "content": "@entity.rfiNumber",
599
+ "type": "typography",
600
+ "variant": "body"
601
+ }
602
+ ]
603
+ },
604
+ {
605
+ "gap": "md",
606
+ "type": "stack",
607
+ "direction": "horizontal",
608
+ "children": [
609
+ {
610
+ "content": "Question",
611
+ "type": "typography",
612
+ "color": "muted",
613
+ "variant": "caption"
614
+ },
615
+ {
616
+ "type": "typography",
617
+ "variant": "body",
618
+ "content": "@entity.question"
619
+ }
620
+ ]
621
+ },
622
+ {
623
+ "children": [
624
+ {
625
+ "type": "typography",
626
+ "content": "Response",
627
+ "color": "muted",
628
+ "variant": "caption"
629
+ },
630
+ {
631
+ "content": "@entity.response",
632
+ "variant": "body",
633
+ "type": "typography"
634
+ }
635
+ ],
636
+ "type": "stack",
637
+ "gap": "md",
638
+ "direction": "horizontal"
639
+ }
640
+ ],
641
+ "gap": "sm",
642
+ "type": "stack",
643
+ "direction": "vertical"
644
+ },
645
+ {
646
+ "type": "divider"
647
+ },
648
+ {
649
+ "children": [
650
+ {
651
+ "type": "stat-display",
652
+ "value": "@entity.raisedBy",
653
+ "icon": "user",
654
+ "label": "Raised by"
655
+ },
656
+ {
657
+ "label": "Assigned",
658
+ "type": "stat-display",
659
+ "icon": "user-check",
660
+ "value": "@entity.assignedTo"
661
+ },
662
+ {
663
+ "icon": "calendar",
664
+ "type": "stat-display",
665
+ "label": "Due",
666
+ "value": "@entity.dueAt"
667
+ },
668
+ {
669
+ "type": "stat-display",
670
+ "value": "@entity.answeredAt",
671
+ "label": "Answered",
672
+ "icon": "check-circle"
673
+ }
674
+ ],
675
+ "type": "simple-grid",
676
+ "cols": 4.0
677
+ },
678
+ {
679
+ "align": "center",
680
+ "type": "stack",
681
+ "gap": "sm",
682
+ "direction": "horizontal",
683
+ "children": [
684
+ {
685
+ "variant": "primary",
686
+ "action": "SUBMIT",
687
+ "actionPayload": {
688
+ "id": "@entity.id"
689
+ },
690
+ "type": "button",
691
+ "label": "Submit"
692
+ },
693
+ {
694
+ "type": "button",
695
+ "action": "ANSWER",
696
+ "label": "Answer",
697
+ "actionPayload": {
698
+ "id": "@entity.id"
699
+ },
700
+ "variant": "secondary"
701
+ },
702
+ {
703
+ "variant": "danger",
704
+ "actionPayload": {
705
+ "id": "@entity.id"
706
+ },
707
+ "label": "Close",
708
+ "action": "CLOSE",
709
+ "type": "button"
710
+ }
711
+ ]
712
+ }
713
+ ]
717
714
  }
718
715
  ]
719
716
  ]
720
717
  },
721
718
  {
722
- "from": "viewing",
719
+ "from": "browsing",
723
720
  "to": "loading",
724
- "event": "REFRESH",
721
+ "event": "SUBMIT",
725
722
  "effects": [
723
+ [
724
+ "set",
725
+ "@entity.id",
726
+ "@payload.id"
727
+ ],
726
728
  [
727
729
  "fetch",
728
730
  "Rfi",
@@ -737,38 +739,43 @@
737
739
  "render-ui",
738
740
  "main",
739
741
  {
742
+ "type": "stack",
740
743
  "children": [
741
744
  {
742
745
  "type": "spinner"
743
746
  },
744
747
  {
745
- "variant": "caption",
746
- "content": "Refreshing RFIs…",
747
748
  "type": "typography",
748
- "color": "muted"
749
+ "color": "muted",
750
+ "content": "Submitting RFI…",
751
+ "variant": "caption"
749
752
  }
750
753
  ],
751
- "type": "stack",
752
754
  "align": "center",
753
755
  "direction": "vertical",
754
- "className": "py-12",
755
- "gap": "md"
756
+ "gap": "md",
757
+ "className": "py-12"
756
758
  }
757
759
  ]
758
760
  ]
759
761
  },
760
762
  {
761
- "from": "viewing",
763
+ "from": "browsing",
762
764
  "to": "loading",
763
- "event": "SEARCH",
765
+ "event": "ANSWER",
764
766
  "effects": [
767
+ [
768
+ "set",
769
+ "@entity.id",
770
+ "@payload.id"
771
+ ],
765
772
  [
766
773
  "fetch",
767
774
  "Rfi",
768
775
  {
769
776
  "emit": {
770
- "failure": "RfiLoadFailed",
771
- "success": "RfiLoaded"
777
+ "success": "RfiLoaded",
778
+ "failure": "RfiLoadFailed"
772
779
  }
773
780
  }
774
781
  ],
@@ -776,38 +783,43 @@
776
783
  "render-ui",
777
784
  "main",
778
785
  {
779
- "direction": "vertical",
780
786
  "gap": "md",
787
+ "align": "center",
788
+ "className": "py-12",
781
789
  "children": [
782
790
  {
783
791
  "type": "spinner"
784
792
  },
785
793
  {
786
794
  "variant": "caption",
787
- "content": "Searching RFIs…",
795
+ "color": "muted",
788
796
  "type": "typography",
789
- "color": "muted"
797
+ "content": "Answering RFI…"
790
798
  }
791
799
  ],
792
- "align": "center",
793
- "className": "py-12",
794
- "type": "stack"
800
+ "type": "stack",
801
+ "direction": "vertical"
795
802
  }
796
803
  ]
797
804
  ]
798
805
  },
799
806
  {
800
- "from": "viewing",
807
+ "from": "browsing",
801
808
  "to": "loading",
802
- "event": "FILTER_STATUS",
809
+ "event": "CLOSE",
803
810
  "effects": [
811
+ [
812
+ "set",
813
+ "@entity.id",
814
+ "@payload.id"
815
+ ],
804
816
  [
805
817
  "fetch",
806
818
  "Rfi",
807
819
  {
808
820
  "emit": {
809
- "success": "RfiLoaded",
810
- "failure": "RfiLoadFailed"
821
+ "failure": "RfiLoadFailed",
822
+ "success": "RfiLoaded"
811
823
  }
812
824
  }
813
825
  ],
@@ -816,71 +828,68 @@
816
828
  "main",
817
829
  {
818
830
  "type": "stack",
819
- "className": "py-12",
820
831
  "children": [
821
832
  {
822
833
  "type": "spinner"
823
834
  },
824
835
  {
825
- "type": "typography",
826
- "content": "Filtering RFIs…",
827
836
  "color": "muted",
828
- "variant": "caption"
837
+ "variant": "caption",
838
+ "content": "Closing RFI…",
839
+ "type": "typography"
829
840
  }
830
841
  ],
831
- "gap": "md",
842
+ "align": "center",
843
+ "className": "py-12",
832
844
  "direction": "vertical",
833
- "align": "center"
845
+ "gap": "md"
834
846
  }
835
847
  ]
836
848
  ]
837
849
  },
838
850
  {
839
- "from": "viewing",
840
- "to": "viewing",
841
- "event": "SUBMIT",
851
+ "from": "viewing_single",
852
+ "to": "loading",
853
+ "event": "CLOSE_VIEW",
842
854
  "effects": [
843
855
  [
844
- "set",
845
- "@entity.id",
846
- "@payload.id"
847
- ],
848
- [
849
- "render-ui",
850
- "main",
856
+ "fetch",
857
+ "Rfi",
851
858
  {
852
- "message": "RFI submitted",
853
- "type": "alert",
854
- "variant": "success"
859
+ "emit": {
860
+ "success": "RfiLoaded",
861
+ "failure": "RfiLoadFailed"
862
+ }
855
863
  }
856
- ]
857
- ]
858
- },
859
- {
860
- "from": "viewing",
861
- "to": "viewing",
862
- "event": "ANSWER",
863
- "effects": [
864
- [
865
- "set",
866
- "@entity.id",
867
- "@payload.id"
868
864
  ],
869
865
  [
870
866
  "render-ui",
871
867
  "main",
872
868
  {
873
- "type": "alert",
874
- "variant": "success",
875
- "message": "RFI answered"
869
+ "type": "stack",
870
+ "direction": "vertical",
871
+ "align": "center",
872
+ "children": [
873
+ {
874
+ "type": "spinner"
875
+ },
876
+ {
877
+ "color": "muted",
878
+ "type": "typography",
879
+ "variant": "caption",
880
+ "content": "Loading RFIs…"
881
+ }
882
+ ],
883
+ "className": "py-12",
884
+ "gap": "md"
876
885
  }
877
886
  ]
878
887
  ]
879
888
  },
880
889
  {
881
- "from": "viewing",
882
- "to": "viewing",
883
- "event": "CLOSE",
890
+ "from": "viewing_single",
891
+ "to": "loading",
892
+ "event": "SUBMIT",
884
893
  "effects": [
885
894
  [
886
895
  "set",
@@ -888,36 +897,43 @@
888
897
  "@payload.id"
889
898
  ],
890
899
  [
891
- "render-ui",
892
- "main",
900
+ "fetch",
901
+ "Rfi",
893
902
  {
894
- "variant": "info",
895
- "type": "alert",
896
- "message": "RFI closed"
903
+ "emit": {
904
+ "success": "RfiLoaded",
905
+ "failure": "RfiLoadFailed"
906
+ }
897
907
  }
898
- ]
899
- ]
900
- },
901
- {
902
- "from": "viewing",
903
- "to": "viewing",
904
- "event": "CREATE",
905
- "effects": [
908
+ ],
906
909
  [
907
910
  "render-ui",
908
911
  "main",
909
912
  {
910
- "variant": "info",
911
- "type": "alert",
912
- "message": "Creating new RFI"
913
+ "gap": "md",
914
+ "type": "stack",
915
+ "direction": "vertical",
916
+ "align": "center",
917
+ "children": [
918
+ {
919
+ "type": "spinner"
920
+ },
921
+ {
922
+ "variant": "caption",
923
+ "color": "muted",
924
+ "content": "Submitting RFI…",
925
+ "type": "typography"
926
+ }
927
+ ],
928
+ "className": "py-12"
913
929
  }
914
930
  ]
915
931
  ]
916
932
  },
917
933
  {
918
- "from": "viewing",
919
- "to": "viewing",
920
- "event": "VIEW",
934
+ "from": "viewing_single",
935
+ "to": "loading",
936
+ "event": "ANSWER",
921
937
  "effects": [
922
938
  [
923
939
  "set",
@@ -925,54 +941,79 @@
925
941
  "@payload.id"
926
942
  ],
927
943
  [
928
- "render-ui",
929
- "main",
944
+ "fetch",
945
+ "Rfi",
930
946
  {
931
- "type": "alert",
932
- "variant": "info",
933
- "message": "Viewing RFI"
947
+ "emit": {
948
+ "success": "RfiLoaded",
949
+ "failure": "RfiLoadFailed"
950
+ }
934
951
  }
935
- ]
936
- ]
937
- },
938
- {
939
- "from": "viewing",
940
- "to": "viewing",
941
- "event": "EDIT",
942
- "effects": [
943
- [
944
- "set",
945
- "@entity.id",
946
- "@payload.id"
947
952
  ],
948
953
  [
949
954
  "render-ui",
950
955
  "main",
951
956
  {
952
- "type": "alert",
953
- "variant": "info",
954
- "message": "Editing RFI"
957
+ "direction": "vertical",
958
+ "gap": "md",
959
+ "children": [
960
+ {
961
+ "type": "spinner"
962
+ },
963
+ {
964
+ "variant": "caption",
965
+ "color": "muted",
966
+ "content": "Answering RFI…",
967
+ "type": "typography"
968
+ }
969
+ ],
970
+ "type": "stack",
971
+ "className": "py-12",
972
+ "align": "center"
955
973
  }
956
974
  ]
957
975
  ]
958
976
  },
959
977
  {
960
- "from": "viewing",
961
- "to": "viewing",
962
- "event": "REQUEST_DELETE",
978
+ "from": "viewing_single",
979
+ "to": "loading",
980
+ "event": "CLOSE",
963
981
  "effects": [
964
982
  [
965
983
  "set",
966
984
  "@entity.id",
967
985
  "@payload.id"
968
986
  ],
987
+ [
988
+ "fetch",
989
+ "Rfi",
990
+ {
991
+ "emit": {
992
+ "success": "RfiLoaded",
993
+ "failure": "RfiLoadFailed"
994
+ }
995
+ }
996
+ ],
969
997
  [
970
998
  "render-ui",
971
999
  "main",
972
1000
  {
973
- "message": "Delete requested",
974
- "type": "alert",
975
- "variant": "warning"
1001
+ "children": [
1002
+ {
1003
+ "type": "spinner"
1004
+ },
1005
+ {
1006
+ "type": "typography",
1007
+ "content": "Closing RFI…",
1008
+ "color": "muted",
1009
+ "variant": "caption"
1010
+ }
1011
+ ],
1012
+ "type": "stack",
1013
+ "className": "py-12",
1014
+ "gap": "md",
1015
+ "align": "center",
1016
+ "direction": "vertical"
976
1017
  }
977
1018
  ]
978
1019
  ]