lib/helpers/errors.ex
defmodule AbsintheUtils.Helpers.Errors do
@moduledoc """
Helpers for Absinthe errors.
"""
@doc """
Given an absinthe resolution puts an error and marks the resolution as resolved.
"""
def put_error(resolution, message, code) when is_binary(code) do
put_error(
resolution,
message,
%{code: code}
)
end
def put_error(resolution, message, extra) when is_map(extra) do
Absinthe.Resolution.put_result(
resolution,
{
:error,
%{
message: message,
extensions: extra
}
}
)
end
end