Documentation
¶
Overview ¶
Package goauth provides adapters that wrap github.com/goliatone/go-auth repositories so they satisfy go-users interfaces without extra plumbing.
Index ¶
- func UserFromDomain(user *types.AuthUser) *auth.User
- func UserToDomain(user *auth.User) *types.AuthUser
- type UsersAdapter
- func (a *UsersAdapter) AllowedTransitions(ctx context.Context, id uuid.UUID) ([]types.LifecycleTransition, error)
- func (a *UsersAdapter) Create(ctx context.Context, input *types.AuthUser) (*types.AuthUser, error)
- func (a *UsersAdapter) GetByID(ctx context.Context, id uuid.UUID) (*types.AuthUser, error)
- func (a *UsersAdapter) GetByIdentifier(ctx context.Context, identifier string) (*types.AuthUser, error)
- func (a *UsersAdapter) ResetPassword(ctx context.Context, id uuid.UUID, passwordHash string) error
- func (a *UsersAdapter) Update(ctx context.Context, input *types.AuthUser) (*types.AuthUser, error)
- func (a *UsersAdapter) UpdateStatus(ctx context.Context, actor types.ActorRef, id uuid.UUID, ...) (*types.AuthUser, error)
- type UsersAdapterOption
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func UserFromDomain ¶
UserFromDomain converts a go-users AuthUser into the upstream go-auth model.
Types ¶
type UsersAdapter ¶
type UsersAdapter struct {
// contains filtered or unexported fields
}
UsersAdapter wraps go-auth Users repositories so they satisfy the go-users AuthRepository interface.
func NewUsersAdapter ¶
func NewUsersAdapter(repo auth.Users, opts ...UsersAdapterOption) *UsersAdapter
NewUsersAdapter builds a UsersAdapter. Callers can override the transition policy (defaults to the upstream state machine rules) with WithPolicy.
func (*UsersAdapter) AllowedTransitions ¶
func (a *UsersAdapter) AllowedTransitions(ctx context.Context, id uuid.UUID) ([]types.LifecycleTransition, error)
AllowedTransitions reports valid target states using the configured policy.
func (*UsersAdapter) GetByIdentifier ¶
func (a *UsersAdapter) GetByIdentifier(ctx context.Context, identifier string) (*types.AuthUser, error)
GetByIdentifier loads a user using email/username/UUID.
func (*UsersAdapter) ResetPassword ¶
ResetPassword delegates to the upstream repository implementation.
func (*UsersAdapter) UpdateStatus ¶
func (a *UsersAdapter) UpdateStatus(ctx context.Context, actor types.ActorRef, id uuid.UUID, next types.LifecycleState, opts ...types.TransitionOption) (*types.AuthUser, error)
UpdateStatus transitions the user to the next lifecycle state.
type UsersAdapterOption ¶
type UsersAdapterOption func(*UsersAdapter)
UsersAdapterOption customizes adapter construction.
func WithPolicy ¶
func WithPolicy(policy types.TransitionPolicy) UsersAdapterOption
WithPolicy overrides the default transition policy.