mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Selector now handle {label, value} instead of only string
This commit is contained in:
@@ -3,7 +3,8 @@
|
||||
class ProductsTableComponent < ViewComponentReflex::Component
|
||||
def initialize(user:)
|
||||
super
|
||||
@columns = ["price", "unit"]
|
||||
@columns = [{ label: I18n.t("admin.products_page.columns_selector.price"), value: "price" },
|
||||
{ label: I18n.t("admin.products_page.columns_selector.unit"), value: "unit" }]
|
||||
@selected = ["price", "unit"]
|
||||
@user = user
|
||||
|
||||
|
||||
@@ -2,12 +2,13 @@
|
||||
|
||||
class SelectorComponent < ViewComponentReflex::Component
|
||||
def initialize(title:, selected:, items:, data: {})
|
||||
super
|
||||
@title = title
|
||||
@items = items.map do |item|
|
||||
{
|
||||
id: item,
|
||||
name: I18n.t("admin.products_page.columns_selector.#{item}"),
|
||||
selected: selected.include?(item)
|
||||
label: item[:label],
|
||||
value: item[:value],
|
||||
selected: selected.include?(item[:value])
|
||||
}
|
||||
end
|
||||
@state = :close
|
||||
|
||||
@@ -6,5 +6,5 @@
|
||||
.selector_arrow{data: reflex_data_attributes(:toggle)}
|
||||
.selector_items
|
||||
- @items.each do |item|
|
||||
.selector_item{id: item[:id], class: ("selected" if item[:selected]), data: @data, "data-value": item[:id]}
|
||||
= item[:name]
|
||||
.selector_item{ class: ("selected" if item[:selected]), data: @data, "data-value": item[:value] }
|
||||
= item[:label]
|
||||
|
||||
Reference in New Issue
Block a user