Class: BulmaX::Field::Control

Inherits:
BaseComponent show all
Defined in:
lib/bulma_x/field.rb

Overview

rubocop:enable Metrics/PerceivedComplexity, Metrics/CyclomaticComplexity

Constant Summary

Constants inherited from BaseComponent

BaseComponent::BLANK_VALUES, BaseComponent::BOOLEAN, BaseComponent::COLORS, BaseComponent::COLOR_MODIFIER, BaseComponent::COLOR_PALETTE, BaseComponent::MODIFIERS, BaseComponent::MODIFIERS_DECLINED, BaseComponent::MODIFIERS_PALETTE

Constants included from Shared::SpacingOptions

Shared::SpacingOptions::VALID_SPACING_KEYS, Shared::SpacingOptions::VALID_SPACING_VALUES

Instance Method Summary collapse

Methods inherited from BaseComponent

#after_template, #attributes, #base_attributes, #base_classes, #before_template, #classes, #compact_blank, #css, #initialize, #render_root

Methods included from Shared::AriaOptions

#aria_attributes, included

Methods included from Shared::GlobalOptions

#global_attributes, #global_classes, included

Methods included from Shared::DataOptions

#data_attributes, included

Methods included from Shared::FlexOptions

#flex_classes, included

Methods included from Shared::SpacingOptions

included, #spacing_classes

Methods included from Shared::TextOptions

included, #text_classes

Methods included from ComponentDsl

included

Constructor Details

This class inherits a constructor from BulmaX::BaseComponent

Instance Method Details

#root_classesObject



87
88
89
90
91
92
93
94
95
# File 'lib/bulma_x/field.rb', line 87

def root_classes
  super +
    [
      'control',
      slot?(:left_icon) && 'has-icons-left',
      slot?(:right_icon) && 'has-icons-right',
      @expanded && 'is-expanded'
    ]
end

#view_templateObject

rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity, Metrics/AbcSize



98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/bulma_x/field.rb', line 98

def view_template(&)
  super do
    slot(:left_icon, control_alignment: :left) if slot?(:left_icon)
    slots(:label).each { render it }
    slot(:input) if slot?(:input)
    slot(:textarea) if slot?(:textarea)
    slot(:select) if slot?(:select)
    slot(:button) if slot?(:button)
    slot(:right_icon, control_alignment: :right) if slot?(:right_icon)
    yield if block_given?
  end
end