govuk_design_system_formbuilder 2.1.7b1 → 2.1.7b2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4e5e35ed528afbcc521f2ed397a640304289c5f6ae461aa751505a7385e6accd
4
- data.tar.gz: 3931158ee0d6bc41043b994a086267e9fe6f4c57b5c46af72654f15c53e30a64
3
+ metadata.gz: 277961fb349097190b08b5e773ecb48bb28a8d3cf32bf3d006202ad41dc911e1
4
+ data.tar.gz: b5f74b257afdf3df827e2d44f70055e516a7c74d4d7b4683c408c771f8194d71
5
5
  SHA512:
6
- metadata.gz: e0dc849509abe135123504ae391255ad1a3cdf0578a1d11087bacccb411821b992b73c08324a5192f2ac1f7c47c6305c2071c9c7ad08ea667c31723c1b303ebb
7
- data.tar.gz: 644b0092e9f5338e7f76a268f55272cc557733c474d91f5dc51f44051cdf0d6e4e4b492baa7d539f0c9788dd677d56c840787dcb37bfd882c1e53999877ecbdb
6
+ metadata.gz: c5aa6eba88a501f7405f1a859bb73b91be9fb00c2da3e38ec6bb65c659637d15b837c696f637bb733416ba551378c53ebf359387f50fdd59f31f441f17e4e59f
7
+ data.tar.gz: c60364f8f675bd69e6b9cb9d2f22cd9b843c3ddd708ba018c136c87765fc7ea5b4b35a7bc2ed04d24df83ab2053bc518566b5cde65963eca54acc266e5f3d45f
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # GOV.UK Design System Form Builder for Rails
2
2
 
3
- [![Tests](https://github.com/DFE-Digital/govuk_design_system_formbuilder/workflows/Testing/badge.svg)](https://github.com/DFE-Digital/govuk_design_system_formbuilder/actions)
3
+ [![Tests](https://github.com/DFE-Digital/govuk_design_system_formbuilder/workflows/Tests/badge.svg)](https://github.com/DFE-Digital/govuk_design_system_formbuilder/actions)
4
4
  [![Maintainability](https://api.codeclimate.com/v1/badges/fde73b5dc9476197281b/maintainability)](https://codeclimate.com/github/DFE-Digital/govuk_design_system_formbuilder/maintainability)
5
5
  [![Gem Version](https://badge.fury.io/rb/govuk_design_system_formbuilder.svg)](https://badge.fury.io/rb/govuk_design_system_formbuilder)
6
6
  [![Gem](https://img.shields.io/gem/dt/govuk_design_system_formbuilder?logo=rubygems)](https://rubygems.org/gems/govuk_design_system_formbuilder)
@@ -8,6 +8,8 @@
8
8
  [![Dependabot Status](https://api.dependabot.com/badges/status?host=github&repo=DFE-Digital/govuk_design_system_formbuilder)](https://dependabot.com)
9
9
  [![GitHub license](https://img.shields.io/github/license/DFE-Digital/govuk_design_system_formbuilder)](https://github.com/DFE-Digital/govuk_design_system_formbuilder/blob/master/LICENSE)
10
10
  [![GOV.UK Design System Version](https://img.shields.io/badge/GOV.UK%20Design%20System-3.10.2-brightgreen)](https://design-system.service.gov.uk)
11
+ [![Rails](https://img.shields.io/badge/Ruby-2.5.8%20%E2%95%B1%202.6.6%20%E2%95%B1%202.7.2-E16D6D)](https://weblog.rubyonrails.org/releases/)
12
+ [![Ruby](https://img.shields.io/badge/Rails-5.2.4%20%E2%95%B1%206.0.3%20%E2%95%B1%206.1.0-E16D6D)](https://www.ruby-lang.org/en/downloads/)
11
13
 
12
14
  This library provides an easy-to-use form builder for the [GOV.UK Design System](https://design-system.service.gov.uk/).
13
15
 
@@ -53,7 +53,7 @@ module GOVUKDesignSystemFormBuilder
53
53
  def has_errors?
54
54
  @builder.object.respond_to?(:errors) &&
55
55
  @builder.object.errors.any? &&
56
- @builder.object.errors.messages.dig(@attribute_name).present?
56
+ @builder.object.errors.messages[@attribute_name].present?
57
57
  end
58
58
 
59
59
  def described_by(*ids)
@@ -2,7 +2,7 @@ module GOVUKDesignSystemFormBuilder
2
2
  module Containers
3
3
  class CharacterCount < Base
4
4
  def initialize(builder, max_words:, max_chars:, threshold:)
5
- @builder = builder
5
+ super(builder, nil, nil)
6
6
 
7
7
  fail ArgumentError, 'limit can be words or chars' if max_words && max_chars
8
8
 
@@ -11,10 +11,10 @@ module GOVUKDesignSystemFormBuilder
11
11
  @threshold = threshold
12
12
  end
13
13
 
14
- def html
14
+ def html(&block)
15
15
  return yield unless limit?
16
16
 
17
- tag.div(**options) { yield }
17
+ tag.div(**options, &block)
18
18
  end
19
19
 
20
20
  private
@@ -2,13 +2,14 @@ module GOVUKDesignSystemFormBuilder
2
2
  module Containers
3
3
  class CheckBoxes < Base
4
4
  def initialize(builder, small:, classes: nil)
5
- @builder = builder
5
+ super(builder, nil, nil)
6
+
6
7
  @small = small
7
8
  @classes = classes
8
9
  end
9
10
 
10
- def html
11
- tag.div(**options) { yield }
11
+ def html(&block)
12
+ tag.div(**options, &block)
12
13
  end
13
14
 
14
15
  private
@@ -8,8 +8,8 @@ module GOVUKDesignSystemFormBuilder
8
8
  @html_attributes = kwargs
9
9
  end
10
10
 
11
- def html
12
- tag.div(class: classes, **@html_attributes) { yield }
11
+ def html(&block)
12
+ tag.div(class: classes, **@html_attributes, &block)
13
13
  end
14
14
 
15
15
  private
@@ -4,14 +4,15 @@ module GOVUKDesignSystemFormBuilder
4
4
  include Traits::Hint
5
5
 
6
6
  def initialize(builder, inline:, small:, classes:)
7
- @builder = builder
7
+ super(builder, nil, nil)
8
+
8
9
  @inline = inline
9
10
  @small = small
10
11
  @classes = classes
11
12
  end
12
13
 
13
- def html
14
- tag.div(**options) { yield }
14
+ def html(&block)
15
+ tag.div(**options, &block)
15
16
  end
16
17
 
17
18
  private
@@ -6,7 +6,7 @@ module GOVUKDesignSystemFormBuilder
6
6
  include Traits::Hint
7
7
  include Traits::Supplemental
8
8
 
9
- def initialize(builder, object_name, attribute_name, collection, value_method:, text_method:, hint_method: nil, hint:, legend:, caption:, small:, classes:, form_group:, &block)
9
+ def initialize(builder, object_name, attribute_name, collection, value_method:, text_method:, hint:, legend:, caption:, small:, classes:, form_group:, hint_method: nil, &block)
10
10
  super(builder, object_name, attribute_name, &block)
11
11
 
12
12
  @collection = collection
@@ -16,7 +16,7 @@ module GOVUKDesignSystemFormBuilder
16
16
 
17
17
  def html
18
18
  @checkbox.label(for: field_id(link_errors: @link_errors), class: label_classes) do
19
- [localised_text(:label), @checkbox.text, @value].compact.first
19
+ [localised_text(:label), @checkbox.text, @value].compact.first.to_s
20
20
  end
21
21
  end
22
22
 
@@ -9,7 +9,7 @@ module GOVUKDesignSystemFormBuilder
9
9
 
10
10
  SEGMENTS = { day: '3i', month: '2i', year: '1i' }.freeze
11
11
 
12
- def initialize(builder, object_name, attribute_name, legend:, caption:, hint:, date_of_birth: false, omit_day:, form_group:, wildcards:, &block)
12
+ def initialize(builder, object_name, attribute_name, legend:, caption:, hint:, omit_day:, form_group:, wildcards:, date_of_birth: false, &block)
13
13
  super(builder, object_name, attribute_name, &block)
14
14
 
15
15
  @legend = legend
@@ -5,10 +5,6 @@ module GOVUKDesignSystemFormBuilder
5
5
 
6
6
  include Traits::Error
7
7
 
8
- def initialize(builder, object_name, attribute_name)
9
- super(builder, object_name, attribute_name)
10
- end
11
-
12
8
  def html
13
9
  return nil unless has_errors?
14
10
 
@@ -4,8 +4,8 @@ module GOVUKDesignSystemFormBuilder
4
4
  include Traits::Error
5
5
 
6
6
  def initialize(builder, object_name, title, link_base_errors_to:)
7
- @builder = builder
8
- @object_name = object_name
7
+ super(builder, object_name, nil)
8
+
9
9
  @title = title
10
10
  @link_base_errors_to = link_base_errors_to
11
11
  end
@@ -1,7 +1,9 @@
1
1
  module GOVUKDesignSystemFormBuilder
2
2
  module Elements
3
3
  class Null < Base
4
- def initialize; end
4
+ def initialize
5
+ super(nil, nil, nil)
6
+ end
5
7
 
6
8
  def html
7
9
  nil
@@ -6,7 +6,7 @@ module GOVUKDesignSystemFormBuilder
6
6
  include Traits::Hint
7
7
  include Traits::Supplemental
8
8
 
9
- def initialize(builder, object_name, attribute_name, collection, value_method:, text_method:, options: {}, html_options: {}, hint:, label:, caption:, form_group:, &block)
9
+ def initialize(builder, object_name, attribute_name, collection, value_method:, text_method:, hint:, label:, caption:, form_group:, options: {}, html_options: {}, &block)
10
10
  super(builder, object_name, attribute_name, &block)
11
11
 
12
12
  @collection = collection
@@ -49,7 +49,7 @@ module GOVUKDesignSystemFormBuilder
49
49
  end
50
50
 
51
51
  def custom_classes
52
- @html_options.dig(:class)
52
+ @html_options[:class]
53
53
  end
54
54
  end
55
55
  end
@@ -4,9 +4,10 @@ module GOVUKDesignSystemFormBuilder
4
4
  using PrefixableArray
5
5
 
6
6
  def initialize(builder, text, warning:, secondary:, classes:, prevent_double_click:, validate:, disabled:, &block)
7
+ super(builder, nil, nil)
8
+
7
9
  fail ArgumentError, 'buttons can be warning or secondary' if warning && secondary
8
10
 
9
- @builder = builder
10
11
  @text = text
11
12
  @prevent_double_click = prevent_double_click
12
13
  @warning = warning
@@ -8,7 +8,7 @@ module GOVUKDesignSystemFormBuilder
8
8
  when Symbol, String
9
9
  item.send(method)
10
10
  when Proc
11
- capture { method.call(item) }
11
+ capture { method.call(item).to_s }
12
12
  end
13
13
  end
14
14
  end
@@ -1,3 +1,3 @@
1
1
  module GOVUKDesignSystemFormBuilder
2
- VERSION = '2.1.7b1'.freeze
2
+ VERSION = '2.1.7b2'.freeze
3
3
  end
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: 2.1.7b1
4
+ version: 2.1.7b2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Yates
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-29 00:00:00.000000000 Z
11
+ date: 2021-01-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionview
@@ -134,14 +134,14 @@ dependencies:
134
134
  requirements:
135
135
  - - "~>"
136
136
  - !ruby/object:Gem::Version
137
- version: 0.17.1
137
+ version: '0.20'
138
138
  type: :development
139
139
  prerelease: false
140
140
  version_requirements: !ruby/object:Gem::Requirement
141
141
  requirements:
142
142
  - - "~>"
143
143
  - !ruby/object:Gem::Version
144
- version: 0.17.1
144
+ version: '0.20'
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: htmlbeautifier
147
147
  requirement: !ruby/object:Gem::Requirement
@@ -176,14 +176,14 @@ dependencies:
176
176
  requirements:
177
177
  - - "~>"
178
178
  - !ruby/object:Gem::Version
179
- version: 3.25.0
179
+ version: 3.26.0
180
180
  type: :development
181
181
  prerelease: false
182
182
  version_requirements: !ruby/object:Gem::Requirement
183
183
  requirements:
184
184
  - - "~>"
185
185
  - !ruby/object:Gem::Version
186
- version: 3.25.0
186
+ version: 3.26.0
187
187
  - !ruby/object:Gem::Dependency
188
188
  name: rubypants
189
189
  requirement: !ruby/object:Gem::Requirement