diff options
author | Sébastien Dailly <sebastien@dailly.me> | 2022-02-07 16:14:09 +0100 |
---|---|---|
committer | Sébastien Dailly <sebastien@dailly.me> | 2022-02-07 16:43:33 +0100 |
commit | bf94695abeda0d7bb296ae4cd0f9a53782587d4a (patch) | |
tree | 06dac432cfaa57dc6ad428b116332fdf777c84d8 /editor/forms/add_page.ml | |
parent | 4d35508a76676a548ac45e0bff2d63eafaf014e2 (diff) |
Update editor organisation
Diffstat (limited to 'editor/forms/add_page.ml')
-rwxr-xr-x | editor/forms/add_page.ml | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/editor/forms/add_page.ml b/editor/forms/add_page.ml index 597e9d3..ac45824 100755 --- a/editor/forms/add_page.ml +++ b/editor/forms/add_page.ml @@ -1,9 +1,12 @@ open Brr open Brr_note open Note +module Js = Js_of_ocaml.Js + +type t = { title : Jstr.t } type Events.kind += - | AddPage of { title : Jstr.t } + | AddPage of t [@@unboxed] let create : unit -> Events.t @@ -34,3 +37,20 @@ let create [ input ] ] ] ) + +let key_of_title + : Jstr.t -> Jstr.t + = fun title -> + title + +let on_close + : t -> State.t -> State.t + = fun {title} state -> + let page_id = key_of_title title in + let new_date = (new%js Js.date_now)##getTime in + let content_obj = object%js + val content = Js.null + val title = Js.some title + val date = Js.some new_date + end in + State.load_page (Some page_id) state content_obj |