@almadar/std 15.15.0 → 15.15.1

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 (273) hide show
  1. package/behaviors/registry/app/atoms/std-ap-bill.orb +423 -171
  2. package/behaviors/registry/app/atoms/std-applicant.orb +207 -165
  3. package/behaviors/registry/app/atoms/std-application.orb +300 -188
  4. package/behaviors/registry/app/atoms/std-approval-request.orb +370 -215
  5. package/behaviors/registry/app/atoms/std-campaign-goal.orb +382 -167
  6. package/behaviors/registry/app/atoms/std-change-order.orb +458 -194
  7. package/behaviors/registry/app/atoms/std-chart-of-accounts.orb +201 -130
  8. package/behaviors/registry/app/atoms/std-checkin.orb +215 -151
  9. package/behaviors/registry/app/atoms/std-checkout-terminal.orb +322 -133
  10. package/behaviors/registry/app/atoms/std-class-roster.orb +343 -170
  11. package/behaviors/registry/app/atoms/std-class-session.orb +321 -190
  12. package/behaviors/registry/app/atoms/std-court-deadline.orb +353 -182
  13. package/behaviors/registry/app/atoms/std-customer-account.orb +376 -157
  14. package/behaviors/registry/app/atoms/std-donation-receipt.orb +214 -143
  15. package/behaviors/registry/app/atoms/std-donor.orb +191 -156
  16. package/behaviors/registry/app/atoms/std-drip-sequence.orb +409 -170
  17. package/behaviors/registry/app/atoms/std-driver.orb +440 -202
  18. package/behaviors/registry/app/atoms/std-dunning.orb +431 -167
  19. package/behaviors/registry/app/atoms/std-email-broadcast.orb +386 -143
  20. package/behaviors/registry/app/atoms/std-event.orb +309 -178
  21. package/behaviors/registry/app/atoms/std-form-builder.orb +353 -220
  22. package/behaviors/registry/app/atoms/std-health-score.orb +218 -183
  23. package/behaviors/registry/app/atoms/std-help-article.orb +425 -162
  24. package/behaviors/registry/app/atoms/std-help-category.orb +409 -166
  25. package/behaviors/registry/app/atoms/std-interview-slot.orb +311 -138
  26. package/behaviors/registry/app/atoms/std-invoice.orb +349 -211
  27. package/behaviors/registry/app/atoms/std-kitchen-display.orb +308 -184
  28. package/behaviors/registry/app/atoms/std-lease.orb +411 -178
  29. package/behaviors/registry/app/atoms/std-ledger-entry.orb +266 -195
  30. package/behaviors/registry/app/atoms/std-maintenance-request.orb +396 -177
  31. package/behaviors/registry/app/atoms/std-matter.orb +415 -189
  32. package/behaviors/registry/app/atoms/std-membership.orb +387 -167
  33. package/behaviors/registry/app/atoms/std-menu.orb +232 -175
  34. package/behaviors/registry/app/atoms/std-modifier-group.orb +224 -167
  35. package/behaviors/registry/app/atoms/std-nps-survey.orb +390 -138
  36. package/behaviors/registry/app/atoms/std-offer-letter.orb +242 -133
  37. package/behaviors/registry/app/atoms/std-payout-ledger.orb +428 -176
  38. package/behaviors/registry/app/atoms/std-question-bank.orb +211 -145
  39. package/behaviors/registry/app/atoms/std-receipt.orb +248 -177
  40. package/behaviors/registry/app/atoms/std-recurring-charge.orb +421 -149
  41. package/behaviors/registry/app/atoms/std-renewal-risk.orb +382 -153
  42. package/behaviors/registry/app/atoms/std-rent-charge.orb +476 -176
  43. package/behaviors/registry/app/atoms/std-reorder-rule.orb +246 -176
  44. package/behaviors/registry/app/atoms/std-response-collector.orb +213 -150
  45. package/behaviors/registry/app/atoms/std-rfi.orb +365 -210
  46. package/behaviors/registry/app/atoms/std-route-optimize.orb +195 -146
  47. package/behaviors/registry/app/atoms/std-segment.orb +173 -139
  48. package/behaviors/registry/app/atoms/std-stock-level.orb +205 -135
  49. package/behaviors/registry/app/atoms/std-submittal.orb +323 -166
  50. package/behaviors/registry/app/atoms/std-table-map.orb +187 -63
  51. package/behaviors/registry/app/atoms/std-technician-dispatch.orb +290 -202
  52. package/behaviors/registry/app/atoms/std-telematics-event.orb +156 -128
  53. package/behaviors/registry/app/atoms/std-template-editor.orb +255 -189
  54. package/behaviors/registry/app/atoms/std-tenant.orb +375 -147
  55. package/behaviors/registry/app/atoms/std-ticket-tier.orb +463 -150
  56. package/behaviors/registry/app/atoms/std-time-entry.orb +259 -150
  57. package/behaviors/registry/app/atoms/std-timesheet.orb +292 -183
  58. package/behaviors/registry/app/atoms/std-trial.orb +401 -183
  59. package/behaviors/registry/app/atoms/std-vehicle.orb +447 -205
  60. package/behaviors/registry/app/atoms/std-vendor-onboarding.orb +289 -245
  61. package/behaviors/registry/app/atoms/std-waitlist.orb +308 -177
  62. package/behaviors/registry/app/atoms/std-warehouse.orb +211 -141
  63. package/behaviors/registry/app/atoms/std-work-order.orb +374 -219
  64. package/behaviors/registry/app/organisms/std-subscription-billing.orb +282 -195
  65. package/behaviors/registry/core/atoms/std-approval-gate.orb +703 -0
  66. package/behaviors/registry/core/atoms/std-audit-capture.orb +150 -64
  67. package/behaviors/registry/core/atoms/std-data-erasure.orb +546 -0
  68. package/behaviors/registry/core/atoms/std-lifecycle.orb +343 -0
  69. package/behaviors/registry/core/atoms/std-notify-on-event.orb +132 -46
  70. package/behaviors/registry/core/atoms/std-reminder-scheduler.orb +330 -0
  71. package/behaviors/registry/marketing/atoms/std-marketing-article.orb +96 -0
  72. package/behaviors/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
  73. package/behaviors/registry/marketing/atoms/std-marketing-community.orb +134 -0
  74. package/behaviors/registry/marketing/atoms/std-marketing-cta.orb +206 -0
  75. package/behaviors/registry/marketing/atoms/std-marketing-features.orb +193 -0
  76. package/behaviors/registry/marketing/atoms/std-marketing-footer.orb +192 -0
  77. package/behaviors/registry/marketing/atoms/std-marketing-hero.orb +262 -0
  78. package/behaviors/registry/marketing/atoms/std-marketing-nav.orb +190 -0
  79. package/behaviors/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
  80. package/behaviors/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
  81. package/behaviors/registry/marketing/atoms/std-marketing-split.orb +135 -0
  82. package/behaviors/registry/marketing/atoms/std-marketing-stats.orb +120 -0
  83. package/behaviors/registry/marketing/atoms/std-marketing-steps.orb +179 -0
  84. package/behaviors/registry/marketing/atoms/std-marketing-team.orb +192 -0
  85. package/behaviors/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
  86. package/behaviors/registry/marketing/molecules/std-about-page.orb +440 -0
  87. package/behaviors/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
  88. package/behaviors/registry/marketing/molecules/std-landing-page.orb +521 -0
  89. package/behaviors/registry/marketing/molecules/std-pricing-page.orb +406 -0
  90. package/behaviors/registry/marketing/organisms/std-marketing-site.orb +1654 -0
  91. package/dist/behaviors/behaviors-registry.json +2913 -156
  92. package/dist/behaviors/registry/app/atoms/std-ap-bill.orb +423 -171
  93. package/dist/behaviors/registry/app/atoms/std-applicant.orb +207 -165
  94. package/dist/behaviors/registry/app/atoms/std-application.orb +300 -188
  95. package/dist/behaviors/registry/app/atoms/std-approval-request.orb +370 -215
  96. package/dist/behaviors/registry/app/atoms/std-campaign-goal.orb +382 -167
  97. package/dist/behaviors/registry/app/atoms/std-change-order.orb +458 -194
  98. package/dist/behaviors/registry/app/atoms/std-chart-of-accounts.orb +201 -130
  99. package/dist/behaviors/registry/app/atoms/std-checkin.orb +215 -151
  100. package/dist/behaviors/registry/app/atoms/std-checkout-terminal.orb +322 -133
  101. package/dist/behaviors/registry/app/atoms/std-class-roster.orb +343 -170
  102. package/dist/behaviors/registry/app/atoms/std-class-session.orb +321 -190
  103. package/dist/behaviors/registry/app/atoms/std-court-deadline.orb +353 -182
  104. package/dist/behaviors/registry/app/atoms/std-customer-account.orb +376 -157
  105. package/dist/behaviors/registry/app/atoms/std-donation-receipt.orb +214 -143
  106. package/dist/behaviors/registry/app/atoms/std-donor.orb +191 -156
  107. package/dist/behaviors/registry/app/atoms/std-drip-sequence.orb +409 -170
  108. package/dist/behaviors/registry/app/atoms/std-driver.orb +440 -202
  109. package/dist/behaviors/registry/app/atoms/std-dunning.orb +431 -167
  110. package/dist/behaviors/registry/app/atoms/std-email-broadcast.orb +386 -143
  111. package/dist/behaviors/registry/app/atoms/std-event.orb +309 -178
  112. package/dist/behaviors/registry/app/atoms/std-form-builder.orb +353 -220
  113. package/dist/behaviors/registry/app/atoms/std-health-score.orb +218 -183
  114. package/dist/behaviors/registry/app/atoms/std-help-article.orb +425 -162
  115. package/dist/behaviors/registry/app/atoms/std-help-category.orb +409 -166
  116. package/dist/behaviors/registry/app/atoms/std-interview-slot.orb +311 -138
  117. package/dist/behaviors/registry/app/atoms/std-invoice.orb +349 -211
  118. package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +308 -184
  119. package/dist/behaviors/registry/app/atoms/std-lease.orb +411 -178
  120. package/dist/behaviors/registry/app/atoms/std-ledger-entry.orb +266 -195
  121. package/dist/behaviors/registry/app/atoms/std-maintenance-request.orb +396 -177
  122. package/dist/behaviors/registry/app/atoms/std-matter.orb +415 -189
  123. package/dist/behaviors/registry/app/atoms/std-membership.orb +387 -167
  124. package/dist/behaviors/registry/app/atoms/std-menu.orb +232 -175
  125. package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +224 -167
  126. package/dist/behaviors/registry/app/atoms/std-nps-survey.orb +390 -138
  127. package/dist/behaviors/registry/app/atoms/std-offer-letter.orb +242 -133
  128. package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +428 -176
  129. package/dist/behaviors/registry/app/atoms/std-question-bank.orb +211 -145
  130. package/dist/behaviors/registry/app/atoms/std-receipt.orb +248 -177
  131. package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +421 -149
  132. package/dist/behaviors/registry/app/atoms/std-renewal-risk.orb +382 -153
  133. package/dist/behaviors/registry/app/atoms/std-rent-charge.orb +476 -176
  134. package/dist/behaviors/registry/app/atoms/std-reorder-rule.orb +246 -176
  135. package/dist/behaviors/registry/app/atoms/std-response-collector.orb +213 -150
  136. package/dist/behaviors/registry/app/atoms/std-rfi.orb +365 -210
  137. package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +195 -146
  138. package/dist/behaviors/registry/app/atoms/std-segment.orb +173 -139
  139. package/dist/behaviors/registry/app/atoms/std-stock-level.orb +205 -135
  140. package/dist/behaviors/registry/app/atoms/std-submittal.orb +323 -166
  141. package/dist/behaviors/registry/app/atoms/std-table-map.orb +187 -63
  142. package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +290 -202
  143. package/dist/behaviors/registry/app/atoms/std-telematics-event.orb +156 -128
  144. package/dist/behaviors/registry/app/atoms/std-template-editor.orb +255 -189
  145. package/dist/behaviors/registry/app/atoms/std-tenant.orb +375 -147
  146. package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +463 -150
  147. package/dist/behaviors/registry/app/atoms/std-time-entry.orb +259 -150
  148. package/dist/behaviors/registry/app/atoms/std-timesheet.orb +292 -183
  149. package/dist/behaviors/registry/app/atoms/std-trial.orb +401 -183
  150. package/dist/behaviors/registry/app/atoms/std-vehicle.orb +447 -205
  151. package/dist/behaviors/registry/app/atoms/std-vendor-onboarding.orb +289 -245
  152. package/dist/behaviors/registry/app/atoms/std-waitlist.orb +308 -177
  153. package/dist/behaviors/registry/app/atoms/std-warehouse.orb +211 -141
  154. package/dist/behaviors/registry/app/atoms/std-work-order.orb +374 -219
  155. package/dist/behaviors/registry/app/organisms/std-subscription-billing.orb +282 -195
  156. package/dist/behaviors/registry/core/atoms/std-approval-gate.orb +703 -0
  157. package/dist/behaviors/registry/core/atoms/std-audit-capture.orb +150 -64
  158. package/dist/behaviors/registry/core/atoms/std-data-erasure.orb +546 -0
  159. package/dist/behaviors/registry/core/atoms/std-lifecycle.orb +343 -0
  160. package/dist/behaviors/registry/core/atoms/std-notify-on-event.orb +132 -46
  161. package/dist/behaviors/registry/core/atoms/std-reminder-scheduler.orb +330 -0
  162. package/dist/behaviors/registry/marketing/atoms/std-marketing-article.orb +96 -0
  163. package/dist/behaviors/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
  164. package/dist/behaviors/registry/marketing/atoms/std-marketing-community.orb +134 -0
  165. package/dist/behaviors/registry/marketing/atoms/std-marketing-cta.orb +206 -0
  166. package/dist/behaviors/registry/marketing/atoms/std-marketing-features.orb +193 -0
  167. package/dist/behaviors/registry/marketing/atoms/std-marketing-footer.orb +192 -0
  168. package/dist/behaviors/registry/marketing/atoms/std-marketing-hero.orb +262 -0
  169. package/dist/behaviors/registry/marketing/atoms/std-marketing-nav.orb +190 -0
  170. package/dist/behaviors/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
  171. package/dist/behaviors/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
  172. package/dist/behaviors/registry/marketing/atoms/std-marketing-split.orb +135 -0
  173. package/dist/behaviors/registry/marketing/atoms/std-marketing-stats.orb +120 -0
  174. package/dist/behaviors/registry/marketing/atoms/std-marketing-steps.orb +179 -0
  175. package/dist/behaviors/registry/marketing/atoms/std-marketing-team.orb +192 -0
  176. package/dist/behaviors/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
  177. package/dist/behaviors/registry/marketing/molecules/std-about-page.orb +440 -0
  178. package/dist/behaviors/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
  179. package/dist/behaviors/registry/marketing/molecules/std-landing-page.orb +521 -0
  180. package/dist/behaviors/registry/marketing/molecules/std-pricing-page.orb +406 -0
  181. package/dist/behaviors/registry/marketing/organisms/std-marketing-site.orb +1654 -0
  182. package/dist/behaviors-registry.json +2913 -156
  183. package/dist/registry/app/atoms/std-ap-bill.orb +423 -171
  184. package/dist/registry/app/atoms/std-applicant.orb +207 -165
  185. package/dist/registry/app/atoms/std-application.orb +300 -188
  186. package/dist/registry/app/atoms/std-approval-request.orb +370 -215
  187. package/dist/registry/app/atoms/std-campaign-goal.orb +382 -167
  188. package/dist/registry/app/atoms/std-change-order.orb +458 -194
  189. package/dist/registry/app/atoms/std-chart-of-accounts.orb +201 -130
  190. package/dist/registry/app/atoms/std-checkin.orb +215 -151
  191. package/dist/registry/app/atoms/std-checkout-terminal.orb +322 -133
  192. package/dist/registry/app/atoms/std-class-roster.orb +343 -170
  193. package/dist/registry/app/atoms/std-class-session.orb +321 -190
  194. package/dist/registry/app/atoms/std-court-deadline.orb +353 -182
  195. package/dist/registry/app/atoms/std-customer-account.orb +376 -157
  196. package/dist/registry/app/atoms/std-donation-receipt.orb +214 -143
  197. package/dist/registry/app/atoms/std-donor.orb +191 -156
  198. package/dist/registry/app/atoms/std-drip-sequence.orb +409 -170
  199. package/dist/registry/app/atoms/std-driver.orb +440 -202
  200. package/dist/registry/app/atoms/std-dunning.orb +431 -167
  201. package/dist/registry/app/atoms/std-email-broadcast.orb +386 -143
  202. package/dist/registry/app/atoms/std-event.orb +309 -178
  203. package/dist/registry/app/atoms/std-form-builder.orb +353 -220
  204. package/dist/registry/app/atoms/std-health-score.orb +218 -183
  205. package/dist/registry/app/atoms/std-help-article.orb +425 -162
  206. package/dist/registry/app/atoms/std-help-category.orb +409 -166
  207. package/dist/registry/app/atoms/std-interview-slot.orb +311 -138
  208. package/dist/registry/app/atoms/std-invoice.orb +349 -211
  209. package/dist/registry/app/atoms/std-kitchen-display.orb +308 -184
  210. package/dist/registry/app/atoms/std-lease.orb +411 -178
  211. package/dist/registry/app/atoms/std-ledger-entry.orb +266 -195
  212. package/dist/registry/app/atoms/std-maintenance-request.orb +396 -177
  213. package/dist/registry/app/atoms/std-matter.orb +415 -189
  214. package/dist/registry/app/atoms/std-membership.orb +387 -167
  215. package/dist/registry/app/atoms/std-menu.orb +232 -175
  216. package/dist/registry/app/atoms/std-modifier-group.orb +224 -167
  217. package/dist/registry/app/atoms/std-nps-survey.orb +390 -138
  218. package/dist/registry/app/atoms/std-offer-letter.orb +242 -133
  219. package/dist/registry/app/atoms/std-payout-ledger.orb +428 -176
  220. package/dist/registry/app/atoms/std-question-bank.orb +211 -145
  221. package/dist/registry/app/atoms/std-receipt.orb +248 -177
  222. package/dist/registry/app/atoms/std-recurring-charge.orb +421 -149
  223. package/dist/registry/app/atoms/std-renewal-risk.orb +382 -153
  224. package/dist/registry/app/atoms/std-rent-charge.orb +476 -176
  225. package/dist/registry/app/atoms/std-reorder-rule.orb +246 -176
  226. package/dist/registry/app/atoms/std-response-collector.orb +213 -150
  227. package/dist/registry/app/atoms/std-rfi.orb +365 -210
  228. package/dist/registry/app/atoms/std-route-optimize.orb +195 -146
  229. package/dist/registry/app/atoms/std-segment.orb +173 -139
  230. package/dist/registry/app/atoms/std-stock-level.orb +205 -135
  231. package/dist/registry/app/atoms/std-submittal.orb +323 -166
  232. package/dist/registry/app/atoms/std-table-map.orb +187 -63
  233. package/dist/registry/app/atoms/std-technician-dispatch.orb +290 -202
  234. package/dist/registry/app/atoms/std-telematics-event.orb +156 -128
  235. package/dist/registry/app/atoms/std-template-editor.orb +255 -189
  236. package/dist/registry/app/atoms/std-tenant.orb +375 -147
  237. package/dist/registry/app/atoms/std-ticket-tier.orb +463 -150
  238. package/dist/registry/app/atoms/std-time-entry.orb +259 -150
  239. package/dist/registry/app/atoms/std-timesheet.orb +292 -183
  240. package/dist/registry/app/atoms/std-trial.orb +401 -183
  241. package/dist/registry/app/atoms/std-vehicle.orb +447 -205
  242. package/dist/registry/app/atoms/std-vendor-onboarding.orb +289 -245
  243. package/dist/registry/app/atoms/std-waitlist.orb +308 -177
  244. package/dist/registry/app/atoms/std-warehouse.orb +211 -141
  245. package/dist/registry/app/atoms/std-work-order.orb +374 -219
  246. package/dist/registry/app/organisms/std-subscription-billing.orb +282 -195
  247. package/dist/registry/core/atoms/std-approval-gate.orb +703 -0
  248. package/dist/registry/core/atoms/std-audit-capture.orb +150 -64
  249. package/dist/registry/core/atoms/std-data-erasure.orb +546 -0
  250. package/dist/registry/core/atoms/std-lifecycle.orb +343 -0
  251. package/dist/registry/core/atoms/std-notify-on-event.orb +132 -46
  252. package/dist/registry/core/atoms/std-reminder-scheduler.orb +330 -0
  253. package/dist/registry/marketing/atoms/std-marketing-article.orb +96 -0
  254. package/dist/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
  255. package/dist/registry/marketing/atoms/std-marketing-community.orb +134 -0
  256. package/dist/registry/marketing/atoms/std-marketing-cta.orb +206 -0
  257. package/dist/registry/marketing/atoms/std-marketing-features.orb +193 -0
  258. package/dist/registry/marketing/atoms/std-marketing-footer.orb +192 -0
  259. package/dist/registry/marketing/atoms/std-marketing-hero.orb +262 -0
  260. package/dist/registry/marketing/atoms/std-marketing-nav.orb +190 -0
  261. package/dist/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
  262. package/dist/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
  263. package/dist/registry/marketing/atoms/std-marketing-split.orb +135 -0
  264. package/dist/registry/marketing/atoms/std-marketing-stats.orb +120 -0
  265. package/dist/registry/marketing/atoms/std-marketing-steps.orb +179 -0
  266. package/dist/registry/marketing/atoms/std-marketing-team.orb +192 -0
  267. package/dist/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
  268. package/dist/registry/marketing/molecules/std-about-page.orb +440 -0
  269. package/dist/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
  270. package/dist/registry/marketing/molecules/std-landing-page.orb +521 -0
  271. package/dist/registry/marketing/molecules/std-pricing-page.orb +406 -0
  272. package/dist/registry/marketing/organisms/std-marketing-site.orb +1654 -0
  273. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "std-event",
3
- "version": "1.1.0",
4
- "description": "std-event — event-ticketing event entity (date, venue, capacity, recurrenceRule, status). Lists events in `browsing`; opens detail in `viewing_single` with Publish / Cancel / Update actions. Agents tune the list shape via `config.fields` + `config.itemActions`.",
3
+ "version": "1.2.0",
4
+ "description": "std-event — event-ticketing event entity. Listens for SET_STATUS so sibling std-lifecycle can auto-transition. Exposes Scheduling/Booking knobs (bookingWindowDays, leadTimeMinutes, cancellationPolicy, …).",
5
5
  "orbitals": [
6
6
  {
7
7
  "name": "EventOrbital",
@@ -274,6 +274,22 @@
274
274
  }
275
275
  ]
276
276
  },
277
+ {
278
+ "key": "SET_STATUS",
279
+ "name": "Set Status",
280
+ "payloadSchema": [
281
+ {
282
+ "name": "entityId",
283
+ "type": "string",
284
+ "required": true
285
+ },
286
+ {
287
+ "name": "newStatus",
288
+ "type": "string",
289
+ "required": true
290
+ }
291
+ ]
292
+ },
277
293
  {
278
294
  "key": "CLOSE_VIEW",
279
295
  "name": "Close View"
@@ -321,22 +337,22 @@
321
337
  "render-ui",
322
338
  "main",
323
339
  {
324
- "type": "stack",
325
- "gap": "md",
326
- "className": "py-12",
327
340
  "children": [
328
341
  {
329
342
  "type": "spinner"
330
343
  },
331
344
  {
332
- "variant": "caption",
333
- "color": "muted",
334
345
  "type": "typography",
346
+ "color": "muted",
347
+ "variant": "caption",
335
348
  "content": "Loading events…"
336
349
  }
337
350
  ],
351
+ "gap": "md",
352
+ "align": "center",
353
+ "type": "stack",
338
354
  "direction": "vertical",
339
- "align": "center"
355
+ "className": "py-12"
340
356
  }
341
357
  ]
