toMultipartFile method

Future<MultipartFile> toMultipartFile()

Convert CloudinaryFile to MultipartFile

Implementation

Future<MultipartFile> toMultipartFile() async {
  assert(
    !fromExternalUrl,
    'toMultipartFile() not available when uploading from external urls',
  );

  if (byteData != null) {
    return MultipartFile.fromBytes(
      byteData?.buffer.asUint8List() ?? [],
      filename: identifier,
    );
  }

  if (bytesData != null) {
    return MultipartFile.fromBytes(
      bytesData!,
      filename: identifier,
    );
  }

  if (kIsWeb) {
    final res = await Dio().get<List<int>>(
      filePath!,
      options: Options(responseType: ResponseType.bytes),
    );
    return MultipartFile.fromBytes(
      res.data!,
      filename: identifier,
    );
  }

  return MultipartFile.fromFile(
    filePath!,
    filename: identifier,
  );
}