Class: Docs::Mongoose::CleanHtmlFilter

Inherits:
Filter
  • Object
show all
Defined in:
lib/docs/filters/mongoose/clean_html.rb

Constant Summary

Constants inherited from Filter

Filter::SCHEME_RGX

Instance Method Summary collapse

Methods inherited from Filter

#absolute_url_string?, #at_css, #at_xpath, #base_url, #css, #current_url, #fragment_url_string?, #initial_page?, #parse_html, #relative_url_string?, #root_page?, #root_path, #root_url, #slug, #subpath, #subpath_to, #xpath

Instance Method Details

#callObject


4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/docs/filters/mongoose/clean_html.rb', line 4

def call
  css('hr', '.showcode', '.sourcecode').remove

  if slug == 'api'
    at_css('.controls').after('<h1>Mongoose API</h1>')

    css('.private', '.controls').remove

    css('a + .method').each do |node|
      node.previous_element.replace("<h2>#{node.previous_element.to_html}</h2>")
    end
  else
    at_css('h2').name = 'h1'

    css('h3').each do |node|
      node.name = 'h2'
    end
  end

  css('pre > code', 'h1 + ul', '.module', '.item', 'h3 > a', 'h3 code').each do |node|
    node.before(node.children).remove
  end

  doc
end