onRatingSelected method

dynamic onRatingSelected(
  1. int rating
)

Implementation

onRatingSelected(int rating) {
  var localConfig = config;
  debugPrint("ViewModel::onRatingSelected($rating})");
  _selectedRating = rating;
  if (localConfig == null) {
    debugPrint(
        "Rating is selected while the config is null. Invalid operation");
    return;
  }
  String? reaction;
  for (var it in localConfig.valueReactions) {
    if (rating <= it.value) {
      reaction = it.label;
      break;
    }
  }
  if (reaction == null && localConfig.valueReactions.isNotEmpty) {
    reaction = localConfig.valueReactions.last.label;
  }
  _localEmit(_state.copyWith(
      state: RateExpState.rateSelected,
      reaction: reaction,
      selectedRating: rating));
}