Addd WebExtensions

pull/1549/head
Cimbali 5 years ago
parent cce7c49152
commit 21443dc914

@ -0,0 +1,14 @@
module Docs
class WebExtensions
class CleanHtmlFilter < Filter
def call
# Remove all the cruft.
content = at_css('main#content')
content.at_css('aside.metadata').remove
content
end
end
end
end

@ -0,0 +1,28 @@
module Docs
class WebExtensions
class EntriesFilter < Docs::EntriesFilter
def get_name
at_css('main#content h1').text
end
def get_type
slug_parts = slug.split('/')
if slug_parts[0] == 'API' and slug_parts.length() > 1
if slug_parts[1] == 'WebRequest'
return 'webRequest'
else
return slug_parts[1]
end
elsif slug_parts[0] == 'manifest.json'
return slug_parts[0]
elsif slug_parts[0] == 'user_interface'
return 'User Interface'
elsif slug_parts.length() > 1
return slug_parts[0]
else
return 'Miscellaneous'
end
end
end
end
end

@ -0,0 +1,26 @@
module Docs
class WebExtensions < UrlScraper
self.name = 'Web Extensions'
self.slug = 'web_extensions'
self.type = 'simple'
self.links = {
home: 'https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions'
}
self.base_url = 'https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions'
html_filters.push 'web_extensions/entries', 'web_extensions/clean_html'
options[:skip_patterns] = [
/\/contributors\.txt$/
]
options[:attribution] = -> (filter) {
<<-HTML
<a href="#{filter.current_url}">#{filter.result()[:entries][0].name}</a> &copy; 2005-2021 Mozilla and individual contributors.<br>
Licensed under the <a href="https://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike license</a>
HTML
}
end
end
Loading…
Cancel
Save