uploadFileList method

Future<Response> uploadFileList(
  1. List fileData,
  2. List<String> fileNames,
  3. Map<String, dynamic>? queryParams
)

Implementation

Future<Response> uploadFileList(
    List fileData,
    List<String> fileNames,
    Map<String, dynamic>? queryParams,
    ) async {
  try {
    final formData = FormData();

    for (int i = 0; i < fileData.length; i++) {
      if (kIsWeb) {
        formData.files.add(
          MapEntry(
            'file',
            MultipartFile.fromBytes(
              fileData[i],
              filename: fileNames[i],
            ),
          ),
        );
      } else {
        formData.files.add(
          MapEntry(
            'file',
            await MultipartFile.fromFile(
              fileData[i],
              filename: fileNames[i],
            ),
          ),
        );
      }
    }

    final response = await _apiClient.client.post(
      AppUrls.uploadMultipleFile,
      data: formData,
      queryParameters: queryParams,
    );

    return response;
  } catch (e) {
    print('Upload error: $e');
    return Response(
      statusCode: 500,
      requestOptions: RequestOptions(path: ''),
    );
  }
}