import 'package:flutter/services.dart' show appFlavor;

/// تنظیمات سراسری اپ.
class AppConfig {
  /// فروشگاهِ فعال از روی `--flavor` که اپ با آن ساخته شده
  /// (`myket` | `bazaar`). اگر بدونِ flavor اجرا شود، `dev`.
  static String get store => appFlavor ?? 'dev';

  /// کلیدِ عمومیِ RSA مایکت (برای تأییدِ محلیِ افزونه‌ی myket_iap).
  static const String myketRsaKey = String.fromEnvironment(
    'MYKET_RSA',
    defaultValue:
        'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDVCtWUXVZfxULqP3QKlTqsXYkqg5qJYf6KnRSsyk7STB223Ji95IonwHrSrheffrPXi4othieBwl7rDaP0KnvkZ0Le0kr7xHCgTQgYeRuPq15HMm9mrFaXD3HgTF27f1/DcAN8z7eE02ShwAjd0LjYC2u2+T6z8iuQ2oh9LbJPnQIDAQAB',
  );

  /// کلیدِ عمومیِ RSA کافه‌بازار (از پنلِ توسعه‌دهنده‌ی بازار).
  static const String bazaarRsaKey = String.fromEnvironment(
    'BAZAAR_RSA',
    defaultValue:
        'MIHNMA0GCSqGSIb3DQEBAQUAA4G7ADCBtwKBrwDhrDiI+8V+gCxmPJJl5ZkW81U/i8EdFmZYqhUtMz2pj2vEmmkIkfKTIKlWJFynku8BKWT+ZkwH/sqBw4AHpnrC8KFc2ud526O8cxqJU54I8rW8vBqalrT2lHBMMhvEE3RnvC769ty09thKNGztsN+vZN+O4F6q/A1EPNwwRSj8QeJJKAhVO0Z480gfrRQCe5PzUGYtUzJpftH9tg7uoZSzxOwScu5BdY+iWn/CXJMCAwEAAQ==',
  );

  /// App ID تپسل (از پنلِ تپسل). تا زمانی که تنظیم نشود، تبلیغِ ویدیویی-جایزه‌ای
  /// («سکه رایگان») نمایش داده نمی‌شود. با `--dart-define=TAPSELL_APP_ID=...`
  /// یا مقداردهیِ پیش‌فرض این‌جا فعال می‌شود.
  static const String tapsellAppId = String.fromEnvironment(
    'TAPSELL_APP_ID',
    defaultValue: '',
  );

  /// شناسه‌ی جایگاهِ (zone) تبلیغِ ویدیویی-جایزه‌ای تپسل.
  static const String tapsellRewardedZoneId = String.fromEnvironment(
    'TAPSELL_REWARDED_ZONE',
    defaultValue: '',
  );

  /// آیا تبلیغِ جایزه‌ای فعال است؟ فقط وقتی App ID تپسل موجود باشد.
  static bool get adsEnabled => tapsellAppId.isNotEmpty;

  /// آدرس پایه‌ی سرور.
  /// - موبایل واقعی روی همان Wi-Fi: IP محلی مک (پیش‌فرض فعلی).
  /// - امولاتور اندروید: `--dart-define=BASE_URL=http://10.0.2.2:8080`
  /// - وب / شبیه‌ساز iOS: `--dart-define=BASE_URL=http://localhost:8080`
  /// - پروداکشن: `--dart-define=BASE_URL=https://api.hakemsho.ir`
  /// با تغییر شبکه/IP مک، مقدار dart-define یا همین پیش‌فرض را عوض کنید.
  static const String baseUrl = String.fromEnvironment(
    'BASE_URL',
    defaultValue: 'https://hakem.approagency.ir',
  );

  static String get apiUrl => '$baseUrl/api';

  /// آدرس WebSocket بازی به‌همراه توکن احراز هویت.
  static String wsUrl(String token) =>
      '${baseUrl.replaceFirst('http', 'ws')}/ws?token=$token';
}
