History

Add Liquid documentation

Phil Scherer committed 9 years ago

Commit dfee92d1 parent 41278b88 files · +101 −-1Browse files

Unified · Split

8 files
  1. assets/stylesheets/application-dark.css.scss +1 −0
  2. assets/stylesheets/application.css.scss +1 −0
  3. assets/stylesheets/pages/_liquid.scss +18 −0
  4. lib/docs/filters/liquid/clean_html.rb +34 −0
  5. lib/docs/filters/liquid/entries.rb +28 −0
  6. lib/docs/scrapers/liquid.rb +19 −0
  7. public/icons/docs/liquid/SOURCE +1 −0
  8. public/icons/docs/liquid/water-drop-64x.png +0 −0
assets/stylesheets/application-dark.css.scss+1−0
@@ -57,6 +57,7 @@ · 56 unmodified lines
5757 'pages/knockout',
5858 'pages/kotlin',
5959 'pages/laravel',
60+ 'pages/liquid',
6061 'pages/love',
6162 'pages/lua',
6263 'pages/mdn',
assets/stylesheets/application.css.scss+1−0
@@ -57,6 +57,7 @@ · 56 unmodified lines
5757 'pages/knockout',
5858 'pages/kotlin',
5959 'pages/laravel',
60+ 'pages/liquid',
6061 'pages/love',
6162 'pages/lua',
6263 'pages/mdn',
assets/stylesheets/pages/_liquid.scss+18−0
@@ -0,0 +1,18 @@
1+._liquid {
2+ @extend %simple;
3+
4+ .code-label {
5+ @extend %block-label, %label-green;
6+ border-bottom-left-radius: 0;
7+ border-bottom-right-radius: 0;
8+ margin-left: 0;
9+ margin-right: 0;
10+ margin-bottom: -1px;
11+ }
12+
13+ .code-label ~ div > pre {
14+ margin-top: 0;
15+ border-top-left-radius: 0;
16+ border-top-right-radius: 0;
17+ }
18+}
lib/docs/filters/liquid/clean_html.rb+34−0
@@ -0,0 +1,34 @@
1+module Docs
2+ class Liquid
3+ class CleanHtmlFilter < Filter
4+ def call
5+ root_page? ? root : other
6+ end
7+
8+ def root
9+ doc = at_css('.home-banner')
10+
11+ css('.btn-row').remove
12+
13+ doc
14+ end
15+
16+ def other
17+ doc = at_css('.content__area > .content')
18+
19+ css('button.menu-button').remove
20+
21+ css('code').each do |node|
22+ node.remove_attribute('class')
23+ node.content = node.content
24+ end
25+
26+ css('pre', '.highlighter-rouge').each do |node|
27+ node.remove_attribute('class')
28+ end
29+
30+ doc
31+ end
32+ end
33+ end
34+end
lib/docs/filters/liquid/entries.rb+28−0
@@ -0,0 +1,28 @@
1+module Docs
2+ class Liquid
3+ class EntriesFilter < Docs::EntriesFilter
4+ def get_name
5+ at_css('h1').content
6+ end
7+
8+ def get_type
9+ if not root_page?
10+ slug.split('/').first.capitalize
11+ end
12+ end
13+
14+ def additional_entries
15+ entries = []
16+
17+ if get_type == 'Tags'
18+ css('h2').each do |node|
19+ entries << [node.content, node['id']]
20+ end
21+ end
22+
23+ entries
24+ end
25+
26+ end
27+ end
28+end
lib/docs/scrapers/liquid.rb+19−0
@@ -0,0 +1,19 @@
1+module Docs
2+ class Liquid < UrlScraper
3+ self.name = 'Liquid'
4+ self.type = 'liquid'
5+ self.base_url = "https://shopify.github.io/liquid/"
6+ self.links = {
7+ home: 'http://liquidmarkup.org/',
8+ code: 'https://github.com/shopify/liquid'
9+ }
10+
11+ html_filters.push 'liquid/entries', 'liquid/clean_html'
12+
13+ options[:attribution] = <<-HTML
14+ &copy; 2005, 2006 Tobias Luetke<br>
15+ Licensed under the MIT License.
16+ HTML
17+
18+ end
19+end
public/icons/docs/liquid/SOURCE+1−0
@@ -0,0 +1 @@
1+https://shopify.github.io/liquid/images/icons/water-drop-64x.png
public/icons/docs/liquid/water-drop-64x.png+0−0

Binary file not shown.