Skip to content

Set up recording state management #6

Description

@fbraza

Summary

Introduce the recording state management layer that powers the voice-to-text experience.

Requirements

  • Define the RecordingState enum with idle, recording, paused, and stopped.
  • Implement a RecordingProvider (ChangeNotifier) that stores the current state, elapsed duration, transcribed text, and waveform data.
  • Provide methods (startRecording, pauseRecording, stopRecording, updateWaveform, updateTranscription) that update state and notify listeners.
  • Expose computed getters for UI consumption and wire the provider into the voice-to-text screen via ChangeNotifierProvider.
  • Add basic unit tests covering state transitions and duration updates.

Acceptance Criteria

  • Provider transitions through all states correctly and notifies listeners.
  • Duration increments while recording and resets when stopped.
  • UI widgets listen to provider updates for transcript, timer, and waveform data.
  • Tests verify start/pause/stop flows and waveform/transcription updates.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions