supabase_progress_uploads

Creator: coderz1093

Last updated:

0 purchases

TODO
Add to Cart

Description:

supabase progress uploads

Supabase Progress Uploads #
A Flutter package for easy file uploads to Supabase storage with progress tracking.
Features #

Single and multiple file uploads
Upload progress tracking
Pause, resume, and cancel uploads
Direct access to upload controller for more granular control

Getting started #
Add this package to your pubspec.yaml:
dependencies:
supabase_progress_uploads: ^1.0.0
copied to clipboard
Basic Usage #
Initialize the upload service #
final supabase = Supabase.instance.client;
final uploadService = SupabaseUploadService(supabase, 'your-bucket-name');
copied to clipboard
Upload a single file #
String? url = await uploadService.uploadFile(
file,
onUploadProgress: (progress) {
print('Upload progress: ${progress}%');
},
);
print('Uploaded file URL: $url');
copied to clipboard
Upload multiple files #
List<String?> urls = await uploadService.uploadMultipleFiles(
files,
onUploadProgress: (progress) {
print('Total upload progress: ${progress}%');
},
);
print('Uploaded files URLs: $urls');
copied to clipboard
Advanced: Using the SupabaseUploadController directly #
For more granular control over the upload process:
final controller = SupabaseUploadController(supabase, 'your_bucket_name');

int fileId = await controller.addFile(file);
controller.startUpload(
fileId,
onUploadProgress: (progress) {
print('Upload progress: ${progress}%');
},
);
String? url = await controller.getUploadedUrl(fileId);
print('Uploaded file URL: $url');
copied to clipboard
Pause, Resume, and Cancel uploads #
controller.pauseUpload(fileId);
controller.resumeUpload(fileId);
await controller.cancelUpload(fileId);
copied to clipboard
Additional information #
Make sure to properly initialize Supabase in your app before using this package. For more detailed examples, check the example folder in the package repository.
Remember to dispose of the upload service when you're done:
@override
void dispose() {
uploadService.dispose();
super.dispose();
}
copied to clipboard
For issues, feature requests, or contributions, please visit the GitHub repository.

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.