<%= for %{key: key, label: label} = column <- @columns do %> <%= if column |> Map.get(:sortable, true) do %> <% else %> <% end %> <% end %> <%= for values <- @rows do %> <%= 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 %>