class BiIconParser
Attributes
attrs[R]
data[R]
icon[R]
options[R]
right[R]
style[R]
text[R]
title[R]
Public Class Methods
new(icon, options)
click to toggle source
# File lib/bootstrap_icons_rails/parsers/bi_icon_parser.rb, line 9 def initialize(icon, options) @icon = icon @options = options @data = options[:data] @style = options[:style] @text = options[:text] @title = options[:title] @right = options[:right] == true @attrs = options.except(:text, :class, :icon, :size, :right) end
Public Instance Methods
classes()
click to toggle source
# File lib/bootstrap_icons_rails/parsers/bi_icon_parser.rb, line 20 def classes @classes ||= parse_classes end
get_content_tag()
click to toggle source
# File lib/bootstrap_icons_rails/parsers/bi_icon_parser.rb, line 28 def get_content_tag if @text.nil? icon_content_tag else @right ? (text_content_tag + icon_content_tag) : (icon_content_tag + text_content_tag) end end
sizes()
click to toggle source
# File lib/bootstrap_icons_rails/parsers/bi_icon_parser.rb, line 24 def sizes @sizes ||= @options[:size].nil? ? "" : arr_with_bi(@options[:size]).uniq.join(" ").strip end
Private Instance Methods
icon_content_tag()
click to toggle source
# File lib/bootstrap_icons_rails/parsers/bi_icon_parser.rb, line 47 def icon_content_tag content_tag(:i, nil, class: classes, **@attrs) end
parse_classes()
click to toggle source
# File lib/bootstrap_icons_rails/parsers/bi_icon_parser.rb, line 38 def parse_classes tmp = [] tmp << icon_type(@options[:type]) tmp += arr_with_bi(@icon) tmp += @options[:class].split(" ") unless @options[:class].nil? tmp += arr_with_bi(@options[:size]) unless @options[:size].nil? tmp.uniq.join(" ").strip end
text_content_tag()
click to toggle source
# File lib/bootstrap_icons_rails/parsers/bi_icon_parser.rb, line 51 def text_content_tag content_tag(:span, @text, class: "#{@right ? 'bi-text-r' : 'bi-text'}#{' ' unless sizes.blank?}#{sizes}", style: @style) end