@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-submittal",
3
3
  "version": "1.0.0",
4
- "description": "std-submittal — construction submittal primitive tracking material/equipment samples reviewed and approved before installation.",
4
+ "description": "std-submittal — construction submittal primitive tracking material/equipment samples reviewed and approved before installation. Lists submittals in `browsing`; opens detail in `viewing_single` with Approve / Reject / Revise / Delete actions.",
5
5
  "orbitals": [
6
6
  {
7
7
  "name": "SubmittalOrbital",
@@ -87,7 +87,7 @@
87
87
  "linkedEntity": "Submittal",
88
88
  "emits": [
89
89
  {
90
- "event": "VIEW",
90
+ "event": "OPEN_SUBMITTAL",
91
91
  "payloadSchema": [
92
92
  {
93
93
  "name": "id",
@@ -148,71 +148,33 @@
148
148
  ]
149
149
  },
150
150
  {
151
- "event": "EDIT",
151
+ "event": "CLOSE_VIEW"
152
+ },
153
+ {
154
+ "event": "APPROVE",
152
155
  "payloadSchema": [
153
156
  {
154
157
  "name": "id",
155
158
  "type": "string",
156
159
  "required": true
157
- },
158
- {
159
- "name": "row.id",
160
- "type": "string",
161
- "required": true
162
- },
163
- {
164
- "name": "row.submittalNumber",
165
- "type": "string",
166
- "required": true
167
- },
168
- {
169
- "name": "row.specSection",
170
- "type": "string"
171
- },
160
+ }
161
+ ]
162
+ },
163
+ {
164
+ "event": "REJECT",
165
+ "payloadSchema": [
172
166
  {
173
- "name": "row.title",
167
+ "name": "id",
174
168
  "type": "string",
175
169
  "required": true
176
- },
177
- {
178
- "name": "row.contractor",
179
- "type": "string"
180
- },
181
- {
182
- "name": "row.reviewer",
183
- "type": "string"
184
- },
185
- {
186
- "name": "row.status",
187
- "type": "string"
188
- },
189
- {
190
- "name": "row.revisionNumber",
191
- "type": "number"
192
- },
193
- {
194
- "name": "row.submittedAt",
195
- "type": "string"
196
- },
197
- {
198
- "name": "row.reviewedAt",
199
- "type": "string"
200
- },
201
- {
202
- "name": "row.comments",
203
- "type": "string"
204
- },
205
- {
206
- "name": "row.pendingId",
207
- "type": "string"
208
170
  }
209
171
  ]
210
172
  },
211
173
  {
212
- "event": "CREATE",
174
+ "event": "REQUEST_REVISION",
213
175
  "payloadSchema": [
214
176
  {
215
- "name": "source",
177
+ "name": "id",
216
178
  "type": "string",
217
179
  "required": true
218
180
  }
@@ -225,57 +187,6 @@
225
187
  "name": "id",
226
188
  "type": "string",
227
189
  "required": true
228
- },
229
- {
230
- "name": "row.id",
231
- "type": "string",
232
- "required": true
233
- },
234
- {
235
- "name": "row.submittalNumber",
236
- "type": "string",
237
- "required": true
238
- },
239
- {
240
- "name": "row.specSection",
241
- "type": "string"
242
- },
243
- {
244
- "name": "row.title",
245
- "type": "string",
246
- "required": true
247
- },
248
- {
249
- "name": "row.contractor",
250
- "type": "string"
251
- },
252
- {
253
- "name": "row.reviewer",
254
- "type": "string"
255
- },
256
- {
257
- "name": "row.status",
258
- "type": "string"
259
- },
260
- {
261
- "name": "row.revisionNumber",
262
- "type": "number"
263
- },
264
- {
265
- "name": "row.submittedAt",
266
- "type": "string"
267
- },
268
- {
269
- "name": "row.reviewedAt",
270
- "type": "string"
271
- },
272
- {
273
- "name": "row.comments",
274
- "type": "string"
275
- },
276
- {
277
- "name": "row.pendingId",
278
- "type": "string"
279
190
  }
280
191
  ]
281
192
  },
@@ -313,7 +224,10 @@
313
224
  "isInitial": true
314
225
  },
315
226
  {
316
- "name": "viewing"
227
+ "name": "browsing"
228
+ },
229
+ {
230
+ "name": "viewing_single"
317
231
  },
318
232
  {
319
233
  "name": "error"
@@ -353,41 +267,23 @@
353
267
  ]
354
268
  },
