// lib/services/store_reviewer.dart
import 'package:in_app_review/in_app_review.dart';

import 'review_service.dart';

/// Production [Reviewer] that forwards to the in_app_review plugin's native
/// "rate this app" sheet (SKStoreReviewController on iOS, In-App Review API on
/// Android). Kept in its own file so [ReviewService] and its tests stay free of
/// the platform-channel dependency.
class StoreReviewer implements Reviewer {
  StoreReviewer([InAppReview? inAppReview])
      : _inAppReview = inAppReview ?? InAppReview.instance;

  final InAppReview _inAppReview;

  @override
  Future<bool> isAvailable() => _inAppReview.isAvailable();

  @override
  Future<void> requestReview() => _inAppReview.requestReview();
}
