Class: Practical::Views::OpenDialogButtonComponent
- Inherits:
-
ButtonComponent
- Object
- ViewComponent::Base
- BaseComponent
- ButtonComponent
- Practical::Views::OpenDialogButtonComponent
- Defined in:
- app/components/practical/views/open_dialog_button_component.rb
Instance Attribute Summary collapse
-
#dialog_id ⇒ Object
Returns the value of attribute dialog_id.
Attributes inherited from ButtonComponent
#appearance, #color_variant, #options, #size, #type
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(dialog_id:, appearance: nil, color_variant: nil, size: nil, options: {}) ⇒ OpenDialogButtonComponent
constructor
A new instance of OpenDialogButtonComponent.
Methods inherited from ButtonComponent
Methods included from ElementHelper
Constructor Details
#initialize(dialog_id:, appearance: nil, color_variant: nil, size: nil, options: {}) ⇒ OpenDialogButtonComponent
Returns a new instance of OpenDialogButtonComponent.
6 7 8 9 10 11 |
# File 'app/components/practical/views/open_dialog_button_component.rb', line 6 def initialize(dialog_id:, appearance: nil, color_variant: nil, size: nil, options: {}) = .with_defaults( onclick: self.class.inline_js_to_open_dialog(dialog_id: dialog_id) ) super(type: :button, appearance: appearance, color_variant: color_variant, size: size, options: ) end |
Instance Attribute Details
#dialog_id ⇒ Object
Returns the value of attribute dialog_id.
4 5 6 |
# File 'app/components/practical/views/open_dialog_button_component.rb', line 4 def dialog_id @dialog_id end |
Class Method Details
.inline_js_to_open_dialog(dialog_id:) ⇒ Object
13 14 15 |
# File 'app/components/practical/views/open_dialog_button_component.rb', line 13 def self.inline_js_to_open_dialog(dialog_id:) return "document.getElementById(`#{dialog_id}`).showModal()" end |