Class: BlockKit::Elements::MultiSelect

Inherits:
Select show all
Defined in:
lib/block_kit/elements/multi_select.rb

Constant Summary

Constants included from Concerns::HasPlaceholder

Concerns::HasPlaceholder::MAX_TEXT_LENGTH

Constants inherited from Base

Base::MAX_ACTION_ID_LENGTH

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#==, fix, #fix_validation_errors, #fix_validation_errors!, fixes, #inspect, inspect, #pretty_print, #to_json

Constructor Details

#initialize(attributes = {}) ⇒ MultiSelect

Returns a new instance of MultiSelect.

Raises:

  • (NotImplementedError)


14
15
16
17
18
# File 'lib/block_kit/elements/multi_select.rb', line 14

def initialize(attributes = {})
  raise NotImplementedError, "#{self.class} is an abstract class and can't be instantiated." if instance_of?(MultiSelect)

  super
end

Class Method Details

.inherited(subclass) ⇒ Object



10
11
12
# File 'lib/block_kit/elements/multi_select.rb', line 10

def self.inherited(subclass)
  subclass.attribute_fixers = attribute_fixers.deep_dup
end

Instance Method Details

#as_jsonObject



20
21
22
# File 'lib/block_kit/elements/multi_select.rb', line 20

def as_json(*)
  super.merge(max_selected_items: max_selected_items).compact
end