mirror of
https://github.com/lingble/chatwoot.git
synced 2025-10-29 18:22:53 +00:00
33 lines
761 B
Ruby
33 lines
761 B
Ruby
class ChatwootMarkdownRenderer
|
|
def initialize(content)
|
|
@content = content
|
|
end
|
|
|
|
def render_message
|
|
markdown_renderer = BaseMarkdownRenderer.new
|
|
doc = CommonMarker.render_doc(@content, :DEFAULT)
|
|
html = markdown_renderer.render(doc)
|
|
render_as_html_safe(html)
|
|
end
|
|
|
|
def render_article
|
|
markdown_renderer = CustomMarkdownRenderer.new
|
|
doc = CommonMarker.render_doc(@content, :DEFAULT, [:table])
|
|
html = markdown_renderer.render(doc)
|
|
|
|
render_as_html_safe(html)
|
|
end
|
|
|
|
def render_markdown_to_plain_text
|
|
CommonMarker.render_doc(@content, :DEFAULT).to_plaintext
|
|
end
|
|
|
|
private
|
|
|
|
def render_as_html_safe(html)
|
|
# rubocop:disable Rails/OutputSafety
|
|
html.html_safe
|
|
# rubocop:enable Rails/OutputSafety
|
|
end
|
|
end
|