355
269
  {
356
- "key": "SUBMIT",
357
- "name": "Submit",
358
- "payloadSchema": [
359
- {
360
- "name": "id",
361
- "type": "string",
362
- "required": true
363
- }
364
- ]
365
- },
366
- {
367
- "key": "APPROVE",
368
- "name": "Approve",
270
+ "key": "OPEN_SUBMITTAL",
271
+ "name": "Open Submittal",
369
272
  "payloadSchema": [
370
273
  {
371
274
  "name": "id",
372
275
  "type": "string",
373
276
  "required": true
374
- }
375
- ]
376
- },
377
- {
378
- "key": "REJECT",
379
- "name": "Reject",
380
- "payloadSchema": [
277
+ },
381
278
  {
382
- "name": "id",
383
- "type": "string",
384
- "required": true
279
+ "name": "row",
280
+ "type": "Submittal"
385
281
  }
386
282
  ]
387
283
  },
388
284
  {
389
- "key": "REQUEST_REVISION",
390
- "name": "Request Revision",
285
+ "key": "REQUEST_DELETE",
286
+ "name": "Request Delete",
391
287
  "payloadSchema": [
392
288
  {
393
289
  "name": "id",
@@ -397,45 +293,12 @@
397
293
  ]
398
294
  },
399
295
  {
400
- "key": "CREATE",
401
- "name": "Create",
402
- "payloadSchema": [
403
- {
404
- "name": "source",
405
- "type": "string",
406
- "required": true
407
- }
408
- ]
409
- },
410
- {
411
- "key": "REFRESH",
412
- "name": "Refresh"
413
- },
414
- {
415
- "key": "SEARCH",
416
- "name": "Search",
417
- "payloadSchema": [
418
- {
419
- "name": "query",
420
- "type": "string",
421
- "required": true
422
- }
423
- ]
424
- },
425
- {
426
- "key": "FILTER_STATUS",
427
- "name": "Filter Status",
428
- "payloadSchema": [
429
- {
430
- "name": "status",
431
- "type": "string",
432
- "required": true
433
- }
434
- ]
296
+ "key": "CLOSE_VIEW",
297
+ "name": "Close View"
435
298
  },
436
299
  {
437
- "key": "VIEW",
438
- "name": "View",
300
+ "key": "APPROVE",
301
+ "name": "Approve",
439
302
  "payloadSchema": [
440
303
  {
441
304
  "name": "id",
@@ -445,8 +308,8 @@
445
308
  ]
446
309
  },
447
310
  {
448
- "key": "EDIT",
449
- "name": "Edit",
311
+ "key": "REJECT",
312
+ "name": "Reject",
450
313
  "payloadSchema": [
451
314
  {
452
315
  "name": "id",
@@ -456,8 +319,8 @@
456
319
  ]
457
320
  },
458
321
  {
459
- "key": "REQUEST_DELETE",
460
- "name": "Request Delete",
322
+ "key": "REQUEST_REVISION",
323
+ "name": "Request Revision",
461
324
  "payloadSchema": [
462
325
  {
463
326
  "name": "id",
@@ -487,303 +350,141 @@
487
350
  "render-ui",
488
351
  "main",
489
352
  {
353
+ "type": "stack",
490
354
  "direction": "vertical",
355
+ "gap": "md",
491
356
  "align": "center",
492
- "type": "stack",
493
- "className": "py-12",
494
357
  "children": [
495
358
  {
496
359
  "type": "spinner"
497
360
  },
498
361
  {
362
+ "content": "Loading submittals…",
499
363
  "type": "typography",
500
364
  "variant": "caption",
501
- "content": "Loading submittals…",
502
365
  "color": "muted"
503
366
  }
504
367
  ],
505
- "gap": "md"
368
+ "className": "py-12"
506
369
  }
507
370
  ]
508
371
  ]
509
372
  },
510
373
  {
511
374
  "from": "loading",
512
- "to": "viewing",
375
+ "to": "browsing",
513
376
  "event": "SubmittalLoaded",
514
377
  "effects": [
515
378
  [
516
379
  "render-ui",
517
380
  "main",
518
381
  {
382
+ "type": "stack",
519
383
  "direction": "vertical",
520
384
  "children": [
521
385
  {
522
- "gap": "md",
523
- "direction": "vertical",
386
+ "direction": "horizontal",
387
+ "children": [
388
+ {
389
+ "name": "file-text",
390
+ "type": "icon"
391
+ },
392
+ {
393
+ "content": "@config.title",
394
+ "variant": "h3",
395
+ "type": "typography"
396
+ }
397
+ ],
524
398
  "type": "stack",
399
+ "align": "center",
400
+ "gap": "sm"
401
+ },
402
+ {
525
403
  "children": [
526
404
  {
527
- "children": [
528
- {
529
- "children": [
530
- {
531
- "name": "file-text",
532
- "type": "icon"
533
- },
534
- {
535
- "type": "typography",
536
- "content": "@config.title",
537
- "variant": "h3"
538
- }
539
- ],
540
- "gap": "sm",
541
- "direction": "horizontal",
542
- "type": "stack",
543
- "align": "center"
544
- },
545
- {
546
- "type": "button",
547
- "actionPayload": {
548
- "source": "header"
549
- },
550
- "label": "New Submittal",
551
- "variant": "primary",
552
- "action": "CREATE"
553
- }
554
- ],
555
- "justify": "between",
556
- "align": "center",
557
- "direction": "horizontal",
558
- "gap": "sm",
559
- "type": "stack"
405
+ "icon": "file-text",
406
+ "value": "@payload.data.length",
407
+ "type": "stat-display",
408
+ "label": "Total submittals"
560
409
  },
561
410
  {
562
- "type": "divider"
411
+ "icon": "search",
412
+ "type": "stat-display",
413
+ "label": "In review",
414
+ "value": "18"
563
415
  },
564
416
  {
565
- "type": "split-pane",
566
- "left": {
567
- "type": "file-tree",
568
- "tree": [
569
- {
570
- "name": "01 - General",
571
- "path": "01 - General",
572
- "type": "dir",
573
- "children": [
574
- {
575
- "type": "file",
576
- "path": "Cover Sheet.pdf",
577
- "name": "Cover Sheet.pdf"
578
- },
579
- {
580
- "type": "file",
581
- "name": "Schedule.pdf",
582
- "path": "Schedule.pdf"
583
- }
584
- ]
585
- },
586
- {
587
- "name": "03 - Concrete",
588
- "path": "03 - Concrete",
589
- "children": [
590
- {
591
- "type": "file",
592
- "name": "Mix Design.pdf",
593
- "path": "03 - Concrete/Mix Design.pdf"
594
- },
595
- {
596
- "path": "03 - Concrete/Rebar Shop Drawings.pdf",
597
- "name": "Rebar Shop Drawings.pdf",
598
- "type": "file"
599
- }
600
- ],
601
- "type": "dir"
602
- },
603
- {
604
- "path": "05 - Metals",
605
- "children": [
606
- {
607
- "path": "05 - Metals/Structural Steel.pdf",
608
- "name": "Structural Steel.pdf",
609
- "type": "file"
610
- }
611
- ],
612
- "name": "05 - Metals",
613
- "type": "dir"
614
- }
615
- ]
616
- },
617
- "right": {
618
- "type": "stack",
619
- "children": [
620
- {
621
- "gap": "md",
622
- "ratio": "1:1",
623
- "type": "split",
624
- "children": [
625
- {
626
- "type": "stack",
627
- "children": [
628
- {
629
- "content": "WBS hierarchy",
630
- "type": "typography",
631
- "variant": "caption"
632
- }
633
- ],
634
- "direction": "vertical",
635
- "gap": "sm"
636
- },
637
- {
638
- "gap": "sm",
639
- "direction": "vertical",
640
- "children": [
641
- {
642
- "type": "typography",
643
- "content": "Review status",
644
- "variant": "caption"
645
- }
646
- ],
647
- "type": "stack"
648
- }
649
- ]
650
- },
651
- {
652
- "size": "sm",
653
- "type": "spacer"
654
- },
655
- {
656
- "type": "upload-drop-zone",
657
- "description": "Shop drawings, product data, samples",
658
- "maxFiles": 8.0,
659
- "label": "Drop submittal attachments here",
660
- "maxSize": 20971520.0,
661
- "icon": "paperclip",
662
- "accept": "application/pdf,image/*"
663
- }
664
- ],
665
- "gap": "md",
666
- "direction": "vertical"
667
- }
417
+ "icon": "check-circle",
418
+ "value": "62",
419
+ "label": "Approved",
420
+ "type": "stat-display"
668
421
  },
669
422
  {
670
- "type": "divider"
423
+ "type": "stat-display",
424
+ "label": "Revise & resubmit",
425
+ "value": "7",
426
+ "icon": "rotate-cw"
427
+ }
428
+ ],
429
+ "type": "simple-grid",
430
+ "cols": 4.0
431
+ },
432
+ {
433
+ "type": "divider"
434
+ },
435
+ {
436
+ "cols": 1.0,
437
+ "entity": "@payload.data",
438
+ "gap": "sm",
439
+ "fields": [
440
+ {
441
+ "label": "Number",
442
+ "name": "submittalNumber",
443
+ "variant": "caption"
671
444
  },
672
445
  {
673
- "variant": "h4",
674
- "content": "Engineering Diagram",
675
- "type": "typography"
446
+ "name": "specSection",
447
+ "label": "Spec Section",
448
+ "variant": "caption"
676
449
  },
677
450
  {
678
- "align": "center",
679
- "direction": "horizontal",
680
- "type": "stack",
681
- "gap": "md",
682
- "children": [
683
- {
684
- "color": "primary",
685
- "connectionDensity": 0.5,
686
- "type": "svg-mesh",
687
- "nodes": 5.0,
688
- "radius": 30.0,
689
- "cy": 60.0,
690
- "cx": 80.0
691
- },
692
- {
693
- "x": 200.0,
694
- "color": "secondary",
695
- "branches": 4.0,
696
- "y": 60.0,
697
- "type": "svg-branch"
698
- },
699
- {
700
- "type": "svg-connection",
701
- "color": "muted",
702
- "x2": 200.0,
703
- "y2": 60.0,
704
- "y1": 60.0,
705
- "x1": 40.0
706
- }
707
- ]
451
+ "label": "Title",
452
+ "variant": "caption",
453
+ "name": "title"
708
454
  },
709
455
  {
710
- "type": "divider"
456
+ "variant": "caption",
457
+ "name": "contractor",
458
+ "label": "Contractor"
711
459
  },
712
460
  {
713
- "fields": [
714
- {
715
- "name": "submittalNumber",
716
- "variant": "caption",
717
- "label": "Number"
718
- },
719
- {
720
- "variant": "caption",
721
- "label": "Spec Section",
722
- "name": "specSection"
723
- },
724
- {
725
- "variant": "caption",
726
- "label": "Title",
727
- "name": "title"
728
- },
729
- {
730
- "label": "Contractor",
731
- "name": "contractor",
732
- "variant": "caption"
733
- },
734
- {
735
- "name": "status",
736
- "label": "Status",
737
- "variant": "badge"
738
- },
739
- {
740
- "variant": "caption",
741
- "name": "revisionNumber",
742
- "label": "Rev"
743
- }
744
- ],
745
- "entity": "@payload.data",
746
- "gap": "sm",
747
- "itemActions": [
748
- {
749
- "label": "View",
750
- "variant": "ghost",
751
- "event": "VIEW"
752
- },
753
- {
754
- "variant": "secondary",
755
- "event": "EDIT",
756
- "label": "Edit"
757
- },
758
- {
759
- "event": "APPROVE",
760
- "label": "Approve",
761
- "variant": "primary"
762
- },
763
- {
764
- "variant": "danger",
765
- "label": "Reject",
766
- "event": "REJECT"
767
- },
768
- {
769
- "label": "Revise",
770
- "variant": "secondary",
771
- "event": "REQUEST_REVISION"
772
- },
773
- {
774
- "event": "REQUEST_DELETE",
775
- "variant": "ghost",
776
- "label": "Delete"
777
- }
778
- ],
779
- "type": "data-grid",
780
- "cols": 1.0
461
+ "variant": "badge",
462
+ "name": "status",
463
+ "label": "Status"
464
+ },
465
+ {
466
+ "name": "revisionNumber",
467
+ "label": "Rev",
468
+ "variant": "caption"
469
+ }
470
+ ],
471
+ "type": "data-grid",
472
+ "itemActions": [
473
+ {
474
+ "variant": "primary",
475
+ "icon": "arrow-right",
476
+ "label": "Open",
477
+ "event": "OPEN_SUBMITTAL"
478
+ },
479
+ {
480
+ "label": "Delete",
481
+ "event": "REQUEST_DELETE",
482
+ "variant": "danger"
781
483
  }
782
484
  ]
783
485
  }
784
486
  ],
785
- "gap": "md",
786
- "type": "stack"
487
+ "gap": "md"
787
488
  }
788
489
  ]
789
490
  ]
@@ -797,80 +498,289 @@
797
498
  "render-ui",
798
499
  "main",
799
500
  {
501
+ "variant": "error",
800
502
  "message": "@payload.error",
801
- "type": "alert",
802
- "variant": "error"
503
+ "type": "alert"
803
504
  }
804
505
  ]
805
506
  ]
806
507
  },
807
508
  {
808
- "from": "viewing",
809
- "to": "viewing",
810
- "event": "SUBMIT",
509
+ "from": "browsing",
510
+ "to": "viewing_single",
511
+ "event": "OPEN_SUBMITTAL",
811
512
  "effects": [
812
513
  [
813
514
  "set",
814
515
  "@entity.id",
815
- "@payload.id"
516
+ "@payload.row.id"
816
517
  ],
817
518
  [
818
- "render-ui",
819
- "main",
820
- {
821
- "message": "Submittal submitted for review",
822
- "type": "alert",
823
- "variant": "info"
824
- }
825
- ]
826
- ]
827
- },
828
- {
829
- "from": "viewing",
830
- "to": "viewing",
831
- "event": "APPROVE",
832
- "effects": [
519
+ "set",
520
+ "@entity.submittalNumber",
521
+ "@payload.row.submittalNumber"
522
+ ],
833
523
  [
834
524
  "set",
835
- "@entity.id",
836
- "@payload.id"
525
+ "@entity.specSection",
526
+ "@payload.row.specSection"
837
527
  ],
838
528
  [
839
- "render-ui",
840
- "main",
841
- {
842
- "message": "Submittal approved",
843
- "variant": "success",
844
- "type": "alert"
845
- }
846
- ]
847
- ]
848
- },
849
- {
850
- "from": "viewing",
851
- "to": "viewing",
852
- "event": "REJECT",
853
- "effects": [
529
+ "set",
530
+ "@entity.title",
531
+ "@payload.row.title"
532
+ ],
854
533
  [
855
534
  "set",
856
- "@entity.id",
857
- "@payload.id"
535
+ "@entity.contractor",
536
+ "@payload.row.contractor"
537
+ ],
538
+ [
539
+ "set",
540
+ "@entity.reviewer",
541
+ "@payload.row.reviewer"
542
+ ],
543
+ [
544
+ "set",
545
+ "@entity.status",
546
+ "@payload.row.status"
547
+ ],
548
+ [
549
+ "set",
550
+ "@entity.revisionNumber",
551
+ "@payload.row.revisionNumber"
552
+ ],
553
+ [
554
+ "set",
555
+ "@entity.submittedAt",
556
+ "@payload.row.submittedAt"
557
+ ],
558
+ [
559
+ "set",
560
+ "@entity.reviewedAt",
561
+ "@payload.row.reviewedAt"
562
+ ],
563
+ [
564
+ "set",
565
+ "@entity.comments",
566
+ "@payload.row.comments"
858
567
  ],
859
568
  [
860
569
  "render-ui",
861
570
  "main",
862
571
  {
863
- "variant": "error",
864
- "message": "Submittal rejected",
865
- "type": "alert"
572
+ "children": [
573
+ {
574
+ "type": "stack",
575
+ "direction": "horizontal",
576
+ "gap": "sm",
577
+ "children": [
578
+ {
579
+ "type": "button",
580
+ "variant": "ghost",
581
+ "label": "Back",
582
+ "action": "CLOSE_VIEW"
583
+ },
584
+ {
585
+ "type": "icon",
586
+ "name": "file-text"
587
+ },
588
+ {
589
+ "content": "@entity.title",
590
+ "variant": "h3",
591
+ "type": "typography"
592
+ },
593
+ {
594
+ "label": "@entity.status",
595
+ "variant": "default",
596
+ "type": "badge"
597
+ }
598
+ ],
599
+ "align": "center"
600
+ },
601
+ {
602
+ "type": "divider"
603
+ },
604
+ {
605
+ "type": "stack",
606
+ "gap": "sm",
607
+ "children": [
608
+ {
609
+ "type": "stack",
610
+ "direction": "horizontal",
611
+ "gap": "md",
612
+ "children": [
613
+ {
614
+ "color": "muted",
615
+ "type": "typography",
616
+ "variant": "caption",
617
+ "content": "Number"
618
+ },
619
+ {
620
+ "type": "typography",
621
+ "variant": "body",
622
+ "content": "@entity.submittalNumber"
623
+ }
624
+ ]
625
+ },
626
+ {
627
+ "type": "stack",
628
+ "gap": "md",
629
+ "direction": "horizontal",
630
+ "children": [
631
+ {
632
+ "type": "typography",
633
+ "variant": "caption",
634
+ "content": "Spec section",
635
+ "color": "muted"
636
+ },
637
+ {
638
+ "content": "@entity.specSection",
639
+ "type": "typography",
640
+ "variant": "body"
641
+ }
642
+ ]
643
+ },
644
+ {
645
+ "direction": "horizontal",
646
+ "children": [
647
+ {
648
+ "type": "typography",
649
+ "content": "Contractor",
650
+ "variant": "caption",
651
+ "color": "muted"
652
+ },
653
+ {
654
+ "type": "typography",
655
+ "variant": "body",
656
+ "content": "@entity.contractor"
657
+ }
658
+ ],
659
+ "type": "stack",
660
+ "gap": "md"
661
+ },
662
+ {
663
+ "type": "stack",
664
+ "direction": "horizontal",
665
+ "children": [
666
+ {
667
+ "type": "typography",
668
+ "variant": "caption",
669
+ "color": "muted",
670
+ "content": "Reviewer"
671
+ },
672
+ {
673
+ "type": "typography",
674
+ "content": "@entity.reviewer",
675
+ "variant": "body"
676
+ }
677
+ ],
678
+ "gap": "md"
679
+ },
680
+ {
681
+ "type": "stack",
682
+ "direction": "horizontal",
683
+ "children": [
684
+ {
685
+ "content": "Comments",
686
+ "color": "muted",
687
+ "variant": "caption",
688
+ "type": "typography"
689
+ },
690
+ {
691
+ "variant": "body",
692
+ "type": "typography",
693
+ "content": "@entity.comments"
694
+ }
695
+ ],
696
+ "gap": "md"
697
+ }
698
+ ],
699
+ "direction": "vertical"
700
+ },
701
+ {
702
+ "type": "divider"
703
+ },
704
+ {
705
+ "type": "simple-grid",
706
+ "children": [
707
+ {
708
+ "type": "stat-display",
709
+ "value": "@entity.revisionNumber",
710
+ "label": "Revision",
711
+ "icon": "rotate-cw"
712
+ },
713
+ {
714
+ "type": "stat-display",
715
+ "icon": "calendar",
716
+ "label": "Submitted",
717
+ "value": "@entity.submittedAt"
718
+ },
719
+ {
720
+ "label": "Reviewed",
721
+ "type": "stat-display",
722
+ "icon": "calendar-check",
723
+ "value": "@entity.reviewedAt"
724
+ }
725
+ ],
726
+ "cols": 3.0
727
+ },
728
+ {
729
+ "gap": "sm",
730
+ "type": "stack",
731
+ "children": [
732
+ {
733
+ "label": "Approve",
734
+ "variant": "primary",
735
+ "type": "button",
736
+ "action": "APPROVE",
737
+ "actionPayload": {
738
+ "id": "@entity.id"
739
+ }
740
+ },
741
+ {
742
+ "variant": "danger",
743
+ "actionPayload": {
744
+ "id": "@entity.id"
745
+ },
746
+ "type": "button",
747
+ "action": "REJECT",
748
+ "label": "Reject"
749
+ },
750
+ {
751
+ "variant": "secondary",
752
+ "label": "Revise",
753
+ "type": "button",
754
+ "actionPayload": {
755
+ "id": "@entity.id"
756
+ },
757
+ "action": "REQUEST_REVISION"
758
+ },
759
+ {
760
+ "label": "Delete",
761
+ "type": "button",
762
+ "action": "REQUEST_DELETE",
763
+ "variant": "danger",
764
+ "actionPayload": {
765
+ "id": "@entity.id"
766
+ }
767
+ }
768
+ ],
769
+ "align": "center",
770
+ "direction": "horizontal"
771
+ }
772
+ ],
773
+ "gap": "md",
774
+ "direction": "vertical",
775
+ "type": "stack"
866
776
  }
867
777
  ]
868
778
  ]
