History

Update Sequelize documentation (6.23.2)

Simon Legner committed 4 years ago

Commit 73af8771 parent 666d6553 files · +33 −37Browse files

Unified · Split

3 files
  1. lib/docs/filters/sequelize/clean_html.rb +6 −28
  2. lib/docs/filters/sequelize/entries.rb +12 −7
  3. lib/docs/scrapers/sequelize.rb +15 −2
lib/docs/filters/sequelize/clean_html.rb+6−28
@@ -2,26 +2,9 @@ module Docs · 1 unmodified line
22 class Sequelize
33 class CleanHtmlFilter < Filter
44 def call
5− @doc = at_css('.content')
5+ @doc = at_css('article', '.content')
66
7− # Clean up the home page
8− if root_page? || subpath == "index.html"
9− # Remove logo
10− css('.manual-user-index > div > div.logo').remove
11−
12− # Convert title to proper h1 element
13− at_css('.manual-user-index > div > div.sequelize').name = 'h1'
14−
15− # Remove badges (NPM, Travis, test coverage, etc.)
16− css('.manual-user-index > p:nth-child(4)').remove
17−
18− # Remove image cards pointing to entries of the manual
19− css('.manual-cards').remove
20−
21− # Pull the header out of its container
22− header = at_css('h1')
23− header.parent.parent.parent.add_previous_sibling header
24− else
7+ if at_css('header > h1')
258 # Pull the header out of its container
269 header = at_css('h1')
2710 header.parent.add_previous_sibling header
@@ -36,18 +19,13 @@ module Docs · 8 unmodified lines
3619 end
3720
3821 # Add syntax highlighting to code blocks
39− css('pre > code[class^="lang-"]').each do |node|
40− pre = node.parent
41− # Convert the existing language definitions to Prism-compatible attributes
42− pre['data-language'] = 'javascript' if node['class'] == 'lang-js' || node['class'] == 'lang-javascript'
43− pre['data-language'] = 'json' if node['class'] == 'lang-json'
44− pre['data-language'] = 'shell' if node['class'] == 'lang-sh' || node['class'] == 'lang-bash'
45− pre['data-language'] = 'sql' if node['class'] == 'lang-sql'
46− pre['data-language'] = 'typescript' if node['class'] == 'lang-ts'
22+ css('pre[class^="prism-code language-"]').each do |node|
23+ node['data-language'] = node['class'][/language-(\w+)/, 1] if node['class'] and node['class'][/language-(\w+)/]
24+ node.content = node.css('.token-line').map(&:content).join("\n")
4725 end
4826
4927 # Return the cleaned-up document
50− doc
28+ at_css('.markdown') || doc
5129 end
5230 end
5331 end
lib/docs/filters/sequelize/entries.rb+12−7
@@ -8,19 +8,19 @@ module Docs · 7 unmodified lines
88
99 # Assign the pages to main categories
1010 def get_type
11− if path.start_with?('manual/')
11+ if base_url.path.include?('/docs/')
1212 'Manual'
13− elsif path.include?('lib/data-types')
13+ elsif path.include?('src/data-types')
1414 'datatypes'
15− elsif path.include?('lib/errors/validation')
15+ elsif path.include?('src/errors/validation')
1616 'errors/validation'
17− elsif path.include?('lib/errors/database')
17+ elsif path.include?('src/errors/database')
1818 'errors/database'
19− elsif path.include?('lib/errors/connection')
19+ elsif path.include?('src/errors/connection')
2020 'errors/connection'
21− elsif path.include?('lib/errors')
21+ elsif path.include?('src/errors')
2222 'errors'
23− elsif path.include?('lib/associations')
23+ elsif path.include?('src/associations')
2424 'associations'
2525 elsif path.include?('master/variable')
2626 'variables'
@@ -28,6 +28,11 @@ module Docs · 1 unmodified line
2828 'classes'
2929 end
3030 end
31+
32+ def include_default_entry?
33+ at_css('.card > h2:contains("📄️")').nil?
34+ end
35+
3136 end
3237 end
3338 end
lib/docs/scrapers/sequelize.rb+15−2
@@ -1,5 +1,7 @@
11 module Docs
22 class Sequelize < UrlScraper
3+ include MultipleBaseUrls
4+
35 self.name = 'Sequelize'
46 self.slug = 'sequelize'
57 self.type = 'simple'
@@ -20,9 +22,20 @@ module Docs · 14 unmodified lines
2022 Licensed under the MIT License.
2123 HTML
2224
25+ def initial_urls
26+ [
27+ "https://sequelize.org/docs/v6/",
28+ "https://sequelize.org/api/v6/identifiers.html",
29+ ]
30+ end
31+
2332 version '6' do
24− self.release = '6.5.0'
25− self.base_url = "https://sequelize.org/master/"
33+ self.release = '6.23.2'
34+ self.base_url = "https://sequelize.org/docs/v6/"
35+ self.base_urls = [
36+ "https://sequelize.org/docs/v6/",
37+ "https://sequelize.org/api/v6/",
38+ ]
2639 end
2740
2841 version '5' do