sculptor 0.0.3 → 0.0.4

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: 53e8cbfeb036c6778345d27140c48fe33de84313
4
- data.tar.gz: d0ba017f0282cde1b887b3c8568397bc82072e0b
3
+ metadata.gz: f3b5bb332b14e11ff38c18e9a9ee530360edc3eb
4
+ data.tar.gz: da50068e1234a39d1d885ef1347d1e8a35afc7e9
5
5
  SHA512:
6
- metadata.gz: deaac2bbe47a7abd27dbf2cbdfe32accadc9bc5e377bf853fc696ea6257d4286355b05d8280294191ffe1034cd181c91dac61524f67309b65af78d5eee79a81e
7
- data.tar.gz: 13b5e33a624c4114765b2e06a7fa4c77960e929ea2bdc002bbfae1ac8f3df8106c3672903039051e01c20589b73f311d2016db99a2ae2d7a691a5d746af611ad
6
+ metadata.gz: b77001619758502baff4d35b4bb52468df23a57a70f36054d411becbc58c577f3278570a25ea6a31727db5581b2040275e69dfe584d8eb8f0066178b13e03779
7
+ data.tar.gz: ac245d0271ccf2d7bf639f55c7fc0e682bd3b0bdf0f21e8d1b2aab043844b4a32aa7810176c2468a10f1c450f64cd73f43b5c152bcfeac4b1bbee35f784b9ff8
data/README.md CHANGED
@@ -4,21 +4,108 @@ Tool to create style guides and prototype web apps.
4
4
 
5
5
  ## Installation
6
6
 
7
- Add this line to your application's Gemfile:
7
+ ```
8
+ $ gem install sculptor
9
+ ```
8
10
 
9
- gem 'sculptor'
11
+ ## Usage
10
12
 
11
- And then execute:
13
+ Sculptor extends Middleman so all Middleman commands can also be used.
12
14
 
13
- $ bundle
15
+ ### Initiate new project
14
16
 
15
- Or install it yourself as:
17
+ Fetches and installs dependencies and creates project skeleton.
16
18
 
17
- $ gem install sculptor
19
+ ```
20
+ sculptor init project-name
21
+ ```
18
22
 
19
- ## Usage
23
+ Aliases: `i`, `new`, `n`.
24
+
25
+ When finished run `bower install` (`npm install -g bower` if bower is not installed) in project directory to install client-side dependencies.
26
+
27
+ ### Create new model
28
+
29
+ In project root directory run:
30
+
31
+ ```
32
+ sculptor create model-name
33
+ ```
34
+
35
+ Alias `c`.
36
+
37
+ Models are sub-project which are contained in directories.
38
+ Several similar modules can be created in one directory:
39
+
40
+ ```
41
+ sculptor c model-name/variant
42
+ ```
43
+
44
+ If no variant is specified the initial variant is created with the same name as directory
45
+
46
+ An index file is generated for ech directory.
47
+
48
+ When createing a new model its path is shown and the following questions asked:
49
+
50
+ - **Title:** (optional)- title for the model created
51
+ - **Description:** (optional) - model description
52
+ - **Stylesheet:** (optional) - stylesheet file name, created in the model directory and automatically included in the model
53
+ - **Use iframe?** (`y`/`n` default `n`) - whether to encapsulate the model in iframe or render directly on page (to prevent style leaking)
54
+ - **Include data?** (`y`/`n` default `n`) - whether to include YAML file for model mock data
55
+
56
+ ### Running test server
57
+
58
+ Runs development server with LiveReload.
59
+
60
+ ```
61
+ sculptor server
62
+ ```
63
+
64
+ Running `sculptor` without any parameters is aliased to `sculptor server`.
65
+
66
+ ### Building the gallery
67
+
68
+ Generates static version of project in `build` directory.
69
+
70
+ ```
71
+ sculptor build
72
+ ```
73
+
74
+ The build can be distributed/viewed in standalone mode.
75
+
76
+ On OSX running `build/launch.command` afterwards will run Python's SimpleHTTPServer on port 8000 and open browser with project.
77
+
78
+
79
+ ## Sculptor template helpers
80
+
81
+ Sculptor is using Slim templates internally but should work with other templates supported by Middleman in projects.
82
+
83
+ ### Model helpers
84
+
85
+ * `model`
86
+ - `title`
87
+ - `description`
88
+ - `pretty` {boolean}
89
+ whether to try to reformat the HTML (e.g. if remote HTML is minified)
90
+ - `css` - CSS selector to extract from the remote page. If specific element is required it can be selected by providing `#<0-based index>` at the end of selector separated by space. e.g. `img #0` will select the first image.
91
+ - `data` - local data that can be injected in a local component (partial with `.component.slim` extension)
92
+ - `source_type` {string} default `html`
93
+ type of source code used for code highlighting
94
+ * `model_iframe`
95
+ * `model_source`
96
+
97
+ ### Resource helpers
98
+ * `include_stylesheets`
99
+ * `include_stylesheet`
100
+ * `include_javascripts`
101
+ * `relative_dir`
102
+ * `resource_file`
103
+ * `resource_dir`
104
+ * `subpages_for`
105
+ * `append_class`
20
106
 
