[web] Encrypt media before uploading
Summary:
This is the final diff that adds support for uploading encrypted media.
Media support in web input-state-container works differently but it's as complicated as on native. Basically: firstly, we create a pendingUpload and enhance it with actual upload result. Then (when enter/send btn is clicked) we create message based on that pending upload.
Similiar to native version, the encrypted uploads functionality is hidden behind a boolean.
Depends on D7291, D7292, D7293, D7295
Test Plan:
Set the sendEncryptedMedia to false. Send a photo/video/multiple media - confirm it works.
Set the flag to true. Repeat.
Reviewers: atul, marcin
Reviewed By: atul
Subscribers: ashoat, tomek
Differential Revision: https://phab.comm.dev/D7294