import 'package:flutter_bloc/flutter_bloc.dart';
import '../../../domain/repositories/grocery_repository.dart';
import 'scanner_state.dart';
class ScannerCubit extends Cubit<ScannerState> {
final GroceryRepository _repository;
ScannerCubit({required GroceryRepository repository})
: _repository = repository,
super(const ScannerState());
Future<void> scanBarcode(String barcode) async {
emit(state.copyWith(isLoading: true, errorMessage: null));
final item = await _repository.lookupBarcode(barcode);
if (item != null) {
_repository.addToHistory(item);
emit(state.copyWith(isLoading: false, item: item));
} else {
emit(state.copyWith(
isLoading: false,
errorMessage: 'Product not found',
));
}
}
void reset() {
emit(const ScannerState());
}
}