|
|
@@ -2,75 +2,17 @@ module Docs
|
|
|
class Tailwindcss
|
|
|
class CleanHtmlFilter < Filter
|
|
|
def call
|
|
|
- clean_up
|
|
|
-
|
|
|
- # Remove code highlighting
|
|
|
- css('pre').each do |node|
|
|
|
- node.content = node.content
|
|
|
- node['data-language'] = 'php'
|
|
|
- end
|
|
|
-
|
|
|
- doc
|
|
|
- end
|
|
|
-
|
|
|
- def clean_up
|
|
|
- @doc = doc.at_css('#content-wrapper')
|
|
|
-
|
|
|
- css('.location').remove
|
|
|
-
|
|
|
- # Replace .header with <h1>
|
|
|
- css('.page-header > h1').each do |node|
|
|
|
- node.content = 'Tailwind' if root_page?
|
|
|
- node.parent.before(node).remove
|
|
|
- end
|
|
|
-
|
|
|
- css('.container-fluid').each do |node|
|
|
|
- node.name = 'table'
|
|
|
- node.css('.row').each { |n| n.name = 'tr' }
|
|
|
- node.css('div[class^="col"]').each { |n| n.name = 'td' }
|
|
|
- end
|
|
|
-
|
|
|
- css('> div').each do |node|
|
|
|
- node.before(node.children).remove
|
|
|
- end
|
|
|
-
|
|
|
- # Remove <abbr>
|
|
|
- css('a > abbr').each do |node|
|
|
|
- node.parent['title'] = node['title']
|
|
|
- node.before(node.children).remove
|
|
|
- end
|
|
|
-
|
|
|
- # Clean up headings
|
|
|
- css('h1 > a', '.content', 'h3 > code', 'h3 strong', 'abbr').each do |node|
|
|
|
- node.before(node.children).remove
|
|
|
- end
|
|
|
-
|
|
|
- # Remove empty <td>
|
|
|
- css('td').each do |node|
|
|
|
- node.remove if node.content =~ /\A\s+\z/
|
|
|
- end
|
|
|
-
|
|
|
- # @doc = at_css('.docs_body')
|
|
|
-
|
|
|
- # Clean up headings
|
|
|
- css('h2 > a').each do |node|
|
|
|
- node.before(node.children).remove
|
|
|
- end
|
|
|
-
|
|
|
- css('p > a[name]').each do |node|
|
|
|
- node.parent.next_element['id'] = node['name']
|
|
|
- end
|
|
|
-
|
|
|
- css('blockquote').each do |node|
|
|
|
- node['class'] = 'tip' if node.inner_html.include?('{tip}')
|
|
|
- node.inner_html = node.inner_html.remove(/\{(tip|note)\}\s?/)
|
|
|
- end
|
|
|
-
|
|
|
- css('blockquote').each do |node|
|
|
|
- if node.inner_html.include?('You\'re browsing the documentation for an old version of Laravel.')
|
|
|
- node.remove
|
|
|
+ css('div.sticky.top-0').remove
|
|
|
+ css('.sr-only').remove
|
|
|
+ css('#sidebar').remove
|
|
|
+
|
|
|
+ css('#nav ul li').each do |node|
|
|
|
+ link = node.css("a").attr('href').to_s
|
|
|
+ if link.include? "https://"
|
|
|
+ node.remove()
|
|
|
end
|
|
|
end
|
|
|
+ doc
|
|
|
end
|
|
|
end
|
|
|
end
|