rafters 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +20 -0
- data/.rspec +2 -0
- data/.rvmrc +53 -0
- data/Gemfile +18 -0
- data/MIT-LICENSE +20 -0
- data/README.md +168 -0
- data/Rakefile +32 -0
- data/lib/generators/rafters/component/component_generator.rb +33 -0
- data/lib/generators/rafters/component/templates/assets/javascripts/component.js.erb +0 -0
- data/lib/generators/rafters/component/templates/assets/stylesheets/component.scss.erb +0 -0
- data/lib/generators/rafters/component/templates/component.rb.erb +4 -0
- data/lib/generators/rafters/component/templates/views/component.html.erb +0 -0
- data/lib/generators/rafters/install/install_generator.rb +23 -0
- data/lib/generators/rafters/install/templates/initializer.rb +2 -0
- data/lib/rafters/component.rb +70 -0
- data/lib/rafters/component_context.rb +19 -0
- data/lib/rafters/component_renderer.rb +20 -0
- data/lib/rafters/directive_processor.rb +9 -0
- data/lib/rafters/engine.rb +33 -0
- data/lib/rafters/version.rb +3 -0
- data/lib/rafters.rb +27 -0
- data/lib/tasks/rafters_tasks.rake +4 -0
- data/rafters.gemspec +28 -0
- data/spec/dummy/README.rdoc +261 -0
- data/spec/dummy/Rakefile +7 -0
- data/spec/dummy/app/assets/javascripts/application.js +16 -0
- data/spec/dummy/app/assets/javascripts/foos.js +2 -0
- data/spec/dummy/app/assets/stylesheets/application.css +14 -0
- data/spec/dummy/app/assets/stylesheets/foos.css +4 -0
- data/spec/dummy/app/components/heading/assets/javascripts/heading_component.js +0 -0
- data/spec/dummy/app/components/heading/assets/stylesheets/heading_component.css +0 -0
- data/spec/dummy/app/components/heading/heading_component.rb +13 -0
- data/spec/dummy/app/components/heading/views/heading_component.html.erb +1 -0
- data/spec/dummy/app/controllers/application_controller.rb +3 -0
- data/spec/dummy/app/controllers/foos_controller.rb +5 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/helpers/foos_helper.rb +2 -0
- data/spec/dummy/app/mailers/.gitkeep +0 -0
- data/spec/dummy/app/models/.gitkeep +0 -0
- data/spec/dummy/app/views/foos/index.html.erb +1 -0
- data/spec/dummy/app/views/layouts/application.html.erb +14 -0
- data/spec/dummy/config/application.rb +59 -0
- data/spec/dummy/config/boot.rb +10 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +37 -0
- data/spec/dummy/config/environments/production.rb +70 -0
- data/spec/dummy/config/environments/test.rb +37 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/inflections.rb +15 -0
- data/spec/dummy/config/initializers/mime_types.rb +5 -0
- data/spec/dummy/config/initializers/rafters.rb +2 -0
- data/spec/dummy/config/initializers/secret_token.rb +7 -0
- data/spec/dummy/config/initializers/session_store.rb +8 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +5 -0
- data/spec/dummy/config/routes.rb +5 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/lib/assets/.gitkeep +0 -0
- data/spec/dummy/log/.gitkeep +0 -0
- data/spec/dummy/public/404.html +26 -0
- data/spec/dummy/public/422.html +26 -0
- data/spec/dummy/public/500.html +25 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/script/rails +6 -0
- data/spec/rafters/component_spec.rb +153 -0
- data/spec/spec_helper.rb +13 -0
- metadata +241 -0
@@ -0,0 +1,7 @@
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
2
|
+
|
3
|
+
# Your secret key for verifying the integrity of signed cookies.
|
4
|
+
# If you change this key, all old signed cookies will become invalid!
|
5
|
+
# Make sure the secret is at least 30 characters and all random,
|
6
|
+
# no regular words or you'll be exposed to dictionary attacks.
|
7
|
+
Dummy::Application.config.secret_token = '304950c1cbff2fec75b62ede6d392171fc25435481002bd7ba9d911433a277bb96aed01bf90572d18f819d20a5ec45a835ccfbfe42347f0c3a0fb527e543c694'
|
@@ -0,0 +1,8 @@
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
2
|
+
|
3
|
+
Dummy::Application.config.session_store :cookie_store, key: '_dummy_session'
|
4
|
+
|
5
|
+
# Use the database for sessions instead of the cookie-based default,
|
6
|
+
# which shouldn't be used to store highly confidential information
|
7
|
+
# (create the session table with "rails generate session_migration")
|
8
|
+
# Dummy::Application.config.session_store :active_record_store
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
2
|
+
#
|
3
|
+
# This file contains settings for ActionController::ParamsWrapper which
|
4
|
+
# is enabled by default.
|
5
|
+
|
6
|
+
# Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
|
7
|
+
ActiveSupport.on_load(:action_controller) do
|
8
|
+
wrap_parameters format: [:json]
|
9
|
+
end
|
10
|
+
|
11
|
+
# Disable root element in JSON by default.
|
12
|
+
ActiveSupport.on_load(:active_record) do
|
13
|
+
self.include_root_in_json = false
|
14
|
+
end
|
File without changes
|
File without changes
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>The page you were looking for doesn't exist (404)</title>
|
5
|
+
<style type="text/css">
|
6
|
+
body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; }
|
7
|
+
div.dialog {
|
8
|
+
width: 25em;
|
9
|
+
padding: 0 4em;
|
10
|
+
margin: 4em auto 0 auto;
|
11
|
+
border: 1px solid #ccc;
|
12
|
+
border-right-color: #999;
|
13
|
+
border-bottom-color: #999;
|
14
|
+
}
|
15
|
+
h1 { font-size: 100%; color: #f00; line-height: 1.5em; }
|
16
|
+
</style>
|
17
|
+
</head>
|
18
|
+
|
19
|
+
<body>
|
20
|
+
<!-- This file lives in public/404.html -->
|
21
|
+
<div class="dialog">
|
22
|
+
<h1>The page you were looking for doesn't exist.</h1>
|
23
|
+
<p>You may have mistyped the address or the page may have moved.</p>
|
24
|
+
</div>
|
25
|
+
</body>
|
26
|
+
</html>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>The change you wanted was rejected (422)</title>
|
5
|
+
<style type="text/css">
|
6
|
+
body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; }
|
7
|
+
div.dialog {
|
8
|
+
width: 25em;
|
9
|
+
padding: 0 4em;
|
10
|
+
margin: 4em auto 0 auto;
|
11
|
+
border: 1px solid #ccc;
|
12
|
+
border-right-color: #999;
|
13
|
+
border-bottom-color: #999;
|
14
|
+
}
|
15
|
+
h1 { font-size: 100%; color: #f00; line-height: 1.5em; }
|
16
|
+
</style>
|
17
|
+
</head>
|
18
|
+
|
19
|
+
<body>
|
20
|
+
<!-- This file lives in public/422.html -->
|
21
|
+
<div class="dialog">
|
22
|
+
<h1>The change you wanted was rejected.</h1>
|
23
|
+
<p>Maybe you tried to change something you didn't have access to.</p>
|
24
|
+
</div>
|
25
|
+
</body>
|
26
|
+
</html>
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>We're sorry, but something went wrong (500)</title>
|
5
|
+
<style type="text/css">
|
6
|
+
body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; }
|
7
|
+
div.dialog {
|
8
|
+
width: 25em;
|
9
|
+
padding: 0 4em;
|
10
|
+
margin: 4em auto 0 auto;
|
11
|
+
border: 1px solid #ccc;
|
12
|
+
border-right-color: #999;
|
13
|
+
border-bottom-color: #999;
|
14
|
+
}
|
15
|
+
h1 { font-size: 100%; color: #f00; line-height: 1.5em; }
|
16
|
+
</style>
|
17
|
+
</head>
|
18
|
+
|
19
|
+
<body>
|
20
|
+
<!-- This file lives in public/500.html -->
|
21
|
+
<div class="dialog">
|
22
|
+
<h1>We're sorry, but something went wrong.</h1>
|
23
|
+
</div>
|
24
|
+
</body>
|
25
|
+
</html>
|
File without changes
|
@@ -0,0 +1,6 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
|
3
|
+
|
4
|
+
APP_PATH = File.expand_path('../../config/application', __FILE__)
|
5
|
+
require File.expand_path('../../config/boot', __FILE__)
|
6
|
+
require 'rails/commands'
|
@@ -0,0 +1,153 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class HeadingComponent
|
4
|
+
include Rafters::Component
|
5
|
+
end
|
6
|
+
|
7
|
+
describe Rafters::Component do
|
8
|
+
describe ".template_name" do
|
9
|
+
it "set the component's template name to the provided value" do
|
10
|
+
HeadingComponent.template_name("foo_bar_baz")
|
11
|
+
HeadingComponent._template_name == "foo_bar_baz"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
describe ".attribute" do
|
16
|
+
it "adds the provided method to the component's attributes" do
|
17
|
+
HeadingComponent.send(:define_method, :title, -> { "Lorem Ipsum" })
|
18
|
+
HeadingComponent.attribute(:title)
|
19
|
+
|
20
|
+
heading = HeadingComponent.new
|
21
|
+
heading.attributes.should have_key(:title)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
describe ".setting" do
|
26
|
+
it "adds the provided key to the component's settings" do
|
27
|
+
HeadingComponent.setting(:type)
|
28
|
+
|
29
|
+
heading = HeadingComponent.new
|
30
|
+
heading.settings.should respond_to(:type)
|
31
|
+
end
|
32
|
+
|
33
|
+
context "with a :default value" do
|
34
|
+
it "sets the setting's value to the provided value when no value is available" do
|
35
|
+
HeadingComponent.setting(:type, default: "h1")
|
36
|
+
|
37
|
+
heading = HeadingComponent.new
|
38
|
+
heading.settings.type.should == "h1"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
context "with the :required option" do
|
43
|
+
it "raises an error when accessing the settings if the value is nil" do
|
44
|
+
HeadingComponent.setting(:type, required: true)
|
45
|
+
|
46
|
+
heading = HeadingComponent.new
|
47
|
+
-> { heading.settings }.should raise_error(Rafters::Component::SettingRequired)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
describe "#attributes" do
|
53
|
+
before do
|
54
|
+
HeadingComponent.send(:define_method, :title, -> { "Lorem Ipsum" })
|
55
|
+
HeadingComponent.attribute(:title)
|
56
|
+
end
|
57
|
+
|
58
|
+
subject { HeadingComponent.new }
|
59
|
+
|
60
|
+
it "returns the registered attributes and their values" do
|
61
|
+
subject.attributes.should == Hashie::Mash.new({ title: "Lorem Ipsum" })
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
describe "#settings" do
|
66
|
+
before do
|
67
|
+
HeadingComponent.setting(:type)
|
68
|
+
end
|
69
|
+
|
70
|
+
subject { HeadingComponent.new({ type: "h2" }) }
|
71
|
+
|
72
|
+
it "returns the registered settings and their values" do
|
73
|
+
subject.settings.should == Hashie::Mash.new({ type: "h2" })
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
describe "#template_name" do
|
78
|
+
subject { HeadingComponent.new }
|
79
|
+
|
80
|
+
context "with no specified template name" do
|
81
|
+
it "returns the inferred template name" do
|
82
|
+
subject.template_name.should == "heading_component"
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
context "with a specified template name" do
|
87
|
+
context "(string / symbol)" do
|
88
|
+
before do
|
89
|
+
HeadingComponent.stub(:_template_name).and_return("foo_bar_baz")
|
90
|
+
end
|
91
|
+
|
92
|
+
it "returns the specified template name" do
|
93
|
+
subject.template_name.should == "foo_bar_baz"
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
context "(proc)" do
|
98
|
+
before do
|
99
|
+
HeadingComponent.send(:define_method, :foo_bar, -> { "foo_bar_bacon" })
|
100
|
+
HeadingComponent.stub(:_template_name).and_return(lambda { |c| c.foo_bar })
|
101
|
+
end
|
102
|
+
|
103
|
+
it "calls the proc and returns the stringified result" do
|
104
|
+
subject.template_name.should == "foo_bar_bacon"
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
describe "#current" do
|
111
|
+
subject { HeadingComponent.new }
|
112
|
+
|
113
|
+
let(:controller) { Object.new }
|
114
|
+
|
115
|
+
before do
|
116
|
+
subject.controller = controller
|
117
|
+
end
|
118
|
+
|
119
|
+
context "when referencing an instance variable in the controller" do
|
120
|
+
before do
|
121
|
+
controller.instance_variable_set("@foo_bar", "lorem ipsum")
|
122
|
+
end
|
123
|
+
|
124
|
+
it "returns the value of the instance variable" do
|
125
|
+
subject.current(:foo_bar).should == "lorem ipsum"
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
129
|
+
context "when referencing a method in the controller" do
|
130
|
+
before do
|
131
|
+
controller.singleton_class.send(:define_method, :lorem_ipsum, -> { "foo bar" })
|
132
|
+
end
|
133
|
+
|
134
|
+
it "returns the value of the method" do
|
135
|
+
subject.current(:lorem_ipsum).should == "foo bar"
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
139
|
+
context "when there is neither a method nor an instance variable with the given name in the controller" do
|
140
|
+
it "raises an error" do
|
141
|
+
-> { subject.current(:doesnt_exist) }.should raise_error(Rafters::Component::CurrentVariableOrMethodNameMissing)
|
142
|
+
end
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
after do
|
147
|
+
# A little housekeeping after each spec runs, so that
|
148
|
+
# we have fresh values for each class attribute
|
149
|
+
HeadingComponent._attributes = nil
|
150
|
+
HeadingComponent._settings = nil
|
151
|
+
HeadingComponent._template_name = nil
|
152
|
+
end
|
153
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
ENV["RAILS_ENV"] ||= 'test'
|
2
|
+
require File.expand_path("../dummy/config/environment.rb", __FILE__)
|
3
|
+
require 'rubygems'
|
4
|
+
require 'bundler/setup'
|
5
|
+
|
6
|
+
require 'rafters'
|
7
|
+
|
8
|
+
RSpec.configure do |config|
|
9
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
10
|
+
config.run_all_when_everything_filtered = true
|
11
|
+
config.filter_run :focus
|
12
|
+
config.order = 'random'
|
13
|
+
end
|
metadata
ADDED
@@ -0,0 +1,241 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rafters
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Andrew Hite
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-08-25 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: debugger
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.6'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.6'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '10.1'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '10.1'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec-rails
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '2.14'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '2.14'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rails
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ~>
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 4.0.0
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ~>
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 4.0.0
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: hashie
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ~>
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 2.0.5
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ~>
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 2.0.5
|
97
|
+
description: Rafters lets you think about each page of your application as a collection
|
98
|
+
of small pieces instead of monolithic, difficult to maintain views.
|
99
|
+
email:
|
100
|
+
- andrew@andrew-hite.com
|
101
|
+
executables: []
|
102
|
+
extensions: []
|
103
|
+
extra_rdoc_files: []
|
104
|
+
files:
|
105
|
+
- .gitignore
|
106
|
+
- .rspec
|
107
|
+
- .rvmrc
|
108
|
+
- Gemfile
|
109
|
+
- MIT-LICENSE
|
110
|
+
- README.md
|
111
|
+
- Rakefile
|
112
|
+
- lib/generators/rafters/component/component_generator.rb
|
113
|
+
- lib/generators/rafters/component/templates/assets/javascripts/component.js.erb
|
114
|
+
- lib/generators/rafters/component/templates/assets/stylesheets/component.scss.erb
|
115
|
+
- lib/generators/rafters/component/templates/component.rb.erb
|
116
|
+
- lib/generators/rafters/component/templates/views/component.html.erb
|
117
|
+
- lib/generators/rafters/install/install_generator.rb
|
118
|
+
- lib/generators/rafters/install/templates/initializer.rb
|
119
|
+
- lib/rafters.rb
|
120
|
+
- lib/rafters/component.rb
|
121
|
+
- lib/rafters/component_context.rb
|
122
|
+
- lib/rafters/component_renderer.rb
|
123
|
+
- lib/rafters/directive_processor.rb
|
124
|
+
- lib/rafters/engine.rb
|
125
|
+
- lib/rafters/version.rb
|
126
|
+
- lib/tasks/rafters_tasks.rake
|
127
|
+
- rafters.gemspec
|
128
|
+
- spec/dummy/README.rdoc
|
129
|
+
- spec/dummy/Rakefile
|
130
|
+
- spec/dummy/app/assets/javascripts/application.js
|
131
|
+
- spec/dummy/app/assets/javascripts/foos.js
|
132
|
+
- spec/dummy/app/assets/stylesheets/application.css
|
133
|
+
- spec/dummy/app/assets/stylesheets/foos.css
|
134
|
+
- spec/dummy/app/components/heading/assets/javascripts/heading_component.js
|
135
|
+
- spec/dummy/app/components/heading/assets/stylesheets/heading_component.css
|
136
|
+
- spec/dummy/app/components/heading/heading_component.rb
|
137
|
+
- spec/dummy/app/components/heading/views/heading_component.html.erb
|
138
|
+
- spec/dummy/app/controllers/application_controller.rb
|
139
|
+
- spec/dummy/app/controllers/foos_controller.rb
|
140
|
+
- spec/dummy/app/helpers/application_helper.rb
|
141
|
+
- spec/dummy/app/helpers/foos_helper.rb
|
142
|
+
- spec/dummy/app/mailers/.gitkeep
|
143
|
+
- spec/dummy/app/models/.gitkeep
|
144
|
+
- spec/dummy/app/views/foos/index.html.erb
|
145
|
+
- spec/dummy/app/views/layouts/application.html.erb
|
146
|
+
- spec/dummy/config.ru
|
147
|
+
- spec/dummy/config/application.rb
|
148
|
+
- spec/dummy/config/boot.rb
|
149
|
+
- spec/dummy/config/database.yml
|
150
|
+
- spec/dummy/config/environment.rb
|
151
|
+
- spec/dummy/config/environments/development.rb
|
152
|
+
- spec/dummy/config/environments/production.rb
|
153
|
+
- spec/dummy/config/environments/test.rb
|
154
|
+
- spec/dummy/config/initializers/backtrace_silencers.rb
|
155
|
+
- spec/dummy/config/initializers/inflections.rb
|
156
|
+
- spec/dummy/config/initializers/mime_types.rb
|
157
|
+
- spec/dummy/config/initializers/rafters.rb
|
158
|
+
- spec/dummy/config/initializers/secret_token.rb
|
159
|
+
- spec/dummy/config/initializers/session_store.rb
|
160
|
+
- spec/dummy/config/initializers/wrap_parameters.rb
|
161
|
+
- spec/dummy/config/locales/en.yml
|
162
|
+
- spec/dummy/config/routes.rb
|
163
|
+
- spec/dummy/lib/assets/.gitkeep
|
164
|
+
- spec/dummy/log/.gitkeep
|
165
|
+
- spec/dummy/public/404.html
|
166
|
+
- spec/dummy/public/422.html
|
167
|
+
- spec/dummy/public/500.html
|
168
|
+
- spec/dummy/public/favicon.ico
|
169
|
+
- spec/dummy/script/rails
|
170
|
+
- spec/rafters/component_spec.rb
|
171
|
+
- spec/spec_helper.rb
|
172
|
+
homepage: ''
|
173
|
+
licenses:
|
174
|
+
- MIT
|
175
|
+
metadata: {}
|
176
|
+
post_install_message:
|
177
|
+
rdoc_options: []
|
178
|
+
require_paths:
|
179
|
+
- lib
|
180
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
181
|
+
requirements:
|
182
|
+
- - '>='
|
183
|
+
- !ruby/object:Gem::Version
|
184
|
+
version: '0'
|
185
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
186
|
+
requirements:
|
187
|
+
- - '>='
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '0'
|
190
|
+
requirements: []
|
191
|
+
rubyforge_project:
|
192
|
+
rubygems_version: 2.0.3
|
193
|
+
signing_key:
|
194
|
+
specification_version: 4
|
195
|
+
summary: Rafters lets you think about each page of your application as a collection
|
196
|
+
of small pieces instead of monolithic, difficult to maintain views.
|
197
|
+
test_files:
|
198
|
+
- spec/dummy/README.rdoc
|
199
|
+
- spec/dummy/Rakefile
|
200
|
+
- spec/dummy/app/assets/javascripts/application.js
|
201
|
+
- spec/dummy/app/assets/javascripts/foos.js
|
202
|
+
- spec/dummy/app/assets/stylesheets/application.css
|
203
|
+
- spec/dummy/app/assets/stylesheets/foos.css
|
204
|
+
- spec/dummy/app/components/heading/assets/javascripts/heading_component.js
|
205
|
+
- spec/dummy/app/components/heading/assets/stylesheets/heading_component.css
|
206
|
+
- spec/dummy/app/components/heading/heading_component.rb
|
207
|
+
- spec/dummy/app/components/heading/views/heading_component.html.erb
|
208
|
+
- spec/dummy/app/controllers/application_controller.rb
|
209
|
+
- spec/dummy/app/controllers/foos_controller.rb
|
210
|
+
- spec/dummy/app/helpers/application_helper.rb
|
211
|
+
- spec/dummy/app/helpers/foos_helper.rb
|
212
|
+
- spec/dummy/app/mailers/.gitkeep
|
213
|
+
- spec/dummy/app/models/.gitkeep
|
214
|
+
- spec/dummy/app/views/foos/index.html.erb
|
215
|
+
- spec/dummy/app/views/layouts/application.html.erb
|
216
|
+
- spec/dummy/config.ru
|
217
|
+
- spec/dummy/config/application.rb
|
218
|
+
- spec/dummy/config/boot.rb
|
219
|
+
- spec/dummy/config/database.yml
|
220
|
+
- spec/dummy/config/environment.rb
|
221
|
+
- spec/dummy/config/environments/development.rb
|
222
|
+
- spec/dummy/config/environments/production.rb
|
223
|
+
- spec/dummy/config/environments/test.rb
|
224
|
+
- spec/dummy/config/initializers/backtrace_silencers.rb
|
225
|
+
- spec/dummy/config/initializers/inflections.rb
|
226
|
+
- spec/dummy/config/initializers/mime_types.rb
|
227
|
+
- spec/dummy/config/initializers/rafters.rb
|
228
|
+
- spec/dummy/config/initializers/secret_token.rb
|
229
|
+
- spec/dummy/config/initializers/session_store.rb
|
230
|
+
- spec/dummy/config/initializers/wrap_parameters.rb
|
231
|
+
- spec/dummy/config/locales/en.yml
|
232
|
+
- spec/dummy/config/routes.rb
|
233
|
+
- spec/dummy/lib/assets/.gitkeep
|
234
|
+
- spec/dummy/log/.gitkeep
|
235
|
+
- spec/dummy/public/404.html
|
236
|
+
- spec/dummy/public/422.html
|
237
|
+
- spec/dummy/public/500.html
|
238
|
+
- spec/dummy/public/favicon.ico
|
239
|
+
- spec/dummy/script/rails
|
240
|
+
- spec/rafters/component_spec.rb
|
241
|
+
- spec/spec_helper.rb
|