package bonsai
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=0c4a714146073f421f1a6179561f836b45d8dc012c743207d3481ea63bef74bf
doc/bonsai.web_ui_form/Bonsai_web_ui_form/Dynamic/index.html
Module Bonsai_web_ui_form.Dynamic
Source
Unlike the rest of the API which operates on values of type Form.t
value values, they operate on Form.t Value.t
, and typically return Computation.t
.
Unlike the rest of the API which operates on values of type Form.t
value values, they operate on Form.t Value.t
, and typically return Computation.t
.
val with_default :
'a Bonsai_web.Value.t ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Value.t ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Computation.t
val error_hint :
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Value.t ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Computation.t
Adds a clickable error hint for this form
val collapsible_group :
?starts_open:bool ->
string Bonsai_web.Value.t ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Value.t ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Computation.t
Adds a group that is clickable. Visibility for sub-forms is initially determined by starts_open
but is toggled by clicking on the label.
val on_change :
?on_error:(Core.Error.t -> unit Ui_effect.t) Bonsai_web.Value.t ->
(module Bonsai_web.Bonsai.Model with type t = 'a) ->
f:('a -> unit Ui_effect.t) Bonsai_web.Value.t ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Value.t ->
unit Bonsai_web.Computation.t
Adds a on_change handler to a Form.t
.
The function f
is called when 1. the (successfully validated) value of the form changes. 2. the form transitions from producing an Error to producing a value. 3. the form initializes with a value
on_error
is called when 1. the error message changes 2. the form transitions from producing a value to an error 3. the form initializes with an error
val validate_via_effect :
(module Bonsai_web.Bonsai.Model with type t = 'a) ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Value.t ->
f:('a -> unit Core.Or_error.t Bonsai_web.Effect.t) Bonsai_web.Value.t ->
'a Bonsai_web_ui_form__.Form.t Bonsai_web.Computation.t
Unlike validate
which requires the validation function to be available locally (and synchronous), validate_via_effect
runs an effectful computation. The asynchrony makes this function interesting: When a value is in the midst of validated, the resultant form is resolved to an Error.