🛠 ᴺᴱᵂ ᴾᴸᵁᴳᴵᴺ Wasabi Storage Dropzone & Utilities (Image Resize & Compression, MultiUploader, Folder support & No Filesize Limit!)

Hi Bubblers !

This plugin contains a set of Wasabi utilities.

The following element for Wasabi is provided:

  • Wasabi Dropzone visual element

The following actions for Wasabi are provided:

  • Get Upload Presigned Expiring URL
  • Generate Download Presigned Expiring URL
  • Put File to Wasabi
  • Get File Base64 DataURI from Wasabi
  • Put Base64 DataURI to Wasabi
  • Delete File from Wasabi
  • Get File Metadata from Wasabi
  • List Objects from Wasabi
  • Copy Object between Wasabi buckets
  • Set File Public Access in Wasabi
  • Create Bucket in Wasabi
  • Delete Bucket in Wasabi

You can test out our Wasabi Storage Dropzone & Utilities Plugin with the live demo.

wasabi-cloud-storage

Enjoy !
Made with :black_heart: by wise:able
Discover our other Artificial Intelligence-based Plugins

4 Likes

@redvivi Hi, I’ve purchased the plugin this evening and have a couple of questions:

  1. Is it possible to set it up in such a way that the user can create a list of files by adding them to the dropzone but without uploading each file as it gets added, but rather, say, add 10 files first and then click a button and trigger some workflow action that would start the upload of all the files from the dropzone? It was easy setting it up to add a bunch of files without uploading them, but I couldn’t crack the last part with triggering an action to start uploading all the files. I spent over an hour on it and it ended up being either upload an individual file (i.e. the current file) or nothing. What am I missing?

  2. The “No Filesize Limit” wording in the forum post title is confusing, as you quite explicitly state the following in the plugin description:

PUT FILE TO WASABI stores a file in your WASABI Bucket, returning the URL if the operation is successful. The file must be less than 22 megabytes.

So, which one is it - unlimited file size or 22 MB? :slightly_smiling_face:

Thanks in advance.

1 Like

It would require to iterate on each file over the accepted files list upon click on button, to trigger the file uploading action of the Wasabi Dropzone element.

Uploading comes in two flavors: front-end actions (unlimited) and back-end actions (limited as stated in the documentation).

1 Like

Hey Redvivi,

I know i’ve talked with you before, I have some questions:

I’m looking to emulate what Bubble does with their files where they handle a “file” as a thing with fields like filename, S3 url, etc. With your plugin, can I drop multiple files onto your uploader, and run a workflow per file? I’m looking to do “Create a thing (a custom type called file)” Then the result of that thing’s UUID will be the folder that the uploaded files goes into? Then make changes to that thing and add the Result of the upload’s URL, name, filetype, etc?

Okay I ended up subscribing to the plugin and it’s doing exactly what I’m looking for.

I don’t know if this is a bug or a misconfigured thing on my end, but when I do “Generate pre-signed URL” and navigate to that page, it gives me an error saying this:
<Message>The authorization header is malformed; the region 'us-west-1' is wrong; expecting 'us-east-1'</Message>

I have us-west-1 in the plugin settings for live and dev.

Also can you just make the region a field we can dynamically pick instead of picking the region app-wide? I might have multiple buckets in different locations later on.

UPDATE: I was using the “Get upload pre-signed URL” when I was trying to get an existing file. Used the download one instead. Not sure if there’s still a bug that the upload was looking for us-east-1…

Now when I upload files it doesn’t actually upload to my bucket but the progress shows 100%. I made a test bucket set to us-east-1 and now it’s uploading.

Maybe you have it hardcoded somewhere to look for us-east-1 when fetching the download pre-signed URL? Can we just define it dynamically instead?

Thank you! Let me know if you need me to test anything on my end but as soon as I made a us-east-1 bucket it started working.

Let me have a look.

Okay great this plugin is really nice the more I’m using it.

Another question, maybe this is just because I’m on west coast and using the east coast bucket, but when I start an upload (tiny file size too) it seems to pause for 5 seconds before actually starting the upload, and I see the progress bar moving really slowly at the top. Any reason why?

And then I didn’t know how to get the total% done uploading, so I did WasabiDropzone A's Accepted Files:each item's upload_percentage:average:floor unless you have a better way.

And I’m not sure how to cancel the upload early

There is always a cold start lead-time for Bubble engine to fire-up backend actions. Once in memory and if used frequently, it is almost as fast as fronted actions.

Fixed.

Done.

Awesome thanks. I’ll test out tomorrow. In the future I might have different buckets depending on customers’ geographic location so this is great.

1 Like

:heart:

Looks good so far with inital testing!

If you added an action like “Initiate Wasabi Connection” that we could use on page-load, would that help for initial upload load times by pre-loading the backend actions? Is that something that is possible?

This is regarding the first few seconds delay when uploading through the front-end uploader

Also what’s your best suggestion for extracting the file extension when uploading a file? I’m coming from the Zeroqode Wasabi plugin and one of their fields is “File type” and it will put just the “.jpg” in it’s own field. Seems like the “Get metadata” action doesn’t provide anything but file size.

I know it’s a lot of requests but it seems like you can dev this much quicker than Zeroqode when I try to suggest things :joy:

Exposed as a custom state, could you do something like “is Dragged Over” So when you are dragging in files into the uploader you can have it trigger an animation, etc.

And then I noticed it understands when you drag in a folder to upload all the contents, somehow could there be it’s own loop for that? For example I have my own data type called Folder, and another called File, so when I drag in a folder it could see that a folder was dragged in, then create my Folder data type and then loop through the Files uploading them + set their folder to the “Result of step 1 Create a Folder” (this one is probably less urgent because not everyone will use this functionality?)

My quest to create a Google Drive clone is getting much closer than ever :laughing:

And is there any upload speed limits you have set in place? It seems to upload a little slower than the other plugin. Just making sure it’s nothing in your plugin limiting it.

1 Like

A Total Upload Progress exposed state has been implemented.

Unfortunately not, this step is mandatory before uploading.

When uploading, I would suggest to extract the type from the file name in the list of accepted files’ state.

There is no “folder data type” concept in object storage world. However I have updated the plugin so now you can upload an entire local folder with its files on which the structure will be replicated on Wasabi.

No.

2 Likes

Great I’ll test it today. Also this is just a copy paste from the DM I sent

Anyway to add the feature to rename an object? I saw Wasabi has an option to rename in the console)

Also anyway to make the file Public when uploaded?

I’ll test this today, maybe it should be a checkbox in case this causes unwanted file structure. Like right now all files uploaded I create a new thing before each one so each file sits in a unique folder.

It should and it is.

1 Like

Rename would technically be a copy followed by a delete operation, as done in any file management system. Any objection?

1 Like

Yea seems like that should work. As long as there’s some kind of feedback that it was successful like a “Wasabi rename has completed” event or something to let the user know it’s finished

Done.