import 'dart:developer'; import 'package:equatable/equatable.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:suggestion_repository/suggestion_repository.dart'; part 'suggestion_event.dart'; part 'suggestion_state.dart'; class SuggestionBloc extends Bloc { final ApiSuggestionRepository _suggestionRepository; SuggestionBloc({required ApiSuggestionRepository suggestionRepository}) : _suggestionRepository = suggestionRepository, super(SuggestionInitial()) { on(_onSubmitSuggestion); } void _onSubmitSuggestion( SubmitSuggestion event, Emitter emit) async { emit(SuggestionLoading()); try { await _suggestionRepository.createSuggestion(event.message); emit(SuggestionSuccess()); } catch (e) { log(e.toString()); emit(SuggestionFailure(message: e.toString())); } } }