package incr_dom
A library for building dynamic webapps, using Js_of_ocaml
Install
Dune Dependency
Authors
Maintainers
Sources
incr_dom-v0.16.0.tar.gz
sha256=199e5d3ab8299832e3c2c3a08db86a0e5859420e88a867f4da331b91d2078c1b
doc/src/incr_dom.testing/helpers.ml.html
Source file helpers.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
open! Core open! Import open Vdom_helpers include Helpers_intf let make (type model action state) driver : (module S with type model = model and type action = action and type state = state) = let view_obs = Incr.observe (Driver.view_incr driver) in Incr.stabilize (); (module struct type nonrec model = model type nonrec action = action type nonrec state = state let show_view ?selector () = let node = view_obs |> Incr.Observer.value_exn |> Node_helpers.unsafe_convert_exn in let node = match selector with | None -> node | Some selector -> Node_helpers.select_first_exn node ~selector in node |> Node_helpers.to_string_html |> print_endline ;; let show_model () = driver |> Driver.model_var |> Incr.Var.value |> Driver.sexp_of_model driver |> print_s ;; let do_actions actions = Queue.enqueue_all (Driver.action_queue driver) actions let set_model model = Incr.Var.set (Driver.model_var driver) model let perform_update () = Driver.perform_update driver let get_element ~selector = let node = view_obs |> Incr.Observer.value_exn |> Node_helpers.unsafe_convert_exn in Node_helpers.select_first_exn node ~selector ;; let click_on ~selector = let element = get_element ~selector in Node_helpers.User_actions.click_on element ;; let input_text ~selector ~text = let element = get_element ~selector in Node_helpers.User_actions.input_text element ~text ;; end) ;;
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>