module Bootstrap4RailsComponents::Bootstrap::Utilities::Themeable
Allows component to utilize the bootstrap4 theme color palette
Public Instance Methods
outlined()
click to toggle source
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 8 def outlined options.fetch(:outlined, false) end
theme()
click to toggle source
To disable theme on a case by case basis, pass in { theme: nil } to options. or To disable a default theme for a component set default_theme
to nil
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 15 def theme options.fetch(:theme, default_theme) end
Private Instance Methods
css_classes()
click to toggle source
Calls superclass method
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 21 def css_classes [ super, ("#{theme_css_class_prefix}#{outlined_css_class_prefix if outlined && outlineable?}#{theme}" if theme) ].join(' ').squish end
default_theme()
click to toggle source
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 28 def default_theme @default_theme ||= Bootstrap4RailsComponents::DEFAULT_BOOTSTRAP_THEME end
non_html_attribute_options()
click to toggle source
Calls superclass method
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 32 def non_html_attribute_options super.push(:theme, :outlined) end
outlineable?()
click to toggle source
Explicitly turn off outlineable on components that should not allow outline
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 45 def outlineable? true end
outlined_css_class_prefix()
click to toggle source
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 36 def outlined_css_class_prefix @outlined_css_class_prefix ||= 'outline-' end
theme_css_class_prefix()
click to toggle source
# File lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb, line 40 def theme_css_class_prefix @theme_css_class_prefix ||= "#{component_css_class}-" end