Sha256: 8e8a8b055c882f0b174a132a45e78a90cd9ebdd6fe8356917e2a3f492e9b0299
Contents?: true
Size: 1.25 KB
Versions: 1
Compression:
Stored size: 1.25 KB
Contents
module MaterialDesign module MenuHelper def md_menu(menu_options: [], data: {}, form: nil, attribute: nil) content_tag(:div, class: "menu", data: data) do menu_options.each do |option| concat(menu_option(option, form, attribute)) end end end def menu_option(option, form, attribute) if option[:path] link_to option[:path], data: option[:data], method: option[:method] do content_tag(:div, class: class_names("menu__item", divider: option[:divider])) do concat(render("material_design/icons/icon", locals: { icon: option[:icon], size: 18 })) if option[:icon] concat(content_tag(:span, option[:label])) end end elsif form form.label "#{attribute}_#{option[:value]}", option[:label] do concat(form.radio_button attribute, option[:value], class: "hidden", onchange: option[:onchange], checked: option[:checked]) concat(content_tag(:div, class: class_names("menu__item", divider: option[:divider])) do concat(render("material_design/icons/icon", locals: { icon: option[:icon], size: 18 })) if option[:icon] concat(content_tag(:span, option[:label])) end) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
material_design-0.10.0 | app/helpers/material_design/menu_helper.rb |