Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
include Sihl_core.Container.Service.Sig
val lifecycle : Sihl_core.Container.Lifecycle.t
val find_all :
query:Sihl_type.Database.Ql.t ->
(Sihl_type.User.t list * int) Lwt.t
val find_opt : user_id:string -> Sihl_type.User.t option Lwt.t
val find : user_id:string -> Sihl_type.User.t Lwt.t
val find_by_email : email:string -> Sihl_type.User.t Lwt.t
val find_by_email_opt : email:string -> Sihl_type.User.t option Lwt.t
val update_password :
?password_policy:(string -> (unit, string) Result.t) ->
user:Sihl_type.User.t ->
old_password:string ->
new_password:string ->
new_password_confirmation:string ->
unit ->
(Sihl_type.User.t, string) Result.t Lwt.t
val update_details :
user:Sihl_type.User.t ->
email:string ->
username:string option ->
Sihl_type.User.t Lwt.t
val set_password :
?password_policy:(string -> (unit, string) Result.t) ->
user:Sihl_type.User.t ->
password:string ->
password_confirmation:string ->
unit ->
(Sihl_type.User.t, string) Result.t Lwt.t
Set the password of a user without knowing the old password.
This feature is typically used by admins.
val create_user :
email:string ->
password:string ->
username:string option ->
Sihl_type.User.t Lwt.t
Create and store a user.
val create_admin :
email:string ->
password:string ->
username:string option ->
Sihl_type.User.t Lwt.t
Create and store a user that is also an admin.
val register_user :
?password_policy:(string -> (unit, string) Stdlib.result) ->
?username:string ->
email:string ->
password:string ->
password_confirmation:string ->
unit ->
(Sihl_type.User.t, Sihl_type.User.Error.t) Result.t Lwt.t
Create and store new user.
Provide password_policy
to check whether the password fulfills certain criteria.
val login :
email:string ->
password:string ->
(Sihl_type.User.t, Sihl_type.User.Error.t) Result.t Lwt.t
Find user by email if password matches.
val register : unit -> Sihl_core.Container.Service.t
module Seed : sig ... end