feat(member): condense the overview into composite name and address cells

This commit is contained in:
Simon 2026-07-03 11:35:46 +02:00
parent b79d7ac9ea
commit af2cc2e0d4
17 changed files with 716 additions and 93 deletions

View file

@ -89,17 +89,19 @@ defmodule MvWeb.MemberLive.Index.FieldVisibilityTest do
assert result["email"] == true
end
test "defaults to true when field not in settings" do
test "defaults to the curated set when field not in settings" do
user_selection = %{}
settings = %{member_field_visibility: %{first_name: false}}
settings = %{member_field_visibility: %{join_date: false}}
custom_fields = []
result = FieldVisibility.merge_with_global_settings(user_selection, settings, custom_fields)
# first_name from settings
assert result["first_name"] == false
# email defaults to true (not in settings)
assert result["email"] == true
# join_date from settings overrides its curated default
assert result["join_date"] == false
# name is in the curated default set -> visible
assert result["name"] == true
# email is not in the curated default set -> hidden
assert result["email"] == false
end
test "handles custom fields visibility" do
@ -160,9 +162,9 @@ defmodule MvWeb.MemberLive.Index.FieldVisibilityTest do
result = FieldVisibility.merge_with_global_settings(user_selection, settings, custom_fields)
# Should default all fields to true
assert result["first_name"] == true
assert result["email"] == true
# Falls back to the curated default set (no crash on nil)
assert result["join_date"] == true
assert result["email"] == false
end
test "handles missing member_field_visibility key" do
@ -172,9 +174,9 @@ defmodule MvWeb.MemberLive.Index.FieldVisibilityTest do
result = FieldVisibility.merge_with_global_settings(user_selection, settings, custom_fields)
# Should default all fields to true
assert result["first_name"] == true
assert result["email"] == true
# Falls back to the curated default set
assert result["join_date"] == true
assert result["email"] == false
end
test "includes all fields in result" do