This react hook uploads multiple files to a firebase cloud storage instance and provides individual loading, error, and completion statuses for each file.
This hook requires immer for the reducer. It still needs some refactoring to look a little nicer, but it functions properly and is currently being used in my mobile app.
I plan to expand the modularity of this and make an npm module for it if there's any interest in that. Let me know if this interest you and I can update this and make a better version for you in ~1 week.