869
779
  },
870
780
  {
871
- "from": "viewing",
872
- "to": "viewing",
873
- "event": "REQUEST_REVISION",
781
+ "from": "browsing",
782
+ "to": "loading",
783
+ "event": "REQUEST_DELETE",
874
784
  "effects": [
875
785
  [
876
786
  "set",
@@ -878,44 +788,51 @@
878
788
  "@payload.id"
879
789
  ],
880
790
  [
881
- "render-ui",
882
- "main",
791
+ "fetch",
792
+ "Submittal",
883
793
  {
884
- "message": "Revision requested",
885
- "variant": "warning",
886
- "type": "alert"
794
+ "emit": {
795
+ "success": "SubmittalLoaded",
796
+ "failure": "SubmittalLoadFailed"
797
+ }
887
798
  }
888
- ]
889
- ]
890
- },
891
- {
892
- "from": "viewing",
893
- "to": "viewing",
894
- "event": "CREATE",
895
- "effects": [
799
+ ],
896
800
  [
897
801
  "render-ui",
898
802
  "main",
899
803
  {
900
- "variant": "info",
901
- "type": "alert",
902
- "message": "Creating new submittal"
804
+ "children": [
805
+ {
806
+ "type": "spinner"
807
+ },
808
+ {
809
+ "type": "typography",
810
+ "color": "muted",
811
+ "variant": "caption",
812
+ "content": "Deleting submittal…"
813
+ }
814
+ ],
815
+ "type": "stack",
816
+ "gap": "md",
817
+ "direction": "vertical",
818
+ "align": "center",
819
+ "className": "py-12"
903
820
  }
904
821
  ]
905
822
  ]
