PowAssent v0.3.2 PowAssent.Ecto.UserIdentities.Context behaviour View Source
Handles pow assent user identity context for user identities.
Usage
This module will be used by PowAssent by default. If you wish to have control
over context methods, you can do configure
lib/my_project/user_identities/user_identities.ex
the following way:
defmodule MyApp.UserIdentities do
use PowAssent.Ecto.UserIdentities.Context,
repo: MyApp.Repo,
user: MyApp.Users.User
def all(user) do
pow_assent_all(user)
end
end
Remember to update configuration with
user_identities_context: MyApp.UserIdentities
.
The following Pow methods can be accessed:
pow_assent_get_user_by_provider_id/3
pow_assent_create/4
pow_assent_create_user/4
pow_assent_delete/2
pow_assent_all/1
Configuration options
:repo
- the ecto repo module (required):user
- the user schema module (required)
Link to this section Summary
Functions
Fetches all user identities for user
Creates a user with user identity
Deletes a user identity for the provider and user
Finds a user based on the provider and uid
Upserts a user identity
Link to this section Types
changeset()
View Source
changeset() :: map()
changeset() :: map()
user()
View Source
user() :: map()
user() :: map()
user_id_params()
View Source
user_id_params() :: map()
user_id_params() :: map()
user_identity()
View Source
user_identity() :: map()
user_identity() :: map()
user_identity_params()
View Source
user_identity_params() :: map()
user_identity_params() :: map()
user_params()
View Source
user_params() :: map()
user_params() :: map()
Link to this section Functions
all(user, config)
View Source
all(user(), PowAssent.Config.t()) :: [user_identity()]
all(user(), PowAssent.Config.t()) :: [user_identity()]
Fetches all user identities for user.
Repo module will be fetched from config.
create_user(user_identity_params, user_params, user_id_params, config)
View Source
create_user(
user_identity_params(),
user_params(),
user_id_params() | nil,
PowAssent.Config.t()
) ::
{:ok, user()}
| {:error, {:bound_to_different_user | :invalid_user_id_field, changeset()}}
| {:error, changeset()}
create_user( user_identity_params(), user_params(), user_id_params() | nil, PowAssent.Config.t() ) :: {:ok, user()} | {:error, {:bound_to_different_user | :invalid_user_id_field, changeset()}} | {:error, changeset()}
Creates a user with user identity.
User schema module and repo module will be fetched from config.
delete(user, provider, config)
View Source
delete(user(), binary(), PowAssent.Config.t()) ::
{:ok, {number(), nil}} | {:error, {:no_password, changeset()}}
delete(user(), binary(), PowAssent.Config.t()) :: {:ok, {number(), nil}} | {:error, {:no_password, changeset()}}
Deletes a user identity for the provider and user.
Repo module will be fetched from config.
get_user_by_provider_uid(provider, uid, config)
View Source
get_user_by_provider_uid(binary(), binary() | integer(), PowAssent.Config.t()) ::
user() | nil
get_user_by_provider_uid(binary(), binary() | integer(), PowAssent.Config.t()) :: user() | nil
Finds a user based on the provider and uid.
User schema module and repo module will be fetched from the config.
repo!(config) View Source
upsert(user, user_identity_params, config)
View Source
upsert(user(), user_identity_params(), PowAssent.Config.t()) ::
{:ok, user_identity()}
| {:error, {:bound_to_different_user, changeset()}}
| {:error, changeset()}
upsert(user(), user_identity_params(), PowAssent.Config.t()) :: {:ok, user_identity()} | {:error, {:bound_to_different_user, changeset()}} | {:error, changeset()}
Upserts a user identity.
If a matching user identity already exists for the user, the identity will be updated, otherwise a new identity is inserted.
Repo module will be fetched from config.
user!(config) View Source
Link to this section Callbacks
all(user)
View Source
all(user()) :: [user_identity()]
all(user()) :: [user_identity()]
create(user, user_identity_params)
View Source
create(user(), user_identity_params()) :: any()
create(user(), user_identity_params()) :: any()
create_user(user_identity_params, user_params, arg2)
View Source
create_user(user_identity_params(), user_params(), user_id_params() | nil) ::
{:ok, user()}
| {:error, {:bound_to_different_user | :invalid_user_id_field, changeset()}}
| {:error, changeset()}
create_user(user_identity_params(), user_params(), user_id_params() | nil) :: {:ok, user()} | {:error, {:bound_to_different_user | :invalid_user_id_field, changeset()}} | {:error, changeset()}
delete(user, binary) View Source
get_user_by_provider_uid(binary, binary) View Source
upsert(user, user_identity_params)
View Source
upsert(user(), user_identity_params()) ::
{:ok, user()}
| {:error, {:bound_to_different_user, changeset()}}
| {:error, changeset()}
upsert(user(), user_identity_params()) :: {:ok, user()} | {:error, {:bound_to_different_user, changeset()}} | {:error, changeset()}