import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:equatable/equatable.dart'; import 'package:flux/features/store/data/store_repository.dart'; import 'package:flux/features/store/models/store_model.dart'; import 'package:get_it/get_it.dart'; part 'store_events.dart'; part 'store_state.dart'; class StoreBloc extends Bloc { final StoreRepository _repository = GetIt.I(); StoreBloc() : super(const StoreState()) { on(_onCreateStore); } Future _onCreateStore( CreateStoreRequested event, Emitter emit, ) async { emit(state.copyWith(status: StoreStatus.loading)); try { await _repository.createStore(event.store); emit(state.copyWith(status: StoreStatus.success)); } catch (e) { emit( state.copyWith(status: StoreStatus.failure, errorMessage: e.toString()), ); } } }