sculptor 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f3b5bb332b14e11ff38c18e9a9ee530360edc3eb
4
- data.tar.gz: da50068e1234a39d1d885ef1347d1e8a35afc7e9
3
+ metadata.gz: dffb8ea04c521d95c5b4a3aa8468f635c67a6cd5
4
+ data.tar.gz: 13cf6b9f167eaeaa75f8762d24a5406a7251cf81
5
5
  SHA512:
6
- metadata.gz: b77001619758502baff4d35b4bb52468df23a57a70f36054d411becbc58c577f3278570a25ea6a31727db5581b2040275e69dfe584d8eb8f0066178b13e03779
7
- data.tar.gz: ac245d0271ccf2d7bf639f55c7fc0e682bd3b0bdf0f21e8d1b2aab043844b4a32aa7810176c2468a10f1c450f64cd73f43b5c152bcfeac4b1bbee35f784b9ff8
6
+ metadata.gz: 574b32b613f17077cd46ab3ab365fdd708ede391f6d9a604fa90a52f0d7980773ff91357f42b42ab7160ee349b19c766a05adc413db42f41c1de0c7461a92edb
7
+ data.tar.gz: aaf0138fde4d976a4adf07582cb877d6671df585d720edacc2011f25f3010eb889811526511d71ef2f2c617b117d8cf39da02dbb16c5f3e4eebdbeb095fbf8f6
data/README.md CHANGED
@@ -4,8 +4,11 @@ Tool to create style guides and prototype web apps.
4
4
 
5
5
  ## Installation
6
6
 
7
+ node is required to run Bower.
8
+
7
9
  ```
8
10
  $ gem install sculptor
11
+ $ npm install -g bower
9
12
  ```
10
13
 
11
14
  ## Usage
@@ -22,7 +25,8 @@ sculptor init project-name
22
25
 
23
26
  Aliases: `i`, `new`, `n`.
24
27
 
25
- When finished run `bower install` (`npm install -g bower` if bower is not installed) in project directory to install client-side dependencies.
28
+ This command will create scaffold for new project and install client dependencies via Bower.
29
+ Make sure Bower is installed globally (`npm install -g bower`).
26
30
 
27
31
  ### Create new model
28
32
 
@@ -83,6 +87,7 @@ Sculptor is using Slim templates internally but should work with other templates
83
87
  ### Model helpers
84
88
 
85
89
  * `model`
90
+ - `url` (String) - first optional parameter is URL to the page with the component
86
91
  - `title`
87
92
  - `description`
88
93
  - `pretty` {boolean}
@@ -101,7 +106,11 @@ Sculptor is using Slim templates internally but should work with other templates
101
106
  * `relative_dir`
102
107
  * `resource_file`
103
108
  * `resource_dir`
104
- * `subpages_for`
109
+ * `resources_for`
110
+ - `dir` - target directory for resources list (required)
111
+ - `ext` - filter resources with matching extension (default: 'html')
112
+ - `exlude_indexes` - whether to exclude directory index files (default: false)
113
+ - `sort_by` - sort resources by (defaults to `resource.url`)
105
114
  * `append_class`
106
115
 
107
116
  ### Data helpers
@@ -17,7 +17,9 @@ class Middleman::Extensions::Model < ::Middleman::Extension
17
17
  # be requested by providing 0-based index of the list of matches.
18
18
  # e.g. `img #0`
19
19
  # * `&block` (optional)
20
- def model(location=nil, options={}, &block)
20
+ def model(*options, &block)
21
+ location = options.first.is_a?(String) && options.shift || nil
22
+ options = options.first || {}
21
23
  if block_given?
22
24
  html = capture_html(&block)
23
25
  metadata = options
@@ -35,9 +37,9 @@ class Middleman::Extensions::Model < ::Middleman::Extension
35
37
 
36
38
  # Hack: inject local data that can be provided as parameter
37
39
  # Provided under `data.page` in partials (.component)
38
- resource.add_metadata({ page: options[:data] })
40
+ resource.add_metadata({ page: options[:data] || {} })
39
41
 
40
- html = resource.render
42
+ html = resource.render(layout: false)
41
43
  end
42
44
  else
43
45
  raise "Model `#{options[:title]}`: `url` or HTML block is missing"
@@ -1,30 +1,16 @@
1
1
  class Middleman::Extensions::ResourceHelpers < ::Middleman::Extension
