fix: set field policy opts on field policy conditions

This commit is contained in:
Zach Daniel 2023-09-27 10:11:49 -04:00
parent 972207a6da
commit c571625557

View file

@ -20,11 +20,15 @@ defmodule Ash.Policy.FieldPolicy do
%{
field_policy
| policies: Enum.map(field_policy.policies, &set_field_policy_opt/1),
condition: field_policy.condition || []
condition: Enum.map(List.wrap(field_policy.condition || []), &set_field_policy_opt/1)
}}
end
end
defp set_field_policy_opt({module, opts}) do
{module, Keyword.merge(opts, ash_field_policy?: true, access_type: :filter)}
end
defp set_field_policy_opt(%{check_opts: opts} = policy) do
%{policy | check_opts: Keyword.merge(opts, ash_field_policy?: true, access_type: :filter)}
end