gitlab-org--gitlab-foss/lib/gitlab/file_markdown_link_builder.rb

24 lines
611 B
Ruby

# frozen_string_literal: true
# Builds the markdown link of a file
# It needs the methods filename and secure_url (final destination url) to be defined.
module Gitlab
module FileMarkdownLinkBuilder
include FileTypeDetection
def markdown_link
return unless name = markdown_name
markdown = "[#{name.gsub(']', '\\]')}](#{secure_url})"
markdown = "!#{markdown}" if embeddable? || dangerous_embeddable?
markdown
end
def markdown_name
return unless filename.present?
embeddable? ? File.basename(filename, File.extname(filename)) : filename
end
end
end