refactor(types): reconcile @specs with their success typings
This commit is contained in:
parent
263857ee26
commit
fd8e6ac178
17 changed files with 92 additions and 38 deletions
|
|
@ -190,7 +190,7 @@ defmodule MvWeb.MemberLive.Index.FieldVisibility do
|
|||
These fields are not in the database; they must not be used for Ash query
|
||||
select/sort. Use this to filter sort options and validate sort_field.
|
||||
"""
|
||||
@spec computed_member_fields() :: [atom()]
|
||||
@spec computed_member_fields() :: [:membership_fee_status | :membership_fee_type | :groups, ...]
|
||||
def computed_member_fields, do: @pseudo_member_fields
|
||||
|
||||
@doc """
|
||||
|
|
|
|||
|
|
@ -341,7 +341,7 @@ defmodule MvWeb.MembershipFeeTypeLive.Form do
|
|||
end
|
||||
end
|
||||
|
||||
@spec notify_parent(any()) :: any()
|
||||
@spec notify_parent(any()) :: {module(), any()}
|
||||
defp notify_parent(msg), do: send(self(), {__MODULE__, msg})
|
||||
|
||||
@spec assign_form(Phoenix.LiveView.Socket.t()) :: Phoenix.LiveView.Socket.t()
|
||||
|
|
|
|||
|
|
@ -186,7 +186,7 @@ defmodule MvWeb.RoleLive.Form do
|
|||
end
|
||||
end
|
||||
|
||||
@spec notify_parent(any()) :: any()
|
||||
@spec notify_parent(any()) :: {module(), any()}
|
||||
defp notify_parent(msg), do: send(self(), {__MODULE__, msg})
|
||||
|
||||
@spec assign_form(Phoenix.LiveView.Socket.t()) :: Phoenix.LiveView.Socket.t()
|
||||
|
|
|
|||
|
|
@ -775,7 +775,7 @@ defmodule MvWeb.UserLive.Form do
|
|||
)}
|
||||
end
|
||||
|
||||
@spec notify_parent(any()) :: any()
|
||||
@spec notify_parent(any()) :: {module(), any()}
|
||||
defp notify_parent(msg), do: send(self(), {__MODULE__, msg})
|
||||
|
||||
# Helper to ignore keyboard events when dropdown is closed
|
||||
|
|
@ -913,7 +913,7 @@ defmodule MvWeb.UserLive.Form do
|
|||
MemberResource.filter_by_email_match(members, user_email_str)
|
||||
end
|
||||
|
||||
@spec load_roles(any()) :: [Mv.Authorization.Role.t()]
|
||||
@spec load_roles(any()) :: [Mv.Authorization.Role.t()] | Ash.Page.page()
|
||||
defp load_roles(actor) do
|
||||
case Authorization.list_roles(actor: actor) do
|
||||
{:ok, roles} -> roles
|
||||
|
|
|
|||
|
|
@ -145,7 +145,10 @@ defmodule MvWeb.LiveHelpers do
|
|||
end
|
||||
"""
|
||||
@spec submit_form(AshPhoenix.Form.t(), map(), Mv.Accounts.User.t() | nil) ::
|
||||
{:ok, Ash.Resource.t()} | {:error, AshPhoenix.Form.t()}
|
||||
{:ok, Ash.Resource.record() | nil | [Ash.Notifier.Notification.t()]}
|
||||
| {:ok, Ash.Resource.record(), [Ash.Notifier.Notification.t()]}
|
||||
| :ok
|
||||
| {:error, AshPhoenix.Form.t()}
|
||||
def submit_form(form, params, actor) do
|
||||
AshPhoenix.Form.submit(form, params: params, action_opts: ash_actor_opts(actor))
|
||||
end
|
||||
|
|
|
|||
|
|
@ -12,7 +12,9 @@ defmodule MvWeb.Translations.FieldTypes do
|
|||
"""
|
||||
use Gettext, backend: MvWeb.Gettext
|
||||
|
||||
@spec label(atom()) :: String.t()
|
||||
@type field_type :: :string | :integer | :boolean | :date | :email
|
||||
|
||||
@spec label(field_type()) :: String.t()
|
||||
def label(:string), do: gettext("Text")
|
||||
def label(:integer), do: gettext("Number")
|
||||
def label(:boolean), do: gettext("Yes/No-Selection")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue