123456789101112131415161718192021222324252627282930313233343536373839404142open!Core_kernelopen!Async_kernelopen!ImportmoduletypeS=sigmoduleInput:TmoduleModel:sigtypet[@@derivingequal,sexp]valdefault:tendmoduleExtra:TmoduleAction:sigtypet[@@derivingsexp_of]endtypet=(Action.t,Model.t,unit,Extra.t)Incr_dom.Component.with_extravalcreate:input:Input.tIncr.t->old_model:Model.toptionIncr.t->model:Model.tIncr.t->inject:(Action.t->Vdom.Event.t)->tIncr.tendmoduletypeTo_incr_dom=sig(** A wrapper to use Bonsai components in Incr_dom apps. *)moduletypeS=Svalconvert:('input,Vdom.Node.t)Bonsai.t->(moduleSwithtypeInput.t='inputandtypeExtra.t=unit)valconvert_with_extra:('input,Vdom.Node.t*'extra)Bonsai.t->(moduleSwithtypeInput.t='inputandtypeExtra.t='extra)end