import 'package:flutter/foundation.dart';

/// Helper pour gérer les logs de debug
/// Les logs sont automatiquement désactivés en mode release
class DebugLog {
  /// Flag pour activer/désactiver les logs manuellement
  static const bool _forceEnableLogs = false;

  /// Vérifie si les logs doivent être affichés
  static bool get _shouldLog => kDebugMode || _forceEnableLogs;

  /// Log une information
  static void info(String message) {
    if (_shouldLog) {
      print(message);
    }
  }

  /// Log une erreur (toujours affiché, même en production)
  static void error(String message, [Object? error, StackTrace? stackTrace]) {
    print('ERROR: $message');
    if (error != null) print('  Error: $error');
    if (stackTrace != null && kDebugMode) print('  StackTrace: $stackTrace');
  }

  /// Log un warning
  static void warning(String message) {
    if (_shouldLog) {
      print('WARNING: $message');
    }
  }
}