2
- helpers do
3
- def include_stylesheets(stylesheets)
4
- return unless stylesheets && stylesheets.is_a?(Array) && stylesheets.length > 0
5
- stylesheets.map { |s|
6
- include_stylesheet(s)
7
- }.join("\n")
8
- end
9
-
10
- def include_stylesheet(stylesheet)
11
- return if stylesheet.empty?
12
- path = stylesheet.start_with?('http') ? '' : current_page.path
13
- stylesheet_link_tag(relative_dir(path, stylesheet)) + "\n"
14
- end
2
+ def initialize(app, options_hash={})
3
+ super
4
+ require 'rest_client'
5
+ end
15
6
 
7
+ helpers do
16
8
  def include_javascripts(javascripts)
17
- return unless javascripts && javascripts.is_a?(Array) && javascripts.length > 0
18
- javascripts.map { |j|
19
- path = j.start_with?('http') ? j : relative_dir(current_page.path, j)
20
- javascript_include_tag(path) + "\n"
21
- }.join("\n")
9
+ include_assets(:javascript_include_tag, javascripts)
22
10
  end
23
11
 
24
- # Constructs path relative to base path (first argument)
25
- def relative_dir(path, *args)
26
- relative_path = args ? args.join('/') : ''
27
- Pathname(path).dirname.join(relative_path)
12
+ def include_stylesheets(stylesheets)
13
+ include_assets(:stylesheet_link_tag, stylesheets)
28
14
  end
29
15
 
30
16
  def resource_file(resource)
@@ -35,21 +21,35 @@ class Middleman::Extensions::ResourceHelpers < ::Middleman::Extension
35
21
  resource.url.split('/').last
36
22
  end
37
23
 
38
- def subpages_for(dir, ext = 'html', exclude_indexes: false)
24
+ def resources_for(dir, ext: 'html', exclude_indexes: false, sort_by: nil)
39
25
  resources = sitemap.resources
40
- .select {|r| r.ext == ".#{ext}"} # Select files only HTML files
41
- .reject {|r| r.data.hidden} # reject hidden (Front matter)
42
- .select {|r| r.url.start_with?(dir)} # Select files in the given dir
43
- .sort_by(&:url) # Sort by URL (ensures indexes first)
44
- .reject {|r| r.url == dir} # Exclude main directory index
45
-
46
- if exclude_indexes
47
- resources = resources.reject {|r| r.directory_index? } # Exclude all directory indexes
48
- end
26
+ .select {|r| r.ext == ".#{ext}"} # Select files only HTML files
27
+ .reject {|r| r.data.hidden} # reject hidden (Front matter)
28
+ .select {|r| r.url.start_with?(dir)} # Select files in the given dir
29
+ .sort_by {|r| r.url } # Sort by url (default)
30
+ .sort_by {|r| r.data[sort_by] || -1} # Sort by `sort_by` param
31
+ .reject {|r| r.url == dir} # Exclude main directory index
32
+ .reject {|r| # Exclude all directory indexes
33
+ exclude_indexes ? r.directory_index? : false
34
+ }
49
35
 
50
36
  resources.reject {|r| r.path.end_with? ("-standalone#{r.ext}")} # Ignore proxied '-standalone' mode pages
51
37
  end
52
38
 
39
+ def local_data(path)
40
+ result = sitemap.find_resource_by_path(relative_dir(current_page.path, path).to_s)
41
+ raise "#{path} not found" unless result
42
+
43
+ case result.ext
44
+ when '.yaml', '.yml'
45
+ result = YAML.load(result.render)
46
+ when '.json'
47
+ result = Oj.load(result.render)
48
+ end
49
+
50
+ result
51
+ end
52
+
53
53
  # Use in layouts, in templates either Frontmatter or this method can be used
54
54
  def append_class(block_name, appended_classes='')
55
55
  current_page_classes = current_page.data[block_name] || ''
@@ -58,5 +58,43 @@ class Middleman::Extensions::ResourceHelpers < ::Middleman::Extension
58
58
  classes = existing_classes_a.concat(appended_classes_a).reverse.join(' ')
59
59
  content_for(block_name, classes)
60
60
  end
