ObslyConfig.fromMap constructor

ObslyConfig.fromMap(
  1. Map<String, dynamic> map
)

Crea desde Map (para deserialización) IMPORTANTE: Los valores null indican que el servidor no especificó ese parámetro Esto permite que el merge mantenga la prioridad Remote > Local > Default

Implementation

factory ObslyConfig.fromMap(Map<String, dynamic> map) {
  return ObslyConfig(
    enableScreenshotOnUi: map[
        'enableScreenshotOnUi'], // Removed ?? false - let it be null if not specified
    requestBlacklist:
        (map['requestBlacklist'] as List<dynamic>?)?.cast<String>(),
    requestBodyWhitelist:
        _parseRequestBodyWhitelist(map['requestBodyWhitelist']),
    requestHeadersWhitelist:
        _parseRequestHeadersWhitelist(map['requestHeadersWhitelist']),
    tagsBlacklist: _parseTagsBlacklist(map['tagsBlacklist']),
    rageClick: _parseRageClick(map['rageClick']),
    enableCrashes: map['enableCrashes'],
    enableLifeCycleLog: map['enableLifeCycleLog'],
    enableRequestLog: map['enableRequestLog'],
    enableTagger: map['enableTagger'],
    enablePerformance: map['enablePerformance'],
    enableMetrics: map['enableMetrics'],
    enableUI: map['enableUI'],
    automaticViewDetection: map['automaticViewDetection'],
    sessionMaxLengthMins: map['sessionMaxLengthMins'],
    bufferSize: map['bufferSize'],
    captureConsole: map['captureConsole'],
    captureBodyOnError: map['captureBodyOnError'],
    messengerInterval: map['messengerInterval'],
    enableDebugTools: map['enableDebugTools'],
    enableRules: map['enableRules'],
    obslyTools: _parseObslyTools(map['obsly_tools']),
    rateLimits: _parseRateLimits(map['rateLimits']),
  );
}