Shared formatting helpers for display in the TUI.
Summary
Functions
Formats an MFA tuple for display.
Formats a node list for display.
Formats permission config for display.
Formats a response type for display.
Formats retry config for display.
Formats a type for display, stripping common prefixes.
Returns the last segment of a module name, or the atom name as-is for non-module atoms (e.g., service names).
Functions
@spec format_mfa({module(), atom(), non_neg_integer() | list()} | nil) :: String.t()
Formats an MFA tuple for display.
Examples
iex> PhoenixGenApiTui.Format.format_mfa({MyApp.Handler, :handle, 2})
"MyApp.Handler.handle/2"
Formats a node list for display.
Examples
iex> PhoenixGenApiTui.Format.format_nodes([:node1@host, :node2@host])
"node1@host, node2@host"
iex> PhoenixGenApiTui.Format.format_nodes(:global)
"global"
Formats permission config for display.
Examples
iex> PhoenixGenApiTui.Format.format_permission(true)
"enabled"
iex> PhoenixGenApiTui.Format.format_permission(false)
"disabled"
Formats a response type for display.
Examples
iex> PhoenixGenApiTui.Format.format_response_type(:json)
"json"
iex> PhoenixGenApiTui.Format.format_response_type({:json, :pretty})
"{json, pretty}"
Formats retry config for display.
Examples
iex> PhoenixGenApiTui.Format.format_retry(nil)
"none"
iex> PhoenixGenApiTui.Format.format_retry(%{max_attempts: 3})
"%{max_attempts: 3}"
Formats a type for display, stripping common prefixes.
Examples
iex> PhoenixGenApiTui.Format.format_type(:string)
"string"
iex> PhoenixGenApiTui.Format.format_type({:array, :string})
"[string]"
Returns the last segment of a module name, or the atom name as-is for non-module atoms (e.g., service names).
Examples
iex> PhoenixGenApiTui.Format.short_name(MyApp.Services.UserService)
"UserService"
iex> PhoenixGenApiTui.Format.short_name(MyApp.Blog)
"Blog"
iex> PhoenixGenApiTui.Format.short_name(:user_service)
"user_service"