handle method

  1. @override
Future<bool> handle(
  1. Report report,
  2. BuildContext? context
)
override

Method called when report has been accepted by user

Implementation

@override
Future<bool> handle(Report report, BuildContext? context) async {
  try {
    var message = '';
    if (customMessageBuilder != null) {
      message = await customMessageBuilder!(report);
    } else {
      message = _buildMessage(report);
    }
    final messages = _setupMessages(message);

    for (final value in messages) {
      final isLastMessage = messages.indexOf(value) == messages.length - 1;
      final result =
          await _sendContent(value, isLastMessage ? report.screenshot : null);
      if (!result) {
        return result;
      }
    }

    return true;
  } catch (exception) {
    _printLog('Failed to send Discord message: $exception');
    return false;
  }
}