342
358
  ]
@@ -352,67 +368,67 @@
352
368
  {
353
369
  "children": [
354
370
  {
355
- "gap": "sm",
371
+ "direction": "horizontal",
372
+ "type": "stack",
373
+ "align": "center",
356
374
  "children": [
357
375
  {
358
- "name": "calendar",
359
- "type": "icon"
376
+ "type": "icon",
377
+ "name": "calendar"
360
378
  },
361
379
  {
362
380
  "type": "typography",
363
- "variant": "h3",
364
- "content": "@config.title"
381
+ "content": "@config.title",
382
+ "variant": "h3"
365
383
  }
366
384
  ],
367
- "direction": "horizontal",
368
- "type": "stack",
369
- "align": "center"
385
+ "gap": "sm"
370
386
  },
371
387
  {
372
- "type": "simple-grid",
373
- "cols": 4.0,
374
388
  "children": [
375
389
  {
376
- "label": "Total events",
377
- "icon": "calendar",
378
390
  "type": "stat-display",
379
- "value": "@payload.data.length"
391
+ "icon": "calendar",
392
+ "value": "@payload.data.length",
393
+ "label": "Total events"
380
394
  },
381
395
  {
382
- "label": "Published",
383
- "type": "stat-display",
384
396
  "icon": "check-circle",
385
- "value": "28"
397
+ "type": "stat-display",
398
+ "value": "28",
399
+ "label": "Published"
386
400
  },
387
401
  {
388
- "label": "Tickets sold",
389
- "type": "stat-display",
390
402
  "value": "4,820",
391
- "icon": "ticket"
403
+ "label": "Tickets sold",
404
+ "icon": "ticket",
405
+ "type": "stat-display"
392
406
  },
393
407
  {
394
- "type": "stat-display",
395
- "value": "6",
408
+ "icon": "alert-circle",
396
409
  "label": "Sold-out",
397
- "icon": "alert-circle"
410
+ "type": "stat-display",
411
+ "value": "6"
398
412
  }
399
- ]
413
+ ],
414
+ "type": "simple-grid",
415
+ "cols": 4.0
400
416
  },
401
417
  {
402
418
  "type": "divider"
403
419
  },
404
420
  {
405
- "cols": 1.0,
406
- "itemActions": "@config.itemActions",
407
421
  "type": "data-grid",
408
422
  "gap": "sm",
423
+ "entity": "@payload.data",
409
424
  "fields": "@config.fields",
410
- "entity": "@payload.data"
425
+ "cols": 1.0,
426
+ "itemActions": "@config.itemActions"
411
427
  }
412
428
  ],
