appMapParms function

Map<String, dynamic> appMapParms(
  1. Map? value, {
  2. bool isArckipel = true,
  3. bool alsoDeviceData = true,
  4. bool disableRemoveNull = false,
})

Implementation

Map<String, dynamic> appMapParms(
  Map? value, {
  bool isArckipel = true,
  bool alsoDeviceData = true,
  bool disableRemoveNull = false,
}) {
  Map<String, dynamic> params = {
    'languageCode': appPrefs.languageCode,
  };
  if (isArckipel) {
    params.addAll(HashMap.from({
      'platformUuid': coreOptions.platformUuid,
      'filterPlatformUuid': coreOptions.platformUuid,
      'apiKey': coreOptions.apiKey,
    }));
    if (alsoDeviceData && deviceData.isNotEmpty) {
      params.addAll(HashMap.from({
        "deviceInfos": {
          "ip": deviceData['ip'],
          "app": deviceData['app'],
          "os": deviceData['os'],
          "device": deviceData['device'],
        },
      }));
    }
  }
  if (value != null && value.isNotEmpty) {
    if (!disableRemoveNull) {
      params.removeWhere((key, value0) => value[key] != null);
    }
    params.addAll(HashMap.from(value));
  }
  if (!disableRemoveNull) {
    params.removeWhere((key, value) => value == null);
  }
  return params;
}