Sha256: d8af31fb629b371102c172f78a62f56f4ccb88b3217be48387a3d08eae0dbf12

Contents?: true

Size: 711 Bytes

Versions: 1

Compression:

Stored size: 711 Bytes

Contents

require "formalist/form/result/field"

module Formalist
  class Form
    module Definition
      class Field
        attr_reader :name
        attr_reader :type
        attr_reader :display_variant
        attr_reader :config

        def initialize(name, type, display_variant, config)
          @name = name
          @type = type
          @display_variant = display_variant
          @config = config
        end

        def to_display_variant(display_variant, new_config = {})
          self.class.new(name, type, display_variant, config.merge(new_config))
        end

        def call(input, rules, errors)
          Result::Field.new(self, input, rules, errors)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
formalist-0.2.2 lib/formalist/form/definition/field.rb