formtastic-bootstrap 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.document +5 -0
- data/.rspec +1 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +123 -0
- data/LICENSE.txt +20 -0
- data/README.md +159 -0
- data/Rakefile +49 -0
- data/VERSION +1 -0
- data/formtastic-bootstrap.gemspec +128 -0
- data/lib/action_view/helpers/text_field_date_helper.rb +166 -0
- data/lib/formtastic-bootstrap.rb +5 -0
- data/lib/formtastic-bootstrap/form_builder.rb +38 -0
- data/lib/formtastic-bootstrap/helpers.rb +19 -0
- data/lib/formtastic-bootstrap/helpers/buttons_helper.rb +47 -0
- data/lib/formtastic-bootstrap/helpers/fieldset_wrapper.rb +37 -0
- data/lib/formtastic-bootstrap/helpers/input_helper.rb +12 -0
- data/lib/formtastic-bootstrap/helpers/inputs_helper.rb +36 -0
- data/lib/formtastic-bootstrap/inputs.rb +28 -0
- data/lib/formtastic-bootstrap/inputs/base.rb +22 -0
- data/lib/formtastic-bootstrap/inputs/base/choices.rb +49 -0
- data/lib/formtastic-bootstrap/inputs/base/errors.rb +48 -0
- data/lib/formtastic-bootstrap/inputs/base/hints.rb +27 -0
- data/lib/formtastic-bootstrap/inputs/base/html.rb +21 -0
- data/lib/formtastic-bootstrap/inputs/base/labelling.rb +18 -0
- data/lib/formtastic-bootstrap/inputs/base/stringish.rb +18 -0
- data/lib/formtastic-bootstrap/inputs/base/timeish.rb +35 -0
- data/lib/formtastic-bootstrap/inputs/base/wrapping.rb +56 -0
- data/lib/formtastic-bootstrap/inputs/boolean_input.rb +33 -0
- data/lib/formtastic-bootstrap/inputs/check_boxes_input.rb +35 -0
- data/lib/formtastic-bootstrap/inputs/date_input.rb +16 -0
- data/lib/formtastic-bootstrap/inputs/datetime_input.rb +19 -0
- data/lib/formtastic-bootstrap/inputs/email_input.rb +15 -0
- data/lib/formtastic-bootstrap/inputs/file_input.rb +14 -0
- data/lib/formtastic-bootstrap/inputs/hidden_input.rb +12 -0
- data/lib/formtastic-bootstrap/inputs/number_input.rb +15 -0
- data/lib/formtastic-bootstrap/inputs/password_input.rb +15 -0
- data/lib/formtastic-bootstrap/inputs/phone_input.rb +15 -0
- data/lib/formtastic-bootstrap/inputs/radio_input.rb +32 -0
- data/lib/formtastic-bootstrap/inputs/range_input.rb +15 -0
- data/lib/formtastic-bootstrap/inputs/search_input.rb +15 -0
- data/lib/formtastic-bootstrap/inputs/select_input.rb +14 -0
- data/lib/formtastic-bootstrap/inputs/string_input.rb +15 -0
- data/lib/formtastic-bootstrap/inputs/text_input.rb +14 -0
- data/lib/formtastic-bootstrap/inputs/time_input.rb +16 -0
- data/lib/formtastic-bootstrap/inputs/url_input.rb +14 -0
- data/spec/builder/errors_spec.rb +214 -0
- data/spec/builder/semantic_fields_for_spec.rb +130 -0
- data/spec/helpers/input_helper_spec.rb +956 -0
- data/spec/helpers/inputs_helper_spec.rb +577 -0
- data/spec/inputs/boolean_input_spec.rb +193 -0
- data/spec/inputs/check_boxes_input_spec.rb +439 -0
- data/spec/inputs/date_input_spec.rb +147 -0
- data/spec/inputs/datetime_input_spec.rb +101 -0
- data/spec/inputs/email_input_spec.rb +59 -0
- data/spec/inputs/file_input_spec.rb +63 -0
- data/spec/inputs/hidden_input_spec.rb +122 -0
- data/spec/inputs/number_input_spec.rb +787 -0
- data/spec/inputs/password_input_spec.rb +73 -0
- data/spec/inputs/phone_input_spec.rb +59 -0
- data/spec/inputs/radio_input_spec.rb +240 -0
- data/spec/inputs/range_input_spec.rb +479 -0
- data/spec/inputs/search_input_spec.rb +59 -0
- data/spec/inputs/select_input_spec.rb +567 -0
- data/spec/inputs/string_input_spec.rb +182 -0
- data/spec/inputs/text_input_spec.rb +163 -0
- data/spec/inputs/time_input_spec.rb +206 -0
- data/spec/inputs/url_input_spec.rb +59 -0
- data/spec/spec_helper.rb +24 -0
- data/spec/support/custom_macros.rb +704 -0
- data/spec/support/depracation.rb +6 -0
- data/spec/support/formtastic_spec_helper.rb +382 -0
- metadata +204 -0
data/.document
ADDED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--color
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,123 @@
|
|
1
|
+
PATH
|
2
|
+
remote: ../formtastic
|
3
|
+
specs:
|
4
|
+
formtastic (2.0.2)
|
5
|
+
rails (~> 3.0)
|
6
|
+
|
7
|
+
GEM
|
8
|
+
remote: http://rubygems.org/
|
9
|
+
specs:
|
10
|
+
actionmailer (3.1.1)
|
11
|
+
actionpack (= 3.1.1)
|
12
|
+
mail (~> 2.3.0)
|
13
|
+
actionpack (3.1.1)
|
14
|
+
activemodel (= 3.1.1)
|
15
|
+
activesupport (= 3.1.1)
|
16
|
+
builder (~> 3.0.0)
|
17
|
+
erubis (~> 2.7.0)
|
18
|
+
i18n (~> 0.6)
|
19
|
+
rack (~> 1.3.2)
|
20
|
+
rack-cache (~> 1.1)
|
21
|
+
rack-mount (~> 0.8.2)
|
22
|
+
rack-test (~> 0.6.1)
|
23
|
+
sprockets (~> 2.0.2)
|
24
|
+
activemodel (3.1.1)
|
25
|
+
activesupport (= 3.1.1)
|
26
|
+
builder (~> 3.0.0)
|
27
|
+
i18n (~> 0.6)
|
28
|
+
activerecord (3.1.1)
|
29
|
+
activemodel (= 3.1.1)
|
30
|
+
activesupport (= 3.1.1)
|
31
|
+
arel (~> 2.2.1)
|
32
|
+
tzinfo (~> 0.3.29)
|
33
|
+
activeresource (3.1.1)
|
34
|
+
activemodel (= 3.1.1)
|
35
|
+
activesupport (= 3.1.1)
|
36
|
+
activesupport (3.1.1)
|
37
|
+
multi_json (~> 1.0)
|
38
|
+
arel (2.2.1)
|
39
|
+
builder (3.0.0)
|
40
|
+
diff-lcs (1.1.3)
|
41
|
+
erubis (2.7.0)
|
42
|
+
git (1.2.5)
|
43
|
+
hike (1.2.1)
|
44
|
+
i18n (0.6.0)
|
45
|
+
jeweler (1.6.4)
|
46
|
+
bundler (~> 1.0)
|
47
|
+
git (>= 1.2.5)
|
48
|
+
rake
|
49
|
+
json (1.6.1)
|
50
|
+
mail (2.3.0)
|
51
|
+
i18n (>= 0.4.0)
|
52
|
+
mime-types (~> 1.16)
|
53
|
+
treetop (~> 1.4.8)
|
54
|
+
mime-types (1.17.2)
|
55
|
+
multi_json (1.0.3)
|
56
|
+
nokogiri (1.5.0)
|
57
|
+
polyglot (0.3.3)
|
58
|
+
rack (1.3.5)
|
59
|
+
rack-cache (1.1)
|
60
|
+
rack (>= 0.4)
|
61
|
+
rack-mount (0.8.3)
|
62
|
+
rack (>= 1.0.0)
|
63
|
+
rack-ssl (1.3.2)
|
64
|
+
rack
|
65
|
+
rack-test (0.6.1)
|
66
|
+
rack (>= 1.0)
|
67
|
+
rails (3.1.1)
|
68
|
+
actionmailer (= 3.1.1)
|
69
|
+
actionpack (= 3.1.1)
|
70
|
+
activerecord (= 3.1.1)
|
71
|
+
activeresource (= 3.1.1)
|
72
|
+
activesupport (= 3.1.1)
|
73
|
+
bundler (~> 1.0)
|
74
|
+
railties (= 3.1.1)
|
75
|
+
railties (3.1.1)
|
76
|
+
actionpack (= 3.1.1)
|
77
|
+
activesupport (= 3.1.1)
|
78
|
+
rack-ssl (~> 1.3.2)
|
79
|
+
rake (>= 0.8.7)
|
80
|
+
rdoc (~> 3.4)
|
81
|
+
thor (~> 0.14.6)
|
82
|
+
rake (0.9.2.2)
|
83
|
+
rcov (0.9.11)
|
84
|
+
rdoc (3.11)
|
85
|
+
json (~> 1.4)
|
86
|
+
rspec (2.7.0)
|
87
|
+
rspec-core (~> 2.7.0)
|
88
|
+
rspec-expectations (~> 2.7.0)
|
89
|
+
rspec-mocks (~> 2.7.0)
|
90
|
+
rspec-core (2.7.1)
|
91
|
+
rspec-expectations (2.7.0)
|
92
|
+
diff-lcs (~> 1.1.2)
|
93
|
+
rspec-mocks (2.7.0)
|
94
|
+
rspec-rails (2.7.0)
|
95
|
+
actionpack (~> 3.0)
|
96
|
+
activesupport (~> 3.0)
|
97
|
+
railties (~> 3.0)
|
98
|
+
rspec (~> 2.7.0)
|
99
|
+
rspec_tag_matchers (1.0.0)
|
100
|
+
nokogiri (>= 1.4.0)
|
101
|
+
rspec-rails (>= 1.2.6)
|
102
|
+
sprockets (2.0.3)
|
103
|
+
hike (~> 1.2)
|
104
|
+
rack (~> 1.0)
|
105
|
+
tilt (!= 1.3.0, ~> 1.1)
|
106
|
+
thor (0.14.6)
|
107
|
+
tilt (1.3.3)
|
108
|
+
treetop (1.4.10)
|
109
|
+
polyglot
|
110
|
+
polyglot (>= 0.3.1)
|
111
|
+
tzinfo (0.3.30)
|
112
|
+
|
113
|
+
PLATFORMS
|
114
|
+
ruby
|
115
|
+
|
116
|
+
DEPENDENCIES
|
117
|
+
bundler
|
118
|
+
formtastic!
|
119
|
+
jeweler
|
120
|
+
rails (~> 3.1.0)
|
121
|
+
rcov
|
122
|
+
rspec
|
123
|
+
rspec_tag_matchers
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2011 Matthew Bellantoni
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,159 @@
|
|
1
|
+
# Formtastic Bootstrap
|
2
|
+
|
3
|
+
A [Formtastic](https://github.com/justinfrench/formtastic) form builder that creates markup suitable for the [Twitter Bootstrap](http://twitter.github.com/bootstrap/) framework. In theory, it should just work. Two great tastes in one!
|
4
|
+
|
5
|
+
## Getting Started
|
6
|
+
|
7
|
+
### Dependencies
|
8
|
+
|
9
|
+
Formtastic Bootstrap has only been tested with Ruby 1.9.2, Rails 3.1, Formtastic 2.0 and Twitter Bootstrap 1.3.
|
10
|
+
|
11
|
+
#### Installation
|
12
|
+
|
13
|
+
Install the gem with
|
14
|
+
|
15
|
+
gem install formtastic-bootstrap
|
16
|
+
|
17
|
+
Or add it to your Gemfile:
|
18
|
+
|
19
|
+
gem 'formtastic-bootstrap'
|
20
|
+
|
21
|
+
And install it with <tt>bundle install</tt>.
|
22
|
+
|
23
|
+
#### Configuration
|
24
|
+
|
25
|
+
You will then need to add the following line to your Formtastic initialization file:
|
26
|
+
|
27
|
+
# config/initializers/formtastic.rb
|
28
|
+
Formtastic::Helpers::FormHelper.builder = FormtasticBootstrap::FormBuilder
|
29
|
+
|
30
|
+
Make sure you've already downloaded and installed Formtastic!
|
31
|
+
|
32
|
+
|
33
|
+
## Formtastic vs. Formtastic Bootstrap
|
34
|
+
|
35
|
+
|
36
|
+
### Overview
|
37
|
+
|
38
|
+
In general, Formtastic creates very verbose HTML whereas Bootstrap expects simpler HTML. Every attempt has been
|
39
|
+
made to generate the HTML expected by Bootstrap while still generating the rich HTML provided by Bootstrap. Here's a pretty typical (simplified) example of what Formtastic generates and what Formtastic Bootstrap generates.
|
40
|
+
|
41
|
+
#### ERB
|
42
|
+
|
43
|
+
<%= semantic_form_for @post do |f| %>
|
44
|
+
<%= f.semantic_errors %>
|
45
|
+
<%= f.inputs do %>
|
46
|
+
<%= f.input :title, :hint => "This is the title!" %>
|
47
|
+
<% end %>
|
48
|
+
<%= f.buttons do %>
|
49
|
+
<%= f.commit_button %>
|
50
|
+
<% end %>
|
51
|
+
<% end %>
|
52
|
+
|
53
|
+
#### Formtastic
|
54
|
+
|
55
|
+
<form accept-charset="UTF-8" action="/posts" class="formtastic post" id="new_post" method="post">
|
56
|
+
<fieldset class="inputs">
|
57
|
+
<ol>
|
58
|
+
<li class="string input optional stringish" id="post_title_input">
|
59
|
+
<label class=" label" for="post_title">Title</label>
|
60
|
+
<input id="post_title" maxlength="255" name="post[title]" type="text" value="" />
|
61
|
+
<p class="inline-hints">This is the title!</p>
|
62
|
+
</li>
|
63
|
+
</ol>
|
64
|
+
</fieldset>
|
65
|
+
<fieldset class="buttons">
|
66
|
+
<ol>
|
67
|
+
<li class="commit button">
|
68
|
+
<input class="create" name="commit" type="submit" value="Create Post" />
|
69
|
+
</li>
|
70
|
+
</ol>
|
71
|
+
</fieldset>
|
72
|
+
</form>
|
73
|
+
|
74
|
+
#### Formtastic Bootstrap
|
75
|
+
|
76
|
+
<form accept-charset="UTF-8" action="/posts" class="formtastic post" id="new_post" method="post">
|
77
|
+
<fieldset class="inputs">
|
78
|
+
<div class="string clearfix optional stringish" id="post_title_input">
|
79
|
+
<label class="" for="post_title">Title</label>
|
80
|
+
<div class="input">
|
81
|
+
<input id="post_title" maxlength="255" name="post[title]" type="text" value="" />
|
82
|
+
<span class="help-inline">This is the title!</span>
|
83
|
+
</div>
|
84
|
+
</div>
|
85
|
+
</fieldset>
|
86
|
+
<div class="actions">
|
87
|
+
<input class="btn create" name="commit" type="submit" value="Create Post" />
|
88
|
+
</div>
|
89
|
+
</form>
|
90
|
+
|
91
|
+
### Major Difference in Behavior
|
92
|
+
|
93
|
+
* Fortastic Bootstrap omits the <tt>label</tt> class on label tags since Twitter Bootstrap uses this tag in another context (and it makes bad things happen.)
|
94
|
+
* Fortastic Bootstrap puts the <tt>input</tt> label in a different place because it makes Bootstrap behave correctly.
|
95
|
+
* Fortastic Bootstrap renders <tt>:date</tt>, <tt>:datetime</tt> and <tt>:time</tt> as text fields since this is how Twitter Bootstrap presents these data types (Formtastic renders them as dropdowns.) Some Rails magic may have been lost here. Additionally:
|
96
|
+
* <tt>:date</tt> et al are tagged with the <tt>stringish</tt> class.
|
97
|
+
* Hidden fields are not generated.
|
98
|
+
* Fieldsets are simply nested.
|
99
|
+
|
100
|
+
Bootstrap is somewhat incomplete, and in a few cases an inference needed to be drawn to determine a course of action. If you disagree with any of these choices, feel free to let me know.
|
101
|
+
|
102
|
+
### Other
|
103
|
+
|
104
|
+
A lot of the code (especially the test suite) was copied over from Formtastic and then beaten into submission. I'm sure you'll find some ugliness in there. In general, I mimicked the Formtastic code structure as much as possible.
|
105
|
+
|
106
|
+
In particular:
|
107
|
+
|
108
|
+
* Bootstrap doesn't say anything about nested <tt>formfields</tt>.
|
109
|
+
* Bootstrap doesn't explicitly lay out a <tt>:boolean</tt> control.
|
110
|
+
* Bootstrap doesn't explicitly say everything that needs to be said about <tt>:datetime</tt>, <tt>:date</tt>, and <tt>:time</tt>.
|
111
|
+
* I've inferred what <tt>:datetime</tt> should do since there's not example of a single <tt>:datetime</tt>.
|
112
|
+
* In some places the markup is tortuous (e.g. <tt>:boolean</tt>.) Hopefully as Bootstrap evolves these can get simplified!
|
113
|
+
* Bootstrap uses different HTML classes for sentence-based inline/block error messages.
|
114
|
+
|
115
|
+
### What's Missing
|
116
|
+
|
117
|
+
* Formtastic's <tt>:country</tt> and <tt>:time_zone</tt> have not yet been implemented.
|
118
|
+
* Twitter Bootstrap's Date Range, Prepend Text, Prepend Checkbox and Appended Checkbox controls have not yet been implemented.
|
119
|
+
|
120
|
+
## Contributing to formtastic-bootstrap
|
121
|
+
|
122
|
+
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
|
123
|
+
* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
|
124
|
+
* Fork the project
|
125
|
+
* Start a feature/bugfix branch
|
126
|
+
* Commit and push until you are happy with your contribution
|
127
|
+
* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
|
128
|
+
* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
|
129
|
+
|
130
|
+
|
131
|
+
### To Do
|
132
|
+
|
133
|
+
* Field Types
|
134
|
+
* Basic Formtastic
|
135
|
+
* :country
|
136
|
+
* :time_zone
|
137
|
+
* Fancy Bootstrap Fields
|
138
|
+
* Date Range
|
139
|
+
* Prepend Text
|
140
|
+
* Prepend Checkbox
|
141
|
+
* Appended Checkbox
|
142
|
+
* :datetime, :date, :time
|
143
|
+
* As rich functionally as their Rails counterparts.
|
144
|
+
* Extract into a standalone gem.
|
145
|
+
* Disabled inputs
|
146
|
+
* Tests
|
147
|
+
* Refactor
|
148
|
+
* More -- See if I'm making sure the Bootstrap classes are present.
|
149
|
+
* Documentation
|
150
|
+
* Refactor :boolean to use common "choices" code (if possible.) (Not sure it is.)
|
151
|
+
* Boostrap
|
152
|
+
* Ask why they use 'inline-inputs' class instead of a fieldset tag.
|
153
|
+
* Why 'help-inline' and 'help-block' when they could have done p.help and span.help?
|
154
|
+
|
155
|
+
|
156
|
+
## Copyright
|
157
|
+
|
158
|
+
Copyright (c) 2011 Matthew Bellantoni. See LICENSE.txt for further details.
|
159
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'bundler'
|
5
|
+
begin
|
6
|
+
Bundler.setup(:default, :development)
|
7
|
+
rescue Bundler::BundlerError => e
|
8
|
+
$stderr.puts e.message
|
9
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
+
exit e.status_code
|
11
|
+
end
|
12
|
+
require 'rake'
|
13
|
+
|
14
|
+
require 'jeweler'
|
15
|
+
Jeweler::Tasks.new do |gem|
|
16
|
+
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
17
|
+
gem.name = "formtastic-bootstrap"
|
18
|
+
gem.homepage = "http://github.com/mjbellantoni/formtastic-bootstrap"
|
19
|
+
gem.license = "MIT"
|
20
|
+
gem.summary = %Q{Formtastic form builder to generate Twitter Bootstrap-friendly markup.}
|
21
|
+
gem.description = gem.summary
|
22
|
+
gem.email = "mjbellantoni@yahoo.com"
|
23
|
+
gem.authors = ["Matthew Bellantoni"]
|
24
|
+
# dependencies defined in Gemfile
|
25
|
+
end
|
26
|
+
Jeweler::RubygemsDotOrgTasks.new
|
27
|
+
|
28
|
+
require 'rspec/core'
|
29
|
+
require 'rspec/core/rake_task'
|
30
|
+
RSpec::Core::RakeTask.new(:spec) do |spec|
|
31
|
+
spec.pattern = FileList['spec/**/*_spec.rb']
|
32
|
+
end
|
33
|
+
|
34
|
+
RSpec::Core::RakeTask.new(:rcov) do |spec|
|
35
|
+
spec.pattern = 'spec/**/*_spec.rb'
|
36
|
+
spec.rcov = true
|
37
|
+
end
|
38
|
+
|
39
|
+
task :default => :spec
|
40
|
+
|
41
|
+
require 'rake/rdoctask'
|
42
|
+
Rake::RDocTask.new do |rdoc|
|
43
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
44
|
+
|
45
|
+
rdoc.rdoc_dir = 'rdoc'
|
46
|
+
rdoc.title = "formtastic-bootstrap #{version}"
|
47
|
+
rdoc.rdoc_files.include('README*')
|
48
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
49
|
+
end
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.0.0
|
@@ -0,0 +1,128 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = "formtastic-bootstrap"
|
8
|
+
s.version = "1.0.0"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Matthew Bellantoni"]
|
12
|
+
s.date = "2011-11-08"
|
13
|
+
s.description = "Formtastic form builder to generate Twitter Bootstrap-friendly markup."
|
14
|
+
s.email = "mjbellantoni@yahoo.com"
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE.txt",
|
17
|
+
"README.md"
|
18
|
+
]
|
19
|
+
s.files = [
|
20
|
+
".document",
|
21
|
+
".rspec",
|
22
|
+
"Gemfile",
|
23
|
+
"Gemfile.lock",
|
24
|
+
"LICENSE.txt",
|
25
|
+
"README.md",
|
26
|
+
"Rakefile",
|
27
|
+
"VERSION",
|
28
|
+
"formtastic-bootstrap.gemspec",
|
29
|
+
"lib/action_view/helpers/text_field_date_helper.rb",
|
30
|
+
"lib/formtastic-bootstrap.rb",
|
31
|
+
"lib/formtastic-bootstrap/form_builder.rb",
|
32
|
+
"lib/formtastic-bootstrap/helpers.rb",
|
33
|
+
"lib/formtastic-bootstrap/helpers/buttons_helper.rb",
|
34
|
+
"lib/formtastic-bootstrap/helpers/fieldset_wrapper.rb",
|
35
|
+
"lib/formtastic-bootstrap/helpers/input_helper.rb",
|
36
|
+
"lib/formtastic-bootstrap/helpers/inputs_helper.rb",
|
37
|
+
"lib/formtastic-bootstrap/inputs.rb",
|
38
|
+
"lib/formtastic-bootstrap/inputs/base.rb",
|
39
|
+
"lib/formtastic-bootstrap/inputs/base/choices.rb",
|
40
|
+
"lib/formtastic-bootstrap/inputs/base/errors.rb",
|
41
|
+
"lib/formtastic-bootstrap/inputs/base/hints.rb",
|
42
|
+
"lib/formtastic-bootstrap/inputs/base/html.rb",
|
43
|
+
"lib/formtastic-bootstrap/inputs/base/labelling.rb",
|
44
|
+
"lib/formtastic-bootstrap/inputs/base/stringish.rb",
|
45
|
+
"lib/formtastic-bootstrap/inputs/base/timeish.rb",
|
46
|
+
"lib/formtastic-bootstrap/inputs/base/wrapping.rb",
|
47
|
+
"lib/formtastic-bootstrap/inputs/boolean_input.rb",
|
48
|
+
"lib/formtastic-bootstrap/inputs/check_boxes_input.rb",
|
49
|
+
"lib/formtastic-bootstrap/inputs/date_input.rb",
|
50
|
+
"lib/formtastic-bootstrap/inputs/datetime_input.rb",
|
51
|
+
"lib/formtastic-bootstrap/inputs/email_input.rb",
|
52
|
+
"lib/formtastic-bootstrap/inputs/file_input.rb",
|
53
|
+
"lib/formtastic-bootstrap/inputs/hidden_input.rb",
|
54
|
+
"lib/formtastic-bootstrap/inputs/number_input.rb",
|
55
|
+
"lib/formtastic-bootstrap/inputs/password_input.rb",
|
56
|
+
"lib/formtastic-bootstrap/inputs/phone_input.rb",
|
57
|
+
"lib/formtastic-bootstrap/inputs/radio_input.rb",
|
58
|
+
"lib/formtastic-bootstrap/inputs/range_input.rb",
|
59
|
+
"lib/formtastic-bootstrap/inputs/search_input.rb",
|
60
|
+
"lib/formtastic-bootstrap/inputs/select_input.rb",
|
61
|
+
"lib/formtastic-bootstrap/inputs/string_input.rb",
|
62
|
+
"lib/formtastic-bootstrap/inputs/text_input.rb",
|
63
|
+
"lib/formtastic-bootstrap/inputs/time_input.rb",
|
64
|
+
"lib/formtastic-bootstrap/inputs/url_input.rb",
|
65
|
+
"spec/builder/errors_spec.rb",
|
66
|
+
"spec/builder/semantic_fields_for_spec.rb",
|
67
|
+
"spec/helpers/input_helper_spec.rb",
|
68
|
+
"spec/helpers/inputs_helper_spec.rb",
|
69
|
+
"spec/inputs/boolean_input_spec.rb",
|
70
|
+
"spec/inputs/check_boxes_input_spec.rb",
|
71
|
+
"spec/inputs/date_input_spec.rb",
|
72
|
+
"spec/inputs/datetime_input_spec.rb",
|
73
|
+
"spec/inputs/email_input_spec.rb",
|
74
|
+
"spec/inputs/file_input_spec.rb",
|
75
|
+
"spec/inputs/hidden_input_spec.rb",
|
76
|
+
"spec/inputs/number_input_spec.rb",
|
77
|
+
"spec/inputs/password_input_spec.rb",
|
78
|
+
"spec/inputs/phone_input_spec.rb",
|
79
|
+
"spec/inputs/radio_input_spec.rb",
|
80
|
+
"spec/inputs/range_input_spec.rb",
|
81
|
+
"spec/inputs/search_input_spec.rb",
|
82
|
+
"spec/inputs/select_input_spec.rb",
|
83
|
+
"spec/inputs/string_input_spec.rb",
|
84
|
+
"spec/inputs/text_input_spec.rb",
|
85
|
+
"spec/inputs/time_input_spec.rb",
|
86
|
+
"spec/inputs/url_input_spec.rb",
|
87
|
+
"spec/spec_helper.rb",
|
88
|
+
"spec/support/custom_macros.rb",
|
89
|
+
"spec/support/depracation.rb",
|
90
|
+
"spec/support/formtastic_spec_helper.rb"
|
91
|
+
]
|
92
|
+
s.homepage = "http://github.com/mjbellantoni/formtastic-bootstrap"
|
93
|
+
s.licenses = ["MIT"]
|
94
|
+
s.require_paths = ["lib"]
|
95
|
+
s.rubygems_version = "1.8.10"
|
96
|
+
s.summary = "Formtastic form builder to generate Twitter Bootstrap-friendly markup."
|
97
|
+
|
98
|
+
if s.respond_to? :specification_version then
|
99
|
+
s.specification_version = 3
|
100
|
+
|
101
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
102
|
+
s.add_runtime_dependency(%q<formtastic>, [">= 0"])
|
103
|
+
s.add_runtime_dependency(%q<rails>, ["~> 3.1.0"])
|
104
|
+
s.add_development_dependency(%q<rspec>, [">= 0"])
|
105
|
+
s.add_development_dependency(%q<bundler>, [">= 0"])
|
106
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
107
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
108
|
+
s.add_development_dependency(%q<rspec_tag_matchers>, [">= 0"])
|
109
|
+
else
|
110
|
+
s.add_dependency(%q<formtastic>, [">= 0"])
|
111
|
+
s.add_dependency(%q<rails>, ["~> 3.1.0"])
|
112
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
113
|
+
s.add_dependency(%q<bundler>, [">= 0"])
|
114
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
115
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
116
|
+
s.add_dependency(%q<rspec_tag_matchers>, [">= 0"])
|
117
|
+
end
|
118
|
+
else
|
119
|
+
s.add_dependency(%q<formtastic>, [">= 0"])
|
120
|
+
s.add_dependency(%q<rails>, ["~> 3.1.0"])
|
121
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
122
|
+
s.add_dependency(%q<bundler>, [">= 0"])
|
123
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
124
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
125
|
+
s.add_dependency(%q<rspec_tag_matchers>, [">= 0"])
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|