File tree Expand file tree Collapse file tree 1 file changed +38
-0
lines changed
lib/activeadmin_addons/addons Expand file tree Collapse file tree 1 file changed +38
-0
lines changed Original file line number Diff line number Diff line change
1
+ require 'redcarpet'
2
+
3
+ module ActiveAdminAddons
4
+ class MarkdownBuilder < CustomBuilder
5
+ def render
6
+ return if data . blank?
7
+
8
+ Redcarpet ::Markdown . new ( renderer , extensions ) . render ( @data ) . html_safe
9
+ end
10
+
11
+ private
12
+
13
+ def extensions_default
14
+ { fenced_code_blocks : true ,
15
+ no_intra_emphasis : true ,
16
+ strikethrough : true ,
17
+ superscript : true }
18
+ end
19
+
20
+ def renderer_options_default
21
+ { filter_html : true , hard_wrap : true }
22
+ end
23
+
24
+ def extensions
25
+ @extensions ||= extensions_default . merge ( options [ :extensions ] || { } )
26
+ end
27
+
28
+ def render_options
29
+ @render_options ||= renderer_options_default . merge ( options [ :render_options ] || { } )
30
+ end
31
+
32
+ def renderer
33
+ @renderer ||= Redcarpet ::Render ::HTML . new ( render_options )
34
+ end
35
+ end
36
+ end
37
+
38
+ ActiveAdminAddons ::MarkdownBuilder . create_view_methods
You can’t perform that action at this time.
0 commit comments