class FontAwesome5Rails::Parsers::FaStackedIconParser

Attributes

options[R]
reverse[R]
text[R]
title[R]

Public Class Methods

new(icon, options) click to toggle source
# File lib/font_awesome5_rails/parsers/fa_stacked_icon_parser.rb, line 10
def initialize(icon, options)
  @icon = icon
  @text = options[:text]
  @reverse = options[:reverse] == true
  @title = options[:title]
  @options = options
end

Public Instance Methods

first_icon_classes() click to toggle source
# File lib/font_awesome5_rails/parsers/fa_stacked_icon_parser.rb, line 22
def first_icon_classes
  @first_icon_classes ||= parse_icon_classes(@options[:base], true)
end
more_options(key) click to toggle source
# File lib/font_awesome5_rails/parsers/fa_stacked_icon_parser.rb, line 30
def more_options(key)
  options[key] ? options[key].except(:class, :text) : {}
end
second_icon_classes() click to toggle source
# File lib/font_awesome5_rails/parsers/fa_stacked_icon_parser.rb, line 26
def second_icon_classes
  @second_icon_classes ||= parse_icon_classes(@icon, false)
end
span_classes() click to toggle source
# File lib/font_awesome5_rails/parsers/fa_stacked_icon_parser.rb, line 18
def span_classes
  @span_classes ||= parse_span_classes
end

Private Instance Methods

parse_icon_classes(klass, first) click to toggle source
# File lib/font_awesome5_rails/parsers/fa_stacked_icon_parser.rb, line 42
def parse_icon_classes(klass, first)
  tmp = []
  tmp << icon_type(first && @options[:base_type].present? ? @options[:base_type] : @options[:type])
  tmp += arr_with_fa(klass)
  tmp << (first ? 'fa-stack-2x' : 'fa-stack-1x')
  key = first ? :base_options : :icon_options
  tmp << options[key][:class] if options[key] && options[key][:class]
  tmp.uniq.join(' ').strip
end
parse_span_classes() click to toggle source
# File lib/font_awesome5_rails/parsers/fa_stacked_icon_parser.rb, line 36
def parse_span_classes
  tmp = ['fa-stack']
  tmp += @options[:class].split(' ') unless @options[:class].nil?
  tmp.uniq.join(' ').strip
end