toMap method

Map<String, dynamic> toMap()

转换为 Map,自动过滤掉 null 值

Implementation

Map<String, dynamic> toMap() {
  final Map<String, dynamic> result = {
    'enableDrama': enableDrama,
    'enableStory': enableStory,
    'enableVideo': enableVideo,
  };

  void put(String key, dynamic value) {
    if (value != null) {
      result[key] = value;
    }
  }

  put('debugLog', debugLog);
  put('imageCacheSize', imageCacheSize);
  put('disableAbTest', disableAbTest);
  put('isNewUser', isNewUser);
  put('newUserAliveSeconds', newUserAliveSeconds);
  put('personalizationEnabled', personalizationEnabled);
  put('userId', userId);
  put('channel', channel);
  put('privacy', privacy?.toMap());

  if (extra != null && extra!.isNotEmpty) {
    result['extra'] = extra;
  }

  return result;
}