Module Bonsai_web_ui_view.Theme

type t
val name : t -> string

Returns the name of the theme

val current : Bonsai.graph @ local -> t Bonsai.t

Fetches the theme currently installed into Bonsai's scope.

Sets the given theme as 'current' for the provided computation, and registers the returned Vdom node as the "application-node" giving it the power to do things like set the window's background color and font-family.

val set_for_app' : t Bonsai.t -> (Bonsai.graph @ local -> ('a * Virtual_dom.Vdom.Node.t) Bonsai.t) -> Bonsai.graph @ local -> ('a * Virtual_dom.Vdom.Node.t) Bonsai.t

Same as set_for_app but permits the app to return an arbitrary value in addition to the top-level app component

val override_constants_for_computation : f:(Constants.t -> Constants.t) -> (Bonsai.graph @ local -> 'a Bonsai.t) -> Bonsai.graph @ local -> 'a Bonsai.t

This function allows the caller to build a new theme based on the current theme's constants, installing that new theme for all users inside the given computation.

val set_for_computation : t Bonsai.t -> (Bonsai.graph @ local -> 'a Bonsai.t) -> Bonsai.graph @ local -> 'a Bonsai.t

set_temporarily will install a new theme for all theme-users inside the given computation.