formtastic 1.1.0 → 1.2.0.beta

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.
Files changed (58) hide show
  1. data/MIT-LICENSE +1 -1
  2. data/README.textile +80 -66
  3. data/generators/form/form_generator.rb +37 -46
  4. data/generators/formtastic/formtastic_generator.rb +10 -8
  5. data/lib/formtastic.rb +318 -227
  6. data/lib/formtastic/i18n.rb +8 -6
  7. data/lib/formtastic/layout_helper.rb +6 -4
  8. data/lib/formtastic/railtie.rb +3 -1
  9. data/lib/formtastic/util.rb +2 -0
  10. data/lib/generators/formtastic/form/form_generator.rb +5 -7
  11. data/lib/generators/formtastic/install/install_generator.rb +2 -9
  12. data/lib/generators/templates/_form.html.erb +5 -0
  13. data/lib/generators/templates/_form.html.haml +4 -0
  14. data/{generators/formtastic → lib/generators}/templates/formtastic.css +25 -11
  15. data/{generators/formtastic → lib/generators}/templates/formtastic.rb +19 -2
  16. data/{generators/formtastic → lib/generators}/templates/formtastic_changes.css +0 -0
  17. metadata +58 -98
  18. data/Rakefile +0 -127
  19. data/generators/form/templates/view__form.html.erb +0 -5
  20. data/generators/form/templates/view__form.html.haml +0 -4
  21. data/generators/formtastic_stylesheets/formtastic_stylesheets_generator.rb +0 -16
  22. data/init.rb +0 -5
  23. data/rails/init.rb +0 -2
  24. data/spec/buttons_spec.rb +0 -166
  25. data/spec/commit_button_spec.rb +0 -401
  26. data/spec/custom_builder_spec.rb +0 -98
  27. data/spec/defaults_spec.rb +0 -20
  28. data/spec/error_proc_spec.rb +0 -27
  29. data/spec/errors_spec.rb +0 -105
  30. data/spec/form_helper_spec.rb +0 -142
  31. data/spec/helpers/layout_helper_spec.rb +0 -21
  32. data/spec/i18n_spec.rb +0 -152
  33. data/spec/include_blank_spec.rb +0 -74
  34. data/spec/input_spec.rb +0 -786
  35. data/spec/inputs/boolean_input_spec.rb +0 -104
  36. data/spec/inputs/check_boxes_input_spec.rb +0 -426
  37. data/spec/inputs/country_input_spec.rb +0 -118
  38. data/spec/inputs/date_input_spec.rb +0 -168
  39. data/spec/inputs/datetime_input_spec.rb +0 -310
  40. data/spec/inputs/file_input_spec.rb +0 -34
  41. data/spec/inputs/hidden_input_spec.rb +0 -78
  42. data/spec/inputs/numeric_input_spec.rb +0 -44
  43. data/spec/inputs/password_input_spec.rb +0 -46
  44. data/spec/inputs/radio_input_spec.rb +0 -243
  45. data/spec/inputs/select_input_spec.rb +0 -546
  46. data/spec/inputs/string_input_spec.rb +0 -64
  47. data/spec/inputs/text_input_spec.rb +0 -34
  48. data/spec/inputs/time_input_spec.rb +0 -206
  49. data/spec/inputs/time_zone_input_spec.rb +0 -110
  50. data/spec/inputs_spec.rb +0 -476
  51. data/spec/label_spec.rb +0 -89
  52. data/spec/semantic_errors_spec.rb +0 -98
  53. data/spec/semantic_fields_for_spec.rb +0 -45
  54. data/spec/spec.opts +0 -2
  55. data/spec/spec_helper.rb +0 -289
  56. data/spec/support/custom_macros.rb +0 -494
  57. data/spec/support/output_buffer.rb +0 -4
  58. data/spec/support/test_environment.rb +0 -45
@@ -1,6 +1,8 @@
1
+ # encoding: utf-8
2
+
1
3
  module Formtastic
2
4
  module I18n
3
-
5
+
4
6
  DEFAULT_SCOPE = [:formtastic].freeze
5
7
  DEFAULT_VALUES = {
6
8
  :required => 'required',
@@ -17,9 +19,9 @@ module Formtastic
17
19
  '%{nested_model}.%{attribute}',
18
20
  '%{attribute}'
19
21
  ]
20
-
22
+
21
23
  class << self
22
-
24
+
23
25
  def translate(*args)
24
26
  key = args.shift.to_sym
25
27
  options = args.extract_options!
