Sha256: 141e4b464def65c52d279959e4748a6d1543ef7a6089981ab120e43949c896f3
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
module MaterialDesign module ChipHelper def md_filter_chip(label=nil, leading_icon: nil, trailing_icon: nil, selected: false, data: {}, style: nil, &block) merged_data = data.merge(controller: "filter-chip", filter_chip_selected_value: selected, action: "#{block_given? ? "click->filter-chip#toggleDropdown" : "click->filter-chip#toggleSelect"}") chip_content = content_tag(:div, class: "chip__container", data: merged_data) do concat(content_tag(:div, class: class_names("chip", selected: selected), data: { filter_chip_target: "chip"}, style: style) do concat(content_tag(:span, class: "dropdown--hidden", data: {filter_chip_target: "selectedIcon"}) do render("material_design/icons/icon", locals: { icon: "check", size: 18 }) end) concat(content_tag(:span, data: {filter_chip_target: "leadingIcon"}) do render("material_design/icons/icon", locals: { icon: leading_icon, size: 18 }) if leading_icon end) concat(content_tag(:p, label, class: "chip__label", data: {filter_chip_target: "label"})) concat(content_tag(:span, data: {filter_chip_target: "chevronIcon"}) do render("material_design/icons/icon", locals: { icon: "arrow_drop_down", size: 18 }) end) if block_given? concat(content_tag(:span, data: {filter_chip_target: "trailingIcon"}) do render("material_design/icons/icon", locals: { icon: trailing_icon, size: 18 }) if trailing_icon && !block_given? end) end) if block_given? concat(content_tag(:div, class: "dropdown--hidden chip__dropdown", data: {filter_chip_target: "dropdown"}) do capture(&block) end) end end chip_content end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
material_design-0.9.0 | app/helpers/material_design/chip_helper.rb |