Create a New Activity Type with Metadata
When a coordinator needs a new activity type, they open the activity type form screen and fill in all relevant metadata. This includes a display name (with optional organization-specific label override), a description, a suggested default duration in minutes, a flag for whether expense registration is typically associated, and the Bufdir category this activity maps to. The form validates all inputs before saving and resolves metadata such as icon or color coding via the metadata resolver.
User Story
Acceptance Criteria
- Given I am on the activity type form screen, When I fill in the name and description fields and submit, Then a new activity type is created and appears in the admin list
- Given I am filling the form, When I set a default duration, Then this duration pre-fills the duration step when a peer mentor selects this activity type during registration
- Given I am filling the form, When I select a Bufdir category from the dropdown, Then the system stores the mapping used for automated Bufdir report generation
- Given I submit the form with missing required fields, When validation runs, Then I see field-level error messages and the form is not saved
- Given I submit a valid form, When the save completes, Then the new activity type is immediately available for peer mentor selection via the cache provider
- Given the organization uses custom terminology, When I view the form labels, Then they reflect the organization's label overrides from the organization labels provider
Business Value
Accurate Bufdir category mapping at the point of activity type creation eliminates the need for manual reclassification at report time, which is currently one of the most time-consuming parts of the reporting cycle for coordinators. Pre-configured default durations also reduce cognitive load on peer mentors during registration, directly addressing the #1 priority across all organizations: making activity registration as fast and frictionless as possible.
Components
- Activity Type Form Screen ui
- Activity Type Service service
- Activity Type Metadata Resolver service
- Activity Type Repository data
- Activity Type Cache Provider data
- Supabase Client infrastructure
- Organization Labels Provider infrastructure