Sha256: e6f42bd468d104807af2b332b8ec7b9469cb5d2bc6b49d04f4f37f2002bede17

Contents?: true

Size: 555 Bytes

Versions: 6

Compression:

Stored size: 555 Bytes

Contents

module GOVUKDesignSystemFormBuilder
  module Elements
    class ErrorMessage < Base
      using PrefixableArray

      include Traits::Error

      def html
        return nil unless has_errors?

        tag.span(class: %(#{brand}-error-message), id: error_id) do
          safe_join([hidden_prefix, message])
        end
      end

    private

      def hidden_prefix
        tag.span('Error: ', class: %(#{brand}-visually-hidden))
      end

      def message
        @builder.object.errors.messages[@attribute_name]&.first
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
govuk_design_system_formbuilder-2.3.0b1 lib/govuk_design_system_formbuilder/elements/error_message.rb
govuk_design_system_formbuilder-2.2.0 lib/govuk_design_system_formbuilder/elements/error_message.rb
govuk_design_system_formbuilder-2.1.9 lib/govuk_design_system_formbuilder/elements/error_message.rb
govuk_design_system_formbuilder-2.1.8 lib/govuk_design_system_formbuilder/elements/error_message.rb
govuk_design_system_formbuilder-2.1.7 lib/govuk_design_system_formbuilder/elements/error_message.rb
govuk_design_system_formbuilder-2.1.7b2 lib/govuk_design_system_formbuilder/elements/error_message.rb