413
429
  "type": "stack",
414
- "direction": "vertical",
415
- "gap": "md"
430
+ "gap": "md",
431
+ "direction": "vertical"
416
432
  }
417
433
  ]
418
434
  ]
@@ -426,8 +442,8 @@
426
442
  "render-ui",
427
443
  "main",
428
444
  {
429
- "variant": "error",
430
445
  "type": "alert",
446
+ "variant": "error",
431
447
  "message": "@payload.error"
432
448
  }
433
449
  ]
@@ -507,192 +523,192 @@
507
523
  "render-ui",
508
524
  "main",
509
525
  {
526
+ "type": "stack",
510
527
  "children": [
511
528
  {
512
529
  "gap": "sm",
513
- "direction": "horizontal",
514
- "type": "stack",
515
530
  "align": "center",
516
531
  "children": [
517
532
  {
533
+ "variant": "ghost",
518
534
  "action": "CLOSE_VIEW",
519
- "type": "button",
520
535
  "label": "Back",
521
- "variant": "ghost"
536
+ "type": "button"
522
537
  },
523
538
  {
524
- "type": "icon",
525
- "name": "calendar"
539
+ "name": "calendar",
540
+ "type": "icon"
526
541
  },
527
542
  {
528
- "variant": "h3",
543
+ "type": "typography",
529
544
  "content": "@entity.name",
530
- "type": "typography"
545
+ "variant": "h3"
531
546
  },
532
547
  {
533
548
  "variant": "primary",
534
549
  "label": "@entity.status",
535
550
  "type": "badge"
536
551
  }
537
- ]
552
+ ],
553
+ "direction": "horizontal",
554
+ "type": "stack"
538
555
  },
539
556
  {
540
557
  "type": "divider"
541
558
  },
542
559
  {
543
- "direction": "vertical",
544
560
  "gap": "sm",
561
+ "direction": "vertical",
562
+ "type": "stack",
545
563
  "children": [
546
564
  {
547
- "gap": "md",
548
- "direction": "horizontal",
549
565
  "children": [
550
566
  {
551
567
  "type": "typography",
568
+ "variant": "caption",
552
569
  "color": "muted",
553
- "content": "Venue",
554
- "variant": "caption"
570
+ "content": "Venue"
555
571
  },
556
572
  {
557
- "type": "typography",
573
+ "variant": "body",
558
574
  "content": "@entity.venue",
559
- "variant": "body"
575
+ "type": "typography"
560
576
  }
561
577
  ],
562
- "type": "stack"
578
+ "type": "stack",
579
+ "direction": "horizontal",
580
+ "gap": "md"
563
581
  },
564
582
  {
583
+ "type": "stack",
565
584
  "children": [
566
585
  {
567
- "content": "Description",
568
- "type": "typography",
569
586
  "variant": "caption",
570
- "color": "muted"
587
+ "color": "muted",
588
+ "type": "typography",
589
+ "content": "Description"
571
590
  },
572
591
  {
573
- "variant": "body",
574
592
  "type": "typography",
593
+ "variant": "body",
575
594
  "content": "@entity.description"
576
595
  }
577
596
  ],
578
- "direction": "horizontal",
579
597
  "gap": "md",
580
- "type": "stack"
598
+ "direction": "horizontal"
581
599
  },
582
600
  {
601
+ "type": "stack",
602
+ "gap": "md",
583
603
  "direction": "horizontal",
584
604
  "children": [
585
605
  {
586
- "color": "muted",
587
606
  "type": "typography",
607
+ "content": "Organizer",
588
608
  "variant": "caption",
589
- "content": "Organizer"
609
+ "color": "muted"
590
610
  },
591
611
  {
592
- "type": "typography",
593
612
  "content": "@entity.organizerId",
613
+ "type": "typography",
594
614
  "variant": "body"
595
615
  }
596
- ],
597
- "type": "stack",
598
- "gap": "md"
616
+ ]
599
617
  },
600
618
  {
601
- "direction": "horizontal",
602
619
  "type": "stack",
603
620
  "children": [
604
621
  {
605
- "content": "Recurrence",
606
- "color": "muted",
607
622
  "variant": "caption",
608
- "type": "typography"
623
+ "color": "muted",
624
+ "type": "typography",
625
+ "content": "Recurrence"
609
626
  },
610
627
  {
611
- "content": "@entity.recurrenceRule",
612
628
  "variant": "body",
629
+ "content": "@entity.recurrenceRule",
613
630
  "type": "typography"
614
631
  }
615
632
  ],
633
+ "direction": "horizontal",
616
634
  "gap": "md"
617
635
  }
618
- ],
619
- "type": "stack"
636
+ ]
620
637
  },
621
638
  {
622
639
  "type": "divider"
623
640
  },
624
641
  {
642
+ "type": "simple-grid",
643
+ "cols": 4.0,
625
644
  "children": [
626
645
  {
627
- "type": "stat-display",
628
646
  "label": "Starts",
629
- "value": "@entity.startsAt",
630
- "icon": "calendar"
647
+ "icon": "calendar",
648
+ "type": "stat-display",
649
+ "value": "@entity.startsAt"
631
650
  },
632
651
  {
633
- "type": "stat-display",
652
+ "label": "Ends",
634
653
  "value": "@entity.endsAt",
635
- "icon": "calendar-check",
636
- "label": "Ends"
654
+ "type": "stat-display",
655
+ "icon": "calendar-check"
637
656
  },
638
657
  {
639
- "type": "stat-display",
658
+ "label": "Capacity",
640
659
  "value": "@entity.capacity",
641
- "icon": "users",
642
- "label": "Capacity"
660
+ "type": "stat-display",
661
+ "icon": "users"
643
662
  },
644
663
  {
645
664
  "icon": "clock",
646
- "type": "stat-display",
647
665
  "label": "Created",
666
+ "type": "stat-display",
648
667
  "value": "@entity.createdAt"
649
668
  }
650
- ],
651
- "cols": 4.0,
652
- "type": "simple-grid"
669
+ ]
653
670
  },
654
671
  {
655
672
  "direction": "horizontal",
656
673
  "gap": "sm",
657
- "align": "center",
658
674
  "type": "stack",
675
+ "align": "center",
659
676
  "children": [
660
677
  {
661
- "action": "PUBLISH",
678
+ "type": "button",
662
679
  "label": "Publish",
680
+ "action": "PUBLISH",
663
681
  "variant": "primary",
664
682
  "actionPayload": {
665
- "id": "@entity.id",
666
- "eventId": "@entity.id"
667
- },
668
- "type": "button"
683
+ "eventId": "@entity.id",
684
+ "id": "@entity.id"
685
+ }
669
686
  },
670
687
  {
671
- "label": "Update",
672
- "type": "button",
688
+ "variant": "secondary",
673
689
  "actionPayload": {
674
- "id": "@entity.id",
675
- "eventId": "@entity.id"
690
+ "eventId": "@entity.id",
691
+ "id": "@entity.id"
676
692
  },
677
- "variant": "secondary",
678
- "action": "UPDATE"
693
+ "label": "Update",
694
+ "action": "UPDATE",
695
+ "type": "button"
679
696
  },
680
697
  {
681
698
  "action": "CANCEL",
682
- "label": "Cancel",
683
699
  "actionPayload": {
684
- "id": "@entity.id",
685
- "eventId": "@entity.id"
700
+ "eventId": "@entity.id",
701
+ "id": "@entity.id"
686
702
  },
687
- "type": "button",
688
- "variant": "danger"
703
+ "label": "Cancel",
704
+ "variant": "danger",
705
+ "type": "button"
689
706
  }
690
707
  ]
691
708
  }
692
709
  ],
693
- "gap": "md",
694
- "type": "stack",
695
- "direction": "vertical"
710
+ "direction": "vertical",
711
+ "gap": "md"
696
712
  }
697
713
  ]
698
714
  ]
@@ -712,8 +728,8 @@
712
728
  "EventRecord",
713
729
  {
714
730
  "emit": {
715
- "success": "EventLoaded",
716
- "failure": "EventLoadFailed"
731
+ "failure": "EventLoadFailed",
732
+ "success": "EventLoaded"
717
733
  }
718
734
  }
719
735
  ],
@@ -721,6 +737,7 @@
721
737
  "render-ui",
722
738
  "main",
723
739
  {
740
+ "align": "center",
724
741
  "gap": "md",
725
742
  "type": "stack",
726
743
  "className": "py-12",
@@ -730,13 +747,63 @@
730
747
  "type": "spinner"
731
748
  },
