diff --git a/assets/images/docs.png b/assets/images/docs.png index 47f4b548..e5fcbd0d 100644 Binary files a/assets/images/docs.png and b/assets/images/docs.png differ diff --git a/assets/images/docs@2x.png b/assets/images/docs@2x.png index 399f5bef..285a61eb 100644 Binary files a/assets/images/docs@2x.png and b/assets/images/docs@2x.png differ diff --git a/assets/javascripts/news.json b/assets/javascripts/news.json index ce6d7725..3ac79b10 100644 --- a/assets/javascripts/news.json +++ b/assets/javascripts/news.json @@ -1,7 +1,7 @@ [ [ "2016-11-20", - "New documentations: Yarn and Immutable.js" + "New documentations: Yarn, Immutable.js and Async" ], [ "2016-10-10", "New documentations: scikit-learn and Statsmodels" diff --git a/assets/javascripts/templates/pages/about_tmpl.coffee b/assets/javascripts/templates/pages/about_tmpl.coffee index 2290145c..19a3dd2e 100644 --- a/assets/javascripts/templates/pages/about_tmpl.coffee +++ b/assets/javascripts/templates/pages/about_tmpl.coffee @@ -99,6 +99,11 @@ credits = [ '2016 The Apache Software Foundation
Apache and the Apache feather logo are trademarks of The Apache Software Foundation.', 'Apache', 'https://www.apache.org/licenses/LICENSE-2.0' + ], [ + 'Async', + '2010-2016 Caolan McMahon', + 'MIT', + 'https://raw.githubusercontent.com/caolan/async/master/LICENSE' ], [ 'Backbone.js', '2010-2016 Jeremy Ashkenas, DocumentCloud', diff --git a/assets/javascripts/views/pages/simple.coffee b/assets/javascripts/views/pages/simple.coffee index bf8a097b..3a860cd8 100644 --- a/assets/javascripts/views/pages/simple.coffee +++ b/assets/javascripts/views/pages/simple.coffee @@ -8,6 +8,7 @@ class app.views.SimplePage extends app.views.BasePage app.views.AngularPage = app.views.AngularjsPage = +app.views.AsyncPage = app.views.BootstrapPage = app.views.BowerPage = app.views.CPage = diff --git a/assets/stylesheets/application-dark.css.scss b/assets/stylesheets/application-dark.css.scss index 719f6c53..407d1bc0 100644 --- a/assets/stylesheets/application-dark.css.scss +++ b/assets/stylesheets/application-dark.css.scss @@ -34,6 +34,7 @@ 'pages/angular', 'pages/angularjs', 'pages/apache', + 'pages/async', 'pages/bootstrap', 'pages/c', 'pages/cakephp', diff --git a/assets/stylesheets/application.css.scss b/assets/stylesheets/application.css.scss index 61a340de..1d7798f1 100644 --- a/assets/stylesheets/application.css.scss +++ b/assets/stylesheets/application.css.scss @@ -34,6 +34,7 @@ 'pages/angular', 'pages/angularjs', 'pages/apache', + 'pages/async', 'pages/bootstrap', 'pages/c', 'pages/cakephp', diff --git a/assets/stylesheets/global/_icons.scss b/assets/stylesheets/global/_icons.scss index fb876f5e..21df3ac3 100644 --- a/assets/stylesheets/global/_icons.scss +++ b/assets/stylesheets/global/_icons.scss @@ -56,6 +56,7 @@ %icon-close-white { background-position: -2rem -5rem; } %icon-back { background-position: -3rem -5rem; @extend %darkIconFix !optional; } +._icon-async:before { background-position: -6rem 0; @extend %darkIconFix !optional; } ._icon-http:before { background-position: -7rem 0; @extend %darkIconFix !optional; } ._icon-jquery:before { background-position: -8rem 0; @extend %darkIconFix !optional; } ._icon-underscore:before { background-position: -9rem 0; @extend %darkIconFix !optional; } diff --git a/assets/stylesheets/pages/_async.scss b/assets/stylesheets/pages/_async.scss new file mode 100644 index 00000000..09d018f5 --- /dev/null +++ b/assets/stylesheets/pages/_async.scss @@ -0,0 +1,15 @@ +._async { + @extend %simple; + + h3 > .type-signature { + float: right; + color: $textColorLight; + } + + h3 > .signature-attributes { + font-size: .75rem; + font-weight: normal; + font-style: italic; + color: $textColorLighter; + } +} diff --git a/lib/docs/filters/async/clean_html.rb b/lib/docs/filters/async/clean_html.rb new file mode 100644 index 00000000..c62c259f --- /dev/null +++ b/lib/docs/filters/async/clean_html.rb @@ -0,0 +1,30 @@ +module Docs + class Async + class CleanHtmlFilter < Filter + def call + @doc = at_css('#main-container') + + at_css('footer').remove + + css('section', 'header', 'article', '.container-overview', 'span.signature', 'div.description').each do |node| + node.before(node.children).remove + end + + css('h3', 'h4', 'h5').each do |node| + node.name = node.name.sub(/\d/) { |i| i.to_i - 1 } + end + + css('dd ul').each do |node| + node.replace(node.css('li').map(&:inner_html).join(' ')) + end + + css('pre').each do |node| + node['data-language'] = 'javascript' + node.content = node.content + end + + doc + end + end + end +end diff --git a/lib/docs/filters/async/entries.rb b/lib/docs/filters/async/entries.rb new file mode 100644 index 00000000..9a638be5 --- /dev/null +++ b/lib/docs/filters/async/entries.rb @@ -0,0 +1,22 @@ +module Docs + class Async + class EntriesFilter < Docs::EntriesFilter + def additional_entries + type = nil + entries = [] + + css('.nav.methods li').each do |node| + if node['class'] == 'toc-header' + type = node.content + else + name = node.content + id = node.at_css('a')['href'].remove('#') + entries << [name, id, type] + end + end + + entries + end + end + end +end diff --git a/lib/docs/scrapers/async.rb b/lib/docs/scrapers/async.rb new file mode 100644 index 00000000..150478fa --- /dev/null +++ b/lib/docs/scrapers/async.rb @@ -0,0 +1,21 @@ +module Docs + class Async < UrlScraper + self.type = 'async' + self.release = '2.1.2' + self.base_url = 'https://caolan.github.io/async/' + self.root_path = 'docs.html' + self.links = { + home: 'https://caolan.github.io/async/', + code: 'https://github.com/caolan/async' + } + + html_filters.push 'async/entries', 'async/clean_html' + + options[:skip_links] = true + + options[:attribution] = <<-HTML + © 2010–2016 Caolan McMahon
+ Licensed under the MIT License. + HTML + end +end diff --git a/public/icons/docs/async/16.png b/public/icons/docs/async/16.png new file mode 100644 index 00000000..08eafa95 Binary files /dev/null and b/public/icons/docs/async/16.png differ diff --git a/public/icons/docs/async/16@2x.png b/public/icons/docs/async/16@2x.png new file mode 100644 index 00000000..acb36ba2 Binary files /dev/null and b/public/icons/docs/async/16@2x.png differ diff --git a/public/icons/docs/async/SOURCE b/public/icons/docs/async/SOURCE new file mode 100644 index 00000000..c5d679c8 --- /dev/null +++ b/public/icons/docs/async/SOURCE @@ -0,0 +1 @@ +https://raw.githubusercontent.com/caolan/async/master/logo/favicon.ico