class Qiita::Markdown::Filters::QiitaMarker

Constants

DEFAULT_OPTIONS

Public Instance Methods

call() click to toggle source

@return [Nokogiri::HTML::DocumentFragment]

# File lib/qiita/markdown/filters/qiita_marker.rb, line 13
def call
  ::Nokogiri::HTML.fragment(render(@text))
end

Private Instance Methods

options() click to toggle source
# File lib/qiita/markdown/filters/qiita_marker.rb, line 49
def options
  @options ||= DEFAULT_OPTIONS.merge(context[:markdown] || {})
end
qiita_marker_extensions() click to toggle source
# File lib/qiita/markdown/filters/qiita_marker.rb, line 40
def qiita_marker_extensions
  @qiita_marker_extensions ||= %i[
    table
    strikethrough
    autolink
    custom_block
  ]
end
qiita_marker_options() click to toggle source
# File lib/qiita/markdown/filters/qiita_marker.rb, line 25
def qiita_marker_options
  options_to_append = (options[:footnotes] ? [:FOOTNOTES] : [])
                      .concat(options[:sourcepos] ? [:SOURCEPOS] : [])
  @qiita_marker_options ||= %i[
    HARDBREAKS
    UNSAFE
    LIBERAL_HTML_TAG
    STRIKETHROUGH_DOUBLE_TILDE
    TABLE_PREFER_STYLE_ATTRIBUTES
    CODE_DATA_METADATA
    MENTION_NO_EMPHASIS
    AUTOLINK_CLASS_NAME
  ].concat(options_to_append)
end
render(text) click to toggle source

@param text [String] @return [String]

# File lib/qiita/markdown/filters/qiita_marker.rb, line 21
def render(text)
  ::QiitaMarker.render_html(text, qiita_marker_options, qiita_marker_extensions)
end