# frozen_string_literal: true class UploadMarkdown def initialize(upload) @upload = upload end def to_markdown(display_name: nil) if FileHelper.is_supported_image?(@upload.original_filename) image_markdown elsif FileHelper.is_supported_playable_media?(@upload.original_filename) playable_media_markdown else attachment_markdown(display_name: display_name) end end def image_markdown "" end def attachment_markdown(display_name: nil, with_filesize: true) human_filesize = with_filesize ? " (#{@upload.human_filesize})" : "" display_name ||= @upload.original_filename "[#{display_name}|attachment](#{@upload.short_url})#{human_filesize}" end def playable_media_markdown type = if FileHelper.is_supported_audio?(@upload.original_filename) "audio" elsif FileHelper.is_supported_video?(@upload.original_filename) "video" end return attachment_markdown if !type "" end end