61
+
62
+ def get(url, options = {})
63
+ begin
64
+ result = RestClient.get(url, options)
65
+ rescue => e
66
+ raise "GET - #{e.message}: '#{url}'"
67
+ end
68
+
69
+ Oj.load(result)
70
+ end
71
+
72
+ def post(url, params = {}, headers = {})
73
+ begin
74
+ result = RestClient.post(url, params, headers)
75
+ rescue => e
76
+ raise "POST - #{e.message}: '#{url}'"
77
+ end
78
+
79
+ Oj.load(result)
80
+ end
81
+
82
+ private
83
+
84
+ def include_assets(asset_tag, assets)
85
+ return unless assets
86
+ assets = assets.split(/,\s*/) if assets.is_a? String
87
+ resource_path = current_page.metadata && current_page.metadata.page[:local_url] || current_page.path
88
+ Array(assets).map { |a|
89
+ path = a.start_with?('http') ? a : relative_dir(resource_path, a)
90
+ "\n" + method(asset_tag).call(path)
91
+ }.join
92
+ end
93
+
94
+ # Constructs path relative to base path (first argument)
95
+ def relative_dir(path, *args)
96
+ relative_path = args ? args.join('/') : ''
97
+ Pathname(path).dirname.join(relative_path)
98
+ end
61
99
  end
62
100
  end
@@ -1 +1,2 @@
1
1
  bower_components
2
+ build/
@@ -3,13 +3,16 @@ source 'https://rubygems.org'
3
3
  gem 'sculptor'
4
4
  gem 'middleman'
5
5
  gem 'nokogiri'
6
+ gem 'rest_client'
6
7
  gem 'middleman-pry'
7
8
  gem 'sass', '~>3.3'
8
9
  gem 'compass', github: 'chriseppstein/compass'
9
10
  gem 'sass-css-importer'
10
11
  gem 'slim'
11
12
  gem 'bourbon'
12
- gem 'neat'
13
+ gem 'susy'
14
+ gem 'breakpoint'
15
+ gem 'oj'
13
16
 
14
17
  gem 'middleman-syntax', github: 'middleman/middleman-syntax'
15
18
 
@@ -20,7 +20,7 @@ page '*.js', :layout => false
20
20
  # end
21
21
 
22
22
  ready do
23
- subpages_for('/', exclude_indexes: true).each do |r|
23
+ resources_for('/', exclude_indexes: true).each do |r|
24
24
  proxy "#{r.path.sub(r.ext, '')}-standalone.html", r.path
25
25
  end
26
26
  end
@@ -82,11 +82,13 @@ activate :data_loaders
82
82
  activate :resource_helpers
83
83
  activate :syntax, css_class: 'codehilite'
84
84
 
85
+ Slim::Engine.disable_option_validator!
85
86
  Slim::Engine.set_default_options :pretty => true
87
+ Slim::Engine.set_default_options :attr_list_delims => { '(' => ')', '[' => ']' }
86
88
 
87
89
  # Development-secific configuration
88
90
  configure :development do
89
- activate :livereload
91
+ activate :livereload, animate: true
90
92
  end
91
93
 
92
94
  # Build-specific configuration
@@ -1,13 +1,3 @@
1
1
  //= require_tree ./glyptotheque
2
2
 
3
3
  angular.module('glyptotheque', ['directives', 'controllers']);
4
-
5
- function resizeIframe(obj) {
6
- var doc = obj.contentDocument
7
- var height = Math.max(
8
- doc.body.scrollHeight, doc.documentElement.scrollHeight,
9
- doc.body.offsetHeight, doc.documentElement.offsetHeight,
10
- doc.body.clientHeight, doc.documentElement.clientHeight
11
- )
12
- obj.style.height = height + 'px';
13
- }
@@ -91,6 +91,17 @@
91
91
  color: inherit;
92
92
  padding: 8px 10px;
93
93
  }
94
+
95
+ ._count {
96
+ float: right;
97
+ background: rgba(black, .03);
98
+ color: rgba(black, .4);
99
+ line-height: 16px;
100
+ padding: 0 7px;
101
+ margin: -1px 0;
102
+ line-height: 16px;
103
+ border-radius: 7px;
104
+ }
94
105
  }
95
106
 
96
107
  li.s-selected a {
@@ -1,3 +1,3 @@
1
- - if subpages_for('/').empty?
1
+ - if resources_for('/').empty?
2
2
  h1 Go ahead, create some models
3
3
  p: code sculptor create hello
@@ -1,6 +1,6 @@
1
1
  - content_for :page_title, 'Glyptotheque'
2
2
  - content_for :ng_app, 'glyptotheque'
3
- - content_for :styles, stylesheet_link_tag('glyptotheque')
3
+ - content_for :stylesheets, stylesheet_link_tag('glyptotheque')
4
4
 
5
5
  = wrap_layout :layout do
6
6
  = partial 'partials/glyptotheque/nav'
@@ -6,15 +6,21 @@ html ng-app=(yield_content(:ng_app))
6
6
  meta name='viewport' content='width=device-width'
7
7
  = stylesheet_link_tag 'main'
8
8
  = stylesheet_link_tag '//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css'
9
- = yield_content :styles
10
- - unless current_page.metadata.page[:iframe]
11
- = include_stylesheets(current_page.data.stylesheets) if current_page.data.stylesheets
12
- = include_stylesheet(current_page.data.stylesheet) if current_page.data.stylesheet
9
+ = yield_content :stylesheets
10
+ javascript:
11
+ function resizeIframe(obj) {
12
+ var doc = obj.contentDocument;
13
+ var height = Math.max(
14
+ doc.body.scrollHeight, doc.documentElement.scrollHeight,
15
+ doc.body.offsetHeight, doc.documentElement.offsetHeight,
16
+ doc.body.clientHeight, doc.documentElement.clientHeight
17
+ );
18
+ obj.style.height = height + 'px';
19
+ }
13
20
 
14
21
  body class="#{yield_content(:body_class)}"
15
22
  = yield
16
23
 
17
24
  = yield_content :javascripts
18
- = include_javascripts current_page.data.javascripts if current_page.data.javascripts
19
25
  = javascript_include_tag 'app'
20
26
  = yield_content :post_body
@@ -4,19 +4,17 @@ html
4
4
  meta charset='utf-8'
5
5
  title = current_page.data.title || yield_content(:page_title) || resource_file(current_page)
6
6
  meta name='viewport' content='width=device-width'
7
- = yield_content :styles
8
- = include_stylesheets(current_page.data.stylesheets) if current_page.data.stylesheets
9
- = include_stylesheet(current_page.data.stylesheet) if current_page.data.stylesheet
7
+ = yield_content :stylesheets
8
+ = include_stylesheets(current_page.data.stylesheets || current_page.data.stylesheet)
10
9
  css:
11
10
  body {
12
11
  padding: 5px;
13
12
  margin: 0;
14
13
  }
15
14
 
16
-
17
15
  body class="#{yield_content(:body_class)}"
18
16
  = yield
19
17
 
20
18
  = yield_content :javascripts
21
- = include_javascripts current_page.data.javascripts if current_page.data.javascripts
19
+ = include_javascripts(current_page.data.javascripts || current_page.data.javascript)
22
20
  = yield_content :post_body
@@ -1,14 +1,12 @@
1
- - subpages_for(current_page.url, exclude_indexes: true).each do |r|
2
-
3
- - current_page.add_metadata({ page: { title: r.data.title, local_url: r.url, iframe: r.metadata.page[:iframe] } })
4
-
5
- - unless current_page.metadata.page[:iframe]
6
- - if r.data.stylesheet
7
- - content_for :styles, include_stylesheet(r.data.stylesheet)
8
- - elsif r.data.stylesheets
9
- - content_for :styles, include_stylesheets(r.data.stylesheets)
10
-
11
- - if r.data.javascripts
12
- - content_for :javascripts, include_javascripts(r.data.javascripts)
1
+ - resources_for(current_page.url, exclude_indexes: true, sort_by: :nav_order).each do |r|
2
+
3
+ - current_page.add_metadata({ page: { \
4
+ title: r.data.title,
5
+ description: r.data.description,
6
+ local_url: r.url,
7
+ stylesheets: r.data.stylesheet || r.data.stylesheets,
8
+ javascripts: r.data.javascript || r.data.javascripts,
9
+ iframe: r.metadata.page[:iframe] \
10
+ } })
13
11
 
14
12
  = partial r.url
@@ -1,18 +1,19 @@
1
1
  - local_url = current_page.metadata.page[:local_url]
2
- - title = current_page.metadata.page[:title] || locals[:title]
2
+ - title = current_page.metadata.page[:title] || locals[:title] # locals should be first but there's a bug
3
+ - description = locals[:description] || current_page.metadata.page[:description]
3
4
 
4
5
  - if resource_file(current_page).match(/-standalone$/)
5
6
  = html
6
7
  - else
7
8
  article.glypto-model
8
9
  header
9
- - if locals[:title]
10
+ - if title
10
11
  h3._title
11
12
  - if local_url
12
13
  = link_to title, local_url
13
14
  - else
14
15
  = title
15
- - if locals[:description]
16
+ - if description
16
17
  p._description = description
17
18
 
18
19
  - url = local_url || current_page.url
@@ -26,3 +27,11 @@
26
27
  figure = html
27
28
 
28
29
  = model_source(source_type) { source_code }
30
+
31
+ - unless locals[:iframe]
32
+ - stylesheets = current_page.metadata.page[:stylesheet] || current_page.metadata.page[:stylesheets] || current_page.data[:stylesheet] || current_page.data[:stylesheets]
33
+ - javascripts = current_page.metadata.page[:javascript] || current_page.metadata.page[:javascripts] || current_page.data[:javascript] || current_page.data[:javascripts]
34
+ - if stylesheets
35
+ - content_for :stylesheets, include_stylesheets(stylesheets)
36
+ - if javascripts
37
+ - content_for :javascripts, include_javascripts(javascripts)
@@ -1,5 +1,5 @@
1
1
  - section ||= '/'
2
- - subpages = subpages_for(section)
2
+ - subpages = resources_for(section, sort_by: :nav_order, ignore: /\.component\./)
3
3
 
4
4
  - unless subpages.empty?
5
5
  nav.glypto-nav ng-class="{'s-hidden' : hidden}"
@@ -9,6 +9,9 @@
9
9
  - subpages.each do |r|
10
10
  li(class="#{'s-selected' if r == current_page} #{'_index' if r.directory_index?}")
11
11
  - if r.directory_index?
12
- = link_to (r.data.title || resource_dir(r)), r.url
12
+ - subpages_count = resources_for(r.url, exclude_indexes: true).count
13
+ = link_to r.url
14
+ = (r.data.title || resource_dir(r))
15
+ span._count = subpages_count
13
16
  - else
14
17
  = link_to (r.data.title || resource_file(r)), r.url
@@ -28,6 +28,10 @@ class Middleman::Templates::Glyptotheque < Middleman::Templates::Base
28
28
  directory 'glyptotheque/source', File.join(location, 'source')
29
29
  directory 'glyptotheque/data', File.join(location, 'data')
30
30
  end
31
+
32
+ def generate_bower!
33
+ run("cd #{location}; bower install")
34
+ end
31
35
  end
32
36
 
33
37
  # Register the template
@@ -2,4 +2,4 @@
2
2
  title: <%= @dir %>
3
3
  ---
4
4
 
5
- = partial 'partials/glyptotheque/model-index', locals: { dir: '/<%= @dir %>' }
5
+ = partial 'partials/glyptotheque/model-index'
@@ -1,3 +1,3 @@
1
1
  module Sculptor
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
data/sculptor.gemspec CHANGED
@@ -32,4 +32,6 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency "middleman-core", [">= 3.3", "< 4.0"]
33
33
  spec.add_dependency "thor", [">= 0.15.2", "< 2.0"]
34
34
  spec.add_dependency "nokogiri", [">= 1.6", "< 2.0"]
35
+ spec.add_dependency "rest_client", "~> 1.7.3"
36
+ spec.add_dependency "oj", "~> 2.10.2"
35
37
  end
metadata CHANGED
@@ -1,97 +1,97 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sculptor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tyom Semonov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-17 00:00:00.000000000 Z
11
+ date: 2014-11-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: guard
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: cucumber
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: aruba
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rspec
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ~>
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: '2.14'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ~>
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '2.14'
97
97
  - !ruby/object:Gem::Dependency
@@ -112,104 +112,132 @@ dependencies:
112
112
  name: guard-rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - '>='
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - '>='
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: guard-cucumber
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - '>='
129
+ - - ">="
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - '>='
136
+ - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: pry
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - '>='
143
+ - - ">="
144
144
  - !ruby/object:Gem::Version
145
145
  version: '0'
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - '>='
150
+ - - ">="
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: middleman-core
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - '>='
157
+ - - ">="
158
158
  - !ruby/object:Gem::Version
159
159
  version: '3.3'
160
- - - <
160
+ - - "<"
161
161
  - !ruby/object:Gem::Version
162
162
  version: '4.0'
163
163
  type: :runtime
164
164
  prerelease: false
165
165
  version_requirements: !ruby/object:Gem::Requirement
166
166
  requirements:
167
- - - '>='
167
+ - - ">="
168
168
  - !ruby/object:Gem::Version
169
169
  version: '3.3'
170
- - - <
170
+ - - "<"
171
171
  - !ruby/object:Gem::Version
172
172
  version: '4.0'
173
173
  - !ruby/object:Gem::Dependency
174
174
  name: thor
175
175
  requirement: !ruby/object:Gem::Requirement
176
176
  requirements:
177
- - - '>='
177
+ - - ">="
178
178
  - !ruby/object:Gem::Version
179
179
  version: 0.15.2
180
- - - <
180
+ - - "<"
181
181
  - !ruby/object:Gem::Version
182
182
  version: '2.0'
183
183
  type: :runtime
184
184
  prerelease: false
185
185
  version_requirements: !ruby/object:Gem::Requirement
186
186
  requirements:
187
- - - '>='
187
+ - - ">="
188
188
  - !ruby/object:Gem::Version
189
189
  version: 0.15.2
190
- - - <
190
+ - - "<"
191
191
  - !ruby/object:Gem::Version
192
192
  version: '2.0'
193
193
  - !ruby/object:Gem::Dependency
194
194
  name: nokogiri
195
195
  requirement: !ruby/object:Gem::Requirement
196
196
  requirements:
197
- - - '>='
197
+ - - ">="
198
198
  - !ruby/object:Gem::Version
199
199
  version: '1.6'
200
- - - <
200
+ - - "<"
201
201
  - !ruby/object:Gem::Version
202
202
  version: '2.0'
203
203
  type: :runtime
204
204
  prerelease: false
205
205
  version_requirements: !ruby/object:Gem::Requirement
206
206
  requirements:
207
- - - '>='
207
+ - - ">="
208
208
  - !ruby/object:Gem::Version
209
209
  version: '1.6'
210
- - - <
210
+ - - "<"
211
211
  - !ruby/object:Gem::Version
212
212
  version: '2.0'
213
+ - !ruby/object:Gem::Dependency
214
+ name: rest_client
215
+ requirement: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - "~>"
218
+ - !ruby/object:Gem::Version
219
+ version: 1.7.3
220
+ type: :runtime
221
+ prerelease: false
222
+ version_requirements: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - "~>"
225
+ - !ruby/object:Gem::Version
226
+ version: 1.7.3
227
+ - !ruby/object:Gem::Dependency
228
+ name: oj
229
+ requirement: !ruby/object:Gem::Requirement
230
+ requirements:
231
+ - - "~>"
232
+ - !ruby/object:Gem::Version
233
+ version: 2.10.2
234
+ type: :runtime
235
+ prerelease: false
236
+ version_requirements: !ruby/object:Gem::Requirement
237
+ requirements:
238
+ - - "~>"
239
+ - !ruby/object:Gem::Version
240
+ version: 2.10.2
213
241
  description: Styleguide generator, prototype and test tool powered by Middleman
214
242
  email:
215
243
  - mail@tyom.net
@@ -218,8 +246,8 @@ executables:
218
246
  extensions: []
219
247
  extra_rdoc_files: []
220
248
  files:
221
- - .editorconfig
222
- - .gitignore
249
+ - ".editorconfig"
250
+ - ".gitignore"
223
251
  - Gemfile
224
252
  - Guardfile
225
253
  - LICENSE.txt
@@ -288,17 +316,17 @@ require_paths:
288
316
  - lib
289
317
  required_ruby_version: !ruby/object:Gem::Requirement
290
318
  requirements:
291
- - - '>='
319
+ - - ">="
292
320
  - !ruby/object:Gem::Version
293
321
  version: '0'
294
322
  required_rubygems_version: !ruby/object:Gem::Requirement
295
323
  requirements:
296
- - - '>='
324
+ - - ">="
297
325
  - !ruby/object:Gem::Version
298
326
  version: '0'
299
327
  requirements: []
300
328
  rubyforge_project:
301
- rubygems_version: 2.2.2
329
+ rubygems_version: 2.4.2
302
330
  signing_key:
303
331
  specification_version: 4
304
332
  summary: Tool to create style guides and prototype web apps