mirror of https://github.com/freeCodeCamp/devdocs
parent
bec78bf6ed
commit
552b526509
@ -0,0 +1,34 @@
|
||||
module Docs
|
||||
class Enzyme
|
||||
class CleanHtmlFilter < Filter
|
||||
def call
|
||||
@doc = at_css('.page-inner > section')
|
||||
|
||||
# Clean headers
|
||||
css('h1').each do |node|
|
||||
node.content = node.content
|
||||
end
|
||||
|
||||
# Make headers on reference pages bigger
|
||||
if subpath.include?('ReactWrapper') || subpath.include?('ShallowWrapper')
|
||||
css('h4').each do |node|
|
||||
node.name = 'h2'
|
||||
end
|
||||
end
|
||||
|
||||
# Make code blocks detectable by Prism
|
||||
css('pre').each do |node|
|
||||
cls = node.at_css('code')['class']
|
||||
|
||||
unless cls.nil?
|
||||
node['data-language'] = cls.split('-')[1]
|
||||
end
|
||||
|
||||
node.content = node.content
|
||||
end
|
||||
|
||||
doc
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
@ -0,0 +1,33 @@
|
||||
module Docs
|
||||
class Enzyme
|
||||
class EntriesFilter < Docs::EntriesFilter
|
||||
def get_name
|
||||
name = at_css('.page-inner h1').content
|
||||
|
||||
if name.include?('(')
|
||||
until_parenthesis = name[0..name.index('(')]
|
||||
|
||||
if until_parenthesis.include?(' ')
|
||||
until_parenthesis[0..-3]
|
||||
else
|
||||
until_parenthesis + ')'
|
||||
end
|
||||
else
|
||||
name
|
||||
end
|
||||
end
|
||||
|
||||
def get_type
|
||||
active_level = at_css('.chapter.active')['data-level']
|
||||
|
||||
# It's a parent level if it contains only one dot
|
||||
if active_level.count('.') == 1
|
||||
at_css('.chapter.active > a').content
|
||||
else
|
||||
parent_level = active_level[0..active_level.rindex('.') - 1]
|
||||
at_css(".chapter[data-level=\"#{parent_level}\"] > a").content
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
@ -0,0 +1,20 @@
|
||||
module Docs
|
||||
class Enzyme < UrlScraper
|
||||
self.type = 'simple'
|
||||
self.release = '3.6.0'
|
||||
self.base_url = 'https://airbnb.io/enzyme/'
|
||||
self.root_path = 'index.html'
|
||||
self.links = {
|
||||
code: 'https://github.com/airbnb/enzyme'
|
||||
}
|
||||
|
||||
html_filters.push 'enzyme/entries', 'enzyme/clean_html'
|
||||
|
||||
options[:skip] = %w(CHANGELOG.html docs/future.html CONTRIBUTING.html)
|
||||
|
||||
options[:attribution] = <<-HTML
|
||||
© 2015 Airbnb, Inc.<br>
|
||||
Licensed under the MIT License.
|
||||
HTML
|
||||
end
|
||||
end
|
Loading…
Reference in new issue