Allow PSD uploads over 6MB
You can't currently upload PSD files over 6MB. This is because its mimetype is `image/vnd.adobe.photoshop`. We think this is an image, and non-GIF images have a limit of 6MB. To fix this, we could do one of two things: 1. Add a special case for PSD files 2. Increase the size limit for unsupported image types such as this I went with the second option. Tested this by: - adding automated tests - uploading a ~9 MB PSD file - uploading a ~1 MB PNG - uploading a ~27 MB PNG (which worked because it's converted to a smaller JPEG) - uploading a ~50 MB text file - trying to upload a ~500 MB text file (which failed, as expected) Addresses [DESKTOP-1168][]. [DESKTOP-1168]: https://signalmessenger.atlassian.net/browse/DESKTOP-1168
This commit is contained in:
parent
92e5ccd764
commit
4519aa4abf
7 changed files with 64 additions and 25 deletions
|
@ -431,3 +431,13 @@ export const getFileExtension = (
|
|||
return attachment.contentType.split('/')[1];
|
||||
}
|
||||
};
|
||||
|
||||
export const getUploadSizeLimitKb = (contentType: MIME.MIMEType): number => {
|
||||
if (MIME.isGif(contentType)) {
|
||||
return 25000;
|
||||
}
|
||||
if (isImageTypeSupported(contentType)) {
|
||||
return 6000;
|
||||
}
|
||||
return 100000;
|
||||
};
|
||||
|
|
|
@ -17,6 +17,8 @@ export const VIDEO_MP4 = 'video/mp4' as MIMEType;
|
|||
export const VIDEO_QUICKTIME = 'video/quicktime' as MIMEType;
|
||||
export const LONG_MESSAGE = 'text/x-signal-plain' as MIMEType;
|
||||
|
||||
export const isGif = (value: string): value is MIMEType =>
|
||||
value === 'image/gif';
|
||||
export const isJPEG = (value: string): value is MIMEType =>
|
||||
value === 'image/jpeg';
|
||||
export const isImage = (value: string): value is MIMEType =>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue