Class: Ariadne::ConditionalWrapper
- Inherits:
-
BaseComponent
- Object
- ViewComponentContrib::Base
- BaseComponent
- Ariadne::ConditionalWrapper
- Defined in:
- app/components/ariadne/conditional_wrapper.rb
Overview
Conditionally renders a ‘Ariadne::BaseComponent` around the given content. If the given condition is true, a `Ariadne::BaseComponent` will render around the content. If the condition is false, only the content is rendered.
Constant Summary
Constants inherited from BaseComponent
BaseComponent::ACCEPT_ANYTHING
Constants included from ViewHelper
Constants included from AttributesHelper
AttributesHelper::PLURAL_ARIA_ATTRIBUTES, AttributesHelper::PLURAL_DATA_ATTRIBUTES
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(condition:, **base_component_arguments) ⇒ ConditionalWrapper
constructor
A new instance of ConditionalWrapper.
Methods inherited from BaseComponent
#class_for, #component, component_id, #component_id, component_name, #html_attributes, i18n_scope, #in_turbo_frame, #in_turbo_stream, #options, stimulus_name, #styles, translate, #validate_aria_label!
Methods included from ViewHelper
Methods included from AttributesHelper
#aria, #data, #merge_aria, #merge_data, #merge_prefixed_attribute_hashes, #prepend_action, #prepend_controller, #prepend_data_attribute
Methods included from ViewComponent::StyleVariants
Constructor Details
#initialize(condition:, **base_component_arguments) ⇒ ConditionalWrapper
Returns a new instance of ConditionalWrapper.
10 11 12 13 |
# File 'app/components/ariadne/conditional_wrapper.rb', line 10 def initialize(condition:, **base_component_arguments) @condition = condition @base_component_arguments = base_component_arguments end |
Instance Method Details
#call ⇒ Object
15 16 17 18 19 |
# File 'app/components/ariadne/conditional_wrapper.rb', line 15 def call return content unless @condition BaseComponent.new(**@base_component_arguments).render_in(self) { content } end |