Files
BudgetApp/lib/logic/sms/sms_state.dart
T
Sanders a89ab1c910 Adds SMS message loading and processing
Implements the ability to load and process SMS messages to automatically create transaction records.

This includes:
- Adding an `SmsMessage` model and Hive adapter.
- Creating an `ISmsMessageRepository` and its Hive implementation.
- Integrating SMS loading functionality into the `SmsCubit`.
- Adding a UI element in settings to trigger SMS loading.
- Persisting last SMS sync time in user preferences.
2025-07-03 16:21:19 +03:00

40 lines
1.0 KiB
Dart

import 'package:budget_app/models/sms_message.dart';
import 'package:equatable/equatable.dart';
/// Абстрактный класс для состояний SMS.
abstract class SmsState extends Equatable {
const SmsState();
@override
List<Object> get props => [];
}
/// Начальное состояние.
class SmsInitial extends SmsState {}
/// Состояние загрузки SMS.
class SmsLoading extends SmsState {}
/// Состояние, когда SMS успешно загружены.
class SmsLoaded extends SmsState {
final List<SmsMessage> messages;
const SmsLoaded(this.messages);
@override
List<Object> get props => [messages];
}
/// Состояние, когда отказано в разрешении на чтение SMS.
class SmsPermissionDenied extends SmsState {}
/// Состояние ошибки при загрузке SMS.
class SmsError extends SmsState {
final String message;
const SmsError(this.message);
@override
List<Object> get props => [message];
}