<%= for %{key: key, label: label} = column <- @columns do %> <%= if column |> Map.get(:sortable, true) do %> <% else %> <% end %> <% end %> <%= for {values, i} <- @rows |> Enum.with_index() do %> Integer.is_even(), do: @row_class, else: @alternate_row_class}> <%= for %{key: key} = value <- @columns do %> <% end %> <% end %>
<%= label %> <%= if @last_sort_key == key do %> <%= case @sort_mode do %> <% :asc -> %> <% :desc -> %> <% end %> <% else %> <% end %> <%= label %>
<%= case values |> Map.get(key) do %> <% {_custom_sort_value, value} -> %> <%= value %> <% value -> %> <%= value %> <% end %>