toJson method

String toJson(
  1. PlatformType platform
)

Implementation

String toJson(PlatformType platform) {
  final Map<String, dynamic> json = {};

  json["authenticationToken"] = _authenticationToken;

  if (platform == PlatformType.ios) {
    if (_enableDebugLoggingIOS) {
      json["enableDebugLogging"] = true;
    }

    if (_disableResourceValidationIOS) {
      json["disableResourceValidation"] = true;
    }

    if (_disableSymbolicationIOS) {
      json["disableSymbolication"] = true;
    }
  }

  final Map<String, dynamic> configMap = {};

  for (final key in ConfigKey.values) {
    final keyPlatform = _platformMap[key]!;

    if (!(keyPlatform == PlatformType.both || keyPlatform == platform)) {
      continue;
    }

    final item = _configMap[key];

    final isEnabled = item?.isEnabled ?? _defaultValueMap[key]!;
    final exceptionList = item?.exceptionList ?? [];

    final Map<String, dynamic> entry = {
      "isEnabled": isEnabled,
    };

    if (exceptionList.isNotEmpty) {
      entry["exceptionList"] = exceptionList;
    }

    configMap[_keyToConfigKeyString(key, platform)] = entry;
  }

  json["individualConfigMap"] = configMap;

  return jsonEncode(json);
}