toCompactStringEvent static method

String toCompactStringEvent(
  1. Event event
)

Implementation

static String toCompactStringEvent(Event event) {
  final flat = event.toJson();

  flat['_ts'] = event.ts;
  flat.remove('ts');

  if (event.userProperties != null) {
    for (final entry in event.userProperties!.entries) {
      final key = entry.key;
      final value = entry.value;
      if (DefaultUserPropertiesHandler.DEFAULT_USER_KEYS_WITHOUT_PREFIX.contains(key)) {
        flat[key] = value;
      } else {
        flat['user_props.$key'] = value;
      }
    }
  }

  if (event.eventParams != null) {
    flat.addAll(event.eventParams!);
  }

  flat.remove('user_properties');
  flat.remove('event_params');
  flat.remove('session_start');

  return jsonEncode(flat);
}