21
- TODO: Write usage instructions here
107
+ ### Data helpers
108
+ * `load_data`
22
109
 
23
110
  ## Contributing
24
111
 
@@ -10,6 +10,8 @@ Feature: Run `create` command
10
10
  Then I hit enter
11
11
  And I wait for output to contain "Stylesheet"
12
12
  Then I hit enter
13
+ And I wait for output to contain "Use iframe?"
14
+ Then I type "n"
13
15
  And I wait for output to contain "Include data?"
14
16
  Then I type "n"
15
17
  And the exit status should be 0
@@ -24,6 +26,8 @@ Feature: Run `create` command
24
26
  Then I type "My model description"
25
27
  And I wait for output to contain "Stylesheet"
26
28
  Then I type "styles"
29
+ And I wait for output to contain "Use iframe?"
30
+ Then I type "n"
27
31
  And I wait for output to contain "Include data?"
28
32
  Then I type "y"
29
33
  And the exit status should be 0
@@ -16,7 +16,10 @@ module Sculptor::CLI
16
16
 
17
17
  desc 'create NAME', 'Create new model NAME'
18
18
  def create(name)
19
- model_path = "source/#{name}"
19
+
20
+ dir = Dir.pwd.match(/\/source$/) ? "." : "source"
21
+
22
+ model_path = "#{dir}/#{name}"
20
23
 
21
24
  say(set_color("Creating model: ", :yellow) + set_color(model_path, :white, :bold))
22
25
 
@@ -27,6 +30,8 @@ module Sculptor::CLI
27
30
  @title = options[:title] || ask('Title: ')
28
31
  @description = options[:desc] || ask('Description: ')
29
32
  @stylesheet = ask('Stylesheet: ')
33
+ @iframe = yes?('Use iframe?')
34
+
30
35
  @dir = is_subdir ? name.split('/')[0..-2].join('/') : name
31
36
 
32
37
  @has_data = if yes?('Include data?')
@@ -7,48 +7,118 @@ class Middleman::Extensions::Model < ::Middleman::Extension
7
7
  end
8
8
 
9
9
  helpers do
10
- # Requires one of `&block` or `url + selector`
11
- # Parameters:
10
+ # Requires either `&block` or `location`
11
+ # `location` - string with remote location to fetch the HTML from.
12
+ # Options:
12
13
  # * `title` (optional) - Model title
13
14
  # * `description` (optional) - Model description
14
- # * `component_url` (optional) - Model URL
15
- # * `component_selector` (required if `url` is provided)
15
+ # * `css` (optional, defaults to `body`) - element(s) with CSS selector
16
+ # to extract from the page. If a particular element is required it can
17
+ # be requested by providing 0-based index of the list of matches.
18
+ # e.g. `img #0`
16
19
  # * `&block` (optional)
17
- def model(options={}, &block)
18
- [:title, :description].each { |k| options[k] ||= nil }
19
-
20
+ def model(location=nil, options={}, &block)
20
21
  if block_given?
