refactor: add opts_with_actor helper and improve error formatting
Add opts_with_actor helper function to reduce duplication when building Ash options with actor and domain. Improve format_error documentation and ensure consistent error message formatting.
This commit is contained in:
parent
34afe798ec
commit
5ac9ab7ff9
4 changed files with 26 additions and 9 deletions
|
|
@ -16,7 +16,8 @@ defmodule MvWeb.RoleLive.Show do
|
|||
|
||||
require Ash.Query
|
||||
|
||||
import MvWeb.RoleLive.Helpers
|
||||
import MvWeb.RoleLive.Helpers,
|
||||
only: [format_error: 1, permission_set_badge_class: 1, opts_with_actor: 3]
|
||||
|
||||
on_mount {MvWeb.LiveHelpers, :ensure_user_role_loaded}
|
||||
|
||||
|
|
@ -143,8 +144,7 @@ defmodule MvWeb.RoleLive.Show do
|
|||
# Recalculates user count for a specific role (used before deletion)
|
||||
@spec recalculate_user_count(Mv.Authorization.Role.t(), map() | nil) :: non_neg_integer()
|
||||
defp recalculate_user_count(role, actor) do
|
||||
opts = [domain: Mv.Accounts]
|
||||
opts = if actor, do: Keyword.put(opts, :actor, actor), else: opts
|
||||
opts = opts_with_actor([], actor, Mv.Accounts)
|
||||
|
||||
case Ash.count(Accounts.User |> Ash.Query.filter(role_id == ^role.id), opts) do
|
||||
{:ok, count} -> count
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue