refactor: migrate voiceInputAvailableProvider

Phase 5.1 Complete (1/5)
- voiceInputAvailableProvider → voiceInputAvailable
- Simple FutureProvider migration
- 2 usages updated automatically
This commit is contained in:
cogwheel0
2025-09-30 14:58:53 +05:30
parent 0724595ae4
commit 8543f9255e

View File

@@ -1,11 +1,15 @@
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:record/record.dart';
import 'package:flutter/widgets.dart';
import 'dart:async';
import 'dart:io' show Platform;
// Removed path imports as server transcription fallback was removed
import 'package:flutter/widgets.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';
import 'package:record/record.dart';
import 'package:stts/stts.dart';
part 'voice_input_service.g.dart';
// Removed path imports as server transcription fallback was removed
// Lightweight replacement for previous stt.LocaleName used across the UI
class LocaleName {
final String localeId;
@@ -322,7 +326,8 @@ final voiceInputServiceProvider = Provider<VoiceInputService>((ref) {
return VoiceInputService();
});
final voiceInputAvailableProvider = FutureProvider<bool>((ref) async {
@riverpod
Future<bool> voiceInputAvailable(Ref ref) async {
final service = ref.watch(voiceInputServiceProvider);
if (!service.isSupportedPlatform) return false;
final initialized = await service.initialize();
@@ -332,7 +337,7 @@ final voiceInputAvailableProvider = FutureProvider<bool>((ref) async {
final hasPermission = await service.checkPermissions();
if (!hasPermission) return false;
return service.isAvailable;
});
}
final voiceInputStreamProvider = StreamProvider<String>((ref) {
final service = ref.watch(voiceInputServiceProvider);