Module Brr_ocaml_poke_ui

Interactive toplevel HTML interface for poke objects.

Persistent storage

module Store : sig ... end

Persistent storage.

Prompt history

module History : sig ... end

Prompt history data structure.

Toplevel user interface

type t

The type for representing a toplevel user interface over a poke object.

val create : ?⁠store:Store.t -> Brr.El.t -> t Fut.or_error

create ~store view creates a toplevel interface using the children of the view element whose content model should be flow content. view's children are erased and the class .ocaml-ui is set on element. store is used to store the toplevel history and user settings.

type output_kind = [
| `Past_input
| `Reply
| `Warning
| `Error
| `Info
| `Announce

The type for specifiyng kinds of output messages.

val output : t -> kind:output_kind -> Brr.El.t list -> unit

output r ~kind msg outputs message msg with kind to the user interface.

val run : ?⁠ -> ?⁠buttons:Brr.El.t list -> t -> Brr_ocaml_poke.t -> unit

run t poke ~drop_target ~buttons runs the toplevel with poke object poke. buttons are prepended to the buttons panel. drop_target is the target on which ml files can be droped (defaults to the view).