Sha256: f17733531b858eb22fdb3dbc2707e19912cf53666cc6c4f7aefa97c4b23e7df7

Contents?: true

Size: 677 Bytes

Versions: 2

Compression:

Stored size: 677 Bytes

Contents

module GOVUKDesignSystemFormBuilder
  module Containers
    class FormGroup < Base
      def initialize(builder, object_name, attribute_name, classes: nil)
        super(builder, object_name, attribute_name)

        @classes = classes
      end

      def html
        content_tag('div', class: classes) { yield }
      end

    private

      def classes
        [form_group_class, error_class, custom_classes].flatten.compact
      end

      def form_group_class
        %(#{brand}-form-group)
      end

      def error_class
        %(#{brand}-form-group--error) if has_errors?
      end

      def custom_classes
        Array.wrap(@classes)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
govuk_design_system_formbuilder-1.2.6 lib/govuk_design_system_formbuilder/containers/form_group.rb
govuk_design_system_formbuilder-1.2.5 lib/govuk_design_system_formbuilder/containers/form_group.rb