Sha256: 0098c6c3a695fdb284c0f9628fc1cb1e9ed72e978ece1f0112dd587f0f23e9d9

Contents?: true

Size: 682 Bytes

Versions: 1

Compression:

Stored size: 682 Bytes

Contents

class HungryForm
  class BaseElement < ::Hashie::Mash
    attr_accessor :name, :placeholders, :resolver

    def initialize(name, parent, resolver, options = {})
      self.placeholders ||= {}
      self.resolver = resolver

      super(options)

      self.visible = true unless self.key?(:visible)
      self.visible &&= resolver.resolve_dependency(::JSON.parse(self.dependency)) if self.key?(:dependency)
      self.name = (parent.nil?? "" : "#{parent.name}_") + resolver.get_value(name, self)

      if self.key?(:label)
        self.label = resolver.get_value(self.label, self)
      else
        self.label = resolver.get_value(name, self).humanize
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
hungryform-0.0.1 lib/hungryform/elements/base_element.rb