906
823
  },
907
824
  {
908
- "from": "viewing",
825
+ "from": "viewing_single",
909
826
  "to": "loading",
910
- "event": "REFRESH",
827
+ "event": "CLOSE_VIEW",
911
828
  "effects": [
912
829
  [
913
830
  "fetch",
914
831
  "Submittal",
915
832
  {
916
833
  "emit": {
917
- "success": "SubmittalLoaded",
918
- "failure": "SubmittalLoadFailed"
834
+ "failure": "SubmittalLoadFailed",
835
+ "success": "SubmittalLoaded"
919
836
  }
920
837
  }
921
838
  ],
@@ -923,89 +840,161 @@
923
840
  "render-ui",
924
841
  "main",
925
842
  {
926
- "type": "spinner",
927
- "size": "sm"
843
+ "children": [
844
+ {
845
+ "type": "spinner"
846
+ },
847
+ {
848
+ "color": "muted",
849
+ "variant": "caption",
850
+ "content": "Loading submittals…",
851
+ "type": "typography"
852
+ }
853
+ ],
854
+ "type": "stack",
855
+ "direction": "vertical",
856
+ "gap": "md",
857
+ "align": "center",
858
+ "className": "py-12"
928
859
  }
929
860
  ]
930
861
  ]
931
862
  },
932
863
  {
933
- "from": "viewing",
934
- "to": "viewing",
935
- "event": "SEARCH",
864
+ "from": "viewing_single",
865
+ "to": "loading",
866
+ "event": "APPROVE",
936
867
  "effects": [
937
868
  [
938
- "render-ui",
939
- "main",
869
+ "set",
870
+ "@entity.id",
871
+ "@payload.id"
872
+ ],
873
+ [
874
+ "fetch",
875
+ "Submittal",
940
876
  {
941
- "message": "Searching submittals",
942
- "variant": "info",
943
- "type": "alert"
877
+ "emit": {
878
+ "failure": "SubmittalLoadFailed",
879
+ "success": "SubmittalLoaded"
880
+ }
944
881
  }
945
- ]
946
- ]
947
- },
948
- {
949
- "from": "viewing",
950
- "to": "viewing",
951
- "event": "FILTER_STATUS",
952
- "effects": [
882
+ ],
953
883
  [
954
884
  "render-ui",
955
885
  "main",
956
886
  {
957
- "variant": "info",
958
- "type": "alert",
959
- "message": "Filtering by status"
887
+ "className": "py-12",
888
+ "type": "stack",
889
+ "align": "center",
890
+ "children": [
891
+ {
892
+ "type": "spinner"
893
+ },
894
+ {
895
+ "type": "typography",
896
+ "variant": "caption",
897
+ "content": "Approving submittal…",
898
+ "color": "muted"
899
+ }
900
+ ],
901
+ "direction": "vertical",
902
+ "gap": "md"
960
903
  }
961
904
  ]
962
905
  ]
963
906
  },
964
907
  {
965
- "from": "viewing",
966
- "to": "viewing",
967
- "event": "VIEW",
908
+ "from": "viewing_single",
909
+ "to": "loading",
910
+ "event": "REJECT",
968
911
  "effects": [
969
912
  [
970
913
  "set",
971
914
  "@entity.id",
972
915
  "@payload.id"
973
916
  ],
917
+ [
918
+ "fetch",
919
+ "Submittal",
920
+ {
921
+ "emit": {
922
+ "failure": "SubmittalLoadFailed",
923
+ "success": "SubmittalLoaded"
924
+ }
925
+ }
926
+ ],
974
927
  [
975
928
  "render-ui",
976
929
  "main",
977
930
  {
978
- "variant": "info",
979
- "message": "Viewing submittal",
980
- "type": "alert"
931
+ "type": "stack",
932
+ "children": [
933
+ {
934
+ "type": "spinner"
935
+ },
936
+ {
937
+ "variant": "caption",
938
+ "content": "Rejecting submittal…",
939
+ "type": "typography",
940
+ "color": "muted"
941
+ }
942
+ ],
943
+ "direction": "vertical",
944
+ "align": "center",
945
+ "className": "py-12",
946
+ "gap": "md"
981
947
  }
982
948
  ]
983
949
  ]
984
950
  },
985
951
  {
986
- "from": "viewing",
987
- "to": "viewing",
988
- "event": "EDIT",
952
+ "from": "viewing_single",
953
+ "to": "loading",
954
+ "event": "REQUEST_REVISION",
989
955
  "effects": [
990
956
  [
991
957
  "set",
992
958
  "@entity.id",
993
959
  "@payload.id"
994
960
  ],
961
+ [
962
+ "fetch",
963
+ "Submittal",
964
+ {
965
+ "emit": {
966
+ "success": "SubmittalLoaded",
967
+ "failure": "SubmittalLoadFailed"
968
+ }
969
+ }
970
+ ],
995
971
  [
996
972
  "render-ui",
997
973
  "main",
998
974
  {
999
- "type": "alert",
1000
- "message": "Editing submittal",
1001
- "variant": "info"
975
+ "gap": "md",
976
+ "type": "stack",
977
+ "direction": "vertical",
978
+ "children": [
979
+ {
980
+ "type": "spinner"
981
+ },
982
+ {
983
+ "content": "Requesting revision…",
984
+ "type": "typography",
985
+ "variant": "caption",
986
+ "color": "muted"
987
+ }
988
+ ],
989
+ "align": "center",
990
+ "className": "py-12"
1002
991
  }
1003
992
  ]
1004
993
  ]
1005
994
  },
