Sha256: 022ca15c5dc54be93984e71f15be53e645d17a4abcfa0ff702b028b1c16d90a4
Contents?: true
Size: 796 Bytes
Versions: 61
Compression:
Stored size: 796 Bytes
Contents
module Concerns module Addressable class Config attr_reader :fields, :default def initialize @fields = [] @default = nil end def update(categories, default: nil) unless categories.respond_to?(:each) && categories.any? raise 'Please provide an array with address categories' end @fields = categories.map(&:to_sym).uniq @default = @fields.first if default unless @fields.include?(default.to_sym) raise "You can't make '#{default.to_s}' the default address category because it's not in the list of categories" end @default = default.to_sym end end def allowed?(field) @fields.include?(field.to_sym) end end end end
Version data entries
61 entries across 61 versions & 1 rubygems