package sihl-user

  1. Overview
  2. Docs
include module type of struct include Sihl.Contract.User end
val ptime_to_yojson : Ptime.t -> [> `String of string ]
val ptime_of_yojson : Yojson__Safe.t -> (Ptime.t, string) result
type status =
  1. | Active
  2. | Inactive
val status_to_yojson : status -> Yojson.Safe.t
val show_status : status -> Ppx_deriving_runtime.string
val status_of_string : string -> (status, string) result
val status_to_string : status -> string
type t = {
  1. id : string;
  2. email : string;
  3. username : string option;
  4. name : string option;
  5. given_name : string option;
  6. password : string;
  7. status : status;
  8. admin : bool;
  9. confirmed : bool;
  10. created_at : Ptime.t;
  11. updated_at : Ptime.t;
}
val to_yojson : t -> Yojson.Safe.t
val show_name : t -> string option
exception Exception of string
val name : string
module type Sig = Sihl.Contract.User.Sig
val to_sexp : t -> Sexplib0.Sexp.t
val confirm : t -> t
val set_user_password : t -> string -> (t, string) result
val set_user_details : t -> email:string -> username:string option -> t
val is_admin : t -> bool
val is_owner : t -> String.t -> bool
val is_confirmed : t -> bool
val matches_password : string -> t -> bool
val default_password_policy : string -> (unit, string) result
val validate_new_password : password:String.t -> password_confirmation:String.t -> password_policy:(String.t -> (unit, string) result) -> (unit, string) result
val validate_change_password : t -> old_password:string -> new_password:String.t -> new_password_confirmation:String.t -> password_policy:(String.t -> (unit, string) result) -> (unit, string) result
val make : ?id:string -> email:string -> password:string -> name:string option -> given_name:string option -> username:string option -> admin:bool -> bool -> (t, string) result
val log_src : Logs.src
module Logs : Logs.LOG
module Make (Repo : sig ... end) : Sihl.Contract.User.Sig
module PostgreSql : sig ... end
module MariaDb : sig ... end
module Password_reset : sig ... end
OCaml

Innovation. Community. Security.