Class: JSONAPIonify::Documentation
- Inherits:
-
Object
- Object
- JSONAPIonify::Documentation
- Defined in:
- lib/jsonapionify/documentation.rb
Constant Summary collapse
- STRIPPER =
Redcarpet::Markdown.new(Redcarpet::Render::StripDown)
- RENDERER =
Redcarpet::Markdown.new( Redcarpet::Render::HTML, autolink: true, tables: true, fenced_code_blocks: true, strikethrough: true, disable_indented_code_blocks: true, no_intra_emphasis: true, space_after_headers: true, underline: true, highlight: true, quote: true )
Instance Attribute Summary collapse
-
#api ⇒ Object
readonly
Returns the value of attribute api.
Class Method Summary collapse
- .onelinify_markdown(string) ⇒ Object
- .render_markdown(string) ⇒ Object
- .strip_markdown(string) ⇒ Object
Instance Method Summary collapse
-
#initialize(api, template: nil) ⇒ Documentation
constructor
A new instance of Documentation.
- #result ⇒ Object
Constructor Details
#initialize(api, template: nil) ⇒ Documentation
Returns a new instance of Documentation.
39 40 41 42 43 |
# File 'lib/jsonapionify/documentation.rb', line 39 def initialize(api, template: nil) template ||= File.join(__dir__, 'documentation/template.erb') @api = api @erb = ERB.new File.read(template) end |
Instance Attribute Details
#api ⇒ Object (readonly)
Returns the value of attribute api.
37 38 39 |
# File 'lib/jsonapionify/documentation.rb', line 37 def api @api end |
Class Method Details
.onelinify_markdown(string) ⇒ Object
29 30 31 |
# File 'lib/jsonapionify/documentation.rb', line 29 def self.onelinify_markdown(string) strip_markdown(string).gsub(/[\r\n\t]/, ' ').strip end |
.render_markdown(string) ⇒ Object
25 26 27 |
# File 'lib/jsonapionify/documentation.rb', line 25 def self.render_markdown(string) RENDERER.render(string.deindent) end |
.strip_markdown(string) ⇒ Object
33 34 35 |
# File 'lib/jsonapionify/documentation.rb', line 33 def self.strip_markdown(string) STRIPPER.render(string.deindent) end |
Instance Method Details
#result ⇒ Object
45 46 47 |
# File 'lib/jsonapionify/documentation.rb', line 45 def result @erb.result(binding) end |