Unified · Split
| @@ -0,0 +1,9 @@ | ||
| 1 | +module Docs | |
| 2 | + class WebExtensions | |
| 3 | + class CleanHtmlFilter < Filter | |
| 4 | + def call | |
| 5 | + doc | |
| 6 | + end | |
| 7 | + end | |
| 8 | + end | |
| 9 | +end | |
| @@ -0,0 +1,24 @@ | ||
| 1 | +module Docs | |
| 2 | + class WebExtensions | |
| 3 | + class EntriesFilter < Docs::EntriesFilter | |
| 4 | + TYPE_BY_PATH = { | |
| 5 | + 'manifest.json' => 'manifest.json', | |
| 6 | + 'user_interface' => 'User Interface', | |
| 7 | + 'WebRequest' => 'webRequest', | |
| 8 | + } | |
| 9 | + | |
| 10 | + def get_name | |
| 11 | + at_css('h1').text | |
| 12 | + end | |
| 13 | + | |
| 14 | + def get_type | |
| 15 | + slug_parts = slug.split('/') | |
| 16 | + if slug_parts[0] == 'API' and slug_parts.length() > 1 | |
| 17 | + return TYPE_BY_PATH.fetch(slug_parts[1], slug_parts[1]) | |
| 18 | + else | |
| 19 | + return TYPE_BY_PATH.fetch(slug_parts[0], slug_parts.length() > 1 ? slug_parts[0] : 'Miscellaneous') | |
| 20 | + end | |
| 21 | + end | |
| 22 | + end | |
| 23 | + end | |
| 24 | +end | |
| @@ -0,0 +1,18 @@ | ||
| 1 | +module Docs | |
| 2 | + class WebExtensions < Mdn | |
| 3 | + self.name = 'Web Extensions' | |
| 4 | + self.slug = 'web_extensions' | |
| 5 | + self.links = { | |
| 6 | + home: 'https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions' | |
| 7 | + } | |
| 8 | + | |
| 9 | + self.base_url = 'https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions' | |
| 10 | + | |
| 11 | + html_filters.push 'web_extensions/entries', 'web_extensions/clean_html' | |
| 12 | + | |
| 13 | + options[:skip_patterns] = [ | |
| 14 | + /\/contributors\.txt$/ | |
| 15 | + ] | |
| 16 | + | |
| 17 | + end | |
| 18 | +end | |