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
Summary
Introduce the recording state management layer that powers the voice-to-text experience.
Requirements
RecordingStateenum withidle,recording,paused, andstopped.RecordingProvider(ChangeNotifier) that stores the current state, elapsed duration, transcribed text, and waveform data.startRecording,pauseRecording,stopRecording,updateWaveform,updateTranscription) that update state and notify listeners.ChangeNotifierProvider.Acceptance Criteria