});
const getOrientation = (img, type = 'image/png') => new Promise(resolve => {
- if (type !== 'image/jpeg') {
+ if (!['image/jpeg', 'image/webp'].includes(type)) {
resolve(1);
return;
}
module AccountAvatar
extend ActiveSupport::Concern
- IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze
+ IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif', 'image/webp'].freeze
LIMIT = 2.megabytes
class_methods do
module AccountHeader
extend ActiveSupport::Concern
- IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze
+ IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif', 'image/webp'].freeze
LIMIT = 2.megabytes
MAX_PIXELS = 750_000 # 1500x500px
enum type: [:image, :gifv, :video, :unknown]
- IMAGE_FILE_EXTENSIONS = ['.jpg', '.jpeg', '.png', '.gif'].freeze
+ IMAGE_FILE_EXTENSIONS = ['.jpg', '.jpeg', '.png', '.gif', '.webp'].freeze
VIDEO_FILE_EXTENSIONS = ['.webm', '.mp4', '.m4v', '.mov'].freeze
- IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze
+ IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif', 'image/webp'].freeze
VIDEO_MIME_TYPES = ['video/webm', 'video/mp4', 'video/quicktime'].freeze
VIDEO_CONVERTIBLE_MIME_TYPES = ['video/webm', 'video/quicktime'].freeze
#
class PreviewCard < ApplicationRecord
- IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze
+ IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif', 'image/webp'].freeze
LIMIT = 1.megabytes
self.inheritance_column = false