Sha256: d6567f87f89bdc7c9bdfbb6482484722c2ca5a41fa462ef4562972cfcb67a2a4

Contents?: true

Size: 1.26 KB

Versions: 40

Compression:

Stored size: 1.26 KB

Contents

module GOVUKDesignSystemFormBuilder
  module Elements
    module CheckBoxes
      class FieldsetCheckBox < Base
        include Traits::Label
        include Traits::Hint
        include Traits::HTMLAttributes
        include Traits::FieldsetItem

        def initialize(builder, object_name, attribute_name, value, unchecked_value, label:, hint:, link_errors:, multiple:, exclusive:, **kwargs, &block)
          super(builder, object_name, attribute_name, &block)

          @value           = value
          @unchecked_value = unchecked_value
          @label           = label
          @hint            = hint
          @multiple        = multiple
          @link_errors     = link_errors
          @html_attributes = kwargs
          @exclusive       = exclusive

          conditional_content(@block_content)
        end

      private

        def input_type
          :checkboxes
        end

        def input
          @builder.check_box(@attribute_name, attributes(@html_attributes.deep_merge(exclusive_options)), @value, @unchecked_value)
        end

        def fieldset_options
          { checkbox: true }
        end

        def exclusive_options
          return {} unless @exclusive

          { data: { behaviour: 'exclusive' } }
        end
      end
    end
  end
end

Version data entries

40 entries across 40 versions & 2 rubygems

Version Path
govuk_design_system_formbuilder-5.9.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.8.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.7.1 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.7.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.6.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.5.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.4.1 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
katalyst-govuk-formbuilder-1.9.2 vendor/bundle/ruby/3.3.0/gems/govuk_design_system_formbuilder-5.4.0/lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.3.3 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.3.2 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.3.1 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.3.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.2.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.1.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.1.0b1 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.0.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-5.0.0b1 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-4.1.1 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-4.1.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb
govuk_design_system_formbuilder-4.0.0 lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb