logEvent method

Future<void> logEvent(
  1. String name, {
  2. Map<String, Object>? parameters,
})

Log a named analytics event with optional parameters.

Implementation

Future<void> logEvent(
  String name, {
  Map<String, Object>? parameters,
}) async {
  if (!_enabled) return;

  final params = parameters ?? const {};
  final event = AnalyticsEvent(
    name: name,
    parameters: params,
    timestamp: DateTime.now(),
  );

  // Always log locally
  _storeLocally(event);

  // Also forward to Firebase when enabled
  if (_useFirebase) {
    await _logToFirebase(name, params);
  }

  if (kDebugMode) {
    _log.fine('Event: $name  params: $params');
  }
}