module Playbook::Hover

def hover_props

def hover_props
  selected_props = hover_options.keys.select { |sk| try(sk) }
  return nil unless selected_props.present?
  responsive = selected_props.present? && try(selected_props.first).is_a?(::Hash)
  css = ""
  selected_props.each do |prop|
    value = send(prop)
    prefix = hover_options[prop]
    if responsive
      value.each do |key, val|
        if %i[background color].include?(key)
          css += "#{prefix}_#{key}_#{val} " if hover_attributes.include?(key.to_s)
        elsif hover_attributes.include?(key.to_s) && send("hover_#{key}_values").include?(val.to_s)
          css += "#{prefix}_#{key}_#{val} "
        end
      end
    elsif send("hover_#{prop}_values").include?(value)
      css += "#{prefix}_#{value} "
    end
  end
  css.strip unless css.blank?
end