@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.
- package/behaviors/registry/app/atoms/std-ap-bill.orb +423 -171
- package/behaviors/registry/app/atoms/std-applicant.orb +207 -165
- package/behaviors/registry/app/atoms/std-application.orb +300 -188
- package/behaviors/registry/app/atoms/std-approval-request.orb +370 -215
- package/behaviors/registry/app/atoms/std-campaign-goal.orb +382 -167
- package/behaviors/registry/app/atoms/std-change-order.orb +458 -194
- package/behaviors/registry/app/atoms/std-chart-of-accounts.orb +201 -130
- package/behaviors/registry/app/atoms/std-checkin.orb +215 -151
- package/behaviors/registry/app/atoms/std-checkout-terminal.orb +322 -133
- package/behaviors/registry/app/atoms/std-class-roster.orb +343 -170
- package/behaviors/registry/app/atoms/std-class-session.orb +321 -190
- package/behaviors/registry/app/atoms/std-court-deadline.orb +353 -182
- package/behaviors/registry/app/atoms/std-customer-account.orb +376 -157
- package/behaviors/registry/app/atoms/std-donation-receipt.orb +214 -143
- package/behaviors/registry/app/atoms/std-donor.orb +191 -156
- package/behaviors/registry/app/atoms/std-drip-sequence.orb +409 -170
- package/behaviors/registry/app/atoms/std-driver.orb +440 -202
- package/behaviors/registry/app/atoms/std-dunning.orb +431 -167
- package/behaviors/registry/app/atoms/std-email-broadcast.orb +386 -143
- package/behaviors/registry/app/atoms/std-event.orb +309 -178
- package/behaviors/registry/app/atoms/std-form-builder.orb +353 -220
- package/behaviors/registry/app/atoms/std-health-score.orb +218 -183
- package/behaviors/registry/app/atoms/std-help-article.orb +425 -162
- package/behaviors/registry/app/atoms/std-help-category.orb +409 -166
- package/behaviors/registry/app/atoms/std-interview-slot.orb +311 -138
- package/behaviors/registry/app/atoms/std-invoice.orb +349 -211
- package/behaviors/registry/app/atoms/std-kitchen-display.orb +308 -184
- package/behaviors/registry/app/atoms/std-lease.orb +411 -178
- package/behaviors/registry/app/atoms/std-ledger-entry.orb +266 -195
- package/behaviors/registry/app/atoms/std-maintenance-request.orb +396 -177
- package/behaviors/registry/app/atoms/std-matter.orb +415 -189
- package/behaviors/registry/app/atoms/std-membership.orb +387 -167
- package/behaviors/registry/app/atoms/std-menu.orb +232 -175
- package/behaviors/registry/app/atoms/std-modifier-group.orb +224 -167
- package/behaviors/registry/app/atoms/std-nps-survey.orb +390 -138
- package/behaviors/registry/app/atoms/std-offer-letter.orb +242 -133
- package/behaviors/registry/app/atoms/std-payout-ledger.orb +428 -176
- package/behaviors/registry/app/atoms/std-question-bank.orb +211 -145
- package/behaviors/registry/app/atoms/std-receipt.orb +248 -177
- package/behaviors/registry/app/atoms/std-recurring-charge.orb +421 -149
- package/behaviors/registry/app/atoms/std-renewal-risk.orb +382 -153
- package/behaviors/registry/app/atoms/std-rent-charge.orb +476 -176
- package/behaviors/registry/app/atoms/std-reorder-rule.orb +246 -176
- package/behaviors/registry/app/atoms/std-response-collector.orb +213 -150
- package/behaviors/registry/app/atoms/std-rfi.orb +365 -210
- package/behaviors/registry/app/atoms/std-route-optimize.orb +195 -146
- package/behaviors/registry/app/atoms/std-segment.orb +173 -139
- package/behaviors/registry/app/atoms/std-stock-level.orb +205 -135
- package/behaviors/registry/app/atoms/std-submittal.orb +323 -166
- package/behaviors/registry/app/atoms/std-table-map.orb +187 -63
- package/behaviors/registry/app/atoms/std-technician-dispatch.orb +290 -202
- package/behaviors/registry/app/atoms/std-telematics-event.orb +156 -128
- package/behaviors/registry/app/atoms/std-template-editor.orb +255 -189
- package/behaviors/registry/app/atoms/std-tenant.orb +375 -147
- package/behaviors/registry/app/atoms/std-ticket-tier.orb +463 -150
- package/behaviors/registry/app/atoms/std-time-entry.orb +259 -150
- package/behaviors/registry/app/atoms/std-timesheet.orb +292 -183
- package/behaviors/registry/app/atoms/std-trial.orb +401 -183
- package/behaviors/registry/app/atoms/std-vehicle.orb +447 -205
- package/behaviors/registry/app/atoms/std-vendor-onboarding.orb +289 -245
- package/behaviors/registry/app/atoms/std-waitlist.orb +308 -177
- package/behaviors/registry/app/atoms/std-warehouse.orb +211 -141
- package/behaviors/registry/app/atoms/std-work-order.orb +374 -219
- package/behaviors/registry/app/organisms/std-subscription-billing.orb +282 -195
- package/behaviors/registry/core/atoms/std-approval-gate.orb +703 -0
- package/behaviors/registry/core/atoms/std-audit-capture.orb +150 -64
- package/behaviors/registry/core/atoms/std-data-erasure.orb +546 -0
- package/behaviors/registry/core/atoms/std-lifecycle.orb +343 -0
- package/behaviors/registry/core/atoms/std-notify-on-event.orb +132 -46
- package/behaviors/registry/core/atoms/std-reminder-scheduler.orb +330 -0
- package/behaviors/registry/marketing/atoms/std-marketing-article.orb +96 -0
- package/behaviors/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
- package/behaviors/registry/marketing/atoms/std-marketing-community.orb +134 -0
- package/behaviors/registry/marketing/atoms/std-marketing-cta.orb +206 -0
- package/behaviors/registry/marketing/atoms/std-marketing-features.orb +193 -0
- package/behaviors/registry/marketing/atoms/std-marketing-footer.orb +192 -0
- package/behaviors/registry/marketing/atoms/std-marketing-hero.orb +262 -0
- package/behaviors/registry/marketing/atoms/std-marketing-nav.orb +190 -0
- package/behaviors/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
- package/behaviors/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
- package/behaviors/registry/marketing/atoms/std-marketing-split.orb +135 -0
- package/behaviors/registry/marketing/atoms/std-marketing-stats.orb +120 -0
- package/behaviors/registry/marketing/atoms/std-marketing-steps.orb +179 -0
- package/behaviors/registry/marketing/atoms/std-marketing-team.orb +192 -0
- package/behaviors/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
- package/behaviors/registry/marketing/molecules/std-about-page.orb +440 -0
- package/behaviors/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
- package/behaviors/registry/marketing/molecules/std-landing-page.orb +521 -0
- package/behaviors/registry/marketing/molecules/std-pricing-page.orb +406 -0
- package/behaviors/registry/marketing/organisms/std-marketing-site.orb +1654 -0
- package/dist/behaviors/behaviors-registry.json +2913 -156
- package/dist/behaviors/registry/app/atoms/std-ap-bill.orb +423 -171
- package/dist/behaviors/registry/app/atoms/std-applicant.orb +207 -165
- package/dist/behaviors/registry/app/atoms/std-application.orb +300 -188
- package/dist/behaviors/registry/app/atoms/std-approval-request.orb +370 -215
- package/dist/behaviors/registry/app/atoms/std-campaign-goal.orb +382 -167
- package/dist/behaviors/registry/app/atoms/std-change-order.orb +458 -194
- package/dist/behaviors/registry/app/atoms/std-chart-of-accounts.orb +201 -130
- package/dist/behaviors/registry/app/atoms/std-checkin.orb +215 -151
- package/dist/behaviors/registry/app/atoms/std-checkout-terminal.orb +322 -133
- package/dist/behaviors/registry/app/atoms/std-class-roster.orb +343 -170
- package/dist/behaviors/registry/app/atoms/std-class-session.orb +321 -190
- package/dist/behaviors/registry/app/atoms/std-court-deadline.orb +353 -182
- package/dist/behaviors/registry/app/atoms/std-customer-account.orb +376 -157
- package/dist/behaviors/registry/app/atoms/std-donation-receipt.orb +214 -143
- package/dist/behaviors/registry/app/atoms/std-donor.orb +191 -156
- package/dist/behaviors/registry/app/atoms/std-drip-sequence.orb +409 -170
- package/dist/behaviors/registry/app/atoms/std-driver.orb +440 -202
- package/dist/behaviors/registry/app/atoms/std-dunning.orb +431 -167
- package/dist/behaviors/registry/app/atoms/std-email-broadcast.orb +386 -143
- package/dist/behaviors/registry/app/atoms/std-event.orb +309 -178
- package/dist/behaviors/registry/app/atoms/std-form-builder.orb +353 -220
- package/dist/behaviors/registry/app/atoms/std-health-score.orb +218 -183
- package/dist/behaviors/registry/app/atoms/std-help-article.orb +425 -162
- package/dist/behaviors/registry/app/atoms/std-help-category.orb +409 -166
- package/dist/behaviors/registry/app/atoms/std-interview-slot.orb +311 -138
- package/dist/behaviors/registry/app/atoms/std-invoice.orb +349 -211
- package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +308 -184
- package/dist/behaviors/registry/app/atoms/std-lease.orb +411 -178
- package/dist/behaviors/registry/app/atoms/std-ledger-entry.orb +266 -195
- package/dist/behaviors/registry/app/atoms/std-maintenance-request.orb +396 -177
- package/dist/behaviors/registry/app/atoms/std-matter.orb +415 -189
- package/dist/behaviors/registry/app/atoms/std-membership.orb +387 -167
- package/dist/behaviors/registry/app/atoms/std-menu.orb +232 -175
- package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +224 -167
- package/dist/behaviors/registry/app/atoms/std-nps-survey.orb +390 -138
- package/dist/behaviors/registry/app/atoms/std-offer-letter.orb +242 -133
- package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +428 -176
- package/dist/behaviors/registry/app/atoms/std-question-bank.orb +211 -145
- package/dist/behaviors/registry/app/atoms/std-receipt.orb +248 -177
- package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +421 -149
- package/dist/behaviors/registry/app/atoms/std-renewal-risk.orb +382 -153
- package/dist/behaviors/registry/app/atoms/std-rent-charge.orb +476 -176
- package/dist/behaviors/registry/app/atoms/std-reorder-rule.orb +246 -176
- package/dist/behaviors/registry/app/atoms/std-response-collector.orb +213 -150
- package/dist/behaviors/registry/app/atoms/std-rfi.orb +365 -210
- package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +195 -146
- package/dist/behaviors/registry/app/atoms/std-segment.orb +173 -139
- package/dist/behaviors/registry/app/atoms/std-stock-level.orb +205 -135
- package/dist/behaviors/registry/app/atoms/std-submittal.orb +323 -166
- package/dist/behaviors/registry/app/atoms/std-table-map.orb +187 -63
- package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +290 -202
- package/dist/behaviors/registry/app/atoms/std-telematics-event.orb +156 -128
- package/dist/behaviors/registry/app/atoms/std-template-editor.orb +255 -189
- package/dist/behaviors/registry/app/atoms/std-tenant.orb +375 -147
- package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +463 -150
- package/dist/behaviors/registry/app/atoms/std-time-entry.orb +259 -150
- package/dist/behaviors/registry/app/atoms/std-timesheet.orb +292 -183
- package/dist/behaviors/registry/app/atoms/std-trial.orb +401 -183
- package/dist/behaviors/registry/app/atoms/std-vehicle.orb +447 -205
- package/dist/behaviors/registry/app/atoms/std-vendor-onboarding.orb +289 -245
- package/dist/behaviors/registry/app/atoms/std-waitlist.orb +308 -177
- package/dist/behaviors/registry/app/atoms/std-warehouse.orb +211 -141
- package/dist/behaviors/registry/app/atoms/std-work-order.orb +374 -219
- package/dist/behaviors/registry/app/organisms/std-subscription-billing.orb +282 -195
- package/dist/behaviors/registry/core/atoms/std-approval-gate.orb +703 -0
- package/dist/behaviors/registry/core/atoms/std-audit-capture.orb +150 -64
- package/dist/behaviors/registry/core/atoms/std-data-erasure.orb +546 -0
- package/dist/behaviors/registry/core/atoms/std-lifecycle.orb +343 -0
- package/dist/behaviors/registry/core/atoms/std-notify-on-event.orb +132 -46
- package/dist/behaviors/registry/core/atoms/std-reminder-scheduler.orb +330 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-article.orb +96 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-community.orb +134 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-cta.orb +206 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-features.orb +193 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-footer.orb +192 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-hero.orb +262 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-nav.orb +190 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-split.orb +135 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-stats.orb +120 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-steps.orb +179 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-team.orb +192 -0
- package/dist/behaviors/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
- package/dist/behaviors/registry/marketing/molecules/std-about-page.orb +440 -0
- package/dist/behaviors/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
- package/dist/behaviors/registry/marketing/molecules/std-landing-page.orb +521 -0
- package/dist/behaviors/registry/marketing/molecules/std-pricing-page.orb +406 -0
- package/dist/behaviors/registry/marketing/organisms/std-marketing-site.orb +1654 -0
- package/dist/behaviors-registry.json +2913 -156
- package/dist/registry/app/atoms/std-ap-bill.orb +423 -171
- package/dist/registry/app/atoms/std-applicant.orb +207 -165
- package/dist/registry/app/atoms/std-application.orb +300 -188
- package/dist/registry/app/atoms/std-approval-request.orb +370 -215
- package/dist/registry/app/atoms/std-campaign-goal.orb +382 -167
- package/dist/registry/app/atoms/std-change-order.orb +458 -194
- package/dist/registry/app/atoms/std-chart-of-accounts.orb +201 -130
- package/dist/registry/app/atoms/std-checkin.orb +215 -151
- package/dist/registry/app/atoms/std-checkout-terminal.orb +322 -133
- package/dist/registry/app/atoms/std-class-roster.orb +343 -170
- package/dist/registry/app/atoms/std-class-session.orb +321 -190
- package/dist/registry/app/atoms/std-court-deadline.orb +353 -182
- package/dist/registry/app/atoms/std-customer-account.orb +376 -157
- package/dist/registry/app/atoms/std-donation-receipt.orb +214 -143
- package/dist/registry/app/atoms/std-donor.orb +191 -156
- package/dist/registry/app/atoms/std-drip-sequence.orb +409 -170
- package/dist/registry/app/atoms/std-driver.orb +440 -202
- package/dist/registry/app/atoms/std-dunning.orb +431 -167
- package/dist/registry/app/atoms/std-email-broadcast.orb +386 -143
- package/dist/registry/app/atoms/std-event.orb +309 -178
- package/dist/registry/app/atoms/std-form-builder.orb +353 -220
- package/dist/registry/app/atoms/std-health-score.orb +218 -183
- package/dist/registry/app/atoms/std-help-article.orb +425 -162
- package/dist/registry/app/atoms/std-help-category.orb +409 -166
- package/dist/registry/app/atoms/std-interview-slot.orb +311 -138
- package/dist/registry/app/atoms/std-invoice.orb +349 -211
- package/dist/registry/app/atoms/std-kitchen-display.orb +308 -184
- package/dist/registry/app/atoms/std-lease.orb +411 -178
- package/dist/registry/app/atoms/std-ledger-entry.orb +266 -195
- package/dist/registry/app/atoms/std-maintenance-request.orb +396 -177
- package/dist/registry/app/atoms/std-matter.orb +415 -189
- package/dist/registry/app/atoms/std-membership.orb +387 -167
- package/dist/registry/app/atoms/std-menu.orb +232 -175
- package/dist/registry/app/atoms/std-modifier-group.orb +224 -167
- package/dist/registry/app/atoms/std-nps-survey.orb +390 -138
- package/dist/registry/app/atoms/std-offer-letter.orb +242 -133
- package/dist/registry/app/atoms/std-payout-ledger.orb +428 -176
- package/dist/registry/app/atoms/std-question-bank.orb +211 -145
- package/dist/registry/app/atoms/std-receipt.orb +248 -177
- package/dist/registry/app/atoms/std-recurring-charge.orb +421 -149
- package/dist/registry/app/atoms/std-renewal-risk.orb +382 -153
- package/dist/registry/app/atoms/std-rent-charge.orb +476 -176
- package/dist/registry/app/atoms/std-reorder-rule.orb +246 -176
- package/dist/registry/app/atoms/std-response-collector.orb +213 -150
- package/dist/registry/app/atoms/std-rfi.orb +365 -210
- package/dist/registry/app/atoms/std-route-optimize.orb +195 -146
- package/dist/registry/app/atoms/std-segment.orb +173 -139
- package/dist/registry/app/atoms/std-stock-level.orb +205 -135
- package/dist/registry/app/atoms/std-submittal.orb +323 -166
- package/dist/registry/app/atoms/std-table-map.orb +187 -63
- package/dist/registry/app/atoms/std-technician-dispatch.orb +290 -202
- package/dist/registry/app/atoms/std-telematics-event.orb +156 -128
- package/dist/registry/app/atoms/std-template-editor.orb +255 -189
- package/dist/registry/app/atoms/std-tenant.orb +375 -147
- package/dist/registry/app/atoms/std-ticket-tier.orb +463 -150
- package/dist/registry/app/atoms/std-time-entry.orb +259 -150
- package/dist/registry/app/atoms/std-timesheet.orb +292 -183
- package/dist/registry/app/atoms/std-trial.orb +401 -183
- package/dist/registry/app/atoms/std-vehicle.orb +447 -205
- package/dist/registry/app/atoms/std-vendor-onboarding.orb +289 -245
- package/dist/registry/app/atoms/std-waitlist.orb +308 -177
- package/dist/registry/app/atoms/std-warehouse.orb +211 -141
- package/dist/registry/app/atoms/std-work-order.orb +374 -219
- package/dist/registry/app/organisms/std-subscription-billing.orb +282 -195
- package/dist/registry/core/atoms/std-approval-gate.orb +703 -0
- package/dist/registry/core/atoms/std-audit-capture.orb +150 -64
- package/dist/registry/core/atoms/std-data-erasure.orb +546 -0
- package/dist/registry/core/atoms/std-lifecycle.orb +343 -0
- package/dist/registry/core/atoms/std-notify-on-event.orb +132 -46
- package/dist/registry/core/atoms/std-reminder-scheduler.orb +330 -0
- package/dist/registry/marketing/atoms/std-marketing-article.orb +96 -0
- package/dist/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
- package/dist/registry/marketing/atoms/std-marketing-community.orb +134 -0
- package/dist/registry/marketing/atoms/std-marketing-cta.orb +206 -0
- package/dist/registry/marketing/atoms/std-marketing-features.orb +193 -0
- package/dist/registry/marketing/atoms/std-marketing-footer.orb +192 -0
- package/dist/registry/marketing/atoms/std-marketing-hero.orb +262 -0
- package/dist/registry/marketing/atoms/std-marketing-nav.orb +190 -0
- package/dist/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
- package/dist/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
- package/dist/registry/marketing/atoms/std-marketing-split.orb +135 -0
- package/dist/registry/marketing/atoms/std-marketing-stats.orb +120 -0
- package/dist/registry/marketing/atoms/std-marketing-steps.orb +179 -0
- package/dist/registry/marketing/atoms/std-marketing-team.orb +192 -0
- package/dist/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
- package/dist/registry/marketing/molecules/std-about-page.orb +440 -0
- package/dist/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
- package/dist/registry/marketing/molecules/std-landing-page.orb +521 -0
- package/dist/registry/marketing/molecules/std-pricing-page.orb +406 -0
- package/dist/registry/marketing/organisms/std-marketing-site.orb +1654 -0
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "std-class-roster",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "std-class-roster —
|
|
3
|
+
"version": "1.2.0",
|
|
4
|
+
"description": "std-class-roster — members enrolled in a class session. Listens for SET_STATUS so sibling std-lifecycle can auto-transition. Exposes Scheduling/Booking + HR knobs (bookingWindowDays, noShowGracePeriodMinutes, anonymizeOnRejection, …).",
|
|
5
5
|
"orbitals": [
|
|
6
6
|
{
|
|
7
7
|
"name": "ClassRosterOrbital",
|
|
@@ -237,6 +237,22 @@
|
|
|
237
237
|
}
|
|
238
238
|
]
|
|
239
239
|
},
|
|
240
|
+
{
|
|
241
|
+
"key": "SET_STATUS",
|
|
242
|
+
"name": "Set Status",
|
|
243
|
+
"payloadSchema": [
|
|
244
|
+
{
|
|
245
|
+
"name": "entityId",
|
|
246
|
+
"type": "string",
|
|
247
|
+
"required": true
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"name": "newStatus",
|
|
251
|
+
"type": "string",
|
|
252
|
+
"required": true
|
|
253
|
+
}
|
|
254
|
+
]
|
|
255
|
+
},
|
|
240
256
|
{
|
|
241
257
|
"key": "CLOSE_VIEW",
|
|
242
258
|
"name": "Close View"
|
|
@@ -253,8 +269,8 @@
|
|
|
253
269
|
"RosterEntry",
|
|
254
270
|
{
|
|
255
271
|
"emit": {
|
|
256
|
-
"
|
|
257
|
-
"
|
|
272
|
+
"success": "RosterEntryLoaded",
|
|
273
|
+
"failure": "RosterEntryLoadFailed"
|
|
258
274
|
}
|
|
259
275
|
}
|
|
260
276
|
],
|
|
@@ -262,20 +278,20 @@
|
|
|
262
278
|
"render-ui",
|
|
263
279
|
"main",
|
|
264
280
|
{
|
|
265
|
-
"gap": "md",
|
|
266
|
-
"type": "stack",
|
|
267
281
|
"align": "center",
|
|
282
|
+
"gap": "md",
|
|
268
283
|
"className": "py-12",
|
|
269
284
|
"direction": "vertical",
|
|
285
|
+
"type": "stack",
|
|
270
286
|
"children": [
|
|
271
287
|
{
|
|
272
288
|
"type": "spinner"
|
|
273
289
|
},
|
|
274
290
|
{
|
|
275
|
-
"variant": "caption",
|
|
276
|
-
"type": "typography",
|
|
277
291
|
"color": "muted",
|
|
278
|
-
"content": "Loading roster…"
|
|
292
|
+
"content": "Loading roster…",
|
|
293
|
+
"type": "typography",
|
|
294
|
+
"variant": "caption"
|
|
279
295
|
}
|
|
280
296
|
]
|
|
281
297
|
}
|
|
@@ -291,35 +307,33 @@
|
|
|
291
307
|
"render-ui",
|
|
292
308
|
"main",
|
|
293
309
|
{
|
|
310
|
+
"type": "stack",
|
|
294
311
|
"direction": "vertical",
|
|
295
|
-
"gap": "md",
|
|
296
312
|
"children": [
|
|
297
313
|
{
|
|
314
|
+
"direction": "horizontal",
|
|
298
315
|
"type": "stack",
|
|
299
316
|
"align": "center",
|
|
300
317
|
"children": [
|
|
301
318
|
{
|
|
302
|
-
"
|
|
303
|
-
"
|
|
319
|
+
"type": "icon",
|
|
320
|
+
"name": "users"
|
|
304
321
|
},
|
|
305
322
|
{
|
|
306
|
-
"type": "typography",
|
|
307
323
|
"content": "@config.title",
|
|
324
|
+
"type": "typography",
|
|
308
325
|
"variant": "h3"
|
|
309
326
|
}
|
|
310
327
|
],
|
|
311
|
-
"gap": "sm"
|
|
312
|
-
"direction": "horizontal"
|
|
328
|
+
"gap": "sm"
|
|
313
329
|
},
|
|
314
330
|
{
|
|
315
|
-
"type": "simple-grid",
|
|
316
|
-
"cols": 4.0,
|
|
317
331
|
"children": [
|
|
318
332
|
{
|
|
319
|
-
"label": "Enrolled",
|
|
320
333
|
"type": "stat-display",
|
|
334
|
+
"value": "@payload.data.length",
|
|
321
335
|
"icon": "users",
|
|
322
|
-
"
|
|
336
|
+
"label": "Enrolled"
|
|
323
337
|
},
|
|
324
338
|
{
|
|
325
339
|
"icon": "check-circle",
|
|
@@ -328,10 +342,10 @@
|
|
|
328
342
|
"type": "stat-display"
|
|
329
343
|
},
|
|
330
344
|
{
|
|
331
|
-
"icon": "user-x",
|
|
332
345
|
"type": "stat-display",
|
|
333
346
|
"value": "3",
|
|
334
|
-
"label": "No shows"
|
|
347
|
+
"label": "No shows",
|
|
348
|
+
"icon": "user-x"
|
|
335
349
|
},
|
|
336
350
|
{
|
|
337
351
|
"icon": "clock",
|
|
@@ -339,21 +353,23 @@
|
|
|
339
353
|
"label": "Waitlist",
|
|
340
354
|
"type": "stat-display"
|
|
341
355
|
}
|
|
342
|
-
]
|
|
356
|
+
],
|
|
357
|
+
"type": "simple-grid",
|
|
358
|
+
"cols": 4.0
|
|
343
359
|
},
|
|
344
360
|
{
|
|
345
361
|
"type": "divider"
|
|
346
362
|
},
|
|
347
363
|
{
|
|
348
|
-
"
|
|
364
|
+
"itemActions": "@config.itemActions",
|
|
365
|
+
"entity": "@payload.data",
|
|
349
366
|
"fields": "@config.fields",
|
|
350
367
|
"type": "data-grid",
|
|
351
368
|
"cols": 1.0,
|
|
352
|
-
"
|
|
353
|
-
"entity": "@payload.data"
|
|
369
|
+
"gap": "sm"
|
|
354
370
|
}
|
|
355
371
|
],
|
|
356
|
-
"
|
|
372
|
+
"gap": "md"
|
|
357
373
|
}
|
|
358
374
|
]
|
|
359
375
|
]
|
|
@@ -368,8 +384,8 @@
|
|
|
368
384
|
"main",
|
|
369
385
|
{
|
|
370
386
|
"message": "@payload.error",
|
|
371
|
-
"
|
|
372
|
-
"
|
|
387
|
+
"type": "alert",
|
|
388
|
+
"variant": "error"
|
|
373
389
|
}
|
|
374
390
|
]
|
|
375
391
|
]
|
|
@@ -426,18 +442,19 @@
|
|
|
426
442
|
"children": [
|
|
427
443
|
{
|
|
428
444
|
"type": "stack",
|
|
429
|
-
"
|
|
445
|
+
"direction": "horizontal",
|
|
430
446
|
"gap": "sm",
|
|
447
|
+
"align": "center",
|
|
431
448
|
"children": [
|
|
432
449
|
{
|
|
433
|
-
"action": "CLOSE_VIEW",
|
|
434
|
-
"label": "Back",
|
|
435
450
|
"variant": "ghost",
|
|
436
|
-
"
|
|
451
|
+
"label": "Back",
|
|
452
|
+
"type": "button",
|
|
453
|
+
"action": "CLOSE_VIEW"
|
|
437
454
|
},
|
|
438
455
|
{
|
|
439
|
-
"
|
|
440
|
-
"
|
|
456
|
+
"type": "icon",
|
|
457
|
+
"name": "user"
|
|
441
458
|
},
|
|
442
459
|
{
|
|
443
460
|
"type": "typography",
|
|
@@ -445,110 +462,109 @@
|
|
|
445
462
|
"content": "@entity.memberName"
|
|
446
463
|
},
|
|
447
464
|
{
|
|
465
|
+
"type": "badge",
|
|
448
466
|
"label": "@entity.status",
|
|
449
|
-
"variant": "default"
|
|
450
|
-
"type": "badge"
|
|
467
|
+
"variant": "default"
|
|
451
468
|
}
|
|
452
|
-
]
|
|
453
|
-
"direction": "horizontal"
|
|
469
|
+
]
|
|
454
470
|
},
|
|
455
471
|
{
|
|
456
472
|
"type": "divider"
|
|
457
473
|
},
|
|
458
474
|
{
|
|
459
475
|
"type": "stack",
|
|
476
|
+
"gap": "sm",
|
|
460
477
|
"children": [
|
|
461
478
|
{
|
|
479
|
+
"type": "stack",
|
|
462
480
|
"direction": "horizontal",
|
|
481
|
+
"gap": "md",
|
|
463
482
|
"children": [
|
|
464
483
|
{
|
|
465
|
-
"
|
|
484
|
+
"content": "Session",
|
|
466
485
|
"color": "muted",
|
|
467
|
-
"
|
|
468
|
-
"
|
|
486
|
+
"type": "typography",
|
|
487
|
+
"variant": "caption"
|
|
469
488
|
},
|
|
470
489
|
{
|
|
471
|
-
"
|
|
490
|
+
"type": "typography",
|
|
472
491
|
"variant": "body",
|
|
473
|
-
"
|
|
492
|
+
"content": "@entity.sessionId"
|
|
474
493
|
}
|
|
475
|
-
]
|
|
476
|
-
"gap": "md",
|
|
477
|
-
"type": "stack"
|
|
494
|
+
]
|
|
478
495
|
},
|
|
479
496
|
{
|
|
480
497
|
"gap": "md",
|
|
481
|
-
"direction": "horizontal",
|
|
482
498
|
"type": "stack",
|
|
483
499
|
"children": [
|
|
484
500
|
{
|
|
485
|
-
"type": "typography",
|
|
486
501
|
"color": "muted",
|
|
502
|
+
"type": "typography",
|
|
487
503
|
"content": "Notes",
|
|
488
504
|
"variant": "caption"
|
|
489
505
|
},
|
|
490
506
|
{
|
|
491
|
-
"content": "@entity.notes",
|
|
492
507
|
"type": "typography",
|
|
508
|
+
"content": "@entity.notes",
|
|
493
509
|
"variant": "body"
|
|
494
510
|
}
|
|
495
|
-
]
|
|
511
|
+
],
|
|
512
|
+
"direction": "horizontal"
|
|
496
513
|
}
|
|
497
514
|
],
|
|
498
|
-
"direction": "vertical"
|
|
499
|
-
"gap": "sm"
|
|
515
|
+
"direction": "vertical"
|
|
500
516
|
},
|
|
501
517
|
{
|
|
502
518
|
"type": "divider"
|
|
503
519
|
},
|
|
504
520
|
{
|
|
505
521
|
"cols": 2.0,
|
|
522
|
+
"type": "simple-grid",
|
|
506
523
|
"children": [
|
|
507
524
|
{
|
|
508
|
-
"
|
|
525
|
+
"icon": "calendar",
|
|
509
526
|
"value": "@entity.enrolledAt",
|
|
510
|
-
"
|
|
511
|
-
"
|
|
527
|
+
"label": "Enrolled at",
|
|
528
|
+
"type": "stat-display"
|
|
512
529
|
},
|
|
513
530
|
{
|
|
514
|
-
"label": "Checked in at",
|
|
515
|
-
"icon": "check-circle",
|
|
516
531
|
"value": "@entity.checkedInAt",
|
|
517
|
-
"type": "stat-display"
|
|
532
|
+
"type": "stat-display",
|
|
533
|
+
"label": "Checked in at",
|
|
534
|
+
"icon": "check-circle"
|
|
518
535
|
}
|
|
519
|
-
]
|
|
520
|
-
"type": "simple-grid"
|
|
536
|
+
]
|
|
521
537
|
},
|
|
522
538
|
{
|
|
523
|
-
"gap": "sm",
|
|
524
539
|
"type": "stack",
|
|
525
|
-
"
|
|
540
|
+
"direction": "horizontal",
|
|
541
|
+
"gap": "sm",
|
|
526
542
|
"children": [
|
|
527
543
|
{
|
|
528
|
-
"label": "Check In",
|
|
529
544
|
"variant": "primary",
|
|
530
545
|
"type": "button",
|
|
546
|
+
"action": "CHECK_IN",
|
|
547
|
+
"label": "Check In",
|
|
531
548
|
"actionPayload": {
|
|
532
549
|
"id": "@entity.id"
|
|
533
|
-
}
|
|
534
|
-
"action": "CHECK_IN"
|
|
550
|
+
}
|
|
535
551
|
},
|
|
536
552
|
{
|
|
537
|
-
"
|
|
553
|
+
"label": "No Show",
|
|
538
554
|
"actionPayload": {
|
|
539
555
|
"id": "@entity.id"
|
|
540
556
|
},
|
|
541
|
-
"
|
|
542
|
-
"
|
|
543
|
-
"
|
|
557
|
+
"action": "MARK_NO_SHOW",
|
|
558
|
+
"variant": "danger",
|
|
559
|
+
"type": "button"
|
|
544
560
|
}
|
|
545
561
|
],
|
|
546
|
-
"
|
|
562
|
+
"align": "center"
|
|
547
563
|
}
|
|
548
564
|
],
|
|
549
|
-
"
|
|
565
|
+
"gap": "md",
|
|
550
566
|
"type": "stack",
|
|
551
|
-
"
|
|
567
|
+
"direction": "vertical"
|
|
552
568
|
}
|
|
553
569
|
]
|
|
554
570
|
]
|
|
@@ -577,22 +593,22 @@
|
|
|
577
593
|
"render-ui",
|
|
578
594
|
"main",
|
|
579
595
|
{
|
|
580
|
-
"className": "py-12",
|
|
581
596
|
"type": "stack",
|
|
597
|
+
"gap": "md",
|
|
582
598
|
"direction": "vertical",
|
|
583
599
|
"align": "center",
|
|
600
|
+
"className": "py-12",
|
|
584
601
|
"children": [
|
|
585
602
|
{
|
|
586
603
|
"type": "spinner"
|
|
587
604
|
},
|
|
588
605
|
{
|
|
589
|
-
"
|
|
606
|
+
"content": "Checking in…",
|
|
590
607
|
"type": "typography",
|
|
591
|
-
"
|
|
592
|
-
"
|
|
608
|
+
"variant": "caption",
|
|
609
|
+
"color": "muted"
|
|
593
610
|
}
|
|
594
|
-
]
|
|
595
|
-
"gap": "md"
|
|
611
|
+
]
|
|
596
612
|
}
|
|
597
613
|
]
|
|
598
614
|
]
|
|
@@ -622,20 +638,71 @@
|
|
|
622
638
|
"main",
|
|
623
639
|
{
|
|
624
640
|
"className": "py-12",
|
|
641
|
+
"type": "stack",
|
|
625
642
|
"children": [
|
|
626
643
|
{
|
|
627
644
|
"type": "spinner"
|
|
628
645
|
},
|
|
629
646
|
{
|
|
630
|
-
"content": "Marking no-show…",
|
|
631
|
-
"type": "typography",
|
|
632
647
|
"variant": "caption",
|
|
633
|
-
"
|
|
648
|
+
"type": "typography",
|
|
649
|
+
"color": "muted",
|
|
650
|
+
"content": "Marking no-show…"
|
|
634
651
|
}
|
|
635
652
|
],
|
|
653
|
+
"align": "center",
|
|
654
|
+
"gap": "md",
|
|
655
|
+
"direction": "vertical"
|
|
656
|
+
}
|
|
657
|
+
]
|
|
658
|
+
]
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
"from": "browsing",
|
|
662
|
+
"to": "loading",
|
|
663
|
+
"event": "SET_STATUS",
|
|
664
|
+
"effects": [
|
|
665
|
+
[
|
|
666
|
+
"set",
|
|
667
|
+
"@entity.id",
|
|
668
|
+
"@payload.entityId"
|
|
669
|
+
],
|
|
670
|
+
[
|
|
671
|
+
"set",
|
|
672
|
+
"@entity.status",
|
|
673
|
+
"@payload.newStatus"
|
|
674
|
+
],
|
|
675
|
+
[
|
|
676
|
+
"persist",
|
|
677
|
+
"update",
|
|
678
|
+
"RosterEntry",
|
|
679
|
+
"@entity",
|
|
680
|
+
{
|
|
681
|
+
"emit": {
|
|
682
|
+
"failure": "RosterEntryLoadFailed",
|
|
683
|
+
"success": "RosterEntryLoaded"
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
],
|
|
687
|
+
[
|
|
688
|
+
"render-ui",
|
|
689
|
+
"main",
|
|
690
|
+
{
|
|
691
|
+
"align": "center",
|
|
692
|
+
"className": "py-12",
|
|
636
693
|
"direction": "vertical",
|
|
637
694
|
"type": "stack",
|
|
638
|
-
"
|
|
695
|
+
"children": [
|
|
696
|
+
{
|
|
697
|
+
"type": "spinner"
|
|
698
|
+
},
|
|
699
|
+
{
|
|
700
|
+
"type": "typography",
|
|
701
|
+
"color": "muted",
|
|
702
|
+
"content": "Updating roster entry status…",
|
|
703
|
+
"variant": "caption"
|
|
704
|
+
}
|
|
705
|
+
],
|
|
639
706
|
"gap": "md"
|
|
640
707
|
}
|
|
641
708
|
]
|
|
@@ -662,20 +729,20 @@
|
|
|
662
729
|
{
|
|
663
730
|
"className": "py-12",
|
|
664
731
|
"direction": "vertical",
|
|
732
|
+
"gap": "md",
|
|
665
733
|
"children": [
|
|
666
734
|
{
|
|
667
735
|
"type": "spinner"
|
|
668
736
|
},
|
|
669
737
|
{
|
|
670
|
-
"content": "Loading roster…",
|
|
671
|
-
"type": "typography",
|
|
672
738
|
"variant": "caption",
|
|
673
|
-
"
|
|
739
|
+
"content": "Loading roster…",
|
|
740
|
+
"color": "muted",
|
|
741
|
+
"type": "typography"
|
|
674
742
|
}
|
|
675
743
|
],
|
|
676
|
-
"
|
|
677
|
-
"
|
|
678
|
-
"align": "center"
|
|
744
|
+
"align": "center",
|
|
745
|
+
"type": "stack"
|
|
679
746
|
}
|
|
680
747
|
]
|
|
681
748
|
]
|
|
@@ -695,8 +762,8 @@
|
|
|
695
762
|
"RosterEntry",
|
|
696
763
|
{
|
|
697
764
|
"emit": {
|
|
698
|
-
"
|
|
699
|
-
"
|
|
765
|
+
"success": "RosterEntryLoaded",
|
|
766
|
+
"failure": "RosterEntryLoadFailed"
|
|
700
767
|
}
|
|
701
768
|
}
|
|
702
769
|
],
|
|
@@ -704,20 +771,20 @@
|
|
|
704
771
|
"render-ui",
|
|
705
772
|
"main",
|
|
706
773
|
{
|
|
707
|
-
"type": "stack",
|
|
708
|
-
"gap": "md",
|
|
709
|
-
"direction": "vertical",
|
|
710
774
|
"className": "py-12",
|
|
711
775
|
"align": "center",
|
|
776
|
+
"direction": "vertical",
|
|
777
|
+
"gap": "md",
|
|
778
|
+
"type": "stack",
|
|
712
779
|
"children": [
|
|
713
780
|
{
|
|
714
781
|
"type": "spinner"
|
|
715
782
|
},
|
|
716
783
|
{
|
|
717
|
-
"
|
|
784
|
+
"variant": "caption",
|
|
718
785
|
"color": "muted",
|
|
719
786
|
"type": "typography",
|
|
720
|
-
"
|
|
787
|
+
"content": "Checking in…"
|
|
721
788
|
}
|
|
722
789
|
]
|
|
723
790
|
}
|
|
@@ -739,8 +806,8 @@
|
|
|
739
806
|
"RosterEntry",
|
|
740
807
|
{
|
|
741
808
|
"emit": {
|
|
742
|
-
"
|
|
743
|
-
"
|
|
809
|
+
"failure": "RosterEntryLoadFailed",
|
|
810
|
+
"success": "RosterEntryLoaded"
|
|
744
811
|
}
|
|
745
812
|
}
|
|
746
813
|
],
|
|
@@ -748,22 +815,22 @@
|
|
|
748
815
|
"render-ui",
|
|
749
816
|
"main",
|
|
750
817
|
{
|
|
818
|
+
"gap": "md",
|
|
751
819
|
"type": "stack",
|
|
752
820
|
"direction": "vertical",
|
|
753
|
-
"gap": "md",
|
|
754
821
|
"align": "center",
|
|
755
|
-
"className": "py-12",
|
|
756
822
|
"children": [
|
|
757
823
|
{
|
|
758
824
|
"type": "spinner"
|
|
759
825
|
},
|
|
760
826
|
{
|
|
761
|
-
"type": "typography",
|
|
762
|
-
"color": "muted",
|
|
763
827
|
"content": "Marking no-show…",
|
|
828
|
+
"color": "muted",
|
|
829
|
+
"type": "typography",
|
|
764
830
|
"variant": "caption"
|
|
765
831
|
}
|
|
766
|
-
]
|
|
832
|
+
],
|
|
833
|
+
"className": "py-12"
|
|
767
834
|
}
|
|
768
835
|
]
|
|
769
836
|
]
|
|
@@ -778,8 +845,8 @@
|
|
|
778
845
|
"RosterEntry",
|
|
779
846
|
{
|
|
780
847
|
"emit": {
|
|
781
|
-
"
|
|
782
|
-
"
|
|
848
|
+
"failure": "RosterEntryLoadFailed",
|
|
849
|
+
"success": "RosterEntryLoaded"
|
|
783
850
|
}
|
|
784
851
|
}
|
|
785
852
|
],
|
|
@@ -796,37 +863,85 @@
|
|
|
796
863
|
]
|
|
797
864
|
},
|
|
798
865
|
"config": {
|
|
799
|
-
"
|
|
800
|
-
"type": "
|
|
866
|
+
"title": {
|
|
867
|
+
"type": "string",
|
|
868
|
+
"default": "Class Roster",
|
|
869
|
+
"label": "Section title",
|
|
870
|
+
"description": "Heading shown above the class roster",
|
|
871
|
+
"tier": "customization"
|
|
872
|
+
},
|
|
873
|
+
"eVerifyRequired": {
|
|
874
|
+
"type": "boolean",
|
|
875
|
+
"default": false,
|
|
876
|
+
"label": "E-Verify required",
|
|
877
|
+
"description": "US I-9 / E-Verify gate (relevant for instructor rosters).",
|
|
878
|
+
"tier": "customization"
|
|
879
|
+
},
|
|
880
|
+
"rescheduleWindowHours": {
|
|
881
|
+
"type": "number",
|
|
882
|
+
"default": 4.0,
|
|
883
|
+
"label": "Reschedule window (hours)",
|
|
884
|
+
"description": "Hours before class start during which the member can self-reschedule.",
|
|
885
|
+
"tier": "customization"
|
|
886
|
+
},
|
|
887
|
+
"i9DocumentsRequired": {
|
|
888
|
+
"type": "boolean",
|
|
889
|
+
"default": false,
|
|
890
|
+
"label": "I-9 documents required",
|
|
891
|
+
"description": "Require I-9 supporting documents (instructor rosters).",
|
|
892
|
+
"tier": "customization"
|
|
893
|
+
},
|
|
894
|
+
"bookingHours": {
|
|
895
|
+
"type": "string",
|
|
896
|
+
"default": "06:00-22:00",
|
|
897
|
+
"label": "Booking hours",
|
|
898
|
+
"description": "Daily window during which enrollments can be made (HH:MM-HH:MM).",
|
|
899
|
+
"tier": "customization"
|
|
900
|
+
},
|
|
901
|
+
"maxReschedules": {
|
|
902
|
+
"type": "number",
|
|
903
|
+
"default": 3.0,
|
|
904
|
+
"label": "Max reschedules",
|
|
905
|
+
"description": "Hard cap on reschedule count per enrollment.",
|
|
906
|
+
"tier": "advanced"
|
|
907
|
+
},
|
|
908
|
+
"anonymizeOnRejection": {
|
|
909
|
+
"type": "boolean",
|
|
910
|
+
"default": false,
|
|
911
|
+
"label": "Anonymize on rejection",
|
|
912
|
+
"description": "When true, scrub member PII on no_show / removal. Pair with std-data-erasure.",
|
|
913
|
+
"tier": "customization"
|
|
914
|
+
},
|
|
915
|
+
"fields": {
|
|
916
|
+
"type": "[FieldSpec]",
|
|
801
917
|
"default": [
|
|
802
918
|
{
|
|
803
|
-
"
|
|
804
|
-
"variant": "
|
|
805
|
-
"label": "
|
|
806
|
-
"icon": "arrow-right"
|
|
919
|
+
"name": "memberName",
|
|
920
|
+
"variant": "caption",
|
|
921
|
+
"label": "Member"
|
|
807
922
|
},
|
|
808
923
|
{
|
|
809
|
-
"label": "
|
|
810
|
-
"
|
|
811
|
-
"
|
|
924
|
+
"label": "Session",
|
|
925
|
+
"variant": "caption",
|
|
926
|
+
"name": "sessionId"
|
|
812
927
|
},
|
|
813
928
|
{
|
|
814
|
-
"
|
|
815
|
-
"label": "
|
|
816
|
-
"variant": "
|
|
929
|
+
"name": "status",
|
|
930
|
+
"label": "Status",
|
|
931
|
+
"variant": "badge"
|
|
932
|
+
},
|
|
933
|
+
{
|
|
934
|
+
"label": "Checked In",
|
|
935
|
+
"variant": "caption",
|
|
936
|
+
"name": "checkedInAt"
|
|
817
937
|
}
|
|
818
938
|
],
|
|
819
|
-
"label": "
|
|
820
|
-
"description": "
|
|
939
|
+
"label": "Columns to show",
|
|
940
|
+
"description": "Each column maps to one field on the Roster Entry entity",
|
|
821
941
|
"tier": "customization",
|
|
822
942
|
"items": {
|
|
823
943
|
"type": "object",
|
|
824
944
|
"properties": {
|
|
825
|
-
"icon": {
|
|
826
|
-
"name": "icon",
|
|
827
|
-
"type": "string",
|
|
828
|
-
"required": false
|
|
829
|
-
},
|
|
830
945
|
"variant": {
|
|
831
946
|
"name": "variant",
|
|
832
947
|
"type": "string",
|
|
@@ -835,61 +950,108 @@
|
|
|
835
950
|
"label": {
|
|
836
951
|
"name": "label",
|
|
837
952
|
"type": "string",
|
|
838
|
-
"required":
|
|
953
|
+
"required": false
|
|
839
954
|
},
|
|
840
|
-
"
|
|
841
|
-
"name": "
|
|
955
|
+
"name": {
|
|
956
|
+
"name": "name",
|
|
842
957
|
"type": "string",
|
|
843
958
|
"required": true
|
|
959
|
+
},
|
|
960
|
+
"icon": {
|
|
961
|
+
"name": "icon",
|
|
962
|
+
"type": "string",
|
|
963
|
+
"required": false
|
|
964
|
+
},
|
|
965
|
+
"key": {
|
|
966
|
+
"name": "key",
|
|
967
|
+
"type": "string",
|
|
968
|
+
"required": false
|
|
969
|
+
},
|
|
970
|
+
"format": {
|
|
971
|
+
"name": "format",
|
|
972
|
+
"type": "string",
|
|
973
|
+
"required": false
|
|
974
|
+
},
|
|
975
|
+
"header": {
|
|
976
|
+
"name": "header",
|
|
977
|
+
"type": "string",
|
|
978
|
+
"required": false
|
|
844
979
|
}
|
|
845
980
|
}
|
|
846
981
|
}
|
|
847
982
|
},
|
|
848
|
-
"
|
|
849
|
-
"type": "
|
|
983
|
+
"noShowGracePeriodMinutes": {
|
|
984
|
+
"type": "number",
|
|
985
|
+
"default": 10.0,
|
|
986
|
+
"label": "No-show grace (minutes)",
|
|
987
|
+
"description": "Minutes after class start before the entry auto-marks no_show. Wire via std-lifecycle.",
|
|
988
|
+
"tier": "customization"
|
|
989
|
+
},
|
|
990
|
+
"cancellationPolicy": {
|
|
991
|
+
"type": "string",
|
|
992
|
+
"default": "free",
|
|
993
|
+
"label": "Cancellation policy",
|
|
994
|
+
"description": "Refund treatment when an enrollment is cancelled inside the reschedule window.",
|
|
995
|
+
"tier": "customization",
|
|
996
|
+
"values": [
|
|
997
|
+
"free",
|
|
998
|
+
"partial-refund",
|
|
999
|
+
"no-refund"
|
|
1000
|
+
]
|
|
1001
|
+
},
|
|
1002
|
+
"equalOpportunityTrackingEnabled": {
|
|
1003
|
+
"type": "boolean",
|
|
1004
|
+
"default": false,
|
|
1005
|
+
"label": "Equal opportunity tracking",
|
|
1006
|
+
"description": "Capture demographic data separately for EEO reporting (sibling collection).",
|
|
1007
|
+
"tier": "advanced"
|
|
1008
|
+
},
|
|
1009
|
+
"blackoutDates": {
|
|
1010
|
+
"type": "[string]",
|
|
1011
|
+
"default": [],
|
|
1012
|
+
"label": "Blackout dates",
|
|
1013
|
+
"description": "ISO dates blocked from booking (e.g. holidays). Compose std-lifecycle to enforce.",
|
|
1014
|
+
"tier": "customization",
|
|
1015
|
+
"items": {
|
|
1016
|
+
"type": "string"
|
|
1017
|
+
}
|
|
1018
|
+
},
|
|
1019
|
+
"itemActions": {
|
|
1020
|
+
"type": "[ItemAction]",
|
|
850
1021
|
"default": [
|
|
851
1022
|
{
|
|
852
|
-
"
|
|
853
|
-
"
|
|
854
|
-
"
|
|
855
|
-
|
|
856
|
-
{
|
|
857
|
-
"name": "sessionId",
|
|
858
|
-
"label": "Session",
|
|
859
|
-
"variant": "caption"
|
|
1023
|
+
"variant": "primary",
|
|
1024
|
+
"icon": "arrow-right",
|
|
1025
|
+
"label": "Open",
|
|
1026
|
+
"event": "OPEN_ENTRY"
|
|
860
1027
|
},
|
|
861
1028
|
{
|
|
862
|
-
"
|
|
863
|
-
"label": "
|
|
864
|
-
"
|
|
1029
|
+
"event": "CHECK_IN",
|
|
1030
|
+
"label": "Check In",
|
|
1031
|
+
"variant": "secondary"
|
|
865
1032
|
},
|
|
866
1033
|
{
|
|
867
|
-
"
|
|
868
|
-
"
|
|
869
|
-
"label": "
|
|
1034
|
+
"variant": "danger",
|
|
1035
|
+
"event": "MARK_NO_SHOW",
|
|
1036
|
+
"label": "No Show"
|
|
870
1037
|
}
|
|
871
1038
|
],
|
|
872
|
-
"label": "
|
|
873
|
-
"description": "
|
|
1039
|
+
"label": "Row actions",
|
|
1040
|
+
"description": "Buttons users can click on each enrolled member",
|
|
874
1041
|
"tier": "customization",
|
|
875
1042
|
"items": {
|
|
876
1043
|
"type": "object",
|
|
877
1044
|
"properties": {
|
|
878
|
-
"
|
|
879
|
-
"name": "
|
|
1045
|
+
"icon": {
|
|
1046
|
+
"name": "icon",
|
|
880
1047
|
"type": "string",
|
|
881
1048
|
"required": false
|
|
882
1049
|
},
|
|
883
|
-
"
|
|
884
|
-
"name": "
|
|
1050
|
+
"event": {
|
|
1051
|
+
"name": "event",
|
|
885
1052
|
"type": "string",
|
|
886
1053
|
"required": true
|
|
887
1054
|
},
|
|
888
|
-
"format": {
|
|
889
|
-
"name": "format",
|
|
890
|
-
"type": "string",
|
|
891
|
-
"required": false
|
|
892
|
-
},
|
|
893
1055
|
"variant": {
|
|
894
1056
|
"name": "variant",
|
|
895
1057
|
"type": "string",
|
|
@@ -898,27 +1060,38 @@
|
|
|
898
1060
|
"label": {
|
|
899
1061
|
"name": "label",
|
|
900
1062
|
"type": "string",
|
|
901
|
-
"required":
|
|
902
|
-
},
|
|
903
|
-
"icon": {
|
|
904
|
-
"name": "icon",
|
|
905
|
-
"type": "string",
|
|
906
|
-
"required": false
|
|
907
|
-
},
|
|
908
|
-
"header": {
|
|
909
|
-
"name": "header",
|
|
910
|
-
"type": "string",
|
|
911
|
-
"required": false
|
|
1063
|
+
"required": true
|
|
912
1064
|
}
|
|
913
1065
|
}
|
|
914
1066
|
}
|
|
915
1067
|
},
|
|
916
|
-
"
|
|
917
|
-
"type": "
|
|
918
|
-
"default":
|
|
919
|
-
"label": "
|
|
920
|
-
"description": "
|
|
1068
|
+
"bookingWindowDays": {
|
|
1069
|
+
"type": "number",
|
|
1070
|
+
"default": 30.0,
|
|
1071
|
+
"label": "Booking window (days)",
|
|
1072
|
+
"description": "How far in advance members can enroll in a class.",
|
|
921
1073
|
"tier": "customization"
|
|
1074
|
+
},
|
|
1075
|
+
"leadTimeMinutes": {
|
|
1076
|
+
"type": "number",
|
|
1077
|
+
"default": 15.0,
|
|
1078
|
+
"label": "Lead time (minutes)",
|
|
1079
|
+
"description": "Minimum minutes before class start that a new enrollment is accepted.",
|
|
1080
|
+
"tier": "customization"
|
|
1081
|
+
},
|
|
1082
|
+
"backgroundCheckRequired": {
|
|
1083
|
+
"type": "boolean",
|
|
1084
|
+
"default": false,
|
|
1085
|
+
"label": "Background check required",
|
|
1086
|
+
"description": "Block CHECK_IN until a background check is on file (e.g. youth programs).",
|
|
1087
|
+
"tier": "customization"
|
|
1088
|
+
},
|
|
1089
|
+
"retentionAfterRejectionDays": {
|
|
1090
|
+
"type": "number",
|
|
1091
|
+
"default": 730.0,
|
|
1092
|
+
"label": "Retention after rejection (days)",
|
|
1093
|
+
"description": "Days to keep no_show / removed roster entries.",
|
|
1094
|
+
"tier": "advanced"
|
|
922
1095
|
}
|
|
923
1096
|
},
|
|
924
1097
|
"scope": "collection"
|
|
@@ -937,4 +1110,4 @@
|
|
|
937
1110
|
]
|
|
938
1111
|
}
|
|
939
1112
|
]
|
|
940
|
-
}
|
|
1113
|
+
}
|