User Interface medium complexity mobile
2
Dependencies
0
Dependents
1
Entities
0
Integrations

Description

Flutter widget that renders the organization-specific expense type list dynamically from backend configuration. Enforces mutual exclusivity rules at the UI layer with immediate visual feedback when invalid combinations are attempted.

Feature: Expense Types & Requirements

expense-type-selector-widget

Responsibilities

  • Render curated expense type options (mileage, toll, parking, public transport, honorarium) from loaded config
  • Enforce mutual exclusivity between incompatible types with inline error states
  • Surface clear, accessible error messages for invalid combinations (WCAG 2.2 AA)
  • Emit selected type state to parent expense form

Interfaces

build(ExpenseTypeConfig config) → Widget
onTypeSelected(String typeId) → void
onValidationError(String message) → void

Relationships

Dependencies (2)

Components this component depends on

Related Data Entities (1)

Data entities managed by this component