govuk_design_system_formbuilder 0.7.9 → 0.7.10

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 (29) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +52 -18
  3. data/lib/govuk_design_system_formbuilder.rb +19 -4
  4. data/lib/govuk_design_system_formbuilder/base.rb +54 -17
  5. data/lib/govuk_design_system_formbuilder/builder.rb +147 -93
  6. data/lib/govuk_design_system_formbuilder/containers/check_boxes_fieldset.rb +28 -0
  7. data/lib/govuk_design_system_formbuilder/containers/fieldset.rb +3 -9
  8. data/lib/govuk_design_system_formbuilder/containers/radio_buttons_fieldset.rb +29 -0
  9. data/lib/govuk_design_system_formbuilder/elements/check_boxes/collection.rb +62 -0
  10. data/lib/govuk_design_system_formbuilder/elements/check_boxes/collection_check_box.rb +21 -7
  11. data/lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb +75 -0
  12. data/lib/govuk_design_system_formbuilder/elements/check_boxes/hint.rb +9 -17
  13. data/lib/govuk_design_system_formbuilder/elements/check_boxes/label.rb +5 -4
  14. data/lib/govuk_design_system_formbuilder/elements/date.rb +18 -14
  15. data/lib/govuk_design_system_formbuilder/elements/error_message.rb +6 -4
  16. data/lib/govuk_design_system_formbuilder/elements/error_summary.rb +23 -8
  17. data/lib/govuk_design_system_formbuilder/elements/file.rb +40 -0
  18. data/lib/govuk_design_system_formbuilder/elements/hint.rb +1 -1
  19. data/lib/govuk_design_system_formbuilder/elements/input.rb +4 -12
  20. data/lib/govuk_design_system_formbuilder/elements/label.rb +16 -6
  21. data/lib/govuk_design_system_formbuilder/elements/radios/collection.rb +55 -0
  22. data/lib/govuk_design_system_formbuilder/elements/radios/collection_radio_button.rb +48 -0
  23. data/lib/govuk_design_system_formbuilder/elements/radios/{fieldset_radio.rb → fieldset_radio_button.rb} +17 -8
  24. data/lib/govuk_design_system_formbuilder/elements/select.rb +51 -0
  25. data/lib/govuk_design_system_formbuilder/elements/submit.rb +21 -13
  26. data/lib/govuk_design_system_formbuilder/elements/text_area.rb +4 -8
  27. data/lib/govuk_design_system_formbuilder/version.rb +1 -1
  28. metadata +32 -12
  29. data/lib/govuk_design_system_formbuilder/elements/radios/collection_radio.rb +0 -33
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: govuk_design_system_formbuilder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.9
4
+ version: 0.7.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Yates
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-08 00:00:00.000000000 Z
11
+ date: 2019-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -62,22 +62,22 @@ dependencies:
62
62
  name: pry-byebug
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '3.7'
68
65
  - - ">="
69
66
  - !ruby/object:Gem::Version
70
67
  version: 3.7.0
68
+ - - "~>"
69
+ - !ruby/object:Gem::Version
70
+ version: '3.7'
71
71
  type: :development
72
72
  prerelease: false
73
73
  version_requirements: !ruby/object:Gem::Requirement
74
74
  requirements:
75
- - - "~>"
76
- - !ruby/object:Gem::Version
77
- version: '3.7'
78
75
  - - ">="
79
76
  - !ruby/object:Gem::Version
80
77
  version: 3.7.0
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '3.7'
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: rspec-html-matchers
83
83
  requirement: !ruby/object:Gem::Requirement
@@ -106,6 +106,20 @@ dependencies:
106
106
  - - "~>"
107
107
  - !ruby/object:Gem::Version
108
108
  version: '3.8'
109
+ - !ruby/object:Gem::Dependency
110
+ name: simplecov
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: '0'
116
+ type: :development
117
+ prerelease: false
118
+ version_requirements: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
109
123
  - !ruby/object:Gem::Dependency
110
124
  name: sqlite3
111
125
  requirement: !ruby/object:Gem::Requirement
@@ -135,20 +149,27 @@ files:
135
149
  - lib/govuk_design_system_formbuilder/builder.rb
136
150
  - lib/govuk_design_system_formbuilder/containers/character_count.rb
137
151
  - lib/govuk_design_system_formbuilder/containers/check_boxes.rb
152
+ - lib/govuk_design_system_formbuilder/containers/check_boxes_fieldset.rb
138
153
  - lib/govuk_design_system_formbuilder/containers/fieldset.rb
139
154
  - lib/govuk_design_system_formbuilder/containers/form_group.rb
155
+ - lib/govuk_design_system_formbuilder/containers/radio_buttons_fieldset.rb
140
156
  - lib/govuk_design_system_formbuilder/containers/radios.rb
157
+ - lib/govuk_design_system_formbuilder/elements/check_boxes/collection.rb
141
158
  - lib/govuk_design_system_formbuilder/elements/check_boxes/collection_check_box.rb
159
+ - lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
142
160
  - lib/govuk_design_system_formbuilder/elements/check_boxes/hint.rb
143
161
  - lib/govuk_design_system_formbuilder/elements/check_boxes/label.rb
144
162
  - lib/govuk_design_system_formbuilder/elements/date.rb
145
163
  - lib/govuk_design_system_formbuilder/elements/error_message.rb
146
164
  - lib/govuk_design_system_formbuilder/elements/error_summary.rb
165
+ - lib/govuk_design_system_formbuilder/elements/file.rb
147
166
  - lib/govuk_design_system_formbuilder/elements/hint.rb
148
167
  - lib/govuk_design_system_formbuilder/elements/input.rb
149
168
  - lib/govuk_design_system_formbuilder/elements/label.rb
150
- - lib/govuk_design_system_formbuilder/elements/radios/collection_radio.rb
151
- - lib/govuk_design_system_formbuilder/elements/radios/fieldset_radio.rb
169
+ - lib/govuk_design_system_formbuilder/elements/radios/collection.rb
170
+ - lib/govuk_design_system_formbuilder/elements/radios/collection_radio_button.rb
171
+ - lib/govuk_design_system_formbuilder/elements/radios/fieldset_radio_button.rb
172
+ - lib/govuk_design_system_formbuilder/elements/select.rb
152
173
  - lib/govuk_design_system_formbuilder/elements/submit.rb
153
174
  - lib/govuk_design_system_formbuilder/elements/text_area.rb
154
175
  - lib/govuk_design_system_formbuilder/version.rb
@@ -171,8 +192,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
192
  - !ruby/object:Gem::Version
172
193
  version: '0'
173
194
  requirements: []
174
- rubyforge_project:
175
- rubygems_version: 2.7.6
195
+ rubygems_version: 3.0.1
176
196
  signing_key:
177
197
  specification_version: 4
178
198
  summary: GOV.UK-compliant Rails form builder
@@ -1,33 +0,0 @@
1
- module GOVUKDesignSystemFormBuilder
2
- module Elements
3
- module Radios
4
- class CollectionRadio < Base
5
- def initialize(builder, object_name, attribute_name, item, value_method, text_method, hint_method)
6
- super(builder, object_name, attribute_name)
7
- @item = item
8
- @value = item.send(value_method)
9
- @text = item.send(text_method)
10
- @hint_text = item.send(hint_method) if hint_method.present?
11
- end
12
-
13
- def html
14
- @builder.content_tag('div', class: 'govuk-radios__item') do
15
- @builder.safe_join(
16
- [
17
- @builder.radio_button(
18
- @attribute_name,
19
- @value,
20
- id: attribute_descriptor,
21
- aria: { describedby: hint_id },
22
- class: %w(govuk-radios__input)
23
- ),
24
- Elements::Label.new(@builder, @object_name, @attribute_name, text: @text, value: @value, radio: true).html,
25
- Elements::Hint.new(@builder, @object_name, @attribute_name, @hint_text, @value, radio: true).html,
26
- ].compact
27
- )
28
- end
29
- end
30
- end
31
- end
32
- end
33
- end