upload method

Future<DirectUploadResponse> upload({
  1. required String fileName,
  2. required String fileMimeType,
  3. required File file,
  4. ProgressCallback? onProgress,
})

Implementation

Future<DirectUploadResponse> upload({
  required String fileName,
  required String fileMimeType,
  required File file,
  ProgressCallback? onProgress,
}) async {
  int fileSize = await file.length();
  String checksum = await FileChecksum.getMd5AsBase64(file: file);
  DirectUploadResponse response = await uploader.directUpload(
    DirectUploadRequest(
      fileName: fileName,
      contentType: fileMimeType,
      byteSize: fileSize,
      checksum: checksum,
    ),
  );
  await uploader.fileUpload(
    fileContents: file.openRead(),
    byteSize: fileSize,
    directUploadResponse: response,
    onProgress: onProgress,
  );
  return Future.value(response);
}