pickWebFilesForUpload function
Picks files using the browser's file selector and converts them to XFiles.
Implementation
Future<List<XFile>?> pickWebFilesForUpload({
bool allowMultiple = false,
List<String> acceptedFileTypes = const [],
}) async {
if (kTesting) print('[pickFilesForUpload] Starting file selection process');
final webFiles = await selectWebFiles(
allowMultiple: allowMultiple,
acceptedFileTypes: acceptedFileTypes,
);
if (webFiles.isEmpty) {
if (kTesting)
print('[pickWebFilesForUpload] No files selected, returning null');
return null;
}
if (kTesting)
print('[pickFilesForUpload] Converting ${webFiles.length} files to XFiles');
final xfiles = webFiles.map((file) => createXFileFromWebFile(file)).toList();
if (kTesting) print('[pickFilesForUpload] Returning ${xfiles.length} XFiles');
return xfiles;
}