Sha256: 35d8e3fd6eef890dc9e03f13b22fb1ed94e0223e7ba309aa14a099fb497de0f6
Contents?: true
Size: 1.5 KB
Versions: 1
Compression:
Stored size: 1.5 KB
Contents
module Eco module API module Common module People class DefaultParsers < PersonParser def initialize(*args) super(*args) define_defaults end private def define_defaults # Select Options select_hashes = @schema.fields.map do |fld| if fld.type == "select" raise "The schema selection field '#{fld.name}' is missing selection options." unless fld.options && !fld.options.empty? options_hash = fld.options.map { |v| [v.downcase.strip, v] }.to_h [fld.alt_id, options_hash] end end.compact.to_h SelectParser.new(self, select_hashes: select_hashes).process BooleanParser.new(self).process NumericParser.new(self).process DateParser.new(self).process MultiParser.new(self).process # ALWAYS PRESENT FIELDS SendInvitesParser.new(self).process # FORMAT PARSER CSVParser.new(self).process end end end end end end require_relative 'default_parsers/select_parser' require_relative 'default_parsers/boolean_parser' require_relative 'default_parsers/numeric_parser' require_relative 'default_parsers/date_parser' require_relative 'default_parsers/multi_parser' require_relative 'default_parsers/send_invites_parser' require_relative 'default_parsers/csv_parser'
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
eco-helpers-1.0.11 | lib/eco/api/common/people/default_parsers.rb |