@@ -28,8 +30,8 @@ module Formtastic
28
30
  ::I18n.translate(key, *(args << options))
29
31
  end
30
32
  alias :t :translate
31
-
33
+
32
34
  end
33
-
35
+
34
36
  end
35
- end
37
+ end
@@ -1,10 +1,12 @@
1
+ # encoding: utf-8
2
+
1
3
  module Formtastic
2
4
  module LayoutHelper
3
-
5
+
4
6
  def formtastic_stylesheet_link_tag
5
- stylesheet_link_tag("formtastic") +
7
+ stylesheet_link_tag("formtastic") +
6
8
  stylesheet_link_tag("formtastic_changes")
7
9
  end
8
-
10
+
9
11
  end
10
- end
12
+ end
@@ -1,3 +1,5 @@
1
+ # encoding: utf-8
2
+
1
3
  require 'formtastic'
2
4
  require 'formtastic/layout_helper'
3
5
  require 'rails'
@@ -9,4 +11,4 @@ module Formtastic
9
11
  ActionView::Base.send(:include, Formtastic::LayoutHelper)
10
12
  end
11
13
  end
12
- end
14
+ end
@@ -1,3 +1,5 @@
1
+ # encoding: utf-8
2
+
1
3
  # Adapted from the rails3 compatibility shim in Haml 2.2
2
4
  module Formtastic
3
5
  module Util
@@ -1,4 +1,4 @@
1
- # coding: utf-8
1
+ # encoding: utf-8
2
2
  module Formtastic
3
3
  class FormGenerator < Rails::Generators::NamedBase
4
4
  desc "Generates formtastic form code based on an existing model. By default the " <<
@@ -17,18 +17,16 @@ module Formtastic
17
17
  class_option :controller, :type => :string, :default => false, :group => :formtastic,
18
18
  :desc => 'Generate for custom controller/view path - in case model and controller namespace is different, i.e. "admin/posts"'
19
19
 
20
- def self.source_root
21
- # Set source directory for the templates to the rails2 generator template directory
22
- @source_root ||= File.expand_path(File.join('..', '..', '..', '..', 'generators', 'form', 'templates'), File.dirname(__FILE__))
23
- end
20
+ source_root File.expand_path('../../../templates', __FILE__)
24
21
 
25
22
  def create_or_show
26
23
  @attributes = self.columns if @attributes.empty?
24
+
27
25
  if options[:partial]
28
26
  empty_directory "app/views/#{controller_path}"
29
- template "view__form.html.#{template_type}", "app/views/#{controller_path}/_form.html.#{template_type}"
27
+ template "_form.html.#{template_type}", "app/views/#{controller_path}/_form.html.#{template_type}"
30
28
  else
31
- template = File.read("#{self.class.source_root}/view__form.html.#{template_type}")
29
+ template = File.read("#{self.class.source_root}/_form.html.#{template_type}")
32
30
  erb = ERB.new(template, nil, '-')
33
31
  generated_code = erb.result(binding).strip rescue nil
34
32
 
@@ -1,16 +1,9 @@
1
- # coding: utf-8
1
+ # encoding: utf-8
2
2
  module Formtastic
3
3
  class InstallGenerator < Rails::Generators::Base
4
4
  desc "Copies formtastic.css and formtastic_changes.css to public/stylesheets/ and a config initializer to config/initializers/formtastic_config.rb"
5
5
 
6
- def self.source_root
7
- # Set source directory for the templates to the rails2 generator template directory
8
- @source_root ||= File.expand_path(File.join('..', '..', '..', '..', 'generators', 'formtastic', 'templates'), File.dirname(__FILE__))
9
- end
10
-
11
- def self.banner
12
- "rails generate formtastic:install [options]"
13
- end
6
+ source_root File.expand_path('../../../templates', __FILE__)
14
7
 
15
8
  def copy_files
16
9
  empty_directory 'config/initializers'
@@ -0,0 +1,5 @@
1
+ <%% f.inputs do %>
2
+ <% attributes.each do |attribute| -%>
3
+ <%%= f.input :<%= attribute.name %> %>
4
+ <% end -%>
5
+ <%% end %>
@@ -0,0 +1,4 @@
1
+ - f.inputs do
2
+ <% attributes.each do |attribute| -%>
3
+ = f.input :<%= attribute.name %>
4
+ <% end -%>
@@ -38,7 +38,7 @@ form.formtastic fieldset.buttons li { float:left; padding-right:0.5em; }
38
38
 
39
39
  /* INPUT LIs
40
40
  --------------------------------------------------------------------------------------------------*/
