Class: DiscordRDA::ModalBuilder
- Inherits:
-
Object
- Object
- DiscordRDA::ModalBuilder
- Defined in:
- lib/discord_rda/interactions/interaction.rb
Overview
Builder for creating modals
Instance Method Summary collapse
-
#initialize(data = {}) ⇒ ModalBuilder
constructor
A new instance of ModalBuilder.
-
#paragraph(custom_id:, label:, placeholder: nil, min_length: nil, max_length: nil, required: true, value: nil) ⇒ Object
Add a paragraph text input.
-
#short(custom_id:, label:, placeholder: nil, min_length: nil, max_length: nil, required: true, value: nil) ⇒ Object
Add a short text input.
-
#to_h ⇒ Hash
Convert to hash for API.
Constructor Details
#initialize(data = {}) ⇒ ModalBuilder
Returns a new instance of ModalBuilder.
510 511 512 513 |
# File 'lib/discord_rda/interactions/interaction.rb', line 510 def initialize(data = {}) @data = data @components = [] end |
Instance Method Details
#paragraph(custom_id:, label:, placeholder: nil, min_length: nil, max_length: nil, required: true, value: nil) ⇒ Object
Add a paragraph text input
535 536 537 |
# File 'lib/discord_rda/interactions/interaction.rb', line 535 def paragraph(custom_id:, label:, placeholder: nil, min_length: nil, max_length: nil, required: true, value: nil) add_text_input(2, custom_id, label, placeholder: placeholder, min_length: min_length, max_length: max_length, required: required, value: value) end |
#short(custom_id:, label:, placeholder: nil, min_length: nil, max_length: nil, required: true, value: nil) ⇒ Object
Add a short text input
523 524 525 |
# File 'lib/discord_rda/interactions/interaction.rb', line 523 def short(custom_id:, label:, placeholder: nil, min_length: nil, max_length: nil, required: true, value: nil) add_text_input(1, custom_id, label, placeholder: placeholder, min_length: min_length, max_length: max_length, required: required, value: value) end |
#to_h ⇒ Hash
Convert to hash for API
541 542 543 544 |
# File 'lib/discord_rda/interactions/interaction.rb', line 541 def to_h @data[:components] = @components.map { |c| { type: 1, components: [c] } } @data end |