encodeFormParameter function

dynamic encodeFormParameter(
  1. Serializers serializers,
  2. dynamic value,
  3. FullType type
)

Format the given form parameter object into something that Dio can handle. Returns primitive or String. Returns List/Map if the value is BuildList/BuiltMap.

Implementation

dynamic encodeFormParameter(Serializers serializers, dynamic value, FullType type) {
  if (value == null) {
    return '';
  }
  if (value is String || value is num || value is bool) {
    return value;
  }
  final serialized = serializers.serialize(value, specifiedType: type);
  if (serialized is String) {
    return serialized;
  }
  if (value is BuiltList || value is BuiltMap) {
    return serialized;
  }
  return json.encode(serialized);
}