Sha256: 1ee0b6a071ec245ecadad6096a255ef52b003753be087770335d174da9ce41f5
Contents?: true
Size: 729 Bytes
Versions: 12
Compression:
Stored size: 729 Bytes
Contents
# frozen_string_literal: true module Fields class MultipleSelectFieldPresenter < FieldPresenter MAX_HARD_CODE_ITEMS_SIZE = 20 def include_blank? required? end def value_for_preview super&.join(", ") end def can_custom_value? !@model.options.strict_select end def collection collection = @model.choices.map(&:label) if can_custom_value? && value.present? (value + collection).uniq else collection end end def options_for_select @view.options_for_select(collection, value) end def max_items_size size = @model.validations.length.maximum size > 0 ? size : MAX_HARD_CODE_ITEMS_SIZE end end end
Version data entries
12 entries across 12 versions & 1 rubygems