41
- form.formtastic fieldset > ol > li { margin-bottom:1.5em; }
41
+ form.formtastic fieldset > ol > li { padding:0.5em 0; margin-top:-0.5em; margin-bottom:1em; } /* padding and negative margin juggling is for Firefox */
42
42
  form.formtastic fieldset > ol > li { overflow:auto; } /* clearing contained floats */
43
43
 
44
44
  form.formtastic fieldset > ol > li.required { }
@@ -75,16 +75,29 @@ form.formtastic fieldset > ol > li ul.errors { color:#cc0000; margin:0.5em 0 0 2
75
75
  form.formtastic fieldset > ol > li ul.errors li { padding:0; border:none; display:list-item; }
76
76
 
77
77
 
78
- /* STRING & NUMERIC OVERRIDES
78
+ /* STRING, NUMERIC, PASSWORD, EMAIL, URL, PHONE & SEARCH OVERRIDES
79
79
  --------------------------------------------------------------------------------------------------*/
80
- form.formtastic fieldset > ol > li.string input { max-width:74%; }
81
- form.formtastic fieldset > ol > li.password input { max-width: 13em; }
82
- form.formtastic fieldset > ol > li.numeric input { max-width:74%; }
80
+ form.formtastic fieldset > ol > li.string input,
81
+ form.formtastic fieldset > ol > li.password input,
82
+ form.formtastic fieldset > ol > li.numeric input,
83
+ form.formtastic fieldset > ol > li.email input,
84
+ form.formtastic fieldset > ol > li.url input,
85
+ form.formtastic fieldset > ol > li.phone input,
86
+ form.formtastic fieldset > ol > li.search input { width:72%; }
87
+
88
+ form.formtastic fieldset > ol > li.string input[size],
89
+ form.formtastic fieldset > ol > li.password input[size],
90
+ form.formtastic fieldset > ol > li.numeric input[size],
91
+ form.formtastic fieldset > ol > li.email input[size],
92
+ form.formtastic fieldset > ol > li.url input[size],
93
+ form.formtastic fieldset > ol > li.phone input[size],
94
+ form.formtastic fieldset > ol > li.search input[size] { width:auto; max-width:72%; }
83
95
 
84
96
 
85
97
  /* TEXTAREA OVERRIDES
86
98
  --------------------------------------------------------------------------------------------------*/
87
- form.formtastic fieldset > ol > li.text textarea { width:74%; }
99
+ form.formtastic fieldset > ol > li.text textarea { width:72%; }
100
+ form.formtastic fieldset > ol > li.text textarea[cols] { width:auto; max-width:72%; }
88
101
 
89
102
 
90
103
  /* HIDDEN OVERRIDES
@@ -100,8 +113,9 @@ form.formtastic fieldset > ol > li.boolean label input { margin:0 0.5em 0 0.2em;
100
113
  /* RADIO OVERRIDES
101
114
  --------------------------------------------------------------------------------------------------*/
102
115
  form.formtastic fieldset > ol > li.radio { }
103
- form.formtastic fieldset > ol > li.radio fieldset ol { margin-bottom:-0.6em; }
104
- form.formtastic fieldset > ol > li.radio fieldset ol li { margin:0.1em 0 0.5em 0; }
116
+ form.formtastic fieldset > ol > li.radio fieldset { overflow:visible; }
117
+ form.formtastic fieldset > ol > li.radio fieldset ol { margin-bottom:-0.5em; }
118
+ form.formtastic fieldset > ol > li.radio fieldset ol li { margin:0.1em 0 0.5em 0; overflow:visible; }
105
119
  form.formtastic fieldset > ol > li.radio fieldset ol li label { float:none; width:100%; }
106
120
  form.formtastic fieldset > ol > li.radio fieldset ol li label input { margin-right:0.2em; }
107
121
 
@@ -109,13 +123,13 @@ form.formtastic fieldset > ol > li.radio fieldset ol li label input { margin-rig
109
123
  /* CHECK BOXES (COLLECTION) OVERRIDES
110
124
  --------------------------------------------------------------------------------------------------*/
111
125
  form.formtastic fieldset > ol > li.check_boxes { }
112
- form.formtastic fieldset > ol > li.check_boxes fieldset ol { margin-bottom:-0.6em; }
113
- form.formtastic fieldset > ol > li.check_boxes fieldset ol li { margin:0.1em 0 0.5em 0; }
126
+ form.formtastic fieldset > ol > li.check_boxes fieldset { overflow:visible; }
127
+ form.formtastic fieldset > ol > li.check_boxes fieldset ol { margin-bottom:-0.5em; }
128
+ form.formtastic fieldset > ol > li.check_boxes fieldset ol li { margin:0.1em 0 0.5em 0; overflow:visible; }
114
129
  form.formtastic fieldset > ol > li.check_boxes fieldset ol li label { float:none; width:100%; }
115
130
  form.formtastic fieldset > ol > li.check_boxes fieldset ol li label input { margin-right:0.2em; }
116
131
 
117
132
 
118
-
119
133
  /* DATE & TIME OVERRIDES
120
134
  --------------------------------------------------------------------------------------------------*/
121
135
  form.formtastic fieldset > ol > li.date fieldset ol li,
@@ -1,9 +1,14 @@
1
- # Set the default text field size when input is a string. Default is 50.
1
+ # encoding: utf-8
2
+
3
+ # Set the default text field size when input is a string. Default is nil.
2
4
  # Formtastic::SemanticFormBuilder.default_text_field_size = 50
3
5
 
4
6
  # Set the default text area height when input is a text. Default is 20.
5
7
  # Formtastic::SemanticFormBuilder.default_text_area_height = 5
6
8
 
9
+ # Set the default text area width when input is a text. Default is 50.
10
+ # Formtastic::SemanticFormBuilder.default_text_area_width = 10
11
+
7
12
  # Should all fields be considered "required" by default?
8
13
  # Rails 2 only, ignored by Rails 3 because it will never fall back to this default.
9
14
  # Defaults to true.
@@ -25,8 +30,14 @@
25
30
  # Formtastic::SemanticFormBuilder.optional_string = "(optional)"
26
31
 
27
32
  # Set the way inline errors will be displayed.
28
- # Defaults to :sentence, valid options are :sentence, :list and :none
33
+ # Defaults to :sentence, valid options are :sentence, :list, :first and :none
29
34
  # Formtastic::SemanticFormBuilder.inline_errors = :sentence
35
+ # Formtastic uses the following classes as default for hints, inline_errors and error list
36
+
37
+ # If you override the class here, please ensure to override it in your formtastic_changes.css stylesheet as well
38
+ # Formtastic::SemanticFormBuilder.default_hint_class = "inline-hints"
39
+ # Formtastic::SemanticFormBuilder.default_inline_error_class = "inline-errors"
40
+ # Formtastic::SemanticFormBuilder.default_error_list_class = "errors"
30
41
 
31
42
  # Set the method to call on label text to transform or format it for human-friendly
32
43
  # reading when formtastic is used without object. Defaults to :humanize.
@@ -45,6 +56,12 @@
45
56
  # customize it doing just as below:
46
57
  # Formtastic::SemanticFormBuilder.inline_order = [:input, :hints, :errors]
47
58
 
59
+ # Additionally, you can customize the order for specific types of inputs.
60
+ # This is configured on a type basis and if a type is not found it will
61
+ # fall back to the default order as defined by #inline_order
62
+ # Formtastic::SemanticFormBuilder.custom_inline_order[:checkbox] = [:errors, :hints, :input]
63
+ # Formtastic::SemanticFormBuilder.custom_inline_order[:select] = [:hints, :input, :errors]
64
+
48
65
  # Specifies if labels/hints for input fields automatically be looked up using I18n.
49
66
  # Default value: false. Overridden for specific fields by setting value to true,
50
67
  # i.e. :label => true, or :hint => true (or opposite depending on initialized value)
metadata CHANGED
@@ -1,12 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: formtastic
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 31098177
5
+ prerelease: true
5
6
  segments:
6
7
  - 1
7
- - 1
8
+ - 2
8
9
  - 0
9
- version: 1.1.0
10
+ - beta
11
+ version: 1.2.0.beta
10
12
  platform: ruby
11
13
  authors:
12
14
  - Justin French
@@ -21,37 +23,43 @@ dependencies:
21
23
  name: activesupport
22
24
  prerelease: false
23
25
  requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
24
27
  requirements:
25
28
  - - ">="
26
29
  - !ruby/object:Gem::Version
30
+ hash: 13
27
31
  segments:
28
32
  - 2
29
33
  - 3
30
- - 0
31
- version: 2.3.0
34
+ - 7
35
+ version: 2.3.7
32
36
  type: :runtime
33
37
  version_requirements: *id001
34
38
  - !ruby/object:Gem::Dependency
35
39
  name: actionpack
36
40
  prerelease: false
37
41
  requirement: &id002 !ruby/object:Gem::Requirement
42
+ none: false
38
43
  requirements:
39
44
  - - ">="
40
45
  - !ruby/object:Gem::Version
46
+ hash: 13
41
47
  segments:
42
48
  - 2
43
49
  - 3
44
- - 0
45
- version: 2.3.0
50
+ - 7
51
+ version: 2.3.7
46
52
  type: :runtime
47
53
  version_requirements: *id002
48
54
  - !ruby/object:Gem::Dependency
49
55
  name: i18n
50
56
  prerelease: false
51
57
  requirement: &id003 !ruby/object:Gem::Requirement
58
+ none: false
52
59
  requirements:
53
60
  - - ">="
54
61
  - !ruby/object:Gem::Version
62
+ hash: 15
55
63
  segments:
56
64
  - 0
57
65
  - 4
@@ -60,33 +68,53 @@ dependencies:
60
68
  type: :runtime
61
69
  version_requirements: *id003
62
70
  - !ruby/object:Gem::Dependency
63
- name: rspec-rails
71
+ name: rails
64
72
  prerelease: false
65
73
  requirement: &id004 !ruby/object:Gem::Requirement
74
+ none: false
66
75
  requirements:
67
76
  - - ">="
68
77
  - !ruby/object:Gem::Version
78
+ hash: 7
69
79
  segments:
70
- - 1
71
- - 2
72
- - 6
73
- version: 1.2.6
80
+ - 3
81
+ - 0
82
+ - 0
83
+ version: 3.0.0
74
84
  type: :development
75
85
  version_requirements: *id004
76
86
  - !ruby/object:Gem::Dependency
77
- name: rspec_tag_matchers
87
+ name: rspec-rails
78
88
  prerelease: false
79
89
  requirement: &id005 !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ~>
93
+ - !ruby/object:Gem::Version
94
+ hash: 15
95
+ segments:
96
+ - 2
97
+ - 0
98
+ - 0
99
+ version: 2.0.0
100
+ type: :development
101
+ version_requirements: *id005
102
+ - !ruby/object:Gem::Dependency
103
+ name: rspec_tag_matchers
104
+ prerelease: false
105
+ requirement: &id006 !ruby/object:Gem::Requirement
106
+ none: false
80
107
  requirements:
81
108
  - - ">="
82
109
  - !ruby/object:Gem::Version
110
+ hash: 23
83
111
  segments:
84
112
  - 1
85
113
  - 0
86
114
  - 0
87
115
  version: 1.0.0
88
116
  type: :development
89
- version_requirements: *id005
117
+ version_requirements: *id006
90
118
  description: A Rails form builder plugin/gem with semantically rich and accessible markup
91
119
  email: justin@indent.com.au
92
120
  executables: []
@@ -96,63 +124,24 @@ extensions: []
96
124
  extra_rdoc_files:
97
125
  - README.textile
98
126
  files:
99
- - MIT-LICENSE
100
- - README.textile
101
- - Rakefile
102
- - generators/form/USAGE
103
127
  - generators/form/form_generator.rb
104
- - generators/form/templates/view__form.html.erb
105
- - generators/form/templates/view__form.html.haml
128
+ - generators/form/USAGE
106
129
  - generators/formtastic/formtastic_generator.rb
107
- - generators/formtastic/templates/formtastic.css
108
- - generators/formtastic/templates/formtastic.rb
109
- - generators/formtastic/templates/formtastic_changes.css
110
- - generators/formtastic_stylesheets/formtastic_stylesheets_generator.rb
111
- - init.rb
112
- - lib/formtastic.rb
113
130
  - lib/formtastic/i18n.rb
114
131
  - lib/formtastic/layout_helper.rb
115
132
  - lib/formtastic/railtie.rb
116
133
  - lib/formtastic/util.rb
134
+ - lib/formtastic.rb
117
135
  - lib/generators/formtastic/form/form_generator.rb
118
136
  - lib/generators/formtastic/install/install_generator.rb
137
+ - lib/generators/templates/_form.html.erb
138
+ - lib/generators/templates/_form.html.haml
139
+ - lib/generators/templates/formtastic.css
140
+ - lib/generators/templates/formtastic.rb
141
+ - lib/generators/templates/formtastic_changes.css
119
142
  - lib/locale/en.yml
120
- - rails/init.rb
121
- - spec/buttons_spec.rb
122
- - spec/commit_button_spec.rb
123
- - spec/custom_builder_spec.rb
124
- - spec/defaults_spec.rb
125
- - spec/error_proc_spec.rb
126
- - spec/errors_spec.rb
127
- - spec/form_helper_spec.rb
128
- - spec/helpers/layout_helper_spec.rb
129
- - spec/i18n_spec.rb
130
- - spec/include_blank_spec.rb
131
- - spec/input_spec.rb
132
- - spec/inputs/boolean_input_spec.rb
133
- - spec/inputs/check_boxes_input_spec.rb
134
- - spec/inputs/country_input_spec.rb
135
- - spec/inputs/date_input_spec.rb
136
- - spec/inputs/datetime_input_spec.rb
137
- - spec/inputs/file_input_spec.rb
138
- - spec/inputs/hidden_input_spec.rb
139
- - spec/inputs/numeric_input_spec.rb
140
- - spec/inputs/password_input_spec.rb
141
- - spec/inputs/radio_input_spec.rb
142
- - spec/inputs/select_input_spec.rb
143
- - spec/inputs/string_input_spec.rb
144
- - spec/inputs/text_input_spec.rb
145
- - spec/inputs/time_input_spec.rb
146
- - spec/inputs/time_zone_input_spec.rb
147
- - spec/inputs_spec.rb
148
- - spec/label_spec.rb
149
- - spec/semantic_errors_spec.rb
150
- - spec/semantic_fields_for_spec.rb
151
- - spec/spec.opts
152
- - spec/spec_helper.rb
153
- - spec/support/custom_macros.rb
154
- - spec/support/output_buffer.rb
155
- - spec/support/test_environment.rb
143
+ - MIT-LICENSE
144
+ - README.textile
156
145
  has_rdoc: true
157
146
  homepage: http://github.com/justinfrench/formtastic/tree/master
158
147
  licenses: []
@@ -163,58 +152,29 @@ rdoc_options:
163
152
  require_paths:
164
153
  - lib
165
154
  required_ruby_version: !ruby/object:Gem::Requirement
155
+ none: false
166
156
  requirements:
167
157
  - - ">="
168
158
  - !ruby/object:Gem::Version
159
+ hash: 3
169
160
  segments:
170
161
  - 0
171
162
  version: "0"
172
163
  required_rubygems_version: !ruby/object:Gem::Requirement
164
+ none: false
173
165
  requirements:
174
166
  - - ">="
175
167
  - !ruby/object:Gem::Version
168
+ hash: 3
176
169
  segments:
177
170
  - 0
178
171
  version: "0"
179
172
  requirements: []
180
173
 
181
174
  rubyforge_project:
182
- rubygems_version: 1.3.6
175
+ rubygems_version: 1.3.7
183
176
  signing_key:
184
177
  specification_version: 3
185
178
  summary: A Rails form builder plugin/gem with semantically rich and accessible markup
186
- test_files:
187
- - spec/buttons_spec.rb
188
- - spec/commit_button_spec.rb
189
- - spec/custom_builder_spec.rb
190
- - spec/defaults_spec.rb
191
- - spec/error_proc_spec.rb
192
- - spec/errors_spec.rb
193
- - spec/form_helper_spec.rb
194
- - spec/helpers/layout_helper_spec.rb
195
- - spec/i18n_spec.rb
196
- - spec/include_blank_spec.rb
197
- - spec/input_spec.rb
198
- - spec/inputs/boolean_input_spec.rb
199
- - spec/inputs/check_boxes_input_spec.rb
200
- - spec/inputs/country_input_spec.rb
201
- - spec/inputs/date_input_spec.rb
202
- - spec/inputs/datetime_input_spec.rb
203
- - spec/inputs/file_input_spec.rb
204
- - spec/inputs/hidden_input_spec.rb
205
- - spec/inputs/numeric_input_spec.rb
206
- - spec/inputs/password_input_spec.rb
207
- - spec/inputs/radio_input_spec.rb
208
- - spec/inputs/select_input_spec.rb
209
- - spec/inputs/string_input_spec.rb
210
- - spec/inputs/text_input_spec.rb
211
- - spec/inputs/time_input_spec.rb
212
- - spec/inputs/time_zone_input_spec.rb
213
- - spec/inputs_spec.rb
214
- - spec/label_spec.rb
215
- - spec/semantic_errors_spec.rb
216
- - spec/semantic_fields_for_spec.rb
217
- - spec/spec_helper.rb
218
- - spec/support/custom_macros.rb
219
- - spec/support/output_buffer.rb
220
- - spec/support/test_environment.rb
179
+ test_files: []
180
+