732
749
  {
733
- "color": "muted",
734
750
  "content": "Cancelling event…",
751
+ "variant": "caption",
752
+ "type": "typography",
753
+ "color": "muted"
754
+ }
755
+ ]
756
+ }
757
+ ]
758
+ ]
759
+ },
760
+ {
761
+ "from": "browsing",
762
+ "to": "loading",
763
+ "event": "SET_STATUS",
764
+ "effects": [
765
+ [
766
+ "set",
767
+ "@entity.id",
768
+ "@payload.entityId"
769
+ ],
770
+ [
771
+ "set",
772
+ "@entity.status",
773
+ "@payload.newStatus"
774
+ ],
775
+ [
776
+ "persist",
777
+ "update",
778
+ "EventRecord",
779
+ "@entity",
780
+ {
781
+ "emit": {
782
+ "failure": "EventLoadFailed",
783
+ "success": "EventLoaded"
784
+ }
785
+ }
786
+ ],
787
+ [
788
+ "render-ui",
789
+ "main",
790
+ {
791
+ "gap": "md",
792
+ "type": "stack",
793
+ "align": "center",
794
+ "className": "py-12",
795
+ "children": [
796
+ {
797
+ "type": "spinner"
798
+ },
799
+ {
800
+ "color": "muted",
801
+ "content": "Updating event status…",
735
802
  "type": "typography",
736
803
  "variant": "caption"
737
804
  }
738
805
  ],
739
- "align": "center"
806
+ "direction": "vertical"
740
807
  }
741
808
  ]
742
809
  ]
@@ -763,18 +830,18 @@
763
830
  "direction": "vertical",
764
831
  "gap": "md",
765
832
  "className": "py-12",
833
+ "type": "stack",
766
834
  "children": [
767
835
  {
768
836
  "type": "spinner"
769
837
  },
770
838
  {
771
- "color": "muted",
772
839
  "content": "Loading events…",
773
840
  "type": "typography",
841
+ "color": "muted",
774
842
  "variant": "caption"
775
843
  }
776
844
  ],
777
- "type": "stack",
778
845
  "align": "center"
779
846
  }
780
847
  ]
@@ -804,20 +871,20 @@
804
871
  "render-ui",
805
872
  "main",
806
873
  {
807
- "align": "center",
808
- "direction": "vertical",
874
+ "className": "py-12",
809
875
  "gap": "md",
876
+ "direction": "vertical",
810
877
  "type": "stack",
811
- "className": "py-12",
878
+ "align": "center",
812
879
  "children": [
813
880
  {
814
881
  "type": "spinner"
815
882
  },
816
883
  {
817
- "content": "Publishing event…",
818
- "color": "muted",
884
+ "variant": "caption",
819
885
  "type": "typography",
820
- "variant": "caption"
886
+ "content": "Publishing event…",
887
+ "color": "muted"
821
888
  }
822
889
  ]
823
890
  }
@@ -839,8 +906,8 @@
839
906
  "EventRecord",
840
907
  {
841
908
  "emit": {
842
- "success": "EventLoaded",
843
- "failure": "EventLoadFailed"
909
+ "failure": "EventLoadFailed",
910
+ "success": "EventLoaded"
844
911
  }
845
912
  }
846
913
  ],
@@ -848,22 +915,22 @@
848
915
  "render-ui",
849
916
  "main",
850
917
  {
918
+ "type": "stack",
919
+ "direction": "vertical",
920
+ "align": "center",
921
+ "className": "py-12",
922
+ "gap": "md",
851
923
  "children": [
852
924
  {
853
925
  "type": "spinner"
854
926
  },
855
927
  {
856
- "type": "typography",
857
- "color": "muted",
858
928
  "variant": "caption",
859
- "content": "Updating event…"
929
+ "content": "Updating event…",
930
+ "type": "typography",
931
+ "color": "muted"
860
932
  }
861
- ],
862
- "className": "py-12",
863
- "gap": "md",
864
- "align": "center",
865
- "type": "stack",
866
- "direction": "vertical"
933
+ ]
867
934
  }
868
935
  ]
869
936
  ]
@@ -883,8 +950,8 @@
883
950
  "EventRecord",
884
951
  {
885
952
  "emit": {
886
- "success": "EventLoaded",
887
- "failure": "EventLoadFailed"
953
+ "failure": "EventLoadFailed",
954
+ "success": "EventLoaded"
888
955
  }
889
956
  }
890
957
  ],
@@ -892,22 +959,22 @@
892
959
  "render-ui",
893
960
  "main",
894
961
  {
895
- "align": "center",
896
- "type": "stack",
897
- "direction": "vertical",
898
- "gap": "md",
899
962
  "children": [
900
963
  {
901
964
  "type": "spinner"
902
965
  },
903
966
  {
967
+ "color": "muted",
904
968
  "content": "Cancelling event…",
905
969
  "type": "typography",
906
- "color": "muted",
907
970
  "variant": "caption"
908
971
  }
909
972
  ],
910
- "className": "py-12"
973
+ "align": "center",
974
+ "type": "stack",
975
+ "gap": "md",
976
+ "className": "py-12",
977
+ "direction": "vertical"
911
978
  }
912
979
  ]
913
980
  ]
@@ -931,8 +998,8 @@
931
998
  "render-ui",
932
999
  "main",
933
1000
  {
934
- "size": "sm",
935
- "type": "spinner"
1001
+ "type": "spinner",
1002
+ "size": "sm"
936
1003
  }
937
1004
  ]
938
1005
  ]
@@ -944,16 +1011,16 @@
944
1011
  "type": "[ItemAction]",
945
1012
  "default": [
946
1013
  {
947
- "label": "Open",
948
- "icon": "arrow-right",
1014
+ "event": "OPEN_EVENT",
949
1015
  "variant": "primary",
950
- "event": "OPEN_EVENT"
1016
+ "icon": "arrow-right",
1017
+ "label": "Open"
951
1018
  },
952
1019
  {
953
- "label": "Cancel",
954
1020
  "event": "CANCEL",
955
1021
  "variant": "danger",
956
- "icon": "x"
1022
+ "icon": "x",
1023
+ "label": "Cancel"
957
1024
  }
958
1025
  ],
959
1026
  "label": "Row actions",
@@ -967,11 +1034,6 @@
967
1034
  "type": "string",
968
1035
  "required": false
969
1036
  },
970
- "icon": {
971
- "name": "icon",
972
- "type": "string",
973
- "required": false
974
- },
975
1037
  "label": {
976
1038
  "name": "label",
977
1039
  "type": "string",
@@ -981,49 +1043,61 @@
981
1043
  "name": "event",
982
1044
  "type": "string",
983
1045
  "required": true
1046
+ },
1047
+ "icon": {
1048
+ "name": "icon",
1049
+ "type": "string",
1050
+ "required": false
984
1051
  }