21
22
  html = capture_html(&block)
22
23
  metadata = options
23
- elsif options[:component]
24
- component_path = "components/#{options[:component]}"
25
- resource = sitemap.find_resource_by_path("#{component_path}.html")
26
- metadata = resource.metadata.page
27
- html = resource.render
28
- elsif options[:component_url] && options[:component_selector]
29
- metadata = options
30
- doc = Nokogiri::XML(open(options[:component_url]), &:noblanks)
31
- result = doc.css(options[:component_selector])
32
- if result.empty?
33
- raise "Selector `#{options[:component_selector]}` not found in remote location`#{options[:component_url]}`"
24
+ elsif location
25
+ # Remote location
26
+ if location.start_with?('http')
27
+ result = grab_remote(location, options[:css], options)
28
+ metadata = options
29
+ html = result.to_html
30
+ # Assume local path
31
+ else
32
+ resource = sitemap.find_resource_by_path(relative_dir(current_page.path, location).to_s)
33
+ raise "Included model at `#{location}` was not found" unless resource
34
+ metadata = resource.metadata.page
35
+
36
+ # Hack: inject local data that can be provided as parameter
37
+ # Provided under `data.page` in partials (.component)
38
+ resource.add_metadata({ page: options[:data] })
39
+
40
+ html = resource.render
34
41
  end
35
- html = result.to_xml
36
42
  else
37
- raise "Model `#{options[:title]}`: No `component` of HTML block was given"
43
+ raise "Model `#{options[:title]}`: `url` or HTML block is missing"
38
44
  end
39
45
 
40
46
  options.reverse_merge!(metadata.symbolize_keys!)
41
- options[:html] = html
42
47
 
43
- options[:source_code] = html unless options.has_key? :source_code
48
+ options[:title] = options[:title] || data.page.title
49
+ options[:description] = options[:description] || data.page.description
50
+
51
+ current_page.add_metadata({ page: { iframe: options[:iframe] || false }})
52
+
53
+ options[:html] = html
54
+ options[:source_code] = html
44
55
  options[:source_type] ||= 'html'
45
56
 
46
57
  partial('partials/glyptotheque/model', locals: options)
47
58
  end
48
59
 
60
+ def model_iframe(location=nil, options={}, &block)
61
+ options[:iframe] = true
62
+ model(location, options, &block)
63
+ end
64
+
49
65
  def model_source(type, &block)
50
66
  source_code = capture_html(&block)
51
67
  partial('partials/glyptotheque/model-source', locals: { source_type: type, source_code: source_code })
52
68
  end
69
+
70
+ private
71
+
72
+ def grab_remote(url, css, options)
73
+ puts "Fetching from #{url}"
74
+
75
+ css ||= 'body'
76
+
77
+ selector_index_pair = css.split(/\s+#(\d+)$/)
78
+
79
+ if options[:pretty] == true
80
+ doc = Nokogiri::XML(open(url), &:noblanks)
81
+ else
82
+ doc = Nokogiri::HTML(open(url), &:noblanks)
83
+ end
84
+
85
+ result = doc.css(selector_index_pair[0])
86
+ puts "Matching CSS: `#{selector_index_pair[0]}` (found #{pluralize(result.count, 'element')})"
87
+
88
+ # Select element with specified index e.g. `.selector #1`
89
+ if selector_index_pair[1]
90
+ puts "Select index #{selector_index_pair[1].to_i} from the list"
91
+ result = result[selector_index_pair[1].to_i]
92
+ end
93
+
94
+ @root_url = "#{URI(url).scheme}://#{URI(url).host}/"
95
+
96
+ if result.class == Nokogiri::XML::NodeSet
97
+ result.css('[src]').map do |e|
98
+ e.set_attribute('src', parse_relative_url(url, e.attr('src')))
99
+ end
100
+ elsif result.class == Nokogiri::XML::Element
101
+ result.set_attribute('src', parse_relative_url(url, result.attr('src'))) if result.attr('src')
102
+ end
103
+
104
+ if !result || result.is_a?(Array) && result.empty?
105
+ raise "Selector `#{selector_index_pair[0]}`#{selector_index_pair[1] ? '(index: ' + selector_index_pair[1] + ')': ''} not found at remote location`#{url}`"
106
+ end
107
+
108
+ return result
109
+ end
110
+
111
+ def parse_relative_url(url, path)
112
+ is_root = path.match(/^\/[^\/].*/)
113
+ if is_root
114
+ path.sub(/^\/(.*)/, @root_url + $1)
115
+ elsif path.match(/^\.{1,2}\//)
116
+ relative_dir(url, path).to_s
117
+ elsif path.match(/^\/\//)
118
+ "#{URI(url).scheme}:#{path}"
119
+ else
120
+ path
121
+ end
122
+ end
53
123
  end
54
124
  end
@@ -9,7 +9,8 @@ class Middleman::Extensions::ResourceHelpers < ::Middleman::Extension
9
9
 
10
10
  def include_stylesheet(stylesheet)
11
11
  return if stylesheet.empty?
12
- stylesheet_link_tag(relative_dir(current_page.path, stylesheet)) + "\n"
12
+ path = stylesheet.start_with?('http') ? '' : current_page.path
13
+ stylesheet_link_tag(relative_dir(path, stylesheet)) + "\n"
13
14
  end
14
15
 
15
16
  def include_javascripts(javascripts)
@@ -46,7 +47,7 @@ class Middleman::Extensions::ResourceHelpers < ::Middleman::Extension
46
47
  resources = resources.reject {|r| r.directory_index? } # Exclude all directory indexes
47
48
  end
48
49
 
49
- resources.reject {|r| r.path.end_with? ("-full#{r.ext}")} # Ignore proxied '-full' mode pages
50
+ resources.reject {|r| r.path.end_with? ("-standalone#{r.ext}")} # Ignore proxied '-standalone' mode pages
50
51
  end
51
52
 
52
53
  # Use in layouts, in templates either Frontmatter or this method can be used
@@ -4,9 +4,9 @@
4
4
 
5
5
  # With alternative layout
6
6
  page '/**', :layout => 'glyptotheque'
7
- page '/*-full.html', :layout => 'layout'
7
+ page '/*-standalone.html', :layout => 'standalone'
8
8
  # With no layout
9
- page "/components/**", :layout => false
9
+ page "*.component", :layout => false
10
10
  page "/partials/*", :layout => false
11
11
  page '*.css', :layout => false
12
12
  page '*.js', :layout => false
@@ -21,7 +21,7 @@ page '*.js', :layout => false
21
21
 
22
22
  ready do
23
23
  subpages_for('/', exclude_indexes: true).each do |r|
24
- proxy "#{r.path.sub(r.ext, '')}-full.html", r.path, locals: { standalone: true }
24
+ proxy "#{r.path.sub(r.ext, '')}-standalone.html", r.path
25
25
  end
26
26
  end
27
27
 
@@ -82,10 +82,11 @@ activate :data_loaders
82
82
  activate :resource_helpers
83
83
  activate :syntax, css_class: 'codehilite'
84
84
 
85
+ Slim::Engine.set_default_options :pretty => true
86
+
85
87
  # Development-secific configuration
86
88
  configure :development do
87
89
  activate :livereload
88
- Slim::Engine.set_default_options :pretty => true
89
90
  end
90
91
 
91
92
  # Build-specific configuration
@@ -1,3 +1,13 @@
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
+ }
@@ -13,6 +13,7 @@
13
13
  position: relative;
14
14
  padding: 10px 20px;
15
15
  margin-bottom: 2px;
16
+ min-height: 40px;
16
17
 
17
18
  h3 {
18
19
  font-weight: 400;
@@ -49,14 +50,21 @@
49
50
 
50
51
  > .glypto-model-stage {
51
52
  background: lighten($light-grey, 9);
52
- padding: 15px;
53
+ padding: 10px;
53
54
 
54
- > figure {
55
+ > figure,
56
+ > iframe {
57
+ @include box-sizing(content-box);
55
58
  margin: 0;
56
- padding: 5px;
57
59
  border-radius: 3px;
58
60
  border: 1px dotted rgba(0,0,0,.13);
59
61
  background: white;
62
+ display: block;
63
+ }
64
+
65
+ > figure {
66
+ @include clearfix;
67
+ padding: 5px;
60
68
  }
61
69
 
62
70
  ._component {
@@ -87,8 +95,7 @@
87
95
  box-shadow: inset 0 1px darken($light-grey, 5);
88
96
 
89
97
  > header {
90
- padding: 8px 0;
91
- margin: 0 20px;
98
+ padding: 8px 20px;
92
99
  }
93
100
 
94
101
  ._toggle {
@@ -130,13 +137,17 @@
130
137
  }
131
138
 
132
139
  pre {
133
- border-top: 1px solid darken($light-grey, 3);
134
140
  font: 12px/1.4 Menlo, monospace;
135
141
  padding: 10px 20px;
136
142
  margin: 0;
143
+ white-space: pre-wrap;
137
144
  }
138
145
 
139
146
  &.__expanded {
147
+ > header {
148
+ border-bottom: 1px solid darken($light-grey, 3);
149
+ }
150
+
140
151
  > ._container {
141
152
  max-height: 20rem;
142
153
  }
@@ -9,6 +9,6 @@
9
9
  }
10
10
  }
11
11
 
12
- .glypto-model-stage.m-standalone {
12
+ body.glypto-model-stage {
13
13
  padding: 1rem;
14
14
  }
@@ -7,8 +7,9 @@ html ng-app=(yield_content(:ng_app))
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
9
  = yield_content :styles
10
- = include_stylesheets(current_page.data.stylesheets) if current_page.data.stylesheets
11
- = include_stylesheet(current_page.data.stylesheet) if current_page.data.stylesheet
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
12
13
 
13
14
  body class="#{yield_content(:body_class)}"
14
15
  = yield
@@ -0,0 +1,22 @@
1
+ doctype html
2
+ html
3
+ head
4
+ meta charset='utf-8'
5
+ title = current_page.data.title || yield_content(:page_title) || resource_file(current_page)
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
10
+ css:
11
+ body {
12
+ padding: 5px;
13
+ margin: 0;
14
+ }
15
+
16
+
17
+ body class="#{yield_content(:body_class)}"
18
+ = yield
19
+
20
+ = yield_content :javascripts
21
+ = include_javascripts current_page.data.javascripts if current_page.data.javascripts
22
+ = yield_content :post_body
@@ -1,11 +1,14 @@
1
- - subpages_for(dir, exclude_indexes: true).each do |r|
1
+ - subpages_for(current_page.url, exclude_indexes: true).each do |r|
2
2
 
3
- - if r.data.stylesheet
4
- - content_for :styles, include_stylesheet(r.data.stylesheet)
5
- - elsif r.data.stylesheets
6
- - content_for :styles, include_stylesheets(r.data.stylesheets)
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)
7
10
 
8
11
  - if r.data.javascripts
9
12
  - content_for :javascripts, include_javascripts(r.data.javascripts)
10
13
 
11
- = partial r.url, locals: { title: r.data.title, description: r.data.description, url: r.url }
14
+ = partial r.url
@@ -1,24 +1,28 @@
1
- article.glypto-model
2
- - if locals[:standalone]
3
- section.glypto-model-stage.m-standalone
4
- = html
5
- - else
6
- - if locals[:title] || locals[:description]
7
- header
8
- - if locals[:title]
9
- h3._title
10
- - if locals[:url]
11
- = link_to title, url
12
- - else
13
- = title
14
- - if locals[:description]
15
- p._description = description
1
+ - local_url = current_page.metadata.page[:local_url]
2
+ - title = current_page.metadata.page[:title] || locals[:title]
16
3
 
17
- - url = locals[:url] ? locals[:url] : current_page.url
18
- ._standalone = link_to url.sub('.html', '-full.html'), target: '_blank' do
19
- i.fa.fa-external-link title="Standalone version"
4
+ - if resource_file(current_page).match(/-standalone$/)
5
+ = html
6
+ - else
7
+ article.glypto-model
8
+ header
9
+ - if locals[:title]
10
+ h3._title
11
+ - if local_url
12
+ = link_to title, local_url
13
+ - else
14
+ = title
15
+ - if locals[:description]
16
+ p._description = description
17
+
18
+ - url = local_url || current_page.url
19
+ ._standalone = link_to url.sub('.html', '-standalone.html'), target: '_blank' do
20
+ i.fa.fa-external-link title="Standalone version"
20
21
 
21
22
  section.glypto-model-stage
22
- figure = html
23
+ - if current_page.metadata.page.iframe
24
+ iframe src="#{url.sub('.html', '-standalone.html')}" height="0" width="100%" frameborder="0" scrolling="no" onload='javascript:resizeIframe(this);'
25
+ - else
26
+ figure = html
23
27
 
24
28
  = model_source(source_type) { source_code }
@@ -1,7 +1,6 @@
1
1
  ---
2
2
  <%- unless @title.empty? -%>
3
- title: >
4
- <%= @title %>
3
+ title: <%= @title %>
5
4
  <%- end -%>
6
5
  <%- unless @description.empty? -%>
7
6
  description: >
@@ -12,23 +11,21 @@ stylesheet: <%= @stylesheet %>
12
11
  <%- end -%>
13
12
  ---
14
13
 
15
- - title ||= current_page.data.title
16
- - description ||= current_page.data.description
17
-
18
14
  <%- if @has_data -%>
19
15
  - data = load_data('<%= @model_name %>.yaml')
20
16
  <%- end -%>
21
17
 
22
- = model title: title,
23
- description: description,
24
- standalone: locals[:standalone],
25
- url: locals[:url] do
26
- <%- if @has_data %>
27
- table
28
- - data.keys.each do |k|
29
- tr
30
- th = k
31
- td = data[k]
32
- <%- else -%>
33
- p Component HTML code here
34
- <%- end -%>
18
+ <%- if @iframe -%>
19
+ = model_iframe
20
+ <%- else -%>
21
+ = model
22
+ <%- end -%>
23
+ <%- if @has_data -%>
24
+ table
25
+ - data.keys.each do |k|
26
+ tr
27
+ th = k
28
+ td = data[k]
29
+ <%- else -%>
30
+ p Component HTML code here
31
+ <%- end -%>
@@ -1,3 +1,3 @@
1
1
  module Sculptor
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
data/sculptor.gemspec CHANGED
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.add_development_dependency "fivemat", "1.2.1"
28
28
  spec.add_development_dependency "guard-rspec"
29
29
  spec.add_development_dependency "guard-cucumber"
30
- spec.add_development_dependency "pry-plus"
30
+ spec.add_development_dependency "pry"
31
31
 
32
32
  spec.add_dependency "middleman-core", [">= 3.3", "< 4.0"]
33
33
  spec.add_dependency "thor", [">= 0.15.2", "< 2.0"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sculptor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
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-06-02 00:00:00.000000000 Z
11
+ date: 2014-10-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -137,7 +137,7 @@ dependencies:
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  - !ruby/object:Gem::Dependency
140
- name: pry-plus
140
+ name: pry
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - '>='
@@ -267,6 +267,7 @@ files:
267
267
  - lib/sculptor/templates/glyptotheque/source/index.html.slim
268
268
  - lib/sculptor/templates/glyptotheque/source/layouts/glyptotheque.slim
269
269
  - lib/sculptor/templates/glyptotheque/source/layouts/layout.slim
270
+ - lib/sculptor/templates/glyptotheque/source/layouts/standalone.slim
270
271
  - lib/sculptor/templates/glyptotheque/source/partials/glyptotheque/_model-index.slim
271
272
  - lib/sculptor/templates/glyptotheque/source/partials/glyptotheque/_model-source.slim
272
273
  - lib/sculptor/templates/glyptotheque/source/partials/glyptotheque/_model.slim
@@ -305,4 +306,3 @@ test_files:
305
306
  - features/create.feature
306
307
  - features/step_definitions/custom.rb
307
308
  - features/support/setup.rb
308
- has_rdoc: