Unified · Split
| @@ -2,12 +2,7 @@ module Docs · 1 unmodified line | |||
| 2 | class WebExtensions | 2 | class WebExtensions |
| 3 | class CleanHtmlFilter < Filter | 3 | class CleanHtmlFilter < Filter |
| 4 | def call | 4 | def call |
| 5 | 5 | doc | |
| 6 | # Remove all the cruft. | ||
| 7 | content = at_css('main#content') | ||
| 8 | content.at_css('aside.metadata').remove | ||
| 9 | |||
| 10 | content | ||
| 11 | end | 6 | end |
| 12 | end | 7 | end |
| 13 | end | 8 | end |
| @@ -1,26 +1,22 @@ | |||
| 1 | module Docs | 1 | module Docs |
| 2 | class WebExtensions | 2 | class WebExtensions |
| 3 | class EntriesFilter < Docs::EntriesFilter | 3 | class EntriesFilter < Docs::EntriesFilter |
| 4 | TYPE_BY_PATH = { | ||
| 5 | 'manifest.json' => 'manifest.json', | ||
| 6 | 'user_interface' => 'User Interface', | ||
| 7 | 'WebRequest' => 'webRequest', | ||
| 8 | } | ||
| 9 | |||
| 4 | def get_name | 10 | def get_name |
| 5 | at_css('main#content h1').text | 11 | at_css('h1').text |
| 6 | end | 12 | end |
| 7 | 13 | ||
| 8 | def get_type | 14 | def get_type |
| 9 | slug_parts = slug.split('/') | 15 | slug_parts = slug.split('/') |
| 10 | if slug_parts[0] == 'API' and slug_parts.length() > 1 | 16 | if slug_parts[0] == 'API' and slug_parts.length() > 1 |
| 11 | if slug_parts[1] == 'WebRequest' | 17 | return TYPE_BY_PATH.fetch(slug_parts[1], slug_parts[1]) |
| 12 | return 'webRequest' | ||
| 13 | else | ||
| 14 | return slug_parts[1] | ||
| 15 | end | ||
| 16 | elsif slug_parts[0] == 'manifest.json' | ||
| 17 | return slug_parts[0] | ||
| 18 | elsif slug_parts[0] == 'user_interface' | ||
| 19 | return 'User Interface' | ||
| 20 | elsif slug_parts.length() > 1 | ||
| 21 | return slug_parts[0] | ||
| 22 | else | 18 | else |
| 23 | return 'Miscellaneous' | 19 | return TYPE_BY_PATH.fetch(slug_parts[0], slug_parts.length() > 1 ? slug_parts[0] : 'Miscellaneous') |
| 24 | end | 20 | end |
| 25 | end | 21 | end |
| 26 | end | 22 | end |
| @@ -1,8 +1,7 @@ | |||
| 1 | module Docs | 1 | module Docs |
| 2 | class WebExtensions < UrlScraper | 2 | class WebExtensions < Mdn |
| 3 | self.name = 'Web Extensions' | 3 | self.name = 'Web Extensions' |
| 4 | self.slug = 'web_extensions' | 4 | self.slug = 'web_extensions' |
| 5 | self.type = 'simple' | ||
| 6 | self.links = { | 5 | self.links = { |
| 7 | home: 'https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions' | 6 | home: 'https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions' |
| 8 | } | 7 | } |
| @@ -15,12 +14,5 @@ module Docs · 6 unmodified lines | |||
| 15 | /\/contributors\.txt$/ | 14 | /\/contributors\.txt$/ |
| 16 | ] | 15 | ] |
| 17 | 16 | ||
| 18 | options[:attribution] = -> (filter) { | ||
| 19 | <<-HTML | ||
| 20 | <a href="#{filter.current_url}">#{filter.result()[:entries][0].name}</a> © 2005-2021 Mozilla and individual contributors.<br> | ||
| 21 | Licensed under the <a href="https://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike license</a> | ||
| 22 | HTML | ||
| 23 | } | ||
| 24 | |||
| 25 | end | 17 | end |
| 26 | end | 18 | end |