module BrowseHelper
def element_icon(type, object)
- selected_icon_data = { :filename => "#{type}.svg" }
+ selected_icon_data = { :filename => "#{type}.svg", :priority => 1 }
unless object.redacted?
target_tags = object.tags.find_all { |k, _v| BROWSE_ICONS.key? k }.sort
target_tags.each do |k, v|
icon_data = BROWSE_ICONS[k][v] || BROWSE_ICONS[k][:*]
- selected_icon_data = icon_data if icon_data
+ selected_icon_data = icon_data if icon_data && icon_data[:priority] > selected_icon_data[:priority]
end
end
image_tag "browse/#{selected_icon_data[:filename]}",
:size => 20,
- :class => ["align-bottom object-fit-none", { "browse-icon-invertible" => selected_icon_data[:invert] }],
+ :class => ["align-bottom object-fit-none browse-icon", { "browse-icon-invertible" => selected_icon_data[:invert] }],
:title => title
end
end
def element_list_item(type, object, &)
- tag.li(tag.div(element_icon(type, object) + tag.div(&), :class => "d-flex gap-1"))
+ tag.li(tag.div(element_icon(type, object) + tag.div(:class => "align-self-center", &), :class => "d-flex gap-1"))
end
def element_list_item_with_strikethrough(type, object, &)