Rivet.Email (rivet_email v4.0.1)

Copy Markdown View Source

Summary

Types

assigns()

@type assigns() :: keyword() | map()

recip()

@type recip() :: map()

recips()

@type recips() :: recip() | [recip()]

sendto_result()

@type sendto_result() ::
  {:error, String.t()}
  | {:error, String.t(), list()}
  | {:ok, results :: [String.t()]}

state()

@type state() :: %{
  this: atom(),
  from: [String.t() | atom()],
  user: module(),
  email: module(),
  backend: module(),
  config: module()
}

template()

@type template() :: module()

Functions

deliver_(state, recipient, template, assigns)

@spec deliver_(map(), recipient :: any(), template :: atom(), assigns :: map()) ::
  {:ok, Swoosh.Email.t()} | {:error, term()}

generate_assigns_(state, assigns, configs)

get_emails_(state, recip, t, out)

@spec get_emails_(state(), recips(), template(), recips()) ::
  {:ok, recips()} | {:error, String.t(), term()}

log_email(email)

mailer()

send_email_(email, map)

sendto_(state, recips, template, assigns, configs)

@spec sendto_(
  state(),
  recips(),
  template(),
  assigns(),
  config :: [String.t()]
) :: sendto_result()