User Interface medium complexity frontendmobile
0
Dependencies
0
Dependents
4
Entities
0
Integrations

Description

A multi-select filter panel that enables coordinators to slice dashboard data by area, organization level, date range, activity type, and peer mentor status. Supports stacked filter combinations and persists filter state within the session to support iterative report refinement.

Feature: Coordinator Reports & Dashboards

report-filter-widget

Responsibilities

  • Provide multi-select filter controls for area, activity type, date range, and peer mentor status
  • Emit filter change events to parent dashboard for data re-fetch
  • Persist active filter state within navigation session
  • Validate filter combinations and show conflict warnings

Interfaces

applyFilters(filters: FilterSet)
resetFilters()
getActiveFilters(): FilterSet
onFiltersChanged(callback: Function)
setDateRange(start: Date, end: Date)
setActivityTypes(types: string[])
setAreaFilter(areaIds: string[])
setPeerMentorStatusFilter(statuses: string[])