open Brr type datalist = { datalist_id : string ; datalist_el : El.t } type slider = { slider_id : string ; slider_el : El.t } (** Any is for continuous slider *) type step_kind = | Any | Step_value of float val step_to_string : step_kind -> string val mk_datalist : Jstr.t list -> string -> datalist (** make a div of class "slippery-slidy-container" containing a slider of class "slippery-slidy-slider" wi id [id] don't forget to add your slider and datalist to your document *) val mk_slider : min:float -> max:float -> step:step_kind -> value:float -> id:string -> label:string -> datalist_id:string option -> slider val add_slider_input_listener : slider -> (float -> unit) -> unit