import 'payment_gateway.dart';

/// درگاهِ توسعه: بدونِ اتصال به فروشگاه، یک توکنِ ساختگی می‌سازد. برای اجرای
/// معمولیِ `flutter run` (بدونِ flavor) استفاده می‌شود؛ بک‌اند در حالتِ
/// DevFallback آن را می‌پذیرد.
class DevPaymentGateway implements PaymentGateway {
  @override
  String get store => 'dev';

  @override
  Future<void> connect() async {}

  @override
  Future<PurchaseResult> purchase(String productSku, {String payload = ''}) async {
    final stamp = DateTime.now().millisecondsSinceEpoch;
    return PurchaseResult.success(
      token: 'dev-$productSku-$stamp',
      purchaseData: '{"productId":"$productSku","purchaseToken":"dev-$stamp"}',
      signature: 'dev',
    );
  }
}
