toMap method

Map<String, Object> toMap()

Converts this power state to a map using the native field names.

Implementation

Map<String, Object> toMap() {
  final Map<String, Object> map = <String, Object>{
    'batteryLevel': batteryLevel,
    'isCharging': isCharging,
    'chargingSource': chargingSource,
    'batteryHealth': batteryHealth,
    'batteryStatus': batteryStatus,
    'batteryTemperatureCelsius': batteryTemperatureCelsius,
    'isPowerSaveMode': isPowerSaveMode,
    'isIgnoringBatteryOptimizations': isIgnoringBatteryOptimizations,
    'isIosNative': isIosNative,
  };

  void addOptional(String key, Object? value) {
    if (value != null) {
      map[key] = value;
    }
  }

  addOptional('batteryState', batteryState);
  addOptional('isBatteryMonitoringEnabled', isBatteryMonitoringEnabled);
  addOptional('isBatteryMonitoringAvailable', isBatteryMonitoringAvailable);
  addOptional('thermalState', thermalState);

  return map;
}