Is it possible to upload a file to IPFS without first storing it locally using AJAX

I have JS and PHP scripts that uploads a file to Pinata (IPFS) and it all works fine but I first need to upload the file to my web server then it can be uploaded to IPFS. This is not a good solution for large files because I need to wait for 2 uploads to happen before I get the returned CID.

Is it possible to upload directly to Pinata without first uploading to my server? Ultimately im going to setup my own Arweave node in the future but am currently using a paid account on Pinata.