985
1052
  }
986
1053
  }
987
1054
  },
988
- "title": {
989
- "type": "string",
990
- "default": "Events",
991
- "label": "Section title",
992
- "description": "Heading shown above the events list",
1055
+ "bookingWindowDays": {
1056
+ "type": "number",
1057
+ "default": 180.0,
1058
+ "label": "Booking window (days)",
1059
+ "description": "How far in advance attendees can purchase tickets.",
1060
+ "tier": "customization"
1061
+ },
1062
+ "rescheduleWindowHours": {
1063
+ "type": "number",
1064
+ "default": 48.0,
1065
+ "label": "Reschedule window (hours)",
1066
+ "description": "Hours before startsAt during which attendees can self-reschedule.",
993
1067
  "tier": "customization"
994
1068
  },
995
1069
  "fields": {
996
1070
  "type": "[FieldSpec]",
997
1071
  "default": [
998
1072
  {
999
- "variant": "caption",
1073
+ "name": "name",
1000
1074
  "label": "Name",
1001
- "name": "name"
1075
+ "variant": "caption"
1002
1076
  },
1003
1077
  {
1004
- "name": "venue",
1005
1078
  "label": "Venue",
1006
- "variant": "caption"
1079
+ "variant": "caption",
1080
+ "name": "venue"
1007
1081
  },
1008
1082
  {
1009
1083
  "name": "startsAt",
1010
- "variant": "caption",
1011
- "label": "Starts"
1084
+ "label": "Starts",
1085
+ "variant": "caption"
1012
1086
  },
1013
1087
  {
1014
- "label": "Ends",
1015
1088
  "name": "endsAt",
1089
+ "label": "Ends",
1016
1090
  "variant": "caption"
1017
1091
  },
1018
1092
  {
1093
+ "name": "capacity",
1019
1094
  "label": "Capacity",
1020
- "variant": "caption",
1021
- "name": "capacity"
1095
+ "variant": "caption"
1022
1096
  },
1023
1097
  {
1098
+ "name": "status",
1024
1099
  "label": "Status",
1025
- "variant": "badge",
1026
- "name": "status"
1100
+ "variant": "badge"
1027
1101
  }
1028
1102
  ],
1029
1103
  "label": "Columns to show",
@@ -1032,6 +1106,16 @@
1032
1106
  "items": {
1033
1107
  "type": "object",
1034
1108
  "properties": {
1109
+ "header": {
1110
+ "name": "header",
1111
+ "type": "string",
1112
+ "required": false
1113
+ },
1114
+ "name": {
1115
+ "name": "name",
1116
+ "type": "string",
1117
+ "required": true
1118
+ },
1035
1119
  "label": {
1036
1120
  "name": "label",
1037
1121
  "type": "string",
@@ -1047,8 +1131,8 @@
1047
1131
  "type": "string",
1048
1132
  "required": false
1049
1133
  },
1050
- "header": {
1051
- "name": "header",
1134
+ "variant": {
1135
+ "name": "variant",
1052
1136
  "type": "string",
1053
1137
  "required": false
1054
1138
  },
@@ -1056,19 +1140,66 @@
1056
1140
  "name": "icon",
1057
1141
  "type": "string",
1058
1142
  "required": false
1059
- },
1060
- "variant": {
1061
- "name": "variant",
1062
- "type": "string",
1063
- "required": false
1064
- },
1065
- "name": {
1066
- "name": "name",
1067
- "type": "string",
1068
- "required": true
1069
1143
  }
1070
1144
  }
1071
1145
  }
1146
+ },
1147
+ "leadTimeMinutes": {
1148
+ "type": "number",
1149
+ "default": 60.0,
1150
+ "label": "Lead time (minutes)",
1151
+ "description": "Minimum minutes before startsAt that ticket sales remain open.",
1152
+ "tier": "customization"
1153
+ },
1154
+ "maxReschedules": {
1155
+ "type": "number",
1156
+ "default": 1.0,
1157
+ "label": "Max reschedules",
1158
+ "description": "Hard cap on reschedule count per ticket.",
1159
+ "tier": "advanced"
1160
+ },
1161
+ "title": {
1162
+ "type": "string",
1163
+ "default": "Events",
1164
+ "label": "Section title",
1165
+ "description": "Heading shown above the events list",
1166
+ "tier": "customization"
1167
+ },
1168
+ "blackoutDates": {
1169
+ "type": "[string]",
1170
+ "default": [],
1171
+ "label": "Blackout dates",
1172
+ "description": "ISO dates blocked from booking. Compose std-lifecycle to enforce.",
1173
+ "tier": "customization",
1174
+ "items": {
1175
+ "type": "string"
1176
+ }
1177
+ },
1178
+ "noShowGracePeriodMinutes": {
1179
+ "type": "number",
1180
+ "default": 30.0,
1181
+ "label": "No-show grace (minutes)",
1182
+ "description": "Minutes after startsAt before unscanned tickets auto-mark no_show. Wire via std-lifecycle.",
1183
+ "tier": "customization"
1184
+ },
1185
+ "cancellationPolicy": {
1186
+ "type": "string",
1187
+ "default": "partial-refund",
1188
+ "label": "Cancellation policy",
1189
+ "description": "Refund treatment when a ticket is cancelled inside the reschedule window.",
1190
+ "tier": "customization",
1191
+ "values": [
1192
+ "free",
1193
+ "partial-refund",
1194
+ "no-refund"
1195
+ ]
1196
+ },
1197
+ "bookingHours": {
1198
+ "type": "string",
1199
+ "default": "00:00-23:59",
1200
+ "label": "Booking hours",
1201
+ "description": "Daily window during which ticket purchases are allowed (HH:MM-HH:MM).",
1202
+ "tier": "customization"
1072
1203
  }
1073
1204
  },
1074
1205
  "scope": "collection"
@@ -1087,4 +1218,4 @@
1087
1218
  ]
1088
1219
  }
1089
1220
  ]
1090
- }
1221
+ }