sendFeedBack method

Future<Response<FeedbackResponse>> sendFeedBack(
  1. FeedbackRequest request
)

Implementation

Future<Response<FeedbackResponse>> sendFeedBack(
  FeedbackRequest request,
) async {
  if (!Constants.isApiValid()) {
    return Response(
      body: FeedbackResponse(success: false, error: 'api key not valid'),
    );
  }

  SmartLinksCore.requireInitialized();
  if (!SmartLinksNativeApi.isEnabled) {
    return Response(
      body: FeedbackResponse(
        success: false,
        error: 'Feedback requires the SmartLinks native bridge (iOS/Android).',
      ),
    );
  }

  try {
    final result = await SmartLinksNativeApi.submitFeedback(
      content: request.content,
      platform: request.platform,
      version: request.version,
      name: request.name,
      email: request.email,
      isPremium: request.isPremium,
      attachmentPath: request.attachmentPath,
    );
    final response = result != null
        ? FeedbackResponse.fromJson(result)
        : FeedbackResponse(success: false, error: 'Native submit failed');
    return Response(body: response, statusCode: 200);
  } catch (e) {
    return Response(
      body: FeedbackResponse(success: false, error: e.toString()),
    );
  }
}