// import 'package:flutter_bloc/flutter_bloc.dart';
// import 'qr_scan_event.dart';
// import 'qr_scan_state.dart';
//
// class QrScanBloc extends Bloc<QrScanEvent, QrScanState> {
//   QrScanBloc() : super(const QrScanState()) {
//     on<QrCodeDetected>(_onQrDetected);
//     on<ManualCodeEntered>(_onManualEntry);
//     on<ResetQrScanEvent>(_onReset); // ✅ added reset handler
//   }
//
//   void _onQrDetected(QrCodeDetected event, Emitter<QrScanState> emit) {
//     final code = event.code.trim();
//     if (code.isEmpty) return;
//     emit(state.copyWith(
//       scannedCode: code,
//       status: code.contains("123") ? QrScanStatus.success : QrScanStatus.failed,
//       isLocked: true, // ✅ lock bottom sheet after scanning
//     ));
//
//   }
//
//   void _onManualEntry(ManualCodeEntered event, Emitter<QrScanState> emit) {
//     final code = event.code.trim();
//     emit(state.copyWith(
//       scannedCode: code,
//       status: code.contains("123") ? QrScanStatus.success : QrScanStatus.failed,
//       isLocked: true, // ✅ lock bottom sheet after scanning
//     ));
//
//   }
//
//
//   void _onReset(ResetQrScanEvent event, Emitter<QrScanState> emit) {
//     emit(state.copyWith(
//       status: QrScanStatus.idle,
//       isLocked: false,
//       scannedCode: '',
//     ));
//   }
// }