1006
995
  {
1007
- "from": "viewing",
1008
- "to": "viewing",
996
+ "from": "viewing_single",
997
+ "to": "loading",
1009
998
  "event": "REQUEST_DELETE",
1010
999
  "effects": [
1011
1000
  [
@@ -1013,13 +1002,36 @@
1013
1002
  "@entity.id",
1014
1003
  "@payload.id"
1015
1004
  ],
1005
+ [
1006
+ "fetch",
1007
+ "Submittal",
1008
+ {
1009
+ "emit": {
1010
+ "success": "SubmittalLoaded",
1011
+ "failure": "SubmittalLoadFailed"
1012
+ }
1013
+ }
1014
+ ],
1016
1015
  [
1017
1016
  "render-ui",
1018
1017
  "main",
1019
1018
  {
1020
- "message": "Delete requested",
1021
- "type": "alert",
1022
- "variant": "warning"
1019
+ "type": "stack",
1020
+ "align": "center",
1021
+ "direction": "vertical",
1022
+ "gap": "md",
1023
+ "children": [
1024
+ {
1025
+ "type": "spinner"
1026
+ },
1027
+ {
1028
+ "variant": "caption",
1029
+ "content": "Deleting submittal…",
1030
+ "color": "muted",
1031
+ "type": "typography"
1032
+ }
1033
+ ],
1034
+ "className": "py-12"
1023
1035
  }
1024
1036
  ]
1025
1037
  ]
@@ -1034,8 +1046,8 @@
1034
1046
  "Submittal",
1035
1047
  {
1036
1048
  "emit": {
1037
- "failure": "SubmittalLoadFailed",
1038
- "success": "SubmittalLoaded"
1049
+ "success": "SubmittalLoaded",
1050
+ "failure": "SubmittalLoadFailed"
1039
1051
  }
1040
1052
  }
1041
1053
  ],